14 #include <vlpi/disEnums.h>
15 #include <matrix/LibMatrix.h>
64 virtual const char*
type()
const;
72 virtual void useFuel(
double fuelUsed);
73 virtual double fuelLeft()
const;
76 virtual double calculateFuel()
const;
83 virtual void fallFromSky();
107 virtual bool createPSR();
110 virtual void clampFrameRate();
113 virtual void setLanded(
const DtVector& localIntersectionPoint);
116 virtual bool checkFlyingWithoutFuel();
119 virtual void setYawAcceleration();
120 virtual void calculateYawRate();
123 virtual double calculateOneAxisOfOrientation(
const int axis,
const double angleInit,
const double period,
const double portValue,
const double maxAccel,
const double maxRate);
125 virtual void calculatePitchAcceleration();
127 virtual void calculatePitchRate();
130 virtual void calculateRollAcceleration();
131 virtual void calculateRollRate();
133 virtual void checkAndDetachIfNecessary();
139 virtual void calculateOrientation();
142 virtual void calculateNormalizedBodyVelocity();
145 virtual void calculateLiftAcceleration();
155 virtual double altitudePowerFactor(
const double altitude);
159 virtual void calculateResultantAcceleration();
162 virtual void integrate();
165 virtual void updateRepository();
180 virtual void updateAirspeedToRepository();
183 virtual void updateDisplay();
204 virtual void checkLandedOrCrashed();
217 virtual bool isCrashedIntoGround(
const DtVector& localPosition,
218 DtVector& localIntersectionPoint)
const;
222 virtual void sendDetonation(
const DtVector& geocentricLocation)
const;
229 virtual bool isSubsurface()
const;
239 virtual bool componentInitialized()
const;
243 virtual bool engineOperational()
const;
247 virtual void updateAppearance();
252 virtual double heightAboveGroundSupport()
const;
255 virtual void updateOrderedSpeed();
DtRotaryWingEntityStateRepository * myRotaryWingEntityState
Definition: rotaryWingActuatorComponent.h:274
#define DT_DLL_vrfmodel
This file is used to determine how to build.
Definition: vrfmodelDefines.h:24
DtVrfObject is used to represent any type of simulated object (entities, aggregate, control objects) in a VR-Forces application.
Definition: vrfObject.h:215
DtVector myNormalizedBodyVelocity
Definition: rotaryWingActuatorComponent.h:322
This repository holds all information that is common to all the forms of local rotary wing entities w...
Definition: rotaryWingEntityStateRepository.h:27
DtVector myPreviousGroundClampedPosition
Definition: rotaryWingActuatorComponent.h:331
DtVector myBodyLift
Definition: rotaryWingActuatorComponent.h:323
const DtActuatorComponent & operator=(const DtActuatorComponent &orig)
assignment operator
DtRotaryWingActuatorDescriptor; descriptor for the DtRotaryWingActuatorComponent component.
Definition: rotaryWingActuatorDescriptor.h:27
virtual void preFirstTickInit()
This function can be overridden to initialize a component before it is ticked for the first time...
virtual bool init()
Overridden to cache a pointer to the entity's radio in this class.
DtUpdateRepositoryOutputPortGroup * myUpdateRepositoryOutputPortGroup
Port group used to set what values should be set into the VRF state repository.
Definition: rotaryWingActuatorComponent.h:340
Definition: rotaryWingFlightPSR.h:29
A readable, writable type whose name is the name of a component and that has a list of component name...
Definition: componentDescriptor.h:42
Definition: readerWriterRegistry.h:39
DtVector myBodyAcceleration
Definition: rotaryWingActuatorComponent.h:324
DtVector myRelativeAcceleration
Definition: rotaryWingActuatorComponent.h:325
End User Description: DtActuator is the base class for all actuator model components.
Definition: actuatorComponent.h:48
DtRotaryWingFlightPSR * myProcessState
Container for state data associated with this component.
Definition: rotaryWingActuatorComponent.h:336
DtConstrainedAnalogInputPort * myCollectivePort
Input Port Name: collective Input Port Description: Input Port Range: 0.
Definition: rotaryWingActuatorComponent.h:310
DtReal mySpeedRatioSquared
Definition: rotaryWingActuatorComponent.h:320
DtDcm myBodyToLocalMatrix
Definition: rotaryWingActuatorComponent.h:318
DtInputPortGroup * myRotaryWingControlPortGroup
Input Port Group Name: rotary-wing-control Input Port Group Description:
Definition: rotaryWingActuatorComponent.h:282
The DtPhysicalWorld is the primary interface to and manager of all of the "physical" aspects of the s...
Definition: physicalWorld.h:88
bool myPrintedOutOfFuelMessage
Definition: rotaryWingActuatorComponent.h:332
DtVector myBodyVelocity
Definition: rotaryWingActuatorComponent.h:321
DtReal myAltitudeAGL
Definition: rotaryWingActuatorComponent.h:330
double myHeightAboveGroundSupport
Cached value from heightAboveGroundSupport.
Definition: rotaryWingActuatorComponent.h:343
virtual void tick()
This gives the thread of control to the component.
DtVector myBodyRotationRates
Definition: rotaryWingActuatorComponent.h:316
DtDcm myLocalToBodyMatrix
Definition: rotaryWingActuatorComponent.h:319
DtTaitBryan myOrientation
Definition: rotaryWingActuatorComponent.h:317
virtual bool createPorts()
Called by init.
DtConstrainedAnalogInputPort * myThrottlePort
Input Port Name: throttle Input Port Description: Input Port Range: 0.
Definition: rotaryWingActuatorComponent.h:289
DtAirspeedCalculator * myAirSpeedCalculator
Air Speed Calculator for updating state properties Created in init()
Definition: rotaryWingActuatorComponent.h:347
DtReal mySpeed
Definition: rotaryWingActuatorComponent.h:327
DtConstrainedDualAxisAnalogInputPort * myCyclicPort
Input Port Name: cyclic Input Port Description: Input Port Range: X: -1.
Definition: rotaryWingActuatorComponent.h:296
class DtAirspeedCalculator:
Definition: airSpeedCalculator.h:23
virtual bool createPortGroups()
Called by init.
The DtSimComponent class is the base class for the entire simulation model component hierarchy...
Definition: simComponent.h:67
DtReal myMaxDragAcceleration
Definition: rotaryWingActuatorComponent.h:314
DtVector myRelativeVelocity
Definition: rotaryWingActuatorComponent.h:326
DtConstrainedAnalogInputPort * myPedalPort
Input Port Name: pedal Input Port Description: Input Port Range: -1.
Definition: rotaryWingActuatorComponent.h:303
DtVector myLocalPosition
Definition: rotaryWingActuatorComponent.h:328
The simulation engine is controlled by a single,top-level class called the Simulation Manager...
Definition: simManager.h:103
Definition: terrainDatabase.h:148
DtRotaryWingActuatorComponent is a kinematics-based model of a rotary wing aircraft that converts col...
Definition: rotaryWingActuatorComponent.h:40
DtVector myBodyRotationalAcceleration
Definition: rotaryWingActuatorComponent.h:315
DtVector myLocalOrientation
Definition: rotaryWingActuatorComponent.h:329
DtUpdateRepositoryOutputPortGroup is a data port group of a data consumer that contains methods and p...
Definition: updateRepositoryOutputPortGroup.h:28
DtRotaryWingActuatorDescriptor * myRotaryWingActuatorDescriptor
Definition: rotaryWingActuatorComponent.h:275
virtual const char * type() const =0
Returns a string identifies the class type of component.
double myLastSpeed
myLastSpeed is used in tick() to catch velocity changes while paused, due to setCurrentSpeed() or set...
Definition: rotaryWingActuatorComponent.h:353