All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
PatchMap Class Reference

An quadtree-based map connecting coarse faces to their sub-patches. More...

#include <patchMap.h>

Classes

struct  Handle
 Handle that can be used as unique patch identifier within PatchTables. More...
 
struct  Handle
 Handle that can be used as unique patch identifier within PatchTables. More...
 

Public Member Functions

 PatchMap (PatchTables const &patchTables)
 Constructor. More...
 
Handle const * FindPatch (int faceid, float u, float v) const
 Returns a handle to the sub-patch of the face at the given (u,v). Note : the faceid corresponds to quadrangulated face indices (ie. quads count as 1 index, non-quads add as many indices as they have vertices) More...
 

Detailed Description

An quadtree-based map connecting coarse faces to their sub-patches.

PatchTables::PatchArrays contain lists of patches that represent the limit surface of a mesh, sorted by their topological type. These arrays break the connection between coarse faces and their sub-patches.

The PatchMap provides a quad-tree based lookup structure that, given a singular parametric location, can efficiently return a handle to the sub-patch that contains this location.

Definition at line 49 of file patchMap.h.

Constructor & Destructor Documentation

PatchMap ( PatchTables const &  patchTables)
inline

Constructor.

Parameters
patchTablesA valid set of PatchTables

Definition at line 128 of file patchMap.h.

Member Function Documentation

PatchMap::Handle const * FindPatch ( int  faceid,
float  u,
float  v 
) const
inline

Returns a handle to the sub-patch of the face at the given (u,v). Note : the faceid corresponds to quadrangulated face indices (ie. quads count as 1 index, non-quads add as many indices as they have vertices)

Returns a handle to the sub-patch of the face at the given (u,v).

Parameters
faceidThe index of the face
uLocal u parameter
vLocal v parameter
Returns
A patch handle or NULL if the face does not exist or the limit surface is tagged as a hole at the given location

Definition at line 187 of file patchMap.h.


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