fixed conversion warnings and added missing named parameters

This commit is contained in:
Dmitry Anisimov 2020-10-07 10:47:51 +02:00
parent 15282ab3fa
commit 8f090ae812
3 changed files with 44 additions and 8 deletions

View File

@ -114,7 +114,6 @@ and provides a list of the parameters that are used in this package.
- `CGAL::Polygon_mesh_processing::triangulate_and_refine_hole()`
- `CGAL::Polygon_mesh_processing::triangulate_refine_and_fair_hole()`
- `CGAL::Polygon_mesh_processing::triangulate_hole_polyline()`
- `CGAL::Polygon_mesh_processing::triangulate_hole_with_cdt_2()`
\cgalCRPSection{Predicate Functions}
- `CGAL::Polygon_mesh_processing::does_self_intersect()`

View File

@ -1410,7 +1410,7 @@ triangulate_hole_polyline_with_cdt(const PointRange& points,
}
fh->info() = true;
for (std::size_t i = 0; i < 3; ++i) {
for (int i = 0; i < 3; ++i) {
if (!cdt.is_constrained(typename CDT::Edge(fh, i))) {
face_queue.push(fh->neighbor(i));
}
@ -1426,8 +1426,8 @@ triangulate_hole_polyline_with_cdt(const PointRange& points,
end = cdt.finite_faces_end(); fit != end; ++fit) {
if (!fit->info()) { // if it is not external
std::vector<std::size_t> is(3);
for (std::size_t i = 0; i < 3; ++i) {
std::vector<int> is(3);
for (int i = 0; i < 3; ++i) {
is[i] = fit->vertex(i)->info();
}
@ -1441,7 +1441,7 @@ triangulate_hole_polyline_with_cdt(const PointRange& points,
// Call the tracer. It correctly orients the patch faces.
// std::cout << "CDT is being used!" << std::endl;
tracer(lambda, 0, size - 1);
tracer(lambda, 0, static_cast<int>(size) - 1);
return true;
}

View File

@ -42,9 +42,10 @@ namespace Polygon_mesh_processing {
/*!
\ingroup hole_filling_grp
triangulates a hole in a polygon mesh.
The hole must not contain any non-manifold vertex, nor self-intersections.
When using the 2D constrained Delaunay triangulation, the non-manifold vertex is
not an issue. The patch generated does not introduce non-manifold edges nor degenerate triangles.
When using the 2D constrained Delaunay triangulation, the hole must not contain any
self-intersections. However, this option can be applied only for near planar holes.
In other cases, the hole must not contain any non-manifold vertex as well.
The patch generated does not introduce non-manifold edges nor degenerate triangles.
If a hole cannot be triangulated, `pmesh` is not modified and nothing is recorded in `out`.
@tparam PolygonMesh a model of `MutableFaceGraph`
@ -81,6 +82,15 @@ namespace Polygon_mesh_processing {
\cgalParamExtra{If no valid triangulation can be found in this search space, the algorithm
falls back to the non-Delaunay triangulations search space to find a solution.}
\cgalParamNEnd
\cgalParamNBegin{use_2d_constrained_delaunay_triangulation}
\cgalParamDescription{If `true`, use the 2D constrained Delaunay triangulation facet search space.}
\cgalParamType{Boolean}
\cgalParamDefault{`true`}
\cgalParamExtra{If no valid 2D triangulation can be found in this search space, the algorithm
falls back to the non-Delaunay triangulations search space to find a solution.
This parameter is a good choice for near planar holes.}
\cgalParamNEnd
\cgalNamedParamsEnd
@return `out`
@ -198,6 +208,15 @@ namespace Polygon_mesh_processing {
falls back to the non-Delaunay triangulations search space to find a solution.}
\cgalParamNEnd
\cgalParamNBegin{use_2d_constrained_delaunay_triangulation}
\cgalParamDescription{If `true`, use the 2D constrained Delaunay triangulation facet search space.}
\cgalParamType{Boolean}
\cgalParamDefault{`true`}
\cgalParamExtra{If no valid 2D triangulation can be found in this search space, the algorithm
falls back to the non-Delaunay triangulations search space to find a solution.
This parameter is a good choice for near planar holes.}
\cgalParamNEnd
\cgalParamNBegin{density_control_factor}
\cgalParamDescription{factor to control density of the ouput mesh,
where larger values cause denser refinements, as in `refine()`}
@ -289,6 +308,15 @@ namespace Polygon_mesh_processing {
falls back to the non-Delaunay triangulations search space to find a solution.}
\cgalParamNEnd
\cgalParamNBegin{use_2d_constrained_delaunay_triangulation}
\cgalParamDescription{If `true`, use the 2D constrained Delaunay triangulation facet search space.}
\cgalParamType{Boolean}
\cgalParamDefault{`true`}
\cgalParamExtra{If no valid 2D triangulation can be found in this search space, the algorithm
falls back to the non-Delaunay triangulations search space to find a solution.
This parameter is a good choice for near planar holes.}
\cgalParamNEnd
\cgalParamNBegin{density_control_factor}
\cgalParamDescription{factor to control density of the ouput mesh,
where larger values cause denser refinements, as in `refine()`}
@ -415,6 +443,15 @@ namespace Polygon_mesh_processing {
\cgalParamExtra{If no valid triangulation can be found in this search space, the algorithm
falls back to the non-Delaunay triangulations search space to find a solution.}
\cgalParamNEnd
\cgalParamNBegin{use_2d_constrained_delaunay_triangulation}
\cgalParamDescription{If `true`, use the 2D constrained Delaunay triangulation facet search space.}
\cgalParamType{Boolean}
\cgalParamDefault{`true`}
\cgalParamExtra{If no valid 2D triangulation can be found in this search space, the algorithm
falls back to the non-Delaunay triangulations search space to find a solution.
This parameter is a good choice for near planar holes.}
\cgalParamNEnd
\cgalNamedParamsEnd
\todo handle islands