#Make HP-GLInhalt

Handbuch & Dokumentation zu Make HP-GL

Konvertieren von Vektor- und Bildformaten zu Vektor-Steuer-Daten für NC oder CNC. Erstellen von Bohr- und Out-Line Daten für die Platinenherstellung.

ã SYSTEM-CLINCH, Morgentalstr. 44, 8355 Aadorf, Switzerland

Infos: http://www.clinch.ch/clinch/MakeHPGL/Download.htm bzw. MailTo:Info@clinch.ch.

1 Über dieses Handbuchhandbuch

1.1 EinleitungEinleit

1.2 Konventionenkonvent & SymboleSymbole

1.3 Weitere Hilfehlp RessourcenRessourc

2 Allgemeine MerkmaleAllgem

2.1 FunktionsprinzipFunktion

2.2 Hardware VoraussetzungenHardware

2.3 Programm DemoDemo

3 BedienungBedien

3.1 Installationinst

3.2 NetzwerkNetz

3.3 Ladenöffnen & einfügeneinf von Vorlageneinf

3.4 Konvertierungkonvert BohrplanBohr

3.5 Skalierungskalier

3.6 Übermittelnsenden

3.7 Speichernspeicher

3.8 DruckenDrucken

3.9 Abschlusskontrollekontroll

 

4 ProgrammierungProgramm

4.1 Projekt BesonderheitenBesonder

4.2 InterpreterInterpr

4.3 Delphi FunktionenbeschriebDelphi

5 Protokoll DokumentationProtokol

5.1 HP-GLHPGL

5.11 DXFDXF

5.2 ExcellonExcellon

5.3 BMPBMP

5.4 Die ini Dateiini

6 ProjektProjekt

6.1 Die DiplomarbeitDiplom

6.2 Der Ablauf der Projekt-WochenAblauf

7 AnhangAnhang

7.1 AufgabenstellungAufgabe

7.2 Zum AutorAutor

7.3 BegriffserklärungenBegriffe

7.4 StichwortverzeichnisWorte

 

 

 

#1 Über dieses Handbuch

#1.1 Einleitung

Alles was ich hervorheben wollte oder was ich sonst als wichtig erachte ist kursiv dargestellt.

#1.2 Konventionen

In diesem Handbuch werden folgende Konventionen verwendet:

Aufrufe im Windows Menü werden mit eckigen Klammern angegeben z.B. [Datei] [Öffnen] "Test.bmp". Die Tastenkombinationen für diese Funktion wird wie folgt dargestellt: [Alt]+[D] [F] (Menu Datei Öffnen).

#Symbole

Checklisten, die bestimmte Voraussetzungen enthalten.

Vorgehensweise, wie Sie bei einer bestimmten Aufgabe vorgehen müssen.

Hinweis, zusätzliche oder nicht unbedingt erforderliche Informationen, die jedoch erwähnenswert sind.

Unbedingt erforderliche Informationen die besonders beachtet werden müssen.

Empfehlungen und Tips für eine gute Optimierung usw., die für eine bestimmte Situation verwendet werden können, aber nicht für alle Problemstellungen sinnvoll sind.

Für Warnungen vor einer möglichen Gefahr für Daten oder Hardware wird dieses Symbol verwendet.

 

#1.3 Weitere Hilfe Ressourcen

Kunden Service, technische Unterstützung und erwünschte Software-Erweiterungen erhalten Sie auch von SYSTEM-CLINCH Tel.: ++41/52/366.22.22 Hr. Manuel Magnin.

Für die meisten Probleme gibt es eine simple Erklärung, die eventuell bereits bei anderen Benutzern aufgetreten sind und die eventuell bereits auf dem Internet mit den entsprechenden Lösungen veröffentlicht wurden. Zu finden sind diese Seiten unter:

http://www.clinch.ch/CNC bzw. Info@clinch.ch.

 

#2 Allgemeine Merkmale

Das Programm Make HP-GL konvertiert von Vektor- und Bildformaten zu Vektor-Steuer-Daten für NC oder CNC Maschinen. Make HP-GL ist weit mehr als nur ein normales Grafik-Programm. Das Hauptmerkmal ist, dass es aus Punktinformationen Linien erstellt, die für einen zwei- oder drei Achsen Tisch unerlässlich sind. Weiter kann die Farb-Information geändert werden, nach Bohrlöchern auf Platinen gesucht werden oder es können die Leiterplatten Out-Line gefräst werden (Bahnen ausfräsen). Das Skalieren, Drucken und Direktübermitteln ist natürlich auch implementiert.

Dieses Programm dürfte von ausserordentlichem Nutzen für all diejenigen sein, die Prototypen bauen. Die Funktion eignet sich zur Herstellung von Front-Platten, Gravuren, Stempel und Platinen (Bohren und Out-Line). Sie können schnell und kostengünstig kleine Serien herstellen. Das Programm erstellt auf der Grundlage von BMP, HP-GL oder Excellon Dateien eine Fräs-Datei für HP-GL CNC Maschinen. Im folgenden gibt es einen Überblick über die Möglichkeiten von Make HP-GL.

Die vorliegende Version ist als Diplomarbeit 1999 erstellt worden mit einem Gesamtaufwand von ca. 80 Stunden inkl. Dokumentation. Eine Vollversion können Sie von der Firma SYSTEM-CLINCH, Morgentalstr. 44, 8355 Aadorf, Switzerland http://www.clinch.ch/CNC bzw. Info@clinch.ch. erwerben.

#2.1 Funktionsprinzip

Auch wenn Sie schon in einer Stunde eine Frontplatten Gravur haben müssen, es gibt keinen Grund zur Panik. Gehen Sie in folgender Reihenfolge vor:

Zuerst muss die Vorlage bestimmt werden BMP-Bild, Papiervorlage (Scannen-BMP), HP-GL (ab CAD), Excellon (Platinen Bohr Plan), HP-GL

Für Bilder gewünschte Konvertierungkonvert angeben

Übermittelnsenden der Daten zur Fräsmaschine

Probefräsgang zur Ermittlung der Skalierungskalier

Mittels [Bearbeiten] [Skalierenskalier] die gewünschte neue Grösse angeben

Speichernspeicher der generierten Vektoren

Übermittelnsenden der Daten zur Fräsmaschine

Abschlusskontrollekontroll

Sie werden feststellen, dass dieses System in der Einfachheit kaum zu überbieten ist, keine komischen technischen Fragen oder Mitteilungsfenster. Durch das intelligente Expandieren von Punkt-Grafik Bildern, werden Sie weitgehend von mühseliger Tipparbeit entlastet, so dass Ihnen in Windeseile ein perfektes Werkstück vorliegt, welches Sie sofort einsetzen können.

Es stehen Ihnen folgende Musterdateien zum Testen zur Verfügung. "Platine.bmp", "HelloWorld.bmp" , "Mickey.bmp", "Columbia.plt", "Excellon.drl" :-) viel Spass

#2.2 Hardware Voraussetzungen

Das Programm Make HPGL ist eine reine 32-Bit Anwendung - das bedeutet, dass ein 32-Bit Betriebssystem erforderlich ist! Wie Windows 95, Windows 98 oder Windows NT4.0, oder höher so Microsoft’s Gott Bill Gates will.

Vom Rechner her ist ein Pentium 200MHz oder höher zu empfehlen mit 32MB RAM oder mehr!

#2.3 Programm Demo

Hier einige Abbildungen von typischen Arbeitsaufgaben von MakeHPGL

 

 

Das Programm nach dem Start

Nebenan die Anzeige wenn das "Mickey.bmp" oder das "Print.bmp" geladen wurde.

Wenn Sie nun via [Konvert] [Abtasten] verfahren, erhalten Sie das selbe Bild aber nicht mehr als Rastergrafik sondern als Vektorgrafik. (Dies sind dann relativ viele Vektoren!)

 

 

 

Über [Konvert] [Bohr. Suchen] werden die Bohrlöcher gesucht und gefüllt. Die Vektoren werden abgelegt für die Bohr-Listen Datei.

 

 

Über [Konvert] [OutLine] werden Vektoren an das Objekt angelegt. Der Fräsvorgang für diese Polylinien dauert natürlich viel kürzer!

     

 

 

#3 Bedienung

Das Programm ist voll an den Windows SAA Standard angepasst mit Menü und Tastatur Abkürzungen usw.

#3.1 Installation

Die Anwendung wird auf einer Diskette (im FAT-Format) ausgeliefert. Installiert wird das Programm über [Start] [Ausführen] A:Setup.exe wie das Bild unten zeigt.

 

 

Es ist auch möglich das Programm via kopieren zu installieren. Sie können den Verzeichnisnamen frei wählen. Nur das Icon zum Starten muss dann von Hand erstellt werden.

#3.2 Netzwerk

Es ist auch möglich das Programm über ein Netzwerk zu betreiben. D.h. als Systemadministrator können alle Dateien mit dem Read-Only, File-Scan Attribut versehen werden. Wenn Sie möchten, dass die Benutzer SkalierungenSkalier oder Positionen verändern können, so muss zusätzlich das Modify-Attribut für die Datei MakeHPGL.iniini erteilt werden. Wenn das Verzeichnis "Demos" auch auf dem Netzlaufwerk ist, so wird für diesem Ordner zusäzlich das Write Attribut benötigt! Dies erscheint falsch, ist jedoch notwendig, da Windows das Archiv Bit auch beim Laden löscht. Getestet wurde die Software mit folgenden Netzen: Novell-NetWare und Windows95/98 und NT Peer-to-Peer und Microsoft WinNT 4.0 Server.

Bei NetWare wird empfohlen lange Dateinamen einzuschalten, um mit treffenden Dateinamen über 8 plus 3 Zeichen zu Arbeiten. Sie können dies auf der NetWare Konsole mit dem Befehl "Volumes" Prüfen. Wenn Sie keine langen Dateinamen haben, so sehen Sie bitte im Novell-Handbuch unter "ADD NAME SPACE OS2 TO ...." nach.

#3.3 Laden von Vorlagen

Sie haben die Möglichkeit Bilder aus einem beliebigen Programm zu laden. Entweder via Datei oder via ZwischenablageEinf. Für Bildformate steht Ihnen der Windows-BMPBMP Typ zur Verfügung. Für Vektor Formate HP-GLHPGL oder ExcellonExcellon.

 

 

 

Die Menüpunkte nebenan sollten selbsterklärend sein. Ein gewisser Standard für Windows SAA-Oberflächen.

#3.31 Einfügen von Vorlagen

Die meisten Anwendungen, die mit Grafiken zu tun haben, bieten den Benutzern die Möglichkeit, Grafiken zwischen Anwendungen zu bewegen. Das Clipboard-Objekt kapselt die Windows-Zwischenablage und beinhaltet Methoden, die die Grundlage für Operationen wie das Ausschneiden, Kopieren und Einfügen von Grafik (Text und anderen Formaten) bieten.

#3.4 Konvertierung

Die Konvertierung ist der eigentliche Hauptteil der Applikation. Bei diesen Menü-Positionen werden die Vektoren gebildet (meist aus Bit-Image Formaten).

3.41bohr Suchen nach Bohrlöchern im Bild

3.42outline OutLine – es wird versucht an alle Kanten ein Vektor anzulegen

3.43Inline In-Line – es wird in der Mitte jeder Linie ein Vektor eingelegt

3.44abtasten Abtasten – es werden zeilenweise Vektoren eingelegt

3.45abneg Abtasten neg. – dito, jedoch negativ für Stempel & Prägungen

3.46Grauwerte Bild auf Grauwerte konvertieren mit Vektoren

3.47WegOpt Weg Optimierung der Poly-Linien

  Die mit diesem Punkt erstellten Files sind ausschliesslich Vektorbasierend und müssen im HP-GL Format gespeichert werden.

#3.41 Bohrplan

Bei dieser Funktion wird nach Bohrlöchern im Bild gesucht. Zu diesem Zweck wird versucht durch alle vier Quadranten dem schwarzen Rand nach zu gehen. Wenn alle vier Quadranten mit mindestens mit z.B. 10 Pixel und maximal z.B. 60 Pixel durchlaufen sind, so ist es ein Bohrloch.

mindestens: PIXPRODRILLMIN = 10 (aus der ini Datei)

maximal: PIXPRODRILL = 60 (aus der ini Datei)

Bei einem gefundenen Ring wird der Innendurchmesser gemessen und ein HP-GL Befehl in den Puffer eingetragen.

Wenn Sie grossen Grafiken bearbeiten lauft die Verarbeitung bedeutend schneller wenn die Grafik-Anzeige ausgeschaltet wird (mit der [F6]-Taste).

Wichtig: Die zu vektorisierenden Objekte sollten den Rand der Grafik nicht berühren.

#3.42 Out-Line Vektorisieren

Diese Funktion ist speziell für Platinen gedacht, die mit einem Scanner aus einer Zeitschrift eingelesen wurden. Hier wird versucht Vektoren an alle Übergänge von schwarz zu weiss zu legen. Und diese Vektoren nach Möglichkeit zu einer Polilinie aneinander zu hängen, um eine möglichst effiziente Fräszeit zu erreichen.

OutLine ist sehr geeignet um Platinen aus Zeitschriften zu fräsen.

Wichtig: Lassen Sie sich zuvor die Bohrlöcher suchen, da bei dieser Funktion die gefundenen Bohrungen auch gleich gefüllt werden. Auch damits schneller geht!

Wenn Sie den Bohrplan zuerst laufen lassen, so speichern Sie diesen zuvor, vielleicht können Sie ihn ja später brauchen.

#3.43 In-Line Vektorisieren

Diese Funktion ist speziell zum Einlesen von Zeichnungen die mit fixer Linienbreite erstellt wurden. Es wird ein Vektor ins Zentrum jeder Linie eingelegt. Hier wird versucht ein Punkt eines Vektores zu finden mit den Üergängen von weiss zu schwarz (schwarz 1 bis 10 Punkte) zu weiss. Und diese Vektorpunkte nach Möglichkeit zu einer Polilinie aneinander zu hängen, um ein möglichst effizienter Mittelvektor zu erhalten.

Wichtig: Lassen Sie sich zuvor die Konturen glätten um ein besseres Resultat zu erreichen.

#3.44 Abtasten

Hier werden gerade Linien in ein schwarzes Objekt eingepasst. Als Raster wird die Konstante aus der ini Datei verwendet. Achtung: Dieser Wert ist in Pixels! Es wird die ganze schwarze Fläche mit dem vorgegebenen Raster ausgefräst.

Dasheisst der Frässtichel muss mindestens so breit sein wie der Raster!

#3.45 Abtasten negativ

Dies ist die gleiche Funktion wie das Abtastenabtasten, nur, dass nicht das Objekt gefüllt wird sondern der Rest um das Objekt. Diese Funktion ist für Stempel und Prägungen gedacht.

Wenn immer Sie farbige Bilder abtastenabtasten oder OutLinenOutLine möchten, muss die Grafik zuerst auf s/w konvertiert werden, da sonst Fehler entstehen können.

#3.46 Grauwerte

Um ein Bild das Farbe oder Grauwerte enthält fräsen zu können muss ein Muster für die Grauwerte verwendet werden. Diese Funktion erzeugt gleichseitige Dreiecke, je dunckler der Grund desto höher der Dreieckspitz. Wenn das Bild nun von etwas Distanz angesehen wird so sieht man die Objekte wie auf einem schwarz / weiss Foto mit allen Grauwerten.

Wenn immer Sie farbige Bilder abtastenabtasten oder OutLinenOutLine möchten, muss die Grafik zuerst auf s/w konvertiert werden, da sonst Fehler entstehen können.

#3.47 Wegoptimierung

Die Vektoren liegen meist in ungeordneter Reihenfolge vor. Mit dieser Funktion werden die Vektoren so sortiert, dass der kürzeste Weg zwischen den Poly-Linien zu überwinden ist.

Wenn die Optimierung 30% ergibt, so bedeutet das, dass die Gesamt-Länge aller Vektoren (sichtbar und unsichtbar) um 30% verkürzt werden konnten. D.h. die Bearbeitungszeit kann bis 30% kürzer sein!

#3.5 Skalierung

Standardmässig wird die Skalierung aus der ini Datei verwendet. Diese ist mit 40 HP-GL Einheiten pro Pixel angegeben, um auch grosse Bilder von AutoCAD oder Corel-Draw einlesen zu können. Corel-Draw verwendet z.B. 3939 HP-GL Einheiten für 100mm. Dieser Standard wird beim Skalieren verwendet. Zu diesem Zweck klicken Sie auf [Bild] [Skalieren] und dann auf zwei Punkte auf der Grafik die 100mm auseinader liegen. Der neue Pixelmultiplikator wird Ihnen dann angezeigt.

Dieser neue Multiplikator ist erst für die weiteren Vektorisierungen gültig! Also nicht auf die bestehenden Vektoren im Puffer.

#3.51 Spiegeln

Wenn Sie eine positive Vorlage einer Platine aus einer Zeitschrift abscannen, so ist diese meistens zu Spiegeln, da der Fräser die Nullpunkte umgekehrt hat.

#3.6 Übermitteln

Die Übermittlung ist eine unidirektionale Kommunikation. D.h. es werden nur Daten gesendet ohne Hard- oder Software Flusskontrolle (RTS/CTS oder XOn/XOff). Die Kommunikationsparameter sind ebenfalls in der iniini Datei eingetragen und müssen im Normalfall nicht verändert werden.

Die Dateien können auch mit dem Hyper-Terminal von Windows 95 gesendet werden. Bei Windows 98 wird das Hyper-Terminal nicht standardmässig installiert! Sie können dies wiefolgt nachholen. In der System-Steuerung unter [Software] [Windows] [Kommunikation] [Hyper-Terminal] anklicken, und es wird nachgeladen – diesmal sogar ohne den Rechner neu zu starten.

#3.7 Speichern

Speichern ist immer gut, achten Sie aber darauf welche Formate Sie speichern, da meist ein Grafikformat und ein Vektorformat zugleich vorhanden ist!

Das heisst, wenn Sie eine Vektordatei öffnen, wird Ihnen eine Grafik dazu angezeigt, die Sie ebenfalls speichern können. Jedoch bekommen Sie aus einer Bit-Image Grafik nie mehr die gleiche Qualität des Vektorfiles zurückerhalten!

#3.8 Drucken

Beim Drucken sollten keine Komplikationen auftreten!

#3.9 Abschlusskontrolle

Wenn Sie eine Vektorisierung durchgeführt haben, so sollten Sie nachprüfen, ob die Puffernutzung möglich ist, oder ob viel zu viele Vektoren generiert wurden, zum Beispiel aufgrund mangelhafter Grafikvorlagen!

Vor dem Fräsen sollten Sie einen kompletten Durchgang ohne Stichel / Fräser vorziehen, um die korrekte Skalierung zu testen.

Achten Sie speziell darauf, dass das Frästeil nicht spiegelverkehrt ist!

 

#4 Programmierung

Folgende Programme wurden für dieses Projekt verwendet:

 

Delphi V4.0 Standard von Inprise (Borland).

Zur Erstellung der Dokumentation, des Helpfiles und des Handbuches Wurde WinWord 97 SR-1 verwendet. Als Dateiformat wurde rtf gewählt. Dies ist notwendig für den Help-Compiler.

Der Bildeditor V3.0 wird mit dem Delphi installiert und dient der Erstellung von Symbolen und dem Zuschneiden, für alle Aufgaben mit Grafiken.

Der InstallShield wurde verwendet um die Disketten zu erstellen, die eine Installation des Projektes ermöglichen. Es werden auch alle Einträge im Start-Menü usw. erstellt.

Es werden keine Module von Fremdherstellern verwendet und es werden keine dll Dateien benötigt. Das einzige das benötigt wird ist:

MakeHPGL.exe

Das Programm selbst

MakeHPGL.iniini

Vorgabewerte von verschiedenen Parametern

MakeHPGL.hlphlp

Hilfe Datei und Handbuch

Oben die drei Dateien die Notwendig sind zum Starten der Applikation

 

#4.1 Projekt Besonderheiten #Help-File

Die grosse Besonderheit ich nur die Idee - die Dokumentation, das Handbuch und das Help-Filehlp als die selbe Datei zu erstellen. Der Aufwand für die Helpdateihlp und die Dokumentation ist um ein weites über das Soll herausgeragt. Zwar hatte ich im Vergleich mit meinen anderen Kollegen mit dem WinWord 97 SR-1 relativ wenig Probleme. Der Grund liegt wohl im gewählten standardisierten Dateiformat "RTF" Rich Text Format. Wann immer das WinWord Fehlermeldungen brachte, konnte ich einfach alles speichern und das Dokument neu öffnen, schon lief alles wieder wie zuvor. J Witz: Microsoft is not the answer – Microsoft is the question and the answer is no.

Kurz die wichtigen Punkte, damit das RTF-File mit einem Help-Filehlp Compiler in eine Windows Helphlp Datei konvertiert werden kann.

Alle Worte die einen Link verbergen sollen (die einen Sprung auslösen) werden mit einer Fuss- oder Endnote vor dem Wort versehen. Die Endnote hat den Vorteil, dass sie am Ende des Dokumentes erscheint und dann markiert und versteckt werden kann. Damit das ganze als vernünftiges Dokument ausgedruckt werden kann. Als Nummerierung muss [benutzerdefiniert] gewählt werden und das Zeichen [#] eingegeben werden. Damit das "#" nicht vor jedem Titel stört habe ich die Grösse zwei gewählt, damit das Sonderzeichen nicht mehr gedruckt wird.

Alle Worte die angesprungen werden sollen, werden nach dem Wort mit dem Zielnamen versehen und dieser ist ebenfalls zu verstecken.

Alle Haupttitel des Dokumentes sollten nach einem erzwungenen Seitenwechsel mit [Überschrift-3] gewählt werden, dies ergibt eine Titelüberschrift im Helphlp bis zum nächsten erzwungenen Seitenwechsel.

Nicht vergessen die End-Text-Noten zu Verstecken

Um die Überschriften (Ganze Kapitel Nummern = Überschrift-3) in der Kopfzeile zu nutzen muss nach dem Seitenwechsel für den Help-Compiler jeweils noch ein [manueller Seitenwechsel] [fortlaufend] eingefügt werden.

Was vielleicht auch noch besonders ist:

Da ich die hunderttausend von Registry Einträgen von Windows hasse, habe ich auf die Verwendung der Reg-Datenbank verzichtet und eine ini-Datei verwendet. (Die im Programmverzeichnis abgelegt ist).

#4.2 Interpreter

Der Interpreter wurde als single pass aufgebaut, d.h. es wird jede Zeile einzeln verarbeitet ohne eine Nachverarbeitung. Es wird auch nicht zwischen den verschiedenen Vektorformaten unterschieden. Daraus folgt, es könnten theoretisch HP-GL, Excellon und NC-Maschinen Code gemischt in einer Datei vorliegen! Als erstes wird eine Zeichenkette mit einer Kommandozeile generiert (egal welche Vektor-Formate vorliegen). Nun wird vom Zeilenbeginn an nach einzelnen Befehlen gesucht, diese dann gegebenenfalls übersetzt und im Puffer abgelegt.

Die komplette Interpretation wird beim Ladenöffnen erledigt. Alle Vektoren werden dann im HP-GL Format im internen Puffer abgelegt.

#4.3 Delphi Funktionenbeschrieb

Im folgenden möchte ich die wichtigen Funktionen etwas beschreiben.

Suchen nach BohrlochBohr. Bei dieser Funktion wird nach Bohrlöchern im Bild gesucht. Es wird der ganze Bildraster zweidimensional abgetaste. Im Abstand "Raster" aus der ini Datei.

For X:=0 To Bild.X-Raster-1 Step Raster

For Y:=0 To Bild.Y-Raster-1 Step Raster

If (Bild.Pixel(X,Y)=clBlack) And

(Bild.Pixel(X+Raster,Y)=clWhite Then

Ausgabe("übergang von schwarz auf weiss gefunden")

Mit der Funktion oben wird nach möglichen Löchern gesucht.

Wird eine Bedingung gefunden, so wird eine maximale Anzahl Pixel lang nach einem Innkreis gesucht. Ist es ein Kreis, so müssen alle vier Quadranten durchlaffen worden sein.

Eingabe (X,Y)

Int OK = 0 { ist ein Quadrant gefunden }

Int Dir = 0 { Richtung }

Repeat;

If (OK=0) And (Dir=0) Then { Teste 1. Quadrant }

If Bild.Pixels[X+1,Y]=clWhite Then Begin;

Inc(X); Dir:=0; OK:=1 End Else Begin; { Richtung setzen & Ende Durchgang }

If Bild.Pixels[X,Y+1]=clWhite Then Begin; { nun andere Richtung testen }

Inc(Y); Dir:=0; OK:=1 End Else Dir := 1; { andere Richtung OK }

End;

If (OK=0) And (Dir=1) Then { Teste 2. Quadrant }

If Bild.Pixels[X,Y+1]=clWhite) Then Begin;

Inc(Y); Dir:=1; OK:=1 End Else Begin; { Richtung setzen & Ende Durchgang }

If Bild.Pixels[X-1,Y]=clWhite Then Begin; { nun andere Richtung testen }

Dec(X); Dir:=1; OK:=1 End Else Dir := 2; { andere Richtung OK }

End;

If (OK=0) And (Dir=2) Then { Teste 3. Quadrant }

If Bild.Pixels[X-1,Y]=clWhite Then Begin;

Dec(X); Dir:=2; OK:=1 End Else Begin; { Richtung setzen & Ende Durchgang }

If (Bild.Pixels[X,Y-1]=clWhite Then Begin; { nun andere Richtung testen }

Dec(Y); Dir:=2; OK:=1 End Else Dir := 3; { andere Richtung OK }

End;

If (OK=0) And (Dir=3) Then { Teste 4. Quadrant }

If Bild.Pixels[X,Y-1]=clWhite Then Begin;

Dec(Y); Dir:=3; End Else Begin; { Richtung setzen }

If Bild.Pixels[X+1,Y]=clWhite) Then Begin; { nun andere Richtung testen }

Inc(X); Dir:=3; End Else Dir := 4; { andere Richtung OK }

End;

Inc( Count ); { ende Ablauf Zähler }

Until ((Count > 150) Or (Dir = 4)); { Teste 150 Pixels oder 4 Quadranten}

If Dir=4 Then Ausgabe("Es ist ein Kreis");

Zu diesem Zweck wird versucht durch alle vier Quadranten dem schwarzen Rand nach zu gehen. Wenn alle vier Quadranten mit mindestens z.B. 10 Pixel und maximal z.B. 150 Pixel durchlaufen sind, so ist es ein Bohrloch.

Nun muss nur noch der effektive Mittelpunkt gefunden werden, um die Löcher zu füllen. Dies ist notwendig, damit dieses Loch beim nächsten abscannen nicht nochmals gefunden wird!

Eingabe("Eingabe Koordinaten",X,Y);

{ Suchen nach dem effektiven X-Mittelpunkt}

XMin:=X; Xmax:=X;

While (X-(Count shr 1)<XMin) And (Bild.Pixels[XMin,Y]=clWhite) Do Dec(XMin);

While (X+(Count shr 1)>XMax) And (Bild.Pixels[XMax,Y]=clWhite) Do Inc(XMax);

X := (XMax+XMin) shr 1; { Neuer effektiver X Mittelpunkt festlegen }

{ Suchen nach dem effektiven Y-Mittelpunkt}

YMin:=Y; Ymax:=Y;

While (Y-(Count shr 1)<YMin) And (Bild.Pixels[X,YMin]=clWhite) Do Dec(YMin);

While (Y+(Count shr 1)>YMax) And (Bild.Pixels[X,YMax]=clWhite) Do Inc(YMax);

Y := (YMax+YMin) shr 1; { Neuer effektiver Y Mittelpunkt festlegen }

Ausgabe("Effektive Kordinaten",X,Y); { Zurück mit den effektiven Koordinaten }

{ Bohr Durchmesser suchen }

If Abs(XMax-XMin) > Abs(YMax-YMin) Then

Bohrer:=Abs(XMax-XMin) Else Bohrer:=Abs(YMax-YMin);

Ausgabe("Bohrer in Pixels",Bohrer); { Zurück mit dem Bohrer Durchmesser }

Zuerst in der X-Achse vor und zurück suchen. Der Durchschnitt dieser beiden Endwerte ist die effektive X-Position. Das selbe noch für Y...

Zur Ermittlung des Durchmessers muss zuerst der grössere Vektor ermittelt werden, da mit der Messung auch ausserhalb der Mitte begonnen werden kann. Die Differenz beider Werte ist der Durchmesser in Pixel.

VektorisierenOutLine

Auf das Vektorisieren möchte ich nicht so detailliert eingehen wie auf das Bohrloch suchen.

Ich möchte mich nur auf das Konzept dieser Funktion beschränken und kein Code Beispiel verwenden.

Die Lösung dieses Problems wurde nicht über Variablen und Tabellen gemacht sondern gleich im Rastergrafik Speicher. Dies löst einige aufwendige Funktionen mit Sortieren und Einfügen von Tabelleneinträgen.

Als erstes wird bei jedem Übergang von schwarz auf weiss und von weiss auf schwarz ein roter Punkt gesetzt. Dies geschieht in alle Richtungen! Wenn das ganze Bild so abgescannt wurde, kann damit begonnen werden alle schwarzen Punkte zu entfernen (so dass nur die roten übrig bleiben).

Jetzt haben wir eine Out-Line Grafik die allerdings erst in rot im Pixelformat vorliegt. Jetzt müssen wir nur noch den bestehenden Linien nach gehen und Vektoren und Polylinien bilden. Damit sicher alles vektorisiert wird, beginnen wir erneut mit dem abscannen des Pixelrasters, jedoch suchen wir nach roten Punkten. Sobald ein roter Punkt gefunden wurde, wissen wir, dass es sich um ein zu vektorisierendes Objekt handelt.

Als erstes wird dieser erste gefundene Punkt des Objekt auf grün gesetzt, damit er nicht mehr neu als Objekt erkannt wird. Um diesen Punkt herum muss die weitergehende Linie an zwei Orten sein. Die weitergehende Linie muss um diesen grünen Punkt liegen, es gibt also acht Möglichkeiten. D.h. bei jedem Punkt müssen die acht umliegenden Punkte geprüft werden. Wenn ein weiterer gefunden wurde, so wird dieser auch auf grün gesetzt. Auf diese Weise werden alle Linien gefunden, bis keine roten mehr zur Verfügung stehen.

Das Problem das uns jedoch noch stört ist, dass wir jetzt gleich viele Vektoren wie Pixel haben. Dies ist ja noch nicht die Lösung. Um eine vernünftige Anzahl Polylinien zu erhalten wird beim dritten Punkt der Winkel=ArcTan(L X/L Y) errechnet. Nun wird bei jeder weiteren Zielkoordinate die Winkelabweichung getestet. Ist jetzt die Winkelabweichung grösser als die Standard Winkelabweichung so muss ein neuer Polylinienpunkt gesetzt werden. Die Winkelabweichung ist in der ini Datei angegeben z.B. mit 5 Grad (der Winkel ist in Grad d.h. 0-359 Grad gleich ein Kreis). Und das war‘s dann!

Datenspeicherungspeicher: Die transiente (in-memory) Datenspeicherungspeicher erfolgt in einem statischen Array, die persistente Datenspeicherung (Festplatte) in ein TextStream. Es wurden möglichst wenig Variabeln im Hauptprogramm als Public definiert, dafür wurde das Puffer Array etwas grösser gewählt mit 100'000 möglichen Vektoren.

DruckausgabeDrucken: Für die Druckausgabe wurde ein eigenes Druckobjekt erzeugt. Die Daten werden punktweise beim Druckbeginn aus der Grafikanzeige in den Druckpuffer übertragen. Dies hat den Vorteil, dass die Skalierung und die Farbgebung und so weiter neu und sauber generiert wird.

 

#5 Protokoll Dokumentation

#5.1 HP-GL

Die Sprache besteht aus den Zeichen des ASCII-Zeichensatzes, die Kommandos beschreiben. Ein Befehl beginnt dabei immer mit einem sogenannten Mnemotechniken Zeichen (Mnemonik), bestehend aus zwei Gross- (oder Kleinbuchstaben), gefolgt von mehreren Parametern. Die Parameter werden durch Separatoren (Komma und/oder Leerzeichen) getrennt. Ein Separator zwischen dem Befehl und dem ersten Parameter ist nicht unbedingt erforderlich; zur besseren Lesbarkeit kann jedoch ein Leerzeichen eingefügt werden. Einige der Parameter sind optional. Wird einer der optionalen Parameter weggelassen, müssen auch die folgenden Parameter entfallen.

Eine Anweisung wird durch ein Semikolon oder das nächst folgende Schlüsselwort abgeschlossen. Aus Gründen der Lesbarkeit empfiehlt es sich jedoch, immer das Semikolon als Terminator zu benutzen. Zur Textformatierung eingefügte optionale CR- und/oder LF-Zeichen werden ignoriert. Um die Länge der HP-GL-Befehle zu minimieren, sind im Standard alle optionalen Zeichen entfernt worden.

Numerische Werte sind innerhalb des Kommandos als ASCII-String zu übergeben, wobei verschiedene Zahlenformate für die Parameter definiert sind. Integer-Werte dürfen im Bereich zwischen –223 und +223-1 liegen. Weiterhin gibt es noch den clamped integer Type, der den Wertebereich von –32768 bis +32767 umfasst. Bei Kommazahlen liegt der Ganzzahlanteil im Integerbereich und es sind fünf Nachkomma stellen zulässig. Der Dezimalpunkt darf hier weggelassen werden, falls keine Nachkommastellen auftreten. Beim clamped real Format hingegen dürfen die Werte zwischen –32767.9999 und 32767.9999 liegen. Fehlt bei einer Zahl das Vorzeichen, wird der Wert als positiv interpretiert.

Der HP-GL/2 Kern enthält 55 Befehle, die von allen Geräten unterstützt werden müssen. Weitere Befehle sind gerätespezifisch und werden nicht von allen Einheiten unterstützt.

Einige Beispiele:

IN;

Initialisierung

PU;

Pen Up

PD;

Pen Down

PD1000,1000

Pen Down und gehe zu 1000,1000

PA1000,1000

Gehe zu 1000,1000 egal ob Pen Up od Pen Down

PR1000,1000

Plot Relative 1000,1000

SP1

Select Pen 1 (meistens 1=schwarz, 2=rot,...)

WK

Wait Key (Sonderbefehl für NC / CNC

DS Bitte Bohrer 0.8mm einlegen

Text Ausgabe auf Display

Die SkalierungSkalier ist im HP-GL Protokoll nicht definiert. Wir haben uns für die Skalierung vom Corel-Draw entschieden. Dort sind 100mm = 3939 Einheiten

#5.11 DXF

Der DXF standard wurde von AutoDesk entwickelt und wird heute von allen gängigen CAD-Programmen unterstützt. Diese Angaben sie hier besprochen werden sind das minimum um Daten auszutauschen. Dieses Minimum ermöglicht nur 2D kommandos.

Dieses Format ist rein ASCII Text mit den folgenden Sektionen: Header, Tables, Blocks und Entities. Jede Sektion enthält eine anzahl von Gruppen, welche zwei linien in der Datei belegen. Die erste Linie wird Gruppen-Code genannt, es ist eine Integer Zahl im Bereich von 0-999. Die zweite Linie ist der Wert welcher von Gruppen-Code abhängig ist.

Der Gruppen-Code hat folgende Bedeutung:

- 0 - 9 String

- 10 - 59 Real Zahl

- 60 - 79 Integer

- 210 - 239 Real Zahl

- 999 Kommentare

Kopfkommentare und Kopfbereich:

Alle DXF Dateien haben am generell am Angang eine information über die Zeichnung, diese Information ist nur wichtig, wenn spezielle Modelle für AutoCad erzeugt werden müssen. Einige Beispiele was im Datei-Kopf enthalten sein könnte: Zeichnungs specifikationene, momentaner Layer, Rasterabstand, Toleranzen, Füll modus and Flächenmuster, usw. Ein Dateikopf könnte folgendder massen aussehen:

999
DXF [program name]
0
SECTION
2
HEADER
9
$ACADVER
1
AC1006
9
$INSBASE
10
0.0
20
0.0
30
0.0
9
$EXTMIN
10
0.0
20
0.0
9
$EXTMAX
10
1000.0
20
1000.0
0
ENDSEC

 

Tabellenbreich

Diese Parameter werden verwendet um Konstanten vor zu definieren, wie Linie-, Text-Art, Layer, Sicht-Tabelle und Benutzer Kordinaten-System.

0
SECTION
2
TABLES
0
TABLE
2
LTYPE
70
1
0
LTYPE
2
CONTINUOUS
70
64
3
Solid line
72
65
73
0
40
0.000000
0
ENDTAB
0
TABLE
2
LAYER
70
6
0
LAYER
2
1
70
64
62
7
6
CONTINUOUS
0

LAYER

2
2
70
64
62
7
6
CONTINUOUS
0
ENDTAB
0
TABLE
2
STYLE
70
0
0
ENDTAB
0

ENDSEC

Block Bereich

Dieser Bereich ist eigentlich nicht notwendig, jedoch ist es aus kompatibilitätsgründen gut diesen Bereich einzufügen.

0
SECTION
2
ENTITIES
<Geometrische 
  Einträge>
0

ENDSEC

 

Farben

Es sind nur Index Farben im DXF Format unterstützt, die Zuordnung erfolgt über Gruppen Code 62. Der Wert ist der Farbindex. Das folgende Beispiel setzt index Farbe 4

62
4
     

Layer

Die Layer Nummer ist mit dem Gruppencode 8 definiert. Das folgendes Beispiel setzt die Zeichnung auf Layer 2

8
2
     

Geometrie

Einkurzes Beispiel ohne Beschreibung der 3-Funktionen mit (X1,Y1,Z1 - X2,Y2,Z2)

0
LINE
8
2
62
4
10
[X1]
20
[Y1]
30

[Z1]

11
[X2]
21
[Y2]
31
[Z2]
 

Ende der Datei

Das Ende wird mit End Of File angegeben (EOF)

0
EOF
     

 

#5.2 Excellon

Die meisten Platinenherstellungs-Programme können einen Bohrplan in Excellon erstellen. Dies ist eine Textdatei, die alle Koordinaten und Bohrlochdurchmesser enthält. Die Dateiendung ist meist ".drl" für Drill (Loch). Dieses Dateiformat ist eine stark reduzierte NC/CNC Maschinensprache. Die Datei besteht aus einem Kopf der die Werkzeugnummer und Art beschreibt, den Koordinaten und den Werkzeugwechseln. Die Befehle als Muster in der Übersicht:

M72

Masse in Inch (M71=Masse im mm)

M48

Motor Bohrer ein

T1F00S00C0.032

Werkzeug Nummer T1 hat den Durchmesser 0.032mil Inch (0.8128mm)

%

Ende des Kopfteils & Beginn der Koordinaten

T01

Werkzeug Nummer T1

X-02545Y-03528

Koordinaten X=-2545,Y=-3528 (X=-64.64mm, Y=-89.61mm)

X-00635

Koordinaten X=-635,Y=-3528 (X=-16.12mm, Y=-89.61mm)

Y-03448

Koordinaten X=-2545,Y=-3528 (X=-16.12mm, Y=-87.58mm)

M30

Ende Programm

Muster des Excellon Formates

#5.3 BMP

Windows 3.x, Win-NT & Win95/98 benutzen zum speichern von Rasterbildern das BMP-Format. Dies ist ein geräteunabhängiges Format, welches Monochrom und Farbbilder speichern kann. Das mit Windows mitgelieferte Programm PaintBrush ist das wohl populärste Werkzeug, das BMP-Files lesen und schreiben kann. Unter Windows95/98 wird das gleiche Bitmap Format durch das Programm MS-Paint unterstützt. Eine BMP-Datei setzt sich aus mehreren Datenblöcken zusammen.

BITMAP-FILE

(Kopf der Datei)

BITMAP-INFO-HEADER

(Kopf des Bildes)

BITMAP-INFO-RGB-QUAD

(RGB-Pallette des Bildes)

BITMAP-BILDDATEN

(gering gepackte Bild-Daten

Oben Aufbau des BMP-Formats

Auf die detaillierte Beschreibung des Formates möchte ich verzichten, da diese Bilddateien von Windows standardmässig problemlos verarbeitet werden können.

Noch kurz zu den verschiedenen Daten Speicherungsmöglichkeiten. Gängige Vorschläge bei Paint-Brush sind

schwarz / Weiss

1 Bit pro Pixel

nur schwarz

BMP 16

4-Bit pro Pixel

16 Farben

BMP 256

8-Bit pro Pixel

256 Farben

TrueColor 24-Bit

24-Bit pro Pixel

16 Mio Farben

Mögliche Farben (Ich bevorzuge 16-Farben!)

Literatur zu diesem Format: Referenz Handbuch Dateiformate, von Günter Born, Addison-Wesley Verlag

#5.4 Die ini Datei

Da die Registry nicht verwendet wurde und da diese Maschinen spezifisch ist, habe ich auf die Möglichkeiten einer ini Datei zurückgegriffen. Das ini File muss im Verzeichnis des Programmes liegen!

Die ini Datei enthält folgende Variablen:

; Make HP-GL ini Datei

 

; zur Programm Version V0.0

 

; Vorgabe vom 3.99

 
   

[BMPCONVERT]

 

RASTER=2

; AbtastenAbtasten

PIXPRODRILL=60

; Max Pixel auf einem Kreis (der als Bohrloch gilt) opt=30

PIXPRODRILLMIN=10

; Min Pixel auf einem Kreis (der als Bohrloch gilt) opt=10

PIXPROMM=4

; Anz. Pixel ist ein mm (für Bohrloch) opt=4

BMPXFAKTOR=30

; Faktor Xskalier für BMPs (alle BMPs) opt=30

BMPYFAKTOR=30

; Faktor Yskalier für BMPs (alle BMPs) opt=30

WINKELDIFF=3

; Winkelfehler für Polylinie (OutLine) opt=3

PIXPROLINIE=1

; Anzahl Pixel die eine Fräslinie bilden (Abtasten) Opt=1

   

[COMCNC]

 

COM=1

; Anschluss des Plotters oder der Fräse

BAUD=9600

; Übertragungssenden-Rate opt=9600

PARITY=N

; Parität opt=N

BITS=8

; Daten-Bit's 7 oder 8 opt=8

Bei Variablen die in der ini Datei fehlen, werden automatisch mit den Vorgabewerten geladen.

 

#6 Projekt

Als Projekt- und Diplomarbeit stand für mich eher eine Aufgabe die Hardwarenahe ist vor Augen. Es muss sich mechanisch was bewegen, das via PC gesteuert werden kann, also kurz eine Steuerungsaufgabe.

#6.1 Die Diplomarbeit

Diplom-Arbeit Manuel Magnin IT313, Klasse IT300, Kurs IT9699

Am 18. Februar 1999 informierte mich Herr Bettschen, dass er für mich eine eigenständige Applikation für die Diplomarbeit bevorzuge. Zur Diskussion stand eine Hard- / Software Erweiterung beim Display oder ein Konvertierungsprogramm. Da wir am Informatiker TS sind, haben wir uns auf eine reine Softwareaufgabe geeinigt.

Zur Auswahl stand ein Konverter von einer Bohrplandatei zu HP-GL für unsere CNC Steuerung. Sehr interessant wäre auch das Erstellen eines outline Konverters um Printplatten-Prototypen zu Fräsen. Dies wäre mathematisch sehr komplex, um aus einem Bitimage eine entsprechende Vektorisierungsroutine zu programmieren.

#6.2 Der Ablauf der Projekt-Wochen

Journal der Arbeit:

Datum:

Tätigkeit

Aufwand

Do. 18. Feb.

Info Windows-Applikation, Entscheid für Delphi, Bestellung der Software und Fachbücher

 

Sa. 29. Feb.

Einarbeitung in Delphi (Zuhause)

(4h)

So. 30. Feb.

Einarbeitung in Delphi (Zuhause)

(4h)

     

Mo. 1. März

Erhalt der Aufgabenstellung – Einrichten PC, Internet, Office, usw... – Suche nach Excellon definition im Internet (erfolglos) – Bestellung Excellon File bei einem Kollegen.

4h

 

Einlesen Excellon & HP-GL im Delphi

6h

Di. 2. März

Installation der CNC 2.5-D Fräse – Interface eruieren – Hardware Treiberteil anpassen

 

Mi. 3 März

Einlesen von Excellon

4h

 

Suchen nach Bohr-Löchern im BMP & Ablegen

6h

Do. 4. März

Testen der Software, Diskussion mit Hr.Scherrer (Experte)

5h

 

Suchen nach Möglichkeiten für Out-Line

Vektorisieren Out-Line mit mathematischen Mitteln

5h

Fr. 5. März

Vektorisieren Out-Line mit Ähnlichkeitsfunktionen

3h

 

Vektorisieren Out-Line mit grafischem Verfahren

2h

 

Realisieren auf grafische Weise

12h

Sa. 6. März

Einarbeiten in die Funktionsweise von Help-Files

4h

Mo. 8. März

Festlegen: Dokumentation und Help-File ist das gleiche Dokument. Erstellen Dok. & Help

10h

Di. 9. März

Erstellen Dok. & Help, Mängel-Liste erstellen und erledigen

10h

Mi. 10. März

Setup Wizard konfigureren & Setup Disketten erstellen, Info über die Präsentation Hr. Bettschen.

4h

 

Dokumentatieren von Funktionen.

5h

Do. 11. März

Dokumentation lesen und Fehler korrigieren. Diskussion mit Hr.Scherrer (Experte)

4h

 

Excellon Importfilter fertig stellen

6h

Fr. 12. März

Abschluss aller Arbeiten, Disketten, Dokumentation., Unterlagen (Alles auf dem neuesten Stand erstellen)

4h

 

Total der Aufwendungen am Ende des Diploms:

94 Std.

     

Mi. 15. Sept.

Speichern im DXF Vektor-Format & Dokumentation

4h

Sa. 18. Sept.

In-Line Vektorisierung & Dokumentation

4h

So. 26. Sept.

Vektor Wegoptimierung

3h

Mängel-Liste und Behebung:

Mängel

Behebung

Datum / beh.

Spiegeln von BMP nötig

Menü Punkt [Bild] [Spiegeln] eingebaut

8. 3 / 9.3

SP1 (fehlt im HPGL)

Corel-Draw nimmt sonst Farbe weiss!

8. 3 / 9.3

Skalierung dynamisch

Skalierung kann mit der Maus gewählt werden

8. 3 / 9.3

BMP, plt ohne Endung

Endungen fehlen beim Speichern

8. 3 / 11.3

Kapitel Nummern

Kapitel Nummern erstellen

8.3 / 9.3

Excellon skalierung

Skalierung inch anpassen

9.3 / 11.3

Bild Anzeige

Nicht alle PC's zeigen die Grafik alte Videotreiber

21.9 / -.-

DXF Datei Format

Öffnen mit Coredraw geht nicht (Corel Paint ok)?

21.9 / -.-

BMP öffnen

24-Bit BMP können nicht geöffnet werden

21.9 / -.-

 

#7 Anhang

#7.1 Aufgabenstellung

Diplomarbeit ITB 96/99 UNICAM

Kandidaten:

Markus Fürer / Manuel Magnin

Lehrer:

Herbert Bettschen / Bettschen AG

Experte:

Peter Scherrer / Reishauer AG

Aufgabenstellung:

In der Projektarbeit der Kandidaten wurde die Ansteuerung eines Plotters entwickelt. Aus einem 2D-CAD Programm lässt sich ein Plotter über ein Interface ansteuern. Das Programm für den Plotter wurde durch die Interpretation eines HP-GL Files abgeleitet.

Hauptaufgabe Manuel Magnin:

In der Diplomarbeit ist ein weiterer Interpreter z.B. für Bohrdaten (Excellon oder ähnliches Format) zu erstellen. Der Funktionsumfang des Interpreters ist sauber zu dokumentieren.

Hauptaufgabe Markus Fürer:

Der in der Diplomarbeit eingesetzte Plotter ist gemäss Vereinbarung durch eine kleine Fräsmaschine zu ersetzen. Die Ansteuerung der Interfaces ist auf die neue Hardware zu portieren.

Präsentation:

Die Funktion der Hard- und Software ist anhand von aussagekräftigen Demoprogrammen zu demonstrieren.

#7.2 Zum Autor

Diese Applikation wurde von Manuel Magnin während der zweiwöchigen Diplomarbeit Anfang März 1999 an der STF in Winterthur erstellt. Wie bin ich auf die Idee mit Plotter, Fräser und Vektorformaten gekommen? - Seit meiner Lehre als Elektroniker habe ich mich mit der Antriebstechnik sehr verbunden gefühlt. Es bewegt sich etwas - kurz man sieht was man gemacht hat und was alles möglich ist! Seit meiner Selbständigkeit habe ich nebenbei immer wieder Aufträge mit CNC oder NC Maschinen angenommen. Speziell waren dies Reparaturen von Laser-Schneide Anlagen von Raskin.

#7.3 Stichwortverzeichnis und #Begriffserklärungen

[Datei]

[ ] Definition für Tasten oder Menü

ArcTan

Trigonometrische Funktion für den Winkel (Steigung)

BMP

Bit Map Grafik Standart von Windows

Bohrplan

Koordinaten aller Bohrungen und Werkzeuge

Clipboard

Zwischenablage

CNC

Computer Numerical Controld

Display

Anzeige

Drill

Bohrer / Bohrloch

DXF

Data Exchange Format (Vektor Format komplexer als HPGL)

Excellon

Bohr Daten Datei speziell für die Platinenherstellung

FAT

Format für MS-DOS / MS-Windows (File Allocation Table)

HP-GL

Hewlett Packard - Graphics Language

InLine

Vektor im Mittelpunkt der Linie bilden

Interpreter

Erkennen von Befehlen

Kommunikation

Übertragung

Konvertieren

Umwandeln oder verändern

Koordinaten

Position im zweidimensionalen Bildarray

monochrome

Einfarbig

OutLine

Aussenlinie bilden

Peer-to-Peer

Punkt zu Punkt Netzwerk (Workgroup)

persistent

Extern separates Gerät

Polylinie

Zusammenhängende Linie mit mehreren Punkten

Print

Elektronische Leiterplatte

Puffer

Schpeicherbereich flache Datenbank-Tabelle

Quadrant

Ein Viertel eines Kreises

Read-Only

Nur lesen Attribut

Registrierung

Datenbank von Windows für Programmparameter

RGB

Rot Grün Blau

RTF

Rich Text Format (Text mit Formatierung)

SAA

Standard für visuelle Benutzerführung

Select

Auswählen

Skalierung

Vergrössern oder schrumpfen

Terminal

Übertragungs Programm mit Emulation

transient

Intern gehalten

Vektor

Linie mit Ursprung und Ziehl

Vektorisieren

In Polylinien umwandeln

X-Achse

Antrieb in der X-Richtung