Filtered_kernel: Do_intersect(Tetrahedron_3,Bbox_3)#5767
Filtered_kernel: Do_intersect(Tetrahedron_3,Bbox_3)#5767lrineau merged 33 commits intoCGAL:masterfrom
Conversation
| return true; | ||
| } | ||
| }else{ | ||
| return Base::operator()(t,b); |
There was a problem hiding this comment.
Don't you want to check the next point before giving up? Or do you consider that if one point has ugly coordinates, it is likely that they all do?
(you could use a loop)
There was a problem hiding this comment.
You are maybe right. And thanks for reading. Before this commit the first block was slightly different. I also thought maybe a lambda.
There was a problem hiding this comment.
On the other hand if for one point the coordinates did not fit into a double the chances are high that it is the same for the other points.
I was also wondering if it makes sense to check if a corner of the bbox is inside the tetrahedron.
quick and dirty with copy/paste from other files
|
@sloriot you should maybe commit your benchmark concerning the bbox and the static filter, and report the numbers in the description of the PR. |
|
I think this PR is responsible for all the red squares in https://cgal.geometryfactory.com/CGAL/testsuite/results-5.4-Ic-27.shtml. |
I confirm that there is a problem. I can reproduce it locally. |
Filtered_kernel/include/CGAL/Filtered_kernel/internal/Do_intersect_3.h
Outdated
Show resolved
Hide resolved
Filtered_kernel/include/CGAL/Filtered_kernel/internal/Do_intersect_3.h
Outdated
Show resolved
Hide resolved
|
@afabri if you do not make the changes requested please assign someone else so that we can integrate this PR. |
|
Successfully tested in CGAL-5.4-Ic-82 |
|
Mael fixed the issue since then. |
Summary of Changes
Currently the intersection test is directly done using interval arithmetic.
This PR does not really add a static filter but for the moment just tests if vertices of the tetrahedron are either all in the bbox or if some are inside and some outside to have an early result.
The need for improvement comes from an AABB tree with tetrahedra as query objects. @cportaneri @palliez
Release Management