## Class FieldEllipse<T extends CalculusFieldElement<T>>

• Type Parameters:
T - the type of the field elements

public class FieldEllipse<T extends CalculusFieldElement<T>>
extends Object
Model of a 2D ellipse in 3D space.

These ellipses are mainly created as plane sections of general 3D ellipsoids, but can be used for other purposes.

Instances of this class are guaranteed to be immutable.

Since:
12.0
Author:
Luc Maisonobe
Ellipsoid.getPlaneSection(FieldVector3D, FieldVector3D)
• ### Constructor Summary

Constructors
Constructor Description
FieldEllipse​(FieldVector3D<T> center, FieldVector3D<T> u, FieldVector3D<T> v, T a, T b, Frame frame)
Simple constructor.
• ### Method Summary

All Methods
Modifier and Type Method Description
T getA()
Get the semi major axis.
T getB()
Get the semi minor axis.
FieldVector3D<T> getCenter()
Get the center of the 2D ellipse.
FieldVector2D<T> getCenterOfCurvature​(FieldVector2D<T> point)
Find the center of curvature (point on the evolute) at the nadir of a point.
Frame getFrame()
Get the defining frame.
FieldVector3D<T> getU()
Get the unit vector along the major axis.
FieldVector3D<T> getV()
Get the unit vector along the minor axis.
FieldVector3D<T> pointAt​(T theta)
Get a point of the 2D ellipse.
FieldVector2D<T> projectToEllipse​(FieldVector2D<T> p)
Find the closest ellipse point.
TimeStampedFieldPVCoordinates<T> projectToEllipse​(TimeStampedFieldPVCoordinates<T> pv)
Project position-velocity-acceleration on an ellipse.
FieldVector2D<T> toPlane​(FieldVector3D<T> p)
Project a point to the ellipse plane.
FieldVector3D<T> toSpace​(FieldVector2D<T> p)
Create a point from its ellipse-relative coordinates.
• ### Methods inherited from class java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
• ### Constructor Detail

• #### FieldEllipse

public FieldEllipse​(FieldVector3D<T> center,
FieldVector3D<T> u,
FieldVector3D<T> v,
T a,
T b,
Frame frame)
Simple constructor.
Parameters:
center - center of the 2D ellipse
u - unit vector along the major axis
v - unit vector along the minor axis
a - semi major axis
b - semi minor axis
frame - frame in which the ellipse is defined
• ### Method Detail

• #### getCenter

public FieldVector3D<T> getCenter()
Get the center of the 2D ellipse.
Returns:
center of the 2D ellipse
• #### getU

public FieldVector3D<T> getU()
Get the unit vector along the major axis.
Returns:
unit vector along the major axis
• #### getV

public FieldVector3D<T> getV()
Get the unit vector along the minor axis.
Returns:
unit vector along the minor axis
• #### getA

public T getA()
Get the semi major axis.
Returns:
semi major axis
• #### getB

public T getB()
Get the semi minor axis.
Returns:
semi minor axis
• #### getFrame

public Frame getFrame()
Get the defining frame.
Returns:
defining frame
• #### pointAt

public FieldVector3D<T> pointAt​(T theta)
Get a point of the 2D ellipse.
Parameters:
theta - angular parameter on the ellipse (really the eccentric anomaly)
Returns:
ellipse point at theta, in underlying ellipsoid frame
• #### toSpace

public FieldVector3D<T> toSpace​(FieldVector2D<T> p)
Create a point from its ellipse-relative coordinates.
Parameters:
p - point defined with respect to ellipse
Returns:
point defined with respect to 3D frame
toPlane(FieldVector3D)
• #### toPlane

public FieldVector2D<T> toPlane​(FieldVector3D<T> p)
Project a point to the ellipse plane.
Parameters:
p - point defined with respect to 3D frame
Returns:
point defined with respect to ellipse
toSpace(FieldVector2D)
• #### projectToEllipse

public FieldVector2D<T> projectToEllipse​(FieldVector2D<T> p)
Find the closest ellipse point.
Parameters:
p - point in the ellipse plane to project on the ellipse itself
Returns:
closest point belonging to 2D meridian ellipse
• #### projectToEllipse

public TimeStampedFieldPVCoordinates<T> projectToEllipse​(TimeStampedFieldPVCoordinates<T> pv)
Project position-velocity-acceleration on an ellipse.
Parameters:
pv - position-velocity-acceleration to project, in the reference frame
Returns:
projected position-velocity-acceleration
• #### getCenterOfCurvature

public FieldVector2D<T> getCenterOfCurvature​(FieldVector2D<T> point)
Find the center of curvature (point on the evolute) at the nadir of a point.
Parameters:
point - point in the ellipse plane
Returns:
center of curvature of the ellipse directly at point nadir