DE602005006243T2 - Rechnerunterstützes Verfahren und Rechnersystem zum Positionieren eines Zeigers - Google Patents

Rechnerunterstützes Verfahren und Rechnersystem zum Positionieren eines Zeigers Download PDF

Info

Publication number
DE602005006243T2
DE602005006243T2 DE602005006243T DE602005006243T DE602005006243T2 DE 602005006243 T2 DE602005006243 T2 DE 602005006243T2 DE 602005006243 T DE602005006243 T DE 602005006243T DE 602005006243 T DE602005006243 T DE 602005006243T DE 602005006243 T2 DE602005006243 T2 DE 602005006243T2
Authority
DE
Germany
Prior art keywords
view
dimensional scene
pointer
dimensional
transformation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE602005006243T
Other languages
English (en)
Other versions
DE602005006243D1 (de
Inventor
Christoph Laimer
Peter Majer
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Bitplane AG
Original Assignee
Bitplane AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Bitplane AG filed Critical Bitplane AG
Publication of DE602005006243D1 publication Critical patent/DE602005006243D1/de
Application granted granted Critical
Publication of DE602005006243T2 publication Critical patent/DE602005006243T2/de
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Processing Or Creating Images (AREA)
  • Control Of Position Or Direction (AREA)
  • Numerical Control (AREA)
  • User Interface Of Digital Computer (AREA)

Description

  • Gebiet der Erfindung
  • Die vorliegende Erfindung bezieht sich auf ein rechnerunterstütztes Verfahren und ein Computersystem zur Positionierung eines Zeigers in einer dreidimensionalen Szene. Insbesondere bezieht sich die Erfindung auf ein rechnerunterstütztes Verfahren und ein rechnerunterstütztes Visualisierungssystem zur Positionierung eines Zeigers in einer dreidimensionalen Szene in einem Visualisierungssystem, wobei eine Ansicht der dreidimensionalen Szene auf einem zweidimensionalen Bildschirm angezeigt wird.
  • Hintergrund der Erfindung
  • Rechnerunterstütze Visualisierungssysteme werden in vielen Gebieten, wie Computerspiele, dreidimensionale Modelle, und fortgeschrittener wissenschaftlicher Visualisierung, beispielsweise Mikroskopie, verwendet. Typischerweise verwenden rechnerunterstützte Visualisierungssysteme Kameramodelle mit Zentralprojektion oder Parallelprojektion zur Erfassung von Bildern von Eingangsdaten, die dreidimensionale Szenen definieren. Bilder werden durch Projizieren von dreidimensionalen Objekten auf eine Ansichts-(Projektions-)Ebene (oder Ansichts-Anschluss) projiziert und dann durch Abbilden der Ansichtsebene auf einen zweidimensionalen Bildschirm erhalten. In einem Kamera-Modell mit Zentralprojektion gehen Projektionslinien vom Zentrum der Projektion, dem definierten Gesichtspunkt, aus. Bei Kameramodellen mit Parallelprojektion werden Bilder, die den Ansichtspunkt bei einer unendlichen Distanz von der Ansicht der Projektionsfläche haben, erhalten. Die Schnittstelle von diesen Projektionslinien mit der Ansichts-/Projektions-Ebene bilden die projizierten zweidimensionalen Bilder des dreidimensionalen Objekts. Demnach wird eine dreidimensionale Szene auf dem zweidimensionalen Bildschirm, wie auch die Ansichts-/Projektions-Ebene des Kameramodells, von dem definierten Ansichtspunkt der Kamera gezeigt. Die Darstellung der dreidimensionalen Szene auf dem zweidimensionalen Bildschirm mangelt es an Darstellung von Tiefe und Distanz. Insbesondere in dreidimensionalen Szenen, die viele Objekte von unbekannter Form und Grösse umfassen, wird ein Benutzer ohne jegliche visuelle Aufschlüsse in Tiefenwahrnehmung gelassen. Demnach ist es für einen Benutzer sehr schwierig, einen Zeiger, d. h. einen Cursor, in einer dreidimensionalen Szene zu platzieren. Nachfolgend wird das Kamera-Modell eines rechnerunterstützten Visualisierungssystems, das durch seine Ansichts-/Projektions-Ebene und seinen Gesichtspunkt definiert ist, auch als „Kamera" bezeichnet.
  • In US 6,057,827 wird ein Computergraphik-Modellierungssystem beschrieben, welches es für einen Benutzer möglich macht, einen Zeiger genau an einem geometrischen Punkt eines dreidimensionalen Objektes zu positionieren. Gemäss US 6,057,827 wird in Antwort auf ein Benutzersignal der Zeiger automatisch zum geometrischen Punkt des dreidimensionalen Objektes, der am nächsten zur aktuellen Position des Zeigers liegt, bewegt. Ohne weitere zusätzliche visuelle Hinweise muss der Benutzer jedoch weiterhin den Zeiger auf eine nahe Umgebung des dreidimensionalen Objektes bewegen, während der Benutzer keine visuelle Hinweise für die Tiefenpositionierung des Zeigers erhält.
  • Eine verbesserte Tiefenwahrnehmung kann durch Hinzufügen von Mitteln zur stereoskopischen Ansicht erzielt werden. Jedoch sind nicht alle Benutzer in der Lage, eine verbesserte Tiefenwahrnehmung von stereoskopischen Ansichten zu erhalten. Im Weiteren werden Hardware-Vorrichtungen, wie Ferngläser oder Filtergläser, die zum Erhalt von stereoskopischen Ansichten benötigt werden, durch die Benutzer oftmals als unpraktisch und unbequem empfunden.
  • US 5,751,927 beschreibt ein Verfahren zur Herstellung der visuellen Wahrnehmung von räumlichen Strukturen durch Bearbeitung von Bildern, die auf einem im Wesentlichen flachen Bildschirm dargestellt werden. Gemäss US 5,751,927 werden die Bilder von kleinen definierten Verschiebungen in einem offenbarten Gesichtswinkel abgeleitet. Die Verschiebungen werden ausgewählt, um in Richtung und bei Wiederhol-Frequenzen, wie ruckartiges Anhalten, wahrnehmbar zu erscheinen, um Bewegungs-Parallax-Empfindungen beim Benutzer auszulösen. Die Verschiebungen werden durch Scherung normal zur Sichtlinie oder Verdrehung zur räumlichen Struktur gemacht. Gemäss US 5,751,927 wird eine finite Anzahl von effektiven Umschalt-Positionen verwendet, beispielsweise werden acht mögliche Scherungs-Orte verwendet. Von ursprünglichen Bildern, die von einer Bilder-Datenbank erhalten werden, werden die verschobenen Bilder durch einen Transformations-Apparat berechnet und in einer transformierten Datenbank gespeichert. Um die Verteilung des ruckartigen Anhaltens während normaler Augenbewegungen zu modellieren, wird eine Pseudo-Poisson-Verteilung für den Umschaltvorgang verwendet, und die Umschaltungen werden in einer Pseudo-zufälligen Weise ausgeführt.
  • Darstellung der Erfindung
  • Es ist ein Ziel dieser Erfindung, ein rechnerunterstütztes Verfahren und ein Computersystem zur Positionierung eines Zeigers in einer dreidimensionalen Szene in einem Visualisierungssystem bereitzustellen, welches Verfahren und System mindestens einige der Nachteile des Standes der Technik nicht haben. Insbesondere ist es ein Ziel der vorliegenden Erfindung, ein rechnerunterstütztes Verfahren und ein rechnerunterstütztes Visualisierungssystem zur Positionierung eines Zeigers in einer dreidimensionalen Szene bereitzustellen, welches Verfahren und System dem Benutzer eine Tiefenwahrnehmung bereitstellt, wenn dieser die dreidimensionale Szene, die auf einem zweidimensionalen Bildschirm gezeigt wird, betrachtet. Es ist ein weiteres Ziel der vorliegenden Erfindung, ein rechnerunterstütztes Verfahren und ein rechnerunterstütztes Visualisierungssystem zur Positionierung eines Zeigers in einer dreidimensionalen Szene bereitzustellen, welches Verfahren und System dem Benutzer eine verbesserte Tiefenwahrnehmung ohne das Erfordernis von Hardware-Vorrichtungen für stereoskopische Darstellung bereitzustellen.
  • Gemäss der vorliegenden Erfindung werden diese Ziele insbesondere durch die Merkmale der unabhängigen Ansprüche erzielt. Zusätzlich werden weitere vorteilhafte Ausführungsbeispiele von den abhängigen Ansprüchen und der Beschreibung beschrieben.
  • Gemäss der vorliegenden Erfindung werden die obengenannten Ziele insbesondere erzielt, indem für die Positionierung eines Zeigers (Cursors) in einer dreidimensionalen Szene in einem rechnerunterstützten Visualisierungssystem, eine Ansicht der Szene auf einem zweidimensionalen Bildschirm gezeigt wird, wobei die Ansicht der dreidimensionalen Szene automatisch animiert ist, um einem Benutzer die Ansicht der dreidimensionalen Szene mit einem kinetischen Tiefeneffekt bereitzustellen. Während der Animierung der Ansicht werden Signale, die die Positionierungswerte für drei Dimensionen anzeigen, vom Benutzer erhalten. Beispielsweise können die Positionierungswerte in den zwei Dimensionen des Bildschirms und einer Tiefendimension vertikal zum Bildschirm spezifiziert werden. In Antwort auf die Signale wird der Zeiger basierend auf den Positionierungswerten positioniert, während die Ansicht animiert wird. Die Bereitstellung einer animierten Ansicht der dreidimensionalen Szene für den Benutzer, macht es für den Benutzer möglich, die Ansicht der dreidimensionalen Szene mit einer Tiefenwahrnehmung zu sehen. Dieser sogenannte kinetische Tiefeneffekt wurde 1953 durch H. Wallach und D. N. O'Connell, „The Kinetic Depth Effect", Journal of Experimental Psychology, 45, 205–217, beschrieben.
  • Während die animierte Ansicht der dreidimensionalen Szene dem Benutzer bereitgestellt wird, werden Benutzersignale empfangen und der Zeiger wird demgemäss positioniert. Demnach ist es für den Benutzer möglich, den Zeiger in der dreidimensionalen Szene nicht nur in zwei, sondern auch in drei Dimensionen zu platzieren. Beispielsweise kann der Benutzer den Zeiger in den zwei Dimensionen des Bildschirms, und auch in der Tiefendimension vertikal zu den zwei Dimensionen des Bildschirms platzieren. Das Definieren der Position zur Platzierung des Zeigers in der dreidimensionalen Szene ist mittels konventionellen Eingabe-Vorrichtungen, wie eine Maus mit einem Scrolling-Rad, möglich.
  • Das Bereitstellen einer animierten Ansicht der dreidimensionalen Szene mit einem kinetischen Tiefeneffekt für den Benutzer, macht es für den Benutzer möglich, den Zeiger in allen drei Dimensionen ohne die Ausführung von weiteren Operationen zu platzieren, z. B. gibt es kein Bedürfnis für den Benutzer, alternative Ansichten manuell auszuwählen. Es gibt auch kein Erfordernis für den Benutzer, weitere Vorrichtungen zur stereoskopischen Ansicht zu verwenden. Das Bereitstellen einer automatisch animierten Ansicht der dreidimensionalen Szene mit einem kinetischen Tiefeneffekt für den Benutzer versetzt auch Benutzer ohne die Fähigkeit für stereoskopische Ansichten weiterhin in die Lage, die Tiefe wahrzunehmen. Weiter macht es die Animierung der Ansicht der dreidimensionalen Szene möglich, einen kinetischen Tiefeneffekt sowohl in Systemen, die eine Zentralprojektion verwenden, wie auch in Systemen, die Parallelprojektion verwenden, zu produzieren.
  • Gemäss der Erfindung wird die Ansicht der dreidimensionalen Szene auf dem zweidimensionalen Bildschirm gezeigt, wie auf eine Ansichtsprojektionsebene der Kamera von einem definierten Gesichtspunkt der Kamera projiziert. Die Ansicht der dreidimensionalen Szene beinhaltet eine Ansicht des Zeigers, wie dieser auf die Ansichtsprojektionsebene vom Gesichtspunkt projiziert ist. Die Animierung der Ansicht der dreidimensionalen Szene beinhaltet eine Anwendung einer Transformation zur dreidimensionalen Szene oder der Kamera. Die Transformation wird so angewandt, dass die Ansicht des Zeigers im Wesentlichen statisch bleibt. Mit anderen Worten wird die Projektion des Zeigers, die durch eine Schnittstelle einer Projektionslinie (durch den Gesichtspunkt und einen aktuellen Ort des Zeigers verlaufend) mit der Ansichtsprojektionsebene definiert ist, fixiert gehalten. Demnach profitiert der Benutzer zur Positionierung des Zeigers von einer verbesserten Tiefenwahrnehmung der dreidimensionalen Szene, ohne durch die Bewegung des Zeigers gehindert zu sein.
  • Gemäss der Erfindung beinhaltet die Transformation entweder eine Rotation oder eine Scherung, wobei die Rotation um eine Rotationsachse, die durch einen aktuellen Ort des Zeigers verläuft, ausgeführt wird und wobei die Scherung entlang einer Scherungsebene, die durch den aktuellen Ort des Zeigers verläuft, ausgeführt wird. Zur Bereitstellung einer animierten Ansicht der dreidimensionalen Szene mit einem optimalen kinetischen Tiefeneffekt für den Benutzer sind die Rotationsachse, bzw. die Scherungsebene, im Wesentlichen parallel zur Ansichtsprojektionsebene.
  • Die Anwendung einer Rotations-Transformation auf die dreidimensionale Szene oder die Kamera verändert die relative Positionierung der Kamera und der dreidimensionalen Szene. Mit anderen Worten hat die Anwendung einer Rotations-Transformation auf die dreidimensionale Szene oder die Kamera den Effekt der Bewegung der dreidimensionalen Szene relativ zur Kamera bzw. der Bewegung der Kamera relativ zur dreidimensionalen Szene. Wenn die relative Positionierung der Kamera und der dreidimensionalen Szene geändert wird, ändert die relative Positionierung des Gesichtspunktes der Kamera und der Ansichtsprojektionsebene der Kamera bezüglich der dreidimensionalen Szene, während der Ansichtspunkt relativ zur Ansichtsprojektionsebene fixiert bleibt. Wenn demnach die relative Positionierung der Kamera und der dreidimensionalen Szene verändert werden, wird entweder die Position des Gesichtspunktes oder die der Ansichtsprojektionsebene relativ zur dreidimensionalen Szene verändert oder die Positionen von Objekten der dreidimensionalen Szene werden relativ zum Gesichtspunkt und der Ansichtsprojektionsebene verändert.
  • Das Ausführen der Rotations-Transformation um eine Achse, die durch einen aktuellen Ort des Zeigers verläuft, und das Ausführen der Scherungs-Transformation um eine (Scherungs-)Ebene, die durch den aktuellen Ort des Zeigers verläuft, hat den Vorteil, dass der Ort des Zeigers durch die Transformation nicht beeinflusst wird. Demnach bewegt sich die Darstellung (Ansicht) des Zeigers im zweidimensionalen Bildschirm als ein Resultat der Transformation nicht. Demnach wird der Benutzer zur Positionierung des Zeigers nicht durch eine unerwartete Zeigerbewegung gestört.
  • Die Anwendung einer Scherungs-Transformation auf die dreidimensionale Szene oder auf die Kamera hat den Effekt des Wechselns der perspektivischen Ansicht der dreidimensionalen Szene. Vorzugsweise wird die Scherungs-Transformation auf die dreidimensionale Szene angewandt; jedoch kann die Scherungs-Transformation auch auf die Kamera durch entsprechendes Alternieren der Positionen des Gesichtspunkts und der Ansichtsprojektionsebene relativ zur Scherungs-Ebene angewandt werden. Verglichen zur Animierung der Ansicht der dreidimensionalen Szene mittels einer Rotations-Transformation resultiert das Animieren der Ansicht mittels einer Scherungs-Transformation in einer animierten Ansicht der dreidimensionalen Szene, die dem Benutzer stabiler erscheint.
  • In einem anderen bevorzugten Ausführungsbeispiel wird die Ansicht kontinuierlich in einer definierten Bewegung mit zyklischer Repetition animiert. Ein kontinuierlich wiederholtes Bewegungsmuster macht es möglich, den Benutzer mit den dreidimensionalen Eigenschaften der auf dem Bildschirm gezeigten Szene bekannt zu machen, d. h. der Benutzer wird an die Tiefenaspekte der dreidimensionalen Szene gewöhnt. Eine sanfte, gleichmässig kontinuierliche Animation der Ansicht macht es für den Benutzer einfacher, die kinetischen Tiefeneffekte wahrzunehmen, als eine nicht kontinuierliche, zufällige Animation der Ansicht.
  • In einem weiteren bevorzugten Ausführungsbeispiel wird die Ansicht in einer Vorwärts- und Rückwärts-Schwenkbewegung um einen aktuellen Ort des Zeigers bei einer definierten Geschwindigkeit und mit einem definierten Schwenkwinkel animiert. Beispielsweise ist der Schwenkwinkel im Bereich von 3 bis 6 Grad gewählt. Beispielsweise wird der Zeiger durch einen dreidimensionalen Zeiger dargestellt, und der Schwenkpunkt ist innerhalb des Zeigers angeordnet. Die Animation der Ansicht in einer kontinuierlichen Vorwärts- und Rückwärts-Schwenkbewegung um den Schwenkpunkt bezweckt die Darstellung der dreidimensionalen Szene, die auf dem zweidimensionalen Bildschirm erscheint, wie wenn der Benutzer seinen Kopf rückwärts und vorwärts in der horizontalen oder vertikalen Dimension des Bildschirms bewegen würde. Das Platzieren des Schwenkpunktes beim aktuellen Ort des Zeigers hat den Vorteil, dass eine Projektion des Zeigers auf die Ansichtsprojektionsebene in der Ansichtsprojektionsebene fixiert bleibt. Demnach bewegt sich die Darstellung (Ansicht) des Zeigers in dem zweidimensionalen Bildschirm als ein Resultat der Bewegung der Kamera bzw. der dreidimensionalen Szene nicht. Demnach wird der Benutzer zur Positionierung des Zeigers nicht durch die Zeigerbewegung, die automatisch und unabhängig von den Positionssignalen des Benutzers auftritt, gestört.
  • Zusätzlich zu einem rechnerunterstützten Verfahren und einem rechnerunterstützten Visualisierungssystem zum Positionieren eines Zeigers in einer dreidimensionalen Szene, die auf einem zweidimensionalen Bildschirm gezeigt wird, bezieht sich die vorliegende Erfindung auch auf ein Computerprogramm-Produkt, das Computerprogramm-Codemittel zur Steuerung eines oder mehrerer Prozessoren eines Computers beinhaltet, insbesondere ein Computerprogramm-Produkt, das ein computerlesbares Medium beinhaltet, das die Computerprogramm-Codemittel darin beinhaltet.
  • Kurze Beschreibung der Zeichnungen
  • Die vorliegende Erfindung wird im Detail unter Bezugnahme auf die Zeichnungen beispielhaft erklärt, in welchen:
  • 1 ein Blockdiagramm zeigt, das eine beispielhafte Konfiguration eines rechnerunterstützten Visualisierungssystems mit einem Bildschirm und einer daran befestigten Zeigervorrichtung schematisch illustriert.
  • 2a, 2b und 2c Ansichten zeigen, die schematisch die Projektion von Objekten in einer dreidimensionalen Szene von einem Gesichtspunkt in eine Ansichtsprojektionsebene illustrieren, wobei die dreidimensionale Szene zwischen dem Gesichtspunkt und der Ansichtsprojektionsebene angeordnet wurde, wobei Objekte der dreidimensionalen Szene auf beiden Seiten der Ansichtsprojektionsebene angeordnet sind, oder wobei die Ansichtsprojektionsebene zwischen dem Gesichtspunkt, bzw. der dreidimensionalen Szene angeordnet wurde.
  • 3a eine Ansicht zeigt, die die Projektion einer dreidimensionalen Szene von einem Gesichtspunkt auf eine Ansichtsprojektionsebene illustriert, wobei ein in der dreidimensionalen Szene platzierter Zeiger als eine Zeigerprojektion auf die Ansichtsprojektionsebene projiziert wird.
  • 3b eine Ansicht zeigt, die die Projektion der dreidimensionalen Szene von 3a schematisch illustriert, wobei die Projektionen des Gesichtspunkts und der Ansichtsprojektionsebene um den Zeiger verschwenkt werden.
  • 4 eine Ansicht zeigt, die schematisch den kontinuierlichen Wechsel der relativen Positionen des Gesichtspunkts und der Ansichtsprojektionsebene bezüglich der dreidimensionalen Szene durch Schwenken des Gesichtspunkts und der Ansichtsprojektionsebene um den Zeiger illustriert.
  • 5a, 5b und 5c dreidimensionale Darstellungen zeigen, die die Projektion einer dreidimensionalen Szene von einem Gesichtspunkt auf eine Ansichtsprojektionsebene illustrieren, wobei die relativen Positionen des Gesichtspunkts und der Ansichtsprojektionsebene bezüglich der dreidimensionalen Szene verändert werden.
  • 6a, 6b und 6c jeweils den zweidimensionalen Bildschirm zeigen, der die dreidimensionale Szene bei unterschiedlichen Phasen der animierten Ansicht zeigt.
  • 7 dreidimensionale Darstellungen zeigt, die schematisch unterschiedliche Arten von Bewegungen für die Animierung der Ansicht der dreidimensionalen Szene illustriert.
  • 8 eine Ansicht zeigt, die schematisch den kontinuierlichen Wechsel der dreidimensionalen Szene illustriert, welcher von einer Scherungs-Transformation, die auf die dreidimensionale Szene angewandt wird, resultiert.
  • 9 dreidimensionale Darstellungen zeigt, die unterschiedliche Arten von Bewegungen zur Animierung der Ansicht der dreidimensionalen Szene illustrieren.
  • Detaillierte Beschreibung von bevorzugten Ausführungsformen
  • In 1 bezieht sich das Bezugszeichen 1 auf ein rechnerunterstütztes Visualisierungssystem. Wie in 1 gezeigt, beinhaltet das rechnerunterstützte Visualisierungssystem einen Computer 1', der mit einem zweidimensionalen Bildschirm 3, einer Zeigervorrichtung 2, beispielsweise eine Maus, einem Track Ball oder einem Touch Pad, und einer Tastatur 17 verbunden ist. Der Computer 1' ist mit einem oder mehreren Prozessoren ausgestattet, und ist beispielsweise als ein Personalcomputer implementiert. Die Zeigervorrichtung 2 macht es für einen Benutzer möglich, Signale für Positionierungswerte dem Computer 1' bereitzustellen. Vorzugsweise ist die Zeigervorrichtung 2 mit Mitteln ausgestattet, beispielsweise einem Scrolling-Rad 21, um dem Computer nicht nur Signale für die Positionierungswerte in zwei Dimensionen des Bildschirms 3 bereitzustellen, sondern auch in der Tiefendimension (vertikal zu den zwei Dimensionen des Bildschirms 3). Alternativ kann ein Signal für die Tiefendimension (und die zwei Dimensionen des Bildschirms 3) beispielsweise auch mittels der Tastatur 17 dem Computer 1' bereitgestellt werden. In einem Ausführungsbeispiel beinhaltet das rechnerunterstützte Visualisierungssystem 1 ein gemeinsames Gehäuse, das den Computer 1', den zweidimensionalen Bildschirm 3, die Zeigervorrichtung 2, und/oder die Tastatur 17 beinhaltet. Beispielsweise ist das rechnerunterstützte Visualisierungssystem 1 als eine mobile tragbare Vorrichtung, wie ein Laptop, Notebook oder Palmtop Computer, oder als ein Personal Data Assistant (PDA) oder ein Mobiltelefon ausgebildet.
  • Wie in 1 illustriert, beinhaltet der Computer 1' einen Treiber 16 für die Zeigevorrichtung 2. Der Treiber 16 ist konfiguriert, um Zeigersignale von der Zeigervorrichtung 2 (und/oder von der Tastatur 17) zu erhalten, und um Positionierungswerte für die zwei Dimensionen des Bildschirms 3, die x- und y-Koordinaten, und für die Tiefendimension, die z-Koordinate, zu generieren. Der Fachmann wird verstehen, dass die Zeigersignale, die durch die Zeigervorrichtung 2 (oder durch alternative Mittel) bereitgestellt werden, nicht auf die Positionierung des Zeigers relativ zu den drei Dimensionen (x, y, z) eines Koordinatensystems, das durch den Bildschirm 3 definiert ist, limitiert ist, sondern auch alternativ zur Positionierung des Zeigers relativ zu den drei Dimensionen (u, v, w) eines Koordinatensystems, das eine dreidimensionale Szene, die auf dem Bildschirm 3 angezeigt werden soll, definiert wird.
  • In einer weiteren Ausführungsform werden die dreidimensionalen Zeigersignale von den zweidimensionalen Signalen einer Zeigervorrichtung, wie eine Computermaus, durch einen Treiber generiert, der automatisch einen Positionierungswert für die dritte Dimension bestimmt. Der Treiber bestimmt die Positionierungswerte für die dritte Dimension, beispielsweise vom zweidimensionalen Signal und der dreidimensionalen Szene, durch Auswählen des Positionierungswertes für die dritte Dimension, welche in einigen Zusammenhängen ein bester Wert von allen möglichen Werten entlang der Sichtlinie ist.
  • Der Computer 1' beinhaltet auch eine konventionelle Video-Steuerung 15, beispielsweise eine Video-Karte, um den Bildschirm 3 zu steuern.
  • In 1 bezieht sich das Bezugszeichen 14 auf eine Datenquelle. Die Datenquelle ist darstellend für Datenspeicher, eine Programmierungs-Schnittstelle oder eine Hardware-Schnittstelle, die Eingangsdaten bereitstellt, welche eine dreidimensionale Szene, die auf dem Bildschirm 3 angezeigt werden soll, definiert. Typischerweise definieren die Eingangsdaten die dreidimensionale Szene auf der Basis von einem oder mehreren dreidimensionalen Objekten, wobei jedes Objekt durch seine Form, Grösse und Position definiert wird. Beispielsweise werden die Eingangsdaten von einer externen Vorrichtung 5, wie ein Datenspeicher, eine Videokamera oder ein digitales Mikroskop, erhalten, die mit dem Computer 1' verbunden ist. Die Eingangsdaten können auch von einem Applikations-Programm, wie ein Computerspiel, ein computerunterstütztes Design- oder Modellierungsprogramm, oder ein fortgeschrittenes wissenschaftliches Visualisierungsprogramm, wie eine digitale Mikroskopie-Applikation, empfangen werden. Die Eingangsdaten können in unterschiedlichen Formaten, wie ein Stapel von 2D-TIFF-Dateien (Tagged Image File Format) oder einer VRML-Datei (Virtual Reality Modeling Language) mit Objekt-Koordinaten, bereitgestellt werden.
  • In 1 bezieht sich Bezugseichen 10 auf funktionale Module, die das Visualisierungs-System antreiben: ein 3D-Visualisierungsmodul 11, ein Animationsmodul 12, und ein Parametermodul 13. Die funktionalen Module 10 sind vorzugsweise als programmierte Software-Module auf einem computerlesbaren Medium gespeichert, das fest oder trennbar mit den Prozessoren des Computers 1' verbunden ist. Der Fachmann wird jedoch verstehen, dass die Funktionsmodule 10 auch voll oder teilweise mittels Hardware implementiert werden können.
  • Das 3D-Visualisierungsmodul 11 beinhaltet Softwarefunktionen zur Implementierung eines Kameramodells, das durch seine Ansichtsprojektionsebene und seinen Gesichtspunkt definiert ist. In anderen Worten beinhaltet das 3D-Visualisierungsmodul 11 Softwarefunktionen zur Projektion der dreidimensionalen Objekte, die in der dreidimensionalen Szene vorhanden sind, auf die Ansichtsprojektionsebene der Kamera, wie vom definierten Gesichtspunkt der Kamera gesehen. Wie in den 2a, 2b und 2c illustriert, sind die dreidimensionalen Objekte, die in der dreidimensionalen Szene 43 vorhanden sind, auf die Ansichtsprojektionsebene 42 durch Projektionslinien 44, die vom Gesichtspunkt 41 ausgehen, projiziert. Der Schnittpunkt der Projektionslinien 44 mit der Ansichtsprojektionsebene 42 bildet das projizierte zweidimensionale Bild der dreidimensionalen Szene und dessen dreidimensionalen Objekte. Der Gesichtspunkt 41 und die Ansichtsprojektionsebene 42 bilden eine Kamera, wobei die Ansichtsprojektionsebene 42 und der Gesichtspunkt 41 so definiert werden können, dass die dreidimensionale Szene 43 zwischen dem Gesichtspunkt 41 und der Ansichtsprojektionsebene 42 angeordnet ist, wie in 2a gezeigt; dass die dreidimensionale Szene 43 Objekte hat, die auf beiden Seiten der Ansichtsprojektionsebene 42 angeordnet sind, wie in 2b gezeigt; oder dass die dreidimensionale Szene 43 auf der Seite der Ansichtsprojektionsebene 42 angeordnet ist, die vom Gesichtspunkt 41 weggerichtet ist, wie in 2c gezeigt. Anstelle einer Zentralprojektion wird Parallelprojektion der dreidimensionalen Szene durch Definieren des Gesichtspunkts 41 der Kamera bei einer unendlichen Distanz von der Ansichtsebene 42 erhalten. Durch Zuordnen des zweidimensionalen Bildes von der Ansichtsprojektionsebene 42 durch die Video-Steuerung 15 auf dem zweidimensionalen Bildschirm 3, wird ein zweidimensionales Bild 48 der dreidimensionalen Szene auf dem Bildschirm 3 dargestellt. Vorzugsweise sind die Funktionen des 3D-Visualisierungsmoduls 11 über eine Applikations-Programmschnittstelle verfügbar. Beispielsweise beinhalten die 3D-Visualisierungsmodule Programmfunktionen von OpenGL, von Silicon Graphics, Inc., oder von Direct 3D von Microsoft, Inc..
  • Das Animationsmodul 12 ist konfiguriert, um automatisch und in Echtzeit die Ansicht der dreidimensionalen Szene zu animieren, um einem Benutzer die Ansicht der dreidimensionalen Szene 43 mit einem kinetischen Tiefeneffekt bereitzustellen. Die Ansicht der dreidimensionalen Szene ist durch Anwenden einer Transformation auf die dreidimensionale Szene 43 oder auf die Kamera animiert.
  • Die Transformation ist eine räumliche Transformation, die für jeden Punkt in der dreidimensionalen Szene 43 oder für die Ansichtsprojektionsebene 42 der Kamera und den Gesichtspunkt 41, einen neuen räumlichen Ort von einem aktuellen räumlichen Ort berechnet. Vorzugsweise ist die Transformation eine lineare Transformation, insbesondere eine affine Transformation, wie Scherung oder Rotation, die auf die dreidimensionale Szene 43 oder die Kamera in Echtzeit angewandt wird. Die lineare Transformation ordnet jedem Punkt eines Objekts, das durch einen dreidimensionalen Vektor [a, b, c] definiert ist, durch Multiplikation mit einer drei-auf-drei Transformationsmatrix einen entsprechenden Punkt des transformierten Objektes, der durch einen neuen dreidimensionalen Vektor [a', b', c'] definiert ist, zu. Der Fachmann wird verstehen, dass es auch möglich ist, nicht lineare Transformationen auf die dreidimensionale Szene anzuwenden, beispielsweise eine Transformation, wie Rotation oder Scherung, die nur auf eine definierte, limitierte räumliche Umgebung des Zeigers angewandt wird. Das Animationsmodul 12 ist konfiguriert, um eine Rotations- und/oder Scherungs-Transformation auf die dreidimensionale Szene 43 oder auf die Kamera anzuwenden. Beispielsweise kann mittels des Parameter-Moduls 13 die Transformationsart durch den Benutzer von einer Liste von definierten Transformationsarten ausgewählt werden. Standardmässig wird jedoch die Scherungstransformation als die bevorzugte Transformationsart ausgewählt. Das Animationsmodul 12 ist ausgebildet, um die Transformation auf die dreidimensionale Szene 43 oder die Kamera so anzuwenden, dass die Projektion (Ansicht) des Zeigers im Wesentlichen statisch bleibt. Für die Rotations-Transformation wird das statische Halten der Zeiger-Projektion 46 durch Ausführen der Rotation um eine Rotationsachse, die durch einen aktuellen Ort des Zeigers 45 verläuft und die im Wesentlichen parallel zur Ansichtsprojektionsebene 42 ist, ausgeführt. Für die Scherungs-Transformation wird das statische Halten der Zeiger-Projektion 46 durch Ausführen der Scherung um eine Scherungsebene p, die durch einen aktuellen Ort des Zeigers 45 verläuft und die im Wesentlichen parallel zur Ansichtsprojektionsebene 42 ausgerichtet ist, erzielt.
  • Der folgende Abschnitt zeigt ein Beispiel eines kommentierten Programm-Codes in C++ zur automatischen Animierung der Ansicht der dreidimensionalen Szene 43, durch Anwenden einer Rotations-Transformation auf die dreidimensionale Szene 43. Im Wesentlichen verwendet das hier gezeigte Beispiel OpenGL-Funktionsaufrufe, um die Animation zu erhalten. Im vorliegenden Beispiel hat das Anwenden einer Rotations-Transformation auf die dreidimensionale Szene den Vorteil, dass der gleiche Programmcode für eine perspektivische Kamera, wie auch für eine orthogonale Kamera, verwendet werden kann. In dem Beispiel hat die Rotation den Effekt, dass die dreidimensionale Szene relativ zur Kamera bewegt wird. In dem Beispiel wird die dreidimensionale Szene zurück und vorwärts um den aktuellen Ort des Zeigers verschwenkt.
  • Figure 00180001
  • Figure 00190001
  • Als ein Resultat der Rotations-Transformation wird die relative Positionierung der Kamera und der dreidimensionalen Szene 43 verändert. Wie in den 3a und 3b gezeigt, sind der Gesichtspunkt 41 und die Ansichtsprojektionsebene 42 um den Zeiger (oder Cursor) 45 rotiert, während der Gesichtspunkt 41 relativ zur Ansichtsprojektionsebene 42 festgehalten wird. Da die Bewegung der dreidimensionalen Szene 43 relativ zur Kamera äquivalent zur Bewegung der Kamera relativ zur dreidimensionalen Szene 43 ist, ist das Verändern der Positionen der Objekte der dreidimensionalen Szene 43 relativ zum Gesichtspunkt 41 und der Ansichtsprojektionsebene 42 äquivalent zur Veränderung der Positionen des Gesichtspunkts 41 und der Ansichtsprojektionsebene 42 bezüglich der dreidimensionalen Szene 43. Die aktuelle Position des Zeigers 45 wird kontinuierlich von den Positionierungswerten, die durch den Treiber 16 bereitgestellt werden, bestimmt. Demnach wird die Kamera, als ein Resultat der Rotation, um eine aktuelle Position des Zeigers 45 verschwenkt, so dass der Ort der Zeiger-Projektion, der durch den Schnittpunkt der Projektionslinie 44', die durch den Gesichtspunkt 41 und den Zeiger 45 verläuft, auf der Ansichtsprojektionsebene 42 fixiert bleibt. Wie in 3b gesehen werden kann, verändert sich aufgrund der Rotation α des Gesichtspunkts 41 und der Ansichtsprojektionsebene 42 um den Zeiger 45, die Projektion von allen anderen Objekten der dreidimensionalen Szene 43 auf der Ansichtsprojektionsebene 42. Mit anderen Worten, verglichen zu 3a, werden die Orte der Schnittstellen der Projektionslinien mit der Ansichtsprojektionsebene 42 in 3b bewegt.
  • Um dem Benutzer auf dem Bildschirm 3 eine Ansicht der dreidimensionalen Szene 43 mit einem kinetischen Tiefeneffekt bereitzustellen, wird das Animationsmodul 12 so konfiguriert, um automatisch die Ansicht der dreidimensionalen Szene durch kontinuierliches Anwenden von räumlichen Transformationen auf die dreidimensionale Szene 43 zu animieren. Eine kontinuierliche Animation der projizierten und angezeigten Ansicht der dreidimensionalen Szene wird durch zyklisches Wiederholen einer Serie von Rotations-Transformationen mit kontinuierlichem Wechseln der Transformationsmatrix erzielt. Wenn eine Rotations-Transformation angewendet wird, wird die Transformations-Matrix kontinuierlich verändert, um einen Effekt zu erzielen, als wenn die Kamera (oder die dreidimensionale Szene 43) kontinuierlich mit einer definierten Bewegung bewegt wird. Die definierte Bewegung wird zyklisch wiederholt, und die aktuelle Position des Zeigers 45 wird als ein definierter fester Punkt verwendet. Beispielsweise, wie vorher für die Transformationsart beschrieben, kann die definierte Bewegung durch den Benutzer von einer Liste von definierten Bewegungsarten mittels des Parametermoduls 13 ausgewählt werden. Wie es schematisch in 7 illustriert ist, beinhalten die definierten Bewegungen die Bewegungen der Kamera in einem u/v/w-Koordinatensystem, wobei der Gesichtspunkt der Kamera im Wesentlichen in einer (u/v) Referenzebene mit der zentralen Projektionslinie w* als eine Normale bewegt wird. Beispiele von definierten Bewegungen beinhalten eine zirkulare Bewegung A, die diagonale Bewegung B, eine Bewegung in der Form einer "8" (nicht gezeigt), die horizontale Bewegung C oder die vertikale Bewegung D. Die diagonalen B, horizontalen C und vertikalen Bewegungen D beinhalten eine Bewegung von einem Startpunkt zu einem Endpunkt und vom Endpunkt zurück zum Startpunkt. Das Anwenden von Transformationen, welche den Bewegungen des Gesichtspunkts der Kamera im Wesentlichen in der Referenzebene entsprechen, lässt die Darstellung der dreidimensionalen Szene im zweidimensionalen Bildschirm so zu erscheinen, als wenn der Benutzer seinen Kopf parallel zur Bildschirmoberfläche bewegt, um eine alternative Ansicht der dreidimensionalen Szene zu erhalten. Das Anwenden von Transformationen, welche in einer Bewegung des Gesichtspunkts der Kamera in der u-Dimension (horizontale Richtung) resultieren, entspricht einer (horizontalen) Seitwärtsbewegung des Kopfes; Bewegung des Gesichtspunkts der Kamera in der v-Dimension (vertikale Richtung) entspricht der (vertikalen) Nickbewegung des Kopfes; kombinierte Bewegung des Gesichtspunkts der Kamera in der u- und v-Dimension (horizontale und vertikale Richtungen) kann beispielsweise einer zirkularen Bewegung des Kopfes entsprechen. Das Parameter-Modul 13 stellt auch eine Benutzerschnittstelle bereit, um Parameter für unterschiedliche Arten von definierten Bewegungen zu spezifizieren, beispielsweise die Geschwindigkeit der Bewegung oder ein Schwenkwinkel Φ (oder eine Scherungsamplitude S) einer Schwenkbewegung. Ohne jede Benutzerangabe verwendet das Animationsmodul 12 Standardparameter, die im Computer 1' gespeichert sind. Vorzugsweise liegt die Zykluszeit (Periode) in einem Bereich von 1 bis 3 Sekunden. Vorzugsweise liegt der Schwenkwinkel im Bereich von 2 bis 10 Grad, so dass die Bewegung der angezeigten dreidimensionalen Objekte relativ zu ihrer entsprechenden Grösse klein ist.
  • Wie im Beispiel von 4 gezeigt, rotiert das Animationsmodul 12 für eine horizontale Bewegung (in der U-Dimension bzw. X-Dimension) um eine Rotationsachse, die durch den Zeiger 45 parallel zur Ansichtsprojektionsebene 42a, 42b, 42c verläuft. Alternativ kann die Kamera rotiert werden, so dass der Gesichtspunkt und die Ansichtsprojektionsebene sich in einer Schwenkbewegung um den Zeiger 45 bewegen. In dem in 4 gezeigten Beispiel wird der Gesichtspunkt schrittweise und wiederholt (zyklisch) entlang der Kurve t von einem ursprünglichen zentralen Gesichtspunkt 41b, der eine zentrale Projektionslinie w* hat, zu einem ersten Endgesichtspunkt 41a bewegt; vom ersten Endgesichtspunkt 41a zurück zum zentralen Gesichtspunkt 41b; vom zentralen Gesichtspunkt 41b zu einem zweiten Endgesichtspunkt 41c; und vom zweiten Endpunkt 41c zurück zum zentralen Gesichtspunkt 41b. Die Ansichtsprojektionsebene 46a, 46b, 46c bleibt immer fixiert zum Gesichtspunkt 41a, 41b, 41c. Diese kontinuierliche Zurück-und-Vorwärts-Schwenkbewegung der Kamera (oder eine entsprechende Schwenkbewegung der dreidimensionalen Szene) resultiert in einer animierten Ansicht der dreidimensionalen Szene auf dem zweidimensionalen Bildschirm 3, wobei sich die dreidimensionalen Objekte kontinuierlich nach rechts und zurück nach links bewegen, wobei die angezeigte Ansicht des Zeigers 49 fest bleibt. Abhängig von der definierten Bewegung ist die Kurve t als eine gerade, gekurvte oder runde Linie in der U/V Referenzebene definiert. Die Kurve t kann auch mit einem Radius R relativ zum Zeiger 45 definiert sein.
  • In der 5b wird die projizierte dreidimensionale Szene 47b der dreidimensionalen Szene 43b auf der Projektionsebene 42, wie vom Gesichtspunkt 41 gesehen, projiziert. Weiterhin wird der projizierte Zeiger 46 des Zeigers 45 auf der Projektionsebene 42, wie vom Gesichtspunkt 41 gesehen, gezeigt.
  • In 5a sind die relativen Positionen des Gesichtspunkts 41 und der Ansichtsprojektionsebene 42 bezüglich der dreidimensionalen Szene verändert. Im Beispiel der 5a wird der Wechsel der relativen Positionierung als ein Resultat der Rotation β der dreidimensionalen Szene 43a um den Zeiger 45 erhalten. Jedoch kann der Wechsel der relativen Positionierung auch durch das Rotieren der Kamera um den Zeiger 45 erhalten werden. Wie es in 5a gesehen werden kann, ist die projizierte dreidimensionale Szene 47a unterschiedlich zu der projizierten dreidimensionalen Szene 47b, wie in 5b gezeigt. Die projizierte dreidimensionale Szene 47a erscheint, als wenn diese von einem Gesichtspunkt, der weiter rechts als der Gesichtspunkt in 5b liegt, gesehen wird.
  • In 5c wird der Wechsel der relativen Positionen des Gesichtspunkts 41 und der Ansichtsprojektionsebene 42 bezüglich der dreidimensionalen Szene als ein Resultat der Rotation 6 der dreidimensionalen Szene 43c um den Zeiger 45 erhalten. Nochmals, der Wechsel der relativen Positionierung kann auch durch Rotation der Kamera um den Zeiger 45 erhalten werden. Wie es in 5c gesehen werden kann, ist die dreidimensionale Szene 47c unterschiedlich zu den projizierten dreidimensionalen Szenen 47a, 47b, die in den 5a bzw. 5b gezeigt werden. Die projizierte dreidimensionale Szene 47c erscheint, als wenn diese von einem Gesichtspunkt betrachtet wird, der weiter links als der Gesichtspunkt in den 5a und 5b angeordnet ist.
  • In 6a wird der zweidimensionale Bildschirm 3 gezeigt, welcher eine Ansicht der dreidimensionalen Szene 48a und eine Ansicht des Zeigers 49 anzeigt. Die angezeigte Ansicht der dreidimensionalen Szene 48a entspricht der projizierten dreidimensionalen Szene 47a von 5a. Beispielsweise entspricht die angezeigte Ansicht der dreidimensionalen Szene 48a einer Ansicht der dreidimensionalen Szene von einer Kamerakonfiguration mit dem ersten Endgesichtpunkt 41a von 4. Sobald die Kamera sich entlang der Kurve t von 4 bewegt, ändert sich die perspektivische Ansicht der dreidimensionalen Szene, die auf Bildschirm 3 angezeigt wird, schrittweise. Sobald die Kamera die Konfiguration mit dem zentralen Gesichtspunkt 41b von 4 erreicht, zeigt der Bildschirm 3 die dreidimensionale Szene 48b und eine Ansicht des Zeigers 49, wie in 6b gezeigt. Die angezeigte Ansicht der dreidimensionalen Szene 48b entspricht der projizierten dreidimensionalen Szene 47b von 5b. Die Kamera wird weiter entlang der Kurve t von 4 bewegt und die perspektivische Ansicht der dreidimensionalen Szene, die auf dem Bildschirm 3 angezeigt wird, ändert schrittweise. Sobald die Kamera die Konfiguration mit dem zweiten Endgesichtspunkt 41c der 4 erreicht, zeigt der Bildschirm 3 die dreidimensionale Szene 48c und eine Ansicht des Zeigers 49, wie dies in 6c illustriert ist. Die angezeigte Ansicht der dreidimensionalen Szene 48c entspricht der projizierten dreidimensionalen Szene 47c von 5c. Diese Animation der Ansicht der dreidimensionalen Szene wird fortgesetzt, solange die Kamera zurück auf der Kurve t von 4 bewegt wird, von dem zweiten Endgesichtspunkt 41c durch den zentralen Gesichtspunkt 41b, zurück zum ersten Endgesichtspunkt 41a. Nachfolgend kann der Zyklus erneut wiederholt werden. Alternativ wird die dreidimensionale Szene entsprechend rotiert werden, um die gleiche animierte Ansicht der dreidimensionalen Szene auf dem Bildschirm 3 zu erhalten.
  • 8 illustriert eine Scherungstransformation als die bevorzugte räumliche Transformation, die auf die dreidimensionale Szene 43 angewandt wird, um in Echtzeit die Ansicht der dreidimensionalen Szene 48b automatisch zu animieren. Die Scherungsoperation wird um die Scherungsebene p ausgeführt, welche durch den Zeiger 45 parallel zur Ansichtsprojektionsebene 42 verläuft. Wie es in der Ansicht in 8 gezeigt wird, wird die Scherungsoperation mit einer maximalen Scherungsamplitude S, die als die Distanz zwischen den dreidimensionalen Szenen 43a und 43b definiert ist, die als ein Resultat der angewandten Scherungstransformation die grösste Deformation haben. Eine kontinuierliche Animation der projizierten und angezeigten Ansicht der dreidimensionalen Szene wird durch zyklisches Wiederholen einer Serie von Scherungstransformationen mit kontinuierlichem Wechsel der Transformationsmatrix erzielt. Wie in 8 gezeigt, startet ein Zyklus mit der initialen, nicht deformierten dreidimensionalen Szene 43; von dort wird die Scherungstransformation kontinuierlich in kleinen Schritten auf die Scherungsamplitude angewandt, bis die Scherungstransformation in der transformierten dreidimensionalen Szene 43a resultiert; nachfolgend wird die Scherungstransformation kontinuierlich in kleinen Dekrementen der Scherungsamplitude angewandt, bis die Scherungstransformation in der transformierten dreidimensionalen Szene 43b resultiert; letztendlich wird der Zyklus durch das Anwenden der Scherungstransformation in kontinuierlichen kleinen Inkrementen auf die Scherungsamplitude beendet, bis die Scherungstransformation in der initialen nicht deformierten dreidimensionalen Szene 43 resultiert. Durch die kontinuierliche Scherung der dreidimensionalen Szene, ändert sich die perspektivische Ansicht der dreidimensionalen Szene, die auf dem Bildschirm 3 gezeigt wird, wie vom Gesichtspunkt 41 auf die Ansichtsprojektionsebene projiziert, schrittweise. Das Anwenden der Scherungstransformation innerhalb eines vollen Bereiches der Scherungsamplitude S entspricht dem Anwenden der Scherungstransformation innerhalb des Schwenkwinkels Φ, wie in 8 gezeigt. Der Fachmann wird verstehen, dass die Animation der Ansicht der dreidimensionalen Szene durch eine Scherungstransformation alternativ durch eine entsprechende Scherung der Kamera, insbesondere durch Scherung des Gesichtspunkts und der Ansichtsprojektionsebene einer parallelen Projektionskamera, erzielt werden kann.
  • Wie es oben mit Bezug zur 7 beschrieben worden ist, können nicht nur die Informationsart, sondern auch eine Bewegungsart durch den Benutzer mittels des Parametermoduls 13 ausgewählt werden. Gemäss der ausgewählten Bewegungsart animiert das Animationsmodul 12 automatisch die Ansicht der dreidimensionalen Szene, um dem Benutzer eine Ansicht der dreidimensionalen Szene 43 mit einem kinetischen Tiefeneffekt bereitzustellen.
  • Durch Anwenden einer Scherungstransformation wird die Transformationsmatrix kontinuierlich verändert, um einen Effekt zu erzielen, als wenn die dreidimensionale Szene 43 (oder die Kamera) mit einer definierten Bewegung geschert worden wäre. Die definierte Bewegung der Scherungstransformation wird zyklisch repetiert, während die Scherungsebene p 45 fixiert gehalten wird. In 9 wird, um unterschiedliche Arten von Bewegungen der Scherungstransformation zu illustrieren, die Bewegung von Punkten auf der dreidimensionalen Szene 43, die auf einer Achse 61 angeordnet sind, die durch einen Fixpunkt 6 in der Scherungsebene p verläuft, gezeigt. Das Bezugszeichen w' bezieht sich auf eine Normale zur Scherungsebene p, die durch den Fixpunkt 6 verläuft. Wie es schematisch in der 9 gezeigt wird, werden die Punkte auf der Achse 61 durch die Scherungstransformationen bewegt, so dass die Schnittpunkte der Achse 61 mit den u/v-Referenzebenen parallel zur Scherungsebene p Bewegungen, wie eine Kreisbewegung Q (Kreisbewegung Q' in Rückwärtsrichtung), die diagonale Bewegung R (diagonale Bewegung R' in Rückwärtsrichtung), eine Bewegung in der Form einer „8" (nicht gezeigt), die horizontale Bewegung S (horizontale Bewegung S' in Rückwärtsrichtung), oder die vertikale Bewegung T (vertikale Bewegung T' in Rückwärtsrichtung), definieren. Als ein Resultat von diesen Scherungstransformationen erscheint die Darstellung der dreidimensionalen Szene im zweidimensionalen Bildschirm, als wenn der Benutzer seinen Kopf parallel zum Bildschirm bewegt hätte, um eine alternative Ansicht der dreidimensionalen Szene zu erhalten. Das Anwenden von Transformationen, welche in einer Bewegung der Schnittstellen in der u-Dimension (horizontale Richtung) resultieren, entsprechen einer (horizontalen) Seitwärtsbewegung des Kopfes; Bewegungen der Schnittstellen in der v-Dimension (vertikale Dimension) entsprechen einer (vertikalen) Nickbewegung des Kopfes; kombinierte Bewegungen der Schnittstellen in der u- und v-Dimension (horizontale und vertikale Richtungen) können beispielsweise einer Kreisbewegung des Kopfes entsprechen.
  • Für die Rotationstransformation sowie für die Scherungstransformation ist die bevorzugte (standardmässige) Bewegung zur kontinuierlichen und automatisierten Bewegung der Ansicht der dreidimensionalen Szene in Echtzeit eine Zurück-und-Vorwärts-Schwenkbewegung um die aktuelle Position des Zeigers, entsprechend der horizontalen Bewegung C, wie mit Bezug zu
  • 7 beschrieben, bzw. entsprechend der horizontalen Bewegung S, wie mit Bezug zu 9 beschrieben.
  • Der folgende Absatz zeigt ein Beispiel eines kommentierten Programmcodes unter Verwendung von OpenGL Funktionsaufrufen zur automatischen Animierung der Ansicht der dreidimensionalen Szene 43 durch Anwendung einer Scherungstransformation auf die dreidimensionalen Szene 43.
  • Figure 00280001
  • Figure 00290001

Claims (9)

  1. Rechnerunterstütztes Verfahren zum Positionieren eines Zeigers (45) in einem Visualisierungssystem (1) in einer dreidimensionalen Szene (43), wobei das Verfahren folgende Verfahrensschritte aufweist: Darstellen einer Ansicht der dreidimensionalen Szene (48) auf einer zweidimensionalen Anzeige (3) wie auf eine Ansichtsprojektionsebene (42) einer Kamera von einem festgelegten Gesichtspunkt (41) der Kamera aus projiziert, wobei die Ansicht der dreidimensionalen Szene (48) eine Ansicht des Zeigers (49) wie auf die Ansichtsprojektionsebene (42) von dem Gesichtspunkt (41) aus projiziert aufweist, automatisches Animieren der Ansicht der dreidimensionalen Szene (48) durch Anwenden einer Transformation auf die dreidimensionale Szene (43) oder die Kamera, um einem Benutzer die Ansicht der dreidimensionalen Szene (48) mit einer kinetischen Tiefenwirkung bereitzustellen, wobei die Transformation eine Rotationstransformation oder eine Scherungstransformation aufweist, Empfangen von Signalen zum Erzeugen von Positionierwerten für drei Dimensionen von dem Benutzer beim Animieren der Ansicht, und, gekennzeichnet durch Positionieren des Zeigers (45) in der dreidimensionalen Szene (43) in Reaktion auf die Signale basierend auf den Positionierwerten beim Animieren der Ansicht, Animieren der Ansicht mit einem Animieren als Durchführen der Rotation um eine durch eine aktuelle Position des Zeigers (45) verlaufende Achse oder einem Animieren als Durchführen des Abscherens in einer durch die aktuelle Position des Zeigers (45) verlaufenden Ebene (p) derart, dass sich die Ansicht des Zeigers (49) als Ergebnis der Transformation im Wesentlichen nicht bewegt.
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass eine Zeigerprojektion (46) festgehalten bleibt, welche durch einen Schnittpunkt einer Projektionslinie (44') mit der Ansichtsprojektionsebene (42) festgelegt ist, wobei die Projektionslinie (44') durch den Gesichtspunkt (41) und eine aktuelle Position des Zeigers (45) verläuft.
  3. Verfahren nach einem der Ansprüche 1 oder 2, gekennzeichnet durch ein fortlaufendes Animieren der Ansicht der dreidimensionalen Szene (48) in einer festgelegten Bewegung mit zyklischer Wiederholung.
  4. Verfahren nach einem der Ansprüche 1 bis 3, gekennzeichnet durch ein fortlaufendes Animieren der Ansicht der dreidimensionalen Szene (48) in einer vor- und zurückgehenden Schwenkbewegung um eine aktuelle Position des Zeigers (45) mit einer festgelegten Geschwindigkeit und mit einem festgelegten Schwenkwinkel (Φ).
  5. Rechnerunterstütztes Visualisierungssystem (1), welches zur Positionierung eines Zeigers (45) in einer dreidimensionalen Szene (43) konfiguriert ist, wobei das System Folgendes aufweist: Einrichtungen zur Darstellung einer Ansicht der dreidimensionalen Szene (48) auf einer zweidimensionalen Anzeige (3) wie auf eine Ansichtsprojektionsebene (42) einer Kamera von einem festgelegten Gesichtspunkt (41) der Kamera aus projiziert, wobei die Ansicht der dreidimensionalen Szene (48) eine Ansicht des Zeigers (49) wie auf die Ansichtsprojektionsebene (42) von dem Gesichtspunkt (41) aus projiziert aufweist, Einrichtungen zur automatischen Animation der Ansicht der dreidimensionalen Szene (48) durch Anwendung einer Transformation auf die dreidimensionale Szene (43) oder die Kamera, zur Bereitstellung der Ansicht der dreidimensionalen Szene (48) mit einer kinetischen Tiefenwirkung für den Benutzer, wobei die Transformation eine Rotationstransformation oder eine Scherungstransformation aufweist, Einrichtungen zum Empfang von Signalen von dem Benutzer zur Erzeugung von Positionierwerten für drei Dimensionen bei Aninmation der Ansicht, und, gekennzeichnet durch Einrichtungen zur Positionierung des Zeigers (45) in der dreidimensionalen Szene (43) in Reaktion auf die Signale basierend auf den Positionierwerten bei Animation der Ansicht, wobei die Einrichtungen zur Animation der Ansicht zur Durchführung der Rotation um eine durch eine aktuelle Position des Zeigers (45) verlaufende Achse oder zur Durchführung des Abscherens in einer durch die aktuelle Position des Zeigers (45) verlaufenden Ebene (p) derart konfiguriert sind, dass sich die Ansicht des Zeigers (49) als Ergebnis der Transformation im Wesentlichen nicht bewegt.
  6. System (1) nach Anspruch 5, dadurch gekennzeichnet, dass die Einrichtungen zur Animation der Ansicht für eine Anwendung der Transformation derart ausgebildet sind, dass eine Zeigerprojektion (46) festgehalten bleibt, welche durch einen Schnittpunkt einer Projektionslinie (44') mit der Ansichtsprojektionsebene (42) festgelegt ist, wobei die Projektionslinie (44') durch den Gesichtspunkt (41) und eine aktuelle Position des Zeigers (45) verläuft.
  7. System (1) nach Anspruch 5 oder 6, dadurch gekennzeichnet, dass die Einrichtungen zur Animation der Ansicht für eine fortlaufende Animation der dreidimensionalen Szene (48) in einer festgelegten Bewegung mit zyklischer Wiederholung konfiguriert sind.
  8. System (1) nach einem der Ansprüche 5 bis 7, dadurch gekennzeichnet, dass die Einrichtungen zur Animation der Ansicht für eine fortlaufende Animation der dreidimensionalen Szene (48) in einer vor- und zurückgehenden Schwenkbewegung um eine aktuelle Position des Zeigers (45) mit einer festgelegten Geschwindigkeit und mit einem festgelegten Schwenkwinkel (Φ) konfiguriert sind.
  9. Computerprogrammerzeugnis, welches Computerprogrammmittel zur Steuerung eines Prozessors oder mehrerer eines rechnerunterstützten Visualisierungssystems (1) aufweist, das zur Darstellung einer Ansicht einer dreidimensionalen Szene (48) auf einer zweidimensionalen Anzeige (3) derart konfiguriert ist, dass das System (1) das Verfahren nach einem der Ansprüche 1 bis 4 durchführt.
DE602005006243T 2005-05-02 2005-05-02 Rechnerunterstützes Verfahren und Rechnersystem zum Positionieren eines Zeigers Expired - Fee Related DE602005006243T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP05009577A EP1720090B1 (de) 2005-05-02 2005-05-02 Rechnerunterstützes Verfahren und Rechnersystem zum Positionieren eines Zeigers

Publications (2)

Publication Number Publication Date
DE602005006243D1 DE602005006243D1 (de) 2008-06-05
DE602005006243T2 true DE602005006243T2 (de) 2009-06-25

Family

ID=34981412

Family Applications (1)

Application Number Title Priority Date Filing Date
DE602005006243T Expired - Fee Related DE602005006243T2 (de) 2005-05-02 2005-05-02 Rechnerunterstützes Verfahren und Rechnersystem zum Positionieren eines Zeigers

Country Status (3)

Country Link
EP (1) EP1720090B1 (de)
AT (1) ATE393427T1 (de)
DE (1) DE602005006243T2 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2489685B (en) * 2011-03-31 2017-01-25 Geovs Ltd A Display System

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4607255A (en) * 1983-08-19 1986-08-19 University Of North Carolina At Chapel Hill Three dimensional display using a varifocal mirror
US5751927A (en) * 1991-03-26 1998-05-12 Wason; Thomas D. Method and apparatus for producing three dimensional displays on a two dimensional surface
US6267673B1 (en) * 1996-09-20 2001-07-31 Nintendo Co., Ltd. Video game system with state of next world dependent upon manner of entry from previous world via a portal
US6184876B1 (en) * 1996-07-10 2001-02-06 Intel Corporation Method and apparatus for audibly communicating comparison information to a user
US6097393A (en) * 1996-09-03 2000-08-01 The Takshele Corporation Computer-executed, three-dimensional graphical resource management process and system
US6377256B1 (en) * 1998-12-24 2002-04-23 Intel Corporation Assisted camera orientation and positioning during object manipulation in a three-dimensional scene
WO2000060444A1 (en) * 1999-04-06 2000-10-12 Microsoft Corporation Method and apparatus for supporting two-dimensional windows in a three-dimensional environment
US6833828B1 (en) * 1999-11-30 2004-12-21 Trimus Ltd Modified browser system

Also Published As

Publication number Publication date
DE602005006243D1 (de) 2008-06-05
EP1720090A1 (de) 2006-11-08
EP1720090B1 (de) 2008-04-23
ATE393427T1 (de) 2008-05-15

Similar Documents

Publication Publication Date Title
DE60225933T2 (de) Tragbare virtuelle realität
DE69725875T2 (de) Videobetrachtungserfahrungen mit hilfe von standbildern
DE69816688T2 (de) Perspektivsteuerung für Videospielbilder
DE112004000377B4 (de) Verfahren und Vorrichtung Bildsegmentierung in einer dreidimensionalen Arbeitsumgebung
DE60201692T2 (de) Auf 3D Objekten angewendetes 2D Bildverarbeitungsverfahren
DE60103373T2 (de) Verfahren und vorrichtung zur anzeige von musikdateien im dreidimensionalen raum
DE60133386T2 (de) Vorrichtung und verfahren zur anzeige eines ziels mittels bildverarbeitung ohne drei dimensionales modellieren
DE69835770T2 (de) Verfahren und gerät zum vereinfachen der navigation in dreidimensionalen grafischen szenen
DE112004002545T5 (de) Reduzierung der Zusammensetzungsgeschwindigkeit für Anzeigen
DE69632578T2 (de) Computer-grafiksystem zum schaffen und verbessern von texturabbildungssystemen
DE202017104054U1 (de) 2D-Video mit der Option für projiziertes Betrachten in einem modellierten 3D-Raum
DE112007001789B4 (de) Verfahren zum Bewerten eines Bildes im Hinblick auf eine dominante Linie
DE19953595B4 (de) Verfahren und Vorrichtung zur Verarbeitung dreidimensionaler Bilder
US7382374B2 (en) Computerized method and computer system for positioning a pointer
DE102007023506A1 (de) Verfahren zum Darstellen von Bildobjekten in einem virtuellen dreidimensionalen Bildraum
DE19807013B4 (de) Volumetrisches Vorabschneidungsverfahren, das eine minimale Anzahl von Abtastpunkten durch ein Volumen gewährleistet
DE102007014020A1 (de) Automatischer Echtzeit-Gesichtsmerkmal-Austausch
DE19955690A1 (de) System und Verfahren zur auf einer Volumendarstellung basierenden Segmentation
DE69837165T2 (de) Verfahren und gerät für automatische animation von dreidimensionalen grafischen szenen für verbesserte 3-d visualisierung
DE202013012446U1 (de) Strukturüberblendung für weichen Übergang zwischen unterschiedlichen Detaillierungsgraden in Grafikanwendungen
DE102014114131A1 (de) Verfahren zur Informationsverarbeitung und elektronisches Gerät
DE112019002798T5 (de) Informationsverarbeitungsvorrichtung, informationsverabeitungsverfahren und programm
DE602005006243T2 (de) Rechnerunterstützes Verfahren und Rechnersystem zum Positionieren eines Zeigers
DE10336492A1 (de) Vorrichtung zur Bearbeitung eines zweidimensionalen Bildes in einem dreidimensionalen Raum
Nikolov et al. Gaze-contingent display using texture mapping and opengl: system and applications

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee