void vprjp_c ( ConstSpiceDouble vin [3],
ConstSpicePlane * plane,
SpiceDouble vout [3] )
Project a vector onto a specified plane, orthogonally.
PLANES
GEOMETRY
MATH
PLANE
VECTOR
Variable I/O Description
-------- --- --------------------------------------------------
vin I Vector to be projected.
plane I A CSPICE plane onto which vin is projected.
vout O Vector resulting from projection.
vin is a 3-vector that is to be orthogonally projected
onto a specified plane.
plane is a CSPICE plane that represents the geometric
plane onto which vin is to be projected.
vout is the vector resulting from the orthogonal
projection of vin onto plane. vout is the closest
point in the specified plane to vin.
None.
1) Invalid input planes are diagnosed by the routine pl2nvc_c,
which is called by this routine.
None.
Projecting a vector v orthogonally onto a plane can be thought of
as finding the closest vector in the plane to v. This `closest
vector' always exists; it may be coincident with the original
vector.
Two related routines are vprjpi_c, which inverts an orthogonal
projection of a vector onto a plane, and vproj_c, which projects
a vector orthogonally onto another vector.
1) Find the closest point in the ring plane of a planet to a
spacecraft located at positn (in body-fixed coordinates).
Suppose the vector normal is normal to the ring plane, and
that origin, which represents the body center, is in the
ring plane. Then we can make a `plane' with the code
nvp2pl_c ( normal, origin, &plane );
can find the projection by making the call
vprjp_c ( positn, &plane, proj );
None.
[1] `Calculus and Analytic Geometry', Thomas and Finney.
N.J. Bachman (JPL)
B.V. Semenov (JPL)
-CSPICE Version 1.0.1, 01-FEB-2017 (BVS)
Typo fix: pnv2pl_c -> nvp2pl_c.
-CSPICE Version 1.0.0, 05-MAR-1999 (NJB)
vector projection onto plane
Link to routine vprjp_c source file vprjp_c.c
|