Hewlett Packard Graphic Language

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche

Die Hewlett Packard Graphic Language (HP-GL) ist eine von Hewlett-Packard entwickelte Seitenbeschreibungssprache zur Ansteuerung von Stiftplottern. Andere Plotterhersteller haben die Sprache HP-GL zur Ansteuerung ihrer eigenen Plotter übernommen.

Sprachaufbau[Bearbeiten]

HP-GL ist eine einfach aufgebaute Sprache. Die Kommandos bestehen aus zwei Großbuchstaben, denen ein oder mehrere Argumente folgen. Die Übertragung der Daten erfolgt im „Klartext“ (ASCII).

Beispiele für HP-GL-Kommandos
Kommando Bedeutung
PA Position absolute (Stift zu absoluten Koordinaten bewegen)
PR Position relative (Stift um Anzahl von Einheiten bewegen)
PD Pen down (Stift senken)
PU Pen up (Stift heben)
SP Select pen (Stift auswählen)

Das Koordinatensystem basiert auf der kleinsten Einheit, die ein HP-Plotter damals unterstützte und wurde auf 25 µm (40 Einheiten pro Millimeter bzw. 1016 Einheiten pro Zoll) festgelegt.

Inkjet- und Laserplotter[Bearbeiten]

Auch zur Ansteuerung von Inkjet- und Laserplottern wird HP-GL verwendet. Diese Plotter bauen das Bild zunächst im Speicher auf (man spricht vom Rasterisieren) und geben es dann auf Papier aus. Dabei arbeiten diese Plotter mit „virtuellen Stiften“, das heißt es gibt eine Tabelle, in der jeder Stiftnummer eine Linienbreite und gegebenenfalls eine Farbe zugeordnet wird. Diese Tabelle kann fix im Plotter abgespeichert werden (heute kaum mehr gebräuchlich) oder mit den HP-GL-Daten mitgesendet werden (ab HP-GL/2 oder mit herstellerspezifischen Headern).

HP-GL/2[Bearbeiten]

HP-GL/2 ist eine Weiterentwicklung der Sprache HP-GL. Eine wichtige Neuerung ist die Möglichkeit, Strichstärken (und andere Linienattribute) festzulegen sowie binär und somit platzsparende kodierte Befehle (z. B. PE = Polyline Encoding) zu erzeugen. Da HP-GL für Stiftplotter entwickelt wurde, gab es keine Befehle, um die Strichstärken zu definieren, denn diese waren durch die Stifte festgelegt. Der Anwender musste das Stiftkarussel entsprechend seinen Wünschen bestücken. Als die ersten Inkjetplotter aufkamen, musste der Anwender stattdessen am Plotter eine Stifttabelle eingeben. Mit HP-GL/2 wurde dieser unkomfortable und fehlerträchtige Schritt überflüssig.

Beispiele für HP-GL/2 Kommandos
Kommando Bedeutung
NPx Number of Pens (Anzahl der Stifte festlegen); x=1..256
PCx,r,g,b Pen Color (Farbe von Stift x festlegen); x=Stift, r=rot, g=grün, b=blau, jeweils 0..255
PWw,x Pen Width (Strichstärke von Stift x festlegen); w=Strichstärke in mm mit Dezimalpunkt, x=Stift

HP-GL und HP-GL/2 als Datenaustauschformat[Bearbeiten]

Obwohl es nicht dafür geschaffen wurde, entwickelte sich HP-GL wegen seiner Einfachheit zum Datenaustauschformat für Vektordaten von Grafiken. Viele CAD-Programme unterstützen den Export im HP-GL-Format. Eine weitere gängige Möglichkeit, HP-GL-Daten zu erzeugen ist der „Druck in eine Datei“ mit einem entsprechenden Druckertreiber. Das ist problematisch, da die Sprache mit Erscheinen neuer Plottermodelle immer wieder erweitert wird und es dadurch zu Kompatibilitätsproblemen kommen kann. Ein weiteres Problem sind herstellerspezifische Header, die vor den eigentlichen HP-GL-Daten gesendet werden um bestimmte Plottereigenschaften anzusteuern – zum Beispiel die Printer Job Language von Hewlett-Packard oder das Remote Control Format von Océ.

Zur Vermeidung von Kompatibilitätsproblemen gilt (frei nach Jonathan Postel): be liberal in what you accept, be conservative in what you send. Man kann davon ausgehen, dass der Befehlssatz des Plotters HP750C allgemein verstanden wird. Außerdem ist die softwaretechnisch stark begrenzte systembedingte Genauigkeit eines "Druckes" in diesem einfachen Übertragungsformat gegenüber dem DXF-Dateiformat zu beachten.

HPGL wird auch verwendet um Graviermaschinen anzusteuern.

Weblinks[Bearbeiten]