vd-archiv:listings:4d2014-02-listings
                Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| vd-archiv:listings:4d2014-02-listings [2017-05-22 06:41] – angelegt mka | vd-archiv:listings:4d2014-02-listings [2017-05-23 17:14] (aktuell) – mka | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| ====== 4d2014-02 Listings ====== | ====== 4d2014-02 Listings ====== | ||
| - | {{ : | + | ===== gforth plotter  | 
| + | {{ : | ||
| + | |||
| + | Der Plotter ist ein Nexus-7 Android-Tablet von Google/ | ||
| + | |||
| + | ===== gforth plotter Teil 2 ===== | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | |||
| + | < | ||
| + | |||
| + | |||
| + | \ Grafik für Gforth, von Hannes Teich; Teil 2 | ||
| + |  \ (Teil 1 in 4d2014-01)  | ||
| + | |||
| + | \ Diese 10 Kommandos sind schon beschrieben worden: | ||
| + | : _begin ( -- ) ... ; | ||
| + | : _color { r g b a -- } ... ; | ||
| + | : _clear ( -- ) ... ; | ||
| + | : _line { x1 y1 x2 y2 -- } ... ; | ||
| + | : _rect { x y w h f -- } ... ; | ||
| + | : _oval { x y w h f -- } ... ; | ||
| + | : _circle { x y r f -- ) ... ; | ||
| + | : _plot-on ( -- ) ... ; | ||
| + | : _plot { x y } ... ; | ||
| + | : _plot-off ( -- ) ... ; | ||
| + | : _pause { s -- } ... ; | ||
| + | : _show ( -- ) ... ; | ||
| + | : _end ( -- ) ... ; | ||
| + | |||
| + | \ Ellipsenbogen zeichnen (hohl oder gefuellt) | ||
| + | : _arc { x y w h b a f } ." arc " | ||
| + | $AA0B 2>buf x 2>buf y 2>buf w 2>buf h 2>buf | ||
| + | b 2>buf a 2>buf f 2>buf ; | ||
| + | |||
| + | \ Tortenstueck zeichnen (hohl oder gefuellt) | ||
| + | |||
| + | : _pie { x y w h b a f } ." arc " | ||
| + | $AA0C 2>buf x 2>buf y 2>buf w 2>buf h 2>buf | ||
| + | b 2>buf a 2>buf f 2>buf ; | ||
| + | |||
| + | \ Zeichensatz und Hoehe waehlen | ||
| + | : _font { typ h } ." font " | ||
| + | $AA0D 2>buf typ 2>buf h 2>buf ; | ||
| + | |||
| + | \ Text einfuegen (big endian) | ||
| + | : _text-on { x y } ." text-on " | ||
| + | $AA0E 2>buf x 2>buf y 2>buf ; | ||
| + | : _text { abc } ." text " abc 2>buf ; | ||
| + | : _text-off ( -- ) ." text-off " $AA00 2>buf ; | ||
| + | |||
| + | \ Bezugsort waehlen | ||
| + | : _origin { x y } ." origin " | ||
| + | $AA0F 2>buf x 2>buf y 2>buf ; | ||
| + | |||
| + | \ Nachfolgenden Plot drehen | ||
| + | : _rotate { a } ." rotate " | ||
| + | $AA10 2>buf a 2>buf ; | ||
| + | |||
| + | \ Rechteck mit runden Ecken zeichnen (hohl oder gefuellt) | ||
| + | : _rndrect { x y w h r f } ." rndrect " | ||
| + | $AA11 2>buf x 2>buf y 2>buf w 2>buf h 2>buf | ||
| + | r 2>buf f 2>buf ; | ||
| + | |||
| + | \ Dreieck zeichnen (hohl oder gefuellt) | ||
| + | : _triang { x1 y1 x2 y2 x3 y3 f } ." triang " | ||
| + | |||
| + | $AA12 2>buf x1 2>buf y1 2>buf x2 2>buf y2 2>buf | ||
| + | x3 2>buf y3 2>buf f 2>buf ; | ||
| + | |||
| + | \ Grafikausrichtung speichern | ||
| + | : _save ( -- ) ." save " | ||
| + | $AA13 2>buf ; | ||
| + | |||
| + | \ Grafikausrichtung wiederherstellen | ||
| + | : _restore ( -- ) ." restore " | ||
| + | $AA14 2>buf ; | ||
| + | |||
| + | |||
| + |  \ ####################### | ||
| + | \ Eine Grafik formulieren | ||
| + |  \ ####################### | ||
| + | |||
| + |   | ||
| + | |||
| + | : go _begin \ Dateibeginn | ||
| + | |||
| + | 0 0 0 255 _color \ schwarz | ||
| + |   | ||
| + | 255 255 255 255 _color \ weiss | ||
| + | |||
| + | _show \ zeigen | ||
| + | 1 _pause \ 1 Sekunde | ||
| + | |||
| + | 400 300 800 600 0 _rect \ Rechteck | ||
| + | 400 300 1200 900 _line \ Diagonale | ||
| + | 1200 300 400 900 _line \ Diagonale | ||
| + | |||
| + | _show \ zeigen | ||
| + | 1 _pause \ 1 Sekunde | ||
| + | |||
| + | 400 300 800 600 0 _oval \ Ellipse | ||
| + | |||
| + | _show \ zeigen | ||
| + | 1 _pause \ 1 Sekunde | ||
| + | |||
| + | 800 500 200 0 _circle \ Kreis | ||
| + | |||
| + | _show \ zeigen | ||
| + | |||
| + | 1 _pause \ 1 Sekunde | ||
| + | |||
| + | 627 330 350 350 220 100 1 _pie \ Torte | ||
| + | |||
| + | 100 100 100 255 _color \ grau | ||
| + | |||
| + | 400 300 800 600 45 90 1 _arc \ Bogen | ||
| + | |||
| + | _show \ zeigen | ||
| + | 1 _pause \ 1 Sekunde | ||
| + | |||
| + | 255 255 255 255 _color \ weiss | ||
| + | |||
| + | 350 250 900 700 50 0 _rndrect \ runde Ecken | ||
| + | |||
| + | _show \ zeigen | ||
| + | 1 _pause \ 1 Sekunde | ||
| + | |||
| + | _save \ Drehrichtung | ||
| + | -10 _rotate \ Drehung links | ||
| + | |||
| + |   | ||
| + | 980 0 do i 200 + i s>f 30e f/ fsin 100e f* 770e f+ f>s | ||
| + | _plot \ Sinus | ||
| + | loop _plot-off | ||
| + | |||
| + |   | ||
| + | |||
| + | _show \ zeigen | ||
| + | 1 _pause \ 1 Sekunde | ||
| + | |||
| + | 100 100 100 255 _color \ grau | ||
| + | |||
| + | 1300 900 1700 500 1400 300 1 _triang \ volles Dreieck | ||
| + | |||
| + | _show \ zeigen | ||
| + | 1 _pause \ 1 Sekunde | ||
| + | |||
| + | 255 255 255 255 _color \ weiss | ||
| + | |||
| + | 1500 650 1600 460 1400 460 1 _triang \ volles Dreieck | ||
| + | |||
| + | _show \ zeigen | ||
| + | 1 _pause \ 1 Sekunde | ||
| + | |||
| + | 190 940 _origin \ neuer Bezugspunkt | ||
| + | |||
| + | -90 _rotate \ Drehung links | ||
| + | |||
| + | 3 70 _font \ 3 = Serif | ||
| + | |||
| + | 135 100 _text-on \ Text x y | ||
| + | 256 [char] H * [char] e + _text \ "Hello World " | ||
| + | 256 [char] l * [char] l + _text | ||
| + | 256 [char] o * bl + _text | ||
| + | 256 [char] W * [char] o + _text | ||
| + | 256 [char] r * [char] l + _text | ||
| + | 256 [char] d * bl + _text | ||
| + |   | ||
| + | |||
| + | _show \ zeigen | ||
| + | 100 _pause \ 100 Sekunden | ||
| + | |||
| + | _end ; \ Dateiende | ||
| + | |||
| + | go \ Autostart | ||
| + | |||
| + | \ finis | ||
| + | |||
| + | </ | ||
vd-archiv/listings/4d2014-02-listings.1495428106.txt.gz · Zuletzt geändert: 2017-05-22 06:41 von mka