inedpl_c |

Table of contents## Procedureinedpl_c ( Intersection of ellipsoid and plane ) void inedpl_c ( SpiceDouble a, SpiceDouble b, SpiceDouble c, ConstSpicePlane * plane, SpiceEllipse * ellips, SpiceBoolean * found ) ## AbstractFind the intersection of a triaxial ellipsoid and a plane. ## Required_ReadingELLIPSES PLANES ## KeywordsELLIPSE ELLIPSOID GEOMETRY MATH ## Brief_I/OVARIABLE I/O DESCRIPTION -------- --- -------------------------------------------------- a I Length of ellipsoid semi-axis lying on the x-axis. b I Length of ellipsoid semi-axis lying on the y-axis. c I Length of ellipsoid semi-axis lying on the z-axis. plane I Plane that intersects ellipsoid. ellips O Intersection ellipse, when `found' is SPICETRUE. found O Flag indicating whether ellipse was found. ## Detailed_Inputa, b, c are the lengths of the semi-axes of a triaxial ellipsoid. The ellipsoid is centered at the origin and oriented so that its axes lie on the x, y and z axes. a, b, and c are the lengths of the semi-axes that point in the x, y, and z directions respectively. plane is a SPICE plane. ## Detailed_Outputellips is the SPICE ellipse formed by the intersection of the input plane and ellipsoid. `ellips' will represent a single point if the ellipsoid and plane are tangent. If the intersection of the ellipsoid and plane is empty, `ellips' is not modified. found is SPICETRUE if and only if the intersection of the ellipsoid and plane is non-empty. ## ParametersNone. ## Exceptions1) If any of the lengths of the semi-axes of the input ellipsoid are non-positive, the error SPICE(DEGENERATECASE) is signaled. `ellips' is not modified. `found' is set to SPICEFALSE. 2) If the input plane in invalid, in other words, if the input plane as the zero vector as its normal vector, the error SPICE(INVALIDPLANE) is signaled by a routine in the call tree of this routine. `ellips' is not modified. `found' is set to SPICEFALSE. 3) If the input plane and ellipsoid are very nearly tangent, roundoff error may cause this routine to give unreliable results. 4) If the input plane and ellipsoid are precisely tangent, the intersection is a single point. In this case, the output ellipse is degenerate, but `found' will still have the value SPICETRUE. You must decide whether this output makes sense for your application. ## FilesNone. ## ParticularsAn ellipsoid and a plane can intersect in an ellipse, a single point, or the empty set. ## ExamplesThe numerical results shown for these examples may differ across platforms. The results depend on the SPICE kernels used as input, the compiler and supporting libraries, and the machine specific arithmetic implementation. 1) Suppose we wish to find the limb of a body, as observed from location `loc' in body-fixed coordinates. The CSPICE routine edlimb_c solves this problem. Here's how ## RestrictionsNone. ## Literature_ReferencesNone. ## Author_and_InstitutionN.J. Bachman (JPL) J. Diaz del Rio (ODC Space) E.D. Wright (JPL) ## Version-CSPICE Version 1.1.0, 24-AUG-2021 (JDR) Changed the output argument name "ellipse" to "ellips" for consistency with other routines. Edited the header to comply with NAIF standard. Added complete code example. -CSPICE Version 1.0.1, 06-FEB-2003 (EDW) Corrected a typo in the header documentation, input variable 'ellipse' not 'ellips' -CSPICE Version 1.0.0, 13-JUN-1999 (NJB) ## Index_Entriesintersection of ellipsoid and plane |

Fri Dec 31 18:41:08 2021