Commit Graph

354 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
Andreas Fabri f45e843cd0 trailing whitespace 2021-05-06 08:03:53 +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
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
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
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 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 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
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 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 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 aa4c8f2f5a changes after Sebastien's comments 2020-11-09 21:23:41 +00: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 10456676ab fix compilation of do_intersect(plane, plane, plane) for msvc 2020-10-06 17:20:22 +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
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 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 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
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 90d2e03fdc Merge remote-tracking branch 'cgal/master' into Intersections_23-Add_missing_intersections-GF 2020-01-15 13:32:11 +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 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é 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 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 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
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 a9facfc574 Add misisng intersections for bbox_3 2019-06-13 10:31:20 +02:00