|
AGX Dynamics 2.41.2.0
|
Simulation is a class that bridges the collision space agxCollide::Space and the dynamic simulation system agx::DynamicsSystem. More...
#include <Simulation.h>
Inheritance diagram for agxSDK::Simulation:Public Types | |
| enum | CleanupSelectionMask { STEP_LISTENERS = EventManager::STEP_LISTENERS , CONTACT_LISTENERS = EventManager::CONTACT_LISTENERS , GUI_LISTENERS = EventManager::GUI_LISTENERS , LISTENERS = EventManager::LISTENERS , SYSTEM = 0x200 , SPACE = 0x400 , MATERIALS = 0x800 , ASSEMBLIES = 0x1000 , PARTICLE_SYSTEMS = 0x2000 , CONTACT_DATA = 0x4000 , PLOTSYSTEM = 0x8000 , CLEANUP_ALL = LISTENERS | SYSTEM | SPACE | MATERIALS | ASSEMBLIES | PARTICLE_SYSTEMS | CONTACT_DATA | PLOTSYSTEM } |
| Specification of what should be cleaned up from a simulation during a call to the cleanup() method. More... | |
| typedef agx::Event2< Simulation *, agx::Constraint * > | ConstraintEvent |
| typedef agx::Event2< Simulation *, agx::ContactMaterial * > | ContactMaterialEvent |
| typedef agx::Event2< Simulation *, agxCollide::Geometry * > | GeometryEvent |
| typedef agx::Event2< Simulation *, agx::Journal * > | JournalAttachEvent |
| typedef agx::Event2< Simulation *, agx::Material * > | MaterialEvent |
| enum | ReadSelectionMask { READ_NONE = 0x0 , READ_TIMESTEP = 0x1 , READ_TIMESTAMP = 0x2 , READ_GRAVITY = 0x4 , READ_SOLVER = 0x8 , READ_ALL = READ_TIMESTEP + READ_TIMESTAMP + READ_GRAVITY + READ_SOLVER , READ_DEFAULT = READ_TIMESTEP + READ_GRAVITY + READ_SOLVER } |
| Enum for specifying some additional, part of a simulation that can be restored from a serialization. More... | |
| typedef agx::Event2< Simulation *, agx::RigidBody * > | RigidBodyEvent |
Public Types inherited from agx::Component | |
| typedef Event2< Component *, Object * > | ObjectEvent |
| Event when adding removing child objects. | |
| typedef Callback1< Object * > | TraverseCallback |
Public Types inherited from agx::Object | |
| typedef agx::observer_ptr< const Event > | EventConstObserver |
| typedef agx::ref_ptr< const Event > | EventConstRef |
| typedef agx::observer_ptr< Event > | EventObserver |
| typedef agx::Vector< EventObserver > | EventObserverVector |
| typedef agx::VectorPOD< Event * > | EventPtrVector |
| typedef agx::ref_ptr< Event > | EventRef |
| typedef agx::Vector< EventRef > | EventRefVector |
Public Member Functions | |
| Simulation () | |
| Default constructor This constructor CAN Throw a std::runtime_exception if configuration file is broken/invalid. | |
| Simulation (agx::Device *device) | |
| Special constructor which will associate the Simulation to a specified device. | |
| bool | add (agx::Component *subComponent) |
| Add a sub component to the Simulation. | |
| bool | add (agx::Constraint *constraint) |
| Add a constraint to the simulation. | |
| bool | add (agx::ContactMaterial *material) |
| Add an explicit contact material to the simulation. | |
| bool | add (agx::Emitter *emitter, bool addGeometries=true) |
| Add an emitter to the Simulation. | |
| bool | add (agx::Interaction *interaction) |
| Add an Interaction to the Simulation. | |
| bool | add (agx::Material *material) |
| Add a material to the simulation. | |
| bool | add (agx::MergedBody *mergedBody) |
| Add a merged body to this simulation. | |
| bool | add (agx::ObserverFrame *observerFrame) |
| Add a ObserverFrame to the Simulation. | |
| bool | add (agx::ParticleContactSensor *sensor) |
| Add a particle contact sensor to the Simulation. | |
| bool | add (agx::ParticleSystem *particleSystem) |
| Add a particle system to the simulation. | |
| bool | add (agx::RigidBody *body, bool addGeometries=true) |
| bool | add (agxCollide::Geometry *geometry) |
| bool | add (agxControl::Action *action) |
| Register an action to this simulation. | |
| bool | add (agxControl::Operation *operation) |
| Register an operation to this simulation. | |
| bool | add (agxSDK::Assembly *assembly, bool addAllEntries=true) |
| Add an assembly to the simulation including all its parts. | |
| bool | add (agxSDK::EventListener *listener, int priority=EventManager::DEFAULT_PRIORITY) |
| Add an event listener The listener will get a call to its addNotification method if adding was successful. | |
| bool | add (agxSDK::SimulationParameter *parameter) |
| Add a parameter to the simulation configuration interface. | |
| bool | add (agxSDK::TerrainInstance *terrain) |
| Add terrain (agxTerrain::Terrain) instance to this simulation. | |
| bool | add (agxSDK::TerrainToolInstance *toolInstance) |
| Add a terrain tool instance to this simulation. | |
| bool | add (agxStream::Serializable *object) |
| Add an object as a serializable object. | |
| bool | addEventListener (agxSDK::EventListener *listener, int priority=EventManager::DEFAULT_PRIORITY) |
| Add an event listener The listener will get a call to its addNotification method if adding was successful. | |
| bool | addRestoreListener (agxStream::RestoreListener *listener) |
| Add a restore listener to the Simulation. | |
| void | addSolveModel (agx::SolveModel *model) |
| bool | allowCreateParticles () const |
| bool | breakStepTo () |
| Break an initiated stepTo() after the current simulation step. | |
| void | cleanup (agx::UInt selection=CLEANUP_ALL, bool fast=false) |
| This method will remove/cleanup selected parts of the simulation. | |
| void | clearContactData () |
| Clears contact data in the simulation. | |
| void | commit (agxSDK::SimulationProxy *simulationProxy) |
| Internal method. | |
| bool | contains (const agx::Component *object) const |
| Is the object contained in the simulation? | |
| bool | contains (const agxSDK::TerrainInstance *terrain) const |
| Is the terrain contained in the simulation? | |
| bool | contains (const agxSDK::TerrainToolInstance *toolInstance) const |
| Is the terrain tool instance contained in the simulation? | |
| void | createRenderTask () |
| bool | disableThreadTimeline (const agx::String &format="chrome") |
| Stops recording timeline data and exports gathered data to disk. | |
| void | dumpMemoryUsage (const agx::String &filePath="TaskTimers.xml") |
| Print current agxData buffer allocations to a file. | |
| void | dumpTaskTimers (const agx::String &filePath="BufferAllocations.xml") |
| Print current task performance timers to a file. | |
| bool | enableThreadTimeline (const agx::String &sessionName="", const agx::String &journalName="Profiling.agxJournal") |
| Record profiling information from this simulation and store it in a journal. | |
| void | garbageCollect () |
| Use with caution! | |
| agxControl::ActionManager * | getActionManager () |
| Gets the action manager. | |
| const AssemblyHash & | getAssemblies () const |
| agxSDK::Assembly * | getAssembly (const agx::Name &name) |
| Find (linear search) and return named Assembly. | |
| const agxSDK::Assembly * | getAssembly (const agx::Name &name) const |
| Find (linear search) and return named Assembly. | |
| agxSDK::Assembly * | getAssembly (const agx::Uuid &uuid) |
| Find (linear search) and return an Assembly matching the given uuid. | |
| const agxSDK::Assembly * | getAssembly (const agx::Uuid &uuid) const |
| Find (linear search) and return an Assembly matching the given uuid. | |
| AssemblyPtrVector | getAssemblyPtrVector () const |
| agx::Clock * | getClock () |
| const agx::Clock * | getClock () const |
| agx::Constraint * | getConstraint (const agx::Name &name) |
| Find (linear search) and return named Constraint. | |
| template<typename T > | |
| T * | getConstraint (const agx::Name &name) |
| Find and return named Constraint of a templated type, for example Hinge: | |
| const agx::Constraint * | getConstraint (const agx::Name &name) const |
| Find (linear search) and return named Constraint. | |
| template<typename T > | |
| const T * | getConstraint (const agx::Name &name) const |
| Find and return named Constraint of a templated type, for example Hinge: | |
| agx::Constraint * | getConstraint (const agx::Uuid &uuid) |
| Find and return a pointer to a Constraint with the given uuid. | |
| template<typename T > | |
| T * | getConstraint (const agx::Uuid &uuid) |
| Find and return named Constraint of a templated type, for example Hinge: | |
| const agx::Constraint * | getConstraint (const agx::Uuid &uuid) const |
| Find (linear search) and return a pointer to a Constraint with the given uuid. | |
| template<typename T > | |
| const T * | getConstraint (const agx::Uuid &uuid) const |
| Find and return named Constraint of a templated type, for example Hinge: | |
| agx::Constraint1DOF * | getConstraint1DOF (const agx::Name &name) |
| agx::Constraint2DOF * | getConstraint2DOF (const agx::Name &name) |
| agx::ConstraintRefSetVector & | getConstraints () |
| const agx::ConstraintRefSetVector & | getConstraints () const |
| agx::UInt8 | getContactReductionBinResolution () const |
| agx::UInt | getContactReductionThreshold () const |
| agx::DynamicsSystem * | getDynamicsSystem () |
| const agx::DynamicsSystem * | getDynamicsSystem () const |
| agx::Emitter * | getEmitter (const agx::Name &name) |
| Find (linear search) and return an emitter matching the given name. | |
| agx::Emitter * | getEmitter (const agx::Name &name) const |
| Find (linear search) and return an emitter matching the given name. | |
| agx::Emitter * | getEmitter (const agx::Uuid &uuid) |
| Find (linear search) and return an emitter matching the given uuid. | |
| const agx::Emitter * | getEmitter (const agx::Uuid &uuid) const |
| Find (linear search) and return an emitter matching the given uuid. | |
| agx::EmitterRefVector | getEmitters () |
| agxData::EntityStorage * | getEmitterStorage () |
| bool | getEnableClearRenderTemporaries () const |
| agx::RigidBodyPtrSetVector & | getEnabledRigidBodies () |
| const agx::RigidBodyPtrSetVector & | getEnabledRigidBodies () const |
| bool | getEnableRemoteDebugging () const |
| bool | getEnableStatistics () const |
| bool | getEnableStatisticsRendering () const |
| bool | getEnableWebDebugger () const |
| agxSDK::EnergyManager * | getEnergyManager () const |
| return the energy manager of the system. | |
| agxSDK::EventListener * | getEventListener (const agx::Name &name) |
| Find and return the first matching named event listener. | |
| const agxSDK::EventListener * | getEventListener (const agx::Name &name) const |
| Find and return the first matching named event listener. | |
| agxSDK::EventListener * | getEventListener (const agx::Uuid &uuid) |
| Find (linear search) and return the first event listener matching the uuid. | |
| const agxSDK::EventListener * | getEventListener (const agx::Uuid &uuid) const |
| Find (linear search) and return the first event listener matching the uuid. | |
| void | getEventListeners (EventListenerPtrVector &eventListeners) const |
| Get a vector containing all the registered event listeners. | |
| const agxCollide::GeometryRefVector & | getGeometries () const |
| agxCollide::Geometry * | getGeometry (const agx::Name &name) |
| Find (linear search) and return named collision Geometry. | |
| const agxCollide::Geometry * | getGeometry (const agx::Name &name) const |
| Find (linear search) and return named collision Geometry. | |
| agxCollide::Geometry * | getGeometry (const agx::Uuid &uuid) |
| Find (linear search) and return a geometry matching the given uuid. | |
| const agxCollide::Geometry * | getGeometry (const agx::Uuid &uuid) const |
| Find (linear search) and return a geometry matching the given uuid. | |
| agx::GravityField * | getGravityField () |
| const agx::GravityField * | getGravityField () const |
| agx::Component * | getHeader () |
| agx::Journal * | getJournal () |
| const agx::Journal * | getJournal () const |
| agx::Material * | getMaterial (const agx::Name &materialName) |
| const agx::Material * | getMaterial (const agx::Name &materialName) const |
| agx::Material * | getMaterial (const agx::Uuid &uuid) |
| MaterialManager * | getMaterialManager () |
| const MaterialManager * | getMaterialManager () const |
| agx::MergedBody * | getMergedBody (agx::UInt i) const |
| agx::MergedBody * | getMergedBody (const agx::Name &name) |
| Find (linear search) and return named MergedBody. | |
| const agx::MergedBody * | getMergedBody (const agx::Name &name) const |
| Find (linear search) and return named MergedBody. | |
| agx::MergedBody * | getMergedBody (const agx::Uuid &uuid) |
| Find (linear search) and return a pointer to a MergedBody with the given uuid. | |
| const agx::MergedBody * | getMergedBody (const agx::Uuid &uuid) const |
| Find (linear search) and return a pointer to a MergedBody with the given uuid. | |
| agxSDK::MergeSplitHandler * | getMergeSplitHandler () const |
| Merge split handler is an object that enables performance boosts by merging rigid bodies together which results in fewer rigid bodies for the solver to solve for. | |
| agx::UInt | getNumMergedBodies () const |
| agx::UInt | getNumTerrains () const |
| agx::ObserverFrame * | getObserver (const agx::Name &name) |
| Find (linear search) and return named ObserverFrame. | |
| const agx::ObserverFrame * | getObserver (const agx::Name &name) const |
| Find (linear search) and return named ObserverFrame. | |
| agx::ObserverFrame * | getObserver (const agx::Uuid &uuid) |
| Find (linear search) and return a pointer to a ObserverFrame with the given uuid. | |
| const agx::ObserverFrame * | getObserver (const agx::Uuid &uuid) const |
| Find (linear search) and return a pointer to a ObserverFrame with the given uuid. | |
| agx::ObserverFrame * | getObserverFrame (const agx::Name &name) |
| Find (linear search) the first ObserverFrame object in the system that matches the name. | |
| const agx::ObserverFrame * | getObserverFrame (const agx::Name &name) const |
| Find (linear search) the first ObserverFrame object in the system that matches the name. | |
| agx::ObserverFrame * | getObserverFrame (const agx::Uuid &uuid) |
| Find and return a pointer to a ObserverFrame with the given uuid. | |
| const agx::ObserverFrame * | getObserverFrame (const agx::Uuid &uuid) const |
| Find (linear search) and return a pointer to a ObserverFrame with the given uuid. | |
| agx::ObserverFrameRefSetVector & | getObserverFrames () |
| const agx::ObserverFrameRefSetVector & | getObserverFrames () const |
| agxSDK::SimulationParameter * | getParameter (const agx::Name &name) |
| const agxSDK::SimulationParameterRefVector & | getParameters () const |
| agx::ParticleEmitterRefVector | getParticleEmitters () |
| agx::ParticleSystem * | getParticleSystem () const |
| agx::ParticleSystemRefVector & | getParticleSystems () |
| const agx::ParticleSystemRefVector & | getParticleSystems () const |
| agxSDK::PickHandler * | getPickHandler () |
| const agxSDK::PickHandler * | getPickHandler () const |
| agxPlot::System * | getPlotSystem () const |
| bool | getPreIntegratePositions () const |
| agx::Real | getProfilingFrequency () const |
| agx::Real | getRemoteDebuggingTimeStep () const |
| agxRender::RenderManager * | getRenderManager () |
| const agxRender::RenderManager * | getRenderManager () const |
| agx::RigidBodyRefVector & | getRigidBodies () |
| const agx::RigidBodyRefVector & | getRigidBodies () const |
| agx::RigidBody * | getRigidBody (const agx::Name &name) |
| Find (linear search) and return named RigidBody. | |
| const agx::RigidBody * | getRigidBody (const agx::Name &name) const |
| Find (linear search) and return named RigidBody. | |
| agx::RigidBody * | getRigidBody (const agx::Uuid &uuid) |
| Find (linear search) and return a pointer to a RigidBody with the given uuid. | |
| const agx::RigidBody * | getRigidBody (const agx::Uuid &uuid) const |
| Find (linear search) and return a pointer to a RigidBody with the given uuid. | |
| ISensorEnvironment * | getSensorEnvironment () const |
| SimulationSerializer * | getSerializer () |
| const SimulationSerializer * | getSerializer () const |
| agxSDK::SimulationProxy * | getSimulationProxy () const |
| Internal method. | |
| SimulationStatisticsListener * | getSimulationStatisticsListener () |
| const SimulationStatisticsListener * | getSimulationStatisticsListener () const |
| agx::SolveModel * | getSolveModel (const agx::Name &name) |
| const agx::SolveModelRefVector & | getSolveModels () const |
| agx::Solver * | getSolver () |
| const agx::Solver * | getSolver () const |
| agxCollide::Space * | getSpace () |
| const agxCollide::Space * | getSpace () const |
| agxSDK::TerrainInstance * | getTerrain (agx::UInt i) const |
| agxSDK::TerrainManager * | getTerrainManager () const |
| agxPlot::DataSeries * | getTimeDataSeries () const |
| A data series that contains all time stamps of the simulation. | |
| agx::Real | getTimeStamp () const |
| agx::Real | getTimeStep () const |
| agx::Vec3 | getUniformGravity () const |
| If the current gravity field is not a uniform one (for example PointGravityField), 0,0,0 will be returned. | |
| agx::TaskGroup * | getUpdateTask () |
| agxWire::Wire * | getWire (const agx::Name &name) |
| Find and return the first matching named wire. | |
| const agxWire::Wire * | getWire (const agx::Name &name) const |
| Find and return the first matching named wire. | |
| agxWire::Wire * | getWire (const agx::Uuid &uuid) |
| Find (linear search) and return the first wire matching the uuid. | |
| const agxWire::Wire * | getWire (const agx::Uuid &uuid) const |
| Find (linear search) and return the first wire matching the uuid. | |
| void | handleStabiltyReport (const agx::StabilityReport *stabilityReport) |
| Internal method. | |
| void | loadSolveModels (const agx::String &path, bool clear=false) |
| size_t | read (const agx::String &filename, agxSDK::Assembly *parent=nullptr, agx::UInt selection=READ_DEFAULT) |
| Read serialized simulation from the specified file and append to this simulation. | |
| size_t | read (std::istream &stream, bool isBinary, agxSDK::Assembly *parent=nullptr, agx::UInt selection=READ_DEFAULT) |
| Read serialized simulation from the specified stream. | |
| void | readStoragePermutations (agxStream::InputArchive &in, bool clearStorages=false) |
| bool | remove (agx::Component *subComponent) |
| Remove a sub component from Simulation. | |
| bool | remove (agx::Constraint *constraint) |
| Remove a constraint from the simulation. | |
| bool | remove (agx::ContactMaterial *material) |
| Remove an explicit contact material from the set of existing ContactMaterials. | |
| bool | remove (agx::Emitter *emitter, bool removeGeometries=true) |
| Remove an emitter from the system. | |
| bool | remove (agx::Interaction *interaction) |
| Remove an Interaction from the Simulation. | |
| bool | remove (agx::Material *material) |
| Remove a specified material from the simulation. | |
| bool | remove (agx::MergedBody *mergedBody) |
| Removes the merged body from this simulation. | |
| bool | remove (agx::ObserverFrame *observerFrame) |
| Remove a ObserverFrame to the Simulation. | |
| bool | remove (agx::ParticleContactSensor *sensor) |
| Remove a particle contact sensor from the system. | |
| bool | remove (agx::ParticleSystem *particleSystem) |
| Remove a particle system from the simulation. | |
| bool | remove (agx::RigidBody *body, bool removeGeometries=true) |
| Remove a body from the Simulation, the body will be disabled! | |
| bool | remove (agxCollide::Geometry *geometry) |
Remove geometry from collision space. | |
| bool | remove (agxControl::Action *action) |
| Remove an action from this simulation. | |
| bool | remove (agxControl::Operation *operation) |
| Remove an operation from this simulation. | |
| bool | remove (agxSDK::Assembly *assembly, bool removeAllEntries=true) |
| Remove an assembly from the simulation. | |
| bool | remove (agxSDK::EventListener *listener) |
| Remove a Event listener. | |
| bool | remove (agxSDK::SimulationParameter *parameter) |
| Remove a parameter from the simulation configuration interface. | |
| bool | remove (agxSDK::TerrainInstance *terrain) |
| Remove terrain (agxTerrain::Terrain) instance from this simulation. | |
| bool | remove (agxSDK::TerrainToolInstance *toolInstance) |
| Remove a terrain tool instance from this simulation. | |
| bool | remove (agxStream::Serializable *object) |
| Remove an object as a serializable object. | |
| bool | removeEventListener (agxSDK::EventListener *listener) |
| Remove the specified listener. | |
| bool | removeRestoreListener (agxStream::RestoreListener *listener) |
| Remove an existing listener in a simulation. | |
| void | removeSolveModel (agx::SolveModel *model) |
| void | renderComponents () |
| void | resetTaskTimers () |
| Reset profiling timers. | |
| void | restore (agxStream::InputArchive &in, agxSDK::Assembly *parent=nullptr, agx::UInt selection=READ_DEFAULT, bool replaceUsingCache=false) |
| Read data from the input archive and add to the simulation. | |
| bool | restore (const agx::String &filename, agx::UInt selection=READ_DEFAULT) |
| Restore state from a serialized scene file. | |
| bool | restore (std::istream &stream, bool isBinary, agx::UInt selection=READ_DEFAULT) |
| void | sendSimulation () |
| Send the simulation to the remote debugger (if enabled) | |
| void | setActionManagerTimeStamp (const agx::TimeStamp &time) |
| Truncating an AGX simulation does not reset the timestamp in the action manager. | |
| void | setContactReductionBinResolution (agx::UInt8 binResolution) |
| Specify the bin resolution used when evaluating contacts for reduction between body-body contacts. | |
| void | setContactReductionThreshold (agx::UInt threshold) |
| Specify the minimum number of contacts between two bodies required to execute contact reduction. | |
| void | setDynamicsSystem (agx::DynamicsSystem *system) |
Replace the current DynamicsSystem with system. | |
| void | setEnableClearRenderTemporaries (bool enable) |
| void | setEnableRemoteDebugging (bool flag, agx::Int16 port=-1, bool useCompression=false, bool waitForSynchronization=true) |
| Enable/Disable remote debugging. | |
| void | setEnableSimulationStatisticsListener (bool flag) |
| Enable/disable the listener that collects all statistics data from the simulation. | |
| void | setEnableStatistics (bool enable) |
| Enable/disable statistics logging to disk. | |
| void | setEnableStatisticsRendering (bool enable) |
| void | setEnableWebDebugger (bool flag, agx::UInt16 port=9001) |
| Enable/Disable the Web debugger simulation WebSocket API. | |
| void | setGravityField (agx::GravityField *gravityField) |
| Set the GravityField model used in gravity calculations. | |
| void | setMainWorkThread (agx::Thread *thread) |
| Specify which is the main working thread for the Simulation. | |
| void | setPickHandler (agxSDK::PickHandler *pickHandler) |
| Assign interface for pick handler. | |
| void | setPlotSystem (agxPlot::System *plotSystem) |
Replace the current PlotSystem with plotSystem. | |
| void | setPreIntegratePositions (bool flag) |
| Set true to integrate positions at the start of the timestep rather than at the end. | |
| void | setProfilingFrequency (agx::Real frequency) |
| Specify the frequency for performance profiling. | |
| void | setRemoteDebuggingTimeStep (agx::Real timeStep) |
| Sets the time step for remote debugging. | |
| void | setSensorEnvironment (ISensorEnvironment *environment) |
| Assign new sensor environment to this simulation, nullptr to remove the current environment. | |
| void | setSerializer (SimulationSerializer *serializer) |
| Replace the current SimulationSerializer with a new instance. | |
| void | setSpace (agxCollide::Space *space) |
Replace the current Collision space with space. | |
| void | setStatisticsInterval (agx::Real interval) |
| void | setStatisticsPath (const agx::String &path) |
| Specify the path to a file where the statistics information will be written when enabled. | |
| void | setTimeStamp (agx::TimeStamp t) |
| Set the timestamp for the simulation (and the DynamicsSystem) | |
| bool | setTimeStep (agx::Real timeStep) |
| Sets the time step determined by the TimeGovernor in the DynamicsSystem. | |
| bool | setUniformGravity (const agx::Vec3 &g) |
| Set the uniform gravity. | |
| void | stepForward () |
| Take one step forward in the simulation. | |
| agx::TimeStamp | stepTo (agx::TimeStamp t) |
| Step the simulation forward 1 or more time steps in time until we get to the time t. | |
| void | store (agxStream::OutputArchive &archive) const |
| Save this simulation to the output archive. | |
| bool | triggerEvent (const GuiEvent &e) |
| Execute a GuiEvent. | |
| void | updateActionManager () |
| Internal method. | |
| void | updateRenderManager () |
| Make an explicit call to RenderManager::update() to update the debug rendering information. | |
| void | updateStatisticsRenderData () |
| Make an explicit call to RenderManager::update() to update the statistics rendering information. | |
| size_t | write (const agx::String &filename) const |
| Serialize the simulation to the specified file. | |
| size_t | write (std::ostream &stream, bool binary) const |
| Serialize the simulation to the specified file. | |
| void | writeStatisticsFiles (const agx::String &directoryPath="Statistics", bool taskProfile=true, bool threadTimeline=true, const agx::Vector< agx::String > &timelineFormats=agx::Vector< agx::String >(), bool bufferAllocations=true) |
| void | writeStoragePermutations (agxStream::OutputArchive &archive) const |
Public Member Functions inherited from agx::Component | |
| Component (const agx::Name &name=agx::Name(), agx::Model *model=agx::Component::ClassModel(), agx::Device *device=nullptr) | |
| virtual void | addObject (agx::Object *object, bool assignContext=true) |
| Add an object to the component. | |
| virtual String | autoComplete (const String &partialName, StringVector &matchingNames) const |
| virtual void | buildNavigationTree (agxJson::Value &eNode) const override |
| void | configure (Model *model) |
| virtual void | configure (TiXmlElement *eComponent) override |
| agx::Device * | getDevice () |
| template<typename T > | |
| T * | getDevice () |
| const agx::Device * | getDevice () const |
| template<typename T > | |
| const T * | getDevice () const |
| size_t | getNumObjects (const agx::Name &name) const |
| agx::Object * | getObject (const agx::Name &name, agx::Model *model, size_t index=0) |
| const agx::Object * | getObject (const agx::Name &name, agx::Model *model, size_t index=0) const |
| agx::Object * | getObject (const agx::Name &name, size_t index=0) |
| template<typename T > | |
| T * | getObject (const agx::Name &name, size_t index=0) |
| const agx::Object * | getObject (const agx::Name &name, size_t index=0) const |
| template<typename T > | |
| const T * | getObject (const agx::Name &name, size_t index=0) const |
| const agx::ObjectRefVector & | getObjects () const |
| template<typename T > | |
| void | getObjects (agx::ObjectPtrVector &result, bool recursive=false) const |
| void | getObjects (agx::ObjectPtrVector &result, const agx::Model *model, bool recursive=false) const |
| virtual Object * | getResourceImpl (const Path &path, agx::Model *model) override |
| virtual void | printSubtree () const override |
| void | printSubtree (std::ostream &stream, int depth=0) const |
| virtual void | rebind () override |
| void | removeAllObjects () |
| Remove all components. | |
| virtual void | removeObject (agx::Object *object) |
| Remove an object from the component. | |
| void | removeObject (const agx::Name &name, size_t index=0) |
| Remove an object with a specified name (and optional index) from the component. | |
| virtual void | snapshot (TiXmlNode *eParent, const String &directory) const override |
| void | traverse (ComponentVisitor *) |
| void | traverse (const TraverseCallback &callback) |
Public Member Functions inherited from agx::Object | |
| Object (const Name &name=Name(), Model *model=Object::ClassModel()) | |
| void | addListener (EventListener *listener) |
| virtual void | buildNavigationTree (agxJson::Value &eNode) const |
| virtual void | configure (TiXmlElement *) |
| agx::String | fullName () const |
| agx::String | fullPath () const |
| agx::String | fullPath (const agx::Object *root) const |
| template<typename T > | |
| T * | getAutoScopedResource (const agx::Path &path) |
| template<typename T > | |
| const T * | getAutoScopedResource (const agx::Path &path) const |
| agx::Object * | getAutoScopedResource (const agx::Path &path, agx::Model *model=nullptr) |
| const agx::Object * | getAutoScopedResource (const agx::Path &path, agx::Model *model=nullptr) const |
| agx::Object * | getContext () |
| template<typename T > | |
| T * | getContext () |
| const agx::Object * | getContext () const |
| template<typename T > | |
| const T * | getContext () const |
| agx::UInt32 | getId () const |
| const agx::Name & | getImplementationName () const |
| agx::Model * | getModel () |
| const agx::Model * | getModel () const |
| const agx::Name & | getName () const |
| agx::Object * | getNextSibling () |
| const agx::Object * | getNextSibling () const |
| agx::Path | getPath () const |
| agx::Path | getPath (const agx::Object *root) const |
| template<typename T > | |
| T * | getResource (const agx::Path &path) |
| template<typename T > | |
| const T * | getResource (const agx::Path &path) const |
| agx::Object * | getResource (const agx::Path &path, agx::Model *model=nullptr) |
| const agx::Object * | getResource (const agx::Path &path, agx::Model *model=nullptr) const |
| virtual agx::Object * | getResourceImpl (const agx::Path &path, agx::Model *model) |
| agx::Object * | getRootContext () |
| const agx::Object * | getRootContext () const |
| bool | hasListener (EventListener *listener) |
| bool | hasParent (const agx::Object *node) const |
| bool | isUnique () const |
| virtual void | printSubtree () const |
| virtual void | rebind () |
| void | removeListener (EventListener *listener) |
| virtual void | save (TiXmlElement *) const |
| virtual void | setContext (agx::Object *context) |
| void | setId (UInt32 id) |
| void | setModel (agx::Model *model) |
| Set the object model (handled automatically). | |
| void | setName (const agx::Name &name) |
| Set the name of the object. | |
| virtual void | snapshot (TiXmlNode *, const String &) const |
Public Member Functions inherited from agx::Referenced | |
| Referenced () | |
| Default constructor. | |
| Referenced (const Referenced &) | |
| template<typename T > | |
| T * | as () |
| Subclass casting. | |
| template<typename T > | |
| const T * | as () const |
| template<typename T > | |
| T * | asSafe () |
| Safe subclass casting, return nullptr if template type does not match. | |
| template<typename T > | |
| const T * | asSafe () const |
| int | getReferenceCount () const |
| template<typename T > | |
| bool | is () const |
| Subclass test. | |
| Referenced & | operator= (const Referenced &) |
| Assignment operator. Will increment the number of references to the referenced object. | |
| void | reference (void *ptr=nullptr) const |
| Explicitly increment the reference count by one, indicating that this object has another pointer which is referencing it. | |
| void | unreference (void *ptr=nullptr) const |
| Decrement the reference count by one, indicating that a pointer to this object is referencing it. | |
| void | unreference_nodelete () const |
| Decrement the reference count by one, indicating that a pointer to this object is referencing it. | |
Static Public Member Functions | |
| static agx::Model * | ClassModel () |
| Internal method. | |
| static agxSDK::SimulationProxyRef | createDefaultProxy (agxSDK::Simulation *simulation) |
| Creates new simulation proxy of default type. | |
| static Simulation * | load (agx::TiXmlElement *eSimulation, agx::Device *device) |
Static Public Member Functions inherited from agx::Component | |
| static Component * | _load (TiXmlElement *eComponent, Device *device) |
| static agx::Model * | ClassModel () |
| static Component * | load (const Path &path, const Name &implementation, Device *device, const Path &_namespace=Path()) |
| static Component * | load (const String &path, const Path &_namespace=Path()) |
| static Component * | load (const String &path, Device *device, const Path &_namespace=Path()) |
| static Component * | load (TiXmlElement *eComponent, Device *device) |
Static Public Member Functions inherited from agx::Object | |
| static agx::Model * | ClassModel () |
| static agx::String | generateName (const agx::String &bindPath) |
| static const HashSet< Object * > & | getActiveObjects () |
| static bool | getEnableRebind () |
| Should rebinding be allowed? Right now a global setting. | |
| static Object * | load (const String &path, Device *device, const String &type, const String &attribute, const String &value) |
| template<typename T > | |
| static T * | load (const String &path, Device *device, const String &type, const String &attribute, const String &value) |
| static Object * | load (const String &path, Device *device, const String &type="", size_t instance=0) |
| template<typename T > | |
| static T * | load (const String &path, Device *device, const String &type="", size_t instance=0) |
| static void | load (const String &path, Device *device, ObjectPtrVector &loadedObjects) |
| static Object * | load (TiXmlElement *eObject, Device *device) |
| template<typename T > | |
| static T * | load (TiXmlElement *eObject, Device *device) |
| static TiXmlDocument | openDocument (const String &path) |
| static void | setEnableRebind (bool flag) |
| Sets if rebinding of objects should be allowed (Right now a global setting). | |
Static Public Member Functions inherited from agx::Referenced | |
| template<typename T > | |
| static bool | ValidateCast (const Referenced *object) |
Protected Member Functions | |
| virtual | ~Simulation () |
| Destructor. | |
Protected Member Functions inherited from agx::Component | |
| virtual | ~Component () |
| String | expandAutoCompletionMatch (const String &query, const StringVector &matchingNames) const |
| void | setDevice (Device *device) |
Protected Member Functions inherited from agx::Object | |
| virtual | ~Object () |
Protected Member Functions inherited from agx::Referenced | |
| virtual | ~Referenced () |
| Destructor. | |
| void | allocateObserverVector () const |
| void | deleteUsingDeleteHandler () const |
Additional Inherited Members | |
Static Protected Member Functions inherited from agx::Referenced | |
| static DeleteHandler * | getDeleteHandler () |
| static void | setDeleteHandler (DeleteHandler *handler) |
| Internal: Set a DeleteHandler to which deletion of all referenced counted objects will be delegated to. | |
Protected Attributes inherited from agx::Referenced | |
| Mutex | m_mutex |
| ObserverContainer | m_observers |
| AtomicValue | m_refCount |
Simulation is a class that bridges the collision space agxCollide::Space and the dynamic simulation system agx::DynamicsSystem.
All add/remove of objects must go through a the interface for Simulation.
Definition at line 130 of file Simulation.h.
Definition at line 135 of file Simulation.h.
Definition at line 137 of file Simulation.h.
Definition at line 133 of file Simulation.h.
Definition at line 138 of file Simulation.h.
Definition at line 136 of file Simulation.h.
Definition at line 134 of file Simulation.h.
Specification of what should be cleaned up from a simulation during a call to the cleanup() method.
These flags can be bit masked/or:ed together.
Definition at line 1026 of file Simulation.h.
Enum for specifying some additional, part of a simulation that can be restored from a serialization.
| Enumerator | |
|---|---|
| READ_NONE | ! Select to read none of the items below |
| READ_TIMESTEP | ! Select to read and restore the TimeStep of the Simulation. |
| READ_TIMESTAMP | ! Select to read the TimeStamp (current time of the simulation) |
| READ_GRAVITY | ! Select to read and restore the Gravity model of the simulation. |
| READ_SOLVER | ! Select to read solver parameters. |
| READ_ALL | |
| READ_DEFAULT | |
Definition at line 1046 of file Simulation.h.
| agxSDK::Simulation::Simulation | ( | ) |
Default constructor This constructor CAN Throw a std::runtime_exception if configuration file is broken/invalid.
| agxSDK::Simulation::Simulation | ( | agx::Device * | device | ) |
Special constructor which will associate the Simulation to a specified device.
|
protectedvirtual |
Destructor.
| bool agxSDK::Simulation::add | ( | agx::Component * | subComponent | ) |
Add a sub component to the Simulation.
| subComponent | - The component to be added as a sub component to this Simulation |
| bool agxSDK::Simulation::add | ( | agx::Constraint * | constraint | ) |
Add a constraint to the simulation.
| constraint | - The constraint to be added. |
| bool agxSDK::Simulation::add | ( | agx::ContactMaterial * | material | ) |
Add an explicit contact material to the simulation.
| bool agxSDK::Simulation::add | ( | agx::Emitter * | emitter, |
| bool | addGeometries = true |
||
| ) |
Add an emitter to the Simulation.
| emitter | - The emitter to be added. |
| addGeometries | - true if the emitter geometry should be added to the simulation, false otherwise. (Default: true) |
| bool agxSDK::Simulation::add | ( | agx::Interaction * | interaction | ) |
Add an Interaction to the Simulation.
| interaction |
| bool agxSDK::Simulation::add | ( | agx::Material * | material | ) |
Add a material to the simulation.
If a material with the same name already exists, it will return false.
| bool agxSDK::Simulation::add | ( | agx::MergedBody * | mergedBody | ) |
Add a merged body to this simulation.
| mergedBody | - merged body to add |
| bool agxSDK::Simulation::add | ( | agx::ObserverFrame * | observerFrame | ) |
Add a ObserverFrame to the Simulation.
| observerFrame | the frame to add |
| bool agxSDK::Simulation::add | ( | agx::ParticleContactSensor * | sensor | ) |
Add a particle contact sensor to the Simulation.
| sensor | - The particle contact sensor to be added. |
| bool agxSDK::Simulation::add | ( | agx::ParticleSystem * | particleSystem | ) |
Add a particle system to the simulation.
| particleSystem | - The particle system to be added. |
| bool agxSDK::Simulation::add | ( | agx::RigidBody * | body, |
| bool | addGeometries = true |
||
| ) |
Add a body to the Simulation. Side effect: the associated Geometries will also be added to Collision space (if addGeometries is == true)
| body | - The body that will be added to the simulation. |
| addGeometries | - If true, then all geometries in body will also be added to simulation. |
| bool agxSDK::Simulation::add | ( | agxCollide::Geometry * | geometry | ) |
Add a geometry to the Simulation Side effect: Will add the material associated to the geometry to the material manager too.
| bool agxSDK::Simulation::add | ( | agxControl::Action * | action | ) |
Register an action to this simulation.
| action | - action to add |
| bool agxSDK::Simulation::add | ( | agxControl::Operation * | operation | ) |
Register an operation to this simulation.
| operation | - operation to add |
| bool agxSDK::Simulation::add | ( | agxSDK::Assembly * | assembly, |
| bool | addAllEntries = true |
||
| ) |
Add an assembly to the simulation including all its parts.
| assembly | - The assembly to be added |
| addAllEntries | - If true (default) all its contained entries will also be added. |
| bool agxSDK::Simulation::add | ( | agxSDK::EventListener * | listener, |
| int | priority = EventManager::DEFAULT_PRIORITY |
||
| ) |
Add an event listener The listener will get a call to its addNotification method if adding was successful.
| listener | - Pointer to the listener that will be activated during events. |
| priority | - An execution priority for this listener. Higher executed earlier in the list of added listeners. Range of priority is [EventManager::LOWEST_PRIORITY, EventManager::HIGHEST_PRIORITY] |
| bool agxSDK::Simulation::add | ( | agxSDK::SimulationParameter * | parameter | ) |
Add a parameter to the simulation configuration interface.
| bool agxSDK::Simulation::add | ( | agxSDK::TerrainInstance * | terrain | ) |
Add terrain (agxTerrain::Terrain) instance to this simulation.
| terrain | - terrain to add |
| bool agxSDK::Simulation::add | ( | agxSDK::TerrainToolInstance * | toolInstance | ) |
Add a terrain tool instance to this simulation.
| toolInstance | - the terrain tool instance to add |
| bool agxSDK::Simulation::add | ( | agxStream::Serializable * | object | ) |
Add an object as a serializable object.
Might be any of the above classes having an add method: Geometry, RigidBody etc.
| successfully added (and not already added)? |
| bool agxSDK::Simulation::addEventListener | ( | agxSDK::EventListener * | listener, |
| int | priority = EventManager::DEFAULT_PRIORITY |
||
| ) |
Add an event listener The listener will get a call to its addNotification method if adding was successful.
| listener | - Pointer to the listener that will be activated during events. |
| priority | - An execution priority for this listener. Higher executed earlier in the list of added listeners. Range of priority is [EventManager::LOWEST_PRIORITY, EventManager::HIGHEST_PRIORITY] |
| bool agxSDK::Simulation::addRestoreListener | ( | agxStream::RestoreListener * | listener | ) |
Add a restore listener to the Simulation.
Whenever a simulation is restored from a serialization, these listeners will be called upon.
| listener | - A pointer to a RestoreListener |
| void agxSDK::Simulation::addSolveModel | ( | agx::SolveModel * | model | ) |
| bool agxSDK::Simulation::allowCreateParticles | ( | ) | const |
Definition at line 1919 of file Simulation.h.
| bool agxSDK::Simulation::breakStepTo | ( | ) |
Break an initiated stepTo() after the current simulation step.
When stepTo() is called, a number if iterations calling stepForward() will be done. If you want to cancel these iterations from within an EventListener you can call breakStepTo().
|
static |
Internal method.
| void agxSDK::Simulation::cleanup | ( | agx::UInt | selection = CLEANUP_ALL, |
| bool | fast = false |
||
| ) |
This method will remove/cleanup selected parts of the simulation.
By using the CleanupSelectionMask one can select what should be removed, for example all contact listeners.
| selection | - Specify from enum CleanupSelectionMask what should be cleaned up |
| fast | - If true, we will try to remove bodies, geometries, listeners one by one instead of creating new DynamicsSystem, Space etc. which does have a lot of overhead. |
| void agxSDK::Simulation::clearContactData | ( | ) |
Clears contact data in the simulation.
| void agxSDK::Simulation::commit | ( | agxSDK::SimulationProxy * | simulationProxy | ) |
Internal method.
Add content from a simulation proxy to this simulation.
| simulationProxy | - simulation proxy to commit |
| bool agxSDK::Simulation::contains | ( | const agx::Component * | object | ) | const |
Is the object contained in the simulation?
| object | - The object to test |
| bool agxSDK::Simulation::contains | ( | const agxSDK::TerrainInstance * | terrain | ) | const |
Is the terrain contained in the simulation?
| terrain | - The terrain to test |
| bool agxSDK::Simulation::contains | ( | const agxSDK::TerrainToolInstance * | toolInstance | ) | const |
Is the terrain tool instance contained in the simulation?
| toolInstance | - The terrain tool instance to test |
|
static |
Creates new simulation proxy of default type.
| void agxSDK::Simulation::createRenderTask | ( | ) |
| bool agxSDK::Simulation::disableThreadTimeline | ( | const agx::String & | format = "chrome" | ) |
Stops recording timeline data and exports gathered data to disk.
If specified format is "svg", then multiple svg files with timeline data are generated. Default format is chrome which produces a ChromeTracing.json file which can be viewed in a Chromium based browser, e.g. Google Chrome, by opening chrome://tracing/ and loading the generated file.
Generated data will be created in directory named Profiling/ThreadTimelines/{sessionName}/.
| format | Output format for timelines, valid options are "svg" or "chrome". |
| void agxSDK::Simulation::dumpMemoryUsage | ( | const agx::String & | filePath = "TaskTimers.xml" | ) |
Print current agxData buffer allocations to a file.
| void agxSDK::Simulation::dumpTaskTimers | ( | const agx::String & | filePath = "BufferAllocations.xml" | ) |
Print current task performance timers to a file.
| bool agxSDK::Simulation::enableThreadTimeline | ( | const agx::String & | sessionName = "", |
| const agx::String & | journalName = "Profiling.agxJournal" |
||
| ) |
Record profiling information from this simulation and store it in a journal.
When the simulation is destoryed, or if disableThreadTimeline is called, thread timelines will be generated from the journal and stored to disk. See also setProfilingFrequency for control of how often data is gathered.
| sessionName | Name for profiling session. If left empty, current date and time will be used as name. |
| journalName | Name for journal file used when recording timeline data. Parameter is used the first time recording is enabled, then the journal is reused. |
| void agxSDK::Simulation::garbageCollect | ( | ) |
Use with caution!
Collect garbage of internal states (e.g., removed geometries and rigid bodies). The garbage will default be collected automatically during next simulation step.
| agxControl::ActionManager * agxSDK::Simulation::getActionManager | ( | ) |
Gets the action manager.
| const AssemblyHash & agxSDK::Simulation::getAssemblies | ( | ) | const |
| agxSDK::Assembly * agxSDK::Simulation::getAssembly | ( | const agx::Name & | name | ) |
| const agxSDK::Assembly * agxSDK::Simulation::getAssembly | ( | const agx::Name & | name | ) | const |
| agxSDK::Assembly * agxSDK::Simulation::getAssembly | ( | const agx::Uuid & | uuid | ) |
| const agxSDK::Assembly * agxSDK::Simulation::getAssembly | ( | const agx::Uuid & | uuid | ) | const |
| AssemblyPtrVector agxSDK::Simulation::getAssemblyPtrVector | ( | ) | const |
| agx::Clock * agxSDK::Simulation::getClock | ( | ) |
Definition at line 1909 of file Simulation.h.
| const agx::Clock * agxSDK::Simulation::getClock | ( | ) | const |
Definition at line 1914 of file Simulation.h.
| agx::Constraint * agxSDK::Simulation::getConstraint | ( | const agx::Name & | name | ) |
Find (linear search) and return named Constraint.
| name | - name of the Constraint to find |
| T * agxSDK::Simulation::getConstraint | ( | const agx::Name & | name | ) |
Find and return named Constraint of a templated type, for example Hinge:
agx::Hinge *hinge = simulation->getConstraint<agx::Hinge>("FrontWheelHinge");
| name | - name of the Constraint to find |
Definition at line 1942 of file Simulation.h.
References getConstraint().
| const agx::Constraint * agxSDK::Simulation::getConstraint | ( | const agx::Name & | name | ) | const |
Find (linear search) and return named Constraint.
| name | - name of the Constraint to find |
| const T * agxSDK::Simulation::getConstraint | ( | const agx::Name & | name | ) | const |
Find and return named Constraint of a templated type, for example Hinge:
const agx::Hinge* hinge = simulation->getConstraint<agx::Hinge>("FrontWheelHinge");
| name | - name of the Constraint to find |
Definition at line 1948 of file Simulation.h.
References getConstraint().
| agx::Constraint * agxSDK::Simulation::getConstraint | ( | const agx::Uuid & | uuid | ) |
Find and return a pointer to a Constraint with the given uuid.
| uuid | - uuid of the requested constraint |
| T * agxSDK::Simulation::getConstraint | ( | const agx::Uuid & | uuid | ) |
Find and return named Constraint of a templated type, for example Hinge:
agx::Hinge *hinge = simulation->getConstraint<agx::Hinge>(uuid);
| uuid | - uuid of the Constraint to find |
Definition at line 1930 of file Simulation.h.
References getConstraint().
| const agx::Constraint * agxSDK::Simulation::getConstraint | ( | const agx::Uuid & | uuid | ) | const |
Find (linear search) and return a pointer to a Constraint with the given uuid.
| uuid | - uuid of the requested constraint |
Referenced by getConstraint().
| const T * agxSDK::Simulation::getConstraint | ( | const agx::Uuid & | uuid | ) | const |
Find and return named Constraint of a templated type, for example Hinge:
const agx::Hinge* hinge = simulation->getConstraint<agx::Hinge>(uuid);
| uuid | - uuid of the Constraint to find |
Definition at line 1936 of file Simulation.h.
References getConstraint().
|
inline |
Definition at line 1584 of file Simulation.h.
|
inline |
Definition at line 1585 of file Simulation.h.
| agx::ConstraintRefSetVector & agxSDK::Simulation::getConstraints | ( | ) |
| const agx::ConstraintRefSetVector & agxSDK::Simulation::getConstraints | ( | ) | const |
| agx::UInt8 agxSDK::Simulation::getContactReductionBinResolution | ( | ) | const |
| agx::UInt agxSDK::Simulation::getContactReductionThreshold | ( | ) | const |
| agx::DynamicsSystem * agxSDK::Simulation::getDynamicsSystem | ( | ) |
Definition at line 1898 of file Simulation.h.
References agx::ref_ptr< T >::get().
| const agx::DynamicsSystem * agxSDK::Simulation::getDynamicsSystem | ( | ) | const |
Definition at line 1893 of file Simulation.h.
References agx::ref_ptr< T >::get().
| agx::Emitter * agxSDK::Simulation::getEmitter | ( | const agx::Name & | name | ) |
Find (linear search) and return an emitter matching the given name.
| name | - name of the emitter to find |
| agx::Emitter * agxSDK::Simulation::getEmitter | ( | const agx::Name & | name | ) | const |
Find (linear search) and return an emitter matching the given name.
| name | - name of the emitter to find |
| agx::Emitter * agxSDK::Simulation::getEmitter | ( | const agx::Uuid & | uuid | ) |
Find (linear search) and return an emitter matching the given uuid.
| uuid | - uuid of the emitter to find |
| const agx::Emitter * agxSDK::Simulation::getEmitter | ( | const agx::Uuid & | uuid | ) | const |
Find (linear search) and return an emitter matching the given uuid.
| uuid | - uuid of the emitter to find |
| agx::EmitterRefVector agxSDK::Simulation::getEmitters | ( | ) |
| agxData::EntityStorage * agxSDK::Simulation::getEmitterStorage | ( | ) |
| bool agxSDK::Simulation::getEnableClearRenderTemporaries | ( | ) | const |
| agx::RigidBodyPtrSetVector & agxSDK::Simulation::getEnabledRigidBodies | ( | ) |
| const agx::RigidBodyPtrSetVector & agxSDK::Simulation::getEnabledRigidBodies | ( | ) | const |
| bool agxSDK::Simulation::getEnableRemoteDebugging | ( | ) | const |
| bool agxSDK::Simulation::getEnableStatistics | ( | ) | const |
| bool agxSDK::Simulation::getEnableStatisticsRendering | ( | ) | const |
| bool agxSDK::Simulation::getEnableWebDebugger | ( | ) | const |
| agxSDK::EnergyManager * agxSDK::Simulation::getEnergyManager | ( | ) | const |
return the energy manager of the system.
| agxSDK::EventListener * agxSDK::Simulation::getEventListener | ( | const agx::Name & | name | ) |
Find and return the first matching named event listener.
| name | - name of the event listener to find |
| const agxSDK::EventListener * agxSDK::Simulation::getEventListener | ( | const agx::Name & | name | ) | const |
Find and return the first matching named event listener.
| name | - name of the event listener to find |
| agxSDK::EventListener * agxSDK::Simulation::getEventListener | ( | const agx::Uuid & | uuid | ) |
Find (linear search) and return the first event listener matching the uuid.
| uuid | - uuid of the event listener to find |
| const agxSDK::EventListener * agxSDK::Simulation::getEventListener | ( | const agx::Uuid & | uuid | ) | const |
Find (linear search) and return the first event listener matching the uuid.
| uuid | - uuid of the event listener to find |
| void agxSDK::Simulation::getEventListeners | ( | EventListenerPtrVector & | eventListeners | ) | const |
Get a vector containing all the registered event listeners.
| const agxCollide::GeometryRefVector & agxSDK::Simulation::getGeometries | ( | ) | const |
| agxCollide::Geometry * agxSDK::Simulation::getGeometry | ( | const agx::Name & | name | ) |
Find (linear search) and return named collision Geometry.
| name | - name of the collision Geometry to find |
| const agxCollide::Geometry * agxSDK::Simulation::getGeometry | ( | const agx::Name & | name | ) | const |
Find (linear search) and return named collision Geometry.
| name | - name of the collision Geometry to find |
| agxCollide::Geometry * agxSDK::Simulation::getGeometry | ( | const agx::Uuid & | uuid | ) |
Find (linear search) and return a geometry matching the given uuid.
| uuid | - uuid of the collision Geometry to find |
| const agxCollide::Geometry * agxSDK::Simulation::getGeometry | ( | const agx::Uuid & | uuid | ) | const |
Find (linear search) and return a geometry matching the given uuid.
| uuid | - uuid of the collision Geometry to find |
| agx::GravityField * agxSDK::Simulation::getGravityField | ( | ) |
| const agx::GravityField * agxSDK::Simulation::getGravityField | ( | ) | const |
| agx::Component * agxSDK::Simulation::getHeader | ( | ) |
| agx::Journal * agxSDK::Simulation::getJournal | ( | ) |
| const agx::Journal * agxSDK::Simulation::getJournal | ( | ) | const |
| agx::Material * agxSDK::Simulation::getMaterial | ( | const agx::Name & | materialName | ) |
| const agx::Material * agxSDK::Simulation::getMaterial | ( | const agx::Name & | materialName | ) | const |
| agx::Material * agxSDK::Simulation::getMaterial | ( | const agx::Uuid & | uuid | ) |
| MaterialManager * agxSDK::Simulation::getMaterialManager | ( | ) |
| const MaterialManager * agxSDK::Simulation::getMaterialManager | ( | ) | const |
| agx::MergedBody * agxSDK::Simulation::getMergedBody | ( | agx::UInt | i | ) | const |
| agx::MergedBody * agxSDK::Simulation::getMergedBody | ( | const agx::Name & | name | ) |
Find (linear search) and return named MergedBody.
| name | - name of the body to find |
| const agx::MergedBody * agxSDK::Simulation::getMergedBody | ( | const agx::Name & | name | ) | const |
Find (linear search) and return named MergedBody.
| name | - name of the body to find |
| agx::MergedBody * agxSDK::Simulation::getMergedBody | ( | const agx::Uuid & | uuid | ) |
Find (linear search) and return a pointer to a MergedBody with the given uuid.
| uuid | - uuid of the requested rigid body |
| const agx::MergedBody * agxSDK::Simulation::getMergedBody | ( | const agx::Uuid & | uuid | ) | const |
Find (linear search) and return a pointer to a MergedBody with the given uuid.
| uuid | - uuid of the requested rigid body |
| agxSDK::MergeSplitHandler * agxSDK::Simulation::getMergeSplitHandler | ( | ) | const |
Merge split handler is an object that enables performance boosts by merging rigid bodies together which results in fewer rigid bodies for the solver to solve for.
| agx::UInt agxSDK::Simulation::getNumMergedBodies | ( | ) | const |
| agx::UInt agxSDK::Simulation::getNumTerrains | ( | ) | const |
| agx::ObserverFrame * agxSDK::Simulation::getObserver | ( | const agx::Name & | name | ) |
Find (linear search) and return named ObserverFrame.
| name | - name of the observer to find |
| const agx::ObserverFrame * agxSDK::Simulation::getObserver | ( | const agx::Name & | name | ) | const |
Find (linear search) and return named ObserverFrame.
| name | - name of the observer to find |
| agx::ObserverFrame * agxSDK::Simulation::getObserver | ( | const agx::Uuid & | uuid | ) |
Find (linear search) and return a pointer to a ObserverFrame with the given uuid.
| uuid | - uuid of the requested observer frame |
| const agx::ObserverFrame * agxSDK::Simulation::getObserver | ( | const agx::Uuid & | uuid | ) | const |
Find (linear search) and return a pointer to a ObserverFrame with the given uuid.
| uuid | - uuid of the requested observer frame |
| agx::ObserverFrame * agxSDK::Simulation::getObserverFrame | ( | const agx::Name & | name | ) |
Find (linear search) the first ObserverFrame object in the system that matches the name.
| const agx::ObserverFrame * agxSDK::Simulation::getObserverFrame | ( | const agx::Name & | name | ) | const |
Find (linear search) the first ObserverFrame object in the system that matches the name.
| agx::ObserverFrame * agxSDK::Simulation::getObserverFrame | ( | const agx::Uuid & | uuid | ) |
Find and return a pointer to a ObserverFrame with the given uuid.
| uuid | - uuid of the requested observer frame |
| const agx::ObserverFrame * agxSDK::Simulation::getObserverFrame | ( | const agx::Uuid & | uuid | ) | const |
Find (linear search) and return a pointer to a ObserverFrame with the given uuid.
| uuid | - uuid of the requested observer frame |
| agx::ObserverFrameRefSetVector & agxSDK::Simulation::getObserverFrames | ( | ) |
| const agx::ObserverFrameRefSetVector & agxSDK::Simulation::getObserverFrames | ( | ) | const |
| agxSDK::SimulationParameter * agxSDK::Simulation::getParameter | ( | const agx::Name & | name | ) |
| const agxSDK::SimulationParameterRefVector & agxSDK::Simulation::getParameters | ( | ) | const |
| agx::ParticleEmitterRefVector agxSDK::Simulation::getParticleEmitters | ( | ) |
| agx::ParticleSystem * agxSDK::Simulation::getParticleSystem | ( | ) | const |
| agx::ParticleSystemRefVector & agxSDK::Simulation::getParticleSystems | ( | ) |
| const agx::ParticleSystemRefVector & agxSDK::Simulation::getParticleSystems | ( | ) | const |
| agxSDK::PickHandler * agxSDK::Simulation::getPickHandler | ( | ) |
| const agxSDK::PickHandler * agxSDK::Simulation::getPickHandler | ( | ) | const |
| agxPlot::System * agxSDK::Simulation::getPlotSystem | ( | ) | const |
| bool agxSDK::Simulation::getPreIntegratePositions | ( | ) | const |
| agx::Real agxSDK::Simulation::getProfilingFrequency | ( | ) | const |
| agx::Real agxSDK::Simulation::getRemoteDebuggingTimeStep | ( | ) | const |
| agxRender::RenderManager * agxSDK::Simulation::getRenderManager | ( | ) |
| const agxRender::RenderManager * agxSDK::Simulation::getRenderManager | ( | ) | const |
| agx::RigidBodyRefVector & agxSDK::Simulation::getRigidBodies | ( | ) |
| const agx::RigidBodyRefVector & agxSDK::Simulation::getRigidBodies | ( | ) | const |
| agx::RigidBody * agxSDK::Simulation::getRigidBody | ( | const agx::Name & | name | ) |
Find (linear search) and return named RigidBody.
| name | - name of the body to find |
| const agx::RigidBody * agxSDK::Simulation::getRigidBody | ( | const agx::Name & | name | ) | const |
Find (linear search) and return named RigidBody.
| name | - name of the body to find |
| agx::RigidBody * agxSDK::Simulation::getRigidBody | ( | const agx::Uuid & | uuid | ) |
Find (linear search) and return a pointer to a RigidBody with the given uuid.
| uuid | - uuid of the requested rigid body |
| const agx::RigidBody * agxSDK::Simulation::getRigidBody | ( | const agx::Uuid & | uuid | ) | const |
Find (linear search) and return a pointer to a RigidBody with the given uuid.
| uuid | - uuid of the requested rigid body |
| ISensorEnvironment * agxSDK::Simulation::getSensorEnvironment | ( | ) | const |
| SimulationSerializer * agxSDK::Simulation::getSerializer | ( | ) |
| const SimulationSerializer * agxSDK::Simulation::getSerializer | ( | ) | const |
| agxSDK::SimulationProxy * agxSDK::Simulation::getSimulationProxy | ( | ) | const |
Internal method.
Proxy of this object used by objects running in parallel and still needs to add/remove things from this simulation.
| SimulationStatisticsListener * agxSDK::Simulation::getSimulationStatisticsListener | ( | ) |
| const SimulationStatisticsListener * agxSDK::Simulation::getSimulationStatisticsListener | ( | ) | const |
| agx::SolveModel * agxSDK::Simulation::getSolveModel | ( | const agx::Name & | name | ) |
| const agx::SolveModelRefVector & agxSDK::Simulation::getSolveModels | ( | ) | const |
Definition at line 1924 of file Simulation.h.
| agx::Solver * agxSDK::Simulation::getSolver | ( | ) |
| const agx::Solver * agxSDK::Simulation::getSolver | ( | ) | const |
| agxCollide::Space * agxSDK::Simulation::getSpace | ( | ) |
Definition at line 1883 of file Simulation.h.
References agx::ref_ptr< T >::get().
| const agxCollide::Space * agxSDK::Simulation::getSpace | ( | ) | const |
Definition at line 1888 of file Simulation.h.
References agx::ref_ptr< T >::get().
| agxSDK::TerrainInstance * agxSDK::Simulation::getTerrain | ( | agx::UInt | i | ) | const |
| i | - index (i < getNumTerrains()) |
i | agxSDK::TerrainManager * agxSDK::Simulation::getTerrainManager | ( | ) | const |
| agxPlot::DataSeries * agxSDK::Simulation::getTimeDataSeries | ( | ) | const |
A data series that contains all time stamps of the simulation.
| agx::Real agxSDK::Simulation::getTimeStamp | ( | ) | const |
Definition at line 1878 of file Simulation.h.
References agx::Clock::getTime().
| agx::Real agxSDK::Simulation::getTimeStep | ( | ) | const |
Definition at line 1903 of file Simulation.h.
| agx::Vec3 agxSDK::Simulation::getUniformGravity | ( | ) | const |
If the current gravity field is not a uniform one (for example PointGravityField), 0,0,0 will be returned.
| agx::TaskGroup * agxSDK::Simulation::getUpdateTask | ( | ) |
| agxWire::Wire * agxSDK::Simulation::getWire | ( | const agx::Name & | name | ) |
Find and return the first matching named wire.
| name | - name of the wire to find |
| const agxWire::Wire * agxSDK::Simulation::getWire | ( | const agx::Name & | name | ) | const |
Find and return the first matching named wire.
| name | - name of the wire to find |
| agxWire::Wire * agxSDK::Simulation::getWire | ( | const agx::Uuid & | uuid | ) |
Find (linear search) and return the first wire matching the uuid.
| uuid | - uuid of the wire to find |
| const agxWire::Wire * agxSDK::Simulation::getWire | ( | const agx::Uuid & | uuid | ) | const |
Find (linear search) and return the first wire matching the uuid.
| uuid | - uuid of the wire to find |
| void agxSDK::Simulation::handleStabiltyReport | ( | const agx::StabilityReport * | stabilityReport | ) |
Internal method.
Handles stability report sent from the solver.
|
static |
| void agxSDK::Simulation::loadSolveModels | ( | const agx::String & | path, |
| bool | clear = false |
||
| ) |
| size_t agxSDK::Simulation::read | ( | const agx::String & | filename, |
| agxSDK::Assembly * | parent = nullptr, |
||
| agx::UInt | selection = READ_DEFAULT |
||
| ) |
Read serialized simulation from the specified file and append to this simulation.
| parent | - If != nullptr, all read objects will be added to this parent too. |
| selection | - Options for reading in. See ReadSelectionMask. |
| size_t agxSDK::Simulation::read | ( | std::istream & | stream, |
| bool | isBinary, | ||
| agxSDK::Assembly * | parent = nullptr, |
||
| agx::UInt | selection = READ_DEFAULT |
||
| ) |
Read serialized simulation from the specified stream.
| stream | - Stream from which serialized data is to be read. |
| isBinary | - if true, it's a binary dataset. |
| parent | - If != nullptr, all read objects will be added to this parent too. |
| selection | - Options for reading in. See ReadSelectionMask. |
| void agxSDK::Simulation::readStoragePermutations | ( | agxStream::InputArchive & | in, |
| bool | clearStorages = false |
||
| ) |
| bool agxSDK::Simulation::remove | ( | agx::Component * | subComponent | ) |
Remove a sub component from Simulation.
| subComponent | - The component to be removed |
| bool agxSDK::Simulation::remove | ( | agx::Constraint * | constraint | ) |
Remove a constraint from the simulation.
| constraint | - The constraint to be removed. |
| bool agxSDK::Simulation::remove | ( | agx::ContactMaterial * | material | ) |
Remove an explicit contact material from the set of existing ContactMaterials.
Referenced by agxUtil::GeneralContactEventListener< T >::separation().
| bool agxSDK::Simulation::remove | ( | agx::Emitter * | emitter, |
| bool | removeGeometries = true |
||
| ) |
Remove an emitter from the system.
| emitter | - The emitter to be removed. |
| removeGeometries | - true if the emitter geometry should be removed from the simulation, false otherwise. (Default: true) |
| bool agxSDK::Simulation::remove | ( | agx::Interaction * | interaction | ) |
Remove an Interaction from the Simulation.
| interaction | - The object to be removed |
| bool agxSDK::Simulation::remove | ( | agx::Material * | material | ) |
Remove a specified material from the simulation.
| bool agxSDK::Simulation::remove | ( | agx::MergedBody * | mergedBody | ) |
Removes the merged body from this simulation.
| mergedBody | - merged body to remove |
| bool agxSDK::Simulation::remove | ( | agx::ObserverFrame * | observerFrame | ) |
Remove a ObserverFrame to the Simulation.
| observerFrame | the frame to remove |
| bool agxSDK::Simulation::remove | ( | agx::ParticleContactSensor * | sensor | ) |
Remove a particle contact sensor from the system.
| sensor | - The particle contact sensor to be removed. |
| bool agxSDK::Simulation::remove | ( | agx::ParticleSystem * | particleSystem | ) |
Remove a particle system from the simulation.
| particleSystem | - The particle system to be removed. |
| bool agxSDK::Simulation::remove | ( | agx::RigidBody * | body, |
| bool | removeGeometries = true |
||
| ) |
Remove a body from the Simulation, the body will be disabled!
| body | - The body that should be removed |
| removeGeometries | - If true, any geometries associated with this body should also silently be removed. If the removal of any of these geometries fails, it is not reported in the return value of this method. |
| bool agxSDK::Simulation::remove | ( | agxCollide::Geometry * | geometry | ) |
Remove geometry from collision space.
Any subsequent call to Space::testGeometryOverlap will not contain this geometry.
Space will keep one reference to the geometry until next call to Space::update() where it will be released. Also The Geometry will also possibly be present in the list of contacts and BroadPhase overlaps. This will also be cleaned up after next call to Space::update()
| bool agxSDK::Simulation::remove | ( | agxControl::Action * | action | ) |
Remove an action from this simulation.
| action | - action to remove |
| bool agxSDK::Simulation::remove | ( | agxControl::Operation * | operation | ) |
Remove an operation from this simulation.
| operation | - operation to remove |
| bool agxSDK::Simulation::remove | ( | agxSDK::Assembly * | assembly, |
| bool | removeAllEntries = true |
||
| ) |
Remove an assembly from the simulation.
| removeAllEntries | - If true (default) it will also remove all its contained entries, such as geometries, bodies, EventListeners, sub-assemblies and constraints |
| bool agxSDK::Simulation::remove | ( | agxSDK::EventListener * | listener | ) |
Remove a Event listener.
| listener | The listener to remove. |
| true | if successfully removed (and part of Simulation before). |
| bool agxSDK::Simulation::remove | ( | agxSDK::SimulationParameter * | parameter | ) |
Remove a parameter from the simulation configuration interface.
| bool agxSDK::Simulation::remove | ( | agxSDK::TerrainInstance * | terrain | ) |
Remove terrain (agxTerrain::Terrain) instance from this simulation.
| terrain | - terrain to remove |
| bool agxSDK::Simulation::remove | ( | agxSDK::TerrainToolInstance * | toolInstance | ) |
Remove a terrain tool instance from this simulation.
| toolInstance | - terrain tool instance to remove |
| bool agxSDK::Simulation::remove | ( | agxStream::Serializable * | object | ) |
Remove an object as a serializable object.
Might be any of the above classes having an add method: Geometry, RigidBody etc.
| successfully removed? |
| bool agxSDK::Simulation::removeEventListener | ( | agxSDK::EventListener * | listener | ) |
Remove the specified listener.
The listener will get a call to its removeNotification method if removal was successful.
| bool agxSDK::Simulation::removeRestoreListener | ( | agxStream::RestoreListener * | listener | ) |
Remove an existing listener in a simulation.
| listener | The listener to be removed |
| void agxSDK::Simulation::removeSolveModel | ( | agx::SolveModel * | model | ) |
| void agxSDK::Simulation::renderComponents | ( | ) |
| void agxSDK::Simulation::resetTaskTimers | ( | ) |
Reset profiling timers.
| void agxSDK::Simulation::restore | ( | agxStream::InputArchive & | in, |
| agxSDK::Assembly * | parent = nullptr, |
||
| agx::UInt | selection = READ_DEFAULT, |
||
| bool | replaceUsingCache = false |
||
| ) |
Read data from the input archive and add to the simulation.
| in | - Archive to read from |
| parent | - if != nullptr, all items will also be added to this assembly |
| selection | - Options for reading in. See ReadSelectionMask. |
| replaceUsingCache | - Replace current state by archive, but reuse matching objects that exist in both representations |
| bool agxSDK::Simulation::restore | ( | const agx::String & | filename, |
| agx::UInt | selection = READ_DEFAULT |
||
| ) |
Restore state from a serialized scene file.
Matching object UUIDs, so any object present in both current simulation and the serialized scene will retain the current object.
| bool agxSDK::Simulation::restore | ( | std::istream & | stream, |
| bool | isBinary, | ||
| agx::UInt | selection = READ_DEFAULT |
||
| ) |
| void agxSDK::Simulation::sendSimulation | ( | ) |
Send the simulation to the remote debugger (if enabled)
| void agxSDK::Simulation::setActionManagerTimeStamp | ( | const agx::TimeStamp & | time | ) |
Truncating an AGX simulation does not reset the timestamp in the action manager.
This function allows for resetting the action manager timestamp from Simulation.h
| void agxSDK::Simulation::setContactReductionBinResolution | ( | agx::UInt8 | binResolution | ) |
Specify the bin resolution used when evaluating contacts for reduction between body-body contacts.
(Body-body contact reduction is not enabled by default, see settings in ContactMaterial to enable it). A high value will keep more contacts, lower will result in more aggressive reduction. Commonly a value of 2-3 will give good results. Default is 3. Values from 1 to 10 are valid.
| binResolution | - parameter to ContactReducer. |
| void agxSDK::Simulation::setContactReductionThreshold | ( | agx::UInt | threshold | ) |
Specify the minimum number of contacts between two bodies required to execute contact reduction.
Default value is 3 contacts.
| threshold | - Set the lower bound threshold for number of contact points in a body-body rigid body contact in order run contact reduction on it. |
| void agxSDK::Simulation::setDynamicsSystem | ( | agx::DynamicsSystem * | system | ) |
Replace the current DynamicsSystem with system.
| void agxSDK::Simulation::setEnableClearRenderTemporaries | ( | bool | enable | ) |
| void agxSDK::Simulation::setEnableRemoteDebugging | ( | bool | flag, |
| agx::Int16 | port = -1, |
||
| bool | useCompression = false, |
||
| bool | waitForSynchronization = true |
||
| ) |
Enable/Disable remote debugging.
| flag | - If true, a server for remote debugging will be created |
| port | - Socket port. If -1, the default port will be used. |
| useCompression | - If true the data will be compressed before sent to the remote listener |
| waitForSynchronization | - If true the server will wait for the client to ask for more data before it sends another frame |
| void agxSDK::Simulation::setEnableSimulationStatisticsListener | ( | bool | flag | ) |
Enable/disable the listener that collects all statistics data from the simulation.
Disabling will remove/delete the previous listener, hence no data will be stored. Make sure you update any external pointers to the SimulationStatisticsListener retrieved through the getSimulationStatisticsListener() method.
| void agxSDK::Simulation::setEnableStatistics | ( | bool | enable | ) |
Enable/disable statistics logging to disk.
This will also toggle the agx::Statistics::instance()->setEnable() which will control whether statistics data is logged at all.
| void agxSDK::Simulation::setEnableStatisticsRendering | ( | bool | enable | ) |
| enable | - if true, the rendering of statistics will be dispatched to the agxRender::RenderManager |
| void agxSDK::Simulation::setEnableWebDebugger | ( | bool | flag, |
| agx::UInt16 | port = 9001 |
||
| ) |
Enable/Disable the Web debugger simulation WebSocket API.
| flag | - If true the webdebugger WebSocket server will be started. |
| port | - WebSocket port to which the client should connect to receive data. |
| void agxSDK::Simulation::setGravityField | ( | agx::GravityField * | gravityField | ) |
Set the GravityField model used in gravity calculations.
Default is UniformGravityField.
| gravityField | - The model used. |
| void agxSDK::Simulation::setMainWorkThread | ( | agx::Thread * | thread | ) |
Specify which is the main working thread for the Simulation.
All calls from event listeners (StepEventListener::pre() etc.) will come from this thread.
| thread | - A pointer to the thread that should be the main thread. |
| void agxSDK::Simulation::setPickHandler | ( | agxSDK::PickHandler * | pickHandler | ) |
Assign interface for pick handler.
| pickHandler | - pick handler interface |
| void agxSDK::Simulation::setPlotSystem | ( | agxPlot::System * | plotSystem | ) |
Replace the current PlotSystem with plotSystem.
| void agxSDK::Simulation::setPreIntegratePositions | ( | bool | flag | ) |
Set true to integrate positions at the start of the timestep rather than at the end.
| void agxSDK::Simulation::setProfilingFrequency | ( | agx::Real | frequency | ) |
Specify the frequency for performance profiling.
| void agxSDK::Simulation::setRemoteDebuggingTimeStep | ( | agx::Real | timeStep | ) |
Sets the time step for remote debugging.
Should be a multiple of the simulation time step. If timeStep=0, then the simulation time step will be used.
| void agxSDK::Simulation::setSensorEnvironment | ( | ISensorEnvironment * | environment | ) |
Assign new sensor environment to this simulation, nullptr to remove the current environment.
If an environement already exist, and environment is valid, the previous environment will be removed.
| environment | - new sensor enviroment for this simulation, nullptr to remove the current. |
| void agxSDK::Simulation::setSerializer | ( | SimulationSerializer * | serializer | ) |
Replace the current SimulationSerializer with a new instance.
| void agxSDK::Simulation::setSpace | ( | agxCollide::Space * | space | ) |
Replace the current Collision space with space.
| void agxSDK::Simulation::setStatisticsInterval | ( | agx::Real | interval | ) |
| interval | - specifies the interval in seconds for writing statistics data down to disk |
| void agxSDK::Simulation::setStatisticsPath | ( | const agx::String & | path | ) |
Specify the path to a file where the statistics information will be written when enabled.
| path | - The path to a filename into which statistics information will be written. |
| void agxSDK::Simulation::setTimeStamp | ( | agx::TimeStamp | t | ) |
Set the timestamp for the simulation (and the DynamicsSystem)
| t | - New timestamp |
| bool agxSDK::Simulation::setTimeStep | ( | agx::Real | timeStep | ) |
Sets the time step determined by the TimeGovernor in the DynamicsSystem.
| timeStep | - The new time step. |
| bool agxSDK::Simulation::setUniformGravity | ( | const agx::Vec3 & | g | ) |
Set the uniform gravity.
If a non-uniform gravity field is currently used (for example PointGravityField), this method will return false and will not change anything. If this is the case, and you want a uniform field, you need to create a uniform gravity field: sim->setGravityField(new agx::UniformGravityField(g))
| g | - Gravity vector |
| void agxSDK::Simulation::stepForward | ( | ) |
Take one step forward in the simulation.
Length of time step is determined by the TimeGovernor in the DynamicsSystem
| agx::TimeStamp agxSDK::Simulation::stepTo | ( | agx::TimeStamp | t | ) |
Step the simulation forward 1 or more time steps in time until we get to the time t.
The length of time step is determined by the TimeGovernor in the DynamicsSystem.
| void agxSDK::Simulation::store | ( | agxStream::OutputArchive & | archive | ) | const |
Save this simulation to the output archive.
| archive | - Archive associated to a stream to which the data will be written. |
| bool agxSDK::Simulation::triggerEvent | ( | const GuiEvent & | e | ) |
Execute a GuiEvent.
| void agxSDK::Simulation::updateActionManager | ( | ) |
Internal method.
Update the internal active ActionManager in the simulation
| void agxSDK::Simulation::updateRenderManager | ( | ) |
Make an explicit call to RenderManager::update() to update the debug rendering information.
| void agxSDK::Simulation::updateStatisticsRenderData | ( | ) |
Make an explicit call to RenderManager::update() to update the statistics rendering information.
| size_t agxSDK::Simulation::write | ( | const agx::String & | filename | ) | const |
Serialize the simulation to the specified file.
| filename | - Name of file to which the simulation will be written |
| size_t agxSDK::Simulation::write | ( | std::ostream & | stream, |
| bool | binary | ||
| ) | const |
Serialize the simulation to the specified file.
| stream | - The stream to which the simulation object will be written |
| binary | - if true, it's a binary dataset. |
| void agxSDK::Simulation::writeStatisticsFiles | ( | const agx::String & | directoryPath = "Statistics", |
| bool | taskProfile = true, |
||
| bool | threadTimeline = true, |
||
| const agx::Vector< agx::String > & | timelineFormats = agx::Vector< agx::String >(), |
||
| bool | bufferAllocations = true |
||
| ) |
| void agxSDK::Simulation::writeStoragePermutations | ( | agxStream::OutputArchive & | archive | ) | const |
| ConstraintEvent agxSDK::Simulation::addConstraintEvent |
Definition at line 146 of file Simulation.h.
| ContactMaterialEvent agxSDK::Simulation::addContactMaterialEvent |
Definition at line 152 of file Simulation.h.
| GeometryEvent agxSDK::Simulation::addGeometryEvent |
Definition at line 140 of file Simulation.h.
| MaterialEvent agxSDK::Simulation::addMaterialEvent |
Definition at line 149 of file Simulation.h.
| RigidBodyEvent agxSDK::Simulation::addRigidBodyEvent |
Definition at line 143 of file Simulation.h.
| JournalAttachEvent agxSDK::Simulation::journalAttachedEvent |
Definition at line 155 of file Simulation.h.
| ConstraintEvent agxSDK::Simulation::removeConstraintEvent |
Definition at line 147 of file Simulation.h.
| ContactMaterialEvent agxSDK::Simulation::removeContactMaterialEvent |
Definition at line 153 of file Simulation.h.
| GeometryEvent agxSDK::Simulation::removeGeometryEvent |
Definition at line 141 of file Simulation.h.
| MaterialEvent agxSDK::Simulation::removeMaterialEvent |
Definition at line 150 of file Simulation.h.
| RigidBodyEvent agxSDK::Simulation::removeRigidBodyEvent |
Definition at line 144 of file Simulation.h.