Package gaiasky.scenegraph
Class LightBeam
java.lang.Object
gaiasky.scenegraph.SceneGraphNode
gaiasky.scenegraph.CelestialBody
gaiasky.scenegraph.ModelBody
gaiasky.scenegraph.LightBeam
- All Implemented Interfaces:
com.badlogic.gdx.utils.Disposable
,I3DTextRenderable
,IModelRenderable
,IQuadRenderable
,IRenderable
,IFocus
,IStarContainer
,IVisibilitySwitch
,IPosition
public class LightBeam extends ModelBody
-
Field Summary
Fields Modifier and Type Field Description protected static double
TH_ANGLE_NONE
protected static double
TH_ANGLE_POINT
protected static double
TH_ANGLE_QUAD
Fields inherited from class gaiasky.scenegraph.ModelBody
fadeOpacity, inverseRefPlaneTransform, locThOverFactor, locVaMultiplier, mc, refPlane, refPlaneTransform, shadow, shadowMapValues, sizeScaleFactor, transformations
Fields inherited from class gaiasky.scenegraph.CelestialBody
absmag, appmag, ccPale, ccTransit, colorbv, compalpha, coordinatesTimeOverflow, rc, TH_OVER_FACTOR, wikiname
Fields inherited from class gaiasky.scenegraph.SceneGraphNode
aux3b1, aux3b2, aux3b3, aux3b4, aux3d1, aux3d2, aux3d3, aux3d4, aux3f1, aux3f2, aux3f3, aux3f4, cc, children, computed, coordinates, copy, ct, distToCamera, id, lastStateChangeTimeMs, localTransform, namekey, names, numChildren, octant, octantId, opacity, orientation, parent, parentkey, parentName, pos, posSph, ROOT_NAME, sg, size, translation, viewAngle, viewAngleApparent, visible
-
Constructor Summary
Constructors Constructor Description LightBeam()
-
Method Summary
Modifier and Type Method Description protected void
addToRenderLists(ICamera camera)
Adds this entity to the necessary render lists after the distance to the camera and the view angle have been determined.float
getFuzzyRenderSize(ICamera camera)
protected float
getThOverFactorScl()
protected float
getViewAnglePow()
void
initialize()
protected float
labelFactor()
protected float
labelMax()
void
render(IntModelBatch modelBatch, float alpha, double t, RenderingContext rc)
Model renderingvoid
setAngle(java.lang.Double angle)
void
setRotationaxis(double[] rotationaxis)
void
setToLocalTransform(float sizeFactor, com.badlogic.gdx.math.Matrix4 localTransform, boolean forceUpdate)
Sets the local transform of this satellitevoid
setTranslation(double[] translation)
double
THRESHOLD_NONE()
radius/distance limit for rendering at all.double
THRESHOLD_POINT()
Angle limit for rendering as point.double
THRESHOLD_QUAD()
radius/distance limit for rendering as shader.protected void
updateLocalTransform()
Update the local transform with the transform and the rotations/scales necessary.void
updateLocalValues(ITimeFrameProvider time, ICamera camera)
This function updates all the local values before the localTransform is updated.Methods inherited from class gaiasky.scenegraph.ModelBody
addHit, addHit, dispose, doneLoading, getHeight, getHeight, getHeight, getHeightScale, getInnerRad, getPositionAboveSurface, getRadius, getSize, getThOverFactor, isShadow, labelSizeConcrete, prepareShadowEnvironment, render, render, renderTessellated, setLocthoverfactor, setLocvamultiplier, setModel, setRefplane, setShadowvalues, setSizescalefactor, setToLocalTransform, setTransformations, textScale, updateLocal
Methods inherited from class gaiasky.scenegraph.CelestialBody
addFocusableObjects, checkClickDistance, checkHitCondition, computeViewAngle, getAbsmag, getAppmag, getCandidateId, getCandidateName, getCandidateViewAngleApparent, getClosestAbsolutePos, getClosestDistToCamera, getClosestName, getFocus, getOrientationQuaternion, getPmX, getPmY, getPmZ, getRotationComponent, getSimpleCopy, getTextOpacity, getViewAngle, getWikiname, hasAtmosphere, isActive, isCoordinatesTimeOverflow, isLabel, isStar, isValidPosition, makeFocus, render, renderText, setAbsmag, setAltname, setAppmag, setColor2Data, setColorbv, setMag, setRotation, setSize, setWikiname, text, textColour, textDepthBuffer, textPosition, textSize
Methods inherited from class gaiasky.scenegraph.SceneGraphNode
add, add, addChild, addChild, addName, addNodes, addToIndex, addToRender, computeFuturePosition, getAbsoluteOrientation, getAbsolutePosition, getAbsolutePosition, getAggregatedChildren, getAlpha, getChildByName, getChildByNameAndType, getChildrenByComponentType, getChildrenByType, getColor, getComponentType, getCt, getDelta, getDescription, getDistToCamera, getFirstStarAncestor, getId, getLineCopy, getName, getNames, getNext, getNode, getNode, getOctant, getOpacity, getOrientation, getPos, getPosition, getPosition, getPosSph, getPredictedPosition, getRoot, getSceneGraphDepth, getStarCount, getUnrotatedPos, getVelocity, getViewAngleApparent, getVisibilityOpacityFactor, hasCt, hasName, hasName, insert, insert, isCopy, isInRender, isInRender, isVisibilityOn, isVisible, isVisible, isVisibleGroup, msSinceStateChange, mustAddToIndex, mustUpdatePosition, namesConcat, removeChild, removeFromIndex, removeFromRender, render2DLabel, render2DLabel, render2DLabel, render2DLabel, render3DLabel, render3DLabel, returnToPool, setColor, setColor, setComputedFlag, setCoordinates, setCt, setCt, setDescription, setId, setLabelcolor, setLabelcolor, setName, setNamekey, setNames, setParent, setParentkey, setSize, setUp, setVisible, setVisibleGroup, shouldRender, toString, update, update, updateNames, updateNamesRec
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface gaiasky.scenegraph.IFocus
getAbsolutePosition, getAbsolutePosition, getAlpha, getColor, getCt, getDelta, getDistToCamera, getFirstStarAncestor, getId, getName, getNames, getNext, getOctant, getOrientation, getPos, getPosSph, getPredictedPosition, getSceneGraphDepth, getViewAngleApparent, hasName, hasName, isCopy
Methods inherited from interface gaiasky.render.IRenderable
getComponentType, getDistToCamera, getOpacity
-
Field Details
-
TH_ANGLE_NONE
protected static final double TH_ANGLE_NONE -
TH_ANGLE_POINT
protected static final double TH_ANGLE_POINT -
TH_ANGLE_QUAD
protected static final double TH_ANGLE_QUAD
-
-
Constructor Details
-
LightBeam
public LightBeam()
-
-
Method Details
-
THRESHOLD_NONE
public double THRESHOLD_NONE()Description copied from class:CelestialBody
radius/distance limit for rendering at all. If angle is smaller than this quantity, no rendering happens.- Specified by:
THRESHOLD_NONE
in classCelestialBody
-
THRESHOLD_POINT
public double THRESHOLD_POINT()Description copied from class:ModelBody
Angle limit for rendering as point. If angle is any bigger, we render with shader.- Overrides:
THRESHOLD_POINT
in classModelBody
-
THRESHOLD_QUAD
public double THRESHOLD_QUAD()Description copied from class:CelestialBody
radius/distance limit for rendering as shader. If angle is any bigger, we render as a model.- Specified by:
THRESHOLD_QUAD
in classCelestialBody
-
initialize
public void initialize()- Overrides:
initialize
in classModelBody
-
updateLocalValues
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 classSceneGraphNode
-
updateLocalTransform
protected void updateLocalTransform()Description copied from class:ModelBody
Update the local transform with the transform and the rotations/scales necessary. Override if your model contains more than just the position and size.- Overrides:
updateLocalTransform
in classModelBody
-
setToLocalTransform
public void setToLocalTransform(float sizeFactor, com.badlogic.gdx.math.Matrix4 localTransform, boolean forceUpdate)Sets the local transform of this satellite- Overrides:
setToLocalTransform
in classModelBody
-
render
Description copied from class:ModelBody
Model rendering- Specified by:
render
in interfaceIModelRenderable
- Overrides:
render
in classModelBody
-
addToRenderLists
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 classModelBody
-
labelFactor
protected float labelFactor()- Specified by:
labelFactor
in classCelestialBody
-
labelMax
protected float labelMax() -
getViewAnglePow
protected float getViewAnglePow()- Overrides:
getViewAnglePow
in classModelBody
-
getThOverFactorScl
protected float getThOverFactorScl()- Overrides:
getThOverFactorScl
in classModelBody
-
getFuzzyRenderSize
- Overrides:
getFuzzyRenderSize
in classModelBody
-
setRotationaxis
public void setRotationaxis(double[] rotationaxis) -
setTranslation
public void setTranslation(double[] translation) -
setAngle
public void setAngle(java.lang.Double angle)
-