Re: Intersection beetwen bbox and nodes

New Message Reply Date view Thread view Subject view Author view

Jim Helman (jimh++at++surreal)
Tue, 21 Dec 93 09:51:20 -0800


Determining all objects which are in or impinge upon a sphere is
really a volume-volume intersection problem. You could create a
spherical bristle of segments, but it would take a lot of them,
probably too many, to give good coverage.

Volume-volume intersections are on the list of things for a
future release. However, since all the bounding and transform
information is accessible, a user could always traverse the
scene graph yourself and carry out the tests.

If this is too much work, you can narrow things down quite a bit
by using a bounding cylinder in pfSegsIsectNode() without any
segments and specify a discriminator callback and
PFTRAV_IS_GEODE in the mdoe. This will give you callbacks on
all the pfGeodes whose bounding spheres potentially intersect
the querying bounding cylinder. You could then test the
pfGeoSets in the pfGeode more easily since you have the
transformation in the pfIsect (pfHit in 1.2) structure handed to
your discriminator. Then test the explosion sphere aginst the
bounding box transformed by pfXformBox().

Currently, bounding cylinder testing is implemented only down to
pfGeodes, but getting it down to the pfGeoSet level is currently
has been mentioned as a must fix for 1.2.

rgds,

-jim helman

jimh++at++surreal.asd.sgi.com
415/390-1151


New Message Reply Date view Thread view Subject view Author view

This archive was generated by hypermail 2.0b2 on Mon Aug 10 1998 - 17:50:07 PDT

This message has been cleansed for anti-spam protection. Replace '++at++' in any mail addresses with the '@' symbol.