to kreise.en.eck4 :s :eck :ringe ; Kreise im Kreis ; s = der Radius des Umkreises ; r der Radius der (gelben) Kreise. Diese Kreise bilden die Kette. ; x der Radius der (blauen) Lückenkreise ; y der Radius des (grünen) Zentralkreises. make "si (sin 360/:eck/2) make "r :s*:si/(1+:si) make "y :s-2*:r make "a (sqrt(((:r+:y))^2)-(:r^2)) make "x ((:s-:a)^2)/(2*:r+2*(:s-:a)) ; Großer Kreis ============================ arc 360 :s ; KettenKreisringe 1 ================================ rt 360/:eck/2 repeat :eck[ pu fd :s bk :r pd filled 6 [ arc 360 :r] pu bk :s-:r pd rt 360/:eck] ; Außenringe ================== rt 360/:eck/2 repeat :eck[ pu fd :s bk :x pd filled 3 [ arc 360 :x] pu bk :s-:x pd rt 360/:eck] lt 360/:eck/1 ; KettenKreisringe 2 ================================ rt 360/:eck/2 make "t (tan 360/:eck/2) repeat :ringe-1[ make "p -2*:r*(1+1/(:si*:t))*(:t^2) make "q :r^2 make "r2 -:p/2-sqrt((:p^2)/4-:q) make "abst :r2/:si ; ==================== rt 360/:eck/2 repeat :eck[ pu fd :abst pd filled 6 [ arc 360 :r2] pu bk :abst pd rt 360/:eck] lt 360/:eck/2 rt 360/:eck/2 make "r :r2] ; Mittelring ifelse :ringe=1 [][make "y :abst-:r2] filled 2 [ arc 360 :y] end cs ht kreise.en.eck4 200 10 6