Planeshift
dtPoly Struct Reference

Defines a polyogn within a dtMeshTile object. More...

#include <DetourNavMesh.h>

Public Member Functions

unsigned char getArea () const
 Gets the user defined area id. More...
 
unsigned char getType () const
 Gets the polygon type. (See: dtPolyTypes) More...
 
void setArea (unsigned char a)
 Sets the user defined area id. [Limit: < DT_MAX_AREAS]. More...
 
void setType (unsigned char t)
 Sets the polygon type. (See: dtPolyTypes.) More...
 

Public Attributes

unsigned char areaAndtype
 The bit packed area id and polygon type. More...
 
unsigned int firstLink
 Index to first link in linked list. (Or DT_NULL_LINK if there is no link.) More...
 
unsigned short flags
 The user defined polygon flags. More...
 
unsigned short neis [DT_VERTS_PER_POLYGON]
 Packed data representing neighbor polygons references and flags for each edge. More...
 
unsigned char vertCount
 The number of vertices in the polygon. More...
 
unsigned short verts [DT_VERTS_PER_POLYGON]
 The indices of the polygon's vertices. The actual vertices are located in dtMeshTile::verts. More...
 

Detailed Description

Defines a polyogn within a dtMeshTile object.

Definition at line 102 of file DetourNavMesh.h.

Member Function Documentation

unsigned char dtPoly::getArea ( ) const
inline

Gets the user defined area id.

Definition at line 131 of file DetourNavMesh.h.

unsigned char dtPoly::getType ( ) const
inline

Gets the polygon type. (See: dtPolyTypes)

Definition at line 134 of file DetourNavMesh.h.

void dtPoly::setArea ( unsigned char  a)
inline

Sets the user defined area id. [Limit: < DT_MAX_AREAS].

Definition at line 125 of file DetourNavMesh.h.

void dtPoly::setType ( unsigned char  t)
inline

Sets the polygon type. (See: dtPolyTypes.)

Definition at line 128 of file DetourNavMesh.h.

Member Data Documentation

unsigned char dtPoly::areaAndtype

The bit packed area id and polygon type.

Note
Use the structure's set and get methods to acess this value.

Definition at line 122 of file DetourNavMesh.h.

unsigned int dtPoly::firstLink

Index to first link in linked list. (Or DT_NULL_LINK if there is no link.)

Definition at line 105 of file DetourNavMesh.h.

unsigned short dtPoly::flags

The user defined polygon flags.

Definition at line 115 of file DetourNavMesh.h.

unsigned short dtPoly::neis[DT_VERTS_PER_POLYGON]

Packed data representing neighbor polygons references and flags for each edge.

Each entry represents data for the edge starting at the vertex of the same index. E.g. The entry at index n represents the edge data for vertex[n] to vertex[n+1].

A value of zero indicates the edge has no polygon connection. (It makes up the border of the navigation mesh.)

The information can be extracted as follows:

neighborRef = neis[n] & 0xff; // Get the neighbor polygon reference.
if (neis[n] & #DT_EX_LINK)
{
// The edge is an external (portal) edge.
}

Definition at line 112 of file DetourNavMesh.h.

unsigned char dtPoly::vertCount

The number of vertices in the polygon.

Definition at line 118 of file DetourNavMesh.h.

unsigned short dtPoly::verts[DT_VERTS_PER_POLYGON]

The indices of the polygon's vertices. The actual vertices are located in dtMeshTile::verts.

Definition at line 109 of file DetourNavMesh.h.


The documentation for this struct was generated from the following file: