3DCoat  3D-COAT 4.9.xx
3DCoat is the one application that has all the tools you need to take your 3D idea from a block of digital clay all the way to a production ready, fully textured organic or hard surface model.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
RetopoBinOp Class Reference

Perform the binary operations of the polygonal mesh. More...

#include <RetopoBinOp.h>

Public Member Functions

bool PerformBinOp (comms::cMeshContainer *srcMesh, int BinOp=0, bool isRestored=true)
 Make the binary operation. More...
 

Protected Member Functions

bool IsHashTriangle (FloatPointHash &hash, const Vector3D &v1, const Vector3D &v2, const Vector3D &v3)
 Check of the triangle existing in the retopo scene. More...
 
int DoTriangleIds (comms::cMeshContainer *srcMesh, int begObj, int shftObj, TriHashObj &TriHash)
 Make triangulation of the poly mesh. More...
 
int ConvertToPoly (comms::RawArray &dstRaws, comms::RawArray &srcRaws, int iStart, int iEnd, int ID)
 Convert the indecies of triangles to polygons. More...
 
int GetQuardList (comms::cMeshContainer *srcMesh, cList< SQUAD > &quadL)
 Collect the quads list from poly mesh. More...
 
void RestorePolygons (TriHashObj &TriHash, int maxObj, int idObj)
 Restore the polygons. More...
 
void BM2MC2 (BasicMesh &bm, comms::cMeshContainer &mc, bool _swap, float scale, TriHashObj &TriHash)
 Convert Basic Mesh to MeshContainer. More...
 

Detailed Description

Perform the binary operations of the polygonal mesh.

Class RetopoBinOp

Member Function Documentation

void RetopoBinOp::BM2MC2 ( BasicMesh &  bm,
comms::cMeshContainer mc,
bool  _swap,
float  scale,
TriHashObj TriHash 
)
protected

Convert Basic Mesh to MeshContainer.

:

Parameters
bm- source Basic Mesh, mc - destination mesh
_swap- swap flag, scale - scale factor
TriHash- triangle mesh obj

Referenced by PerformBinOp().

int RetopoBinOp::ConvertToPoly ( comms::RawArray &  dstRaws,
comms::RawArray &  srcRaws,
int  iStart,
int  iEnd,
int  ID 
)
protected

Convert the indecies of triangles to polygons.

Parameters
srcMesh- source Mesh
dstMesh- destination Mesh
iStart- start index in the source triangles
iEnd- end index in the source triangles
ID- identifier of the polygon obj

Referenced by RestorePolygons().

int RetopoBinOp::DoTriangleIds ( comms::cMeshContainer srcMesh,
int  begObj,
int  shftObj,
TriHashObj TriHash 
)
protected

Make triangulation of the poly mesh.

: set the label for triangle

Parameters
srcMesh- source Mesh
begObj- labed triobj index
shftObj- shift mesh obj in the scene
TriHash- triangle mesh obj
Returns
if had already triangulated then 0, else return the count of new triangles

Referenced by PerformBinOp().

int RetopoBinOp::GetQuardList ( comms::cMeshContainer srcMesh,
cList< SQUAD > &  quadL 
)
protected

Collect the quads list from poly mesh.

Parameters
srcMesh- source Mesh
quadL- Quad list
Returns
count quads
bool RetopoBinOp::IsHashTriangle ( FloatPointHash &  hash,
const Vector3D v1,
const Vector3D v2,
const Vector3D v3 
)
protected

Check of the triangle existing in the retopo scene.

Referenced by RestorePolygons().

bool RetopoBinOp::PerformBinOp ( comms::cMeshContainer srcMesh,
int  BinOp = 0,
bool  isRestored = true 
)

Make the binary operation.

Parameters
srcMesh- source mesh
BinOp- binary mode
Returns
true if success otherwise false

References BM2MC2(), DoTriangleIds(), comms::cMeshContainer::IsValid(), and RestorePolygons().

void RetopoBinOp::RestorePolygons ( TriHashObj TriHash,
int  maxObj,
int  idObj 
)
protected

Restore the polygons.

Parameters
TriHash- triangle mesh obj
maxObj- max object's id ( triangle polygons id < maxObj)
idObj- object id

References ConvertToPoly(), and IsHashTriangle().

Referenced by PerformBinOp().


The documentation for this class was generated from the following files: