Compare commits

..

2 Commits

Author SHA1 Message Date
Tonton Th
38d3863124 add ConeStack 2025-12-18 22:26:31 +01:00
Tonton Th
f2e324e038 trident in action 2025-12-18 22:25:33 +01:00
2 changed files with 41 additions and 17 deletions

View File

@ -41,7 +41,6 @@ object { BiBenz rotate -y*(clock*0.26) translate Pos_RedB_0 }
/*
* deux hexacones se tournent autour
* XXX peut-être les faire bouger un peu plus ?
*/
#declare BiCone = object
{
@ -53,7 +52,9 @@ union {
}
object { BiCone rotate -y*(Cos_010(NormClock)*55.38) translate Pos_RedB_1 }
object { Trident_A() rotate y*(360*Cos_010(NormClock))
object { Trident_A() rotate z * (3*NormClock)
translate x*0.80
rotate y*(520*Cos_01(NormClock))
translate Pos_RedB_2 + (y*2) }
/*
@ -75,7 +76,7 @@ object { HexaCone () rotate y*((12*NormClock)+80) translate P }
#declare Ry = ((rand(Rng1)-NormClock)*87);
// #write (Trid, Foo, " ", NormClock, " ", Dy, " ",
// Ry, " ", Tr, "\n")
object { Trident_A () rotate y*Ry translate Tr }
object { Trident_A () translate y*rand(Rng1) rotate y*Ry translate Tr }
#end
// #fclose Trid

View File

@ -17,6 +17,34 @@
// XXX
#include "xperiment.inc"
// XXX
// =======================================================
/*
* new Thu Dec 18 01:14:19 AM UTC 2025
*/
#macro Le_ConeStack ()
union {
#local Hcs = 0.50;
#local Rco = R_basecone * 1.95;
#for (Foo, 0, 6)
#local Dy = Foo * 0.580;
union {
cone { 0, Rco, <0, Hcs, 0>, 0.0001
#if (rand(Rng1) < 0.50) texture { Y_Texture }
#else texture { M_Texture }
#end // if rand
}
cylinder { 0, -0.08*y, Rco
#if (rand(Rng1) < 0.50) texture { R_Texture }
#else texture { G_Texture }
#end // if rand
}
translate y * Dy
}
#end // for Foo
}
#end // macro
// =======================================================
/* nouveau du 20 octobre 2025
* Un semblant de wagonnet qui va tourner sur le
@ -29,8 +57,8 @@
union {
object { Wagonnet_0(L) translate <0, 1, 1.6> }
object { Wagonnet_0(L+1) translate <0, 1+NormClock, 0> }
object { Wagonnet_0(L) translate <0, 1, -1.6> }
object { Wagonnet_0(L+1) translate <0, 2+NormClock, 0> }
object { Wagonnet_0(L) translate <0, 1, -1.8> }
}
}
@ -145,33 +173,28 @@ object { Gyros }
// ------------------------------------------------------ ##
#declare Selector = mod(int(clock/60)+19, 8);
#declare Selector = mod(int(clock/60)+20, 8);
#debug concat("Selector = ", str(Selector, 6, 0), "\n")
#declare AngleCam = 17 - 3*Cos_01(NormClock);
#switch (Selector)
#case (0)
union {
object { OpenBox(1, 0.03) }
object { OpenBox(0.55, 0.03)
translate
<0.4*rand(Rng1), NormClock*1.2, 2*cos(NormClock*9)> }
translate y*2.1
}
object { Une_Arche (0.333) scale 2 }
#break
#case (1)
object { Les_Arches (1.57) rotate -y*(clock*0.666) }
#declare AngleCam = 22;
#break
#case (2)
object { HexaPole () translate y }
object { Le_ConeStack () translate y*0.20 }
#break
#case (3)
object { Des_Choses }
#break
#case (4)
object { HexaWood scale 2 translate 0.7*y rotate -y*clock }
object { Trident rotate <30, 0, 30> translate 0.7*y
rotate -y*clock }
#break
#case (5)
object { Les_Boules translate y*0.8 }
@ -180,7 +203,7 @@ object { Gyros }
object { Les_Wagonnets rotate y*(clock) }
#break
#case (7)
#local Pos = <0, 0, 0>;
#local Pos = <0.5-NormClock, 0, 0>;
object { BasicTextures rotate -y*clock translate Pos }
#break