Commit Graph

44 Commits

Author SHA1 Message Date
Sébastien Loriot 940cd2bf33 bugfix: use the traits data member otherwise the shared_data cannot be used 2013-06-27 20:55:16 +02:00
Sébastien Loriot f6c016257d fix encoding problem in license header 2013-06-24 08:39:43 +02:00
Sébastien Loriot 650f9b4295 Merge branch 'AABB_tree-one_primitive_per_object-sloriot-old' into AABB_tree-one_primitive_per_object-sloriot
Conflicts:
	.gitattributes
	AABB_tree/doc_tex/AABB_tree_ref/AABBGeomTraits.tex
	AABB_tree/doc_tex/AABB_tree_ref/AABBTraits.tex
	AABB_tree/dont_submit
	AABB_tree/include/CGAL/AABB_traits.h
	AABB_tree/include/CGAL/AABB_tree.h
	AABB_tree/include/CGAL/internal/AABB_tree/AABB_traversal_traits.h
	AABB_tree/test/AABB_tree/AABB_test_util.h
	AABB_tree/test/AABB_tree/aabb_correctness_triangle_test.cpp
	AABB_tree/test/AABB_tree/aabb_distance_edge_test.cpp
	AABB_tree/test/AABB_tree/aabb_distance_triangle_hint_test.cpp
	AABB_tree/test/AABB_tree/aabb_distance_triangle_test.cpp
	AABB_tree/test/AABB_tree/aabb_intersection_triangle_test.cpp
	Boolean_set_operations_2/examples/Boolean_set_operations_2/bezier_traits_adapter2.cpp
	Installation/cmake/modules/CGAL_Common.cmake
	Installation/cmake/modules/CGAL_CreateSingleSourceCGALProgram.cmake
	Installation/cmake/modules/CGAL_Macros.cmake
	Installation/cmake/modules/CGAL_SetupBoost.cmake
	Installation/cmake/modules/CGAL_SetupDependencies.cmake
	Installation/cmake/modules/CGAL_SetupGMP.cmake
	Installation/cmake/modules/CGAL_SetupGMPXX.cmake
	Installation/cmake/modules/CGAL_SetupLEDA.cmake
	Installation/cmake/modules/CGAL_SetupMPFI.cmake
	Installation/cmake/modules/CGAL_SetupNTL.cmake
	Installation/cmake/modules/CGAL_SetupRS.cmake
	Installation/cmake/modules/CGAL_UseMPFI.cmake
	Installation/cmake/modules/CGAL_UseNTL.cmake
	Installation/cmake/modules/CGAL_UseRS.cmake
	Installation/cmake/modules/CGAL_VersionUtils.cmake
	Interval_skip_list/examples/Interval_skip_list/isl_terrain.pts
	Linear_cell_complex/examples/Linear_cell_complex/linear_cell_complex_3_triangulation.cpp
	Maintenance/svn_server/hooks/Mail/Sender/CType/Ext.pm
	Point_set_processing_3/include/CGAL/property_map.h
	Principal_component_analysis/include/CGAL/linear_least_squares_fitting_cuboids_3.h
	Principal_component_analysis/include/CGAL/linear_least_squares_fitting_segments_3.h
	Principal_component_analysis/include/CGAL/linear_least_squares_fitting_tetrahedra_3.h
	Principal_component_analysis/test/Principal_component_analysis/linear_least_squares_fitting_segments_3.cpp
	Principal_component_analysis/test/Principal_component_analysis/linear_least_squares_fitting_spheres_3.cpp
	Scripts/developer_scripts/list_package_files.rb
	Scripts/developer_scripts/mirror_all_packages.rb
	Scripts/developer_scripts/mirror_package.rb
	Scripts/developer_scripts/mirror_package_files.rb
	Scripts/developer_scripts/remove_package_files_from_build_tree.rb
	Surface_mesh_parameterization/examples/Surface_mesh_parameterization/CMakeLists.txt
	Surface_reconstruction_points_3/demo/Surface_reconstruction_points_3/PS_demo_normal_estimation_plugin.cpp
	Surface_reconstruction_points_3/doc_tex/Surface_reconstruction_points_3/contouring.tex
	Surface_reconstruction_points_3/doc_tex/Surface_reconstruction_points_3/output.tex
2013-06-18 11:50:30 +02:00
Sébastien Loriot 75ebdeaeeb update the replacement of Object_and_primitive_id ...
... to be a pair< variant<XXX>, Primitive_id > rather than
pair<optional<variant<XXX> >, Primitive_id >

The rational is that the optional around the variant here is not needed
since there is one around the pair.
2013-05-21 18:39:23 +02: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
Philipp Möller 8f19c3d595 Remove size_type from TraversalTraits.
There is no reason for TraversalTraits to know the size_type (or any
of the other typedefs) and removing it prevents an unnecessary
instantiation of AABB_tree and a funky include.
2012-10-23 14:56:26 +00:00
Sébastien Loriot 8f22de68ce concept bugfix
* CODE+DOC: Bbox_3 is a nested type in CGAL's Kernel; the code uses Bbox_3
* DOC: Add Compute_squared_distance_3 in AABBGeomTraits as it is needed by AABBTraits
* DOC: remove Splitting_direction from AABBTraits as it is not used
* DOC: Squared_distance in AABBTraits is only used between two points
  (I guess the confusion from the fact that nearest_point use the other
   version but without using the AABBTraits model).
* CODE+DOC add the function to construct Squared_distance functor in AABBTraits + AABB_traits
  and use it instead of AABBTraits::Compute_squared_distance_3 which was not in the concept
* DOC: remove from AABB_traits types Ray_3, Line_3 and Segment_3 that are not required by AABBTraits
* CODE: The code was using AABBTraits::Point which is not in the concept. Use Point_3 instead
* CODE: reorder typedefs in AABB_traits to match concept order
2012-08-28 12:21:57 +00:00
Marc Glisse a758751485 Remove / comment out unused local typedefs. Fix one place where FT was used instead of RT (homogeneous coordinates, probably never compiled). 2012-07-28 06:21:06 +00:00
Sébastien Loriot 21283eab97 remove requirements of having get_reference_point and get_datum in the traits 2012-06-04 14:14:11 +00:00
Sébastien Loriot 567e637484 document previous changes
add new concept for primitive with shared data
rename Extra_data -> Shared_data
2012-06-01 15:24:17 +00:00
Sébastien Loriot f57fab0c0a *variadic version of insert, cstr and rebuild of AABB_tree
*the traits now correctly handle the storage of primitive data
*update primitives
2012-05-15 08:46:42 +00:00
Sébastien Loriot dfc678846f update AABB_primitive to take into account the fact that the property maps
can be stored outside of the primitive
2012-05-14 16:10:00 +00:00
Sébastien Loriot 79affebe42 make the traversal and expand using the traits class
stored in the AABB_tree
2012-05-14 11:54:16 +00:00
Sébastien Loriot be1de01b22 *update AABB_primitive: the property maps must operate on Id!
*correct and complete implementation for HalfhedgeGraph models
2012-05-10 15:51:45 +00:00
Sébastien Loriot 31d6ebe9bf *add primitive types for HalfedgeGraph and FaceGraph (wip)
*clean up triangle and segment primitive
2012-05-09 17:11:09 +00:00
Sébastien Loriot 6efd7f7954 * remove a template parameter to primitive caching
* add a generic class that has two property map as template parameter to define a aabb_tree primitive
2012-05-09 07:14:49 +00:00
Sébastien Loriot ed6ac1f4fd rename Property maps template parameter
set primitive caching to false by default
2012-05-04 14:49:27 +00:00
Sébastien Loriot 58156fb1e9 merge from next 2012-05-04 12:24:50 +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
Laurent Rineau e0bc688832 Bug fix
<CGAL/internal/AABB_tree/nearest_point_segment_3.h> was doing stupid things
if there was a degenerate segment in the AABB tree.
2012-02-15 13:02:25 +00:00
Laurent Rineau 09d86739d0 Recode eol of two files: dos2unix, and add the eol-style=native svn property 2012-02-14 10:43:34 +00:00
Laurent Rineau 8f59fd9592 Turn QPL into LGPLv3+ 2012-01-13 16:33:35 +00:00
Philipp Möller 376b6309f4 Adapted AABB_tree to the new concept and documented the API changes 2011-11-15 17:13:09 +00:00
Philipp Möller bddbfcc8e4 Adapted AABB_tree for new intersections 2011-11-10 16:00:22 +00:00
Andreas Fabri 77b9fd79db Remove ETHZ copyright, as Camille's contribution during his postdoc was minor 2011-09-29 15:34:00 +00:00
Sébastien Loriot eed2074f7f Fix constness issues in AABB_tree
*remove mutable data members
  *accelerate_distance_queries is not const
  *clear_search_tree is not const
  *root_node() const returns a const Node*
  *add root_note() non-const version
  *update documentation of AABB_tree class. function constness was not documented
  *update changes.html
2011-09-07 09:55:59 +00:00
Sébastien Loriot 7a0b2326e1 add property_map as template parameter of segment and triangle primitive
and add a template parameter to enable or disable the caching of the
or object inside the primitive.

Pb to handle: in case the object is not cached, point() might be
expansive
2011-07-20 21:59:14 +00:00
Laurent Rineau 72f323a5dd The bbox() of AABB_tree can return a const reference. 2011-04-07 12:54:35 +00:00
Laurent Rineau 6f390c482e Add a missing #include of OpenGL headers. 2011-01-10 16:26:44 +00:00
Sébastien Loriot 12e8540bbe merge from candidate branch. 2011-01-10 10:46:16 +00:00
Sébastien Loriot 1daecf3943 move BBox vs {sphere,plane,triangle} do_intersect from AABB_tree to Intersections_3,
and update accordingly include directives. Update testsuite

remove unneed CMakeLists.txt from AABBtree testsuite

Remove Triangle_3_Plane_3 intersection from AABB_tree (I define it in Intersections_3 some days ago, thus a conflict)
2010-09-01 08:49:24 +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
Stéphane Tayeb afdd14bb62 Fix compilation on x86-64_Linux-2.6_llvm-clang-with-g++-4.4.1_F11: use fully qualified name for cross_product call. 2010-05-20 07:02:05 +00:00
Laurent Rineau a65e49133b Fix: in <CGAL/AABB_intersections.h>,
Kernel::Do_intersect_3()(Triangle_3, Bbox_3) was available
but not Kernel::Do_intersect_3()(Bbox_3, Triangle_3).
2010-05-05 14:54:49 +00:00
Sébastien Loriot 15557626cc remove not needed break instructions (avoid warning with g++ (Debian 4.3.4-6) 4.3.4) 2010-03-31 08:45:58 +00:00
Andreas Fabri 0758e61952 fix for the case that one of the triangle vertices is on the plane 2010-02-25 11:55:20 +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
Stéphane Tayeb 90288a058b Move do_intersect(Bbox,Bbox/Line/Ray/Seg) and intersection(Triangle,Line/Ray/Seg) to Intersections_3. 2009-12-18 15:13:30 +00:00
Stéphane Tayeb e476966856 Change License to LGPL. Fix Copyrights. 2009-12-18 14:35:34 +00:00
Stéphane Tayeb cab2982563 Implement Sylvain's comments:
+ add missing includes
  + avoid object copies
  + replace CGAL_kernel_assertion(false) by CGAL_error()
  + use is() function of CGAL::Object
  + improve style (remove spaces, white lines...)
2009-12-16 17:03:17 +00:00
Stéphane Tayeb ab503ac11f * Fix triangle_other test
* Fix Triangle_3_Ray_3_intersection.h header
2009-11-24 13:07:45 +00:00
Stéphane Tayeb 7ff50b95a0 * Rename test files which have to be moved to kernel
* Fix header protection names
2009-11-20 17:02:39 +00:00
Stéphane Tayeb 836d042180 Fix previous commit (thanks to compiler cache...). 2009-11-20 16:57:44 +00:00
Stéphane Tayeb 6550224744 Move and rename files (prepares integration into kernel). 2009-11-20 16:38:02 +00:00