DE202012013434U1 - Vorabruf von Kartenkacheldaten entlang einer Route - Google Patents

Vorabruf von Kartenkacheldaten entlang einer Route Download PDF

Info

Publication number
DE202012013434U1
DE202012013434U1 DE202012013434.5U DE202012013434U DE202012013434U1 DE 202012013434 U1 DE202012013434 U1 DE 202012013434U1 DE 202012013434 U DE202012013434 U DE 202012013434U DE 202012013434 U1 DE202012013434 U1 DE 202012013434U1
Authority
DE
Germany
Prior art keywords
map data
map
route
data tiles
destination
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
DE202012013434.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.)
Google LLC
Original Assignee
Google LLC
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 Google LLC filed Critical Google LLC
Publication of DE202012013434U1 publication Critical patent/DE202012013434U1/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/36Input/output arrangements for on-board computers
    • G01C21/3667Display of a road map
    • G01C21/367Details, e.g. road map scale, orientation, zooming, illumination, level of detail, scrolling of road map or positioning of current position marker
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3863Structures of map data
    • G01C21/387Organisation of map data, e.g. version management or database structures
    • G01C21/3881Tile-based structures
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3885Transmission of map data to client devices; Reception of map data by client devices
    • G01C21/3889Transmission of selected map data, e.g. depending on route
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3885Transmission of map data to client devices; Reception of map data by client devices
    • G01C21/3896Transmission of map data from central databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases
    • 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/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/147Digital output to display device ; Cooperation and interconnection of the display device with other functional units using display panels
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/05Geographic models

Landscapes

  • Engineering & Computer Science (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Data Mining & Analysis (AREA)
  • Human Computer Interaction (AREA)
  • Navigation (AREA)
  • Instructional Devices (AREA)
  • Processing Or Creating Images (AREA)
  • Traffic Control Systems (AREA)

Abstract

Computergerät, umfassend: eine Datenübertragungsnetzwerkschnittstelle; einen Prozessor oder mehrere Prozessoren; einen Speicher oder mehrere Speicher, der oder die an einen Prozessor oder mehrere Prozessoren gekoppelt ist oder sind; eine Anzeigevorrichtung, die an einen oder mehrere Prozessoren gekoppelt ist; worin der eine oder die mehreren Speicher darin gespeicherte computerausführbare Anweisungen beinhalten, die, wenn sie von einem oder mehreren Prozessoren ausgeführt werden, den einen oder die mehreren Prozessoren dazu veranlassen, eine erste Routing-Funktion zum Erzeugen einer Route, die durch einen Ausgangsort, einen Zielort und eine Menge von Ausgangsort und Zielort verbindenden Wegen definiert ist, mit einem Computer zu aktivieren; einen ersten Satz von Kartenkachelradien, der mit einer Menge von Punkten entlang der Route mit Ausgangsort und Zielort verbunden ist, festzulegen, worin der erste Satz von Kartenkachelradien einen ersten Satz von Kartendatenkacheln definiert, die Kartenoberflächenbereichen um die Route herum und die Route einschließend entsprechen; von einer Kartendatenbank aus auf den ersten Satz von der Route entsprechenden Kartendatenkacheln zuzugreifen, wobei die Kartendatenbank die Kartendaten als eine Vielzahl von Kartendatenkacheln speichert und der erste Satz von Kartendatenkacheln eine Teilmenge der Vielzahl von Kartendatenkacheln der Kartendatenbank umfasst; den ersten Satz von Kartendatenkacheln in einem lokalen Speicher als einen ersten Satz von Vorabruf-Kartendatenkacheln zu speichern, wobei der lokale Speicher von der Kartendatenbank verschieden ist; und eine Wiedergabefunktion zur Anzeige der ersten Route mit dem Satz von vorabgerufenen Kartendatenkacheln des lokalen Speichers anstelle der Kartendatenkacheln aus der Kartendatenbank zu aktivieren.

Description

  • TECHNISCHES GEBIET
  • Die vorliegende Offenbarung bezieht sich auf Systeme zur Kartenwiedergabe, wie beispielsweise Systeme zur elektronischen Kartenanzeige, und insbesondere auf ein Verfahren und System zum Vorabruf von Kartendaten aus einer entfernten Datenbank.
  • Unter Schutz gestellt werden und Gegenstand des Gebrauchsmusters sind, entsprechend den Vorschriften des Gebrauchsmustergesetzes, lediglich Vorrichtungen wie in den beigefügten Schutzansprüchen definiert, jedoch keine Verfahren. Soweit nachfolgend in der Beschreibung gegebenenfalls auf Verfahren Bezug genommen wird, dienen diese Bezugnahmen lediglich der beispielhaften Erläuterung der in den beigefügten Schutzansprüchen unter Schutz gestellten Vorrichtung oder Vorrichtungen.
  • HINTERGRUND
  • Mit der weit verbreiteten Verwendung von Mobilgeräten, zum Beispiel Mobiltelefonen, PDAs, Tablets usw. ist die Nachfrage der Verbraucher nach schnellen Zugang zu verschiedenen Typen von Daten stark angestiegen. Diese Geräte werden zum Senden, Empfangen und Speichern von Text, Sprache, Bildern und Videodaten verwendet. Verbraucher möchten oft eine große Anzahl von Anwendungen auf diesen Geräten speichern, sodass diese Geräte oftmals mehr wegen der Anzahl an verfügbaren Anwendungen als wegen der internen Prozessorgeschwindigkeit angepriesen werden. Während Verbraucher mittlerweile schnellen Zugang zu Daten wünschen, macht die bloße Menge der zur Ausführung dieser Anwendung erforderlichen Daten die Datenverwaltung zu einem erstrangigen Faktor, der sich sowohl auf der Geräteebene als auch auf der Netzwerkebene bemerkbar macht. Dieser Faktor kann die Effektivität von Anwendungen wie Kartenanwendungen, die normalerweise vergleichsweise große Mengen an Netzwerkdaten erfordern (z. B. für Systeme, die Kartendaten aus einer entfernten Datenbank abrufen) begrenzen
  • Kartenanwendungen finden sich in einer Vielzahl von Mobilgeräten, darunter in Fahrzeugnavigationssystemen, GPS-Handgeräten, Mobiltelefonen und tragbaren Computer. Diese Anwendungen gehören zu den am meisten verwendeten Anwendungen und werden von manchen als notwendig für die persönliche Sicherheit erachtet. Obwohl die zugrunde liegenden digitalen Karten aus Benutzersicht leicht anzuwenden sind, ist das Erstellen einer digitalen Karte ein datenintensiver Prozess. Jede digitale Karte beginnt mit einem Satz von Rohdaten, die Millionen von Straßen und Kreuzungen entsprechen. Diese Rohdatenkarte wird aus einer Vielzahl von Quellen bezogen, von denen jede verschiedene Mengen und Arten von Informationen liefert. Um einen Standort effektiv auf einer Karte zu verzeichnen, eine Fahrstrecke zwischen eine einem Ausgangsort und einem Zielort zu finden, Interessenschwerpunkte zu erkennen usw. sind beträchtliche Mengen von Daten erforderlich. Weiterhin erfordern viele Kartenanwendungen eine Anzeige von verschiedenen Kartendaten auf verschiedenen Zoomstufen, d. h. in verschiedenen Maßstäben, wobei sich Detailumfang und die Art der Details auf jeder Zoomstufe verändern. Zum Beispiel können Kartendaten auf der niedrigsten Zoomstufe, die die am weitesten vom Zielort entfernte Umgebung zeigt, die Grenzen von Kontinenten, Ozeanen und großen Landmassen enthalten. Auf nachfolgenden Zoomstufen können die Kartendaten Länder, Staaten, Siedlungsgebiete, Protektorate und andere wesentliche geographische Regionen zeigen. Auf noch weiter nachfolgenden Zoomstufen können die Kartendaten wichtige Straßen, Städte, Ortschaften enthalten, bis die Kartendaten schließlich kleinere Straßen, Gebäude, ja selbst Gehwege und Wanderwege nach Region zeigen. Der Detailumfang wird von den Informationsquellen bestimmt die zum Aufbau der Kartendaten auf den einzelnen Zoomstufen verwendet wurden. Aber unabhängig von der Zoomstufe ist die Datenmenge riesig und kann in ihrer Gesamtheit allgemein zu groß für das Speichern auf Mobilgeräten und zu groß für ein kontinuierliches Herunterladen über ein drahtloses Kommunikationsnetz sein.
  • Im Betrieb laden Kartenanwendungen Kartendaten normalerweise über ein drahtloses Kommunikationsnetz als Antwort darauf in das Mobilgerät herunter, dass ein Benutzer einen interessierenden Ort eingibt, und/oder auf der Grundlage des aktuellen Standorts des Mobilgeräts, wie zum Beispiel der aktuellen GPS-Daten oder der aktuellen Zellennetz-Standortdaten für das Gerät. Ein herkömmliches Verfahren für das herunterladen von Kartendaten besteht darin, dass das Mobilgerät seine Stand Daten an einen entfernten Prozessor im drahtlosen Kommunikationsnetz mitteilt, der als Antwort alle Kartendaten in das Mobilgerät oder die angeforderten Kartendaten zur Anzeige für den Benutzer herunterlädt.
  • Kartendaten können allgemein in Blöcken, die als Kartendatenkacheln bekannt sind, gespeichert werden, wobei die Anzahl von Kartendatenkacheln mit der Zoomstufe ansteigt. Der entfernte Prozessor liefert eine Teilmenge der verfügbaren Kartendatenkacheln für einen bestimmten Ort oder eine Region zur Speicherung und Anzeige zu einem bestimmten Zeitpunkt über eine Kartenanzeigeanwendung an das Mobilgerät. Durch das Bereitstellen großer Zahlen von Kartendatenkacheln kann das mobile Gerät die Kartendaten zur Anzeige für den Verbraucher zwischen speichern, während der Verbraucher über ein Gebiet scrollt und nach angrenzenden oder anderen Kartenorten sucht. Je größer die Anzahl an Kartendatenkacheln zu einem gegebenen Zeitpunkt ist, desto länger ist die Herunterladezeit und desto höher die Nutzung des Pufferspeichers, während der Benutzer die Kartenanzeigeanwendung verwendet.
  • Kartendatenkacheln können auf uneffektive Weise heruntergeladen und im Cache gespeichert werden, indem kein Ansichtskontext genutzt wird, um Kartendaten höherer Priorität im Vergleich zu solchen mit geringerer Priorität effektiv abzurufen. Ein solcher Ansichtskontext bezieht sich auf Kartendaten in Bezug auf den Vorabruf von Kartendaten für verschiedene Teile einer Route. Der Vorabruf von Daten für die spätere Verwendung ist wichtig in Mobilgeräten, wo eine Verbindung zu einer Kartendatenbank (z. B. über einen Kartendatenbank-Server) bestenfalls in Intervallen möglich sein kann. Da mobile Computergeräte weiterhin im Allgemeinen größere Beschränkungen von Bandbreite und Prozessor aufweisen als zum Beispiel ein Desktop-Computer, ist die Effektivität des Abrufs und der Verarbeitung von Kartendaten in mobilen Anwendungen sogar noch entscheidender. Infolgedessen besteht Bedarf an intelligenteren Mechanismen für das Abrufen (z. B. Herunterladen) und/oder verarbeiten von Kartendaten, insbesondere von Kartendatenkacheln, um die visuellen Anforderungen bei einem in seiner Leistung begrenzten Computer zu erfüllen, ohne Bandbreite und Verarbeitungsleistungen zu vergeuden.
  • ZUSAMMENFASSUNG
  • Ein computerimplementiertes Verfahren für den Vorabruf von Kartendaten für eine Kartenanwendung umfasst das Empfangen von Informationen zu einer Route mit einem Ausgangsort, einem Zielort und einer Menge von Wegen, die Ausgangs- und Zielort miteinander verbinden, und das Festlegen eines ersten, mit dem Ausgangsort verbundenen Kachelradius, eines zweiten, mit dem Zielort verbundenen Kachelradius und eines ersten Satzes von Kartenkachelradien, die mit einer Menge von Punkten entlang der Route zwischen dem Ausgangsort und dem Zielort verbunden sind. Die Menge von Wegen oder Straßen können eine Abfolge haben. Der erste Kachelradius, der zweite Kachelradius und die erste Menge von Kachelradien entsprechen jeweils einem ersten, einem zweiten und einem dritten Satz von Vorabruf-Kartendatenkacheln. Der erste, zweite und dritte Satz von Vorabruf-Kartendaten Kacheln entspricht jeweils Kartenoberflächenbereichen um den Ausgangsort, den Zielort und die Route herum. Das Verfahren greift von einer Kartendatenbank auf die erste, den zweite und die dritte Vorabruf-Kartendatenkachel zu. Die Kartendatenbank speichert die Kartendaten in Form einer Vielzahl von Kartendatenkacheln, wobei die ersten, zweiten und die dritten Vorabruf-Kartendatenkacheln eine Teilmenge der Vielzahl von Kartendatenkacheln darstellen. Das Verfahren speichert weiterhin Vorabruf-Kartendatenkacheln in einem lokalen Speicher auf einem Clientgerät.
  • Ein Computer kann eine Kommunikationsnetzschnittstelle, einen oder mehrere Prozessoren, einen oder mehrere an den einen oder die mehreren Prozessoren gekoppelte(n) Speicher, und eine an den einen oder die mehreren Prozessoren gekoppelte Anzeigevorrichtung umfassen. Der eine oder die mehreren Speicher können darin gespeicherte computerausführbare Anweisungen beinhalten, die, wenn sie von einem oder mehreren Prozessoren ausgeführt werden, den einen oder die mehreren Prozessoren dazu veranlassen, über eine Computerprogrammanwendung Informationen zu einer Route mit einem Ausgangsort, einem Zielort und einer Menge von Wegen, die Ausgangs- und Zielort miteinander verbinden, zu empfangen. Die Anweisungen können einen Prozessor weiterhin dazu veranlassen, einen ersten Satz von Kartenkachelradien, der mit einer Menge von Punkten entlang der Route mit Ausgangs- und Zielort verbunden ist, festzulegen, wobei der erste Satz von Kartenkachelradien einen ersten Satz von Vorabruf-Kartendatenkacheln definiert, die Kartenoberflächenbereichen entlang der Route und die Route einschließend entsprechen. Die Anweisungen können einen Prozessor weiterhin dazu veranlassen, von einer Kartendatenbank aus auf den ersten Satz von der Route entsprechenden Vorabruf-Kartendatenkacheln zuzugreifen. Die Kartendatenbank speichert die Kartendaten als eine Vielzahl von Kartendatenkacheln, wobei der erste Satz von Vorabruf-Kartendatenkacheln eine Teilmenge der Vielzahl von Kartendatenkacheln darstellen kann. Die Anweisungen können einen Prozessor dann dazu veranlassen, den ersten Satz von Vorabruf-Kartendatenkacheln in einem lokalen Speicher auf einem Clientgerät zu speichern.
  • Ein Computer kann eine Kommunikationsnetzschnittstelle, einen oder mehrere Prozessoren, einen oder mehrere an den einen oder die mehreren Prozessoren gekoppelte(n) Speicher, und eine an den einen oder die mehreren Prozessoren gekoppelte Anzeigevorrichtung umfassen. Der eine oder die mehreren Speicher können darin gespeicherte computerausführbare Anweisungen beinhalten, die, wenn sie von einem oder mehreren Prozessoren ausgeführt werden, den einen oder die mehreren Prozessoren dazu veranlassen, über eine Computerprogrammanwendung Informationen zu einer Route mit einem Ausgangsort, einem Zielort und einer Menge von Wegen, die Ausgangs- und Zielort miteinander verbinden, zu empfangen. Die Anweisungen können einen Prozessor weiterhin dazu veranlassen, einen ersten, zweiten und dritten Satz von Vorabruf-Kartendatenkacheln zu bestimmen. Der erste Satz kann Kartenoberflächenbereichen um den Ausgangsort und den Ausgangsort einschließend entsprechen. Der zweite Satz von Vorab-Kartendatenkacheln kann Kartenoberflächenbereichen um den Zielort und den Zielort einschließend entsprechen. Der dritte Satz von Vorab-Kartendatenkacheln kann Kartenoberflächenbereichen um die Route zwischen Ausgangs- und Zielort herum entsprechen. Die Anweisungen können einen Prozessor weiterhin dazu veranlassen, von einer Kartendatenbank aus auf ersten Satz, den zweiten Satz und den dritten Satz von der Route entsprechenden Vorabruf-Kartendatenkacheln zuzugreifen, wobei die Kartendatenbank die Kartendaten als eine Vielzahl von Kartendatenkacheln speichert und der erste Satz von Vorab-Kartendatenkacheln eine Teilmenge der Vielzahl von Kartendatenkacheln umfasst. Die Anweisungen können einen Prozessor dazu veranlassen, den ersten Satz, den zweiten Satz den dritten Satz von Vorabruf-Kartendatenkacheln in einem lokalen Speicher auf einem Clientgerät zu speichern.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • 1 ist ein Highlevel-Blockdiagramm eines Kartenbildgebungssystems, das Kommunikation zwischen einer in einem Server gespeicherten Kartendatenbank und einem oder mehreren Kartenbildwiedergabegeräten implementiert.
  • 2 ist ein Highlevel-Blockschaubild einer Bildwiedergabemaschine, die zum Wiedergeben von Kartenbildern unter Verwendung von Kartenvektordaten verwendet wird.
  • 3 zeigt einen Teil der Datenstruktur, die in der Kartendatenbank von 1 verwendet werden kann.
  • 4A, 4B und 4C zeigen Beispiele für Wiedergaben von Kartendaten auf jeweils drei verschiedenen Zoomstufen.
  • 5 zeigt ein Ansichtsfenster, das eine Route anzeigt.
  • 6 zeigt eine Route mit diskreten Bereichen um die Route herum, die Kartendatenkacheln entsprechen.
  • 7 zeigt Kartendatenkacheln einschließlich erkannter Vorabruf-Kartendatenkacheln, die einem Kartenkachelradius entsprechen.
  • 8 zeigt zwei Punkte 802, 804 entlang einem Routensegment 810 (z. B. einem Straßensegment) mit entsprechenden Kachelradien 810.
  • 9 zeigt einen Prozessablauf für das Bestimmen von Vorabruf-Kartendatenkacheln mit Kachelradien.
  • 10 zeigt einen Kartendaten entsprechenden Bereich, der eine bestimmte Route umgibt.
  • 11A zeigt eine Kartenanzeige einer Route, die einen speziellen Interessenschwerpunkt auf der Route zwischen einem Ausgangsort und einem Zielort aufweist.
  • 11B zeigt eine Kartenanzeige einer Route mit einem versetzt zur Route liegenden Interessenschwerpunkt.
  • 12 zeigt Kartendatenkacheln einschließlich erkannter Vorabruf-Kartendatenkacheln für zwei verschiedene Zoomstufen.
  • 13 zeigt einen Prozessablauf zum Bestimmen einer Abfolge des Zugriffs auf Sätze von Kartendatenkacheln, die vorab abgerufen sein können.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Die vorliegende Anwendung betrifft allgemein das Vorabrufen von Kartendaten aus einer Kartendatenbank. Das Vorabrufen von Kartendaten kann sich auf den Zugriff auf/Abruf von Kartendaten durch eine Anwendung oder ein Gerät, bevor die Kartendaten für den unmittelbaren Gebrauch erforderlich sind, beziehen. In einer Ausführungsform können Kartendaten vor der Aktivierung einer Funktion, die die vorab abgerufenen Daten verwendet, vorab abgerufen werden. Zum Beispiel kann ein Computer auf Kartendaten aus einer Kartendatenbank zugreifen und/oder diese abrufen, bevor ein Benutzer eine Funktion aktiviert oder ausführt (z. B. eine Anzeige- oder Wiedergabefunktion), um diese Kartendaten zu nutzen. Ein Vorteil des Vorabrufs der Kartendaten liegt darin, dass in Zeiträumen, in denen eine Kartendaten Bank nicht verfügbar ist (z. B. wenn ein mobiles Computergerät offline ist) die vorab abgerufenen Kartendaten für eine Kartenanwendung oder ein Computergerät zur Bereitstellung von Diensten oder Funktionen wie dem Anzeigen einer vorab abgerufenen Route zur Verfügung stehen. Allgemein umfasst eine Route zwei Endpunkte (z. B. Ausgangs- und Zielort) und eine Menge von Wegen oder Straßen, die die beiden Endpunkte verbinden. Die Menge von Wegen oder Straßen können eine Abfolge haben. Die Abfolge kann auch einer Fahrtrichtung entsprechen. Routen und Routentypen werden unten ausführlicher beschrieben.
  • Genauer gesagt beschreibt die vorliegende Anwendung Methoden zum Anholen von Kartendaten als ausgewählte Teilmenge der gesamten verfügbaren Kartendaten, indem Kartendatenkacheln entsprechend einem die Route umgebenden Gebiet ausgewählt werden. Die Menge der Kartendaten, auf die zugegriffen wird, kann anhand einer Priorität von Punkten entlang der Route angepasst werden. In einer beispielhaften Implementierung können größere Mengen von Kartendaten für Endpunkte der Route (die Ausgangs- und Zielort darstellen) eingeholt oder abgerufen werden als für Punkte in der Mitte der Route Um zu bestimmen, welche Kartendaten einem Bereich um die Route herum entsprechen, kann ein Satz von Kartenkachelradien zur Bezeichnung von zu berücksichtigenden Kartendatenkacheln verwendet werden, die Bereichen einer Kartenoberfläche entlang der Route entsprechen.
  • In Bezug auf 1 umfasst ein kartenbezogenes Bildgebungssystem 10 gemäß einer Ausführungsform eine in einem Speicher 14 oder in mehreren Servern, beispielsweise an einem zentralen Ort oder an mehreren unterschiedlichen voneinander beabstandeten Orten vorhandenen Servern, gespeicherte Kartendatenbank 12 und des Weiteren mehrere Karten-Clientgeräte 16, 18, 20 und 22, von denen jedes ein Kartenwiedergabegerät oder eine Kartenwiedergabemaschine speichert und implementiert. Die Karten-Clientgeräte 1622 können über ein beliebiges verdrahtetes oder drahtloses Datenübertragungsnetz 25, unter anderem beispielsweise einem verdrahteten oder drahtlosen lokalen Netz (LAN), Metropolitan Area Network (MAN) oder Weitverkehrsnetz (WAN), dem Internet oder einer beliebigen Kombination davon, mit einem Server 14 verbunden sein. Bei den Karten-Clientgeräten 1622 kann es sich beispielsweise um Mobiltelefongeräte (18), Computer wie beispielsweise ein Laptop, Desktop oder andere Arten von Computer (16, 20) oder Komponenten von anderen Bildgebungssystemen wie beispielsweise Komponenten von Automobilnavigationssystemen (22) usw. handeln. Des Weiteren können die Clientgeräte 1622 kommunikativ mittels eines geeigneten Kommunikationssystems wie beispielsweise einem beliebigen öffentlich verfügbaren und/oder in Privatbesitz befindlichen Kommunikationsnetz, unter anderem jene, die eine fest verdrahtete Kommunikationsstruktur wie beispielsweise Telefon und Kabel-Hardware und/oder eine drahtlose Kommunikationsstruktur, wie beispielsweise drahtlose Kommunikationsnetze, unter anderem beispielsweise drahtlose LANs und WANs, Satelliten- und Mobiltelefonkommunikationssysteme usw. verwenden, mit dem Server 14 verbunden sein.
  • Die Kartendatenbank 12 kann beliebige gewünschte Typen oder Arten von Kartendaten, unter anderem Rasterbildkartendaten und Vektorbildkartendaten speichern. Die hierin beschriebenen Bildwiedergabesysteme können jedoch in manchen Ausführungsformen für die Verwendung mit Vektorbilddaten optimiert sein, die eine Reihe von Vertices oder Vertexdatenpunkten für jedes einer Vielzahl von Sätzen von Bildobjekten, Elementen oder Primitiven innerhalb eines anzuzeigenden Bildes definieren oder beinhalten. Allgemein weist jedes der von den Vektordaten definierten Bildobjekte eine Vielzahl von zu ihnen gehörenden Vertices auf, und diese Vertices werden zum Anzeigen eines kartenbezogenen Bildobjektes für einen Benutzer über eines oder mehrere der Clientgeräte 1622 verwendet.
  • Es versteht sich auch, dass jedes der Clientgeräte 1622 eine Bildwiedergabemaschine mit einem oder mehreren Prozessoren 30, einem oder mehreren Speichern 32, einem Anzeigegerät 34 und oftmals einer Rastereinrichtung oder Grafikkarte 36, die allgemein auf bekannte Weisen programmiert und miteinander verbunden sind, umfasst, um Grafiken (Bilder) auf dem zugehörigen Anzeigegerät 34 zu implementieren oder wiederzugeben. Beim Anzeigegerät 34 kann es sich für ein beliebiges bestimmtes Clientgerät 1622 um einen beliebigen Typ von elektronischem Anzeigegerät, wie beispielsweise eine Flüssigkeitskristallanzeige (LCD), eine Leuchtdiodenanzeige (LED), eine Plasmaanzeige, eine Kathodenstrahlröhren-Anzeige (CRT), oder einen beliebigen anderen Typ einer bekannten oder geeigneten elektronischen Anzeige handeln.
  • Allgemein ist das kartenbezogene Bildgebungssystem 10 von 1 so eingerichtet, dass ein Benutzer an einem der Clientgeräte 1622 eine Kartenanwendung (in 1 nicht dargestellt) öffnet oder ausführt, die so eingerichtet ist, dass sie mit der Kartendatenbank 12 über den Server 14 kommuniziert und Karteninformationen oder kartenbezogene Daten von ihr bezieht und anschließend ein Kartenbild auf der Grundlage der empfangenen Kartendaten anzeigt oder wiedergibt. Mit der Kartenanwendung kann der Benutzer verschiedene geographische Abschnitte der in der Kartendatenbank 12 gespeicherten Kartendaten anzeigen, einen bestimmten geographischen Ort vergrößern oder verkleinern, den zwei- oder dreidimensionalen Betrachtungswinkel der angezeigten Karten drehen, herumdrehen oder ändern usw. Insbesondere lädt beim Wiedergeben eines Kartenbildes auf einem Anzeigegerät oder einem Anzeigebildschirm 34 unter Verwendung des nachstehend beschriebenen Systems jedes der Clientgeräte 1622 Kartendaten in Form von Vektordaten aus der Kartendatenbank 12 herunter und verarbeitet diese Vektordaten unter Verwendung von einem oder mehreren Bild-Shadern, um ein Bild auf einem zugehörigen Anzeigegerät 34 wiederzugeben.
  • Unter jetziger Bezugnahme auf 2 wird ein Bilderzeugungs- oder Bildwiedergabegerät 40, das mit einem der Clientgeräte 1622 assoziiert ist oder von ihm implementiert wird, genauer dargestellt. Das Bildwiedergabesystem 40 von 2 umfasst zwei Prozessoren 30a und 30b, zwei Speicher 32a und 32b, eine Benutzerschnittstelle 34 und eine Rastereinrichtung 36. In diesem Fall sind der Prozessor 30b, der Speicher 32b und die Rastereinrichtung 36 auf einer separaten Grafikkarte (unterhalb der horizontalen Linie dargestellt) angeordnet, obgleich dies nicht in allen Ausführungsformen der Fall sein muss. So kann beispielsweise in anderen Ausführungsformen ein einzelner Prozessor verwendet werden. Das Bildwiedergabesystem 40 kann des Weiteren eine Netzwerkschnittstelle 42, eine Kommunikations- und Speicherroutine 43 und eine oder mehrere Kartenanwendungen 48 mit einer darin auf dem Speicher 32a gespeicherten Kartenanzeigelogik, die auf dem Prozessor 30a ausgeführt werden kann, umfassen. Auf gleiche Weise werden ein oder mehrere Bild-Shader, beispielsweise in Form von Vertex-Shadern 44 und Fragment-Shadern 46, auf dem Speicher 32b gespeichert und auf dem Prozessor 30b ausgeführt. Die Speicher 32a und 32b können einen flüchtigen und/oder einen nichtflüchtigen Speichers umfassen, und die Routinen und Shader werden auf den Prozessoren 30a und 30b ausgeführt, um die nachstehend beschriebene Funktionalität bereitzustellen. Die Netzwerkschnittstelle 42 kann beliebige gut bekannte Software- und/oder Hardwarekomponenten umfassen, die eingerichtet sind, um mit beispielsweise dem Server 14 von 1 über ein verdrahtetes oder drahtloses Kommunikationsnetzwerk zu kommunizieren, um Bilddaten in Form von Vektordaten zur Verwendung beim Erzeugen einer Bildanzeige auf der Benutzerschnittstelle oder dem Anzeigegerät 34 zu beziehen. Das Bildwiedergabegerät 40 kann auch einen Datenspeicher 49 umfassen, bei dem es sich zum Beispiel um einen Pufferspeicher oder einen flüchtigen Speicher handeln kann, der die von der Kartendatenbank 12 erhaltenen Vektordaten speichert, welche eine beliebige Anzahl an Vertex-Datenpunkten und eine oder mehrere Nachschlagetabellen umfassen, wie noch genauer beschrieben wird.
  • Während des Betriebs kann die Kartenlogik der Kartenanwendung 48 auf dem Prozessor 30 ausgeführt werden, um die bestimmten Bilddaten zu bestimmen, die zum Anzeigen über das Anzeigegerät 34 für einen Benutzer beispielsweise unter Verwendung von Benutzereingabe, GPS-Signalen, einer vorab gespeicherten Logik oder Programmierung usw. benötigt werden. Die Anzeige oder Kartenlogik der Anwendung 48 interagiert mit der Kartendatenbank 12 mithilfe der Kommunikationsroutine 43, durch Kommunikation mit dem Server 14 über die Netzwerkschnittstelle 42, um Kartendaten, vorzugsweise in Form von Vektordaten oder komprimierten Vektordaten von der Kartendatenbank 12 zu beziehen. Diese Vektordaten können über die Netzwerkschnittstelle 42 zurückgeführt und von der Routine 43 dekomprimiert und im Datenspeicher 49 gespeichert werden. Insbesondere kann es sich bei den von der Kartendatenbank 12 heruntergeladenen Daten um eine kompakte, strukturierte oder anderweitig optimierte Version der zuletzt zu verwendenden Vektordaten handeln, und die Kartenanwendung 48 kann so eingerichtet sein, dass sie die heruntergeladenen Vektordaten unter Verwendung des Prozessors 30a in spezielle Vertexdatenpunkte umwandelt. In einer Ausführungsform können die vom Server 14 gesendeten Vektordaten allgemeine Definitionsdaten für jede mit einer Anzahl von verschiedenen auf dem Bildschirm 34 anzuzeigenden Bildelementen oder Bildobjekten assoziierte Menge von Vertices und möglicherweise eine oder mehrere Nachschlagetabellen umfassen. Wenn gewünscht, können die Nachschlagetabellen von der Kartenanwendung 48 in Form von Vektortexturkarten, die bekannte Datendateitypen zur Definition einer bzw. eines bestimmten, als Teil eines mit Vektorgrafik erzeugten Bildes anzuzeigenden Textur oder Farbfeldes (Pixelwerte) sind, gesendet oder decodiert oder generiert werden. Insbesondere können die Vektordaten für jedes Bildelement oder Bildobjekt eine Vielzahl von Vertices umfassen, die zu einem oder mehreren Dreiecken gehören, die das bestimmte Element oder Objekt eines Bildes bilden. Jedes solche Dreieck umfasst drei Vertices (durch Vertexdatenpunkte definiert), und jeder Vertexdatenpunkt weist zu ihm gehörende Vertexdaten auf. In einer Ausführungsform umfasst jeder Vertex-Datenpunkt Standortdaten, die eine(n) zweidimensionale(n) oder eine(n) dreidimensionale(n) Position oder Standort des Vertex in einem Bezug oder virtuellen Raum sowie einen Attributbezug definieren. Jeder Vertexdatenpunkt kann zusätzlich weitere Informationen, wie beispielsweise eine Objekttypkennung, umfassen, die den Typ von Bildobjekt identifiziert, zum der Vertexdatenpunkt gehört. Der Attributbezug, der hierin als Stilbezug oder Merkmalsbezug bezeichnet wird, bezieht sich oder weist auf einen Standort oder eine Menge von Standorten in einer oder mehreren in den Datenspeicher 43 heruntergeladenen und dort gespeicherten Nachschlagetabellen.
  • Im Allgemeinen können Kartendaten in der Kartendatenbank 12 für eine bestimmte geographische Region in unterschiedlichen Zoomstufen gespeichert werden, wobei jede Zoomstufe aus einer Vielzahl von Kartendatenblöcken besteht, die als Kartendatenkacheln bezeichnet werden und die in einer Ausführungsform dazu verwendet werden können, eine visuelle Anzeige der Karte oder Kartenoberfläche in verschiedenen Detaillierungsgraden zu konstruieren. 3 zeigt eine beispielhafte Datenstruktur 200, die in der Kartendatenbank 12 verwendet werden kann. Die Kartendaten für eine bestimmte geographische Region können in zahlreichen (n) verschiedenen Zoomstufen-Datenstrukturen (von denen nur drei dargestellt sind) 202A, 202B und 202C gespeichert werden, wobei jede Datenstruktur durch eine Vielzahl von Kartendatenkacheln gebildet wird. Die Datenstruktur 202B, die die einzige für Erklärungszwecke nummerierte Struktur ist, zeigt die Kartendaten für die bestimmte oder feste geographische Region auf Zoomstufe z = 2, die aus 18 Kartendatenkacheln 204A bis 204R gebildet wird. Die Kartendatenkacheln können die Grundbausteine für den Aufbau einer Kartenanzeige darstellen. Jede Kartendatenkachel kann notwendige Kartendaten für den Aufbau eines Teils der Kartenanzeige (z. B. eine Kartenoberfläche) enthalten, darunter Daten, die verschiedene Kartenobjekte oder Kartenmerkmale wie Straßen, Gebäude und geographische Grenzen wie Wasserlinien, Bezirksgrenzen, Stadtgrenzen, Grenzen von Bundesstaaten, Berge, Parks usw. angeben. Die Kartendaten für eine geographische Region können in einer beliebigen Anzahl von verschiedenen Zoomstufen-Datenstrukturen gespeichert werden, um unterschiedliche Detaillierungsgrade für die jeweilige geographische Region anzubieten. In einer Ausführungsform können neunzehn Zoomstufen insgesamt in der Kartendatenbank 12 gespeichert werden.
  • Die Anzahl an Kacheln für eine feste geographische Region in den einzelnen Zoomstufen kann sich mit steigender Zoomstufenzahl z. B. linear, quadratisch, exponentiell oder auf andere Weise erhöhen. Die Zoomstufen in dem dargestellten Beispiel (z = 1, 2 und 5) haben jeweils 6, 18 und 60 Kartendatenkacheln, die die gleiche geographische Fläche oder Region abdecken. Da sich die Anzahl an Kartendatenkacheln für das gleiche Gebiet mit steigender Zoomstufe erhöhen kann, kann die Zoomstufe als Dichte von Kartendaten, die einer Anzahl an Kacheln pro Flächeneinheit entspricht, eingesehen werden. Höhere Zoomstufen erfordern allgemein mehr Kacheln pro Flächeneinheit und bieten damit eine höhere Kartendaten Dichte gegenüber niedrigeren Zoomstufen.
  • In der dargestellten Ausführungsform werden alle Kartendaten in Kartendatenkacheln gespeichert, und jede Kartendatenkachel in einer Zoomstufen-Datenstruktur kann der gleichen oder einer ähnlichen Speicherzuordnungsgröße zugewiesen werden. Zum Beispiel kann jede Kachel 204A bis 204R ein Bitmap-Bild mit einer Größe von 10 kB sein. Dies kann zum Beispiel erreicht werden, indem jede Kartendatenkachel ein geographisches Gebiet von gleicher Größe abdeckt. Bei Kartendatenkacheln mit Vektordaten kann die Datengröße bei den einzelnen Kacheln variieren, doch kann jeder Kachel in manchen Ausführungsformen dennoch der gleiche maximale Speicherplatz zugewiesen sein. Obwohl nicht dargestellt, können die Datenkacheln in anderen Ausführungsformen andere Speicherplatzzuweisungen in den einzelnen Zoomstufe-Datenstrukturen haben. In manchen Ausführungsformen kann jede Kartendatenkachel in einem Bitmap-Format gespeicherte Kartendaten enthalten, während in anderen Ausführungsformen jede Kartendatenkachel in einem Vektorformat gespeicherte Kartendaten enthalten kann.
  • 4A4C zeigen Kartenanzeigen, die z. B. ganz oder teilweise auf der Benutzerschnittstelle 34 angezeigt werden können, wobei jede Figur die Anzeige einer Kartenoberfläche auf einer anderen Zoomstufe anbieten kann. In den dargestellten Ausführungsformen bietet 4A eine Kartenanzeige 300 auf einer Beispiel-Zoomstufe z = 6, aufgebaut aus einer Reihe von Kartendatenkacheln 302318, die ein geographisches Gebiet der gleichen Größe abdecken und denen die gleiche Menge an Speicherplatz zugewiesen ist.
  • Im Betrieb kann der Server 14 für die Übertragung von Kartendaten an entsprechende Clientgeräte 1622 in von diesen Kartendatenkacheln definierten Datenblöcken ausgelegt sein. Um zum Beispiel die für den Aufbau einer Kartenanzeige 300 benötigten Kartendaten zu übertragen, kann der Server 14 jede Kartendatenkachel in einem Rahmen übertragen, dessen Header-Teil Identifizierungsdaten für den Rahmen (wie die geographische Position, die Adresse des kleinen Geräts, Versionsnummer der Kartendatenkacheln usw.) angibt und dessen Nutzdatenteil die speziellen Kartendatenkacheldaten enthält, mit denen die Anzeige gebildet werden soll. Kartendatenkacheln können einen effektiven Mechanismus zur Quantisierung der in der Krankendatenbank 12 gespeicherten Kartendaten und zur Quantisierung der Übertragung der Kartendaten über das Netzwerk 25 an die Clientgeräte 1622 bieten.
  • Im Vergleich zu 4A zeigt 4B eine Kartenanzeige 400 auf einer höheren Zoomstufe als der in 4A, in diesem Beispiel die Zoomstufe z = 10. Die Kartenanzeige 400 kann aus einer Vielzahl von Kartendatenkacheln 402432 gebildet werden. Wie die Kartendatenkacheln 302318 sind auch die Kartendatenkacheln 402432 von gleicher Größe, z. B. decken ein geographisches Gebiet der gleichen Größe ab und nehmen den gleichen Speicherplatz ein. 4C zeigt eine weitere Kartenanzeige 480 auf einer dritten, noch höheren Zoomstufe, der Zoomstufe z = 12, gebildet aus Kartendatenkacheln.
  • Jede der Anzeigen 300, 400 und 480 kann einen Teil der gesamten Kartendaten, die viel mehr Kartendatenkacheln umfassen, darstellen. Wie in 4A4C dargestellt, haben die Kartendatenkacheln, die die einzelnen Kartenanzeigen bilden, verschiedene Detaillierungsgrade. Die Kacheln 302318 können geographische Grenzen darstellen, aber keine Straßen, nur Fernstraßen und/oder Autobahnen, während die Kacheln von 4C in einer höheren Zoomstufe vorliegen und Informationen zu Straßen, Gebäuden, Parks, Endpunkten usw. enthalten können.
  • Wenn ein Benutzer die Kartenanzeigen 300, 400 und 480 verwendet, kann der Benutzer vielleicht scrollen wollen, um andere Kartendaten (die anderen geographischen Gebieten entsprechen) in der Nähe der dargestellten Kartendaten anzuzeigen. Daher können die Clientgeräte 1622 ein System zum Abrufen und Speichern einer ausreichenden Menge von Kartendaten zur Bildung der Kartenanzeige verwenden, während sie zusätzliche Kartendaten in einem der lokalen Kleingeräte 1622 Puffer, um eine effiziente Interaktion des Benutzers mit der Anzeige zu gestatten.
  • 5 zeigt ein Ansichtsfenster 500, das eine Route 501 anzeigt. Die Route kann auf eine Kartenoberfläche oder einen Kartenbereich projiziert werden. Im Allgemeinen kann die Route 501 einen Ausgangsort 502, einen Zielort 504 und eine Menge von Fernstraßen, Straßen, Wegen, Segmenten usw. 506 enthalten, die zusammen den Ausgangsort 502 mit dem Zielort 504 verbinden. Eine Menge in der hier verwendeten Bedeutung umfasst ein oder mehrere Elemente. Die Menge von Fernstraßen kann als Abfolge von Fernstraßen geordnet sein. Die Route 501 kann eine Richtung haben, die auch durch die Abfolge der Menge von Fernstraßen angegeben wird. Die Route 501 kann auf mehrerlei Weise bestimmt werden. Zum Beispiel kann ein Benutzer einen Ausgangsort und einen Zielort angeben (z. B. kann der Benutzer zwei Adressen eingeben), und eine Kartenanwendung kann mit Daten aus einer Kartendatenbank eine Menge von Straßen bestimmen, die die beiden Punkte oder Standorte einander verbinden, und so eine Route bilden. In manchen Fällen kann die Kartenanwendung eine Vielzahl von Ausgangs- und Zielort verbindenden Routen ermitteln, wobei ein Benutzer die Möglichkeit zur Auswahl oder Angabe mindestens einer der möglichen Routen für die Verarbeitung hat. Alternativ dazu kann der Benutzer der Kartenanwendung eine Route einschließlich eines Ausgangsorts, eines Zielorts und einer Sammlung von Ausgangs- und Zielort verbindenden Wegen (z. B. Fernstraßen) angeben.
  • In einer Ausführungsform der hierin beschriebenen Methoden kann auf eine Kartendatenbank, zum Beispiel die Kartendatenbank 12, zugegriffen werden, um Kartendaten (z. B. Kartendatenkacheln) vorab einzuholen oder abzurufen, die einem eine bestimmte Route umgebenden Kartengebiet entsprechen. In einer anderen Ausführungsform können Kartendaten vorabgerufen werden, um eine oder mehrere Routen zu generieren. Die zum Generieren einer Route verwendeten Kartendaten können in den gleichen Kartendatenkacheln enthalten sein, mit denen Informationen für das Anzeigen einer Route bereitgestellt werden. In einer anderen Ausführungsform können die zum Generieren einer Route verwendeten Daten in Kartendatenkacheln enthalten sein, die von den Kartendatenkacheln zur Wiedergabe der Route getrennt sind. In einer anderen Ausführungsform können die zum Generieren einer Route verwendeten Daten in einer von den Kartendatenkacheln verschiedenen Datenform enthalten sein. Der Vorabruf umfasst allgemein das Aktivieren eines Abrufs von Kartendaten, bevor die Daten zur Verarbeitung benötigt werden. Zum Beispiel kann der Vorabruf das Abrufen von Kartendaten bedeuten, bevor eine Wiedergabe- oder Anzeigefunktion aktiviert wird, die diese Kartendaten nutzt. Der Vorabruf kann auch das Speichern von Kartendaten in einem lokalen Speicher für den schnelleren Abruf gegenüber einer Kartendatenbank umfassen. Zum Beispiel können die Zugriffsgeschwindigkeit auf den lokalen Speicher schneller als die Zugriffsgeschwindigkeit auf die Kartendaten Bank sein (z. B. wegen der intermittierenden Verbindung, Verbindungsbandbreite usw.). In Situationen, in denen ein Mobilgerät nur hin und wieder Zugriff auf den Server 14 über das Netzwerk 25 hat, kann der Vorabruf das Planen des Zugriffs und Abrufs von Kartendaten umfassen, wenn das Clientgerät eine Verbindung zum Server 14 herstellen kann, unabhängig davon, ob das Mobilgerät/der Benutzer den Zugriff auf diese Daten überhaupt angefordert hat (z. B. über eine Anforderung oder Funktion zur Wiedergabe von Kartendaten, die den vorabgerufenen Daten entsprechen).
  • 6 zeigt die Route 501 von 5 mit um die Route herum angeordneten quadratischen Gebieten 510. Es ist zu beachten, dass der Begriff „um ... herum” in Bezug auf einen Ort oder Punkt den Ort oder Punkt einschließt. Somit umfasst „um den Zielort herum” einen Bereich, der an den Zielort angrenzt, sowie den Zielort selbst. Die Quadrate 510 können diskrete Bereiche der Karte sein, die diskreten Einheiten von Kartendaten entsprechen. In Bezug auf die oben beschriebenen Kartendatenkacheln kann jedes quadratische Gebiet 510 Kartendatenkacheln für eine bestimmte Zoomstufe darstellen oder ihnen entsprechen. Die Gebiete 510 können nur eine Teilmenge der Gesamtmenge von verfügbaren oder abrufbaren Kartendatenkacheln darstellen. Wenn zum Beispiel Kartendatenkacheln allgemein für das gesamte Ansichtsfenster 600 existieren können, sind die von den Gebieten 510 dargestellten Kartendatenkacheln nur ein Bruchteil der gesamten Menge an Kartendatenkacheln für das Ansichtsfenster.
  • 6 zeigt, dass auf einer bestimmten Zoomstufe eine Mindestmenge von Kartendaten zum Anzeigen einer Route mindestens eine Menge von Kartendatenkacheln umfassen kann, die einem Gebiet entspricht, das jeden Punkt auf der Route umgibt. In einer Ausführungsform kann eine Mindestmenge von Kartendaten für eine Route vorab angeholt oder abgerufen werden, indem über eine Kartendatenbank auf die den Gebieten 510 in 6 entsprechenden Kartendatenkacheln zugegriffen wird. Zum Beispiel kann eines der Geräte des Systems 10 Anweisungen umfassen, die bei Ausführung durch einen Prozessor festlegen, ob ein Punkt auf einer Route in eine Kartendatenkachel eingeschlossen ist und Kartendatenkacheln bestimmen oder erkennen, die die Mindestanzahl von die Route umgebenden Kartendatenkacheln darstellen.
  • Ein größeres Gebiet um die Route herum kann für die Wiedergabe von manchen Situationen einer Kartenanwendung bevorzugt sein. Allgemein kann das Verfahren und System eine Teilmenge von Kartendatenkacheln für ein die Route umgebendes Gebiet (z. B. die Route von 59) festlegen, indem es einen Kachelradius von Punkten entlang der Route einschließlich eines Ausgangsorts und eines Zielorts bestimmt. 7 veranschaulicht ein Beispiel für eine Kartenanzeige 700, die einen Teil der in der Kartendatenbank 12 gespeicherten verfügbaren Kartendaten auf einer ersten (beliebigen) Zoomstufe zeigt. Ein Interessenschwerpunkt 704 wird mit einem zugewiesenen Kartenkachelradius 754 dargestellt Der Kartenkachelradius 754 ist ein radialer Abstand vom Interessenschwerpunkt 704 zur Erkennung von Kacheln, die aus der Kartendatenbank 12 angeholt werden müssen. Der Kachelradius 754 erstreckt sich in 7 vom Interessenschwerpunkt 704 zur Angabe einer Vielzahl von mit dem Interessenschwerpunkt verbundenen Kartendatenkacheln, die innerhalb des Umfangs der vom Kachelradius R angegebenen Region 756 angeordnet sind. In der dargestellten Ausführungsform definiert diese Region 756 die Menge von vorabgerufenen Kartendatenkacheln, die zum Beispiel in der Kartendatenbank 12 angegeben und zu einem der Clientgeräte 1622 gesendet werden müssen. In einem Beispiel liegen Kartendatenkacheln, die sich auch nur teilweise mit der Umfangsregion 756 überschneiden, innerhalb der Menge der vorabgerufenen Kartendatenkacheln. Diese Kacheln sind in 7 schattiert dargestellt.
  • 8 zeigt zwei Punkte 802, 804 entlang einem Routensegment 810 (z. B. einem Straßensegment) mit entsprechenden Kachelradien 810. Die schattierten Bereiche von 8 stellen Kartendatenkacheln dar, die für das Routensegment 810 auf der Basis der Radien 802, 804 abgerufen werden können. In 8 können nur wenige Punkte (z. B. Punkte, die durch ein konstantes Intervall voneinander beanstandet sind) entlang der Straße zur Bestimmung von Kartenradien verwendet werden, und die entsprechenden schattierten Gebiete können abgerufen werden. In anderen Ausführungsformen können mehr Punkte zum Definieren von Kartenkachelradien für ein Liniensegment verwendet werden. Während ein Liniensegment, zum Beispiel ein Straßensegment, außerdem eine unendliche Anzahl von Punkten umfassen kann, erfordern Kartenkachelanforderungen nicht unbedingt eine große Anzahl von Anforderungen oder Angaben für Datenkacheln. Stattdessen kann für die gesamte Länge des Liniensegments ein schattiertes interessierendes Gebiet berechnet werden (zum Beispiel mit einer Integralfunktion) und können mit einer einzigen Berechnung alle Kacheln im Radius der Route angegeben werden. Dann können alle entsprechenden Kartendatenkacheln mit einem einzigen Aufruf (z. B. zu einem Zeitpunkt) abgerufen werden.
  • 9 zeigt ein Prozessablaufdiagramm oder Flussdiagramm eines Verfahrens, einer Routine oder eines Prozesses 900, mit dem/der Kartendaten für eine Kartenoberfläche wie in 56 dargestellt vorabgerufen werden können. Das Verfahren 900 kann einen oder mehrere Blöcke, Module, Routinen oder Funktionen in der Form computerausführbarer Anweisungen beinhalten, die auf einem physisch greifbaren computerlesbaren Medium gespeichert werden und unter Verwendung eines Prozessors des Servers 14 oder der Clientgeräte 1622) ausgeführt werden. Das Verfahren 900 kann als Modul oder Komponente eines Backend-Geräts (z. B. der Server 14) oder Frontend-Geräts (z. B. die Clientgeräte 1622) einer Computerumgebung für das hierin beschriebene System oder als Teil eines Moduls außerhalb eines solchen Systems eingebunden sein. Zur leichteren Erklärung wird 9 unter Bezugnahme auf die Figuren beschrieben, das Verfahren 900 kann jedoch selbstverständlich auch mit anderen Objekten und Benutzerschnittstellen verwendet werden. In jedem Fall bestimmt ein Block 902 Routeninformationen, darunter Informationen zu einem Ausgangsort, einem Zielort und einer Menge von Straßen, die Ausgangsort und Zielort verbinden. Diese können als Antwort auf eine oder mehrere Anweisungen, die innerhalb einer Kartenanwendung auf einem der Clientgeräte 1622 ausgeführt werden, empfangen werden. Der Block 902 kann Kartendaten zum Generieren einer Route auch vorab abrufen. Wie besprochen können diese Kartendaten zum Generieren einer Route die Form von Kartendatenkacheln annehmen, welche die gleichen oder andere Kartendatenkacheln als die zur Wiedergabe einer Route sein können, oder sie können als ganz und gar andere Datenform gespeichert sein. In einer Ausführungsform können die Kartendaten zum generieren einer Route die Form einer eine Route definierenden Liste von Abbiegeanweisungen haben.
  • Ein Block 904 kann einen Satz von Kartenkachelradien für Punkte entlang der Route bestimmen. In einer Ausführungsform kann der Block 904 einen Mindestkachelradius für alle Punkte entlang der Route bestimmen. Der Mindestkartenkachelradius kann zur Aktivierung einer Mindestanzahl von zu wählenden Kartendatenkacheln, die einem die gesamte Route umgebenden Gebiet entsprechen (wie dem von 6) ausgewählt werden. Dieser Mindestkartenkachelradius kann als fester Radius für die gesamte Route angesehen werden. In anderen Ausführungsformen kann der Block 904 auch eine Menge von Kartenkachelradien für Interessenschwerpunkte oder Punkte mit Priorität entlang der Route festlegen. Diese Interessenschwerpunkte können mit größeren Radien als dem Mindestkachelradius festgelegt werden (was unten noch weiter erläutert wird). Wenn die Radien für die Route bestimmt sind, kann ein Block 906 auf eine Kartendatenbank, zum Beispiel die Kartendatenbank 12, zugreifen, um den in Block 904 festgelegten Radien entsprechende Kartendatenkacheln abzurufen. Ein Block 908 kann dann die Kartendatenkacheln entsprechend den in Block 904 festgelegten Radien abrufen und die abgerufenen Kacheln in einem lokalen Speicher eines Clientgeräts 1622 speichern.
  • In einer Ausführungsform kann einem Punkt entlang der Route ein Prioritätswert zugewiesen werden. Zum Beispiel kann eine Priorität mit einem Flag, einem Attribut oder einer anderen mit einem Punkt auf der Route verbundenen Kennung zugewiesen oder gekennzeichnet werden. Ein Routensegment kann durch eine Menge von Punkten definiert werden, und somit kann das Routensegment (z. B. ein Straßensegment der Route) einer Priorität entsprechen, wenn einer Menge von das Routensegment definierenden Punkten diese Priorität zugewiesen wird. Weiterhin kann ein Prioritätsattribut einfach ein hoher oder niedriger Wert sein (d. h. Priorität oder keine Priorität). In anderen Ausführungsformen kann die Priorität ein Skalenwert zwischen einem hohen und einem niedrigen Wert sein.
  • Das hierin beschriebene Verfahren und System kann über die Schnittstelle 34 einen oder mehrere Interessenschwerpunkte zur Anzeige für den Benutzer festlegen. Die Interessenschwerpunkte können auf der Grundlage einer Benutzereingabe festgelegt werden, zum Beispiel, indem der Benutzer eine Adresse in ein auf der Schnittstelle 34 angebotenes Datenfeld eingibt, oder indem der Benutzer einen durch Interaktion mit der Schnittstelle 34 gefundenen Interessenschwerpunkt auswählt. Im Allgemeinen kann die Priorität eines Punktes entlang der Route eine Wahrscheinlichkeit darstellen oder durch sie bestimmt werden, dass ein Benutzer eine Funktion aktiviert, die auf diesem Punkt entsprechende Kartendaten zugreift. Zum Beispiel kann der Benutzer eine Funktion aktivieren, um einen Teil der Karte mit bestimmten Kartendaten anzuzeigen. Die Wahrscheinlichkeit des Zugriffs kann aufgrund von Messdaten des Systems im Betrieb bestimmt werden, darunter zum Beispiel durch Analyse der durchschnittlichen Anzahl von Malen, die Anweisungen der Kartenanwendung zum Zugriff auf Kartendaten ausgeführt werden.
  • In einer Ausführungsform können Ausgangsort und Zielort standardmäßig als Interessenschwerpunkte mit einer hohen Priorität zugewiesen werden. 10 zeigt einen Bereich 1000, der die festgelegte Route 501 (5) umgibt, wobei es Kartendaten gibt, die einem größeren Gebiet um den Ausgangsort 502 und den Zielort 504 entsprechen, als entlang der Route 506, die den Ausgangsort 502 und den Zielort 504 verbindet. 10 zeigt, dass dem Ausgangsort 502 und Zielort 504 eine höhere Priorität als einer Menge von Punkten entlang der Route 506 zwischen Ausgangspunkt und Zielort zugewiesen werden kann. In diesem Fall werden dem Ausgangsort 502 und dem Zielort 504 größere Kartenkachelradien zugewiesen. Ausgangsort und Zielort können standardmäßig Interessenschwerpunkte darstellen. In diesem Fall wird für die Punkte mit hoher Priorität (Ausgangsort und Zielort) eine größere Menge von Daten abgerufen als für die Punkte mit geringerer Priorität auf der Verbindungsroute.
  • In manchen Ausführungsformen kann der Zielort 504 eine höhere Priorität und somit mehr einem größeren Gebiet entsprechende Kartendaten als der Ausgangspunkt 502 haben. Dies kann in Situationen gelten, in denen der Benutzer zu einem Zielort reisen möchte und wahrscheinlich mehr Informationen am Zielort (potenziell längere Aufenthaltsdauer) benötigt als am Ausgangsort (potenziell geringere Aufenthaltsdauer, da der Benutzer von dort abreist). Es gibt jedoch manche Situationen, in denen der Ausgangsort eine größere Priorität erfordert und ihm ein größerer Kartenbereich zugewiesen wird. Dies kann zum Beispiel der Fall sein, wenn die Komplexität des Gebiets um den Ausgangsort herum (z. B. nimmt die Komplexität mit der Anzahl an Kreuzungen, Straßen und schwierigem Gelände zu) hoch ist und eine größere Menge von Kartendaten zum Navigieren durch das Gebiet um den Ausgangsort herum benötigt wird.
  • 11A stellt ein Ansichtsfenster 1100 auf einer Kartenoberfläche dar, das mehrere Interessenschwerpunkte 502, 504 und 1101 zeigt. 11A zeigt einen speziellen Interessenschwerpunkt 1101 auf der Route 501 zwischen dem Ausgangsort 502 und dem Zielort 504. In dieser Situation kann dem Interessenschwerpunkt 1101 eine höhere Priorität und ein größerer Kachelradius als der ihn umgebenden Route zugewiesen werden. Dieser Interessenschwerpunkt kann eine Stadt, eine Ortschaft oder ein sonstiges Wahrzeichen sein, dem eine hohe Priorität zugewiesen wurde. Einer Vielzahl von Interessenschwerpunkten entlang der Route kann eine hohe Priorität zugewiesen werden, und größere Mengen von Kartendatenkacheln können für diese Interessenschwerpunkte abgerufen werden.
  • 11B zeigt ein Ansichtsfenster 1150 der Route 501, in dem ein spezieller Interessenschwerpunkt 1120 um eine gewisse Entfernung versetzt von der Route 501 zwischen dem Ausgangsort 502 und im 504 lokalisiert ist. In dieser Situation kann ein Gebiet 1125 um den Punkt 1120 herum bezeichnet und können die entsprechenden Kartendatenkacheln für das Gebiet 1125 markiert werden. In einer Ausführungsform kann ein Kachelradius für den Interessenschwerpunkt 1120 so bestimmt werden, dass sich ein Umfang des Kachelradius mit dem Kachelradius eines Punktes entlang der Route 501 überschneidet, der dem Interessenschwerpunkt 1120 am nächsten liegt. Dies kann für Interessenschwerpunkte, die sich nahe der Route 501 befinden, komfortabel sein. In einer weiteren Ausführungsform kann das Verfahren und System einen oder mehrere Wege von einem Punkt entlang der Route zum Interessenschwerpunkt 1120, der sich außerhalb der Route befindet, festlegen. Ob ein Weg für den Interessenschwerpunkt 1120 bestimmt wird, kann von einer Entfernung zwischen dem Interessenschwerpunkt 1120 und den Weg 501 abhängen. Zum Beispiel kann ein Weg für eine Route zu einem abseits der Route liegenden Interessenschwerpunkt 1120 festgelegt werden, wenn eine Entfernung zu dem Punkt an oder unter einem Entfernungsgrenzwert liegt, um der Wahrscheinlichkeit gerecht zu werden, dass ein Benutzer eher eine kürzere als eine längere Entfernung von der Route abweichen wird, um zum Punkt 1120 zu reisen.
  • Die Priorität von Punkten entlang der Route kann auf der Grundlage einer Benutzereingabe festgelegt werden, zum Beispiel, indem der Benutzer eine Adresse in ein auf der Schnittstelle 34 angebotenes Datenfeld eingibt, oder indem der Benutzer einen durch Interaktion mit der Schnittstelle 34 gefundenen Interessenschwerpunkt auswählt. Zum Beispiel kann der Kunde einen Web-Browser oder ein anderes auf dem Clientgerät laufendes Programm öffnen, das einen Standort, ein Unternehmen, eine Wohnadresse usw. angibt, von dem aus eines der Kleingeräte 1622 dem Benutzer gestatten kann, ein solches Element für den Aufbau einer Kartenanzeige der Gegend um einen solchen Interessenschwerpunkt herum auszuwählen.
  • Jede geeignete manuelle Methode zur Eingabe oder sonstigen Angabe eines oder mehrerer Interessenschwerpunkte kann von einem der Clientgeräte 1622 verwendet werden. Weiterhin kann eine Kartenanwendung auf einem der Clientgeräte 1622 automatisch Interessenschwerpunkte erkennen, zum Beispiel durch Bestimmen einer GPS-Position des aktuellen Standortes auf einem der Clientgeräte 1622, durch Bestimmen der zuletzt gesuchten Interessenschwerpunkte, durch Zugreifen auf eine Datenbank mit gespeicherten Interessenschwerpunkten oder durch bestimmen der vor zuletzt besuchten Interessenschwerpunkte (z. B. Städte, Wohngebiete usw.). Natürlich kann die Kartenanwendung in manchen dieser Fälle Standorte bestimmen, für die Kartendaten zum Speichern auf dem Benutzergerät als Hintergrundanwendung und somit ohne eine bestimmte Benutzermitwirkung heruntergeladen werden sollen.
  • Wie bereits angesprochen, können Prozessblöcke 906908 auf eine Kartendatenbank zugreifen, um eine größere Anzahl von Kartendatenkacheln, die größeren Kartengebieten um Interessenschwerpunkte herum auf einer einzelnen Zoomstufe entsprechen, vorabzurufen. In einer Ausführungsform kann das Verfahren und System anstatt oder neben dem Vorabruf weiterer Kartendatenkacheln auf einer ersten einzelnen Zoomstufe für Punkte mit hoher Priorität Kartendatenkacheln für Punkte mit hoher Priorität auf einer zweiten, höheren Zoomstufe vorabrufen. 12 zeigt die gleiche Route wie 6 mit Gebieten 506, die Kartendatenkacheln von der gleichen Größe wie die Zoomstufe von 6 darstellen. Außerdem zeigt 12 zusätzliche Kartendatenkacheln, die durch Gebiete 1210 auf einer zweiten, höheren Zoomstufe dargestellt werden. Ein Benutzer, der in ein Gebiet um den Ausgangsort 502 oder den Zielort 504 zoomen möchte, kann eine Zoomfunktion des Ansichtsfensters aktivieren. Wenn die Kartendatenkacheln mit höherer Zoomstufe auf eines der Clientgeräte 1622 vorabgerufen wurden, ist die Reaktionszeit für die Wiedergabe dieser Kartendatenkacheln relativ schnell.
  • Natürlich kann das Verfahren und System zusätzlich zum Abrufen zusätzlicher Kartendatenkacheln auf einer zweiten, höheren Zoomstufe auch Kartendatenkacheln auf einer zweiten, höheren Zoomstufe für ein anderes Gebiet als das der ersten Zoomstufe oder für ein anderes Gebiet in Bezug auf andere Punkte auf der Route mit der zweiten, höheren Zoomstufe abrufen. Das Verfahren und System kann Daten mit höherer Zoomstufe für Punkte entlang der Route mit geringer Priorität (z. B. in der Mitte der Route, ohne einen Interessenschwerpunkt usw.) abrufen oder auch nicht. Ob Kartendaten mit höherer Zoomstufe für Punkte um die Mitte der Route herum abgerufen werden, kann von der Priorität der Punkte entlang der Route abhängen. Wie bereits erwähnt, kann die Priorität eines Punktes auf der Route zum Teil auf einer Bestimmung einer Zugriffswahrscheinlichkeit für diese Kartendaten basieren.
  • Das oben beschriebene Verfahren und System kann nur auf der Grundlage von festgelegten Gebieten, die die festgelegte Route umgeben, eine Teilmenge der verfügbaren oder abrufbaren Kartendatenkacheln abrufen oder verarbeiten oder in einem Cache-Speicher eines Clientgeräts 1622 speichern. Das Verfahren und System kann eine schnellere Reaktionszeit bieten, wenn antizipierte Kartendaten in einen lokalen Cache-Speicher heruntergeladen werden. Während eine Art der oben diskutierten Priorität auf der Angabe basiert, welche Kartendaten (Gebiet und/oder Zoomstufe Daten um eine Route herum) abzurufen sind, kann ein zweiter Typ von Priorität eine Reihenfolge oder Abfolge angeben, in der die Kartendaten abgerufen werden. Die Reihenfolge des Abrufs von Kartendaten (z. B. Kartendatenkacheln) kann zur Reduzierung von Bandbreite und Prozessorbelastung beitragen. Die Reihenfolge des Abrufens von Kartendaten kann auch gewährleisten, dass wichtigere Kacheln mit höherer Priorität zuerst heruntergeladen werden, falls eine Verbindung zu einem Server mit den Kartendaten während des Abrufens abbricht.
  • 13 zeigt einen Prozessablauf zur Festlegung der Reihenfolge, in der Kartendatenkacheln abgerufen werden. Block 1302 kann Sätze von verschiedenen zu empfangenden Kartendaten bestimmen. Die Sätze von Kartendaten können den wie oben erläutert bestimmten Kartendaten entsprechen. Zum Beispiel kann ein erster Satz von Kartendaten dem Gebiet um den Ausgangsort, ein zweiter Satz von Kartendaten dem Gebiet um den Zielort, ein dritter Satz von Kartendaten dem Gebiet entlang des Weges zwischen Ausgangsort und Zielort und ein vierter Satz von Kartendaten einem zusätzlichen Interessenschwerpunkt entsprechen. Zusätzliche Sätze können andere Zoomstufendaten für Teile der Route (z. B. Ausgangsort, Zielort, Straßensegmente und andere Interessenschwerpunkte) umfassen.
  • Ein Block 1304 kann dann eine aktuelle Bedingung des Systems (z. B. einen Ansichtsfensterzustand, eine aktuelle Bandbreite, eine aktuelle Prozessorkapazität usw.) festlegen. Ein Block 1306 kann dann eine Abfolge für den Vorabruf der einzelnen Sätze von in Block 1302 bestimmten Kartendaten festlegen. Die Festlegung von Block 1306 kann auf der Grundlage der in Block 1304 festgelegten Bedingung ausgeführt werden. Die in Block 1306 festgelegte Reihenfolge kann eine feste Standardreihenfolge sein, die auf einer wahrscheinlichen Zugriffsreihenfolge durch einen Benutzer basiert. Dies kann der Fall sein, wenn Block 1304 eine Standardbedingung angibt. Bei Block 1308 kann auf eine Kartendatenbank in der durch Block 1307 für die einzelnen Sätze von Kartendatenkacheln des Blocks 1302 festgelegten Abfolge zugegriffen werden. Bei Block 1310 können die betreffenden Kartendaten dann abgerufen und/oder in einem lokalen Speicher für den schnellen Zugriff abgelegt werden, wenn ein Benutzer oder die Kartenanwendung eine Zugriffs- oder Verarbeitungsfunktion aktiviert, die die Kartendaten erfordert.
  • Eine allgemeine Abfolge kann das Abrufen von Kartendaten für einen Zielort, einen Ausgangsort, zusätzliche Interessenschwerpunkte entlang der Route und schließlich Verbindungssegmente (Straßensegmente) zu verschiedenen Interessenschwerpunkten abseits der Route umfassen. Eine weitere Abfolge kann mit einem Überblickssatz von Kartendaten, der eine Mindestmenge von Kartenkacheldaten für eine Zoomstufe und eine Ansichtsfensterposition umfasst, bei der Ausgangsort und Zielort in dem gleichen Bildschirm (wie dem von 5) anzeigbar sind. Eine weitere Abfolge kann Kartendaten zum Überblickssatz auf einer ersten Zoomstufe, Kartendaten von Ausgangsort und Zielort auf einer höheren Zoomstufe, dann Straßensegmenten entsprechende Kartendaten auf der ersten Zoomstufe umfassen. In noch einer weiteren Abfolge können die Ausgangsortdaten den Zielortdaten vorausgehen, wenn dem Ausgangsort eine höhere Priorität zugewiesen ist. Dies kann der Fall sein, wenn ein Ausgangsort eine komplizierte Verkehrssituation enthält. In einem weiteren Fall können Zusatzinformationen zu einer aktuellen Benutzerposition (z. B. über ein GPS-Positionssignal) den Benutzer auf eine vom Ausgangsort entfernte Route platzieren. In anderen Situationen können Kartendaten für Interessenschwerpunkte entlang der Route eine höhere Priorität als der Ausgangsort haben. Natürlich sind andere Abfolgen möglich und liegen im Funktionsumfang der hierin beschriebenen Methoden.
  • In einer Ausführungsform kann sowohl auf die Abfolge als auch auf das Gebiet von Kartendatenkacheln auf der Grundlage eines Zustands des Ansichtsfensters zugegriffen oder diese vorabgerufen werden. Insbesondere kann auf Kartendatenkacheln anhand einer Ansichtsfensterposition zugegriffen werden. Die Ansichtsfensterposition kann in der Nähe eines bestimmten Punktes entlang der Route zentriert sein. Mit der Veränderung der Ansichtsfensterposition in der Weise, dass sich dessen Mittelpunkt anderen Teile der Route annähert, können entweder zusätzliche Gebietskartendaten abgerufen (z. B. über Blocks 906908) oder eine Abrufabfolge geändert werden (z. B. über Blocks 13061310). Diese Ausführungsform kann in Situationen verwendet werden, in denen eine aktuelle Position eines eine Karte wiedergebenden Geräts geliefert wird, um die Karte auf dieser aktuellen Position (z. B. mit einem GPS-System) zu zentrieren.
  • Die Menge von Kartenkacheldaten und die Abfolge, in der auf Teilmengen der Kartenkacheldaten zugegriffen wird, kann auf einer aktuellen Bandbreite oder Prozessorlast des Systems von 1 basieren. Entscheidungen darüber, ob ein größerer oder kleinerer Radius von Kartendatenkacheln heruntergeladen werden soll, hängen von der Bandbreite und/oder Latenzerwägungen im Zusammenhang mit dem Abruf der Menge von Kartendatenkacheln von einem Server ab. In manchen Ausführungsformen hängen Bandbreitenerwägungen von der Prüfung ab, ob die aktuelle Bandbreite/Zeit zum Herunterladen für den Abruf der Kartendatenkacheln über einem Schwellenwert liegt. Zum Beispiel kann eines der Clientgeräte 1622 eine aktuelle Download-Geschwindigkeit eines Abrufprozesses prüfen, um zu bestimmen, ob zusätzliche, einem größeren Kachelradius entsprechende Kartendatenkacheln abgerufen werden müssen.
  • Prozessorkapazität zum Zugriff auf die Kartendatenbank keinen in Betracht gezogen werden. Zum Beispiel kann eine aktuelle Prozessorkapazität im Vergleich zu einem Schwellenwert geprüft werden. Dies kann der Fall sein, wenn eine aktuelle Bedingung der Kartenanwendung ein reduziertes Abrufen und/oder Verarbeiten von Daten aufgrund der Prozessorbelastung erfordert. Wenn der Prozessor zum Beispiel überladen ist oder einen Datenstau hat (die Prozessorkapazität ist niedrig unterliegt unter einem Schwellenwert), kann der Kartendatenkachelradius verkürzt werden, um die Gesamtmenge der abgerufenen und verarbeiteten Kartendatenkacheln zu reduzieren und so die Arbeitslast des Prozessors zu verringern.
  • Weiterhin können Abfolge und Menge der vorabgerufenen Kartendatenkacheln auf Speicherbedingungen basieren. Zum Beispiel kann eine begrenzte Menge von Speicherplatz für den Vorabruf von Kartendaten zugewiesen sein. Die entsprechenden Bereiche von Kartendatenkacheln können skaliert werden, um den zur Verfügung stehenden Speicherplatz zu berücksichtigen. Die Abrufabfolge kann anhand eines verfügbaren Speicherplatzbudgets umgeordnet werden. Als Alternative kann die Anzahl der Sätze von Kartendatenkacheln aufgrund des Speicherplatzbudgets reduziert werden.
  • Jede geeignete Teilmenge der Blocks aus 9 und 13 kann in jeder geeigneten Reihenfolge durch eine Anzahl von verschiedenen Geräten (z. B. Client oder Server) implementiert werden und mit dem hierin beschriebenen Verfahren und System in Übereinstimmung bleiben. Außerdem können zusätzliche Bestimmungsblocks zur Verfeinerung des Filters von Stilparametern, die der Interpolationsverarbeitung unterliegen, hinzugefügt werden.
  • In dieser gesamten Spezifikation können mehrere Instanzen Komponenten, Vorgänge oder Strukturen implementieren, die als einzelner Fall beschrieben werden. Auch wenn einzelne Operationen von einem oder mehreren Verfahren als getrennte Operationen veranschaulicht und beschrieben sind, können eine oder mehrere der einzelnen Operationen gleichzeitig durchgeführt werden, und nichts erfordert, dass die Operationen in der veranschaulichten Reihenfolge durchgeführt werden. Strukturen und Funktionen, die in beispielhaften Konfigurationen als getrennte Komponenten dargestellt werden, können als kombinierte Struktur oder Komponente implementiert werden. In ähnlicher Weise können Strukturen und Funktionen, die als einzelne Komponenten dargestellt werden, als getrennte Komponenten implementiert werden. Diese und andere Variationen, Modifikationen, Ergänzungen und Verbesserungen fallen in den Anwendungsbereich des hierin beschriebenen Gegenstands.
  • Das Netzwerk 25 kann beispielsweise unter anderem eine beliebige Kombination aus einem LAN, einem MAN, einem WAN, einem mobilen, einem verdrahteten oder drahtlosen Netzwerk, einem privaten Netzwerk oder einem virtuellen, privaten Netzwerk umfassen. Obwohl zur Vereinfachung und Verdeutlichung der Beschreibung in 1 nur vier Client-Geräte dargestellt sind, ist es selbstverständlich, dass eine beliebige Anzahl von Client-Geräten oder Anzeigegeräte unterstützt werden und mit dem Server 14 kommunizieren kann.
  • Außerdem sind bestimmte Ausführungsformen hierin als Logik oder eine Reihe von Komponenten, Modulen oder Mechanismen umfassend beschrieben. Module können entweder Softwaremodule (z. B. Code, der auf einem maschinenlesbaren Medium oder in einem Sendesignal verkörpert ist) oder Hardwaremodule darstellen. Ein Hardwaremodul ist ein greifbares Gerät, das bestimmte Operationen durchführen kann, und es kann in einer bestimmten Weise konfiguriert oder angeordnet sein. In exemplarischen Ausführungsformen können eines oder mehrere Computersysteme (z. B. ein eigenständiges, Client- oder Server-Computersystem) oder eines oder mehrere Hardwaremodule eines Computersystems (z. B. ein Prozessor oder eine Gruppe von Prozessoren) von der Software (z. B. einer Anwendung oder einem Anwendungsteil) als Hardwaremodul konfiguriert sein, um bestimmte, hierin beschriebene Operationen durchzuführen.
  • In verschiedenen Ausführungsformen kann ein Hardwaremodul mechanisch oder elektronisch implementiert werden. Ein Hardwaremodul kann beispielsweise eine spezielle Schaltung oder Logik umfassen, die dauerhaft zur Ausführung bestimmter Operationen konfiguriert ist (z. B. als ein spezieller Prozessor, wie beispielsweise ein Field Programmable Gate Array (FPGA) oder eine anwendungsspezifische integrierte Schaltung (ASIC)). Ein Hardwaremodul kann außerdem programmierbare Logik oder Schaltkreise umfassen (z. B. wie in einem Allzweck-Prozessor oder einem anderen programmierbaren Prozessor eingeschlossen), der von der Software temporär für die Durchführung bestimmter Operationen konfiguriert ist. Es wird darauf hingewiesen, dass die Entscheidung für die mechanische Implementierung eines Hardwaremoduls in spezielle und dauerhaft konfigurierte oder temporär konfigurierte Schaltungen (z. B. per Software konfiguriert) von Kosten- und Zeitüberlegungen abhängig sein kann.
  • Demgemäß sollte der Begriff Hardware so verstanden werden, dass er eine greifbare Entität umfasst, sei es eine Entität, die physisch konstruiert, permanent konfiguriert (z. B. hartverdrahtet) oder temporär konfiguriert (z. B. programmiert) ist, um auf bestimmte Weise zu arbeiten oder bestimmte, hierin beschriebene Operationen durchzuführen. Bei Berücksichtigung von Ausführungsformen, in denen Hardwaremodule temporär konfiguriert (z. B. programmiert) sind, müssen die jeweiligen Hardwaremodule nicht zu jeder einzelnen zeitlichen Instanz konfiguriert oder instanziiert sein. Wenn die Hardwaremodule zum Beispiel einen Allzweck-Prozessor umfassen, der für die Verwendung von Software konfiguriert ist, kann der Allzweck-Prozessor als entsprechend unterschiedliche Hardwaremodule zu verschiedenen Zeiten konfiguriert sein. Software kann demgemäß einen Prozessor zum Beispiel so konfigurieren, dass er zu einer zeitlichen Instanz ein bestimmtes Hardwaremodul und zu einer anderen zeitlichen Instanz ein anderes Hardwaremodul darstellt.
  • Hardware- und Softwaremodule können Informationen anderen Hardware- und/oder Softwaremodulen bereitstellen und Informationen von diesen empfangen. Demgemäß können die beschriebenen Hardwaremodule als kommunikativ gekoppelt betrachtet werden. Wenn mehrere solcher Hardware- oder Softwaremodule gleichzeitig vorhanden sind, kann die Kommunikation über Signalübertragung (z. B. über entsprechende Schaltkreise und Busse) erreicht werden, die mit den Hardware- oder Softwaremodulen verbunden sind. In Ausführungsformen, in denen mehrere Hardware- und Softwaremodule zu verschiedenen Zeiten konfiguriert oder instanziiert sind, kann die Kommunikation zwischen solchen Hardware- und Softwaremodulen zum Beispiel durch die Speicherung und das Abrufen von Informationen in Speicherstrukturen erreicht werden, zu denen die mehreren Hardware- und Softwaremodule Zugriff haben. Zum Beispiel kann ein Hardware- oder Softwaremodul eine Operation durchführen und den Ausgang dieser Operation in einem Speichergerät speichern, mit dem es kommunikativ gekoppelt ist. Ein weiteres Hardware- oder Softwaremodul kann dann, zu einem späteren Zeitpunkt, auf das Speichergerät zugreifen, um die gespeicherte Ausgabe abzurufen und zu verarbeiten. Hardware- und Softwaremodule können außerdem die Kommunikation mit Eingabe- und Ausgabegeräten initiieren, und sie können auf einer Ressource (z. B. einer Informationssammlung) betrieben werden.
  • Die verschiedenen Operationen hierin beschriebener exemplarischer Verfahren können, zumindest teilweise, von einem oder mehreren Prozessoren durchgeführt werden, die temporär (z. B. durch Software) oder permanent für die Durchführung der relevanten Operationen konfiguriert sind. Ganz gleich, ob sie temporär oder permanent konfiguriert sind, stellen solche Prozessoren von Prozessoren implementierte Module dar, die betrieben werden, um eine oder mehrere Operationen oder Funktionen durchzuführen. Module, auf die hierin verwiesen wird, umfassen in einigen exemplarischen Ausführungsformen von Prozessoren implementierte Module.
  • Ihn ähnlicher Weise können hierin beschriebene Verfahren oder Routinen zumindest teilweise von Prozessoren implementiert sein. Zum Beispiel können zumindest einige der Operationen eines Verfahrens von einem oder mehreren Prozessoren oder von durch Prozessoren implementierten Hardwaremodulen durchgeführt werden. Die Durchführung bestimmter Operationen kann unter den ein oder mehreren Prozessoren verteilt sein, die sich nicht in einer einzigen Maschine befinden, sondern über eine Reihe von Maschinen bereitgestellt werden. In einigen exemplarischen Ausführungsformen können sich der Prozessor oder die Prozessoren an einem einzigen Ort (z. B. in einer Wohnungsumgebung, in einer Büroumgebung oder als eine Serverfarm) befinden, während in anderen Ausführungsformen die Prozessoren über eine Reihe von Orten verteilt sein können.
  • Der eine oder die mehreren Prozessoren können auch so arbeiten, dass sie die Leistung der relevanten Vorgänge in einer „Cloud Computing”-Umgebung oder als ein „Software as a Service” (SaaS) unterstützen. Zum Beispiel können einige der Operationen durch eine Gruppe von Computer (z. B. von Maschinen einschließlich Prozessoren) durchgeführt werden, wobei diese Operationen über ein Netzwerk (z. B. das Internet) und über eine oder mehrere geeignete Schnittstellen (z. B. Anwendungsprogrammschnittstellen, APIs) zugänglich sind.
  • Die Durchführung bestimmter Operationen kann unter den ein oder mehreren Prozessoren verteilt sein, die sich nicht in einer einzigen Maschine befinden, sondern über eine Reihe von Maschinen bereitgestellt werden. In einigen exemplarischen Ausführungsformen können sich der eine oder die mehreren Prozessoren oder durch Prozessoren implementierte Module an einem einzigen geografischen Standort (z. B. einer Wohnumgebung, einer Büroumgebung oder einer Serverfarm) befinden. In anderen exemplarischen Ausführungsformen können der eine oder die mehreren Prozessoren oder durch Prozessoren implementierten Module über eine Reihe geografischer Standorte verteilt sein.
  • Einige Teile dieser Spezifikation werden in Bezug auf Algorithmen oder symbolische Darstellungen von Operationen bei Daten dargestellt, die als Bits oder binäre digitale Signale in einem Maschinenspeicher (z. B. einem Computerspeicher) gespeichert sind. Diese Algorithmen oder symbolischen Darstellungen sind Beispiele von Techniken, die von Fachleuten der Datenverarbeitungstechnik verwendet werden, um anderen Fachleuten die wesentlichen Inhalte ihrer Arbeit zu vermitteln. Wie hierin verwendet, ist ein „Algorithmus” oder eine „Routine” eine eigenkonsistente Sequenz von Operationen oder ähnliche Verarbeitung, die zu einem gewünschten Ergebnis führt. In diesem Kontext beinhalten Algorithmen, Routinen und Operationen die physische Manipulation physischer Mengen. Normalerweise, aber nicht notwendigerweise, können solche Mengen die Form elektrischer, magnetischer oder optischer Signale annehmen, die von einer Maschine gespeichert, aufgerufen, übertragen, kombiniert, verglichen oder sonst manipuliert werden können. Es ist manchmal praktisch, hauptsächlich aus Gründen der allgemeinen Nutzung, sich auf diese Signale mit Ausdrücken wie „Daten”, „Inhalt”, „Bits”, „Werte”, „Elemente”, „Symbole”, „Zeichen”, „Begriffe”, „Zahlen”, „Numerale” oder dergleichen zu beziehen. Diese Wörter sind jedoch lediglich praktische Bezeichnungen und dürfen nicht mit entsprechenden physischen Mengen verbunden werden.
  • Sofern nicht speziell anders angegeben, können sich Erörterungen hierin, die Wörter wie „Verarbeitung”, „Berechnung”, „Bestimmung”, „Darstellung”, „Anzeige” o. ä. verwenden, auf Aktionen oder Prozesse einer Maschine (z. B. eines Computers) beziehen, die Daten bearbeiten oder umwandeln, die als physische (z. B. elektronische, magnetische oder optische) Mengen in einem oder mehreren Speichern (z. B. flüchtiger Speicher, nichtflüchtiger Speicher oder eine Kombination davon), Register oder andere Maschinenkomponenten dargestellt sind, die Informationen empfangen, speichern, übertragen oder anzeigen.
  • Wie hierin verwendet, bedeuten Verweise auf „eine Ausführungsform” oder „Ausführungsformen”, dass ein bestimmtes Element, Merkmal, eine Struktur oder eine Eigenschaft, das/die in Verbindung mit der Ausführungsform beschrieben wird, zumindest in einer Ausführungsform enthalten ist. Das Erscheinen der Formulierung „in einer Ausführungsform” an verschiedenen Orten in der Spezifikation bezieht sich nicht notwendigerweise immer auf dieselbe Ausführungsform.
  • Einige Ausführungsformen können mithilfe des Ausdrucks „gekoppelt” und „verbunden” zusammen mit deren Ableitungen beschrieben werden. Zum Beispiel können einige Ausführungsformen mithilfe des Begriffs „gekoppelt” beschrieben werden, um anzugeben, dass eines oder mehrere Elemente im direkten physischen oder elektrischen Kontakt sind. Der Begriff „verbunden” kann jedoch auch bedeuten, dass eines oder mehrere Elemente nicht im direkten Kontakt miteinander sind, aber trotzdem noch miteinander zusammenarbeiten oder interagieren. Die Ausführungsformen sind in diesem Kontext nicht beschränkt.
  • Wie hierin verwendet, sollen die Begriffe „umfasst”, „umfassend”, „beinhaltet”, „enthält”, „hat”, „haben” und andere Varianten davon eine nicht ausschließliche Einbeziehung abdecken. Zum Beispiel ist ein Prozess, ein Verfahren, ein Artikel oder eine Vorrichtung, der/die eine Liste von Elementen umfasst, nicht notwendigerweise nur auf diese Elemente beschränkt, sondern kann andere Elemente beinhalten, die nicht ausdrücklich aufgelistet oder bei einem solchen Prozess, einem solchen Verfahren, einem solchen Artikel oder einer solchen Vorrichtung inhärent sind. Des Weiteren bezieht sich, sofern nichts Gegenteiliges angegeben ist, „oder” auf ein einschließendes und nicht auf ein ausschließendes Oder. Zum Beispiel ist eine Bedingung A oder B durch eines der folgenden erfüllt: A ist wahr (oder vorhanden) und B ist falsch (oder nicht vorhanden), A ist falsch (oder nicht vorhanden) und B ist wahr (oder vorhanden) und sowohl A als auch B sind wahr (oder vorhanden).
  • Außerdem wird „eine”, „einer” oder „eines” verwendet, um Elemente und Komponenten der Ausführungsformen hierin zu beschreiben. Dies erfolgt lediglich aus praktischen Gründen und um eine allgemeine Vorstellung der Beschreibung zu vermitteln. Die Beschreibung sollte so gelesen werden, dass sie eines oder mindestens eines enthält, und der Singular umfasst auch den Plural, außer es ist offensichtlich anders gedacht.
  • Weiterhin stellen die Figuren bevorzugte Ausführungsformen eines Kartenwiedergabesystems nur zu Veranschaulichungszwecken dar. Ein Fachmann wird aus der folgenden Erörterung leicht erkennen, dass alternative Ausführungsformen der Strukturen und Verfahren, die hierin dargestellt sind, eingesetzt werden können, ohne von den Prinzipien der hier beschriebenen Erfindung abzuweichen.
  • Nach dem Lesen dieser Offenbarung werden Fachleute durch die hierin offenbarten Prinzipien noch zusätzliche, alternative Struktur- und Funktionsdesigns für ein System und Verfahren zur Wiedergabe von Karten oder anderen Arten von Bildern erkennen. Somit sollte, während bestimmte Ausführungsformen und Anwendungen veranschaulicht und beschrieben wurden, es selbstverständlich sein, dass die offenbarten Ausführungsformen nicht auf die genaue Konstruktion und Komponenten beschränkt sind, die hierin offenbart wurden. Verschiedene Modifikationen, Änderungen und Variationen, die für Fachleute auf dem Gebiet ersichtlich werden, können in der Anordnung, dem Betrieb und in den Einzelheiten der Verfahren und der Vorrichtung, die hierin offenbart werden, ohne Abweichung von der Idee und dem Umfang der angehängten Ansprüche erfolgen.

Claims (9)

  1. Computergerät, umfassend: eine Datenübertragungsnetzwerkschnittstelle; einen Prozessor oder mehrere Prozessoren; einen Speicher oder mehrere Speicher, der oder die an einen Prozessor oder mehrere Prozessoren gekoppelt ist oder sind; eine Anzeigevorrichtung, die an einen oder mehrere Prozessoren gekoppelt ist; worin der eine oder die mehreren Speicher darin gespeicherte computerausführbare Anweisungen beinhalten, die, wenn sie von einem oder mehreren Prozessoren ausgeführt werden, den einen oder die mehreren Prozessoren dazu veranlassen, eine erste Routing-Funktion zum Erzeugen einer Route, die durch einen Ausgangsort, einen Zielort und eine Menge von Ausgangsort und Zielort verbindenden Wegen definiert ist, mit einem Computer zu aktivieren; einen ersten Satz von Kartenkachelradien, der mit einer Menge von Punkten entlang der Route mit Ausgangsort und Zielort verbunden ist, festzulegen, worin der erste Satz von Kartenkachelradien einen ersten Satz von Kartendatenkacheln definiert, die Kartenoberflächenbereichen um die Route herum und die Route einschließend entsprechen; von einer Kartendatenbank aus auf den ersten Satz von der Route entsprechenden Kartendatenkacheln zuzugreifen, wobei die Kartendatenbank die Kartendaten als eine Vielzahl von Kartendatenkacheln speichert und der erste Satz von Kartendatenkacheln eine Teilmenge der Vielzahl von Kartendatenkacheln der Kartendatenbank umfasst; den ersten Satz von Kartendatenkacheln in einem lokalen Speicher als einen ersten Satz von Vorabruf-Kartendatenkacheln zu speichern, wobei der lokale Speicher von der Kartendatenbank verschieden ist; und eine Wiedergabefunktion zur Anzeige der ersten Route mit dem Satz von vorabgerufenen Kartendatenkacheln des lokalen Speichers anstelle der Kartendatenkacheln aus der Kartendatenbank zu aktivieren.
  2. Computergerät nach Anspruch 1, weiterhin umfassend Anweisungen, die bestimmen, dass der erste Satz von Vorabruf-Kartendatenkacheln auf einer ersten Zoomstufe einem Gebiet entspricht, das die gesamte Route vollständig umgibt und das innerhalb eines einzigen Ansichtsfensters auf einer ersten Zoomstufe angezeigt werden kann.
  3. Computergerät nach Anspruch 1, weiterhin umfassend Anweisungen, einen zweiten Satz von Kartenkachelradien zu bestimmen, der mit einer Menge von Punkten mit hoher Priorität entlang der Route zwischen Ausgangsort und Zielort verbunden ist, wobei der zweite Satz von Kartenkachelradien einen zweiten Satz von Kartendatenkacheln definiert, die Kartenoberflächenbereichen auf einer zweiten, höheren Zoomstufe um die Prioritätspunkte herum entsprechen; von einer Kartendatenbank aus auf den zweiten Satz von der Route entsprechenden Kartendatenkacheln zuzugreifen, wobei die Kartendatenbank die Kartendaten als eine Vielzahl von Kartendatenkacheln speichert und der erste Satz von Kartendatenkacheln eine Teilmenge der Vielzahl von Kartendatenkacheln der Kartendatenbank umfasst; und den ersten Satz von Kartendatenkacheln im lokalen Speicher als einen zweiten Satz von Vorabruf-Kartendatenkacheln zu speichern, wobei das Aktivieren der Wiedergabefunktion den zweiten Satz von Vorabruf-Kartendatenkacheln anstelle der Kartendatenkacheln der Kartendatenbank verwendet.
  4. Computergerät nach Anspruch 1, weiterhin umfassend eine zweite Routing-Funktion zum Erzeugen einer zweiten Route, die einen Ausgangsort, einen Zielort und einen Satz von Wegen, die Ausgangsort und Zielort der zweiten Route verbinden, umfasst; einen zweiten Satz von Kartenkachelradien, der mit einer Menge von Punkten entlang der zweiten Route mit Ausgangsort und Zielort verbunden ist, festzulegen, worin der zweite Satz von Kartenkachelradien einen zweiten Satz von Kartendatenkacheln definiert, die Kartenoberflächenbereichen um die zweite Route herum und die zweite Route einschließend entsprechen; von einer Kartendatenbank aus auf den zweiten Satz von der zweiten Route entsprechenden Kartendatenkacheln zuzugreifen, wobei die Kartendatenbank die Kartendaten als eine Vielzahl von Kartendatenkacheln speichert und der zweite Satz von Kartendatenkacheln eine Teilmenge der Vielzahl von Kartendatenkacheln der Kartendatenbank umfasst; und den zweiten Satz von Kartendatenkacheln im lokalen Speicher als einen zweiten Satz von Vorabruf-Kartendatenkacheln zu speichern, wobei das Aktivieren der Wiedergabefunktion den zweiten Satz von Vorabruf-Kartendatenkacheln anstelle der Kartendatenkacheln der Kartendatenbank verwendet.
  5. Computergerät nach Anspruch 4, wobei die zweite Route eine Rückroute der ersten Route ist und wobei der Ausgangsort der ersten Route der Zielort der zweiten Route und der Zielort der ersten Route der Ausgangsort der zweiten Route ist.
  6. Computergerät nach Anspruch 4, wobei der Ausgangsort der zweiten Route entlang der ersten Route liegt und der Zielort der zweiten Route ein Interessenschwerpunkt in der Nähe der ersten Route ist.
  7. Computergerät, umfassend: eine Datenübertragungsnetzwerkschnittstelle; einen Prozessor oder mehrere Prozessoren; einen Speicher oder mehrere Speicher, der oder die an einen Prozessor oder mehrere Prozessoren gekoppelt ist oder sind; eine Anzeigevorrichtung, die an einen oder mehrere Prozessoren gekoppelt ist; worin der eine oder die mehreren Speicher darin gespeicherte computerausführbare Anweisungen beinhalten, die, wenn sie von einem oder mehreren Prozessoren ausgeführt werden, den einen oder die mehreren Prozessoren dazu veranlassen, eine erste Routing-Funktion zum Erzeugen einer Route, die durch einen Ausgangsort, einen Zielort und eine Menge von Ausgangsort und Zielort verbindenden Wegen definiert ist, mit einem Computer zu aktivieren; einen ersten Satz von Kartendatenkacheln zu bestimmen, die Kartenoberflächengebieten um den Ausgangsort herum und den Ausgangsort einschließend entsprechen, einen zweiten Satz von Kartendatenkacheln zu bestimmen, die Kartenoberflächengebieten um den Zielort herum und den Zielort einschließend entsprechen, einen dritten Satz von Kartendatenkacheln zu bestimmen, die Kartenoberflächengebieten um die Route zwischen dem Ausgangsort und dem Zielort herum entsprechen; von einer Kartendatenbank aus auf den ersten Satz, den zweiten Satz und den dritten Satz von der Route entsprechenden Kartendatenkacheln zuzugreifen, wobei die Kartendatenbank die Kartendaten als eine Vielzahl von Kartendatenkacheln speichert und der erste, zweite und dritte Satz von Kartendatenkacheln eine Teilmenge der Vielzahl von Kartendatenkacheln der Kartendatenbank umfasst; den ersten, den zweiten oder den dritten Satz von Kartendatenkacheln in einem lokalen Speicher als einen ersten, zweiten und dritten Satz von Vorabruf-Kartendatenkacheln zu speichern, wobei der lokale Speicher von der Kartendatenbank verschieden ist; und eine Wiedergabefunktion zur Anzeige der ersten Route mit dem Satz von vorabgerufenen Kartendatenkacheln des lokalen Speichers anstelle der Kartendatenkacheln aus der Kartendatenbank zu aktivieren.
  8. Computergerät nach Anspruch 7, weiterhin umfassend Anweisungen, von einer Kartendatenbank auf den ersten Satz, den zweiten Satz und den dritten Satz von Kartendatenkacheln in einer Reihenfolge zuzugreifen, die auf einer aktuellen Bandbreite der Kommunikation zwischen dem Computergerät und einem Server basiert.
  9. Computergerät nach Anspruch 7, weiterhin umfassend Anweisungen, eine Menge des ersten, zweiten und dritten Satzes von Kartendatenkacheln für den Zugriff in einer Reihenfolge festzulegen, die auf einer aktuellen Bandbreite der Kommunikation zwischen dem Computergerät und einem Server basiert.
DE202012013434.5U 2011-12-12 2012-08-20 Vorabruf von Kartenkacheldaten entlang einer Route Expired - Lifetime DE202012013434U1 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201161569493P 2011-12-12 2011-12-12
US201161569493P 2011-12-12
US13/546,143 US8803920B2 (en) 2011-12-12 2012-07-11 Pre-fetching map tile data along a route
US201213546143 2012-07-11

Publications (1)

Publication Number Publication Date
DE202012013434U1 true DE202012013434U1 (de) 2017-01-16

Family

ID=48571574

Family Applications (1)

Application Number Title Priority Date Filing Date
DE202012013434.5U Expired - Lifetime DE202012013434U1 (de) 2011-12-12 2012-08-20 Vorabruf von Kartenkacheldaten entlang einer Route

Country Status (9)

Country Link
US (3) US8803920B2 (de)
EP (1) EP2791821B8 (de)
JP (1) JP6099665B2 (de)
KR (2) KR102080242B1 (de)
CN (1) CN104221008B (de)
AU (2) AU2012352922B2 (de)
CA (1) CA2856554C (de)
DE (1) DE202012013434U1 (de)
WO (1) WO2013089837A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102017009510A1 (de) 2017-10-12 2018-03-29 Daimler Ag Verfahren zur Aktualisierung einer digitalen Karte in einem Fahrzeug

Families Citing this family (83)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2354200B1 (de) 2008-10-01 2015-03-04 DIC Corporation Grundierung und laminat mit harzfilm aus der grundierung
US8683008B1 (en) 2011-08-04 2014-03-25 Google Inc. Management of pre-fetched mapping data incorporating user-specified locations
JP5859771B2 (ja) * 2011-08-22 2016-02-16 ソニー株式会社 情報処理装置、情報処理システム情報処理方法及びプログラム
US8280414B1 (en) 2011-09-26 2012-10-02 Google Inc. Map tile data pre-fetching based on mobile device generated event analysis
US9275374B1 (en) 2011-11-15 2016-03-01 Google Inc. Method and apparatus for pre-fetching place page data based upon analysis of user activities
US8711181B1 (en) 2011-11-16 2014-04-29 Google Inc. Pre-fetching map data using variable map tile radius
US8886715B1 (en) 2011-11-16 2014-11-11 Google Inc. Dynamically determining a tile budget when pre-fetching data in a client device
US9305107B2 (en) 2011-12-08 2016-04-05 Google Inc. Method and apparatus for pre-fetching place page data for subsequent display on a mobile computing device
US9197713B2 (en) 2011-12-09 2015-11-24 Google Inc. Method and apparatus for pre-fetching remote resources for subsequent display on a mobile computing device
US9389088B2 (en) 2011-12-12 2016-07-12 Google Inc. Method of pre-fetching map data for rendering and offline routing
US8803920B2 (en) 2011-12-12 2014-08-12 Google Inc. Pre-fetching map tile data along a route
KR20130080163A (ko) * 2012-01-04 2013-07-12 삼성전자주식회사 클라이언트의 전자 지도 표시 방법 및 장치
US9453734B2 (en) * 2012-06-05 2016-09-27 Apple Inc. Smart loading of map tiles
US9009610B2 (en) * 2012-06-07 2015-04-14 Costar Group, Inc. Method and apparatus for managing real estate data
US8928698B2 (en) * 2012-06-10 2015-01-06 Apple Inc. Compression of road features in map tiles
JP5888135B2 (ja) * 2012-06-12 2016-03-16 ソニー株式会社 無線通信装置、通信システムおよび情報処理方法
EP2717015B1 (de) * 2012-10-08 2018-05-23 Harman Becker Automotive Systems GmbH Unterbrechungsfreie Anzeige von Objekten
US10139937B2 (en) * 2012-10-12 2018-11-27 Microsoft Technology Licensing, Llc Multi-modal user expressions and user intensity as interactions with an application
US8914229B2 (en) * 2013-03-15 2014-12-16 Google Inc. Systems and methods for transferring navigation data
US9121719B2 (en) * 2013-03-15 2015-09-01 Abalta Technologies, Inc. Vehicle range projection
US9201898B2 (en) 2013-05-15 2015-12-01 Google Inc. Efficient fetching of map tile data
US9448754B2 (en) * 2013-05-15 2016-09-20 Google Inc. Resolving label collisions on a digital map
EP2804151B1 (de) * 2013-05-16 2020-01-08 Hexagon Technology Center GmbH Verfahren zur Darstellung von Daten einer dreidimensionalen Oberfläche
WO2014192102A1 (ja) * 2013-05-29 2014-12-04 三菱電機株式会社 画像表示装置、画像送信装置およびこれらを用いた画像表示システム
US20140378159A1 (en) * 2013-06-24 2014-12-25 Amazon Technologies, Inc. Using movement patterns to anticipate user expectations
US9542724B1 (en) 2013-07-09 2017-01-10 Google Inc. Systems and methods for stroke rendering on digital maps
US9241240B2 (en) * 2013-09-05 2016-01-19 Facebook, Inc Techniques for server-controlled tiling of location-based information
WO2015057779A1 (en) * 2013-10-15 2015-04-23 Spectrum Bridge, Inc. Systems and methods for determining and specifying spectrum availability for a predetermined travel route
GB201318991D0 (en) * 2013-10-28 2013-12-11 What Now Travel Ltd A Method of acquiring data
US9728167B2 (en) 2013-12-30 2017-08-08 Beijing Qihoo Technology Company Limited Device and method for controlling electronic map
US9714832B2 (en) * 2014-03-13 2017-07-25 Google Inc. Varying map information density based on the speed of the vehicle
US9355484B2 (en) * 2014-03-17 2016-05-31 Apple Inc. System and method of tile management
US9465811B2 (en) 2014-03-20 2016-10-11 Facebook, Inc. Polygon-based indexing of places
US20150292899A1 (en) * 2014-04-09 2015-10-15 Denso International America, Inc. Navigation device and navigation system
US20150290535A1 (en) * 2014-04-15 2015-10-15 King.Com Limited Device, game and methods therefor
US9495767B2 (en) * 2014-05-15 2016-11-15 Google Inc. Indexed uniform styles for stroke rendering
CN105302830B (zh) * 2014-07-09 2020-04-28 方正国际软件(北京)有限公司 一种地图瓦片缓存方法及装置
KR101648032B1 (ko) * 2014-09-16 2016-08-12 현대자동차주식회사 운전 보조 장치, 및 운전 보조 장치의 제어방법
US9689702B2 (en) * 2015-01-30 2017-06-27 Telenav, Inc. Navigation system with map mechanism and method of operation thereof
US10002156B2 (en) * 2015-03-16 2018-06-19 Here Global B.V. Version management for incrementally compiled map data
US9986060B2 (en) * 2015-03-30 2018-05-29 General Electric Company Persistent caching of map imagery and data
US9990690B2 (en) 2015-09-21 2018-06-05 Qualcomm Incorporated Efficient display processing with pre-fetching
US9704534B2 (en) 2015-09-29 2017-07-11 International Business Machines Corporation Generating consolidated video for a defined route on an electronic map
US9922426B2 (en) * 2016-01-25 2018-03-20 Google Llc Reducing latency in presenting map interfaces at client devices
US10593074B1 (en) * 2016-03-16 2020-03-17 Liberty Mutual Insurance Company Interactive user interface for displaying geographic boundaries
EP3453010A4 (de) * 2016-03-31 2019-12-18 CAE Inc. Verfahren und systeme zur aktualisierung eines fernspeichers auf der basis von datentypen
CN107273376B (zh) * 2016-04-07 2020-08-04 阿里巴巴集团控股有限公司 目标位置搜索方法和装置
US9792029B1 (en) 2016-06-16 2017-10-17 Waygate, Inc. Authoring of real-time interactive computer graphics content for predictive bi-adaptive streaming
US10240943B2 (en) * 2016-06-17 2019-03-26 Here Global B.V. Method, apparatus and computer program product for a navigation user interface
US10274331B2 (en) * 2016-09-16 2019-04-30 Polaris Industries Inc. Device and method for improving route planning computing devices
US11360486B2 (en) 2016-11-22 2022-06-14 Ford Motor Company Vehicle assistance
CN110023717B (zh) * 2016-12-13 2023-05-12 宝马股份公司 数字地图的更新
US10509777B2 (en) * 2016-12-22 2019-12-17 Facebook, Inc. Exhaustive places fetching
CN107066489A (zh) * 2016-12-28 2017-08-18 贵州大学 一种快速绘制农田电子地图的方法
US10248641B2 (en) * 2017-03-31 2019-04-02 Mckesson Corporation Method, apparatus, and computer program product for managing retrieval of content for display by a browser
US10203698B1 (en) * 2017-08-10 2019-02-12 GM Global Technology Operations LLC System and method for providing a map to autonomous vehicles via a cloud-based system
CN107423445B (zh) * 2017-08-10 2018-10-30 腾讯科技(深圳)有限公司 一种地图数据处理方法、装置及存储介质
US10311728B2 (en) * 2017-08-11 2019-06-04 Here Global B.V. Method and apparatus for providing a confidence-based road event message
DE102017218394A1 (de) * 2017-10-13 2019-04-18 Robert Bosch Gmbh Verfahren und System zum Laden von digitalen geographischen Kartenkacheln
CN109833624B (zh) * 2017-11-29 2021-05-14 腾讯科技(成都)有限公司 用于虚拟地图上行军线信息的显示方法及装置
US11359929B2 (en) 2017-12-31 2022-06-14 Uber Technologies, Inc. Automatic selection of map detail levels
AU2018395184B2 (en) 2017-12-31 2021-07-29 Uber Technologies, Inc. Automatic selection of map detail levels
US20190392054A1 (en) * 2018-06-20 2019-12-26 Uber Technologies, Inc. System and method for pre-fetching map data
US11003696B2 (en) * 2018-06-29 2021-05-11 Uber Technologies, Inc. Adaptive geographical data caching based on a route pattern
CN109260708B (zh) * 2018-08-24 2020-01-10 腾讯科技(深圳)有限公司 地图渲染方法、装置以及计算机设备
WO2020072074A1 (en) 2018-10-05 2020-04-09 Google Llc Improving offline map data availability
DE102018220115A1 (de) * 2018-11-23 2020-05-28 Zf Friedrichshafen Ag Ortsbezogene Radar-, Lidar-, und GCP-Daten
CN109710708B (zh) * 2018-12-07 2021-02-02 北京掌行通信息技术有限公司 一种电子地图映射方法及装置
WO2020149427A1 (ko) 2019-01-15 2020-07-23 엘지전자 주식회사 경로 제공 장치 및 그것의 경로 제공 방법
CN111524446B (zh) * 2019-02-01 2021-11-12 阿里巴巴集团控股有限公司 数据处理方法、装置、电子设备及可读存储介质
US11692845B2 (en) * 2019-05-30 2023-07-04 Speedgauge, Inc. Predictive annotation of relevant road information based on vehicle location and identity
US11781875B2 (en) * 2019-08-21 2023-10-10 Toyota Motor Engineering & Manufacturing North America, Inc. Apparatus and method for forming and analyzing connected roads
WO2021090971A1 (ko) * 2019-11-06 2021-05-14 엘지전자 주식회사 경로 제공 장치 및 그것의 경로 제공 방법
US11747147B2 (en) 2019-12-30 2023-09-05 Gm Cruise Holdings Llc Dynamic map rendering
US20210224466A1 (en) * 2020-01-21 2021-07-22 TerraQuest, LLC Methods and systems for geographic map generation and rendering and unique miles and routes navigation
CN115335664A (zh) 2020-03-24 2022-11-11 御眼视觉技术有限公司 用于优化针对导航的地图图块请求的系统和方法
CN111506689B (zh) * 2020-04-13 2022-05-03 腾讯科技(深圳)有限公司 基于人工智能的电子地图渲染方法、装置及电子设备
US11455296B1 (en) * 2020-11-19 2022-09-27 Quickbase Inc. Offline structured data entry and data access on a mobile device
SG10202103347VA (en) * 2021-04-01 2021-11-29 Grabtaxi Holdings Pte Ltd Distributed computing system and method for generating a vectortile of a selected squared map area
CN113284407B (zh) * 2021-05-25 2022-09-06 中国航空无线电电子研究所 支持多图源多比例尺的地理要素配图系统
DE102021114528A1 (de) 2021-06-07 2022-12-08 Bayerische Motoren Werke Aktiengesellschaft Aktualisieren von in einem speicher gespeicherten initialen kartendaten
US20230150685A1 (en) * 2021-11-12 2023-05-18 Rockwell Collins, Inc. System and method for enhancing situational awareness via panel selector display while viewing multipanel map-based charts
CN114491120B (zh) * 2022-04-15 2022-07-05 东华理工大学南昌校区 基于Web网络平台的地学数据处理方法及其计算机系统

Family Cites Families (171)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5345086A (en) 1962-11-28 1994-09-06 Eaton Corporation Automatic map compilation system
IE61778B1 (en) 1989-01-04 1994-11-30 Emyville Enterprises Image processing
US5793310A (en) 1994-02-04 1998-08-11 Nissan Motor Co., Ltd. Portable or vehicular navigating apparatus and method capable of displaying bird's eye view
US5848373A (en) 1994-06-24 1998-12-08 Delorme Publishing Company Computer aided map location system
US6571279B1 (en) 1997-12-05 2003-05-27 Pinpoint Incorporated Location enhanced information delivery system
US6191782B1 (en) 1996-08-30 2001-02-20 Matsushita Electric Industrial Co., Ltd. Terminal apparatus and method for achieving interactive operations by displaying a desired piece of image information at high speed using cache memories, out of a large amount of image information sent in a one-way direction
US5966135A (en) 1996-10-30 1999-10-12 Autodesk, Inc. Vector-based geographic data
US5831640A (en) * 1996-12-20 1998-11-03 Cirrus Logic, Inc. Enhanced texture map data fetching circuit and method
US6199150B1 (en) 1997-07-15 2001-03-06 Matsushita Electric Industrial Co., Ltd. Data memory apparatus forming memory map having areas with different access speeds
US6061688A (en) 1997-11-04 2000-05-09 Marathon Oil Company Geographical system for accessing data
JPH11224047A (ja) 1998-02-06 1999-08-17 Matsushita Electric Ind Co Ltd 地図情報提供方法及びそれに用いられる端末装置
US6073076A (en) 1998-03-27 2000-06-06 Navigation Technologies Corporation Memory management for navigation system
US6094685A (en) 1998-04-14 2000-07-25 Ascend Communications, Inc. Use of control blocks to map multiple unidirectional connections
US6400690B1 (en) 1998-10-15 2002-06-04 International Business Machines Corporation Dual map system for navigation and wireless communication
US6442757B1 (en) 1999-03-15 2002-08-27 Index Systems, Inc. System and method of channel map correction in an EPG guide
JP2001012957A (ja) 1999-06-29 2001-01-19 Mitsubishi Electric Corp カーナビゲーション用地図更新システムおよびカーナビゲーション端末
JP2001075967A (ja) 1999-08-31 2001-03-23 Denso Corp 地図データの更新用情報作成方法及び地図データの差分更新システム
EP1102510A1 (de) 1999-10-12 2001-05-23 Taskin Sakarya Ortungssystem für mobile Telefone
US6615131B1 (en) 1999-12-21 2003-09-02 Televigation, Inc. Method and system for an efficient operating environment in a real-time navigation system
US7502876B1 (en) 2000-06-23 2009-03-10 Mips Technologies, Inc. Background memory manager that determines if data structures fits in memory with memory state transactions map
US6684250B2 (en) 2000-04-03 2004-01-27 Quova, Inc. Method and apparatus for estimating a geographic location of a networked entity
US6456234B1 (en) 2000-06-07 2002-09-24 William J. Johnson System and method for proactive content delivery by situation location
US8060389B2 (en) 2000-06-07 2011-11-15 Apple Inc. System and method for anonymous location based services
US8073565B2 (en) 2000-06-07 2011-12-06 Apple Inc. System and method for alerting a first mobile data processing system nearby a second mobile data processing system
US6671424B1 (en) 2000-07-25 2003-12-30 Chipworks Predictive image caching algorithm
US6703947B1 (en) 2000-09-22 2004-03-09 Tierravision, Inc. Method for organizing and compressing spatial data
ATE381191T1 (de) 2000-10-26 2007-12-15 Prismedia Networks Inc Verfahren und system zur verwaltung von verteilten inhalten und entsprechenden metadaten
US6724382B2 (en) 2000-12-04 2004-04-20 Wildtangent, Inc. Method and apparatus for distributing and displaying maps electronically
GB2370460A (en) 2000-12-21 2002-06-26 Nokia Mobile Phones Ltd Segmented route guidance
US6691128B2 (en) 2001-04-19 2004-02-10 Navigation Technologies Corp. Navigation system with distributed computing architecture
US7082365B2 (en) 2001-08-16 2006-07-25 Networks In Motion, Inc. Point of interest spatial rating search method and system
JP2003067721A (ja) 2001-08-24 2003-03-07 Pioneer Electronic Corp 地図画像表示システムおよび方法
EP1288625B1 (de) 2001-08-31 2011-07-27 Pioneer Corporation Navigationssvorrichtung vom Kommunikationstyp und Servervorrichtung
JP4860847B2 (ja) 2001-09-03 2012-01-25 パイオニア株式会社 通信ナビゲーションシステム及び方法、並びにコンピュータプログラム
US7962565B2 (en) 2001-09-29 2011-06-14 Siebel Systems, Inc. Method, apparatus and system for a mobile web client
US7006820B1 (en) 2001-10-05 2006-02-28 At Road, Inc. Method for determining preferred conditions for wireless programming of mobile devices
WO2003054654A2 (en) 2001-12-21 2003-07-03 Nokia Corporation Location-based novelty index value and recommendation system and method
US7263368B2 (en) 2002-03-28 2007-08-28 Intel Corporation Anticipation of communication connectivity changes for mobile devices
US8516114B2 (en) 2002-03-29 2013-08-20 International Business Machines Corporation Method and apparatus for content pre-fetching and preparation
EP2312556B8 (de) 2002-05-17 2015-04-22 CLARION Co., Ltd. Kartendatenprodukte, Kartendatenverarbeitungsprogrammprodukt, Kartendatenverarbeitungsverfahren und Kartendatenverarbeitungsvorrichtung
JP2004020220A (ja) 2002-06-12 2004-01-22 Pioneer Electronic Corp 通信システム及び方法、通信端末装置、通信センタ装置、並びにコンピュータプログラム
US7461528B2 (en) 2002-08-29 2008-12-09 Panasonic Corporation Content processing apparatus and content display apparatus based on location information
JP3803629B2 (ja) * 2002-10-01 2006-08-02 株式会社ザナヴィ・インフォマティクス 地図データ送信方法、情報配信装置、および情報端末
US20060106534A1 (en) * 2002-10-22 2006-05-18 Yukihiro Kawamata Map data delivering method for communication-type navigation system
JP2004157013A (ja) 2002-11-06 2004-06-03 Nissan Motor Co Ltd 地図画像表示装置及び地図画像表示プログラム
GB2395808A (en) 2002-11-27 2004-06-02 Sony Uk Ltd Information retrieval
JP4065202B2 (ja) 2003-01-07 2008-03-19 三菱電機株式会社 地図データ処理装置およびセンターシステム
JP4307121B2 (ja) 2003-03-25 2009-08-05 三菱電機株式会社 地図データ処理装置
TW200424963A (en) 2003-05-02 2004-11-16 Sin Etke Technology Co Ltd Cross country navigation system
US9286795B2 (en) * 2003-05-09 2016-03-15 Dimitri Vorona System for transmitting, processing, receiving, and displaying traffic information
US9607092B2 (en) 2003-05-20 2017-03-28 Excalibur Ip, Llc Mapping method and system
US7464109B2 (en) 2003-09-30 2008-12-09 U-Haul International, Inc. System and method of compiling real property information from a central database
US7342516B2 (en) * 2003-10-08 2008-03-11 Hitachi, Ltd. Method and apparatus for communicating map and route guidance information for vehicle navigation
JP4409904B2 (ja) * 2003-10-08 2010-02-03 株式会社日立製作所 経路情報提供システムおよび経路情報提供方法
JP4503410B2 (ja) 2004-01-20 2010-07-14 クラリオン株式会社 車載ナビゲーション装置の地図データ更新方法、地図データ更新システム、認証キー生成装置およびナビゲーション装置
DE102004009463A1 (de) * 2004-02-27 2005-09-15 Robert Bosch Gmbh Verfahren zum Speichern von Verkehrswegeabschnitten repräsentierenden Kartendaten in einem Navigationssystem und Navigationssystem
US7327349B2 (en) 2004-03-02 2008-02-05 Microsoft Corporation Advanced navigation techniques for portable devices
WO2005104039A2 (en) * 2004-03-23 2005-11-03 Google, Inc. A digital mapping system
US7831387B2 (en) 2004-03-23 2010-11-09 Google Inc. Visually-oriented driving directions in digital mapping system
US7599790B2 (en) * 2004-03-23 2009-10-06 Google Inc. Generating and serving tiles in a digital mapping system
CA2820299C (en) * 2004-03-23 2017-02-21 Google Inc. A digital mapping system
US20050287509A1 (en) 2004-06-04 2005-12-29 Sherman Mohler Learning objects in an electronic teaching system
US20060058953A1 (en) 2004-09-07 2006-03-16 Cooper Clive W System and method of wireless downloads of map and geographic based data to portable computing devices
US20060080032A1 (en) 2004-09-07 2006-04-13 Cooper Clive W System and method of wireless downloads of map and geographic based data to portable computing devices
JP4079137B2 (ja) 2004-09-30 2008-04-23 ブラザー工業株式会社 ネットワーク管理プログラム,デバイスおよびネットワーク管理システム
JP4476789B2 (ja) 2004-11-18 2010-06-09 クラリオン株式会社 地図更新システム、ナビゲーション装置、配信装置
JP2006171106A (ja) 2004-12-13 2006-06-29 Aisin Aw Co Ltd 地図データ更新方法、地図データ更新システム、サーバ及び中継装置
US7551182B2 (en) 2005-01-18 2009-06-23 Oculus Info Inc. System and method for processing map data
US7236882B2 (en) 2005-01-26 2007-06-26 Broadcom Corporation Downloading map segment(s) to a cell phone based upon its GPS coordinates and mobility
US7584054B2 (en) 2005-04-14 2009-09-01 Baron Services, Inc. System and method for displaying storm tracks
US8103445B2 (en) 2005-04-21 2012-01-24 Microsoft Corporation Dynamic map rendering as a function of a user parameter
DE102005020152A1 (de) 2005-04-29 2006-11-02 Volkswagen Ag Verfahren zum Steuern der Anzeige einer geografischen Karte in einem Fahrzeug und Anzeigevorrichtung hierfür
JP4284301B2 (ja) 2005-05-13 2009-06-24 ソフトバンクモバイル株式会社 情報配信装置及び情報配信システム
JP2006317322A (ja) * 2005-05-13 2006-11-24 Denso Corp ナビゲーション装置およびナビゲーション装置用のプログラム
US20060277271A1 (en) 2005-06-07 2006-12-07 Yahoo! Inc. Prefetching content based on a mobile user profile
US7315259B2 (en) 2005-08-11 2008-01-01 Google Inc. Techniques for displaying and caching tiled map data on constrained-resource services
US20070050128A1 (en) 2005-08-31 2007-03-01 Garmin Ltd., A Cayman Islands Corporation Method and system for off-board navigation with a portable device
US8229914B2 (en) 2005-09-14 2012-07-24 Jumptap, Inc. Mobile content spidering and compatibility determination
US7796837B2 (en) 2005-09-22 2010-09-14 Google Inc. Processing an image map for display on computing device
JP4622822B2 (ja) 2005-11-16 2011-02-02 日産自動車株式会社 地図データ更新システム、および地図データ更新方法
US7663671B2 (en) 2005-11-22 2010-02-16 Eastman Kodak Company Location based image classification with map segmentation
JP4745045B2 (ja) 2005-12-15 2011-08-10 アルパイン株式会社 ナビゲーション装置
JP4841242B2 (ja) 2005-12-15 2011-12-21 アルパイン株式会社 地図データ更新方法および地図データ更新装置
JP2007163416A (ja) * 2005-12-16 2007-06-28 Denso Corp ナビゲーション装置
KR20070077270A (ko) 2006-01-23 2007-07-26 엘지전자 주식회사 네비게이션 시스템의 정보 제공장치 및 방법
US8208949B2 (en) 2006-03-16 2012-06-26 Marc Stuart Cox Navigation system for portable communication devices
EP1840515B1 (de) 2006-03-31 2009-10-28 Research In Motion Limited Verfahren und Vorrichtung zur dynamischen Kennzeichnung von Kartenobjekten in visuell angezeigten Karten mobiler Kommunikationsvorrichtungen
US7925624B2 (en) 2006-03-31 2011-04-12 Amazon Technologies, Inc. System and method for providing high availability data
US8014796B2 (en) 2006-03-31 2011-09-06 Research In Motion Limited Map version control methods and apparatus for updating the use of network-maintained map data sets for mobile communication devices
US7907144B2 (en) 2006-04-14 2011-03-15 Autodesk, Inc. Optimized tile-based image storage
US20070282621A1 (en) 2006-06-01 2007-12-06 Flipt, Inc Mobile dating system incorporating user location information
WO2008010699A1 (en) 2006-07-21 2008-01-24 Tele Atlas B.V. Method for generating a location reference and method for mapping information to a position within a digital map database
JP4656023B2 (ja) 2006-08-11 2011-03-23 株式会社デンソー 地図表示装置
GB2440958A (en) 2006-08-15 2008-02-20 Tomtom Bv Method of correcting map data for use in navigation systems
US20080082225A1 (en) 2006-08-15 2008-04-03 Tomtom International B.V. A method of reporting errors in map data used by navigation devices
US7925982B2 (en) 2006-09-01 2011-04-12 Cheryl Parker System and method of overlaying and integrating data with geographic mapping applications
US20080071988A1 (en) 2006-09-17 2008-03-20 Nokia Corporation Adaptable Caching Architecture and Data Transfer for Portable Devices
US7571422B2 (en) 2006-09-21 2009-08-04 Kla-Tencor Technologies Corporation Method for generating a design rule map having spatially varying overlay budget
JP5001617B2 (ja) 2006-09-29 2012-08-15 アイシン・エィ・ダブリュ株式会社 地図更新データ供給装置、バージョンテーブル、地図データ更新システム、地図更新データ供給プログラム、及び地図データ更新プログラム
JP5308621B2 (ja) 2006-10-05 2013-10-09 日立オートモティブシステムズ株式会社 地図データ配信システム
US20080086264A1 (en) 2006-10-06 2008-04-10 Microsoft Corporation Popularity based geographical navigation
US20080154655A1 (en) 2006-10-31 2008-06-26 Travelocity.Com Lp Systems, Methods, and Computer Program Products for Retrieving Predicted Weather Conditions Corresponding to Selected Travel Itineraries Stored in an Inventory System
US7734412B2 (en) 2006-11-02 2010-06-08 Yahoo! Inc. Method of client side map rendering with tiled vector data
US8010407B1 (en) 2006-11-14 2011-08-30 Google Inc. Business finder for locating local businesses to contact
US20080132249A1 (en) 2006-12-05 2008-06-05 Palm, Inc. Local caching of map data based on carrier coverage data
US20080215240A1 (en) 2006-12-18 2008-09-04 Damian Howard Integrating User Interfaces
KR20080071228A (ko) * 2007-01-24 2008-08-04 팅크웨어(주) 지도 제공방법 및 지도 서비스 제공 시스템
US8368695B2 (en) 2007-02-08 2013-02-05 Microsoft Corporation Transforming offline maps into interactive online maps
US7796056B2 (en) 2007-03-28 2010-09-14 Fein Gene S Digital windshield information system employing a recommendation engine keyed to a map database system
US8352185B2 (en) 2007-04-06 2013-01-08 Tomtom Global Content B.V. Method, navigation device, and server for determining a location in a digital map database
US8078641B2 (en) 2007-04-25 2011-12-13 Mitac International Corporation Adjusting spatial operations based on map density
US7996445B2 (en) 2007-04-27 2011-08-09 Network Appliance, Inc. Block reallocation planning during read-ahead processing
KR100948773B1 (ko) * 2007-05-16 2010-03-24 팅크웨어(주) 경로 설정을 위한 주변 검색 방법 및 네비게이션 시스템
JP5515737B2 (ja) 2007-06-13 2014-06-11 日本電気株式会社 画像表示装置、画像表示方法、及びその表示プログラム
US7801675B2 (en) 2007-07-13 2010-09-21 Dash Navigation, Inc. System and method of identifying portions of roads
US20090030778A1 (en) 2007-07-23 2009-01-29 Motivepath, Inc. System, method and apparatus for secure multiparty location based services
US20090054103A1 (en) 2007-08-20 2009-02-26 Sony Ericsson Mobile Communications Ab Portable communication device with automated localized calendar
US8543130B2 (en) 2007-08-24 2013-09-24 Microsoft Corporation Intelligent global positioning system (GPS) information detection
EP2031352A1 (de) 2007-08-29 2009-03-04 Wayfinder Systems AB Vorababruf von Navigationskarten
US8374782B2 (en) * 2007-08-29 2013-02-12 Vodafone Group Services Limited Pre-fetching navigation maps
US8428867B2 (en) 2007-08-30 2013-04-23 Wirelesswerx International, Inc. Configuring and using multi-dimensional zones
US20090125228A1 (en) 2007-11-09 2009-05-14 Research In Motion Limited System and method for providing dynamic route information to users of wireless communications devices
JP2009140488A (ja) 2007-11-14 2009-06-25 Fujitsu Ten Ltd 車載装置および表示制御システム
DE102007061657A1 (de) 2007-12-18 2009-07-02 Navigon Ag Verfahren zur Erzeugung einer digitalen Landkarte
US9354068B2 (en) 2008-01-14 2016-05-31 Blackberry Limited System and method for dynamically downloading and displaying map data
US8504945B2 (en) 2008-02-01 2013-08-06 Gabriel Jakobson Method and system for associating content with map zoom function
US20090210388A1 (en) 2008-02-20 2009-08-20 Microsoft Corporation Efficiently discovering and synthesizing maps from a large corpus of maps
US20090244095A1 (en) 2008-04-01 2009-10-01 Research In Motion Limited Run-time label cache for efficient map labeling
US8032297B2 (en) 2008-05-08 2011-10-04 Gabriel Jakobson Method and system for displaying navigation information on an electronic map
EP2439493A1 (de) * 2008-05-09 2012-04-11 Research in Motion Limited Vorsorgliches Herunterladen von Kartendaten
JP5561915B2 (ja) * 2008-06-06 2014-07-30 三菱電機株式会社 地図描画装置及びプログラム
US20090315766A1 (en) 2008-06-19 2009-12-24 Microsoft Corporation Source switching for devices supporting dynamic direction information
US8467991B2 (en) 2008-06-20 2013-06-18 Microsoft Corporation Data services based on gesture and location information of device
US8103441B2 (en) 2008-06-26 2012-01-24 Microsoft Corporation Caching navigation content for intermittently connected devices
US8280631B2 (en) 2008-10-02 2012-10-02 Certusview Technologies, Llc Methods and apparatus for generating an electronic record of a marking operation based on marking device actuations
US7975025B1 (en) 2008-07-08 2011-07-05 F5 Networks, Inc. Smart prefetching of data over a network
US9202375B2 (en) * 2008-07-17 2015-12-01 Volkswagen Ag Navigation system for a motor vehicle
US8214329B2 (en) 2008-08-26 2012-07-03 Zeewise, Inc. Remote data collection systems and methods
US8060406B2 (en) 2008-09-26 2011-11-15 Microsoft Corporation Predictive geo-temporal advertisement targeting
US8060582B2 (en) * 2008-10-22 2011-11-15 Google Inc. Geocoding personal information
US9062982B2 (en) * 2008-12-15 2015-06-23 Blackberry Limited Pre-loading waypoint data
US8126885B2 (en) 2008-12-19 2012-02-28 Hewlett-Packard Development Company, L.P. History based search service operable with multiple applications and services
US8510310B2 (en) * 2008-12-23 2013-08-13 Zhijing George Mou Method and system for multi-dimensional and geographic search
US8214145B2 (en) 2009-03-04 2012-07-03 Mitsubishi Electric Corporation Map distribution server, map information terminal, and map distribution system using these map distribution server and map information terminal
US20100250646A1 (en) 2009-03-25 2010-09-30 Microsoft Corporation Mechanism for geo distributing application data
US8560696B2 (en) 2009-04-28 2013-10-15 Intel Corporation Transmission of advanced-MAP information elements in mobile networks
US8385591B1 (en) 2009-04-28 2013-02-26 Google Inc. System and method of using images to determine correspondence between locations
US20100321399A1 (en) 2009-06-18 2010-12-23 Patrik Ellren Maps from Sparse Geospatial Data Tiles
US8341620B2 (en) 2009-06-25 2012-12-25 Microsoft Corporation Streaming optimized virtual application images
JP5054734B2 (ja) 2009-06-26 2012-10-24 クラリオン株式会社 カーナビゲーション装置、プログラムおよび地図データ更新方法
US20110054776A1 (en) 2009-09-03 2011-03-03 21St Century Systems, Inc. Location-based weather update system, method, and device
WO2011047299A2 (en) 2009-10-15 2011-04-21 Binja Inc. Mobile local search platform
US20110095993A1 (en) 2009-10-26 2011-04-28 Adobe Systems Incorporated Zoom adjustment process
US20110099507A1 (en) 2009-10-28 2011-04-28 Google Inc. Displaying a collection of interactive elements that trigger actions directed to an item
US8566020B2 (en) 2009-12-01 2013-10-22 Nokia Corporation Method and apparatus for transforming three-dimensional map objects to present navigation information
US8260546B2 (en) 2009-12-14 2012-09-04 At&T Mobility Ii Llc Systems and methods for providing geographical information to a mobile communications device
US20110161875A1 (en) 2009-12-29 2011-06-30 Nokia Corporation Method and apparatus for decluttering a mapping display
JP2011199854A (ja) 2010-02-26 2011-10-06 Panasonic Corp ランドマーク検索装置、それを備えた電子機器及び撮像装置、並びにランドマーク検索方法
US20120254804A1 (en) 2010-05-21 2012-10-04 Sheha Michael A Personal wireless navigation system
US8665266B2 (en) 2010-06-23 2014-03-04 The United States Of America, As Represented By The Secretary Of The Navy Global visualization process terrain database builder
US9183221B2 (en) 2010-08-11 2015-11-10 Root Wireless, Inc. Component and method for overlying information bearing hexagons on a map display
US8478519B2 (en) 2010-08-30 2013-07-02 Google Inc. Providing results to parameterless search queries
EP2646901A4 (de) 2010-11-30 2014-09-24 Nokia Corp Verfahren und vorrichtung zur vorhersage und zum vorzeitigen abrufen von standortinformationen
WO2012081883A2 (en) 2010-12-13 2012-06-21 Samsung Electronics Co., Ltd. Information providing apparatus and method for vehicles
US9291713B2 (en) 2011-03-31 2016-03-22 Strava, Inc. Providing real-time segment performance information
US8683008B1 (en) 2011-08-04 2014-03-25 Google Inc. Management of pre-fetched mapping data incorporating user-specified locations
US8280414B1 (en) 2011-09-26 2012-10-02 Google Inc. Map tile data pre-fetching based on mobile device generated event analysis
US8204966B1 (en) 2011-09-26 2012-06-19 Google Inc. Map tile data pre-fetching based on user activity analysis
US20130097197A1 (en) 2011-10-14 2013-04-18 Nokia Corporation Method and apparatus for presenting search results in an active user interface element
US8711181B1 (en) 2011-11-16 2014-04-29 Google Inc. Pre-fetching map data using variable map tile radius
US8803920B2 (en) 2011-12-12 2014-08-12 Google Inc. Pre-fetching map tile data along a route

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102017009510A1 (de) 2017-10-12 2018-03-29 Daimler Ag Verfahren zur Aktualisierung einer digitalen Karte in einem Fahrzeug

Also Published As

Publication number Publication date
US20130147846A1 (en) 2013-06-13
US8803920B2 (en) 2014-08-12
KR20140100987A (ko) 2014-08-18
CA2856554A1 (en) 2013-06-20
US20150356118A1 (en) 2015-12-10
AU2012352922A1 (en) 2014-06-12
EP2791821A4 (de) 2015-05-27
CN104221008A (zh) 2014-12-17
AU2018211233B2 (en) 2018-08-30
EP2791821B8 (de) 2017-11-29
JP6099665B2 (ja) 2017-03-22
KR20190094479A (ko) 2019-08-13
AU2012352922B2 (en) 2018-05-10
EP2791821A1 (de) 2014-10-22
US9111397B2 (en) 2015-08-18
US9563976B2 (en) 2017-02-07
CA2856554C (en) 2020-03-24
KR102080242B1 (ko) 2020-02-21
KR102007940B1 (ko) 2019-08-06
US20140306991A1 (en) 2014-10-16
CN104221008B (zh) 2017-11-17
JP2015508521A (ja) 2015-03-19
EP2791821B1 (de) 2017-10-04
AU2018211233A1 (en) 2018-08-16
WO2013089837A1 (en) 2013-06-20

Similar Documents

Publication Publication Date Title
DE202012013434U1 (de) Vorabruf von Kartenkacheldaten entlang einer Route
DE202012013435U1 (de) Vorrichtung zum Vorabruf von Ortsseitendaten zur darauffolgenden Anzeige auf einem mobilen Computergerät
DE202012013460U1 (de) Vorabrufen von Kartenkacheldaten, basierend auf einer von einem mobilen Gerät generierten Ereignisanalyse
DE202011110851U1 (de) Vorrichtung der Zielführung
DE202014010903U1 (de) System für die Angabe des Benutzerstandortes und der Blickrichtung einer digitalen Karte
AU2012352984B2 (en) Method of pre-fetching map data for rendering and offline routing
DE202015009184U1 (de) Wegbeschreibung zwischen automatisch bestimmten Ausgangspunkten und ausgewählten Zielen
DE202013012426U1 (de) System für die Anzeige von Panoramabildern
DE202010018459U1 (de) System zur Darstellung von Übergängen zwischen Strassenansichten
DE202012013506U1 (de) Verwaltung von Kartenelementen Mithilfe von Aggregierten Merkmalskennungen
DE202012013426U1 (de) Integrieren von Karten und Straßenansichten
DE202016006079U1 (de) Das dynamische Steuern eines Kartenansichtsfensters im Hinblick auf Benutzersignale
DE202012013450U1 (de) Beschriftungspositionierbildwiedergabesystem zur Reduzierung des Kriechens bei Zoom-Aktivitäten
DE202015009120U1 (de) Integration von Online-Navigationsdaten mit gecachten Navigationsdaten während der aktiven Navigation
DE202014010949U1 (de) Vorrichtung zur Unterbreitung von Vorschlägen anhand von Favoriten in der Nähe
DE202015009163U1 (de) Mosaikbasierte Verteilung von suchbaren geospatialen Daten an Client-Vorrichtungen
DE202010018512U1 (de) System zur Darstellung von Bildern auf Grundlage der Umgebungsbedingungen
DE102019204242A1 (de) Verfahren und System zum effizienten Rendern von Wolkenwitterungseinflussgrafiken in dreidimensionalen Karten
DE202014010955U1 (de) Verwendung von Kartendaten-Differenzkacheln zur iterativen Bereitstellung von Kartendaten für ein Client-Gerät
DE202014010911U1 (de) Effiziente Zusammensetzung und Darstellung grafischer Elemente
DE112016002350T5 (de) Anzeigevorrichtung, Informationsverarbeitungssystem und Steuerverfahren
JP2006513407A (ja) モバイル・ナビゲーション・ユニットのための高度3d視覚化システム及び方法
DE202015009138U1 (de) Indexierte Einheitsgrößenparameter für Strichwiedergabe
DE202015009195U1 (de) Virtuelle geografische Umfänge, bestehend aus mehreren Komponentenformen
DE202012013439U1 (de) Das Verwenden von Banding zur Optimierung der Kartenwiedergabe in einer dreidimensionalen Neigungsansicht

Legal Events

Date Code Title Description
R207 Utility model specification
R150 Utility model maintained after payment of first maintenance fee after three years
R081 Change of applicant/patentee

Owner name: GOOGLE LLC (N.D.GES.D. STAATES DELAWARE), MOUN, US

Free format text: FORMER OWNER: GOOGLE INC., MOUNTAIN VIEW, CALIF., US

R082 Change of representative

Representative=s name: BETTEN & RESCH PATENT- UND RECHTSANWAELTE PART, DE

R081 Change of applicant/patentee

Owner name: GOOGLE LLC (N.D.GES.D. STAATES DELAWARE), MOUN, US

Free format text: FORMER OWNER: GOOGLE LLC (N.D.GES.D. STAATES DELAWARE), MOUNTAIN VIEW, CALIF., US

R082 Change of representative

Representative=s name: BETTEN & RESCH PATENT- UND RECHTSANWAELTE PART, DE

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