Fortraneries/BloubWorld/scene.pov

180 lines
3.9 KiB
POVRay
Raw Normal View History

2022-02-07 09:45:08 +11:00
/*
* BLOUBSWORLD
* new Sun 06 Feb 2022 01:33:39 PM CET, rue Ernest Renan
*/
#version 3.7;
global_settings {
2022-03-16 23:44:29 +11:00
ambient_light rgb <0.14, 0.08, 0.08>
2022-02-07 09:45:08 +11:00
assumed_gamma 1.0
}
#include "colors.inc"
2022-02-19 05:30:10 +11:00
#include "WS/nbimg.inc"
2022-02-09 04:56:51 +11:00
#declare NormClock = clock / NbImg;
// ----------------------------------------------------------
2022-02-19 05:30:10 +11:00
#include "WS/bloubs.inc"
2022-03-16 23:44:29 +11:00
#fopen LC "WS/log.nb_bloubs" append
#write (LC, " ", Nb_Bloubs, "\n")
2022-02-19 05:30:10 +11:00
#fclose LC
2022-02-07 09:45:08 +11:00
object {
Bloubs
2022-03-26 08:42:15 +11:00
finish { phong 0.57 specular 0.57 }
2022-02-07 09:45:08 +11:00
}
2024-01-26 07:44:49 +11:00
#declare La_Boite = object
{
union {
plane { <1, 0, 0>, -37 }
plane { <1, 0, 0>, 37 }
plane { <0, 1, 0>, -27 }
plane { <0, 1, 0>, 27 }
plane { <0, 0, 1>, 69 }
texture {
pigment { color srgb <0.225, 0.244, 0.211> }
finish { phong 0.18 metallic 0.25 reflection 0.35 }
2022-02-07 09:45:08 +11:00
}
}
2024-01-26 07:44:49 +11:00
}
2024-01-30 23:31:08 +11:00
cylinder { 0, -y, 30
texture {
pigment { color srgb <0.225, 0.244, 0.211> }
finish { phong 0.18 metallic 0.25 reflection 0.15 }
}
translate -6.20*y
}
sky_sphere {
pigment { color Gray20 }
2024-01-30 23:31:08 +11:00
emission rgb <0.01, 0.01, 0.01>
}
2024-01-26 07:44:49 +11:00
2022-02-07 11:50:49 +11:00
// ----------------------------------------------------------
#declare Croisillon = object
{
union {
cylinder { -1*x, 1*x, 0.04 }
cylinder { -1*y, 1*y, 0.04 }
cylinder { -1*z, 1*z, 0.04 }
}
texture {
pigment { color Gray50 }
}
}
object { Croisillon scale 0.80 translate <Bary_X, Bary_Y, Bary_Z> }
// ----------------------------------------------------------
2022-03-26 08:42:15 +11:00
#declare BH = 6; // H = taille en horizontal
2024-01-30 23:31:08 +11:00
#declare BV = 6; // V = taille en vertical
#declare BR = 0.056;
2022-02-08 12:53:49 +11:00
#declare Une_Borne = object
{
2022-02-17 00:25:43 +11:00
merge {
2022-03-16 23:44:29 +11:00
cylinder { <0, BV, 0>, <0, -BV, 0>, BR }
2024-01-30 23:31:08 +11:00
cylinder { <0, 0.042, 0>, <0, -0.042, 0>, BR*1.90 }
2022-02-17 00:25:43 +11:00
}
}
2024-01-30 23:31:08 +11:00
#local Ruc = BR * 0.90;
#local Rud = BR * 0.30;
2022-02-17 09:39:11 +11:00
#declare Un_Cadre = object
2022-02-17 00:25:43 +11:00
{
merge {
2022-03-16 23:44:29 +11:00
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 }
2024-01-30 23:31:08 +11:00
cylinder { < BH, 0, 0>, <-BH, 0, 0>, Rud }
cylinder { < 0, 0, -BH>, < 0, 0, BH>, Rud }
}
texture {
pigment { color Gray50 }
finish { phong 0.87 specular 0.57 }
}
}
#declare Montants = object
{
union {
cylinder { <-BH, -BH, 0>, <-BH, BH, 0>, Rud }
cylinder { < BH, -BH, 0>, < BH, BH, 0>, Rud }
cylinder { < 0, -BH, -BH>, < 0, BH, -BH>, Rud }
cylinder { < 0, -BH, BH>, < 0, BH, BH>, Rud }
}
texture {
pigment { color Gray50 }
finish { phong 0.57 specular 0.87 }
2022-02-08 12:53:49 +11:00
}
}
#declare Les_Bornes = object
{
2022-02-07 11:50:49 +11:00
union {
2024-01-30 23:31:08 +11:00
#local E = 0.0005;
2022-03-26 08:42:15 +11:00
object { Un_Cadre translate y*(BV-E) }
2022-03-16 23:44:29 +11:00
object { Un_Cadre translate -y*(BV-E) }
2022-02-17 00:25:43 +11:00
2024-01-30 23:31:08 +11:00
object { Montants }
#local G = Green * 0.80;
2022-02-08 12:53:49 +11:00
object { Une_Borne translate <-BH, 0, -BH> pigment { color Blue } }
2024-01-30 23:31:08 +11:00
object { Une_Borne translate < BH, 0, -BH> pigment { color G } }
object { Une_Borne translate <-BH, 0, BH> pigment { color G } }
2022-02-08 12:53:49 +11:00
object { Une_Borne translate < BH, 0, BH> pigment { color Red } }
2022-02-07 11:50:49 +11:00
}
}
object { Les_Bornes }
// ----------------------------------------------------------
2022-02-17 09:39:11 +11:00
#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 }}
}
}
// ----------------------------------------------------------
2024-01-30 23:31:08 +11:00
light_source { < 19, 12+NormClock, -17> color Gray80 }
light_source { <-14, 10-NormClock, -29> color Gray70 }
2022-02-09 04:56:51 +11:00
#declare XCAM = 5 - ( 10 * NormClock);
2024-01-30 23:31:08 +11:00
#declare YCAM = -1.1 + (1.25 * NormClock);
#declare ZCAM = -19.20;
2022-02-11 20:23:13 +11:00
#declare XLAT = 0;
#declare YLAT = 0;
#declare ZLAT = 0;
2022-02-07 09:45:08 +11:00
camera {
2022-02-19 05:30:10 +11:00
location <XCAM, YCAM, ZCAM>
2022-03-16 23:44:29 +11:00
look_at <XLAT, YLAT, ZLAT>
2022-02-07 09:45:08 +11:00
right x*image_width/image_height
angle 64
2022-02-07 09:45:08 +11:00
}