Recast Navigation
Navigation-mesh Toolset for Games
dtPoly Struct Reference

Defines a polygon within a dtMeshTile object. More...

#include <DetourNavMesh.h>

Public Member Functions

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...
 
unsigned char getArea () const
 Gets the user defined area id. More...
 
unsigned char getType () const
 Gets the polygon type. (See: dtPolyTypes) More...
 

Public Attributes

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

Description

Defines a polygon within a dtMeshTile object.

Member Function Documentation

◆ getArea()

unsigned char dtPoly::getArea ( ) const
inline

Gets the user defined area id.

◆ getType()

unsigned char dtPoly::getType ( ) const
inline

Gets the polygon type. (See: dtPolyTypes)

◆ setArea()

void dtPoly::setArea ( unsigned char  a)
inline

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

◆ setType()

void dtPoly::setType ( unsigned char  t)
inline

Sets the polygon type. (See: dtPolyTypes.)

Member Data Documentation

◆ areaAndtype

unsigned char dtPoly::areaAndtype

The bit packed area id and polygon type.

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

◆ firstLink

unsigned int dtPoly::firstLink

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

◆ flags

unsigned short dtPoly::flags

The user defined polygon flags.

◆ neis

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.
}
unsigned short neis[DT_VERTS_PER_POLYGON]
Packed data representing neighbor polygons references and flags for each edge.
Definition: DetourNavMesh.h:165

◆ vertCount

unsigned char dtPoly::vertCount

The number of vertices in the polygon.

◆ verts

unsigned short dtPoly::verts[DT_VERTS_PER_POLYGON]

The indices of the polygon's vertices.

The actual vertices are located in dtMeshTile::verts.


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