71 lines
1.7 KiB
POVRay
71 lines
1.7 KiB
POVRay
/*
|
|
* H E X A C O N E
|
|
*
|
|
* nouveau projet du Thu Dec 5 11:37:05 AM UTC 2024
|
|
*/
|
|
|
|
#version 3.7;
|
|
|
|
#include "globals.inc"
|
|
|
|
#include "contexte.inc"
|
|
#include "hexacone.inc"
|
|
#include "hexabenz.inc"
|
|
#include "hexawood.inc"
|
|
#include "trident.inc"
|
|
#include "xperiment.inc"
|
|
|
|
// =======================================================
|
|
|
|
#include "dynamic.inc"
|
|
|
|
#local Y_mean = 0;
|
|
#local Y_count = 0;
|
|
|
|
#for (idX, -3, 3)
|
|
#for (idZ, -3, 3)
|
|
|
|
#local posX = (idX * 4.72) + (rand(Rng1)-0.5);
|
|
#local posY = 3.2 + (NormClock * 12 * (rand(Rng1)+0.75));
|
|
#local posZ = (idZ * 4.37) ;
|
|
#local Rx = (rand(Rng1) - 0.5) * 12;
|
|
#local Ry = (rand(Rng1) - 0.5) * (24+NormClock);
|
|
#local Rz = (rand(Rng1) - 0.5) * 11;
|
|
|
|
// #debug concat("X ", str(posX,7,3), " Z ", str(posZ,7,3), "\n")
|
|
// #debug concat("position Z ", str(posZ,7,3),"\n")
|
|
|
|
#declare Limit = 1.470;
|
|
#if ( (abs(posX)>Limit) & (abs(posZ)>Limit) ) // position
|
|
#local Y_mean = Y_mean + posY;
|
|
#local Y_count = Y_count + 1;
|
|
#if (rand(Rng1) < 0.555)
|
|
object { HexaCone () rotate <Rx, Ry, Rz>
|
|
translate <posX, posY, posZ> }
|
|
#else
|
|
object { HexaBenz () rotate <Rx, Ry, Rz>
|
|
translate <posX, posY, posZ> }
|
|
#end
|
|
#end // if position...
|
|
#end // loop idX
|
|
#end // loop idZ
|
|
|
|
// =======================================================
|
|
|
|
object { Le_Decor }
|
|
|
|
// object { Repere scale 5 translate y }
|
|
|
|
#local CamX = -8.7 + ( 6.9 * Cos_01(NormClock));
|
|
#local CamY = 0.42 + (17.06 * Cos_01(NormClock));
|
|
#local CamZ = 122 - (21.9 * Cos_01(NormClock));
|
|
|
|
#local LatY = (Y_mean / Y_count) - NormClock;
|
|
#debug concat("Lat Y ", str(LatY, 7, 3),"\n")
|
|
|
|
camera {
|
|
location <CamX, CamY, CamZ>
|
|
look_at <0.0, LatY, 0>
|
|
angle 56 - (19.84 * NormClock)
|
|
}
|