229 lines
4.5 KiB
PHP
229 lines
4.5 KiB
PHP
/*
|
|
* 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 { <xR, yR, xR>, rgb <Red, 0.03, 0.03>
|
|
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 <PX, 0, PZ>
|
|
}
|
|
#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>, <TB, TB, 0> }
|
|
}
|
|
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> , <DXail, DYail, 0> }
|
|
}
|
|
|
|
#declare Le_rotor = object
|
|
{
|
|
#local Rrot = 0.0034;
|
|
#local Lrot = 0.13;
|
|
union {
|
|
sphere { -x*Lrot, Rrot }
|
|
cylinder { <-Lrot, 0, 0>, <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>, <dX, 0, 0>, Rtuy }
|
|
cylinder { <-(dX+1), 0, 0>, <dX+2, 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 }
|
|
}
|
|
}
|