mirror of https://github.com/CGAL/cgal
Merge remote-tracking branch 'remotes/cgal/master' into Faster_dd_spatial_searching-cjamin
This commit is contained in:
commit
8d71d73dc8
56
.travis.yml
56
.travis.yml
|
|
@ -9,40 +9,46 @@ env:
|
||||||
- PACKAGE='Alpha_shapes_2 Alpha_shapes_3 Apollonius_graph_2 '
|
- PACKAGE='Alpha_shapes_2 Alpha_shapes_3 Apollonius_graph_2 '
|
||||||
- PACKAGE='Arithmetic_kernel Arrangement_on_surface_2 Barycentric_coordinates_2 '
|
- PACKAGE='Arithmetic_kernel Arrangement_on_surface_2 Barycentric_coordinates_2 '
|
||||||
- PACKAGE='BGL Boolean_set_operations_2 Bounding_volumes '
|
- PACKAGE='BGL Boolean_set_operations_2 Bounding_volumes '
|
||||||
- PACKAGE='Box_intersection_d CGAL_ImageIO CGAL_ipelets '
|
- PACKAGE='Box_intersection_d Cartesian_kernel CGAL_Core '
|
||||||
- PACKAGE='Circular_kernel_2 Circular_kernel_3 Circulator '
|
- PACKAGE='CGAL_ImageIO CGAL_ipelets Circular_kernel_2 '
|
||||||
|
- PACKAGE='Circular_kernel_3 Circulator Classification '
|
||||||
- PACKAGE='Combinatorial_map Cone_spanners_2 Convex_decomposition_3 '
|
- PACKAGE='Combinatorial_map Cone_spanners_2 Convex_decomposition_3 '
|
||||||
- PACKAGE='Convex_hull_2 Convex_hull_3 Convex_hull_d '
|
- PACKAGE='Convex_hull_2 Convex_hull_3 Convex_hull_d '
|
||||||
- PACKAGE='Distance_2 Distance_3 Envelope_2 '
|
- PACKAGE='Distance_2 Distance_3 Envelope_2 '
|
||||||
- PACKAGE='Envelope_3 Filtered_kernel Generalized_map '
|
- PACKAGE='Envelope_3 Filtered_kernel Generalized_map '
|
||||||
- PACKAGE='Generator Geomview GraphicsView '
|
- PACKAGE='Generator Geomview GraphicsView '
|
||||||
- PACKAGE='HalfedgeDS Hash_map Inscribed_areas '
|
- PACKAGE='HalfedgeDS Hash_map Homogeneous_kernel '
|
||||||
- PACKAGE='Installation Interpolation Intersections_2 '
|
- PACKAGE='Inscribed_areas Installation Interpolation '
|
||||||
- PACKAGE='Intersections_3 Interval_skip_list Interval_support '
|
- PACKAGE='Intersections_2 Intersections_3 Interval_skip_list '
|
||||||
- PACKAGE='Inventor Jet_fitting_3 Kernel_23 '
|
- PACKAGE='Interval_support Inventor Jet_fitting_3 '
|
||||||
- PACKAGE='Kernel_d Kinetic_data_structures Kinetic_framework '
|
- PACKAGE='Kernel_23 Kernel_d Kinetic_data_structures '
|
||||||
- PACKAGE='Linear_cell_complex Matrix_search Mesh_2 '
|
- PACKAGE='Kinetic_framework LEDA Linear_cell_complex '
|
||||||
- PACKAGE='Mesh_3 Minkowski_sum_2 Minkowski_sum_3 '
|
- PACKAGE='MacOSX Maintenance Matrix_search '
|
||||||
- PACKAGE='Modifier Modular_arithmetic Nef_2 '
|
- PACKAGE='Mesh_2 Mesh_3 Mesher_level '
|
||||||
- PACKAGE='Nef_3 Nef_S2 NewKernel_d '
|
- PACKAGE='Minkowski_sum_2 Minkowski_sum_3 Modifier '
|
||||||
- PACKAGE='Number_types Optimal_transportation_reconstruction_2 Partition_2 '
|
- PACKAGE='Modular_arithmetic Nef_2 Nef_3 '
|
||||||
- PACKAGE='Periodic_2_triangulation_2 Periodic_3_triangulation_3 Point_set_2 '
|
- PACKAGE='Nef_S2 NewKernel_d Number_types '
|
||||||
- PACKAGE='Point_set_3 Point_set_processing_3 Point_set_shape_detection_3 '
|
- PACKAGE='OpenNL Operations_on_polyhedra Optimal_transportation_reconstruction_2 '
|
||||||
- PACKAGE='Poisson_surface_reconstruction_3 Polygon Polygon_mesh_processing '
|
- PACKAGE='Optimisation_basic Partition_2 Periodic_2_triangulation_2 '
|
||||||
- PACKAGE='Polyhedron Polyhedron_IO Polyline_simplification_2 '
|
- PACKAGE='Periodic_3_triangulation_3 Point_set_2 Point_set_3 '
|
||||||
- PACKAGE='Polynomial Polytope_distance_d Principal_component_analysis '
|
- PACKAGE='Point_set_processing_3 Point_set_shape_detection_3 Poisson_surface_reconstruction_3 '
|
||||||
- PACKAGE='Profiling_tools QP_solver Random_numbers '
|
- PACKAGE='Polygon Polygon_mesh_processing Polyhedron '
|
||||||
- PACKAGE='Ridges_3 Scale_space_reconstruction_3 Segment_Delaunay_graph_2 '
|
- PACKAGE='Polyhedron_IO Polyline_simplification_2 Polynomial '
|
||||||
|
- PACKAGE='Polytope_distance_d Principal_component_analysis Principal_component_analysis_LGPL '
|
||||||
|
- PACKAGE='Profiling_tools Property_map QP_solver '
|
||||||
|
- PACKAGE='Random_numbers Ridges_3 Scale_space_reconstruction_3 '
|
||||||
|
- PACKAGE='Scripts SearchStructures Segment_Delaunay_graph_2 '
|
||||||
- PACKAGE='Segment_Delaunay_graph_Linf_2 Set_movable_separability_2 Skin_surface_3 '
|
- PACKAGE='Segment_Delaunay_graph_Linf_2 Set_movable_separability_2 Skin_surface_3 '
|
||||||
- PACKAGE='Snap_rounding_2 Solver_interface Spatial_searching '
|
- PACKAGE='Snap_rounding_2 Solver_interface Spatial_searching '
|
||||||
- PACKAGE='Spatial_sorting STL_Extension Straight_skeleton_2 '
|
- PACKAGE='Spatial_sorting STL_Extension Straight_skeleton_2 '
|
||||||
- PACKAGE='Stream_lines_2 Stream_support Subdivision_method_3 '
|
- PACKAGE='Stream_lines_2 Stream_support Subdivision_method_3 '
|
||||||
- PACKAGE='Surface_mesh Surface_mesh_deformation Surface_mesher '
|
- PACKAGE='Surface_mesh Surface_mesh_deformation Surface_mesh_parameterization '
|
||||||
- PACKAGE='Surface_mesh_parameterization Surface_mesh_segmentation Surface_mesh_shortest_path '
|
- PACKAGE='Surface_mesh_segmentation Surface_mesh_shortest_path Surface_mesh_simplification '
|
||||||
- PACKAGE='Surface_mesh_simplification Surface_mesh_skeletonization Sweep_line_2 '
|
- PACKAGE='Surface_mesh_skeletonization Surface_mesher Sweep_line_2 '
|
||||||
- PACKAGE='TDS_2 TDS_3 Three '
|
- PACKAGE='TDS_2 TDS_3 Testsuite '
|
||||||
- PACKAGE='Triangulation Triangulation_2 Triangulation_3 '
|
- PACKAGE='Three Triangulation Triangulation_2 '
|
||||||
- PACKAGE='Union_find Visibility_2 Voronoi_diagram_2 '
|
- PACKAGE='Triangulation_3 Union_find Visibility_2 '
|
||||||
|
- PACKAGE='Voronoi_diagram_2 wininst '
|
||||||
- PACKAGE='Polyhedron_demo'
|
- PACKAGE='Polyhedron_demo'
|
||||||
compiler:
|
compiler:
|
||||||
- clang-3.6
|
- clang-3.6
|
||||||
|
|
|
||||||
|
|
@ -75,7 +75,7 @@ do
|
||||||
cd ..
|
cd ..
|
||||||
for f in *
|
for f in *
|
||||||
do
|
do
|
||||||
if [ -d "$f/examples/$f" ] || [ -d "$f/test/$f" ] || [ -d "$f/demo/$f" ]
|
if [ -d "$f/package_info/$f" ]
|
||||||
then
|
then
|
||||||
PACKAGES+="$f "
|
PACKAGES+="$f "
|
||||||
fi
|
fi
|
||||||
|
|
@ -87,6 +87,7 @@ do
|
||||||
then
|
then
|
||||||
echo "The matrix and the actual package list differ : ."
|
echo "The matrix and the actual package list differ : ."
|
||||||
echo ${DIFFERENCE[*]}
|
echo ${DIFFERENCE[*]}
|
||||||
|
echo "You should run generate_travis.sh."
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
echo "Matrix is up to date."
|
echo "Matrix is up to date."
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,7 @@ INDEX=0
|
||||||
i=0
|
i=0
|
||||||
for f in *
|
for f in *
|
||||||
do
|
do
|
||||||
if [ -d "$f/examples/$f" ] || [ -d "$f/test/$f" ] || [ -d "$f/demo/$f" ]
|
if [ -d "$f/package_info/$f" ]
|
||||||
then
|
then
|
||||||
PACKAGES[$INDEX]+="$f "
|
PACKAGES[$INDEX]+="$f "
|
||||||
i=$[i+1]
|
i=$[i+1]
|
||||||
|
|
|
||||||
|
|
@ -14,11 +14,14 @@ BGL
|
||||||
Boolean_set_operations_2
|
Boolean_set_operations_2
|
||||||
Bounding_volumes
|
Bounding_volumes
|
||||||
Box_intersection_d
|
Box_intersection_d
|
||||||
|
Cartesian_kernel
|
||||||
|
CGAL_Core
|
||||||
CGAL_ImageIO
|
CGAL_ImageIO
|
||||||
CGAL_ipelets
|
CGAL_ipelets
|
||||||
Circular_kernel_2
|
Circular_kernel_2
|
||||||
Circular_kernel_3
|
Circular_kernel_3
|
||||||
Circulator
|
Circulator
|
||||||
|
Classification
|
||||||
Combinatorial_map
|
Combinatorial_map
|
||||||
Cone_spanners_2
|
Cone_spanners_2
|
||||||
Convex_decomposition_3
|
Convex_decomposition_3
|
||||||
|
|
@ -36,6 +39,7 @@ Geomview
|
||||||
GraphicsView
|
GraphicsView
|
||||||
HalfedgeDS
|
HalfedgeDS
|
||||||
Hash_map
|
Hash_map
|
||||||
|
Homogeneous_kernel
|
||||||
Inscribed_areas
|
Inscribed_areas
|
||||||
Installation
|
Installation
|
||||||
Interpolation
|
Interpolation
|
||||||
|
|
@ -49,10 +53,14 @@ Kernel_23
|
||||||
Kernel_d
|
Kernel_d
|
||||||
Kinetic_data_structures
|
Kinetic_data_structures
|
||||||
Kinetic_framework
|
Kinetic_framework
|
||||||
|
LEDA
|
||||||
Linear_cell_complex
|
Linear_cell_complex
|
||||||
|
MacOSX
|
||||||
|
Maintenance
|
||||||
Matrix_search
|
Matrix_search
|
||||||
Mesh_2
|
Mesh_2
|
||||||
Mesh_3
|
Mesh_3
|
||||||
|
Mesher_level
|
||||||
Minkowski_sum_2
|
Minkowski_sum_2
|
||||||
Minkowski_sum_3
|
Minkowski_sum_3
|
||||||
Modifier
|
Modifier
|
||||||
|
|
@ -62,7 +70,10 @@ Nef_3
|
||||||
Nef_S2
|
Nef_S2
|
||||||
NewKernel_d
|
NewKernel_d
|
||||||
Number_types
|
Number_types
|
||||||
|
OpenNL
|
||||||
|
Operations_on_polyhedra
|
||||||
Optimal_transportation_reconstruction_2
|
Optimal_transportation_reconstruction_2
|
||||||
|
Optimisation_basic
|
||||||
Partition_2
|
Partition_2
|
||||||
Periodic_2_triangulation_2
|
Periodic_2_triangulation_2
|
||||||
Periodic_3_triangulation_3
|
Periodic_3_triangulation_3
|
||||||
|
|
@ -79,11 +90,15 @@ Polyline_simplification_2
|
||||||
Polynomial
|
Polynomial
|
||||||
Polytope_distance_d
|
Polytope_distance_d
|
||||||
Principal_component_analysis
|
Principal_component_analysis
|
||||||
|
Principal_component_analysis_LGPL
|
||||||
Profiling_tools
|
Profiling_tools
|
||||||
|
Property_map
|
||||||
QP_solver
|
QP_solver
|
||||||
Random_numbers
|
Random_numbers
|
||||||
Ridges_3
|
Ridges_3
|
||||||
Scale_space_reconstruction_3
|
Scale_space_reconstruction_3
|
||||||
|
Scripts
|
||||||
|
SearchStructures
|
||||||
Segment_Delaunay_graph_2
|
Segment_Delaunay_graph_2
|
||||||
Segment_Delaunay_graph_Linf_2
|
Segment_Delaunay_graph_Linf_2
|
||||||
Set_movable_separability_2
|
Set_movable_separability_2
|
||||||
|
|
@ -99,15 +114,16 @@ Stream_support
|
||||||
Subdivision_method_3
|
Subdivision_method_3
|
||||||
Surface_mesh
|
Surface_mesh
|
||||||
Surface_mesh_deformation
|
Surface_mesh_deformation
|
||||||
Surface_mesher
|
|
||||||
Surface_mesh_parameterization
|
Surface_mesh_parameterization
|
||||||
Surface_mesh_segmentation
|
Surface_mesh_segmentation
|
||||||
Surface_mesh_shortest_path
|
Surface_mesh_shortest_path
|
||||||
Surface_mesh_simplification
|
Surface_mesh_simplification
|
||||||
Surface_mesh_skeletonization
|
Surface_mesh_skeletonization
|
||||||
|
Surface_mesher
|
||||||
Sweep_line_2
|
Sweep_line_2
|
||||||
TDS_2
|
TDS_2
|
||||||
TDS_3
|
TDS_3
|
||||||
|
Testsuite
|
||||||
Three
|
Three
|
||||||
Triangulation
|
Triangulation
|
||||||
Triangulation_2
|
Triangulation_2
|
||||||
|
|
@ -115,3 +131,4 @@ Triangulation_3
|
||||||
Union_find
|
Union_find
|
||||||
Visibility_2
|
Visibility_2
|
||||||
Voronoi_diagram_2
|
Voronoi_diagram_2
|
||||||
|
wininst
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: GPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Pierre Alliez, Camille Wormser
|
// Author(s) : Pierre Alliez, Camille Wormser
|
||||||
|
|
|
||||||
|
|
@ -6,14 +6,12 @@ project( AABB_tree_Demo )
|
||||||
set(CMAKE_INCLUDE_CURRENT_DIR ON)
|
set(CMAKE_INCLUDE_CURRENT_DIR ON)
|
||||||
# Instruct CMake to run moc automatically when needed.
|
# Instruct CMake to run moc automatically when needed.
|
||||||
set(CMAKE_AUTOMOC ON)
|
set(CMAKE_AUTOMOC ON)
|
||||||
cmake_minimum_required(VERSION 2.8.11)
|
cmake_minimum_required(VERSION 3.1)
|
||||||
if(POLICY CMP0053)
|
if(NOT POLICY CMP0070 AND POLICY CMP0053)
|
||||||
|
# Only set CMP0053 to OLD with CMake<3.10, otherwise there is a warning.
|
||||||
cmake_policy(SET CMP0053 OLD)
|
cmake_policy(SET CMP0053 OLD)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(POLICY CMP0043)
|
|
||||||
cmake_policy(SET CMP0043 OLD)
|
|
||||||
endif()
|
|
||||||
if(POLICY CMP0071)
|
if(POLICY CMP0071)
|
||||||
cmake_policy(SET CMP0071 NEW)
|
cmake_policy(SET CMP0071 NEW)
|
||||||
endif()
|
endif()
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: GPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Sebastien Loriot
|
// Author(s) : Sebastien Loriot
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: GPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Sebastien Loriot
|
// Author(s) : Sebastien Loriot
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: GPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Pierre Alliez, Stephane Tayeb
|
// Author(s) : Pierre Alliez, Stephane Tayeb
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: GPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Stéphane Tayeb, Pierre Alliez
|
// Author(s) : Stéphane Tayeb, Pierre Alliez
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: GPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Sebastien Loriot
|
// Author(s) : Sebastien Loriot
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: GPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Sebastien Loriot
|
// Author(s) : Sebastien Loriot
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: GPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Stéphane Tayeb, Pierre Alliez, Camille Wormser
|
// Author(s) : Stéphane Tayeb, Pierre Alliez, Camille Wormser
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: GPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Camille Wormser, Pierre Alliez, Stephane Tayeb
|
// Author(s) : Camille Wormser, Pierre Alliez, Stephane Tayeb
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: GPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Sebastien Loriot
|
// Author(s) : Sebastien Loriot
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: GPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Stéphane Tayeb, Pierre Alliez
|
// Author(s) : Stéphane Tayeb, Pierre Alliez
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: GPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Camille Wormser, Pierre Alliez
|
// Author(s) : Camille Wormser, Pierre Alliez
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: GPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Camille Wormser, Pierre Alliez, Stephane Tayeb
|
// Author(s) : Camille Wormser, Pierre Alliez, Stephane Tayeb
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: GPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Philipp Moeller
|
// Author(s) : Philipp Moeller
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: GPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Pierre Alliez, Camille Wormser
|
// Author(s) : Pierre Alliez, Camille Wormser
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: GPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Camille Wormser, Pierre Alliez, Stephane Tayeb
|
// Author(s) : Camille Wormser, Pierre Alliez, Stephane Tayeb
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: GPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Sebastien Loriot
|
// Author(s) : Sebastien Loriot
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: GPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Philipp Moeller
|
// Author(s) : Philipp Moeller
|
||||||
|
|
|
||||||
|
|
@ -12,9 +12,9 @@
|
||||||
// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
|
// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
|
||||||
// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
||||||
//
|
//
|
||||||
// $URL: svn+ssh://sloriot@scm.gforge.inria.fr/svn/cgal/branches/features/AABB_tree-one_primitive_per_object-sloriot/AABB_tree/include/CGAL/AABB_tree.h $
|
// $URL$
|
||||||
// $Id: AABB_tree.h 69132 2012-05-15 08:46:42Z sloriot $
|
// $Id$
|
||||||
//
|
// SPDX-License-Identifier: GPL-3.0+
|
||||||
//
|
//
|
||||||
// Author(s) : Sebastien Loriot
|
// Author(s) : Sebastien Loriot
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -12,9 +12,9 @@
|
||||||
// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
|
// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
|
||||||
// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
||||||
//
|
//
|
||||||
// $URL: $
|
// $URL$
|
||||||
// $Id: $
|
// $Id$
|
||||||
//
|
// SPDX-License-Identifier: GPL-3.0+
|
||||||
//
|
//
|
||||||
// Author(s) : Pierre Alliez, Stephane Tayeb, Camille Wormser
|
// Author(s) : Pierre Alliez, Stephane Tayeb, Camille Wormser
|
||||||
//
|
//
|
||||||
|
|
|
||||||
|
|
@ -12,9 +12,9 @@
|
||||||
// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
|
// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
|
||||||
// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
||||||
//
|
//
|
||||||
// $URL: $
|
// $URL$
|
||||||
// $Id: $
|
// $Id$
|
||||||
//
|
// SPDX-License-Identifier: GPL-3.0+
|
||||||
//
|
//
|
||||||
// Author(s) : Pierre Alliez
|
// Author(s) : Pierre Alliez
|
||||||
//
|
//
|
||||||
|
|
|
||||||
|
|
@ -12,9 +12,9 @@
|
||||||
// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
|
// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
|
||||||
// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
||||||
//
|
//
|
||||||
// $URL: $
|
// $URL$
|
||||||
// $Id: $
|
// $Id$
|
||||||
//
|
// SPDX-License-Identifier: GPL-3.0+
|
||||||
//
|
//
|
||||||
// Author(s) : Pierre Alliez
|
// Author(s) : Pierre Alliez
|
||||||
//
|
//
|
||||||
|
|
|
||||||
|
|
@ -12,9 +12,9 @@
|
||||||
// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
|
// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
|
||||||
// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
||||||
//
|
//
|
||||||
// $URL: $
|
// $URL$
|
||||||
// $Id: $
|
// $Id$
|
||||||
//
|
// SPDX-License-Identifier: GPL-3.0+
|
||||||
//
|
//
|
||||||
// Author(s) : Camille Wormser, Pierre Alliez
|
// Author(s) : Camille Wormser, Pierre Alliez
|
||||||
//
|
//
|
||||||
|
|
|
||||||
|
|
@ -12,9 +12,9 @@
|
||||||
// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
|
// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
|
||||||
// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
||||||
//
|
//
|
||||||
// $URL: $
|
// $URL$
|
||||||
// $Id: $
|
// $Id$
|
||||||
//
|
// SPDX-License-Identifier: GPL-3.0+
|
||||||
//
|
//
|
||||||
// Author(s) : Pierre Alliez
|
// Author(s) : Pierre Alliez
|
||||||
//
|
//
|
||||||
|
|
|
||||||
|
|
@ -12,9 +12,9 @@
|
||||||
// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
|
// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
|
||||||
// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
||||||
//
|
//
|
||||||
// $URL: $
|
// $URL$
|
||||||
// $Id: $
|
// $Id$
|
||||||
//
|
// SPDX-License-Identifier: GPL-3.0+
|
||||||
//
|
//
|
||||||
// Author(s) : Pierre Alliez
|
// Author(s) : Pierre Alliez
|
||||||
//
|
//
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: GPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Stephane Tayeb
|
// Author(s) : Stephane Tayeb
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: GPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Stephane Tayeb
|
// Author(s) : Stephane Tayeb
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: GPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Stephane Tayeb
|
// Author(s) : Stephane Tayeb
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: GPL-3.0+
|
||||||
//
|
//
|
||||||
// Author(s) : Frank Da, David Cohen-Steiner, Andreas Fabri
|
// Author(s) : Frank Da, David Cohen-Steiner, Andreas Fabri
|
||||||
|
|
||||||
|
|
@ -2311,7 +2312,7 @@ namespace CGAL {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
struct Remove : public std::unary_function<Vertex_handle, bool>
|
struct Remove : public CGAL::unary_function<Vertex_handle, bool>
|
||||||
{
|
{
|
||||||
|
|
||||||
Extract& E;
|
Extract& E;
|
||||||
|
|
@ -2449,7 +2450,7 @@ namespace CGAL {
|
||||||
namespace AFSR {
|
namespace AFSR {
|
||||||
|
|
||||||
template <typename T>
|
template <typename T>
|
||||||
struct Auto_count : public std::unary_function<const T&,std::pair<T,std::size_t> >{
|
struct Auto_count : public CGAL::unary_function<const T&,std::pair<T,std::size_t> >{
|
||||||
mutable std::size_t i;
|
mutable std::size_t i;
|
||||||
|
|
||||||
Auto_count()
|
Auto_count()
|
||||||
|
|
@ -2462,7 +2463,7 @@ namespace CGAL {
|
||||||
};
|
};
|
||||||
|
|
||||||
template <typename T, typename CC>
|
template <typename T, typename CC>
|
||||||
struct Auto_count_cc : public std::unary_function<const T&,std::pair<T,std::size_t> >{
|
struct Auto_count_cc : public CGAL::unary_function<const T&,std::pair<T,std::size_t> >{
|
||||||
mutable std::size_t i;
|
mutable std::size_t i;
|
||||||
CC cc;
|
CC cc;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: GPL-3.0+
|
||||||
//
|
//
|
||||||
// Author(s) : Frank Da, David Cohen-Steiner, Andreas Fabri
|
// Author(s) : Frank Da, David Cohen-Steiner, Andreas Fabri
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: GPL-3.0+
|
||||||
//
|
//
|
||||||
// Author(s) : Frank Da, David Cohen-Steiner, Andreas Fabri
|
// Author(s) : Frank Da, David Cohen-Steiner, Andreas Fabri
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: GPL-3.0+
|
||||||
//
|
//
|
||||||
// Author(s) : Frank Da, David Cohen-Steiner, Andreas Fabri
|
// Author(s) : Frank Da, David Cohen-Steiner, Andreas Fabri
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: GPL-3.0+
|
||||||
//
|
//
|
||||||
// Author(s) : Frank Da, David Cohen-Steiner, Andreas Fabri
|
// Author(s) : Frank Da, David Cohen-Steiner, Andreas Fabri
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: GPL-3.0+
|
||||||
//
|
//
|
||||||
// Author(s) : Frank Da, David Cohen-Steiner, Andreas Fabri
|
// Author(s) : Frank Da, David Cohen-Steiner, Andreas Fabri
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: GPL-3.0+
|
||||||
//
|
//
|
||||||
// Author(s) : Frank Da, David Cohen-Steiner, Andreas Fabri
|
// Author(s) : Frank Da, David Cohen-Steiner, Andreas Fabri
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: GPL-3.0+
|
||||||
//
|
//
|
||||||
// Author(s) : Frank Da, David Cohen-Steiner, Andreas Fabri
|
// Author(s) : Frank Da, David Cohen-Steiner, Andreas Fabri
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: GPL-3.0+
|
||||||
//
|
//
|
||||||
// Author(s) : Frank Da, David Cohen-Steiner, Andreas Fabri
|
// Author(s) : Frank Da, David Cohen-Steiner, Andreas Fabri
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
||||||
|
|
@ -29,7 +30,6 @@
|
||||||
#define CGAL_ALGEBRAIC_NUMBER_TRAITS_H 1
|
#define CGAL_ALGEBRAIC_NUMBER_TRAITS_H 1
|
||||||
|
|
||||||
#include <numeric> // for std::accumulate
|
#include <numeric> // for std::accumulate
|
||||||
#include <functional> // for std::unary_function
|
|
||||||
#include <CGAL/tags.h>
|
#include <CGAL/tags.h>
|
||||||
#include <CGAL/Algebraic_structure_traits.h>
|
#include <CGAL/Algebraic_structure_traits.h>
|
||||||
|
|
||||||
|
|
@ -47,7 +47,7 @@ public:
|
||||||
//! computes the factor which normalizes a number to be integral after
|
//! computes the factor which normalizes a number to be integral after
|
||||||
// multiplication
|
// multiplication
|
||||||
class Normalization_factor
|
class Normalization_factor
|
||||||
: public std::unary_function<Type,Type> {
|
: public CGAL::unary_function<Type,Type> {
|
||||||
private:
|
private:
|
||||||
static Type
|
static Type
|
||||||
normalization_factor(const Type&,Integral_domain_without_division_tag){
|
normalization_factor(const Type&,Integral_domain_without_division_tag){
|
||||||
|
|
@ -68,7 +68,7 @@ public:
|
||||||
};
|
};
|
||||||
|
|
||||||
class Denominator_for_algebraic_integers
|
class Denominator_for_algebraic_integers
|
||||||
: public std::unary_function<Type,Type> {
|
: public CGAL::unary_function<Type,Type> {
|
||||||
public:
|
public:
|
||||||
//! determine normalization factor
|
//! determine normalization factor
|
||||||
Type operator () (const Type&) {
|
Type operator () (const Type&) {
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
||||||
|
|
@ -111,7 +112,7 @@ class Algebraic_structure_traits_base< Type_, Null_tag > {
|
||||||
|
|
||||||
// does nothing by default
|
// does nothing by default
|
||||||
class Simplify
|
class Simplify
|
||||||
: public std::unary_function< Type&, void > {
|
: public CGAL::unary_function< Type&, void > {
|
||||||
public:
|
public:
|
||||||
void operator()( Type& ) const {}
|
void operator()( Type& ) const {}
|
||||||
};
|
};
|
||||||
|
|
@ -150,7 +151,7 @@ class Algebraic_structure_traits_base< Type_,
|
||||||
|
|
||||||
// returns Type(1) by default
|
// returns Type(1) by default
|
||||||
class Unit_part
|
class Unit_part
|
||||||
: public std::unary_function< Type, Type > {
|
: public CGAL::unary_function< Type, Type > {
|
||||||
public:
|
public:
|
||||||
Type operator()( const Type& x ) const {
|
Type operator()( const Type& x ) const {
|
||||||
return( x < Type(0)) ?
|
return( x < Type(0)) ?
|
||||||
|
|
@ -159,7 +160,7 @@ class Algebraic_structure_traits_base< Type_,
|
||||||
};
|
};
|
||||||
|
|
||||||
class Square
|
class Square
|
||||||
: public std::unary_function< Type, Type > {
|
: public CGAL::unary_function< Type, Type > {
|
||||||
public:
|
public:
|
||||||
Type operator()( const Type& x ) const {
|
Type operator()( const Type& x ) const {
|
||||||
return x*x;
|
return x*x;
|
||||||
|
|
@ -167,7 +168,7 @@ class Algebraic_structure_traits_base< Type_,
|
||||||
};
|
};
|
||||||
|
|
||||||
class Is_zero
|
class Is_zero
|
||||||
: public std::unary_function< Type, bool > {
|
: public CGAL::unary_function< Type, bool > {
|
||||||
public:
|
public:
|
||||||
bool operator()( const Type& x ) const {
|
bool operator()( const Type& x ) const {
|
||||||
return x == Type(0);
|
return x == Type(0);
|
||||||
|
|
@ -175,7 +176,7 @@ class Algebraic_structure_traits_base< Type_,
|
||||||
};
|
};
|
||||||
|
|
||||||
class Is_one
|
class Is_one
|
||||||
: public std::unary_function< Type, bool > {
|
: public CGAL::unary_function< Type, bool > {
|
||||||
public:
|
public:
|
||||||
bool operator()( const Type& x ) const {
|
bool operator()( const Type& x ) const {
|
||||||
return x == Type(1);
|
return x == Type(1);
|
||||||
|
|
@ -220,7 +221,7 @@ class Algebraic_structure_traits_base< Type_,
|
||||||
// Default implementation of Divides functor for unique factorization domains
|
// Default implementation of Divides functor for unique factorization domains
|
||||||
// x divides y if gcd(y,x) equals x up to inverses
|
// x divides y if gcd(y,x) equals x up to inverses
|
||||||
class Divides
|
class Divides
|
||||||
: public std::binary_function<Type,Type,bool>{
|
: public CGAL::binary_function<Type,Type,bool>{
|
||||||
public:
|
public:
|
||||||
bool operator()( const Type& x, const Type& y) const {
|
bool operator()( const Type& x, const Type& y) const {
|
||||||
typedef CGAL::Algebraic_structure_traits<Type> AST;
|
typedef CGAL::Algebraic_structure_traits<Type> AST;
|
||||||
|
|
@ -256,7 +257,7 @@ class Algebraic_structure_traits_base< Type_,
|
||||||
|
|
||||||
// maps to \c Div by default.
|
// maps to \c Div by default.
|
||||||
class Integral_division
|
class Integral_division
|
||||||
: public std::binary_function< Type, Type,
|
: public CGAL::binary_function< Type, Type,
|
||||||
Type > {
|
Type > {
|
||||||
public:
|
public:
|
||||||
Type operator()(
|
Type operator()(
|
||||||
|
|
@ -278,7 +279,7 @@ class Algebraic_structure_traits_base< Type_,
|
||||||
|
|
||||||
// Algorithm from NiX/euclids_algorithm.h
|
// Algorithm from NiX/euclids_algorithm.h
|
||||||
class Gcd
|
class Gcd
|
||||||
: public std::binary_function< Type, Type,
|
: public CGAL::binary_function< Type, Type,
|
||||||
Type > {
|
Type > {
|
||||||
public:
|
public:
|
||||||
Type operator()(
|
Type operator()(
|
||||||
|
|
@ -371,7 +372,7 @@ class Algebraic_structure_traits_base< Type_,
|
||||||
|
|
||||||
// based on \c Div_mod.
|
// based on \c Div_mod.
|
||||||
class Div
|
class Div
|
||||||
: public std::binary_function< Type, Type,
|
: public CGAL::binary_function< Type, Type,
|
||||||
Type > {
|
Type > {
|
||||||
public:
|
public:
|
||||||
Type operator()( const Type& x,
|
Type operator()( const Type& x,
|
||||||
|
|
@ -389,7 +390,7 @@ class Algebraic_structure_traits_base< Type_,
|
||||||
|
|
||||||
// based on \c Div_mod.
|
// based on \c Div_mod.
|
||||||
class Mod
|
class Mod
|
||||||
: public std::binary_function< Type, Type,
|
: public CGAL::binary_function< Type, Type,
|
||||||
Type > {
|
Type > {
|
||||||
public:
|
public:
|
||||||
Type operator()( const Type& x,
|
Type operator()( const Type& x,
|
||||||
|
|
@ -407,7 +408,7 @@ class Algebraic_structure_traits_base< Type_,
|
||||||
|
|
||||||
// Divides for Euclidean Ring
|
// Divides for Euclidean Ring
|
||||||
class Divides
|
class Divides
|
||||||
: public std::binary_function<Type, Type, bool>{
|
: public CGAL::binary_function<Type, Type, bool>{
|
||||||
public:
|
public:
|
||||||
bool operator()( const Type& x, const Type& y) const {
|
bool operator()( const Type& x, const Type& y) const {
|
||||||
typedef Algebraic_structure_traits<Type> AST;
|
typedef Algebraic_structure_traits<Type> AST;
|
||||||
|
|
@ -447,7 +448,7 @@ class Algebraic_structure_traits_base< Type_, Field_tag >
|
||||||
|
|
||||||
// returns the argument \a a by default
|
// returns the argument \a a by default
|
||||||
class Unit_part
|
class Unit_part
|
||||||
: public std::unary_function< Type, Type > {
|
: public CGAL::unary_function< Type, Type > {
|
||||||
public:
|
public:
|
||||||
Type operator()( const Type& x ) const {
|
Type operator()( const Type& x ) const {
|
||||||
return( x == Type(0)) ? Type(1) : x;
|
return( x == Type(0)) ? Type(1) : x;
|
||||||
|
|
@ -455,7 +456,7 @@ class Algebraic_structure_traits_base< Type_, Field_tag >
|
||||||
};
|
};
|
||||||
// maps to \c operator/ by default.
|
// maps to \c operator/ by default.
|
||||||
class Integral_division
|
class Integral_division
|
||||||
: public std::binary_function< Type, Type,
|
: public CGAL::binary_function< Type, Type,
|
||||||
Type > {
|
Type > {
|
||||||
public:
|
public:
|
||||||
Type operator()( const Type& x,
|
Type operator()( const Type& x,
|
||||||
|
|
@ -474,7 +475,7 @@ class Algebraic_structure_traits_base< Type_, Field_tag >
|
||||||
|
|
||||||
// maps to \c 1/x by default.
|
// maps to \c 1/x by default.
|
||||||
class Inverse
|
class Inverse
|
||||||
: public std::unary_function< Type, Type > {
|
: public CGAL::unary_function< Type, Type > {
|
||||||
public:
|
public:
|
||||||
Type operator()( const Type& x ) const {
|
Type operator()( const Type& x ) const {
|
||||||
return Type(1)/x;
|
return Type(1)/x;
|
||||||
|
|
@ -486,7 +487,7 @@ class Algebraic_structure_traits_base< Type_, Field_tag >
|
||||||
// returns always true
|
// returns always true
|
||||||
// \pre: x != 0
|
// \pre: x != 0
|
||||||
class Divides
|
class Divides
|
||||||
: public std::binary_function< Type, Type, bool > {
|
: public CGAL::binary_function< Type, Type, bool > {
|
||||||
public:
|
public:
|
||||||
bool operator()( const Type& CGAL_precondition_code(x), const Type& /* y */) const {
|
bool operator()( const Type& CGAL_precondition_code(x), const Type& /* y */) const {
|
||||||
CGAL_precondition_code( typedef Algebraic_structure_traits<Type> AST);
|
CGAL_precondition_code( typedef Algebraic_structure_traits<Type> AST);
|
||||||
|
|
@ -522,7 +523,7 @@ class Algebraic_structure_traits_base< Type_,
|
||||||
typedef Field_with_sqrt_tag Algebraic_category;
|
typedef Field_with_sqrt_tag Algebraic_category;
|
||||||
|
|
||||||
struct Is_square
|
struct Is_square
|
||||||
:public std::binary_function<Type,Type&,bool>
|
:public CGAL::binary_function<Type,Type&,bool>
|
||||||
{
|
{
|
||||||
bool operator()(const Type& ) const {return true;}
|
bool operator()(const Type& ) const {return true;}
|
||||||
bool operator()(
|
bool operator()(
|
||||||
|
|
@ -579,7 +580,7 @@ class Algebraic_structure_traits_base< Type_,
|
||||||
namespace INTERN_AST {
|
namespace INTERN_AST {
|
||||||
template< class Type >
|
template< class Type >
|
||||||
class Div_per_operator
|
class Div_per_operator
|
||||||
: public std::binary_function< Type, Type,
|
: public CGAL::binary_function< Type, Type,
|
||||||
Type > {
|
Type > {
|
||||||
public:
|
public:
|
||||||
Type operator()( const Type& x,
|
Type operator()( const Type& x,
|
||||||
|
|
@ -592,7 +593,7 @@ namespace INTERN_AST {
|
||||||
|
|
||||||
template< class Type >
|
template< class Type >
|
||||||
class Mod_per_operator
|
class Mod_per_operator
|
||||||
: public std::binary_function< Type, Type,
|
: public CGAL::binary_function< Type, Type,
|
||||||
Type > {
|
Type > {
|
||||||
public:
|
public:
|
||||||
Type operator()( const Type& x,
|
Type operator()( const Type& x,
|
||||||
|
|
@ -605,7 +606,7 @@ namespace INTERN_AST {
|
||||||
|
|
||||||
template< class Type >
|
template< class Type >
|
||||||
class Is_square_per_sqrt
|
class Is_square_per_sqrt
|
||||||
: public std::binary_function< Type, Type&,
|
: public CGAL::binary_function< Type, Type&,
|
||||||
bool > {
|
bool > {
|
||||||
public:
|
public:
|
||||||
bool operator()( const Type& x,
|
bool operator()( const Type& x,
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
||||||
|
|
@ -36,7 +37,7 @@ struct Is_zero_selector{ typedef AST_is_zero Type; };
|
||||||
template< class T >
|
template< class T >
|
||||||
struct Is_zero_selector< T, Null_functor >
|
struct Is_zero_selector< T, Null_functor >
|
||||||
{
|
{
|
||||||
struct Type : public std::unary_function< T, bool >{
|
struct Type : public CGAL::unary_function< T, bool >{
|
||||||
bool operator()( const T& x ) const {
|
bool operator()( const T& x ) const {
|
||||||
return x == T(0);
|
return x == T(0);
|
||||||
}
|
}
|
||||||
|
|
@ -80,7 +81,7 @@ public:
|
||||||
Is_zero;
|
Is_zero;
|
||||||
|
|
||||||
//! The generic \c Is_finite functor returns true
|
//! The generic \c Is_finite functor returns true
|
||||||
class Is_finite : public std::unary_function< Type, Boolean > {
|
class Is_finite : public CGAL::unary_function< Type, Boolean > {
|
||||||
public:
|
public:
|
||||||
Boolean operator()( const Type& ) const {
|
Boolean operator()( const Type& ) const {
|
||||||
return true;
|
return true;
|
||||||
|
|
@ -90,7 +91,7 @@ public:
|
||||||
//! The generic \c Abs functor implementation
|
//! The generic \c Abs functor implementation
|
||||||
//! uses one comparisons and the unary minus if necessary.
|
//! uses one comparisons and the unary minus if necessary.
|
||||||
class Abs
|
class Abs
|
||||||
: public std::unary_function< Type, Type > {
|
: public CGAL::unary_function< Type, Type > {
|
||||||
public:
|
public:
|
||||||
//! the function call.
|
//! the function call.
|
||||||
Type operator()( const Type& x ) const {
|
Type operator()( const Type& x ) const {
|
||||||
|
|
@ -100,7 +101,7 @@ public:
|
||||||
|
|
||||||
//! The generic \c Sgn functor implementation uses two comparisons.
|
//! The generic \c Sgn functor implementation uses two comparisons.
|
||||||
class Sgn
|
class Sgn
|
||||||
: public std::unary_function< Type, ::CGAL::Sign > {
|
: public CGAL::unary_function< Type, ::CGAL::Sign > {
|
||||||
public:
|
public:
|
||||||
//! the function call.
|
//! the function call.
|
||||||
::CGAL::Sign operator()( const Type& x ) const {
|
::CGAL::Sign operator()( const Type& x ) const {
|
||||||
|
|
@ -114,7 +115,7 @@ public:
|
||||||
|
|
||||||
//! The generic \c Is_positive functor implementation uses one comparison.
|
//! The generic \c Is_positive functor implementation uses one comparison.
|
||||||
class Is_positive
|
class Is_positive
|
||||||
: public std::unary_function< Type, Boolean > {
|
: public CGAL::unary_function< Type, Boolean > {
|
||||||
public:
|
public:
|
||||||
//! the function call.
|
//! the function call.
|
||||||
Boolean operator()( const Type& x ) const {
|
Boolean operator()( const Type& x ) const {
|
||||||
|
|
@ -124,7 +125,7 @@ public:
|
||||||
|
|
||||||
//! The generic \c Is_negative functor implementation uses one comparison.
|
//! The generic \c Is_negative functor implementation uses one comparison.
|
||||||
class Is_negative
|
class Is_negative
|
||||||
: public std::unary_function< Type, Boolean > {
|
: public CGAL::unary_function< Type, Boolean > {
|
||||||
public:
|
public:
|
||||||
//! the function call.
|
//! the function call.
|
||||||
Boolean operator()( const Type& x ) const {
|
Boolean operator()( const Type& x ) const {
|
||||||
|
|
@ -134,7 +135,7 @@ public:
|
||||||
|
|
||||||
//! The generic \c Compare functor implementation uses two comparisons.
|
//! The generic \c Compare functor implementation uses two comparisons.
|
||||||
class Compare
|
class Compare
|
||||||
: public std::binary_function< Type, Type,
|
: public CGAL::binary_function< Type, Type,
|
||||||
Comparison_result > {
|
Comparison_result > {
|
||||||
public:
|
public:
|
||||||
//! the function call.
|
//! the function call.
|
||||||
|
|
@ -151,7 +152,7 @@ public:
|
||||||
Comparison_result )
|
Comparison_result )
|
||||||
};
|
};
|
||||||
|
|
||||||
class To_double : public std::unary_function< Type, double > {
|
class To_double : public CGAL::unary_function< Type, double > {
|
||||||
public:
|
public:
|
||||||
double operator()( const Type& x ) const {
|
double operator()( const Type& x ) const {
|
||||||
return static_cast<double>(x);
|
return static_cast<double>(x);
|
||||||
|
|
@ -159,7 +160,7 @@ public:
|
||||||
};
|
};
|
||||||
|
|
||||||
class To_interval
|
class To_interval
|
||||||
: public std::unary_function< Type, std::pair<double,double> > {
|
: public CGAL::unary_function< Type, std::pair<double,double> > {
|
||||||
public:
|
public:
|
||||||
std::pair<double,double> operator()( const Type& x ) const {
|
std::pair<double,double> operator()( const Type& x ) const {
|
||||||
double dx(static_cast<double>(x));
|
double dx(static_cast<double>(x));
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Lutz Kettner <kettner@mpi-inf.mpg.de>
|
// Author(s) : Lutz Kettner <kettner@mpi-inf.mpg.de>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
// Author(s) : Lutz Kettner <kettner@mpi-inf.mpg.de>
|
// Author(s) : Lutz Kettner <kettner@mpi-inf.mpg.de>
|
||||||
// Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
// Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Hemmer, Dominik Huelse
|
// Author(s) : Michael Hemmer, Dominik Huelse
|
||||||
//
|
//
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Hemmer
|
// Author(s) : Michael Hemmer
|
||||||
|
|
|
||||||
|
|
@ -18,6 +18,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Stefan Schirra
|
// Author(s) : Stefan Schirra
|
||||||
|
|
|
||||||
|
|
@ -18,6 +18,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Hoffmann <hoffmann@inf.ethz.ch>
|
// Author(s) : Michael Hoffmann <hoffmann@inf.ethz.ch>
|
||||||
|
|
@ -101,7 +102,7 @@ struct Is_zero :
|
||||||
namespace internal {
|
namespace internal {
|
||||||
template <class NT, class Compare> struct Compare_base: public Compare {};
|
template <class NT, class Compare> struct Compare_base: public Compare {};
|
||||||
template <class NT> struct Compare_base<NT,Null_functor>
|
template <class NT> struct Compare_base<NT,Null_functor>
|
||||||
:public std::binary_function< NT, NT, Comparison_result > {
|
:public CGAL::binary_function< NT, NT, Comparison_result > {
|
||||||
Comparison_result operator()( const NT& x, const NT& y) const
|
Comparison_result operator()( const NT& x, const NT& y) const
|
||||||
{
|
{
|
||||||
if (x < y) return SMALLER;
|
if (x < y) return SMALLER;
|
||||||
|
|
|
||||||
|
|
@ -21,6 +21,7 @@
|
||||||
// CGAL_release : $Name: $
|
// CGAL_release : $Name: $
|
||||||
// Revision : $Revision$
|
// Revision : $Revision$
|
||||||
// Revision_date : $Date$
|
// Revision_date : $Date$
|
||||||
|
// SPDX-License-Identifier: GPL-3.0+
|
||||||
//
|
//
|
||||||
// Author(s) : Dominik H<>lse <dominik.huelse@gmx.de>
|
// Author(s) : Dominik H<>lse <dominik.huelse@gmx.de>
|
||||||
// Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
// Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Hemmer, Dominik Hülse
|
// Author(s) : Michael Hemmer, Dominik Hülse
|
||||||
//
|
//
|
||||||
|
|
|
||||||
|
|
@ -12,8 +12,10 @@
|
||||||
// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
|
// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
|
||||||
// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
||||||
//
|
//
|
||||||
// $URL: svn+ssh://hemmer@scm.gforge.inria.fr/svn/cgal/trunk/Algebraic_foundations/test/Algebraic_foundations/extended_euclidean_algorithm.cpp $
|
// $URL$
|
||||||
// $Id: extended_euclidean_algorithm.cpp 47265 2008-12-08 06:26:27Z hemmer $
|
// $Id$
|
||||||
|
//
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Hemmer
|
// Author(s) : Michael Hemmer
|
||||||
//
|
//
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Eric Berberich <eric@mpi-inf.mpg.de>
|
// Author(s) : Eric Berberich <eric@mpi-inf.mpg.de>
|
||||||
|
|
@ -193,7 +194,7 @@ protected:
|
||||||
|
|
||||||
//! polynomial canonicalizer, needed for the cache
|
//! polynomial canonicalizer, needed for the cache
|
||||||
template <class Poly>
|
template <class Poly>
|
||||||
struct Poly_canonicalizer : public std::unary_function< Poly, Poly >
|
struct Poly_canonicalizer : public CGAL::unary_function< Poly, Poly >
|
||||||
{
|
{
|
||||||
// use Polynomial_traits_d<>::Canonicalize ?
|
// use Polynomial_traits_d<>::Canonicalize ?
|
||||||
Poly operator()(Poly p)
|
Poly operator()(Poly p)
|
||||||
|
|
@ -349,7 +350,7 @@ public:
|
||||||
// Composition of two unary functors
|
// Composition of two unary functors
|
||||||
template<typename InnerFunctor,typename OuterFunctor>
|
template<typename InnerFunctor,typename OuterFunctor>
|
||||||
class Unary_compose
|
class Unary_compose
|
||||||
: public std::unary_function<typename InnerFunctor::argument_type,
|
: public CGAL::unary_function<typename InnerFunctor::argument_type,
|
||||||
typename OuterFunctor::result_type> {
|
typename OuterFunctor::result_type> {
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
@ -412,7 +413,7 @@ public:
|
||||||
* when appropriate
|
* when appropriate
|
||||||
*/
|
*/
|
||||||
class Construct_curve_2 :
|
class Construct_curve_2 :
|
||||||
public std::unary_function< Polynomial_2, Curve_analysis_2 > {
|
public CGAL::unary_function< Polynomial_2, Curve_analysis_2 > {
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
|
|
@ -436,7 +437,7 @@ public:
|
||||||
* caching is used when appropriate
|
* caching is used when appropriate
|
||||||
*/
|
*/
|
||||||
class Construct_curve_pair_2 :
|
class Construct_curve_pair_2 :
|
||||||
public std::binary_function<Curve_analysis_2, Curve_analysis_2,
|
public CGAL::binary_function<Curve_analysis_2, Curve_analysis_2,
|
||||||
Curve_pair_analysis_2> {
|
Curve_pair_analysis_2> {
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
@ -629,7 +630,7 @@ public:
|
||||||
|
|
||||||
|
|
||||||
class Compute_polynomial_x_2 :
|
class Compute_polynomial_x_2 :
|
||||||
public std::unary_function<Algebraic_real_2, Polynomial_1> {
|
public CGAL::unary_function<Algebraic_real_2, Polynomial_1> {
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
|
|
@ -649,7 +650,7 @@ public:
|
||||||
compute_polynomial_x_2_object);
|
compute_polynomial_x_2_object);
|
||||||
|
|
||||||
class Compute_polynomial_y_2 :
|
class Compute_polynomial_y_2 :
|
||||||
public std::unary_function<Algebraic_real_2, Polynomial_1> {
|
public CGAL::unary_function<Algebraic_real_2, Polynomial_1> {
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
|
|
@ -669,7 +670,7 @@ public:
|
||||||
compute_polynomial_y_2_object);
|
compute_polynomial_y_2_object);
|
||||||
|
|
||||||
|
|
||||||
class Isolate_x_2 : public std::binary_function<Algebraic_real_2,
|
class Isolate_x_2 : public CGAL::binary_function<Algebraic_real_2,
|
||||||
Polynomial_1,
|
Polynomial_1,
|
||||||
std::pair<Bound,Bound> > {
|
std::pair<Bound,Bound> > {
|
||||||
|
|
||||||
|
|
@ -692,7 +693,7 @@ public:
|
||||||
CGAL_Algebraic_Kernel_cons(Isolate_x_2,
|
CGAL_Algebraic_Kernel_cons(Isolate_x_2,
|
||||||
isolate_x_2_object);
|
isolate_x_2_object);
|
||||||
|
|
||||||
class Isolate_y_2 : public std::binary_function<Algebraic_real_2,
|
class Isolate_y_2 : public CGAL::binary_function<Algebraic_real_2,
|
||||||
Polynomial_1,
|
Polynomial_1,
|
||||||
std::pair<Bound,Bound> > {
|
std::pair<Bound,Bound> > {
|
||||||
|
|
||||||
|
|
@ -880,7 +881,7 @@ public:
|
||||||
|
|
||||||
//! returns the x-coordinate of an \c Algebraic_real_2 object
|
//! returns the x-coordinate of an \c Algebraic_real_2 object
|
||||||
class Compute_x_2 :
|
class Compute_x_2 :
|
||||||
public std::unary_function<Algebraic_real_2, Algebraic_real_1> {
|
public CGAL::unary_function<Algebraic_real_2, Algebraic_real_1> {
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
|
|
@ -915,7 +916,7 @@ public:
|
||||||
* return approximation of the y-coordinate.
|
* return approximation of the y-coordinate.
|
||||||
*/
|
*/
|
||||||
class Compute_y_2 :
|
class Compute_y_2 :
|
||||||
public std::unary_function<Algebraic_real_2, Algebraic_real_1> {
|
public CGAL::unary_function<Algebraic_real_2, Algebraic_real_1> {
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
|
|
@ -938,7 +939,7 @@ public:
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
class Approximate_absolute_x_2
|
class Approximate_absolute_x_2
|
||||||
: public std::binary_function<Algebraic_real_2,int,std::pair<Bound,Bound> >{
|
: public CGAL::binary_function<Algebraic_real_2,int,std::pair<Bound,Bound> >{
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
|
|
@ -961,7 +962,7 @@ public:
|
||||||
approximate_absolute_x_2_object);
|
approximate_absolute_x_2_object);
|
||||||
|
|
||||||
class Approximate_relative_x_2
|
class Approximate_relative_x_2
|
||||||
: public std::binary_function<Algebraic_real_2,int,std::pair<Bound,Bound> >{
|
: public CGAL::binary_function<Algebraic_real_2,int,std::pair<Bound,Bound> >{
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
|
|
@ -983,7 +984,7 @@ public:
|
||||||
approximate_relative_x_2_object);
|
approximate_relative_x_2_object);
|
||||||
|
|
||||||
class Approximate_absolute_y_2
|
class Approximate_absolute_y_2
|
||||||
: public std::binary_function<Algebraic_real_2,int,std::pair<Bound,Bound> >{
|
: public CGAL::binary_function<Algebraic_real_2,int,std::pair<Bound,Bound> >{
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
|
|
@ -1013,7 +1014,7 @@ public:
|
||||||
approximate_absolute_y_2_object);
|
approximate_absolute_y_2_object);
|
||||||
|
|
||||||
class Approximate_relative_y_2
|
class Approximate_relative_y_2
|
||||||
: public std::binary_function<Algebraic_real_2,int,std::pair<Bound,Bound> >{
|
: public CGAL::binary_function<Algebraic_real_2,int,std::pair<Bound,Bound> >{
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
|
|
@ -1164,7 +1165,7 @@ public:
|
||||||
|
|
||||||
//! \brief comparison of x-coordinates
|
//! \brief comparison of x-coordinates
|
||||||
class Compare_x_2 :
|
class Compare_x_2 :
|
||||||
public std::binary_function<Algebraic_real_2, Algebraic_real_2,
|
public CGAL::binary_function<Algebraic_real_2, Algebraic_real_2,
|
||||||
Comparison_result > {
|
Comparison_result > {
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
@ -1257,7 +1258,7 @@ public:
|
||||||
* If possible, it is recommended to avoid this functor for efficiency.}
|
* If possible, it is recommended to avoid this functor for efficiency.}
|
||||||
*/
|
*/
|
||||||
class Compare_y_2 :
|
class Compare_y_2 :
|
||||||
public std::binary_function< Algebraic_real_2, Algebraic_real_2,
|
public CGAL::binary_function< Algebraic_real_2, Algebraic_real_2,
|
||||||
Comparison_result > {
|
Comparison_result > {
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
@ -1369,7 +1370,7 @@ public:
|
||||||
* to have equal x-coordinates, thus only the y-coordinates are compared.
|
* to have equal x-coordinates, thus only the y-coordinates are compared.
|
||||||
*/
|
*/
|
||||||
class Compare_xy_2 :
|
class Compare_xy_2 :
|
||||||
public std::binary_function<Algebraic_real_2, Algebraic_real_2,
|
public CGAL::binary_function<Algebraic_real_2, Algebraic_real_2,
|
||||||
Comparison_result > {
|
Comparison_result > {
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
@ -1500,7 +1501,7 @@ public:
|
||||||
* the polynomial \c p is square free.
|
* the polynomial \c p is square free.
|
||||||
*/
|
*/
|
||||||
class Has_finite_number_of_self_intersections_2 :
|
class Has_finite_number_of_self_intersections_2 :
|
||||||
public std::unary_function< Polynomial_2, bool > {
|
public CGAL::unary_function< Polynomial_2, bool > {
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
|
|
@ -1529,7 +1530,7 @@ public:
|
||||||
* the two polynomials \c f and \c g are coprime.
|
* the two polynomials \c f and \c g are coprime.
|
||||||
*/
|
*/
|
||||||
class Has_finite_number_of_intersections_2 :
|
class Has_finite_number_of_intersections_2 :
|
||||||
public std::binary_function< Polynomial_2, Polynomial_2, bool > {
|
public CGAL::binary_function< Polynomial_2, Polynomial_2, bool > {
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
|
|
@ -1713,7 +1714,7 @@ public:
|
||||||
//! Non-Algebraic name
|
//! Non-Algebraic name
|
||||||
typedef Algebraic_real_2 Coordinate_2;
|
typedef Algebraic_real_2 Coordinate_2;
|
||||||
|
|
||||||
class Is_square_free_2 : public std::unary_function<Polynomial_2,bool> {
|
class Is_square_free_2 : public CGAL::unary_function<Polynomial_2,bool> {
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
|
|
@ -1735,7 +1736,7 @@ public:
|
||||||
typedef Has_finite_number_of_intersections_2 Is_coprime_2;
|
typedef Has_finite_number_of_intersections_2 Is_coprime_2;
|
||||||
CGAL_Algebraic_Kernel_cons(Is_coprime_2, is_coprime_2_object);
|
CGAL_Algebraic_Kernel_cons(Is_coprime_2, is_coprime_2_object);
|
||||||
|
|
||||||
class Make_square_free_2 : public std::unary_function<Polynomial_2,
|
class Make_square_free_2 : public CGAL::unary_function<Polynomial_2,
|
||||||
Polynomial_2> {
|
Polynomial_2> {
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
@ -1800,7 +1801,7 @@ public:
|
||||||
* In pariticular, each singular point is x-critical.
|
* In pariticular, each singular point is x-critical.
|
||||||
*/
|
*/
|
||||||
class X_critical_points_2 :
|
class X_critical_points_2 :
|
||||||
public std::binary_function< Curve_analysis_2,
|
public CGAL::binary_function< Curve_analysis_2,
|
||||||
std::iterator<std::output_iterator_tag, Algebraic_real_2>,
|
std::iterator<std::output_iterator_tag, Algebraic_real_2>,
|
||||||
std::iterator<std::output_iterator_tag, Algebraic_real_2> > {
|
std::iterator<std::output_iterator_tag, Algebraic_real_2> > {
|
||||||
|
|
||||||
|
|
@ -1879,7 +1880,7 @@ public:
|
||||||
* In pariticular, each singular point is y-critical.
|
* In pariticular, each singular point is y-critical.
|
||||||
*/
|
*/
|
||||||
class Y_critical_points_2 :
|
class Y_critical_points_2 :
|
||||||
public std::binary_function< Curve_analysis_2,
|
public CGAL::binary_function< Curve_analysis_2,
|
||||||
std::iterator<std::output_iterator_tag, Algebraic_real_2>,
|
std::iterator<std::output_iterator_tag, Algebraic_real_2>,
|
||||||
std::iterator<std::output_iterator_tag, Algebraic_real_2> > {
|
std::iterator<std::output_iterator_tag, Algebraic_real_2> > {
|
||||||
|
|
||||||
|
|
@ -1974,7 +1975,7 @@ public:
|
||||||
// Overload the Sign_at_1 functor, to enable filter steps in the
|
// Overload the Sign_at_1 functor, to enable filter steps in the
|
||||||
// Curve analysis in a coherent way
|
// Curve analysis in a coherent way
|
||||||
class Sign_at_1
|
class Sign_at_1
|
||||||
: public::std::binary_function<Polynomial_1,Algebraic_real_1,Sign> {
|
: public::CGAL::binary_function<Polynomial_1,Algebraic_real_1,Sign> {
|
||||||
|
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
@ -2051,7 +2052,7 @@ public:
|
||||||
* curve. Returns a value convertible to \c CGAL::Sign
|
* curve. Returns a value convertible to \c CGAL::Sign
|
||||||
*/
|
*/
|
||||||
class Sign_at_2 :
|
class Sign_at_2 :
|
||||||
public std::binary_function<Polynomial_2, Algebraic_real_2, Sign > {
|
public CGAL::binary_function<Polynomial_2, Algebraic_real_2, Sign > {
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
|
|
@ -2147,7 +2148,7 @@ public:
|
||||||
CGAL_Algebraic_Kernel_pred(Sign_at_2, sign_at_2_object);
|
CGAL_Algebraic_Kernel_pred(Sign_at_2, sign_at_2_object);
|
||||||
|
|
||||||
class Is_zero_at_2
|
class Is_zero_at_2
|
||||||
: public std::binary_function<Polynomial_2,Algebraic_real_2,bool> {
|
: public CGAL::binary_function<Polynomial_2,Algebraic_real_2,bool> {
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
|
|
@ -2491,7 +2492,7 @@ public:
|
||||||
CGAL_Algebraic_Kernel_cons(Solve_2, solve_2_object);
|
CGAL_Algebraic_Kernel_cons(Solve_2, solve_2_object);
|
||||||
|
|
||||||
class Number_of_solutions_2
|
class Number_of_solutions_2
|
||||||
: public std::binary_function<Polynomial_2,Polynomial_2,size_type> {
|
: public CGAL::binary_function<Polynomial_2,Polynomial_2,size_type> {
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
|
|
@ -2517,7 +2518,7 @@ public:
|
||||||
// Functor used to evaluate a Polynomial_2 in a Bound, up to a
|
// Functor used to evaluate a Polynomial_2 in a Bound, up to a
|
||||||
// constant factor
|
// constant factor
|
||||||
class Evaluate_utcf_2
|
class Evaluate_utcf_2
|
||||||
: public std::binary_function<Polynomial_2,Bound,Polynomial_1> {
|
: public CGAL::binary_function<Polynomial_2,Bound,Polynomial_1> {
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
|
|
@ -2593,7 +2594,7 @@ public:
|
||||||
|
|
||||||
//! Refines the x-coordinate of an Algebraic_real_2 object
|
//! Refines the x-coordinate of an Algebraic_real_2 object
|
||||||
class Refine_x_2 :
|
class Refine_x_2 :
|
||||||
public std::unary_function<Algebraic_real_2, void> {
|
public CGAL::unary_function<Algebraic_real_2, void> {
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
|
|
@ -2617,7 +2618,7 @@ public:
|
||||||
CGAL_Algebraic_Kernel_pred(Refine_x_2, refine_x_2_object);
|
CGAL_Algebraic_Kernel_pred(Refine_x_2, refine_x_2_object);
|
||||||
|
|
||||||
class Refine_y_2 :
|
class Refine_y_2 :
|
||||||
public std::unary_function<Algebraic_real_2, void> {
|
public CGAL::unary_function<Algebraic_real_2, void> {
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
||||||
|
|
@ -384,7 +385,7 @@ public:
|
||||||
typedef internal::Algebraic_real_d_1< Coefficient, Rational, HandlePolicy, RepClass > Type;
|
typedef internal::Algebraic_real_d_1< Coefficient, Rational, HandlePolicy, RepClass > Type;
|
||||||
|
|
||||||
class Compare
|
class Compare
|
||||||
: public std::binary_function< Type, Type, CGAL::Comparison_result > {
|
: public CGAL::binary_function< Type, Type, CGAL::Comparison_result > {
|
||||||
public:
|
public:
|
||||||
CGAL::Comparison_result operator()( const Type& a, const Type& b ) const
|
CGAL::Comparison_result operator()( const Type& a, const Type& b ) const
|
||||||
{ return a.compare( b ); }
|
{ return a.compare( b ); }
|
||||||
|
|
@ -413,7 +414,7 @@ public:
|
||||||
};
|
};
|
||||||
|
|
||||||
class Sgn
|
class Sgn
|
||||||
: public std::unary_function< Type, CGAL::Sign > {
|
: public CGAL::unary_function< Type, CGAL::Sign > {
|
||||||
public:
|
public:
|
||||||
CGAL::Sign operator()( const Type& a ) const {
|
CGAL::Sign operator()( const Type& a ) const {
|
||||||
return a.compare( Rational(0) );
|
return a.compare( Rational(0) );
|
||||||
|
|
@ -421,7 +422,7 @@ public:
|
||||||
};
|
};
|
||||||
|
|
||||||
class To_double
|
class To_double
|
||||||
: public std::unary_function< Type, double > {
|
: public CGAL::unary_function< Type, double > {
|
||||||
public:
|
public:
|
||||||
double operator()(const Type& a) const {
|
double operator()(const Type& a) const {
|
||||||
return a.to_double();
|
return a.to_double();
|
||||||
|
|
@ -429,7 +430,7 @@ public:
|
||||||
};
|
};
|
||||||
|
|
||||||
class To_interval
|
class To_interval
|
||||||
: public std::unary_function< Type, std::pair<double, double> > {
|
: public CGAL::unary_function< Type, std::pair<double, double> > {
|
||||||
public:
|
public:
|
||||||
typename std::pair<double, double> operator()(const Type& a) const {
|
typename std::pair<double, double> operator()(const Type& a) const {
|
||||||
return a.to_interval();
|
return a.to_interval();
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Kerber <mkerber@mpi-inf.mpg.de>
|
// Author(s) : Michael Kerber <mkerber@mpi-inf.mpg.de>
|
||||||
|
|
@ -49,7 +50,7 @@ template <typename Coefficient_> struct Bitstream_coefficient_kernel {
|
||||||
return Is_zero();
|
return Is_zero();
|
||||||
}
|
}
|
||||||
|
|
||||||
struct Convert_to_bfi : public std::unary_function
|
struct Convert_to_bfi : public CGAL::unary_function
|
||||||
<Coefficient,Bigfloat_interval> {
|
<Coefficient,Bigfloat_interval> {
|
||||||
|
|
||||||
Bigfloat_interval operator() (Coefficient c) const {
|
Bigfloat_interval operator() (Coefficient c) const {
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Kerber <mkerber@mpi-inf.mpg.de>
|
// Author(s) : Michael Kerber <mkerber@mpi-inf.mpg.de>
|
||||||
|
|
@ -117,7 +118,7 @@ public:
|
||||||
//! \name Functors
|
//! \name Functors
|
||||||
//! @{
|
//! @{
|
||||||
|
|
||||||
struct Is_zero : public std::unary_function<Coefficient,bool> {
|
struct Is_zero : public CGAL::unary_function<Coefficient,bool> {
|
||||||
|
|
||||||
Is_zero(Algebraic_kernel_d_1* kernel,Algebraic_real_1 alpha)
|
Is_zero(Algebraic_kernel_d_1* kernel,Algebraic_real_1 alpha)
|
||||||
: _m_kernel(kernel),_m_alpha(alpha) {}
|
: _m_kernel(kernel),_m_alpha(alpha) {}
|
||||||
|
|
@ -137,7 +138,7 @@ public:
|
||||||
}
|
}
|
||||||
|
|
||||||
struct Convert_to_bfi
|
struct Convert_to_bfi
|
||||||
: public std::unary_function<Coefficient,Bigfloat_interval> {
|
: public CGAL::unary_function<Coefficient,Bigfloat_interval> {
|
||||||
|
|
||||||
Convert_to_bfi(Algebraic_kernel_d_1* kernel,
|
Convert_to_bfi(Algebraic_kernel_d_1* kernel,
|
||||||
Algebraic_real_1 alpha)
|
Algebraic_real_1 alpha)
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Kerber <mkerber@mpi-inf.mpg.de>
|
// Author(s) : Michael Kerber <mkerber@mpi-inf.mpg.de>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Arno Eigenwillig <arno@mpi-inf.mpg.de>
|
// Author(s) : Arno Eigenwillig <arno@mpi-inf.mpg.de>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Arno Eigenwillig <arno@mpi-inf.mpg.de>
|
// Author(s) : Arno Eigenwillig <arno@mpi-inf.mpg.de>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Kerber <mkerber@mpi-inf.mpg.de>
|
// Author(s) : Michael Kerber <mkerber@mpi-inf.mpg.de>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Kerber <mkerber@mpi-inf.mpg.de>
|
// Author(s) : Michael Kerber <mkerber@mpi-inf.mpg.de>
|
||||||
|
|
@ -111,7 +112,7 @@ template<typename Comparable>
|
||||||
};
|
};
|
||||||
|
|
||||||
template<typename Comparable> struct Compare_for_vert_line_map
|
template<typename Comparable> struct Compare_for_vert_line_map
|
||||||
: public std::binary_function<Comparable,Comparable,bool> {
|
: public CGAL::binary_function<Comparable,Comparable,bool> {
|
||||||
|
|
||||||
BOOST_MPL_HAS_XXX_TRAIT_DEF(T)
|
BOOST_MPL_HAS_XXX_TRAIT_DEF(T)
|
||||||
BOOST_MPL_HAS_XXX_TRAIT_DEF(Handle_policy)
|
BOOST_MPL_HAS_XXX_TRAIT_DEF(Handle_policy)
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Eric Berberich <eric@mpi-inf.mpg.de>
|
// Author(s) : Eric Berberich <eric@mpi-inf.mpg.de>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Kerber <mkerber@mpi-inf.mpg.de>
|
// Author(s) : Michael Kerber <mkerber@mpi-inf.mpg.de>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
||||||
|
|
@ -65,7 +66,7 @@ template<>
|
||||||
class Float_traits< leda_bigfloat > {
|
class Float_traits< leda_bigfloat > {
|
||||||
public:
|
public:
|
||||||
struct Get_mantissa
|
struct Get_mantissa
|
||||||
: public std::unary_function< leda_bigfloat, leda_integer > {
|
: public CGAL::unary_function< leda_bigfloat, leda_integer > {
|
||||||
leda_integer operator()( const leda_bigfloat& x ) const {
|
leda_integer operator()( const leda_bigfloat& x ) const {
|
||||||
//std::cout << x.get_significant() << std::endl;
|
//std::cout << x.get_significant() << std::endl;
|
||||||
return x.get_significant();
|
return x.get_significant();
|
||||||
|
|
@ -73,14 +74,14 @@ public:
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Get_exponent
|
struct Get_exponent
|
||||||
: public std::unary_function< leda_bigfloat, long > {
|
: public CGAL::unary_function< leda_bigfloat, long > {
|
||||||
long operator()( const leda_bigfloat& x ) const {
|
long operator()( const leda_bigfloat& x ) const {
|
||||||
return x.get_exponent().to_long();
|
return x.get_exponent().to_long();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Mul_by_pow_of_2
|
struct Mul_by_pow_of_2
|
||||||
: public std::binary_function< leda_bigfloat, long, leda_bigfloat> {
|
: public CGAL::binary_function< leda_bigfloat, long, leda_bigfloat> {
|
||||||
leda_bigfloat operator()( const leda_bigfloat& a, long e ) const {
|
leda_bigfloat operator()( const leda_bigfloat& a, long e ) const {
|
||||||
return leda_bigfloat(a.get_significant(), a.get_exponent()+e);
|
return leda_bigfloat(a.get_significant(), a.get_exponent()+e);
|
||||||
}
|
}
|
||||||
|
|
@ -97,21 +98,21 @@ class Float_traits< CORE::BigFloat > {
|
||||||
public:
|
public:
|
||||||
|
|
||||||
struct Get_mantissa
|
struct Get_mantissa
|
||||||
: public std::unary_function< CORE::BigFloat, CORE::BigInt > {
|
: public CGAL::unary_function< CORE::BigFloat, CORE::BigInt > {
|
||||||
CORE::BigInt operator()( const CORE::BigFloat& x ) const {
|
CORE::BigInt operator()( const CORE::BigFloat& x ) const {
|
||||||
return x.m();
|
return x.m();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Get_exponent
|
struct Get_exponent
|
||||||
: public std::unary_function< CORE::BigFloat, long > {
|
: public CGAL::unary_function< CORE::BigFloat, long > {
|
||||||
long operator()( const CORE::BigFloat& x ) const {
|
long operator()( const CORE::BigFloat& x ) const {
|
||||||
return CORE::CHUNK_BIT*x.exp(); // The basis is 2^CORE::CHUNK_BIT
|
return CORE::CHUNK_BIT*x.exp(); // The basis is 2^CORE::CHUNK_BIT
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Mul_by_pow_of_2
|
struct Mul_by_pow_of_2
|
||||||
: public std::binary_function
|
: public CGAL::binary_function
|
||||||
< CORE::BigFloat, long , CORE::BigFloat> {
|
< CORE::BigFloat, long , CORE::BigFloat> {
|
||||||
CORE::BigFloat operator()( const CORE::BigFloat& a, long e ) const {
|
CORE::BigFloat operator()( const CORE::BigFloat& a, long e ) const {
|
||||||
return a*CORE::BigFloat::exp2(e);
|
return a*CORE::BigFloat::exp2(e);
|
||||||
|
|
@ -126,7 +127,7 @@ public:
|
||||||
template<> class Float_traits< Gmpfr > {
|
template<> class Float_traits< Gmpfr > {
|
||||||
|
|
||||||
struct Get_mantissa_exponent
|
struct Get_mantissa_exponent
|
||||||
: public std::unary_function< Gmpfr, std::pair<Gmpz,long> > {
|
: public CGAL::unary_function< Gmpfr, std::pair<Gmpz,long> > {
|
||||||
|
|
||||||
std::pair<Gmpz,long> operator()( const Gmpfr& x ) const {
|
std::pair<Gmpz,long> operator()( const Gmpfr& x ) const {
|
||||||
return x.to_integer_exp();
|
return x.to_integer_exp();
|
||||||
|
|
@ -134,21 +135,21 @@ template<> class Float_traits< Gmpfr > {
|
||||||
};
|
};
|
||||||
public:
|
public:
|
||||||
struct Get_mantissa
|
struct Get_mantissa
|
||||||
: public std::unary_function< Gmpfr, Gmpz > {
|
: public CGAL::unary_function< Gmpfr, Gmpz > {
|
||||||
Gmpz operator()( const Gmpfr& x ) const {
|
Gmpz operator()( const Gmpfr& x ) const {
|
||||||
return Get_mantissa_exponent()(x).first;
|
return Get_mantissa_exponent()(x).first;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Get_exponent
|
struct Get_exponent
|
||||||
: public std::unary_function< Gmpfr, long > {
|
: public CGAL::unary_function< Gmpfr, long > {
|
||||||
long operator()( const Gmpfr& x ) const {
|
long operator()( const Gmpfr& x ) const {
|
||||||
return Get_mantissa_exponent()(x).second;
|
return Get_mantissa_exponent()(x).second;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Mul_by_pow_of_2
|
struct Mul_by_pow_of_2
|
||||||
: public std::binary_function< Gmpfr, Gmpz, Gmpfr> {
|
: public CGAL::binary_function< Gmpfr, Gmpz, Gmpfr> {
|
||||||
Gmpfr operator()( const Gmpfr& a, long e ) const {
|
Gmpfr operator()( const Gmpfr& a, long e ) const {
|
||||||
Gmpfr result(0,a.get_precision()); // just to get the prec of a
|
Gmpfr result(0,a.get_precision()); // just to get the prec of a
|
||||||
if (e >= 0 ){
|
if (e >= 0 ){
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Kerber <mkerber@mpi-inf.mpg.de>
|
// Author(s) : Michael Kerber <mkerber@mpi-inf.mpg.de>
|
||||||
|
|
@ -38,7 +39,7 @@ namespace CGAL {
|
||||||
namespace internal {
|
namespace internal {
|
||||||
|
|
||||||
template<typename Polynomial_1, typename Bound>
|
template<typename Polynomial_1, typename Bound>
|
||||||
struct Interval_evaluate_1 : public std::binary_function
|
struct Interval_evaluate_1 : public CGAL::binary_function
|
||||||
<Polynomial_1,std::pair<Bound,Bound>,
|
<Polynomial_1,std::pair<Bound,Bound>,
|
||||||
std::pair<typename CGAL::Coercion_traits<typename
|
std::pair<typename CGAL::Coercion_traits<typename
|
||||||
CGAL::Polynomial_traits_d<Polynomial_1>::Coefficient_type,Bound>::Type,
|
CGAL::Polynomial_traits_d<Polynomial_1>::Coefficient_type,Bound>::Type,
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Kerber <mkerber@mpi-inf.mpg.de>
|
// Author(s) : Michael Kerber <mkerber@mpi-inf.mpg.de>
|
||||||
|
|
@ -39,7 +40,7 @@ namespace CGAL {
|
||||||
namespace internal {
|
namespace internal {
|
||||||
|
|
||||||
template<typename Polynomial_2, typename Bound>
|
template<typename Polynomial_2, typename Bound>
|
||||||
struct Interval_evaluate_2 : public std::binary_function
|
struct Interval_evaluate_2 : public CGAL::binary_function
|
||||||
<Polynomial_2,CGAL::cpp11::array<Bound,4>,
|
<Polynomial_2,CGAL::cpp11::array<Bound,4>,
|
||||||
std::pair<typename CGAL::Coercion_traits<typename CGAL::Polynomial_traits_d<Polynomial_2>::Innermost_coefficient_type,Bound>::Type,
|
std::pair<typename CGAL::Coercion_traits<typename CGAL::Polynomial_traits_d<Polynomial_2>::Innermost_coefficient_type,Bound>::Type,
|
||||||
typename CGAL::Coercion_traits<typename CGAL::Polynomial_traits_d<Polynomial_2>::Innermost_coefficient_type,Bound>::Type> > {
|
typename CGAL::Coercion_traits<typename CGAL::Polynomial_traits_d<Polynomial_2>::Innermost_coefficient_type,Bound>::Type> > {
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Pavel Emeliyanenko <asm@mpi-sb.mpg.de>
|
// Author(s) : Pavel Emeliyanenko <asm@mpi-sb.mpg.de>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
||||||
|
|
@ -102,7 +103,7 @@ template<>
|
||||||
class Real_embeddable_extension< long > {
|
class Real_embeddable_extension< long > {
|
||||||
public:
|
public:
|
||||||
struct Ceil_log2_abs
|
struct Ceil_log2_abs
|
||||||
: public std::unary_function< long, long > {
|
: public CGAL::unary_function< long, long > {
|
||||||
long operator()( long x ) {
|
long operator()( long x ) {
|
||||||
if (x < 0) x = -x;
|
if (x < 0) x = -x;
|
||||||
CGAL_precondition(x > 0);
|
CGAL_precondition(x > 0);
|
||||||
|
|
@ -112,7 +113,7 @@ public:
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Floor_log2_abs
|
struct Floor_log2_abs
|
||||||
: public std::unary_function< long, long > {
|
: public CGAL::unary_function< long, long > {
|
||||||
private:
|
private:
|
||||||
signed char floor_log2_4bit[16];
|
signed char floor_log2_4bit[16];
|
||||||
public:
|
public:
|
||||||
|
|
@ -148,11 +149,11 @@ public:
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Floor
|
struct Floor
|
||||||
: public std::unary_function< long, long > {
|
: public CGAL::unary_function< long, long > {
|
||||||
long operator() (long x) { return x;}
|
long operator() (long x) { return x;}
|
||||||
};
|
};
|
||||||
struct Ceil
|
struct Ceil
|
||||||
: public std::unary_function< long, long > {
|
: public CGAL::unary_function< long, long > {
|
||||||
long operator() (long x) { return x;}
|
long operator() (long x) { return x;}
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
@ -167,7 +168,7 @@ public:
|
||||||
typedef leda_integer Type;
|
typedef leda_integer Type;
|
||||||
|
|
||||||
struct Ceil_log2_abs
|
struct Ceil_log2_abs
|
||||||
: public std::unary_function< leda_integer, long > {
|
: public CGAL::unary_function< leda_integer, long > {
|
||||||
long operator()( const leda_integer& x ) const {
|
long operator()( const leda_integer& x ) const {
|
||||||
CGAL_precondition(x != leda_integer(0));
|
CGAL_precondition(x != leda_integer(0));
|
||||||
::leda::digit_sz ldgzeros = ::leda::digLeadingZeros(x.highword());
|
::leda::digit_sz ldgzeros = ::leda::digLeadingZeros(x.highword());
|
||||||
|
|
@ -187,7 +188,7 @@ public:
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Floor_log2_abs
|
struct Floor_log2_abs
|
||||||
: public std::unary_function< leda_integer, long > {
|
: public CGAL::unary_function< leda_integer, long > {
|
||||||
long operator()( const leda_integer& x ) const {
|
long operator()( const leda_integer& x ) const {
|
||||||
CGAL_precondition(x != leda_integer(0));
|
CGAL_precondition(x != leda_integer(0));
|
||||||
::leda::digit_sz ldgzeros
|
::leda::digit_sz ldgzeros
|
||||||
|
|
@ -199,11 +200,11 @@ public:
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Floor
|
struct Floor
|
||||||
: public std::unary_function< leda_integer, leda_integer > {
|
: public CGAL::unary_function< leda_integer, leda_integer > {
|
||||||
leda_integer operator() (const leda_integer& x) const { return x;}
|
leda_integer operator() (const leda_integer& x) const { return x;}
|
||||||
};
|
};
|
||||||
struct Ceil
|
struct Ceil
|
||||||
: public std::unary_function< leda_integer, leda_integer > {
|
: public CGAL::unary_function< leda_integer, leda_integer > {
|
||||||
leda_integer operator() (const leda_integer& x) const { return x;}
|
leda_integer operator() (const leda_integer& x) const { return x;}
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
@ -215,7 +216,7 @@ public:
|
||||||
typedef leda_bigfloat Type;
|
typedef leda_bigfloat Type;
|
||||||
|
|
||||||
struct Floor_log2_abs
|
struct Floor_log2_abs
|
||||||
: public std::unary_function< leda_bigfloat, long > {
|
: public CGAL::unary_function< leda_bigfloat, long > {
|
||||||
long operator()( const leda_bigfloat& x ) const {
|
long operator()( const leda_bigfloat& x ) const {
|
||||||
CGAL_precondition(CGAL::sign(x) != CGAL::ZERO);
|
CGAL_precondition(CGAL::sign(x) != CGAL::ZERO);
|
||||||
::leda::integer abs_sign = abs(x.get_significant());
|
::leda::integer abs_sign = abs(x.get_significant());
|
||||||
|
|
@ -225,7 +226,7 @@ public:
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Ceil_log2_abs
|
struct Ceil_log2_abs
|
||||||
: public std::unary_function< leda_bigfloat, long > {
|
: public CGAL::unary_function< leda_bigfloat, long > {
|
||||||
long operator()( const leda_bigfloat& x ) const {
|
long operator()( const leda_bigfloat& x ) const {
|
||||||
CGAL_precondition(CGAL::sign(x) != CGAL::ZERO);
|
CGAL_precondition(CGAL::sign(x) != CGAL::ZERO);
|
||||||
return ::leda::ilog2(x).to_long();
|
return ::leda::ilog2(x).to_long();
|
||||||
|
|
@ -233,14 +234,14 @@ public:
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Floor
|
struct Floor
|
||||||
: public std::unary_function< leda_bigfloat, leda_integer > {
|
: public CGAL::unary_function< leda_bigfloat, leda_integer > {
|
||||||
leda_integer operator() ( const leda_bigfloat& x ) const {
|
leda_integer operator() ( const leda_bigfloat& x ) const {
|
||||||
return leda::to_integer( x, leda::TO_N_INF );
|
return leda::to_integer( x, leda::TO_N_INF );
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Ceil
|
struct Ceil
|
||||||
: public std::unary_function< leda_bigfloat, leda_integer > {
|
: public CGAL::unary_function< leda_bigfloat, leda_integer > {
|
||||||
leda_integer operator() ( const leda_bigfloat& x ) const {
|
leda_integer operator() ( const leda_bigfloat& x ) const {
|
||||||
return leda::to_integer( x, leda::TO_P_INF );
|
return leda::to_integer( x, leda::TO_P_INF );
|
||||||
}
|
}
|
||||||
|
|
@ -254,7 +255,7 @@ public:
|
||||||
typedef leda_bigfloat_interval Type;
|
typedef leda_bigfloat_interval Type;
|
||||||
|
|
||||||
struct Floor_log2_abs
|
struct Floor_log2_abs
|
||||||
: public std::unary_function< leda_bigfloat_interval, long > {
|
: public CGAL::unary_function< leda_bigfloat_interval, long > {
|
||||||
|
|
||||||
result_type operator() (const argument_type& x) const {
|
result_type operator() (const argument_type& x) const {
|
||||||
CGAL_precondition(! ::boost::numeric::in_zero(x));
|
CGAL_precondition(! ::boost::numeric::in_zero(x));
|
||||||
|
|
@ -263,7 +264,7 @@ public:
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Ceil_log2_abs
|
struct Ceil_log2_abs
|
||||||
: public std::unary_function< leda_bigfloat_interval, long > {
|
: public CGAL::unary_function< leda_bigfloat_interval, long > {
|
||||||
long operator()( const leda_bigfloat_interval& x ) const {
|
long operator()( const leda_bigfloat_interval& x ) const {
|
||||||
CGAL_precondition(!(::boost::numeric::in_zero(x) &&
|
CGAL_precondition(!(::boost::numeric::in_zero(x) &&
|
||||||
::boost::numeric::singleton(x)));
|
::boost::numeric::singleton(x)));
|
||||||
|
|
@ -272,7 +273,7 @@ public:
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Floor
|
struct Floor
|
||||||
: public std::unary_function< leda_bigfloat_interval, leda_integer > {
|
: public CGAL::unary_function< leda_bigfloat_interval, leda_integer > {
|
||||||
leda_integer operator() ( const leda_bigfloat_interval& x )
|
leda_integer operator() ( const leda_bigfloat_interval& x )
|
||||||
const {
|
const {
|
||||||
return internal::floor( x.lower() );
|
return internal::floor( x.lower() );
|
||||||
|
|
@ -280,7 +281,7 @@ public:
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Ceil
|
struct Ceil
|
||||||
: public std::unary_function< leda_bigfloat_interval, leda_integer > {
|
: public CGAL::unary_function< leda_bigfloat_interval, leda_integer > {
|
||||||
leda_integer operator() ( const leda_bigfloat_interval& x )
|
leda_integer operator() ( const leda_bigfloat_interval& x )
|
||||||
const {
|
const {
|
||||||
return internal::ceil( x.upper() );
|
return internal::ceil( x.upper() );
|
||||||
|
|
@ -298,27 +299,27 @@ class Real_embeddable_extension< CORE::BigInt > {
|
||||||
public:
|
public:
|
||||||
typedef CORE::BigInt Type;
|
typedef CORE::BigInt Type;
|
||||||
struct Floor_log2_abs
|
struct Floor_log2_abs
|
||||||
: public std::unary_function< CORE::BigInt, long > {
|
: public CGAL::unary_function< CORE::BigInt, long > {
|
||||||
long operator()( const CORE::BigInt& x ) const {
|
long operator()( const CORE::BigInt& x ) const {
|
||||||
return CORE::floorLg(x);
|
return CORE::floorLg(x);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Ceil_log2_abs
|
struct Ceil_log2_abs
|
||||||
: public std::unary_function< CORE::BigInt, long > {
|
: public CGAL::unary_function< CORE::BigInt, long > {
|
||||||
long operator()( const CORE::BigInt& x ) const {
|
long operator()( const CORE::BigInt& x ) const {
|
||||||
return CORE::ceilLg(x);
|
return CORE::ceilLg(x);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Floor
|
struct Floor
|
||||||
: public std::unary_function< CORE::BigInt, CORE::BigInt > {
|
: public CGAL::unary_function< CORE::BigInt, CORE::BigInt > {
|
||||||
CORE::BigInt operator() (const CORE::BigInt& x) const {
|
CORE::BigInt operator() (const CORE::BigInt& x) const {
|
||||||
return x;
|
return x;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
struct Ceil
|
struct Ceil
|
||||||
: public std::unary_function< CORE::BigInt, CORE::BigInt > {
|
: public CGAL::unary_function< CORE::BigInt, CORE::BigInt > {
|
||||||
CORE::BigInt operator() (const CORE::BigInt& x) const {
|
CORE::BigInt operator() (const CORE::BigInt& x) const {
|
||||||
return x;
|
return x;
|
||||||
}
|
}
|
||||||
|
|
@ -331,7 +332,7 @@ class Real_embeddable_extension< CORE::BigFloat > {
|
||||||
public:
|
public:
|
||||||
typedef CORE::BigFloat Type;
|
typedef CORE::BigFloat Type;
|
||||||
struct Floor_log2_abs
|
struct Floor_log2_abs
|
||||||
: public std::unary_function< CORE::BigFloat, long > {
|
: public CGAL::unary_function< CORE::BigFloat, long > {
|
||||||
long operator()( CORE::BigFloat x ) const {
|
long operator()( CORE::BigFloat x ) const {
|
||||||
CGAL_precondition(!CGAL::zero_in(x));
|
CGAL_precondition(!CGAL::zero_in(x));
|
||||||
x = CGAL::abs(x);
|
x = CGAL::abs(x);
|
||||||
|
|
@ -340,7 +341,7 @@ public:
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Ceil_log2_abs
|
struct Ceil_log2_abs
|
||||||
: public std::unary_function< CORE::BigFloat, long > {
|
: public CGAL::unary_function< CORE::BigFloat, long > {
|
||||||
long operator()( CORE::BigFloat x ) const {
|
long operator()( CORE::BigFloat x ) const {
|
||||||
// (already commented out in EXACUS)...
|
// (already commented out in EXACUS)...
|
||||||
// NiX_precond(!(NiX::in_zero(x) && NiX::singleton(x)));
|
// NiX_precond(!(NiX::in_zero(x) && NiX::singleton(x)));
|
||||||
|
|
@ -350,7 +351,7 @@ public:
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Floor
|
struct Floor
|
||||||
: public std::unary_function< CORE::BigFloat, CORE::BigInt > {
|
: public CGAL::unary_function< CORE::BigFloat, CORE::BigInt > {
|
||||||
CORE::BigInt operator() ( const CORE::BigFloat& x ) const {
|
CORE::BigInt operator() ( const CORE::BigFloat& x ) const {
|
||||||
CORE::BigInt xi = x.BigIntValue();
|
CORE::BigInt xi = x.BigIntValue();
|
||||||
if(x.sign() < 0 && x.cmp(xi)!=0) {
|
if(x.sign() < 0 && x.cmp(xi)!=0) {
|
||||||
|
|
@ -361,7 +362,7 @@ public:
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Ceil
|
struct Ceil
|
||||||
: public std::unary_function< CORE::BigFloat, CORE::BigInt > {
|
: public CGAL::unary_function< CORE::BigFloat, CORE::BigInt > {
|
||||||
CORE::BigInt operator() ( const CORE::BigFloat& x ) const {
|
CORE::BigInt operator() ( const CORE::BigFloat& x ) const {
|
||||||
CORE::BigInt xi = x.BigIntValue();
|
CORE::BigInt xi = x.BigIntValue();
|
||||||
if(x.sign() >0 && x.cmp(xi)!=0) {
|
if(x.sign() >0 && x.cmp(xi)!=0) {
|
||||||
|
|
@ -384,7 +385,7 @@ public:
|
||||||
typedef Gmpz Type;
|
typedef Gmpz Type;
|
||||||
|
|
||||||
struct Floor_log2_abs
|
struct Floor_log2_abs
|
||||||
: public std::unary_function< Gmpz, long > {
|
: public CGAL::unary_function< Gmpz, long > {
|
||||||
long operator()( const Gmpz& x ) const {
|
long operator()( const Gmpz& x ) const {
|
||||||
CGAL_precondition(!CGAL::is_zero(x));
|
CGAL_precondition(!CGAL::is_zero(x));
|
||||||
return mpz_sizeinbase(x.mpz(),2)-1;
|
return mpz_sizeinbase(x.mpz(),2)-1;
|
||||||
|
|
@ -392,7 +393,7 @@ public:
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Ceil_log2_abs
|
struct Ceil_log2_abs
|
||||||
: public std::unary_function< Gmpz, long > {
|
: public CGAL::unary_function< Gmpz, long > {
|
||||||
long operator()( const Gmpz& x ) const {
|
long operator()( const Gmpz& x ) const {
|
||||||
long pos = mpz_scan1(x.mpz(),0);
|
long pos = mpz_scan1(x.mpz(),0);
|
||||||
long size = mpz_sizeinbase(x.mpz(),2);
|
long size = mpz_sizeinbase(x.mpz(),2);
|
||||||
|
|
@ -404,13 +405,13 @@ public:
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Floor
|
struct Floor
|
||||||
: public std::unary_function< Gmpz, Gmpz > {
|
: public CGAL::unary_function< Gmpz, Gmpz > {
|
||||||
Gmpz operator() (const Gmpz& x) const {
|
Gmpz operator() (const Gmpz& x) const {
|
||||||
return x;
|
return x;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
struct Ceil
|
struct Ceil
|
||||||
: public std::unary_function< Gmpz, Gmpz > {
|
: public CGAL::unary_function< Gmpz, Gmpz > {
|
||||||
Gmpz operator() (const Gmpz& x) const {
|
Gmpz operator() (const Gmpz& x) const {
|
||||||
return x;
|
return x;
|
||||||
}
|
}
|
||||||
|
|
@ -426,7 +427,7 @@ public:
|
||||||
typedef Gmpfr Type;
|
typedef Gmpfr Type;
|
||||||
|
|
||||||
struct Floor_log2_abs
|
struct Floor_log2_abs
|
||||||
: public std::unary_function< Gmpfr, long > {
|
: public CGAL::unary_function< Gmpfr, long > {
|
||||||
long operator()( const Gmpfr& x ) const {
|
long operator()( const Gmpfr& x ) const {
|
||||||
Float_traits<Gmpfr>::Get_mantissa get_mantissa;
|
Float_traits<Gmpfr>::Get_mantissa get_mantissa;
|
||||||
Float_traits<Gmpfr>::Get_exponent get_exponent;
|
Float_traits<Gmpfr>::Get_exponent get_exponent;
|
||||||
|
|
@ -437,7 +438,7 @@ public:
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Ceil_log2_abs
|
struct Ceil_log2_abs
|
||||||
: public std::unary_function< Gmpfr, long > {
|
: public CGAL::unary_function< Gmpfr, long > {
|
||||||
long operator()( const Gmpfr& x ) const {
|
long operator()( const Gmpfr& x ) const {
|
||||||
Float_traits<Gmpfr>::Get_mantissa get_mantissa;
|
Float_traits<Gmpfr>::Get_mantissa get_mantissa;
|
||||||
Float_traits<Gmpfr>::Get_exponent get_exponent;
|
Float_traits<Gmpfr>::Get_exponent get_exponent;
|
||||||
|
|
@ -448,7 +449,7 @@ public:
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Floor
|
struct Floor
|
||||||
: public std::unary_function< Gmpfr, Gmpz > {
|
: public CGAL::unary_function< Gmpfr, Gmpz > {
|
||||||
Gmpz operator() ( const Gmpfr& x ) const {
|
Gmpz operator() ( const Gmpfr& x ) const {
|
||||||
Gmpz result;
|
Gmpz result;
|
||||||
mpfr_get_z (result.mpz(),x.fr(),GMP_RNDD);
|
mpfr_get_z (result.mpz(),x.fr(),GMP_RNDD);
|
||||||
|
|
@ -457,7 +458,7 @@ public:
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Ceil
|
struct Ceil
|
||||||
: public std::unary_function< Gmpfr, Gmpz > {
|
: public CGAL::unary_function< Gmpfr, Gmpz > {
|
||||||
Gmpz operator() ( const Gmpfr& x ) const {
|
Gmpz operator() ( const Gmpfr& x ) const {
|
||||||
Gmpz result;
|
Gmpz result;
|
||||||
mpfr_get_z (result.mpz(),x.fr(),GMP_RNDU);
|
mpfr_get_z (result.mpz(),x.fr(),GMP_RNDU);
|
||||||
|
|
@ -475,7 +476,7 @@ public:
|
||||||
typedef Gmpfi Type;
|
typedef Gmpfi Type;
|
||||||
|
|
||||||
struct Floor_log2_abs
|
struct Floor_log2_abs
|
||||||
: public std::unary_function< Gmpfi, long > {
|
: public CGAL::unary_function< Gmpfi, long > {
|
||||||
result_type operator() (const argument_type& x) const {
|
result_type operator() (const argument_type& x) const {
|
||||||
CGAL_precondition(!x.is_zero());
|
CGAL_precondition(!x.is_zero());
|
||||||
return internal::floor_log2_abs(x.abs().inf());
|
return internal::floor_log2_abs(x.abs().inf());
|
||||||
|
|
@ -483,7 +484,7 @@ public:
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Ceil_log2_abs
|
struct Ceil_log2_abs
|
||||||
: public std::unary_function< Gmpfi, long > {
|
: public CGAL::unary_function< Gmpfi, long > {
|
||||||
long operator()( const Gmpfi& x ) const {
|
long operator()( const Gmpfi& x ) const {
|
||||||
CGAL_precondition(!x.inf().is_zero() || !x.sup().is_zero());
|
CGAL_precondition(!x.inf().is_zero() || !x.sup().is_zero());
|
||||||
return internal::ceil_log2_abs(x.abs().sup());
|
return internal::ceil_log2_abs(x.abs().sup());
|
||||||
|
|
@ -491,7 +492,7 @@ public:
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Floor
|
struct Floor
|
||||||
: public std::unary_function< Gmpfi, Gmpz > {
|
: public CGAL::unary_function< Gmpfi, Gmpz > {
|
||||||
Gmpz operator() ( const Gmpfi& x )
|
Gmpz operator() ( const Gmpfi& x )
|
||||||
const {
|
const {
|
||||||
return internal::floor( x.inf() );
|
return internal::floor( x.inf() );
|
||||||
|
|
@ -499,7 +500,7 @@ public:
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Ceil
|
struct Ceil
|
||||||
: public std::unary_function< Gmpfi, Gmpz > {
|
: public CGAL::unary_function< Gmpfi, Gmpz > {
|
||||||
Gmpz operator() ( const Gmpfi& x )
|
Gmpz operator() ( const Gmpfi& x )
|
||||||
const {
|
const {
|
||||||
return internal::ceil( x.sup() );
|
return internal::ceil( x.sup() );
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Kerber <mkerber@mpi-inf.mpg.de>
|
// Author(s) : Michael Kerber <mkerber@mpi-inf.mpg.de>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Kerber <mkerber@mpi-inf.mpg.de>
|
// Author(s) : Michael Kerber <mkerber@mpi-inf.mpg.de>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Pavel Emeliyanenko <asm@mpi-sb.mpg.de>
|
// Author(s) : Pavel Emeliyanenko <asm@mpi-sb.mpg.de>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Pavel Emeliyanenko <asm@mpi-sb.mpg.de>
|
// Author(s) : Pavel Emeliyanenko <asm@mpi-sb.mpg.de>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Eric Berberich <eric@mpi-inf.mpg.de>
|
// Author(s) : Eric Berberich <eric@mpi-inf.mpg.de>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Kerber <mkerber@mpi-inf.mpg.de>
|
// Author(s) : Michael Kerber <mkerber@mpi-inf.mpg.de>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Kerber <mkerber@mpi-inf.mpg.de>
|
// Author(s) : Michael Kerber <mkerber@mpi-inf.mpg.de>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Kerber <mkerber@mpi-inf.mpg.de>
|
// Author(s) : Michael Kerber <mkerber@mpi-inf.mpg.de>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Kerber <mkerber@mpi-inf.mpg.de>
|
// Author(s) : Michael Kerber <mkerber@mpi-inf.mpg.de>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Eric Berberich <eric@mpi-inf.mpg.de>
|
// Author(s) : Eric Berberich <eric@mpi-inf.mpg.de>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Kerber <mkerber@mpi-inf.mpg.de>
|
// Author(s) : Michael Kerber <mkerber@mpi-inf.mpg.de>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
//
|
//
|
||||||
// $URL$
|
// $URL$
|
||||||
// $Id$
|
// $Id$
|
||||||
|
// SPDX-License-Identifier: LGPL-3.0+
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
// Author(s) : Michael Hemmer <hemmer@mpi-inf.mpg.de>
|
||||||
|
|
@ -68,12 +69,12 @@ protected:
|
||||||
|
|
||||||
// Some functors used for STL calls
|
// Some functors used for STL calls
|
||||||
template<typename A,typename B>
|
template<typename A,typename B>
|
||||||
struct Pair_first : public std::unary_function<std::pair<A,B>,A> {
|
struct Pair_first : public CGAL::unary_function<std::pair<A,B>,A> {
|
||||||
A operator() (std::pair<A,B> pair) const { return pair.first; }
|
A operator() (std::pair<A,B> pair) const { return pair.first; }
|
||||||
};
|
};
|
||||||
|
|
||||||
template<typename A,typename B>
|
template<typename A,typename B>
|
||||||
struct Pair_second : public std::unary_function<std::pair<A,B>,B> {
|
struct Pair_second : public CGAL::unary_function<std::pair<A,B>,B> {
|
||||||
B operator() (std::pair<A,B> pair) const { return pair.second; }
|
B operator() (std::pair<A,B> pair) const { return pair.second; }
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -83,7 +84,7 @@ public:
|
||||||
typedef Algebraic_real_1 Type;
|
typedef Algebraic_real_1 Type;
|
||||||
|
|
||||||
struct Bound_between
|
struct Bound_between
|
||||||
: public std::binary_function< Type, Type, Bound > {
|
: public CGAL::binary_function< Type, Type, Bound > {
|
||||||
Bound operator()( const Type& t1,
|
Bound operator()( const Type& t1,
|
||||||
const Type& t2 ) const {
|
const Type& t2 ) const {
|
||||||
#if CGAL_AK_DONT_USE_SIMPLE_BOUND_BETWEEN
|
#if CGAL_AK_DONT_USE_SIMPLE_BOUND_BETWEEN
|
||||||
|
|
@ -96,21 +97,21 @@ public:
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Lower_bound
|
struct Lower_bound
|
||||||
: public std::unary_function< Type, Bound > {
|
: public CGAL::unary_function< Type, Bound > {
|
||||||
Bound operator()( const Type& t ) const {
|
Bound operator()( const Type& t ) const {
|
||||||
return t.low();
|
return t.low();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Upper_bound
|
struct Upper_bound
|
||||||
: public std::unary_function< Type, Bound > {
|
: public CGAL::unary_function< Type, Bound > {
|
||||||
Bound operator()( const Type& t ) const {
|
Bound operator()( const Type& t ) const {
|
||||||
return t.high();
|
return t.high();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Refine
|
struct Refine
|
||||||
: public std::unary_function< Type, void > {
|
: public CGAL::unary_function< Type, void > {
|
||||||
void operator()( const Type& t ) const {
|
void operator()( const Type& t ) const {
|
||||||
t.refine();
|
t.refine();
|
||||||
}
|
}
|
||||||
|
|
@ -148,7 +149,7 @@ public:
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Approximate_absolute_1:
|
struct Approximate_absolute_1:
|
||||||
public std::binary_function<Algebraic_real_1,int,std::pair<Bound,Bound> >{
|
public CGAL::binary_function<Algebraic_real_1,int,std::pair<Bound,Bound> >{
|
||||||
std::pair<Bound,Bound>
|
std::pair<Bound,Bound>
|
||||||
operator()(const Algebraic_real_1& x, int prec) const {
|
operator()(const Algebraic_real_1& x, int prec) const {
|
||||||
Lower_bound lower;
|
Lower_bound lower;
|
||||||
|
|
@ -167,7 +168,7 @@ public:
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Approximate_relative_1:
|
struct Approximate_relative_1:
|
||||||
public std::binary_function<Algebraic_real_1,int,std::pair<Bound,Bound> >{
|
public CGAL::binary_function<Algebraic_real_1,int,std::pair<Bound,Bound> >{
|
||||||
std::pair<Bound,Bound>
|
std::pair<Bound,Bound>
|
||||||
operator()(const Algebraic_real_1& x, int prec) const {
|
operator()(const Algebraic_real_1& x, int prec) const {
|
||||||
|
|
||||||
|
|
@ -275,7 +276,7 @@ public:
|
||||||
/*
|
/*
|
||||||
// TODO: Can we avoid to use this?
|
// TODO: Can we avoid to use this?
|
||||||
struct Greater_compare :
|
struct Greater_compare :
|
||||||
public std::binary_function<Algebraic_real_1,Algebraic_real_1,bool> {
|
public CGAL::binary_function<Algebraic_real_1,Algebraic_real_1,bool> {
|
||||||
|
|
||||||
bool operator() (const Algebraic_real_1& a, const Algebraic_real_1& b)
|
bool operator() (const Algebraic_real_1& a, const Algebraic_real_1& b)
|
||||||
const {
|
const {
|
||||||
|
|
@ -333,7 +334,7 @@ public:
|
||||||
};
|
};
|
||||||
|
|
||||||
class Number_of_solutions_1
|
class Number_of_solutions_1
|
||||||
: public std::unary_function<Polynomial_1,size_type> {
|
: public CGAL::unary_function<Polynomial_1,size_type> {
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
|
|
@ -349,7 +350,7 @@ public:
|
||||||
|
|
||||||
|
|
||||||
struct Sign_at_1
|
struct Sign_at_1
|
||||||
: public std::binary_function< Polynomial_1, Algebraic_real_1, CGAL::Sign > {
|
: public CGAL::binary_function< Polynomial_1, Algebraic_real_1, CGAL::Sign > {
|
||||||
CGAL::Sign operator()( const Polynomial_1& p, const Algebraic_real_1& ar ) const {
|
CGAL::Sign operator()( const Polynomial_1& p, const Algebraic_real_1& ar ) const {
|
||||||
if(CGAL::is_zero(p)) return ZERO;
|
if(CGAL::is_zero(p)) return ZERO;
|
||||||
if(CGAL::degree(p)==0) return p.sign_at(0);
|
if(CGAL::degree(p)==0) return p.sign_at(0);
|
||||||
|
|
@ -372,7 +373,7 @@ public:
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
struct Is_zero_at_1
|
struct Is_zero_at_1
|
||||||
: public std::binary_function< Polynomial_1, Algebraic_real_1, bool > {
|
: public CGAL::binary_function< Polynomial_1, Algebraic_real_1, bool > {
|
||||||
bool operator()( const Polynomial_1& p, const Algebraic_real_1& ar ) const {
|
bool operator()( const Polynomial_1& p, const Algebraic_real_1& ar ) const {
|
||||||
if(CGAL::is_zero(p)) return true;
|
if(CGAL::is_zero(p)) return true;
|
||||||
if( ar.low() == ar.high() ) return p.sign_at( ar.low() ) == ZERO;
|
if( ar.low() == ar.high() ) return p.sign_at( ar.low() ) == ZERO;
|
||||||
|
|
@ -382,7 +383,7 @@ public:
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Is_square_free_1
|
struct Is_square_free_1
|
||||||
: public std::unary_function< Polynomial_1, bool > {
|
: public CGAL::unary_function< Polynomial_1, bool > {
|
||||||
bool operator()( const Polynomial_1& p ) const {
|
bool operator()( const Polynomial_1& p ) const {
|
||||||
typename CGAL::Polynomial_traits_d< Polynomial_1 >::Is_square_free isf;
|
typename CGAL::Polynomial_traits_d< Polynomial_1 >::Is_square_free isf;
|
||||||
return isf(p);
|
return isf(p);
|
||||||
|
|
@ -390,7 +391,7 @@ public:
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Is_coprime_1
|
struct Is_coprime_1
|
||||||
: public std::binary_function< Polynomial_1, Polynomial_1, bool > {
|
: public CGAL::binary_function< Polynomial_1, Polynomial_1, bool > {
|
||||||
bool operator()( const Polynomial_1& p1, const Polynomial_1& p2 ) const {
|
bool operator()( const Polynomial_1& p1, const Polynomial_1& p2 ) const {
|
||||||
typename CGAL::Polynomial_traits_d< Polynomial_1 >::Total_degree total_degree;
|
typename CGAL::Polynomial_traits_d< Polynomial_1 >::Total_degree total_degree;
|
||||||
|
|
||||||
|
|
@ -400,7 +401,7 @@ public:
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Make_square_free_1
|
struct Make_square_free_1
|
||||||
: public std::unary_function< Polynomial_1, Polynomial_1 > {
|
: public CGAL::unary_function< Polynomial_1, Polynomial_1 > {
|
||||||
Polynomial_1 operator()( const Polynomial_1& p ) const {
|
Polynomial_1 operator()( const Polynomial_1& p ) const {
|
||||||
return typename CGAL::Polynomial_traits_d< Polynomial_1 >::Make_square_free()( p );
|
return typename CGAL::Polynomial_traits_d< Polynomial_1 >::Make_square_free()( p );
|
||||||
}
|
}
|
||||||
|
|
@ -435,7 +436,7 @@ public:
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Compute_polynomial_1 : public std::unary_function<Algebraic_real_1,
|
struct Compute_polynomial_1 : public CGAL::unary_function<Algebraic_real_1,
|
||||||
Polynomial_1> {
|
Polynomial_1> {
|
||||||
Polynomial_1 operator()(const Algebraic_real_1& x) const {
|
Polynomial_1 operator()(const Algebraic_real_1& x) const {
|
||||||
return x.polynomial();
|
return x.polynomial();
|
||||||
|
|
@ -485,7 +486,7 @@ public:
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Compare_1
|
struct Compare_1
|
||||||
: public std::binary_function<Algebraic_real_1,
|
: public CGAL::binary_function<Algebraic_real_1,
|
||||||
Algebraic_real_1,
|
Algebraic_real_1,
|
||||||
CGAL::Comparison_result>{
|
CGAL::Comparison_result>{
|
||||||
|
|
||||||
|
|
@ -530,7 +531,7 @@ public:
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
struct Isolate_1 : public std::binary_function
|
struct Isolate_1 : public CGAL::binary_function
|
||||||
< Algebraic_real_1,Polynomial_1,std::pair<Bound,Bound> > {
|
< Algebraic_real_1,Polynomial_1,std::pair<Bound,Bound> > {
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue