public interface EllipsoidBodyShape extends StarConvexBodyShape
StarConvexBodyShape
interface by adding getters to access the spheroid parameters.StarConvexBodyShape
BodyShape.MarginType
DEFAULT_DISTANCE_EPSILON, DIRECTION_FACTOR
Modifier and Type | Method and Description |
---|---|
EllipsoidPoint |
buildPoint(LLHCoordinatesSystem coordSystem,
double latitude,
double longitude,
double height,
String name)
Build a
BodyPoint from LLH coordinates. |
EllipsoidPoint |
buildPoint(Vector3D position,
Frame frame,
AbsoluteDate date,
String name)
Build a
BodyPoint from position in provided frame at provided date. |
EllipsoidPoint |
buildPoint(Vector3D position,
String name)
Build a
BodyPoint from position in body frame. |
EllipsoidPoint[] |
closestPointTo(Line line)
This method computes the two points, on the line and on the body, that are the closest to each other.
|
EllipsoidPoint[] |
closestPointTo(Line line,
Frame frame,
AbsoluteDate date)
This method computes the two points, on the line and on the body, that are the closest to each other.
|
EllipsoidPoint |
closestPointTo(Vector3D point)
Computes the point on body surface that is the closest to provided point.
|
EllipsoidPoint |
closestPointTo(Vector3D point,
Frame frame,
AbsoluteDate date)
Computes the point on body surface that is the closest to provided point.
|
EllipsoidPoint |
closestPointTo(Vector3D point,
String name)
Computes the point on body surface that is the closest to provided point.
|
Vector3D |
computePositionFromEllipsodeticCoordinates(double latitude,
double longitude,
double height)
Compute the position from the ellipsodetic coordinates in body frame.
|
double |
getARadius()
Getter for the semi axis A.
|
double |
getBRadius()
Getter for the semi axis B.
|
double |
getConjugateRadius()
Deprecated.
since 4.13 as this method isn't relevant to this class description, use
getCRadius()
instead. |
double |
getCRadius()
Getter for the semi axis C.
|
double |
getE2()
Deprecated.
since 4.13 as this method isn't relevant to this class description. This method will be kept in the
OneAxisEllipsoid class. Cast you ellipsoid to this type to continue to use it. |
IEllipsoid |
getEllipsoid()
Getter for the
spheroid object. |
double |
getEquatorialRadius()
Deprecated.
since 4.13 as this method isn't relevant to this class description, use
getARadius()
instead. Also, this method will be kept in the OneAxisEllipsoid class, so you can cast your
ellipsoid to this type to continue to use it. |
double |
getFlattening()
Deprecated.
since 4.13 as this method isn't relevant to this class description. This method will be kept in the
OneAxisEllipsoid class. Cast you ellipsoid to this type to continue to use it. |
double |
getG2()
Deprecated.
since 4.13 as this method isn't relevant to this class description. This method will be kept in the
OneAxisEllipsoid class. Cast you ellipsoid to this type to continue to use it. |
EllipsoidPoint |
getIntersectionPoint(Line line,
Vector3D close,
Frame frame,
AbsoluteDate date)
Getter for the intersection point of a line with the surface of the body.
|
EllipsoidPoint |
getIntersectionPoint(Line line,
Vector3D close,
Frame frame,
AbsoluteDate date,
double altitude)
Getter for the intersection point of a line with the surface of the body for a given altitude.
|
EllipsoidPoint |
getIntersectionPoint(Line line,
Vector3D close,
Frame frame,
AbsoluteDate date,
String name)
Getwter for the intersection point of a line with the surface of the body.
|
EllipsoidPoint[] |
getIntersectionPoints(Line line,
Frame frame,
AbsoluteDate date)
Compute the intersection points with a line.
|
double |
getTransverseRadius()
Deprecated.
since 4.13 as this method isn't relevant to this class description, use
getARadius() or
getBRadius() according to the ellipsoid description instead. |
boolean |
isSpherical()
Indicate if the ellipsoid can be considered as a sphere.
|
buildRadialPointOnShapeSurface, distanceTo, getApparentRadius, getBodyFrame, getDistanceEpsilon, getEncompassingSphereRadius, getEpsilonSignalPropagation, getLLHCoordinatesSystem, getName, isDefaultLLHCoordinatesSystem, resize, setDistanceEpsilon, setEpsilonSignalPropagation, setLLHCoordinatesSystem
getNativeFrame, getPVCoordinates
double getARadius()
double getBRadius()
double getCRadius()
boolean isSpherical()
true
if the ellipsoid can be considered as a sphere, false
otherwise@Deprecated double getEquatorialRadius()
getARadius()
instead. Also, this method will be kept in the OneAxisEllipsoid
class, so you can cast your
ellipsoid to this type to continue to use it.@Deprecated double getTransverseRadius()
getARadius()
or
getBRadius()
according to the ellipsoid description instead.@Deprecated double getConjugateRadius()
getCRadius()
instead.@Deprecated double getFlattening()
OneAxisEllipsoid
class. Cast you ellipsoid to this type to continue to use it.@Deprecated double getE2()
OneAxisEllipsoid
class. Cast you ellipsoid to this type to continue to use it.@Deprecated double getG2()
OneAxisEllipsoid
class. Cast you ellipsoid to this type to continue to use it.IEllipsoid getEllipsoid()
spheroid
object.EllipsoidPoint[] closestPointTo(Line line, Frame frame, AbsoluteDate date) throws PatriusException
Note: calculations take the line's minimum abscissa into account.
closestPointTo
in interface BodyShape
line
- the original line for the shortest distance computationframe
- the line's framedate
- the current dateBodyPoint
(depending on body shape)PatriusException
- if line cannot be converted to body frameEllipsoidPoint[] closestPointTo(Line line)
Note: calculations take the line's minimum abscissa into account.
In this method we consider that the line's frame is the body frame, and the date is the
AbsoluteDate.J2000_EPOCH
.
closestPointTo
in interface BodyShape
line
- the original line for the shortest distance computationBodyPoint
(depending on body shape)EllipsoidPoint closestPointTo(Vector3D point, Frame frame, AbsoluteDate date) throws PatriusException
closestPointTo
in interface BodyShape
point
- a point expressed in provided frameframe
- framedate
- datePatriusException
- if computation failedEllipsoidPoint closestPointTo(Vector3D point)
closestPointTo
in interface BodyShape
point
- a point expressed in body frameEllipsoidPoint closestPointTo(Vector3D point, String name)
closestPointTo
in interface BodyShape
point
- a point expressed in body framename
- name of the pointEllipsoidPoint buildPoint(Vector3D position, String name)
BodyPoint
from position in body frame. Type of returned body point depends on body.buildPoint
in interface BodyShape
position
- position in body framename
- name of the pointBodyPoint
from position in body frameEllipsoidPoint buildPoint(Vector3D position, Frame frame, AbsoluteDate date, String name) throws PatriusException
BodyPoint
from position in provided frame at provided date. Type of returned body point depends
on body.buildPoint
in interface BodyShape
position
- position in provided frame at provided dateframe
- framedate
- datename
- name of the pointBodyPoint
from position in provided frame at provided datePatriusException
- if failed to build pointEllipsoidPoint buildPoint(LLHCoordinatesSystem coordSystem, double latitude, double longitude, double height, String name)
BodyPoint
from LLH coordinates. Type of returned body point depends on body.buildPoint
in interface BodyShape
coordSystem
- LLH coordinates system in which are expressed the entered lat/long/heightlatitude
- input latitudelongitude
- input longitudeheight
- input heightname
- name of the pointEllipsoidPoint getIntersectionPoint(Line line, Vector3D close, Frame frame, AbsoluteDate date) throws PatriusException
A line may have several intersection points with a closed surface (we consider the one point case as a degenerated two points case). The close parameter is used to select which of these points should be returned. The selected point is the one that is closest to the close point.
getIntersectionPoint
in interface BodyShape
line
- test line (may intersect the body or not)close
- point used for intersections selection expressed in the body frameframe
- frame in which line is expresseddate
- date of the line in given framePatriusException
- if line cannot be converted to body frameEllipsoidPoint getIntersectionPoint(Line line, Vector3D close, Frame frame, AbsoluteDate date, String name) throws PatriusException
A line may have several intersection points with a closed surface (we consider the one point case as a degenerated two points case). The close parameter is used to select which of these points should be returned. The selected point is the one that is closest to the close point.
getIntersectionPoint
in interface BodyShape
line
- test line (may intersect the body or not)close
- point used for intersections selection expressed in the body frameframe
- frame in which line is expresseddate
- date of the line in given framename
- name of the pointPatriusException
- if line cannot be converted to body frameEllipsoidPoint getIntersectionPoint(Line line, Vector3D close, Frame frame, AbsoluteDate date, double altitude) throws PatriusException
A line may have several intersection points with a closed surface (we consider the one point case as a degenerated two points case). The close parameter is used to select which of these points should be returned. The selected point is the one that is closest to the close point.
getIntersectionPoint
in interface BodyShape
line
- test line (may intersect the body or not)close
- point used for intersections selection expressed in the body frameframe
- frame in which line is expresseddate
- date of the line in given framealtitude
- altitude of the intersectionPatriusException
- if line cannot be converted to body frameEllipsoidPoint[] getIntersectionPoints(Line line, Frame frame, AbsoluteDate date) throws PatriusException
getIntersectionPoints
in interface BodyShape
line
- the lineframe
- in which line is expresseddate
- date of the line in given framePatriusException
- if line cannot be converted to body frameVector3D computePositionFromEllipsodeticCoordinates(double latitude, double longitude, double height)
latitude
- latitude coordinatelongitude
- longitude coordinateheight
- height coordinate (signed value)Vector3D
Copyright © 2023 CNES. All rights reserved.