Descriptions et exemples pour le POV-Ray raytracer par Friedrich A. Lohmueller,
traduit en français par Henri Girard.
    CSG - Constructive Solid Geometry -
English English English
Italiano Italiano
Deutsch Deutsch

Page d'Accueil
- Tutoriel POV-Ray
- Téléchargement

  - CSG Constructive
            Solid
            Geometry
    - union + merge
    - difference
    - intersection
        et invers
    - clipped_by
    - surfaces
        coïncidentes
   > textures et CSG
                                           
Algèbre booléenne des Solides - part VII

Textures et CSG

Problèmes rencontrés avec les textures structurés de types bois ou des objets csg :
Si on connecte des formes avec "union" les différentes parties de celles-ci gardent leurs structures originelles. Si on modèle des formes avec "difference" et/ou "intersection" la forme résultante aura la texture de la forme qui a été coupée exactement aux parties qui ont été enlevées. Si on veut une texture structurée continue sur un tel objet, il faut que celle-ci soit appliquée à la fin, après les avoir imbriquées par union, difference ou intersection, pour tous les éléments imbriqués ensemble. C'est à peine plus facile à écrire, mais ça garantie une texture structurée continue.

Exemples :
Textures d'une "difference"
difference{
  box   { <0,0,0>,<1,1,1>
          texture{ My_YellowGreen } 
        }
  sphere{ <0,0,0>,0.5
          texture{ My_Yellow } 
          translate<1,1,0>
        }
}// end of difference -------------
grain discontinue
difference{
  box   { <0,0,0>,<1,1,1>
          texture{ My_Wood }
        }
  sphere{ <0,0,0>,0.5
          texture{ My_Wood }
          translate<1,1,0>
        }
}// end of difference -------------
grain continue
parties sans texture,
en applicant une texture commune à la fin.
difference{
  box   { <0,0,0>,<1,1,1>
        }
  sphere{ <0,0,0>,0.5
          translate<1,1,0>
        }
  texture{ My_Wood }
}// end of difference -------------
grain continue
utilisant "cutaway_textures",
La texture de forme de base est appliquée.
difference{
  box   { <0,0,0>,<1,1,1>
          texture{ My_Wood }
        }
  sphere{ <0,0,0>,0.5
          translate<1,1,0>
        }
 cutaway_textures
}// end of difference -------------


Textures de "difference"
 
grain discontinue
 
grain continue


CSG | union + merge | difference | intersection + inverse | clipped_by | surfaces coïncidentes | textures
top

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