Open
Description
I discovered the following:
t = Triangle((Point(-60.0, -35.0, 55.0), Point(-68.75, -33.43333, 54.90143), Point(-68.75, -35.0, 55.0)))
b = Box((-77.5, -35.0, 54.6073),(-68.75, -31.8914, 55.0))
intersects(b, t)
Running this code causes an infinite loop here:
Meshes.jl/src/predicates/intersects.jl
Lines 96 to 104 in 4f1a5d8
In this particular case changing the argument order solves the issue (running intersects(t,b)
), but in general it does not solve the issue.
I tried normalizing my input, but it doesn't help.
s = maximum(sides(boundingbox([t, b])))
tn = Scale(1 / s)(t)
bn = Scale(1 / s)(b)
intersects(bn, tn)
I am not sure why is this the case, on other triangle-box pairs it works fine. Maybe because they have one vertice that is common?