DE3688665T2 - Verarbeitungsgerät zur Beseitigung von verborgenen Seiten für dreidimensionale Bilderzeugung. - Google Patents

Verarbeitungsgerät zur Beseitigung von verborgenen Seiten für dreidimensionale Bilderzeugung.

Info

Publication number
DE3688665T2
DE3688665T2 DE86201451T DE3688665T DE3688665T2 DE 3688665 T2 DE3688665 T2 DE 3688665T2 DE 86201451 T DE86201451 T DE 86201451T DE 3688665 T DE3688665 T DE 3688665T DE 3688665 T2 DE3688665 T2 DE 3688665T2
Authority
DE
Germany
Prior art keywords
parameters
polygon
zck
image
register
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 - Fee Related
Application number
DE86201451T
Other languages
English (en)
Other versions
DE3688665D1 (de
Inventor
Thierry Bonnet
Olivier Duthuit
Philippe Martin
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Koninklijke Philips NV
Original Assignee
Philips Gloeilampenfabrieken NV
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Philips Gloeilampenfabrieken NV filed Critical Philips Gloeilampenfabrieken NV
Application granted granted Critical
Publication of DE3688665D1 publication Critical patent/DE3688665D1/de
Publication of DE3688665T2 publication Critical patent/DE3688665T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/40Hidden part removal
    • G06T15/405Hidden part removal using Z-buffer

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Computer Graphics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Generation (AREA)
  • Processing Or Creating Images (AREA)

Description

  • Die Erfindung betrifft einen Bildprozessor zur Bildung eines zweidimensionalen Bildes von dreidimensionalen Objekten, von einem bestimmten Beobachtungswinkel aus gesehen, wobei der Prozessor folgende Elemente enthält: - Mittel zum Einführen von Polygonparametern, die eine Gruppe konvexer Polygone in bezug auf einen Bezugsraum definieren, wobei diese Polygongruppe eines oder mehrere dreidimensionalen Objekte darstellt, - Mittel zum Ableiten von Bildelementparametern, wobei von den Polygonparametern ausgegangen wird, und diese Bildelementparameter ein zweidimensionales Bild eines Objekts in einer Sichtebene bilden, die abhängig vom Sichtwinkel in bezug auf den Bezugsraum festgesetzt ist, und - Mittel zum Wählen der am nächsten bei der Sichtebene liegenden Bildelemente und zum Speichern der Parameter dieser Elemente.
  • Sie bezieht sich ebenfalls auf jedes Darstellungssystem für dreidimensionale Objektbilder unter Verwendung eines derartigen Bildprozessors.
  • Das dreidimensionale Schriftbild (3D) nimmt die Definition der Geometrie des dreidimensionalen Objekts, darauf die Verlagerung des Objekts in einem Koordinatensystem und schließlich das Zeichnen des Objekts in der Ebene eines Sichtschirms in Anspruch. Die Grundoperationen dieser Verlagerung sind die Drehung, die Parallelverschiebung, die Skalierung, die Perspektive. Der Effekt der Perspektive ermöglicht die Rekonstruktion der Objektform in seiner Tiefe, und dies wird auf eine Weise analog der Wahrnehmung des menschlichen Auges simuliert. Das Objekt wird zunächst in einem Bezugspunkt in Form räumlicher Koordinaten beschrieben, anschließend wird nach den vorangehenden Verschiebungsoperationen dieses Koordinatensystem entsprechend dem Koordinatensystem der Visualisierungsanordnung transformiert. Es werden dieser Beschreibung rein geometrisch Attributparameter zugeordnet, wie z. B. Schattierung, Farbe, Maserung oder Transparenz, die das beste Ergebnis des dreidimensionalen Objekts auf einem zweidimensionalen Schirm gewährleisten.
  • Die Objektbeschreibung erfolgt anhand von Linien, Kurven oder Ebenen, die selbst wieder in algebraische Ausdrücke übersetzt werden. In einem ganz üblichen Verfahren werden die Objekte anhand einer Gruppe flacher Ebenen beschrieben, die aus einer Folge konvexer Polygone gebildet werden. Ihre Abmessungen können klein genug sein, um die gekrümmten Flächen auf geeignete Weise darzustellen. Das grundlegende Verfahren zum Darstellen eines Polygons besteht in der Anfertigung eines Verzeichnisses von Scheitelkoordinaten, wobei der von den Polygonen begrenzte Raum geschlossen wird. Diese Polygone lassen sich darauf beispielsweise durch Ebenengleichungen beschreiben, um die Verschiebung der Objekte im Koordinatensystem zu ermöglichen.
  • Für die Rekonstruktion des Bildes des Objekts wird ein Sichtwinkel gewählt, unter dem ein Zuschauer nur eine bestimmte Anzahl von Objektflächen wahrnehmen kann, die anderen bleiben ihm ohne weiteres verborgen.
  • Damit dieses Bild das Objekt auf klarere und deutlicher wahrnehmbare Weise darstellt und keine falsche visuelle Erscheinung erzeugt, benutzen die dreidimensionalen Bilddarstellungstechniken zum Beseitigen der versteckten Flächen das Verfahren mit dem Titel "Algorithmus des Tiefenspeichers" (im Englischen: Z-Puffer). Das Prinzip besteht aus der Vorstellung des Sichtschirms als eine Schachtel mit quasiunendlicher Tiefenwirkung. Die Oberfläche des Sichtschirms wird in eine bestimmte Anzahl in X und in Y regelmäßig aufgegliederter Bildelemente zerlegt. Unter dem gewählten Blickwinkel werden alle Polygone aufeinanderfolgend entsprechend dieser zweidimensionalen Konfiguration von Bildelementen analysiert.
  • Am Anfang der Behandlung werden gespeicherte Tiefenkoordinaten ZM mit der für das System zugänglichen entferntesten Koordinate initialisiert. Darauf erfolgt die Behandlung jedes Polygons derart, daß jede Koordinate Z, die jedem in einem Polygon enthaltenen Bildelement zugeordnet ist, mit der in der Tiefenspeicher gespeicherten Tiefenkoordinate ZM verglichen wird. Wenn Z kleiner ist als ZM, wird diese Koordinate ZM durch die Koordinate Z ersetzt, die so die neue Koordinate ZM wird, die dem Bildelement zugeordnet ist. Alle Polygone, die die Beschreibung des Objekts darstellen, werden aufeinanderfolgend analysiert und so für jedes Bildelement nur als die ZM-Daten behalten, und die Attributparameter C beziehen sich nur auf die am nächsten beim gewählten Untersuchungspunkt liegenden Punkte. Auf diese Weise erscheinen die versteckten Flächen nicht auf dem Schirm.
  • Zum Gewährleisten der Rekonstruktion des dreidimensionalen Objekts in einem Bild macht man die jeder Fläche entsprechend jedem dargestellten Polygon zugeordneten Attributparameter sichtbar. Diese Attributparameter werden ebenfalls in einem Attributspeicher gespeichert. Zum Vermeiden schlagartiger Farb- oder Schattierungsänderungen auf den Kanten oder Scheiteln ist eine Attributinterpolation nach einer oder mehreren Richtungen durchführbar. Auf diese Weise werden die Attribute für die Scheitel jedes Polygons definiert, wonach die Attribute der Bildzwischenelemente zum Füllen des Polygons interpoliert werden. Dies ermöglicht es, dem rekonstruierten Bild ein realistisches Aussehen zu geben.
  • Bekannt ist die Patentschrift FR 2 406 927, die sich auf eine Bilderzeugungsanordnung für dreidimensionale Objekte auf einem Fernsehschirm in Echtzeit bezieht. Darin wird der Verknüpfungsmodus zwischen einem Prozessor zum Ordnen der Priorität der Objekte und einem Generator zum Erzeugen der Priorität sichtbarer Segmente beschrieben. Der Prozessor benutzt einen Prioritätsalgorithmus, der zuvor die Objekte in Übereinstimmung mit ihrem Abstand vom Beobachter klassifiziert. Jedoch beschreibt diese Patentschrift keineswegs die Berechnungs- und Vergleichsmittel für die Tiefe von "Z" an jedem Punkt des Schirms, und also behandelt sie weder die Prioritäten auf dem Niveau der Punkte noch die Objektüberschneidungen. Sie ist also weit entfernt von der erfindungsgemäßen Aufgabe.
  • Außerdem werden alle diese oben genannten Vorgänge zur Darstellung dreidimensionaler Objektbilder im Prozessor durchgeführt, der in der Veröffentlichung mit dem Titel: "Developing pixel-planes, a smart memory-based raster graphics System", H. FUCHS, J. POULTON, A. PAETH, A. BELL, 1982, Conference on Advanced Research in VLSI, M.I.T. Januar 27, S. 137, 146 beschrieben ist.
  • Es wird dort ein System beschrieben, das - alle Bildelemente identifiziert, die sich in einem Polygon befinden, - die Bildelemente bestimmt, die nicht durch die zuvor bearbeiteten Polygone maskiert sind, - das Farbattribut jedes Bildelements bestimmt.
  • Die Geschwindigkeit wird dadurch bestimmt, daß die Bearbeitung gleichzeitig an allen Bildelementen erfolgt, und dafür arbeitet das System mit der Gleichung der Polygonebene f(x,y) = Ax+By+C, worin x und y die Koordinaten eines Bildelements und die Koeffizienten A, B, C vom zu bearbeitenden Polygon abhängig sind.
  • Diese Bearbeitung mit Hilfe der Gleichungen der Polygonebene sorgt dafür, daß die Architektur zweidimensional ist, wobei die Koeffizienten A, B und C mit Hilfe einer Baumstruktur eingeführt werden.
  • Ein derartiger Prozessor hat Nachteile. Zunächst ist es zum allgemeinen Bearbeiten der Ebenengleichung notwendig, über eine zweidimensionale Quelle für Bearbeitungsbasiszellen zu verfügen. Die Oberfläche der integrierten Schaltung ist in diesem Fall äußerst wichtig. Zweitens ist eine Folge des vorangehenden, daß die Betriebsgeschwindigkeit verhältnismäßig begrenzt ist.
  • Der Erfindung liegt die Aufgabe zugrunde, diese Nachteile zu beseitigen und einen Prozessor zu schaffen, dessen Betriebsorganisation eine sehr schnelle Bearbeitung von Information bei sehr geringer Oberflächenbelegung der integrierten Schaltung auf dem Halbleiter ermöglicht. Die Erfindung erteilt also dem Prozessor eine serienweise arbeitende Blockstruktur mit einer Pipelinebearbeitung, die zwischen den Parametern verteilt ist, die sich auf die Bildelemente beziehen: (X, Y), Z, Attribute. Zum Verringern der benutzten Oberfläche des Halbleiters bedient sich die Erfindung einer Analyse der zeilenweisen Visualisierungsebene.
  • Zum Fördern dieser Bearbeitungsgeschwindigkeit ermöglicht die Erfindung auf andere Weise die zyklisch erneuerbare Einführung der Koordinaten und Inkremente, die den Parametern zugeordnet werden, die die Polygone charakterisieren.
  • Zur Lösung dieser Aufgabe ist der Prozessor eingangs erwähnter Art erfindungsgemäß dadurch gekennzeichnet, daß - die Mittel zum Ableiten der Bildelementparameter in Form einer Pipeline verwirklicht werden, um diese Bildelementparameter serienweise zu bestimmen, ausgehend von Parametern, die eine Überschneidung eines Polygons mit einer Abtastebene definieren, - diese Mittel zum Empfangen der Parameter ausgelegt sind, die die Überschneidungen eines Polygons mit einer Gruppe von Abtastebenen, in Form wenigstens der Endpunkte der Überschneidungen in einer einzigen Koordinate und des Wertes und der Änderung, innerhalb der Begrenzungen der Überschneidungen, des Abstandes bezüglich der Visualisierungsebene definieren wobei diese Abtastebenen zueinander parallel und im wesentlichen transversal zur Visualisierungsebene verlaufen, welche Visualisierungsebene sich im Bezugsraum befindet.
  • Die die Überschneidungen definierenden Parameter sind in der für den Bildprozessor erforderlichen Form darstellbar. Jedoch kann der Bildprozessor Mittel zum Berechnen der erforderlichen Werte ausgehend von den anderen eingeführten Parametern enthalten, die die Polygone und die Gruppe der Abtastebenen definieren.
  • Die Überscheidungsparameter können bitweise in die seriellen Behandlungsmittel vom Pipelinetyp eingeführt werden. Sie können ebenfalls in Bitgruppen eingeführt werden.
  • Er ist ebenfalls dadurch gekennzeichnet, daß er Mittel zum inkrementellen Erzeugen der Gruppe von Überschneidungen (Segmenten) der Polygoneinheit mit der Visualisierungszeile für jede Visualisierungszeile der Visualisierungsanordnung enthält.
  • Die Erfindung ist ebenfalls dadurch gekennzeichnet, daß der Bildprozessor, dem die in eine Segmentgruppe umgewandelten Polygonparameter zugeführt werden, die ihn in Form von Koordinaten XMo, XNo von Koordinaten und Inkrementen der Tiefe Zo und dZo zugehen, und in Form von Parametern und Attributinkrementen Co und dCo bezüglich jedes Segments geliefert werden, Serienbehandlungsmittel vom Pipelinetyp enthält, die n Blöcke enthalten, die jeweils bei der seriellen Bearbeitung der Parameter von einem der n Bildelemente einer Visualisierungszeile beeinflußt werden, wobei der k-te Block folgende Elemente enthält
  • (bei 1 &le; k &le; n): - einen Dekrementor, der die Koordinaten (XMk-1, XNk-1) empfängt, die er aus einer binären Einheit dekrementiert, gemäß XMk = XMk-1-1, XNk = XNk-1-1, - ein Auswertungsorgan, das die Vorzeichen (SMk, SNk) der Ergebnisse (XMk, XNk) aus dem Dekrementor empfängt und ein Auswertesignal FLk derart bestimmt, daß FLk = SMk.SNk ist, (wobei das Symbol (.) die logische Bearbeitung UND angibt), wobei FLk = 1 ist, wenn das analysierte Bildelement sich auf die Koordinaten (XMk, XNk) bezieht, und worin FLk = 0 im umgekehrten Fall, - eine Basiszelle: - die die Parameter Zk-1 dZk-1, Ck-1, dCk-1 empfängt, - die unter der Steuerung des Signals FLk = 1 die Parameter Zk, Ck, dZk, dCk für die folgende Basiszelle bestimmt, - die die Parameter Zk-1 speichert, sie mit früheren gespeicherten Werten Zck (früher) vergleicht und die Werte Zck (neu) derart speichert, daß Zck (neu) = Zck (früher) ist, wenn Zk-1 &ge; Zck (früher) ist, Zck (neu) = Zk-1 ist, wenn Zk-1 < Zck (früher), - die die Attribute Ck-1 speichert, die den neuen gespeicherten Werten Zck zugeordnet sind, - die die Attribute Ck-1 auf einen extremen Bus überträgt.
  • Die Gruppe von Segmentkoordinaten bezieht sich auf i Segmente, wobei 1 &le; i &le; m ist (XM0i, XN0i). Jede Information vom Typ A(X, Z, . . . ), die mit dem Segment i verknüpft ist, pflanzt sich aufeinanderfolgend in den mit k bezeichneten n Blöcken fort. In jedem Block erfährt diese Information Aki eine Elementarbehandlung vor ihrer Übertragung nach dem Block k+1. Zum Vereinfachen der Bezeichnungen wurde im weiteren die Bezeichnung i des Segments ausgelassen.
  • Zunächst wird die Anfangsdarstellung der Polygone durch ihre Scheitel und ihre Kanten in eine Darstellung mit Segmenten entsprechend der Überschneidung jedes Polygons mit einer Abtastebene umgewandelt. Jedes Polygon Pm, dessen Überschneidung mit der Visualisierungszeile nicht leer ist, schneidet die Abtastebene entsprechend eines Segments.
  • Gemäß einer ersten Ausführungsform enthält der Bildprozessor serielle Bearbeitungsmittel vom Pipelinetyp zur Verarbeitung der Parameter der Segmente, denen die Parameter von m Polygonen Pm, die in eine Gruppe von Segmentkoordinaten
  • (XM&sub0;, XN&sub0;) umgewandelt werden, sowie auch Parameter und Tiefeninkremente Z&sub0; und dZ&sub0; und Parameter und Attributinkremente C&sub0; und dC&sub0; bezüglich jedes Segments (M&sub0;, N&sub0;) zugeführt werden.
  • In dem mit X und Y abhängig von der Schirmgröße bemessenen Anfangsbezugspunkt wird ein Scheitel eines Polygons durch die Koordinaten Xu, Yu, Zu, Cu markiert. Es werden folgende Inkremente definiert:
  • IXu = Xu+i - Xu/LYu mit LYu = Yu+1 - Yu,
  • IZu = Zu+1 - Zu/LYu, ICu = Cu+1 - Cu/LYu
  • worin u ein Scheitel und u+1 der benachbarte Scheitel darstellt.
  • Wenn die Abtastebene sich um einen Inkrement IY = 1 verschiebt, verschieben sich die erhaltenen aufeinanderfolgenden Segmente um einen Inkrement IX in der Richtung X und IZ in der Richtung Z. Im Vorgang mit den Inkrementen IY mit dem Wert 1 werden auf diese Weise aufeinanderfolgend alle möglichen Punkte in der Richtung Y festgestellt. Jedes Segment kann also durch seine extremen Parameter (XM&sub0;, XN&sub0;), (ZM&sub0;, ZN&sub0;), (CM&sub0;, CN&sub0;) dargestellt werden, wobei die analogen aufeinanderfolgenden Werte der anderen Segmente eines nach dem anderen aus einem Inkrement IX in der Richtung X, IZ in der Richtung Z und IC in der "Richtung" C abgeleitet werden. Ebenso ist es in jeder Abtastebene möglich, jedes Segment bei Verwendung der Inkremente des Werts dX = 1 zu analysieren. In diesem Fall ist das Inkrement gemäß Z gleich
  • dZ&sub0; = ZN&sub0; - ZM&sub0;/XN&sub0; - XM&sub0;
  • die für die ganze Ebene konstant ist, und gemäß C bekommt man:
  • dC&sub0; = CN&sub0; - CM&sub0;/XN&sub0; - XM&sub0;
  • In einem zweiten Ausführungsbeispiel enthält der Bildprozessor: - Wandlermittel zum Umsetzen der Polygonparameter in - Segmentparameter, die die Überschneidungen der Gruppe von Polygonen mit jeder Visualisierungszeile der Visualisierungsanordnung darstellen, - und Serienbearbeitungsmittel vom Pipelinetyp zum seriellen Bearbeiten von Parametern der Segmente, wobei mehrere Segmente gleichzeitig bearbeitet werden.
  • Der Dekrementor ermöglicht die Bestimmung der Position des Segments in der Visualisierungszeile, insbesondere durch die Feststellung der Vorzeichen der aus dem Eingang des Dekrementors erhaltenen Ergebnisse. Ausschließlich im Fall, wenn die Vorzeichen dieser Ergebnisse einander entgegengesetzt sind, erzeugt das Auswerteorgan ein Signal FLk = 1, der die von der Basiszelle ausgeführten Vorgänge auswertet. Die entgegengesetzten Vorzeichen geben an, daß die Zelle der Ordnung k durch das Segment betroffen ist.
  • Es sei angenommen daß die Wirkung der n Zellen gleich ist. Demzufolge wird im weiteren Verlauf die Zelle der Ordnung k erläutert. Alle aufeinanderfolgenden Informationen Zk werden so auf dieselbe Weise behandelt und in einem Zwischenregister MT gespeichert. Andererseits speichert der aus einem Tiefenregister Mp bestehende Tiefenspeicher die Werte Zck, die serienweise ununterbrochen mit den Werten Zk-1 mit Hilfe eines Komparators verglichen werden. Das Ergebnis dieses Vergleichs wird in einem Flipflop gespeichert, der den Ersatz des früheren Werts Zck durch den neuen Wert Zk-1 steuert, wenn für das betreffende Bildelement der neue Wert einem Punkt entspricht, der näher bei der Visualisierungsebene liegt als der frühere Punkt, und wenn FLk = 1 ist. Das Tiefenregister Mp wird in sich selbst über einen Multiplexer geschleift, der die Erneuerung des Speicherwerts oder die Beibehaltung des zuvor gespeicherten Werts ermöglicht.
  • Wenn FLk = 1 ist, behandelt eine Basiszelle Bk auch die Attributinformation, die ein Farbattribut Ck sein kann. Auf gleiche Weise wie für die Tiefenkoordinaten wird ein Attributinkrement dCk bestimmt. Die Basiszelle Bk bestimmt das neue Attribut Ck = Ck-1 + dCk-1 und speichert Ck-1 in einem Attributregister.
  • Dieses Attributregister wird unter der Steuerung der selben Mittel gleichzeitig mit dem Tiefenspeicher aktualisiert.
  • Die Daten betreffend der Koordinaten XMk, XNk Zk und des Attributs Ck werden im Prozessor gemäß einem Pipelinevorgang bearbeitet.
  • Dafür wird die Zeit in Elementarperioden mit der Dauer u verteilt, die in Basisperioden mit der Dauer T = a.u neugruppiert werden (a ganzzahlig, Wortlänge). Der Prozessor bearbeitet im Laufe der Periode T die Koordinaten Xk eines Segments im Dekrementor Dk und die Koordinaten Zk-1 und die Attribute Ck-1 in der Basiszelle Bk. Im Laufe einer Basisperiode Tr bearbeitet der Prozessor gleichzeitig - die Koordinaten Xk,r eines Bildelements Ek im Dekrementor Dk, - die Koordinaten Zk,r-1 des Bildelements Ek in der Basiszelle Bk, - die Attribute Ck,r-2 des Bildelements Ek in der Basiszelle Bk. Diese serielle Pipelinebearbeitung gewährleistet eine hohe Ausführungsgeschwindigkeit im Bildprozessor.
  • Die Gruppe von n aufeinanderfolgenden Basiszellen, die die Gesamtheit einer Zeile der Visualisierungsanordnung bearbeiten, sind mit einem Ausgangsdatenbus verbunden, der die Attributinformationen des Bildprozessors auf eine Visualisierungsanordnung überträgt.
  • Im ersten Ausführungsbeispiel werden die Polygonparameter dem Bildprozessor in Form von Segmenten (M&sub0;, N&sub0;) zugeführt, die durch Software in einem mit dem Bildprozessor verbundenen Mikrocomputer bestimmt werden.
  • Die Rolle der Umwandlungsmittel der Polygone in Segmente ist, für jede Visualisierungszeile, die zwei Überschneidungspunkte der Abtastebene mit Y = cte mit dem Polygon zu bestimmen. Es handelt sich also um die Bestimmung der Koordinaten des linken Punktes XM&sub0; und des rechten Punktes XN&sub0;. Ein Segment wird also völlig durch die Koordinaten der Punkte M&sub0; und N&sub0; bestimmt.
  • Jedoch ist es in einem anderen Ausführungsbeispiel nach der Erfindung ebenfalls möglich, mit Hilfe einer Polygon-Segmentumwandlungsschaltung die Polygone in Segmente XM&sub0;, XN&sub0; umzuwandeln.
  • In diesem Fall bezieht sich die Erfindung auf einen Bildprozessor für dreidimensional geschriebene Szenen, mit einer Umwandlungsschaltung für Polygone in Segmente und mit seriellen Bearbeitungsmitteln vom Pipelinetyp zum Bearbeiten der Segmentparameter. Diese Schaltung liest aus einem Bildspeicher die Koordinaten und die Attribute bezüglich jedes Polygons derart, wie sie beispielsweise zum Schluß in der TABELLE 1 dargestellt sind.
  • Das Prinzip dieser Schaltung ist das Umlaufen der Veränderlichen X (bzw. Z) (bzw. C) in einem Schieberegister zu erzeugen, an dessen Ausgang eine Zelle angeordnet ist, die die ausgehenden Daten mit den Daten IX (bzw. IZ) (bzw. IC) ergänzt, die aus dem Bildspeicher gelesen wurden. Der Ausgang dieser Zelle ist nach dem Eingang des Schieberegisters derart durchgeschleift, daß die Daten ununterbrochen durch jede Zeile mit Y = cte bestimmt werden. Die Länge des Schieberegisters ist konstant und kann eine bestimmte von beschreibenden Parametern von Polygonen enthalten. So ist es für eine Ebene mit Y = cte, auf dem Schirm dargestellt von einer Visualisierungszeile, wichtig, beispielsweise 32 Segmente (M&sub0;, N&sub0;) speichern zu können, womit eine Bearbeitung in Echtzeit möglich ist. Die Steuerung der Sequenz des Schieberegisters wird mit Hilfe einer Steuerschaltung durchgeführt, die die Versuche du Kantenendes und des Polygonendes berücksichtigt, und die ebenfalls die Wirkung eines Adreß-Reihenfolgegenerators steuert, die das Auslesen des Bildspeichers steuert, wodurch die Polygone erneuerbar sind, die im Schieberegister eins nach dem anderen beim Fortschreiten der Datenbearbeitung geladen werden.
  • Ausführungsbeispiele der Erfindung die nicht beschränkend aufgefaßt sollen werden werden nachstehend anhand der Zeichnung näher erläutert. Es zeigen
  • Fig. 1 die Umsetzung von Polygonen in Segmente,
  • Fig. 2 ein Blockschaltbild des erfindungsgemäßen Bildprozessors,
  • Fig. 3 ein Blockschaltbild einer Basiszelle als Teil der seriellen Bearbeitungsmittel vom Pipelinetyp nach der Erfindung,
  • Fig. 4 ein Schaltbild eines Multiplexers der Bearbeitungsmittel nach Fig. 3,
  • Fig. 5 ein Zeitdiagramm entsprechend den Bearbeitungsmitteln nach Fig. 3,
  • Fig. 6, 7 und 8 eine Veranschaulichung eines vereinfachten Ausführungsbeispiels,
  • Fig. 9 ein Blockschaltbild der Umwandlungsmittel der Polygonparameter in Segmentparameter,
  • Fig. 10 ein Blockschaltbild des Adreß-Reihenfolgegenerators der Umwandlungsmittel nach Fig. 9.
  • In Fig. 1 ist eine Polygonebene ABCD dargestellt, die eine Facette darstellt, die ein kleines Oberflächenelement eines Objekts definiert. Das Polygon ABCD wird durch die Koordinaten seiner Scheitel sowie durch die Polygonparameter definiert. Diese Parameter der konvexen Polygone, die das in einem 3D-Bild darzustellende Objekt kennzeichnen, sind in einem Bildspeicher gespeichert. Diese bestimmten Parameter in einem Visualisierungsbezugspunkt können beispielsweise sein: - die Steigung dZ der Polygonebene in bezug auf die Ebenen mit Y = cte, - ein linker Anfangsscheitel (A), - die Anzahl linker Kanten des Polygons: Narg = 2, - eine Parameterliste für die linken Kanten, - ein rechter Anfangsscheitel (A), - die Anzahl rechter Kanten des Polygons: Nard = 2, - eine Parameterliste für die rechten Kanten.
  • Für jedes Polygon ist der Wert dZ eine Konstante.
  • In den meisten Fällen sind die linken und rechten Scheitel gleich, Punkt A im Beispiel. In den Spezialfällen, in denen die erste gefundene Kante parallel zur Ebene Q verläuft, sind die linken und rechten Scheitel verschieden.
  • Jede Polygonkante wird als Verschiebungsvektor definiert, der die Definition eines Ankunftspunkts ermöglicht. Wenn jede Ebene mit Y = cte aus der folgenden Beschreibung durch die Inkremente IY = 1 abgeleitet wird, werden die Kanten jedes Polygons durch folgende Elemente beschrieben: - ein Inkrement in X, d. h. IX, - ein Inkrement in Z, d. h. IZ, - ein Attributsinkrement, d. h. IC, - die Höhe der von LY = Y(Ende)-Y(Anfang) definierten Kante.
  • Im vorliegenden Beispiel des Polygons ABCD ist die Höhe der Kante AB gleich LY = YB - YA und die Inkremente sind:
  • IX = XB - XA/LY,
  • IZ = ZB - ZA/LY und
  • IC = CB - CA/LY.
  • Für jede der vier Kanten können so LY, IX, IZ und IC bestimmt werden. Die Darstellung eines Bildes auf einem Schirm erfordert die Definition einer Abtastebene des Bildes zum Gewährleisten einer sequentiellen Bearbeitung der Vorgänge. Diese Abtastebene ist mit dem Buchstaben Q in der Zeichnung nach Fig. 1 im Bezugspunkt XYZ bezeichnet, in dem die Richtung Z die senkrecht zum Schirm und rückwärts verlaufende Richtung anzeigt.
  • Das Polygon ABCD schneidet die Q-Ebene gemäß dem Segment MN. Auf diese Weise schneiden die aufeinanderfolgenden Abtastebenen jeweils das Polygon ABCD gemäß den Segmenten MN, M'N', usw . . . . Der Punkt N' ist vom Punkt N derart entfernt gemäß YN - YN' = 1 oder IY = 1, und die Koordinaten des Punktes N' werden bei Verwendung der Inkremente IX, IZ, IC erhalten, und mit der Koordinate XN wird XN' = XN + IX erhalten. Jede Abtastebene bestimmt jeweils eine Visualisierungszeile am Schirm.
  • Auf diese Weise ist es möglich, die Koordinaten aller Segmente MN im Abstand von IY = 1 zu bestimmen, die die Überschneidungen des Polygons ABCD mit den aufeinanderfolgenden Q-Ebenen sind. Jedes Segment MN ergibt in der Ebene XOZ ein Segment M&sub0;N&sub0;. Wenn das Segment M&sub0;N&sub0; mit einem Inkrement durchlaufen wird, bei dem IX = 1 ist, liegen die Koordinaten Z der auf diese Weise bestimmten Punkte um ein festes Inkrement im Abstand:
  • dZ&sub0; = ZN&sub0; - ZM&sub0;/XN&sub0; - XM&sub0;
  • sowie
  • dC&sub0; = CN&sub0; - CM&sub0;/XN&sub0; - XM&sub0;
  • Der Bildprozessor versorgt also die Bearbeitung der Koordinaten XM, XN, Z, der Inkremente dZ&sub0; und dC&sub0; und des Attributs C bezüglich aller Segmente M&sub0;N&sub0; aller Polygone ABCD, die das Objekt beschreiben.
  • Um alle diese Parameter der Segmente bearbeiten zu können, ist es notwendig, die Parameter der Polygone derart umzuwandeln, daß sie in den Bildspeicher eingeschrieben werden. Diese Umsetzung wird mit Umwandlungsmitteln verwirklicht.
  • Die Rolle der Umwandlungsmittel für die Umwandung der Polygone in Segmente ist, für jede Abtastzeile mit Y = cte, die zwei Überschneidungspunkte (M,N) der Abtastebene mit Y = cte mit dem Polygon zu bestimmen. Es handelt sich also um die darauffolgende Bestimmung der Koordinaten des linken Punktes XM&sub0; und des rechten Punktes XN&sub0;. Ein Segment wird also durch die Koordinaten der Punkte M&sub0; und N&sub0; völlig festgelegt.
  • Der Punkt M&sub0; wird durch folgendes gekennzeichnet: - eine linke Abszisse: XM&sub0; - eine linke Tiefe: ZM&sub0; - ein linkes Attribut: CM&sub0;.
  • Der Punkt N&sub0; ist durch folgendes gekennzeichnet: - eine rechte Abszisse: XN&sub0; - eine rechte Tiefe: ZN&sub0; - ein rechtes Attribut: CN&sub0;.
  • Die Steigung dZ mit Y = cte bezüglich des Polygons bezieht sich gleichfalls auf das Segment.
  • Für ein vorgegebenes Polygon werden so die folgenden Parameter erhalten:
  • dZ
  • XM&sub0;
  • für Links ZM&sub0;
  • CM&sub0;
  • Narg
  • für Kante i IX
  • IZ (Narg)-faches Wiederholen für das Polygon
  • IC
  • LY
  • für Rechts XN&sub0;
  • ZN&sub0;
  • CN&sub0;
  • Nard
  • für Kante 1 IX
  • IZ (Nard)-faches Wiederholen für das Polygon
  • IC
  • LY
  • TABELLE 1
  • Die Software bearbeitet also alle Polygone und bestimmt für jede Y = cte die Koordinaten der Punkte XM&sub0;, XN&sub0;. Die Werte werden also in den Bildprozessor eingeführt, um dort bearbeitet zu werden, wie dies nachstehend erläutert wird.
  • Das Blockschaltbild der Serienbearbeitungsmittel des Bildprozessors ist in Fig. 2 dargestellt. Die Koordinaten XM&sub0;, XN&sub0; des Segments M&sub0;N&sub0; werden mit dem vorangehenden Bit mit niedrigster Wertigkeit in einen Dekrementor 10&sub1; eingeführt, der eine Binäreinheit von den Daten subtrahiert.
  • Die Vorzeichen SM&sub1; und SN&sub1; der Ergebnisse der Dekrementierung der Daten XM&sub0; und XN&sub0; werden im Auswerteorgan 11&sub1; gespeichert. Wenn nach der Dekrementierung das Ergebnis bei XM&sub1; (=XM&sub0;-1) oder XN&sub1;(=XN&sub0;-1) negativ ist, bekommen SM&sub1; oder SN&sub1; beispielsweise den logischen Zustand 1. Im entgegengesetzten Fall werden SM&sub1; und/oder SN&sub1; also in den logischen Zustand 0 gebracht. Das Auswerteorgan 11&sub1; bestimmt den logischen Zustand des von FL&sub1; = SM&sub1;·SN&sub1; bestimmten Signals FL&sub1;. Dieses Signal FL&sub1; wird in die Basiszelle 12&sub1; eingeführt. Der Teil der vom Dekrementor 10&sub1;, vom Auswerteorgan 11&sub1; und von der Basiszelle 12&sub1; dargestellten Schaltung wird n-mal aufeinanderfolgend wiederholt (n ist die Anzahl der Bildelemente in einer Visualisierungszeile). Der Ausgang des Dekrementors 10&sub1; wird mit dem Eingang des Dekrementors 10&sub2; verbunden, der denselben Vorgang ausführt, aber mit den Koordinaten XM&sub1;, XN&sub1;. Dieser Vorgang setzt sich fort bis zum Dekrementor 10n. Die Auswerteorgane 11&sub2; . . . 11n werden jeweils für die Dekrementoren 10&sub2; . . . 10n bereitgestellt und führen dieselben Evaluationsvorgänge wie das Auswerteorgan 11&sub1; aus. Die Auswerteorgane 11&sub1; bis 11n steuern so jeweils die Wirkung der Basiszellen 12&sub1; bis 12n. Die Dekrementoren zusammen mit ihrem jeweiligen Auswerteorgan dienen zum Bestimmen der Position des Segments in der Visualisierungszeile während der Bearbeitung. Betrachten wir das Beispiel eines Segments XM&sub0; = 0, XN&sub0; = 3. Für dieses Beispiel wird der logische Zustand des Signals FLk (1 &le;k &le; n) entsprechend nachstehender Tabelle II bestimmt. TABELLE II Dekrementor
  • Die Tabelle II läßt feststellen, daß FLk = 1 ist, wenn das betreffende Segment sich in dem Teil der betreffenden Visualisierungszeile befindet.
  • Die Basiszelle 12 empfängt ebenfalls die Daten dZ&sub0; und dC&sub0;, die die dem Segment eigenen Inkremente, die Daten Z&sub0; und C&sub0;, die die Koordinate und das Farbattribut des Segmentursprungs kennzeichnen, und ein Signal OE&sub0; des Untersuchungsendes der Visualisierungszeile und der Initialisierung der folgenden Seite. Diese Initialisierung erfolgt durch die Aktualisierung der Parameter Z und C durch jene des ersten ankommenden Segments, das das Bodensegment bildet. Die Daten XM&sub0;, XN&sub0;, Z&sub0;, dZ&sub0;, C&sub0;, dC&sub0; gelangen an Serienbearbeitungsmittel vom Pipelinetyp des Bildprozessors durch die Umwandlungsmittel 40 zur Umwandlung der Polygonparameter in Segmentparameter. Jede Zelle überträgt auf die, die ihr folgt, das Ergebnis Zk des Vorgangs Zk = Zk-1 + (FLk.dZk-1), das Ergebnis Ck des Vorgangs Ck = Ck-1 + (FLk.dCk-1) sowie die beiden Inkremente dZk und dCk.
  • Die von jeden Basiszelle 12&sub1; . . . 12k . . . 12n bestimmten Attributergebnisse werden mit Hilfe eines Ausgangsbusses 13 gelesen.
  • In Fig. 3 ist das Blockschaltbild einer Basiszelle nach Fig. 2 dargestellt, die die Bearbeitungsmittel zur Bearbeitung der Tiefenkoordinaten und der Bildprozessorattribute bildet. Die k-te Basiszelle 12k empfängt aus der Basiszelle, die ihr vorangeht, die Signale Zk-1, dZk-1, Ck-1, dCk-1 und überträgt auf die Basiszelle, die ihr folgt, die Signale Zk, dZk, Ck, dCk. Die k-te Basiszelle 12k empfängt ebenfalls das Signal FLk. Die Signale Ck-1, dCk-1, Zk-1, dZk-1 und OEk-1 kommen in ein, von einem Taktgeber H gesteuerten, Flipflop mit fünf Eingängen 62k an, über die Leiter 77, 78, 75, 76, 79. Ebenso verlassen die Signale Ck, dCk, Zk, dZk und OEk ein Flipflop mit fünf Eingängen 63k, das vom Taktgeber H gesteuert wird. Das Signal OEk wird bei der Bearbeitung beim letzten Segment der Visualisierungsleitung ausgelöst. Der Einfachheit halber wird für die verschiedenen Signale an beiden Seiten jedes der Flipflops dieselbe Bezeichnung verwendet.
  • Die Signale Zk-1 und dZk-1 kommen in einen Addierer 32k an, der den Vorgang unter der Steuerung des Signals FLk aus dem Auswerteorgan ausführt. Der Wert Zk-1 kommt in einem Zwischenregister MT 34k an. Das Ergebnis der Addierung Zk = Zk-1 + FLk.dZk-1 geht aus der Basiszelle 12k über die Verbindung 75 ab, um in die folgende Basiszelle 12k+1 eingeführt zu werden. Der Ausgang des Zwischenregisters MT 34k kommt in einem Multiplexer 36k an, dessen Ausgangssignal in einem Tiefenregister MP 35k ankommt.
  • Der Ausgang des Multiplexers 36k kommt ebenfalls in einem Komparator 37k an, der ebenfalls Zk-1 empfängt und ein Vergleichssignal UPDk ausgibt, das im Flipflop 38k gespeichert ist.
  • Die Register 34k und 35k sind Schieberegister. Der Ausgang des Registers 35k ist mit einem der Eingänge des Multiplexers 36k verbunden. Dieser wählt das Ausgangssignal des Registers 34k oder das Ausgangssignal des Registers 35k entsprechend dem logischen Zustand eines Prüfsignals CNk aus einem Gatter 39k derart, daß CNk = FLk.UPDk ist. Der Multiplexer 36k ist in Fig. 4 dargestellt. Er besteht aus einem UND-Gatter 74k, das den logischen Vorgang UND zwischen dem Prüfsignal CNk aus dem Gatter 39k und dem Registerausgang 34k ausführt. Das Prüfsignal CNk wird vom Inverter 73k invertiert, dessen Ausgang in einen UND-Gatter 71k mit dem Registerausgang 35k ankommt. Die Ausgänge der UND-Gatter 71k und 74k kommen in einem ODER-Gatter 72k an, dessen Ausgang in das Register 35k ankommt.
  • Das UND-Gatter 39k empfängt das Signal FLk und das Ausgangssignal des Flipflops 38k. Der Ausgang des UND-Gatters 39k steuert die Wirkung eines Wählers 30k, der das Attribut Ck-1 empfängt.
  • Ein Addierer 31k empfängt die Signale Ck-1 und dCk-1 und führt den Vorgang Ck = Ck-1 + FLk.dCk-1 unter der Steuerung des Signals FLk aus.
  • Das Signal Ck-1 ist in einem Attribut-Schieberegister 33k unter der Steuerung des UND-Gatters 39k über den Wähler 30k gespeichert, der entweder den neuen Wert Ck-1 nach dem Register 33k abzweigen kann, wenn CNk = 1 ist, oder den früheren Inhalt im entgegengesetzten Fall neukopieren kann. Die im Attributregister 33k enthaltenen Daten werden einem parallelen Bus 13, der allen Zellen gemeinsam ist, über eine Ausgangsschaltung mit drei Zuständen 64k unter der Steuerung des Signals OEk-1 zugeführt. Es ist ebenfalls möglich, das Farbausgangssignal seriell und getakt auszuführen.
  • Die Schieberegister 34k und 35k bewirken synchron die Verschiebungen der Daten, die darin gespeichert sind. Wenn das Tiefenregister 35k mittels des bereits erwähnten Multiplexers 36k nach sich selbst zurückgeführt wird, können die Informationen, die es enthält, also regelmäßig an seinem Ausgang neuerscheinen, oder durch die Informationen aus dem Register 34k ersetzt werden.
  • Wenn das Basisprinzip aus dem Erneuern einer sehr tiefen Seite mit der Tiefe Z durch eine andere besteht, die mit größerer Annäherung durch den erfindungsgemäßen Prozessor bestimmt wurde, ergibt sich daraus, daß bei den zuvor erwähnten Analysezeiten bestimmte dieser Werte Z ungeändert bleiben, während andere geändert werden müssen.
  • Das Zwischenregister MT 34k speichert alle Informationen ZT = Zk-1, die entsprechend einer Zeile neu bestimmt wurden. Das Tiefenregister MP 35k speichert alle Informationen Zck, die vom Multiplexer 36k gewählt wurden, nachdem der Aktualisierungsvorgang durchgeführt wurde und sie werden in den Vergleichsvorgang zyklisch neu eingeführt, bis die Gruppe von Segmenten für die Gruppe von Punkten der Schirm geprüft ist.
  • Wenn sich für den Wert von Zck eine Änderung, wie zum Beispiel Zck = Zk-1, notwendig erweist, löst der Prozessor also die Einführung des neuen Werts des Farbattributs Ck-1 aus, der beim Positionieren des Signals CNk = 1 mit ihm übereinstimmt.
  • Das Attributregister 33k erfährt keinen Vergleichsvorgang und speichert für jede Zeile die Attribute Ck-1 unter der Steuerung der für den tiefen Wert Ck-1 getroffenen Entscheidung.
  • Die Wirkungsweise der Serienbearbeitungsmittel vom Pipelinetype des Prozessors ist wie folgt.
  • Für jedes Segment werden die Wertpaare XM&sub0; und XN&sub0; seriell eingeführt, das Bit mit niedrigster Wertigkeit zuerst. Diese Werte werden im Dekrementor 10&sub1; nach Fig. 2 dekrementiert. Nach dem Durchgang des höchstwertigen Bits vom XM&sub0;, daß das Ende des eingeführten digitalen Werts bildet, wird das Vorzeichen SN&sub1; des Ergebnisses am Ausgang des Dekrementors 10&sub1; im Auswerteorgan 11&sub1; gespeichert. Der zweite Wert XN&sub0; wird der Reihe nach eingeführt und ebenso wird das Vorzeichen SN&sub1; des Ergebnisses im Auswerteorgan 11&sub1; gespeichert. Hierdurch wird also der Wert des Signals FL&sub1; = SM&sub1;SN&sub1; bestimmt.
  • Wenn FL&sub1; = 0 ist, erscheint der zur Zeit analysierte Punkt nicht oder erscheint nicht mehr beim laufenden Segment und die Daten Z&sub0; werden lediglich über die Basiszelle nach der folgenden Zelle ohne Ergänzung von dZ übertragen. In diesem Fall beträgt ZM&sub1; = ZM&sub0;, ZN&sub1; = ZN&sub0;.
  • Wenn FL&sub1; = 1 ist, erscheint der zur Zeit analysierte Punkt beim laufenden Segment und wertet die Folge der Vorgänge aus.
  • Die Daten ZM&sub0; und dZ&sub0; werden im Addierer 32&sub1; derart addiert, daß ZM&sub1; = ZM&sub0; + dZ&sub0;, und ZM&sub0; im Zwischenregister 34&sub1; gespeichert wird. Gleichzeitig wird ZM&sub0; mit dem Inhalt, den das Tiefenregister 35&sub1; besitzt, mit Hilfe des Komparators 37&sub1; verglichen. Wenn ZM&sub0; kleiner als der im Tiefenregister 35&sub1; für dasselbe Bildelement gespeicherte frühere Wert ist, wird das Vergleichssignal UPD&sub1; in den logischen Zustand 1 gebracht. Da FL&sub1; = 1 ist, beträgt CN&sub1; = UPD&sub1;.FL&sub1;, worin CN&sub1; = 1 ist und der frühere in 35&sub1; gespeicherte Wert wird durch den Wert ZM&sub0; ersetzt. Im entgegengesetzten Fall wird der frühere Wert am Eingang des Tiefenregisters 35&sub1; neu eingeführt. Dieses Register speichert alle aktualisierten Werte entsprechend einem Punkt einer Visualisierungszeile. Das Signal CN&sub1; steuert also die Ladung von C&sub0; in das Attributregister 33&sub1;.
  • Die Abwicklung der verschiedenen Vorgänge, die nachstehend erläutert werden, erfolgt entsprechend eines Pipelinevorgangs, d. h. die relativen Vorgänge an einem selben Bildelement für ein vorgegebenes Segment werden zeitlich verschoben. Dies ist im Diagramm nach Fig. 5 dargestellt. Alle Vorgänge synchronisiert ein Taktgeber H mit Elementarperiode u mit einem Basiszyklus der Dauer T = a.u (a ganzzahlig). Die beschriebenen Vorgänge, die auf den Koordinaten XM&sub0;, XN&sub0; des Segments durchgeführt werden, erfolgen als erste, wobei das Bit mit niedrigster Wertigkeit von XM&sub0; als erste ankommt. Jeder der Vorgänge auf XMr und XNr für ein Bildelement Er im Verlauf eines Zyklus Tr dauert die Hälfte eines Basiszyklus mit der Dauer T. Der Index des Bildelements Er und der des Zyklus Tr sind willkürlich gewählt einander gleich. Im Laufe des Basiszyklus nach Tr+1 werden die Vorgänge mit den Daten XMr+1 und XNr+1 gleichzeitig mit den Vorgängen an der Tiefenzahl Zr durchgeführt. Im Laufe des Basiszyklus nach Tr+2 werden die Vorgänge an den Daten XMr+2 und XNr+2 gleichzeitig mit den Vorgängen an der Tiefenzahl Zr+1 und am Attribut Cr durchgeführt. Dieser dreifache Pipelinebetrieb ermöglicht die Verwirklichung der Vorgänge in einer kurzen Zeit.
  • Zum Initialisieren der Register 35k und 33k bei jedem Zeilenanfang bringt das Signal OEk den Ausgang UPDk des Komparators 38k auf 1, infolgedessen das Laden der Parameter Z und C aus dem Basissegment herbeigeführt wird.
  • Zur Veranschaulichung der Wirkungsweise der seriellen Bearbeitungsmittel vom Pipelinetyp in einem stark vereinfachten Fall ist in Fig. 6, 7 und 8 der Zustand dieser Mittel beim Ausgeben der drei aufeinanderfolgenden Schritte dargestellt.
  • Es wird jetzt von der aufeinanderfolgenden Bearbeitung der vier Segmente in nachstehender Reihenfolge ausgegangen:
  • Segment V XMo = 0 XNo = 4 Zo = 5 dZo = 0
  • Segment A XMo = 1 XNo = 3 Zo = 5 dZo = -2
  • Segment B XMo = 3 XNo = 4 Zo = 2 dZo = 0
  • Segment R XMo = 2 XNo = 3 Zo = 3 dZo = 0
  • Zum Vereinfachen der Darstellung werden XMo und XNo mit 3 Bits und Zo, dZo, Co und dCo mit 6 Bits dargestellt. Ein Basiszyklus T entsprechend der Bearbeitungszeit eines Segments umfaßt also 6 Elementar-Taktperioden.
  • Jede Elementarzelle wird für ein Bildpunkt bereitgestellt. Auf diese Weise wird die Elementarzelle mit dem Index 2 für den Bildpunkt E2 bereitgestellt. Die benutzten entsprechenden Bezugspunkte in den vorangehenden elektrischen Schaltbildern sind wieder in diese Darstellungen eingetragen.
  • Zyklus T1
  • Das Segment V wird als erstes bearbeitet. Die Dekrementoren 10&sub1;, 10&sub2;, 10&sub3; und 10&sub4; arbeiten mit XMo und XNo und die Flaggen FL&sub1;, FL&sub2;, F&sub3; und FL&sub4; befinden sich aufeinanderfolgend auf 1, da es sich um 4 Bildpunkte handelt, und werten das Segment V in den Zellen E1, E2, E3 und E4 beim Ausgeben des erstmaligen Zyklus T1 aus.
  • In Fig. 6 ist der Zustand am Ende des folgenden Zyklus T2 bezüglich der Zelle E1 dargestellt.
  • Zyklus T2
  • Die Positionierungen der Flaggen FL&sub1;, F&sub2;, F&sub3; und FL&sub4; für das Segment V werden progressiv in die Flaggen FL&sub1;M, FL&sub2;M, FL&sub3;M und FL&sub4;M umgesetzt, die die Positionen beibehalten, die mit einem Schiebezyklus ausgenutzt werden.
  • Am Ende des Zyklus T2 erfolgt diese Übertragung für die Zelle 1 und auf diese Weise wird in der Flagge FL&sub1;M der Wert FL&sub1; = 1 gefunden. Für die anderen Zellen wird diese Übertragung nur im Zyklus T3 herangezogen, in dem während jeder Elementarperiode u die Flaggen FLkM progressiv gefüllt werden, und die Werte von FLk für das Segment A also die auf FLkM übertragenen Werte ersetzen.
  • Die Dekrementoren wirken auf das Segment A ein und die Werte FL&sub1; = 0, FL&sub2; = 1, FL&sub3; = 1, FL&sub4; = 0 werden bestimmt. Nach dem Auswerten des Segments V erfolgt der Vorgang Zv+dZv und das Ergebnis wird in die Speicher 34&sub1;, 34&sub2;, 34&sub3;, 34&sub4; eingeschrieben. Beim Beginn des Zyklus T2 ist jeder der Speicher nur noch unvollständig geladen. Das Ergebnis Zv+dZv gelangt ebenfalls an die Komparatoren 37&sub1;, 37&sub2;, 37&sub3; und 37&sub4;, die auf progressive Weise diese Werte mit den Werten (= Basiswerten) in den Tiefenregistern 35k vergleichen und die die Signale UPDk erzeugen.
  • Die Signale UPDk gelangen also an die UND-Gatter 39k zur Bildung der Signale CNk der Flaggen FLk, wobei diese Signale also die Position der Multiplexer am Ausgang der Register 34k und 35k bestimmen.
  • Zyklus T3
  • Die Dekrementoren bearbeiten das Segment B. Es geht dabei nicht um die Zellen E1, E2 und E3. Es handelt sich um die Zelle E4. Die Flaggen FL&sub1;, F&sub2; und FL&sub3;werden in den Zellen E1, E2 und E3 progressiv auf Null gebracht, wonach die Flagge FL&sub4; in der Zelle E4 auf 1 gesetzt wird.
  • Die Berechnung ZA+dZA erfolgt für das Segment A und wird mit den Werten Zv in den Registern 35&sub2; und 35&sub3; der Zellen E2 und E3 verglichen, wonach für das Segment A einmalig die Berechnung in den Zellen E2 und E3 ausgewertet wird. Es werden die Signale UPD&sub2; = 1, UPD&sub3; = 1 erzeugt.
  • Die Berechnung von Cv+dCv erfolgt für das Segment V in den Zellen E1, E2, E3, E4. Da für das Segment V die verschiedenen Flaggen FLk. den Wert 1 und da die verschiedenen Signale CNk ebenfalls den Wert 1 hatten, werden die Werte Cv+dCv in die Speicher 33k eingeschrieben.
  • In Fig. 7 ist der Zustand am Ende des Zyklus T4 relativ nach der Zelle E1 dargestellt.
  • Zyklus T4
  • Die Positionierungen der Flaggen FL werden allmählich auf die Flaggen FL.M übertragen.
  • Die Dekrementoren bearbeiten das Segment R (FL&sub1; = FL&sub2; = FL&sub4; = 0; FL&sub3; = 1). Wenn in den Zellen E2 und E3 die Flaggen FL&sub2;M und FL&sub3;M und die Flaggen UPD2 und UPD3 auf 1 gesetzt sind, werden auch CN&sub2; und CN&sub3; auf 1 gesetzt und steuern die Multiplexer zum Substituieren von Zv des Segments V in den Zellen E2 und E3 durch ZA des Segments A, da ZA kleiner als Zv ist.
  • Die Berechnung ZB+dZB erfolgt durch das Segment B in der Zelle E4.
  • Die Berechnung CA+dCA erfolgt in den Zellen E2 und E3, da FL&sub2;M und FL&sub3;M auf 1 eingestellt sind (durch dieses Segment betroffene Zellen). FL&sub1;M und FL&sub4;M werden auf Null eingestellt. Die Addierung wird also nicht ausgeführt, sondern es wird die Aktualisierung in den Zellen E2 und E3 ausgeführt, da CN&sub2; und CN&sub3; auf 1 eingestellt sind.
  • In Fig. 8 ist der Zustand am Ende des Zyklus T5 relativ nach der Zelle E1 dargestellt.
  • Zyklus T5
  • - Die Dekrementoren bearbeiten ein folgendes Segment S, - ZB ersetzt Z in der Zelle E4. Die in den Zellen E1, E2, E3 gespeicherten Werte Z werden nach sich selbst zurückgeschleift, - ZR wird mit dem gespeicherten Wert Z verglichen, der durch die Position der Multiplexer bestimmt wird, - Keine Aktualisierung der Attribute in den Zellen E1, E2, E3 (Durchschleifung der Register nach sich selbst), da das Segment B sich nicht auf diese Zellen bezieht, - Progressive Aktualisierung von CB in der Zelle E4.
  • Durch die Pipelinebetriebsart werden die Speicher am Ende jedes dieser Zyklen unvollständig gefüllt und der Vorgang wird erst im Laufe der folgenden Zyklen beendet.
  • Es sind jetzt die Serienbearbeitungsmittel vom Pipelinetyp beschrieben, die mit den zuvor umgesetzten Polygonparametern entsprechend der Parameter einer Gruppe von Segmenten (M&sub0;, N&sub0;) beliefert werden.
  • Die Software, die diese Umsetzung ausführt, wird gemäß folgendem Vorgang definiert:
  • Software für die Erzeugung von Segmenten.
  • Initialisierung
  • - Für jedes Polygon: - dZ berechnen; - Für jede Kante, beispielsweise die Kante q vom Punkt A nach dem Punkt D: - LYq = YD-YA - IXq = (XD-XA)/LYq, IZq = (ZD-ZA)/LYq - ICq = (CD-CA)/LYq berechnen;
  • Dieselbe Vorgänge werden für alle Kanten durchgeführt.
  • - Das Mindest-Y des Polygons = Ymin und die erste vorgefundene Kante ausgehend vom Punkt A beim Drehen in der vorgegebenen Richtung bestimmen:
  • XM&sub0;=XA, ZM&sub0;=ZA, IXM&sub0;=IXq, IZM&sub0;=IZq, ICM&sub0;=ICq, LYM&sub0;=LYq, XN&sub0;=XA, ZN&sub0;=ZA, IXN&sub0;=IXq-1, IZN&sub0;=IZq-1, ICN&sub0;=ICq-1 LYND- LYq-1; worin q-1 die vor der Kante q angeordnete Kante beim Wählen der vorgegebenen Richtung ist, d. h. im Uhrzeigersinn.
  • - Initialisieren des Polygonverzeichnisses von Null an, wobei die Visualisierungszeile eingefangen wird, die das aktive Verzeichnis liefert.
  • Berechnung der Segmente
  • - Für jede Visualisierungszeile, wie z. B. Y = LB: - Für jedes Polygon mit Ymin = LB: - Einführen des Polygons in das aktive Verzeichnis. - Für alle Polygone des aktiven Verzeichnisses: - Dekrementieren von LY der rechten und linken Kanten:
  • LYM&sub0;=LYM&sub0;-1, LYN&sub0;=LYN&sub0;-1 - die Inkremente von rechts und links für X, Z und C ergänzen.
  • Ausgang des Segments:
  • XM&sub0;, XN&sub0;, ZM&sub0;, dZ CM&sub0;, INC = (CM&sub0;-CN&sub0;)/(XM&sub0;-XN&sub0;).
  • - wenn LYM&sub0;= 0 ist, so sind LYN&sub0; = 0 Ausgang des Polygons des aktiven Verzeichnisses LYN&sub0; = 0 linke Kante = folgende Kante Aktualisierung der linken Inkremente.
  • - wenn LYM&sub0; = 0 ist, so ist LYN&sub0; = 0 rechte Kante = vorangehende Kante Aktualisierung der rechten Inkremente.
  • Die Umsetzungsmittel werden also aus der Software zusammengesetzt, die einen Computer, einen Mikrocomputer oder einen Mikroprozessor enthält, die ebenfalls die Speicherung der Basisdaten bewirkt. Die seriellen Bearbeitungsmittel vom Pipelinetyp werden also zusammengebracht, beispielsweise in Form einer integrierten Schaltung, und bilden zusammen also den erfindungsgemäßen Bildprozessor. Er ist also mit einem Visualisierungsprozessor verbunden, der das wiederhergestellte Bild liefert.
  • Jetzt folgt die Beschreibung der Umsetzungsmittel, die aus einer Umsetzungsschaltung für Polygonparameter in Segmentparameter bestehen. Diese Schaltung kann eine unabhängige Schaltung in Form beispielsweise einer integrierten Schaltung sein. Der Bildprozessor enthält also die Serienbearbeitungsmittel vom Pipelinetyp und die Umsetzungsschaltung, die ihre Basisdaten aus einem Bildspeicher empfangt, der die Polygonparameter speichert.
  • In Fig. 9 ist das Blockschaltbild der aus einer Umsetzungsschaltung 40 bestehenden Umsetzungsmittel dargestellt. Sie enthalten einen Addierer 27, die an einem Eingang das Ausgangssignal eines Eingangsregisters 43 und am anderen Eingang das Ausgangssignal eines Umlaufspeichers 22 empfängt, der an seinem Eingang das Ausgangssignal des Addierers 27 empfängt. Der Umlaufspeicher 22 kann aus einem Schieberegister aufgebaut werden, um synchron mit den seriellen Bearbeitungsmitteln vom Pipelinetyp arbeiten zu können. Er speichert die Informationen DPp, die sich auf jedes Polygon Pp beziehen, das von der Visualisierungszeile eingefangen ist. Das Eingangsregister 43 empfängt die Polygonparameter ausgehend von einem Bildspeicher 25, der zuvor von außen geladen wurde. Die Ladung des Eingangsregisters 43 wird von einer Steuer- und Prüfschaltung 42 gesteuert, die die Wirkung der Umsetzungsschaltung sowie die Leseaufrufe des Bildspeichers über einen Reihenfolgegenerator 24 steuert.
  • Die Polygonparameter werden im Bildspeicher beispielsweise mit der Art und der Ordnung der in der vorangegangenen Tabelle I angezeigten Parameter gespeichert. Mit Hilfe der Befehle (RAZO) 47 und (RAZ) 48 werden das Eingangsregister 43 und der Umlaufspeicher 22 auf Null gestellt, um das Laden von Daten einzuleiten. Der Befehl (LOAD) 45 bewirkt das Laden des Eingangsregisters 43. Dazu empfangt der Reihenfolgegenerator 24 einen Befehl 81 aus der Prüf- und Steuerschaltung 42, die das Lesen der Daten im Bildspeicher veranläßt. Diese Daten werden über das Eingangsregister 43 und den Addierer 27 dem Umlaufspeicher 22 zugeführt, der auf diese Weise mit dZ, CM&sub0;, XM&sub0;, LYd, ZN&sub0;, CN&sub0;, XN&sub0;, LYg des Polygons Pp geladen wird. Wenn dieser Speicher 22 in einer Schleife arbeitet, bekommt er eine ausreichende Größe, aber nicht zu groß, um die Bearbeitungsdauer nicht zu verlängern. Mit der Anzahl gewählter Parameter für jedes Polygons, wie sie in der Tabelle I angegeben sind, ist die Möglichkeit der Speicherung von 32 Polygonen eine annehmbare Abmessung. Dies ermöglicht eine Bearbeitung in Echtzeit.
  • Die Wirkung der Umsetzungsschaltung 40 erfordert in jedem Zyklus die Durchführung folgender Vorgänge: - Extraktion eines Datenworts des Umlaufspeichers 22 durch Verschieben und Laden seines Eingangs mit dem Ausgangssignal des Addierers 27, - Laden des Eingangsregisters 43 mit den Daten IX, IZ, IC, die aus dem Bildspeicher gelesen, aber nicht in den Speicher 22 geladen werden, - Erzeugen der Adresse der folgenden aus dem Bildspeicher zu lesenden folgenden Information, - Addieren der Ausgangssignale des Speichers 22 und des Registers 43.
  • Es werden so die Addierungen und die Übertragungen X &larr; X+IX, Z &larr; Z+IZ, C &larr; C+IC, LY &larr; LY-1 durchgeführt, wobei das Symbol angibt, daß der neue Wert (X+IX) den früheren Wert X ersetzt. Die Dekrementierung um eine Längeneinheit der Kante kann leicht durch Positionierung des Ausgangs des Eingangsregisters 43 auf den Wert -1 mit Hilfe des Befehls CONS 46 erfolgen.
  • Das Parameter dZ eines Polygons ist eine Konstante für jedes Polygon und darf keine Änderung erfahren. Trotzdem wird es für die Fragen der Bearbeitungsvereinfachung in die Polygonparameter eingeführt, aber sein Durchgang nach dem Addierer 27 ändert ihn nicht beim Positionieren des Ausgangs des Eingangsregisters 43 auf Null mit Hilfe des Befehls RAZ 47. Die Steuer- und Prüfschaltung 42 führt die Prüfung der Länge der rechten und linken Kanten der Polygone aus. Wenn nach der Bearbeitung die umlaufende Länge LY den Wert Null erreicht, wird die betreffende Kante nicht länger benutzt und muß, wenn das Polygon immer noch in Bearbeitung ist, durch die folgende Kante oder durch ein neues Polygon im umgekehrten Fall ersetzt werden.
  • Der Reihenfolgegenerator 24 wird mit weiteren Einzelheiten in Fig. 10 dargestellt. Er erzeugt die Datenadressen, die in den Bildspeicher 25 eingelesen werden müssen. Dafür müssen in ein Adreßregister 51 die folgenden Informationen digeschrieben werden: - Absolute Adresse des Polygons - Nummer der linken Kante Ng - Anzahl der linken Kanten Narg - Nummer der rechten Kante Nd - Anzahl der rechten Kanten Nard - Flaggen, die den Zustand des Polygons angeben.
  • Diese Flaggen sind beispielsweise: - PA = 0, wenn das Polygon nicht aktiv ist, d. h. wenn das Polygon von der Visualisierungszeile nicht abgefangen wird. - DP = 0, wenn der nächste Durchgang in den Umsetzungsmitteln des Polygons der Initialisierungsphase entspricht. - Dg = 0 (bzw. Dd = 0), wenn der nächste Durchgang in den Mitteln zum Umsetzen des Polygons einer Änderungsphase der linken Kante entspricht (bzw. der rechten Kante).
  • Die einfachste Weise zum Verfügen über diese Informationen ist die Aufbewahrung dieser Informationen in einem Adreßregister 51 gleich dem Umlaufdatenspeicher 22, der für eine Änderung des Polygons oder der Kante aktualisierbar ist. Dafür wählt ein Multiplexer 53 den Ausgang eines Eingangsstapels 54, oder den Ausgang eines Addierers 52 unter der Steuerung der Steuer- und Prüfschaltung 42. Die Bildung der Aufeinanderfolge der Vorgänge sieht wie folgt aus.
  • Ein Zeilenzähler 56 wird mit jeder Zeile inkrementiert. Am Anfang dieser Zeile werden in den Eingangsstapel 54 werden die Adressen der Polygone geladen. Diese Adressen werden extern im Generator 55 erzeugt, der die Instruktionen einer Zentraleinheit empfängt. Es folgt eine Verschiebung im Adreßregister 51 nach jeder 8 Elementarperioden des Taktgebers, was 8 folgenden Polygonbearbeitungsvorgängen entspricht:
  • LYg &larr; LYg-1
  • Xg &larr; Xg + dXg
  • Zg &larr; Zg + dZg
  • Cg &larr; Cg + dCg
  • LYd &larr; LYd-1
  • Xd &larr; Xd + dXd
  • Cd &larr; Cd + dCd
  • dZ &larr; dZ + 0.
  • Also wird nach je 8 Elementar-Taktperioden u, was der Bestimmung der Parameter des durch die Überschneidung des Polygons mit der Visualisierungszeile bestimmten Segments entspricht, am Ausgang des Registers 51 zum Bearbeiten des folgenden Polygons eine neue Polygonadresse erzeugt. Der Adreß-Reihenfolgegenerator 24 erzeugt also die Adressen der verschiedenen im Bildspeicher aufgesuchten Daten. Diese Adreßsequenz ist mit den Werten der Flaggen PA, DP, Dg, Dd verknüpft. Diese gelesenen Daten gelangen also an das Eingangsregister 43.
  • Entsprechend der Ergebnisse der ausgeführten Prüfungen mit LYg und LYd wird bei der folgenden Verschiebung das Adreßregister 51 erneut mit den neuen Adressen geladen, die beim folgenden Durchgang wie folgt verwendet werden: - Wenn PA = 0 (nicht aktives Polygon), oder wenn LYg = 0 und Ng = Narg (Detektion eines Polygonendes) sind, und wenn der Eingangsstapel 54 nicht leer ist (also es gibt ein Polygon am Anfang der folgenden Zeile), wird die Adresse dieses neuen Polygons in das Adreßregister 51 geladen und werden die Flaggen auf PA = 1 (aktives Polygon) und auf DP = 0 Initialisierung eingestellt, - Wenn LYg = 0 oder LYd = 0 und Ng weicht von Narg ab (Detektion eines Kantenendes), wird Ng (oder Nd) inkrementiert und Dg auf Null (oder Dd auf 0) eingestellt), - Wenn nichts detektiert wird, bleiben die Flaggen ungeändert.
  • Die verschiedenen Steuersignale zum Durchführen dieses Verfahrens werden von einer mikroprogrammierten Steuerstruktur erzeugt.
  • Das in dem Register 51 für jedes Polygon gespeicherte Adreßwort liefert zunächst ein erstes Feld, bestehend aus APp, Narg, Ng, Nard, Nd, (APp Polygonindex), was ermöglicht, die Datenadressen, und ein zweites Feld bestehend aus PA, DP, Dd, Dg, die den Zustand des Polygons angeben zu erzeugen. Das Register 51 speichert ein Adreßwort je Polygon mit folgender Zusammensetzung:
  • APj Narg Ng Nard Nd PA DP Dd Dg
  • Es sind also 32 Wörter dieses Typs für eine Bearbeitungskapazität von 32 Segmenten pro Zeile erforderlich.
  • Zur Vergrößerung der Leistung der Bearbeitung können mehrere Prozessoren parallel verwendet werden. Dafür liefert jeder Prozessor nicht nur die Parameter C, sondern auch die Parameter Z bei gleichzeitiger Bearbeitung und getrennt zwei Segmentgruppen bezüglich derselben Visualisierungszeile. Ein Vergleich der Parameter Z ermöglicht die Wahl der Darstellungsfarbe.
  • Auch ist es möglich, bei der Bestimmung des Ursprungswerts Zorg mit 2 Pipelineebenen derart zu arbeiten, daß das Segment MoNo die Achse OZ einfängt. Es ist also möglich, Zorg+dZ für jeden Wert von Xk zu berechnen und den Vergleich unter der Steuerung des Signals FLk auszuwerten.
  • Zum Bearbeiten der Transparenz kann ein Segment mit einer Transparenzflagge markiert werden, wobei das Segment auf die Signale CNk einwirkt, um beispielsweise jeden zweiten Takt die Aktualisierung der Parameter Zk und Ck des transparenten Segments zu hemmen.

Claims (10)

1. Bildprozessor zur Bildung eines zweidimensionalen Bildes von dreidimensionalen Objekten, von einem bestimmten Beobachtungswinkel aus gesehen, wobei der Prozessor folgende Elemente enthält: - Mittel zum Einführen von Polygonparametern, die eine Gruppe konvexer Polygone in bezug auf einen Bezugsraum definieren, wobei diese Polygongruppe eines oder mehrere dreidimensionalen Objekte darstellt, - Mittel zum Ableiten von Bildelementparametern, wobei von den Polygonparametern ausgegangen wird, und diese Bildelementparameter ein zweidimensionales Bild eines Objekts in einer Sichtebene bilden, die abhängig vom Sichtwinkel in bezug auf den Bezugsraum festgesetzt ist, und - Mittel zum Wählen der am nächsten bei der Sichtebene liegenden Bildelemente und zum Speichern der Parameter dieser Elemente, dadurch gekennzeichnet, daß - die Mittel zum Ableiten der Bildelementparameter in Form einer Pipeline verwirklicht werden, um diese Bildelementparameter serienweise zu bestimmen, ausgehend von Parametern, die eine Überschneidung eines Polygons mit einer Abtastebene definieren, - diese Mittel zum Empfangen der Parameter ausgelegt sind, die die Überschneidungen eines Polygons mit einer Gruppe von Abtastebenen, in Form wenigstens der Endpunkte der Überschneidungen in einer einzigen Koordinate und des Wertes und der Änderung, innerhalb der Begrenzungen der Überschneidungen, des Abstandes bezüglich der Visualisierungsebene definieren, wobei diese Abtastebenen zueinander parallel und im wesentlichen transversal zur Visualisierungsebene verlaufen, welche Visualisierungsebene sich im Bezugsraum befindet.
2. Bildprozessor nach Anspruch 1, dadurch gekennzeichnet, daß die Mittel zum Eingeben von Polygonparametern zum Empfangen einer Segmentgruppe in Form von Koordinaten XMo, XNo von Koordinaten und Inkrementen der Tiefe Zo und dZo und von Parametern und Attributinkrementen Co und dCo bezüglich jedes Segments ausgelegt sind, wobei die Segmentparameter in die seriellen Behandlungsmittel vom Pipelinetyp bitweise eingegeben werden.
3. Bildprozessor nach Anspruch 1, dadurch gekennzeichnet, daß die Mittel zum Eingeben von Polygonparametern zum Empfangen einer Segmentgruppe in Form von Koordinaten XMo, XNo von Koordinaten und Inkrementen der Tiefe Zo und dZo und von Parametern und Attributinkrementen Co und dCo bezüglich jedes Segments ausgelegt sind, wobei die Segmentparameter in die seriellen Behandlungsmittel vom Pipelinetyp in Bitgruppen eingegeben werden.
4. Bildprozessor nach einem der Ansprüche 1 oder 2, dadurch gekennzeichnet, daß die Mittel zum Eingeben der Polygonparameter zum Empfangen einer Segmentgruppe in Form von Koordinaten XMo, XNo, von Koordinaten und Inkrementen der Tiefe Zo und dZo, und von Parametern und Attributinkrementen Co und dCo bezüglich jedes Segments ausgelegt sind, die seriellen Behandlungsmittel vom Pipelinetyp n Blöcke enthalten, die jeweils für die serielle Bearbeitung der Parameter von einem der n Bildelemente einer Visualisierungslinie bestimmt sind, wobei der k-te Block folgende Elemente enthält (bei 1 &le; k &le; n); - einen Dekrementor, der die Koordinaten (XMk-1, XNk-1) empfängt, zum Dekrementieren mit einer binären Einheit gemäß XMk= XMk-1-1, XNk= XNk-1-1, - ein Auswertungsorgan, das die Vorzeichen (SMk, SNk) der Ergebnisse (XMk, XNk) aus dem Dekrementor empfängt und ein Auswertesignal FLk derart bestimmt, daß FLk = SMk.SNk ist, (wobei das Symbol (.) die logische UND-Bearbeitung angibt), wobei FLk = 1 ist, wenn das analysierte Bildelement sich auf die Koordinaten (XMk, XNk) bezieht, und wenn FLk = 0 im umgekehrten Fall ist, - eine Basiszelle: - die die Parameter Zk-1, dZk-1, Ck-1, dCk-1 und das Signal FLk empfängt, - die unter der Steuerung des Signals FLk = 1 die Parameter Zk, Ck, dZk, dCk für die folgende Basiszelle bestimmt, - die die Parameter zk-1 speichert, sie mit früheren gespeicherten Werten Zck (früher) vergleicht und die Werte Zck(neu) derart speichert, daß Zck (neu) = Zck (früher) ist, wenn Zk-1 &ge; Zck (früher) ist, Zck (neu) = Zk-1 ist, wenn Zk-1 < Zck (früher), - die die Attribute Ck-1 speichert, die den neuen gespeicherten Werten Zck zugeordnet sind, - die die Attribute Ck-1 auf einen externen Bus überträgt.
5. Prozessor nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß er außerdem Parameterbestimmungsmittel enthält, die die Überschneidungen eines Polygons mit einer Einheit von Abtastebenen definieren, die sich untereinander in paralleler Richtung und im wesentlichen quer zu einer in einem Bezugsraum enthaltenen Visualisierungsebene erstrecken.
6. Bildprozessor nach Anspruch 5, dadurch gekennzeichnet, daß dem Bildprozessor die Polygonparameter in Form von Koordinaten und Scheitelattributen und von Polygonkantenparametern eingegeben werden, die in einem Bildspeicher gespeichert sind, wobei die Parameterbestimmungsmittel folgende Elemente enthalten: - einen Addierer, der an einem Eingang das Ausgangssignal eines Eingangsregisters und am anderen Eingang das Ausgangssignal eines Umlaufspeichers empfängt, - den Umlaufspeicher, der mit dem Addiererausgang verbunden ist und eine Kapazität zum Speichern der durch die betreffende Visualisierungszeile eingefangenen Polygonparameter hat, - eine Prüf- und Steuerschaltung zum Steuern des vom Addierer ausgegebenen Ergebnisses und zum Ausgeben von Steuersignalen, wenn die Koordinaten der Kantenenden weicht sind, an den Umlaufspeicher, an das Eingangsregister und an eine Ablaufsteuerung, - das Eingangsregister zum Empfangen der Polygonparameter eines Bildspeichers, - die Ablaufsteuerung, die von der Prüf- und Steuerschaltung zum Prüfen der Datenlesung des Bildspeichers gesteuert wird, wobei der Addiererausgang die Daten mit den Endkoordinaten XM&sub0; und XN&sub0;, mit den Tiefenkoordinaten und Tiefeninkrementen Z&sub0; und dZ&sub0;, mit den Attributparametern und den Attributinkrementen C&sub0; und dC&sub0; für jedes Segment ausgibt.
7. Bildprozessor nach Anspruch 6, dadurch gekennzeichnet, daß die Ablaufsteuerung folgende Elemente enthält: - ein Adreßregister mit den Adressen zum Adressieren der Polygone im Bildspeicher im Laufe der Bearbeitung, wobei das Register von der Prüf- und Steuerschaltung gesteuert wird, - einen Eingangsstapel mit den gespeicherten Adressen der einzuführenden Polygonparameter, gesteuert von der Prüf- und Steuerschaltung, - einen Addierer, der die vom Ausgang des Adreßregisters gelieferte Adresse inkrementiert und zum Adressieren des Bildspeichers die inkrementierten Adressen ausgibt, wobei diese inkrementierten Adressen in den Eingang eines Multiplexers neueingeführt werden, der diese inkrementierten Adressen oder neue Adressen im Eingangsstapel unter der Steuerung der Prüf- und Steuerschaltung wählt, um durch ein neues Polygon das Polygon zu ersetzen, das von der Visualisierungslinie nicht eingefangen werden konnte.
8. Bildprozessor nach einem der Ansprüche 4 bis 7, dadurch gekennzeichnet, daß die Wirkung des Prozessors auf einer Zyklusfolge T mit je u Zeiteinheiten erfolgt, die ein Taktgeber H derart bildet, daß T = a.u ist (a ganzzahlig, Wortlänge), und daß die n Basiszellen für die k-te Basiszelle bei 1 &le; k &le; n folgende Elemente enthalten: - ein Eingangsflipflop, das beim Takt H die Signale Zk-1, dZk-1, Ck-1, dCk-1 und ein Signal OEk-1 als Ende der Suche der Visualisierungslinie auswertet, - einen Addierer, der den Parameter Zk derart bestimmt, daß Zk = Zk-1+dZk ist, wenn FLk = 1 ist, und Zk = Zk-1 ist, wenn FLk = 0 ist, - ein Zwischenregister, das den Wert Zk-1 speichert, - ein Tiefenregister, das den jedem Bildpunkt zugeordneten neuen Wert Zck derart speichert, daß Zck (neu) = Zck (früher) ist, wenn Zk-1&ge; Zck (früher), und Zck (neu) = Zk-1 ist, wenn Zk-1 < Zck (früher) ist, - einen Multiplexer, der unter der Steuerung eines Signals CNk den Ausgang des Tiefenregisters auf einen Komparator richtet, wenn CNk = 0 ist, und den Ausgang des Zwischenregisters auf den Eingang des Tiefenregisters richtet, wenn CNk = 1 ist, den Komparator, der den Wert Zk-1 am Eingang des Addierers mit den aktualisierten, im Tiefenregister gespeicherten Werten Zck vergleicht, und ein Vergleichssignal UPDk derart ausgibt, daß UPDk = 1 ist, wenn Zk-1 neu < Zck aktualisiert ist, - ein Flipflop, das das Vergleichssignal UPLDk speichert, - ein logisches UND-Gatter, das das Signal CNk=FLk.UPDk ausgibt, - einen weiteren Addierer, der ein Attributparameter Ck derart bestimmt, daß Ck = Ck-1+dCk-1 ist, wenn FLk = 1 ist, - einen vom Signal CNk gesteuerten Wähler, der den neuen Wert Ck-1 auf ein Attributregister richtet, wenn Zck (neu) von Zck (früher) abweicht, und den früheren Wert Ck-1 umlaufen läßt, wenn Zck (neu) gleich Zck (früher) ist, - eine Ausgangsschaltung, die die Daten Ck-1 einem Ausgangsbus zuführt, wenn alle Segmente aller Polygone geprüft sind, - ein Flipflop, das beim Takt H als invertiertem Wert des Taktes H die für die folgende Basiszelle gelieferten Signale Zk, dZk, Ck, dCk und OEk auswertet.
9. Anwendungsverfahren für dreidimensionale Objekte in einem Bildprozessor, der Eingangsmittel für beschreibende konvexe Polygonparameter dieser Objekte in einem Visualisierungs-Bezugspunkt, Mittel zum Bestimmen der Parameter von Bildelementen eines zweidimensionalen umgeformten Bildes dieses Objekts in der Visualisierungsebene einer Visualisierungsanordnung ausgehend von Polygonparametern, Mittel zum Wählen und Speichern der Parameter aller Elemente des nächst zur Visualisierungsebene liegenden umgeformten Bildes zum Beseitigen der versteckten Flächen des Objekts enthält, die unter einem aus einer Gruppe von Winkeln ausgewählten Sichtwinkel dargestellt werden, dadurch gekennzeichnet, daß die Wirkung der seriellen Bearbeitungsmittel bei einer Basisperiodenfolge T mit je u Zeiteinheiten erfolgt, die ein Taktgeber derart bildet, daß T = a.u ist (a ganzzahlig, Wortlänge), wobei die seriellen Bearbeitungsmittel n Basiszellen enthalten, die Polygonparameter in eine Segmentgruppe (M&sub0;, N&sub0;) umgewandelt werden, welche Segmentgruppe aus den Überschneidungen der Polygongruppe mit jeder Visualisierungslinie der Visualisierungsanordnung besteht, und die Segmente in Form von Endenkoordinaten XM&sub0;, XN&sub0;, von Tiefenkoordinaten und Tiefenparametern Z&sub0; und dZ&sub0; und von Attributparametern und Attributinkrementen C&sub0; und dC&sub0; bezüglich jeden Segments (M&sub0;, N&sub0;) für jeden Block k (bei 1 &le; k &le; n) geliefert werden:
- die Inhalte von zwei Speicher MT und MP werden mit den Höchstwerten ZT und Zck eingeleitet, die sie enthalten können, - aufeinanderfolgend werden seriell die Koordinaten XMk-1, XNk-1 der Enden einer Segmentgruppe in einen Dekrementor eingeführt, der in jeder Zeiteinheit u eine Binäreinheit von der Koordinate XMk-1 und von der Koordinate XNk-1 jedes Segments abzieht, - die nach diesen Dekrementierungen erhaltenen Ergebnissignale SMk, SNk der Koordinaten XMk, XNk werden gespeichert, - ein Signal FLk = SMk. wird bestimmt, - wenn das Signal FLk = 1 ist, werden die Tiefenkoordinate und das Tiefeninkrement Zk-1 und dZk-1 sowie der Attributparameter und das Attributinkrement Ck-1 und dCk-1 in eine Basiszelle eingegeben, die einen Wert Zk und einen Wert Ck derart bestimmt, daß Zk = Zk-1+dZk-1 Ck = Ck-1+dCk-1 sind, wenn FLk = 1 ist, Zk = Zk-1 Ck = Ck-1 sind, wenn FLk = 0 ist, - der Wert Zk-1 wird in den Speicher MT eingeschrieben, damit ZT = Zk-1 ist, - für jede Zeiteinheit u wird jedes Binärelement des Wertes Zk-1 mit jedem im Speicher MP enthaltenen Binärelement des Wertes UPDk verglichen, wobei mit dem Binärelement mit niedriger Wertigkeit angefangen wird, und es wird ein Vergleichssignal UPDk derart erzeugt, daß UPDk = 1 ist, wenn Zk-1 < Zck ist, und es wird ein Signal CNk = FLk.UPDk bestimmt, - wenn CNk = 1 ist, - wird der Wert Zck im Laufe der Periode T durch den Wert ZT = Zk-1 ersetzt, - wird der Wert Ck-1 in ein Attributregister eingegeben, - wenn CNk = 0, werden die Daten Zck des Ausgangs des Speichers MP im Laufe einer Zyklusdauer T dem Eingang desselben Speichers zugeleitet, - gleichzeitig werden dieselben Stufen für die n aufeinanderfolgenden Blöcke so ausgeführt, daß ein vorgegebener Block k seine Informationen aus dem vorangehenden Block (k-1) empfangt, wobei jeder Block zu einem vorgegebenen Zeitpunkt in einem Pipelineverfahren folgende Operationen ausführt, - das Bestimmen der Werte XM&sub0;, XN&sub0; im Laufe des Zyklus Tr, - das Bestimmen und Speichern der Daten Z bezüglich des vorigen Zyklus Tr-1, - das Bestimmen und Speichern der Daten C bezüglich des vorangehenden Zyklus Tr-2 und das Aktualisieren des erneuerten Z, - alle Informationen Xk aus den k Blöcken stehen an einem Ausgangsbus zur Verfügung, wenn alle Segmente ganz untersucht sind, was eine bestimmte Anzahl von Zyklen T erfordert, die durch die Anzahl der in der betreffenden Visualisierungslinie vorhandenen Segmente bestimmt wird.
10. Schaltung zum Umwandeln von Polygonparametern in Segmentparameter für einen Bildprozessor für dreidimensionalen Objekte nach einem der Ansprüche 5 bis 8, die Eingangsmittel für beschreibende konvexe Polygonparameter dieser Objekte in einem Visualisierungs-Bezugspunkt, Mittel zum Bestimmen der Parameter von Bildelementen eines zweidimensionalen umgeformten Bildes dieses Objekts in der Visualisierungsebene einer Visualisierungsanordnung ausgehend von Polygonparametern, Mittel zum Wählen und Speichern der Parameter aller Elemente des nächst zur Visualisierungsebene liegenden umgeformten Bildes zum Beseitigen der versteckten Flächen des Objekts enthält, die unter einem aus einer Gruppe von Winkeln ausgewählten Sichtwinkel dargestellt werden, dadurch gekennzeichnet, daß dem Bildprozessor die Parameter von m Polygonen Pm in Form von Koordinaten und Scheitelattributen und von Polygonkantenparametern eingeben werden, die in einem Bildspeicher gespeichert sind, wobei die Umwandlungsschaltung folgende Elemente enthält: - einen Addierer, der an einem Eingang das Ausgangssignal eines Eingangsregisters und am anderen Eingang das Ausgangssignal eines Umlaufspeichers empfangt, - den Unilaufspeicher, der mit dem Addiererausgang verbunden ist und eine Kapazität zum Speichern der durch die betreffende Visualisierungszeile eingefangenen Polygonparameter hat, - eine Prüf- und Steuerschaltung zum Steuern des vom Addierer ausgegebenen Ergebnisses und zum Ausgeben von Steuersignalen, wenn die Koordinaten der Kantenenden erreicht sind, an den Umlaufspeicher, an das Eingangsregister und an einen Sortierer, - das Eingangsregister zum Empfangen der Polygonparameter eines Bildspeichers, - den Sortierer, der von der Prüf- und Steuerschaltung zum Prüfen der Datenlesung des Bildspeichers gesteuert wird und folgende Elemente enthält, - ein Adreßregister mit den Adressen zum Adressieren der Polygone im Bildspeicher im Laufe der Bearbeitung, wobei das Register von der Prüf- und Steuerschaltung gesteuert wird, - einen Eingangsstapel mit den gespeicherten Adressen der einzuführenden Polygonparameter, gesteuert von der Prüf- und Steuerschaltung, - einen Addierer, der die vom Ausgang des Adreßregisters gelieferte Adresse inkrementiert und zum Adressieren des Bildspeichers die inkrementierten Adressen ausgibt, wobei diese inkrementierten Adressen in den Eingang eines Multiplexers neueingeführt werden, der diese inkrementierten Adressen oder neue Adressen im Eingangsstapel unter der Steuerung der Prüf- und Steuerschaltung wählt, um durch ein neues Polygon das Polygon zu ersetzen, das von der Visualisierungslinie nicht eingefangen werden konnte.
DE86201451T 1985-08-30 1986-08-22 Verarbeitungsgerät zur Beseitigung von verborgenen Seiten für dreidimensionale Bilderzeugung. Expired - Fee Related DE3688665T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR8512925A FR2586838B1 (fr) 1985-08-30 1985-08-30 Processeur d'elimination de faces cachees pour la synthese d'images a trois dimensions

Publications (2)

Publication Number Publication Date
DE3688665D1 DE3688665D1 (de) 1993-08-12
DE3688665T2 true DE3688665T2 (de) 1994-02-03

Family

ID=9322498

Family Applications (1)

Application Number Title Priority Date Filing Date
DE86201451T Expired - Fee Related DE3688665T2 (de) 1985-08-30 1986-08-22 Verarbeitungsgerät zur Beseitigung von verborgenen Seiten für dreidimensionale Bilderzeugung.

Country Status (5)

Country Link
US (1) US4812988A (de)
EP (1) EP0215510B1 (de)
JP (1) JPH0727580B2 (de)
DE (1) DE3688665T2 (de)
FR (1) FR2586838B1 (de)

Families Citing this family (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63271673A (ja) * 1987-04-30 1988-11-09 Toshiba Corp 三次元表示装置
JP2653078B2 (ja) * 1987-05-25 1997-09-10 セイコーエプソン株式会社 画像表示制御装置及びこれを具備する電子機器
JPH0634209B2 (ja) * 1987-07-23 1994-05-02 株式会社日立製作所 表示図形検知方式
US5265214A (en) * 1987-08-28 1993-11-23 Daikin Industries, Ltd. Filling processing apparatus and method
US5084830A (en) * 1987-10-26 1992-01-28 Tektronix, Inc. Method and apparatus for hidden surface removal
US4918626A (en) * 1987-12-09 1990-04-17 Evans & Sutherland Computer Corp. Computer graphics priority system with antialiasing
IL109511A (en) * 1987-12-23 1996-10-16 Cubital Ltd Three-dimensional modelling apparatus
EP0360903B1 (de) * 1988-09-29 1994-01-26 Kabushiki Kaisha Toshiba Steuergerät des die Tiefeninformation enthaltenden Buffers
US5043921A (en) * 1989-10-23 1991-08-27 International Business Machines Corporation High speed Z-buffer control
US5245700A (en) * 1989-11-21 1993-09-14 International Business Machines Corporation Adjustment of z-buffer values for lines on the surface of a polygon
US5276783A (en) * 1989-11-21 1994-01-04 International Business Machines Corporation Tessellating complex polygons in modeling coordinates
EP0449478A3 (en) * 1990-03-29 1992-11-25 Microtime Inc. 3d video special effects system
US5220646A (en) * 1990-04-30 1993-06-15 International Business Machines Corporation Single pass hidden line removal using z-buffers
JPH07120435B2 (ja) * 1990-12-06 1995-12-20 インターナショナル・ビジネス・マシーンズ・コーポレイション 高速zバッファの初期化および更新方法ならびにそのシステム
CA2060975C (en) * 1991-02-25 1998-11-10 Gopalan Ramanujam Scientific visualization system
US5821940A (en) * 1992-08-03 1998-10-13 Ball Corporation Computer graphics vertex index cache system for polygons
US5973700A (en) * 1992-09-16 1999-10-26 Eastman Kodak Company Method and apparatus for optimizing the resolution of images which have an apparent depth
JP2710202B2 (ja) * 1993-03-24 1998-02-10 インターナショナル・ビジネス・マシーンズ・コーポレイション 閉じた輪郭イメージを凸多角形で境界づける方法及びデータ処理装置
GB9316214D0 (en) * 1993-08-05 1993-09-22 Philips Electronics Uk Ltd Image processing
US6116768A (en) * 1993-11-30 2000-09-12 Texas Instruments Incorporated Three input arithmetic logic unit with barrel rotator
US6098163A (en) * 1993-11-30 2000-08-01 Texas Instruments Incorporated Three input arithmetic logic unit with shifter
US5590350A (en) * 1993-11-30 1996-12-31 Texas Instruments Incorporated Three input arithmetic logic unit with mask generator
US5961635A (en) * 1993-11-30 1999-10-05 Texas Instruments Incorporated Three input arithmetic logic unit with barrel rotator and mask generator
US5974539A (en) * 1993-11-30 1999-10-26 Texas Instruments Incorporated Three input arithmetic logic unit with shifter and mask generator
US5651127A (en) * 1994-03-08 1997-07-22 Texas Instruments Incorporated Guided transfers with variable stepping
US5493646A (en) * 1994-03-08 1996-02-20 Texas Instruments Incorporated Pixel block transfer with transparency
US5560030A (en) * 1994-03-08 1996-09-24 Texas Instruments Incorporated Transfer processor with transparency
US5487146A (en) * 1994-03-08 1996-01-23 Texas Instruments Incorporated Plural memory access address generation employing guide table entries forming linked list
WO1997044776A2 (en) * 1996-05-17 1997-11-27 Philips Electronics N.V. Display device
US6618048B1 (en) 1999-10-28 2003-09-09 Nintendo Co., Ltd. 3D graphics rendering system for performing Z value clamping in near-Z range to maximize scene resolution of visually important Z components
US7119813B1 (en) 2000-06-02 2006-10-10 Nintendo Co., Ltd. Variable bit field encoding
US7184059B1 (en) 2000-08-23 2007-02-27 Nintendo Co., Ltd. Graphics system with copy out conversions between embedded frame buffer and main memory
US6980218B1 (en) * 2000-08-23 2005-12-27 Nintendo Co., Ltd. Method and apparatus for efficient generation of texture coordinate displacements for implementing emboss-style bump mapping in a graphics rendering system
US7538772B1 (en) * 2000-08-23 2009-05-26 Nintendo Co., Ltd. Graphics processing system with enhanced memory controller
US6707458B1 (en) 2000-08-23 2004-03-16 Nintendo Co., Ltd. Method and apparatus for texture tiling in a graphics system
US7034828B1 (en) 2000-08-23 2006-04-25 Nintendo Co., Ltd. Recirculating shade tree blender for a graphics system
US6636214B1 (en) 2000-08-23 2003-10-21 Nintendo Co., Ltd. Method and apparatus for dynamically reconfiguring the order of hidden surface processing based on rendering mode
US7576748B2 (en) * 2000-11-28 2009-08-18 Nintendo Co. Ltd. Graphics system with embedded frame butter having reconfigurable pixel formats
US6867781B1 (en) 2000-08-23 2005-03-15 Nintendo Co., Ltd. Graphics pipeline token synchronization
US6937245B1 (en) * 2000-08-23 2005-08-30 Nintendo Co., Ltd. Graphics system with embedded frame buffer having reconfigurable pixel formats
US7002591B1 (en) 2000-08-23 2006-02-21 Nintendo Co., Ltd. Method and apparatus for interleaved processing of direct and indirect texture coordinates in a graphics system
US7061502B1 (en) 2000-08-23 2006-06-13 Nintendo Co., Ltd. Method and apparatus for providing logical combination of N alpha operations within a graphics system
US6700586B1 (en) 2000-08-23 2004-03-02 Nintendo Co., Ltd. Low cost graphics with stitching processing hardware support for skeletal animation
US6811489B1 (en) 2000-08-23 2004-11-02 Nintendo Co., Ltd. Controller interface for a graphics system
US6825851B1 (en) 2000-08-23 2004-11-30 Nintendo Co., Ltd. Method and apparatus for environment-mapped bump-mapping in a graphics system
WO2008073449A2 (en) 2006-12-12 2008-06-19 Evans & Sutherland Computer Corporation System and method for aligning rgb light in a single modulator projector
US8358317B2 (en) 2008-05-23 2013-01-22 Evans & Sutherland Computer Corporation System and method for displaying a planar image on a curved surface
US8702248B1 (en) 2008-06-11 2014-04-22 Evans & Sutherland Computer Corporation Projection method for reducing interpixel gaps on a viewing surface
US8077378B1 (en) 2008-11-12 2011-12-13 Evans & Sutherland Computer Corporation Calibration system and method for light modulation device
US9641826B1 (en) 2011-10-06 2017-05-02 Evans & Sutherland Computer Corporation System and method for displaying distant 3-D stereo on a dome surface

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SU834692A1 (ru) * 1977-10-19 1981-05-30 Институт Автоматики И Электрометриисо Ah Cccp Устройство дл вывода полутоновыхизОбРАжЕНий ТРЕХМЕРНыХ Об'ЕКТОВ НАэКРАНЕ ТЕлЕВизиОННОгО пРиЕМНиКА
US4208719A (en) * 1978-08-10 1980-06-17 The Singer Company Edge smoothing for real-time simulation of a polygon face object system as viewed by a moving observer
US4529978A (en) * 1980-10-27 1985-07-16 Digital Equipment Corporation Method and apparatus for generating graphic and textual images on a raster scan display
US4590465A (en) * 1982-02-18 1986-05-20 Henry Fuchs Graphics display system using logic-enhanced pixel memory cells
US4570233A (en) * 1982-07-01 1986-02-11 The Singer Company Modular digital image generator
US4667190A (en) * 1982-07-30 1987-05-19 Honeywell Inc. Two axis fast access memory
GB8411579D0 (en) * 1984-05-05 1984-06-13 Ibm Graphic display systems
US4758965A (en) * 1985-10-09 1988-07-19 International Business Machines Corporation Polygon fill processor
IL79822A (en) * 1985-12-19 1990-03-19 Gen Electric Method of comprehensive distortion correction for a computer image generation system

Also Published As

Publication number Publication date
US4812988A (en) 1989-03-14
EP0215510A1 (de) 1987-03-25
JPH0727580B2 (ja) 1995-03-29
EP0215510B1 (de) 1993-07-07
JPS6252682A (ja) 1987-03-07
DE3688665D1 (de) 1993-08-12
FR2586838B1 (fr) 1989-07-28
FR2586838A1 (fr) 1987-03-06

Similar Documents

Publication Publication Date Title
DE3688665T2 (de) Verarbeitungsgerät zur Beseitigung von verborgenen Seiten für dreidimensionale Bilderzeugung.
DE3750784T2 (de) Generation eines intrapolierten charakteristischen Wertes zur Anzeige.
DE69130123T2 (de) Anzeigegerät und Verfahren zum Betreiben eines solchen Geräts
DE69811849T2 (de) Verfahren und gerät zur interpolation von attributen bei 3d-grafiken
DE69331031T2 (de) Vorrichtung zur parallelen Bilderzeugung
DE3750803T2 (de) Schattierungsschaltung zur Schattierung mehrerer Polygone, die ein Festkörpermodel einsetzen, und Schattierungsverfahren dafür.
DE69424716T2 (de) Verfahren und Vorrichtung zur adaptiven Steuerung der Texturabbildung
DE60033250T2 (de) System und Verfahren zur Darstellung mit Strahlverfolgung
DE69821848T2 (de) Echt-Zeit PC basiertes Volumendarstellungssystem
DE69032932T2 (de) System und Verfahren zum unverfälschten Polygonenzeichnen
DE68924389T2 (de) Verfahren und Einrichtung zur Anzeige einer Vielzahl von graphischen Bildern.
DE60019516T2 (de) Programmierbarer Aufbau zur Visualisierung von Abtastdaten und geometrischen Daten
DE69132041T2 (de) Dreieckinterpolator
DE3853393T2 (de) Verfahren und Vorrichtung zur zweidimensionalen Bilderstellung.
DE69130132T2 (de) Verfahren zur Erzeugung von Adressen zu texturierten, in RIP Maps gespeicherten graphischen Primitiven
DE69624878T2 (de) Verfahren und Vorrichtung zur Volumendarstellung
DE69122557T2 (de) Bilderzeugung
DE3335162C2 (de) Vorrichtung und Verfahren für graphische Darstellungen mittels Computer
DE69919497T2 (de) Verfahren und Gerät zur Volumendarstellung mit mehreren Tiefenpuffern
DE60109858T2 (de) System zur Ungleichheitsmessung von stereoskopischen Bildern
DE69127915T2 (de) System und Verfahren von Prioritätsfarbabbildung
DE69127516T2 (de) Verfahren und Gerät zur Bilderzeugung
DE3689926T2 (de) Einrichtung zur sequenziellen Bildtransformation.
DE3407983A1 (de) Mehrprozessorrechnersystem zum verarbeiten in einer hierarchischen datenstruktur definierter objektelemente zu einer farbigen abbildung
DE3619420A1 (de) Computer-displayeinrichtung

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: PHILIPS ELECTRONICS N.V., EINDHOVEN, NL

8339 Ceased/non-payment of the annual fee