/* * nouveau projet Thu Dec 5 11:37:05 AM UTC 2024 */ #declare HexaCone_shape = object { #local RA = 0.125; #local RB = 0.001; union { cone { 0, RA, <-1, 0, 0>, RB } cone { 0, RA, < 1, 0, 0>, RB } cone { 0, RA, < 0, 0, 1>, RB } cone { 0, RA, < 0, 0, -1>, RB } cone { 0, RA, < 0, 1, 0>, RB } cone { 0, RA, < 0, -1, 0>, RB } } } #declare HexaCone_body = object { union { difference { object { HexaCone_shape } object { HexaCone_shape scale 0.98 } sphere {0, 0.24 } cylinder { <-1, 0, 0.55>, <1, 0, 0.55>, RA*0.40 } } difference { sphere {0, 0.20 } sphere {0, 0.18 } cylinder {-x, x, 0.10 } cylinder {-y, y, 0.10 } cylinder {-z, z, 0.10 } } // clignotement de la lumiere \o/ #local kR = 0.073; #local xR = (rand(Rng2)-0.5000) * kR; #local yR = (rand(Rng2)-0.5000) * kR; #local zR = (rand(Rng2)-0.5000) * kR; #local Red = abs(sin(NormClock * 35.536)); #local Red = Red * rand(Rng2); light_source { , rgb fade_distance 0.99 fade_power 1.58 } } texture { New_Penny } } /* * */ #local Branche_radar = object { #local D1 = 0.08; #local D2 = 0.0045; merge { cone { 0, D2, 0.08*y, 0.00007 } sphere { 0, D2*2.3 scale <1, 1.77, 1> } intersection { torus { D1, D2 } box { <2, -2, 2>, <0, 2, 0> } rotate x*90 translate -D1*x } } } #declare HexaCone_radar = object { union { #for (foo, 0, 360, 60) #local RR = 0.12; #local PX = RR * sin(radians(foo)); #local PZ = RR * cos(radians(foo)); object { Branche_radar rotate y*(foo-90) translate } #local R2 = 0.08; #end torus { R2, 0.0034 translate -0.08*y } } texture { Soft_Silver scale 6.50 } } /* --------------------------------------------------------- * new Mon Dec 16 12:44:44 PM UTC 2024 */ #local Une_derive = object { difference { merge { sphere { 0, 0.0137 scale <1, 1, 4.70> translate <0, 0.26, -0.17> } cone { <0, -0.1, 0>, 0.114, <0, 0.26, -0.17>, 0.0096 scale <0.15, 1, 1> } } box { <-1, -1, -1>, <1, 0, 1> } } texture { Soft_Silver scale 6.0 } } #declare HexaCone_derives = object { union { object { Une_derive } object { Une_derive rotate 120*z } object { Une_derive rotate -120*z } } } #declare HexaCone_head = object { #local DTa = 0.278; #local DTb = 0.030; merge { difference { torus { DTa, DTb } #local TB = 0.50; box { <-TB, -TB, TB>, } } sphere { 0, DTb*1.55 translate -DTa*x } sphere { 0, DTb*1.55 translate DTa*x } } texture { Orange_Glass } } /* ------------------------------------------ * new Sat Dec 21 11:17:36 PM UTC 2024 */ #declare DXail = 0.0007; #declare DYail = 0.0039; #declare DZail = 0.031; #declare Une_Ailettte = object { box { <-DXail, -DYail, -DZail> , } } #declare Le_rotor = object { #local Rrot = 0.0034; #local Lrot = 0.13; union { sphere { -x*Lrot, Rrot } cylinder { <-Lrot, 0, 0>, , Rrot } sphere { x*Lrot, Rrot } #for (foo, -9, 9) object { Une_Ailettte translate -0.004*z rotate z*19 rotate (foo*35)*x translate (foo*0.013)*x } #end } // texture { T_Chrome_1C } texture { pigment { color Orange } // finish { emission 0.7 } finish { ambient 0.7 phong 0.5 brilliance 0.9 metallic 0.7 } } } /* ------------------------------------------------------ * */ #local Rtuy = 0.06; #local Ltuy = 0.09; #local Etuy = 0.01; // epaisseur des parois #declare Tuyere = object { #local dX = Ltuy; merge { #local R2 = Rtuy - (Etuy/2.0); intersection { torus { R2, Etuy/2 scale <1, 18, 1> } box { <-1, 0, -1>, <1, 1, 1> } rotate 90*z translate -dX*x } torus { R2, Etuy/2 scale <1, 0.75, 1> rotate 90*z translate dX*x } #if (1) #difference { cylinder { <-dX, 0, 0>, , Rtuy } cylinder { <-(dX+1), 0, 0>, , Rtuy-Etuy } } #end cylinder { y*Rtuy, y*(Rtuy+0.08), 0.011 scale <2.95, 1, 1> } sphere { 0, 0.017 scale <4.5, 1, 0.717> translate z*(Rtuy+Etuy/3) } } texture { T_Brass_1C } } #declare Reacteur = object { union { object { Tuyere } object { Le_rotor rotate x*(clock*5.8) translate -0.06*x } } } #declare Les_Reacteurs = object { union { #local E = 0.59; object { Reacteur scale <1, 1, -1> translate -E*z } object { Reacteur translate E*z } } rotate -y*90 } // ###########################################################"" #declare HexaCone = object { union { object { HexaCone_body } #local T = 0.55; object { HexaCone_head translate <0, 0, T+DTa> } object { HexaCone_radar translate <0, T+0.18, 0> } object { HexaCone_derives translate <0, 0, -0.67> } object { Les_Reacteurs translate -0.18*y } } }