25 #ifndef OPENSUBDIV3_FAR_PATCH_TABLE_FACTORY_H
26 #define OPENSUBDIV3_FAR_PATCH_TABLE_FACTORY_H
28 #include "../version.h"
30 #include "../far/patchTable.h"
32 namespace OpenSubdiv {
33 namespace OPENSUBDIV_VERSION {
38 class TopologyRefiner;
160 using namespace OPENSUBDIV_VERSION;
unsigned int shareEndCapPatchPoints
unsigned int maxIsolationLevel
Cap adaptive feature isolation to the given level (max. 10)
unsigned int _hasBoundaryEdge
unsigned int generateLegacySharpCornerPatches
Generate sharp regular patches at smooth corners (legacy)
unsigned int generateFVarLegacyLinearPatches
Generate all linear face-varying patches (legacy)
Factory for constructing a PatchTable from a TopologyRefiner.
unsigned int endCapType
EndCapType.
unsigned int _transitionMask
static PatchTable * Create(TopologyRefiner const &refiner, Options options=Options())
Instantiates a PatchTable from a client-provided TopologyRefiner.
Options(unsigned int maxIsolation=10)
unsigned int _isSingleCrease
use bilinear quads (4 cp) as end-caps
Container for arrays of parametric patches.
Public options for the PatchTable factory.
void assignTransitionPropertiesFromEdgeMask(int boundaryVertexMask)
unsigned int _boundaryIndex
std::vector< PatchFaceTag > PatchTagVector
void assignBoundaryPropertiesFromVertexMask(int boundaryVertexMask)
use Gregory basis patches (20 cp) as end-caps
unsigned int useSingleCreasePatch
Use single crease patch.
int numFVarChannels
Number of channel indices and interpolation modes passed.
EndCapType GetEndCapType() const
Get endcap patch type.
void SetEndCapType(EndCapType e)
Set endcap patch type.
void assignBoundaryPropertiesFromEdgeMask(int boundaryEdgeMask)
unsigned int triangulateQuads
Triangulate 'QUADS' primitives (Uniform mode only)
unsigned int _boundaryCount
use legacy (2.x) Gregory patches (4 cp + valence table) as end-caps
unsigned int generateFVarTables
Generate face-varying patch tables.
unsigned int _boundaryMask
unsigned int generateAllLevels
Include levels from 'firstLevel' to 'maxLevel' (Uniform mode only)
unsigned int useInfSharpPatch
Use infinitely-sharp patch.
Stores topology data for a specified set of refinement options.
use BSpline basis patches (16 cp) as end-caps
int const * fvarChannelIndices
List containing the indices of the channels selected for the factory.