public Position_3D cross(Position_3D v) { return(new Position_3D(y * v.z - z * v.y, z * v.x - x * v.z, x * v.y - y * v.x)); }
public double distance(Position_3D v) { return(Math.Sqrt(Math.Pow(v.x - x, 2) + Math.Pow(v.y - y, 2) + Math.Pow(v.z - z, 2))); }
public double dot(Position_3D v) { return(x * v.x + y * v.y + z * v.z); }