Commit Graph

88 Commits

Author SHA1 Message Date
Sébastien Loriot e2a24f8ca3 replace overloads with default parameters (BGL) 2022-01-05 11:04:25 +01:00
Sébastien Loriot 8e6be46010 move definition of the default np 2022-01-03 16:31:09 +01:00
Maxime Gimeno 5e2f1236a7 Add a new default parameter named use_default_values() 2022-01-03 16:31:01 +01:00
Sébastien Loriot 4eb1464aed fix Identity_map mutability and fix CGAL code using it 2021-11-09 11:37:24 +01: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
Laurent Rineau c70da09776 Merge pull request #5049 from sloriot/PMP-corefine_non_manifold
corefine with non manifold edges
2021-02-18 15:26:56 +01:00
Maxime Gimeno cca6d7fa88 add missing using 2021-02-08 09:06:57 +01:00
Maxime Gimeno 2dac31f36f Clean-up and fix doc 2021-02-05 14:14:11 +01:00
Maxime Gimeno 7bf9c14f72 Factorization 2021-01-28 10:01:52 +01:00
Sébastien Loriot 71ae816bfa Merge remote-tracking branch 'cgal/master' into PMP-corefine_non_manifold 2021-01-27 13:46:09 +01:00
Sébastien Loriot 7bcbf8fb7d update from master
merge branch into master
2020-10-30 14:04:44 +01:00
Mael Rouxel-Labbé f55ef7dd50 Merge remote-tracking branch 'cgal/master' into CGAL_IO-maxGimeno 2020-10-09 18:36:17 +02:00
Sebastien Loriot 47d2189f8e
Merge pull request #3268 from afabri/PMP-visitor-GF
PMP::triangulate_faces() Add a visitor that allows to map each triangle to its original face
2020-10-02 15:26:05 +02:00
Sébastien Loriot 68124448dc Merge branch 'PMP-corefine_non_manifold' into master 2020-09-30 13:59:30 +02:00
Jane Tournois be7d9d1728 doc fixes 2020-09-10 14:31:48 +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 5490227707 fix compilation after rebase 2020-09-08 18:45:30 +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
Sébastien Loriot b29a31ae27 remove boost header as nothing from the original file remains 2020-08-18 10:06:22 +02:00
Mael Rouxel-Labbé a14d2df1d9 Move 'GetK' from ::CGAL::PMP:: to ::CGAL:: 2020-05-27 09:25:03 +02:00
Simon Giraudot fefdd13f45 Merge remote-tracking branch 'mine/PSP-Cluster_points-GF' into PSP-Cluster_points-GF 2020-05-06 08:59:40 +02:00
Simon Giraudot 60cb33fa31 Merge remote-tracking branch 'mine/PSP-Cluster_points-GF' into PSP-Cluster_points-GF 2020-04-16 17:02:19 +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
Simon Giraudot 3350f9d05e Fix warnings 2020-03-30 08:10:23 +02:00
Sébastien Loriot 9f2eafd06e extra run of the script to remove tabs and trailing whitespaces 2020-03-26 19:17:02 +01:00
Sébastien Loriot 47027d6f5b extra run of the script to remove tabs and trailing whitespaces 2020-03-26 18:59:19 +01:00
Simon Giraudot 522a8b2e49 Fix implementation getter 2020-03-25 16:17:01 +01:00
Mael Rouxel-Labbé 9cfe453995 Tiny indentation fix 2020-03-24 10:25:16 +01:00
Simon Giraudot d303a1cd2b Fix mismatch class/struct declaration 2020-03-24 10:06:54 +01:00
Mael 855003baa1
Merge branch 'master' into BGL-Alpha_expansion_graphcut-GF 2020-03-24 08:18:23 +01: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
Simon Giraudot 7cba1cc1aa Document cluster_point_set() 2020-03-17 12:04:44 +01:00
Simon Giraudot 74070d3356 First version of clustering algorithm 2020-03-17 12:04:44 +01:00
Mael Rouxel-Labbé 2cb71708af Use proper index type in automatically-initialized index maps 2020-03-16 09:59:52 +01:00
Mael Rouxel-Labbé e4ff489623 Get rid of GetVertex/FaceIndexMap
GetInitialized... should be used instead.

Complete removal instead of simply doing:
  struct GetVertexIndexMap
    : public GetInitializedVertexIndexMap
  { }

because there will anyway be a need to update code on the right side of
  GetVertexIndexMap fim = ...

and it's more obvious if it breaks on the type directly.
2020-03-09 10:41:04 +01:00
Mael Rouxel-Labbé ec30ebb709 Move getter structs and global functions to appropriate BGL file 2020-03-09 10:18:19 +01:00
Mael Rouxel-Labbé 432d5c724a Improve usages of get_initialized_xxx_index_map 2020-03-04 13:37:09 +01:00
Mael Rouxel-Labbé d6bbf2bb5f Fix implementation of initialized index map getters 2020-03-04 11:56:50 +01:00
Mael Rouxel-Labbé e94da7c669 Remove trailing whitespace 2020-03-02 14:00:11 +01:00
Maxime Gimeno 79c390eb6d fix warning 2020-02-26 16:17:17 +01:00
Maxime Gimeno 9a454ca7e2 Changes after review 2020-02-21 11:43:08 +01:00
Mael Rouxel-Labbé bcd4f9600f Make GetPointMap work with only a PointRange template 2020-02-20 11:11:51 +01:00
Mael Rouxel-Labbé 3a968a3433 Move GetPointMap to CGAL:: namespace (from CGAL::PSP_3)
Since it'll also be used in PMP
2020-02-19 17:47:43 +01:00
Maxime Gimeno c999ce144f Add the missing spe for Seam_mesh and dynamic_property_map 2020-02-19 10:07:53 +01:00
Maxime Gimeno 928f2bd2bb Remove unused typedef 2020-02-19 09:16:55 +01:00
Maxime Gimeno 7ec84ae69c replace the functor by overloads of a free function 2020-02-18 14:42:53 +01:00
Maxime Gimeno 7d11c830e4 add some typedefs to get_ndi_map 2020-02-18 11:38:08 +01:00