Package gaiasky.scenegraph
Class Orbit
java.lang.Object
gaiasky.scenegraph.SceneGraphNode
gaiasky.scenegraph.VertsObject
gaiasky.scenegraph.Polyline
gaiasky.scenegraph.Orbit
- All Implemented Interfaces:
com.badlogic.gdx.utils.Disposable,I3DTextRenderable,IGPUVertsRenderable,ILineRenderable,IRenderable,IStarContainer,IVisibilitySwitch,IPosition
- Direct Known Subclasses:
EclipticOrbit,HeliotropicOrbit
A polyline that represents a closed orbit. Contains a reference to the body and some other goodies
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptiondoubleprotected CelestialBodydoubleprotected Vector3dbooleanprotected DoublebooleanintNumber of samples for the orbit data provider.protected booleanfloat[]Point colorfloatPoint sizeprotected Vector3dprotected Stringprotected Class<? extends IOrbitDataProvider>booleanRefreshing stateprotected static final floatSpecial overlap factorprotected static floatThreshold solid angleFields inherited from class gaiasky.scenegraph.VertsObject
additive, blend, closedLoop, depth, glPrimitive, pointCloudData, primitiveSize, renderGroupFields inherited from class gaiasky.scenegraph.SceneGraphNode
B31, B32, B33, B34, cc, children, computed, coordinates, copy, ct, D31, D32, D33, D34, distToCamera, F31, F32, F33, F34, forceLabel, id, labelcolor, lastStateChangeTimeMs, localizedNameIndex, localTransform, names, numChildren, octant, octantId, opacity, orientation, parent, parentName, pos, posSph, ROOT_NAME, size, translation, viewAngle, viewAngleApparent, visible -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidaddToRenderLists(ICamera camera) Adds this entity to the necessary render lists after the distance to the camera and the view angle have been determined.voidvoiddoneLoading(com.badlogic.gdx.assets.AssetManager manager) doublegetAlpha()floatGets the text opacityvoidvoidvoidbooleanisLabel()Is it a label or another kind of text?floatlabelMax()booleanWhether to add this node to the index.voidrefreshOrbit(boolean force) voidrender(LineRenderSystem renderer, ICamera camera, float alpha) voidrender(ExtSpriteBatch batch, ExtShaderProgram shader, FontRenderSystem sys, RenderingContext rc, ICamera camera) Render labelbooleanTells whether the text must be rendered or not for this entityvoidsetBody(CelestialBody body) voidSets the orientation model as a string.voidsetMultiplier(Double multiplier) voidsetNewmethod(Boolean newMethod) voidsetNumSamples(Long numSamples) voidsetOnlybody(Boolean onlyBody) voidvoidsetOrbittrail(Boolean trail) voidvoidsetPointcolor(double[] color) voidsetPointsize(Double pointsize) voidsetPointsize(Long pointsize) voidsetProvider(String provider) voidSets the absolute size of this entitystatic voidsetSolidAngleThreshold(float angleDeg) voidvoidsetTransformFunction(String transformFunction) voidsetTransformName(String transformFunction) voidsetTransformValues(double[] transformValues) Constructs the transformation matrix from a double array containing the values in a column-major order (first the four values of the first column, then the second, etc.).voidsetVisible(boolean visible, String name) text()Returns the textfloat[]Returns an array with the text colour in the fashion [r, g, b, a]voidExecutes the blending for the textvoidtextPosition(ICamera cam, Vector3d out) Sets the position of this text in the out vectordoubletextPosition2(ICamera cam, Vector3d out) floatReturns the text scale for the scale varying in the shaderfloattextSize()Returns the text sizevoidupdateLocal(ITimeFrameProvider time, ICamera camera) 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.protected voidupdateLocalTransform(Instant date) Methods inherited from class gaiasky.scenegraph.Polyline
getLineWidth, setArrowCapMethods inherited from class gaiasky.scenegraph.VertsObject
addPoint, addPoints, blend, clear, depth, getColor, getGlPrimitive, getLocalTransform, getParent, getPointCloud, getPrimitiveSize, isClosedLoop, isEmpty, isLine, isPoint, markForUpdate, setAdditive, setBlend, setClosedLoop, setDepth, setGlPrimitive, setPoints, setPrimitiveLineLoop, setPrimitiveLines, setPrimitiveLineStip, setPrimitivePoints, setPrimitiveSize, updateLocalValuesMethods inherited from class gaiasky.scenegraph.SceneGraphNode
add, add, addChild, addChild, addFocusableObjects, addName, addNodes, addToIndex, addToRender, computeFuturePosition, dispose, getAbsoluteOrientation, getAbsolutePosition, getAbsolutePosition, getAggregatedChildren, getChildByName, getChildByNameAndType, getChildrenByComponentType, getChildrenByType, getComponentType, getCoordinates, getCt, getDelta, getDescription, getDistToCamera, getFirstStarAncestor, getHeight, getHeight, getHeight, getHeightScale, getId, getLabelcolor, getLineCopy, getLocalizedName, getName, getNames, getNext, getNode, getNode, getOctant, getOpacity, getOrientation, getPos, getPosition, getPosition, getPosSph, getPredictedPosition, getRadius, getRoot, getSceneGraphDepth, getSimpleCopy, getSize, getStarCount, getUnrotatedPos, getVelocity, getViewAngle, getViewAngleApparent, getVisibilityOpacityFactor, hasCt, hasName, hasName, insert, isCopy, isForceLabel, isForceLabel, isInRender, isInRender, isValidPosition, isVisibilityOn, isVisible, isVisible, isVisible, isVisibleGroup, isVisibleGroup, msSinceStateChange, mustUpdatePosition, namesConcat, removeChild, removeFromIndex, removeFromRender, render2DLabel, render2DLabel, render2DLabel, render2DLabel, render3DLabel, render3DLabel, returnToPool, setColor, setColor, setComputedFlag, setCoordinates, setCt, setCt, setDescription, setForcelabel, setForceLabel, setForceLabel, setId, setLabelcolor, setLabelcolor, setLabelcolor, setName, setName, setNames, setParent, setPos, setSize, setSize, setUp, setVisible, setVisibleGroup, shouldRender, toString, update, update, updateLocalizedName, updateLocalizedNameRecursiveMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface gaiasky.render.ILineRenderable
getGlPrimitiveMethods inherited from interface gaiasky.render.IRenderable
getComponentType, getDistToCamera, getOpacity
-
Field Details
-
SOLID_ANGLE_THRESHOLD
protected static float SOLID_ANGLE_THRESHOLDThreshold solid angle -
SHADER_MODEL_OVERLAP_FACTOR
protected static final float SHADER_MODEL_OVERLAP_FACTORSpecial overlap factor- See Also:
-
body
-
prev
-
curr
-
alpha
public double alpha -
localTransformD
-
transformFunction
-
auxMat
-
provider
-
multiplier
-
providerClass
-
oc
-
onlyBody
protected boolean onlyBody -
newMethod
public boolean newMethod -
coord
public double coord -
model
-
isInOrbitalElementsGroup
public boolean isInOrbitalElementsGroup -
refreshing
public boolean refreshingRefreshing state -
numSamples
public int numSamplesNumber of samples for the orbit data provider. -
pointColor
public float[] pointColorPoint color -
pointSize
public float pointSizePoint size
-
-
Constructor Details
-
Orbit
public Orbit()
-
-
Method Details
-
setSolidAngleThreshold
public static void setSolidAngleThreshold(float angleDeg) -
initialize
public void initialize()- Overrides:
initializein classSceneGraphNode
-
doneLoading
public void doneLoading(com.badlogic.gdx.assets.AssetManager manager) - Overrides:
doneLoadingin classSceneGraphNode
-
computeExtrasolarSystemTransformMatrix
public void computeExtrasolarSystemTransformMatrix() -
initializeTransformMatrix
public void initializeTransformMatrix() -
setPointCloudData
- Overrides:
setPointCloudDatain classVertsObject
-
initOrbitMetadata
public void initOrbitMetadata() -
updateLocal
Description copied from class:SceneGraphNodeUpdates 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:
updateLocalin classSceneGraphNode
-
updateLocalTransform
-
addToRenderLists
Description copied from class:SceneGraphNodeAdds this entity to the necessary render lists after the distance to the camera and the view angle have been determined.- Overrides:
addToRenderListsin classPolyline
-
text
Description copied from interface:I3DTextRenderableReturns the text- Specified by:
textin interfaceI3DTextRenderable- Returns:
- The text
-
textDepthBuffer
public void textDepthBuffer()Description copied from interface:I3DTextRenderableExecutes the blending for the text- Specified by:
textDepthBufferin interfaceI3DTextRenderable
-
isLabel
public boolean isLabel()Description copied from interface:I3DTextRenderableIs it a label or another kind of text?- Specified by:
isLabelin interfaceI3DTextRenderable- Returns:
- Whether this is a label
-
getTextOpacity
public float getTextOpacity()Description copied from interface:I3DTextRenderableGets the text opacity- Specified by:
getTextOpacityin interfaceI3DTextRenderable- Returns:
- Text opacity
-
labelMax
public float labelMax() -
textScale
public float textScale()Description copied from interface:I3DTextRenderableReturns the text scale for the scale varying in the shader- Specified by:
textScalein interfaceI3DTextRenderable- Returns:
- The scale
-
textSize
public float textSize()Description copied from interface:I3DTextRenderableReturns the text size- Specified by:
textSizein interfaceI3DTextRenderable- Returns:
- The text size
-
keplerToCartesian
-
textPosition
Description copied from interface:I3DTextRenderableSets the position of this text in the out vector- Specified by:
textPositionin interfaceI3DTextRenderableout- The out parameter with the result
-
textPosition2
-
renderText
public boolean renderText()Description copied from interface:I3DTextRenderableTells whether the text must be rendered or not for this entity- Specified by:
renderTextin interfaceI3DTextRenderable- Returns:
- True if text must be rendered
-
render
public void render(ExtSpriteBatch batch, ExtShaderProgram shader, FontRenderSystem sys, RenderingContext rc, ICamera camera) Render label- Specified by:
renderin interfaceI3DTextRenderable- Parameters:
batch- The sprite batchshader- The shadersys- The font render systemrc- The render contextcamera- The camera
-
textColour
public float[] textColour()Description copied from interface:I3DTextRenderableReturns an array with the text colour in the fashion [r, g, b, a]- Specified by:
textColourin interfaceI3DTextRenderable- Returns:
- Array with the colour
-
render
- Specified by:
renderin interfaceILineRenderable- Overrides:
renderin classPolyline
-
refreshOrbit
public void refreshOrbit(boolean force) -
setSize
Sets the absolute size of this entity -
setPointsize
-
setPointsize
-
setPointcolor
public void setPointcolor(double[] color) -
getProvider
-
setProvider
-
setOrbit
-
setTransformName
-
setTransformFunction
-
setTransformValues
public void setTransformValues(double[] transformValues) Constructs the transformation matrix from a double array containing the values in a column-major order (first the four values of the first column, then the second, etc.). The double array must have at least 16 elements; the first 16 will be copied. -
setMultiplier
-
setBody
-
setOnlybody
-
setNewmethod
-
setTrail
-
setOrbittrail
-
setNumSamples
-
setModel
Sets the orientation model as a string.- Parameters:
model- The orientation model.
-
getAlpha
public double getAlpha()- Specified by:
getAlphain interfaceIGPUVertsRenderable- Overrides:
getAlphain classVertsObject
-
setVisible
- Specified by:
setVisiblein interfaceIVisibilitySwitch- Overrides:
setVisiblein classSceneGraphNode
-
mustAddToIndex
public boolean mustAddToIndex()Description copied from class:SceneGraphNodeWhether to add this node to the index.- Overrides:
mustAddToIndexin classSceneGraphNode- Returns:
- True if the node needs to be added to the index.
-