Mug and Bowl

Image for the Mug and Bowl Assignment

Assignment Nine: Mug and Bowl

PovRay Code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
/*
 * Copyright Kristopher Reese (kReese.net)
 * Created: April 2006
 * For Educational Purposes Only.  Not for reproduction.
 *
 */
 
#include "colors.inc"
 
//This is the beginning of the object declarations,  Object Mug and Bowl.
 
#declare bowl = object {
difference {
intersection{             
sphere {
        <0, 0, 0>, 1
        pigment {color Red}
       }
box {
        <1, 0, -1>
        <-1, -1, 1>
        pigment {color Blue}
    }     
             }
sphere {
        <0, 0, 0,> 0.95
        pigment {color Yellow}
       }
          }             
                        }
 
 
#declare mug = object {                        
merge {
difference{                        
cylinder {
           <0, -1, 0>, <0, 1, 0>, 1
           pigment {color Red}
         }
 
cylinder { 
           <0, -0.9, 0>, <0, 1.1, 0>, 0.95
           pigment {color Blue}
         }
           }
 
cylinder {
          <-2, 0.65, 0>, <-1, 0.65, 0>, 0.12              
          pigment {color Yellow}
         }                      
 
cylinder {
          <-2, -0.4, 0>, <-1, -0.5, 0>, 0.12              
          pigment {color Yellow}
         }
 
cylinder {
          <-1.9, 0.65, 0>, <-1.9, -0.6, 0>, 0.12
          pigment {color Yellow}
         }
      }               
                        }
 
 
 
camera {
        location <0, 1.1, -5>
        look_at <0, -.15, 0>
        angle 80
       }
 
light_source {
                <100, 75, -100> White
             }
 
plane {
        <0, 1, 0>, -1
        pigment {color Orange}
      }                        
 
object { mug                   
        rotate <7, 5, 0>
        translate <-2.75, 0, -3>
        scale <0.6, 0.6, 0.6>
}        
 
object { mug   
        rotate <10, 0, 0>
        rotate <0, 155, 0>
        rotate <0, 0, 15> 
        translate <0, 0, 5>
        scale <.75, .75, .75>        
}   
 
object { bowl
        rotate <15, 0, 0> 
        translate <0, -.3, -2> 
        scale <.9, .6, .9>
}  
 
 
object { bowl  
        rotate <0, 0, -55> 
        rotate <0, 65, 0> 
        rotate <10, 0, 0>
        translate <2.75, -.3, -2> 
        scale <.75, 0.75, .85>
}