Commit Graph

46 Commits

Author SHA1 Message Date
Laurent Rineau 5f8930db8c Merge branch '5.5.x-branch'
# Conflicts:
#	Convex_hull_2/test/Convex_hull_2/ch_test_CH.cpp
#	Convex_hull_2/test/Convex_hull_2/ch_test_SC.cpp
#	Convex_hull_2/test/Convex_hull_2/ch_test_SH.cpp
#	Convex_hull_2/test/Convex_hull_2/ch_test_SS.cpp
#	Straight_skeleton_2/include/CGAL/constructions/Straight_skeleton_cons_ftC2.h
#	Straight_skeleton_2/include/CGAL/predicates/Straight_skeleton_pred_ftC2.h
2023-01-27 21:16:14 +01:00
Laurent Rineau 8d7c9685dd Merge pull request #7146 from afabri/CH-do_not_test_non_exact_NT-GF
Convex_hull_2: Do not assert without exact predicates
2023-01-27 20:52:13 +01:00
Andreas Fabri bd6c5ca9b7 Convex_hull_2: Do not assert without exact predicates 2022-12-23 16:18:04 +00:00
Mael Rouxel-Labbé d2b9b5728f Remove unused typedef/variables 2022-07-05 09:46:30 +02:00
Mael Rouxel-Labbé 87d09b6763 Add test for EPICK 2022-07-05 09:42:05 +02:00
Mael Rouxel-Labbé 2e330b1342 Improve CH2 tests 2022-07-01 23:49:31 +02:00
Mael Rouxel-Labbé 13b4060644 Fix eddy/bykat returning collinear vertices on the hull
In these two algorithms, points farthest from a line must be found.
In case of multiple points at the same distance, an "extremity"
of this set of points must be returned.

This was properly documented in the Less_signed_distance_to_line_2
functor of the ConvexHullTraits_2 concept:

[ ... ]
The predicate must provide a total order compatible with convexity,
<I>i.e.</I>, for any line segment \f$ s\f$ one of the endpoints
of \f$ s\f$ is the smallest point among the points on \f$ s\f$,
with respect to the order given by `Less_signed_distance_to_line_2`.
[ ... ]

And specific models did respect this requirement. However, the kernel
is supposed to also be a model of ConvexHullTraits_2, but
Kernel_23::LessSignedDistanceToLine_2 does not require this, and
the models (EPICK, Simple_Cartesian, etc.) do not implement it.
Hence, if a kernel was used as geometric traits for 2D Convex Hull
algorithms, one might not get the expected extreme point when
there are multiple points at the same distance to a line at some
point in the algorithm.

The algorithm recovered, but this created extra points on the hull.

Fixing the functor in the kernel would create an inconsistency
with Kernel_23::Compare_signed_distance_to_line_2, so instead
this commit changes the concept and the code to require
providing Compare_signed_distance_to_line_2 and then uses Less_xy
in the code in case of EQUAL return (that is actually how it was
done in the Convex_hull_2-specific versions of the ConvexHullTraits_2
model).
2022-07-01 13:35:59 +02:00
Laurent Rineau 2288225448 Massive update of CMake policies to version 3.23 2022-05-06 09:34:35 +02:00
Sébastien Loriot ab48f63e30 update latest cmake version tested 2021-11-09 10:58:47 +01:00
Maxime Gimeno c49152359c update max version of cmake and announce the new minimal in CHANGE.md 2021-04-15 15:08:54 +02:00
Maxime Gimeno 9c15f2c9dc Use FeatureSummary in the demo, and remove CGAL_FOUND 2020-08-04 12:46:17 +02:00
Sébastien Loriot 0779373835 extra run of the script to remove tabs and trailing whitespaces
right after the  merge of 4.14 release branch

+ manual fix on one line in:
    * Arrangement_on_surface_2/include/CGAL/IO/Arr_text_formatter.h
    * .travis/generate_travis.sh
2020-03-26 14:16:06 +01:00
Sébastien Loriot 0a46621dc6 Merge branch 'cgal/releases/CGAL-4.14-branch'
whitespace+tab removal, merged with option -Xignore-all-space
2020-03-26 13:28:46 +01:00
Sébastien Loriot 590612a563 run the script to remove tabs and trailing whitespaces 2020-03-26 13:25:16 +01:00
Laurent Rineau 4fbf00fb8a CMake>=3.13: opt for for new policies up to 3.15 2019-06-19 14:34:59 +02:00
Sébastien Loriot d60f5645aa replace BOOST_FOREACH by c++ ranged-based for loop
some of the command used for the replacement:
ack --cpp  BOOST_FOREACH -l  | xargs sed -i -E "s/BOOST_FOREACH\(([a-zA-Z_:&0-9]+)\s(\w+)\,/for(\1 \2 :/"
ack --cpp  BOOST_FOREACH -l  | xargs sed -i -E "s/BOOST_FOREACH\((const [a-zA-Z_:&0-9]+)\s(\w+)\,/for(\1 \2 :/"
ack --cpp  BOOST_FOREACH -l  | xargs sed -i -E "s/BOOST_FOREACH\((const typename [a-zA-Z_:&0-9]+)\s(\w+)\,/for(\1 \2 :/"
ack --cpp  BOOST_FOREACH -l  | xargs sed -i -E "s/BOOST_FOREACH\((typename [<>a-zA-Z_:&0-9]+)\s(\w+)\,/for(\1 \2 :/"
ack "boost/foreach.hpp" -l --cpp | xargs sed -i '/boost\/foreach.hpp>/d'
2019-03-29 13:22:15 +01:00
Guillaume Damiand 92ba7fa6c9 Update minimum cmake required version in all CMakeLists.txt 2018-10-18 14:49:23 +02:00
Guillaume Damiand 0bd9088b5a Remove all include( ) and include( CGAL_CreateSingleSourceCGALProgram ) in CMakeLists.txt; they are no more required. 2018-10-17 14:17:08 +02:00
Guillaume Damiand 7f09308d33 Remove all include_directories(BEFORE ../../include) in CMakeLists.txt 2018-10-17 13:07:22 +02:00
Simon Giraudot 1e7b9ea027 Fix counting iterator warnings 2017-09-29 14:47:17 +02:00
Andreas Fabri ecd8408e3f Add newline at end of file 2017-05-16 08:29:10 +02:00
Sébastien Loriot 812ce105c6 please MSVC
Merge branch 'integration' of github.com:CGAL/cgal-dev into integration
2017-05-12 09:21:30 +02:00
Sébastien Loriot 5258eec9d5 fix conversion warning 2017-05-12 09:20:35 +02:00
Sébastien Loriot c1a243ddf0 add missing requirement in 2D convex hull traits concept + test checking it 2017-05-11 09:53:26 +02:00
Sébastien Loriot 7e2ee496de update project name of cmake scripts of tests 2016-09-08 00:26:37 +02:00
Sébastien Loriot 4c29bf1b44 CMAKE_SOURCE_DIR -> CMAKE_CURRENT_SOURCE_DIR 2016-03-24 16:33:46 +01:00
Sébastien Loriot 881e4d3199 request Core only in examples, tests and demos when really needed 2016-03-07 22:36:57 +01:00
Sébastien Loriot 2d191d6651 commit CMakeLists.txt for all examples and tests 2016-03-07 17:39:36 +01:00
Sébastien Loriot 2bd87a7c7a add a test to ensure projection_traits is working 2012-05-28 07:51:18 +00:00
Sébastien Loriot 52317dd49f add python script (replace_CGAL_NAMESPACE.py) to replace CGAL_BEGIN_NAMESPACE and CGAL_END_NAMESPACE
by namespace CGAL { and } //namespace CGAL. in all .h and .cpp files
in a directory.
Apply it to all packages in the trunk
Remove macro definition from the config.h file.
2010-06-09 07:37:13 +00:00
Andreas Fabri 0839776745 The file created on the fly should do it 2008-10-14 06:33:58 +00:00
Sylvain Pion 76f9ad0aa5 Replace various std::copy calls by constructors of vector/list. 2008-08-20 09:52:00 +00:00
Sylvain Pion bc2c4fa5e5 Remove unused #include <deque>. 2008-04-12 09:28:51 +00:00
Sylvain Pion ef71559164 Remove the Kernel Concept Archetypes. 2008-04-11 19:26:21 +00:00
Andreas Meyer 20315de571 * replaced CGAL_test_assert with ::assert, instead of CGAL_assertion
* removed include/Testsuite/assert.h
2008-03-19 13:45:36 +00:00
Fernando Cacciola b704509dcf Examples/Demos/Test CMake scripts updated 2008-03-05 21:14:02 +00:00
Fernando Cacciola a659cd852a Added project() and conditional test for CGAL_DIR 2008-02-14 15:42:36 +00:00
Fernando Cacciola 14043c43a0 Replaced CGALROOT by CGAL_DIR (the latters is used by CMake automatically) 2008-02-08 17:47:21 +00:00
Fernando Cacciola afddfc4fca CMake scripts for demos/examples/test added 2008-02-06 19:06:24 +00:00
Andreas Meyer 6623d525eb * replaced assert in */test/*/*.{cpp,h} with CGAL_test_assertion
* replaced #include <assert.h> with the according CGAL/Testsuite/assert.h
2007-11-07 21:35:42 +00:00
Sylvain Pion 8d1aded17c rename .C to .cpp 2007-01-27 21:16:25 +00:00
Sylvain Pion 459074f558 Switch *.C to *_impl.h and remove CGAL_CFG_NO_AUTOMATIC_TEMPLATE_INCLUSION. 2006-06-13 08:49:43 +00:00
Andreas Fabri 201337ecd3 Replaced #else by #endif 2006-04-05 15:54:42 +00:00
Andreas Fabri 38ffcecfbe Only include GMP if CGAL_USE_GMP is defined 2006-03-30 12:42:07 +00:00
Laurent Saboret 1aad55d4cb Change CVS keywords to SVN style 2006-02-14 10:08:15 +00:00
Laurent Saboret 20e0dc0e01 Move packages to trunk root 2006-02-14 08:58:14 +00:00