JP6771858B2 - 非ラスター地図データの修正を利用した地図画像の描画 - Google Patents

非ラスター地図データの修正を利用した地図画像の描画 Download PDF

Info

Publication number
JP6771858B2
JP6771858B2 JP2014532094A JP2014532094A JP6771858B2 JP 6771858 B2 JP6771858 B2 JP 6771858B2 JP 2014532094 A JP2014532094 A JP 2014532094A JP 2014532094 A JP2014532094 A JP 2014532094A JP 6771858 B2 JP6771858 B2 JP 6771858B2
Authority
JP
Japan
Prior art keywords
map
vector
instruction
image
client device
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
JP2014532094A
Other languages
English (en)
Other versions
JP2015501439A (ja
Inventor
ジェニファー マウラー,
ジェニファー マウラー,
ショーン イーガン,
ショーン イーガン,
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 JP2015501439A publication Critical patent/JP2015501439A/ja
Application granted granted Critical
Publication of JP6771858B2 publication Critical patent/JP6771858B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • 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
    • 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/04847Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
    • 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
    • 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]
    • 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

Description

本開示は、電子地図表示システムなどの地図描画システムに関し、より具体的には、地図画像が、非ラスター形式で提供された地図データを用いて描画される地図描画システムに関する。
本明細書に提供される背景の説明は、一般的に、開示の文脈を提示するためのものである。この発明の背景というセクションに記載されている範囲内での現在指名されている発明者の業績と、出願時において先行技術であるとは認められ得ない記述の態様とは、明示黙示を問わず、本開示に対する先行技術とは認められない。
今日、地理的領域の地図は、携帯電話、カーナビシステム、手持ち式全地球測位システム(GPS)ユニット、およびコンピュータを含む広範囲にわたるデバイス上で実行されるソフトウエアアプリケーションによって表示され得る。このアプリケーションおよび/またはユーザの嗜好次第で、地図は、地形データ、街路データ、都市交通情報、交通情報などを表示し得る。更に、一部のアプリケーションは、地図を対話モードで表示し、これにより、ユーザは、様々な制御装置(ラジオボタン、スクロールバーなど)を用いて、例えば、ズームレベルを変更したり、新たな位置に対して「カメラ」をパンしたりし得る。ユーザはまた、場合によっては、ある情報の表示を選択したり選択解除したりし得る。例えば、ユーザは、適切な制御装置を動作させて、自転車トレイルの表示をオンにし得る。
地図画像を描画するために、デバイスは一般的に、専用のサーバからラスター画像を受信する。例えば、地図サーバは、インターネット上で動作して、指定された地理的領域に対する画像を、ポータブルネットワークグラフィックス(PNG)形式で様々なクライアントデバイスに提供し得る。ラスター画像はクライアントデバイスで描画するには比較的容易であるとはいえ、ラスター画像データは一般的には、広範囲の地図のための多量の記憶スペースを必要とする。また、ラスター画像をクライアントデバイスのところで効率的に操作することは困難である。例えば、選択された領域をズームインするためには、新しいラスター画像データをサーバから取ってくるか、さもなければ、利用可能なラスター画像データを、品質を大幅に犠牲にして拡大するかである。
ある実施形態では、クライアントデバイスに地図データを提供するためのコンピュータ実装方法が、選択された地理的領域のための第1の地図画像を、クライアントデバイスのところで描画するためのいくつかのベクトル記述子であって、その各々が、ベクトルグラフィックス形式に従ってそれぞれの地図要素の形状を示す、ベクトル記述子を生成することを含む。本方法は、ベクトル記述子が、通信ネットワークを介してクライアントデバイスに送信されるようにすることと、選択された地理的領域に対する第2の地図画像がクライアントデバイスのところで描画されるべきとする指示であって、第2の地図画像が第1の地図画像とは異なる、指示を受信することと、第1の地図画像および第2の地図画像の双方ではなくて一方において描画されるそれぞれの地図要素に各々が対応する1つ以上のベクトル記述子の集合を示す修正指示を生成することと、ベクトル記述子の少なくとも一部およびこの修正指示を用いて第2の地図画像を描画するために、通信ネットワークを介してクライアントデバイスに対して修正指示が送信されるようにすることと、を含む。
別の実施形態では、有形の非一時的なコンピュータ読み取り可能媒体が、命令を記憶するが、これらの命令は、1つ以上のプロセッサによって実行されるときに、この1つ以上のプロセッサに対して、選択された地理的領域に対して地図データを非ラスター形式で発生させるが、この地図データは、クライアントデバイスのところで解釈可能であり、これにより第1の地図画像をラスター形式で生成し、この地図データを、通信ネットワークを介してクライアントデバイスに対して送信させる。更に、これらの命令は、1つ以上のプロセッサによって実行されるときに、この1つ以上のプロセッサに対して、選択された地理的領域に対する第2の地図画像がクライアントデバイスのところで描画されるべきとする指示を、クライアントデバイスから受信させ、第1の地図画像を第2の地図画像に変換するために、地図データに対する1つ以上の修正を記述する修正指示を生成させ、地図データおよび修正指示の少なくとも一部を用いて、第2の地図画像をラスター形式でクライアントデバイスのところで描画するために、修正指示を、通信ネットワークを介してクライアントデバイスに送信する。
別の実施形態では、地図画像を生成するための、コンピューティングデバイスにおける方法は、選択された地理的領域のための第1の地図画像を描画するためのいくつかのベクトル記述子であって、各々がベクトルグラフィックス形式に従ってそれぞれの地図要素の形状を示すベクトル記述子を、通信ネットワークを介して受信することと、第1の地図画像を、これらの複数のベクトル記述子を用いて描画することと、を含む。本方法はまた、選択された地理的領域のための第2の地図画像を描画するための複数のベクトル記述子の修正を示す修正指示を、通信ネットワークを介して受信することと、選択された地理的領域に対する第2の地図画像を、ベクトル記述子のうちの少なくとも一部および修正指示を用いて描画することと、を含む。
更に別の実施形態では、通信ネットワーク中で動作するコンピューティングデバイスは、プロセッサと、プロセッサに連結されたメモリと、通信ネットワークを介しての通信のためのネットワークインターフェースと、メモリに記憶されたいくつかのルーチンと、を含む。第1のルーチンは、プロセッサで実行されて、選択された地理的領域に対応する地図データに対する要求を、ネットワークインターフェースを介して送信させる。第2のルーチンは、プロセッサで実行されて、要求に応答してネットワークインターフェースを介して受信された複数のベクトル記述子を用いて第1の地図画像を描画するが、これら複数のベクトル記述子は非ラスター形式にある。第3のルーチンは、プロセッサで実行されて、選択された地理的領域に対応する修正データに対する要求を、ネットワークインターフェースを介して送信させる。第4のルーチンは、プロセッサで実行されて、複数のベクトル記述子のうちの少なくとも一部および修正データを用いて第2の地図画像を描画する。
ある実施形態に従って、サーバが、地図データをクライアントデバイスに提供して、地図画像を描画し、次いで、修正データを提供して、同じ地理的領域に対する別の地図画像を、最初に提供された地図データの一部または全部と、修正データとを用いて描画するシステムのブロック図である。 図1のシステム中で動作し得る、クライアントデバイスのところである地理的領域に対応する2つの地図画像を描画するための、情報の例示の交換を図示する相互作用図である。 図1のシステムに実装され得る、以前に提供された地図データと共に追加の地図特徴部を描画するための、クライアントデバイスに対する情報の例示の転送を図示する相互作用図である。 図1のシステムに実装され得る、以前に提供された地図データに含まれる地図特徴部の属性を修正するための、クライアントデバイスに対する情報の例示の転送を図示する相互作用図である。 図1のシステムに実装され得る、以前に提供された地図データに含まれる地図特徴部を除去するための、クライアントデバイスに対する情報の例示の転送を図示する相互作用図である。 図1のシステムに実装され得る、複数の地図要素と関連付けられ、かつ以前に提供された地図データに含まれる地図特徴部を修正するための、クライアントデバイスに対する情報の例示の転送を図示する相互作用図である。 図1のシステム中で動作し得る地図サーバのところで、いくつかの地図画像に対する地図データを生成するための例示の方法のフロー図である。 図1のシステム中で動作し得る地図サーバのところで、以前に提供された地図データの修正の記述を生成するための例示の方法のフロー図である。 図1のシステム中で動作し得るクライアントデバイスのところで、地図画像を描画するための例示の方法のフロー図である。 は、図1のシステム中で動作するクライアントデバイスのところで表示され得る例示の基本図である。 ユーザが、図10Aの基本図を表示するクライアントデバイスのところで、路線図タイプを対話型のユーザインターフェースを介して選択した後で表示され得る例示の路線図である。
以下に検討するシステムおよび方法の実施形態において、地図サーバは、地図画像を描画するための地図データをクライアントデバイスに対して効率的に提供する。一部の実施形態によれば、地図サーバは、あるエリアまたは地理的領域に対応する第1の地図画像(例えば、基本図画像)を描画するために、地図データをクライアントデバイスに提供した後で、同じエリアに対応する第2の、そして異なった地図画像(例えば、道路交通現況図)を描画するために、修正データをクライアントデバイスに提供する。クライアントデバイスは次に、第1の地図画像を描画するために以前に提供された地図データと、修正データとを用いて第2の地図画像を描画し得るが、地図サーバは、必ずしも、第1の地図画像および第2の地図画像の双方を描画するに際して用いられる地図データをクライアントデバイスに対して2回以上提供する必要はない。シナリオ次第で、修正データは、以前に提供された地図データに対する1つ以上の追加、以前に提供された地図データの1つのまたはいくつかの部分の削除、または以前に提供された地図データの1つのまたはいくつかの部分の修正を含み得る。
ある実施形態では、地図サーバは、地図データを非ラスター形式で提供し、クライアントは、この地図データの一部または全部を解釈して、第1の地図画像および第2の地図画像をそれぞれのラスター画像として生成する。地図データは更に、個々のまたは集団的な地図要素と一緒に表示される地図ラベルを指定するためにテキストデータを含み得る。第1の地図画像を描画するために、クライアントデバイスは、通信ネットワークを介して地図サーバから地図データを要求し得るが、地図サーバはこれに応答して、地図コンテンツを記述する地図データを、ベクトルグラフィックス形式で提供し得る。この地図データは、様々な幾何学的形状を(例えば、点および点を接続する経路の数学的記述を用いて)指定し、道路、建物、公園、水域などの様々な地図要素を描画するためにこれらの形状をどのように位置付けすべきかを示し得る。例えば、線セグメントのラスター画像を形成する各々の画素を指定するのではなくて、線セグメントのベクトルベース記述が、線セグメントの2つの端点を指定して、これら2つの端点が直線で接続されることを示し得る。地図要素のベクトルベース記述は、本明細書では、ベクトル記述子または単にベクトルと呼ばれ得るが、1つまたはいくつかのベクトル記述子の集合は、ベクトルデータと呼ばれ得る。更に、一部のシナリオにおける個々の地図要素(例えば、建物)またはいくつかの地図要素の集団(例えば、建物、公園、自転車専用通路、および大学の構内の歩行者専用通路)は、地図特徴部(または単に特徴部)を画定し得る。ある実施形態では、地図特徴部は、地図サーバおよび地図クライアントが識別目的で利用し得る固有の識別子を割り当てられる。一般に、地図特徴部は、1つ以上のベクトル記述子を用いて記述され得る。
クライアントデバイスは、例えば、第1の地図画像および第2の地図画像を描画するための地図データを、それぞれのユーザ指令に応答して要求し得る。これらのユーザ指令は、異なった地図タイプ、異なったズームレベルなどの選択を示し得る。ある例示のシナリオによれば、ユーザは、地理的領域と、基本図タイプ、例えば、道路、街路、主要な目印などを図示する地図のタイプと、を選択する。クライアントデバイスは、地図画像を描画するための要求を生成して、この要求を地図サーバに送信し、地図サーバは、これに応答して、地図データをベクトルグラフィックス形式(または、クライアントデバイスのところでラスター画像を描画する目的に適した他の非ラスター形式)で提供する。この地図データは、いくつかのベクトル記述子と、場合によっては、スタイルデータ、ラベルデータなどの追加のデータとを含み得る。より具体的には、ラベルデータは、情報交換用米国標準コード(ASCII)形式、ユニコード形式または他のなんらかの適切な文字形式で文字を含み得る。クライアントデバイスは次に、地図データを解釈して、地図画像を描画して、地図画像を表示デバイス上に表示する。上記のシナリオを継続するためには、ユーザは次に、同じ地理的領域に対する路線図を選択し得るが、クライアントデバイスは、これに応答して、路線図に対応する新しい地図画像が生成されるとの指示を生成して、この指示を地図サーバに送信し得る。1つの実装例によれば、クライアントデバイスは、この新しいタイプの地図データに対する要求(例えば、「領域Rの路線図の地図データを提供せよ」)を生成し、地図サーバは、クライアントデバイスとの以前の通信をチェックして、どの種類の地図データが、以前にクライアントデバイスに送られたか、したがって、ここで既に利用可能であるかを決定する。別の実装例では、クライアントデバイスは、新しいタイプの地図データを要求する(例えば、「自分が、同じズームレベルで領域Rの基本図に対する地図データを既に有していることを考えれば、領域Rの路線図に対する地図データを提供せよ」)ことに加えて、選択された領域に対するどの種類の地図データがクライアントデバイスのところで既に利用可能であるかを指定する。地図サーバは、この場合、たとえ存在するとしても、どの地図データがクライアントデバイスに対して以前に送られたかを知る必要はない。より一般的には、地図サーバとクライアントデバイスとの間のトランザクションの履歴は、地図サーバおよび/またはクライアントデバイスによって維持される。
地図サーバは次に、どの地図要素およびラベルを、クライアントデバイスのところで既に利用可能な地図データに対して追加しなければならないか、これから除去しなければならないか、その中で修正しなければならないかを決定し得る。例えば、地図サーバは、ある領域およびあるズームレベルに対する基本図が、どのように、同じ領域および同じズームレベルに対する路線図と異なるか決定し、適切な修正指示を生成し得る。例えば、この修正指示は、基本図画像には含まれない地下鉄路線を描画するためのベクトル記述子を含み得る。地図サーバは次に、修正指示をクライアントデバイスに提供して、基本図画像を描画するための地図データと修正データを少なくとも部分的に用いて路線図画像を描画する。
地図画像を描画するための地図データが効率的にクライアントデバイスに提供されるこれらおよび他の例示のシナリオは、添付図面を参照して更に検討される。図の一部は、他の要素をより明瞭に示す目的でのある要素の省略によって簡略化されている。一部の図における要素のこのような省略は、対応する明細書中で明示的に描写され得る場合を除き、例示の実施形態のどれにおいても特定の要素の存在や不在を必ずしも示すものではない。
図1を参照すると、地図データを転送するための技法は、システム10の中で実装され得る。ある実施形態では、システム10は、地図サーバ12と、ネットワーク16を介して地図サーバ12に通信可能に連結されるクライアントデバイス14と、地図サーバ12に通信可能に連結される地図データベース18と、を含む。ネットワーク16は、インターネットなどの広域ネットワーク(WAN)、ローカルエリアネットワーク(LAN)、または他のなんらかの適切なタイプのネットワークであり得る。実施形態次第で、地図データベース18は、図1に図示するように、ネットワーク16を介して、または別の通信リンクを介して地図サーバ12に連結され得る。簡略化のために、地図サーバ12、クライアントデバイス14、および地図データベース18の1つの例だけが、図1に図示されている。しかしながら、システム10が、2つ以上の地図サーバ12、2つ以上のクライアントデバイス14、および/または2つ以上の地図データベース18を含み得る。
地図サーバ12は、プロセッサ20と、例えば、プロセッサ20上で直接的に(例えば、コンパイルされたコードとして)または間接的に(例えば、プロセッサ20上で実行される別のアプリケーションによって解釈されるスクリプトとして)実行可能であり得るコンピュータ命令という形態で地図コントローラ30を記憶するコンピュータ読み取り可能メモリ22と、を含み得る。コンピュータ読み取り可能メモリ22は、コンピュータ命令と、コンピュータ命令が実行時間に動作する際に基づくデータとを記憶する揮発性メモリ(例えば、ランダムアクセスメモリ、すなわちRAM)と、ある実施形態では、例えばハードディスクなどの持続性メモリと、を含み得る。ある実施形態では、地図コントローラ30は、クライアントデバイス14に対して地図コンテンツとして提供される1つ以上の地図要素を含む、様々な地図要素および/または地図特徴部に対するベクトルデータを生成する動的特徴部コントローラ32を含む。動的特徴部コントローラ32はまた、ある地図画像の同じ地理的エリアに対応する別の地図画像に対するベクトルベース記述の相違を決定し、適切な修正指示を生成し、この修正指示をクライアントデバイス12に提供するように構成し得る。言い換えれば、ある地図画像の完全なベクトルベース記述を提供するのではなくて、動的特徴部コントローラ32は、別の地図画像の以前に提供されたベクトルベース記述の修正の記述を効果的に提供することが可能である。
修正指示を生成するために、動的特徴部コントローラ32は、ある実施形態に従って、ある地図画像に対応するベクトルデータの直列化された表現を、別の地図画像に対応するベクトルデータの直列化された表現と比較する。例えば、動的特徴部コントローラ32は、ズームレベルZにおける領域Rの基本図に対するベクトルデータを要求し、これに応答して、地図サーバ18は、一連のベクトル記述子V1、V2、V5、・・・、VNを提供し得る。別のときに、動的特徴部コントローラ32は、ズームレベルZにおける領域Rの路線図に対するベクトルデータを要求し、地図サーバ18は、これに応答して、一連のベクトル記述子V1、V3、・・・、VLを提供し得る。ベクトル記述子のこれら2つの集合に基づいて、動的特徴部コントローラ32は、ズームレベルZにおける領域Rに対して、(i)基本図および路線図の双方がベクトル記述子V1に対応する地図要素を含むことと、(ii)ベクトル記述子V2およびV5に対応する地図要素を基本図は含むが路線図は含まないことと、(iii)ベクトル記述子V3に対応する地図要素を路線図は含むが基本図は含まないことと、を決定する。動的特徴部コントローラ32は、基本図画像を描画するために以前に提供されたベクトルデータを用いて路線図画像を生成するために、ベクトル記述子V3が、この以前に提供されたベクトルデータに追加され、一方、ベクトル記述子V2およびV5が、この以前に提供されたベクトルデータから除去されることを示す修正指示を生成し得る。より具体的には、動的特徴部コントローラ32は、各々が動作(例えば、追加、除去)および動作対象(例えば、ベクトル記述子、地図特徴部、または地図要素)を識別する、1つ以上の追加指示および1つ以上の除去指示を含む修正指示を生成し得る。
更に、一部の実施形態では、動的特徴部コントローラ32は、第1の地図画像および第2の地図画像の双方を生成するときにある地図要素が描画されるとはいえ、この地図要素の1つ以上のプロパティを修正して、第2の地図画像を描画する際にこの地図要素を再使用しなければならないことを決定し得る。例えば、一部または全部の地図要素が、これらの地図要素を、同じエリア中の部分的にまたは完全に重なり合う他の地図要素に対して位置付けることを示すそれぞれの深さ値と関連付けられ得る。より具体的な例として、道路のセグメントを描き、かつベクトル記述子Viに対応する地図要素は、基本図画像の中では深さD1のところで描画され得るが、路線図画像の中では深さD2のところで描画され得る。このシナリオにおいて、動的特徴部コントローラ32は、クライアントデバイス14に以前に提供されたベクトル記述子Viと関連付けられた深さは深さD2に更新されるべきであることを示す修正指示を生成し得る。
また更に、ベクトルデータに加えて、動的特徴部コントローラ32は、追加されたまたは修正された地図特徴部に対するラベルデータを、修正指示の一部としてまたは、代替例では、個別の指示として提供し得る。ラベルデータは、なんらかの適切な形式での文字と、一部の実装例では、対応するラベルが属する地図特徴部または地図特徴部のグループの識別子と、を含み得る。
一部の実施形態では、ベクトルデータに加えて、地図コントローラ30は、どのようにベクトルデータを描画すべきであるかを示すスタイルデータを提供し得る。より特定的には、スタイルデータは、線の太さ(例えば、画素の中の幅)、線の色、1つ以上の充填色などの特徴またはプロパティを記述し得る。ある実施形態では、スタイルデータは、ベクトルデータに適用され得る様々な視覚スタイルに対して提供される。地図サーバはまた、どの視覚スタイルをクライアントデバイスは地図要素の様々なベクトルベースの記述(本明細書ではベクトル記述子または単にベクトルとも呼ばれる)に適用すべきであるかを指定し得る。更に、一部の実施形態では、地図サーバは、どの視覚スタイルが、地形、路線、交通、自転車トレイルなどの特定の地図タイプに対する地図要素のベクトルベースの記述に当てはまるかを示す。この目的のために、各々がそれぞれの固有の識別子によって識別されるいくつかのスタイルが、定義され得る。
地図コントローラ30は、ある地理的領域およびズームレベルに対する、ベクトルデータなどの地図データを非ラスター形式でクライアントデバイス14に対して、実施形態次第で1つの電子メッセージまたは一連の電子メッセージの中で提供し得る。更に、ある実施形態では、地図コントローラ30は、地図データを地図タイル記述子の集合として生成し、これにより各々の地図タイル記述子が、地図タイル、すなわちある大きさ(例えば、256画素X256画素)の地図画像の一部を記述するようにする。個々の地図タイルによって表される地理的領域の大きさは、この地図タイルが関連付けられる相手側のズームレベルによって異なり得るため、より低いズームレベルでの1つの地図タイルは、より高いズームレベルでの1つの地図タイルよりも大きい地理的エリアを図示する。地図コントローラ30は、ベクトルグラフィックス形式に従って各々の地図タイル記述子を生成し、図1のクライアントデバイス14などのクライアントデバイスは、各々のタイルに対するラスター画像を局所的に生成し得る。
図1を引き続き参照すると、クライアントデバイス14は、命令を実行するプロセッサ50と、命令およびデータを記憶するメモリ52とを含み得る。クライアントデバイス14はまた、それぞれ、入力デバイス54と、ユーザからの入力を受信してユーザに出力を提供する出力デバイス56と、を含み得る。入力デバイス54は、キーボード、マウス、およびタッチ画面のうちの1つ以上を含み、出力デバイス56は、例えば、タッチ画面や「通常」の(出力だけの)画面などの表示装置またはモニターデバイスを含み得る。クライアントデバイス14は、デバイスドライバ、オペレーティングシステム(OS)イベントハンドラなどの様々なソフトウエアコンポーネントを含んで、入力デバイス54および出力デバイス56を制御し、これにより、対話型ユーザインターフェースを実装し得る。更に、プロセッサ50上で実行されるソフトウエアアプリケーションは、これらのソフトウエアコンポーネントを利用して、アプリケーション特有のユーザインターフェースを提供する。
実施形態次第で、クライアントデバイス14は、デスクトップコンピュータ、ラップトップコンピュータ、またはタブレットPCなどのパソコン、ワークステーション、スマートフォンなどの携帯式通信デバイス、または他のいずれかの適切なコンピューティングデバイスであり得る。ある実施形態では、クライアントデバイス14は、ある計算機能および/または記憶機能を別のコンピューティングデバイスに依存するいわゆるシンクライアントである。例えば、1つのこのような実施形態では、メモリ52は、RAMなどの揮発性メモリだけを含み、持続性メモリを有するプログラムおよび/または記憶ユニットは、クライアントデバイス14の外部にある。別の実施形態では、メモリ52は、揮発性メモリコンポーネントと持続性メモリコンポーネントとの双方を含む。
ブラウザアプリケーション60は、プロセッサ50上で実行されるコンピュータ読み取り可能命令の集合を含み得る。一般に、ブラウザアプリケーション60は、テキスト、画像、埋込みビデオなどのコンテンツと、ハイパーテキストマークアップ言語(HTML)などのマークアップ言語での命令とを含むウエブページにアクセスして、マークアップ言語での命令に従って出力デバイス56上にこれらのコンテンツを描画する。この目的のために、ブラウザアプリケーション60は、ハイパーテキストトランスファープロトコル(HTTP)に適合するデータパケットを生成して処理するための機能を実装し、HTMLコンテンツを解析し、セキュア・ソケット・レイヤー(SSL)プロトコルに従ってデータを符号化し、デジタル証明書などを要求して検証し、かつウエブページデータをナビゲートし、描画し、管理することに関連する様々なユーザ指令を受信するためのユーザインターフェース機能を実施する。一部の実施形態では、ブラウザアプリケーション60は、ウエブページに提供されているスクリプト言語(例えば、javascript)で命令を解釈するように構成されている。
動的地図描画エンジン62は、ブラウザアプリケーション60のコンポーネントとして実行され得る。しかしながら、地図描画エンジン62に類似したソフトウエアモジュールが、独立型アプリケーションとしてまたは別のアプリケーションのコンポーネントとして実行され得る実施形態もある。実施形態次第で、動的地図描画エンジン62は、プラグイン(例えば、ブラウザアプリケーション60の機能性を拡張してプロセッサ50上で実行されるコンパイルされた命令の集合)、スクリプト(例えば、実行時にブラウザアプリケーション60によって解釈されるスクリプト言語での命令の集合)、または別の適切なソフトウエアコンポーネントであり得る。1つの例示のシナリオにおいては、動的地図描画エンジン62は、は、クライアントデバイス14を動作させているユーザが、対話型埋込み地図を含むウエブページを訪問するときにダウンロードされる。より具体的には、ウエブページは、オンラインの地図サーバへの第1のハイパーリンクおよびある地理的位置と、この第1のハイパーリンクに従ってこのオンライン地図サーバから受信された地図データを描画するために必要とされる動的地図描画エンジン62のコピーへの第2のハイパーリンクと、を含み得る。
動的地図描画エンジン62は、例えば、ブラウザアプリケーション60のユーザインターフェースを介して対話型制御を提供し得る。対話型制御は、ユーザが、地理的領域もしくはエリア、地図タイプ(例えば、基本図、道路交通現況図、路線図)、ズームレベルなどを選択することを可能とし得る。ある例示のシナリオにおいては、ユーザは最初に、地理的領域の基本図を要求し、次に同じ領域の別のタイプの地図を要求する。動的地図描画エンジン62は、ユーザ指令に応答して、地図データをベクトルグラフィックス形式で要求して受信し得る。
動作中、動的地図描画エンジン62は、ベクトルデータ(および、一部の実施形態では、スタイルデータ)を地図サーバ12から受信し、対応する地図画像を受信したベクトルデータを用いて描画し、かつこの地図画像を、ブラウザアプリケーション60によって割り当てられたある領域の内部に表示させる。例えば、ブラウザアプリケーション60は、地図画像を表示するためのHTML5のカンバス要素を作成し得る。動的地図描画エンジン62はまた、別の地図画像を描画するための受信されたベクトルデータに対する1つ以上の修正を示す修正指示を、地図サーバ12から受信し得る。
簡単にするために、クライアントデバイス14は、1つのプロセッサ50で図示されている。しかしながら、クライアントデバイス14は、他の実施形態では、例えば、出力デバイス56での画像描画を容易にするように構成されたグラフィックス処理ユニット(GPU)などの追加の処理ユニット(図示せず)を含み得る。更に、ある実施形態では、ブラウザアプリケーション60は、効率的に地図画像を描画するためのグラフィックス機能のライブラリを利用し得る。例えば、メモリ52は、ブラウザアプリケーション60を含む、クライアント14で実行される様々なアプリケーションがアプリケーションプログラミングインターフェース(API)を介してアクセスし得るグラフィックスを描画するための機能を有する、OpenGL(登録商標)ライブラリまたはDirect3D(登録商標)ライブラリなどのプラグインを記憶し得る。別の実施形態では、メモリ52は、例えばWebGLなどのブラウザアプリケーションにとって特に適切なプラグインを記憶する。また、一部の実施形態では、メモリ52は、出力デバイス56を介して画像の効率的な描画を可能とする更なるソフトウエアコンポーネントを記憶する。例えば、メモリ52は、Adobe(登録商標)Flash(登録商標)プラグインまたはO3Dプラグインを記憶し得る。
一般に、動的地図描画エンジン62はいずれかの適切なアプリケーションで動作することが可能であることが分かっている。例えば、クライアントデバイス70は、動的地図描画エンジン62がマッピングアプリケーション74で動作する、例えばスマートフォンなどの携帯デバイスであり得る。ブラウザアプリケーション60に類似して、マッピングアプリケーション74は、メモリ72に記憶され、かつクライアントデバイス70(図示せず)の1つ以上のプロセッサで実行可能な命令の集合を含み得る。一部の実施形態では、マッピングアプリケーション74は、クライアントデバイス70で実行されるブラウザアプリケーションによって(例えば、対応するブラウザAPIを介して)提供されるネットワーク機能を利用する。別の実装例では、マッピングアプリケーション74は、地図サーバ12にアクセスするためにTCP、IP、HTTPなどをサポートする通信スタックなどの少なくとも部分的なブラウザ機能性を含む。
次に、図1のシステムまたは類似の環境の中での地図サーバおよびクライアントデバイスの動作をより良く解説するために、いくつかのシナリオを、図2〜6に図示する相互作用図を参照して考える。特に、ある領域の2つの地図画像を描画するための地図サーバとクライアントデバイスとの間での情報の例示の交換を、図2を参照して検討し、その後で、いくつかの具体的なシナリオを検討するが、これらのシナリオとは、追加の地図要素を描画するための修正指示を提供すること(図3)、地図特徴部または地図要素が描画される深さを修正するための修正指示を提供すること(図4)、以前に提供された地図データに含まれる地図特徴部または地図要素を除去するための修正指示を提供すること(図5)、いくつかの地図要素と関連付けられた複合した地図特徴部を修正するための修正指示を提供すること(図6)、である。
図2を参照すると、例示のメッセージ交換100には、(図1のクライアント14などの)クライアントデバイスに含まれるまたは別様に関連付けられたユーザインターフェース102と、クライアントデバイスで動作する動的地図描画エンジン104と、(図1の地図サーバ12などの)サーバ106と、に関連する。戻って図1を参照すると、ユーザインターフェースはブラウザ60によって提供され、一方、動的地図描画エンジン104およびサーバ106は、それぞれコンポーネント62および12に実装され得る。
ユーザ指令に応答して、ユーザインターフェース102は、ある領域R1の地図データに対する要求110を生成して、この要求を動的地図描画エンジン104に提供する。要求110は、例えば、コンポーネント102および104がその内部に実装されるクライアントデバイスの内部で電子メッセージとして送信され得る。動的地図描画エンジン104は次に、基本地図データに対する要求112を送信し得るが、この要求は、通信ネットワークを介してサーバ106に送信される。要求112は、全地球測位サービス(GPS)座標を用いて、または他のなんらかの適切な仕方で領域R1を指定し得る。更に、要求112は、基本図を描画するために地図データが要求されていることを指定するために、地図タイプ指示を含み得る。また更に、一部の実施形態では、要求102は、領域R1のなんらかのベクトルベースの地図データが、コンポーネント102および104を実装するクライアントデバイスのところで既に利用可能であるかどうかを示す。
要求112に応答して、サーバ106は、基本図画像を描画するための地図データをベクトルグラフィックス形式などの非ラスター形式で含む応答114を生成し得る。ある例示のシナリオによれば、応答114は以前に提供されたどのベクトルデータにも依存しない領域R1の基本図画像のベクトルベースの記述を含む。言い換えれば、応答114は、領域R1の基本図画像の完全な記述を含む。応答114は、1つまたはいくつかのタイル記述子T1、T2、・・・TNなどのなんらかの適切な方法で編成された地図データを含み得る。一般に、地図データは、1つのタイルを含む任意の数のタイルに対して提供され得る。各々のタイル毎に、応答112は、様々な特徴部F1、F2、などを記述し得るが、これらの各々は、適切なベクトルグラフィックス形式に従った1つまたはいくつかのベクトル記述子を用いて指定され得る(上記したように、特徴部は、1つの地図要素または地図要素のグループと関連付けられ得る)。特徴部は、建物などの単純な地図要素またはより複雑な地図要素集団に対応し得る。一部の実施形態では、応答114は、将来の識別に用いられる地図特徴部のための固有の識別子を提供し得る。一部の実施形態における応答114は、地図要素の様々な視覚属性を指定するスタイルデータを更に含む。
動的地図描画エンジン104は、基本図画像を描画し、基本図画像をユーザインターフェース102に提供して対応するイベント116を生成し、受信した地図データ(および、利用可能であるときは、スタイルデータ)を将来の使用のためにメモリに記憶し得る。ある実施形態では、動的地図描画エンジン104は、地図データは基本図と関連付けられているとの指示を更に記憶する。
図2のシナリオでは、ユーザは後に、地理座標を変更することなく地図タイプを基本図から路線図に変更することを判断して、ユーザインターフェース102を介して適切な制御装置を起動する。これに応答して、ユーザインターフェース102は、路線図データに対する要求120を生成して、要求120を動的地図描画エンジン104に発送し、このエンジンは次に、クライアントデバイスのところで違った地図画像が描画されようとしているとの指示121をサーバ106に提供する。ある実施形態では、指示121は、要求112に類似した路線図データに対する要求である。別の実施形態では、指示121は、路線図画像を描画するために、以前に提供された地図データを修正するための修正データを具体的に要求する。
ある実施形態では、サーバ106は、修正指示を一連の電子メッセージ1221、・・・122Nとしてクライアントデバイスに提供する。しかしながら、別の実施形態ではこの修正指示は、1つのメッセージとして提供される。メッセージ1221、・・・122Nの各々は、対応するタイルT1、・・・TNに対するベクトルデータをどのように修正するかの指示を含み得る。しかしながら、一部のシナリオでは、応答114に記述されたタイルT1、・・・TNのうちの一部だけが修正される。例えば、ある水域を描写する地図タイルは、基本図の一部としてまたは路線図の一部として表示されるときに同じ外観を有し得る。
修正される各々のタイルに対して、メッセージ122iは、1つ以上の修正記述子M1、M2、・・・MMを提供し得る。一般的に、修正記述子は、以前に提供された地図データに追加されるべき地図要素のベクトル記述子を指定したり、以前に提供された地図データの中の除去されるべき地図要素を識別したり、以前に提供された地図データの中の地図要素のプロパティの新しい値を指定したりする。ある実施形態では、修正記述子M1、M2、・・・MMの各々が、追加、削除、修正、深さ修正などの実行されるべき動作を識別し、かつ追加される地図特徴部または地図要素に対するベクトル記述子、除去される地図特徴部または地図要素の識別子などの1つ以上の動作対象またはパラメータを含む。
メッセージ1221、・・・122Nを受信すると、動的地図描画エンジン104は、要求された路線図画像のためのタイルを、応答114の中に提供されたベクトルデータの一部または全部と、メッセージ1221、・・・122Nの中に提供された修正指示と、を用いて描画する。より具体的には、動的地図描画エンジン104は、メッセージ1221、・・・122Nに従って修正された以前に提供されたベクトル記述子を解釈して、ラスター路線図画像を描画し、かつイベント126を生成して、この路線図画像を、ユーザインターフェース102を介して描画させ得る。動的地図描画エンジン104はまた、修正された地図データをメモリに記憶する。ある実施形態では、動的地図描画エンジン104は、最初に提供された地図データと修正されたデータとの双方を、バージョンの異なった地図データとして記憶する。
図3に示す例示のメッセージ交換150の間、地図サーバ106は、追加の地図特徴部のベクトル記述子を、動的地図描画エンジン104に対してそれぞれのメッセージ1521、・・・152Nを介して提供する。これらの追加の地図特徴部は、以前に提供された地図データの一部または全部と共に使用されて、ユーザインターフェース102および動的地図描画エンジン104を実装するクライアントデバイスのところで新しい地図画像を描画する。ある実施形態では、メッセージ1521、・・・152Nは、ある地図タイルに対する追加を記述する。メッセージ1521、・・・152Nが、どの特定のタイルとも関連付けられない実施形態もある。
メッセージ1521、・・・152Nの各々は、1つ以上の地図要素を有する地図特徴部の、ベクトルグラフィックス形式または他の適切な非ラスター形式での、記述を含み得る。メッセージ152はまた、対応する地図特徴部が、ほぼ同じ位置に配置された別の地図特徴部または要素に対してどのように描画されるかを指定する深さ指示を含み得る。例えば、メッセージ1521、・・・152Nのうちの1つを介して追加された新しい地図特徴部は、鉄道線路のあるセグメントであり得るし、以前に提供されたのは、道路のあるセグメントである地図特徴部であり得る。この新しい地図特徴部および以前に提供された地図特徴部のそれぞれの深さ指示次第で、鉄道線路のこのセグメントは、これらの鉄道線路と道路が交差する点における道路のセグメントの上または下に描画され得る。
メッセージ1521、・・・152Nを受信すると、動的地図描画エンジン104は、新しい地図画像を描画し、かつイベント156を生成して、この新しい地図画像をユーザインターフェース102のところで表示させ得る。ある実施形態では、動的地図描画エンジン104はまた、増加した地図データを地図データの新しいバージョンとしてメモリに記憶する。
図4を参照すると、サーバ106が、以前に提供された地図データに含まれるある地図特徴部が、新しい深さのところで新しい地図画像の中に描画されたと決定するときに、例示のメッセージ交換200が発生し得る。サーバ106は、固有の特徴部識別子によって識別された地図特徴部に対して、この地図特徴部が描画される新しい深さを示す修正指示202を生成して、動的地図描画エンジン104に送信する。別の実施形態では、修正指示202は、いくつかの地図特徴部または要素の新しい深さ値を示す。修正指示202を受信すると、動的地図描画エンジン104は、修正指示202を考慮して新しい地図画像を描画し、かつイベント204を生成して、この新しい地図画像を、ユーザインターフェース102のところで表示させ得る。
更に、サーバ106が、以前に提供された地図データに含まれるある地図特徴部が、新しい地図画像の中に描画されていないと決定するときに、図5の例示のメッセージ交換250が発生し得る。サーバ106は、例えば、固有の特徴部識別子を用いて地図特徴部を識別する修正指示252を生成して、動的地図描画エンジン104に送信する。別の実施形態では、修正指示252は、個々の地図要素をこの地図要素の適切な識別子を用いて識別する。更に、一部の実施形態では、修正指示252は、除去されるべきいくつかの地図特徴部または要素を識別する。修正指示252を受信すると、動的地図描画エンジン104は、修正指示252を考慮して新しい地図画像を描画し、かつイベント254を生成して、この新しい地図画像を、ユーザインターフェース102のところで表示させ得る。
図6は、サーバ106が、いつくかのサブ特徴部または要素を有する複合した地図特徴部を修正するために修正データを動的地図描画エンジン104に提供している間での例示のメッセージ交換300を図示する。例えば、地図特徴部F1は、サブ特徴部F1-1、F1ー2、F1ー3、F1ー4、およびF1ー5を含み得る。地図特徴部F1を基本図の一部として描画するときには、サブ特徴部F1-1、F1ー2、F1ー3、F1ー4、およびF1-5の各々が用いられ得る。しかしながら、地図特徴部F1を路線図の一部として描画するときには、地図特徴部F1は、サブ特徴部F1-1およびF1ー2だけと共に描画され得る。ある実施形態では、サーバ106は、地図特徴部F1が除去されるべきであることを示すメッセージ302を生成する。図5を参照して検討した例示のシナリオに類似して、メッセージ302は、地図特徴部F1の固有の識別子を含み得る。サーバ106は次に、それぞれサブ特徴部F1ー1およびF1ー5を追加するためにメッセージ304および306を生成する。図3の例示のシナリオに類似して、メッセージ304および306は、対応する地図特徴部の記述をベクトルグラフィックス形式などの非ラスター形式で含み得る。メッセージ302、304、および306を受信すると、動的地図描画エンジン104は、地図特徴部F1の新しいバージョンを持つ新しい地図画像を描画し、かつイベント310を生成して、この新しい地図画像を、ユーザインターフェース102のところで表示させる。
次に、図1のシステムまたは類似の環境で動作するコンピューティングデバイスに実装され得るいくつかの例示の方法を、図7〜9を参照して検討する。これらの方法は、なんらかの適切なプログラミング言語で開発されたコンピュータプログラムとして実装されて、(1つまたはいくつかのハードディスクドライブなどの)有形の非一時的なコンピュータ読み取り可能媒体に記憶され、かつ1つまたはいくつかのプロセッサで実行可能であり得る。例えば、図7および8の方法は、地図サーバ12に実行され、図9の方法は、クライアントデバイス14に実装され得る。図7〜9の方法はサーバまたはパソコン(PC)などの個々のコンピュータで実行可能であるとはいえ、これらの方法の少なくとも一部を例えば、クラウドコンピューティング環境でいくつかのコンピュータを用いて分散式に実装することも可能である。
図7を参照すると、いくつかの地図画像のための地図データを生成するための例示の方法350が、例えば、地図サーバ12の地図コントローラ30またはサーバ106の類似のコンポーネントに実装され得る。ある実施形態によれば、ある領域の第1の地図画像を描画するためのベクトル記述子がブロック352で生成される。これらのベクトル記述子は、ベクトルグラフィックス形式に適合し、かつそれぞれの地図要素を記述し得る。一部の実施形態では、ベクトル記述子は、各々が1つ以上の地図要素を含む地図特徴部に従ってグループ化され得る。更に、一部の実施形態では、ベクトル記述子は、ベクトルデータ、テキストベースのラベルデータ、アイコン、または、道路シールドなどの記号を効率的に描画するまたは再描画するためのスタイルデータをこれまた含む非ラスター地図データの一部として提供され得る。
次に、ブロック354で、ベクトル記述子は、クライアントデバイスに提供される。例えば、ベクトル記述子は、1つまたはいくつかの電子メッセージとして、例えば、図1のネットワーク16などの通信ネットワークを介して送信され得る。
ブロック356で、同じ領域の第2の地図画像を描画するためのデータに対する要求が受信される。一部のシナリオでは、この要求は、図2の相互作用図に図示するように、クライアントデバイスのところでユーザが異なった地図タイプを選択することに応答して送信される。以前に提出されたベクトル記述子に対する1つまたはいくつかの修正の記述を含む修正指示が、ブロック358で生成されて、ブロック360でクライアントデバイスに提供される。
別のシナリオでは、ブロック356で受信された要求は、同じ領域および同じ地図タイプに対応する地図画像が描画される新しいズームレベルをユーザが選択することに応答して送信される。例えば、ブロック352で生成されたベクトル記述子は、地理的領域Rの基本図タイプのズームレベルZ1にあるいくつかのタイルを記述し得る。ブロック356でユーザがズームレベルZ2を選択し、データに対する適切な要求が発行された後で、それぞれブロック358および360で、修正指示が生成されて、クライアントデバイスに提供され得る。クライアントデバイスは、以前に提供されたベクトル記述子に対して、この修正指示に従って追加、除去、または修正し、かつこれらのベクトル記述子の一部または全部を再スケーリングして、対応する地図要素をズームレベルZ2で描画し得る。より具体的な例として、ブロック354で提供されたベクトル記述子は、ズームレベルZ1での公園のベクトルベースの記述を含み、また、この公園の同じベクトルベースの記述を用いて、ズームレベルZ2での公園を修正された地図画像の一部として再描画し得る。
図8を参照すると、以前に提供された地図データの修正の記述を生成するための例示の方法400は、例えば、地図サーバ12の地図コントローラ30またはサーバ106の類似のコンポーネントに実装され得る。ある実施形態では、方法400のステップの一部は、上述した方法350のブロック356〜360で実行される。
ブロック402で、地図画像がクライアントデバイスのところで更新されるとの指示が受信される。ブロック404で、以前に提供されたベクトル記述子に対する追加が識別され、対応する記述が生成される。ブロック406で、以前に提供されたベクトル記述子の一部の削除が識別され、対応する修正の記述が生成される。上述したように、一部のシナリオでのある地図特徴部の修正は、サブ特徴部の一部の削除および追加として表される。ベクトルデータに対する修正の記述などの修正指示は、1つの電子メッセージまたはいくつかの電子メッセージでクライアントデバイス408に送信される。
図9は、例えば、動的地図描画エンジン62または104に実装され得る地図画像を描画するための例示の方法450のフロー図である。ブロック452で、あるエリアまたは領域のベクトル記述子が受信され、ブロック454で、第1の地図画像が、受信されたベクトル記述子を用いて描画される。この目的のため、受信されたベクトルデータが解釈されて、ラスター画像を生成する。
次に、ブロック456で、第2の地図画像を描画するための要求が、例えば、ブラウザアプリケーションのインターフェースなどのユーザインターフェースから受信される。この第2の地図画像は、上述したように、同じ領域に対するものであるが、違った地図タイプやズームレベルに対応したものであり得る。ブロック452で受信されたベクトル記述子に対する1つ以上の修正の記述などの修正指示が、ブロック458で受信される。この第2の地図画像は次に、ブロック452で受信されたベクトル記述子の一部または全部と、ブロック458で受信された修正の記述とを用いて描画される。上記したように、一般にベクトルデータに対する修正は、深さの追加、削除、修正、変更などを含み得る。
上記した技法の例示の応用を更に解説するために、同じ地理的領域に対応する図10Aおよび図10Bの地図を、それぞれ基本図タイプおよび路線図タイプに従って表示する。図10Aに示す基本図の地図画像500は、道路および公園などの複数の地図要素の描画500を含み得る。図10Bに図示するように、路線図の地図画像は、地図画像500の地図要素と、地図画像500の対応する部分に重ね合わされた地下鉄路線504とを含み得る。実施形態次第で、地下鉄路線504は、1つの地図特徴部または、各々が路線のそれぞれのセクションに対応するいくつかの画像特徴部として定義され得る。更に、地下鉄記号506は、地図画像500のある部分の上に描画され得る。実施形態次第で、地下鉄記号506は、例えば、追加された地図特徴部もしくは要素として、ラベルとして、またはアイコンとして提供され得る。ある実施形態では、地下鉄記号506は、ラスター形式の標準の地下鉄記号を標準のアイコンを生成するサーバから取ってくるために用いられることが可能な統一資源位置指定子(URL)として指定される。
図10Bの地図画像を図10Aの地図画像がクライアントデバイスのところで描画された後でこのクライアントデバイスのところで生成するために、地図サーバは、地下鉄路線504に対応する1つ以上の地図特徴部をベクトル形式で記述する修正指示だけを提供し得る。ある実施形態では、この修正指示はまた、深さ指示を提供して、地下鉄路線504を、図10Aの地図画像に示す道路の上に表示させる。更に、ある実施形態では、修正指示は、地下鉄記号506の記述をラベルまたはアイコンとして更に含む。
次の更なる考慮は、前述の検討に当てはまる。本明細書全体にわたって、複数の例は、1つの例として説明されたコンポーネント、動作、または構造を実現し得る。1つ以上の方法の個々の動作は、個別の動作として図示され、説明されているが、これら個別の動作のうちの1つ以上は、同時に実行され得るし、これらの動作が図示される順序で実行されることを要求するものはなにもない。例示の構成で個別のコンポーネントとして提示される構造および機能性は、組み合わされた構造またはコンポーネントとして実現され得る。同様に、1つのコンポーネントとして提示される構造および機能性は、個別のコンポーネントとして実現され得る。これらおよび他の変更、修正、追加、および改良は、本明細書の主題の範囲に入る。
ある実施形態は、本明細書では、ロジックまたは複数のコンポーネント、モジュール、またはメカニズムを含むものとして説明されている。モジュールは、ソフトウエアモジュール(例えば、機械読み取り可能媒体上でまたは送信信号中で実現される符号)またはハードウエアモジュールを構成する。ハードウエアモジュールは、ある動作を実行することが可能な有形のユニットであり、かつある方法で構成または配置され得る。例示の実施形態では、1つ以上のコンピュータシステム(例えば、独立型、クライアント、またはサーバコンピュータシステム)または、コンピュータシステム(例えば、プロセッサまたはプロセッサのグループ)の1つ以上のハードウエアモジュールは、本明細書に説明するある動作を実行するために動作するハードウエアモジュールとして、ソフトウエア(例えば、アプリケーションまたはアプリケーション部分)によって構成され得る。
別様の記載がない限り、「処理」、「計算」、「算出」、「決定」、「提示」、「表示」または類似物などの単語を用いた本明細書中の検討は、1つ以上のメモリ(例えば、揮発性メモリ、不揮発性メモリ、またはこれらの組み合わせ)、レジスタ、または、情報を受信する、記憶する、送信する、または表示する他の機械コンポーネントの内部で物理的(例えば、電子的、磁気的、または光学的)な量として表されるデータを操作または変換する機械(例えば、コンピュータ)の動作またはプロセスに言及し得る。
本明細書で用いられる、「一実施形態(one embodiment)」または「実施形態(an embodiment)」に対するいかなる言及も、その実施形態に関連して説明される特定の部品、特徴部、構造、または特徴が少なくとも1つの実施形態に含まれることを意味する。明細書中での様々な箇所における「一実施形態において」という語句の出現は、必ずしも全てが、同じ実施形態に対する言及であるとは限らない。
一部の実施形態は、「連結された」および「接続された」という表現をこれらの派生語と共に用いて説明され得る。例えば、一部の実施形態は、2つ以上の部品が直接的な物理的または電気的に接触していることを示すために「連結された」という用語を用いて説明され得る。しかしながら、「連結された」という用語はまた、2つ以上の部品が互いに直接的には接触していないが、それでも、互いに協動または相互作用することを意味し得る。実施形態は、この文脈には限られない。
本明細書で用いられる、「含む(comprises)」、「含む(comprising)」、「含む(includes)」、「含む(including)」、「有する(has)」、「有する(having)」という用語またはこれらの他のなんらかの変化語は、非排他的な包含を範囲に含むことを意図される。例えば、部品のリストを備えるプロセス、方法、品物、または装置は、必ずしもこれらの部品に限られることはなく、明示的にはリストされていないまたはこのようなプロセス、方法、品物、または装置に固有の他の部品を含み得る。更に、明示的に反対に記載されていない限り、「または」は、包括的な「または」であり、排他的な「または」ではない。例えば、条件AまたはBは、次のうちのどれかによって満足される:Aは真(または存在する)でBは偽(または存在しない)である、Aは偽(または存在しない)でBは真(または存在する)である、ならびにAおよびBは双方とも真(存在する)である。
加えて、「a」または「an」の使用を用いて、本明細書中の実施形態の部品およびコンポーネントを説明する。これは単に便利性のためおよび、本発明の一般的な意味を与えるためになされたものである。この説明は、1つまたは少なくとも1つを含むものと読まれるべきであり、明瞭に別様であることが意味されない限り、単数形は複数形も含む。
本開示を読めば、当業者は、本明細書中の開示された原理によって地図データを生成するためのシステムおよびプロセスのための更に他の代替の構造および機能的設計を理解されるであろう。したがって、特定の実施形態および応用例を図示し、説明したが、開示された実施形態は、本明細書に開示する正確な構造およびコンポーネントに限られないことを理解すべきである。当業者には明らかであろう様々な修正、変更および変形は、添付の特許請求の範囲に定義された精神および範囲から逸脱することなく、明細書に開示された本方法および装置の構成、動作および詳細に対してなされ得る。

Claims (9)

  1. 通信ネットワークを介してクライアントデバイスに地図データを地図サーバによって提供するための方法であって、
    指定された地理的領域に対応する地図データの提供に対する要求を前記クライアントデバイスから受信することと、
    前記指定された地理的領域のための第1の地図画像を、前記クライアントデバイスのところで描画して表示するための第1の複数のベクトル記述子であって、その各々が、ベクトルグラフィックス形式に従ってそれぞれの地図要素の形状を示す、複数のベクトル記述子を生成することと、
    前記第1の複数のベクトル記述子が、前記通信ネットワークを介して前記クライアントデバイスに送信されるようにすることと、
    前記第1の複数のベクトル記述子が前記クライアントデバイスに送信された後に、前記指定された地理的領域に対する第2の地図画像が前記クライアントデバイスのところで同じズームレベルで描画されるべきとする指示を前記クライアントデバイスから受信することであって、前記第2の地図画像が前記第1の地図画像とは異なり、前記第2の地図画像が第2の複数のベクトル記述子に対応する、指示を受信することと、
    前記第1の複数のベクトル記述子と前記第2の複数のベクトル記述子との差異を前記地図サーバにおいて決定することと、
    決定した前記差異に基づいて、前記第2の地図画像のみにおいて描画されるそれぞれの地図要素に各々が対応する1つ以上のベクトル記述子の集合を示す修正指示を生成することと、
    前記第1の複数のベクトル記述子および前記修正指示を用いて前記第2の地図画像を描画して表示するために、前記通信ネットワークを介して前記クライアントデバイスに対して前記修正指示が送信されるようにすることと、を含む、方法。
  2. 前記修正指示の生成が、
    前記第2の地図画像のみにおいて描画される地図要素を識別することと、
    前記識別された地図要素に対応するベクトル記述子を、前記修正指示の中に提供することと、
    前記識別された地図要素が前記提供されたベクトル記述子を用いて描画されることを示すための追加指示を、前記修正指示の中に提供することと、を含む、請求項1に記載の方法。
  3. 前記修正指示の生成が、前記識別された地図要素に対応する深さ指示を、前記修正指示の中に提供することを更に含み、前記深さ指示が、前記識別された地図要素が少なくとも1つの他の地図要素も含む地理的領域の内部で描画される順序を示し、前記識別された地図要素および前記少なくとも1つの他の地図要素が重なり合い、前記少なくとも1つの他の地図要素が深さ指示を備える、請求項2に記載の方法。
  4. 前記修正指示の生成が、
    前記第1の地図画像のみにおいて描画される地図要素を識別することであって、前記識別された地図要素が、前記第1の地図画像を描画するために前記クライアントデバイスに送信された前記第1の複数のベクトル記述子のうちの少なくとも1つに対応する、地図要素を識別することと、
    前記識別された地図要素に対応する前記第1の複数のベクトル記述子のうちの1つを識別するために、識別子を、前記修正指示の中に提供することと、
    前記識別された地図要素が描画されないことを前記クライアントデバイスに示すために、除去指示を、前記修正指示の中に提供することと、を更に含む、請求項1に記載の方法。
  5. 前記修正指示の生成が、
    1つ以上の重なり合う地図要素に対する第1の深さのところで前記第1の地図画像の一部として描画される地図要素を識別することと、
    前記識別された地図要素に対応する第2の深さの指示を、前記修正指示の中に提供することと、
    前記識別された地図要素の深さが前記第1の深さから前記第2の深さに変更されるべきことを示す深さ変更指示を、前記修正指示の中に提供することと、を更に含む、請求項1に記載の方法。
  6. 通信ネットワーク中で動作するコンピューティングデバイスであって、
    一又は複数のプロセッサと、
    前記通信ネットワークを介しての通信のためのネットワークインターフェースと、
    前記プロセッサに連結された表示デバイスと、
    前記一又は複数のプロセッサに連結され、前記一又は複数のプロセッサで実行される命令を記憶するメモリと、を備え、
    前記命令は、前記コンピューティングデバイスに、
    選択された地理的領域に対応する地図データの提供に対する要求を、前記ネットワークインターフェースを介して送信し、
    第1の地図画像を前記表示デバイス上に表示させるために、その要求に応答して前記ネットワークインターフェースを介して受信した非ラスター形式の複数のベクトル記述子を用いて前記第1の地図画像を描画し、
    前記選択された地理的領域に対応する修正データの提供に対する要求を、前記ネットワークインターフェースを介して送信し、
    第2の地図画像を前記表示デバイス上に表示させるために、前記複数のベクトル記述子および前記修正データを用いて前記第2の地図画像を描画することを実行させ、
    前記修正データが、前記第2の地図画像のみにおいて描画される地図要素のベクトル記述子を、前記非ラスター形式の一種であるベクトルグラフィックス形式で含む、コンピューティングデバイス。
  7. 前記命令は、前記コンピューティングデバイスが、
    第1の地図タイプが選択されたという通知を前記コンピューティングデバイスのユーザインターフェースから受信し、
    前記第1の地図タイプの選択に応答して、前記選択された地理的領域に対応する地図データの提供に対する要求を、前記ネットワークインターフェースを介して地図サーバに送信し、
    前記第1の地図タイプとは異なる第2の地図タイプが選択されたという通知を前記ユーザインターフェースから受信し、
    前記第2の地図タイプの選択に応答して、前記選択された地理的領域に対応する修正データの提供に対する要求を、前記ネットワークインターフェースを介して前記地図サーバに送信する命令を含む、
    請求項6に記載のコンピューティングデバイス。
  8. 前記第1の地図タイプおよび前記第2の地図タイプの各々が、基本図、地形図、路線図、および道路交通現況図のうちの1つから選択される、請求項7に記載のコンピューティングデバイス。
  9. 前記修正データが、
    前記第1の地図画像のみにおいて描画される地図要素を識別するための識別子と、
    前記識別された地図要素が描画されないことを前記コンピューティングデバイスに示すための除去指示と
    を含む、請求項6に記載のコンピューティングデバイス。
JP2014532094A 2011-09-26 2012-09-25 非ラスター地図データの修正を利用した地図画像の描画 Active JP6771858B2 (ja)

Applications Claiming Priority (3)

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

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2017206113A Division JP6789200B2 (ja) 2011-09-26 2017-10-25 非ラスター地図データの修正を利用した地図画像の描画

Publications (2)

Publication Number Publication Date
JP2015501439A JP2015501439A (ja) 2015-01-15
JP6771858B2 true JP6771858B2 (ja) 2020-10-21

Family

ID=47910808

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2014532094A Active JP6771858B2 (ja) 2011-09-26 2012-09-25 非ラスター地図データの修正を利用した地図画像の描画
JP2017206113A Active JP6789200B2 (ja) 2011-09-26 2017-10-25 非ラスター地図データの修正を利用した地図画像の描画

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2017206113A Active JP6789200B2 (ja) 2011-09-26 2017-10-25 非ラスター地図データの修正を利用した地図画像の描画

Country Status (9)

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

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 (en) 2002-04-30 2013-05-22 Telmap Ltd. Navigation system using corridor maps
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 (en) * 2005-01-18 2006-07-19 Oculus Info Inc. System and method for processing map data
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 (en) 2008-01-14 2013-10-16 BlackBerry Limited System and method for dynamically downloading and displaying map data
US8504945B2 (en) 2008-02-01 2013-08-06 Gabriel Jakobson Method and system for associating content with map zoom function
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 (en) 2009-08-25 2017-03-01 BlackBerry Limited Method and Device for Generating and Communicating Geographic Route Information between Wireless Communication Devices
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 (en) 2021-08-18
EP2761499A4 (en) 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 (en) 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
DE202012013441U1 (de) 2017-01-17
US9830064B2 (en) 2017-11-28
AU2012316227B2 (en) 2017-07-27
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 (en) 2020-06-03

Similar Documents

Publication Publication Date Title
JP6789200B2 (ja) 非ラスター地図データの修正を利用した地図画像の描画
AU2019204746B2 (en) Managing map elements using aggregate feature identifiers
US10533871B2 (en) Rendering a map using style identifiers
US9396508B2 (en) Use of map data difference tiles to iteratively provide map data to a client device

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140527

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150806

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20151013

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20151016

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160928

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161017

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20170626

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171025

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20171025

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20171101

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20171106

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20171208

C211 Notice of termination of reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C211

Effective date: 20171218

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20180312

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20180709

C13 Notice of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: C13

Effective date: 20190520

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20190820

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190904

C13 Notice of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: C13

Effective date: 20200203

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200507

C23 Notice of termination of proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C23

Effective date: 20200720

C03 Trial/appeal decision taken

Free format text: JAPANESE INTERMEDIATE CODE: C03

Effective date: 20200831

C30A Notification sent

Free format text: JAPANESE INTERMEDIATE CODE: C3012

Effective date: 20200831

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200930

R150 Certificate of patent or registration of utility model

Ref document number: 6771858

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250