Skip to Content.
Sympa Menu

cgal-discuss - Re: exact constructions kernel + NEF polyhedra?

Subject: CGAL users discussion list

List archive

Re: exact constructions kernel + NEF polyhedra?


Chronological Thread 
  • From: Maarten Moesen <>
  • To:
  • Subject: Re: exact constructions kernel + NEF polyhedra?
  • Date: Mon, 17 Dec 2007 20:06:08 +0100
  • Organization: Katholieke Universiteit Leuven

Hi,

Here's my other problem. The following program, converting a
Polyhedron_3 to a Nef_polyhedron_3, compiles for the
Exact_predicates_exact_constructions_kernel, but not for the
Exact_predicates_exact_constructions_kernel_with_sqrt
(linux32, g++ 4.0, CGAL 3.3.1)

Error messages:

test.cpp:30: instantiated from here
/usr/local/CGAL-3.3/include/CGAL/Nef_S2/Normalizing.h:324: error: no
matching function for call to ‘CORE::Expr::Expr(CGAL::Null_tag&)’

test.cpp:30: instantiated from here
/usr/local/CGAL-3.3/include/CGAL/Nef_S2/Normalizing.h:300: error: no
match for call to ‘(CGAL::Null_functor) (CORE::Expr, CGAL::Null_tag&,
CGAL::Null_tag&)’

test.cpp:30: instantiated from here
/usr/local/CGAL-3.3/include/CGAL/number_utils.h:105: error: no match for
call to ‘(CGAL::Null_functor) (const CGAL::Null_tag&, const
CGAL::Null_tag&)’

I get similar error messages with and without
#define CGAL_DONT_USE_LAZY_KERNEL 1

Thanks,

Maarten

The code:
#define CGAL_DONT_USE_LAZY_KERNEL 1 // Comment me!

#include <CGAL/Exact_predicates_exact_constructions_kernel_with_sqrt.h>
#include <CGAL/Exact_predicates_exact_constructions_kernel.h>
#include <CGAL/Polyhedron_3.h>
#include <CGAL/IO/Polyhedron_iostream.h>
#include <CGAL/Nef_polyhedron_3.h>
#include <fstream>

typedef CGAL::Exact_predicates_exact_constructions_kernel_with_sqrt
PolyKernel;
typedef CGAL::Nef_polyhedron_3<PolyKernel> Nef_polyhedron;
typedef CGAL::Polyhedron_3< PolyKernel > Polyhedron;

int main(int argc, char ** argv)
{
Polyhedron P;

{
std::cout << "Reading polyhedron" << std::endl;
std::ifstream polyFile;
polyFile.open("polyhedron.off");
if (!polyFile.is_open())
std::cout << "Could not open file!" << std::endl;
else
polyFile >> P;

polyFile.close();
}

Nef_polyhedron N(P);


return 0;
}

--
ir. Maarten Moesen
Department of Metallurgy and Materials Engineering (MTM)
K.U.Leuven
Kasteelpark Arenberg 44 - Bus 02450
B-3001 Heverlee, Belgium
tel. +32 (0)16 32 13 17
fax. +32 (0)16 32 19 90


Disclaimer: http://www.kuleuven.be/cwis/email_disclaimer.htm



Archive powered by MHonArc 2.6.16.

Top of Page