OpenSubdiv
Loading...
Searching...
No Matches
LimitStencilTable Class Reference

Limit stencil table class wrapping the template for compatibility. More...

#include <stencilTable.h>

Inheritance diagram for LimitStencilTable:
LimitStencilTableReal< float > StencilTableReal< float >

Public Member Functions

LimitStencil GetLimitStencil (Index index) const
 
LimitStencil operator[] (Index index) const
 
- Public Member Functions inherited from LimitStencilTableReal< float >
LimitStencilReal< float > GetLimitStencil (Index i) const
 Returns a LimitStencil at index i in the table.
 
LimitStencilReal< float > operator[] (Index index) const
 Returns the limit stencil at index i in the table.
 
std::vector< float > const & GetDuWeights () const
 Returns the 'u' derivative stencil interpolation weights.
 
std::vector< float > const & GetDvWeights () const
 Returns the 'v' derivative stencil interpolation weights.
 
std::vector< float > const & GetDuuWeights () const
 Returns the 'uu' derivative stencil interpolation weights.
 
std::vector< float > const & GetDuvWeights () const
 Returns the 'uv' derivative stencil interpolation weights.
 
std::vector< float > const & GetDvvWeights () const
 Returns the 'vv' derivative stencil interpolation weights.
 
void UpdateDerivs (T const &srcValues, U &uderivs, U &vderivs, int start=-1, int end=-1) const
 Updates derivative values based on the control values.
 
void UpdateDerivs (T1 const &srcBase, int numBase, T2 const &srcRef, U &uderivs, U &vderivs, int start=-1, int end=-1) const
 
void UpdateDerivs (T const *src, U *uderivs, U *vderivs, int start=-1, int end=-1) const
 
void UpdateDerivs (T1 const *srcBase, int numBase, T2 const *srcRef, U *uderivs, U *vderivs, int start=-1, int end=-1) const
 
void Update2ndDerivs (T const &srcValues, U &uuderivs, U &uvderivs, U &vvderivs, int start=-1, int end=-1) const
 Updates 2nd derivative values based on the control values.
 
void Update2ndDerivs (T1 const &srcBase, int numBase, T2 const &srcRef, U &uuderivs, U &uvderivs, U &vvderivs, int start=-1, int end=-1) const
 
void Update2ndDerivs (T const *src, T *uuderivs, U *uvderivs, U *vvderivs, int start=-1, int end=-1) const
 
void Update2ndDerivs (T1 const *srcBase, int numBase, T2 const *srcRef, U *uuderivs, U *uvderivs, U *vvderivs, int start=-1, int end=-1) const
 
void Clear ()
 Clears the stencils from the table.
 
- Public Member Functions inherited from StencilTableReal< float >
virtual ~StencilTableReal ()
 
int GetNumStencils () const
 Returns the number of stencils in the table.
 
int GetNumControlVertices () const
 Returns the number of control vertices indexed in the table.
 
StencilReal< float > GetStencil (Index i) const
 Returns a Stencil at index i in the table.
 
std::vector< int > const & GetSizes () const
 Returns the number of control vertices of each stencil in the table.
 
std::vector< Index > const & GetOffsets () const
 Returns the offset to a given stencil (factory may leave empty)
 
std::vector< Index > const & GetControlIndices () const
 Returns the indices of the control vertices.
 
std::vector< float > const & GetWeights () const
 Returns the stencil interpolation weights.
 
StencilReal< float > operator[] (Index index) const
 Returns the stencil at index i in the table.
 
void UpdateValues (T const &srcValues, U &dstValues, Index start=-1, Index end=-1) const
 Updates point values based on the control values.
 
void UpdateValues (T1 const &srcBase, int numBase, T2 const &srcRef, U &dstValues, Index start=-1, Index end=-1) const
 
void UpdateValues (T const *src, U *dst, Index start=-1, Index end=-1) const
 
void UpdateValues (T1 const *srcBase, int numBase, T2 const *srcRef, U *dst, Index start=-1, Index end=-1) const
 
void Clear ()
 Clears the stencils from the table.
 

Protected Types

typedef LimitStencilTableReal< float > BaseTable
 

Protected Member Functions

 LimitStencilTable (int numControlVerts, std::vector< int > const &offsets, std::vector< int > const &sizes, std::vector< int > const &sources, std::vector< float > const &weights, std::vector< float > const &duWeights, std::vector< float > const &dvWeights, std::vector< float > const &duuWeights, std::vector< float > const &duvWeights, std::vector< float > const &dvvWeights, bool includeCoarseVerts, size_t firstOffset)
 
- Protected Member Functions inherited from LimitStencilTableReal< float >
 LimitStencilTableReal (int numControlVerts, std::vector< int > const &offsets, std::vector< int > const &sizes, std::vector< int > const &sources, std::vector< float > const &weights, std::vector< float > const &duWeights, std::vector< float > const &dvWeights, std::vector< float > const &duuWeights, std::vector< float > const &duvWeights, std::vector< float > const &dvvWeights, bool includeCoarseVerts, size_t firstOffset)
 
- Protected Member Functions inherited from StencilTableReal< float >
 StencilTableReal (int numControlVerts, std::vector< int > const &offsets, std::vector< int > const &sizes, std::vector< int > const &sources, std::vector< float > const &weights, bool includeCoarseVerts, size_t firstOffset)
 
 StencilTableReal ()
 
 StencilTableReal (int numControlVerts)
 
void update (T const &srcValues, U &dstValues, std::vector< float > const &valueWeights, Index start, Index end) const
 
void update (T1 const &srcBase, int numBase, T2 const &srcRef, U &dstValues, std::vector< float > const &valueWeights, Index start, Index end) const
 
void generateOffsets ()
 
void resize (int nstencils, int nelems)
 
void reserve (int nstencils, int nelems)
 
void shrinkToFit ()
 
void finalize ()
 

Additional Inherited Members

- Protected Attributes inherited from StencilTableReal< float >
int _numControlVertices
 
std::vector< int > _sizes
 
std::vector< Index_offsets
 
std::vector< Index_indices
 
std::vector< float > _weights
 

Detailed Description

Limit stencil table class wrapping the template for compatibility.

Definition at line 583 of file stencilTable.h.

Member Typedef Documentation

◆ BaseTable

LimitStencilTableReal<float> BaseTable
protected

Definition at line 585 of file stencilTable.h.

Constructor & Destructor Documentation

◆ LimitStencilTable()

LimitStencilTable ( int numControlVerts,
std::vector< int > const & offsets,
std::vector< int > const & sizes,
std::vector< int > const & sources,
std::vector< float > const & weights,
std::vector< float > const & duWeights,
std::vector< float > const & dvWeights,
std::vector< float > const & duuWeights,
std::vector< float > const & duvWeights,
std::vector< float > const & dvvWeights,
bool includeCoarseVerts,
size_t firstOffset )
inlineprotected

Definition at line 596 of file stencilTable.h.

Member Function Documentation

◆ GetLimitStencil()

LimitStencil GetLimitStencil ( Index index) const
inline

Definition at line 588 of file stencilTable.h.

◆ operator[]()

LimitStencil operator[] ( Index index) const
inline

Definition at line 591 of file stencilTable.h.


The documentation for this class was generated from the following file: