public interface BodyPoint extends PVCoordinatesProvider
Instance of this class are guaranteed to be immutable.
| Modifier and Type | Interface and Description |
|---|---|
static class |
BodyPoint.BodyPointName
Class allowing to manage the default body point names.
|
| Modifier and Type | Method and Description |
|---|---|
default double |
angularSeparation(BodyPoint otherPoint)
Compute the angular separation, in radians, between the position of this and this of provided point, from the
body frame origin.
|
default double |
distance(BodyPoint otherPoint)
Compute the cartesian distance, in meters, between the position of this and this of provided point.
|
BodyShape |
getBodyShape()
Get the
BodyShape associated to this body point. |
BodyPoint |
getClosestPointOnShape()
Returns the closest point to this on the shape surface.
|
default LLHCoordinates |
getLLHCoordinates()
Returns (after computation if not computed yet) the latitude/longitude/height coordinates of this in the
associated body shape preferred coordinates system.
|
LLHCoordinates |
getLLHCoordinates(LLHCoordinatesSystem coordSystem)
Returns (after computation if not computed yet) the latitude/longitude/height coordinates of this in the
requested coordinates system.
|
String |
getName()
Getter for the name of the point.
|
default Frame |
getNativeFrame(AbsoluteDate date)
Get the native frame, i.e. the raw frame in which PVCoordinates are expressed before transformation to user
output frame.
|
Vector3D |
getNormal()
Get the normal direction, expressed in body frame, to the local horizontal plane at the point position, oriented
towards the outside.
|
default Vector3D |
getNormal(AbsoluteDate date,
Frame frame)
Returns the normal direction expressed in the provided frame.
|
double |
getNormalHeight()
Returns the normal height, computed as the signed distance between the closestPointOnShape and this:
Positive distance if this is outside the shape,
Negative distance if this is inside the shape,
Null distance if this is on the shape.
|
Vector3D |
getPosition()
Get the point cartesian position expressed in body frame.
|
default PVCoordinates |
getPVCoordinates(AbsoluteDate date,
Frame frame)
Get the
PVCoordinates of the body in the selected frame. |
BodyPoint |
getRadialProjectionOnShape()
Returns the body point, on the associated shape surface, in the radial direction corresponding to the position of
this: if several of them (may happen for not star-convex shapes), the method considers the one farthest to the
body frame origin (having the largest norm).
|
default boolean |
isInsideShape()
Returns true if the point is located inside the shape, false otherwise.
|
default boolean |
isOnShapeSurface()
Returns true if point is on body shape surface (i.e. its normal height is smaller than the body shape altitude
epsilon), false otherwise.
|
String |
toString(LLHCoordinatesSystem coordSystem)
Getter for a string representing the object using the entered coordinates system.
|
BodyShape getBodyShape()
BodyShape associated to this body point.BodyShape associated to this body pointString getName()
Vector3D getPosition()
Vector3D getNormal()
double getNormalHeight()
BodyPoint getClosestPointOnShape()
BodyPoint getRadialProjectionOnShape()
default boolean isInsideShape()
true if the point is located inside or on the shape, false otherwisedefault boolean isOnShapeSurface()
true if point is on body shape surface, false otherwisedefault LLHCoordinates getLLHCoordinates()
LLHCoordinatesLLHCoordinates getLLHCoordinates(LLHCoordinatesSystem coordSystem)
coordSystem - requested coordinates systemLLHCoordinatesIllegalArgumentException - if LLHCoordinatesSystem.ELLIPSODETIC with a not ellipsoidal body shapedefault double distance(BodyPoint otherPoint)
otherPoint - other body pointdefault double angularSeparation(BodyPoint otherPoint)
otherPoint - other body pointdefault PVCoordinates getPVCoordinates(AbsoluteDate date, Frame frame) throws PatriusException
PVCoordinates of the body in the selected frame.getPVCoordinates in interface PVCoordinatesProviderdate - current dateframe - the frame where to define the positionPatriusException - if position cannot be computed in given framedefault Frame getNativeFrame(AbsoluteDate date) throws PatriusException
getNativeFrame in interface PVCoordinatesProviderdate - a datePatriusException - thrown if native frame is undefined or unknowndefault Vector3D getNormal(AbsoluteDate date, Frame frame) throws PatriusException
date - dateframe - frame in which the normal direction must be expressedPatriusException - if frame transformation cannot be computedString toString(LLHCoordinatesSystem coordSystem)
coordSystem - coordinates system to be usedCopyright © 2024 CNES. All rights reserved.