psv2pl_c |
Table of contents
Procedurepsv2pl_c ( Point and spanning vectors to plane ) void psv2pl_c ( ConstSpiceDouble point[3], ConstSpiceDouble span1[3], ConstSpiceDouble span2[3], SpicePlane * plane ) AbstractMake a SPICE plane from a point and two spanning vectors. Required_ReadingPLANES KeywordsGEOMETRY MATH PLANE Brief_I/OVARIABLE I/O DESCRIPTION -------- --- -------------------------------------------------- point, span1, span2 I A point and two spanning vectors defining a plane. plane O A SPICE plane representing the plane. Detailed_Inputpoint, span1, span2 are, respectively, a point and two spanning vectors that define a geometric plane in three-dimensional space. The plane is the set of vectors point + s * span1 + t * span2 where s and t are real numbers. The spanning vectors `span1' and `span2' must be linearly independent, but they need not be orthogonal or unitized. Detailed_Outputplane is a SPICE plane that represents the geometric plane defined by `point', `span1', and `span2'. ParametersNone. Exceptions1) If `span1' and `span2' are linearly dependent, i.e. the vectors `point', `span1', and `span2' do not define a plane, the error SPICE(DEGENERATECASE) is signaled. FilesNone. ParticularsCSPICE geometry routines that deal with planes use the `plane' data type to represent input and output planes. This data type makes the routine interfaces simpler and more uniform. The CSPICE routines that produce SPICE planes from data that define a plane are: nvc2pl_c ( Normal vector and constant to plane ) nvp2pl_c ( Normal vector and point to plane ) psv2pl_c ( Point and spanning vectors to plane ) The CSPICE routines that convert SPICE planes to data that define a plane are: pl2nvc_c ( Plane to normal vector and constant ) pl2nvp_c ( Plane to normal vector and point ) pl2psv_c ( Plane to point and spanning vectors ) Any of these last three routines may be used to convert this routine's output, `plane', to another representation of a geometric plane. Examples1) Project a vector v orthogonally onto a plane defined by point, span1, and span2. proj is the projection we want; it is the closest vector in the plane to v. psv2pl_c ( point, span1, span2, &plane ); vprjp_c ( v, &plane, proj ); 2) Find the plane determined by a spacecraft's position vector relative to a central body and the spacecraft's velocity vector. We assume that all vectors are given in the same coordinate system. /. pos is the spacecraft's position, relative to the central body. vel is the spacecraft's velocity vector. pos is a point (vector, if you like) in the orbit plane, and it is also one of the spanning vectors of the plane. ./ psv2pl_c ( pos, pos, vel, &plane ); RestrictionsNone. Literature_References[1] G. Thomas and R. Finney, "Calculus and Analytic Geometry," 7th Edition, Addison Wesley, 1988. Author_and_InstitutionN.J. Bachman (JPL) J. Diaz del Rio (ODC Space) Version-CSPICE Version 1.0.1, 24-AUG-2021 (JDR) Edited the header to comply with NAIF standard. -CSPICE Version 1.0.0, 05-MAR-1999 (NJB) Index_Entriespoint and spanning vectors to plane |
Fri Dec 31 18:41:10 2021