DE3729023C2 - Bildbearbeitungsgerät - Google Patents
BildbearbeitungsgerätInfo
- Publication number
- DE3729023C2 DE3729023C2 DE3729023A DE3729023A DE3729023C2 DE 3729023 C2 DE3729023 C2 DE 3729023C2 DE 3729023 A DE3729023 A DE 3729023A DE 3729023 A DE3729023 A DE 3729023A DE 3729023 C2 DE3729023 C2 DE 3729023C2
- Authority
- DE
- Germany
- Prior art keywords
- image
- data
- partial
- display
- displayed
- 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 - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04842—Selection of displayed objects or displayed text elements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04845—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Processing Or Creating Images (AREA)
Description
Die Erfindung bezieht sich auf ein Bildbearbeitungsgerät
und insbesondere auf ein Bildbearbeitungsgerät, das eine
Bedienungsperson in die Lage versetzt, verschiedene Bilder,
wie z. B. das Bild einer eingefügten Bebilderung bzw. Illustration,
eines Musters usw., effizient zu be- und verarbeiten.
Der gegenwärtige Fortschritt im Bereich der Wort- bzw. Textverarbeitung
hat jedermann in die Lage versetzt, saubere
Dokumente mit einem so hohen Maß an Druckqualität zu erzeugen,
daß diese durchaus mit der des herkömmlichen Typendrucks
vergleichbar ist. Dies wiederum hat zu einer erhöhten Anforderung
hinsichtlich einer erleichterten Bedienung geführt,
die den Anwender in die Lage versetzt, Dokumente bzw. Texte
zusammen mit Musterdaten, wie z. B. eingefügten Abbildungen
oder Figuren, zu bearbeiten.
Ein typisches bekanntes System zum Bearbeiten von Musterbildern
zusammen mit Schriftbildern bzw. Texten weist Zeichenbefehle
auf, die einer Vielzahl von Grundmustern oder Teil-Figurendaten,
wie z. B. einem Punkt, einer geraden Linie,
einem Kreis, einem Polygon usw., entsprechen, wobei der Anwender
das Bild oder die Zeichnung durch selektive Verwendung
derartiger Zeichenbefehle erstellt.
Die Bearbeitung bzw. Editierung eines bereits erstellten
Bildes erfordert einen geeigneten Bearbeitungsvorgang, wie
z. B. ein Löschen, ein Bewegen und ein Verschieben eines der
Elemente des Bildes. Ein derartiger Bearbeitungsvorgang erfordert
die Verarbeitung des ganzen Bereichs des Bildes, was
dazu führt, daß die Bedienungsperson stark beansprucht ist,
obgleich nur ein Teil des Bildes zu bearbeiten ist.
Um dies zu verdeutlichen, sei gesagt, daß es oft erforderlich
ist, daß ein Dokument, wie z. B. ein Brief, ein Illustration
bzw. ein Bild aufweist, welches den Leser in die Lage versetzt,
mit einem Blick den Inhalt zu erfassen, wie dies z. B.
bei Weihnachtskarten der Fall ist, welche gewöhnlich mehrere
attraktive Illustrationen aufweisen, die Grüße darstellen.
Eine derartige Illustration kann mit dem bekannten System
durch geeignete Kombination einer Vielzahl von Bildelementen
erzeugt werden. Die Erzeugung einer komplizierten Illustration
macht es häufig erforderlich, daß ein oder mehrere
Illustrationselemente bzw. Teilbilder überlagert werden,
wobei häufig ein Bedarf besteht, nur das unterste oder innere
Teilbild der überlagerten Teilbilder zu bearbeiten.
Es wäre sehr hilfreich und die Effizienz der Bearbeitung
würde merklich verbessert werden, wenn die Bedienungsperson
in die Lage versetzt würde, nur das unterste oder innere
Teilbild zu wählen und zu bestätigen, daß ein Teilbild gewählt
wurde.
Bisher gibt es kein Gerät, das eine Bearbeitungsfunktion
aufweist, die diese Forderung erfüllen könnte.
Es ist ferner darauf hinzuweisen, daß die Erzeugung einer
gewünschten Illustration bzw. Zeichnung mittels der genannten
Zeichenbefehle einen hohen Kenntnisstand erfordert und daher
nur von gut ausgebildeten Personen durchgeführt werden kann.
In den letzten Jahren hat ein bemerkenswerter Fortschritt im
Bereich der Geräte zur Erzeugung und Bearbeitung von Mustern
und Bildern stattgefunden. Ein typischer Vertreter dieser
Geräte verwendet eine Vielzahl von Musterelementen, wobei die
Bedienungsperson die gewünschte Zeichnung durch geeignete
Wahl und Positionierung derartiger Musterelemente erzeugt.
Wenn bei einigen Geräten dieser Art ein Bedarf besteht, nur
ein Element bzw. Teilbild der bereits erzeugten Zeichnung zu
bearbeiten bzw. zu editieren, muß die Bedienungsperson
mittels einer geeigneten Einrichtung, wie z. B. einer Koordinaten-Eingabeeinrichtung
(Digitalisierer) oder einer Tastatur,
alleine das zu bearbeitende Musterelement bzw. Teilbild
festlegen oder wählen und den gewünschten Bearbeitungsvorgang,
wie z. B. einer Korrektur oder Verschiebung, durchführen.
Dieser Bearbeitungsvorgang kann dann im wesentlichen
ohne Schwierigkeiten durchgeführt werden, wenn die betreffenden
Teilbilder voneinander isoliert bzw. beabstandet sind.
Wenn hingegen zwei oder mehr Teilbilder überlagert oder in
unmittelbarer Nähe zueinander angeordnet sind, tritt das
Problem auf, daß, wenn die Bedienungsperson eines dieser
Teilbilder bezeichnet, das Gerät fälschlicherweise ein anderes
Teilbild wählt, das dem bezeichneten Teilbild überlagert
oder benachbart ist.
Wenn eines der Zeichnungselemente bzw. Teilbilder einer auf
einer Anzeigevorrichtung des Geräts angezeigten Zeichnung zu
bearbeiten oder zu korrigieren ist, ist es notwendig, daß ein
derartiges Zeichnungselement korrekt festgelegt bzw. bezeichnet
wird. In den meisten Fällen wird ein spezifisches Zeichnungselement
dadurch bezeichnet, daß eine bewegbare grafische
Schreibmarke bzw. ein bewegbarer Grafikcursor mittels einer
geeigneten Koordinaten-Eingabeeinrichtung, wie z. B. einer
Maus oder eines Digitalisiertabletts, zu der Position des
gewünschten Zeichnungselements innerhalb eines auf der Anzeigevorrichtung
angezeigten Bildes bewegt und anschließend
ein Wählsignal eingegeben wird, indem eine geeignete Taste,
wie z. B. eine an der Maus vorgesehene Taste, betätigt wird.
Dieses Verfahren zur Auswahl eines spezifischen Zeichnungselements
ist insofern nachteilig, als die Bedienungsperson
oftmals nicht in die Lage versetzt wird, anhand einer visuellen
Überprüfung des auf der Anzeigevorrichtung angezeigten
Bildes zu erkennen, welches der Zeichnungselemente tatsächlich
ausgewählt wurde. Darüber hinaus ist es nicht einfach,
den Grafikcursor korrekt an dem gewünschten Zeichnungselement
zu positionieren, und zwar insbesondere dann, wenn das
betreffende Zeichnungselement extrem klein ist.
Nachfolgend wird ein typisches Beispiel eines bekannten Verfahrens
zur Erzeugung einer gewünschten Zeichnung durch Kombination
einer Vielzahl von Teil-Bilddaten bzw. Zeichnungselementen
näher erläutert.
Fig. 11 zeigt anhand eines Blockschaltbildes den Aufbau einer
typischen Ausführungsform eines herkömmlichen Systems zur
Erzeugung und Bearbeitung von Zeichnungen.
Das in Fig. 11 gezeigte System weist eine Kathodenstrahl-Anzeigevorrichtung
bzw. einen Monitor 1101 auf, auf dem verschiedene
Daten, wie z. B. Zeichen, Figurenmuster und Bitmuster
angezeigt werden. Die Eingabe von Daten in Form von
Zeichen wird mittels einer Tastatur durchgeführt, während
eine Maus 1103 als Zeigevorrichtung zum Bezeichnen einer
gewünschten Position auf dem Monitor und zum Wählen eines
gewünschten Auswahlpunkts aus einem auf dem Monitor angezeigten
Menue dient. Die Steuerung und Verarbeitung der Eingabe-
und Ausgabesignale wird von einem Mikroprozessor 1105 (der
nachfolgend als CPU bezeichnet wird) durchgeführt, welcher
über einen Bus mittels einer Monitorschnittstelle 1107, einer
Tastaturschnittstelle 1108 und einer Mausschnittstelle 1109
an den Monitor und die Eingabeeinrichtungen angeschlossen
ist. Die bei der Verarbeitung durch die CPU zu verwendenden
Programme und Daten sind in einem Hauptspeicher 1110 oder auf
einer Magnetplatte 1111 gespeichert. Der Hauptspeicher 1110
ist direkt mit dem Bus 1106 verbunden, während die Magnetplatte
1111 über eine Plattenschnittstelle 1112 mit dem Bus
1106 verbunden ist.
Teil-Bilddaten oder Zeichnungselemente, die die grundlegenden
Muster darstellen, aus denen Zeichnungen zusammenzustellen
bzw. zu synthetisieren sind, werden im voraus in dem Hauptspeicher
1110 oder auf der Magnetplatte 1111 gespeichert. Im
Betrieb werden die Teil-Bilddaten zu dem Monitor übertragen,
wobei mit diesen Daten gleichzeitig eine auf die jeweilige
Anzeige bezogene logische Berechnung in der Weise durchgeführt
wird, daß das Bild der gewünschten Zeichnung synthetisiert
und angezeigt wird.
Gewöhnlich werden die auf dem Monitor angezeigten Daten in
einem im Hauptspeicher befindlichen Videospeicher (V-RAM)
gespeichert und zu ihrer Anzeige auf dem Monitor über die
Monitorschnittstelle 1107 synchron mit ihrer Anzeige auf dem
Monitor 1101 ausgelesen.
Das Einschreiben von Daten in das V-RAM mittels der CPU
1105 durch Übertragung eines entsprechenden Befehls an die
Monitorschnittstelle 1107 entweder direkt oder indirekt
durchgeführt werden, wobei es für die vorliegende Erfindung
unwesentlich ist, welches dieser beiden Verfahren angewandt
wird.
Fig. 12 zeigt ein Beispiel einer durch Synthetisieren einer
Vielzahl von Teilbilddaten erzeugten Zeichnung bzw. Abbildung.
In Fig. 12 gebrochen dargestellte Linien werden nicht
tatsächlich angezeigt, sondern dienen dazu, bestimmte Bereiche
anzugeben.
Dasjenige mit unterbrochenen Linien dargestellte Rechteck,
dessen linke obere Ecke mit P₀ bezeichnet ist, gibt den
Rahmen bzw. Bildausschnitt des Monitors an, der zur Anzeige
der Zeichnung zur Verfügung steht. Die Zeichnung besteht aus
einer Vielzahl von Teilbilddaten, deren jeweiligen Rechteckbereich
durch Punkte P₁ bis P₅ an der oberen linken Ecke
bezeichnet ist. Die in Fig. 12 gezeigte Zeichnung wird erzeugt,
indem eine Speicherbelegung und Dateneingabe in der in
Fig. 13 gezeigten Weise erfolgt. Gemäß Fig. 13 wird die
Anzahl n der Teilbilddaten in einen Speicherbereich bzw.
einer Speicherstelle 1301 gespeichert. In dem dargestellten
Beispiel wird demnach die Zahl "5" gespeichert, da sich die
Zeichnung aus fünf Teilbilddaten zusammensetzt. Eine Bildstrukturtabelle
1302 besteht aus einer Vielzahl von Anzeigeposition-Definitionsblöcken
1302-1 bis 1302-n (wobei n in
diesem Fall 5 ist) besteht, die zur Angabe der jeweiligen
Position dienen, an der das betreffende Teilbild anzuzeigen
ist. Jeder Anzeigeposition-Definitionsblock 1302-i besitzt
Bereiche bzw. Speicherplätze xi und yi zum Speichern des x-
und des y-Koordinatenwertes derjenigen Position, an der die
jeweils zugeordneten Teilbilddaten anzuzeigen sind, einen
Speicherplatz DOFFi zum Speichern der Anfangsadresse einer
Teildaten-Definitionstabelle 1303-i, welche die betreffenden
Teilbilddaten identifiziert bzw. angibt, sowie einen Speicherplatz
DSEGi zum Speichern einer Segmentadresse der Teildaten-Definitionstabelle
1303-i. Die Adressierung mittels
einer Offset- bzw. Relativadresse und der Segmentadresse wird
dann angewandt, wenn eine große Speicherkapazität (in Einheiten
von 64 kByte) zur Verfügung steht, wobei bei dieser
Adressierart eine bestimmte Adresse aus diesen beiden Adressen
gebildet wird.
Wie aus Fig. 13 zu erkennen ist, besitzt jede Teildaten-Definitionstabelle
1303-i Bereiche bzw. Speicherplätze zur
Angabe von zwei Teilbilddaten. Der erste Bereich dient zur
Festlegung von Distransparenz- bzw. Verdeckungsdefinitionsdaten
1304-i der Teilbilddaten, während der zweite Bereich zur
Definition von Anzeigedefinitionsdaten 1305-i dient. Das heißt,
das vierte und fünfte Wort (wobei jedes Wort aus zwei Bytes
besteht) geben diejenige Anfangsadresse an, an der die Verdeckungsdefinitionsdaten
1304-i gespeichert sind, während das
neunte und zehnte Wort die Anfangsadresse der Anzeigedefinitionsdaten
1305-i angeben. Die Inhalte jeder Teildatendefinitionstabelle
1303-i sind in Fig. 14 mit 1401 bezeichnet.
Gemäß vorstehender Beschreibung wird die Anfangsadresse eines
Bilddaten-Speicherbereichs 1402 als Relativadresse und als
Segmentadresse im vierten Wort (MEM-OFF) bzw. im fünften Wort
(MEM-SEG) gespeichert. Die Worte 1 bis 3 werden dazu verwendet,
den jeweiligen Typ des Bilddaten-Speicherbereichs anzugeben.
Das heißt, in den Speicherplatz X-L wird eine Zahl gespeichert,
die den Wert "Wortwahl-1" hat, wobei die Wortzahl die
seitliche Länge der Bilddaten angibt und wobei jedes Wort aus
16 Bits besteht. Gleichzeitig wird in dem Speicherplatz Y-L
eine Zahl gespeichert, die den Wert "Zeilenzahl-1" hat,
wobei die Zeilenzahl die vertikale Länge der Bilddaten angibt.
Die Speicherreihenfolge der Daten ist dadurch festgelegt,
daß jede Zeile, beginnend mit denjenigen Wortdaten, die
das linke Ende angeben, Wort für Wort über eine den Wert (X-L + 1)
entsprechende Strecke abgetastet und anschließend die
Abtastung einer nächsten Zeile begonnen wird. Auf diese Weise
wird die seitliche Abtastung Wort für Wort durchgeführt. Um
die abgetasteten Daten in Daten auf Punktbasis umzusetzen,
werden Bereich bzw. Speicherplätze S-OFF und E-OFF in folgender
Weise verwendet. Hierzu wird die Bitnummer des ersten
effektiven Bits des Wort des linken Endes in dem Speicherplatz
S-OFF und die Bitnummer des letzten effektiven Bits des
Worts des rechten Endes in dem Speicherplatz E-OFF gespeichert.
Die Nummern des linken Endbits und des rechten Endbits
jedes Worts werden durch 0 (niedrigwertiges Bit) bzw. durch
15 (höchstwertiges Bit) dargestellt.
Es sei hier angenommen, daß als Bilddaten ein in Fig. 15
gezeigter schwarzer Kreis festzulegen ist, dessen Größe durch
NH Worte in seiner Horizontalrichtung und durch NV Zeilen in
seiner Vertikalrichtung gegeben ist. Ferner sei angenommen,
daß NS Punkte vom linken Ende und NE Punkte vom rechten Ende
unnötige Daten darstellen, während der zentrale Bereich mit
Ausnahme dieser Endpunkte den festlegenden Rechteckbereich
darstellt. In diesem Fall wird in den Speicherplätzen X-L und
Y-L der Wert (NH-1) bzw. (NV-1) eingestellt, während in den
Speicherplätzen S-OFF und E-OFF der Wert (NS-1) bzw. (15-EN)
eingestellt wird.
In diesem Fall entspricht der Wert "1" in den Verdeckungs-Definitionsdaten
1304-i der Farbe "Schwarz", während der Wert
"0" der Farbe "Weiß" entspricht. In ähnlicher Weise entsprechen
die Werte "1" und "0" in den Anzeige-Definitionsdaten
1305-i der Farbe "Schwarz" bzw. "Weiß".
Fig. 16 zeigt ein Beispiel für einen typischen Steuerungsablauf
zur Erzeugung des in Fig. 12 gezeigten Bilds bzw.
Musters.
Gemäß Fig. 16 werden in einem Anfangsschritt S1601 die gesamten
Bilddaten und damit der gesamte Bereich des angezeigten
Bildausschnitts gelöscht. Hierzu wird der gesamte Bereich in
dem Rechteck 1201 mit der Farbe "Weiß" besetzt.
In einem Schritt S1602 wird als Anfangswert für i der Wert
"1" eingestellt und in einem Schritt S1606 wird i jeweils um
1 erhöht. In einem Schritt S1603 wird die in dem Speicherplatz
1301 gespeicherte Anzahl n der Teilbilddaten mit der
inkrementierten Zahl i verglichen. Wenn i < n ist, werden
Schritte S1604 und S1605 wiederholt durchgeführt. Im Schritt
S1604 werden die Verdeckungsdefinitionsdaten 1304-i mit Bezug
auf die i-ten Anzeigedefinitionsdaten bzw. dem i-ten Anzeigedefinitionsblock
aus der Bildaufbau- bzw. der Bildstrukturtabelle
extrahiert und es wird eine Verarbeitung durchgeführt,
um diese Daten "auszuscheiden".
Hierzu werden die Verdeckungsdefinitionsdaten 1304-i ausgelesen
und die sich daraus ergebende Position pi wird unter
Zugrundelegung der in den Speicherplätzen xi und yi in dem i-ten
Anzeigedefinitionsblock gespeicherten Werte berechnet.
Daraufhin werden die aus dieser Position ausgelesenen Verdeckungsdefinitionsdaten
1304-i invertiert und es wird das
logische Produkt (UND) der invertierten Daten und des Anzeigerahmens
bzw. des angezeigten Bildausschnitts gebildet.
Obgleich die Schwarzbereiche und die Weißbereiche der Verdeckungsdefinitionsdaten
1304-i bzw. "1" bzw. "0" dargestellt
werden, ist dies nicht die einzig mögliche Art der
Darstellung. Vielmehr ist es auch möglich, die Schwarz- und
Weißbereiche durch "0" bzw. "1" darzustellen. In einem solchen
Fall genügt es, lediglich das logische Produkt der
Verdeckungsdefinitionsdaten 1304-i und des Anzeigerahmens,
der in den meisten Fällen ein Videospeicher ist, zu bilden.
In jedem Fall ermöglicht es der vorstehend beschriebene Ablauf,
denjenigen Bereich, in den die anzuzeigenden Teilbilddaten
einzuschreiben sind (einem Teil der ganzen Teilbilddaten,
der unmittelbar vor diesem Vorgang angezeigt wurde), in
Weiß-Leerstellen zu ändern.
Im Schritt S1605 werden die Teilbilddaten 1305-i, die in der
durch die Segmentadresse MEM-SEG und die Relativadresse MEM-OFF
definierten Position bzw. Speicherstelle gespeichert
sind, in die Position bzw. Speicherstelle Pi der Weiß-Leerstelle
eingelesen, welche im Schritt S1604 in Weiß-Leerstellen
geändert wurde, und es wird eine Berechnung durchgeführt,
um die logische Summe der ausgelesenen Teilbilddaten 1305-i
und der Position der Weiß-Leerstelle zu bestimmen. Als Folge
davon wird nur derjenige Anteil der Teilbilddaten, der die
Farbe Schwarz repräsentiert, im gleichen Bereich des Monitors
angezeigt.
Unter der Annahme, daß die Daten gemäß der Darstellung in
Fig. 13 gespeichert sind, und daß die Koordinaten der Positionen
der Punkte P₁ bis P₅ durch (x 1, y 1) bis (x 5, y 5)
gegeben sind, wird zunächst ein horizontal gestreckter Kreis
ausgeschnitten, wobei keine wesentliche Änderung stattfindet,
da die ganze Anzeigefläche gelöscht wurde, und die Kontur des
horizontalgestreckten Kreises wird gezeichnet. Wenn dieser
gestreckte Kreis gelesen wird, hat die Zahl i den Wert "1".
In einem nächsten Zyklus, d. h., wenn die Zahl i den Wert "2"
hat, wird mittels der Verdeckungsdefinitionsdaten 1304-2 ein
diamantförmiger Bereich ausgeschnitten, wobei der Punkt P₂ an
der linken oberen Ecke des Rechtecks positioniert ist. Folglich
wird in der Nähe des rechten Endes des horizontal gestreckten
Kreises eine diamantförmige Weiß-Leerstelle erzeugt,
wobei ein Teil des Diamanten so auf dem gestreckten
Kreis plaziert ist, als wenn ein weißgetastetes, gestrecktes
Loch unterhalb oder innerhalb des weißgetasteten Diamanten
plaziert wäre. Wenn die dritten Teilbilddaten ausgelesen
werden, wird nur der Umfang des Kreises ausgeschnitten und
überlagert, da die Oberflächen- bzw. Anzeigedefinitionsdaten
1305-3 übereinstimmen und da die Verdeckungsdefinitionsdaten
1304-3 nur in der äußeren Peripherie des Kreises schwarz
sind. Als Folge davon wird ein eine kreisförmige Weiß-Leerstelle
umgebender schwarzer Kreis so angezeigt, als wäre er
dem horizontal gestreckten Kreis und dem Diamanten überlagert.
Ein weiß getastetes Quadrat und ein weiß getastetes
Trapezoid werden aufeinanderfolgend auf die gleiche Weise
angezeigt. Da der Kreis in dem Trapezoid im Sinne bzw. nach
Maßgabe der Verdeckungsdefinitionsdaten weiß ist, während das
Dreieck in dem Trapezoid schwarz ist, wird das Dreieck in dem
Trapezoid als weiß getastete Fläche dargestellt, während der
Kreis als transparenter Kreis dargestellt wird, durch den der
darunterliegende Teil des Quadrats sichtbar ist.
Vorstehend wurde ein Beispiel eines Bilderzeugungsvorgangs
beschrieben, bei dem das gewünschte Bild durch Überlagerung
von 5 Teilbilddaten erzeugt wurde. In der Praxis ist es zur
Erzeugung eines gewünschten Bilds oder einer gewünschten
Zeichnung jedoch erforderlich, eine große Menge von Teil-Rasterbilddaten
bzw. -Bilddaten und geometrischen Grundmustern
zusammenzufügen.
Demzufolge wird eine gewünschte Figur oder Zeichnung auf
einem Anzeige-Bildschirm, wie z. B. einer Kathodenstrahlröhre,
so erzeugt, als würde eine Vielzahl von Papierstücken, die
mittels einer Schere aus einem Papierblatt aus- und zurechtgeschnitten
werden, aufeinandergeklebt werden würden, um die
gewünschte Figur zu erzeugen. Wenn dieser "Flickvorgang" bzw.
Zusammenstellungsvorgang ein bestimmtes Ausmaß angenommen
hat, ist es schwierig, diejenigen Teilbilddaten zu ändern,
die sich in der inneren oder "tieferen" Seite des Bildrahmens
befinden, d. h. diejenigen, die durch eine Vielzahl von Teilbilddaten
überlagert sind. Die Änderung derartiger Bilddaten
kann jedoch dann ohne Schwierigkeiten vorgenommen werden,
wenn Daten gespeichert wurden, die die Ablauffolge des
"Flickvorgangs" der Mehrzahl der Teilbilddaten betreffen bzw.
angeben. Mit derartigen Daten ist es der Bedienungsperson
möglich, den Ablauf bzw. den Bearbeitungsvorgang zeitweilig
zu unterbrechen und den "Flickvorgang" von dessen Beginn an
ablaufen zu lassen, so daß die Bedienungsperson sehr leicht
auf die gewünschte Teilbilddaten zugreifen kann, um die
gewünschte Änderung durchzuführen.
Ein weiteres Bildbearbeitungsgerät ist aus der EP 0 171 120 A1
bekannt. Bei diesem Gerät wird ein aus Teilbildern
bestehendes Bild mittels einer Anzeigeeinrichtung angezeigt.
Dabei sind entweder die Teilbilddaten oder bei bereits
erfolgter Auswahl eines Teilbildes die durch das Teilbild
verdeckten Hintergrundbilddaten in einer Speichereinrichtung
gespeichert. Zu einem Bild zusammengesetzte Teilbilder werden
in einer vorbestimmten Reihenfolge zur Anzeige gebracht,
wodurch der Vorgang des Zusammensetzens wieder rückgängig
gemacht werden kann.
Ferner zeigt die EP 0 100 097 A2 ein Bildbearbeitungssystem,
das beispielsweise in einem Simulator Anwendung finden kann.
Da in diesem Gerät eine dreidimensionale Darstellung gewählt
ist, erfolgt bei Auswahl eines Teilbildes und Angabe der
Positionierungskoordinaten eine Umwandlung der Teilbilddaten
hinsichtlich der Perspektive und der Verdeckung durch andere
Bildelemente.
Schließlich wird in der Veröffentlichung "IBM Technical
Disclosure Bulletin" Vol 28, Nr. 12, May 86, auf den Seiten
5395 und 5396 ein interaktives System zum Abruf von
Informationen offenbart, die durch Berührung von auf dem
Bildschirm zur Anzeige gebrachten Piktogrammen auswählbar
sind. Dabei ist allerdings für die Menuefenster ein
festgelegter Bereich auf dem Bildschirm vorgesehen, d. h. Lage
und Art der Piktogramme ist je nach Auswahlsequenz immer
dieselbe. Ein derart strukturiertes System ist daher zur
individuellen Zusammenstellung von Bildern aus Teilbildern
nicht geeignet.
Im Laufe der Bildbearbeitung soll oftmals ein bereits
ausgewähltes Teilbild durch ein anderes, modifiziertes
Teilbild ersetzt werden. Da als modifizierte Teilbilder
jeweils nur bestimmte Teilbilder in Frage kommen, wäre es zur
Erhöhung des Bedienungskomforts des Bildbearbeitungsgeräts
wünschenswert, daß bei Selektion eines zu modifizierenden
Teilbildes mittels einer Positionserfassungseinrichtung eine
Liste der zugehörigen Teilbilder anzeigbar ist, aus der dann
das gewünschte Teilbild auswählbar ist.
Der Erfindung liegt daher die Aufgabe zugrunde, ein
Bildbearbeitungsgerät bereitzustellen, bei dem ein Bild aus
einer Vielzahl von Teilbildern generierbar ist, wobei bei der
Selektion eines bereits ausgewählten und angezeigten
Teilbildes mittels einer Positionserfassungseinrichtung
automatisch eine Liste der zugehörigen, modifizierten
Teilbildern anzeigbar ist.
Diese Aufgabe wird gelöst durch ein Bildbearbeitungsgerät
mit:
einer Anzeigeeinrichtung zur Anzeige eines Bildes,
einer Speichereinrichtung, in der Teilbilder jeweils unterschiedlicher Form gespeichert sind,
einer Wähleinrichtung, mittels der jeweils eines der in der Speichereinrichtung gespeicherten Teilbilder auswählbar und an einer gewählten Position an der Anzeigeeinrichtung anzeigbar ist, sowie
einer Positionserfassungseinrichtung, mittels der eines von mehreren an der Anzeigeeinrichtung angezeigten Teilbildern selektierbar ist,
wobei in der Speichereinrichtung ein erster Speicherbereich gebildet ist, in dem eine erste Liste der gewählten Teilbilder mit zugehörigen Identifizierungsdaten und Koordinaten der gewählten Anzeigepositionen gespeichert ist,
wobei in der Speichereinrichtung ein zweiter Speicherbereich gebildet ist, in dem für jedes Teilbild eine zweite Liste der diesem zugeordneten modifizierten Teilbilder gespeicher ist,
wobei eine Menueerzeugungseinrichtung vorgesehen ist, die nach Selektion eines jeweiligen Teilbildes anhand der Identifizierungsdaten die diesem zugeordnete Liste der modifizierten Teilbilder in Form einer Menueliste angeordnet und die Anzeigeeinrichtung veranlaßt, die Menueliste als Einblendmenue dem selektierten Teilbild überlagert anzuzeigen,
wobei mittels der Wähleinrichtung eines der in der Menueliste befindlichen Teilbilder auswählbar ist, und
wobei eine Substitutionseinrichtung vorgesehen ist, die das mittels der Positionserfassungseinrichtung selektierte Teilbild durch das mittels der Wähleinrichtung aus der Menueliste ausgewählte modifizierte Teilbild ersetzt.
einer Anzeigeeinrichtung zur Anzeige eines Bildes,
einer Speichereinrichtung, in der Teilbilder jeweils unterschiedlicher Form gespeichert sind,
einer Wähleinrichtung, mittels der jeweils eines der in der Speichereinrichtung gespeicherten Teilbilder auswählbar und an einer gewählten Position an der Anzeigeeinrichtung anzeigbar ist, sowie
einer Positionserfassungseinrichtung, mittels der eines von mehreren an der Anzeigeeinrichtung angezeigten Teilbildern selektierbar ist,
wobei in der Speichereinrichtung ein erster Speicherbereich gebildet ist, in dem eine erste Liste der gewählten Teilbilder mit zugehörigen Identifizierungsdaten und Koordinaten der gewählten Anzeigepositionen gespeichert ist,
wobei in der Speichereinrichtung ein zweiter Speicherbereich gebildet ist, in dem für jedes Teilbild eine zweite Liste der diesem zugeordneten modifizierten Teilbilder gespeicher ist,
wobei eine Menueerzeugungseinrichtung vorgesehen ist, die nach Selektion eines jeweiligen Teilbildes anhand der Identifizierungsdaten die diesem zugeordnete Liste der modifizierten Teilbilder in Form einer Menueliste angeordnet und die Anzeigeeinrichtung veranlaßt, die Menueliste als Einblendmenue dem selektierten Teilbild überlagert anzuzeigen,
wobei mittels der Wähleinrichtung eines der in der Menueliste befindlichen Teilbilder auswählbar ist, und
wobei eine Substitutionseinrichtung vorgesehen ist, die das mittels der Positionserfassungseinrichtung selektierte Teilbild durch das mittels der Wähleinrichtung aus der Menueliste ausgewählte modifizierte Teilbild ersetzt.
Durch diesen Aufbau kann nach der Positionserfassung mit
Hilfe der Identifizierungsdaten das entsprechende, bereits
ausgewählte Teilbild identifiziert werden, so daß eine
Auswahl und Anzeige der zugehörigen Teilbildliste ohne
weitere Benutzerinformation ermöglicht wird.
Die Erfindung wird nachstehend anhand der Beschreibung von
Ausführungsbeispielen unter Bezugnahme auf die Zeichnung
näher erläutert. Es zeigt
Fig. 1 ein Blockschaltbild eines Ausführungsbeispiels des
erfindungsgemäßen Bildbearbeitungsgeräts,
Fig. 2 ein Flußdiagramm eines Steuerungsablaufs zur
Speicherung einer Gruppe von Teilbilddaten, der
durchgeführt wird, wenn bestimmte Teilbilddaten
gewählt wurden,
Fig. 3 einen Musterspeicher, einen Hintergrundspeicher und
einen Vordergrundspeicher, die der in Fig. 2
gezeigte Steuerungsablauf als Speichermedium verwendet,
Fig. 4A ein Flußdiagramm des Anzeigevorgangs eines Bildes,
Fig. 4B ein Flußdiagramm des Verschiebungsvorgangs bestimmter
Teilbilddaten,
Fig. 5A bis 5I im Verlauf der erfindungsgemäßen Bildbearbeitung
auf einem Bildschirm angezeigte Figuren,
Fig. 6 schematisch die gegenseitige Beziehung zwischen
Bildelementen und Bildelementdaten, wenn das Bildbearbeitungsgerät
zur Bearbeitung von Farbbildern
eingesetzt wird,
Fig. 7 anhand eines Blockschaltbilds ein Ausführungsbeispiel
eines Bildbearbeitungsgeräts zur Bearbeitung
der in Fig. 6 gezeigten Bildelementdaten,
Fig. 8 ein Flußdiagramm eines Steuerungsablaufs zur
Speicherung einer Gruppe von Teilbilddaten, der
durchgeführt wird, wenn bei dem in Fig. 7 gezeigten
Gerät ein bestimmtes Teilbildelement ausgewählt
wird,
Fig. 9 ein Flußdiagramm eines Ablaufs zur Anzeige eines
Bilds,
Fig. 10 schematisch die Art und Weise der Anordnung der
Teilbilddaten in dem Speicher,
Fig. 11 ein allgemeines Blockschaltbild eines Bildbearbeitungsgeräts,
Fig. 12 ein sich aus einer Vielzahl von Teilbilddaten zusammensetzendes
Bild,
Fig. 13 schematisch die Art und Weise der Anordnung der
Teilbilddaten in einem Speicher,
Fig. 14 eine der Speicherbereiche der Teilbilddaten angebende
Tabelle und die Art des Zugriffs auf die gespeicherten
Daten,
Fig. 15 ein Beispiel der Teilbilddaten,
Fig. 16 ein Flußdiagramm des Speicherungsablaufs zur
Speicherung der Teilbilddaten,
Fig. 17 ein Flußdiagramm eines Steuerungsablaufs zur
Speicherung einer Gruppe von Teilbilddaten, wenn
bestimmte Teilbilddaten ausgewählt wurden,
Fig. 18 ein schematisches Konzept der erfindungsgemäßen
Bildbearbeitung,
Fig. 19 anhand eines Blockschaltbilds den Schaltungsaufbau
eines Ausführungsbeispiels zur Durchführung des in
Fig. 18 gezeigten Bearbeitungskonzepts,
Fig. 20 eine Bildzusammensetzungstabelle,
Fig. 21A Teilbilddaten, die einen "Berg" darstellen,
Fig. 21B Maskierdaten der in Fig. 21A gezeigten Teilbilddaten,
Fig. 22 ein Flußdiagramm eines Ablaufs zur Erzeugung von
Teilbilddaten,
Fig. 23 Teilbilddaten, die eine "Person" darstellen,
Fig. 24 auf einem Bildschirm angezeigte Teilbilddaten,
Fig. 25A bis 25F schematisch einen Bewegungsablauf auf dem
Bildschirm,
Fig. 26 ein Flußdiagramm eines Wiederauffindvorgangs bei
diesem Ausführungsbeispiel,
Fig. 27 ein Flußdiagramm eines Steuerungsablaufs zur Bildbearbeitung
bei diesem Ausführungsbeispiel,
Fig. 28 eine Tabelle von Bearbeitungspunkten,
Fig. 29 eine Bildzusammensetzungstabelle,
Fig. 30 Teilbilddaten, die einen "Tennisspieler" darstellen
Fig. 31 eine Tabelle von Bearbeitungspunkten,
Fig. 32 Teilbilddaten, die den in Fig. 50 gezeigten "Tennisspieler"
beim Treffen eines Balles zeigen,
Fig. 33 ein Flußdigramm eines Steuerungsablaufs zur Hervorhebung
von gewählten Teilbilddaten,
Fig. 34 bis 37 Bildschirmansichten zur Verdeutlichung des in
Fig. 33 gezeigten Flußdiagramms,
Fig. 38 ein Flußdiagramm einer Alternative zu dem in Fig. 33
gezeigten Steuerungsablauf,
Fig. 39 ein Element, das wieder hervorgeholte Teilbilddaten
darstellt,
Fig. 40 ein Flußdiagramm eines weiteren Beispiels für den
Steuerungsablauf zur Verdeutlichung des die gewählten
Teilbilddaten darstellenden Elements,
Fig. 41A und 41B Bildschirmansichten zur Verdeutlichung des
in Fig. 33 gezeigten Steuerungsablaufs,
Fig. 42 eine Bildzusammensetzungstabelle bei einem weiteren
Ausführungsbeispiel der Erfindung,
Fig. 43A bis 43E anhand von Bildschirmansichten einen Ablauf
zur Auswahl eines der die Teilbilddaten darstellenden
Elemente,
Fig. 44 und 45 Flußdiagramme eines Wiederauffindvorgangs zum
Wiederauffinden von die Teilbilddaten darstellenden
Elementen,
Fig. 46 anhand einer Bildschirmansicht einen Zustand, bei
dem die betreffenden Teilbilder mit Markierungen
versehen werden,
Fig. 47 schematisch die gegenseitige Beziehung zwischen
einer Bildzusammensetzungstabelle, einer Teilbilddatentabelle
und den von den jeweiligen Teilbildern
dargestellten Figuren,
Fig. 48 anhand einer Bildschirmansicht einen Vorgang, bei
dem ein eine "Wolke" darstellendes Teilbild mit
einer Markierung versehen wird,
Fig. 49 die gegenseitige Beziehung zwischen einer Markierungstabelle
302z, Markierungsdaten und einem
Markierungsmaskenmuster,
Fig. 50 ein Flußdiagramm einen Steuerungsablauf zur Anzeige
von Teilbildern,
Fig. 51 die gegenseitige Beziehung zwischen der Teilbilddatentabelle
und dem jeweiligen Muster des
Teilbilds, wenn ein eine "Wolke" darstellendes
Teilbild mit einem herkömmlichen Gerät erzeugt wird,
Fig. 52 anhand einer Bildschirmansicht die Beziehung zwischen
der Teilbilddatentabelle und dem Muster des
jeweiligen Teilbilds, wenn das eine "Wolke" darstellende
Teilbild mit einem herkömmlichen Gerät erzeugt
wird,
Fig. 53 ein Flußdiagramm eines Steuerungsablaufs zur Anzeige
einer Markierung,
Fig. 54A anhand einer Bildschirmansicht die gegenseitige
Beziehung zwischen Markierungen, mit denen
Teilbilder markiert sind, und einem Grafikcursor,
Fig. 54B eine Bildschirmansicht, bei dem mittels des Grafikcursors
auf ein einen "Berg" darstellendes Teilbild
gedeutet wird,
Fig. 55 anhand eines Flußdiagramms einen Vorgang zum Auffinden
derjenigen Teilbilddaten, auf die der Grafikcursor
zeigt,
Fig. 56 die gegenseitige Beziehung zwischen einer Bildzusammensetzungstabelle
und Teilbildern bei einem weiteren
Ausführungsbeispiel der Erfindung,
Fig. 57A und 57B anhand von Bildschirmansichten die jeweilige
Position von Markierungen,
Fig. 58 anhand einer Bildschirmansicht einen Zustand, bei
dem die jeweiligen Markierungen den Wert 0 anzeigen,
Fig. 59 anhand einer Bildschirmansicht die Darstellung der
Markierungen, wenn ein einzelnes Teilbild aus zwei
Bildern besteht,
Fig. 60 anhand einer Bildschirmansicht einen Zustand, bei
dem für unterschiedliche Arten von Teilbildern
unterschiedlich geformte Markierungen verwendet
werden,
Fig. 61 anhand einer Bildschirmansicht einen Fall, bei dem
die angezeigte Form der Markierungen in Übereinstimmung
mit einer Änderung im Überlappungszustand der
Teilbilder geändert wird,
Fig. 62 schematisch die gegenseitige Beziehung zwischen
Bildzusammensetzungstabellen für die in Fig. 61
gezeigte Bildschirmansicht,
Fig. 63 eine Bildschirmansicht, bei der anstelle der Markierungen
Buchstaben verwendet werden,
Fig. 64 eine Bildschirmansicht, bei der zur Markierung der
jeweiligen Teilbilder Linienzeiger eingesetzt werden,
Fig. 65 die gegenseitige Beziehung zwischen einer Bildzusammensetzungstabelle, einer Teilbilddatentabelle
und den dargestellten Mustern der jeweiligen Teilbilder,
Fig. 66 eine Bildschirmansicht, bei dem ein eine "Wolke"
darstellendes Teilbild mittels eines Linienzeigers
markiert wird,
Fig. 67 eine Funktionstasten-Koordinatentabelle,
Fig. 68 ein Flußdiagramm eines Steuerungsablaufs zum
Anzeigen von Linienzeigern,
Fig. 69A und 69B anhand zweier Bilschirmansichten die Art
und Weise der Lageänderung der Linienzeiger,
Fig. 70 die gegenseitige Beziehung zwischen einer Markierungstabelle
und dem jeweiligen Muster der Markierungen,
Fig. 71 eine Bildschirmansicht, bei der mittels des Grafikcursors
auf eines der Teilbilder gezeigt wird,
Fig. 72 einen Speicherabschnitt für einen gewählten Abweichungswert,
Fig. 73 ein Flußdiagramm eines Steuerungsablaufs zur Anzeige
von Linienzeigern, wenn eine Vielzahl von
Teilbildern vorhanden ist,
Fig. 74 anhand einer Bildschirmansicht den Verlauf von
Linienzeigern, wenn ein einzelnes Teilbild aus zwei
Bildern besteht,
Fig. 75 anhand eines Blockschaltbilds den prinzipiellen
Aufbau eines weiteren Ausführungsbeispiels des Bildbearbeitungsgeräts,
Fig. 76A und 76B anhand zweier Bildschirmansichten die veränderte
Anzeigeform von Markierungen bei dem in Fig.
75 gezeigten Ausführungsbeispiel,
Fig. 77 anhand eines Flußdiagramms einen Steuerungsablauf
bei dem ersten Ausführungsbeispiel,
Fig. 78 ein Flußdiagramm eines Steuerungsablaufs zur Anzeige
von Markierungen und zur Bildspeicherung bei dem in
Fig. 75 gezeigten Ausführungsbeispiel,
Fig. 79 schematisch die Anordnung von Daten in einem Hilfsspeicher,
Fig. 80 Muster von Teilbildern, Maskenmuster und verschiedene
Datentabellen, die bei einem weiteren Ausführungsbeispiel
zur Zusammenstellung einer Zeichnung
verwendet werden, und
Fig. 81 anhand eines Flußdiagramms einen Steuerungsablauf
bei dem in Fig. 80 gezeigten Ausführungsbeispiel.
In der nachfolgenden Beschreibung werden für Teile oder Elemente,
die dem des eingangs beschriebenen herkömmlichen
Geräts entsprechen, die gleichen Bezugszeichen verwendet.
Zunächst wird anhand der Fig. 1 bis 3 und 5A bis 5I ein
Steuerungsablauf der Speicherung einer Gruppe von Teilbilddaten
näher erläutert.
Gemäß dem in Fig. 1 gezeigten Blockschaltbild weist ein
Ausführungsbeispiel des Bildbearbeitungsgeräts eine Zentraleinheit
bzw. CPU 105 auf, die zur Steuerung des gesamten
Geräts vorgesehen ist. Die CPU 105 führt Steuerungsabläufe
durch, die in einem internen Speicher 105a gespeichert sind.
Ein Speicher 110 besitzt einen Teilbilddaten-Speicherabschnitt
zur Speicherung einer Vielzahl von Teilbilddaten zur
Zusammenstellung bzw. zum Aufbau von Bildern bzw. Zeichnungen,
einen nicht-Transparenz- bzw. Verdeckungsdefinitionsdaten-Speicherabschnitt
zur Speicherung von nicht-Transparenz-
bzw. Verdeckungsdefinitionsdaten, die den überlagerten
Bereich einer Vielzahl von Teilbilddaten bei deren Anzeige
maskieren, einen Bildmuster- bzw. Musterspeicher 303, einen
Hinterseiten- bzw. Hintergrundspeicher 305 und einen Vorderseiten-
bzw. Vordergrundspeicher 307. Auf die Speicher 303,
305 und 307 wird später noch genauer eingegangen.
Fig. 2 zeigt anhand eines Flußdiagramms einen Steuerungsablauf
zur Speicherung einer Gruppe von Teilbilddaten bei
diesem Ausführungsbeispiel, während Fig. 3 die Belegung der
Speicher 302, 305 und 307 angibt. Der in Fig. 2 gezeigte
Steuerungsablauf ist in dem Speicher 105a gespeichert. Dieser
Ablauf wird dann durchgeführt, wenn mittels einer Zeigevorrichtung
bzw. Maus 103 auf eines der Teilbilder gezeigt wird,
aus denen sich das auf einer Kathodenstrahl-Anzeigevorrichtung
bzw. einem Monitor 101 angezeigte Bild zusammensetzt.
Gemäß Fig. 2 wird in einem Anfangsschritt S201 die Anzeige
bzw. der Bildschirm des Monitors 101 gelöscht, wodurch ein
rechteckförmiger Bereich 1201 (Fig. 5), innerhalb dessen ein
Bild bzw. eine Zeichnung zu erzeugen ist, in Weiß-Leerstellen
geändert bzw. mit diesen ausgefüllt wird. Der Schritt S201
entspricht daher dem eingangs in Verbindung mit Fig. 16
erläuterten Schritt S1601. In einem Schritt S202 wird der
Wert bzw. die Variable i mit einem Wert belegt, der durch
Addition von "1" zu der Nummer m derjenigen Teilbilddaten
erhalten wird, die das zu bearbeitende bzw. zu editierende
Objekt darstellen. Die das zu bearbeitende Objekt darstellenden
Teilbilddaten werden gewählt, indem der Grafikcursor
mittels der Maus 103 zu der Position bzw. dem Ort dieser
Teilbilddaten bewegt und anschließend eine Maustaste gedrückt
wird, wodurch die Bedienungsperson in die Lage versetzt wird,
diese Teilbilddaten zu bearbeiten. Es sind verschiedene Verfahren
verfügbar, um zu erfassen, welche der Teilbilddaten
auf die Bedienungsabläufe hin ausgewählt wurden, die die
Bedienungsperson zum Bestimmen der zu bearbeitenden Teilbilddaten
durchgeführt hat. Diese Verfahren werden jedoch nicht
näher erläutert, da sie für die Erfindung nicht wesentlich
sind.
Die Nummer m (mit 1 < m < n) entspricht dem m-ten Block einer
Bildzusammensetzungstabelle 302, wobei die durch diesen Block
definierten Teilbilddaten das zu bearbeitende Objekt darstellen.
Der Steuerungsablauf aus Schritten S203 bis S205 bildet eine
Schleife. Im Schritt S203 wird ein Vergleich durchgeführt,
während im Schritt S205 die Variable i inkrementiert wird. Im
Schritt S204 werden diejenigen Verdeckungsdefinitionsdaten
304-i, die den Teilbilddaten, die in größter Nähe zu den das
zu bearbeitende Objekt darstellenden Teilbilddaten oder zuoberst
oder zuäußerst dieser Teilbilddaten angezeigt werden,
entsprechen aufeinanderfolgend in einer logischen Summenbeziehung
(ODER) zur Bildschirmanzeige angezeigt. Die Schritte
S203 bis S205 stellen demnach einen Ablauf dar, der auf dem
Bildschirm aufeinanderfolgend diejenigen Verdeckungsdefinitionsdaten
304-i stapelt bzw. abbildet, die denjenigen Teilbilddaten
entsprechen, die am nächsten zu dem zu bearbeitenden
Teilbilddaten bzw. an der oberen oder äußeren Seite
derselben befindlich sind. Dies geschieht durch Berechnung
der logischen Summe (ODER) der Verdeckungsdefinitionsdaten
304-i.
Dieser Steuerungsablauf kann beispielsweise mittels eines
Geräts AS-300 der Firma Canon durchgeführt werden (Betriebssystem
MS-DOS). Bei diesem Gerät wird der Inhalt eines Bereichs
bzw. Speicherplatzes xi eines i-ten Anzeigedefinitionsblocks
in ein AX-Register übernommen, während der Inhalt
von yi in ein BX-Register gebracht wird. Anschließend wird in
einem CL-Register der Wert "0" eingestellt, ein Befehl
"INTO 15H" (soft-interrupt-Befehl) durchgeführt und der gegenwärtige
Punkt wird als Punkt Pi bestimmt. Daraufhin wird
der Inhalt des Bereichs bzw. des Speicherplatzes DOFFi in ein
DI-Register eingegeben, während der Inhalt des Speicherplatzes
DSFGi in ein ES-Register gebracht wird. Anschließend in
dem CL-Register der Code bzw. Wert "12" eingestellt, während
im DL-Register der Code "14", der die Bedeutung "Anzeige
durch logische Summe 90R0 der Anzeigefläche und der Bilddaten
geändert" hat, eingestellt wird, wodurch der Befehl "INTO 15H"
durchgeführt wird. Als Folge davon wird ein nicht-transparenter
bzw. verdeckter Bereich überlagert und angezeigt. Unter
der Annahme, daß die Nummer m gleich 3 ist, wird der Ablauf
des Schritts S204 für i = 4 und i = 5 durchgeführt. Als Folge
davon wird das in Fig. 5A dargestellte Bild angezeigt. Der
Inhalt dieser Anzeige wird in einem Folgeschritt S206 in den
Musterspeicher 303 übertragen. Ein Beispiel für eine derartige
Übertragung wird nachfolgend unter Bezugnahme auf das
vorstehend genannte Gerät AS-300 erläutert. Unter der Annahme,
daß die Koordinaten eines Punkts P₀ durch (x₀, y₀) ausgedrückt
sind, wird der gegenwärtige Punkt auf (x₀, y₀) eingestellt
(d. h., gemäß vorstehender Beschreibung werden in dem
AX-Register und dem BX-Register die Werte x₀ und y₀ eingestellt,
während im CL-Register der Wert "0" eingestellt wird,
um den Befehl "INTO 15" durchzuführen). Unter der Annahme, daß
die Koordinaten eines Punktes P₀′ am rechten unteren Ende der
Bildschirmanzeige bzw. Anzeigefläche (x₀′, y₀′) betragen,
wird im AX-Register und im BX-Register der Wert x₀′ bzw. y₀′
eingestellt und die Anfangsadresse einer Datenverwaltungs-
bzw. Bildstrukturtabelle 302 wird in eine Offset- bzw. Relativadresse
und eine Segmentadresse zerlegt. Die Relativadresse
wird in das DI-Register eingegeben, während die Segmentadresse
in das ES-Register eingegeben wird. Gleichzeitig wird
in das CL-Register ein Code "11" eingegeben, der die Datenübertragung
aus einem Bildspeicher bzw. Video-RAM 104 zum
Speicher angibt. Die Relativadresse und die Segmentadresse
des Musterspeichers 303, die die Bereiche bzw. Speicherplätze
zur Speicherung der Vordergrundform als Bilddaten sind bzw.
angeben, werden im vierten und fünften Wort der Datenverwaltungstabelle
302 eingestellt. Wenn ein Befehl "INFO 15H"
durchgeführt wird, werden die in Fig. 5A gezeigten Bilddaten
in den Musterspeicher 303 übertragen und die Parameter des
ersten bis dritten Worts der Tabelle 302, die den momentan
wirksamen bzw. bearbeiteten Bereich angeben, vom Gerät berechnet
und ausgegeben bzw. geschrieben.
Als Folge dieses Ablaufs werden diejenigen Daten, die denjenigen
nicht-transparenten Bereich betreffen, der durch sich
überlappende Bereiche einer Vielzahl von Teilbilddaten gebildet
wird, die sich auf der "oberen" oder "äußeren" Seite der
zu bearbeitenden Objekt- bzw. Zieldaten (ein Kreis in diesem
Fall) befinden, im Musterspeicher 303 gespeichert.
In einem Schritt S207 wird die Anzeigefläche erneut gelöscht
und der Bildaufbau begonnen. Dies wird mit Hilfe von eine
Schleife bildenden Schritten S209 bis S211 durchgeführt, in
denen die Variable i mit der Nummer m verglichen bzw. die
Variable i inkrementiert wird. In dem Zwischenschritt S210
werden die Teilbilddaten daher - beginnend mit dem innersten
bis hin zu denjenigen, die unmittelbar unter den zu bearbeitenden
Bilddaten bzw. Teilbilddaten liegen - successiv angezeigt.
Die durch die Schritte S209 bis S211 gebildete
Schleife ist demnach der durch die Schritte S203 bis S205
gebildeten Schleife ähnlich. Nimmt man wiederum an, daß die
Nummer m den Wert 3 hat, wird die Anzeige bzw. der Bildschirmaufbau
bis zu denjenigen Teilbilddaten durchgeführt,
die sich unmittelbar vor den den "Kreis" darstellenden Teilbilddaten
befinden, so daß auf der Anzeigefläche das in Fig.
5B gezeigte Bild angezeigt wird. Wenn der Wert der Variablen
i mit der Nummer m der zu bearbeitenden Teilbilddaten
schließlich übereinstimmt, wird infolge des im Schritt S209
durchgeführten Vergleichs zu einem Schritt S212 verzweigt,
wodurch die Schritte S210 und S211 übersprungen werden. In
diesem Zustand wird der Untergrund der zu bearbeitenden bzw.
Ziel-Teilbilddaten auf der Anzeigefläche erzeugt. Die Bilddaten,
die diesen Untergrund darstellen, werden zu dem Hintergrundspeicher
bzw. Hintergrundanzeigespeicher 305 übertragen
und in diesem gespeichert. Diese Speicherung kann auf gleiche
Weise wie bei dem vorstehend erläuterten Schritt S206 erfolgen,
mit der Ausnahme, daß die Relativadresse und die Segmentadresse
der Anfangsadresse einer Datenverwaltungstabelle
bzw. Verdeckungsdefinitionsdatentabelle 304 im DI-Register
bzw. im ES-Register eingestellt wird und daß das vierte und
fünfte Wort der Datenverwaltungstabelle 304 die Relativadresse
und die Segmentadresse des Hintergrundspeichers 305 speichern.
Daraufhin wird in einem Schritt S213 die Variable i auf den
Wert (m + 1) gesetzt und Schritte S215 bis S216 werden so lange
wiederholt, bis in einem Schritt S214 entschieden wird, daß
die Nummer n der obersten oder letzten Teilbilddaten erreicht
ist. Da die Variable i im Schritt S216 inkrementiert wird,
werden im Schritt S215 die Teilbilddaten, ausgehend von den
sich unmittelbar auf den Ziel-Teilbilddaten befindenden Teilbilddaten,
bis hin zu den obersten oder spätestens Teilbilddaten
angezeigt. Dieser Vorgang kann auf gleiche Weise wie
der des Schritts S210 durchgeführt werden. Wenn im Schritt
S214 festgestellt wird, daß die Variable i = n + 1, wird zu
einem Schritt S217 verzweigt. Nun wird das in Fig. 5C gezeigte
Bild angezeigt. Demnach wird auf der Anzeigefläche ein
Bild erzeugt, bei dem die Ziel-Teilbilddaten fehlen, d. h. ein
Bild ohne die den "Kreis" darstellenden Teilbilddaten.
Im Schritt S217 wird der Inhalt des Musterspeichers 203 auf
dem Anzeigebildschirm durch Berechnung des logischen Produkts
(UND) mit dem Anzeigebildschirm angezeigt. Dies kann durchgeführt
werden, indem der Rastervorgang auf eine logische Produkt-Betriebsart
(UND) eingestellt wird.
Im Falle des vorgenannten Geräts AS-300 werden die x- und y-Koordinaten
x₀ und y₀ des Punkts P₀ im AX-Register bzw. im
BX-Register eingestellt und das CL-Register wird auf "0"
gesetzt, wodurch der Befehl "INTO 15H" durchgeführt wird, um
den aktuellen bzw. gegenwärtigen Punkt zu den Koordinaten
(x₀, y₀) verschieben. Dann werden die Relativadresse und
die Segmentadresse der Datenverwaltungstabelle 302 im DI-Register
bzw. im ES-Register eingestellt, während in das CL-Register
ein Code "12" eingegeben wird, der die Datenübertragung
aus dem Speicher zu dem Bildspeicher 104 angibt bzw.
befiehlt. Gleichzeitig wird in das DL-Register ein Code "2"
eingegeben, der die Betriebsart zur Bildung des logischen
Produkts (UND) bezeichnet, um den Befehl "INTO 15H" durchzuführen.
Als Folge davon wird ein in Fig. 5D dargestelltes
Bild angezeigt, das aus der Vielzahl derjenigen Teilbilddaten
besteht, die sich auf der "oberen" oder "äußeren" Seite der
interessierenden bzw. Ziel-Teilbilddaten befinden. Die Anzeige
der auf der "oberen" oder "äußeren" Seite der Ziel-Teilbilddaten
befindlichen Teilbilddaten kann durchgeführt
werden, indem die Anzeigefläche gelöscht wird und indem die
Teilbilddaten anschließend successiv Teilbild für Teilbild
angezeigt werden. Dieser Anzeigevorgang wird jedoch nicht
bevorzugt, da die Bearbeitungsgeschwindigkeit insbesondere
dann herabgesetzt wird, wenn die Zahl der Teilbilddaten sehr
groß ist. Im Gegensatz dazu kann beim beschriebenen Ausführungsbeispiel
die Anzeige der auf der "oberen" oder "äußeren"
Seite der Ziel-Teilbilddaten befindlichen Teilbilddaten
mittels eines einzigen logischen Produktbildungs- und Übertragungsvorgangs
unabhängig von der Anzahl der Teilbilddaten
durchgeführt werden, da die Berechnung des logischen Produkts
mit demjenigen Bild bzw. denjenigen Bilddaten durchgeführt
wird, die bereits in dem Hintergrundspeicher 305 gespeichert
wurden, wie bereits erläutert wurde.
In einem Schritt S218 wird ein dem der Schritte S206 und S206
ähnlicher Vorgang durchgeführt, um das angezeigte Bild bzw.
die entsprechenden Bilddaten zu dem Vordergrundspeicher bzw.
Vordergrundanzeigespeicher 307 zu übertragen. Hierzu werden
diejenigen Adressen einer Datenverwaltungstabelle 306, die
die Anfangsspeicheradresse des Vordergrundspeichers 307 definieren,
im DI-Register und im EI-Register eingestellt und es
wird der Befehl "INTO 15H" durchgeführt, um den Inhalt des
Bildspeichers in diesen Speicher zu übertragen.
Infolge des vorstehend beschriebenen Vorgangs speichert der
Musterspeicher 303 das in Fig. 5A gezeigte Bild, während der
Hintergrundspeicher 305 das in Fig. 5B gezeigte Bild (bzw.
die Gruppe der Teilbilddaten) speichert. In ähnlicher Weise
speichert der Vordergrundspeicher 307 das in Fig. 5D gezeigte
Bild, welches ebenfalls aus einer Gruppe von Teilbilddaten
besteht.
In einem Schritt S219 wird schließlich eine Hochgeschwindigkeits-Anzeige
des gesamten Bilds durchgeführt.
Nachfolgend wird die Bearbeitung bzw. Editierung eines Bilds
unter Bezugnahme auf die Fig. 4A, 4B und 5A bis 5I näher
erläutert.
Zunächst wird unter Bezugnahme auf das in Fig. 4A gezeigte
Flußdiagramm ein Steuerungsablauf zur Durchführung einer
Bearbeitung eines gewählten Teilbildmusters bzw. der gewählten
Teilbilddaten erläutert. Dieser Steuerungsablauf ist
ebenfalls in dem Speicher 105a gespeichert.
In einem Anfangsschritt S401 wird der Inhalt des Hintergrundspeichers
305 in den Bildspeicher 104 übertragen. Das Übertragungsverfahren
kann im wesentlichen dem vorstehend beschriebenen
entsprechen. In diesem Fall wird der Rastervorgang
jedoch auf ein bloßes Wiedereinschreiben eingestellt.
Wenn das vorstehend genannte Gerät AS-300 verwendet wird,
kann dieser Wiedereinschreibungsvorgang sehr einfach dadurch
bewirkt werden, daß in das DL-Register ein Code "15" eingegeben
wird, der ein Beschreiben der Quelle bzw. Quelldaten
angibt.
Dieser Vorgang ermöglicht es, das in Fig. 5B gezeigte Bild
anzuzeigen, ohne deshalb die Anzeigefläche löschen zu müssen.
In einem Schritt S402 werden die zu bearbeitenden Ziel-Teilbilddaten
angezeigt. Dies kann dadurch erreicht werden,
daß die Variable i durch den Inhalt m eines Bereichs bzw.
Speicherplatzes 301 ersetzt und anschließend der gleiche
Vorgang wie bei dem vorstehend beschriebenen Schritt S204
durchgeführt wird. Da in diesem Fall m den Wert 3 hat, erhält
man das in Fig. 5E gezeigte Bild. In einem Schritt S403 wird
eine Invertierung der in dem Musterspeicher 303 gespeicherten
Daten durchgeführt, indem die Werte "1" und "0" der Daten
gegenseitig ersetzt bzw. substituiert werden. Weiterhin wird
das logische Produkt (UND) mit dem Bildspeicher 104 bzw.
dessen Inhalt berechnet, wodurch der nicht-transparente Bereich
der Teilbilder auf der "äußeren" der "oberen" Seite
des zu bearbeitenden bzw. Ziel-Bildes entfernt wird. Dieser
Vorgang kann ebenfalls durch Ausführung des Befehls "INTO 15H"
durchgeführt werden. Als Folge davon wird gemäß der Darstellung
in Fig. 5F ein Bild erzeugt, bei dem der rechte untere
Bereich des "Kreises" fehlt. In einem Schritt S404 wird die
logische Summe (ODER) der Daten im Vordergrundspeicher 307
und des Inhalts des Bildspeichers 104 berechnet, wodurch die
Teilbilddaten auf der "oberen" oder "äußeren" Seite der Ziel-Teilbilddaten
erneut angezeigt werden, so daß schließlich ein
in Fig. 12 gezeigtes Gesamtbild erzeugt wird. Dieser Vorgang
wird ebenfalls durch Ausführung des Befehls "INTO 15H" durchgeführt.
Da die Stapel- bzw. aufeinanderfolgende Übertragung
der angezeigten bzw. anzuzeigenden Daten allgemein mit einer
sehr hohen Geschwindigkeit durchgeführt werden kann, ist die
Übertragung der Daten aus den Speichern, wie z. B. dem Hintergrundspeicher
305, dem Musterspeicher 303 und dem Vordergrundspeicher
307, zu dem Bildspeicher 104 beinahe augenblicklich
abgeschlossen. Daher kann das Ergebnis der Bearbeitung
der Ziel-Teilbilddaten sofort in das endgültige angezeigte
Bild aufgenommen werden.
Als praktisches Beispiel für einen Bearbeitungs- bzw. Editierungsvorgang
sei nun angenommen, daß das zu bearbeitende
Objekt, das in diesem Fall die den "Kreis" darstellenden
Teilbilddaten sein sollen, mittels z. B. der Maus 103 zu
bewegen bzw. zu verschieben sei. Der Ablauf dieses Bearbeitungsvorgangs
wird nachfolgend unter Bezugnahme auf das in
Fig. 4B gezeigte Flußdiagramm im einzelnen erläutert. Auch
der diesem Flußdiagramm entsprechende Steuerungsablauf ist in
dem Speicher 105a gespeichert.
In einem Anfangsschritt S405 werden die Koordinaten der Bestimmungs-
bzw. Zielposition, zu der die Teilbilddaten zu
verschieben sind, mittels einer Zeigevorrichtung, die in
diesem Fall die Maus 103 ist, eingegeben. Wenn das vorstehend
genannte Gerät AS-300 eingesetzt wird, wird in das AX-Register
ein Code "3" eingegeben, wodurch ein Befehl "INTO 33H" in
der Weise durchgeführt wird, daß eine den Zustand einer
ersten Taste auf der Maus betreffende Information im AX-Register
eingestellt wird. So wird im AX-Register beispielsweise
der Wert "1" eingestellt, wenn diese Taste im "Ein"-Zustand
ist, wohingegen der Wert "0" eingestellt wird, wenn
diese Taste im "Aus"-Zustand ist. In der Zwischenzeit wird
der Zustand einer zweiten Taste auf der Maus im CX-Register
eingestellt, während die x-Koordinate und die y-Koordinate
der Schreibmarke bzw. des Cursors im BX-Register bzw. im DX-Register
eingestellt werden.
In einem Folgeschritt S406 wird ein Vergleich zwischen den
Inhalten der Bereiche bzw. Speicherplätze xi und yi des
Anzeige- bzw. Anzeigepositionsdefinitionsblocks 1302-m und der
im Schritt S405 eingegebenen Koordinaten durchgeführt. Wenn
eine Differenz bzw. Abweichung in der x- oder y-Koordinate
oder in beiden Koordinaten festgestellt wird, verzweigt
der Ablauf zu einem Schritt S407. Demgegenüber wird zu einem
Schritt S408 verzweigt, wenn sowohl die x- als auch die y-Koordinaten
übereinstimmen.
Im Schritt S407 werden die Inhalte der Speicherplätze xi und
yi des Anzeigedefinitionsblocks 1302-m in das AX-Register
bzw. das BX-Register eingegeben, während im CL-Register zur
Durchführung des Befehls "INTO 15H" der Wert "0" eingestellt
wird, um den gegenwärtigen bzw. aktuellen Punkt zu der Position
eines Punkts Pm zu verschieben. Daraufhin wird eine
Adresse gebildet, indem der Wert 10 zu der Adresse der Teil-
bzw. Teildaten-Definitionstabelle, auf die die Bereiche bzw.
die Speicherplätze DOFFm und DESGm zeigen, addiert wird. Die
Relativadresse und die Segmentadresse der auf diese Weise
gebildeten Adresse werden in das DI-Register bzw. in das ES-Register
eingeschrieben. Dann wird ein Code "6", der eine
Exklusiv-ODER-Verknüpfung mit der Bildschirmanzeige angibt,
in das DL-Register eingegeben, während der Code "12", der das
Einschreiben in den Bildspeicher 104 angibt, in das CL-Register
eingegeben wird. Daraufhin wird der Befehl
"INTO 150H" durchgeführt. Als Folge davon werden die Teilbilddaten
im m-ten Block gelöscht. Hierdurch wird eine Weiß/Schwarzinvertierung
in demjenigen Bereich hervorgerufen, bei
dem die Teilbilddaten auf der "oberen" oder "äußeren" Seite
der Ziel-Teilbilddaten einander überlappen. Diese Invertierung
kann jedoch dann vernachlässigt werden, wenn der Vorgang
mit hoher Geschwindigkeit durchgeführt wird. Als Ergebnis
wird auf der Anzeigefläche ein in Fig. 5G gezeigtes Bild
erzeugt.
In einem Schritt S409 werden die in dem Schritt S405 erhaltenen
Speicherplätze xm und ym des Anzeigedefinitionsblocks
1302-m wieder eingeschrieben. In einem Folgeschritt S410 wird
der gleiche Vorgang wie im Schritt S407 durchgeführt.
Hierdurch wird eine Exklusiv-ODER-Verknüpfung mit den neuen
Koordinaten berechnet und die Ziel-Teilbilddaten, die in
diesem Fall einen "Kreis" darstellen, werden an der gewählten
bzw. angegebenen Position angezeigt.
Für den Fall, daß die Nummer m gleich 3 ist, wird im Schritt
S405 der Punkt P3-1 eingegeben und die Exklusiv-ODER-Verknüpfung
der Anzeigedefinitionsdaten 1305-3 mit demjenigen rechteckförmigen
Bereich, dessen linkes oberes Eck im Punkt P3-1
liegt, wird berechnet, wodurch auf der Anzeigefläche ein in
Fig. 5H gezeigtes Bild erhalten wird.
Der Ablauf kehrt daraufhin zu dem Schritt S405 zurück und die
vorstehend beschriebenen Vorgänge werden wiederholt.
Wenn keine Änderung in den Koordinaten vorliegt, d. h., wenn
mittels der Überprüfung im Schritt S406 festgestellt wird,
daß die Inhalte der Speicherplätze xi und yi des Anzeigedefinitionsblocks
1302-m mit den im Schritt S405 eingegebenen
Koordinaten übereinstimmen, wird zu dem Schritt S408 verzweigt.
Im Schritt S408 wird der Zustand der ersten Taste zum
Zeitpunkt der Eingabe der Koordinaten überprüft. Wenn diese
Taste nicht gedrückt ist, kehrt der Ablauf zu dem Schritt
S405 zurück, wodurch der beschriebene Vorgang wiederholt
wird. Dies hat zur Folge, daß sich der "Kreis" in Übereinstimmung
mit der Bewegung der Maus über die Anzeigefläche
bewegt, bis die erste Taste gedrückt wird. Wenn der "Kreis"
die gewünschte Position erreicht hat, drückt bzw. betätigt
die Bedienungsperson diese Maustaste. Dieser Vorgang wird im
Schritt S408 erfaßt, worauf der Ablauf zu einem Schritt S411
verzweigt.
Im Schritt S411 wird der vorstehend in Verbindung mit Fig. 4A
beschriebene Vorgang durchgeführt. Demnach wird zunächst der
Untergrund angezeigt, der "Kreis" wird an der richtigen Position
angezeigt und anschließend wird das Bild auf der "äußeren"
oder "oberen" Seite des "Kreises" wieder auf diesem
angezeigt. In der Zwischenzeit wird daher gemäß der Darstellung
in Fig. 5H ein Teil des "Kreises" an der linken oberen
Ecke des "Quadrates" angezeigt, während der den "Diamanten"
und das "Quadrat" überlappende Teil des "Kreises" gelöscht
wird. Dieser vorübergehende Zustand der Anzeige wird jedoch
nach sehr kurzer Zeit beendet und es wird eine Hochgeschwindigkeitsanzeige
durchgeführt, um das in Fig. 5I gezeigte Bild
auf der Anzeigefläche zu erzeugen.
Nachfolgend wird unter Bezugnahme auf die Fig. 6 bis 10 die
Bildbearbeitung bei einer Farbanzeige näher beschrieben.
Bei dem nachfolgend beschriebenen Bildbearbeitungsgerät werden
nicht-transparent- bzw. Verdeckungsdaten und Anzeigedaten
im nicht-transparenten bzw. verdeckten Bereich separat vorbereitet
und angezeigt.
Nachfolgend wird ein Gerät bzw. ein System zur Durchführung
einer Farbanzeige näher beschrieben. Bei einigen Farbanzeigegeräten
wird jedes Bildelement durch eine Vielzahl von Bits
dargestellt. (In anderen Fällen werden für jede der drei
Ebenen R, G und B Verdeckungsdaten verwendet. In einem solchen
Fall kann der nachfolgend beschriebene Vorgang für jede
der Ebenen R, G und B durchgeführt werden, weshalb auf eine
nähere Beschreibung einer derartigen Anwendung verzichtet
wird.)
Wenn eine Anzeigevorrichtungs- bzw. Monitorschnittstelle 107
geeignet aufgebaut ist, beispielsweise mit Hilfe einer Anzeigesteuereinrichtung
bzw. eines Bildprozessors HD 63 484, der
von der Firma Hitachi hergestellt wird, es ist möglich, einem
einzelnen Bildelement sowohl eine Transparenz als auch eine
Farbe zuzuordnen. Die Verwendung eines Bildprozessors, der
eine derartige Funktion aufweist, ermöglicht den Verzicht auf
den Musterspeicher 303, der bei dem vorstehend beschriebenen
monochromen Bildbearbeitungsgerät verwendet wird. Im Falle
einer monochromen Anzeige sind nur zwei Zustände des Bildelements
verfügbar bzw. möglich: nämlich ein erster Zustand, bei
dem das Bildelement gesetzt bzw. eingeschaltet ist, und ein
zweiter Zustand, bei dem das Bildelement nicht gesetzt bzw.
ausgeschaltet ist. In einem solchen Fall ist es daher notwendig,
neben den Bilddaten die Nicht-Transparenz- bzw. Verdeckungsdaten
zu verwenden. Im Gegensatz dazu kann bei einer
Farbanzeige jedes Bildelement durch mehrere Bits, nämlich
gewöhnlich 3 oder mehr Bits dargestellt werden, wodurch die
Verdeckungsdaten gebildet werden können, indem von einem der
mehreren Bits Gebrauch gemacht wird.
Nachfolgend wird ein Ausführungsbeispiel der Erfindung beschrieben,
bei dem der Bildprozessor HD 63 484 in einer grafischen
Bit-Betriebsart mit 4 Bits pro Bildelement eingesetzt
wird.
In diesem Fall weist jedes Wort gemäß Fig. 6 16 Bits auf, die
auf 4 Bildelemente mit je 4 Bits aufgeteilt sind. Jedes Wort
enthält daher Daten, die vier Bildelementen entsprechen.
Jedes Bildelement hat vier Bits, die jeweils einem Signal Y
(Helligkeit), einem Signal B (Blau), einem Signal G (Grün) und
einem Signal R (Rot) zugeordnet sind. Die Kombination dieser
Farben kann geändert werden, um die Farben mittels einer
Verweistabelle zu ändern. Alternativ kann eine Zuordnung in
der Weise getroffen werden, daß die Helligkeit auf einen
Standardpegel eingestellt wird, wenn der Pegel des Signals Y
den Wert "1" hat, und auf einen verringerten Pegel eingestellt
wird, wenn der Pegel des Signals Y den Wert "0" hat.
Wenn das dem Signal B zugeordnete Bit den Wert "1" hat,
während die anderen drei Bits den Wert "0" haben, d. h., wenn
die Anzeige in blauer Farbe mit reduzierter Helligkeit durchgeführt
wird, wird die Anzeigefarbe im letzteren Fall beinahe
in Schwarz geändert. Bei diesem Ausführungsbeispiel wird
diese dunkelblaue Farbe daher nicht zur Anzeige verwendet.
Der vier Bit breite Code "0100", der diesem Zustand bzw.
dieser Farbe entspricht, wird vielmehr als "transparent"
definiert. Obgleich in der nachfolgenden Beschreibung entsprechende
Transparenzdaten daher durch "0100" dargestellt
werden, ist dies nicht die einige Darstellungsform. Die
Transparenzdaten können vielmehr auch durch andere Bitmuster
gebildet werden.
Bei diesem Ausführungsbeispiel wird die Hintergrundfarbe des
Anzeigeschirms bzw. der Anzeigefläche als "transparent" definiert.
Dies ermöglicht es, nur die Hintergrundfarbe (Transparenzdaten)
in eine andere Anzeigefarbe ändern zu müssen. Bei
diesem Ausführungsbeispiel wird die blaue Farbe mit reduzierter
Helligkeit für die Transparenzdaten verwendet, weshalb
die Hintergrundfarbe während des Betriebs nicht zu anregend
für die Augen der Bedienungsperson ist.
Fig. 7 zeigt anhand eines Blockschaltbilds den schematischen
Aufbau eines Ausführungsbeispiels eines Bildbearbeitungsgeräts
zur Verwendung der oben genannten Daten. Ein Teilbild-
bzw. Framespeicher 701 weist einen der Bildschirmanzeige
zugeordneten Anzeigebereich 702 sowie einen Pufferbereich 703
auf. Teilbildelemente bzw. -daten werden von einem externen
Speicher her, wie z. B. von einer Magnetplatte 111 her, in den
Pufferbereich 703 übertragen, während der Anzeigebereich bzw.
dessen Inhalt mittels eines Grafikkopierbefehls zu einer
Bildschirmsteuereinheit 704 übertragen wird. Die bei diesem
Ausführungsbeispiel verwendete Bildschirmsteuereinheit 704
kann z. B. der vorstehend genannte Bildprozessor HD 63 484 sein
und ist über eine Halbbildpuffer- bzw. Framepuffer-Verbindungsschaltung
705 mit dem Framespeicher 701 und dem Monitor
101 verbunden. Die Bildschirmsteuereinheit 704 (HD 63 484) ist
in der Lage, die Datenübertragung zwischen dem Framespeicher
701 und der Magnetplatte 111 oder dem Hauptspeicher 110
mittels direktem Speicherzugriff (DMA) durchzuführen. Zu
diesem Zweck ist eine Steuereinheit für den direkten Speicherzugriff
bzw. eine DMA-Steuereinheit 706 mit einem Bus 106
in der Weise verbunden, daß die Bildschirmsteuereinheit 704
oder eine Plattenschnittstelle 112 die DMA-Übertragung unter
der Steuerung der DMA-Steuereinheit 706 durchführen kann.
Aus Fig. 7 ist zu erkennen, daß in dem Pufferbereich 703 zwei
Abschnitte 703-1 und 703-2 belegt bzw. vorgesehen sind, von
denen jeder die gleiche Größe wie die Bildanzeige in dem
Anzeigebereich 702 hat. Die Abschnitte 703-1 und 703-2 können
im wesentlichen als äquivalent zu dem Vordergrundspeicher 307
und dem Hintergrundspeicher 305, die vorstehend beschrieben
wurden, angesehen werden. In dem nun beschriebenen Ausführungsbeispiel
werden die Teilbilddaten auf eine nachfolgend
in Verbindung mit Fig. 10 beschriebene Weise aufgezeichnet
bzw. angezeigt.
Bei dem zuvor beschriebenen Ausführungsbeispiel wird der
Teildefinitionsblock 1303-i durch die Speicherplätze DOFFi
und DSEGi des Anzeigedefinitionsblocks 1302 i bezeichnet bzw.
adressiert. Bei dem nunmehr beschriebenen Ausführungsbeispiel
wird hingegen ein Plattenzeiger DP-i verwendet. Der Plattenspeicher
DP-i ist in der Lage, auf diejenigen Positionen
auf der Magnetplatte zu zeigen, an denen vier Bit breite
Teilbilddaten 1001-i gespeichert sind. Die in der x-Richtung
gezählte Anzahl von Punkten wird in einem Bereich bzw. Speicherplatz
DX-i eines Teildefinitionsblocks 1002-i gespeichert,
während die in der y-Richtung gezählte Anzahl von
Punkten in einem Speicherplatz DY-i desselben gespeichert
wird.
Die Anzahl der in der x-Richtung gezählten Punkte ist ein
Vielfaches von 4. Wenn die durch die Anzahl der Punkte ausgedrückte
Größe des recheckförmigen Bereichs in der x-Richtung
nicht ein Vielfaches von 4 ist, werden an die Linke oder die
rechte Seite des rechteckförmigen Bereichs Transparenzdaten
angehängt, um dem rechteckförmigen Bereich eine Länge zu
geben, die ein Vielfaches von 4 ist. In allen Teilbilddaten
1001-i werden die in dem schraffierten Bereich befindlichen
Bildelemente durch die vier Bit breiten Daten "0100" (Transparenzdaten)
dargestellt, während die Bildelemente in dem
schwarz dargestellten Bereich zu 4 Bit breiten Daten gemacht
werden, die der jeweiligen Farbe entsprechen und z. B. den
Wert "0000" haben. Auf ähnliche Weise werden die Bildelemente
in dem weißen Bereich so eingestellt, daß sie dem Wert "1111"
entsprechen. Auf diese Weise werden in horizontaler Richtung
über die volle Länge des (rechteckförmigen) Bereichs Bilddaten
gebildet, die aus Worten bestehen, von denen jedes vier
Bildelemente mit jeweils vier Bits enthält. Anschließend
werden auf die gleiche Weise die Daten der Bildelemente der
nächsten Zeile, beginnend mit deren linker Endposition, erzeugt.
Die auf diese Weise erzeugten Daten werden geeignet
gespeichert.
Der Bildprozessor HD 63 484 besitzt einen Befehl, der ein bezeichnetes
Rechteck im Framespeicher verschiebt, wobei
gleichzeitig ein Vergleich zwischen einem Vergleichs-Farbregister
und Zeichenpunktdaten sowie eine Berechnung durchgeführt
wird, aufgrund deren Ergebnis die Zeichenpunktdaten nur
dann durch die Quelldaten ersetzt werden, wenn als Ergebnis
des Vergleichs eine Übereinstimmung festgestellt wird.
Nachfolgend wird ein mittels der vorstehend beschriebenen
Bildschirmsteuereinheit durchgeführter Bildbearbeitungsvorgang
näher erläutert, wobei insbesondere auf die in den Fig.
8 und 9 gezeigten Flußdiagramme Bezug genommen wird.
Die diesen Flußdiagrammen entsprechenden Steuerungsabläufe
sind in dem Speicher 105a gespeichert.
In einem Anfangsschritt S801 wird der Bildanzeigebereich bzw.
der Framespeicher 701 mit dem Farbcode "0100" (Transparenzdaten)
besetzt, wodurch alle in dem Bildanzeigebereich befindlichen
Bildelemente in den Transparenzcode geändert werden.
Der Farbcode "0100" wird gleichzeitig in dem Vergleichs-Farbregister
eingestellt. In einem Folgeschritt S802 wird die
Variable i als Startwert mit der Anzahl n der Teilbilddaten
belegt. In einem Schritt S805 wird die Variable i dekrementiert
und in einem Schritt S803 wird überprüft, ob der Wert
der Variablen i größer als die Nummer m der Ziel-Teilbilddaten
ist. Solange dieser Vergleich ergibt, daß i < m ist, wird
ein Schritt S804 in einer Schleife wiederholt durchlaufen.
Der Schritt S804 wird daher, beginnend mit den innersten oder
untersten Teilbilddaten, für die aufeinanderfolgenden Teilbilddaten
wiederholt durchgeführt. Im Schritt S804 wird die
Adresse des Anzeige- bzw. Teildefinitionsblocks 1002-i unter
Bezugnahme auf die Anzeigedefinitionsadresse 1303-i berechnet
und der Ort, an dem die Teilbilddaten auf der Magnetplatte
gespeichert sind, wird aus dem Bereich DP-i bzw. aus dem
Bereich, auf den der Plattenzeiger DP-i zeigt, ausgelesen.
Die derart ausgelesene Adresse wird in der Plattenschnittstelle
112 als Platten-Leseadresse eingestellt. Gleichzeitig
wird der Bildschirmsteuereinheit 704 ein Datenschreibbefehl
gegeben, um das Einschreiben der Daten in den Framepuffer
mittels einer DMA-Datenübertragung zu ermöglichen. Dieser
Datenschreibbefehl beinhaltet Parameter, die, ausgedrückt
durch die in Bereichen bzw. Speicherplätzen DX-i und DY-i
gespeicherten Werte, die horizontale und vertikale Länge der
Daten angeben. Vor diesem Vorgang wird eine
Lese/Schreibtaste der Bildschirmsteuereinheit 704 in der
Weise eingestellt, daß sie auf das vordere Ende des Pufferbereichs
703 zeigt. Als Folge davon werden die Bilddaten 1001-i
zu dem vorderen Ende des Pufferbereichs 703 durch direkten
Speicherzugriff bzw. DMA übertragen. In den Bildprozessor
HD 63 484 werden Befehle und dazugehörende Parameter durchgeführt,
indem Daten in ein FIFO-Register eingeschrieben werden,
welches mit besonderen Registern verbunden ist.
Anschließend wird ein Verschiebebefehl für den gegenwärtigen
Punkt übertragen. Der Inhalt des Bereichs xi in dem Anzeigedefinitionsblock
wird als Parameter in dem ersten Bit, d. h.
der x-Koordinate, des Verschiebebefehls eingestellt, während
der Inhalt des Bereichs yi in dem zweiten Bit, d. h. der y-Koordinate,
des Verschiebebefehls eingestellt wird.
Daraufhin wird ein Kopierbefehl zum Kopieren des rechteckförmigen
Bereichs zugeführt. In diesem Fall wird die Berechnungsart
nur dann in Form einer Zeichnung übertragen, wenn
die Zeichen- bzw. die Zeichnungspunktdaten gleich dem Inhalt
des Vergleichs-Farbregisters sind. Das heißt, die Teilbilddaten
werden nur dann geschrieben, wenn die Daten im Bildanzeigebereich
bzw. im Framespeicher 701 den Wert "0100" haben. Als
Folge davon sind die zu den Bildanzeigebereich 701 übertragenen
Bilder so zu betrachten, als wenn sie innen erzeugt
worden wären. Die nachfolgenden Parameter sind die x-Koordinate
der Quelldaten, die y-Koordinate der Quelldaten, die
Anzahl der Bildelemente in x-Richtung und die Anzahl der
Bildelemente in y-Richtung. Diese Parameter können die Daten
des Pufferbereichs sein, zu dem mittels einer DMA-Übertragung
Daten übertragen wurden. Die Anzeige kann somit an der bezeichneten
Position durchgeführt werden, indem die dem vorderen
Ende des Pufferbereichs entsprechenden x- und y-Koordinatenwerte
eingegeben werden und indem die Inhalte der Speicherplätze
DX-i und DY-i als die jeweilige Anzahl von Bildelementen
eingegeben werden.
Gemäß vorstehender Beschreibung wurde zu Beginn der gesamte
Anzeigebereich in den Transparenzcode bzw. in die Transparenzdaten
umgesetzt. Daher werden die Daten im Bereich der
Transparenzdaten, außer in dem Bereich, der in Bilddaten
geändert wurde, in Übereinstimmung mit dem Bereich der darüberliegenden
Bilddaten, mit Ausnahme desjenigen Bereichs,
der den Transparenzcode aufweist, wieder eingeschrieben. Die
darunterliegende Bilddaten sind daher so zu betrachten, als
wenn sie unter den darüberliegenden Bilddaten plaziert wären,
da das Wiedereinschreiben mit den darunterliegenden Bilddaten
nur in dem Bereich durchgeführt wird, der nicht durch die
darüberliegenden Bilddaten erneut beschrieben wurde.
Wenn eine Verzweigung des Ablaufs vom Schritt S803 zum
Schritt S806 gewünscht wird, wird diejenige Gruppe der Teilbilddaten
angezeigt, die sich auf der "oberen" oder der
"inneren" Seite der Ziel-Bilddaten befinden. Wenn die Nummer
m auf den Wert 3 eingestellt wurde, ergibt sich das in Fig.
5D gezeigte Bild. Im Schritt S806 wird der diesem Zustand
entsprechende Inhalt der Anzeige in den Abschnitt 705-1 übertragen.
Dies kann durchgeführt werden, indem als Berechnungs-Betriebsart
ein Kopierbefehl für den rechteckförmigen Bereich
verwendet wird, der die Farbdaten "000" schreibt. Um zu
erreichen, daß die Übertragung des Inhalts der Anzeige zu dem
Abschnitt 703-1 erfolgt, wird der gegenwärtige Punkt auf die
Koordinaten des linken oberen Eckpunkts P₀ des Abschnitts
703-1 eingestellt und zu der Bildschirmsteuereinheit 704 wird
ein Kopierbefehl für den rechteckförmigen Bereich mit Parametern
übertragen, die die Anzahl der Bildelemente in horizontaler
und vertikaler Richtung angeben, worauf die Übertragung
durchgeführt wird.
In einem Schritt S807 wird die Anzeigefläche 1201 erneut in
den transparenten Zustand gebracht. In einem Schritt S808
wird die Variable i durch den Wert (m-1) besetzt. Anschließend
wird ein Schritt S810 in einer durch Schritte S809
bis S811 gebildeten Schleife wiederholt durchgeführt. Der
Schritt S810 wird mit Ausnahme der Ziel-Teilbilddaten für
diejenigen aufeinanderfolgenden Teilbilddaten durchgeführt,
die von den unmittelbar "unter" den Ziel-Teilbilddaten befindlichen
bis hinab zu den "innersten" Teilbilddaten angeordnet
sind. Wenn der Ablauf die Schleife im Schritt S809
verlassen hat und zum Schritt S812 verzweigt ist, wird auf
der Anzeigefläche daher nur der Hintergrund gemäß der Darstellung
in Fig. 5B angezeigt. Im Schritt S812 werden die
entsprechenden Hintergrunddaten in den Abschnitt 703-2 übertragen.
Diese Übertragung wird auf gleiche Weise wie die
vorstehend beschriebene Übertragung in den Abschnitt 703-1
durchgeführt.
In einem Schritt S813 wird das Bild erneut angezeigt. Dieser
Vorgang wird nachfolgend unter Bezugnahme auf Fig. 9 näher
erläutert. In einem Anfangsschritt S901 wird die gesamte
Anzeigefläche auf gleiche Weise wie im vorstehend beschriebenen
Schritt S801 mit den Transparenzdaten besetzt und in dem
Vergleichsregister wird der Transparenzcode "0100" eingestellt.
In einem Schritt S902 werden die in dem Abschnitt 703-1
gespeicherten Vordergrunddaten in den Anzeigebereich 702
übertragen und in einem Schritt S903 wird die Variable i mit
dem Wert m belegt, um die Anzeige der Ziel-Teilbilddaten zu
ermöglichen. Die Anzeige der Ziel-Teilbilddaten wird in einem
Schritt S904 durchgeführt. Der im Schritt S904 durchgeführte
Vorgang kann dem des Schritts S804 entsprechen. In einem
Schritt S905 werden die in dem Abschnitt 703-2 gespeicherten
Hintergrunddaten durch einen Vorgang in der Berechnungs-Betriebsart
"100" in den Anzeigebereich 702 übertragen.
Auf diese Weise wird ein sich aus einer Vielzahl von Teilbilddaten
zusammensetzendes Bild erzeugt. In diesem Zustand
verbleiben die dem Transparenzcode entsprechenden Bereiche
jedoch häufig auf der Anzeigefläche. In einem Schritt S906
wird der Transparenzcode in diesen Bereichen daher in einen
Code geeigneter Farbe, wie z. B. Weiß, geändert, so daß die
transparenten Bereiche beispielsweise mit der Farbe Weiß
gefüllt werden. Dies kann durch Ausführung eines Füllbefehls
zum Ausfüllen des rechteckförmigen Bereichs in der Berechnungs-Betriebsart
"100" erreicht werden.
Der nachfolgende Bearbeitungsvorgang entspricht im wesentlichen
dem in Verbindung mit dem monochromen Bildbearbeitungsgerät
beschriebenen, so daß auf eine Beschreibung an
dieser Stelle verzichtet wird.
Obwohl vorstehend die "Verschiebung" bestimmter Teilbilddaten
als Beispiel für den Bearbeitungsvorgang beschrieben wurde,
ist die Erfindung hierauf nicht beschränkt. Vielmehr können
auch andere Arten von Bearbeitungsvorgängen in gleicher Weise
durchgeführt werden, wie z. B. eine Rotation oder eine Korrektur.
Wie der vorstehenden Beschreibung zu entnehmen ist, werden
bei diesem Ausführungsbeispiel der Erfindung die Hintergrunddaten
und die Vordergrunddaten voneinander getrennt erzeugt,
wenn jedes Teilbild angezeigt wird, so daß die Bedienungsperson
bei der Bearbeitung von ausgewählten Teilbilddaten das
Ergebnis dieser Bearbeitung sehr schnell bestätigen bzw.
erkennen kann, da das endgültige Bild nach jeder Bearbeitung
beinahe augenblicklich aufgebaut ist. Als Folge davon ist die
Geschwindigkeit des Bearbeitungsvorgangs merklich erhöht und
der Bearbeitungsvorgang selbst wesentlich erleichtert.
Obgleich die vorstehend beschriebenen Ausführungsbeispiele
bestimmte Systeme oder Geräte beinhalten, wie z. B. das Gerät
AS-300 der Firma Canon und den von der Firma Hitachi, Ltd.
hergestellten Bildprozessor HD 63 484, sind diese Systeme oder
Geräte nur als Beispiele aufgeführt, wobei äquivalente Einrichtungen
verwendet werden können, um die gleichen Ergebnisse
zu erzielen. Falls notwendig, können die Funktionen dieser
Systeme oder Geräte durch entsprechende Steuerungsabläufe
realisiert werden.
Bei den beschriebenen Ausführungsbeispielen werden die Teilbilddaten
auf der "inneren" oder der "unteren" Seite aller
Teilbilddaten und die Teilbilddaten auf der "äußeren" oder
der "oberen" Seite aller Teilbilddaten in Gruppen erzeugt und
gespeichert, so daß die Bearbeitung beliebig gewählter Teilbilddaten,
die ein Bild darstellen, sehr leicht und sofort
durchgeführt werden kann, ohne hierzu ein kompliziertes System
zu benötigen.
Nachfolgend wird unter Bezugnahme auf Fig. 17 die Speicherung
von Gruppen weiterer Teilbilddaten näher erläutert.
Bei den voranstehenden Ausführungsbeispielen wird der nicht-transparente
Bereich eines Bildes durch Überlagerung von
Teilbilddaten auf der oberen oder äußeren Seite eines bestimmten
Teilbilds erzeugt und in dem Musterspeicher 303
gespeichert. Daraufhin wird die Anzeigefläche gelöscht und
die Teilbilddaten werden aufeinanderfolgend beginnend mit den
innersten bis hin zu denjenigen Teilbilddaten, die unmittelbar
unter den bestimmten Teilbilddaten liegen, ausgegeben,
wobei der nicht-transparente Bereich successiv korrigiert
wird, und das auf diese Weise durch die darunterliegenden
Teilbilddaten erzeugte Bild wird in dem Hintergrundspeicher
305 in Form von Hintergrund-Anzeigedaten gespeichert. Daraufhin
werden die darüberliegenden Teilbilddaten successiv,
beginnend mit den unmittelbar über den bestimmten Teilbilddaten
liegenden bis hin zu den obersten Teilbilddaten, angezeigt,
während der nicht-transparente Bereich successiv korrigiert
wird. Daraufhin wird das logische Produkt (UND) des
auf diese Weise erzeugten Bildes und des in dem Speicher 303
gespeicherten nicht-transparenten Bereichs berechnet, um das
Vordergrundbild zu erhalten, das anschließend im Vordergrundspeicher
307 gespeichert wird. Nach der gewünschten Bearbeitung
des bestimmten Teilbilds bzw. der bestimmten Teilbilddaten
wird eine Reihe von Operationen durchgeführt, einschließlich
der Anzeige des Hintergrundbilds, der Anzeige des bestimmten
Teilbildes, des Ausschneidens des nicht-transparenten
Vordergrundbereichs und der Anzeige des Vordergrundbilds,
wodurch das endgültige Bild äußerst schnell aufgebaut werden
kann.
Wie zu erkennen ist, sind die beschriebenen Ausführungsbeispiele
nicht dazu ausgelegt, die aufeinanderfolgenden Operationen
in einer solchen Reihenfolge oder Ordnung durchzuführen,
bei der die Hintergrunddaten angezeigt und gespeichert,
die Anzeigefläche gelöscht, die Vordergrunddaten angezeigt
und gespeichert, die Anzeigefläche gelöscht und der nicht-transparente
Vordergrundbereich angezeigt und gespeichert
wird. Die hierzu unterschiedliche Reihenfolge oder Ordnung
der einzelnen Operationen ist nicht etwa eine Entwurfsfrage,
sondern hat die nachfolgend erläuternde Bedeutung.
Die Verfahren zum Anzeigen eines Bildes auf einer Anzeigevorrichtung
müssen grob in zwei Arten unterteilt werden: nämlich
ein erstes Verfahren, bei dem das endgültige, fertig geformte
Bild auf einmal bzw. in einem Stück angezeigt wird, so daß
der Zustand des Bildes während seiner Erzeugung nicht angezeigt
wird, sowie ein zweites Verfahren, bei dem der Inhalt
der Anzeige augenblicklich geändert wird, um die aufeinanderfolgenden
Zustände des gerade erzeugten Bildes darzustellen.
Gewöhnlich wird das zweite Verfahren von den Anwendern bevorzugt,
obgleich es eine längere Bearbeitungszeit als das erste
Verfahren erfordern kann, und zwar insbesondere dann, wenn
die Erzeugung des Bildes eine bestimmte Zeitdauer erfordert.
Anwender bzw. Benutzer geben solchen
Geräten den Vorzug, die in angemessener Zeit reagiert. Bei den beschriebenen Ausführungsbeispielen
wird daher die Erzeugung des nicht-transparenten
Bereichs zuerst durchgeführt und die Anzeige des Hintergrundbilds
wird begonnen, nachdem die Anzeigefläche gelöscht
ist. Daraufhin wird, ohne das gewünschte bzw. zu
bearbeitende Teilbild anzuzeigen und die Anzeigefläche zu
löschen, das Vordergrundbild unmittelbar nach der Anzeige des
Hintergrundbilds angezeigt, so daß die Bedienungsperson, mit
einem Gefühl der Erleichterung den Vorgang des Bildaufbaus
auf der Anzeigefläche bzw. dem Bildschirm mitverfolgen kann.
Wenn das Bild mit Ausnahme des bestimmten Teilbilds fertiggestellt
ist, wird das logische Produkt (UND) des auf diese
Weise erzeugten Bilds und der nicht-transparenten Daten gebildet,
wodurch die Vordergrunddaten sofort erhalten werden.
Anschließend wird sofort das Auffüllen der ganzen Anzeigefläche
durchgeführt, wodurch das endgültige Bild in einer sehr
kurzen Zeit angezeigt wird, was der Bedienungsperson ein
natürliches bzw. beruhigendes Gefühl vermittelt.
Diese Ausführungsbeispiele leiden jedoch noch unter dem folgenden
Problem. Da die Anzeige mit den nicht-transparenz-Daten
begonnen wird, wird auf der Anzeigefläche lediglich ein
Schatten erzeugt und die normale Anzeige wird erst nach
Abschluß der Erzeugung des nicht-transparenten Vordergrundbereichs
herbeigeführt. Dieses Problem kann jedoch mit dem
nachfolgend unter Bezugnahme auf Fig. 17 beschriebenen Ausführungsbeispiel
gelöst werden.
Bei diesem Ausführungsbeispiel wird das Bild unter den bestimmten
bzw. den zu bearbeitenden Bilddaten, d. h. der Hintergrund
oder die Hintergrundfläche, mit Hilfe von Schritten
S61 bis S606 erzeugt und im Hintergrundspeicher 305 gespeichert,
ohne den nicht-transparenten Bereich zu erzeugen.
Diese sechs Schritte können den in dem Flußdiagramm der Fig.
2 gezeigten Schritten S207 bis S212 entsprechen.
In einem Folgeschritt S607 wird ein hinterer Bildschirm bzw.
ein hinteres Bildfeld durch Einschreiben der Farbe Weiß gelöscht.
Der Ausdruck "hinteres Bildfeld" wird hier zur Bezeichnung
eines Speicherbereichs verwendet, welcher das Einschreiben
von Zeichen, Mustern und Bitmustern wie im Falle
des angezeigten Bildfelds erlaubt, der jedoch nicht angezeigt
wird. Dies kann erreicht werden, indem eine Vielzahl von
Bildspeichern bzw. Video-RAMs vorgesehen werden, wobei jedoch
nur einer für Anzeigezwecke herangezogen wird, während die
anderen Bildspeicher nicht zur Anzeige verwendet werden. Ein
derartiges System wurde bereits als Monitor-Kathodenstrahlröhre
mit einer Vielzahl von Halbbild- bzw. Framepuffern
realisiert.
Das vorstehend genannte Gerät AS-300 besitzt nicht die Funktion
des "hinteren Bildfelds", ist jedoch mit Bildspeichern
ausgerüstet, die auf ähnliche Weise wie vorstehend beschrieben
angeordnet sind. Das in dem beschriebenen Ausführungsbeispiel
verwendete Gerät AS-300 ist zur Verwendung in einem
monochromen Anzeigesystem vorgesehen.
Es ist eine Version des Geräts AS-300 verfügbar, die für eine
Farbanzeige ausgelegt ist. Die Hardware dieser Version ist
mit Speichern für R-, G- und B-Bildfelder ausgerüstet. Die
Bildspeicher für diese drei Farben sind in den gleichen
Speicher- bzw. Adressbereich abgebildet bzw. gelegt, wobei
eine Bankumschaltung durchgeführt wird. Die Daten im Bildfeld
bzw. im "Screen" jeder Farbe werden von jedem Speicher zu dem
entsprechenden Bildspeicher übertragen, wobei die Bankumschaltung
aufeinanderfolgend durchgeführt wird.
Bei der zur Farbanzeige ausgelegten Version des Geräts hat
der in Fig. 14 gezeigte Bilddaten-Speicherbereich 1402 eine
Größe, die das Dreifache der das für die monochrome Anzeige
vorgesehenen Geräts beträgt. Das erste Drittel dieses Speicherbereichs
wird für ein Bildfeld 0, das zweite Drittel für
ein Bildfeld 1 und das letzte Drittel für ein Bildfeld 2
verwendet, wobei diese Speicherdrittel die Daten der jeweiligen
Farbe speichern. Die Übertragung der Daten zwischen dem
Bildspeicher und dem Speicher bei Vorliegen des Befehls
"INTO 15H" wird unter Verwendung des Befehls "INTO 10H" eines
Bildschirmanzeigesteuerungs-Dienstprogramms durchgeführt.
Hierzu wird im AH-Register der Code "23" und im AL-Register
der Code "1" eingestellt, während im BL-Register ein den
anzuzeigenden Bildspeicher, d. h. 0, 1 oder 2, angehender Code
eingestellt wird. Daraufhin wird diejenige Adresse des Speichers,
an der die Daten gespeichert sind, im ES- und DI-Register
eingestellt, worauf der Befehl "INTO 10H" durchgeführt
wird, wodurch die Daten aus demjenigen Bildfeld, d. h.
dem Bildspeicher, a 99999 00070 552 001000280000000200012000285919988800040 0002003729023 00004 99880uf den das BL-Register zeigt, zum Speicher
übertragen werden. Während der Durchführung dieses Befehls
sind die X-Y-Koordinaten der oberen linken Ecke des Bildspeichers,
X-Y-Punktbreiten sowie die Relativadresse und die
Segmentadresse der Bestimmung bzw. der Bestimmungsadresse als
Parameter festgelegt, wobei die Speicherübertragung Wort für
Wort durchgeführt wird. Gleichzeitig werden die Anzahl der
Worte in der x-Richtung, d. h. der Wortabstand, und die X-Y-Koordinate
der linken oberen Ecke des effektiven Bilds auf
dem rechteckförmigen Bereich bei diesem Wortabstand berechnet
und gespeichert. Umgekehrt findet die Übertragung der Daten
zu dem Bildspeicher wie folgt statt. Hierzu wird zusätzlich
zu den vorstehend genannten Parametern ein Rasteroperationscode
als Parameter gespeichert und die Adresse dieser Datenspeicherung
wird von dem ES-Register und dem DI-Register
angegeben. Dann werden im AH-Register und im AL-Register die
Werte "23" bzw. "2" eingestellt, während im BL-Register in
Abhängigkeit von demjenigen Bildfeld oder Bildspeicher, zu
dem die Daten zu übertragen sind, der Wert 0, 1 oder 2 eingestellt
wird. Daraufhin wird der Befehl "INFO 10H" durchgeführt,
wodurch die Datenübertragung stattfindet. Daher ist es
möglich, die Übertragung und Berechnung für jedes einzelne
Bildfeld bzw. jeden Bildspeicher durchzuführen. Der Befehl
"INTO 10H" weist einen Funktionscode auf, mit dem ein Vorgang,
wie z. B. das Schreiben eines Punkts, gleichzeitig für drei
Farb-Bildfelder für jedes Bildelement durchführbar ist. Dieser
Befehl arbeitet darüber hinaus mit einem 3 Bit breiten
Register zusammen, das als Bankwahlregister bezeichnet wird
und dessen drei Bits die Gültigkeit/Ungültigkeit des Zugriffs
auf die Bildspeicherbänke der Bildfelder 0, 1 und 2 angeben.
Dies kann durch Einstellen der Werte "18" und "4" im AH-Register
bzw. im AL-Register, durch Einstellen eines der
Muster bzw. der Werte 0 bis 7, die den Inhalt des Bankwahlregisters
darstellen, und durch Ausführen des Befehls "INTO 15H"
erreicht werden. Als Folge davon werden die Daten in dem
Bildfeld oder Bildspeicher, auf den der Zugriff als ungültig
angegeben wurde, selbst dann nicht erneuert, wenn das Schreiben
der Punkte in einer Farbe durchgeführt wird, die alle
Punkte einschaltet. Wenn daher die für eine Farbanzeige ausgelegte
Version des Geräts A-300 in der Weise verwendet wird,
daß nur die Daten des Bildfelds 0 (Bildspeicher) für Anzeigezwecke
verwendet werden, können die Bildspeicher der Bänke 1
und 2 als "hintere Bildfelder" verwendet werden, die nicht
zur Anzeige beitragen. Wenn zu Beginn der Wert "1" in das
Bankwahlregister eingeschrieben wird, um alleine den Zugriff
zum Bildfeld 0 zu erlauben, wird ein gewöhnlicher Bildspeicher-Schreib/Anzeige-Vorgang
durchgeführt, wohingegen dann,
wenn der Wert "2" eingeschrieben wird, nicht der Bildspeicher
des Bildfelds 0, sondern des Bildfelds 1 beschrieben wird,
wenn der Schreibvorgang zum Einschreiben von Daten in den
Bildspeicher in gewöhnlicher Weise durchgeführt wird. Daraufhin
wird im Bankwahlregister erneut der Wert "1" eingestellt,
so daß wiederum der gewöhnliche Bildspeicher-Schreib/Anzeige-Vorgang
begonnen wird.
Vorstehend wurde das Prinzip des "hinteren Bildfelds" beschrieben.
Es versteht sich, daß der gleiche Effekt erzielbar
ist, wenn zusätzlich zu einem einzigen Bildspeicher ein weiterer
Speicher (RAM) vorgesehen wird.
Es wird nun wieder auf den in Fig. 17 gezeigten Steuerungsablauf
Bezug genommen. Um das hintere Bildfeld in Weiß-Leerstellen
zu ändern, wird im Schritt S607 im Bankwahlregister
z. B. der Wert "2" eingestellt und in alle Speicherbereiche,
die dadurch zugeordnet sind, wird der Wert "0" eingeschrieben,
worauf im Bankwahlregister der Wert "1" eingeschrieben
wird. Im Falle des Geräts AS-300 sind die Adressen 0C000H bis
0CFFFH dem Bildspeicher zugeordnet, so daß in die Adressen
0C000H bis 0CFFFH des Speichers der Wert "0" eingeschrieben
wird.
In einem Schritt S608 wird die Variable i mit dem Wert (m + 1)
belegt und Schritte S610 und S611 werden wiederholt in einer
Schleife durchgeführt, welche durch einen Schritt S609, mit
dem die Teilbilddaten von den Teilbilddaten unmittelbar vor
den Ziel-Teilbilddaten bis hin zu den obersten Teilbilddaten
erkannt werden, und aus einem Schritt S612 gebildet ist, bei
dem das angezeigte Objekt sucessiv in die darüberliegenden
Teilbilddaten geändert wird. Ein Schritt S610 entspricht dem
Schritt S604, d. h. die Teilbilddaten werden der Reihe nach
von denjenigen, die unmittelbar auf die Ziel-Teilbilddaten
folgen, bis hin zu den obersten Teilbilddaten angezeigt. Im
Schritt S611 wird der nicht-transparente Bereich der i-ten
Teilbilddaten als Objekt im hinteren Bildfeld akkumuliert
bzw. gespeichert (logische Summe). Im Falle des vorgenannten
Geräts AS-300 wird der nicht-transparente Bereich des i-ten
Teilbildelements bitmäßig auf die umgekehrte Seite gesetzt
bzw. invertiert, wobei der transparente Bereich und der
nicht-transparente Bereich auf "1" bzw. "0" eingestellt werden.
Das Zeichen des nicht-transparenten Bereichs wird
durchgeführt, indem im Bankwahlregister der Wert "1" eingestellt
wird, worauf im Bankwahlregister erneut "1" eingestellt
wird. Wenn der nicht-transparente Bereich in Form von
nicht-transparenten Bitmustern verfügbar ist, wie bei den
vorangehenden Ausführungsbeispielen, wie die Übertragung zu
dem Bildspeicher durchgeführt, indem von dem Speicher und dem
vorgenannten Befehl "INTO 10H" Gebrauch gemacht wird. Anschließend
werden im AH-Register und im Al-Register die Werte
"23" bzw. "2" eingestellt und die Bank bzw. das Bankwahlregister
wird auf "1" eingestellt, was dem Bestimmungs-Bildspeicher
entspricht, zu dem die Daten zu übertragen sind. Dann
wird als Funktion der Wert "14", der die logische Summe
(ODER) angibt, im Parameter eingestellt. Nach dem Speichern
der die Quelle und die Bestimmung der Daten betreffenden
Positionsdaten werden die Adressen des Parameterblocks im
ES : DI-Register eingestellt, worauf der Befehl "INTO 10H"
durchgeführt wird, wodurch die nicht-transparenten Bereiche
akkumuliert bzw. gespeichert werden.
Wenn im Schritt S609 erkannt wird, daß die Anzeige und Korrektur
der nicht-transparenten Bereiche bis hin zu den obersten
Teilbilddaten beendet ist, werden die nicht-transparenten
Daten des hinteren Bildfelds in einem Schritt S613 invertiert
und die invertierten Daten werden zum Vordergrundmusterspeicher
803 übertragen, um die logische Summe (UND) zu
erhalten. Diese Operation kann auch unter Verwendung des
Befehls "INTO 10H" durchgeführt werden. Hierzu werden, nachdem
im Bankwahlregister der Wert "2" eingestellt wurde, im AH-Register,
im AL-Register und im BL-Register die Werte "23",
"2" bzw. "1" und im ES- und im DI-Register die Adressen der
Parameterblöcke eingestellt. Daraufhin werden die die Positionen
der Quelle und die Speicheradresse der Bestimmung
betreffenden Positionsdaten eingestellte und der Befehl
"INTO 10H" wird durchgeführt.
In einem Schritt S614 wird das logische Produkt der gegenwärtig
angezeigten Daten und der Daten im hinteren Bildfeld
berechnet, wodurch die Vordergrund-Anzeigedaten gebildet
werden können. Diese Vordergrunddaten werden im Vordergrundspeicher
307 gespeichert.
Dieser Vorgang wird vorzugsweise durchgeführt, ohne die Bildschirmanzeige
zu ändern. Wenn die Möglichkeit einer Berechnung
zwischen den Daten in beiden Bänken besteht, kann der
Vorgang in der Weise durchgeführt werden, daß die Daten in
dem normalen Anzeigebildfeld zu dem hinteren Bildfeld übertragen
werden, um mit dem hinteren Bildfeld das logische
Produkt zu bilden, und daß das hintere Bildfeld bzw. dessen
Inhalt zu dem Vordergrundspeicher 307 übertragen wird. Dies
kann auch in der Weise durchgeführt werden, daß die Daten im
normalen Anzeigebildfeld zum Vordergrundspeicher 307 übertragen
werden, daß das logische Produkt (UND) des Inhalts des
Speichers 303 und des Anzeigespeichers bzw. des Vordergrundspeichers
307 berechnet wird und daß der Inhalt des Vordergrundspeichers
307 schließlich in Übereinstimmung mit dem
Ergebnis der Berechnung des logischen Produkts wieder eingeschrieben
wird. Dieser Vorgang kann mit sehr hoher Geschwindigkeit
durchgeführt werden, da er Wort für Wort ausgeführt
werden kann.
Ein Schritt S615 entspricht im wesentlichen dem bereits beschriebenen
Schritt S219. Demnach wird ein dem in Verbindung
mit Fig. 4A beschriebenen Steuerungsablauf ähnlicher Vorgang
durchgeführt, so daß das endgültige Bild mit hoher Geschwindigkeit
erzeugt wird.
Wenn die Teilbilder successiv angezeigt werden und die Hinterseite
oder der Hintergrund der Ziel-Teilbilddaten unmittelbar
vor dem Schritt S615 angezeigt wird oder wenn die
Vordergrundbilder dem Hintergrundbild gemäß der Darstellung
in Fig. 16 überlagert werden, ist es möglich, anstelle des
Schritts S615 die Schritte S402 bis S904 durchzuführen. Das heißt,
es ist nicht notwendig, das Hintergrundbild wiederholt anzuzeigen.
Gemäß vorstehender Beschreibung wird das Hintergrundbild
demnach dadurch erzeugt, daß die Teilbilder von dem niedrigsten
oder innersten Teilbild bis zu demjenigen Teilbild, das
sich unmittelbar unter dem Ziel-Teilbild befindet, successiv
aufeinandergelegt werden, wobei das auf diese Weise erzeugte
Hintergrundbild gespeichert wird. Anschließend wird diejenige
Gruppe der Teilbilddaten, die aus den Teilbilddaten, die den
Ziel-Teilbildaten am nächsten liegen, bis hin zu den obersten
oder letzten Teilbilddaten bestehen, angezeigt und der
Vorgang zur Erzeugung des nicht-transparenten Bereichs dieser
Gruppe der Teilbilddaten wird gleichzeitig durchgeführt. Als
Folge davon kann das Bild in einer guten Reihenfolge erzeugt
werden und die den Vordergrund betreffenden Anzeigedaten
können unter Verwendung des nicht-transparenten Bereichs und
des Inhalts der Anzeige erzeugt werden, wenn die Anzeige bis
zur Anzeige der obersten oder letzten Teilbilddaten fortgeschritten
ist.
Wenn die Ziel-Teilbilddaten bearbeitet oder deformiert werden,
ist es daher möglich, das endgültige, die bearbeiteten
oder die defomierten Teilbilddaten enthaltende Bild augenblicklich
zu erhalten, wodurch die Bedienung erleichtert ist.
Darüber hinaus erfolgt die Erzeugung des Bilds auf dem Bildschirm
bzw. der Bildaufbau in einer Weise, so
daß die Bedienungsperson das Gerät sehr leicht bedienen kann.
Bei den beschriebenen Ausführungsbeispielen können die Hintergrunddaten
und die Vordergrunddaten unabhängig voneinander
erzeugt werden, wenn jedes Teilbild angezeigt wird, so daß
die Bedienungsperson, wenn sie eines der Teilbilder bearbeitet,
das Ergebnis dieser Bearbeitung sehr schnell begutachten
kann, da das endgültige Bild nach einer derartigen Bearbeitung
beinahe augenblicklich aufgebaut wird. Als Folge davon
wird die Geschwindigkeit des Bearbeitungsvorgangs merklich
erhöht und der Bearbeitungsvorgang selbst wesentlich erleichtert.
Es versteht sich, daß anstelle des vorstehend beschriebenen
Bearbeitungsvorgangs in Form einer Verschiebung auch eine
andere Bearbeitung, wie z. B. eine Rotation oder Korrektur, in
gleicher Weise durchgeführt werden kann.
Obgleich bei dem beschriebenen Ausführungsbeispiel ein spezielles
Gerät, wie z. B. das Gerät AS-300 der Firma Canon
eingesetzt wurde, können selbstverständlich auch andere,
äquivalente Geräte oder Schaltungen verwendet werden, um die
gleichen Ergebnisse zu erzielen. Falls notwendig, können die
Funktionen derartiger Geräte oder Schaltungen durch entsprechende
Steuerungsabläufe bzw. Software realisiert werden.
Gemäß vorstehender Beschreibung werden bei diesem Ausführungsbeispiel
die Gruppe der Teilbilddaten auf der "inneren"
Seite eines Ziel-Teilbilds sowie die Gruppe der Teilbilddaten
auf der "äußeren" oder "oberen" Seite des Ziel-Teilbilds bzw.
der Ziel-Teilbilddaten separat erzeugt und gespeichert, so
daß der Bearbeitungsvorgang sehr schnell und mit einem vergleichsweise
geringen Schaltungsaufwand durchgeführt werden
kann.
Darüber hinaus kann die Bedienungsperson bei der Bearbeitung
des Ziel-Teilbildes das Ergebnis dieser Bearbeitung überprüfen,
da das endgültige, das bearbeitete Teilbild enthaltende
Bild augenblicklich erzeugt werden kann, so daß die Effizienz
der Bearbeitung bzw. die Bedienbarkeit verbessert wird. Weiterhin
wird das Bild auf der Anzeigefläche in einer Weise
aufgebaut, die der Bedienungsperson ein natürliches Gefühl
vermittelt, so daß diese mit Leichtigkeit arbeiten kann.
Nachfolgend wird ein weiteres Ausführungsbeispiel beschrieben,
bei dem die Festlegung bzw. die Auswahl von Teilbilddaten
näher erläutert wird.
Bei den vorstehend beschriebenen Ausführungsbeispielen waren
die Teilbilder geometrische Muster, wie z. B. ein Kreis, ein
Rechteck, usw. Bei diesem Ausführungsbeispiel wird das Konzept
eines Teilbilds jedoch in der Weise erweitert, daß jedes
Teilbild eine Darstellung eines bestimmten Objekts, wie z. B.
eines "Berges", einer "Jacht", eines "Mannes" und einer
"Frau", sein kann, wobei ein Bild durch entsprechende Kombination
dieser Darstellungen von Objekten, die durch verschiedene
Teilbilddaten gebildet sind, erzeugt werden kann. Wenn
ein bestimmtes Teilbild gewählt wird, schlägt das nachfolgend
beschriebene Ausführungsbeispiel des Bildbearbeitungsgeräts
verschiedene Verfahren zur Korrektur der gewählten Teilbilddaten
in der Form eines eines Menues zusammen mit den erwarteten
Ergebnissen der Korrektur vor, so daß die Bedienungsperson
die Korrektur durch Auswahl eines der vorgeschlagenen Korrekturpunkte
bzw. -arten durchführen kann, wodurch die Korrektur
eines Bilds sehr leicht durchgeführt werden kann. Dieses
Ausführungsbeispiel des Bildverarbeitungsgeräts das diese
zusätzliche Einrichtung beinhaltet, wird nachfolgend unter
Bezugnahme auf die Fig. 18 und 19 näher erläutert.
Fig. 19 zeigt anhand eines Blockschaltbilds den prinzipiellen
Aufbau dieser Ausführungsbeispiels des Bildbearbeitungsgeräts.
Bildbearbeitungsgeräte dieser Art beinhalten gewöhnliche
eine Recheneinrichtung in Form eines Mikrocomputers
oder eines Minicomputers. Auch dieses Ausführungsbeispiel
besitzt eine derartige Recheneinrichtung.
Gemäß Fig. 19 weist das Bildbearbeitungsgerät eine Recheneinrichtung
2010 in Form einer Zentraleinheit bzw. CPU auf. Die
CPU 2010 besitzt einen Speicher 2010a zum Speichern verschiedener
Steuerungsabläufe, die später unter Bezugnahme auf die
Fig. 22, 26, 27, 33, 38 und 40 näher erläutert werden. Die
CPU 2010 ist über einen Bus 2070 mit einem Speicher 2020,
einer Bildschirmschnittstelle 2030 und einer Mausschnittstelle
2040 verbunden. Der Speicher 2020 besitzt Speicherbereiche
2020a und 2020b, in denen Teilbilddaten bzw. Markierungsdaten
gespeichert werden, auf die später näher eingegangen wird.
Die Mausschnittstelle 2040 ermöglicht es einer Bedienungsperson,
durch geeignete Manipulation bzw. geeignetes Verschieben
einer Maus 2060 der CPU 2010 die gewünschten Koordinaten
mitzuteilen, und zeigt das Abbild einer Figur und/oder eines
Cursors über die Bildschirmschnittstelle 2030 auf einem Bildschirm
bzw. Monitor 2050 an.
Fig. 18 erläutert anhand eines Blockschaltbildes die Arbeitsweise
dieses Ausführungsbeispiels des Bildbearbeitungsgeräts.
Eine Bildbearbeitungs- bzw. Bildeditiereinrichtung 1010 ist
in der Weise ausgebildet, daß sie einer Bilderzeugungseinrichtung
1040 verschiedene Bearbeitungs- bzw. Editierbefehle,
wie z. B. eine Änderung, eine Verschiebung usw. von Teilbilddaten,
die einen Teil eines Bilds darstellen, sowie weitere
Befehle zuführen kann, wie z. B. einen Befehl zum Anzeigen des
Bildes nach dessen Bearbeitung. Die Bilderzeugungseinrichtung
1040 führt einer Bildausgabeeinrichtung 1080 Teilbilddaten
zu, die ein Bild darstellen, und bewirkt dadurch die Anzeige
des Bildes.
Die Bildausgabeeinrichtung 1080 besteht in der Praxis aus dem
Bildschirm 2050 und der Bildschirmschnittstelle 2030. Es
versteht sich, daß die Bilderzeugungseinrichtung 1040 nicht
notwendigerweise direkt auf die Bildschirmschnittstelle 2030
zugreifen muß. Vielmehr ist es auch möglich, die Anzeige über
die Bildschirmschnittstelle 2030 mittels eines geeigneten
Treiber-Steuerungsprogramms zu steuern. Ein Anzeige-Steuerungssystem,
das ein derartiges Treiber-Steuerungsprogramm
verwendet, wird häufiger eingesetzt, als ein System, das
einen direkten Zugriff durch die Bilderzeugungseinrichtung
erlaubt. In einem solchen Fall besteht die Bildausgabeeinrichtung
eines 1080 demnach aus dem Treiber-Ansteuerungsablauf,
der Bildschirmaschnittstelle 2030 und dem Bildschirm
2050.
Die Bildbearbeitungseinrichtung 1010 empfängt aus einer Koordinateneinstelleinrichtung
1020 die von der Bedienungsperson
angegebenen Koordinaten und ermöglicht es daher der Bedienungsperson,
die Bilderzeugungseinrichtung über die gewünschten
Teilbilddaten, die ein Bild darstellen, zu informieren.
Eine Koordinateneingabeeinrichtung 1070 besteht z. B. aus der
Maus 2060, der Mausschnittstelle 2040 sowie einem entsprechenden
Treiber-Ansteuerungsablauf und erzeugt in Abhängigkeit
von der Betätigung der Maus 2060 durch die Bedienungsperson
Koordinateneinstelldaten, die z. B. eine Bewegungsstrecke
oder den Ein/Ausschaltzustand von Tasten angeben. Die
Koordinateneinstelleinrichtung 1020 führt der Bildausgabeeinrichtung
1080 Befehle zur Ausgabe von Cursordaten zu, während
sie die die Cursorposition betreffenden Daten in Übereinstimmung
mit von der Koordinateneingabeeinrichtung 1070 zugeführten
Daten, die die Bewegungsstrecke angeben, fortgesetzt
ändert. Die Cursorposition wird ausgegeben und unmittelbar
der Bildbearbeitungseinrichtung zugeführt. Wenn die Bedienungsperson
durch Betätigung einer von mehreren auf der Maus
befindlichen Tasten (die nachfolgend als "Maustasten" bezeichnet
werden) die Koordinaten eingestellt bzw. gewählt
hat, werden die derart eingestellten Koordinaten über die
Koordinateneingabeeinrichtung 1070 der Bildbearbeitungseinrichtung
1010 als die von der Bedienungsperson bezeichneten
Koordinaten zugeführt.
Eine Menue- bzw. Auswahlvorbereitungseinrichtung 1030 empfängt
von der Bildbearbeitungseinrichtung 1010 Menue- bzw.
Auswahlpunkte, ordnet diese Menuepunkte in Form einer Menueliste
an und veranlaßt die Bildausgabeeinrichtung 1080, das
auf diese Weise erzeugte Menue anzuzeigen. Wenn das Menue
bzw. die Menueliste wieder gelöscht wird, wird dasjenige
Bild, das unmittelbar vor der Anzeige des Menues angezeigt
wurde, auf der Anzeige wieder hergestellt bzw. erneut angezeigt.
Der Bereich bzw. die Bildschirmfläche, in der die Menueleiste
zu erzeugen ist, ist entweder fest vorgegeben, oder die
Menueleiste wird alternativ erst dann angezeigt, nachdem die
Daten, die sich an der Anzeigefläche der Menueleiste befinden,
gespeichert wurden, wobei die gespeicherten Daten wieder auf
der Anzeigefläche ausgegeben werden, wenn die Menueleiste
gelöscht ist. Das letztere Anzeigeverfahren ist als pop-up-
bzw. als Einblendmenue bekannt.
Nachfolgend wird die Bilderzeugung unter Bezugnahme auf die
Fig. 20 bis 24 näher erläutert.
Die Erzeugung des anzuzeigenden Bildes wird von der Bilderzeugungseinrichtung
1040 auf die nachstehend beschriebene
Weise durchgeführt.
Gemäß Fig. 20 weist die Bilderzeugungseinrichtung 1040 eine
Bildaufbautabelle 3010 auf, die in Form von Daten im Speicher
2020 gespeichert ist. Die Bildaufbautabelle 3010 besitzt eine
Vielzahl von Zeilen e₁, e₂, e₃ . . . en, wobei jede dieser
Zeilen einem Element des zu erzeugenden Bilds entspricht.
Diese Zeilen sind in zwei Spalten 3020 und 3030 aufgeteilt.
Die Spalte 3020 ist zum Speichern von Identifizierungs- bzw.
Verweisdaten vorgesehen, welche diejenigen Teilbilddaten
identifizieren bzw. auf diese verweisen, die den das betreffende
Bild darstellenden Elementen entsprechen. In einer
Spalte 3030 werden verschiedene Anzeigeartkonstanten gespeichert,
die sich auf die Teilbilddaten der betreffenden Zeile
beziehen. Die Anzeigeartkonstanten sind Daten oder Parameter,
welche zur Bearbeitung und Lokalisierung der Teilbilddaten
herangezogen werden. In einem einfachen System werden in der
Spalte 3030 z. B. Koordinatenumsetzungskonstanten eingestellt.
Wenn das Gerät nicht dazu ausgelegt ist, irgendeine Rotation,
eine Vergrößerung oder Verkleinerung des Bilds durchzuführen,
werden in der Spalte 3030 diejenigen Verschiebungsstrecken in
x- und y-Richtung eingestellt bzw. gespeichert, die für die
Fortschreitungsbewegung benötigt werden.
In der in Fig. 20 gezeigten Bildaufbautabelle werden in der
Spalte 3020 der Zeile e₁ Daten bzw. eine Zeichenfolge "Berg;"
gespeichert. Das an diese Daten bzw. diese Zeichenfolge angehängte
Symbol ";" ist ein Begrenzungszeichen, welches nicht
zu den Verweisdaten gehört. Die Zeichenkette "Berg;" repräsentiert
daher Teilbilddaten, die durch die Verweisdaten
"Berg" identifiziert werden. In der Spalte 3030 der gleichen
Zeile e₁ werden Koordinaten X₁ und Y₁ eingestellt. Dies
bedeutet, daß der "Berg" an der durch die Koordinaten (x₁,
y₁) angegebenen Position plaziert werden sollte. In ähnlicher
Weise gibt die Zeile e₂ der Bildaufbautabelle an, daß die
Teilbilddaten "Berg" an einer durch die Koordinaten (x₂, y₂)
angegebenen Position plaziert werden sollen, während die
Zeile e₃ angibt, daß Teilbilddaten, die durch die Verweisdaten
"Person" identifiziert werden, an einer Stelle positioniert
werden sollen, die durch die Koordinaten (x₃, y₃)
angegeben wird. Die Zeilen e₄ bis en speichern keine Verweisdaten
und enthalten lediglich Begrenzungszeichen ";". Diese
Besetzung der Bildaufbautabelle bedeutet, daß das Bild aus
den in den Zeilen e₁, e₂ und e₃ angegebenen Teilbilddaten
zusammenzusetzen ist. Die gezeigte Zusammensetzung der Daten
aus Verweisdaten und einem Begrenzungszeichen stellt lediglich
eine beispielhafte Form der Zusammensetzung dar und das
beschriebene Verfahren der Dateneingabe in die Bildaufbautabelle
3010 ist ebenfalls nicht hierauf beschränkt. Es ist
lediglich erforderlich, daß der Typ der Teilbilddaten und die
Anzeigeartkonstanten deutlich erkennbar bzw. unterscheidbar
sind.
Die Teilbilddaten werden im Teilbildspeicherbereich 2020a des
Speichers 2020 zusammen mit den Attributen gespeichert. Gewöhnlich
wird eine Vielzahl von Teilbilddaten benötigt, weshalb
der Speicher 2020 eine große Speicherkapazität aufweisen
muß. Es ist daher ratsam, zur Speicherung der Teilbilddaten
ein externes Speichermedium, wie z. B. eine Magnetplatte, zu
verwenden. Das in Fig. 19 gezeigte Gerät kann ohne Abänderung
verwendet werden, wenn der Speicher 2020 aus dem externen
Speichermedium und dem Hauptspeicher besteht. Wenn das externe
Speichermedium hingegen separat zu verwenden ist, wird es
über den Bus 2070 angeschlossen. In jedem Fall hat die Verwendung
eines externen Speichermediums keine wesentliche
Änderung im Schaltungsaufbau zur Folge. Wenn ein externes
Speichermedium verwendet wird, werden die in einem derartigen
externen Speichermedium gespeicherten Daten in eine Vielzahl
von Dateien sortiert, so daß auf die jeweiligen Daten über
den Namen der betreffenden Datei zugegriffen werden kann. So
ist es z. B. möglich, Dateien vorzubereiten, deren jeweiliger
Name dem Typ der Verweisdaten entspricht, so daß die Teilbilddaten
der gleichen Verweisdaten mit einer Datei gehandhabt
werden. Zur Vereinfachung des Systems werden die Teilbilddaten
in Form von Rasterabtast-Bilddateien gespeichert,
wobei ein geeigneter Code, der an den Beginn der Datei angehängt
ist, beispielsweise die Datengröße bzw. die Anzahl der
Daten angibt.
Fig. 21A zeigt als Beispiel Teilbilddaten, die die Verweisdaten
"Berg" besitzen. Diese Teilbilddaten werden im Speicher
2020 zusammen mit Markierungsdaten gespeichert, welche gemäß
der Darstellung in Fig. 21B einen weißen, bergförmigen
Bereich des logischen Pegels "0" und einen schwarzen Hintergrundbereich
des Pegels "1" beinhalten. Der Speicher 2020
speichert daher gleichzeitig sowohl die Teilbilddaten gemäß
Fig. 21A als auch die Markierungsdaten gemäß Fig. 21B. Wenn
eine Vielzahl von Teilbilddaten successiv überlagert werden,
wird zunächst der bergförmige Bereich weiß gemacht bzw. weiß
getastet und anschließend erneut geschrieben, so daß die
Teilbilder dadurch in korrekter Lagerbeziehung überlagert
werden können, daß die aufeinanderfolgenden Teilbilder beginnend
mit dem innersten geschrieben werden.
Fig. 23 zeigt Teilbilddaten mit den Verweisdaten "Person".
Markierungdaten, die diesen Teilbilddaten entsprechen, sind
ebenfalls in dem Markierungsspeicherbereich 2020b des Speichers
2020 gespeichert. Bei diesem Ausführungsbeispiel sind
demnach eine Vielzahl von Teilbilddaten, die die gleichen
Verweisdaten besitzen, in der gleichen Datei gespeichert,
wobei die auf diese Weise erzeugten Dateien in einer Bilddatenspeichereinrichtung
1090 gemäß Fig. 18 gespeichert sind.
Mit dem Ausdruck "Markierungsdaten" werden hier Daten bezeichnet,
bei denen alle Bildelemente, die auf und innerhalb
der Kontur der jeweiligen Teilbilddaten bzw. des jeweiligen
Teilbilds liegen, auf den Pegel "0" gesetzt sind. So zeigt
z. B. Fig. 21B Markierungsdaten, die den in Fig. 21A gezeigten
Teilbilddaten "Berg" entsprechen. Wie aus Fig. 21B zu erkennen
ist, sind die Markierungsdaten in der Lage, außerhalb der
Umfangslinie bzw. Kontur des jeweiligen Teilbilds befindliche
Bereiche zu maskieren, wie z. B. den Fuß des "Berges".
Bei diesem Ausführungsbeispiel werden die Teilbilddaten, die
die gleichen Verweisdaten aufweisen, in der gleichen Datei
gespeichert, wodurch eine Vielzahl von Dateien gebildet werden,
die zusammen die Bilddatenspeichereinrichtung 1090 bilden.
Fig. 22 zeigt anhand eines Flußdiagramms eines Steuerungsablauf
zur Erzeugung eines Bilds. Es sei angenommen, daß die
verschiedenen Verweisdaten und Anzeigeartkonstanten bereits
in der Bildaufbautabelle 3010 eingestellt sind. Die Bildaufbautabelle
3010 wird auf dem Bildschirm angezeigt, wobei
verschiedene Parameter dieser Tabelle beispielsweise über
eine nicht gezeigte Tastatur eingegeben werden. Die Eingabe
dieser Parameter kann jedoch auch mittels anderer Einrichtungen
durchgeführt werden, wie z. B. mittels eines Berührungs-Bedienungsfelds,
welches verschiedene Identifizierungen bzw.
Symbole trägt, die von der Bedienungsperson berührt werden
können. Die den Koordinaten entsprechenden Parameter können
mittels einer geeigneten Koordinateneingabeeinrichtung wie
einer Maus eingegeben werden.
In einem Anfangsschritt S501 wird die erste Zeile der Bildaufbautabelle
3010 betrachtet, so daß als Anfangswert für die
Variable i die Zahl "1" eingestellt wird. In einem Folgeschritt
S502 wird der Bildschirm gelöscht. In einem Schritt
S503 wird ausgehend von den Koordinaten (x1, y1) in Übereinstimmung
mit denjenigen Markierungsdaten, die dem durch die
in der i-ten Zeile ei eingestellten Verweisdaten bezeichneten
Teilbild entsprechen, eine Markierung durchgeführt. Das heißt, es
wird eine Berechnung durchgeführt, um das logische Produkt
zwischen den Markierungsdaten und den auf dem Bildschirm
angezeigten Daten zu bestimmen, und das Ergebnis dieser Berechnung
wird als Anzeigedaten angezeigt.
Wenn z. B. die in Fig. 21B gezeigten Markierungsdaten verwendet
werden, bei denen die schwarzen und weißen Bereiche den
Pegel "1" bzw. "0" haben, wird das logische Produkt in der
Weise gebildet, daß nur der "Berg"-Bereich gelöscht wird,
während die anderen Daten erhalten bleiben. In einem Schritt
S504 werden die Teilbilddaten anstelle der Markierungsdaten
aufgegriffen und an der durch die Koordinaten (x1, y1) angegebenen
Stelle auf dem Bildschirm gezeichnet. Dies kann
leicht dadurch erreicht werden, daß anstelle des logischen
Produkts (UND) die logische Summe (ODER) berechnet wird.
Auf diese Weise wird ein einzelnes Teilbild erzeugt. In einem
Schritt S505 wird die Variable i um "1" inkrementiert und der
Ablauf schreitet zu einem Schritt S506 weiter, bei dem der
Wert der inkrementierten Variablen i mit der Gesamtzahl n der
eingegebenen Teilbilddaten bzw. Teilbilder verglichen wird,
um zu entscheiden, ob die Erzeugung (die Überlagerung) aller
Teilbilder abgeschlossen ist. Der vorstehend beschriebene
Vorgang wird demnach solange wiederholt, bis alle Teilbilddaten
erzeugt und überlagert sind.
Fig. 24 zeigt das Bild, das durch die vorstehend beschriebene
Überlagerung einer Vielzahl von Teilbilddaten gebildet wird.
Die in Fig. 24 gezeigten unterbrochenen Linien werden in
Wirklichkeit nicht angezeigt und sind lediglich vorgesehen,
um die gegenseitige Beziehung der Teilbilddaten anzugeben.
Die Position zum Aufbau bzw. zur Erzeugung der jeweiligen
Teilbilddaten wird berechnet, indem die linke obere Ecke der
Anzeigefläche als Koordinatenursprung (0,0) verwendet wird,
wobei die Fortschreitungsbewegung der das Bild darstellenden
Elemente durchgeführt wird, indem dieser Punkt als Bezugspunkt
herangezogen wird.
Die Teilbilddaten "Berg;" in der Zeile e₁ der Bildaufbautabelle
werden an der Position (x₁, y₁) aufgebaut bzw. erzeugt,
die durch die Anzeigeartkonstanten dieser Daten festgelegt
ist, wodurch das Bild eines Bergs an der den Koordinaten (x₁,
y₁) der Anzeigefläche entsprechenden Position angezeigt wird.
Die Teilbilddaten der zweiten Zeile e₂ sind an der Position
(x₂, y₂) anzuzeigen. Daher wird, wie vorstehend in Verbindung
mit Schritt S503 erläutert wurde, ein Markierungsvorgang
durchgeführt, um den linken unteren Bereich des an der Position
(x₁, y₁) erzeugten Bergs zu löschen, worauf ein neuer
"Berg" geschrieben bzw. gezeichnet wird, um den ersten Berg
gemäß der Darstellung teilweise zu überlappen. In ähnlicher
Weise werden die Teilbilddaten in der Zeile e₃ der Bildaufbautabelle
an der bezeichneten Position (x₃, y₃) erzeugt bzw.
gezeichnet, so daß ein eine "Person" darstellendes Teilbild
angezeigt wird, wodurch das in Fig. 24 gezeigte Bild vervollständigt
wird.
Nachfolgend wird ein Verfahren näher erläutert, das es der
Bedienungsperson ermöglicht, ein gewünschtes Teilbild bzw.
ein Bildbestandteilselement wieder aufzufinden. Dieser Wiederauffindungsfunktion
wird gewöhnlich dann verwendet, wenn die
Bedienungsperson aus der Vielzahl der Teilbilder, aus denen
sich das endgültige Bild zusammensetzt, eines zu ändern oder
zu korrigieren wünscht. Da sich das endgültige Bild gemäß der
vorstehenden Beschreibung aus einer Vielzahl von Teilbildern,
die einander überlagert sind, zusammensetzt, kann ein darunterliegendes
Teilbild teilweise hinter einem darüberliegenden
Teilbild versteckt sein bzw. von diesem verdeckt werden. Um
auf ein derartiges, teilweise verdecktes bzw. verborgenes
Teilbild zugreifen zu können, ist es notwendig, eine geeignete
Einrichtung zur Verfügung zu haben, um die entsprechenden
Teilbilddaten wieder aufzufinden bzw. wieder zu erlangen.
Es sei angenommen, daß in Übereinstimmung mit dem Ausgangssignal
der Bildausgabeeinrichtung 1080 das in Fig. 25A dargestellte
Bild auf dem Bildschirm angezeigt wird. In diesem
Zustand gibt die Koordinateneinstelleinrichtung 1020 einen
Grafikcursor 8010 aus bzw. zeigt diesen an, wobei der Grafikcursor
8010 in Übereinstimmung mit der von der Bedienungsperson
hervorgerufenen Bewegung der Maus 2060 bewegt wird. In
der in Fig. 25B gezeigten Darstellung wurde der Grafikcursor
8010 in Übereinstimmung mit der Bewegung der Maus 2060 zu
einer Position bewegt, an der er auf die "Person" deutet.
Obwohl der Grafikcursor 8010 scheinbar auf die "Person" deutet,
ist es vom Standpunkt der Bedienung des Geräts aus
gesehen noch unklar, ob mit dem Grafikcursor auf die Teilbilddaten
"Person" gedeutet wird. Es stellt sich daher ein
Problem hinsichtlich der Art und Weise, auf die die Bedienungsperson
diejenigen Teilbilddaten bestätigt, auf die der
Grafikcursor 810 tatsächlich zeigt.
Gemäß vorstehender Beschreibung betätigt die Bedienungsperson
eine Maustaste, um das Wiederauffinden der gewünschten Teilbilddaten
einzuleiten. Der Vorgang des Wiederauffindens der
Teilbilddaten wird nachfolgend unter Bezugnahme auf das in
Fig. 26 gezeigte Flußdiagramm näher erläutert. Die Koordinaten
desjenigen Punkts, auf den der Kopf bzw. die Spitze des
Grafikcursors 8010 in Fig. 25B zeigt, seine (xc, yc).
In einem Anfangsschritt S901 wird die Variable i mit dem
Anfangswert n belegt und in einem Schritt S905 um "1" dekrementiert.
Wenn im Schritt S906 festgestellt wird, daß die
Variable i den Wert 0 hat, wird der Ablauf beendet, während
der Ablauf andernfalls zu einem Schritt S902 zurückverzweigt.
Daher werden die Schritte S902 bis S904 wiederholt durchgeführt,
um die Zeilen en bis e₁ abzutasten bzw. zu lesen. Die
Zeilen der Bildaufbautabelle 3010 werden daher beginnend bei
der untersten Zeile successiv gelesen. Dies bedeutet, daß die
aufeinanderfolgenden Teilbilddaten bzw. Bildbestandteilselemente
beginnend mit dem obersten oder letzten Element auf die
Anwesenheit der Koordinaten (xc, yc) überprüft werden. Wenn
der Grafikcursor auf einen Bereich deutet, bei dem sich zwei
Berge überlappen, wird daher der "neue" Berg gewählt, der in
größter Nähe zu dem "alten" Berg erzeugt wurde. Dieser Vorgang
wird nun unter Bezugnahme auf das Flußdiagramm näher
erläutert. Im Schritt S902 wird überprüft, ob das in die
Zeile e₁ eingeschriebene Bildbestandteilselement tatsächlich
in dem Bild enthalten ist. Bei diesem Ausführungsbeispiel
kann diese Überprüfung durchgeführt werden, indem die Bildaufbauteile
dahingehend überprüft wird, ob die Zeile e₁
Verweisdaten enthält, d. h., ob die Spalte 3020 der Zeile e₁
nur das Begrenzungszeichen oder sowohl Verweisdaten als auch
das Begrenzungszeichen enthält. Wenn nur das Begrenzungszeichen
vorhanden ist, wird entschieden, daß die Daten in dieser
Zeile keinen Teil des Bilds enthalten, worauf der Ablauf zu
dem Schritt S905 verzweigt, um die darüberliegende Zeile zu
überprüfen. Wenn hingegen Verweisdaten gefunden werden, verzweigt
der Ablauf zu einem Schritt S903, bei dem diejenige
Daten extrahiert bzw. gelesen wird, die den in Spalte 3020
der Zeile e₁ gezeigten bzw. gefundenen Verweisdaten entspricht.
Daraufhin wird die effektive Größe der Teilbilddaten
aus dem entsprechenden Datenwert der Datei berechnet.
Für die Kopfdaten der Datei kann jedes bekannte Format verwendet
werden. Die effektive Größe bzw. der effektive Umfang
der Teilbilddaten kann entweder aus diesem Format berechnet
werden oder aber, falls der Umfang der Daten nicht in dem
Format enthalten ist, in Verbindung mit den Verweisdaten aus
einem anderen Bereich des Speichers in Erfahrung gebracht
werden. In manchen Fällen ist der effektive Umfang der Daten
festgelegt. Im beschriebenen Ausführungsbeispiel wird zur
Vereinfachung ein Rasterbild verwendet, so daß eine Länge Δxi
in x-Richtung und eine Länge Δyi in y-Richtung des Rechteckbereichs
berechnet werden. Die auf diese Weise berechneten
Längen bzw. Strecken werden in Übereinstimmung mit der in der
Spalte 3030 der Zeile e₁ gespeicherten Anzeigeart umgesetzt,
woraus der von diesem Teilbild in der Anzeigefläche belegte
Bereich berechnet wird. Da die Bewegung bei dem gezeigten
Ausführungsbeispiel eine einfache Fortschreitungsbewegung
ist, stellt der Rechteckbereich mit den von dem Punkt (xi,
yi) ausgehenden Längen Δxi und Δyi den von dem Bildbestandteilselement
in der Zeile ei der Bildaufbautabelle zu besetzenden
Bereich dar. Die x-Koordinate wird so berechnet, daß
sie nicht kleiner als xi, jedoch kleiner als xi + Δxi ist,
während die y-Koordinate so berechnet wird, daß sie nicht
kleiner als yi, jedoch kleiner als y₁ + Δyi ist. Im Schritt
S904 wird überprüft, ob die gegebenen Koordinaten (xc, yc) in
den vorstehend genannten Bereich fallen. Wenn dies der Fall
ist, wird entschieden, daß das interessierende bzw. das Ziel-Bildbestandteilselement
dasjenige ist, das in der Zeile e₁
der Bildaufbautabelle eingestellt ist, womit der Ablauf beendet
ist. Wenn im Schritt S904 jedoch festgestellt wird, daß
die gegebenen Koordinaten (xc, yc) nicht in den vorgenannten
Bereich fallen, wird zu dem Schritt S905 verzweigt, um die in
der darüberliegenden Zeile der Bildaufbautabelle angegebenen
Teilbilddaten zu überprüfen. Wenn der bei der Beendigung
dieses Ablaufs erhaltene Wert der Variablen i zwischen 1 und
n liegt, wird das Ziel-Teilbild als dasjenige eingestuft, das
durch die in der Zeile ei eingestellten Teilbilddaten bezeichnet
wird. Wenn die Variable i den Wert 0 hat, bedeutet
dies, daß kein Teilbild vorhanden ist, d. h., daß der Grafikcursor
auf kein Teilbild deutet.
Nachfolgend wird unter Bezugnahme auf die Fig. 25B bis 25F
und 27 bis 32 die Bildbearbeitung näher erläutert.
Das das gewünschte Teilbild darstellende Element kann demnach
von der Bedienungsperson nach Wunsch wieder aufgefunden werden.
Anschließend führt die Bedienungsperson die gewünschte
Bearbeitung an dem auf diese Weise wieder aufgefundenen Teilbild
durch. Nachfolgend wird die Art und Weise dieser Bearbeitung
unter Bezugnahme auf Fig. 27, die den Ablauf eines
Bearbeitungs- bzw. Editiervorgangs zeigt, näher erläutert.
Das zu bearbeitende Teilbild bzw. Bildbestandteilselement
wird in einem Anfangsschritt S1001 bestimmt. Das zur Bestimmung
angewandte Verfahren kann mit dem vorstehend unter Bezugnahme
auf das in Fig. 26 gezeigte Flußdiagramm erläuterten
Verfahren übereinstimmen. Die Bedienungsperson bewegt hierzu
die Maus in der Weise, daß der Grafikcursor 8010 zu einer
Position verschoben wird, an der er beispielsweise auf das
Teilbild "Person" deutet. Daraufhin betätigt die Bedienungsperson
eine Maustaste, wodurch die Koordinaten (xc, yc), auf
die die Spitze des Grafikcursors 8010 deutet, darauf überprüft
werden, ob sie zu dem Bereich einer der Teilbilddaten
gehören, die in der Bildaufbautabelle 3010 aufgelistet sind.
Da in diesem Fall die Koordinaten (xc, yc), auf die der
Grafikcursor deutet, zu dem Bereich des in Zeile e₃ der
Bildaufbautabelle gezeigten Bildestandteilselements gehört,
wird dieses Bildbestandteilselement bzw. Teilbild (Person)
als dasjenige eingestuft, das von der Bedienungsperson zum
Bearbeiten gewählt wurde.
In einem Folgeschritt S1002 werden die Bearbeitungspunkte
bzw. Bearbeitungsarten, die an dem auf diese Weise ausgewählten
Teilbild durchgeführt werden können, bestimmt und in Form
einer Menueliste dargestellt. Hierzu wird mittels der Bilderzeugungseinrichtung
1040 der Identifizierungsname bzw. die
entsprechenden Verweisdaten derjenigen Teilbilddaten aufgegriffen,
die dem im Schritt S1001 wieder aufgefundenen Teilbild
bzw. Bildbestandteilselement zugeordnet sind. Im beschriebenen
Beispiel greift die Bilderzeugungseinrichtung den
in Spalte 3020 der Zeile e₃ in der Bildaufbautabelle 3010
erscheinenden Identifizierungsnamen auf. Der auf diese Weise
aufgegriffene Identifizierungsname wird mittels einer Bearbeitungspunkt-Extraktionseinrichtung
1050 extrahiert und als
ein Menuepunkt in der Menueliste verwendet. Die Bearbeitungspunkt-Extraktionseinrichtung
1050 arbeitet wie folgt. Für
jedes Teilbild bzw. die entsprechenden Teilbilddaten wird
eine in Fig. 28 gezeigte Bearbeitungspunktabelle 1101 gebildet,
die eine Vielzahl von Datenpaaren enthält, wobei jedes
Datenpaar eine vollständig beschreibende Erklärung des an dem
Teilbild durchzuführenden Bearbeitungspunkts und den Inhalt
bzw. die Art der Bearbeitung aufweist bzw. angibt. Die Bearbeitungspunkttabelle
1101 weist hierzu eine Spalte 1102,
welche die Editierpunkte enthält, sowie eine Spalte 1103 auf,
welche die Inhalte der Bearbeitung enthält. Bei einem einfachen
System, bei dem sich der Bearbeitungsvorgang lediglich
auf die Ersetzung von Teilbildern beschränkt, enthält die
Spalte 1103 lediglich den Identifizierungsnamen der Teilbilddaten
als zu ersetzendes Objekt sowie das Begrenzungszeichen.
Wie im Falle der Bildaufbautabelle 3010 wird eine Zeile, in
der die Spalte 1102 lediglich das Begrenzungszeichen enthält,
als ungültig eingestuft. Jede auf diese Weise erzeugte Bearbeitungspunkttabelle
1101 wird in derjenigen Datei gespeichert,
in der die dazugehörenden Teilbilddaten gespeichert
sind. Im Betrieb wird daher diejenige Teilbilddatendatei,
welche die Ziel-Teilbilddaten enthält, durch Angabe des entsprechenden
Dateinamens herausgegriffen, die Bearbeitungspunkttabelle
wird aus dieser Datei ausgelesen, und die Inhalte
der ausgelesenen Tabelle werden solange als Menuepunkte für
die Menueliste aufgegriffen, bis diejenige Spalte erreicht
ist, die nur das Begrenzungszeichen enthält. Die Erzeugung
der Menueliste für das gewählte Bildbestandteilselement wird
dadurch abgeschlossen, daß zu den vorgenannten Menuepunkten
der Menueliste solche Menuepunkte hinzugefügt werden, die
allen Arten von Teilbildern gemeinsam sind. Beispiele für
solche gemeinsamen Menuepunkte sind eine Änderung der Position,
an der das Teilbild bzw. das Bildbestandteilselement
ausgegeben wird, eine Änderung in der Anzeigeform, usw. Wenn
z. B. das Teilbild "Person" gewählt wurde, kann die Menueliste
z. B. fünf Arten von Menuepunkten enthalten, wie z. B. "Anzeigeposition
ändern", "Tennisspielen", "Golfspielen", "Ski" und
"Rollschuh". Wenn diese Menuepunkte der Menueliste festgelegt
sind, werden sie der Menuevorbereitung- bzw. Menueerzeugungseinrichtung
1030 zugeführt, um das Menue zu erzeugen und
anzuzeigen. Dies kann in bekannter Weise in Form eines Einblendmenues
geschehen.
Als Folge davon wird das Menue auf der Anzeigefläche gemäß
der Darstellung in Fig. 25C angezeigt, so daß der Benutzer im
Schritt S1003 einen gewünschten Menuepunkt mittels der Maus
2060 auswählen kann. Wenn der Menuepunkt "Anzeigeposition
ändern" gewählt wird, wird in einem Schritt S1004 die Anzeigeposition
des Teilbilds "Person" geändert, wohingegen der
Ablauf zu einem Ersetzungs- bzw. Substitutionsvorgang
(Schritt S1005) zur Änderung der Form des Teilbilds "Person"
verzweigt, wenn ein anderer Menuepunkt gewählt wird. Die
Auswahl eines Menuepunkts aus dem Menue kann auch in der
Weise erfolgen, daß jedem Menuepunkt eine Codenummer zugeordnet
wird und daß z. B. mittels einer Tastatur eine dieser
Codenummern eingegeben wird.
Nachfolgend wird der Steuerungsablauf für den Fall beschrieben,
daß die Bedienungsperson den Grafikcursor 8010 zu einer
Position bewegt hat, bei der er auf "Tennisspielen" deutet,
und anschließend die Maustaste gedrückt hat.
Die Bearbeitungspunkt-Extraktionseinrichtung 1050 greift nun
die Bearbeitungsdaten heraus. Hierzu wird der Inhalt der
Spalte 1103 in der ersten Zeile der in Fig. 28 gezeigten
Bearbeitungspunkttabelle herausgegriffen. Die entsprechenden
Daten haben den Identifizierungsnamen "Person 00". Daraufhin
wird der Inhalt der Spalte 3020 in der Zeile e₃ der Bildaufbautabelle
3010 in "Person 00" geändert, womit die Ersetzung
bzw. Substitution beendet ist. Die Bildaufbautabelle 3010
wird daher umgeschrieben in eine in Fig. 29 gezeigten
Bildaufbautabelle 3010a. Wenn der Identifizierungsname bzw. die
Verweisdaten "Person 00" das in Fig. 30 gezeigte Teilbild
angeben, wird der in Fig. 25C gezeigte Bildschirminhalt durch
den in Fig. 25D gezeigten ersetzt.
Für die Verweisdaten "Person 00" wird eine in Fig. 31 gezeigte
Bearbeitungspunkttabelle 1401 vorbereitet und die Bearbeitung
wird in Übereinstimmung mit den in Fig. 27 gezeigten
Steuerungsablauf durchgeführt. Wenn die Bedienungsperson auf
die einen Tennisschläger haltende Person deutet, wird der
Bildschirminhalt in den in Fig. 25E gezeigten geändert. Wenn
die Verweisdaten "Person 04" einem in Fig. 32 gezeigten
Teilbild zugeordnet sind, wird der Bildschirminhalt in den in
Fig. 25F gezeigten geändert, sobald die Bedienungsperson den
Menuepunkt "Treffen" aus dem Menue auswählt.
Gemäß vorstehender Beschreibung werden bei diesem Ausführungsbeispiel,
nachdem eine Vielzahl von Teilbilddaten lokalisiert
sind, diejenigen Daten, die die Bedienungsperson zu
bearbeiten wünscht, ausgewählt und einer geeigneten Bearbeitung
unterzogen, um die angezeigte Form derselben zu ändern.
Die Form der Anzeige bzw. der Bildschirminhalt kann daher
ausgehend von seiner ursprünglichen Form fortschreitend geändert
werden. Bei diesm Ausführungsbeispiel werden die Teilbilddaten
"Person" aus einer Vielzahl von Teilbilddaten gewählt,
die auf diese Weise gewählte "Person" wird in einen
Tennisspieler geändert und der Tennisspieler wird schließlich
in einem Zustand dargestellt, bei dem er einen Ball trifft.
Die beschriebene Änderung im Anzeigezustand ist lediglich
beispielhaft und läßt verschiedene Abänderungen zu. Beispielsweise
kann das Teilbild "Person" in "Mann" und "Frau"
oder in "Erwachsener" und "Kind" aufgeteilt bzw. sortiert
werden. Diese Sortierdaten können mit Hilfe des Menues hinzugefügt
werden, wenn die Bedienungsperson den Grafikcursor zu
dem Ort der "Person" auf dem Bildschirm bewegt und anschließend
die Maustaste betätigt.
Obgleich die Änderung im Anzeigezustand bzw. im Bildschirminhalt
unter Bezugnahme auf das Teilbild "Person" erläutert
wurde, versteht es sich, daß der gleiche Bearbeitungsvorgang
auch mit dem Teilbild "Berg" durchgeführt werden kann. Das
Menue kann in Abhängigkeit davon, welche Arten von Teilbilddaten
für den "Berg" vorbereitet sind, eine Vielzahl von
Menuepunken aufweisen. Beispielsweise ist es möglich, Ansichten
des Berges für vier verschiedene Jahreszeiten anzuzeigen.
Die Auswahl an möglichen Darstellungen oder Ansichten
kann noch vergrößert werden, wenn eine Farbanzeige verfügbar
ist.
Daher kann die Anzahl der Änderungsmöglichkeiten jedes Teilbilds
durch Vergrößerung der Anzahl der Teilbilder bzw. der
Teilbilddaten vergrößert werden. Diese Daten müssen jedoch in
dem Speicher 202 zuvor gespeichert werden. Gemäß vorstehender
Beschreibung kann der Speicher 202 daher als externes Speichermedium,
wie z. B. als Plattenspeicher, ausgebildet sein
wobei die Teilbilddaten und die Markierungsdaten nach Bedarf
aus dem externen Speichermedium ausgelesen werden.
Gemäß vorstehender Beschreibung werden Bilddaten, die einem
ausgeprägten Bereich eines Bildes entsprechen, als Teilbilddaten
eingetragen. Gleichzeitig wird eine Vielzahl von Bearbeitungsvorgängen,
denen die Teilbilddaten unterzogen werden
können, zusammen mit Anzeigeformungsdaten, die den Inhalt
bzw. die Art der jeweiligen Bearbeitung geeigent darstellen,
eingetragen bzw. gespeichert.
Ein Bild kann aus einem einzigen Teilbild bzw. entsprechenden
Teilbilddaten entstehen oder aus zwei oder mehr Teilbildern
zusammengesetzt werden, indem die entsprechenden Daten beispielsweise
durch Koordinatenumsetzung geeignet positioniert
werden.
Im Betrieb wählt die Bedienungsperson eines der Teilbilder
als zu bearbeitendes Objekt, wobei in Übereinstimmung mit den
vorgenannten Bearbeitungsdaten automatisch ein Bearbeitungsmenue
erzeugt wird. Die Bedienungsperson wählt daraufhin
einen gewünschten Bearbeitungspunkt oder denjenigen Bearbeitungspunkt
aus, der dem gewünschten Bearbeitungspunkt als
nächstkommend eingestuft wird. Als Folge davon wird das Bild
automatisch korrigiert und das gewünschte, zu erzielende Bild
Schritt für Schritt erzeugt. Gewöhnlich ist die Erstellung
eines Bilds oder einer Zeichnung mittels eines Bilderzeugungssystems
ziemlich schwierig durchzuführen, sofern die
Bedienungsperson nicht ein gutes Gespür für das Malen oder
Zeichnen besitzt. Hingegen kann mit dem erfindungsgemäßen
Gerät ein Bild sehr leicht und im wesentlichen auf die gleiche
Art gezeichnet werden, wie bei dem "Zusammenflicken"
vorgeformter Papierblätter auf einer entsprechenden Unterlage.
Das auf diese Weise erzeugte Bild bzw. die erzeugte
Zeichnung kann anschließend durch geeignete Wahl von Bearbeitungspunkten
aus dem Menue geeignet nachgearbeitet und verfeinert
werden, so daß man schließlich das gewünschte Bild
erzielt.
Vorstehend wurde ein Verfahren beschrieben, bei dem zu Beginn
eine bestimmte Gruppierung bzw. Anordnung der Teilbilddaten
eingestellt wird. Es versteht sich, daß die gewünschte Anordnung
auch durchgeführt werden kann, indem die gewünschten
Teilbilddaten entsprechend ihrem Identifizierungsnamen ausgewählt
und auf gleiche Weise plaziert werden, wie dies vorstehend
in Verbindung mit der Verschiebung der Anzeigeposition
erläutert wurde. Das Gruppierungs- bzw. Anordnungssystem
entspricht daher im wesentlichen dem eines bekannten geometrischen
Muster-Bearbeitungssystems, so daß auf eine nähere
Erläuterung an dieser Stelle verzichtet wird.
Obgleich bei dem beschriebenen Ausführungsbeispiel verschiedene
Daten in Form von Tabellen eingestellt und gespeichert
werden, kann die Speicherung dieser Daten auch in anderer
Form erfolgen, wie z. B. in Form von Listen oder in Form
anderer bekannter Datenspeicher- und Bezugssysteme.
Wenngleich bei dem beschriebenen Ausführungsbeispiel Rasterabtastbilder
verwendet werden, können die Teilbilddaten
gleichwohl auch Vektordaten sein, die durch Kombination verschiedener
geometrischer Daten erzeugt werden.
Auch die Verwendung eines Grafikcursors ist nicht unbedingt
erforderlich, so daß die Kombination aus einem Cursor und
einer Maus durch eine geeignete andere Koordinateneingabeeinrichtung
ersetzt werden kann, wie z. B. durch ein Berührungs-Bedienungsfeld
oder andere Direkt-Eingabesysteme.
Das vorstehend beschriebene Ausführungsbeispiel besitzt eine
Vielzahl von Teilbild-Bildbestandteilselementen und eine
Vielzahl von Modifikationen für jedes dieser Bildbestandteilselemente.
Die Anordnung und Auswahl dieser Daten und
Modifikationen kann sehr leicht durchgeführt werden, so daß
die Erstellung und Bearbeitung von Bildern selbst von solchen
Bedienungspersonen durchgeführt werden kann, die in dieser
Tätigkeit nicht besonders geschult sind.
Nachfolgend wird unter Bezugnahme auf die Fig. 33 bis 39 ein
weiteres Ausführungsbeispiel der Erfindung näher beschrieben,
bei der das Wiederauffinden der Teilbilder bzw. der Bildbestandteilselemente
dadurch weiter verbessert wird, daß eine
Verdeutlichung oder Hervorhebung des gewählten Teilbilds
stattfindet.
Bei dem vorstehend in Verbindung mit Fig. 17 erläuterten
Ausführungsbeispiel wird das Wiederauffinden bzw. die Auswahl
eines gewünschten Teilbilds durch Bewegen der Maus 2060
durchgeführt, um den Grafikcursor 8010 zu einer Position zu
bringen, an der er auf das gewünschte Teilbild deutet, worauf
die Maustaste gedrückt wird. Als Folge dieses Vorgangs werden
in einer Reihenfolge, die umgekehrt zu der Reihenfolge der
Anzeige ist, aus der Vielzahl der Teilbilder solange Teilbilder
herausgegriffen, bis dasjenige Bildbestandteilselement
bzw. Teilbild gefunden ist, das die angegebenen Koordinaten
enthält, wodurch das zu bearbeitende Teilbild gewählt wird.
Bei diesem Ausführungsbeispiel ist jedoch keine Einrichtung
vorgesehen, die das tatsächlich ausgewählte Teilbild anzeigt,
so daß die Bedienungsperson nicht weiß, welches der Teilbilder
sie tatsächlich gewählt hat.
Dieses Problem wird mit dem nachfolgend unter Bezugnahme auf
die Zeichnung beschriebenen Ausführungsbeispiele gelöst.
Ein entsprechender Steuerungsablauf ist ebenfalls in dem
Speicher 2010a gespeichert, wobei die CPU 2010 die diesem
Steuerungsablauf entsprechenden Vorgänge ausführt.
In einem Anfangsschritt S1601 werden die von der Bedienungsperson
angegebenen Koordinaten (xc, yc) auf die gleiche Weise
eingegeben, wie vorstehend beschrieben wurde. In einem Folgeschritt
S1602 wird ein Wiederauffindvorgang durchgeführt, um
diese Koordinaten (xc, yc) herauszusuchen.
Diese Schritte können mittels des in Fig. 26 gezeigten Flußdiagramms
durchgeführt werden. In einem Schritt S1603 wird
überprüft, ob ein Objekt bzw. Ziel-Teilbild vorliegt. Bei
diesem Ausführungsbeispiel wird wie bei dem vorangehenden
Ausführungsbeispiel entschieden, daß dann kein Objekt vorliegt,
wenn die Variable i den Wert 0 erreicht hat. Andernfalls
werden die in der Zeile e₁ angegebenen Teilbilddaten
als Ziel-Teilbilddaten eingestuft, die durch den Wiederauffindvorgang
gefunden werden. Der Ablauf ist dann beendet,
wenn kein Objekt vorliegt. Es versteht sich, daß die Bedienungsperson
diesen Vorgang nach der Durchführung einer geeigneten
Bearbeitung, wie z. B. dem Hinzufügen eines Bildes,
selbst dann beenden kann, wenn keine Ziel-Teilbilddaten vorliegen.
In einem Schritt S1604 wird ein Halbton- oder Vergitterungsvorgang
durchgeführt. Der Vergitterungsvorgang kann durchgeführt
werden, indem z. B. die logische Summe (ODER) des in
Fig. 34 gezeigten Musters und des auf dem Bildschirm angezeigten
Bildes berechnet wird. Das in Fig. 35 gezeigte Bild
wird z. B. dadurch erhalten, daß das in Fig. 34 gezeigte
Muster einer ODER-Verknüpfung mit dem in Fig. 25A gezeigten
Bild unterzogen wird.
Die Anzeige eines vorgegebenen Musters kann durchgeführt
werden, indem ein Einheitsmuster eines kleinen Abschnitts
wiederholt wird, so daß nicht Bilddaten verwendet werden
müssen, die sich gemäß Fig. 34 über die ganze Anzeigefläche
erstrecken. In einem Schritt S1605 wird das das Ziel-Teilbild
darstellende Element angezeigt. In diesem Schritt wird demnach
das in der Zeile ei; die durch den im Schritt S1602
bestimmten Wert der Variable i identifiziert wird, erhaltene
Teilbild angezeigt. Dieser Vorgang kann im wesentlichen auf
die gleiche Weise durchgeführt werden, wie es anhand der
Schritte S503 und S504 des Flußdiagramms der Fig. 22 erläutert
wurde. Als Folge davon wird der Bildschirminhalt entsprechend
der Darstellung in Fig. 36 geändert, wodurch die Bedienungsperson
erkennen kann, daß das gewünschte Teilbild korrekt
gewählt wurde.
In einem Schritt S1606 gibt die Bedienungsperson eine Bestätigung,
um die richtige Wahl des gewünschten Teilbilds zu
bestätigen. Dies kann erreicht werden, indem auf eine entsprechende
Nachricht, die in einem geeigneten Bereich, beispielsweise
dem unteren Leerbereich der Bildschirmfläche
angezeigt wird, mittels der Tastatur eine Antwort "JA" oder
"NEIN" eingegeben wird, oder indem in einem Menue, welches
beispielsweise gemäß der Darstellung in Fig. 37 angezeigt
wird, der entsprechende Menuepunkt gewählt wird. Wenn die
Bedienungsperson im letzteren Fall mittels der Maus 2060 den
Menuepunkt "Wähle dieses" ausgewählt hat, schließt die CPU
hieraus, daß das nunmehr angezeigt bzw. hervorgehobene Teilbild
dasjenige ist, das die Bedienungsperson zu bearbeiten
wünscht. Wenn die Bedienungsperson hingegen auf den Menuepunkt
"Wähle anderes" oder auf den Bereich außerhalb des
Menues gezeigt hat, schließt die CPU hieraus, daß das hervorgehobene
Teilbild nicht dasjenige ist, das die Bedienungsperson
zu bearbeiten wünscht bzw. wählen wollte. Für den Fall,
daß die Bedienungsperson dem hervorgehoben angezeigten Teilbild
zustimmt, verzweigt der Ablauf vom Schritt S1607 zu
einem Schritt S1608. Andernfalls ist der Steuerungsablauf
beendet.
Der Schritt S1608 setzt sich aus Unterschritten zusammen, die
im wesentlichen den Schritten S1002 bis S1005 des in Fig. 27
gezeigten Flußdiagramms entsprechen. Demnach kann im Schritt
S1608 an dem gewählten Teilbild der bereits erläuterte
Bearbeitungsvorgang durchgeführt werden. Wenn im Schritt S1607
das von der Bedienungsperson gewünschte Teilbild nicht gewählt
werden konnte, kann die Bedienungsperson ein anderes
ein Teilbild darstellendes Element wieder auffinden bzw.
hervorholen.
Bei dem beschriebenen Ausführungsbeispiel wird somit das
hervorgeholte Teilbild angezeigt, nachdem ein Halbtonvorgang
durchgeführt wurde, und die Bedienungsperson
erhält die Möglichkeit, zu bestätigen, ob das gewünschte
Teilbild Korrektur gewählt wurde oder nicht. Stattdessen
ist es jedoch auch möglich, während der Anzeige des
Teilbilds ein Bearbeitungsmenue anzuzeigen, so daß die Bedienungsperson
durch Angabe einer der Bearbeitungspunkte eine
Bearbeitung durchführen kann, wenn das angezeigte Teilbild
dasjenige ist, das die Bedienungsperson bearbeiten möchte.
Wenn das angezeigte Teilbild hingegen nicht dasjenige ist,
auf das die Bedienungsperson zugreifen wollte, gibt die Bedienungsperson
dies dadurch zu verstehen, daß sie auf den
Bereich außerhalb des Bearbeitungsmenues zeigt, wodurch die
Bearbeitung verhindert wird. Es ist weiterhin möglich, ein
Bearbeitungsmenue zur Verwendung für den Fall vorzusehen, daß
kein Objekt bzw. Teilbild gefunden wurde, so daß der gleiche
Verarbeitungsvorgang wie beim Auffinden eines Ziel-Teilbilds
auch auf den Fall angewandt werden kann, bei dem kein Ziel-Teilbild
vorhanden ist. In einem solchen Fall wird ein Steuerungsablauf
durchgeführt, dessen Flußdiagramm in Fig. 38
dargestellt und der ebenfalls im Speicher 2010 gespeichert
ist. Es sei darauf hingewiesen, daß in diesem Flußdiagramm
Bezugszeichen, die denen bereits erläuterter Flußdiagramme
entsprechen, übereinstimmende Schritte bezeichnen.
Im Steuerungsablauf gemäß Fig. 38 fehlt der im Steuerungsablauf
gemäß Fig. 33 verwendete Überprüfungsschritt S1603, so
daß der Schritt S1604 unabhängig davon durchgeführt wird, ob
ein Ziel-Teilbild vorhanden ist oder nicht. Im Schritt S1605
wird das Ziel-Teilbild angezeigt, falls vorhanden, worauf ein
Schritt durchgeführt wird, der dem Schritt S1002 der Fig. 27
entspricht, um ein Menue auszugeben bzw. anzuzeigen. In einem
Schritt S2101 verzweigt der Ablauf zum Schritt S1003, wenn
aus dem Menue ein Menuepunkt ausgewählt wurde. Daraufhin wird
auf die gleiche Weise, wie bereits in Verbindung mit Fig. 27
erläutert wurde, ein Bearbeitungsvorgang durchgeführt. Wenn
im Schritt S2101 auf einen Bereich außerhalb des Menues
gedeutet wird, schließt die CPU hieraus, daß das angezeigte
Teilbild nicht dasjenige ist, welches die Bedienungsperson
bearbeiten möchte, und beendet daher diesen Steuerungsablauf,
ohne eine Bearbeitung zuzulassen.
In diesem Fall ist es empfehlenswert, das Bearbeitungsmenue
an einer Stelle anzuzeigen, an der es das hervorgeholte
Teilbild, das nun angezeigt wird, nicht verdeckt. Das Menue
wird daher beispielsweise auf die in Fig. 39 gezeigte Art und
Weise angezeigt. Die Anzeigeposition dieses Menues kann in
bezug auf die Anzeigeposition des hervorgeholten Teilbilds
berechnet werden.
Obgleich bei diesem Ausführungsbeispiel der Halbton- bzw.
Schattierungsvorgang durch Überziehen der Anzeigefläche mit
schwarzen Punkten durchgeführt wurde, kann dieser Halbton
alternativ auch mittels Weiß-Leerstellen bzw. -Punkten oder
mittels einer Invertierung in Form eines Gitters erzeugt
werden. Wenn die Anzeige mit einer Vielzahl von Farben durchgeführt
wird, kann der Halbton dadurch erzeugt werden, daß
die Anzeigefläche mit einem Gitter einer bestimmten Farbe
überzogen wird, oder dadurch, daß die Farben durch eine
Invertierung der Farbdatenbits geändert werden.
Bei dem vorangehenden Ausführungsbeispiel wird der Bereich
außerhalb des das gewählte Teilbild darstellenden Elements
durch einen Halbton bzw. eine Tönung angedeutet. Dies ist
jedoch nur eine Möglichkeit. Nachfolgend wird ein weiteres
Ausführungsbeispiel zur Hervorhebung eines gewählten Teilbilds
unter Bezugnahme auf das in Fig. 40 gezeigte Flußdiagramm
näher erläutert.
In einem Anfangsschritt S2301 werden die von der Bedienungsperson
angegebenen Koordinaten (xc, yc) wie im Schritt S1601
des in Fig. 38 gezeigten Flußdiagramms eingegeben. In einem
Folgeschritt S2302 wird ein Wiederauffindvorgang durchgeführt,
um dasjenige Teilbild bzw. Bildbestandteilselement zu
suchen, das die Koordinaten (xc, yc) enthält. Das Wiederauffinden
kann mittels des Steuerungsablaufs, der vorstehend in
Verbindung mit Fig. 26 erläutert wurde, durchgeführt werden.
In einem Schritt S2303 wird das im Schritt S2302 erhaltene
Teilbild angezeigt, d. h. die Daten in Zeile ei. Dies kann
mittels des anhand der Schritte S503 und S504 der Fig. 22
erläuterten Steuerungsablaufs durchgeführt werden. In einem
Schritt S2304 wird in einem geeigneten Bereich der Anzeigefläche
eine Nachricht ausgegeben, damit die Bedienungsperson
überprüfen kann, ob das auf die eingegebenen Koordinaten hin
gesuchte und angezeigte Teilbild dasjenige ist, welches die
Bedienungsperson bearbeiten möchte. Die Bestätigung oder
Zustimmung kann dadurch gegeben werden, daß wie bei dem
vorangehenden Ausführungsbeispiel mittels der Tastatur eine
entsprechende Antwort "JA" oder "NEIN" eingegeben oder ein
Menue verwendet wird. Wenn ein Menue verwendet wird, um der
Bedienungsperson eine Möglichkeit zur Bestätigung oder Zustimmung
zu geben, kann der Steuerungsablauf wie folgt sein.
In diesem Fall wird ein in Fig. 41A dargestelltes Menue in der
Weise angezeigt, daß die Bedienungsperson einen der Menuepunkte
des Menues auswählen kann. In einem Folgeschritt S2305
wird überprüft, ob die Wahl des Menupunkts beendet ist. Wenn
dies nicht der Fall ist, verzweigt der Ablauf zu einem
Schritt S2306, wird die EXKLUSIV-ODER-Verknüpfung mit denjenigen
Markierungsdaten berechnet, die dem das gewählte Teilbild
darstellenden Element oder das Element selbst entsprechen,
wodurch die Anzeige des hervorgeholten Teilbilds invertiert
wird. Daraufhin kehrt der Ablauf wieder zu dem Schritt
S2305 zurück und der Vorgang wird so lange wiederholt, bis
irgendein Menuepunkt aus dem Menue ausgewählt ist. In der
Zwischenzeit wird das hervorgeholte Teilbild einer "tennisspielenden
Person" daher abwechselnd in dem in Fig. 41A und
in dem in Fig. 41B gezeigten Zustand angezeigt, wodurch
dieses Teilbild blinkt und dadurch der Bedienungsperson anzeigt,
das das angezeigte bzw. blinkende Teilbild dasjenige
ist, das er zu bearbeiten wünscht.
Wenn die Wahl eines Menuepunktes aus dem Menue erfaßt wird,
verzweigt der Ablauf zu einem Schritt S2307, bei dem überprüft
wird, welcher Menuepunkt aus dem Menue gewählt wurde.
Wenn der gewählte Menuepunkt "Wähle dieses" ist, schließt die
CPU daraus, daß das gewählte Teilbild dasjenige ist, welches
die Bedienungsperson zu bearbeiten wünscht, worauf zu einem
Schritt S2308 verzweigt wird. Wenn der gewählte Menuepunkt
hingegen "Wähle anderes" ist, schließt die CPU hieraus, daß
das nunmehr angezeigte Teilbild nicht dasjenige ist, welches
die Bedienungsperson wählen wollte, und bricht daher den
Steuerungsablauf ab. In dem letzteren Fall kann die CPU einen
Steuerungsablauf durchführen, um diejenigen Zeilen bzw. die
entsprechenden Teilbilder hervorzuholen, die der gerade hervorgeholten
Zeile i nachfolgen. Es ist nicht unbedingt erforderlich,
das angezeigte bzw. gewählte Teilbild in einem
Blinkzustand zu versetzen. Vielmehr ist es auch möglich, das
hervorgeholte Teilbild so lange in dem in Fig. 41B gezeigten
invertierten Zustand anzuzeigen, bis ein Menuepunkt aus dem
Menue gewählt ist. Wenn die Überprüfung in Schritt S2302
ergeben hat, daß kein hervorgeholtes Objekt vorhanden ist,
kann der Steuerungsablauf ohne Anzeige eines Blindmusters und
damit ohne Löschung fortgesetzt werden, so daß der Bearbeitungsvorgang
an der ganzen Anzeigefläche durchgeführt werden
kann.
Nachfolgend wird unter Bezugnahme auf Fig. 42 die Hervorhebung
eines anderen gewählten Teilbilds näher erläutert.
Bei dem vorangehenden Ausführungsbeispiel wird zur unterscheidbaren
Hervorhebung des gewählten Teilbilds ein Halbtonvorgang
bzw. eine Schattierung durchgeführt, nachdem das
ganze Bild angezeigt ist, worauf das gewählte Teilbild erneut
angezeigt wird. Dies ist jedoch nicht die einzige Möglichkeit.
Der Schattierungsvorgang kann beispielsweise gleichzeitig
mit der Erzeugung des Bilds durchgeführt werden. Dies ist
insbesondere dann von Vorteil, wenn das Gerät bzw. die Hardware
eine Bitblock-Übertragung unterstützt, da durch diese
zusätzliche Funktion die Verringerung der Arbeitsgeschwindigkeit
minimiert werden kann. Ein typisches Beispiel einer
Bitblockübertragung bzw. eines Bitblock-Transfers wird in der
Programmiersprache SMALL-TALK 80 (Warenzeichen der Firma
Xerox) durch den Befehl "BitBlt" realisiert. Obwohl in diesem
Beispiel der Bitblock-Transfer mittels Software realisiert
wird, wurden bereits zahlreiche Vorschläge zum Entwurf einer
festverdrahteten Schaltung gemacht, mit der diese Funktion
durchführbar ist. Die nachfolgende Beschreibung wird daher
unter der Annahme gemacht, daß eine festverdrahtete Schaltung
vorhanden ist, welche diese Funktion realisiert.
Nachfolgend wird ein Standardverfahren oder -steuerungsablauf
zur Darstellung eines Bitmusters durch die genannte Sprache
SMALL-TALK 80 näher erläutert.
In dem nachfolgenden Steuerungsablauf stellt das Zeichen
eine Abgrenzung dar und entspricht im wesentlichen einem
Komma.
aBB - BitBlt
destform: Display
sourceForm: sForm
halftoneForm: Form black
combinationsRule: Form over
destOrigin: 0 ∂ 0 extent 200 ∂ 400
clipRect: (0 ∂ 0 corner: 1023 ∂ 1023)
aBB copyBits.
destform: Display
sourceForm: sForm
halftoneForm: Form black
combinationsRule: Form over
destOrigin: 0 ∂ 0 extent 200 ∂ 400
clipRect: (0 ∂ 0 corner: 1023 ∂ 1023)
aBB copyBits.
In dem vorstehenden Programm bedeutet "destForm: Display",
daß das Ziel bzw. der Bestimmungsort des Bitmusters der
Monitor ist, während die "sourceForm: sForm" bedeutet, daß
das zu übertragende Objekt die sForm ist. Wenn daher sForm
dem das Teilbild darstellenden Element "Person" entspricht,
werden die der "Person" entsprechenden Daten auf dem Monitor
angezeigt. Die "halftoneForm: Form black" gibt das Muster des
Halbtons an und bestimmt im vorliegenden Fall, daß das gesamte
Muster schwarz ist, d. h., daß kein Tönungsvorgang durchgeführt
wird. Wenn anstelle von "Form black" das Wort "Form
gray" eingesetzt wird, um ein gepunktetes Muster zu realisieren,
wird lediglich ein gepunkteter Bereich angezeigt, so daß
eine Halbtonanzeige entsteht. Der Befehl "combinationRule:
Form over" wird verwendet, um in Abhängigkeit von den Zuständen
der Bits der Bestimmung und des zu übertragenden Objekts
den Wert bzw. Art der Bestimmung anzugeben. Im Falle der
Angabe "Form over" wird das Objekt zu der Bestimmung bzw. dem
Zielort übertragen. Die Ausgabe "destOrigin: 0 ∂ 0" stellen
die Koordinaten des Zielorts dar. In diesem Fall ist sowohl
die x- als auch die y-Koordinate 0. Die Anweisung "destOrigin:
0 ∂ 0 extent 200 ∂ 400" bedeutet, daß das zu übertragende
Objekt ein rechteckförmiger Bereich ist, dessen x-Koordinaten
von 0 bis 200 und dessen y-Koordinaten von 0 bis 400
laufen. Die Anweisung "clipRect: (0 ∂ 0 corner: 1023 ∂ 1023)"
bedeutet, daß der Berandungsbereich bzw. die Gesamtfläche der
Bildschirmanzeige in x-Richtung von 0 bis 1023 und in y-Richtung
von 0 bis 1023 reicht bzw. eine entsprechende Punkteanzahl
aufweist.
Unter diesen Voraussetzungen wird der Variablen aBB ein Bitblock-Transfer
zugeordnet und die Nachricht "copy-Bits" gesendet,
wodurch die Übertragung ausgeführt wird.
Der gleichzeitig mit der Anzeige des Teilbilds durchgeführte
Tönungsvorgang ist daher insbesondere dann wirksam, wenn die
Halbtonfunktion als Grundfunktion für die Bitmusteranzeige
vorhanden ist.
Wenn im Schritt S503 gemäß Fig. 22 die Markierung durchgeführt
wird, wird in diesem Fall die Funktion bzw. Anweisung
"halftonForm: Form black" verwendet, weshalb kein Tönungsvorgang
durchgeführt und der darüberliegende Bildbereich
ausgeschnitten wird. Wenn im Schritt S504 das in der Zeile ei
befindliche Element geschrieben wird, wird die Anweisung
"halftoneForm: Form black" verwendet, falls das das Teilbild
darstellende Element in der Zeile ei gewählt wurde, wodurch
die Anzeige auf gewöhnliche Weise bewirkt wird. Wenn das
Teilbild in der Zeile ei hingegen nicht gewählt wurde, wird
die Anweisung "halftoneForm: Form gray" verwendet, um eine
Halbtonanzeige hervorzurufen. Es sei erwähnt, daß in der
Sprache SMALL-TALK 80 das logische Produkt (UND) des Bildes
und der vorgenannten Daten der Anweisung "combinationRule:
Form and" entspricht. In ähnlicher Weise entspricht die logische
Summe (ODER) der Anweisung "combinationRule: Form
under".
Um der Bedienungsperson die Möglichkeit zu geben, zu überprüfen,
ob das Teilbild bzw. die entsprechenden Daten der Zeile
e₁ gewählt wurden, ist es weiterhin möglich, der in Fig. 20
gezeigten Bildaufbautabelle 3010 eine Spalte hinzufügen, in
der eine Kennung bzw. Flag gespeichert wird, das die Bedeutung
"gewählt" oder "nicht gewählt" hat, wobei der Inhalt
dieser Spalte bzw. diese Kennung neu geschrieben wird, wenn
das entsprechende Teilbild gefunden wurde. Fig. 42 zeigt ein
Beispiel für eine in dieser Weise aufgebaute Bildaufbautabelle
3501. Wenn der Inhalt der Spalte 2504 gleich "0" ist,
nimmt die CPU an, daß das gewünschte Teilbild nicht gewählt
wurde, und gibt entsprechende Befehle, um eine Halbtonanzeige
hervorzurufen. Wenn der Inhalt dieser Spalte bzw. die Kennung
hingegen den Wert "1" hat, schließt die CPU hieraus, daß das
gewünschte Element bzw. Teilbild gewählt wurde, und veranlaßt,
daß das gewählte Teilbild angezeigt wird, ohne einen
Tönungsvorgang durchzuführen.
Wenn das angezeigte Teilbild als das Ziel-Teilbild bzw.
-Element eingestuft wird, d. h., wenn der Wert der Variablen i
im Schritt S304 der Fig. 26 innerhalb eines vorgegebenen
Bereichs liegt, wird im Schritt S1206 des in Fig. 38 gezeigten
Flußdiagramms in der Spalte 2504 der Zeile ei der in Fig.
42 gezeigten Bildaufbautabelle 2501 der Wert "1" eingestellt,
während in der Spalte 2504 der Wert "0" eingestellt wird,
wenn der Wert der Variablen i außerhalb dieses Bereichs
liegt. Im Schritt S1604 wird daher anstelle der in dem Steuerungsablauf
gemäß Fig. 22 durchgeführten erneuten Anzeige
überprüft, ob eine Tönung herbeigeführt werden soll oder
nicht.
Der Schritt S1605 muß nicht ausgeführt werden. Wenn dieser
Schritt nicht ausgeführt wird, falls ein Teil des Ziel-Teilbilds
hinter einem anderen Teilbild verborgen ist, wird
lediglich dieser verborgene Teil auf normale Weise angezeigt.
Diese Funktion ist insofern wirksam, als sie die Bedienungsperson
in die Lage versetzt, zu erkennen, welcher Teil dieses
Teilbilds im endgültigen Bild verborgen bzw. verdeckt sein
wird. Bei diesem Vorgang tritt jedoch das Problem auf, daß
die Bedienungsperson das betreffende Element bzw. Teilbild
dann nur schwer erkennen kann, wenn der größte Teil dieses
gewünschten Teilbilds verborgen ist. Um dieses Problem zu
umgehen, wird vorzugsweise allein das das gewählte Teilbild
darstellende Element ohne Halbton-Gitter bzw. Tönung angezeigt,
obgleich eine derartige Anzeige die Bedienungsperson
nicht in die Lage versetzt, zu erkennen, welche Teile dieses
Teilbilds im endgültigen Bild verborgen sein werden. Vorzugsweise
wird daher eine geeignete Schaltvorrichtung vorgesehen,
mit der die Bedienungsperson selektiv eine dieser beiden
Darstellungsarten wählen kann.
Das endgültige Bild kann dadurch angezeigt werden, daß in
alle Zeilen der Spalte 2504 der in Fig. 42 gezeigten Bildaufbautabelle
der Wert "1" eingeschrieben wird.
Obgleich bei dem beschriebenen Ausführungsbeispiel der Bildaufbautabelle
eine Spalte zur Speicherung von Daten, die sich
auf die Auswahl beziehen, hinzugefügt ist, können gleichwohl
auch verschiedene andere Verfahren eingesetzt werden. Beispielsweise
ist es möglich, den Identifizierer bzw. die Verweisdaten
des gewählten Elements in einem unterschiedlichen
Speicherplatz zu speichern und die Entscheidung, ob ein Tönungsvorgang
durchzuführen ist oder nicht, dadurch herbeizuführen,
daß überprüft wird, ob diese Verweisdaten mit dem
Zielelement übereinstimmen.
Wie aus vorstehender Beschreibung zu erkennen ist, wird bei
diesem Ausführungsbeispiel das von der Bedienungsperson für
Bearbeitungszwecke ausgewählte Teilbild hervorgehoben dargestellt,
woran die Bedienungsperson erkennen kann, daß das
Teilbild, an dem sie interessiert ist, korrekt gewählt
wurde, wodurch die Effizienz des Bearbeitungsvorgangs merklich
verbessert ist.
Der bei diesem Ausführungsbeispiel zur Hervorhebung des das
gewählte Teilbild darstellenden Elements angewandte Tönungsvorgang
oder die Invertierung sind lediglich beispielhaft,
wobei auch andere Verfahren in gleicher Weise angewandt werden
können, die es ermöglichen, das gewählte Teilbild leicht
und abgesetzt von den anderen Teilbildern bzw. Elementen zu
erkennen.
Bei dem beschriebenen Ausführungsbeispiel wird das von der
Bedienungsperson zu Bearbeitungszwecken ausgewählte Teilbild
hervorgehoben, woran die Bedienungsperson erkennen kann, daß
das Teilbild, an dem sie interessiert ist, korrekt gewählt
wurde, womit der Wirkungsgrad des Bearbeitungsvorgangs in
allerhöchstem Maße verbessert ist.
Nachfolgend wird unter Bezugnahme auf die Fig. 43A bis 43E
und 44 die Auswahl eines Teilbildelements näher erläutert.
Das nunmehr beschriebene Verfahren ermöglicht es, ein gewünschtes
Teilbild in noch besserer Weise aus einer Vielzahl von
überlagerten Elementen bzw. Teilbildern herauszugreifen.
Bei den vorangehenden Ausführungsbeispielen wird das Hervorholen
bzw. die Auswahl des das Teilbild darstellenden Elements
durchgeführt, indem der Grafikcursor 8010 mittels der
Maus 2060 zu der Position des Ziel-Teilbilds gebracht und
durch Betätigung der Maustaste dieses Teilbild bzw. Element
angewählt wird. Daraufhin werden die Teilbilder in einer
Reihenfolge, die zu der Anzeigereihenfolge umgekehrt ist,
d. h., von dem obersten bis hin zu dem untersten Teilbild,
solange hervorgeholt, bis dasjenige Teilbild erfaßt wird, das
die mittels des Grafikcursors angegebenen Koordinaten enthält.
Ein Nachteil dieses Verfahrens liegt darin, daß ein
gewünschtes Ziel-Teilbild immer dann nicht erfaßt werden
kann, wenn eine Vielzahl von Teilbildern einander überlagert
sind. Es sei nun angenommen, daß anstelle des "äußeren" oder
"oberen" "Berges" die Auswahl des "inneren" oder "unteren"
"Berges" gewünscht wird. (Es ist zu beachten, daß in den
vorangehenden Ausführungsbeispielen jeweils der "äußere" oder
"obere" "Berg" gewählt wurde.)
Nachfolgend wird unter Bezugnahme auf Fig. 43A ein Steuerungsablauf
zur Auswahl des "unteren" Berges näher erläutert.
Es sei angenommen, daß der Grafikcursor 8010 auf Koordinaten
(xc, yc) zeigt.
In diesem Fall gelten die folgenden Bedingungen:
x₁ ≦ xc < x₁ + Δx₁
y₁ ≦ yc < y₁ + Δy₁
y₁ ≦ yc < y₁ + Δy₁
und
x₂ ≦ xc < x₂ + Δx₂
y₂ ≦ yc < y₂ + Δy₂
y₂ ≦ yc < y₂ + Δy₂
Bei den vorangehenden Ausführungsbeispielen wurde das Wiederauffinden
durchgeführt, indem die Teilbilder darauf überprüft
wurden, ob der entsprechende Rechteckbereich dieser Teilbilder
bzw. Elemente die angegebenen Koordinaten (xc, yc) enthält,
und zwar von dem äußersten zu dem inneren hin. Infolgedessen
wird entgegen der gewünschten Wahl statt des "inneren"
Berges der "äußere" Berg gewählt.
Bei diesem Ausführungsbeispiel ist daher eine Einrichtung
vorgesehen, die deutlich einige Teilbilder anzeigt, von denen
erwartet wird, daß sie die angegebenen Koordinaten enthalten
(diese Teilbilder bzw. Elemente werden nachfolgend als "Kandidaten-Elemente"
bezeichnet). Diese Kandidaten-Elemente werden
in einer vorgegebenen Reihenfolge derart ausgegeben, daß
die Bedienungsperson auf dasjenige Element bzw. Teilbild
zugreifen kann, an dem er tatsächlich interessiert ist.
Der entsprechende Steuerungsablauf wird nachfolgend unter
Bezugnahme auf die Fig. 43A bis 42E sowie das in Fig. 44
gezeigte Flußdiagramm näher erläutert. Das in Fig. 44 gezeigte
Flußdiagramm stellt eine Verbesserung gegenüber dem in
Fig. 26 gezeigten Steuerungsablauf dar.
In einem Anfangsschritt S1701 werden die von der Bedienungsperson
angegebenen Koordinaten (xc, yc) auf die vorstehend
beschriebene Weise eingegeben. In einem Folgeschritt S1702
wird die Variable i mit dem Wert n belegt. Der in Schritten
S1702 bis S1707 durchgeführte Steuerungsablauf entspricht im
wesentlichen dem in den Schritten S901 bis S906 des in Fig.
26 gezeigten Flußdiagramms durchgeführten Steuerungsablauf,
so daß zur Vermeidung von Wiederholungen auf eine erneute
Beschreibung verzichtet wird. Demzufolge verzweigt der Ablauf
vom Schritt S1705 dann zum Schritt S1708, wenn ein Teilbild
erfaßt wird, dessen Bereich bzw. Fläche die eingegebenen
Koordinaten (xc, yc) enthält.
Im Schritt S1708 wird das auf diese Weise erfaßte Teilbild
als eines der Kandidaten-Elemente angezeigt. Der Anzeigevorgang
kann mit demjenigen übereinstimmen, der in den Schritten
S503 und S504 des in Fig. 22 gezeigten Flußdiagramms durchgeführt
wurde. In einem Folgeschritt S1709 wird ein Menue
angezeigt, um die Bedienungsperson in die Lage zu versetzen,
dieses Kandidaten-Element zu bestätigen bzw. auszuwählen.
Obgleich diese Bestätigung auch über die Tastatur mittels
einer entsprechenden Antwort "JA" oder "NEIN" vorgenommen
werden kann, wird bei dem beschriebenen Ausführungsbeispiel
ein Menue verwendet, aus dem die Bedienungsperson mittels des
Grafikcursors 8010 einen Menuepunkt auswählen kann, um eine
Verschlechterung der Bedienungsfreundlichkeit zu vermeiden,
die auf die abwechselnde Verwendung der Tastatur und der Maus
zurückzuführen wäre.
Wenn der Schritt S1708 begonnen wird, wird daher gemäß der
Darstellung in Fig. 43B der "äußere" Berg angezeigt. In einem
Schritt S1710 wird überprüft, ob nach der Anzeige des Menues
eine Reaktion seitens der Bedienungsperson erfolgt ist. Wenn
entschieden wird, daß keine Reaktion erfolgt ist, verzweigt
der Ablauf zu einem Schritt S1711, bei dem das gegenwärtig
ausgesuchte Teilbild, welches nicht dasjenige ist, für das
sich die Bedienungsperson interessiert, d. h. also der
"äußere" Berg, gemäß der Darstellung in Fig. 43C invertiert
wird. Diese Invertierung kann erreicht werden, indem beispielsweise
die Bildelementdaten der in Fig. 21 gezeigten
Markierungsdaten invertiert werden und indem anschließend die
logische Summe (ODER) der invertierten Daten und des angezeigten
Bildes berechnet wird. Diese Invertierung ist jedoch
nicht wesentlich. Es ist vielmehr alleine erforderlich, daß
das ausgesuchte Teilbild in unterschiedlicher Art als die
anderen Teilbilder dargestellt wird, damit die Bedienungsperson
dieses Teilbild sehr leicht erkennen kann.
Nach Durchführung der Invertierung kehrt der Ablauf wieder zu
dem Schritt S1710 zurück. Wenn seitens der Bedienungsperson
wieder keine Reaktion erfolgt, verzweigt der Ablauf zum
Schritt S1711, bei dem das invertiert angezeigte Teilbild
erneut invertiert wird, so daß wiederum das in Fig. 43B
dargestellte Bild angezeigt wird. Die Schritte S1710 und
S1711 werden wiederholt und abwechselnd so lange wiederholt,
wie eine Reaktion seitens der Bedienungsperson aussteht, so
daß das Kandidaten-Element in einer Blinkanzeige dargestellt
wird.
Die Bedienungsperson kann nun entscheiden, ob das blinkende
Teilbild dasjenige ist, auf das sie mittels der Maus 2060
gedeutet hat. Der Ablauf verzweigt daraufhin zu dem Schritt
S1712, bei dem das gegenwärtig ausgewählte Teilbild erneut
angezeigt wird. Wenn dieser Schritt nicht ausgeführt wird,
kann in Abhängigkeit von dem zeitlichen Ablauf der Eingabe
der Antwort bzw. der Reaktion der Bedienungsperson das gewählte
Teilbild auch in invertiertem Zustand angezeigt werden.
In einem Schritt S1713 gibt die Bedienungsperson auf
eine in einem Menue gestellte Frage hin eine Antwort dahingehend,
ob das blinkende Teilbild dasjenige ist, für welches
sie sich interessiert. Die Antwort wird gegeben, indem im
Menue entweder auf den Menuepunkt "Wähle dieses" oder auf den
Menuepunkt "Wähle anderes" gedeutet wird. Wenn das blinkende
Teilbild bzw. Element nicht dasjenige ist, für das sich die
Bedienungsperson interessiert, wählt die Bedienungsperson den
Menuepunkt "Wähle anderes". In einem solchen Fall verzweigt
der Ablauf zum Schritt S1706, bei dem die Variable i um den
Wert "1" dekrementiert wird, wodurch das Hervorholen des
nächsten Teilbilds, d. h. des unmittelbar unter dem blinkenden
Teilbild befindlichen Teilbilds begonnen wird. Da in dem hier
angenommenen Fall das Teilbild, auf das die Bedienungsperson
zuzugreifen wünscht, der "innere" Berg ist, wählt die Bedienungsperson
entsprechend den Menuepunkt "Wähle anderes",
worauf das nächste Teilbild bzw. Element hervorgeholt bzw.
ausgelesen wird.
Das Hervorholen bzw. Auslesen erfolgt auf die vorstehend
beschriebene Weise, wobei die Variable i um "1" dekrementiert
ist. Wenn der Schritt S1708 begonnen wird, wird der "innere"
Berg gemäß der Darstellung in Fig. 43D angezeigt. Wie aus
dieser Figur zu erkennen ist, wird das nun hervorgeholte
Teilbild an der Vorderseite bzw. in oberster Ebene angezeigt,
um der Bedienungsperson ein leichtes Erkennen zu ermöglichen.
Daraufhin werden mittels der Schritte S1710 und S1711 die in
Fig. 43E und 43F gezeigten Bilder abwechselnd und wiederholt
angezeigt.
Im Schritt S1713 wird überprüft, ob die von der Bedienungsperson
gegebene Antwort der Menuepunkt "Wähle anderes" ist
oder nicht. Wenn die Antwort "JA" lautet, verzweigt der
Ablauf zu dem vorstehend beschriebenen Schritt S1706, so daß
das nächste (innere) Teilbild ausgelesen wird. Wenn die Bedienungsperson
mittels des Grafikcursors 8010 jedoch auf
einen anderen Bereich als "Wähle anderes" gedeutet hat, verzweigt
der Ablauf zu einem Schritt S1714, bei dem überprüft
wird, ob die Bedienungsperson den Menuepunkt "Wähle dieses"
gewählt hat. Wenn die Antwort "JA" lautet, schreitet der
Ablauf zu einem Schritt S1715, wodurch die gewünschte Bearbeitung
an dem gewählten Teilbild begonnen wird. Wenn die
Überprüfung im Schritt S1714 hingegen ergeben hat, daß der
Grafikcursor auf einen Bereich außerhalb der Menuepunkte
"Wähle dieses" und "Wähle anderes" deutet, stuft die CPU die
Eingabe als Fehler ein und beendet den Abrufvorgang, ohne den
Beginn einer Bearbeitung zuzulassen. Um ein Beenden des Abrufs-
bzw. Auslesevorgangs zu ermöglichen, ist es möglich,
dem Menue einen Menuepunkt "Beenden" hinzuzufügen.
Ob das gewünschte Teilbild gefunden wurde oder nicht, kann
dadurch in Verfahrung gebracht werden, daß der Wert der
Variablen i bei Beendigung des Abrufvorgangs überprüft wird.
Wenn die Variable i nicht den Wert "0" hat, bedeutet dies,
daß das interessierende Teilbild gefunden wurde. Wenn die
Variable i hingegen den Wert "0" hat, bedeutet dies, daß das
gewünschte Teilbild nicht gefunden werden konnte.
Wenn bei diesem Ausführungsbeispiel die Variable i < 0 ist,
schließt die CPU hieraus, daß das gewünschte Teilbild nicht
existiert, worauf der Ablauf zum Schritt S1715 verzweigt, um
ein Bearbeiten der ganzen Bildfläche zu ermöglichen.
Wie aus vorstehender Beschreibung zu erkennen ist, wird bei
diesem Ausführungsbeispiel über eine Vielzahl von Teilbildern
in zu der Anzeigereihenfolge umgekehrter Reihenfolge ein
Abrufvorgang durchgeführt, um dasjenige Ziel-Teilbild herauszufinden,
auf das die Bedienungsperson beispielsweise mittels
eines Grafikcursors gedeutet hat. Das betreffende Ziel-Teilbild
wird, wenn es gefunden ist, derart angezeigt, daß es von
anderen Teilbildern, beispielsweise durch eine Blinkanzeige,
deutlich unterscheidbar ist, wodurch die Bedienungsperson
erkennen kann, daß das angezeigte Teilbild dasjenige ist, auf
das er gedeutet bzw. das er ausgewählt hat. Die Bedienungsperson
kann daher ohne Fehler dasjenige Teilbild aussuchen,
an dem sie interessiert ist. Darüber hinaus ist es möglich,
auch ein solches Teilbild zu wählen, das zum größten Teil
hinter einem oder mehreren anderen Teilbildern verborgen ist.
Hierdurch wird der Nutzeffekt der Arbeiten merklich verbessert.
Bei dem beschriebenen Ausführungsbeispiel wird als Anfangswert
der Variablen i die Zahl n eingestellt. Es ist jedoch
auch möglich, stattdessen die Anzahl der in der Bildaufbautabelle
3010 gespeicherten Teilbilder zu verwenden. In einem
solchen Fall kann der Schritt S1702 weggelassen werden, wodurch
die Verarbeitungsgeschwindigkeit weiter erhöht wird.
Das beschriebene Ausführungsbeispiel ermöglicht es der Bedienungsperson
folglich, ein ein gewünschtes Element darstellendes
Teilbild aus einer Vielzahl von Elementen auszuwählen,
aus denen sich ein angezeigtes Bild zusammensetzt, wodurch
die Wirksamkeit des Bildbearbeitungsvorgangs in großem Maße
verbessert wird.
Nachfolgend wird ein weiteres Ausführungsbeispiel der Erfindung
beschrieben, das eine Weiterbildung des anhand der Fig.
43 und 44 beschriebenen Ausführungsbeispiels darstellt. Bei
diesem Ausführungsbeispiel wird eine zusätzliche Überprüfung
dahingehend durchgeführt, ob sich die angegebenen Koordinaten
(xc, yc) in dem Weiß-Leerbereich (d. h. dem Bereich, innerhalb
dessen jedes Bildelement auf "0" gesetzt ist) der Maskierungsdaten
des "Berges" befinden. Hierzu verwendet dieses
Ausführungsbeispiel ein zusätzliches Kriterium, welches die
Maskierungsdaten betrifft.
Wenn die Bedienungsperson den Grafikcursor so positioniert,
daß er auf die in Fig. 43A gezeigten Koordinaten (xc, yc)
deutet, um dadurch den "inneren" Berg zu wählen, wird bei dem
vorstehend beschriebenen Ausführungsbeispiel unerwünschterweise
zuerst der "äußere" Berg gewählt. Im Gegensatz dazu
wird bei diesem Ausführungsbeispiel überprüft, ob der Grafikcursor
auf den Weiß-Leerbereich (nicht-transparenter Bereich)
der in Fig. 21B gezeigten Maskierungsdaten des "äußeren"
Bergs zeigt.
Diese Überprüfung wird wie folgt durchgeführt. Zunächst werden
die auf den "äußeren" Berg bezogenen Relativkoordinaten
(xc′, yc′) der mittels des Grafikcursors 8010 angegebenen
Koordinaten (xc, yc) berechnet, woraufhin überprüft wird, zu
welchem Bereich der Markierungsdaten die Relativkoordinaten
(xc′, yc′) gehören. Bei dieser Überprüfung werden die Koordinaten
des rechten oberen Bereichs bzw. der rechten oberen
Ecke des "äußeren" Berges als Bezugspunkt (0,0) herangezogen,
so daß die Ralativkoordinaten (xc′, yc′) wie folgt definiert
sind:
xc′ = x2-xc yc′ = y2-yc
Der genaue Ablauf des vorstehend beschriebenen Vorgangs wird
nachstehend unter Bezugnahme auf das in Fig. 45 gezeigte
Flußdiagramm näher erläutert. Der entsprechende Steuerungsablauf
ist in dem Speicher 2010a gespeichert. Es sei angenommen,
daß die Maus 2060 in der Weise betätigt wurde, daß sie
auf die Koordinaten (xc, yc) deutet.
In einem Anfangsschritt S1701 wird eine Initialisierung dadurch
ausgeführt, daß die Variable i mit dem Wert n belegt
wird, um den Abruf des "äußersten" Teilbildes zu beginnen. In
einem Folgeschritt S1702 wird überprüft, ob das Bild tatsächlich
dasjenige Teilbild in der Zeile ei der Bildaufbautabelle
3010 enthält, das durch die Variable i angegeben wird. Im
Ausführungsbeispiel kann diese Überprüfung durchgeführt werden,
indem die Zeile ei auf das Vorhandensein eines Identifizierers
bzw. von Verweisdaten überprüft wird. Hierzu wird die
Spalte 3020 der Zeile ei daraufhin überprüft, ob sie nur das
Begrenzungszeichen oder sowohl Verweisdaten als auch das
Begrenzungszeichen enthält. Wenn nur das Begrenzungszeichen
enthalten ist, verzweigt der Ablauf zu einem Schritt S1705,
bei dem die Variable i um "1" dekrementiert wird, worauf in
einem Schritt S1706 überprüft wird, ob die Variable i den
Wert "0" erreicht hat. Wenn dies nicht der Fall ist, kehrt
der Ablauf zu dem Schritt S1702 zurück, um den beschriebenen
Vorgang zu wiederholen.
Wenn die Überprüfung im Schritt S1702 hingegen ergeben hat,
daß die Zeile e₁ Verweisdaten enthält, verzweigt der Ablauf
zu einem Schritt S1703, bei dem der Umfang bzw. das Ausmaß
des Bereichs dieser Verweisdaten berechnet wird. In einem
Folgeschritt S1704 wird überprüft, ob die eingegebenen Koordinaten
(xc, yc) innerhalb des berechneten Bereichs liegen.
Wenn die eingegebenen Koordinaten außerhalb des berechneten
Bereichs liegen, verzweigt der Ablauf zum Schritt S1705,
wodurch der gleiche Vorgang wie beim vorangehenden Ausführungsbeispiel
begonnen wird.
Wenn die Überprüfung im Schritt S1704 hingegen ergeben hat,
daß die eingegebenen Koordinaten (xc, yc) innerhalb des Bereichs
des in der Zeile ei angegebenen Teilbildes liegen,
verzweigt der Ablauf zu einem Schritt S1707, bei dem die auf
die Markierungsdaten dieses Teilbildes bezogenen Relativkoordinaten
(xc′, yc′) der eingegebenen Koordinaten (xc, yc)
berechnet werden. Wenn in der Zeile ei als Verweisdaten das
Teilbild "Berg" gespeichert ist, wird überprüft, ob die Relativkoordinaten
(xc′, yc′) im nicht-transparenten Bereich
(Weißbereich) oder im transparenten Bereich (Schwarzbereich)
der in Fig. 21B gezeigten Maskierungsdaten liegen. Wenn diese
Überprüfung ergibt, daß die Relativkoordinaten (xc′, yc′) im
transparenten Bereich liegen, d. h., demjenigen Bereich, innerhalb
dessen das angezeigte Bild verdeckt ist, nimmt die
CPU an, daß das Teilbild in der Zeile ei nicht dasjenige ist,
auf das die eingegebenen Koordinaten (xc, yc) zeigen. In
diesem Fall schreitet der Ablauf zum Schritt S1705, um den
Abrufvorgang erneut zu beginnen.
Wenn die Überprüfung im Schritt S1708 hingegen ergibt, daß
die Relativkoordinaten (xc′, yc′) im nicht-transparenten
Bereich der Markierungsdaten liegen, d. h. in dem Bereich,
innerhalb dessen das angezeigte Bild maskiert ist, nimmt die
CPU an, daß das in der Zeile ei gespeicherte Teilbild dasjenige
ist, auf das die Bedienungsperson gedeutet hat.
Ob ein Teilbild bzw. die entsprechenden Daten gefunden wurden,
kann durch Überprüfung des Werts der Variablen i in
Erfahrung gebracht werden. Wenn die Variable i den Wert "0"
hat, bedeutet dies, daß das gewünschte Teilbild nicht gefunden
werden konnte, während jeder andere Wert bedeutet, daß
das gewünschte Teilbild gefunden werden konnte.
Bei dem beschriebenen Steuerungsvorgang wird zur Initialisierung
die Variable i mit der Zahl n belegt. Dies ist hingegen
nicht unbedingt erforderlich. Die Initialisierung kann auch
in der Weise erfolgen, daß die Variable i mit der Anzahl der
in der Bildaufbautabelle 3010 vorhandenen Teilbilder belegt
wird. In einem solchen Fall kann der Schritt S1702 ausgelassen
werden, wodurch die Verarbeitungsgeschwindigkeit weiter
erhöht wird.
Das beschriebene Ausführungsbeispiel ermöglicht es daher, das
gewünschte Teilbild ohne Fehlversuche aus einer Vielzahl von
Teilbildern auszuwählen, aus denen sich ein Bild zusammensetzt.
Die Bedienungsperson wird daher von der mühsamen Arbeit
des Herausgreifens des zu bearbeitenden Teilbilds befreit,
wodurch die Effizienz des Bearbeitungsvorgangs merklich
verbessert wird.
Nachfolgend wird ein weiteres Ausführungsbeispiel der Erfindung
beschrieben, bei dem eine Überprüfungsvorrichtung vorgesehen
ist, mit der überprüft werden kann, ob sich eine mittels
einer Zeigevorrichtung angegebene Position auf einem
Markierungsmuster befindet, und mit der das durch das Maskierungsmuster
angegebene Teilbild als das zu bearbeitende Teilbild
erkannt werden kann, wenn sich die angegebene Position
auf dem Markierungsmuster befindet.
Fig. 1 zeigt anhand eines Blockschaltbilds den wesentlichen
Aufbau dieses Ausführungsbeispiels des Bildbearbeitungsgeräts.
Wie bereits beschrieben, weist das Gerät einen Monitor
101 zum Anzeigen eines Bildes, eine an eine Tastaturschnittstelle
108 angeschlossene Tastatur 102 sowie eine Maus 103
auf, die als Zeigevorrichtung dient und an eine Mausschnittstelle
109 angeschlossen ist. In einem Bildspeicher (V-RAM)
104 sind Bilddaten gespeichert, die dem auf dem Monitor
angezeigten Bild entsprechen. Der Bildspeicher 104 führt die
Bilddaten über eine Monitorschnittstelle 107 dem Monitor 101
zu. Das Gerät weist ferner eine Zentraleinheit bzw. CPU 105
auf, welche den Betriebsablauf des gesamten Geräts in Übereinstimmung
mit einem in einem inerten Speicher 105a gespeicherten
Steuerungsablauf steuert. Im Speicher 105a sind Anweisungen
zur Durchführung verschiedener, später erläuterter
Steuerungsabläufe sowie Anweisungen zur Durchführung von
Bearbeitungsvorgängen gespeichert.
Das Gerät besitzt ferner einen Speicher 110, dessen interne
Struktur später erläutert wird. Eine Magnetplatte 111 ist als
externes Speichermedium über eine Plattenschnittstelle 112
angeschlossen. Die vorstehend beschriebenen Schnittstellen
und Speicher sind an einen Systembus 106 angeschlossen.
Nachfolgend wird unter Bezugnahme auf die Fig. 46, 47 und 50
bis 52 die Anzeige eines Teilbildes näher beschrieben.
Fig. 46 zeigt ein Beispiel eines auf dem Bildschirm zu Beginn
eines Bearbeitungsvorgangs angezeigten Bildes. Markierungen
5201 bis 5203 geben unabhängige Teilbilder an. Jede Markierung
besteht aus einem schwarzen Kreis, der von einem weißen
Kreis umgeben wird, welcher mit einem Linienzeiger verbunden
ist, der zu dem zugeordneten Teilbild führt bzw. auf dieses
deutet. In diesem Ausführungsbeispiel wird das zu bearbeitende
Objekt bzw. Teilbild dadurch ausgewählt, daß mittels eines
Grafikcursors auf eine dieser Markierungen gedeutet wird.
Nachfolgend wird ein Steuerungsablauf zur Erzeugung dieser
Anzeige näher erläutert.
Fig. 47 zeigt verschiedene Teilbilder bzw. Teilbilddaten zur
Zusammensetzung eines Bildes bzw. einer Zeichnung, zusammen
mit Maskierungsmusterdaten und verschiedenen Datentabellen.
Eine Zeichnungs- bzw. Bildaufbautabelle 5301 enthält Teilbilddaten
zur Zusammenstellung eines anzuzeigenden Bilds. Die
Bildaufbautabelle 5301 weist hierzu eine Vielzahl von Zeilen
auf, von denen jede verschiedene Teilbilddaten enthält. Jede
dieser Zeilen weist Spalten zur Festlegung der auf die Anzeigefläche
bezogenen Position (x- und y-Koordinaten) jedes
Teilbilds sowie eine Spalte "ppnt" auf, welche die Adressen
von Teilbildtabellen angibt, die die Art der jeweiligen Teilbilddaten
angebende Daten enthalten.
Eine Teilbildtabelle 5301 besitzt Zeilen, welche die Breite
(W) und Höhe (H) jedes Teilbildes sowie Relativkoordinaten
(mx, my) zum Anzeigen einer diesem Teilbild zugeordneten
Markierung angeben, sowie eine Zeile "ipnt", in der die
Anfangs-Speicheradressen jedes Teilbildmusters bzw. der Daten
jedes Teilbilds gespeichert sind.
Bei diesem Ausführungsbeispiel werden zwei Teilbilder verwendet,
n 83923 00070 552 001000280000000200012000285918381200040 0002003729023 00004 83804ämlich ein "Berg" und eine "Wolke", so daß entsprechend
zwei Teilbildtabellen 5302a und 5302b vorbereitet sind. In
der Praxis kann natürlich eine größere, der Anzahl der zu
verwendenden Teilbilder entsprechende Anzahl von Teilbildtabellen
vorbereitet sein. Die Bildaufbautabelle 5301 und die
Teilbildtabellen 5302 befinden sich in einem Tabellenspeicher
110a innerhalb des Speichers 110, während Muster 5303a-1,
5303a-2, 5303b-1 und 5303b-2 in einer Teilbilddaten-Speicherfläche
110b gespeichert sind. Bei diesem Ausführungsbeispiel
werden für die Teilbilder Muster (Rasterbilddaten) verwendet.
Wenn die jeweiligen Bilder hingegen durch eine Kombination in
der Mehrzahl geometrischer Muster gebildet werden, können die
Teilbilddaten in Form von Parametern vorliegen, die das jeweilige
geometrische Muster definieren, wie z. B. den Anfangs-
und Endpunkt einer geraden Linie.
Gemäß Fig. 47 werden die Teilbilddaten zusammen mit den
zugeordneten Markierungsmusterdaten gespeichert. So werden
z. B. im Falle des Teilbildes "Berg" die Teilbilddaten 5303b-2
zusammen mit den zugeordneten Maskierungsmusterdaten 5303b-1
gespeichert. Die Speicherung der Maskierungsmusterdaten ist
folgenden Gründen notwendig. Wenn gewünscht wird, die Teilbilddaten
5303b-2 durch Einschreiben in den Bildspeicher 104
zur Anzeige zu bringen, und wenn im Bildspeicher bereits ein
vorhergehendes Bild zu dessen Anzeige eingeschrieben ist, ist
es erforderlich, die Daten des vorhergehenden Bildes im Bildspeicher
104 zu maskieren, um denjenigen Bereich auszuschneiden,
der dem Schwarzbereich in den Maskierungsmusterdaten
5303b-1 entspricht. Wenn irgendein neues Teilbild anzuzeigen
ist, wird daher ein vorbereitender Vorgang durchgeführt, um
das existierende Bild mittels eines dem anzuzeigenden Teilbild
entsprechenden Maskierungsmusters auszuschneiden. Dieser
Vorgang ist notwendig, um beispielsweise gemäß der Darstellung
in Fig. 46 zwei sich teilweise überlappende "Berge"
anzuzeigen.
Nachfolgend wird unter Bezugnahme auf das in Fig. 50 gezeigte
Flußdiagramm ein Steuerungsablauf zum Anzeigen eines Teilbilds
näher erläutert. Es wird hier angenommen, daß die
jeweilige Position, an der das betreffende Teilbild anzuzeigen
ist, bereits festgelegt worden ist. Die Festlegung bzw.
Eingabe dieser Anzeigepositionen kann z. B. dadurch ausgeführt
werden, daß ein Grafikcursor mittels der Maus 103 zu einer
geeigneten Position auf der Anzeigefläche bewegt und anschließend
ein geeigneter Code, der das betreffende Teilbild
als "Berg" indentifiziert, mittels der Tastatur 102 eingegeben
wird.
Alternativ können die Koordinaten dieser Anzeigepositionen
mittels der Tastatur 102 eingegeben werden.
In einem Anfangsschritt S601 wird die Variable i mit dem
Anfangswert "1" belegt, um die in der Bildaufbautabelle 5301
gemäß Fig. 47 eingestellten Teilbilder beginnend mit der
ersten Zeile dieser Tabelle successiv anzuzeigen. In einem
Folgeschritt S602 wird die Anzeigefläche bzw. der Bildspeicher
104 gelöscht. In einem Schritt S603 wird überprüft, ob
die i-te Zeile der Bildaufbautabelle irgendwelche Teilbilddaten
enthält. Im Ausführungsbeispiel sind bereits die Anzeigepositionen
von drei Teilbildern eingegeben, weshalb der Ablauf
zu einem Folgeschritt S604 verzweigt. Die Überprüfung,
ob die i-te Zeile irgendwelche Teilbilddaten enthält, wird
durchgeführt, indem überprüft wird, ob der Inhalt jeder Zeile
ungleich "0" ist. Wenn der Wert "0" eingestellt ist, wird
angenommen, daß diese Zeile keine Teilbilddaten enthält.
Dieses Überprüfungsverfahren stellt nur eine mehrerer Möglichkeiten
dar. Beispielsweise ist es auch möglich, eine
zusätzliche Spalte in der Bildaufbautabelle vorzusehen, in
der eine Kennung gespeichert wird, welche angibt, ob Teilbilddaten
vorhanden sind oder nicht.
Im Schritt S604 werden die Maskierungsmusterdaten unter Bezugnahme
auf die in der Spalte ppnt in der i-ten Zeile angegebene
bzw. adressierte Teilbildtabelle 5302 übertragen, um
den betreffenden Anzeigebereich, ausgehend von den Koordinaten
(xi, yi) zu maskieren. In einem Folgeschritt S605 werden
die Teilbilddaten, ausgehend von den gleichen Koordinaten,
übertragen. Nachdem die Variable i um "1" in einem Schritt
S606 inkrementiert worden ist, kehrt der Ablauf zum Schritt
S603 zurück. Dieser Vorgang wird so lange wiederholt, bis die
Anzeige aller Teilbilder abgeschlossen ist. Auf diese Weise
wird nach Beendigung der Anzeige aller Teilbilder schließlich
das in Fig. 52 gezeigte Bild angezeigt.
Die Anzeige der einem Teilbild entsprechenden Maskierungsmusterdaten
und Teilbilddaten wird mittels des vorstehend beschriebenen
Vorgangs durchgeführt. Dieser Vorgang kann geeigneterweise
beispielsweise mittels eines Personalcomputers AS-
300 der Firma Canon wie folgt durchgeführt werden.
Der Personalcomputer AS-300 besitzt eine Funktion, um logische
Berechnungen auf Bildelementbasis zwischen Rasterbilddaten
im Speicher und den auf dem Monitor angezeigten Daten
derart durchzuführen, daß der Anzeigezustand geeignet geändert
wird. Wenn das Gerät AS-300 verwendet wird, wird eine in
Fig. 51 gezeigte Datenverwaltungstabelle 5701 verwendet, um
die Maskenmusterdaten 5303a-1 zu adressieren, während eine
weitere Datenverwaltungstabelle 5702 verwendet wird, um die
Teilbilddaten 5303a-2 zu adressieren. Daraufhin wird ein AX-
Register und ein BX-Register, die beide Bestandteil einer CPU
des Computers AS-300 sind, die x- bzw. die y-Koordinate eingegeben.
Gleichzeitig wird in einem DI-Register und einem ES-
Register die Anfangs-Offsetadresse bzw. die Segmentadresse
der Datenverwaltungstabellen eingestellt.
Darüber hinaus wird in einem DL-Register ein Rasteroperationscode
eingestellt. Im Falle der Übertragung der Maskenmusterdaten
hat der Rasteroperationscode den Wert "2", der angibt,
daß das logische Produkt (UND) der im Bildspeicher 104 befindlichen
Daten und der durch Invertierung der Maskenmusterdaten
erhaltenen Daten zu bilden ist. Um die logische Summe
(ODER) der Teilbilddaten und der im Bildspeicher 104 befindlichen
Daten zu bilden, wird der Rasteroperationscode "14"
eingegeben. Anschließend wird in ein CL-Register ein Code
"12" eingegeben, der einen Ablauf zur Anzeige des Inhalts des
Speichers angibt, worauf ein Befehl "INT 15H" durchgeführt
wird, um die Übertragung auszuführen.
Spalten XOFF und YOFF der Datenverwaltungstabellen werden mit
"0" besetzt, während die Breite der Maskierungsmusterdaten
oder der Teilbilddaten in eine Spalte L jeder Datenverwaltungstabelle
in der Weise eingeschrieben wird, daß sie die
Anzahl von jeweils aus 16 Bildelementen bestehenden Worten
angibt. Spalten MEMOFF und MEMSEG werden zur Speicherung der
Offsetadresse und der Segmentadresse verwendet, um die Anfangsspeicheradressen
der Maskierungsmusterdaten 5303a-1 und
5303a-2 im Speicher aufrecht zu erhalten.
Vorausgesetzt, daß die Rasterbilddaten in der Weise geformt
sind, daß ihre Breite ein Vielfaches von 16 Bildelementen
beträgt, kann dieser Einstellvorgang in der Weise durchgeführt
werden, daß ¹/₁₆ des Inhalts einer Spalte W₂ der Teilbildtabelle
5302a in einer Spalte XL und der Inhalt einer
Spalte H in einer Spalte YL eingestellt wird, während die in
Spalten x und y der Bildaufbautabelle 5301 gespeicherten
Werte im AX-Register bzw. im BX-Register eingestellt werden.
Nachfolgend wird unter Bezugnahme auf die Fig. 46 und 48 bis
50 die Anzeige der Markierungsmuster näher erläutert.
Bei der praktischen Arbeit mit einem Bildbearbeitungsgerät
der gattungsgemäßen Art ist es häufig erforderlich, die Position
eines bestimmten Teilbilds zu ändern oder eine Bearbeitung
bzw. Editierung eines bestimmten Teilbilds durchzuführen,
nachdem das endgültige Bild durch Zusammensetzen einer
Vielzahl von Teilbildern aufgebaut worden ist.
Bei diesem Ausführungsbeispiel kann die Bedienungsperson auf
ein gewünschtes Teilbild zugreifen, um eine Bearbeitung
durchzuführen, wie aus der nachfolgenden Beschreibung zu
erkennen ist.
Wie bereits beschrieben wurde, werden die Markierungen bzw.
Maskierungsmuster 5201 bis 5203 an Positionen angezeigt,
welche durch die in der Teilbildtabelle 5302 eingestellten
Relativkoordianten (mx, my) definiert sind. Die Anzeigeposition
der dem in Fig. 48 gezeigten Teilbild "Wolke" zugeordneten
Markierung 5201 wird z. B. dadurch bestimmt, daß das linke
untere Ende der Markierung 5201 an Koordinaten P402 (x₁ +
mx₁, y₁ + my₁) plaziert wird, welche durch Summation (a) der
Anzeigeposition P401 der "Wolke", d. h. von Koordinaten, deren
Ursprung in der linken oberen Ecke der Anzeigefläche liegt,
und (b) der Relativkoordianten (mx₁, my₁), deren Ursprung in
der linken oberen Ecke des Teilbilds "Wolke" liegt. Tatsächlich
wird die Anzeigeposition der Markierung 5201 jedoch
durch Berechnung des linken oberen Endes der Markierung bestimmt,
da der Bildaufbau der Markierung wie im Falle des
Bildaufbaus des Teilbilds leichter durchgeführt werden kann,
wenn er in der linken oberen Ecke begonnen wird, als wenn er
in der linken unteren Ecke begonnen wird.
Genau wie das Teilbild bzw. das -muster, weist auch die
Markierung 5201 Markierungsmusterdaten und Teilbilddaten auf.
Die gegenseitige Beziehung zwischen einer Markierungstabelle
5302Z, Markierungsdaten und einem Markierungs-Maskierungsmuster
ist in Fig. 49 dargestellt. Wie auch im Falle des vorstehend
in Verbindung mit Fig. 47 erläuterten Teilbildes, ist
auch die Markierungstabelle 5302Z im Tabellenspeicher 110a
innerhalb des Speichers 110 gespeichert, während die Markierungsdaten
und das Markierungs-Maskierungsmuster in einer
Markierungsdaten-Speicherfläche 110c gespeichert sind.
Nachfolgend wird unter Bezugnahme auf ein in Fig. 53 gezeigtes
Flußdiagramm ein Steuerungsablauf zur Anzeige einer Markierung
näher erläutert.
In einem Schritt S901 wird die Variable i mit dem Anfangswert
"1" belegt, um die Teilbilder in der in Fig. 47 gezeigten
Bildaufbautabelle 5301 von der Anfangszeile an prüfen zu
können. In einem Schritt S902 wird überprüft, ob die i-te
Zeile der Tabelle 5301 ein Teilbild betreffende Daten enthält.
Diese Überprüfung kann auf gleiche Weise wie im Schritt
S603 des vorstehend in Verbindung mit Fig. 50 erläuterten
Flußdiagramms durchgeführt werden. In einem Schritt S903 wird
auf die in der Spalte ppnt der i-ten Zeile angegebene Teilbildtabelle
5302 Bezug genommen, um diejenige Position zu
berechnen, an der das Markierungsmuster aufzubauen ist. Die
absoluten Koordinaten (mRxi, mRyi) der Anzeigeposition des
Markierungsmusters auf dem Bildschirm wird gemäß den nachfolgend
angegebenen Gleichungen berechnet, in denen xi und yi
die Anzeigeposition des Teilbilds, mx₁ und my₁ auf das Teilbild
bezogene Relativkoordinaten und h₀ die Höhe des Teilbilds
angeben:
mRxi = xi + mxk
mRyi = yi + myk-h0
mRyi = yi + myk-h0
In einem Schritt S904 wird ausgehend von der im Schritt S903
berechneten Position durch Ausbau bzw. Anzeige des Markierungs-Maskierungsmusters
die Maskierung begonnen. In einem
Schritt S905 wird das Markierungsmuster an den gleichen Koordinaten
wie die Maske aufgebaut. Nachdem in einem Schritt
S906 die Variable i um "1" inkrementiert worden ist, kehrt
der Ablauf zum Schritt S902 zurück. Dieser Vorgang wird so
lange wiederholt, bis alle Markierungsmuster angezeigt sind,
wodurch das in Fig. 46 gezeigte endgültige Bild erhalten
wird.
Nachfolgend wird unter Bezugnahme auf die Fig. 54A, 54B und
55 ein Steuerungsablauf zur Bezeichnung eines zu bearbeitenden
Teilbilds näher erläutert.
Während oder nach dem Bildaufbau ist es häufig erforderlich,
eines der bereits angezeigten Teilbilder geeignet zu korrigieren
oder zu modifizieren. In einem solchen Fall kann die
Bedienungsperson durch Betätigung einer (nicht gezeigten)
Taste auf der Tastatur 102 den in Fig. 53 gezeigten Steuerungsablauf
einleiten, um die Markierungen auf den jeweils
zugeordneten Teilbildern anzuzeigen. Daraufhin bewegt die
Bedienungsperson die Maus 103 in der Weise, daß der Grafikcursor
auf die dem gewünschten bzw. zu bearbeitenden Teilbild
zugeordnete Markierung deutet. Das betreffende Teilbild wird
anschließend ausgewählt, wenn die Bedienungsperson eine vorbestimmte
Taste drückt.
In Fig. 54A sind die mit den zugeordneten Markierungen versehenen
Teilbilder, wie z. B. zwei Berge, zusammen mit einem
Grafikcursor 5001 gezeigt. In der Darstellung gemäß Fig. 54B
wurde der Grafikcursor 5001 derart bewegt, daß er auf die dem
"inneren" Berg zugeordnete Markierung deutet. Es ist zu erkennen,
daß die Auswahl eines Teilbilds durch das Vorsehen
von Markierungen merklich erleichtert wird. Darüber hinaus
kann die Bedienungsperson mit einem Blick erkennen, welches
Teilbild ausgewählt wurde. In diesem Fall erhebt sich jedoch
die Frage, ob die angegebene Position tatsächlich in der
Markierung vorhanden ist.
Dies wird nachfolgend näher erläutert. In der nachfolgenden
Beschreibung ist der Abstand des Zentrums des Kreises der
Markierung von dem oberen linken Ende des Markierungsmusters
mit (mcx0, mcy0) bezeichnet, während der Radius des Kreises
mit r₀ angegeben ist. Die Position des Grafikcursors ist mit
(xg, yg) bezeichnet.
Da die Anzeigeposition der Markierung i gemäß der vorstehenden
Beschreibung zu (mRxi, mRyi) berechnet wurde, berechnen
sich die Koordinaten des Zentrums des Kreises jeder Markierung
bezogen auf die Anzeigefläche wie folgt:
(mRxi + mcx0, mRyi + mcy0)
Um sicherzustellen, daß die von dem Grafikcursor angegebene
Position innerhalb des Kreises einer Markierung liegt, muß
folgende Ungleichung erfüllt sein. Mit anderen Worten, die
Position des Grafikcursors wird dann als außerhalb des
Kreises liegend eingestuft, wenn folgende Ungleichung nicht
erfüllt ist:
(mRxi + mcx0-xg)² + (mRyi + mcy0-yg)² ≦ r0²
Anhand der vorstehenden Ungleichung als Entscheidungskriterium
wird demnach beurteilt, ob der Grafikcursor auf eine
Markierung deutet. Ein entsprechender Steuerungsablauf wird
nachfolgend unter Bezugnahme auf das in Fig. 55 gezeigte
Flußdiagramm näher erläutert. Dieses Flußdiagramm wurde unter
der Annahme gezeichnet, daß der Grafikcursor bereits so eingestellt
ist, daß er auf einen bestimmten Punkt bzw. eine
bestimmte Markierung deutet.
In einem Anfangsschritt S1101 wird für die Variable i der
Anfangswert "1" eingestellt. In einem Schritt S1102 wird auf
die Bildaufbautabelle Bezug genommen, um zu überprüfen, ob
die durch die Variable i adressierte Zeile ein Teilbild
betreffende Daten enthält. Der Schritt S1102 entspricht daher
im wesentlichen dem vorstehend in Verbindung mit Fig. 53
erläuterten Schritt S902. Wenn die Überprüfung in diesem
Schritt ergibt, daß in der i-ten Zeile keine ein Teilbild
betreffenden Daten vorhanden sind, wird die Variable i in
einem Schritt S1106 auf den Wert "0" dekrementiert, womit
dieser Steuerungsablauf beendet ist und zu einem Haupt-Steuerungsablauf
zurückverzweigt wird.
In einem Schritt S1103 werden die auf die Teilbilddaten in
der i-ten Zeile bzw. deren Position bezogenen Koordinaten des
Zentrums des Kreises der Markierung wie folgt berechnet:
(mRxi + mcx0, mRyi + mcy0
In einem Folgeschritt S1104 wird daraufhin überprüft, ob die
vorstehend genannte Ungleichung erfüllt ist. Wenn diese Ungleichung
erfüllt ist, wird der Ablauf beendet und zu dem
Haupt-Steuerungsablauf zurückverzweigt. Wenn die Ungleichung
hingegen nicht erfüllt ist, wird die Variable i in einem
Schritt S1105 um "1" inkrementiert und der Ablauf kehrt zum
Schritt S1102 zurück, um den vorstehend beschriebenen Vorgang
mit dem neuen Wert der Variablen i zu wiederholen.
Durch Überprüfung desjenigen Werts der Variablen i, den diese
bei der Beendigung des vorstehend beschriebenen Steuerungsablaufs
besitzt, ist es daher möglich, festzustellen, welches
der Teilbilder mittels der Maus 103 ausgewählt wurde. Wenn
die Variable i den Wert "0" hat, bedeutet dies, daß das
bezeichnete Teilbild nicht gefunden werden konnte.
Es wird nun unter Bezugnahme auf die Fig. 56, 57A und 57B
eine Modifikation dieses Ausführungsbeispiels beschrieben.
Bei dem vorstehend beschriebenen Ausführungsbeispiel wurde
der Abstand der bzw. zu der Markierungsposition, ausgedrückt
durch die auf die linken oberen Enden der Rasterbilddaten
5303a-1 und 5303a-2 bezogenen Koordinaten, in die Spalten mx₂
und my₂ der Teilbildtabelle 5302a eingeschrieben. Dies ist
jedoch nicht die einzige Möglichkeit. Der Abstand der Markierungsposition
kann vielmehr auch als Abstand der Bezugsposition
der Rasterbilddaten aufgefaßt werden, d. h. als Abstand
bzw. Verschiebung des Ursprungs der lokalen Koordinaten.
In einem solchen Fall werden die Koordinaten des Ursprungs
jedes Teilbilds in die Spalten bzw. Speicherplätze xi und yi
der Bildaufbautabelle 5301 eingeschrieben. Daraufhin werden
die Koordinaten derjenigen Position, an der das Markierungsmuster
auf dem jeweils angezeigten Teilbild angezeigt wird,
als (xi-mxk, yi-myk) bestimmt, wobei mit mxk und myk
diejenigen Werte in den Spalten mxk und myk der Teilbildtabelle
bezeichnet sind, die durch die Spalte ppnti adressiert
werden. Zum Anzeigen einer Markierung wird als Anfangsposition
zur Anzeige des Markierungsmusters für das Teilbild der
i-ten Zeile die Koordinate (xi-mx0, yi-my0) eingestellt.
Wenn der Abstand des Zentrums des Kreises der Markierung von
dem Ursprung der Markierung durch (mcx′₀, mcy′₀) gegeben ist,
ist es möglich, durch Berechnung der nachstehend angegebenen
Ungleichung zu überprüfen, ob die von dem Grafikcursor 5001
angegebene Position innerhalb der Kreisfläche liegt oder
nicht:
(xi-mcx′0-xg)² + (yi + mcy′0-yg)² ≦ r0²
Dieses Verfahren verringert in vorteilhafter Weise die für
die Beurteilung benötigte Zeit, da es nicht notwendig ist,
die Zeiger zu verfolgen.
Die Markierungen sind demnach so ausgebildet, daß sie auf den
Ursprung des betreffenden Teilbildes zeigen, wozu die Bildaufbautabelle
gemäß der Darstellung in Fig. 56 zusätzliche
Spalte mdxi und mdyi aufweist, die den die jeweilige Markierung
betreffenden Abstand unabhängig definieren.
Im Normalfall wird in jede der Spalten mdxi und mdyi der Wert
"0" eingestellt. In diesem Fall bedeutet der Wert "0", daß
die Verschiebung vom Ursprung gleich 0 ist. Es ist jedoch
auch möglich, in diesen Spalten auch andere geeignete numerische
Werte einzustellen. Im Falle der in Fig. 46 gezeigten
Darstellung hat die geschilderte Funktion keine erkennbare
Wirkung, während sie dann vorteilhaft ist, wenn die in Fig.
57A gezeigte Zeichnung zu verarbeiten ist. In der Darstellung
gemäß Fig. 57A ist das Teilbild "Wolke" teilweise hinter dem
"äußeren" Berg verborgen, wobei die der Wolke zugeordnete
Markierung und die dem "äußeren" Berg zugeordnete Markierung
im wesentlichen an der gleichen Position angezeigt werden,
wodurch unklar wird, welche Markierung auf die Wolke deutet.
Um eine derartige Unklarheit auszuschalten, wird bei diesem
Ausführungsbeispiel in die Spalte mdxi der ersten Zeile (welche
die die "Wolke" betreffenden Daten enthält) der Bildaufbautabelle
9201 ein Versatzwert -x eingegeben, während der
Inhalt der Spalte mdyi unverändert bleibt. Die auf das Teilbild
"Wolke" zeigende Markierung ist aufgrund dessen gegenüber
ihrer ersten Position um die Distanz -x verschoben, wie
aus Fig. 57B zu erkennen ist.
Die Eingabe des jeweiligen Versatzes der Anzeigeposition der
Markierung kann von der Bedienungsperson mittels der Tastatur
102 durchgeführt werden. Alternativ wird die Markierung mittels
eines Einblendmenues verschoben, wobei die Daten in den
Spalten mdx₁ und mdy₁ der Bildaufbautabelle 9201 automatisch
in Übereinstimmung mit dieser Verschiebung geändert werden.
Es ist ferner möglich, eine automatische Umsetzung dahingehend
durchzuführen, daß ein Bereich der Wolke, der nicht
hinter dem "äußeren" Berg verborgen ist, gesucht und die
Markierung im Zentrum des derart gesuchten Bereichs plaziert
wird.
In jedem Fall führt die in Fig. 57B gezeigte Positionsänderung
der Markierung zu einer entsprechenden Änderung im Inhalt
der jeweiligen Spalten in der Bildaufbautabelle 9201, so
daß die vorgenannte Ungleichung weiterhin als Entscheidungskriterium
für die Beurteilung herangezogen werden kann, ob
die mittels des Grafikcursors 5001 angegebene Position innerhalb
des Bereichs der Markierung liegt.
Es wird nun eine weitere Abwandlung dieses Ausführungsbeispiels
unter Bezugnahme auf Fig. 58 erläutert.
Bei den vorstehenden Ausführungsbeispielen besteht die jeweilige
Markierung aus einem Doppelkreis und einem Linienzeiger,
der den Doppelkreis mit dem betreffenden Teilbild verbindet.
Eine derartige Form der Markierung ist jedoch lediglich beispielhaft.
So ist es z. B. auch möglich, dreieckförmige Markierungen zu
verwenden, die gemäß der Darstellung in Fig. 58 auf die
betreffenden Teilbilder deuten. In diesem Fall kann die Bezugsposition
der Markierung auf das Zentrum des Dreiecks
eingestellt sein, obgleich sie im dargestellten Fall auf die
untere Dreiecksspitze eingestellt ist.
Die arithmetischen Operationen, die zur Überprüfung der
gegenseitigen Lagebeziehung von Grafikcursor und der Markierungen
mit der bei diesem Ausführungsbeispiel verwendeten
Form notwendig sind, verringern indes die Geschwindigkeit des
Suchvorgangs.
Es ist möglich, diese Überprüfung durchzuführen, indem die
Koordinaten der angegebenen Position in bezug auf die Maskenmusterdaten
der Markierung überprüft werden. Zu diesem Zweck
werden z. B. die Bildelementdaten der Maskenmusterdaten der
der angegebenen Koordinatenposition entsprechenden Markierung
gelesen und daraufhin überprüft, ob sie "Schwarz" oder "Weiß"
sind, d. h., ob sie den Wert "1" oder "0" haben. Es ist möglich,
den Maskenmusterdaten einen größeren Umfang als den
Maskierungsdaten zu geben, so daß die Markierung in einer Art
angezeigt wird, als wenn sie über der Anzeigefläche "schwimmen"
würde. Darüber hinaus wird das Andeuten bzw. die Auswahl
durch die erhöhte Zahl der Maskenmusterdaten erleichtert.
Wenn zwei Markierungen in die in Fig. 57A gezeigten überlappenden
Weise angezeigt werden und wenn eine Bedienungsperson,
die statt der Wolke den "äußeren" Berg wählen möchte, auf die
"äußere" oder "darüberliegende" Markierung deutet und daraufhin
eine Bestätigungstaste drückt, wird unerwünschterweise
die Wolke herausgegriffen bzw. gewählt, da die erste Zeile
der Bildaufbautabelle 5301 oder 9201 die Teilbilddaten "Wolke"
enthält. Dieses Problem kann jedoch ohne Schwierigkeiten
gelöst werden, wenn eine Einrichtung für eine Bestätigung
seitens der Bedienungsperson vorgesehen wird, wie z. B. eine
Taste, mit der eine entsprechende Bestätigung eingegeben
werden kann. So betätigt z. B. eine Bedienungsperson, die auf
den "äußeren" Berg zugreifen möchte, eine Ablehnungstaste
"NEIN", wenn die Wolke gewählt wurde. Gleichzeitig wird das
in Fig. 55 gezeigte Flußdiagramm in der Weise modifiziert,
daß die die aktuelle Zeile angebende Variable i auf eine
Betätigung der Ablehnungstaste hin automatisch um "1" inkrementiert
wird, wodurch die Folgezeile angesprochen und das
entsprechende Teilbild adressiert wird. Das in Fig. 55 gezeigte
Flußdiagramm kann alternativ auch in der Weise modifiziert
werden, daß die Variable i im Schritt S1101 statt auf
den Anfangswert "1" auf den Anfangswert n (der Gesamtzahl der
Teilbilder) gesetzt wird, wodurch das Wiederauffinden im
Schritt S1105 in dekrementierender Weise derart durchgeführt
wird, daß auf das Teilbild "Berg" vor dem Zugriff auf das
Teilbild "Wolke" zugegriffen wird.
Unter Bezugnahme auf die Fig. 59 bis 63 wird nachstehend eine
weitere Abwandlungsform dieses Ausführungsbeispiels beschrieben.
Um die Bedienungsperson in die Lage zu versetzen, verschiedene
Teilbilder unterscheiden zu können, ist es möglich, für
verschiedene Teilbilder Markierungen unterschiedlicher Form
zu verwenden. So kann z. B. die Größe des Bereichs, innerhalb
dessen auf die jeweilige Markierung gedeutet werden kann, von
der dem "innersten" Teilbild zugeordneten Markierung bis hin
zu der dem obersten Teilbild zugeordneten Markierung progressiv
vergrößert werden. Alternativ kann die Anzahl der Kreise
der Markierungen in gleicher Weise vergrößert werden. So
deutet z. B. in Fig. 60 eine Markierung 9601 auf das Teilbild
"Wolke", während eine Markierung 9603 auf den "äußeren" Berg
deutet.
Gemäß der Darstellung in Fig. 61 ist es weiterhin möglich,
die Form der Markierungen in Abhängigkeit von der Art der
Überlappung der Teilbilder zu variieren, wie anhand von Markierungen
9701 und 9703 in Fig. 61 zu erkennen ist. Dies kann
erreicht werden, indem der Bildaufbautabelle gemäß Fig. 62
eine neue Spalte mt₁ hinzugefügt wird. In dieser Spalte mt₁
sind Nummern gespeichert, die den jeweiligen Teilbildern,
ausgehend vom "innersten" oder "äußersten", zugeordnet sind.
Andererseits werden zahlreiche Formen für die Markierungen in
der Weise bereitgestellt, daß in Verbindung mit einer unterschiedlichen
Nummer eines Teilbilds jeweils eine unterschiedliche
Form für die Markierung eingesetzt wird.
Gemäß der Darstellung in Fig. 63 ist es weiterhin möglich,
den jeweiligen Teilbildern anstelle von Markierungen
Buchstaben bzw. Zeichenketten zuzuordnen, die den Namen des
betreffenden Teilbilds angeben, so daß die Bedienungsperson
das gewünschte Teilbild ohne Fehler angeben kann. Diese Funktion
ist insbesondere dann vorteilhaft, wenn erläuternde
Zeichnungen oder Skizzen zu entwerfen sind, da die Bedienungsperson
stets zweifelsfrei erkennen kann, welches Teilbild
gerade angezeigt wird. Eine Hartkopie bzw. hard copy
einer derart mit erläuternden Angaben versehenen Zeichnung
kann unmittelbar als Erläuterungsskizze verwendet werden,
ohne daß zusätzliche Erläuterungen geschrieben werden müßten.
Selbstverständlich können die den Namen des betreffenden
Teilbilds angebenden Zeichenketten beispielsweise auch durch
Bezugszeichen oder kurze Sätze ersetzt werden.
Gemäß vorstehender Beschreibung wird an jedes einer Vielzahl
von Teilbildern, die zusammen eine Zeichnung bilden, eine
Markierung angehängt. Wenn die Bedienungsperson auf eine
Position innerhalb des Bereichs einer Markierung gedeutet
hat, nimmt das Gerät an, daß das dieser Markierung zugeordnete
Teilbild von der Bedienungsperson ausgewählt wurde, und
die Bedienungsperson ist darüber informiert, welches Teilbild
nun zur Bearbeitung ansteht. Gleichzeitig verringern die
Markierungen die Zugriffszeit auf die einzelnen Teilbilder.
Infolgedessen wird die Effizienz der Bildbearbeitung oder der
Zeichnungserstellung merklich verbessert.
Darüber hinaus wird die Arbeitsbelastung der Bedienungsperson
deutlich verringert, da die Markierungen unabhängig von der
jeweiligen Größe des Teilbilds eine übereinstimmende Größe
haben.
Wenn alle Markierungen die gleiche Form besitzen, können die
Daten zum Anzeigen der Markierungen anstelle ihrer Speicherung
im Speicher 110 als Konstanten im Steuerungsablauf eingestellt
werden, so daß die Markierungen durch Kombination
spezifischer Muster angezeigt werden können.
Die Steuerungsabläufe können auch im Speicher 110 gespeichert
werden, obwohl sie in den beschriebenen Ausführungsbeispielen
in dem in der CPU 105 befindlichen Speicher gespeichert sind.
Es ist weiterhin möglich, zwei sich überlappende "Berge" zu
einem einzigen Teilbild zusammenzufassen, das entsprechend
nur eine Markierung besitzt. In einem solchen Fall muß die
Bedienungsperson nur zwei Teilbilder voneinander unterscheiden,
nämlich eine "Wolke" und "Berge", wodurch der Aufwand
für den Auswahlvorgang verringert wird und der Aufbau der
Zeichnung äußerst leicht zu verstehen ist.
Die Verwendung des vorstehend beschriebenen Personalcomputers
AS-300 der Firma Canon ist selbstverständlich nur als Beispiel
zu verstehen.
Gemäß vorstehender Beschreibung trägt jedes Teilbild eine
Markierung in der Weise, daß die Bedienungsperson jedes beliebige
Teilbild durch Andeuten der betreffenden Markierung
wählen und damit eindeutig angeben kann, welches Teilbild sie
zu bearbeiten wünscht. Folglich ist die Geschwindigkeit des
Zugriffs auf die Teilbilder erhöht und die Arbeitsbedingungen
für die Bildbearbeitung sind deutlich verbessert.
Darüber hinaus kann die Bedienungsperson sehr leicht auf das
gewünschte Teilbild deuten, da der Bereich zur Auswahl des
gewünschten Teilbilds unabhängig von der Größe dieses Teilbilds
eingestellt werden kann.
Bei den voranstehenden Ausführungsbeispielen ist jedem Teilbild
eine Markierung zugeordnet. Nachfolgend wird unter Bezugnahme
auf die Fig. 64 und 65 ein weiteres Ausführungsbeispiel
näher erläutert, bei dem die Teilbilder über Linien
bzw. Linienzeiger mit Teilbildangabebereichen verbunden sind.
Gemäß Fig. 64 werden auf der Anzeigefläche des Monitors drei
Teilbilder angezeigt, nämlich eine "Wolke" und zwei "Berge".
Gleichzeitig sind in der Anzeigefläche des Monitors, jedoch
außerhalb des zum Anzeigen der Zeichnung bzw. des Bilds
vorgesehenen Bereichs weitere Bereiche vorgesehen, die an
Positionen angeordnet sind, welche an der Tastatur vorgesehenen
Funktionstasten 6211 bis 6216 zugeordnet sind. Diese
Bereiche sind über Linienzeiger 6221 bis 6223 mit den Teilbildern
im Zeichnungs-Anzeigebereich verbunden. Wenn die
Bedienungsperson eines dieser Teilbilder zu bearbeiten oder
zu korrigieren wünscht, kann sie auf das betreffende Teilbild
zugreifen, indem sie diejenige Funktionstaste betätigt, welche
demjenigen Bereich zugeordnet ist, der mit dem gewünschten
Teilbild verbunden ist.
Nachfolgend wird zunächst ein Verfahren zum Anzeigen der
Teilbilder näher erläutert. Hierzu wird angenommen, daß zwei
Teilbilder anzuzeigen sind, nämlich ein "Berg" und eine "Wolke".
Dies ist jedoch nur als Beispiel zu verstehen; in der
Praxis wird eine große Vielzahl verschiedener Teilbilder
verwendet, um durch geeignete Kombination ein gewünschtes
Bild bzw. eine gewünschte Zeichnung zu erzeugen.
Fig. 66 zeigt auf ähnliche Weise wie Fig. 56 die gegenseitige
Beziehung zwischen Daten, die die jeweiligen Teilbilder betreffen,
diesen Teilbildern zugeordnete Maskierungsmuster und
verschiedene Datentabellen. Eine Bildaufbautabelle 6301, die
zur Erzeugung des auf dem Monitor angezeigten Bildes herangezogen
wird, weist eine Vielzahl von Zeilen auf. Jede Zeile
enthält eine Spalte zur Angabe der jeweiligen Position (x-
und y-Koordinate) des jeweiligen Teilbilds auf der Anzeigefläche
sowie eine Spalte (ppnt), in der die Adressen von
Teilbildtabellen 6302 gespeichert sind, welche die die Teilbilder
betreffenden Daten enthalten.
Die Teilbildtabelle 6302 weist Bereiche bzw. Speicherplätze
zum Speichern der Breite (W) und der Höhe (H) jedes Teilbilds,
Speicherplätze zum Speichern der auf die linke obere
Ecke jedes Teilbildes bezogenen Relativkoordinaten (mx, my)
sowie einen Speicherplatz (ipnt) auf, der die Anfangs-Speicheradresse
jedes Teilbildmusters speichert. Die Relativkoordinaten
(mx, my) sind vorzugsweise im Zentrum jedes Teilbildes
positioniert.
Bei diesem Ausführungsbeispiel sind zwei Teilbildtabellen
6302a und 6302b vorgesehen, da zwei Teilbilder, nämlich ein
"Berg" und eine "Wolke" verwendet werden. Die Anzahl der
verwendeten Teilbildtabellen entspricht demnach der Anzahl
der unterschiedlichen Teilbilder.
Die Bildaufbautabelle 6301 und die Teilbildtabellen 6302 sind
in dem im Speicher 110 befindlichen Tabellenspeicher 110a
gespeichert. Die Bildmuster 6303a-1, 6303a-2, 6303b-1 und
6303b-2 sind in der Teilbilddaten-Speicherfläche 110b des
Speichers 110 gespeichert. Wie bei den vorangehenden Ausführungsbeispielen
sind die Muster der Teilbilder in Form von
Rasterbilddaten geeignet gespeichert. Wenn sich die Teilbilder
aus einer Vielzahl geometrischer Muster zusammensetzen,
können diese Daten jedoch auch in Form einer Kombination
verschiedener Parameter gespeichert werden, die beispielsweise
den Beginn und das Ende einer geraden Linie angeben.
Die Daten jedes Teilbildes wie z. B. des "Berges" enthalten
zwei Arten von Daten, nämlich Masken- bzw. Maskierungsmusterdaten
6303b-1 und Teilbilddaten 6303b-2, welche als Paar
gespeichert sind. Wenn die Teilbilddaten 6303b-2 durch Übertragung
zu dem Bildspeicher 104 anzuzeigen sind und wenn
sich im Bildspeicher 104 bereits ein Bild befindet, wird der
den neu anzuzeigenden Teilbilddaten 6303b-2 entsprechende
Bereich durch den Schwarzbereich der Maskierungsmusterdaten
6303b-1 ausgeschnitten. Wenn irgendein Teilbild anzuzeigen
ist, wird das auf der Anzeigefläche bereits vorhandene Bild
demnach durch die den neu anzuzeigenden Teilbilddaten entsprechenden
Maskierungsmusterdaten ausgeschnitten. Dadurch
ist es möglich, gemäß Fig. 64 zwei Berge in überlappender
Darstellung anzuzeigen. Der Steuerungsablauf zur Erzeugung
einer derartigen Anzeige wurde bereits unter Bezugnahme auf
das in Fig. 50 gezeigte Flußdiagramm erläutert, so daß auf
eine nochmalige Erläuterung an dieser Stelle verzichtet wird.
Die Anzeige der Linienzeiger 6221 bis 6223 wird wie folgt
durchgeführt. Jeder dieser Linienzeiger verbindet die den
Funktionstasten auf der Tastatur entsprechenden Bereiche auf
dem Monitor mit einem zugeordneten Teilbild, d. h. mit der
Position, die durch die in der Teilbildtabelle 6302 gespeicherten
Relativkoordinaten (mx, my) vorgegeben ist. Gemäß
Fig. 66 ist z. B. das Teilbild "Wolke" durch den Linienzeiger
6221 mit dem einer Funktionstaste zugeordneten Bereich 6211
verbunden. Zur Vereinfachung wird dieser Bereich nachfolgend
als "Funktionstaste 6211" bezeichnet. Der Linienzeiger 6221
wird demnach in der Weise ausgebildet, daß er (a) die Koordinate
P402 (x₁ + mx₁, y₁ + my₁), die durch Addition der Relativkoordinaten
(mx₁, my₁), deren Ursprung im linken oberen
Ende des Teilbilds liegt, zu den Koordinaten (x₁, y₁), deren
Ursprung im linken oberen Eck der Anzeigefläche liegt, erhalten
wird, mit (b) den Koordinaten des Zentrums der Funktionstaste
6211 verbindet. Wie zu erkennen ist, liegen die Koordinaten
des Zentrums der Funktionstaste 6211 außerhalb des
Bildanzeigebereichs der Anzeigefläche.
Fig. 67 zeigt eine Funktionstasten-Koordinatentabelle, welche
die Koordinaten der Funktionstasten 6211 bis 6216 bezüglich
der Anzeigefläche angeben. Die in den sechs Zeilen dieser
Tabelle gespeicherten Koordinatenpaare entsprechen daher den
Funktionstasten 6211 bis 6216. Die die Teilbilder mit den
Funktionstasten verbindenden Linienzeiger werden daher so
gezeichnet, daß sie die Koordinaten der Zentren der Teilbilder
mit den in der Funktionstasten-Koordinatentabelle gemäß
Fig. 67 gespeicherten Koordinaten verbinden.
Nachfolgend wird unter Bezugnahme auf das in Fig. 68 gezeigte
Flußdiagramm ein Steuerungsablauf zur Anzeige dieser Linienzeiger
näher erläutert. Hierbei wird angenommen, daß der
Vorgang zum Anzeigen der Teilbilder bereits abgeschlossen
ist.
In einem Anfangsschritt S901 wird die Variable i mit dem
Anfangswert "1" belegt, wodurch auf die erste Zeile der in
Fig. 65 gezeigten Bildaufbautabelle 6301 Bezug genommen wird.
In einem Schritt S902 wird überprüft, ob die i-te Zeile
irgendwelche Daten bezüglich eines Teilbilds enthält. Diese
Überprüfung kann auf gleiche Weise wie im Schritt S603 der
Fig. 50 erfolgen. In einem Schritt S903 werden die Koordinaten
des einen Endes des zu zeichnenden Linienzeigers unter
Bezugnahme auf die durch die Spalte (ppnt) der i-ten Zeile
adressierte Teilbildtabelle 6302 bestimmt.
In einem Schritt S904 wird zwischen den in dem vorangegangenen
Schritt S903 bestimmten Koordinaten und den in der i-ten
Zeile der Funktionstasten-Koordinatentabelle 6501 gespeicherten
Koordinaten (sci, syi) der betreffenden Funktionstaste
ein Linienzeiger gezeichnet. In einem Schritt S906 wird
die Variable i um "1" inkrementiert, worauf der Ablauf zum
Schritt S902 zurückkehrt. Dieser Vorgang wird so lange wiederholt,
bis alle Linienzeiger zwischen den Teilbildern und
den zugeordneten Funktionstasten gezeichnet sind, so daß
schließlich das in Fig. 64 gezeigte Bild erzeugt wird, welches
die Bedienungsperson in die Lage versetzt, die jeweilige
Zuordnung der Teilbilder zu den Funktionstasten auf einen
Blick zu erkennen. Sobald dieses Bild angezeigt wird, kann
die Bedienungsperson durch Betätigung der entsprechenden
Funktionstaste auf das gewünschte bzw. das zu bearbeitende
Teilbild zugreifen.
Bei dem beschriebenen Ausführungsbeispiel ist es notwendig,
daß die jeweilige Position der Funktionstaste auf der Tastatur
auf dem Monitor 101 angezeigt wird. Die gleiche Wirkung
kann jedoch auch erzielt werden, wenn unterhalb der Anzeigevorrichtung
bzw. der Anzeigefläche des Monitors Schalter oder
Tasten angeordnet werden, welche ausschließlich zur Auswahl
von Teilbildern vorgesehen sind, wobei die Linienzeiger in
diesem Fall so gezeichnet werden, daß sie die Teilbilder mit
den entsprechenden Schaltern oder Tasten verbinden. Die CPU
kann dann aus dem jeweiligen Schaltzustand dieser Schalter
oder Tasten erkennen, auf welches Teilbild zugegriffen werden
soll.
Wenn der erwähnte Personalcomputer AS-300 der Firma Canon
eingesetzt wird, können die Linienzeiger auf die nachfolgend
beschriebene Weise gezeichnet werden.
Im AX-Register und im BX-Register wird der jeweilige Wert der
Koordinate sxi bzw. syi eingestellt. Daraufhin wird im CL-
Register der Wert "0" eingestellt und der Befehl "INT 15H"
durchgeführt, womit der Startpunkt des Linienzeigers festgelegt
ist. Daraufhin wird der Endpunkt des Linienzeigers dadurch
festgelegt, daß in das AX-Register und das BX-Register
der Koordinatenwert (xi + mxk) bzw. (yi + myk) und in das CL-
Register der Wert "2" eingegeben wird, worauf der Befehl
"INT 15H" durchgeführt wird.
Nachfolgend wird unter Bezugnahme auf die Fig. 56, 69A und
69B eine abgewandelte Ausführungsform dieses Ausführungsbeispiels
erläutert.
Bei dem vorstehend beschriebenen Ausführungsbeispiel geben
die in den Spalten mx₂ und my₂ der Teilbildtabelle 6302
gespeicherten Werte eine auf die linke obere Ecke des jeweiligen
Teilbildes bezogene Relativposition an. Stattdessen ist
es jedoch auch möglich, in diesen Spalten Werte einzustellen,
die Bezugspositionen angeben, die auf die jeweiligen Teilbilder,
d. h. dem Ursprung der lokalen Koordinaten bezogen sind.
In diesem Fall werden in den Spalten xi und yi der Bildaufbautabelle
6301 die Koordinaten des Ursprungs jedes Teilbilds
eingestellt. Gleichzeitig werden die Koordinaten derjenigen
Position, an der die Anzeige des betreffenden Teilbilds begonnen
wird, als (xi-mxk, yi-myk) eingestellt. Die Werte
mxk und myk sind die in den Spalten mxk und myk der Teilbildtabelle
eingestellten Werte, die durch den Inhalt der Spalte
(ppnti) der Teilbildtabelle angegeben werden. Der Linienzeiger
zwischen dem Teilbild und der Funktionstaste wird daher
so gezeichnet, daß er die Koordinaten (xi, yi) mit den Koordinaten
(sxi, syi) der betreffenden Funktionstaste verbindet.
Dies verringert die zum Anzeigen des Linienzeigers erforderlichen
Rechenoperationen, so daß die Verarbeitungsgeschwindigkeit
erhöht ist.
Unter Bezugnahme auf Fig. 56 wird nun der Fall beschrieben,
daß in der Bildaufbautabelle Koordinaten mdxi und mdyi
gespeichert sind, die einen geringen Versatz der Linienzeiger
angeben. In diesem Fall werden die betreffenden Koordinaten
jedes Linienzeigers offensichtlich durch (xi + mdxi, yi + mdyi)
ausgedrückt.
Normalerweise wird in den Spalten mdxi und mdyi der Wert "0"
eingestellt. Der Wert "0" bedeutet, daß die Abweichung bzw.
der Versatz vom Ursprung gleich 0 ist. Es ist jedoch möglich,
in diesen Spalten jeden gewünschten Wert einzutragen.
Es ist nicht erforderlich, in den Spalten mdxi und mdyi
spezielle Werte einzugeben, wenn die angezeigten Teilbilder
wie in der Darstellung in Fig. 64 jeweils voneinander abgesetzt
sind. Wenn das Bild jedoch wie in der Darstellung gemäß
Fig. 69A Teilbilder aufweist, die einander sehr nahe überlappen,
ist es sehr hilfreich, in den Spalten mdxi und mdyi
spezielle Werte einzustellen. Wie aus Fig. 69A zu erkennen
ist, ist das Teilbild "Wolke" hinter dem "äußeren" Berg
derart verborgen, daß die betreffenden Linienanzeiger im wesentlichen
von derselben Position aus gezeichnet werden,
wodurch nicht deutlich wird, welche der Funktionstasten nun
mit der "Wolke" verbunden ist.
Dieses Problem kann jedoch wie folgt gelöst werden. Hierzu
wird in die Spalte mdx₁ der ersten Zeile der Bildaufbautabelle
9201 ein Versatzwert -Δxc eingegeben, während der Inhalt
der Spalte mdy₁ unverändert bleibt. Folglich ist die Startposition
des mit dem Teilbild "Wolke" verbundenen Linienzeigers
gemäß der Darstellung in Fig. 69B um einen Betrag -Δx versetzt.
Die Eingabe des jeweiligen Betrags des Versatzes der Startposition
des betreffenden Linienzeigers kann von der Bedienungsperson
mittels der Tastatur vorgenommen werden. Alternativ
hierzu ist es auch möglich, den Linienzeiger mittels
eines Einblendmenues zu verschieben und den Betrag dieser
Verschiebung des Linienzeigers automatisch in die Spalten
mdx₁ und mdy₁ der Bildaufbautabelle 9201 einzuschreiben.
Ferner ist es möglich, einen Bereich des Teilbildes "Wolke"
zu suchen, der nicht von dem "äußeren" Berg verdeckt wird,
und die Startposition des Linienzeigers automatisch auf das
Zentrum des auf diese Weise gesuchten Bereichs einzustellen.
In jedem Fall führt eine der Fig. 69B entsprechende Änderung
in der Startposition des Linienzeigers automatisch zu einer
entsprechenden Änderung des Inhalts der zugeordneten Spalte
der Bildaufbautabelle 9201, so daß das gewünschte Teilbild
mittels der betreffenden Funktionstaste fehlerfrei gewählt
werden kann.
Gemäß der vorstehenden Beschreibung werden die Linienzeiger
mit Hilfe der Funktionstasten-Koordinatentabelle 6501 angezeigt,
welche die Koordinaten der Funktionstasten angibt.
Wenn die Positionen der Funktionstasten jedoch wie in Fig. 64
fest vorgegeben sind, ist es möglich, die jeweilige Position
der Funktionstasten aus den Koordinaten der ersten Funktionstaste
6211 und dem vorgegebenen Abstand der anderen Funktionstasten
zu ermitteln. Wenn die Koordinaten der ersten
Funktionstaste 6211 durch (stx₀, sty₀) gegeben sind und der
Abstand der Funktionstasten (Δstx₀, Δsty₀) beträgt, können
die Endpositionen der Linienzeiger im Schritt S904 folgendermaßen
berechnet werden:
(stx0 + (i - 1)Δstx0, sty0 + (i - 1)Δsty0
Unter Bezugnahme auf die Fig. 70 bis 74 wird nun eine weiter
abgewandelte Ausführungsform beschrieben.
Bei den vorstehend beschriebenen Ausführungsbeispielen sind
die Bereiche zur Auswahl der Teilbilder außerhalb der Bildanzeigefläche
angeordnet. Dies ist jedoch nicht die einzige
Möglichkeit; beispielsweise ist folgende Alternative möglich:
Ein Markierungsmuster 8302-2 wird gemäß der Darstellung in
Fig. 70 festgelegt und die dadurch definierten Markierungen
werden in einen unteren Bereich der Anzeigefläche in einem
vorgegebenen Teilungsabstand gemäß Fig. 71 angeordnet. Diese
Markierungen sind mit den betreffenden Teilbildern über Linienzeiger
verbunden. Diese Anordnung ist dann von Vorteil,
wenn die Anzahl der Teilbilder die Anzahl der Funktionstasten
übersteigt. Eine in Fig. 70 gezeigte Markierungstabelle 8201
ist im Tabellenspeicher 110a gespeichert und adressiert Maskierungsmusterdaten
8302-1 sowie diesen entsprechende Markierungsmuster
8302-2.
Bei dieser abgewandelten Ausführungsform sind die Anzeigepositionen
der Markierungsmuster 8202-2 in der Funktionstasten-
Koordinatentabelle 6501 eingestellt und geben diejenigen
Punkte an, die die Wahl des betreffenden Teilbilds ermöglichen.
Diese Markierungsmuster werden auf die gleiche Weise
wie die Teilbilder angezeigt, deren Anzeige vorstehend in
Verbindung mit dem in Fig. 50 gezeigten Flußdiagramm erläutert
wurde. In diesem Fall werden die Schritte S604 und S605
unter Verwendung der in der i-ten Zeile der Funktionstasten-
Koordinatentabelle 6501 eingestellten Werte sxi, syi anstelle
der in den Spalten xi und yi der Bildaufbautabelle 6301 oder
der Tabelle 9201 gemäß Fig. 56 gespeicherten Werte durchgeführt.
Die Beendigung des Schritts S603 kann überprüft werden,
indem überprüft wird, ob der Wert der Variablen i kleiner
als n ist, wobei n die Anzahl der Markierungsmuster
angibt. Da die Markierungsmuster über Linienzeiger mit dem
betreffenden Teilbild verbunden sind, kann die Bedienungsperson
unabhängig von der jeweiligen Größe der Teilbilder auf
die gleiche Weise sehr leicht auf das gewünschte, zu bearbeitende
Teilbild deuten. Die entsprechende Auswahl der Markierungsmuster
kann dadurch erfolgen, daß ein Grafikcursor durch
manuelle Bewegung der Maus 103 derart verschoben wird, daß er
auf das gewünschte Markierungsmuster deutet, oder auch dadurch
daß die Markierungsmuster in einer fest vorgegebenen
Lagebeziehung zu geeigneten Tasten auf der Tastatur 102 angeordnet
werden, wobei die Auswahl durch Betätigung der dem
gewünschten Markierungsmuster entsprechenden Taste erfolgt.
Nachfolgend wird der Fall näher erläutert, daß sich die
Zeichnung aus einer größeren Zahl von Teilbildern zusammensetzt,
als Maskierungsmuster vorhanden sind, nämlich im beschriebenen
Fall sechs Stück. Selbstverständlich wäre es auch
möglich, die Anzahl der Markierungsmuster in Übereinstimmung
mit einer Zunahme in der Anzahl der Teilbilder zu erhöhen.
Nachfolgend wird jedoch ein Verfahren beschrieben, das es
ermöglicht, mittels der vorhandenen sechs Markierungsmuster
bzw. Funktionstasten aus sieben oder mehr Teilbilder ein
beliebiges auszusuchen.
Wenn sieben oder mehr Teilbilder vorhanden sind, werden jeweils
sechs Teilbilder als eine Gruppe von Teilbildern behandelt.
Im Betrieb wird zunächst ein Linienzeiger zu einer
ersten Gruppe von Teilbildern gezogen. Wenn der Linienzeiger
nicht auf dasjenige Teilbild zeigt, das die Bedienungsperson
auszuwählen wünscht, wird der Linienzeiger mit der nächsten
Gruppe der Teilbilder verbunden. Fig. 73 zeigt ein Flußdiagramm
zur Durchführung eines entsprechenden Steuerungsablaufs.
Fig. 72 zeigt einen Speicherabschnitt bzw. einen Speicherplatz
8401 zur Speicherung eines gewählten Versatzwertes,
in welchem Versatzwerte R zur Identifizierung jeder Gruppe
gespeichert sind. Der Speicherabschnitt 8401 kann sich im
Tabellenspeicher 110a befinden. Es sei angenommen, daß im
Speicherabschnitt 8401 für R der Wert "6" gespeichert ist.
In einem Anfangsschritt S1501 wird die Variable i mit dem
Anfangswert "1" belegt. In einem Folgeschritt S1502 wird
überprüft, ob der Wert der Variablen i kleiner als die Zahl
"6" der Markierungsmuster oder Funktionstasten ist. Wenn i <
n ist, wird überprüft, ob die (i + R)-te Zeile in der Bildaufbautabelle
6301 oder der Tabelle 9201 irgendwelche Daten
bezüglich eines Teilbilds enthält. In Schritten S1504 bis
S1506 wird daraufhin ein Steuerungsablauf durchgeführt, der
dem der Schritt S903 bis S905 ähnlich ist.
Wenn der Versatzwert R gleich "0" ist, wird ein Linienzeiger
gezeichnet, der auf die in den Zeilen 1 bis 6 der Bildaufbautabelle
6301 oder 9201 angegebenenen Teilbilder zeigt. Wenn der
Versatzwert R gleich "6" ist, wird in ähnlicher Weise ein
Linienzeiger gezeichnet, der zu den in den Zeilen 7 bis 12
der Bildaufbautabelle 6301 oder 9201 angegebenen Teilbildern
zeigt. Wenn ein Linienzeiger angezeigt wird, der auf das (i + R)-
te Teilbild zeigt, und wenn das i-te Markierungsmuster oder
die entsprechende Funktionstaste gewählt wird, nimmt die CPU
an, daß das Ci + R)-te Teilbild gewählt wurde, worauf der
Ablauf zum nächsten Schritt verzweigt. Es ist möglich, den in
dem Speicherabschnitt 8401 einzustellenden Versatzwert R
durch entsprechende Eingabe über die Tastatur oder mittels
eines Einblendmenues variabel zu machen, so daß eine große
Zahl von Teilbildern mit einer geringen Zahl von Markierungsmustern
oder Funktionstasten selektiv ausgewählt werden kann.
Wenn mittels des Grafikcursors auf das Markierungsmuster
gedeutet wird, ist es möglich, dadurch eine schnellere Überprüfung
durchzuführen, daß die Position der durch den Grafikcursor
angegebenen Koordinaten mit Bezug auf die Maskierungsmusterdaten
oder das Markierungsmuster überprüft wird. Hierzu
werden die Bildelementdaten innerhalb der Maskierungsmusterdaten,
die der Markierung an den durch den Grafikcursor
angegebenen Koordinaten zugeordnet sind, gelesen und es wird
überprüft, ob diese "schwarz" oder "weiß" sind, d. h. ob sie
den Wert "1" oder "0" haben. Wenn der Umfang der Maskierungsmusterdaten
einer Markierung größer als der Umfang der dazugehörigen
Markierungsdaten gewählt wird, erhält das Maskierungsmuster
eine größere Fläche, so daß der Auswahlvorgang
erleichtert ist.
Bei dem vorstehend beschriebenen Ausführungsbeispiel der
Erfindung werden demnach Linienzeiger gezeichnet, die den
Zusammenhang zwischen einer Vielzahl von Teilbildern, die
zusammen eine Zeichnung bilden, und zugeordneten Teilbild-
Auswahlbereichen, wie z. B. Maskierungsmustern oder Funktionstasten,
angeben. Die Bedienungsperson kann daher sehr deutlich
die jeweilige Art des zu bearbeitenden Teilbilds feststellen.
Darüber hinaus ist die Angabe bzw. die Auswahl eines
gewünschten Teilbilds sehr erleichtert. Hierdurch wird die
Bedienungsfreundlichkeit bei der Bildbearbeitung stark erhöht.
Wenn die zwei "Berge", die gemäß der Darstellung in Fig. 74
in überlappender Weise angezeigt werden, als ein ehrgeiziges
Teilbild geformt sind, wird nur ein Linienzeiger verwendet,
um auf dieses einzelne Teilbild zu zeigen. In einem solchen
Fall kann mittels eines einzigen Wählvorgangs sehr schnell
festgestellt werden, ob das bezeichnete Teilbild die "Wolke"
oder der "Berg" ist. Darüber hinaus können die einzelnen Elemente
bzw. Teilbilder der Zeichnung mit einem Blick erfaßt
werden, wodurch die Bedienbarkeit des erfindungsgemäßen Bildbearbeitungsgeräts
merklich verbessert wird.
Wenn alle Markierungen die gleiche Form haben, können die zum
Anzeigen der Markierungen benötigten Daten anstelle ihrer
Speicherung im Speicher 110 als Konstanten im Steuerungsablauf
eingestellt werden, wodurch die jeweilige Markierung als
eine Kombination spezifischer Muster dargestellt werden kann.
Die Steuerungsabläufe können im Speicher 110 gespeichert
werden, obgleich sie im beschriebenen Ausführungsbeispiel in
dem in der CPU 105 befindlichen Speicher gespeichert sind.
Gemäß vorstehender Beschreibung ist bei diesem Ausführungsbeispiel
jedes Teilbild einer Vielzahl von Teilbildern, die
zusammen eine Zeichnung darstellen, über einen Linienzeiger
mit einem geeigneten Teilbild-Auswahlbereich verbunden, so
daß die Bedienungsperson deutlich dasjenige Teilbild unterscheiden
kann, das sie bearbeiten möchte. Hierdurch ist die
Auswahl des gewünschten Teilbilds wesentlich erleichtert und
die Bedienungsfreundlichkeit des Geräts wird stark erhöht.
Nachfolgend wird unter Bezugnahme auf Fig. 75 ein weiteres
Ausführungsbeispiel beschrieben, das eine Einrichtung besitzt,
mit der die Auswahlbereiche wie die Markierungen ein-
und ausgeschaltet werden können.
Fig. 75 zeigt anhand eines Blockschaltbilds den prinzipiellen
Aufbau dieses Ausführungsbeispiels.
Das in Fig. 75 gezeigte Gerät besitzt demnach einen Monitor
101 zum Anzeigen eines Bildes, eine an eine Tastaturschnittstelle
109 angeschlossene Tastatur 102 und eine Maus 103,
welche als Zeigevorrichtung dient und an eine Mausschnittstelle
109 angeschlossen ist. In einem Bildspeicher 104 sind
Bilddaten gespeichert, die dem auf dem Monitor 101 angezeigten
Bild entsprechen. Die in dem Bildspeicher 104 gespeicherten
Bilddaten werden über eine Monitorschnittstelle 107 zum
Monitor 101 übertragen. Eine CPU 105 steuert den Ablauf des
gesamten Geräts in Übereinstimmung mit einem in einem Speicher
105a gespeicherten Steuerungsablauf. Im Speicher 105a
sind später erläuterte Steuerungsabläufe sowie andere Steuerungsabläufe
gespeichert, mit denen eine Bildbearbeitung
durchgeführt werden kann.
Ein Speicher 110 besitzt einen später beschriebenen Tabellenspeicher
110a, eine Teilbilddaten-Speicherfläche 110b und
eine Markierungs-Anzeigekennung 110c. Eine Magnetplatte 111
ist als externes Speichermedium über eine Plattenschnittstelle
112 angeschlossen. Ein Hilfsspeicher 113 hat die gleiche
Speicherkapazität und die Speicher sind an einen Systembus 106
angeschlossen.
Nachfolgend wird der Vorgang des Aus- und Einschaltens der
Anzeigebereiche sowie der Markierungen näher erläutert. Jedes
Teilbild wird in Übereinstimmung mit dem nachfolgenden Steuerungsablauf
dargestellt.
Fig. 76A zeigt ein Beispiel für eine auf einem Bildschirm
dargestellte Zeichnung. Diese Zeichnung besteht aus drei
Bestandteilselementen, nämlich einer "Wolke" und zwei "Bergen".
Diese Bestandteilselemente werden nachfolgend als
"Teilbilder" bezeichnet. In Verbindung mit den Fig. 76A und
76B wird später noch eine genauere Erläuterung gegeben.
Fig. 56 zeigt verschiedene Teilbilddaten zum Aufbau einer
Zeichnung zusammen mit Maskierungsmusterdaten und verschiedenen
Datentabellen. Eine Bildaufbautabelle 6301 enthält Teilbilddaten
zur Zusammenstellung bzw. zum Bildaufbau einer
anzuzeigenden Zeichnung. Die Bildaufbautabelle 6301 weist
hierzu eine Vielzahl von Zeilen auf, von denen jede ein
anderes Teilbild betrifft. Jede Zeile weist wiederum Spalten
zur Festlegung der Position (x- und y-Koordinate) der betreffenden
Teilbilddaten in bezug auf die Anzeigefläche sowie
eine Spalte "ppnt" auf, welche die Adressen von Teilbildtabellen
enthält, in denen Daten gespeichert sind, die die Art
bzw. das Muster des betreffenden Teilbilds angeben.
Die Teilbildtabelle 5301 besitzt Zeilen, welche die Breite
(W) und Höhe (H) jedes Teilbilds sowie Relativkoordinaten
(mxi, myi) zur Anzeige später beschriebener Markierungen, die
den Teilbilddaten zugeordnet sind, sowie eine Zeile "ipnt",
in der die Anfangs-Speicheradresse jedes Teilbildmusters
gespeichert ist.
Die Bildaufbautabelle 6301 und die Teilbildtabellen 6302 sind
in dem im Speicher 110 befindlichen Tabellenspeicher 110a
vorgesehen, während Bildmuster 6303a-1, 6303a-2, 6303b-1 und
6303b-2 in der Teilbilddaten-Speicherfläche 110b gespeichert
sind. Bei diesem Ausführungsbeispiel werden Muster (Rasterbilddaten)
zur Darstellung der Teilbilder verwendet. Wenn das
Teilbild jedoch aus einer Kombination mehrerer geometrischer
Muster gebildet wird, können die Teilbilddaten aus Parametern
bestehen, welche das jeweilige geometrische Muster angegeben,
wie z. B. den Start- und den Endpunkt einer geraden Linie.
Aus der voranstehenden Beschreibung ist zu erkennen, daß die
Position, an der die Anzeige des Teilbildes begonnen wird,
d. h. die Position der linken oberen Ecke beim Aufbau der
Teilbilddaten im Bildspeicher 104, durch (xi - mxi, yi - myi)
gegen ist. Das jedem Teilbild zugeordnete Muster wird daher
zur Anzeige ausgehend von dieser Position im Bildspeicher 104
eingeschrieben.
Nachfolgend wird der Steuerungsablauf zur Anzeige des Teilbilds
"Berg" näher beschrieben.
Gemäß Fig. 65 sind die Teilbilddaten zusammen mit zugeordneten
Maskierungsmusterdaten gespeichert. Es sind z. B. im Falle
des Teilbilds "Berg" die Teilbilddaten 6303b-2 zusammen mit
den zugeordneten Maskierungsmusterdaten 6303b-1 gespeichert.
Die Speicherung der Maskierungsmusterdaten ist aus folgendem
Grund notwendig. Wenn die Teilbilddaten 5303b-2 durch ihre
Übertragung in den Bildspeicher 104 angezeigt werden sollen
und wenn sich im Bildspeicher 104 bereits ein Bild zur Anzeige
befindet, ist es notwendig, die vorhergehenden Daten im
Bildspeicher 104 zu maskieren, um den dem Schwarzbereich des
Maskierungsdatenmusters 6303b-1 entsprechenden Bereich auszuschneiden.
Zur Anzeige irgendeines Teilbilds ist es demnach
erforderlich, in einem vorbereitenden Vorgang das bereits
existierende Bild mittels eines dem anzuzeigenden Teilbild
zugeordneten Maskenmusters auszuschneiden. Dieser Ablauf ist
notwendig, um z. B. zwei "Berge" in teilweise überlappender
Weise gemäß der Darstellung in Fig. 76A anzuzeigen.
Nachfolgend wird unter Bezugnahme auf die Fig. 76A, 76B, 77,
78, 49A und 49B ein Vorgang zum Anzeigen der Markierungen
näher erläutert.
Die Fig. 76A und 76B zeigen Beispiele von Bildern, die während
der Bildbearbeitung angezeigt werden. Die in diesen
Figuren gezeigte Anzahl von Bildern wurde gewählt, um die
Beschreibung zu vereinfachen. Bei einer typischen Bildbearbeitung
werden selbstverständlich wesentlich mehr Teilbilder
verwendet.
In diesen Figuren bezeichnen 101a den Anzeigebereich des
Monitors 101. Ein Arbeitsbildanzeigebereich 101b dient zum
Anzeigen von zu bearbeitenden oder zu erzeugenden Bildern.
Ein Hilfsanzeigebereich 101c wird, wenn auch nicht ausschließlich,
zur Anzeige verschiedener Menues verwendet, die
zur Bearbeitung von in dem Arbeitsbildanzeigebereich angezeigten
Bildern dienen.
Ein Grafikcursor 7203 ist über den ganzen Anzeigebereich 101a
frei bewegbar. Ein Bearbeitungsvorgang wird durchgeführt,
indem der Grafikcursor 7203 zwischen dem Hilfsanzeigebereich
101c und dem Arbeitsbildanzeigebereich 101b hin- und
herbewegt wird. Bekanntlich folgt der Grafikcursor 7203 der
Bewegung der Maus 103.
Es ist häufig erforderlich, an einem bestimmten Teilbild nach
oder während der Erzeugung einer Zeichnung bzw. eines Gesamtbildes
eine Bearbeitung, wie z. B. eine Korrektur, eine Verschiebung
usw., durchzuführen. In einem solchen Fall bewegt
die Bedienungsperson die Maus 103, um den Grafikcursor 7203
zu einer Position zu bringen, an der auf das bezeichnende
bzw. gewünschte Teilbild deutet, und betätigt anschließend
eine bestimmte Taste auf der Maus 103, womit sie das gewünschte
Teilbild bezeichnet und auswählt. Es ist jedoch
häufig schwierig, visuell zu überprüfen, auf welches Teilbild
auf dem Anzeigebereich tatsächlich gezeigt wurde. Darüber hinaus
ist es schwierig, den Grafikcursor bei einem solchen
Teilbild Korrektur zu positionieren, das eine geringe Größe
hat.
Zur Lösung dieser Probleme schlägt das vorliegende Ausführungsbeispiel
vor, immer dann, wenn ein Teilbild als zu
bearbeitendes Objekt zu bestimmen ist, Markierungen 7211 bis
7213 zu verwenden, die aus einem Doppelkreis und einem Linienzeiger
bestehen. Der Grund, warum die Markierungen nur
dann verwendet werden, wenn die Auswahl eines Teilbilds vorzunehmen
ist, liegt darin, daß der normale Bearbeitungsvorgang
vorzugsweise ohne derartige Markierungen durchgeführt
wird, um der Bedienungsperson einen Überblick über den Zustand
der Zeichnung im gesamten Anzeigebereich zu ermöglichen.
Zur Auswahl des gewünschten Teilbilds werden die Markierungen
7211 bis 7213 in Relation zu den jeweiligen Teilbildern
angezeigt. Daraufhin wird der Grafikcursor 7203 in der Weise
bewegt, daß er auf den Doppelkreis derjenigen Markierung
zeigt, die dem gewünschten Teilbild zugeordnet ist. Durch
Verwendung derartiger Markierungen ist es möglich, jedes
gewünschte Teilbild mit gleicher Leichtigkeit und unabhängig
von der jeweiligen Größe des Teilbildes auszuwählen.
Das Umschalten zwischen einer Betriebsart, in der die Markierungen
angezeigt werden, und einer weiteren Betriebsart, in der die
Markierungen nicht angezeigt werden, wird durchgeführt
wie folgt. Bei diesem Ausführungsbeispiel werden die
Markierungen dann angezeigt, wenn die Markierungs-Anzeigekennung
110c den Zustand "EIN" hat und wenn sich der Grafikcursor
7203 innerhalb des Arbeitsbildanzeigebereichs 110c befindet.
Die Markierungs-Anzeigekennung 110c kann dadurch ein-
und ausgeschaltet werden, daß der Grafikcursor zu einem Bearbeitungsabschnitt
101d innerhalb eines Menues bewegt wird,
das in den Fig. 76A und 76B im Hilfsanzeigebereich 101c
gezeigt ist, und daß anschließend die auf der Maus 103 vorgesehene
Taste betätigt wird. Mit dem Bearbeitungsabschnitt
101d sind alle Steuerungen hinsichtlich eines Bearbeitungsvorgangs
durchführbar, wie z. B. eine Verschiebung oder Korrektur
eines gewählten Teilbilds.
Selbst wenn die Markierungs-Anzeigekennung 110c eingeschaltet
ist, werden die Markierungen in dem in Fig. 76A gezeigten
Zustand nicht angezeigt, da sich der Grafikcursor 7203 in
diesem Zustand nicht im Arbeitsbildanzeigebereich 101b befindet.
In dem in Fig. 76B gezeigten Zustand hingegen werden die
Markierungen 7211 bis 7213 angezeigt, da die Markierungs-
Anzeigekennung 110c eingeschaltet ist und da sich der Grafikcursor
7203 innerhalb des Arbeitsbildanzeigebereichs 101b
befindet.
Ein entsprechender Steuerungsablauf zur Anzeige der Markierungen
wird nachfolgend unter Bezugnahme auf das in Fig. 77
gezeigte Flußdiagramm näher erläutert.
In einem Anfangsschritt S400 werden mittels der Maus 103 oder
über die Tastatur 102 Koordinaten eingegeben und in einem
Folgeschritt S401 wird überprüft, ob sich die im Schritt S401
eingegebenen Koordinaten sowie der Zustand der Taste auf der
Maus oder der Zustand einer vorbestimmten Taste auf der
Tastatur geändert haben.
Wenn diese Überprüfung ergibt, daß keine Änderung gegenüber
den vorher eingegebenen Daten vorliegt, kehrt der Ablauf zu
dem Schritt S400 zurück. Wenn sich die Koordinaten jedoch
geändert haben oder die betreffende Taste einen anderen Zustand
aufweist, verzweigt der Ablauf zu einem Folgeschritt
S402, bei dem überprüft wird, ob sich die eingegebenen Werte
der Koordinaten geändert haben. Wenn sich die Werte der
Koordinaten nicht geändert haben, verzweigt der Ablauf zu
einem Schritt S407, bei dem ein vorgegebener Bearbeitungsvorgang
durchgeführt wird. Wenn hingegen eine Änderung im Wert
der Koordinaten festgestellt wird, verzweigt der Ablauf zu
dem Schritt S403, bei dem überprüft wird, ob ein Steuerungsablauf
zur Anzeige der Markierungen gestartet werden soll.
Diese Überprüfung wird durchgeführt, indem überprüft wird, ob
die Markierungs-Anzeigekennung 110c eingeschaltet ist und ob
die eingegebenen Koordinaten innerhalb des Arbeitsbildanzeigebereichs
101b liegen. Wenn dies der Fall ist, schreitet der
Ablauf zu einem Schritt S404, wodurch die Markierungen für
die betreffenden Teilbilder angezeigt werden, worauf im
Schritt S407 der Bearbeitungsvorgang durchgeführt wird. Wenn
die im Schritt S403 überprüften Bedingungen jedoch nicht
erfüllt sind, wird zu einem Schritt S405 verzweigt, bei dem
überprüft wird, ob der Steuerungsablauf zur Anzeige der Markierungen
beendet ist. Dies kann durchgeführt werden, indem
überprüft wird, ob die Markierungs-Anzeigekennung 110c ausgeschaltet
ist oder ob die eingegebenen Koordinaten außerhalb
des Arbeitsbildanzeigebereichs 101b liegen. Wenn die Antwort
im Schritt S405 "NEIN" lautet, wird zum Schritt S407 weiterverzweigt,
während andernfalls ein Schritt S406 begonnen
wird, bei dem ein Steuerungsablauf zum Löschen bzw. Ausblenden
der Markierungen gestartet wird.
Es ist anzumerken, daß der Schritt S407 auch die Steuerung
des Ein- und Ausschaltens der Markierungs-Anzeigekennung
enthält. Eine Eingabe zum entsprechenden Ein- und Ausschalten
der Markierungs-Anzeigekennung kann auch auf andere Weise als
vorstehend beschrieben erfolgen, z. B. mittels der Tastatur
102.
Das im Schritt S406 durchgeführte Löschen der Markierungen
läuft wie folgt ab. Die Bilddaten, die vor der Anzeige der
Markierungen angezeigt wurden, werden in den Hilfsspeicher
113 übertragen. Zu Beginn des Schritt S406 werden diese
Bilddaten aus dem Hilfsspeicher 113 wieder zurück in den
Bildspeicher 104 übertragen, wodurch die Zeichnung auf der
Anzeigefläche wieder vollständig angezeigt wird. Dies kann
mittels des in Fig. 78 gezeigten Steuerungsablaufs erreicht
werden.
In einem Anfangsschritt S501 werden die Teilbilder (drei in
diesem Fall) in Übereinstimmung mit der Bildaufbautabelle
6301 innerhalb des Arbeitsbildanzeigebereichs 101b angezeigt,
wobei die diesen Teilbildern entsprechenden Daten im Schritt
S502 innerhalb des Hilfsspeichers 113 gespeichert werden. In
einem Folgeschritt S503 wird daraufhin überprüft, ob die
Markierungs-Anzeigekennung eingeschaltet ist, worauf in einem
Schritt S504 die Markierungen angezeigt werden, wenn die
Kennung eingeschaltet ist.
Wenn daher irgendeine Bearbeitung an der Zeichnung durchgeführt
wird, kann die Anzeige und das Löschen der Markierungen
automatisch in Übereinstimmung mit dem vorstehend unter Bezugnahme
auf Fig. 77 erläuterten Vorgang durchgeführt werden,
da der Vorgang zur Wieder-Anzeige bzw. zur Vervollständigung
der Zeichnung wie oben erläutert abläuft. Die Initialisierung
oder das Löschen des Hilfsspeichers 113 kann durchgeführt
werden, indem der Vorgang zur Erzeugung der Zeichnung nach
dem Ausschalten der Markierungs-Anzeigekennung und dem Auslesen
der Bildaufbautabelle 6301 durchgeführt wird.
Gemäß der vorstehenden Beschreibung werden bei diesem Ausführungsbeispiel
die Markierungen nur dann angezeigt, wenn ein
Bedarf zur Bearbeitung eines der angezeigten Teilbilder
steht. Die Markierungen bezeichnen die Teilbilder sehr deutlich,
so daß die Bedienungsperson das gewünschte Teilbild
durch Andeuten der betreffenden Markierung sehr leicht auswählen
kann. Das beschriebene Ausführungsbeispiel verbessert
daher den Widerstand bei der Bildbearbeitung.
Wenn für alle Teilbilder Markierungen angezeigt werden, wird
bei dem beschriebenen Ausführungsbeispiel der ganze Bereich
des auf dem Monitor angezeigten Bildes in den Hilfsspeicher
gerettet. Stattdessen ist es auch möglich, nur denjenigen
Bereich der Bilddaten in den Hilfsspeicher 113 zu retten,
innerhalb dessen die Markierungen angezeigt werden.
Fig. 49 zeigt die gegenseitige Beziehung zwischen der Markierungstabelle
5302z. Markierungsmusterdaten 5303z-2 und Maskierungsdaten
5303z-1. In dieser Figur bezeichnet w₀ die
Breite der Markierungsmusterdaten 5303z-2, während h₀ deren
Höhe angibt. Der Ursprung der lokalen Koordinaten der Markierung
wird durch mx₀ und my₀ angegeben. In einer Spalte bzw.
einem Speicherplatz "ipnt₀" wird die Anfangs-Speicheradresse
der Maskierungsdaten 5303z-1 gespeichert. Wenn eine Markierung
angezeigt wird, werden diejenigen Bilddaten, die innerhalb
des Bereichs mit einer Breite w₀ und einer Höhe h₀
angezeigt wurden, in aufeinanderfolgenden Speicherstellen
7601, 7602 . . . des Hilfsspeichers 113 gespeichert. Die Anzahl
dieser Speicherplätze ist mindestens genauso groß wie die
Anzahl der Teilbilder.
Nach der Löschung der Markierungen werden die in den Speicherplätzen
7601, 7602 . . . gespeicherten Bilddaten wieder an
ihren ursprünglichen Platz im Bildspeicher 104 zurückgebracht.
In einem solchen Fall wird der in den Schritten S501 und S502
des in Fig. 78 gezeigten Flußdiagramms dargestellte Steuerungsablauf
wie folgt geändert:
Bei der vorstehend beschriebenen Ausführungsform wurde der
Steuerungsablauf des Schritt S501 der Koordinaten
(xi, yi) des Zentrum jedes Teilbilds durchgeführt. In
diesem Fall werden diese Koordinaten hingegen als Ursprung
jeder Markierung verwendet. Daher nimmt jede Markierung einen
rechteckförmigen Bereich ein, dessen obere linke Ecke und
dessen rechte untere Ecke wie folgt ausgedrückt werden können:
(xi - mx₀, yi - my₀)
(xi - mx₀ + w₀ - 1, yi - my₀ + h₀ - 1)
(xi - mx₀ + w₀ - 1, yi - my₀ + h₀ - 1)
Die hierdurch definierten rechteckförmigen Bereiche der Vielzahl
der Markierungen werden aufeinanderfolgend in dem Hilfsspeicher
113 gespeichert. Daher werden diejenigen rechteckförmigen
Bereiche, innerhalb der die in den ersten drei
Zeilen der Bildaufbautabelle 5301 angegebenen Markierungen
angezeigt werden, in den in Fig. 79 gezeigten Speicherplätzen
7601 und folgende des Hilfsspeichers 113 gespeichert.
Auf diese Weise ist es möglich, die Anzeige und das Löschen
der Markierungen durchzuführen. Dieses Verfahren hat den
Vorteil, daß auch dann eine Hochgeschwindigkeits-Verarbeitung
möglich ist, wenn der Anzeigebereich der Zeichnung sehr groß
ist und die Anzahl der Teilbilder und Markierungsmuster relativ
gering ist, wobei gleichzeitig der Speicherbedarf verringert
ist.
Bei dem vorstehend beschriebenen Ausführungsbeispiel wird die
Markierungs-Anzeigekennung dann eingeschaltet, wenn von der
Bedienungsperson eine Maustaste gedrückt wird und wenn der
Grafikcursor 7203 zu einer Position bewegt worden ist, bei
der es sich innerhalb des Bearbeitungsabschnitts 101d befindet.
Die Markierungen werden nur dann angezeigt, wenn die
Markierungs-Anzeigekennung eingeschaltet ist und wenn sich
der Grafikcursor innerhalb des Arbeitsbildanzeigebereichs
101d befindet. Dieses Verfahren zur Anzeige der Markierungen
ist jedoch nur beispielhaft; verschiedene andere Verfahren
können in gleicher Weise verwendet werden. Die Anzeige und
das Löschen der Markierungen kann beispielsweise in Übereinstimmung
mit dem Zustand der Taste auf der Maus 103 gesteuert
werden, d. h. in Abhängigkeit davon, ob diese Taste gedrückt
ist oder nicht. Es ist weiterhin möglich, die Markierungen
immer dann anzuzeigen, wenn eine geeignete Taste zur Steuerung
der Anzeige der Markierungen, die z. B. auf der Tastatur
102 vorgesehen sein kann, gedrückt wird. Schließlich ist es
auch möglich, die Steuerung so durchzuführen, daß bei jeder
Betätigung der genannten Taste auf der Tastatur zwischen der
Betriebsart, bei der die Markierungen angezeigt werden, und
der anderen Betriebsart, bei der diese nicht angezeigt werden,
hin- und hergeschaltet wird. In einem solchen Fall ist
der Schritt S403 in dem in Fig. 77 gezeigten Flußdiagramm so
zu modifizieren, daß die CPU den Beginn des Steuerungsablaufs
zur Anzeige der Markierungen anhand des Zustands der Markierungs-
Anzeigekennung und der Betätigung der genannten Taste
erkennt.
Eine solche Modifikation kann dadurch erreicht werden, daß
die Schritte S403 und S405 des in Fig. 77 gezeigten Flußdiagramms
in Übereinstimmung mit der gewünschten Erfassungsart
geeignet ersetzt werden.
Bei dem vorstehend beschriebenen Ausführungsbeispiel wird für
jedes Teilbild das in Fig. 49 gezeigte Markierungsmuster
5303z-2 angezeigt. Dies ist jedoch nicht die einzige Möglichkeit.
Gemäß Fig. 64 ist vielmehr auch eine Abwandlung dahingehend
möglich, daß eine feste Beziehung zwischen den Teilbildern
und externen Tasten, die z. B. auf dem Monitor angezeigt oder
Funktionstasten der Tastatur sein können, über Linienzeiger
6221 bis 6223 hergestellt wird. Die Linienzeiger können durch
eine EXKLUSIV-ODER-Verknüpfung mit den Daten des Bildspeichers
104 erzeugt werden. Wenn die EXKLUSIV-ODER-Verknüpfung
mit dem gleichen Linienzeiger zweimal durchgeführt wird,
erscheint der ursprüngliche Linienzeiger bzw. erscheinen die
ursprünglichen Daten wieder auf der Anzeigefläche, so daß der
Hilfsspeicher 113 nicht benötigt wird. Wenn die Bedienungsperson
eines der Teilbilder zum Arbeiten auswählen will, muß
sie lediglich von den externen Funktionstasten 6211 bis 6213
diejenige drücken, die dem zu dem gewünschten Teilbild führenden
Linienzeiger entspricht.
Nachfolgend wird unter Bezugnahme auf die Fig. 80 und 81 eine
weiter abgewandelte Ausführungsform näher erläutert, bei der
ein anderes Verfahren zur Anzeige der Markierungen verwendet
wird.
Bei der vorstehend beschriebenen Ausführungsform werden dann
für alle Teilbilder Markierungen angezeigt, wenn sich der
Grafikcursor 7203 im Arbeitsbildanzeigebereich 10b befindet
und wenn gleichzeitig die Markierungs-Anzeigekennung 110c
eingeschaltet ist. Es ist jedoch auch möglich, die Markierungen
stattdessen in Übereinstimmung mit dem jeweiligen Abstand
zwischen dem Grafikcursor 7203 und der Markierung anzuzeigen.
Zu diesem Zweck wird die in Fig. 80 gezeigte Bildaufbautabelle
8801 bereitgestellt. Die Bildaufbautabelle 8801 besitzt
eine Anzeigekennungsspalte dfi. Die Anzeige und die Löschung
einer Markierung wird in Übereinstimmung mit dem Zustand
(Ein/Aus) der in der Anzeigekennungsspalte dfi gespeicherten
Kennung durchgeführt.
Hierzu wird überprüft, ob der Abstand zwischen dem Grafikcursor
7203 und der Position, an der die Markierung anzuzeigen
ist, kleiner als ein vorgegebener Wert (rg) geworden ist.
Daher wird für alle diejenigen Teilbilder eine Markierung
angezeigt, die sich innerhalb eines kreisförmigen Bereichs
befinden, dessen Zentrum der in der Anzeigefläche bewegte
Grafikcursor bildet und dessen Radius rg beträgt.
Zu diesem Zweck wird überprüft, ob die nachfolgend aufgeführte
Ungleiche erfüllt ist:
(xi - xg)² + (yi - yg)² ≦ rg²
In der xg und yg die x- und y-Koordinaten des Grafikcursors
angegeben.
Der entsprechende Steuerungsablauf wird nachstehend unter
Bezugnahme auf das in Fig. 81 gezeigte Flußdiagramm näher
erläutert.
In einem Anfangsschritt S900 werden die Koordinaten mittels
der Maus 103 oder über die Tastatur 102 eingegeben. In einem
Folgeschritt S901 wird überprüft, ob irgendeine Änderung im
Zustand der im Schritt S900 eingegebenen Koordinaten oder im
Schaltzustand der Maustaste oder einer vorgegebenen Taste auf
der Tastatur 102 im Vergleich zu dem im vorhergehenden Eingabezyklus
eingegebenen Daten aufgetreten ist. Wenn keine Änderung
der Daten festgestellt werden konnte, kehrt der Ablauf
zum Schritt S900 zurück.
Wenn die Überprüfung jedoch ergeben hat, daß eine Änderung in
den Koordinaten oder im Zustand der Tasten aufgetreten ist,
verzweigt der Ablauf zu einem Folgeschritt S902, bei dem
überprüft wird, ob eine Änderung in den eingegebenen Koordinaten
aufgetreten ist. Wenn hierbei festgestellt wird, daß
keine Änderung stattgefunden hat, verzweigt der Ablauf zu
einem Schritt S906, bei dem ein vorgegebener Bearbeitungsvorgang
durchgeführt wird. Wenn hingegegen eine Änderung der Koordinaten
festgestellt wurde, verzweigt der Ablauf zu einem
Schritt S903, bei dem überprüft wird, ob die vorstehend
genannte Ungleichung erfüllt ist, und zwar unter Verwendung
der im Schritt S901 eingegebenen Koordinaten (xg, yg) für
jede der Koordinaten (xi, yi) in der entsprechenden Zeile i
der Bildaufbautabelle 8801, wobei mit den in der ersten Zeile
gespeicherten Koordinaten (x₁, y₁) begonnen wird.
Wenn die Ungleichung mit den Daten in der i-ten Zeile erfüllt
wird, schaltet die CPU die Kennung in der Spalte dfi der i-
ten Zeile ein, wodurch im Schritt S904 eine Markierung an den
Koordinaten (xi, yi) angezeigt wird. In einem Schritt S905
wird überprüft, ob die Ungleichung für alle Zeilen der Bildaufbautabelle
überprüft worden ist. Nach Abschluß dieser
Überprüfung verzweigt der Ablauf zum Schritt S906.
Gemäß vorstehender Beschreibung wird bei dieser Ausführungsform
eine Markierung oder ein ähnlicher Index nur dann angezeigt,
wenn die Bedienungsperson versucht hat, auf eines der
Teilbilder zu deuten. Als Folge davon kann die Bedienungsperson
das gewünschte Teilbild sehr leicht aussuchen. Die Markierungen
oder Indizes werden so lange nicht angezeigt, wie
sich der Ablauf nicht in der Betriebsart zur Auswahl eines
bestimmten Teilbilds befindet, so daß die Bedienungsperson
den Zustand der Anzeige auf der ganzen Anzeigefläche überprüfen
kann, ohne durch die Anwesenheit von Markierungen behindert
zu sein.
Die Auswahl des von der Bedienungsperson gewünschten Teilbilds
kann sehr leicht durchgeführt werden, da Zeigerbereiche
wie Markierungen vorhanden sind, deren Größe unabhängig von
der der Teilbilder ist.
Wenn die Markierungen eine übereinstimmende Form aufweisen,
werden die Markierungsanzeigedaten nicht im Speicher 110,
sondern in Form von Konstanten im Steuerungsablauf gespeichert,
so daß die Markierungen durch Kombination von Mustern
gebildet werden können. Die beschriebenen Steuerungsabläufe
können auch im Speicher 110 gespeichert werden, obgleich sie
im Ausführungsbeispiel in der CPU gespeichert sind.
Bei dem vorstehend beschriebenen Ausführungsbeispiel werden
die Markierungen oder Indizes der jeweiligen Teilbilder nur
dann angezeigt, wenn die Bedienungsperson versucht hat, auf
eines der Teilbilder zu deuten. Diese Markierungen oder Indizes
erleichtern das Aussuchen oder Andeuten des gewünschten
Teilbildes. Da die Markierungen oder Indizes darüber hinaus
nur dann angezeigt werden, wenn die Auswahl eines der Teilbilder
notwendig ist, kann die Bedienungsperson den Zustand
der Zeichnung über der gesamten Anzeigefläche begutachten,
ohne durch derartige Markierungen oder Indizes behindert zu
sein.
Claims (24)
1. Bildbearbeitungsgerät, mit:
- a) einer Anzeigeeinrichtung (1080) zur Anzeige eines Bildes,
- b) einer Speichereinrichtung (2020a), in der Teilbilder jeweils unterschiedlicher Form gespeichert sind,
- c) einer Wähleinrichtung (1070), mittels der jeweils eines der in der Speichereinrichtung gespeicherten Teilbilder auswählbar und an einer gewählten Position an der Anzeigeeinrichtung anzeigbar ist, sowie
- d) einer Positionserfassungseinrichtung (1070), mittels der eines von mehreren an der Anzeigeeinrichtung angezeigten Teilbildern selektierbar ist,
- e) wobei in der Speichereinrichtung ein erster Speicherbereich gebildet ist, in dem eine erste Liste (3010, 3010a) der gewählten Teilbilder mit zugehörigen Identifizierungsdaten (3020) und Koordinaten (3030) der gewählten Anzeigepositionen gespeichert ist,
- f) wobei in der Speichereinrichtung ein zweiter Speicherbereich gebildet ist, in dem für jedes Teilbild eine zweite Liste (1101, 1401) der diesem zugeordneten modifizierten Teilbilder gespeichert ist,
- g) wobei eine Menueerzeugungseinrichtung (1030, 1050) vorgesehen ist, die nach Selektion eines jeweiligen Teilbildes anhand der Identifizierungsdaten die diesem zugeordnete Liste der modifizierten Teilbilder in Form einer Menueliste angeordnet und die Anzeigeeinrichtung veranlaßt, die Menueliste als Einblendmenue dem selektierten Teilbild überlagert anzuzeigen,
- h) wobei mittels der Wähleinrichtung (1070) eines der in der Menueliste befindlichen Teilbilder auswählbar ist, und
- i) wobei eine Substitutionseinrichtung (2010) vorgesehen ist, die das mittels der Positionserfassungseinrichtung selektierte Teilbilder durch das mittels der Wähleinrichtung aus der Menueliste ausgewählte modifizierte Teilbild ersetzt.
2. Bildbearbeitungsgerät nach Anspruch 1, wobei die
Anzeigeeinrichtung (1080) alle Teilbilder mit Ausnahme des
gewählten Teilbilds in einem Halbton anzeigt.
3. Bildbearbeitungsgerät nach Anspruch 1 oder 2, wobei die
Anzeigeeinrichtung (1080) das mittels der Positionserfas
sungseinrichtung (1070) selektierte Bild in einem invertierten
Zustand anzeigt.
4. Bildbearbeitungsgerät nach Anspruch 1 oder 2, wobei die
Anzeigeeinrichtung (1080) das mittels der Positionserfas
sungseinrichtung (1070) selektierte Bild in einem blinkenden
Zustand anzeigt.
5. Bildbearbeitungsgerät nach einem der vorangehenden Ansprüche,
wobei die Wähleinrichtung durch die Positionserfassungs
einrichtung (1070) gebildet ist.
6. Bildbearbeitungsgerät nach einem der vorangehenden Ansprüche,
wobei eine Angabeeinrichtung vorhanden ist, die mittels
eines anzeigbaren Wählmenues, auf das mittels der Positions
erfassungseinrichtung (1070) gezeigt werden kann, überprüft,
ob das von der Anzeigeeinrichtung (1080) angezeigte Teilbild
dasjenige ist, auf das eine Bedienungsperson zugreifen will.
7. Bildbearbeitungsgerät nach einem der vorangehenden Ansprüche,
wobei eine Ausleseeinrichtung vorhanden ist, die, wenn
eines der an der Anzeigeeinrichtung (1080) angezeigten
Teilbilder mittels der Positionserfassungseinrichtung (1070)
selektiert wurde, Kandidaten-Teilbilder ausliest, in denen
die Koordinaten der mittels der Positionserfassungseinrichtung
(1070) angegebenen Position enthalten sind, wobei die
Anzeigeeinrichtung (1080) eines der Kandidaten-Teilbilder
derart anzeigt, daß dieses von anderen gewählten Teilbildern
unterscheidbar ist, wobei eine Informationseinrichtung anhand
einer mittels einer Eingabeeinrichtung eingegebenen Antwort
darüber informiert, ob das Kandidaten-Teilbild dasjenige ist,
das mittels der Positionserfassungseinrichtung (1070) gewählt
wurde, und wobei die Ausleseeinrichtung ein Auslesen zum
Finden des nächsten Kandidaten-Teilbilds startet, wenn über
die Eingabeeinrichtung eine Eingabe erfolgt ist, die besagt,
daß das Kandidaten-Teilbild nicht dasjenige ist, das mittels
der Positionserfassungseinrichtung (1070) ausgewählt wurde.
8. Bildbearbeitungsgerät nach einem der vorangehenden Ansprüche,
wobei die Positionserfassungseinrichtung (1070) einen
Cursor umfaßt, der entsprechend der mit einer
Koordinateneingabeeinrichtung eingegebenen Koordinaten auf
der Anzeigeeinrichtung (1080) bewegbar ist.
9. Bildbearbeitungsgerät nach einem der Ansprüche 7 oder 8,
wobei die Anzeigeeinrichtung (1080) die Kandidaten-Teilbilder
invertiert anzeigt.
10. Bildbearbeitungsgerät nach einem der Ansprüche 7 bis 9,
wobei die Informationseinrichtung auf der Anzeigeeinrichtung
(1080) ein Menue anzeigt, anhand dessen überprüfbar ist, ob
das ausgelesene Kandidaten-Teilbild korrekt ist.
11. Bildbearbeitungsgerät nach Anspruch 1, wobei eine zweite
Speichereinrichtung (2020b) zur Speicherung von Maskierungs
daten vorhanden ist, die, wenn eines der Teilbilder neu ange
zeigt wird, denjenigen Bereich maskieren, über dem das neu
angezeigte Teilbild bereits angezeigte Teilbilder überlappt,
eine Ausleseeinrichtung vorhanden ist, die, wenn eines der
Teilbilder an der Anzeigeeinrichtung (1080) mittels der
Positionserfassungseinrichtung (1070) ausgewählt ist,
dasjenige Teilbild findet, dessen Bereich die Koordinaten der
von der Positionserfassungseinrichtung (1070) angegebenen
Position enthalten, sowie eine Beurteilungseinrichtung
vorhanden ist, die entscheidet, ob die Koordinaten im
Maskierungsbereich derjenigen Maskierungsdaten liegen, die
dem von der Ausleseeinrichtung gefundenen Teilbild
entsprechen, wobei dann, wenn die Koordinaten von der
Beurteilungseinrichtung als in dem Maskierungsbereich der
Maskierungsdaten befindlich eingestuft werden, das diesen
Maskierungsdaten entsprechende Teilbild als dasjenige Teilbild
eingestuft wird, das mittels der Positionserfassungseinrichtung
(1070) ausgewählt wurde.
12. Bildbearbeitungsgerät nach Anspruch 11, wobei der Maskie
rungsbereich der Maskierungsdaten die Kontur des Teilbilds
und den Bereich innerhalb dieser Kontur umfaßt.
13. Bildbearbeitungsgerät nach Anspruch 7 bis 12, wobei die
Ausleseeinrichtung eine Vielzahl von auf der Anzeigeeinrichtung
(1080) angezeigten Teilbildern beginnend mit demjenigen
Teilbild ausliest, das als letztes aller an der Anzeigeein
richtung (1080) angezeigten Teilbilder angezeigt wurde.
14. Bildbearbeitungsgerät nach einem der Ansprüche 11 bis 13,
wobei die Beurteilungseinrichtung anhand des Zustands der
Teilbilddaten innerhalb der Maskierungsdaten entscheidet,
ausgedrückt durch auf die Maskierungsdaten bezogene Relativ
koordinaten.
15. Bildbearbeitungsgerät nach Anspruch 1, mit einer Markie
rungsmusterdaten-Speichereinrichtung (5302) zur Speicherung
von Daten zur Erzeugung von Markierungsmustern einer vorbe
stimmten Fläche zur Kennzeichnung der Teilbilder, eine Mar
kierungsanzeigeeinrichtung zur Anzeige der Markierungsmuster
in Relation zu den Teilbildern auf der Anzeigeeinrichtung
(1080), sowie einer Beurteilungseinrichtung zur Entscheidung
darüber, ob die angegebene Position innerhalb des Bereichs
der vorbestimmten Fläche liegt, wobei dann, wenn die Beurtei
lungseinrichtung die durch die Positionserfassungseinrichtung
angegebene Position als in dem Bereich der vorbestimmten Fläche
liegend eingestuft hat, dasjenige Teilbild, das dem Mar
kierungsmuster mit diesem Bereich zugeordnet ist, als ein zu
bearbeitendes Objekt eingestuft wird.
16. Bildbearbeitungsgerät nach Anspruch 15, wobei das Markie
rungsmuster über einen Linienzeiger mit dem diesem Markie
rungsmuster zugeordneten Teilbild verbunden ist.
17. Bildbearbeitungsgerät nach Anspruch 15 oder 16, wobei
dann, wenn eine Vielzahl von Teilbildern in überlappender
Weise angezeigt werden, das Markierungsmuster auf eine Fläche
deutet, die das diesem Markierungsmuster zugeordnete Teilbild
zeigt.
18. Bildbearbeitungsgerät nach Anspruch 1, mit einer Teil
bild-Angabeeinrichtung (6211 bis 6216) mit einer Gruppe von
auf der Anzeigeeinrichtung (1080) angeordneten Markierungen
oder mit einer Gruppe von außerhalb, jedoch in der Nähe der
Anzeigeeinrichtung (1080) angeordneten Tasten, zur Angabe eines
gewünschten Teilbilds, mit einer Verbindungseinrichtung,
die mittels Linien die Markierungen oder Tasten der Teilbild-
Angabeeinrichtung mit den Teilbildern derart verbindet, daß
eine vorbestimmte Beziehung zwischen jedem Teilbild und der
mit diesen verbundenen Markierungen oder Taste der Teilbild-
Angabeeinrichtung besteht, sowie mit einer Angabeeinrichtung
zur Auswahl einer der Markierungen oder Tasten der Teilbild-
Angabeeinrichtung, wobei dasjenige Teilbild, das der mittels
der Angabeeinrichtung angegebene Markierung oder Taste ent
spricht, als zu bearbeitendes Objekt eingestuft wird.
19. Bildbearbeitungsgerät nach Anspruch 18, wobei die Angabe
einrichtung eine Koordinateneingabeeinrichtung aufweist, der
ein auf der Anzeigeeinrichtung (1080) angezeigter Grafikcursor
zugeordnet ist.
20. Bildbearbeitungsgerät nach Anspruch 18, wobei die Angabe
einrichtung eine Taste aufweist, bei deren Betätigung ein An
gabesignal erzeugbar ist.
21. Bildbearbeitungsgerät nach Anspruch 1, mit einer zweiten
Anzeigeeinrichtung zum Anzeigen von Indizes für die jeweiligen
Teilbilder, einer Schalteinrichtung zum Umschalten des
Zustands der zweiten Anzeigeeinrichtung zwischen einer Be
triebsart, in der die zweite Anzeigeeinrichtung eingeschaltet
ist, und einer Betriebsart, in der die zweite Anzeigeeinrichtung
nicht eingeschaltet ist, sowie mit einer Angabeeinrichtung
zur Auswahl einer der Indizes, wobei dasjenige Teilbild,
das dem mittels der Angabeeinrichtung ausgewählten Index ent
spricht, als zu bearbeitendes Objekt eingestuft wird.
22. Bildbearbeitungsgerät nach Anspruch 21, wobei die Angabe
einrichtung einen auf der Anzeigeeinrichtung (1080) bewegbaren
Grafikcursor aufweist, und wobei die Schalteinrichtung in
Übereinstimmung mit auf der Anzeigeeinrichtung bezogenen
Koordinaten des Grafikcursors arbeitet, um den Zustand der
zweiten Anzeigeeinrichtung zwischen den zwei Betriebsarten
umzuschalten.
23. Bildbearbeitungsgerät nach Anspruch 21 oder 22, wobei die
zweite Anzeigeeinrichtung dann in den eingeschalteten Zustand
umgeschaltet wird, wenn der Abstand zwischen der auf die An
zeigeeinrichtung bezogenen Koordinatenposition des Grafikcursors
und dem Teilbild nicht größer als ein vorbestimmter Wert
ist.
24. Bildbearbeitungsgerät nach einem der Ansprüche 21 bis 23,
wobei die Angabeeinrichtung und die Schalteinrichtung mittels
Tasten betätigbar sind.
Applications Claiming Priority (9)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP20160786A JPS6358578A (ja) | 1986-08-29 | 1986-08-29 | 画像編集装置 |
JP61201609A JPS6358580A (ja) | 1986-08-29 | 1986-08-29 | 画像編集装置 |
JP20161086A JPS6358581A (ja) | 1986-08-29 | 1986-08-29 | 画像編集装置 |
JP61201608A JPS6358579A (ja) | 1986-08-29 | 1986-08-29 | 画像編集装置 |
JP21176886A JPS6368979A (ja) | 1986-09-10 | 1986-09-10 | 画像編集装置 |
JP61211767A JPS6368893A (ja) | 1986-09-10 | 1986-09-10 | 画像編集装置 |
JP26277486A JPS63118881A (ja) | 1986-11-06 | 1986-11-06 | 画像編集装置 |
JP26277586A JPS63118882A (ja) | 1986-11-06 | 1986-11-06 | 画像編集装置 |
JP26277686A JPS63118883A (ja) | 1986-11-06 | 1986-11-06 | 画像編集装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3729023A1 DE3729023A1 (de) | 1988-03-10 |
DE3729023C2 true DE3729023C2 (de) | 1995-03-16 |
Family
ID=27577599
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE3729023A Expired - Lifetime DE3729023C2 (de) | 1986-08-29 | 1987-08-31 | Bildbearbeitungsgerät |
Country Status (2)
Country | Link |
---|---|
US (1) | US6184860B1 (de) |
DE (1) | DE3729023C2 (de) |
Families Citing this family (37)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2662429B2 (ja) * | 1988-11-14 | 1997-10-15 | キヤノン株式会社 | 画像編集装置 |
DE9112779U1 (de) * | 1991-10-14 | 1991-12-05 | Siemens AG, 8000 München | Werkzeugmaschinensteuerung mit Bildschirmausgabe |
JP3008943B1 (ja) * | 1998-08-18 | 2000-02-14 | 富士ゼロックス株式会社 | 画像処理装置および画像処理方法 |
US6714205B1 (en) * | 1998-08-21 | 2004-03-30 | Canon Kabushiki Kaisha | Image data processing method and apparatus, and image processing system |
US6411283B1 (en) | 1999-05-20 | 2002-06-25 | Micron Technology, Inc. | Computer touch screen adapted to facilitate selection of features at edge of screen |
US6727892B1 (en) * | 1999-05-20 | 2004-04-27 | Micron Technology, Inc. | Method of facilitating the selection of features at edges of computer touch screens |
US6870545B1 (en) * | 1999-07-26 | 2005-03-22 | Microsoft Corporation | Mixed but indistinguishable raster and vector image data types |
AU767211B2 (en) * | 2000-07-28 | 2003-11-06 | Canon Kabushiki Kaisha | Rendering page descriptions |
AUPQ905800A0 (en) | 2000-07-28 | 2000-08-24 | Canon Kabushiki Kaisha | Rendering page descriptions |
JP2002084406A (ja) * | 2000-09-07 | 2002-03-22 | Sony Corp | 画像転送装置及び方法、ファイル転送装置及び方法、並びにプログラム格納媒体 |
JPWO2003005304A1 (ja) * | 2001-07-02 | 2004-10-28 | シャープ株式会社 | 図形選択方法、図形選択装置、図形選択プログラム、図形編集方法、図形編集装置、図形編集プログラム、および該プログラムを記録した記録媒体 |
US6903751B2 (en) * | 2002-03-22 | 2005-06-07 | Xerox Corporation | System and method for editing electronic images |
JP4136444B2 (ja) * | 2002-05-13 | 2008-08-20 | 株式会社リコー | タッチパネル付きディスプレイ装置 |
US7620904B1 (en) * | 2002-06-21 | 2009-11-17 | Autodesk, Inc. | On demand identifier and geometry piece association in computer aided design (CAD) environment |
JP3690391B2 (ja) * | 2003-01-23 | 2005-08-31 | セイコーエプソン株式会社 | 画像編集装置、画像のトリミング方法、及びプログラム |
JP4072071B2 (ja) * | 2003-02-13 | 2008-04-02 | 富士フイルム株式会社 | 顔画像補正方法および装置、並びに顔画像補正プログラム |
WO2004072867A1 (en) * | 2003-02-14 | 2004-08-26 | Access Co., Ltd. | Browser program for performing table-layout |
US7636096B2 (en) * | 2004-06-25 | 2009-12-22 | Autodesk, Inc. | Automatically ballooning an assembly drawing of a computer aided design |
JP4049136B2 (ja) * | 2004-08-10 | 2008-02-20 | ブラザー工業株式会社 | 画像処理装置及びプログラム |
US7900155B2 (en) * | 2004-08-16 | 2011-03-01 | Sap Ag | System and method for providing information about an operation's applicability to an item |
JP2007018198A (ja) * | 2005-07-06 | 2007-01-25 | Sony Corp | リンク情報付きインデックス情報生成装置、タグ情報付き画像データ生成装置、リンク情報付きインデックス情報生成方法、タグ情報付き画像データ生成方法及びプログラム |
US7986298B1 (en) * | 2005-12-19 | 2011-07-26 | Adobe Systems Incorporated | Identifying changes to an image file |
US7982747B1 (en) | 2005-12-19 | 2011-07-19 | Adobe Systems Incorporated | Displaying generated changes to an image file |
US7616203B1 (en) * | 2006-01-20 | 2009-11-10 | Adobe Systems Incorporated | Assigning attributes to regions across frames |
JP2007331321A (ja) * | 2006-06-19 | 2007-12-27 | Canon Inc | 画像処理装置およびその制御方法 |
US20080263095A1 (en) * | 2007-04-23 | 2008-10-23 | Porter Iii Gilbert Brackett | Method and system for navigating electronic documents using an electronic device |
JP4404116B2 (ja) * | 2007-08-14 | 2010-01-27 | セイコーエプソン株式会社 | 画像処理回路、表示装置及び印刷装置 |
KR101208027B1 (ko) * | 2007-09-11 | 2012-12-04 | 삼성전자주식회사 | 화상 형성 방법 및 장치 |
JP2010074470A (ja) * | 2008-09-18 | 2010-04-02 | Brother Ind Ltd | 画像形成装置 |
US8392853B2 (en) * | 2009-07-17 | 2013-03-05 | Wxanalyst, Ltd. | Transparent interface used to independently manipulate and interrogate N-dimensional focus objects in virtual and real visualization systems |
US9015580B2 (en) * | 2009-12-15 | 2015-04-21 | Shutterfly, Inc. | System and method for online and mobile memories and greeting service |
KR20150043109A (ko) * | 2013-10-14 | 2015-04-22 | 삼성전자주식회사 | 오브젝트 디스플레이를 제어하는 전자 장치 및 방법 |
JP6070641B2 (ja) * | 2014-06-18 | 2017-02-01 | コニカミノルタ株式会社 | ドライバープログラム生成装置、ドライバープログラム生成方法、ドライバープログラム生成プログラムおよびドライバープログラム |
USD822060S1 (en) | 2014-09-04 | 2018-07-03 | Rockwell Collins, Inc. | Avionics display with icon |
US9672747B2 (en) | 2015-06-15 | 2017-06-06 | WxOps, Inc. | Common operating environment for aircraft operations |
JP6580944B2 (ja) * | 2015-10-29 | 2019-09-25 | 理想科学工業株式会社 | 画像形成装置 |
KR102648102B1 (ko) * | 2019-01-18 | 2024-03-18 | 삼성전자주식회사 | 전자 장치와 외부 서버 간에 어플리케이션 프로그램에 관한 작업 환경을 제공하는 방법 및 장치 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0100097B1 (de) * | 1982-07-30 | 1991-01-30 | Honeywell Inc. | Rechnergesteuertes Abbildungssystem |
US4679038A (en) * | 1983-07-18 | 1987-07-07 | International Business Machines Corporation | Band buffer display system |
US4586035A (en) * | 1984-02-29 | 1986-04-29 | International Business Machines Corporation | Display terminal with a cursor responsive virtual distributed menu |
FR2569020B1 (fr) * | 1984-08-10 | 1986-12-05 | Radiotechnique Compelec | Procede pour creer et modifier une image synthetique |
JPS61109093A (ja) * | 1984-11-02 | 1986-05-27 | 日本電信電話株式会社 | 画像表示装置 |
US4686522A (en) * | 1985-02-19 | 1987-08-11 | International Business Machines Corporation | Method of editing graphic objects in an interactive draw graphic system using implicit editing actions |
US4698625A (en) * | 1985-05-30 | 1987-10-06 | International Business Machines Corp. | Graphic highlight adjacent a pointing cursor |
JPH0743773B2 (ja) * | 1986-02-27 | 1995-05-15 | キヤノン株式会社 | 画像処理装置 |
NL8600831A (nl) * | 1986-04-02 | 1987-11-02 | Oce Nederland Bv | Werkwijze voor het opwekken en bewerken van modellen van twee- of driedimensionale objecten in een computer en voor het weergeven van die modellen op een display. |
CA1272312A (en) * | 1987-03-30 | 1990-07-31 | Arthur Gary Ryman | Method and system for processing a two-dimensional image in a microprocessor |
US4821211A (en) * | 1987-11-19 | 1989-04-11 | International Business Machines Corp. | Method of navigating among program menus using a graphical menu tree |
-
1987
- 1987-08-31 DE DE3729023A patent/DE3729023C2/de not_active Expired - Lifetime
-
1994
- 1994-09-27 US US08/313,397 patent/US6184860B1/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US6184860B1 (en) | 2001-02-06 |
DE3729023A1 (de) | 1988-03-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3729023C2 (de) | Bildbearbeitungsgerät | |
DE69220583T2 (de) | Vorrichtung zum Anzeigen von Gebieten auf einem Sichtgerät | |
DE69432579T2 (de) | Verfahren und Vorrichtung zum Bearbeiten von Modell-Datenstrukturen eines Bildes, um ein für Menschen erkennbares Resultat zu erreichen | |
DE69523813T2 (de) | Vorrichtung und Verfahren zur Bildverarbeitung | |
DE69129474T2 (de) | Veränderung eines graphischen Anzeigebildes | |
DE3722444C2 (de) | Verfahren und Vorrichtung zum Erzeugen von Entwurfsmusterdaten | |
DE68925096T2 (de) | Vereinfachte parametrische CAD-Makrobefehlsfähigkeit mit veränderlicher geometrischer Eigenschaft | |
DE69030550T2 (de) | Verfahren und System zur Erzeugung von Plänen für einen Herstellungsprozess | |
DE69129342T2 (de) | Verfahren und Gerät zum Herausziehen von Bildranddaten | |
DE69817634T2 (de) | Vorrichtung und Verfahren zur Anzeige von Fenstern | |
DE69116569T2 (de) | Rechnervorrichtung und verfahren für bildnachschlagebuch | |
DE69414784T2 (de) | Vorrichtung und Verfahren zur Formmodellierung | |
DE69428647T2 (de) | Verfahren und Gerät zur Erzeugung eines zweiten gemischten Bildsignals im räumlichen Kontext eines ersten Bildsignals | |
DE69526545T2 (de) | Ein Verfahren und Gerät zur Darstellung von Datenbanksuchergebnissen | |
DE3335162C2 (de) | Vorrichtung und Verfahren für graphische Darstellungen mittels Computer | |
DE69231923T2 (de) | System mit Annäherungsmittel zur Erkennung von graphischen Elementen in einer Zeichnung | |
DE3121503C2 (de) | Dokumenten-Verarbeitungssystem | |
DE602004005216T2 (de) | Dokumentenscanner | |
DE3689858T2 (de) | Verfahren zur Manipulation von Unterobjekten in einem interaktiven Zeichnengraphiksystem. | |
DE10202693A1 (de) | Objektbasierte Anzeigeeinrichtung zur Abtastbereichsauswahl | |
DE19528596C2 (de) | Verfahren und Vorrichtung zur Kolorierunterstützung | |
DE4033465A1 (de) | Interaktives computer-gesteuertes displaysystem | |
DE69230392T2 (de) | Verfahren und Gerät zur Bildverarbeitung | |
DE69031446T2 (de) | Bildbehandlungsanordnung | |
DE3855225T2 (de) | Datenbanksystem für Bildkomposition |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8128 | New person/name/address of the agent |
Representative=s name: TIEDTKE, H., DIPL.-ING. BUEHLING, G., DIPL.-CHEM. |
|
D2 | Grant after examination | ||
8364 | No opposition during term of opposition |