Fortraneries/BloubWorld/scene.pov

129 lines
2.8 KiB
POVRay

/*
* BLOUBSWORLD
* new Sun 06 Feb 2022 01:33:39 PM CET, rue Ernest Renan
*/
#version 3.7;
global_settings {
ambient_light rgb <0.14, 0.08, 0.08>
assumed_gamma 1.0
}
#include "colors.inc"
#include "WS/nbimg.inc"
#declare NormClock = clock / NbImg;
// ----------------------------------------------------------
#include "WS/bloubs.inc"
#fopen LC "WS/log.nb_bloubs" append
#write (LC, " ", Nb_Bloubs, "\n")
#fclose LC
object {
Bloubs
finish { phong 0.55 specular 0.55 }
}
object {
union {
plane { <1, 0, 0>, -23 }
plane { <1, 0, 0>, 23 }
plane { <0, 1, 0>, -23 }
plane { <0, 1, 0>, 23 }
plane { <0, 0, 1>, 50 }
texture {
pigment { color srgb <0.195, 0.144, 0.111> }
finish { phong 0.18 metallic 0.35 reflection 0.35 }
}
}
}
// ----------------------------------------------------------
#declare BH = 5; // H = taille en horizontal
#declare BV = 5; // V = taille en vertical
#declare BR = 0.028;
#declare Une_Borne = object
{
merge {
cylinder { <0, BV, 0>, <0, -BV, 0>, BR }
cylinder { <0, 0.012, 0>, <0, -0.012, 0>, BR*3 }
}
}
#declare Un_Cadre = object
{
merge {
#local Ruc = BR * 0.90;
cylinder { <-BH, 0, -BH>, <-BH, 0, BH>, Ruc }
cylinder { < BH, 0, -BH>, < BH, 0, BH>, Ruc }
cylinder { < BH, 0, -BH>, <-BH, 0, -BH>, Ruc }
cylinder { < BH, 0, BH>, <-BH, 0, BH>, Ruc }
}
pigment { color Gray40 }
}
#declare Les_Bornes = object
{
union {
#local E = 0.002;
object { Un_Cadre translate y*(BV-E) }
object { Un_Cadre translate -y*(BV-E) }
object { Une_Borne translate <-BH, 0, -BH> pigment { color Blue } }
object { Une_Borne translate < BH, 0, -BH> pigment { color Green } }
object { Une_Borne translate <-BH, 0, BH> pigment { color Green } }
object { Une_Borne translate < BH, 0, BH> pigment { color Red } }
}
}
object { Les_Bornes }
// ----------------------------------------------------------
#local D = 0.016;
#declare Fleche = object
{
merge {
sphere { <-0.05, 0, 0>, D }
cylinder { <1, 0, 0>, <-0.05, 0, 0>, D }
cone { <1, 0, 0>, D*3.1, <1.10, 0, 0>, 0.0001 }
}
}
#declare Repere = object
{
union {
object { Fleche pigment { color Red }}
object { Fleche rotate z*90 pigment { color Green }}
object { Fleche rotate y*270 pigment { color Blue }}
}
}
// ----------------------------------------------------------
light_source { <19, -12, -17> color Gray80 }
light_source { <11, 14, 9> color Gray60 }
#declare XCAM = 8 - ( 15 * NormClock);
#declare YCAM = 1 + (0.75 * NormClock);
#declare ZCAM = -17.5;
#declare XLAT = Bary_X;
#declare YLAT = Bary_Y;
#declare ZLAT = Bary_Z;
// object { Repere scale 2.5 translate <XLAT, YLAT, ZLAT> }
camera {
location <XCAM, YCAM, ZCAM>
look_at <XLAT, YLAT, ZLAT>
right x*image_width/image_height
angle 66
}