VR-Engage  2.2
Loading...
Searching...
No Matches
makVre::DtVortexPhysicalWorld Class Reference

Detailed Description

DtVortexPhysicalWorld handles the initialization, management, and execution of the Vortex physics engine within the simulation. It manages terrain, collision detection, and physics simulation updates.

#include <vortexPhysicalWorld.h>

Inheritance diagram for makVre::DtVortexPhysicalWorld:
[legend]

Public Member Functions

 DtVortexPhysicalWorld (DtSimulationServices *simManager, DtLocalObjectManager *localObjManager, DtCgf *cgf)
 
virtual ~DtVortexPhysicalWorld () override
 
virtual void tick () override
 
Vx::VxSmartPtr< VxSim::VxApplication > vortexApplication ()
 
VxSim::VxSmartInterface< VxContent::Scene > vortexScene ()
 
makVre::DtInitializerconfigInitializer ()
 
makVre::DtCoordinateConvertgeocentricCoordConverter ()
 
virtual void updateCoordinateConverter ()
 
virtual void setUniverse (Vx::VxUniverse *universe)
 
virtual Vx::VxUniverse * getUniverse ()
 
virtual void setPagedTerrainProducer (DtVortexPagedTerrainProducer *producer)
 
virtual DtVortexPagedTerrainProducerpagedTerrainProducer ()
 
virtual void setPagedTerrain (DtVortexPagedTerrainInterface *pagedTerrainInterface)
 
virtual DtVortexPagedTerrainInterfacepagedTerrain ()
 
virtual std::shared_ptr< makVre::DtVortexDynamicTerrainHandlervortexDynamicTerrainHandler ()
 
virtual void setVortexDynamicTerrainHandler (std::shared_ptr< makVre::DtVortexDynamicTerrainHandler > handler)
 
virtual makVre::DtVortexCollisionProxyGeneratorgetCollisionProxyGenerator ()
 
virtual DtLocalObjectManager * localObjectManager ()
 
virtual std::shared_ptr< DtVortexDebugvortexDebug ()
 
virtual std::shared_ptr< DtVreThreadPoolthreadPool ()
 
virtual Vx::VxMaterialTable * getMaterialTable ()
 
bool isDestructingCGF ()
 
double checkDistanceToCoordinateOrigin () const
 
void setCheckDistanceToCoordinateOrigin (double val)
 
bool checkToCoordinateOrigin () const
 
void setCheckToCoordinateOrigin (bool val)
 

Static Public Member Functions

static DtVortexPhysicalWorldinstance ()
 

Protected Member Functions

virtual void updateCoordinateConverterFromGeocentric (const DtVector &worldPos)
 
virtual void updateUniverseSettings (Vx::VxUniverse *univ)
 
virtual void resetVortexApplication ()
 
virtual void runVortexApplication ()
 
virtual void pauseVortexApplication ()
 
virtual void updateVortex (const std::function< bool(void)> func)
 
virtual void updateVortex (VxSim::eApplicationMode targetMode)
 
virtual void initializeVortexApplication ()
 
virtual bool initializeCollisionManager (DtCgf *cgf)
 
virtual void processPreScenarioRewindCallback ()
 
virtual void processPostScenarioRewindCallback ()
 
virtual void processPreLoadScenario ()
 
virtual void processPostLoadScenario ()
 
virtual void processPreLoadTerrain ()
 
virtual void processPostLoadTerrain ()
 
virtual void processPreCloseScenarioCallback ()
 
virtual void processPostCloseScenarioCallback ()
 
virtual void processScenarioRunCallback ()
 
virtual void processScenarioPauseCallback ()
 
virtual void processPostTickInitCallback ()
 
virtual void processCgfAboutToBeDestroyed ()
 
virtual void updateImgui ()
 

Static Protected Member Functions

static void preScenarioRollbackCallback (void *data)
 
static void postScenarioRollbackCallback (void *data)
 
static void preLoadScenarioCallback (DtScenario &scenario, void *data)
 
static void postLoadScenarioCallback (const DtScenario &scenario, void *data)
 
static void preLoadTerrainCallback (const DtFilename &scenario, void *data)
 
static void postLoadTerrainCallback (const DtFilename &terrain, void *data)
 
static void preCloseScenarioCallback (void *data)
 
static void postCloseScenarioCallback (void *data)
 
static void scenarioRunCallback (void *data)
 
static void scenarioPauseCallback (void *data)
 
static void postTickInitCallback (void *data)
 
static void cgfAboutToBeDestroyed (void *data)
 
static void renderImguiCallback (void *args)
 

Protected Attributes

bool myDestructingCGF
 
DtCgf * myCgf
 
makVre::DtVortexCollisionProxyGeneratormyVortexCollisionManager
 
VxSim::VxSmartInterface< VxSim::IMaterialTable > myMaterialTable
 
VxSim::VxSmartInterface< DtVxSimModulemyModule
 
Vx::VxSmartPtr< VxSim::VxExtension > myTerrainExt
 
VxSim::VxSmartInterface< VxContent::Scene > myScene
 
Vx::VxSmartPtr< VxSim::VxApplication > myApplication
 
Vx::VxSmartPtr< VxSim::VxSimulationState > mySimulationState
 
DtVortexPagedTerrainProducermyPagedTerrainProducer
 
DtVortexPagedTerrainInterfacemyPagedTerrainInterface
 
Vx::VxUniverse * myUniverse
 
std::shared_ptr< DtVxPluginManagerListenermyListener
 
std::shared_ptr< DtVreThreadPoolmyThreadPool
 
makVre::DtInitializermyConfigInitializer
 
makVre::DtCoordinateConvert myCoordConverter
 
bool myOverrideCoordinateConverterLocation
 
boost::signals2::connection myFirstObjectCreatedConnection
 
std::shared_ptr< DtVortexDebugmyVortexDebug
 
std::shared_ptr< makVre::DtVortexDynamicTerrainHandlermyDynamicTerrainHandler
 
double myCheckDistanceToCoordinateOrigin
 
bool myCheckToCoordinateOrigin
 

Static Protected Attributes

static DtVortexPhysicalWorldthePhysicalWorld
 

Constructor & Destructor Documentation

◆ DtVortexPhysicalWorld()

makVre::DtVortexPhysicalWorld::DtVortexPhysicalWorld ( DtSimulationServices * simManager,
DtLocalObjectManager * localObjManager,
DtCgf * cgf )
explicit

Constructs a new Vortex physical world.

Parameters
simManagerPointer to the simulation services manager
localObjManagerPointer to the local object manager
cgfPointer to the CGF instance

Referenced by instance().

◆ ~DtVortexPhysicalWorld()

virtual makVre::DtVortexPhysicalWorld::~DtVortexPhysicalWorld ( )
overridevirtual

Virtual destructor.

Member Function Documentation

◆ instance()

static DtVortexPhysicalWorld * makVre::DtVortexPhysicalWorld::instance ( )
static

Gets the singleton instance of the Vortex Physical World.

Returns
Pointer to the DtVortexPhysicalWorld instance

References DtVortexPhysicalWorld().

◆ tick()

virtual void makVre::DtVortexPhysicalWorld::tick ( )
overridevirtual

Main update function for the physics simulation.

Updates the Vortex Application, VortexDebug, VortexCollisionProxyGenerator, and VortexDynamicTerrainHandler components.

◆ vortexApplication()

Vx::VxSmartPtr< VxSim::VxApplication > makVre::DtVortexPhysicalWorld::vortexApplication ( )

Gets the Vortex application instance.

Returns
Smart pointer to the VxApplication

◆ vortexScene()

VxSim::VxSmartInterface< VxContent::Scene > makVre::DtVortexPhysicalWorld::vortexScene ( )

Gets the Vortex scene instance.

Returns
Smart interface to the Scene

◆ configInitializer()

makVre::DtInitializer * makVre::DtVortexPhysicalWorld::configInitializer ( )

Gets the configuration initializer.

Returns
Pointer to the DtInitializer instance

◆ geocentricCoordConverter()

makVre::DtCoordinateConvert * makVre::DtVortexPhysicalWorld::geocentricCoordConverter ( )

Gets the geocentric coordinate converter.

Returns
Pointer to the coordinate converter, NULL if using flat earth/UTM/topographic terrain

◆ updateCoordinateConverter()

virtual void makVre::DtVortexPhysicalWorld::updateCoordinateConverter ( )
virtual

Updates the coordinate converter based on different conditions Called from.

See also
processPostLoadScenario with a list of entities. If there are local, vortex entities loaded: Gets the average position of them all and calls
updateCoordinateConverterFromGeocentric() If there are no entities above, then waits for first vortex entity created and then sets the origin at that location.

◆ setUniverse()

virtual void makVre::DtVortexPhysicalWorld::setUniverse ( Vx::VxUniverse * universe)
virtual

Sets the Vortex universe instance.

Parameters
universePointer to the VxUniverse to set

◆ getUniverse()

virtual Vx::VxUniverse * makVre::DtVortexPhysicalWorld::getUniverse ( )
virtual

Gets the current Vortex universe instance.

Returns
Pointer to the current VxUniverse

◆ setPagedTerrainProducer()

virtual void makVre::DtVortexPhysicalWorld::setPagedTerrainProducer ( DtVortexPagedTerrainProducer * producer)
virtual

Sets the paged terrain producer.

Parameters
producerPointer to the terrain producer instance

◆ pagedTerrainProducer()

virtual DtVortexPagedTerrainProducer * makVre::DtVortexPhysicalWorld::pagedTerrainProducer ( )
virtual

Gets the current paged terrain producer.

Returns
Pointer to the current terrain producer

◆ setPagedTerrain()

virtual void makVre::DtVortexPhysicalWorld::setPagedTerrain ( DtVortexPagedTerrainInterface * pagedTerrainInterface)
virtual

Sets the paged terrain interface.

Parameters
pagedTerrainInterfacePointer to the terrain interface

◆ pagedTerrain()

virtual DtVortexPagedTerrainInterface * makVre::DtVortexPhysicalWorld::pagedTerrain ( )
virtual

Gets the current paged terrain interface.

Returns
Pointer to the current terrain interface

◆ vortexDynamicTerrainHandler()

virtual std::shared_ptr< makVre::DtVortexDynamicTerrainHandler > makVre::DtVortexPhysicalWorld::vortexDynamicTerrainHandler ( )
virtual

Gets the dynamic terrain handler.

Returns
Shared pointer to the terrain handler

◆ setVortexDynamicTerrainHandler()

virtual void makVre::DtVortexPhysicalWorld::setVortexDynamicTerrainHandler ( std::shared_ptr< makVre::DtVortexDynamicTerrainHandler > handler)
virtual

Sets the dynamic terrain handler.

Parameters
handlerShared pointer to the new terrain handler

◆ getCollisionProxyGenerator()

virtual makVre::DtVortexCollisionProxyGenerator * makVre::DtVortexPhysicalWorld::getCollisionProxyGenerator ( )
virtual

Gets the collision proxy generator.

Returns
Pointer to the collision proxy generator
Note
Returns NULL if enableNonVortexToVortexCollisions is false in vortexConfig.lua

◆ localObjectManager()

virtual DtLocalObjectManager * makVre::DtVortexPhysicalWorld::localObjectManager ( )
virtual

Gets the local object manager.

Returns
Pointer to the local object manager

◆ vortexDebug()

virtual std::shared_ptr< DtVortexDebug > makVre::DtVortexPhysicalWorld::vortexDebug ( )
virtual

Gets the debug interface.

Returns
Shared pointer to the debug interface

◆ threadPool()

virtual std::shared_ptr< DtVreThreadPool > makVre::DtVortexPhysicalWorld::threadPool ( )
virtual

Gets the thread pool for paged terrain.

Returns
Shared pointer to the thread pool

◆ getMaterialTable()

virtual Vx::VxMaterialTable * makVre::DtVortexPhysicalWorld::getMaterialTable ( )
virtual

Gets the material table.

Returns
Pointer to the material table

◆ isDestructingCGF()

bool makVre::DtVortexPhysicalWorld::isDestructingCGF ( )

Checks if the CGF is being destroyed.

Returns
true if CGF is in process of destruction, false otherwise

◆ checkDistanceToCoordinateOrigin()

double makVre::DtVortexPhysicalWorld::checkDistanceToCoordinateOrigin ( ) const

Gets the distance to check to the coordinate origin. Distance is in km. Set in the vortexConfig.lua.

Returns
the distance (km)

◆ setCheckDistanceToCoordinateOrigin()

void makVre::DtVortexPhysicalWorld::setCheckDistanceToCoordinateOrigin ( double val)

The distance to check for how the vehicle from the coordinate origin. Distance is in km. Set in the vortexConfig.lua by default.

Parameters
valdistance (km)

◆ checkToCoordinateOrigin()

bool makVre::DtVortexPhysicalWorld::checkToCoordinateOrigin ( ) const

Check for how far we are from the coordinate origin. Purely informational check, provides no simulation impact.

Returns
true if we should do our check

◆ setCheckToCoordinateOrigin()

void makVre::DtVortexPhysicalWorld::setCheckToCoordinateOrigin ( bool val)

Set for Check distance from origin.

Parameters
val

◆ updateCoordinateConverterFromGeocentric()

virtual void makVre::DtVortexPhysicalWorld::updateCoordinateConverterFromGeocentric ( const DtVector & worldPos)
protectedvirtual

Updates the geocentric coordinate converter to a new position Given a new world position, reinitializes the coordinate converter to reference the passed in point as your new 0,0,0 in flat earth coordinates.

Parameters
worldPosThe world location in GeocentricCoordinates

◆ updateUniverseSettings()

virtual void makVre::DtVortexPhysicalWorld::updateUniverseSettings ( Vx::VxUniverse * univ)
protectedvirtual

Updates the physics universe settings.

Parameters
univPointer to the universe to update

◆ resetVortexApplication()

virtual void makVre::DtVortexPhysicalWorld::resetVortexApplication ( )
protectedvirtual

Resets the Vortex application to its initial state.

◆ runVortexApplication()

virtual void makVre::DtVortexPhysicalWorld::runVortexApplication ( )
protectedvirtual

Starts the Vortex application.

◆ pauseVortexApplication()

virtual void makVre::DtVortexPhysicalWorld::pauseVortexApplication ( )
protectedvirtual

Pauses the Vortex application.

◆ updateVortex() [1/2]

virtual void makVre::DtVortexPhysicalWorld::updateVortex ( const std::function< bool(void)> func)
protectedvirtual

Updates Vortex until a condition is met.

Parameters
funcFunction returning bool that determines when to stop updating

◆ updateVortex() [2/2]

virtual void makVre::DtVortexPhysicalWorld::updateVortex ( VxSim::eApplicationMode targetMode)
protectedvirtual

Updates Vortex until a specific application mode is reached.

Parameters
targetModeThe target application mode

◆ initializeVortexApplication()

virtual void makVre::DtVortexPhysicalWorld::initializeVortexApplication ( )
protectedvirtual

Initializes the Vortex application.

◆ initializeCollisionManager()

virtual bool makVre::DtVortexPhysicalWorld::initializeCollisionManager ( DtCgf * cgf)
protectedvirtual

Initializes the collision manager.

Parameters
cgfPointer to the CGF instance
Returns
true if initialization successful, false otherwise

◆ preScenarioRollbackCallback()

static void makVre::DtVortexPhysicalWorld::preScenarioRollbackCallback ( void * data)
staticprotected

Static callback for pre-scenario rollback events.

Parameters
dataPointer to user data (typically the DtVortexPhysicalWorld instance)

◆ processPreScenarioRewindCallback()

virtual void makVre::DtVortexPhysicalWorld::processPreScenarioRewindCallback ( )
protectedvirtual

Processes pre-scenario rewind events.

◆ postScenarioRollbackCallback()

static void makVre::DtVortexPhysicalWorld::postScenarioRollbackCallback ( void * data)
staticprotected

Static callback for post-scenario rollback events.

Parameters
dataPointer to user data (typically the DtVortexPhysicalWorld instance)

◆ processPostScenarioRewindCallback()

virtual void makVre::DtVortexPhysicalWorld::processPostScenarioRewindCallback ( )
protectedvirtual

Processes post-scenario rewind events.

◆ preLoadScenarioCallback()

static void makVre::DtVortexPhysicalWorld::preLoadScenarioCallback ( DtScenario & scenario,
void * data )
staticprotected

Static callback for pre-load scenario events.

Parameters
scenarioReference to the scenario being loaded
dataPointer to user data (typically the DtVortexPhysicalWorld instance)

◆ processPreLoadScenario()

virtual void makVre::DtVortexPhysicalWorld::processPreLoadScenario ( )
protectedvirtual

Processes pre-load scenario events.

◆ postLoadScenarioCallback()

static void makVre::DtVortexPhysicalWorld::postLoadScenarioCallback ( const DtScenario & scenario,
void * data )
staticprotected

Static callback for post-load scenario events.

Parameters
scenarioReference to the loaded scenario
dataPointer to user data (typically the DtVortexPhysicalWorld instance)

◆ processPostLoadScenario()

virtual void makVre::DtVortexPhysicalWorld::processPostLoadScenario ( )
protectedvirtual

Processes post-load scenario events.

◆ preLoadTerrainCallback()

static void makVre::DtVortexPhysicalWorld::preLoadTerrainCallback ( const DtFilename & scenario,
void * data )
staticprotected

Static callback for pre-load terrain events.

Parameters
scenarioFilename of the scenario being loaded
dataPointer to user data (typically the DtVortexPhysicalWorld instance)

◆ processPreLoadTerrain()

virtual void makVre::DtVortexPhysicalWorld::processPreLoadTerrain ( )
protectedvirtual

Processes pre-load terrain events.

◆ postLoadTerrainCallback()

static void makVre::DtVortexPhysicalWorld::postLoadTerrainCallback ( const DtFilename & terrain,
void * data )
staticprotected

Static callback for post-load terrain events.

Parameters
terrainFilename of the loaded terrain
dataPointer to user data (typically the DtVortexPhysicalWorld instance)

◆ processPostLoadTerrain()

virtual void makVre::DtVortexPhysicalWorld::processPostLoadTerrain ( )
protectedvirtual

Processes post-load terrain events.

◆ preCloseScenarioCallback()

static void makVre::DtVortexPhysicalWorld::preCloseScenarioCallback ( void * data)
staticprotected

Static callback for pre-close scenario events.

Parameters
dataPointer to user data (typically the DtVortexPhysicalWorld instance)

◆ processPreCloseScenarioCallback()

virtual void makVre::DtVortexPhysicalWorld::processPreCloseScenarioCallback ( )
protectedvirtual

Processes pre-close scenario events.

◆ postCloseScenarioCallback()

static void makVre::DtVortexPhysicalWorld::postCloseScenarioCallback ( void * data)
staticprotected

Static callback for post-close scenario events.

Parameters
dataPointer to user data (typically the DtVortexPhysicalWorld instance)

◆ processPostCloseScenarioCallback()

virtual void makVre::DtVortexPhysicalWorld::processPostCloseScenarioCallback ( )
protectedvirtual

Processes post-close scenario events.

◆ scenarioRunCallback()

static void makVre::DtVortexPhysicalWorld::scenarioRunCallback ( void * data)
staticprotected

Static callback for scenario run events.

Parameters
dataPointer to user data (typically the DtVortexPhysicalWorld instance)

◆ processScenarioRunCallback()

virtual void makVre::DtVortexPhysicalWorld::processScenarioRunCallback ( )
protectedvirtual

Processes scenario run events.

◆ scenarioPauseCallback()

static void makVre::DtVortexPhysicalWorld::scenarioPauseCallback ( void * data)
staticprotected

Static callback for scenario pause events.

Parameters
dataPointer to user data (typically the DtVortexPhysicalWorld instance)

◆ processScenarioPauseCallback()

virtual void makVre::DtVortexPhysicalWorld::processScenarioPauseCallback ( )
protectedvirtual

Processes scenario pause events.

◆ postTickInitCallback()

static void makVre::DtVortexPhysicalWorld::postTickInitCallback ( void * data)
staticprotected

Static callback for post-tick initialization events.

Parameters
dataPointer to user data (typically the DtVortexPhysicalWorld instance)

◆ processPostTickInitCallback()

virtual void makVre::DtVortexPhysicalWorld::processPostTickInitCallback ( )
protectedvirtual

Processes post-tick initialization events.

◆ cgfAboutToBeDestroyed()

static void makVre::DtVortexPhysicalWorld::cgfAboutToBeDestroyed ( void * data)
staticprotected

Static callback for CGF destruction events.

Parameters
dataPointer to user data (typically the DtVortexPhysicalWorld instance)

◆ processCgfAboutToBeDestroyed()

virtual void makVre::DtVortexPhysicalWorld::processCgfAboutToBeDestroyed ( )
protectedvirtual

Processes CGF destruction events.

◆ renderImguiCallback()

static void makVre::DtVortexPhysicalWorld::renderImguiCallback ( void * args)
staticprotected

Static callback for ImGui rendering events.

Parameters
argsPointer to arguments for the callback

◆ updateImgui()

virtual void makVre::DtVortexPhysicalWorld::updateImgui ( )
protectedvirtual

Updates ImGui interface elements.

Member Data Documentation

◆ myDestructingCGF

bool makVre::DtVortexPhysicalWorld::myDestructingCGF
protected

Flag indicating if CGF is being destroyed.

◆ thePhysicalWorld

DtVortexPhysicalWorld* makVre::DtVortexPhysicalWorld::thePhysicalWorld
staticprotected

Singleton instance of the physical world.

◆ myCgf

DtCgf* makVre::DtVortexPhysicalWorld::myCgf
protected

Pointer to the CGF instance.

◆ myVortexCollisionManager

makVre::DtVortexCollisionProxyGenerator* makVre::DtVortexPhysicalWorld::myVortexCollisionManager
protected

Collision proxy generator for handling collisions.

◆ myMaterialTable

VxSim::VxSmartInterface<VxSim::IMaterialTable> makVre::DtVortexPhysicalWorld::myMaterialTable
protected

Material table for physics interactions.

◆ myModule

VxSim::VxSmartInterface<DtVxSimModule> makVre::DtVortexPhysicalWorld::myModule
protected

Vortex simulation module.

◆ myTerrainExt

Vx::VxSmartPtr<VxSim::VxExtension> makVre::DtVortexPhysicalWorld::myTerrainExt
protected

Terrain extension for Vortex.

◆ myScene

VxSim::VxSmartInterface<VxContent::Scene> makVre::DtVortexPhysicalWorld::myScene
protected

Vortex scene interface.

◆ myApplication

Vx::VxSmartPtr<VxSim::VxApplication> makVre::DtVortexPhysicalWorld::myApplication
protected

Vortex application instance.

◆ mySimulationState

Vx::VxSmartPtr<VxSim::VxSimulationState> makVre::DtVortexPhysicalWorld::mySimulationState
protected

Simulation state for Vortex.

◆ myPagedTerrainProducer

DtVortexPagedTerrainProducer* makVre::DtVortexPhysicalWorld::myPagedTerrainProducer
protected

Producer for paged terrain.

◆ myPagedTerrainInterface

DtVortexPagedTerrainInterface* makVre::DtVortexPhysicalWorld::myPagedTerrainInterface
protected

Interface for paged terrain.

◆ myUniverse

Vx::VxUniverse* makVre::DtVortexPhysicalWorld::myUniverse
protected

Vortex universe instance.

◆ myListener

std::shared_ptr<DtVxPluginManagerListener> makVre::DtVortexPhysicalWorld::myListener
protected

Plugin manager listener.

◆ myThreadPool

std::shared_ptr<DtVreThreadPool> makVre::DtVortexPhysicalWorld::myThreadPool
protected

Thread pool for parallel processing.

◆ myConfigInitializer

makVre::DtInitializer* makVre::DtVortexPhysicalWorld::myConfigInitializer
protected

Configuration initializer.

◆ myCoordConverter

makVre::DtCoordinateConvert makVre::DtVortexPhysicalWorld::myCoordConverter
protected

Coordinate converter for transformations.

◆ myOverrideCoordinateConverterLocation

bool makVre::DtVortexPhysicalWorld::myOverrideCoordinateConverterLocation
protected

◆ myFirstObjectCreatedConnection

boost::signals2::connection makVre::DtVortexPhysicalWorld::myFirstObjectCreatedConnection
protected

◆ myVortexDebug

std::shared_ptr<DtVortexDebug> makVre::DtVortexPhysicalWorld::myVortexDebug
protected

Debug interface for Vortex.

◆ myDynamicTerrainHandler

std::shared_ptr<makVre::DtVortexDynamicTerrainHandler> makVre::DtVortexPhysicalWorld::myDynamicTerrainHandler
protected

Handler for dynamic terrain.

◆ myCheckDistanceToCoordinateOrigin

double makVre::DtVortexPhysicalWorld::myCheckDistanceToCoordinateOrigin
protected

◆ myCheckToCoordinateOrigin

bool makVre::DtVortexPhysicalWorld::myCheckToCoordinateOrigin
protected

The documentation for this class was generated from the following file: