CSPICE_PL2NVP returns a unit normal vector and point that define a
specified plane.
For important details concerning this module's function, please refer to
the CSPICE routine pl2nvp_c.
Given:
plane a structure describing a SPICE plane. The structure has
the fields:
normal: [3array double]
constant: [scalar double]
the call:
cspice_pl2nvp, plane, normal, point
returns:
normal a double precision 3vector
point a double precision 3vector
are, respectively, a unit normal vector and point
that define the geometric plane represented by
plane. Let the symbol < a, b > indicate the inner
product of vectors a and b; then the geometric
plane is the set of vectors x in threedimensional
space that satisfy
< x  point, normal > = 0.
'point' is always the closest point in the input
plane to the origin. 'point' is always a
nonnegative scalar multiple of 'normal'.
Any numerical results shown for this example may differ between
platforms as the results depend on the SPICE kernels used as input
and the machine specific arithmetic implementation.
;;
;; A trivial example of plane creation and
;; decomposition. Create a plane via the definition
;; of a plane normal and constant, determine a
;; point in the plane.
;;
plane_norm = [ 2.44d, 5.d/3.d, 11.d/9.d ]
const = 3.141592654d
;;
;; Construct the SPICE plane.
;;
cspice_nvc2pl, plane_norm, const, plane
;;
;; Convert the plane to a normal vector, point
;; representation, 'point' lies in the plane.
;;
cspice_pl2nvp, plane, norm_vec, point
print, point
IDL outputs: 0.74966576 0.51206678 0.37551564
Icy geometry routines that deal with planes use the `plane'
data type to represent input and output planes. This data type
makes the subroutine interfaces simpler and more uniform.
The Icy routines that produce SPICE planes from data that
define a plane are:
cspice_nvc2pl ( Normal vector and constant to plane )
cspice_nvp2pl ( Normal vector and point to plane )
cspice_psv2pl ( Point and spanning vectors to plane )
The Icy routines that convert SPICE planes to data that
define a plane are:
cspice_pl2nvc ( Plane to normal vector and constant )
cspice_pl2nvp ( Plane to normal vector and point )
cspice_pl2psv ( 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.
ICY.REQ
PLANES.REQ
Icy Version 1.0.1, 16AUG2010, EDW (JPL)
Expanded and improved I/O and Particulars sections.
Icy Version 1.0.0, 16JUN2003, EDW (JPL)
plane to normal vector and point
