public Ray3D Project(Vector3D vector3DToProject) { var projectedEndPoint = this.Project(vector3DToProject.ToPoint3D()); var projectedZero = this.Project(new Point3D(0, 0, 0)); return(new Ray3D(projectedZero, projectedZero.VectorTo(projectedEndPoint).Normalize())); }
/// <summary> /// Returns a translation coordinate system /// </summary> /// <param name="v">a vector</param> /// <returns>a coordinate system</returns> public CoordinateSystem SetTranslation(Vector3D v) { return(new CoordinateSystem(v.ToPoint3D(), this.XAxis, this.YAxis, this.ZAxis)); }
/// <summary> /// Creates a translation /// </summary> /// <param name="translation">A translation vector</param> /// <returns>A translated coordinate system</returns> public static CoordinateSystem Translation(Vector3D translation) { return(new CoordinateSystem(translation.ToPoint3D(), UnitVector3D.XAxis, UnitVector3D.YAxis, UnitVector3D.ZAxis)); }