Skip to Content.
Sympa Menu

cgal-discuss - Re: [cgal-discuss] How to convert Arrangement_with_history_2 to Arrangement_2?

Subject: CGAL users discussion list

List archive

Re: [cgal-discuss] How to convert Arrangement_with_history_2 to Arrangement_2?


Chronological Thread 
  • From: Efi Fogel <>
  • To:
  • Subject: Re: [cgal-discuss] How to convert Arrangement_with_history_2 to Arrangement_2?
  • Date: Sun, 26 Aug 2018 13:16:53 +0300
  • Authentication-results: mail3-smtp-sop.national.inria.fr; spf=None ; spf=Pass ; spf=None
  • Ironport-phdr: 9a23:5ZILlRQ4QHCxB3c/3s+/Egq2S9psv+yvbD5Q0YIujvd0So/mwa68bRaN2/xhgRfzUJnB7Loc0qyK6/+mATRIyK3CmUhKSIZLWR4BhJdetC0bK+nBN3fGKuX3ZTcxBsVIWQwt1Xi6NU9IBJS2PAWK8TW94jEIBxrwKxd+KPjrFY7OlcS30P2594HObwlSizexfbF/IA+qoQnNq8IbnZZsJqEtxxXTv3BGYf5WxWRmJVKSmxbz+MK994N9/ipTpvws6ddOXb31cKokQ7NYCi8mM30u683wqRbDVwqP6WACXWgQjxFFHhLK7BD+Xpf2ryv6qu9w0zSUMMHqUbw5Xymp4qF2QxHqlSgHLSY0/27ZisNyjKxVrhGvqQFhzYHIe4yaLuZyc7nHcN8GWWZMXMBcXDFBDIOmaIsPCvIMM+lWr4n8ulAArRy+BQayC+Pr1zRFgWH53aM70+QvFgHG0xIvH9YVvXTbqdX6LqYSUeSvwKbUyjXDaupb1DHg44bLahAsue+AUa50fMbLykQiFxnJgkuNpYHqJT+Zy+cAv3Sd4uF9T+ygkXQnpBt0ojW3xscjlI3JhoUNx1DB7yp5wYI1KcSgSE5/fNKoCZVQuzyZOodqWM8iTGZouCE1yr0Cp5G3ZjQFyJMixxLHavyHdZaH4g77WeqPPTt1gGhpdbG/ihqo70Ss1+LxWtOp3FtJsiZJitzMuWoM1xzX5MiHUPx9/kK51DmR2QDT6+9EIUc7laXFL54s2bEwlp8JvkTCGi/6gln5jKiTdkk84Oin9/znYqn6pp+bL4J7lg7+Pb4qmsCmHOs4MxMOUHSG+eSnz73u5lb5QbVPjv0uiKbVqpHaJcIBpq64GQBZyIgj6wzsRwuhhd8XlH1CIFNecw+clKDoPUvPKbb2F6SRmVOpxRplxrjoObLsBt2ZI3bCnrDucLJV5EtVyQ51xtdascEHQoodKe7+Dxei/OfTCQU0ZlTtkrTXTe5l34ZbYlqhR6qQMafcq1iNv7t9LOyFZYtTszH4eaF8u6zeyEQhkFpYRpGHmIMNYSnhTPtjKkSdJ3Hrh4VZSDpYjk8FVOXvzWa6f3tTanK1Bfxu4zg6DMe+Cd6GSNn92PqO2yC0GpAQbWdDWAiB

What makes you think that the Dual class does not accept Arrangement_with_history_2?
   ____  _        ____             _
  /_____/_) o    /__________  __  //
 (____ (   (    (    (_/ (_/-(-'_(/
                         _/




On Sun, 26 Aug 2018 at 12:15, Morteza Manavi <> wrote:
Thank you Efi,
But I don't want to delete CGAL::Dual because I need to construct a dual graph representation of the arrangement, and on the other hand I need to have curve handler that it's possible with use of Arrangement_with_history_2 class.
Apparently the Dual class does not accept Arrangement_with_history_2 as input and according to your answer I can't directly convert Arrangement_with_history_2 to Arrangement_2. I think, I must write my own dual graph class that accept Arrangement_with_history_2 as input.

Morteza.

On Sun, Aug 26, 2018 at 1:50 AM Efi Fogel <> wrote:
Hi Morteza,

If you really need to convert Arrangement_with_history_2 to Arrangement_2, then you would need to reconstruct Arrangement_2, but conceptually, everything you can do with Arrangement_2 you can also do with Arrangement_with_history_2.

Is it possible that you simply forgot to include the header that contains the definition of CGAL::Dual, namely, <CGAL/graph_traits_Dual_Arrangement_2.h> ?

Anyway, if you still have a problem, please paste a complete minimal program.

Efi
   ____  _        ____             _
  /_____/_) o    /__________  __  //
 (____ (   (    (    (_/ (_/-(-'_(/
                         _/




On Sat, 25 Aug 2018 at 16:00, Morteza Manavi <> wrote:
Hi, I want to use Dual class to construct a dual graph of my arrangement, but I get the compile error :
C2079: 'dual' uses undefined class 'CGAL::Dual<Arr_with_hist_2>'
and I think it's for Arrangement_with_history_2 that I use to define the arrangement in the code. Now I need to convert Arr_with_hist_2 to Arrangement_2 and I don't know how to do this?
my CGAL type definition :
typedef CGAL::Cartesian<CGAL::Exact_rational>                   Kernel;
typedef Kernel::Circle_2                                        Circle_2;
typedef Kernel::Segment_2                                       Segment_2;

typedef CGAL::Arr_circle_segment_traits_2<Kernel>         Circle_Segment_traits_2;
typedef std::string                                       Curve_Name;
typedef CGAL::Arr_consolidated_curve_data_traits_2
                   <Circle_Segment_traits_2, Curve_Name>  Traits_2;
typedef Traits_2::Point_2                                 TPoint_2;
typedef Traits_2::Curve_2                                 Curve_2;
typedef Traits_2::CoordNT                                 CoordNT;

typedef CGAL::Arr_face_extended_dcel<Traits_2 , unsigned int>   Dcel ;
typedef CGAL::Arrangement_with_history_2<Traits_2, Dcel>        Arr_with_hist_2;
typedef CGAL::Dual<Arr_with_hist_2>                             Dual_arrangement;
typedef CGAL::Arr_face_index_map<Arr_with_hist_2>               Face_index_map;



Archive powered by MHonArc 2.6.18.

Top of Page