Commit Graph

666 Commits

Author SHA1 Message Date
Giles Bathgate 0dfa8a4941 Avoid double hash lookup 2022-04-03 11:41:07 +01:00
Laurent Rineau 0d9f80e557 Merge pull request #6435 from GilesBathgate/Nef_3-cleanup_snc_list-GilesBathgate
Nef_3: Cleanup SNC_list
2022-03-31 16:58:05 +02:00
Sébastien Loriot 4c4aeb74f4 Merge pull request #6433 from GilesBathgate/Nef_3-cleanup_nef_list_of_triangles-GilesBathgate
Nef_3: Cleanup Halffacet_triangle_handle/Halffacet_triangle_const_handle
2022-03-29 17:47:51 +02:00
Sébastien Loriot 6bc0dc90a7 Merge pull request #6431 from afabri/Nef_3-Avoid_filter_failures-GF
Nef_3:  Avoid Filter Failures
2022-03-29 17:47:37 +02:00
Sébastien Loriot 2067913940 Merge pull request #6424 from GilesBathgate/Nef_3-cleanup_snc_intersection-GilesBathgate
Nef_3: Cleanup and performance improvements SNC_intersection
2022-03-29 17:46:56 +02:00
Sébastien Loriot 5e894656f5 Merge pull request #6422 from afabri/Nef_3-avoid_needless_tests-GF
Nef_3: Avoid needless tests
2022-03-29 17:46:42 +02:00
Sébastien Loriot 3e959d7ca6 Merge pull request #6421 from afabri/Nef_3-has_smaller_distance_to_point-GF
Nef_3: Use has_smaller_distance_to_point()
2022-03-29 17:46:16 +02:00
Sébastien Loriot 99f0598f3e Merge pull request #6378 from GilesBathgate/Nef_3-performance_sphere_circle-GilesBathgate
Nef_3: Sphere circle constructors.
2022-03-29 17:45:52 +02:00
Sébastien Loriot b34bc3f8f7 Merge pull request #6306 from GilesBathgate/Hash_map-performance_chained_map_reserve-GilesBathgate
Reserve method for Chained Map / Unique Hash Map
2022-03-29 17:45:37 +02:00
Andreas Fabri 5dd90d21fe Fix the expression 2022-03-23 16:39:23 +01:00
Andreas Fabri 80b0ec3960 Don't use a variable for calling a static method (VC2015 warned) 2022-03-23 10:47:24 +01:00
Andreas Fabri 45365e473c Don't use a variable for calling a static method (VC2015 warned) 2022-03-23 10:04:37 +01:00
Andreas Fabri 1c4b191c71 Remove no longer needed typedef (led to a W in the testsuite) 2022-03-23 09:23:25 +01:00
Giles Bathgate dc18d7abb2 Restore other predicates in ray_segment intersections 2022-03-22 21:00:57 +00:00
Giles Bathgate c8d0409297 Using planes is faster for segment intersections 2022-03-22 19:46:25 +00:00
Giles Bathgate 50ec2fadf8 Call reserve before adding infinibox vertices 2022-03-22 18:43:19 +00:00
Giles Bathgate 13592cc496 Using planes is faster for ray intersections 2022-03-22 07:37:04 +00:00
Giles Bathgate 62da2dab06 Coplanar check is a worthwhile performance tweak 2022-03-21 20:47:46 +00:00
Andreas Fabri cc3125068f Remove redundant test 2022-03-21 18:08:35 +01:00
Andreas Fabri 1a4bf304ae Switch to an overload as suggested by Giles 2022-03-21 09:19:50 +01:00
Giles Bathgate e451af9f50 As a consequence of previous changes check_has_on is never called with false 2022-03-20 10:44:17 +00:00
Giles Bathgate 0124fc9e6d Call appropriate function with different name 2022-03-20 10:44:17 +00:00
Giles Bathgate 7411d76e2f Inline function as its only called once 2022-03-20 10:44:17 +00:00
Giles Bathgate c4fc25ad82 Use simpler and faster tests for internal segment intersection 2022-03-20 10:44:17 +00:00
Giles Bathgate fdc647b510 Standardise parameter wrapping 2022-03-20 10:44:16 +00:00
Giles Bathgate 99e8bece4c Standardise check_has_on parameter name 2022-03-20 10:44:16 +00:00
Giles Bathgate 42aa3c3c87 Remove unused code, make methods static 2022-03-20 10:44:16 +00:00
Giles Bathgate 3b8a9dc9c1 Merge remote-tracking branch 'afabri/Nef_3-avoid_needless_tests-GF' into Nef_3-cleanup_snc_intersection-GilesBathgate 2022-03-20 10:35:12 +00:00
Giles Bathgate e5f47961e7 Remove commented out code 2022-03-19 12:43:38 +00:00
Giles Bathgate 415bf5ab5e Remove unused code in SNC_list 2022-03-19 12:40:28 +00:00
Giles Bathgate 252aab710f Remove Halffacet_triangle_handle/Halffacet_triangle_const_handle 2022-03-19 12:16:25 +00:00
Giles Bathgate 4390be94b3 Remove code defined in CGAL_NEF_LIST_OF_TRIANGLES 2022-03-19 12:10:22 +00:00
Giles Bathgate 29191ffe1a Add Halffacet_triangle_const_handle to fix compilation issue 2022-03-19 11:13:05 +00:00
Giles Bathgate 035745559a Remove call to reserve in SNC_simplify that triggers assertion 2022-03-18 18:25:40 +00:00
Andreas Fabri 211cb75dd3 Nef_3: Avoid geometric test 2022-03-18 15:42:17 +01:00
Andreas Fabri f09f38c3f2 Nef_3: Avoid geometric test 2022-03-18 15:39:41 +01:00
Giles Bathgate 9692f2b97a Remove redundant Unique_hash_map in SNC_external_structure 2022-03-17 21:29:56 +00:00
Giles Bathgate 16bed97ec5 Remove sizing of hash tables in copy constructors, size just grows 2022-03-17 20:21:12 +00:00
Andreas Fabri 2edb6dcf32 are_strictly_ordered_along_line() does the job 2022-03-16 22:27:59 +01:00
Andreas Fabri ebd5e00ba8 Nef_3: Avoid needless tests 2022-03-16 15:40:41 +01:00
Andreas Fabri a92e6e6039 Nef_3: Use has_smaller_distance_to_point() 2022-03-16 15:00:02 +01:00
Giles Bathgate 2d4a857c81 Make boundary_entry_objects_ private and use accessor method 2022-03-12 12:06:17 +00:00
Giles Bathgate f1a3f68fbb Ensure reference address is the same as member address 2022-03-12 12:00:42 +00:00
Giles Bathgate 0a8ef644c2 Init hashtable size in SNC_FM_decorator 2022-03-11 22:48:44 +00:00
Giles Bathgate 933604b1e6 Init hashtable size in SNC_structure 2022-03-11 21:27:32 +00:00
Giles Bathgate ded44f2329 Init hashtable size in SNC_external_structure 2022-03-10 18:30:55 +00:00
Giles Bathgate aa9e7cf34d Reserve hashtable size in polygon_mesh_to_nef_3 2022-03-10 18:24:07 +00:00
Giles Bathgate 7aa98b48bc Init hashtable size in SNC_simplify 2022-03-10 18:24:07 +00:00
Giles Bathgate 7d76d31943 Init hashtable size in Binary_operation.h 2022-03-10 18:24:07 +00:00
Giles Bathgate 1009acb9cd Reserve hashtable size in SNC_simplify 2022-03-10 18:24:07 +00:00
Giles Bathgate 263c168d9d Reserve hashtable size in K3_tree/SNC_k3_tree_traits 2022-03-10 18:24:07 +00:00
Giles Bathgate 3004350b7a Add const to is_boundary_object and is_sm_boundary_object 2022-03-10 18:24:07 +00:00
Guillaume Damiand 2df2398108 trailing... 2022-03-07 17:37:54 +01:00
Guillaume Damiand dd653cd396 Update nef_3 draw to deal with faces with holes. 2022-03-07 17:32:26 +01:00
Giles Bathgate a0d5fae2bd Add Origin based constructor to sphere_point and avoid conditional constructor 2022-03-03 18:55:37 +00:00
Laurent Rineau 258d704a90 Merge pull request #6209 from sloriot/PMP-std_instead_of_boost
Use features available in std instead of boost
2022-02-24 19:57:17 +01:00
Laurent Rineau 43b49409d1 Merge pull request #6288 from GilesBathgate/Nef_3-constructor_single_initialise-GilesBathgate
Simplify initialisation in Nef_polyhedron_3
2022-02-18 11:43:45 +01:00
Sébastien Loriot 4ffc949199 replace boost::unordered by std::unordered
but in T3, Mesh_3, TDS_3, P3[TM]3
2022-02-03 19:11:12 +01:00
Andreas Fabri 440a8dfb7b Fix file name 2022-02-03 08:41:04 +00:00
Andreas Fabri 735752bec9 Do the remaining changes after Laurent's check 2022-02-03 08:02:11 +00:00
Giles Bathgate 9346d14c55 Simplify initialisation in Nef_polyhedron_3 2022-01-31 18:33:28 +00:00
Laurent Rineau fa4c12cb22 Merge pull request #5772 from GilesBathgate/Nef_3-performance_k3_tree_vertices-GilesBathgate
18% performance boost in Nef_3 K3_tree.
2022-01-12 12:24:34 +01:00
Andreas Fabri 7b8c3ab4c3 Remove the reference as the Side_of_plane constructor is called with a temporary 2021-12-09 18:11:56 +00:00
Laurent Rineau 28cdf9b08f Merge pull request #6154 from afabri/Nef_3-fix_comparison-GF
Nef_3: Fix broken greater-than
2021-12-03 15:27:31 +01:00
Andreas Fabri 294715ff53 Fix broken greater-than 2021-11-30 16:16:23 +00:00
Giles Bathgate 35c24ccb7e Use renamed Non_zero_coordinate_index_3 2021-11-19 07:56:16 +00:00
Giles Bathgate ea3f55b208 Fix using depth instead of coord for Side_of_plane 2021-11-19 07:50:04 +00:00
Giles Bathgate 264bc155e5 Use original method to construct homogeneous splitting plane 2021-11-19 07:50:03 +00:00
Giles Bathgate ec3257f42b Use cartesian overload for construct_splitting_plane 2021-11-19 07:50:01 +00:00
Giles Bathgate 38a23a84a7 Remove redundant comparison functors 2021-11-19 07:50:00 +00:00
Andreas Fabri f856f05861 Plane constructor needs as 4th parameter a RT not a FT 2021-11-19 07:49:59 +00:00
Giles Bathgate 61e8c5a069 Move non_effective_splits to member variable 2021-11-19 07:49:58 +00:00
Giles Bathgate cbd3d6e514 Reuse get_child_by_side function 2021-11-19 07:49:57 +00:00
Giles Bathgate e615c9e885 Find a splitting plane between median and its predecessor 2021-11-19 07:49:56 +00:00
Giles Bathgate da8eb6e6cd Build K3_tree from seperate vertex, edge, and facet lists 2021-11-19 07:49:55 +00:00
Laurent Rineau df777080ff Merge pull request #6102 from afabri/Kernel_23-Non_zero_dimension_3-GF
Kernel_23: Add NonZeroDimension_3
2021-11-18 14:02:07 +01:00
Guillaume Damiand 2bbcabe71b The size of argv array is now 2, ending with nullptr. 2021-11-11 17:23:37 +01:00
Guillaume Damiand ee11c858b5 The size of argv array is changed to 1 in all basic viewers. 2021-11-10 09:59:48 +01:00
Andreas Fabri 7cb53ab8ef Change to NonZeroCoordinateIndex 2021-11-03 17:30:26 +01:00
Mael Rouxel-Labbé 521c72d57e Fix typos 2021-10-04 13:34:07 +02:00
Laurent Rineau b85aaabdd8 Merge pull request #5190 from GilesBathgate/fix-uninitialized-member-k3tree
Fix uninitialized member in K3_tree.h
2021-09-29 11:47:01 +02:00
Laurent Rineau c552735651 Merge pull request #5203 from GilesBathgate/fix-uninitialized-members-snc-io-parser
Fix uninitialized member in SNC_io_parser.h
2021-09-29 11:46:49 +02:00
Andreas Fabri e0e48745fe fprintf -> std::cerr 2021-09-23 17:00:10 +02:00
Sébastien Loriot 5945e48a3e restore sub-directories accidently removed in 98e471849b 2021-09-17 08:14:06 +02:00
Sébastien Loriot 4454c5b3ed Merge remote-tracking branch 'cgal/master' into T2-Document_projection_traits_3-maxGimeno 2021-08-30 12:25:51 +02:00
Sébastien Loriot 98e471849b moving files from internal to PKG/internal 2021-08-26 11:33:39 +02:00
Maxime Gimeno f7df517f57 Merge remote-tracking branch 'cgal/master' into T2-Document_projection_traits_3-maxGimeno 2021-08-09 09:14:23 +02:00
Sébastien Loriot a99916f6c9 Merge pull request #5806 from GilesBathgate/Nef_3-dead_code_k3_tree_snc_point_locator-GilesBathgate
Remove dead code in SNC_point_locator and K3_tree
2021-07-19 08:04:47 +02:00
Maxime Gimeno 83b69b5a98 Merge remote-tracking branch 'cgal/master' into T2-Document_projection_traits_3-maxGimeno 2021-07-08 11:33:42 +02:00
Giles Bathgate 8b3fab7a91 Remove code related to CGAL_NEF3_POINT_LOCATOR_NAIVE 2021-06-29 17:51:19 +01:00
Giles Bathgate abb11ad1e4 Remove update/bytes/leafs functions, and Objects_around_box 2021-06-27 09:44:53 +01:00
Sébastien Loriot 142fac63b5 Merge pull request #5699 from GilesBathgate/Nef_3-snc_decorator_deduplication-GilesBathgate
Remove duplicate code in SNC_const_decorator/SNC_decorator
2021-06-25 09:47:59 +02:00
Sebastien Loriot a7cad1caf6
Merge pull request #5740 from GilesBathgate/Nef_3-remove_triangulate_facets-GilesBathgate
Remove CGAL_NEF3_TRIANGULATE_FACETS
2021-06-25 09:31:00 +02:00
Sebastien Loriot 5de3bdb9f3
Merge pull request #5714 from GilesBathgate/Nef_3-performance_k3_rc_hashmap-GilesBathgate
Remove the OnSideMapRC when not needed
2021-06-25 09:29:31 +02:00
Sebastien Loriot 11bc0e4e7e
Merge pull request #5702 from GilesBathgate/Nef_3-disable_nef_trace-GilesBathgate
Replace CGAL_NEF_DEBUG with CGAL_USE_TRACE
2021-06-25 09:29:03 +02:00
Sebastien Loriot 0d3b8d448d
Merge pull request #5696 from GilesBathgate/Nef_3-dead_code_snc_decorator-GilesBathgate
Remove dead code in SNC_decorator/SNC_const_decorator
2021-06-25 09:28:17 +02:00
Giles Bathgate ef39bfea74 Fix indentation in SNC_decorator 2021-06-17 11:03:49 +01:00
Giles Bathgate f30eeedda4 Remove CGAL_NEF3_TRIANGULATE_FACETS code 2021-06-17 10:59:25 +01:00
Giles Bathgate 5e9f9d313f Add conditional compilation for code used by CGAL_NEF3_TRIANGULATE_FACETS 2021-06-17 10:47:26 +01:00
Giles Bathgate 77a03f2084 Remove un-needed template parameters 2021-06-17 09:28:59 +01:00
Laurent Rineau 6a9061668c Merge pull request #5756 from albert-github/feature/bug_redirects
Correction of hyperlinks
2021-06-16 15:06:08 +02:00
Giles Bathgate 458ecf1ac1 Remove CGAL_NEF3_FACET_WITH_BOX code 2021-06-08 17:32:12 +01:00
albert-github 2a54687e77 Correction of hyperlinks
The link checker gave a number of redirects and incorrect links.
- the redirects have been solved ass far as possible
- the incorrect links have been checked and corrected where possible, others  have been reported through issues;
2021-06-04 13:52:14 +02:00
Maxime Gimeno 2d5f91f763 Merge remote-tracking branch 'cgal/master' into T2-Document_projection_traits_3-maxGimeno 2021-05-27 09:06:59 +02:00
Laurent Rineau e3d5fccf5b Merge pull request #5684 from GilesBathgate/Nef_3-performance_snc_constructor-GilesBathgate
Nef_3 performance - has_on_after_intersection in SNC_constructor
2021-05-19 17:24:08 +02:00
Laurent Rineau 59a0da4f13 Merge pull request #5692 from maxGimeno/CGAL_cpp11_atomic_and_threads-maxGimeno
CGAL:: Use std atomic and threads

# Conflicts:
#	Arrangement_on_surface_2/include/CGAL/Arr_counting_traits_2.h
2021-05-19 17:23:53 +02:00
Laurent Rineau 3992ab34f3 Merge pull request #5712 from GilesBathgate/Nef_3-bounded_side_projection-GilesBathgate
Remove redundant code in side_of_plane_3
2021-05-19 17:23:19 +02:00
Laurent Rineau 4a2f016f6a Merge pull request #5617 from afabri/Nef_3-translation-GF
Nef_3: Add Aff_transformation_3::is_translation()
2021-05-18 18:14:17 +02:00
Laurent Rineau 2c4a5db3ce Merge pull request #5631 from GilesBathgate/STL_ext-fix_uncaught_exceptions_cleanup-GilesBathgate
Fix uncaught exceptions cleanup
2021-05-18 18:14:14 +02:00
Maxime Gimeno 3795c5236a Changes after review 2021-05-18 10:16:24 +02:00
Giles Bathgate 476f2da967 Remove unused SNC_decorator 2021-05-16 20:00:08 +01:00
Giles Bathgate 5ffbd68921 Remove the OnSideMapRC when not needed 2021-05-15 15:59:06 +01:00
Giles Bathgate a91c0ed052 Replace implementation with traits 2021-05-14 18:17:01 +01:00
Giles Bathgate f3f6bebe60 Replace CGAL_NEF_DEBUG with CGAL_USE_TRACE 2021-05-12 07:37:49 +01:00
Giles Bathgate 9da2a72dbf Remove code duplication of get_visible_facet 2021-05-11 08:55:01 +01:00
Giles Bathgate 01f812e48e Remove other unused get_visible_facet methods 2021-05-11 08:20:12 +01:00
Giles Bathgate 3097e8e39a Remove adjacent_sface from SNC_const_decorator 2021-05-11 08:05:07 +01:00
Giles Bathgate 3ae3783491 Introduce base class members with using 2021-05-10 20:42:08 +01:00
Giles Bathgate 77054d4f2a Remove duplicate code in SNC_const_decorator/SNC_decorator 2021-05-10 18:26:29 +01:00
Giles Bathgate 4a29e91725 Remove commented out code from SNC_const_decorator 2021-05-09 22:24:49 +01:00
Giles Bathgate 91400c3fc1 Remove dead code in SNC_decorator 2021-05-09 10:48:02 +01:00
Maxime Gimeno 3e03d50b8a replace usages of CGAL::cpp11::atomic and thread by std:: calls 2021-05-07 11:10:30 +02:00
Maxime Gimeno e9b7595fff Deprecate CGAL headers for threads, atomic and result_of, and move their content to config.h as fallback 2021-05-07 11:09:24 +02:00
Giles Bathgate 43115e4345 Use has_on_after_intersection in SNC_constructor 2021-05-05 21:57:47 +01:00
Sébastien Loriot 4e519a3c7a move documented IO functions in IO namespace 2021-05-05 13:15:37 +02:00
Sébastien Loriot fb6f703b55 IO namespace for files in IO directories 2021-05-04 14:36:06 +02:00
Giles Bathgate 5ecd85248a Fix capitalisation of macro name. 2021-04-28 21:03:45 +01:00
Giles Bathgate 0ef8127c71 The CGAL_NOEXCEPT macro is no longer needed 2021-04-28 21:03:00 +01:00
Giles Bathgate 890211ef87 Fix uninitialized member in K3_tree.h 2021-04-28 20:51:09 +01:00
Laurent Rineau 6ecaa770bb Merge pull request #5595 from afabri/Nef_3-Use_CC_for_Kd_tree-GF
Nef_3: Improve K3_tree
2021-04-28 15:24:13 +02:00
Andreas Fabri c238e9dab5 Merge remote-tracking branch 'cgal/master' into Nef_3-translation-GF 2021-04-27 15:23:56 +01:00
Andreas Fabri e6a55d8462 Fix #5613 as discussed in PR #5635 2021-04-23 11:55:16 +01:00
Andreas Fabri b79b43c793 Two more const 2021-04-23 08:38:09 +01:00
Andreas Fabri 10e7b1a320 Address warning: type qualifiers ignored on function return type [-Wignored-qualifiers] 2021-04-22 08:58:33 +01:00
Andreas Fabri dd0d629635 Use Get_approx instead of approx() 2021-04-15 08:28:40 +01:00
Andreas Fabri ac9b5b2fbd Add Aff_transformation_3::is_translation() which checks the rep 2021-04-13 19:38:28 +01:00
Andreas Fabri 9c07709cf6 Do not first generate a Lazy_exact_nt to then obtain the interval, but use the approximate point (in case of Epeck) 2021-04-13 15:47:54 +01:00
Andreas Fabri 6a2c040285 If the segments have a common endpoint they do not intersect internally 2021-04-12 11:52:07 +01:00
Andreas Fabri 46a905ad75 Use nullptr 2021-04-12 09:21:58 +01:00
Andreas Fabri b5e76c4203 Use nullptr 2021-04-12 09:13:48 +01:00
Andreas Fabri 0246431abd Replace Compact_container with boost::container::deque 2021-04-12 09:08:36 +01:00
Andreas Fabri c2a71f23d7 Nef_3: Improve K3_tree 2021-04-08 16:08:51 +01:00
Andreas Fabri 50389862bf Remove unused local variable (why did no compiler warn?) 2021-04-07 12:01:02 +01:00
Andreas Fabri 6192307d78 This mainly avoids a filter failure 2021-04-06 14:46:45 +01:00
Laurent Rineau 80e0ffc750 Merge pull request #5144 from GilesBathgate/id-support-handler-hash-performance
Proposed fix for unnecessary allocations in ID_support_handler. Issue #5143
2021-04-06 15:13:18 +02:00
Laurent Rineau 31b817c419 Merge pull request #5233 from GilesBathgate/fix-uncaught-exceptions
Fix uncaught exceptions
2021-04-06 15:13:16 +02:00
Laurent Rineau de704d8bb9 Merge pull request #5522 from afabri/Nef_3-accelerate_do_intersect_internally-GF
Nef_3: Do not test has_on for a point where we know that it will be true
2021-04-06 15:13:07 +02:00
Andreas Fabri 5213cd3bfe replace include 2021-04-01 18:11:42 +01:00
Andreas Fabri b4e98df117 cleanup 2021-03-25 11:54:29 +01:00
Andreas Fabri e1a9cfc6ba Also break the outer loop 2021-03-24 16:10:06 +01:00