CGAL 4.5 - Triangulated Surface Mesh Deformation
|
#include <CGAL/Deform_mesh.h>
CGAL::Surface_mesh_deformation< HG, VIM, HIM, TAG, WC, ST, CR, VPM >.
Class renamed to Surface_mesh_deformation
.
Surface_mesh_deformation
. Additional Inherited Members | |
Public Types inherited from CGAL::Surface_mesh_deformation< HG, VIM, HIM, TAG, WC, ST, CR, VPM > | |
typedef HG | Halfedge_graph |
typedef VIM | Vertex_index_map |
typedef HIM | Hedge_index_map |
typedef WC | Weight_calculator |
typedef ST | Sparse_linear_solver |
typedef CR | Closest_rotation_traits |
typedef VPM | Vertex_point_map |
typedef boost::graph_traits < Halfedge_graph > ::vertex_descriptor | vertex_descriptor |
The type for vertex descriptor. | |
typedef boost::graph_traits < Halfedge_graph > ::halfedge_descriptor | halfedge_descriptor |
The type for halfedge descriptor. | |
typedef boost::property_traits < Vertex_point_map > ::value_type | Point |
The 3D point type, model of RawPoint_3 | |
typedef std::vector < vertex_descriptor > | Roi_vertex_range |
A constant iterator range over the vertices of the region-of-interest. More... | |
Public Member Functions inherited from CGAL::Surface_mesh_deformation< HG, VIM, HIM, TAG, WC, ST, CR, VPM > | |
Surface_mesh_deformation (Halfedge_graph &halfedge_graph, Vertex_index_map vertex_index_map=get(boost::vertex_index, halfedge_graph), Hedge_index_map hedge_index_map=get(boost::halfedge_index, halfedge_graph), Vertex_point_map vertex_point_map=get(vertex_point, halfedge_graph), Weight_calculator weight_calculator=Weight_calculator()) | |
The constructor of a deformation object. More... | |
void | clear_roi_vertices () |
Erases all the vertices from the region-of-interest (control vertices included). | |
void | clear_control_vertices () |
Erases all the vertices from the set of control vertices. | |
bool | insert_control_vertex (vertex_descriptor vd) |
Inserts a vertex in the set of control vertices. More... | |
template<class InputIterator > | |
void | insert_control_vertices (InputIterator begin, InputIterator end) |
Inserts a range of vertices in the set of control vertices. More... | |
bool | erase_control_vertex (vertex_descriptor vd) |
Erases a vertex from the set of control vertices. More... | |
template<class InputIterator > | |
void | insert_roi_vertices (InputIterator begin, InputIterator end) |
Inserts a range of vertices in the region-of-interest. More... | |
bool | insert_roi_vertex (vertex_descriptor vd) |
Inserts a vertex in the region-of-interest. More... | |
bool | erase_roi_vertex (vertex_descriptor vd) |
Erases a vertex from the region-of-interest and the set of control vertices. More... | |
bool | preprocess () |
Preprocessing function that need to be called each time the region-of-interest or the set of control vertices are changed before calling deform() . More... | |
void | set_target_position (vertex_descriptor vd, const Point &target_position) |
Sets the target position of a control vertex. More... | |
template<class Vect > | |
void | translate (vertex_descriptor vd, const Vect &t) |
Updates the target position of vd by applying a translation of vector t . More... | |
template<class InputIterator , class Vect > | |
void | translate (InputIterator begin, InputIterator end, const Vect &t) |
Equivalent to calling the overload taking only one control vertex, for each vertex in the range [begin,end[ . More... | |
template<typename Quaternion , typename Vect > | |
void | rotate (vertex_descriptor vd, const Vect &to_rotation_center, const Quaternion &quat) |
Updates the target position of vd by applying to its last target position a rotation defined by the quaternion quat , the center of the rotation being the origin translated by to_rotation_center . More... | |
template<typename InputIterator , typename Vect , typename Quaternion > | |
void | rotate (InputIterator begin, InputIterator end, const Vect &to_rotation_center, const Quaternion &quat) |
Equivalent to calling the overload taking only one control vertex, for each vertex in the range [begin,end[ . More... | |
const Point & | target_position (vertex_descriptor vd) |
Returns the target position of a control vertex. More... | |
void | deform () |
Deforms the region-of-interest according to the deformation algorithm, using the target positions of each control vertex set by using rotate() , translate() , or set_target_position() . More... | |
void | deform (unsigned int iterations, double tolerance) |
Same as deform() but the number of iterations and the tolerance are one-time parameters. More... | |
void | reset () |
Resets the points associated to the vertices of the region-of-interest at their initial positions at time of the functor construction or after the last call to overwrite_initial_geometry() . More... | |
void | overwrite_initial_geometry () |
Sets the initial positions of the vertices from the region-of-interest to the current positions. More... | |
unsigned int | iterations () |
Gets the default number of iterations (5) or the value passed to the function set_iterations() | |
double | tolerance () |
Gets the default tolerance parameter (1e-4) or the value passed to the function set_tolerance() | |
void | set_iterations (unsigned int iterations) |
Sets the maximum number of iterations ran by deform() | |
void | set_tolerance (double tolerance) |
Sets the tolerance of the convergence used in deform() . More... | |
Roi_vertex_range | roi_vertices () const |
Returns the range of vertices in the region-of-interest. | |
bool | is_roi_vertex (vertex_descriptor vd) const |
Tests whether a vertex is inside the region-of-interest. More... | |
bool | is_control_vertex (vertex_descriptor vd) const |
Tests whether a vertex is a control vertex. More... | |
const Halfedge_graph & | halfedge_graph () const |
Provides access to the halfedge graph being deformed. | |