CelestialBody¶

public class
CelestialBody
¶ Represents a celestial body (such as a planet or moon). See
getBodies()
.
java.util.List<CelestialBody>
getSatellites
()¶ A list of celestial bodies that are in orbit around this celestial body.
Game Scenes: All

float
getMass
()¶ The mass of the body, in kilograms.
Game Scenes: All

float
getGravitationalParameter
()¶ The standard gravitational parameter of the body in \(m^3s^{2}\).
Game Scenes: All

float
getSurfaceGravity
()¶ The acceleration due to gravity at sea level (mean altitude) on the body, in \(m/s^2\).
Game Scenes: All

float
getRotationalPeriod
()¶ The sidereal rotational period of the body, in seconds.
Game Scenes: All

float
getRotationalSpeed
()¶ The rotational speed of the body, in radians per second.
Game Scenes: All

double
getRotationAngle
()¶ The current rotation angle of the body, in radians. A value between 0 and \(2\pi\)
Game Scenes: All

double
getInitialRotation
()¶ The initial rotation angle of the body (at UT 0), in radians. A value between 0 and \(2\pi\)
Game Scenes: All

float
getEquatorialRadius
()¶ The equatorial radius of the body, in meters.
Game Scenes: All

double
surfaceHeight
(double latitude, double longitude)¶ The height of the surface relative to mean sea level, in meters, at the given position. When over water this is equal to 0.
Parameters:  latitude (double) – Latitude in degrees.
 longitude (double) – Longitude in degrees.
Game Scenes: All

double
bedrockHeight
(double latitude, double longitude)¶ The height of the surface relative to mean sea level, in meters, at the given position. When over water, this is the height of the seabed and is therefore negative value.
Parameters:  latitude (double) – Latitude in degrees.
 longitude (double) – Longitude in degrees.
Game Scenes: All

org.javatuples.Triplet<Double, Double, Double>
mSLPosition
(double latitude, double longitude, ReferenceFrame referenceFrame)¶ The position at mean sea level at the given latitude and longitude, in the given reference frame.
Parameters:  latitude (double) – Latitude in degrees.
 longitude (double) – Longitude in degrees.
 referenceFrame (ReferenceFrame) – Reference frame for the returned position vector.
Returns: Position as a vector.
Game Scenes: All

org.javatuples.Triplet<Double, Double, Double>
surfacePosition
(double latitude, double longitude, ReferenceFrame referenceFrame)¶ The position of the surface at the given latitude and longitude, in the given reference frame. When over water, this is the position of the surface of the water.
Parameters:  latitude (double) – Latitude in degrees.
 longitude (double) – Longitude in degrees.
 referenceFrame (ReferenceFrame) – Reference frame for the returned position vector.
Returns: Position as a vector.
Game Scenes: All

org.javatuples.Triplet<Double, Double, Double>
bedrockPosition
(double latitude, double longitude, ReferenceFrame referenceFrame)¶ The position of the surface at the given latitude and longitude, in the given reference frame. When over water, this is the position at the bottom of the seabed.
Parameters:  latitude (double) – Latitude in degrees.
 longitude (double) – Longitude in degrees.
 referenceFrame (ReferenceFrame) – Reference frame for the returned position vector.
Returns: Position as a vector.
Game Scenes: All

org.javatuples.Triplet<Double, Double, Double>
positionAtAltitude
(double latitude, double longitude, double altitude, ReferenceFrame referenceFrame)¶ The position at the given latitude, longitude and altitude, in the given reference frame.
Parameters:  latitude (double) – Latitude in degrees.
 longitude (double) – Longitude in degrees.
 altitude (double) – Altitude in meters above sea level.
 referenceFrame (ReferenceFrame) – Reference frame for the returned position vector.
Returns: Position as a vector.
Game Scenes: All

double
altitudeAtPosition
(org.javatuples.Triplet<Double, Double, Double> position, ReferenceFrame referenceFrame)¶ The altitude, in meters, of the given position in the given reference frame.
Parameters:  position (org.javatuples.Triplet<Double,Double,Double>) – Position as a vector.
 referenceFrame (ReferenceFrame) – Reference frame for the position vector.
Game Scenes: All

double
latitudeAtPosition
(org.javatuples.Triplet<Double, Double, Double> position, ReferenceFrame referenceFrame)¶ The latitude of the given position, in the given reference frame.
Parameters:  position (org.javatuples.Triplet<Double,Double,Double>) – Position as a vector.
 referenceFrame (ReferenceFrame) – Reference frame for the position vector.
Game Scenes: All

double
longitudeAtPosition
(org.javatuples.Triplet<Double, Double, Double> position, ReferenceFrame referenceFrame)¶ The longitude of the given position, in the given reference frame.
Parameters:  position (org.javatuples.Triplet<Double,Double,Double>) – Position as a vector.
 referenceFrame (ReferenceFrame) – Reference frame for the position vector.
Game Scenes: All

float
getSphereOfInfluence
()¶ The radius of the sphere of influence of the body, in meters.
Game Scenes: All

boolean
getHasAtmosphere
()¶ true
if the body has an atmosphere.Game Scenes: All

float
getAtmosphereDepth
()¶ The depth of the atmosphere, in meters.
Game Scenes: All

double
atmosphericDensityAtPosition
(org.javatuples.Triplet<Double, Double, Double> position, ReferenceFrame referenceFrame)¶ The atmospheric density at the given position, in \(kg/m^3\), in the given reference frame.
Parameters:  position (org.javatuples.Triplet<Double,Double,Double>) – The position vector at which to measure the density.
 referenceFrame (ReferenceFrame) – Reference frame that the position vector is in.
Game Scenes: All

boolean
getHasAtmosphericOxygen
()¶ true
if there is oxygen in the atmosphere, required for airbreathing engines.Game Scenes: All

double
temperatureAt
(org.javatuples.Triplet<Double, Double, Double> position, ReferenceFrame referenceFrame)¶ The temperature on the body at the given position, in the given reference frame.
Parameters:  position (org.javatuples.Triplet<Double,Double,Double>) – Position as a vector.
 referenceFrame (ReferenceFrame) – The reference frame that the position is in.
Game Scenes: All
Note
This calculation is performed using the bodies current position, which means that the value could be wrong if you want to know the temperature in the far future.

double
densityAt
(double altitude)¶ Gets the air density, in \(kg/m^3\), for the specified altitude above sea level, in meters.
Parameters:  altitude (double) –
Game Scenes: All
Note
This is an approximation, because actual calculations, taking sun exposure into account to compute air temperature, require us to know the exact point on the body where the density is to be computed (knowing the altitude is not enough). However, the difference is small for high altitudes, so it makes very little difference for trajectory prediction.

double
pressureAt
(double altitude)¶ Gets the air pressure, in Pascals, for the specified altitude above sea level, in meters.
Parameters:  altitude (double) –
Game Scenes: All

String
biomeAt
(double latitude, double longitude)¶ The biome at the given latitude and longitude, in degrees.
Parameters:  latitude (double) –
 longitude (double) –
Game Scenes: All

float
getFlyingHighAltitudeThreshold
()¶ The altitude, in meters, above which a vessel is considered to be flying “high” when doing science.
Game Scenes: All

float
getSpaceHighAltitudeThreshold
()¶ The altitude, in meters, above which a vessel is considered to be in “high” space when doing science.
Game Scenes: All

ReferenceFrame
getReferenceFrame
()¶ The reference frame that is fixed relative to the celestial body.
 The origin is at the center of the body.
 The axes rotate with the body.
 The xaxis points from the center of the body towards the intersection of the prime meridian and equator (the position at 0° longitude, 0° latitude).
 The yaxis points from the center of the body towards the north pole.
 The zaxis points from the center of the body towards the equator at 90°E longitude.
Game Scenes: All

ReferenceFrame
getNonRotatingReferenceFrame
()¶ The reference frame that is fixed relative to this celestial body, and orientated in a fixed direction (it does not rotate with the body).
 The origin is at the center of the body.
 The axes do not rotate.
 The xaxis points in an arbitrary direction through the equator.
 The yaxis points from the center of the body towards the north pole.
 The zaxis points in an arbitrary direction through the equator.
Game Scenes: All

ReferenceFrame
getOrbitalReferenceFrame
()¶ The reference frame that is fixed relative to this celestial body, but orientated with the body’s orbital prograde/normal/radial directions.
 The origin is at the center of the body.
 The axes rotate with the orbital prograde/normal/radial directions.
 The xaxis points in the orbital antiradial direction.
 The yaxis points in the orbital prograde direction.
 The zaxis points in the orbital normal direction.
Game Scenes: All

org.javatuples.Triplet<Double, Double, Double>
position
(ReferenceFrame referenceFrame)¶ The position of the center of the body, in the specified reference frame.
Parameters:  referenceFrame (ReferenceFrame) – The reference frame that the returned position vector is in.
Returns: The position as a vector.
Game Scenes: All

org.javatuples.Triplet<Double, Double, Double>
velocity
(ReferenceFrame referenceFrame)¶ The linear velocity of the body, in the specified reference frame.
Parameters:  referenceFrame (ReferenceFrame) – The reference frame that the returned velocity vector is in.
Returns: The velocity as a vector. The vector points in the direction of travel, and its magnitude is the speed of the body in meters per second.
Game Scenes: All

org.javatuples.Quartet<Double, Double, Double, Double>
rotation
(ReferenceFrame referenceFrame)¶ The rotation of the body, in the specified reference frame.
Parameters:  referenceFrame (ReferenceFrame) – The reference frame that the returned rotation is in.
Returns: The rotation as a quaternion of the form \((x, y, z, w)\).
Game Scenes: All

org.javatuples.Triplet<Double, Double, Double>
direction
(ReferenceFrame referenceFrame)¶ The direction in which the north pole of the celestial body is pointing, in the specified reference frame.
Parameters:  referenceFrame (ReferenceFrame) – The reference frame that the returned direction is in.
Returns: The direction as a unit vector.
Game Scenes: All

org.javatuples.Triplet<Double, Double, Double>
angularVelocity
(ReferenceFrame referenceFrame)¶ The angular velocity of the body in the specified reference frame.
Parameters:  referenceFrame (ReferenceFrame) – The reference frame the returned angular velocity is in.
Returns: The angular velocity as a vector. The magnitude of the vector is the rotational speed of the body, in radians per second. The direction of the vector indicates the axis of rotation, using the righthand rule.
Game Scenes: All

java.util.List<CelestialBody>