From c1f27fb0c5d82c8f3f2c5e4a4ec09dace93d772e Mon Sep 17 00:00:00 2001 From: Dmitry Anisimov Date: Mon, 12 Apr 2021 15:27:55 +0200 Subject: [PATCH] relaxed constraints on property maps --- .../Region_growing_on_point_set/K_neighbor_query.h | 2 +- .../Least_squares_line_fit_region.h | 4 ++-- .../Least_squares_line_fit_sorting.h | 2 +- .../Least_squares_plane_fit_region.h | 4 ++-- .../Least_squares_plane_fit_sorting.h | 2 +- .../Sphere_neighbor_query.h | 2 +- .../Least_squares_plane_fit_region.h | 2 +- .../Least_squares_plane_fit_sorting.h | 2 +- .../Region_growing_on_polygon_mesh/Polyline_graph.h | 2 +- .../Least_squares_line_fit_region.h | 2 +- .../Least_squares_line_fit_sorting.h | 2 +- .../Least_squares_line_fit_region.h | 2 +- .../Least_squares_line_fit_sorting.h | 2 +- Shape_detection/todo.md | 13 ++++++------- 14 files changed, 21 insertions(+), 22 deletions(-) diff --git a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_point_set/K_neighbor_query.h b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_point_set/K_neighbor_query.h index ef0ff8c4785..f738b0cbe01 100644 --- a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_point_set/K_neighbor_query.h +++ b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_point_set/K_neighbor_query.h @@ -45,7 +45,7 @@ namespace Point_set { a model of `ConstRange` whose iterator type is `RandomAccessIterator` \tparam PointMap - a model of `LValuePropertyMap` whose key type is the value type of the input + a model of `ReadablePropertyMap` whose key type is the value type of the input range and value type is `Kernel::Point_2` or `Kernel::Point_3` \cgalModels `NeighborQuery` diff --git a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_point_set/Least_squares_line_fit_region.h b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_point_set/Least_squares_line_fit_region.h index 84e512205d4..d3ff119a00b 100644 --- a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_point_set/Least_squares_line_fit_region.h +++ b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_point_set/Least_squares_line_fit_region.h @@ -41,11 +41,11 @@ namespace Point_set { a model of `ConstRange` whose iterator type is `RandomAccessIterator` \tparam PointMap - a model of `LValuePropertyMap` whose key type is the value type of the input + a model of `ReadablePropertyMap` whose key type is the value type of the input range and value type is `Kernel::Point_2` \tparam NormalMap - a model of `LValuePropertyMap` whose key type is the value type of the input + a model of `ReadablePropertyMap` whose key type is the value type of the input range and value type is `Kernel::Vector_2` \cgalModels `RegionType` diff --git a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_point_set/Least_squares_line_fit_sorting.h b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_point_set/Least_squares_line_fit_sorting.h index 1434f202aa1..fd9959e8236 100644 --- a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_point_set/Least_squares_line_fit_sorting.h +++ b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_point_set/Least_squares_line_fit_sorting.h @@ -41,7 +41,7 @@ namespace Point_set { a model of `NeighborQuery` \tparam PointMap - a model of `LValuePropertyMap` whose key type is the value type of the input + a model of `ReadablePropertyMap` whose key type is the value type of the input range and value type is `Kernel::Point_2` */ template< diff --git a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_point_set/Least_squares_plane_fit_region.h b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_point_set/Least_squares_plane_fit_region.h index 7af73a30558..ae01d581822 100644 --- a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_point_set/Least_squares_plane_fit_region.h +++ b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_point_set/Least_squares_plane_fit_region.h @@ -41,11 +41,11 @@ namespace Point_set { a model of `ConstRange` whose iterator type is `RandomAccessIterator` \tparam PointMap - a model of `LValuePropertyMap` whose key type is the value type of the input + a model of `ReadablePropertyMap` whose key type is the value type of the input range and value type is `Kernel::Point_3` \tparam NormalMap - a model of `LValuePropertyMap` whose key type is the value type of the input + a model of `ReadablePropertyMap` whose key type is the value type of the input range and value type is `Kernel::Vector_3` \cgalModels `RegionType` diff --git a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_point_set/Least_squares_plane_fit_sorting.h b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_point_set/Least_squares_plane_fit_sorting.h index 1407d2f41eb..a3e116a7e49 100644 --- a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_point_set/Least_squares_plane_fit_sorting.h +++ b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_point_set/Least_squares_plane_fit_sorting.h @@ -41,7 +41,7 @@ namespace Point_set { a model of `NeighborQuery` \tparam PointMap - a model of `LValuePropertyMap` whose key type is the value type of the input + a model of `ReadablePropertyMap` whose key type is the value type of the input range and value type is `Kernel::Point_3` */ template< diff --git a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_point_set/Sphere_neighbor_query.h b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_point_set/Sphere_neighbor_query.h index 435bcf841b9..0a779731a28 100644 --- a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_point_set/Sphere_neighbor_query.h +++ b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_point_set/Sphere_neighbor_query.h @@ -46,7 +46,7 @@ namespace Point_set { a model of `ConstRange` whose iterator type is `RandomAccessIterator` \tparam PointMap - a model of `LValuePropertyMap` whose key type is the value type of the input + a model of `ReadablePropertyMap` whose key type is the value type of the input range and value type is `Kernel::Point_2` or `Kernel::Point_3` \cgalModels `NeighborQuery` diff --git a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_polygon_mesh/Least_squares_plane_fit_region.h b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_polygon_mesh/Least_squares_plane_fit_region.h index 14448b56d2c..1dadc10ba64 100644 --- a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_polygon_mesh/Least_squares_plane_fit_region.h +++ b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_polygon_mesh/Least_squares_plane_fit_region.h @@ -45,7 +45,7 @@ namespace Polygon_mesh { value type is the face type of a polygon mesh \tparam VertexToPointMap - a model of `LValuePropertyMap` whose key type is the vertex type of a polygon mesh and + a model of `ReadablePropertyMap` whose key type is the vertex type of a polygon mesh and value type is `Kernel::Point_3` \cgalModels `RegionType` diff --git a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_polygon_mesh/Least_squares_plane_fit_sorting.h b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_polygon_mesh/Least_squares_plane_fit_sorting.h index 1b4a6b4f458..c763ba64789 100644 --- a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_polygon_mesh/Least_squares_plane_fit_sorting.h +++ b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_polygon_mesh/Least_squares_plane_fit_sorting.h @@ -45,7 +45,7 @@ namespace Polygon_mesh { value type is the face type of a polygon mesh \tparam VertexToPointMap - a model of `LValuePropertyMap` whose key type is the vertex type of a polygon mesh and + a model of `ReadablePropertyMap` whose key type is the vertex type of a polygon mesh and value type is `Kernel::Point_3` */ template< diff --git a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_polygon_mesh/Polyline_graph.h b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_polygon_mesh/Polyline_graph.h index 48c0aff62c5..b3ff7a496ff 100644 --- a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_polygon_mesh/Polyline_graph.h +++ b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_polygon_mesh/Polyline_graph.h @@ -46,7 +46,7 @@ namespace Polygon_mesh { value type is the edge type of a polygon mesh \tparam VertexToPointMap - a model of `LValuePropertyMap` whose key type is the vertex type of a polygon mesh and + a model of `ReadablePropertyMap` whose key type is the vertex type of a polygon mesh and value type is `Kernel::Point_3` \cgalModels `NeighborQuery` diff --git a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_polyline/Least_squares_line_fit_region.h b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_polyline/Least_squares_line_fit_region.h index afa0e6d3069..56873824043 100644 --- a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_polyline/Least_squares_line_fit_region.h +++ b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_polyline/Least_squares_line_fit_region.h @@ -41,7 +41,7 @@ namespace Polyline { a model of `ConstRange` whose iterator type is `RandomAccessIterator` \tparam PointMap - a model of `LValuePropertyMap` whose key type is the value type of the input + a model of `ReadablePropertyMap` whose key type is the value type of the input range and value type is `Kernel::Point_2` or `Kernel::Point_3` \cgalModels `RegionType` diff --git a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_polyline/Least_squares_line_fit_sorting.h b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_polyline/Least_squares_line_fit_sorting.h index 5ccc8e24391..f1f54f40422 100644 --- a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_polyline/Least_squares_line_fit_sorting.h +++ b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_polyline/Least_squares_line_fit_sorting.h @@ -41,7 +41,7 @@ namespace Polyline { a model of `NeighborQuery` \tparam PointMap - a model of `LValuePropertyMap` whose key type is the value type of the input + a model of `ReadablePropertyMap` whose key type is the value type of the input range and value type is `Kernel::Point_2` or `Kernel::Point_3` */ template< diff --git a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_segment_set/Least_squares_line_fit_region.h b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_segment_set/Least_squares_line_fit_region.h index 1e0e0f1a214..595fa8db58f 100644 --- a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_segment_set/Least_squares_line_fit_region.h +++ b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_segment_set/Least_squares_line_fit_region.h @@ -41,7 +41,7 @@ namespace Segment_set { a model of `ConstRange` whose iterator type is `RandomAccessIterator` \tparam SegmentMap - a model of `LValuePropertyMap` whose key type is the value type of the input + a model of `ReadablePropertyMap` whose key type is the value type of the input range and value type is `Kernel::Segment_2` or `Kernel::Segment_3` \cgalModels `RegionType` diff --git a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_segment_set/Least_squares_line_fit_sorting.h b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_segment_set/Least_squares_line_fit_sorting.h index 8a8cafb7d3d..cd031f5df9a 100644 --- a/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_segment_set/Least_squares_line_fit_sorting.h +++ b/Shape_detection/include/CGAL/Shape_detection/Region_growing/Region_growing_on_segment_set/Least_squares_line_fit_sorting.h @@ -41,7 +41,7 @@ namespace Segment_set { a model of `NeighborQuery` \tparam SegmentMap - a model of `LValuePropertyMap` whose key type is the value type of the input + a model of `ReadablePropertyMap` whose key type is the value type of the input range and value type is `Kernel::Segment_2` or `Kernel::Segment_3` */ template< diff --git a/Shape_detection/todo.md b/Shape_detection/todo.md index 10af98ae21e..6342d8e266e 100644 --- a/Shape_detection/todo.md +++ b/Shape_detection/todo.md @@ -1,8 +1,7 @@ -- update the docs -- ---- submission ---- -- update the polyhedron demo -- make a better version of the Polyline_graph where I return a filtered set of original edges instead of PEdge -- add new tests: polyline (2D, 3D), polyline with sorting (2D, 3D), free functions, randomness, strict tests on the data from PMP, tests similar to the basic_example, check polylines with equal points - add missing deprecated constructors -- think about changing lvalue to readable property maps -- put all property names in the named parameters \ No newline at end of file +- put all property names in the named parameters +- make a better version of the Polyline_graph where I return a filtered set of original edges instead of PEdge +- update the polyhedron demo +- ---- submission ---- +- add new tests: polyline (2D, 3D), polyline with sorting (2D, 3D), free functions, randomness, strict tests on the data from PMP, tests similar to the basic_example, check polylines with equal points +- update the docs \ No newline at end of file