/// \defgroup PkgSurfaceSubdivisionMethod3Ref Reference Manual

/// \defgroup PkgSurfaceSubdivisionMethod3Concepts Concepts
/// \ingroup PkgSurfaceSubdivisionMethod3Ref

/// \defgroup PkgSurfaceSubdivisionMethod3Functions Subdivision Methods
/// \ingroup PkgSurfaceSubdivisionMethod3Ref

/*!
\addtogroup PkgSurfaceSubdivisionMethod3Ref

\cgalPkgDescriptionBegin{3D Surface Subdivision Methods,PkgSurfaceSubdivisionMethod3}
\cgalPkgPicture{twoheads-detail.png}
\cgalPkgSummaryBegin
\cgalPkgAuthor{Le-Jeng Andy Shiue}
\cgalPkgDesc{Subdivision methods recursively refine a control mesh and generate points approximating the limit surface. This package consists of four popular subdivision methods and their refinement hosts. Supported subdivision methods include Catmull-Clark, Loop, Doo-Sabin and \f$ \sqrt{3}\f$ subdivisions. Their respective refinement hosts are <span class="textsc">Pqq</span>, <span class="textsc">Ptq</span>, <span class="textsc">Dqq</span> and \f$ \sqrt{3}\f$ refinements. Variations of those methods can be easily extended by substituting the geometry computation of the refinement host.}
\cgalPkgManuals{Chapter_3D_Surface_Subdivision_Methods,PkgSurfaceSubdivisionMethod3Ref}
\cgalPkgSummaryEnd
\cgalPkgShortInfoBegin
\cgalPkgSince{4.11}
\cgalPkgBib{cgal:s-ssm2}
\cgalPkgLicense{\ref licensesLGPL "LGPL"}
\cgalPkgDemo{CGAL Lab,CGALlab.zip}
\cgalPkgShortInfoEnd
\cgalPkgDescriptionEnd

\cgalClassifedRefPages

\cgalCRPSection{Parameters}

Optional parameters of the functions of this package
are implemented as \ref BGLNamedParameters.
The page \ref bgl_namedparameters describes their usage.

\cgalCRPSection{Concepts}
- `SubdivisionMask_3`
- `PQQMask_3`
- `PTQMask_3`
- `DQQMask_3`
- `Sqrt3Mask_3`

\cgalCRPSection{Functions}
- `CGAL::Subdivision_method_3::PQQ()`
- `CGAL::Subdivision_method_3::PTQ()`
- `CGAL::Subdivision_method_3::DQQ()`
- `CGAL::Subdivision_method_3::Sqrt3()`
- `CGAL::Subdivision_method_3::CatmullClark_subdivision()`
- `CGAL::Subdivision_method_3::Loop_subdivision()`
- `CGAL::Subdivision_method_3::DooSabin_subdivision()`
- `CGAL::Subdivision_method_3::Sqrt3_subdivision()`

\cgalCRPSection{Classes}
- `CGAL::CatmullClark_mask_3<PolygonMesh>`
- `CGAL::Loop_mask_3<PolygonMesh>`
- `CGAL::DooSabin_mask_3<PolygonMesh>`
- `CGAL::Sqrt3_mask_3<PolygonMesh>`
- `CGAL::Linear_mask_3<PolygonMesh>`

*/
