VR-Forces 4.1 Class Documentation
Functions | Variables
railAStarNode.h File Reference

Go to the source code of this file.

Functions

DtRailAStarNode (const DtPoint &point, double cost, DtRailPathPlanner *pathPlanner)
 This class is used by the DtRailPathPlanner class.
*virtual ~DtRailAStarNode ()
*****virtual bool expand (double valueLimit=1e255)
 Expands this branch of the tree until there is no A* value less.
****virtual void generateChildNodes ()
 Generates new nodes for the immediate children of this node.
**virtual void sortNodes ()
*virtual bool generateOpenEdges (DtNetworkNode *node)
**virtual void generateNewNode (DtNetworkNode *node, double cost, DtNetworkEdge *edge,*DtNetworkEdge::DtTraversalDirection direction)
*virtual void removeDeadEnds ()
**virtual double aStarValue () const
**virtual const DtPointpoint ()
**virtual bool deadEnd ()
****virtual bool visited ()
 Check if this node has been marked as visited.
***virtual void markVisited ()
 Mark this node as visited.
**virtual void setApproachVector (const DtPoint &approachVector)
****virtual double turningCost (const DtPoint &destination)
 Returns the cost to turn from the approach vector of this node.
****virtual void postSolution ()
 Posts the solution route from the entry edge to the goal edge defined in.
**virtual void setHostEdge (DtNetworkEdge *edge)
*virtual DtNetworkEdgehostEdge ()
**virtual void setTraversalDirection (DtNetworkEdge::DtTraversalDirection direction)
*virtual
DtNetworkEdge::DtTraversalDirection 
traversalDirection () const
*virtual void addNode (DtRailAStarNode *node, std::list< DtRailAStarNode * > &list)

Variables

**DtPoint myPoint
*DtRailPathPlanner * myPathPlanner
*double myCost
*double myAStarValue
*bool myDeadEnd
*bool myExpanded
**DtPoint myApproachVector
 normalized vector indicating the direction this node was approached from
***std::list< DtNetworkEdge * > myOpenEdges
 List of connecting edges for this node. These are used to generate the children.
**std::list< DtRailAStarNode * > myNodeSet
 Node set sorted by cost.
**DtNetworkEdgemyHostEdge
**DtNetworkEdge::DtTraversalDirection myEdgeDirection

Function Documentation

* DtRailAStarNode ( const DtPoint point,
double  cost,
DtRailPathPlanner *  pathPlanner 
)

This class is used by the DtRailPathPlanner class.

It represents a single node in the A* search algorithm and is capable of expanding itself to create the adjacent nodes.

* virtual ~DtRailAStarNode ( )
virtual
* * * * * virtual bool expand ( double  valueLimit = 1e255)
virtual

Expands this branch of the tree until there is no A* value less.

than the specified value limit, or until a path to the goal is found. Returns true if the goal is found, otherwise false.

* * * * virtual void generateChildNodes ( )
virtual

Generates new nodes for the immediate children of this node.

This will call calculateCost() for each new node – expensive!

* * virtual void sortNodes ( )
virtual
* virtual bool generateOpenEdges ( DtNetworkNode node)
virtual
* * virtual void generateNewNode ( DtNetworkNode node,
double  cost,
DtNetworkEdge edge,
*DtNetworkEdge::DtTraversalDirection  direction 
)
virtual
* virtual void removeDeadEnds ( )
virtual
* * virtual double aStarValue ( ) const
virtual
* * virtual const DtPoint& point ( )
virtual
* * virtual bool deadEnd ( )
virtual
* * * * virtual bool visited ( )
virtual

Check if this node has been marked as visited.

* * * virtual void markVisited ( )
virtual

Mark this node as visited.

* * virtual void setApproachVector ( const DtPoint approachVector)
virtual
* * * * virtual double turningCost ( const DtPoint destination)
virtual

Returns the cost to turn from the approach vector of this node.

toward the destination.

* * * * virtual void postSolution ( )
virtual

Posts the solution route from the entry edge to the goal edge defined in.

the path planner.

* * virtual void setHostEdge ( DtNetworkEdge edge)
virtual
* virtual DtNetworkEdge* hostEdge ( )
virtual
* * virtual void setTraversalDirection ( DtNetworkEdge::DtTraversalDirection  direction)
virtual
* virtual DtNetworkEdge::DtTraversalDirection traversalDirection ( ) const
virtual
* virtual void addNode ( DtRailAStarNode node,
std::list< DtRailAStarNode * > &  list 
)
protectedvirtual

Variable Documentation

* * DtPoint myPoint
* DtRailPathPlanner* myPathPlanner
* double myCost
* double myAStarValue
* bool myDeadEnd
* bool myExpanded
* * DtPoint myApproachVector

normalized vector indicating the direction this node was approached from

* * * std::list<DtNetworkEdge*> myOpenEdges

List of connecting edges for this node. These are used to generate the children.

nodes to be expanded

* * std::list<DtRailAStarNode*> myNodeSet

Node set sorted by cost.

* * DtNetworkEdge* myHostEdge

Document ID: Generated on Tue Jan 29 18:21:16 EST 2013 from SVN revision 123193
Copyright © 2005-2013 VT MÄK Inc. All Rights Reserved (www.mak.com)