All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
HbrMesh< T > Class Template Reference

#include <face.h>

Public Types

enum  InterpolateBoundaryMethod { k_InterpolateBoundaryNone, k_InterpolateBoundaryEdgeOnly, k_InterpolateBoundaryEdgeAndCorner, k_InterpolateBoundaryAlwaysSharp }
 

Public Member Functions

 HbrMesh (HbrSubdivision< T > *subdivision=0, int fvarcount=0, const int *fvarindices=0, const int *fvarwidths=0, int totalfvarwidth=0)
 
 ~HbrMesh ()
 
HbrVertex< T > * NewVertex (int id, const T &data)
 
HbrVertex< T > * NewVertex (const T &data)
 
HbrVertex< T > * NewVertex ()
 
HbrVertex< T > * GetVertex (int id) const
 
void * GetVertexClientData (int id) const
 
void SetVertexClientData (int id, void *data)
 
HbrFace< T > * NewFace (int nvertices, const int *vtx, int uindex)
 
HbrFace< T > * NewFace (int nvertices, HbrVertex< T > **vtx, HbrFace< T > *parent, int childindex)
 
int NewUniformIndex ()
 
void Finish ()
 
void DeleteFace (HbrFace< T > *face)
 
void DeleteVertex (HbrVertex< T > *vertex)
 
int GetNumVertices () const
 
int GetNumDisconnectedVertices () const
 
int GetNumFaces () const
 
int GetNumCoarseFaces () const
 
HbrFace< T > * GetFace (int id) const
 
void * GetFaceClientData (int id) const
 
void SetFaceClientData (int id, void *data)
 
template<typename OutputIterator >
void GetVertices (OutputIterator vertices) const
 
void ApplyOperatorAllVertices (HbrVertexOperator< T > &op) const
 
template<typename OutputIterator >
void GetFaces (OutputIterator faces) const
 
HbrSubdivision< T > * GetSubdivision () const
 
int GetFVarCount () const
 
const int * GetFVarIndices () const
 
const int * GetFVarWidths () const
 
int GetTotalFVarWidth () const
 
void PrintStats (std::ostream &out)
 
size_t GetMemStats () const
 
InterpolateBoundaryMethod GetInterpolateBoundaryMethod () const
 
void SetInterpolateBoundaryMethod (InterpolateBoundaryMethod method)
 
InterpolateBoundaryMethod GetFVarInterpolateBoundaryMethod () const
 
void SetFVarInterpolateBoundaryMethod (InterpolateBoundaryMethod method)
 
bool GetFVarPropagateCorners () const
 
void SetFVarPropagateCorners (bool p)
 
void RegisterMemoryRoutines (void(*increment)(unsigned long bytes), void(*decrement)(unsigned long bytes))
 
void AddGarbageCollectableVertex (HbrVertex< T > *vertex)
 
void GarbageCollect ()
 
void AddHierarchicalEdit (HbrHierarchicalEdit< T > *edit)
 
const std::vector
< HbrHierarchicalEdit< T > * > & 
GetHierarchicalEdits () const
 
HbrHierarchicalEdit< T > ** GetHierarchicalEditsAtOffset (int offset)
 
bool HasVertexEdits () const
 
bool HasCreaseEdits () const
 
void Unrefine (int numCoarseVerts, int numCoarseFaces)
 
void SetTransientMode (bool mode)
 
void FreeTransientData ()
 
HbrFaceChildren< T > * NewFaceChildren ()
 
void DeleteFaceChildren (HbrFaceChildren< T > *facechildren)
 

Detailed Description

template<class T>
class OpenSubdiv::OPENSUBDIV_VERSION::HbrMesh< T >

Definition at line 50 of file face.h.

Member Enumeration Documentation

Enumerator
k_InterpolateBoundaryNone 
k_InterpolateBoundaryEdgeOnly 
k_InterpolateBoundaryEdgeAndCorner 
k_InterpolateBoundaryAlwaysSharp 

Definition at line 202 of file mesh.h.

Constructor & Destructor Documentation

HbrMesh ( HbrSubdivision< T > *  subdivision = 0,
int  fvarcount = 0,
const int *  fvarindices = 0,
const int *  fvarwidths = 0,
int  totalfvarwidth = 0 
)

Definition at line 459 of file mesh.h.

~HbrMesh ( )

Definition at line 493 of file mesh.h.

Member Function Documentation

void AddGarbageCollectableVertex ( HbrVertex< T > *  vertex)
inline

Definition at line 230 of file mesh.h.

void AddHierarchicalEdit ( HbrHierarchicalEdit< T > *  edit)

Definition at line 964 of file mesh.h.

void ApplyOperatorAllVertices ( HbrVertexOperator< T > &  op) const

Definition at line 848 of file mesh.h.

void DeleteFace ( HbrFace< T > *  face)

Definition at line 757 of file mesh.h.

void DeleteFaceChildren ( HbrFaceChildren< T > *  facechildren)
inline

Definition at line 301 of file mesh.h.

void DeleteVertex ( HbrVertex< T > *  vertex)

Definition at line 770 of file mesh.h.

void Finish ( )

Definition at line 686 of file mesh.h.

void FreeTransientData ( )

Definition at line 976 of file mesh.h.

void GarbageCollect ( )

Definition at line 908 of file mesh.h.

HbrFace< T > * GetFace ( int  id) const

Definition at line 830 of file mesh.h.

void* GetFaceClientData ( int  id) const
inline

Definition at line 142 of file mesh.h.

void GetFaces ( OutputIterator  faces) const

Definition at line 857 of file mesh.h.

int GetFVarCount ( ) const
inline

Definition at line 181 of file mesh.h.

const int* GetFVarIndices ( ) const
inline

Definition at line 184 of file mesh.h.

InterpolateBoundaryMethod GetFVarInterpolateBoundaryMethod ( ) const
inline

Definition at line 211 of file mesh.h.

bool GetFVarPropagateCorners ( ) const
inline

Definition at line 214 of file mesh.h.

const int* GetFVarWidths ( ) const
inline

Definition at line 187 of file mesh.h.

const std::vector<HbrHierarchicalEdit<T>*>& GetHierarchicalEdits ( ) const
inline

Definition at line 246 of file mesh.h.

HbrHierarchicalEdit<T>** GetHierarchicalEditsAtOffset ( int  offset)
inline

Definition at line 252 of file mesh.h.

InterpolateBoundaryMethod GetInterpolateBoundaryMethod ( ) const
inline

Definition at line 209 of file mesh.h.

size_t GetMemStats ( ) const
inline

Definition at line 199 of file mesh.h.

int GetNumCoarseFaces ( ) const

Definition at line 817 of file mesh.h.

int GetNumDisconnectedVertices ( ) const

Definition at line 793 of file mesh.h.

int GetNumFaces ( ) const

Definition at line 807 of file mesh.h.

int GetNumVertices ( ) const

Definition at line 783 of file mesh.h.

HbrSubdivision<T>* GetSubdivision ( ) const
inline

Definition at line 178 of file mesh.h.

int GetTotalFVarWidth ( ) const
inline

Definition at line 190 of file mesh.h.

HbrVertex<T>* GetVertex ( int  id) const
inline

Definition at line 79 of file mesh.h.

void* GetVertexClientData ( int  id) const
inline

Definition at line 88 of file mesh.h.

void GetVertices ( OutputIterator  vertices) const

Definition at line 840 of file mesh.h.

bool HasCreaseEdits ( ) const
inline

Definition at line 258 of file mesh.h.

bool HasVertexEdits ( ) const
inline

Definition at line 257 of file mesh.h.

HbrFace< T > * NewFace ( int  nvertices,
const int *  vtx,
int  uindex 
)

Definition at line 607 of file mesh.h.

HbrFace< T > * NewFace ( int  nvertices,
HbrVertex< T > **  vtx,
HbrFace< T > *  parent,
int  childindex 
)

Definition at line 650 of file mesh.h.

HbrFaceChildren<T>* NewFaceChildren ( )
inline

Definition at line 296 of file mesh.h.

int NewUniformIndex ( )
inline

Definition at line 115 of file mesh.h.

HbrVertex< T > * NewVertex ( int  id,
const T &  data 
)

Definition at line 533 of file mesh.h.

HbrVertex< T > * NewVertex ( const T &  data)

Definition at line 573 of file mesh.h.

HbrVertex< T > * NewVertex ( )

Definition at line 589 of file mesh.h.

void PrintStats ( std::ostream &  out)

Definition at line 865 of file mesh.h.

void RegisterMemoryRoutines ( void(*)(unsigned long bytes)  increment,
void(*)(unsigned long bytes)  decrement 
)
inline

Definition at line 218 of file mesh.h.

void SetFaceClientData ( int  id,
void *  data 
)
inline

Definition at line 151 of file mesh.h.

void SetFVarInterpolateBoundaryMethod ( InterpolateBoundaryMethod  method)
inline

Definition at line 212 of file mesh.h.

void SetFVarPropagateCorners ( bool  p)
inline

Definition at line 215 of file mesh.h.

void SetInterpolateBoundaryMethod ( InterpolateBoundaryMethod  method)
inline

Definition at line 210 of file mesh.h.

void SetTransientMode ( bool  mode)
inline

Definition at line 287 of file mesh.h.

void SetVertexClientData ( int  id,
void *  data 
)
inline

Definition at line 97 of file mesh.h.

void Unrefine ( int  numCoarseVerts,
int  numCoarseFaces 
)
inline

Definition at line 260 of file mesh.h.


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