Laurent Rineau
416cbbcf47
Merge pull request #4277 from MaelRL/PMP-Locate_rework_traits-GF
...
PMP: Replace `Location_traits` by a simpler API
2019-10-29 15:23:41 +01:00
Mael Rouxel-Labbé
e0d42f0e37
Rephrase documentation
2019-10-28 14:41:37 +01:00
Mael Rouxel-Labbé
f058989e9b
Misc minor changes in tests
2019-10-28 14:38:46 +01:00
Mael Rouxel-Labbé
4401a80642
Do not do useless computations (check for negative thresholds)
2019-10-28 14:37:38 +01:00
Mael Rouxel-Labbé
20c446df41
Clarify documentation
2019-10-28 14:37:04 +01:00
Mael
ab65cc9800
Merge branch 'master' into PMP-Remove_small_CCs
2019-10-28 09:07:45 +01:00
Mael
fe681a2edb
Merge branch 'master' into PMP-New_vertex_normal_computations-GF
2019-10-28 08:52:52 +01:00
Mael Rouxel-Labbé
ff09c5d0c8
Merge branch 'SMS-Add_GH_simplification-GF-old' into SMS-Add_GH_simplification-GF
2019-10-25 16:35:53 +02: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
Mael Rouxel-Labbé
7e9f1e9acc
Fix compilation error in area()
...
(Re-add some code removed instead of moved in
0f7de56d76 )
2019-10-18 23:42:45 +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
Laurent Rineau
2edcf7b033
Merge pull request #4269 from maxGimeno/PMP-Fix_doc_macro-maxGimeno
...
PMP: Fix doc macro
2019-10-18 14:17:19 +02:00
Mael Rouxel-Labbé
0f7de56d76
Move a number of Named Parameter type extractor from CGAL::PMP:: to PMP::
...
These are used in a number of pacakges other than PMP and the code
is also already in /BGL. None are documented.
2019-10-17 12:41:30 +02:00
Laurent Rineau
c58815d7c7
Merge pull request #4269 from maxGimeno/PMP-Fix_doc_macro-maxGimeno
...
PMP: Fix doc macro
2019-10-15 16:34:06 +02:00
Mael Rouxel-Labbé
77e0937fb2
Uniformize tparam formulation
2019-10-15 13:13:16 +02:00
Sébastien Loriot
acec5469fe
lazily build the tree
2019-10-10 08:00:41 +02:00
Mael Rouxel-Labbé
3801a35eb3
Tiny fixes
2019-10-08 16:03:51 +02:00
Mael Rouxel-Labbé
0b67e30c01
Improve user-friendliness of PMP::Locate by removing the class Location_traits
...
The problem was that Location_traits is templated by Named Parameters, and
it is extremely unpractical to have to explicitly write the type (it's nested
classes all the way down).
Instead, we use template aliases for most types, and template by the field
type (FT) when necessary, which is much easier to write for the user.
Since template aliases cannot automatically deduce template parameters,
non-Doxygen versions of functions must be written without them
from time to time.
Other fixes:
- Simplify implementation of function 'random_location_halfedge'
- Don't initialize FTs from doubles
- Minor doc improvements
- reference to points when using VPMs
2019-10-08 15:54:08 +02:00
Maxime Gimeno
cf4e1b4bd6
Add missing macro definition
2019-10-03 12:15:46 +02:00
Maxime Gimeno
0c26c6c3e8
Add missing macro def
2019-10-03 12:14:41 +02:00
Maxime Gimeno
9e3b59e55d
Add missing macro def
2019-10-03 12:07:47 +02:00
Maxime Gimeno
fe746764cf
remove the bool.
2019-10-02 15:20:18 +02:00
Maxime Gimeno
130d4a5e24
remove useless bool
2019-10-02 09:56:07 +02:00
Maxime Gimeno
e42c87b54f
add the missing box
2019-10-02 09:35:41 +02:00
Mael Rouxel-Labbé
e834971904
Minor code fixes
2019-10-01 13:03:43 +02:00
Mael Rouxel-Labbé
978a3f9504
Minor doc fixes
2019-10-01 13:03:29 +02:00
Maxime Gimeno
c18ad651d6
Fix last constro
2019-10-01 10:19:54 +02:00
Maxime Gimeno
c42d1b3cfd
test the dry_run
2019-10-01 09:56:37 +02:00
Maxime Gimeno
1a429d03e4
Add dry_run to keep_large_components() and remove_connected_components_of_negligible_size9)
2019-10-01 09:47:00 +02:00
Maxime Gimeno
10f53f8595
Fix the doc
2019-10-01 09:30:29 +02:00
Maxime Gimeno
546be7aff7
Add a `dry_run` parameter to `keep_large_connected_components()`
2019-09-30 15:49:36 +02:00
Sébastien Loriot
ee8528e02b
fix the test
2019-09-27 11:45:57 +02:00
Sébastien Loriot
429bf8676b
fix handling of constrained vertices in geometric test for collapse
2019-09-27 11:15:34 +02:00
Sébastien Loriot
80a462d9a4
disable the max length test if 0 is given as threshold
2019-09-27 11:08:10 +02:00
Sébastien Loriot
6cedfac39a
move code to internal/experimental and example to test
...
also update test that was no longer compiling
2019-09-27 08:35:03 +02:00
Maxime Gimeno
b831e41013
Use a bbox in Side-of_triangle_mesh until a request is inside, only then use the tree. Make it faster when working with disjoint meshes.
2019-09-25 13:03:12 +02:00
Mael Rouxel-Labbé
3bd071175e
Tiny optimization
2019-09-25 09:40:21 +02:00
Mael Rouxel-Labbé
2049e9e90c
Add support for VCM
2019-09-25 09:26:25 +02:00
Mael Rouxel-Labbé
a6ff330190
Use traits' functors
2019-09-24 17:32:50 +02:00
Mael Rouxel-Labbé
898663245f
Allow needle/cap/length threshold to be passed as NP
...
+ edge constraint map
+ general code cleaning
2019-09-24 16:58:10 +02:00
Maxime Gimeno
a52592909f
Remove all calls to accelerate_distance_queries(), now redundant.
2019-09-24 11:44:20 +02:00
Mael Rouxel-Labbé
9b3da64b8c
Merge branch 'PMP-Remove_needles_and_caps-GF-old' into PMP-Remove_needles_and_caps-GF
2019-09-24 09:54:30 +02:00
Mael Rouxel-Labbé
05fdacd6bf
Clean code
2019-09-24 09:42:06 +02:00
Sébastien Loriot
168463e038
remove extra assertion
2019-09-24 08:51:22 +02:00
Sébastien Loriot
1a4c47d6b4
update macro name
2019-09-19 12:47:48 +02:00
Laurent Rineau
ebcd182b5c
Merge remote-tracking branch 'cgal/releases/CGAL-4.14-branch'
2019-09-17 14:31:44 +02:00
Maxime Gimeno
d893b694f4
Don't use "using parameters::choose_param"
2019-09-17 10:11:12 +02:00
Sébastien Loriot
e1366dd184
flip only if the flip is the best quad diagonal
2019-09-12 10:52:41 +02:00
Sébastien Loriot
31e44f2580
keep the vertex minimizing the volume variation
2019-09-11 16:04:25 +02:00
Sébastien Loriot
7cf0c7daad
add a geometric test to prevent folding and self-intersections
2019-09-11 14:44:27 +02:00
Sébastien Loriot
5e736889d2
make sure all elements are removed during one call of the function
...
an additional call should not do anything
2019-09-11 07:06:23 +02:00
Sébastien Loriot
d47f3f57a3
Test the opposite triangle too (same edge = same key)
2019-09-10 17:27:03 +02:00
Sébastien Loriot
f3c2ae6b98
re-evaluate triangles after changes
2019-09-10 14:34:26 +02:00
Sébastien Loriot
fe2daaae75
retest the validity of the criteria before doing the operations
...
+ add debug code to dump model before the operation
2019-09-10 10:27:12 +02:00
Sébastien Loriot
89c1c4b3e8
check if the edge to be collapsed still verify the needle criteria
2019-09-06 15:35:03 +02:00
Sébastien Loriot
ee537eb89c
do not iterate on a container if we remove elements from it
2019-09-06 11:41:19 +02:00
Sébastien Loriot
acb8b8ffa2
split the function checking for needles and caps and use it to avoid inifinite flipping loops
2019-09-06 10:35:29 +02:00
Sébastien Loriot
64cd7b67c2
hide debug
2019-09-05 11:26:12 +02:00
Mael Rouxel-Labbé
2c06609445
Fix some warnings
2019-08-30 16:22:50 +02:00
Sébastien Loriot
5fe1b43ce6
Merge pull request #4139 from MaelRL/PMP-Fix_duplicate_nm_vertices_5.0-GF
...
PMP: Fix improper halfedge incidence state in post non-manifold vertex duplication mesh (5.0)
2019-08-29 20:10:16 +02:00
Sébastien Loriot
73ff5f610b
Merge pull request #4174 from MaelRL/PMP-Fix_boundary_cycle_stitching_5.0-GF
...
PMP: Fix boundary cycle when non manifold vertices exist in the cycle (5.0)
2019-08-29 20:09:34 +02:00
Sebastien Loriot
201a4b8ff8
Merge pull request #4176 from MaelRL/PMP-Fix_boundary_cycle_nm_vertices-4.14-GF
...
PMP: Fix boundary cycle when non manifold vertices exist in the cycle (4.14)
2019-08-29 19:52:12 +02:00
Sebastien Loriot
98f3847cf1
Merge pull request #4137 from MaelRL/PMP-Fix_duplicate_nm_vertices_414-GF
...
PMP: Fix improper halfedge incidence state in post non-manifold vertex duplication mesh (4.14)
2019-08-29 19:51:17 +02:00
Sebastien Loriot
aa3b75a596
Merge pull request #4178 from janetournois/PMP-fix_isotropic_remeshing_degenerate_flip-jtournois
...
`PMP::isotropic_remeshing()` - prevent creating non-manifold configurations
2019-08-29 07:32:44 +02:00
Sébastien Loriot
551313ac5c
Merge branch 'cgal/releases/CGAL-4.14-branch'
2019-08-27 06:37:23 +02:00
Sébastien Loriot
f0fb56233a
Merge 'cgal/releases/CGAL-4.13-branch'
2019-08-27 06:36:39 +02:00
Mael Rouxel-Labbé
c2cb44175b
Add a reference to the paper
2019-08-26 13:24:51 +02:00
Mael Rouxel-Labbé
5cf6ec5261
Fix minor bug in 'is_default_parameter' usage
2019-08-26 13:05:50 +02:00
Mael Rouxel-Labbé
ae60ff2d15
Robustification of most visible vertex normal computation
2019-08-26 13:05:27 +02:00
Mael Rouxel-Labbé
6da2cebc8d
Sqrt -> Approximate_sqrt
2019-08-26 13:04:52 +02:00
Mael Rouxel-Labbé
ce9b3a890d
Use sin-based weights in the default vertex normal computation
2019-08-26 13:04:24 +02:00
Mael Rouxel-Labbé
b9f37cea38
Hide debug code behind macros
2019-08-26 13:03:22 +02:00
Mael Rouxel-Labbé
cf35771337
Robustify and incorporate most visible normal computations into standard fns
2019-08-23 16:29:36 +02:00
Mael Rouxel-Labbé
195a3319eb
Also remove isolated vertices in remove_negligible_CCs
2019-08-23 14:37:16 +02:00
Mael Rouxel-Labbé
bba6e57053
Misc code cleaning
2019-08-23 11:35:34 +02:00
Mael Rouxel-Labbé
ad90fa30fd
Fix potentially taking references to temporaries
...
For example, if the vertex point property map returned temporaries
2019-08-23 11:16:01 +02:00
Mael Rouxel-Labbé
f05a11dde5
Fix some internal functions not being in the 'internal' namespace
2019-08-23 11:15:41 +02:00
Mael Rouxel-Labbé
c65c5e0b42
Merge branch 'PMP-New_vertex_normal_computations-GF-old' into PMP-New_vertex_normal_computations-GF
2019-08-23 11:01:31 +02:00
Mael Rouxel-Labbé
923bd66ddf
Document remove_connected_components_of_negligible_size
2019-08-23 10:33:13 +02:00
Mael Rouxel-Labbé
68419d1e65
Remove_negligible_CCs now take two new NP: area and volume thresholds
...
If no treshold is provided, a default value is computed based on the length
of the diagonal of the bbox.
2019-08-23 09:24:17 +02:00
Mael Rouxel-Labbé
cd46683b48
Update NP syntax to new standards (choose_parameter / get_parameter)
2019-08-23 09:23:40 +02:00
Mael Rouxel-Labbé
83184032e6
Add a function 'number_of_CCs' for convenience
...
Just so that we don't have have to create the face map and such
if we only care about the number of CCs
2019-08-23 09:22:54 +02:00
Mael Rouxel-Labbé
fad61974d6
Merge branch 'PMP-Remove_small_CCs-old' into PMP-Remove_small_CCs
2019-08-22 14:22:41 +02:00
Mael Rouxel-Labbé
6d2ebc7a6e
Minor doc changes
2019-08-22 13:14:45 +02:00
Mael
023dfec313
Add const marker
2019-08-22 09:06:02 +02:00
Mael
be20ddb568
Add const marker
2019-08-22 09:05:14 +02:00
Mael
d2349066af
Add const marker
...
Co-Authored-By: Sebastien Loriot <sloriot.ml@gmail.com>
2019-08-22 09:03:01 +02:00
Mael Rouxel-Labbé
4bca5d114f
Rephrase end condition
2019-08-21 17:07:44 +02:00
Mael Rouxel-Labbé
afec55f375
Rephrase end condition
2019-08-21 17:06:55 +02:00
Mael Rouxel-Labbé
799916d7c5
Rephrase end condition
2019-08-21 17:04:39 +02:00
Mael Rouxel-Labbé
a1039b9d33
Fix boundary cycle stitching when nm vertices are present
2019-08-21 16:51:58 +02:00
Mael Rouxel-Labbé
b60f1f5205
stitch_borders() now returns the number of halfedge pairs that were stitched
2019-08-21 16:24:34 +02:00
Mael Rouxel-Labbé
9bd79323f6
Change guard name
2019-08-21 16:15:57 +02:00
Mael Rouxel-Labbé
7c09f56889
Minor changes to enable debug code
2019-08-21 16:10:04 +02:00
Mael Rouxel-Labbé
13f9d60518
Fix boundary cycle stitching when non-manifold vertices are present
2019-08-21 16:05:04 +02:00
Mael Rouxel-Labbé
7f55980ac6
Misc debug and code cleaning (no real changes)
2019-08-21 16:02:53 +02:00
Simon Giraudot
dd5fe73996
Document type of iterator (random access)
2019-08-21 15:43:50 +02:00
Simon Giraudot
790ed44613
Fix distance range type
2019-08-21 14:51:04 +02:00
Jane Tournois
77c8e68e07
fix the use of flip() inside fix_degenerate_faces()
...
the topological condition should be a strong condition, not an assertion
2019-08-20 17:23:32 +02:00
Maxime Gimeno
3b38ede8c4
Add CGAL_USE to manage case where assertions are ignored
2019-08-14 13:22:19 +02:00
Andreas Fabri
7db6c8e670
make const &
2019-08-12 07:51:32 -07:00
Andreas Fabri
52ca4f828f
Comment debug output as travis fails
2019-08-12 07:49:12 -07:00
Sébastien Loriot
760365987c
Merge branch 'cgal/releases/CGAL-4.14-branch'
2019-08-12 09:20:53 +02:00
Sebastien Loriot
e67611862b
Merge pull request #4129 from janetournois/PMP-fix_isotropic_remeshing_collapse-jtournois
...
Fix segfault in `PMP::isotropic_remeshing()`
2019-08-12 09:16:57 +02:00
Sebastien Loriot
eb712a67e9
Merge pull request #4094 from MaelRL/PMP-Snap_pp-GF
...
PMP: speed improvements for snap.h
2019-08-12 09:02:50 +02:00
Mael Rouxel-Labbé
82e1c93eef
Ensure that all vertices have a proper halfedge after non manifold duplication
2019-08-05 16:06:33 +02:00
Mael Rouxel-Labbé
9bf457ffcc
Fix duplicate nm vertices
...
There was an issue with keeping a valid incident halfedge for vertices
post-duplication
2019-08-05 15:38:30 +02:00
Mael Rouxel-Labbé
56354bcf8b
Use approximate sqrt because compute_area_3 does not work for some kernels
2019-08-02 12:14:25 +02:00
Mael Rouxel-Labbé
71304cf145
Fix np internal type
2019-08-02 11:04:26 +02:00
Mael Rouxel-Labbé
9f3009f88b
Add breathing room
2019-08-02 09:05:09 +02:00
Mael Rouxel-Labbé
22acb31a12
Add a function to remove small (in terms of area && volume) CCs
2019-08-01 16:10:52 +02:00
Mael Rouxel-Labbé
16cdbb4b8f
Avoid default constructing the traits
2019-08-01 16:10:36 +02:00
Mael Rouxel-Labbé
edbe852d4d
Simplify initialization
2019-08-01 16:10:14 +02:00
Jane Tournois
5f8a58a046
deal with faces on the boundary
...
a precondition inside `flip_edge()` fails if this boundary condition is not satisfied
2019-08-01 14:58:19 +02:00
Sébastien Loriot
b84297f8f6
update the usage for the new CGAL named function parameters
2019-07-29 09:38:39 +02:00
Sébastien Loriot
25a05e9f4c
Merge branch 'CGAL-named_function_parameters-4.14' into master
...
Conflicts resolved by hand
2019-07-28 23:46:43 +02:00
Sébastien Loriot
aa47744c36
update the usage for the new CGAL named function parameters
2019-07-28 22:30:17 +02:00
Sébastien Loriot
2f81a21523
Merge 'CGAL-named_function_parameters' for 4.13-branch into 4.14-branch
...
Conflicts resolved by hand
2019-07-28 22:30:13 +02:00
Mael Rouxel-Labbé
00f8f3ae43
Remove example that had been moved to test (snap already has two tests)
2019-07-19 09:07:01 +02:00
Sébastien Loriot
4a58db22b9
fix warnings
2019-07-18 20:01:44 +02:00
Mael
9ba0870ebd
Merge branch 'master' into PMP-Snap_pp-GF
2019-07-18 17:43:04 +02:00
Sébastien Loriot
41ef56f8ad
Merge remote-tracking branch 'cgal/releases/CGAL-4.14-branch' into HEAD
2019-07-18 16:57:27 +02:00
Sébastien Loriot
c411ae69d0
Merge pull request #2951 from kkatrio/PMP-smoothing-kkatrio
...
PMP: Mesh and shape smoothing
2019-07-18 16:49:05 +02:00
Sébastien Loriot
1f8065c6c3
Merge pull request #3885 from MaelRL/PMP-Locate-GF
...
PMP: Add locate.h and rewrite Triangulation_2 graph traits
2019-07-18 16:40:49 +02:00
Sebastien Loriot
8adc64dfe3
Merge pull request #3860 from MaelRL/PMP-Add_non_manifold_vertices_collector-GF
...
PMP: Add function 'non_manifold_vertices'
2019-07-18 16:38:15 +02:00
Sebastien Loriot
0c089d6f91
Merge pull request #3721 from sloriot/PMP-clip_fixes
...
Fixes for clipping
2019-07-18 16:28:44 +02:00
Mael Rouxel-Labbé
13e87ad3bd
Parallelize AABB tree traversal
2019-07-18 14:32:56 +02:00
Mael Rouxel-Labbé
3fe52056cf
Do not normalize bisector in most visible vertex computations
2019-07-18 11:19:03 +02:00
Mael Rouxel-Labbé
9d1cec6be6
Fix indentation (cosmetic)
2019-07-18 11:18:52 +02:00
Mael Rouxel-Labbé
1954203264
Change comment after tests
2019-07-17 15:22:10 +02:00
Mael Rouxel-Labbé
95982eb36f
Allow source vertex to snap to edges, even if they have been previously snapped
...
The key point is that the splitting point of a (target) halfedge
is assigned the position of the source vertex that breaks this target halfedge.
In other words, if multiple source vertices have the same position, we do
not have to track and move these together because they do not move anyway.
2019-07-17 14:54:41 +02:00
Mael Rouxel-Labbé
348b806d5e
Use some point references to avoid copies
2019-07-17 14:53:57 +02:00
Mael Rouxel-Labbé
a63c10c2cb
Use traits class functors for equality tests
2019-07-17 14:33:47 +02:00
Mael Rouxel-Labbé
0d617400bc
Accelerate AABB tree traversal by passing the tolerance as initial min_dist
2019-07-17 14:29:26 +02:00
Mael Rouxel-Labbé
ead092a62b
Clean useless includes
2019-07-17 14:28:14 +02:00
Mael Rouxel-Labbé
b39d728f45
Minor doc cleaning
2019-07-15 11:40:46 +02:00
Sébastien Loriot
560c77f567
rename named function parameter class
2019-07-15 06:25:02 +02:00
Sébastien Loriot
cebf0657d8
Use a full CGAL version of named function parameters
...
no longer rely on boost
2019-07-14 22:45:47 +02:00
Sébastien Loriot
0ff0b41ac8
remove unused code
2019-07-11 12:24:05 +02:00
Mael Rouxel-Labbé
a284ec00d4
Fix typo
2019-07-11 11:31:40 +02:00
Mael Rouxel-Labbé
c3d1977ac1
Explicitely specify parameter blocks
...
Might help windows...?
2019-07-11 11:30:48 +02:00
Sébastien Loriot
f1e2bf702c
improve code + make sure in tests that halfedges are correctly linked
2019-07-11 09:38:23 +02:00
Mael
b8b1989c65
Update macroname
...
Apparently called MINILOG_MAX_LOG_LEVEL on the installations that matter...
2019-07-10 15:38:51 +02:00
Mael Rouxel-Labbé
f019ace14c
Remove obsolete code
2019-07-10 08:57:21 +02:00
Mael Rouxel-Labbé
eb086c7847
Fix border case of normal computation at a vertex with valence 1
2019-07-09 18:07:11 +02:00
Mael Rouxel-Labbé
bfaa4e000d
Fix doc warning
2019-07-09 16:45:10 +02:00
Mael Rouxel-Labbé
675cd33dbc
Fix some edges not being properly cleaned from the active sets
2019-07-09 16:08:09 +02:00
Mael Rouxel-Labbé
7a9d0ccea8
Add some naive code to remove needles and caps
2019-07-09 15:26:01 +02:00
Mael Rouxel-Labbé
401aea2500
Add new method to compute vertex normals
2019-07-08 15:40:08 +02:00