#include "colors.inc"
#include "textures.inc"
#include "shapes.inc"
#include "metals.inc"
#include "glass.inc"
#version 3.0
global_settings { assumed_gamma 2.2 }
//------CAMERA ANGLES INCLUDE FRONT VIEW, SIDE VIEW AND TOP VIEW------
/*
//front view
camera {
location <0,>
look_at <-0, 25, -0>
}
light_source { <0,> White }
*/
camera {
location <0,>
look_at <0,>
}
light_source { <0,> White }
plane {
<0,>,
-1.0
texture {
pigment {White}
}
}
// TOP PART
#declare top1 = cylinder {
<0,>,
<0,>, 13.5
}
#declare top2 = torus {
14,
1
texture {
pigment {Red}
}
}
#declare curve = difference{
object{top1}
object {top2 translate y*61.2}
}
object {curve}
#declare top4 = merge{
cone {
62*y, 13,
78*y, 2
}
sphere { <0,>, 2.1
}
}
#declare door_box = box {
<-3, 66.5, -10>
<3,>
}
#declare door = difference{
object {top4 pigment {Red}}
object{door_box rotate y*45 pigment {White}}
}
object{door}
//LARGE METAL CONSTRUCTION
//METAL STEM
cylinder {
<0,>,
<0,>, 2.5
}
#declare ring = torus {
15,
0.5
texture {
pigment {Red}
}
}
//METAL CONNECTING PARTS
//metal part that connect the step to the ring
#declare metal_part = cylinder {
<1,>,
<15,>, .5
}
//metal part that connect the ring with other metal part
#declare metal_p1 = cylinder {
<15,>,
<22.25,>, .5
}
//metal part2 that connect the ring with other metal part
#declare metal_p2 = cylinder {
<0,>,
<22,>, .5
}
//metal part3 that connect the ring with other metal part
#declare metal_p3 = cylinder {
<22,>,
<34,>, .5
}
//metal part4 that connect the ring with other metal part
#declare metal_p4 = cylinder {
<22,>,
<12,>, .5
}
//metal part5 that connect the ring with other metal part
#declare metal_p5 = cylinder {
<0,>,
<34,>, .5
}
//metal part6 that connect the ring with other metal part
#declare metal_p6 = cylinder {
<34,>,
<34,>, .5
}
//metal part7 that connect the ring with other metal part
#declare metal_p7 = cylinder {
<12,>,
<34,>, .5
}
#declare metal_large = union{
object {metal_p3}
object {metal_p3 translate <-22, 0, -22>}
object {metal_p4}
object {metal_p5}
object {metal_p6}
object {metal_p7}
}
#declare stem_small = cylinder {
<0,>,
<0,>, .2
texture {
pigment {Red}
}
}
#declare stem_small_group = union{
object {stem_small}
object {stem_small rotate y*90}
object {stem_small rotate y*180}
object {stem_small rotate y*-90}
object {stem_small rotate y*45 translate <-1.5, 0, -1.5>}
object {stem_small rotate y*135 translate <-1.5, 0, 1.5>}
object {stem_small rotate y*-225 translate <1.5,>}
object {stem_small rotate y*-45 translate <1.5,>}
}
object {stem_small_group}
#declare small_top = cylinder {
<-9, 25.5, -22>,
<9,>, .2
texture {
pigment {Red}
}
}
//thin supporting metal parts that connect the ground and second level
#declare small_top_group = union{
object {small_top}
object {small_top rotate y*90}
object {small_top rotate y*180}
object {small_top rotate y*-90}
object {small_top rotate y*45}
object {small_top rotate y*135}
object {small_top rotate y*-135}
object {small_top rotate y*-45}
}
object {small_top_group}
#declare path = box {
<-4, 25.5, -20>
<4,>
texture {
pigment {Yellow}
}
}
object {path rotate y*45 translate <-5, 0, -5>}
//GROUP ALL METAL PARTS AND RING TOGETHER
#declare metal_large_group = union{
object {ring}
object {metal_part}
object {metal_part rotate y*90}
object {metal_part rotate y*-90}
object {metal_part rotate y*180}
object {metal_p1}
object {metal_p1 rotate y*90}
object {metal_p1 rotate y*-90}
object {metal_p1 rotate y*180}
object{metal_p2 }
object{metal_p2 rotate y*90}
object{metal_p2 rotate y*-90}
object{metal_p2 rotate y*180}
object {metal_large }
object {metal_large rotate y*90}
object {metal_large rotate y*-90}
object {metal_large rotate y*180}
}
object{metal_large_group}
object{metal_large_group translate y*39 scale 0.65 pigment {White}}
#declare ladder_p1 = cylinder {
<-25, -15, -25>,
<-25, 26, -25>, 0.8
}
#declare ladder_p2 = cylinder {
<-22, -15, -26>,
<-22, 25.8, -26>, 0.3
}
#declare ladder_step = cylinder {
<-22, 24, -26>,
<-28, 24, -26>, 0.3
}
#declare ladder_steps_group = union{
object {ladder_step}
object {ladder_step translate y*-2}
object {ladder_step translate y*-4}
object {ladder_step translate y*-6}
object {ladder_step translate y*-8}
object {ladder_step translate y*-10}
object {ladder_step translate y*-12}
object {ladder_step translate y*-14}
object {ladder_step translate y*-16}
object {ladder_step translate y*-18}
object {ladder_step translate y*-20}
object {ladder_step translate y*-22}
object {ladder_step translate y*-24}
object {ladder_step translate y*-26}
object {ladder_step translate y*-28}
object {ladder_step translate y*-30}
object {ladder_step translate y*-32}
object {ladder_step translate y*-34}
object {ladder_step translate y*-36}
object {ladder_step translate y*2}
}
#declare ladder_handles = cylinder {
<-1, 66, -6>,
<-8.5, 66, -13>, 0.3
}
object {ladder_handles pigment {Blue}}
object {ladder_handles translate <-4.2, 0, 4.2> pigment {Blue}}
#declare ladder_group = union{
object {ladder_p1}
object {ladder_p2}
object {ladder_p2 translate x*-6}
object {ladder_steps_group}
translate <2.5,>
}
object{ladder_group rotate <45,> translate <-8, -9, -40> pigment{Green}}
object{ladder_group rotate <0,> translate <22,> pigment{Green}}
object{ladder_p1 rotate <45,> translate <40.5,> pigment{Green}}
object{ladder_p1 rotate <45,> translate <-40.5, -11, 5.5> pigment{Green}}
object{ladder_p1 rotate <45,> translate <5.5,> pigment{Green}}
//LADDER 2
///////////////BARRIER
#declare barrier1 = cylinder {
<-16.75, 25.5, -22>,
<-16.75, 31.1, -22>, 0.3
}
#declare barrier2 = cylinder {
<-17, 31, -22>,
<17,>, 0.3
}
#declare barrier = union{
object {barrier1 }
object {barrier1 translate x*33.5 }
object {barrier2 }
}
#declare barrier_group = union{
object {barrier}
object {barrier rotate y*90 }
object {barrier rotate y*180 }
object {barrier rotate y*-90 }
}
object{barrier_group pigment{Blue}}
Friday, December 12, 2008
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment