DE2525155C2 - Anordnung zur computergesteuerten Rasterpunktdarstellung von codierter, Liniensegmente bezeichnender Vektorinformation als eine Folge von X/Y Koordinatenwerten - Google Patents
Anordnung zur computergesteuerten Rasterpunktdarstellung von codierter, Liniensegmente bezeichnender Vektorinformation als eine Folge von X/Y KoordinatenwertenInfo
- Publication number
- DE2525155C2 DE2525155C2 DE2525155A DE2525155A DE2525155C2 DE 2525155 C2 DE2525155 C2 DE 2525155C2 DE 2525155 A DE2525155 A DE 2525155A DE 2525155 A DE2525155 A DE 2525155A DE 2525155 C2 DE2525155 C2 DE 2525155C2
- Authority
- DE
- Germany
- Prior art keywords
- memory
- line
- word
- bit
- format
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
Classifications
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/36—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
- G09G5/39—Control of the bit-mapped memory
- G09G5/393—Arrangements for updating the contents of the bit-mapped memory
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/42—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of patterns using a display memory without fixed position correspondence between the display memory contents and the display position on the screen
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Digital Computer Display Output (AREA)
- Image Generation (AREA)
- Controls And Circuits For Display Device (AREA)
- Image Processing (AREA)
Description
Die Erfindung betrifft eine Anordnung zur computergesteuerten Rasterpunktdarstellung von codierter, Liniensegmente
bezeichnender Vektorinformation als eine Folge von X/Y Koordinatenwerten.
Geräte zum Drucken, Abfragen oder bildlichen Darstellen graphischer Daten unterteilt man in Vektortypen oder Rastertypen.
Geräte zum Drucken, Abfragen oder bildlichen Darstellen graphischer Daten unterteilt man in Vektortypen oder Rastertypen.
Ein Vektorgerät kann zeichnen oder abfragen mit einer Serie elementarer Bewegungen in zwei Richtungen.
Wenn diese Bewegungen gerade Segmente sind, wird von Vektoren gesprochen, so daß ein Bild aus einer Reihe
von geraden Liniensegmenten unter direkter Programmsteuerung abgetastet oder aufgebaut werden kann.
Im Gegensatz dazu wird ein Rastergerät durch ein vorgegebenes Rastermuster gespeist, welches jeden Punkt des Abtast- i-Jer Bildanzeigebereiches erschöpfend abdeckt Wenn das Abtastmuster aus einer Anordnung von Punkten besteht, die erst als Punkte pro Zeile und dann als Zeilen pro Seite erzeugt werden, dann erscheint das Muster als ein Rasier. Bei einem Fernsehgerät beginnt der Bildstrahl beispielsweise in der linken oberen Ecke des Schirmes und läuft nach rec·· 's und bildet so eine Zeile. Der Abtaststrahl kehrt dann zur linken Kante zurück, um eine zweite Zeile — einen Punkt tiefer — auf der Bildschirmfläche zu beginnen. Dieser Vorgang wird wiederholt, bis der ganze Bildschirmbereich abgetastet wurde.
Im Gegensatz dazu wird ein Rastergerät durch ein vorgegebenes Rastermuster gespeist, welches jeden Punkt des Abtast- i-Jer Bildanzeigebereiches erschöpfend abdeckt Wenn das Abtastmuster aus einer Anordnung von Punkten besteht, die erst als Punkte pro Zeile und dann als Zeilen pro Seite erzeugt werden, dann erscheint das Muster als ein Rasier. Bei einem Fernsehgerät beginnt der Bildstrahl beispielsweise in der linken oberen Ecke des Schirmes und läuft nach rec·· 's und bildet so eine Zeile. Der Abtaststrahl kehrt dann zur linken Kante zurück, um eine zweite Zeile — einen Punkt tiefer — auf der Bildschirmfläche zu beginnen. Dieser Vorgang wird wiederholt, bis der ganze Bildschirmbereich abgetastet wurde.
Bei zahlreichen Computerprodukten herrschte früher der Vektorbetrieb vor, weil die Programmierung gra- Ij
phischer Befehle für eine Bildanzeigestation mit Größen- und Richtungsinformation formuliert wurde.
Aus verschiedenen Gründen wird die Rasterabtastung und -ausgabe bevorzugt. Zunäc**:,! einmal ist die
Maschinenausrüstung nicht so kostspielig wie bei ähnlichen im Vektorbetrieb arbeitenden Geräten. Zweitens ist f
die Druckleistung für das Rastergerät hoch, da die Bitreihen, die den Raster darstellen, in einer relativ festen Zeit
erzeugt werden und vom Bildinhalt unabhängig sind. Das gilt jedoch nicht für Vektorgeräte. Drittens stellen
Rastergeräte Bilder mit einem höheren Auflösungsgrad her, als sie bei Vektorgeräten aufgrund der digitalen
Punktnatur der Rastergeräte möglich ist. Viertens könnnen Rastergeräte für eine gegebene Auflösungsqualität
mit einer höheren Informationsrate gespeist werden als Vektorgeräte.
Das Grundproblem bei der Anwendung der Rasterausgabegeräte ist die Umwandlung von codierter Vektor-Information
in Rasterform. Sie verlangt eine beträchtliche Maschinenausrüstung, eine hohe Arbeitsgeschwindigkeit
bei der Umwandlung und für die Rastereingabe/Ausgabegeräte, welchp synchrone Abtastcharakteristika
aufweisen müssen. Wie bereits gesagt wurde, ist der Vektorbetneb mit einer bequemen Darstellungsform für die „
Programmierer verknüpft. |
Um ein Rasterbildschirmgerät mit Vektorbetriebsbefehlen zu speisen, muß die implizite Form des Vektorbefehles
(z. B. zeichne Linie: X\ Y\; Xj Y:) umgewandelt wurden in ein explizites Punktmuster, das der wahren
Bahn der Linie möglichst nahe kommt. Dieses explizite Punktmuster kann z. B. in einem Randomspeicher
gespeichert werden. In diesem Zusammenhang taucht allerdings die Frage auf. ob im Speicher aufgezeichnete
Punkte dazu benutzt werden können, das Rasterausgabegerät direkt zu treiben und nicht warten zu müssen, bis
alle Punkte im Speicher gesetzt wurden. Im Betrieb stellte es sich als wünschenswert heraus, ein ganzes Bild vor
der Rasteranzeige zusammenzusetzen, weil graphische Befehle keine Einschränkung für die Reihenfolge oder
Richtung der Vektoren im Bild enthalten. Somit gibt es keine Möglichkeit, die Information auf Zeilenbasis
anzuzeigen, während das Rastermuster erzeugt wird.
Aus der DE-OS 22 46 029 ist es bekannt, in Bildspeicher eines Rastersichtgeräts durch Adressenmodifikation
eine Umformatierung der Daten vorzunehmen, um die gespeicherten Daten in das Wiedergabeformat des
Sichtgeräts zu überführen.
Nach der DE-OS 22 61 141 ist es bekannt, graphische Information, die in kodierter Form vorliegt, in AVV-Koordinalien
des Anzeigeformats umzuwandeln, diese in den Bildspeicher als Bildpunktkoordination einzuspeichern
und zur Wiedergabe auf dem Rastersichtgerät auszulesen. Der Zeitaufwand für eine Umwandlung der
Veklorinformation in eine Rasterform ist dabei relativ hoch, denn durch den zeilenweise orientierten Pufferspeicher
kann pro Zyklus nur jeweils eine Zeile, d. h. nur eine Y- Koordinate berücksichtigt werden.
Die Aufgabe der vorliegenden Erfindung liegt darin, die Umwandlung von codierter Vektorinformation in |
eine Rasterform mit einem geringen Zeitaufwand zu ermöglichen. |
Diese Aufgabe der Erfindung wird in vorteilhafter Weise durch die im kennzeichnenden Teil des Anspruches 1
angegebenen Maßnahmen gelöst
Dabei werden durch die zwischenzeitliche Bereichsformatierung des Speichers im Durchschnitt mehrere
Punkte für alle Vektoren in einer »quadratischen Untergruppe« erfaßt
Wenn im Speicher nicht nur einzelne Bits adressiert werden können, verlangt das Schreiben von Information
in den Speicher und das Lesen von Information aus dem Speicher für die Optimierung verschiedene Formate.
Das wird teilweise von dem Wunsch hergeleitet, bei der Punkteingabe Zeilensegmente in standardisierten
zweidimensior.i!en topologisch benachbarten Formaten darzustellen, wie beispielsweise in quadratischen Untergruppen.
Vorteilhafterweise umfassen quadratische Untergruppen mehrere Punkte, die ein Zeilensegment
definierten, und können daher in den Speicher in einer und nicht in mehreren Zykluszeiten geschrieben werden.
Da die Richtung eines Zeilensegmentes gleichermaßen wahrscheinlich angenommen werden kann, besteht für
eine quadratische Untergruppe eine hohe Erwartungswahrscheinlichkeit für eine RichtungsunempFindlichkeit,
so daß im Durchschnitt mehrere Punkte für alle Vektoren erfaßt werden. Um Daten an ein Rastergerät zu
liefern, müssen andererseits die Bits in jeder Untergruppe in einer für die Rasteradressierung geeigneten
linearen Dimension ausgerichtet sein. Daher müssen die Daten in der quadratischen Anordnung in linearen
Gruppen verzeichnet werden.
Ein Ausführungsbeispiel der Erfindung ist in den Zeichnungen dargestellt und wird anschließend näher
beschrieben. Es zeigt
F i g. IA ein schematisches Schaltbild zur Rasterung codierter Information,
ι i g. 11.» CJFi SCtiCmatiSCiiCS oCiiSituhu ZUP wHlWSHuiUng rSStCrCOuieriCr ϊΠιΟΠπαΐΐΟΰ ίΠ Codierte Deinen, 2Ö
F i g. 2 eine schematische Darstellung eines i-itadressierbaren Speichers mit X/Y- Koordinaten.
F i g. 3A eine schematische Darstellung für einen zeilenformatierten Speicher mit wortorganisierten Speicheradresse,
F i g. 3B eine schematische Darstellung für einen bereichsformatierten Speicher,
F i g. 4A eine schematische Darstellung von Blockgruppierungen aus sequentiell adressierbaren Wörtern,
F i g. 4B eine schematische Darstellung der Speicherstellen innerhalb eines Blockes,
F i g. 5A und 5B eine schematische Darstellung von Wörterblöcken im Zeilen- und Bereichsformat,
Fig. 6A bis 6C ein schematisches Beispiel einer Punktaufzeichnung; Bitplan der aufzuzeichnenden Punkte
(6A); Adreßdarstellung im Zeilenformat (6B); Adreßdarstellung im Bereichsformat (6C),
F i g. 7A und 7B eine schematische Darstellung für die Adreßumwandlung des Zeilen- bzw. Bereichsformates,
F i g. 8A und 8B eine schematische Darstellung des Randomspeichers im Bereichs- (und nach der Umordnung)
im Zeilenformat,
F i g. 9 ein schematisches Logikdiagramm des Datenflusses für die in F i g. IA gezeigte Speicher- und Umordnungslogik
37,
Fig. 10 eine schematische Darstellung von Einzelheiten der Auswahlschaltung (20) und der Steuerlogik (19)
nach Fig. IA,
Fig. U eine schematische Darstellung zur Datentransformation der Formatumwandlungslogik (13) nach
F i g. 1A und 9; geeignet für den Einsatz von Schieberegistern und
Fig. 12 ei.ie Schieberegisteranordnung für die Formatumwandlungslogik 18.
Punktaufr-eichnung und Rastererzeugung
Um eine Folge von Punkten, die einer Linie entsprechen, in einen Speicher zu schreiben, muß eine Folge von
Speicheradressen erzeugt werden. Ein typisches Verfahren für eine derartige Adreßerzeugung ist der Bresenham-Algorahmus
für die Erzeugung gerader Linien. Dieser Bresenham-Algorithmus ist beschrieben in J. F.
Breser.ham »An Algorithm for Computer Control of a Digital Plotter«, IBM Systems Journal, Vol. 4, No. 1,1965,
S. 22 — 30. In diesem Algo/ithmus wird ein Ort angenähert durch eine Folge gerader Liniensegmente. Dieser
Algorithmus ist jedoch typisch für die herkömmliche Art, insofern, als die Segmente durch Betrag und Richtung
definiert sind. Sie müssen in ein explizites Biimuster umgewandelt werden, das in einem Speicher festgehalten
werden Kann. Wenn man jetzt einen bit-adressierbaren Speicher hat, d. h. einen Speicher mit einem Einheit-gro-Ben
Wort, so brings man diesen Speicher in Einklang zu einem zweidimensionalen Bitplan durch Zuordnung von
X- und Y-Koordinaten zu bestimmten Bereichen von Speicheradressen. Ein Speicher von einer Million Bits
entspricht beispielsweise einem Quadratbereich von 1024 χ 1024 Bits. Zur Definition einer jeden Koordinate
braucht man also einen Adreßcode von 210. D. h. insgesamt, daß 20 Adreßbits 2ur eindeutigen Angabe eines
jeden Bits gebraucht werden. Wenn einmal alle Vektoren in ein explizites, im Speicher festgehaltenes Bitmuster
umgewandelt sind, heißen sie »zur Abtastung umgewandelt«. Mit dem Speicher kann man jetzt ein Bildanzeigegerät
durch Adressierung des Speichers beginnend mit Punkten in der linken oberen Ecke des -Y/V-Budes,
indem man jeweils eine horizontale Zeile adressiert, bis der ganze X/Y-Bereich adressiert ist. Die Geschwindigkeit
der Punktschreibung in den Speicher und die Geschwindigkeit, mit der ein Rasterabtastgerät getrieben
werden kann, ist begrenzt durch die Zeit, die man zum Schreiben eines jeden Bit in den Speicher oder Lesen gus
dem Speicher braucht, d. h. durch die Speicherzykluszeit.
Zur Versorgung synchroner Bildanzeigegeräte, wie beispielsweise eines Kathodenstrahlröhrengerätes
braucht man natürlich eine hohe Datenrate. Wenn z. B. ein Bild aus 1024 χ 1024 Bits mit einer Geschwindigkeit
mit 60 Wiederholungen pro Sekunde an ein solches Kathodenstrahlröhrengerät gesendet wird, dann muß der
Inhalt vom Speicher mit einer Bitdatenrate von über 60 Millionen Bits pro Sekunde gelesen werden. Das
erfordert andererseits erne Speicherzykluszeit von etwas unter 16 Nanosekunden. Ein solcher Speicher ist
außerordentlich kostspielig in der heutigen Technologie zu erstellen.
Eine Lösung dieses Problemes mit der bisherigen Technik bestand darin, daß man mehrere BL's in einem
Speicherzyklus adressierte. So konnte man z. B. ein Speicherwort aus 64 Bits in einer Mikrosekunde adressieren,
um eine zur Auffrischung eines Kathodenstrahlröhrenbildes aus 1024 χ 1024 Bits ausreichende Datenrate zu
erhalten. Ein solcher Speicher ist immer noch ein bit-adressierbaren Speicher mit einer langsamen Zykluszeit. Da
die Bits in einem Speicher topologisch nebeneinander in horizontalen Punktreihen eines Bitplanes liegen, nennt
man diesen Speicher einen zeilenformatierten Speicher. Wegen dieses Zeilenformates kann man einem Rasterbildgerät
Bits mit der geforderten Geschwindigkeit zuführen. Dadurch wird jedoch in keiner Weise die Punktschreibzeit
heruntergesetzt, d. h. die Zeit, die zum Einlesen von Punkten, welche graphische Koordinaten (X/Y)
repräsentieren, in eindeutige Speicheradressen gebraucht wird.
Punktschreiben, Rastererzeugung und Kormate
Um Punkte mit möglichst großer Geschwindigkeit in den Speicher schreiben zu können, muß in jedem
Speicherzyklus auf mehrere Bits zugegriffen werden können. Es sei angenommen, die Liniensegmente hätten
willkürliche Orientierung und Länge. Statistisch gesehen ist eine Maximierung der Punktschreibgeschwindigkeit
für Liniensegmente willkürlicher Orientierung und Position möglich, wenn die Bits des Speicherwortes ungefähr
quadratischen Bereichen des Bitplanes entsprechen. Da die Bits in einem Speicherwort topologisch, sowohl in
der X-Richtung als auch in der V-Richtung des Bitplanes nebeneinander liegen, nennt man einen solchen
Speicher einen bereichsformatierten Speicher. Die Schwierigkeit bei der Maximierung der Punktschreibgeschwindigkeit
liegt in den beiden unterschiedlichen Formaten, dem Zeilenformat und dem Bereichsformat. D. h„
die Bits im Speicherwort entsprechen in den beiden Formaten verschiedenen Stellen im X/Y-P\an. In einem
konventionellen Speicher müssen also die Daten nach dem Einschreiben der Punkte, aber vor dem Anfang der
Rasterabtastung umgeordnet werden; und zwar so schnell wie möglich, weil sich dadurch eine zusätzliche
Verzögerung und eine langsamere durchschnittliche Punkt-Schreibgeschwindigkeit ergibt.
Das Umw^ndlungsgerät im allgemeinen
In Fig. IA ist ein Gerät zum Schreiben von Datenpunkten in tiiien Puffer und zum Umordnen dieser Daten
gezeigt, damit mit diesen Daten ein Rasterbildanzeigegerät gespeist werden kann. Das Gerät enthält eine Quelle
codierter Infon, ation, wie beispielsweise einen Computer 10 zur Erzeugung von Liniensegmentinformation.
Jedes Liniensegment stellt eine Folge von X/V-Koordinatenwerten dar. Ein Sereichswortformatierer 39 bringt
aufgrund der Vektorinformation den Vektor oder das Liniensegment in das Format eines Bereichswortes,
welches eine quadratische Anordnung von Punkten hat. Gleichzeitig wird eine die Punkte in der Speichermatrixanordnung
16 darstellende Adresse erzeugt. Die Umordnung oder Neuformatierung der Daten von einem
Bereich in linearer Anordnung erfolgt durch die Speicher- und Umformungslogik 37. Diese Logik speist wiederum
einen Raster-Umwandler 41. Da das System auch mit einem Bildschirm-Ein/Ausgabegerät verwendet
werden kann, isi ein Räsierbiidänzcigcgcfäi 23 däfgestcni, weiches mit einem Leüchioiift ziisammcnvr-irki. der
mit dem Computer 10 über den Rückkopplungsweg 38 gekoppelt ist.
In F ι g. 1B ist die Quelle 41' für die rastercodierten Daten gezeigt, die von einem kleinen Abtastelement 23
gebildet werden, welches eine Speicher- und Umformatierlogik 37' treibt. Diese Logik wandelt lineare Anordnungen
von Rasterdaten in Bereichswörter (rechtwinklige Untergruppen) um.
Punktaufzeichnung, Koordinatenplanung und Bitspeicher-Wortadressierbarkeit
Der Mittelpunkt bei der Funktion der Punktaufzeichnung ist die Bitadressierbarkeit, wenn die X/Y-Koordinaten
in rechtwinkligen Untergruppen oder linearen Anordnungen (Bereich und Zeilenformat) aufgezeichnet
werden. Diese Beschreibung dient als Grundlage zur Erklärung des Umformatieralgorithmus. in dem topologisch
benachbarte, rechtwinklige Untergruppen umgeformt werden in lineare Anordnungen im Randomspeicher
16.
In F i g. 2 ist ein Bitplan f»r einen bitadressierbaren Speicher gezeigt Der Speicher entspricht einer An^rdnung
von Punkten, in der sich LMN-Bits in horizontaler Richtung und KN-Bhs in vertikaler Richtung befinden,
wobei K, L, M und N ganze Zahlen sind. Das Produkt MN definiert die Größe des im Umordnungsalgorithmus
benutzten Speicherwortes. Jedes Bit kann durch eine absolute Zahl adressiert werden. Die Adresse des unteren
linken Bits ist Null und das untere rechte Bit hat die Bezeichnung LMN—\. Das äußerste linke Bit in der zweiten
Zeile von unten ist LMN. Das äußerste rechte Bit in der zweiten Zeile ist 2LMN— 1.
Außer der Identifizierung eines jeden Punktes in der Anordnung durch eine absolute Zahl können die Bits
durch ein X/V-Koordinatensystem adressiert werden. In diesem Λ/Y-Koordinatensystem ist das Bit in der
linken unteren Ecke der Anordnung als Punkt 0,0 bezeichnet Das Bit rechts unten in der Ecke ist 0,LMN-1. Das
äußerste linke Bit in der zweiten Zeüe ist bezeichnet mit 1,0 usw. Daraus kann man eine Beziehung zur
Erzeugung von Speicheradressen aus Koordinatenpaaren ableiten:
Speicheradresse = X + (LMN) Y
Wenn ein LMN eine Potenz von 2 ist dann werden bei Multiplikation mit LMN die V-Bits nach links
verschoben um eine Anzahl von Stellen, die gleich der Potenz von 2 sind.
Punktschreibung, Koordinatenplanung und Zeilenspeicherwortadressierbarkeit
In F i g. 3A ist ein Zeilenformatspeicher gezeigt mit demselben Bitplan wie in F i g. 2. Dieser Speicherplan setzt
sich aus NKL Speicherwörtern zusammen, die für einen wortorganisierten Randomspeicher geeignet sind,
wobei jedes Wort MN Bits enthält und nach Punktreihen ausgerichtet ist. Die stark ausgezogenen rechteckigen
Bereiche sind Speicherwörter; sie sind mit ihren entsprechenden Wortadressen bezeichnet. Die Zahlen in den
Wörtern sind die Bitnummern. So ist der Punkt in der linken unteren Ecke das Bit 0 des Wortes 0. Das Bit in der
rechten unteren Ecke ist das Bit MN—\ des Wortes L-X. Das äußerste linke Bit in der zweiten Punktreihe ist
das Bit 0 des Wortes L usw. Diese Punkte entsprechen den X/Y-Koordinaten (0,0); (0,LMAZ-I); (1,0) usw. Die
Formel zur Erzeugung der Wort- und Bitadressen aus den Koordinatenpaaren lautet:
Adresse (Wort) = (X + (KMN)Y)MN =
Adresse (Bit) = MODx1n(X + (LMN)Y) = Rest von
Wenn LMN 2* und das Produkt MN2m * " ist, dann reichen die Adressen der Bits in einem Wort von 0 bis
2'" *"-l. Diese Adresse kann durch eine Binär-Wertzahl m + η dargestellt werden. Für diesen Fall besteht die
Bitadresse lediglich aus den niederen m + η Bits der binären Darstellung von X + 2* Yund die Wortadresse ist
die verbleibende Gruppe der werthohen Bits.
Punktaufzeichnung, Koordinatenplan und Wortbereich-Adressierbarkeit
In Fig.3B ist das Bereichswortformat mit demselben Bitplan wie in Fig.2 gezeigt. Dieser Speicherplan
umfaßt NKL Speicherwörter, von denen jedes NiV/Bits enthält. M Bits liegen horizontal und Λ/Bits vertikal. Die
stark ausgezogenen rechteckigen Bereiche sind Speicherwörter und mit ihren Adressen bezeichnet. Die Zahl in
den Wörtern ist die Bitzahl. Somit ist das linke untere Bit in der Anordnung das Bit 0 des Wortes 0. Das untere
rechte Bit ist das Bit M— 1 des Wortes LN-1. Das äußerste linke Bit in der zweiten Punktzeile ist jetzt das Bit M
des \vortes 0 usw. Diese Punkte entsprechen wie oben den X/Y-Koordinaten (0,0), {0,LMN— 1), (1,0) usw. Die
Formel zur Erzeugung der Wort- und Bitadressen aus diesen Koordinatenpaaren ist folgende:
Adresse (Wort) = [X]M + LN[Y]n
Adresse (Bit) = Modv(X) + MMoOn(Y), (1)
worin[XJy und Μοάγ(Χ)ν/ϊε oben definiert sind.
Wenn LMN gleich ist 2* und MN2m + " ist, dann ist M jetzt 2m und Λ/ist 2". Die Adressen der Bits in einem
Speicherwort reichen immer noch von 0 bis 2m + "— 1. Jetzt kommen jedoch die m Bits der Bitadresse m + η von
der X-Koordiiiate und die η Bits kommen von der V-Koordinate. Insbesondere werden die wertniederen m Bits
der X-Koordinate zu den wertniederen Bits der Bitadresse. In ähnlicher Weise werden die wertniederen η Bits
der V-Koordinate zu den werthohen Bits der Bitadresse. Die verbleibenden Bits der X-Koordinate und der
K-Koordinate bilden die Speicherwortadresse.
Punktaufzeichnung codierter graphischer Daten in einen Puffer und die Umformung
in die Rasterform als Drei-Schritt-Verfahren
Das Gesamtziel besteht bekanntlich in der Übertragung codierter Daten, die Liniensegmente darstellen, aus
einem Computer 10 an ein Bildanzeigegerät des Rastertyps (z. B. das Ausgabegerät 23 nach Fig. IA in drei
Funktionsstufen).
Die erste Stufe ist die Umwandlung der codierten Daten in A/Y-Koordinaten und die Eintragung der
Koordinaten in einem Randomspeicher 16. Dazu werden die Speicherwörter wie in einem Bereich oder einem
Unterformat befindlich behandelt.
Die zweite Stufe ist die Umwandlung topologisch benachbarter Unterbereiche in eine lineare Anordnung
oder ein Zeilenformat
Die letzte Stufe schließlich ist die Adressierung der im Zeilenformat stehenden Daten durch das Rasterbildanzeigegerät.
Anschließend werden diese Vorgänge genauer im Zusammenhang mit den in Fig. IA und IB gezeigten
Ausführungsbeispielen beschrieben.
Erster Verfahrensschritt
Im ersten Verfahrensschritt werden die Bildinformationen darstellenden codierten Daten vom Computer 10 in
das Pufferregister Ii gelesen. Ein Daten-Korrversions-Logikeiernent 12 transformiert die im Register ί ί gespeicherten
codierten Daten in Λ/Ύ-Koordinaten. Diese Koordinaten müssen an entsprechende Stellen des Randomspeicher
16 gelegt werden; dazu muß eine Entsprechung zwischen den Speicherwörtern und den rechtwinkligen
Abschnitten (oder Untergruppen) eines abstrakten Koordinatenverzeichnisraumes hergestellt werden.
Infolgedessen kann jedes Bit im Speicher im Verhältnis 1 :1 in einem Punkt im Planraum aufgezeichnet werden.
Die Koordinatenpunkte werden durch die Adreß- und Steuerlogik 13 in Speicherwort- und Bitadressen umgewandelt.
Das Logikelement 13 berechnet nach (1) effektiv eine Adresse, Jede durch das Element 13 erzeugte
Zeile umfaßt zwei Komponenten, nämlich eine Wortadresse und eine Bitadresse. Die Adressen der Wörter
nehmen bezug auf den Randomspeicher 16 und entsprechen der Untergruppe des Planes. Jede Bitadresse wird
an das Bereichsformatregister 14 geleitet. Die Wortadresse wird an den Randomspeicher 16 über die Steuer- und
Adreßausw'ihlschaltung 20 angelegt. Die Planaufzeichnung erfolgt durch logische ODER-Verknüpfung der die
Punkte darstellenden Bits im Bereichsformatregister mit Hilfe der durch die Steuerlogik 13 erzeugten Bitadreßkomponente.
Solange die aus der XO-'-Koordinate abgeleitete Wortadresse sich nicht ändert, liegt der aufzuzeichnende
ίο Punkt im Bereich der rechteckigen Untergruppen und kann natürlich im Bereichsformatregister aufgezeichnet
werden, ohne daß man den Randomspeicher 16 adressieren muß. Wenn sich die Wortadresse ändert, dann liegt
der aufzuzeichnende Punkt außerhalb der laufenden Untergruppe.
Um diese Punkte auch aufzuzeichnen, muß der Inhalt der laufenden Untergruppe »gerettet« werden. Dazu
adressiert man zunächst den laufenden Inhalt des Speichers an derselben Untergruppenposition. Der laufende
Inhalt im Speicher und das zu »rettende« Bereichswort werden logisch durch das Logikelement 15 kombiniert
und in den Speicher 16 an derselben Bereichswortstelle eingegeben. Nachdem der laufende Inhalt des Bereichsformatregisters
logisch kombiniert und in den Speicher 16 eingegeben wurde, steht das Register zur Aufzeichnung
neuer Koordinatenpunkte in einer anderen Untergruppe zur Verfügung. Dieses Verfahren wird fortgesetzt,
bis die durch die kodierte Darstellung erzeugten Punkte erschöpft sind.
Zweiter Verfahrensschritt
Im nächsten Verfahrensschritt wird der Inhalt des Speichers so umgeordnet, daß er im linearen Wortformat |
adressiert werden kann. Eine Forderung dieses Verfahrens besteht in der Konvertierung von Speicherplatz, |
indem man Untergruppen durch lineare Anordnung zur Adressierung durch die Rasterbildanzeigeeinrichtung
ersetzt.
Es stellt sich die Frage, welches die kleinste Dateneinheit ist, die innerhalb der Speichereinschränkungen
bequem umgeordnet werden kann. Die Umordnung des Speichers vom Zeilenformat in das Bereichsformat oder I
umgekehrt, erfolgt in Gruppen von N Speicherwörtern, die zusammen einen N Punkte hohen mal MN Punkte
breiten Teil der Anordnung überlagern, wie sie beispielsweise in Fig.4B gezeigt ist. Der N mal MN große
Abschnitt der Punktanordnung wird Block genannt und ist die Grund-Umordnungseinheit. Die ganze von diesen
Blocks erfaßte Punktanordnung ist in F i g. 4A gezeigt.
In den F i g. 5A und 5B sind das Zeilenformat und das Bereichswortformat gezeigt, die das Punktmuster des in
F i g. 4B gezeigten Blocks überlagern. Das erste Speicherwort hat nach der Darstellung die Adresse A, die ein
Vielfaches von MN ist. Dadurch ist sichergestellt, daß die die Punktanordnung überlagernden Blocks so sind, wie
es in F i g. 4A gezeigt ist.
Die Umordnung auf Blockebene besteht aus folgenden Operationen:
Die Umordnung auf Blockebene besteht aus folgenden Operationen:
1. Abruf von/VWörtern aus dem Speicher 16 in einen Arbeitsspeicher.
AO 2. Die Bits 0 bis m— 1 eines jeden der Wörter 0 bis N— 1 nimmt man in dieser Reihenfolge und schreibt sie in
AO 2. Die Bits 0 bis m— 1 eines jeden der Wörter 0 bis N— 1 nimmt man in dieser Reihenfolge und schreibt sie in
den Speicher als Bits 0 bis MN— 1 zurück in die Stelle Λ + 0.
■3. Die Bits m bis IM— 1 eines jeden der Wörter 0 bis N— 1 nimmt man in dieser Reihenfolge und schreibt sie in
■3. Die Bits m bis IM— 1 eines jeden der Wörter 0 bis N— 1 nimmt man in dieser Reihenfolge und schreibt sie in
den Speicher als Bits 0 bis MN— 1 in die Stelle A +1 zurück.
4. Der Schritt 3 wird für die Stellen A + 2 bis A + N— 2 wiederholt.
4. Der Schritt 3 wird für die Stellen A + 2 bis A + N— 2 wiederholt.
5. Man nimmt die Bits (N-1) M bis MN—\ eines jeden der Wörter 0 bis N— 1 in dieser Reihenfolge und
schreibt sie in den Speicher als Bits 0 bis MN— 1 in die Stelle A + N— 1 zurück.
Wenn der Block im Zeilenformat stand, steht er jetzt im Bereichsformat. Wenn der Block im Bereichsformat
stand, steht er jetzt im Zeilenformat. Dieser Prozeß muß für jeden Block im Speicher für eine vollständige
Umordnung ausgeführt werden.
Die Umordnung der Daten im Speicher 16 wird funktionell ausgeführt durch die Speicher- und Umformatier-Iogik37
in F i g. IA. Der erwähnte Umordnungsspeicher ist als Formatlogik-Umwandlungseiement 18 ausgelegt.
Ein solches Element enthält Einrichtungen zur seriellen Umsetzung der Transformation oder Umordnung, wie
sie z. B. in den obigen Schritten 1 bis 5 beschrieben wurde. Die serielle Umsetzung umfaßt sowohl das Lesen von
Information in das Element als auch das Herausziehen von Information aus dem Element. Die serielle Umsetzung
oder der Umformatierungsschritt verlangt keine Rechenoperationen im üblichen Sinne. Die Funktion kann
auch durch einen doppelt adressierbaren Speicher wahrgenommen werden, wie er beispielsweise in der US-Patentschrift
32 77 449 beschrieben ist. Die Randomnatur des Matrixspeichersystems mit vertikaler Adressierbarkeit
ist jedoch für diese Erfindung nicht notwendig. Die genaue Wechselbeziehung zwischen den Elementen 15
bis 18 bei der Umformatierung wird anschließend näher im Zusammenhang mit den F i g. 10 bis 12 beschrieben.
Dritter Verfahrensschritt — lineare Anordnung für Rasterzeilenadressierung
Die jetzt im Speicher 16 stehenden Daten werden als horizontale Zeilensegmente des beispielsweise in F i g. 2
gezeigten Bitplanes formatiert. Um Daten in diesem Format zu benutzen, müssen Adressen erzeugt werden, die
diese horizontalen Zeilensegmente zur Bildung von Rasterzeilen miteinander verbinden.
Ein Raster besteht aus einer Folge von A/V-Koordinaten, die in der linken oberen Ecke des Bildes beginnen
und zuerst X in Schritten von jeweils 1 erhöhen, bis die erste Zeile von Punkten adressiert wurde. Diese Zeile
wird cine Rasterzeile genannt. Die ^-Koordinate wird dann auf die oberste linke Position des Bitplancs
■zurückgestellt und Vum den Wert 1 erhöht. Dann wird der X Wert wieder über die zweite Punktzeile hin erhöht.
Das ist die zweite Rasterzeile. Dieses Verfahren v/ivd zeilenweise von der Oberseite des Bildes bis zur Unterseite
fortgesetzt, bis alle Punkte des Bildes adressiert wurden. Die Formel zur Umwandlung der X/Y-Koordinj'ten für
das Raster in Wort- und Bitadressen (innerhalb des Wortes) für Daten im Zeilenformat wurde bereits angegeben.
Da die Daten im Zeilenformat stehen, werden alle Daten innerhalb eines Wortes konsekutiv bsi der
Erzeugung des Rasters adressiert. Dadurch wird die Anzahl von Zugriffen zum Speicher zur Erzeugung von
Rasterdaten sehr klein gehalten.
Beispiel des Verfahrens
In F i g. 6A ist ein Bitplan der aufzuzeichnenden Punkte wiedergegeben. Der Aufzeichnungsbereich für dieses
Beispiel ist eine Anordnung von 16 Punkten in einer 4x4 Matrix. Eine aus den Koordinatenpaaren (0,0), (1,1),
(2,2), (3,3) bestehende Diagonale wird aufgezeichnet.
Der der 16 Punktmatrix entsprechende Speicher soll 4 Wörter mit je 4 Bits umfassen. Somit findet die 4 χ 4 is
Punktanordnung der F i g. 6A ihr Gegenstück in den F i g. 6B und 6C, wo die der Anordnung für den Speicher
überlagerten Speicherwörter im Linienformat bzw. im Bereichsformat stehen. Die Speicherwortadressen sind
jeweils in den [·' 1 g. 6B und 6C angegeben. Die Zahlen in den Wörtern sind die Bitadressen. Die Aufgabe besteht
dann darin, die 4 Punkte von Fig.6A in den nach Fig.6C organisierten Speicher zu schreiben und dann die
Information in das Format umzuordnen, das in F i g. 6B gezeigt ist.
Bei der Adressierung nach dem vorhergehenden Abschnitt wird folgende Entsprechung getroffen:
1. Die horizontale Abmessung der Punktanordnung beträgt LMN = 4, wobei L = 1, M = 2 und N = 2 ist.
2. Die vertikale Abmessung der Punktanordnung beträgt KN = 4, wobei K = 2 und N = 2 ist.
3. Die Wortabmessung ist MN = 4, worin N = 2 und M = 2 ist. Die horizontale Breite des Linienwortes,
bezogen auf den Plan ist MN = 4 und die Höhe des Bereichswortes ist N = 2 und die Breite des Bereichswortes M = 2.
Die Adressen für jeden Punkt lassen sich nach der Formel (1) für das Bereichswort und die Bitadressen
berechnen. Die Transformation von einem Af/y-Koordinatenpunkt in ein Bereichswort und eine Bitadresse kann
wie folgt dargestellt werden.
(0,0) — (0,0); (1,1) — (0,3); (2,2) — (3,0) und (3,3) — (3,3).
Obige Transformation läßt sich anhand der F i g. 6C bildlich überprüfen.
Der erste Funkt wird im Bereichsformatregister i4 aufgezeichnet und der nächste aufzuzeichnende Punkt
liegt ebenfalls in demselben Bereichswort, er muß also auch in das Bereichsformatregister eingegeben werden.
Der dritte Punkt liegt jedoch in einem anderen Bereichswort. Somit muß der laufende Inaalt des Bereichsformatregisters
im Randomspeicher 16 gespeichert werden, bevor dieser dritte Punkt aufgezeichnet wird. Für diese
Speicherung wird der laufende Inhalt des Wortes 0 im Speicher 16 logisch kombiniert mit dem laufenden Inhalt
des Bereichsformatregisters in der Kombinationslogik 15. Das kombinierte Ergebnis ersetzt die im Wort 0
gespeicherte Information. Das Bereichsformatregister wird dann auf 0 zurückgestellt und wie bei den beiden
ersten Punkten werden die nächsten beiden Punkte im Bereichsformatregister aufgezeichnet. Wenn der Inhalt
des Registers 14 in den Speicher übertragen werden muß, werden die Punkte mit dem Inhalt des Bereichswortes
3 mit dem Speicher 16 wie oben kombiniert.
Der Bitplan des Speicherinhaltes des Bereichsformates nach der Zusammensetzung des Bildes ist in F i g. 6A
gezeigt.
Umformatierung
ξ
. so
■ Der Speicher muß jetzt vom Bereichsformat in das Zeilenformat umformatiert werden. Die Ergebnisse der
Transformation sind in Fig.8B gezeigt. Wie bereits im vorigen Abschnitt beschrieben wurde, erfolgt die
Umordnung mit Hilfe von Blocks. In diesem Beispiel gibt es zwei Blocks, von denen der eine die Wörter 0 und 1
und der andere die Wörter 2 und 3 enthält.
Unter Bezug auf die F i g. 1A, 6A, B und 8A und B wird anschließend die Transformation vom Bereichswort in
ein Zeilenwort beschrieben.
1. Die Wörter 0 und 1 werden vom Speicher 16 adressiert und durch die Formatumwandlungslogik 18 als
Blockwörter 0 bzw. 1 »gerettet«.
2. Die Bits 0 und 1 des Blockwortes 0 und des Blockwortes 1 werden in dieser Reihenfolge aus der Formatumwandlungslogik
18 herausgezogen und zur Bildung eines Speicherwortes verkettet, welches dann in das
Wort 0 des Speichers 16 geschrieben wird.
3. Die Bits 2 und 3 des Blockwortes 0 und des Blockwortes 1 werden in dieser Reihenfolge aus dem Logikelement
18 herausgezogen und verkeilet und dann in die Bits 0,1,2 und 3 des Speicherwortes 1 im Speicher 16
geschrieben. Damit ist die Umordnung des ersten Blockes beendet.
4. Die Wörter 2 und 3 werden aus dem Speicher 16 adressiert und im Logikelement 18 als Blockwörter 0 bzw.
1 srerettet.
5. Die Bits O und 1 des Blockwortes 0 und des Blockwortes 1 vom Logikeiement ί8 werden i ■ dieser |
Reihenfolge verkettet und in die Bits 0 bis 3 des Speicherwortes 2 im Speicher 16 geschrieben.
6. Die Bits 2 und 3 des Blockwortes 0 und des Blockwortes 1, din im Logikelement 18 »gerettet« sind, werden |
verkettet und in die Bits 0 bis 3 des Speicherwortes 3 im Speicher 16 geschrieben. Damit ist die Umordnung
des letzten Blockes beendet
Herausziehen umformatierter Daten für die Rasterbildanzeige
Die Speicherdaten müssen jetzt einem Rasterabtastgerät zugeführt werden. Die Daten müssen in Koordinatenform
adressiert werden als:
0,0; 0,1; 0.2; 0,3 für die erste Zeile,
1,0; 1,1; 1,2; 1,3 für die zweite Zeile,
2,0; 2,1; 2,2; 2,3 für die dritte Zeile,
3,0; 3,1:3,2; 3, 3 für die letzte Zeile.
1,0; 1,1; 1,2; 1,3 für die zweite Zeile,
2,0; 2,1; 2,2; 2,3 für die dritte Zeile,
3,0; 3,1:3,2; 3, 3 für die letzte Zeile.
Mit den in F i g. 7A gezeigten Umwandlungsschema werden die Speicherwort- und Bitadressen für die dritte
Zeile des Rasters nach der Adreßformel (2) berechnet. Wenn die Koordinatenpunkle für die dritte Rasterzeile
gegeben sind, lauten die entsprechenden Zeilenwort- und Bitadressen:
ZO 2,0-,Zl Z1;Z2 Z2;Z3 2,3.
Diese Adressenerzeugung kann in F i g. 6B nachgeprüft werden.
Programmbeispiel des Gerätes
Diese Adressenerzeugung kann in F i g. 6B nachgeprüft werden.
Programmbeispiel des Gerätes
In den F i g. 9 bis 12 sind Einzelheiten des Speichers und der Steuer- und Umformatierlogik 37 gezeigt F i g. 9
zeigt ein Datenflußdiagramm zur Ausführung der Umformatierung oder Umordnung der Daten im Randomspeicher
16. Fig. 10 zeigt die logische Auslegung des Adreß- und Steuerelementes 19 sowie des Steuer- und
Adreßwählers 20. F i g. 11 gibt ein Beispiel für die Unterteilung des Inhaltes der Formatumwandlungslogik in M
identische Schieberegisteranordnungen. F i g. 12 zeigt die Form einer derartigen Schieberegisteranordnung, die
im Formatumwandlungselement 18 benutzt wird. Die nachfolgend aufgeführten Schritte stellen in ihrer sequentieilen
Ausführung die in den Fig.9 bis 12 gezeigte Pro.?rammlogik für die Speicherformatumordnung dar.
Dabei wird insbesondere auf die F i g. 9 und 10 bezug genommen
Die Schritte 1 bis 5 initialisieren das Gerät.
1. Den Umordnungsadreßzähler-Ladedatenwähler 101 so einstellen, daß die Qiuelie N— 1 gewählt wird.
2. Die Ladeleitung 103 am Umordnungsadreßzähler 115 takten, um sie mit N— 1 zu laden. Dadurch wird der
Zähler 115 initialisiert.
3. Umordnungswähler 101 einstellen, daß die Addierquelle 105 gewählt wird.
4. Steuer- und Adreßwähler 20 auf den Speicher 16 einstellen, so daß nur die Umordnungsadresse in den
Speicher 16 geleitet wird. Das bedeutet, daß 107 und 109 geschlossen sind und das Schaltglied 111 geöffnet
ist.
5. Speichereingabedatenwähler 15 so einstellen, daß nur Daten vom Umordnungsspeicher 18 durch den
Speicher 16 geleitet werden können. Die von den Leitungen A und B getriebenen UND-Glieder in F i g. 9
sind somit ausgeschaltet, während das von der Leitung C eingespeiste UND-Glied eingeschaltet ist. Die
folgenden Schritte initialisieren das Gerät zum Lesen der Daten aus dem Speicher 16 und zum Einsetzen in
den Umordnungsspeicher
6. Zahlensteuerung 113 so einstellen, daß die Umordnungsadresse im Zähler 115 heruntergesetzt wird, wenn
die Zählleitung 117 getaktet wird.
7. Den Umordnungsspeicher 18 und eine Ein/Auswahlleitung 135 so einstellen, daß Daten in den Speicher
geschoben werden, wenn die Schiebeleitung getaktet wird.
8. Den Schreib/Lese«, jhler 137 des Speichers 16 so einstellen, daß die Daten in das Speicherdatenregister 17
gelesen werden, wenn die Zyklusanforderungsleitung getaktet wird.
9. Die Ladeleitung 121 fur den Zykluszähler 123 takten. Siehe hierzu Fig. 10.
In den folgenden Schritten wird Information vom Speicher 16 in den Umordnungsspeicher 18 übertragen.
10. Die Speicherzyklusanforderungsleitung 131 takten, die das Speicherdatenregister 17 mit Daten über den
Weg 47 lädt.
11. Die Umordnungsspeicher-Schiebeleitung 133 takten. Diese Leitung überträgt Daten vom Register 17 in den
bo I mordnungsspeicher 18 über die Bahn 43.
12. Sprung njch Schritt Ib, wenn die Zykluszahl-Nulleitung 127 ein wahres Signal führt.Siehe F ig. 10.
13. Die Umordnungsadreßzahlleitung 117 takten, um die Adresse im Register 115 um 1 herunterzusetzen.
14. Die Zykluszähler-Zahlleitung 125 takten, um die Zykluszahl im Register 123 um 1 herunterzusetzen.
15. Sprung zum Schritt 10. Die folgenden Schritte initialisieren das Gerät zur Übertragung von Daten aus dem
Umordnungsspeicher 18 in den Speicher 16.
16. Die Zahlsteuerleitung 113 so setzen, daß die Umordnungsadresse erhöht wird, wenn die Zahlleitung 117
getaktet wird.
17. Die Umordnungsspeicher-Wahlleitung 135 so setzen, daß Daten aus dem Speicher 18 geschoben werden,
wenn die Schiebeleitung 133 getaktet wird.
wenn die Schiebeleitung 133 getaktet wird.
18. Den Speicher-Lese/Schreibwähler 137 so einstellen, daß Daten in den Speicher 16 von der Datenwähkrsammelleitung
45 geschrieben werden, wenn die Zyklusanforderungsleitung 131 getaktet wird.
19. Die Ladeleitung 121 für den Zykluszähler 123 takten. In den folgenden Schritten werden die aus dem 5
Umordnungsspeicher herausgezogenen Daten in den Speicher 16 geschrieben.
20. Die Speicherzyklusanforderungsleitung 131 takten. Diese Leitung lädt den Speicher 16 mit Daten aus dem
Umordnungsspeicher 13.
Umordnungsspeicher 13.
21. Die Umordnungspuffer-Schiebeleitung 133 takten, so daß ein neues Wort in den Speicher 16 gesetzt wird.
22. Sprung zum Schritt 2b, wenn die Zykluszahlleitung 127 0 ist IO
23. Die Umordnungsadreßzähler-Taktleitung 117 takten, um den Inhalt des Adreßzählers 115 um 1 zu erhöhen.
24. Die Zykluszähler-Zahlleitung 125 takten, um die Zykluszahl im Zähler 123 h3runterzusetzen.
25. Sprung nach Schritt 20.
Die folgenden Schritte initialisieren das System für die nächste Umordnungsaufgabe.
26. Sprung nach Schritt 29, wenn die letzte Speicheradresse im Zähler 115 gleich KN-1 ist. 15
27. Die Umordnungsadreßzahlladeleitung 103 takten, um die Adresse um Nzu erhöhen.
28. Sprung nach Schritt 6.
Wenn die Bedienungskraft mehr Datenpunkte in ein vorgegebenes Rasterbild einsetzen will, muß das ga.ize
Bild vom Zeilenformat in das Bereichsformat umformatiert werden. Die Gesamtheit wird dann wie oben vom 20 Bereichsformat in das Zeilenformat umgeordnet.
Bild vom Zeilenformat in das Bereichsformat umformatiert werden. Die Gesamtheit wird dann wie oben vom 20 Bereichsformat in das Zeilenformat umgeordnet.
Hierzu 13 Blatt Zeichnungen
Claims (1)
- Patentanspruch:Anordnung zur computergesteuerten Rasterpunktdarstellung von codierter Liniensegmente bezeichnender Vektorinformation als eine Folge von X/YKoordinatenwerten,dadurch gekennzeichnet,daß eine Schaltung (12,13) vorgesehen ist für das punktweise Bestimmen der Kocrdinatenwerte für jedes Liniensegment in einen aus matrixförmig angeordneten Speicherzellen bestehenden Unterbereich (F i g. 6A) eines bereichsformatierten Speichers matrixförmig angeordneter Unterbereiche,
daß eine Schaltung (14, 20) für das Speichern der Werte des aktuellen Unterbereichs in einen wortweiseίο adressierbaren Speicher (16) vorgesehen ist,daß ein neuer Unterbereich adressierbar ist, wenn die Punkteaufzeichnung den aktuellen Unterbereich überschreitet,daß eine Schaltung (17, 18, 19, 20, 15) für die Umwandlung der aus dem Speicher (16) ausgelesenen Unterbereiche in lineare Feider im Zeilenformat vorgesehen ist durch Abbildung des Inhaltes der Speicherzellen topologisch benachbarter Unterbereiche für gleiche Reihen oder Spalten in lineare Felder,und daß die linearen Felder in den Speicher (16) speicherbar und für eine serielle Rasterpunktdarstellung adressierbar sind.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US05/477,717 US3973245A (en) | 1974-06-10 | 1974-06-10 | Method and apparatus for point plotting of graphical data from a coded source into a buffer and for rearranging that data for supply to a raster responsive device |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2525155A1 DE2525155A1 (de) | 1976-01-02 |
DE2525155C2 true DE2525155C2 (de) | 1985-07-11 |
Family
ID=23897066
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2525155A Expired DE2525155C2 (de) | 1974-06-10 | 1975-06-06 | Anordnung zur computergesteuerten Rasterpunktdarstellung von codierter, Liniensegmente bezeichnender Vektorinformation als eine Folge von X/Y Koordinatenwerten |
Country Status (5)
Country | Link |
---|---|
US (1) | US3973245A (de) |
JP (1) | JPS589451B2 (de) |
DE (1) | DE2525155C2 (de) |
FR (1) | FR2274112A1 (de) |
GB (1) | GB1504975A (de) |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
IL51719A (en) * | 1976-04-08 | 1979-11-30 | Hughes Aircraft Co | Raster type display system |
US4093996A (en) * | 1976-04-23 | 1978-06-06 | International Business Machines Corporation | Cursor for an on-the-fly digital television display having an intermediate buffer and a refresh buffer |
US4074254A (en) * | 1976-07-22 | 1978-02-14 | International Business Machines Corporation | Xy addressable and updateable compressed video refresh buffer for digital tv display |
US4103331A (en) * | 1976-10-18 | 1978-07-25 | Xerox Corporation | Data processing display system |
US4177514A (en) * | 1976-11-12 | 1979-12-04 | General Electric Company | Graph architecture information processing system |
US4121283A (en) * | 1977-01-17 | 1978-10-17 | Cromemco Inc. | Interface device for encoding a digital image for a CRT display |
IT1071592B (it) * | 1977-03-09 | 1985-04-10 | Olivetti & Co Spa | Metodo ed apparecchiatura di registrazione in memoria e visualizzazione di immagini |
GB1572318A (en) * | 1978-03-31 | 1980-07-30 | Ibm | Display system |
DE2925613C2 (de) * | 1979-06-25 | 1983-05-05 | Aristo Graphic Systeme Gmbh & Co Kg, 2000 Hamburg | Vorrichtung zum Steuern einer an einen Computer angeschlossenen Zeichenmaschine mittels einer Digitalisiereinrichtung |
JPS5623082U (de) * | 1979-08-01 | 1981-03-02 | ||
DE3015125A1 (de) * | 1980-04-19 | 1981-10-22 | Ibm Deutschland Gmbh, 7000 Stuttgart | Einrichtung zur speicherung und darstellung graphischer information |
US4451895A (en) * | 1980-07-17 | 1984-05-29 | Telesis Corporation Of Delaware, Inc. | Interactive computer aided design system |
US4454593A (en) * | 1981-05-19 | 1984-06-12 | Bell Telephone Laboratories, Incorporated | Pictorial information processing technique |
US4611310A (en) * | 1982-08-23 | 1986-09-09 | Canevari Timber Co. | Method and system for rearranging data records in accordance with keyfield values |
US4555775B1 (en) * | 1982-10-07 | 1995-12-05 | Bell Telephone Labor Inc | Dynamic generation and overlaying of graphic windows for multiple active program storage areas |
US6552730B1 (en) * | 1984-10-05 | 2003-04-22 | Hitachi, Ltd. | Method and apparatus for bit operational process |
JPS6247786A (ja) * | 1985-08-27 | 1987-03-02 | Hamamatsu Photonics Kk | 近傍画像処理専用メモリ |
US4763251A (en) * | 1986-01-17 | 1988-08-09 | International Business Machines Corporation | Merge and copy bit block transfer implementation |
US4807143A (en) * | 1986-07-07 | 1989-02-21 | Asahi Kasei Kogyo Kabushiki Kaisha | System for forming design pattern data |
JPS6340189A (ja) * | 1986-08-05 | 1988-02-20 | ミノルタ株式会社 | アドレス変換方式 |
US4841435A (en) * | 1986-10-29 | 1989-06-20 | Saxpy Computer Corporation | Data alignment system for random and block transfers of embedded subarrays of an array onto a system bus |
US4942541A (en) * | 1988-01-22 | 1990-07-17 | Oms, Inc. | Patchification system |
US4928243A (en) * | 1987-10-06 | 1990-05-22 | Preco Industries, Inc. | Method and system for printing graphics and text from vector-based computer aided source information |
US4916654A (en) * | 1988-09-06 | 1990-04-10 | International Business Machines Corporation | Method for transfer of data via a window buffer from a bit-planar memory to a selected position in a target memory |
JPH0778782B2 (ja) * | 1989-07-19 | 1995-08-23 | インターナショナル・ビジネス・マシーンズ・コーポレーシヨン | 対話型コンピュータ・システムならびにその使用環境適合化装置および方法 |
DE4028214C2 (de) * | 1990-09-06 | 1996-05-30 | Nuclear Cargo & Service Gmbh | Verfahren zur Umsetzung von in Werten eines geographischen Koordinatensystems erzeugten Standortdaten in eine auf einem karthesischen Koordinatensystem beruhende Rasterform |
US7095909B1 (en) * | 1991-01-02 | 2006-08-22 | Bruce Beasley | Light pen system and method |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3631455A (en) * | 1969-02-13 | 1971-12-28 | Bunker Ramo | Method and apparatus for code conversion |
US3675232A (en) * | 1969-05-21 | 1972-07-04 | Gen Electric | Video generator for data display |
US3668661A (en) * | 1969-06-25 | 1972-06-06 | Ncr Co | Character coding, memory, and display system |
US3827027A (en) * | 1971-09-22 | 1974-07-30 | Texas Instruments Inc | Method and apparatus for producing variable formats from a digital memory |
JPS5134257B2 (de) * | 1971-12-14 | 1976-09-25 |
-
1974
- 1974-06-10 US US05/477,717 patent/US3973245A/en not_active Expired - Lifetime
-
1975
- 1975-04-29 FR FR7514035A patent/FR2274112A1/fr active Granted
- 1975-05-16 JP JP50057508A patent/JPS589451B2/ja not_active Expired
- 1975-05-19 GB GB21127/75A patent/GB1504975A/en not_active Expired
- 1975-06-06 DE DE2525155A patent/DE2525155C2/de not_active Expired
Also Published As
Publication number | Publication date |
---|---|
JPS511030A (en) | 1976-01-07 |
US3973245A (en) | 1976-08-03 |
FR2274112A1 (fr) | 1976-01-02 |
GB1504975A (en) | 1978-03-22 |
JPS589451B2 (ja) | 1983-02-21 |
FR2274112B1 (de) | 1980-01-04 |
DE2525155A1 (de) | 1976-01-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2525155C2 (de) | Anordnung zur computergesteuerten Rasterpunktdarstellung von codierter, Liniensegmente bezeichnender Vektorinformation als eine Folge von X/Y Koordinatenwerten | |
DE3804938C2 (de) | Bildverarbeitungseinrichtung | |
DE3686307T2 (de) | Verfahren zur rotierung eines binaeren bildes. | |
DE69128731T2 (de) | Schaltungsanordnung für die Konvertierung von pyramidenförmigen Texturkoordinaten und diese enthaltendes Anzeigegerät | |
DE2835689A1 (de) | Anordnung zur veraenderung der aufloesung bei der bild-datenerfassung und -uebertragung | |
DE69633477T2 (de) | Bildspeicher für graphische Daten | |
DE2144596A1 (de) | Video-Anzeigevorrichtung | |
DE2852253A1 (de) | Drehung der wiedergabe auf einem bildschirm | |
DE2438202A1 (de) | Vorrichtung zur erzeugung von videosymbolen | |
DE2024634B2 (de) | Video-generator fuer eine datendarstellung | |
DE2454310A1 (de) | Verfahren zum reproduzieren eines originalbildes durch aufzeichnen von punktmatrizen | |
DE3438512A1 (de) | Computer-display-system | |
DE2340597A1 (de) | Bildverarbeitungsanordnung | |
EP0038411A2 (de) | Einrichtung zur Speicherung und Darstellung graphischer Information | |
DE3218815A1 (de) | Verfahren zur verwendung einer speichervorrichtung fuer ein anzeigesystem | |
DE69109040T2 (de) | Verbesserungen bei den nach dem Rasterverfahren arbeitenden Sichtgeräten. | |
DE1774682B2 (de) | Einrichtung zur sichtbaren Datenwiedergabe | |
DE3888891T2 (de) | Steuersystem zum Umdrehen von Seiten mit grosser Geschwindigkeit. | |
DE2510542A1 (de) | Digitale bildwiedergabevorrichtung mit mehreren bildschirmen | |
DE69229033T2 (de) | Bildverarbeitungssystem | |
DE69128665T2 (de) | Datenmischendes Gerät | |
DE69709695T3 (de) | Verfahren zur seitenzusammensetzung | |
DE69127759T2 (de) | Abspeicherungsverfahren für die Bildverarbeitung und Gerät,um dieses einzusetzen | |
DE2821237A1 (de) | Verfahren und vorrichtung zur wiedergabe von bildern | |
DE2249140A1 (de) | Verfahren und vorrichtung zur streifenblattschreiberaehnlichen darstellung von veraenderlichen mittels kathodenstrahlroehre |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OD | Request for examination | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |