Jane Tournois
e8ac9f281c
add feature detection
2021-10-27 12:24:24 +02:00
Mael Rouxel-Labbé
8166579e55
Merge branch 'PM-Fix_pmaps_reference_types-GF' into PM-Fix_pmaps_reference_types_master-GF
2021-10-11 19:58:07 +02:00
Mael Rouxel-Labbé
590ddf8015
Various fixes for pmaps:
...
- Use `value_type` when the returned type is not a reference
- Enforce `reference = value_type` if the returned type is not
a reference (to avoid `typename PM::reference r = get(m, k)`,
which will take a ref to a temporary if the `reference`
typedef is an actualy reference)
- Do not use `put_get_helper` if the property map is not a `lvalue`
**mutable** property map: the `put()` is `map[k] = v`, which
is broken if `operator[]` does not return a reference
- The concept `boost::lvalue_property_map_tag` requires `operator[](key)`,
not a reference in `get(map, key)`. You can have a readable property map
returning a reference through its `get(map, key)`, but if there is
no `operator[]`, it's just a `boost::readable_property_map_tag`
- Some const correctness to avoid copying maps with state
or heavy keys in `get(map, key)` / `put(map, key, value)`
- Base the category of a wrapping pmap on what it offers instead
of just forwarding the base property map's category
- Tried to do something like mutable lvalue pmap:
* `value_type& operator[](key&)`
* `ref get(map, const key&)`
* `put(map, const key&, const value_type&)`
and non-mutable lvalue pmap:
* `const value_type& operator[](const key&)`
* `ref get(map, const key&)`
but not everything fits properly...
2021-10-08 15:38:47 +02:00
Sébastien Loriot
8a0b290478
char* -> string
2021-10-05 17:42:25 +02:00
Sébastien Loriot
efbd86df7f
extra manual fixes
2021-10-05 17:42:21 +02:00
Jane Tournois
1e334366f7
improve example
2021-10-05 17:04:13 +02:00
Jane Tournois
276ea18313
formatting (Mael's review)
2021-10-05 11:12:49 +02:00
Sébastien Loriot
6dad5b6922
rename file
2021-10-04 11:00:40 +02:00
Sébastien Loriot
8350dea94a
char* -> std::string
2021-10-04 09:49:24 +02:00
Sébastien Loriot
47028cd184
automatically move data files in data dir + update paths
...
Done for OFF/OBJ/STL/XYZ/PWN/PLY
2021-10-04 09:42:49 +02:00
Jane Tournois
7e673974cc
add facet_distance
2021-10-01 10:30:08 +02:00
Jane Tournois
9bbd1b179a
add edge sizing field management
2021-10-01 09:23:25 +02:00
Jane Tournois
bf2b30d9ce
fix parameter name in example
2021-09-30 14:53:22 +02:00
Jane Tournois
993802046c
add mesh_edge_size
2021-09-30 14:28:57 +02:00
Jane Tournois
b3e528c901
use parameters in example
2021-09-28 15:37:15 +02:00
Jane Tournois
6357211695
deprecate smooth_mesh() and rename it angle_and_area_smoothing()
2021-09-27 17:05:14 +02:00
Jane Tournois
73b0cb5369
add make_surface_mesh to be implemented with Mesh_3
2021-09-27 11:01:18 +02:00
Jane Tournois
9621e79d20
change input
...
(elephant is not in the data folder)
2021-09-14 13:09:38 +02:00
Jane Tournois
ff0425db2e
add minimal example and fix compilation
2021-09-13 10:56:30 +02:00
Sebastien Loriot
1bd8e07743
Merge pull request #5851 from maxGimeno/PMP-Add_a_visitor_to_orient_polygon_soup-maxGimeno
...
PMP: Add a visitor to the orientation function
2021-08-30 10:45:41 +02:00
Sébastien Loriot
cc3db6bf60
rename variable
2021-08-09 10:43:08 +02:00
Sébastien Loriot
b539d4a301
extend the visitor to report non-manifold vertex in an umbrella without nm edge
2021-08-05 18:13:35 +02:00
Sébastien Loriot
bc1fe892d8
remove const&
2021-08-02 10:40:12 +02:00
Sébastien Loriot
d2a3f35d03
replace point -> vertex
2021-08-02 10:05:59 +02:00
Sebastien Loriot
a16105d548
fix phrasing
...
Co-authored-by: Mael <mael.rouxel.labbe@geometryfactory.com>
2021-08-02 09:58:54 +02:00
Maxime Gimeno
c99fdebafe
add a non_manifold_vertex() function to the visitor
2021-07-30 12:17:06 +02:00
Maxime Gimeno
e52775f943
Documentation
2021-07-29 11:32:35 +02:00
Maxime Gimeno
2e3ebb1916
Add a visitor to the example
2021-07-29 10:13:05 +02:00
Dmitry Anisimov
d37eb48ade
using new OFF reader from IO
2021-06-18 14:59:26 +02:00
Dmitry Anisimov
aaf55dbaa0
Merge remote-tracking branch 'maxGimeno/PMP-compare_faces_from_meshes-maxGimeno' into gsoc2019-PMPHDist-martinskrodzki
2021-06-18 14:45:24 +02:00
Dmitry Anisimov
859bae9036
sebastien review
2021-06-18 14:44:09 +02:00
Maxime Gimeno
553445a771
Changes after review 1
2021-05-26 11:16:09 +02:00
Maxime Gimeno
acd6bb3c57
Fix namespace and remove unused typedef
2021-05-20 09:00:29 +02:00
Maxime Gimeno
797c5ad08b
Merge remote-tracking branch 'cgal/master' into PMP-compare_faces_from_meshes-maxGimeno
2021-05-20 08:58:24 +02:00
Dmitry Anisimov
c4e23b5ced
tested with different concurrency tags, cleanup, added empty test for the new function
2021-05-05 15:29:48 +02:00
Dmitry Anisimov
3c0fc281e8
more optimizations, using boost any and factoring out kd tree, adding metis check
2021-05-05 13:17:23 +02:00
Sébastien Loriot
fb6f703b55
IO namespace for files in IO directories
2021-05-04 14:36:06 +02:00
Dmitry Anisimov
5fe5bb049c
Update Polygon_mesh_processing/examples/Polygon_mesh_processing/hausdorff_bounded_error_distance_example.cpp
...
Co-authored-by: Sebastien Loriot <sebastien.loriot@cgal.org>
2021-04-30 09:27:21 +02:00
Dmitry Anisimov
7fd291c588
added input-dependent infinity value + assertions
2021-04-29 17:43:00 +02:00
Sébastien Loriot
d4e7879464
make the code work with different input mesh types
2021-04-29 15:45:06 +02:00
Sébastien Loriot
93855b1af1
Merge PMP-compare_faces_from_meshes-maxGimeno into gsoc2019-PMPHDist-martinskrodzki
2021-04-29 10:36:22 +02:00
Sébastien Loriot
b4787adc19
allow difference mesh types
2021-04-29 10:35:26 +02:00
Laurent Rineau
c091c7f86e
Merge pull request #5532 from lrineau/Kernel_23-Do_interesect__without_division-GF
...
Remove operator/ from CGAL::Mpzf and implement Do_intersect_3 with RT only (without division)
2021-04-28 15:24:15 +02:00
Dmitry Anisimov
a2f460c9d6
Merge branch 'master' into gsoc2019-PMPHDist-martinskrodzki
2021-04-27 18:37:32 +02:00
Dmitry Anisimov
95ab1a57a0
tests moved to the test folder
2021-04-27 11:22:55 +02:00
Dmitry Anisimov
d5e1c1fdd9
shorter bunny test
2021-04-26 15:38:06 +02:00
Dmitry Anisimov
4cf4e2c50a
return a pair of realizing triangles, still to be discussed
2021-04-26 15:21:58 +02:00
Dmitry Anisimov
69c48308cc
added test for realizing triangles, updated how the bounds are stored, removed useless types
2021-04-26 13:04:59 +02:00
Dmitry Anisimov
f92e24f9c2
now we can return realizing triangles
2021-04-23 16:01:32 +02:00
Dmitry Anisimov
1b892e0558
subdivision tested - it works
2021-04-23 15:41:57 +02:00
Dmitry Anisimov
6bf1966012
partially fixed issue for match faces + added minimum example for that issue
2021-04-23 14:37:58 +02:00
Dmitry Anisimov
33d2f1073a
optimized AABB tree calls
2021-04-21 11:48:56 +02:00
Dmitry Anisimov
4ebbaba856
added bunny benchmarks versus original paper
2021-04-19 14:00:03 +02:00
Maxime Gimeno
c49152359c
update max version of cmake and announce the new minimal in CHANGE.md
2021-04-15 15:08:54 +02:00
Dmitry Anisimov
50fc1cabd9
faster queries for close meshes, now traversal traits initial bounds depend on error_bound
2021-04-09 18:19:54 +02:00
Dmitry Anisimov
63db510aef
epeck support, fixed bug with infinity value
2021-04-09 16:03:55 +02:00
Dmitry Anisimov
dc9e958503
removed some asserts and types, added const, make it compile with epeck, but epeck gives wrong results
2021-04-09 12:35:18 +02:00
Dmitry Anisimov
410b03bc1f
added z-shaped test
2021-04-09 10:46:01 +02:00
Dmitry Anisimov
a255f692dc
matching faces finished, still needs several more tests
2021-04-08 17:07:13 +02:00
Dmitry Anisimov
0333778b96
added face matching, not finished
2021-04-08 16:22:32 +02:00
Dmitry Anisimov
3b7931dcd9
added timings test
2021-04-08 15:50:49 +02:00
Dmitry Anisimov
dfd2e15066
Merge remote-tracking branch 'maxGimeno/PMP-compare_faces_from_meshes-maxGimeno' into gsoc2019-PMPHDist-martinskrodzki
2021-04-07 13:54:02 +02:00
Dmitry Anisimov
841ad3b8b1
fixed bug introduced in 2d4c254
2021-04-07 13:53:10 +02:00
Dmitry Anisimov
4033bc14f3
added new tests with test data
2021-04-07 12:52:08 +02:00
Dmitry Anisimov
f8f37393f3
fixed warnings
2021-04-07 12:44:17 +02:00
Laurent Rineau
58ddf16295
Merge pull request #5507 from afabri/PMP-vtune_isotropic_remeshing-GF
...
PMP: Accelerate isotropic remeshing
2021-04-06 15:13:11 +02:00
Andreas Fabri
ab75cbea46
Add data set that shows the performance gain when running self_intersections_example.cpp (4.6 sec master, 0.6 sec this PR when run sequentially
2021-04-01 18:42:05 +01:00
Maxime Gimeno
34e2180b22
rename match_faces
2021-04-01 13:50:41 +02:00
Maxime Gimeno
ca5867f172
Changes after review
2021-03-25 13:27:16 +01:00
Maxime Gimeno
9e6eaa504a
Orientation requirements always on, as it won't work without it on non triangle meshes
2021-03-23 13:43:49 +01:00
Maxime Gimeno
dd90a3ce84
OutputIterators
2021-03-23 10:17:39 +01:00
Maxime Gimeno
7d4a661671
Overloads, plugin and data sets
2021-03-22 14:59:01 +01:00
Maxime Gimeno
67aaf04a0a
doc + example + tests
2021-03-22 14:02:18 +01:00
Andreas Fabri
29a40dc40b
Remove the timer and the output of the result
2021-03-19 15:47:12 +01:00
Sébastien Loriot
ac15312260
add Ceres support cmake file
2021-03-18 14:47:56 +01:00
Maxime Gimeno
96a88df41b
Working example.
2021-03-16 16:00:10 +01:00
Maxime Gimeno
0675a0d55e
WIP
2021-03-12 17:00:44 +01:00
Laurent Rineau
b2ed4e5f7e
Merge pull request #5423 from afabri/PMP-corefine_OM-GF
...
PMP:: Use operator< instead of operator> as OM only implements the former
Conflicts:
Polygon_mesh_processing/examples/Polygon_mesh_processing/corefinement_consecutive_bool_op.cpp
Polygon_mesh_processing/include/CGAL/Polygon_mesh_processing/internal/Corefinement/intersection_impl.h
2021-03-10 11:33:30 +01:00
Andreas Fabri
b1c2dd8db6
WIP: early exit in the static filter
2021-03-07 18:25:18 +00:00
Sébastien Loriot
6390fef896
rename example
2021-02-23 14:01:30 +01:00
Sébastien Loriot
61ce29600a
move data and split example
2021-02-23 13:57:38 +01:00
Sébastien Loriot
20661527bd
Merge branch 'martinskrodzki/gsoc2019-PMPHDist-martinskrodzki' into master
2021-02-19 10:58:11 +01:00
Sébastien Loriot
0e025bddd9
add initial version of coplanar decimation
2021-02-15 09:32:45 +01:00
Sébastien Loriot
29379aec95
use EPECK
2021-02-03 14:09:33 +01:00
Sébastien Loriot
bdbc4a3ca0
remove unused typedef
2021-02-03 14:09:22 +01:00
Andreas Fabri
3f05cf3139
Add the example
2021-02-03 11:08:56 +00:00
Andreas Fabri
cd70b9b172
Use operator< instead of operator> as OM only implements the former
2021-02-03 10:46:28 +00:00
Sébastien Loriot
8f0b2bb446
add an example do the union of a set of meshes in parallel
2021-01-29 09:47:10 +01:00
Laurent Rineau
f176529041
Merge pull request #5357 from sloriot/CGAL-boost_function_output-master
...
Include non-deprecated header (master)
2021-01-21 16:22:39 +01:00
Laurent Rineau
52bb68c012
Merge pull request #5356 from sloriot/CGAL-boost_function_output-5.2
...
Include non-deprecated header (5.2)
2021-01-21 16:18:55 +01:00
Sébastien Loriot
bc161f2ae9
Merge 'CGAL-Eigen3_support-5.2'
2021-01-15 10:59:20 +01:00
Sébastien Loriot
f4935dc199
Merge branch 'CGAL-Eigen3_support-5.1'
2021-01-15 10:54:02 +01:00
Sébastien Loriot
eecb00534e
fix macro name to be consistent with find_package
2021-01-15 10:43:34 +01:00
Sébastien Loriot
ad911271a9
Merge commit '6594e7549bd70923990d86c31e2aa267a79bb629' into HEAD
2021-01-15 10:12:17 +01:00
Sébastien Loriot
bdd4efe3b3
Merge commit 'efc0c525e8b' into HEAD
2021-01-15 10:06:56 +01:00
Sébastien Loriot
efc0c525e8
include non-deprecated header
2021-01-15 10:02:00 +01:00
Maxime Gimeno
cf19fb2df9
Fixes
2021-01-08 09:35:35 +01:00
Maxime Gimeno
3d1c41fd14
Merge remote-tracking branch 'cgal/master' into CGAL_IO-maxGimeno
2021-01-07 15:05:28 +01:00
Laurent Rineau
85325d789f
Merge pull request #5090 from afabri/FastEnvelope-GF
...
Polygon Mesh Processing: Add envelope test
2021-01-06 16:11:56 +01:00
Sébastien Loriot
a095b674e7
change extension to the one recognized by the demo
2020-12-09 14:20:07 +01:00
Sébastien Loriot
3b8d8ecfde
update input
2020-12-07 16:22:26 +01:00
Sébastien Loriot
0edbd98898
update example + add it in the user manual
2020-12-03 14:36:43 +01:00
Sébastien Loriot
bac1b56e00
test move constructor
2020-12-03 10:24:36 +01:00
Andreas Fabri
3253d61876
Add a 'done' before returning
2020-12-03 08:07:15 +00:00
Andreas Fabri
6046432534
Add a mesh in envelope test
2020-12-03 07:58:33 +00:00
Sébastien Loriot
87f0b49b11
remove extra template parameter
2020-12-01 18:17:03 +01:00
Andreas Fabri
9ec3cf56fb
Add example with polygon soup
2020-11-30 07:43:24 +00:00
Maxime Gimeno
3b70343590
Merge remote-tracking branch 'cgal/master' into CGAL_IO-maxGimeno
2020-11-16 16:19:43 +01:00
Andreas Fabri
f246c4abf8
merge
2020-11-13 16:26:57 +00:00
Andreas Fabri
c510a89ea0
Improve doc
2020-11-10 09:59:01 +00:00
Andreas Fabri
56b461b2d4
Do not triangulate the prisms
2020-10-22 13:07:28 +01:00
Andreas Fabri
d1a5e6c13b
Add a figure
2020-10-22 13:00:01 +01:00
Maxime Gimeno
bebd60c12b
Merge remote-tracking branch 'cgal/master' into Cmake_improvements-maxGimeno
2020-10-20 09:53:54 +02:00
Sébastien Loriot
87b8f66e14
update from master
2020-10-20 09:19:13 +02:00
Andreas Fabri
89c9ed68b6
change namespace and add doc
2020-10-20 09:17:16 +02:00
Mael Rouxel-Labbé
f55ef7dd50
Merge remote-tracking branch 'cgal/master' into CGAL_IO-maxGimeno
2020-10-09 18:36:17 +02:00
Laurent Rineau
d075ef4fb3
Merge pull request #4712 from MaelRL/PMP-Clip_with_self_intersections-GF
...
PMP: Generalize some corefinement code
2020-10-09 17:10:50 +02:00
Mael Rouxel-Labbé
46630bdaad
Merge remote-tracking branch 'cgal/master' into PMP-Clip_with_self_intersections-GF
2020-09-22 11:25:01 +02:00
Jane Tournois
4745308384
use graph_visitor instead of creating new triangulate_visitor
2020-09-15 14:38:29 +02:00
Jane Tournois
39e75e7530
rename split_visitor to triangulate_visitor and add PMPTriangulateFaceVisitor
2020-09-10 12:06:10 +02:00
Jane Tournois
626ba2745c
replace done() by end() to be consistent with start()
2020-09-08 21:42:00 +02:00
Jane Tournois
268c0eabee
replace operator() with more explicit visit() function
2020-09-08 19:03:34 +02:00
Jane Tournois
7f154f5c41
remove trailing whitespaces
2020-09-08 18:45:47 +02:00
Andreas Fabri
903fff4751
Restore example and add one for the visitor
...
# Conflicts:
# Polygon_mesh_processing/examples/Polygon_mesh_processing/triangulate_faces_example.cpp
2020-09-08 15:18:19 +02:00
Andreas Fabri
f2ff13d6c4
Add a visitor that allows to map each triangle to its original face
...
# Conflicts:
# BGL/include/CGAL/boost/graph/named_params_helper.h
# Polygon_mesh_processing/examples/Polygon_mesh_processing/triangulate_faces_example.cpp
# Polygon_mesh_processing/include/CGAL/Polygon_mesh_processing/triangulate_faces.h
2020-09-08 15:17:18 +02:00
Mael Rouxel-Labbé
8682f9bafb
Merge remote-tracking branch 'cgal/master' into CGAL_IO-maxGimeno
2020-08-24 11:45:17 +02:00
Mael Rouxel-Labbé
1c53aea4e2
Add missing 'const' qualifiers
2020-08-06 08:50:41 +02:00
Mael Rouxel-Labbé
2375fed008
Enhance example to use custom traits (and test array-based PS_to_PM/repair_PS)
2020-08-05 10:49:54 +02:00
Maxime Gimeno
9c15f2c9dc
Use FeatureSummary in the demo, and remove CGAL_FOUND
2020-08-04 12:46:17 +02:00
Mael
6553b0dfaa
Remove deleted example from CMakeLists.txt
2020-07-16 09:27:55 +02:00
Mael
bbedb5e8b4
Fix name of property maps
2020-07-13 10:19:06 +02:00
Mael Rouxel-Labbé
7e2e9d849a
Remove experimental code related to clipping self-intersecting meshes
...
See functionality added in https://github.com/CGAL/cgal/pull/4790 instead.
Keeping it in a commit instead of filtering the branch to keep the code
in history.
2020-07-03 15:02:00 +02:00
Mael Rouxel-Labbé
3280b9b087
Use new IO functions
2020-06-26 17:06:42 +02:00
Mael Rouxel-Labbé
9cca59ba36
Actually use the new IO functions + some example improvements
2020-06-23 18:24:39 +02:00
Maxime Gimeno
ea53a8d70d
Merge remote-tracking branch 'cgal/master' into CGAL_IO-maxGimeno
2020-06-17 14:25:21 +02:00
Maxime Gimeno
25c8313859
Replace IO functions in examples and fix Surface_mesh read_OFF()
2020-06-16 14:36:24 +02:00
Maxime Gimeno
7de5f28310
Fix pmp example about eigen
2020-06-12 09:41:02 +02:00
Mael Rouxel-Labbé
e7fd86c2ef
Add example of clipping w/ SI
2020-06-12 09:16:41 +02:00
Simon Giraudot
89285f1feb
Merge remote-tracking branch 'mine/CMake-Third_party_imported_targets-GF' into CMake-Third_party_imported_targets-GF
2020-05-28 08:53:17 +02:00
Mael Rouxel-Labbé
fb8463f470
Merge remote-tracking branch 'cgal/master' into CGAL_IO-maxGimeno
2020-05-22 15:17:56 +02:00
Maxime Gimeno
20898e4b31
fix functions calls
2020-05-14 13:46:57 +02:00
Sébastien Loriot
7c4586be1b
Merge remote-tracking branch 'cgal/releases/CGAL-5.0-branch'
2020-05-12 16:59:02 +02:00
Sébastien Loriot
fb83386f44
Merge remote-tracking branch 'cgal/releases/CGAL-4.14-branch'
2020-05-12 16:58:32 +02:00
Maxime Gimeno
098cc6abde
Fix a PMP example
2020-05-06 11:31:13 +02:00
Sébastien Loriot
0c85cbfcf4
simplify example
2020-05-05 12:16:14 +02:00
Maxime Gimeno
049439fa6b
Merge remote-tracking branch 'cgal/master' into CGAL_IO-maxGimeno
2020-04-30 16:47:58 +02:00
Simon Giraudot
1dd6a665a1
Merge remote-tracking branch 'mine/CMake-Third_party_imported_targets-GF' into CMake-Third_party_imported_targets-GF
2020-04-20 09:09:32 +02:00
Simon Giraudot
421096fd7f
Use imported targets everywhere
2020-04-15 14:06:13 +02:00
Mael Rouxel-Labbé
c16c1a7ea3
Merge remote-tracking branch 'cgal/master' into CGAL-Optimal_bounding_box-GF
2020-04-10 16:10:11 +02:00
Sébastien Loriot
34299f037c
Merge pull request #4140 from MaelRL/PMP-Make_remove_self_intersections_local-GF
...
PMP: Self-intersection local removal
2020-04-02 13:55:49 +02:00