Skip to Content.
Sympa Menu

cgal-discuss - Re: [cgal-discuss] info_insert_with_pair_iterator.cpp in parallel form?

Subject: CGAL users discussion list

List archive

Re: [cgal-discuss] info_insert_with_pair_iterator.cpp in parallel form?


Chronological Thread 
  • From: Thierry Fredrich <>
  • To:
  • Subject: Re: [cgal-discuss] info_insert_with_pair_iterator.cpp in parallel form?
  • Date: Thu, 18 Jan 2018 16:22:59 +0100
  • Authentication-results: mail2-smtp-roc.national.inria.fr; spf=None ; spf=Pass ; spf=None
  • Ironport-phdr: 9a23:PriUdxbHcP4jLhnBDFyR72j/LSx+4OfEezUN459isYplN5qZr8S/bnLW6fgltlLVR4KTs6sC17KP9fi4EUU7or+5+EgYd5JNUxJXwe43pCcHRPC/NEvgMfTxZDY7FskRHHVs/nW8LFQHUJ2mPw6arXK99yMdFQviPgRpOOv1BpTSj8Oq3Oyu5pHfeQpFiCagbb9oMBm6sRjau9ULj4dlNqs/0AbCrGFSe+RRy2NoJFaTkAj568yt4pNt8Dletuw4+cJYXqr0Y6o3TbpDDDQ7KG81/9HktQPCTQSU+HQRVHgdnwdSDAjE6BH6WYrxsjf/u+Fg1iSWIdH6QLYpUjmk8qxlSgLniD0fOjE7/mHZisJ+gqFGrhy/uxNy2JTbbJ2POfdkYq/RYdEXSGxcVchRTSxBBYa8YpMRAeoBPOZXsZP9p0EOrBCjBQesHv3gxSJShn/3waI60/kqHAba3AwgHtIBrm7UrM/1NasIX+C11rfHwijZb/NXxTj96JPFch8mofGLUrJwddTeyUw1GAPEilWcs5DqPzSQ1ukUtWWQ8uRuVeWqi2E9qgFxpCCixsYqionTh4Ia0ErI9StjwIotKt24SVJ7Yd65EJRLrS2VK4x2QsYkTmp1uyg60qULtYCncCUO0pgqxB7SZ+aZf4SV4x/vTvudLDV6iX9jZbmxnQy98VK6xe35TsS00EhFri5CktTUs3ACzR3T6syeRvtk4ketxS+D1w7O5uxGI004j6XbK5kmwr4/kpocr17PETPxmEXzlKOWd0Mk9fa06+n/fLnqupuRO5V3hwz+KKgihNGzDOUiPgQTXWWW+/yw1Lj58k34RLVKgOc2kq7csJ3COcQbpq+5DBFP0oY56xezFTmm0M4GknYaNlJFeQ6Ij4jyNlHBJ/D4Cvi/g1Cynzdu3f/GP7nhDo/RIXjElbftZax95FJEyAov0dBf4IpZBa0OIP3pXk/9rcHXDh4iMwOo3ubnE85925gFWWOPB6+ZKLndvUWJ5uIpOemMZZUatCzzK/g/tLbTi2QkkwodYbWxxslQL2upG+xvZUSfe3vlxNkbVnwbuxI3C+3shlrFWjFaYzO+Xrk3+yogW76hWIzMT4TojL2a1zqgBbVXYHpHAxaCCyTGbYKBDssMaS+ION4pvCYJWaKgQI9pgQ2utQLg0ashIPDZ9jcZvpLL299y6OnekBgz8Xp/CMHLgDLFdH19gm5dH2x+56t4u0Eokg7Sg5g9uORREJlo390MVw47MZDGyOkjVYL9XQXOetqMQVeiBN6hBGNoF45j85o1e094Xu6aoFXbxSPzXe0akLuEAJEx+6PYmXP2IpQlkiuU5Owal1AjB/B3Gyimi6p4rVaBAofIlwCAi/7ve/1Dg2jC82CMyWfIt0ZdAlZ9

Starting from the example "info_insert_with_pair_iterator.cpp", I added the the vector V to become "std::vector<std::pair<Point, unsigned>> V;" and filled it with "V.push_back(std::make_pair(*rnd++, (unsigned)i));". Similar to the example  "parallel_insertion_in_delaunay_3.cpp". I 1) created a Lock_data_structure (seems to be mandantory for parallel execution) and 2) edited the constructor to "Triangulation T(V.begin(), V.end(), &locking_ds);"

The code could be found at: https://github.com/thierry3000/VBL/commit/e60d713f1d180a0d11e360b2528d61ed3d1a8047
What I get from the compiler error below is that the constructor does not accept more complex vector than just vectors of "Points" which actually makes sense. To come back to my origial question: how to overcome this and hand over a vector of std::pair like it is done in "info_insert_with_pair_iterator???

Thierry

P.S. : I am working with the CGAL release bundle 4.11.

In file included from /home/usersHR/thierry/git_codes/VBL/tools/tests/info_insert_with_pair_iterator_parallel.cpp:2:0:
/localdisk/thierry/local/include/CGAL/Delaunay_triangulation_3.h: In instantiation of ‘CGAL::Delaunay_triangulation_3<Gt, Tds_, CGAL::Default, Lock_data_structure_>::Delaunay_triangulation_3(InputIterator, InputIterator, CGAL::Delaunay_triangulation_3<Gt, Tds_, CGAL::Default, Lock_data_structure_>::Lock_data_structure*, const Gt&) [with InputIterator = __gnu_cxx::__normal_iterator<std::pair<CGAL::Point_3<CGAL::Epick>, unsigned int>*, std::vector<std::pair<CGAL::Point_3<CGAL::Epick>, unsigned int> > >; Gt = CGAL::Epick; Tds_ = CGAL::Triangulation_data_structure_3<CGAL::Triangulation_vertex_base_3<CGAL::Epick>, CGAL::Triangulation_cell_base_3<CGAL::Epick>, CGAL::Parallel_tag>; Lock_data_structure_ = CGAL::Default; CGAL::Delaunay_triangulation_3<Gt, Tds_, CGAL::Default, Lock_data_structure_>::Lock_data_structure = CGAL::Spatial_lock_grid_3<CGAL::Tag_priority_blocking>]’:
/home/usersHR/thierry/git_codes/VBL/tools/tests/info_insert_with_pair_iterator_parallel.cpp:32:50:   required from here
/localdisk/thierry/local/include/CGAL/Delaunay_triangulation_3.h:269:13: error: no matching function for call to ‘CGAL::Delaunay_triangulation_3<CGAL::Epick, CGAL::Triangulation_data_structure_3<CGAL::Triangulation_vertex_base_3<CGAL::Epick>, CGAL::Triangulation_cell_base_3<CGAL::Epick>, CGAL::Parallel_tag> >::insert(__gnu_cxx::__normal_iterator<std::pair<CGAL::Point_3<CGAL::Epick>, unsigned int>*, std::vector<std::pair<CGAL::Point_3<CGAL::Epick>, unsigned int> > >&, __gnu_cxx::__normal_iterator<std::pair<CGAL::Point_3<CGAL::Epick>, unsigned int>*, std::vector<std::pair<CGAL::Point_3<CGAL::Epick>, unsigned int> > >&)’
       insert(first, last);
       ~~~~~~^~~~~~~~~~~~~
/localdisk/thierry/local/include/CGAL/Delaunay_triangulation_3.h:345:3: note: candidate: template<class InputIterator> std::ptrdiff_t CGAL::Delaunay_triangulation_3<Gt, Tds_, CGAL::Default, Lock_data_structure_>::insert(InputIterator, InputIterator, typename boost::enable_if<boost::is_convertible<typename std::iterator_traits<_InputIterator>::value_type, typename Gt::Point_3> >::type*) [with InputIterator = InputIterator; Gt = CGAL::Epick; Tds_ = CGAL::Triangulation_data_structure_3<CGAL::Triangulation_vertex_base_3<CGAL::Epick>, CGAL::Triangulation_cell_base_3<CGAL::Epick>, CGAL::Parallel_tag>; Lock_data_structure_ = CGAL::Default]
   insert( InputIterator first, InputIterator last,
   ^~~~~~
/localdisk/thierry/local/include/CGAL/Delaunay_triangulation_3.h:345:3: note:   template argument deduction/substitution failed:
/localdisk/thierry/local/include/CGAL/Delaunay_triangulation_3.h: In substitution of ‘template<class InputIterator> std::ptrdiff_t CGAL::Delaunay_triangulation_3<CGAL::Epick, CGAL::Triangulation_data_structure_3<CGAL::Triangulation_vertex_base_3<CGAL::Epick>, CGAL::Triangulation_cell_base_3<CGAL::Epick>, CGAL::Parallel_tag> >::insert<InputIterator>(InputIterator, InputIterator, typename boost::enable_if<boost::is_convertible<typename std::iterator_traits<_Iterator>::value_type, CGAL::Point_3<CGAL::Epick> >, void>::type*) [with InputIterator = __gnu_cxx::__normal_iterator<std::pair<CGAL::Point_3<CGAL::Epick>, unsigned int>*, std::vector<std::pair<CGAL::Point_3<CGAL::Epick>, unsigned int> > >]’:
/localdisk/thierry/local/include/CGAL/Delaunay_triangulation_3.h:269:13:   required from ‘CGAL::Delaunay_triangulation_3<Gt, Tds_, CGAL::Default, Lock_data_structure_>::Delaunay_triangulation_3(InputIterator, InputIterator, CGAL::Delaunay_triangulation_3<Gt, Tds_, CGAL::Default, Lock_data_structure_>::Lock_data_structure*, const Gt&) [with InputIterator = __gnu_cxx::__normal_iterator<std::pair<CGAL::Point_3<CGAL::Epick>, unsigned int>*, std::vector<std::pair<CGAL::Point_3<CGAL::Epick>, unsigned int> > >; Gt = CGAL::Epick; Tds_ = CGAL::Triangulation_data_structure_3<CGAL::Triangulation_vertex_base_3<CGAL::Epick>, CGAL::Triangulation_cell_base_3<CGAL::Epick>, CGAL::Parallel_tag>; Lock_data_structure_ = CGAL::Default; CGAL::Delaunay_triangulation_3<Gt, Tds_, CGAL::Default, Lock_data_structure_>::Lock_data_structure = CGAL::Spatial_lock_grid_3<CGAL::Tag_priority_blocking>]’
/home/usersHR/thierry/git_codes/VBL/tools/tests/info_insert_with_pair_iterator_parallel.cpp:32:50:   required from here
/localdisk/thierry/local/include/CGAL/Delaunay_triangulation_3.h:345:3: error: no type named ‘type’ in ‘struct boost::enable_if<boost::is_convertible<std::pair<CGAL::Point_3<CGAL::Epick>, unsigned int>, CGAL::Point_3<CGAL::Epick> >, void>’
/localdisk/thierry/local/include/CGAL/Delaunay_triangulation_3.h: In instantiation of ‘CGAL::Delaunay_triangulation_3<Gt, Tds_, CGAL::Default, Lock_data_structure_>::Delaunay_triangulation_3(InputIterator, InputIterator, CGAL::Delaunay_triangulation_3<Gt, Tds_, CGAL::Default, Lock_data_structure_>::Lock_data_structure*, const Gt&) [with InputIterator = __gnu_cxx::__normal_iterator<std::pair<CGAL::Point_3<CGAL::Epick>, unsigned int>*, std::vector<std::pair<CGAL::Point_3<CGAL::Epick>, unsigned int> > >; Gt = CGAL::Epick; Tds_ = CGAL::Triangulation_data_structure_3<CGAL::Triangulation_vertex_base_3<CGAL::Epick>, CGAL::Triangulation_cell_base_3<CGAL::Epick>, CGAL::Parallel_tag>; Lock_data_structure_ = CGAL::Default; CGAL::Delaunay_triangulation_3<Gt, Tds_, CGAL::Default, Lock_data_structure_>::Lock_data_structure = CGAL::Spatial_lock_grid_3<CGAL::Tag_priority_blocking>]’:
/home/usersHR/thierry/git_codes/VBL/tools/tests/info_insert_with_pair_iterator_parallel.cpp:32:50:   required from here
/localdisk/thierry/local/include/CGAL/Delaunay_triangulation_3.h:505:3: note: candidate: template<class InputIterator> std::ptrdiff_t CGAL::Delaunay_triangulation_3<Gt, Tds_, CGAL::Default, Lock_data_structure_>::insert(InputIterator, InputIterator, typename boost::enable_if<boost::is_convertible<typename std::iterator_traits<_InputIterator>::value_type, std::pair<typename Gt::Point_3, typename CGAL::internal::Info_check<typename CGAL::Triangulation_3<GT, Tds, Lds>::Triangulation_data_structure::Vertex>::type> > >::type*) [with InputIterator = InputIterator; Gt = CGAL::Epick; Tds_ = CGAL::Triangulation_data_structure_3<CGAL::Triangulation_vertex_base_3<CGAL::Epick>, CGAL::Triangulation_cell_base_3<CGAL::Epick>, CGAL::Parallel_tag>; Lock_data_structure_ = CGAL::Default]
   insert( InputIterator first,
   ^~~~~~
/localdisk/thierry/local/include/CGAL/Delaunay_triangulation_3.h:505:3: note:   template argument deduction/substitution failed:
/localdisk/thierry/local/include/CGAL/Delaunay_triangulation_3.h: In substitution of ‘template<class InputIterator> std::ptrdiff_t CGAL::Delaunay_triangulation_3<CGAL::Epick, CGAL::Triangulation_data_structure_3<CGAL::Triangulation_vertex_base_3<CGAL::Epick>, CGAL::Triangulation_cell_base_3<CGAL::Epick>, CGAL::Parallel_tag> >::insert<InputIterator>(InputIterator, InputIterator, typename boost::enable_if<boost::is_convertible<typename std::iterator_traits<_Iterator>::value_type, std::pair<CGAL::Point_3<CGAL::Epick>, CGAL::internal::Info_check<CGAL::Triangulation_vertex_base_3<CGAL::Epick, CGAL::Triangulation_ds_vertex_base_3<CGAL::Triangulation_data_structure_3<CGAL::Triangulation_vertex_base_3<CGAL::Epick>, CGAL::Triangulation_cell_base_3<CGAL::Epick>, CGAL::Parallel_tag> > >, false>::type> >, void>::type*) [with InputIterator = __gnu_cxx::__normal_iterator<std::pair<CGAL::Point_3<CGAL::Epick>, unsigned int>*, std::vector<std::pair<CGAL::Point_3<CGAL::Epick>, unsigned int> > >]’:
/localdisk/thierry/local/include/CGAL/Delaunay_triangulation_3.h:269:13:   required from ‘CGAL::Delaunay_triangulation_3<Gt, Tds_, CGAL::Default, Lock_data_structure_>::Delaunay_triangulation_3(InputIterator, InputIterator, CGAL::Delaunay_triangulation_3<Gt, Tds_, CGAL::Default, Lock_data_structure_>::Lock_data_structure*, const Gt&) [with InputIterator = __gnu_cxx::__normal_iterator<std::pair<CGAL::Point_3<CGAL::Epick>, unsigned int>*, std::vector<std::pair<CGAL::Point_3<CGAL::Epick>, unsigned int> > >; Gt = CGAL::Epick; Tds_ = CGAL::Triangulation_data_structure_3<CGAL::Triangulation_vertex_base_3<CGAL::Epick>, CGAL::Triangulation_cell_base_3<CGAL::Epick>, CGAL::Parallel_tag>; Lock_data_structure_ = CGAL::Default; CGAL::Delaunay_triangulation_3<Gt, Tds_, CGAL::Default, Lock_data_structure_>::Lock_data_structure = CGAL::Spatial_lock_grid_3<CGAL::Tag_priority_blocking>]’
/home/usersHR/thierry/git_codes/VBL/tools/tests/info_insert_with_pair_iterator_parallel.cpp:32:50:   required from here
/localdisk/thierry/local/include/CGAL/Delaunay_triangulation_3.h:505:3: error: no type named ‘type’ in ‘struct boost::enable_if<boost::is_convertible<std::pair<CGAL::Point_3<CGAL::Epick>, unsigned int>, std::pair<CGAL::Point_3<CGAL::Epick>, CGAL::internal::Info_check<CGAL::Triangulation_vertex_base_3<CGAL::Epick, CGAL::Triangulation_ds_vertex_base_3<CGAL::Triangulation_data_structure_3<CGAL::Triangulation_vertex_base_3<CGAL::Epick>, CGAL::Triangulation_cell_base_3<CGAL::Epick>, CGAL::Parallel_tag> > >, false>::type> >, void>’
In file included from /home/usersHR/thierry/git_codes/VBL/tools/tests/info_insert_with_pair_iterator_parallel.cpp:2:0:
/localdisk/thierry/local/include/CGAL/Delaunay_triangulation_3.h: In instantiation of ‘CGAL::Delaunay_triangulation_3<Gt, Tds_, CGAL::Default, Lock_data_structure_>::Delaunay_triangulation_3(InputIterator, InputIterator, CGAL::Delaunay_triangulation_3<Gt, Tds_, CGAL::Default, Lock_data_structure_>::Lock_data_structure*, const Gt&) [with InputIterator = __gnu_cxx::__normal_iterator<std::pair<CGAL::Point_3<CGAL::Epick>, unsigned int>*, std::vector<std::pair<CGAL::Point_3<CGAL::Epick>, unsigned int> > >; Gt = CGAL::Epick; Tds_ = CGAL::Triangulation_data_structure_3<CGAL::Triangulation_vertex_base_3<CGAL::Epick>, CGAL::Triangulation_cell_base_3<CGAL::Epick>, CGAL::Parallel_tag>; Lock_data_structure_ = CGAL::Default; CGAL::Delaunay_triangulation_3<Gt, Tds_, CGAL::Default, Lock_data_structure_>::Lock_data_structure = CGAL::Spatial_lock_grid_3<CGAL::Tag_priority_blocking>]’:
/home/usersHR/thierry/git_codes/VBL/tools/tests/info_insert_with_pair_iterator_parallel.cpp:32:50:   required from here
/localdisk/thierry/local/include/CGAL/Delaunay_triangulation_3.h:519:3: note: candidate: template<class InputIterator_1, class InputIterator_2> std::ptrdiff_t CGAL::Delaunay_triangulation_3<Gt, Tds_, CGAL::Default, Lock_data_structure_>::insert(boost::iterators::zip_iterator<boost::tuples::tuple<InputIterator_1, InputIterator_2> >, boost::iterators::zip_iterator<boost::tuples::tuple<InputIterator_1, InputIterator_2> >, typename boost::enable_if<boost::mpl::and_<boost::is_convertible<typename std::iterator_traits<_InputIterator>::value_type, typename Gt::Point_3>, boost::is_convertible<typename std::iterator_traits<InputIterator_2>::value_type, typename CGAL::internal::Info_check<typename CGAL::Triangulation_3<GT, Tds, Lds>::Triangulation_data_structure::Vertex>::type> > >::type*) [with InputIterator_1 = InputIterator_1; InputIterator_2 = InputIterator_2; Gt = CGAL::Epick; Tds_ = CGAL::Triangulation_data_structure_3<CGAL::Triangulation_vertex_base_3<CGAL::Epick>, CGAL::Triangulation_cell_base_3<CGAL::Epick>, CGAL::Parallel_tag>; Lock_data_structure_ = CGAL::Default]
   insert( boost::zip_iterator< boost::tuple<InputIterator_1,InputIterator_2> > first,
   ^~~~~~
/localdisk/thierry/local/include/CGAL/Delaunay_triangulation_3.h:519:3: note:   template argument deduction/substitution failed:
In file included from /home/usersHR/thierry/git_codes/VBL/tools/tests/info_insert_with_pair_iterator_parallel.cpp:2:0:
/localdisk/thierry/local/include/CGAL/Delaunay_triangulation_3.h:269:13: note:   ‘__gnu_cxx::__normal_iterator<std::pair<CGAL::Point_3<CGAL::Epick>, unsigned int>*, std::vector<std::pair<CGAL::Point_3<CGAL::Epick>, unsigned int> > >’ is not derived from ‘boost::iterators::zip_iterator<boost::tuples::tuple<InputIterator_1, InputIterator_2, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> >’
       insert(first, last);
       ~~~~~~^~~~~~~~~~~~~
In file included from /home/usersHR/thierry/git_codes/VBL/tools/tests/info_insert_with_pair_iterator_parallel.cpp:2:0:
/localdisk/thierry/local/include/CGAL/Delaunay_triangulation_3.h:533:17: note: candidate: CGAL::Delaunay_triangulation_3<Gt, Tds_, CGAL::Default, Lock_data_structure_>::Vertex_handle CGAL::Delaunay_triangulation_3<Gt, Tds_, CGAL::Default, Lock_data_structure_>::insert(const Point&, CGAL::Delaunay_triangulation_3<Gt, Tds_, CGAL::Default, Lock_data_structure_>::Vertex_handle, bool*) [with Gt = CGAL::Epick; Tds_ = CGAL::Triangulation_data_structure_3<CGAL::Triangulation_vertex_base_3<CGAL::Epick>, CGAL::Triangulation_cell_base_3<CGAL::Epick>, CGAL::Parallel_tag>; Lock_data_structure_ = CGAL::Default; CGAL::Delaunay_triangulation_3<Gt, Tds_, CGAL::Default, Lock_data_structure_>::Vertex_handle = CGAL::CCC_internal::CCC_iterator<CGAL::Concurrent_compact_container<CGAL::Triangulation_vertex_base_3<CGAL::Epick, CGAL::Triangulation_ds_vertex_base_3<CGAL::Triangulation_data_structure_3<CGAL::Triangulation_vertex_base_3<CGAL::Epick>, CGAL::Triangulation_cell_base_3<CGAL::Epick>, CGAL::Parallel_tag> > >, tbb::scalable_allocator<CGAL::Triangulation_vertex_base_3<CGAL::Epick, CGAL::Triangulation_ds_vertex_base_3<CGAL::Triangulation_data_structure_3<CGAL::Triangulation_vertex_base_3<CGAL::Epick>, CGAL::Triangulation_cell_base_3<CGAL::Epick>, CGAL::Parallel_tag> > > > >, false>; CGAL::Delaunay_triangulation_3<Gt, Tds_, CGAL::Default, Lock_data_structure_>::Point = CGAL::Point_3<CGAL::Epick>]
   Vertex_handle insert(const Point & p, Vertex_handle hint,
                 ^~~~~~
/localdisk/thierry/local/include/CGAL/Delaunay_triangulation_3.h:533:17: note:   no known conversion for argument 1 from ‘__gnu_cxx::__normal_iterator<std::pair<CGAL::Point_3<CGAL::Epick>, unsigned int>*, std::vector<std::pair<CGAL::Point_3<CGAL::Epick>, unsigned int> > >’ to ‘const Point& {aka const CGAL::Point_3<CGAL::Epick>&}’
/localdisk/thierry/local/include/CGAL/Delaunay_triangulation_3.h:1131:1: note: candidate: CGAL::Delaunay_triangulation_3<Gt, Tds_, CGAL::Default, Lock_data_structure_>::Vertex_handle CGAL::Delaunay_triangulation_3<Gt, Tds_, CGAL::Default, Lock_data_structure_>::insert(const Point&, CGAL::Delaunay_triangulation_3<Gt, Tds_, CGAL::Default, Lock_data_structure_>::Cell_handle, bool*) [with Gt = CGAL::Epick; Tds_ = CGAL::Triangulation_data_structure_3<CGAL::Triangulation_vertex_base_3<CGAL::Epick>, CGAL::Triangulation_cell_base_3<CGAL::Epick>, CGAL::Parallel_tag>; Lock_data_structure_ = CGAL::Default; CGAL::Delaunay_triangulation_3<Gt, Tds_, CGAL::Default, Lock_data_structure_>::Vertex_handle = CGAL::CCC_internal::CCC_iterator<CGAL::Concurrent_compact_container<CGAL::Triangulation_vertex_base_3<CGAL::Epick, CGAL::Triangulation_ds_vertex_base_3<CGAL::Triangulation_data_structure_3<CGAL::Triangulation_vertex_base_3<CGAL::Epick>, CGAL::Triangulation_cell_base_3<CGAL::Epick>, CGAL::Parallel_tag> > >, tbb::scalable_allocator<CGAL::Triangulation_vertex_base_3<CGAL::Epick, CGAL::Triangulation_ds_vertex_base_3<CGAL::Triangulation_data_structure_3<CGAL::Triangulation_vertex_base_3<CGAL::Epick>, CGAL::Triangulation_cell_base_3<CGAL::Epick>, CGAL::Parallel_tag> > > > >, false>; CGAL::Delaunay_triangulation_3<Gt, Tds_, CGAL::Default, Lock_data_structure_>::Point = CGAL::Point_3<CGAL::Epick>; CGAL::Delaunay_triangulation_3<Gt, Tds_, CGAL::Default, Lock_data_structure_>::Cell_handle = CGAL::CCC_internal::CCC_iterator<CGAL::Concurrent_compact_container<CGAL::Triangulation_cell_base_3<CGAL::Epick, CGAL::Triangulation_ds_cell_base_3<CGAL::Triangulation_data_structure_3<CGAL::Triangulation_vertex_base_3<CGAL::Epick>, CGAL::Triangulation_cell_base_3<CGAL::Epick>, CGAL::Parallel_tag> > >, tbb::scalable_allocator<CGAL::Triangulation_cell_base_3<CGAL::Epick, CGAL::Triangulation_ds_cell_base_3<CGAL::Triangulation_data_structure_3<CGAL::Triangulation_vertex_base_3<CGAL::Epick>, CGAL::Triangulation_cell_base_3<CGAL::Epick>, CGAL::Parallel_tag> > > > >, false>]
 Delaunay_triangulation_3<Gt,Tds,Default,Lds>::
 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/localdisk/thierry/local/include/CGAL/Delaunay_triangulation_3.h:1131:1: note:   no known conversion for argument 1 from ‘__gnu_cxx::__normal_iterator<std::pair<CGAL::Point_3<CGAL::Epick>, unsigned int>*, std::vector<std::pair<CGAL::Point_3<CGAL::Epick>, unsigned int> > >’ to ‘const Point& {aka const CGAL::Point_3<CGAL::Epick>&}’
/localdisk/thierry/local/include/CGAL/Delaunay_triangulation_3.h:1157:1: note: candidate: CGAL::Delaunay_triangulation_3<Gt, Tds_, CGAL::Default, Lock_data_structure_>::Vertex_handle CGAL::Delaunay_triangulation_3<Gt, Tds_, CGAL::Default, Lock_data_structure_>::insert(const Point&, CGAL::Delaunay_triangulation_3<Gt, Tds_, CGAL::Default, Lock_data_structure_>::Locate_type, CGAL::Delaunay_triangulation_3<Gt, Tds_, CGAL::Default, Lock_data_structure_>::Cell_handle, int, int, bool*) [with Gt = CGAL::Epick; Tds_ = CGAL::Triangulation_data_structure_3<CGAL::Triangulation_vertex_base_3<CGAL::Epick>, CGAL::Triangulation_cell_base_3<CGAL::Epick>, CGAL::Parallel_tag>; Lock_data_structure_ = CGAL::Default; CGAL::Delaunay_triangulation_3<Gt, Tds_, CGAL::Default, Lock_data_structure_>::Vertex_handle = CGAL::CCC_internal::CCC_iterator<CGAL::Concurrent_compact_container<CGAL::Triangulation_vertex_base_3<CGAL::Epick, CGAL::Triangulation_ds_vertex_base_3<CGAL::Triangulation_data_structure_3<CGAL::Triangulation_vertex_base_3<CGAL::Epick>, CGAL::Triangulation_cell_base_3<CGAL::Epick>, CGAL::Parallel_tag> > >, tbb::scalable_allocator<CGAL::Triangulation_vertex_base_3<CGAL::Epick, CGAL::Triangulation_ds_vertex_base_3<CGAL::Triangulation_data_structure_3<CGAL::Triangulation_vertex_base_3<CGAL::Epick>, CGAL::Triangulation_cell_base_3<CGAL::Epick>, CGAL::Parallel_tag> > > > >, false>; CGAL::Delaunay_triangulation_3<Gt, Tds_, CGAL::Default, Lock_data_structure_>::Point = CGAL::Point_3<CGAL::Epick>; CGAL::Delaunay_triangulation_3<Gt, Tds_, CGAL::Default, Lock_data_structure_>::Locate_type = CGAL::Triangulation_3<CGAL::Epick, CGAL::Triangulation_data_structure_3<CGAL::Triangulation_vertex_base_3<CGAL::Epick>, CGAL::Triangulation_cell_base_3<CGAL::Epick>, CGAL::Parallel_tag>, CGAL::Default>::Locate_type; CGAL::Delaunay_triangulation_3<Gt, Tds_, CGAL::Default, Lock_data_structure_>::Cell_handle = CGAL::CCC_internal::CCC_iterator<CGAL::Concurrent_compact_container<CGAL::Triangulation_cell_base_3<CGAL::Epick, CGAL::Triangulation_ds_cell_base_3<CGAL::Triangulation_data_structure_3<CGAL::Triangulation_vertex_base_3<CGAL::Epick>, CGAL::Triangulation_cell_base_3<CGAL::Epick>, CGAL::Parallel_tag> > >, tbb::scalable_allocator<CGAL::Triangulation_cell_base_3<CGAL::Epick, CGAL::Triangulation_ds_cell_base_3<CGAL::Triangulation_data_structure_3<CGAL::Triangulation_vertex_base_3<CGAL::Epick>, CGAL::Triangulation_cell_base_3<CGAL::Epick>, CGAL::Parallel_tag> > > > >, false>]
 Delaunay_triangulation_3<Gt,Tds,Default,Lds>::
 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/localdisk/thierry/local/include/CGAL/Delaunay_triangulation_3.h:1157:1: note:   candidate expects 6 arguments, 2 provided
make[2]: *** [tools/tests/CMakeFiles/info_insert_with_pair_iterator_parallel.dir/build.make:63: tools/tests/CMakeFiles/info_insert_with_pair_iterator_parallel.dir/info_insert_with_pair_iterator_parallel.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:285: tools/tests/CMakeFiles/info_insert_with_pair_iterator_parallel.dir/all] Error 2
make: *** [Makefile:130: all] Error 2

On Thu, Jan 18, 2018 at 1:49 PM, Sebastien Loriot (GeometryFactory) <> wrote:
It should be working. What did you try and what error did you get?

Sebastien.


On 01/18/2018 11:23 AM, Thierry Fredrich wrote:
Dear all,

in principle, all I need is provided in the example (Triangulation_3/info_insert_with_pair_iterator.cpp), but to speed up my project I want to use a parallel form of it. "Triangulation_3/parallel_insertion_in_delaunay_3.ccp" seems to provide all pieces. However I cannot get the hang on how to merge these two examples.

I assume the crucial step is to insert "Points with additional information" into the Triangulation which breaks in my case since the constructor only accepts plain points. (error: no type named ‘type’ in ‘struct boost::enable_if<boost::is_convertible<std::pair<CGAL::Point_3<CGAL::Epick>, unsigned int>, CGAL::Point_3<CGAL::Epick> >, void>’)
But if I provide plain point, how can I convey the additional information like the "unsigned" in the example.

Is there any experienced user who tried similar things?

--
You are currently subscribed to cgal-discuss.
To unsubscribe or access the archives, go to
https://sympa.inria.fr/sympa/info/cgal-discuss






Archive powered by MHonArc 2.6.18.

Top of Page