Class FieldEllipse<T extends CalculusFieldElement<T>>

java.lang.Object
org.orekit.bodies.FieldEllipse<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
See Also:
  • Constructor Details

    • 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 Details

    • 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
      See Also:
    • 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
      See Also:
    • 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

      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