Class Orbit

All Implemented Interfaces:
com.badlogic.gdx.utils.Disposable, IGPUVertsRenderable, ILineRenderable, IRenderable, IStarContainer, IVisibilitySwitch, IPosition
Direct Known Subclasses:
EclipticOrbit, HeliotropicOrbit

public class Orbit
extends Polyline
A polyline that represents a closed orbit. Contains a reference to the body and some other goodies
  • Field Details

    • SOLID_ANGLE_THRESHOLD

      protected static float SOLID_ANGLE_THRESHOLD
      Threshold solid angle
    • SHADER_MODEL_OVERLAP_FACTOR

      protected static final float SHADER_MODEL_OVERLAP_FACTOR
      Special overlap factor
      See Also:
      Constant Field Values
    • body

      protected CelestialBody body
    • prev

      protected Vector3d prev
    • curr

      protected Vector3d curr
    • alpha

      public double alpha
    • localTransformD

      public Matrix4d localTransformD
    • transformFunction

      public Matrix4d transformFunction
    • provider

      protected java.lang.String provider
    • multiplier

      protected java.lang.Double multiplier
    • providerClass

      protected java.lang.Class<? extends IOrbitDataProvider> providerClass
    • oc

      public OrbitComponent oc
    • onlyBody

      protected boolean onlyBody
    • newMethod

      public boolean newMethod
    • refreshing

      public boolean refreshing
      Refreshing state
    • elemsInGpu

      public boolean elemsInGpu
      Orbital elements in gpu, in case there is no body
    • pointColor

      public float[] pointColor
      Point color
    • pointSize

      public float pointSize
      Point size
  • Constructor Details

    • Orbit

      public Orbit()
  • Method Details

    • setSolidAngleThreshold

      public static void setSolidAngleThreshold​(float angleDeg)
    • initialize

      public void initialize()
      Overrides:
      initialize in class SceneGraphNode
    • doneLoading

      public void doneLoading​(com.badlogic.gdx.assets.AssetManager manager)
      Overrides:
      doneLoading in class SceneGraphNode
    • setPointCloudData

      public void setPointCloudData​(PointCloudData pcd)
      Overrides:
      setPointCloudData in class VertsObject
    • initOrbitMetadata

      public void initOrbitMetadata()
    • updateLocal

      public void updateLocal​(ITimeFrameProvider time, ICamera camera)
      Description copied from class: SceneGraphNode
      Updates the transform matrix with the transformations that will apply to the children and the local transform matrix with the transformations that will apply only to this object.
      Overrides:
      updateLocal in class SceneGraphNode
    • updateLocalTransform

      protected void updateLocalTransform​(java.time.Instant date)
    • updateLocalValues

      public void updateLocalValues​(ITimeFrameProvider time, ICamera camera)
      Description copied from class: SceneGraphNode
      This function updates all the local values before the localTransform is updated. Position, rotations and scale must be updated in here.
      Overrides:
      updateLocalValues in class VertsObject
    • addToRenderLists

      protected void addToRenderLists​(ICamera camera)
      Description copied from class: SceneGraphNode
      Adds this entity to the necessary render lists after the distance to the camera and the view angle have been determined.
      Overrides:
      addToRenderLists in class Polyline
    • render

      public void render​(LineRenderSystem renderer, ICamera camera, float alpha)
      Specified by:
      render in interface ILineRenderable
      Overrides:
      render in class Polyline
    • refreshOrbit

      public void refreshOrbit​(boolean force)
    • setSize

      public void setSize​(java.lang.Float size)
      Sets the absolute size of this entity
      Parameters:
      size -
    • setPointsize

      public void setPointsize​(java.lang.Long pointsize)
    • setPointsize

      public void setPointsize​(java.lang.Double pointsize)
    • setPointcolor

      public void setPointcolor​(double[] color)
    • getProvider

      public java.lang.String getProvider()
    • setProvider

      public void setProvider​(java.lang.String provider)
    • setOrbit

      public void setOrbit​(OrbitComponent oc)
    • setTransformFunction

      public void setTransformFunction​(java.lang.String transformFunction)
    • setMultiplier

      public void setMultiplier​(java.lang.Double multiplier)
    • setBody

      public void setBody​(CelestialBody body)
    • setOnlybody

      public void setOnlybody​(java.lang.Boolean onlyBody)
    • setNewmethod

      public void setNewmethod​(java.lang.Boolean newMethod)
    • getAlpha

      public double getAlpha()
      Specified by:
      getAlpha in interface IGPUVertsRenderable
      Overrides:
      getAlpha in class VertsObject
    • mustAddToIndex

      public boolean mustAddToIndex()
      Description copied from class: SceneGraphNode
      Whether to add this node to the index
      Overrides:
      mustAddToIndex in class SceneGraphNode
      Returns:
      True if the node needs to be added to the index.