Commit Graph

672 Commits

Author SHA1 Message Date
Mael Rouxel-Labbé cd4f282e01 Made Kernel_checker work with constructions
Basically, use the same Pairify class to deduce the return type.
2017-06-15 10:34:15 +02:00
Mael Rouxel-Labbé 4173e24fec Removed an empty line 2017-06-15 10:34:15 +02:00
Mael Rouxel-Labbé 279c1d77ac Removed ambiguous weighted point constructor
This constructor was already cleaned in the branch that this branch
is based upon... I must have messed up a merge conflict...
2017-06-15 10:32:03 +02:00
Mael Rouxel-Labbé df7feeab3a Make all conversions between Point and Weighted_point explicit
Also doc changes
2017-06-15 10:32:03 +02:00
Andreas Fabri 21395c7d5e Do in 2D what we did in 3D 2017-06-15 10:29:26 +02:00
Jane Tournois 9a087ffe6f fix compilation of tests wrt Point vs Weighted point 2017-06-15 10:29:26 +02:00
Andreas Fabri 50ff3708cb Use Construct_point_3 inside functor 2017-06-15 10:29:26 +02:00
Andreas Fabri 6a1b4c154b Changes after making Weighted_point_3(const Point_3) explicit 2017-06-15 10:29:26 +02:00
Andreas Fabri 64e5c887ec The Weighted_point_mapper becomes a traits class; test_regular_3.cpp passes 2017-06-15 10:29:26 +02:00
Mael Rouxel-Labbé 1e7ce5075f Moved Select_exact_kernel from Filtered_kernel.h to a seperate file
also renamed it to `Exact_kernel_selector` and added E2C typedefs
2017-06-13 16:27:24 +02:00
Mael Rouxel-Labbé 5f1ba08d52 Fixed minor mistakes from a rebase 2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé f636d0d070 Made Kernel_checker work with constructions
Basically, use the same Pairify class to deduce the return type.
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé e6c14f115e Removed an empty line 2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé 974c68b27d Removed ambiguous weighted point constructor
This constructor was already cleaned in the branch that this branch
is based upon... I must have messed up a merge conflict...
2017-06-08 13:23:10 +02:00
Mael Rouxel-Labbé 9e742a4694 Make all conversions between Point and Weighted_point explicit
Also doc changes
2017-06-08 13:23:10 +02:00
Andreas Fabri 858e846b72 Do in 2D what we did in 3D 2017-06-08 13:23:10 +02:00
Jane Tournois 632a87f6b9 fix compilation of tests wrt Point vs Weighted point 2017-06-08 13:23:10 +02:00
Andreas Fabri 5101afc63a Use Construct_point_3 inside functor 2017-06-08 13:23:10 +02:00
Andreas Fabri afd01a9932 Changes after making Weighted_point_3(const Point_3) explicit 2017-06-08 13:23:10 +02:00
Andreas Fabri 50db4d8813 The Weighted_point_mapper becomes a traits class; test_regular_3.cpp passes 2017-06-08 13:23:10 +02:00
Sébastien Loriot ae900ae297 force the usage of CGAL compare function
this fixes an issue detected whenusing LEDA without GMP
2017-05-22 09:43:36 +02:00
Sébastien Loriot 05fcab830e Add deprecation message 2017-05-15 10:09:19 +02:00
Sébastien Loriot ed704ea0f3 protect deprecated code with deprecation macro 2017-05-12 10:02:08 +02:00
Andreas Fabri 432a40df72 improve implementation as suggested by @mglisse 2017-05-12 09:49:41 +02:00
Andreas Fabri 9ccc9c1178 Fix compare_slope() 2017-05-12 09:49:39 +02:00
Andreas Fabri 5f8bc52082 Add angle(Point_3, Point_3,Point_3,Vector_3) 2017-05-12 09:48:23 +02:00
Andreas Fabri 061a9b1ecd Kernel:23 Add Compare_slope_3 2017-05-12 09:48:21 +02:00
Mael Rouxel-Labbé 9f366d6acf Fixed missing _object(){ } for construct_wp/p functors of projection traits 2017-04-30 19:51:49 +02:00
Mael Rouxel-Labbé 37eac35321 Added functions related to Weighted_point_2 to Projection_traits_3
+ tests
2017-04-21 18:14:38 +02:00
Mael Rouxel-Labbé c79e2d4b36 Added Compute_power_product_2 to the 2D kernel predicates
doc + test included
2017-04-21 13:07:40 +02:00
Mael Rouxel-Labbé bb086ff739 Added power_side_of_bounded_power_circle_2 to the 2D kernel predicates
A partial implementation was deleted from the Alpha_shapes_2 package without
moving the functions to the kernel...
This implementation adds the missing overloads (4, 3, and 2 points)

Test + doc included
2017-04-21 11:37:27 +02:00
Mael Rouxel-Labbé a751464ab6 Minor fixes to weighted functors (doc + cleaning) 2017-04-21 11:31:13 +02:00
Mael Rouxel-Labbé 232c38cee1 Removed documentation of degenerate cases of power_side_of_oriented_* predicates
See Issue https://github.com/CGAL/cgal/issues/2067
2017-04-20 12:54:39 +02:00
Mael Rouxel-Labbé 1223f5f5a0 Improved readability of weighted point-related functors (no real changes)
Fixed indentation, trailing whitespace, english, etc.
2017-04-19 11:40:58 +02:00
Mael Rouxel-Labbé dd2e7f3a0c Made compute_squared_smallest_orthogonal_circle_2() a kernel functor
and documented, tested, etc. it

Previously in Alpha_shape_2
2017-04-19 11:06:14 +02:00
Mael Rouxel-Labbé 2ae17980fe Added weighted point-related functions to global functions 2017-04-07 03:44:59 +02:00
Mael Rouxel-Labbé 365cfd0566 Fixed predicate Power_side_of_oriented_power_sphere_3
The Homogeneous kernel doesn't know how to run that predicate
for 3 or 4 arguments so it must be defined in Kernel/function_objects until
those operators are added
2017-04-06 21:57:21 +02:00
Mael Rouxel-Labbé 548d2bfb02 Cosmetic changes to Point_23 and Weighted_point_23 2017-04-06 12:38:18 +02:00
Mael Rouxel-Labbé aacf8db95f Fixed includes and typedefs in Weighted_point_23 2017-04-06 12:35:24 +02:00
Mael Rouxel-Labbé 2d2e675dac Fixed missing operators in Cartesian and homogeneous construct_weighted_point_23 2017-04-06 12:18:36 +02:00
Andreas Fabri 32e3d1bebd Division free functors may use Mpzf 2017-03-01 17:16:31 +01:00
Sébastien Loriot 9ae7b37845 Merge pull request #1745 from sloriot/Polyhedra_corefinement-enhancements-sloriot
Add corefinement operations in PMP
2017-01-12 12:05:18 +01:00
Sébastien Loriot cba8456715 add constructions for the intersection point of a plane by a line and of 2 lines
this is undocumented and allow to have a lazy node for this construction
2017-01-02 19:23:48 +01:00
Laurent Rineau 7e9d909602 Fix comments with wrong statements 2016-12-30 16:44:08 +01:00
Andreas Fabri 226da32579 std::max() does only take two arguments 2016-12-21 09:42:33 +01:00
Maxime Gimeno b0dd7d25cb Add Compute_L_infinity_distance_3. 2016-12-21 09:41:33 +01:00
Andreas Fabri eb7e38493c Add the function FT l_infinity_distance(Point_2, Point_2)
as well as the corresponding functor

This is a function where the implementation is in the file
Kernel_23/include/CGAL/Kernel/function_objects.h

When the implementation is different for Cartesia and Homogeneous coordinates
the code should go into the function_objects.h files
in the packages Cartesian_kernel and Homogeneous_kernel
2016-12-21 09:40:53 +01:00
Laurent Rineau bbf430b0b1 Merge pull request #585 from afabri/Kernel-Weighted_point-GF
Introduce Kernel::Weighted_point_3 together with functors
2016-12-20 19:52:02 +01:00
Laurent Rineau 2f4a32f089 fix Construct_projected_point_3 with degenerate triangles
`Construct_projected_point_3::operator()(Point_3, Triangle_3)` now
checks if the triangle is degenerated (actually it checks if its
supporting plane is degenerated). If it is, it falls back to
`operator()(Point_3, Segment_3)` with the segment that is equivalent to
the triangle. When using non-exact floating point numbers, it chooses
the edge of the triangle that has the biggest l-infinity length.
2016-12-02 13:14:14 +01:00
Jane Tournois e633fb0a3b add missing "-" needed for conversion from Sign to Bounded_side 2016-11-24 16:53:55 +01:00
Jane Tournois 306323d45c make doc and doc consistent
- add "model of Concept" as much as possible in the modified classes/concepts
- fix some links
- update package description of Kernel_23
2016-11-03 14:55:39 +01:00
Jane Tournois 6af2db1b91 Use Power_side_of_bounded_power_sphere instead of Side_of_bounded_orthogonal_sphere
both functors made the same computation, up the sign of the result.

The return type now is CGAL::Bounded_side, which makes things easier
 to understand and use
2016-11-03 14:55:39 +01:00
Jane Tournois f3a021a195 rename in_smallest_orthogonal_sphereC3 to power_side_of_bounded_power_sphereC3 2016-11-03 14:53:54 +01:00
Andreas Fabri ad9d2c369c Rename tests following Olivier's recommendations 2016-11-03 14:53:54 +01:00
Andreas Fabri d78735364b Fixes after review by Monique and Olivier 2016-11-03 14:53:15 +01:00
Andreas Fabri f488b9baf9 Changes after Laurent's review 2016-11-03 14:53:15 +01:00
Andreas Fabri 842aad6e76 Fix which predicates can be done without division 2016-11-03 13:10:27 +01:00
Laurent Rineau 3302d997b6 Fix I/O of Weighted_point_3
@afabri You should have use a code similar to the one of
`CGAL::Sphere_3`, that would have avoided those errors.
2016-11-03 13:10:27 +01:00
Andreas Fabri fad0f195d5 Add operator!= for weighted points 2016-11-03 13:10:00 +01:00
Andreas Fabri 59cedfc7dd Fix Mesh_3 2016-11-03 13:08:31 +01:00
Andreas Fabri 44d0fa4d6f fix the 2D triangulations 2016-11-03 13:08:31 +01:00
Andreas Fabri dcf5f32dc0 Improve the doc 2016-11-03 13:07:50 +01:00
Andreas Fabri ea50fb811d Cleanup. The 2D and 3D triangulation testsuite pass 2016-11-03 13:07:50 +01:00
Andreas Fabri c2ee0ae9a8 Use Quotient<RT> as weight in the H2 power_tests 2016-11-03 13:07:50 +01:00
Andreas Fabri 9dde08c414 WIP 2016-11-03 13:07:50 +01:00
Andreas Fabri 9e94ee6178 Change the Power_test 2016-11-03 13:07:17 +01:00
Andreas Fabri 1375cd5c0a Rename Compute_critical_squared_radius_3 to Compute_power_distance_to_power_sphere_3 2016-11-03 13:07:17 +01:00
Andreas Fabri 514765a784 Documentation 2016-11-03 13:07:17 +01:00
Andreas Fabri 34eb29cac5 Documentation 2016-11-03 13:07:17 +01:00
Andreas Fabri 95027822f5 move predicates and constructions in Kernel packages 2016-11-03 13:07:17 +01:00
Andreas Fabri ea6e48e1e4 Don't use the internal traits adapter 2016-11-03 13:07:17 +01:00
Andreas Fabri aee3b86b1f cleanup 2016-11-03 13:06:42 +01:00
Andreas Fabri 8c72cf69aa Add operator< for weighted points. Note that it ignores the weight 2016-11-03 13:06:02 +01:00
Andreas Fabri 54ec8f9d92 the VC++ testsuite should pass now 2016-11-03 13:06:02 +01:00
Andreas Fabri af6c2e185e remove Compute_point_3 2016-11-03 13:06:02 +01:00
Andreas Fabri 0f3edb5cf5 Add the most impotant file 2016-11-03 13:06:02 +01:00
Andreas Fabri 9eca152dca No need for a Weighted_converter 2016-11-03 13:06:02 +01:00
Andreas Fabri cf1e513c83 cleanup 2016-11-03 13:04:43 +01:00
Andreas Fabri 6a8f77c5ff Added CGAL::Weighted_point_3<K> and the predicates and constructions of the Regular Traits to the kernel
- The Regular 3 testsuite passes
- only 3D
- not documented
2016-11-03 13:04:43 +01:00
Laurent Rineau 26c803b6af Merge pull request #1574 from afabri/Filtered_kernel_init_double_to_avoid_warning-GF
Kernel_23: Initialize numbers in operator>>(istream&, Point/Vector/..)
2016-10-24 11:46:54 +02:00
Laurent Rineau c6cf01c7f6 Merge pull request #1562 from afabri/Kernel_Compute_dihedral_angle-GF
Add doc of functor class and concept corresponding to dihedral_angle()
2016-10-20 09:48:05 +02:00
Laurent Rineau 9dbff15b59 Merge pull request #1592 from afabri/Kernel_23-set_failbit-GF
Kernel_23:  Set the failbit in operator>> for Kernel objects
2016-10-20 09:48:00 +02:00
Laurent Rineau 3e0ab881c1 Merge pull request #1584 from afabri/Installation-compute_dependencies-GF
Make Algebraic_kernel_d independent from CGAL/Arr_enum.h
2016-10-20 09:47:42 +02:00
Andreas Fabri 5eb7b4ed4f set the failbit 2016-10-18 13:35:54 +02:00
Andreas Fabri 554bd0fd26 Make Algebraic_kernel_d independent from CGAL/Arr_enum.h
Introduce Box_parameterization_2 in CGAL/enum.h
Add a typedef and constants in the Arrangement package to stay bw compatible
2016-10-17 11:56:43 +02:00
Laurent Rineau f2e7050364 Merge pull request #1428 from sloriot/AABB_tree-fix_Closest_point
Fix implementation of AABB_traits::Closest_point
2016-10-17 10:03:20 +02:00
Laurent Rineau 8dda7b3cd1 Merge pull request #1362 from sloriot/Kernel_23-add_compound_assignement_operator_for_vectors
Add compound assignment operators for 2D and 3D vector classes
2016-10-17 10:00:53 +02:00
Andreas Fabri 5ca5877104 Initialize numbers in operator>>(istream&, Point/Vector/..)
When we do not do that, and after the reading access a coordinate
some versions of g++ warn on -Wmaybe-uninitialized

The initialization costs nothing compared to the IO operation itself.
2016-10-13 09:14:17 +02:00
Andreas Fabri 423242be31 dihedral_angle() -> approximate_dihedral_angle() 2016-10-11 15:35:20 +02:00
Sébastien Loriot 5c02296eb9 move internal code 2016-10-11 11:31:19 +02:00
Laurent Rineau 2d90c88b6a Fix warnings
```
Kernel_23/include/CGAL/Kernel/nearest_point_segment_3.h:86:26: warning: typedef ‘FT’ locally defined but not used [-Wunused-local-typedefs]
   typedef typename K::FT FT;
                          ^~
Kernel_23/include/CGAL/Kernel/nearest_point_triangle_3.h:176:26: warning: typedef ‘FT’ locally defined but not used [-Wunused-local-typedefs]
   typedef typename K::FT FT;
                          ^~
```
2016-10-10 18:22:11 +02:00
Andreas Fabri c58582b5ec Add global function dihedral_angle() 2016-09-30 15:23:15 +02:00
Laurent Rineau 1aefb3b0f3 include <CGAL/config.h>, not <CGAL/basic.h> 2016-09-30 15:23:14 +02:00
Laurent Rineau 51f5697d3d Add missing #include 2016-09-30 15:23:14 +02:00
Andreas Fabri 371613ed33 Fix package NewKernel_d: include headers 2016-09-30 15:22:27 +02:00
Andreas Fabri c12f285ee4 Dispatch the files in Kernel_23, Cartesian, Homogeneous 2016-09-22 08:38:53 +02:00
Sébastien Loriot a44e21b8eb use Kernel functor instead of free functions 2016-09-01 16:36:01 +02:00
Sébastien Loriot c751ab4310 Add operators for segment and triangle types in Construct_projected_point_3
the original implementation comes from the AABB-tree package
2016-09-01 16:04:55 +02:00
Sébastien Loriot a412d93c34 do not add a nested typedef that make some free function calls ambiguous 2016-08-30 16:58:00 +02:00
Laurent Rineau 0c690014b7 Remove all usage of CGAL_LEDA_VERSION
Now, LEDA version >= 6.0 is required if `CGAL_USE_LEDA` is toggled.
2016-08-25 14:38:16 +02:00
Sébastien Loriot 6c447e37f2 add compound assignement operator for points 2016-08-25 10:45:10 +02:00
Sébastien Loriot 151d52bb84 add compound assignment operators for 2D and 3D vector classes 2016-08-24 15:16:18 +02:00
Andreas Fabri 5c1a2bd835 Add global function scalar_product(Vector_2,Vector_2) 2016-07-07 14:42:57 +02:00
Andreas Fabri 6273a0a247 Add global function scalar_product(Vector_3,Vector_3) 2016-07-07 14:30:10 +02:00
Sebastien Loriot ee093122bc Merge pull request #803 from afabri/Periodic_3-approx-GF
Periodic_3: Use static filters also for Epeck and make  it faster
2016-05-13 12:10:42 +02:00
Andreas Fabri 2613be3c1b Add specializations for Compare_distance_3 for points/segments 2016-04-13 12:35:00 +02:00
Sébastien Loriot 9c8cd5ad31 Make the boolean flag requirements optionals 2016-03-08 09:09:34 +01:00
Sébastien Loriot ca6c606b96 simply init to 0 to avoid confusion 2016-02-17 11:49:24 +01:00
Andreas Fabri 9b830970f0 default constructed Bbox_{2,3} is now initialized empty [+inf,-inf]^dim 2016-02-16 17:04:47 +01:00
Andreas Fabri 7657a5dda5 Use CGAL_USE to avoid g++6.0 warning 2016-01-20 11:57:51 +01:00
Andreas Fabri 4d324c704f Move Triangulation_structural_filtering_traits and specialize in Epic and Epec headers 2015-12-31 09:17:18 +01:00
Laurent Rineau 8d7ab98b4e Merge pull request #374 from sakrist/bbox_fixes
Silence for warnings

Conflicts:
	Kernel_23/include/CGAL/Bbox_2.h
2015-10-15 12:03:01 +02:00
Volodymyr Boichentsov c21f308d04 fix for Microsoft compiler 2015-10-13 11:15:24 +01:00
Guillaume Damiand e4342d50d2 Merge remote-tracking branch 'cgal-dev/CGAL_headers_only-gdamiand_cjamin' into CGAL_headers_only-gdamiand_cjamin 2015-10-01 09:48:54 +02:00
Guillaume Damiand cf1c0ea0ca Merge branch 'CGAL_headers_only-gdamiand_cjamin-OLD' into CGAL_headers_only-gdamiand_cjamin 2015-10-01 09:12:55 +02:00
Volodymyr Boichentsov 5b26f782ab silence for warnings 2015-09-29 09:35:25 +01:00
Jane Tournois feb76b7439 add missing namespaces for msvc2015
avoid ambiguity of calls
2015-08-11 15:48:55 +02:00
Philipp Möller 5f99e2da4e Make FT typedef public
This way we no longer trigger a hard error in strict C++03.
This is only a stop-gap solution. The actual issue is that the internal
namespace is full with unrelated components and does not fulfill its
purposee as an SFINAE barrier anymore.

Fixes #129
2015-08-06 12:17:17 +02:00
Andreas Fabri 61f61f96fd R -> R as VC2015 has a matching problem 2015-07-29 16:56:17 +02:00
Andreas Fabri 20c1b1a1f6 Merge branch 'Polygon_mesh_processing-GF-old' into Polygon_mesh_processing-GF
Conflicts:
	BGL/include/CGAL/boost/graph/Euler_operations.h
	BGL/include/CGAL/boost/graph/iterator.h
	Documentation/doc/Documentation/Doxyfile.in
	Documentation/doc/Documentation/dependencies
	Polyhedron/demo/Polyhedron/Polyhedron_demo_point_inside_polyhedron_plugin.cpp
	Polyhedron/demo/Polyhedron/Scene_polygon_soup_item.cpp
	Polyhedron/demo/Polyhedron/Selection_widget.ui
2015-07-01 13:52:44 +02:00
Laurent Rineau f5343911a6 fix the link to the developers manual, in the code 2015-06-19 11:15:55 +02:00
Guillaume Damiand 4bbe2a82e9 Add missing #include; add some case IO::PRETTY to avoid some warning. 2015-06-12 14:08:29 +02:00
Laurent Rineau 40c629a3b4 Merge pull request #90 from janetournois/Mesh_2-add_optimizers-GF
Add optimizer methods in Mesh_2

https://cgal.geometryfactory.com/CGAL/Members/wiki/Features/Small_Features/lloyd_optimize_mesh_2
2015-06-10 11:57:53 +02:00
Guillaume Damiand 8df781d3da Merge branch 'CGAL_headers_only-gdamiand_cjamin-old' into CGAL_headers_only-gdamiand_cjamin 2015-06-09 14:56:48 +02:00
Sébastien Loriot 7cabb0c508 Merge branch 'rebase/Mesh_2-add_optimizers-GF-old' into rebase/Mesh_2-add_optimizers-GF
Conflicts:
	GraphicsView/demo/Triangulation_2/Constrained_Delaunay_triangulation_2.cpp
	GraphicsView/demo/Triangulation_2/Constrained_Delaunay_triangulation_2.ui
	Triangulation_2/include/CGAL/Constrained_Delaunay_triangulation_2.h
2015-05-19 09:01:20 +02:00
Laurent Rineau a2ffb7d6f8 Merge pull request #80 from afabri/CGAL-array_as_property_map_example-GF
Add an example for an array as property map
2015-05-18 11:17:23 +02:00
Andreas Fabri b7f9849599 Replace CGAL::get() with CGAL::get_pointee_or_identity() and remove using get:: 2015-04-30 11:31:21 +02:00
Michael Hemmer 0cdc653281 add typedef for:
Exact_predicates_exact_constructions_kernel_with_kth_root
Exact_predicates_exact_constructions_kernel_with_root_of

add documentation
add testing
2015-03-26 13:46:23 +01:00
Sébastien Loriot 3346aed52b make Kernel_traits<T>::type::FT usable as return type of free function
in a free function that has such a return type, if there are several
overloads the return type of each should be instanciable.
This fix will make incorrect usages break later while enabling the use
in free function.
2015-03-17 16:20:38 +01:00
Guillaume Damiand 9c78897ba5 Merge branch 'CGAL_headers_only-gdamiand_cjamin-old' into CGAL_headers_only-gdamiand_cjamin 2015-03-16 14:00:43 +01:00
Sébastien Loriot 0218954ea6 Merge branch 'barycentric_coordinates_2-dmitry'
Tested in CGAL-4.6-Ic-99 and CGAL-4.6-Ic-100
  Approved by the release manager

Conflicts:
	Installation/changes.html
	Kernel_23/include/CGAL/internal/Projection_traits_3.h
2015-01-09 10:35:20 +01:00
Sébastien Loriot ce6342d629 Merge remote-tracking branch 'origin/Stream_support-fix_reading_double-GF'
improve reading double from streams on windows

Tested in CGAL-4.6-Ic-79
Approved by the release manager
2014-12-17 22:36:46 +01:00
Guillaume Damiand d96bdd9d4b According the modifs in master, variables TRANSLATION ROTATION SCALING REFLECTION IDENTITY are always const. 2014-12-17 14:59:19 +01:00
Sébastien Loriot 63406293e1 Merge branch 'Projection_traits-add_more_functors-sloriot' into barycentric_coordinates_2-dmitry
Conflicts:
	Documentation/biblio/cgal_manual.bib
	Documentation/doc/Documentation/Doxyfile.in
	Documentation/doc/Documentation/dependencies
2014-12-12 14:24:17 +01:00
Guillaume Damiand 1251bf8b58 Add const for TRANSLATION, ROTATION, SCALING, REFLECTION, IDENTITY 2014-12-04 21:41:38 +01:00
Laurent Rineau af90b1d6bc Restore the initial indentation incorrectly modified by this branch 2014-12-04 13:45:26 +01:00
Andreas Fabri 13928cd516 add missing 'i' and parenthesis 2014-11-27 08:51:46 +01:00
Andreas Fabri 2916850771 use iformat for reading doubles 2014-11-26 16:53:50 +01:00
Jane Tournois 0f9ff7e619 add a typedef for Ray_2 to have Mesh_2 tests compiling
this actually was a bug.
In the documentation, Projection_traits_xy_3 is said to implement the concept
DelaunayTriangulationTraits_2, that has the type Ray_2.
Now, it's the case
2014-11-18 12:20:33 +01:00
Guillaume Damiand 87968c0b6e Keep non const version for non header version (TRANSLATION, ROTATION, SCALING, REFLECTION, IDENTITY and primes) 2014-11-15 18:23:55 +01:00
Guillaume Damiand e8fe29c79c Ok for the compilation version header only (only for the treated files). 2014-10-31 17:09:48 +01:00
Guillaume Damiand 1182319f5d Redo all the modifs to remove all the cpp files from cgal.
First step where all the XXX.cpp are copied into XXX_impl.h files.
The macro CGAL_HEADER_ONLY allows to know if impl files need to be
included or not into header files; and allow to decide if functions are
in impl files are inline or not.

Next step: process with static variables for the header only version.
2014-10-30 16:05:22 +01:00
Sébastien Loriot 0e25bfb122 bug fix in projection traits, Angle_3 != Angle_2 when z is taken into account
(cherry picked from commit 6c4cd29fb1)

Conflicts:
	Kernel_23/include/CGAL/internal/Projection_traits_3.h
2014-10-09 10:36:04 +02:00
Sébastien Loriot 6c4cd29fb1 bug fix in projection traits, Angle_3 != Angle_2 when z is taken into account 2014-10-09 10:27:39 +02:00
Sébastien Loriot 6ae7d56bc7 fix dimension typo 2014-10-06 08:13:54 +02:00
Sébastien Loriot 61e40e74a1 add additional functors in the projection traits and a test file
* Compute_scalar_product_2
  * Collinear_2,
  * Collinear_are_ordered_along_line_2
  * Compute_squared_length_3
2014-10-03 08:58:33 +02:00
Sébastien Loriot 0b353bb85b Merge remote-tracking branch 'origin/CGAL-use_leda-GF'
Reintroduce the possibility to use CGAL without GMP
  (to use LEDA number types instead for example).
  The cmake option to set to switch off GMP when building
  the lib is CGAL_DISABLE_GMP.

Tested in CGAL-4.5-Ic-86
Approved by the release manager

ge is necessary,
2014-07-04 12:02:37 +02:00
Marc Glisse 3b3993aa19 Merge branch 'Kernel_d-rewrite-glisse-old' into Kernel_d-rewrite-glisse
Conflicts:
	Installation/changes.html
2014-06-23 17:13:29 +02:00
Sébastien Loriot 0230e979e2 Merge branch 'CGAL-use_leda-GF-OLD' into CGAL-use_leda-GF
Conflicts:
	Arrangement_on_surface_2/test/Arrangement_on_surface_2/construction_test_suite_generator.cpp
	Arrangement_on_surface_2/test/Arrangement_on_surface_2/test_construction.cpp
	Documentation/doc/Installation.txt
	Kernel_23/include/CGAL/Exact_predicates_exact_constructions_kernel.h
2014-06-18 22:50:06 +02:00
Laurent Rineau 6500bd907f Add Angle_3(Vector_3, Vector_3)
...by similarity with Angle_2.
2014-05-21 12:18:49 +02:00
Laurent Rineau 191b01b13b Add Angle_3()(Point_3, Point_3, Point_3, Point_3) 2014-05-21 11:04:59 +02:00
Marc Glisse 2a387ede81 Remove unused check_dimension_lt. 2014-05-07 19:37:53 +02:00
Marc Glisse cb4ca9d8c8 Don't use Dynamic_dimension_tag::value. 2014-05-07 19:28:33 +02:00
Marc Glisse 09f3db2025 define CGAL_CXX11. 2014-03-12 14:07:47 +01:00
Marc Glisse 8ddf8255d5 Merge branch 'Kernel_d-rewrite-glisse-old' into Kernel_d-rewrite-glisse
Hopefully the doc will be easier to build this way.
2013-11-23 12:34:18 +01:00
Sébastien Loriot c8495dea58 add missing return type for Intersect_2 when using intersection API v1 2013-09-25 18:06:06 +02:00
Marc Glisse 14d2073dd2 Move Dimension.h back to its place. 2013-07-22 15:44:50 +02:00
Sébastien Loriot cd5e88f11f Merge branch 'Kernel_23-Bbox_more_friendly-local'
Implements Features/Small_Features/More_friendly_bbox
Successfully tested in CGAL-4.3-Ic-74
Approved by the release manager
2013-06-28 15:05:31 +02:00
Sébastien Loriot 5635183db7 add global functions bbox_2 and bbox_3 in the Kernel
remove the function from the 2D function from the Polygon package
2013-05-31 19:44:21 +02:00
Sébastien Loriot 43d4a00db0 add operator+= in bbox classes 2013-05-31 19:09:31 +02:00
Sébastien Loriot c67ba90514 Merge branch 'Kernel-replace_object-pmoeller-old' into Kernel-replace_object-pmoeller
Conflicts:
	Circular_kernel_2/include/CGAL/Circular_kernel_2/Circular_arc_2.h
	Circular_kernel_2/include/CGAL/Circular_kernel_2/internal_functions_on_circle_2.h
	Installation/changes.html
	Kernel_d/doc/Kernel_d/CGAL/intersections_d.h
	Kernel_d/doc/Kernel_d/Concepts/Kernel--Center_of_sphere_d.h
	Kernel_d/doc/Kernel_d/Concepts/Kernel--Compare_lexicographically_d.h
	Kernel_d/doc/Kernel_d/Concepts/Kernel--Component_accessor_d.h
	Kernel_d/doc/Kernel_d/Concepts/Kernel--Compute_coordinate_d.h
	Kernel_d/doc/Kernel_d/Concepts/Kernel--Contained_in_affine_hull_d.h
	Kernel_d/doc/Kernel_d/Concepts/Kernel--Contained_in_linear_hull_d.h
	Kernel_d/doc/Kernel_d/Concepts/Kernel--Contained_in_simplex_d.h
	Kernel_d/doc/Kernel_d/Concepts/Kernel--Equal_d.h
	Kernel_d/doc/Kernel_d/Concepts/Kernel--Has_on_positive_side_d.h
	Kernel_d/doc/Kernel_d/Concepts/Kernel--Intersect_d.h
	Kernel_d/doc/Kernel_d/Concepts/Kernel--Less_coordinate_d.h
	Kernel_d/doc/Kernel_d/Concepts/Kernel--Less_lexicographically_d.h
	Kernel_d/doc/Kernel_d/Concepts/Kernel--Less_or_equal_lexicographically_d.h
	Kernel_d/doc/Kernel_d/Concepts/Kernel--Lift_to_paraboloid_d.h
	Kernel_d/doc/Kernel_d/Concepts/Kernel--Linear_base_d.h
	Kernel_d/doc/Kernel_d/Concepts/Kernel--Linear_rank_d.h
	Kernel_d/doc/Kernel_d/Concepts/Kernel--Linearly_independent_d.h
	Kernel_d/doc/Kernel_d/Concepts/Kernel--Midpoint_d.h
	Kernel_d/doc/Kernel_d/Concepts/Kernel--Orientation_d.h
	Kernel_d/doc/Kernel_d/Concepts/Kernel--Oriented_side_d.h
	Kernel_d/doc/Kernel_d/Concepts/Kernel--Orthogonal_vector_d.h
	Kernel_d/doc/Kernel_d/Concepts/Kernel--Point_dimension_d.h
	Kernel_d/doc/Kernel_d/Concepts/Kernel--Point_of_sphere_d.h
	Kernel_d/doc/Kernel_d/Concepts/Kernel--Point_to_vector_d.h
	Kernel_d/doc/Kernel_d/Concepts/Kernel--Project_along_d_axis_d.h
	Kernel_d/doc/Kernel_d/Concepts/Kernel--Side_of_bounded_sphere_d.h
	Kernel_d/doc/Kernel_d/Concepts/Kernel--Side_of_oriented_sphere_d.h
	Kernel_d/doc/Kernel_d/Concepts/Kernel--Squared_distance_d.h
	Kernel_d/doc/Kernel_d/Concepts/Kernel--Value_at_d.h
	Kernel_d/doc/Kernel_d/Concepts/Kernel--Vector_to_point_d.h
2013-05-23 13:13:08 +02:00
Sébastien Loriot 7baa997ce1 Merge branch 'Filtered_kernel-ring-glisse'
This branch adds an additional way to filter predicates that are only doing
operations using a ring number type. In case of failure, a RT is used rather
than an FT which speeds things up.

Successfully tested in CGAL-4.3Ic-37
2013-05-23 11:15:32 +02:00
Sébastien Loriot fff0776446 Merge branch 'Kernel_23-Iso_rectangle_2_Iso_cuboid_3_bbox_constructible'
Conflicts:
	Kernel_23/include/CGAL/Iso_cuboid_3.h

Tested in CGAL-4.3-Ic-1
2013-04-16 07:50:38 +02:00
Sébastien Loriot a50888d25d replace the recommanded boost way to have variadic variant by a macro
This is usually not something I like but the type generated by
the recommanded approach is an internal obfuscated type while
the macro produces a variant<A, B, C> type
2013-03-22 11:36:26 +01:00
Andreas Fabri 18dc806094 qualify compare with CGAL:: to avoid Koenig lookup 2013-03-19 08:31:32 +01:00
Sébastien Loriot 91943b0df1 remove result_type from Intersect_2 to avoid having it defined in derived class
also fix the compilation loop in Intersect_2::operator()
2013-03-15 19:00:00 +01:00
Andreas Fabri fc6fed9ee1 Add the use of LEDA as exact type in case we do not use GMP 2013-03-15 14:46:20 +01:00
Sébastien Loriot f97d6b8bd9 s/boost::result_of/cpp11::result_of/g 2013-03-14 10:38:13 +01:00
Sébastien Loriot d6905c61be Merge branch 'Kernel-replace_object-pmoeller-old' into Kernel-replace_object-pmoeller
Conflicts:
	AABB_tree/include/CGAL/AABB_tree.h
	Circular_kernel_2/include/CGAL/Circular_kernel_2/internal_functions_on_line_arc_2.h
	Intersections_3/include/CGAL/Intersections_3/intersection_3_1_impl.h
	Kernel_23/doc/Kernel_23/CGAL/intersections.h
	Kernel_23/doc/Kernel_23/Concepts/FunctionObjectConcepts.h
	STL_Extension/doc/STL_Extension/CGAL/iterator.h
2013-03-14 10:29:31 +01:00
Sébastien Loriot f0f34d45fa workaround to force the usage of the tr1 implementation of result_of from boost
see http://www.boost.org/doc/libs/1_52_0/libs/utility/utility.htm#result_of
2013-02-04 11:30:28 +01:00
Marc Glisse 5373cff1b3 Split some predicates into CGAL_Kernel_pred_RT. 2013-01-14 14:19:51 +01:00
Marc Glisse 571f370e28 Rename Exact_type_selector to Exact_field_selector. 2012-12-24 12:20:13 +01:00
Philipp Möller 0f34f2a89e Merge branch 'Maintenance-include-less-boost-pmoeller' 2012-12-21 09:44:18 +01:00
Sébastien Loriot e446188097 add constructor from bbox for iso-cuboid and iso-rectangle 2012-12-20 10:41:23 +01:00
Sébastien Loriot 82b2ebc865 apply the cpp0x namespace renaming in all files 2012-12-19 11:33:17 +01:00
Philipp Möller c5f3c7b4f4 Use angle-bracket includes 2012-12-14 18:19:57 +01:00
Philipp Möller 71ea8e6e22 Minimal boost includes
Replace type_traits.hpp and utility.hpp with the respective
fine-grained includes.
2012-12-14 18:13:59 +01:00
Philipp Möller 396e0f9262 Pretty indent for readability 2012-12-10 15:53:48 +01:00
Philipp Möller a214d62bd6 Integrate boost::variant with Lazy kernels interaction
This requires changing the way Lazy_construction_XXX wrappers are
selected and some code to unpack variants.
2012-12-06 17:27:23 +01:00
Philipp Möller 8415eb6484 Upgrade type mapper to handle variantS and optionalS
Add the necessary specializations of Type_mapper_impl to do deep
inspection of boost::variant and boost::optional.
2012-12-06 17:27:23 +01:00
Philipp Möller 215ef53720 Intersection_2 fixup 2012-12-05 12:13:10 +01:00
Philipp Möller d198458ca7 Merge branch 'origin-gsoc2011-boost_object-pmoeller' into Kernel-replace_object-pmoeller
Conflicts:
	.gitattributes
	AABB_tree/doc_tex/AABB_tree_ref/AABBGeomTraits.tex
	AABB_tree/doc_tex/AABB_tree_ref/AABBTraits.tex
	AABB_tree/doc_tex/AABB_tree_ref/AABB_traits.tex
	AABB_tree/include/CGAL/AABB_traits.h
	AABB_tree/include/CGAL/AABB_tree.h
	AABB_tree/test/AABB_tree/AABB_test_util.h
	Arrangement_on_surface_2/doc_tex/Arrangement_on_surface_2/arr_queries.tex
	Arrangement_on_surface_2/doc_tex/Arrangement_on_surface_2_ref/Arr_trapezoid_ric_point_location.tex
	Arrangement_on_surface_2/doc_tex/Arrangement_on_surface_2_ref/intro.tex
	Arrangement_on_surface_2/include/CGAL/Arr_batched_point_location.h
	Arrangement_on_surface_2/include/CGAL/Arr_point_location/Arr_lm_generator_base.h
	Arrangement_on_surface_2/include/CGAL/Arr_point_location/Arr_lm_random_generator.h
	Arrangement_on_surface_2/include/CGAL/Arr_point_location/Arr_trapezoid_ric_pl_impl.h
	Arrangement_on_surface_2/include/CGAL/Arr_point_location/Arr_walk_along_line_pl_impl.h
	Arrangement_on_surface_2/include/CGAL/Arr_trapezoid_ric_point_location.h
	Arrangement_on_surface_2/test/Arrangement_on_surface_2/point_location.cpp
	Circular_kernel_2/include/CGAL/Circular_kernel_2/internal_functions_on_line_arc_2.h
	Circular_kernel_3/include/CGAL/Circular_kernel_3/internal_functions_on_circular_arc_3.h
	Circular_kernel_3/include/CGAL/Circular_kernel_3/internal_functions_on_line_arc_3.h
	Circular_kernel_3/include/CGAL/Circular_kernel_3/internal_functions_on_sphere_3.h
	Filtered_kernel/include/CGAL/Lazy.h
	Filtered_kernel/include/CGAL/Lazy_kernel.h
	Intersections_2/include/CGAL/Triangle_2_Iso_rectangle_2_intersection.h
	Intersections_2/test/Intersections_2/test_intersections_2.cpp
	Intersections_3/test/Intersections_3/test_intersections_3.cpp
	Kernel_23/doc_tex/Kernel_23_ref/intersection.tex
	Kernel_23/include/CGAL/Kernel/Type_mapper.h
	Kernel_d/doc_tex/Kernel_d_ref/Kernel.tex
2012-12-04 17:57:53 +01:00
Sébastien Loriot 93e664f26a add missing requirement for ConvexHullTraits_2 2012-11-29 19:40:02 +01:00
Sébastien Loriot d3e29b0441 Normalize line endings 2012-11-29 19:23:40 +01:00
Laurent Rineau b4c3b341ba Make Projection_traits_3 compatible with Mesh_2
And add one test.
2012-10-16 14:46:46 +00:00
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
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