HexaCone/essai.pov

93 lines
1.8 KiB
POVRay
Raw Normal View History

2024-12-16 03:53:42 +11:00
/*
2024-12-31 22:51:12 +11:00
* H E X A C O N E - E S S A I
2025-01-08 10:13:37 +11:00
* nouveau projet du Thu Dec 5 11:37:05 AM UTC 2024
2024-12-16 03:53:42 +11:00
*/
#version 3.7;
2024-12-29 14:56:10 +11:00
#include "globals.inc"
2024-12-24 06:09:00 +11:00
2024-12-16 03:53:42 +11:00
#include "contexte.inc"
2024-12-23 01:05:36 +11:00
#include "elements.inc"
2025-01-08 10:13:37 +11:00
#include "hexabenz.inc"
2024-12-23 01:05:36 +11:00
// =======================================================
2025-01-27 13:34:51 +11:00
#declare QuadriPole = object
{
#local R = 0.02;
#local E = 0.25;
#local H = H_cone*2;
union {
cylinder { 0, y*H, R translate -x*E }
cylinder { 0, y*H, R translate x*E }
cylinder { 0, y*H, R translate -z*E }
cylinder { 0, y*H, R translate z*E }
}
texture { WIP_color }
#undef E
#undef H
#undef R
}
2025-01-14 10:38:40 +11:00
// =======================================================
2025-01-08 10:13:37 +11:00
#macro Bubble ()
sphere {
2025-01-27 13:34:51 +11:00
0, 0.065
2025-01-12 12:33:39 +11:00
#if ( rand(Rng1) < 0.333 )
texture { Ruby_Glass }
#elseif ( rand(Rng1) < 0.666 )
2025-01-14 10:38:40 +11:00
texture { Orange_Glass }
2025-01-12 12:33:39 +11:00
#else
2025-01-14 10:38:40 +11:00
texture { Gold_Nugget }
2025-01-08 10:13:37 +11:00
#end
}
#end
2024-12-21 00:24:45 +11:00
2025-01-08 10:13:37 +11:00
#macro Un_Machin ()
union {
2025-01-14 10:38:40 +11:00
#for (Y, 1, 8, 1)
2025-01-08 10:13:37 +11:00
object { Bubble() translate y*Y*0.1 }
#end
2024-12-31 22:51:12 +11:00
}
2025-01-08 10:13:37 +11:00
#end
2024-12-31 22:51:12 +11:00
2025-01-08 10:13:37 +11:00
#declare Les_Machins = object
{
union {
2025-01-27 13:34:51 +11:00
#local Rk = 2.55;
#for (foo, 0, 359, 45)
2025-01-14 10:38:40 +11:00
#local Xpos = Rk * sin(radians(foo));
#local Zpos = Rk * cos(radians(foo));
2025-01-27 13:34:51 +11:00
#local RND = rand(Rng1);
object { GyroPhare () translate <Xpos, 0, Zpos> }
2025-01-08 10:13:37 +11:00
#end
2025-01-27 13:34:51 +11:00
#undef RND
2025-01-14 10:38:40 +11:00
#undef Rk
2025-01-08 10:13:37 +11:00
}
}
2024-12-31 22:51:12 +11:00
2025-01-27 13:34:51 +11:00
// =======================================================
// =======================================================
object { OpenBox translate y*1.2 }
object { Les_Machins }
object { Le_Decor }
2024-12-31 22:51:12 +11:00
2025-01-27 13:34:51 +11:00
object { Repere }
2024-12-29 14:56:10 +11:00
// =======================================================
2024-12-16 03:53:42 +11:00
2025-01-14 10:38:40 +11:00
// light_source { <-8, 7, -9>, rgb <0.81, 0.65, NormClock> }
// light_source { < 11, 7, 4>, rgb <1-NormClock, 0.28, 0.80> }
2024-12-16 08:24:38 +11:00
2025-01-27 13:34:51 +11:00
#local CamX = -2.7 + (3.8*NormClock);
#local CamY = 1.81 + (4*sqrt(NormClock));
2024-12-16 03:53:42 +11:00
camera {
2025-01-14 10:38:40 +11:00
location <CamX, CamY, 9.99>
2025-01-27 13:34:51 +11:00
look_at <0, 0.5, 0>
angle 42 - 4*Cos_01(NormClock)
2024-12-16 03:53:42 +11:00
}