Class CelestialBody
java.lang.Object
com.marginallyclever.ro3.node.Node
com.marginallyclever.ro3.node.nodes.pose.Pose
com.marginallyclever.ro3.node.nodes.pose.poses.space.CelestialBody
- All Implemented Interfaces:
PoseChangeListener,EventListener
Represents a celestial body - star, planet, moon, etc. Celestial bodies are assumed to be so large that the
player can't alter their course. As such their movement should be deterministic and predictable no matter the
time step.
-
Field Summary
FieldsModifier and TypeFieldDescriptiondoubledoubledoubledoubledoubledoubledoubledoubledoubledouble -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidfromJSON(org.json.JSONObject json) Deserialize this node and its children from a JSON object and its children.voidgetComponents(List<JPanel> list) Build a Swing Component that represents this Node.getIcon()Set a custom icon for this node.org.json.JSONObjecttoJSON()Serialize this node and its children to a JSON object and its children.voidMethods inherited from class com.marginallyclever.ro3.node.nodes.pose.Pose
addPoseChangeListener, getLocal, getParentPose, getPosition, getRotationEuler, getRotationIndex, getWorld, onPoseChange, removePoseChangeListener, setLocal, setPosition, setRotationEuler, setRotationIndex, setWorldMethods inherited from class com.marginallyclever.ro3.node.Node
addAttachListener, addChild, addChild, addDetachListener, addReadyListener, addRenameListener, findByPath, findChild, findChild, findFirstChild, findFirstSibling, findNodeByID, findParent, findParent, getAbsolutePath, getChildren, getName, getParent, getRootNode, getUniqueID, hasParent, isNameUsedBySibling, removeAttachListener, removeChild, removeDetachListener, removeReadyListener, removeRenameListener, setName, update, witnessProtection
-
Field Details
-
mass
public double mass -
radius
public double radius -
rotationalPeriod
public double rotationalPeriod -
perihelion
public double perihelion -
aphelion
public double aphelion -
orbitalPeriod
public double orbitalPeriod -
orbitalVelocity
public double orbitalVelocity -
orbitalInclination
public double orbitalInclination -
orbitalEccentricity
public double orbitalEccentricity -
obliquityToOrbit
public double obliquityToOrbit
-
-
Constructor Details
-
CelestialBody
public CelestialBody() -
CelestialBody
-
-
Method Details
-
getComponents
Description copied from class:PoseBuild a Swing Component that represents this Node.- Overrides:
getComponentsin classPose- Parameters:
list- the list to add components to.
-
getIcon
-
updateSize
public void updateSize() -
toJSON
public org.json.JSONObject toJSON()Description copied from class:NodeSerialize this node and its children to a JSON object and its children. Classes that override this method should call super.toJSON() first, then add to the object returned. -
fromJSON
public void fromJSON(org.json.JSONObject json) Description copied from class:NodeDeserialize this node and its children from a JSON object and its children. Classes that override this method should call super.fromJSON(). When they do it will trigger the creation of child nodes. The child nodes will then call their own fromJSON() methods.
-