DZIĘKI

klikam w pomógł.
Wstawiłem to wczoraj w emulca CPC i nie miałem natchnienia by rozkminiać czemu to nie działa.
A tu nieco przyspieszona wersja dla CPC, w emulatorze na 800% wykonuje się w kilka sekund.
10 MODE 2:ORIGIN 320,200:d=2*PI:o=1:w=140:v=20::FOR r=1 TO w STEP v:k=PI/(o*r):FOR l=0 TO d STEP k:S=SIN(l):C=COS(l):x=r*(1-C)*C:y=r*(1-C)*S:PLOT x,-y:PLOT-x,y:NEXT:NEXT
Przy plotach usunąłem pierwszą zmienną jako zbędną, bo wcześniej przestawiłem środek układu współrzędnych z rogu na środek ekranu rozkazem ORIGIN. Skoro ten sam COSinus się liczy 3 razy w każdej pętli, to szybciej jest obliczyć go raz a potem 3 razy użyć wyniku tego obliczenia (zmienna C).
Teraz we fragmencie x=r*(1-C)*C:y=r*(1-C)*S mamy z dużych liter CCCS jest to pierwszy obrazek z artykułu. Zmieniając na CCSC mamy to co na obrazku 4ym (prawie bo trzeba by jeszcze minusy przy plotach zmienić a można nimi lustrzane odbicia robić). CCSS wychodzi ukośna klepsydra, SCCS to inna klepsydra na tle owali, pozostałe kombinacje albo dają pojedynczą kreskę, albo te powyższe ale obrócone o 90 stopni.
Nie mam pomysłu jak obrazki 2 i 3 uzyskać. Chyba coś z krokami w środkowej pętli albo z PI.