Descriptions et exemples pour le POV-Ray raytracer par Friedrich A. Lohmüller
Conception de Surface en »texture« avec POV-Ray -
English English English
Italiano Italiano
Deutsch Deutsch

Page d'Accueil
- POV-Ray Tutoriel

  Conception de Surface
  - Coleurs et Textures
    Index

    Syntaxe de texture
    Textures prêtes-à-l'emploi
    Couleurs en do-it-yourself
    Motifs - Patterns
    Motifs régulaires
    - checker, hexagon
      square, triangular
    - brick
   > object pattern (1)
    - object pattern (2)
    - object pattern (3)
    - tiling
    - pavement
    Motifs rayures
    - color_map{...}
     Motifs par pigments
    - pigment_pattern (1)
    - pigment_pattern (2)
    - image_pattern
    Listes de Motifs
    - Motifs régulaires
    - Motifs par hasard
    - Motifs Fractal
    - Autres motifs
    Warps
    uv_mapping
    Mapping
    Superpositions
    - layered_textures

    - Votre textures
 
                                           
  » object pattern « (1)
Syntaxe :
object{
  OBJECT_IDENTIFIER | OBJECT {}
  LIST_Outside, LIST_Inside
  }
Ce motif ne peut pas utiliser avec les modificateurs color_map, wave types ou slope_map.
OBJECT = objet solide sans texture !
La liste suivant contient ce qui contrôle le motif.
Cela peut être couleurs, pigments, textures, normales, etc. ...
LIST_Outside = attribué aux points à l'extérieur du OBJECT.
LIST_Inside = attribué aux points à l'intérieur du OBJECT.

Exemple 1 : Motif objet (object pattern) appliqué à couleurs
// object for object pattern
#declare Pattern_Object_1=
union{
  object{
   Round_Box(<-10,-.5,-3>,<0,1.3,-.5>,.4,0)}
  object{
   Round_Box(<-10,-.5,.5>,<0,1.3,3.0>,.4,0)}
} // end of union
//-------------------------------------------
#declare Object_Pigment_1 =
pigment{
  object{
      Pattern_Object_1
      color rgb<1,0.65,0.2> // outside
      color rgb<0.6,0.00,0>  // inside
    }// object
} // end pigment
//-------------------------------------------
#declare Body_Texture =
   texture{ pigment{ Object_Pigment_1 }
            finish { phong 1 }
          } // end of texture
//-------------------------------------------
#declare D = 0.00001;
#declare W = 0.75;// width
#declare Sz = 3; // z scale
#declare H  = 3; // height
union{ // Body
  object{ Round_Box(<-3,0,-W>,<0,H,W>,W-D,0)
          matrix<1, 0, 0, // shear_y_to_x
                 -0.5, 1, 0,
                    0, 0, 1,
                    0, 0, 0>} //
  object{ Round_Box(<-5,0,-W>,<0,H,W>,W-D,0)
          translate<-2,0,0>} //
  scale<1,1,Sz>
  texture{ Body_Texture }
} //-----------------------------------------

Object for Object Pattern
Nous décidons ce que pour obtenir la couleur pour
l'extérieur et l'intérieur et nous devons vérifier, si l'objet
motif frappe la surface du corps aux bons endroits.
Object Pattern
object pattern appliqué au corps.
Fichier POV-Ray : Object_Pattern_100.pov

Exemple 2 : Object pattern avec 3 couleurs
//-------------------------------------------
#declare Body_Texture_1 =
   texture{ pigment{ Object_Pigment_1 }
            finish { phong 1 }
          }
//-------------------------------------------
// another object for an object pattern
#declare Pattern_Object_2=
  box{<-10,2.25,-3>,<0,3,3>}
//-------------------------------------------
#declare Object_Pigment_2 =
pigment{
   object {
    Pattern_Object_2
    color rgbf<1,1,1,1> // outside
    color rgb<1,1,1>*0.05// inside
   }// object
  } // end pigment
//-------------------------------------------
#declare Body_Texture_2 =
   texture{ pigment{ Object_Pigment_2 }
            finish { phong 1 }
          }
//-------------------------------------------
// layered texture:
#declare Body_Texture =
 texture{ Body_Texture_1 }
 texture{ Body_Texture_2 }
//-------------------------------------------

Object Pattern 3 colors
object pattern avec 3 couleurs
Fichier POV-Ray : Object_Pattern_150.pov

Exemple 3 : Object pattern appliqué à 'pigment' et 'normal'
//-------------------------------------------
#declare Object_Normal_1 =
normal{
   object {
    Pattern_Object_1
    normal{ agate 2 scale 0.15  } // outside
    normal{ bumps 0.35 scale 0.15} // inside
   }// object
  } // end normal
//-------------------------------------------
//-------------------------------------------
#declare Body_Texture =
   texture{ pigment{ Object_Pigment_1 }
            normal { Object_Normal_1 }
            finish { phong 1 }
          }
//-------------------------------------------
Object for Object Pattern
The object pattern applied on pigment and normal
Fichier POV-Ray : Object_Pattern_100.pov
top

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