MEPP2 Project
Public Types | Public Member Functions | List of all members
FEVV::Filters::Raw_positions< HalfedgeGraph, PointMap > Class Template Reference

#include <Raw_positions.h>

Inheritance diagram for FEVV::Filters::Raw_positions< HalfedgeGraph, PointMap >:
Inheritance graph
Collaboration diagram for FEVV::Filters::Raw_positions< HalfedgeGraph, PointMap >:
Collaboration graph

Public Types

using vertex_descriptor = typename boost::graph_traits< HalfedgeGraph >::vertex_descriptor
 
using halfedge_descriptor = typename boost::graph_traits< HalfedgeGraph >::halfedge_descriptor
 
using Vector = typename FEVV::Geometry_traits< HalfedgeGraph >::Vector
 
using Point = typename FEVV::Geometry_traits< HalfedgeGraph >::Point
 
using Geometry = typename FEVV::Geometry_traits< HalfedgeGraph >
 
typedef Predictor< HalfedgeGraph, PointMap > Super_class
 
- Public Types inherited from FEVV::Filters::Predictor< HalfedgeGraph, PointMap >
using vertex_descriptor = typename boost::graph_traits< HalfedgeGraph >::vertex_descriptor
 
using halfedge_descriptor = typename boost::graph_traits< HalfedgeGraph >::halfedge_descriptor
 
using face_descriptor = typename boost::graph_traits< HalfedgeGraph >::face_descriptor
 
using Vector = typename FEVV::Geometry_traits< HalfedgeGraph >::Vector
 
using Point = typename FEVV::Geometry_traits< HalfedgeGraph >::Point
 
using Geometry = typename FEVV::Geometry_traits< HalfedgeGraph >
 

Public Member Functions

 Raw_positions (HalfedgeGraph &g, Kept_position< HalfedgeGraph, PointMap > *kp, PointMap &pm)
 
 ~Raw_positions ()
 
std::vector< Vectorcompute_residuals (vertex_descriptor v1, vertex_descriptor v2, Point)
 
std::vector< Vectorcompute_residuals (Collapse_info< HalfedgeGraph, PointMap > &mem) override
 
std::pair< Point, Pointplace_points (const std::vector< Vector > &residuals, vertex_descriptor vkept, halfedge_descriptor, halfedge_descriptor) override
 Decompression side: predicts a position from encoded residuals. More...
 
void set_rev (bool) override
 
std::string get_as_string () const override
 
- Public Member Functions inherited from FEVV::Filters::Predictor< HalfedgeGraph, PointMap >
 Predictor (HalfedgeGraph &g, Kept_position< HalfedgeGraph, PointMap > *kp, PointMap &pm)
 
virtual ~Predictor ()
 
virtual FEVV::Filters::PREDICTION_TYPE get_type () const
 
virtual const Pointget_kept_position () const
 
virtual FEVV::Filters::VKEPT_POSITION get_type_KP () const
 
int get_nb_residuals () const
 

Additional Inherited Members

- Protected Attributes inherited from FEVV::Filters::Predictor< HalfedgeGraph, PointMap >
Kept_position< HalfedgeGraph, PointMap > * _kp
 
HalfedgeGraph & _g
 
const Geometry _gt
 
PointMap & _pm
 
int _nbResiduals
 
Point _kept_position
 
FEVV::Filters::PREDICTION_TYPE _type
 

Detailed Description

template<typename HalfedgeGraph, typename PointMap>
class FEVV::Filters::Raw_positions< HalfedgeGraph, PointMap >

Definition at line 23 of file Raw_positions.h.

Member Typedef Documentation

◆ Geometry

template<typename HalfedgeGraph , typename PointMap >
using FEVV::Filters::Raw_positions< HalfedgeGraph, PointMap >::Geometry = typename FEVV::Geometry_traits< HalfedgeGraph >

Definition at line 33 of file Raw_positions.h.

◆ halfedge_descriptor

template<typename HalfedgeGraph , typename PointMap >
using FEVV::Filters::Raw_positions< HalfedgeGraph, PointMap >::halfedge_descriptor = typename boost::graph_traits< HalfedgeGraph >::halfedge_descriptor

Definition at line 29 of file Raw_positions.h.

◆ Point

template<typename HalfedgeGraph , typename PointMap >
using FEVV::Filters::Raw_positions< HalfedgeGraph, PointMap >::Point = typename FEVV::Geometry_traits< HalfedgeGraph >::Point

Definition at line 32 of file Raw_positions.h.

◆ Super_class

template<typename HalfedgeGraph , typename PointMap >
typedef Predictor<HalfedgeGraph,PointMap> FEVV::Filters::Raw_positions< HalfedgeGraph, PointMap >::Super_class

Definition at line 36 of file Raw_positions.h.

◆ Vector

template<typename HalfedgeGraph , typename PointMap >
using FEVV::Filters::Raw_positions< HalfedgeGraph, PointMap >::Vector = typename FEVV::Geometry_traits< HalfedgeGraph >::Vector

Definition at line 31 of file Raw_positions.h.

◆ vertex_descriptor

template<typename HalfedgeGraph , typename PointMap >
using FEVV::Filters::Raw_positions< HalfedgeGraph, PointMap >::vertex_descriptor = typename boost::graph_traits< HalfedgeGraph >::vertex_descriptor

Definition at line 27 of file Raw_positions.h.

Constructor & Destructor Documentation

◆ Raw_positions()

template<typename HalfedgeGraph , typename PointMap >
FEVV::Filters::Raw_positions< HalfedgeGraph, PointMap >::Raw_positions ( HalfedgeGraph &  g,
Kept_position< HalfedgeGraph, PointMap > *  kp,
PointMap &  pm 
)
inline

Definition at line 38 of file Raw_positions.h.

◆ ~Raw_positions()

template<typename HalfedgeGraph , typename PointMap >
FEVV::Filters::Raw_positions< HalfedgeGraph, PointMap >::~Raw_positions ( )
inline

Definition at line 46 of file Raw_positions.h.

Member Function Documentation

◆ compute_residuals() [1/2]

template<typename HalfedgeGraph , typename PointMap >
std::vector< Vector > FEVV::Filters::Raw_positions< HalfedgeGraph, PointMap >::compute_residuals ( Collapse_info< HalfedgeGraph, PointMap > &  mem)
inlineoverridevirtual

Compression side: Computes geometric residuals from a set of info about the collapse.

Implements FEVV::Filters::Predictor< HalfedgeGraph, PointMap >.

Definition at line 66 of file Raw_positions.h.

Here is the call graph for this function:

◆ compute_residuals() [2/2]

template<typename HalfedgeGraph , typename PointMap >
std::vector< Vector > FEVV::Filters::Raw_positions< HalfedgeGraph, PointMap >::compute_residuals ( vertex_descriptor  v1,
vertex_descriptor  v2,
Point   
)
inline

Definition at line 49 of file Raw_positions.h.

Here is the call graph for this function:

◆ get_as_string()

template<typename HalfedgeGraph , typename PointMap >
std::string FEVV::Filters::Raw_positions< HalfedgeGraph, PointMap >::get_as_string ( ) const
inlineoverridevirtual

◆ place_points()

template<typename HalfedgeGraph , typename PointMap >
std::pair< Point, Point > FEVV::Filters::Raw_positions< HalfedgeGraph, PointMap >::place_points ( const std::vector< Vector > &  residuals,
vertex_descriptor  vkept,
halfedge_descriptor  h1,
halfedge_descriptor  h2 
)
inlineoverridevirtual

Decompression side: predicts a position from encoded residuals.

Parameters
h1should be target (h1) and target(h2)
h2first halfedge to expand into a face second halfedge to expand into a face

Implements FEVV::Filters::Predictor< HalfedgeGraph, PointMap >.

Definition at line 84 of file Raw_positions.h.

◆ set_rev()

template<typename HalfedgeGraph , typename PointMap >
void FEVV::Filters::Raw_positions< HalfedgeGraph, PointMap >::set_rev ( bool  )
inlineoverridevirtual

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