DE202016006079U1 - Das dynamische Steuern eines Kartenansichtsfensters im Hinblick auf Benutzersignale - Google Patents

Das dynamische Steuern eines Kartenansichtsfensters im Hinblick auf Benutzersignale Download PDF

Info

Publication number
DE202016006079U1
DE202016006079U1 DE202016006079.2U DE202016006079U DE202016006079U1 DE 202016006079 U1 DE202016006079 U1 DE 202016006079U1 DE 202016006079 U DE202016006079 U DE 202016006079U DE 202016006079 U1 DE202016006079 U1 DE 202016006079U1
Authority
DE
Germany
Prior art keywords
map
api
digital map
user
location
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.)
Active
Application number
DE202016006079.2U
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 DE202016006079U1 publication Critical patent/DE202016006079U1/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases
    • GPHYSICS
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Instructional Devices (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Transfer Between Computers (AREA)
  • Telephonic Communication Services (AREA)
  • Navigation (AREA)

Abstract

Ein nicht transitorisches computerlesbares Medium, auf dem Anweisungen gespeichert werden, die eine Anwendungsprogrammierschnittstelle (API) für das Generieren digitaler Karten umsetzt, worin die API betrieben wird, um: wenn sie von einem Softwaremodul, das auf einem oder mehreren Prozessoren eines Client-Geräts ausgeführt wird, dazu aufgerufen wird, einen geographischen Standort zu bestimmen, der in eine digitale Karte aufzunehmen ist, worin der geographische Standort von einem Servergerät spezifiziert wird, der über ein Kommunikationsnetzwerk an das Client-Gerät gekoppelt ist; einen Parameter für ein Ansichtsfenster der digitalen Karte basierend zumindest auf einer Entfernung vom gegenwärtigen Standort des Client-Geräts zum spezifizierten geographischen Standort auszuwählen; eine digitale Karte gemäß dem ausgewählten Parameter zu generieren; und die digitale Karte über eine Benutzeroberfläche des Client-Geräts anzuzeigen.

Description

  • Gebiet der Offenbarung
  • Die vorliegende Erfindung betrifft interaktive digitale Karten oder genauer gesagt das Ermitteln von Parametern eines Ansichtsfensters, innerhalb dem eine digitale Karte angezeigt wird. 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 unterstützen eine Vielzahl von Rechenvorrichtungen, zu denen unter anderen viele tragbare Vorrichtungen gehören, Softwareanwendungen, die interaktive digitale Karten anzeigen. Ein Benutzer, der eine dieser Rechenvorrichtungen verwendet, kann eine Softwareanwendung, wie etwa einen Web-Browser, betreiben, um einen Anbieter digitaler Karten zu besuchen, um sich eine interaktive digitale Karte anzusehen. Ferner fügen viele Anbieter von Inhalten, wie etwa Einzelhändler, die herkömmliche Fachgeschäfte betreiben, digitale Karten zu ihren Inhalten hinzu. Zu diesem Zweck können die Anweisungen auf einer Website eine Anwendungsprogrammierschnittstelle (API) des Anbieters digitaler Karten aufrufen. Noch weiter kann ein Benutzer manchmal seinen oder ihren geographischen Standort mit einem anderen Benutzer teilen und eine digitale Karte in beispielsweise eine E-Mail-Nachricht einbetten wollen. In diesen und ähnlichen Situationen ist eine digitale Karte üblicherweise um einen bestimmten Standort herum zentriert und verfügt über eine gewisse Zoomstufe, d. h. einen bestimmten Vergrößerungsgrad.
  • Zusammenfassung
  • Ein Anbieter digitaler Karten veranlasst mehrere Client-Geräte dazu, digitale Karten einschließlich eines bestimmten geographischen Standorts auf unterschiedlichen Zoomstufen anzuzeigen, und zwar in Abhängigkeit der entsprechenden Beziehungen zwischen den geographischen Standorten der Client-Geräte und des angegebenen geographischen Standorts und/oder den jeweiligen Beziehungen zwischen den Benutzern der Client-Geräte und den angegebenen geographischen Standorten. Wenn ein Benutzer eines Client-Geräts seinen/ihren gegenwärtigen geographischen Standort in Paris mit einem Freund in Paris und einem anderen Freund den Vereinigten Staaten teilt, kann der Anbieter digitaler Karten somit zum Beispiel an den Freund in Paris automatisch eine relativ stark vergrößerte digitale Karte bereitstellen, die einen Pariser Viertel anzeigt, und an den Freund in den Vereinigten Staaten eine verhältnismäßig stark verkleinerte digitale Karte bereitstellen, die Paris auf der Karte von Frankreich anzeigt. Als weiteres Beispiel kann die Website eines Möbelgeschäfts eine digitale Karte einbetten, um den Standort des Geschäfts zu veranschaulichen. Unterschiedliche Benutzer, die auf die Webseite zugreifen, sehen die Karte je nach ihrer abgeschätzten Entfernung vom Geschäft, in jeweils unterschiedlichen Zoomstufen.
  • In einer bestimmten Ausführungsform dieser Verfahren speichert ein nicht transitorisches computerlesbares Medium Anweisungen, mittels denen eine Anwendungsprogrammierschnittstelle (API) für das Erstellen digitaler Karten implementiert wird. Wenn die API von einem auf einem oder mehreren Prozessoren eines Geräts ausgeführten Softwaremoduls aufgerufen wird, wird sie betrieben, um (i) einen geographischen Standort zu bestimmen, der in eine digitale Karte integriert werden soll, in die der geographische Standort von einem Servergerät spezifiziert wird, das an das Client-Gerät über ein Kommunikationsnetzwerk gekoppelt ist, (ii) einen Parameter für ein Ansichtsfenster der digitalen Karte auszuwählen, der zumindest auf eine Entfernung vom gegenwärtigen Standort des Client-Geräts zum spezifischen geographischen Standort beruht, (iii) die digitale Karte gemäß den ausgewählten Parametern zu generieren und die digitale Karte über eine Benutzeroberfläche des Client-Geräts anzuzeigen.
  • Eine andere Ausführungsform dieser Technik ist ein Verfahren zum Generieren digitaler Karten, das auf einem oder mehreren Prozessoren ausgeführt werden kann. Dieses Verfahren beinhaltet das Empfangen einer Aufforderung einen Hinweis hinsichtlich eines bestimmten geographischen Standorts an ein erstes Gerät bereitzustellen, das von einem ersten Benutzer und einem zweiten Gerät, das von einem zweiten Benutzer betrieben wird, wobei eine erste Entfernung zwischen dem angegebenen geographischen Standort und einem geographischen Standort des ersten Geräts und eine zweite Entfernung zwischen dem geographischen Standort und einem geographischen Standort des zweiten Geräts bestimmt wird, wobei eine erste Zoomstufe für eine digitale Karte, einschließlich des geographischen Standorts, basierend zumindest teilweise auf der ersten Entfernung, bestimmt wird, und worin eine zweite Zoomstufe für eine digitale Karte, einschließlich des geographischen Standorts, basierend zumindest teilweise auf der zweiten Entfernung, bestimmt wird und die eine erste digitale Karte dazu veranlasst, über das erste Gerät auf der ersten Zoomstufe und die eine zweite digitale Karte dazu veranlasst, über das zweite Gerät auf der zweiten Zoomstufe angezeigt zu werden.
  • Wieder eine andere Ausführungsform dieser Techniken ist auch ein Verfahren für das Generieren von digitalen Karten, das auf einem oder mehreren Prozessoren ausgeführt werden kann. Das Verfahren beinhaltet das Empfangen einer Aufforderung mittels eines oder mehrerer Prozessoren, die von einem Standort teilenden Benutzer betriebenen Quellgerätes gestellt wird, und gemäß der ein Hinweis eines bestimmten geographischen Standorts mit einem ersten Zielbenutzer, der ein erstes Zielgerät betreibt und mit einem zweiten Zielbenutzer, der ein zweites Zielgerät betreibt, geteilt werden soll und das Bestimmen einer ersten Beziehung zwischen dem ersten Zielbenutzer und dem angegebenen geographischen Standort und einer zweiten Beziehung zwischen dem zweiten Benutzer und dem angegebenen geographischen Standort mittels eines oder mehrerer Prozessoren. Das Verfahren beinhaltet ferner das Bestimmen mittels eines oder mehrerer Prozessoren eines ersten Ansichtsfensterparameters für eine erste digitale Karte einschließlich des angegebenen geographischen Standorts, der zumindest teilweise auf der ersten bestimmten Beziehung beruht und das Bestimmen mittels eines oder mehrerer Prozessoren eines zweiten Ansichtsfensterparameters für eine zweite digitale Karte einschließlich des angegebenen geographischen Standorts, der zumindest teilweise auf der zweiten bestimmten Beziehung beruht. Noch weiter beinhaltet das Verfahren das von einem oder mehreren Prozessoren bewirkte Veranlassen des Anzeigens einer ersten digitalen Karte über das erste Gerät gemäß dem ersten Ansichtsfensterparameter und einer zweiten digitalen Karte über das zweite Gerät gemäß dem zweiten Ansichtsfensterparameter.
  • Kurzbeschreibung der Zeichnungen
  • 1 veranschaulicht schematisch ein exemplarisches Szenario, in dem Kartenansichtsfenster auf dynamische Art und Weise im Hinblick auf Benutzersignale gesteuert werden;
  • 2 ist ein Blockdiagramm eines exemplarischen Systems, in das Verfahren zum Steuern von Kartenansichtspunkten implementiert werden können;
  • 3 ist ein Blockdiagramm eines exemplarischen Client-Geräts, das im System von 2 betrieben werden kann;
  • 4 ist ein Flussdiagramm eines exemplarischen Verfahrens zum Personalisieren einer digitalen Karte auf einem Benutzergerät hinsichtlich der Entfernung zwischen dem Benutzergerät und einem geographischen Standort auf der digitalen Karte, das im System von 2 implementiert werden kann;
  • 5 ist ein Flussdiagramm eines exemplarischen Verfahrens für das Generieren von digitalen Karten auf zwei Benutzergeräten auf jeweils unterschiedlichen Zoomstufen unter Verwendung der API dieser Offenbarung; und
  • 6 ist ein Flussdiagramm eines exemplarischen Verfahrens für das Teilen eines Hinweises zu einem geographischen Standort mit mehreren Benutzergeräten, das im System von 2 implementiert werden kann.
  • Detaillierte Beschreibung
  • Überblick
  • Ein dritter Anbieter von Inhalten, bei dem es sich um einen Händler oder einen sozialen Netzwerkdienst handeln kann, kann zum Beispiel eine Ressource bereitstellen, die eine digitale Karte eines geographischen Gebiets über eine Kartenanwendungsprogrammierschnittstelle (API) eines Online-Kartenanbieters einbetten kann. Bei der Ressource kann es sich um eine Website, eine E-Mail-Nachricht, oder jede andere geeignete Art von elektronischem Dokument handeln. Wenn zwei unterschiedliche Benutzer auf die Ressource zugreifen, bestimmt die Karten-API und/oder eine andere geeignete Softwarekomponente die Parameter des Kartenansichtsfensters im Hinblick auf benutzer- und/oder gerätespezifische Signale. Falls die Webseite des San Diego Zoo beispielsweise einen Anruf zur Karten-API beinhaltet, um den Standort des Zoos auf einer digitalen Karte zu veranschaulichen, kann die Karten-API die Karte einem Benutzer, der die Webseite aus der Gegend von San Diego besucht, auf einer verhältnismäßig hohen Zoomstufe anzeigen, und kann die Karte einem Benutzer, der die Webseite von San Francisco aus besucht, auf einer verhältnismäßig niedrigen Zoomstufe anzeigen, da der örtliche Besucher wahrscheinlich eher an einer örtlichen Perspektive interessiert ist. Auf diese Weise kann die Karten-API die Wahrscheinlichkeit, dass die Karte benutzerrelevante Inhalte beinhaltet, erhöhen.
  • Die Karten-API kann auch eine standardmäßige Zoomstufe wiedergeben. Ein Anbieter der Ressource, der die Karten-API beispielsweise aufruft, kann die standardmäßige Zoomstufe auswählen und kann in einigen Implementierungen die Bedingungen für das Aufheben der standardmäßigen Zoomstufe festlegen.
  • In einigen Fällen beinhaltet die Ressource eines dritten Anbieters von Inhalten zwar einen Verweis auf einen geographischen Standort, aber beinhaltet keinen Anruf auf die Karten-API. Bei dem Verweis kann es sich beispielsweise um eine Adresse einschließlich der Zahl eines Gebäudes, des Namens der Straße und des Namens der Stadt handeln. Die Adresse kann sich im Hauptkörper der E-Mail, in einer SMS oder auf einer Webseite befinden. Wenn ein Benutzer auf die Ressource von einem Gerät aus zugreift, auf dem die Karten-API installiert ist, kann die Karten-API automatisch einen Verweis auf einen geographischen Standort identifizieren. Aus diesem Grund kann im Inhalt eines Drittanbieters von Inhalten auf die Karten-API verwiesen werden und/oder die Karten-API kann von einem Benutzergerät, das die Inhalte verarbeitet, automatisch aufgerufen werden.
  • In einem anderen Beispiel kann eine Benutzerin in Sydney ihren Standort mit mehreren Freunden über einen sozialen Netzwerkdienst teilen wollen, der die Karten-API aufruft oder die Karten-API auslöst, indem er auf geographische Standorte verweist. Wenn ein Freund in Sydney ihren Standort über den sozialen Netzwerkdienst prüft, kann der Kartenanbieter eine Karte des jeweiligen Viertels aus Sydney generieren, die den gegenwärtigen Standort der Benutzerin beinhaltet und eine Markierung an diesem spezifischen Standort anzeigt. Wenn ein Freund in Paris jedoch eine ähnliche Prüfung durchführt, kann der Kartenanbieter eine Karte von Australien generieren, und die Markierung in Sydney anzeigen, da diesem Freund Informationen über den genauen Standort der Benutzerin in Sydney wahrscheinlich unnötig erscheinen.
  • Zusätzlich zum Standort des Benutzers und seinem Bezug zum Standort auf der Karte ist die Karten-API in der Lage, andere benutzerspezifische Signale, wie etwa das abgeschätzte Maß an Vertrautheit mit dem jeweiligen Gebiet oder persönliche Präferenzen, zu verarbeiten, zum Beispiel wenn diese Informationen zur Verfügung stehen (in manchen Ausführungsformen bedient der Benutzer gewisse Steuerungen/oder installiert gewisse Anwendungen, um es dem Kartenanbieter zu ermöglichen, die Karte auf diese Art und Weise zu personalisieren). Unter Verwendung der Benutzer-Login-Informationen und/oder der IP-Adresse ist die Karten-API zum Beispiel in der Lage, den Standort des Geräts, an dem die digitale Karte wiedergegeben wird, abzurufen.
  • Zur einfacheren Erläuterung und Veranschaulichung wird die dynamische Bestimmung des Ansichtsfensterparameters der Karte weiter unten in erster Linie mit Bezug auf eine Karten-API eines Online-Kartenanbieters erörtert. Noch allgemeiner kann diese oder eine ähnliche Nationalität allerdings als jede geeignete Softwarekomponente bereitgestellt werden, wie etwa im Rahmen einer für spezielle Zwecke vorgesehenen Kartenanwendung. Aus diesem Grund kann eine Kartensoftwareanwendung, die auf zwei unterschiedlichen Benutzergeräten ausgeführt wird, automatisch auf zwei unterschiedlichen Benutzergeräten digitale Karten anzeigen, um denselben geographischen Standort auf unterschiedlichen Zoomstufen als Antwort auf das Bestimmen entsprechender Entfernungen zwischen den Benutzergeräten und dem geographischen Standort, zu bestimmen.
  • In einigen Fällen bestimmt die Karten-API, die auf einem Benutzergerät Funktionen ausführt, die Entfernung zwischen dem Benutzergerät und einen geographischen Standort durch Abfragen eines Kartenservers des Kartenanbieters. Die Karten-API kann auch den Kartenserver abfragen, um das Niveau unter eines anderen Ansichtsfensterparameters der Karte zu bestimmen, wenn der Kartenserver über einen besseren Zugang zu einigen der maßgeblichen Informationen, wie etwa dem Profil des Benutzers, verfügt. Verweise auf die Karten-API, die Ansichtsfensterparameter auswählt oder bestimmt, sollen so verstanden werden, dass sie, sofern nicht anders angegeben, die Implementierungen beinhalten, wenn die Karten-API die Parameter auf örtlicher Ebene bestimmt, wenn die Karten-API Parameter durch Abfragen eines Kartenservers bestimmt, oder wenn die Karten-API Parameter durch Kooperieren mit dem Kartenserver bestimmt.
  • Gemäß den in dieser Offenbarung verwendeten Techniken wählt eine Softwarekomponente Parameter für ein Ansichtsfenster demnach aus, indem eine digitale Karte im Hinblick auf benutzer- und gerätespezifische Signale wiedergegeben wird. Diese Signale können die Entfernung zwischen dem geographischen Standort, an dem digitale Karte zentriert ist (oder um den die digitale Karte auf sonstige Art und Weise herum organisiert ist) oder den geographischen Standort des Geräts, der die digitale Karte wiedergibt, beinhalten. Die Softwarekomponente kann mindestabschnittsweise in einer Karten-API oder einer speziell dafür vorgesehenen Software Anwendung implementiert werden.
  • Exemplarische Szenarios
  • 1 veranschaulicht schematisch einen exemplarischen Fall, in dem Geräte A und B, die sich an den Standorten 12A und 12B befinden, jeweils auf eine Ressource zugreifen, die eine digitale Karte eines Standorts 10 in Paris, Frankreich, unter Verwendung einer API eines Online-Kartenanbieters, einbettet. Benutzerin Alice betreibt Gerät A, bei dem es sich um einen Desktop-Computer handeln kann und Benutzer Bob betreibt Gerät B, bei dem es sich zum Beispiel um ein Smartphone handeln kann. Die Ressource ist in diesem Szenario ist eine Webseite, die von einem Restaurant betrieben wird und Inhalte in einer Markup-Sprache, wie etwa HTML, beinhaltet. Der Inhalt kann Texte und Multimedia-Dateien beinhalten, die neben dem Menü, Kundenbewertungen usw., auch Anweisungen anzeigen, um den Standort des Restaurants auf einer digitalen Karte zu veranschaulichen.
  • Der Betreiber des Restaurants kann vernünftigerweise erwarten, dass die Besucher der Restaurant-Webseite sowohl Besucher beinhalten, die in derselben Stadt leben, und daher möglicherweise an einer präzisen Wegbeschreibung interessiert sind, als auch Besucher beinhalten, die weiter weg wohnen, möglicherweise in anderen Ländern, und somit an der allgemeinen Umgebung, in der sich das Restaurant befindet, interessiert sind. Um es unterschiedlichen Website-Besuchern zu ermöglichen den Standort des Restaurants auf der digitalen Karte mit Bezug auf die Standorte der Besucher und/oder der benutzer-/oder benutzergerätespezifischen Signale anzusehen, integriert der Betreiber einen Verweis auf eine API eines Onlineanbieters digitaler Mappen („Karten-API”) in den Inhalt der Webseite, die gemäß den Techniken dieser Offenbarung implementiert wird.
  • Eine Browser-Anwendung auf jedem der Geräte A und B greift im Betrieb auf die Webseite zu und setzt die jeweilige Instanz der Anweisungen, die die Karten-API implementieren, um. Die Karten-API kann die Ansichtsfensterparameter der Karte auf den Geräten A und B im Hinblick auf die Standorte 12 und 14 in Beziehung zum Standort 10 bestimmen. Da Standort 12A sich innerhalb eines bestimmten Radius R, wie etwa 20 km, des Standorts 10 befindet, zeigt Gerät A zum Beispiel eine digitale Karte 22 einschließlich Standort 10 auf einer verhältnismäßig hohen Zoomstufe an. Da Standort 12A sich außerhalb des Radius R, befindet, zeigt Gerät B jedoch eine digitale Karte 24 einschließlich Standort 10 auf einer verhältnismäßig niedrigen Zoomstufe an. Insbesondere ist die digitale Karte 22 eine Karte, die nur einige Gebäude enthält und geographische Merkmale veranschaulicht, wie etwa die Namen der sich in der Nähe befindlichen Straßen, die nächstgelegene Bahnstation, das nächstgelegene Hotel usw. Standort 10 ist dementsprechend mit einem hohen Grad an Präzision veranschaulicht, sodass der Benutzer des Gerätes A das Gebäude und selbst die Seite der Straße des Standorts 10 durch Ansehen der digitalen Karte 22 bestimmen kann. Im Gegensatz dazu, bildet die digitale Karte 24 fast ganz Frankreich ab und veranschaulicht nur einige hauptsächliche geographische Merkmale, wie Ländergrenzen, große Städte, wichtigste Autobahnen usw. Der Standort 10 wird mit einem niedrigen Präzisionsgrad veranschaulicht. Der Benutzer des Gerätes B kann nur ermitteln, dass Standort 10 sich in Paris befindet, und ist nicht in der Lage, einen präziseren Standort zu bestimmen, indem er sich die digitale Karte 24 ansieht.
  • Sofern erwünscht kann der Betreiber der Restaurant-Webseite einen Standardwert für die Zoomstufe der digitalen Karte spezifizieren. Falls ein Besucher der Restaurant-Webseite seinen Standort nicht angibt oder wenn die Entfernung zwischen dem gegenwärtigen Standort des Besuchers und dem Restaurant aus irgend einem anderen Grund nicht bestimmt werden kann, kann die Karten-API eine digitale Karte auf einer standardmäßigen Zoomstufe generieren.
  • Als weiteres Beispiel kann Benutzer Alice ihren gegenwärtigen Standort über ihr Smartphone mit Benutzer Bob teilen, der gerade dabei ist, seinen Tablett-Computer zu betreiben. Je nach Bobs gegenwärtigem und/oder permanentem Standort im Verhältnis zu Alices Standort kann die Karten-API dieser Offenbarung eine digitale Karte, die Alices Standort veranschaulicht, dazu veranlassen, auf einer niedrigen oder einer hohen Zoomstufe auf Bobs Computer zu erscheinen. Genauer gesagt, falls sich Bob im selben allgemeinen Viertel (z. B. innerhalb eines 2 km Radius) wie Alice aufhält, kann die Karten-API eine digitale Karte bereitstellen, die nur vier Gebäude abdeckt, auf der der Alices Standort so präzise wie möglich veranschaulicht wird. Falls Bob sich in derselben Stadt wie Alice, aber nicht im selben allgemeinen Viertel aufhält, kann die Karten-API eine digitale Karte bereitstellen, die die gesamte Stadt abdeckt, wobei Alices Standort etwas weniger präzise veranschaulicht wird. Und falls Bob sich nicht einmal in derselben Stadt wie Alice aufhält, kann die Karten-API eine digitale Karte zur Verfügung stellen, die eine relativ große geographische Fläche, wie etwa eine Region, einen Staat, eine Provinz oder selbst ein Land, abdeckt und Alices Standort mit einer Markierung angeben, die oberhalb oder neben der Bezeichnung der Stadt positioniert ist.
  • In diesen Fällen kontrolliert Alice die Zoomstufe, auf der ihr geteilter Standort auf Bobs Computer abgebildet wird entweder nicht oder sie stellt nur eine vorgeschlagene Zoomstufe bereit, die dann von der Karten-API übergangen wird. Obwohl Bob die Zoomstufe der Karte im Anschluss daran auf Wunsch einstellen kann, stellt die Karten-API eine digitale Karte auf eine Zoomstufe bereit, die den Bedürfnissen Bobs mit hoher Wahrscheinlichkeit entspricht. Darüber hinaus kann die automatisierte Auswahl der Zoomstufe an sich, Bob die Entfernung zum gegenwärtigen Standort von Alice sofort mitteilen.
  • Ferner kann die Karten-API dieser Offenbarung neben der Steuerung der Zoomstufe auch sonstige Ansichtsfensterparameter steuern, wie etwa das automatische Zentrieren des Ansichtsfensters auf unterschiedliche Art und Weise, je nach Entfernung zwischen Alices und Bobs Standort (oder den entsprechenden Standorten der Geräte A und B im Verhältnis zum Standort 10 des obigen Beispiels), das automatische Auswählen von Kartenstilmerkmalen je nach Entfernung, das automatische Auswählen von Kartenebenen, die im Ansichtsfenster angezeigt werden sollen usw.
  • Als noch ein weiteres Beispiel kann Alice ihren Standort auch mit Benutzer Charlie teilen, dessen gegenwärtiger Standort sich weit entfernt von Alices gegenwärtigem Standort befinden kann. Da Charlies Heimstandort sich jedoch in der Nähe von Alices gegenwärtigem Standort befindet, kann die Karten-API eine digitale Karte bereitstellen, die Charlie nur einige wenige Gebäude der Stadt anzeigt, ähnlich zur Situation, in der Charlies gegenwärtiger Standort sich in der Nähe von Alices gegenwärtigem Standort befand. In diesem Fall kann der Kartenanbieter, auf den über die Karten-API zugegriffen wird, abschätzen, dass Charlie mit dem Viertel, in dem sich Alice befindet, mit hoher Wahrscheinlichkeit vertraut ist, und die Karten-API dementsprechend dazu veranlassen, eine präzisere Angabe auf einer vergrößerten digitalen Karte bereitzustellen. Bei unterschiedlichen Implementierungen kann der Kartenanbieter und/oder die Karten-API jegliche Anzahl von benutzer- und gerätespezifischen Signalen, wie etwa den gegenwärtigen Standort, einen oft besuchten oder auf sonstige Weise wahrscheinlichen Standort, ein abgeschätztes Maß an Vertrautheit mit dem Bereich, vorhergehende geographische Anfragen in Bezug auf den Bereich, sonstige Interessenbekundungen hinsichtlich des Bereichs usw. verwenden. Der Kartenanbieter und/oder die Karten-API kann diese Signale gemäß jeglichen geeigneten Schemata gewichten.
  • Exemplarisches System und Geräte
  • 2 ist ein Blockdiagramm eines exemplarischen Systems 100, innerhalb dessen diese und andere Techniken für die dynamische Steuerung von Ansichtsfensterparametern der Karte in Bezug auf benutzerspezifische Signale implementiert werden können. Das System 100 beinhaltet exemplarische Benutzergeräte 102 und 104, bei denen es sich beispielsweise im Einzelnen um ein Smartphone, einen Tablett-Computer, einen persönlichen digitalen Assistenten (PDA), einen Laptop-Computer usw. handeln kann. Die Benutzergeräte 102 und 104 können über ein Kommunikationsnetzwerk 109 auf einen Drittanbieter von Inhalten 106 zugreifen, der jede geeignete Anzahl von Typologie an drahtgebundenen und/oder drahtlosen Links beinhalten kann, die ein lokales Netzwerk oder ein Wide-Area-Network, wie etwa das Internet, ausbilden. Der Server 106, der von einem Drittanbieter von Inhalten betrieben wird, kann an eine Inhaltsdatenbank 108 gekoppelt sein, die Texte, Bilder, Audiodateien usw. speichert, die Teil des Inhalts darstellen, der den Client-Geräten, zu denen unter anderem auf und Geräte 102 und 104 gehören, bereitgestellt wird. Bei dem Drittanbieter kann es sich um einen Rundfunksender, ein Unternehmen, ein Social Media Netzwerk usw. handeln.
  • Der exemplarische Inhalt 120 beinhaltet HTML-Anweisungen und einen Anruf einer Karten-API 122 eines Online-Kartenanbieters. Der Online-Kartenanbieter kann ein oder mehrere Kartenserver 124 betreiben, die Client-Geräten Kartendaten und in einigen Ausführungsformen geographische Unternehmensdaten oder sonstige georäumliche Daten bereitstellen. Je nach Implementierung beinhaltet der Inhalt 120 sämtliche Anleitungen, die die Karten-API 122 umsetzen, einige der Anweisungen, die Karten-API 122 umsetzen (wobei der verbliebene Teil der Anweisungen, auf einem entfernten Gerät, wie etwa dem Kartenserver 124, gespeichert werden) oder nur einen Verweis auf einen entfernten Standort, beispielsweise in Form einer URL, an dem die Anweisungen zum Implementieren der Karten-API 122 gespeichert sind (erneut wie etwa der Kartenserver 124). Als ein spezifischeres Beispiel der zuletzt durchgeführten Implementierung, kann der Inhalt 120 einen Webserver spezifizieren, auf dem sich die Anweisungen, der Name einer Datei, auf der die Anweisungen gespeichert sind, das Format der Datei (z. B. JavaScript) und die Parameter, die an die Anweisungen geliefert werden, befinden. Die Parameter können zum Beispiel einen Identifikator eines geographischen Standorts (z. B. „123 Main St., Springfield”) und eine standardmäßige Zoomstufe beinhalten. Die jeweiligen Instanzen der Web-Browser-Anwendungen 126 und 128 führen den Inhalt 120 auf den Benutzergeräten 102 und 104 aus und rufen den Inhalt ab. Die Web-Browser-Anwendungen 126 und 128 müssen keine Instanzen derselben Software sein und können vom selben Anbieter oder unterschiedlichen Anbietern der Software kommen. Wenn die Web-Browser-Anwendungen 126 und 128 die Karten-API 122, wie im Inhalt 120 spezifiziert aufrufen, fordern die Geräte 102 und 104 Kartendaten vom Kartenserver 124 an.
  • Die Karten-API 122 kann als eine oder mehrere Funktionsweisen, eine Datenstruktur, ein Mitteilungsschema usw. implementiert werden. Ferner beinhaltet die Karten-API 122 in einigen Ausführungsformen einen zusammengesetzten Code und, der direkt auf dem Prozessor (den Prozessoren) des Benutzergeräts ausgeführt wird. In anderen Ausführungsformen befinden sich die Anweisungen der Karten-API 122 in einer Skriptsprache, die zur Laufzeit vom Web-Browser des Benutzergeräts interpretiert wird.
  • Je nach Implementierung kann es sich bei dem Kartenserver 124 um eine einzelne Rechenvorrichtung handeln, die über einen Speicher und einen oder mehrere Prozessoren verfügt, die die Anweisungen, auf dem Speicher, einem Pool an derartigen Geräten (von denen jedes in der Lage ist, eine Datenanfrage zu bearbeiten), ein hierarchischer Satz an Frontend- und Backend-Servern usw. ausführen. Zur einfacheren Erläuterung veranschaulicht 2 jedoch den Kartenserver 124 als ein einzelnes Gerät auf schematische und Weise.
  • Der Kartenserver 124 kann seinen Betrieb auf Kartendaten durchführen, die in einer Kartendatenbank 132 gespeichert sind, um interaktive digitale Karten zu generieren. Der Kartenserver 124 kann in einigen Fällen auch Benutzerdaten verwenden, die in einer Benutzerprofildatenbank 134 gespeichert sind. Insbesondere kann der Kartenserver 124 einen automatischen Ansichtsfensterselektor 140 als einen Satz an Softwareanweisungen, die auf einem nicht-transitorischen computerlesbaren Speicher gespeichert sind und von einem oder mehreren Prozessoren ausgeführt werden, implementieren. Der automatische Ansichtsfensterselektor 140 kann eine Anfrage vom Benutzergerät empfangen, die nach der Umsetzung der Karten-API 122 generiert wird, Ansichtsfensterparameter der Karte auf Basis von benutzergerätspezifischen und/oder Benutzer der benutzergerätspezifischen Signalen bestimmen, und eine interaktive digitale Karte unter Verwendung der Kartendatenbank 132 und in einigen Fällen der Benutzerprofildatenbank 134 generieren. Der exemplarische Betrieb des automatischen Ansichtsfensterselektors 140 wird nachfolgend detaillierter abgehandelt.
  • Die Daten in der Kartendatenbank 132 können mehrere Arten von geographischen Daten entsprechen, einschließlich typografischen Daten, Straßendaten, Informationen zum städtischen Nahverkehr, Verkehrsdaten usw. Die geographischen Daten können wiederum schematisch sein oder auf fotografischem Material, wie etwa Satellitenbildern beruhen. Die Daten in der Kartendatenbank 132 können jedem geeigneten Format entsprechen, einschließlich beispielsweise einem Rasterformat, und einem Vektor-Grafik-Format. Im Allgemeinen spezifiziert ein Bild im Rasterformat, welche Farben für die jeweiligen Pixel, aus denen das Bild besteht, angewendet werden, während ein Bild im Vektor-Grafik-Format mathematische Beschreibungen der Punkte und verschiedene Formen beinhaltet (z. B. eine Linie kann unter Verwendung eines Vektor-Grafik-Formats als zwei Endpunkte und einen Hinweis zur Dicke und Farbe spezifiziert sein). In einigen Implementierungen können die Daten in der Kartendatenbank 132 in Komponentenaufnahmen normaler Größe oder „Kacheln”, die einer bestimmten Zoomstufe entsprechen, organisiert sein.
  • Die Daten in der Benutzerprofildatenbank 134 können die Präferenzen des Benutzers, die Informationen, die Benutzer auswählen, um sie als Teil ihres Personalprofils zu speichern (z. B. Wohnstandort, Arbeitsstandort, Lieblingsstandorte), beinhalten. In einigen Implementierungen können die Daten in der Datenbank 134 Overlays enthalten, die von Benutzern auf ihrer interaktiven digitalen Karte erzeugt worden sind (z. B. Formen, Polylines, Symbole usw.), um Sehenswürdigkeiten (oder Bereiche von Interesse, wie etwa Stadtteile), Präferenzen des Benutzers für das Anzeigen bestimmter Kartenschichten (z. B. Verkehrsschicht, Nahverkehrsschicht, Wetterschicht usw.), Styling-Präferenzen des Benutzers (z. B. das Ändern der visuellen Anzeige von Kartenelementen, wie zum Beispiel Straßen, Parks, städtische Bereiche usw.) usw., anzugeben. Der Kartenserver kann auf dementsprechende Datensätze innerhalb der Datenbank 134 des Benutzerprofils unter Verwendung von Authentifizierungsinformationen, wie etwa Login-Daten und Passwörter, zugreifen.
  • Jedes der Benutzergeräte 102 und 104 kann auf ähnliche Weise wie ein in 3 veranschaulichtes Benutzergerät 150 implementiert werden. Bei dem Benutzergerät kann es sich um einen Desktop-Computer, einen Laptop-Computer, einen Tablett-Computer, ein Smartphone oder ein anderes tragbares Gerät oder jedes andere Gerät handeln, über das ein Benutzer in der Lage ist, eine digitale Karte zu sehen. Das Benutzergerät 150 beinhaltet einen oder mehrere Prozessoren 152, wie etwa zentrale Betriebseinheiten (CPUs), einen computerlesbaren Speicher 154, eine Benutzeroberfläche 156, eine Netzwerkschnittstelle 158, und ein Positionierungsmodul 160. In allgemeinerer Hinsicht kann die Rechenvorrichtung 150 jede geeignete Anzahl von Prozessoren und sofern erwünscht auch eine oder mehrere grafische Verarbeitungseinheiten (GPUs), sowie auch andere Verarbeitungseinheiten beinhalten. Bei dem Speicher 154 kann es sich um ein rechnerlesbares, physisch greifbares, nicht transitorisches Speichergerät handeln und er kann sowohl persistente (z. B. eine Festplatte, ein Flash-Laufwerk) als auch nicht-persistente (z. B. RAM) Speicherkomponenten beinhalten. Der Speicher 154 speichert auf dem Prozessor (den Prozessoren) 152 ausführbare Anweisungen, die Teil einer Web-Browser Anwendung 170 sind, die einer mit Bezug auf 2 erörterten Web-Browser-Anwendung 126 oder 128 ähnlich sein können. Der Speicher 154 kann auch Kartendaten 180, Personalisierungsdaten 182 und Inhalte Dritter 184 speichern, die das mit Bezug auf 2 erörterte Karten-API 122 aufrufen.
  • Die Benutzeroberfläche 156 kann neben einem separaten Eingabegerät, wie etwa eine Tastatur, auch einen Touchscreen oder ein Anzeigegerät beinhalten. In allgemeinerer Hinsicht kann die Benutzeroberfläche 156 jede geeignete Anzahl und Art von Komponenten zum Empfangen von Benutzereingaben und dem Generieren von Ausgaben für einen Benutzer beinhalten. Die Netzwerkschnittstelle 158 kann ein drahtgebundenes und/oder ein drahtloses Kommunikationsmodul für das Kommunizieren über Kurzstrecken- und/oder Langstreckenkommunikationsanbindungen umfassen. Das Positionierungsmodul 160 kann einen oder mehrere Global Positioning Systems(GPS)-Receiver, und einen drahtlosen LAN-Receiver beinhalten, der in der Lage ist, den gegenwärtigen Standort des Gerätes 150 mittels eines Triangulationsverfahrens, eines Währungssensors usw. zu erfassen.
  • Während des Betriebs ruft die Web-Browser-Anwendung 170 die Inhalte Dritter 184 von einem Drittanbieter von Inhalten, wie etwa dem in 1 abgebildeten Anbieter 106, ab. Die Web-Browser Anwendung 170 verarbeitet den Inhalt 184 durch das Parsen der Anweisungen, das Anzeigen von Text und Grafiken usw. und führt einen Anruf an die Karten-API 122 aus. Insbesondere ruft die Webbrowser-Anwendung 170 die Karten-API 122 ab, um eine digitale Karte eines geographischen Standorts, die als Teil des Inhalts 184 spezifiziert ist, anzufordern. Unter erneuter Bezugnahme auf 1 kann der Inhalt 184 den Standort 10 als eine Straßenadresse, einen Satz an GPS-Koordinaten oder auf jede andere Weise spezifizieren.
  • Gemäß einer exemplarischen Ausführungsform generiert die Karten-API 122 wenn sie aufgerufen wird, eine Botschaft an einen Kartenserver (z. B. der Kartenserver 124 der 2), um die Kartendaten 180 abzurufen. Die Kartendaten 180 können Vektor-Grafik-Daten, die am Benutzergerät 150 interpretiert und gerastert sind, bereits gerasterte Kartenbilder, oder beide Konzepte beinhalten. Zusätzlich zur Spezifizierung des geographischen Standorts, der in die digitale Karte integriert werden muss, gibt die Botschaft gemäß einem exemplarischen Fall, den Standort des Geräts 150 an. Der Hinweis kann relativ präzise (z. B. GPS-Koordinaten) oder nur approximativ (z. B. die nächstgelegene Meile) sein. Ferner kann der Hinweis auf den geographischen Standort indirekt ausgedrückt sein, wie dies etwa bei der Internetprotokolladresse (IP-Adresse) der Fall ist. Gemäß einem weiteren Szenario kann das Benutzergerät 150 seinen gegenwärtigen Standort weder direkt noch indirekt bestimmen, oder der Benutzer konfiguriert das Benutzergerät 150, damit sein gegenwärtiger Standort nicht aufgezeigt wird. Stattdessen entscheidet sich der Benutzer dazu, seine bzw. ihre Authentifizierungsinformationen dem Kartenserver bereitzustellen. Durch das Verwenden dieser Authentifizierungsinformationen kann der Kartenserver den möglichen Standort des Benutzergerätes 150 abschätzen. Ein möglicher Standort des Benutzergerätes 150 kann zum Beispiel dem Wohnort oder dem Arbeitsplatz des Benutzers entsprechen.
  • Bei der Verwendung der Authentifizierungsinformationen ist es nicht erforderlich, dass die API 122 den Benutzer jedes Mal dazu auffordert, seine Login- und/oder Passwort-Informationen einzugeben. In einigen Implementierungen kann die API 122 durch das Prüfen der im Speicher 154 gespeicherten Login-Daten bestimmen, ob der Benutzer im Web-Browser 170 eingeloggt ist. Falls die Login-Daten angeben, dass der Benutzer eingeloggt ist, kann die API 122 auf spezifische Weise damit fortfahren, eine digitale Karte für den eingeloggten Benutzer anzufordern.
  • Auf jeden Fall stellt der Kartenserver die Kartendaten 180 für das Generieren einer digitalen Karte auf einer Zoomstufe bereit, die im Hinblick auf den berichteten oder abgeschätzten Standort des Benutzergeräts 150 und den geographischen Standort, für den die digitale Karte angefordert wurde, ausgewählt wurde. Je nach Implementierung kann der Kartenserver zum Beispiel die Zoomstufe, auf der die Kartendaten 180 unter Verwendung eines separaten Parameters angezeigt werden sollen, explizit festlegen, bzw. die Zoomstufe auf implizite Weise angeben, indem nur diejenigen Kartenkacheln, die mit der jeweiligen Zoomstufe in Verbindung stehen, bereitgestellt werden.
  • Mit fortgesetzter Bezugnahme auf 3 kann der Speicher 154 in anderen Ausführungsformen Anweisungen speichern, die eine andere Softwareanwendung umsetzen, die in der Lage ist, die API 122 aufzurufen, und eine interaktive digitale Karte über die Benutzeroberfläche 156 anzuzeigen. Das Benutzergerät 150 kann zum Beispiel eine dedizierte Kartenanwendung, eine Navigationsanwendung, oder eine Einkaufsführeranwendung ausführen, die jeweils konfiguriert sind, um die API 122 zusätzlich zum, bzw. statt des Webbrowsers 170 aufzurufen.
  • Wie oben angegeben, werden in einigen Szenarien, in denen die API 122 eine digitale Karte innerhalb eines ermittelten Ansichtsfensters bereitstellt, das die Techniken dieser Offenbarung verwendet, keine Drittanbieter von Inhalten 106 oder sonstige andere Drittanbieter von Inhalten miteinbezogen. Eher die
  • Exemplarische Verfahren für das Steuern von Kartenansichtsfenstern im Hinblick auf Benutzer-/Gerätesignale.
  • Unter Bezugnahme auf 4 kann ein exemplarisches Verfahren 200 für das Personalisieren einer digitalen Karte nunmehr auf einem Benutzergerät mit Bezug auf die Entfernung zwischen dem Benutzergerät und einem geographischen Standort auf der digitalen Karte beispielsweise in der Karten-API 122 und/oder dem automatischen Ansichtsfenster-Selektor 140 und zumindest teilweise auf dem Benutzergerät 150 ausgeführt werden. Insbesondere kann das Verfahren 200 als ein Satz an Anweisungen implementiert werden, die auf einem nicht transitorischen computerlesbaren Medium gespeichert und auf immer mehr Prozessoren ausgeführt werden.
  • Das Verfahren 200 beginnt bei Block 202, auf dem ein Hinweis zum geographischen Standort, der in eine digitale Karte integriert werden soll, empfangen wird. Der Hinweis kann in eine Webseite miteinbezogen werden, die beispielsweise von einem Anbieter von Inhalten empfangen wird.
  • Danach wird am Block 204 die Entfernung zwischen dem Benutzergerät und dem angegebenen geographischen Standort ermittelt. In einigen Implementierungen wird die Entfernung nur approximativ ermittelt. Die Entfernung kann beispielsweise auf das nächstgelegene Zehn-Meilenintervall bestimmt werden. Wie bereits vorstehend erörtert, kann der gegenwärtige Standort des Benutzergeräts unter Verwendung eines funksignalbasierten Positionierungsverfahrens, wie etwa GPS oder des WiFi-Triangulationsverfahrens, eines approximativen Positionierungsverfahrens, wie etwa der IP-Adressenzuordnung, bzw. durch das Abschätzen des Standorts des Benutzers auf Basis von historischen Daten, Profildaten, der Tageszeit usw. ermittelt werden.
  • Ein Ansichtsfensterparameter wird zumindest auf Basis der bestimmten Entfernung (Block 206) ermittelt. Die ermittelte Entfernung kann mit einem Schwellenwert, wie etwa dem in 1 veranschaulichten Radius R, verglichen werden. In allgemeiner Hinsicht können ein oder mehrere Radien als Schwellenwerte verwendet werden, um zu ermitteln, wann bestimmte Zoomstufen angewendet werden sollten. Ferner können Schwellenwerte entlang Geometrien außer kreisförmigen Geometrien definiert werden. Ein bestimmter Schwellenwert kann beispielsweise „10 Meilen entlang einer Hauptautobahn” entsprechen. Des Weiteren können Schwellenwerte in einigen Ausführungsformen zudem eher in Bezug auf die Zeit als auf die Entfernung, wie etwa „zwei Autostunden”, definiert werden.
  • Das Ansichtsfensterparameter kann beispielsweise die Zoomstufe sein. In einigen Ausführungsformen beinhaltet das Auswählen des Ansichtsfensters das Abfragen eines Kartenservers. Am Block 208 wird die digitale Karte gemäß des ermittelten Ansichtsfensterparameters der Karte generiert. Die digitale Karte kann beispielsweise innerhalb eines Kartenbrowserfensters, einer Nachrichtenanwendung, oder des Textkörpers einer E-Mail angezeigt werden.
  • 5 ist ein Flussdiagramm eines exemplarischen Verfahrens 250 für das Generieren von digitalen Karten an zwei Benutzergeräten auf jeweils unterschiedlichen Zoomstufen unter Verwendung der Karten-API dieser Offenbarung. Dieses Verfahren 250 kann beispielsweise als Satz von Anweisungen im automatischen Ansichtsfenster-Selektor 140 implementiert werden. Gemäß dem Verfahren 250 werden Zoomstufen für unterschiedliche Benutzergeräte ermittelt. Ein ähnliches Verfahren kann jedoch verwendet werden, um andere Ansichtsfensterparameter der Karte zu bestimmen.
  • Bei Block 252 wird von einem zweiten Benutzer eine Aufforderung empfangen, einem ersten Benutzergerät einen Hinweis zu einem geographischen Standort bereitzustellen. Unter erneuter Bezugnahme auf 1 kann der erste Benutzer beispielsweise Gerät A und der zweite Benutzer Gerät B betreiben und der geographische Standort kann Standort 10 entsprechen. Danach können entweder einer, mehrere oder sämtliche der Blöcke 254 ausgeführt werden, um die Zoomstufen für die digitalen Karten zu bestimmen, die auf dem ersten Gerät und dem zweiten Gerät angezeigt werden sollen. Insbesondere werden bei Block 254A die Entfernung zwischen dem ersten Gerät und dem angegebenen geographischen Standort und der Entfernung zwischen dem zweiten Gerät und dem angegebenen geographischen Standort ermittelt. Bei Block 254B werden entsprechende Messgrößen hinsichtlich der Vertrautheit mit dem angegebenen geographischen Standort für die Benutzer des ersten Geräts und des zweiten Geräts ermittelt. Bei diesen Messgrößen kann es sich beispielsweise um numerische Messgrößen, wie etwa Prozentanteile handeln. Bei anderen Blöcken 254 können diese Faktoren auch als vorhergehende Anfragen von Benutzern für Navigationsanweisungen, geographische Suchanfragen, Präferenzen und Lieblingsstandorte usw. analysiert werden. Diese Faktoren können als numerische Messgrößen zum Ausdruck gebracht und auf jede geeignete Art und Weise gewichtet werden.
  • Bei Block 258 wird eine erste Zoomstufe, auf der eine digitale Karte des angegebenen geographischen Standorts auf dem ersten Gerät angezeigt werden sollte, auf Basis der Ermittlungen bei den Blöcken 254A, 254B usw. ermittelt. Auf ähnliche Weise wird bei Block 260 eine zweite Zoomstufe, auf der eine digitale Karte des angegebenen geographischen Standorts auf dem Gerät angezeigt werden sollte, auf Basis dieser Ermittlungen ermittelt. In einigen Szenarios werden unterschiedliche Zoomstufen bei den Blöcken 258 und 260 ausgewählt, obwohl eine digitale Karte desselben geographischen Standorts angefordert wurde.
  • Bei Block 262 wird eine digitale Karte des angegebenen geographischen Standorts auf der ersten Zoomstufe über eine Benutzeroberfläche des ersten Geräts bereitgestellt und bei Block 264 wird eine digitale Karte des angegebenen geographischen Standorts auf der zweiten Zoomstufe über eine Benutzeroberfläche des zweiten Geräts bereitgestellt. Wenn der automatische Ansichtsfenster-Selektor 140 der 2 das Verfahren 250 umsetzt, kann der Kartenserver 124 Kartendaten an die entsprechenden Benutzergeräte über ein Kommunikationsnetzwerk bereitstellen.
  • 6 ist ein Flussdiagramm eines exemplarischen Verfahrens 300 für das Teilen eines Hinweises zu einem geographischen Standort mit mehreren Benutzergeräten, das auch als einen Satz von Anweisungen umgesetzt werden kann, der auf einem oder mehreren Prozessoren im automatischen Ansichtsfenster-Selektor 140 ausführbar ist.
  • Das Verfahren 300 beginnt bei Block 302, wo von einem Quellgerät eine Aufforderung zum Teilen eines Hinweises hinsichtlich eines geographischen Standorts mit mindestens zwei Zielgeräten empfangen wird. Die entsprechende Beziehung zwischen jedem der Zielgeräte und dem angegebenen geographischen Standort werden bei Block 304 ermittelt. Zum Beispiel können Schritte, die den oben erörterten Blöcken 254 ähneln, durchgeführt werden. Entsprechende Ansichtsfensterparameter werden dann auf Basis der ermittelten Beziehungen bei Block 306 ermittelt, und digitale Karten werden, ähnlich wie bei den oben erörterten Blöcken 262 und 264, an die entsprechenden Zielgeräte gemäß den ermittelten Ansichtsfensterparametern bei Block 308 bereitgestellt.
  • Zusätzliche Überlegungen
  • Die folgenden zusätzlichen Überlegungen gelten für die vorstehende Erörterung. In dieser gesamten Spezifikation können mehrere Instanzen Komponenten, Operationen oder Strukturen implementieren, die als einzelne Instanz 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 exemplarischen 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 Varianten, Änderungen, Hinzufügungen und Verbesserungen fallen in den Umfang des Gegenstands der vorliegenden Offenbarung.
  • Außerdem sind bestimmte Ausführungsformen hierin als Logik oder eine Reihe von Komponenten, Modulen oder Mechanismen umfassend beschrieben. Bei den Modulen kann es sich entweder um Softwaremodule (z. B. Code, der auf einem maschinenlesbaren Medium oder in einem Sendesignal verkörpert ist, worin der Code mittels eines Prozessors ausgeführt wird) oder Hardwaremodule handeln. Ein Hardware-Modul ist eine konkrete Einheit, die in der Lage ist, bestimmte Funktionen auszuführen, und sie kann auf eine bestimmte Art und Weise konfiguriert oder organisiert werden. 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.
  • Die Verfahren 200, 250 und 300 können einen oder mehrere Funktionsblöcke, Module, individuelle Funktionen oder Routinen in Form konkreter computerausführbare Anweisungen beinhalten, die auf einem nicht-transitorischen computerlesbaren Speichermedium gespeichert sind und unter Verwendung eines Prozessors auf einer Rechenvorrichtung ausgeführt werden (z. B. einem Server, einem Personal-Computer, einem Smartphone, einer in sich geschlossenen tragbaren Vorrichtung, einer befestigten tragbaren Vorrichtung, einer Fahrzeug-Headunit, einem Tablett-Computer, einem Head-Mounted-Display, einer Smartwatch, einer mobilen Rechenvorrichtung oder einem Personal-Computergerät, wie hierin beschrieben). Die Verfahren 200, 250 und 300 können beispielsweise als Bestandteil jedes Backend-Servers (z. B. ein Location-Relay-Server oder jede Art von Rechenvorrichtung des Servers, die hierin beschrieben wird), jedes Moduls einer befestigten tragbaren Vorrichtung, jedes Moduls einer in sich geschlossenen tragbaren Vorrichtung oder jedes Moduls einer Fahrzeug-Headunit der exemplarischen Umgebung, oder zum Beispiel als Teil eines Moduls, das sich außerhalb einer derartigen Umgebung befindet, aufgenommen werden. Obwohl die Figuren zur einfacheren Erläuterung mit Bezug auf andere Figuren beschrieben werden, können die Verfahren 200, 250 und 300 mit anderen Objekten oder Benutzeroberflächen verwendet werden. Obwohl die obige Erklärung Schritte der Verfahren 200, 250 und 300 beschreibt, während sie von spezifischen Geräten durchgeführt werden, kommt hinzu, dass dies nur zu Illustrationszwecken durchgeführt wird. Die Blöcke der Verfahren 200, 300 und 400 können von einem oder mehreren Geräten oder sonstigen Teile in der Umgebung durchgeführt werden.
  • Die hier beschriebenen Verfahren und Routinen können zumindest abschnittsweise vom Prozessor umgesetzt werden. So können beispielsweise zumindest einige der Operationen eines Verfahrens von einem oder mehreren Prozessoren oder prozessorimplementierten Hardwaremodulen durchgeführt werden. Die Durchführung bestimmter Operationen kann unter den ein oder mehreren Prozessoren verteilt sein, die sich nicht in einer einzigen Maschine befinden, sondern über eine Reihe von Maschinen bereitgestellt werden. In einigen exemplarischen Ausführungsformen können sich der Prozessor oder die Prozessoren an einem einzigen Ort (z. B. in einer Wohnungsumgebung, in einer Büroumgebung oder als eine Serverfarm) befinden, während in anderen Ausführungsformen die Prozessoren über eine Reihe von Orten verteilt sein können.
  • Die Durchführung bestimmter Operationen kann unter den ein oder mehreren Prozessoren verteilt sein, die sich nicht in einer einzigen Maschine befinden, sondern über eine Reihe von Maschinen bereitgestellt werden. In einigen exemplarischen Ausführungsformen können sich die ein oder mehreren Prozessoren oder durch Prozessoren implementierten Module an einem einzigen geografischen Ort (z. B. einer Wohnumgebung, einer Büroumgebung oder einer Serverfarm) befinden. In anderen exemplarischen Ausführungsformen können die ein oder mehreren Prozessoren oder durch Prozessoren implementierten Module über eine Reihe geografischer Orte verteilt sein.
  • Noch weiter bilden die Figuren einige Ausführungsformen der exemplarischen Umgebung lediglich zum Zwecke der Veranschaulichung ab. Ein Fachmann wird aus der folgenden Erörterung leicht erkennen, dass alternative Ausführungsformen der Strukturen und Verfahren, die hierin dargestellt sind, eingesetzt werden können, ohne von den Prinzipien der hier beschriebenen Erfindung abzuweichen.
  • Beim Lesen dieser Offenbarung werden Fachleute noch zusätzliche alternative strukturelle funktionelle Gestaltungen zum Steuern von Kartenansichtsfenstern durch die hier veröffentlichen Prinzipien würdigen. 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 offengelegt werden, ohne Abweichung von der Idee und dem Umfang der angehängten Patentansprüche erfolgen.

Claims (8)

  1. Ein nicht transitorisches computerlesbares Medium, auf dem Anweisungen gespeichert werden, die eine Anwendungsprogrammierschnittstelle (API) für das Generieren digitaler Karten umsetzt, worin die API betrieben wird, um: wenn sie von einem Softwaremodul, das auf einem oder mehreren Prozessoren eines Client-Geräts ausgeführt wird, dazu aufgerufen wird, einen geographischen Standort zu bestimmen, der in eine digitale Karte aufzunehmen ist, worin der geographische Standort von einem Servergerät spezifiziert wird, der über ein Kommunikationsnetzwerk an das Client-Gerät gekoppelt ist; einen Parameter für ein Ansichtsfenster der digitalen Karte basierend zumindest auf einer Entfernung vom gegenwärtigen Standort des Client-Geräts zum spezifizierten geographischen Standort auszuwählen; eine digitale Karte gemäß dem ausgewählten Parameter zu generieren; und die digitale Karte über eine Benutzeroberfläche des Client-Geräts anzuzeigen.
  2. Computerlesbarer Datenträger nach Anspruch 1, worin der Ansichtsfensterparameter eine Zoomstufe ist.
  3. Computerlesbarer Datenträger nach Anspruch 2, worin die API betrieben wird, um eine erste Zoomstufe für die digitale Karte auszuwählen, wenn die Entfernung sich unterhalb eines Schwellenwerts befindet, und um eine zweite Zoomstufe für die digitale Karte auszuwählen, wenn sich die Entfernung oberhalb eines Schwellenwerts befindet, worin die erste Zoomstufe höher als die zweite Zoomstufe ausfällt.
  4. Computerlesbarer Datenträger nach Anspruch 1, worin das Servergerät dem Client-Gerät ein elektronisches Dokument bereitstellt, das die API aufruft und den geographischen Standort spezifiziert, der in die digitale Karte als Parameter aufgenommen werden soll.
  5. Computerlesbarer Datenträger nach Anspruch 4, worin das elektronische Dokument einen Standardwert des Parameters spezifiziert und worin die API betrieben wird, um den Standardwert des Parameters aufzuheben.
  6. Computerlesbarer Datenträger nach Anspruch 4, worin, die API betrieben wird, um die digitale Karte zu generieren, um: eine Aufforderung an ein Kartenservergerät über das Kommunikationsnetzwerk zu senden, und um Kartendaten für das Generieren der digitalen Karte vom Kartenservergerät zu empfangen; worin das Kartenservergerät getrennt vom Servergerät betrieben wird.
  7. Computerlesbarer Datenträger nach Anspruch 1, worin die API betrieben wird, um die Parameter ferner basierend auf einen abgeschätzten Grad an Vertrautheit eines Benutzers des Client-Geräts mit dem zuvor festgelegten geographischen Standort auszuwählen.
  8. Computerlesbarer Datenträger nach Anspruch 1, worin die API (i) den gegenwärtigen Standort des Client-Geräts und (ii) den zuvor festgelegten geographischen Standort auf einem Kartendatenserver, über das Kommunikationsnetzwerk bereitstellt, um einen Ansichtsfensterparameter für die digitale Karte auszuwählen.
DE202016006079.2U 2015-04-13 2016-04-12 Das dynamische Steuern eines Kartenansichtsfensters im Hinblick auf Benutzersignale Active DE202016006079U1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201562146730P 2015-04-13 2015-04-13
US62/146,730 2015-04-13

Publications (1)

Publication Number Publication Date
DE202016006079U1 true DE202016006079U1 (de) 2016-12-22

Family

ID=55913700

Family Applications (1)

Application Number Title Priority Date Filing Date
DE202016006079.2U Active DE202016006079U1 (de) 2015-04-13 2016-04-12 Das dynamische Steuern eines Kartenansichtsfensters im Hinblick auf Benutzersignale

Country Status (5)

Country Link
US (2) US10094680B2 (de)
EP (1) EP3283981A1 (de)
CN (2) CN107430632B (de)
DE (1) DE202016006079U1 (de)
WO (1) WO2016168186A1 (de)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180144440A1 (en) * 2016-11-23 2018-05-24 Microsoft Technology Licensing, Llc Providing Map Context
KR20220141927A (ko) 2017-04-27 2022-10-20 스냅 인코포레이티드 지도-기반 소셜 미디어 플랫폼들에 대한 위치 프라이버시 관리
US11893647B2 (en) 2017-04-27 2024-02-06 Snap Inc. Location-based virtual avatars
DE202018006745U1 (de) * 2018-01-05 2022-06-14 Sony Semiconductor Solutions Corporation Festkörper-Bildgebungselement und Bildgebungsvorrichtung
WO2019164807A1 (en) * 2018-02-20 2019-08-29 Veniam, Inc. Systems and methods for real-time handling and processing of data in a network of moving things
EP3797264B1 (de) * 2018-09-25 2023-02-15 Google LLC Dynamische umgestaltung von digitalen karten
US11467000B2 (en) 2018-12-26 2022-10-11 Google Llc Default map zoom level by travel time
US11733057B2 (en) * 2019-10-24 2023-08-22 Google Llc Transforming scale ring
US11544299B2 (en) * 2020-03-02 2023-01-03 Google Llc Topological basemodel supporting improved conflation and stable feature identity
CN111400628B (zh) * 2020-03-12 2023-04-07 腾讯科技(深圳)有限公司 一种信息传播方法、装置、设备及介质

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2953656C (en) * 2004-03-23 2018-11-27 Google Inc. A digital mapping system
US20060135181A1 (en) * 2004-12-21 2006-06-22 Motorola, Inc. Recipient based scoping of location information
US7995079B2 (en) 2007-04-16 2011-08-09 Research In Motion Limited Automatic map zoom-level adaptation
US8490025B2 (en) * 2008-02-01 2013-07-16 Gabriel Jakobson Displaying content associated with electronic mapping systems
US8655960B2 (en) * 2008-06-19 2014-02-18 Verizon Patent And Licensing Inc. Location-aware instant messaging
US8261206B2 (en) * 2009-02-27 2012-09-04 International Business Machines Corporation Digital map having user-defined zoom areas
US8315791B2 (en) 2010-06-18 2012-11-20 Nokia Coporation Method and apparatus for providing smart zooming of a geographic representation
US20120158712A1 (en) * 2010-12-16 2012-06-21 Sushrut Karanjkar Inferring Geographic Locations for Entities Appearing in Search Queries
CN102467342B (zh) * 2011-05-09 2013-04-03 无锡途拓科技有限公司 在多点触摸屏上呈现电子地图的方法
US8164599B1 (en) * 2011-06-01 2012-04-24 Google Inc. Systems and methods for collecting and providing map images
EP2715285B1 (de) * 2011-06-03 2020-11-04 Apple Inc. Vorrichtungen und verfahren zum vergleichen und auswählen von alternativen navigationsrouten
CN103034419A (zh) * 2011-10-10 2013-04-10 上海图龙信息科技有限公司 在移动设备上实现无级别缩放数字地图的方法
CN103514169B (zh) * 2012-06-18 2017-10-27 高德软件有限公司 兴趣点搜索方法及装置、移动终端
US8954860B1 (en) * 2012-08-27 2015-02-10 Google Inc. Method and apparatus for generating and displaying tourist maps
GB2506645A (en) * 2012-10-05 2014-04-09 Ibm Intelligent route navigation
US9134886B2 (en) * 2013-02-07 2015-09-15 Google Inc. Providing indoor facility information on a digital map

Also Published As

Publication number Publication date
US20160298982A1 (en) 2016-10-13
US11015950B2 (en) 2021-05-25
US20190041230A1 (en) 2019-02-07
WO2016168186A1 (en) 2016-10-20
US10094680B2 (en) 2018-10-09
CN107430632A (zh) 2017-12-01
CN107430632B (zh) 2022-01-04
EP3283981A1 (de) 2018-02-21
CN114385769A (zh) 2022-04-22

Similar Documents

Publication Publication Date Title
DE202016006079U1 (de) Das dynamische Steuern eines Kartenansichtsfensters im Hinblick auf Benutzersignale
DE202012013435U1 (de) Vorrichtung zum Vorabruf von Ortsseitendaten zur darauffolgenden Anzeige auf einem mobilen Computergerät
DE202012013434U1 (de) Vorabruf von Kartenkacheldaten entlang einer Route
DE202016007736U1 (de) Dynamische Integration von Offline- und Onlinedaten in einer geografischen Anwendung
US20230004269A1 (en) Method and Apparatus for Supporting User Interactions with Non-Designated Locations on a Digital Map
DE202015009184U1 (de) Wegbeschreibung zwischen automatisch bestimmten Ausgangspunkten und ausgewählten Zielen
DE202015009187U1 (de) Kartenpersonalisierung auf der Grundlage sozialer Anhaltspunkte
DE202016006041U1 (de) Systeme für das Generieren und Anzeigen von Standortentitätsinformationen in Verbindung mit dem aktuellen geographischen Standort eines mobilen Geräts
DE202011110851U1 (de) Vorrichtung der Zielführung
DE202014010936U1 (de) Effizientes Abrufen von Kartenkacheldaten
US20150009234A1 (en) Bitmap array for optimally distributing map data content to wireless communications devices
DE202015009163U1 (de) Mosaikbasierte Verteilung von suchbaren geospatialen Daten an Client-Vorrichtungen
DE202014010949U1 (de) Vorrichtung zur Unterbreitung von Vorschlägen anhand von Favoriten in der Nähe
DE202012013460U1 (de) Vorabrufen von Kartenkacheldaten, basierend auf einer von einem mobilen Gerät generierten Ereignisanalyse
DE112015005707T5 (de) Darstellung von navigationsinformation innerhalb einer sekundären benutzeroberfläche eines mobilen geräts
DE202015009120U1 (de) Integration von Online-Navigationsdaten mit gecachten Navigationsdaten während der aktiven Navigation
DE202016006006U1 (de) Systeme zur Disambiguierung von Standortentitäten in Zusammenhang mit dem aktuellen geografischen Standort eines mobilen Geräts
WO2018093774A1 (en) Electronic map interfaces
DE202011110900U1 (de) Systeme zum Sammeln und Bereitstellen von Kartenbildern
US9123178B2 (en) Updating map tiles
DE202014010881U1 (de) Bereitstellen von Indooreinrichtungs-Informationen auf einer digitalen Karte
DE202015009117U1 (de) Integration von Online-Navigationsdaten mit gecachten Navigationsdaten während der aktiven Navigation
DE202013012426U1 (de) System für die Anzeige von Panoramabildern
DE102013101259A1 (de) Nutzer-Gegenwart-Erfassung und Auffinden von Ereignissen
DE112012003538T5 (de) Verfahren, Vorrichtung und Computerprogrammprodukt zum Anzeigen von Elementen auf mehreren Etagen auf Mehrebenenkarten

Legal Events

Date Code Title Description
R207 Utility model specification
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

R150 Utility model maintained after payment of first maintenance fee after three years
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