Describes the type of a patch. More...
#include <patchDescriptor.h>
Public Types | |
enum | Type { NON_PATCH = 0, POINTS, LINES, QUADS, TRIANGLES, LOOP, REGULAR, GREGORY, GREGORY_BOUNDARY, GREGORY_BASIS } |
Public Member Functions | |
PatchDescriptor () | |
Default constructor. More... | |
PatchDescriptor (int type) | |
Constructor. More... | |
PatchDescriptor (PatchDescriptor const &d) | |
Copy Constructor. More... | |
Type | GetType () const |
Returns the type of the patch. More... | |
bool | IsAdaptive () const |
Returns true if the type is an adaptive patch. More... | |
short | GetNumControlVertices () const |
Returns the number of control vertices expected for a patch of the type described. More... | |
short | GetNumFVarControlVertices () const |
Returns the number of control vertices expected for a patch of the type described. More... | |
bool | operator< (PatchDescriptor const other) const |
Allows ordering of patches by type. More... | |
bool | operator== (PatchDescriptor const other) const |
True if the descriptors are identical. More... | |
void | print () const |
Static Public Member Functions | |
static bool | IsAdaptive (Type type) |
Returns true if the type is an adaptive patch. More... | |
static short | GetNumControlVertices (Type t) |
Returns the number of control vertices expected for a patch of the type described. More... | |
static short | GetNumFVarControlVertices (Type t) |
static short | GetRegularPatchSize () |
Number of control vertices of Regular Patches in table. More... | |
static short | GetGregoryPatchSize () |
Number of control vertices of Gregory (and Gregory Boundary) Patches in table. More... | |
static short | GetGregoryBasisPatchSize () |
Number of control vertices of Gregory patch basis (20) More... | |
static Vtr::ConstArray< PatchDescriptor > | GetAdaptivePatchDescriptors (Sdc::SchemeType type) |
Returns a vector of all the legal patch descriptors for the given adaptive subdivision scheme. More... | |
Describes the type of a patch.
Uniquely identifies all the different types of patches
Bitfield layout :
Field | Bits | Content |
---|---|---|
_type | 4 | patch type |
Definition at line 56 of file patchDescriptor.h.
enum Type |
Definition at line 60 of file patchDescriptor.h.
|
inline |
Default constructor.
Definition at line 80 of file patchDescriptor.h.
|
inline |
Constructor.
Definition at line 84 of file patchDescriptor.h.
|
inline |
Copy Constructor.
Definition at line 88 of file patchDescriptor.h.
|
static |
Returns a vector of all the legal patch descriptors for the given adaptive subdivision scheme.
|
inlinestatic |
Number of control vertices of Gregory patch basis (20)
Definition at line 131 of file patchDescriptor.h.
|
inlinestatic |
Number of control vertices of Gregory (and Gregory Boundary) Patches in table.
Definition at line 128 of file patchDescriptor.h.
|
inlinestatic |
Returns the number of control vertices expected for a patch of the type described.
Definition at line 155 of file patchDescriptor.h.
|
inline |
Returns the number of control vertices expected for a patch of the type described.
Definition at line 114 of file patchDescriptor.h.
|
inlinestatic |
Definition at line 171 of file patchDescriptor.h.
|
inline |
Returns the number of control vertices expected for a patch of the type described.
Definition at line 120 of file patchDescriptor.h.
|
inlinestatic |
Number of control vertices of Regular Patches in table.
Definition at line 125 of file patchDescriptor.h.
|
inline |
Returns the type of the patch.
Definition at line 92 of file patchDescriptor.h.
|
inlinestatic |
Returns true if the type is an adaptive patch.
Definition at line 97 of file patchDescriptor.h.
|
inline |
Returns true if the type is an adaptive patch.
Definition at line 102 of file patchDescriptor.h.
|
inline |
Allows ordering of patches by type.
Definition at line 187 of file patchDescriptor.h.
|
inline |
True if the descriptors are identical.
Definition at line 193 of file patchDescriptor.h.
void print | ( | ) | const |