DE202011110655U1 - Mehrskalige dreidimensionale Orientierung - Google Patents

Mehrskalige dreidimensionale Orientierung Download PDF

Info

Publication number
DE202011110655U1
DE202011110655U1 DE202011110655.5U DE202011110655U DE202011110655U1 DE 202011110655 U1 DE202011110655 U1 DE 202011110655U1 DE 202011110655 U DE202011110655 U DE 202011110655U DE 202011110655 U1 DE202011110655 U1 DE 202011110655U1
Authority
DE
Germany
Prior art keywords
environment
visible region
objects
indicator
visible
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE202011110655.5U
Other languages
English (en)
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.)
Autodesk Inc
Original Assignee
Autodesk Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Autodesk Inc filed Critical Autodesk Inc
Publication of DE202011110655U1 publication Critical patent/DE202011110655U1/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

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/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04845Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/003Navigation within 3D models or images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/048023D-info-object: information is displayed on the internal or external surface of a three dimensional manipulable object, e.g. on the faces of a cube that can be rotated by the user

Abstract

Recheneinrichtung, die ausgebildet ist, eine Navigations-GUI zum Navigieren in einer 3D-Umgebung, die mit einem mehrskaligen 3D-Datensatz verknüpft ist, zu erzeugen, wobei die Recheneinrichtung umfasst: einen Speicher; und eine Verarbeitungseinheit, die mit dem Speicher verbunden und ausgebildet ist, um: eine aktuelle Position in der 3D-Umgebung zu empfangen, wobei ein sichtbarer Bereich der 3D-Umgebung für die Anzeige auf der Grundlage einer Perspektive, die zu der aktuellen Position gehört, erzeugt wird; und zu veranlassen, dass ein Objektindikator in dem sichtbaren Bereich der 3D-Umgebung angezeigt wird, wobei der Objektindikator zu einem 3D-Objekt gehört, das in einem nicht-sichtbaren Bereich der 3D-Umgebung relativ zu der aktuellen Position angeordnet ist, und wobei der Objektindikator ferner mit einem Miniaturbild verknüpft ist, das das 3D-Objekt repräsentiert.

Description

  • QUERVERWEIS AUF VERWANDTE ANMELDUNGEN
  • Diese Anmeldung beansprucht die Priorität der vorläufigen US-Patentanmeldung mit der Seriennummer 61/369,635, die am 30. Juli 2010 eingereicht wurde, und der US-Patentanmeldung mit der Seriennummer 13/193,531, die am 28. Juli 2011 eingereicht wurde. Jede dieser Anmeldungen ist durch Bezugnahme mit eingeschlossen.
  • HINTERGRUND DER ERFINDUNG
  • Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft das Gebiet der Computeranimation und betrifft insbesondere die mehrskalierte dreidimensionale (3D) Orientierung.
  • Beschreibung des Stands der Technik
  • Die jüngere Forschung in der 3D-Computergrafik und Interaktion hat den engen Bereich der Entwicklung von Autorensoftware und Inspektion für einzelne Objekte verlassen und hat damit begonnen, komplexe mehrskalierte bzw. mehrfach skalierte Objekte und Umgebungen zu betrachten. Konventionelle Vorgehensweisen in der Computergrafik für die Modellierung und für das Verständnis von Gestaltungsräumen, obwohl dies nunmehr gut verstanden ist, haben sich für diese neuen und komplexeren grafischen Umgebungen in gewisser Weise als beschränkt erwiesen. Um in diesem neuen grafischen Umgebungen geeignet und effizienter arbeiten zu können, ist ein besseres Verständnis des Gestaltungsraums erforderlich.
  • Wie das Vorhergehende zeigt, besteht auf diesem Gebiet der Technik ein Bedürfnis nach verbesserten Techniken zum Verstehen und zum Interagieren mit komplexen mehrskaligen 3D-Umgebungen.
  • ÜBERBLICK ÜBER DIE ERFINDUNG
  • Eine Ausführungsform der Erfindung umfasst ein computerimplementiertes Verfahren zur Erzeugung einer grafischen Navigationsanwenderschnittstelle (GUI) zum Navigieren in einer dreidimensionalen (3D) Umgebung, die mit einem mehrskaligen 3D-Datensatz verknüpft ist. Das Verfahren umfasst den Empfang einer aktuellen Position in der 3D-Umgebung, an der ein sichtbarer Bereich der 3D-Umgebung für die Anzeige aus der Perspektive der aktuellen Position erzeugt wird, das Erkennen eines 3D-Objekts, das in einem nicht-sichtbaren Bereich der 3D-Umgebung liegt, und das Veranlassen, dass ein Objektindikator in dem sichtbaren Bereich der 3D-Umgebung angezeigt wird, wobei der Objektindikator eine Orientierung aufweist, die die Position des 3D-Objekts in dem nichtsichtbaren Bereich der 3D-Umgebung in Bezug auf die aktuelle Position angibt.
  • Vorteilhafterweise werden für einen Endbenutzer diverse Möglichkeiten bereitgestellt, mit einer komplexen 3D-Umgebung in Wechselwirkung zu treten, die beobachtbare Eigenschaften mit einer Fülle von unterschiedlichen Skalen bzw. Skalierung enthält. Einige Vorgehensweisen sind wichtig, um Anwender mit dem visuell eindringenden Details in Berührung zu bringen, die mit einer jeweiligen unterschiedlichen Skala derartiger 3D-Umgebungen verknüpft sind.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Um die Art und Weise, in der die oben genannten Merkmale der Erfindung im Detail angegeben sind, verständlich zu machen, wird eine genauere Beschreibung der Erfindung, die zuvor kurz zusammengefasst ist, mit Bezug zu Ausführungsformen angegeben, wovon einige in den angefügten Zeichnungen dargestellt sind. Es ist jedoch zu beachten, dass die angefügten Zeichnungen nur typische Ausführungsformen dieser Erfindung darstellen und daher nicht als Beschränkung des Schutzbereichs zu betrachten sind, da die Erfindung andere, gleichermaßen wirksame Ausführungsformen zulässt.
  • 1A ist eine Blockansicht eines Systems, das für das Einrichten eines oder mehrerer Aspekte der Erfindung ausgebildet ist;
  • 1B ist eine detailliertere Darstellung des Systemspeichers aus 1A gemäß einer Ausführungsform der Erfindung;
  • 2 zeigt diverse Elemente, die in einer 3D-Szene gemäß einer Ausführungsform der Erfindung vorhanden sind;
  • 3A bis 9 zeigen unterschiedliche Bildschirmaufnahmen einer 3D-Umgebung gemäß einer Ausführungsform der Erfindung;
  • 10 ist ein Flussdiagramm von Verfahrensschritten zur Visualisierung eines mehrskaligen 3D-Datensatzes gemäß einer Ausführungsform der Erfindung;
  • 11 ist ein Flussdiagramm von Verfahrensschritten zur Abfrage eines mehrskaligen 3D-Datensatzes gemäß einer Ausführungsform der Erfindung; und
  • 12 ist ein Flussdiagramm von Verfahrensschritten zur Erzeugung einer Navigations-GUI auf der Grundlage eines mehrskaligen 3D-Datensatzes gemäß einer Ausführungsform der Erfindung.
  • DETAILLIERTE BESCHREIBUNG
  • In der folgenden Beschreibung sind zahlreiche spezielle Details angegeben, um ein gründlicheres Verständnis der vorliegenden Erfindung zu ermöglichen. Der Fachmann erkennt jedoch, dass die vorliegende Erfindung ohne eines oder mehrere dieser speziellen Details in die Praxis umgesetzt werden kann. In anderen Fällen sind gut bekannte Merkmale nicht beschrieben, um eine Verdunkelung der vorliegenden Erfindung zu vermeiden.
  • Überblick über die Hardware
  • 1 zeigt eine Architektur eines Systems 100, in der Ausführungsformen der vorliegenden Erfindung eingerichtet werden können. Diese Figur beabsichtigt weder eine Einschränkung des Schutzbereichs der vorliegenden Erfindung noch stellt sie eine Einschränkung war. Das System 100 kann ein Personalcomputer, eine Video-Spielekonsole, ein persönlicher digitaler Assistent, eine Bilderzeugungseinheit oder ein anderes Gerät sein, das zur Umsetzung einer oder mehrere Ausführungsformen der vorliegenden Erfindung geeignet ist.
  • Wie gezeigt, umfasst das System 100 eine zentrale Recheneinheit (CPU) 102 und einen Systemspeicher 104, die über einen Buspfad miteinander in Verbindung stehen, der eine Speicherbrücke 105 beinhalten kann. Die CPU 102 enthält einen oder mehrere Verarbeitungskerne und während des Betriebs ist die CPU 102 der übergeordnete Prozessor des Systems 100, der den Betrieb anderer Systemkomponenten überwacht und koordiniert. Der Systemspeicher 104 enthält Software-Anwendungen und Daten zur Verwendung durch die CPU 102. Die CPU 102 arbeitet die Software-Anwendungen und optional ein Betriebssystem ab. Die Speicherbrücke 105, die beispielsweise ein Nordbrücken-Chip sein kann, ist über einen Bus oder einen anderen Kommunikationspfad (beispielsweise eine HyperTransport-Verbindung) mit einer I/O-(Eingangs/Ausgangs-)Brücke 107 verbunden. Die I/O-Brücke 107, die beispielsweise ein Südbrücken-Chip sein kann, empfängt eine Eingabe eines Anwenders aus einer oder mehreren Anwendereingabeeinrichtungen 108 (beispielsweise Tastatur, Maus, Joystick, digitalisierende Tabletts, berührungsempfindliche Auflage, berührungsempfindliche Bildschirme, Kameras für Videobilder oder unbewegte Bilder, Bewegungssensoren, und/oder Mikrofone) und leitet die Eingabe an die CPU 102 über die Speicherbrücke 105 weiter.
  • Ein Anzeigeprozessor 112 ist mit der Speicherbrücke 105 über einen Bus oder einen anderen Kommunikationspfad (beispielsweise PCI-Express, beschleunigter Graphikport oder HyperTransport-Verbindung) verbunden; in einer Ausführungsform ist der Anzeigeprozessor 112 ein Grafik-Subsystem, das mindestens eine grafische Verarbeitungseinheit (GPU) und einen Grafikspeicher enthält. Der Grafikspeicher enthält einen Anzeigespeicher (beispielsweise einen Blockpuffer bzw. Bildpuffer), der zur Speicherung von Pixeldaten für jedes Pixel eines Ausgabebilds verwendet wird. Der Grafikspeicher kann in der gleichen Einrichtung wie die GPU integriert sein, kann als eine separate Einrichtung mit der GPU verbunden und/oder kann in dem Systemspeicher 104 eingerichtet sein.
  • Der Anzeigeprozessor 112 liefert regelmäßig Pixel an eine Anzeigeeinrichtungen 110 (beispielsweise ein Bildschirm oder eine konventionelle CRT, ein plasmagestützter Monitor oder Fernseher oder ein Monitor oder Fernsehgerät auf Basis von OLED, SED oder LCD). Ferner kann der Anzeigeprozessor 112 Pixel an die Aufzeichnungseinrichtung ausgeben, die ausgebildet sind, computererzeugte Bilder auf fotografischen Film zu reproduzieren. Der Anzeigeprozessor 112 kann die Anzeigeeinrichtungen 110 mit einem analogen oder digitalen Signal versorgen.
  • Eine Systemdiskette 114 ist ebenfalls mit der I/O-Brücke 107 verbunden und kann ausgebildet sein, Inhalte und Anwendungen und Daten zur Verwendung durch die CPU 102 und den Anzeigeprozessor 112 zu speichern. Die Systemdiskette 114 stellt einen nicht-flüchtigen Speicher für Anwendungen und Daten bereit und kann fest installierte oder entfernbare Festplattenlaufwerke, Flash-Speichereinrichtungen und CD-ROM, DVD-ROM, Blu-ray, HD-DVD oder andere magnetische, optische oder Halbleiterspeichereinrichtungen umfassen.
  • Ein Schalter bzw. Verteiler 116 stellt Verbindungen zwischen der I/O-Brücke 107 und weiteren Komponenten, etwa einem Netzwerkadapter 118 und diversen Zusatzkarten 120 und 121 bereit. Der Netzwerkadapter 118 ermöglicht es dem System 100, mit anderen Systemen über ein elektronisches Kommunikationsnetzwerk in Verbindung zu treten, und kann dabei eine verdrahtete oder drahtlose Kommunikation über Nahbereichsnetzwerke und Weitbereichsnetzwerke, etwa das Internet, beinhalten.
  • Andere Komponenten (nicht gezeigt), wozu USB-Verbindungen oder andere Port-Verbindungen, Filmaufzeichnungseinrichtungen und dergleichen gehören, können ebenfalls mit der I/O-Brücke 107 verbunden sein. Beispielsweise kann ein Audio-Prozessor verwendet werden, um analoge oder digitale Audio-Ausgangssignale aus Befehlen und/oder Daten, die von der CPU 102, dem Systemspeicher 104 oder der Systemdiskette 114 bereitgestellt werden, zu erzeugen. Kommunikationspfade, die die in 1 dargestellten diversen Komponenten verbinden, können unter Anwendung geeigneter Protokolle eingerichtet werden, etwa PCI (periphere Komponenten-Verbindung), PCI-Express (PCI-E), AGP (beschleunigter Graphikport), HyperTransport, oder durch andere Bus- oder Punkt-zu-Punkt-Kommunikationsprotokolle, und Verbindungen zwischen unterschiedlichen Geräten können unterschiedliche Protokolle benutzen, wie dies auf diesem Gebiet der Technik bekannt ist.
  • In einer Ausführungsform enthält der Anzeigeprozessor 112 eine Schaltung, die für die Grafik- und Videoverarbeitung optimiert ist, wozu beispielsweise eine Videoausgabeschaltung gehört, und die eine grafische Verarbeitungseinheit (GPU) bildet. In einer weiteren Ausführungsform enthält der Anzeigeprozessor 112 eine Schaltung, die für eine Verarbeitung für Allgemeinzwecke optimiert ist. In einer noch weiteren Ausführungsform kann der Anzeigeprozessor 112 zusammen mit einem oder mehreren anderen Systemelementen integral aufgebaut sein, etwa mit der Speicherbrücke 105, der CPU 102 und der I/O-Brücke 107, um ein System auf einem Chip (SoC) zu bilden. In noch weiteren Ausführungsformen ist der Anzeigeprozessor 112 nicht vorhanden und Software, die von der CPU 102 abgearbeitet wird, führt die Funktionen des Anzeigeprozessors 112 aus.
  • Pixeldaten können dem Anzeigeprozessor 112 direkt aus der CPU 102 zugeleitet werden. In einigen Ausführungsformen der vorliegenden Erfindung werden Befehle und/oder Daten, die eine Szene darstellen, einer Gruppe von Bilderzeugungseinrichtungen oder einer Gruppe von Dienstleister-Computern zugeleitet, die jeweils ähnlich dem System 107 sind, wobei dies über den Netzwerkadapter 118 oder die Systemdiskette 114 erfolgt. Die Gruppe aus Bilderzeugungseinrichtungen bildet ein oder mehrere erzeugte Bilder der Szene unter Anwendung der bereit gestellten Befehle und/oder Daten. Diese erzeugten bzw. computererzeugten Bilder können auf computerlesbaren Medien in einem digitalen Format gespeichert und optional in das System 100 zur Darstellung zurückgespeist werden. In ähnlicher Weise können Stereo-Bildpaare, die von dem Anzeigeprozessor 112 verarbeitet werden, anderen Systemen zur Anzeige zugeleitet werden, können in der Systemdiskette 114 gespeichert werden, oder können auf computerlesbaren Medien in digitaler Form gespeichert werden.
  • Alternativ versorgt die CPU 102 den Anzeigeprozessor 112 mit Daten und/oder Befehlen, die die gewünschten Ausgabebilder festlegen, wovon der Anzeigeprozessor 112 die Pixeldaten eines oder mehrerer Ausgabebilder erzeugt, wozu die Kennzeichnung und/oder Einstellung des Abstands zwischen Stereo-Bildpaaren gehört. Die Daten und/oder Befehle, die die gewünschten Ausgabebilder festlegen, können in dem Systemspeicher 104 oder in dem Grafikspeicher innerhalb des Anzeigeprozessors 112 gespeichert sein. In einer Ausführungsform hat der Anzeigeprozessor 112 die Fähigkeit der 3D-Bilderzeugung, um Pixeldaten für Ausgabebilder aus Befehlen und Daten zu erzeugen, die die Geometrie, die Beleuchtungsschattierung, die Oberflächenbeschaffenheit, Bewegung und/oder Kameraparameter für die Szene festlegen. Der Anzeigeprozessor 112 kann ferner eine oder mehrere programmierbare Ausführungseinheiten enthalten, die in der Lage sind, Schattierungsprogramme, Farbtonzuordnungsprogramme, und dergleichen auszuführen.
  • Die CPU 102, die Gruppe der Bilderzeugungseinrichtungen und/oder der Anzeigeprozessor 112 können beliebige Oberflächen- oder Volumenbilderzeugungstechniken anwenden, die im Stand der Technik bekannt sind, um ein oder mehrere erzeugte Bilder aus dem bereitgestellten Daten und Befehlen zu erzeugen, wozu die Rastereinteilung, die Abtastlinien-Bilderzeugung RGYGS oder die Mikro-Polygon-Bilderzeugung, der Strahlenwurf, die Strahlverfolgung, bildbasierte Erzeugenstechniken und/oder Kombinationen dieser und anderer Bilderzeugungstechniken oder Bildverarbeitungstechniken, die im Stand der Technik bekannt sind, gehören.
  • Zu beachten ist, dass das hierin gezeigte System anschaulicher Natur ist und dass Variationen und Modifizierungen möglich sind. Die Verbindungstopologie einschließlich der Anzahl und der Anordnung von Brücken, kann nach Bedarf modifiziert werden. Beispielsweise ist in einigen Ausführungsformen der Systemspeicher 104 direkt mit der CPU 102 anstatt über eine Brücke verbunden, und andere Geräte kommunizieren mit dem Systemspeicher 104 über die Speicherbrücke 105 und die CPU 102. In anderen alternativen Topologien ist der Anzeigeprozessor 112 mit der I/O-Brücke 107 oder direkt mit der CPU 102 anstatt mit der Speicherbrücke 105 verbunden. In noch anderen Ausführungsformen können die I/O-Brücke 107 und die Speicherbrücke 105 gemeinsam in einem einzelnen Chip integriert sein. Die speziellen hierin gezeigten Komponenten sind optional; beispielsweise kann eine beliebige Anzahl an Zusatzkarten oder peripheren Geräten unterstützt werden. In einigen Ausführungsformen ist der Schalter bzw. Verteiler 116 weggelassen, und der Netzwerkadapter 118 und die Zusatzkarten 120, 121 sind direkt mit der I/O-Brücke 107 verbunden.
  • Überblick über die Software
  • 1B ist eine detailliertere Darstellung des Systemspeichers 104 aus 1A gemäß einer Ausführungsform der Erfindung. Wie gezeigt, enthält der Systemspeicher 104 eine mehrskalige bzw. mehrfach skalierte Dateneinheit 130, die ausgebildet ist, auf einen mehrskaligen 3D-Datensatz 132 zuzugreifen. Der mehrskalige 3D-Datensatz 132 repräsentiert eine 3D-Umgebung, die beobachtbare Eigenschaften in mehreren unterschiedlichen Skalen bzw. Skalierung aufweisen kann.
  • Beispielsweise kann der mehrskalige 3D-Datensatz 132 ein georäumlicher Datensatz sein, der ein 3D-Modell des Planeten Erde darstellt. In diesem Beispiel könnte der mehrskalige 3D-Datensatz 132 eine große Kugel, die die Erde repräsentiert, enthalten, was einer „planetarischen” Skala bzw. Skalierung entspricht. Ferner könnte der mehrskalige 3D-Datensatz 132 Gruppen aus 3D-Rechtecken enthalten, die auf der Oberfläche der Kugel angeordnet sind, und Städte repräsentieren, was einer „städtischen” Skala entspricht. Innerhalb einer gegebenen „Stadt” kann jedes „Gebäude” diverse Gebäudeelemente, etwa beispielsweise Säulen, Balken, Treppen oder Fenster enthalten, was einer „Gebäudeskala bzw. Gebäudeskalierung” entspricht. Der Fachmann erkennt, dass der mehrskalige 3D-Datensatz 132 eine beliebige Art einer 3D-Umgebung repräsentieren kann und dies kann unter Anwendung einer Fülle von möglichen Datenstrukturen und/oder Datenformaten bewerkstelligt werden.
  • In einer Ausführungsform repräsentiert der mehrskalige 3D-Datensatz 132 eine 3D-Umgebung auf der Grundlage von Daten, die aus einer Datenbank eines geographischen Informationssystems (GIS) abgeleitet sind. Beispielsweise könnte der mehrskalige 3D-Datensatz 132 eine 3D-Höhenkarte repräsentieren, wobei jeder Punkt in der Karte eine einzigartige GIS-Markierung aufweist. Der mehrskalige 3D-Datensatz 132 kann auch eine andere Datenstruktur und/oder ein anderes Datenformat einrichten, um jeweils eine unterschiedliche Skalierung innerhalb der 3D-Umgebung darzustellen. Beispielsweise könnte der mehrskalige 3D-Datensatz 132 ein 3D-Modell einer Stadt als diverse Punktwolken repräsentieren, wovon jede einem anderen Gebäude in der Stadt entspricht. Jede Punktwolke könnte auf „planetarischer” Skala unter Anwendung von GIS-Daten positioniert werden. Auf einer kleineren „Gebäudeskala” könnten die Punkte innerhalb einer gegebenen Punktwolke relativ zu der GIS-Markierung dieser Punktwolke festgelegt werden.
  • Der mehrskalige 3D-Datensatz 132 kann eine 3D-Umgebung unter Anwendung eines oder mehrerer unterschiedlicher 3D-Datensätze repräsentieren, wovon jeder einer anderen Skala dieser 3D-Umgebung entspricht. In einigen Ausführungsformen ist jeder 3D-Datensatz innerhalb des mehrskaligen 3D-Datensatzes 132 mit den anderen 3D-Datensätzen auf einer Stufe oder ist innerhalb des mehrskaligen 3D-Datensatzes 132 relativ zu anderen 3D-Datensätzen eingebettet. Wie nachfolgend weiter beschrieben ist, kann auf die mit dem mehrskaligen 3D-Datensatz 132 verknüpfte 3D-Umgebung von einem Endanwender unter Anwendung einer mehrskaligen Dateneinheit bzw. Datenverarbeitungseinheit 130 zugegriffen werden.
  • Die mehrskalige Dateneinheit 130 enthält eine Visualisierungseinheit 134, eine Abfrageeinheit 136 und eine Navigationseinheit 138, wovon jede ausgebildet ist, diverse Verarbeitungsaufgaben an dem mehrskaligen 3D-Datensatz 132 auszuführen. Ein Endanwender kann Befehle an die diversen Einheiten in der mehrskaligen Dateneinheit 130 über die Eingabeeinrichtungen 108 ausgegeben und kann eine Ausgabe, die von diesen Einheiten erzeugt ist, über die Anzeigeeinrichtungen 110 empfangen. Wie nachfolgend in Verbindung mit den 2 und 10 detaillierter beschrieben ist, ist die Visualisierungseinheit 134 ausgebildet, eine 3D-Umgebung auf der Grundlage des mehrskaligen 3D-Datensatzes 132 zur Ausgabe an die Anzeigeeinrichtungen 110 zu erzeugen. Die Abfrageeinheit 136 ist ausgebildet, 3D-Objekte innerhalb des mehrskaligen 3D-Datensatzes 132 auf der Grundlage von Abfragen zu ermitteln, die von einem Endanwender über die Eingabeeinrichtungen 108 empfangen werden, wie dies nachfolgend in Verbindung mit den 2 und 11 detaillierter beschrieben ist. Die Navigationseinheit 138 ist ausgebildet, diverse Navigation-GUIs s auf der Grundlage des mehrskaligen 3D-Datensatzes 132 zu erzeugen, um es einem Endanwender zu ermöglichen, in der mit dem mehrskaligen Datensatz 132 verknüpften 3D-Umgebung zu navigieren, wie dies nachfolgend in Verbindung mit den 39 und 12 detaillierter beschrieben ist.
  • Visualisierung, Abfrage und Navigation für mehrskalige 3D-Datensätze
  • 2 zeigt die Perspektive einer dritten Person für diverse Elemente, die in einer 3D-Szene 200 gemäß einer Ausführungsform der Erfindung vorhanden sind. Die 3D-Szene 200 kann eine aktuelle Aufnahme einer dritten Person der 3D-Umgebung repräsentieren, die mit dem mehrskaligen 3D-Datensatz 132 verknüpft ist, wie dies zuvor in Verbindung mit 1B beschrieben ist. Wie gezeigt, enthält die 3D-Szene 200 3D-Objekte 202, 204 und 206, sowie eine Kamera 208. Die Visualisierungseinheit 134, die zuvor in Verbindung mit 1B beschrieben ist, ist ausgebildet, ein Bild zur Anzeige für einen Endanwender aus der Perspektive der Kamera 208 zu erzeugen.
  • Die Visualisierungseinheit 134 ist ferner ausgebildet, eine „räumliche Hierarchie” von 3D-Objekten innerhalb der 3D-Umgebung zu erzeugen, indem die 3D-Objekte auf der Grundlage von räumlichen Eigenschaften, die mit diesen Objekten verknüpft sind, selektiv gruppiert werden. Auf diese Weise kann die Visualisierungseinheit 134 die 3D-Umgebung „aufräumen”, indem die Anzahl sichtbarer 3D-Objekte reduziert wird, wie dies hierin beispielhaft beschrieben ist.
  • Die Visualisierungseinheit 134 ist ausgebildet, zwei oder mehr der 3D-Objekte 202, 204 und 206 auf der Grundlage der linearen Abstände zwischen diesen Objekten, den Winkelabständen zwischen diesen Objekten relativ zu der Kamera 208 und/oder auf der Grundlage der Abstände zwischen diesen Objekten und der Kamera 210 zu gruppieren. In der 3D-Szene 200 repräsentiert δ1 den linearen Abstand zwischen den 3D-Objekten 202 und 204, δ2 repräsentiert den linearen Abstand zwischen den 3D-Objekten 204 und 206, ☐1 repräsentiert den Winkelabstand zwischen den 3D-Objekten 202 und 204, und ☐2 repräsentiert den Winkelabstand zwischen den 3D-Objekten 204 und 206. Des weiteren repräsentieren δ3, δ4 und δ5 die Abstände entsprechend zwischen den 3D-Objekten 202, 204 und 206 und der Kamera 208.
  • In einer Ausführungsform der Erfindung kann die Visualisierungseinheit 134 ausgebildet sein, zwei oder mehr der 3D-Objekte 202, 204 und 206 zu gruppieren, wenn der lineare Abstand zwischen diesen Objekten kleiner als ein gegebener linearer Schwellwert ist. Wenn beispielsweise δ1 kleiner als der lineare Schwellwert ist, dann würde die Visualisierungseinheit 134 die 3D-Objekte 202 und 204 in einer Gruppe zusammenfassen.
  • In einer weiteren Ausführungsform der Erfindung kann die Visualisierungseinheit 134 ausgebildet sein, zwei oder mehr der 3D-Objekte 202, 224 und 206 zu gruppieren, wenn der Winkelabstand zwischen diesen Objekten relativ zu der Kamera 208 kleiner als ein gegebener Winkelschwellwert ist. Wenn beispielsweise ☐2 kleiner als der Winkelschwellwert ist, dann würde die Visualisierungseinheit 134 die 3D-Objekte 204 und 206 in eine Gruppe zusammenfassen.
  • In einer noch weiteren Ausführungsform der Erfindung kann die Visualisierungseinheit 134 ausgebildet sein, zwei oder mehr der 3D-Objekte 202, 204 und 206 auf der Grundlage einer beliebigen Kombination aus linearen Abständen zwischen den 3D-Objekten, aus Winkelabständen zwischen den 3D-Objekten relativ zu der Kamera 208 oder dem Abstand zwischen jedem 3D-Objekt und der Kamera 208 in Gruppen zu unterteilen.
  • Wenn ein Bild für die Anzeige erzeugt wird, kann die Visualisierungseinheit 134 Gruppen aus 3D-Objekten als ein einzelnes 3D-Objekt repräsentieren, das wiederum die Gruppe repräsentiert. Wenn beispielsweise die 3D-Objekte 202 und 204 als Gruppe zusammengefasst sind, könnte die Visualisierungseinheit 134 ein einzelnes 3D-Objekt erzeugen, das diese Gruppe repräsentiert. Auf diese Weise kann die Visualisierungseinheit 134 die Komplexität einer 3D-Szene, die zahlreiche 3D-Objekte enthält, verringern. Der Fachmann erkennt, dass die Visualisierungseinheit 134 eine beliebige Anzahl an 3D-Objekten auf der Grundlage einer breiten Fülle räumlicher Eigenschaften, die mit diesen 3D-Objekten verknüpft sind, in Gruppen zusammenfassen kann, und dass die zuvor beschriebenen Beispiele nur anschaulichen Zwecken dienen.
  • Es sei wiederum auf die 3D-Szene 200 der 2 verwiesen; die Abfrageeinheit 136 ist ausgebildet, ein oder mehrere der 3D-Objekte 202, 204 und 206 auf der Grundlage der räumlichen Eigenschaften, die mit diesen Objekten verknüpft sind, zu erkennen. Durch diese Technik ermöglicht es die Abfrageeinheit 136 dem Endanwender, eine Suche nach 3D-Objekten auszuführen, die mit dem mehrskaligen 3D-Datensatz 132 verknüpft sind, um spezielle 3D-Objekte zu ermitteln, die Suchkriterien entsprechen. Beispielsweise könnte der Endanwender den Wunsch haben, nach 3D-Objekten zu suchen, die innerhalb einer gewissen Entfernung zu der Kamera 208 angeordnet sind. Wenn diese Entfernung kleiner ist als δ5 aber größer als δ3 und δ4, dann könnte die Abfrageeinheit 136 das 3D-Objekt 206 für den Endanwender ermitteln.
  • Die Abfrageeinheit 136 ist ferner ausgebildet, eine Suche an 3D-Objekten, die mit dem mehrskaligen 3D-Datensatz 132 verknüpft sind, auf der Grundlage anderer nicht-räumlicher Eigenschaften dieser 3D-Objekte auszuführen. Beispielsweise kann die Abfrageeinheit 136 ein oder mehrere 3D-Objekte unter anderem auf der Grundlage von Beschreibungen dieser Objekte, ob diese Objekte durch die Visualisierungseinheit 134 gruppiert wurden, oder auf der Grundlage der Skala, mit welcher diese 3D-Objekte vorliegen, ermitteln. Die Abfrageeinheit 136 kann ferner ein oder mehrere 3D-Objekte auf der Grundlage einer beliebigen Kombination unterschiedlicher Eigenschaften, die mit diesen Objekten verknüpft sind, ermitteln. Sobald die Abfrageeinheit 136 ein oder mehrere 3D-Objekte erkannt hat, kann die Abfrageeinheit 136 veranlassen, dass eine Angabe dieser Objekte für den Endanwender angezeigt wird. Der Fachmann erkennt, dass die Abfrageeinheit 136 eine Suche an den mit dem mehrskaligen 3D-Datensatz 132 verknüpften 3D-Objekten auf der Grundlage einer breiten Fülle räumlicher und/oder nicht-räumlicher Eigenschaften ausführen kann, und dass die zuvor beschriebenen Beispiele lediglich anschaulichen Zwecken dienen.
  • Zusätzlich zur Bereitstellung von Techniken für die Visualisierung und die Durchsuchung des mehrskaligen 3D-Datensatzes 132 stellt die mehrskalige Dateneinheit 130 diverse Techniken zur Navigation durch die 3D-Umgebung, die durch den mehrskaligen 3D-Datensatz 132 repräsentiert ist, bereit. Insbesondere ist die Navigationseinheit 138 in der mehrskaligen Dateneinheit 130 ausgebildet, diverse Navigations-GUIs zu erzeugen, die es dem Endanwender ermöglichen, durch diese 3D-Umgebung zu navigieren, wie dies in Verbindung mit den 3A bis 9 und 12 nachfolgend detaillierter beschrieben ist.
  • 3A zeigt eine Bildschirmaufnahme 300 einer 3D-Umgebung gemäß einer Ausführungsform der Erfindung. Die Bildschirmaufnahme 300 repräsentiert ein Bild, das durch die Visualisierungseinheit 134 aus der Perspektive der Kamera 208 erzeugt werden kann, wie dies in Verbindung mit 2 beschrieben ist. Die Bildschirmaufnahme 300 repräsentiert die mit dem mehrskaligen 3D-Datensatz 132 verknüpfte 3D-Umgebung und kann dem Endanwender über die Anzeigeeinrichtungen 110 angezeigt werden. Wie gezeigt, enthält die Bildschirmaufnahme 300 einen Cursor 302, einen Richtungskegel 304 und ein 3D-Miniaturbild 306.
  • Die Navigationseinheit 138 ist ausgebildet, den Richtungskegel 304 zu erzeugen, um ein 3D-Objekt außerhalb des Bildschirms in der 3D-Umgebung anzugeben. In der in 3A beispielhaft gezeigten Ausführungsform zeigt das bildschirmexterne Objekt in die obere rechte Richtung hinter der Perspektive, aus der die Bildschirmaufnahme 300 aufgenommen wurde. Wenn der Endanwender jedoch den Cursor 302 über dem Richtungskegel 304 hält, erzeugt die Navigationseinheit 138 das 3D-Miniaturbild 306. Das 3D-Miniaturbild 306 repräsentiert das bildschirmexterne Objekt (in diesem Falle ist das bildschirmexterne Objekt ein Torus). Die Navigationseinheit 138 kann veranlassen, dass das 3D-Miniaturbild 306 sich dreht, um das bildschirmexterne Objekt aus diversen Perspektiven darzustellen, und kann das 3D-Miniaturbild 306 auf eine geeignete Größe skalieren. Wenn ferner ein Endanwender den Richtungskegel 304 unter Verwendung des Cursors 302 auswählt, kann die Navigationseinheit 138 den Endanwender zu dem 3D-Objekt führen, das durch den Richtungskegel 304 dargestellt ist, d. h., die Navigationseinheit 138 kann die Kameraposition, die mit dem Endanwender verknüpft ist, so ändern, dass das 3D-Objekt ein bildschirminternes Objekt wird. Die Navigationseinheit 138 ist ferner ausgebildet, Richtungskegel zu erzeugen, die Gruppen aus 3D-Objekten darstellen, wie dies in Verbindung mit 3B detaillierter nachfolgend beschrieben ist.
  • 3B zeigt eine Bildschirmaufnahme 320 einer 3D-Umgebung gemäß einer Ausführungsform der Erfindung. Wie die Bildschirmaufnahme 300 in 3A kann auch die Bildschirmaufnahme 320 durch die Visualisierungseinheit 134 erzeugt werden, um die mit dem mehrskaligen 3D-Datensatz 132 verknüpfte 3D-Umgebung darzustellen. Wie gezeigt, enthält die Bildschirmaufnahme 320 den Cursor 302, den Richtungskegel 324 und eine segmentierte Scheibe 326. Die segmentierte Scheibe enthält Scheibensegmente 326-1 bis 326-5.
  • Die Navigationseinheit 138 ist ausgebildet, den Richtungskegel 324 zu erzeugen, um eine bildschirmexterne Gruppe aus 3D-Objekten innerhalb der 3D-Umgebung anzugeben. Die bildschirmexterne Gruppe aus 3D-Objekten kann beispielsweise durch die Visualisierungseinheit 134 erzeugt werden. In der in 3B gezeigten anschaulichen Ausführungsform liegt die bildschirmexterne Gruppe aus 3D-Objekten in Richtung der oberen linken Hälfte hinter der Perspektive, aus der die Bildschirmaufnahme 320 aufgenommen wurde. Die Navigationseinheit 138 ist ferner ausgebildet, die segmentierte Scheibe 326 zu erzeugen, um die Anzahl an 3D-Objekten anzugeben, die in der bildschirmexternen Gruppe enthalten ist. Wie gezeigt, gibt die segmentierte Scheibe 326 an, dass fünf Objekte in der bildschirmexternen Gruppe enthalten sind. Die Navigationseinheit 138 kann ferner veranlassen, dass die Anzahl an bildschirmexternen Objekten explizit entlang des Richtungskegels 324 und/oder der segmentierten Scheibe 326 angezeigt wird.
  • In einer Ausführungsform kann die Navigationseinheit 138 veranlassen, dass der Richtungskegel 324 mit einer einzigartigen Farbe und/oder Oberflächenbeschaffenheit relativ zu anderen Richtungskegeln dargestellt wird, die nicht mit Gruppen von Objekten verknüpft sind (beispielsweise etwa der Richtungskegel 304 aus 3A). Durch diese Technik unterscheidet die Navigationseinheit 138 zwischen Richtungskegeln, die Gruppen aus 3D-Objekten angeben, und Richtungskegeln, die einzelne 3D-Objekte angeben.
  • Wenn ein Endanwender den Cursor 302 über dem Richtungskegel 324 hält, kann die Navigationseinheit 138 veranlassen, dass diverse 3D-Miniaturbilder dargestellt werden, die die 3D-Objekte innerhalb der bildschirmexternen Gruppe repräsentieren, und kann diese 3D-Miniaturbilder auf eine geeignete Größe skalieren. Wenn ferner ein Endanwender den Richtungskegel 324 durch Verwendung des Cursors 302 auswählt, kann die Navigationseinheit 138 den Endanwender zu der Gruppe aus 3D-Objekten navigieren, d. h., die Navigationseinheit 138 kann die mit dem Endanwender verknüpfte Kameraposition so ändern, dass die Gruppe aus 3D-Objekten auf dem Bildschirm liegt.
  • Die Navigationseinheit 138 ist ferner ausgebildet, einen oder mehrere Richtungskegel aufzunehmen, beispielsweise einen oder mehrere Richtungskegel 304 und/oder 324, wie sie zuvor beschrieben sind, in Verbindung mit diversen anderen grafischen Elementen, um unterschiedliche „Navigations-GUIs” zu erzeugen, wie dies nachfolgend in Verbindung mit den 49 detaillierter beschrieben ist.
  • 4 zeigt eine Bildschirmaufnahme 400 der 3D-Umgebung, die mit dem mehrskalierten 3D-Datensatz 132 verknüpft ist, gemäß einer Ausführungsform der Erfindung. Wie gezeigt, enthält die Bildschirmaufnahme 400 einen Kegelring 402. Der Kegelring 402 ist eine „Navigations-GUI”, die von der Navigationseinheit 138 erzeugt ist, wie dies zuvor beschrieben ist. Der Kegelring 402 enthält Richtungskegel 404, 406, 408, 410 und 412, die entlang einer zweidimensionalen (2D) kreisförmigen Grenze 414 angeordnet sind. Die kreisförmige Grenze 414 ist in der Bildschirmaufnahme 400 lediglich so gezeigt, dass diese die bevorzugte Verteilung der Richtungskegel innerhalb des Kegelrings 402 darstellt und ist im allgemeinen für einen Endanwender nicht sichtbar.
  • Die Navigationseinheit 138 ist ausgebildet, den Kegelring 402 zu erzeugen, um damit 3D-Objekte und/oder Gruppen aus 3D-Objekten anzugeben, die aktuell außerhalb des Bildschirms sind, d. h. 3D-Objekte, die für einen Endanwender nicht sichtbar sind. Jeder Richtungskegel, der in dem Kegelring 402 enthalten ist, ist im wesentlichen ähnlich zu dem Richtungskegel 304 oder dem Richtungskegel 324, wie sie zuvor in Verbindung mit den 3A bzw. 3B beschrieben sind. Beispielsweise repräsentieren die Richtungskegel 406, 408 und 410 einzelne bildschirmexterne 3D-Objekte in ähnlicher Weise wie der Richtungskegel 304 aus 3A. Ferner repräsentieren die Richtungskegel 404 und 412 Gruppen aus bildschirmexternen 3D-Objekten in ähnlicher Weise wie der Richtungskegel 324 aus 3B. Ähnlich wie bei den Richtungskegeln 304 und 324 kann ein Endanwender den Cursor 302 über einem der Richtungskegel in dem Kegelring 402 halten, und in Reaktion darauf kann die Navigationseinheit 138 ein oder mehrere 3D-Miniaturbilder darstellen. Ferner kann ein Endanwender einen der Richtungskegel in dem Kegelring 402 auswählen, und in Reaktion darauf kann die Navigationseinheit 138 den Endanwender zu dem 3D-Objekt oder zu der Gruppe aus Objekten, die durch diesen Richtungskegel repräsentiert sind, navigieren.
  • Die Navigationseinheit 138 ist ausgebildet, den Kegelring 402 in der 3D-Umgebung unter einem gegebenen Abstand zu dem Endanwender zu positionieren, d. h. unter einem gegebenen Abstand zu der Kameraposition, die mit dem Endanwender verknüpft ist. Dieser Abstand kann gegebenenfalls konfigurierbar sein auf der Grundlage einer Eingabe, die von dem Endanwender erhalten wird. Die Navigationseinheit 138 ist ferner ausgebildet, den Kegelring 402 mit einer kreisförmigen Grenze 414 zu erzeugen, die einen konfigurierbaren Radius besitzt. In einer Ausführungsform ermittelt die Navigationseinheit 138 die Position und die Orientierung jedes Richtungskegels innerhalb des Kegelrings 402 auf der Grundlage der aktuellen Position des Endanwenders innerhalb der 3D-Umgebung. In einer weiteren Ausführungsform kann die Navigationseinheit 138 die Position und die Orientierung jedes Richtungskegels innerhalb des Kegelrings 402 auf der Grundlage der aktuellen Position des Kegelrings 402 in der 3D-Umgebung ermitteln.
  • In einer noch weiteren Ausführungsform kann die Navigationseinheit 138 die Position und die Orientierung jedes Richtungskegels innerhalb des Kegelrings 402 in Reaktion auf eine Änderung der Position des Endanwenders und/oder in Reaktion auf eine Änderung der Position des Kegeldings 402 dynamisch ändern. Wenn die Navigationseinheit 138 die Position eines gegebenen Richtungskegels innerhalb des Kegelrings 402 ändert, so ist der Richtungskegel im allgemeinen auf eine Bewegung entlang der kreisförmigen Grenze 414 beschränkt. Wenn ferner die Navigationseinheit 138 die Orientierung eines gegebenen Richtungskegels innerhalb des Kegelrings 402 ändert, ist dieser Richtungskegel im allgemeinen dahingehend beschränkt, dass er in Richtung auf die Mitte des Kegelrings 402 oder von diesem Zentrum weg weist.
  • Die Navigationseinheit 138 ist ferner ausgebildet, weitere Richtungskegel dem Kegelring 402 hinzuzufügen, wenn ein bildschirminternes Objekt sich nach außerhalb des Bildschirms bewegt. In dieser Situation fügt die Navigationseinheit 138 einen Richtungskegel hinzu, der das bildschirmexterne Objekt angibt. In einer Ausführungsform kann die Navigationseinheit 138 Richtungskegel innerhalb des Kegelrings 402 so aufweisen, dass sowohl bildschirmexterne als auch bildschirminterne Objekte angegeben werden. In dieser Ausführungsform kann die Navigationseinheit 138 einen Richtungskegel bereitstellen, der in Richtung auf die Mitte des Kegelrings 402 zeigt, wenn ein 3D-Objekt innerhalb der kreisförmigen Grenze 414 vorhanden ist.
  • In einer weiteren Ausführungsform kann die Navigationseinheit 138 ermitteln, ob ein 3D-Objekt (oder eine Gruppe aus 3D-Objekten) mit einem Richtungskegel auf der Grundlage der Position dieses 3D-Objekts (oder dieser Gruppe aus 3D-Objekten) anzugeben ist. Wenn beispielsweise ein gegebenes 3D-Objekt ausreichend weit von der aktuellen Position des Endanwenders entfernt ist, dann enthält die Navigationseinheit 138 gegebenenfalls keinen Richtungskegel, der dieses 3D-Objekt innerhalb des Kegelrings 402 angibt.
  • Wie nachfolgend in Verbindung mit 5 detaillierter beschrieben ist, ist die Navigationseinheit 138 ferner ausgebildet, eine „Kegelspären-” Navigations-GUI zu erzeugen, die ähnliche Eigenschaften wie der Kegelring 402, der zuvor beschrieben ist, aufweisen kann.
  • 5 zeigt eine Bildschirmaufnahme 500 der 3D-Umgebung, die mit dem mehrskaligen 3D-Datensatz 132 verknüpft ist, gemäß einer Ausführungsform der Erfindung. Wie gezeigt, enthält die Bildschirmaufnahme 500 eine Kegelsphäre 502. Die Kegelsphäre 502 ist eine Navigations-GUI, die von der Navigationseinheit 138 erzeugt ist und die Richtungskegel 504, 506, 508, 510, 512, 514 und 516 enthält. Die Richtungskegel, die in der Kegelsphäre 502 enthalten sind, sind entlang einer kugelförmigen 3D-Grenze 518 angeordnet. Die kugelförmige Grenze 518 ist in der Bildschirmaufnahme 500 lediglich so gezeigt, dass sie die bevorzugte Verteilung der Richtungskegel innerhalb der Kegelsphäre 502 angibt und ist im allgemeinen für einen Endanwender nicht sichtbar.
  • Wie bei dem zuvor beschriebenen Kegelring 402 ist die Navigationseinheit 138 ausgebildet, die Kegelsphäre 502 so zu erzeugen, dass 3D-Objekte und/oder Gruppen aus 3D-Objekten angegeben werden, die aktuell außerhalb des Bildschirms liegen, d. h. 3D-Objekte, die für einen Endanwender nicht sichtbar sind. Jeder Richtungskegel, der in der Kegelsphäre 502 enthalten ist, ist im wesentlichen ähnlich zu dem Richtungskegel 304 oder dem Richtungskegel 324, die zuvor entsprechend in Verbindung mit den 3A bzw. 3B beschrieben sind. Beispielsweise repräsentieren die Richtungskegel 504, 506, 512, 514 und 516 einzelne 3D-Objekte außerhalb des Bildschirms in ähnlicher Weise wie der Richtungskegel 304 aus 3A. Ferner repräsentieren die Richtungskegel 508 und 510 Gruppen aus bildschirmexternen 3D-Objekten in ähnlicher Weise wie der Richtungskegel 324 in 3B. Wie bei den Richtungskegeln 304 und 324 kann ein Endanwender den Cursor 302 über einem Richtungskegel innerhalb des Kegelrings 402 halten, und in Reaktion darauf kann die Navigationseinheit 138 ein oder mehrere 3D-Miniaturbilder anzeigen. Ferner kann ein Endanwender einen der Richtungskegel innerhalb des Kegelrings 402 auswählen, und in Reaktion darauf kann die Navigationseinheit 138 den Endanwender zu dem 3D-Objekt oder zu der Gruppe aus Objekten, die durch diesen Richtungskegel repräsentiert sind, navigieren.
  • Die Navigationseinheit 138 ist ausgebildet, die Kegelsphäre 502 innerhalb der 3D-Umgebung unter einem gegebenen Abstand zu dem Endanwender zu positionieren, d. h. unter einem gegebenen Abstand zu der Kameraposition, die mit dem Endanwender verknüpft ist. Dieser Abstand kann auf der Grundlage einer Eingabe, die von dem Endanwender eingegeben wird, konfigurierbar sein. Die Navigationseinheit 138 ist ferner ausgebildet, die Kegelsphäre 502 mit einer kugelförmigen Grenze 518 zu erzeugen, die einen konfigurierbaren Radius besitzt. In einer Ausführungsform ermittelt die Navigationseinheit 138 die Position und die Orientierung jedes Richtungskegels innerhalb der Kegelsphäre 502 auf der Grundlage der aktuellen Position des Endanwenders innerhalb der 3D-Umgebung. In einer weiteren Ausführungsform kann die Navigationseinheit 138 die Position und die Orientierung jedes Richtungskegels innerhalb der Kegelsphäre 502 auf der Grundlage der aktuellen Position der Kegelsphäre 502 innerhalb der 3D-Umgebung ermitteln.
  • In einer noch weiteren Ausführungsform kann die Navigationseinheit 138 die Position und die Orientierung jedes Richtungskegels innerhalb der Kegelsphäre 502 in Reaktion auf eine Änderung der Position des Endanwenders und/oder eine Änderung der Position der Kegelsphäre 502 dynamisch ändern. Wenn die Navigationseinheit 138 die Position eines gegebenen Richtungskegels innerhalb der Kegelsphäre 502 ändert, ist dieser Richtungskegel im allgemeinen auf eine Bewegung entlang der kugelförmigen Grenze 518 beschränkt. Wenn ferner die Navigationseinheit 138 die Orientierung eines gegebenen Richtungskegels innerhalb der Kegelsphäre 502 ändert, ist dieser Richtungskegel generell so beschränkt, dass er in Richtung zu oder von dem Mittelpunkt der Kegelsphäre 502 weg zeigt.
  • Die Navigationseinheit 138 ist ferner ausgebildet, weitere Richtungskegel der Kegelsphäre 502 hinzuzufügen, wenn sich ein Objekt von innerhalb des Schirms nach außerhalb des Schirms bewegt. In dieser Situation fügt die Navigationseinheit 138 einen Richtungskegel hinzu, der das bildschirmexterne Objekt kennzeichnet. In einer Ausführungsform kann die Navigationseinheit 138 Richtungskegel innerhalb der Kegelsphäre 502 enthalten, um sowohl bildschirmexterne als auch bildschirminterne Objekte anzugeben. In dieser Ausführungsform kann die Navigationseinheit 138 einen Richtungskegel bereitstellen, der in Richtung auf den Mittelpunkt der Kegelsphäre 502 zeigt, wenn ein 3D-Objekt innerhalb der kugelförmigen Grenze 518 liegt.
  • In einer weiteren Ausführungsform kann die Navigationseinheit 138 bestimmen, ob ein 3D-Objekt (oder eine Gruppe aus 3D-Objekten) mit einem Richtungskegel auf der Grundlage der Position dieses 3D-Objekts (oder dieser Gruppe aus 3D-Objekten) anzugeben ist. Wenn beispielsweise ein gegebenes 3D-Objekt ausreichend weit von der aktuellen Position des Endanwenders entfernt ist, dann enthält die Navigationseinheit 138 gegebenenfalls keinen Richtungskegel innerhalb der Kegelsphäre 502, der das 3D-Objekt bezeichnet.
  • Die Navigationseinheit 138 ist ausgebildet, eine 2D-Darstellung der Kegelsphäre 502 zu erzeugen, indem die Oberfläche der Kegelsphäre 502 in eine 2D-Ebene umgewandelt wird, wie dies in Verbindung mit 5 nachfolgend detaillierter beschrieben ist.
  • 6 zeigt eine Bildschirmaufnahme 600 der mit dem mehrskaligen 3D-Datensatz 132 verknüpften 3D-Umgebung gemäß einer Ausführungsform der Erfindung. Wie gezeigt, enthält die Bildschirmaufnahme 600 ein Gitter 602. Die Navigationseinheit 138 erzeugt das Gitter 602 durch Projektion der kugelförmigen Grenze 518 der Kegelsphäre 502 auf eine 2D-Ebene. Das Gitter 602 enthält Richtungskegel 604, 608, 610, 612 und 616. Die Richtungskegel innerhalb des Gitters 602 können direkt Richtungskegeln entsprechen, die auf der Oberfläche der Kegelsphäre 502 angeordnet sind.
  • Die Richtungskegel 608, 610 und 616 repräsentieren einzelne 3D-Objekte außerhalb des Bildschirms ähnlich zu dem Richtungskegel 304 der Figur Ziffer 3A. Des weiteren können die Richtungskegel 608, 614 und 620 ebenfalls erweiterte Basisobjekte 610, 616 und 618 enthalten. Die erweiterte Basis, die einen gegebenen Richtungskegel umgibt, ist auf der Grundlage des Abstandes zu der aktuellen Position des Endanwenders in Bezug auf das 3D-Objekt, das mit diesem Kegel verknüpft ist, schattiert dargestellt. Auf diese Weise geben die erweiterten Basiselemente 610, 616 und 618 den Abstand zu der aktuellen Position des Endanwenders in Bezug auf die 3D-Objekte an, die mit den Richtungskegeln verknüpft sind, die diesen erweiterten Basiselementen entsprechen.
  • Die Richtungskegel 604 und 612 repräsentieren Gruppen von bildschirmexternen 3D-Objekten ähnlich zu dem Richtungskegel 324 der 3B. Die Richtungskegel 604 und 612 enthalten ferner segmentierte Scheiben 606 bzw. 614. Die segmentierte Scheibe 606 enthält Scheibensegmente 606-1 bis 606-4, wohingegen die segmentierte Scheiben 614 Scheibensegmente 614-1 und 614-2 enthält. Ferner ist, wie die erweiterten Basiselemente 610, 616 und 618, die segmentierte Scheiben, die einen gegebenen Richtungskegel umgibt, auf der Grundlage des Abstandes zu dem 3D-Objekt, das mit diesem Kegel verknüpft ist, schattiert. Auf diese Weise geben die segmentierten Scheiben 606 und 614 den Abstand der mit den Richtungskegeln verknüpften 3D-Objekte entsprechend zu diesen segmentierten Scheiben an. In einer Ausführungsform kann der Endanwender in einen der Richtungskegel 604 oder 614 hineinzoomen, und in Reaktion darauf kann dann die Navigationseinheit 138 3D-Miniaturbilder anzeigen, die den 3D-Objekten innerhalb der Gruppe entsprechen, die durch diesen Richtungskegel repräsentiert ist.
  • Die in Verbindung mit den 46 beschriebenen Navigation-GUIs können zusätzlich erweitert werden, so dass sie Darstellungen von 3D-Objekten und Gruppen aus 3D-Objekten anzeigen, die außerhalb des Bildschirms positioniert sind, wie dies in Verbindung mit den 79 nachfolgend detaillierter beschrieben ist.
  • 7A zeigt eine Bildschirmaufnahme 700 der mit dem mehrskaligen 3D-Datensatz 132 verknüpften 3D-Umgebung gemäß einer Ausführungsform der Erfindung. Wie gezeigt, enthält die Bildschirmaufnahme 700 einen Spiegelball bzw. eine Spiegelkugel 702. Der Spiegelball 702 ist eine weitere Navigation-GUI, die von der Navigationseinheit 138 erzeugt wird. Der Spiegelball 702 besitzt eine reflektierende Oberfläche 704, auf der Bilder von bildschirmexternen Objekten auftreten können. Die reflektierende Oberfläche 704 des Spiegelballs 702 ist in Voronoi-Gebiete 710, 720, 730, 740, 750 und 760 unterteilt. Jedes Voronoi-Gebiet auf der reflektierenden Oberfläche 704 kann ein reflektiertes Bild eines anderen Bereichs der umgebenden 3D-Umgebung anzeigen. Jedes Voronoi-Gebiet kann ferner ein reflektiertes Bild eines 3D-Objekts oder einer Gruppe aus 3D-Objekten anzeigen, die innerhalb des Gebiets der 3D-Umgebung liegen, die diesem Voronoi-Gebiet entspricht. Beispielsweise reflektiert das Voronoi-Gebiet 760 ein Bild 764 eines Balls bzw. einer Kugel außerhalb des Bildschirms. In ähnlicher Weise reflektiert das Voronoi-Gebiet 750 ein Bild 752 eines außerhalb des Bildschirms liegenden Torus. Die Navigationseinheit 138 ist ausgebildet, Bilder, die von der reflektierenden Oberfläche 704 zurückgeworfen werden, so zu skalieren, dass jedes von der reflektierenden Oberfläche 704 reflektierte Bild eine ähnliche Größe besitzt.
  • Wenn ein gegebenes Voronoi-Gebiet ein Bild der 3D-Umgebung reflektiert, die ein 3D-Objekt oder eine Gruppe aus 3D-Objekten enthält, beinhaltet die Navigationseinheit 138 einen Richtungskegel innerhalb dieses Voronoi-Gebiets. Wie gezeigt, enthält das Voronoi-Gebiet 720 einen Richtungskegel 722, ein Voronoi-Gebiet 740 enthält eine Richtungskegel 742, ein Voronoi-Gebiet 750 enthält einen Richtungskegel 752 und ein Voronoi-Gebiet 760 enthält einen Richtungskegel 762. Der Richtungskegel in einem gegebenen Voronoi-Gebiet kann im wesentlichen ähnlich zu dem Richtungskegel 304 oder dem Richtungskegel 324 sein, die zuvor in Verbindung mit den 3A bzw. 3B beschrieben sind.
  • In einer Ausführungsform ermittelt die Navigationseinheit 138 die Höhe eines Richtungskegels in einem Voronoi-Gebiet auf der Grundlage des Abstands zwischen dem Spiegelball 702 und dem 3D-Objekt oder der Gruppe aus 3D-Objekten, die zu diesem Voronoi-Gebiet gehören, und/oder zwischen der Kameraposition eines Endanwenders innerhalb der 3D-Umgebung. In einer weiteren Ausführungsform ist die Navigationseinheit 138 ausgebildet, jedes Voronoi-Gebiet auf der Grundlage des Abstands zwischen dem Spiegelball 702 und dem 3D-Objekt oder der Gruppe aus 3D-Objekten, die zu diesem Voronoi-Gebiet gehören, und/oder auf der Grundlage der Kameraposition eines Endanwenders innerhalb der 3D-Umgebung zu schattieren. Wie beispielsweise gezeigt ist, erscheinen die Voronoi-Gebiete 740 und 760 schattiert, wodurch angezeigt wird, dass die entsprechenden 3D-Objekte oder die Gruppe aus 3D-Objekten relativ weit von dem Spiegelball 702 entfernt sind.
  • Die Navigationseinheit 138 ist ferner ausgebildet, mehrere Spiegelbälle innerhalb der 3D-Umgebung zu erzeugen, um es damit einem Endanwender zu ermöglichen, Gruppen aus 3D-Objekten zu navigieren, wie dies in Verbindung mit 7B nachfolgend detaillierter erläutert ist.
  • 7B zeigt eine Bildschirmaufnahme 770 der mit dem mehrskaligen 3D-Datensatz 132 verknüpften 3D-Umgebung gemäß einer Ausführungsform der Erfindung. Wie gezeigt, enthält die Bildschirmaufnahme 770 eine Spiegelballkonstellation 788. Die Spiegelballkonstellation 788 ist eine weitere Navigations-GUI, die von der Navigationseinheit 138 erzeugt ist und einen Stammspiegelball 774 und einen Ableger-Spiegelball 778 enthält, die relativ zu einem 3D-Objekt 772 angeordnet sind. Im allgemeinen erlaubt es die Spiegelballkonstellation 788 einem Endanwender, den Ableger-Spiegelball 778 mittels des Stammspiegelballs 774 zu betrachten. Die Spiegelballkonstellation 788 erlaubt es einem Endanwender ferner, das 3D-Objekt 772 über den Ableger-Spiegelball 778 zu betrachten.
  • Die Navigationseinheit 138 ist ausgebildet, den Stammspiegelball 774 und den Ableger-Spiegelball 778 relativ zu dem 3D-Objekt 772 zu erzeugen und zu positionieren, wobei dieses Objekt ein Teil einer größeren Gruppe aus 3D-Objekten sein kann, um eine bessere Betrachtung dieser Gruppe aus 3D-Objekten zu ermöglichen. Eine Grenzlinie 784 gibt die Stamm-Ableger-Abhängigkeit wischen dem Stammspiegelball 774 und dem Ableger-Spiegelball 778 an, während eine Hilfslinie 786 eine Abhängigkeit zwischen dem Ableger-Spiegelball 778 und dem 3D-Objekt 772 angibt. Der Stammspiegelball 774 und der Ableger-Spiegelball 778 sind jeweils im wesentlichen ähnlich zu dem Spiegelball 702, der zuvor in Verbindung mit 7A beschrieben ist. Der Stammspiegelball enthält das Voronoi-Gebiet 776, wohingegen der Ableger-Spiegelball das Voronoi-Gebiet 780 enthält. Wie gezeigt, reflektiert das Voronoi-Gebiet 780 ein Bild 782 des 3D-Objekts 772.
  • Bei Verwendung der Spiegelballkonstellation 788 zum Navigieren durch die 3D-Umgebung verwendet ein Endanwender typischerweise den Stammspiegelball 774, um 3D-Objekte und Gruppen aus 3D-Objekten zu erkennen. Die Navigationseinheit 138 ist ausgebildet, den Stammspiegelball 774 zu veranlassen, Gruppen aus 3D-Objekten zu repräsentieren, wobei dies unter Verwendung des Ableger-Spiegelballs 778 erfolgt. Daher kann das Voronoi-Gebiet 776 ein Bild des Ableger-Spiegelballs 778 reflektieren, der wiederum das 3D-Objekt 772 repräsentieren kann. Auf diese Weise ist die Navigationseinheit 138 ausgebildet, eine räumliche Hierarchie für Stamm-Ableger-Spiegelbälle zu erzeugen. Die Navigationseinheit 138 erlaubt es einem Endanwender ferner, in dieser räumlichen Hierarchie zu navigieren. Beispielsweise könnte ein Endanwender das reflektierte Bild des Ableger-Spiegelballs 778 innerhalb des Stammspiegelballs 774 auswählen, und in Reaktion darauf, würde die Navigationseinheit 138 die Kameraposition des Endanwenders so verschieben, dass diese in Richtung des Ableger-Spiegelballs 778 zeigt. Ferner könnte ein Endanwender dann das Bild 782 auswählen, und in Reaktion darauf würde die Navigationseinheit 138 die Kameraposition des Endanwenders so verschieben, dass diese in Richtung des 3D-Objekts 772 zeigt. In einer Ausführungsform entsprechen jeweils der Stammspiegelball 774 und der Ableger-Spiegelball 778 unterschiedlichen 3D-Datensätzen innerhalb des mehrskaligen 3D-Datensatzes 132.
  • Die Navigationseinheit 138 ist ferner ausgebildet, eine 2D-Darstellung eines Spiegelballs zu erzeugen, indem die Oberfläche dieses Spiegelballs in den 2D-Raum projiziert wird, wie dies nachfolgend detaillierter in Verbindung mit 8 beschrieben ist.
  • 8 zeigt eine Bildschirmaufnahme 800 einer mit dem mehrskaligen 3D-Datensatz 132 verknüpften 3D-Umgebung gemäß einer Ausführungsform der Erfindung. Wie gezeigt, enthält die Bildschirmaufnahme 800 eine entfaltete Oberfläche 802. Die Navigationseinheit 138 erzeugt die entfaltete Oberfläche 802 durch Entfaltung der reflektierenden Oberfläche eines Spiegelballs und durch Projektion dieser reflektierenden Oberfläche auf eine 2D-Ebene. Der Fachmann erkennt, dass die entfaltete Oberfläche 802 auf der Grundlage eines Spiegelballs unter Anwendung beliebiger technisch machbarer Algorithmen zur Entfaltung der Oberfläche einer Kugel erzeugt werden kann. Die entfaltete Oberfläche 802 enthält Voronoi-Gebiete 810, 820, 830, 840, 850, 860, 870, 880 und 890. Die Voronoi-Gebiete 810, 820 und 880 enthalten jeweils entsprechende Richtungskegel 812, 822 und 882.
  • Ein gegebener Richtungskegel, der in einem Voronoi-Gebiet der entfalteten Oberfläche 802 angeordnet ist, gibt ein Objekt oder eine Gruppe aus Objekten an, die mit diesem Voronoi-Gebiet verknüpft sind. Beispielsweise gibt der Richtungskegel 812 ein 3D-Objekt 814 an, der Richtungskegel 822 gibt eine Gruppe aus 3D-Objekten an, die 3D-Objekte 824 und 826 enthalten, und der Richtungskegel 882 bezeichnet ein 3D-Objekt 884. Die Navigationseinheit 138 ist ausgebildet, ein gegebenes 3D-Objekt oder eine Gruppe aus 3D-Objekten, die mit einem gegebenen Richtungskegel verknüpft sind, entsprechend einer speziellen Höhe über diesem Richtungskegel zu positionieren. Die Navigationseinheit 138 ermittelt diese Höhe auf der Grundlage des Abstands zwischen der Kameraposition des Endanwenders und dem 3D-Objekt oder der Gruppe aus 3D-Objekten. Wie bei dem Spiegelball 702, der zuvor in Verbindung mit 7A beschrieben ist, kann ein Endanwender zu speziellen 3D-Objekten oder Gruppen aus 3D-Objekten unter Verwendung der entfalteten Oberfläche 902 navigieren.
  • Die Navigationseinheit 138 ist ferner ausgebildet, eine Navigations-GUI mit „anamorphologischer Linse bzw. Zerrlinse” zu erzeugen, die es einem Endanwender ermöglicht, eine komprimierte Darstellung der 3D-Umgebung zu betrachten, wie dies nachfolgend detaillierter in 9 beschrieben ist.
  • 9 zeigt eine Bildschirmaufnahmen 900 der mit dem mehrskaligen 3D-Datensatz 132 verknüpften 3D-Umgebung gemäß einer Ausführungsform der Erfindung. Wie gezeigt, enthält die Bildschirmaufnahme 900 eine Zerrlinse 802 sowie 3D-Objekte 814, 824 und 864. Die Oberfläche der Zerrlinse 802 ist in Voronoi-Gebiete 810, 820, 830, 840, 850 und 860 unterteilt. Jedes Voronoi-Gebiet kann ein Bild anzeigen, das einem anderen Gebiet der 3D-Umgebung entspricht. Die Navigationseinheit 138 veranlasst, dass die Zerrlinse 802 Bilder aus Gebieten der 3D-Umgebung darstellt, die innerhalb eines 180-Grad-Sichtfeldes sowohl horizontal als auch vertikal liegen. Daher kann die Zerrlinse 802 Bilder sowohl von bildschirminternen als auch bildschirmexternen 3D-Objekten anzeigen.
  • Das Voronoi-Gebiet 810 zeigt ein Bild 812 des 3D-Objekts 814, das Voronoi-Gebiet 820 zeigt ein Bild 822 des 3D-Objekts 824, das Voronoi-Gebiet 850 zeigt ein Bild eines bildschirmexternen 3D-Objekts und das Voronoi-Gebiet 860 zeigt ein Bild 862 des 3D-Objekts 864. Die Navigationseinheit 138 ist ausgebildet zu veranlassen, dass jedes Voronoi-Gebiet auf der Grundlage des Abstandes von der Kameraposition des Endanwenders zu dem 3D-Objekt oder zu der Gruppe aus 3D-Objekten, die mit diesen Voronoi-Gebiet verknüpft sind, zu schattieren. Beispielsweise liegt das 3D-Objekt 824 relativ nahe an der Kameraposition des Endanwenders, und deswegen ist das Voronoi-Gebiet 820 leicht mit Farbe unterlegt. Andererseits ist das 3D-Objekt 864 relativ weit weg von der Kameraposition des Endanwenders, und daher ist das Voronoi-Gebiet 860 proportional schattiert.
  • Die Navigationseinheit 138 ist ferner ausgebildet, Bilder in jedem Voronoi-Gebiet so zu skalieren, dass jedes Bild eine ähnliche Größe besitzt. Obwohl beispielsweise das 3D-Objekt 824 relativ groß erscheint, während das 3D-Objekt 814 recht klein auftritt, erscheinen die Bilder, die diesen 3D-Objekten (die Bilder 822 bzw. 812) mit relativ gleicher Größe. In einer Ausführungsform richtet die Navigationseinheit 138 die Zerrlinse 802 in Verbindung mit dem Spiegelball 702 ein, um 3D-Objekte und Gruppen aus 3D-Objekten, die hinter der Kameraposition des Endanwenders liegen, anzuzeigen.
  • Der Fachmann erkennt, dass die Navigationseinheit 138 jede der Navigations-GUIs einrichten kann, die zuvor in Verbindung mit den 3A bis 9 beschrieben sind, und auch jede Kombination davon einrichten kann, wenn einem Endanwender es ermöglicht wird, in der 3D-Umgebung, die mit dem mehrskaligen 3D-Datensatz 132 verknüpft ist, zu navigieren. Ferner kann die Navigationseinheit 138 eine spezielle Navigations-GUI unter anderem auf der Grundlage des mehrskaligen 3D-Datensatzes 132, eines speziellen 3D-Datensatzes innerhalb des mehrskaligen 3D-Datensatzes 132, einer Anwendereingabe und/oder von Anwenderpräferenzen oder einer aktuellen Skala der 3D-Umgebung auswählen. Des weiteren kann die Navigationseinheit 138 eine räumliche Hierarchie von Stamm-Ableger-Abhängigkeiten in der 3D-Umgebung erzeugen, indem eine Verknüpfung zwischen beliebigen der Navigation-GUIs erstellt wird.
  • 10 ist ein Flussdiagramm von Verfahrensschritten zur Visualisierung eines mehrskaligen 3D-Datensatzes 132 gemäß einer Ausführungsform der Erfindung. Obwohl die Verfahrensschritte in Verbindung mit den Systemen der 1A und 1B beschrieben sind, erkennt der Fachmann, dass ein beliebiges System, das zum Ausführen der Verfahrensschritte in beliebiger Reihenfolge ausgebildet ist, innerhalb des Schutzbereichs der Erfindung liegt.
  • Wie gezeigt, beginnt das Verfahren 1000 beim Schritt 1002, in welchem die Visualisierungseinheit 134 in der mehrskaligen Dateneinheit 130 ein oder mehrere 3D-Objekte in einer 3D-Umgebung anzeigt. Die Visualisierungseinheit 134 erzeugt die 3D-Umgebung auf der Grundlage des mehrskaligen 3D-Datensatzes 132. Im Schritt 1004 ermittelt die Visualisierungseinheit 134 den linearen Abstand zwischen den jeweiligen 3D-Objekten. Im Schritt 1006 ermittelt die Visualisierungseinheit 134 den Winkelabstand zwischen jedem 3D-Objekte relativ zu einer zu einem Endanwender gehörenden Kameraposition. In der Praxis kann die Visualisierungseinheit 134 die 3D-Umgebung für die Anzeige aus der Perspektive dieser Kameraposition erzeugen. Im Schritt 1008 ermittelt die Visualisierungseinheit 134 den Abstand zwischen jedem 3D-Objekt und der zu dem Endanwender gehörenden Kameraposition.
  • Im Schritt 1010 ermittelt die Visualisierungseinheit 134 eine oder mehrere Objektgruppen auf der Grundlage der linearen Abstände zwischen den 3D-Objekten, den Winkelabständen zwischen den 3D-Objekten relativ zu der Kameraposition und/oder den Abständen zwischen den 3D-Objekten und der Kameraposition. Im Schritt 1012 veranlasst die Visualisierungseinheit 134, dass Objektgruppen in der 3D-Umgebung angezeigt werden. Durch die Implementierung des Verfahrens 1000 kann die Visualisierungseinheit 134 die 3D-Umgebung „aufräumen”, indem die Anzahl sichtbarer 3D-Objekte verringert wird.
  • 11 ist ein Flussdiagramm von Verfahrensschritten zur Abfrage des mehrskaligen 3D-Datensatzes 132 gemäß einer Ausführungsform der Erfindung. Obwohl die Verfahrensschritte in Verbindung mit den Systemen der 1A und 1B beschrieben sind, erkennt der Fachmann, dass ein beliebiges System, das zum Ausführen der Verfahrensschritte in beliebiger Reihenfolge ausgebildet ist, innerhalb des Schutzbereichs der Erfindung liegt.
  • Wie gezeigt, beginnt das Verfahren 1100 im Schritt 1102, in welchem die Abfrageeinheit 136 in der mehrskaligen Dateneinheit 130 eine Abfrage von einem Endanwender erhält, die eine oder mehrere räumliche Eigenschaften spezifiziert, die mit einer gewünschten Gruppe aus 3D-Objekten verknüpft sind. Die räumlichen Eigenschaften können beispielsweise ein maximaler Abstand zu der Kameraposition sein. In einer Ausführungsform kann die Abfrage auch nicht-räumliche Eigenschaften, etwa eine Kategorie, die mit den gewünschten 3D-Objekten verknüpft ist, angeben. Im Schritt 1104 ermittelt die Abfrageeinheit 136 jegliche 3D-Objekte, die die räumlichen Eigenschaften, die in der Abfrage angegeben sind, aufweisen. Jene 3D-Objekte liegen in der 3D-Umgebung, die mit dem mehrskaligen 3D-Datensatz 132 verknüpft ist. Im Schritt 1106 veranlasst die Abfrageeinheit 136, dass eine Angabe der ermittelten 3D-Objekte angezeigt wird. Die Angabe könnte beispielsweise ein Leuchten sein, das die ermittelten 3D-Objekte umgibt. Durch die Implementierung des Verfahrens 1100 ermöglicht es die Abfrageeinheit 136 einem Endanwender, 3D-Objekte zu ermitteln, die spezifizierte Eigenschaften aufweisen.
  • 12 ist ein Flussdiagramm von Verfahrensschritten zur Erzeugung einer Navigations-GUI auf der Grundlage des mehrskaligen 3D-Datensatzes 132 gemäß einer Ausführungsform der Erfindung. Obwohl die Verfahrensschritte in Verbindung mit den Systemen der 1A und 1B beschrieben sind, erkennt der Fachmann, dass ein beliebiges System, das zum Ausführen der Verfahrensschritte in beliebiger Reihenfolge ausgebildet ist, innerhalb des Schutzbereichs der Erfindung liegt.
  • Wie gezeigt beginnt das Verfahren 1200 beim Schritt 1202, in welchem die Navigationseinheit 138 in der mehrskaligen Dateneinheit 130 eine aktuelle Kameraposition in einer 3D-Umgebung erhält, die mit dem mehrskaligen 3D-Datensatz 132 verknüpft ist. Die aktuelle Kameraposition kann verwendet werden, um ein Bild der 3D-Umgebung zur Anzeige für einen Endanwender zu erzeugen. Im Schritt 1204 ermittelt die Navigationseinheit 138 eine Gruppe aus 3D-Objekten innerhalb der 3D-Umgebung. Die 3D-Objekte können einzelne 3D-Objekte oder Gruppen aus 3D-Objekten sein. Im Schritt 1206 ermittelt die Navigationseinheit 138 eine oder mehrere räumliche Eigenschaften, die mit den 3D-Objekten verknüpft sind. Im Schritt 1208 veranlasst die Navigationseinheit 138, dass eine oder mehrere Navigations-GUIs auf der Grundlage der einen oder mehreren räumlichen Eigenschaften angezeigt werden.
  • Der Fachmann erkennt, dass das Verfahren 1200 wiederholt eingerichtet werden kann, wenn ein Endanwender durch die 3D-Umgebung unter Anwendung der Navigations-GUI navigiert. Beispielsweise kann ein Endanwender, nachdem die Navigationseinheit 138 veranlasst, dass eine Navigations-GUI durch Implementierung des Verfahrens 1200 angezeigt wird, die Navigations-GUI bearbeiten, um die Kamera zu einer anderen Position innerhalb der 3D-Umgebung zu verschieben. Die Navigationseinheit 138 kann dann veranlassen, dass eine weitere Navigations-GUI angezeigt wird, indem wiederum das Verfahren 1200 implementiert wird. Somit kann durch die Einrichtung des Verfahrens 1200 ein oder mehrere Male die Navigationseinheit 138 veranlassen, dass diverse unterschiedliche Navigations-GUIs angezeigt werden.
  • Zusammengefasst gilt: eine mehrskalige Dateneinheit ist ausgebildet, auf einen mehrskaligen 3D-Datensatz zuzugreifen und eine 3D-Umgebung auf der Grundlage dieses mehrskaligen 3D-Datensatzes zu erzeugen. Die mehrskalige Dateneinheit manipuliert die 3D-Umgebung, so dass diverse 3D-Objekte innerhalb dieser Umgebung gruppiert werden. Die mehrskalige Dateneinheit kann ferner eine Suche in der 3D-Umgebung durchführen, um 3D-Objekte zu ermitteln, die Suchkriterien, die von einem Endanwender erhalten werden, erfüllen. Ferner ist die mehrskalige Dateneinheit ausgebildet, diverse Navigations-GUIs zu erzeugen, die es dem Endanwender ermöglichen, durch die 3D-Umgebung zu navigieren. Vorteilhafterweise werden für einen Endanwender diverse Techniken zur Interaktion mit einer komplexen 3D-Umgebung bereitgestellt, die beobachtbare Eigenschaften entsprechend einer breiten Fülle unterschiedlicher Skalen bzw. Skalierung enthält. Derartige Vorgehensweisen sind wichtig, um Anwender mit den visuell auftretenden Details in Verbindung zu bringen, die mit jeder unterschiedlichen Skalierung derartiger 3D-Umgebungen verknüpft sind.
  • Eine Ausführungsform der Erfindung kann als ein Programmprodukt zur Verwendung in einem Computersystem eingerichtet werden. Das bzw. die Programme des Programmprodukts definieren Funktionen der Ausführungsformen (einschließlich der hierin beschriebenen Verfahren) und können in einer Vielzahl von computerlesbaren Speichermedien enthalten sein. Zu anschaulichen computerlesbaren Speichermedien gehören, ohne Einschränkung: (i) nicht-beschreibbare Speichermedien (zum Beispiel Nur-Lese-Speichereinrichtungen in einem Computer, etwa CD-ROM-Disketten, die von einem CD-ROM-Laufwerk gelesen werden können, ein Flash-Speicher, ROM-Chips oder eine beliebige Art eines nicht-flüchtigen Halbleiterspeichers), auf denen Information permanent gespeichert ist; und (ii) beschreibbare Speichermedien (beispielsweise Disketten in einem Diskettenlaufwerk oder ein Festplattenlaufwerk oder eine beliebige Art eines Halbleiterspeichers mit wahlfreiem Zugriff), auf denen veränderbare Information gespeichert ist.
  • Die Erfindung ist zuvor mit Bezug zu speziellen Ausführungsformen beschrieben. Der Fachmann erkennt jedoch, dass diverse Modifizierungen und Änderungen daran vorgenommen werden können, ohne von dem breiteren Grundgedanken und dem Schutzbereich der Erfindung, wie sie in den angefügten Patentansprüchen dargelegt ist, abzuweichen. Die vorhergehende Beschreibung und die Zeichnungen sind daher in anschaulichem Sinne anstatt in einem beschränkenden Sinne zu betrachten. Die Erfindung ist in den folgenden Ansprüchen angegeben.

Claims (19)

  1. Recheneinrichtung, die ausgebildet ist, eine Navigations-GUI zum Navigieren in einer 3D-Umgebung, die mit einem mehrskaligen 3D-Datensatz verknüpft ist, zu erzeugen, wobei die Recheneinrichtung umfasst: einen Speicher; und eine Verarbeitungseinheit, die mit dem Speicher verbunden und ausgebildet ist, um: eine aktuelle Position in der 3D-Umgebung zu empfangen, wobei ein sichtbarer Bereich der 3D-Umgebung für die Anzeige auf der Grundlage einer Perspektive, die zu der aktuellen Position gehört, erzeugt wird; und zu veranlassen, dass ein Objektindikator in dem sichtbaren Bereich der 3D-Umgebung angezeigt wird, wobei der Objektindikator zu einem 3D-Objekt gehört, das in einem nicht-sichtbaren Bereich der 3D-Umgebung relativ zu der aktuellen Position angeordnet ist, und wobei der Objektindikator ferner mit einem Miniaturbild verknüpft ist, das das 3D-Objekt repräsentiert.
  2. Recheneinrichtung nach Anspruch 1, wobei die Position des Objektindikators in dem sichtbaren Bereich der 3D-Umgebung auf eine kreisförmige Grenze beschränkt ist, die ebenfalls in dem sichtbaren Bereich liegt, und wobei die Verarbeitungseinheit ferner ausgebildet ist, um: eine aktualisierte Position in der 3D-Umgebung zu empfangen; den Objektindikator auf der kreisförmigen Grenze auf der Grundlage der aktualisierten Position erneut zu positionieren; und den Objektindikator erneut so zu orientieren, dass die Lage des 3D-Objekts in dem nicht-sichtbaren Bereich der 3D-Umgebung relativ zu der aktualisierten Position angegeben ist.
  3. Recheneinrichtung nach Anspruch 1, wobei die Position des Objektindikators in dem sichtbaren Bereich der 3D-Umgebung auf eine kugelförmige Grenze beschränkt ist, die ebenfalls in dem sichtbaren Bereich liegt.
  4. Recheneinrichtung nach Anspruch 3, wobei die Verarbeitungseinheit ferner ausgebildet ist, um: eine aktualisierte Position in der 3D-Umgebung zu empfangen; den Objektindikator auf der kugelförmigen Grenze auf der Grundlage der aktualisierten Position erneut zu positionieren; und den Objektindikator so erneut zu orientieren, dass die Lage des 3D-Objekts in dem nicht-sichtbaren Bereich der 3D-Umgebung relativ zu der aktualisierten Position angegeben ist.
  5. Recheneinrichtung nach Anspruch 3, wobei die Verarbeitungseinheit ferner ausgebildet ist, die kugelförmige Grenze auf eine zweidimensionale (2D) Ebene zu projizieren, die in dem sichtbaren Bereich der 3D-Umgebung liegt, und zu veranlassen, dass der Objektindikator auf der 2D-Ebene erscheint, wobei der Orientierungsindikator den Abstand zwischen der aktuellen Position und dem 3D-Objekt angibt.
  6. Recheneinrichtung nach Anspruch 1, wobei die Verarbeitungseinheit ferner ausgebildet ist, um: die aktuelle Position in der 3D-Umgebung zu empfangen; und zu veranlassen, dass ein Objektindikator in dem sichtbaren Bereich der 3D-Umgebung angezeigt wird.
  7. Recheneinrichtung nach Anspruch 1, wobei der Objektindikator mit einer Gruppe aus 3D-Objekten, die das 3D-Objekt enthält, verknüpft ist.
  8. Recheneinrichtung nach Anspruch 7, wobei der Objektindikator mit mehreren Miniaturbildern verknüpft ist, und wobei jedes Miniaturbild, das in den mehreren Miniaturbildern enthalten ist, ein anderes Objekt der 3D-Objekte, die in der Gruppe aus 3D-Objekten enthalten sind, reflektiert.
  9. Ein nicht-flüchtiges computerlesbares Medium mit Befehlen, die, wenn sie von einer Verarbeitungseinheit ausgeführt werden, die Verarbeitungseinheit veranlassen, eine Navigations-GUI zur Navigation in einer 3D-Umgebung zu erzeugen, die mit einem mehrskaligen 3D-Datensatz verknüpft ist, indem die Schritte ausgeführt werden: Empfangen einer aktuellen Position in der 3D-Umgebung, wobei ein sichtbarer Bereich der 3D-Umgebung für die Anzeige auf der Grundlage einer Perspektive, die zu der aktuellen Position gehört, erzeugt wird; Ermitteln eines 3D-Objekts, das in einem nicht-sichtbaren Bereich der 3D-Umgebung liegt; und Veranlassen, dass ein Objektindikator in dem sichtbaren Bereich der 3D-Umgebung angezeigt wird, wobei der Objektindikator eine Orientierung besitzt, die die Position des 3D-Objekts innerhalb des nicht-sichtbaren Bereichs der 3D-Umgebung relativ zu der aktuellen Position angibt.
  10. Das nicht-flüchtige computerlesbare Medium nach Anspruch 9, wobei die Position des Objektindikators innerhalb des sichtbaren Bereichs der 3D-Umgebung auf eine kreisförmige Grenze beschränkt ist, die ebenfalls innerhalb des sichtbaren Bereichs liegt, und ferner umfassend: Empfangen einer aktualisierten Position in der 3D-Umgebung; erneutes Positionieren des Objektindikators auf der kreisförmigen Grenze auf der Grundlage der aktualisierten Position; und erneutes Orientieren des Objektindikators derart, dass die Position des 3D-Objekts in dem nicht-sichtbaren Bereich der 3D-Umgebung relativ zu der aktualisierten Position angegeben wird.
  11. Das nicht-flüchtige computerlesbare Medium nach Anspruch 9, wobei die Position des Objektindikators in dem sichtbaren Bereich der 3D-Umgebung auf eine kugelförmige Grenze beschränkt ist, die ebenfalls in dem sichtbaren Bereich liegt.
  12. Das nicht-flüchtige computerlesbare Medium nach Anspruch 11, das ferner die Schritte umfasst: Empfangen einer aktualisierten Position in der 3D-Umgebung; erneutes Positionieren des Objektindikators auf der kugelförmigen Grenze auf der Grundlage der aktualisierten Position; und erneutes Orientieren des Objektindikators derart, dass die Position des 3D-Objekts in dem nicht-sichtbaren Bereich der 3D-Umgebung relativ zu der aktualisierten Position angegeben wird.
  13. Das nicht-flüchtige computerlesbare Medium nach Anspruch 11, das ferner umfasst: Projizieren der kugelförmigen Grenze auf eine 2D-Ebene, die in dem sichtbaren Bereich der 3D-Umgebung liegt, und Veranlassen, dass der Orientierungsindikator auf der 2D-Ebene erscheint, wobei der Orientierungsindikator den Abstand zwischen der aktuellen Position und dem 3D-Objekt angibt.
  14. Das nicht-flüchtige computerlesbare Medium nach Anspruch 11, wobei die kugelförmige Grenze eine reflektierende Oberfläche aufweist, die in der Lage ist, ein oder mehrere Bilder, die aus dem nicht-sichtbaren Bereich der 3D-Umgebung abgeleitet sind, zu reflektieren, und wobei die kugelförmige Grenze ein Bild des 3D-Objekts innerhalb des nicht-sichtbaren Bereichs der 3D-Umgebung von innerhalb des sichtbaren Bereichs der 3D-Umgebung reflektiert.
  15. Das nicht-flüchtige computerlesbare Medium nach Anspruch 14, wobei die 3D-Umgebung eine zusätzliche kugelförmige Grenze mit einer reflektierenden Oberfläche innerhalb des nicht-sichtbaren Bereichs der 3D-Umgebung liegend enthält, und wobei die zusätzliche kugelförmige Grenze ein Bild des 3D-Objekts von innerhalb des nicht-sichtbaren Bereichs der 3D-Umgebung reflektiert, und wobei die kugelförmige Grenze ein Bild der zusätzlichen kugelförmigen Grenze von innerhalb des sichtbaren Bereichs der 3D-Umgebung reflektiert.
  16. Das nicht-flüchtige computerlesbare Medium nach Anspruch 14, das ferner die Schritte umfasst: Projizieren der kugelförmigen Grenze auf eine 2D-Ebene, die innerhalb des sichtbaren Bereichs der 3D-Umgebung liegt, und Veranlassen, dass ein 3D-Miniaturbild des 3D-Objekts über der 2D-Ebene an einer Höhe erscheint, die den Abstand zwischen der aktuellen Position und dem 3D-Objekt angibt.
  17. Das nicht-flüchtige computerlesbare Medien nach Anspruch 9, wobei der Objektindikator auf die Oberfläche einer 2D-Scheibe beschränkt ist, die eine Zerrlinse aufweist und in dem sichtbaren Bereich der 3D-Umgebung liegt, und wobei die Zerrlinse ausgebildet ist, Bilder sowohl von dem sichtbaren Bereich der 3D-Umgebung als auch dem nicht-sichtbaren Bereich der 3D-Umgebung anzuzeigen.
  18. Eine Recheneinrichtung, die ausgebildet ist, eine Navigations-GUI zum Navigieren in einer 3D-Umgebung zu erzeugen, die mit einem mehrskaligen 3D-Datensatz verknüpft ist, wobei die Recheneinrichtung umfasst: eine Verarbeitungseinheit, die ausgebildet ist, um: eine aktuelle Position innerhalb der 3D-Umgebung zu empfangen, wobei ein sichtbarer Bereich der 3D-Umgebung für die Anzeige auf der Grundlage einer Perspektive, die zu der aktuellen Position gehört, erzeugt wird; ein 3D-Objekt zu ermitteln, das in einem nicht-sichtbaren Bereich der 3D-Umgebung liegt; und zu veranlassen, dass ein Objektindikator in dem sichtbaren Bereich der 3D-Umgebung angezeigt wird, wobei der Objektsindikator eine Orientierung besitzt, die die Position des 3D-Objekts innerhalb des nichtsichtbaren Bereichs der 3D-Umgebung relativ zu der aktuellen Position angibt.
  19. Die Recheneinrichtung nach Anspruch 18, die ferner einen Speicher umfasst, der Programmbefehle enthält, die, wenn sie von dem Prozessor ausgeführt werden, den Prozessor konfigurieren, um: die aktuelle Position in der 3D-Umgebung zu empfangen; das 3D-Objekt zu ermitteln; und zu veranlassen, dass ein Objektindikator in dem sichtbaren Bereich der 3D-Umgebung angezeigt wird.
DE202011110655.5U 2010-07-30 2011-07-29 Mehrskalige dreidimensionale Orientierung Expired - Lifetime DE202011110655U1 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US36963510P 2010-07-30 2010-07-30
US61/369,635 2010-07-30
US13/193,531 2011-07-28
US13/193,531 US10140000B2 (en) 2010-07-30 2011-07-28 Multiscale three-dimensional orientation

Publications (1)

Publication Number Publication Date
DE202011110655U1 true DE202011110655U1 (de) 2015-07-27

Family

ID=45528001

Family Applications (1)

Application Number Title Priority Date Filing Date
DE202011110655.5U Expired - Lifetime DE202011110655U1 (de) 2010-07-30 2011-07-29 Mehrskalige dreidimensionale Orientierung

Country Status (6)

Country Link
US (1) US10140000B2 (de)
EP (1) EP2598982A4 (de)
JP (1) JP5592011B2 (de)
CN (1) CN103052933A (de)
DE (1) DE202011110655U1 (de)
WO (1) WO2012016220A1 (de)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9818220B2 (en) 2011-12-28 2017-11-14 General Electric Company Method and system for indicating light direction for a volume-rendered image
US10127722B2 (en) 2015-06-30 2018-11-13 Matterport, Inc. Mobile capture visualization incorporating three-dimensional and two-dimensional imagery
US10139985B2 (en) 2012-06-22 2018-11-27 Matterport, Inc. Defining, displaying and interacting with tags in a three-dimensional model
US9786097B2 (en) 2012-06-22 2017-10-10 Matterport, Inc. Multi-modal method for interacting with 3D models
US10163261B2 (en) 2014-03-19 2018-12-25 Matterport, Inc. Selecting two-dimensional imagery data for display within a three-dimensional model
US20140062998A1 (en) * 2012-09-04 2014-03-06 Google Inc. User Interface for Orienting a Camera View Toward Surfaces in a 3D Map and Devices Incorporating the User Interface
US10019130B2 (en) * 2013-04-21 2018-07-10 Zspace, Inc. Zero parallax drawing within a three dimensional display
WO2015090421A1 (en) * 2013-12-19 2015-06-25 Metaio Gmbh Method and system for providing information associated with a view of a real environment superimposed with a virtual object
US9986225B2 (en) * 2014-02-14 2018-05-29 Autodesk, Inc. Techniques for cut-away stereo content in a stereoscopic display
JP2016143203A (ja) * 2015-01-30 2016-08-08 富士フイルム株式会社 診療支援装置、診療支援装置の作動方法および作動プログラム、並びに診療支援システム
US10209871B2 (en) * 2015-10-21 2019-02-19 International Business Machines Corporation Two-dimensional indication in contents
CN106345118B (zh) * 2016-08-24 2019-07-30 网易(杭州)网络有限公司 一种渲染方法及装置
US11395020B2 (en) * 2016-09-08 2022-07-19 Telefonaktiebolaget Lm Ericsson (Publ) Bitrate control in a virtual reality (VR) environment
US10922895B2 (en) * 2018-05-04 2021-02-16 Microsoft Technology Licensing, Llc Projection of content libraries in three-dimensional environment
JP7052613B2 (ja) * 2018-07-20 2022-04-12 株式会社Jvcケンウッド 表示制御装置、表示制御方法及びプログラム
US11550406B1 (en) 2021-10-14 2023-01-10 Autodesk, Inc. Integration of a two-dimensional input device into a three-dimensional computing environment
US20230119646A1 (en) * 2021-10-14 2023-04-20 Autodesk, Inc. Integration of a two-dimensional input device into a three-dimensional computing environment

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001224849A (ja) 1999-12-10 2001-08-21 Sony Computer Entertainment Inc エンタテインメントシステム、エンタテインメント装置、記録媒体及びプログラム
US6791578B1 (en) 2000-05-30 2004-09-14 Apple Computer, Inc. 16:9 aspect ratio and anamorphic image processing
US7814436B2 (en) 2003-07-28 2010-10-12 Autodesk, Inc. 3D scene orientation indicator system with scene orientation change capability
US7737965B2 (en) * 2005-06-09 2010-06-15 Honeywell International Inc. Handheld synthetic vision device
US20070139408A1 (en) 2005-12-19 2007-06-21 Nokia Corporation Reflective image objects
US8954886B2 (en) * 2006-08-02 2015-02-10 Ebay Inc. System to present additional item information
US20080150921A1 (en) 2006-12-20 2008-06-26 Microsoft Corporation Supplementing and controlling the display of a data set
CN100504299C (zh) 2007-02-06 2009-06-24 华中科技大学 一种空间非合作物体三维信息的获取方法
US7782319B2 (en) 2007-03-28 2010-08-24 Autodesk, Inc. Three-dimensional orientation indicator and controller
US8397168B2 (en) * 2008-04-05 2013-03-12 Social Communications Company Interfacing with a spatial virtual communication environment
US20090169060A1 (en) * 2007-12-26 2009-07-02 Robert Bosch Gmbh Method and apparatus for spatial display and selection
JP5368547B2 (ja) * 2008-04-05 2013-12-18 ソーシャル・コミュニケーションズ・カンパニー 共有仮想エリアコミュニケーション環境ベースの装置および方法
US20090289937A1 (en) 2008-05-22 2009-11-26 Microsoft Corporation Multi-scale navigational visualtization
US20100188397A1 (en) * 2009-01-28 2010-07-29 Apple Inc. Three dimensional navigation using deterministic movement of an electronic device
US9050534B2 (en) * 2010-04-23 2015-06-09 Ganz Achievements for a virtual world game
US8944911B2 (en) * 2010-07-27 2015-02-03 Disney Enterprises, Inc. Online parallel play

Also Published As

Publication number Publication date
EP2598982A4 (de) 2014-09-24
US10140000B2 (en) 2018-11-27
JP2013536502A (ja) 2013-09-19
JP5592011B2 (ja) 2014-09-17
US20120030630A1 (en) 2012-02-02
WO2012016220A1 (en) 2012-02-02
CN103052933A (zh) 2013-04-17
EP2598982A1 (de) 2013-06-05

Similar Documents

Publication Publication Date Title
DE202011110655U1 (de) Mehrskalige dreidimensionale Orientierung
US9330501B2 (en) Systems and methods for augmenting panoramic image data with performance related data for a building
US8194972B2 (en) Method and system for transparency adjustment and occlusion resolution for urban landscape visualization
US8042056B2 (en) Browsers for large geometric data visualization
US10917622B2 (en) Information processing apparatus, display control method, and storage medium
DE112020003794T5 (de) Tiefenbewusste Fotobearbeitung
US8106927B2 (en) Graphical user interfaces and occlusion prevention for fisheye lenses with line segment foci
DE102015113240A1 (de) System, verfahren und computerprogrammprodukt für schattierung unter verwendung eines dynamischen objektraumgitters
DE202013012510U1 (de) System zur Bereitstellung von Inhalten für einen Interessenpunkt
EP3655928B1 (de) Soft-okklusion für das rendering von computergrafiken
EP3533218B1 (de) Simulation der tiefenschärfe
CN107168534B (zh) 一种基于cave系统的渲染优化方法及投影方法
KR101591427B1 (ko) 3차원 지형 영상 가시화에서의 적응형 렌더링 방법
US20160225179A1 (en) Three-dimensional visualization of a scene or environment
KR20140145217A (ko) 공간정보를 이용한 3차원 가상 모델링 시스템 및 그 방법
CN108510433B (zh) 空间展示方法、装置及终端
KR101428577B1 (ko) 적외선 동작 인식 카메라를 사용하여 화면상에 네추럴 유저 인터페이스 기반 입체 지구본을 제공하는 방법
CN114862998A (zh) 一种dem编辑处理方法和装置
CN110910482B (zh) 视频数据组织调度的方法、系统及可读存储介质
Trapp Interactive rendering techniques for focus+ context visualization of 3d geovirtual environments
JP7476511B2 (ja) 画像処理システム、画像処理方法及びプログラム
Agus et al. Interactive 3D Exploration of a Virtual Sculpture Collection: an Analysis of User Behavior in Museum Settings.
Trapp et al. Communication of digital cultural heritage in public spaces by the example of roman cologne
JP7475625B2 (ja) 3次元空間における入力受付および入力表示方法、プログラム、および3次元空間における入力受付および入力表示装置
Sharma et al. VR Visualization of Heritage Structures at Different Scales via Mode Switching

Legal Events

Date Code Title Description
R150 Utility model maintained after payment of first maintenance fee after three years
R207 Utility model specification
R151 Utility model maintained after payment of second maintenance fee after six years
R152 Utility model maintained after payment of third maintenance fee after eight years
R071 Expiry of right