Mael Rouxel-Labbé
d13f4f8ddc
Merge remote-tracking branch 'mine/PMP-Remove_small_CCs' into PMP-Snapping_improvements-GF
2019-11-22 14:27:59 +01:00
Sébastien Loriot
23d41c50a6
handle case of a halfedge on the boundary (ignore in the if after)
2019-11-22 11:24:47 +01:00
Mael Rouxel-Labbé
e73b973b62
Use Parallel_if_available_tag to simplify code that used CGAL_LINKED_WITH_TBB
2019-11-20 12:24:54 +01:00
Mael Rouxel-Labbé
41bb11cdee
Make unique indentation style a little less unique (no real changes)
2019-11-19 17:08:25 +01:00
Mael Rouxel-Labbé
b6dd62be52
Use ID_FROM_BOX_ADDRESS in Box_with_info_d where safe
...
That is, where we are passing box ranges by pointer.
See also 52ce0b6ac4
2019-11-19 17:06:47 +01:00
Mael Rouxel-Labbé
ac86fadd7a
Misc code formatting improvements
2019-11-19 12:51:17 +01:00
Mael Rouxel-Labbé
09419dca5c
More work towards local self-intersection removal (bug fixes, etc.)
2019-11-18 12:06:42 +01:00
Andreas Fabri
a44674a694
Add ConcurrencyTag in Box_intersection_d
2019-11-15 21:45:19 +01:00
Andreas Fabri
bef2b5f1b8
Parallelize using 2 or 4 parallel threads
2019-11-15 16:21:25 +01:00
Andreas Fabri
40fbe18dcd
Merge branch 'Box_intersection_d-accelerate-GF' of github.com:afabri/cgal into Box_intersection_d-accelerate-GF
2019-11-15 12:55:43 +01:00
Mael
a47f0ee91d
Fix inconsistency in doc/code parameter names
2019-11-15 12:03:18 +01:00
Mael
ff960adea0
Fix namespace lookup issue (and a warning)
2019-11-14 17:08:58 +01:00
Andreas Fabri
3caad9bc88
Remove #include
2019-11-14 13:26:47 +01:00
Andreas Fabri
f033e0a244
Cleanup
2019-11-14 11:45:37 +01:00
Andreas Fabri
899b9ec384
Remove experimental code
2019-11-14 11:31:50 +01:00
Andreas Fabri
45cd4dc8bf
remove parameter; Add ConcurrencyTag to does_self_intersect
2019-11-14 11:21:40 +01:00
Sébastien Loriot
e4b205bca6
update doc + reorder/factorize code
2019-11-14 06:31:43 +01:00
Sébastien Loriot
ceddeb9756
hide debug code
2019-11-13 15:55:08 +01:00
Andreas Fabri
5ea8d36129
Do not use a concurrent_vector
2019-11-13 09:35:48 +01:00
Andreas Fabri
2d14c67304
Remove unused class Output_iterator_with_bool
2019-11-13 09:07:10 +01:00
Andreas Fabri
a35a7ebf9b
fix a reserve()
2019-11-12 18:40:17 +01:00
Andreas Fabri
343ca0b4a7
Add the version that reports all pairs of faces and performs the intersection tests in parallel
2019-11-12 18:27:32 +01:00
Andreas Fabri
732d1d8f8a
Add overloads with ConcurencyTag
2019-11-12 16:32:08 +01:00
Andreas Fabri
fc72b37db4
Functor cleanup
2019-11-12 15:31:26 +01:00
Andreas Fabri
899d8f7b59
cleanup
2019-11-12 13:01:26 +01:00
Andreas Fabri
ead0da3c77
WIP: not the same number of intersections for Tuyaeaux.stl
2019-11-12 11:40:40 +01:00
Mael Rouxel-Labbé
a191211494
Rephrase named parameter documentation
2019-11-12 11:22:06 +01:00
Mael Rouxel-Labbé
3b738f0e95
Fix broken edge-case in keep_largest_CCs
...
Even if there's a single CC, a user may still want to keep 0 (who knows why,
but that's not the question).
Also, if number_to_keep == number_of_CCs, you can also exit early.
2019-11-12 11:05:03 +01:00
Mael Rouxel-Labbé
c065b35ee5
Document new named parameters
2019-11-12 10:59:20 +01:00
Mael Rouxel-Labbé
791a5277d2
Add an output iterator to keep_large(st)/small_CCs (+dry run if needed)
...
The point is to be able to collect the faces if you do a dry run
2019-11-12 10:58:18 +01:00
Andreas Fabri
b6bc521c22
WIP does not even compile
2019-11-08 16:21:20 +01:00
Andreas Fabri
e18413c9b5
fixes
2019-11-07 21:26:53 +01:00
Andreas Fabri
21bd1af505
Avoid chains of next and target
2019-11-07 17:54:46 +01:00
Sébastien Loriot
b9a079b530
remove cpp11/cpp0x
2019-11-04 11:34:53 +01:00
Sébastien Loriot
9a0bff4008
remove BOOST_FOREACH added by recent PRs
2019-11-04 10:59:15 +01:00
Mael Rouxel-Labbé
c15f8e0c70
Do not allow non-conformal snapping to snap onto stitchable pairs
2019-10-31 13:48:55 +01:00
Mael Rouxel-Labbé
5637390346
Return stitchable halfedge pairs in vertex-vertex snapping
2019-10-31 13:48:26 +01:00
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
Maxime GIMENO
63a6dc2a4b
Fix typo
...
Co-Authored-By: Mael <mael.rouxel.labbe@geometryfactory.com>
2019-10-18 16:01:43 +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
052be439e5
fix indentation and missing blank line
2019-10-10 11:37:30 +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
a4947324e9
clean-up and new tests
2019-10-04 13:13:00 +02:00
Maxime Gimeno
c276ddaca0
fix warning
2019-10-04 09:55:30 +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
Maxime Gimeno
3bcd8810e5
update doc
2019-09-27 14:40:35 +02:00
Maxime Gimeno
1916821995
Fix copy_nested_parents
2019-09-27 13:23:56 +02:00
Maxime Gimeno
8583935ae8
Use the functions where possible
2019-09-27 11:50:55 +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
97a3390457
Wrap the mechanism in 3 functions with 3 types to reduce the number of template parameters to 2.
2019-09-26 16:31:38 +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é
e37d708f62
Fix target mesh being geometrically modified during non-conformal snapping
2019-09-25 10:32:40 +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
bf0e52cf6e
Incorporate the initialization of the map to the helpers.
2019-09-24 16:36:57 +02:00
Maxime Gimeno
5a4dc7733c
blah
2019-09-24 15:39:01 +02:00
Maxime Gimeno
d18191db46
rename helper and add detect if map is writable (need_init is true in that case)
2019-09-24 14:15:01 +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
Maxime Gimeno
f9074ce00a
remove capital and make vec const
2019-09-06 15:51:35 +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
Maxime Gimeno
5fdcb3c83e
Replace the hardcoded std::vector<> of the NPs by a more flexible concept, and add functions for copy.
2019-09-06 11:45:42 +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
Mael Rouxel-Labbé
d6bb0e5bf0
Use a generic dynamic pmap rather than the specific edge_is_feature one
...
Don't want the state of a feature edge to be remembered from one step
of the algorithm to the other
2019-09-05 15:58:57 +02:00
Mael Rouxel-Labbé
0c497580cd
Misselleneaous... Miscalleneous.. Miscenalleous... Miscelleanous... Misc cleaning!
2019-09-05 15:52:34 +02:00
Mael Rouxel-Labbé
c2d3ee8e1e
Add hole-filling with constraints as a fourth possible step to treat local SI
...
It is tried before hole-filling without constraints, which is used as a last
resort (before non-local hole-filling)
2019-09-05 15:32:06 +02:00
Maxime Gimeno
0b71f00eb5
Add a bitset to foes_bound_a_volume and add a hidden test for all possible orientations of nested_cubes.
2019-09-05 14:27:36 +02:00
Sébastien Loriot
64cd7b67c2
hide debug
2019-09-05 11:26:12 +02:00
Sébastien Loriot
2e8b3ec7a5
remove BOOST_FOREACH
2019-09-05 08:10:11 +02:00
Maxime Gimeno
54895543b3
Fix boost::get_param and bad if()
2019-09-04 17:04:20 +02:00
Maxime Gimeno
ccf338b9b7
Merge remote-tracking branch 'cgal/master' into PMP-volume_segmentation
2019-09-04 14:58:16 +02:00
Maxime Gimeno
d285d4aae2
Fix mechanism and adapt cc test for polyhedron with no id
2019-09-04 14:00:08 +02:00
Sébastien Loriot
a5e3841a14
reduce expression + improve test
2019-08-30 17:43:21 +02:00
Sébastien Loriot
7fd73c3919
use the new function to implement orient_to_bound_a_volume
...
the former implementation was recursive
this makes the implementation non-recursive
2019-08-30 17:25:21 +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
Andreas Fabri
4bedab0ef4
Do not use free function
2019-08-28 15:56:51 +02:00
Sébastien Loriot
0e7d85ca07
add TODO
2019-08-27 08:29:44 +02:00
Sébastien Loriot
09de5587a6
remove no longer used function
2019-08-27 08:13:24 +02:00
Sébastien Loriot
8c27d11fdb
use the new function to implement does_bound_a_volume
...
this makes the implementation non-recursive
2019-08-27 08:10:12 +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é
e9d1841a5f
Merge branch 'PMP-Make_remove_self_intersections_local-GF-old' into PMP-Make_remove_self_intersections_local-GF
2019-08-26 16:00:37 +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
Sébastien Loriot
242cce424b
add parameters to collect pair of cc intersecting
2019-08-25 13:53:32 +02:00
Sébastien Loriot
83fcb5d24e
add new named parmeters to extract more info from the function
2019-08-25 09:46:56 +02:00
Mael Rouxel-Labbé
cf35771337
Robustify and incorporate most visible normal computations into standard fns
2019-08-23 16:29:36 +02:00
Maxime Gimeno
ed91d4e86e
Add doc for new function
2019-08-23 15:41:06 +02:00
Maxime Gimeno
a446908575
Use some CRTP voodoo to factorize the mesh and the soup versions of sampling.
2019-08-23 15:40:57 +02:00
Maxime Gimeno
cc5b9c7a8a
WIP
2019-08-23 15:40:02 +02:00
Maxime Gimeno
9551de0782
Clarify precondition message in polygon_soup_to_polygon_mesh()
2019-08-23 15:39:52 +02:00
Sébastien Loriot
283b52cb8b
Revert "move self-intersection computation in an internal function"
...
This reverts commit 3ae8e0f06f .
2019-08-23 15:33:59 +02:00
Sébastien Loriot
48b72b3fab
use c++11 for-range loop
2019-08-23 15:22:01 +02:00
Sébastien Loriot
3ae8e0f06f
move self-intersection computation in an internal function
2019-08-23 14:59:59 +02:00
Mael Rouxel-Labbé
195a3319eb
Also remove isolated vertices in remove_negligible_CCs
2019-08-23 14:37:16 +02:00
Sébastien Loriot
baea5490a4
collect only faces for cc to be handled
2019-08-23 12:00:17 +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
a8bccc6e41
restore the bool parameter and use ittogether with the `init_XXX_indices` helper functions.
2019-08-19 12:55:17 +02:00
Maxime Gimeno
4f0d883b27
WIP map_getter helper
2019-08-16 16:01:26 +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é
e7a71ec797
Misc cleaning
2019-08-07 15:30:59 +02:00
Mael Rouxel-Labbé
4b996c61f6
Add a range parameter to 'remove_self_intersections'
2019-08-07 15:29:16 +02:00
Mael Rouxel-Labbé
e0f3a66de6
Fix a few header includes
2019-08-07 15:27:30 +02:00
Mael Rouxel-Labbé
114ff8a967
Minor sanity improval (cosmetic chance)
2019-08-07 15:27:04 +02:00
Mael Rouxel-Labbé
de3305f4df
Add new headers to PMP.h
2019-08-06 16:53:41 +02:00
Mael Rouxel-Labbé
994be6a41c
Progress on local self intersection removal
2019-08-06 16:53:19 +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é
a1e2cba1c9
Minor comment change
2019-08-03 15:02:48 +02:00
Mael Rouxel-Labbé
814f8c67e5
Fix non-manifold vertex duplication
2019-08-03 14:52:35 +02:00
Mael Rouxel-Labbé
35cd0513cb
Put a simple check before the more expensive angle computation
2019-08-03 14:51:11 +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
Mael Rouxel-Labbé
96d1cee7a7
Refactor a bit 'self_intersections()' ahead of later use
...
(A later would be to consider that two faces intersect if they are
e.g. vertex-adjacent)
2019-07-30 13:01:10 +02:00
Mael Rouxel-Labbé
7e7abafd08
Add some code to treat self-intersections locally
2019-07-30 13:00:32 +02:00
Mael Rouxel-Labbé
68e80471b2
Revert some changes about passing a face range to remove_self_intersections
2019-07-30 11:43:29 +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é
3a89e8240e
Split large and eclectic file PMP/repair.h into smaller files
2019-07-25 09:25:54 +02:00
Mael Rouxel-Labbé
dac6c04529
Make lack of degenerate faces a precondition of self-intersection removal
...
It's just too tedious / ugly maintaining a range while removing degenerate
edges and faces.
2019-07-24 10:42:03 +02:00
Mael Rouxel-Labbé
d5eff6a663
Minor doc fix
2019-07-24 10:41:37 +02:00
Mael Rouxel-Labbé
633477b8aa
Remove useless border check (the vertex is interior)
2019-07-23 15:24:53 +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
Mael Rouxel-Labbé
0c8739a16e
Re-order convenience overloads to avoid forward declarations in upcoming code
2019-07-08 15:39:33 +02:00
Sébastien Loriot
1c89ca6344
doc update
2019-07-08 14:19:20 +02:00
Mael Rouxel-Labbé
1e9e37bd3c
Remove unused template typedef
2019-07-08 09:02:39 +02:00
Mael Rouxel-Labbé
efceadd441
Temporarily override the value of MAX_LOG_LEVEL to silence Ceres on Windows
...
When using minilog, Ceres' Cmake code sets up MAX_LOG_LEVEL, to an annoyingly
high verbosity. We mute it temporarily and restore the value afterwards
in case it's being used by some external code.
2019-07-05 15:19:24 +02:00
Maxime Gimeno
347b180610
Update split_connected_components plugin.
2019-07-04 12:05:41 +02:00
Maxime Gimeno
0989cdd390
Merge remote-tracking branch 'cgal/master' into PMP-Add_split_to_clip-GF
2019-07-04 11:23:20 +02:00
Mael Rouxel-Labbé
e61d980173
Silence Ceres when logging is based on minilog and not glog
2019-07-04 10:30:18 +02:00
Sébastien Loriot
8fde95a34c
update doc
2019-07-03 17:24:05 +02:00
Sébastien Loriot
363268c33f
handle intersecting curves reaching the boundary
2019-07-03 17:16:21 +02:00
Sébastien Loriot
9f14c410b9
fix split (only for the case of closed curves)
2019-07-03 15:50:35 +02:00
Mael Rouxel-Labbé
627f05c9b2
Add missing header
2019-07-03 12:08:30 +02:00
Mael Rouxel-Labbé
4d7192bbd0
Fix MSVC warning
2019-07-03 11:58:27 +02:00
Mael
b1eb4c8cdd
Minor documentation rewording
2019-07-02 21:15:52 +02:00
Sébastien Loriot
c89b0d4430
improve doc and add missing overload
2019-07-02 17:22:49 +02:00
Maxime Gimeno
9f28c92535
WIP
2019-07-02 13:19:20 +02:00
Maxime Gimeno
be3cf6145d
use const_types
2019-07-02 11:52:49 +02:00
Maxime Gimeno
ee715bca1a
Make the PolygonMesh const in split_cc()
2019-07-02 11:32:34 +02:00
Maxime Gimeno
3c14046997
Replace outputiterator
2019-07-02 11:25:01 +02:00
Maxime Gimeno
0684986bd6
Put the splitting part in an internal function
2019-07-02 10:57:28 +02:00
Maxime Gimeno
9f8feddf79
WIP fixed split_connected_components map management. Still failing after a split().
2019-07-02 10:18:51 +02:00
Maxime Gimeno
031bd91b8d
Remove isolated vertices
2019-07-01 16:15:44 +02:00
Maxime Gimeno
0212343669
add doc for split_ccs
2019-07-01 14:48:55 +02:00
Mael Rouxel-Labbé
ba8a7175cc
Move helper functions for duplicate_nm_vertices to internal namespace
2019-07-01 11:46:05 +02:00
Mael Rouxel-Labbé
2ad648d276
Factorize duplicate_non_manifold_vertices() and non_manifold_vertices()
2019-07-01 11:42:26 +02:00
Mael Rouxel-Labbé
be89b9f575
Add a warning about the heavy complexity of 'is_vertex_non_manifold()'
2019-07-01 11:41:59 +02:00
Mael Rouxel-Labbé
f68141a6d3
Merge branch 'PMP-Locate-GF-old' into PMP-Locate-GF
2019-07-01 11:28:25 +02:00
Mael
f40f8e4190
Merge branch 'master' into PMP-smoothing-kkatrio
2019-07-01 11:24:11 +02:00
Laurent Rineau
b18a17eba7
Merge branch 'releases/CGAL-4.14-branch'
...
# Conflicts:
# Polygon_mesh_processing/include/CGAL/Polygon_mesh_processing/internal/Corefinement/Face_graph_output_builder.h
2019-07-01 11:13:42 +02:00
Laurent Rineau
64bc06e2d9
Merge pull request #4032 from sloriot/PMP-coref_invalid_map
...
Fix copy/paste error
2019-07-01 11:07:29 +02:00
Laurent Rineau
3782c024df
Merge branch 'releases/CGAL-4.13-branch' into releases/CGAL-4.14-branch
2019-07-01 11:06:57 +02:00
Mael Rouxel-Labbé
c862d2347d
Merge branch 'PMP-Add_non_manifold_vertices_collector-GF-old' into PMP-Add_non_manifold_vertices_collector-GF
2019-07-01 11:00:33 +02:00
Maxime Gimeno
99a7a5878e
Add ecm management
2019-07-01 10:50:56 +02:00
Mael Rouxel-Labbé
b66024f3e8
Try to silence CERES on windows
2019-07-01 09:19:23 +02:00
Mael Rouxel-Labbé
b1b55a8995
Fix unused variable warnings
2019-07-01 08:45:35 +02:00
Maxime Gimeno
e999183e94
- WIP split_cc() : Ecm management
...
- WIP split() : TODO: copy_face_graph leads to infinite loop.
2019-06-27 16:07:02 +02:00
Sébastien Loriot
df9a63b2b4
update marks on removed edges
2019-06-27 08:44:46 +02:00
Mael Rouxel-Labbé
4d9aa39a90
Remove "warning" in std::cerr to avoid false positive in the testsuite
2019-06-27 08:11:13 +02:00
Mael Rouxel-Labbé
ed77935d4f
Fix unused warning
2019-06-27 08:09:18 +02:00
Maxime Gimeno
ea47ab2259
WIP split_connected_components
2019-06-26 14:22:31 +02:00
Maxime Gimeno
eb97c83261
Finished basic splitting. WIP clip_volume
2019-06-26 13:05:31 +02:00
Sébastien Loriot
4e1e7d8c16
fix wrong index
2019-06-26 10:52:48 +02:00
Maxime Gimeno
184922b578
WIP set connectivity
2019-06-25 17:26:21 +02:00
Mael Rouxel-Labbé
b365835970
Remove requirement on EdgeListGraph
2019-06-24 09:04:28 +02:00
Mael Rouxel-Labbé
6f42e4be15
Fix warning
2019-06-24 08:16:01 +02:00
Mael Rouxel-Labbé
262ef93c8d
Remove obsolete header
2019-06-21 13:09:09 +02:00
Mael Rouxel-Labbé
0d1759e996
Merge branch 'PMP-smoothing-kkatrio-old' into PMP-smoothing-kkatrio
2019-06-20 15:02:32 +02:00
Mael Rouxel-Labbé
7a5486962d
Merge branch 'PMP-Locate-GF-old' into PMP-Locate-GF
2019-06-20 14:49:25 +02:00
Laurent Rineau
17add8332e
Merge pull request #3903 from MaelRL/PMP-Generalize_keep_largest_CC-GF
...
PMP: Generalize `keep_large(st)_CCs`
2019-06-20 14:21:14 +02:00
Laurent Rineau
8535a3c03c
Merge branch 'releases/CGAL-4.14-branch'
...
# Conflicts:
# Apollonius_graph_2/include/CGAL/Apollonius_graph_2/Apollonius_graph_2_impl.h
# Convex_hull_3/include/CGAL/convex_hull_3.h
# Polygon_mesh_processing/include/CGAL/Polygon_mesh_processing/internal/Corefinement/face_graph_utils.h
# Polyhedron/demo/Polyhedron/Plugins/Mesh_3/Mesh_3_plugin_cgal_code.cpp
# Stream_support/include/CGAL/IO/Color.h
2019-06-20 14:20:37 +02:00
Laurent Rineau
b0f1f90a4d
Merge branch 'releases/CGAL-4.13-branch' into releases/CGAL-4.14-branch
2019-06-20 14:08:25 +02:00
Laurent Rineau
208f788494
Merge pull request #3893 from sloriot/PMP-coref_fix_next_prev
...
Fix the prev/next pointers after polyline removal
2019-06-20 14:01:25 +02:00
Mael Rouxel-Labbé
7b72fcbf6c
Enable passing nb_iter/time step in command line arg
...
Also nb_iterations is an unsigned int, not a std::size_t
2019-06-20 13:38:21 +02:00
Mael Rouxel-Labbé
dcef0011e4
Confirm usage of numeric differenciation in Ceres problem formulation
2019-06-20 13:31:33 +02:00
Mael Rouxel-Labbé
cad9a0aaa8
Make things work when Ceres is not available
2019-06-20 13:04:15 +02:00
Mael Rouxel-Labbé
1b53056cbd
Precise some preconditions
2019-06-20 10:38:37 +02:00
Maxime Gimeno
189ece70fd
WIP don't use ffg
2019-06-19 16:10:53 +02:00
Mael Rouxel-Labbé
e3e50d90de
Constrain edges now properly constrain the position of their extremities
2019-06-19 14:39:40 +02:00
Maxime Gimeno
1958e14728
Add a first draw of splitting in clip.h
2019-06-19 12:37:52 +02:00
Mael Rouxel-Labbé
77711e4e71
Merge branch 'PMP-smoothing-kkatrio-old' into PMP-smoothing-kkatrio
2019-06-19 11:34:48 +02:00
Mael Rouxel-Labbé
aa6a1907ba
Add some verbose if the solver fails
2019-06-19 11:29:01 +02:00
Mael Rouxel-Labbé
3a8a7c1f26
Improve the documentation
2019-06-19 11:07:32 +02:00
Mael Rouxel-Labbé
3b53ce20e3
Rename smooth/smooth_along_curvature_flow to smooth_mesh/shape
...
Also fix edge protection in the demo
2019-06-19 10:17:26 +02:00
Mael Rouxel-Labbé
22bd8a943b
Merge smooth_areas and smooth_angles, rework AABB tree, document everything
2019-06-18 16:02:42 +02:00
Maxime Gimeno
064ef07a77
WIP split()
2019-06-18 16:02:14 +02:00
Mael Rouxel-Labbé
7f6cb0411c
Merge branch 'PMP-Locate-GF-old' into PMP-Locate-GF
2019-06-18 08:20:16 +02:00
Mael Rouxel-Labbé
19de8eda04
Merge branch 'PMP-Generalize_keep_largest_CC-GF-old' into PMP-Generalize_keep_largest_CC-GF
2019-06-17 15:18:33 +02:00
Laurent Rineau
be0d07d150
Merge pull request #3979 from afabri/CGAL-null_ptr-GF
...
Replace NULL and Nullptr_t with nullptr and nullptr_t
2019-06-17 14:10:35 +02:00
Laurent Rineau
e4353afb13
Merge pull request #3861 from MaelRL/PMP-Add_stitch_boundary_cycle_singular-GF
...
PMP: Introduce `stitch_boundary_cycle`
2019-06-17 13:54:39 +02:00
Laurent Rineau
21f150dac8
Merge pull request #3932 from janetournois/PMP-add_fallback_for_hole_filling-jtournois
...
PMP : add fallback to non-Delaunay triangulations for hole filling functions
2019-06-17 13:54:34 +02:00
Laurent Rineau
96912aaa20
Merge branch 'releases/CGAL-4.14-branch'
2019-06-17 13:53:42 +02:00
Laurent Rineau
bcef288a63
Merge pull request #3925 from MaelRL/PMP-Fix_repair_PS_swapping-GF
...
PMP: Fix repair polygon soup bad swaps
2019-06-17 13:51:52 +02:00
Laurent Rineau
19e1dd8c3f
Merge pull request #3937 from sloriot/Slicer-fix_default_vpm
...
Fix default vertex point map
2019-06-17 13:51:38 +02:00
Laurent Rineau
1af9a8030e
Merge pull request #3964 from sloriot/PMP-coref_invalid_index
...
Fix invalid index
2019-06-17 13:51:36 +02:00
Laurent Rineau
fd33d13958
Merge pull request #3937 from sloriot/Slicer-fix_default_vpm
...
Fix default vertex point map
2019-06-17 13:48:12 +02:00
Mael Rouxel-Labbé
c11de87552
Manually swap boolean values instead of std::swap() or vector.swap()
...
MSVC is not happy with std::swap(), Apple is not happy with vector.swap()
2019-06-14 15:43:35 +02:00
Laurent Rineau
67e73c2324
Fix compilation errors
2019-06-13 15:52:43 +02:00
Mael Rouxel-Labbé
a6ea4bcf9f
Try to make MSVC preview happy about swapping within boolean vectors
2019-06-12 08:39:32 +02:00
Mael Rouxel-Labbé
8a272dd0b9
Fix warning
2019-06-12 08:17:51 +02:00
Mael Rouxel-Labbé
55cede0960
Remove duplicated typedefs
...
That compiled on my machine, but not on the Fedora testsuites...?
2019-06-10 10:39:34 +02:00
Mael Rouxel-Labbé
6e937b62e4
Fix isolated point removal edge case
2019-06-10 09:59:44 +02:00
Mael Rouxel-Labbé
9942669dd1
Make Delaunay flips optional
2019-06-07 16:13:49 +02:00
Mael Rouxel-Labbé
d41e400875
If we the mesh is open, we can't scale based on the volume
...
at least for now, could probably imagine some trick to still do it
2019-06-07 16:12:47 +02:00
Mael Rouxel-Labbé
1aaba3a275
Misc minor changes
2019-06-07 13:54:24 +02:00
Mael Rouxel-Labbé
2ad0e94b55
Confirmed use of _Meyer weights and Gram Schmidt move reprojection
...
through empirical testing
2019-06-07 12:37:14 +02:00
Mael
7fb3542b2d
Add missing param documentation
2019-06-07 10:35:25 +02:00
Mael Rouxel-Labbé
6c4d873338
Get rid of the explicit curvature flow smoothing scheme
...
It's just worse all the time anyway
2019-06-07 10:27:21 +02:00
Mael Rouxel-Labbé
fa7b662ed3
Clean superfluous std::cout / comments
2019-06-07 10:27:21 +02:00
Mael Rouxel-Labbé
6865dae33d
Make some of the weights in PMP/Weights.h actually use the vpmap
2019-06-07 10:27:15 +02:00
Mael Rouxel-Labbé
aa6ef78eb3
Various fixes/improvements:
...
- Fix using Delaunay flips after angle smoothing (must be after area smoothing)
- Fix parameter passing to explicit curvature flow formulation
- Use early exits
- Clarify function names
2019-06-05 15:58:24 +02:00
Mael Rouxel-Labbé
bd7fd4a91e
Clean useless code
2019-06-05 10:39:08 +02:00
Mael Rouxel-Labbé
9bc8c6dfcf
Fix smoothing with constraints
2019-06-05 09:39:05 +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é
465aacc2f1
Work towards fixing implicit formulation of curvature flow-based shape smoothing
...
Constrained and border vertices likely still broken
2019-06-04 17:06:08 +02:00
Mael Rouxel-Labbé
7d5f9447a5
Fix explicit formulation of curvature flow-based smoothing
2019-06-04 17:02:32 +02:00
Mael Rouxel-Labbé
737e94676c
Code cleaning
2019-06-03 12:22:07 +02:00
Mael Rouxel-Labbé
6e3f2c3510
Factorize smoothers and clean obsolete code
2019-05-29 15:59:50 +02:00
Sébastien Loriot
d6ea5870e5
fix copy/paste issue
2019-05-29 11:03:55 +09:00
Mael Rouxel-Labbé
a15625ceb0
Use ceres in smooth_areas() and factorize a lot of code with smooth_angles()
2019-05-28 13:06:39 +02:00
Mael Rouxel-Labbé
51fab60def
Misc minor changes
2019-05-27 14:51:18 +02:00
Mael Rouxel-Labbé
00cddd0f57
Fix AABB tree type
...
Can't use face_graph AABB tree because the mesh is modified
2019-05-27 14:49:09 +02:00
Mael Rouxel-Labbé
e264ead877
Do not assert if meeting a degenerate face
2019-05-24 13:34:58 +02:00
Mael Rouxel-Labbé
cb1d28bf85
Misc cleaning
2019-05-24 13:34:50 +02:00
Mael Rouxel-Labbé
39790a9b1c
Use a NP to decide whether to reject moves/projections based on post-move sanity
2019-05-24 13:33:53 +02:00
Mael Rouxel-Labbé
712aa7a99e
Use existing kernel/PMP implementations to evaluate angles/aspect ratios
2019-05-24 12:27:17 +02:00
Mael Rouxel-Labbé
cfbe885115
Add aspect_ratio() to measure.h
...
Needs proper testing, proper documentation(, proper name?)
2019-05-24 12:25:55 +02:00
Mael Rouxel-Labbé
dbe69b2706
Clean measure.h (cosmetic changes only)
2019-05-24 10:45:33 +02:00