Commit Graph

258 Commits

Author SHA1 Message Date
Sébastien Loriot 91a5327fa8 change LGPLv2 -> LGPLv3 2011-10-10 13:48:25 +00:00
Sébastien Loriot 554f62d411 remove executable property from copyright files 2011-10-03 08:18:16 +00:00
Andreas Fabri d10a333947 Add a file with the copyright holder(s) to the package_info 2011-09-29 20:45:16 +00:00
Sébastien Loriot dff6dda8b3 Remove from copyright holder
Freie Universitaet Berlin (Germany), Martin-Luther-University Halle-Wittenberg
(Germany) and RISC Linz (Austria) as they transfer the copyright to other
sites.
2011-09-21 19:46:31 +00:00
Sébastien Loriot e5a96255ba *remove warnings.
In particular remove UNTESTED_XXXXXXXXXXX unused variable that possibly hide true warnings. 
In those cases, the string printed while executed now starts with "NOTE: ".
*CGAL internal code no longer rely on depecrated features
2011-02-28 15:28:28 +00:00
Sébastien Loriot 78a8e36522 small features to add additional operator() to Angle_2.
This is a merge from the branch /branches/experimental-packages/More_robust_Triangulation_2-branch
2011-01-07 10:45:13 +00:00
Sébastien Loriot ace9c87934 revert dirty commit 60628 2011-01-07 10:37:54 +00:00
Sébastien Loriot 99dda59784 add operator() to Angle_2 functor (code,global function,doc,test).
That was submitted as small feature.
2011-01-07 10:04:06 +00:00
Laurent Rineau 212ea5a473 Merge in trunk the code of https://cgal.geometryfactory.com/CGAL/Members/wiki/Features/Small_Features/Kernel::Has_filtered_predicates_tag 2010-12-16 16:09:23 +00:00
Andreas Fabri 87266e83b6 Unify class/struct 2010-11-18 09:17:05 +00:00
Laurent Rineau 5b22e449e0 Kernel::Compare_distance_[23] with three objects, similar to
compare_distance_to_point, but with any object types
2010-10-11 11:10:32 +00:00
Laurent Rineau 2b800fe1bd Fixes (for clang, but other compilers should complain the same way):
#include <CGAL/Handle_for.h>

  prefix get with CGAL::
2010-09-22 16:05:05 +00:00
Laurent Rineau 351c3233be - Deprecate operator()(T1, T2, T3, T4) of Kernel::CompareSquaredDistance_[23]
and move it to Kernel::CompareDistance_[23].
- Add CGAL::compare_distance(T1, T2, T3, T4).

(Test suite OK.)
2010-08-03 14:22:25 +00:00
Laurent Rineau a97730f073 Move Compare_squared_distance_[23] from Cartesian and Homogeneous to
Kernel_23: their implementation were identical.
2010-06-30 10:04:49 +00:00
Laurent Rineau 911104a7e0 Remove extra typename (broken testsuite) after revision 56725:
| ------------------------------------------------------------------------
  | r56725 | afabri | 2010-06-14 09:08:25 +0200 (Mon, 14 Jun 2010) | 1 line
  | Changed paths:
  |    M /trunk/Homogeneous_kernel/include/CGAL/Homogeneous/Homogeneous_base.h
  |    M /trunk/Homogeneous_kernel/include/CGAL/Homogeneous/VectorH2.h
  |    M /trunk/Homogeneous_kernel/include/CGAL/Homogeneous/VectorH3.h
  | 
  | For VC-10 we have to change FT* to cpp0x<>::const_iterator
  | ------------------------------------------------------------------------
2010-06-14 20:29:51 +00:00
Andreas Fabri 88fda0de9b For VC-10 we have to change FT* to cpp0x<>::const_iterator 2010-06-14 07:08:25 +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
Olivier Devillers fcc1151878 remove test of useless preconditions
Side_of_oriented_sphere/circle
2010-05-28 15:35:47 +00:00
Laurent Rineau 148ae4ac0f Add missing #include (for get, which is not a dependant-name). 2010-05-22 12:02:41 +00:00
Laurent Rineau 67928706cf C++ conformance: calls to member templates of dependent names must be
qualified with the "template" keyword.

Example:
  template <typenam T>
  void f(T foobar) {
    foobar.get<0>().foobar(); // error
  }
must be written:

  foobar.template get<0>().foobar();
2010-05-16 16:50:24 +00:00
Andreas Fabri a59f9dcdc2 fixed base class for 'using' statement 2010-05-13 08:40:38 +00:00
Andreas Fabri 1cd0d69d80 Add 'using' for ansi compliance 2010-05-11 09:49:14 +00:00
Sylvain Pion d2a078803b Add a new Boolean constant in the kernel, Has_filtered_predicates. 2009-10-16 12:07:18 +00:00
Andreas Fabri 4b10227f1f Add operator to Compare_squared_distance_3 2009-08-24 15:00:14 +00:00
Sylvain Pion 927b432b39 typo : mecanism -> mechanism. 2009-08-10 15:57:03 +00:00
Andreas Fabri 477980f0f4 Add squared radius for a point to make kernels model of the alpha shape traits class 2009-07-06 11:36:23 +00:00
Sylvain Pion f0ed774e37 Move CGAL::array to namespace CGAL::cpp0x, like tuple. 2009-04-30 14:03:52 +00:00
Pedro Machado Manhaes de Castro e76dfad626 Fixing a bug (homegenous version of Construct_radical_line_2) 2008-10-21 13:31:56 +00:00
Pedro Machado Manhaes de Castro a65aceddf2 radical line as well 2008-10-20 14:44:37 +00:00
Sylvain Pion 4aa1cb057a Remove my email adress from header files. 2008-10-11 20:21:08 +00:00
Sylvain Pion 4c79d1d5cf Rename Bool_type to Boolean. 2008-08-26 13:40:26 +00:00
Sylvain Pion 53f5c9679b Add a using directive "using std::array" in namespace CGAL to import either:
- C++0x's std:array from <array>
- TR1's std::tr1::array from <tr1/array>
- boost::array from <boost/array.hpp>
Motivation : GCC's std::array is faster than boost::array.

Move CGALi:make_array to namespace CGAL.

Document CGAL::array.
2008-08-26 13:08:16 +00:00
Sylvain Pion 39e7a3537e Remove unused file (Homogeneous uses Cartesian's Ray_2 since quite some time). 2008-08-26 12:40:44 +00:00
Sylvain Pion af2bb2adaf Remove now useless <CGAL/utility.h> includes. 2008-07-25 15:06:44 +00:00
Sylvain Pion 0e682daf9a Replace CGAL::Triple by boost::tuple 2008-07-25 14:40:53 +00:00
Sylvain Pion b02bc7921b Use boost::array instead of Twotuple 2008-07-25 11:19:03 +00:00
Sylvain Pion dc3bf72707 Remove changes.txt files. 2008-07-24 17:47:16 +00:00
Sylvain Pion 79864c0c8e Remove Arity_tag. 2008-07-22 12:29:01 +00:00
Sylvain Pion 6ee113f820 Document the kernel typedefs specifying the return types of the predicates:
Bool_type, Sign, Comparison_result, Orientation, Oriented_side, Bounded_side and Angle.
2008-07-16 13:59:26 +00:00
Pedro Machado Manhaes de Castro 3897f61b55 fixing the converter (and the issues with Kernel_23) 2008-06-05 08:48:58 +00:00
Pedro Machado Manhaes de Castro c63a8519f5 fixing the 03/06/2008 red mosaic 2008-06-04 07:52:42 +00:00
Pedro Machado Manhaes de Castro fc45f43179 Adding Circle_3 object to the Kernel. 2008-06-03 12:17:16 +00:00
Andreas Fabri 0b371caf7e Added Compare_squared_radius_3 2008-05-29 09:35:50 +00:00
Sylvain Pion 55d538b335 "Ambient" is not spelled "Ambiant" in English... 2008-04-17 10:13:31 +00:00
Sylvain Pion bbd100121b Add barycenter computation. 2008-04-15 15:13:17 +00:00
Sylvain Pion 2389cdcc1e Dimension detecting stuff rewrite.
There is now Ambiant_dimension and Feature_dimension.
The handling of the dynamic dimension case is now done by having
the di,ension tag as the first thing provided, with the integral
constant value available only when it makes sense (INT_MAX no longer needed).
2008-04-13 12:38:48 +00:00
Sylvain Pion 92257a66a2 Add constructors of Vector_? taking mixed types (e.g. int, double).
Spotted by the Min_ellipse_2 test-suite.  Regression due to my latest changes
to store Vectors in Points.
2008-04-12 10:03:45 +00:00
Sylvain Pion 02e543a294 Add Dimension<T, K> whose nested "value" is the dimension of the ambiant
space.  A special constant CGAL::Dynamic_dimension (equal to INT_MAX)
indicates the case where the dimension is only known at run time.
2008-04-11 21:03:22 +00:00
Sylvain Pion 7ace759d8e Remove the reference-counting inside Point_2 and Point_3, as they now store
only a Vector_2 and Vector_3 which is responsible for the reference-counting.
2008-04-10 14:41:35 +00:00
Sylvain Pion fbd6c53000 Make Point_2/Point_3 store a Vector_2/Vector_3.
This factorizes code and goes in the direction of having
a linear algebra layer.
2008-04-10 14:02:38 +00:00
Sylvain Pion 11bbf3e2de Vector_2 and Vector_3 now also provide a Cartesian_const_iterator. 2008-04-09 17:58:57 +00:00
Sylvain Pion 853437f640 Replace Cartesian_coordinate_iterator_[23] by Cartesian_const_iterator_d,
as it does not depend on the Point type, and I want to use it next for Vectors.
(I can't remove the old one yet as it's still used by Lazy_kernel)
2008-04-09 16:53:35 +00:00
Sylvain Pion 1d8779b171 Rename the following functions:
det2x2_by_formula
  det3x3_by_formula
  det4x4_by_formula
  det5x5_by_formula
  det6x6_by_formula
to:
  determinant

How cute...  a name independent of the dimension, and even readable !
2008-04-09 13:35:34 +00:00
Sylvain Pion b0f2c77fdc Remove casts to Oriented_side.
They are useless since we merged the various enum types.
2008-04-09 12:35:10 +00:00
Sylvain Pion b740e90de0 Rename the following functions:
sign_of_determinant2x2
  sign_of_determinant3x3
  sign_of_determinant4x4
  sign_of_determinant5x5
  sign_of_determinant6x6
to:
  sign_of_determinant

So that we have less dimension-dependent namings, at least internally...
2008-04-09 12:20:25 +00:00
Sylvain Pion cab843595b Replace {Two|Three|Four}tuple<FT> or <RT> by boost::array.
It makes more code parameterized by the dimension as template argument.
It provides iterators and a few basic functions already such as operator==...
I added CGALi::make_array() to easily and efficiently construct them.
2008-04-09 11:44:28 +00:00
Sylvain Pion 57d48d8d83 Replace useless forwarding function orientationH2() by sign_of_determinant3x3(). 2008-03-21 08:45:04 +00:00
Sylvain Pion c825d8c774 Remove some useless enum_cast<>.
Optimize some sign(a*b) to sign(a)*sign(b).
2008-03-20 16:28:35 +00:00
Sylvain Pion 9f5bad92a1 Remove my name from maintainer files where it does not resonnably make any sense anymore. 2008-01-19 14:29:27 +00:00
Sylvain Pion 7f6f380b11 Final step at the removal of CGAL_REP_CLASS_DEFINED. 2008-01-03 19:26:12 +00:00
Sylvain Pion a46b55bf71 The files "changes.txt", "description.txt", "long_description.txt" and "maintainer"
are now under /trunk/$Package/package_info/$Package/ .
2007-12-02 15:06:42 +00:00
Sylvain Pion a3def1c3eb Remove obsolete config flag CGAL_CFG_USING_BASE_MEMBER_BUG. 2007-08-09 09:55:09 +00:00
Andreas Fabri 0290ab619d removed unused parameters 2007-03-17 09:50:18 +00:00
Andreas Fabri bd5835aeb0 Use boost::mpl instead of the preprocessor 2007-03-17 08:31:51 +00:00
Sylvain Pion 75766b0470 remove warning 2007-03-03 08:59:11 +00:00
Sylvain Pion de87319cf1 remove warning 2007-03-03 08:58:28 +00:00
Sylvain Pion eae1175147 forgot to remove one .bbox() function in last revision 2006-12-27 23:28:15 +00:00
Sylvain Pion 370e6a1695 Move 3D .bbox() to the functors to make Lazy_kernel pass, and enhance the test-suite to test .bbox() 2006-12-27 23:25:54 +00:00
Sylvain Pion fbe285ca94 New predicates :
compare_squared_distance(Point_[23], Point_[23], FT), with
  CompareSquaredDistance_[23] functors.
2006-10-24 05:24:31 +00:00
Andreas Fabri f5c431bedb fix for min/max problem 2006-08-20 21:18:19 +00:00
Sylvain Pion 63e78107de New compiler bug in g++ 3.3 : CGAL_CFG_BOOL_IN_TEMPLATE_BUG 2006-08-18 21:30:12 +00:00
Sylvain Pion c206dcd8e1 Fix ambiguities in constructors of PointH?,
as convertibility between RT<->FT<->int was a problem.
Use enable_if<> and is_convertible<> for this.
2006-08-17 11:05:53 +00:00
Sylvain Pion ed36e763c7 Second part of Return_base_tag changes. 2006-08-16 16:38:49 +00:00
Sylvain Pion 2eb12d7441 - First part of introduction of Return_base_tag workaround for lack
of "forwarding constructors".
  Quoting some comment in the code:
  "
    This is a simple tag which is used as additional (first) argument in
    some kernel functors, to tell them to return the base (rep) class,
    instead of the main type (e.g. Kernel_base::Point_2 instead
    of Kernel::Point_2).  This is a minor optimization which prevents
    useless copies of the "reps".

    Those functors are only those used in the constructors of the kernel
    types like Point_2, so it's limited.

    The real solution will be to use "forwarding constructors", when they
    will be available in C++.
    In the mean time, this should be a mostly/hopefully internal hack.
  "
2006-08-16 14:56:11 +00:00
Andreas Fabri 12dbb148a9 fixed min/max problem 2006-08-16 14:43:19 +00:00
Sylvain Pion c50783f08f Bad luck: "equi-distant" -> "equidistant" (thanks Andreas). 2006-08-07 16:11:40 +00:00
Sylvain Pion 38853d1b10 - Optimize equi_distant_line() by merging the calls to
circumcenter() and cross_product().
- Add ctors to Point_[23] and Vector_[23] that take
  int, double, and FT coordinates, instead of only RT.
2006-08-07 15:57:40 +00:00
Sylvain Pion cc7624fa5c Last bunch of I/O changes to alloz Lazy_kernel to pass the kernel-I/O test-suite. 2006-08-06 16:37:35 +00:00
Sylvain Pion 5d3ca03180 You believed this could be something else ? : Move Plane_3 I/O to user class level 2006-08-06 16:06:39 +00:00
Sylvain Pion 02414e55f0 Guess what : Move Iso_cuboid_3 I/O to user class level 2006-08-06 15:55:58 +00:00
Sylvain Pion 38c91de538 Move Ray_3 I/O to user class level 2006-08-06 15:45:55 +00:00
Sylvain Pion 3634f311e2 Move Direction_3 I/O to user class level 2006-08-06 15:29:08 +00:00
Sylvain Pion ab88a8e595 Move Vector_3 I/O to user class level 2006-08-06 15:18:37 +00:00
Sylvain Pion 45e65df64c Move Ray_2 I/O to user class level 2006-08-05 23:18:30 +00:00
Sylvain Pion eb4be2820d Move Direction_2 I/O to user class level 2006-08-05 22:55:06 +00:00
Sylvain Pion 7494d17845 Move Vector_2 I/O to user class level 2006-08-05 22:39:59 +00:00
Sylvain Pion 48390a019a Move Sphere_3 I/O to user class level. 2006-08-05 22:17:02 +00:00
Sylvain Pion c7f1f68b40 Move Point_3 I/O to user class level. 2006-08-04 12:08:14 +00:00
Sylvain Pion f4be5b9920 Add overloads of circumcenter() taking only 2 Point_2 (or Point_3),
that is, the same thing as midpoint(), but with a uniform notation.
Same thing for the corresponding functor.
2006-08-03 17:07:39 +00:00
Sylvain Pion 9424d0e9d8 Remove some assertions, as they must not pop-up, since they are
used by Cartesian_converter/Homogeneous_converter, where we
absolutely must not throw.

TODO : find a way to keep the assertion while having the
       converters still work.  (should types come with their
       own conversions, like they all have .bbox() ?)
2006-08-03 11:29:12 +00:00
Sylvain Pion ea748e53d4 Add new constructor to Iso_rectangle_2(Point_2, Point_2, int).
The additional dummy "int" specifies that the 2 points are
the lower-left and upper-right corner.  This is more efficient
when one knows they are already in this configuration.

Same thing for Iso_cuboid_3, and the functors.

Use them in Cartesian_converter and Homogeneous_converter.
2006-08-03 09:40:12 +00:00
Sylvain Pion 89d1821b6f Remove blanks at end of lines 2006-08-03 08:39:26 +00:00
Sylvain Pion 6ee4e656e7 Add determinant(Vector_2, Vector_2)
Add determinant(Vector_3, Vector_3, Vector_3)
And corresponding functor.
2006-08-02 18:57:40 +00:00
Sylvain Pion b7614eee4e More code move towards user classes, and improve 3D support for LazyK. 2006-08-02 11:23:56 +00:00
Sylvain Pion a63e4909f9 Move some Vector_3 functions to user class level. 2006-08-02 08:32:23 +00:00
Sylvain Pion 38956c9b10 Move yet another bunch of code to user classes... 2006-08-01 16:15:07 +00:00
Sylvain Pion ca7ca6c0bc More code move to user classes. 2006-08-01 15:39:37 +00:00
Sylvain Pion 4408fa1c2a More code move to user classes. 2006-08-01 14:10:09 +00:00
Sylvain Pion a04f166f1f - Move more code to the "user classes". 2006-08-01 13:17:03 +00:00
Sylvain Pion cbd6fc9417 Move .transform() in the 3D user classes.
Move some functions in the 3D user classes instead of the internal
 rep classes.
2006-08-01 12:09:47 +00:00
Sylvain Pion 04b834db9a Move .transform() functions to the "user classes" level. 2006-08-01 09:08:28 +00:00
Sylvain Pion ead2e93fdb - Add missing functor for compare_yx(). 2006-07-31 16:22:08 +00:00
Sylvain Pion e208720200 Comment out compare_deltax_deltay() predicate, as it is undocumented,
unused in CGAL, and does not have corresponding functor.
2006-07-31 15:52:21 +00:00
Sylvain Pion 72e208d8dd <CGAL/Interval_arithmetic.h> is deprecated -> <CGAL/Interval_nt.h> 2006-07-12 13:14:19 +00:00
Marc Glisse 453af1b9cd Simplify orientationH2 (and do one operation less). 2006-06-13 16:47:59 +00:00
Efi Fogel 2b3cb150b8 renamed Bool to Bool_type to avoid a conflict between a macro of the same name defined in Xlib.h 2006-06-13 14:35:53 +00:00
Sylvain Pion 290a24c95e Sphere_3::orthogonal_transform fixes:
- was only declared in Homogeneous
- was buggy in Cartesian
- was not tested
2006-04-03 13:16:31 +00:00
Sylvain Pion 0ec1b0efcc - Merge H2 and H3 into Homogeneous_kernel. 2006-03-06 23:51:27 +00:00