OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M > Class Template Reference

#include <RuleInterfaceT.hh>

Inheritance diagram for OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >:
Inheritance graph
[legend]

List of all members.

Public Types

typedef M Mesh
typedef RuleHandleT< SelfRule
typedef M::Scalar scalar_t
typedef RuleInterfaceT< M > Self

Public Member Functions

int number () const
 Position in rule sequence.
int subdiv_type () const
 Type of split operation, if it is a topological operator.
virtual const char * type () const =0
void update (typename M::VertexHandle &_vh, state_t _target_state)
void update (typename M::EdgeHandle &_eh, state_t _target_state)
void update (typename M::FaceHandle &_fh, state_t _target_state)
virtual ~RuleInterfaceT ()
 Destructor.
Parameterization of rule

scalar_t coeff () const
 Get coefficient - ignored by non-parameterized rules.
virtual void set_coeff (scalar_t _coeff)
 Set coefficient - ignored by non-parameterized rules.
Raise item

virtual void raise (typename M::VertexHandle &_vh, state_t _target_state)
virtual void raise (typename M::EdgeHandle &_eh, state_t _target_state)
virtual void raise (typename M::FaceHandle &_fh, state_t _target_state)
 Raise item to target state _target_state.

Protected Member Functions

int n_rules ()
Selfprev_rule ()
 RuleInterfaceT (Mesh &_mesh)
 Default constructor.
void set_n_rules (int _n)
void set_number (int _n)
void set_prev_rule (Self *&_p)
void set_subdiv_rule (Self *&_n)
void set_subdiv_type (int _n)
Selfsubdiv_rule ()

Protected Attributes

Meshmesh_

Private Member Functions

RuleInterfaceToperator= (const RuleInterfaceT &)
 RuleInterfaceT (const RuleInterfaceT &)

Private Attributes

scalar_t coeff_
int n_rules_
int number_
Selfprev_rule_
Selfsubdiv_rule_
int subdiv_type_

Friends

class CompositeT< M >

Detailed Description

template<typename M>
class OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >

Base class for adaptive composite subdivision rules

See also:
class CompositeT

Definition at line 106 of file RuleInterfaceT.hh.


Member Typedef Documentation

template<typename M >
typedef M OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >::Mesh

Definition at line 110 of file RuleInterfaceT.hh.

template<typename M >
typedef RuleHandleT< Self > OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >::Rule

Definition at line 112 of file RuleInterfaceT.hh.

template<typename M >
typedef M::Scalar OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >::scalar_t

Definition at line 114 of file RuleInterfaceT.hh.

template<typename M >
typedef RuleInterfaceT<M> OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >::Self

Definition at line 111 of file RuleInterfaceT.hh.


Constructor & Destructor Documentation

template<typename M >
OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >::RuleInterfaceT ( Mesh _mesh  )  [inline, protected]

Default constructor.

Definition at line 119 of file RuleInterfaceT.hh.

template<typename M >
virtual OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >::~RuleInterfaceT (  )  [inline, virtual]

Destructor.

Definition at line 124 of file RuleInterfaceT.hh.

template<typename M >
OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >::RuleInterfaceT ( const RuleInterfaceT< M > &   )  [private]

Member Function Documentation

template<typename M >
scalar_t OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >::coeff (  )  const [inline]

Get coefficient - ignored by non-parameterized rules.

Definition at line 349 of file RuleInterfaceT.hh.

template<typename M >
int OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >::n_rules (  )  [inline, protected]

Definition at line 364 of file RuleInterfaceT.hh.

template<typename M >
int OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >::number (  )  const [inline]

Position in rule sequence.

Definition at line 340 of file RuleInterfaceT.hh.

template<typename M >
RuleInterfaceT& OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >::operator= ( const RuleInterfaceT< M > &   )  [private]
template<typename M >
Self* OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >::prev_rule (  )  [inline, protected]

Definition at line 356 of file RuleInterfaceT.hh.

template<typename M >
virtual void OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >::raise ( typename M::VertexHandle &  _vh,
state_t  _target_state 
) [inline, virtual]
template<typename M >
virtual void OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >::raise ( typename M::EdgeHandle &  _eh,
state_t  _target_state 
) [inline, virtual]
template<typename M >
virtual void OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >::raise ( typename M::FaceHandle &  _fh,
state_t  _target_state 
) [inline, virtual]
template<typename M >
virtual void OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >::set_coeff ( scalar_t  _coeff  )  [inline, virtual]

Set coefficient - ignored by non-parameterized rules.

Definition at line 346 of file RuleInterfaceT.hh.

template<typename M >
void OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >::set_n_rules ( int  _n  )  [inline, protected]

Definition at line 363 of file RuleInterfaceT.hh.

template<typename M >
void OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >::set_number ( int  _n  )  [inline, protected]

Definition at line 361 of file RuleInterfaceT.hh.

template<typename M >
void OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >::set_prev_rule ( Self *&  _p  )  [inline, protected]

Definition at line 355 of file RuleInterfaceT.hh.

template<typename M >
void OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >::set_subdiv_rule ( Self *&  _n  )  [inline, protected]

Definition at line 358 of file RuleInterfaceT.hh.

template<typename M >
void OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >::set_subdiv_type ( int  _n  )  [inline, protected]

Definition at line 366 of file RuleInterfaceT.hh.

template<typename M >
Self* OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >::subdiv_rule (  )  [inline, protected]

Definition at line 359 of file RuleInterfaceT.hh.

template<typename M >
int OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >::subdiv_type (  )  const [inline]

Type of split operation, if it is a topological operator.

Definition at line 336 of file RuleInterfaceT.hh.

template<typename M >
virtual const char* OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >::type (  )  const [pure virtual]

Returns the name of the rule. Use define COMPOSITE_RULE to overload this function in a derived class.

template<typename M >
void OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >::update ( typename M::VertexHandle &  _vh,
state_t  _target_state 
) [inline]

Definition at line 287 of file RuleInterfaceT.hh.

template<typename M >
void OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >::update ( typename M::EdgeHandle &  _eh,
state_t  _target_state 
) [inline]

Definition at line 255 of file RuleInterfaceT.hh.

template<typename M >
void OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >::update ( typename M::FaceHandle &  _fh,
state_t  _target_state 
) [inline]

Definition at line 161 of file RuleInterfaceT.hh.


Friends And Related Function Documentation

template<typename M >
friend class CompositeT< M > [friend]

Definition at line 369 of file RuleInterfaceT.hh.


Member Data Documentation

template<typename M >
scalar_t OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >::coeff_ [private]

Definition at line 384 of file RuleInterfaceT.hh.

template<typename M >
Mesh& OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >::mesh_ [protected]

Definition at line 373 of file RuleInterfaceT.hh.

template<typename M >
int OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >::n_rules_ [private]

Definition at line 382 of file RuleInterfaceT.hh.

template<typename M >
int OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >::number_ [private]

Definition at line 381 of file RuleInterfaceT.hh.

template<typename M >
Self* OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >::prev_rule_ [private]

Definition at line 377 of file RuleInterfaceT.hh.

template<typename M >
Self* OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >::subdiv_rule_ [private]

Definition at line 378 of file RuleInterfaceT.hh.

template<typename M >
int OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >::subdiv_type_ [private]

Definition at line 380 of file RuleInterfaceT.hh.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines


openmesh
Author(s): Benjamin Pitzer
autogenerated on Fri Jan 11 12:11:20 2013