#include <quadrangulator.h>
Classes | |
class | EdgePredicate |
struct | InterpolationInfo |
struct | SplitMidPoint |
Public Types | |
typedef TriMesh::CoordType | CoordType |
typedef std::pair< CoordType, CoordType > | KeyEdgeType |
typedef PolyMesh::CoordType | PolyCoordType |
typedef PolyMesh::FaceType | PolyFaceType |
typedef PolyMesh::ScalarType | PolyScalarType |
typedef PolyMesh::VertexType | PolyVertexType |
typedef TriMesh::ScalarType | ScalarType |
typedef TriMesh::FaceType | TriFaceType |
typedef TriMesh::VertexType | TriVertexType |
Public Member Functions | |
void | Quadrangulate (TriMesh &Tmesh, PolyMesh &Pmesh, std::vector< std::vector< short int > > &UV) |
void | TestIsProper (TriMesh &Tmesh) |
Public Attributes | |
std::map< KeyEdgeType, InterpolationInfo > | InterpMap |
Private Member Functions | |
short int | AlignmentEdge (TriFaceType *f, int edge_index) |
void | ConvertVTtoWT (TriMesh &Tmesh) |
void | ConvertWTtoVT (TriMesh &Tmesh) |
void | FindPolygon (vcg::face::Pos< TriFaceType > &currPos, std::vector< TriVertexType * > &poly, std::vector< short int > &UVpoly) |
void | FindPolygons (TriMesh &Tmesh, std::vector< std::vector< TriVertexType * > > &polygons, std::vector< std::vector< short int > > &UV) |
void | InitIntegerEdgesVert (TriMesh &Tmesh) |
void | InitSplitMap (TriMesh &to_split, int dir) |
bool | IsOnIntegerLine (vcg::Point2< ScalarType > uv0, vcg::Point2< ScalarType > uv1) |
bool | IsOnIntegerVertex (vcg::Point2< ScalarType > uv, bool IsB) |
void | ReupdateMesh (TriMesh &Tmesh) |
void | RoundInitial (TriMesh &to_split) |
void | RoundSplits (TriMesh &to_split, int dir) |
void | SplitTrisDir (TriMesh &to_split, int dir) |
bool | ToSplit (const vcg::Point2< ScalarType > &uv0, const vcg::Point2< ScalarType > &uv1, int Dir, ScalarType &alpha) |
Static Private Member Functions | |
static bool | CompareVertex (const TriMesh &m, TriVertexType &vA, TriVertexType &vB) |
static void | ExtractVertex (const TriMesh &srcMesh, const TriFaceType &f, int whichWedge, const TriMesh &dstMesh, TriVertexType &v) |
Definition at line 20 of file quadrangulator.h.
typedef TriMesh::CoordType vcg::tri::Quadrangulator< TriMesh, PolyMesh >::CoordType |
Definition at line 26 of file quadrangulator.h.
typedef std::pair<CoordType,CoordType > vcg::tri::Quadrangulator< TriMesh, PolyMesh >::KeyEdgeType |
Definition at line 52 of file quadrangulator.h.
typedef PolyMesh::CoordType vcg::tri::Quadrangulator< TriMesh, PolyMesh >::PolyCoordType |
Definition at line 31 of file quadrangulator.h.
typedef PolyMesh::FaceType vcg::tri::Quadrangulator< TriMesh, PolyMesh >::PolyFaceType |
Definition at line 29 of file quadrangulator.h.
typedef PolyMesh::ScalarType vcg::tri::Quadrangulator< TriMesh, PolyMesh >::PolyScalarType |
Definition at line 32 of file quadrangulator.h.
typedef PolyMesh::VertexType vcg::tri::Quadrangulator< TriMesh, PolyMesh >::PolyVertexType |
Definition at line 30 of file quadrangulator.h.
typedef TriMesh::ScalarType vcg::tri::Quadrangulator< TriMesh, PolyMesh >::ScalarType |
Definition at line 27 of file quadrangulator.h.
typedef TriMesh::FaceType vcg::tri::Quadrangulator< TriMesh, PolyMesh >::TriFaceType |
Definition at line 24 of file quadrangulator.h.
typedef TriMesh::VertexType vcg::tri::Quadrangulator< TriMesh, PolyMesh >::TriVertexType |
Definition at line 25 of file quadrangulator.h.
short int vcg::tri::Quadrangulator< TriMesh, PolyMesh >::AlignmentEdge | ( | TriFaceType * | f, |
int | edge_index | ||
) | [inline, private] |
Definition at line 469 of file quadrangulator.h.
static bool vcg::tri::Quadrangulator< TriMesh, PolyMesh >::CompareVertex | ( | const TriMesh & | m, |
TriVertexType & | vA, | ||
TriVertexType & | vB | ||
) | [inline, static, private] |
Definition at line 577 of file quadrangulator.h.
void vcg::tri::Quadrangulator< TriMesh, PolyMesh >::ConvertVTtoWT | ( | TriMesh & | Tmesh | ) | [inline, private] |
Definition at line 593 of file quadrangulator.h.
void vcg::tri::Quadrangulator< TriMesh, PolyMesh >::ConvertWTtoVT | ( | TriMesh & | Tmesh | ) | [inline, private] |
Definition at line 585 of file quadrangulator.h.
static void vcg::tri::Quadrangulator< TriMesh, PolyMesh >::ExtractVertex | ( | const TriMesh & | srcMesh, |
const TriFaceType & | f, | ||
int | whichWedge, | ||
const TriMesh & | dstMesh, | ||
TriVertexType & | v | ||
) | [inline, static, private] |
Definition at line 563 of file quadrangulator.h.
void vcg::tri::Quadrangulator< TriMesh, PolyMesh >::FindPolygon | ( | vcg::face::Pos< TriFaceType > & | currPos, |
std::vector< TriVertexType * > & | poly, | ||
std::vector< short int > & | UVpoly | ||
) | [inline, private] |
Definition at line 479 of file quadrangulator.h.
void vcg::tri::Quadrangulator< TriMesh, PolyMesh >::FindPolygons | ( | TriMesh & | Tmesh, |
std::vector< std::vector< TriVertexType * > > & | polygons, | ||
std::vector< std::vector< short int > > & | UV | ||
) | [inline, private] |
Definition at line 522 of file quadrangulator.h.
void vcg::tri::Quadrangulator< TriMesh, PolyMesh >::InitIntegerEdgesVert | ( | TriMesh & | Tmesh | ) | [inline, private] |
Definition at line 430 of file quadrangulator.h.
void vcg::tri::Quadrangulator< TriMesh, PolyMesh >::InitSplitMap | ( | TriMesh & | to_split, |
int | dir | ||
) | [inline, private] |
Definition at line 172 of file quadrangulator.h.
bool vcg::tri::Quadrangulator< TriMesh, PolyMesh >::IsOnIntegerLine | ( | vcg::Point2< ScalarType > | uv0, |
vcg::Point2< ScalarType > | uv1 | ||
) | [inline, private] |
Definition at line 395 of file quadrangulator.h.
bool vcg::tri::Quadrangulator< TriMesh, PolyMesh >::IsOnIntegerVertex | ( | vcg::Point2< ScalarType > | uv, |
bool | IsB | ||
) | [inline, private] |
Definition at line 414 of file quadrangulator.h.
void vcg::tri::Quadrangulator< TriMesh, PolyMesh >::Quadrangulate | ( | TriMesh & | Tmesh, |
PolyMesh & | Pmesh, | ||
std::vector< std::vector< short int > > & | UV | ||
) | [inline] |
Definition at line 650 of file quadrangulator.h.
void vcg::tri::Quadrangulator< TriMesh, PolyMesh >::ReupdateMesh | ( | TriMesh & | Tmesh | ) | [inline, private] |
Definition at line 599 of file quadrangulator.h.
void vcg::tri::Quadrangulator< TriMesh, PolyMesh >::RoundInitial | ( | TriMesh & | to_split | ) | [inline, private] |
Definition at line 112 of file quadrangulator.h.
void vcg::tri::Quadrangulator< TriMesh, PolyMesh >::RoundSplits | ( | TriMesh & | to_split, |
int | dir | ||
) | [inline, private] |
Definition at line 139 of file quadrangulator.h.
void vcg::tri::Quadrangulator< TriMesh, PolyMesh >::SplitTrisDir | ( | TriMesh & | to_split, |
int | dir | ||
) | [inline, private] |
Definition at line 371 of file quadrangulator.h.
void vcg::tri::Quadrangulator< TriMesh, PolyMesh >::TestIsProper | ( | TriMesh & | Tmesh | ) | [inline] |
Definition at line 617 of file quadrangulator.h.
bool vcg::tri::Quadrangulator< TriMesh, PolyMesh >::ToSplit | ( | const vcg::Point2< ScalarType > & | uv0, |
const vcg::Point2< ScalarType > & | uv1, | ||
int | Dir, | ||
ScalarType & | alpha | ||
) | [inline, private] |
Definition at line 60 of file quadrangulator.h.
std::map<KeyEdgeType,InterpolationInfo> vcg::tri::Quadrangulator< TriMesh, PolyMesh >::InterpMap |
Definition at line 54 of file quadrangulator.h.