Skip to Content.
Sympa Menu

cgal-discuss - Re: [cgal-discuss] How to use Arr_curve_data_traits_2 with Arr_Bezier_curve_traits_2?

Subject: CGAL users discussion list

List archive

Re: [cgal-discuss] How to use Arr_curve_data_traits_2 with Arr_Bezier_curve_traits_2?


Chronological Thread 
  • From: Stzpz <>
  • To:
  • Subject: Re: [cgal-discuss] How to use Arr_curve_data_traits_2 with Arr_Bezier_curve_traits_2?
  • Date: Tue, 18 Jan 2011 11:28:05 +0800
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :content-type; b=UCfisWStWNuSjDQYvMKFiF86vzGo4ZV1o2L7tgyrEYCBU4EFqMjaBojD68Gq/2DA/H 9/0tJb78BjHD9MNZFAEUzQiwB+SPodLlrZAD2ER1jIAFWEyzaOZDiNzgE5LsX+38AlUF arQ1+BuTwpTTCjvQ5isF6mUexoEb6nLm8Fyjw=

It worked. Thank you very much eriC!


2011/1/17 Eric Berberich <>
stzpz wrote:
Hello all,

I want to use Arr_Bezier_curve_traits_2 arrangement with an auxiliary data
attached to each Bezier curve, so I use Arr_curve_data_traits_2 for that
with the following code:

// ==== Code begin ====
#include <CGAL/basic.h>
#include <CGAL/Cartesian.h>
#include <CGAL/CORE_algebraic_number_traits.h>
#include <CGAL/Arr_Bezier_curve_traits_2.h>
#include <CGAL/Arrangement_2.h>
#include <CGAL/Arr_curve_data_traits_2.h>

typedef CGAL::CORE_algebraic_number_traits              Nt_traits;
typedef Nt_traits::Rational                                       NT;
typedef Nt_traits::Rational                                       Rational;
typedef Nt_traits::Algebraic                                     Algebraic;
typedef CGAL::Cartesian<Rational>                           Rat_kernel;
typedef CGAL::Cartesian<Algebraic>                         Alg_kernel;
typedef CGAL::Arr_Bezier_curve_traits_2<Rat_kernel, Alg_kernel, Nt_traits>   Traits_org_2;
typedef CGAL::Arr_curve_data_traits_2<Traits_org_2, unsigned int>             Traits_2;

// *** Compile error on the following line ***
typedef Traits_2::Curve_2                               Bezier_curve_num_2;
// *** Compile error on the above line ***

typedef CGAL::Arrangement_2<Traits_2>                   Arrangement_2;

int main()
{
   return 0;
}
// ==== Code end ====

But this simple program can not compile successfully with the following
message:

/home/stzpz/testcgal/test.cpp:19:   instantiated from here
/usr/include/CGAL/Arr_curve_data_traits_2.h:86: error: no type named
'Multiplicity' in 'class
CGAL::Arr_Bezier_curve_traits_2<CGAL::Cartesian<CORE::BigRat>,
CGAL::Cartesian<CORE::Expr>, CGAL::CORE_algebraic_number_traits,
CGAL::Bezier_bounding_rational_traits<CGAL::Cartesian<CORE::BigRat> > >'

I think the problem is caused by the following line,
    typedef Traits_2::Curve_2                              Bezier_curve_num_2;
but I don't know how to fix it.

Is there any suggestion?

Thanks!

Stzpz



Apply the following fix. We we solve the issue for the next public release.

eriC


Index: Arr_Bezier_curve_traits_2.h
===================================================================
--- Arr_Bezier_curve_traits_2.h (revision 60761)
+++ Arr_Bezier_curve_traits_2.h (working copy)
@@ -99,6 +99,9 @@
                          Nt_traits,
                          Bounding_traits>             Point_2;

+  typedef unsigned int                                 Multiplicity;
+

+



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





Archive powered by MHonArc 2.6.16.

Top of Page