Index of Functions: A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X
psv2pl_c

 Procedure Abstract Required_Reading Keywords Brief_I/O Detailed_Input Detailed_Output Parameters Exceptions Files Particulars Examples Restrictions Literature_References Author_and_Institution Version Index_Entries

#### Procedure

```   psv2pl_c ( Point and spanning vectors to plane )

void psv2pl_c ( ConstSpiceDouble    point[3],
ConstSpiceDouble    span1[3],
ConstSpiceDouble    span2[3],
SpicePlane        * plane    )

```

#### Abstract

```   Make a SPICE plane from a point and two spanning vectors.
```

```   PLANES
```

#### Keywords

```   GEOMETRY
MATH
PLANE

```

#### Brief_I/O

```   VARIABLE  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_Input

```   point,
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_Output

```   plane       is a SPICE plane that represents the geometric
plane defined by `point', `span1', and `span2'.
```

#### Parameters

```   None.
```

#### Exceptions

```   1)  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.
```

#### Files

```   None.
```

#### Particulars

```   CSPICE 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.
```

#### Examples

```   1)  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 );
```

#### Restrictions

```   None.
```

#### Literature_References

```   [1]  G. Thomas and R. Finney, "Calculus and Analytic Geometry,"
```

#### Author_and_Institution

```   N.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_Entries

```   point and spanning vectors to plane
```
`Fri Dec 31 18:41:10 2021`