DtVreParachuteActuator extends the base parachute actuator to provide VR-Engage specific functionality. It supports both stowed and deployed states, forward movement, steering control, and simulates oxygen consumption at high altitudes or in vehicles with open cargo doors. The actuator manages the physics of parachute deployment and descent.
Uses Descriptor Type: DtVreParachuteActuatorDescriptor
#include <vreParachuteActuator.h>
|
| static DtSimComponent * | creator (const DtString &name, DtLocalObject *owner, DtSimulationServices *simManager, DtComponentDescriptor *desc=0, DtReaderWriterRegistry *parentRegistry=0) |
| |
◆ DtVreParachuteActuator() [1/3]
| makVre::DtVreParachuteActuator::DtVreParachuteActuator |
( |
const DtString & | name, |
|
|
DtLocalObject * | owner, |
|
|
DtSimulationServices * | simManager, |
|
|
DtComponentDescriptor * | desc = 0, |
|
|
DtReaderWriterRegistry * | parentRegistry = 0 ) |
Constructor.
- Parameters
-
| name | The name of this component |
| owner | The local object that owns this component |
| simManager | The simulation services manager |
| desc | Component descriptor with configuration parameters |
| parentRegistry | Optional parent registry for reader/writer functionality |
Creates a new parachute actuator component with the specified parameters.
Referenced by DtVreParachuteActuator(), and operator=().
◆ ~DtVreParachuteActuator()
| virtual makVre::DtVreParachuteActuator::~DtVreParachuteActuator |
( |
| ) |
|
|
overridevirtual |
Virtual destructor.
Cleans up resources used by the parachute actuator component, removing process state from process state manager before deleting it.
◆ DtVreParachuteActuator() [2/3]
| makVre::DtVreParachuteActuator::DtVreParachuteActuator |
( |
| ) |
|
|
private |
Default constructor (not implemented)
Default constructor is private and not implemented to prevent creation of instances without proper initialization.
◆ DtVreParachuteActuator() [3/3]
Copy constructor (not implemented)
Copy constructor is private and not implemented to prevent copy construction.
References DtVreParachuteActuator().
◆ type()
| virtual const char * makVre::DtVreParachuteActuator::type |
( |
| ) |
const |
|
overridevirtual |
to get access to the entity's localStateRepository, which this component will update, and then connect to the controller's ports.
Gets the type identifier for this component
- Returns
- String identifying the component type (DtVreParachuteActuatorType)
Implements the DtSimComponent::type() method to return the type identifier for this component.
◆ tick()
| virtual void makVre::DtVreParachuteActuator::tick |
( |
| ) |
|
|
overridevirtual |
Updates the actuator state each simulation frame.
Processes parachute simulation logic each simulation frame, updating position, orientation, and velocity based on the parachute state (stowed or deployed). Also handles oxygen usage and updates any hand items.
◆ creator()
| static DtSimComponent * makVre::DtVreParachuteActuator::creator |
( |
const DtString & | name, |
|
|
DtLocalObject * | owner, |
|
|
DtSimulationServices * | simManager, |
|
|
DtComponentDescriptor * | desc = 0, |
|
|
DtReaderWriterRegistry * | parentRegistry = 0 ) |
|
static |
Factory method to create a new instance of this component.
- Parameters
-
| name | The name for the new component |
| owner | The local object that will own this component |
| simManager | The simulation services manager |
| desc | Optional component descriptor |
| parentRegistry | Optional parent registry for reader/writer functionality |
- Returns
- Pointer to the newly created component
Static factory method used by the component creation system to instantiate new instances of this component type.
◆ useOxygen()
| virtual void makVre::DtVreParachuteActuator::useOxygen |
( |
| ) |
|
|
protectedvirtual |
Simulates oxygen consumption in high-altitude conditions.
Simulates the use of oxygen when the entity is above a certain altitude and falling, or when inside a vehicle with an open cargo door. This affects the remaining oxygen supply for the entity, which can impact behavior when oxygen is depleted.
◆ isCargoDoorOpen()
| virtual bool makVre::DtVreParachuteActuator::isCargoDoorOpen |
( |
DtSimObjectReference | entity | ) |
const |
|
protectedvirtual |
Checks if the cargo door on a specified entity is open.
- Parameters
-
| entity | Reference to the entity to check |
- Returns
- True if the cargo door is open, false otherwise
Determines whether the cargo door on the specified entity is in the open position. This affects oxygen usage when the entity is inside a vehicle.
◆ checkFallingApplicable()
| virtual bool makVre::DtVreParachuteActuator::checkFallingApplicable |
( |
bool & | dataAvailable | ) |
|
|
overrideprotectedvirtual |
Determines if falling behavior should be applied.
- Parameters
-
| dataAvailable | Output parameter indicating if required data is available |
- Returns
- True if falling behavior should be applied, false otherwise
Checks various conditions to determine whether falling behavior should be applied to the entity in the current state. Sets the dataAvailable parameter to indicate if all required data was available for the check.
◆ calculateOrientation()
| virtual void makVre::DtVreParachuteActuator::calculateOrientation |
( |
const DtDcm & | oldLocalOrientation, |
|
|
const DtVector & | newBodyRotationRates, |
|
|
DtDcm & | newLocalOrientation ) |
|
overrideprotectedvirtual |
Calculates new orientation based on rotation rates.
- Parameters
-
| oldLocalOrientation | The current orientation matrix |
| newBodyRotationRates | The rotation rates in body coordinates |
| newLocalOrientation | Output parameter for the new orientation matrix |
Calculates a new orientation matrix based on the previous orientation and the specified rotation rates. The calculation takes into account the dynamics of parachute movement and steering inputs.
◆ updateHandItem()
| virtual void makVre::DtVreParachuteActuator::updateHandItem |
( |
| ) |
|
|
overrideprotectedvirtual |
Updates the entity's hand item based on parachute state.
Updates the item in the entity's hands based on the current state of the parachute (stowed or deployed). This ensures that the entity is visually represented with the appropriate items during parachute operation.
◆ operator=()
Assignment operator (not implemented)
- Returns
- Reference to this object
Assignment operator is private and not implemented to prevent assignment.
References DtVreParachuteActuator().
◆ myDescriptor
Pointer to the parachute actuator descriptor.
Contains configuration parameters for the parachute actuator, such as deployment altitude, descent rate, and steering sensitivity.
◆ myOxygenStatePropertyName
| const std::string makVre::DtVreParachuteActuator::myOxygenStatePropertyName = "Oxygen" |
|
protected |
Name of the property representing the entity's oxygen state.
This constant string holds the property name used to access or update the oxygen state of the entity within the simulation.
◆ myLastKnownFloorHeight
| double makVre::DtVreParachuteActuator::myLastKnownFloorHeight |
|
protected |
Last known height of the ground/floor beneath the entity.
Tracks the last known height of the ground or floor beneath the entity, used for determining landing conditions and altitude-related behaviors.
The documentation for this class was generated from the following file: