Point set structuring with Cartesian_converter_property_map?
This post was updated on .
I'm using CGAL::Point_set_with_structure together with
CGAL::Cartesian_converter_property_map and the compiling process failed.
I'm using Exact_predicates_inexact_constructions_kernel with
Efficient_RANSAC to do plane detection first.
Then I want to send the plane detection result of RANSAC to
Point_set_structuring with Exact_predicates_exact_constructions_kernel.
(Since I need the projection result of structuring to be exact, the
exact_constructions_kernel is required here).
However the compiling process failed. It seems that the constructor of
Cartesian_converter_property_map needs 1 argument while the source code did
not consider this situation?
My code looks like this:
// Kernel type declarations typedef CGAL::Exact_predicates_inexact_constructions_kernel Kernel;
/usr/local/include/CGAL/structure_point_set.h:253:78: error: no matching function for call to ‘CGAL::Cartesian_converter_property_map<CGAL::Point_3<CGAL::Epeck>, CGAL::First_of_pair_property_map<std::pair<CGAL::Point_3<CGAL::Epick>, CGAL::Vector_3<CGAL::Epick> > > >::Cartesian_converter_property_map()’
PointMap point_map = choose_param(get_param(np, internal_np::point_map), PointMap());
In file included from /usr/local/include/CGAL/IO/read_xyz_points.h:27:0,
/usr/local/include/CGAL/property_map.h:550:3: note: candidate: CGAL::Cartesian_converter_property_map<GeomObject, Vpm>::Cartesian_converter_property_map(Vpm) [with GeomObject = CGAL::Point_3<CGAL::Epeck>; Vpm = CGAL::First_of_pair_property_map<std::pair<CGAL::Point_3<CGAL::Epick>, CGAL::Vector_3<CGAL::Epick> > >]
/usr/local/include/CGAL/property_map.h:550:3: note: candidate expects 1 argument, 0 provided
From what I know, the constructor of Cartesian_converter_property_map needs one property map object as argument as I did in the above code (the
italic bold part). However the source code of structuring seems did not