Skip to Content.
Sympa Menu

cgal-discuss - Re: [cgal-discuss] Arrangement_with_history::Induced_edge_iterator problem

Subject: CGAL users discussion list

List archive

Re: [cgal-discuss] Arrangement_with_history::Induced_edge_iterator problem


Chronological Thread 
  • From: Efi Fogel <>
  • To:
  • Subject: Re: [cgal-discuss] Arrangement_with_history::Induced_edge_iterator problem
  • Date: Fri, 28 Sep 2007 01:13:40 +0200

Martin Baeker wrote:
Dear Efi,

thanks a lot for your patience. I think I am getting closer, but one
thing is still not working.
I am using the following code fragment:

Arr_2::Induced_edge_iterator eit;
for (cit = arr.curves_begin(); cit != arr.curves_end(); ++cit) {
std::cout << std::endl << "Curve level:" << std::endl << *cit
<< std::endl ;
std::cout << "Edge level:" << std::endl;
//traversal of the edges of the current curve
for (eit = arr.induced_edges_begin(cit); eit != arr.induced_edges_end(cit); ++eit) {
std::cout << eit->curve() << std::endl ; // ERROR
}
}

However, when I try to compile this, the compiler complains about the line
marked with ERROR because eit "has no element called curve()".

I am puzzled by this because the manual says that
Induced_edge_iterator returns a halfedge handle, and this does have a
curve() function, doesn't it?
I believe it says that the value type of Induced_edge_iterator is Halfedge_handle, so the correct statement should be:

std::cout << (*eit)->curve() << std::endl;

The following construction works:
Arr_2::Edge_iterator eit2;
for (eit2 = arr.edges_begin(); eit2 != arr.edges_end(); ++eit2)
{
std::cout << "[" << eit2->curve() << std::endl;
}
but for my application I want to travel over the edges curve-wise. Can
you tell me how I have to do it to make it work?


BTW, there is a small typo in the manual:
The class is not
Arrangement_with_history_2::Induced_edges_iterator
but
Arrangement_with_history_2::Induced_edge_iterator
Would be nice if you could correct this.

Thanks again,

Martin.


Priv.-Doz. Dr. Martin Bäker
Institut für Werkstoffe
Technische Universität Braunschweig
Langer Kamp 8
38106 Braunschweig
Germany
Tel.: 00-49-531-391-3073
Fax 00-49-531-391-3058
e-mail <>-- You are currently subscribed to cgal-discuss.
To unsubscribe or access the archives, go to
https://lists-sop.inria.fr/wws/info/cgal-discuss
--
____ _ ____ _
/_____/_) o /__________ __ //
(____ ( ( ( (_/ (_/-(-'_(/
_/





Archive powered by MHonArc 2.6.16.

Top of Page