Triple-Triple-Spiral-triskelion.svg


Summary

Description A triskelion of three three-fold spirals, which is "wheeled" (enclosed within overall spirals); for simpler versions, see Image:Triple-Triple-Spiral-Trisk-simpler.svg and Image:Triple-Triple-Spiral-Trisk-simple.svg . This is an ornate version of the Triple-spiral symbol. For a basic version of the Triple-spiral symbol, and links to further variants, see Image:Triple-Spiral-Symbol.svg .
Date
Source

Own work - This image is a conversion of the following PostScript code:

%!
/archimdouble{
%%%%%%%%%%%%%%%%
% PostScript program to display an Archimedean spiral by approximating
% it with Bezier curves.  Can display a double spiral (two spirals
% rotated by 180 degrees with respect to each other).
%%%  Parameters:
                 % centerx = horizontal coordinate of center of spiral
                 % centery = vertical coordinate of center of spiral
                 % rotf = degrees to rotate
/sepwid 110 def  % width separating successive turnings of spiral
                 % (half this if double spiral is selected)
/incrm 30 def    % insert a curve point after this number of degrees
/sweeps 1.34 def    % number of 360 degree turnings to show
/double 1 def    % change to 0 to display single spiral
/triple 1 def    % change to 0 to for non-triple inner spiral
%%%  Procedures:
/pi 3.1415926535898 def/radians 57.295779513082 def
/sepwid sepwid pi div 2 div def
gsave centerx centery translate rotf rotate
/aspiral{/first 1 def
    lower incrm sweeps 360 mul{8{dup}repeat
        phase add cos/costh exch def
        phase add sin/sinth exch def
        costh mul radians div/thcosth exch def
        sinth mul radians div/thsinth exch def
        thcosth sepwid mul/x exch def
        thsinth sepwid mul/y exch def
        0 eq phase 90 eq phase 270 eq or and{/slope 999999999 def}{/slope
        sinth thcosth add costh thsinth sub div def}ifelse
        sinth 0 gt sinth 0 eq costh -1 eq and or{/flag -1 def}{/flag 1
            def}ifelse
        /A exch def phase 0 eq phase 180 eq or {A 49.29348 lt A 180 gt A
            196.273450852 lt and A 360 gt A 368.8301 lt and A 540 gt A
            545.9907 lt and A 720 gt A 724.5217 lt and A 900 gt A
            903.6281968 lt and or or or or or{/flag flag neg def}if}if
            phase 120 eq phase 300 eq or{A 10 lt A 80 gt A 100 lt and
            or{/flag flag neg def}if}if
        incrm sub 3{dup}repeat phase add cos sepwid mul mul radians div
            /prevx exch def phase add sin sepwid mul mul radians div
            /prevy exch def
        incrm add 3{dup}repeat phase add cos sepwid mul mul radians div
            /nextx exch def phase add sin sepwid mul mul radians div
            /nexty exch def
        /prevdist x prevx sub dup mul y prevy sub dup mul add sqrt pi
            div def
        /nextdist x nextx sub dup mul y nexty sub dup mul add sqrt pi
            div def
        /normaliz slope slope mul 1 add sqrt def
        0 eq{0 0 moveto/prevbezx phase cos nextdist mul def/prevbezy
            phase sin nextdist mul def/first 0 def}{first 1 eq{x y
            moveto/first 0 def}{prevbezx prevbezy x 1 flag mul
            normaliz div prevdist mul sub y slope flag mul normaliz
            div prevdist mul sub x y curveto}ifelse
        /prevbezx x 1 flag mul normaliz div nextdist mul add def
        /prevbezy y slope flag mul normaliz div nextdist mul add def}ifelse}
    for stroke}def
/phase 0 def aspiral
%%% If different sweeps parameter for second spiral, define here:
double 0 ne{/sweeps 1.43 def/phase 180 def aspiral}if
triple 0 ne{/sweeps 1.6 def/phase 120 def aspiral
double 0 ne{/sweeps 1.1 def/phase 300 def aspiral}if
            /sweeps 1.26 def/phase 240 def aspiral
double 0 ne{/sweeps 1.34 def/phase 60 def aspiral}if}if grestore
%%%%%%%%%%%%%%%%
}def
-81 -75 translate .75 dup scale
/curvedge{gsave centerx centery translate rotf rotate
/lower 582.226 def/phase 60 def/incrm 15.562 def/sweeps 1.67 def aspiral
/lower 500.305 def/phase 0 def/incrm 10.105 def/sweeps 1.46 def aspiral
grestore/lower 0 def}def/lower 0 def
/centerx 377.33333333333333333333333333333 def/centery 550 def/rotf 240 def
archimdouble curvedge
/centerx 670.66666666666666666666666666667 def/centery 550 def/rotf 0 def
archimdouble curvedge
/centerx 524 def/centery 804.03411844343533638402546342081 def/rotf 120 def
archimdouble curvedge/incrm 30 def
524 634.67803948114511212800848780694 translate
/tripl1{/phase 100 def aspiral/phase 220 def aspiral/phase 340 def aspiral}def
/tripl2{/phase 40 def aspiral/phase 160 def aspiral/phase 280 def aspiral}def
gsave
.99463 dup scale/sweeps 3.7 def/lower 1070 def tripl1
grestore
gsave
.99493 dup scale/sweeps 3.85 def/lower 1130 def tripl2
grestore
gsave
.99395 dup scale/sweeps 2.9 def/lower 950 def tripl1
/incrm 5.49 def/lower 1040 def/sweeps 2.916 def tripl1
grestore
/incrm 30 def
gsave
.9943 dup scale/sweeps 3.1 def/lower 1010 def tripl2
/incrm 13.267 def/lower 1100 def/sweeps 3.12 def tripl2
grestore
showpage
%EOF
Author AnonMoos
SVG development
InfoField
The SVG code is valid .
This flag was created with an unknown SVG tool.

Licensing

Public domain I, the copyright holder of this work, release this work into the public domain . This applies worldwide.
In some countries this may not be legally possible; if so:
I grant anyone the right to use this work for any purpose , without any conditions, unless such conditions are required by law.

Captions

Add a one-line explanation of what this file represents

Items portrayed in this file

depicts

image/svg+xml