Navigation
API > API/Plugins > API/Plugins/CelestialVault > API/Plugins/CelestialVault/UCelestialMaths
Description
Return the location of a Planetary Body relative to the Earth, expressed in Celestial Coordinates (RA, DEC, Distance) It requires the Observer location on Earth for more precise computations This function also returns the distance between bodies, as it can help for Magnitude computations
By default, the relativistic effects are considered (time taken for the light to reach the Observer body location) This function therefore returns the location of the Planetary Body as if it was seen from the Observer Body Location at this JulianDate With bIgnoreRelativisticEffect=true, one can ignore this and have the instant location. It can also save some computation cycles for close bodies like Moon. With bGeoCentricObserver=true, the observer is expected to be at the Earth center, and the Latitude/longitude are ignored.
This override can run faster if we provide it with a cache of the Earth Location and Velocity, because it won't recompute it.
| Name | GetBodyCelestialCoordinatesAU_UsingKnownState |
| Type | function |
| Header File | /Engine/Plugins/Runtime/CelestialVault/Source/CelestialVault/Public/CelestialMaths.h |
| Include Path | #include "CelestialMaths.h" |
| Source | /Engine/Plugins/Runtime/CelestialVault/Source/CelestialVault/Private/CelestialMaths.cpp |
UFUNCTION (BlueprintCallable, Category="Celestial Vault|Planetary bodies")
static void GetBodyCelestialCoordinatesAU_UsingKnownState
(
double JulianDate,
EVSOP87BodyType VSOP87BodyType,
const FPlanetaryBodyKinematicState & EarthKinematicState,
double ObserverLatitude,
double ObserverLongitude,
bool bGeoCentricObserver,
bool bIgnoreRelativisticEffect,
double & RAJ2000Hours,
double & DECJ2000Degrees,
double & RAHours,
double & DECDegrees,
double & RAGeocentricHours,
double & DECGeocentricDegrees,
double & DistanceBodyToEarthAU,
double & DistanceBodyToSunAU,
double & DistanceEarthToSunAU
)