>> There is actually a commented-out section of code in MeshCommunication that
>> used to do this using bounding spheres, but I think for my meshes with
>> boundary-layers that would just have an annoying amount of false positives.
> 
> What about boundary layers that aren't aligned with a coordinate axis?
> Won't that have nearly the same problem?

Yeah, nearly the same problem...

> Clearly you ought to be working on a BoundingConvexHull class.  The
> standard algorithm for polygons is on page 898 of
> Cormen/Leiserson/Rivest; I'm sure you won't have any problem extending
> it to polyhedra and writing an intersection test.

Not sure about that, I'd say 'clearly I should get the nemesis part
finished' and then implement what you describe.  Right now we can get a
bounding box for two processors easily enough, and (I am sure you are gonna
love this...) overload '&&' to return true if they intersect.

Going forward, Qhull (http://www.qhull.org/) looks like it will fit the bill
for building the convex hull, and then we just need to write an intersection
test... We could go so far as to derive the BoundingBox and
BoundingConvexHull from the same base class, so that you can use either to
perform the test.

In any case, since communicating a bounding box should be cheaper than a
hull, I'd expect we still might want to use it first to limit the number of
hulls we receive and test for intersection.  (looking toward the full ranger
problem...)

-Ben


-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Libmesh-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/libmesh-devel

Reply via email to