Skip to Content.
Sympa Menu

cgal-discuss - Re: [cgal-discuss] Unreported breaking change in CGAL 4.14?

Subject: CGAL users discussion list

List archive

Re: [cgal-discuss] Unreported breaking change in CGAL 4.14?


Chronological Thread 
  • From: Sebastien Loriot <>
  • To:
  • Subject: Re: [cgal-discuss] Unreported breaking change in CGAL 4.14?
  • Date: Thu, 4 Jan 2024 10:47:15 +0100
  • Authentication-results: mail3-smtp-sop.national.inria.fr; spf=None ; spf=Pass ; spf=None
  • Ironport-data: A9a23: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 uGQ3kUD
  • Ironport-hdrordr: A9a23:y/OWGqwLE8laqpLb7V5jKrPwEr1zdoMgy1knxilNoH1uA6mlfq WV9sjzuiWbtN9gYhwdcK+7SdG9qB/nlaKdmLNhRItKPzOW2ldATrsM0WKK+VSJcEHDH4VmtJ uIHZIOa+EZszVB/KLHCLXUKadH/DE5nZrY4tvj8w==
  • Ironport-phdr: A9a23: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 XZJh31F0gNnKtUyIP6ITJc=
  • Ironport-sdr: 65967ea6_PwmHdIyGqZbezzWz7eJnKF64fQx5bmVH56Fp1INkm6Vlr4N CWQAaLMlyO5wMIw9Fpg05MMZg/mE8mGo4nwecRw==

Hi,

even in CGAL 4.13 the primitive id is already edge_descriptor so I
don't understand how the old code was compiling. Maybe there was
a hack somewhere but the code was not correct (according to the doc).

I'm afraid, you'd have to update your codebase.

Best,

Sebastien.


On 1/4/24 00:42, Armando Duarte ( via cgal-discuss Mailing List) wrote:
Hi there,

The code below within

#if CGAL_VERSION_NR < 1041401000


#else

compiles and have worked for years with CGAL 4.13.2 or older. It does not, however, compile with CGAL 4.14 or later (see error message below). Release notes https://www.cgal.org/2019/03/29/cgal414/
does not mention a /breaking change/ related to aabb trees.
Is there a way to make this code compile or an implementation based on the code below within

#else

#end

must be used with CGAL 4.14 or later?
I.e, do we have to use boost::graph_traits< HalfedgeGraph >::edge_iterator after CGAL 4.14 with the aabb tree defined below?

Thank you!

Armando Duarte

// Adapted from CGAL Manual
#include <iostream>
#include <vector>
#include <boost/graph/graph_traits.hpp>

//#include <CGAL/Simple_cartesian.h>
#include <CGAL/Exact_predicates_exact_constructions_kernel.h>
#include <CGAL/AABB_tree.h>
#include <CGAL/AABB_traits.h>
#include <CGAL/Polyhedron_3.h>
#include <CGAL/AABB_halfedge_graph_segment_primitive.h>

//typedef CGAL::Simple_cartesian<double> K;
typedef CGAL::Exact_predicates_exact_constructions_kernel    K;
typedef K::FT FT;
typedef K::Point_3 Point;
typedef K::Triangle_3 Triangle;

typedef CGAL::Polyhedron_3<K> Polyhedron;

typedef CGAL::AABB_halfedge_graph_segment_primitive<Polyhedron, /*VertexPointPMap*/ CGAL::Default,
                                                    /* OneHalfedgeGraphPerTree*/ CGAL::Tag_true > Primitive;
typedef CGAL::AABB_traits<K, Primitive> Traits;
typedef CGAL::AABB_tree<Traits> Tree;

template <class Kernel, class HalfedgeGraph>
void run(HalfedgeGraph& graph){
  typename Kernel::Point_3 p(1.0, 0.0, 0.0);
  typename Kernel::Point_3 q(0.0, 1.0, 0.0);
  typename Kernel::Point_3 r(0.0, 0.0, 1.0);

  // constructs the AABB tree with hedges of a Polyhedron_3
  Tree tree;

  std::cout << "\nInserting subset of edges using vector iterators" << std::endl;

  //#if 1
 #if CGAL_VERSION_NR < 1041401000

  // This compiles and have worked for years with CGAL 4.13.2 or older. It does not compile with CGAL 4.14 or later.
  // Release notes https://www.cgal.org/2019/03/29/cgal414/
  // does not mention a *breaking change* related to aabb trees.
  // How to make this code compile? (see error message below).

  std::cout << "\nCGAL_VERSION < 4.14 adopted" << std::endl;

  // Store a couple of hedges from HalfedgeGraph graph into vector with hedges
  typename std::vector< typename HalfedgeGraph::Halfedge_handle > my_hedges;

  typename HalfedgeGraph::Edge_iterator edge_pos = graph.edges_begin();

  my_hedges.push_back( &(*edge_pos) );

  edge_pos++;
  my_hedges.push_back( &(*edge_pos) );

  // Get a hedge stored in vector my_edges.
  typename std::vector< typename HalfedgeGraph::Halfedge_handle >::iterator hedge_pos = my_hedges.begin();
  ++hedge_pos;
  typename HalfedgeGraph::Halfedge_handle my_halfedge_handle = (*hedge_pos);

  std::cout << "\nmy_halfedge_handle point = " << my_halfedge_handle->vertex()->point();
  std::cout << "\nhd_hedge_opposite point = " << my_halfedge_handle->opposite()->vertex()->point() << std::endl;

  // Rebuild aabb tree with HalfedgeGraph::Halfedge_handle stored in vector my_edges
  tree.rebuild( my_hedges.begin(), my_hedges.end(), graph );

#else

  // This compiles with CGAL 4.14 or later buy it will require lots of code changes.

  std::cout << "\nCGAL_VERSION >= 4.14 adopted" << std::endl;

  // Is there an easier way to insert a subset of Halfedges of a CGAL:Polyhedron_3 in a CGAL:AABB_tree?
  // Do we have to use boost::graph_traits< HalfedgeGraph >::edge_iterator after CGAL 4.14?

  // vector to store edges we want to use with AABB tree.
  // Type used comes from CGAL header AABB_halfedge_graph_segment_primitive.h
  std::vector< typename boost::graph_traits< HalfedgeGraph >::edge_descriptor > my_edges;

  // Use this to pick edges from HalfedgeGraph graph
  typename boost::graph_traits< HalfedgeGraph >::edge_iterator epos_start = CGAL::edges(graph).first;

  typename boost::graph_traits< HalfedgeGraph >::edge_descriptor edge = *epos_start;
  my_edges.push_back( edge );

  epos_start++;
  edge = *epos_start;
  my_edges.push_back( edge );

  // Return one of the halfedges corresponding to edge
  // https://doc.cgal.org/latest/BGL/classHalfedgeGraph.html#aa6d5e0b5380b5b80bbc2ed90e3e707f7
  typename boost::graph_traits< HalfedgeGraph >::halfedge_descriptor hedge_descritor = halfedge(edge, graph);
  // Covert the halfedge_descriptor into a Halfedge_handle
  typename HalfedgeGraph::Halfedge_handle my_halfedge_handle;
  my_halfedge_handle = (hedge_descritor);

  typename HalfedgeGraph::Halfedge_handle hd_hedge_opposite = my_halfedge_handle->opposite();

  std::cout << "\nmy_halfedge_handle point = " << my_halfedge_handle->vertex()->point();
  std::cout << "\nhd_hedge_opposite point = " << hd_hedge_opposite->vertex()->point() << std::endl;


  // Type of first two arguments to this method are iterators
  // boost::graph_traits< EdgeListGraph >::edge_iterator
  // Their value is boost::graph_traits< HalfedgeGraph >::edge_descriptor
  // Rebuild aabb tree with boost::graph_traits< HalfedgeGraph >::edge_descriptor stored in vector
  tree.rebuild( my_edges.begin(), my_edges.end(),
                graph);

#endif

  // counts #intersections with a triangle query
  Triangle triangle_query(p,q,r);
  std::cout << tree.number_of_intersected_primitives(triangle_query)
      << " intersections(s) with triangle" << std::endl;
  //  assert( tree.number_of_intersected_primitives(triangle_query )== 6);
  // computes the closest point from a query point
  typename Kernel::Point_3 point_query(2.0, 2.0, 2.0);
  typename Kernel::Point_3 closest = tree.closest_point(point_query);
  std::cerr << "closest point is: " << closest << std::endl;
}
int main()
{
  Point p(1.0, 0.0, 0.0);
  Point q(0.0, 1.0, 0.0);
  Point r(0.0, 0.0, 1.0);
  Point s(0.0, 0.0, 0.0);
  Polyhedron polyhedron;
  polyhedron.make_tetrahedron(p, q, r, s);

  run<K>(polyhedron);
  return EXIT_SUCCESS;
}

/*
Error message if using CGAL 4.14 or later and the first version of the code:

[ 66%] Building CXX object projects/helperprograms/test_AABB_tree/CMakeFiles/test_AABB_tree_3_to_post.dir/test_AABB_tree_3_to_post.C.o
In file included from /Users/armando/SetSolver_git/SetSolver/projects/helperprograms/test_AABB_tree/test_AABB_tree_3_to_post.C:11:
/Users/armando/SetSolver_hg/CGAL-4.14.3/include/CGAL/AABB_halfedge_graph_segment_primitive.h:181:17:
error: no matching member function for call to 'make_id'
    : Base( Id_(make_id(*it, graph, OneHalfedgeGraphPerTree())),
                ^~~~~~~
/Users/armando/SetSolver_hg/CGAL-4.14.3/include/CGAL/AABB_tree.h:774:27: note: in instantiation of function template specialization 'CGAL::AABB_halfedge_graph_segment_primitive<CGAL::Polyhedron_3<CGAL::Epeck>>::AABB_halfedge_graph_segment_primitive<std::__wrap_iter<CGAL::internal::In_place_list_iterator<CGAL::HalfedgeDS_in_place_list_halfedge<CGAL::I_Polyhedron_halfedge<CGAL::HalfedgeDS_halfedge_base<CGAL::HalfedgeDS_list_types<CGAL::Epeck, CGAL::I_Polyhedron_derived_items_3<CGAL::Polyhedron_items_3>, std::allocator<int>>>>>, std::allocator<CGAL::HalfedgeDS_in_place_list_halfedge<CGAL::I_Polyhedron_halfedge<CGAL::HalfedgeDS_halfedge_base<CGAL::HalfedgeDS_list_types<CGAL::Epeck, CGAL::I_Polyhedron_derived_items_3<CGAL::Polyhedron_items_3>, std::allocator<int>>>>>>> *>>' requested here
m_primitives.push_back(Primitive(first,std::forward<T>(t)...));
                                               ^
/Users/armando/SetSolver_hg/CGAL-4.14.3/include/CGAL/AABB_tree.h:791:5: note: in instantiation of function template specialization 'CGAL::AABB_tree<CGAL::AABB_traits<CGAL::Epeck, CGAL::AABB_halfedge_graph_segment_primitive<CGAL::Polyhedron_3<CGAL::Epeck>>>>::insert<std::__wrap_iter<CGAL::internal::In_place_list_iterator<CGAL::HalfedgeDS_in_place_list_halfedge<CGAL::I_Polyhedron_halfedge<CGAL::HalfedgeDS_halfedge_base<CGAL::HalfedgeDS_list_types<CGAL::Epeck, CGAL::I_Polyhedron_derived_items_3<CGAL::Polyhedron_items_3>, std::allocator<int>>>>>, std::allocator<CGAL::HalfedgeDS_in_place_list_halfedge<CGAL::I_Polyhedron_halfedge<CGAL::HalfedgeDS_halfedge_base<CGAL::HalfedgeDS_list_types<CGAL::Epeck, CGAL::I_Polyhedron_derived_items_3<CGAL::Polyhedron_items_3>, std::allocator<int>>>>>>> *>, CGAL::Polyhedron_3<CGAL::Epeck> &>' requested here
    insert(first, beyond,std::forward<T>(t)...);
    ^
/Users/armando/SetSolver_git/SetSolver/projects/helperprograms/test_AABB_tree/test_AABB_tree_3_to_post.C:66:8: note: in instantiation of function template specialization
'CGAL::AABB_tree<CGAL::AABB_traits<CGAL::Epeck,
CGAL::AABB_halfedge_graph_segment_primitive<CGAL::Polyhedron_3<CGAL::Epeck>>>>::rebuild<std::__wrap_iter<CGAL::internal::In_place_list_iterator<CGAL::HalfedgeDS_in_place_list_halfedge<CGAL::I_Polyhedron_halfedge<CGAL::HalfedgeDS_halfedge_base<CGAL::HalfedgeDS_list_types<CGAL::Epeck,
CGAL::I_Polyhedron_derived_items_3<CGAL::Polyhedron_items_3>, std::allocator<int>>>>>,
std::allocator<CGAL::HalfedgeDS_in_place_list_halfedge<CGAL::I_Polyhedron_halfedge<CGAL::HalfedgeDS_halfedge_base<CGAL::HalfedgeDS_list_types<CGAL::Epeck,
CGAL::I_Polyhedron_derived_items_3<CGAL::Polyhedron_items_3>, std::allocator<int>>>>>>> *>, CGAL::Polyhedron_3<CGAL::Epeck> &>' requested here
  tree.rebuild( my_hedges.begin(), my_hedges.end(), graph );
       ^
/Users/armando/SetSolver_git/SetSolver/projects/helperprograms/test_AABB_tree/test_AABB_tree_3_to_post.C:132:3:
note: in instantiation of function template specialization 'run<CGAL::Epeck,
CGAL::Polyhedron_3<CGAL::Epeck>>' requested here
  run<K>(polyhedron);
  ^
/Users/armando/SetSolver_hg/CGAL-4.14.3/include/CGAL/AABB_halfedge_graph_segment_primitive.h:112:6: note: candidate function not viable: no known conversion from
'CGAL::internal::In_place_list_iterator<CGAL::HalfedgeDS_in_place_list_halfedge<CGAL::I_Polyhedron_halfedge<CGAL::HalfedgeDS_halfedge_base<CGAL::HalfedgeDS_list_types<CGAL::Epeck, CGAL::I_Polyhedron_derived_items_3<CGAL::Polyhedron_items_3>,
std::allocator<int>>>>>, std::allocator<CGAL::HalfedgeDS_in_place_list_halfedge<CGAL::I_Polyhedron_halfedge<CGAL::HalfedgeDS_halfedge_base<CGAL::HalfedgeDS_list_types<CGAL::Epeck,
CGAL::I_Polyhedron_derived_items_3<CGAL::Polyhedron_items_3>, std::allocator<int>>>>>>>' to 'CGAL::AABB_halfedge_graph_segment_primitive<CGAL::Polyhedron_3<CGAL::Epeck>>::ED' (aka
'HDS_edge<In_place_list_iterator<CGAL::HalfedgeDS_in_place_list_halfedge<CGAL::I_Polyhedron_halfedge<CGAL::HalfedgeDS_halfedge_base<CGAL::HalfedgeDS_list_types<CGAL::Epeck, CGAL::I_Polyhedron_derived_items_3<CGAL::Polyhedron_items_3>,
std::allocator<int>>>>>, std::allocator<CGAL::HalfedgeDS_in_place_list_halfedge<CGAL::I_Polyhedron_halfedge<CGAL::HalfedgeDS_halfedge_base<CGAL::HalfedgeDS_list_types<CGAL::Epeck,
CGAL::I_Polyhedron_derived_items_3<CGAL::Polyhedron_items_3>, std::allocator<int>>>>>>>>') for 1st argument
  ED make_id(ED ed, const HalfedgeGraph&, Tag_true)
     ^
/Users/armando/SetSolver_hg/CGAL-4.14.3/include/CGAL/AABB_halfedge_graph_segment_primitive.h:117:39: note: candidate function not viable: no known conversion from
'CGAL::internal::In_place_list_iterator<CGAL::HalfedgeDS_in_place_list_halfedge<CGAL::I_Polyhedron_halfedge<CGAL::HalfedgeDS_halfedge_base<CGAL::HalfedgeDS_list_types<CGAL::Epeck, CGAL::I_Polyhedron_derived_items_3<CGAL::Polyhedron_items_3>,
std::allocator<int>>>>>, std::allocator<CGAL::HalfedgeDS_in_place_list_halfedge<CGAL::I_Polyhedron_halfedge<CGAL::HalfedgeDS_halfedge_base<CGAL::HalfedgeDS_list_types<CGAL::Epeck,
CGAL::I_Polyhedron_derived_items_3<CGAL::Polyhedron_items_3>, std::allocator<int>>>>>>>' to 'CGAL::AABB_halfedge_graph_segment_primitive<CGAL::Polyhedron_3<CGAL::Epeck>>::ED' (aka
'HDS_edge<In_place_list_iterator<CGAL::HalfedgeDS_in_place_list_halfedge<CGAL::I_Polyhedron_halfedge<CGAL::HalfedgeDS_halfedge_base<CGAL::HalfedgeDS_list_types<CGAL::Epeck, CGAL::I_Polyhedron_derived_items_3<CGAL::Polyhedron_items_3>,
std::allocator<int>>>>>, std::allocator<CGAL::HalfedgeDS_in_place_list_halfedge<CGAL::I_Polyhedron_halfedge<CGAL::HalfedgeDS_halfedge_base<CGAL::HalfedgeDS_list_types<CGAL::Epeck,
CGAL::I_Polyhedron_derived_items_3<CGAL::Polyhedron_items_3>, std::allocator<int>>>>>>>>') for 1st argument
  std::pair<ED, const HalfedgeGraph*> make_id(ED ed, const HalfedgeGraph& fg, Tag_false)
                                      ^
1 error generated.
make[2]: *** [projects/helperprograms/test_AABB_tree/CMakeFiles/test_AABB_tree_3_to_post.dir/test_AABB_tree_3_to_post.C.o] Error 1
make[1]: *** [projects/helperprograms/test_AABB_tree/CMakeFiles/test_AABB_tree_3_to_post.dir/all] Error 2
make: *** [all] Error 2

 */



--


C. Armando Duarte, Ph.D.
Nathan Newmark Distinguished Professor

Dept. Civil and Environmental Engin.
2118 Newmark Laboratory MC 250
University of Illinois at Urbana-Champaign
205 North Mathews Av.
Urbana, Illinois 61801 USA
http://gfem.cee.illinois.edu/<http://gfem.cee.illinois.edu/>

https://www.youtube.com/channel/UC6wlfOnwRTYD0Tb_rfDTbTA


--
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.19+.

Top of Page