Konstruktion der Details:
1. Ein Bogen(arch) als Differenz eines Quaders(box) und eines Zylinders:
Der abzuziehende Körper muß dabei eindeutig über den
Körper, von dem er abgezogen wird hinausragen.
//----------------- Bogen (arch) --------------------
#declare Arch = difference{
box {<-1.1,0,-0.1>,< 1.1,1.1,0.1>}
cylinder {<0,0,-0.11>,<0,0,0.11>,0.9 }
texture{pigment{color White}
normal {bumps 0.4 scale 0.007}
finish {diffuse 0.9 phong 1}}
}//--------------------------------------------------
2. Ein Pfeiler(pillar) aus einem Kegelstumpf(cone) mit Ringen (torus)
an beiden Enden:
//------------- Pfeiler (pillar) --------------------
#declare Pillar = union{
torus{0.10,0.05 translate<0,1.45,0>}
torus{0.12,0.05 translate<0,0.04,0>}
cone {<0,0,0>,0.12,<0,1.5,0>,0.1}
texture{pigment{color White}
normal {bumps 0.4 scale 0.007}
finish {diffuse 0.9 phong 1}}
}//---------------------------------------------------
3. Vier Bögen wird auf vier Pfeiler platzieren und das Ganze
auf eine Treppen-Pyramide angehoben.
#declare Arches =
union{// --------Bogen auf Säulen --------------------
object{Pillar translate<-1,0,-1>}
object{Pillar translate< 1,0,-1>}
object{Pillar translate<-1,0, 1>}
object{Pillar translate< 1,0, 1>}
object{Arch rotate<0, 0,0> translate< 0,1.5, 1>}
object{Arch rotate<0, 0,0> translate< 0,1.5,-1>}
object{Arch rotate<0,90,0> translate< 1,1.5, 0>}
object{Arch rotate<0,90,0> translate<-1,1.5, 0>}
} // --- Ende Bogen auf Säulen --
#declare Steps =
union{ // --------------------Treppen ----------------
box{<-1.20,0.30,-1.20>,<1.20,0.45,1.20>}
box{<-1.50,0.15,-1.50>,<1.50,0.30,1.50>}
box{<-1.80,0.00,-1.80>,<1.80,0.15,1.80>}
texture{T_Stone8 scale 0.3 pigment{quick_color White}
normal {bumps 0.4 scale 0.007}
finish {diffuse 0.9 phong 1}}
}//---------------------Ende Treppen ----------------
Und schließlich:
4. Alles zusammen in einer "union" zusammengefasst kann als
neuer Korper beliebig transformiert werden.
// -------- all together now -----------
union{object{Arches translate<0,0.45,0>}
object{Steps}
scale <1,1,1>
rotate<0,0,0>
translate<0,0,0>
}// end of union
//---------------------------------- end
|
|
|