|  | 
All supported options applying to subdivision scheme. More...
#include <options.h>
| Public Types | |
| enum | VtxBoundaryInterpolation { VTX_BOUNDARY_NONE = 0, VTX_BOUNDARY_EDGE_ONLY, VTX_BOUNDARY_EDGE_AND_CORNER } | 
| enum | FVarLinearInterpolation { FVAR_LINEAR_NONE = 0, FVAR_LINEAR_CORNERS_ONLY, FVAR_LINEAR_CORNERS_PLUS1, FVAR_LINEAR_CORNERS_PLUS2, FVAR_LINEAR_BOUNDARIES, FVAR_LINEAR_ALL } | 
| enum | CreasingMethod { CREASE_UNIFORM = 0, CREASE_CHAIKIN } | 
| enum | TriangleSubdivision { TRI_SUB_CATMARK = 0, TRI_SUB_SMOOTH } | 
| Public Member Functions | |
| Options () | |
| VtxBoundaryInterpolation | GetVtxBoundaryInterpolation () const | 
| Get vertex boundary interpolation rule.  More... | |
| void | SetVtxBoundaryInterpolation (VtxBoundaryInterpolation b) | 
| Set vertex boundary interpolation rule.  More... | |
| FVarLinearInterpolation | GetFVarLinearInterpolation () const | 
| Get face-varying interpolation rule.  More... | |
| void | SetFVarLinearInterpolation (FVarLinearInterpolation b) | 
| Set face-varying interpolation rule.  More... | |
| CreasingMethod | GetCreasingMethod () const | 
| Get edge crease rule.  More... | |
| void | SetCreasingMethod (CreasingMethod c) | 
| Set edge crease rule.  More... | |
| TriangleSubdivision | GetTriangleSubdivision () const | 
| Get triangle subdivision weights rule (Catmark scheme only !)  More... | |
| void | SetTriangleSubdivision (TriangleSubdivision t) | 
| Set triangle subdivision weights rule (Catmark scheme only !)  More... | |
All supported options applying to subdivision scheme.
The Options class contains all supported options that can be applied to a subdivision scheme to affect the shape of the limit surface. These differ from approximations that may be applied at a higher level, i.e. options to limit the level of feature adaptive subdivision, options to ignore fractional creasing, or creasing entirely, etc. These options define the shape of a particular limit surface, including the "shape" of primitive variable data associated with it.
The intent is that these sets of options be defined at a high level and propagated into the lowest-level computation in support of each subdivision scheme. Ideally it remains a set of bit-fields (essentially an int) and so remains light weight and easily passed around by value.
| enum CreasingMethod | 
| enum TriangleSubdivision | 
| 
 | inline | 
| 
 | inline | 
| 
 | inline | 
| 
 | inline | 
| 
 | inline | 
| 
 | inline | 
| 
 | inline | 
| 
 | inline |