\leftline{\hskip 3cm\special{gr setpoint 0}} \rightline{\special{gr setpoint 1; poly 0,1} \hskip 3cm}
Dadurch entsteht eine ähnliche Abbildung wie links.
Verwendet wurden in diesem Beispiel zwei \special
-Befehle
des Treibers, nämlich setpoint
, womit die Positionen der
Punkte 0 und 1 festgelegt wurden und poly
, der die Verbindung
der beiden Punkte 0 und 1 durch eine Gerade zeichnete.
Um die Positionierung etwas zu erleichtern,
werden folgende TEX-Macros und Variablen für Plain-TEX definiert:
\newdimen\unitlength \unitlength = 1pt \def\setunitlength#1{% \unitlength=#1\special{gr setunitlength #1}} \def\picture(#1,#2)#3{\vbox to #2\unitlength{\vss\hbox to #1\unitlength{#3\hss}}} \def\put(#1,#2)#3{\unskip\raise#2\unitlength\hbox to 0pt{\kern#1\unitlength#3\hss}\ignorespaces}
Für LATEX ist natürlich die Definition der Macros \picture
und
\put
unnötig, da das picture
-Environment genau dasselbe
leistet. Der nächste Absatz muß deshalb von LATEX-Anwendern
übersetzt werden, d.h. mit den notwendigen \begin{}
und
\end{}
-Zusätzen versehen werden.
Die neue Variable \unitlength
gibt die Maßeinheit an, in der
alle Punktekoordinaten angegeben werden können. Das Macro \setunitlength
dient der Veränderung dieser Maßeinheit, zusätzlich wird
den Treibern diese Veränderung über das Grafik-Kommando
setunitlength
mitgeteilt. Es ist wichtig, sich darüber klarzuwerden,
daß
die TEX-Variable \unitlength
für die Treiber unbekannt ist, und
nur für die beiden Macros \picture
und \put
von Bedeutung ist.
Alternativ ist auch die Verwendung von absoluten Längenangaben, wie sie
TEX versteht (z.B. 1.1 cm, 5 pt), erlaubt.
Mit \picture(w,h)
wird Platz für ein Bild der Breite w
und
der Höhe h
geschaffen. Mit \put(x,y)
können Bildelemente
innerhalb von \picture
positioniert werden.
Beispiel: Die Befehle
\setunitlength{1cm} \centerline{\picture(3,2){\put(0,0){a}\put(3,2){b}}}
1cm
erzeugen das Bild links.
Anstatt der Buchstaben a und b sollen nun die Endpunkte einer
Geraden an dieselben Stellen gesetzt werden. Dies geschieht mit folgenden
Befehlen, die das Bild links liefern:
1cm
\setunitlength{1cm} \centerline{\picture(3,2){ \put(0,0){\special{gr setpoint 0}} \put(3,2){\special{gr setpoint 1; poly 0,1}}}}