47 #ifndef __VEL_COMP_NAV_MESH_H__
48 #define __VEL_COMP_NAV_MESH_H__
63 class NavMeshVCContext;
120 void setHeadingDeviation(
float angle );
154 virtual Task * getTask();
201 virtual std::string getUIText(
const std::string & indent=
"" )
const;
227 void drawNavMesh()
const;
240 void drawNodeIDs()
const;
278 virtual const char *
name()
const {
return "nav_mesh"; }
288 return "Provides a preferred velocity which is derived from a path along a "\
289 "polygonally decomposed representation of the traversable space (a navigaiton mesh).";
323 virtual bool setFromXML(
VelComponent * vc, TiXmlElement * node,
const std::string & behaveFldr )
const;
337 #endif // __VEL_COMP_NAV_MESH_H__
SDL_Event SDL_Event
Forward declaration of the SDL event type.
Definition: Context.h:53
The core namespace. All elements of Menge are contained in this namespace.
Definition: AgentGenerator.cpp:43
VelComponent * instance() const
Create an instance of this class's velocity component.
Definition: VelCompNavMesh.h:303
void setNavMeshLocalizer(const NavMeshLocalizerPtr &nml)
Sets the navigation mesh localizer pointer.
Definition: VelCompNavMesh.h:113
Sets up the proper compiler directives for platform and dll export/import.
Data structure responsible for knowing where on the navigation mesh each agent is located...
A class for parsing the xml description of a velocity component and instantiating particular instance...
Definition: VelComponentFactory.h:60
The base, abstract class defining goals.
Definition: Goal.h:110
The base class for computing an agent's preferred velocity.
Definition: VelComponent.h:112
NavMeshVelComponent * _vc
The underlying finite state machine velocity component.
Definition: VelCompNavMesh.h:245
virtual const char * description() const
A description of the velocity component.
Definition: VelCompNavMesh.h:287
A velocity component that returns a preferred velocity whose direction and preferred speed are comput...
Definition: VelCompNavMesh.h:73
virtual const char * name() const
The name of the velocity component.
Definition: VelCompNavMesh.h:278
float _headingDevCos
The cosine of the heading deviation angular threshold. This detects when the angle of approach deviat...
Definition: VelCompNavMesh.h:164
bool _drawCenters
Visualization flag - controls if polygon centers are drawn.
Definition: VelCompNavMesh.h:250
Defines the result of the context's consideration of user input.
Definition: Context.h:74
The namespace contains the Behavior Finite State Machine (BFSM) definition.
NavMeshLocalizerPtr _localizer
The localizer for the navigation mesh.
Definition: VelCompNavMesh.h:174
Factory for the NavMeshVelComponent.
Definition: VelCompNavMesh.h:263
NavMeshPtr _navMesh
The navigation mesh.
Definition: VelCompNavMesh.h:169
NavMeshLocalizerPtr getLocalizer()
Returns a resource pointer to the underlying navigation mesh localizer.
Definition: VelCompNavMesh.h:106
The definition of how preferred velocity is computed in a state.
Interface for basic FSM task.
Definition: Task.h:110
The definition of a preferred velocity.
Definition: PrefVelocity.h:68
Defines the basic agent properties and functionality that all simulation agents share.
Definition: BaseAgent.h:123
The context for the NavMeshVelComponent.
Definition: VelCompNavMesh.h:182
The factory for parsing xml data and instantiating velocity components.
NavMeshPtr getNavMesh()
Returns a resource pointer to the underlying navigation mesh.
Definition: VelCompNavMesh.h:99
Defines the classes which maintain the navigation mesh data.
size_t _fileNameID
The identifier for the "file_name" string attribute.
Definition: VelCompNavMesh.h:328
bool _drawNodeIDs
Visualizaton flag - controls if polygon ids are drawn.
Definition: VelCompNavMesh.h:255
The definition of a basic UI context for finite state machine velocity components.
void setNavMesh(const NavMeshPtr &nm)
Sets the navigation mesh pointer.
Definition: VelCompNavMesh.h:92
Base context for finite state machine velocity components.
Definition: VelCompContext.h:70
size_t _headingID
The identifier for the "heading_threshold" float attribute.
Definition: VelCompNavMesh.h:333