3DCoat
3D-COAT 4.9.xx
3DCoat is the one application that has all the tools you need to take your 3D idea from a block of digital clay all the way to a production ready, fully textured organic or hard surface model.
|
Public options for the PatchTable factory. More...
#include <patchTableFactory.h>
Public Types | |
enum | EndCapType { ENDCAP_NONE = 0, ENDCAP_BILINEAR_BASIS, ENDCAP_BSPLINE_BASIS, ENDCAP_GREGORY_BASIS, ENDCAP_LEGACY_GREGORY } |
Choice for approximating irregular patches (end-caps) More... | |
Public Member Functions | |
EndCapType | GetEndCapType () const |
Get endcap basis type. More... | |
void | SetEndCapType (EndCapType e) |
Set endcap basis type. More... | |
template<typename REAL > | |
void | SetPatchPrecision () |
Set precision of vertex patches. More... | |
template<typename REAL > | |
void | SetFVarPatchPrecision () |
Set precision of face-varying patches. More... | |
TopologyRefiner::AdaptiveOptions | GetRefineAdaptiveOptions () const |
Determine adaptive refinement options to match assigned patch options. More... | |
Public Attributes | |
unsigned int | generateAllLevels: 1 |
Generate levels from 'firstLevel' to 'maxLevel' (Uniform mode only) More... | |
unsigned int | includeBaseLevelIndices: 1 |
Include base level in patch point indices (Uniform mode only) More... | |
unsigned int | includeFVarBaseLevelIndices: 1 |
Include base level in face-varying patch point indices (Uniform mode only) More... | |
unsigned int | triangulateQuads: 1 |
Triangulate 'QUADS' primitives (Uniform mode only) More... | |
unsigned int | useSingleCreasePatch: 1 |
Use single crease patch. More... | |
unsigned int | useInfSharpPatch: 1 |
Use infinitely-sharp patch. More... | |
unsigned int | maxIsolationLevel: 4 |
Cap adaptive feature isolation to the given level (max. 10) More... | |
unsigned int | endCapType: 3 |
EndCapType. More... | |
unsigned int | shareEndCapPatchPoints: 1 |
Share endcap patch points among adjacent endcap patches. < currently only work with GregoryBasis. More... | |
unsigned int | generateVaryingTables: 1 |
Generate varying patch tables. More... | |
unsigned int | generateVaryingLocalPoints: 1 |
Generate local points with varying patches. More... | |
unsigned int | generateFVarTables: 1 |
Generate face-varying patch tables. More... | |
unsigned int | patchPrecisionDouble: 1 |
Generate double-precision stencils for vertex patches. More... | |
unsigned int | fvarPatchPrecisionDouble: 1 |
Generate double-precision stencils for face-varying patches. More... | |
unsigned int | generateFVarLegacyLinearPatches: 1 |
Generate all linear face-varying patches (legacy) More... | |
unsigned int | generateLegacySharpCornerPatches: 1 |
Generate sharp regular patches at smooth corners (legacy) More... | |
int | numFVarChannels |
Number of channel indices and interpolation modes passed. More... | |
int const * | fvarChannelIndices |
List containing the indices of the channels selected for the factory. More... | |
Public options for the PatchTable factory.
Choice for approximating irregular patches (end-caps)
This enum specifies how irregular patches (end-caps) are approximated. A basis is chosen, rather than a specific patch type, and has a corresponding patch type for each subdivision scheme, i.e. a quad and triangular patch type exists for each basis. These choices provide a trade-off between surface quality and performance.
|
inline |
Get endcap basis type.
|
inline |
Determine adaptive refinement options to match assigned patch options.
References OpenSubdiv::v3_4_3::Far::TopologyRefiner::AdaptiveOptions::considerFVarChannels, OpenSubdiv::v3_4_3::Far::TopologyRefiner::AdaptiveOptions::useInfSharpPatch, and OpenSubdiv::v3_4_3::Far::TopologyRefiner::AdaptiveOptions::useSingleCreasePatch.
|
inline |
Set endcap basis type.
Referenced by OpenSubdiv::v3_4_3::Far::LimitStencilTableFactoryReal< REAL >::Create().
void OpenSubdiv::v3_4_3::Far::PatchTableFactory::Options::SetFVarPatchPrecision | ( | ) |
Set precision of face-varying patches.
void OpenSubdiv::v3_4_3::Far::PatchTableFactory::Options::SetPatchPrecision | ( | ) |
Set precision of vertex patches.
Referenced by OpenSubdiv::v3_4_3::Far::LimitStencilTableFactoryReal< REAL >::Create().
unsigned int OpenSubdiv::v3_4_3::Far::PatchTableFactory::Options::endCapType |
EndCapType.
int const* OpenSubdiv::v3_4_3::Far::PatchTableFactory::Options::fvarChannelIndices |
List containing the indices of the channels selected for the factory.
Referenced by OpenSubdiv::v3_4_3::Far::LimitStencilTableFactoryReal< REAL >::Create().
unsigned int OpenSubdiv::v3_4_3::Far::PatchTableFactory::Options::fvarPatchPrecisionDouble |
Generate double-precision stencils for face-varying patches.
unsigned int OpenSubdiv::v3_4_3::Far::PatchTableFactory::Options::generateAllLevels |
Generate levels from 'firstLevel' to 'maxLevel' (Uniform mode only)
unsigned int OpenSubdiv::v3_4_3::Far::PatchTableFactory::Options::generateFVarLegacyLinearPatches |
Generate all linear face-varying patches (legacy)
Referenced by OpenSubdiv::v3_4_3::Far::LimitStencilTableFactoryReal< REAL >::Create().
unsigned int OpenSubdiv::v3_4_3::Far::PatchTableFactory::Options::generateFVarTables |
Generate face-varying patch tables.
Referenced by OpenSubdiv::v3_4_3::Far::LimitStencilTableFactoryReal< REAL >::Create().
unsigned int OpenSubdiv::v3_4_3::Far::PatchTableFactory::Options::generateLegacySharpCornerPatches |
Generate sharp regular patches at smooth corners (legacy)
unsigned int OpenSubdiv::v3_4_3::Far::PatchTableFactory::Options::generateVaryingLocalPoints |
Generate local points with varying patches.
unsigned int OpenSubdiv::v3_4_3::Far::PatchTableFactory::Options::generateVaryingTables |
Generate varying patch tables.
Referenced by OpenSubdiv::v3_4_3::Far::LimitStencilTableFactoryReal< REAL >::Create().
unsigned int OpenSubdiv::v3_4_3::Far::PatchTableFactory::Options::includeBaseLevelIndices |
Include base level in patch point indices (Uniform mode only)
Referenced by OpenSubdiv::v3_4_3::Far::LimitStencilTableFactoryReal< REAL >::Create().
unsigned int OpenSubdiv::v3_4_3::Far::PatchTableFactory::Options::includeFVarBaseLevelIndices |
Include base level in face-varying patch point indices (Uniform mode only)
Referenced by OpenSubdiv::v3_4_3::Far::LimitStencilTableFactoryReal< REAL >::Create().
unsigned int OpenSubdiv::v3_4_3::Far::PatchTableFactory::Options::maxIsolationLevel |
Cap adaptive feature isolation to the given level (max. 10)
int OpenSubdiv::v3_4_3::Far::PatchTableFactory::Options::numFVarChannels |
Number of channel indices and interpolation modes passed.
Referenced by OpenSubdiv::v3_4_3::Far::LimitStencilTableFactoryReal< REAL >::Create().
unsigned int OpenSubdiv::v3_4_3::Far::PatchTableFactory::Options::patchPrecisionDouble |
Generate double-precision stencils for vertex patches.
unsigned int OpenSubdiv::v3_4_3::Far::PatchTableFactory::Options::shareEndCapPatchPoints |
Share endcap patch points among adjacent endcap patches. < currently only work with GregoryBasis.
unsigned int OpenSubdiv::v3_4_3::Far::PatchTableFactory::Options::triangulateQuads |
Triangulate 'QUADS' primitives (Uniform mode only)
unsigned int OpenSubdiv::v3_4_3::Far::PatchTableFactory::Options::useInfSharpPatch |
Use infinitely-sharp patch.
Referenced by OpenSubdiv::v3_4_3::Far::LimitStencilTableFactoryReal< REAL >::Create().
unsigned int OpenSubdiv::v3_4_3::Far::PatchTableFactory::Options::useSingleCreasePatch |
Use single crease patch.