// MC930 - Computacao Grafica
// Segundo  exercicio de laboratorio - 05/10/2000
// Luis Arthur Micai Nunes   RA: 971106

background { color rgb < 1.00, 1.00, 1.00 > }

light_source { <20, 20.00, 0.00 > 
    color rgb <1.00, 1.00, 1.00>
    }

camera {
    location < 16.00, 14.00, -2.00 >
    look_at  < 0.00, 1.00, 14.00 >
    }

#declare chassi_baixo =
	box {
		< 3.0, 3.0, 3.0 >,
		<10.0, 5.0, 17.0>
		texture { pigment { color rgb < 0.00, 0.00, 1.00 > }
		}
	} 

#declare chassi_alto =
	box {
		< 3.0, 5.0, 9.0 >,
		< 10.0, 7.0, 12.0 >
	texture { pigment { color rgb < 0.00, 0.00, 1.00 > } 
		}
	}

#declare para_brisa = 
	cylinder {
		< 3.00, 5.00, 9.00 >,
		< 10.00, 5.00, 9.00 >,
		2
		texture {pigment { color rgb < 0.00, 0.00, 1.00 > }
		}
	}

#declare roda =
	cylinder {
		< 2.90, 3.00, 6.00 >,
		< 4.00, 3.00, 6.00 >,
		1
		texture { pigment { color rgb < 0.00, 0.00, 0.00 > }
		}
	} 

#declare calota =
	sphere {
		< 10.00, 3.00, 6.00 >,
		0.5
		texture { pigment { color rgb < 1.00, 1.00, 0.00 > }
		}
	}

#declare haste =
	cylinder {
		< 6.50, 7.00, 9.5>,
		< 6.50, 11.00, 9.5>,
		0.5
		texture { pigment { color rgb < 0.80, 0.80, 0.00 > }
		}
	}

#declare helice =
	box { 
		< 2.5, 11, 14 >,
		< 11, 11, 14.5 >
		texture { pigment { color rgb <0.95, 0.95, 0.00 > }
		}
	}

#declare pa =
	box {
		< 2.5, 11, 11 >,
		< 5.5, 11, 10 >
		texture { pigment { color rgb <0.70, 0.70, 0.00 > }
		}
	}

#declare simbolo =
	sphere {
		<6,4,3>,
		1
		texture { pigment { color rgb <0,0,0>}
		}
	}

#declare vidro = 
	cylinder {
		<3.5, 5, 9>,
		<9.5, 5, 9>,
		1.9
		texture {pigment {color rgb <0.90,0.9,0.9> }
		}
	}


union {
	difference {
		object { chassi_baixo }
		object { simbolo
			scale <4,1,1>
		 }
	}
	object { chassi_alto}
	object { para_brisa }
	object { para_brisa
			translate < 0.00, 0.00, 3.00 >
	}
	object { roda }
	object { roda
			translate < 6.20, 0.00, 0.00 >
	}
	object { roda
			translate <6.20, 0.00, 6.00 >
	}
	object { roda
			translate <0.00, 0.00, 6.00>
	}
	object { calota }
	object { calota
			translate < 0.00, 0.00, 6.00 >
	}
	object { calota
			translate < -7.00, 0.00, 0.00 >
	}
	object { calota
			translate < -7.00, 0.00, 6.00 >
	}
	object { haste }
	object { helice
			translate <0, 0, -4.90>
	 }
	object { pa
		translate <0, 0, -0.5>
	 }
	object { pa
		translate <5.75, 0, -1.5>
	}
	object { vidro
		translate <0,0,-0.3> }
}