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:
BodyShape
public class ExtendedEllipsoid extends OneAxisEllipsoid
Transform provider from Spacecraft frame to observed body frame.- Author:
- Luc Maisonobe
-
-
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 Vector3DconvertLos(Vector3D primary, Vector3D secondary)Convert a line-of-sight from Cartesian to topocentric.Vector3DconvertLos(GeodeticPoint point, Vector3D los)Convert a line-of-sight from Cartesian to topocentric.Vector3DpointAtAltitude(Vector3D position, Vector3D los, double altitude)Get point at some altitude along a pixel line of sight.Vector3DpointAtLatitude(Vector3D position, Vector3D los, double latitude, Vector3D closeReference)Get point at some latitude along a pixel line of sight.Vector3DpointAtLongitude(Vector3D position, Vector3D los, double longitude)Get point at some longitude along a pixel line of sight.NormalizedGeodeticPointpointOnGround(Vector3D position, Vector3D los, double centralLongitude)Get point on ground along a pixel line of sight.GeodeticPointtransform(Vector3D point, Frame frame, AbsoluteDate date)NormalizedGeodeticPointtransform(Vector3D point, Frame frame, AbsoluteDate date, double centralLongitude)Transform a cartesian point to a surface-relative point.Vector3Dtransform(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, pointAtAltitude, pointAtAltitude, 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:
transformin interfaceBodyShape- Overrides:
transformin classOneAxisEllipsoid
-
transform
public GeodeticPoint transform(Vector3D point, Frame frame, AbsoluteDate date)
- Specified by:
transformin interfaceBodyShape- Overrides:
transformin 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
-
-