csPolyIndexed Class Reference
[Geometry utilities]
The following class represents a general polygon.
More...
#include <csgeom/polyidx.h>
Public Member Functions | |
int | AddVertex (int i) |
Add a vertex index to the polygon. | |
csPolyIndexed (csPolyIndexed ©) | |
Copy constructor. | |
csPolyIndexed (int start_size=10) | |
Make a new empty polygon. | |
int | GetVertex (int i) const |
Get the specified vertex index. | |
int | GetVertexCount () const |
Get the number of vertices. | |
const int * | GetVertexIndices () const |
Get the array with all vertex indices. | |
int * | GetVertexIndices () |
Get the array with all vertex indices. | |
void | MakeEmpty () |
Initialize the polygon to empty. | |
void | MakeRoom (int new_max) |
Make room for at least the specified number of vertices. | |
csPolyIndexed & | operator= (const csPolyIndexed &other) |
Assignment operator. | |
int & | operator[] (int i) const |
Get the specified vertex index. | |
int & | operator[] (int i) |
Get the specified vertex index. | |
virtual | ~csPolyIndexed () |
Destructor. | |
Protected Attributes | |
int | max_vertices |
int | num_vertices |
int * | vertices_idx |
The vertex indices. |
Detailed Description
The following class represents a general polygon.Vertices are indexed relative to some vertex array instead of directly represented in the polygon. Note that this polygon has no knowledge of the actual values of the vertices. It only keeps the indices. So it can actually be used both for 3D and 2D polygons.
Definition at line 38 of file polyidx.h.
Constructor & Destructor Documentation
csPolyIndexed::csPolyIndexed | ( | int | start_size = 10 |
) |
Make a new empty polygon.
csPolyIndexed::csPolyIndexed | ( | csPolyIndexed & | copy | ) |
Copy constructor.
virtual csPolyIndexed::~csPolyIndexed | ( | ) | [virtual] |
Destructor.
Member Function Documentation
int csPolyIndexed::AddVertex | ( | int | i | ) |
Add a vertex index to the polygon.
Return index of added index.
int csPolyIndexed::GetVertex | ( | int | i | ) | const [inline] |
int csPolyIndexed::GetVertexCount | ( | ) | const [inline] |
const int* csPolyIndexed::GetVertexIndices | ( | ) | const [inline] |
int* csPolyIndexed::GetVertexIndices | ( | ) | [inline] |
void csPolyIndexed::MakeEmpty | ( | ) |
Initialize the polygon to empty.
void csPolyIndexed::MakeRoom | ( | int | new_max | ) |
Make room for at least the specified number of vertices.
csPolyIndexed& csPolyIndexed::operator= | ( | const csPolyIndexed & | other | ) |
Assignment operator.
int& csPolyIndexed::operator[] | ( | int | i | ) | const [inline] |
int& csPolyIndexed::operator[] | ( | int | i | ) | [inline] |
Member Data Documentation
int* csPolyIndexed::vertices_idx [protected] |
The documentation for this class was generated from the following file:
- csgeom/polyidx.h
Generated for Crystal Space by doxygen 1.4.7