Fortraneries/BloubWorld/scene.pov

181 lines
3.9 KiB
POVRay
Raw Normal View History

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