Laurent Rineau
5ef5350f04
Fix headers of Kernel_23
...
Mostly missing #include, but I had to create a <CGAL/kernel_config.h> from
<CGAL/kernel_basic.h>, to reduce dependency problems.
2012-10-08 09:02:18 +00:00
Guillaume Damiand
bf0d1025eb
Revert last commit: cgal is really too rigid...
2012-07-17 08:56:13 +00:00
Guillaume Damiand
46f16de7c9
Add operator += in BBox classes (more or less a trivial bug-fix).
2012-07-17 08:18:59 +00:00
Laurent Rineau
62a8fdc2d4
Merge /branches/features/Triangulation_2_UseTraitsInHierarchy-GF/Kernel_23
...
... and only that directory. The rest of the branch is a patch to
Triangulation_2, that will be sumbitted as a small feature.
2012-06-29 16:27:25 +00:00
Philipp Möller
caf3cce0d1
Silence unused parameter warnings. Leave the ones from the test-suite
...
that could signal incomplete tests.
2012-06-22 14:22:16 +00:00
Philipp Möller
75378f55ce
Merged ^/branches/next for the test-suite run.
2012-05-10 17:34:30 +00:00
Laurent Rineau
05864a04d3
Trivially add compatibility with Boost Meta-Programming Library (MPL)
...
Boost MPL "Metafunction" concept just requires the nested type named "type".
2012-04-25 11:48:29 +00:00
Philipp Möller
17797b7271
Merge next into this branch. There have been conflicts in the
...
AABB_tree documentation, Intersections_3 and Arrangement_on_surface_2.
The merge also introduced a regression for a bug fixed in R68387 which
fixed a bug in Triangle_3 Segment_3 intersections. The relevant
testcase is in triangle_other_intersection_test.cpp.
2012-04-24 15:06:19 +00:00
Philipp Möller
542f5d9c51
Merged ^/branches/next here
2012-04-16 08:53:21 +00:00
Laurent Rineau
5b5dd33848
merge changes from next
2012-01-09 12:33:39 +00:00
Sébastien Loriot
60ca2d55ef
add missing operator in Projection_traits
2011-12-30 13:38:51 +00:00
Sébastien Loriot
5eace40fa1
BUG-FIX: Compute_squared_radius_2 should not be Compute_squared_radius_3 in projection traits
2011-12-30 11:06:01 +00:00
Philipp Möller
58a6c86cbc
* fixed include issue
...
* some work to make Lazy work with C++11
2011-12-15 15:45:39 +00:00
Philipp Möller
15c57cba6d
* those two work correctly now
2011-12-14 16:43:28 +00:00
Philipp Möller
659d2295d0
Added tests to verify the types returned by boost::result_of match the
...
real tests and ajusted the type of Construct_vertex_3 for Iso_cuboid_3
2011-12-13 15:13:07 +00:00
Philipp Möller
f455f63045
removed Qualified_result_of
2011-11-23 17:53:04 +00:00
Philipp Möller
0e0a200646
* Using result_of instead of Qualified_result_of
...
* limited refactoring in the lazy kernel
* still bugs in circular_3
* still specialization problem with iso_rectangle
2011-11-23 17:52:38 +00:00
Philipp Möller
94affd589d
Moved the Intersection_result concept into the functors and adapted code in the lazy kernel to that change.
2011-11-15 15:40:22 +00:00
Philipp Möller
9051768cea
Introduced Intersection_results as a Kernel concept for use in public APIs in favor over Intersection_traits.
2011-11-15 13:41:14 +00:00
Philipp Möller
450f438518
IT shortcut not circumvents specifying a kernel making it an actual shortcut and nicer for exposure in APIs
2011-11-10 11:06:26 +00:00
Philipp Möller
a6f4cb16ae
Macro for versioning the intersections and support for both versions in the top level function.
2011-11-08 11:56:57 +00:00
Laurent Rineau
ab3753c62c
Merge from next
2011-10-13 16:16:59 +00:00
Laurent Rineau
414f9319f4
Fix artificial dependency of Kernel_23 to Triangulation_2
...
This file was moved from Triangulation_2 to the kernel, a few months
ago. That explains why <CGAL/triangulation_assertions.h> was used.
2011-10-13 14:10:38 +00:00
Sébastien Loriot
961d58fa4b
update files with incorrect license headers (QPL but should be LGPL)
2011-10-10 16:07:44 +00:00
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