| ## Public API Reference

- Main Page
- Modules
- Namespaces
- Classes
- Files
- Related Pages

- Alphabetical List
- Class List
- Class Hierarchy
- Class Members

# iHazeHull Struct Reference
[Mesh plugins]

A mesh specially meant for use by the haze. More...

`#include <imesh/haze.h>`

Inheritance diagram for iHazeHull:

[legend]
List of all members.

## Public Member Functions
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 | GetEdgeCount () const =0
| get the total number of edges
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).
virtual int | GetPolVertex (int polygon_num, int vertex_num) const =0
| get vertexindex in a polygon (given vertex number in polygon)
virtual int | GetPolVerticeCount (int polygon_num) const =0
| get the number of vertices in a polygon
virtual int | GetPolygonCount () const =0
| get the number of polygons
virtual void | GetVertex (csVector3 &res, int vertex_idx) const =0
| get a vertex by index
virtual int | GetVerticeCount () const =0
| get the total number of vertices

## Detailed Description

A mesh specially meant for use by the haze.

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.

Definition at line 50 of file haze.h.

## Member Function Documentation

virtual void iHazeHull::GetEdge | ( | int | edge_num,
|  | int & | vertex_idx_1,
|  | int & | vertex_idx_2 |
| ) |  |  | const`[pure virtual]`

get the two (unordered) points of an edge (by index)

virtual int iHazeHull::GetEdgeCount | ( |  | ) | const`[pure virtual]`

get the total number of edges

virtual int iHazeHull::GetPolEdge | ( | int | polygon_num,
|  | int | vertex_num,
|  | int & | start_idx,
|  | int & | end_idx |
| ) |  |  | const`[pure virtual]`

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).

virtual int iHazeHull::GetPolVertex | ( | int | polygon_num,
|  | int | vertex_num |
| ) |  |  | const`[pure virtual]`

get vertexindex in a polygon (given vertex number in polygon)

virtual int iHazeHull::GetPolVerticeCount | ( | int | polygon_num | ) | const`[pure virtual]`

get the number of vertices in a polygon

virtual int iHazeHull::GetPolygonCount | ( |  | ) | const`[pure virtual]`

get the number of polygons

virtual void iHazeHull::GetVertex | ( | csVector3 & | res,
|  | int | vertex_idx |
| ) |  |  | const`[pure virtual]`

get a vertex by index

virtual int iHazeHull::GetVerticeCount | ( |  | ) | const`[pure virtual]`

get the total number of vertices

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

- imesh/haze.h