implement @MaelRL review

This commit is contained in:
Sébastien Loriot 2018-06-01 16:09:22 +02:00
parent 94a73232d5
commit b8f058e0d1
2 changed files with 18 additions and 16 deletions

View File

@ -35,16 +35,16 @@ Release date: September 2018
### Polygon Mesh Processing
- Added a function to apply a transformation to a mesh :
- `CGAL::Polygon_mesh_processing::transform()`
- Add in corefinement-related functions a new named parameter `new_face_visitor`
- Added in corefinement-related functions a new named parameter `new_face_visitor`
that make it possible to pass a visitor to the function in order to track
the creation of new faces.
- Add in all corefinement-related functions a named parameter `throw_on_self_intersection`
- Added in all corefinement-related functions a named parameter `throw_on_self_intersection`
(that replace the `bool` parameter in `corefine()`) that enables to check for
self-intersections faces involved in the intersection before trying to corefine the
input meshes.
- Document the function `corefine_and_compute_boolean_operations()` that can be used to
- Added the function `corefine_and_compute_boolean_operations()` that can be used to
compute the result of several Boolean operations between 2 volumes at the same time.
- Document the function `clip()` that can be used to clip a triangulated surface mesh
- Added the function `clip()` that can be used to clip a triangulated surface mesh
by a plane or a clipping volume.
Release 4.12

View File

@ -64,8 +64,8 @@ clip_open_impl( TriangleMesh& tm,
// vector of clipper triangles
Clipper_triangles clipper_triangles;
clipper_triangles.reserve( num_faces(clipper) );
Vpm vpm_c = boost::choose_param(get_param(np_c, internal_np::vertex_point),
get_property_map(vertex_point, clipper));
Vpm vpm_c = boost::choose_param(boost::get_param(np_c, internal_np::vertex_point),
get_property_map(vertex_point, clipper));
BOOST_FOREACH(face_descriptor f, faces(clipper))
{
halfedge_descriptor h = halfedge(f, clipper);
@ -90,9 +90,9 @@ clip_open_impl( TriangleMesh& tm,
typedef typename GetFaceIndexMap<TriangleMesh,
NamedParameters1>::type Fid_map;
Fid_map fid_map = boost::choose_param(get_param(np_tm, internal_np::face_index),
Fid_map fid_map = boost::choose_param(boost::get_param(np_tm, internal_np::face_index),
get_property_map(boost::face_index, tm));
Vpm vpm1 = boost::choose_param(get_param(np_tm, internal_np::vertex_point),
Vpm vpm1 = boost::choose_param(boost::get_param(np_tm, internal_np::vertex_point),
get_property_map(vertex_point, tm));
typedef CGAL::dynamic_vertex_property_t<std::size_t> Vid_tag;
@ -181,7 +181,7 @@ clip_to_bbox(const Plane_3& plane,
typedef typename GetVertexPointMap<TriangleMesh,
NamedParameters>::type Vpm;
Vpm vpm_out = boost::choose_param(get_param(np, internal_np::vertex_point),
Vpm vpm_out = boost::choose_param(boost::get_param(np, internal_np::vertex_point),
get_property_map(boost::vertex_point, tm_out));
@ -306,11 +306,12 @@ clip_to_bbox(const Plane_3& plane,
* \cgalParamEnd
* \cgalParamBegin{throw_on_self_intersection} if `true`,
* the set of triangles closed to the intersection of `tm` and `clipper` will be
* checked for self-intersection and `CGAL::Polygon_mesh_processing::Corefinement::Self_intersection_exception`
* checked for self-intersections and `CGAL::Polygon_mesh_processing::Corefinement::Self_intersection_exception`
* will be thrown if at least one is found.
* \cgalParamEnd
* \cgalParamBegin{close_volumes} if `true` and `tm` is closed, the clipping considered will be
* done on the volume \link coref_def_subsec bounded \endlink by `tm` rather than on its surface (`tm` will be kept closed).
* \cgalParamBegin{close_volumes} if `true` and `tm` is closed, the clipping will be done on
* the volume \link coref_def_subsec bounded \endlink by `tm` rather than on its surface
* (i.e. `tm` will be kept closed).
* \cgalParamEnd
* \cgalParamBegin{include_clipper_boundary} if `false` and `close_volumes` is `false` and `tm` is open, the parts of `tm` coplanar with `clipper`
* will not be part of the output.
@ -354,7 +355,7 @@ clip( TriangleMesh& tm,
* @tparam NamedParameters a sequence of \ref pmp_namedparameters "Named Parameters"
*
* @param tm input triangulated surface mesh
* @param plane plane which negative side defines the half-space to intersect `tm` with.
* @param plane plane whose negative side defines the half-space to intersect `tm` with.
* `Plane_3` is the plane type for the same CGAL kernel as the point of the vertex point map of `tm`.
* @param np optional sequence of \ref pmp_namedparameters "Named Parameters" among the ones listed below
*
@ -368,11 +369,12 @@ clip( TriangleMesh& tm,
* \cgalParamEnd
* \cgalParamBegin{throw_on_self_intersection} if `true`,
* the set of triangles closed to the intersection of `tm` and `plane` will be
* checked for self-intersection and `CGAL::Polygon_mesh_processing::Corefinement::Self_intersection_exception`
* checked for self-intersections and `CGAL::Polygon_mesh_processing::Corefinement::Self_intersection_exception`
* will be thrown if at least one is found.
* \cgalParamEnd
* \cgalParamBegin{close_volumes} if `true` and `tm` is closed, the clipping considered will be
* done on the volume \link coref_def_subsec bounded \endlink by `tm` rather than on its surface (`tm` will be kept closed).
* \cgalParamBegin{close_volumes} if `true` and `tm` is closed, the clipping will be done on
* the volume \link coref_def_subsec bounded \endlink by `tm` rather than on its surface
* (i.e. `tm` will be kept closed).
* \cgalParamEnd
* \cgalParamBegin{include_clipper_boundary} if `false` and `close_volumes` is `false` and `tm` is open, the parts of `tm` coplanar with `plane`
* will not be part of the output.