JP4097881B2 - 地図データ配信方法 - Google Patents
地図データ配信方法 Download PDFInfo
- Publication number
- JP4097881B2 JP4097881B2 JP2000170290A JP2000170290A JP4097881B2 JP 4097881 B2 JP4097881 B2 JP 4097881B2 JP 2000170290 A JP2000170290 A JP 2000170290A JP 2000170290 A JP2000170290 A JP 2000170290A JP 4097881 B2 JP4097881 B2 JP 4097881B2
- Authority
- JP
- Japan
- Prior art keywords
- map
- data
- map data
- component
- data distribution
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Instructional Devices (AREA)
- Processing Or Creating Images (AREA)
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
【発明の属する技術分野】
本発明は、サーバ側からクライアント側に通信回線を介して地図データを配信し、クライアント側で地図画像を描画する地図データ配信方法、その地図データ配信方法に使用するクライアント及び地図データ配信サーバに関する。
【0002】
【従来の技術】
近年、インターネットのウエブ(web)上で電子地図が提供されるようになった。例えば、ユーザが電子地図を提供しているウエブサイトにアクセスし、所望の地点(緯度及び経度等)を指定すると、指定した地点を含む地域の地図画像がインターネットを介してユーザのコンピュータ(以下、クライアントともいう)に送信され、ユーザのコンピュータ画面に地図が表示される。
【0003】
一般的に、電子地図を提供するウエブサイトのサーバでは、地図データをベクトル形式で保有している。従って、クライアントから電子地図が要求されると、要求された地点の地図データを地図データベースから読み出し、レンダリング処理によりビットマップ画像を描画した後、その描画した地図画像をJPEG又はGIF等の画像形式でクライアント側に送信している。
【0004】
【発明が解決しようとする課題】
上述した従来の地図データ配信方法では、クライアント側のコンピュータの性能や回線品質を考慮せず、1図葉分の地図画像を通信回線を介して送信している。このため、送信データのサイズが大きく、通信に要する時間が長くなるという欠点がある。
【0005】
送信データのサイズを削減するために、地図データをそのまま(ベクトルデータのまま)クライアントに送信し、クライアント側でレンダリング処理することが考えられる。しかし、その場合は通信時間を削減できるものの、一般的にクライアント側のコンピュータはサーバ側のコンピュータに比べて性能が劣るため、ベクトルデータから地図画像を描画するのに多大な時間を要するという問題が発生する。
【0006】
以上から本発明の目的は、通信時間を短縮でき、且つクライアント側で通信開始から比較的短時間で地図画像を描画できる地図データ配信方法、その地図データ配信方法に使用するクライアント及び地図データ配信サーバを提供することである。
【0007】
【課題を解決するための手段】
上記した課題は、地図データ配信サーバからクライアントにベクトル形式の地図データを配信し、前記クライアント側で地図画像を描画する地図データ配信方法であって、前記地図データ配信サーバは前記地図データを複数の地図構成要素毎に記憶し、前記クライアントに前記地図構成要素毎に順番に前記地図データを送信し、前記クライアントは、前記サーバから受信した前記地図データを一時的に記憶する一時記憶メモリと、前記地図構成要素毎の地図描画要求の書き込み及び取り消しが行われる描画キューとにより構成され、ユーザの指示を解析して地図描画要求を出力するユーザインタフェースと、前記ユーザインタフェースから出力される地図描画要求に応じて前記地図データ配信サーバにアクセスし前記地図構成要素を受信するメインスレッドと、前記メインスレッドにより前記描画キューに地図描画要求が書き込まれると前記地図構成要素を使用して地図描画を開始する描画スレッドが協働して、ユーザからの入力処理、前記地図データ配信サーバからの地図データ取得処理及び地図描画処理を並行処理することを特徴とする地図データ配信方法により解決する。
【0008】
本発明において、地図データ配信サーバでは地図データを、例えば道路の描画に使用する道路データ、公園や河川等の描画に使用するポリゴンデータ及び文字列の表示に使用する文字列データなどの地図構成要素毎に記憶しており、これらのデータを地図構成要素毎に順番にクライアントに送信する。クライアント側では、地図データ配信サーバから1図葉分のデータを受信してから地図の描画を開始するのではなく、地図データを受信すると、受信したデータを一時記憶メモリ内に保存するとともに、受信したデータ又は一時記憶メモリ内のデータを使用して地図画像の描画を開始する。
【0009】
このように、本発明では、サーバで地図画像を描画して配信するのではなく、地図画像を描画するための地図データをクライアントに送信するので、送信データ量が少なく、通信時間を短縮することができる。また、クライアント側では、地図の描画と地図データの受信とを並行して行うので、地図データの受信開始から地図画像の描画終了までに要する時間が短くてすむ。更に、本発明では、地図データが地図構成要素毎に送られてきて、送られてきた順番で地図を描画する。このため、例えば道路が表示され、次に道路名や交差点名が表示され、その後公園や河川等の形状が表示される。このように、主要な地図構成要素から順番に描画することにより、地図描画が完了する前に所望の地点の状態をある程度把握することができるという利点もある。
【0010】
また、本発明では上述のように地図描画が完了する前にその地点の状態をある程度把握することができるので、描画中の地図が不用になり、その代わりにその地域の詳細地図や隣接する地域の地図が必要となることがある。このような場合、一時記憶メモリ内に含まれているデータが次の地図描画にも使用できるものであれば、当該データの送信を不要とする信号をサーバに送ることにより、重複するデータの送信をしなくてもすみ、無駄な通信時間を削減できる。
【0011】
クライアントは、例えばコンピュータのハードウェアと専用ソフトウエアとにより構成され、ユーザの指示を解析して地図描画要求を出力するユーザインタフェースと、前記ユーザインタフェースから出力される地図描画要求に応じて前記地図データ配信サーバにアクセスし地図構成要素を受信するメインスレッドと、前記地図データ配信サーバから受信した地図構成要素を記憶する一時記憶メモリと、前記地図構成要素を使用して地図を描画する描画スレッドとを有している。そして、ユーザインタフェース、メインスレッド及び描画スレッドが協働して、ユーザからの入力処理、前記地図データ配信サーバからの地図データ取得処理及び地図描画処理を並行処理することにより、ユーザの地図描画要求入力から地図描画完了までの時間を短縮する。
【0012】
描画スレッドには、メインスレッドにより地図構成要素毎の描画要求が書き込まれる描画キューを備えている。そして、描画スレッドは、描画キューに書き込まれた描画要求により、例えば一時記憶メモリから必要な地図構成要素を読み出して地図を描画していく。処理が完了した描画要求は描画キューから削除され、描画スレッドは描画キューが空になるまで描画処理を継続する。
【0013】
ユーザにより新たな地点の地図の描画要求が出されたときや、縮尺の変更が要求されたときに、描画キュー内の未処理の描画要求を廃棄することが好ましい。これにより、ユーザの要求が迅速に反映され、新たな地点の地図描画要求又は縮尺の変更要求による新たな地図の描画が短時間で開始される。
【0014】
【発明の実施の形態】
以下、本発明の実施の形態について、添付の図面を参照して説明する。
(第1の実施の形態)
図1は本発明の第1の実施の形態の地図データ配信方法を実現するシステムの構成を示す模式図である。このシステムは、インターネット又はその他の通信回線で接続された地図データ配信サーバ10とクライアント20とにより構成される。
【0015】
地図データ配信サーバ10は、地図データを格納した地図データベース11と、地図データベース11から所定の地図データを抽出するCGI(Common gateway interface)12とを有している。
地図データベース11に格納された地図は、1/12500 、1/25000 、1/50000 及び1/100000等の縮尺レベルに応じて適当な大きさの経度幅及び緯度幅に区切られており、道路等は経度及び緯度で表現された頂点(ノード)の座標集合として記憶されている。道路は複数のノードの連結で表現され、ノードの連結はリンクといわれる。また、地図データは、(1)ノードの位置及びリンク状態を示すデータからなり、道路の描画に使用される道路データ、(2)建築物、施設、公園及び河川等の描画に使用されるポリゴンデータ、(3)市町村名などの行政区画名、道路名、交差点名及び建物の名前を表示するための文字列データ、(4)地図上に目印となる建物や店舗等を表示するためのランドマークデータ、(5)等高線の表示等に使用する高度データなどが含まれている。
【0016】
一方、クライアント20は、サーバ10のウエブサイトにアクセスするためのWWWブラウザ21と、WWWブラウザ21に連動して画面上に地図を描画する地図描画ソフト22と、サーバ10から送られてくる地図データを一時的に保存するキャッシュ(一時記憶メモリ)23とを有している。地図描画ソフト22は、例えばJavaで記述されたアプレットやActiveX又はプラグイン(plug in )などで実現される。また、キャッシュ23は半導体メモリ(DRAM)の空き領域やハードディスクの空き領域を利用して実現される。
【0017】
図2は、本実施の形態の地図データ配信方法を示す模式図である。
まず、クライアント20は、WWWブラウザ21を使用し、インターネット等の通信回線を介して、電子地図配信サービスを行っているウエブサイトにアクセスする。その後、ユーザは、所定の操作により、電子地図を所望する地点を指定する。所望の地点を指定する方法としては、例えばクライアント20の表示装置に広域地図を表示し、その広域地図上で所望の地点を指定する方法や、地名(都道府県名、市町村名又は駅名等)により所望の地点を指定する方法など種々考えられるが、ここではユーザが所望の地点の緯度・経度を直接入力するものとする。
【0018】
クライアント20は、ユーザにより緯度・経度が入力されると、地図データの要求を示す信号とともに、入力された緯度・経度をサーバ10に送信する。このとき同時に、データ送信の優先順位を指定することができる。ここでは、道路データ、文字列データ、ランドマークデータ、ポリゴンデータ、…の順にデータ送信の優先順位を指定したとする。初期状態でデータ送信の優先順位を決めておき、ユーザが優先順位を任意に変更できるようにしておいてもよい。
【0019】
地図データ配信サーバ10では、クライアント20から地図データの要求信号を受信すると、CGI12を起動する。CGI12は、地図データベース11から指定された地点を含む地域の地図データを読み出す。地図データ配信サーバ10は、CGI12によってデータベース11から読み出された地図データを、指定された優先順位に従った順番でクライアント20に送信する。
【0020】
クライアント20は、地図データ配信サーバ10から送られてくるデータを全て受信してから地図を描画するのではなく、データの受信と地図描画処理とを並行して行う。すなわち、クライアント20は、地図データ配信サーバ10から送られてくるデータをキャッシュ23に蓄積する一方、地図描画ソフト22を起動し、サーバ10から送られてくる地図データ又はキャッシュ23内のデータを使用して地図画像の描画を開始する。
【0021】
この例では、サーバ10から道路データ、文字列データ、ランドマークデータ、ポリゴンデータ、…の順にデータが送られてくるので、クライアント20ではまず、道路データを受信して道路の描画を開始する。道路の描画が完了しないうちに文字列データやランドマークデータ等が送られてくると、それらのデータはキャッシュ23に蓄積される。キャッシュ23の容量が不足する場合は、キャッシュ23内の道路データのうち、すでに道路描画に使用したデータや、参照頻度の低いデータ及び優先順位の低いデータから優先的に破棄する。
【0022】
道路の描画が完了すると、続いて文字列の表示やランドマークの描画などを順に実行する。このようにして、クライアント20の表示画面に地図画像が表示される。
本実施の形態においては、サーバ10からの道路データの送信が開始された直後からクライアント20側では地図画像の描画が始まるので、全ての地図データを受信してから描画を開始する場合に比べて地図の描画に要する時間が短縮される。また、この例では、道路の描画、文字列の表示、ランドマークの描画の順で地図が描画されるので、地図全体の描画が完了する前に所望の地点の状況をある程度把握することができる。
【0023】
また、本実施の形態では、例えば1図葉分の地図データの受信が完了する前にユーザの操作によって地図の表示領域に変更があった場合、例えば地図を上下又は左右にスクロールしたり、詳細地図や広域地図に切換える場合は、クライアント20はデータの受信を中止して、新たに必要になったデータの要求を行う。このとき、クライアント20ではキャッシュ23内に必要なデータが含まれている場合、例えば、新たに描画する地域の道路データや文字列データがキャッシュ23に残っている場合は、当該データの送信を不要とする信号をサーバ10に送信する。これにより、サーバ10では重複するデータの送信を行わず、その他の必要なデータのみを送信する。
【0024】
このようにして、本実施の形態では重複するデータの送信を行わず、地図が表示されるまでのタイムラグを極力排除する。何らかの操作を行ってからアクションが起こるまでのタイムラグが長いとユーザは不安に駆られるが、本実施の形態によれば、ユーザが操作を行ってから地図が表示されるまでのタイムラグを削減することができて、操作性が向上する。また、本実施の形態では、図葉単位ではなく、それを構成する要素単位でデータを転送することにより、クライアント側での細かい制御が可能になり、より効率的な通信及び地図描画が可能になる。
【0025】
(第2の実施の形態)
図3は本発明の第2の実施の形態の地図データ配信方法を実現するシステムの構成を示す模式図である。このシステムは、地図データ配信サーバ30と、クライアント40とにより構成される。
地図データ配信サーバ30は、地図データを格納した地図データベース(DB)31と、地図データベース31から所定の地図データを抽出するCGI又はサーブレット(以下、CGI/Servlet と記す)32と、WWWサーバ33とにより構成される。地図データベース31には、第1の実施の形態と同様に、地図データが、各縮尺毎に道路データ、ポリゴンデータ、文字列データ、ランドマークデータなどの地図構成要素毎に分類されて格納されている。WWWサーバ33はインターネットと接続して、ウエブサイトを提供する。従って、クライアント40は、ウエブブラウザを使用して地図データ配信サーバ30に簡単にアクセスすることができる。
【0026】
CGI/Servlet 32は、WWWサーバ30に接続したクライアント40からの要求に応じて呼び出され、クライアント40の要求に応じた処理を実行する一種のプログラムである。すなわち、CGI/Servlet 32は、クライアント40から要求された地点及び縮尺の地図データを地図データベース31から読み出し、要求された順番で各地図構成要素をクライアント40に送る。
【0027】
クライアント40は、例えば専用ソフトウエアを読み込み、該ソフトウエアにより動作する汎用コンピュータである。クライアント40は、ハードウエアとして、CPU(central processing unit )と、DRAM(dynamic random-access memory)等の主メモリ(主記憶装置)と、画像描画用のビデオメモリと、ハードディスク装置(HDD)等の記憶装置(二次記憶装置)と、キーボード及びマウス等の入力装置と、モデム、ルータ及びTA(terminal adapter)等の通信装置と、CRT(cathode ray tube)及びLCD(liquid crystal display)等の表示装置とを有している。但し、クライアント40は汎用コンピュータに限定されるものではなく、コンピュータ技術を使用した電子機器(通信端末)であってもよい。このような電子機器として、例えば、カーナビゲーション装置や携帯情報機器(PDA:personal digital assistant)が考えられる。カーナビゲーション装置やPDAの場合は、例えば携帯電話回線を使用してインターネットに接続する。
【0028】
クライアント40は3つのスレッド(thread)、すなわちユーザインターフェース41、メインスレッド42及び描画スレッド43を含んで構成される。これらの3つのスレッドが協調して動作することにより、ユーザからの入力処理、地図データの取得処理及び地図描画処理を並行して処理し、ユーザによる入力がなされてから地図描画開始(又は、表示内容の変更)までの時間を最小限にしている。
【0029】
ユーザインタフェース41は制御部51により構成され、メインスレッド42は地図データ検索部52、通信部53及びキャッシュ管理部54により構成され、描画スレッド43は描画部55及び描画キュー56により構成されている。また、地図データ配信サーバ30から取得した地図データを一時記憶するために、DRAM等のメモリ(主記憶装置)の一部又はハードディスク等の二次記憶装置の一部を使用してキャッシュ44が構築される。本実施の形態では、キャッシュ44は、表示装置に表示する範囲を中心とした9画面分の地図構成要素を格納できるだけの記憶容量を有し、これにより地図画像をスムーズにスクロールできるようになっている。
【0030】
ユーザインターフェース41の制御部51は、キーボード又はマウス等の入力装置からの信号を解析し、その結果に応じた要求を出力する。例えば、ユーザが表示装置に表示された画面の所定の位置にカーソルを移動して所望の地点の緯度・経度を入力すると、制御部51は、メインスレッド42に、入力された緯度・経度の地図画像の表示要求を出力する。また、例えばユーザが画面上に表示された地図スクロールボタンを押すと、制御部51はメインスレッド42に画面のスクロール要求を出力する。ここでは、ユーザインタフェース41から出力される要求をパラメータともいう。パラメータに含まれる項目には、例えば(i) 緯度・経度、(ii)縮尺、(iii) 地図構成要素の種別(道路データ、文字列データ、建物等の地物のポリゴンデータ、その他のポリゴンデータ、ランドマークなど)、(iv)地図構成要素種別の優先度(描画する順番)がある。制御部51は、例えばユーザにより新たな地点の地図表示を指定されたとき、又は縮尺の変更が指定されたときに、これらのパラメータをメインスレッド42に通知する。なお、地図構成要素の種別の優先度は、初期状態で、例えば優先度の高いものから、道路データ、建物等の地物(以下、建物等と記す)のポリゴンデータ、それ以外(公園、川及び海等)のポリゴンデータ、文字列データ、ランドマークデータの順に設定されているが、ユーザが優先度を任意に変更することができる。ユーザインタフェース41は、メインスレッド42へのパラメータの通知を終えたら、再びユーザからの入力を待つ。
【0031】
メインスレッド42の通信部53はモデム、ルータ又はTA等の通信機を制御して地図データ配信サーバ30に接続し、地図データ検索部52から送られてきた地図構成要素毎の地図データ要求を地図データ配信サーバ30へ送信する。また、通信部53は、地図データ配信サーバ30から送られてくる地図構成要素毎の地図データを地図データ検索部52に伝達する。
【0032】
キャッシュ管理部54は、キャッシュ44に記憶する地図構成要素を管理する。例えば、キャッシュ44に記憶された各地図構成要素毎に、縮尺、地図構成要素の種別、格納アドレス及びデータ容量を記憶し、キャッシュ44内のデータの検索を容易にしている。また、キャッシュ管理部54は、地図データ配信サーバ30から送られてきた地図構成要素をキャッシュ44に追加したり、キャッシュ44に記憶されている地図構成要素を削除する。
【0033】
地図データ検索部52は、ユーザインタフェース41からパラメータを受け取ると、優先度の高い地図構成要素から順番に、図4にフローチャートを示す処理を実行する。
まず、ステップS11でキャッシュ管理部54を調べて、対応する地図構成要素がキャッシュ44内に格納されているか否かを確認する。その結果、格納されている場合(YESの場合)は、ステップS12からステップS16に直接移行し、格納されていない場合(NOの場合)はステップS12からステップS13に移行する。
【0034】
ステップS13では、通信部53を介して地図データ配信サーバ30に地図データ(地図構成要素)を要求する。そして、ステップS14で地図データ配信サーバ30から地図構成要素が送られてくると、ステップS15に移行し、キャッシュ管理部54を介してキャッシュ44に地図構成要素を格納する。但し、キャッシュ44の許容量を超えてしまう場合は、過去に追加されたいくつかの地図構成要素を削除して、新たな地図構成要素を追加するための空き領域を確保する。どの地図構成要素から削除するのかを決める方法としては種々考えられる。例えば、キャッシュ管理部54で各地図構成要素毎に参照頻度を記録しておき、参照頻度が低い地図構成要素から削除して空き領域を確保することが考えられる。また、例えば各地図構成要素を使用した順番でリンクして管理部54で管理し、現在表示装置に表示中の地図画像にリンクしていない地図構成要素を削除して空き領域を確保してもよい。更に、現在表示中の地図画像を右側にスクロールするときには、現在表示装置に表示中の地図画像よりも左側の地図画像の描画に使用される地図構成要素を削除して空き領域を確保するようにしてもよい。
【0035】
このようにしてキャッシュ44に新たな地図構成要素を格納した後、ステップS16に移行し、描画キュー56の末尾に当該地図構成要素の描画要求を追加する。
描画キュー56は、地図構成要素毎に描画要求を格納する。描画キュー56には、地図構成要素の種別に応じて、以下のコマンドとデータアドレスが格納される。
【0036】
(i) 道路の描画(1画面分)を指示するコマンドと、その道路データが格納されているキャッシュ44内のアドレス、
(ii)文字列の描画(1画面分)を指示するコマンドと、その文字列データが格納されているキャッシュ44内のアドレス、
(iii) 建物等のポリゴンの描画(1画面分)を指示するコマンドと、そのポリゴンデータが格納されているキャッシュ44内のアドレス、
(iv)建物以外のポリゴンの描画(1画面分)を指示するコマンドと、そのポリゴンデータが格納されているキャッシュ44内のアドレス、
(v) ランドマークの描画(1画面分)を指示するコマンドと、そのランドマークデータが格納されているキャッシュ44内のアドレス。
【0037】
但し、描画キュー56に割り当てられたメモリの容量が大きければ、コマンドとともに各データ(地図構成要素)も描画キュー56に格納することが可能である。この実施の形態では、コマンドとアドレスのみが描画キュー56に格納されるものとする。
描画部55は描画キュー56に格納された描画要求を順番に実行する。例えば、描画キュー56に、道路の描画要求、建物等のポリゴンの描画要求、それ以外のポリゴンの描画要求、文字列の描画要求、ランドマークの描画要求がこの順番で格納されるとすると、描画部55は、最初に道路データをキャッシュ44から読み出し、この道路データをビデオメモリに展開して道路を描画する。その後、建物等のポリゴンデータをキャッシュ44から読み出し、このポリゴンデータをビデオメモリに展開して、地図画像に建物等を描画する。次に、その他のポリゴンデータをキャッシュ44から読み出し、このポリゴンデータをビデオメモリに展開して、地図画像に公園、川及び海等を描画する。次いで、キャッシュ44から文字列データを読み出し、ビデオメモリの地図画像に文字列を追加する。その後、ランドマークデータをキャッシュ44から読み出し、ビデオメモリの地図画像にランドマークを追加する。
【0038】
処理が終わった描画要求は描画キュー56から廃棄される。描画部55は、描画キュー56が空になるまで処理を実行する。描画キュー56には、メインスレッド42によって優先度の高い順に描画要求が並べられているので、描画スレッド43は優先度の高い順に地図構成要素を描画することになる。
図5〜図8は各地図構成要素(道路データ、ポリゴンデータ、文字列データ及びランドマークデータ)のデータ構成を示す図である。地図構成要素は、適当な経度幅及び緯度幅で区切られた1図葉分(ユニット)毎に分割されている。各ユニットの絶対経緯度座標(X,Y)上の範囲は、対角頂点E,Fの絶対経緯度座標(XT1,YT1),(XT2,YT2)で管理されている。道路データは、図5に示すように、複数のノード(点)の集合として表現される。そして、道路データには、属性データとして、種別(線)、色、線種(実線、破線及び線幅等)及びノードの数を示すデータが含まれ、座標データとして各ノード(G1,G2,G3,…)の相対座標を含んでいる。
【0039】
建物等及びその他のポリゴンデータも、図6に示すように、複数のノードの集合として表現される。但し、ポリゴンデータでは終点(この例ではG4)が始点(G1)とつながって閉じた図形となる。ポリゴンデータには、属性データとして、種別(ポリゴン)、線(輪郭線)の色、線種(実線、破線及び線幅等)、ノードの数及び塗りつぶし色(ポリゴン内側の色)を示すデータが含まれ、座標データとして各ノードの相対座標を含んでいる。
【0040】
文字列データには、図7に示すように、属性データとして種別(文字列)、色(文字色)及び文字数を示すデータが含まれ、座標データとして文字列の始点(G1)の位置を示す位置データと、文字列の傾きを示す角度データが含まれている。また、座標データの後に、文字数分の文字コードが含まれる。
ランドマークデータには、図8に示すように、属性データとして種別(ランドマーク)が含まれ、座標データとしてランドマークの表示位置の位置(G1)の座標が含まれ、コードとして固有のランドマークコードが含まれる。なお、ランドマークの画像(ビットマップ)は、サーバ30から送られるようにしてもよいし、クライアント40内で予め用意されていてもよい。
【0041】
描画部55は、これらの地図構成要素毎のデータを取得して、地図を描画する。ビデオメモリの容量が大きい場合は、9画面分の画像をビデオメモリに展開しておき、そのうちの1画面分の画像を切り出して表示装置に表示することが好ましい。この場合、画面をスムーズにスクロールすることができる。PDAのようにメモリ容量が小さいときは、1画面分の画像のみをビデオメモリに展開し、スクロールするときには新たに1画面分の画像をビデオメモリに展開しなおす。
【0042】
本実施の形態では、上述したように、ユーザインタフェース41、メインスレッド42及び描画スレッド43が協調し動作して、ユーザからの入力処理、地図データの取得処理及び地図描画処理を並行して処理する。また、道路データ、建物等のポリゴンデータ、その他のポリゴンデータ、文字列データ及びランドマークデータ等の各地図構成要素を指定された優先度の順番で描画しながら表示装置に表示する。これにより、ユーザが操作を行ってから地図が表示されるまでの時間が短縮され、操作性が向上する。
【0043】
(第3の実施の形態)
以下、本発明の第3の実施の形態について説明する。本実施の形態が第2の実施の形態と異なる点は、地図データ検索部の動作が異なることにあり、その他の基本的な構成は第2の実施の形態と同様であるので、本実施の形態においても図3を参照し、重複する部分の説明は省略する。
【0044】
第2の実施の形態では、描画キュー56に格納されている処理要求が空になるまで描画部55は地図構成要素をキャッシュ44から読み込んで地図描画処理を実行する。しかし、新たな地点が指定されたときや縮尺を替えるときは、描画処理を中断して新たなデータで描画しなおすことが好ましい。本実施の形態では、このような動作を実現するために、地図データ検索部52が図9に示すフローチャートに従って動作する。
【0045】
まず、ステップS21において、ユーザインタフェース41から新たな地点の地図表示や縮尺の変更を指示する要求を受け取ると、ステップS22に移行して、地図データ検索部52は描画キュー56に格納されている未処理の描画要求を破棄する。描画部55は、描画キュー56が空になったので、次に描画キュー56に処理要求が追加されるまで、描画処理を中断する。
【0046】
その後、ステップS23に移行し、地図データ検索部52は各地図構成要素について、優先度の高いものから順に、図4に示す処理を実行する。
本実施の形態では、新たな地点の地図が要求されたとき、及び縮尺が変更されたときに、描画スレッド43の描画キュー56に残っている未処理の描画要求を破棄した後、新たに描画要求を描画キュー56に追加する。このため、全ての地図構成要素が描画される前に、ユーザにより縮尺の変更又は新たな地点の地図が要求されると、現在実行中の地図描画処理が中断され、新たな地点の地図描画が開始される。これにより、本実施の形態では、第2の実施の形態に比べて縮尺の変更や新たな地点の地図描画要求時の応答性がより一層向上する。
【0047】
なお、上記実施の形態においては、いずれも地図データ(地図構成要素)をキャッシュ(一時記憶メモリ)に一時的に記憶することとした。この場合、キャッシュ内のデータはいずれ廃棄されてしまうため、再度必要とする場合は地図データ配信サーバから再度データを送信する必要がある。これを回避するために、地図データをキャッシュだけでなく、ハードディスク装置等の不揮発性記憶装置に格納してもよい。
【0048】
【発明の効果】
以上説明したように、本発明によれば、地図データ配信サーバからクライアントに、地図データを例えば道路の描画に使用する道路データ、公園や河川等の描画に使用するポリゴンデータ及び文字列の表示に使用する文字列データなどの地図構成要素毎に送信し、クライアントでは受信したデータを一時記憶メモリに保存するとともに、受信したデータ又は一時記憶メモリ内のデータを使用して地図画像の描画を開始するので、通信時間を短縮できるとともに、データの通信を開始してから比較的短時間で地図画像の描画が完了する。
【図面の簡単な説明】
【図1】図1は、本発明の第1の実施の形態の地図データ配信方法を実現するシステムの構成を示す模式図である。
【図2】図2は、本発明の第1の実施の形態の地図データ配信方法を示す模式図である。
【図3】図3は、本発明の第2の実施の形態の地図データ配信方法を実現するシステムの構成を示す模式図である。
【図4】図4は、第2の実施の形態における地図データ検索部の動作を示すフローチャートである。
【図5】図5は、道路データの構成を示す図である。
【図6】図6は、ポリゴンデータの構成を示す図である。
【図7】図7は、文字列データの構成を示す図である。
【図8】図8は、ランドマークデータの構成を示す図である。
【図9】図9は、第3の実施の形態における地図データ検索部の動作を示すフローチャートである。
【符号の説明】
10,30…地図データ配信サーバ、
11…データベース、
12…CGI、
20,40…クライアント、
21…WWWブラウザ、
22…地図描画ソフト、
23,44…キャッシュ、
31…地図データベース、
32…CGI/Servlet 、
33…WWWサーバ、
41…ユーザインタフェース、
42…メインスレッド、
43…描画スレッド、
51…制御部、
52…地図データ検索部、
53…通信部、
54…キャッシュ管理部、
55…描画部、
56…描画キュー。
Claims (8)
- 地図データ配信サーバからクライアントにベクトル形式の地図データを配信し、前記クライアント側で地図画像を描画する地図データ配信方法であって、
前記地図データ配信サーバは前記地図データを複数の地図構成要素毎に記憶し、前記クライアントに前記地図構成要素毎に順番に前記地図データを送信し、
前記クライアントは、前記サーバから受信した前記地図データを一時的に記憶する一時記憶メモリと、前記地図構成要素毎の地図描画要求の書き込み及び取り消しが行われる描画キューとにより構成され、ユーザの指示を解析して地図描画要求を出力するユーザインタフェースと、前記ユーザインタフェースから出力される地図描画要求に応じて前記地図データ配信サーバにアクセスし前記地図構成要素を受信するメインスレッドと、前記メインスレッドにより前記描画キューに地図描画要求が書き込まれると前記地図構成要素を使用して地図描画を開始する描画スレッドが協働して、ユーザからの入力処理、前記地図データ配信サーバからの地図データ取得処理及び地図描画処理を並行処理することを特徴とする地図データ配信方法。 - 前記描画スレッドは、前記描画キューに書き込まれた描画要求を書き込まれた順番に処理し、処理が終了した描画要求を前記描画キューから削除することを特徴とする請求項1に記載の地図データ配信方法。
- 前記メインスレッドは、前記ユーザインタフェースから地図描画要求が通知されると、優先度が高い地図構成要素から順に、前記一時記憶メモリ内に当該地図構成要素が格納されているか否かを調べ、
格納されているときは前記描画キューに当該地図構成要素の描画要求を追加し、
格納されていないときは通信回線を介して接続した地図データ配信サーバに当該地図構成要素の送信を要求し、前記地図データ配信サーバから当該地図構成要素が送られてくると、当該地図構成要素を前記一時記憶メモリに記憶するとともに、当該地図構成要素の描画要求を前記描画キューに追加し、
前記描画スレッドは前記描画キューに追加された順番に前記描画要求を処理して地図を描画することを特徴とする請求項1に記載の地図データ配信方法。 - 前記メインスレッドは、前記ユーザインタフェースからの要求により、前記描画キューに格納されている未処理の描画要求を破棄することを特徴とする請求項1に記載の地図データ配信方法。
- 前記一時記憶メモリに新たなデータを格納するときに、容量が足りない場合は、使用頻度の少ないデータから破棄することを特徴とする請求項1に記載の地図データ配信方法。
- 前記一時記憶メモリは、複数画面分の地図データを記憶可能な容量を有することを特徴とする請求項1に記載の地図データ配信方法。
- 前記描画スレッドは、複数画面分の地図画像をビデオメモリに展開し、そのうちの1画面分の地図画像を表示装置に表示することを特徴とする請求項1に記載の地図データ配信方法。
- 請求項1乃至7のいずれか1項に記載の地図データ配信方法に使用するクライアントであって、前記サーバから受信した前記地図データを一時的に記憶する一時記憶メモリと、前記地図構成要素毎の地図描画要求の書き込み及び取り消しが行われる描画キューとにより構成され、ユーザの指示を解析して地図描画要求を出力するユーザインタフェースと、前記ユーザインタフェースから出力される地図描画要求に応じて前記地図データ配信サー バにアクセスし前記地図構成要素を受信するメインスレッドと、前記メインスレッドにより前記描画キューに地図描画要求が書き込まれると前記地図構成要素を使用して地図描画を開始する描画スレッドが協働して、ユーザからの入力処理、前記地図データ配信サーバからの地図データ取得処理及び地図描画処理を並行処理するクライアント。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000170290A JP4097881B2 (ja) | 1999-08-25 | 2000-06-07 | 地図データ配信方法 |
US09/642,739 US7010567B1 (en) | 2000-06-07 | 2000-08-18 | Map-data distribution method, and map-data distribution server and client |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP23783699 | 1999-08-25 | ||
JP11-237836 | 1999-08-25 | ||
JP2000170290A JP4097881B2 (ja) | 1999-08-25 | 2000-06-07 | 地図データ配信方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001134776A JP2001134776A (ja) | 2001-05-18 |
JP4097881B2 true JP4097881B2 (ja) | 2008-06-11 |
Family
ID=26533396
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000170290A Expired - Fee Related JP4097881B2 (ja) | 1999-08-25 | 2000-06-07 | 地図データ配信方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4097881B2 (ja) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4569051B2 (ja) * | 2001-06-07 | 2010-10-27 | 株式会社エクォス・リサーチ | 領域別情報送信装置 |
JP2002365071A (ja) * | 2001-06-12 | 2002-12-18 | Fujitsu Ten Ltd | 地図情報配信方法 |
JP4688198B2 (ja) * | 2001-07-31 | 2011-05-25 | パイオニア株式会社 | 地図情報表示システム、地図情報表示方法、サーバ装置および端末装置 |
JP3660287B2 (ja) * | 2001-09-20 | 2005-06-15 | 三菱電機株式会社 | 地図データ配信装置、地図データ受信装置、地図データ配信方法及び地図データ受信方法 |
JP4100971B2 (ja) * | 2002-06-10 | 2008-06-11 | 富士通テン株式会社 | 地図データ取得方法 |
WO2006040925A1 (ja) * | 2004-10-12 | 2006-04-20 | Sharp Kabushiki Kaisha | 情報表示装置、情報表示方法、コンピュータを情報表示装置として機能させるためのプログラム製品、および記録媒体 |
US20060129634A1 (en) * | 2004-11-18 | 2006-06-15 | Microsoft Corporation | Multiplexing and de-multiplexing graphics streams |
JP4653502B2 (ja) * | 2005-01-24 | 2011-03-16 | 富士通株式会社 | ロゴデータ配信装置およびロゴデータ配信システム |
JP2007003742A (ja) * | 2005-06-23 | 2007-01-11 | Hitachi Ltd | 地図データ配信システム、方法、携帯端末 |
JP2008145985A (ja) * | 2006-12-13 | 2008-06-26 | Cyber Map Japan:Kk | 3次元地図配信システム及びサーバ装置 |
JP5403921B2 (ja) * | 2008-02-04 | 2014-01-29 | 三菱電機株式会社 | 大規模地図画像生成・管理装置 |
JP2010044512A (ja) * | 2008-08-11 | 2010-02-25 | Dainippon Printing Co Ltd | 情報提供システム、情報提供装置、端末装置、端末装置制御方法及び端末用プログラム等 |
JP5285538B2 (ja) * | 2009-08-20 | 2013-09-11 | 株式会社ナビタイムジャパン | ナビゲーションシステム、ナビゲーション装置、ナビゲーションサーバ、および、保存データ削除方法 |
DE112010005501T5 (de) | 2010-04-19 | 2013-03-14 | Toyota Jidosha Kabushiki Kaisha | Fahrzeugsteuergerät |
WO2014020641A1 (ja) * | 2012-07-31 | 2014-02-06 | 株式会社スクウェア・エニックス | コンテンツ提供システム、コンテンツ提供機器、コンテンツ再生機器、制御方法、プログラム、及び記録媒体 |
CN111506682B (zh) * | 2020-01-13 | 2023-04-25 | 阿里巴巴集团控股有限公司 | 地图数据处理方法、数据查询方法、装置、电子设备 |
-
2000
- 2000-06-07 JP JP2000170290A patent/JP4097881B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2001134776A (ja) | 2001-05-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4097881B2 (ja) | 地図データ配信方法 | |
US8497883B2 (en) | Information display device | |
US7010567B1 (en) | Map-data distribution method, and map-data distribution server and client | |
US6650998B1 (en) | Information Search System for enabling a user of a user terminal to search a data source | |
CN102457613B (zh) | 移动通信终端上网页显示方法及系统 | |
EP1202188A2 (en) | Server devices for displaying web pages | |
US20080316225A1 (en) | Method for requesting and viewing a zoomed area of detail from an image attachment on a mobile communication device | |
Potmesil | Maps alive: viewing geospatial information on the WWW | |
JP2006200995A (ja) | 地図表示装置及び地図表示方法 | |
JP5294522B2 (ja) | 地図・写真画像配信システム及びそのクライアントシステム | |
JP3660287B2 (ja) | 地図データ配信装置、地図データ受信装置、地図データ配信方法及び地図データ受信方法 | |
JPH11232433A (ja) | 地図表示制御システム | |
JP5230281B2 (ja) | 地図階層通知方法、地図階層通知プログラム、及び地図階層通知システム | |
JP3689070B2 (ja) | 地図属性情報更新システム、サーバ装置、端末装置、地図属性情報更新方法、地図属性情報更新プログラム、および地図属性情報更新プログラムを記録した記録媒体 | |
JP2002324069A (ja) | データ管理装置及び地図表示システム | |
JP5389851B2 (ja) | 地図提供サーバ、地図提供方法及びプログラム | |
JP2009253504A (ja) | 閲覧履歴管理システム、方法及びプログラム、並びに携帯端末 | |
JP2002123456A (ja) | 画像処理方法及び装置並びに記憶媒体 | |
TWI232416B (en) | Map capturing system and method to zoom in/out with narrow bandwidth | |
JP2003208597A (ja) | 画像コンバータ及び画像コンバート方法 | |
JP3476805B2 (ja) | 画像表示システム及び方法 | |
JP2002202935A (ja) | サーバ装置 | |
JP6042683B2 (ja) | 地図画像生成装置、地図画像生成方法及びプログラム | |
JP3681920B2 (ja) | 電子地図表示方法、およびその記録媒体 | |
JP2008083402A (ja) | 携帯端末装置、地図情報表示システム及び地図情報表示方法、並びに情報処理プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040730 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070320 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070507 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20071127 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080117 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20080311 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080312 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 4097881 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110321 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110321 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120321 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120321 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130321 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130321 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140321 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |