Commit Graph

316 Commits

Author SHA1 Message Date
Sébastien Loriot 1c3e09f562 rename internal namespace
default_values -> default_values_for_mesh_3
2022-01-10 18:36:32 +01:00
Sébastien Loriot a93dda81cd Merge pull request #5935 from janetournois/CGAL-fix_warnings_c++20-jtournois
Fix warnings for C++20
2021-09-10 17:43:47 +02:00
Sébastien Loriot 98e471849b moving files from internal to PKG/internal 2021-08-26 11:33:39 +02:00
Jane Tournois 1866378491 fix warning : enum * float is deprecated 2021-08-25 16:44:11 +02:00
Sébastien Loriot 4e519a3c7a move documented IO functions in IO namespace 2021-05-05 13:15:37 +02:00
Sébastien Loriot fb6f703b55 IO namespace for files in IO directories 2021-05-04 14:36:06 +02:00
Sébastien Loriot 70058db9b7 add IO namespace for Mesh_3 package 2021-05-03 15:39:07 +02:00
Laurent Rineau a735e849c0 Merge pull request #5152 from sloriot/CGAL-remove_bind
Replace usages of boost::bind
2021-02-05 16:14:04 +01:00
Sébastien Loriot f69be333f0 Merge remote-tracking branch 'cgal/5.2.x-branch' into CGAL-remove_bind 2021-01-29 18:44:50 +01:00
Sébastien Loriot ad911271a9 Merge commit '6594e7549bd70923990d86c31e2aa267a79bb629' into HEAD 2021-01-15 10:12:17 +01:00
Sébastien Loriot efc0c525e8 include non-deprecated header 2021-01-15 10:02:00 +01:00
Maxime Gimeno 3d1c41fd14 Merge remote-tracking branch 'cgal/master' into CGAL_IO-maxGimeno 2021-01-07 15:05:28 +01:00
Sébastien Loriot 2eb9908699 replace bind in Mesh_3 packages 2021-01-06 12:59:12 +01:00
Mael Rouxel-Labbé 8080601970 Improve P3M3's get_closest_triangle(): any point can be used to canonicalize 2020-12-05 18:00:06 +01:00
Mael Rouxel-Labbé a8f368d437 Use compute_squared_distance_3(Point, Triangle) 2020-12-03 12:33:37 +01:00
Mael Rouxel-Labbé 8bb4b58848 Misc minor improvements for speed (avoid some copies and constructions) 2020-12-03 12:26:26 +01:00
Jane Tournois cea9cd509b fix get_closest_triangle
with canonicalize_point() used for the 3 pts, the resulting triangle
may not be a facet but only a triplet of points
2020-12-01 15:10:07 +01:00
Jane Tournois 0ed6aca5a4 replace get_closest_point() by get_closest_triangle()
to use this function with Periodic_3_mesh_3
2020-11-27 13:04:06 +01:00
Mael Rouxel-Labbé 26355e2e32 Uniformize capital / third person usage of \brief 2020-06-25 15:13:47 +02:00
Maxime Gimeno e9d41d7b7d Fixes for min/max 2020-04-21 11:38:37 +02:00
Sébastien Loriot 8b153fb495 Merge branch 'cgal/releases/CGAL-5.0-branch'
whitespace+tab removal, merged with option -Xignore-space-change
2020-03-26 14:22:32 +01:00
Sébastien Loriot 0779373835 extra run of the script to remove tabs and trailing whitespaces
right after the  merge of 4.14 release branch

+ manual fix on one line in:
    * Arrangement_on_surface_2/include/CGAL/IO/Arr_text_formatter.h
    * .travis/generate_travis.sh
2020-03-26 14:16:06 +01:00
Mael Rouxel-Labbé 53d4c9b580 Simplify 'Hash_handles_with_or_without_timestamps' (use 'Get_time_stamper') 2019-10-28 11:29:08 +01:00
Sébastien Loriot 254d60f642 First pass on removing license notice in header for GPL files 2019-10-19 15:23:19 +02:00
Sébastien Loriot 7356421d80 introduce Commercial license SPDX tag 2019-10-19 12:15:19 +02:00
Sébastien Loriot 9bd9c68b83 update LGPL[23]+ and GPL[23]+ SPDX tags
ack -l --no-svg "SPDX-License-Identifier: GPL-3.0\+" | xargs sed -i "s/SPDX-License-Identifier: GPL-3.0+/SPDX-License-Identifier: GPL-3.0-or-later/"
ack -l --no-svg "SPDX-License-Identifier: LGPL-3.0\+" | xargs sed -i "s/SPDX-License-Identifier: LGPL-3.0+/SPDX-License-Identifier: LGPL-3.0-or-later/"
ack -l --no-svg "SPDX-License-Identifier: GPL-2.0\+" | xargs sed -i "s/SPDX-License-Identifier: GPL-2.0+/SPDX-License-Identifier: GPL-2.0-or-later/"
ack -l --no-svg "SPDX-License-Identifier: LGPL-2.0\+" | xargs sed -i "s/SPDX-License-Identifier: LGPL-2.0+/SPDX-License-Identifier: LGPL-2.0-or-later/"
2019-10-18 21:57:54 +02:00
Andreas Fabri e2d19b0c8d Replace NULL and Nullptr_t with nullptr and nullptr_t 2019-06-04 23:45:44 +02:00
Mael Rouxel-Labbé 2848158354 Fix typos 2019-05-20 08:54:04 +02:00
Laurent Rineau fee84ae228 Merge pull request #3898 from lrineau/Mesh_3-stop_during_protection-lrineau
Mesh_3 `Protect_edges_sizing_field`: handle the `stop` Boolean

# Conflicts:
#	Mesh_3/include/CGAL/Mesh_3/Protect_edges_sizing_field.h
2019-05-14 16:44:02 +02:00
Laurent Rineau a1e3e05558 Add maximal_number_of_vertices and stop_ptr to the protection code 2019-05-03 11:46:13 +02:00
Sébastien Loriot f62624c4f9 replace cpp11::tuple by std::tuple 2019-03-29 13:28:33 +01:00
Sébastien Loriot 700342bfa7 remove cpp11 workaround in mesh_3 related packages 2019-03-29 10:41:50 +01:00
Laurent Rineau afc3de2894
Merge branch 'master' into Stream_support-Color-GF 2019-01-23 09:37:08 +01:00
Andreas Fabri ade4903000 Fix Voronoi 2019-01-22 19:07:32 +01:00
Laurent Rineau 8121e872ab Merge pull request #3513 from sloriot/CGAL-fix_maybe_uninit_vars_wrngs_2
Fix some wmaybe-uninitialized warnings
2018-12-19 16:08:55 +01:00
Sébastien Loriot 8e75d21c38 fix maybe-uninitialized warning 2018-12-10 08:00:57 +01:00
Andreas Fabri c5fb10fe29 Suppress boost PP related warnings 2018-12-06 12:39:04 +01:00
Mael Rouxel-Labbé 71cd6930bc Simply call insert in 'insert_in_hole' of the periodic mesh triangulation 2018-07-18 17:33:37 +02:00
Mael Rouxel-Labbé d6857514be Dropped 'const&' in function parameter in wrappers/model domains
1. This doesn't really make sense if the template is a function type.
2. There is already a copy of the function anyway
2018-06-20 12:35:19 +02:00
Mael Rouxel-Labbé 48cdc9ac5f Removed useless header include 2018-06-20 12:07:40 +02:00
Mael Rouxel-Labbé 2fb160edbd Improved Implicit_to_labeled_subdomains_function_wrapper
Basically brought up to speed with Mesh_3's wrappers
2018-06-06 16:58:18 +02:00
Mael Rouxel-Labbé 056e4f699c Renamed Periodic_3_wrapper to Periodic_3_function_wrapper 2018-06-06 16:57:55 +02:00
Mael Rouxel-Labbé dac721cf44 Minor iostream changes (cout > cerr) 2018-06-06 12:10:13 +02:00
Mael Rouxel-Labbé 594f7c1a80 Minor macro fixes 2018-06-06 12:08:47 +02:00
Mael Rouxel-Labbé c55088a140 std::abs > CGAL::abs 2018-06-06 12:03:46 +02:00
Mael Rouxel-Labbé cdda597e4e Renamed the medit output function 2018-06-06 11:58:36 +02:00
Mael Rouxel-Labbé de369c84ee Fixed P3M3 tests to use the new domain API 2018-06-05 17:28:59 +02:00
Mael Rouxel-Labbé d97d388ef4 Reworked Periodic 3 mesh domain classes
No need to duplicate Labeled_mesh_domain_3 anymore: a wrapper is used.
2018-06-05 14:42:03 +02:00
Mael Rouxel-Labbé 03471629d0 Fixed missing include 2018-03-19 11:36:43 +01:00
Mael Rouxel-Labbé c28e05be0c Merge branch 'Periodic_3_mesh_3-Feature-MBogdanov-old' into Periodic_3_mesh_3-Feature-MBogdanov 2018-02-23 12:50:06 +01:00
Mael Rouxel-Labbé 9667bb7618 Added Is_in_domain and Construct_initial_points to periodic's Labeled_mesh_domain 2017-12-20 11:39:22 +01:00
Mael Rouxel-Labbé daf772fb33 Added a function to get the canonical domain to P3MeshDomain_3 2017-12-19 15:45:22 +01:00
Mael Rouxel-Labbé d2ece33849 Documented Mesh_3's and P3M3's medit IO function 2017-12-19 15:44:26 +01:00
Mael Rouxel-Labbé 91feb767a6 Moved CGAL/IO/Medit_IO to CGAL/P3M3/IO/File_medit
To have the same name as Mesh_3's, but can't put it in CGAL/IO/ directly...
2017-12-19 15:14:31 +01:00
Mael Rouxel-Labbé 3e48f65c08 Doc improvements 2017-12-18 16:50:11 +01:00
Mael Rouxel-Labbé 233e66fe44 Cleaned off useless 'using' 2017-12-16 13:07:57 +01:00
Mael Rouxel-Labbé 781e0c8822 Added a comment to explain the various traits class in P3MT3 2017-12-15 20:24:03 +01:00
Mael Rouxel-Labbé d574b759ed Added a precondition to check that the input domain is a cube 2017-12-15 20:23:46 +01:00
Mael Rouxel-Labbé 11901273cf Cleaned some comments 2017-12-15 20:23:20 +01:00
Mael Rouxel-Labbé c6f58bce4e Reworked the way periodicity is defined
The input domain does not need to be periodic. It is the domain class that
has to handle the periodicity. This is cleaner mathematically and will be
more natural for other types of domains.

Along the way, the labeled periodic domain is brought up to date with Mesh_3's
(bug fixes, null subdomain index, etc.)
2017-12-15 17:25:42 +01:00
Mael Rouxel-Labbé 225ec1f573 Symmetrized usage of 'CGAL_PERIODIC_CANONICALIZE_DUAL_INTERSECTIONS' 2017-12-15 11:28:11 +01:00
Mael Rouxel-Labbé adfdc70374 Uniformized template parameters names in all P3T3 traits classes
Hopefully works around a bug in MSCV compilers too
2017-12-12 20:53:10 +01:00
Mael Rouxel-Labbé 4c72848bff Added some robustifying code in P3Mesh_triangulation_3
Snap when a point is too close to the border, even if it's not an issue for
construct_periodic_point()
2017-12-12 14:02:09 +01:00
Mael Rouxel-Labbé f4d5606bd4 Added temporary output code 2017-12-12 13:15:21 +01:00
Mael Rouxel-Labbé 0e71201778 Renamed template parameters to avoid conflicts with base class typedefs 2017-12-12 11:25:27 +01:00
Mael Rouxel-Labbé 9a0075ef01 Silenced some output 2017-12-12 00:25:02 +01:00
Mael Rouxel-Labbé add23592de Fixed license/tag issues 2017-12-08 10:02:26 +01:00
Mael Rouxel-Labbé 59a26dc496 Added a comment 2017-12-06 11:10:43 +01:00
Mael Rouxel-Labbé 671fe63cfa Cleaned output 2017-12-06 11:00:18 +01:00
Mael Rouxel-Labbé 00f6a874e2 Minor doc fixes 2017-12-05 18:32:30 +01:00
Mael Rouxel-Labbé cd8a1d60bc Misc minor changes 2017-12-05 16:37:13 +01:00
Mael Rouxel-Labbé 80578d7e04 Minor improvements to periodic medit output function 2017-12-05 16:29:08 +01:00
Mael Rouxel-Labbé 548fdde7ba Fixed not duplicating the number of facets when 'print_twice' is used 2017-12-04 17:44:53 +01:00
Mael Rouxel-Labbé 14d8540c82 Enhanced medit output for periodic meshes
(looks exactly like Mesh_3's now)
2017-12-04 16:09:18 +01:00
Mael Rouxel-Labbé 45aa2d3ab3 Fixed taking a reference to the position of a vertex about to be destroyed 2017-12-01 19:56:55 +01:00
Mael Rouxel-Labbé 5e810e3c09 Replaced std::map with unordered map + timestamp hash function 2017-12-01 19:07:55 +01:00
Mael Rouxel-Labbé c6a91e3281 Misc minor changes 2017-12-01 18:33:05 +01:00
Mael Rouxel-Labbé a843cf0530 Moved function bodies out of class 2017-12-01 18:30:24 +01:00
Mael Rouxel-Labbé daec72c617 Fixed periodic medit output function for occurence values less than 8 2017-12-01 09:02:01 +01:00
Mael Rouxel-Labbé 8a9750709b Moved the timestamp hash function to STL_extension (and rewrote it) 2017-12-01 08:44:12 +01:00
Mael Rouxel-Labbé 412bda1c44 Fixed licence headers, include guards, authors, etc. 2017-11-30 16:00:23 +01:00
Mael Rouxel-Labbé 7031e940aa Fixed projection of dummies using the wrong index 2017-11-30 15:37:08 +01:00
Mael Rouxel-Labbé 69d13d0a7b Changed name of function 2017-11-30 15:36:46 +01:00
Mael Rouxel-Labbé 11f35f57ed Reworked how the periodic protection class is selected
Rather than overwriting Mesh_3's, a virtual function is used in the initializer.
This allows to use Mesh_3 along Periodic_3_mesh_3.
2017-11-30 15:15:07 +01:00
Mael Rouxel-Labbé c83469fa0e The remove() function of P3M3 now does not do anything if the cover would change 2017-11-30 14:29:11 +01:00
Mael Rouxel-Labbé 8139500daf Added a check on robust_canonicalize_point() 2017-11-30 14:28:51 +01:00
Mael Rouxel-Labbé 1078e00e7f Uniformized between Mesh_3::internal and internal::Mesh_3 2017-11-30 14:26:12 +01:00
Mael Rouxel-Labbé 9b8c5cd824 Another batch of v->point() --> tr.point(v) 2017-11-29 17:48:55 +01:00
Mael Rouxel-Labbé 13a49227c1 Improved documentation 2017-11-29 16:32:58 +01:00
Mael Rouxel-Labbé 45e93cacfd Misc minor changes 2017-11-29 16:32:05 +01:00
Mael Rouxel-Labbé 78133c5100 Replaced usages of '.weight()' in Mesh_3 and P3M3
Either through the comparison predicate or the weight constructor.
2017-11-29 16:30:34 +01:00
Mael Rouxel-Labbé cae1889fe2 Enabled the visited vertex boolean in P3M3 (safe 1-cover) 2017-11-29 12:32:44 +01:00
Mael Rouxel-Labbé 5b93c880de Added missing licence 2017-11-29 12:32:31 +01:00
Mael Rouxel-Labbé 67fde8ea05 Misc minor changes 2017-11-28 15:25:52 +01:00
Mael Rouxel-Labbé 557176e23e Reworked the way periodic protection is done
A map allows to keep multiple (different) positions for each vertex. Determiningwhich position is chosen for a given vertex is done using curve_index,
orientation, and other available information.
2017-11-28 14:33:23 +01:00
Mael Rouxel-Labbé e8a905e56f Aesthetical changes 2017-11-25 21:01:05 +01:00
Mael Rouxel-Labbé c78d8651ac Introduced mechanism to handle problematic dummy vertices during protection 2017-11-24 13:31:31 +01:00
Mael Rouxel-Labbé ce0c2afd40 Readability changes
Increasing reader sanity, one commit at a time
2017-11-24 11:19:21 +01:00
Mael Rouxel-Labbé 461a8a0ff7 Added is_vertex to the periodic mesh triangulation 2017-11-22 14:53:45 +01:00
Mael Rouxel-Labbé 6b674f6efd Renamed Periodic_3_regular_triangulation_3_mesher_3
for consistency with Mesh_3's version
2017-11-22 14:24:34 +01:00
Mael Rouxel-Labbé 357f9d6257 Reworked initialization of a periodic triangulation-based c3t3 2017-11-22 10:06:39 +01:00
Mael Rouxel-Labbé dcfbd3ea42 Get rid of Mesh_domain_holder_with_corners 2017-11-22 10:03:47 +01:00
Mael Rouxel-Labbé aadddba985 Fixed a couple of "an h..." that should have been "a h..." 2017-11-21 17:15:25 +01:00
Mael Rouxel-Labbé 59017a5e9e Minor code cleaning 2017-11-21 16:14:16 +01:00
Mael Rouxel-Labbé c1a4fe3d65 Added dual_segment_exact 2017-11-21 16:12:40 +01:00
Mael Rouxel-Labbé 07d6ce363d Cleaned some obsolete todos 2017-11-20 17:35:24 +01:00
Mael Rouxel-Labbé 5bce5be47d Included P3M3's protection file in P3M3/config.h
To ensure that the file is included before Mesh_3's
2017-11-20 17:03:25 +01:00
Mael Rouxel-Labbé 6bf075e682 Cleaned "get_vertex" usages from periodic protection code
Since we insert dummy before protecting, we're in a 1-sheet triangulation
and we don't need to get canonical vertices: every vertex is already canonical
2017-11-20 16:58:49 +01:00
Mael Rouxel-Labbé 837d685ae0 Forked Protect_edges_sizing_field.h away from Mesh_3
Can't figure out how to do it directly within the original file without making
things slower for Mesh_3... Fork!
2017-11-20 15:54:22 +01:00
Mael Rouxel-Labbé d859221440 Added wrappers to Mesh_3's optimizers 2017-11-20 15:19:01 +01:00
Mael Rouxel-Labbé 9b1ebd71b3 Added a precondition 2017-11-20 15:13:11 +01:00
Mael Rouxel-Labbé ecf9e64f56 Misc minor changes 2017-11-20 15:12:43 +01:00
Mael Rouxel-Labbé f3931d5877 Misc minor changes 2017-11-17 18:42:34 +01:00
Mael Rouxel-Labbé adfb2f6e74 Fixed nearest_power_vertex functions (some issue with offsets) 2017-11-17 18:34:58 +01:00
Mael Rouxel-Labbé 4f09343be1 Fixed not canonalizing some points in P3_mesh_triangulation_3 2017-11-17 18:33:03 +01:00
Mael Rouxel-Labbé 302b3c24fe Introduced signatures for periodic triangulations 2017-11-17 18:28:34 +01:00
Mael Rouxel-Labbé b32a7f8b00 Fixed erroneous precondition 2017-11-11 21:47:01 +01:00
Mael Rouxel-Labbé c33fa46593 Misc minor changes (mostly v->point() to tr.point(v)) 2017-11-11 21:46:14 +01:00
Mael Rouxel-Labbé e1d09b140a Added 'nearest_power_vertex_with_sq_distance'
Which returns, in addition to the power vertex, the squared distance
to this nearest power vertex

Done to avoid a call to tr.min_squared_distance() which is costly for P3M3
2017-11-10 17:49:07 +01:00
Mael Rouxel-Labbé 7298bf0882 Replaced double by FT where appropriate in Slivers_exuder.h 2017-11-10 11:31:45 +01:00
Mael Rouxel-Labbé 943327fe86 Cleaned some M3/P3M3 code 2017-11-06 15:36:30 +01:00
Mael Rouxel-Labbé 0ef6701e6c Added the manifold criterium to P3M3 2017-11-06 14:59:41 +01:00
Mael Rouxel-Labbé 78b32eb91b Fixed trailing whitespace (no real changes) 2017-11-06 13:19:14 +01:00
Mael Rouxel-Labbé e968ab9275 Removed P3M3's Mesh_domain_holder_etc.
Simply use Mesh_3's mesh_domain_with_polylines_features.
2017-11-02 16:58:13 +01:00
Mael Rouxel-Labbé 5996f5959d Replaced periodic code with a call to Mesh_3 2017-11-02 11:24:45 +01:00
Mael Rouxel-Labbé 3b0425a48d Misc minor changes
Mostly code cleaning
2017-10-31 15:49:15 +01:00
Mael Rouxel-Labbé ac0a27cdfd Made Mesh_3's optimizers work with periodic triangulations 2017-10-31 15:47:23 +01:00
Mael Rouxel-Labbé 7009f228a5 Changed some documentation and comments 2017-10-30 14:50:51 +01:00
Mael Rouxel-Labbé e2b33c4948 Progress on periodic optimizers
- Replaced a lot of v->point() with tr.point(v) & similar
- Fixed taking references to temporary:
  we can't do "F(construct_point_3_object()(tr.point(c, i)))" for periodic
  triangulations because tr.point(c,i) is _not_ a reference
- Added some sanity checks to debug Lloyd optimization
- Fixed some indentation
2017-10-29 21:31:59 +01:00
Mael Rouxel-Labbé 1f4475d471 Merge branch 'Periodic_3_mesh_3-Feature-MBogdanov-old' into Periodic_3_mesh_3-Feature-MBogdanov 2017-10-27 16:26:27 +02:00
Mael Rouxel-Labbé bae6f15fa5 WIP commit 2017-10-27 15:34:33 +02:00
Mael Rouxel-Labbé 60fbe1975c Various readability changes (no real changes) 2017-10-26 13:01:39 +02:00
Mael Rouxel-Labbé c4fddff235 Minor wording improvement 2017-10-22 23:32:16 +02:00
Mael Rouxel-Labbé 75fceea173 Removed useless commented assertion 2017-10-22 23:32:00 +02:00
Mael Rouxel-Labbé d9ef84a33a Added triangle() to P3_mesh_triangulation_3 2017-10-22 23:31:28 +02:00
Mael Rouxel-Labbé 9767912335 Fixed some functions from P3_mesh_triangulation...
... that did not properly canonicalize points
2017-10-22 23:30:26 +02:00
Mael Rouxel-Labbé 41f5c47394 Misc minor changes
Indentation, comments, whitespace, etc.
2017-10-22 23:28:37 +02:00
Mael Rouxel-Labbé 94bb59b722 Various doc/comments improvements 2017-10-17 12:45:30 +02:00
Mael Rouxel-Labbé d8d4709012 Removed some std::cout 2017-08-18 10:58:25 +02:00
Mael Rouxel-Labbé c6af3e8755 Minor doc changes 2017-08-07 11:32:58 +02:00
Mael Rouxel-Labbé b330f05354 Misc minor changes 2017-07-27 17:01:28 +02:00
Mael Rouxel-Labbé b938fd1c58 Fixed license 2017-07-27 16:40:46 +02:00
Mael Rouxel-Labbé 1c618f7e22 Fixed compilation issue 2017-07-27 13:57:39 +02:00
Mael Rouxel-Labbé e1e5261603 Misc minor changes 2017-07-27 13:04:21 +02:00
Mael Rouxel-Labbé 9749c71a1c Replaced calls to assert() with CGAL assertions 2017-07-27 11:55:37 +02:00
Mael Rouxel-Labbé a8336f39ec Minor misc changes 2017-06-22 15:52:43 +02:00
Mael Rouxel-Labbé 956b1f6fc0 Introduced robust_canonicalize_point()
This is a way to handle points that are epsilon-close to the boundary yet still
outside. This might create numerical issue such that the point + any offset
does not fall into the domain (due to -epsilon + 1 ~= 1)

The numerical issue is detected when the offset is computed and we snap the
point to the domain.

This is done for P3M3 only (not P3T3: people should give proper input points!)
2017-06-22 15:48:01 +02:00
Mael Rouxel-Labbé fe14379106 P3M3 now use the new robust traits 2017-06-22 15:36:02 +02:00
Mael Rouxel-Labbé 7ba903423a Silenced warning 2017-06-22 15:07:48 +02:00
Mael Rouxel-Labbé 6fcb046c4f Fixed unused variable warning 2017-06-22 15:02:36 +02:00