public abstract class AbstractCelestialPoint extends Object implements CelestialPoint
CelestialPoint interface.
This abstract implementation provides basic services that can be shared by most implementations of the
CelestialPoint interface. It holds the gravitational attraction coefficient and build some body-centered
frames automatically (ICRF, EME2000, etc.).
CelestialPoint.BodyNatureECLIPTICJ2000_FRAME_NAME, EME2000_FRAME_NAME, ICRF_FRAME_NAME| Constructor and Description |
|---|
AbstractCelestialPoint(String name,
double gm,
CelestialBodyEphemeris ephemeris,
CelestialBodyFrame icrf)
Constructor with icrf frame.
|
AbstractCelestialPoint(String name,
double gm,
CelestialBodyEphemeris ephemeris,
Frame parentFrame,
BSPEphemerisLoader.SpiceJ2000ConventionEnum convention)
Constructor with parent frame.
|
AbstractCelestialPoint(String name,
double gm,
Frame parentFrame,
CelestialBodyEphemeris ephemeris)
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
CelestialBodyFrame |
getEclipticJ2000()
Get an Ecliptic J200, celestial point centered frame.
|
CelestialBodyFrame |
getEME2000()
Get an EME2000, celestial point centered frame.
|
CelestialBodyEphemeris |
getEphemeris()
Get the ephemeris of the celestial point.
|
double |
getGM()
Get the central attraction coefficient of the celestial point.
|
CelestialBodyFrame |
getICRF()
Get an ICRF, celestial point centered frame.
|
String |
getName()
Get the name of the celestial point.
|
Frame |
getNativeFrame(AbsoluteDate date)
Get the native frame, i.e. the raw frame in which PVCoordinates are expressed before transformation to user
output frame.
|
PVCoordinates |
getPVCoordinates(AbsoluteDate date,
Frame frame)
Get the
PVCoordinates of the body in the selected frame. |
void |
setEphemeris(CelestialBodyEphemeris ephemerisIn)
Set an ephemeris to the celestial point.
|
void |
setGM(double gmIn)
Set a central attraction coefficient to the celestial point.
|
String |
toString()
Returns a string representation of the celestial point and its attributes.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitgetBodyNaturepublic AbstractCelestialPoint(String name, double gm, CelestialBodyEphemeris ephemeris, Frame parentFrame, BSPEphemerisLoader.SpiceJ2000ConventionEnum convention)
name - namegm - gravitational attraction coefficient (in m3/s2)ephemeris - ephemerisparentFrame - parent frame (usually it should be the ICRF centered on the parent body)convention - spice convention for BSP framespublic AbstractCelestialPoint(String name, double gm, CelestialBodyEphemeris ephemeris, CelestialBodyFrame icrf)
name - namegm - gravitational attraction coefficient (in m3/s2)ephemeris - ephemerisicrf - icrf frame centered on this pointpublic AbstractCelestialPoint(String name, double gm, Frame parentFrame, CelestialBodyEphemeris ephemeris)
name - name of the bodygm - gravitational attraction coefficient (in m3/s2)parentFrame - parent frame (usually it should be the ICRF centered on the parent body)ephemeris - ephemerispublic 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 framepublic Frame getNativeFrame(AbsoluteDate date) throws PatriusException
getNativeFrame in interface PVCoordinatesProviderdate - a datePatriusException - thrown if native frame is undefined or unknownpublic CelestialBodyFrame getICRF()
The frame is always bound to the celestial point, and its axes have a fixed orientation with respect to other inertial frames.
getICRF in interface CelestialPointCelestialBody.getRotatingFrame()public CelestialBodyFrame getEME2000()
The frame is always bound to the celestial point center, and its axes are colinear to Earth EME2000 frame.
getEME2000 in interface CelestialPointpublic CelestialBodyFrame getEclipticJ2000()
The frame is always bound to the celestial point center with constant rotation relative to the ICRF.
getEclipticJ2000 in interface CelestialPointpublic String getName()
getName in interface CelestialPointpublic double getGM()
Warning: attraction model should not be null (it is not null by default).
getGM in interface CelestialPointpublic void setGM(double gmIn)
setGM in interface CelestialPointgmIn - the central attraction coefficient (m3/s2)public CelestialBodyEphemeris getEphemeris()
getEphemeris in interface CelestialPointpublic void setEphemeris(CelestialBodyEphemeris ephemerisIn)
setEphemeris in interface CelestialPointephemerisIn - the ephemerispublic String toString()
toString in interface CelestialPointtoString in class ObjectCopyright © 2025 CNES. All rights reserved.