-
Zeichnungen und Grafiken werden in Industrie, Verwaltung und Forschung zunehmend mit automatischen Zeichenmaschinen erstellt. Die hierbei verwendeten Zeichenwerkzeuge wie Tintenschreiber, Tintenkugelschreiber, Gasdruckminen oder auch Tuschezeichnungsspitzen bestimmen wesentlich die Ausgabequalität solcher Plottersysteme.
Bei den Zeichenwerkzeugen für Stiftplotter gibt es grundsätzlich zwei Arten: Einwegstifte und nachfüllbare Stifte. Beide sol ...
mehr
-
7.1 HP-GL
Für die Programmierung eines Plotters definierte Hewlett Packard den HP-GL-Standard (Hewlett Packard Graphic Language). Die Grafikfähigkeiten eines von ESC/P- und PCL-Druckern beschränkten sich auf Rastergrafik. Das heißt, die Grafik wird dem Drucker nur punktweise (Punkte gesetzt oder gelöscht) übermittelt. Wenn man einen Kreis ausgeben will, muß dieser zuerst berechnet werden und anschließend dem Drucker Punkt für Punkt übermittelt ...
mehr
-
. Format: Das erwünschte, maximale Zeichnungsformat sollte Entscheidungskriterium Nummer eins sein. Dabei sind gegenwärtige und künftige Anforderungen zu berücksichtigen. Gültig ist die tatsächlich bedruckbare Fläche, da Ränder für den Medientransport benötigt werden.
. Maximal erreichte Auflösung
. Zahl der Zeichnungen pro Tag
. Wiederholungsgenauigkeit: Dieses Kriterium ist auch unabhängig von dem verwendetem Medium, von der Art und Weise ...
mehr
-
Das Phänomen, das die gleichen Aufrufschnittstellen zu verschiedenen Methoden führen, wird dann Polymorphismus genannt, wenn die Entscheidung, welche Methode aktiv wird, zur Laufzeit erfolgt.
...
mehr
-
Polymorphismus bringt dynamische Bindung. Nicht wie sonst üblich entscheidet der Compiler zur Übersetzungszeit welche Methode aktiviert wird (statische Bindung). Zur Laufzeit wird festgestellt welchen Typ das Objekt hat und dann wird die entsprechende Methode aufgerufen.
Statische Bindung bedeutet, dass die Bindung vom Namen einer Funktion oder Methode zur deren Definition statisch, d.h. zur Übersetzungszeit erfolgt.
Dynamische Bindung be ...
mehr
-
Virtuelle Methoden sind zur Redefinition vorbereitete Methoden. Sie werden in der Basisklasse definiert und stehen darum in jeder Ableitung zur Verfügung. Die Ableitungen können die Methoden nach eigenen Bedürfnissen umdefinieren.
Das Schlüsselwort virtual zeigt an, dass die entsprechende Methode in einer Ableitung neu definiert werden kann.
Bei einer virtuellen Methode wird zur Laufzeit der Typ eines Objekts festgestellt und dann die richt ...
mehr
-
Welchen Sinn machen nun virtuelle Methoden?
Dadurch, dass Entscheidungen zur Laufzeit getroffen werden, macht Polymorphismus Programmstücke flexibler und vielseitiger einsetzbar. Er ergänzt in dieser Hinsicht den Vererbungsmechanismus in ganz wesentlicher Art.
Vererbung bringt Flexibilität in die Programme: Zeiger auf Objekte können gespeichert werden ohne dass man sich vorher auf einen genauen Typ festlegen muss.
Polymorphismus erweitert di ...
mehr
-
Für Konstruktoren und Destruktoren gilt die Regel:
- Destruktoren können bei Bedarf virtuell sein.
- Konstruktoren können niemals virtuell sein.
Ein Konstruktor dient dazu ein Objekt mit bekanntem Typ zu initialisieren. Der Typ ist dabei immer statisch - zur Übersetzungszeit - bekannt.
Objekte werden ja nur auf Veranlassung des Programms erzeugt und dabei wird der exakte Typ angegeben.
Bei der Vernichtung von Objekten ist die Lage etwa ...
mehr
-
Ein Zuweisungsoperator kann zwar virtuell definiert werden, die Zuweisung kann aber trotzdem nicht polymorph sein, da polymorphe Funktionen immer die gleichen Argumenttypen haben müssen.
...
mehr
-
Mit Dynamic Casts kann zwischen Klassen in einer gemeinsamen Ableitungshierarchie konvertiert werden, wenn die Ableitungshierarchie mindestens eine virtuelle Methode enthält.
Die Ableitungshierarchie muss deswegen eine virtuelle Methode enthalten, weil nur bei Klassen mit virtuellen Methoden die Notwendigkeit besteht, Objekten dieser Klassen zur Laufzeit eine Markierung anzuheften, die Auskunft über den Typ gibt.
Ohne virtuelle Methoden fehlt ...
mehr
-
Speicherplatz für beliebige Objekte wird stets statisch, auf Basis des zur Übersetzungszeit bekannten Typs angelegt. Variablen eines Basistyps können darum immer nur Objekte vom Basistyp aufnehmen.
Will man mit Objekten diverser abgeleiteter Typen arbeiten, dann müssen diese über Zeiger angesprochen werden.
...
mehr
-
Das Schlüsselwort virtual zeigt an, dass die Entscheidung über die aufgerufene Methode zur Laufzeit, auf Basis des aktuellen tatsächlichen Typs des Objekts, erfolgt. Wird das Schlüsselwort weggelassen, dann wird aus dem Polymorphismus eine einfache Redefinition.
Im Gegensatz dazu, entscheidet bei der Überladung der Typ der Parameter darüber, welche Funktion oder Methode genau aufgerufen wird.
Überladung und Redefinition sind kein Polymorphi ...
mehr
-
Eine besondere Gefahrenquelle liegt darin, polymorphe Methoden im Konstruktor einer Klasse aufzurufen. Der Grund liegt in der Initialisierungsreihenfolge von Membervariablen während der Konstruktion eines Objekts:
. Zuerst werden die Konstruktoren der Vaterklassen aufgerufen und so deren Membervariablen initialisiert.
. Dann werden die Initialisierer und initialisierenden Zuweisungen der eigenen Klasse aufgerufen.
. Schließlich wird der R ...
mehr
-
Wir wollen uns ein Beispiel ansehen, um diese Ausführungen zu verdeutlichen. Zum Aufbau einer Mitarbeiterdatenbank soll zunächst eine Basisklasse definiert werden, die jene Eigenschaften implementiert, die auf alle Mitarbeiter zutreffen, wie beispielsweise persönliche Daten oder der Eintrittstermin in das Unternehmen. Gleichzeitig soll diese Klasse als Basis für spezialisierte Unterklassen verwendet werden, um die Besonderheiten spezieller Mita ...
mehr
-
A. Grundlagen
PostScript fand mit dem Siegeszug des Desktop Publishing weite Verbreitung und gilt
heute als Standard für die Ansteuerung von Druckern und anderen Ausgabegeräten.
1. Was ist Postscript?
PostScript ist eine Programmiersprache mit mächtigen Grafikfunktionen - wird auch als
Seitenbeschreibungssprache bezeichnet.
Die ganze Seite wird wie ein großes Koordinatensystem betrachtet. Man kann zu jedem Punkt springen und dort eine geome ...
mehr
-
1.1 Entstehung
Der PowerPC ist das Ergebnis einer Zusammenarbeit von IBM, Motorola und Apple. Es handelt sich um einen reinen RISC-Mikroprozessor, der aus dem - von IBM entwickelten - POWER-Konzept weiterentwickelt wurde. Als solcher enthält er die typischen RISC-Merkmale, wie feste Befehlslänge, reduzierte Befehlsanzahl und Superskalar-Pipelines.
Der PPC601 beinhaltet im Wesentlichen 3 parallele Befehlseinheiten - Fixed Point Unit, Float ...
mehr
-
2.1 Geschichte
Die Idee der Gründer, einen benutzerfreundlichen Personal Computer "for the rest of us" zu entwickeln, schien zu einer Zeit teurer Großrechner mehr als utopisch zu sein.
Apple wurde am 1. April 1976, mit Sitz in Palo Alto, Kalifornien, gegründet. Seither hat Apple in vielen Bereichen Pionierarbeit geleistet und Maßstäbe für eine menschlichere Technik gesetzt.
Meilensteine der Firmengeschichte:
April 1976: Der Apple I w ...
mehr
-
Produkt Preis ATS
Power Mac 6500/250 32MB/3GB/2MB SGRAM 3D/12xCD-ROM 30.000
Power Mac 5400/180 16MB/2GB/8xCD-ROM 28.8 Modem 20.000
Power Mac 5500/225 32MB/2DB/2MB S/TV 3D/12xCD-ROM 34.000
Power Mac 4400/200 16MB/1,2GB 8xCD-ROM / 1MB VRAM 20.000
Power Mac 7300/166 16MB/2GB CD/MS-Office 26.000
Power Mac 8600/200 32MB/2GB CD/Zip 45.000
Power Mac 9600 300/64MB/4GB 24xCD-ROM/Zip 70.000
Powerbook 1400cs/133 16MB/8xCD-ROM 42.000
Power ...
mehr
-
Programmiersprachen sind Sprachen, die dazu dienen, Anwendungen auf dem Computer zu erstellen. Da ein Computer nur die Maschinensprache versteht, die von Maschine zu Maschine unterschiedlich ist. Die eigentliche Maschinensprache ist extrem schwer bis gar nicht zu verstehen, deshalb wurde die Sprache Assembler entwickelt. Assembler ist eine Programmiersprache, die jedem Maschinenbefehl einen entsprechenden symbolischen Namen gibt, so werden die Ma ...
mehr
-
C entstand Anfang der siebziger Jahre in Zusammenhang mit dem Betriebssystem UNIX an den AT&T Bell Laboratories. Als Hauptentwickler der Programmiersprache gelten Dennis Ritchie und Brian W. Kernighan. Einige Ideen wurden dabei aus der Programmiersprache BCPL von M. Richards übernommen. Unmittelbarer Vorgänger von C ist das von K. Thompson 1970 im Zusammenhang mit der UNIX Entwicklung entstandene B. Des weiteren gingen noch Konzepte von ALGOL 60 ...
mehr