DE202012013441U1 - Wiedergabe von Kartenabbildungen mithilfe von Änderungen von Nicht-Raster Kartendaten - Google Patents

Wiedergabe von Kartenabbildungen mithilfe von Änderungen von Nicht-Raster Kartendaten Download PDF

Info

Publication number
DE202012013441U1
DE202012013441U1 DE202012013441.8U DE202012013441U DE202012013441U1 DE 202012013441 U1 DE202012013441 U1 DE 202012013441U1 DE 202012013441 U DE202012013441 U DE 202012013441U DE 202012013441 U1 DE202012013441 U1 DE 202012013441U1
Authority
DE
Germany
Prior art keywords
map
data
card
client device
map image
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
DE202012013441.8U
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 DE202012013441U1 publication Critical patent/DE202012013441U1/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • 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/3804Creation or updating of map data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04847Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
    • 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
    • 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/3867Geometry of map features, e.g. shape points, polygons or for simplified maps
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/0485Scrolling or panning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/206Drawing of charts or graphs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B29/00Maps; Plans; Charts; Diagrams, e.g. route diagram
    • G09B29/10Map spot or coordinate position indicators; Map reading aids
    • G09B29/106Map spot or coordinate position indicators; Map reading aids using electronic means
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/14Display of multiple viewports
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2354/00Aspects of interface with display user
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • G09G2370/02Networking aspects
    • G09G2370/022Centralised management of display operation, e.g. in a server instead of locally
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2380/00Specific applications
    • G09G2380/10Automotive applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Abstract

Greifbares nicht vorübergehendes computerlesbares Medium, das Anweisungen speichert, die bewirken, wenn sie von einem oder mehreren Prozessoren ausgeführt werden, dass der eine oder die mehreren Prozessoren die folgenden Schritte durchführen: das Erzeugen von Kartendaten in einem Nicht-Rasterformat für ein ausgewähltes Gebiet, wobei die Kartendaten an einem Client-Gerät so interpretierbar sind, dass sie eine erste Kartenabbildung im Rasterformat erzeugen und die erste Kartenabbildung am Client-Gerät anzeigen; das Herbeiführen, dass Kartendaten an das Client-Gerät über ein Kommunikationsnetzwerk übertragen werden; das Erhalten eines Hinweises vom Client-Gerät, dass eine zweite Kartenabbildung für das ausgewählte geografische Gebiet am Client-Gerät wiedergegeben werden soll; das Erzeugen eines Deskriptors eines Änderungshinweises von einem oder mehreren Änderungen der Kartendaten zum Umwandeln der ersten Kartenabbildung in die zweite Kartenabbildung; und das Herbeiführen, dass der Änderungshinweis an das Client-Gerät zur Wiedergage und Anzeigen der zweiten Kartenabbildung im Rasterformat am Client-Gerät mithilfe von zumindest einem Teil der Kartendaten und des Änderungshinweises über ein Kommunikationsnetzwerk übertragen wird.

Description

  • Gebiet der Offenbarung
  • Die vorliegende Offenbarung bezieht sich auf Systeme zur Kartenwiedergabe, wie beispielsweise Systeme zur elektronischen Kartenanzeige, und insbesondere auf ein System zur Kartenwiedergabe, bei dem Kartenabbildungen wiedergegeben werden, indem Kartendaten benutzt werden, die in einem Nicht-Rasterformat bereitgestellt werden. Unter Schutz gestellt werden und Gegenstand des Gebrauchsmusters sind dabei, 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
  • Die hierin angegebene Hintergrundbeschreibung soll den Kontext der Offenbarung allgemein darstellen. Die Arbeit der vorliegend genannten Erfinder, in dem Umfang, wie sie in diesem Hintergrundabschnitt beschrieben ist, sowie Aspekte der Beschreibung, die zum Zeitpunkt der Anmeldung sonst möglicherweise nicht als Stand der Technik qualifiziert sind, werden weder ausdrücklich noch stillschweigend als Stand der Technik gegenüber der vorliegenden Offenbarung anerkannt.
  • Heutzutage können Bilder von geografischen Regionen durch Softwareanwendungen angezeigt werden, die auf einer großen Vielfalt von Geräten einschließlich Mobilfunkgeräten, Navigationssystemen für Fahrzeuge, Handgeräte für globale Positionierungssysteme (GPS), und Computer ausgeführt werden. Karten können abhängig von der Anwendung und/oder der Benutzerpräferenz topografische Daten, Straßendaten, städtische Transitinformationen, Verkehrsdaten, usw. anzeigen. Außerdem können einige Anwendungen Karten in einem interaktiven Modus anzeigen, sodass ein Benutzer verschiedene Regler bedienen kann (Auswahlschalter, Bildlaufleiste usw.) wie beispielsweise zum Wechseln der Zoomstufen oder der Schwenkrichtung der „Kamera” an einem neuen Standort. Ein Benutzer kann in einigen Fällen auch bestimmte Informationen auf der Anzeige auswählen oder abwählen. So kann beispielsweise der Benutzer den geeigneten Regler zum Einschalten der Anzeige auf den Radwegen bedienen.
  • Zum Wiedergeben einer Kartenabbildung erhält ein Gerät normalerweise Rasterbilder von einem dedizierten Server. So kann beispielsweise ein Kartenserver auf dem Internet in Betrieb sein und Bilder in einem PNG-Dateiformat (Portable Network Graphics PNG) an verschiedene Geräte für die spezifischen geografischen Gebiete bereitstellen. Obwohl Rasterbilder relativ leicht an ein Client-Gerät wiedergegeben werden können erfordern Daten mit Wiedergabe von Rasterbildern für eine umfassende Karte normalerweise eine große Menge an Speicherplatz. Es ist auch schwierig, Rasterbilder an einem Client-Gerät auf effiziente Weise zu manipulieren. So wird beispielsweise beim Zoomen auf ein ausgewähltes Gebiet entweder ein neues Rasterbild vom Server abgerufen, oder die erhältlichen Daten mit Rasterbildern werden mit deutlichem Qualitätsverlust vergrößert.
  • Zusammenfassung
  • In einer Ausführungsform beinhaltet ein computerimplementiertes Verfahren zum Bereitstellen von Kartendaten an ein Client-Gerät das Erzeugen von verschiedenen Vektordeskriptoren zur Wiedergabe an ein Client-Gerät eine erste Kartenabbildung für ein ausgewähltes Gebiet, wobei jeder Vektordeskriptor auf eine Geometrie eines jeweiligen Kartenelements entsprechend einer Grafikformat für Vektoren hinweist. Das Verfahren beinhaltet außerdem auch, dass der Vektordeskriptor an das Client-Gerät über ein Kommunikationsnetzwerk übertragen wird, das Erhalten eines Hinweises, dass eine zweite Kartenabbildung für das ausgewählte geografische Gebiet an das Client-Gerät wiedergegeben wird, sodass das zweite Kartenbild sich von der ersten Kartenabbildung unterscheidet, um einen Änderungshinweis zu erzeugen, der auf eine Reihe von einem oder mehreren Vektordeskriptoren hinweist, wobei jede davon einem jeweiligen Kartenelement entspricht, das in einer aber nicht in beiden der ersten und zweiten Kartendaten Abbildung wiedergegeben wird, und zu bewirken, dass Änderungshinweise an das Client-Gerät über das Kommunikationsnetzwerk übertragen werden, damit die zweite Kartenabbildung mithilfe zumindest einiger der Vektordeskriptoren und des Änderungshinweises wiedergegeben wird.
  • In einer anderen Ausführungsform speichert ein greifbares nicht vorübergehendes computerlesbares Medium Anweisungen, die wenn diese durch einen oder mehrere Prozessoren ausgeführt werden, den einen oder mehrere Prozessoren dazu bringt, Kartendaten in einem Nicht-Rasterformat für eine ausgewählte geographische Region zu erzeugen, wobei die Kartendaten an einem Client-Gerät dazu interpretiert werden können, eine erste Kartenabbildung in einem Rasterformat zu erzeugen, und die Kartendaten an das Client-Gerät über ein Kommunikationsnetzwerk zu übertragen. Des Weiteren bringen die von einem oder mehreren Prozessoren ausgeführten Anweisungen den einen oder die mehrere Prozessoren dazu, vom Client-Gerät einen Hinweis zu erhalten, dass eine Kartenabbildung des ausgewählten geografischen Gebiets an das Client-Gerät wiedergegeben werden soll, um einen Änderungshinweis zu erzeugen, der eine oder mehrere Änderungen an den Kartendaten beschreibt, um die erste Kartenabbildung in das zweite Kartenbild umzuwandeln, und um herbeizuführen, dass die Änderungshinweise an das Client-Gerät über ein Kommunikationsnetzwerk übertragen werden, um die zweite Kartenabbildung im Rasterformat am Client-Gerät mithilfe von zumindest einem Teil der Kartendaten und dem Änderungshinweis wiederzugeben.
  • In einer anderen Ausführungsform beinhaltet ein Verfahren in einem Rechnergerät zum Erzeugen von Kartenabbildung das Erhalten mehrerer Vektordeskriptoren zur Wiedergabe einer ersten Kartenabbildung über ein Kommunikationsnetzwerk für ein ausgewähltes geografisches Gebiet, wobei jeder Vektordeskriptor entsprechend einem Grafikformat des Vektors auf eine Geometrie eines jeweiligen Kartenelements hinweist, und die erste Kartenabbildung mithilfe der Vielzahl von Vektordeskriptoren wiedergibt. Das Verfahren beinhaltet auch das Erhalten über ein Kommunikationsnetzwerk eines Änderungshinweises, der auf eine Änderung der verschiedenen Vektordeskriptoren hinweist zur Wiedergabe einer zweiten Kartenabbildung für die ausgewählte geografische Gebiet, und die Wiedergabe der zweiten Kartenabbildung mithilfe zumindest einiger der Vektordeskriptoren und den Änderungshinweisen für das ausgewählte Gebiet.
  • In einer noch anderen Ausführungsform beinhaltet ein in Betrieb genommenes Rechnergerät in einem Kommunikationsnetzwerk einen Prozessor, einen an den Prozessor gekoppelten Speicher, eine Netzwerkschnittstelle zum Kommunizieren über das Kommunikationsnetzwerk, und mehrere Routinen, die im Arbeitsspeicher gespeichert sind. Eine erste Routine wird auf dem Prozessor ausgeführt, um herbeizuführen, dass eine Anfrage bezüglich Kartendaten, entsprechend einem ausgewählten geografischen Gebiet ausgeführt wird, die über eine Netzwerkschnittstelle übertragen wird. Eine zweite Routine wird auf dem Prozessor ausgeführt, um eine erstes Kartenabbildung mithilfe einer Vielzahl von Vektordeskriptoren als Antwort auf die Anfrage über eine Netzwerkschnittstelle wiederzugeben, wobei die Vielzahl der Vektordeskriptoren nicht in einem Rasterformat ist. Eine dritte Routine wird auf dem Prozessor ausgeführt, um herbeizuführen, dass eine Anfrage bezüglich der Datenänderung entsprechend der ausgewählten geografischen Region über die Netzwerkschnittstelle übertragen wird. Eine vierte Routine wird auf dem Prozessor ausgeführt, um ein zweite Kartenabbildung mithilfe zumindest einiger der Vielzahl der Vektordeskriptoren und der Änderungsdaten wiederzugeben.
  • Kurzbeschreibung der Zeichnungen
  • 1 ist ein Blockdiagramm eines Systems, in dem ein Server Kartendaten an ein Client-Gerät bereitstellt, um eine Kartenabbildung wiederzugeben, und danach Änderungsdaten mithilfe von einigen oder allen ursprünglich bereitgestellten Kartendaten und Änderungsdaten entsprechend einer Ausführungsform zur Wiedergabe einer anderen Kartenabbildung für das gleiche geografische Gebiet bereitzustellen;
  • 2 ist ein Interaktionsdiagramm zur Wiedergabe von zwei Kartenabbildungen, die einen exemplarischen Umtausch von Informationen anzeigen und einer bestimmten geografischen Region an einem Client-Gerät entsprechen, das im System von 1; in Betrieb sein kann;
  • 3 ist ein Interaktionsdiagramm, das eine exemplarische Übertragung von Informationen an ein Client-Gerät zur Wiedergabe von zusätzlichen Kartenfunktionen in Verbindung mit vorher bereitgestellten Kartendaten anzeigt, die im System von 1; implementiert werden können;
  • 4 ist ein Interaktionsdiagramm, das eine exemplarische Übertragung von Informationen an ein Client-Gerät zum Verändern eines Merkmals einer Kartenfunktion anzeigt, die vorher in bereitgestellten Kartendaten beinhaltet war, die im System von 1; implementiert werden können;
  • 5 ist ein Interaktionsdiagramm, das eine exemplarische Übertragung von Informationen an ein Client-Gerät zum Entfernen einer Kartenfunktion anzeigt, die vorher in Kartendaten beinhaltet waren, die im System von 1; implementiert werden können;
  • 6 ist ein Interaktionsdiagramm, das eine exemplarische Übertragung von Informationen an ein Client-Gerät zum Ändern einer Kartenfunktion anzeigt, die mit mehreren Kartenelementen in Verbindung gebracht wird, und in vorher bereitgestellten Kartendaten beinhaltet war, die im System von 1; implementiert werden können;
  • 7 ist ein Flussdiagramm eines exemplarischen Verfahrens zum Erzeugen von Kartendaten für mehrere Kartenbilder an einem Kartenserver, der im System von 1; in Betrieb sein kann;
  • 8 ist ein Flussdiagramm eines exemplarischen Verfahrens zum Erzeugen einer Beschreibung einer Änderung von vorher bereitgestellten Kartendaten an einem Client-Gerät, das im System von 1; in Betrieb sein kann;
  • 9 ist ein Flussdiagramm eines exemplarischen Verfahrens zum Wiedergeben von Kartenabbildungen an ein Client-Gerät, das im System von 1; in Betrieb sein kann;
  • 10A ist eine exemplarische Basiskarte, die an einem Client-Gerät angezeigt werden kann, das im System von 1; und in Betrieb ist; und
  • 10B ist eine exemplarische Transitkarte, die angezeigt werden kann nachdem ein Benutzer über eine interaktive Benutzerschnittstelle die Art der Transitkarte am Client-Gerät ausgewählt hat, das die Basiskarte von 10A anzeigt.
  • Detaillierte Beschreibung
  • In Ausführungsformen der unten erläuterten Systeme und der Verfahren stellt ein Kartenserver auf effektive Weise Kartendaten zur Wiedergabe von Kartenabbildungen an ein Client-Gerät bereit. Nachdem der Kartenserver an ein Client-Gerät Kartendaten zur Wiedergabe einer ersten Kartenabbildung (z. B. eine Basiskarten Abbildung) entsprechend einem bestimmten Gebiet oder einer geografischen Region bereitgestellt hat, stellt der Kartenserver gemäß einiger Ausführungsformen Daten an das Client-Gerät zur Wiedergabe einer zweiten, unterschiedlichen Kartenabbildungen (z. B. eine Verkehrskarten Abbildung) entsprechend dem gleichen Gebiet bereit. Das Client-Gerät kann dann die zweite Kartenabbildung wiedergeben, indem die vorher bereitgestellten Kartendaten zur Wiedergabe der ersten Kartenabbildung und Änderungsdaten benutzt werden, und der Kartenserver nicht unbedingt Kartendaten bei mehrmalige Wiedergabe der zugleich ersten Kartenabbildung und der zweiten Kartenabbildung an das Client-Gerät bereitzustellen braucht. Die Änderungsdaten können abhängig vom Szenario eine oder mehrere Ergänzungen zu den vorher bereitgestellten Kartendaten, Löschungen der einen oder mehreren Teile der vorher bereitgestellten Kartendaten, oder Änderungen von einem oder mehreren Teilen der vorher bereitgestellten Kartendaten beinhalten.
  • In einer Ausführungsform, stellt der Kartenserver Kartendaten in einem Nicht-Rasterformat bereit, und der Client interpretiert oder alle Kartendaten, um die erste Kartenabbildung und die zweite Kartenabbildung als ein jeweiliges Rasterbild zu erzeugen. Die Kartendaten können zusätzlich Textdaten beinhalten, um Kartenbeschriftung festzulegen, die mit einzelnen oder zusammengefassten Kartenelementen angezeigt werden. Zur Wiedergage der ersten Kartenabbildung kann das Client-Gerät Kartendaten über ein Kommunikationsnetzwerk vom Kartenserver anfordern, und der Kartenserver kann als Antwort Kartendaten bereitstellen, die Karteninhalte entsprechend einer Grafikformat für Vektoren beschreiben. Die Kartendaten können verschiedene geometrische Formen festlegen (z. B. mithilfe von mathematischen Beschreibungen und Wegen, die die Punkte verbinden), und darauf hinweisen wie die Formen zur Wiedergabe von verschiedenen Kartenelementen, wie beispielsweise Straßen, Gebäude, Parkanlagen, Wasserkörper usw., positioniert werden sollten. So kann beispielsweise, anstatt zu bestimmen, dass jeder Pixel ein Rasterbild auf einem Liniensegment ausmacht, eine vektorbasierende Beschreibung des Liniensegments die zwei Endpunkte des Liniensegments festlegen und darauf hinweisen, dass die zwei Endpunkte durch eine gerade Linie verbunden sind. Vektor basierende Beschreibungen der Kartenelemente können hierin als Vektordeskriptoren oder einfache Vektoren bezeichnet werden, und eine Reihe von einem oder mehreren Vektordeskriptor können als Vektordaten bezeichnet werden. Außerdem kann ein einzelnes Kartenelement (z. B. ein Gebäude) oder eine Ansammlung von verschiedenen Kartenelementen (z. B. Gebäude, Parkanlagen, Radwege, und Fußgängerwege auf einem Universitätsgelände) in manchen Szenarien eine Kartenfunktion (oder einfach eine Funktion) definieren. In einer Ausführungsform ist eine Kartenfunktion einer einzigartigen Kennung zugeordnet, die vom Kartenserver und dem Client-Gerät zur Identifizierung benutzt werden kann. Im Allgemeinen kann eine Kartenfunktion mithilfe einem oder mehreren Vektordeskriptoren beschrieben werden.
  • Das Client-Gerät kann beispielsweise Kartendaten zur Wiedergabe der ersten und der zweiten Kartenabbildung als Antwort zu jeweiligen Benutzerkommandos anfordern. Die Benutzerkommandos können auf eine Auswahl von anderen Kartenarten hinweisen, auf eine andere Zoomstufe, usw. hinweisen. So wählt beispielsweise ein Benutzer entsprechend einem Szenario ein geografisches Gebiet und eine Art von Basiskarten aus, beispielsweise die Kartenart, die der die Wege, Straßen, Haupt-Wahrzeichen, usw. anzeigt. Das Client-Gerät erzeugt eine Anfrage bezüglich der Wiedergabe einer Kartenabbildung und überträgt die Anfrage an den Kartenserver, der als Antwort Kartendaten in einem Grafikformat für Vektoren (oder ein anderes Nicht-Rasterformat geeignet zur Wiedergabe eines Rasterbilds am Client-Gerät) bereitstellt. Die Kartendaten können verschiedene Vektordeskriptoren, und in manchen Fällen zusätzliche Daten, wie beispielsweise Stildaten, Beschriftungsdaten usw., beinhalten. Insbesondere können Beschriftungsdaten Zeichen im Amerikanischen Standard-Code für Informationsaustausch (American Standard Code for Information Interchange ASCII) Format, einen Unicode-Format oder andere geeignete Zeichenformate beinhalten. Das Client-Gerät interpretiert dann die Kartendaten zur Wiedergabe der Kartenabbildung und zum Anzeigen der Kartenabbildung auf einem Anzeigegerät. Der Benutzer kann dann um das obige Szenario fortzusetzen eine Transitkarte für das gleiche geografische Gebiet auswählen, und das Client-Gerät kann als Antwort einen Hinweis erzeugen, damit eine neue Kartenabbildung entsprechend einer Transitkarte erzeugt wird und der Hinweis zum Kartenserver übertragen wird. Gemäß einer Implementierung erzeugt das Client-Gerät eine Anfrage bezüglich einer neuen Art von Kartendaten (z. B. „Bereitstellen von Kartendaten für eine Transitkarte der Region R”), und der Kartenserver prüft vorherige Kommunikationen mit dem Client-Gerät zum Bestimmen der Art von Kartendaten, die vorher an das Client-Gerät gesendet wurde, und die deshalb bereits erhältlich sind. In einer anderen Ausführungsform legt das Client-Gerät zusätzlich zum Anfordern der neue Arten von Kartendaten fest, welche Art von Kartendaten für die ausgewählte Region bereits am Client-Gerät erhältlich sind, („Bereitstellen von Kartendaten für Transitkarte der Region R, wenn ich bereits Kartendaten für eine Basiskarte der Region R auf der gleichen Zoomstufe habe”). Der Kartenserver braucht in diesem Fall nicht zu wissen, dass Kartendaten, wenn überhaupt, vorher an das Client-Gerät gesendet wurden. Im Allgemeinen kann ein Werdegang von Transaktionen zwischen einem Kartenserver und einem Client-Gerät durch den Kartenserver und/oder das Client-Gerät instandgehalten werden.
  • Der Kartenserver kann dann bestimmen welche Kartenelemente in den Kartendaten und Beschriftungen hinzugefügt, entfernt oder verändert werden müssen, die für das Client-Gerät bereits erhältlich sind. So kann beispielsweise der Kartenserver bestimmen, wie sich eine Basiskarte für eine bestimmte Region und eine bestimme Zoomstufe von einer Transitkarte für die gleiche Region auf der gleichen Zoomstufe unterscheidet, und einen geeigneten Änderungshinweis erzeugen. Der Änderungshinweis kann beispielsweise Vektordeskriptoren zum Wiedergeben von U-Bahnen beinhalten, die nicht in der Basiskarten Abbildung beinhaltet sind. Der Kartenserver stellt dann die Änderungshinweise an das Client-Gerät zur Wiedergabe der Transit Kartenabbildung bereit, indem dieser zumindest teilweise die Kartendaten benutzt, die zur Wiedergabe von Basiskarten Abbildung und dem Änderungshinweis bereitgestellt werden.
  • Diese und andere Beispielszenarien, bei denen Kartendaten zur Wiedergabe von Kartenabbildungen auf effiziente Weise an ein Client-Gerät bereitgestellt werden, sind ferner mit Bezug auf die begleitenden Abbildungen erläutert. Manche der Abbildungen können durch das Auslassen bestimmter Elemente zum Zweck der Veranschaulichung anderer Elemente vereinfacht sein. Diese Auslassungen von Elementen in einigen Figuren weisen nicht zwangsläufig auf das Vorhandensein oder Nichtvorhandensein von bestimmten Elementen in einigen der Ausführungsbeispiele hin, es sei denn, dass es in der entsprechenden geschriebenen Beschreibung explizit dargelegt ist.
  • Als erstes können Techniken, auf die in 1 hingewiesen wird, zum Übertragen von Kartendaten in ein System 10 implementiert werden. In einer Ausführungsform beinhaltet das System 10 einen Kartenserver 12, ein Client-Gerät 14, das kommunikativ über ein Netzwerk 16 an den Kartenserver 12 gekoppelt ist, und eine Kartendatenbank 18, die kommunikativ an den Kartenserver 12 gekoppelt ist. Das Netzwerk 16 kann ein Weitverkehrsnetz (wide area network WAN), wie beispielsweise ein Internet, ein Lokalnetz (local area network LAN), oder jede andere geeignete Art von Netzwerk sein. Die Kartendatenbank 18 kann abhängig von der Ausführungsform an den Kartenserver 12 über das Netzwerk 16 oder eine andere Kommunikationsverbindung gekoppelt sein wie in 1 veranschaulicht. Zur Vereinfachung wird nur ein Beispiel des Kartenservers 12, des Client-Geräts 14, und der Kartendatenbank 18 in 1 angezeigt. In anderen Ausführungsformen kann das System 10 jedoch mehr als einen Kartenserver 12, mehr als ein Client-Gerät 14, und/oder mehr als eine Kartendatenbank 18 beinhalten.
  • Der Kartenserver 12 kann einen Prozessor 20 und einen computerlesbaren Speicher 22 beinhalten, der einen Kartenregler 30 in Form von Computeranweisungen beinhaltet, die beispielsweise auf dem Prozessor 20 direkt (z. B. ein zusammengesetzter Code) oder indirekt ausführbar sind (z. B. als ein Skript, das durch eine andere Anwendung interpretiert und auf dem Prozessor 20 ausgeführt wird). Der computerlesbare Arbeitsspeicher 22 kann flüchtige Speicherkraft zum Speichern von Computeranweisungen und Daten beinhalten, auf dem Computeranweisungen im Laufzeitbetrieb sind (z. B. ein Direktzugriffsspeicher (Random Access Memory oder RAM)) und in einer Ausführungsform beispielsweise persistente Speicher, wie eine Festplatte, beinhalten. In einer Ausführungsform beinhaltet der Kartenregler 30 eine dynamische Funktionssteuerung 32, die Vektordaten für verschiedene Kartenelemente und/oder Kartenfunktionen erzeugt oder mehrere Kartenelemente, die als Karteninhalte an das Client-Gerät 14 bereitgestellt werden. Die dynamischen Funktionssteuerung 32 kann auch dazu konfiguriert werden, um den Unterschied zwischen einer vektorbasierenden Beschreibung einer Kartenabbildung und einer anderen Kartenabbildung zu bestimmen, die dem gleichen geografischen Gebiet entspricht, einen angemessenen Änderungshinweis erzeugt, und den Änderungshinweis dem Client-Gerät 12 bereitstellt. In anderen Worten kann die dynamische Funktionssteuerung 32 anstatt eine komplette vektorbasierende Beschreibung einer Kartenabbildung wiederzugeben auf effiziente Weise eine Beschreibung der Änderungen der vorherig bereitgestellten Vektor basierenden Beschreibung einer anderen Kartenabbildung bereitstellen.
  • Zum Erzeugen eines Änderungshinweises vergleicht die dynamischen Funktionssteuerung 32 entsprechend einer Ausführungsform eine reihenförmige Darstellung von Vektordaten, die einer bestimmten Kartenabbildung entsprechen, mit einer reihenförmigen Darstellung von Vektordaten, die einer anderen Kartenabbildung entsprechen. Die dynamischen Funktionssteuerung 32 kann beispielsweise Vektordaten für eine Basiskarte für eine Region R bei Zoomstufe Z anfordern, und der Kartenserver 18 kann als Antwort eine Reihe von Vektorbeschreibungen bereitstellen V1, V2, V5, ... VN,. Ein anderes Mal kann die dynamische Funktionssteuerung 32 Vektordaten für eine Transitkarte für die Region R bei Zoomstufe Z anfordern, und der Kartenserver 18 kann als Antwort eine Reihe von Vektordeskriptoren bereitstellen V1, V3, ... VL. Basierend auf den zwei Reihen von Vektorschreibungen kann die dynamische Funktionssteuerung 32 für die Region R bei Zoomstufe Z bestimmen, (i) dass die Basiskarte und die Transitkarte beide ein Kartenelement beinhalten, die einem Vektordeskriptor entsprechen V1, (ii) dass die Basiskarte aber nicht die Transitkarten Kartenelemente beinhaltet, die den Vektordeskriptoren V2 und V5 entsprechen, und (iii) dass die Transitkarte aber nicht die Basiskarte ein Kartenelement beinhalten, das einem Vektordeskriptor entspricht V3. Die dynamische Funktionssteuerung 32 kann einen Änderungshinweis erzeugen, um darauf hinzuweisen, dass zum Erzeugen einer Transitkarten Abbildung mithilfe vorher bereitgestellter Vektordaten zur Wiedergabe von Basiskarten Abbildungen, eine Vektoränderung V3 an die vorher bereitgestellten Vektordaten hinzugefügt wird, wobei Vektordeskriptoren V2 und V5 von den vorher bereitgestellten Vektordaten entfernt werden. Insbesondere kann die dynamische Funktionssteuerung 32 einen Änderungshinweis erzeugen, der einen oder mehrere Hinweise zum Hinzufügen und einen oder mehrere Hinweise zum Entfernen beinhaltet, wovon jeder eine Operation (z. B. Hinzufügen, Entfernen), und einen Operanden (z. B. einen Vektordeskriptor, eine Kartenfunktion oder ein Kartenelement) bezeichnen kann.
  • Ferner kann die dynamische Funktionssteuerung 32 in manchen Ausführungsformen bestimmen, dass obwohl ein bestimmtes Kartenelement wiedergegeben wird wenn die erste und die zweite Kartenabbildung erzeugt werden, eine oder mehrere Eigenschaften des Kartenelements verändert werden müssen, damit das Kartenelement wieder benutzt werden kann, um das zweite Kartenabbildung wiederzugeben. Einige oder alle Kartenelemente können beispielsweise mit jeweiligen Tiefenwerten verbunden werden, die zum Positionieren dieser Kartenelemente im Vergleich zu anderen, teilweise oder vollständig überlappenden Kartenelementen im gleichen Gebiet hinweisend sind. Ein Kartenelement, das ein Straßensegment auswählt und einem Vektordeskriptor Vi entspricht kann beispielsweise noch spezifischer bei einer Tiefe D1 in einer Basiskarten Abbildung wiedergegeben werden aber bei einer Tiefe D2 in einer Transitkarten Abbildung wiedergegeben werden. In diesem Szenario kann eine dynamische Funktionssteuerung 32 einen Änderungshinweis erzeugen, der darauf hinweist, dass die Tiefe, die mit dem Vektordeskriptor Vi, verbunden wird, der vorher dem Client-Gerät 14 bereitgestellt wurde, auf Tiefe D2 aktualisiert werden sollte.
  • Des Weiteren kann die dynamische Funktionssteuerung die dynamische Funktionssteuerung 32 zusätzlich zu den Vektordaten Beschriftungsdaten für die hinzugefügten oder veränderten Kartenfunktionen als Teil des Änderungshinweises oder alternativ als getrennter Hinweis bereitstellen. Die Beschriftungsdaten können Zeichen in jedem geeigneten Format und in manchen Ausführungsformen Hinweise von Kennungen von Kartenfunktionen oder Gruppen von Kartenfunktionen beinhalten, zu denen die entsprechenden Beschriftungen gehören.
  • In manchen Ausführungsformen kann die Kartensteuerung 30 zusätzlich zu den Vektordaten Stildaten bereitstellen, die darauf hinweisen, wie Vektordaten wiedergegeben werden sollen. Stildaten können insbesondere visuelle Charakteristiken oder Eigenschaften, wie Linienstärke (z. B. Breite bei Pixeln), Linienfarben, eine oder mehrere Farben zum Ausfüllen usw., beschreiben. In einer Ausführungsform werden Stildaten für verschiedene Stile bereitgestellt, die bei Vektordaten angewandt werden können. Der Kartenserver kann auch spezifizieren welche visuellen Stile das Client-Gerät bei verschiedenen Vektor basierenden Beschreibungen der Kartenelemente anwenden soll (auch als Vektordeskriptoren oder hierin einfach als Vektor bezeichnet). Ferner weist in manchen Ausführungsformen der Kartenserver daraufhin, welche visuellen Stile bei einer Vektor basierenden Beschreibung eines Kartenelements für bestimmte Kartenarten, wie beispielsweise Geländeterrain, Transit, Verkehr, Radweg usw. angewendet werden können. Dazu können mehrere Stile identifiziert werden, wovon jeder durch eine jeweilige einzigartige Stilkennung identifiziert werden kann.
  • Der Kartenregler 30 kann Kartendaten für ein bestimmtes geografisches Gebiet und Zoomstufe in einem Nicht-Rasterformat, wie beispielsweise Vektordaten und das Client-Gerät 14 in einer einzelnen elektronischen Nachricht oder einer Reihe von elektronischen Nachrichten, abhängig von der Ausführungsform, bereitstellen. Ferner erzeugt der Kartenregler 30 Kartendaten als eine Reihe von Deskriptoren für Kartenkacheln, sodass jeder Deskriptor für Kartenkacheln eine Kartenkachel, d. h. einen Teil einer Kartenabbildung in einer bestimmten Größe, beschreibt, (z. B., 256 mal 256 Pixel). Die Größe eines geografischen Gebiets, die durch eine einzelne Kartenkachel dargestellt ist, hängt von der Zoomstufe ab, die der Kartenkachel zugeordnet ist, so dass eine einzelne Kartenkachel in einer unteren Zoomstufe ein größeres geografisches Gebiet darstellt als eine einzelne Kartenkachel auf einer höheren Zoomstufe. Der Kartenregler 30 kann jede Beschreibung der Kartenkachel entsprechend einem Grafikformats für Vektoren erzeugen, und ein Client-Gerät, wie beispielsweise ein Client-Gerät 14 in 1 kann lokal ein Rasterbild für jede Kachel erzeugen.
  • Mit fortsetzendem Bezug zu 1, kann das Client-Gerät 14 einen Prozessor 50, der Anweisungen ausführen kann, und einen Arbeitsspeicher 52 zum Speichern von Anweisungen und Daten beinhalten. Das Client-Gerät 14 kann auch ein Eingabegerät 54 und ein Ausgabegerät 56 zum Erhalten und von Eingaben von einem Benutzer und zum Bereitstellen von Ausgaben an einen jeweiligen Benutzer beinhalten. Das Eingabegerät 54 kann auch eins oder mehrere einer Tastatur, einer Maus, und eines Touchscreens beinhalten, und das Ausgabegerät 56 kann eine Anzeige oder ein Bildschirmgerät, wie beispielsweise ein Touchscreen oder beispielsweise einen „normalen” (nur Ausgabe) Bildschirm, beinhalten. Das Client-Gerät 14 kann verschiedene Softwarekomponenten wie beispielsweise Treibergeräte, Betriebssystem (Operating System OS) Event-Handler usw. zum Steuern des Eingabegeräts 54 und des Ausgabegeräts 56 beinhalten, um eine interaktive Benutzerschnittstelle zu implementieren. Ferner können Softwareanwendungen, die auf dem Prozessor 50 ausgeführt werden diese Softwarekomponenten benutzen, um eine anwendungsspezifische Benutzerschnittstelle bereitzustellen.
  • Abhängig von der Ausführungsform kann das Client-Gerät 14 ein persönlicher Computer, wie beispielsweise ein Desktop Computer, ein Laptop Computer oder ein Tablet-Computer, eine Arbeitsplatte, ein tragbares Kommunikationsgerät, wie beispielsweise ein Smartphone oder jedes andere geeignete Rechnergerät, sein. In einer Ausführungsform ist das Client-Gerät 14 ein sogenanntes Thin Client, das von einem anderen Computergerät für bestimmte Rechner- oder Speicherfunktionen abhängig ist. In einer solchen Ausführungsform beinhaltet der Arbeitsspeicher 52 beispielsweise nur flüchtige Speicherkraft wie RAM, und ein Programm und/oder eine Speichereinheit mit persistenter Speicherkraft ist außerhalb des Client-Geräts 14. In einer anderen Ausführungsform beinhaltet der Arbeitsspeicher 52 flüchtige und persistente Speicherkomponenten.
  • Eine Browseranwendung 60 kann eine Reihe von computerlesbaren Anweisungen beinhalten, die auf einem Prozessor 50 ausführbar sind. Im Allgemeinen greift die Browseranwendung 60 auf Webseiten zu, die Inhalte, wie Textbilder, eingebettete Videos usw., und Anweisungen in einer Auszeichnungssprache, wie beispielsweise Hypertext Auszeichnungssprache (Hypertext Markup Language HTML), beinhalten, und gibt Inhalte auf dem Ausgabegerät 56 entsprechend den Anweisungen in der Auszeichnungssprache wieder. Dementsprechend kann die Browseranwendung 60 Funktionen zum Erzeugen und Verarbeiten von Datenpaketen implementieren, die mit einem Hypertext-Übertragungsprotokoll (Hypertext Transfer Protokoll HTTP), dem Analysieren von HTML Inhalten, einer Datenverschlüsselung entsprechend dem Protokoll für Secure Socket Layer (SSL), dem Anfordern und Überprüfen einers digitalen Zertifikats, usw. sowie Funktionen für Benutzerschnittstellen zum Erhalten verschiedener Benutzerkommandos in Bezug auf Navigation, Wiedergabe und Datenmanagement von Webseiten übereinstimmen. In manchen Ausführungsformen ist die Browseranwendung 60 dazu konfiguriert, um Anweisungen in einer Skriptsprache (z. B. Javascript) zu interpretieren, die auf einer Webseite bereitgestellt werden.
  • Eine dynamische Maschine zur Kartenwiedergabe 62 kann als eine Komponente einer Browseranwendung 60 ausgeführt werden. In anderen Ausführungsformen kann ein Softwaremodul jedoch ähnlich zu der Maschine zur Kartenwiedergabe 62 als eine einzelne Anwendung oder als eine Komponente einer anderen Anwendung ausgeführt werden. Abhängig von der Ausführungsform kann die dynamische Maschine zur Kartenwiedergabe 62 ein Plug-in sein (z. B. eine Reihe von zusammengestellten Anweisungen, welche die Funktionalität Browseranwendungen 60 erweitert und auf dem Prozessor 50 ausgeführt werden), ein Skript (z. B. eine Reihe von Anweisungen in einer Skriptsprache, die durch eine Browseranwendung 60 während der Laufzeit interpretiert werden), oder eine andere geeignete Softwarekomponente sein. Gemäß eines Beispielszenarios wird die dynamische Maschine zur Kartenwiedergabe 62 heruntergeladen wenn ein Benutzer, der das Client-Gerät 14 bedient, eine Webseite besucht, die eine eingebettete interaktive Karte beinhaltet. Die Webseite kann insbesondere ein erstes Hyperlink zu einem Online-Kartenserver und einem bestimmten geografischen Ort sowie ein zweiten Hyperlink zu einer Kopie einer dynamischen Maschine zur Kartenwiedergabe 62 beinhalten, die zur Wiedergabe von Kartendaten erforderlich ist, welche vom Online-Kartenserver entsprechend zum ersten Hyperlink erhalten wurden.
  • Die dynamische Maschine zur Kartenwiedergabe 62 kann beispielsweise interaktive Steuerungselemente über die Benutzerschnittstelle der Browseranwendung 60 bereitstellen. Die interaktiven Steuerungselemente können einem Benutzer erlauben, ein geografisches Gebiet oder eine Region, eine Kartenart (z. B. Basis, Verkehr, Transit), eine Zoomstufe usw. auszuwählen. Entsprechend einem Beispielszenario fordert ein Benutzer zuerst eine Basiskarte eines geografischen Gebiets an und fordert dann eine andere Kartenart für das gleiche Gebiet an. Die Maschine zur dynamischen Kartenwiedergabe 62 kann Kartendaten in einem Grafikformat für Vektoren als Antwort auf Benutzerkommandos anfordern und erhalten.
  • Während des Betriebs kann die dynamische Maschine zur Kartenwiedergabe 62 Vektordaten (und in manchen Ausführungsformen Stildaten) vom Kartenserver 12 erhalten, die entsprechende Kartenabbildungen unter Verwendung von Vektordaten wiedergeben, damit die Kartenabbildung innerhalb eines bestimmten Gebiets angezeigt wird, das durch die Browseranwendung 60 zugeteilt wird. Die Browseranwendung 60 kann beispielsweise ein HTML5 Canvas Element zur Anzeige von Kartenabbildungen erschaffen. Die dynamische Maschine zur Kartenwiedergabe 62 kann vom Kartenserver 12 auch einen Änderungshinweis erhalten, der auf eine oder mehrere Änderungen an den erhaltenen Vektordaten hinweist, um eine andere Kartenabbildung wiederzugeben.
  • Zur Vereinfachung wird das Client-Gerät 14 mit einem einfachen Prozessor 50 angezeigt. Das Client-Gerät 14 kann jedoch in anderen Ausführungsformen zusätzliche Prozessoreinheiten (nicht angezeigt), wie die GPU Grafik Prozessoreinheit (graphics processing unit GPU) beinhalten, die beispielsweise dazu konfiguriert sind, die Bilderwiedergabe auf dem Ausgabegerät 56 zu erleichtern. Ferner kann die Browseranwendung 60 in einer Ausführungsform eine Ansammlung von Grafikfunktionen zum effizienten Erzeugen einer Kartenabbildung benutzen. Der Arbeitsspeicher 52 kann beispielsweise ein Plug-in, wie beispielsweise eine OpenGL® oder Direct3D® Sammlung speichern, die Funktionen zum Wiedergeben von Grafiken mit verschiedenen Anwendungen einschließlich der Browseranwendung 60 auf dem Client 14 haben, die durch Anwendungsprogrammierschnittstelle (application programming interface API) Zugriff haben. In einer anderen Ausführungsform speichert der Arbeitsspeicher 52 ein Plug-in, das für Browseranwendungen, wie beispielsweise WebGL, besonders geeignet ist. In einer anderen Ausführungsform speichert der Arbeitsspeicher 52 auch zusätzliche Softwarekomponenten, die eine effiziente Wiedergabe von Bildern über das Ausgabegerät 56 erleichtern. Der Arbeitsspeicher 52 kann beispielsweise ein Adobe® Flash® Plug-in oder ein 03D Plug-in speichern.
  • Es wird angemerkt, dass die dynamische Maschine zur Kartenwiedergabe 62 im Allgemeinen in jeder geeigneten Anwendung betrieben werden kann. Ein Client-Gerät 70 kann beispielsweise ein tragbares Gerät wie ein Smartphone sein, in dem eine dynamische Maschine zur Kartenwiedergabe 62 in einer Kartenanwendung 74 in Betrieb ist. Ähnlich zu der Browseranwendung 60 kann die Kartenanwendung 74 eine Reihe von Anwendungen beinhalten, die in einem Speicher 72 gespeichert sind und auf einer oder mehreren Prozessoren auf dem Client-Gerät 70 (nicht angezeigt) ausgeführt werden. In manchen Implementierungen benutzt die Kartenanwendung 74 Netzwerkfunktionen, die durch eine Browseranwendung bereitgestellt wurden, die auf einem Client-Gerät 70 ausführbar sind (beispielsweise über eine entsprechende API). In anderen Implementierungen beinhaltet die Kartenanwendung 74 zumindest teilweise eine Browserfunktionalität, wie beispielsweise den Kommunikationsstack, der TCP, IP, HTTP usw., unterstützt, um auf die Kartenserver zuzugreifen 12.
  • Als nächstes werden mehrere Szenarien mit Bezug auf die Interaktionsdiagramme erwägt, die in 26 abgebildet sind, um den Betrieb von Kartenservern und einem Client-Gerät um System von 1 oder einer ähnlichen Umgebung besser anzuzeigen. Ein exemplarischer Austausch von Informationen zwischen einem Kartenserver und einem Client-Gerät ist insbesondere die Wiedergabe von zwei Kartenabbildungen für ein bestimmtes Gebiet, der in Bezug auf 2 erläutert wird, gefolgt von einer Besprechung von mehreren spezifischen Szenarien: Bereitstellen eines Änderungshinweises zur Wiedergabe von zusätzlichen Kartenelementen (3), Bereitstellen eines Änderungshinweises zum Verändern der Tiefe bei der Wiedergabe einer Kartenfunktion oder eines Elements (4), Bereitstellen eines Änderungshinweises zum Entfernen von Kartenfunktionen oder Elementen, die in vorher bereitgestellten Kartendaten (5) beinhaltet wurden, und Bereitstellen eines Änderungshinweises zum Verändern einer zusammengesetzten Kartenfunktion, die mit mehreren Kartenelementen (6) verbunden ist.
  • In Bezug auf 2 ist ein exemplarischer Nachrichtenaustausch 100 mit einer Benutzerschnittstelle 102, die in einem Client-Gerät beinhaltet oder andererseits verbunden ist (wie beispielsweise der Client 14 in 1), mit einer dynamische Maschine zur Kartenwiedergabe 104, die im Client-Gerät betrieben wird, und mit einem Server 106 eingebunden (wie beispielsweise dem Kartenserver 12 von 1). Zurückverweisend auf 1, kann die Benutzerschnittstelle durch einen Browser 60 bereitgestellt werden, während die dynamische Maschine zur Kartenwiedergabe 104 und der Server 106 in den jeweiligen Komponenten 62 und 12 implementiert werden können.
  • Als Antwort auf ein Benutzerkommando kann die Benutzerschnittstelle 102 eine Anfrage 110 bezüglich eines bestimmten Gebietes R1 erzeugen und die Anfrage an die dynamische Maschine bezüglich der Kartenwiedergabe 104 bereitstellen. Die Anfrage 110 kann als eine elektronische interne Nachricht an das Client-Gerät übertragen werden, in der beispielsweise die Komponenten 102 und 104 implementiert werden. Die dynamische Maschine zur Kartenwiedergabe 104 kann daraufhin eine Anfrage 112 bezüglich Daten für Basiskarten erzeugen, die über ein Kommunikationsnetzwerk an den Server 106 übertragen werden. Die Anfrage 112 kann das Gebiet R1 mithilfe von Koordinaten der Globale Positionierungsdienste (Global Positioning Service GPS) spezifizieren oder kann jedes andere geeignete Verfahren benutzten. Ferner kann die Anfrage 112 eine Art von Kartenhinweisen beinhalten, um zu spezifizieren, dass die Kartendaten zum Wiedergeben von Basiskarten angefordert werden. Außerdem weist die Anfrage 102 in manchen Ausführungsformen darauf hin, ob Vektor basierende Kartendaten für das Gebiet R1 bereits beim Client-Gerät erhältlich sind, das die Komponenten 102 und 104 implementiert.
  • Als Antwort auf die Anfrage 112 kann der Server 106 eine Antwort 114 erzeugen, die Kartendaten in einem Nicht-Rasterformat, wie beispielsweise in einem Grafikformat für Vektoren, beinhaltet, um eine Basiskarten Abbildung wiederzugeben. Entsprechend einem exemplarischen Szenario beinhaltet die Antwort 114 eine Vektor basierende Beschreibung der Basiskarten Abbildung für das Gebiet R1, das sich nicht auf vorher bereitgestellte Vektordaten stützt. Antwort 114 beinhaltet in anderen Worten eine vollständige Beschreibung der Basiskarten Abbildung des Gebiets R1. Die Antwort 114 kann Kartendaten beinhalten, die auf eine geeignete Weise organisiert sind, wie beispielsweise in einen oder mehrere Deskriptoren für Kacheln T1, T2, ... TN. Im Allgemeinen können Kartendaten für jede Anzahl von Kacheln, einschließlich einer einzelnen Kachel, bereitgestellt werden. Für jede Kachel kann die Antwort 112 verschiedene Merkmale F1, F2, usw. beschreiben, wobei jede mithilfe einer oder mehrerer Vektordeskriptoren entsprechend eines geeigneten Grafikformats für Vektoren spezifiziert werden kann (es wird oben darauf hingewiesen, dass eine Funktion mit einem einzelnen Kartenelement oder einer Gruppe von Kartenelementen verbunden werden kann). Funktionen können einem einzelnen Kartenelement, wie beispielsweise einem Gebäude oder unübersichtlichen Gruppierungen von Kartenelementen, entsprechen. In manchen Ausführungsformen kann die Antwort 114 einzigartige Kennungen für die Kartenfunktionen zum Benutzen bei einer zukünftigen Identifizierung bereitstellen. Die Antwort 114 kann in manchen Ausführungsformen zusätzlich Stildaten beinhalten, die verschiedene visuelle Eigenschaften der Kartenelemente spezifizieren.
  • Die dynamische Maschine zur Kartenwiedergabe 104 kann die Basiskarten Abbildung wiedergeben, die Basis Kartenabbildung an der Benutzerschnittstelle 102 bereitstellen und ein entsprechendes Event 116 erzeugen, um die erhaltenen Kartendaten (und erhältliche Stildaten) in einem Arbeitsspeicher für zukünftige Benutzung zu speichern. In einer Ausführungsform speichert die dynamische Maschine zur Kartenwiedergabe 104 zusätzlich einen Hinweis, dass die Kartendaten mit einer Basiskarte verbunden sind.
  • In Szenario 2 bestimmt der Benutzer später, die Kartenart von Basis zu Transit zu ändern, ohne die geografischen Koordinaten zu verändern und das geeignete Steuerungselement über die Benutzerschnittstelle 102 zu aktivieren. Als Antwort erzeugt die Benutzerschnittstelle 102 eine Anfrage 120 Daten für Transitkarten und vermittelt die Anfrage 120 und die dynamische Maschine zur Kartenwiedergabe 104, die daraufhin einen Hinweis 121 und den Server 106 bereitstellt, dass eine andere Kartenabbildung an das Client-Gerät wiedergegeben wird. In einer Ausführungsform ist der Hinweis 121, ähnlich zur Anfrage 112, eine Anfrage bezüglich Daten für Transitkarten. In einer anderen Ausführungsform fordert der Hinweis 121 insbesondere Änderungsdaten zum Verändern von vorher bereitgestellten Kartendaten an, um die Transitkarten Abbildung wiederzugeben.
  • In einer Ausführungsform stellt der Server 106 einen Änderungshinweis an das Client-Gerät als eine Reihe von elektronischen Nachrichten bereit 122 1 ... 122 N. In einer anderen Ausführungsform wird der Änderungshinweis jedoch als eine einzelne Nachricht bereitgestellt. Jeder der Nachrichten 122 1 ...122N kann einen Hinweis beinhalten, wie Vektordaten für die entsprechende Kachel T1 ... TN, verändert werden sollen. In manchen Szenarien werden jedoch einige der Kacheln verändert T1 ... TN, die in der Antwort 114 beschrieben sind. Eine Kartenkachel, die beispielsweise ein Wasserkörper darstellt kann das gleiche Aussehen haben wenn dieser als ein Teil einer Basiskarte oder als ein Teil einer Transitkarte angezeigt ist.
  • Für jede veränderte Kachel kann die Nachricht 122 i eine oder mehrere Änderungsdeskriptoren beinhalten M1, M2 ... MM. Im Allgemeinen kann ein Deskriptor für Änderungsdeskriptoren einen Vektordeskriptor für ein Kartenelement spezifizieren, das bei vorher bereitgestellten Kartendaten hinzugefügt wurde, ein Kartenelement in einer vorher bereitgestellten Kartendaten identifizieren, die entfernt werden sollen, einen neuen Wert für eine Eigenschaft eines Kartenelements in vorher bereitgestellten Kartendaten spezifizieren usw. In einer Ausführungsform identifiziert jede der Änderungsdeskriptoren M1, M2 ... MM die auszuführende Operation, wie beispielsweise das Hinzufügen, Entfernen, Ändern, Ändern der Tiefe usw., und beinhaltet auch eine oder mehrere Operanden oder Parameter, wie beispielsweise einen Vektordeskriptor für eine Kartenfunktion oder ein Kartenelement, der hinzugefügt wird, eine Kennung einer Kartenfunktion oder ein Kartenelement, das entfernt werden soll usw.
  • Beim Erhalten der Nachrichten 122 1 ... 122 N, kann die dynamische Maschine zur Kartenwiedergabe 104 die Kacheln für die angeforderte Transitkarten Abbildung wiedergeben, indem einige oder alle Vektordaten benutzt werden, die als Antwort 114 dem Änderungshinweis in den Nachrichten bereitgestellt wurden 122 1 ... 122 N. Insbesondere kann die dynamische Maschine zur Kartenwiedergabe 104 die vorher bereitgestellten Vektordeskriptoren interpretieren, die entsprechend den Nachrichten 122 1 verändert wurden ... 122 N, um eine Transitkarten Abbildung wiederzugeben und ein Event 126 zu erzeugen, das herbeiführt, dass die Transitkarten Abbildung über die Benutzerschnittstelle 102 wiedergegeben wird. Die dynamische Maschine zur Kartenwiedergabe 104 kann auch die veränderten Kartendaten im Arbeitsspeicher speichern. In einer Ausführungsform speichert die dynamische Maschine zur Kartenwiedergabe 104 zugleich die ursprünglich bereitgestellten Kartendaten und die veränderten Kartendaten als unterschiedliche Versionen der Kartendaten.
  • Während einem exemplarischen Nachrichtenaustausch 150, der in 3 abgebildet ist, stellt der Kartenserver 106 Vektordeskriptoren der zusätzlichen Kartenfunktionen an die dynamische Maschine zur Kartenwiedergabe 104 über die jeweiligen Nachrichten 152 1 bereit ... 152 N. Die zusätzlichen Kartenfunktionen werden mit einigen oder allen vorher bereitgestellten Kartendaten benutzt, um eine neue Kartenabbildung an das Client-Gerät wiederzugeben, das die Benutzerschnittstelle 102 und die dynamische Maschine zur Kartenwiedergabe 104 implementiert. In einer Ausführungsform beschreiben die Nachrichten 152 1 ... 152 N Ergänzungen für eine bestimmte Kartenkachel. In anderen Ausführungsformen sind die Nachrichten 152 1 ... 152 N nicht mit einer bestimmten Kachel verbunden.
  • Jede der Nachrichten 152 1 ... 152 N kann eine Beschreibung in einem Grafikformat für Vektoren oder einem anderen geeigneten Nicht-Rasterformat einer Kartenfunktion beinhalten, die eine oder mehrere Kartenelemente hat. Eine Nachricht 152 kann auch eine Tiefenfunktion beinhalten, die festlegt, wie die entsprechenden Kartenfunktionen relativ zu einer anderen Kartenfunktion oder einem Element wiedergegeben wird, das ungefähr am gleichen Ort entsorgt wurde. Eine neue Kartenfunktion, die durch eine der Nachrichten 152 1 hinzugefügt wurde ... 152 N kann beispielsweise ein Abschnitt eines Zuggleises sein, und das vorher Bereitgestellte kann eine Kartenfunktion in Form eines Straßensegments beinhalten. Abhängig von den jeweiligen Tiefenhinweisen der neuen Kartenfunktion und der vorher bereitgestellten Kartenfunktion kann der Abschnitt des Zuggleises über oder unter dem Straßensegment an dem Punkt wiedergegeben werden, an dem sich die Zuggleise und die Straße kreuzen.
  • Beim Erhalten der Nachrichten 152 1 ... 152 N, kann die dynamische Maschine zur Kartenwiedergabe 104 eine neue Kartenabbildung wiedergeben und ein Event 156 erzeugen, um herbeizuführen, dass die neue Kartenabbildung an der Benutzerschnittstelle 102 angezeigt wird. In einer Ausführungsform speichert die dynamische Maschine zur Kartenwiedergabe 104 auch die erweiterten Kartendaten als eine neue Version der Kartendaten in einem Arbeitsspeicher.
  • In Bezug auf 4, kann ein exemplarischer Nachrichtenaustausch 200 auftreten wenn der Server 106 bestimmt, dass eine bestimmte Kartenfunktion, die in vorher bereitgestellten Kartendaten beinhaltet wurde, in einer neuen Kartenabbildung bei einer neuen Tiefe wiedergegeben wird. Der Server 106 kann an der dynamischen Maschine zur Kartenwiedergabe 104 für eine neue Kartenfunktion, die durch eine einzigartige Kennung identifiziert wurde, einen Änderungshinweis 202 erzeugen und übertragen, der eine neue Tiefe anzeigt, bei der die Kartenfunktion wiedergegeben werden soll. In einer anderen Ausführungsform weist der Änderungshinweis 202 auf einen neuen Tiefenwert für mehrere Kartenfunktionen oder Elemente hin. Beim Erhalten des Änderungshinweises 202 kann die dynamische Maschine zur Kartenwiedergabe 104 eine neue Kartenabbildung hinsichtlich des Änderungshinweises 202 wiedergeben und ein Event 204 erzeugen, um herbeizuführen, dass die neue Kartenabbildung an der Benutzerschnittstelle 102 angezeigt wird.
  • Ferner kann ein exemplarischer Nachrichtenaustausch 250 von 5 auftreten wenn der Server 106 bestimmt, dass eine bestimmte Kartenfunktion, die in vorher bereitgestellten Kartendaten beinhaltet wurde, nicht in einer neuen Kartenabbildung wiedergegeben wird. Der Server 106 kann an die dynamische Maschine zur Kartenwiedergabe 104 einen Änderungshinweis 252 übertragen, der eine Kartenfunktion mithilfe einer beispielsweise einzigartigen Funktionskennung identifiziert. In einer anderen Ausführungsform identifiziert der Änderungshinweis 252 ein einzelnes Kartenelement, indem es eine geeignete Kennung des Kartenelements benutzt. Ferner identifiziert der Änderungshinweis 252 in einigen Ausführungsformen mehrere Kartenfunktionen oder Elemente, die entfernt werden sollen. Beim Erhalten des Änderungshinweises 252, kann die dynamische Maschine zur Kartenwiedergabe 104 eine neue Kartenabbildung hinsichtlich des Änderungshinweises 252 wiedergeben und ein Event 254 erzeugen, das herbeiführt, dass die neue Kartenabbildung an der Benutzerschnittstelle 102 abgebildet werden kann.
  • 6 zeigt einen exemplarischen Nachrichtenaustausch 300 an, bei dem der Server 106 Änderungsdaten an die dynamische Maschine zur Kartenwiedergabe 104 zum Ändern einer zusammengesetzter Kartenfunktion bereitstellt, die mehrere Teilfunktionen oder Elemente hat. Eine Kartenfunktion kann beispielsweise F1 Teilfunktionen F1-1, F1-2, F1-3, F1-4, und F1-5 beinhalten. Beim Wiedergeben der Kartenfunktion F, als Teil einer Basiskarte kann jedes der Teilfunktionen F1-1, F1-2, F1-3, F1-4, und F1-5 benutzt werden. Beim Wiedergeben der Kartenfunktion als Teil der Transitkarte F1 kann die Kartenfunktion F1 nur mit den Teilfunktionen F1-1 und F1-2 wiedergegeben werden. In einer Ausführungsform erzeugt der Server 106 eine Nachricht 302, die darauf hinweist, dass die Kartenfunktion F1 entfernt werden soll. Ähnlich zum exemplarischen Szenario, das oben in Bezug auf 5 erläutert wird, kann die Nachricht 302 eine einzigartige Kennung der Kartenfunktion F1 beinhalten. Der Server 106 erzeugt Nachrichten 304 und 306 zum Hinzufügen von jeweiligen Teilfunktionen F1-1 und F1-5. Ähnlich zum exemplarischen Szenario von 3 können die Nachrichten 304 und 306 eine Beschreibung der entsprechenden Kartenfunktionen oder Elementen in einem Nicht-Rasterformat, wie beispielsweise eines Grafikformats für Vektoren, beinhalten. Beim Erhalten der Nachrichten 302, 304 und 306 kann die dynamische Maschine zur Kartenwiedergabe 104 eine neue Kartenabbildung mit einer neuen Version der Kartenfunktion F1 wiedergeben und ein Event 310 erzeugen, um herbeizuführen, dass die neue Kartenabbildung an der Benutzerschnittstelle 102 angezeigt wird.
  • Als nächstes können mehrere exemplarische Verfahren in Rechnergeräten implementiert werden, die im System von 1 oder in einer ähnlichen Umgebung in Betrieb sind, wie in Bezug auf 79 erläutert. Diese Verfahren können als Computerprogramme implementiert werden, die in jeder geeigneten Programmsprache entwickelt und auf dem greifbaren nicht vorübergehenden computerlesbaren Medium gespeichert (wie beispielsweise ein oder mehrere Festplattenlaufwerke) und auf einem oder mehreren Prozessoren ausführbar sind. Die Verfahren von 7 und 8 können beispielsweise im Kartenserver 12 implementiert werden, und das Verfahren von 9 kann in einem Client-Gerät 14 implementiert werden. Obwohl die Verfahren von 79 auf einem einzelnen Computer, wie beispielsweise auf einem Server oder persönliche Computer (personal computer, PC) ausgeführt werden können, ist es auch möglich, dass zumindest einige dieser Verfahren auf eine verteilte Weise mithilfe mehrerer Computer, wie beispielsweise in einer Cloud-Computing Umgebung, implementiert werden.
  • In Bezug auf 7 kann ein exemplarische Verfahren 350 zuerst zum Erzeugen von Kartendaten für mehrere Kartenabbildungen im Kartenregler 30 des Kartenservers 12 oder beispielsweise einer ähnlichen Komponente des Servers 106 implementiert werden. Gemäß einer Ausführungsform werden Vektordeskriptoren zur Wiedergabe einer ersten Kartenabbildung für ein bestimmtes 352 Gebiet an einem Block erzeugt. Die Vektordeskriptoren können mit einem Grafikformat für Vektoren übereinstimmen und jeweilige Kartenelemente beschreiben. In einigen Ausführungsformen können die Vektordeskriptoren in entsprechende Kartenfunktionen eingruppiert werden, wovon jede eine oder mehrere Kartenelemente beinhaltet. Ferner können die Vektordeskriptoren in einigen Ausführungsformen zur effizienten Wiedergabe und wiederholten Wiedergabe von Vektordaten, Text-basierenden Beschriftungsdaten, Zeichen oder Symbolen, wie Straßenschilder usw., als Teil von Nicht-Raster Kartendaten, die auch Stildaten beinhalten, bereitgestellt werden.
  • Als nächstes werden die Vektordeskriptoren bei Block 354 für das Client-Gerät bereitgestellt. So können beispielsweise die Vektordeskriptoren als eine oder mehrere elektronische Nachrichten über ein Kommunikationsnetzwerk, wie beispielsweise das Netzwerk 16, von 1 übertragen werden.
  • In Block 356 wird eine Datenanfrage bezüglich der Wiedergabe einer zweiten Kartenabbildung für das gleiche Gebiet erhalten. In einigen Szenarien wird die Anfrage als Antwort dazu übertragen, dass der Benutzer eine unterschiedliche Kartenart am Client-Gerät auswählt, was beispielsweise im interaktiven Diagramm in 2 angezeigt wird. Ein Änderungshinweis, der eine Beschreibung einer oder mehrerer Änderungen bei den vorher bereitgestellten Vektordeskriptoren beinhaltet, wird bei Block 358 erzeugt und an das Client-Gerät bei Block 360 bereitstellt.
  • In einem anderen Szenario wird die bei Block 356 erhaltene Anfrage als Antwort dazu übertragen, dass der Benutzer eine neue Zoomstufe ausgewählt hat, bei der das Kartenbild dem gleichen Gebiet entspricht und die gleiche Kartenart wiedergegen wird. Die Vektordeskriptoren, die bei Block 352 erzeugt werden, können beispielsweise mehrere Kacheln bei Zoomstufe Z1 einer Art von Basiskarten für ein geografisches Gebiet R. beschreiben. Nachdem der Benutzer die Zoomstufe Z2 ausgewählt und eine geeignete Datenanfrage bei Block 356 gemacht wird, kann ein Änderungshinweis erzeugt und an das Client-Gerät jeweils bei Block 358 und 360 bereitgestellt werden. Das Client-Gerät kann die vorher bereitgestellten Vektordeskriptoren entsprechend den Änderungshinweisen hinzugefügten, entfernen, oder verändern sowie einige oder alle der Vektordeskriptoren wiederholt skalieren, um die entsprechenden Kartenelemente bei Zoomstufe Z2 wiederzugeben. Ein noch spezifischeres Beispiel ist wenn Vektordeskriptoren bei Block 354 eine Vektor basierende Beschreibung einer Parkanlage bei Zoomstufe Z1 beinhalten können, und die gleiche Vektor basierende Beschreibung der Parkanlage zur wiederholten Wiedergabe der Parkanlage bei Zoomstufe Z2 als ein Teil des veränderten Kartenabbildung benutzt werden kann.
  • In Bezug auf 8 kann ein exemplarisches Verfahren 400 zum Erzeugen einer Beschreibung einer Änderung von vorher bereitgestellten Kartendaten beispielsweise in einem Kartenregler 30 des Kartenservers 12 oder einer ähnlichen Komponente des Servers 106 implementiert werden. In einer Ausführungsform werden zumindest einige der Verfahrensschritte 400 bei den Blöcken 356360 des oben erläuterten Verfahrens 350 ausgeführt.
  • In Block 402 wird ein Hinweis darauf erhalten, dass eine Kartenabbildung beim Client-Gerät aktualisiert werden soll. Ergänzungen zu den vorher bereitgestellten Vektordeskriptoren werden bei Block 404 identifiziert und die entsprechenden Beschreibungen werden erzeugt. In Block 406 werden Löschungen einiger der vorher bereitgestellten Vektordeskriptoren identifiziert, und die entsprechenden Beschreibungen der Änderungen werden erzeugt. Wie oben erläutert werden Änderungen bestimmter Kartenfunktionen in einigen Szenarien entfernt und Ergänzungen für einige der Teilfunktionen dargestellt. Ein Änderungshinweis, wie beispielsweise eine Beschreibung einer Änderung von Vektordaten, wird an das Client-Gerät 408 durch eine einzelnen elektronischen Nachricht oder mehrere elektronischen Nachrichten übertragen.
  • 9 ist ein Flussdiagramm eines exemplarischen Verfahrens 450 zur Wiedergabe von Kartenabbildungen, die beispielsweise in der dynamische Maschine zur Kartenwiedergabe 62 oder 104 implementiert werden können. In Block 452 werden Vektordeskriptoren für ein bestimmtes Gebiet oder eine Region erhalten, und eine erste Kartenabbildung wird mithilfe des erhaltenen Vektordeskriptors bei Block 454 wiedergegeben. Zu diesem Zweck können die erhaltenen Vektordaten interpretiert werden, um ein Rasterbild zu erzeugen.
  • Als Nächstes wird bei Block 456 eine Anfrage bezüglich der Wiedergage einer zweiten Kartenabbildung von der Benutzerschnittstelle, wie beispielsweise der Schnittstelle einer Browseranwendung, erhalten. Die zweite Kartenabbildung kann für das gleiche Gebiet sein, kann aber, wie oben erläutert, einer unterschiedlichen Kartenart oder einem unterschiedlichen Zoomstatus entsprechen. Ein Änderungshinweis, wie beispielsweise eine Beschreibung einer oder mehrere Änderungen der bei Block 452 erhaltenen Vektordeskriptoren, wird bei Block 458 erhalten. Die zweite Kartenabbildung wird dann mithilfe von einigen oder allen der bei Block 452 erhaltenen Vektordeskriptoren und der Beschreibungen der bei Block 458 erhaltenen Änderungen wiedergegeben. Wie oben erläutert können Änderungen zu Vektordaten im Allgemeinen Ergänzungen, Löschungen, Änderungen, Tiefenänderungen usw. beinhalten.
  • Um ferner eine exemplarische Anwendung der oben erläuterten Techniken darzustellen, entsprechen 10A und 10B Karten von gleichen geografischen Gebieten und sind jeweils gemäß der Art von Basiskarten und der Art von Transitkarten angezeigt. Eine Kartenabbildung 500 einer Basiskarte, die in 10A abgebildet ist, kann eine Wiedergabe 500 von mehreren Kartenelementen, wie beispielsweise Straßen und Parkanlagen, beinhalten. Wie in 10B dargestellt, kann eine Kartenabbildung einer Transitkarte die Kartenelemente der Kartenabbildung 500 sowie eine U-Bahnlinie 504 beinhalten, die auf den entsprechenden Teilen der Kartenabbildung 500 überlagert sind. Abhängig von den Ausführungsformen kann die U-Bahnlinie 504 als eine einzelne Kartenfunktion oder mehrere Kartenfunktionen definiert werden, wovon jede einem jeweiligen Gleisabschnitt entspricht. Ferner kann ein U-Bahn-Symbol 506 über einen Teil der Kartenabbildung 500 wiedergegeben werden. Abhängig von der Ausführungsform kann das Symbol für U-Bahn 506 beispielsweise als eine zusätzliche Kartenfunktion oder Element, als eine Beschriftung, oder ein Symbol bereitgestellt werden. In einer Ausführungsform wird das Symbol für U-Bahn 506 als ein Universal Resource Locator (URL) spezifiziert, der zum Abrufen eines Standardsymbols für U-Bahn in einem Rasterformat von einem Server, der Standardzeichen erzeugt, benutzt werden kann.
  • Damit eine Kartenabbildung von 10B an einem Client-Gerät erzeugt werden kann nachdem die Kartenabbildung von 10A am Client-Gerät wiedergegeben wurde, kann ein Kartenserver nur einen Änderungshinweis bereitzustellen, der in einem Vektorformat den einen oder mehrere Kartenfunktionen entsprechend der U-Bahnlinie 504 beschreibt. In einer Ausführungsform stellt der Änderungshinweis auch einen Tiefenhinweis bereit, um herbeizuführen, dass die U-Bahnlinie 504 über den Straßen abgebildet auf der Kartenabbildung von 10A erscheint. Ferner beinhaltet der Änderungshinweis zusätzlich eine Beschreibung der U-Bahnlinie 506 als eine Beschriftung oder ein Symbol.
  • Die folgenden zusätzlichen Überlegungen gelten für die vorstehende Erörterung. In dieser gesamten Spezifikation können mehrere Beispiele Komponenten, Operationen oder Strukturen implementieren, die als einzelnes Beispiels beschreiben sind. 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.
  • Bestimmte Ausführungsformen sind hierin beschrieben als Ausführungsformen, die Logik oder eine Anzahl von Komponenten, Modulen oder Mechanismen beinhalten. 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.
  • Soweit nicht ausdrücklich anders festgelegt, können Erörterungen hierin, die Wörter, wie „Verarbeitung”, „Berechnung”, „Rechnen”, „Bestimmung”, „Darstellung”, „Anzeige” oder ähnliches, verwenden, auf Aktionen oder Prozesse einer Maschine (z. B. eines Computers) verweisen, 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, nicht flüchtiger Speicher oder eine Kombination davon), Registern 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 beinhaltet 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 „gekoppelt” 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” oder jede 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. Das 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.
  • Nach dem Lesen dieser Offenbarung werden Fachleute auf dem Gebiet immer noch zusätzliche alternative strukturelle und funktionelle Konstruktionen für ein System und ein Verfahren zum Erzeugen von Kartendaten durch die hierin offenbarten Prinzipien 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 (14)

  1. Greifbares nicht vorübergehendes computerlesbares Medium, das Anweisungen speichert, die bewirken, wenn sie von einem oder mehreren Prozessoren ausgeführt werden, dass der eine oder die mehreren Prozessoren die folgenden Schritte durchführen: das Erzeugen von Kartendaten in einem Nicht-Rasterformat für ein ausgewähltes Gebiet, wobei die Kartendaten an einem Client-Gerät so interpretierbar sind, dass sie eine erste Kartenabbildung im Rasterformat erzeugen und die erste Kartenabbildung am Client-Gerät anzeigen; das Herbeiführen, dass Kartendaten an das Client-Gerät über ein Kommunikationsnetzwerk übertragen werden; das Erhalten eines Hinweises vom Client-Gerät, dass eine zweite Kartenabbildung für das ausgewählte geografische Gebiet am Client-Gerät wiedergegeben werden soll; das Erzeugen eines Deskriptors eines Änderungshinweises von einem oder mehreren Änderungen der Kartendaten zum Umwandeln der ersten Kartenabbildung in die zweite Kartenabbildung; und das Herbeiführen, dass der Änderungshinweis an das Client-Gerät zur Wiedergage und Anzeigen der zweiten Kartenabbildung im Rasterformat am Client-Gerät mithilfe von zumindest einem Teil der Kartendaten und des Änderungshinweises über ein Kommunikationsnetzwerk übertragen wird.
  2. Computerlesbare Medium nach Anspruch 1, worin der Änderungshinweis zumindest eins der Folgenden beschreibt: (i) ein neues Kartenelement, das nicht in den Kartendaten beinhaltet ist und in Verbindung mit zumindest einigen der Kartendaten zum Erzeugen einer zweiten Kartenabbildung wiedergegeben werden soll; (ii) ein Kartenelement, welches in der ersten Kartenabbildung beinhaltet ist, das nicht wiedergegeben wird wenn die zweite Kartenabbildung erzeugt wird; und (iii) ein Kartenelement, das in der ersten Kartenabbildung beinhaltet ist und entsprechend einer ersten Ordnung bezüglich eines oder mehreren überlappenden Kartenelementen wiedergegeben wird, die entsprechend einer zweiten Ordnung wiedergegeben werden sollen wenn die zweite Kartenabbildung erzeugt wird.
  3. Computerlesbares Medium nach Anspruch 2, worin die Kartendaten eine Vielzahl von Vektordeskriptoren beinhalten, wovon jeder eine Geometrie eines jeweiligen Kartenelements entsprechend einem Grafikformat für Vektoren anzeigt.
  4. Computerlesbares Medium nach Anspruch 3, worin: die Kartendaten eine Kartenfunktion beinhalten, die mit zwei oder mehreren der Vielzahl der Vektordeskriptoren verbunden sind, worin die Kartenfunktion mit einer einzigartigen Funktionskennung verbunden ist; und der Änderungshinweis Folgendes beinhaltet: (i) die Funktionskennung der Kartenfunktion, und (ii) ein Löschhinweis als Hinweis darauf, dass die Kartenfunktion nicht wiedergegeben werden soll wenn die zweite Kartenabbildung erzeugt wird.
  5. Computerlesbares Medium nach Anspruch 1, worin die erste Kartenabbildung einem ersten Kartentyp entspricht, und die zweite Kartenabbildung einer zweiten Kartenart entspricht, worin der erste Kartentyp eine Basiskarte, Geländekarte, oder Verkehrskarte ist, und der zweite Kartentyp eine andere Basiskarte, Geländekarte, oder Verkehrskarte ist.
  6. Computerlesbares Medium nach Anspruch 1, worin die erste Kartenabbildung einer ersten Zoomstufe entspricht, und die zweite Kartenabbildung einer zweiten Zoomstufe entspricht.
  7. Rechnergerät in einem Kommunikationsnetzwerk, wobei das Rechnergerät Folgendes umfasst: einen Prozessor; eine mit dem Prozessor gekoppelte Speicherkomponente; eine Netzwerkschnittstelle zum Kommunizieren über ein Kommunikationsnetzwerk; ein Anzeigegerät, das an ein oder mehrere Prozessoren gekoppelt ist; eine erste in einem Arbeitsspeicher gespeicherte Routine, die auf dem Prozessor ausgeführt wird, um eine Anfrage bezüglich Kartendaten herbeizuführen, die einem ausgewählten geografischen Gebiet entspricht, um über eine Netzwerkschnittstelle übertragen zu werden; eine zweite in einem Arbeitsspeicher gespeicherte Routine, die auf dem Prozessor ausgeführt wird, um eine erste Kartenabbildung mithilfe einer Vielzahl von Vektordeskriptoren wiederzugeben, die über eine Netzwerkschnittstelle als Antwort auf die Anfrage erhalten wird und herbeiführt, dass die erste Kartenabbildung auf dem Anzeigegerät angezeigt wird, worin die Vielzahl der Vektordeskriptoren in einem Nicht-Rasterformat ist; eine dritte in einem Arbeitsspeicher gespeicherte Routine, die auf dem Prozessor ausgeführt wird, um herbeizuführen, dass eine Anfrage bezüglich Änderungshinweisen, die dem ausgewählten geografischen Gebiet entspricht, über die Netzwerkschnittstelle übertragen wird; und eine vierte in einem Arbeitsspeicher gespeicherte Routine, die auf dem Prozessor ausgeführt wird, um eine zweite Kartenabbildung mithilfe zumindest einiger der Vielzahl der Vektordeskriptoren und der Änderungsdaten wiederzugeben, und um herbeizuführen, dass die zweite Kartenabbildung auf dem Anzeigegerät angezeigt wird.
  8. Rechnergerät nach Anspruch 7, ferner Folgendes umfassend: eine fünfte in einem Arbeitsspeicher gespeicherte Routine, die auf dem Prozessor ausgeführt wird, um eine Auswahl einer ersten Kartenart aus einer Benutzerschnittstelle des Rechnergeräts zu erhalten, worin die Anfrage bezüglich Kartendaten als Antwort auf eine Auswahl der ersten Kartenart übertragen wird; und eine sechste in einem Arbeitsspeicher gespeicherte Routine, die auf dem Prozessor ausgeführt wird, um eine Auswahl einer zweiten Kartenart aus der Benutzerschnittstelle zu erhalten, worin der zweite Kartentyp sich von den ersten Kartendaten unterscheidet, und worin die Anfrage bezüglich Änderungsdaten als Antwort auf die Auswahl des zweiten Kartentyps übertragen wird.
  9. Rechnergerät nach Anspruch 8, worin jede der ersten Kartenart und der zweiten Kartenart aus einer Basiskarte, Transitkarte, und Verkehrskarte ausgewählt wird.
  10. Rechnergerät nach Anspruch 8, worin die dritte Routine die Auswahl der zweiten Kartenart in der Anfrage bezüglich Änderungsdaten bereitstellt.
  11. Rechnergerät nach Anspruch 10, worin die dritte Routine außerdem in der Anfrage bezüglich Änderungsdaten einen Hinweis auf die Vielzahl der Vektordeskriptoren als Antwort auf die Anfragen bezüglich Kartendaten bereitstellt.
  12. Rechnergerät nach Anspruch 7, worin die Vielzahl der Vektordeskriptoren eine Vielfalt von Kartenfunktionen beschreibt, die entsprechend eines Grafikformats für Vektoren mit dem ausgewählten geografischen Gebiet verbunden sind, worin jede der Vielfalt von Kartenfunktionen mit einem oder mehreren Kartenelementen verbunden ist.
  13. Rechnergerät nach Anspruch 12, worin die Änderungsdaten eine Vielfalt der Kartenfunktion identifizieren, die als ein Teil der ersten Kartenabbildung wiedergegeben werden, aber nicht als Teil der zweiten Kartenabbildung wiedergegeben werden.
  14. Rechnergerät nach Anspruch 12, worin die Änderungsdaten eine Beschreibung eines neuen Funktionsmerkmals in einem Grafikformat für Vektoren, das nicht als Teil der ersten Kartenabbildung, aber als Teil einer zweiten Kartenabbildung wiedergegeben wird.
DE202012013441.8U 2011-09-26 2012-09-25 Wiedergabe von Kartenabbildungen mithilfe von Änderungen von Nicht-Raster Kartendaten Expired - Lifetime DE202012013441U1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201113244741 2011-09-26
US13/244,741 US8928691B2 (en) 2011-09-26 2011-09-26 Rendering map images using modifications of non-raster map data

Publications (1)

Publication Number Publication Date
DE202012013441U1 true DE202012013441U1 (de) 2017-01-17

Family

ID=47910808

Family Applications (1)

Application Number Title Priority Date Filing Date
DE202012013441.8U Expired - Lifetime DE202012013441U1 (de) 2011-09-26 2012-09-25 Wiedergabe von Kartenabbildungen mithilfe von Änderungen von Nicht-Raster Kartendaten

Country Status (9)

Country Link
US (2) US8928691B2 (de)
EP (2) EP2761499A4 (de)
JP (2) JP6771858B2 (de)
KR (2) KR102028623B1 (de)
CN (2) CN103946836B (de)
AU (2) AU2012316227B2 (de)
CA (1) CA2849997C (de)
DE (1) DE202012013441U1 (de)
WO (1) WO2013049054A1 (de)

Families Citing this family (59)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8681176B1 (en) 2011-09-20 2014-03-25 Google Inc. Rendering a map using style identifiers
US8928691B2 (en) 2011-09-26 2015-01-06 Google Inc. Rendering map images using modifications of non-raster map data
US8635021B2 (en) * 2012-05-04 2014-01-21 Google Inc. Indicators for off-screen content
US9052197B2 (en) 2012-06-05 2015-06-09 Apple Inc. Providing navigation instructions while device is in locked mode
US8983778B2 (en) 2012-06-05 2015-03-17 Apple Inc. Generation of intersection information by a mapping service
US9418672B2 (en) 2012-06-05 2016-08-16 Apple Inc. Navigation application with adaptive instruction text
US9482296B2 (en) 2012-06-05 2016-11-01 Apple Inc. Rendering road signs during navigation
US9886794B2 (en) 2012-06-05 2018-02-06 Apple Inc. Problem reporting in maps
US9230556B2 (en) 2012-06-05 2016-01-05 Apple Inc. Voice instructions during navigation
US9418466B2 (en) 2012-06-06 2016-08-16 Apple Inc. Geospatial representation of data-less map areas
US20130328861A1 (en) 2012-06-06 2013-12-12 Apple Inc. Generation of Road Data
US9395193B2 (en) 2012-06-10 2016-07-19 Apple Inc. Scalable and efficient cutting of map tiles
US9863780B2 (en) 2012-06-10 2018-01-09 Apple Inc. Encoded representation of traffic data
US9235906B2 (en) 2012-06-10 2016-01-12 Apple Inc. Scalable processing for associating geometries with map tiles
US11935190B2 (en) 2012-06-10 2024-03-19 Apple Inc. Representing traffic along a route
WO2014076525A1 (en) 2012-11-16 2014-05-22 Data2Text Limited Method and apparatus for expressing time in an output text
WO2014076524A1 (en) * 2012-11-16 2014-05-22 Data2Text Limited Method and apparatus for spatial descriptions in an output text
US9360339B2 (en) 2013-01-14 2016-06-07 Sap Se Rendering maps with canvas elements
US8698824B1 (en) * 2013-04-12 2014-04-15 Google Inc. Computing systems, devices and methods for rendering maps remote from a host application
WO2014186459A2 (en) * 2013-05-15 2014-11-20 Google Inc. Efficient composition and rendering of graphical elements
US9396508B2 (en) * 2013-05-15 2016-07-19 Google Inc. Use of map data difference tiles to iteratively provide map data to a client device
US9122943B1 (en) * 2013-06-27 2015-09-01 Amazon Technologies, Inc. Identifying rendering differences between label rendering engines
USD781318S1 (en) 2014-04-22 2017-03-14 Google Inc. Display screen with graphical user interface or portion thereof
US9934222B2 (en) 2014-04-22 2018-04-03 Google Llc Providing a thumbnail image that follows a main image
USD781317S1 (en) 2014-04-22 2017-03-14 Google Inc. Display screen with graphical user interface or portion thereof
US9972121B2 (en) 2014-04-22 2018-05-15 Google Llc Selecting time-distributed panoramic images for display
USD780777S1 (en) 2014-04-22 2017-03-07 Google Inc. Display screen with graphical user interface or portion thereof
US10599570B1 (en) 2014-06-20 2020-03-24 Google Llc Expiration of offline map data
CN104240273B (zh) * 2014-09-18 2017-12-12 百度在线网络技术(北京)有限公司 栅格图片的处理方法及装置
US10007677B1 (en) 2014-12-04 2018-06-26 Google Llc System and method for geospatial indexing
US9958278B2 (en) * 2015-01-14 2018-05-01 Telenav, Inc. Navigation system with scalable display mechanism and method of operation thereof
CN106033451B (zh) * 2015-03-17 2019-07-30 北京神州泰岳软件股份有限公司 一种小区话务量的密度图即时渲染方法及装置
US9710486B2 (en) * 2015-04-17 2017-07-18 Nokia Technologies Oy Determination of a filtered map interaction descriptor
US10514271B2 (en) * 2015-06-06 2019-12-24 Apple Inc. Mapping application with transit mode
US9702724B2 (en) 2015-06-06 2017-07-11 Apple Inc. Mapping application with transit mode
US10401180B2 (en) 2015-06-07 2019-09-03 Apple Inc. Frequency based transit trip characterizations
KR102395023B1 (ko) * 2015-06-30 2022-05-06 현대오토에버 주식회사 그래픽 기반의 웹 벡터 지도 표시 시스템 및 방법
FR3038995B1 (fr) 2015-07-15 2018-05-11 F4 Dispositif interactif a affichage personnalisable
US10313765B2 (en) * 2015-09-04 2019-06-04 At&T Intellectual Property I, L.P. Selective communication of a vector graphics format version of a video content item
FR3042620B1 (fr) * 2015-10-16 2017-12-08 F4 Dispositif web interactif a affichage personnalisable
US10255293B2 (en) * 2015-10-16 2019-04-09 Oracle Internatinoal Corporation Generating virtual map tiles according to an ad hoc specification
US10467347B1 (en) 2016-10-31 2019-11-05 Arria Data2Text Limited Method and apparatus for natural language document orchestrator
US10535121B2 (en) * 2016-10-31 2020-01-14 Adobe Inc. Creation and rasterization of shapes using geometry, style settings, or location
CN108225344A (zh) * 2016-12-22 2018-06-29 沈阳美行科技有限公司 一种地图系统、生成和使用方法及其应用
CN108225343A (zh) * 2016-12-22 2018-06-29 沈阳美行科技有限公司 一种地图信息系统、生成和使用方法及其应用
CN108225342A (zh) * 2016-12-22 2018-06-29 沈阳美行科技有限公司 一种地图数据系统、生成和使用方法及其应用
CN107562861A (zh) * 2017-08-29 2018-01-09 武汉智丽丰信息科技有限公司 一种基于WebGL的WebGIS三维模型系统
CN110362298B (zh) * 2018-04-09 2023-11-17 北京蓝亚盒子科技有限公司 一种基于浏览器的目标对象绘制方法、装置和浏览器
CN109345946B (zh) * 2018-07-27 2020-11-03 创新先进技术有限公司 地图数据显示方法、装置、电子设备及计算机存储介质
KR102082203B1 (ko) * 2018-12-14 2020-02-28 주식회사 아이비스 지도표시 장치 및 지도표시 방법
CN111782307A (zh) * 2019-04-03 2020-10-16 阿里巴巴集团控股有限公司 地图的渲染方法、样式切换方法、相关装置和导航客户端
CN110032614B (zh) * 2019-04-18 2020-02-07 成都四方伟业软件股份有限公司 基于wasm的地图矢量渲染方法和装置
WO2020247034A1 (en) * 2019-06-03 2020-12-10 Microsoft Technology Licensing, Llc Coarse relocalization using signal fingerprints and session-specific identifiers
US11568586B2 (en) 2019-06-10 2023-01-31 Mappedin Inc. System and method for tracing polygons in design files
CA3089432A1 (en) * 2019-09-03 2021-03-03 Mappedin Inc. System and method for semantic segmentation of a source geometry
CN113538627B (zh) * 2021-08-04 2024-03-29 北京赛目科技股份有限公司 一种地图描述文件的生成方法及装置
US20230168106A1 (en) * 2021-11-29 2023-06-01 Here Global B.V. Method, apparatus, and system for providing mock map data for map design validation and documentation
CN116976280B (zh) * 2023-09-22 2023-12-01 北京国科恒通科技股份有限公司 基于矢量图标的电网gis图元渲染方法及装置
CN117215592B (zh) * 2023-11-07 2024-02-20 芯瞳半导体技术(山东)有限公司 渲染程序生成方法、装置、电子设备和存储介质

Family Cites Families (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2609744B2 (ja) 1989-07-14 1997-05-14 株式会社日立製作所 画像表示方法及び画像表示装置
US5519809A (en) 1992-10-27 1996-05-21 Technology International Incorporated System and method for displaying geographical information
JP3622094B2 (ja) 1995-10-05 2005-02-23 株式会社日立製作所 地図更新支援装置および地図情報の編集方法
US6577714B1 (en) 1996-03-11 2003-06-10 At&T Corp. Map-based directory system
US6199015B1 (en) 1996-10-10 2001-03-06 Ames Maps, L.L.C. Map-based navigation system with overlays
US5966135A (en) * 1996-10-30 1999-10-12 Autodesk, Inc. Vector-based geographic data
JPH11232433A (ja) * 1998-02-17 1999-08-27 Kokusai Kogyo Co Ltd 地図表示制御システム
US7308117B2 (en) 2000-02-04 2007-12-11 National Science And Technology Development Agency System and method for manipulating information and map for geographical resource management
US7148898B1 (en) 2000-03-29 2006-12-12 Sourceprose Corporation System and method for synchronizing raster and vector map images
AU2002216670A1 (en) 2000-11-17 2002-05-27 Links Point, Inc. Systems and methods for representing and displaying graphics
US7107285B2 (en) 2002-03-16 2006-09-12 Questerra Corporation Method, system, and program for an improved enterprise spatial system
EP1502080B1 (de) 2002-04-30 2013-05-22 Telmap Ltd. Navigationssystem welches korridorkarten verwendet
KR20040001185A (ko) * 2002-06-27 2004-01-07 삼성전자주식회사 부분 상세 지도를 제공하는 지도 표시 장치 및 그 방법
JP2004157013A (ja) * 2002-11-06 2004-06-03 Nissan Motor Co Ltd 地図画像表示装置及び地図画像表示プログラム
GB0303888D0 (en) 2003-02-19 2003-03-26 Sec Dep Acting Through Ordnanc Image streaming
US7844417B2 (en) 2003-02-21 2010-11-30 First American Real Estate Solutions, Llc GIS-based rapid population assessment tool
US7865301B2 (en) 2004-03-23 2011-01-04 Google Inc. Secondary map in digital mapping system
CA2560386C (en) 2004-03-23 2013-09-24 Google Inc. A digital mapping system
US7792331B2 (en) 2004-06-29 2010-09-07 Acd Systems, Ltd. Composition of raster and vector graphics in geographic information systems
US20060041375A1 (en) 2004-08-19 2006-02-23 Geographic Data Technology, Inc. Automated georeferencing of digitized map images
US20060074660A1 (en) 2004-09-29 2006-04-06 France Telecom Method and apparatus for enhancing speech recognition accuracy by using geographic data to filter a set of words
US7403851B2 (en) 2004-09-30 2008-07-22 Navteq North America, Llc Method of operating a navigation system to report effects of updated portions of a geographic database
EP1681656A1 (de) * 2005-01-18 2006-07-19 Oculus Info Inc. System und Verfahren zur Kartendatenverarbeitung
US20070210937A1 (en) 2005-04-21 2007-09-13 Microsoft Corporation Dynamic rendering of map information
US7777648B2 (en) 2005-04-21 2010-08-17 Microsoft Corporation Mode information displayed in a mapping application
US20060271281A1 (en) 2005-05-20 2006-11-30 Myron Ahn Geographic information knowledge systems
US20060293847A1 (en) 2005-06-22 2006-12-28 Marriott Graham H Interactive scaling feature having scalability in three dimensional space
US8296388B2 (en) 2005-07-18 2012-10-23 Microsoft Corporation Cross-application encoding of geographical location information
US7706971B2 (en) 2005-07-21 2010-04-27 The Boeing Company System and method for data mapping and map discrepancy reporting
JP5337338B2 (ja) * 2005-07-29 2013-11-06 ヤフー株式会社 地図重ね合わせシステムおよび方法
US7933897B2 (en) 2005-10-12 2011-04-26 Google Inc. Entity display priority in a distributed geographic information system
US7724985B2 (en) 2005-10-27 2010-05-25 Hewlett-Packard Development Company, L.P. Device storing vector image with embedded image style identifier, and methods and utilities for formatting a device image with image style attributes
WO2007056449A2 (en) 2005-11-07 2007-05-18 Google Inc. Mapping in mobile devices
US20070208498A1 (en) 2006-03-03 2007-09-06 Inrix, Inc. Displaying road traffic condition information and user controls
US8560946B2 (en) 2006-03-22 2013-10-15 Vistracks, Inc. Timeline visualizations linked with other visualizations of data in a thin client
US20070226314A1 (en) 2006-03-22 2007-09-27 Sss Research Inc. Server-based systems and methods for enabling interactive, collabortive thin- and no-client image-based applications
WO2007146967A2 (en) 2006-06-12 2007-12-21 Google Inc. Markup language for interactive geographic information 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
US8749585B2 (en) * 2007-03-29 2014-06-10 Microsoft Corporation Adding custom content to mapping applications
US8892455B2 (en) 2007-09-28 2014-11-18 Walk Score Management, LLC Systems, techniques, and methods for providing location assessments
US20090113296A1 (en) 2007-10-26 2009-04-30 Microsoft Corporation Displaying a map and associated symbolic context information
US20090254841A1 (en) 2007-11-12 2009-10-08 Move Sales, Inc. Apparatus, method, and computer program product for characterizing user-defined areas
CN101246597A (zh) * 2007-11-30 2008-08-20 北京师范大学 大规模矢量地图数据渐进传输和动态重建的方法
AU2008334980B2 (en) 2007-12-13 2013-02-14 Intergraph Software Technologies Company System and method for editing cartographic data
EP2078926B1 (de) 2008-01-14 2013-10-16 BlackBerry Limited System und Verfahren zum dynamischen Herunterladen und Anzeigen von Kartendaten
US8504945B2 (en) 2008-02-01 2013-08-06 Gabriel Jakobson Method and system for associating content with map zoom function
US20100073391A1 (en) 2008-09-25 2010-03-25 Yahoo! Inc. Informational content presentation via backdrop images
US8587617B2 (en) 2009-02-04 2013-11-19 Raytheon Company Apparatus and method for map zooming
CN101923542A (zh) * 2009-06-12 2010-12-22 如临其境创意(上海)有限公司 一种用于网络多维空间数据表达的MDDRQ-Tree索引结构
US20100321399A1 (en) * 2009-06-18 2010-12-23 Patrik Ellren Maps from Sparse Geospatial Data Tiles
WO2011006172A1 (en) 2009-07-10 2011-01-13 Georeplica, Inc System of identifying and advertising organizations or other entities by overlaying image files on mapping applications
EP2290322B1 (de) 2009-08-25 2017-03-01 BlackBerry Limited Verfahren und Vorrichtung zur Erstellung und Übertragung geografischer Routeninformationen zwischen drahtlosen Kommunikationsgeräten
US8510045B2 (en) 2009-12-22 2013-08-13 Steven L. Rueben Digital maps displaying search-resulting points-of-interest in user delimited regions
US9068844B2 (en) 2010-01-08 2015-06-30 Dp Technologies, Inc. Method and apparatus for an integrated personal navigation system
US8699991B2 (en) 2010-01-20 2014-04-15 Nokia Corporation Method and apparatus for customizing map presentations based on mode of transport
US20110191014A1 (en) 2010-02-04 2011-08-04 Microsoft Corporation Mapping interface with higher zoom level inset map
US8874129B2 (en) 2010-06-10 2014-10-28 Qualcomm Incorporated Pre-fetching information based on gesture and/or location
US8681176B1 (en) 2011-09-20 2014-03-25 Google Inc. Rendering a map using style identifiers
US8928691B2 (en) 2011-09-26 2015-01-06 Google Inc. Rendering map images using modifications of non-raster map data
US9396508B2 (en) 2013-05-15 2016-07-19 Google Inc. Use of map data difference tiles to iteratively provide map data to a client device

Also Published As

Publication number Publication date
AU2017251816B2 (en) 2017-11-30
CN103946836B (zh) 2019-01-18
EP3660704B1 (de) 2021-08-18
EP2761499A4 (de) 2015-04-15
CN110081891A (zh) 2019-08-02
CN103946836A (zh) 2014-07-23
US20130076784A1 (en) 2013-03-28
CA2849997A1 (en) 2013-04-04
JP2015501439A (ja) 2015-01-15
JP6789200B2 (ja) 2020-11-25
EP2761499A1 (de) 2014-08-06
KR20190114013A (ko) 2019-10-08
JP2018066995A (ja) 2018-04-26
KR20140075758A (ko) 2014-06-19
KR102028623B1 (ko) 2019-10-04
CN110081891B (zh) 2023-02-17
US9830064B2 (en) 2017-11-28
AU2012316227B2 (en) 2017-07-27
JP6771858B2 (ja) 2020-10-21
US8928691B2 (en) 2015-01-06
US20150128090A1 (en) 2015-05-07
WO2013049054A1 (en) 2013-04-04
KR102101915B1 (ko) 2020-04-17
CA2849997C (en) 2020-02-18
AU2017251816A1 (en) 2017-11-16
AU2012316227A1 (en) 2014-04-10
EP3660704A1 (de) 2020-06-03

Similar Documents

Publication Publication Date Title
DE202012013441U1 (de) Wiedergabe von Kartenabbildungen mithilfe von Änderungen von Nicht-Raster Kartendaten
DE202014010955U1 (de) Verwendung von Kartendaten-Differenzkacheln zur iterativen Bereitstellung von Kartendaten für ein Client-Gerät
DE202012013506U1 (de) Verwaltung von Kartenelementen Mithilfe von Aggregierten Merkmalskennungen
DE202014010911U1 (de) Effiziente Zusammensetzung und Darstellung grafischer Elemente
DE60116343T2 (de) Webserver
DE202015009325U1 (de) Schematische Darstellung von geografischen Standorten
US20140204116A1 (en) Rendering a map using style identifiers
DE202011110851U1 (de) Vorrichtung der Zielführung
DE202012013426U1 (de) Integrieren von Karten und Straßenansichten
DE202014010881U1 (de) Bereitstellen von Indooreinrichtungs-Informationen auf einer digitalen Karte
CN108573008B (zh) 一种电子地图中的海量点展示方法及装置
DE102011003155A1 (de) Kartendaten, Kartendatenerzeugungsverfahren, Kartendatenspeichermedium und Navigationsvorrichtung
DE202015009120U1 (de) Integration von Online-Navigationsdaten mit gecachten Navigationsdaten während der aktiven Navigation
DE202014010937U1 (de) Überlagerung zweidimensionaler Kartendaten auf einer dreidimensionalen Szene
DE202012013450U1 (de) Beschriftungspositionierbildwiedergabesystem zur Reduzierung des Kriechens bei Zoom-Aktivitäten
DE202015009117U1 (de) Integration von Online-Navigationsdaten mit gecachten Navigationsdaten während der aktiven Navigation
DE202012013455U1 (de) Kartenerstellung
CN102737067A (zh) 输出网页的方法和系统
DE19963981A1 (de) Verfahren und Vorrichtung zum Auffinden von Dokumenten unter Verwendung von Hyperlinks
DE102009006183A1 (de) Verfahren und System zum Anpassen von Routenplanungs-Ergebnissen
DE202014010846U1 (de) Farbverlauf von Wasser auf einer digitalen Karte
DE112015003801T5 (de) System und verfahren zum automatischen pushen von standortspezifischem inhalt an benutzer
DE112011105117T5 (de) Navigationsvorrichtung
CN116579913B (zh) 网络电子地图的服务端加速方法
DE102011077429A1 (de) Benutzervorrichtung und System

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