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)
 Feature Adaptive topology refinement (restricted to scheme Catmark) 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:
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...
 

Protected Member Functions

Vtr::internal::LevelgetLevel (int l)
 
Vtr::internal::Level const & getLevel (int l) const
 
Vtr::internal::RefinementgetRefinement (int l)
 
Vtr::internal::Refinement const & getRefinement (int l) const
 

Friends

template<class MESH >
class TopologyRefinerFactory
 
class TopologyRefinerFactoryBase
 
class PatchTableFactory
 
class EndCapGregoryBasisPatchFactory
 
class EndCapLegacyGregoryPatchFactory
 
class PtexIndices
 
class PrimvarRefiner
 

Detailed Description

Stores topology data for a specified set of refinement options.

Definition at line 50 of file topologyRefiner.h.

Constructor & Destructor Documentation

§ TopologyRefiner()

Constructor.

§ ~TopologyRefiner()

Destructor.

Member Function Documentation

§ GetAdaptiveOptions()

AdaptiveOptions GetAdaptiveOptions ( ) const
inline

Returns the options specified on refinement.

Definition at line 183 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 274 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 94 of file topologyRefiner.h.

§ getLevel() [1/2]

Vtr::internal::Level& getLevel ( int  l)
inlineprotected

Definition at line 218 of file topologyRefiner.h.

§ getLevel() [2/2]

Vtr::internal::Level const& getLevel ( int  l) const
inlineprotected

Definition at line 219 of file topologyRefiner.h.

§ GetMaxLevel()

int GetMaxLevel ( ) const
inline

Returns the highest level of refinement.

Definition at line 73 of file topologyRefiner.h.

§ GetMaxValence()

int GetMaxValence ( ) const
inline

Returns the maximum vertex valence in all levels.

Definition at line 76 of file topologyRefiner.h.

§ GetNumEdgesTotal()

int GetNumEdgesTotal ( ) const
inline

Returns the total number of edges in all levels.

Definition at line 85 of file topologyRefiner.h.

§ GetNumFacesTotal()

int GetNumFacesTotal ( ) const
inline

Returns the total number of edges in all levels.

Definition at line 88 of file topologyRefiner.h.

§ GetNumFaceVerticesTotal()

int GetNumFaceVerticesTotal ( ) const
inline

Returns the total number of face vertices in all levels.

Definition at line 91 of file topologyRefiner.h.

§ GetNumFVarChannels()

int GetNumFVarChannels ( ) const
inline

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

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

§ GetNumVerticesTotal()

int GetNumVerticesTotal ( ) const
inline

Returns the total number of vertices in all levels.

Definition at line 82 of file topologyRefiner.h.

§ getRefinement() [1/2]

Vtr::internal::Refinement& getRefinement ( int  l)
inlineprotected

Definition at line 221 of file topologyRefiner.h.

§ getRefinement() [2/2]

Vtr::internal::Refinement const& getRefinement ( int  l) const
inlineprotected

Definition at line 222 of file topologyRefiner.h.

§ GetSchemeOptions()

Sdc::Options GetSchemeOptions ( ) const
inline

Returns the subdivision options.

Definition at line 64 of file topologyRefiner.h.

§ GetSchemeType()

Sdc::SchemeType GetSchemeType ( ) const
inline

Returns the subdivision scheme.

Definition at line 61 of file topologyRefiner.h.

§ GetUniformOptions()

UniformOptions GetUniformOptions ( ) const
inline

Returns the options specified on refinement.

Definition at line 145 of file topologyRefiner.h.

§ HasHoles()

bool HasHoles ( ) const
inline

Returns true if faces have been tagged as holes.

Definition at line 79 of file topologyRefiner.h.

§ IsUniform()

bool IsUniform ( ) const
inline

Returns true if uniform refinement has been applied.

Definition at line 67 of file topologyRefiner.h.

§ RefineAdaptive()

void RefineAdaptive ( AdaptiveOptions  options)

Feature Adaptive topology refinement (restricted to scheme Catmark)

Parameters
optionsOptions controlling adaptive refinement

§ 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 Function Documentation

§ EndCapGregoryBasisPatchFactory

friend class EndCapGregoryBasisPatchFactory
friend

Definition at line 213 of file topologyRefiner.h.

§ EndCapLegacyGregoryPatchFactory

friend class EndCapLegacyGregoryPatchFactory
friend

Definition at line 214 of file topologyRefiner.h.

§ PatchTableFactory

friend class PatchTableFactory
friend

Definition at line 212 of file topologyRefiner.h.

§ PrimvarRefiner

friend class PrimvarRefiner
friend

Definition at line 216 of file topologyRefiner.h.

§ PtexIndices

friend class PtexIndices
friend

Definition at line 215 of file topologyRefiner.h.

§ TopologyRefinerFactory

friend class TopologyRefinerFactory
friend

Definition at line 210 of file topologyRefiner.h.

§ TopologyRefinerFactoryBase

friend class TopologyRefinerFactoryBase
friend

Definition at line 211 of file topologyRefiner.h.


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