OpenSubdiv
Loading...
Searching...
No Matches
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.
 
 ~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]

Constructor.

◆ ~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
optionsOptions controlling adaptive refinement
selectedFacesLimit 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
optionsOptions 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: