|
override List< int > | Init () |
| Initialize the objects for this display controller. This is called by GSController init as part of its Start()
|
|
override Vector3 | MapToScene (Vector3 rWorldAbs, double time) |
| Intended to only be called for the body being launched!
|
|
void | ActiveSet (bool value) |
| Change the active status.
|
|
void | DisplayBodyRemoveByBodyId (int id) |
| Remove all GSDisplayObjects with the given bodyId.
|
|
delegate void | DisplayInScene (GECore ge, MapToSceneFn mapToScene, double timeWorld, bool alwaysUpdate=false, bool maintainCoRo=false) |
|
void | DisplayObjectAdd (GSDisplayObject gdo) |
| Add a GSDisplayObject (typically a GSDisplayBody or GSDisplayOrbit). Different display objects may have different update methods or choose to register custom display functions so they are asked to "add themselves" via AddToSceneDisplay(). As part of this they must call RegisterDisplayObject() [which is where the "book-keeping" is done.].
|
|
void | DisplayObjectRemove (GSDisplayObject gdo) |
| Remove a GSDisplayObject (e.g. GSDisplayBody, GSDisplayOrbit etc.)
|
|
virtual void | DisplayUpdate (GECore ge, double elapsedWorldTime) |
| Main update loop for display of bodies and orbits in the scene. (Internal)
|
|
string | DumpAll () |
|
delegate Vector3 | MapToSceneFn (Vector3 rWorld, double time=-1) |
|
void | ParticleSetup (double dt, double timeStart, GBUnits.GEScaler geScaler) |
|
void | ParticlesUpdate (double lenPhysToWorld) |
|
List< GSParticles > | ParticleSystems () |
|
int | RegisterDisplayObject (GSDisplayObject gdo, int bodyId, Transform transform=null, DisplayInScene displayInScene=null, bool trajectory=false, LineRenderer trajLine=null) |
|
void | UpdateDisplayObjectBody (long displayId, int bodyId) |
| Update the internal state of GSDisplayObject. Can be used to designate a new bodyId to track.
|
|
Display objects and trajectories on XY plot of ascent/launch path.
This display is focused on the ascent of a single GSBody with respect to a planet in a given orbital plane.
NOTE: to have the usual Cartesian X, Y plane need to have the camera located at -Z looking toward the origin, since Unity has a LH coordinate system.
override void GravityEngine2.GSLaunchDisplay.TrajectoryUpdate |
( |
GECore | geTrajectory | ) |
|
|
protectedvirtual |
In a map display need to thread the trajectory under the map when we wrap off the edge (either horizontally or vertically). In this case we need to add more than one point for a given traj. point, hence the need to override the entire traj. update.
Since this is the only use case, C&P the common code for now.
- Parameters
-
Reimplemented from GravityEngine2.GSDisplay.