Subject: Finding 3D volume intersections

From: [email-masked]
Date: Wed, 8 Jan 92 17:02:02 EST

Hi,

I've got a problem to solve and I'm looking for some references to get me
started in the right direction.  I'm posting here because I'm guessing
some of you might have tackled the same problem.

I want to be able to calculate the intersections of numerous types of
3D volumes - spheres, prisms, pyramids, cones, ellipsoids, wedges,
general polyhedrons, etc, etc.  Code, algorithms, theory, point solutions,
hacks, and hints are all appreciated.  At present I'm most interested in
finding out how to do it as opposed to how to implement it efficiently.
Of course as soon as I figure out how to do it I'll want a fast
implementation.

There are few constraints on the problem at the moment.  I can still
represent the volumes in any manner I choose.  Code will probably be
written in C.  Displaying the volumes and intersections is not of
primary importance, but would certainly be useful.  I might even be
able to get by if I could just calculate whether two volumes intersect,
as opposed to calculating their intersection.

Any information you might have would be appreciated.  If I get some
good info, I'll summarize.

Thanks,

Bill       [email-masked]

---

From: [email-masked] (Jennifer Cross)
Date: Thu, 9 Jan 92 10:05:37 WST

Hi Bill, (and all the rest of you too!)
> Of course as soon as I figure out how to do it I'll want a fast

  Of course this is a _very_ popular problem, handled by most 3d-cad/VR
  designers at some point.  There are a LOT of references on 3d object
  modelling and manipulation, but the "out" I used last year was to
  purchase the "TurboGeometry Library".  It has a full compliment of
  2 and 3d routines, view and object manipulation and maintance, etc.
  And best yet, it is avail in either C (several flavors) and pascal

      FULL SOURCE FOR ALL FUNCTIONS AND LIBRARYS ARE INCLUDED!!!

  That made it a winner in my books (I was developing for unix and other
  systems - too complex to even consider a "runtime" licensing 
  scheme.  The only intersection routine I needed and was not included
  in the package was the ability to intersect 3d bsplines (or failing
  intersection, return the points of minimum seperation).
> as opposed to calculating their intersection.
   Functions for calculating displays are included, but no "driver" type
   modules (though maybe for the borland c version??? - I ordered the
   uSoft C version - more "vanilla" IMHO)

--        ___
         (   >                  /)                        (voice) +61 9 362 6680
          __/_/> ____  ____  o //  _  __            (home)  [email-masked]
         / / (__/ / <_/ / <_<_//__</_/ (_ @ Beautiful Perth, Western Australia
        <_/                  />                     (work) [email-masked]
                            </                            (voice) +61 9 380 3879