Andreas Fabri
1e2383151e
Add Less_xy_2 and Less_yx, so that it becomes model of PolygonTraits_2
2010-10-11 13:28:40 +00:00
Andreas Fabri
4656f941a8
rename class inside the file
2010-10-11 13:19:16 +00:00
Andreas Fabri
80e6d72509
Generalize name
2010-10-11 13:17:15 +00:00
Andreas Fabri
ab087f138c
Move implementation of Projection_traits from Triangulation_2 to Kernel
2010-10-11 13:15:20 +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
Christian Helbling
837409ebdc
adding compare_lexicographically for Point_2 and Point_3 to improve compatibility with Point_d
2010-09-20 12:30:45 +00:00
Sylvain Pion
9d9b178cb7
Optimize solve().
...
before : 22 +, 48 *, 3 /
after : 14 +, 24 *, 3 /
It might even be slightly more stable numerically.
2010-08-27 21:27:07 +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
Sylvain Pion
8bd3dce0e2
Replace typedefs Exact_predicates_[in]exact_constrictions_kernel by Epick and
...
Epeck to shorten error messages, mangling...
2010-07-27 14:16:39 +00:00
Laurent Rineau
665c0ea8c1
Kernel::Compare_Squared_distance_[23]::operator() has now the following
...
overloads:
template <typename T1, typename T2>
Comparison_result
operator()(T1, T2, Kernel::FT);
and
template <typename T1, typename T2, typename T3, typename T4>
Comparison_result
operator()(T1, T2, T3, T4); // compare distances |t1, t2|^2 and |t3, t4|^2.
Before that revision, the types T_i were hardcoded to Kernel::Point_3
without any reason.
And Kernel::Compare_Squared_distance_2 and
Kernel::Compare_Squared_distance_3 now have the same implementation, and
almost the same documentation (but the set of admitted input types). The
implementations could even have been factorized.
(The Kernel_23 testsuite passes on Linux, as well as the doc_tex testsuite.)
2010-06-30 12:19:54 +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
Sébastien Loriot
2a1e9fe728
vertex function of triangle use Has_qrt
...
add specialization of Qualified_result_of for Iso_cuboid
(added because I needed to have const ref on triangle points)
2010-06-22 07:17:59 +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
Sylvain Pion
85dc12f2a7
Remove empty lines at beginning and end of files
...
(apply Scripts/developer_scripts/remove_empty_lines.pl).
2010-02-01 12:55:28 +00:00
Sébastien Loriot
86d9865f2e
add operator() with one point to compare_squared_radius functor
2009-10-13 08:34:43 +00:00
Stéphane Tayeb
8dceee4164
Add include<CGAL/assertions.h> in *_assertion files.
2009-10-07 13:16:13 +00:00
Stéphane Tayeb
770492c1c7
Use new version of script create_assertions.sh to generate *_assertions.h files.
...
Diffs are:
* #undef added
* in old files, (void)0 is replaced by static_cast<void>(0)
* in old files, lines as "# define CGAL_xxx_assertion 1" are added
* in point_set_processing_assertions.h, surface_mesh_parameterization_assertions.h, surface_reconstruction_points_assertions.h, "|| defined(CGAL_NDEBUG)" is replaced by "|| defined (NDEBUG)"
* protective macros (if any) are removed
* included files if any (<CGAL/assertions.h>, <CGAL/trace.h>) are removed
2009-10-07 07:49:44 +00:00
Laurent Rineau
e896a33ec6
We must either:
...
- include <CGAL/config.h>
- or not use CGAL_BEGIN_NAMESPACE.
I prefer the second option.
2009-08-27 14:54:01 +00:00
Laurent Rineau
4a383b3197
In Compare_dihedral_angle_3, add the comparison between the dihedral angle
...
defined by four points (or three vectors), and a FT. The FT represents the
cosine of the angle.
The code passes the testsuite. Documentation coming...
2009-08-26 11:31:51 +00:00
Laurent Rineau
a210c87658
Let's use v.squared_length() instead v*v.
2009-08-25 15:48:33 +00:00
Laurent Rineau
09c4682e0b
Typo: s/cosinus/cosine/.
...
(Thanks to Sylvain for his review of my patch r51491.)
2009-08-25 15:26:08 +00:00
Laurent Rineau
146aa66bca
Remove commented code.
2009-08-25 14:58:19 +00:00
Laurent Rineau
22798366ad
Add a new predicate in the Kernel: Compare_dihedral_angle_3.
2009-08-25 14:48:41 +00:00
Sylvain Pion
8573fe26ce
Rename CGALi to internal.
2009-08-24 17:10:04 +00:00
Laurent Rineau
b9fcb4ff62
Revert that change:
...
-----------------------------------------------------------------
| New Revision: 51399
| Author: lrineau
| Date: 2009-08-21 16:01:46 +0200 (Fri, 21 Aug 2009)
|
| Log message:
|
| Add a CGAL_kernel_assertion_code, in
| Construct_circle_2::operator()(Point_3, Point_2, Point_2), to avoid some
| unneeded calculus to be performed when NDEBUG is defined.
-----------------------------------------------------------------
2009-08-24 09:52:55 +00:00
Laurent Rineau
b0b7c5b629
Add a CGAL_kernel_assertion_code, in
...
Construct_circle_2::operator()(Point_3, Point_2, Point_2), to avoid some
unneeded calculus to be performed when NDEBUG is defined.
2009-08-21 14:01:46 +00:00
Sébastien Loriot
7e00f2fa49
remove warning uninitialized int (approved by RM)
2009-07-09 08:20:52 +00:00
Andreas Fabri
a89ffb7be3
Add squared radius for a point to make kernels model of the alpha shape traits class
2009-07-07 10:33:38 +00:00
Sébastien Loriot
ed59e89ad6
correct has_on pb
2009-06-26 14:14:54 +00:00
Sébastien Loriot
b65aa72c49
has_on circle for plane_3
2009-06-25 05:55:14 +00:00
Sébastien Loriot
7537bdbeab
add documented has_on for point and circle on a sphere
2009-06-24 16:26:17 +00:00
Sylvain Pion
da8f43f45f
Mark most one-argument constructors explicit.
2009-05-09 16:08:19 +00:00
Sylvain Pion
f0ed774e37
Move CGAL::array to namespace CGAL::cpp0x, like tuple.
2009-04-30 14:03:52 +00:00
Andreas Fabri
9b6425f55c
Forward argument 'orientation'
2008-12-08 14:47:16 +00:00
Andreas Fabri
bde0aee592
In deep derivation hierarchies VC8 has problems when we use the same name for a template parameter at several hierarchy levels, so we rename it here
2008-10-21 12:29:38 +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
Pedro Machado Manhaes de Castro
5a40803e35
Fixing has_on member function of Circle_3
2008-10-06 10:31:28 +00:00
Pedro Machado Manhaes de Castro
8960a3dd58
Some forgotten operators on functors for Circle_3
2008-10-02 16:31:35 +00:00
Pedro Machado Manhaes de Castro
759a865e5a
member functions on Circle_3
2008-10-02 16:21:54 +00:00
Pedro Machado Manhaes de Castro
a8647958ae
member functions on Circle_3
2008-10-02 16:19:04 +00:00
Pedro Machado Manhaes de Castro
7b44979a90
Convention to allow Circle_3 c = Circle_3(p1, p2, p3); Sphere_3 s = c; Plane_3 p = c;
2008-09-16 13:04:08 +00:00
Pedro Machado Manhaes de Castro
642a419079
Is_degenerate_3 functor for Circle_3
2008-09-16 12:48:45 +00:00
Pedro Machado Manhaes de Castro
0ce9d35d32
Construct_supporting_plane => Construct_plane, Construct_diametral_sphere => Construct_sphere
2008-09-16 12:45: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
7d5dda0438
Propagate Uncertain-ty.
2008-08-22 15:22:00 +00:00
Sylvain Pion
2f0abc4b6f
Move CGAL::Object from Kernel_23 to STL_Extension.
2008-07-29 15:26:38 +00:00
Sylvain Pion
0a76cd42f7
Remove the deprecated linear kernel functors Construct_supporting_line_2 and
...
Construct_supporting_line_3. (they were deprecated in 2004).
2008-07-28 16:07:28 +00:00
Sylvain Pion
91ded52d27
Replace Sixtuple and Fourtuple by boost::array in Bbox_[23].
2008-07-25 09:50:56 +00:00
Pedro Machado Manhaes de Castro
65e7bd6974
Cleaning stuffs temporarily
2008-07-24 13:13:12 +00:00
Michael Hoffmann
8dd4cd38ca
Remove functional_base include.
2008-07-23 14:50:58 +00:00
Sylvain Pion
d52770ff46
Add missing new typedefs
2008-07-22 14:04:17 +00:00
Sylvain Pion
79864c0c8e
Remove Arity_tag.
2008-07-22 12:29:01 +00:00
Pedro Machado Manhaes de Castro
e8663963f2
Constructing a Circle_3 passing through three points p, q, r
2008-07-17 14:08:50 +00:00
Pedro Machado Manhaes de Castro
66b2705068
Changing Licenses from QPL to LGPL
2008-07-17 12:02:29 +00:00
Sylvain Pion
173ef7c590
Allow propagation of Uncertain-ty in more places, to reduce the number of exceptions.
...
- Use K::Bool_type, K::Orientation... instead of bool, CGAL::Orientation...
- More functions around Uncertain<> : make_certain(), extract_singleton(),
possible conversions tightenning.
Many conversions still remain, e.g. for switch and if statements, &&, ||...
2008-07-16 13:45:13 +00:00
Sylvain Pion
2eb0d8f9e9
certainly() -> possibly().
2008-07-14 11:16:41 +00:00
Sylvain Pion
32a9d86ec2
Fix header inclusion order problem by #including <CGAL/config.h> instead of <CGAL/basic.h>.
...
Really: <CGAL/basic.h> should go away!
2008-07-12 21:09:38 +00:00
Sylvain Pion
9d7a609ff2
Make assertions trigger an error only for *certain* conditions (using CGAL::certainly()).
...
This is useful for interval arithmetic code.
(replay of r44002 with the header order hopefully fixed)
2008-07-10 21:49:17 +00:00
Sylvain Pion
2b4ebf01f7
Undo r44002 as it's buggy
2008-07-06 20:47:29 +00:00
Sylvain Pion
514a17ad4f
Improve the interaction of assertions and interval computations.
...
Things like "CGAL_assertion(denominator != 0)" produced assertion failures for no gain.
So now, the assertion is triggered only if the condition is certain, using CGAL::certainly().
That is, change the following in all assertion files :
((EX)?(static_cast<void>(0)): ::CGAL::assertion_fail( # EX , __FILE__, __LINE__))
to :
(CGAL::certainly(EX)?(static_cast<void>(0)): ::CGAL::assertion_fail( # EX , __FILE__, __LINE__))
2008-07-06 17:05:47 +00:00
Pedro Machado Manhaes de Castro
4527058121
Fixing Lazy for Circle_3
2008-06-26 14:26:49 +00:00
Pedro Machado Manhaes de Castro
60e14a495e
Changed the typedef for Sphere_3 of Circle_3 from private to public temporarily so the stuffs of Sebastien (in Circular_kernel_3, Circular_arc_3 with reference sphere) keep working.
2008-06-09 16:16:44 +00:00
Pedro Machado Manhaes de Castro
95699dc3a6
Fixing Dimension Tags for Circle_3
2008-06-05 08:40:13 +00:00
Pedro Machado Manhaes de Castro
0061696f17
missin Circle_3 itself
2008-06-04 16:32:43 +00:00
Pedro Machado Manhaes de Castro
69c2b4d186
add radical_plane
2008-06-04 09:04:45 +00:00
Pedro Machado Manhaes de Castro
5cf2eb63cd
fixing the 03/06/2008 red mosaic
2008-06-04 07:52:01 +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
b997c33952
Added compare_squared_radius, its functor, doc, testsuite
2008-05-28 14:25:42 +00:00
Sylvain Pion
74db076d75
Remove too simplistic Intel compiler workaround, as it breaks
...
with the Intel compiler on Linux. If it's still needed,
a *proper* workaround should be put in place instead.
2008-05-21 13:48:05 +00:00
Sylvain Pion
0ba9bfbca4
Move that preliminary stuff to internal CGAL::Access namespace.
2008-04-17 14:43:41 +00:00
Sylvain Pion
7eeb87cf71
Add a Dimension typedef to the d-dim kernels.
...
Swap the order of the arguments of the Point<2, K> so that there can be a default for the dimension.
2008-04-17 14:02:06 +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
4477a9d986
Updates after the new d-dim stuff changes.
2008-04-15 13:53:58 +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
4416bee3de
Move all Handle* classes to STL_Extension. There's no geometry in them,
...
so the kernel is not the most appropriate place for them.
2008-04-12 10:38:07 +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
aad1552b8a
Add Dimension_tag<int dim> to help dispatching functions depending
...
on the dimension.
2008-04-11 19:29:30 +00:00
Sylvain Pion
ef71559164
Remove the Kernel Concept Archetypes.
2008-04-11 19:26:21 +00:00
Sylvain Pion
4873e53de2
Move:
...
<CGAL/Kernel/Cartesian_coordinate_iterator_2.h>
<CGAL/Kernel/Cartesian_coordinate_iterator_3.h>
To:
<CGAL/Filtered_kernel/Cartesian_coordinate_iterator_2.h>
<CGAL/Filtered_kernel/Cartesian_coordinate_iterator_3.h>
2008-04-09 18:06:00 +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
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
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
54648829af
Merge <CGAL/functions_on_enums.h> into <CGAL_enum.h>.
...
No need to have 2 separately documented headers for that.
2008-03-20 16:39:56 +00:00
Andreas Fabri
7f258ba048
Added functors to archetype kernel
2008-01-19 15:11:50 +00:00
Andreas Fabri
a322da0f0e
Added preconditions and made it more efficient
2008-01-18 13:42:39 +00:00
Andreas Fabri
e1f07a4bde
Added normal and unit_normal function ans functors
2008-01-18 12:56:56 +00:00
Sylvain Pion
06109ce606
Add <CGAL/basic.h> header.
2008-01-12 20:15:41 +00:00
Sylvain Pion
79f8bea447
Update following the enum types merge of 3.3.
...
(this file is unused, so it was undetected before, I nevertheless keep it, as it is cute)
2008-01-11 22:56:35 +00:00
Sylvain Pion
a582e0979f
Add missing includes.
2008-01-11 22:09:24 +00:00
Sylvain Pion
d49e006c53
Remove default argument "0" to calls to assertion_fail() et al,
...
as the default is now the empty string "".
It should fix the problem that we have lost the assertion messages
(seeing "what(): basic_string::_S_construct NULL not valid" instead),
for packages that use package-specific assertion macros.
2007-12-21 21:58:27 +00:00
Andreas Meyer
fdeedcf8b0
some low level code cleanup. renamed
...
* CGAL_error to CGAL_error_msg
* introduced a macro CGAL_error()
* added some words about CGAL_error to the developers manual
* renamed most of assert(x) into CGAL_assertion(x)
* renamed exit(x) with x != 0 , CGAL_assertion(false) and assert(false) into CGAL_error
* CORE left untouched, OpenNL changed
2007-11-07 16:51:18 +00:00
Sylvain Pion
90b39fe156
Replace abort() by CGAL_assertion*.
2007-11-05 10:08:04 +00:00
Sylvain Pion
e05221ceef
Iso_cuboid_3::transform had been dropped when doing shuffles for the Lazy_kernel.
2007-10-31 19:31:24 +00:00
Sylvain Pion
b976aea1b6
Remove 2 workarounds which are not needed anymore by the latest SunPRO:
...
CGAL_CFG_DEEP_DEPENDENT_TEMPLATE_BUG
CGAL_CFG_DEDUCABLE_CONTEXT_BUG
2007-08-24 12:57:55 +00:00
Sylvain Pion
e06d15e64e
Fix bug #3850 : add missing #include <CGAL/Bbox_2.h>.
2007-08-23 08:57:12 +00:00
Sylvain Pion
4f1170dcc4
Keep Bbox_3 and Bbox_2 in sync, and add missing documentation
...
for : dimension(), min(), max(), operator==, operator!=.
2007-08-22 12:12:48 +00:00
Sylvain Pion
a90de08bf3
Remove obsolete config flag CGAL_CFG_MATCHING_BUG_4 and its dependency CGAL_WRAP.
2007-08-08 15:15:20 +00:00