From 7b186fad2a94fce920c870c937f00bd9cb9a2076 Mon Sep 17 00:00:00 2001 From: Tonton Th Date: Mon, 6 Jan 2025 16:05:57 +0100 Subject: [PATCH] et en escadrille ? --- escadrille.pov | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++ hexabenz.inc | 36 +++++++++++++++++++++------------- 2 files changed, 75 insertions(+), 13 deletions(-) create mode 100644 escadrille.pov diff --git a/escadrille.pov b/escadrille.pov new file mode 100644 index 0000000..6b2e6ad --- /dev/null +++ b/escadrille.pov @@ -0,0 +1,52 @@ +/* + * 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 "colors.inc" +#include "metals.inc" +#include "textures.inc" +#include "stones.inc" + +#declare NormClock = clock / 360.0; +#include "contexte.inc" +#include "elements.inc" +#include "hexabenz.inc" + +// ======================================================= + +#for (idX, 0, 3) + #for (idZ, 0, 3) + + #local posX = (idX * 4.56) - 4.7; + #local posY = 1.8 * (rand(Rng1)-0.5); + #local posZ = (idZ * 4.64) - 9.1; + #local Ry = (rand(Rng1) - 0.5) * 16; + #if (rand(Rng1) < 0.25) + object { HexaCone rotate y*Ry translate } + #else + object { HexaBenz rotate y*Ry translate } + #end + #end +#end + +// ======================================================= + +light_source { <-8, 7, -9>, rgb <0.81, 0.65, NormClock> } +light_source { < 11, 7, 4>, rgb <1-NormClock, 0.28, 0.80> } +object { Repere scale 5 } + +#local CamX = -17.7+(2.6*NormClock); +#local CamY = 11.81+(3.3*Cos_01(NormClock)); +#local CamZ = 16.06+Cos_010(NormClock); + +camera { + location + look_at <0.0, 0.0, 0> + angle 48 + } diff --git a/hexabenz.inc b/hexabenz.inc index 475edb6..ff2b70c 100644 --- a/hexabenz.inc +++ b/hexabenz.inc @@ -5,34 +5,39 @@ #declare Benz_Cone_Base = object { -#local RA = 0.123; +#local RA = 0.120; #local RB = 0.001; union { cone { 0, RA, y, RB } - // cylinder { 0, -0.08*y, RA*1.25 scale <1, 1, 4> } - sphere { 0, RA*1.092 scale <1, 0.64, 6> translate -0.02*y } + sphere { 0, RA*1.098 scale <1, 0.62, 3.2> translate -0.02*y } } } -#declare Benz_Cones = object -{ + +#macro Benz_Cones () // = object +// { union { #for (foo, 0, 360, 60) #local E = 0.40; #local Tx = E * sin(radians(foo)); #local Ty = E * cos(radians(foo)); object { Benz_Cone_Base - texture { Soft_Silver scale 16.50 } + #if ( rand(Rng1) < 0.5 ) + texture { Soft_Silver scale 16.50 } + #else + texture { T_Brass_2C scale 13.50 } + #end rotate -z*foo translate } #end } -} +// } +#end // ------------------------------------------------------ #local RT = 0.24; -#local LT = 0.67; +#local LT = 0.61; #declare Benz_Tubules = object { @@ -42,13 +47,17 @@ union { #for (foo, 0, 360, 20) #local Tx = E * sin(radians(foo)); #local Ty = E * cos(radians(foo)); - #local Dz = z * 2.02; + #local Dz = z * 1.09; cylinder { -Dz, Dz, R translate } sphere { -Dz, R translate } sphere { Dz, R translate } #end } -texture { Yellow_Glass } +#if ( rand(Rng1) < 0.333) + texture { Orange_Glass } +#else + texture { Yellow_Glass } +#end } #declare Benz_Fuseau = object @@ -61,8 +70,8 @@ texture { Gold_Nugget scale 0.56 } { difference { union { - cylinder { z*LT*2.08, -z*LT, RT } - sphere { z*LT*1.7, RT*0.72 translate y*RT*0.87} + cylinder { z*LT*1.6, -z*LT, RT } + sphere { z*LT*1.5, RT*0.72 translate y*RT*0.87} } cylinder { z*4, -z*4, RT*0.95 } } @@ -83,7 +92,8 @@ union { #declare HexaBenz = object { union { - object { Benz_Cones rotate z*NormClock*99.999} + #local Rk = rand(Rng1) * 666.666; + object { Benz_Cones () rotate z*NormClock*Rk} object { Benz_Tube } } }