Created
April 10, 2015 01:29
-
-
Save tiagosr/bcf028b151d11368b013 to your computer and use it in GitHub Desktop.
Little Unity addon for "swizzling" vectors in a fluent interfaces
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
using UnityEngine; | |
using System.Collections; | |
public static class Vector3Addons { | |
public static Vector2 xx(this Vector3 vec) { return new Vector2(vec.x, vec.x); } | |
public static Vector2 xy(this Vector3 vec) { return new Vector2(vec.x, vec.y); } | |
public static Vector2 xz(this Vector3 vec) { return new Vector2(vec.x, vec.z); } | |
public static Vector2 yx(this Vector3 vec) { return new Vector2(vec.y, vec.x); } | |
public static Vector2 yy(this Vector3 vec) { return new Vector2(vec.y, vec.y); } | |
public static Vector2 yz(this Vector3 vec) { return new Vector2(vec.y, vec.z); } | |
public static Vector2 zx(this Vector3 vec) { return new Vector2(vec.z, vec.x); } | |
public static Vector2 zy(this Vector3 vec) { return new Vector2(vec.z, vec.y); } | |
public static Vector2 zz(this Vector3 vec) { return new Vector2(vec.z, vec.z); } | |
public static Vector2 _x(this Vector3 vec) { return new Vector2(0f, vec.x); } | |
public static Vector2 _y(this Vector3 vec) { return new Vector2(0f, vec.y); } | |
public static Vector2 _z(this Vector3 vec) { return new Vector2(0f, vec.z); } | |
public static Vector2 x_(this Vector3 vec) { return new Vector2(vec.x, 0f); } | |
public static Vector2 y_(this Vector3 vec) { return new Vector2(vec.y, 0f); } | |
public static Vector2 z_(this Vector3 vec) { return new Vector2(vec.z, 0f); } | |
public static Vector2 nx(this Vector3 vec, float n) { return new Vector2(n, vec.x); } | |
public static Vector2 ny(this Vector3 vec, float n) { return new Vector2(n, vec.y); } | |
public static Vector2 nz(this Vector3 vec, float n) { return new Vector2(n, vec.z); } | |
public static Vector2 xn(this Vector3 vec, float n) { return new Vector2(vec.x, n); } | |
public static Vector2 yn(this Vector3 vec, float n) { return new Vector2(vec.y, n); } | |
public static Vector2 zn(this Vector3 vec, float n) { return new Vector2(vec.z, n); } | |
public static Vector3 xxx(this Vector3 vec) { return new Vector3(vec.x, vec.x, vec.x); } | |
public static Vector3 xyx(this Vector3 vec) { return new Vector3(vec.x, vec.y, vec.x); } | |
public static Vector3 xzx(this Vector3 vec) { return new Vector3(vec.x, vec.z, vec.x); } | |
public static Vector3 xxy(this Vector3 vec) { return new Vector3(vec.x, vec.x, vec.y); } | |
public static Vector3 xyy(this Vector3 vec) { return new Vector3(vec.x, vec.y, vec.y); } | |
public static Vector3 xzy(this Vector3 vec) { return new Vector3(vec.x, vec.z, vec.y); } | |
public static Vector3 xxz(this Vector3 vec) { return new Vector3(vec.x, vec.x, vec.z); } | |
public static Vector3 xyz(this Vector3 vec) { return new Vector3(vec.x, vec.y, vec.z); } | |
public static Vector3 xzz(this Vector3 vec) { return new Vector3(vec.x, vec.z, vec.z); } | |
public static Vector3 yxx(this Vector3 vec) { return new Vector3(vec.y, vec.x, vec.x); } | |
public static Vector3 yyx(this Vector3 vec) { return new Vector3(vec.y, vec.y, vec.x); } | |
public static Vector3 yzx(this Vector3 vec) { return new Vector3(vec.y, vec.z, vec.x); } | |
public static Vector3 yxy(this Vector3 vec) { return new Vector3(vec.y, vec.x, vec.y); } | |
public static Vector3 yyy(this Vector3 vec) { return new Vector3(vec.y, vec.y, vec.y); } | |
public static Vector3 yzy(this Vector3 vec) { return new Vector3(vec.y, vec.z, vec.y); } | |
public static Vector3 yxz(this Vector3 vec) { return new Vector3(vec.y, vec.x, vec.z); } | |
public static Vector3 yyz(this Vector3 vec) { return new Vector3(vec.y, vec.y, vec.z); } | |
public static Vector3 yzz(this Vector3 vec) { return new Vector3(vec.y, vec.z, vec.z); } | |
public static Vector3 zxx(this Vector3 vec) { return new Vector3(vec.z, vec.x, vec.x); } | |
public static Vector3 zyx(this Vector3 vec) { return new Vector3(vec.z, vec.y, vec.x); } | |
public static Vector3 zzx(this Vector3 vec) { return new Vector3(vec.z, vec.z, vec.x); } | |
public static Vector3 zxy(this Vector3 vec) { return new Vector3(vec.z, vec.x, vec.y); } | |
public static Vector3 zyy(this Vector3 vec) { return new Vector3(vec.z, vec.y, vec.y); } | |
public static Vector3 zzy(this Vector3 vec) { return new Vector3(vec.z, vec.z, vec.y); } | |
public static Vector3 zxz(this Vector3 vec) { return new Vector3(vec.z, vec.x, vec.z); } | |
public static Vector3 zyz(this Vector3 vec) { return new Vector3(vec.z, vec.y, vec.z); } | |
public static Vector3 zzz(this Vector3 vec) { return new Vector3(vec.z, vec.z, vec.z); } | |
public static Vector3 _xx(this Vector3 vec) { return new Vector3(0f, vec.x, vec.x); } | |
public static Vector3 _yx(this Vector3 vec) { return new Vector3(0f, vec.y, vec.x); } | |
public static Vector3 _zx(this Vector3 vec) { return new Vector3(0f, vec.z, vec.x); } | |
public static Vector3 _xy(this Vector3 vec) { return new Vector3(0f, vec.x, vec.y); } | |
public static Vector3 _yy(this Vector3 vec) { return new Vector3(0f, vec.y, vec.y); } | |
public static Vector3 _zy(this Vector3 vec) { return new Vector3(0f, vec.z, vec.y); } | |
public static Vector3 _xz(this Vector3 vec) { return new Vector3(0f, vec.x, vec.z); } | |
public static Vector3 _yz(this Vector3 vec) { return new Vector3(0f, vec.y, vec.z); } | |
public static Vector3 _zz(this Vector3 vec) { return new Vector3(0f, vec.z, vec.z); } | |
public static Vector3 x_x(this Vector3 vec) { return new Vector3(vec.x, 0f, vec.x); } | |
public static Vector3 x_y(this Vector3 vec) { return new Vector3(vec.x, 0f, vec.y); } | |
public static Vector3 x_z(this Vector3 vec) { return new Vector3(vec.x, 0f, vec.z); } | |
public static Vector3 y_x(this Vector3 vec) { return new Vector3(vec.y, 0f, vec.x); } | |
public static Vector3 y_y(this Vector3 vec) { return new Vector3(vec.y, 0f, vec.y); } | |
public static Vector3 y_z(this Vector3 vec) { return new Vector3(vec.y, 0f, vec.z); } | |
public static Vector3 z_x(this Vector3 vec) { return new Vector3(vec.z, 0f, vec.x); } | |
public static Vector3 z_y(this Vector3 vec) { return new Vector3(vec.z, 0f, vec.y); } | |
public static Vector3 z_z(this Vector3 vec) { return new Vector3(vec.z, 0f, vec.z); } | |
public static Vector3 xx_(this Vector3 vec) { return new Vector3(vec.x, vec.x, 0f); } | |
public static Vector3 xy_(this Vector3 vec) { return new Vector3(vec.x, vec.y, 0f); } | |
public static Vector3 xz_(this Vector3 vec) { return new Vector3(vec.x, vec.z, 0f); } | |
public static Vector3 yx_(this Vector3 vec) { return new Vector3(vec.y, vec.x, 0f); } | |
public static Vector3 yy_(this Vector3 vec) { return new Vector3(vec.y, vec.y, 0f); } | |
public static Vector3 yz_(this Vector3 vec) { return new Vector3(vec.y, vec.z, 0f); } | |
public static Vector3 zx_(this Vector3 vec) { return new Vector3(vec.z, vec.x, 0f); } | |
public static Vector3 zy_(this Vector3 vec) { return new Vector3(vec.z, vec.y, 0f); } | |
public static Vector3 zz_(this Vector3 vec) { return new Vector3(vec.z, vec.z, 0f); } | |
public static Vector3 x__(this Vector3 vec) { return new Vector3(vec.x, 0f, 0f); } | |
public static Vector3 y__(this Vector3 vec) { return new Vector3(vec.y, 0f, 0f); } | |
public static Vector3 z__(this Vector3 vec) { return new Vector3(vec.z, 0f, 0f); } | |
public static Vector3 _x_(this Vector3 vec) { return new Vector3(0f, vec.x, 0f); } | |
public static Vector3 _y_(this Vector3 vec) { return new Vector3(0f, vec.y, 0f); } | |
public static Vector3 _z_(this Vector3 vec) { return new Vector3(0f, vec.z, 0f); } | |
public static Vector3 __x(this Vector3 vec) { return new Vector3(0f, 0f, vec.x); } | |
public static Vector3 __y(this Vector3 vec) { return new Vector3(0f, 0f, vec.y); } | |
public static Vector3 __z(this Vector3 vec) { return new Vector3(0f, 0f, vec.z); } | |
public static Vector3 nxx(this Vector3 vec, float n) { return new Vector3(n, vec.x, vec.x); } | |
public static Vector3 nyx(this Vector3 vec, float n) { return new Vector3(n, vec.y, vec.x); } | |
public static Vector3 nzx(this Vector3 vec, float n) { return new Vector3(n, vec.z, vec.x); } | |
public static Vector3 nxy(this Vector3 vec, float n) { return new Vector3(n, vec.x, vec.y); } | |
public static Vector3 nyy(this Vector3 vec, float n) { return new Vector3(n, vec.y, vec.y); } | |
public static Vector3 nzy(this Vector3 vec, float n) { return new Vector3(n, vec.z, vec.y); } | |
public static Vector3 nxz(this Vector3 vec, float n) { return new Vector3(n, vec.x, vec.z); } | |
public static Vector3 nyz(this Vector3 vec, float n) { return new Vector3(n, vec.y, vec.z); } | |
public static Vector3 nzz(this Vector3 vec, float n) { return new Vector3(n, vec.z, vec.z); } | |
public static Vector3 xnx(this Vector3 vec, float n) { return new Vector3(vec.x, n, vec.x); } | |
public static Vector3 xny(this Vector3 vec, float n) { return new Vector3(vec.x, n, vec.y); } | |
public static Vector3 xnz(this Vector3 vec, float n) { return new Vector3(vec.x, n, vec.z); } | |
public static Vector3 ynx(this Vector3 vec, float n) { return new Vector3(vec.y, n, vec.x); } | |
public static Vector3 yny(this Vector3 vec, float n) { return new Vector3(vec.y, n, vec.y); } | |
public static Vector3 ynz(this Vector3 vec, float n) { return new Vector3(vec.y, n, vec.z); } | |
public static Vector3 znx(this Vector3 vec, float n) { return new Vector3(vec.z, n, vec.x); } | |
public static Vector3 zny(this Vector3 vec, float n) { return new Vector3(vec.z, n, vec.y); } | |
public static Vector3 znz(this Vector3 vec, float n) { return new Vector3(vec.z, n, vec.z); } | |
public static Vector3 xxn(this Vector3 vec, float n) { return new Vector3(vec.x, vec.x, n); } | |
public static Vector3 xyn(this Vector3 vec, float n) { return new Vector3(vec.x, vec.y, n); } | |
public static Vector3 xzn(this Vector3 vec, float n) { return new Vector3(vec.x, vec.z, n); } | |
public static Vector3 yxn(this Vector3 vec, float n) { return new Vector3(vec.y, vec.x, n); } | |
public static Vector3 yyn(this Vector3 vec, float n) { return new Vector3(vec.y, vec.y, n); } | |
public static Vector3 yzn(this Vector3 vec, float n) { return new Vector3(vec.y, vec.z, n); } | |
public static Vector3 zxn(this Vector3 vec, float n) { return new Vector3(vec.z, vec.x, n); } | |
public static Vector3 zyn(this Vector3 vec, float n) { return new Vector3(vec.z, vec.y, n); } | |
public static Vector3 zzn(this Vector3 vec, float n) { return new Vector3(vec.z, vec.z, n); } | |
public static Vector3 xnn(this Vector3 vec, float n) { return new Vector3(vec.x, n, n); } | |
public static Vector3 ynn(this Vector3 vec, float n) { return new Vector3(vec.y, n, n); } | |
public static Vector3 znn(this Vector3 vec, float n) { return new Vector3(vec.z, n, n); } | |
public static Vector3 nxn(this Vector3 vec, float n) { return new Vector3(n, vec.x, n); } | |
public static Vector3 nyn(this Vector3 vec, float n) { return new Vector3(n, vec.y, n); } | |
public static Vector3 nzn(this Vector3 vec, float n) { return new Vector3(n, vec.z, n); } | |
public static Vector3 nnx(this Vector3 vec, float n) { return new Vector3(n, n, vec.x); } | |
public static Vector3 nny(this Vector3 vec, float n) { return new Vector3(n, n, vec.y); } | |
public static Vector3 nnz(this Vector3 vec, float n) { return new Vector3(n, n, vec.z); } | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment