Descriptions and Examples for the POV-Ray Raytracer by Friedrich A. Lohmüller
    CSG - Constructive Solid Geometry
Italiano Italiano
Français français
Deutsch Deutsch

Home
- POV-Ray Tutorial
- Download-Page

  - CSG Constructive
            Solid
            Geometry
    - union + merge
    - difference
    - intersection
       + invers
    - clipped_by
   > coincident surfaces
    - textures in CSG
                                           
Boolean Algebra with Solids - part VI

The Coincident-Surface Problems

  As always mentioned before in 'difference' with coincident surfaces it's inevitable to get problems of unambiguity. This kind of 'issue' in principle can appear with al computer programs, which have to calulate any intersections of straight lines ('lines of sight') with several geometric objects.
This is not an issue of the POV-Ray program!
  It's the task of the designer, to deliver unambiguous information to the program
and therefore to avoid coinzidente surfaces under all conditions.
The coincident-surface problems
can make difficult problems specially when we are using CSG operations. Most time the 'issue' appears only under certain directions of view, angles of view and distances of the camera. But also other objects in the scene can influence the appearance under some circumstances.

The following images show some of these symptoms:
Here first while using a 'union' of two boxes of the same size.
A simple red box{<0,0,0>,<3,3,3>}
in a union with a yellow box of
the same size moved up by 2.
Yellow box completly visible!
From another point of view
Red box completly visible!
 
From another point of view
it meight look much more strange!
And now the hole thing by subtrakting the 'union' of the red and yellow boxes from a green box by 'difference'. Now the middle part of the coincident surfaces even can become predominantly transparent!
An additional green 'box'.
 
The 'difference' of
Green minus Yellow and Red.

The appearance or the disappearance of this effect is totaly unpredictable! Because of this you never can rely on these effect to be somehow reproducible (Don't use these effects as a design element!). Nor you should hope, that these effects will not appeare in some situations!
The only solution is the following important rule:
     
Avoid coincidente surfaces!

A consistent observance of this rule can avoid many unnecessary frustration!
A concrete example on how to do this you will find here: 'difference'.



CSG | union + merge | difference | intersection + inverse | clipped_by | coincident surfaces | textures
top

© Friedrich A. Lohmüller, 2012
www.f-lohmueller.de