Compare commits
4 Commits
cd65855f2c
...
db5eedffe1
Author | SHA1 | Date | |
---|---|---|---|
![]() |
db5eedffe1 | ||
![]() |
532560518c | ||
![]() |
479e4ee18d | ||
![]() |
3ff83f012d |
5
Makefile
5
Makefile
@ -3,7 +3,8 @@ DIMS = -W1600 -H1200
|
||||
# POVOPT = +q9 +a0.02 -d
|
||||
POVOPT = +q9 +A -d
|
||||
POVDEP = contexte.inc elements.inc hexabenz.inc \
|
||||
globals.inc hexawood.inc datas/hf.png
|
||||
globals.inc hexawood.inc datas/hf.png \
|
||||
dynamic.inc trident.inc
|
||||
|
||||
CK=230
|
||||
|
||||
@ -11,7 +12,7 @@ CK=230
|
||||
PNG: essai.png scene.png topview.png passage.png \
|
||||
orbite.png hexabenz.png escadrille.png \
|
||||
hexacone.png remote.png survol.png cutoff.png
|
||||
echo "PNG ck=$(CK) done" >> WS/log
|
||||
echo "make PNG ck=$(CK) done" >> WS/log
|
||||
|
||||
|
||||
topview.png: topview.pov Makefile $(POVDEP)
|
||||
|
121
contexte.inc
121
contexte.inc
@ -11,22 +11,6 @@
|
||||
* une cabane pour faire riche.
|
||||
*/
|
||||
|
||||
/*
|
||||
* deux textures
|
||||
*/
|
||||
#declare T_Beton_1 = texture
|
||||
{
|
||||
pigment { color <0.9, 0.8, 0.8> }
|
||||
normal { dents 0.75 scale 0.3 }
|
||||
finish { roughness 1.00 }
|
||||
}
|
||||
|
||||
#declare T_Beton_2 = texture
|
||||
{
|
||||
pigment { color <0.7, 0.6, 0.6> }
|
||||
normal { dents 0.25 scale 2 }
|
||||
finish { roughness 1.00 }
|
||||
}
|
||||
|
||||
/*
|
||||
* une seule forme de cabane pour le moment
|
||||
@ -38,7 +22,7 @@ difference {
|
||||
box { <-0.90, 0, 0>, <0.90, Hc, 0.80> }
|
||||
box { <-0.89, 0.01, -1> <0.89, Hc-0.01, 0.79> }
|
||||
#local Hc = Hc * 0.75;
|
||||
cylinder { <-1, Hc, -0.23>, <1, Hc, 0.23>, 0.09 }
|
||||
cylinder { <-1, Hc, -0.29>, <1, Hc, 0.29>, 0.09 }
|
||||
#undef Hc
|
||||
}
|
||||
}
|
||||
@ -85,7 +69,7 @@ union {
|
||||
#undef Dx
|
||||
#undef Dz
|
||||
}
|
||||
texture { T_Stone2 rotate 49 scale 0.22 }
|
||||
texture { T_Grnt7 rotate 49 scale 0.22 }
|
||||
}
|
||||
|
||||
#declare GroundBase_b = object
|
||||
@ -98,7 +82,7 @@ union {
|
||||
object { GroudBase_coin translate <-Sz, 0, Sz> }
|
||||
object { GroudBase_coin translate < Sz, 0, Sz> }
|
||||
}
|
||||
texture { T_Stone6 rotate 9 scale 0.32 }
|
||||
texture { T_Grnt27 rotate 9 scale 0.32 }
|
||||
#undef Sz
|
||||
}
|
||||
|
||||
@ -124,7 +108,7 @@ union {
|
||||
intersection {
|
||||
sphere { 0, R_gyro scale <1, 1.414, 1> }
|
||||
box { <-1, 0, -1>, <1, 1, 1> }
|
||||
translate y*(H_gyro+H_gylampe+0.01)
|
||||
translate y*(H_gyro+H_gylampe+0.02)
|
||||
}
|
||||
#if (rand(Rng1) < 0.5)
|
||||
texture { T_Stone25 scale 1+rand(Rng1) }
|
||||
@ -137,17 +121,18 @@ union {
|
||||
#macro GyroPhare_lampe ()
|
||||
union {
|
||||
difference {
|
||||
cylinder { 0, y*0.20, R_gyro }
|
||||
cylinder { y*0.01, y*0.19, R_gyro*0.97 }
|
||||
cylinder { 0, y*H_gylampe, R_gyro }
|
||||
cylinder { y*0.01, y*(H_gylampe-0.01), R_gyro*0.97 }
|
||||
#local WB = 0.015;
|
||||
box { <-1, 0.03, -WB>, <1, 0.18, WB> }
|
||||
box { <-WB, 0.03, -1>, <WB, 0.18, 1> }
|
||||
box { <-1, 0.03, -WB>, <1, (H_gylampe-0.03), WB> }
|
||||
box { <-WB, 0.03, -1>, <WB, (H_gylampe-0.03), 1> }
|
||||
#undef WB
|
||||
pigment { color Gray90 }
|
||||
#local Ro = 0.5-rand(Rng1);
|
||||
#if (abs(Ro) < 0.01)
|
||||
#local Ro = 5.89*(0.5-rand(Rng1));
|
||||
#if (abs(Ro) < 0.06)
|
||||
#local Ro = Ro * 10;
|
||||
#end
|
||||
#undef Ro
|
||||
rotate y*(0.5-rand(Rng1)) * clock
|
||||
}
|
||||
light_source { y*0.10
|
||||
@ -169,7 +154,7 @@ union {
|
||||
|
||||
#macro Les_GyroPhares ()
|
||||
union {
|
||||
#local E = SzSol * 0.485;
|
||||
#local E = SzSol * 0.488;
|
||||
object { GyroPhare () translate <-E, 0, -E> }
|
||||
object { GyroPhare () translate < E, 0, -E> }
|
||||
object { GyroPhare () translate <-E, 0, E> }
|
||||
@ -207,13 +192,13 @@ union {
|
||||
object { HexaBalls
|
||||
texture { Lightning1 scale 0.33 }
|
||||
rotate <clock/3, clock/6, clock/9>
|
||||
translate <5, -1.1+1.01*Cos_010(NormClock), 7>
|
||||
translate <2, -1.1+1.01*Cos_010(NormClock), 4>
|
||||
}
|
||||
|
||||
object { HexaBalls
|
||||
texture { Lightning2 scale 0.56 }
|
||||
// rotate <-clock, clock*0.33333, clock>
|
||||
translate <7, -1+0.92*Cos_010(NormClock), -6>
|
||||
rotate <-clock, clock*0.33333, clock>
|
||||
translate <5, -1+0.92*Cos_010(NormClock), -3>
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -246,14 +231,14 @@ height_field {
|
||||
png "datas/hf.png"
|
||||
smooth
|
||||
translate <-.5, 0, -.5>
|
||||
scale <SzSol, 0.98, SzSol>
|
||||
scale <SzSol, 1, SzSol>
|
||||
texture {
|
||||
pigment {
|
||||
// color DarkGreen
|
||||
image_map { png "datas/noise.png" }
|
||||
image_map { png "datas/cmap.png" }
|
||||
rotate x*90
|
||||
translate <-.5, 0, -.5>
|
||||
scale <SzSol, 0.98, SzSol>
|
||||
scale <SzSol, 1, SzSol>
|
||||
}
|
||||
// normal { bumps 0.035 scale 0.186 }
|
||||
finish { phong 0.105 }
|
||||
@ -261,14 +246,28 @@ height_field {
|
||||
}
|
||||
}
|
||||
|
||||
/* ======================================================= */
|
||||
|
||||
#declare Underground = object
|
||||
{
|
||||
plane { y, -1.75 }
|
||||
difference {
|
||||
// plane { y, 0 }
|
||||
#local Big = 300;
|
||||
box { <-Big, -0.01, -Big>, < Big, 0.01, Big> }
|
||||
#undef Big
|
||||
#local W = SzSol * 1.204;
|
||||
cylinder { <-W, -1, -W>, <-W, 1, -W>, 5 }
|
||||
cylinder { <-W, -1, W>, <-W, 1, W>, 7 }
|
||||
cylinder { < W, -1, W>, < W, 1, W>, 9 }
|
||||
#undef W
|
||||
}
|
||||
texture {
|
||||
pigment { color Gray20 }
|
||||
normal { bumps 0.38 scale 4 }
|
||||
normal { bumps 0.38 scale 3 }
|
||||
finish { phong 0.125 }
|
||||
}
|
||||
rotate y*35
|
||||
translate -y*2.55
|
||||
}
|
||||
|
||||
/* ======================================================= */
|
||||
@ -311,6 +310,34 @@ union {
|
||||
}
|
||||
}
|
||||
|
||||
/* ======================================================= */
|
||||
/*
|
||||
* nouvel éclairage du 10 février 2025
|
||||
*/
|
||||
#declare Quad_lampe = object
|
||||
{
|
||||
light_source {
|
||||
0
|
||||
color White
|
||||
fade_distance SzSol * 0.40
|
||||
fade_power 1.20
|
||||
}
|
||||
}
|
||||
|
||||
#declare QuadriLight = object
|
||||
{
|
||||
#local T = E_QuadriLight;
|
||||
#local H = H_QuadriLight;
|
||||
// #local H = 5;
|
||||
|
||||
union {
|
||||
object { Quad_lampe translate <-T, H, -T> }
|
||||
object { Quad_lampe translate < T, H, -T> }
|
||||
object { Quad_lampe translate <-T, H, T> }
|
||||
object { Quad_lampe translate < T, H, T> }
|
||||
}
|
||||
rotate -12 * y
|
||||
}
|
||||
/* ======================================================= */
|
||||
|
||||
#declare Les_Lumieres = object
|
||||
@ -358,14 +385,14 @@ sky_sphere {
|
||||
pigment {
|
||||
gradient y
|
||||
color_map {
|
||||
[ 0.2 color Gray10 ]
|
||||
[ 0.4 color Gray60 ]
|
||||
[ 0.7 color Black ]
|
||||
[ 0.8 color White ]
|
||||
[ 1.0 color Gray10 ]
|
||||
[ 0.2 color Gray10 ]
|
||||
[ 0.4 color rgb <.4, .3, .8> ]
|
||||
[ 0.7 color Gray20 ]
|
||||
[ 0.8 color rgb <.95, .7, .6> ]
|
||||
[ 1.0 color Gray10 ]
|
||||
}
|
||||
turbulence 3.14159 + 0.74 * Cos_010(NormClock)
|
||||
scale 1.804
|
||||
scale 1.620
|
||||
// translate -1
|
||||
}
|
||||
#local Kem = 0.09;
|
||||
@ -374,6 +401,15 @@ sky_sphere {
|
||||
// }
|
||||
|
||||
/* ======================================================= */
|
||||
|
||||
/* XXX XXX */
|
||||
light_source {
|
||||
<-4, 54, -17>
|
||||
colour Gray40
|
||||
parallel
|
||||
point_at 0
|
||||
}
|
||||
|
||||
/*
|
||||
* Et on rassemble tous les éléments...
|
||||
*/
|
||||
@ -384,7 +420,8 @@ union {
|
||||
object { Underground }
|
||||
object { La_GroundBase }
|
||||
// object { Les_Bibelots }
|
||||
object { Les_Lumieres }
|
||||
// object { Les_Lumieres }
|
||||
object { QuadriLight }
|
||||
object { Les_GyroPhares () }
|
||||
}
|
||||
}
|
||||
|
11
cutoff.pov
11
cutoff.pov
@ -15,17 +15,17 @@
|
||||
|
||||
// #debug concat("------ cutoff clock = ", str(clock,5,0),"\n")
|
||||
|
||||
|
||||
#declare Kbox = (2.03*NormClock);
|
||||
|
||||
/* this one is for debugging */
|
||||
// object { OpenBox translate <0, 1.5, Kbox> }
|
||||
|
||||
difference {
|
||||
object { HexaCone () }
|
||||
box { -1, 1 translate z*Kbox }
|
||||
translate y*1.5
|
||||
}
|
||||
|
||||
/* this one is for debugging */
|
||||
// object { OpenBox translate <0, 1.5, Kbox> }
|
||||
|
||||
// =======================================================
|
||||
|
||||
object { Le_Decor }
|
||||
@ -35,8 +35,9 @@ object { Le_Decor }
|
||||
|
||||
#local CamX = -2.7 + (1.4*Cos_01(NormClock));
|
||||
#local CamY = 2.58 + (0.034*sqrt(NormClock));
|
||||
#local CamZ = 5.35;
|
||||
camera {
|
||||
location <CamX, CamY, 5.40>
|
||||
location <CamX, CamY, CamZ>
|
||||
look_at <0, 1.6, 0>
|
||||
angle 39 - 5*Cos_01(NormClock)
|
||||
}
|
||||
|
30
dynamic.inc
Normal file
30
dynamic.inc
Normal file
@ -0,0 +1,30 @@
|
||||
|
||||
object { Les_Bibelots rotate y*clock translate <28, -1, -32> }
|
||||
|
||||
|
||||
|
||||
#declare HC_A = <0.03, 1.18, 0.17>;
|
||||
#declare HC_B = <2.0, 5.0, 9.0>;
|
||||
#declare HC_P = Interpolate(HC_A, HC_B, Cos_01(NormClock));
|
||||
#declare RX = -9+(NormClock*11);
|
||||
#declare RY = 122 * (exp(NormClock) - 1.0);
|
||||
object { HexaCone ()
|
||||
rotate <RX, RY, -4>
|
||||
translate HC_P
|
||||
}
|
||||
|
||||
#declare HB_A = <-4.0, 7.0, 5.0>;
|
||||
#declare HB_B = <0.03, 1.22, 0.17>;
|
||||
#declare HB_P = Interpolate(HB_A, HB_B, Cos_01(NormClock));
|
||||
#declare RY = -75 * (exp(NormClock*2) - 1.0);
|
||||
#declare RZ = -7+(7*NormClock);
|
||||
object { HexaBenz ()
|
||||
rotate <6, RY, RZ> translate HB_P }
|
||||
|
||||
/*
|
||||
* nouveau 11 fevrier 2025
|
||||
*/
|
||||
#declare A = <-21, -1.9, (SzSol/2)+8>;
|
||||
#declare B = < 24, -2.4, (SzSol/2)+5>;
|
||||
#declare P = Interpolate(A, B, NormClock);
|
||||
object { HexaWood translate P }
|
29
elements.inc
29
elements.inc
@ -40,7 +40,8 @@ union {
|
||||
#local xR = (rand(Rng2)-0.5000) * kR;
|
||||
#local yR = (rand(Rng2)-0.5000) * kR;
|
||||
#local zR = (rand(Rng2)-0.5000) * kR;
|
||||
#local Value = sin( (NormClock * 26.536) + (3.14*rand(Rng1)) );
|
||||
#local Value = sin( (NormClock * 26.536) +
|
||||
(3.14*rand(Rng1)) );
|
||||
#if (Value < 0)
|
||||
#local Couleur = rgb <abs(Value), 0, 0>;
|
||||
#else
|
||||
@ -56,6 +57,8 @@ union {
|
||||
texture { New_Penny }
|
||||
// }
|
||||
#end
|
||||
|
||||
// ---------------------------------------------------------
|
||||
/*
|
||||
*
|
||||
*/
|
||||
@ -117,7 +120,7 @@ texture { T_Brass_1C scale 6.50 }
|
||||
{
|
||||
difference {
|
||||
merge {
|
||||
sphere { 0, 0.0137 scale <1, 1, 4.70>
|
||||
sphere { 0, 0.0141 scale <1, 1, 4.70>
|
||||
translate <0, 0.26, -0.17> }
|
||||
cone { <0, -0.1, 0>, 0.114, <0, 0.26, -0.17>, 0.0096
|
||||
scale <0.15, 1, 1> }
|
||||
@ -135,11 +138,14 @@ union {
|
||||
}
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------
|
||||
|
||||
#declare DTa = 0.278;
|
||||
#declare DTb = 0.030;
|
||||
|
||||
#declare HexaCone_head = object
|
||||
{
|
||||
// XXX #declare HexaCone_head = object
|
||||
// XXX {
|
||||
#macro HexaCone_head ()
|
||||
merge {
|
||||
difference {
|
||||
torus { DTa, DTb }
|
||||
@ -148,13 +154,14 @@ merge {
|
||||
}
|
||||
sphere { 0, DTb*1.65 translate -DTa*x }
|
||||
sphere { 0, DTb*1.65 translate DTa*x }
|
||||
#if (rand(Rng1) < 0.8)
|
||||
texture { Orange_Glass }
|
||||
#else
|
||||
texture { Dark_Green_Glass }
|
||||
#end
|
||||
}
|
||||
#if (rand(Rng1) < 0.8)
|
||||
texture { Orange_Glass }
|
||||
#else
|
||||
texture { Dark_Green_Glass }
|
||||
#end
|
||||
}
|
||||
#end // macro
|
||||
// XXX }
|
||||
|
||||
/* ------------------------------------------
|
||||
* new Sat Dec 21 11:17:36 PM UTC 2024
|
||||
@ -253,7 +260,7 @@ rotate -y*90
|
||||
union {
|
||||
object { HexaCone_Body () }
|
||||
#local T = 0.55;
|
||||
object { HexaCone_head translate <0, 0, T+DTa> }
|
||||
object { HexaCone_head () translate <0, 0, T+DTa> }
|
||||
#if ( (rand(Rng1) > 0.27) )
|
||||
object { HexaCone_radar_A translate <0, T+0.18, 0> }
|
||||
#else
|
||||
|
@ -14,22 +14,22 @@
|
||||
|
||||
// =======================================================
|
||||
|
||||
#for (idX, 0, 4)
|
||||
#for (idZ, 0, 4)
|
||||
#for (idX, 0, 5)
|
||||
#for (idZ, 0, 5)
|
||||
|
||||
#local posX = (idX * 4.56) - 9.5 + (rand(Rng1)-0.5);
|
||||
#local posY = 2.9 + (1.2*(rand(Rng1)-0.5));
|
||||
#local posZ = (idZ * 4.24) - 7.9;
|
||||
#local posX = (idX * 4.72) - 11.6 + (rand(Rng1)-0.5);
|
||||
#local posY = 3.1 + (1.2*(rand(Rng1)-0.5));
|
||||
#local posZ = (idZ * 4.37) - 7.9;
|
||||
#local Rx = (rand(Rng1) - 0.5) * 8;
|
||||
#local Ry = (rand(Rng1) - 0.5) * 14;
|
||||
#local Rz = (rand(Rng1) - 0.5) * 11;
|
||||
#if (rand(Rng1) < 0.515)
|
||||
object { HexaCone ()
|
||||
rotate <0, Ry, Rz>
|
||||
rotate <Rx, Ry, Rz>
|
||||
translate <posX, posY, posZ> }
|
||||
#else
|
||||
object { HexaBenz ()
|
||||
rotate <0, Ry, Rz>
|
||||
rotate <Rx, Ry, Rz>
|
||||
translate <posX, posY, posZ> }
|
||||
#end
|
||||
#end
|
||||
@ -41,12 +41,12 @@ object { Le_Decor }
|
||||
|
||||
// object { Repere scale 5 translate y }
|
||||
|
||||
#local CamX = -8.7+(6.6*NormClock);
|
||||
#local CamY = 2.1+(13.37*Cos_01(NormClock));
|
||||
#local CamZ = 15.86+(12.9*Cos_01(NormClock));
|
||||
#local CamX = -8.7 + (6.6*Cos_01(NormClock));
|
||||
#local CamY = 2.95 + (18.64*Cos_01(NormClock));
|
||||
#local CamZ = 16.86 + (12.9*Cos_01(NormClock));
|
||||
|
||||
camera {
|
||||
location <CamX, CamY, CamZ>
|
||||
look_at <0.0, 0.5, 0>
|
||||
look_at <0.0, -NormClock, 0>
|
||||
angle 60 - (3.97 * NormClock)
|
||||
}
|
||||
|
66
essai.pov
66
essai.pov
@ -15,59 +15,41 @@
|
||||
|
||||
// =======================================================
|
||||
|
||||
#include "dynamic.inc"
|
||||
|
||||
// =======================================================
|
||||
/*
|
||||
* nouvel éclairage du 10 février 2025
|
||||
*/
|
||||
#declare Quad_lampe = object
|
||||
{
|
||||
light_source {
|
||||
0
|
||||
color Gray90
|
||||
fade_distance SzSol / 2
|
||||
fade_power 1.5
|
||||
}
|
||||
}
|
||||
|
||||
#declare QuadriLight = object
|
||||
{
|
||||
#local T = E_QuadriLight;
|
||||
#local H = H_QuadriLight * 2;
|
||||
// #local H = 5;
|
||||
|
||||
union {
|
||||
object { Quad_lampe translate <-T, H, -T> }
|
||||
object { Quad_lampe translate < T, H, -T> }
|
||||
object { Quad_lampe translate <-T, H, T> }
|
||||
object { Quad_lampe translate < T, H, T> }
|
||||
}
|
||||
}
|
||||
// =======================================================
|
||||
|
||||
// object { OpenBox translate y*1.30 }
|
||||
#if (0)
|
||||
#local RX = -11 + (10*sin(NormClock*9.81) + 3*sin(NormClock*23));
|
||||
#local RZ = 26 - (14*Cos_010(NormClock));
|
||||
object { HexaWood rotate <RX, 37, 0> translate y*0.777 }
|
||||
// object { QuadriPole translate <-3, 0, 2> }
|
||||
#local RZ = 26 - (14*Cos_010(NormClock));
|
||||
object { HexaWood rotate <RX, 37, RZ> translate <9, 2.777, -11> }
|
||||
#end
|
||||
|
||||
object { QuadriLight }
|
||||
|
||||
// object { Le_Decor }
|
||||
object { Le_Sol }
|
||||
object { Underground }
|
||||
// object { La_GroundBase }
|
||||
object { Les_GyroPhares () }
|
||||
/*
|
||||
#declare A = <-21, -0.9, SzSol+9>;
|
||||
#declare B = < 33, -0.7, SzSol+7>;
|
||||
#declare P = Interpolate(A, B, NormClock);
|
||||
object { HexaWood translate P }
|
||||
*/
|
||||
|
||||
// object { Repere translate y*2 }
|
||||
object { Repere scale 10 translate y*6 }
|
||||
object { Le_Decor }
|
||||
|
||||
// =======================================================
|
||||
|
||||
#local CamX = -2.7 + (3.8*Cos_010(NormClock));
|
||||
#local CamY = 0.81 + (4*sqrt(NormClock));
|
||||
#local CamZ = 6.9 - (0.8*Cos_010(NormClock));
|
||||
#local CamX = -2.7 + (2.8*Cos_010(NormClock));
|
||||
#local CamY = 0.81 + (3*exp(NormClock));
|
||||
#local CamZ = 7.777 - (0.8*Cos_010(NormClock));
|
||||
|
||||
#local K = 8;
|
||||
#local CamX = CamX * K;
|
||||
#local CamY = CamY * K * 2;
|
||||
#local CamZ = CamZ * K;
|
||||
|
||||
camera {
|
||||
location <CamX, CamY, CamZ>
|
||||
look_at <0, 0.92, 0>
|
||||
angle 32 + 4*Cos_01(NormClock)
|
||||
look_at <0, 0.98, 0>
|
||||
angle 32 - 5*Cos_01(NormClock)
|
||||
}
|
||||
|
26
globals.inc
26
globals.inc
@ -11,7 +11,7 @@ global_settings {
|
||||
#include "stones.inc"
|
||||
#include "woods.inc"
|
||||
|
||||
#declare Rng1 = seed(1337);
|
||||
#declare Rng1 = seed(1664);
|
||||
#declare foo = rand(Rng1);
|
||||
#declare Rng2 = seed(now*24*60*60);
|
||||
#declare bar = rand(Rng2);
|
||||
@ -24,6 +24,7 @@ global_settings {
|
||||
*/
|
||||
|
||||
#declare SzSol = 34;
|
||||
|
||||
#declare SzBase = 2.85;
|
||||
#declare H_base = 0.10;
|
||||
|
||||
@ -32,10 +33,10 @@ global_settings {
|
||||
|
||||
#declare R_gyro = 0.09;
|
||||
#declare H_gyro = 1.20;
|
||||
#declare H_gylampe = 0.20;
|
||||
#declare H_gylampe = 0.25;
|
||||
|
||||
#declare H_QuadriLight = 20;
|
||||
#declare E_QuadriLight = SzSol * 0.85;
|
||||
#declare H_QuadriLight = 36;
|
||||
#declare E_QuadriLight = SzSol * 1.35;
|
||||
|
||||
/* ------------------------------------------------------------ */
|
||||
/*
|
||||
@ -66,6 +67,23 @@ pigment { rgb <0.40, 0.50, 0.70> }
|
||||
finish { metallic 0.50 reflection 0.55 }
|
||||
}
|
||||
|
||||
/*
|
||||
* deux textures
|
||||
*/
|
||||
#declare T_Beton_1 = texture
|
||||
{
|
||||
pigment { color <0.9, 0.8, 0.8> }
|
||||
normal { dents 0.75 scale 0.3 }
|
||||
finish { roughness 1.00 }
|
||||
}
|
||||
|
||||
#declare T_Beton_2 = texture
|
||||
{
|
||||
pigment { color <0.7, 0.6, 0.6> }
|
||||
normal { dents 0.25 scale 2 }
|
||||
finish { roughness 1.00 }
|
||||
}
|
||||
|
||||
/* ------------------------------------------------------------ */
|
||||
/*
|
||||
* Usefull macros
|
||||
|
41
hexabenz.inc
41
hexabenz.inc
@ -9,7 +9,7 @@ union {
|
||||
#local RA = R_basecone;
|
||||
#local RB = 0.001;
|
||||
cone { 0, RA, y*0.89, 0.0001 }
|
||||
sphere { 0, RA*1.098 scale <1, 0.62, 3.03> translate -0.02*y }
|
||||
sphere { 0, RA*1.098 scale <1, 0.58, 3.03> translate -0.02*y }
|
||||
}
|
||||
// }
|
||||
#end
|
||||
@ -18,7 +18,7 @@ union {
|
||||
// {
|
||||
union {
|
||||
#for (foo, 0, 360, 60)
|
||||
#local E = 0.35;
|
||||
#local E = 0.31;
|
||||
#local Tx = E * sin(radians(foo));
|
||||
#local Ty = E * cos(radians(foo));
|
||||
object {
|
||||
@ -46,14 +46,14 @@ union {
|
||||
|
||||
// ------------------------------------------------------
|
||||
|
||||
#declare R_Tube = 0.20;
|
||||
#declare R_Tube = 0.18;
|
||||
#local L_Tube = 0.54;
|
||||
|
||||
#macro Benz_Tubules ()
|
||||
merge {
|
||||
#local E = R_Tube * 0.75;
|
||||
#local R = 0.01;
|
||||
#for (foo, 0, 360, 20)
|
||||
#local R = 0.009;
|
||||
#for (foo, 0, 360, 30)
|
||||
#local Tx = E * sin(radians(foo));
|
||||
#local Ty = E * cos(radians(foo));
|
||||
#local Dza = z * 0.20;
|
||||
@ -62,7 +62,7 @@ merge {
|
||||
sphere { -Dza, R*1.8 translate <Tx, Ty, 0> }
|
||||
sphere { Dzb, R*1.8 translate <Tx, Ty, 0> }
|
||||
#end
|
||||
#if ( rand(Rng1) < 0.333)
|
||||
#if ( rand(Rng1) < 0.360)
|
||||
texture { Orange_Glass }
|
||||
#else
|
||||
texture { Yellow_Glass }
|
||||
@ -70,8 +70,9 @@ merge {
|
||||
}
|
||||
#end
|
||||
|
||||
#declare Benz_Fuseau = object
|
||||
{
|
||||
// XXX #declare Benz_Fuseau = object
|
||||
// XXX {
|
||||
#macro Benz_Fuseau ()
|
||||
difference {
|
||||
sphere { 0, R_Tube*0.39 }
|
||||
sphere { 0, R_Tube*0.37 }
|
||||
@ -79,13 +80,19 @@ difference {
|
||||
cylinder { < 1, 0, -1>, <-1, 0, 1>, R_Tube*0.21 }
|
||||
}
|
||||
scale <1, 1, 4.4>
|
||||
texture { Shadow_Clouds scale 0.56 }
|
||||
}
|
||||
#if ( rand(Rng1) < 0.360)
|
||||
texture { Shadow_Clouds scale 0.56 }
|
||||
#else
|
||||
texture { WIP_color }
|
||||
#end
|
||||
|
||||
#end // end macro
|
||||
// XXX }
|
||||
|
||||
#declare Benz_Fuseau_Flash = object
|
||||
{
|
||||
union {
|
||||
object { Benz_Fuseau }
|
||||
object { Benz_Fuseau () }
|
||||
light_source { 0,
|
||||
rgb <rand(Rng2), rand(Rng2), rand(Rng2)>
|
||||
fade_distance 0.96
|
||||
@ -93,14 +100,20 @@ union {
|
||||
|
||||
}
|
||||
}
|
||||
rotate -z*clock*6
|
||||
rotate -z*clock*8
|
||||
}
|
||||
|
||||
#declare Benz_Cylindre = object
|
||||
{
|
||||
difference {
|
||||
union {
|
||||
cylinder { z*L_Tube*1.5, -z*L_Tube, R_Tube }
|
||||
cylinder { z*L_Tube*1.6, -z*L_Tube, R_Tube }
|
||||
/* les deux bouts du cylindre creux */
|
||||
torus { R_Tube, 0.012
|
||||
rotate x*90 translate z*L_Tube*1.6 }
|
||||
torus { R_Tube, 0.012
|
||||
rotate x*90 translate -z*L_Tube }
|
||||
|
||||
/* cette sphere devrait devenir
|
||||
un vrai cockpit ? */
|
||||
sphere { z*L_Tube*1.18, R_Tube*0.72
|
||||
@ -129,7 +142,7 @@ union {
|
||||
// #declare HexaBenz = object
|
||||
// {
|
||||
union {
|
||||
#local Rk = (rand(Rng1)-0.5) * 1024;
|
||||
#local Rk = (rand(Rng1)-0.5) * 1312;
|
||||
object { Benz_Cones () rotate z*NormClock*Rk}
|
||||
object { Benz_Tube () }
|
||||
}
|
||||
|
@ -24,14 +24,12 @@ object { HexaBenz () translate < K, 1.67, 0> }
|
||||
|
||||
object { Le_Decor }
|
||||
|
||||
// light_source { <19, 7, 14>, rgb <0.77, 0.79, 0.80> }
|
||||
// light_source { <19, 9, -14>, rgb <0.87, 0.79, 0.70> }
|
||||
|
||||
// object { Repere scale 2 }
|
||||
|
||||
camera {
|
||||
location <-1.9+(8*NormClock), 0.90, 7.59-NormClock>
|
||||
look_at <0.37, 1.37, 0>
|
||||
location <-3.9+(11*NormClock), 1.90, 7.59-NormClock>
|
||||
look_at <0.17, 1.47, 0>
|
||||
// focal_point <0.37, 0.0, 0>
|
||||
// aperture 0.046
|
||||
// blur_samples 30
|
||||
|
23
hexacone.pov
23
hexacone.pov
@ -10,33 +10,26 @@
|
||||
#include "elements.inc"
|
||||
#include "hexabenz.inc"
|
||||
|
||||
#declare Cone_Repere = object
|
||||
{
|
||||
union {
|
||||
object { HexaCone () }
|
||||
// object { Repere translate <-0.4, -0.2, -0.5> }
|
||||
}
|
||||
}
|
||||
|
||||
#local K = 1.48;
|
||||
object { Cone_Repere rotate y*90 translate <-K, 1.7, 1> }
|
||||
object { Cone_Repere translate < K, 1.6, 1> }
|
||||
object { HexaCone () rotate y*90 translate <-K, 1.7, 1> }
|
||||
object { HexaCone () translate < K, 1.6, 1> }
|
||||
|
||||
object { Le_Decor }
|
||||
|
||||
// =======================================================
|
||||
|
||||
light_source { <19, 7, 14>, rgb <0.77, 0.79, 0.80> }
|
||||
light_source { <19, 9, -14>, rgb <0.87, 0.79, 0.70> }
|
||||
// light_source { <19, 7, 14>, rgb <0.77, 0.79, 0.80> }
|
||||
// light_source { <19, 9, -14>, rgb <0.87, 0.79, 0.70> }
|
||||
|
||||
// object { Repere scale 2 }
|
||||
|
||||
camera {
|
||||
location <-1.9+(8*NormClock), 0.70, 7.59-NormClock>
|
||||
look_at <0.37, 1.25, 0>
|
||||
location
|
||||
<-1.9+(8*NormClock), 0.70+NormClock, 7.59-NormClock>
|
||||
look_at <0.07, 1.55, 0>
|
||||
// focal_point <0.37, 0.90, 0>
|
||||
// aperture 0.046
|
||||
// blur_samples 30
|
||||
angle 55 - 28 * Cos_01(NormClock)
|
||||
angle 55 - 26 * Cos_01(NormClock)
|
||||
}
|
||||
|
||||
|
24
passage.pov
24
passage.pov
@ -7,25 +7,25 @@
|
||||
|
||||
#include "globals.inc"
|
||||
|
||||
#include "colors.inc"
|
||||
#include "metals.inc"
|
||||
#include "textures.inc"
|
||||
|
||||
#include "contexte.inc"
|
||||
#include "elements.inc"
|
||||
#include "hexabenz.inc"
|
||||
#include "hexawood.inc"
|
||||
|
||||
// ---------------------------------------
|
||||
|
||||
#include "dynamic.inc"
|
||||
|
||||
#declare PosX = 2.95;
|
||||
#declare PosY = 2.60 + (NormClock*0.28);
|
||||
#declare PosZ = (NormClock-0.5) * 53.27;
|
||||
object { HexaCone () translate <PosX, PosY, PosZ> }
|
||||
|
||||
object { HexaCone () translate <PosX+2.96, PosY+1.72, PosZ-11.5> }
|
||||
object { HexaBenz () translate <PosX-1.96, PosY+2.42, PosZ-17.5> }
|
||||
|
||||
object { Le_Decor }
|
||||
|
||||
#declare PosX = 1.55;
|
||||
#declare PosY = 2.20 + (NormClock*0.28);
|
||||
#declare PosZ = (NormClock-0.5) * 53.27;
|
||||
|
||||
object { HexaBenz () translate <PosX, PosY, PosZ> }
|
||||
object { HexaCone () translate <PosX+1.96, PosY+1.42, PosZ-11.5> }
|
||||
object { HexaCone () translate <PosX-1.96, PosY+2.42, PosZ-17.5> }
|
||||
|
||||
#if ( (clock < 141) )
|
||||
light_source {
|
||||
@ -50,7 +50,7 @@ light_source {
|
||||
#end
|
||||
|
||||
camera {
|
||||
location <-1.76, 1.03, 9.76>
|
||||
location <-2.76, 1.03, 9.76>
|
||||
look_at <PosX+0.08, PosY, PosZ>
|
||||
// focal_point <0, 1, 0>
|
||||
// aperture 0.046
|
||||
|
23
remote.pov
23
remote.pov
@ -7,40 +7,35 @@
|
||||
|
||||
#include "globals.inc"
|
||||
|
||||
#include "colors.inc"
|
||||
#include "metals.inc"
|
||||
#include "textures.inc"
|
||||
|
||||
#include "contexte.inc"
|
||||
#include "elements.inc"
|
||||
#include "hexabenz.inc"
|
||||
#include "hexawood.inc"
|
||||
|
||||
object { Le_Decor }
|
||||
|
||||
#declare A = <-SzSol, 16, -8>;
|
||||
#declare B = <SzSol+4, 18, -11>;
|
||||
#declare P = Interpolate(A, B, NormClock);
|
||||
object { HexaCone () rotate y*((6*NormClock)+80) translate P }
|
||||
|
||||
// object { HexaCone () rotate z*9.1 translate <5, 3, -8> }
|
||||
object { HexaBenz () rotate y*(clock/9) translate <-4, 2, -5> }
|
||||
#include "dynamic.inc"
|
||||
|
||||
object { HexaBenz () rotate y*(clock/9) translate <-9, 3, 7> }
|
||||
|
||||
// ---------------------------------------------------------
|
||||
|
||||
#declare A = <-21, -0.9, SzSol+9>;
|
||||
#declare B = < 33, -0.7, SzSol+7>;
|
||||
#declare A = <-15, -1.9, SzSol>;
|
||||
#declare B = < 23, -0.7, SzSol>;
|
||||
#declare P = Interpolate(A, B, NormClock);
|
||||
object { HexaWood translate P }
|
||||
|
||||
// cylinder { A, B, 0.10 pigment { color Cyan } }
|
||||
|
||||
// ---------------------------------------------------------
|
||||
|
||||
// object { Repere scale 3 translate y }
|
||||
object { Le_Decor }
|
||||
|
||||
// object { Repere scale 3 translate <SzSol, 2, SzSol> }
|
||||
|
||||
#local DistCam = 239;
|
||||
#local CK = 0.70 * NormClock;
|
||||
#local CK = 0.56 + (0.72 * NormClock);
|
||||
#declare CamX = DistCam * sin(CK);
|
||||
#declare CamY = 28;
|
||||
#declare CamZ = DistCam * cos(CK);
|
||||
|
20
scene.pov
20
scene.pov
@ -10,20 +10,18 @@
|
||||
#include "contexte.inc"
|
||||
#include "elements.inc"
|
||||
#include "hexabenz.inc"
|
||||
#include "hexawood.inc"
|
||||
|
||||
#include "dynamic.inc"
|
||||
|
||||
// ---------------------------------------------------------
|
||||
|
||||
object { Le_Decor }
|
||||
|
||||
object { HexaCone ()
|
||||
rotate < 3, 0, -4> rotate y*17 translate y*1.41 }
|
||||
|
||||
object { HexaBenz ()
|
||||
rotate <6, 40, -7> translate <-8, 3, 7> }
|
||||
|
||||
#declare CK = 96 + (clock * 1);
|
||||
#declare Dcam = 2.42;
|
||||
#declare CK = 96 + (clock * 0.36);
|
||||
#declare Dcam = 3.55;
|
||||
#declare CamX = Dcam * sin(radians(CK));
|
||||
#declare CamZ = Dcam * 1.20 * cos(radians(CK));
|
||||
#declare CamZ = CamZ - 0.11; // why ?
|
||||
|
||||
#declare Lat = <0.03, 1.18, 0.17>;
|
||||
camera {
|
||||
@ -35,7 +33,3 @@ camera {
|
||||
angle 70
|
||||
}
|
||||
|
||||
/**
|
||||
light_source { <CamX*1.3, 1.35, 1.2+(CamZ*1.3)>,
|
||||
rgb <0.47, 0.65, 0.49> }
|
||||
**/
|
||||
|
17
survol.pov
17
survol.pov
@ -17,19 +17,14 @@
|
||||
/*
|
||||
* on fait passer un hexatruc
|
||||
*/
|
||||
#declare A = <-SzSol, 16, 8>;
|
||||
#declare B = < SzSol+4, 18, 7>;
|
||||
#declare A = <-SzSol, 16, 9>;
|
||||
#declare B = < SzSol+4, 18, 11>;
|
||||
#declare P = Interpolate(A, B, NormClock);
|
||||
object { HexaCone () rotate y*((12*NormClock)+80) translate P }
|
||||
|
||||
|
||||
/*
|
||||
* nouveau 11 fevrier 2025
|
||||
*/
|
||||
#declare A = <-21, -0.9, (SzSol/2)+1>;
|
||||
#declare B = < 24, 0.7, (SzSol/2)+9>;
|
||||
#declare P = Interpolate(B, A, NormClock);
|
||||
object { HexaWood translate P }
|
||||
#include "dynamic.inc"
|
||||
|
||||
|
||||
|
||||
object { Le_Decor }
|
||||
@ -38,8 +33,8 @@ object { Le_Decor }
|
||||
|
||||
// =======================================================
|
||||
|
||||
#declare Debut = <-3, 47, 47> ;
|
||||
#declare Fin = < 2, 43, 7> ;
|
||||
#declare Debut = <-3, 57, 47> ;
|
||||
#declare Fin = < 2, 53, 7> ;
|
||||
#declare Pos = Cos_01(NormClock);
|
||||
#declare PosCam = Interpolate(Debut, Fin, Pos);
|
||||
|
||||
|
@ -3,7 +3,7 @@
|
||||
Img_Width=1024
|
||||
Img_Height=720
|
||||
|
||||
TEXTCOL="orange"
|
||||
STROKOL="darkblue"
|
||||
TEXTCOL="PowderBlue"
|
||||
STROKOL="RosyBrown"
|
||||
|
||||
NBFRAMES=360
|
||||
|
@ -40,8 +40,8 @@ do
|
||||
# echo $frame $img $txt
|
||||
convert ${TMPIMG} \
|
||||
-font Courier-Bold \
|
||||
-pointsize 15 \
|
||||
-kerning 7 \
|
||||
-pointsize 16 \
|
||||
-kerning 8 \
|
||||
-fill ${TEXTCOL} \
|
||||
-gravity north \
|
||||
-annotate +12+5 "$txt" \
|
||||
|
14
topview.pov
14
topview.pov
@ -12,17 +12,20 @@
|
||||
#include "hexabenz.inc"
|
||||
#include "hexawood.inc"
|
||||
|
||||
object { Le_Decor }
|
||||
|
||||
/* XXX
|
||||
#declare TrX = 1.84 * sqrt(NormClock);
|
||||
#declare TrY = 0.90 + (3.5 * Cos_01(NormClock));
|
||||
#declare TrZ = 9.999 * sqrt(NormClock);
|
||||
#declare TrH = <TrX, TrY, TrZ>;
|
||||
#declare RrY = 97 * sqrt(NormClock);
|
||||
object { HexaCone () rotate y*RrY translate TrH }
|
||||
*/
|
||||
|
||||
object { HexaCone () rotate z*9.1 translate <5, 3, -8> }
|
||||
object { HexaBenz () translate <-4, 2, -6> }
|
||||
#include "dynamic.inc"
|
||||
|
||||
object { HexaCone () rotate z*9.1 translate <7, 3, -8> }
|
||||
object { HexaBenz () translate <-9+NormClock, 2, -6> }
|
||||
|
||||
/*
|
||||
* nouveau 11 fevrier 2025
|
||||
@ -32,11 +35,12 @@ object { HexaBenz () translate <-4, 2, -6> }
|
||||
#declare P = Interpolate(A, B, NormClock);
|
||||
object { HexaWood translate P }
|
||||
|
||||
// light_source { <-16, 17, -24>, rgb <0.51, 0.65, 0.40> }
|
||||
// object { Repere scale 2 }
|
||||
|
||||
object { Le_Decor }
|
||||
|
||||
#declare CamY = 31 + (13.37*Cos_01(NormClock));
|
||||
#declare LatY = -3 + NormClock;
|
||||
#declare LatY = -3 + (1.12*NormClock);
|
||||
|
||||
camera {
|
||||
location <-3.60, CamY, 21.09>
|
||||
|
12
trident.inc
Normal file
12
trident.inc
Normal file
@ -0,0 +1,12 @@
|
||||
|
||||
|
||||
|
||||
/* ------------------------------------------------------
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user