#version 3.7; // Scene file developd by Sven Littkowski, C 2020. // Credits for the twisted ropes go to BaldEagle // a long-time member of the POV-Ray community. #declare UseRadiosity = on; global_settings { assumed_gamma 1.2 #if(UseRadiosity=on) radiosity { pretrace_start 0.08 pretrace_end 0.04 count 35 nearest_count 5 error_bound 0.2 recursion_limit 1 low_error_factor .5 gray_threshold 0.0 minimum_reuse 0.015 brightness 1 adc_bailout 0.01/2 } #end } #include "colors.inc" #include "textures.inc" #include "woods.inc" #include "metals.inc" #include "shapes3.inc" #include "SL - Human - 001.inc" // ---------------------------------------------------------------------------------- #declare TopColor = texture { T_Wood29 } texture { pigment { color rgbf < 0.8117647, 0.4823529, 0.2862745, 0.5 > } normal { wrinkles 0.15 scale 1.0 } } #declare BottomColor = texture { T_Wood29 } texture { pigment { color rgbf < 0.8117647, 0.4823529, 0.2862745, 0.5 > } normal { wrinkles 0.15 scale 1.0 } } #declare PlatformColor = texture { T_Wood29 } texture { pigment { color rgbf < 0.8117647, 0.4823529, 0.2862745, 0.5 > } normal { wrinkles 0.15 scale 1.0 } } #declare Rope = texture { pigment { color rgb < 0.7411765, 0.5607843, 0.3176471 > } normal { wrinkles 1.0 scale 0.05 } finish { crand 0.5 } } #declare Stone = texture { pigment { color rgb < 0.73, 0.55, 0.4 > } normal { wrinkles 1.0 scale 0.10 } finish { crand 0.5 } } #declare FrontShield = texture { T_Copper_2B normal { wrinkles 0.3 scale 1.0 } } #declare MyMeasure = pigment { image_map { png "C:\Users\Sven Littkowski\Documents\My Images\Textures\Ballista Measure.png" once } translate < 0.0, 0.0, 0.0 > rotate < 0.0, 0.0, 0.0 > } #declare Leather = texture { pigment { color rgb < 0.425, 0.175, 0.10 > } normal { average normal_map { [ crackle metric .3 turbulence 0.1 ] [ crackle metric .3 turbulence 0.1 scale .3] [ dents , -1.0 scale 0.01] } scale .2 } finish { specular 0.4 roughness 0.02 } scale 0.5 } #declare RustyIron = texture { pigment { spherical turbulence < 1.0, 1.0, 1.0 > omega 1.0 lambda 6.0 color_map { [ 0.1 color rgb < 0.478431, 0.513725, 0.462745 > ] } } normal { boxed 30.0 turbulence < 1.0, 1.0, 1.0 > omega 1.0 lambda 6.0 frequency 15.0 } finish { ambient rgb < 0.0, 0.0, 0.0 > diffuse 0.3 specular 0.6 conserve_energy reflection { rgb < 0.1, 0.1, 0.1 > metallic 1.0 } } scale 75.0 } texture { pigment { rgbf < 0.5372549, 0.3176471, 0.2117647, 0.75 > } normal { wrinkles 0.3 scale 1.0 } } #declare RotateAround = 0.0 ; // 30 = behind / 120 = right side / 210 = front / 300 = left side #declare RotateUpDown = -20.0 ; #declare NavyVersion = on; #declare AmmunitionType = "Stone"; // Stone / Arrow #declare ShowLadder = on; #declare TopLightStrength = 0.5; // ---------------------------------------------------------------------------------- camera { location < 9.5, 1.5, -5.5 > right x*image_width/image_height look_at < 0.0, 3.5, 2.0 > } light_source { < -4.0, 0.5, 0.0 > color rgb < 0.3, 0.05, 0.0 > * 1.0 } union { light_source { < -10000.0, 50000.0, -25000.0 > color rgb < 1.0, 1.0, 1.0 > * TopLightStrength } light_source { < -12000.0, 50000.0, -25000.0 > color rgb < 1.0, 1.0, 1.0 > * TopLightStrength } light_source { < -14000.0, 50000.0, -25000.0 > color rgb < 1.0, 1.0, 1.0 > * TopLightStrength } light_source { < -16000.0, 50000.0, -25000.0 > color rgb < 1.0, 1.0, 1.0 > * TopLightStrength } light_source { < -18000.0, 50000.0, -25000.0 > color rgb < 1.0, 1.0, 1.0 > * TopLightStrength } light_source { < -20000.0, 50000.0, -25000.0 > color rgb < 1.0, 1.0, 1.0 > * TopLightStrength } translate < 100000.0, 0.0, 0.0 > } // ---------------------------------------------------------------------------------- #declare Adjuster = difference { cone { < 0.0, 0.1, 0.0 > 0.45 < 0.0, 0.2, 0.0 > 0.35 } box { < -1.0, 0.0, -1.0 > < -0.05, 0.5, 1.0 > } box { < 1.0, 0.0, -1.0 > < 0.05, 0.5, 1.0 > } } #declare Stand = union { union { box { < -1.75, 0.0000, -0.15 > < 1.75, 0.1500, 0.15 > translate < 0.0, 0.0, -0.5 > texture { BottomColor rotate < 0.0, 0.0, 90.0 > } } box { < -1.75, 0.0000, -0.15 > < 1.75, 0.1500, 0.15 > translate < 0.0, 0.0, 0.5 > texture { BottomColor rotate < 0.0, 0.0, 90.0 > } } box { < -0.15, 0.0000, -2.20 > < 0.15, 0.1500, 2.20 > texture { BottomColor rotate < 0.0, 90.0, 90.0 > } } box { < -0.13, 1.2 , -0.35 > < 0.13, 1.5 , 0.35 > texture { BottomColor rotate < 0.0, 90.0, 90.0 > } } box { < -0.13, 2.7 , -0.35 > < 0.13, 3.0 , 0.35 > texture { BottomColor rotate < 0.0, 90.0, 90.0 > } } #if(NavyVersion=on) translate < 0.0, 0.35, 0.0 > #end } union { box { < -0.15, 0.1501, -0.15 > < 0.15, 3.00, 0.15 > translate < 0.0, 0.0, -0.5 > texture { BottomColor rotate < 90.0, 0.0, 0.0 > } } box { < -0.15, 0.1501, -0.15 > < 0.15, 3.00, 0.15 > translate < 0.0, 0.0, 0.5 > texture { BottomColor rotate < 90.0, 0.0, 0.0 > } } cylinder { < 0.0, 2.35, -0.7 > < 0.0, 2.35, 0.7 > 0.075 texture { BottomColor } } union { box { < -0.2, -0.2, -0.35 > < 0.2, 0.2, 0.35 > texture { BottomColor } } difference // diagonal height adjuster { box { < 0.2, -0.15, -0.20 > < 5.0, 0.15, 0.20 > } #for(Runde,1.6,4.60,0.3) box { < -0.1, 0.075, -0.1 > < 0.1, 0.2, 0.1 > translate < Runde, 0.0, 0.0 > } #end texture { BottomColor rotate < 0.0, 90.0, 0.0 > } } box { < 4.75, -0.16, -0.21 > < 4.995, 0.16, 0.21 > texture { RustyIron } } #if(NavyVersion=on) #declare MyAdjusterAngle=-31.0; #elseif(NavyVersion=off) #declare MyAdjusterAngle=-27.0; #end rotate < 0.0, 0.0, MyAdjusterAngle > translate < 0.0, 2.35, 0.0 > } #if(NavyVersion=on) translate < 0.0, 0.35, 0.0 > #end } union // diagonals { box { < 0.00, -0.3001, -0.13 > < 2.00, 0.00, 0.13 > texture { BottomColor rotate < 0.0, 90.0, 90.0 > } rotate < 0.0, 0.0, -45.0 > translate < 0.0, 1.5, -0.5 > } box { < 0.00, -0.3001, -0.13 > < 2.00, 0.00, 0.13 > texture { BottomColor rotate < 0.0, 90.0, 90.0 > } rotate < 0.0, 0.0, -45.0 > translate < 0.0, 1.5, 0.5 > } box { < 0.00, -0.3001, -0.13 > < 2.00, 0.00, 0.13 > texture { BottomColor rotate < 0.0, 90.0, 90.0 > } rotate < 0.0, 0.0, -45.0 > translate < 0.0, 1.5, -0.5 > rotate < 0.0, 180.0, 0.0 > } box { < 0.00, -0.3001, -0.13 > < 2.00, 0.00, 0.13 > texture { BottomColor rotate < 0.0, 90.0, 90.0 > } rotate < 0.0, 0.0, -45.0 > translate < 0.0, 1.5, 0.5 > rotate < 0.0, 180.0, 0.0 > } box { < 0.00, -0.3001, -0.13 > < 2.00, 0.00, 0.13 > texture { BottomColor rotate < 0.0, 90.0, 90.0 > } rotate < 0.0, 0.0, -45.0 > translate < 0.0, 1.5, 0.0 > rotate < 0.0, -90.0, 0.0 > translate < 0.0, 0.0, 0.50 > } box { < 0.00, -0.3001, -0.13 > < 2.00, 0.00, 0.13 > texture { BottomColor rotate < 0.0, 90.0, 90.0 > } rotate < 0.0, 0.0, -45.0 > translate < 0.0, 1.5, 0.0 > rotate < 0.0, 90.0, 0.0 > translate < 0.0, 0.0, -0.50 > } #if(NavyVersion=on) translate < 0.0, 0.35, 0.0 > #end } union // metal top { cylinder { < 0.10, 2.8, -0.60 > < 0.10, 3.2, -0.60 > 0.1 } cylinder { < -0.10, 2.8, -0.60 > < -0.10, 3.2, -0.60 > 0.1 } cylinder { < 0.10, 2.8, 0.60 > < 0.10, 3.2, 0.60 > 0.1 } cylinder { < -0.10, 2.8, 0.60 > < -0.10, 3.2, 0.60 > 0.1 } box { < -0.20, 2.8, -0.60 > < 0.20, 3.2, 0.60 > } box { < -0.10, 2.8, -0.70 > < 0.10, 3.2, 0.70 > } cylinder { < 0.00, 3.65, -0.60 > < 0.00, 3.65, -0.45 > 0.15 } cylinder { < 0.00, 3.65, 0.45 > < 0.00, 3.65, 0.60 > 0.15 } box { < -0.20, 3.20, -0.60 > < 0.20, 3.70, -0.45 > } box { < -0.20, 3.20, 0.45 > < 0.20, 3.70, 0.60 > } sphere { < 0.00, 3.65, 0.00 > 0.075 scale < 1.0, 1.0, 0.5 > translate < 0.0, 0.0, -0.60 > } sphere { < 0.00, 3.65, 0.00 > 0.075 scale < 1.0, 1.0, 0.5 > translate < 0.0, 0.0, 0.60 > } texture { RustyIron } #if(NavyVersion=on) translate < 0.0, 0.35, 0.0 > #end } #if(NavyVersion=on) difference // navy platform { union { box { < -0.195, 0.25, -2.2 > < 0.195, 0.35, 2.2 > translate < -2.00, 0.0, 0.0 > } box { < -0.195, 0.25, -2.2 > < 0.195, 0.35, 2.2 > translate < -1.60, 0.0, 0.0 > } box { < -0.195, 0.25, -2.2 > < 0.195, 0.35, 2.2 > translate < -1.20, 0.0, 0.0 > } box { < -0.195, 0.25, -2.2 > < 0.195, 0.35, 2.2 > translate < -0.80, 0.0, 0.0 > } box { < -0.195, 0.25, -2.2 > < 0.195, 0.35, 2.2 > translate < -0.40, 0.0, 0.0 > } box { < -0.195, 0.25, -2.2 > < 0.195, 0.35, 2.2 > translate < 0.00, 0.0, 0.0 > } box { < -0.195, 0.25, -2.2 > < 0.195, 0.35, 2.2 > translate < 0.40, 0.0, 0.0 > } box { < -0.195, 0.25, -2.2 > < 0.195, 0.35, 2.2 > translate < 0.80, 0.0, 0.0 > } box { < -0.195, 0.25, -2.2 > < 0.195, 0.35, 2.2 > translate < 1.20, 0.0, 0.0 > } box { < -0.195, 0.25, -2.2 > < 0.195, 0.35, 2.2 > translate < 1.60, 0.0, 0.0 > } box { < -0.195, 0.25, -2.2 > < 0.195, 0.35, 2.2 > translate < 2.00, 0.0, 0.0 > } } difference { cylinder { < 0.0, 0.00, 0.0 > < 0.0, 0.355, 0.0 > 4.00 } cylinder { < 0.0, -0.01, 0.0 > < 0.0, 0.356, 0.0 > 2.20 } } texture { PlatformColor } } cylinder { < 0.0, 0.3, 0.0 > < 0.0, 0.34, 0.0 > 2.20 pigment { color rgb 0.0 } } // navy platform #end rotate < 0.0, RotateAround, 0.0 > } // ---------------------------------------------------------------------------------- #declare DeckFixing = union { difference // navy platform { cylinder { < 0.0, 0.00, 0.0 > < 0.0, 0.355, 0.0 > 2.25 } cylinder { < 0.0, -0.01, 0.0 > < 0.0, 0.356, 0.0 > 2.20 } texture { RustyIron } } union // navy platform fixing on deck { #for(Runde,0.0,360.0,45.0) box { < 2.2, 0.0, -0.2 > < 2.4, 0.05, 0.2 > rotate < 0.0, Runde, 0.0 > } sphere { < 0.0, 0.0, 0.0 > 0.035 scale < 1.0, 0.25, 1.0 > translate < 2.325, 0.05, -0.125 > rotate < 0.0, Runde, 0.0 > } sphere { < 0.0, 0.0, 0.0 > 0.035 scale < 1.0, 0.25, 1.0 > translate < 2.325, 0.05, 0.125 > rotate < 0.0, Runde, 0.0 > } #end texture { RustyIron } } } // ---------------------------------------------------------------------------------- #declare Engine = union { box { < -2.3, -0.2, -0.45 > < 1.5, 0.19, 0.45 > texture { TopColor rotate < 0.0, 0.0, 90.0 > } } // lower box for stand difference // lower box for stand { box { < 0.0, 0.0, -0.45 > < 1.0, 0.4, 0.45 > rotate < 0.0, 0.0, 20.0 > translate < 1.5, -0.2, 0.0 > } box { < 0.0, 0.19, -0.56 > < 4.0, 1.0, 0.56 > } texture { TopColor rotate < 0.0, 0.0, 90.0 > } } difference // main launch rail { box { < -2.7, 0.2, -0.45 > < 4.5, 0.7, 0.45 > } box { < -2.8, 0.4, -0.35 > < 4.6, 0.8, 0.35 > } texture { TopColor rotate < 0.0, 0.0, 90.0 > } texture { MyMeasure scale < 1.0, 0.2, 1.0 > translate < 3.15, 0.5, 0.0 > } } union // side metal square { box { < -2.25, -0.15, -0.46 > < 1.4, 0.55, -0.45 > } box { < -2.25, -0.15, 0.45 > < 1.4, 0.55, 0.46 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 1.0, 1.0, 0.25 > translate < -0.10, 0.00, -0.46 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 1.0, 1.0, 0.25 > translate < -0.10, 0.35, -0.46 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 1.0, 1.0, 0.25 > translate < 0.225, 0.00, -0.46 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 1.0, 1.0, 0.25 > translate < 0.225, 0.35, -0.46 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 1.0, 1.0, 0.25 > translate < 0.55, 0.00, -0.46 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 1.0, 1.0, 0.25 > translate < 0.55, 0.35, -0.46 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 1.0, 1.0, 0.25 > translate < 0.875, 0.00, -0.46 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 1.0, 1.0, 0.25 > translate < 0.875, 0.35, -0.46 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 1.0, 1.0, 0.25 > translate < 1.20, 0.00, -0.46 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 1.0, 1.0, 0.25 > translate < 1.20, 0.35, -0.46 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 1.0, 1.0, 0.25 > translate < -0.10, 0.00, 0.46 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 1.0, 1.0, 0.25 > translate < -0.10, 0.35, 0.46 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 1.0, 1.0, 0.25 > translate < 0.225, 0.00, 0.46 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 1.0, 1.0, 0.25 > translate < 0.225, 0.35, 0.46 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 1.0, 1.0, 0.25 > translate < 0.55, 0.00, 0.46 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 1.0, 1.0, 0.25 > translate < 0.55, 0.35, 0.46 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 1.0, 1.0, 0.25 > translate < 0.875, 0.00, 0.46 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 1.0, 1.0, 0.25 > translate < 0.875, 0.35, 0.46 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 1.0, 1.0, 0.25 > translate < 1.20, 0.00, 0.46 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 1.0, 1.0, 0.25 > translate < 1.20, 0.35, 0.46 > } texture { RustyIron } } difference // thick ending { box { < 3.5, 0.2, -0.55 > < 6.5, 0.9, 0.55 > } box { < 3.2, 0.1, -0.46 > < 4.51, 1.1, 0.46 > } box { < 3.2, 0.1, -0.35 > < 6.4, 1.1, 0.35 > } box { < 3.4, 0.7, -0.56 > < 5.0, 1.1, 0.56 > } box { < -1.0, 0.0, -0.56 > < 0.0, 1.0, 0.56 > rotate < 0.0, 0.0, -70.0 > translate < 5.0, 0.7, 0.0 > } texture { TopColor rotate < 0.0, 0.0, 90.0 > } texture { MyMeasure scale < 1.0, 0.2, 1.0 > translate < 3.15, 0.5, 0.0 > } } union // end metal square { box { < 6.5, 0.20, -0.56 > < 6.51, 0.9, 0.56 > } box { < 5.6, 0.20, -0.56 > < 6.51, 0.9, -0.55 > } height_field // heightfields { png "C:\Users\Sven Littkowski\Documents\My Images\Textures\Rome Deco Lion - 003.png" water_level 0.1 smooth rotate < 0.0, 90.0, 0.0 > translate < 0.0, 0.0, 0.5 > rotate < 0.0, 0.0, 90.0 > scale < 0.075, 0.7, 0.8 > scale < -1.0, 1.0, 1.0 > translate < 6.49, 0.20, 0.0 > // pigment { Gray50 } finish { Glossy } // } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 1.0, 1.0, 0.25 > translate < 5.700, 0.30, -0.56 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 1.0, 1.0, 0.25 > translate < 5.700, 0.80, -0.56 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 1.0, 1.0, 0.25 > translate < 5.925, 0.30, -0.56 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 1.0, 1.0, 0.25 > translate < 5.925, 0.80, -0.56 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 1.0, 1.0, 0.25 > translate < 6.175, 0.30, -0.56 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 1.0, 1.0, 0.25 > translate < 6.175, 0.80, -0.56 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 1.0, 1.0, 0.25 > translate < 6.400, 0.30, -0.56 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 1.0, 1.0, 0.25 > translate < 6.400, 0.80, -0.56 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 1.0, 1.0, 0.25 > translate < 5.700, 0.30, 0.56 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 1.0, 1.0, 0.25 > translate < 5.700, 0.80, 0.56 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 1.0, 1.0, 0.25 > translate < 5.925, 0.30, 0.56 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 1.0, 1.0, 0.25 > translate < 5.925, 0.80, 0.56 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 1.0, 1.0, 0.25 > translate < 6.175, 0.30, 0.56 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 1.0, 1.0, 0.25 > translate < 6.175, 0.80, 0.56 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 1.0, 1.0, 0.25 > translate < 6.400, 0.30, 0.56 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 1.0, 1.0, 0.25 > translate < 6.400, 0.80, 0.56 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 0.25, 1.0, 1.0 > translate < 6.51, 0.30, -0.475 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 0.25, 1.0, 1.0 > translate < 6.51, 0.55, -0.475 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 0.25, 1.0, 1.0 > translate < 6.51, 0.80, -0.475 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 0.25, 1.0, 1.0 > translate < 6.51, 0.30, 0.475 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 0.25, 1.0, 1.0 > translate < 6.51, 0.55, 0.475 > } sphere { < 0.0, 0.0, 0.0 > 0.05 scale < 0.25, 1.0, 1.0 > translate < 6.51, 0.80, 0.475 > } texture { RustyIron } } union // beams across { box { < -0.05, 0.2, -0.35 > < 0.05, 0.65, 0.35 > translate < 4.5, 0.0, 0.0 > } box { < -0.05, 0.2, -0.35 > < 0.05, 0.65, 0.35 > translate < 5.0, 0.0, 0.0 > } box { < -0.05, 0.2, -0.35 > < 0.05, 0.65, 0.35 > translate < 5.5, 0.0, 0.0 > } texture { TopColor rotate < 0.0, 90.0, 90.0 > } } union // winch { union { #for(Runde,-0.35,0.35,0.05) torus { 0.125, 0.025 rotate < 90.0, 0.0, 0.0 > translate < 6.05, 0.6, Runde > } #end texture { Rope } } union // clockwork { cylinder { < 4.25, 0.725, 0.0 > < 6.05, 0.725, 0.0 > 0.025 texture { Rope } } // rope cylinder { < 6.05, 0.6, -0.7 > < 6.05, 0.6, 0.7 > 0.125 } #for(Runde,0.0,360,30) box { < -0.15, -0.15, -0.70 > < 0.15, 0.15, -0.57 > rotate < 0.0, 0.0, Runde > translate < 6.05, 0.6, 0.0 > } box { < -0.15, -0.15, 0.57 > < 0.15, 0.15, 0.70 > rotate < 0.0, 0.0, Runde > translate < 6.05, 0.6, 0.0 > } #end box { < -0.09, -0.09, -1.11 > < 0.09, 0.09, 1.11 > rotate < 0.0, 0.0, 55.0 > translate < 6.05, 0.6, 0.0 > } texture { RustyIron } } } difference // winch outside { cylinder { < 0.0, 0.0, -1.1 > < 0.0, 0.0, 1.1 > 0.3 } cylinder { < 0.0, 0.0, -0.7 > < 0.0, 0.0, 0.7 > 0.31 } box { < -0.1, -0.5, -0.1 > < 0.1, 0.5, 0.1 > translate < 0.0, 0.0, -0.85 > } box { < -0.1, -0.5, -0.1 > < 0.1, 0.5, 0.1 > translate < 0.0, 0.0, 0.85 > } box { < -0.5, -0.1, -0.1 > < 0.5, 0.1, 0.1 > translate < 0.0, 0.0, -0.85 > } box { < -0.5, -0.1, -0.1 > < 0.5, 0.1, 0.1 > translate < 0.0, 0.0, 0.85 > } rotate < 0.0, 0.0, 55.0 > translate < 6.05, 0.6, 0.0 > texture { TopColor rotate < 0.0, 0.0, 90.0 > } } union // winch arm { box { < -0.10, -0.10, -0.10 > < 0.10, 0.00, 0.10 > } object // Pyramid_N ( Sides, Radius1, Radius2, Height ) { Pyramid_N( 4, 0.075, 0.050, 0.65 ) } box { < -0.10, 0.00, -0.10 > < 0.10, 0.05, 0.10 > } object // Pyramid_N ( Sides, Radius1, Radius2, Height ) { Pyramid_N( 4, 0.04, 0.01, 0.75 ) translate < 0.0, 0.65, 0.0 > } cylinder { < 0.0, 0.0, 0.0 > < 0.0, 1.50, 0.0 > 0.04 } texture { BottomColor rotate < 90.0, 0.0, 0.0 > } translate < 0.0, 0.3, 0.0 > rotate < 0.0, 0.0, 000+55.0 > translate < 6.05, 0.6, -0.85 > } union // winch arm { box { < -0.10, -0.10, -0.10 > < 0.10, 0.00, 0.10 > } object // Pyramid_N ( Sides, Radius1, Radius2, Height ) { Pyramid_N( 4, 0.075, 0.050, 0.65 ) } box { < -0.10, 0.00, -0.10 > < 0.10, 0.05, 0.10 > } object // Pyramid_N ( Sides, Radius1, Radius2, Height ) { Pyramid_N( 4, 0.04, 0.01, 0.75 ) translate < 0.0, 0.65, 0.0 > } cylinder { < 0.0, 0.0, 0.0 > < 0.0, 1.50, 0.0 > 0.04 } texture { BottomColor rotate < 90.0, 0.0, 0.0 > } translate < 0.0, 0.3, 0.0 > rotate < 0.0, 0.0, 270+55.0 > translate < 6.05, 0.6, 0.85 > } union // launch switch { union // launch switch left { difference { cylinder { < 0.0, 0.0, -0.1 > < 0.0, 0.0, 0.0 > 0.1 } box { < 0.0, -0.2, -0.2 > < 0.2, 0.2, 0.1 > } } cylinder { < 0.55, 0.05, -0.15 > < 0.55, 0.05, 0.6 > 0.025 } box { < 0.0, 0.0, -0.1 > < 1.0, 0.1, 0.0 > } box { < 0.9, 0.0, -0.1 > < 1.0, 0.1, 0.6 > } box { < 0.0, -0.1, -0.1 > < 0.1, 0.0, 0.0 > } translate < -0.55, 0.05, 0.0 > rotate < 0.0, 0.0, 10.0 > translate < 0.55, -0.05, 0.0 > translate < 5.8, 0.8, -0.56 > texture { RustyIron } } union // launch switch right { difference { cylinder { < 0.0, 0.0, -0.1 > < 0.0, 0.0, 0.0 > 0.1 } box { < 0.0, -0.2, -0.2 > < 0.2, 0.2, 0.1 > } } cylinder { < 0.55, 0.05, -0.15 > < 0.55, 0.05, 0.6 > 0.025 } box { < 0.0, 0.0, -0.1 > < 1.0, 0.1, 0.0 > } box { < 0.9, 0.0, -0.1 > < 1.0, 0.1, 0.6 > } box { < 0.0, -0.1, -0.1 > < 0.1, 0.0, 0.0 > } translate < -0.55, 0.05, 0.0 > rotate < 0.0, 0.0, 10.0 > translate < 0.55, -0.05, 0.0 > translate < 5.8, 0.8, -0.56 > scale < 1.0, 1.0, -1.0 > } texture { RustyIron } } union // wooden nails { box { < -0.025, -0.025, -0.56 > < 0.025, 0.025, -0.55 > translate < 3.65, 0.55, 0.0 > } box { < -0.025, -0.025, 0.56 > < 0.025, 0.025, 0.55 > translate < 3.65, 0.55, 0.0 > } box { < -0.025, -0.025, -0.56 > < 0.025, 0.025, -0.55 > translate < 3.65, 0.35, 0.0 > } box { < -0.025, -0.025, 0.56 > < 0.025, 0.025, 0.55 > translate < 3.65, 0.35, 0.0 > } box { < -0.025, -0.025, -0.56 > < 0.025, 0.025, -0.55 > translate < 3.95, 0.55, 0.0 > } box { < -0.025, -0.025, 0.56 > < 0.025, 0.025, 0.55 > translate < 3.95, 0.55, 0.0 > } box { < -0.025, -0.025, -0.56 > < 0.025, 0.025, -0.55 > translate < 3.95, 0.35, 0.0 > } box { < -0.025, -0.025, 0.56 > < 0.025, 0.025, 0.55 > translate < 3.95, 0.35, 0.0 > } box { < -0.025, -0.025, -0.56 > < 0.025, 0.025, -0.55 > translate < 4.25, 0.55, 0.0 > } box { < -0.025, -0.025, 0.56 > < 0.025, 0.025, 0.55 > translate < 4.25, 0.55, 0.0 > } box { < -0.025, -0.025, -0.56 > < 0.025, 0.025, -0.55 > translate < 4.25, 0.35, 0.0 > } box { < -0.025, -0.025, 0.56 > < 0.025, 0.025, 0.55 > translate < 4.25, 0.35, 0.0 > } box { < -0.025, -0.025, -0.56 > < 0.025, 0.025, -0.55 > translate < 4.5, 0.55, 0.0 > } box { < -0.025, -0.025, 0.56 > < 0.025, 0.025, 0.55 > translate < 4.5, 0.55, 0.0 > } box { < -0.025, -0.025, -0.56 > < 0.025, 0.025, -0.55 > translate < 4.5, 0.35, 0.0 > } box { < -0.025, -0.025, 0.56 > < 0.025, 0.025, 0.55 > translate < 4.5, 0.35, 0.0 > } box { < -0.025, -0.025, -0.56 > < 0.025, 0.025, -0.55 > translate < 5.0, 0.55, 0.0 > } box { < -0.025, -0.025, 0.56 > < 0.025, 0.025, 0.55 > translate < 5.0, 0.55, 0.0 > } box { < -0.025, -0.025, -0.56 > < 0.025, 0.025, -0.55 > translate < 5.0, 0.35, 0.0 > } box { < -0.025, -0.025, 0.56 > < 0.025, 0.025, 0.55 > translate < 5.0, 0.35, 0.0 > } box { < -0.025, -0.025, -0.56 > < 0.025, 0.025, -0.55 > translate < 5.5, 0.55, 0.0 > } box { < -0.025, -0.025, 0.56 > < 0.025, 0.025, 0.55 > translate < 5.5, 0.55, 0.0 > } box { < -0.025, -0.025, -0.56 > < 0.025, 0.025, -0.55 > translate < 5.5, 0.35, 0.0 > } box { < -0.025, -0.025, 0.56 > < 0.025, 0.025, 0.55 > translate < 5.5, 0.35, 0.0 > } texture { TopColor } } union // ammunition skid { difference { box { < 0.0, 0.4, -0.34 > < 4.3, 1.0, 0.34 > } cylinder { < -0.01, 1.0, 0.0 > < 4.0, 1.0, 0.0 > 0.251 } texture { TopColor } } cylinder { < 4.15, 0.9, -0.45 > < 4.15, 0.9, 0.45 > 0.025 texture { RustyIron } } // marker pole difference { cylinder { < 0.00, 1.0, 0.0 > < 4.0, 1.0, 0.0 > 0.255 } cylinder { < -0.10, 1.0, 0.0 > < 4.1, 1.0, 0.0 > 0.250 } box { < -0.10, 1.0, -0.3 > < 4.1, 1.3, 0.3 > } texture { RustyIron } } box { < 4.0, 0.401, -0.251 > < 4.30, 1.25, 0.251 > texture { TopColor } } union // metal at the end { box { < 3.999, 0.401, -0.25 > < 4.301, 1.251, 0.25 > } texture { RustyIron } } } union // rings for ropes { torus { 0.15, 0.05 rotate < 90.0, 0.0, 0.0 > translate < 4.15, 1.25, 0.0 > } // top torus { 0.15, 0.05 rotate < 0.0, 0.0, 0.0 > translate < 4.3, 0.725+0.025, 0.0 > } // back texture { RustyIron } } union // ropes around rings { torus { 0.05, 0.025 rotate < 90.0, 0.0, 0.0 > translate < 4.45, 0.725+0.025, 0.0 > } // back torus { 0.05, 0.025 rotate < 0.0, 0.0, 0.0 > translate < 4.15-0.15, 1.275, 0.0 > } // top texture { Rope } } union // height adjuster { difference // height adjuster hindges { union { box { < 2.5, 0.15, -0.4 > < 3.0, 0.2, 0.4 > } difference { cylinder { < 2.75, 0.15, -0.4 > < 2.75, 0.15, 0.4 > 0.15 } cylinder { < 2.75, 0.15, -0.5 > < 2.75, 0.15, 0.5 > 0.10 } } } box { < 2.4, -0.1, -0.3 > < 3.1, 0.3, 0.3 > } texture { RustyIron } } union // height adjuster stick { cylinder { < 0.0, 0.0, -0.5 > < 0.0, 0.0, 0.5 > 0.05 texture { RustyIron } } cylinder { < 0.0, 0.0, -0.3 > < 0.0, 0.0, 0.3 > 0.10 texture { RustyIron } } box { < -0.1, -0.2, -0.3 > < 0.1, 0.0, 0.3 > texture { RustyIron } } box { < -0.09, -2.2, -0.09 > < 0.09, 0.0, 0.09 > texture { TopColor rotate < 90.0, 0.0, 0.0 > } } rotate < 0.0, 0.0, 33.0 > translate < 2.75, 0.1, 0.0 > } } #if(AmmunitionType="Stone") sphere { < 0.0, 0.0, 0.0 > 0.25 texture { Stone } translate < 3.75, 1.0, 0.0 > } // ammunition #end union // top & bottom wooden plates { box { < -2.5, -0.7, -2.25 > < -1.5, -0.2, 2.25 > } box { < -1.5, -0.7, -1.25 > < -0.50, -0.2, 1.25 > } cylinder { < -1.5, -0.7, -1.25 > < -1.5, -0.2, -1.25 > 1.0 } cylinder { < -1.5, -0.7, 1.25 > < -1.5, -0.2, 1.25 > 1.0 } box { < -2.5, 2.5, -2.25 > < -1.5, 3.0, 2.25 > } box { < -1.5, 2.5, -1.25 > < -0.50, 3.0, 1.25 > } cylinder { < -1.5, 2.5, -1.25 > < -1.5, 3.0, -1.25 > 1.0 } cylinder { < -1.5, 2.5, 1.25 > < -1.5, 3.0, 1.25 > 1.0 } texture { TopColor } } union // top & bottom metal plates { box { < -2.51, -0.6, -2.26 > < -1.5, -0.3, 2.26 > } box { < -1.5, -0.6, -1.24 > < -0.49, -0.3, 1.24 > } cylinder { < -1.5, -0.6, -1.25 > < -1.5, -0.3, -1.25 > 1.01 } cylinder { < -1.5, -0.6, 1.25 > < -1.5, -0.3, 1.25 > 1.01 } box { < -2.51, 2.6, -2.26 > < -1.5, 2.9, 2.26 > } box { < -1.5, 2.6, -1.24 > < -0.49, 2.9, 1.24 > } cylinder { < -1.5, 2.6, -1.25 > < -1.5, 2.9, -1.25 > 1.01 } cylinder { < -1.5, 2.6, 1.25 > < -1.5, 2.9, 1.25 > 1.01 } sphere { < 0.0, 0.0, 0.0 > 0.1 scale < 1.0, 1.0, 0.25 > translate < -2.0, -0.45, -2.26 > } sphere { < 0.0, 0.0, 0.0 > 0.1 scale < 1.0, 1.0, 0.25 > translate < -2.0, 2.75, -2.26 > } sphere { < 0.0, 0.0, 0.0 > 0.1 scale < 1.0, 1.0, 0.25 > translate < -2.0, -0.45, 2.26 > } sphere { < 0.0, 0.0, 0.0 > 0.1 scale < 1.0, 1.0, 0.25 > translate < -2.0, 2.75, 2.26 > } sphere { < 0.0, 0.0, 0.0 > 0.1 scale < 1.0, 1.0, 0.25 > translate < 0.0, 0.0, -1.01 > rotate < 0.0, -45.0, 0.0 > translate < -1.5, -0.45, -1.25 > } sphere { < 0.0, 0.0, 0.0 > 0.1 scale < 1.0, 1.0, 0.25 > translate < 0.0, 0.0, -1.01 > rotate < 0.0, -45.0, 0.0 > translate < -1.5, 2.75, -1.25 > } sphere { < 0.0, 0.0, 0.0 > 0.1 scale < 1.0, 1.0, 0.25 > translate < 0.0, 0.0, -1.01 > rotate < 0.0, 45.0, 0.0 > translate < -1.5, -0.45, 1.25 > } sphere { < 0.0, 0.0, 0.0 > 0.1 scale < 1.0, 1.0, 0.25 > translate < 0.0, 0.0, -1.01 > rotate < 0.0, 45.0, 0.0 > translate < -1.5, 2.75, 1.25 > } sphere { < 0.0, 0.0, 0.0 > 0.1 scale < 0.25, 1.0, 1.0 > translate < -0.49, -0.45, -1.20 > } sphere { < 0.0, 0.0, 0.0 > 0.1 scale < 0.25, 1.0, 1.0 > translate < -0.49, 2.75, -1.20 > } sphere { < 0.0, 0.0, 0.0 > 0.1 scale < 0.25, 1.0, 1.0 > translate < -0.49, -0.45, 1.20 > } sphere { < 0.0, 0.0, 0.0 > 0.1 scale < 0.25, 1.0, 1.0 > translate < -0.49, 2.75, 1.20 > } sphere { < 0.0, 0.0, 0.0 > 0.1 scale < 0.25, 1.0, 1.0 > translate < -0.49, -0.45, 0.00 > } sphere { < 0.0, 0.0, 0.0 > 0.1 scale < 0.25, 1.0, 1.0 > translate < -0.49, 2.75, 0.00 > } texture { RustyIron } } union // inner vertical plates { box { < -2.30, -0.2, -0.8 > < -0.51, 2.5, -0.45 > } box { < -2.30, -0.2, 0.8 > < -0.51, 2.5, 0.45 > } box { < -2.449, -0.2, -0.8 > < -0.51, 2.5, -0.51 > } box { < -2.449, -0.2, 0.8 > < -0.51, 2.5, 0.51 > } texture { TopColor rotate < 90.0, 0.0, 0.0 > } } union // inner vertical plates bolts { sphere { < 0.0, 0.0, 0.0 > 0.1 scale < 1.0, 1.0, 0.25 > translate < -0.95, 0.05, -0.8 > } sphere { < 0.0, 0.0, 0.0 > 0.1 scale < 1.0, 1.0, 0.25 > translate < -1.40, 0.05, -0.8 > } sphere { < 0.0, 0.0, 0.0 > 0.1 scale < 1.0, 1.0, 0.25 > translate < -1.85, 0.05, -0.8 > } sphere { < 0.0, 0.0, 0.0 > 0.1 scale < 1.0, 1.0, 0.25 > translate < -0.95, 0.05, 0.8 > } sphere { < 0.0, 0.0, 0.0 > 0.1 scale < 1.0, 1.0, 0.25 > translate < -1.40, 0.05, 0.8 > } sphere { < 0.0, 0.0, 0.0 > 0.1 scale < 1.0, 1.0, 0.25 > translate < -1.85, 0.05, 0.8 > } sphere { < 0.0, 0.0, 0.0 > 0.1 scale < 1.0, 1.0, 0.25 > translate < -0.95, 0.40, -0.8 > } sphere { < 0.0, 0.0, 0.0 > 0.1 scale < 1.0, 1.0, 0.25 > translate < -1.40, 0.40, -0.8 > } sphere { < 0.0, 0.0, 0.0 > 0.1 scale < 1.0, 1.0, 0.25 > translate < -1.85, 0.40, -0.8 > } sphere { < 0.0, 0.0, 0.0 > 0.1 scale < 1.0, 1.0, 0.25 > translate < -0.95, 0.40, 0.8 > } sphere { < 0.0, 0.0, 0.0 > 0.1 scale < 1.0, 1.0, 0.25 > translate < -1.40, 0.40, 0.8 > } sphere { < 0.0, 0.0, 0.0 > 0.1 scale < 1.0, 1.0, 0.25 > translate < -1.85, 0.40, 0.8 > } texture { RustyIron } } box { < -2.44, -0.20, -0.60 > < -2.3, 2.5, -1.84 > texture { TopColor rotate < 90.0, 0.0, 0.0 > } } // wooden front plates box { < -2.44, -0.20, 0.60 > < -2.3, 2.5, 1.84 > texture { TopColor rotate < 90.0, 0.0, 0.0 > } } // wooden front plates box { < -2.44, 2.15, -0.60 > < -2.3, 2.5, 0.60 > texture { TopColor rotate < 90.0, 0.0, 0.0 > } } // wooden front plates union // outer vertical plates { difference // vertical { box { < -2.49, -0.2, -2.24 > < -1.50, 2.5, -1.84 > } cylinder { < -1.40, 1.15, -2.25 > < -1.40, 1.15, -1.83 > 0.40 } } difference // vertical { box { < -2.49, -0.2, 2.24 > < -1.50, 2.5, 1.84 > } cylinder { < -1.40, 1.15, 2.25 > < -1.40, 1.15, 1.83 > 0.40 } } difference // rounded front { cylinder { < -0.80, 1.15, -2.24 > < -0.80, 1.15, -1.84 > 2.0 } box { < -2.49, -2.5, -2.25 > < 5.0, 4.5, -1.83 > } } difference // rounded front { cylinder { < -0.80, 1.15, 2.24 > < -0.80, 1.15, 1.84 > 2.0 } box { < -2.49, -2.5, 2.25 > < 5.0, 4.5, 1.83 > } } texture { TopColor rotate < 90.0, 0.0, 0.0 > } } #declare MyDiameter = 0.66; #declare MyWidth = 0.199999; union { difference { object { Supertorus ( MyDiameter, MyWidth, // Radius_Major, Radius_Minor, 1.00, 0.45, // Major_Control, Minor_Control, 0.001, 1.50 // Accuracy, Max_Gradient) ) rotate < 90.0, 0.0, -90.0 > scale < 1.0, 1.0, 1.0 > translate < -1.25, 1.15, -2.04 > } box { < -1.50001, 0.20, -2.5 > < 0.0, 2.10, -1.5 > } texture { Leather } } difference { object { Supertorus ( MyDiameter, MyWidth, // Radius_Major, Radius_Minor, 1.00, 0.45, // Major_Control, Minor_Control, 0.001, 1.50 // Accuracy, Max_Gradient) ) rotate < 90.0, 0.0, -90.0 > scale < 1.0, 1.0, 1.0 > translate < -1.25, 1.15, 2.04 > } box { < -1.50001, 0.20, 2.5 > < 0.0, 2.10, 1.5 > } texture { Leather } } sphere { < 0.0, 0.0, 0.0 > 0.025 scale < 0.25, 1.0, 1.0 > translate < -0.365, 0.0, 0.0 > rotate < 0.0, 0.0, 60.0 > translate < -1.40, 1.15, -2.11 > texture { RustyIron } } sphere { < 0.0, 0.0, 0.0 > 0.025 scale < 0.25, 1.0, 1.0 > translate < -0.365, 0.0, 0.0 > rotate < 0.0, 0.0, 60.0 > translate < -1.40, 1.15, -1.97 > texture { RustyIron } } sphere { < 0.0, 0.0, 0.0 > 0.025 scale < 0.25, 1.0, 1.0 > translate < -0.365, 0.0, 0.0 > rotate < 0.0, 0.0, -60.0 > translate < -1.40, 1.15, -2.11 > texture { RustyIron } } sphere { < 0.0, 0.0, 0.0 > 0.025 scale < 0.25, 1.0, 1.0 > translate < -0.365, 0.0, 0.0 > rotate < 0.0, 0.0, -60.0 > translate < -1.40, 1.15, -1.97 > texture { RustyIron } } sphere { < 0.0, 0.0, 0.0 > 0.025 scale < 0.25, 1.0, 1.0 > translate < -0.365, 0.0, 0.0 > rotate < 0.0, 0.0, 60.0 > translate < -1.40, 1.15, 2.11 > texture { RustyIron } } sphere { < 0.0, 0.0, 0.0 > 0.025 scale < 0.25, 1.0, 1.0 > translate < -0.365, 0.0, 0.0 > rotate < 0.0, 0.0, 60.0 > translate < -1.40, 1.15, 1.97 > texture { RustyIron } } sphere { < 0.0, 0.0, 0.0 > 0.025 scale < 0.25, 1.0, 1.0 > translate < -0.365, 0.0, 0.0 > rotate < 0.0, 0.0, -60.0 > translate < -1.40, 1.15, 2.11 > texture { RustyIron } } sphere { < 0.0, 0.0, 0.0 > 0.025 scale < 0.25, 1.0, 1.0 > translate < -0.365, 0.0, 0.0 > rotate < 0.0, 0.0, -60.0 > translate < -1.40, 1.15, 1.97 > texture { RustyIron } } } union // front metal plate { difference { cylinder { < -0.80, 1.15, -2.24 > < -0.80, 1.15, -1.83 > 2.01 } cylinder { < -0.80, 1.15, -2.25 > < -0.80, 1.15, -1.84 > 2.0 } box { < -2.49, -2.5, -2.25 > < 5.0, 4.5, -1.82 > } } difference { cylinder { < -0.80, 1.15, 2.24 > < -0.80, 1.15, 1.83 > 2.01 } cylinder { < -0.80, 1.15, 2.25 > < -0.80, 1.15, 1.84 > 2.0 } box { < -2.49, -2.5, 2.25 > < 5.0, 4.5, 1.82 > } } box { < -2.5, -0.2, -2.24 > < -2.49, 2.5, -1.84 > } // Sides box { < -2.5, -0.2, 2.24 > < -2.49, 2.5, 1.84 > } // Sides box { < -2.51, -0.7, -2.25 > < -2.5, -0.2, 2.25 > } // bottom box { < -2.53, -0.6, -2.25 > < -2.5, -0.3, 2.25 > } // bottom box { < -2.51, 2.5, -2.25 > < -2.5, 3.0, 2.25 > } // top box { < -2.53, 2.6, -2.25 > < -2.5, 2.9, 2.25 > } // top difference // center { box { < -2.45, -0.2, -1.84 > < -2.44, 2.5, 1.84 > } box { < -2.5, -0.2, -0.51 > < -2.4, 1.7, 0.51 > } cylinder { < -2.5, 1.7, 0.0 > < -2.4, 1.7, 0.0 > 0.51 } } box { < -2.48, -0.2, -0.08 > < -2.45, 1.7, 0.08 > translate < 0.0, 0.0, -0.6 > } box { < -2.48, -0.2, -0.08 > < -2.45, 1.7, 0.08 > translate < 0.0, 0.0, 0.6 > } box { < -2.48, -0.2, -0.08 > < -2.45, 1.7, 0.08 > translate < 0.0, 0.0, -1.8 > } box { < -2.48, -0.2, -0.08 > < -2.45, 1.7, 0.08 > translate < 0.0, 0.0, 1.8 > } difference // upper arc { cylinder { < -2.48, 1.7, 0.0 > < -2.44, 1.7, 0.0 > 0.68 } cylinder { < -2.50, 1.7, 0.0 > < -2.40, 1.7, 0.0 > 0.52 } box { < -2.50, 1.0, -0.7 > < -2.40, 1.7, 1.7 > } translate < 0.0, 0.0, -1.2 > } difference // upper arc { cylinder { < -2.48, 1.7, 0.0 > < -2.44, 1.7, 0.0 > 0.68 } cylinder { < -2.50, 1.7, 0.0 > < -2.40, 1.7, 0.0 > 0.52 } box { < -2.50, 1.0, -0.7 > < -2.40, 1.7, 1.7 > } translate < 0.0, 0.0, 0.0 > } difference // upper arc { cylinder { < -2.48, 1.7, 0.0 > < -2.44, 1.7, 0.0 > 0.68 } cylinder { < -2.50, 1.7, 0.0 > < -2.40, 1.7, 0.0 > 0.52 } box { < -2.50, 1.0, -0.7 > < -2.40, 1.7, 1.7 > } translate < 0.0, 0.0, 1.2 > } difference // upper arc { cylinder { < -2.49, 1.7, 0.0 > < -2.48, 1.7, 0.0 > 0.64 } cylinder { < -2.51, 1.7, 0.0 > < -2.47, 1.7, 0.0 > 0.56 } box { < -2.50, 1.0, -0.7 > < -2.45, 1.725, 1.7 > } translate < 0.0, 0.0, -1.2 > } difference // upper arc { cylinder { < -2.49, 1.7, 0.0 > < -2.48, 1.7, 0.0 > 0.64 } cylinder { < -2.51, 1.7, 0.0 > < -2.47, 1.7, 0.0 > 0.56 } box { < -2.50, 1.0, -0.7 > < -2.45, 1.725, 1.7 > } translate < 0.0, 0.0, 0.0 > } difference // upper arc { cylinder { < -2.49, 1.7, 0.0 > < -2.48, 1.7, 0.0 > 0.64 } cylinder { < -2.51, 1.7, 0.0 > < -2.47, 1.7, 0.0 > 0.56 } box { < -2.50, 1.0, -0.7 > < -2.45, 1.725, 1.7 > } translate < 0.0, 0.0, 1.2 > } union // horizontal lines { box { < -2.465, 1.71, -1.83 > < -2.45, 1.81, -0.60 > } box { < -2.465, 1.59, -1.83 > < -2.45, 1.69, -0.60 > } box { < -2.465, 1.71, 1.83 > < -2.45, 1.81, 0.60 > } box { < -2.465, 1.59, 1.83 > < -2.45, 1.69, 0.60 > } box { < -2.465, 0.21, -1.83 > < -2.45, 0.31, -0.60 > } box { < -2.465, 0.09, -1.83 > < -2.45, 0.19, -0.60 > } box { < -2.465, 0.21, 1.83 > < -2.45, 0.21, 0.60 > } box { < -2.465, 0.09, 1.83 > < -2.45, 0.19, 0.60 > } } union // bolts { // upper and lower sphere { < 0.0, 0.0, 0.0 > 0.1 scale < 0.25, 1.0, 1.0 > translate < -2.53, -0.45, -1.2 > } sphere { < 0.0, 0.0, 0.0 > 0.1 scale < 0.25, 1.0, 1.0 > translate < -2.53, -0.45, 0.0 > } sphere { < 0.0, 0.0, 0.0 > 0.1 scale < 0.25, 1.0, 1.0 > translate < -2.53, -0.45, 1.2 > } sphere { < 0.0, 0.0, 0.0 > 0.1 scale < 0.25, 1.0, 1.0 > translate < -2.53, 2.75, -1.2 > } sphere { < 0.0, 0.0, 0.0 > 0.1 scale < 0.25, 1.0, 1.0 > translate < -2.53, 2.75, 0.0 > } sphere { < 0.0, 0.0, 0.0 > 0.1 scale < 0.25, 1.0, 1.0 > translate < -2.53, 2.75, 1.2 > } // sides sphere { < 0.0, 0.0, 0.0 > 0.1 scale < 0.25, 1.0, 1.0 > translate < -2.50, -0.05, -2.04 > } sphere { < 0.0, 0.0, 0.0 > 0.1 scale < 0.25, 1.0, 1.0 > translate < -2.50, -0.05, 2.04 > } sphere { < 0.0, 0.0, 0.0 > 0.1 scale < 0.25, 1.0, 1.0 > translate < -2.80, 1.15, -2.04 > } sphere { < 0.0, 0.0, 0.0 > 0.1 scale < 0.25, 1.0, 1.0 > translate < -2.80, 1.15, 2.04 > } sphere { < 0.0, 0.0, 0.0 > 0.1 scale < 0.25, 1.0, 1.0 > translate < -2.50, 2.35, -2.04 > } sphere { < 0.0, 0.0, 0.0 > 0.1 scale < 0.25, 1.0, 1.0 > translate < -2.50, 2.35, 2.04 > } } height_field // heightfields { png "C:\Users\Sven Littkowski\Documents\My Images\Textures\Rome Deco Column - 001.png" water_level 0.1 smooth rotate < 0.0, 90.0, 0.0 > translate < 0.0, 0.0, 0.5 > rotate < 0.0, 0.0, 90.0 > scale < 0.04, 1.35, 0.16 > scale 1.425 translate < -2.45, -0.2, -1.8 > } height_field // heightfields { png "C:\Users\Sven Littkowski\Documents\My Images\Textures\Rome Deco Column - 001.png" water_level 0.1 smooth rotate < 0.0, 90.0, 0.0 > translate < 0.0, 0.0, 0.5 > rotate < 0.0, 0.0, 90.0 > scale < 0.04, 1.35, 0.16 > scale 1.425 translate < -2.45, -0.2, -0.6 > } height_field // heightfields { png "C:\Users\Sven Littkowski\Documents\My Images\Textures\Rome Deco Column - 001.png" water_level 0.1 smooth rotate < 0.0, 90.0, 0.0 > translate < 0.0, 0.0, 0.5 > rotate < 0.0, 0.0, 90.0 > scale < 0.04, 1.35, 0.16 > scale 1.425 translate < -2.45, -0.2, 0.6 > } height_field // heightfields { png "C:\Users\Sven Littkowski\Documents\My Images\Textures\Rome Deco Column - 001.png" water_level 0.1 smooth rotate < 0.0, 90.0, 0.0 > translate < 0.0, 0.0, 0.5 > rotate < 0.0, 0.0, 90.0 > scale < 0.04, 1.35, 0.16 > scale 1.425 translate < -2.45, -0.2, 1.8 > } height_field // heightfields { png "C:\Users\Sven Littkowski\Documents\My Images\Textures\Rome Deco Mars - 001.png" water_level 0.1 smooth rotate < 0.0, 90.0, 0.0 > translate < 0.0, 0.0, 0.5 > rotate < 0.0, 0.0, 90.0 > scale < 0.01, 1.274, 0.520 > scale < 1.0, 1.0, -1.0 > translate < -2.45, 0.3, 1.2 > } height_field // heightfields { png "C:\Users\Sven Littkowski\Documents\My Images\Textures\Rome Deco Mars - 001.png" water_level 0.1 smooth rotate < 0.0, 90.0, 0.0 > translate < 0.0, 0.0, 0.5 > rotate < 0.0, 0.0, 90.0 > scale < 0.01, 1.274, 0.520 > scale < 1.0, 1.0, 1.0 > translate < -2.45, 0.3, -1.2 > } height_field // heightfields { png "C:\Users\Sven Littkowski\Documents\My Images\Textures\Rome Deco SPQR Eagle - 001.png" water_level 0.1 smooth rotate < 0.0, 90.0, 0.0 > translate < 0.0, 0.0, 0.5 > rotate < 0.0, 0.0, 90.0 > scale < 0.01, 0.35, 0.35 > scale < 1.0, 1.0, 1.0 > translate < -2.45, 1.815, 1.2 > } height_field // heightfields { png "C:\Users\Sven Littkowski\Documents\My Images\Textures\Rome Deco SPQR Eagle - 001.png" water_level 0.1 smooth rotate < 0.0, 90.0, 0.0 > translate < 0.0, 0.0, 0.5 > rotate < 0.0, 0.0, 90.0 > scale < 0.01, 0.35, 0.35 > scale < 1.0, 1.0, 1.0 > translate < -2.45, 1.815, -1.2 > } height_field // heightfields { png "C:\Users\Sven Littkowski\Documents\My Images\Textures\Rome Deco Grape - 001.png" water_level 0.1 smooth rotate < 0.0, 90.0, 0.0 > translate < 0.0, 0.0, 0.5 > rotate < 0.0, 0.0, 90.0 > scale < 0.01, 0.35, 1.31 > scale < 1.0, 1.0, 1.0 > translate < -2.45, -0.23, 1.2 > } height_field // heightfields { png "C:\Users\Sven Littkowski\Documents\My Images\Textures\Rome Deco Grape - 001.png" water_level 0.1 smooth rotate < 0.0, 90.0, 0.0 > translate < 0.0, 0.0, 0.5 > rotate < 0.0, 0.0, 90.0 > scale < 0.01, 0.35, 1.31 > scale < 1.0, 1.0, -1.0 > translate < -2.45, -0.23, -1.2 > // pigment { Gray20 } finish { Glossy } } texture { FrontShield } } union // sling arm { cylinder { < 0.0, -0.2, 0.0 > < 0.0, 2.5, 0.0 > 0.25 texture { TopColor rotate < 90.0, 0.0, 0.0 > } } union { union { #declare Ropes = union { #declare RopeR = 0.03; #for(Y,0,2.5,0.01) #local R = 0.25+RopeR; #switch(Y) #range(0.00,0.95) #declare Theta = (Y/0.95)*pi; #declare X = R*sin(Theta+pi); #declare Z = R*cos(Theta+pi); sphere {< X, Y, Z > RopeR } #break #range(0.95,1.35) #declare Theta = ((Y-0.95)/(1.35-0.95))*pi; #declare a = 0.2*0.2; //#declare X = 8*pow(a,3)/(pow(Y-1.15,2)+4*pow(a,2)); #declare X = 0.1*sin (Theta); //#declare Z = -R; sphere { < X, Y, Z > RopeR } #break #range(1.35,2.50) #declare Theta = ((Y-1.35)/(2.5-1.35))*pi; #declare X = R*sin(Theta+pi); #declare Z = R*cos(Theta); sphere { < X, Y, Z > RopeR } #break #end #end // pigment { Green } rotate y*25 } #for(R,0,20) object { Ropes rotate y*R*10 scale < 1.0, 1.0, 1.0 > } #end rotate < 0.0,180, 0.0 > texture { Rope } } union { #declare Ropes = union { #declare RopeR = 0.03; #for(Y,0,2.5,0.01) #local R = 0.28+RopeR; #switch(Y) #range(0.00,0.95) #declare Theta = (Y/0.95)*pi; #declare X = R*sin(Theta+pi); #declare Z = R*cos(Theta+pi); sphere {< X, Y, Z > RopeR } #break #range(0.95,1.35) #declare Theta = ((Y-0.95)/(1.35-0.95))*pi; #declare a = 0.2*0.2; //#declare X = 8*pow(a,3)/(pow(Y-1.15,2)+4*pow(a,2)); #declare X = 0.1*sin (Theta); //#declare Z = -R; sphere { < X, Y, Z > RopeR } #break #range(1.35,2.50) #declare Theta = ((Y-1.35)/(2.5-1.35))*pi; #declare X = R*sin(Theta+pi); #declare Z = R*cos(Theta); sphere { < X, Y, Z > RopeR } #break #end #end // pigment { Green } rotate y*25 } #for(R,0,20) object { Ropes rotate y*R*10 scale < -1.0, 1.0, 1.0 > } #end rotate < 0.0,180, 0.0 > texture { Rope } } scale < 1.0, 1.0, 1.0 > } difference { union { cylinder { < 0.0, -0.20, 0.0 > < 0.0, 0.00, 0.0 > 0.37 } cylinder { < 0.0, -0.20, 0.0 > < 0.0, -0.18, 0.0 > 0.45 } } cylinder { < 0.0, -0.21, 0.0 > < 0.0, 0.01 , 0.0 > 0.34 } texture { RustyIron } } difference { union { cylinder { < 0.0, 2.30, 0.0 > < 0.0, 2.50, 0.0 > 0.37 } cylinder { < 0.0, 2.48, 0.0 > < 0.0, 2.50, 0.0 > 0.45 } } cylinder { < 0.0, 2.29, 0.0 > < 0.0, 2.51 , 0.0 > 0.34 } texture { RustyIron } } cone { < 0.0, 1.15, -3.0 > 0.15 < 0.0, 1.15, 0.0 > 0.2 texture { TopColor } } box { < 0.0, 1.00, -3.0 > < 0.18, 1.30, -2.5 > texture { RustyIron } } cylinder { < 0.0, 1.15, -3.0 > < 0.0, 1.15, -2.9 > 0.17 texture { RustyIron } } cylinder { < 0.0, 1.15, -2.7 > < 0.0, 1.15, -2.6 > 0.18 texture { RustyIron } } torus { 0.15, 0.05 translate < 0.18, 1.15, -2.75 > texture { RustyIron } } sphere { < 0.0, 1.15, -3.0 > 0.15 texture { RustyIron } } cylinder { < 0.0, 1.15, -3.17 > < 0.0, 1.15, -3.0 > 0.1 texture { RustyIron } } height_field // heightfields { png "C:\Users\Sven Littkowski\Documents\My Images\Textures\Rome Deco Lion - 002.png" water_level 0.1 smooth rotate < 0.0, 90.0, 0.0 > translate < 0.0, 0.0, 0.5 > rotate < 0.0, 0.0, 90.0 > scale < 0.025, 0.175, 0.175 > rotate < 0.0, 90.0, 0.0 > scale < 1.0, 1.0, -1.0 > translate < 0.0, 1.0625, -3.17 > // pigment { Gray20 } finish { Glossy } // texture { RustyIron } } torus { 0.05, 0.025 rotate < 90.0, 0.0, 0.0 > translate < 0.33, 1.15, -2.75 > texture { Rope } } // // ropes around rings cylinder { < 0.33, 1.15, -2.75 > < 4.19, 1.275, -3.7825 > 0.025 texture { Rope } } union { object { Supertorus ( 0.175, 0.05, // Radius_Major, Radius_Minor, 1.00, 0.45, // Major_Control, Minor_Control, 0.001, 1.50 // Accuracy, Max_Gradient) ) rotate < 90.0, 0.0, 0.0 > scale < 1.0, 1.0, 1.0 > translate < 0.0, 1.15, -0.52 > } object { Supertorus ( 0.175, 0.05, // Radius_Major, Radius_Minor, 1.00, 0.45, // Major_Control, Minor_Control, 0.001, 1.50 // Accuracy, Max_Gradient) ) rotate < 90.0, 0.0, 0.0 > scale < 1.0, 1.0, 3.0 > translate < 0.0, 1.15, -0.72 > } object { Supertorus ( 0.175, 0.05, // Radius_Major, Radius_Minor, 1.00, 0.45, // Major_Control, Minor_Control, 0.001, 1.50 // Accuracy, Max_Gradient) ) rotate < 90.0, 0.0, 0.0 > scale < 1.0, 1.0, 1.0 > translate < 0.0, 1.15, -0.92 > } texture { Leather } } union { torus { 0.21, 0.02 rotate < 90.0, 0.0, 0.0 > translate < 0.0, 1.15, -0.62 > } torus { 0.21, 0.02 rotate < 90.0, 0.0, 0.0 > translate < 0.0, 1.15, -0.87 > } texture { Rope } } rotate < 0.0, -55.0, 0.0 > translate < -1.5, 0.0, -1.32 > } union // sling arm { cylinder { < 0.0, -0.2, 0.0 > < 0.0, 2.5, 0.0 > 0.25 texture { TopColor rotate < 90.0, 0.0, 0.0 > } } union { union { #declare Ropes = union { #declare RopeR = 0.03; #for(Y,0,2.5,0.01) #local R = 0.25+RopeR; #switch(Y) #range(0.00,0.95) #declare Theta = (Y/0.95)*pi; #declare X = R*sin(Theta+pi); #declare Z = R*cos(Theta+pi); sphere {< X, Y, Z > RopeR } #break #range(0.95,1.35) #declare Theta = ((Y-0.95)/(1.35-0.95))*pi; #declare a = 0.2*0.2; //#declare X = 8*pow(a,3)/(pow(Y-1.15,2)+4*pow(a,2)); #declare X = 0.1*sin (Theta); //#declare Z = -R; sphere { < X, Y, Z > RopeR } #break #range(1.35,2.50) #declare Theta = ((Y-1.35)/(2.5-1.35))*pi; #declare X = R*sin(Theta+pi); #declare Z = R*cos(Theta); sphere { < X, Y, Z > RopeR } #break #end #end // pigment { Green } rotate y*25 } #for(R,0,20) object { Ropes rotate y*R*10 scale < 1.0, 1.0, 1.0 > } #end rotate < 0.0,180, 0.0 > texture { Rope } } union { #declare Ropes = union { #declare RopeR = 0.03; #for(Y,0,2.5,0.01) #local R = 0.28+RopeR; #switch(Y) #range(0.00,0.95) #declare Theta = (Y/0.95)*pi; #declare X = R*sin(Theta+pi); #declare Z = R*cos(Theta+pi); sphere {< X, Y, Z > RopeR } #break #range(0.95,1.35) #declare Theta = ((Y-0.95)/(1.35-0.95))*pi; #declare a = 0.2*0.2; //#declare X = 8*pow(a,3)/(pow(Y-1.15,2)+4*pow(a,2)); #declare X = 0.1*sin (Theta); //#declare Z = -R; sphere { < X, Y, Z > RopeR } #break #range(1.35,2.50) #declare Theta = ((Y-1.35)/(2.5-1.35))*pi; #declare X = R*sin(Theta+pi); #declare Z = R*cos(Theta); sphere { < X, Y, Z > RopeR } #break #end #end // pigment { Green } rotate y*25 } #for(R,0,20) object { Ropes rotate y*R*10 scale < -1.0, 1.0, 1.0 > } #end rotate < 0.0,180, 0.0 > texture { Rope } } scale < 1.0, 1.0, -1.0 > } difference { union { cylinder { < 0.0, -0.20, 0.0 > < 0.0, 0.00, 0.0 > 0.37 } cylinder { < 0.0, -0.20, 0.0 > < 0.0, -0.18, 0.0 > 0.45 } } cylinder { < 0.0, -0.21, 0.0 > < 0.0, 0.01 , 0.0 > 0.34 } texture { RustyIron } } difference { union { cylinder { < 0.0, 2.30, 0.0 > < 0.0, 2.50, 0.0 > 0.37 } cylinder { < 0.0, 2.48, 0.0 > < 0.0, 2.50, 0.0 > 0.45 } } cylinder { < 0.0, 2.29, 0.0 > < 0.0, 2.51 , 0.0 > 0.34 } texture { RustyIron } } cone { < 0.0, 1.15, 3.0 > 0.15 < 0.0, 1.15, 0.0 > 0.2 texture { TopColor } } box { < 0.0, 1.00, 3.0 > < 0.18, 1.30, 2.5 > texture { RustyIron } } cylinder { < 0.0, 1.15, 3.0 > < 0.0, 1.15, 2.9 > 0.17 texture { RustyIron } } cylinder { < 0.0, 1.15, 2.7 > < 0.0, 1.15, 2.6 > 0.18 texture { RustyIron } } torus { 0.15, 0.05 translate < 0.18, 1.15, 2.75 > texture { RustyIron } } sphere { < 0.0, 1.15, 3.0 > 0.15 texture { RustyIron } } cylinder { < 0.0, 1.15, 3.17 > < 0.0, 1.15, 3.0 > 0.1 texture { RustyIron } } height_field // heightfields { png "C:\Users\Sven Littkowski\Documents\My Images\Textures\Rome Deco Lion - 002.png" water_level 0.1 smooth rotate < 0.0, 90.0, 0.0 > translate < 0.0, 0.0, 0.5 > rotate < 0.0, 0.0, 90.0 > scale < 0.025, 0.175, 0.175 > rotate < 0.0, 90.0, 0.0 > scale < 1.0, 1.0, 1.0 > translate < 0.0, 1.0625, 3.17 > // pigment { Gray20 } finish { Glossy } // texture { RustyIron } } torus { 0.05, 0.025 rotate < 90.0, 0.0, 0.0 > translate < 0.33, 1.15, 2.75 > texture { Rope } } // // ropes around rings cylinder { < 0.33, 1.15, 2.75 > < 4.19, 1.275, 3.7825 > 0.025 texture { Rope } } union { object { Supertorus ( 0.175, 0.05, // Radius_Major, Radius_Minor, 1.00, 0.45, // Major_Control, Minor_Control, 0.001, 1.50 // Accuracy, Max_Gradient) ) rotate < 90.0, 0.0, 0.0 > scale < 1.0, 1.0, 1.0 > translate < 0.0, 1.15, 0.52 > } object { Supertorus ( 0.175, 0.05, // Radius_Major, Radius_Minor, 1.00, 0.45, // Major_Control, Minor_Control, 0.001, 1.50 // Accuracy, Max_Gradient) ) rotate < 90.0, 0.0, 0.0 > scale < 1.0, 1.0, 3.0 > translate < 0.0, 1.15, 0.72 > } object { Supertorus ( 0.175, 0.05, // Radius_Major, Radius_Minor, 1.00, 0.45, // Major_Control, Minor_Control, 0.001, 1.50 // Accuracy, Max_Gradient) ) rotate < 90.0, 0.0, 0.0 > scale < 1.0, 1.0, 1.0 > translate < 0.0, 1.15, 0.92 > } texture { Leather } } union { torus { 0.21, 0.02 rotate < 90.0, 0.0, 0.0 > translate < 0.0, 1.15, 0.62 > } torus { 0.21, 0.02 rotate < 90.0, 0.0, 0.0 > translate < 0.0, 1.15, 0.87 > } texture { Rope } } rotate < 0.0, 55.0, 0.0 > translate < -1.5, 0.0, 1.32 > } union // ropes around rings { torus { 0.05, 0.025 rotate < 90.0, 0.0, 0.0 > translate < 4.45, 0.725+0.025, 0.0 > } // back torus { 0.05, 0.025 rotate < 0.0, 0.0, 0.0 > translate < 4.15-0.15, 1.275, 0.0 > } // top texture { Rope } } union // rope adjusters { cylinder { < 0.0, 0.000, 0.0 > < 0.0, 0.065, 0.0 > 0.55 texture { RustyIron } } cylinder { < 0.0, 0.065, 0.0 > < 0.0, 0.100, 0.0 > 0.50 texture { RustyIron } } union { #for(Runde,0,360,36) object { Adjuster rotate < 0.0, Runde, 0.0 >} #end texture { RustyIron } } cylinder { < 0.0, 0.100, 0.0 > < 0.0, 0.150 0.0 > 0.300 texture { RustyIron } } cylinder { < 0.0, 0.150, 0.0 > < 0.0, 0.225 0.0 > 0.350 texture { RustyIron } } cylinder { < 0.0, 0.225, 0.0 > < 0.0, 0.275 0.0 > 0.275 texture { TopColor rotate < 90.0, 0.0, 0.0 > } } cylinder { < 0.0, 0.275, 0.0 > < 0.0, 0.300 0.0 > 0.350 texture { RustyIron } } difference { cylinder { < 0.0, 0.300, 0.0 > < 0.0, 0.330 0.0 > 0.325 texture { RustyIron } } cylinder { < 0.0, 0.290, 0.0 > < 0.0, 0.360 0.0 > 0.30 texture { RustyIron } } } sphere { < 0.0, 0.225, 0.0 > 0.275 texture { RustyIron } } cylinder { < 0.0, 0.330, -0.45 > < 0.0, 0.330 0.45 > 0.025 rotate < 0.0, 30.0, 0.0 > texture { RustyIron } } scale < 1.0, -1.0, 1.0 > translate < -1.5, -0.7, -1.32 > } union // rope adjusters { cylinder { < 0.0, 0.000, 0.0 > < 0.0, 0.065, 0.0 > 0.55 texture { RustyIron } } cylinder { < 0.0, 0.065, 0.0 > < 0.0, 0.100, 0.0 > 0.50 texture { RustyIron } } union { #for(Runde,0,360,36) object { Adjuster rotate < 0.0, Runde, 0.0 >} #end texture { RustyIron } } cylinder { < 0.0, 0.100, 0.0 > < 0.0, 0.150 0.0 > 0.300 texture { RustyIron } } cylinder { < 0.0, 0.150, 0.0 > < 0.0, 0.225 0.0 > 0.350 texture { RustyIron } } cylinder { < 0.0, 0.225, 0.0 > < 0.0, 0.275 0.0 > 0.275 texture { TopColor rotate < 90.0, 0.0, 0.0 > } } cylinder { < 0.0, 0.275, 0.0 > < 0.0, 0.300 0.0 > 0.350 texture { RustyIron } } difference { cylinder { < 0.0, 0.300, 0.0 > < 0.0, 0.330 0.0 > 0.325 texture { RustyIron } } cylinder { < 0.0, 0.290, 0.0 > < 0.0, 0.360 0.0 > 0.30 texture { RustyIron } } } sphere { < 0.0, 0.225, 0.0 > 0.275 texture { RustyIron } } cylinder { < 0.0, 0.330, -0.45 > < 0.0, 0.330 0.45 > 0.025 rotate < 0.0, 30.0, 0.0 > texture { RustyIron } } scale < 1.0, -1.0, -1.0 > translate < -1.5, -0.7, 1.32 > } union // rope adjusters { cylinder { < 0.0, 0.000, 0.0 > < 0.0, 0.065, 0.0 > 0.55 texture { RustyIron } } cylinder { < 0.0, 0.065, 0.0 > < 0.0, 0.100, 0.0 > 0.50 texture { RustyIron } } union { #for(Runde,0,360,36) object { Adjuster rotate < 0.0, Runde, 0.0 >} #end texture { RustyIron } } cylinder { < 0.0, 0.100, 0.0 > < 0.0, 0.150 0.0 > 0.300 texture { RustyIron } } cylinder { < 0.0, 0.150, 0.0 > < 0.0, 0.225 0.0 > 0.350 texture { RustyIron } } cylinder { < 0.0, 0.225, 0.0 > < 0.0, 0.275 0.0 > 0.275 texture { TopColor rotate < 90.0, 0.0, 0.0 > } } cylinder { < 0.0, 0.275, 0.0 > < 0.0, 0.300 0.0 > 0.350 texture { RustyIron } } difference { cylinder { < 0.0, 0.300, 0.0 > < 0.0, 0.330 0.0 > 0.325 texture { RustyIron } } cylinder { < 0.0, 0.290, 0.0 > < 0.0, 0.360 0.0 > 0.30 texture { RustyIron } } } sphere { < 0.0, 0.225, 0.0 > 0.275 texture { RustyIron } } cylinder { < 0.0, 0.330, -0.45 > < 0.0, 0.330 0.45 > 0.025 rotate < 0.0, 30.0, 0.0 > texture { RustyIron } } scale < 1.0, 1.0, 1.0 > translate < -1.5, 3.0, -1.32 > } union // rope adjusters { cylinder { < 0.0, 0.000, 0.0 > < 0.0, 0.065, 0.0 > 0.55 texture { RustyIron } } cylinder { < 0.0, 0.065, 0.0 > < 0.0, 0.100, 0.0 > 0.50 texture { RustyIron } } union { #for(Runde,0,360,36) object { Adjuster rotate < 0.0, Runde, 0.0 >} #end texture { RustyIron } } cylinder { < 0.0, 0.100, 0.0 > < 0.0, 0.150 0.0 > 0.300 texture { RustyIron } } cylinder { < 0.0, 0.150, 0.0 > < 0.0, 0.225 0.0 > 0.350 texture { RustyIron } } cylinder { < 0.0, 0.225, 0.0 > < 0.0, 0.275 0.0 > 0.275 texture { TopColor rotate < 90.0, 0.0, 0.0 > } } cylinder { < 0.0, 0.275, 0.0 > < 0.0, 0.300 0.0 > 0.350 texture { RustyIron } } difference { cylinder { < 0.0, 0.300, 0.0 > < 0.0, 0.330 0.0 > 0.325 texture { RustyIron } } cylinder { < 0.0, 0.290, 0.0 > < 0.0, 0.360 0.0 > 0.30 texture { RustyIron } } } sphere { < 0.0, 0.225, 0.0 > 0.275 texture { RustyIron } } cylinder { < 0.0, 0.330, -0.45 > < 0.0, 0.330 0.45 > 0.025 rotate < 0.0, 30.0, 0.0 > texture { RustyIron } } scale < 1.0, 1.0, -1.0 > translate < -1.5, 3.0, 1.32 > } rotate < 0.0, 0.0, RotateUpDown > translate < 0.0, 3.65, 0.0 > // to fit into bottom #if(NavyVersion=on) translate < 0.0, 0.35, 0.0 > #end rotate < 0.0, RotateAround, 0.0 > } // ---------------------------------------------------------------------------------- #if(NavyVersion=on) object { DeckFixing } #end object { Stand } // object { Engine } // object { Human_001 } /* height_field // heightfields { png "C:\Users\Sven Littkowski\Documents\My Images\Textures\Rome Deco Column - 001.png" // png "C:\Users\Sven Littkowski\Documents\My Images\Textures\Test.png" water_level 0.1 // smooth rotate < 0.0, 90.0, 0.0 > // translate < 0.0, 0.0, 0.5 > // rotate < 0.0, 0.0, 90.0 > // scale < 0.1, 1.35, 0.16 > // scale 4.5 translate < 0.0, 0.0, 0.0 > // translate < -3.65, -0.2, -0.6 > pigment { Gray20 } finish { Glossy } } box { < -3.0, -0.01, -0.1 > < 3.0, 0.0, 0.1 > pigment { Gray60 } finish { ambient 1.0 } } box { < -0.1, -0.01, -3.0 > < 0.1, 0.0, 3.0 > pigment { Gray60 } finish { ambient 1.0 } } */ plane { y, 0.0 pigment { color rgb < 0.0, 0.0, 0.0 > * 1.0 } finish { Glossy } } background { color rgb < 0.0, 0.0, 0.0 > } sky_sphere { pigment { bozo color_map { [ 0.0 Gray50*3 ] [ 0.2 Black ] [ 1.0 Black ] } scale .001 } // emission rgb <0.8,0.8,1> }