booleans



hi!

i've been trying to implement boolean operators (like intersection,
subtraction) for 3D polygonal objects

my approach is to split all faces of object A that intersect faces from B
and vice versa. then trace rays from center of each face from A and look for
nearest intersection with B. when ray hits backface, it means the face from
A is inside B. if there's no intersection or intersection with frontface,
it's outside. then do the same for B, resulting in four lists of faces A, B,
A inside B, B inside A ... i can then perform all boolean operations by
removing certain group of faces. for example subtraction A - B. erase A
inside B, erase B outside A, flip normals for B inside A .. and voila ...

my problem is efficient algorithm for finding intersecting faces. right now,
i'm using some kind of BSP, realized trough two (for A and B) polygon index
lists, the whole algorithm looks very similar to quicksort. the problem is
as soon as i start splitting polygons, i have to add new splits into the
list, since certain polygons collide with more polygons ... it's very messy
code. anyone see better (or possibly faster / cleaner) sollution?


.



Relevant Pages

  • Re: Crossing between PATCH and plane
    ... I have the following problem...I have a 3D object, defined by a patch structure, and I want to obtain the intersection between these object and a planar surface. ... The actual problem is a patch describing a ship hull. ... the shape of the hull, there could be more than 1 closed polygons, due ...
    (comp.soft-sys.matlab)
  • Re: Extracting polygons from a given set of lines
    ... all polygons from a given set of lines? ... load the PQ with the LOWER endpoint of each line segment. ... CLOSE the polygon below the intersection ...
    (comp.graphics.algorithms)
  • Re: Intersecting Polygons
    ... don't use polygons much so I can't help you out there. ... I should have asked about the intersection of 2 POLYGONS, ... >> places the coordinates of the intersection rectangle into the destination ... >> Doug. ...
    (microsoft.public.vb.general.discussion)
  • Re: Intersection line/plane
    ... It is possible that the quad intersects the object, ... One approach is to compute the intersection of the object ... For the polygons, ... the BV of the root of the tree, it does not intersect the object. ...
    (comp.graphics.api.opengl)