LimitStencilTable Class Reference

Public Member Functions | Friends | List of all members
LimitStencilTable Class Reference

Table of limit subdivision stencils. More...

`#include <stencilTable.h>`

Inheritance diagram for LimitStencilTable:

## Public Member Functions
LimitStencil | GetLimitStencil (Index i) const
| Returns a LimitStencil at index i in the table. More...
LimitStencil | operator[] (Index index) const
| Returns the limit stencil at index i in the table. More...
std::vector< float > const & | GetDuWeights () const
| Returns the 'u' derivative stencil interpolation weights. More...
std::vector< float > const & | GetDvWeights () const
| Returns the 'v' derivative stencil interpolation weights. More...
std::vector< float > const & | GetDuuWeights () const
| Returns the 'uu' derivative stencil interpolation weights. More...
std::vector< float > const & | GetDuvWeights () const
| Returns the 'uv' derivative stencil interpolation weights. More...
std::vector< float > const & | GetDvvWeights () const
| Returns the 'vv' derivative stencil interpolation weights. More...
template<class T >
void | UpdateDerivs (T const *controlValues, T *uderivs, T *vderivs, int start=-1, int end=-1) const
| Updates derivative values based on the control values. More...
template<class T >
void | Update2ndDerivs (T const *controlValues, T *uuderivs, T *uvderivs, T *vvderivs, int start=-1, int end=-1) const
| Updates 2nd derivative values based on the control values. More...
void | Clear ()
| Clears the stencils from the table. More...
Public Member Functions inherited from StencilTable
virtual | ~StencilTable ()
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...
Stencil | 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< float > const & | GetWeights () const
| Returns the stencil interpolation weights. More...
Stencil | operator[] (Index index) const
| Returns the stencil at index i in the table. More...
template<class T >
void | UpdateValues (T const *controlValues, T *values, 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...

## Friends
class | LimitStencilTableFactory

## Additional Inherited Members
Protected Member Functions inherited from StencilTable
template<class T >
void | update (T const *controlValues, T *values, 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 ()
| StencilTable ()
| StencilTable (int numControlVerts)
Protected Attributes inherited from StencilTable
int | _numControlVertices
std::vector< int > | _sizes
std::vector< Index > | _offsets
std::vector< Index > | _indices
std::vector< float > | _weights

## Detailed Description

Table of limit subdivision stencils.

Definition at line 333 of file stencilTable.h.

## Member Function Documentation

## § Clear()

void Clear | ( |  | ) |

Clears the stencils from the table.

## § GetDuuWeights()

std::vector<float> const& GetDuuWeights | ( |  | ) | const
| inline

Returns the 'uu' derivative stencil interpolation weights.

Definition at line 366 of file stencilTable.h.

## § GetDuvWeights()

std::vector<float> const& GetDuvWeights | ( |  | ) | const
| inline

Returns the 'uv' derivative stencil interpolation weights.

Definition at line 371 of file stencilTable.h.

## § GetDuWeights()

std::vector<float> const& GetDuWeights | ( |  | ) | const
| inline

Returns the 'u' derivative stencil interpolation weights.

Definition at line 356 of file stencilTable.h.

## § GetDvvWeights()

std::vector<float> const& GetDvvWeights | ( |  | ) | const
| inline

Returns the 'vv' derivative stencil interpolation weights.

Definition at line 376 of file stencilTable.h.

## § GetDvWeights()

std::vector<float> const& GetDvWeights | ( |  | ) | const
| inline

Returns the 'v' derivative stencil interpolation weights.

Definition at line 361 of file stencilTable.h.

## § GetLimitStencil()

LimitStencil GetLimitStencil | ( | Index | i | ) | const
| inline

Returns a LimitStencil at index i in the table.

Definition at line 550 of file stencilTable.h.

## § operator[]()

LimitStencil operator[] | ( | Index | index | ) | const
| inline

Returns the limit stencil at index i in the table.

Definition at line 579 of file stencilTable.h.

## § Update2ndDerivs()

void Update2ndDerivs | ( | T const * | controlValues,
|  | T * | uuderivs,
|  | T * | uvderivs,
|  | T * | vvderivs,
|  | int | start = `-1`,
|  | int | end = `-1`
| ) |  | const
| inline

Updates 2nd derivative values based on the control values.

Note
  The destination buffers ('uuderivs', 'uvderivs', & 'vderivs') are assumed to have allocated at least `GetNumStencils()` elements.

Parameters

  controlValues | Buffer with primvar data for the control vertices
  uuderivs | Destination buffer for the interpolated 'uu' derivative primvar data
  uvderivs | Destination buffer for the interpolated 'uv' derivative primvar data
  vvderivs | Destination buffer for the interpolated 'vv' derivative primvar data
  start | index of first value to update
  end | Index of last value to update

Definition at line 426 of file stencilTable.h.

## § UpdateDerivs()

void UpdateDerivs | ( | T const * | controlValues,
|  | T * | uderivs,
|  | T * | vderivs,
|  | int | start = `-1`,
|  | int | end = `-1`
| ) |  | const
| inline

Updates derivative values based on the control values.

Note
  The destination buffers ('uderivs' & 'vderivs') are assumed to have allocated at least `GetNumStencils()` elements.

Parameters

  controlValues | Buffer with primvar data for the control vertices
  uderivs | Destination buffer for the interpolated 'u' derivative primvar data
  vderivs | Destination buffer for the interpolated 'v' derivative primvar data
  start | index of first value to update
  end | Index of last value to update

Definition at line 398 of file stencilTable.h.

## Friends And Related Function Documentation

## § LimitStencilTableFactory

friend class LimitStencilTableFactory
| friend

Definition at line 438 of file stencilTable.h.

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

- opensubdiv/far/stencilTable.h