home *** CD-ROM | disk | FTP | other *** search
/ Amiga MA Magazine 1998 #7 / amigamamagazinepolishissue1998.iso / varia / povray3 / povray3_060 / pov3demo / other / shear2.pov < prev    next >
Text File  |  1997-12-12  |  4KB  |  180 lines

  1. // Persistence Of Vision raytracer version 3.0 sample file.
  2. // This scenes shows how to do shear with the matrix transformation.
  3.  
  4.  
  5. #version 3.0
  6. global_settings { assumed_gamma 2.2 }
  7.  
  8. #include "colors.inc"
  9.  
  10. #declare Col1 = -6
  11. #declare Col2 = -3
  12. #declare Col3 =  0
  13. #declare Col4 =  3
  14. #declare Col5 =  6
  15.  
  16. #declare Row1 =  5
  17. #declare Row2 =  0
  18. #declare Row3 = -5
  19.  
  20. camera {
  21.   orthographic
  22.   location <25, 25, -50>
  23.   right 15 * 4/3 * x
  24.   up 15 * y
  25.   look_at  <0, 0, 0>
  26. }
  27.  
  28. light_source { <200, 200, -200> color rgb <1,1,1> }
  29.  
  30. //
  31. // Use aloved famous raytrace green/yellow checkered wall
  32. //
  33.  
  34. plane { z, 2
  35.    pigment {
  36.       checker colour Yellow colour Green
  37.       scale 2
  38.    }
  39.    finish {
  40.       ambient 0.2
  41.       diffuse 0.8
  42.    }
  43. }
  44.  
  45. //
  46. // Declare object to use.
  47. //
  48.  
  49. #declare Thing = box { -1, 1 pigment { color Red } }
  50. //#declare Thing = sphere { 0, 1 pigment { color Red } }
  51. //#declare Thing = cylinder { -y, y, 1 pigment { color Red } }
  52. //#declare Thing = torus { 1, 0.2 pigment { color Red } }
  53. /*
  54. #declare Thing = blob {
  55.     threshold 0.6
  56.     component 1.0, 1.0, <.75,     0,     0>
  57.     component 1.0, 1.0, <-.375,  .64952, 0>
  58.     component 1.0, 1.0, <-.375, -.64952, 0>
  59.     pigment { color Red }
  60. }
  61. */
  62.  
  63. //
  64. // Place several objects sheared in negative x direction.
  65. //
  66.  
  67. object { Thing 
  68.   matrix <    1,     0,  0,   
  69.               0,     1,  0,    
  70.               0,     0,  1,    
  71.            Col1,  Row1,  0 >
  72. }
  73.  
  74. object { Thing 
  75.   matrix <    1,     0,  0,   
  76.            -0.2,     1,  0,    
  77.               0,     0,  1,    
  78.            Col2,  Row1,  0 >
  79. }
  80.  
  81. object { Thing 
  82.   matrix <    1,     0,  0,   
  83.            -0.4,     1,  0,    
  84.               0,     0,  1,    
  85.            Col3,  Row1,  0 >
  86. }
  87.  
  88. object { Thing 
  89.   matrix <    1,     0,  0,   
  90.            -0.6,     1,  0,    
  91.               0,     0,  1,    
  92.            Col4,  Row1,  0 >
  93. }
  94.  
  95. object { Thing 
  96.   matrix <    1,     0,  0,   
  97.            -0.8,     1,  0,    
  98.               0,     0,  1,    
  99.            Col5,  Row1,  0 >
  100. }
  101.  
  102. //
  103. // Place several objects sheared in negative y direction.
  104. //
  105.  
  106. object { Thing 
  107.   matrix <    1,     0,  0,   
  108.               0,     1,  0,    
  109.               0,     0,  1,    
  110.            Col1,  Row2,  0 >
  111. }
  112.  
  113. object { Thing 
  114.   matrix <    1,  -0.2,  0,   
  115.               0,     1,  0,    
  116.               0,     0,  1,    
  117.            Col2,  Row2,  0 >
  118. }
  119.  
  120. object { Thing 
  121.   matrix <    1,  -0.4,  0,   
  122.               0,     1,  0,    
  123.               0,     0,  1,    
  124.            Col3,  Row2,  0 >
  125. }
  126.  
  127. object { Thing 
  128.   matrix <    1,  -0.6,  0,   
  129.               0,     1,  0,    
  130.               0,     0,  1,    
  131.            Col4,  Row2,  0 >
  132. }
  133.  
  134. object { Thing 
  135.   matrix <    1,  -0.8,  0,   
  136.               0,     1,  0,    
  137.               0,     0,  1,    
  138.            Col5,  Row2,  0 >
  139. }
  140.  
  141. //
  142. // Place several objects sheared in negative z direction.
  143. //
  144.  
  145. object { Thing 
  146.   matrix <    1,     0,  0,   
  147.               0,     1,  0,    
  148.               0,     0,  1,    
  149.            Col1,  Row3,  0 >
  150. }
  151.  
  152. object { Thing 
  153.   matrix <    1,     0,  0,   
  154.               0,     1,  0,    
  155.            -0.2,     0,  1,    
  156.            Col2,  Row3,  0 >
  157. }
  158.  
  159. object { Thing 
  160.   matrix <    1,     0,  0,   
  161.               0,     1,  0,    
  162.            -0.4,     0,  1,    
  163.            Col3,  Row3,  0 >
  164. }
  165.  
  166. object { Thing 
  167.   matrix <    1,     0,  0,   
  168.               0,     1,  0,    
  169.            -0.6,     0,  1,    
  170.            Col4,  Row3,  0 >
  171. }
  172.  
  173. object { Thing 
  174.   matrix <    1,     0,  0,   
  175.               0,     1,  0,    
  176.            -0.8,     0,  1,    
  177.            Col5,  Row3,  0 >
  178. }
  179.  
  180.