Sébastien Loriot
91a5327fa8
change LGPLv2 -> LGPLv3
2011-10-10 13:48:25 +00:00
Andreas Fabri
cbfe32ce37
Add declspecs for Visual C++ so that we can build dlls
2011-10-05 19:12:23 +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
Guillaume Damiand
a29c905ee0
Replace BOOST_STATIC_ASSERT by CGAL_static_assertion.
2011-08-31 14:30:07 +00:00
Philipp Möller
5b925d6f6e
* Reworked Intersection_traits into a single traits, adjusted
...
intersections accordingly, turned on IT<....> as return type
* removed result_type from the intersection functors
2011-08-25 10:18:31 +00:00
Philipp Möller
2f9b36d618
* intersection and do_intersection now pick their appropriate
...
overloads automatically;
* a test for the availability of all calls has been added
2011-07-12 16:53:49 +00:00
Sébastien Loriot
f1fe27620e
BUGFIX: copy-paste typo
2011-06-23 11:59:29 +00:00
Andreas Fabri
415e64411c
Add functors of Convex_hull_projective_traits classes
2011-04-06 07:41:14 +00:00
Sébastien Loriot
8ce2048aea
add #include<CGAL/config.h> before any directive CGAL_USE_*
2011-03-02 18:52:57 +00:00
Andreas Fabri
7f78d9d1b1
fix
2011-01-19 10:55:02 +00:00
Andreas Fabri
2071c33c81
Roll back to a projection on the xz instead of the zx plane
2011-01-19 10:36:52 +00:00
Andreas Fabri
1a48eaae74
Roll back to a projection on the xz instead of the zx plane
2011-01-19 10:27:51 +00:00
Sébastien Loriot
3e04fb16fb
merge packages related to projection traits into the trunk.
2011-01-11 07:18:36 +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
8eac6ca650
Improvement: add static filters to Lazy_kernel (which is the EPEC kernel).
...
For that:
- Split internal::Static_filters into two classes: one with only filtered
functors, for Epeck, and one that use the filtered functors, but also use
directory unfiltered functors of the Cartesian kernel (for predicates that
only compare doubles).
- Add a functor Get_approx in <CGAL/internal/Static_filters/tools.h>, that
is the identity for all types but lazy types (in that case its returns
"x.approx()").
- Use Get_approx in static-filters versions of predicates, so that they can
be used with Lazy_kernel too.
- Use Static_filters<K_base, false> as base class of Lazy_kernel.
- Rewrite <CGAL/Exact_predicate_exact_constructions_kernel.h>, to use
static filters for Epeck, but also to simplify that file by the use
Exact_type_selector<double>::Type as number type.
(The testsuite of Kernel_23 is OK on the platform
x86-64_Linux-2.6_g++-4.4.4_F13).
2010-12-17 13:53:26 +00:00
Laurent Rineau
11c7844f61
Add comments on #else and #endif.
2010-12-16 16:40:00 +00:00
Marc Glisse
ee07a88c30
unused
2010-11-10 21:14:11 +00:00
Laurent Rineau
0293802159
Revert those commits:
...
| ------------------------------------------------------------------------
| r59170 | afabri | 2010-10-11 15:48:42 +0200 (Mon, 11 Oct 2010) | 1 line
| Changed paths:
| A /trunk/Kernel_23/doc_tex/Kernel_23_ref/Projection_traits_xy_3.tex
|
| Add Projection_traits_xy_3
| ------------------------------------------------------------------------
| r59168 | afabri | 2010-10-11 15:35:17 +0200 (Mon, 11 Oct 2010) | 1 line
| Changed paths:
| A /trunk/Kernel_23/include/CGAL/Projection_traits_xy_3.h (from /trunk/Kernel_23/include/CGAL/Triangulation_euclidean_traits_xy_3.h:59167)
| A /trunk/Kernel_23/include/CGAL/Projection_traits_xz_3.h (from /trunk/Kernel_23/include/CGAL/Triangulation_euclidean_traits_xz_3.h:59167)
| A /trunk/Kernel_23/include/CGAL/Projection_traits_yz_3.h (from /trunk/Kernel_23/include/CGAL/Triangulation_euclidean_traits_yz_3.h:59167)
| D /trunk/Kernel_23/include/CGAL/Triangulation_euclidean_traits_xy_3.h
| D /trunk/Kernel_23/include/CGAL/Triangulation_euclidean_traits_xz_3.h
| D /trunk/Kernel_23/include/CGAL/Triangulation_euclidean_traits_yz_3.h
|
| Generalize name of traits class
| ------------------------------------------------------------------------
| r59167 | afabri | 2010-10-11 15:31:36 +0200 (Mon, 11 Oct 2010) | 1 line
| Changed paths:
| A /trunk/Kernel_23/include/CGAL/Triangulation_euclidean_traits_xy_3.h (from /trunk/Triangulation_2/include/CGAL/Triangulation_euclidean_traits_xy_3.h:59165)
| A /trunk/Kernel_23/include/CGAL/Triangulation_euclidean_traits_xz_3.h (from /trunk/Triangulation_2/include/CGAL/Triangulation_euclidean_traits_xz_3.h:59165)
| A /trunk/Kernel_23/include/CGAL/Triangulation_euclidean_traits_yz_3.h (from /trunk/Triangulation_2/include/CGAL/Triangulation_euclidean_traits_yz_3.h:59165)
|
| Add Projection_traits classes
| ------------------------------------------------------------------------
| r59166 | afabri | 2010-10-11 15:28:40 +0200 (Mon, 11 Oct 2010) | 1 line
| Changed paths:
| M /trunk/Kernel_23/include/CGAL/internal/Projection_traits_3.h
|
| Add Less_xy_2 and Less_yx, so that it becomes model of PolygonTraits_2
| ------------------------------------------------------------------------
| r59162 | afabri | 2010-10-11 15:19:16 +0200 (Mon, 11 Oct 2010) | 1 line
| Changed paths:
| M /trunk/Kernel_23/include/CGAL/internal/Projection_traits_3.h
|
| rename class inside the file
| ------------------------------------------------------------------------
| r59161 | afabri | 2010-10-11 15:17:15 +0200 (Mon, 11 Oct 2010) | 1 line
| Changed paths:
| A /trunk/Kernel_23/include/CGAL/internal/Projection_traits_3.h (from /trunk/Kernel_23/include/CGAL/internal/Triangulation_euclidean_traits_projected_3.h:59160)
| D /trunk/Kernel_23/include/CGAL/internal/Triangulation_euclidean_traits_projected_3.h
|
| Generalize name
| ------------------------------------------------------------------------
| r59160 | afabri | 2010-10-11 15:15:20 +0200 (Mon, 11 Oct 2010) | 1 line
| Changed paths:
| A /trunk/Kernel_23/include/CGAL/internal/Triangulation_euclidean_traits_projected_3.h (from /trunk/Triangulation_2/include/CGAL/internal/Triangulation_euclidean_traits_projected_3.h:59156)
|
| Move implementation of Projection_traits from Triangulation_2 to Kernel
| ------------------------------------------------------------------------
| r59158 | afabri | 2010-10-11 15:12:54 +0200 (Mon, 11 Oct 2010) | 1 line
| Changed paths:
| A /trunk/Kernel_23/include/CGAL/internal
|
| Add directory for the Projection_traits
| ------------------------------------------------------------------------
The work is now done is a branch.
2010-11-04 11:24:14 +00:00
Marc Glisse
6ca6e27978
rename private types for clang
2010-10-27 09:06:49 +00:00
Andreas Fabri
9064b74068
Generalize name of traits class
2010-10-11 13:35:17 +00:00
Andreas Fabri
6ce7d97cab
Add Projection_traits classes
2010-10-11 13:31:36 +00:00
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