mirror of https://github.com/CGAL/cgal
Merge remote-tracking branch 'origin/master' into Kd_tree-nice_print-danston
This commit is contained in:
commit
02c4575353
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(AABB_tree_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,13 +1,11 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(AABB_tree_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
||||
include(${CGAL_USE_FILE}) # Kept to test the old behaviour.
|
||||
|
||||
# create a target per cppfile
|
||||
file(
|
||||
GLOB cppfiles
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Advancing_front_surface_reconstruction_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Advancing_front_surface_reconstruction_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Algebraic_foundations_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,13 +1,11 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Algebraic_foundations_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED COMPONENTS Core)
|
||||
|
||||
include(${CGAL_USE_FILE})
|
||||
|
||||
# create a target per cppfile
|
||||
file(
|
||||
GLOB cppfiles
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Algebraic_kernel_d_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED COMPONENTS Core)
|
||||
|
|
@ -6,7 +6,6 @@ find_package(CGAL REQUIRED COMPONENTS Core)
|
|||
find_package(MPFI QUIET)
|
||||
|
||||
if(MPFI_FOUND AND NOT CGAL_DISABLE_GMP)
|
||||
include(${CGAL_USE_FILE})
|
||||
include(${MPFI_USE_FILE})
|
||||
include(CGAL_VersionUtils)
|
||||
create_single_source_cgal_program("Compare_1.cpp")
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Algebraic_kernel_d_Tests)
|
||||
|
||||
# CGAL and its components
|
||||
|
|
@ -28,8 +28,6 @@ endif()
|
|||
# include for local directory
|
||||
include_directories(BEFORE include)
|
||||
|
||||
include(${CGAL_USE_FILE})
|
||||
|
||||
# Creating entries for all .cpp/.C files with "main" routine
|
||||
# ##########################################################
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Algebraic_kernel_for_circles_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Algebraic_kernel_for_spheres_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Alpha_shapes_2_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Alpha_shapes_2_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Alpha_shapes_3_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Alpha_shapes_3_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,13 +1,11 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Apollonius_graph_2_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED COMPONENTS Core)
|
||||
|
||||
include(${CGAL_USE_FILE})
|
||||
|
||||
# create a target per cppfile
|
||||
file(
|
||||
GLOB cppfiles
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Apollonius_graph_2_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Arithmetic_kernel_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED COMPONENTS Core)
|
||||
|
|
@ -10,7 +10,6 @@ find_package(GMP QUIET)
|
|||
|
||||
if(GMP_FOUND)
|
||||
|
||||
include(${CGAL_USE_FILE})
|
||||
include(CGAL_VersionUtils)
|
||||
|
||||
get_dependency_version(GMP)
|
||||
|
|
|
|||
|
|
@ -1,13 +1,11 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Arrangement_on_surface_2_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED COMPONENTS Core)
|
||||
|
||||
include(${CGAL_USE_FILE})
|
||||
|
||||
# create a target per cppfile
|
||||
file(
|
||||
GLOB cppfiles
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@
|
|||
#include <list>
|
||||
#include <map>
|
||||
#include <CGAL/N_step_adaptor_derived.h>
|
||||
#include <CGAL/Compact_container.h>
|
||||
#include <CGAL/In_place_list.h>
|
||||
#include <CGAL/function_objects.h>
|
||||
#include <CGAL/Iterator_project.h>
|
||||
#include <CGAL/Arrangement_2/Arrangement_2_iterators.h>
|
||||
|
|
@ -91,9 +91,6 @@ public:
|
|||
/*! Destructor. */
|
||||
virtual ~Arr_vertex_base() {}
|
||||
|
||||
void* for_compact_container() const { return static_cast<void*>(p_pt); }
|
||||
void for_compact_container(void* ptr) { p_pt = static_cast<Point*>(ptr); }
|
||||
|
||||
// Access/modification for pointer squatting
|
||||
void* inc() const { return p_inc; }
|
||||
void set_inc(void * inc) const
|
||||
|
|
@ -186,9 +183,6 @@ public:
|
|||
/*! Destructor. */
|
||||
virtual ~Arr_halfedge_base() {}
|
||||
|
||||
void* for_compact_container() const { return static_cast<void*>(p_cv); }
|
||||
void for_compact_container(void* ptr) { p_cv = static_cast<X_monotone_curve*>(ptr); }
|
||||
|
||||
/*! Check if the curve pointer is nullptr. */
|
||||
bool has_null_curve() const { return (p_cv == nullptr); }
|
||||
|
||||
|
|
@ -290,7 +284,7 @@ template <class V, class H, class F> class Arr_isolated_vertex;
|
|||
* The default arrangement DCEL vertex class.
|
||||
*/
|
||||
template <class V, class H, class F>
|
||||
class Arr_vertex : public V
|
||||
class Arr_vertex : public V, public In_place_list_base<Arr_vertex<V,H,F> >
|
||||
{
|
||||
public:
|
||||
|
||||
|
|
@ -357,7 +351,8 @@ public:
|
|||
* The default arrangement DCEL halfedge class.
|
||||
*/
|
||||
template <class V, class H, class F>
|
||||
class Arr_halfedge : public H
|
||||
class Arr_halfedge : public H,
|
||||
public In_place_list_base<Arr_halfedge<V,H,F> >
|
||||
{
|
||||
public:
|
||||
typedef H Base;
|
||||
|
|
@ -537,7 +532,7 @@ public:
|
|||
*/
|
||||
template <class V, class H, class F>
|
||||
class Arr_face : public F,
|
||||
public Compact_container_base
|
||||
public In_place_list_base<Arr_face<V,H,F> >
|
||||
{
|
||||
public:
|
||||
typedef F Base;
|
||||
|
|
@ -728,7 +723,7 @@ public:
|
|||
* Representation of an outer CCB.
|
||||
*/
|
||||
template <class V, class H, class F>
|
||||
class Arr_outer_ccb {
|
||||
class Arr_outer_ccb : public In_place_list_base<Arr_outer_ccb<V,H,F> > {
|
||||
public:
|
||||
typedef Arr_outer_ccb<V,H,F> Self;
|
||||
typedef Arr_halfedge<V,H,F> Halfedge;
|
||||
|
|
@ -749,9 +744,6 @@ public:
|
|||
p_f(other.p_f), iter_is_not_singular(other.iter_is_not_singular)
|
||||
{ if (other.iter_is_not_singular) iter = other.iter; }
|
||||
|
||||
void* for_compact_container() const { return static_cast<void*>(p_f); }
|
||||
void for_compact_container(void* ptr) { p_f = static_cast<Face*>(ptr); }
|
||||
|
||||
/*! Obtain a halfedge along the component (const version). */
|
||||
const Halfedge* halfedge() const { return (*iter); }
|
||||
|
||||
|
|
@ -796,7 +788,7 @@ public:
|
|||
* Representation of an inner CCB.
|
||||
*/
|
||||
template <class V, class H, class F>
|
||||
class Arr_inner_ccb : public Compact_container_base
|
||||
class Arr_inner_ccb : public In_place_list_base<Arr_inner_ccb<V,H,F> >
|
||||
{
|
||||
public:
|
||||
typedef Arr_inner_ccb<V,H,F> Self;
|
||||
|
|
@ -916,7 +908,8 @@ public:
|
|||
* Representation of an isolated vertex.
|
||||
*/
|
||||
template <class V, class H, class F>
|
||||
class Arr_isolated_vertex {
|
||||
class Arr_isolated_vertex :
|
||||
public In_place_list_base<Arr_isolated_vertex<V,H,F> > {
|
||||
public:
|
||||
typedef Arr_isolated_vertex<V,H,F> Self;
|
||||
typedef Arr_face<V,H,F> Face;
|
||||
|
|
@ -936,9 +929,6 @@ public:
|
|||
p_f(other.p_f), iter_is_not_singular(other.iter_is_not_singular)
|
||||
{ if (other.iter_is_not_singular) iv_it = other.iv_it; }
|
||||
|
||||
void* for_compact_container() const { return static_cast<void*>(p_f); }
|
||||
void for_compact_container(void* ptr) { p_f = static_cast<Face*>(ptr); }
|
||||
|
||||
/*! Obtain the containing face (const version). */
|
||||
const Face* face() const { return (p_f); }
|
||||
|
||||
|
|
@ -989,6 +979,13 @@ public:
|
|||
typedef Inner_ccb Hole;
|
||||
|
||||
protected:
|
||||
// The vetices, halfedges and faces are stored in three in-place lists.
|
||||
typedef In_place_list<Vertex, false> Vertex_list;
|
||||
typedef In_place_list<Halfedge, false> Halfedge_list;
|
||||
typedef In_place_list<Face, false> Face_list;
|
||||
typedef In_place_list<Outer_ccb, false> Outer_ccb_list;
|
||||
typedef In_place_list<Inner_ccb, false> Inner_ccb_list;
|
||||
typedef In_place_list<Isolated_vertex, false> Iso_vert_list;
|
||||
|
||||
typedef std::allocator_traits<Allocator> Allocator_traits;
|
||||
typedef typename Allocator_traits::template rebind_alloc<Vertex> Vertex_allocator;
|
||||
|
|
@ -998,13 +995,6 @@ protected:
|
|||
typedef typename Allocator_traits::template rebind_alloc<Inner_ccb> Inner_ccb_allocator;
|
||||
typedef typename Allocator_traits::template rebind_alloc<Isolated_vertex> Iso_vert_allocator;
|
||||
|
||||
typedef Compact_container<Vertex, Vertex_allocator> Vertex_list;
|
||||
typedef Compact_container<Halfedge, Halfedge_allocator> Halfedge_list;
|
||||
typedef Compact_container<Face, Face_allocator> Face_list;
|
||||
typedef Compact_container<Outer_ccb, Outer_ccb_allocator> Outer_ccb_list;
|
||||
typedef Compact_container<Inner_ccb, Inner_ccb_allocator> Inner_ccb_list;
|
||||
typedef Compact_container<Isolated_vertex, Iso_vert_allocator> Iso_vert_list;
|
||||
|
||||
public:
|
||||
typedef typename Halfedge_list::size_type Size;
|
||||
typedef typename Halfedge_list::size_type size_type;
|
||||
|
|
@ -1021,6 +1011,13 @@ protected:
|
|||
Inner_ccb_list in_ccbs; // The inner CCBs.
|
||||
Iso_vert_list iso_verts; // The isolated vertices.
|
||||
|
||||
Vertex_allocator vertex_alloc; // An allocator for vertices.
|
||||
Halfedge_allocator halfedge_alloc; // An allocator for halfedges.
|
||||
Face_allocator face_alloc; // An allocator for faces.
|
||||
Outer_ccb_allocator out_ccb_alloc; // An allocator for outer CCBs.
|
||||
Inner_ccb_allocator in_ccb_alloc; // An allocator for inner CCBs.
|
||||
Iso_vert_allocator iso_vert_alloc; // Allocator for isolated vertices.
|
||||
|
||||
public:
|
||||
// Definitions of iterators.
|
||||
typedef typename Vertex_list::iterator Vertex_iterator;
|
||||
|
|
@ -1147,7 +1144,10 @@ public:
|
|||
/*! Create a new vertex. */
|
||||
Vertex* new_vertex()
|
||||
{
|
||||
return &*vertices.emplace();
|
||||
Vertex* v = vertex_alloc.allocate(1);
|
||||
std::allocator_traits<Vertex_allocator>::construct(vertex_alloc,v);
|
||||
vertices.push_back(*v);
|
||||
return v;
|
||||
}
|
||||
|
||||
/*! Create a new pair of opposite halfedges. */
|
||||
|
|
@ -1167,25 +1167,37 @@ public:
|
|||
/*! Create a new face. */
|
||||
Face* new_face()
|
||||
{
|
||||
return &*faces.emplace();
|
||||
Face* f = face_alloc.allocate(1);
|
||||
std::allocator_traits<Face_allocator>::construct(face_alloc, f);
|
||||
faces.push_back (*f);
|
||||
return(f);
|
||||
}
|
||||
|
||||
/*! Create a new outer CCB. */
|
||||
Outer_ccb* new_outer_ccb()
|
||||
{
|
||||
return &*out_ccbs.emplace();
|
||||
Outer_ccb* oc = out_ccb_alloc.allocate(1);
|
||||
std::allocator_traits<Outer_ccb_allocator>::construct(out_ccb_alloc, oc);
|
||||
out_ccbs.push_back(*oc);
|
||||
return (oc);
|
||||
}
|
||||
|
||||
/*! Create a new inner CCB. */
|
||||
Inner_ccb* new_inner_ccb()
|
||||
{
|
||||
return &*in_ccbs.emplace();
|
||||
Inner_ccb* ic = in_ccb_alloc.allocate(1);
|
||||
std::allocator_traits<Inner_ccb_allocator>::construct(in_ccb_alloc, ic);
|
||||
in_ccbs.push_back(*ic);
|
||||
return (ic);
|
||||
}
|
||||
|
||||
/*! Create a new isolated vertex. */
|
||||
Isolated_vertex* new_isolated_vertex()
|
||||
{
|
||||
return &*iso_verts.emplace();
|
||||
Isolated_vertex* iv = iso_vert_alloc.allocate(1);
|
||||
std::allocator_traits<Iso_vert_allocator>::construct(iso_vert_alloc, iv);
|
||||
iso_verts.push_back(*iv);
|
||||
return (iv);
|
||||
}
|
||||
//@}
|
||||
|
||||
|
|
@ -1194,7 +1206,9 @@ public:
|
|||
/*! Delete an existing vertex. */
|
||||
void delete_vertex(Vertex* v)
|
||||
{
|
||||
vertices.erase (vertices.iterator_to(*v));
|
||||
vertices.erase(v);
|
||||
std::allocator_traits<Vertex_allocator>::destroy(vertex_alloc, v);
|
||||
vertex_alloc.deallocate(v,1);
|
||||
}
|
||||
|
||||
/*! Delete an existing pair of opposite halfedges. */
|
||||
|
|
@ -1208,25 +1222,33 @@ public:
|
|||
/*! Delete an existing face. */
|
||||
void delete_face(Face* f)
|
||||
{
|
||||
faces.erase (faces.iterator_to(*f));
|
||||
faces.erase(f);
|
||||
std::allocator_traits<Face_allocator>::destroy(face_alloc, f);
|
||||
face_alloc.deallocate(f, 1);
|
||||
}
|
||||
|
||||
/*! Delete an existing outer CCB. */
|
||||
void delete_outer_ccb(Outer_ccb* oc)
|
||||
{
|
||||
out_ccbs.erase (out_ccbs.iterator_to(*oc));
|
||||
out_ccbs.erase(oc);
|
||||
std::allocator_traits<Outer_ccb_allocator>::destroy(out_ccb_alloc, oc);
|
||||
out_ccb_alloc.deallocate(oc, 1);
|
||||
}
|
||||
|
||||
/*! Delete an existing inner CCB. */
|
||||
void delete_inner_ccb(Inner_ccb* ic)
|
||||
{
|
||||
in_ccbs.erase (in_ccbs.iterator_to(*ic));
|
||||
in_ccbs.erase(ic);
|
||||
std::allocator_traits<Inner_ccb_allocator>::destroy(in_ccb_alloc, ic);
|
||||
in_ccb_alloc.deallocate(ic, 1);
|
||||
}
|
||||
|
||||
/*! Delete an existing isolated vertex. */
|
||||
void delete_isolated_vertex(Isolated_vertex* iv)
|
||||
{
|
||||
iso_verts.erase (iso_verts.iterator_to(*iv));
|
||||
iso_verts.erase(iv);
|
||||
std::allocator_traits<Iso_vert_allocator>::destroy(iso_vert_alloc, iv);
|
||||
iso_vert_alloc.deallocate(iv, 1);
|
||||
}
|
||||
|
||||
/*! Delete all DCEL features. */
|
||||
|
|
@ -1485,13 +1507,18 @@ protected:
|
|||
/*! Create a new halfedge. */
|
||||
Halfedge* _new_halfedge()
|
||||
{
|
||||
return &*halfedges.emplace();
|
||||
Halfedge* h = halfedge_alloc.allocate(1);
|
||||
std::allocator_traits<Halfedge_allocator>::construct(halfedge_alloc, h);
|
||||
halfedges.push_back(*h);
|
||||
return (h);
|
||||
}
|
||||
|
||||
/*! Delete an existing halfedge. */
|
||||
void _delete_halfedge(Halfedge* h)
|
||||
{
|
||||
halfedges.erase (halfedges.iterator_to(*h));
|
||||
halfedges.erase(h);
|
||||
std::allocator_traits<Halfedge_allocator>::destroy(halfedge_alloc,h);
|
||||
halfedge_alloc.deallocate(h, 1);
|
||||
}
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -202,7 +202,7 @@ public:
|
|||
// Invalid arc:
|
||||
if (dir_res == EQUAL) return;
|
||||
|
||||
this->_info = (Conic_arc_2::IS_VALID | DEGREE_1);
|
||||
this->_info = (static_cast<int>(Conic_arc_2::IS_VALID) | static_cast<int>(DEGREE_1));
|
||||
if (dir_res == SMALLER)
|
||||
this->_info = (this->_info | IS_DIRECTED_RIGHT);
|
||||
|
||||
|
|
|
|||
|
|
@ -1,14 +1,14 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Arrangement_on_surface_2_Tests)
|
||||
|
||||
enable_testing()
|
||||
|
||||
find_package(CGAL REQUIRED COMPONENTS Core)
|
||||
|
||||
include(${CGAL_USE_FILE})
|
||||
include (${CGAL_USE_FILE})
|
||||
# Since CMake-2.8.12: New CMake script, that defines the targets and
|
||||
# the CTest test cases.
|
||||
include(${CMAKE_CURRENT_SOURCE_DIR}/cgal_test.cmake)
|
||||
|
|
|
|||
|
|
@ -151,6 +151,10 @@ function(cgal_arr_2_add_target exe_name source_file)
|
|||
set(name ${exe_name}_${suffix})
|
||||
endif()
|
||||
add_executable(${name} ${source_file})
|
||||
target_link_libraries(${name} CGAL::CGAL)
|
||||
if (TARGET CGAL::CGAL_Core)
|
||||
target_link_libraries(${name} CGAL::CGAL_Core)
|
||||
endif()
|
||||
add_to_cached_list( CGAL_EXECUTABLE_TARGETS ${name} )
|
||||
separate_arguments(flags UNIX_COMMAND "${TESTSUITE_CXXFLAGS}")
|
||||
target_compile_options(${name} PRIVATE ${flags})
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_CMakeLists
|
||||
# This is the CMake script for compiling a set of CGAL applications.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(BGL_LCC_Examples)
|
||||
|
||||
# CGAL and its components
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_CMakeLists
|
||||
# This is the CMake script for compiling a set of CGAL applications.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(BGL_OpenMesh_Examples)
|
||||
|
||||
# CGAL and its components
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(BGL_arrangement_2_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_CMakeLists
|
||||
# This is the CMake script for compiling a set of CGAL applications.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
|
||||
project(BGL_graphcut_Examples)
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_CMakeLists
|
||||
# This is the CMake script for compiling a set of CGAL applications.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(BGL_polyhedron_3_Examples)
|
||||
|
||||
# CGAL and its components
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(BGL_surface_mesh_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(BGL_triangulation_2_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -335,7 +335,7 @@ bool write_PLY(std::ostream& os,
|
|||
|
||||
typedef typename CGAL::GetInitializedVertexIndexMap<Graph, CGAL_BGL_NP_CLASS>::const_type VIMap;
|
||||
typedef typename GetVertexPointMap<Graph, CGAL_BGL_NP_CLASS>::const_type Vpm;
|
||||
typedef typename boost::property_traits<Vpm>::reference Point_3;
|
||||
typedef typename boost::property_traits<Vpm>::value_type Point_3;
|
||||
typedef CGAL::IO::Color Color;
|
||||
typedef typename internal_np::Lookup_named_param_def<
|
||||
internal_np::vertex_color_map_t,
|
||||
|
|
@ -407,7 +407,7 @@ bool write_PLY(std::ostream& os,
|
|||
|
||||
for(vertex_descriptor vd : vertices(g))
|
||||
{
|
||||
Point_3 p = get(vpm, vd);
|
||||
const Point_3& p = get(vpm, vd);
|
||||
internal::output_properties(os, &p, make_ply_point_writer (CGAL::Identity_property_map<Point_3>()));
|
||||
if(has_vcolor)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -309,23 +309,26 @@ CGAL_DEF_GET_INITIALIZED_INDEX_MAP(face, typename boost::graph_traits<Graph>::fa
|
|||
|
||||
template<typename PointRange,
|
||||
typename NamedParameters = Named_function_parameters<bool, internal_np::all_default_t>,
|
||||
bool has_nested_iterator = internal::Has_nested_type_iterator<PointRange>::value>
|
||||
bool has_nested_iterator = internal::Has_nested_type_iterator<PointRange>::value,
|
||||
typename NP_TAG = internal_np::point_t
|
||||
>
|
||||
class GetPointMap
|
||||
{
|
||||
typedef typename std::iterator_traits<typename PointRange::iterator>::value_type Point;
|
||||
typedef typename CGAL::Identity_property_map<Point> DefaultPMap;
|
||||
typedef typename CGAL::Identity_property_map<const Point> DefaultConstPMap;
|
||||
|
||||
public:
|
||||
typedef typename internal_np::Lookup_named_param_def<
|
||||
internal_np::point_t,
|
||||
NP_TAG,
|
||||
NamedParameters,
|
||||
DefaultPMap
|
||||
> ::type type;
|
||||
|
||||
typedef typename internal_np::Lookup_named_param_def<
|
||||
internal_np::point_t,
|
||||
NP_TAG,
|
||||
NamedParameters,
|
||||
DefaultPMap
|
||||
DefaultConstPMap
|
||||
> ::type const_type;
|
||||
};
|
||||
|
||||
|
|
@ -336,7 +339,7 @@ CGAL_DEF_GET_INITIALIZED_INDEX_MAP(face, typename boost::graph_traits<Graph>::fa
|
|||
struct Dummy_point{};
|
||||
public:
|
||||
typedef typename CGAL::Identity_property_map<Dummy_point> type;
|
||||
typedef typename CGAL::Identity_property_map<Dummy_point> const_type;
|
||||
typedef typename CGAL::Identity_property_map<const Dummy_point> const_type;
|
||||
};
|
||||
|
||||
namespace Point_set_processing_3 {
|
||||
|
|
@ -375,26 +378,6 @@ CGAL_DEF_GET_INITIALIZED_INDEX_MAP(face, typename boost::graph_traits<Graph>::fa
|
|||
>::Kernel::FT type;
|
||||
};
|
||||
|
||||
template<typename PointRange, typename NamedParameters>
|
||||
class GetQueryPointMap
|
||||
{
|
||||
typedef typename std::iterator_traits<typename PointRange::iterator>::value_type Point;
|
||||
typedef typename CGAL::Identity_property_map<Point> DefaultPMap;
|
||||
|
||||
public:
|
||||
typedef typename internal_np::Lookup_named_param_def<
|
||||
internal_np::query_point_t,
|
||||
NamedParameters,
|
||||
DefaultPMap
|
||||
> ::type type;
|
||||
|
||||
typedef typename internal_np::Lookup_named_param_def<
|
||||
internal_np::query_point_t,
|
||||
NamedParameters,
|
||||
DefaultPMap
|
||||
> ::type const_type;
|
||||
};
|
||||
|
||||
template<typename PointRange, typename NamedParameters>
|
||||
class GetK
|
||||
{
|
||||
|
|
@ -440,6 +423,7 @@ CGAL_DEF_GET_INITIALIZED_INDEX_MAP(face, typename boost::graph_traits<Graph>::fa
|
|||
{
|
||||
typedef typename PlaneRange::iterator::value_type Plane;
|
||||
typedef typename CGAL::Identity_property_map<Plane> DefaultPMap;
|
||||
typedef typename CGAL::Identity_property_map<const Plane> DefaultConstPMap;
|
||||
|
||||
public:
|
||||
typedef typename internal_np::Lookup_named_param_def<
|
||||
|
|
@ -451,7 +435,7 @@ CGAL_DEF_GET_INITIALIZED_INDEX_MAP(face, typename boost::graph_traits<Graph>::fa
|
|||
typedef typename internal_np::Lookup_named_param_def<
|
||||
internal_np::plane_t,
|
||||
NamedParameters,
|
||||
DefaultPMap
|
||||
DefaultConstPMap
|
||||
> ::type const_type;
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script_with_options
|
||||
# This is the CMake script for compiling a set of CGAL applications.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(BGL_Tests)
|
||||
|
||||
# CGAL and its components
|
||||
|
|
|
|||
|
|
@ -13,8 +13,7 @@ elements, which share common edges and vertices. These finite elements are then
|
|||
used to approximate certain types of generalized barycentric coordinate functions.
|
||||
The domain is bounded by the polygon.
|
||||
|
||||
\cgalHasModel
|
||||
- `Delaunay_domain_2`
|
||||
\cgalHasModel `Delaunay_domain_2`
|
||||
*/
|
||||
class DiscretizedDomain_2 {
|
||||
|
||||
|
|
|
|||
|
|
@ -3,12 +3,10 @@
|
|||
|
||||
project(Barycentric_coordinates_2_Examples)
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.15)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
set(CMAKE_CXX_STANDARD 14)
|
||||
|
||||
find_package(CGAL REQUIRED COMPONENTS Core)
|
||||
include(${CGAL_USE_FILE})
|
||||
include(CGAL_CreateSingleSourceCGALProgram)
|
||||
|
||||
create_single_source_cgal_program("segment_coordinates.cpp")
|
||||
create_single_source_cgal_program("triangle_coordinates.cpp")
|
||||
|
|
|
|||
|
|
@ -3,12 +3,10 @@
|
|||
|
||||
project(Barycentric_coordinates_2_Tests)
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.15)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
set(CMAKE_CXX_STANDARD 14)
|
||||
|
||||
find_package(CGAL REQUIRED COMPONENTS Core)
|
||||
include(${CGAL_USE_FILE})
|
||||
include(CGAL_CreateSingleSourceCGALProgram)
|
||||
|
||||
create_single_source_cgal_program("test_almost_degenerate_segment.cpp")
|
||||
create_single_source_cgal_program("test_segment_coordinates.cpp")
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Boolean_set_operations_2_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED COMPONENTS Core OPTIONAL_COMPONENTS Qt5)
|
||||
|
|
|
|||
|
|
@ -78,7 +78,7 @@ void draw(const CGAL::Polygon_set_2<T, C>& aps2,
|
|||
{
|
||||
CGAL::Qt::init_ogl_context(4,3);
|
||||
int argc=1;
|
||||
const char* argv[2]={"t2_viewer","\0"};
|
||||
const char* argv[2]={"t2_viewer", nullptr};
|
||||
QApplication app(argc,const_cast<char**>(argv));
|
||||
SimplePolygonSet2ViewerQt<CGAL::Polygon_set_2<T, C> >
|
||||
mainwindow(app.activeWindow(), aps2, title);
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Boolean_set_operations_2_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Approximate_min_ellipsoid_d_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Min_annulus_d_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Min_circle_2_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Min_ellipse_2_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Min_quadrilateral_2_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Min_sphere_d_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Min_sphere_of_spheres_d_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Rectangular_p_center_2_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,13 +1,11 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Bounding_volumes_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED COMPONENTS Core)
|
||||
|
||||
include(${CGAL_USE_FILE})
|
||||
|
||||
# Use Eigen
|
||||
find_package(Eigen3 3.1.0 QUIET) #(3.1.0 or greater)
|
||||
include(CGAL_Eigen3_support)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Box_intersection_d_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Box_intersection_d_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Core_Examples)
|
||||
|
||||
# CGAL and its components
|
||||
|
|
@ -25,11 +25,6 @@ if(NOT Boost_FOUND)
|
|||
|
||||
endif()
|
||||
|
||||
# include for local directory
|
||||
|
||||
# include for local package
|
||||
include(${CGAL_USE_FILE})
|
||||
|
||||
# Creating entries for all .cpp/.C files with "main" routine
|
||||
# ##########################################################
|
||||
|
||||
|
|
|
|||
|
|
@ -423,7 +423,7 @@ inline std::string BigFloatRep::toString(long prec, bool sci) const {
|
|||
else
|
||||
return r.rep;
|
||||
}
|
||||
return nullptr;
|
||||
return std::string();
|
||||
}
|
||||
|
||||
inline void BigFloatRep::dump() const {
|
||||
|
|
|
|||
|
|
@ -1,17 +1,12 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(CGALimageIO_Examples)
|
||||
|
||||
if(POLICY CMP0074)
|
||||
cmake_policy(SET CMP0074 NEW)
|
||||
endif()
|
||||
|
||||
find_package(CGAL REQUIRED COMPONENTS ImageIO)
|
||||
|
||||
if(CGAL_ImageIO_FOUND)
|
||||
include(${CGAL_USE_FILE})
|
||||
|
||||
create_single_source_cgal_program("convert_raw_image_to_inr.cpp")
|
||||
create_single_source_cgal_program("test_imageio.cpp")
|
||||
|
|
|
|||
|
|
@ -1,17 +1,11 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(CGAL_ImageIO_Tests)
|
||||
|
||||
if(POLICY CMP0074)
|
||||
cmake_policy(SET CMP0074 NEW)
|
||||
endif()
|
||||
|
||||
find_package(CGAL REQUIRED COMPONENTS ImageIO)
|
||||
|
||||
include(${CGAL_USE_FILE})
|
||||
|
||||
if(WITH_CGAL_ImageIO)
|
||||
create_single_source_cgal_program("test_trilinear_interpolation.cpp")
|
||||
else()
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(CGAL_ipelets_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Circular_kernel_2_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Circular_kernel_2_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Circular_kernel_3_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,13 +1,11 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Circular_kernel_3_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED COMPONENTS Core)
|
||||
|
||||
include(${CGAL_USE_FILE})
|
||||
|
||||
include_directories(BEFORE include)
|
||||
|
||||
# The following `include_directories` is used in the git layout
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Circulator_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Circulator_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_CMakeLists
|
||||
# This is the CMake script for compiling a set of CGAL applications.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Classification_Examples)
|
||||
|
||||
# CGAL and its components
|
||||
|
|
|
|||
|
|
@ -73,7 +73,9 @@ class Point_set_neighborhood
|
|||
My_point_property_map (const PointRange *input, PointMap point_map)
|
||||
: input (input), point_map (point_map) { }
|
||||
|
||||
friend reference get (const My_point_property_map& ppmap, key_type i)
|
||||
// we did not put `reference` here on purpose as the recommanded default
|
||||
// is `Identity_property_map<Point_3>` and not `Identity_property_map<const Point_3>`
|
||||
friend decltype(auto) get (const My_point_property_map& ppmap, key_type i)
|
||||
{ return get(ppmap.point_map, *(ppmap.input->begin()+std::size_t(i))); }
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_CMakeLists
|
||||
# This is the CMake script for compiling a set of CGAL applications.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Classification_Tests)
|
||||
|
||||
# CGAL and its components
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Combinatorial_map_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Combinatorial_map_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,8 +1,7 @@
|
|||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Cone_spanners_2_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED QUIET OPTIONAL_COMPONENTS Core)
|
||||
include(${CGAL_USE_FILE})
|
||||
find_package(LEDA QUIET)
|
||||
|
||||
if(CGAL_Core_FOUND OR LEDA_FOUND)
|
||||
|
|
|
|||
|
|
@ -1,13 +1,12 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Cone_spanners_2_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED COMPONENTS Core)
|
||||
|
||||
if(CGAL_Core_FOUND)
|
||||
include(${CGAL_USE_FILE})
|
||||
include_directories(BEFORE "include")
|
||||
|
||||
# create a target per cppfile
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Convex_decomposition_3_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Convex_decomposition_3_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Convex_hull_2_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Convex_hull_2_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_CMakeLists
|
||||
# This is the CMake script for compiling a set of CGAL applications.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Convex_hull_3_Examples)
|
||||
|
||||
# CGAL and its components
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Convex_hull_3_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Convex_hull_d_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Distance_2_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Distance_3_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Envelope_2_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Envelope_2_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,13 +1,11 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Envelope_3_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED COMPONENTS Core)
|
||||
|
||||
include(${CGAL_USE_FILE})
|
||||
|
||||
# create a target per cppfile
|
||||
file(
|
||||
GLOB cppfiles
|
||||
|
|
|
|||
|
|
@ -1,13 +1,11 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Envelope_3_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED COMPONENTS Core)
|
||||
|
||||
include(${CGAL_USE_FILE})
|
||||
|
||||
# create a target per cppfile
|
||||
file(
|
||||
GLOB cppfiles
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Filtered_kernel_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Filtered_kernel_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Generalized_map_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_CMakeLists
|
||||
# This is the CMake script for compiling a set of CGAL applications.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Generalized_map_Tests)
|
||||
|
||||
# CGAL and its components
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Generator_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Generator_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Geomview_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(HalfedgeDS_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(HalfedgeDS_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Hash_map_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@
|
|||
/*!
|
||||
\addtogroup PkgHeatMethod
|
||||
|
||||
\cgalPkgDescriptionBegin{The Heat Method,PkgHeatMethodSummary}
|
||||
\cgalPkgDescriptionBegin{The Heat Method,PkgHeatMethod}
|
||||
\cgalPkgPicture{heat-method-small.png}
|
||||
|
||||
\cgalPkgSummaryBegin
|
||||
|
|
|
|||
|
|
@ -1,15 +1,12 @@
|
|||
# Created by the script cgal_create_CMakeLists
|
||||
# This is the CMake script for compiling a set of CGAL applications.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Heat_method_3_Examples)
|
||||
|
||||
# CGAL and its components
|
||||
find_package(CGAL REQUIRED)
|
||||
|
||||
# include helper file
|
||||
include(${CGAL_USE_FILE})
|
||||
|
||||
# Boost and its components
|
||||
find_package(Boost REQUIRED)
|
||||
|
||||
|
|
@ -39,8 +36,6 @@ include_directories(BEFORE include)
|
|||
# Creating entries for all C++ files with "main" routine
|
||||
# ##########################################################
|
||||
|
||||
include(CGAL_CreateSingleSourceCGALProgram)
|
||||
|
||||
create_single_source_cgal_program("heat_method.cpp")
|
||||
target_link_libraries(heat_method PUBLIC CGAL::Eigen3_support)
|
||||
create_single_source_cgal_program("heat_method_polyhedron.cpp")
|
||||
|
|
|
|||
|
|
@ -1,15 +1,12 @@
|
|||
# Created by the script cgal_create_CMakeLists
|
||||
# This is the CMake script for compiling a set of CGAL applications.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Heat_method_3_Tests)
|
||||
|
||||
# CGAL and its components
|
||||
find_package(CGAL REQUIRED)
|
||||
|
||||
# include helper file
|
||||
include(${CGAL_USE_FILE})
|
||||
|
||||
# Boost and its components
|
||||
find_package(Boost REQUIRED)
|
||||
|
||||
|
|
@ -39,8 +36,6 @@ include_directories(BEFORE include)
|
|||
# Creating entries for all C++ files with "main" routine
|
||||
# ##########################################################
|
||||
|
||||
include(CGAL_CreateSingleSourceCGALProgram)
|
||||
|
||||
create_single_source_cgal_program("heat_method_concept.cpp")
|
||||
target_link_libraries(heat_method_concept PUBLIC CGAL::Eigen3_support)
|
||||
create_single_source_cgal_program("heat_method_surface_mesh_test.cpp")
|
||||
|
|
|
|||
|
|
@ -36,6 +36,9 @@ if(CGAL_Qt5_FOUND
|
|||
else()
|
||||
target_link_libraries ( HDT2 ${LEDA_LIBRARIES})
|
||||
endif()
|
||||
|
||||
include(${CGAL_MODULES_DIR}/CGAL_add_test.cmake)
|
||||
cgal_add_compilation_test( HDT2 )
|
||||
else()
|
||||
message(
|
||||
STATUS
|
||||
|
|
|
|||
|
|
@ -1,14 +1,10 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Hyperbolic_triangulation_2_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED COMPONENTS Core)
|
||||
|
||||
include(${CGAL_USE_FILE})
|
||||
|
||||
include(CGAL_CreateSingleSourceCGALProgram)
|
||||
|
||||
create_single_source_cgal_program("ht2_example.cpp")
|
||||
create_single_source_cgal_program("ht2_example_color.cpp")
|
||||
|
|
|
|||
|
|
@ -1,15 +1,11 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Hyperbolic_triangulation_2_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED COMPONENTS Core)
|
||||
|
||||
include(${CGAL_USE_FILE})
|
||||
|
||||
include(CGAL_CreateSingleSourceCGALProgram)
|
||||
|
||||
create_single_source_cgal_program("ht2_test_clear.cpp")
|
||||
create_single_source_cgal_program("ht2_test_locate.cpp")
|
||||
create_single_source_cgal_program("ht2_test_remove.cpp")
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Inscribed_areas_Examples)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# Created by the script cgal_create_cmake_script
|
||||
# This is the CMake script for compiling a CGAL application.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.20)
|
||||
cmake_minimum_required(VERSION 3.1...3.22)
|
||||
project(Inscribed_areas_Tests)
|
||||
|
||||
find_package(CGAL REQUIRED)
|
||||
|
|
|
|||
|
|
@ -1,87 +1,21 @@
|
|||
Release History
|
||||
===============
|
||||
|
||||
[Release 5.4](https://github.com/CGAL/cgal/releases/tag/v5.4)
|
||||
-----------
|
||||
|
||||
Release date: December 2021
|
||||
### General changes
|
||||
- Added the cmake target `CGAL::CGAL_Basic_viewer` to ease the compilation of programs using
|
||||
the basic viewer based function `CGAL::draw`. This target will define the macro and link with
|
||||
`CGAL_Qt5` target when linked with it.
|
||||
|
||||
### [General changes](https://doc.cgal.org/5.4/Manual/general_intro.html)
|
||||
- The kernel providing exact constructions and exact predicates (`Exact_predicates_exact_constructions_kernel`)
|
||||
has been made thread-safe. See changes in 2D and 3D Linear Geometry Kernel
|
||||
for more details.
|
||||
|
||||
### [Weights](https://doc.cgal.org/5.4/Manual/packages.html#PkgWeights) (new package)
|
||||
- Added the cmake target `CGAL::CGAL_Basic_viewer` to ease the compilation of programs using
|
||||
the basic viewer-based function `CGAL::draw()`. This target will define the macro and link with
|
||||
`CGAL_Qt5` target when linked with it.
|
||||
|
||||
- This package provides a simple and unified interface to different types of weights.
|
||||
In particular, it groups all weights into three category: analytic weights including
|
||||
all basic weights which can be computed analytically for a query point with respect to its
|
||||
local neighbors in 2D and 3D; barycentric weights including all weights which can be computed
|
||||
for a query point with respect to the vertices of a planar polygon; and weighting regions
|
||||
including all weights which are used to balance other weights.
|
||||
|
||||
### [2D Generalized Barycentric Coordinates](https://doc.cgal.org/5.4/Manual/packages.html#PkgBarycentricCoordinates2) (breaking change, major changes)
|
||||
|
||||
- **Breaking change**: The headers `Segment_coordinates_2.h` and `Triangle_coordinates_2.h` are
|
||||
renamed to `segment_coordinates_2.h` and `triangle_coordinates_2.h`.
|
||||
- The classes `Segment_coordinates_2` and `Triangle_coordinates_2` are deprecated. The free functions
|
||||
`compute_segment_coordinates_2()` and `compute_triangle_coordinates_2()` are deprecated as well.
|
||||
Instead, the free functions `segment_coordinates_2()` and `triangle_coordinates_2()` must be used.
|
||||
- The enums `Query_point_location` and `Type_of_algorithm` are deprecated. Instead, the enum
|
||||
`Computation_policy_2` must be used.
|
||||
- The clases `Wachspress_2`, `Discrete_harmonic_2`, `Mean_value_2`, and
|
||||
`Generalized_barycentric_coordinates_2` are deprecated. As consequence, the concept `BarycentricCoordinates_2` is deprecated as well. Instead, the classes `Wachspress_coordinates_2`,
|
||||
`Discrete_harmonic_coordinates_2`, and `Mean_value_coordinates_2` must be used.
|
||||
- Added the class `Harmonic_coordinates_2` for computing approximate harmonic coordinates in 2D.
|
||||
These coordinates satisfy all properties of barycentric coordinates inside any simple polygon.
|
||||
- Added a new concept `DiscretizedDomain_2` and a model of this concept called `Delaunay_domain_2`
|
||||
which is based on the [Mesh 2](https://doc.cgal.org/5.4/Manual/packages.html#PkgMesh2) package.
|
||||
A model of this concept is required for computing `Harmonic_coordinates_2`.
|
||||
- Added free functions for computing Wachspress, discrete harmonic, and mean value coordinates.
|
||||
- All free functions and classes are now using ranges and property maps.
|
||||
|
||||
### [2D and 3D Linear Geometry Kernel](https://doc.cgal.org/5.4/Manual/packages.html#PkgKernel23)
|
||||
|
||||
- Added `construct_centroid_2_object()` and `compute_determinant_2_object()` in `Projection_traits_xy_3`, `Projection_traits_xz_3`,
|
||||
and `Projection_traits_yz_3` classes.
|
||||
|
||||
- Added documentation for the class `Projection_traits_3`, which enables the use of 2D algorithms on the projections of 3D data onto an arbitrary plane.
|
||||
|
||||
- Most operations on `Exact_predicates_exact_constructions_kernel` objects are now thread-safe
|
||||
if `CGAL::Exact_rational` is `mpq_class` (from `GMPXX`), `boost::multiprecision::mpq_rational` or
|
||||
`CGAL::Quotient<CGAL::MP_Float>`. The objects are not atomic though, so the usual restrictions
|
||||
on avoiding race conditions apply. For users who do not use threads, this can be disabled with `CGAL_HAS_NO_THREADS`.
|
||||
|
||||
### [dD Kernel](https://doc.cgal.org/5.4/Manual/packages.html#PkgKernelD)
|
||||
- Most operations on `Epeck_d` objects are now thread-safe, see 2D and 3D Linear Geometry Kernel for details.
|
||||
|
||||
### [Polygon Mesh Processing](https://doc.cgal.org/5.4/Manual/packages.html#PkgPolygonMeshProcessing)
|
||||
|
||||
- Added the function `CGAL::Polygon_mesh_processing::match_faces()`, which, given two polygon meshes,
|
||||
identifies their common faces as well as faces present in only either of them.
|
||||
|
||||
- Added the functions: `CGAL::Polygon_mesh_processing::bounded_error_Hausdorff_distance()` that
|
||||
computes an estimate of the one-sided Hausdorff distance between two triangle meshes which
|
||||
is bounded by a user-specified error bound; `CGAL::Polygon_mesh_processing::bounded_error_symmetric_Hausdorff_distance()` that computes
|
||||
an estimate of the symmetric Hausdorff distance bounded by a user-specified error bound;
|
||||
and `CGAL::Polygon_mesh_processing::is_Hausdorff_distance_larger()` that returns `true`
|
||||
if the bounded-error Hausdorff distance between two meshes is larger than the user-specified
|
||||
max distance.
|
||||
|
||||
- Added the functions `CGAL::Polygon_mesh_processing::squared_edge_length()`
|
||||
and `CGAL::Polygon_mesh_processing::squared_face_area()` which do not perform a `sqrt()` operation.
|
||||
|
||||
- Added more functions in the [visitor of the corefinement based methods](https://doc.cgal.org/5.4/Polygon_mesh_processing/classPMPCorefinementVisitor.html)
|
||||
to track all vertex creations.
|
||||
|
||||
- Added an option to [`CGAL::Polygon_mesh_processing::self_intersections()`](https://doc.cgal.org/5.4/Polygon_mesh_processing/group__PMP__intersection__grp.html#gaf19c80ec12cbff7ebe9e69453f1d40b8) to report only a limited number of intersections (`maximum_number()`)
|
||||
|
||||
### [The Heat Method](https://doc.cgal.org/5.4/Manual/packages.html#PkgHeatMethod)
|
||||
|
||||
- **Breaking change**: Added the functor `Compute_squared_length_3` that has an operator `operator(const Vector_3& v)`, which computes the squared length of `v`, to the `HeatMethodTraits_3` concept.
|
||||
- The kernel providing exact constructions and exact predicates
|
||||
([`CGAL::Exact_predicates_exact_constructions_kernel`](https://doc.cgal.org/5.4/Kernel_23/classCGAL_1_1Exact__predicates__exact__constructions__kernel.html))
|
||||
is now thread-safe.
|
||||
See changes in `2D and 3D Linear Geometry Kernel` for more details.
|
||||
|
||||
### [Shape Regularization](https://doc.cgal.org/5.4/Manual/packages.html#PkgShapeRegularization) (new package)
|
||||
|
||||
|
|
@ -90,36 +24,91 @@ Release date: December 2021
|
|||
user-specified conditions. In addition, it provides a global regularization framework that can be
|
||||
adjusted for the user needs and any type of geometric objects.
|
||||
|
||||
### [dD Spatial Searching](https://doc.cgal.org/5.4/Manual/packages.html#PkgSpatialSearchingD)
|
||||
### [Weights](https://doc.cgal.org/5.4/Manual/packages.html#PkgWeights) (new package)
|
||||
|
||||
- The kd-tree has a new print method now that enables to output the tree in the stream in the [Graphviz](https://graphviz.org/) format.
|
||||
- This package provides a simple and unified interface to different types of weights.
|
||||
In particular, it groups all weights into three category: analytic weights including
|
||||
all basic weights which can be computed analytically for a query point with respect to its
|
||||
local neighbors in 2D and 3D; barycentric weights, including all weights which can be computed
|
||||
for a query point with respect to the vertices of a planar polygon; and weighting regions,
|
||||
including all weights which are used to balance other weights.
|
||||
|
||||
### [CGAL and Solvers](https://doc.cgal.org/5.4/Manual/packages.html#PkgSolverInterface)
|
||||
### [2D Generalized Barycentric Coordinates](https://doc.cgal.org/5.4/Manual/packages.html#PkgBarycentricCoordinates2) (major changes)
|
||||
|
||||
- Added the [OSQP solver](https://osqp.org/) support. This solver enables to efficiently compute the convex Quadratic Programming (QP) problems arising in the context of several packages.
|
||||
- **Breaking change**: The headers `Segment_coordinates_2.h` and `Triangle_coordinates_2.h` are
|
||||
renamed to `segment_coordinates_2.h` and `triangle_coordinates_2.h`.
|
||||
- The classes [`Segment_coordinates_2`](https://doc.cgal.org/5.4/Barycentric_coordinates_2/classCGAL_1_1Barycentric__coordinates_1_1Segment__coordinates__2.html)
|
||||
and [`Triangle_coordinates_2`](https://doc.cgal.org/5.4/Barycentric_coordinates_2/classCGAL_1_1Barycentric__coordinates_1_1Triangle__coordinates__2.html)
|
||||
are deprecated. The free functions [`compute_segment_coordinates_2()`](https://doc.cgal.org/5.4/Barycentric_coordinates_2/classCGAL_1_1Barycentric__coordinates_1_1Segment__coordinates__2.html#a134d363dccaeecb5621fa608fac76eaf)
|
||||
and [`compute_triangle_coordinates_2()`](https://doc.cgal.org/5.4/Barycentric_coordinates_2/classCGAL_1_1Barycentric__coordinates_1_1Triangle__coordinates__2.html#a958fee3ad9613d7bfa9d7a976aa3548f)
|
||||
are deprecated as well. Instead, the free functions [`segment_coordinates_2()`](https://doc.cgal.org/5.4/Barycentric_coordinates_2/group__PkgBarycentricCoordinates2RefFunctions.html#gab856ca68d37f58e6cdf74c8aac6f4245)
|
||||
and [`triangle_coordinates_2()`](https://doc.cgal.org/5.4/Barycentric_coordinates_2/group__PkgBarycentricCoordinates2RefFunctions.html#gaa378786f8996dbcefe7923ebb711e4dd)
|
||||
should be used.
|
||||
- The enums [`Query_point_location`](https://doc.cgal.org/5.4/Barycentric_coordinates_2/namespaceCGAL_1_1Barycentric__coordinates.html#aedeeb072a2024053a016afd15e591331)
|
||||
and [`Type_of_algorithm`](https://doc.cgal.org/5.4/Barycentric_coordinates_2/namespaceCGAL_1_1Barycentric__coordinates.html#a5e5682512438422f23d6080edc49c05b)
|
||||
are deprecated. Instead, the enum [`Computation_policy_2`](https://doc.cgal.org/5.4/Barycentric_coordinates_2/namespaceCGAL_1_1Barycentric__coordinates.html#a478bbcec416216b2274ee4b4e97b0e6c)
|
||||
should be used.
|
||||
- The classes [`Wachspress_2`](https://doc.cgal.org/5.4/Barycentric_coordinates_2/classCGAL_1_1Barycentric__coordinates_1_1Wachspress__2.html),
|
||||
[`Discrete_harmonic_2`](https://doc.cgal.org/5.4/Barycentric_coordinates_2/classCGAL_1_1Barycentric__coordinates_1_1Discrete__harmonic__2.html),
|
||||
[`Mean_value_2`](https://doc.cgal.org/5.4/Barycentric_coordinates_2/classCGAL_1_1Barycentric__coordinates_1_1Mean__value__2.html),
|
||||
and [`Generalized_barycentric_coordinates_2`](https://doc.cgal.org/5.4/Barycentric_coordinates_2/classCGAL_1_1Barycentric__coordinates_1_1Generalized__barycentric__coordinates__2.html)
|
||||
are deprecated. As consequence, the concept [`BarycentricCoordinates_2`](https://doc.cgal.org/5.4/Barycentric_coordinates_2/classCGAL_1_1Barycentric__coordinates_1_1BarycentricCoordinates__2.html)
|
||||
is deprecated as well. Instead, the classes [`Wachspress_coordinates_2`](https://doc.cgal.org/5.4/Barycentric_coordinates_2/classCGAL_1_1Barycentric__coordinates_1_1Wachspress__coordinates__2.html),
|
||||
[`Discrete_harmonic_coordinates_2`](https://doc.cgal.org/5.4/Barycentric_coordinates_2/classCGAL_1_1Barycentric__coordinates_1_1Discrete__harmonic__coordinates__2.html),
|
||||
and [`Mean_value_coordinates_2`](https://doc.cgal.org/5.4/Barycentric_coordinates_2/classCGAL_1_1Barycentric__coordinates_1_1Mean__value__coordinates__2.html)
|
||||
should be used.
|
||||
- Added the class [`Harmonic_coordinates_2`](https://doc.cgal.org/5.4/Barycentric_coordinates_2/classCGAL_1_1Barycentric__coordinates_1_1Harmonic__coordinates__2.html)
|
||||
to compute approximate harmonic coordinates in 2D.
|
||||
These coordinates satisfy all properties of barycentric coordinates inside any simple polygon.
|
||||
- Added a new concept [`DiscretizedDomain_2`](https://doc.cgal.org/5.4/Barycentric_coordinates_2/classCGAL_1_1Barycentric__coordinates_1_1DiscretizedDomain__2.html)
|
||||
and a model of this concept called [`Delaunay_domain_2`](https://doc.cgal.org/5.4/Barycentric_coordinates_2/classCGAL_1_1Barycentric__coordinates_1_1Delaunay__domain__2.html),
|
||||
which is based on the [Mesh 2](https://doc.cgal.org/5.4/Manual/packages.html#PkgMesh2) package.
|
||||
A model of this concept is required to use [`Harmonic_coordinates_2`](https://doc.cgal.org/5.4/Barycentric_coordinates_2/classCGAL_1_1Barycentric__coordinates_1_1Harmonic__coordinates__2.html).
|
||||
- Added free functions to compute Wachspress, discrete harmonic, and mean value coordinates.
|
||||
- All free functions and classes are now using ranges and property maps.
|
||||
|
||||
### [2D and 3D Linear Geometry Kernel](https://doc.cgal.org/5.4/Manual/packages.html#PkgKernel23)
|
||||
|
||||
- Most operations on [`CGAL::Exact_predicates_exact_constructions_kernel`](https://doc.cgal.org/5.4/Kernel_23/classCGAL_1_1Exact__predicates__exact__constructions__kernel.html)
|
||||
objects are now thread-safe if [`CGAL::Exact_rational`](https://doc.cgal.org/5.4/Number_types/group__nt__cgal.html#ga0849ff44771b19582218ebdfa5614f64)
|
||||
is [`mpq_class`](https://doc.cgal.org/5.3/Number_types/classmpq__class.html) (from `GMPXX`),
|
||||
`boost::multiprecision::mpq_rational`
|
||||
or [`CGAL::Quotient<CGAL::MP_Float>`](https://doc.cgal.org/5.3/Number_types/classCGAL_1_1MP__Float.html).
|
||||
The objects are not atomic though, so the usual restrictions on avoiding race conditions apply.
|
||||
For users who do not use threads, this can be disabled with `CGAL_HAS_NO_THREADS`.
|
||||
|
||||
- Added documentation for the class [`Projection_traits_3`](https://doc.cgal.org/5.4/Kernel_23/classCGAL_1_1Projection__traits__3.html),
|
||||
which enables the use of 2D algorithms on the projections of 3D data onto an arbitrary plane.
|
||||
|
||||
- Added `construct_centroid_2_object()` and `compute_determinant_2_object()`
|
||||
in [`Projection_traits_xy_3`](https://doc.cgal.org/5.4/Kernel_23/classCGAL_1_1Projection__traits__xy__3.html),
|
||||
[`Projection_traits_xz_3`](https://doc.cgal.org/5.4/Kernel_23/classCGAL_1_1Projection__traits__xz__3.html),
|
||||
and [`Projection_traits_yz_3`](https://doc.cgal.org/5.4/Kernel_23/classCGAL_1_1Projection__traits__yz__3.html)
|
||||
classes.
|
||||
|
||||
- Added the functor
|
||||
[`NonZeroCoordinateIndex_3`](https://doc.cgal.org/5.4/Kernel_23/classKernel_1_1NonZeroCoordinateIndex__3.html)
|
||||
to the concept [`Kernel`](https://doc.cgal.org/5.4/Kernel_23/classKernel.html) with `int operator()(Vector_3)`
|
||||
which returns the index of any coordinate of the vector different from zero, or `-1`.
|
||||
|
||||
### [dD Kernel](https://doc.cgal.org/5.4/Manual/packages.html#PkgKernelD)
|
||||
|
||||
- Most operations on [`Epeck_d`](https://doc.cgal.org/5.4/Kernel_d/structCGAL_1_1Epeck__d.html)
|
||||
objects are now thread-safe, see 2D and 3D Linear Geometry Kernel for details.
|
||||
|
||||
### [2D Arrangements](https://doc.cgal.org/5.4/Manual/packages.html#PkgArrangementOnSurface2)
|
||||
|
||||
- A new hierarchy of traits concepts is introduced.
|
||||
- **Breaking Change:** The traits function objects `Compare_x_at_limit_2` and `Compare_x_near_limit_2`
|
||||
are renamed to `Compare_x_on_boundary_2` and `Compare_x_near_boundary_2`, respectively.
|
||||
|
||||
- A [new hierarchy of traits concepts](https://doc.cgal.org/5.4/Arrangement_on_surface_2/group__PkgArrangementOnSurface2Concepts.html)
|
||||
has been introduced.
|
||||
It captures all the valid combinations of boundary conditions for the 4 boundary sides of the parameter space.
|
||||
The 4 boundaries are Bottom, Top, Left, and Right. Each boundary side can be either contracted, identified, close, open, or oblivious.
|
||||
Not all possible combinations are valid. If one side is identified then the other must be as well. Two adjacent sides cannot be contracted.
|
||||
|
||||
- **Breaking Change:** The traits function objects `Compare_x_at_limit_2` and `Compare_x_near_limit_2` are renamed to `Compare_x_on_boundary_2` and `Compare_x_near_boundary_2`, respectively.
|
||||
|
||||
- A new geometry traits , namely, `Arr_geodesic_arc_on_sphere_traits_2`, is introduced. It handles arcs of great circles embedded on the unit sphere.
|
||||
|
||||
|
||||
### [Point Set Processing](https://doc.cgal.org/5.4/Manual/packages.html#PkgPointSetProcessing3)
|
||||
|
||||
- Added support for `libpointmatcher::GenericDescriptorOutlierFilter`
|
||||
that enables to provide a map from a point to a weight associated with this point.
|
||||
|
||||
|
||||
### [Shape Detection](https://doc.cgal.org/5.4/Manual/packages.html#PkgShapeDetection)
|
||||
|
||||
- Added new shapes to the Region Growing algorithm on a point set: circles in 2D, spheres in 3D,
|
||||
and cylinders in 3D.
|
||||
- A new geometric traits, [`Arr_geodesic_arc_on_sphere_traits_2`](https://doc.cgal.org/5.4/Arrangement_on_surface_2/classCGAL_1_1Arr__geodesic__arc__on__sphere__traits__2.html)
|
||||
has been introduced. It handles arcs of great circles embedded on the unit sphere.
|
||||
|
||||
### [2D Regularized Boolean Set-Operations](https://doc.cgal.org/5.4/Manual/packages.html#PkgBooleanSetOperations2)
|
||||
|
||||
|
|
@ -133,11 +122,61 @@ Release date: December 2021
|
|||
and [`oriented_side`](https://doc.cgal.org/5.4/Boolean_set_operations_2/group__boolean__oriented__side.html))
|
||||
to control whether to use `Arr_polyline_traits_2` as default traits. It is the new default as it provides better performances in general.
|
||||
|
||||
### [3D Mesh Generation](https://doc.cgal.org/latest/Manual/packages.html#PkgMesh3)
|
||||
### [3D Mesh Generation](https://doc.cgal.org/5.4/Manual/packages.html#PkgMesh3)
|
||||
|
||||
- Added support of weighted images for an improved quality of meshes generated from labeled images,
|
||||
along with a function `CGAL::Mesh_3::generate_label_weights()` to generate the weights.
|
||||
along with a function [`CGAL::Mesh_3::generate_label_weights()`](https://doc.cgal.org/5.4/Mesh_3/namespaceCGAL_1_1Mesh__3.html#ae5914bf77180ff8948c08046154ee727)
|
||||
to generate the weights.
|
||||
|
||||
### [dD Spatial Searching](https://doc.cgal.org/5.4/Manual/packages.html#PkgSpatialSearchingD)
|
||||
|
||||
- The kd-tree has a new print method now that enables to output the tree in the stream in the [Graphviz](https://graphviz.org/) format.
|
||||
|
||||
### [Polygon Mesh Processing](https://doc.cgal.org/5.4/Manual/packages.html#PkgPolygonMeshProcessing)
|
||||
|
||||
- Added the function [`CGAL::Polygon_mesh_processing::match_faces()`](https://doc.cgal.org/5.4/Polygon_mesh_processing/group__measure__grp.html#ga10f7cd81645bafe936ac5eb4e58e67ef),
|
||||
which, given two polygon meshes, identifies their common faces as well as faces present in only either of them.
|
||||
|
||||
- Added the functions: [`CGAL::Polygon_mesh_processing::bounded_error_Hausdorff_distance()`](https://doc.cgal.org/5.4/Polygon_mesh_processing/group__PMP__distance__grp.html#ga6d4ecea831c33ac10eec42b5021fc183)
|
||||
that computes an estimate of the one-sided Hausdorff distance between two triangle meshes which
|
||||
is bounded by a user-specified error bound; [`CGAL::Polygon_mesh_processing::bounded_error_symmetric_Hausdorff_distance()`](https://doc.cgal.org/5.4/Polygon_mesh_processing/group__PMP__distance__grp.html#ga9a7a682b5d9523135c8502e72117dffd)
|
||||
that computes an estimate of the symmetric Hausdorff distance bounded by a user-specified error bound;
|
||||
and [`CGAL::Polygon_mesh_processing::is_Hausdorff_distance_larger()`](https://doc.cgal.org/5.4/Polygon_mesh_processing/group__PMP__distance__grp.html#gab19e751107025a443e86baa9763aebf3)
|
||||
that returns `true` if the bounded-error Hausdorff distance between two meshes is larger than the user-specified
|
||||
max distance.
|
||||
|
||||
- Added the functions [`CGAL::Polygon_mesh_processing::squared_edge_length()`](https://doc.cgal.org/5.4/Polygon_mesh_processing/group__measure__grp.html#ga30fa03722cd7aa599f6dcb115f54fec5)
|
||||
and [`CGAL::Polygon_mesh_processing::squared_face_area()`](https://doc.cgal.org/5.4/Polygon_mesh_processing/group__measure__grp.html#ga6eda3738815fd678df225f79ccfc3e03),
|
||||
which, compared to [`CGAL::Polygon_mesh_processing::edge_length()`](https://doc.cgal.org/5.4/Polygon_mesh_processing/group__measure__grp.html#gae1674775d9fecada7f25710f425cff3a)
|
||||
and [`CGAL::Polygon_mesh_processing::face_area()`](https://doc.cgal.org/5.4/Polygon_mesh_processing/group__measure__grp.html#ga6a1d7a825c09490b1e6613295343482b),
|
||||
enable avoiding square-root operations.
|
||||
|
||||
- Added more functions in the [visitor of the corefinement based methods](https://doc.cgal.org/5.4/Polygon_mesh_processing/classPMPCorefinementVisitor.html)
|
||||
to track all vertex creations.
|
||||
|
||||
- Added an option to [`CGAL::Polygon_mesh_processing::self_intersections()`](https://doc.cgal.org/5.4/Polygon_mesh_processing/group__PMP__intersection__grp.html#gaf19c80ec12cbff7ebe9e69453f1d40b8)
|
||||
to report only a limited number of intersections (`maximum_number()`).
|
||||
|
||||
### [The Heat Method](https://doc.cgal.org/5.4/Manual/packages.html#PkgHeatMethod)
|
||||
|
||||
- **Breaking change**: Added the functor `Compute_squared_length_3` providing `operator(const Vector_3& v)`,
|
||||
which computes the squared length of `v`, to the [`HeatMethodTraits_3`](https://doc.cgal.org/5.4/Heat_method_3/classHeatMethodTraits__3.html)
|
||||
concept.
|
||||
|
||||
### [Point Set Processing](https://doc.cgal.org/5.4/Manual/packages.html#PkgPointSetProcessing3)
|
||||
|
||||
- Added support for [`libpointmatcher::GenericDescriptorOutlierFilter`](https://github.com/ethz-asl/libpointmatcher)
|
||||
that enables providing a map from a point to a weight associated with this point.
|
||||
|
||||
### [Shape Detection](https://doc.cgal.org/5.4/Manual/packages.html#PkgShapeDetection)
|
||||
|
||||
- Added new shapes to the Region Growing algorithm on a point set: circles in 2D, spheres in 3D,
|
||||
and cylinders in 3D.
|
||||
|
||||
### [CGAL and Solvers](https://doc.cgal.org/5.4/Manual/packages.html#PkgSolverInterface)
|
||||
|
||||
- Added support for the [OSQP solver](https://osqp.org/). This solver enables to efficiently compute
|
||||
the convex Quadratic Programming (QP) problems arising in the context of several packages.
|
||||
|
||||
[Release 5.3](https://github.com/CGAL/cgal/releases/tag/v5.3)
|
||||
-----------
|
||||
|
|
@ -148,10 +187,14 @@ Release date: July 2021
|
|||
|
||||
- The support for the compiled version of CGAL is dropped. Only the header-only version is supported.
|
||||
|
||||
- On Windows, the type used for `Exact_rational`, in `Epick` and indirectly (through `Lazy_exact_nt`)
|
||||
- On Windows, the type used for [`CGAL::Exact_rational`](https://doc.cgal.org/5.3/Number_types/group__nt__cgal.html#ga0849ff44771b19582218ebdfa5614f64),
|
||||
in `Epick` and indirectly (through [`Lazy_exact_nt`](https://doc.cgal.org/5.3/Number_types/classCGAL_1_1Lazy__exact__nt.html))
|
||||
`Epeck` may now be `boost::multiprecision::mpq_rational`, as has been the case on other platforms
|
||||
for several releases. This depends on various options and is added to a list that includes
|
||||
`mpq_class`, `CGAL::Gmpq`, `leda_rational` and `CGAL::Quotient<CGAL::MP_Float>`.
|
||||
[`mpq_class`](https://doc.cgal.org/5.3/Number_types/classmpq__class.html),
|
||||
[`CGAL::Gmpq`](https://doc.cgal.org/5.3/Number_types/classCGAL_1_1Gmpq.html),
|
||||
[`leda_rational`](https://doc.cgal.org/5.3/Number_types/classleda__rational.html)
|
||||
and [`CGAL::Quotient<CGAL::MP_Float>`](https://doc.cgal.org/5.3/Number_types/classCGAL_1_1MP__Float.html).
|
||||
|
||||
### [Quadtrees, Octrees, and Orthtrees](https://doc.cgal.org/5.3/Manual/packages.html#PkgOrthtree) (new package)
|
||||
|
||||
|
|
@ -664,7 +707,7 @@ Release date: November 2019
|
|||
`CGAL::Sphere_3`, `CGAL::Vector_2`, `CGAL::Vector_3`,
|
||||
`CGAL::Weighted_point_2` and `CGAL::Weighted_point_3`.
|
||||
|
||||
### [Polygon Mesh Processing](https://doc.cgal.org/latest/Manual/packages.html#PkgPolygonMeshProcessing)
|
||||
### [Polygon Mesh Processing](https://doc.cgal.org/5.0/Manual/packages.html#PkgPolygonMeshProcessing)
|
||||
- Introduced a [wide range of new functions](https://doc.cgal.org/5.0/Polygon_mesh_processing/index.html#title36)
|
||||
related to location of queries on a triangle mesh,
|
||||
such as [`CGAL::Polygon_mesh_processing::locate(Point, Mesh)`](https://doc.cgal.org/5.0/Polygon_mesh_processing/group__PMP__locate__grp.html#gada09bd8740ba69ead9deca597d53cf15).
|
||||
|
|
@ -695,7 +738,7 @@ Release date: November 2019
|
|||
- The [PLY IO functions](https://doc.cgal.org/5.0/Point_set_3/group__PkgPointSet3IO.html) now take an additional optional parameter to
|
||||
read/write comments from/in the PLY header.
|
||||
|
||||
### [Point Set Processing](https://doc.cgal.org/latest/Manual/packages.html#PkgPointSetProcessing3)
|
||||
### [Point Set Processing](https://doc.cgal.org/5.0/Manual/packages.html#PkgPointSetProcessing3)
|
||||
- **Breaking change**: the API using iterators and overloads for optional parameters (deprecated since
|
||||
CGAL 4.12) has been removed. The current (and now only) API uses ranges and Named Parameters.
|
||||
- Added the possibility to use the named parameter
|
||||
|
|
@ -724,7 +767,7 @@ Release date: November 2019
|
|||
[`CGAL::Triangulation_data_structure_2`](https://doc.cgal.org/5.0/TDS_2/classCGAL_1_1Triangulation__data__structure__2.html)).
|
||||
- **Breaking change**: The `insert()` function
|
||||
of
|
||||
[`CGAL::Triangulation_2`](https://doc.cgal.org/latest/Triangulation_2/classCGAL_1_1Triangulation__2.html)
|
||||
[`CGAL::Triangulation_2`](https://doc.cgal.org/5.0/Triangulation_2/classCGAL_1_1Triangulation__2.html)
|
||||
which takes a range of points as argument is now guaranteed to
|
||||
insert the points following the order of `InputIterator`. Note
|
||||
that this change only affects the base class `Triangulation_2`
|
||||
|
|
|
|||
|
|
@ -27,11 +27,11 @@
|
|||
|
||||
#if defined(__has_include)
|
||||
# if CGAL_USE_GMP && ! __has_include(<gmp.h>)
|
||||
# warning "<gmp.h> cannot be found. Less efficient number types will be used instead. Define CGAL_NO_GMP=1 if that is on purpose."
|
||||
# pragma CGAL_WARNING(<gmp.h> cannot be found. Less efficient number types will be used instead. Define CGAL_NO_GMP=1 if that is on purpose.)
|
||||
# undef CGAL_USE_GMP
|
||||
# undef CGAL_USE_MPFR
|
||||
# elif CGAL_USE_MPFR && ! __has_include(<mpfr.h>)
|
||||
# warning "<mpfr.h> cannot be found and the GMP support in CGAL requires it. Less efficient number types will be used instead. Define CGAL_NO_GMP=1 if that is on purpose."
|
||||
# pragma CGAL_WARNING(<mpfr.h> cannot be found and the GMP support in CGAL requires it. Less efficient number types will be used instead. Define CGAL_NO_GMP=1 if that is on purpose.)
|
||||
# undef CGAL_USE_GMP
|
||||
# undef CGAL_USE_MPFR
|
||||
# endif // CGAL_USE_MPFR and no <mpfr.h>
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue