예제 #1
0
 /// <summary>
 /// Projects a point to the given plane along the given direction.
 /// </summary>
 /// <param name="point"></param>
 /// <param name="direction"></param>
 /// <param name="origin"></param>
 /// <param name="normal"></param>
 /// <returns></returns>
 public static Vec3d ProjectToPlaneAlong(Vec3d point, Vec3d origin, Vec3d normal, Vec3d direction)
 {
     return(point + Vec3d.MatchProjection(direction, origin - point, normal));
 }
예제 #2
0
 /// <summary>
 /// Projects a vector to the given plane along the given direction.
 /// </summary>
 /// <param name="vector"></param>
 /// <param name="normal"></param>
 /// <param name="direction"></param>
 /// <returns></returns>
 public static Vec3d ProjectToPlaneAlong(Vec3d vector, Vec3d normal, Vec3d direction)
 {
     return(vector - Vec3d.MatchProjection(direction, vector, normal));
 }