public static void Normal(out Vector3D o, ref Vector3D in1) { float length = in1.GetLength(); o.X = in1.X / length; o.Y = in1.Y / length; o.Z = in1.Z / length; }
public static void Cross(out Vector3D o, ref Vector3D in1, ref Vector3D in2) { float x = in1.Y * in2.Z - in1.Z * in2.Y; float y = in1.Z * in2.X - in1.X * in2.Z; float z = in1.X * in2.Y - in1.Y * in2.X; o.X = x; o.Y = y; o.Z = z; }
public static float Dot(ref Vector3D in1, ref Vector3D in2) { return in1.X * in2.X + in1.Y * in2.Y + in1.Z * in2.Z; }