Package org.orekit.rugged.utils
Class ExtendedEllipsoid
- java.lang.Object
-
- org.orekit.bodies.Ellipsoid
-
- org.orekit.bodies.OneAxisEllipsoid
-
- org.orekit.rugged.utils.ExtendedEllipsoid
-
- All Implemented Interfaces:
Serializable
,BodyShape
public class ExtendedEllipsoid extends OneAxisEllipsoid
Transform provider from Spacecraft frame to observed body frame.- Author:
- Luc Maisonobe
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description ExtendedEllipsoid(double ae, double f, Frame bodyFrame)
Simple constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Vector3D
convertLos(Vector3D primary, Vector3D secondary)
Convert a line-of-sight from Cartesian to topocentric.Vector3D
convertLos(GeodeticPoint point, Vector3D los)
Convert a line-of-sight from Cartesian to topocentric.Vector3D
pointAtAltitude(Vector3D position, Vector3D los, double altitude)
Get point at some altitude along a pixel line of sight.Vector3D
pointAtLatitude(Vector3D position, Vector3D los, double latitude, Vector3D closeReference)
Get point at some latitude along a pixel line of sight.Vector3D
pointAtLongitude(Vector3D position, Vector3D los, double longitude)
Get point at some longitude along a pixel line of sight.NormalizedGeodeticPoint
pointOnGround(Vector3D position, Vector3D los, double centralLongitude)
Get point on ground along a pixel line of sight.GeodeticPoint
transform(Vector3D point, Frame frame, AbsoluteDate date)
NormalizedGeodeticPoint
transform(Vector3D point, Frame frame, AbsoluteDate date, double centralLongitude)
Transform a cartesian point to a surface-relative point.Vector3D
transform(GeodeticPoint point)
-
Methods inherited from class org.orekit.bodies.OneAxisEllipsoid
azimuthBetweenPoints, azimuthBetweenPoints, geodeticToIsometricLatitude, geodeticToIsometricLatitude, getBodyFrame, getCartesianIntersectionPoint, getCartesianIntersectionPoint, getEccentricity, getEccentricitySquared, getEquatorialRadius, getFlattening, getIntersectionPoint, getIntersectionPoint, lowestAltitudeIntermediate, lowestAltitudeIntermediate, projectToGround, projectToGround, setAngularThreshold, transform, transform, transform
-
Methods inherited from class org.orekit.bodies.Ellipsoid
getA, getB, getC, getFrame, getPlaneSection, getPlaneSection, isInside, isInside, pointOnLimb, pointOnLimb
-
-
-
-
Constructor Detail
-
ExtendedEllipsoid
public ExtendedEllipsoid(double ae, double f, Frame bodyFrame)
Simple constructor.- Parameters:
ae
- equatorial radius (m)f
- the flattening (f = (a-b)/a)bodyFrame
- body frame related to body shape- See Also:
FramesFactory.getITRF(org.orekit.utils.IERSConventions, boolean)
-
-
Method Detail
-
transform
public Vector3D transform(GeodeticPoint point)
- Specified by:
transform
in interfaceBodyShape
- Overrides:
transform
in classOneAxisEllipsoid
-
transform
public GeodeticPoint transform(Vector3D point, Frame frame, AbsoluteDate date)
- Specified by:
transform
in interfaceBodyShape
- Overrides:
transform
in classOneAxisEllipsoid
-
pointAtLatitude
public Vector3D pointAtLatitude(Vector3D position, Vector3D los, double latitude, Vector3D closeReference)
Get point at some latitude along a pixel line of sight.- Parameters:
position
- cell position (in body frame) (m)los
- pixel line-of-sight, not necessarily normalized (in body frame)latitude
- latitude with respect to ellipsoid (rad)closeReference
- reference point used to select the closest solution when there are two points at the desired latitude along the line, it should be close to los surface intersection (m)- Returns:
- point at latitude (m)
-
pointAtLongitude
public Vector3D pointAtLongitude(Vector3D position, Vector3D los, double longitude)
Get point at some longitude along a pixel line of sight.- Parameters:
position
- cell position (in body frame) (m)los
- pixel line-of-sight, not necessarily normalized (in body frame)longitude
- longitude with respect to ellipsoid (rad)- Returns:
- point at longitude (m)
-
pointOnGround
public NormalizedGeodeticPoint pointOnGround(Vector3D position, Vector3D los, double centralLongitude)
Get point on ground along a pixel line of sight.- Parameters:
position
- cell position (in body frame) (m)los
- pixel line-of-sight, not necessarily normalized (in body frame)centralLongitude
- reference longitude lc such that the point longitude will be normalized between lc-π and lc+π (rad)- Returns:
- point on ground
-
pointAtAltitude
public Vector3D pointAtAltitude(Vector3D position, Vector3D los, double altitude)
Get point at some altitude along a pixel line of sight.- Parameters:
position
- cell position (in body frame) (m)los
- pixel line-of-sight, not necessarily normalized (in body frame)altitude
- altitude with respect to ellipsoid (m)- Returns:
- point at altitude (m)
-
convertLos
public Vector3D convertLos(GeodeticPoint point, Vector3D los)
Convert a line-of-sight from Cartesian to topocentric.- Parameters:
point
- geodetic point on the line-of-sightlos
- line-of-sight, not necessarily normalized (in body frame and Cartesian coordinates)- Returns:
- line-of-sight in topocentric frame (East, North, Zenith) of the point, scaled to match radians in the horizontal plane and meters along the vertical axis
-
convertLos
public Vector3D convertLos(Vector3D primary, Vector3D secondary)
Convert a line-of-sight from Cartesian to topocentric.- Parameters:
primary
- reference point on the line-of-sight (in body frame and Cartesian coordinates)secondary
- secondary point on the line-of-sight, only used to define a direction with respect to the primary point (in body frame and Cartesian coordinates)- Returns:
- line-of-sight in topocentric frame (East, North, Zenith) of the point, scaled to match radians in the horizontal plane and meters along the vertical axis
-
transform
public NormalizedGeodeticPoint transform(Vector3D point, Frame frame, AbsoluteDate date, double centralLongitude)
Transform a cartesian point to a surface-relative point.- Parameters:
point
- cartesian point (m)frame
- frame in which cartesian point is expresseddate
- date of the computation (used for frames conversions)centralLongitude
- reference longitude lc such that the point longitude will be normalized between lc-π and lc+π (rad)- Returns:
- point at the same location but as a surface-relative point
-
-