#include <haze.h>
Inheritance diagram for iHazeHull:
Public Methods | |
virtual int | GetPolygonCount () const=0 |
get the number of polygons. | |
virtual int | GetVerticeCount () const=0 |
get the total number of vertices. | |
virtual int | GetEdgeCount () const=0 |
get the total number of edges. | |
virtual void | GetVertex (csVector3 &res, int vertex_idx) const=0 |
get a vertex by index. | |
virtual void | GetEdge (int edge_num, int &vertex_idx_1, int &vertex_idx_2) const=0 |
get the two (unordered) points of an edge (by index). | |
virtual int | GetPolVerticeCount (int polygon_num) const=0 |
get the number of vertices in a polygon. | |
virtual int | GetPolVertex (int polygon_num, int vertex_num) const=0 |
get vertexindex in a polygon (given vertex number in polygon). | |
virtual int | GetPolEdge (int polygon_num, int vertex_num, int &start_idx, int &end_idx) const=0 |
Get the edge index that starts at given vertex number in polygon Also returns the start and end vertex-idx of the edge (in clockwise order). |
This mesh must be a convex hull. for example: cubes, boxes, spheres, cones, cylinders, pyramids. A convex hull object can be defined as follows: from any point inside the object, all of the polygons are completely visible (none are obscured by other polygons from the convex hull). The ordering of the vertices (vertice numbering) is important when multiple hulls are used. Also edges must be numbered, with a number for each undirected edge. (i.e. a->b and b->a have the same edge number). Polygons thus have N vertices and N edges. For a particular polygon, the edges return their points in clockwise ordering.