MEPP2 Project
Public Member Functions | Protected Member Functions | Private Attributes | List of all members
FEVV::Filters::Uniform_dequantization< HalfedgeGraph, PointMap, Vector, Point, vertex_descriptor, vertex_iterator > Class Template Reference

Uniform_dequantization is a class dedicated to the XYZ uniform dequantization of vertex coordinates stored in the mesh point map. More...

#include <Uniform_dequantization.h>

Inheritance diagram for FEVV::Filters::Uniform_dequantization< HalfedgeGraph, PointMap, Vector, Point, vertex_descriptor, vertex_iterator >:
Inheritance graph
Collaboration diagram for FEVV::Filters::Uniform_dequantization< HalfedgeGraph, PointMap, Vector, Point, vertex_descriptor, vertex_iterator >:
Collaboration graph

Public Member Functions

 Uniform_dequantization (const HalfedgeGraph &g, PointMap &pm, int nb_bits_quantization, const std::vector< double > &bb_dimension, const std::vector< double > &init_point)
 
Point dequantize (vertex_descriptor v)
 
Point dequantize (const Point &pq)
 
void point_dequantization ()
 Dequantizes all vertex positions stored in the point map. More...
 
int get_nb_bits_quantization () const
 

Protected Member Functions

void set_max_length ()
 
void set_quantization_step ()
 

Private Attributes

const HalfedgeGraph & _g
 
PointMap & _pm
 Topology remains the same. More...
 
const int _nb_bits_quantization
 Point map changes. More...
 
const std::vector< double > _bb_dimension
 
const std::vector< double > _init_point
 
double _max_length
 
double _quantization_step
 

Detailed Description

template<typename HalfedgeGraph, typename PointMap, typename Vector = typename FEVV::Geometry_traits< HalfedgeGraph >::Vector, typename Point = typename FEVV::Geometry_traits< HalfedgeGraph >::Point, typename vertex_descriptor = typename boost::graph_traits< HalfedgeGraph >::vertex_descriptor, typename vertex_iterator = typename boost::graph_traits< HalfedgeGraph >::vertex_iterator>
class FEVV::Filters::Uniform_dequantization< HalfedgeGraph, PointMap, Vector, Point, vertex_descriptor, vertex_iterator >

Uniform_dequantization is a class dedicated to the XYZ uniform dequantization of vertex coordinates stored in the mesh point map.

Definition at line 45 of file Uniform_dequantization.h.

Constructor & Destructor Documentation

◆ Uniform_dequantization()

template<typename HalfedgeGraph , typename PointMap , typename Vector = typename FEVV::Geometry_traits< HalfedgeGraph >::Vector, typename Point = typename FEVV::Geometry_traits< HalfedgeGraph >::Point, typename vertex_descriptor = typename boost::graph_traits< HalfedgeGraph >::vertex_descriptor, typename vertex_iterator = typename boost::graph_traits< HalfedgeGraph >::vertex_iterator>
FEVV::Filters::Uniform_dequantization< HalfedgeGraph, PointMap, Vector, Point, vertex_descriptor, vertex_iterator >::Uniform_dequantization ( const HalfedgeGraph &  g,
PointMap &  pm,
int  nb_bits_quantization,
const std::vector< double > &  bb_dimension,
const std::vector< double > &  init_point 
)
inline

Definition at line 49 of file Uniform_dequantization.h.

Member Function Documentation

◆ dequantize() [1/2]

template<typename HalfedgeGraph , typename PointMap , typename Vector = typename FEVV::Geometry_traits< HalfedgeGraph >::Vector, typename Point = typename FEVV::Geometry_traits< HalfedgeGraph >::Point, typename vertex_descriptor = typename boost::graph_traits< HalfedgeGraph >::vertex_descriptor, typename vertex_iterator = typename boost::graph_traits< HalfedgeGraph >::vertex_iterator>
Point FEVV::Filters::Uniform_dequantization< HalfedgeGraph, PointMap, Vector, Point, vertex_descriptor, vertex_iterator >::dequantize ( const Point pq)
inline

Dequantizes a Point p according to dequantization parameters. The mesh point map is not modified. Returns the dequantized XYZ point.

Definition at line 91 of file Uniform_dequantization.h.

◆ dequantize() [2/2]

template<typename HalfedgeGraph , typename PointMap , typename Vector = typename FEVV::Geometry_traits< HalfedgeGraph >::Vector, typename Point = typename FEVV::Geometry_traits< HalfedgeGraph >::Point, typename vertex_descriptor = typename boost::graph_traits< HalfedgeGraph >::vertex_descriptor, typename vertex_iterator = typename boost::graph_traits< HalfedgeGraph >::vertex_iterator>
Point FEVV::Filters::Uniform_dequantization< HalfedgeGraph, PointMap, Vector, Point, vertex_descriptor, vertex_iterator >::dequantize ( vertex_descriptor  v)
inline

Dequantizes a vertex position according to dequantization parameters. The mesh point map is not modified. Returns the dequantized XYZ vertex position.

Definition at line 82 of file Uniform_dequantization.h.

Here is the caller graph for this function:

◆ get_nb_bits_quantization()

template<typename HalfedgeGraph , typename PointMap , typename Vector = typename FEVV::Geometry_traits< HalfedgeGraph >::Vector, typename Point = typename FEVV::Geometry_traits< HalfedgeGraph >::Point, typename vertex_descriptor = typename boost::graph_traits< HalfedgeGraph >::vertex_descriptor, typename vertex_iterator = typename boost::graph_traits< HalfedgeGraph >::vertex_iterator>
int FEVV::Filters::Uniform_dequantization< HalfedgeGraph, PointMap, Vector, Point, vertex_descriptor, vertex_iterator >::get_nb_bits_quantization ( ) const
inline

Definition at line 140 of file Uniform_dequantization.h.

◆ point_dequantization()

template<typename HalfedgeGraph , typename PointMap , typename Vector = typename FEVV::Geometry_traits< HalfedgeGraph >::Vector, typename Point = typename FEVV::Geometry_traits< HalfedgeGraph >::Point, typename vertex_descriptor = typename boost::graph_traits< HalfedgeGraph >::vertex_descriptor, typename vertex_iterator = typename boost::graph_traits< HalfedgeGraph >::vertex_iterator>
void FEVV::Filters::Uniform_dequantization< HalfedgeGraph, PointMap, Vector, Point, vertex_descriptor, vertex_iterator >::point_dequantization ( )
inline

Dequantizes all vertex positions stored in the point map.

Definition at line 111 of file Uniform_dequantization.h.

Here is the caller graph for this function:

◆ set_max_length()

template<typename HalfedgeGraph , typename PointMap , typename Vector = typename FEVV::Geometry_traits< HalfedgeGraph >::Vector, typename Point = typename FEVV::Geometry_traits< HalfedgeGraph >::Point, typename vertex_descriptor = typename boost::graph_traits< HalfedgeGraph >::vertex_descriptor, typename vertex_iterator = typename boost::graph_traits< HalfedgeGraph >::vertex_iterator>
void FEVV::Filters::Uniform_dequantization< HalfedgeGraph, PointMap, Vector, Point, vertex_descriptor, vertex_iterator >::set_max_length ( )
inlineprotected

Definition at line 61 of file Uniform_dequantization.h.

Here is the caller graph for this function:

◆ set_quantization_step()

template<typename HalfedgeGraph , typename PointMap , typename Vector = typename FEVV::Geometry_traits< HalfedgeGraph >::Vector, typename Point = typename FEVV::Geometry_traits< HalfedgeGraph >::Point, typename vertex_descriptor = typename boost::graph_traits< HalfedgeGraph >::vertex_descriptor, typename vertex_iterator = typename boost::graph_traits< HalfedgeGraph >::vertex_iterator>
void FEVV::Filters::Uniform_dequantization< HalfedgeGraph, PointMap, Vector, Point, vertex_descriptor, vertex_iterator >::set_quantization_step ( )
inlineprotected

Definition at line 70 of file Uniform_dequantization.h.

Here is the caller graph for this function:

Member Data Documentation

◆ _bb_dimension

template<typename HalfedgeGraph , typename PointMap , typename Vector = typename FEVV::Geometry_traits< HalfedgeGraph >::Vector, typename Point = typename FEVV::Geometry_traits< HalfedgeGraph >::Point, typename vertex_descriptor = typename boost::graph_traits< HalfedgeGraph >::vertex_descriptor, typename vertex_iterator = typename boost::graph_traits< HalfedgeGraph >::vertex_iterator>
const std::vector< double > FEVV::Filters::Uniform_dequantization< HalfedgeGraph, PointMap, Vector, Point, vertex_descriptor, vertex_iterator >::_bb_dimension
private

Definition at line 145 of file Uniform_dequantization.h.

◆ _g

template<typename HalfedgeGraph , typename PointMap , typename Vector = typename FEVV::Geometry_traits< HalfedgeGraph >::Vector, typename Point = typename FEVV::Geometry_traits< HalfedgeGraph >::Point, typename vertex_descriptor = typename boost::graph_traits< HalfedgeGraph >::vertex_descriptor, typename vertex_iterator = typename boost::graph_traits< HalfedgeGraph >::vertex_iterator>
const HalfedgeGraph& FEVV::Filters::Uniform_dequantization< HalfedgeGraph, PointMap, Vector, Point, vertex_descriptor, vertex_iterator >::_g
private

Definition at line 142 of file Uniform_dequantization.h.

◆ _init_point

template<typename HalfedgeGraph , typename PointMap , typename Vector = typename FEVV::Geometry_traits< HalfedgeGraph >::Vector, typename Point = typename FEVV::Geometry_traits< HalfedgeGraph >::Point, typename vertex_descriptor = typename boost::graph_traits< HalfedgeGraph >::vertex_descriptor, typename vertex_iterator = typename boost::graph_traits< HalfedgeGraph >::vertex_iterator>
const std::vector< double > FEVV::Filters::Uniform_dequantization< HalfedgeGraph, PointMap, Vector, Point, vertex_descriptor, vertex_iterator >::_init_point
private

Definition at line 146 of file Uniform_dequantization.h.

◆ _max_length

template<typename HalfedgeGraph , typename PointMap , typename Vector = typename FEVV::Geometry_traits< HalfedgeGraph >::Vector, typename Point = typename FEVV::Geometry_traits< HalfedgeGraph >::Point, typename vertex_descriptor = typename boost::graph_traits< HalfedgeGraph >::vertex_descriptor, typename vertex_iterator = typename boost::graph_traits< HalfedgeGraph >::vertex_iterator>
double FEVV::Filters::Uniform_dequantization< HalfedgeGraph, PointMap, Vector, Point, vertex_descriptor, vertex_iterator >::_max_length
private

Definition at line 147 of file Uniform_dequantization.h.

◆ _nb_bits_quantization

template<typename HalfedgeGraph , typename PointMap , typename Vector = typename FEVV::Geometry_traits< HalfedgeGraph >::Vector, typename Point = typename FEVV::Geometry_traits< HalfedgeGraph >::Point, typename vertex_descriptor = typename boost::graph_traits< HalfedgeGraph >::vertex_descriptor, typename vertex_iterator = typename boost::graph_traits< HalfedgeGraph >::vertex_iterator>
const int FEVV::Filters::Uniform_dequantization< HalfedgeGraph, PointMap, Vector, Point, vertex_descriptor, vertex_iterator >::_nb_bits_quantization
private

Point map changes.

Definition at line 144 of file Uniform_dequantization.h.

◆ _pm

template<typename HalfedgeGraph , typename PointMap , typename Vector = typename FEVV::Geometry_traits< HalfedgeGraph >::Vector, typename Point = typename FEVV::Geometry_traits< HalfedgeGraph >::Point, typename vertex_descriptor = typename boost::graph_traits< HalfedgeGraph >::vertex_descriptor, typename vertex_iterator = typename boost::graph_traits< HalfedgeGraph >::vertex_iterator>
PointMap& FEVV::Filters::Uniform_dequantization< HalfedgeGraph, PointMap, Vector, Point, vertex_descriptor, vertex_iterator >::_pm
private

Topology remains the same.

Definition at line 143 of file Uniform_dequantization.h.

◆ _quantization_step

template<typename HalfedgeGraph , typename PointMap , typename Vector = typename FEVV::Geometry_traits< HalfedgeGraph >::Vector, typename Point = typename FEVV::Geometry_traits< HalfedgeGraph >::Point, typename vertex_descriptor = typename boost::graph_traits< HalfedgeGraph >::vertex_descriptor, typename vertex_iterator = typename boost::graph_traits< HalfedgeGraph >::vertex_iterator>
double FEVV::Filters::Uniform_dequantization< HalfedgeGraph, PointMap, Vector, Point, vertex_descriptor, vertex_iterator >::_quantization_step
private

Definition at line 148 of file Uniform_dequantization.h.


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