Tangramrajzolás

drawtangram_previewA hamarosan megjelenő LibreOffice 3-ban a LibreLogo már képes SVG animációkat is elmenteni. A mellékelt kép a tangramrajzolás Wikipédia SVG animáció animált GIF előnézete, lásd az SVG eredetit a böngészőben.
Az animált SVG képek elmentéséhez elég csak a VÁR parancsot hozzáadni a KÉP blokkhoz. Ha a KÉP blokk VÁR paranccsal végződik, akkor az eredmény egy ismétlődő SVG animáció lesz, úgy mint a példában.

EZ menj x y
HELY [200+x*40, 400-y*40]
VÉGE

EZ vonal x y x2 y2
TOLLATFEL menj x y
TOLLATLE menj x2 y2
VÉGE

EZ rács x y x2 y2
ISMÉTLÉS y2-y+1 [
    vonal x y+HÁNYADIK-1 x2 y+HÁNYADIK-1
]
ISMÉTLÉS x2-x+1 [
    vonal x+HÁNYADIK-1 y x+HÁNYADIK-1 y2
]
VÉGE

KÉP „tangramrajzolás.svg” [
TOLLVASTAGSÁG 2 ELREJT
TOLLHEGY „KEREK”
TOLLSZÍN „VILÁGOSSZÜRKE”
rács 0 0 4 4 VÁR 1000
TOLLSZÍN „FEKETE”
vonal 0 4 4 0 VÁR 1000
vonal 2 4 4 2 VÁR 1000
vonal 1 3 2 4 VÁR 1000
vonal 0 0 3 3 VÁR 1000
vonal 3 3 3 1 VÁR 1000
TÖLTŐSZÍN „PIROS” vonal 0 0 0 4 menj 2 2 TÖLT
TÖLTŐSZÍN „KÉK” vonal 0 0 4 0 menj 2 2 TÖLT
TÖLTŐSZÍN „ZÖLD” vonal 0 4 2 4 menj 1 3 TÖLT
TÖLTŐSZÍN „LILA” vonal 2 4 4 4 menj 4 2 TÖLT
TÖLTŐSZÍN „VILÁGOSZÖLD” vonal 3 1 2 2 menj 3 3 TÖLT
TÖLTŐSZÍN „BÍBOR” vonal 2 4 1 3 menj 2 2 menj 3 3 TÖLT
TÖLTŐSZÍN „SÁRGA” vonal 3 1 3 3 menj 4 2 menj 4 0 TÖLT
VÁR 2000
]

Megjegyzés: a kód tetszőleges koordináta-rendszer használatára mutat példát: a menj eljárás az adott koordinátába viszi a teknőcöt, leképezve azt a LibreOffice/LibreLogo PostScript-szerű koordinátáira. A vonal eljárás kétszer hívja meg a menj eljárást, hogy vonalat húzzon. A vonal és a menj kombinációjával pedig meg lehet rajzolni a tangram színes kitöltött alakzatait is.
A tangram népszerű kirakós játék (lásd a LibreLogo teknőcét!). Fu Traing Vang és Csuan-cse Hsziung kínai matematikusok 1942-ben bebizonyították, hogy 13 konvex alakzatot lehet kirakni a tangramból. Érdemes megpróbálkozni ezek kirakásával:
convex_tangram_shapes_black
[A megoldás (bővített LibreLogo forráskóddal, a koordináta-rendszer origójának egyszerű áthelyezésével, hogy egyszerű koordináták megadásával lehessen megrajzolni több alakzatot is): konvex tangram alakzatok (SVG).]

Vélemény, hozzászólás?

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöljük.