//------------------------------------------------------
#declare Walltex =
texture{pigment{color White}
finish {diffuse 0.9 phong 1}}
#declare Rooftex =
texture{pigment{color rgb<0.4,0,0>}
finish {diffuse 0.9 phong 1}}
// muro di sostegno ---------------------------------
#declare Muro_S =
box {<-15.3,-6,-0.3 >,< 15.3, 0.2,0.3> rotate<-5,0,0>
texture{Walltex}}
// 4 muri di sostegno ------------------------------
object{Muro_S rotate<0, 0,0> translate< 0,-0.25,-15>}
object{Muro_S rotate<0,180,0> translate< 0,-0.25, 15>}
object{Muro_S rotate<0, 90,0> translate<-15,-0.25, 0>}
object{Muro_S rotate<0,-90,0> translate< 15,-0.25, 0>}
//----------------------- Torre ------------------------
#declare TR = 2.0; // raggio della torre
#declare TH = 5.0; // altezza
//------------------------------------------------------
#declare Torre = union{ //definiert oggeto "Torre"
cone{<0,-TH,0>,TR+1.0,<0,0,0>,TR texture{Walltex}}
cylinder {<0,0.0,0>,<0, TH,0>,TR texture{Walltex}}
cylinder {<0,0.0,0>,<0,0.1,0>,2.05 texture{Walltex}}
cylinder {<0,2.5,0>,<0,2.6,0>,2.05 texture{Walltex}}
cone{<0,0,0>,TR+0.5,<0,TR+0.5,0>,0
translate<0,TH,0> texture{Rooftex}}
cone{<0,0,0>,TR -0.2,<0,2*TR+0.5,0>,0
translate<0,TH,0> texture{Rooftex}}
}// ------------ end of tower - fino della torre ------
//------------------ the walls - i muri ------------
#declare Muro = union{
box {<-4 , 0,-0.3>,< 4,3.5,0.3> }
box {<-4.5,-6,-0.3>,<4.5, 0,0.3> rotate<-5,0,0>}
texture{Walltex}}
// --------------- tutto insieme -----------
// ---------------- "Torre" ai 4 angoli --------
object{ Torre translate<-6, 0,-6>}
object{ Torre translate< 6, 0,-6>}
object{ Torre translate< 6, 0, 6>}
object{ Torre translate<-6, 0, 6>}
// ---------------- 4 muri ---------------------
difference{
object{Muro} // Muro con buco --------------
box{<-1,0,-0.4>,<1,2,0.4> texture{Walltex}}
cylinder{<0,2,-0.5>,<0,2,0.5>,1 texture{Walltex}}
translate< 0, 0,-6>}
object{Muro rotate<0, 0, 0> translate< 0, 0, 6>}
object{Muro rotate<0, 90, 0> translate<-6, 0, 0>}
object{Muro rotate<0,-90, 0> translate< 6, 0, 0>}
// ------------------- piano dentro --------------------
box {<-6,-4,-6>,< 6,0.01,6>
texture{pigment{color Gray90}
finish {diffuse 0.9 phong 1}}}
//-------------------------------------------------end-- |