From 4e88f481ff33a266c205eb706b99412259e9b747 Mon Sep 17 00:00:00 2001 From: Tonton Th Date: Thu, 15 Jan 2026 20:29:32 +0100 Subject: [PATCH] on the way to a new hexastar --- hexastar.inc | 33 ++++++++++++++++++++++++++------- 1 file changed, 26 insertions(+), 7 deletions(-) diff --git a/hexastar.inc b/hexastar.inc index 527b96e..ef0da0a 100644 --- a/hexastar.inc +++ b/hexastar.inc @@ -10,14 +10,12 @@ #declare HS_radius = 0.407; -#macro HS_element_a () +#macro HS_element_pointe () union { #local R_a = HS_radius * 0.33333; #local Small = 0.00001; cone { <-1.34, 0, 0>, Small, <-0.6, 0, 0>, R_a } sphere { 0, R_a scale <0.3, 1, 1> translate <-0.6, 0, 0> } - cone { < 1.34, 0, 0>, Small, < 0.6, 0, 0>, R_a } - sphere { 0, R_a scale <0.3, 1, 1> translate < 0.6, 0, 0> } #local R = rand(Rng1); #if ( R < 0.45 ) texture { GoldDark } #elseif ( R < 0.60 ) texture { Aluminum } @@ -33,12 +31,12 @@ union { { union { torus { HS_radius*0.73, 0.0180 } - #local L = 0.0035; + #local L = 0.0032; cylinder { -y*L, y*L, 0.059 } sphere { 0, 0.059 translate -y*L } sphere { 0, 0.059 translate y*L } } -scale <1, 25.90, 1> +scale <1, 25.10, 1> rotate z*90 #local R = rand(Rng1); #if ( R < 0.33 ) texture { Y_Texture } @@ -47,6 +45,26 @@ rotate z*90 #end } +/* ------------------------------------------------------------ */ +/* nouveau 14 janvier 2026 */ +#macro HS_element_queue () +union { + #local R_a = HS_radius * 0.2222; + #local Small = 0.00001; + cone { < 0.44, 0, 0>, Small, < 0.88, 0, 0>, R_a } + sphere { 0, R_a scale <0.7, 1, 1> translate <0.88, 0, 0> } + #local R = rand(Rng1); + #if ( R < 0.45 ) texture { C_Texture } + #elseif ( R < 0.80 ) texture { Aluminum } + #else texture { T_Gold_3C } + #end + } +#end // macro +/* ------------------------------------------------------------ */ +/* nouveau XXX janvier 2026 */ + + // UNE ANTENNE ? + /* ============================================================ */ /* On regroupe les six élements */ #declare HS_les_elements = object @@ -56,8 +74,9 @@ union { #local E = HS_radius; #local Ty = E * cos(radians(Foo)); #local Tz = E * sin(radians(Foo)); - object { - HS_element_a () + union { + object { HS_element_pointe () } + object { HS_element_queue () } translate <0, Ty, Tz> } #end // end for