-
Die vorliegende Erfindung betrifft
ein System zum Anzeigen von Fenstern eines Fenstersystems in einem
virtuellen Raum (z. B. einem dreidimensionalen Raum) und ein Verfahren
dafür.
-
Da sich die Prozeßleistung von Informationsverarbeitungseinheiten
verbessert hat, sind verschiedene Fenstersysteme verwendet worden.
Da im besonderen die Verarbeitungsleistung von Personalcomputern
besser geworden ist, sind Betriebsumgebungen auf Graphikbasis als
Fenstersysteme für
Personalcomputer, die durch Endbenutzer verwendet werden, vorgesehen
worden. Daher wird eine benutzerfreundliche Schnittstelle für Anfänger vorgesehen,
die mit Betriebssystemen nicht vertraut sind.
-
1A und 1B sind schematische Diagramme,
die Beispiele für
Fenster zeigen, die auf Bildschirmen angezeigt werden. Bei einem
herkömmlichen
Fenstersystem werden Fenster auf einem Bildschirm 110 einer Anzeigeeinheit
zweidimensional angezeigt. In 1A sind
auf dem Bildschirm 110 die Fenster 111, 112 und 113 geöffnet. Die
Fenster 111, 112 und 113 überlappen
jedoch einander. Das Fenster 111, das der Benutzer gerade verwendet,
wird als oberstes Fenster auf dem Bildschirm 110 angezeigt. Die
anderen Fenster 112 und 113 sind hinter dem Fenster 111 angeordnet.
Wenn der Benutzer das Fenster 112 oder 113 verwenden möchte, muß er es
anklikken oder eine vorbestimmte Operation ausführen, wodurch das Fenster 112
oder 113 als oberstes Fenster auf dem Bildschirm 110 angezeigt wird.
-
Wenn der Benutzer ein Ikon oder dergleichen
aus dem Fenster 111 in ein anderes Fenster bewegen möchte, müßte er das
Fenster 112 oder 113 so bewegen, daß es sich mit dem Fenster 111
nicht überlappt. Danach
bewirkt er, daß das
Ikon oder dergleichen angezeigt wird, und bewegt es zwischen den
Fenstern.
-
Wenn Fenster auf dem Bildschirm 110
zweidimensional angezeigt werden, tendieren sie daher dazu, einander
zu überlappen.
Um ein Fenster anzuzeigen, daß hinter
einem anderen Fenster versteckt ist, müßte das versteckte Fenster
bewegt werden. Im besonderen ist es dann, wenn das oberste Fenster
111 groß angezeigt
wird, unmöglich,
alle Ikons in den Fenstern 112 und 113 gleichzeitig anzuzeigen,
selbst wenn die Fenster 112 und 113 bewegt werden. So sollten in
einem Fensterbetriebssystem mit einer mehraufgabenfähigen Umgebung
nichtbenötigte
Fenster, die zur Zeit nicht verwendet werden, auf ein Ikon verkleinert
werden, damit das benötigte
Fenster in voller Bildschirmgröße angezeigt
werden kann. Daher sollten die Fenster eines nach dem anderen bearbeitet
werden.
-
Andererseits ist ein System vorgeschlagen
worden, das nichtbenötigte
Fenster als geneigte Fenster anzeigt. Dieses System verhindert,
daß Fenster
einander überlappen,
so daß viele
Fenster gleichzeitig angezeigt werden.
-
1B zeigt
ein Beispiel für
einen Anzeigeschirm von solch einem System.
-
Unter Bezugnahme auf 1B werden drei Fenster 114, 115 und 116
auf dem Bildschirm 110 angezeigt. Das Fenster 114 wird auf dem Bildschirm
110 auf dieselbe Weise wie das in 1A gezeigte
Fenster 111 angezeigt. Die Fenster 115 und 116 sind jedoch so geneigt,
daß sie
einander nicht überlappen.
Somit werden diese Fenster 115 und 116 so angezeigt, als ob sie
in einem dreidimensionalen Raum angeordnet wären. Zusätzlich kann der Überlappungsabschnitt
der Fenster minimiert werden. Damit können Ikons und so weiter, die
auf individuellen Fenstern angezeigt werden, gleichzeitig betätigt werden.
-
Neben Fensterdefinitionsdaten, mit
denen das Fenster 114 angezeigt wird, hat dieses System Fensterdefinitionsda ten,
mit denen die geneigten Fenster 115 und 116 angezeigt werden. Wenn
es erforderlich ist, werden die Fensterdefinitionsdaten verwendet,
mit denen die geneigten Fenster angezeigt werden.
-
Dieses System ist als japanische
offengelegte Patentveröffentlichung
Nr. 6-186948 offenbart worden.
-
In dem Fenstersystem, wie es in 1A gezeigt ist, ist es schwierig,
wenn viele Fenster einander überlappen
oder ein großes
Fenster über
einem anderen Fenster angezeigt wird, eine Datei in dem versteckten
Fenster zu selektieren. Zusätzlich
ist es schwierig, den Inhalt des versteckten Fensters zu betrachten.
-
Andererseits gibt es in dem in 1B gezeigten Fenstersystem,
obwohl Fenster scheinbar dreidimensional angezeigt werden, nur geneigte
Fenster. Wenn geneigte Fenster einander überlappen, sind daher dieselben
Nachteile wie bei dem in 1A gezeigten
System zu verzeichnen.
-
US-A-5 754 809, die am 12.12.1995
eingereicht und am 19.5.1998 veröffentlicht
wurde, offenbart eine Fensteranzeigevorrichtung, ein Fensteranzeigeverfahren,
ein Speichermedium und einen Controller gemäß der Präambel von jedem unabhängigen Anspruch.
Dieses Dokument offenbart ein ähnliches
System wie jenes, das oben unter Bezugnahme auf 1B beschrieben wurde, außer daß ein Brennpunkt
für eine
perspektivische Anzeige der geneigten Fenster durch einen Benutzer
festgelegt werden kann.
-
Eine Ausführungsform der vorliegenden
Erfindung kann ein dreidimensionales Fensteranzeigesystem vorsehen,
das es dem Benutzer gestattet, einen Überlappungsabschnitt von Fenstern
von einem anderen Sichtpunkt zu betrachten.
-
Ein erster Aspekt der vorliegenden
Erfindung ist eine Fensteranzeigevorrichtung zum Anzeigen einer Vielzahl
von Fenstern eines Betriebssystems an einem Anzeigemittel und zum
Anzeigen einer Schaltfläche
auf den Fenstern, wobei sich wenigstens ein Teil der Fenster überlappt,
mit: einem Fensteranordnungsmittel zum Anordnen der Fenster in einem
virtuellen Raum; und einem Bilderzeugungsmittel zum Erzeugen von
Bildern der durch das Fensteranordnungsmittel angeordneten Fenster
und eines Bildes der Schaltfläche
unter Betrachtung der Fenster von einem Sichtpunkt, der durch einen
Benutzer frei bestimmt wird; dadurch gekennzeichnet, daß: jedes
Fenster in einer jeweiligen Tiefe in dem virtuellen Raum durch das
Fensteranordnungsmittel angeordnet wird und daß die durch das Bilderzeugungsmittel
erzeugten Bilder an dem Anzeigemittel mit einer Ansicht der Fenster
mit einer Neigung, wodurch Überlappungen
zwischen den Fenstern reduziert werden, gemäß dem bestimmten Sichtpunkt
angezeigt werden.
-
Gemäß einer Ausführungsform
der vorliegenden Erfindung kann eine Vielzahl von Fenstern mit einer Schaltfläche angezeigt
werden. Wenn ein Überlappungsabschnitt
der Fenster einen Abschnitt eines besonderen Fensters verdeckt,
kann der Benutzer das Fenster von einem verschiedenen Sichtpunkt
betrachten und eine Schaltfläche
in dem Fenster betätigen.
-
Ein zweiter Aspekt der vorliegenden
Erfindung ist ein Fensteranzeigeverfahren zum Anzeigen einer Vielzahl
von Fenstern eines Betriebssystems an einem Anzeigemittel und zum
Anzeigen einer Schaltfläche
auf den Fenstern, wobei sich wenigstens ein Teil der Fenster überlappt,
mit den folgenden Schritten: Anordnen der Fenster in einem virtuellen
Raum; Erzeugen von Bildern der bei dem Fensteranordnungsschritt
angeordneten Fenster unter Betrachtung der Bilder von einem frei
bestimmten Sichtpunkt und eines Bildes der Schaltfläche; und
Anzeigen der bei dem Bilderzeugungsschritt erzeugten Bilder an dem
Anzeigemittel; dadurch gekennzeichnet, daß: jedes Fenster in einer jeweiligen
Tiefe in dem virtuel len Raum bei dem Anordnungsschritt angeordnet
wird; und daß der
Anzeigeschritt die Bilder mit einer Ansicht der Fenster mit einer
Neigung, wodurch Überlappungen
zwischen den Fenstern reduziert werden, gemäß dem bestimmten Sichtpunkt
anzeigt. Gemäß dem Verfahren
der vorliegenden Erfindung kann eine Vielzahl von Fenstern mit einer
Schaltfläche
angezeigt werden. Wenn ein Überlappungsabschnitt
der Fenster einen Abschnitt eines besonderen Fensters verdeckt, kann
der Benutzer das Fenster von einem verschiedenen Sichtpunkt betrachten
und eine Schaltfläche
auf dem Fenster betätigen.
-
Ein dritter Aspekt der vorliegenden
Erfindung ist ein Speichermedium, von dem ein Computer, der eine Vielzahl
von Fenstern eines Betriebssystems an einem Anzeigemittel anzeigt
und eine Schaltfläche
auf dem Fenster anzeigt, Daten liest, die bewirken, daß der Computer
die folgenden Funktionen ausführt:
Anordnen des an dem Anzeigemittel angezeigten Fensters in einem
virtuellen Raum; Erzeugen eines Bildes des durch die Fensteranordnungsfunktion
angeordneten Fensters unter Betrachtung des Bildes von einem frei
bestimmten Sichtpunkt und eines Bildes der Schaltfläche; und
Anzeigen der durch die Bilderzeugungsfunktion erzeugten Bilder an
dem Anzeigemittel; dadurch gekennzeichnet, daß: jedes Fenster in einer jeweiligen
Tiefe in dem virtuellen Raum angeordnet wird und durch den Anzeigeschritt
die Bilder mit einer Ansicht der Fenster mit einer Neigung, wodurch Überlappungen
zwischen den Fenstern reduziert werden, gemäß dem bestimmten Sichtpunkt
angezeigt werden.
-
Gemäß dem Computer, der Daten liest,
wodurch der Computer solche Funktionen ausführt, kann eine Vielzahl von
Fenstern mit einer Schaltfläche
angezeigt werden. Wenn ein Überlappungsabschnitt
der Fenster einen Abschnitt eines besonderen Fensters verdeckt,
kann der Benutzer das Fenster von einem verschiedenen Sichtpunkt
betrachten und eine Schaltfläche
auf dem Fenster betätigen.
-
Ein vierter Aspekt der vorliegenden
Erfindung ist ein Controller zum Ermöglichen einer Anzeige einer Vielzahl
von Fenstern eines Betriebssystems an einem Anzeigemittel und zum
Steuern einer Anzeige einer Schaltfläche auf dem Fenster, wobei
sich wenigstens ein Teil der Fenster überlappt, mit: einem Fensteranordnungsmittel
zum Anordnen der Fenster in einem virtuellen Raums einem Bilderzeugungsmittel
zum Erzeugen von Bildern der durch das Fensteranordnungsmittel angeordneten
Fenster und eines Bildes der Schaltfläche unter Betrachtung der Fenster
von einem Sichtpunkt, der durch einen Benutzer frei bestimmt wird;
und einem Anzeigesteuermittel zum Anzeigen des durch das Bilderzeugungsmittel
erzeugten Bildes an dem Anzeigemittel; dadurch gekennzeichnet, daß: jedes
Fenster in einer jeweiligen Tiefe in dem virtuellen Raum durch das Fensteranordnungsmittel
angeordnet wird; und daß das
Anzeigesteuermittel das Bild mit einer Ansicht von Fenstern mit
einer Neigung, wodurch Überlappungen
zwischen den Fenstern reduziert werden, gemäß dem bestimmten Sichtpunkt
anzeigt.
-
Gemäß der vorliegenden Erfindung
werden Fenster und andere Objekte, die herkömmlicherweise auf einer Ebene
definiert sind, in einem virtuellen Raum (einem n-dimensionalen
Raum) angeordnet und auf einer Ebene projiziert. So können Fenster
zum Beispiel dreidimensional angezeigt werden.
-
Wenn im besonderen die Position eines
Sichtpunktes bestimmt wird, von dem aus Fenster und andere Objekte
in einem virtuellen dreidimensionalen Raum projiziert sind, können die
Fenster und die anderen Objekte so angezeigt werden, als ob sie
der Benutzer aus einem verschiedenen Sichtwinkel betrachtet.
-
Daher kann der Benutzer ein besonderes
Fenster, das hinter anderen Fenstern versteckt ist, durch Verändern seines
Sichtpunktes betrachten. Obwohl die Fenster und anderen Objektes
dreidimensional angezeigt werden, werden Verfahren für Prozesse,
die Operationen entsprechen, nicht verändert. Daher können Operationen,
die in dem herkömmlichen
Fenstersystem ausgeführt
werden, auf dreidimensionalen Fenstern ausgeführt werden.
-
Als Beispiel wird Bezug auf die beiliegenden
Zeichnungen genommen, in denen:-
-
1A und 1B schematische Diagramme
sind, die Beispiele für
Fenster zeigen, die auf Bildschirmen von herkömmlichen Fenstersystemen angezeigt
werden;
-
2 ein
schematisches Diagramm ist, das die Struktur von Hardware eines
Systems zeigt, das die vorliegende Erfindung verkörpert;
-
3 ein
schematisches Diagramm ist, welches das Konzept eines Systems zeigt,
das die vorliegende Erfindung verkörpert;
-
4 ein
schematisches Diagramm ist, das ein Beispiel für eine Anordnung von Fenstern
in einem virtuellen dreidimensionalen Raum zeigt;
-
5 ein
schematisches Diagramm ist, das ein Beispiel für einen Bildschirm zeigt, der
Fenster dreidimensional anzeigt, falls der Benutzer einen Abschnitt,
der hinter Fenstern versteckt ist, durch Verändern seines Sichtpunktes betrachten
kann;
-
6 ein
Flußdiagramm
ist, das einen Prozeß zum
Anordnen eines angeklickten Fensters als oberstes Fenster zeigt;
-
7A bis 7C schematische Diagramme
sind, die Daten zeigen, die entsprechend dem in 6 gezeigten Prozeß verändert wurden;
-
8A und 8B schematische Diagramme
sind, welche die Definition und Datenstruktur eines Fensters im
Körperkoordinatensystem
zeigen;
-
9 ein
schematisches Diagramm ist, das ein Beispiel für eine Anordnung von Fenstern
im Weltkoordinatensystem zeigt;
-
10A und 10B schematische Diagramme
zum Erläutern
eines Verfahrens zum Erhalten von projizierten Bildern von Fenstern
auf einem Bildschirm sind, falls der Benutzer die Fenster von einem
besonderen Sichtpunkt betrachtet;
-
11A und 11B schematische Diagramme
zum Erläutern
eines realen Beispiels des Verfahrens sind, das unter Bezugnahme
auf 8A bis 10B beschrieben wurde; und
-
12 ein
Flußdiagramm
ist, das einen Prozeß zum
dreidimensionalen Anzeigen von Fenstern zeigt, der unter Bezugnahme
auf 8A bis 10B beschrieben wurde.
-
2 ist
ein schematisches Diagramm, das die Struktur von Hardware eines
Systems zeigt, das die vorliegende Erfindung verkörpert. Es
sei erwähnt,
daß das
System gemäß der vorliegenden
Erfindung nicht auf die in 2 gezeigte
Struktur begrenzt ist, solange das System eine Informationsterminaleinheit
(zum Beispiel ein Personalcomputer) ist, die Hardware hat, auf der
ein Fenstersystem installiert werden kann.
-
Was die Struktur der Hardware betrifft,
hat das System eine CPU 10, die verschiedene Berechnungen ausführt. Ein
Bus 18 ist mit der CPU 10 verbunden. Zusätzlich sind eine Eingabe-/Ausgabeeinheit
11, ein ROM 12, ein RAM 13, eine Spei chereinheit 14, ein Kommunikationsport
16 und eine Speichermedienleseeinheit 15 mit dem Bus 18 verbunden.
-
Die Eingabe-/Ausgabeeinheit 11 umfaßt zum Beispiel
eine Tastatur und eine Anzeigeeinheit. Um das Fenstersystem zu verwenden,
enthält
die Eingabe-/Ausgabeeinheit 11 im besonderen normalerweise eine Maus.
-
Der ROM 12 speichert ein Basiseingabe-/-ausgabesystem
wie beispielsweise das BIOS. Wenn die Operation des in 2 gezeigten Systems gestartet
wird, liest die CPU 10 das BIOS von dem ROM 12 und führt es aus.
Somit kann die CPU 10 Informationen von der Eingabe-/Ausgabeeinheit
11 aufnehmen und an sie ausgeben. Das BIOS bewirkt, daß Befehle
an die CPU 10 gesendet werden und berechnete Resultate von der CPU
10 mit der Eingabe-/Ausgabeeinheit 11 als Benutzerschnittstelle
ausgetauscht werden. Falls das BIOS zerstört wird, kann der Benutzer
die Vorrichtung normalerweise nicht verwenden. Um ein Zerstören und Überschreiben
des BIOS zu verhindern, wird es in dem ROM 12 gespeichert.
-
Verschiedene Anwendungsprogramme,
wie z. B. das Fenstersystem, werden in den RAM 13 gelesen. Wenn
die CPU 10 die Anwendungsprogramme ausführt, kann sie der Benutzer
verwenden. Wenn die Anwendungsprogramme nicht verwendet werden,
sind sie in der Speichereinheit 14 oder dem Speichermedium 17 gespeichert.
Wenn es erforderlich ist, werden die Anwendungsprogramme in den
RAM 13 gelesen und durch die CPU 10 ausgeführt.
-
Die Speichereinheit 14 umfaßt zum Beispiel
ein Festplattenlaufwerk und eine Festplatte. Die Speichereinheit
14 ist normalerweise in der Vorrichtung angeordnet. Die Speichereinheit
14 speichert das Betriebssystem und verschiedene Anwendungsprogramme.
Wenn das Betriebssystem und verschiedene Anwendungsprogramme ausgeführt werden,
werden sie, wie oben beschrieben, in den RAM 13 gelesen und durch
die CPU 10 ausgeführt.
-
Die Speichermedienleseeinheit 15
ist eine Einheit, die Daten aus dem Speichermedium 17 liest, das entfernbar
und tragbar ist. Die Speichermedienleseeinheit 15 ist zum Beispiel
ein Diskettenlaufwerk oder ein CD-ROM-Laufwerk. Das Speichermedium
17 ist zum Beispiel eine Diskette oder eine CD-ROM. Was die Speichereinheit
14 betrifft, speichert das Speichermedium 17 ein Betriebssystem
und verschiedene Anwendungsprogramme. Anders als die Speichereinheit
14 kann das Speichermedium 17 aber aus der Speichermedienleseeinheit
15 entfernt werden, und es ist tragbar. Ein Betriebssystem und ein
Anwendungsprogramm können mit
einem Speichermedium 17 übergeben
(verkauft) werden. Somit kann das System gemäß der vorliegenden Erfindung
auf einem Speichermedium 17 gespeichert werden und einem Dritten
zugeführt
werden.
-
Der Kommunikationsport 16 verbindet
verschiedene periphere Einheiten, um die Funktionen der Vorrichtung
zu erweitern. Zum Beispiel können
ein Drucker, ein Scanner und/oder eine ähnliche Einheit mit dem Kommunikationsport
16 verbunden werden. Ein Dokument, das durch ein Anwendungsprogramm
erstellt wird, kann durch den Drucker gedruckt werden. Der Scanner
konvertiert ein Bild und/oder einen Text, der von einem bedruckten
Gegenstand gelesen wird, in digitale Daten als elektronisches Dokument.
Das digitale Dokument kann durch ein Wortverarbeitungsprogramm editiert
werden. Ein Modem kann mit dem Kommunikationsport 16 verbunden werden,
so daß der
Benutzer ein Netz wie etwa das Internet verwenden kann. In diesem
Fall können
verschiedene Anwendungsprogramme von einem Netz wie z. B. dem Internet
heruntergeladen werden. Die Anwendungsprogramme können in
der Speichereinheit 14 gespeichert werden und dann ausgeführt werden.
Somit kann das System gemäß der vorliegenden
Erfindung über
ein Netz individuellen Benutzern zugeführt werden.
-
3 ist
ein schematisches Diagramm, welches das Konzept eines Systems zeigt,
das die vorliegende Erfindung verkörpert.
-
Ein Fenstersystem (im besonderen
ein Fensterbetriebssystem) umfaßt
verschiedene Objekte. Fenster, die auf dem Bildschirm angezeigt
werden, sind als Objekte gebildet. Ikons und Schaltflächen sind
auch als Objekte gebildet und werden auf dem Bildschirm angezeigt.
Muster und so weiter von solchen Objekten sind auf einer zweidimensionalen
Ebene definiert, die als Körperkoordinatensystem
bezeichnet wird. Jedes Objekt enthält einen Anzeigebefehl zum
Anzeigen des Objektes auf dem Bildschirm. Mit dem Anzeigebefehl
wird ein Muster, das in dem Körperkoordinatensystem
definiert ist, in einem Anzeigekoordinatensystem des Bildschirms
angezeigt.
-
Ein Muster, das in dem Körperkoordinatensystem
definiert ist, wird als Block behandelt. In dem Körperkoordinatensystem
ist zum Beispiel das Schwerezentrum eines Musters als Ursprung definiert.
Jede Position auf dem Muster in dem Körperkoordinatensystem ist mit
relativen Koordinaten bezüglich
des Schwerezentrums definiert. Wenn die Koordinaten des Schwerezentrums
bestimmt werden, werden die Koordinaten von jedem Punkt des Musters
automatisch konvertiert und wird das Muster an einer vorbestimmten
Position auf dem Bildschirm angezeigt.
-
Um Fenster, Ikons auf ihnen usw.
beispielsweise dreidimensional anzuzeigen, werden in einer bevorzugten
Ausführungsform
vor deren Anzeige auf dem Bildschirm der Anzeigeeinheit Muster derselben,
die in dem Körperkoordinatensystem
definiert sind, durch ein vorbestimmtes Verfahren in dem dreidimensionalen Weltkoordinatensystem
angeordnet. Indem ein Sichtpunkt bestimmt wird, werden die Koordinaten
der Muster in solch einer Weise geometrisch konvertiert, daß die Muster
an dem Sichtpunkt auf eine in dem Weltkoordinatensystem definierte
Bildschirmebene projiziert werden. Somit werden die Fenster und
anderen Objekte, die in dem Weltkoordinatensystem angeordnet sind,
dreidimensional angezeigt. Wenn der Benutzer den Sichtpunkt verändert, kann
er demzufolge einen Abschnitt betrachten, der hinter einem anderen
Fenster versteckt ist.
-
Um dies zu erreichen, ist das Fenstersystem
aus einem Fenstersystemhauptkörper
und einem Anzeigeabschnitt gebildet. Der Fenstersystemhauptkörper hat
Definitionsdaten für
verschiedene Muster und Definitionsdaten für Prozesse, die individuellen
Schaltflächen
entsprechen. Der Rnzeigeabschnitt hat Anzeigebefehle zum Anzeigen
der Muster auf dem Bildschirm. Der Anzeigeabschnitt konvertiert
Muster von Fenstern usw. in die Koordinaten auf der Anzeigeeinheit,
um sie auf dem Bildschirm anzuzeigen.
-
In einer bevorzugten Ausführungsform
hat der Anzeigeabschnitt eine dreidimensionale Anzeigeeinheit, die
zweidimensionale Koordinaten in dreidimensionale Koordinaten konvertiert,
um Fenster usw. dreidimensional anzuzeigen.
-
Da Fenster dreidimensional angezeigt
werden, wie oben beschrieben, indem Koordinatenwerte, die dem Anzeigeabschnitt
des Fenstersystems zugeführt
werden, geometrisch konvertiert werden, werden Verfahren usw. von
Objekten, die in dem Fenstersystemhauptkörper definiert sind, nicht
verändert.
Selbst wenn Fenster und Ikons dreidimensional angezeigt werden,
können
die Ikons somit auf dieselbe Weise wie jene des herkömmlichen
Fenstersystems bearbeitet werden.
-
4 zeigt
ein Beispiel für
eine Anordnung von Fenstern in einem virtuellen dreidimensionalen
Raum.
-
Fenster 30, 31 und 32 überlappen
einander, wie in 4 gezeigt.
Teile der hinteren Fenster sind hinter vorderen Fenstern versteckt.
Dabei sind Muster der Fenster 30, 31 und 32 in dem zweidimensionalen
Körperkoordinatensystem
definiert. Durch das Anwenden der vorliegenden Erfindung werden
die Muster in dem Körperkoordinatensystem
nicht direkt auf dem Bildschirm angezeigt, sondern in einem virtuellen
Raum, in diesem Fall in einem 3-D-Koordinatensystem, temporär neu definiert.
Dabei werden individuelle Fenster an jeweiligen Positionen mit einem
vorbestimmten Abstand zwischen jedem von ihnen definiert.
-
Mit anderen Worten, Fenster 30 und
31 sind an jeweiligen Positionen definiert, die durch eine Distanz d
in einem virtuellen dreidimensionalen Raum getrennt sind. Ähnlich sind
Fenster 31 und 32 an jeweiligen Positionen definiert, die durch
die Distanz d getrennt sind. Konkret sind die Muster der Fenster
30, 31 und 32 auf jeweiligen xy-Ebenen definiert, die in der Richtung
der z-Achse des dreidimensionalen Koordinatensystems durch die Distanz
d getrennt sind.
-
Wenn die Fenster 30, 31 und 32 mit
der Distanz d getrennt voneinander angeordnet werden, kann der Benutzer,
indem die Position des Sichtpunktes der Fenster 30, 31 und 32 verändert wird,
einen Teil des Fensters 31, der hinter dem obersten Fenster 30 versteckt
ist, oder einen Teil des Fensters 32, der hinter dem Fenster 31
versteckt ist, betrachten.
-
Der Benutzer kann die Position des
Sichtpunktes frei festlegen. Zum Beispiel wird eine Angabe, welche
die Position des Sichtpunktes darstellt, auf dem Bildschirm der
Anzeigeeinheit angezeigt. Durch eine geeignete Operation kann der
Benutzer die Position des Sichtpunktes verändern. Alternativ wird, wenn
der Benutzer den Mauskursor in einer vorbestimmten Richtung zieht,
die Position des Sichtpunktes in der Ziehrichtung oder in der zu
ihr entgegengesetzten Richtung bewegt. So können die Fenster gemäß der Sichtpunkt position,
die der Benutzer festgelegt hat, angezeigt werden. Dabei kann die
Position des Sichtpunktes in verschiedenen Richtungen (wie etwa
in die linken, rechten, aufwärtigen,
abwärtigen
und diagonalen Richtungen) bewegt werden.
-
Ähnlich
sind Ikons, die auf Fenstern angezeigt werden, in einem virtuellen
dreidimensionalen Raum definiert. Dabei sind die Ikons an denselben
Positionen auf der z-Achse wie jenen der Fenster definiert. Mit anderen
Worten, dreidimensionale Koordinaten von Ikons, die auf dem Fenster
30 angezeigt werden, sind so definiert, daß die Ikons dieselbe z-Koordinate wie das
Fenster 30 haben. Die z-Koordinate der Ikons, die auf dem Fenster
31 angezeigt werden, sind an einer Position definiert, die durch
die Distanz d längs
der z-Achse von dem Fenster 30 getrennt ist. Ähnlich sind die Ikons, die
auf dem Fenster 32 angezeigt werden, an Positionen definiert, die
durch die Distanz d längs
der z-Achse getrennt sind.
-
Wenn solche Muster wie Fenster und
Ikons, die in dem Körperkoordinatensystem
definiert sind, für
ein virtuelles dreidimensionales Koordinatensystem (Weltkoordinatensystem)
temporär
neu definiert werden, können
sie als dreidimensionale Fenster angezeigt werden.
-
5 zeigt
ein Beispiel für
einen Bildschirm, der Fenster, von denen der Benutzer einen Abschnitt
betrachten kann, der hinter oberen Fenstern versteckt ist, indem
die Position des Sichtpunktes verändert wird, dreidimensional
anzeigt.
-
In 5 ist
ein Fenster 30 auf der obersten Ebene angeordnet (die dem Sichtpunkt
am nächsten
ist). Fenster 31 und 32 sind auf Ebenen angeordnet, die weiter als
das Fenster 30 entfernt sind. Der Sichtpunkt der Fenster 30, 31
und 32 liegt mehr an einer linken diagonalen Position derselben
als an deren vorderer Position.
-
Ein Werkzeug-Ikon-Abschnitt 41 wird
an einem unteren Abschnitt eines Bildschirms 40 angezeigt. Der Werkzeug-Ikon-Abschnitt 41 hat
Schaltflächen
zum Steuern von Fenstern usw. Obwohl der Werkzeug-Ikon-Abschnitt
41 das Fenstersystem bildet, ist es nicht erforderlich, den Werkzeug-Ikon-Abschnitt
41 dreidimensional anzuzeigen, da der Werkzeug-Ikon-Abschnitt 41 andere
Objekte nicht überlappt.
Daher wird der Werkzeug-Ikon-Abschnitt 41 normal angezeigt und in
dem virtuellen dreidimensionalen Raum (Weltkoordinatensystem) nicht
neu definiert.
-
Da andererseits die Fenster 30, 31
und 32 auf dem Bildschirm 40 in Größen geöffnet werden, die der Benutzer
leicht handhaben kann, tendieren sie dazu, einander zu überlappen.
Zusätzlich
sollte der Benutzer Ikons betätigen
können,
die auf den Fenstern 30, 31 und 32 angezeigt werden. Daher ist es
hilfreich, den Überlappungsabschnitt
der Fenster 30, 31 und 32 zu verringern und alle Daten auf den Fenstern
30, 31 und 32 gleichzeitig anzuzeigen. Demzufolge werden die Fenster
30, 31 und 32 bei einem System, das die vorliegende Erfindung verkörpert, dreidimensional
angezeigt.
-
Durch die vorliegende Erfindung kann
die Position des Sichtpunktes der Fenster 30, 31 und 32 frei festgelegt
werden. Somit können
die Fenster 30, 31 und 32 von einer rechten diagonalen Position
des Bildschirms, einer oberen Position desselben oder einer unteren
Position desselben betrachtet werden. Da die Fenster jedoch auf
der Ebene des Bildschirms bewegt werden können, reicht es aus, nur die
linken und rechten Richtungen als erforderliche Richtungen des Sichtpunktes
zu bestimmen.
-
Um Fenster und Ikons auf denselben
anzuzeigen, die der Benutzer in einer diagonalen Richtung betrachtet,
ist es erforderlich, Bitmaps der individuellen Muster zu modifizieren.
Auf der Basis der Position des Schwerezentrums von jedem Muster,
das mit einem Bitmap entwickelt wird, sollte somit die relative
Position des Musters für
jedes Bit berechnet und in das Weltkoordinatensystem konvertiert
werden.
-
6 ist
ein Flußdiagramm,
das einen Prozeß zum
Bewegen eines angeklickten Fensters auf dem Bildschirm nach vorn
als oberstes Fenster zeigt.
-
Wenn der Benutzer ein Fenster anklickt,
bestimmt das System, ob das angeklickte Fenster das oberste Fenster
ist oder nicht (bei Schritt S1). Wenn das Bestimmungsresultat bei
Schritt S1 Ja lautet, geht der Ablauf zu Schritt S4 über. Bei
Schritt S4 zeichnet das System das Fenster neu und vollendet es
den Prozeß.
-
Wenn das Bestimmungsresultat bei
Schritt S1 Nein lautet, ersetzt das System Positionsinformationen des
angeklickten Fensters durch jene des derzeitig oberen Fensters (Austausch)
(bei Schritt S2). Wenn die Positionsinformationen ersetzt sind,
wird das angeklickte Fenster auf der oberen Ebene angeordnet. Als nächstes bestimmt
das System, ob das angeklickte Fenster das oberste Fenster ist oder
nicht (bei Schritt S3).
-
Wenn das Bestimmungsresultat bei
Schritt S3 Nein lautet, kehrt der Ablauf zu Schritt S2 zurück. Das System
ersetzt die Positionsinformationen des angeklickten Fensters durch
jene des derzeitig oberen Fensters. Danach bestimmt das System,
ob das angeklickte Fenster das oberste Fenster ist. Diese Schritte
werden wiederholt, bis das angeklickte Fenster das oberste Fenster
ist. Wenn das Bestimmungsresultat bei Schritt S3 Ja lautet, zeichnet
das System das Fenster neu und vollendet es den Prozeß.
-
7A bis 7C sind schematische Diagramme,
die Positionsinformationen zeigen, die bei dem in 6 gezeigten Prozeß verändert werden.
-
In 7A wird
das oberste Fenster auf dem Bildschirm als Fenster 1 bezeichnet.
Fenster hinter dem Fenster 1 werden sukzessive als Fenster 2, Fenster
3 usw. bezeichnet. Daten, welche die Positionen von Fenstern repräsentieren,
sind in dem Weltkoordinatensystem definiert. Die Daten enthalten
eine "Tiefe", welche die Tiefe
eines besonderen Fensters zum obersten Fenster repräsentiert.
Die "Tiefe" ist zum Beispiel
ein z-Koordinatenwert in dem Weltkoordinatensystem.
-
Die Daten, welche die Position eines
Fensters repräsentieren,
umfassen einen x-Koordinatenwert, einen y-Koordinatenwert, eine
Breite und eine Höhe.
Der x-Koordinatenwert und der y-Koordinatenwert der Daten repräsentieren
die Position der oberen linken Ecke des Fensters. Die Breite der
Daten repräsentiert
die Länge
in der horizontalen Richtung des Fensters. Die Höhe der Daten repräsentiert
die Länge
in der vertikalen Richtung des Fensters.
-
Wenn die Positionsinformationen von
Fenstern bei Schritt S2 des in 6 gezeigten
Prozesses ersetzt werden, werden der x-Koordinatenwert, der y-Koordinatenwert,
die Breite und die Höhe
eines Fensters durch jene eines anderen Fensters in 7A bis 7C ersetzt.
Die "Tiefe" der Fenster wird
jedoch nicht ersetzt.
-
Nun wird angenommen, daß Positionsinformationen
wie in 7A existieren
und daß ein
Fenster 1 mit Daten "x1,
y1, w1, h1, Tiefel" als
oberstes Fenster angeordnet ist. Wenn der Benutzer ein Fenster 3
mit den Daten "x3,
y3, w3, h3, Tiefe3" anklickt,
werden die Positionsinformationen, die "Tiefe" des Fensters 3 ausgenommen, durch jene
des Fensters 2 ersetzt, welches das derzeitig obere Fenster ist.
-
Daher wird, wie in 7B gezeigt, die Position des Fensters
3 durch die Position des Fensters 2 ersetzt. Mit anderen Worten,
das Fenster 3 wird an der Position der "Tiefe2" angeordnet, während das Fenster 2 an der
Position der "Tiefe3" angeordnet wird.
Somit wird das Fenster 3 hinter dem Fenster 1 und vor dem Fenster
2 angeordnet.
-
Da das angeklickte Fenster, welches
das Fenster 3 ist, auf dem Bildschirm nicht oben angeordnet worden
ist, wurde das Fenster 3 durch das Fenster 1 ersetzt. Mit anderen
Worten, die Positionsinformationen, ausschließlich der "Tiefel", des Fensters 1 wurden durch die Positionsinformationen,
ausschließlich
der "Tiefe2", des Fensters 3
ersetzt. So ist, wie in 7C gezeigt,
das Fenster 3 auf dem Bildschirm oben angeordnet. Mit anderen Worten,
das Fenster 3 hat eine "Tiefel", welche die Tiefe
des Fensters 1 repräsentiert,
das auf dem Bildschirm oben angeordnet war. Daher sind die Fenster
1 und 2 hinter dem Fenster 3 angeordnet.
-
8A bis 10B sind schematische Diagramme
zum Erläutern
eines Verfahrens zum dreidimensionalen Anzeigen von Fenstern.
-
8A und 8B sind schematische Diagramme,
die eine Definition eines Fensters in dem Körperkoordinatensystem bzw.
eine Datenstruktur derselben zeigen.
-
8A ist
ein schematisches Diagramm, das ein Verfahren zum Definieren eines
Fensters in dem Körperkoordinatensystem
zeigt. In 8A werden
auf der Basis der oberen linken Ecke des Fensters als Ursprung die
Breite W und die Höhe
H desselben als Basismaß definiert.
Zusätzlich
sind Zeichen und Schaltflächen
definiert, die auf dem Fenster angezeigt werden. Obwohl Zeichen
und Schaltflächen
der Einfachheit halber als Objekte definiert sind, werden nur Parameter
beschrieben, die die äußere Form
des Fensters definieren.
-
So kann ein Fenster mit der Breite
W und der Höhe
H desselben in dem Körperkoordinatensystem
definiert sein.
-
8B ist
ein schematisches Diagramm, das eine normale Datenstruktur eines
Fensters zeigt.
-
Als Daten eines Fensters zeigt 8B den x-Koordinatenwert
an dessen oberer linken Ecke, den y-Koordinatenwert an dessen oberer
linken Ecke, dessen Breite W, dessen Höhe H und dessen Tiefe. Der x-Koordinatenwert,
der y-Koordinatenwert und die Tiefe sind Werte, die in dem Weltkoordinatensystem
definiert sind, das später
beschrieben wird. Die Breite W und die Höhe H sind in dem oben beschriebenen
Körperkoordinatensystem
definiert. Zusätzlich
enthalten die Daten Schaltflächen,
die auf Fenstern angezeigt werden, und Zeiger von feststehenden
Objekten (wie etwa Zeichen), die nicht aus einem Fenster in ein
anderes Fenster bewegt werden.
-
9 ist
ein schematisches Diagramm, das ein Beispiel für eine Anordnung von Fenstern
in dem Weltkoordinatensystem zeigt.
-
Das Weltkoordinatensystem ist ein
virtueller dreidimensionaler Raum, in dem Fenster und andere Objekte
temporär
angeordnet sind, um sie dreidimensional anzuzeigen. Zum Beispiel
ist in 9 ein Fenster
1 auf der xy-Ebene angeordnet, deren z-Koordinatenwert 0 ist. Ein
Fenster 2 ist hinter dem Fenster 1 angeordnet. Das Fenster 2 ist
auf der xy-Ebene angeordnet, deren z-Koordinatenwert -d ist. Es
sei erwähnt,
daß die Fenster
1 und 2 in irgendeiner anderen Anordnung als bei dem in 9 gezeigten Beispiel positioniert
sein können.
Der Einfachheit halber sind die Fenster 1 und 2 jedoch so angeordnet,
wie es in 9 gezeigt
ist.
-
Mit anderen Worten, wenn ein Fenster
in dem Weltkoordinatensystem angeordnet wird, werden die Koordinaten
der oberen linken Ecke des Fensters bestimmt. Wenn die Koordinaten
der oberen linken Ecke (x1, y1) sind, werden Koordinaten von Punkten
bestimmt, die für
ein Muster des Fensters erfor derlich sind. In diesem Fall werden
Objekte usw., die auf dem Fenster angezeigt werden, ignoriert, und
nur die äußere Form
des Fensters wird berücksichtigt.
Daher sind nur Koordinaten von vier Ecken des Fensters erforderlich.
Sie können aus
den Koordinaten an der oberen linken Ecke des Fensters und der Breite
W und der Höhe
H, die in dem Körperkoordinatensystem
definiert sind, erhalten werden. Mit anderen Worten, die Koordinaten
der vier Ecken des Fensters werden wie folgt ausgedrückt:
(x1,
y1)
(x1 + W, y1)
(x1, y1 + H)
(x1 + W, y1 + H)
-
So werden die Positionen auf der
xy-Ebene des Fensters erhalten. Als nächstes wird der z-Koordinatenwert
bestimmt, welcher der Tiefe des Fensters entspricht. Die Tiefe des
Fensters wird in dem Bereich von z ≤ 0 definiert. Wenn der negative
Wert der z-Koordinate zunimmt, wird das Fenster auf einer unteren
Ebene angeordnet. Daher ist das oberste Fenster auf der Ebene angeordnet,
auf der z = 0 ist. Zusätzlich
wird die z-Koordinate des Sichtpunktes in dem Bereich von z > 0 definiert.
-
In 9 ist
die Tiefe z des Fensters 1 gleich 0. Die Tiefe z des Fensters 2
ist -d. Es ist besser, wenn die Fenster in der negativen Richtung
der z-Koordinate durch eine vorbestimmte Distanz getrennt voneinander angeordnet
werden. In diesem Fall wird die z-Koordinate eines Fensters i ausgedrückt als
z = -(i – 1)
x d. Daher werden die Koordinaten der vier Ecken des Fensters, das
in dem Weltkoordinatensystem neu angeordnet wird, wie folgt ausgedrückt:
-
-
Als nächstes wird die Position des
Sichtpunktes in dem Weltkoordinatensystem bestimmt. Obwohl die Position
des Sichtpunktes in dem Bereich von z > 0 begrenzt ist, wie oben beschrieben,
ist sie als (e1, e2, e3) definiert. Zusätzlich wird ein Vektor mit
den oben beschriebenen Koordinatenkomponenten als Sichtpunktvektor
bezeichnet und wie folgt definiert:
10A und
10B sind schematische Diagramme zum Erläutern eines
Verfahrens zum Erhalten eines projizierten Bildes auf einem Bildschirm
in dem Fall, daß der
Benutzer ein Fenster von einem Sichtpunkt betrachtet.
-
Gerade Linien, die von einem Sichtpunkt
ausgehen, und Punkte, welche die Position von vier Ecken eines Fensters
repräsentieren,
werden erhalten, wie in 10A gezeigt.
Nun wird angenommen, daß in
dem Weltkoordinatensystem ein Vektor, der sich zu den Punkten erstreckt,
welche die Position der vier Ecken des Fensters repräsentieren,
wie folgt bezeichnet wird:
-
-
Dieser Vektor wird verwendet, um
alle Punkte, die zum Bestimmen des Musters erforderlich sind, und die
Position eines in dem Weltkoordinatensystem angeordneten Objektes
zu repräsentieren.
Wenn ein Fenster mit seiner äußeren Form
dargestellt wird, repräsentiert
der Vektor die Koordinaten der vier Ecken desselben. Mit anderen
Worten, der Vektor hat Elemente, die durch die Formel (1) ausgedrückt werden.
-
Wenn ein Vektor, der von dem Ursprung
zu Punkten auf geraden Linien führt,
die den Sichtpunkt und die vier Ecken des Fensters verbinden, in
dem Weltkoordinatensystem wie folgt als
bezeichnet wird, werden die
geraden Linien, die den Sichtpunkt und die vier Ecken des Fensters
verbinden, wie folgt ausgedrückt:
wobei λ irgendeine reelle Zahl ist.
-
Als nächstes wird, wie in
10B gezeigt, eine Ebene
definiert, auf der das Bildschirmkoordinatensystem angeordnet wird.
Die Ebene kann an irgendeiner Position in dem Weltkoordinatensystem
angeordnet sein. Der Einfachheit halber wird diese Ebene jedoch
als Ebene definiert, die den Ursprung in dem Weltkoordinatensystem
durchquert. Da ein Objekt, wie beispielsweise ein Fenster, auf der
Ebene projiziert wird, ist sie zu dem Sichtpunktvektor zusätzlich senkrecht.
Demzufolge wird die Ebene des Bildschirms in dem Weltkoordinatensystem
wie folgt ausgedrückt:
wobei
ein Vektor, der Punkte auf dem Bildschirm und den Ursprung in dem
Weltkoordinatensystem verbindet, wie folgt bezeichnet wird:
-
-
Indem Schnittpunkte zwischen durch
die Formel (2) ausgedrückten
geraden Linien und der durch die Formel (3) ausgedrückte Ebene
erhalten werden, werden Punkte des auf die Ebene projizierten Fensters
wie folgt ausgedrückt:
wobei
einen Vektor repräsentiert,
der sich zu Schnittpunkten zwischen geraden Linien, die den Sichtpunkt und
die vier Ecken des Fensters verbinden, und der Ebene des Bildschirms
erstreckt.
-
Als nächstes werden Basisvektoren
bestimmt, von denen ein Koordinatensystem auf der Bildschirmebene
definiert wird, die durch die Formel (3) ausgedrückt wird. Die Basisvektoren
werden wie folgt bezeichnet:
-
-
Die Basisvektoren werden wie folgt
definiert:
-
-
Somit werden Punkte, die durch die
Formel (4) in dem Koordinatensystem auf dem Bildschirm ausgedrückt werden
und durch die folgenden a, b definiert sind, durch die folgende
Formel dargestellt:
-
-
Mit den Weltkoordinatenpositionen
eines Objektes wie etwa eines Fensters in der Formel (5), W, werden
die Koordinatenwerte in dem Bildschirmkoordinatensystem erhalten.
-
Durch zweckmäßiges Konvertieren von Koordinaten
der erhaltenen Koordinatenwerte wird das Fenster an der Anzeigeeinheit
dreidimensional angezeigt. Da in diesem Fall der Ursprung des Bildschirms
der Anzeigeeinheit an der oberen linken Ecke festgelegt wird, wobei
der x-Koordinatenwert in der rechten Richtung zunimmt und der y-Koordinatenwert
in der abwärtigen
Richtung zunimmt, werden die Koordinatenwerte konvertiert.
-
Somit kann, wie in 10B gezeigt, ein Fenster 90, das der
Benutzer von einem diagonalen Sichtpunkt betrachtet, auf ein Bildschirmkoordinatensystem
91 projiziert werden.
-
11A und 11B sind schematische Diagramme
zum Erläutern
einer konkreten Anwendung des Verfahrens, das unter Bezugnahme auf 8A bis 10B beschrieben wurde.
-
11A ist
ein schematisches Diagramm, das eine Anordnung von Fenstern in dem
Weltkoordinatensystem zeigt. 11A zeigt
zwei Fenster 100 und 101, deren Größen dieselben sind und die
einander um die Hälfte überlappen.
Das Fenster 100 ist vor dem Fenster 101 angeordnet. Es wird angenommen,
daß der
Sichtpunkt auf der xz-Ebene angeordnet ist, daß ein Basisvektor a parallel
zu der xz-Ebene angeordnet ist und daß ein Basisvektor b auf der
y-Achse angeordnet ist. Zusätzlich
wird angenommen, daß der
Sichtpunktvektor, die Basisvektoren in dem Bildschirmkoordinatensystem
und Punkte der vier Ecken der Fenster 100 und 101 wie folgt ausgedrückt werden:
-
-
Wenn der Vektor von jedem Punkt,
der wie oben beschrieben definiert ist, in die Formel (5) eingesetzt wird,
werden die Koordinatenwerte der Fenster 101 und 100 wie folgt ausgedrückt:
-
-
Wenn angenommen wird, daß der Sichtpunkt
der Fenster 100 und 101 bei 45° (θ = 45°) in der
rechten diagonalen Richtung liegt, werden die Koordinaten desselben
berechnet und graphisch dargestellt, wie es in 11B gezeigt ist.
-
In 11B werden
die Fenster 100 und 101 perspektivisch dargestellt. Zusätzlich überlappen
die Fenster 100 und 101 einander nicht. So kann der Benutzer den
vollen Inhalt des Fensters 101 betrachten, das hinter dem Fenster
100 angeordnet ist.
-
Bei dem oben beschriebenen Beispiel
ist die Länge
des Sichtpunktvektors gleich 1 und ist die Distanz zwischen den
Fenstern 100 und 101 gleich 1. Die Länge des Sichtpunktvektors und
die Distanz zwischen den Fenstern sollten jedoch durch den Konstrukteur
der Vorrichtung der vorliegenden Erfindung so festgelegt werden,
daß der
Benutzer die Fenster ohne weiteres betrachten kann. Daher sind die
Länge des
Sichtpunktvektors und die Distanz zwischen den Fenstern nicht auf
die in der oben beschriebenen Ausführungsform angegebenen Werte
begrenzt.
-
In der obigen Beschreibung werden
die Koordinaten der vier Ecken von jedem Fenster konvertiert. In Wirklichkeit
können
jedoch, wenn erforderliche Punkte, die Muster von Ikons auf Fenstern
definieren, auf dieselbe Weise konvertiert werden, Fenster und andere
Objekte, wie etwa Ikons und Schaltflächen auf ihnen, dreidimensional
angezeigt werden. So sei erwähnt,
daß die
oben beschriebene Ausführungsform
nicht nur auf die Punkte der vier Ecken von jedem Fenster begrenzt
ist.
-
12 ist
ein Flußdiagramm,
das einen Prozeß zum
dreidimensionalen Anzeigen von Fenstern zeigt, der unter Bezugnahme
auf 8A bis 10B beschrieben ist.
-
Bei Schritt S11 erhält die Vorrichtung
Koordinatenwerte von individuellen Punkten, die ein Fenster definieren,
von Definitionsdaten (siehe 8B)
des Fensters, und sie ordnet die individuellen Punkte, die das Fenster
bilden, in dem Weltkoordinatensystem an. Mit anderen Worten, die
Vorrichtung erhält
den x-Koordinatenwert und den y-Koordinaten wert an der oberen linken
Ecke des Fensters und konvertiert sie in Koordinatenwerte in dem
Weltkoordinatensystem. Dieser Prozeß entspricht dem Prozeß zum Anordnen
der oberen linken Ecke des Fensters auf der xy-Ebene (in 9).
-
Bei Schritt S12 bestimmt die Vorrichtung,
ob der Prozeß bei
Schritt S11 für
alle Punkte, die das Fenster bilden, ausgeführt worden ist oder nicht.
Da in diesem Fall nur der Punkt der oberen linken Ecke des Fensters in
dem Weltkoordinatensystem angeordnet worden ist, kehrt der Ablauf
zu Schritt S11 zurück.
Bei Schritt S11 ordnet das System einen anderen Punkt des Fensters
in dem Weltkoordinatensystem an. Mit anderen Worten, das System
ordnet die Koordinaten der Punkte der vier Ecken des Fensters mit
der Breite und Höhe
des in 8B gezeigten
Fensters in dem Weltkoordinatensystem an. Da bei dem oben beschriebenen
Beispiel die Form und Position eines Fensters mit Punkten von vier
Ecken desselben definiert ist, lautet dann, nachdem der Prozeß bei Schritt
S11 vollendet ist, das Bestimmungsresultat bei Schritt S12 Ja. Daher
geht der Ablauf zu Schritt S13 über.
-
Bei Schritt S13 erhält die Vorrichtung
die Tiefe des in 8B gezeigten
Fensters. Die Vorrichtung bestimmt die Position in der Richtung
der z-Achse, die in 8 gezeigt
ist, für
das Fenster, das bei Schritt S11 in dem Weltkoordinatensystem angeordnet
wurde. Damit ist das Fenster in dem Weltkoordinatensystem einschließlich der
Tiefenrichtung vollständig
definiert worden. So sind die Koordinatenwerte der Punkte der vier Ecken
reellen Zahlenwerten äquivalent,
die durch Einsetzen von konkreten Werten in die Formel (1) erhalten wurden.
-
Bei Schritt S14 bestimmt die Vorrichtung
Koordinatenwerte an der Position des Sichtpunktes des Fensters in
dem Weltkoordinatensystem. Dieser Prozeß entspricht dem Prozeß zum Bestimmen
der Koordinaten des Sichtpunktes mit (e1, e2, e3) (und zwar gibt
der Benutzer reelle dreidimensionale Koordinatenwerte über die
Eingabe-/Ausgabeeinheit ein). Da es für den Benutzer schwierig ist,
die Sichtpunktkoordinaten über die
Eingabeeinheit einzugeben, wird eine Schnittstelle wie z. B. eine
Maus verwendet. Zum Beispiel wird eine Halbkugel angezeigt. Wenn
die Maus auf der Halbkugel gezogen wird, wird der Sichtwinkel des
Fensters bestimmt. Die Distanz zwischen dem Fenster und dem Sichtpunkt
wird eingestellt, indem ein kleines Fenster gezogen wird, das die
relative Position zwischen dem Fenster und dem Sichtpunkt darstellt.
-
Da somit die Koordinatenwerte von
allen Punkten, die das Fenster in dem Weltkoordinatensystem bilden,
und die Koordinatenwerte des Sichtpunktes bestimmt worden sind,
bestimmt die Vorrichtung eine Bildschirmebene in dem Weltkoordinatensystem
und erhält
die Bildschirmkoordinaten (bei Schritt S15). Obwohl die Bildschirmebene
in diesem Fall frei bestimmt werden kann, ist es besser, eine Linie,
die die Sichtpunktkoordinaten und die Mitte des Fensters verbindet,
als Sichtlinie zu definieren und eine Ebene senkrecht zu der Sichtlinie
als Bildschirmebene zu definieren. Zusätzlich kann die Distanz von
dem Sichtpunkt auf der Bildschirmebene frei bestimmt werden. Bei
dem oben beschriebenen Beispiel ist die Bildschirmebene beispielsweise
eine Ebene, die den Ursprung in dem Weltkoordinatensystem durchquert,
ungeachtet der Distanz von dem Sichtpunkt. Solch eine Flexibilität sollte
durch den Konstrukteur der Vorrichtung vorgesehen werden.
-
Der Prozeß zum Erhalten der Bildschirmkoordinaten
bei Schritt S15 wird ausgeführt,
wie in 10A und 10B gezeigt, indem der Sichtpunkt
und individuelle Punkte, die das Fenster bilden, verbunden werden
und Punkte, an denen die Bildschirmebene diese Linien durchquert,
in dem Koordinaten system auf der Bildschirmebene dargestellt werden.
Solch ein Prozeß entspricht
dem Prozeß zum
Einsetzen von realen Werten in die Formel (5) bei dem oben beschriebenen
Beispiel.
-
Bei Schritt S16 bestimmt die Vorrichtung,
ob die Koordinaten von allen Punkten von dem Weltkoordinatensystem
in das Bildschirmkoordinatensystem konvertiert worden sind oder
nicht. Wenn das Bestimmungsresultat bei Schritt S16 Nein lautet,
kehrt der Ablauf zu Schritt S15 zurück. Bei Schritt 515 erhält die Vorrichtung die
Bildschirmkoordinatenwerte. Wenn das System bei diesem Beispiel
die Koordinaten von allen Punkten der vier Ecken des Fensters von
dem Weltkoordinatensystem in das Bildschirmkoordinatensystem konvertiert
hat, lautet das Bestimmungsresultat bei Schritt S16 Ja.
-
Wenn das Bestimmungsresultat bei
Schritt S16 Ja lautet, zeigt die Vorrichtung das Fenster mit den erhaltenen
Bildschirmkoordinaten auf dem Bildschirm der Anzeigeeinheit an (bei
Schritt S17).
-
Es sei erwähnt, daß das in 12 gezeigte Flußdiagramm ein Beispiel für den Koordinatenkonvertierungsprozeß ist. Daher
ist die vorliegende Erfindung nicht auf den Prozeß dieses
Flußdiagramms
begrenzt.
-
Gemäß der vorliegenden Erfindung
kann, selbst wenn eine Vielzahl von Fenstern einander überlappt, der Überlappungsabschnitt
leicht bearbeitet werden. So kann ein Bild eines Fensters, das hinter
einem anderen Fenster versteckt ist, angezeigt werden und zum Beispiel
eine Datei ohne weiteres kopiert oder zwischen Fenstern, die einander überlappen,
bewegt werden.