Skip to Content.
Sympa Menu

cgal-discuss - Re: [cgal-discuss] Adding data to Delaunay_d::Point_d

Subject: CGAL users discussion list

List archive

Re: [cgal-discuss] Adding data to Delaunay_d::Point_d


Chronological Thread 
  • From: Adam Getchell <>
  • To:
  • Subject: Re: [cgal-discuss] Adding data to Delaunay_d::Point_d
  • Date: Mon, 27 Oct 2014 21:59:40 -0700

Okay, never mind. I manually installed CGAL 4.5, which gives me the Epick_d.h
kernel.

Now I have the usual problem associated with installing CGAL with Eigen. I
manually specified the EIGEN3_INCLUDE_DIR, but it was ignored:

┌─[adam][Hapkido][~/CGAL-4.5]
└─▪ cd /usr/local/include/eigen3
┌─[adam][Hapkido][±][master ✓][/usr/local/include/eigen3]
└─▪ ll
total 8
drwxr-xr-x 5 adam admin 170 Oct 16 17:03 .
drwxr-xr-x 3 adam admin 102 Oct 16 15:57 ..
drwxr-xr-x 35 adam admin 1190 Oct 16 17:13 Eigen
-rw-r--r-- 1 adam admin 216 Aug 4 03:51
signature_of_eigen3_matrix_library
drwxr-xr-x 3 adam admin 102 Oct 16 15:58 unsupported
┌─[adam][Hapkido][±][master ✓][/usr/local/include/eigen3]
└─▪ cd ~/CGAL-4.5
┌─[adam][Hapkido][~/CGAL-4.5]
└─▪ mkdir build
┌─[adam][Hapkido][~/CGAL-4.5]
└─▪ cd build
┌─[adam][Hapkido][~/CGAL-4.5/build]
└─▪ cmake -DEIGEN3_INCLUDE_DIR=/usr/local/include/eigen3 ..
-- The CXX compiler identification is AppleClang 6.0.0.6000054
-- The C compiler identification is AppleClang 6.0.0.6000054
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
== Setting paths ==
-- Build CGAL from release in directory CGAL-4.5
-- Packagenames: CGAL-4.5
== Setting paths (DONE) ==

== Generate version files ==
-- CGAL_MAJOR_VERSION=4
-- CGAL_MINOR_VERSION=5
-- CGAL_BUGFIX_VERSION=0
-- CGAL_SONAME_VERSION=10
-- CGAL_SOVERSION =10.0.4
-- CGAL_REFERENCE_CACHE_DIR=
-- Building shared libraries
-- Targetting Unix Makefiles
-- Using /usr/bin/c++ compiler.
-- DARWIN_VERSION=14
-- Mac Leopard detected
-- USING CMake version: 3.0.2
-- System: Darwin
== Generate version files (DONE) ==

== Set up flags ==
-- Build type: Release
-- USING CXXFLAGS = ' -O3 -DNDEBUG'
-- USING LDFLAGS = ' '
== Set up flags (DONE) ==

== Detect external libraries ==
-- External libraries supported:
GMP;GMPXX;MPFR;ZLIB;OpenGL;LEDA;MPFI;RS;RS3;OpenNL;Eigen3;BLAS;LAPACK;QGLViewer;ESBTL;Coin3D;NTL;IPE
-- Preconfiguring library: GMP ...
-- Found GMP: /usr/local/lib/libgmp.dylib
-- GMP has been preconfigured:
-- UseGMP-file:
-- GMP include: /usr/local/include
-- GMP libraries: /usr/local/lib/libgmp.dylib
-- GMP definitions:
-- USING GMP_VERSION = '6.0.0'
-- Preconfiguring library: MPFR ...
-- Found MPFR: /usr/local/lib/libmpfr.dylib
-- MPFR has been preconfigured:
-- UseMPFR-file:
-- MPFR include: /usr/local/include
-- MPFR libraries: /usr/local/lib/libmpfr.dylib
-- MPFR definitions:
-- USING MPFR_VERSION = '3.1.2'
-- Boost version: 1.56.0
-- Found the following Boost libraries:
-- thread
-- system
-- Boost include: /usr/local/include
-- Boost libraries:
/usr/local/lib/libboost_thread-mt.dylib;/usr/local/lib/libboost_system-mt.dylib
-- Boost definitions:
-- USING BOOST_VERSION = '1.56.0'
== Detect external libraries (DONE) ==

== Write compiler_config.h ==
-- Performing Test CGAL_CFG_BOOST_VARIANT_SWAP_BUG - Success
-- Performing Test CGAL_CFG_DENORMALS_COMPILE_BUG - Success
-- Performing Test CGAL_CFG_FPU_ROUNDING_MODE_UNWINDING_VC_BUG - Success
-- Performing Test CGAL_CFG_IEEE_754_BUG - Success
-- Performing Test CGAL_CFG_ISTREAM_INT_BUG - Success
-- Performing Test CGAL_CFG_MATCHING_BUG_5 - Success
-- Performing Test CGAL_CFG_MATCHING_BUG_6 - Success
-- Performing Test CGAL_CFG_MATCHING_BUG_7 - Success
-- Performing Test CGAL_CFG_MATCHING_BUG_8 - Success
-- Performing Test CGAL_CFG_NESTED_CLASS_FRIEND_DECLARATION_BUG - Failed
-- Performing Test CGAL_CFG_NO_LIMITS - Success
-- Performing Test CGAL_CFG_NO_NEXTAFTER - Success
-- Performing Test CGAL_CFG_NO_STL - Success
-- Performing Test CGAL_CFG_NO_WARNING_CPP_DIRECTIVE_BUG - Success
-- Performing Test CGAL_CFG_NUMERIC_LIMITS_BUG - Success
-- Performing Test CGAL_CFG_OUTOFLINE_MEMBER_DEFINITION_BUG - Success
-- Performing Test CGAL_CFG_TEMPLATE_IN_DEFAULT_PARAMETER_BUG - Success
-- Performing Test CGAL_CFG_TYPENAME_BEFORE_DEFAULT_ARGUMENT_BUG - Success
-- Performing Test CGAL_CFG_USING_BASE_MEMBER_BUG_2 - Success
== Write compiler_config.h (DONE) ==

== Generating build files ==
Configuring libCGAL
-- Requested component: MPFR
-- Requested component: GMP
libCGAL is configured
-- Sources for CGAL component library 'CGAL_Core' detected
Configuring libCGAL_Core
-- Requested component: MPFR
-- Requested component: GMP
libCGAL_Core is configured
-- Sources for CGAL component library 'CGAL_ImageIO' detected
Configuring libCGAL_ImageIO
-- Found OpenGL: /System/Library/Frameworks/OpenGL.framework
-- Found ZLIB: /usr/lib/libz.dylib (found version "1.2.5")
-- OpenGL include: /System/Library/Frameworks/OpenGL.framework
-- OpenGL libraries:
/System/Library/Frameworks/AGL.framework;/System/Library/Frameworks/OpenGL.framework
-- USING ZLIB_VERSION = '1.2.5'
-- Requested component: MPFR
-- Requested component: GMP
libCGAL_ImageIO is configured
-- Sources for CGAL component library 'CGAL_Qt3' detected
Configuring libCGAL_Qt3
-- libCGAL_Qt3 needs Qt3, cannot be configured.
-- Sources for CGAL component library 'CGAL_Qt4' detected
Configuring libCGAL_Qt4
-- Looking for Q_WS_X11
-- Looking for Q_WS_X11 - not found
-- Looking for Q_WS_WIN
-- Looking for Q_WS_WIN - not found
-- Looking for Q_WS_QWS
-- Looking for Q_WS_QWS - not found
-- Looking for Q_WS_MAC
-- Looking for Q_WS_MAC - found
-- Looking for QT_MAC_USE_COCOA
-- Looking for QT_MAC_USE_COCOA - found
-- USING OPENGL_VERSION = '2.1'
-- USING QT4_VERSION = '4.8.6'
-- OpenGL include: /System/Library/Frameworks/OpenGL.framework
-- OpenGL libraries:
/System/Library/Frameworks/AGL.framework;/System/Library/Frameworks/OpenGL.framework
-- OpenGL definitions:
-- Qt4 include:
/usr/local/Cellar/qt/4.8.6/include;/usr/local/Cellar/qt/4.8.6/lib/QtCore.framework
-- Qt4 libraries:
/usr/local/Cellar/qt/4.8.6/lib/QtOpenGL.framework;/usr/local/Cellar/qt/4.8.6/lib/QtGui.framework;/usr/local/Cellar/qt/4.8.6/lib/QtCore.framework
-- Qt4 definitions:
-- moc executable: /usr/local/Cellar/qt/4.8.6/bin/moc
-- uic executable: /usr/local/Cellar/qt/4.8.6/bin/uic
-- Requested component: MPFR
-- Requested component: GMP
libCGAL_Qt4 is configured
-- Sources for CGAL component libraries
'CGAL_Core;CGAL_ImageIO;CGAL_Qt3;CGAL_Qt4' detected
== Generating build files (DONE) ==

-- Configuring done
-- Generating done
CMake Warning:
Manually-specified variables were not used by the project:

EIGEN3_INCLUDE_DIR


-- Build files have been written to: /Users/adam/CGAL-4.5/build

Doing ‘make’ and ‘make install’ and then compiling my program yields:

<elided>

Scanning dependencies of target unittests
[ 28%] Building CXX object CMakeFiles/unittests.dir/unittests/main.cpp.o
[ 42%] Building CXX object CMakeFiles/unittests.dir/unittests/PointTest.cpp.o
In file included from /Users/adam/CDT-plusplus/unittests/PointTest.cpp:2:
In file included from /Users/adam/CDT-plusplus/src/Point.h:4:
In file included from /usr/local/include/CGAL/Epick_d.h:22:
In file included from /usr/local/include/CGAL/NewKernel_d/Cartesian_base.h:24:
In file included from
/usr/local/include/CGAL/NewKernel_d/Cartesian_complete.h:23:
/usr/local/include/CGAL/NewKernel_d/function_objects_cartesian.h:309:31:
error:
no member named 'NoChange' in namespace 'Eigen'
m.conservativeResize(Eigen::NoChange, n);
~~~~~~~^
In file included from /Users/adam/CDT-plusplus/unittests/PointTest.cpp:2:
In file included from /Users/adam/CDT-plusplus/src/Point.h:4:
In file included from /usr/local/include/CGAL/Epick_d.h:22:
In file included from /usr/local/include/CGAL/NewKernel_d/Cartesian_base.h:25:
/usr/local/include/CGAL/NewKernel_d/Cartesian_LA_base.h:38:2: error: Eigen3 is
required
#error Eigen3 is required
^
/usr/local/include/CGAL/NewKernel_d/Cartesian_LA_base.h:39:10: fatal error:
'CGAL/NewKernel_d/LA_default/LA.h' file not found
#include <CGAL/NewKernel_d/LA_default/LA.h>

Adam Getchell
about.me/adamgetchell

> On Oct 27, 2014, at 8:22 PM, Adam Getchell
> <>
> wrote:
>
> Sebastien,
>
> Thank you for the advice. I’m missing something. This:
>
> #ifndef CDT_POINT_H
> #define CDT_POINT_H
>
> #include <CGAL/Lazy_exact_nt.h>
> #include <CGAL/Gmpq.h>
> #include <CGAL/Kernel_d/Point_d.h>
> #include <CGAL/Cartesian.h>
>
> typedef CGAL::Lazy_exact_nt<CGAL::Gmpq> > NT;
> typedef CGAL::Cartesian<NT> Kernel;
> CGAL::Point_d<Kernel> Point_d;
>
> class Point : public Point_d
> {
> public:
> Point() : Point_d()
> {
> }
> };
>
> #endif // CDT_POINT_H
>
> Produces:
>
> ┌─[adam][Hapkido][±][master ✗][~/CDT-plusplus]
> └─▪ ./build.sh
> -- The C compiler identification is AppleClang 6.0.0.6000054
> -- The CXX compiler identification is AppleClang 6.0.0.6000054
> -- Check for working C compiler: /usr/bin/cc
> -- Check for working C compiler: /usr/bin/cc -- works
> -- Detecting C compiler ABI info
> -- Detecting C compiler ABI info - done
> -- Check for working CXX compiler: /usr/bin/c++
> -- Check for working CXX compiler: /usr/bin/c++ -- works
> -- Detecting CXX compiler ABI info
> -- Detecting CXX compiler ABI info - done
> -- Build type: Release
> -- USING CXXFLAGS = ' -O3 -DNDEBUG'
> -- USING EXEFLAGS = '
> -Wl,-dylib_file,/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib:/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib
> '
> -- Targetting Unix Makefiles
> -- Using /usr/bin/c++ compiler.
> -- DARWIN_VERSION=14
> -- Mac Leopard detected
> -- Requested component: Core
> -- Requested component: MPFR
> -- Requested component: GMP
> -- Configuring done
> -- Generating done
> -- Build files have been written to: /Users/adam/CDT-plusplus/build
> Scanning dependencies of target cdt
> [ 14%] Building CXX object CMakeFiles/cdt.dir/src/cdt.cpp.o
> Linking CXX executable cdt
> [ 14%] Built target cdt
> Scanning dependencies of target unittests
> [ 28%] Building CXX object CMakeFiles/unittests.dir/unittests/main.cpp.o
> [ 42%] Building CXX object
> CMakeFiles/unittests.dir/unittests/PointTest.cpp.o
> In file included from /Users/adam/CDT-plusplus/unittests/PointTest.cpp:2:
> /Users/adam/CDT-plusplus/src/Point.h:9:41: error: expected unqualified-id
> typedef CGAL::Lazy_exact_nt<CGAL::Gmpq> > NT;
> ^
> /Users/adam/CDT-plusplus/src/Point.h:10:25: error: use of undeclared
> identifier
> 'NT'
> typedef CGAL::Cartesian<NT> Kernel;
> ^
> In file included from /Users/adam/CDT-plusplus/unittests/PointTest.cpp:2:
> In file included from /Users/adam/CDT-plusplus/src/Point.h:6:
> /usr/local/Cellar/cgal/4.4/include/CGAL/Kernel_d/Point_d.h:42:24: error:
> type
> 'int' cannot be used prior to '::' because it has no members
> class Point_d : public pR::Point_d_base
>
> plus more errors as detailed here:
>
> https://gist.github.com/acgetchell/6a31617bfd6839203553
>
> Adam Getchell
> about.me/adamgetchell
>
>> On Oct 27, 2014, at 2:21 AM, Sebastien Loriot (GeometryFactory)
>> <>
>> wrote:
>>
>> On 10/27/2014 10:14 AM, Adam Getchell wrote:
>>> Thanks Sebastien,
>>>
>>> Since I am looking for the most accurate possible triangulations, and
>>> calculations that don’t crash or compute incorrect results (after,
>>> possibly, months of runtime), should I use Homogenous_d?
>>>
>>> Is mpz_class an appropriate substitute for leda_integer under these
>>> conditions, or should I go obtain LEDA?
>>>
>>> I also looked at using the Epick_d kernel, but it does not appear to be
>>> present in CGAL 4.4.
>>
>> Epick_d is the one you should use. Robust and fast.
>>
>> If you can't you can try using
>> CGAL::Cartesian_d<CGAL::Lazy_exact_nt<CGAL::Gmpq> >
>>
>>
>> Sebastien.
>>
>>>
>>>
>>> Adam Getchell
>>> about.me/adamgetchell
>>>
>>>> On Oct 23, 2014, at 5:03 AM, Sebastien Loriot (GeometryFactory)
>>>> <>
>>>> wrote:
>>>>
>>>> On 10/23/2014 09:28 AM, Adam Getchell wrote:
>>>>> Hello all,
>>>>>
>>>>> Is there an equivalent of CGAL::Triangulation_vertex_base_with_info_3
>>>>> for Delaunay_d?
>>>>>
>>>>> From looking over the documentation, it appears that unlike
>>>>> Delaunay_triangulation_3 which is built on a
>>>>> Triangulation_vertex_base_3, Delaunay_d seems to be built on the
>>>>> Convex_hull_d?
>>>>>
>>>>> Where would be the best place to insert such data? I have, for example,
>>>>> written a Delaunay : public Delaunay_d which includes member functions
>>>>> such as number_of_cells() which are available in
>>>>> Delaunay_triangulation_3 but not implemented in Delaunay_d.
>>>>>
>>>>> Suggestions most appreciated.
>>>>>
>>>>> Adam Getchell
>>>>> about.me/adamgetchell
>>>>>
>>>>>
>>>> I just looked at the code and there is no elegant way to do it
>>>> (using a template parameter).
>>>> What you could try is create a traits class inheriting from the
>>>> recommended one and it might be sufficient to define a new Point_d
>>>> class with your info inheriting from traits::Point_d.
>>>>
>>>> Just a guess I haven't try whether it works.
>>>>
>>>> Sebastien.
>>>>
>>>> --
>>>> You are currently subscribed to cgal-discuss.
>>>> To unsubscribe or access the archives, go to
>>>> https://sympa.inria.fr/sympa/info/cgal-discuss
>>>>
>>>>
>>>
>>>
>>
>>
>> --
>> You are currently subscribed to cgal-discuss.
>> To unsubscribe or access the archives, go to
>> https://sympa.inria.fr/sympa/info/cgal-discuss
>




Archive powered by MHonArc 2.6.18.

Top of Page