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.
|
Table of subdivision stencils. More...
#include <stencilTable.h>
Public Member Functions | |
int | GetNumStencils () const |
Returns the number of stencils in the table. More... | |
int | GetNumControlVertices () const |
Returns the number of control vertices indexed in the table. More... | |
StencilReal< REAL > | GetStencil (Index i) const |
Returns a Stencil at index i in the table. More... | |
std::vector< int > const & | GetSizes () const |
Returns the number of control vertices of each stencil in the table. More... | |
std::vector< Index > const & | GetOffsets () const |
Returns the offset to a given stencil (factory may leave empty) More... | |
std::vector< Index > const & | GetControlIndices () const |
Returns the indices of the control vertices. More... | |
std::vector< REAL > const & | GetWeights () const |
Returns the stencil interpolation weights. More... | |
StencilReal< REAL > | operator[] (Index index) const |
Returns the stencil at index i in the table. More... | |
template<class T , class U > | |
void | UpdateValues (T const &srcValues, U &dstValues, Index start=-1, Index end=-1) const |
Updates point values based on the control values. More... | |
void | Clear () |
Clears the stencils from the table. More... | |
Table of subdivision stencils.
Stencils are the most direct method of evaluation of locations on the limit of a surface. Every point of a limit surface can be computed by linearly blending a collection of coarse control vertices.
A stencil assigns a series of control vertex indices with a blending weight that corresponds to a unique parametric location of the limit surface. When the control vertices move in space, the limit location can be very efficiently recomputed simply by applying the blending weights to the series of coarse control vertices.
void OpenSubdiv::v3_4_3::Far::StencilTableReal< REAL >::Clear | ( | ) |
Clears the stencils from the table.
Referenced by OpenSubdiv::v3_4_3::Far::LimitStencilTableReal< REAL >::Clear().
|
inline |
Returns the indices of the control vertices.
Referenced by OpenSubdiv::v3_4_3::Far::StencilTableFactoryReal< REAL >::Create().
|
inline |
Returns the number of control vertices indexed in the table.
Referenced by OpenSubdiv::v3_4_3::Far::StencilTableFactoryReal< REAL >::Create().
|
inline |
Returns the number of stencils in the table.
Referenced by OpenSubdiv::v3_4_3::Far::StencilTableFactoryReal< REAL >::Create(), and OpenSubdiv::v3_4_3::Far::LimitStencilTableFactoryReal< REAL >::Create().
|
inline |
Returns the offset to a given stencil (factory may leave empty)
|
inline |
Returns the number of control vertices of each stencil in the table.
|
inline |
Returns a Stencil at index i in the table.
|
inline |
Returns the stencil interpolation weights.
|
inline |
Returns the stencil at index i in the table.
|
inline |
Updates point values based on the control values.
GetNumStencils()
elements.srcValues | Buffer with primvar data for the control vertices |
dstValues | Destination buffer for the interpolated primvar data |
start | Index of first destination value to update |
end | Index of last destination value to update |