Commit Graph

301 Commits

Author SHA1 Message Date
Laurent Rineau 3df4df43fc Merge pull request #5639 from maxGimeno/PMP-Example_of_new_mp_function-maxGimeno
Global clean-up of Named Parameters
2022-01-17 15:34:45 +01:00
Sébastien Loriot c5f78e6a9e fix warning 2022-01-13 10:16:47 +01:00
Sébastien Loriot c169c41240 Merge remote-tracking branch 'maxGimeno/PMP-Example_of_new_mp_function-maxGimeno' into HEAD 2022-01-12 13:33:49 +01:00
Sébastien Loriot 75b03e6c0a use_default_values() -> default_values() 2022-01-10 18:36:37 +01:00
Sébastien Loriot 6d3176e061 move Named_parameters class in STL_extension
helpers stay in BGL because it depends on BGL tags
2022-01-07 15:12:22 +01:00
Sébastien Loriot b04a5f9124 remove overloads with default parameters 2022-01-04 16:14:49 +01:00
Sebastien Loriot bd6408a772
Apply suggestions from code review
Co-authored-by: Mael <mael.rouxel.labbe@geometryfactory.com>
2021-12-17 10:17:13 +01:00
Sébastien Loriot b9e2dc625a add relaxed order as parameter 2021-11-30 17:49:58 +01:00
Sébastien Loriot c61fdb831b remove the handle
it is not needed as the id map is used to store handles
2021-11-30 13:49:39 +01:00
Sébastien Loriot 9543deb304 Merge pull request #6046 from MaelRL/PM-Fix_pmaps_reference_types_master-GF
Various fixes for property maps (master)
2021-10-29 17:40:15 +02:00
Laurent Rineau 393abddc64 Merge pull request #6042 from sloriot/SMS-expensive_macros
Hide expensive assertions behind _expensive_ macros
2021-10-29 16:46:48 +02:00
Laurent Rineau 40771841ca Merge pull request #6074 from sloriot/SMS-GH_deg_faces
Workaround degenerate faces
2021-10-29 16:46:30 +02:00
Sébastien Loriot 72b8f75f48 workaround degenerate faces 2021-10-21 11:21:04 +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
Sébastien Loriot 75e6e4500f hide expensive assertions behind _expensive_ macros 2021-10-11 11:57:24 +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
Dmitry Anisimov bd600286ee surface mesh simplification range loop analysis copy to ref warning fixed 2021-01-08 10:20:34 +01:00
Andreas Fabri 8ae9070e5d Fix warnings 2020-12-30 09:06:19 +00:00
Andreas Fabri ac1200fe28 Cleanup of GetFilter 2020-11-10 10:52:53 +00:00
Andreas Fabri 041502a60c Move Envelope_filter to PMP 2020-11-05 08:43:33 +00:00
Andreas Fabri e1c1e1fbb6 capitalize file name in the #include (VC++ did not care) 2020-11-04 11:28:02 +00:00
Andreas Fabri 5ff48521d1 Use TLS; Fix SMS example 2020-11-04 09:53:38 +00: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
Andreas Fabri a9b78f97a5 Add the test of SMS using the Envelope 2020-10-20 09:17:16 +02:00
Andreas Fabri deeff23907 Rename header file 2020-10-20 09:17:14 +02:00
Andreas Fabri e957de2993 Make the filter a named parameter 2020-10-20 09:17:09 +02:00
Jane Tournois bfd4e9915f rename named parameter graph_visitor to visitor 2020-09-15 15:42:24 +02:00
Andreas Fabri f31b7fe4e1 SMS: Use FastEnvelope to bound the error 2020-09-09 17:02:03 +01:00
Sébastien Loriot d6d8fbeb8b the placement must store the triangles has the AABB-tree does not copy them 2020-04-27 16:06:43 +02:00
Sébastien Loriot 3e75af4fcd remove useless calls to accelerate_distance_queries 2020-04-23 17:00:12 +02:00
Mael Rouxel-Labbé 618a72b739 Merge remote-tracking branch 'cgal/master' into PMP-soup_to_mesh_add_vpm 2020-03-17 20:00:31 +01:00
Mael Rouxel-Labbé ad62f89a20 Use the new index map initializer functions and fix doc 2020-03-06 15:25:38 +01:00
Mael Rouxel-Labbé 26463ded7a Update NPs using default constructed default values to new API
+ misc cleaning
2020-02-28 11:55:17 +01:00
Mael Rouxel-Labbé 80f1583fa8 Minor doc improvements 2020-01-28 12:45:29 +01:00
Mael Rouxel-Labbé 46e7a8f930 Make it optional to pass the AABB tree 2020-01-28 12:45:29 +01:00
Mael Rouxel-Labbé 5ab92fef26 Keep the squared value in memory instead of recomputing it on every call 2020-01-28 12:45:29 +01:00
Mael Rouxel-Labbé d556bcc5d6 Fix compilation / test 2020-01-28 12:45:29 +01:00
Mael Rouxel-Labbé 32e78834eb Clean header 2020-01-28 12:45:29 +01:00
Sébastien Loriot fd43d44fa5 do an initial try with the closest point since do_intersect is with a sphere and not a ball 2020-01-28 12:45:29 +01:00
Maxime Gimeno a17c5b1eb2 Update 2020-01-28 12:45:29 +01:00
Maxime Gimeno 5907ec9a18 Add Policy for bounded distance placement 2020-01-28 12:45:29 +01:00
Maxime Gimeno 4351ecfb5e Add test for bench 2020-01-28 12:45:29 +01:00
Mael Rouxel-Labbé 9a7c98f26c Minor code fixes 2019-11-29 11:42:18 +01:00
Mael Rouxel-Labbé 6cbb0d0712 Make the VertexCostMap a member of the policy
If the dynamic property map isn't attached to the mesh, this could not
work previously.
2019-11-29 09:30:54 +01:00
Mael Rouxel-Labbé 55bb46a383 Use DontAlign property for garland heckbert matrices
See discussion in: https://github.com/CGAL/cgal/pull/4279

Initial warning: https://cgal.geometryfactory.com/CGAL/testsuite/results-5.1-Ic-11.shtml#Surface_mesh_simplification_Examples
2019-11-29 09:29:48 +01:00
Mael Rouxel-Labbé 5057df5cb7 Properly forward a parameter 2019-11-20 09:09:05 +01:00
Mael Rouxel-Labbé 0813fd740b Move partial specializations outside of the Edge_collapse.h class 2019-11-19 11:04:14 +01:00
Mael Rouxel-Labbé ddf9be579b Fix conversion warnings 2019-11-15 11:44:04 +01:00
Mael Rouxel-Labbé a0db18b0bb Fix code typo 2019-11-15 11:43:49 +01:00