MeshKit  1.0
Tri2Quads Class Reference

#include <Tri2Quad.hpp>

List of all members.


struct  LVertex

Public Member Functions

 Tri2Quads ()
const vector< FacePair > & getMaximumDualMatching ()
MeshgetQuadMesh (Mesh *tmesh, int replace=0, int topo=ALL_QUADS)
NodeSequence getSteinerNodes () const
FaceSequence getInsertedFaces () const
FaceSequence getModifiedFaces () const

Static Public Member Functions

static int verify (Mesh *m, const vector< FacePair > &matching)
static Meshcollapse_matched_triangles (Mesh *mesh, const vector< FacePair > &matching, int replace=0)

Static Public Attributes

static const int ALL_QUADS = 0
static const int QUAD_DOMINATED = 1

Private Member Functions

void splitParent (Face *parent, Face *child1, Face *child2)
void splitParent (BinaryNode *p, BinaryNode *c1, BinaryNode *c2)
int refine_boundary_triangle (Face *face)
void percolateup ()
void matchnode (BinaryNode *v)
void matchnodes (BinaryNode *child, BinaryNode *parent)
void matchnodes (Vertex *child, Vertex *parent)
BinaryNodegetChildofDegreeNParent (BNodeList &levelnodes, int nd)
BinaryNodegetNextNode (BNodeList &levelnodes)
void prunelevel (BNodeList &levelnodes)
void maximum_tree_matching ()
void match_tree_walk (BinaryTree *tree, BinaryNode *u)

Private Attributes

FaceSequence steinerFaces
FaceSequence modifiedFaces
NodeSequence steinerNodes
int required_topology
bool verbose
size_t maxfaceID
vector< FacePairfacematching

Detailed Description

Definition at line 39 of file Tri2Quad.hpp.

Constructor & Destructor Documentation

Tri2Quads ( ) [inline]

Definition at line 50 of file Tri2Quad.hpp.

Member Function Documentation

Mesh * collapse_matched_triangles ( Mesh mesh,
const vector< FacePair > &  matching,
int  replace = 0 
) [static]

Definition at line 56 of file Tri2Quad.cpp.

BinaryNode * getChildofDegreeNParent ( BNodeList levelnodes,
int  nd 
) [private]

Definition at line 353 of file Tri2Quad.cpp.

const vector<FacePair>& getMaximumDualMatching ( )
BinaryNode * getNextNode ( BNodeList levelnodes) [private]

Definition at line 385 of file Tri2Quad.cpp.

Mesh * getQuadMesh ( Mesh tmesh,
int  replace = 0,
int  topo = ALL_QUADS 

Definition at line 536 of file Tri2Quad.cpp.

void match_tree_walk ( BinaryTree tree,
BinaryNode u 
) [private]

Definition at line 620 of file Tri2Quad.cpp.

void matchnode ( BinaryNode v) [private]

Definition at line 310 of file Tri2Quad.cpp.

void matchnodes ( BinaryNode child,
BinaryNode parent 
) [inline, private]

Definition at line 127 of file Tri2Quad.hpp.

void matchnodes ( Vertex child,
Vertex parent 
) [inline, private]

Definition at line 117 of file Tri2Quad.hpp.

void maximum_tree_matching ( ) [private]

Definition at line 493 of file Tri2Quad.cpp.

void percolateup ( ) [private]

Definition at line 430 of file Tri2Quad.cpp.

void prunelevel ( BNodeList levelnodes) [private]

Definition at line 419 of file Tri2Quad.cpp.

int refine_boundary_triangle ( Face face) [private]

Definition at line 93 of file Tri2Quad.cpp.

void splitParent ( Face parent,
Face child1,
Face child2 
) [private]
void splitParent ( BinaryNode p,
BinaryNode c1,
BinaryNode c2 
) [private]

Definition at line 152 of file Tri2Quad.cpp.

int verify ( Mesh m,
const vector< FacePair > &  matching 
) [static]

Definition at line 8 of file Tri2Quad.cpp.

Member Data Documentation

const int ALL_QUADS = 0 [static]

Definition at line 43 of file Tri2Quad.hpp.

BinaryTree* btree [private]

Definition at line 80 of file Tri2Quad.hpp.

vector<FacePair> facematching [private]

Definition at line 86 of file Tri2Quad.hpp.

size_t maxfaceID [private]

Definition at line 84 of file Tri2Quad.hpp.

Definition at line 77 of file Tri2Quad.hpp.

const int QUAD_DOMINATED = 1 [static]

Definition at line 44 of file Tri2Quad.hpp.

int required_topology [private]

Definition at line 82 of file Tri2Quad.hpp.

Definition at line 77 of file Tri2Quad.hpp.

Definition at line 78 of file Tri2Quad.hpp.

Mesh* trimesh [private]

Definition at line 67 of file Tri2Quad.hpp.

bool verbose [private]

Definition at line 83 of file Tri2Quad.hpp.

The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines