Commit Graph

1557 Commits

Author SHA1 Message Date
Sébastien Loriot 24795331a3 cosmetic changes 2017-05-24 10:18:43 +02:00
Sébastien Loriot fd4e66934f select all interior edges
with the older implementation, the edges of a face was ignored
as soon as it was marked as visited while its edges must still
be visited
2017-05-24 10:18:43 +02:00
Laurent Rineau 31f277dc93 Merge pull request #2072 from janetournois/Mesh_3-improvements-GF
Mesh 3 : small improvements
2017-05-22 10:59:48 +02:00
Laurent Rineau d9bc11f294 Merge pull request #2072 from janetournois/Mesh_3-improvements-GF
Mesh 3 : small improvements
2017-05-22 10:59:47 +02:00
Laurent Rineau 9aea1f228d Merge pull request #2105 from sloriot/PMP-stitch_avoid_creating_non_manifold_edges
prevent the merge of two vertices that would create a non-manifold edge
2017-05-19 10:29:57 +02:00
Laurent Rineau 8f84930b9a Merge pull request #2100 from janetournois/PMP-fix_isotropic_remeshing_patch_corners-jtournois
PMP : fix isotropic remeshing of a selection
2017-05-19 10:29:41 +02:00
Laurent Rineau 25df414e6e Merge pull request #2085 from sloriot/PMP-Side_of_triangle_mesh_details
Add implementation details
2017-05-19 10:29:10 +02:00
Laurent Rineau b037471750 Merge pull request #2075 from afabri/CGAL-dont_include_graph_traits_header-GF
Do not include graph_traits_{Polyhedron | Surface_mesh}.h
2017-05-19 10:28:38 +02:00
Laurent Rineau a07cd292d9 Merge pull request #2071 from janetournois/Polyhedron_demo-improve_surf_reader-GF
Polyhedron demo : improve .surf reader
2017-05-19 10:28:22 +02:00
Laurent Rineau 60c2413312 Merge pull request #2085 from sloriot/PMP-Side_of_triangle_mesh_details
Add implementation details
2017-05-19 10:28:13 +02:00
Laurent Rineau de757b671e Merge pull request #2105 from sloriot/PMP-stitch_avoid_creating_non_manifold_edges
prevent the merge of two vertices that would create a non-manifold edge
2017-05-19 10:27:40 +02:00
Laurent Rineau 97a5dd73e1 Merge pull request #2060 from janetournois/CGAL-improve_examples_with_requirements-jtournois
PMP and SMS : improve examples with a (pre)condition
2017-05-19 10:27:27 +02:00
Laurent Rineau fa3c3c2bf2 Merge pull request #2071 from janetournois/Polyhedron_demo-improve_surf_reader-GF
Polyhedron demo : improve .surf reader
2017-05-19 10:27:18 +02:00
Laurent Rineau dfd77d4aff Merge pull request #2100 from janetournois/PMP-fix_isotropic_remeshing_patch_corners-jtournois
PMP : fix isotropic remeshing of a selection
2017-05-19 10:27:09 +02:00
Laurent Rineau 3b1ebdb574 Merge pull request #2057 from janetournois/PMP-fix_is_outward_oriented-GF
PMP : fix `PMP::is_outward_oriented()`

(From a merge of 'cgal/releases/CGAL-4.10-branch', plus a merge of the
commit 'a6e2783'. That commit fixes the incompatibility with recent
changes in `master`.)
2017-05-17 13:02:38 +02:00
Sébastien Loriot a6e2783d36 use internal namespace introduced in e9395ab for accessing named parameters 2017-05-17 13:01:29 +02:00
Sébastien Loriot d4fa3c860c fix test incorrectly simplified test 2017-05-12 09:49:44 +02:00
Sébastien Loriot 51dce78e78 fix the last step of the algorithm to pick the top face along the z-axis 2017-05-12 09:49:43 +02:00
Sébastien Loriot 976ba8b75a fix the outward orientation test 2017-05-12 09:49:43 +02:00
Sébastien Loriot 8af0216b54 update internal use of is_outward_oriented() by does_bound_a_volume() 2017-05-12 09:49:43 +02:00
Sébastien Loriot 1a29f74325 Revert "remove the use of internal::is_outward_oriented"
This reverts commit 37c5b0bd4e6d550c86bf7f173eaa4bfc1fa5bf6f.
2017-05-12 09:49:43 +02:00
Sébastien Loriot 1e22c09969 fix warning 2017-05-12 09:49:43 +02:00
Jane Tournois 686b418fe0 remove the use of internal::is_outward_oriented 2017-05-12 09:49:42 +02:00
Jane Tournois 766ff220b6 and missing include
and fix the use of namespaces
2017-05-12 09:49:42 +02:00
Jane Tournois 49818d56ce add a runtime warning and return true for empty mesh 2017-05-12 09:49:42 +02:00
Jane Tournois 57b01e0b8f make if work also if GT::Compare_z_3 does not have a default constructor
(may happen with a geom traits with state)
2017-05-12 09:49:42 +02:00
Jane Tournois 6c2ee8a35e fix the implementation of is_outward_oriented(polygon mesh)
this implementation does not require the construction of the normal,
and is based only on Kernel predicates
2017-05-12 09:49:42 +02:00
Sébastien Loriot 44a7b9f590 fix the stitchable test
the common vertex incident to the two non-stitchable vertices
is not in general in the faces incident to the edges to be
stitched
2017-05-11 17:35:26 +02:00
Laurent Rineau 7aad2a560c Merge pull request #1891 from maxGimeno/PMP_named_params_macro-GF
Use macros to add parameters in PMP
2017-05-11 17:09:38 +02:00
Sébastien Loriot 9487c56cab fix copy-paste error 2017-05-11 10:42:33 +02:00
Sébastien Loriot 7a841cad48 prevent the merge of two vertices that would create a non-manifold edge 2017-05-10 18:55:03 +02:00
Jane Tournois ce51fef0d5 replace std::set with boost::container::flat_set
for efficiency reasons
2017-05-09 12:23:17 +02:00
Jane Tournois 70c9b5e0a5 constrain corners
vertices that are at the "corner" of the face range to be remeshed,
i.e. on the border of the face range, and also on the border of the mesh,
incident to both the selected and unselected faces, should be constrained,
to avoid making a "axe blow" in the border
2017-05-05 17:37:49 +02:00
Sébastien Loriot 20e7f245c7 add implementation details 2017-04-27 17:24:47 +02:00
Sébastien Loriot d0a2c817da remove a todo that is now an issue 2017-04-27 16:28:00 +02:00
Andreas Fabri 1dbedb7391 fix choices of std::cerr or std::cout 2017-04-27 09:04:12 +02:00
Andreas Fabri bf3542116a Polygon_mesh_processing: Fix documentation
splitted -> split
2017-04-26 14:42:59 +02:00
Andreas Fabri c81b707bfb Do not include graph_traits_{Polyhedron | Surface_mesh}.h 2017-04-24 19:17:43 +02:00
Jane Tournois 2b16193db4 deal with non-manifold surfaces
because a CGAL::Polyhedron cannot be non-manifold along an edge, we need
to build the polyhedral surface using PMP::orient_polygon_soup, and
PMP::polygon_soup_to_polygon_mesh.
These functions introduce duplicated points, that are dealt with in this commit

when reading a .surf file, isolated vertices are ignored
2017-04-21 14:40:08 +02:00
Jane Tournois a4a05c406b replace a std::set by a boost::flat_set to speedup 2017-04-20 17:00:23 +02:00
Jane Tournois d4c857b063 improve examples by adding a precondition with CGAL::is_triangle_mesh 2017-04-18 12:13:27 +02:00
Andreas Fabri 58bcecc497 License check for Corefinement and Distance 2017-03-22 14:07:52 +01:00
Andreas Fabri cd7deb8577 License check for Corefinement and Distance 2017-03-22 12:32:43 +01:00
Andreas Fabri 774bdc4351 License check for Geometric Meshing and Hole Filling 2017-03-22 12:10:37 +01:00
Andreas Fabri fde105b437 License check for Predicates 2017-03-22 10:29:59 +01:00
Andreas Fabri 51bbe5d1f6 License check for Geometric Measures and Miscellaneous 2017-03-22 10:05:39 +01:00
Andreas Fabri d04b048aa9 License check for Connected Components 2017-03-22 09:21:27 +01:00
Andreas Fabri 9bcf8b040e move corefinement specific code from PMP to Operations_on_polyhedra 2017-03-22 09:12:30 +01:00
Andreas Fabri 44c1328f55 License check for Normal Computation Functions 2017-03-22 08:54:00 +01:00
Sebastien Loriot 5b6cf1cfae Merge pull request #1976 from sloriot/PMP-coref_bugfix_tangent_cases
Correctly handle edge tangency cases
2017-03-20 16:11:17 +01:00
Sébastien Loriot 0b29878f6d better handling of tangency
correctly handle dangling intersection polylines
that appear when models are tangent along an edge
2017-03-16 18:44:13 +01:00
Sébastien Loriot 58f59d0af0 add new data set to test tangent cases 2017-03-16 15:38:54 +01:00
Sébastien Loriot a79f461548 be more permissive for open meshes 2017-03-15 17:13:40 +01:00
Sébastien Loriot 259155edb3 improve the coref-bool-op test to also check possible results are as expected 2017-03-15 16:49:32 +01:00
Jane Tournois b6d88274fb deactivate output to files in the testsuite
it takes long and is not really useful for the tests
2017-03-14 16:20:28 +01:00
Jane Tournois f9fe9a5e6a add assertions to the PMP testsuite 2017-03-14 15:46:48 +01:00
Laurent Rineau 5947475c5c Merge pull request #1906 from sloriot/PMP-stitching_non_manifold_edges-GF
Make the function stitch_borders() resilient to non-manifold edges
2017-02-14 16:11:01 +01:00
Sébastien Loriot c873532da5 avoid stitching non-manifold edges
we do not stitch them at all since we might produce inconsistancies
2017-02-14 13:45:08 +01:00
Andreas Fabri 81c5ff9b0d We do not collect halfedges on non-manifold edges
TODO:
- Add a precondition
- Find something better than a CGAL_warning
2017-02-14 13:44:46 +01:00
Sébastien Loriot 7c51ddc606 remove commented lines 2017-02-13 10:28:27 +01:00
Sébastien Loriot e9395aba6f move enum for named parameters inside internal_np namespace 2017-02-13 10:25:28 +01:00
Laurent Rineau 58ba771e5d Merge pull request #1898 from sloriot/PMP-fix_coref
fix make_terminal()
2017-02-10 19:03:42 +01:00
Sébastien Loriot 47e8f6167f add doc in the interface file and files using it 2017-02-10 17:23:45 +01:00
Sébastien Loriot 2fee4affdd rename macro to be independant of any package 2017-02-10 17:00:38 +01:00
Sébastien Loriot 2068ba14ce remove non used named parameter 2017-02-10 16:45:18 +01:00
Sébastien Loriot 69fbe19f06 fix make_terminal()
if the node is already terminal, no need to break its degree
This was an issue if the degree is actually 0
2017-02-10 14:00:07 +01:00
Maxime Gimeno 3d8aaf0a6e Add license headers 2017-02-09 15:46:01 +01:00
Maxime Gimeno 0f9c102516 Move the enums in a namespace parameters to clean-up the namespace CGAL. 2017-02-09 15:29:18 +01:00
Maxime Gimeno 21f305db27 Use an include system to factorize the macro calls in PMP and BGL. 2017-02-09 14:14:11 +01:00
Laurent Rineau 1a2f617d89 Merge pull request #1843 from afabri/BGL_accelerate_copy_face_graph-GF
Accelerate copy_face_graph
2017-02-08 17:32:47 +01:00
Maxime Gimeno 07b5550f2f Use macros to add parameters in named_fucntion_params.h 2017-02-08 16:37:14 +01:00
Laurent Rineau 4c3ea8908e Merge pull request #1875 from sloriot/PMP-rename_bbox_3
Rename bbox_3 functions
2017-02-06 15:19:18 +01:00
Laurent Rineau 7946d3e31d Merge pull request #1871 from sloriot/PMP-coref_same_points
Identical points after corefinement
2017-02-02 17:18:21 +01:00
Sébastien Loriot cc899819f2 bbox is ambiguous 2017-02-02 14:42:53 +01:00
Sébastien Loriot 9cf49ff733 remove _3 suffix left 2017-01-31 18:09:22 +01:00
Sébastien Loriot 2ed0a35153 fix doc warnings 2017-01-31 14:40:10 +01:00
Sébastien Loriot a675fa60e4 rename bbox_3 functions
free functions in CGAL have no dimension suffix
2017-01-31 14:33:56 +01:00
Sebastien Loriot a0bcc82311 Merge pull request #1860 from sloriot/PMP-fix_namespace_pollution
Avoid namespace pollution
2017-01-30 15:55:22 +01:00
Sébastien Loriot 0f540a8116 make sure the same points in different triangle meshes have the same coordinates 2017-01-30 15:35:10 +01:00
Andreas Fabri 12b3a78cc6 fix typos in code 2017-01-27 09:41:00 +01:00
Andreas Fabri 006bfdfec0 Add #ifdef CGAL_PMP_REFINE_DEBUG for total_timer 2017-01-27 09:21:03 +01:00
Sébastien Loriot a3666887a1 remove dependancy to PSP 2017-01-26 18:27:49 +01:00
Sébastien Loriot cfc30502b7 move Distance_computation and implementation in internal namespace 2017-01-26 14:18:13 +01:00
Sebastien Loriot b761bad0a9 Merge pull request #1856 from afabri/PMP-fix_doc_CC-GF
PMP: Fix error in the ref manual of connected components functions
2017-01-25 17:55:37 +01:00
Andreas Fabri 07f62beb4b fix typos 2017-01-25 17:52:44 +01:00
Andreas Fabri dc34a06c8b PMP: Fix error in the ref manual of connected components functions 2017-01-25 16:12:38 +01:00
Maxime Gimeno 60d0a39d42 fixes 2017-01-24 14:46:36 +01:00
Maxime Gimeno 82860688d1 Fix the doc to avoid diffs between 1.8.4 and 1.8.13 outputs 2017-01-24 09:39:23 +01:00
Sébastien Loriot 50510c05ea add include directive for license of all GPL header files
done using:
ack-grep "^GPL" */package_info/*/license.txt -l | awk -F "/" '{print $1}' > /tmp/gpl_packages
for i in `cat /tmp/gpl_packages | \
          grep -v Operations_on_polyhedra | \
          grep -v Algebraic_kernel_for_circles | \
          grep -v Algebraic_kernel_for_spheres | \
          grep -v Polyhedron_IO`;
do
  echo $i
  python Scripts/developer_scripts/add_license_in_pkg_header.py $i
done
python Scripts/developer_scripts/add_license_in_pkg_header.py Operations_on_polyhedra Polygon_mesh_processing
python Scripts/developer_scripts/add_license_in_pkg_header.py Algebraic_kernel_for_circles Circular_kernel_2
python Scripts/developer_scripts/add_license_in_pkg_header.py Algebraic_kernel_for_spheres Circular_kernel_3
python Scripts/developer_scripts/add_license_in_pkg_header.py Polyhedron_IO Polyhedron
2017-01-19 15:20:25 +01:00
Sébastien Loriot 3fa4abe869 move function to init index maps to BGL 2017-01-18 16:37:34 +01:00
Sébastien Loriot b3340608cc move property map binders to property_map.h 2017-01-18 16:37:24 +01:00
Andreas Fabri 528c6a19a8 Add an #include 2017-01-16 19:16:19 +01:00
Sébastien Loriot ce16295297 add a function to init halfedge indices 2017-01-16 18:34:55 +01:00
Sébastien Loriot 516b732adf using tbb::atomic instead of cpp11::atomic 2017-01-16 15:18:46 +01:00
Sébastien Loriot b79cc00461 add missing public 2017-01-16 09:27:24 +01:00
Sébastien Loriot 060a1478ab add an empty new-line 2017-01-16 09:25:46 +01:00
Sébastien Loriot 0446958c5a parallel version of mesh distance function requires cpp11::atomic 2017-01-13 13:19:29 +01:00
Sébastien Loriot 449205c486 avoid pmp_bgl_named_params to inherit from named_params_base
this fix a warning with old version of boost < 1.51
Use another workaround to avoid the compilation error
of the area(face_range,tm) overload
2017-01-13 13:18:55 +01:00
Sébastien Loriot e3f9ffa6f8 workaround for named parameters with old boost version (<1.51)
handle the renaming of a struct and move get_param overloads
in the boost namespace (to match qualified call boost::get_param)
2017-01-13 12:05:51 +01:00
Sébastien Loriot 9ae7b37845 Merge pull request #1745 from sloriot/Polyhedra_corefinement-enhancements-sloriot
Add corefinement operations in PMP
2017-01-12 12:05:18 +01:00