Skip to Content.
Sympa Menu

cgal-discuss - [cgal-discuss] Creation of Point_2 (cgal 4.12)

Subject: CGAL users discussion list

List archive

[cgal-discuss] Creation of Point_2 (cgal 4.12)


Chronological Thread 
  • From: Dinesh Shetty <>
  • To:
  • Subject: [cgal-discuss] Creation of Point_2 (cgal 4.12)
  • Date: Thu, 26 Apr 2018 10:03:39 -0500
  • Authentication-results: mail3-smtp-sop.national.inria.fr; spf=None ; spf=Pass ; spf=None
  • Ironport-phdr: 9a23:qUwquRPxCGjYmQVHGuYl6mtUPXoX/o7sNwtQ0KIMzox0Lfj8rarrMEGX3/hxlliBBdydt6ofzbKO+4nbGkU4qa6bt34DdJEeHzQksu4x2zIaPcieFEfgJ+TrZSFpVO5LVVti4m3peRMNQJW2aFLduGC94iAPERvjKwV1Ov71GonPhMiryuy+4ZLebxlGiTanfb9+MAi9oBnMuMURnYZsMLs6xAHTontPdeRWxGdoKkyWkh3h+Mq+/4Nt/jpJtf45+MFOTav1f6IjTbxFFzsmKHw65NfqtRbYUwSC4GYXX3gMnRpJBwjF6wz6Xov0vyDnuOdxxDWWMMvrRr0yRD+s7bpkSAXwhSkHOTA383zZhNJsg69Auh2tuwZyzpTIbI2JNvdzeL7Wc9MARWpGW8ZcTyJPAoK6b4QRFOoBPftToZT9p1QQsRu+GQmtD/7oxzBVh3/227M10/8hEQ3c3QwgHskOv2jPodX6MacdS+G1zK3SwTrfaPNW3C7w5Y7VeR4vpvGMWKh/ccvXyUQ3CwzFgU+fqYj/MzOSzOQNvG6W5PdjW+K3k2MrtR19rzy1ysovioTFnJwZxk7Y+Slj3Yo4J8O0RUhmatC+CpRQrTuVN45uT8MiXW5ovCE6x6UDuZGhfSgKzI0rxwfca/CbaoSI7A/vWeSPLTtii3Jlf7W/hxm28Ue+0OHzSs600FNSoipElNnDqGwN2gTN5sSbTvZx5ESs1DaV2wzN9O1IPVo4mbfZJpI/2rIwk4AcsUXHHi/4gkX2i6qWe1059eip7eTofK7mpp+GO491iwH+Kbghl9ewAeQ9KAcOXmyb9f6g273k+E31WK9KgeEukqnFrJDaItwWqbK2AwBP1oYv8guwDza90NsEgHkHN0lFdQmcj4npPlHOOOr3Ae2+g1SqijdrxurJMqfvApXXfTD/l+Lqcr95rkJd0wEu1st35pROC7hHLuigdFX2sYn0Dxk0KAz8+ObqFMlsntcSWGSCGa/fMaLJuneH4+suJ6+HY4pD62W1EOQs+/O71SxxolQaZ6T8hcJGOkD9JexvJgCiWVSph94AFWkQuQ9nFb7ljVSDVXhYYHPgBvtgtAF+M5qvCML4fq7omKaIhX7pEZhfZ2QAAVeJQy+xKte0HswUYSfXGfdP1zwJUb/7Fd0k3BCq8Rb5k/9pd7WOvCIfsp3n2Z5+4OiBzRw=

I have declared following
#include<CGAL/Exact_predicates_exact_constructions_kernel.h>
typedef CGAL::Exact_predicates_exact_constructions_kernel             Kernel;
typedef Kernel::Point_2 Point;

The fololling line seems to cause problem

auto status =ld(Point(crd.x, crd.y));

crd.x and crd.y are of type CGAL::Gmpq

I thought this would trigger following constructor
Point_2 (const Kernel::FT &x, const Kernel::FT &y)

The compiler error is listed below
3>D:\PE\PE_Software\3rdParty\CGAL\CGAL-4.12\include\CGAL/Lazy.h(1743): error C2665: 'CGAL::exact' : none of the 15 overloads could convert all the argument types
3>          D:\PE\PE_Software\3rdParty\CGAL\CGAL-4.12\include\CGAL/Lazy.h(105): could be 'const long double &CGAL::exact(const long double &)'
3>          D:\PE\PE_Software\3rdParty\CGAL\CGAL-4.12\include\CGAL/Lazy.h(106): or       'const double &CGAL::exact(const double &)'
3>          D:\PE\PE_Software\3rdParty\CGAL\CGAL-4.12\include\CGAL/Lazy.h(107): or       'const float &CGAL::exact(const float &)'
3>          D:\PE\PE_Software\3rdParty\CGAL\CGAL-4.12\include\CGAL/Lazy.h(108): or       'const int &CGAL::exact(const int &)'
3>          D:\PE\PE_Software\3rdParty\CGAL\CGAL-4.12\include\CGAL/Lazy.h(109): or       'const unsigned int &CGAL::exact(const unsigned int &)'
3>          D:\PE\PE_Software\3rdParty\CGAL\CGAL-4.12\include\CGAL/Lazy.h(110): or       'const long &CGAL::exact(const long &)'
3>          D:\PE\PE_Software\3rdParty\CGAL\CGAL-4.12\include\CGAL/Lazy.h(111): or       'const unsigned long &CGAL::exact(const unsigned long &)'
3>          D:\PE\PE_Software\3rdParty\CGAL\CGAL-4.12\include\CGAL/Lazy.h(113): or       'const __int64 &CGAL::exact(const __int64 &)'
3>          D:\PE\PE_Software\3rdParty\CGAL\CGAL-4.12\include\CGAL/Lazy.h(114): or       'const unsigned __int64 &CGAL::exact(const unsigned __int64 &)'
3>          D:\PE\PE_Software\3rdParty\CGAL\CGAL-4.12\include\CGAL/Lazy.h(116): or       'const CGAL::Return_base_tag &CGAL::exact(const CGAL::Return_base_tag &)'
3>          D:\PE\PE_Software\3rdParty\CGAL\CGAL-4.12\include\CGAL/Lazy.h(117): or       'const CGAL::Null_vector &CGAL::exact(const CGAL::Null_vector &)'
3>          D:\PE\PE_Software\3rdParty\CGAL\CGAL-4.12\include\CGAL/Lazy.h(118): or       'const CGAL::Origin &CGAL::exact(const CGAL::Origin &)'
3>          D:\PE\PE_Software\3rdParty\CGAL\CGAL-4.12\include\CGAL/Lazy.h(119): or       'const CGAL::Orientation &CGAL::exact(const CGAL::Orientation &)'
3>          D:\PE\PE_Software\3rdParty\CGAL\CGAL-4.12\include\CGAL/Lazy.h(120): or       'const CGAL::Bbox_2 &CGAL::exact(const CGAL::Bbox_2 &)'
3>          D:\PE\PE_Software\3rdParty\CGAL\CGAL-4.12\include\CGAL/Lazy.h(121): or       'const CGAL::Bbox_3 &CGAL::exact(const CGAL::Bbox_3 &)'
3>          while trying to match the argument list '(const CGAL::Gmpq)'
3>          D:\PE\PE_Software\3rdParty\CGAL\CGAL-4.12\include\CGAL/Point_2.h(88) : see reference to function template instantiation 'CGAL::Point_2<R_> CGAL::Lazy_construction<LK,AC,EC>::operator ()<CGAL::Return_base_tag,T1,T2>(const L0 &,const L1 &,const L2 &) const' being compiled
3>          with
3>          [
3>              R_=CGAL::Epeck,
3>              LK=CGAL::Epeck,
3>              AC=CGAL::CartesianKernelFunctors::Construct_point_2<CGAL::Simple_cartesian<CGAL::Interval_nt_advanced>>,
3>              EC=CGAL::CartesianKernelFunctors::Construct_point_2<CGAL::Simple_cartesian<CGAL::Gmpq>>,
3>              T1=CGAL::Gmpq,
3>              T2=CGAL::Gmpq,
3>              L0=CGAL::Return_base_tag,
3>              L1=CGAL::Gmpq,
3>              L2=CGAL::Gmpq
3>          ]
3>          D:\PE\PE_Software\3rdParty\CGAL\CGAL-4.12\include\CGAL/Point_2.h(90) : see reference to function template instantiation 'CGAL::Point_2<R_> CGAL::Lazy_construction<LK,AC,EC>::operator ()<CGAL::Return_base_tag,T1,T2>(const L0 &,const L1 &,const L2 &) const' being compiled
3>          with
3>          [
3>              R_=CGAL::Epeck,
3>              LK=CGAL::Epeck,
3>              AC=CGAL::CartesianKernelFunctors::Construct_point_2<CGAL::Simple_cartesian<CGAL::Interval_nt_advanced>>,
3>              EC=CGAL::CartesianKernelFunctors::Construct_point_2<CGAL::Simple_cartesian<CGAL::Gmpq>>,
3>              T1=CGAL::Gmpq,
3>              T2=CGAL::Gmpq,
3>              L0=CGAL::Return_base_tag,
3>              L1=CGAL::Gmpq,
3>              L2=CGAL::Gmpq
3>          ]
3>          src\DdmMesh.cpp(196) : see reference to function template instantiation 'CGAL::Point_2<R_>::Point_2<CGAL::Gmpq,CGAL::Gmpq>(const T1 &,const T2 &)' being compiled
3>          with
3>          [
3>              R_=CGAL::Epeck,
3>              T1=CGAL::Gmpq,
3>              T2=CGAL::Gmpq
3>          ]

if I convert from CGAl::gmpq to double it works.

Regards
Dinesh



Archive powered by MHonArc 2.6.18.

Top of Page