Commit Graph

542 Commits

Author SHA1 Message Date
Sébastien Loriot cdaabd3d72 static filter for do_intersect bbox/triangle 2021-06-16 13:56:08 +02:00
Sébastien Loriot 5f2c6fdbdf refactor the code prior to plug static filters 2021-06-16 11:27:21 +02:00
Sébastien Loriot 93476f0b43 use sign 2021-06-15 15:24:00 +02:00
Sébastien Loriot 65d630536b factorize 2021-06-15 15:24:00 +02:00
Sébastien Loriot 46b112dd54 split the function to avoid the switch 2021-06-15 15:24:00 +02:00
Laurent Rineau 38812be5eb Merge pull request #5680 from afabri/Intersections-fix_RT-GF
Intersections_3: Fix do_intersect(sphere/triangle) if FT has no division
2021-05-27 19:12:35 +02:00
Andreas Fabri 4f7703fd94 trailing whitespace 2021-05-06 08:07:39 +02:00
Andreas Fabri f45e843cd0 trailing whitespace 2021-05-06 08:03:53 +02:00
Andreas Fabri b7b2e19555 Add the sphere ray tests 2021-05-05 17:39:59 +02:00
Andreas Fabri 10e1b51ed3 Add &s 2021-05-05 17:24:37 +02:00
Andreas Fabri 28a6a91453 Intersections_3: Make do_intersect(sphere/triangle) work if FT is division free 2021-05-05 16:54:05 +02:00
Sébastien Loriot 4e519a3c7a move documented IO functions in IO namespace 2021-05-05 13:15:37 +02:00
Laurent Rineau c091c7f86e Merge pull request #5532 from lrineau/Kernel_23-Do_interesect__without_division-GF
Remove operator/ from CGAL::Mpzf and implement Do_intersect_3 with RT only (without division)
2021-04-28 15:24:15 +02:00
Andreas Fabri 8ede8fc7ae Remove unused parameter 2021-04-27 14:16:55 +01:00
Andreas Fabri 9473da27f8 Address warning: unused parameter 'k' [-Wunused-parameter] 2021-04-22 09:23:48 +01:00
Mael 8226666398
Merge branch 'master' into Triangulation_on_sphere_2-GF 2021-04-17 11:22:30 +02:00
Sebastien Loriot b7323389c7
Merge pull request #5622 from maxGimeno/CMake-Update_versions_in_scripts-maxGimeno
Update maximum cmake versions
2021-04-17 10:58:14 +02:00
Maxime Gimeno c49152359c update max version of cmake and announce the new minimal in CHANGE.md 2021-04-15 15:08:54 +02:00
Andreas Fabri a192a45f5b Fix warning: using the result of an assignment as a condition without parentheses [-Wparentheses] 2021-04-07 12:09:16 +01:00
Andreas Fabri 76719b903f Introduce the macro CGAL_NO_MPZF_DIVISION_OPERATOR 2021-04-07 12:06:26 +01:00
Maxime Gimeno 17602e589e Merge remote-tracking branch 'cgal/master' into CGAL-clang_tidy__nullptr_on_Mesh_2-GF 2021-04-07 09:17:51 +02:00
Laurent Rineau 1b54449dc5 Merge pull request #4878 from danston/Kernels-decltypes-danston
Improve decltype/result_of/invoke_result
2021-04-06 15:13:21 +02:00
Laurent Rineau 58ddf16295 Merge pull request #5507 from afabri/PMP-vtune_isotropic_remeshing-GF
PMP:  Accelerate isotropic remeshing
2021-04-06 15:13:11 +02:00
Andreas Fabri abe6aa1eca remove unused typedefs 2021-04-01 19:48:44 +01:00
Andreas Fabri 6ac2ee54db Remove a test file as it adds nothing new 2021-03-30 14:39:27 +01:00
Andreas Fabri 7ebdd07a4c Add <RT> to rank as expression templates don't match 2021-03-30 14:28:55 +01:00
Andreas Fabri dbfb7157bb Rename compare() to compare_quotients() 2021-03-30 10:14:02 +01:00
Andreas Fabri c6b2038353 Rename test 2021-03-29 17:40:46 +01:00
Andreas Fabri 99a52959c3 Add the do_intersect for 3 planes using the rank() written by Sebastien 2021-03-29 17:15:53 +01:00
Andreas Fabri 23f1badd85 Use is_zero() instead of == FT(0) 2021-03-22 09:03:50 +01:00
Andreas Fabri 8eea3e70bb typename 2021-03-21 18:17:13 +01:00
Mael Rouxel-Labbé 717fedc588 Use better variable names 2021-03-19 17:28:04 +01:00
Andreas Fabri 75a2541d12 Add Plane/Ray 2021-03-18 14:37:34 +01:00
Andreas Fabri 2e0f01be94 WIP: make several do_intersect division free and several no longer compute the intersection. Plane/Plane/Plane as well as Plane/Ray are still wrong 2021-03-18 14:18:11 +01:00
Dmitry Anisimov 00c185b028
Merge branch 'master' into Kernels-decltypes-danston 2021-03-12 12:06:20 +01:00
Laurent Rineau dcf9dfd0fe Merge pull request #5435 from afabri/Intersect_3-fix_isocuboid_plane-GF
Intersect_3: Fix Iso_cuboid_3/Plane_3 and Tetrahedon_/Plane_3 intersection using PMP::clip internal function

# Conflicts:
#	Polygon_mesh_processing/include/CGAL/Polygon_mesh_processing/clip.h
2021-03-03 17:30:04 +01:00
Andreas Fabri 7785a9c2b1 Use certainly() 2021-03-03 15:25:30 +00:00
Andreas Fabri 2ac977b7c5 Early exit in do_intersect of Sphere/Bbox_3 2021-03-03 13:21:24 +00:00
Andreas Fabri d5a5b20ce8 Make it clear that the functor is not part of the Kernel concept 2021-02-19 20:23:20 +00:00
Maxime Gimeno d5811d0a41 clang-tidy on tests 2021-02-18 15:15:12 +01:00
Andreas Fabri 8a38a75fcb Restore issue to the initial bug report 2021-02-12 14:06:20 +00:00
Andreas Fabri 607ced4a54 remove trailing whitespace 2021-02-12 10:36:53 +00:00
Andreas Fabri e833e86598 Change the expected result (a permutation) 2021-02-12 09:43:14 +00:00
Andreas Fabri 4bc161a332 Return a triangle not a vector 2021-02-12 09:42:52 +00:00
Andreas Fabri 75cb1593d0 WIP: try to do plane/tet intersection. I think the edge indexing is wrong 2021-02-10 15:41:45 +00:00
Sébastien Loriot 482db1f0cc forget to update bbox case 2021-02-10 11:11:01 +01:00
Sébastien Loriot 231e9f1b93 handle cases when plane contains an edge 2021-02-10 10:29:02 +01:00
Dmitry Anisimov 81d9556707 Merge remote-tracking branch 'upstream/master' into Kernels-decltypes-danston 2021-02-10 10:06:45 +01:00
Sébastien Loriot 38142dc101 update include directives 2021-02-09 18:51:38 +01:00
Sébastien Loriot 81ba9da292 remove tabs 2021-02-09 18:42:39 +01:00
Sébastien Loriot 81a6fe16e8 remove idmap 2021-02-09 18:27:58 +01:00
Sébastien Loriot 95bd626bbd use one vector 2021-02-09 18:01:55 +01:00
Sébastien Loriot b363977c87 clean up 2021-02-09 17:58:25 +01:00
Sébastien Loriot fb731259d7 fix comparison 2021-02-09 17:51:01 +01:00
Andreas Fabri 6d438a0f94 WIP 2021-02-09 15:48:03 +00:00
Andreas Fabri d71057ce96 Test if there is something on the optional 2021-02-05 12:25:27 +00:00
Sébastien Loriot 1fcabd581b fix warnings (and indentation) 2020-11-27 14:04:13 +01:00
Andreas Fabri f246c4abf8 merge 2020-11-13 16:26:57 +00:00
Andreas Fabri aa4c8f2f5a changes after Sebastien's comments 2020-11-09 21:23:41 +00:00
Maxime Gimeno bebd60c12b Merge remote-tracking branch 'cgal/master' into Cmake_improvements-maxGimeno 2020-10-20 09:53:54 +02:00
Sébastien Loriot 87b8f66e14 update from master 2020-10-20 09:19:13 +02:00
Andreas Fabri fd351091d8 Less operations thanks to Mael 2020-10-20 09:17:15 +02:00
Andreas Fabri fefbc4bc1a Add funcion intersection_point for Line/Plane 2020-10-20 09:17:15 +02:00
Andreas Fabri eafad68789 Add a function that only constructs a point intersection for 3 planes 2020-10-20 09:17:15 +02:00
Andreas Fabri 46698620e3 Hack for a fix of do_intersect(Plane_3,Plane_3,Plane_3) 2020-10-20 09:17:15 +02:00
Laurent Rineau 51f11605c0 Merge pull request #5022 from janetournois/Intersections_3-fix_do_intersect_3planes-GF
Intersections_3 - fix do_intersect(Plane_3, Plane_3, Plane_3)
2020-10-16 13:41:19 +02:00
Jane Tournois f005bd40a4 Merge branch 'Intersections_3-fix_do_intersect_3planes-GF' into Intersections_3-fix_do_intersect_3planes-master-GF
# Conflicts:
#	Filtered_kernel/include/CGAL/internal/Static_filters/Do_intersect_3.h
2020-10-06 17:30:29 +02:00
Jane Tournois ec690d563e add test for do_intersect(plane, plane, plane) 2020-10-06 17:20:22 +02:00
Jane Tournois 10456676ab fix compilation of do_intersect(plane, plane, plane) for msvc 2020-10-06 17:20:22 +02:00
Maxime Gimeno a85e908e88 Ads tests for do_intersect(tet/tet) 2020-08-21 12:17:50 +02:00
Dmitry Anisimov 263ad6bc99 fixed ch3, inter3, otr2, psp, pmp, smsp, mesh3 + cleanup 2020-08-20 18:25:01 +02:00
Sébastien Loriot dc1ccb5c2d Merge remote-tracking branch 'cgal/releases/CGAL-5.0-branch' 2020-08-11 16:59:55 +02:00
Sébastien Loriot 8199d5308d Merge remote-tracking branch 'cgal/releases/CGAL-4.14-branch' 2020-08-11 16:59:19 +02:00
Michael Hemmer a11b69e319 Fix do_intersect for Tetrahedron_3 Tetrahedron_3
In Line 65 in function do_intersect_tetrahedron_bounded (tr,tet,p,k) we eval  k.has_on_bounded_side_3_object()(tet, p), where tr=lh_tet and tet=rh_tet.
Thus p must be generated from lh_tet, or L65 is always true. 

This is a flyby and has not been tested.
2020-08-07 10:45:27 +02:00
Michael Hemmer 52d8238f3b
Fix dispatch do_intersect(Tetrahedron_3, Bbox_3)
Moving do_intersect(Tetrahedron_3, Bbox_3) below do_intersect(Bbox_3, Tetrahedron_3)

Before do_intersect(Tetrahedron_3, Bbox_3)  called do_intersect(Iso_cuboid_3, Tetrahedron_3), which compiled due to implicit conversion. 
AFAIKT it even worked, up to instances with degenerated Bbox_3/Iso_cuboid_3 executed in debug mode.
2020-08-06 15:15:53 -07:00
Maxime Gimeno 9c15f2c9dc Use FeatureSummary in the demo, and remove CGAL_FOUND 2020-08-04 12:46:17 +02:00
Dmitry Anisimov ad813b4cb0 further removed result_of and result 2020-07-30 16:19:02 +02:00
Mael f42d19b37e
Use kernel functors (suggestions from @sloriot)
Co-authored-by: Sebastien Loriot <sloriot.ml@gmail.com>
2020-07-08 12:39:18 +02:00
Michael Hemmer b3dbae08fc
Update Tetrahedron_3_Bounded_3_do_intersect.h
Fixing typo.
2020-06-24 17:54:30 +02:00
Laurent Rineau 269d1f3505
Fix trailing whitespace 2020-06-19 15:55:46 +02:00
Michael Hemmer 9ea41185f0
Update Tetrahedron_3_Bounded_3_do_intersect.h
Going back to 
  if (certainly(b)) return b;
  if (is_indeterminate(b)) result = b;

as there seems to be a compiler issues
2020-06-19 12:56:04 +02:00
Michael Hemmer 241737bf0d
Update Tetrahedron_3_Bounded_3_do_intersect.h
Using certainly(result) to have early exit.
2020-06-19 11:42:40 +02:00
Michael Hemmer 17afba2e1f
Update Tetrahedron_3_Bounded_3_do_intersect.h
changed the || to operator |, for more details see  https://doc.cgal.org/latest/STL_Extension/classCGAL_1_1Uncertain.html#aee84a3df3e0b7494f32eb9d56c1335c3
2020-06-10 17:14:38 +02:00
Michael Hemmer bbf26e22ec
Adding specific code for Tet + Bbox_3 do_intersect as it should be ok for Bbox_3 to degenerate.
Adding specific code for Tet + Bbox_3 do_intersect as it should be ok for Bbox_3 to degenerate. 

The previous code failed in case Bbox_3 is degenerate. 

I use the result = result || predicate(); to keep the maybe inside result. 
If certain the code returns early. 
I also avoid the %4 as this is a slow operation, but not sure that this is worth compared to the rest.
2020-06-03 16:58:49 +02:00
Sébastien Loriot 8b4118912d extra run of the script to remove tabs and trailing whitespaces 2020-03-26 18:58:21 +01:00
Sébastien Loriot fedc29e23c Update branch from master after trailing whitespaces and tabs removal 2020-03-26 18:57:54 +01:00
Sébastien Loriot 8bb22d5b2c extra run of the script to remove tabs and trailing whitespaces
right after the merge of the 5.0 release branch

+ manual fix of the files (indentation was changed in the meantime):
   * Spatial_sorting/include/CGAL/Multiscale_sort.h
   * Spatial_sorting/test/Spatial_sorting/test_multiscale.cpp
2020-03-26 14:26:59 +01:00
Sébastien Loriot 8b153fb495 Merge branch 'cgal/releases/CGAL-5.0-branch'
whitespace+tab removal, merged with option -Xignore-space-change
2020-03-26 14:22:32 +01:00
Sébastien Loriot 0779373835 extra run of the script to remove tabs and trailing whitespaces
right after the  merge of 4.14 release branch

+ manual fix on one line in:
    * Arrangement_on_surface_2/include/CGAL/IO/Arr_text_formatter.h
    * .travis/generate_travis.sh
2020-03-26 14:16:06 +01:00
Sébastien Loriot 0a46621dc6 Merge branch 'cgal/releases/CGAL-4.14-branch'
whitespace+tab removal, merged with option -Xignore-all-space
2020-03-26 13:28:46 +01:00
Sébastien Loriot 590612a563 run the script to remove tabs and trailing whitespaces 2020-03-26 13:25:16 +01:00
Maxime Gimeno 401e06c64c fix warning 2020-03-25 15:24:07 +01:00
Maxime Gimeno 586987e377 fix warning. 2020-03-23 11:56:14 +01:00
Maxime Gimeno d395e096f2 fix warnings 2020-03-20 10:55:29 +01:00
Maxime Gimeno fe0d4d0a6e more clean-up 2020-03-19 16:41:59 +01:00
Maxime Gimeno ce4cbe6d06 Fix licenses 2020-03-19 11:41:57 +01:00
Maxime Gimeno 8a6bdd90b3 Fix after review 2020-03-19 11:31:35 +01:00
Laurent Rineau 97a8128f06 Merge pull request #4271 from maxGimeno/Installation-GMPXX-maxGimeno
Set GMPXX ON if detected
2020-02-07 16:25:11 +01:00
Maxime Gimeno 0f3305f983 Enhancements after review 2020-01-16 17:20:13 +01:00
Maxime Gimeno c368b349d5 clean-up 2020-01-15 15:26:02 +01:00
Maxime GIMENO d2d8463225
Update Intersections_3/test/Intersections_3/call_test.cpp
Co-Authored-By: Laurent Rineau <Laurent.Rineau@cgal.org>
2020-01-15 15:10:11 +01:00
Maxime Gimeno 90d2e03fdc Merge remote-tracking branch 'cgal/master' into Intersections_23-Add_missing_intersections-GF 2020-01-15 13:32:11 +01:00
Maxime Gimeno dfc9e8f0db Rework call_test to avoid error 2020-01-15 12:46:54 +01:00
Sébastien Loriot 530fa6be62 Merge remote-tracking branch 'cgal/releases/CGAL-4.14-branch' 2019-12-20 09:48:05 +01:00
Laurent Rineau 6f3db341f9 Fix issue #4357
Compilation error if <CGAL/Intersections_3/Triangle_3_Triangle_3.h> is included first.
2019-12-04 09:40:59 +01:00
Laurent Rineau bbe02d9f7b Fix the license header 2019-10-29 15:22:49 +01:00
Laurent Rineau ee357fd5dd Merge remote-tracking branch 'cgal/master' into Intersections_3-Add_T_3_Cub_3-maxGimeno 2019-10-29 15:19:24 +01:00
Maxime Gimeno 3434fd8873 fix assetions 2019-10-25 15:55:22 +02:00
Maxime Gimeno 3000cbbf8b Fix warning 2019-10-23 11:20:48 +02:00
Maxime Gimeno 2bfa95a2ed more indentation fixes 2019-10-23 09:56:56 +02:00
Maxime Gimeno 9a8f26ced7 More changes after review 2019-10-22 16:28:57 +02:00
Mael Rouxel-Labbé a5f09f89a6 Partial code cleaning (and fix some typedefs) 2019-10-22 12:36:58 +02:00
Mael Rouxel-Labbé b4fb7cb779 Minor improvements to Cuboid/Tr computations
- Slight robustness improvements by storing in memory that the intersection
  points are by construction on the plane.
- const& and such

Pair programming w/ mgimeno!
2019-10-22 11:23:35 +02:00
Mael Rouxel-Labbé 47717b0c9c Add more tests to Cuboid-Tr intersections 2019-10-22 11:21:02 +02:00
Mael Rouxel-Labbé ee054a862c Minor improvements to Cuboid/Tr computations
- Slight robustness improvements by storing in memory that the intersection
  points are by construction on the plane.
- const& and such

Pair programming w/ mgimeno!
2019-10-22 11:19:45 +02:00
Maxime Gimeno ea3dc6c936 Add Cub_3-T_3 intersection 2019-10-21 16:18:46 +02:00
Maxime Gimeno 16ee956bae restore tests 2019-10-21 15:51:51 +02:00
Maxime Gimeno e9a0b2d695 Fixes after review 2019-10-21 15:51:36 +02:00
Sébastien Loriot 52164b1fba First pass on removing license notice in header for LGPL files 2019-10-19 15:40:30 +02:00
Sébastien Loriot 7356421d80 introduce Commercial license SPDX tag 2019-10-19 12:15:19 +02:00
Sébastien Loriot 9bd9c68b83 update LGPL[23]+ and GPL[23]+ SPDX tags
ack -l --no-svg "SPDX-License-Identifier: GPL-3.0\+" | xargs sed -i "s/SPDX-License-Identifier: GPL-3.0+/SPDX-License-Identifier: GPL-3.0-or-later/"
ack -l --no-svg "SPDX-License-Identifier: LGPL-3.0\+" | xargs sed -i "s/SPDX-License-Identifier: LGPL-3.0+/SPDX-License-Identifier: LGPL-3.0-or-later/"
ack -l --no-svg "SPDX-License-Identifier: GPL-2.0\+" | xargs sed -i "s/SPDX-License-Identifier: GPL-2.0+/SPDX-License-Identifier: GPL-2.0-or-later/"
ack -l --no-svg "SPDX-License-Identifier: LGPL-2.0\+" | xargs sed -i "s/SPDX-License-Identifier: LGPL-2.0+/SPDX-License-Identifier: LGPL-2.0-or-later/"
2019-10-18 21:57:54 +02:00
Maxime Gimeno 3c875e8a18 WIP review 2019-10-04 15:30:52 +02:00
Maxime Gimeno 290b6db143 Merge remote-tracking branch 'cgal/master' into Intersections_23-Add_missing_intersections-GF 2019-07-30 09:51:28 +02:00
Laurent Rineau 32f80cbece Merge pull request #4018 from lrineau/CGAL-refresh_cmake_minimum_required-GF
CMake>=3.13: opt for for new policies up to 3.15
2019-07-01 11:16:30 +02:00
Maxime Gimeno b9d33c7ffa Fix Conflicts 2019-06-25 13:25:57 +02:00
Maxime Gimeno 89b35a5b17 Add missing case for Pl / Cub 2019-06-25 13:15:51 +02:00
Laurent Rineau 55c9a175b5 Merge branch 'releases/CGAL-4.13-branch' into releases/CGAL-4.14-branch 2019-06-21 10:34:18 +02:00
bryantcurto 056e846e0d Fixed do_intersect() ambiguity.
Occurs when compiling with clang
2019-06-21 10:33:46 +02:00
Laurent Rineau 53ba851c89 Merge pull request #3990 from bryantcurto/patch-1
do_intersect() Ambiguity
2019-06-20 14:21:05 +02:00
Laurent Rineau 4fbf00fb8a CMake>=3.13: opt for for new policies up to 3.15 2019-06-19 14:34:59 +02:00
Maxime Gimeno d9b09ef001 Clean-up loop 2019-06-17 15:54:25 +02:00
Maxime Gimeno e58b4475e7 clean-up 2019-06-17 15:24:43 +02:00
Maxime Gimeno 3e5d3acb2f Replace the virtual helper class with a CRTP pattern to avoid the virtual methods. 2019-06-17 15:17:58 +02:00
Maxime Gimeno 6f2930acac Add missing license headers 2019-06-14 13:19:06 +02:00
Maxime Gimeno f969555a3c Update doc and add test for homogeneous exact 2019-06-13 11:04:50 +02:00
Maxime Gimeno a9facfc574 Add misisng intersections for bbox_3 2019-06-13 10:31:20 +02:00
Maxime Gimeno c391e0e876 add Cub_tr as a Lazy implementation. Remains only Bbo intersections for the 3D 2019-06-13 10:27:16 +02:00
Maxime Gimeno 5e9891ea75 Tet / tr 2019-06-13 10:27:17 +02:00
Maxime Gimeno 38bf604b4a Add intersections for Tet/plane 2019-06-13 10:27:16 +02:00
Maxime Gimeno abeb0cf52d Add intersection Ray_3 / Tetrahedron_3 2019-06-13 10:27:00 +02:00
Maxime Gimeno 107e4e2abd Add intersection Ray_3 / Tetrahedron_3 2019-06-13 10:26:28 +02:00
Maxime Gimeno 9cb1173a41 Add intersection Tetrahedron_3 / Segment_3 2019-06-13 10:26:28 +02:00
Maxime Gimeno 469ed5396b Add Tet / line intersections 2019-06-13 10:26:28 +02:00
Maxime Gimeno 119ca0dff8 Add Intersection between Bbox_3 and Bbox_3 2019-06-13 10:26:28 +02:00
bryantcurto 39bceb093c
Fixed do_intersect() ambiguity.
Occurs when compiling with clang
2019-06-07 11:57:19 -04:00
Andreas Fabri 4581f1b7a8 Morte replacements 2019-06-05 08:39:55 +02:00
Laurent Rineau 90782d4b7f Revert the merge of two pull-requests that target CGAL-4.14-branch
- Revert "Merge pull request #3857 from MaelRL/CGAL-Fix_duplicate_non_manifold_vertices-GF"
- Revert "Merge pull request #3898 from lrineau/Mesh_3-stop_during_protection-lrineau"
2019-05-14 17:50:45 +02:00
Laurent Rineau 4d3671024d Merge pull request #3855 from sgiraudot/Intersections_3-Fix_almost_collinear_segments_bug-GF
Intersections_3: Fix almost collinear segment bug

# Conflicts:
#	Intersections_3/include/CGAL/Intersections_3/internal/intersection_3_1_impl.h
2019-05-06 15:45:41 +02:00
Laurent Rineau 3586946e96 Merge pull request #3855 from sgiraudot/Intersections_3-Fix_almost_collinear_segments_bug-GF
Intersections_3: Fix almost collinear segment bug
2019-05-06 15:26:49 +02:00
Simon Giraudot 258179a707 Prevent construction of line with NaN coordinates 2019-04-30 11:23:47 +02:00