OpenSubdiv: TopologyRefiner Class Reference

| OpenSubdiv

Loading...
Searching...
No Matches
TopologyRefiner Class Reference

Stores topology data for a specified set of refinement options. More...

`#include <topologyRefiner.h>`

## Classes
struct | UniformOptions
| Uniform refinement options. More...
struct | AdaptiveOptions
| Adaptive refinement options. More...

## Public Member Functions
| TopologyRefiner (Sdc::SchemeType type, Sdc::Options options=Sdc::Options())
| Constructor.
| ~TopologyRefiner ()
| Destructor.
Sdc::SchemeType | GetSchemeType () const
| Returns the subdivision scheme.
Sdc::Options | GetSchemeOptions () const
| Returns the subdivision options.
bool | IsUniform () const
| Returns true if uniform refinement has been applied.
int | GetNumLevels () const
| Returns the number of refinement levels.
int | GetMaxLevel () const
| Returns the highest level of refinement.
int | GetMaxValence () const
| Returns the maximum vertex valence in all levels.
bool | HasHoles () const
| Returns true if faces have been tagged as holes.
int | GetNumVerticesTotal () const
| Returns the total number of vertices in all levels.
int | GetNumEdgesTotal () const
| Returns the total number of edges in all levels.
int | GetNumFacesTotal () const
| Returns the total number of edges in all levels.
int | GetNumFaceVerticesTotal () const
| Returns the total number of face vertices in all levels.
TopologyLevel const & | GetLevel (int level) const
| Returns a handle to access data specific to a particular level.
High-level refinement and related methods
void | RefineUniform (UniformOptions options)
| Refine the topology uniformly.
UniformOptions | GetUniformOptions () const
| Returns the options specified on refinement.
void | RefineAdaptive (AdaptiveOptions options, ConstIndexArray selectedFaces=ConstIndexArray())
| Feature Adaptive topology refinement.
AdaptiveOptions | GetAdaptiveOptions () const
| Returns the options specified on refinement.
void | Unrefine ()
| Unrefine the topology, keeping only the base level.

## Number and properties of face-varying channels:
template<class MESH>
class | TopologyRefinerFactory
class | TopologyRefinerFactoryBase
class | PatchTableBuilder
class | PatchBuilder
class | PtexIndices
template<typename REAL>
class | PrimvarRefinerReal
int | GetNumFVarChannels () const
| Returns the number of face-varying channels in the tables.
Sdc::Options::FVarLinearInterpolation | GetFVarLinearInterpolation (int channel=0) const
| Returns the face-varying interpolation rule set for a given channel.
int | GetNumFVarValuesTotal (int channel=0) const
| Returns the total number of face-varying values in all levels.
Vtr::internal::Level & | getLevel (int l)
Vtr::internal::Level const & | getLevel (int l) const
Vtr::internal::Refinement & | getRefinement (int l)
Vtr::internal::Refinement const & | getRefinement (int l) const
| TopologyRefiner (TopologyRefiner const &source)

## Detailed Description

Stores topology data for a specified set of refinement options.

Definition at line 34 of file topologyRefiner.h.

## Constructor & Destructor Documentation

## ◆ TopologyRefiner() [1/2]

TopologyRefiner | ( | Sdc::SchemeType | type,
|  | Sdc::Options | options = Sdc::Options() )

Constructor.

## ◆ ~TopologyRefiner()

~TopologyRefiner | ( |  | ) |

Destructor.

## ◆ TopologyRefiner() [2/2]

TopologyRefiner | ( | TopologyRefiner const & | source | ) |
| protected

## Member Function Documentation

## ◆ GetAdaptiveOptions()

AdaptiveOptions GetAdaptiveOptions | ( |  | ) | const
| inline

Returns the options specified on refinement.

Definition at line 179 of file topologyRefiner.h.

## ◆ GetFVarLinearInterpolation()

Sdc::Options::FVarLinearInterpolation GetFVarLinearInterpolation | ( | int | channel = 0 | ) | const
| inline

Returns the face-varying interpolation rule set for a given channel.

Definition at line 281 of file topologyRefiner.h.

## ◆ GetLevel()

TopologyLevel const & GetLevel | ( | int | level | ) | const
| inline

Returns a handle to access data specific to a particular level.

Definition at line 78 of file topologyRefiner.h.

## ◆ getLevel() [1/2]

Vtr::internal::Level & getLevel | ( | int | l | ) |
| inline

Definition at line 219 of file topologyRefiner.h.

## ◆ getLevel() [2/2]

Vtr::internal::Level const & getLevel | ( | int | l | ) | const
| inline

Definition at line 220 of file topologyRefiner.h.

## ◆ GetMaxLevel()

int GetMaxLevel | ( |  | ) | const
| inline

Returns the highest level of refinement.

Definition at line 57 of file topologyRefiner.h.

## ◆ GetMaxValence()

int GetMaxValence | ( |  | ) | const
| inline

Returns the maximum vertex valence in all levels.

Definition at line 60 of file topologyRefiner.h.

## ◆ GetNumEdgesTotal()

int GetNumEdgesTotal | ( |  | ) | const
| inline

Returns the total number of edges in all levels.

Definition at line 69 of file topologyRefiner.h.

## ◆ GetNumFacesTotal()

int GetNumFacesTotal | ( |  | ) | const
| inline

Returns the total number of edges in all levels.

Definition at line 72 of file topologyRefiner.h.

## ◆ GetNumFaceVerticesTotal()

int GetNumFaceVerticesTotal | ( |  | ) | const
| inline

Returns the total number of face vertices in all levels.

Definition at line 75 of file topologyRefiner.h.

## ◆ GetNumFVarChannels()

int GetNumFVarChannels | ( |  | ) | const
| inline

Returns the number of face-varying channels in the tables.

Definition at line 276 of file topologyRefiner.h.

## ◆ GetNumFVarValuesTotal()

int GetNumFVarValuesTotal | ( | int | channel = 0 | ) | const

Returns the total number of face-varying values in all levels.

## ◆ GetNumLevels()

int GetNumLevels | ( |  | ) | const
| inline

Returns the number of refinement levels.

Definition at line 54 of file topologyRefiner.h.

## ◆ GetNumVerticesTotal()

int GetNumVerticesTotal | ( |  | ) | const
| inline

Returns the total number of vertices in all levels.

Definition at line 66 of file topologyRefiner.h.

## ◆ getRefinement() [1/2]

Vtr::internal::Refinement & getRefinement | ( | int | l | ) |
| inline

Definition at line 222 of file topologyRefiner.h.

## ◆ getRefinement() [2/2]

Vtr::internal::Refinement const & getRefinement | ( | int | l | ) | const
| inline

Definition at line 223 of file topologyRefiner.h.

## ◆ GetSchemeOptions()

Sdc::Options GetSchemeOptions | ( |  | ) | const
| inline

Returns the subdivision options.

Definition at line 48 of file topologyRefiner.h.

## ◆ GetSchemeType()

Sdc::SchemeType GetSchemeType | ( |  | ) | const
| inline

Returns the subdivision scheme.

Definition at line 45 of file topologyRefiner.h.

## ◆ GetUniformOptions()

UniformOptions GetUniformOptions | ( |  | ) | const
| inline

Returns the options specified on refinement.

Definition at line 132 of file topologyRefiner.h.

## ◆ HasHoles()

bool HasHoles | ( |  | ) | const
| inline

Returns true if faces have been tagged as holes.

Definition at line 63 of file topologyRefiner.h.

## ◆ IsUniform()

bool IsUniform | ( |  | ) | const
| inline

Returns true if uniform refinement has been applied.

Definition at line 51 of file topologyRefiner.h.

## ◆ RefineAdaptive()

void RefineAdaptive | ( | AdaptiveOptions | options,
|  | ConstIndexArray | selectedFaces = ConstIndexArray() )

Feature Adaptive topology refinement.

Parameters

  options | Options controlling adaptive refinement
  selectedFaces | Limit adaptive refinement to the specified faces

## ◆ RefineUniform()

void RefineUniform | ( | UniformOptions | options | ) |

Refine the topology uniformly.

This method applies uniform refinement to the level specified in the given UniformOptions.

Note the impact of the UniformOption to generate fullTopologyInLastLevel and be sure it is assigned to satisfy the needs of the resulting refinement.

Parameters

  options | Options controlling uniform refinement

## ◆ Unrefine()

void Unrefine | ( |  | ) |

Unrefine the topology, keeping only the base level.

## Friends And Related Symbol Documentation

## ◆ PatchBuilder

friend class PatchBuilder
| friend

Definition at line 209 of file topologyRefiner.h.

## ◆ PatchTableBuilder

friend class PatchTableBuilder
| friend

Definition at line 208 of file topologyRefiner.h.

## ◆ PrimvarRefinerReal

template<typename REAL>

friend class PrimvarRefinerReal
| friend

Definition at line 212 of file topologyRefiner.h.

## ◆ PtexIndices

friend class PtexIndices
| friend

Definition at line 210 of file topologyRefiner.h.

## ◆ TopologyRefinerFactory

template<class MESH>

friend class TopologyRefinerFactory
| friend

Definition at line 206 of file topologyRefiner.h.

## ◆ TopologyRefinerFactoryBase

friend class TopologyRefinerFactoryBase
| friend

Definition at line 207 of file topologyRefiner.h.

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

- opensubdiv/far/topologyRefiner.h