Gravity Engine 12.0
Unity Asset for Gravity
Loading...
Searching...
No Matches
Class List
Here are the classes, structs, unions and interfaces with brief descriptions:
[detail level 12]
 NUnityEngine
 CAsteroidData
 CAsteroidUnnumbered
 CAZTripleIntegratorSpecial purpose integrator for precise integration of the three body problem
 CBiellipticXferBi-elliptic Transfer
 CBinaryOrbitBinary Orbit
 CBinaryPairBinary Pair
 CBrouckeA
 CBrouckeR
 CChoreos
 CCircularizeXfer
 CClearCommandDump GE state to console
 CClosestApproachMonitor the distance between two NBody objects and trigger when the closest approach occurs. The trigger event is communicated to an array of listener objects that implement the OnClosestApproachTrigger defined in the IClosestApproach interface
 CCometData
 CCustomForceCustom force. Sample code to show how to make a custom force. To use this set the GE force delegate to custom and attach this script to the object holding the GravityEngine
 CDumpCommandDump GE state to console
 CDustBallDust ball. Create particles in a sphere with a given initial velocity
 CDustBoxDust box. Create particles in a 3D rectangle with a specified initial velocity
 CDustOrbitCreate a system of particles in an orbit specified by an OrbitUniversal attached to the same object
 CDustRingDust ring. Create a ring of particles in orbit around an NBody mass. Allows full control over the orbital attributes of the ring particles
 CEarthAtmosphereComputes the acceleration due to drag in the Earth's atmosphere for a given height and velocity
 CEarthImpact
 CEarthOrbitUtils
 CEarthRocketCombine the acceleration from EarthAtmosphere and MultistageRocket
 CEllipseBaseDEPREACTED: Please use OrbitUniversal Ellipse base
 CExplosionFromNBodyExplosion from N body. Generates the particle positions/velocities for an "ejection cone" of debris when NBody objects collide
 CFastForwardCommandFast forward by a specified amount. Runs a full Nbody sim to get to that time
 CFigureEights
 CFixedObjectFixed object
 CForceChooserForce chooser. A Factory pattern to select a force for integrators that support force delegates
 CForceDataAbstract class to hold information for a force delegate for a given NBody
 CForceR
 CForceR2
 CGECOEShell for an editor script that display the elements of the orbit in the inspector using OrbitUtils.OrbitElements and RVtoCOE
 CGEConsoleCommand line console for interacting with GE and its objects during game exection. (Kudos to Jonathan Blow for sharing his developement of this feature in JAI on You Tube, from which the idea comes)
 CGEConst
 CGEDistance
 CGEExternalAcceleration
 CGEGraphUtility singleton to allow scripts to update a quantity and see it displayed as a line graph via a secondary camera
 CGEManeuuverDisplayDummy component. It's editor script displays a list of the pending manuevers when GE is running
 CGEMapToSceneInterface
 CGEMath
 CGEMultiplayerInterface
 CGEOrbitCompareDebug component to compute the difference between the orbital elements of two objects with OrbitPredictor components and display them in the inspector
 CGERewindMgrSupport for rewind in GE
 CGESGP4LogScript to display information from the associated SGP4 Orbit in the inspector during development
 CGETrigger
 CGETriggerMgrHandle any GETrigger requests that have been registered with GE
 CGEUtils
 CGoCommandDump GE state to console
 CGravityEngineGravityEngine Primary controller of Nbody physics evolution with selectable integration algorithms. Singleton
 CGravityParticlesEvolve particles in the gravitation field computed by the GravityEngine
 CGravityScalerHandles scaling between: GE: internal values used in the physics integrators Scene: values in Unity units (raw Unity position values and game time seconds) World: The chosen units for values in inspector entries etc. (e.g. AU, km, m) SI: Metric system values
 CGravityStateGravity state. Hold "most" of the information for gravitational evolution of the system
 CHenon
 CHermiteIntegrator
 CHohmannGeneralHohmann transfer or rendezvous between any two circular orbits. Handles diffences in radius, inclination and RAAN (Omega)
 CHohmannXfer
 CIClosestApproachInterface defining the callback for listeners in the ClosestApproach script
 CIFixedOrbitInterface defining the fixed motion of an NBody object
 CIForceDelegate
 CIGEOrbitTester
 CIGravityParticlesInitInterface defining methods to be implemented to define particle positions and velocities for GravityParticles
 CImpactTriggerCallback for EarthAtmosphere external acceleration script to register an impact with the surface of the Earth
 CINbodyInitInterface defining method to initialize an NBody object prior to evolution beginning. Called by GravityEngine
 CINBodyIntegratorCommon interface for numerical NBody integration. Used by the GravityEngine
 CInfoCommandShow all possible position/velocity representations of an Nbody object
 CInverseR
 CInverseR3
 CIOrbitPositions
 CIOrbitScalable
 CIPatchedConicChangeInterface that defines a callback to be run when there is a change of the NBody providing the most force on an object. See PatchedConicSOI for details
 CISolutionSet
 CITrajectoryListener
 CJ2ForceData
 CJ2GravityForce model for the first order approximation for a non-spherical gravitational source
 CJPLEphemerisParserUtility function to parse JPL Ephemeris data of the form: 2451544.500000000 = A.D. 2000-Jan-01 00:00:00.0000 TDB
 CKeplerSequenceKepler elements maintains a time ordered list of OrbitUniversal segments. This allows a seqence of orbits around different bodies to be specified. For example, a free return trajectory around a moon would have: ellipse around Earth, hyperbola around moon, ellipse around Earth as three segements. By putting everything "on-rails" the scene can jump in time to any value requested without running NBody calculations for all the intermediate positions
 CLagrange
 CLagrangePointPlace a game object or initialize an NBody at the specified Lagrange point with the indicated offset from the Lagrange point
 CLambertBattin
 CLambertUniversalCalculate the universal Lambert transfer. This algorithm allows the transfer to be elliptic or hyperbolic as necessary to meet the designated transfer time. The transfer code can be used to determine the minimum energy transfer between the desired points/orbits - in this case the time of transfer is not specified. Additional API calls can be used to request a specific transfer time. It is frquently useful to obtain the most efficient transfer time and then use this as a baseline from which to investigate the dV cost of faster transfers
 CLeapfrogIntegrator
 CLeastSquaresFitRoutines to do a linear least-squares fit
 CLunarCourseCorrection
 CLunarFreeReturn
 CManeuverManuever. Holds a future course change for the spaceship. Will be triggered based on world time
 CManeuverMgrManeuver Manager Handles the GE delegation of maneuver lists for NBody objects in the GE workflow
 CManeuverRendererShow the maneuvers as 3D on screen vectors
 CMatrix3Basic 3x3 Matrix manipulation code
 CMultiStageEngine
 CNBodyN body
 CNBodyCollisionN body collision. Script that is attached to NBody models (i.e. the mesh model that is a child of an NBody object) to handle collisions. Allows a choice of absorb, bounce or explode and adjusts physics as required to conserve momentum
 CNewtonForceNewton force. This is not generally used - since Netwonian gravity is the more efficient default force built in to the integrators
 CNUtils
 COneStageEngine
 COrbitDataOrbit data. Hold the traditional orbit parameters for an elliptic/hyperbolic orbit
 COrbitEllipseDEPREACTED: Please use OrbitUniversal Calculate the correct initial conditions for a specified elliptical orbit around a designated body OR moves the object in a fixed ellipse determined by Kepler's equation
 COrbitHyperDEPREACTED: Please use OrbitUniversal Class used to handle the hyperbolic orbital parameters and draw the orbit path in the editor using Gizmos
 COrbitPointOrbitPoint places an object at a specified location on the orbit. The location can be specified in various ways according to the PointType enum
 COrbitPredictorOrbit predictor. An in-scene object that will determine the future orbit based on either: the current position and velocity current position and velocity from script position and velocity from script
 COrbitPropagatorOrbitPropagator provides a mechanism to initialize an orbit and then determine the position and velocity at a future time
 COrbitRendererOrbit renderer. Create the positions for a parents Orbit script (OrbitEllipse or OrbitHyper) and create the positions for the attached LineRenderer. (Use parent since a Line Renderer wants to be on a gameobject of its own)
 COrbitSegmentOrbit Segment. An in-scene object that will determine the future orbit based on the current velocity and show a segment of the orbit between the body and the to position. The short or long way between the positions can be specified (in the case of an ellipse)
 COrbitSimpleDecayOrbit simple decay. This script causes a simple decay of a body in orbit by applying a small decay factor to the velocity on each frame
 COrbitTransferOrbit transfer. Base class for all orbit transfers
 COrbitUniversalA generic double precision orbit class. Can be used in place of OrbitEllipse and OrbitHyper
 COrbitUniversalSOIChangeHandle the change of centerbody when an object on rails enters/leaves a sphere of influence (SOI)
 COrbitUtils
 CPatchedConicSOIDetermine the location of the sphere of influence of body2 with respect to body1. Monitor the position and trigger OnNewInfluencer when the spaceship moves across the sphere of influence boundary
 CPatchedConicXfer
 CPauseCommandDump GE state to console
 CPKepler
 CPlanetData
 CPolynomialSolver
 CRandomPlanetsRandom planets. Create a random planets that will be in orbit around the NBody that this object is a component of
 CRelativeMotionRelative Motion for orbital transfers and rendezvous. The relative motion formalism describes the motion of the ship with repect to the target in a co-rotating coordinate frame in which the target is stationary. It is assumed that the target is in a circular orbit and that the ship is in a "nearby" orbit. The closer the ship and target orbit, the better the approximation to actual motion and computation of rendezvous maneuvers
 CReportAngleDebug code
 CRocketEngineRocket Engine Interface Used to update acceleration in the massless body engine on a per-integration step basis
 CSecantRootFindSecant root find method
 CSelectiveForceBaseBase class for a selective (per-object) force that allows the force to be changed depending on which two objects are interacting
 CSelectiveForceTester
 CSelectiveNewton
 CSetTimeCommand
 CSingleStepCommandDump GE state to console
 CSolarBodySolar body. A "data container" delegate used to hold information about a Solar System body. This is a collection of orbital parameters and some additional facts (mass, radius) that is useful for scaling and configuring the solar system
 CSolarSystemSolar system. This component is attached to a game object that is the Sun. It then manages the children of the Sun allowing editing and global scaling of planets, asteroids and comets
 CSolarUtilsSolar utils. Utility functions for determining planet/comet positions
 CSolutionServerProvide known three-body solutions
 CThreeBodySolutionThree body solution
 CTimeZoomCommandDump GE state to console
 CTrajectory
 CTrajectoryDataTrajectory data. Class to hold points in a trajectory in "sorted" order. Each point contains a position, velocity and time
 CTrajectoryInterceptsTrajectory intercepts. Given two trajectories that have recorded data, determine the points at which they cross in space. There are two types: intercept - the paths cross at the same time, the spaceship intercepts the target and depending on deltaV may rendezvoud match - the paths cross but at different times. The spaceship can choose to match the path of the target (with appropriate deltaV) but the target is not at the match point
 CTransferCalcCalculate the transfer options from one body to a target body given the gravitational field of a central mass
 CTriggerAngleTargetingDetermine the burn required for a specific trigger angle for rendezvous
 CTwoLineElementSetParserUtility function to parse a two line element set from https://www.celestrak.com/NORAD/elements/ for Earth satellite data
 CXZPlaneClass to adjust from Unity world with orbit in XZ plane to the physics world where orbits are in XY plane. z y ^ ^ | /y | /z | / ==> | / | / | / |/ |/ +-------—> x +--------—> x