#include <CGAL/Subdivision_method_3/subdivision_masks_3.h>
Inherits CGAL::Linear_mask_3< PolygonMesh, typename boost::property_map< PolygonMesh, vertex_point_t >::type > .
template<class PolygonMesh, class VertexPointMap = typename boost::property_map<PolygonMesh, vertex_point_t>::type>
class CGAL::CatmullClark_mask_3< PolygonMesh, VertexPointMap >
The geometry mask of Catmull-Clark subdivision.
A stencil determines a source neighborhood whose points contribute to the position of a refined point. The geometry mask of a stencil specifies the computation on the nodes of the stencil. CatmullClark_mask_3 implements the geometry masks of Catmull-Clark subdivision on models of MutableFaceGraph , such as Polyhedron_3 and Surface_mesh .
Template Parameters
Is Model Of: PQQMask_3
See also CGAL::Subdivision_method_3
typedef PolygonMesh Mesh
typedef PolygonMesh Mesh
typedef PolygonMesh Mesh
typedef boost::property_map< Mesh, vertex_point_t >::type Vertex_pmap
typedef boost::graph_traits< Mesh >::vertex_descriptor vertex_descriptor
typedef boost::graph_traits< Mesh >::halfedge_descriptor halfedge_descriptor
typedef boost::graph_traits< Mesh >::face_descriptor face_descriptor
typedef boost::property_traits< Vertex_pmap >::value_type Point
typedef Kernel_traits < Point >::Kernel Kernel
typedef Kernel::FT FT
typedef Kernel::Vector_3 Vector
void edge_node (halfedge_descriptor edge, Point &pt)
computes the Catmull-Clark edge-point pt of the edge edge.
void vertex_node (vertex_descriptor vertex, Point &pt)
computes the Catmull-Clark vertex-point pt of the vertex vertex.
void border_node (halfedge_descriptor edge, Point &ept, Point &vpt)
computes the Catmull-Clark edge-point ept and the Catmull-Clark vertex-point vpt of the border edge edge.
Linear_mask_3 (Mesh *pmesh)
Linear_mask_3 (Mesh *pmesh, typename boost::property_map< PolygonMesh, vertex_point_t >::type vpmap)
void face_node (face_descriptor facet, Point &pt)
void edge_node (halfedge_descriptor edge, Point &pt)
void vertex_node (vertex_descriptor vertex, Point &pt)
void border_node (halfedge_descriptor edge, Point &ept, Point &)
PQQ_stencil_3 (Mesh *pmesh)
PQQ_stencil_3 (Mesh *pmesh, typename boost::property_map< PolygonMesh, vertex_point_t >::type vpmap)
void face_node (face_descriptor, Point &)
void edge_node (halfedge_descriptor, Point &)
void vertex_node (vertex_descriptor, Point &)
void border_node (halfedge_descriptor, Point &, Point &)
Mesh * pmesh
typename boost::property_map< PolygonMesh, vertex_point_t >::type vpmap
◆ CatmullClark_mask_3()
template<class PolygonMesh , class VertexPointMap = typename boost::property_map<PolygonMesh, vertex_point_t>::type>
Constructor.
The default vertex point property map, get(vertex_point, pmesh), is used.