// // kurpitsa-ani-1 // // POVRAY (3.5) model of Viestikallio Kurpitsa, v.1 by OH2MQK on 9-May-2002 // // Commandline to use to do the animation: // // povray +Ikurpitsa-ani-1.pov +KI0.0 +KF1.0 +KFI0 +KFF30 +KC +UL +UV +W400 +H300 -V -D +A +FP +Okurpitsa-ani-1.ppm // // And then ImageMagic's convert: // // convert -loop 0 -delay 30 kurpitsa-ani-1??.ppm kurpitsa-ani-1.gif // #declare XlucentGray = texture { pigment { color rgbf < 1 1 1 0.75> } finish { ambient 0.3 specular 0.1 roughness 0.03125 } } #declare SolidWhite = texture { pigment { color rgbf < 1 1 1 0> } finish { ambient 0.3 specular 0.5 roughness 0.078125 } } #declare SolidRed = texture { pigment { color rgbf < 1 0 0 0> } finish { ambient 0.4 specular 0.5 roughness 0.078125 } } #declare SolidGreen = texture { pigment { color rgbf < 0 1 0 0> } finish { ambient 0.3 specular 0.5 roughness 0.078125 } } #declare SolidBlue = texture { pigment { color rgbf < 0 0 1 0> } finish { ambient 0.3 specular 0.5 roughness 0.078125 } } #declare SolidYellow = texture { pigment { color rgbf < 1 1 0 0> } finish { ambient 0.3 specular 0.5 roughness 0.078125 } } #declare SolidRed2 = texture { pigment { color rgbf < 0.8 0 0 0> } finish { ambient 0.8 specular 0.5 roughness 0.078125 } } #declare XlucentRed2 = texture { pigment { color rgbf < 0.8 0 0 0.2> } finish { ambient 0.7 specular 0.502 roughness 0.03125 } } global_settings { assumed_gamma 1.3 } camera { // orthographic location <160, 80, 80> look_at <0, 8, 0> angle 15 } union { // -------------------- long wrapper for animation rotation ---------------- light_source { <-400, 400, -400> color rgb <1,1,1> } height_field { pgm "kurpitsa-ani-hf.pgm" // smooth texture { SolidWhite } scale <40, 10, 40> translate <-21, -3.5, -21> } // foundation walls union { box { <-10.0, -3, -9.2>, <-9.8, -0.2, 9.2> } box { <-10.0, -3, -9.2>, < 9.0, -0.2, -8.8> } box { < 8.8, -3, -9.2>, < 9.0, -0.2, 9.2> } box { <-10.0, -3, 8.8>, < 9.0, -0.2, 9.2> } box { <-10.0, -3, -3.2>, < 9.0, -0.2, -2.8> } box { <-10.0, -3, 3.2>, < 9.0, -0.2, 2.8> } box { <-10.0, -3, -20 >, < 9.0, -0.2, -9.0> } box { <-10.0, -3, 9.0>, < 9.0, -0.2, 15.0> } texture { SolidGreen } } // Telescope and radome center lifted to 11.9 meters. // Radome model; Translucent 0.20 thick surface difference { sphere { // Outer surface <0, 11.9, 0>, 10 } union { // Inner form to be extracted cylinder { <0,0,0>, <0,7,0>, 8.3 } sphere { <0, 11.9, 0>, 9.80 } } texture { XlucentGray } hollow } // Cylinderical walls difference { cylinder { <0, 0, 0>, <0, 5, 0>, 8.5 } cylinder { <0, 0, 0>, <0, 5, 0>, 8.3 open } texture { SolidGreen } } // Base pillar for telescope cylinder { <0, -3, 0>, <0, 9.9, 0>, 1.25 texture { SolidRed } } // Telescope object { union { union { lathe { linear_spline 17, <0.4, 0.0>, <1.7, 0.25>, <2.8, 0.47>, <3.8, 0.8>, <5.1, 1.4>, // 5 <6.4, 2.1>, <6.9, 2.6>, <6.9, 2.5>, <6.4, 2.0>, <5.1, 0.3>, // 10 <1.8, -1.6>, <1.8, -1.8>, <1.6, -1.8>, <1.6, -1.6>, <0.5, -0.1>, // 15 <0.4, -0.1>, <0.4, 0.0> // 17 texture { SolidYellow } } lathe { linear_spline 4, <0.0, 5.8>, <0.6, 6.0>, <0.6, 6.2>, <0.0, 6.2> texture { SolidGreen } } translate <0, 3.2, 0> rotate <0-90, 0, 0> } box { <-1, -2, -1>, <1, 1, 1> texture { SolidGreen } } box { <-1, -2, 1>, <1, -1, 4> texture { SolidGreen } } // Spin the system around the AZ rotate <0, 155 + 360*clock, 0> // Shift it up to the top of the pole translate <0, 11.9, 0> } } // Base slab for the building union { box { <-10, -.3, -20>, <9, 0, 15> texture { SolidYellow } } box { <-9, -.3, -9>, <9, 0, 9> texture { SolidYellow } } } // Door box { <7.9, 0, -2>, <9.1, 3, 2> texture { SolidBlue } } // Building difference { // Constructed thing // union { prism { linear_sweep linear_spline -15, 20, 6, <-10, 0>, <-10, 3>, <0, 5>, <8.6, 3>, <8.6, 0>, <-10, 0> rotate <-90, 0, 0> } //} // Thing to be extracted //union { difference { cylinder { <0, 0, 0>, <0, 5, 0>, 8.0 } union { box { <-9, -1, -9>, < 9, 6, -5> } // box { <-9, -1, -9>, <-5, 6, 9> } // box { <-9, -1, 9>, < 9, 6, 6> } // } } //} texture { XlucentRed2 } // TRANSLUCENT! } rotate <0, 360*clock, 0> } // ------------------- end of animation rotation wrapper ---------------------