public class Ellipsoid extends Object implements Serializable
Constructor and Description |
---|
Ellipsoid(Frame frame,
double a,
double b,
double c)
Simple constructor.
|
Modifier and Type | Method and Description |
---|---|
double |
getA()
Get the length of the first semi-axis.
|
double |
getB()
Get the length of the second semi-axis.
|
double |
getC()
Get the length of the third semi-axis.
|
Frame |
getFrame()
Get the ellipsoid central frame.
|
Ellipse |
getPlaneSection(Vector3D planePoint,
Vector3D planeNormal)
Compute the 2D ellipse at the intersection of the 3D ellipsoid and a plane.
|
boolean |
isInside(Vector3D point)
Check if a point is inside the ellipsoid.
|
Vector3D |
pointOnLimb(Vector3D observer,
Vector3D outside)
Find a point on ellipsoid limb, as seen by an external observer.
|
public Ellipsoid(Frame frame, double a, double b, double c)
frame
- at the ellipsoid center, aligned with principal axesa
- first semi-axis lengthb
- second semi-axis lengthc
- third semi-axis lengthpublic double getA()
public double getB()
public double getC()
public Frame getFrame()
public boolean isInside(Vector3D point)
point
- point to check, in the ellipsoid framepublic Ellipse getPlaneSection(Vector3D planePoint, Vector3D planeNormal) throws MathRuntimeException
planePoint
- point belonging to the plane, in the ellipsoid frameplaneNormal
- normal of the plane, in the ellipsoid frameMathRuntimeException
- if the norm of planeNormal is nullpublic Vector3D pointOnLimb(Vector3D observer, Vector3D outside) throws MathRuntimeException
observer
- observer position in ellipsoid frameoutside
- point outside ellipsoid in ellipsoid frame, defining the phase around limbMathRuntimeException
- if ellipsoid center, observer and outside
points are alignedCopyright © 2002-2020 CS GROUP. All rights reserved.