Classes | Public Types | Static Public Member Functions | List of all members
StencilTableFactory Class Reference

A specialized factory for StencilTable. More...

`#include <stencilTableFactory.h>`

## Classes
struct | Options

## Public Types
enum | Mode { INTERPOLATE_VERTEX =0, INTERPOLATE_VARYING }

## Static Public Member Functions
static StencilTable const * | Create (TopologyRefiner const &refiner, Options options=Options())
| Instantiates StencilTable from TopologyRefiner that have been refined uniformly or adaptively. More...
static StencilTable const * | Create (int numTables, StencilTable const **tables)
| Instantiates StencilTable by concatenating an array of existing stencil table. More...
static StencilTable const * | AppendLocalPointStencilTable (TopologyRefiner const &refiner, StencilTable const *baseStencilTable, StencilTable const *localPointStencilTable, bool factorize=true)
| Utility function for stencil splicing for local point stencils. More...

## Detailed Description

A specialized factory for StencilTable.

Definition at line 48 of file stencilTableFactory.h.

## Member Enumeration Documentation

## § Mode

enum Mode

Enumerator
INTERPOLATE_VERTEX |
INTERPOLATE_VARYING |

Definition at line 52 of file stencilTableFactory.h.

## Member Function Documentation

## § AppendLocalPointStencilTable()

static StencilTable const* AppendLocalPointStencilTable | ( | TopologyRefiner const & | refiner,
|  | StencilTable const * | baseStencilTable,
|  | StencilTable const * | localPointStencilTable,
|  | bool | factorize = `true`
| ) |  |
| static

Utility function for stencil splicing for local point stencils.

Parameters

  refiner | The TopologyRefiner containing the topology
  baseStencilTable | Input StencilTable for refined vertices
  localPointStencilTable | StencilTable for the change of basis patch points.
  factorize | If factorize sets to true, endcap stencils will be factorized with supporting vertices from baseStencil table so that the endcap points can be computed directly from control vertices.

## § Create() [1/2]

static StencilTable const* Create | ( | TopologyRefiner const & | refiner,
|  | Options | options = `Options()`
| ) |  |
| static

Instantiates StencilTable from TopologyRefiner that have been refined uniformly or adaptively.

Note
  The factory only creates stencils for vertices that have already been refined in the TopologyRefiner. Use RefineUniform() or RefineAdaptive() before constructing the stencils.

Parameters

  refiner | The TopologyRefiner containing the topology
  options | Options controlling the creation of the table

## § Create() [2/2]

static StencilTable const* Create | ( | int | numTables,
|  | StencilTable const ** | tables
| ) |  |
| static

Instantiates StencilTable by concatenating an array of existing stencil table.

Note
  This factory checks that the stencil table point to the same set of supporting control vertices - no re-indexing is done. GetNumControlVertices() must return the same value for all input tables.

Parameters

  numTables | Number of input StencilTables
  tables | Array of input StencilTables

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

- opensubdiv/far/stencilTableFactory.h