Blender V2.61 - r43446
Functions

BOP_Triangulator.h File Reference

#include "BOP_MathUtils.h"
#include "BOP_Mesh.h"

Go to the source code of this file.

Functions

void BOP_triangulateA (BOP_Mesh *mesh, BOP_Faces *faces, BOP_Face *face, BOP_Index v, unsigned int e)
void BOP_triangulateB (BOP_Mesh *mesh, BOP_Faces *faces, BOP_Face *face, BOP_Index v)
void BOP_triangulateC (BOP_Mesh *mesh, BOP_Faces *faces, BOP_Face *face, BOP_Index v1, BOP_Index v2)
void BOP_triangulateD (BOP_Mesh *mesh, BOP_Faces *faces, BOP_Face *face, BOP_Index v1, BOP_Index v2, unsigned int e)
void BOP_triangulateE (BOP_Mesh *mesh, BOP_Faces *faces, BOP_Face *face, BOP_Index v1, BOP_Index v2, unsigned int e1, unsigned int e2)
void BOP_triangulateF (BOP_Mesh *mesh, BOP_Faces *faces, BOP_Face *face, BOP_Index v1, BOP_Index v2, unsigned int e)

Detailed Description

Definition in file BOP_Triangulator.h.


Function Documentation

void BOP_triangulateA ( BOP_Mesh mesh,
BOP_Faces faces,
BOP_Face face,
BOP_Index  v,
unsigned int  e 
)

Triangulates the face in two new faces by splitting one edge.

* /|\ / | \ / | \ / | \ / | \ *-----x-----*

Parameters:
meshmesh that contains the faces, edges and vertices
facesset of faces that contains face and will contains new faces
faceinput face to be triangulate
vvertex index that intersects the edge
erelative edge index used to triangulate the face

Definition at line 67 of file BOP_Triangulator.cpp.

References BOP_addFace(), BROKEN, BOP_Face::freeBBox(), BOP_Face::getOriginalFace(), BOP_Face::getPlane(), BOP_Face::getSplit(), BOP_Face::getTAG(), BOP_Face::getVertex(), BOP_Face::setSplit(), and BOP_Face::setTAG().

Referenced by triangulate().

void BOP_triangulateB ( BOP_Mesh mesh,
BOP_Faces faces,
BOP_Face face,
BOP_Index  v 
)

Triangulates the face in three new faces by one inner point.

* / \ / \ / \ / x \ / \ *-----------*

Parameters:
meshmesh that contains the faces, edges and vertices
facesset of faces that contains face and will contains new faces
faceinput face to be triangulate
vvertex index that lays inside face

Definition at line 117 of file BOP_Triangulator.cpp.

References BOP_addFace(), BROKEN, BOP_Face::freeBBox(), BOP_Face::getOriginalFace(), BOP_Face::getPlane(), BOP_Face::getSplit(), BOP_Face::getTAG(), BOP_Face::getVertex(), BOP_Face::setSplit(), and BOP_Face::setTAG().

Referenced by triangulate().

void BOP_triangulateC ( BOP_Mesh mesh,
BOP_Faces faces,
BOP_Face face,
BOP_Index  v1,
BOP_Index  v2 
)

Triangulates the face in five new faces by two inner points.

* / \ / \ / \ / x x \ / \ *-----------*

Parameters:
meshmesh that contains the faces, edges and vertices
facesset of faces that contains face and will contains new faces
faceinput face to be triangulate
v1first vertex index that lays inside face
v2second vertex index that lays inside face

Definition at line 154 of file BOP_Triangulator.cpp.

References BOP_isInsideCircle(), BOP_triangulateC_split(), and BOP_Face::getVertex().

Referenced by triangulate().

void BOP_triangulateD ( BOP_Mesh mesh,
BOP_Faces faces,
BOP_Face face,
BOP_Index  v1,
BOP_Index  v2,
unsigned int  e 
)

Triangulates the face in three new faces by splitting twice an edge.

* / \ / \ / \ / \ / \ *---x---x---*

Parameters:
meshmesh that contains the faces, edges and vertices
facesset of faces that contains face and will contains new faces
faceinput face to be triangulate
v1first vertex index that intersects the edge
v2second vertex index that intersects the edge
erelative edge index used to triangulate the face

Definition at line 239 of file BOP_Triangulator.cpp.

References BOP_triangulateD_split(), and BOP_Face::getVertex().

Referenced by triangulate().

void BOP_triangulateE ( BOP_Mesh mesh,
BOP_Faces faces,
BOP_Face face,
BOP_Index  v1,
BOP_Index  v2,
unsigned int  e1,
unsigned int  e2 
)

Triangulates the face in three new faces by splitting two edges.

* / \ / \ x x / \ / \ *-----------*

Parameters:
meshmesh that contains the faces, edges and vertices
facesset of faces that contains face and will contains new faces
faceinput face to be triangulate
v1vertex index that intersects the first edge
v1vertex index that intersects the second edge
e1first relative edge index used to triangulate the face
e2second relative edge index used to triangulate the face

Definition at line 307 of file BOP_Triangulator.cpp.

References BOP_addFace(), BOP_splitQuad(), BROKEN, BOP_Face::freeBBox(), BOP_Face::getOriginalFace(), BOP_Face::getPlane(), BOP_Face::getSplit(), BOP_Face::getTAG(), BOP_Face::getVertex(), BOP_Face::setSplit(), and BOP_Face::setTAG().

Referenced by triangulate().

void BOP_triangulateF ( BOP_Mesh mesh,
BOP_Faces faces,
BOP_Face face,
BOP_Index  v1,
BOP_Index  v2,
unsigned int  e 
)

Triangulates the face in four new faces by one edge and one inner point.

* / \ / \ x x \ / \ / \ *-----------*

Parameters:
meshmesh that contains the faces, edges and vertices
facesset of faces that contains face and will contains new faces
faceinput face to be triangulate
v1vertex index that lays inside face
v2vertex index that intersects the edge
erelative edge index used to triangulate the face

Definition at line 375 of file BOP_Triangulator.cpp.

References BOP_addFace(), BOP_splitQuad(), BROKEN, BOP_Face::freeBBox(), BOP_Face::getOriginalFace(), BOP_Face::getPlane(), BOP_Face::getSplit(), BOP_Face::getTAG(), BOP_Face::getVertex(), BOP_Face::setSplit(), and BOP_Face::setTAG().

Referenced by triangulate().