DE3335162C2 - Vorrichtung und Verfahren für graphische Darstellungen mittels Computer - Google Patents

Vorrichtung und Verfahren für graphische Darstellungen mittels Computer

Info

Publication number
DE3335162C2
DE3335162C2 DE3335162A DE3335162A DE3335162C2 DE 3335162 C2 DE3335162 C2 DE 3335162C2 DE 3335162 A DE3335162 A DE 3335162A DE 3335162 A DE3335162 A DE 3335162A DE 3335162 C2 DE3335162 C2 DE 3335162C2
Authority
DE
Germany
Prior art keywords
display
area
scan line
memory
inversion
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
DE3335162A
Other languages
English (en)
Other versions
DE3335162A1 (de
Inventor
William D Atkinson
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.)
Apple Inc
Original Assignee
Apple Computer Inc
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 Apple Computer Inc filed Critical Apple Computer Inc
Publication of DE3335162A1 publication Critical patent/DE3335162A1/de
Application granted granted Critical
Publication of DE3335162C2 publication Critical patent/DE3335162C2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control 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/39Control of the bit-mapped memory
    • G09G5/393Arrangements for updating the contents of the bit-mapped memory
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/42Control 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
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/10Mixing of images, i.e. displayed pixel being the result of an operation, e.g. adding, on the corresponding input pixels

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)

Description

Die Erfindung betrifft ein Anzeigesystem für Computerda­ ten nach dem Oberbegriff des Anspruchs 1 und ein Verfahren zum Erzeugen und Bearbeiten von graphischen Darstellungen nach dem Oberbegriff des Anspruchs 17.
In der Datenverarbeitungstechnik ist es üblich, Informa­ tionen mittels graphischer Darstellungen mitzuteilen und zu verdeutlichen. Diese Darstellungen können eine Vielzahl von Formen annehmen, wie beispielsweise alphanumerische Zeichen, Funktionsverläufe in cartesischen oder anderen Koordinaten, in Form von wohlbekannten Gegenständen etc. Historisch gesehen, sind Benutzer über ein System diskreter Kommandos mit Rechnern in Wechselwirkung getreten, welche typischer­ weise aus einer Kombination von Begriffen und mathematischen Symbolen gebil­ det sind. Es existiert eine Vielzahl derartiger Systeme, wie beispielsweise die Programmsprachen Fortran, Algol, PL-1, Basic und Cobol, welche eine vorgegebene Folge von Kommandos seitens des Benutzers in eine durch den Rechner ausführbare "Maschinensprache" transformieren.
Es ist aber festzustellen, daß der Benutzer um so leichter mit dem Programmieren und Wechselwirken mit einem Com­ puter vertraut wird, je näher das Wechselwirkungssystem der Denkweise des Benutzers selbst angepaßt ist. Kann der Benutzer Befehle in der gleichen Reihenfolge ein­ geben, die er selbst logisch entwickelt ohne erst die gewünschten Befehle in einen Code oder eine Programm­ sprache zu transformieren, so kann das System wirksamer ausgenutzt werden.
Ein bereits entwickeltes System zur Verringerung der Lern- und Anpassungsschwierigkeiten, welche ein Be­ nutzer überwinden muß, um mit der Wechselwirkung mit einem Computer-System vertraut zu werden, wird häufig als "problemorientiert" oder "Smalltalk" bezeichnet. Der sogenannte "Smalltalk-Ansatz" (also die problem­ orientierte Sprache) besteht hauptsächlich darin, eine Vielzahl codierter Programm-Befehle durch 2-dimensionale graphische Darstellungen bzw. vorformulierte Fragen auf dem Bildschirm zu ersetzen. Erfahrungsgemäß denken Menschen leichter in bildhaften Begriffen und es ist auch einfacher visuelle Informationen aufzunehmen und zu verarbeiten als beispielsweise Sprach-Informationen. Die besondere Art graphischer Wechselwirkung zwischen einem Benutzer und der Vorrichtung hängt vom Anwendungs­ fall ab.
Ein herkömmliches, problemorientiertes Verfahren für die genannte Wechselwirkung zwischen Mensch und Computer sieht vor, daß "Fenster" mit einer Kathodenstrahlröhre (CRT) dargestellt werden, in welchen Kombinationen aus Text und graphischen Darstellungen zur Informationsüber­ tragung benutzt werden. Beispielsweise kann jedes Fenster die Form eines Aktenordners annehmen, wie er beispiels­ weise in Büros Verwendung findet, und dabei andere Ordner überlappen, wobei der "oberste"′ Ordner vollständig sicht­ bar ist und gerade bearbeitbar ist. Der Benutzer kann im Ordner Informationen ergänzen oder entfernen, den Ordner an anderer Stelle neu einordnen etc. Er kann also mit dem Ordner genauso umgehen, wie auch sonst im Büroall­ tag. Durch diese graphische Bild-Repräsentation des vom Benutzer gerade bearbeiteten Gegenstandes und dadurch, daß der Benutzer das Bild im wesentlichen in gleicher Weise bearbeitet und manipuliert wie den tatsächlichen Gegenstand wird die Bedienung des Rechners wesentlich vereinfacht und eine wirkungsvollere Wechselwirkung zwischen Mensch und Maschine erreicht.
Siehe hierzu z. B., D. Robson, "Object-Oriented Software Systems", BYTE, August 1981, Seite 74, Vol. 6, Nr. 8; und L. Tesler, "The Smalltalk Environment", BYTE, August 1981, Seite 90, Vol. 6, Nr. 8.
Es herrscht bei problemorientierten Wechselwirkungs­ systemen ein Bedarf an einer Vielzahl von graphischen Darstellungen, doch ist dazu herkömmlicherweise eine große Speicherkapazität erforderlich, um die graphischen Darstellungen zu speichern und zu manipulieren. In der einfachsten Form kann in einem Datenverarbeitungs- und Speichersystem ein Speicherblock mit jedem Speicher-Bit
("1" oder "0") einem entsprechenden Bildelement auf dem Schirm (Display) zugeordnet sein. Auf diese Weise wird ein insgesamt mit Daten, welche die Form von Bildern und/oder Sprachzeichen annehmen können, gefüllter Bild­ schirm in einem Speicherblock durch Werte "1" (schwarzer Punkt) oder "0" (weißer Punkt) repräsentiert, was kurz als "Bitkarte" bezeichnet wird. Die hierbei verwendete eindeutige Zuordnung zwischen Bitkarte und Kathodenstrahl­ schirm erfordert allerdings eine erhebliche Speicher­ kapazität im Kernspeicher des Rechners. Darüberhinaus er­ fordert die Manipulation eines Bildes oder eines Zeichens, daß fast alle Bits der Bitkarte nach der Modifikation des Bildes auf den neuesten Stand gebracht werden. Dieses Verfahren ist sehr zeitaufwendig und behindert die prak­ tische Verwertbarkeit von auf graphischen Darstellungen beruhenden Wechselwirkungssystemen.
Ein Verfahren, die erforderlichen graphischen Kapazitäten für problemorientierte Wechselwirkungssysteme bereitszu­ stellen, ist das sogenannte "BitBlt" (Bitboundry Block Transfer) (Grenz-Bit-Block-Übertragung) , wie es durch die "Xerox Learning Research Group", Palo Alto Research Center, Palo Alto, Kalifornien entwickelt wurde, siehe D. Ingalls, "The Smalltalk Graphics Kernal", BYTE, Seite 168, August 1981, Vol. 6, Nr. 8. Beim "BitBlt" werden Be­ reiche eingesetzt, welche selbst kleine Bitkarten dar­ stellen und einfache Formen definieren, wie beispiels­ weise einen Pfeil, der durch den Benutzer als "Cursor" (Blinker), Muster etc. eingesetzt werden kann. Das "BitBlt"- Verfahren, welches weiter unten eingehender erläutert werden wird, sieht vor, daß Zeichen aus einer Ursprungs-Bit­ karte, wie beispielsweise einem Schriftspeicher für Zeichen (Lichtsatz) , in eine Bestimmungs-Bitkarte (z. B. einen auf dem Schirm wiederzugebenden Block eines Speichers) mit vor­ gegebenen Koordinaten übertragen werden. Durch einen soge­ nannten "Begrenzerwinkel" ("Clipping Rectangle") , welcher den Bereich der zugänglichen Bestimmungs-Bitkarte be­ grenzt, ist es möglich, den Abschnitt eines größeren Be­ reiches in einem Fenster darzustellen, wobei nur dieser in das Fenster passende Abschnitt übertragen wird. Zusätz­ lich ist eine Vielzahl von Übertragungsoperationen möglich, welche die Kombination eines übertragenen Bildes oder Zei­ chens mit einem existierenden, zuvor in der Bestimmungs-Bitkarte gespeicherten Bild steuern. Allerdings ist das "BitBlt"-Verfahren hinsichtlich der Art der Abbildungen, welche übertragbar und veränderbar sind, beschränkt. Insbe­ sondere ist das "BitBlt"-Verfahren auf die Übertragung rechtwinkeliger Flächen beschränkt. Diese Einschränkung begrenzt die Brauchbarkeit dieses Verfahrens als "graphisches Instrument", da es somit nicht in der Lage ist, Daten auf sich gegenseitig überlappende Fenster u. dgl. zu übertragen. Darüberhinaus sind große Speicherkapazitäten bei dem "BitBlt" -System erforderlich.
Aus der DE-OS 23 11 826 ist ein Rasteranzeigegerät mit einem Display, Speichern und mit den Speichern und dem Display verbundenen Verarbeitungseinrichtungen bekannt. Dieses Rasteranzeigegerät ermöglicht die Koordinierung der gerasterten Abtastung aus dem Anzeigegerät und der Darstel­ lung digitaler Ausgangssignale an bestimmten Positionen der Anzeige.
In der US-PS 3,821,731 wird ein Anzeigesystem für einen rasterabgetasteten Fernsehbildschirm beschrieben. Die Bilder werden von Daten erzeugt, die für jede Abtastzeile bei der zeilenweise Abtastung Bildstart- und -endpunkt definieren.
Aufgabe der Erfindung ist es, die Anforderungen an die Speicherkapazität zur Speicherung der graphischen Daten bei einem Anzeigesystem für Computerdaten zur Darstellung belie­ big geformter Bereiche zu verringern.
Diese Aufgabe wird erfindungsgemäß gelöst durch ein An­ zeigesystem mit den Merkmalen des Anspruchs 1. Verfahrensmä­ ßig wird die Aufgabe gelöst durch die Merkmale des Anspruchs 17.
Durch die vorliegende Erfindung wird eine Vorrichtung bereitgestellt, mittels welcher ein beliebig geformter Bereich definierbar und speicherbar ist, wobei wesentlich weniger Speicherkapazität als bei herkömmlichen Vorrichtun­ gen erforderlich ist. Darüberhinaus wird durch die vorlie­ gende Erfindung eine Vorrichtung bereitgestellt, mittels welcher Bild-Darstellungen wirksam und schnell mittels eines Digital-Computers bearbeitbar sind. Die durch die vorlie­ gende Erfindung bereitgestellte Vorrichtung und das entspre­ chende Verfahren werden höchst vorteilhaft zusammen mit einem digitalen Computer eingesetzt, um eine erhöhte Kapa­ zität für graphische Darstellungen zu erzielen. Diese Tech­ niken ermöglichen die Darstellung und Manipulation einer beliebig definierten Fläche mit Hilfe sogenannter "Inversionspunkte". Ein Inversionspunkt ist definiert als ein Punkt, bei dem die Zustände aller Punkte, deren Koordinaten rechts oder unterhalb des be­ treffenden Punktes liegen, invertiert sind (z. B. binäre Werte "0" werden in binäre Werte "1" und umgekehrt um­ gewandelt) . Ein "Bereich" ist definiert als eine be­ liebige Fläche, welche auch eine Anzahl von Gruppen nicht zusammenhängender Flächen einschließen kann. Auf diese Weise ist jegliche Form, wie beispielsweise die Form eines "L" als ein definierbarer und verarbeitbarer Be­ reich zu verstehen. Durch die Definition eines Satzes von Inversionspunkten für jeden gegebenen Bereich ist es nicht erforderlich, alle Punkte, die diesen Bereich bilden, im Speicher zu speichern, vielmehr müssen nur die Inver­ sionspunkte gespeichert werden.
Gemäß einem typischen Ausführungsbeispiel der vor­ liegenden Erfindung sind Einrichtungen vorgesehen, welche eine Eingabe-Repräsentation eines Bereiches erzeugen, welcher eine beliebige Form oder Fläche aufweisen kann, wobei der Umfang nicht notwendig eine durchgehende Kurve zu sein braucht, sondern auch nicht zusammenhängende Flächen möglich sind. Diese Eingabe-Repräsentation ist höchst vorteilhaft mit einem digitalen Computer einsetz­ bar. Ist die Repräsentation einmal im Computer, so be­ stimmt er die Position der Inversionspunkte, welche zur Definition des Bereiches erforderlich sind und sortiert die Punkte nach den Kriterien "links", "rechts" und "oben" und "unten" entsprechend ihrer Koordinaten in dem Be­ reich. Algorithmus-Einrichtungen sind im Speicher des Rechners vorgesehen, um Bereiche (oder Teile davon) zu übertragen und/oder auf ihnen Operationen auszuführen und um den resultierenden Bereich auf einer geeigneten Einrichtung, wie beispielsweise einer Kathodenstrahl­ röhre (CRT) oder dergleichen sichtbar zu machen.
Eine Abtastzeilenmaske weist einen Einzel-Abtastzeilen-Puffer auf, welcher in Binärform diejenigen Bereiche repräsentiert, welche gerade im Display sind und in der Bestimmungs-Bitkarte gespeichert sind. Die Be­ stimmungs-Bitkarte weist einen Speicherblock auf, in welchem jedes Bit einem Bildpunkt oder dergleichen der Anzeigevorrichtung entspricht. Die Abtastzeilenmaske tastet vertikal abwärts und "schneidet" die existieren­ den Bereiche: in horizontale Zeilen, welche jeweils einer Raster-Zeile des Bildschirmes der Kathodenstrahl­ röhre entsprechen. Ähnlich werden Daten aus der Ur­ sprungs-Bitkarte oder einem Schriftspeicher, beispiels­ weise in Form von Symbol-Zeichen, welche einem Abschnitt der Bestimmungs-Bitkarte zugefügt werden sollen "ge­ schnitten" und in einen horizontalen Abtastlinien-Puffer entsprechend der jeweiligen Raster-Zeile des Bildschirmes eingespeist. Wird eine horizontale Abtast-Zeile aus der Ursprungs-Bitkarte oder dergleichen in die Bestimmungs-Bitkarte überführt, so werden die Inhalte des Ursprungs-Abtastzeilen-Puffers verglichen mit den Inhalten der Ab­ tastzeilenmaske, so daß die Ursprungs-Abtastzeile "mas­ kiert" wird und nur ausgewählte Abschnitte des Ursprungs-Puffers in die Bestimmungsbitkarte überführt werden.
Durch Verwendung einer Vielzahl von Bereichs-Operatoren kann der Vorrang zwischen existierenden und neuen Be­ reichen bestimmt werden. Ein Muster, wie beispielsweise Streifen, Karos oder dergleichen kann einem existierenden Bereich zugefügt werden, Texte können zugefügt werden das Aufrollen eines Textes innerhalb eines Bereiches ist leicht möglich und eine Vielzahl anderer graphischer, Operationen kann ausgeführt werden.
Die resultierende Bestimmungs-Bitkarte wird in Signale umgewandelt, welche sodann der Kathodenstrahlröhre oder einem anderen Display eingegeben werden, womit das Bild in herkömmlicher Weise darstellbar ist:
Nachfolgend sind Ausführungsbeispiele der Erfindung an­ hand der Zeichnung im einzelnen erläutert. Dabei zeigt
Fig. 1 einen Computer, bei welchem die vorliegende Erfindung verwirklicht ist;
Fig. 2 eine typische Anordnung für die Programm-Speicherung im in Fig. 1 gezeigten System;
Fig. 3(a)-(h) die Verwendung der Inversionspunkte zur Definition eines Bereiches;
Fig. 4(a)-(e) Betriebs-Operationen auf Bereichen unter Verwendung der Inversionspunkte ge­ mäß der vorliegenden Erfindung;
Fig. 5 den Vorgang der Konvertierung eines durch Inversionspunkte definierten Bereiches einen Einzelzeilen-Abtastpuffer, welcher einen Bereich vertikal abwärts abtastet;
Fig. 6 symbolisch die "UND"-Operation zwischen zwei Bereichen und Einzelabtast-Zeilen zur gleichen Zeit;
Fig. 7 schematisch den Betrieb einer Bitkarten-Maske zum selektiven Maskieren von Ab­ schnitten eines Ursprungs-Bereiches, der sichtbar gemacht wird;
Fig. 8 schematisch die Benutzung eines Einzel­ zeilen-Abtastpuffers und einer Abtast­ zeilenmaske zur selektiven Maskierung von Abschnitten eines Ursprungs-Bereiches vor seiner Übertragung in die Bestimmungs-Bitkarte und dem Sichtbarmachen;
Fig. 9 das Resultat der Durchführung des Ver­ fahrens gemäß der Erfindung unter Verwendung des Inversionspunkt-Abtastzeilen-Maskensys­ tems.
Im einzelnen ist die folgende Beschreibung in ver­ schiedene Abschnitte unterteilt. Im ersten Abschnitt wird ein allgemeines System zur Erzeugung von Computer-Graphiken behandelt. In nachfolgenden Abschnitten werden Einzelheiten der vorliegenden Erfindung, wie beispielsweise die Definition eines gegebenen Be­ reichs mittels Inversionspunkten, das Sortieren der Inversionspunkte, die Bearbeitung der Inversions­ punkte, die Erzeugung einer Abtastlinien-Maske und die Übertragung der Bereiche etc. behandelt.
Darüberhinaus werden in der nachfolgenden Beschreibung eine Vielzahl spezieller Details näher ausgeführt, wie beispielsweise die algorithmischen Darstellungen, spezielle Zahlen oder Bits etc., um das bessere Ver­ ständnis der Erfindung zu ermöglichen. Dem Fachmann wird allerdings deutlich werden, daß die Erfindung auch ohne diese besonderen Einzelheiten ausführbar ist. Auch werden wohlbekannte Schaltungen und Anordnungen nicht näher beschrieben, um das wesentliche deutlicher werden zu lassen.
Fig. 1 zeigt ein typisches Computer-System zur Erzeugung von Computergraphiken. Der gezeigte Computer 20 weist drei Haupt-Baugruppen auf. Die erste ist die Eingang/Ausgang (I/O)-Schaltungsanordnung 22, welche dazu dient, entsprechend strukturierte Informationen in andere Teile des Computers 20 einzugeben oder aus diesen zu entnehmen. Weitere Bestandteile des Computers 20 sind die zentrale Steuer­ einheit (CPU) 24 und der Speicher 26. Die zwei Letztgenannten sind üblicherweise in Vielzweck-Computern und in fast allen für spezielle Anwendungen ausgelegten Computern zu finden. Die im Computer 20 vorhandenen verschiedenen Baugruppen repräsen­ tieren das genannte breite Spektrum von Datenverarbeitungs­ vorrichtungen.
In Fig. 1 ist weiterhin eine Eingabevorrichtung 30 gezeigt, welche typischerweise als Tastenfeld ausgebildet ist. Es versteht sich jedoch, daß auch andere Eingabevorrichtungen ver­ wendbar sind, wie beispielsweise ein Kartenleser, Magnetband-Leser oder auch andere bekannte Eingabenvorrichtungen (ein­ schließlich anderer Computer). Ein Massenspeicher 32 ist mit dem I/O-Kreis 22 gekoppelt und stellt zusätzliche Speicherkapa­ zität für den Computer 20 bereit. Der Massenspeicher kann andere Programme, Schriftspeicher für vorgegebene Zeichensymbole und dergleichen aufnehmen, wobei es sich beispielsweise um einen Magnet-Speicher oder auch um einen Papierband-Leser handeln kann. Ersichtlich können die im Massenspeicher 32 gespeicherten Daten in bestimmten Fällen auch in herkömmlicher Weise im Speicher 26 des Computers 20 gespeichert sein.
Weiterhin ist ein Display-Monitor dargestellt, welcher da­ zu benutzt wird, die dargestellten Bilder sichtbar zu machen. Bei dem Display-Monitor kann es sich beispielsweise um den Leuchtschirm einer Kathodenstrahlröhre (CRT) handeln. Eine Cursor (Blinker)-Steuerung 36 wird dazu benutzt, Befehlsarten auszuwählen und graphische Daten auszugeben, wie beispielsweise ein be­ sonderes Bild, und bildet ein bequemes Mittel, Informationen in das System einzugeben.
Fig. 2 zeigt eine typische Anordnung der im Speicher 26 der Fig. 1 enthaltenen Haupt-Programme. Insbesondere ist eine Video-Bestimmungs-Bitkarte 38 vorgesehen, welche beim hier beschriebenen, bevorzugten Ausführungsbeispiel eine Speicher­ kapazität von 32 Kilobyte aufweist. Diese Bestimmungs-Bit­ karte repräsentiert den Video-Speicher für das Display 34. Jedes Bit der Bestimmungs-Bitkarte entspricht von oben und links gemessenen Koordinaten eines zugehörigen Bildpunktes auf dem Display. Deshalb kann die Bestimmungs-Bitkarte als 2-dimensionale Reihung von Punkten mit Koordinaten aufge­ fast werden. Es versteht sich, daß bei Verwendung anderer Anzeigeeinrichtungen, wie beispielsweise einem Drucker o. dgl., der Inhalt der Bitkarte 38 die Datenpunkte repräsentieren würde, welche mittels der besonderen Anzeigevorrichtung aus­ gegeben werden. Der Speicher 26 beinhaltet auch Programme 40, welche eine Vielzahl von Abfolgen von Instruktionen re­ präsentieren welche durch die zentrale Steuereinheit CPU ausgeführt werden. Beispielsweise kann das Steuerprogramm in diesem Speicher gespeichert sein, welches die Operationen und Abfolgen verwirklicht, welche hier beschrieben werden sowie auch die Beobachtungs- und Steuerprogramme und die Dis­ ketten-Betriebssysteme.
Die Ursprungs-Bitkarte 42, welche Bereiche, Schriftspeicher, Datenstrukturen, Koordinaten und Zeichen-Symbole aufweisen kann, kann ebenfalls im Speicher 26 gespeichert sein, oder aber auch zeitweise im Massenspeicher 32 gespeichert sein, je nach Anwendung der vorliegenden Erfindung. Darüberhinaus ist Kapazität im Speicher 26 für andere Programme reserviert sowie eine Reserve-Kapazität, welche mit dem Bezugszeichen 44 versehen ist. Bei diesen anderen Programmen kann es sich um verschiedene nützliche Rechen- oder Gebrauchsprogramme handeln.
In der vorliegenden Erfindung werden beliebig definierte Be­ reiche durch "Inversionspunkte" repräsentiert. Zusätzlich wird der Begriff "Bereich" als eine beliebige Fläche de­ finiert, welche auch eine Vielzahl nicht zusammenhängender Flächenabschnitte beliebiger Form oder Zusammensetzung ein­ schließen kann. In Fig. 3a ist ein Inversionspunkt 40 dar­ gestellt. Per Definition ist ein Inversionspunkt ein solcher, bei dem die Zustände aller Punkte mit Koordinaten rechts und unterhalb des Inversionspunktes invertiert sind. Deshalb ist die gesamte Fläche rechts und unterhalb des Punktes 40 dunkel (wie dargestellt), da der Punkt 40 auf einem zuvor weißem Unter­ grund erzeugt wurde. Physikalisch ist das Inversionspunkt-Sys­ tem dadurch bestimmt, daß die Position eines Inversionspunktes mit Hilfe von Koordinaten in der Speicher-Bitkarte beschrieben ist.
Wie in Fig. 3b dargestellt ist, entsteht ein vertikal nicht abgegrenzter Streifen, wenn zwei Inversionspunkte 40 und 42 auf einer Bestimmungs-Bitkarte 38 definiert und anschließend auf dem Monitor 34 angezeigt werden. Durch die Hinzufügung des Punktes 42 auf der Bitkarte werden die Zustände aller Punkte invertiert, die Koordinaten rechts und unterhalb des Punktes aufweisen, wobei die Wirkung des Punktes 40 inner­ halb dieser Fläche aufgehoben wird, so daß der abgedunkelte vertikale Streifen entsteht.
Entsprechend definieren vier Inversionspunkte 40, 42, 44, und 46 ein Quadrat bzw. ein Rechteck, wie es in Fig. 3c gezeigt ist. Wie in den Fig. 3d und 3e dargestellt ist, können auch andere Flächen mittels der Inversionspunkte erzeugt werden, wobei es auch leicht möglich ist, Leerstellen innerhalb einer gewissen Form zu bilden. Zusätzlich wird deutlich, daß jeder gegebene Bereich eine beliebige Anzahl nicht zusammenhängender Flächenabschnitte aufweisen kann, wie es Fig. 3f gezeigt ist, da alle möglichen Formen innerhalb des Bereiches einfach mittels Koordinaten beliebiger Inversionspunkte erzeug­ bar sind.
Auch ist es möglich kreisförmige oder andere nicht-linear abgegrenzte Bereiche zu definieren, indem die Inversions­ punkte richtig positioniert werden. Gemäß Fig. 3g kann zwischen den Punkten "X" und "Y" eine Diagonal-Linie 43 mittels einer Schritt-Reihe von jeweils zwei Inversions­ punkten zwischen den werten "X" und "Y" definiert werden. Zwar wäre eine direkte Diagonal-Linie zwischen den Punkten wünschenswert, doch erlaubt die physikalische Struktur der Rasterzeilen des Displays 34 dies nicht. Jeder Bildpunkt auf dem Schirm-der Kathodenstrahlröhre nimmt eine gewisse Fläche zwischen gegebenen Koordinaten ein, wo herkömmlich ein bestimmter Bildpunkt durch die Koordinate des Netz-Punktes bestimmt ist, welcher oben links von ihm liegt. Deshalb ist eine Stufen-Funktion von Inversionspunkten, welche eine Reihe von horizontalen Zeilenabschnitten bilden, erforderlich, um die Diagonal-Linie angenähert zu erzeugen.
Ist ein gegebener Bereich erst einmal durch seine Inver­ sionspunkte definiert, so müssen im allgemeinen nur diese Inversionspunkte im Speicher 26 gespeichert werden, was einen Unterschied zu Systemen herkömmlicher Technik darstellt, bei denen im wesentlichen alle Punkte gespeichert werden mußten, die ein bestimmtes Bild aufweist. Beim vorliegenden Aus­ führungsbeispiel wird ein Bereich durch einen Benutzer mittels einer Cursor-Steuerung 36 oder einer anderen Eingabein­ richtung in den Computer 20 eingegeben. Die Position der einen bestimmten Bereich definierenden Inversionspunkte wird derart bestimmt, daß horizontale Zeilen-Abschnitte abgetastet werden, welche teilweise Abschnitte des eingegebenen Bereiches bilden. In Fig. 3h sind dies die Zeilenabschnitte 80, 85, 90, 100 und 125. So dann werden Inversionspunkte an denjenigen Koordi­ naten definiert, welche den Endpunkten eines jeden Zeilen­ abschnittes entsprechen, so daß insgesamt der gesamte Be­ reich mittels der Inversionspunkte definiert ist. Vertikale Zeilenabschnitte innerhalb eines Bereiches können ignoriert werden, da sie automatisch (per Definition) durch die zuvor beschriebenen Inversionspunkte erzeugt werden. Die be­ sondere Abfolge von Operationen, welche in einem Computer 20 ausgeführt werden müssen, um die horizontalen Zeilenab­ schnitte zu ermitteln und zu isolieren, werden dem Fachmann klar sein und deshalb nicht weiter ausgeführt. Die In­ versionspunkte eines Bereiches werden gemäß einer Ordnungs­ liste sortiert, und zwar von links nach rechts und von oben nach unten, entsprechend ihren Koordinaten. Beispielsweise würde die Liste der Inversionspunkte des in Fig. 3e dar­ gestellten Bereiches nach dieser Übereinkunft folgende Form annehmen: 54, 56, 58, 60, 62, 64, 66, 68, 70, 72, 74 und 76.
Es wurde gefunden, daß mittels der genannten Regel die Durch­ führung von Operationen auf den beispielsweise in den Fig. 4a-e gezeigten Bereichen vereinfacht wird. Typische Operationen unter Verwendung der geordneten Reihung von Inversionspunkten sind beispielsweise die Be­ stimmung der zugehörigen Punkte sowie das Über­ lappen , die Vereinigung, die Differenzbildung und gegen­ seitige Ausschließung bestimmter Bereiche.
Bei graphischen Operationen ist es häufig erforderlich, zu bestimmen, ob ein gewisser Punkt der Bestimmungs-Bitkarte 38 (welcher dementsprechend auf dem Display angezeigt ist) inner­ halb eines bestimmten Bereiches liegt. Diese Funktion wird im allgemeinen mit "Punktzugehörigkeit" bezeichnet. Bei her­ kömmlichen Systemen erforderte die Bestimmung der Punktzu­ gehörigkeit aufwendige Datenverarbeitungen und Rechnungen. Beispielsweise besteht ein herkömmliches Verfahren zur Be­ stimmung der Punktzugehörigkeit darin, die Winkel zwischen dem fraglichen Punkt und dem fraglichen Bereich zu berechnen und zu summieren. Beträgt die Winkelsumme 360°, so ist die Punktzugehörigkeit zur betreffenden Region festgestellt. Es versteht sich, daß ein solches Verfahren zur Bestimmung der Punktzugehörigkeit eine Vielzahl sich wiederholender Rechnungen erfordert und somit sehr zeitraubend ist. Durch den Einsatz der Inversionspunkte ist es aber möglich, die Punktzugehörigkeit höchst einfach festzustellen. Gemäß Fig. 4a wird nach der Lehre der vor­ liegenden Erfindung die Liste der zuvor geordneten Inver­ sionspunkte, welche den fraglichen Bereich bilden, von oben nach unten abgetastet. Weist ein Inversionspunkt eine Vertikal-Koordinate auf, die größer oder gleich ist als die Vertikal-Koordinate des fraglichen Punktes (Punkt "P" in Fig. 4a), und hat die Horizontal-Koordinate des Inversionspunktes einen Wert, der kleiner ist als der des Punktes "P", so wird be­ züglich einer Variablen festgestellt, ob sie "richtig" oder "falsch" ist (welche ursprünglich z. B. als "falsch" ange­ setzt war). Deshalb wird jedesmal dann, wenn ein Inversions­ punkt oberhalb und links des fraglichen Punktes nachgewiesen wird, der Zustand der wahr/falsch-Variablen umgeschaltet. Ist also nach Abtasten der Liste von Inversionspunkten, welche den Bereich definieren, die Variable auf dem Wert "wahr" (d. h. daß eine ungerade Anzahl von Zustandsänderungen stattgefunden hat), so liegt der fragliche Punkt (z. B. der Punkt "P") in dem bestimmten Bereich. Ist aber die Variable auf dem Wert "falsch" (d. h. daß entweder gar keine Zustandsänderung erfolgt ist oder aber eine gerade Anzahl derselben), so gehört der Punkt nicht zu dem Bereich. Auf diese Weise ist ein schnelles und wirkungs­ volles Verfahren zur Bestimmung der Punktzugehörigkeit unter Verwendung der Inversionspunkte bereitgestellt, was mit den Verfahren nach dem Stand der Technik nicht möglich war.
Durch die Verwendung der geordneten Listen von Inversions­ punkten ist auch ein höchst einfaches Mittel bereitgestellt, um die Inhalte einer jeden Raster-Abtastzeile auf dem Monitor 34 darzustellen. Gemäß Fig. 5 ist ein Abschnitt des Speichers 40 (siehe Fig. 2) als ein Einzellinien-Abtastzeilen-Puffer vorgesehen. Bei diesem Ausführungsbeispiel ist dieser Ab­ tastzeilen-Puffer von ausreichender Kapazität, so daß jede horizontale Zeile von Bildpunkten des Bildschirmes oder einer anderen Anzeigeeinrichtung mit einem Bit im Puffer repräsen­ tiert werden kann. Ein zuvor mittels einer geordneten Liste von Inversionspunkten definierter Bereich kann durch Bit­ zustände innerhalb des Abtastzeilen-Puffers repräsentiert werden. Für jede der in Fig. 5 mit V₀, V₁, V₂ . . . Vn+1 be­ zeichneten horizontalen Zeilen, welche auf dem Bildschirm 34 erscheinen, existieren Inversionspunkte, deren Vertikal-Koordi­ naten der bestimmen Horizontal-Zeile entsprechen (welche gerade abgetastet wird), wobei der Inversionspunkt durch einen ge­ änderten Bit-Zustand mit den entsprechenden Koordinaten in dem Abtastzeilen-Puffer repräsentiert ist (z. B. durch eine "1", wenn die Abtast-Zeile ursprünglich mit den Werten "0" versehen ist). Alle Bits zwischen Paaren von Inversionspunkten in der Abtastlinie 155 werden sodann invertiert, so daß eine richtige Repräsentation des sichtbar zu machenden Bereiches mittels der geordneten Liste von Inversionspunkten erzeugt wird. Auf diese Weise ist es möglich, wie in Fig. 5 gezeigt, durch Abtasten jeder auf dem Display anzuzeigenden Horizontal-Zeile jeglichen Bereich horizontal und sequentiell "in Scheiben zu schneiden", deren Stärke einer Abtastlinie entspricht.
Wie weiter unten näher ausgeführt werden wird, ermöglicht es die Verwendung eines Einzelraster-Abtastzeilen-Puffers, einen Bereich aus einer Ursprungs-Bitkarte 42 in eine Bestimmungs-Bitkarte 38 zu überführen, wobei er entsprechend "maskiert" ist, so daß ein beliebiger Bereich überführbar und bearbeitbar ist, was bei herkömmlichen Verfahren, wie beispielsweise dem "BitBlt" nicht möglich war, welches auf die Übertragung recht­ winkliger Bereiche beschränkt ist.
Darüber hinaus ist festzustellen, daß die Übertragung des Be­ reiches reversibel ist. Ist ein Bereich in einem Einzellinien-Abtastpuffer repräsentiert, so ist es möglich, einen geord­ neten Satz von Inversionspunkten in Umkehrung des vorbeschriebenen Verfahrens dadurch zu definieren, daß Inversions-Zustände auf dem Puffer festgelegt werden, wenn der Puffer einen Bereich von oben (V₁) nach unten (Vn+1) abtastet. Die Position der In­ versionspunkte ist leicht festzustellen, da dieser Ort der­ jenige ist, wo ein Bit-Zustandswechsel ermittelt wird (z. B. eine "1", wobei das nächste Bit den Wert "0" hat). Insbe­ sondere ist es bei diesem Ausführungsbeispiel möglich, den Ort eines Inversionspunktes höchst einfach mittels einer "Exklusiv-ODER- Operation" zwischen den Inhalten der gerade abgetasteten Zeile (z. B. V₃) und den Inhalten der zuvor abgetasteten Zeile (z. B. V₂) bestimmen. Dabei werden die Abschnitte von Be­ reichen, welche beim Durchlaufen aufeinanderfolgender Vertikal-Abtastlinien ohne Wechsel bleiben, insofern ignoriert, als die Gleichförmigkeit des Inhaltes beim Wechsel von einer vertikalen Abtast-Zeile zur nächsten anzeigt, daß keine Inversionspunkte vorliegen. Darüberhinaus sind die horizontalen Positionen von Inversionspunkten dadurch bestimmbar, daß die resultierende "Exklusiv-ODER-Abtastlinie" um 1 Bit nach rechts geschoben wird, wonach eine weitere "Exklusiv-ODER-Operation" durchgeführt wird. War beispielsweise das Ergebnis einer "Exklusiv-ODER- Operation" zwischen den Abtastzeilenpuffern Vn und Vn-1 01110011, so ergibt sich nach Verschieben des Ergebnisses um 1 Bit nach rechts und Ausführung einer anderen "Exklusiv- ODER"-Operation das Resultat:
Dem Fachmann werden die durch einen Computer 20 auszuführenden Befehl bekannt sein, mittels welcher zu bestimmen ist, wo in einem Abtastzeilen-Puffer ein Zustandswechsel existiert.
Die Verwendung eines Einzellinien-Abtastpuffer zur systematischen Repräsentation der Inhalte von Bereichen ermöglicht es, die oben be­ schriebenen Operationen wie Vereinigung, Überlappung etc. leicht durchzuführen. Die in Fig. 4b gezeigte Überlappungs-Operation ergibt beispielsweise eine Inversionspunkt-Repräsentation der schattierten Fläche und wird mittels einer "UND"-Operation bezüglich der beiden überlappenden Bereiche "A" und "B" erreicht. In Fig. 6 ist ein Abtastlinien-Puffer für jeden Bereich "A" und "B" de­ finiert. Für jede horizontale Raster-Zeile des Bildschirmes re­ präsentiert der zugehörige Abtastzeilen-Puffer den Inhalt eines jeden Bereiches in Binär-Form. Die Inhalte eines jeden Abtast­ zeilen-Puffers werden sodann verarbeitet, um die gewünschte Funktion zu erhalten. Im in Fig. 4b gezeigten Fall würden die In­ halte mittels einer "UND"-Operation zusammengeführt, so daß eine zusammengesetzte Abtastzeile entsteht. Ist beispielsweise das Ergebnis für die vertikale Position V₁:
"A" Abtastzeile = 11111100
"B" Abtastzeile = 10010001,
dann wäre die zusammengesetzte Abtastzeile nach einer "UND"-Operation: 10010000. Darüber wird eine identische "UND"-Operation für jede horizontale Zeile Vn durchgeführt, welche jeweils einen Bereich aufweisen. Das Ergebnis dieser Operationen ist eine zusammengesetzte Repräsentation des resultierenden, in Fig. 4b gezeigten Schnittbereiches "C", wobei zeilenweise abge­ tastet wird. Die Position der den schattierten Bereich "C" bil­ denden Inversionspunkte kann so dann mit bekannten Techniken, wie beispielsweise "Exklusiv-ODER"-Operationen, extrahiert werden.
In ähnlicher Weise wird eine "ODER"-Operation zwischen zwei Be­ reichen dazu benutzt, eine Vereinigung gemäß Fig. 4c zu er­ reichen. Um die in Fig. 4d skizzierte "Differenz" zu er­ zielen, müßte zwischen den beiden Bereichen die Operation (nicht "S") UND "R" durchgeführt werden, wodurch der Zu­ stand aller Binär-Werte, welche in dem "S"-Abtastzeilen-Puffer repräsentiert sind, invertiert wird bevor die "UND"-Operation zwischen dem Inhalt und dem Inhalt des "R"-Abtastzeilen-Puffers durchgeführt wird.
Schließlich wird die in Fig. 4e gezeigte "Exklusiv-Oder"-Operation einfach derart erreicht, daß bezüglich der Abtastzeilen-Pufferin­ halte eines jeden Bereiches die "Exklusiv-ODER"-Operation in ent­ sprechender Weise wie oben die "UND"-Operation durchgeführt wird. Es ist dem Fachmann klar, daß durch die Verwendung der ge­ ordneten Reihen von Inversionspunkten die "Exklusiv-ODER"-Opera­ tionen trivial sind. Die Operation ist beispielsweise derart ausführbar, daß die Inversionspunkt-Listen der Bereiche "T" und "U" der Fig 4e zusammengefügt und sortiert werden, wobei jeder Punkt aussortiert wird, der in beiden Bereichen die gleichen Koordinaten aufweist. In anderen Worten: Der Computer 20 behandelt die geordneten Reihen von Inversionspunkten, welche die Bereiche "T" und "U" definieren, als eine lange Liste und sortiert alle Inversionspunkte von links nach rechts und von oben nach unten, wie zuvor beschrieben wurde. Die resultierende Liste von Inversionspunkten repräsentiert einen Bereich, dessen Punkte entweder in dem Bereich "T" oder in dem Bereich "U" liegen, aber nicht in beiden.
Es versteht sich, daß eine Vielzahl anderer Operationen sowie Kombinationen von Operationen unter Verwendung der Inversionspunkt- und Abtastzeilen-Puffer-Methode ausführ­ bar sind, welche bisher nicht möglich waren.
Unter Bezugnahme auf die Fig. 7 wird nunmehr beschrieben, wie unter Benutzung einer Abtastzeilen-Maske ein beliebiger Bereich abgrenzbar ist. Ein zuvor definierter Bereich 160, welcher in eine geordnete Liste von Inversions­ punkten konvertiert ist, wird als "Maske" benutzt, mit welcher alle zusätzlichen auf dem Display erscheinenden Bilder ver­ glichen werden, bevor die Bestimmungs-Bitkarte 38 erstellt wird. Gemäß Fig. 9 wird häufig gewünscht, daß mehrere Bereiche mit einer vorbestimmten Vorrangigkeit überlappen. Wie darge­ stellt, können Ordner-Bögen einander überlappen, wobei Texte auf jedem dargestellten Bogen vorgesehen sind. Auch können be­ liebige andere Bereiche in dieser Art angezeigt werden. Herkömm­ liche Verfahren, wie beispielsweise das "BitBlt"-Verfahren, waren aber beschränkt auf die Abgrenzung rechtwinkliger Bereiche. Dies ist eine erhebliche Einschränkung der Brauchbarkeit dieser her­ kömmlichen Verfahren, welche noch dadurch weiter eingeschränkt wird, daß sie nur in der Lage waren, jeweils das oberste Fenster (z. B. Blatt 210 in Fig. 9) zu bearbeiten.
Wie in Fig. 7 schematisch gezeigt ist, werden andere Bereiche, wie beispielsweise Muster oder Zeichen, mit der Bitkarten-"Maske" existierender Bereiche zeilenweise verglichen, welche gerade angezeigt sind. Wie unten näher ausgeführt werden wird, ist es möglich, durch Definition von Bereichs-Operatoren verschiedene Maskierungs-Vorrangigkeiten zu bestimmen. Auf diese Weise ist es möglich, Muster und auch Schriftzeichen oder andere Zeichen­ symbole in einem beliebigen Bereich unterzubringen. Die "Bereichs-Begrenzung" wird gemäß den Bereichs-Operatoren derart durch­ geführt, daß Abschnitte sich überlappender Bereiche selektiv an­ gezeigt werden.
Entsprechend Fig. 8 wird jede Ursprungs-Bitkarte 42, welche beispielsweise ein Bild, ein Zeichen, ein Schriftzeichen oder dergleichen enthalten kann, welche auf dem Bildschirm gezeigt werden sollen, "in Scheiben geschnitten" und entsprechend den obigen Ausführungen in einen Einzellinien-Abtastpuffer überführt.
Auf diese Weise wird jeder anzuzeigende Bereich mittels eines Einzellinien-Abtastpuffer repräsentiert, welcher horizontal die Ursprungs-Bitkarte 42 abtastet und eine Binär-Repräsentation des Ursprungs-Bereiches durch die richtige Anordnung der Inversionspunkt-Positionen entlang dem Puffer erzeugt.
Die gerade, auf dem Display erscheinenden Bereiche bilden einen Bitkarten-Masken-Bereich, mit welchem die neu auf dem Bildschirm anzuzeigenden Bereiche verglichen werden. Genau wie die neu hinzuzufügenden Ursprungsbereiche werden auch die existierenden, angezeigten Bereiche in eine Einzel-Linien-Abtastmaske transformiert, welche die Inhalte des Bestimmungs­ bereiches in binärer Form repräsentiert. In Abhängigkeit von der gewählten Übertragungsart wird jede Abtastzeile des neuen Bereiches selektiv auf die Bestimmungs-Bitkarte 38 überführt und auf dem Bildschirm 24 gezeigt.
Die gewählte Übertragungsart ist eine Funktion des gewünschten Ergebnisses. Bereichsoperatoren schließen die Funktionen ODER, UND, Exklusiv-ODER, NEIN und jegliche Kombination davon ein. Sind die Werte der gerade bearbeiteten Abtastzeilenmaske für die Zeile V₁ auf dem Bildschirm 01101010 und des gerade bearbeiteten Ursprungs-Abtastzeilen-Puffers für V₁ 01100010 so stellt sich das nach einer "UND"-Operation auf dem Bild­ schirm 34 erzeugte Resultat wie folgt da:
Somit werden nicht alle Abschnitte des neuen Ursprungs-Be­ reichs auf dem Display erscheinen, so daß er in Abhängigkeit vom gewählten Übertragungsoperator "abgeschnitten" ist: Es sei hinzugefügt, daß die im einzelnen vorliegende Form der be­ arbeiteten Bereiche keinen Einfluß auf das Verfahren hat. Mittels der Inversionspunkte und der Einzel­ linien-Abtastpuffer ist es möglich, einen beliebigen Bereich zu definieren, zu maskieren und zu übertragen.
Beim dargestellten Ausführungsbeispiel sind drei getrennte,, Abtastzeilen-Maskenpuffer vorgesehen, mit welchen ein neuer Ursprungs-Bereich verglichen wird. Eine "Benutzer-Bereich"-Maske enthält den gerade auf dem Display gezeigten Bereich, welchen der neu hinzukommende Bereich, soweit er übertragen wird, beeinflußt. Eine "Sichtbereichs"-Maske ist definiert als der sichtbare Abschnitt eines gerade auf dem Display darge­ stellten Bereiches (z. B. Blatt 200 in Fig. 9). Der "Abschneide­ bereich" weist den sichtbaren Abschnitt des Benutzer-Bereichs auf, mit welchem der neue Ursprungs-Bereich beschnitten wird, so daß nur ein Abschnitt des Ursprungs-Bereiches übertragen wird. Somit passiert ein neuer Ursprungs-Bereich, der von der Ursprungs-Bitkarte 42 auf die Bestimmungs-Bitkarte 38 über­ tragen wird, ein Filter, das drei Abtastzeilen-Maskenpuffern entspricht. Dabei wird jede Abtastzeilenmaske mit einer anderen über eine "UND"-Operation verbunden und die zusammengefügte Ab­ tastzeilen-Maske wird sodann dazu verwendet, die neuen Bereiche zu maskieren.
In Fig. 9 ist ein Beispiel eines auf dem Bildschirm 34 ange­ zeigten Ergebnisses dargestellt. Der Bereich 200 wurde ursprünglich durch eine Bedienungsperson definiert und im Speicher 26 mit einer geordneten Liste von Inversionspunkten gespeichert. Durch die Bestimmung eines geeigneten Bereichs-Operators (wie oben beschrieben) wurden Bereiche 210 und 240 auf dem Display dargestellt, so daß es nun­ mehr so scheint, als läge der Bereich 200 zwischen den Bereichen 210 und 240. Entsprechend ist auf jedem Blatt ein Text vor­ gesehen und die Bereichsbegrenzung unter Verwendung der oben­ beschriebenen Abtastzeilen-Maskierungsmethode gewährleistet, daß nur die Abschnitte eines jeden Bereiches auf dem Dis­ play erscheinen, welche auch bei Verwendung von gegenständ­ lichen Blättern sichtbar wären.
Zwar bezieht sich das zuvor beschriebene Ausführungsbeispiel auf eine Binär-Darstellung auf dem Bildschirm 34, welche des­ halb nur die Werte schwarz und weiß aufweist, doch ist dem Fachmann klar, daß auch für Farbbilder eine entsprechende In­ versionspunkt- und Abtastzeilen-Maskierung möglich ist. Um beispielsweise die Farben Rot, Grün und Blau zu erzeugen, sind drei Inversionspunkt-Repräsentationen für einen Bereich ver­ wendbar, wobei jeder einer Farbe entspricht. Die Existenz eines Inversionspunktes in einem Farb-Bereich kann also selektiv einen bestimmten Farb-Strahl in einer Farb-Fernsehröhre aktivieren. Entsprechend können unterschiedliche Farben durch die ent­ sprechende Kombination dreier Inversionspunkt-Repräsentationen für jeden im Speicher gespeicherten Bereich erhalten werden.
Zur Durchführung der zuvor beschriebenen Verfahren ist keine besondere Programmsprache angegeben worden. Dies ergibt sich teilweise daraus, daß nicht alle Programmsprachen jedermann zugänglich sind. Jeder Benutzer eines bestimmten Computers wird eine bestimmte Programmsprache beherrschen, die seinen persönlichen Bedürfnissen entspricht. Es hat sich gezeigt, daß eine Assemblersprache besonders geeignet ist, welche einen Objektcode bereitstellt, der von der Maschine ausführbar ist.
Da die Erfindung mit unterschiedlichen Computer- und Monitor­ systemen ausführbar ist, welche jeweils unterschiedliche Bau­ gruppen aufweisen, sind keine detaillierten Programme aufgelistet. Die angegebenen Verfahrensschritte geben dem Fachmann unmittel­ bar die Möglichkeit, die Erfindung gemäß seinen besonderen Bedürfnissen auszuführen.
Es werden ein höchst vorteilhaft mit einem Digital-Computer einsetz­ bares Verfahren und eine Vorrichtung zur Durchführung dieses Verfahrens vorgestellt. Die Verwendung von Inversionspunkten und Abtastzeilen-Maskierungen ermöglicht es, einen beliebigen Bereich mit größerer Geschwindigkeit als mit, bekannten Verfahren zu definieren, zu manipulieren und zu übertragen.
Die vorliegende Erfindung wird anhand der in den Fig. 1-9 dargestellten Ausführungsbeispiele erläutert.
Die vorliegende Erfindung ist überall dort einsetzbar, wo graphische Darstellungen auf einem Bildschirm oder einer anderen Anzeigeeinrichtung erwünscht sind.

Claims (35)

1. Anzeigesystem für Computerdaten mit einem Display (34), das eine Vielzahl von Bildelementen aufweist, die selektiv ak­ tivierbar sind und denen orthogonale Koordinaten zugeordnet werden können, einem Speicher (26) und einer mit dem Speicher gekoppelten Verarbeitungseinrichtung (22, 24) zum Aktivieren der Bildelemente, dadurch gekennzeichnet,
daß der Speicher (26) zur Speicherung mehrerer, jeweils durch die Koordinaten eines Bildelementes gebildeter Inversi­ onspunkte (40, 42, 44-76) vorgesehen ist, die einen anzuzei­ genden Bereich definieren
daß die Koordinaten jedes Inversionspunktes zwei orthogo­ nale Linien definieren, die vom zugehörigen Inversionspunkt ausgehen, in Richtung nachfolgend zu aktivierender Bildelemente verlaufen und zwei orthogonale Begrenzungslinien einer Kon­ trast-Fläche bilden,
daß ein anzuzeigender Bereich mit einer Mehrzahl von Inver­ sionspunkten dadurch auf dem Display (34) zur Anzeige bringbar ist, daß die den Bereich einschließenden, den gespeicherten Inversionspunkten entsprechenden Bildelemente durch die Verarbeitungseinrichtung (22, 24) aktiviert und die zugehörigen Kontrast-Flächen erzeugt werden,
wobei der Zustand der der jeweiligen Kontrast-Fläche zuge­ ordneten Bildelemente eine Funktion der Koordinaten der zuvor angezeigten Inversionspunkte ist.
2. Anzeigesystem nach Anspruch 1, dadurch gekennzeichnet, daß die Verarbeitungseinrichtung (22, 24) eine Leseeinrichtung aufweist, mittels welcher die Inversionspunkte in der Reihen­ folge aus dem Speicher (26) ablesbar sind, in der die zugehöri­ gen Bildelemente auf dem Display abgetastet werden.
3. Anzeigesystem nach Anspruch 2, dadurch gekennzeichnet, daß die Verarbeitungseinrichtung (22, 24) eine Sortier-Einrich­ tung aufweist, mittels welcher die Inversionspunkte in eine ge­ ordnete Reihenfolge entsprechend einer vorgegebenen Regel sor­ tierbar sind, wobei die so geordnete Reihe von Inversionspunk­ ten im Speicher (26) gespeichert wird.
4. Anzeigesystem nach Anspruch 2 oder 3, dadurch gekenn­ zeichnet, daß eine Eingabe-Einrichtung (30) vorgesehen ist, welche mit der Verarbeitungseinrichtung (22, 24) derart gekop­ pelt ist, daß der anzuzeigende Bereich in den Speicher (26) eingebbar ist.
5. Anzeigesystem nach einem der Ansprüche 2 bis 4, dadurch gekennzeichnet, daß die Verarbeitungseinrichtung (22, 24) wei­ terhin Einrichtungen zur Bestimmung des Ortes der Inversions­ punkte aufweist, um die Koordinaten der den eingegebenen anzu­ zeigenden Bereich definierenden Inversionspunkte zu bestimmen.
6. Anzeigesystem nach Anspruch 5, dadurch gekennzeichnet, daß die Einrichtungen zur Bestimmung des Ortes der Inversions­ punkte eine einen Abschnitt eines eingegebenen anzuzeigenden Bereiches bildende Diagonal-Linie in Form einer Vielzahl von Inversionspunkt-Paaren darstellt, welche eine Serie von hori­ zontalen Zeilen-Segmenten bilden, die einen vertikalen Abstand zueinander einnehmen.
7. Anzeigesystem nach einem der Ansprüche 2 bis 5, dadurch gekennzeichnet, daß die Verarbeitungs-Einrichtung (22, 24) wei­ terhin Logik-Elemente aufweist, um logische Operationen zwi­ schen den geordneten Reihen von Inversionspunkten auszuführen, welche zumindest zwei anzuzeigende Bereiche definieren.
8. Anzeigesystem nach Anspruch 7, dadurch gekennzeichnet, daß die logischen Operationen die Funktionen "UND", "ODER", "NEIN" und "EXKLUSIV ODER" umfassen.
9. Anzeigesystem nach einem der Ansprüche 2 bis 7, dadurch gekennzeichnet, daß die Lese-Einrichtung aus einer Bestimmungs-Bitkarte (38) im Speicher (26) liest, welche eine Vielzahl von Inversionspunkten enthält, die gerade auf dem Display (34) an­ gezeigte Bereiche repräsentiert.
10. Anzeigesystem nach Anspruch 9, dadurch gekennzeichnet, daß im Speicher (26) zumindest eine Ursprungs-Bitkarte (42) vorgesehen ist, welche eine Vielzahl von Inversionspunkten ent­ hält, die anzuzeigende Bereiche repräsentiert, von denen zumin­ dest ein Teil zur Bestimmungs-Bitkarte (38) übertragbar ist.
11. Anzeigesystem nach Anspruch 10, dadurch gekennzeichnet, daß im Speicher (26) zumindest ein Abtastzeilen-Puffer defi­ niert ist, welcher eine ausreichende Kapazität aufweist, um mit einer entsprechenden Bit-Zahl alle Bildelemente zu repräsentie­ ren, welche entlang einer Abtast-Zeile des Displays angeordnet sind.
12. Anzeigesystem nach Anspruch 10 oder 11, dadurch gekenn­ zeichnet, daß die Lese-Einrichtung sequentiell die Inversions­ punkte aus der Ursprungs-Bitkarte (42) liest und eine Repräsen­ tation des anzuzeigenden Bereiches im Abtastzeilen-Puffer er­ zeugt, wobei eine Abtastung des anzuzeigenden Bereiches in der Ursprungs-Bitkarte (42) erfolgt, welche jeweils einer Abtast­ zeile im Display (34) entspricht.
13. Anzeigesystem nach Anspruch 12, dadurch gekennzeichnet, daß im Speicher (26) zumindest ein Abtastzeilen-Maskierungspuf­ fer vorgesehen ist, welcher eine sequentielle Abtastung der Be­ stimmungs-Bitkarte (38) ermöglicht, so daß der Inhalt des Ab­ tastzeilen-Maskierungspuffers einen in der Bestimmungs-Bitkarte (38) gespeicherten anzuzeigenden Bereich in derjenigen Reihen­ folge repräsentiert, in welcher er durch das Display (34) abge­ tastet wird.
14. Anzeigesystem nach Anspruch 13, dadurch gekennzeichnet, daß Einrichtungen zum Vergleichen der Inhalte des Abtastzeilen-Maskierungspuffers und des Abtastzeilen-Puffers vorgesehen sind, so daß vor der Übertragung der Inhalte des Abtastzeilen-Puffers aus der ursprungs-Bitkarte (42) in die Bestimmungs-Bit­ karte (38) zu Anzeigezwecken die Inhalte des Abtastzeilen-Puf­ fers mit den Inhalten des Abtastzeilen-Maskierungspuffers für jede Abtastzeilen-Position des Displays (34) verglichen wird.
15. Anzeigesystem nach Anspruch 14, dadurch gekennzeichnet, daß Einrichtungen zum Steuern der Vorrangigkeit vorgesehen sind, um eine durch den Benutzer vorgegebene Priorität zwischen den Inhalten des Abtastzeilen-Maskierungspuffers und des Ab­ tastzeilen-Puffers zur Verfügung zu stellen, welche sich aus dem Vergleich mittels der Einrichtungen zum Vergleichen ergibt, und um diejenigen Teile des Abtastzeilen-Puffers in die Bestim­ mungs-Bitkarte (38) für die Anzeige zu übertragen, welche Vor­ rang haben.
16. Anzeigesystem nach Anspruch 15, dadurch gekennzeichnet, daß jeder in den Speicher (26) eingegebene anzuzeigende Bereich durch zumindest zwei Inversionspunkte definiert ist, welche gleiche Koordinaten in unterschiedlichen Bitkarten aufweisen, wobei jeder Inversionspunkt einer unterschiedlichen Farbe ent­ spricht, die auf dem Display (34) erscheinen soll.
17. Verfahren zum Erzeugen und Bearbeiten von graphischen Darstellungen bei einem Anzeigesystem für Computerdaten mit einem Display, welches eine Vielzahl von Bildelementen auf­ weist, die selektiv aktivierbar sind und denen orthogonale Koordinaten zugeordnet werden können, einem Speicher und einer mit dem Speicher gekoppelten Verarbeitungseinrichtung zum Aktivieren der Bildelemente, dadurch gekennzeichnet,
daß in den Speicher mehrere, jeweils durch die Koordinaten eines Bildelementes gebildete Inversionspunkte eingegeben werden, die einen anzuzeigenden Bereich definieren, wobei die Koordinaten jedes Inversionspunktes zwei orthogonale Linien definieren, die vom zugehörigen Inversionspunkt ausgehen, in Richtung nachfolgend zu aktivierender Bildelemente verlaufen und zwei orthogonale Begrenzungslinien einer Kontrast-Fläche bilden,
daß ein anzuzeigender Bereich mit einer Mehrzahl von Inver­ sionspunkten dadurch auf dem Display angezeigt wird, daß die den Bereich einschließenden, den gespeicherten Inversions­ punkten entsprechenden Bildelemente durch die Verarbeitungs­ einrichtung aktiviert werden, und
daß die zugehörigen Kontrast-Flächen auf dem Display er­ zeugt werden, wobei der Zustand der der jeweiligen Kontrast-Fläche zugeordneten Bildelemente von den Koordinaten der zuvor angezeigten Inversionspunkte abhängig gemacht wird.
18. Verfahren nach Anspruch 17, dadurch gekennzeichnet, daß ferner die den Bereich definierenden Inversionspunkte identifi­ ziert und im Speicher gespeichert werden.
19. Verfahren nach Anspruch 18, dadurch gekennzeichnet, daß die den Bereich definierenden Inversionspunkte aus dem Speicher in derjenigen Reihenfolge ausgelesen werden, in welcher sie auf dem Display abgetastet werden.
20. Verfahren nach Anspruch 19, dadurch gekennzeichnet, daß beim Speichern die Inversionspunkte nach einer vorgegebenen Re­ gel in einer Reihenfolge sortiert werden.
21. Verfahren nach Anspruch 20, dadurch gekennzeichnet, daß die Sortier-Regel besagt, daß die Inversionspunkte ihren Koor­ dinaten entsprechend sortiert werden, so daß sie von links nach rechts und von oben nach unten sortiert sind.
22. Verfahren nach einem der Ansprüche 18 bis 21, dadurch gekennzeichnet, daß bei der Identifizierung eine Diagonal-Linie des anzuzeigenden Bereichs aus einer Vielzahl von Inversions­ punkt-Paaren gebildet wird, welche eine Serie von horizontalen Zeilen-Segmenten bilden, die einen vertikalen Abstand zueinan­ der einnehmen.
23. Verfahren nach Anspruch 22, dadurch gekennzeichnet, daß ein Abtastzeilen-Puffer in dem Speicher geschaffen wird und daß eine Lese-Einrichtung sequentiell eine Repräsentation des anzu­ zeigenden Bereiches in dem Abtastzeilen-Puffer erzeugt, welche jeweils einer Abtast-Zeile des Displays entspricht.
24. Verfahren nach Anspruch 23, dadurch gekennzeichnet, daß im Speicher ein Abtastzeilen-Maskierungspuffer vorgesehen wird, welcher sequentiell eine Repräsentation eines anzuzeigenden Be­ reiches derart bildet, daß der Inhalt des Abtastzeilen-Maskie­ rungspuffers jeweils einer Abtastzeile des Displays ent­ spricht.
25. Verfahren nach Anspruch 24, dadurch gekennzeichnet, daß die Inhalte des Abtastzeilen-Puffers mit den Inhalten des Ab­ tastzeilen-Maskierungspuffers verglichen werden.
26. Verfahren nach Anspruch 25, dadurch gekennzeichnet, daß eine vorbestimmte Rangfolge zwischen den Inhalten des Abtast­ zeilen-Puffers und des Abtastzeilen-Maskierungspuffers derart festgelegt wird, daß nur ausgewählte Anteile des Inhaltes des Abtastzeilen-Puffers auf dem Display erscheinen.
27. Verfahren, insbesondere nach einem der Ansprüche 17 bis 26, dadurch gekennzeichnet, daß zum selektiven Übertragen von Daten aus einem ersten Ort im Speicher zu einem zweiten Ort in diesem Speicher in dem Speicher ein Einzelzeilen-Puffer defi­ niert wird, welcher die Daten des ersten Ortes sequentiell re­ präsentiert; ein Einzelzeilen-Maskierungspuffer in dem Speicher definiert wird, welcher sequentiell Daten des zweiten Ortes re­ präsentiert; die Inhalte des Einzelzeilen-Puffers mit den In­ halten des Einzelzeilen-Maskierungspuffers vor der Übertragung der Inhalte des Einzelzeilen-Puffers zum zweiten Ort miteinan­ der verglichen werden und eine Rangfolge zwischen den Inhalten des Einzelzeilen-Puffers und des Einzelzeilen-Maskierungspuf­ fers derart vorgegeben wird, daß nur ausgewählte Daten aus dem Einzelzeilen-Puffer Vorrang haben und zum zweiten Ort übertra­ gen werden; so daß Daten selektiv vom ersten zum zweiten Ort übertragen werden.
28. Verfahren nach Anspruch 27, dadurch gekennzeichnet, daß der zweite Ort eine Vielzahl von Bits aufweist, die jeweils ei­ nem Bildelement des Displays entsprechen.
29. Verfahren nach Anspruch 28, dadurch gekennzeichnet, daß die Daten des zweiten Ortes auf dem Display angezeigt werden.
30. Verfahren nach Anspruch 29, dadurch gekennzeichnet, daß der Einzelzeilen-Puffer die Daten sequentiell am ersten Ort in derjenigen Reihenfolge repräsentiert, in welcher sie auf dem Display angezeigt werden.
31. Verfahren nach Anspruch 30, dadurch gekennzeichnet, daß der Einzelzeilen-Maskierungspuffer sequentiell Daten an dem zweiten Ort in derjenigen Reihenfolge repräsentiert, in welcher sie auf dem Display angezeigt werden.
32. Verfahren nach Anspruch 31, dadurch gekennzeichnet, daß die Daten an jedem der beiden Orte repräsentativ für zumindest einen anzuzeigenden Bereich sind, welcher eine Vielzahl von In­ versionspunkten aufweist, deren Koordinaten jeweils einem Bild­ element des Displays entsprechen, wobei jeder Inversionspunkt eine durch zwei zueinander senkrecht stehende, sich vom Bilde­ lement wegerstreckende Linien begrenzte Kontrast-Fläche defi­ niert.
33. Verfahren nach Anspruch 32, dadurch gekennzeichnet, daß die Orte der den anzuzeigenden Bereich definierenden Inversi­ onspunkte dadurch bestimmt werden, daß die im anzuzeigenden Be­ reich enthaltenen horizontalen Linien-Segmente erfaßt werden und daß Inversionspunkte definiert werden, deren Koordinaten den Endpunkten der Linien-Segmente entsprechen.
34. Verfahren nach Anspruch 33, dadurch gekennzeichnet, daß die den anzuzeigenden Bereich definierenden Inversionspunkte nach einer vorgegebenen Regel sortiert werden.
35. Verfahren nach Anspruch 34 dadurch gekennzeichnet, daß bestimmt wird, ob ein bestimmter Punkt innerhalb des anzuzei­ genden Bereiches liegt, der definiert ist durch eine geordnete Reihe von Inversionspunkten, die entsprechend ihren Koordinaten von links nach rechts und von oben nach unten sortiert sind; wobei zumindest ein Kennzeichenbit in dem Speicher definiert wird, welches anfänglich in einen ersten Zustand gesetzt wird; die geordnete Reihe von Inversionspunkten abgetastet wird, wo­ bei das Kennzeichenbit jedesmal dann umgeschaltet wird, wenn ein Inversionspunkt der Reihe eine Vertikal-Koordinate, die größer oder gleich der Vertikal-Koordinate des bestimmten Punk­ tes ist, und eine Horizontal-Koordinate, die kleiner als die des bestimmten Punktes ist, aufweist; und der Zustand des Kenn­ zeichenbits festgestellt wird.
DE3335162A 1982-09-30 1983-09-28 Vorrichtung und Verfahren für graphische Darstellungen mittels Computer Expired - Fee Related DE3335162C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US06/428,635 US4622545A (en) 1982-09-30 1982-09-30 Method and apparatus for image compression and manipulation

Publications (2)

Publication Number Publication Date
DE3335162A1 DE3335162A1 (de) 1984-04-05
DE3335162C2 true DE3335162C2 (de) 1996-01-11

Family

ID=23699738

Family Applications (1)

Application Number Title Priority Date Filing Date
DE3335162A Expired - Fee Related DE3335162C2 (de) 1982-09-30 1983-09-28 Vorrichtung und Verfahren für graphische Darstellungen mittels Computer

Country Status (12)

Country Link
US (1) US4622545A (de)
JP (1) JPS5985573A (de)
AU (2) AU558873B2 (de)
CA (1) CA1213085A (de)
DE (1) DE3335162C2 (de)
FR (1) FR2534400B1 (de)
GB (2) GB2128459B (de)
HK (2) HK99087A (de)
IE (1) IE54823B1 (de)
IL (1) IL69793A (de)
IT (1) IT1166974B (de)
SG (1) SG46187G (de)

Families Citing this family (143)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6336180B1 (en) 1997-04-30 2002-01-01 Canon Kabushiki Kaisha Method, apparatus and system for managing virtual memory with virtual-physical mapping
US4771275A (en) * 1983-11-16 1988-09-13 Eugene Sanders Method and apparatus for assigning color values to bit map memory display locations
GB8411579D0 (en) * 1984-05-05 1984-06-13 Ibm Graphic display systems
JPS613194A (ja) * 1984-06-15 1986-01-09 株式会社東芝 画像表示装置
DE3506638A1 (de) * 1985-02-26 1986-09-04 F.H.-Gottfeld Gesellschaft für zerstörungsfreie Werkstoffprüfung mbH, 5000 Köln Verfahren und vorrichtung zur zerstoerungsfreien pruefung von grossflaechigen pruefobjekten
JPS6273385A (ja) * 1985-09-27 1987-04-04 Toshiba Corp 境界検出対象領域指示回路
US4703321A (en) * 1985-09-30 1987-10-27 International Business Machines Corporation Method for editing a graphic object in an interactive draw graphic system
JPS6282472A (ja) * 1985-10-07 1987-04-15 Canon Inc 画像処理方法
JPS62192878A (ja) * 1986-02-20 1987-08-24 Nippon Gakki Seizo Kk 多角形の塗りつぶし方法
JPS63282790A (ja) * 1987-02-14 1988-11-18 株式会社リコー 表示制御装置
US4845640A (en) * 1987-03-11 1989-07-04 Megascan Technology, Inc. High-speed dual mode graphics memory
US5033105A (en) * 1987-08-11 1991-07-16 Apple Computer Video compression algorithm
US5262761A (en) * 1987-09-08 1993-11-16 Intelligent Micro Systems, Inc. Displaying hierarchical tree-like designs in windows
US5040130A (en) * 1988-09-20 1991-08-13 International Business Machines Corporation Computer graphics boundary--defined area clippping and extraneous edge deletion method
US5261032A (en) * 1988-10-03 1993-11-09 Robert Rocchetti Method for manipulation rectilinearly defined segmnts to form image shapes
AU624137B2 (en) * 1988-10-03 1992-06-04 Sun Microsystems, Inc. Method and apparatus for image manipulation
US4989132A (en) * 1988-10-24 1991-01-29 Eastman Kodak Company Object-oriented, logic, and database programming tool with garbage collection
CA1326563C (en) * 1989-03-15 1994-01-25 Anthony Hoeber Method and apparatus for selecting and executing defaults in a window based display system
US5276795A (en) * 1989-03-15 1994-01-04 Sun Microsystems, Inc. Method and apparatus for selecting and executing defaults in a window based display system
US5155806A (en) * 1989-03-15 1992-10-13 Sun Microsystems, Inc. Method and apparatus for displaying context sensitive help information on a display
US5157768A (en) * 1989-03-15 1992-10-20 Sun Microsystems, Inc. Method and apparatus for displaying context sensitive help information on a display
US5243697A (en) * 1989-03-15 1993-09-07 Sun Microsystems, Inc. Method and apparatus for selecting button functions and retaining selected options on a display
US5230063A (en) * 1989-03-15 1993-07-20 Sun Microsystems, Inc. Method and apparatus for selecting button function and retaining selected optics on a display
JP3026342B2 (ja) * 1989-03-20 2000-03-27 株式会社日立製作所 図形描画方法及び図形処理装置
JP2845995B2 (ja) * 1989-10-27 1999-01-13 株式会社日立製作所 領域抽出手法
US5227863A (en) * 1989-11-14 1993-07-13 Intelligent Resources Integrated Systems, Inc. Programmable digital video processing system
US5327243A (en) * 1989-12-05 1994-07-05 Rasterops Corporation Real time video converter
US5319395A (en) * 1990-05-16 1994-06-07 International Business Machines Corporation Pixel depth converter for a computer video display
US5379372A (en) * 1990-09-13 1995-01-03 Wu; William C. Apparatus and method for designing a form structure using column and row rules
US5247589A (en) * 1990-09-26 1993-09-21 Radius Inc. Method for encoding color images
US5070532A (en) * 1990-09-26 1991-12-03 Radius Inc. Method for encoding color images
US5148154A (en) 1990-12-04 1992-09-15 Sony Corporation Of America Multi-dimensional user interface
CA2077271C (en) * 1991-12-13 1998-07-28 David J. Craft Method and apparatus for compressing data
US5396228A (en) * 1992-01-16 1995-03-07 Mobile Telecommunications Technologies Methods and apparatus for compressing and decompressing paging data
US5307451A (en) * 1992-05-12 1994-04-26 Apple Computer, Inc. Method and apparatus for generating and manipulating graphical data for display on a computer output device
EP0605945B1 (de) 1992-12-15 1997-12-29 Sun Microsystems, Inc. Darstellung von Informationen in einem Anzeigesystem mit transparenten Fenstern
EP0609030B1 (de) * 1993-01-26 1999-06-09 Sun Microsystems, Inc. Verfahren und Gerät zum Informationsanschauen in einer Rechnerdatenbank
US5550967A (en) * 1993-01-27 1996-08-27 Apple Computer, Inc. Method and apparatus for generating and displaying visual cues on a graphic user interface
US5488685A (en) * 1993-01-27 1996-01-30 Apple Computer, Inc. Method and apparatus for providing visual cues in a graphic user interface
US5825355A (en) * 1993-01-27 1998-10-20 Apple Computer, Inc. Method and apparatus for providing a help based window system using multiple access methods
US5859638A (en) * 1993-01-27 1999-01-12 Apple Computer, Inc. Method and apparatus for displaying and scrolling data in a window-based graphic user interface
US5469540A (en) * 1993-01-27 1995-11-21 Apple Computer, Inc. Method and apparatus for generating and displaying multiple simultaneously-active windows
CA2109681C (en) * 1993-03-10 1998-08-25 Donald Edgar Blahut Method and apparatus for the coding and display of overlapping windows with transparency
US5339393A (en) * 1993-04-15 1994-08-16 Sony Electronics, Inc. Graphical user interface for displaying available source material for editing
US5524195A (en) * 1993-05-24 1996-06-04 Sun Microsystems, Inc. Graphical user interface for interactive television with an animated agent
DE69432199T2 (de) 1993-05-24 2004-01-08 Sun Microsystems, Inc., Mountain View Graphische Benutzerschnittstelle mit Verfahren zur Schnittstellebildung mit fernsteuernden Einrichtungen
US6239794B1 (en) 1994-08-31 2001-05-29 E Guide, Inc. Method and system for simultaneously displaying a television program and information about the program
US5594509A (en) * 1993-06-22 1997-01-14 Apple Computer, Inc. Method and apparatus for audio-visual interface for the display of multiple levels of information on a display
US5583560A (en) * 1993-06-22 1996-12-10 Apple Computer, Inc. Method and apparatus for audio-visual interface for the selective display of listing information on a display
US5621456A (en) * 1993-06-22 1997-04-15 Apple Computer, Inc. Methods and apparatus for audio-visual interface for the display of multiple program categories
US5581670A (en) * 1993-07-21 1996-12-03 Xerox Corporation User interface having movable sheet with click-through tools
CA2124624C (en) * 1993-07-21 1999-07-13 Eric A. Bier User interface having click-through tools that can be composed with other tools
CA2124505C (en) * 1993-07-21 2000-01-04 William A. S. Buxton User interface having simultaneously movable tools and cursor
US6418556B1 (en) 1993-09-09 2002-07-09 United Video Properties, Inc. Electronic television program guide schedule system and method
US5544300A (en) * 1993-11-12 1996-08-06 Intel Corporation User interface for dynamically converting between a single top level window and multiple top level windows
US5572649A (en) * 1993-11-12 1996-11-05 Intel Corporation Process for dynamically switching between a single top level window and multiple top level windows
US5991751A (en) * 1997-06-02 1999-11-23 Smartpatents, Inc. System, method, and computer program product for patent-centric and group-oriented data processing
US6877137B1 (en) * 1998-04-09 2005-04-05 Rose Blush Software Llc System, method and computer program product for mediating notes and note sub-notes linked or otherwise associated with stored or networked web pages
US6963920B1 (en) * 1993-11-19 2005-11-08 Rose Blush Software Llc Intellectual asset protocol for defining data exchange rules and formats for universal intellectual asset documents, and systems, methods, and computer program products related to same
US5799325A (en) * 1993-11-19 1998-08-25 Smartpatents, Inc. System, method, and computer program product for generating equivalent text files
US5623681A (en) * 1993-11-19 1997-04-22 Waverley Holdings, Inc. Method and apparatus for synchronizing, displaying and manipulating text and image documents
US6339767B1 (en) 1997-06-02 2002-01-15 Aurigin Systems, Inc. Using hyperbolic trees to visualize data generated by patent-centric and group-oriented data processing
US5623679A (en) * 1993-11-19 1997-04-22 Waverley Holdings, Inc. System and method for creating and manipulating notes each containing multiple sub-notes, and linking the sub-notes to portions of data objects
US5696963A (en) * 1993-11-19 1997-12-09 Waverley Holdings, Inc. System, method and computer program product for searching through an individual document and a group of documents
US5806079A (en) * 1993-11-19 1998-09-08 Smartpatents, Inc. System, method, and computer program product for using intelligent notes to organize, link, and manipulate disparate data objects
US5563595A (en) * 1993-12-23 1996-10-08 International Business Machines Corporation Method and apparatus for compressing data
US8793738B2 (en) 1994-05-04 2014-07-29 Starsight Telecast Incorporated Television system with downloadable features
US5502439A (en) * 1994-05-16 1996-03-26 The United States Of America As Represented By The United States Department Of Energy Method for compression of binary data
EP0760117B1 (de) * 1994-05-19 2001-09-12 Apple Computer, Inc. Statusanzeiger einer graphischen benutzerschnittstelle
US6005566A (en) * 1994-05-19 1999-12-21 Apple Computer, Inc. Aspect and style elements of an improved graphical user interface
US5515480A (en) * 1994-06-15 1996-05-07 Dp-Tek, Inc. System and method for enhancing graphic features produced by marking engines
US6397262B1 (en) 1994-10-14 2002-05-28 Qnx Software Systems, Ltd. Window kernel
US5745759A (en) * 1994-10-14 1998-04-28 Qnx Software Systems, Ltd. Window kernel
EP0745307B3 (de) * 1994-12-14 2010-06-23 Philips Electronics N.V. Übertragungssystem für untertitel
US5838938A (en) * 1995-02-15 1998-11-17 Sony Electronics, Inc. Multimedia user interface employing components of color to indicate the values of variables
US6769128B1 (en) 1995-06-07 2004-07-27 United Video Properties, Inc. Electronic television program guide schedule system and method with data feed access
US6323911B1 (en) 1995-10-02 2001-11-27 Starsight Telecast, Inc. System and method for using television schedule information
US6732369B1 (en) 1995-10-02 2004-05-04 Starsight Telecast, Inc. Systems and methods for contextually linking television program information
US5930813A (en) * 1995-12-21 1999-07-27 Adobe Systems Incorporated Method and system for designating objects
US6469753B1 (en) 1996-05-03 2002-10-22 Starsight Telecast, Inc. Information system
US5764229A (en) * 1996-05-09 1998-06-09 International Business Machines Corporation Method of and system for updating dynamic translucent windows with buffers
US6131112A (en) 1996-05-17 2000-10-10 Cabletron Systems, Inc. Method and apparatus for integrated network and systems management
US6687906B1 (en) 1996-12-19 2004-02-03 Index Systems, Inc. EPG with advertising inserts
US8635649B2 (en) 1996-12-19 2014-01-21 Gemstar Development Corporation System and method for modifying advertisement responsive to EPG information
US5930466A (en) * 1997-03-11 1999-07-27 Lexmark International Inc Method and apparatus for data compression of bitmaps using rows and columns of bit-mapped printer data divided into vertical slices
AUPO648397A0 (en) * 1997-04-30 1997-05-22 Canon Information Systems Research Australia Pty Ltd Improvements in multiprocessor architecture operation
US6311258B1 (en) 1997-04-03 2001-10-30 Canon Kabushiki Kaisha Data buffer apparatus and method for storing graphical data using data encoders and decoders
AUPO647997A0 (en) * 1997-04-30 1997-05-22 Canon Information Systems Research Australia Pty Ltd Memory controller architecture
US6289138B1 (en) 1997-04-30 2001-09-11 Canon Kabushiki Kaisha General image processor
US6272257B1 (en) 1997-04-30 2001-08-07 Canon Kabushiki Kaisha Decoder of variable length codes
US6259456B1 (en) 1997-04-30 2001-07-10 Canon Kabushiki Kaisha Data normalization techniques
US6707463B1 (en) 1997-04-30 2004-03-16 Canon Kabushiki Kaisha Data normalization technique
CA2297039C (en) 1997-07-21 2002-02-12 Ronald Alexander Systems and methods for displaying and recording control interface with television programs, videos, advertising information and program scheduling information
US6665869B1 (en) 1997-09-05 2003-12-16 United Video Properties, Inc. Program guide application interface system
US6604240B2 (en) 1997-10-06 2003-08-05 United Video Properties, Inc. Interactive television program guide system with operator showcase
JP3694237B2 (ja) 1997-12-01 2005-09-14 スターサイト テレキャスト インコーポレイテッド ポップアップに広告メッセージを伴う電子番組ガイドシステム
US6006015A (en) * 1997-12-18 1999-12-21 Lexmark International, Inc. System and method of printer image warping
US7185355B1 (en) 1998-03-04 2007-02-27 United Video Properties, Inc. Program guide system with preference profiles
US6564379B1 (en) 1998-04-30 2003-05-13 United Video Properties, Inc. Program guide system with flip and browse advertisements
US20020095676A1 (en) 1998-05-15 2002-07-18 Robert A. Knee Interactive television program guide system for determining user values for demographic categories
US7603684B1 (en) 1998-05-19 2009-10-13 United Video Properties, Inc. Program guide system with video-on-demand browsing
US6442755B1 (en) 1998-07-07 2002-08-27 United Video Properties, Inc. Electronic program guide using markup language
AR019458A1 (es) 1998-07-23 2002-02-20 United Video Properties Inc Una disposicion de guia de programacion televisiva interactiva que sirve como entrada
US6898762B2 (en) 1998-08-21 2005-05-24 United Video Properties, Inc. Client-server electronic program guide
US7966328B2 (en) 1999-03-02 2011-06-21 Rose Blush Software Llc Patent-related tools and methodology for use in research and development projects
US7716060B2 (en) 1999-03-02 2010-05-11 Germeraad Paul B Patent-related tools and methodology for use in the merger and acquisition process
US6331855B1 (en) * 1999-04-28 2001-12-18 Expertcity.Com, Inc. Method and apparatus for providing remote access, control of remote systems and updating of display information
EP1197074A1 (de) 1999-06-28 2002-04-17 Index Systems, Inc. Vorrichtung und verfahren zur anpassung von werbeberichten mit der hilfe einer programmführerdatenbank
AU5775900A (en) 1999-06-29 2001-01-31 United Video Properties, Inc. Method and system for a video-on-demand-related interactive display within an interactive television application
US6404441B1 (en) 1999-07-16 2002-06-11 Jet Software, Inc. System for creating media presentations of computer software application programs
US20050177850A1 (en) 1999-10-29 2005-08-11 United Video Properties, Inc. Interactive television system with programming-related links
US6694362B1 (en) 2000-01-03 2004-02-17 Micromuse Inc. Method and system for network event impact analysis and correlation with network administrators, management policies and procedures
AR027760A1 (es) 2000-03-31 2003-04-09 United Video Properties Inc Disposicion y metodo para avisos publicitarios enlazados con metadatos
US20020038346A1 (en) * 2000-08-10 2002-03-28 Frank Morrison Method for screen image sharing
US7383191B1 (en) 2000-11-28 2008-06-03 International Business Machines Corporation Method and system for predicting causes of network service outages using time domain correlation
US7512879B2 (en) * 2001-05-11 2009-03-31 Microsoft Corporation Intelligent virtual paging paradigm
US6744739B2 (en) 2001-05-18 2004-06-01 Micromuse Inc. Method and system for determining network characteristics using routing protocols
US7043727B2 (en) 2001-06-08 2006-05-09 Micromuse Ltd. Method and system for efficient distribution of network event data
US7516208B1 (en) 2001-07-20 2009-04-07 International Business Machines Corporation Event database management method and system for network event reporting system
US7363368B2 (en) 2001-12-24 2008-04-22 International Business Machines Corporation System and method for transaction recording and playback
US20030210267A1 (en) * 2002-05-13 2003-11-13 Kylberg Robert Lee Systems and methods for providing asynchronous client rendering in a graphical user interface (GUI) environment
US6714145B1 (en) 2002-09-26 2004-03-30 Richard Marques Method and apparatus for integer-based encoding and decoding of bits
US6879270B1 (en) 2003-08-20 2005-04-12 Hewlett-Packard Development Company, L.P. Data compression in multiprocessor computers
US20050114169A1 (en) * 2003-11-24 2005-05-26 Hazim Ansari Systems and methods for evaluating information to identify, and act upon, intellectual property issues
US8640166B1 (en) 2005-05-06 2014-01-28 Rovi Guides, Inc. Systems and methods for content surfing
US8387089B1 (en) 2005-05-06 2013-02-26 Rovi Guides, Inc. Systems and methods for providing a scan
US7788266B2 (en) 2005-08-26 2010-08-31 Veveo, Inc. Method and system for processing ambiguous, multi-term search queries
US9113107B2 (en) 2005-11-08 2015-08-18 Rovi Guides, Inc. Interactive advertising and program promotion in an interactive television system
US20070156521A1 (en) 2005-12-29 2007-07-05 United Video Properties, Inc. Systems and methods for commerce in media program related merchandise
WO2007103938A2 (en) 2006-03-06 2007-09-13 Veveo, Inc. Methods and systems for selecting and presenting content based on learned user preferences
US8316394B2 (en) 2006-03-24 2012-11-20 United Video Properties, Inc. Interactive media guidance application with intelligent navigation and display features
US20080066106A1 (en) 2006-07-31 2008-03-13 Guideworks, Llc Systems and methods for providing media guidance planners
US8832742B2 (en) 2006-10-06 2014-09-09 United Video Properties, Inc. Systems and methods for acquiring, categorizing and delivering media in interactive media guidance applications
US7801888B2 (en) 2007-03-09 2010-09-21 Microsoft Corporation Media content search results ranked by popularity
US8407737B1 (en) 2007-07-11 2013-03-26 Rovi Guides, Inc. Systems and methods for providing a scan transport bar
US9166714B2 (en) 2009-09-11 2015-10-20 Veveo, Inc. Method of and system for presenting enriched video viewing analytics
US8359616B2 (en) 2009-09-30 2013-01-22 United Video Properties, Inc. Systems and methods for automatically generating advertisements using a media guidance application
US9736524B2 (en) 2011-01-06 2017-08-15 Veveo, Inc. Methods of and systems for content search based on environment sampling
US8779950B2 (en) 2012-03-05 2014-07-15 Dcba, Llc Command encoded data compression
US20140196062A1 (en) 2013-01-10 2014-07-10 United Video Properties, Inc. Systems and methods for setting prices in data driven media placement
US9848276B2 (en) 2013-03-11 2017-12-19 Rovi Guides, Inc. Systems and methods for auto-configuring a user equipment device with content consumption material
US9543980B2 (en) 2014-10-10 2017-01-10 Massachusettes Institute Of Technology Systems and methods for model-free compression and model-based decompression
CN105787402B (zh) 2014-12-16 2019-07-05 阿里巴巴集团控股有限公司 一种信息展示方法及装置

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3305841A (en) * 1963-09-30 1967-02-21 Alphanumeric Inc Pattern generator
US3821731A (en) * 1971-06-07 1974-06-28 Ann Arbor Terminals Inc Graphics display system and method
GB1401022A (en) * 1972-03-10 1975-07-16 Elliott Brothers London Ltd Display apparatus
US3925776A (en) * 1974-04-18 1975-12-09 Research Corp Display terminal system
GB1595964A (en) * 1977-03-17 1981-08-19 Micro Consultants Ltd Tv Special effects generator
GB1598343A (en) * 1977-04-04 1981-09-16 Int Computers Ltd Display systems
US4266242A (en) * 1978-03-21 1981-05-05 Vital Industries, Inc. Television special effects arrangement
GB2063616B (en) * 1979-11-16 1984-06-20 Quantel Ltd Multiple picture image manipulation
US4383296A (en) * 1980-05-16 1983-05-10 Apple Computer, Inc. Computer with a memory system for remapping a memory having two memory output buses for high resolution display with scrolling of the displayed characters
US4399467A (en) * 1981-10-13 1983-08-16 Ncr Canada Ltd. Method and apparatus for image data compression and decompression
US4420770A (en) * 1982-04-05 1983-12-13 Thomson-Csf Broadcast, Inc. Video background generation system

Also Published As

Publication number Publication date
FR2534400B1 (fr) 1988-08-19
JPH0560144B2 (de) 1993-09-01
DE3335162A1 (de) 1984-04-05
AU1969183A (en) 1984-04-05
SG46187G (en) 1987-08-28
GB2128459A (en) 1984-04-26
GB2167927B (en) 1987-01-28
AU6583786A (en) 1987-03-19
GB2128459B (en) 1987-02-18
IT8323075A0 (it) 1983-09-30
IE832292L (en) 1984-03-30
GB2167927A (en) 1986-06-04
GB8324146D0 (en) 1983-10-12
IT1166974B (it) 1987-05-06
HK99087A (en) 1987-12-31
AU587659B2 (en) 1989-08-24
AU558873B2 (en) 1987-02-12
IL69793A (en) 1987-03-31
FR2534400A1 (fr) 1984-04-13
JPS5985573A (ja) 1984-05-17
IL69793A0 (en) 1983-12-30
CA1213085A (en) 1986-10-21
HK98987A (en) 1987-12-31
GB8530583D0 (en) 1986-01-22
IE54823B1 (en) 1990-02-14
US4622545A (en) 1986-11-11

Similar Documents

Publication Publication Date Title
DE3335162C2 (de) Vorrichtung und Verfahren für graphische Darstellungen mittels Computer
DE3750784T2 (de) Generation eines intrapolierten charakteristischen Wertes zur Anzeige.
DE3687831T2 (de) Bildfenstersystem mit einem schaufenster fuer computeranzeige.
DE69129684T2 (de) Bildverarbeitung
DE69301308T2 (de) Bildtexturierungssystem mit themazellen.
DE68915006T2 (de) System zum Generieren von Musterdaten.
DE69534331T2 (de) Verfahren und Vorrichtung zur Hervorhebung der Einzelheit einer Baumstruktur
EP0096079B1 (de) Verfahren zur Aufbereitung von Punktrasterdaten für Zeichen- und/oder Bilddarstellungen
DE3729023C2 (de) Bildbearbeitungsgerät
DE60122835T2 (de) Anzeigeeinrichtung und -Verfahren, und Datenträger der ein Computerprogramm zur Ansteuerung einer Anzeige mit unterteilten Bildelementen beinhaltet
DE3587129T2 (de) Graphische anzeigesysteme.
DE3625390A1 (de) Graphisches anzeigesystem mit beliebiger rberlappung von bildausschnitten
DE19528596C2 (de) Verfahren und Vorrichtung zur Kolorierunterstützung
DE60106301T2 (de) Verfahren und system für die ausfuhr von datenverbänden zu zweidimensionalen oder dreidimensionalen geometrischen entitäten
DE4309105A1 (de) Verfahren und Einrichtung zum Behandeln eines Teils eines verdichteten Bildes für ein Aufbereiten
DE60008867T2 (de) Antialiasingverfahren und -anordnung zur effizienten nutzung von wenigen mischeinheiten
DE69314108T2 (de) Verfahren und Einrichtung zur Steuerung einer Anzeige
DE3889557T2 (de) Vektorgenerator für Raster-Bildschirmanzeige.
DE68913373T2 (de) Verfahren zur gleichzeitigen Dateneingabe in überlappende Fenster.
DE69129339T2 (de) Graphisches ausgangssystem mit begrenzter aktualisierung.
DE69201377T2 (de) Bildverarbeitungsverfahren durch hierarchische warteschlangen.
DE69032082T2 (de) Bilddatenstromumsetzung in Ausgangsdaten zur Bilddruckstellung oder -anzeige
DE69221220T2 (de) Verfahren zur Zuteilung von Speicherplätzen ausserhalb des Bildschirms
DE69130958T2 (de) Graphisches ausgangs-system und -verfahren.
DE112010005426T5 (de) Animationsanzeigevorrichtung

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8125 Change of the main classification

Ipc: G06F 3/14

D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee