Package org.orekit.bodies
Class Ellipse
- java.lang.Object
-
- org.orekit.bodies.Ellipse
-
public class Ellipse 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:
- 7.0
- Author:
- Luc Maisonobe
- See Also:
Ellipsoid.getPlaneSection(Vector3D, Vector3D)
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description doublegetA()Get the semi major axis.doublegetB()Get the semi minor axis.Vector3DgetCenter()Get the center of the 2D ellipse.Vector2DgetCenterOfCurvature(Vector2D point)Find the center of curvature (point on the evolute) at the nadir of a point.FramegetFrame()Get the defining frame.Vector3DgetU()Get the unit vector along the major axis.Vector3DgetV()Get the unit vector along the minor axis.Vector3DpointAt(double theta)Get a point of the 2D ellipse.Vector2DprojectToEllipse(Vector2D p)Find the closest ellipse point.TimeStampedPVCoordinatesprojectToEllipse(TimeStampedPVCoordinates pv)Project position-velocity-acceleration on an ellipse.Vector2DtoPlane(Vector3D p)Project a point to the ellipse plane.Vector3DtoSpace(Vector2D p)Create a point from its ellipse-relative coordinates.
-
-
-
Constructor Detail
-
Ellipse
public Ellipse(Vector3D center, Vector3D u, Vector3D v, double a, double b, Frame frame)
Simple constructor.- Parameters:
center- center of the 2D ellipseu- unit vector along the major axisv- unit vector along the minor axisa- semi major axisb- semi minor axisframe- frame in which the ellipse is defined
-
-
Method Detail
-
getCenter
public Vector3D getCenter()
Get the center of the 2D ellipse.- Returns:
- center of the 2D ellipse
-
getU
public Vector3D getU()
Get the unit vector along the major axis.- Returns:
- unit vector along the major axis
-
getV
public Vector3D getV()
Get the unit vector along the minor axis.- Returns:
- unit vector along the minor axis
-
getA
public double getA()
Get the semi major axis.- Returns:
- semi major axis
-
getB
public double getB()
Get the semi minor axis.- Returns:
- semi minor axis
-
getFrame
public Frame getFrame()
Get the defining frame.- Returns:
- defining frame
-
pointAt
public Vector3D pointAt(double 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 Vector3D toSpace(Vector2D 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(Vector3D)
-
toPlane
public Vector2D toPlane(Vector3D 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:
toSpace(Vector2D)
-
projectToEllipse
public Vector2D projectToEllipse(Vector2D 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 TimeStampedPVCoordinates projectToEllipse(TimeStampedPVCoordinates pv)
Project position-velocity-acceleration on an ellipse.- Parameters:
pv- position-velocity-acceleration to project, in the reference frame- Returns:
- projected position-velocity-acceleration
-
-