cspice_pl2nvp

 Abstract I/O Examples Particulars Required Reading Version Index_Entries

#### Abstract

CSPICE_PL2NVP returns a unit normal vector and point that define
a specified plane.

#### I/O

Given:

plane   a structure describing a SPICE plane.

[1,1] = size(plane); struct = class(plane)

The structure has the fields:

normal:     [3,1] = size(normal); double = class(normal)
constant:   [1,1] = size(constant); double = class(constant)

the call:

[normal, point] = cspice_pl2nvp( plane )

returns:

normal   [3,1] = size(normal); double = class(normal)

point    [3,1] = size(point); double = class(point)

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 three-dimensional
space that satisfy

< x - point, normal >  =  0.

'point' is always the closest point in the input
plane to the origin. 'point' is always a
non-negative scalar multiple of 'normal'.

#### Examples

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.44; -5./3.; 11./9. ];
const      = cspice_pi;

%
% Construct the SPICE plane.
%
plane = cspice_nvc2pl( plane_norm, const );

%
% Convert the plane to a normal vector, point
% representation, 'point' lies in the plane.
%
[ norm_vec, point ] = cspice_pl2nvp( plane )

MATLAB outputs:

norm_vec =

7.630514391556131e-01
-5.212099994232330e-01
3.822206662437042e-01

point =

7.496657642594705e-01
-5.120667788657586e-01
3.755156378348896e-01

#### Particulars

Mice 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 Mice 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 Mice 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.

For important details concerning this module's function, please refer to
the CSPICE routine pl2nvp_c.

MICE.REQ
PLANES.REQ

#### Version

-Mice Version 1.0.0, 27-AUG-2012, EDW (JPL)

#### Index_Entries

plane to normal vector and point

Wed Apr  5 18:00:34 2017