Developer Documentation

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
Public Types | Public Member Functions | Private Attributes | List of all members
OpenMesh::Decimater::ModNormalDeviationT< MeshT > Class Template Reference

Use Normal deviation to control decimation. More...

`#include <libs_required/OpenMesh/src/OpenMesh/Tools/Decimater/ModNormalDeviationT.hh>`

Inheritance diagram for OpenMesh::Decimater::ModNormalDeviationT< MeshT >:

## Public Types
typedef Mesh::Scalar | Scalar
typedef Mesh::Point | Point
typedef Mesh::Normal | Normal
typedef Mesh::VertexHandle | VertexHandle
typedef Mesh::FaceHandle | FaceHandle
typedef Mesh::EdgeHandle | EdgeHandle
typedef NormalConeT< Scalar > | NormalCone
Public Types inherited from OpenMesh::Decimater::ModBaseT< MeshT >
enum | { ILLEGAL_COLLAPSE = -1, LEGAL_COLLAPSE = 0 }
typedef MeshT | Mesh
typedef CollapseInfoT< MeshT > | CollapseInfo

## Public Member Functions
| DECIMATING_MODULE (ModNormalDeviationT, MeshT, NormalDeviation)
| ModNormalDeviationT (MeshT &_mesh, float _max_dev=180.0)
| Constructor.
| ~ModNormalDeviationT ()
| Destructor.
Scalar | normal_deviation () const
| Get normal deviation ( 0 .. 360 )
void | set_normal_deviation (Scalar _s)
| Set normal deviation ( 0 .. 360 )
void | initialize ()
| Allocate and init normal cones.
float | collapse_priority (const CollapseInfo &_ci)
| Control normals when Decimating. More...
void | set_error_tolerance_factor (double _factor)
| set the percentage of normal deviation
void | postprocess_collapse (const CollapseInfo &_ci)
Public Member Functions inherited from OpenMesh::Decimater::ModBaseT< MeshT >
virtual | ~ModBaseT ()
| Virtual desctructor.
| DECIMATER_MODNAME (ModBase)
| Set module's name (using DECIMATER_MODNAME macro)
bool | is_binary (void) const
| Returns true if criteria returns a binary value.
void | set_binary (bool _b)
| Set whether module is binary or not.
virtual void | preprocess_collapse (const CollapseInfoT< MeshT > &)

## Private Attributes
Mesh & | mesh_
Scalar | normal_deviation_
OpenMesh::FPropHandleT < NormalCone > | normal_cones_

## Additional Inherited Members
Protected Member Functions inherited from OpenMesh::Decimater::ModBaseT< MeshT >
| ModBaseT (MeshT &_mesh, bool _is_binary)
MeshT & | mesh ()
| Access the mesh associated with the decimater.
Protected Attributes inherited from OpenMesh::Decimater::ModBaseT< MeshT >
double | error_tolerance_factor_

## Detailed Description

### template<class MeshT>
class OpenMesh::Decimater::ModNormalDeviationT< MeshT >

Use Normal deviation to control decimation.

The module tracks the normals while decimating a normal cone consisting of all normals of the faces collapsed together is computed and if a collapse would increase the size of the cone to a value greater than the given value the collapse will be illegal.

In binary and mode, the collapse is legal if:

- The normal deviation after the collapse is lower than the given value

In continuous mode the maximal deviation is returned

Definition at line 94 of file ModNormalDeviationT.hh.

## Member Function Documentation

template<class MeshT>

float OpenMesh::Decimater::ModNormalDeviationT< MeshT >::collapse_priority | ( | const CollapseInfo & | _ci | ) |
| inline virtual

Control normals when Decimating.

Binary and Cont. mode.

The module tracks the normals while decimating a normal cone consisting of all normals of the faces collapsed together is computed and if a collapse would increase the size of the cone to a value greater than the given value the collapse will be illegal.

Parameters

  _ci | Collapse info data

Returns
  Half of the normal cones size (radius in radians)

Reimplemented from OpenMesh::Decimater::ModBaseT< MeshT >.

Definition at line 174 of file ModNormalDeviationT.hh.

template<class MeshT>

void OpenMesh::Decimater::ModNormalDeviationT< MeshT >::postprocess_collapse | ( | const CollapseInfo & |  | ) |
| inline virtual

After _from_vh has been collapsed into _to_vh, this method will be called.

Reimplemented from OpenMesh::Decimater::ModBaseT< MeshT >.

Definition at line 224 of file ModNormalDeviationT.hh.

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

- libs_required/OpenMesh/src/OpenMesh/Tools/Decimater/ModNormalDeviationT.hh