\( \newcommand{\E}{\mathrm{E}} \) \( \newcommand{\A}{\mathrm{A}} \) \( \newcommand{\R}{\mathrm{R}} \) \( \newcommand{\N}{\mathrm{N}} \) \( \newcommand{\Q}{\mathrm{Q}} \) \( \newcommand{\Z}{\mathrm{Z}} \) \( \def\ccSum #1#2#3{ \sum_{#1}^{#2}{#3} } \def\ccProd #1#2#3{ \sum_{#1}^{#2}{#3} }\)
CGAL 5.0.1 - 3D Surface Subdivision Methods
CGAL::DooSabin_mask_3< PolygonMesh, VertexPointMap > Class Template Reference

#include <CGAL/Subdivision_method_3/subdivision_masks_3.h>

Inherits from

CGAL::DQQ_stencil_3< PolygonMesh, VertexPointMap >.

Definition

template<class PolygonMesh, class VertexPointMap = typename boost::property_map<PolygonMesh, vertex_point_t>::type>
class CGAL::DooSabin_mask_3< PolygonMesh, VertexPointMap >

The geometry mask of Doo-Sabin 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. DooSabin_mask_3 implements the geometry masks of Doo-Sabin subdivision on models of MutableFaceGraph, such as Polyhedron_3 and Surface_mesh.

Template Parameters
PolygonMeshmust be a model of the concept MutableFaceGraph.
VertexPointMapmust be a model of WritablePropertyMap with value type Point_3
DSCornerMask.png
Is Model Of:
DQQMask_3
See also
CGAL::Subdivision_method_3

Public Types

typedef PolygonMesh Mesh
 
- Public Types inherited from CGAL::DQQ_stencil_3< PolygonMesh, VertexPointMap >
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
 

Creation

 DooSabin_mask_3 (Mesh *pmesh)
 Constructor. More...
 
 DooSabin_mask_3 (Mesh *pmesh, VertexPointMap vpmap)
 Constructor with a custom vertex point property map.
 

Stencil functions

void corner_node (halfedge_descriptor he, Point &pt)
 computes the Doo-Sabin point pt of the vertex pointed by the halfedge he.
 

Additional Inherited Members

- Public Member Functions inherited from CGAL::DQQ_stencil_3< PolygonMesh, VertexPointMap >
 DQQ_stencil_3 (Mesh *pmesh)
 
 DQQ_stencil_3 (Mesh *pmesh, VertexPointMap vpmap)
 
- Public Attributes inherited from CGAL::DQQ_stencil_3< PolygonMesh, VertexPointMap >
Mesh * pmesh
 
Vertex_pmap vpm
 

Constructor & Destructor Documentation

◆ DooSabin_mask_3()

template<class PolygonMesh , class VertexPointMap = typename boost::property_map<PolygonMesh, vertex_point_t>::type>
CGAL::DooSabin_mask_3< PolygonMesh, VertexPointMap >::DooSabin_mask_3 ( Mesh *  pmesh)

Constructor.

The default vertex point property map, get(vertex_point, pmesh), is used.