OpenSubdiv: TopologyRefiner Class Reference

| OpenSubdiv

Classes | Public Member Functions | List of all members
TopologyRefiner Class Reference

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

`#include <topologyRefiner.h>`

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

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

## 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. More...
Sdc::Options::FVarLinearInterpolation | GetFVarLinearInterpolation (int channel=0) const
| Returns the face-varying interpolation rule set for a given channel. More...
int | GetNumFVarValuesTotal (int channel=0) const
| Returns the total number of face-varying values in all levels. More...
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 51 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 196 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 298 of file topologyRefiner.h.

## ◆ getLevel() [1/2]

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

Definition at line 236 of file topologyRefiner.h.

## ◆ getLevel() [2/2]

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

Definition at line 237 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 95 of file topologyRefiner.h.

## ◆ GetMaxLevel()

int GetMaxLevel | ( |  | ) | const
| inline

Returns the highest level of refinement.

Definition at line 74 of file topologyRefiner.h.

## ◆ GetMaxValence()

int GetMaxValence | ( |  | ) | const
| inline

Returns the maximum vertex valence in all levels.

Definition at line 77 of file topologyRefiner.h.

## ◆ GetNumEdgesTotal()

int GetNumEdgesTotal | ( |  | ) | const
| inline

Returns the total number of edges in all levels.

Definition at line 86 of file topologyRefiner.h.

## ◆ GetNumFacesTotal()

int GetNumFacesTotal | ( |  | ) | const
| inline

Returns the total number of edges in all levels.

Definition at line 89 of file topologyRefiner.h.

## ◆ GetNumFaceVerticesTotal()

int GetNumFaceVerticesTotal | ( |  | ) | const
| inline

Returns the total number of face vertices in all levels.

Definition at line 92 of file topologyRefiner.h.

## ◆ GetNumFVarChannels()

int GetNumFVarChannels | ( |  | ) | const
| inline

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

Definition at line 293 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 71 of file topologyRefiner.h.

## ◆ GetNumVerticesTotal()

int GetNumVerticesTotal | ( |  | ) | const
| inline

Returns the total number of vertices in all levels.

Definition at line 83 of file topologyRefiner.h.

## ◆ getRefinement() [1/2]

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

Definition at line 239 of file topologyRefiner.h.

## ◆ getRefinement() [2/2]

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

Definition at line 240 of file topologyRefiner.h.

## ◆ GetSchemeOptions()

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

Returns the subdivision options.

Definition at line 65 of file topologyRefiner.h.

## ◆ GetSchemeType()

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

Returns the subdivision scheme.

Definition at line 62 of file topologyRefiner.h.

## ◆ GetUniformOptions()

UniformOptions GetUniformOptions | ( |  | ) | const
| inline

Returns the options specified on refinement.

Definition at line 149 of file topologyRefiner.h.

## ◆ HasHoles()

bool HasHoles | ( |  | ) | const
| inline

Returns true if faces have been tagged as holes.

Definition at line 80 of file topologyRefiner.h.

## ◆ IsUniform()

bool IsUniform | ( |  | ) | const
| inline

Returns true if uniform refinement has been applied.

Definition at line 68 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 Function Documentation

## ◆ PatchBuilder

friend class PatchBuilder
| friend

Definition at line 226 of file topologyRefiner.h.

## ◆ PatchTableBuilder

friend class PatchTableBuilder
| friend

Definition at line 225 of file topologyRefiner.h.

## ◆ PrimvarRefinerReal

friend class PrimvarRefinerReal
| friend

Definition at line 229 of file topologyRefiner.h.

## ◆ PtexIndices

friend class PtexIndices
| friend

Definition at line 227 of file topologyRefiner.h.

## ◆ TopologyRefinerFactory

friend class TopologyRefinerFactory
| friend

Definition at line 223 of file topologyRefiner.h.

## ◆ TopologyRefinerFactoryBase

friend class TopologyRefinerFactoryBase
| friend

Definition at line 224 of file topologyRefiner.h.

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

- opensubdiv/far/topologyRefiner.h