/* * H E X A S T A R * * nouveau du dernier jour de 2025, courage paur 2026 <3 */ /* ------------------------------------------------------------ */ /* ============================================================ */ /* Un des six éléments de base */ #declare HS_radius = 0.496; #macro HS_element_a () union { #local R_a = 0.18; #local Small = 0.00001; cone { <-1.5, 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.5, 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.50 ) texture { GoldDark } #else texture { T_Gold_3C } #end } #end // macro /* ------------------------------------------------------------ */ /* * element central */ #declare HS_element_central = object { torus { HS_radius, 0.019 scale <1, 15.92, 1> rotate z*90 } texture { Gold_Nugget } } /* ============================================================ */ /* On regroupe les six élements */ #declare HS_les_elements = object { union { #for (Foo, 0, 360, 60) #local E = HS_radius; #local Ty = E * cos(radians(Foo)); #local Tz = E * sin(radians(Foo)); object { HS_element_a () translate <0, Ty, Tz> } #end // end for object { HS_element_central } } } /* ============================================================ */ /* Et voici l'engin final */ #declare HexaStar = object { object { HS_les_elements } } // #debug "++++++++++ hexastar loaded !\n" /* ============================================================ */