public float this[int i] { get { switch (i) { case 0: return x; case 1: return y; case 2: return z; default: return 0f; } } set { switch (i) { case 0: x = value; break; case 1: y = value; break; case 2: z = value; break; } } }