35 virtual const char*
type()
const;
41 bool walk(
const DtVector& currentPos,
const double heading,
43 DtVector& newPos,
double& newHeading,
45 bool calcNewDestination(
const DtVector& navCurrentLocation,
double currentHeading,
double minDistance,
bool allowRecurse =
true);
50 void adjustSpeedAndHeading(
const double currentHeading,
const DtVector& directionToDest,
52 double& newHeading,
DtVector& newVel);
56 virtual void groundClamp(
DtVector& localLocation);
60 void avoidCollision(
const DtEntityIdentifier entityId,
const DtVector& localPosition,
const DtVector& localDestination,
const DtVector& localVelocity,
DtVector& newLocalVelocity);
62 void getNearestObjectsSpatialOrganization(
const DtVector& location,
65 void getNearestObjectsPositionsNavMesh(
const DtVector& location, std::vector<DtVector>& objLocations);
71 virtual double adjustHeadingForBoundary(
const DtVector& currentLocation,
double maxMovementDistance,
double currentHeading)
const;
#define DT_DLL_vrfmodel
This file is used to determine how to build.
Definition: vrfmodelDefines.h:24
Test class for providing a fast way for an entity to "walk" along the nav mesh. This is the abstract ...
Definition: persistentPointAlongHeadingQuery.h:11
virtual bool taskVisualizationsActive() const
Returns true if task visualizations are currently active for this component. Default behavior is to r...
DtVector myNavCurrentDestination
Current destination in nav mesh coordinates:
Definition: navMovementActuator.h:85
Definition: navMovementActuator.h:19
virtual void preFirstTickInit()
This function can be overridden to initialize a component before it is ticked for the first time...
const DtNavMovementActuatorDescriptor * myNavMovementActuatorDescriptor
Definition: navMovementActuator.h:93
virtual bool init()
Overridden to cache a pointer to the entity's radio in this class.
DtPersistentPointAlongHeadingQuery * myQuery
Definition: navMovementActuator.h:81
The DtSimObjectReference is a shared pointer that can be used amongst many object for access to the u...
Definition: simObjectReference.h:26
A readable, writable type whose name is the name of a component and that has a list of component name...
Definition: componentDescriptor.h:49
Definition: readerWriterRegistry.h:39
RestrictionMode
Definition: persistentPointAlongHeadingQuery.h:14
std::vector< const DtSimObject * > DtVrfConstObjectUniqueContainer
Used to get the relevant DtSimObjects from the object manager. If a primitive is specified, the function returns a container of DtSimObjects that is guaranteed to contain at least all the DtSimObjects that intersect the specified geometric primitive.
Definition: physicalWorld.h:903
End User Description: DtActuator is the base class for all actuator model components. Developer Description: The DtActuator base class caches a pointer to the entity's radio for convenience. Derived classes may have articulated parts that are configured from the DtActuatorComponentDescriptor's DtSimArtPartDescriptorList. For each articulated part in the list a DtArticulatedPartStateRepository will be created to store the data for the part such as it's location, rotation and so forth. These are created in the entity's DtVrfObjectStateRepository createParts() function. This call creates all the attached parts for all the actuators. These articulated state repositories are managed by the DtAttachmentManager. They are cached by their partType which is the DIS Enumeration describing the part from the disEnums.h file and was specified in the actuator's DtActuatorComponentDescriptor as descriped above. The partType is used as the category of the DtObjectType used to look up articulated parts in the DtAttachementManager. When an actuator needs access to a particular articulated part it looks it up by the part's object type.
Definition: actuatorComponent.h:47
DtMovementLocalObjectFacade myMovementLocalObjectFacade
Definition: navMovementActuator.h:110
DtSimObjectReference myAnchor
The center of the circular areas within which this entity will wander.
Definition: navMovementActuator.h:96
This descriptor will define parameters that will be used to create an approach vector to a landing st...
Definition: navMovementActuatorDescriptor.h:21
This class contains all the data and logic for navigation within a specific area. Nav Data may be loa...
Definition: navArea.h:206
DtPhysicalWorld::DtVrfConstObjectUniqueContainer myObjects
The entities that are obstacles to be avoided; saved from tick to tick until refreshed.
Definition: navMovementActuator.h:107
virtual void tick()
This gives the thread of control to the component. The component is ticked once each simulation from ...
double myHeadingToDestination
Heading from move start position to destination. Only used to select subsequent move direction...
Definition: navMovementActuator.h:92
double myRadiusSquared
The radius beyond which the entity will attempt to move directly toward the anchor point...
Definition: navMovementActuator.h:104
DtVector myNavAnchorPosition
Position of the anchor in nav mesh coordinates. (Assumes anchor does not move.)
Definition: navMovementActuator.h:99
Central access point of all non-object-specific the services and managers that are available for use ...
Definition: simulationServices.h:90
The DtSimComponent class is the base class for the entire simulation model component hierarchy...
Definition: simComponent.h:70
Class providing querying for entities in an extent within the nav mesh. This is the abstract base cla...
Definition: objectsCollectorInExtentQuery.h:11
bool myDestinationValid
Definition: navMovementActuator.h:87
bool myCurrentDestinationIsEdge
Definition: navMovementActuator.h:86
DtVector myCurrentDestination
Definition: navMovementActuator.h:83
DtNavArea * myNavArea
Definition: navMovementActuator.h:80
double myTimeToRefreshObstacleObjects
The next time to refresh myObjects.
Definition: navMovementActuator.h:109
bool myHeadingIsChanging
Whether the actuator commanded a heading change last tick.
Definition: navMovementActuator.h:89
DtObjectsCollectorInExtentQuery * myObjectsQuery
Definition: navMovementActuator.h:82
virtual const char * type() const =0
Returns a string identifies the class type of component. Type values are defined in compTypes...
A locally simulated VRF object. Holds all internal and external data for the object, and provides access to both the current frame and next frame state data for the object. All current frame data is read-only, and next-frame data can be written to. No thread safety guarantees are made on this object during the simulation frame and it should only be accessed by the thread that is simulating the object.
Definition: localObject.h:86