Zeichensatztabelle

Top  Previous  Next

Die Texttabellen werden von Moskito so interpretiert, daß eine formatfreie Eingabe möglich ist. Zeilenumbrüche, Leerzeichen, ... haben kein Bedeutung. Kommentare beginnen mit einem Rufzeichen '!' und enden mit dem Zeilenende. Alle Schlüsselworte müssen in Großbuchstaben geschrieben sein. Symboltabellen werden im Verzeichnis TEXTTAB\*.dat abgelegt.

 

Schlüsselworte:

 

DKY DKA LIN PLG CIT CSP IPO

 

Syntax:

 

statemants::=                statement statements |

statement::=                "LIN" vektor vektoren |

                 "PLG" vektor vektoren |

                 "CIT" koordinate integer |

                 "CSP" koordinate koordinate integer index |

                 "IPO" vektor vektoren |

integer::=                <ganze Zahl>

koordinte::=                integer integer

vektoren::=                vektor vektoren

vektor::=                koordinate

 

Semantik

 

Eine Texttabelle besteht aus zwei Teilen. Der erste Teil besteht aus einer Folge von Buchstaben, die definiert werden sollen. Dabei wird für jeden Buchstaben ein Objekt im Textzeichensegment angelegt. Das Objekt erhält als Objektschlüssel den ASCII-Wert des Buchstabens. Hinter dem Buchstaben wird die Breite des Buchstabens angegeben. Durch Kommata getrennt, werden dann Zeilennummern von angegeben. Ein Leerzeichen wird nur durch seine Breite definiert, so dass in dieser Zeile nur eine Zahl steht. Diese Zahl sollte zur besseren Lesbarkeit eingerückt werden.

 

Die Zeilennummern beziehen sich auf Zeilen im zweiten Teil der Beschreibung. Jede Zeile enthält einen Befehl, der die Geometrie der Zeichen beschreibt. Koordinaten werden in diesen Befehlen aus einem Feld von 256x256 Einheiten angegeben. Eine Zeile kann von mehreren Buchstaben benutzt werden.

 

image5_2

 

Erster Teil:

 

A 150,1,2,3

 

A 150,1,2,3Zweiter Teil:

 

LIN 6,40,59,208

LIN 144,40,59,208

LIN 25,90,125,90

 

LIN-Satz LIN <x1> <y1> <x2> <y2> ... <xn> <yn>

 

Mit einem LIN-Satz lassen sich beliebige, zusammenhängende Polygonzuge darstellen. Es werden jeweils 2 Zahlen als Koordinate aufgefaßt und mit dem Vorgänger verbunden. Als Einheit gilt wieder der 1/100 mm. Um ein geschlossenes Rechteck mit 1 mm Kantenlänge um den Referenzpunkt zu erzeugen ist also die folgende Zeile notwendig:

 

LIN 50 50 -50 50 -50 -50 50 -50 50 50

 

PLG-Satz PLG <x1> <y1> <x2> <y2> ... <xn> <yn>

 

Dieser Satz funktioniert genau so wie ein LIN-Satz. Der Unterschied besteht darin, daß der letzte Punkt wieder mit dem ersten verbunden wird. Bei LIN müßte diese Koordinate zweifach erscheinen. EIn Rechteck um den Referenzpunkt mit 1 mm Kantenlänge entsteht also durch:

 

PLG 50 50 -50 50 -50 -50 50 -50

 

CIT-Satz CIT <x> <y> <Radius>

 

Mit einem CIT-Satz wird ein Vollkreis in das Symbol eingefügt. Ein Kreis um den Punkt (2mm,3mm) relativ zum Referenzpunkt und mit dem Radius 4mm hat die folgende Definition:

 

CIT 200 300 400

 

CSP-Satz CSP <x1> <y1> <x2> <y2> <Radius> {<Index>}

 

Es lassen sich nicht nur Vollkreise, sondern auch Kreisbögen erzeugen. Mit CSP wird ein Kreis vom Punkt 1 zum Punkt 2 erzeugt. Wenn der Radius positiv ist, wird der Kreisbogen gegen den Uhrzeigersinn ausgeführt, sonst mit dem Uhrzeigersinn. Außerdem kann ein Index angegeben werden. Wenn er vorhanden ist und den Wert 1 hat, wird der Kreisbogen mit mehr als 180 Grad ausgeführt. In allen anderen Fällen wird der Kreisbogen mit 180 Grad oder weniger gezeichnet. Ein Kreis mit 1 cm Höhe zwischen den Punkten (0,0) und (0cm,2cm), wobei ein Zwischenpunkt (1cm,1cm) ist, lautet also:

 

CSP 0 0 0 2000 -1000

 

IPO-Satz IPO <x1> <y1> <x2> <y2> ... <xn> <yn>

 

Ein IPO-Satz ist mit einem LIN-Satz identisch. Nur werden zwischen den Punkten keine L-Verbindungen, sondern C-Verbindungen angelegt. Genaueres kann aus der Funktion AddString oder der Beschreibung eines Stringelementes entnommen werden.