説明

地図情報表示装置、地図情報表示方法、及びプログラム

【課題】地点情報へのアクセス性を向上できる地図情報表示装置を提供する。
【解決手段】地図情報記憶部11と、2以上の地点情報が記憶される地点情報記憶部17と、地点情報の示す地点と、その地点を含む地域の地域名との関係を取得し、地域名をまとめることによって、地点情報の示す地点がリーフノードであり、地点情報の示す地点を含む地域の地域名がリーフノード以外のノード(上位ノード)である階層構造の情報であって、地点と地域の包含関係を示す階層構造の情報である階層構造情報を生成する階層構造情報生成部20と、地図情報を表示し、階層構造情報に含まれるノードに対応する地域名や地点情報を表示する表示部22と、表示された地域名の選択を受け付ける選択受付部21と、を備え、表示部22は、階層構造情報において、選択された地域名に対する子ノードを表示する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、地図を表示する地図情報表示装置等に関する。
【背景技術】
【0002】
従来、カーナビゲーション装置等のナビゲーション装置が用いられるようになってきている(例えば、特許文献1参照)。そのナビゲーション装置を用いることによって、所望の目的地までのルート等を知ることができる。また、そのナビゲーション装置では、ルート探索で用いられた目的地を登録したり、お気に入りの地点などを登録したりする機能を有するものもある。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2009−210468公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
そのようなナビゲーション装置等において、登録された地点の情報に対するアクセス性の向上が求められていた。すなわち、それらの地点の情報を単に一覧表示しただけでは、所望の地点の情報に簡単にアクセスすることができないという問題があった。一方、それらの情報をユーザ自らがフォルダ等に振り分けて管理することは煩雑な処理がユーザに課されることとなり、好ましくない。
【0005】
本発明は、上記のような事情においてなされたものであり、地点情報へのアクセス性を向上させることができる地図情報表示装置等を提供することを目的とする。
【課題を解決するための手段】
【0006】
上記目的を達成するため、本発明による地図情報表示装置は、地図に関する情報である地図情報が記憶される地図情報記憶部と、地図情報に含まれる地点を示す情報である地点情報が2以上記憶される地点情報記憶部と、地点情報の示す地点と、地点を含む地域の名称である地域名との関係を取得し、地域名をまとめることによって、地点情報の示す地点がリーフノードであり、地点情報の示す地点を含む地域の地域名がリーフノード以外のノード(このノードを「上位ノード」とする)である階層構造の情報であって、地点と地域の包含関係を示す階層構造の情報である階層構造情報を生成する階層構造情報生成部と、地図情報を表示し、階層構造情報生成部が生成した階層構造情報に含まれるノードに対応する地域名または地点情報を表示する表示部と、表示部が表示した地域名の選択を受け付ける選択受付部と、を備え、表示部は、階層構造情報において、選択受付部が選択を受け付けた地域名に対する子ノードの情報をも表示する、ものである。
【0007】
このような構成により、地点情報を階層的に表示することができる。したがって、ユーザは、その地点情報の階層において、ルート側から地域を選択することによって、リーフの地点情報にアクセスすることができ、例えば、地点情報の数が非常に多い場合であっても、地点情報へのアクセス性が向上されることになる。また、そのような階層構造を自動的に構築することができるため、ユーザに対して、煩雑な処理が課されることもない。
【0008】
また、本発明による地図情報表示装置では、表示部は、はじめにルートノードの地域名を表示し、次に選択受付部が選択を受け付けた地域名のルートノードに対する子ノードの情報をも表示し、この親ノードの選択が受け付けられた場合に、親ノードに対する子ノードの情報を表示する処理を、子ノードである地点情報を表示するまで繰り返してもよい。
このような構成により、ルートノードの地域名からはじめて、最終的にリーフノードの地点情報を選択することができるようになる。
【0009】
また、本発明による地図情報表示装置では、地点情報を受け付ける地点情報受付部と、地点情報受付部が受け付けた地点情報を地点情報記憶部に蓄積する蓄積部と、をさらに備えてもよい。
【0010】
このような構成により、地点情報受付部が受け付けた地点情報が、地図情報表示装置において保持されることになる。例えば、ユーザが登録したお気に入りの地点情報などが、地図情報表示装置において保持されるようになる。
【0011】
また、本発明による地図情報表示装置では、現在位置を取得する現在位置取得部と、目的地を受け付ける目的地受付部と、現在位置取得部が取得した現在位置である出発地から、目的地受付部が受け付けた目的地までのルートを、地図情報を用いて生成するルート生成部と、目的地受付部が受け付けた目的地である地点を示す地点情報を地点情報記憶部に蓄積する蓄積部と、をさらに備え、表示部は、ルート生成部が生成したルートをも表示してもよい。
【0012】
このような構成により、目的地受付部が受け付けた目的地である地点情報が、地図情報表示装置において保持されるようになる。したがって、ルート探索で用いられた目的地が、自動的に地図情報表示装置で保持されていくようになる。
【0013】
また、本発明による地図情報表示装置では、地点と、地点を含む地域の名称である地域名との関係を示す情報である地域情報が記憶される地域情報記憶部をさらに備え、階層構造情報生成部は、地点情報の示す地点に対応する地域情報を用いることによって、地点情報の示す地点と、地点を含む地域の名称である地域名との関係を取得してもよい。
【0014】
このような構成により、地点情報に地域に関する情報が含まれていない場合であっても、地域情報を用いることによって、地点情報に対応した地域名を取得することができ、その地域名を用いて、階層構造情報を生成することができる。
【0015】
また、本発明による地図情報表示装置では、地点情報は、地点情報の示す地点を含む地域の名称である地域名を有する情報であり、階層構造情報生成部は、地点情報から、地点情報の示す地点と、地点を含む地域の名称である地域名との関係を取得してもよい。
このような構成により、地点情報に含まれる地域名を用いて、階層構造情報を生成することができる。
【0016】
また、本発明による地図情報表示装置では、階層構造情報生成部は、地点情報の示す地点と、地点を含む地域の名称である地域名であって、包含関係にある2以上の地域の地域名との関係を取得するものであり、下限のしきい値である下限しきい値よりも多い数の地点情報を含む地域の地域名がリーフノードの親ノードとなるように階層構造情報を生成するものであってもよい。
【0017】
このような構成により、あまり多くの地点情報を含まない地域の地域名が、階層構造情報における上位ノードとなることを防止することができる。したがって、無用に階層が深くなる事態を回避でき、地点情報へのアクセス性が向上されることになる。
【0018】
また、本発明による地図情報表示装置では、階層構造情報生成部は、地点情報の示す地点と、地点を含む地域の名称である地域名であって、包含関係にある2以上の地域の地域名との関係を取得するものであり、上限のしきい値である上限しきい値よりも少ない数の地点情報を含む地域の地域名がルートノードとなるように階層構造情報を生成するものであってもよい。
【0019】
このような構成により、あまりにも多くの地点情報を含む地域の地域名が、階層構造情報におけるルートノードとなることを防止することができる。したがって、無用に階層が深くなる事態を回避でき、地点情報へのアクセス性が向上されることになる。
【0020】
また、本発明による地図情報表示装置では、表示部は、階層構造情報に含まれる地域名をリスト表示するものであり、階層構造情報生成部は、階層構造情報に含まれる地域名を、地域名に対応する地域が含む地点情報の数でソートした階層構造情報を生成してもよい。
このような構成により、ユーザの所望の地点情報がリスト表示のより上位に表示されるようになりうる。
【0021】
また、本発明による地図情報表示装置では、表示部は、階層構造情報に含まれる地域名をリスト表示するものであり、地点情報は、年月日を示す情報である年月日情報をも含むものであり、階層構造情報生成部は、階層構造情報に含まれる地点情報を、地点情報が含む年月日情報でソートした階層構造情報を生成してもよい。
【0022】
このような構成により、新しい年月日のものが、ユーザの所望の地点情報である可能性が高いという仮定の下、ユーザの所望の地点情報がリスト表示のより上位に表示されるようになりうる。
【0023】
また、本発明による地図情報表示方法は、地図に関する情報である地図情報が記憶される地図情報記憶部と、地図情報に含まれる地点を示す情報である地点情報が2以上記憶される地点情報記憶部と、階層構造情報生成部と、表示部と、選択受付部とを用いて処理される地図情報表示方法であって、表示部が、地図情報を表示するステップと、階層構造情報生成部が、地点情報の示す地点と、地点を含む地域の名称である地域名との関係を取得し、地域名をまとめることによって、地点情報の示す地点がリーフノードであり、地点情報の示す地点を含む地域の地域名がリーフノード以外のノード(このノードを「上位ノード」とする)である階層構造の情報であって、地点と地域の包含関係を示す階層構造の情報である階層構造情報を生成する階層構造情報生成ステップと、表示部が、階層構造情報生成ステップで生成した階層構造情報に含まれるノードに対応する地域名を表示する地域名表示ステップと、選択受付部が、地域名表示ステップで表示した地域名の選択を受け付ける選択受付ステップと、表示部が、階層構造情報において、選択受付ステップで選択を受け付けた地域名に対する地点情報を表示する地点情報表示ステップと、を備えたものである。
【発明の効果】
【0024】
本発明による地図情報表示装置等によれば、地点情報へのアクセス性を向上させることができる。
【図面の簡単な説明】
【0025】
【図1】本発明の実施の形態1による地図情報表示装置の構成を示すブロック図
【図2】同実施の形態による地図情報表示装置の動作を示すフローチャート
【図3】同実施の形態による地図情報表示装置の動作を示すフローチャート
【図4】同実施の形態による地図情報表示装置の動作を示すフローチャート
【図5】同実施の形態における表示の一例を示す図
【図6】同実施の形態における地点情報の一例を示す図
【図7】同実施の形態における表示の一例を示す図
【図8】同実施の形態における地点対応情報の一例を示す図
【図9】同実施の形態における地域情報の一例を示す図
【図10】同実施の形態における地点情報と地域名との一例を示す図
【図11】同実施の形態における階層構造情報の一例を示す図
【図12】同実施の形態における階層構造情報の一例を示す図
【図13】同実施の形態における階層構造情報の一例を示す図
【図14】同実施の形態における階層構造情報の一例を示す図
【図15】同実施の形態における表示の一例を示す図
【図16】同実施の形態における表示の一例を示す図
【図17】同実施の形態における表示の一例を示す図
【図18】同実施の形態における表示の一例を示す図
【図19】同実施の形態における表示の一例を示す図
【図20】同実施の形態における地域情報の一例を示す図
【図21】同実施の形態におけるコンピュータシステムの外観一例を示す模式図
【図22】同実施の形態におけるコンピュータシステムの構成の一例を示す図
【発明を実施するための形態】
【0026】
以下、本発明による地図情報表示装置について、実施の形態を用いて説明する。なお、以下の実施の形態において、同じ符号を付した構成要素及びステップは同一または相当するものであり、再度の説明を省略することがある。
【0027】
(実施の形態1)
本発明の実施の形態1による地図情報表示装置について、図面を参照しながら説明する。本実施の形態による地図情報表示装置は、地点情報にアクセスするための地域名の階層構造を自動的に生成するものである。
【0028】
図1は、本実施の形態による地図情報表示装置1の構成を示すブロック図である。本実施の形態による地図情報表示装置1は、地図情報記憶部11と、現在位置取得部12と、目的地受付部13と、ルート生成部14と、地点情報受付部15と、蓄積部16と、地点情報記憶部17と、地域情報記憶部18と、受付部19と、階層構造情報生成部20と、選択受付部21と、表示部22とを備える。地図情報表示装置1は、例えば、自動車に装着されるカーナビゲーション装置であってもよく、地図表示機能やナビゲーション機能等を有する携帯電話であってもよく、地図表示機能やナビゲーション機能等を有するPDA(Personal Digital Assistant)であってもよく、PND(Personal Navigation Device)であってもよい。すなわち、地図情報表示装置1は、自動車で用いられるものであってもよく、徒歩や自転車で用いられるものであってもよく、その他の状況で用いられるものであってもよい。
【0029】
地図情報記憶部11では、地図に関する情報である地図情報が記憶される。地図情報は、例えば、地図の画像情報であってもよい。この画像情報は、例えば、ラスタデータ(ビットマップデータ)であってもよく、ベクタデータであってもよい。また、画像情報がラスタデータである場合には、地図情報に、複数の縮尺に対応した画像情報が含まれていてもよい。例えば、同じ地域について、縮尺の大きい画像情報、縮尺の中ぐらいの画像情報、縮尺の小さい画像情報が地図情報に含まれていてもよい。また、地図情報は、タイル状に分割された地図を示すものであり、それらを適宜組み合わせることによって、様々な領域の地図を表示することができるようになっていてもよい。ここで、「地図」は、地形図や、地勢図、地質図、土地利用図、住宅地図、路線図、道路地図、ガイドマップ等であってもよい。地図情報表示装置1がカーナビゲーション装置である場合には、この地図情報は道路地図であってもよい。地図情報表示装置1が徒歩や自転車等で用いられる場合には、この地図情報は歩行者や自転車用の道路地図であってもよい。また、その地図情報は、ルート探索を行うことができるものであってもよい。すなわち、地図情報は、道路の位置を示すものであってもよい。また、その地図情報は、道路の属性(例えば、制限速度や、主要な道路であるのか、脇道であるのかなど)を知ることができるようになっているものであってもよい。また、例えば、この地図情報は、カーナビゲーションで用いられるKIWIフォーマットのものであってもよい。また、「地図」は、地形や道路等が把握可能な航空写真や衛星写真、それらに記号や文字等が記入されたものなどであってもよい。地図情報において、地図の各地点と、座標(位置)との対応を知ることができるようになっているものとする。座標とは、ある基準点を原点とした座標(この座標は、例えば、距離でもよい)であってもよく、緯度・経度であってもよく、その他の位置を識別できる情報であってもよい。地図情報に、その座標そのものが含まれていてもよい。本実施の形態では、座標が緯度・経度である場合について説明する。また、この地図情報には、地名や、山や川などの地形に関する文字情報が含まれていてもよい。また、この地図情報において、北などの特定の方位がどちらであるのかが設定されていてもよい。なお、地図情報は、2次元のオンライン地図や電子地図等として公知であり、その詳細な説明を省略する。
【0030】
地図情報記憶部11に地図情報が記憶される過程は問わない。例えば、記録媒体を介して地図情報が地図情報記憶部11で記憶されるようになってもよく、通信回線等を介して送信された地図情報が地図情報記憶部11で記憶されるようになってもよい。また、地図情報記憶部11での記憶は、RAM等における一時的な記憶でもよく、あるいは、長期的な記憶でもよい。地図情報記憶部11は、所定の記録媒体(例えば、半導体メモリや磁気ディスク、光ディスクなど)によって実現されうる。
【0031】
現在位置取得部12は、地図情報表示装置1の現在位置を取得する。その現在位置の取得は、例えば、GPS(Global Positioning System)を用いてなされてもよく、ジャイロなどの自律航法装置を用いてなされてもよく、その両方を用いることによって互いの欠点を補うようにしてもよい。なお、現在位置の取得方法は、これらに限定されないことは言うまでもない。例えば、携帯電話の最寄りの基地局を利用した現在位置の取得等を行ってもよい。
【0032】
目的地受付部13は、目的地を受け付ける。この目的地は、後述するルート生成部14におけるルートの生成で用いられる目的地である。なお、この目的地は、例えば、地点名であってもよく、地図上の位置情報(例えば、緯度・経度など)であってもよく、住所であってもよく、目的地を特定できる情報であればその内容を問わない。本実施の形態では、この目的地が地点名である場合について主に説明する。
【0033】
目的地受付部13は、例えば、入力デバイス(例えば、キーボードやマウス、タッチパネルなど)から入力された目的地を受け付けてもよく、有線もしくは無線の通信回線を介して送信された目的地を受信してもよく、所定の記録媒体(例えば、光ディスクや磁気ディスク、半導体メモリなど)から読み出された目的地を受け付けてもよい。なお、目的地受付部13は、受け付けを行うためのデバイス(例えば、モデムやネットワークカードなど)を含んでもよく、あるいは含まなくてもよい。また、目的地受付部13は、ハードウェアによって実現されてもよく、あるいは所定のデバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
【0034】
ルート生成部14は、現在位置取得部12が取得した現在位置である出発地から、目的地受付部13が受け付けた目的地までのルートを生成する。ルート生成部14は、そのルートの生成において、地図情報記憶部11で記憶されている地図情報を用いるものとする。ルート生成部14が生成したルートの情報は、例えば、始点から終点までのルートを構成する多数の点の位置を示す情報であってもよい。
【0035】
ここで、ルート生成部14が現在位置を始点として、目的地を終点とするルートを生成する方法について簡単に説明する。ルート生成部14は、現在位置と目的地との2個の位置にそれぞれ対応する座標(例えば、緯度・経度等)を取得し、その取得した2個の座標の間のルート探索を行う。具体的には、ルート生成部14は、通常、地図情報を用いて、始点から終点までのルートのスコアが最小となるようにルートを決定する。その経路探索において、例えば、ダイクストラ法を用いてもよく、A*アルゴリズムを用いてもよく、ベルマン−フォード法を用いてもよく、ワーシャル−フロイド法を用いてもよく、その他のアルゴリズムを用いてもよい。
【0036】
なお、ダイクストラ法は、始点から放射状に距離の短い順に距離を計算しながら最短ルートをチェックしていく方法である。また、ダイクストラ法は、目的地へたどり着いた時点でその経路が最短ルートとなるアルゴリズムである。さらに、ダイクストラ法において、必要なメモリ量と処理時間が、リンクやノードの数に比例して増加する。なお、ノードとは、地図上の地点のことである。リンクとは、ノードとノードを接続する線である(参考:インターネット<URL:http://www.deqnotes.net/acmicpc/dijkstra/>)。
【0037】
また、A*アルゴリズムは、各頂点nからゴールまでの距離の推定値h*(n)を知っていた場合に対して、最短経路問題を効率的に解くアルゴリズムである。A*アルゴリズムは、ダイクストラ法に予測距離を加えた考えで、ダイクストラ法に比べて目的地までの到達ステップが短くなる。また、A*アルゴリズムにおいて、予測距離が含まれるため、目的地へたどり着いた時点でその経路が最短ルートとならない可能性がある。また、A*アルゴリズムにおいて、目的地までたどり着くことを優先させ、メモリ容量と処理時間を抑えることができる(参考:インターネット<URL:http://ja.wikipedia.org/wiki/A*%E3%82%A2%E3%83%AB%E3%82%B4%E3%83%AA%E3%82%BA%E3%83%A0>)。なお、ルート生成部14がルート探索を行うために必要な情報は、地図情報記憶部11で記憶されているものとする。
【0038】
このルート画像の生成は、すでに公知であり、その詳細な説明を省略する。例えば、オンラインマップにおいて、始点の緯度・経度と、終点の緯度・経度を入力すると、その始点から終点までのルートが表示されるものがある(例えば、「http://maps.google.co.jp/maps」等を参照のこと)。
【0039】
地点情報受付部15は、地点情報を受け付ける。この地点情報は、ユーザによって入力されたものである。例えば、ユーザがお気に入りの地点を登録する場合には、この地点情報受付部が、そのお気に入りの地点を示す地点情報を受け付けることになる。地点情報については後述する。地点情報受付部15による地点情報の受け付けは、地図情報表示装置1の外部から地点情報を受け付けることであってもよく、地図情報表示装置1において保持されている複数の地点情報から、いずれかの地点情報の選択を受け付けることであってもよい。後者の場合には、選択された地点情報が受け付けられたことになる。
【0040】
地点情報受付部15は、例えば、入力デバイス(例えば、キーボードやマウス、タッチパネルなど)から入力された地点情報を受け付けてもよく、有線もしくは無線の通信回線を介して送信された地点情報を受信してもよく、所定の記録媒体(例えば、光ディスクや磁気ディスク、半導体メモリなど)から読み出された地点情報を受け付けてもよい。なお、地点情報受付部15は、受け付けを行うためのデバイス(例えば、モデムやネットワークカードなど)を含んでもよく、あるいは含まなくてもよい。また、地点情報受付部15は、ハードウェアによって実現されてもよく、あるいは所定のデバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
【0041】
蓄積部16は、目的地受付部13が受け付けた目的地である地点を示す地点情報を、後述する地点情報記憶部17に蓄積する。また、蓄積部16は、地点情報受付部15が受け付けた地点情報を、後述する地点情報記憶部17に蓄積する。
【0042】
地点情報記憶部17では、2以上の地点情報が記憶される。地点情報は、地図情報に含まれる地点を示す情報であり、例えば、地点名であってもよく、地図上の位置情報(例えば、緯度・経度など)であってもよく、住所であってもよく、地点を特定できる情報であればその内容を問わない。また、地点情報は、年月日を示す情報である年月日情報をも含んでもよい。その年月日情報によって示される年月日は、例えば、目的地受付部13において目的地が受け付けられた時点の年月日であってもよく、地点情報受付部15において地点情報が受け付けられた時点の年月日であってもよく、地点情報が蓄積される時点の年月日であってもよい。また、年月日情報は、目的地や地点情報と共に受け付けられたものであってもよい。また、年月日情報は、時刻を示す情報を有してもよい。このように、目的地受付部13が受け付けた目的地や、地点情報受付部15が受け付けた地点情報と、地点情報記憶部17で記憶される地点情報とは、厳密には異なるものであってもよい。すなわち、前者は年月日情報を有しないものであり、後者は年月日情報を有するものであってもよい。なお、目的地受付部13等が年月日情報と共に目的地等を受け付ける場合には、目的地受付部13が受け付けた目的地や、地点情報受付部15が受け付けた地点情報と、地点情報記憶部17で記憶される地点情報とが同じであってもよい。その年月日情報は、例えば、蓄積部16が地点情報を蓄積する際に、図示しないカレンダー部や時計部から年月日等を取得して、地点情報に付加したものであってもよい。また、この地点情報は、その地点情報の示す地点を含む地域の名称である地域名を有する情報であってもよい。例えば、地点情報は、地点名「神戸空港」を有すると共に、その神戸空港を含む地域の地域名「兵庫県神戸市中央区」を有してもよい。なお、その地域名は、「兵庫県」「神戸市」「中央区」というように分かれていてもよい。本実施の形態では、この地点情報が地点名である場合について主に説明する。
【0043】
本実施の形態では、前述の蓄積部16によって、地点情報が地点情報記憶部17に蓄積されることになる。地点情報記憶部17での記憶は、RAM等における一時的な記憶でもよく、あるいは、長期的な記憶でもよい。地点情報記憶部17は、所定の記録媒体(例えば、半導体メモリや磁気ディスク、光ディスクなど)によって実現されうる。
【0044】
地域情報記憶部18では、地域情報が記憶される。地域情報は、地点と、その地点を含む地域の名称である地域名との関係を示す情報である。この地域情報は、地点情報から、その地点情報の示す地点を含む地域名(1個の地域名であってもよく、階層的な2個以上の地域名であってもよい)を特定できる情報であれば、その構造を問わない。例えば、地域情報は、1個以上の地域名(例えば、1個の地域名「兵庫県」のみ、あるいは、2個以上の階層的な地域名「兵庫県」「神戸市」「中央区」)と、その地域名(階層的な地域名である場合には、最も狭い範囲の地域名)の地域に含まれる地点を示す情報とを対応付けたものであってもよい。地域に含まれる地点を示す情報は、直接的に地点を示す情報であってもよく、間接的に地点を示す情報であってもよい。前者の場合には、地域に含まれる地点を示す情報は、例えば、地点名そのものを含む情報であってもよい。この場合には、通常、地域に含まれる地点を示す情報は、2以上の地点名を含んでいる。そして、地点情報の示す地点の地点名が、その情報に含まれるかどうか判断することによって、地点が地域に含まれるかどうかを判断することができる。また、地域に含まれる地点を示す情報が間接的に地点を示す情報である場合には、その情報は、その地域の範囲を示す情報であってもよい。地域の範囲を示す情報は、例えば、その地域の輪郭の座標(例えば、緯度・経度等)を示す情報であってもよい。この場合には、地点情報の示す地点を、必要であれば、緯度・経度等の座標に変換し、その地点に対応した座標が、その地域の範囲に含まれるかどうか判断することによって、地点が地域に含まれるかどうかを判断することができる。
【0045】
地域情報記憶部18に地域情報が記憶される過程は問わない。例えば、記録媒体を介して地域情報が地域情報記憶部18で記憶されるようになってもよく、通信回線等を介して送信された地域情報が地域情報記憶部18で記憶されるようになってもよく、あるいは、入力デバイスを介して入力された地域情報が地域情報記憶部18で記憶されるようになってもよい。地域情報記憶部18での記憶は、RAM等における一時的な記憶でもよく、あるいは、長期的な記憶でもよい。地域情報記憶部18は、所定の記録媒体(例えば、半導体メモリや磁気ディスク、光ディスクなど)によって実現されうる。
【0046】
受付部19は、地図情報表示装置1における入力を受け付けるものである。受付部19が受け付ける入力は、例えば、地点情報の表示の指示であってもよく、その他の入力であってもよい。受付部19は、例えば、入力デバイス(例えば、キーボードやマウス、タッチパネルなど)から入力された情報を受け付けてもよく、有線もしくは無線の通信回線を介して送信された情報を受信してもよい。なお、受付部19は、受け付けを行うためのデバイス(例えば、モデムやネットワークカードなど)を含んでもよく、あるいは含まなくてもよい。また、受付部19は、ハードウェアによって実現されてもよく、あるいは所定のデバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
【0047】
階層構造情報生成部20は、地点情報の示す地点と、その地点を含む地域の名称である地域名との関係を取得し、地域名をまとめることによって、階層構造情報を生成する。その階層構造情報は、地点と地域の包含関係を示す階層構造の情報である。また、その階層構造情報は、地点情報の示す地点がリーフノードであり、地点情報の示す地点を含む地域の地域名がリーフノード以外のノードである階層構造の情報である。「リーフノード(Leaf Node)」とは、最下位のノードのことである。また、リーフノード以外のノードのことを、「上位ノード」と呼ぶ。また、最上位のノードのことを「ルートノード(Root Node)」と呼ぶ。なお、この階層構造において、範囲の広い側が上位側となり、範囲の狭い側が下位側となるものとする。したがって、地点情報は最も範囲の狭い情報であるため、最下位のリーフノードとなる。また、最も広域の地域に対応する地域名が、ルートノードとなる。ルートノードは、1個であってもよく、2個以上存在してもよい。階層構造情報の階層構造は、2階層(すなわち、ルートノードの下位のノードがリーフノードである階層構造)であってもよく、3階層以上であってもよい。すなわち、階層構造情報には、地域と地域との包含関係を示す階層構造の情報が含まれていてもよい。
【0048】
例えば、地点情報に、地点情報の示す地点と、その地点を含む地域の地域名とが含まれている場合には、階層構造情報生成部20は、階層構造情報の生成で用いられる、地点と地域名との関係を、その地点情報から取得することができる。すなわち、階層構造情報生成部20は、地点情報から、地点情報の示す地点と、その地点を含む地域の名称である地域名との関係を取得することができる。なお、地点と地域名との関係とは、地点と地域名との対応関係のことであり、地点に対応する地域名を知ることができればよい。なお、地点に対応する地域名は、その地点を含む地域の地域名である。
【0049】
一方、例えば、地点情報に、そのような情報が含まれていない場合には、階層構造情報生成部20は、地点情報の示す地点に対応する地域情報を用いることによって、地点情報の示す地点と、その地点を含む地域の名称である地域名との関係を取得することができる。具体的には、階層構造情報生成部20は、地域情報に含まれる、地域に含まれる地点を示す情報を用いることによって、地点情報の示す地点が含まれる、地域に含まれる地点を示す情報を特定する。そして、階層構造情報生成部20は、その特定した情報に対応した地域名を取得することによって、地点と地域名との関係を取得することができる。地域に含まれる地点を示す情報が地点名を含む情報である場合には、地域に含まれる地点を示す情報の特定において、階層構造情報生成部20は、地点名を検索キーとして検索を行い、その検索でヒットした地点名を含む情報を特定すればよいことになる。地域に含まれる地点を示す情報が地域の範囲を示す情報である場合には、地域に含まれる地点を示す情報の特定において、階層構造情報生成部20は、地点に対応する座標を取得し、その取得した座標が、各範囲に含まれるかどうか判断し、その座標を含む範囲を示す情報である、地域に含まれる地点を示す情報を特定すればよいことになる。
【0050】
また、階層構造情報生成部20は、地点情報の示す地点と、その地点を含む地域の名称である地域名であって、包含関係にある2以上の地域の地域名との関係を取得するものであり、下限のしきい値である下限しきい値よりも多い数の地点情報を含む地域の地域名がリーフノードの親ノードとなるように階層構造情報を生成してもよい。このようにすることによって、少しの地点情報のみを含む地域の地域名が、階層構造情報における上位ノードとなることを防止することができる。例えば、上位ノード「神戸市」の下位ノードであり、リーフノードの親ノードである「中央区」「北区」「灘区」…のそれぞれが、2個程度の地点情報を含むだけである場合には、地域名「中央区」「北区」「灘区」…を介することによって、不用に階層化されているだけであり、各地点情報へのアクセス性が悪いことになる。したがって、そのような場合には、地域名「神戸市」をリーフノードの親ノードとすることによって、地域名「神戸市」から直接、各地点情報にアクセスできるようになり、そのアクセス性が向上することになる。
【0051】
また、階層構造情報生成部20は、地点情報の示す地点と、地点を含む地域の名称である地域名であって、包含関係にある2以上の地域の地域名との関係を取得するものであり、上限のしきい値である上限しきい値よりも少ない数の地点情報を含む地域の地域名がルートノードとなるように階層構造情報を生成してもよい。このようにすることによって、あまりにも多くの地点情報を含む地域の地域名が、階層構造情報におけるルートノードとなることを防止することができる。したがって、無用に階層が深くなる事態を回避でき、地点情報へのアクセス性が向上されることになる。例えば、ルートノード「神戸市」に対応する地点情報の数が100個である場合には、たとえ地域名「神戸市」を選択したとしても、地点情報を絞り込んだことにはならない。したがって、そのような場合には、ルートノードを、地域名「神戸市」よりも下位の地域名「中央区」「北区」「灘区」…とすることによって、ルートノードを選択することによって、地点情報を効率的に絞り込むことができるようになり、地点情報へのアクセス性が向上されることになる。なお、上限しきい値は、通常、下限しきい値よりも大きい値である。
【0052】
また、後述する表示部22において、階層構造情報に含まれる地域名がリスト表示される場合に、階層構造情報生成部20は、階層構造情報に含まれる地域名を、地域名に対応する地域が含む地点情報の数でソートした階層構造情報を生成してもよい。そのソートは、地域名に対応する地域が含む地点情報の数の降順となるようにソートすることが好適である。すなわち、地域名に対応する地域が含む地点情報の数が多いほど、その地域名が選択しやすい場所に表示されるようになることが好適である。
【0053】
また、後述する表示部22において、階層構造情報に含まれる地域名がリスト表示される場合であって、地点情報が年月日情報を含む場合に、階層構造情報生成部20は、階層構造情報に含まれる地点情報を、その地点情報が含む年月日情報でソートした階層構造情報を生成してもよい。そのソートは、地点情報が含む年月日情報の降順となるようにソートすることが好適である。すなわち、地点情報に対応する年月日が新しいほど、その地点情報が選択しやすい場所に表示されるようになることが好適である。
【0054】
選択受付部21は、後述する表示部22が表示した地域名の選択を受け付ける。また、選択受付部21は、表示部22が表示した地点情報の選択を受け付けてもよい。この選択の受け付けは、例えば、地域名や地点情報そのもの、あるいは、その地域名に対応するオブジェクト等をタッチパネル上でタップすることであってもよく、マウス等のポインティングデバイスでクリックすることであってもよく、地域名等に対応する数字をキーボードなどから入力することであってもよく、その他の方法による選択の受け付けであってもよい。選択受付部21は、例えば、入力デバイス(例えば、キーボードやマウス、タッチパネルなど)から入力された情報を受け付けてもよく、有線もしくは無線の通信回線を介して送信された情報を受信してもよい。なお、選択受付部21は、受け付けを行うためのデバイス(例えば、モデムやネットワークカードなど)を含んでもよく、あるいは含まなくてもよい。また、選択受付部21は、ハードウェアによって実現されてもよく、あるいは所定のデバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
【0055】
表示部22は、地図情報を表示する。また、表示部22は、現在位置取得部12が取得した現在位置に応じた地図情報を地図情報記憶部11から読み出して表示してもよい。また、その表示の際には、表示部22は、表示対象となる領域の地図情報のみを地図情報記憶部11から読み出して表示するものとする。地図情報を表示するとは、地図情報における地図の画像を表示することである。なお、その地図の画像には、地名や、北を示す方位図形、縮尺を示す縮尺表示等が表示されてもよい。また、表示部22は、地図情報表示装置1の位置を示すマークを地図上に表示してもよい。地図情報表示装置1がカーナビゲーション装置である場合には、そのカーナビゲーション装置が装着されている自動車の位置を示すマークが地図情報に表示されてもよい。また、表示部22は、ルート生成部14が生成したルートを表示してもよい。
【0056】
また、表示部22は、階層構造情報生成部20が生成した階層構造情報に含まれるノードに対応する地域名または地点情報を表示する。また、表示部22は、階層構造情報において、選択受付部21が選択を受け付けた地域名に対する子ノードの情報をも表示する。その「子ノードの情報」とは、その子ノードが地域名であれば地域名となり、地点情報であれば地点情報となる。その階層構造情報の表示において、表示部22は、次のように表示を行ってもよい。表示部22は、はじめにルートノードの地域名を表示し、次に選択受付部21が選択を受け付けた地域名のルートノードに対する子ノードの情報を表示する。そして、この親ノード(地域名)の選択が受け付けられた場合に、その親ノードに対する子ノード(地域名または地点情報)の情報を表示する処理を、子ノードである地点情報を表示するまで繰り返す。すなわち、表示部22は、ルートノードからリーフノードまでを選択に応じて順次、表示していくことになる。
【0057】
なお、表示部22は、階層構造情報に含まれる地域名をリスト表示(例えば、プルダウンメニューやプルアップメニュー、スライドメニュー、折りたたみメニュー等のメニュー表示であってもよく、その他のリスト表示であってもよい)するものであってもよく、階層構造情報に含まれる地域名をフォルダ名として表示するもの(この場合には、地域名の選択は、その地域名がフォルダ名であるフォルダを開けることであってもよい。そのフォルダを開けると、そのフォルダよりも下位の地域名のフォルダを見ることができるようになってもよい。)であってもよく、階層構造情報に含まれる地域名を地図上に表示するもの(この場合には、地域名の選択は、例えば、地域名に応じた地図上の領域の選択であってもよく、その領域に対応付けられた地域名の表示の位置の選択であってもよい。地域名が選択されると、その選択された地域名に対応する地域の地図が拡大表示され、さらに地域名や地点情報が選択できるようになっていることが好適である。)であってもよく、その他の表示を行うものであってもよい。
【0058】
なお、表示部22は、それらの表示を行う表示デバイス(例えば、CRTや液晶ディスプレイなど)を含んでもよく、あるいは含まなくてもよい。また、地図情報等の表示は、地図情報表示装置1と別の装置においてなされてもよい。その場合には、表示部22は、地図情報表示装置1の外部に対して地図情報等を表示するために送信するものであってもよい。また、表示部22は、ハードウェアによって実現されてもよく、あるいは表示デバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
【0059】
なお、地図情報記憶部11と、地点情報記憶部17と、地域情報記憶部18とのうちの任意の2以上の記憶部は、同一の記録媒体によって実現されてもよく、あるいは、別々の記録媒体によって実現されてもよい。前者の場合には、例えば、地図情報を記憶している領域が地図情報記憶部11となり、地点情報を記憶している領域が地点情報記憶部17となる。
【0060】
次に、本実施の形態による地図情報表示装置1の動作について、図2、図3のフローチャートを用いて説明する。
(ステップS101)現在位置取得部12は、新たな現在位置を取得したかどうか判断する。そして、新たな現在位置を取得した場合には、ステップS102に進み、そうでない場合には、ステップS103に進む。現在位置取得部12は、例えば、新たな現在位置を取得したと判断した場合に、その現在位置を図示しない記録媒体において一時的に記憶しておき、最新の現在位置がその一時的に記憶している現在位置と異なる場合に、新たな現在位置を取得したと判断して、その新たな現在位置を図示しない記録媒体に上書きで蓄積してもよい。
【0061】
(ステップS102)表示部22は、現在位置取得部12が取得した新たな現在位置に対応する地図情報を地図情報記憶部11から読み出して表示する。そして、ステップS101に戻る。なお、表示部22は、その表示対象の地図情報において、現在位置を示すマーク等を表示するようにしてもよい。また、ルートのガイドをしている場合には、表示部22は、「次の交差点を右に曲がります」といったようなガイドを表示してもよい。また、そのガイドを音声出力するカーナビゲーション装置の場合には、そのガイドの音声を生成してスピーカに音声出力するガイド音声出力部(図示せず)を地図情報表示装置1が備えていてもよい。
【0062】
(ステップS103)目的地受付部13は、目的地を受け付けたかどうか判断する。そして、目的地を受け付けた場合には、ステップS104に進み、そうでない場合には、ステップS107に進む。
【0063】
(ステップS104)蓄積部16は、目的地受付部13が受け付けた目的地である地点情報を、地点情報記憶部17に蓄積する。なお、その蓄積の際に、蓄積部16は、図示しないカレンダー部等から年月日情報を受け取り、その年月日情報を地点情報に含めて蓄積してもよい。
【0064】
(ステップS105)ルート生成部14は、現在位置取得部12が取得した現在位置である出発地から、目的地受付部13が受け付けた目的地までのルートを生成する。その生成されたルートは、図示しない記録媒体において一時的に記憶されてもよい。
【0065】
(ステップS106)表示部22は、ルート生成部14が生成したルートを表示する。そして、ステップS101に戻る。なお、ルートの表示は、現在位置の近辺に関する地図上でのルートの表示であってもよい。その場合には、地図情報表示装置1が出発地から目的地に移動するに従って、徐々にそのルートの異なる部分が表示されていくことになる。
【0066】
(ステップS107)地点情報受付部15は、地点情報を受け付けたかどうか判断する。そして、地点情報を受け付けた場合には、ステップS108に進み、そうでない場合には、ステップS109に進む。
【0067】
(ステップS108)蓄積部16は、地点情報受付部15が受け付けた地点情報を地点情報記憶部17に蓄積する。なお、その蓄積の際に、蓄積部16は、図示しないカレンダー部等から年月日情報を受け取り、その年月日情報を地点情報に含めて蓄積してもよい。そして、ステップS101に戻る。
【0068】
(ステップS109)階層構造情報生成部20は、地点情報の表示を行うかどうか判断する。そして、地点情報の表示を行う場合には、ステップS110に進み、そうでない場合には、ステップS101に戻る。なお、階層構造情報生成部20は、例えば、受付部19が地点情報の表示を行う旨の指示を受け付けた場合に、地点情報の表示を行うと判断してもよく、あるいは、その他のタイミングで地点情報の表示を行うと判断してもよい。
【0069】
(ステップS110)階層構造情報生成部20は、階層構造情報を生成する。この処理の詳細については、図4のフローチャートを用いて後述する。なお、この生成された階層構造情報は、図示しない記録媒体において記憶されてもよい。
【0070】
(ステップS111)表示部22は、階層構造情報生成部20が生成した階層構造情報のルートノードの地域名を表示する。
【0071】
(ステップS112)選択受付部21は、表示中の地域名や地点情報の選択を受け付けたかどうか判断する。そして、受け付けた場合には、ステップS113に進み、そうでない場合には、ステップS114に進む。
【0072】
(ステップS113)表示部22は、選択された地域名の下位のノードの情報、例えば、選択された地域名の下位の地域名や、選択された地域名の下位の地点情報を表示する。そして、ステップS112に戻る。なお、ステップS112において、地点情報の選択が受け付けられた場合には、表示部22は、その選択された地点情報の詳細な情報を表示してもよい。
【0073】
(ステップS114)階層構造情報生成部20は、地点情報の表示を終了するかどうか判断する。そして、終了する場合には、ステップS101に戻り、そうでない場合には、ステップS112に戻る。なお、階層構造情報生成部20は、例えば、受付部19が地点情報の表示を終了する旨の指示を受け付けた場合に、地点情報の表示を終了すると判断してもよく、あるいは、その他のタイミングで地点情報の表示を終了すると判断してもよい。
【0074】
なお、図2、図3のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。また、図2、図3のフローチャートでは、地点情報を表示するタイミングで、階層構造情報を生成する場合について説明したが、そうでなくてもよい。例えば、階層構造情報をあらかじめ生成して記憶しておき、地点情報を表示する際には、そのあらかじめ記憶されている階層構造情報を用いるようにしてもよい。
【0075】
図4は、図3のフローチャートにおける階層構造情報の生成の処理(ステップS110)の詳細を示すフローチャートである。なお、図4のフローチャートは、階層構造情報を生成する一つの具体例に過ぎないものであり、それ以外の方法によって階層構造情報を生成してもよいことは言うまでもない。また、図4のフローチャートでは、地点情報に地域名が含まれていない場合について説明する。
【0076】
(ステップS201)階層構造情報生成部20は、地点情報記憶部17から、地点情報を全て読み出す。
【0077】
(ステップS202)階層構造情報生成部20は、地域情報記憶部18で記憶されている地域情報を用いることによって、ステップS201で読み出した各地点情報に対応する地域名を特定する。各地点情報に対応する地域名とは、各地点情報の示す地点を包含する地域の名称のことである。この処理を行うことにより、地点情報と、1以上の地域名とが対応付けられることになる。地域名を特定するとは、例えば、その特定の対象となる地域名を、地点情報に対応付けて蓄積することであってもよい。
【0078】
(ステップS203)階層構造情報生成部20は、ステップS202で得られた、地点情報と、1以上の地域名との関係において、重複する地域名をまとめることによって、階層構造情報を生成する。この階層構造情報は、ルートノードが最も広い地域名となり、リーフノードが地点情報となり、地点や地域、あるいは、地域と地域の包含関係を示す情報である。この階層構造は、例えば、ツリー構造であってもよい。なお、地域名をまとめる処理は、例えば、地域名に関してユニーク処理を行うことによって実現できる。その地域名に関するユニーク処理においては、そのユニーク処理の対象となる地域名と、その地域名の子ノードである地域名または地点情報とのリンク関係は保持されるものとする。すなわち、このユニーク処理を行うことによって、ルートノードからリーフノードまでの枝分かれのない直線的な複数の関係が、ツリー構造に変更されることになる。また、この段階でも、階層構造情報は生成されているが、以下のステップS204〜S211の処理を実行することによって、より適切な階層構造情報に変更していくことになる。この段階での階層構造情報において、一のルートノードを有するツリー構造を一の階層構造と呼ぶことにする。
【0079】
(ステップS204)階層構造情報生成部20は、カウンタiを1に設定する。
【0080】
(ステップS205)階層構造情報生成部20は、i番目の階層構造に関して、地点情報の数が下限しきい値以下である、リーフノードの親ノードが存在するかどうか判断する。また、その判断結果が「Yes」である場合に、階層構造情報生成部20は、その親ノードのさらに上位の親ノードに対応する地点情報の数が、あるしきい値(このしきい値を「中間しきい値」と呼ぶことにする)以下であるかどうか判断する。そして、この判断結果も「Yes」である場合には、ステップS206に進み、そうでない場合(いずれか一方の判断で「No」である場合)には、ステップS207に進む。なお、あるノードの地点情報の数とは、そのノードに対応する地域名の地域が含む地点情報の数である。すなわち、あるノードの地点情報の数とは、階層構造情報において、そのノードの直接の下位(すなわち、子ノード)または間接の下位(すなわち、孫ノードなど)である地点情報の数である。また、中間しきい値は、上限しきい値以下であり、下限しきい値よりも大きいことが一般的である。すなわち、通常、上限しきい値≧中間しきい値>下限しきい値の関係が成り立つ。
【0081】
(ステップS206)階層構造情報生成部20は、ステップS205において、地点情報の数が下限しきい値以下であると判断されたリーフノードの親ノードに対する親ノード(この親ノードを、リーフノードに対する「祖父ノード」と呼ぶこともある)が、その祖父ノードよりも下位に存在する地点情報の親ノードとなるように、リーフノードの親ノードを統合する。例えば、祖父ノードの子ノードであって、地点情報のノードではないノードを削除し、祖父ノードと地点情報とが親子関係になるようにすることによって、その統合を行うことができる。なお、親子関係は変更せず、祖父ノードの子ノードであって、地点情報のノードではないノードの地域名を削除するだけであってもよい。そして、ステップS205に戻る。
【0082】
(ステップS207)階層構造情報生成部20は、i番目の階層構造に関して、地点情報の数が上限しきい値以上であるルートノードが存在するかどうか判断する。なお、ステップS208において、ルートノードの子ノードがルートノードとされた場合には、i番目の階層構造において、2以上のツリー構造が存在することになる。その場合には、各ツリー構造(階層構造)について、この判断を行うものとする。また、その判断結果が「Yes」である場合に、階層構造情報生成部20は、そのルートノードの子ノードが地域名のノードであるかどうか(すなわち、その子ノードがリーフノードでないかどうか)判断する。そして、この判断結果も「Yes」である場合には、ステップS208に進み、そうでない場合(いずれか一方の判断で「No」である場合)には、ステップS209に進む。
【0083】
(ステップS208)階層構造情報生成部20は、ステップS207において、地点情報の数が上限しきい値以上であると判断されたルートノードの1以上の子ノードをそれぞれルートノードとするように、i番目の階層構造を分割する。例えば、地点情報の数が上限しきい値以上であると判断されたルートノードと、そのルートノードに対する1以上の子ノードとの親子関係を無くして、そのルートノードを削除することによって、その分割を行うことができる。なお、親子関係はそのままにしておき、ルートノードの地域名を削除するだけであってもよい。そして、ステップS207に戻る。
【0084】
(ステップS209)階層構造情報生成部20は、カウンタiを1だけインクリメントする。
【0085】
(ステップS210)階層構造情報生成部20は、ステップS203で生成した階層構造において、i番目の階層構造が存在するかどうか判断する。そして、存在する場合には、ステップS205に戻り、そうでない場合には、ステップS211に進む。
【0086】
(ステップS211)階層構造情報生成部20は、各階層構造について、上位ノードを、そのノードが含む地点情報の数に応じてソートし、リーフノードを、そのリーフノードに対応する地点情報が含む年月日情報に応じてソートする。このソート後の階層構造情報が、最終的に生成された階層構造情報となる。そして、図3のフローチャートに戻る。
【0087】
なお、図4のフローチャートにおいて、表示部22が地域名をリスト表示しない場合には、ステップS211のソートの処理を行わなくてもよい。また、リーフノードの親ノードの統合や、ルートノードの変更等を行わない場合には、ステップS204〜S210の処理を省略してもよい。また、図4のフローチャートでは、最後にソートを行う場合について説明したが、そうでなくてもよい。ステップS203の処理の直後に、ソートの処理を行ってもよい。また、図4のフローチャートでは、下位側のノードの統合を行った後に、ルートノードの分割を行う場合について説明したが、この順序は逆であってもよい。すなわち、ステップS204からステップS207に進み、ステップS207のNoからステップS205に進み、ステップS205のNoからステップS209に進むようにしてもよい。その場合には、ステップS205において、リーフノードの祖父ノードがルートノードである場合には、Noの方に進むようにしてもよい。
【0088】
次に、本実施の形態による地図情報表示装置1の動作について、具体例を用いて説明する。この具体例において、地図情報表示装置1は、カーナビゲーション装置であって、自動車に装着されているものとする。
【0089】
ユーザが自動車で走行中に地図情報表示装置1を動作させていたとする。すると、現在位置取得部12は、自動車の走行に合わせて最新の現在位置を取得し(ステップS101)、表示部22は、それに応じて表示対象の地図情報を更新して表示する(ステップS102)。その後、ユーザが、画面下の「メインメニュー」ボタンを押して(タップして)、メインメニューを表示させ、そのメインメニューから目的地入力を選択したとする。すると、目的地入力画面が表示される。その目的地入力画面において、ユーザが図5で示されるように、「こうべくうこう」を入力し、「決定」ボタンを押したとする。すると、目的地受付部13は、「こうべくうこう」に対応する目的地「神戸空港」を受け付け、その目的地を蓄積部16と、ルート生成部14とに渡す(ステップS103)。蓄積部16は、目的地「神戸空港」を受け取ると、図示しないカレンダー部からその時点の年月日情報「2009年11月23日」を取得する。そして、その年月日情報と、目的地である地点名「神戸空港」とを含む地点情報を構成し、その地点情報を地点情報記憶部17に蓄積する(ステップS104)。図6は、そのようにして蓄積された地点情報の一例を示す図である。図6の地点情報において、地点名と年月日情報とが対応付けられている。図6において、一のレコードが、一の地点情報に対応している。なお、地点情報に、地点名に対応する位置情報(例えば、緯度・経度等)が含まれてもよい。
【0090】
また、ルート生成部14は、目的地受付部13から目的地「神戸空港」を受け取ると、現在位置取得部12から出発地である現在位置を受け取り、それらの出発地と目的地とを用いてルートを生成する(ステップS105)。そのルートの生成の際に、地図情報記憶部11で記憶されている地図情報が参照されるものとする。生成されたルートは、図示しない記録媒体に記憶され、表示部22によって表示される(ステップS106)。図7は、そのようにして表示されたルートつきの地図の一例を示す図である。なお、図7において、生成されたルートを用いたナビゲーションの情報、例えば、「500メートル先の信号を右折してください」等が画面に表示されてもよく、あるいは、音声出力されてもよいことは、公知のナビゲーション装置と同様である。
【0091】
その後、ユーザが自動車で走行中に、画面左下の「地点情報の表示」ボタンを指で押したとする。すると、受付部19は、地点情報の表示の指示が受け付けられたと判断し(ステップS109)、その指示を階層構造情報生成部20に渡す。そして、階層構造情報生成部20は、階層構造情報を生成する処理を行う(ステップS110)。具体的には、まず、階層構造情報生成部20は、地点情報記憶部17から、図6で示される地点情報を読み出して、図示しない記録媒体に一時的に記憶する(ステップS201)。そして、階層構造情報生成部20は、各地点名に対応する位置情報を、図8で示される地点名対応情報を用いて取得し、その取得した位置情報を、地点情報の地点名に対応付けて蓄積する。図8の地点名対応情報は、地点名と、その地点名に対応する位置を示す情報である位置情報とを有する情報である。その位置情報は、通常、ある一点の位置を示す情報(例えば、緯度・経度であってもよく、その他の位置を示す情報であってもよい)であるが、場合によっては、微小な範囲(例えば、10メートル四方や20メートル四方等)の領域を示す情報(すなわち、施設等の領域を示す情報)であってもよい。地点名は、例えば、施設名であってもよく、名所や旧跡の名称であってもよく、住所であってもよく、その他の地点に関する名称であってもよい。階層構造情報生成部20は、地点情報に含まれる地点名を検索キーとして図8の地点名対応情報を検索し、ヒットした地点名対応情報(レコード)から、位置情報を取得することによって、地点名に対応する位置情報を取得することができる。階層構造情報生成部20は、そのようにして取得した地点名に対応する位置情報を用いて、各地点情報に対応する地域名を特定する処理を行う(ステップS202)。
【0092】
ここで、地域情報記憶部18では、図9で示される地域情報が記憶されているものとする。図9の地域情報は、階層関係にある複数の地域名と、その地域名の地域に対応する地点を示す情報である地点範囲情報とを対応付けた情報である。なお、地域名(N)において、Nの値が小さいほど、上位の地域名となる。例えば、地域名「東北・北海道」には、地域名「北海度」「岩手県」…が含まれる。また、地域名「北海道」には、地域名「札幌市」「旭川市」…が含まれる。また、地域名「札幌市」には、地域名「中央区」「北区」…が含まれる。また、地点範囲情報は、地域の輪郭の座標を示す情報である。例えば、北海道札幌市中央区の範囲は、(X101,Y101)、(X102,Y102)、…の各位置情報で囲われるところとなる。
【0093】
各地点情報に対応する地域名を特定する処理では、階層構造情報生成部20は、一の地点情報について、その地点情報に含まれる地点名に対応する位置情報が含まれる地点範囲情報を特定する。そして、階層構造情報生成部20は、その特定した地点範囲情報に対応する地域名(1)〜地域名(4)を取得する。例えば、地点名「神戸空港」を有する地点情報の場合には、その地点名に対応する位置情報(X1002,Y1002)が含まれる地点範囲情報の特定を行う。ここでは、位置情報(X1002,Y1002)を含む地点範囲情報として、地点範囲情報(X701,Y701)、(X702,Y702)、…が特定されたとする。すると、階層構造情報生成部20は、その地点範囲情報に対応する地域名(1)〜地域名(4)である「近畿」「兵庫県」「神戸市」「中央区」を取得して、地点名「神戸空港」を有する地点情報に対応付けて蓄積する。そのようにして蓄積された情報が、図10の1番目のレコードである。この後、階層構造情報生成部20は、このような処理を、取得したすべての地点情報について行う。その結果、図示しない記録媒体で記憶される地点情報等の情報は、図10で示されるようになったとする。なお、図10において、「−」である箇所は、その情報が存在しないことを示している。例えば、明石市の場合には、地域名(3)の地域名「明石市」の子ノードが、地点情報「明石市立天文科学館」となる。
【0094】
階層構造情報生成部20は、図10の情報について、上位の地域名から順番にユニーク処理を行うことによって、地域名をまとめていく(ステップS203)。すなわち、まず、階層構造情報生成部20は、図10の各レコードを、地域名(1)についてソートし、その地域名(1)のユニーク処理を行う。次に、階層構造情報生成部20は、図10の各レコードを、地域名(1)ごとに、地域名(2)についてソートして、ユニーク処理を行う。さらに、階層構造情報生成部20は、図10の各レコードを、地点名(2)ごとに、地点名(3)についてソートし、ユニーク処理を行う。最後に、階層構造情報生成部20は、図10の各レコードを、地点名(3)ごとに、地点名(4)についてソートし、ユニーク処理を行う。その結果、図10の情報が、図11で示されるようになる。なお、地点名のユニーク処理とは、地点名と地点情報(図10,図11の「地点名」と「年月日情報」)のリンク関係を変更することであってもよい。例えば、地点名(1)の場合には、ユニーク処理を行うことによって、一の地点名「近畿」に、図10の2番目以降の地点情報が対応付けられるように、リンク関係を変更することであってもよい。下位の地点名についても同様である。図11が、図4のステップS203の処理が終了した時点での階層構造情報である。この後、階層構造情報生成部20は、ノードの統合や、ルートノードの分割等を行う。ここからの説明は、図12のツリー構造を示す図を用いて行う。なお、図11と、図12とは、階層構造の表現形式が異なるだけであり、情報の内容は実質的に同じである。図12において、左右の端が円弧である図形は、地域名に対応するノードである。また、矩形の図形は、地点情報に対応するノードである。各ノードに記載されている文字は、地域名または地点名である。また、各ノードの右上の数字は、そのノードに対応する地点情報の数である。すなわち、各ノードの右上の数字によって、そのノードに直接または間接にぶら下がっている地点情報の数が示されることになる。この値は、階層構造情報を用いて算出することができるものである。例えば、地域名「近畿」とリンク付けられている地点名の個数をカウントすることによって、地域名「近畿」に対応する地点情報の数を知ることができる。
【0095】
図12では、ルートノードが2個あるため、2個の階層構造が示されることになる。ここで、以下の処理で用いられる上限しきい値は「20」であり、中間しきい値は「15」であり、下限しきい値は「5」であるとする。それらは図示しない記録媒体において記憶されており、階層構造情報生成部20がアクセスして読み出せるようになっていてもよい。階層構造情報生成部20は、まず、1個目の階層構造、すなわち、ルートノードが地域名「東北・北海道」である階層構造について、リーフノードの親ノードに、下限しきい値「5」以下の地点情報の数であるノードが存在するかどうか判断する。この場合には、リーフノード「盛岡駅」の親ノードは地域名「盛岡市」のみであり、そのノードに対応する地点情報の数は「1」であるため、下限しきい値「5」以下の地点情報の数である、リーフノードの親ノードが存在することになる。また、そのノード「盛岡市」よりも一つ上位のノード「岩手県」に対応する地点情報の数「1」は、中間しきい値「15」以下であるため(ステップS204,S205)、階層構造情報生成部20は、リーフノード「盛岡駅」の祖父ノード「岩手県」に対して子ノードである地域名を削除することによって、ノードの統合を行う(ステップS206)。この場合には、リーフノード「盛岡駅」が、地域名「岩手県」のノードの子ノードとなる。また、階層構造情報生成部20は、同様にして、リーフノード「盛岡駅」が、地域名「東北・北海道」の子ノードとなるようにする(ステップS205,S206)。また、この場合には、ルートノード「東北・北海道」に対応する地点情報の数は上限しきい値「20」以下の「1」であるため、それ以上のノードの変更は行われない(ステップS207)。
【0096】
次に、2番目の階層構造、すなわち、ルートノードが「近畿」である階層構造について、階層構造情報生成部20は、リーフノード「大阪城」の親ノード「中央区」に対応する地点情報の数が「4」であり、下限しきい値以下であると判断する。また、階層構造情報生成部20は、そのリーフノード「大阪城」の祖父ノード「大阪市」に対応する地点情報の数が「6」であり、中間しきい値以下であると判断する(ステップS209,S210,S205)。そのため、階層構造情報生成部20は、その祖父ノード「大阪市」の子ノードが地点情報となるように、ノードを統合する(ステップS206)。次に、階層構造情報生成部20は、リーフノード「服部緑地」の親ノード「豊中市」に対応する地点情報の数が「3」であり、下限しきい値以下であると判断する。しかし、そのリーフノード「服部緑地」の祖父ノード「大阪府」に対応する地点情報の数は「16」であり、中間しきい値以下ではないため、これ以上、下位のノードを統合する処理は行われない。
【0097】
その後、階層構造情報生成部20は、ルートノード「近畿」に対応する地点情報の数が「90」であり、上限しきい値を超えていると判断する。また、階層構造情報生成部20は、そのルートノードの子ノードがリーフノードではないと判断する(ステップS207)。その結果、ルートノードが、地域名「大阪府」と、地域名「兵庫県」とになるように、ツリー構造が分割される(ステップS208)。また、ルートノード「兵庫県」については、まだ、地点情報の数が上限しきい値を超えているため、ルートノードが地域名「神戸市」「明石市」に分割される(ステップS207,S208)。さらに、ルートノード「神戸市」については、まだ、地点情報の数が上限しきい値を超えているため、ルートノードが地点名「中央区」「北区」…に分割される(ステップS207,S208)。なお、地域名(4)をルートノードとする場合には、その地域名(4)の親ノードの地域名を含めるように、地域名(4)を変更する。すなわち、「中央区」を「神戸市中央区」として、「北区」を「神戸市北区」とするものとする。その結果、各階層構造は、図13で示されるようになる。また、その後、階層構造情報生成部20は、地点情報の数と、年月日情報とを用いたソートを行う。このソートでは、地域名(1)からはじめて、地域名(4)まで順番にソートを行うものとする。その際に、統合や分割によってなくなった地域名も存在するものとして、ソートを行ってもよく、そうでなくてもよい。この具体例では、前者の場合について説明する。そのソート後の地域名と、地点情報との対応を示す情報は、図14のようになる。図14から分かるように、ノードの統合を行う場合には、下位の側の地域名を消去すればよいことになる。また、ノードの分割を行う場合には、上位の側の地域名を消去すればよいことになる。
【0098】
その後、表示部22は、図14の情報を参照し、ルートノードの地域名のみを読み出して、それらを図15で示されるように表示する(ステップS111)。図15の表示において、ユーザが、「神戸市中央区」を押したとすると、選択受付部21は、「神戸市中央区」の選択を受け付け(ステップS112)、表示部22に渡す。そして、表示部22は、図14の階層構造情報を参照し、地域名「神戸市中央区」の子ノードである地域情報の地点名を読み出してそれらを図16で示されるように表示する(ステップS113)。その図16の表示において、ユーザが、「神戸空港」を押したとすると、選択受付部21は、その選択を受け付け(ステップS112)、表示部22に渡す。そして、表示部22は、図14の階層構造情報から地域名「神戸空港」を有する地点情報を読み出し、図17で示されるように表示する(ステップS113)。なお、図17では、単に地点情報を表示するだけの場合について説明したが、その選択された地点情報に対応する地点を目的地として設定してルート探索を行うなどの処理を行ってもよいことは言うまでもない。
【0099】
また、ユーザが「終了」ボタンを押した場合には、地点情報の表示の処理が終了となり(ステップS114)、地図情報が表示されることになる(ステップS101,S102)。
【0100】
なお、この具体例では、各ノードがリスト表示される場合について説明したが、そうでなくてもよい。例えば、表示部22がルートノードを表示する際に、図18で示されるように、地図上にルートノードに対応する地域と地域名とを表示してもよい。この図18の表示において、ユーザが「神戸市中央区」の文字を押すと、図19で示されるように、その地域に対応した拡大地図と共に、各地点情報が表示されてもよい。なお、各地点情報に対応した地図上の位置は、例えば、地点名対応情報を用いて位置情報を取得し、その位置情報を用いることによって、知ることができる。また、図19では、2個の地点情報のみが表示されている場合について示しているが、これは説明の便宜上であり、本来は20個の地点情報が表示されることになる(図12,図13において、神戸市中央区の右上の数字が「20」であるため)。
【0101】
また、この具体例では、地域情報が地点範囲情報を有する場合について説明したが、地域情報は、地点範囲情報に代えて、図20で示されるように、地点名そのものを有してもよい。この場合には、地点情報に対応する地域名を取得する際に、地点名を検索キーとして検索を行い、ヒットした地点名に対応する地域名(1)〜地域名(4)を取得すればよいことになる。
【0102】
また、この具体例では、階層構造情報がリスト表示されたり、地図で表示されたりする場合について説明したが、前述のように、階層構造情報の表示方法はこれらに限定されるものではない。例えば、階層構造情報は、フォルダを用いて表示されてもよい。例えば、神戸市中央区のフォルダを開けると、神戸空港や神戸市役所の地点情報が含まれていてもよい。また、大阪府のフォルダを開けると、大阪市や豊中市等のフォルダが含まれており、大阪市のフォルダを開けると、大阪城や中央公会堂の地点情報が含まれていてもよい。なお、このようにフォルダでの表示を行う場合に、各地点情報は、そのフォルダの階層構造に対応したディレクトリに格納されていてもよい。例えば、神戸空港の地点情報は、神戸市中央区のフォルダに含まれるように管理されてもよい。
【0103】
また、この具体例では、地図情報表示装置1が受け付ける目的地や地点情報が地域名である場合について説明したが、地点情報は、緯度・経度等の位置情報であってもよい。その場合には、その位置情報に対応する地点名が必要な場合には、図8で示される地点名対応情報を用いて適宜、位置情報と地点名との変換を行ってもよい。
【0104】
また、この具体例では、地点情報が地点名であるため、地点名対応情報を用いて、位置情報を取得してから、その位置情報に対応する地域名を特定する場合について説明したが、例えば、地点情報に位置情報が含まれる場合には、その位置情報と、図9の地域情報とを用いて、直接、地域名を取得することができる。また、地点情報が位置情報を含み、地点名を含まない場合であって、図20で示される地域情報を用いて地域名を特定する場合には、地点名対応情報を用いて、その位置情報を地点名に変換した後に、その地点名を検索キーとして検索を行うことによって、地点名を特定することができる。
【0105】
また、この具体例で説明した、図11で示される階層構造情報を生成する方法は一例であって、これとは異なる方法によって階層構造情報を生成してもよいことは言うまでもない。例えば、次のように行ってもよい。地域名(1)のすべての地域名を取得し、それをユニーク処理する。そのユニーク処理後の各地域名に対応する地域名(2)のすべての地域名を取得して、ユニーク処理する。そして、そのユニーク処理後の各地域名に対応する地域名(3)のすべての地域名を取得して、ユニーク処理を行うことを順番に繰り返して、階層構造情報を生成してもよい。また、これ以外の方法によって階層構造情報を生成してもよいことはいうまでもない。また、階層構造情報を示すデータの構造も、この具体例での説明に限定されないものであることは言うまでもない。
【0106】
以上のように、本実施の形態による地図情報表示装置1によれば、階層構造情報を自動的に生成することができる。また、その階層構造情報を用いることによって、ユーザは、効率的に地点情報にアクセスすることができるようになる。例えば、図9で示されるような、あらかじめ規定されている階層構造を用いた場合には、地点情報の存在しない地域も表示されてしまうことになりうるが、そのようなことを回避することができる。また、ノードの統合や分割を行うことによって、無用に階層が深くなる事態を回避することができ、地点情報へのアクセス性が向上することになる。また、地点情報の数や地点情報に含まれる年月日情報を用いたソートが行われることによって、ユーザの所望の地点情報がリスト表示のより上位に表示されるようになりうる。
【0107】
なお、本実施の形態では、表示部22が地域名をリスト表示する場合に、地点情報の数や、年月日情報を用いてソートを行う場合について説明したが、そのソートのうち、いずれか一方のソートを行わなくてもよく、あるいは、両方のソートを行わなくてもよい。
【0108】
また、本実施の形態では、上限のしきい値である上限しきい値よりも少ない数の地点情報を含む地域の地域名がルートノードとなるように階層構造情報を生成する場合について説明したが、そうでなくてもよい。例えば、ルートノードが、上限しきい値以上の地点情報数を含む地域の地域名であってもよい。
【0109】
また、本実施の形態では、下限のしきい値である下限しきい値よりも多い数の地点情報を含む地域の地域名がリーフノードの親ノードとなるように階層構造情報を生成する場合について説明したが、そうでなくてもよい。例えば、リーフノードの親ノードが、下限しきい値以下のしきい値を含むものであってもよい。
【0110】
また、本実施の形態では、地図情報表示装置1が地域情報記憶部18を備えている場合について説明したが、前述のように、地点情報が地域名を有しており、その地域名を用いて階層構造情報の生成を行う場合には、地図情報表示装置1は、地域情報記憶部18を備えていなくてもよい。
【0111】
また、本実施の形態では、目的地である地点情報が地点情報記憶部17に蓄積される場合について説明したが、そうでなくてもよい。目的地である地点情報が地点情報記憶部17に蓄積されるのではない場合には、地図情報表示装置1は、目的地受付部13や、ルート生成部14を備えていなくてもよい。また、現在位置取得部12も備えていなくてもよい。また、蓄積部16も備えていなくてもよい。
【0112】
また、本実施の形態では、地点情報受付部15が受け付けた地点情報が地点情報記憶部17に蓄積される場合について説明したが、そうでなくてもよい。地点情報受付部15が受け付けた地点情報が地点情報記憶部17に蓄積されるのではない場合には、地図情報表示装置1は、地点情報受付部15を備えていなくてもよい。また、蓄積部16も備えていなくてもよい。
【0113】
また、本実施の形態において、地図情報表示装置1が、蓄積部16を備えておらず、地点情報記憶部17に自動的に地点情報を蓄積する仕組みが存在しない場合には、他の方法によって、地点情報が地点情報記憶部17で記憶されるようになるものとする。その場合に、地点情報記憶部17に地点情報が記憶される過程は問わない。例えば、記録媒体を介して地点情報が地点情報記憶部17で記憶されるようになってもよく、通信回線等を介して送信された地点情報が地点情報記憶部17で記憶されるようになってもよく、あるいは、入力デバイスを介して入力された地点情報が地点情報記憶部17で記憶されるようになってもよい。
【0114】
また、本実施の形態において、階層構造情報生成部20が、地点情報の示す地点と、その地点を含む地域の名称である地域名であって、包含関係にある2以上の地域の地域名との関係を取得するものであり、上限のしきい値である上限しきい値よりも少ない数の地点情報を含む地域の地域名がルートノードとなるように階層構造情報を生成する場合には、具体例でも説明したように、そのルートノードの地域名(例えば、「中央区」)に、その地域名の地域を含む地域の地域名(例えば、「神戸市」や「兵庫県神戸市」など)を追加してもよい。すなわち、階層構造情報生成部20は、ルートノードである下位の地域名に、その地域名の地域を含む上位の地域の地域名を集約することを行ってもよい。階層構造の下位に位置する地域名だけでは、地域が明確に分からないこともあるからである(例えば、「中央区」だけであれば、神戸市の中央区であるのか、大阪市の中央区であるのかが分からないことになる)。なお、その場合に、追加する地域名は、例えば、地域名の階層構造の最上位までのすべての地域名であってもよく(この場合には、例えば、「近畿兵庫県神戸市中央区」となる)、対象となる地域の直近の上位N個(Nは、1以上の決められた整数である)の限定された範囲の地域名であってもよい(この場合には、例えば、「兵庫県神戸市中央区」(上位2個の場合)や「神戸市中央区」(上位1個の場合)となる)。また、その地域名の集約(追加)を行う地域名の階層が決まっていてもよい。例えば、ルートノードが都道府県の階層(具体例の地域名(2)の階層)である場合には、地域名の集約を行わないが、ルートノードがそれ以下の階層(具体例の地域名(3)(4)の階層)である場合には、地域名の集約を行うと決まっていてもよい。
【0115】
また、上記実施の形態では、地図情報表示装置1がスタンドアロンである場合について説明したが、地図情報表示装置1は、スタンドアロンの装置であってもよく、サーバ・クライアントシステムにおけるサーバ装置であってもよい。後者の場合には、表示部や受付部は、通信回線を介して入力を受け付けたり、情報を表示したりしてもよい。
【0116】
また、上記実施の形態において、各処理または各機能は、単一の装置または単一のシステムによって集中処理されることによって実現されてもよく、あるいは、複数の装置または複数のシステムによって分散処理されることによって実現されてもよい。
【0117】
また、上記実施の形態において、各構成要素が実行する処理に関係する情報、例えば、各構成要素が受け付けたり、取得したり、選択したり、生成したり、送信したり、受信したりした情報や、各構成要素が処理で用いるしきい値や数式、アドレス等の情報等は、上記説明で明記していない場合であっても、図示しない記録媒体において、一時的に、あるいは長期にわたって保持されていてもよい。また、その図示しない記録媒体への情報の蓄積を、各構成要素、あるいは、図示しない蓄積部が行ってもよい。また、その図示しない記録媒体からの情報の読み出しを、各構成要素、あるいは、図示しない読み出し部が行ってもよい。
【0118】
また、上記実施の形態において、各構成要素等で用いられる情報、例えば、各構成要素が処理で用いるしきい値やアドレス、各種の設定値等の情報がユーザによって変更されてもよい場合には、上記説明で明記していない場合であっても、ユーザが適宜、それらの情報を変更できるようにしてもよく、あるいは、そうでなくてもよい。それらの情報をユーザが変更可能な場合には、その変更は、例えば、ユーザからの変更指示を受け付ける図示しない受付部と、その変更指示に応じて情報を変更する図示しない変更部とによって実現されてもよい。その図示しない受付部による変更指示の受け付けは、例えば、入力デバイスからの受け付けでもよく、通信回線を介して送信された情報の受信でもよく、所定の記録媒体から読み出された情報の受け付けでもよい。
【0119】
また、上記実施の形態において、地図情報表示装置1に含まれる2以上の構成要素が通信デバイスや入力デバイス等を有する場合に、2以上の構成要素が物理的に単一のデバイスを有してもよく、あるいは、別々のデバイスを有してもよい。
【0120】
また、上記実施の形態において、各構成要素は専用のハードウェアにより構成されてもよく、あるいは、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをCPU等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。なお、上記実施の形態における地図情報表示装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータを、地図に関する情報である地図情報が記憶される地図情報記憶部で記憶されている地図情報に含まれる地点を示す情報である地点情報が2以上記憶される地点情報記憶部で記憶されている地点情報の示す地点と、地点を含む地域の名称である地域名との関係を取得し、地域名をまとめることによって、地点情報の示す地点がリーフノードであり、地点情報の示す地点を含む地域の地域名がリーフノード以外のノード(このノードを「上位ノード」とする)である階層構造の情報であって、地点と地域の包含関係を示す階層構造の情報である階層構造情報を生成する階層構造情報生成部、地図情報を表示し、階層構造情報生成部が生成した階層構造情報に含まれるノードに対応する地域名または地点情報を表示する表示部、表示部が表示した地域名の選択を受け付ける選択受付部として機能させ、表示部は、階層構造情報において、選択受付部が選択を受け付けた地域名に対する子ノードの情報をも表示する、プログラムである。
【0121】
なお、上記プログラムにおいて、上記プログラムが実現する機能には、ハードウェアでしか実現できない機能は含まれない。例えば、情報を受け付ける受付部や、情報を表示する表示部などにおけるモデムやインターフェースカードなどのハードウェアでしか実現できない機能は、上記プログラムが実現する機能には少なくとも含まれない。
【0122】
また、このプログラムは、サーバなどからダウンロードされることによって実行されてもよく、所定の記録媒体(例えば、CD−ROMなどの光ディスクや磁気ディスク、半導体メモリなど)に記録されたプログラムが読み出されることによって実行されてもよい。また、このプログラムは、プログラムプロダクトを構成するプログラムとして用いられてもよい。
【0123】
また、このプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
【0124】
図21は、上記プログラムを実行して、上記実施の形態による地図情報表示装置1を実現するコンピュータの外観の一例を示す模式図である。上記実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムによって実現されうる。
【0125】
図21において、コンピュータシステム900は、CD−ROM(Compact Disk Read Only Memory)ドライブ905、FD(Floppy(登録商標) Disk)ドライブ906を含むコンピュータ901と、キーボード902と、マウス903と、モニタ904とを備える。
【0126】
図22は、コンピュータシステム900の内部構成を示す図である。図22において、コンピュータ901は、CD−ROMドライブ905、FDドライブ906に加えて、MPU(Micro Processing Unit)911と、ブートアッププログラム等のプログラムを記憶するためのROM912と、MPU911に接続され、アプリケーションプログラムの命令を一時的に記憶すると共に、一時記憶空間を提供するRAM(Random Access Memory)913と、アプリケーションプログラム、システムプログラム、及びデータを記憶するハードディスク914と、MPU911、ROM912等を相互に接続するバス915とを備える。なお、コンピュータ901は、LANへの接続を提供する図示しないネットワークカードを含んでいてもよい。
【0127】
コンピュータシステム900に、上記実施の形態による地図情報表示装置1の機能を実行させるプログラムは、CD−ROM921、またはFD922に記憶されて、CD−ROMドライブ905、またはFDドライブ906に挿入され、ハードディスク914に転送されてもよい。これに代えて、そのプログラムは、図示しないネットワークを介してコンピュータ901に送信され、ハードディスク914に記憶されてもよい。プログラムは実行の際にRAM913にロードされる。なお、プログラムは、CD−ROM921やFD922、またはネットワークから直接、ロードされてもよい。
【0128】
プログラムは、コンピュータ901に、上記実施の形態による地図情報表示装置1の機能を実行させるオペレーティングシステム(OS)、またはサードパーティプログラム等を必ずしも含んでいなくてもよい。プログラムは、制御された態様で適切な機能(モジュール)を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいてもよい。コンピュータシステム900がどのように動作するのかについては周知であり、詳細な説明は省略する。
【0129】
また、本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
【産業上の利用可能性】
【0130】
以上より、本発明による地図情報表示装置等によれば、地点情報へのアクセス性を向上させることができるという効果が得られ、例えば、カーナビゲーション装置等として有用である。
【符号の説明】
【0131】
1 地図情報表示装置
11 地図情報記憶部
12 現在位置取得部
13 目的地受付部
14 ルート生成部
15 地点情報受付部
16 蓄積部
17 地点情報記憶部
18 地域情報記憶部
19 受付部
20 階層構造情報生成部
21 選択受付部
22 表示部

【特許請求の範囲】
【請求項1】
地図に関する情報である地図情報が記憶される地図情報記憶部と、
前記地図情報に含まれる地点を示す情報である地点情報が2以上記憶される地点情報記憶部と、
前記地点情報の示す地点と、当該地点を含む地域の名称である地域名との関係を取得し、当該地域名をまとめることによって、前記地点情報の示す地点がリーフノードであり、前記地点情報の示す地点を含む地域の地域名がリーフノード以外のノード(このノードを「上位ノード」とする)である階層構造の情報であって、地点と地域の包含関係を示す階層構造の情報である階層構造情報を生成する階層構造情報生成部と、
前記地図情報を表示し、前記階層構造情報生成部が生成した階層構造情報に含まれるノードに対応する地域名または地点情報を表示する表示部と、
前記表示部が表示した地域名の選択を受け付ける選択受付部と、を備え、
前記表示部は、
前記階層構造情報において、前記選択受付部が選択を受け付けた地域名に対する子ノードの情報をも表示する、地図情報表示装置。
【請求項2】
前記表示部は、
はじめにルートノードの地域名を表示し、次に前記選択受付部が選択を受け付けた地域名のルートノードに対する子ノードの情報をも表示し、この親ノードの選択が受け付けられた場合に、当該親ノードに対する子ノードの情報を表示する処理を、子ノードである地点情報を表示するまで繰り返す、請求項1記載の地図情報表示装置。
【請求項3】
地点情報を受け付ける地点情報受付部と、
前記地点情報受付部が受け付けた地点情報を前記地点情報記憶部に蓄積する蓄積部と、をさらに備えた、請求項1または請求項2記載の地図情報表示装置。
【請求項4】
現在位置を取得する現在位置取得部と、
目的地を受け付ける目的地受付部と、
前記現在位置取得部が取得した現在位置である出発地から、前記目的地受付部が受け付けた目的地までのルートを、前記地図情報を用いて生成するルート生成部と、
前記目的地受付部が受け付けた目的地である地点を示す地点情報を前記地点情報記憶部に蓄積する蓄積部と、をさらに備え、
前記表示部は、
前記ルート生成部が生成したルートをも表示する、請求項1または請求項2記載の地図情報表示装置。
【請求項5】
地点と、当該地点を含む地域の名称である地域名との関係を示す情報である地域情報が記憶される地域情報記憶部をさらに備え、
前記階層構造情報生成部は、
前記地点情報の示す地点に対応する地域情報を用いることによって、前記地点情報の示す地点と、当該地点を含む地域の名称である地域名との関係を取得する、請求項1から請求項4のいずれか記載の地図情報表示装置。
【請求項6】
前記地点情報は、当該地点情報の示す地点を含む地域の名称である地域名を有する情報であり、
前記階層構造情報生成部は、
前記地点情報から、前記地点情報の示す地点と、当該地点を含む地域の名称である地域名との関係を取得する、請求項1から請求項4のいずれか記載の地図情報表示装置。
【請求項7】
前記階層構造情報生成部は、
前記地点情報の示す地点と、当該地点を含む地域の名称である地域名であって、包含関係にある2以上の地域の地域名との関係を取得するものであり、下限のしきい値である下限しきい値よりも多い数の地点情報を含む地域の地域名がリーフノードの親ノードとなるように階層構造情報を生成するものである、請求項1から請求項6のいずれか記載の地図情報表示装置。
【請求項8】
前記階層構造情報生成部は、
前記地点情報の示す地点と、当該地点を含む地域の名称である地域名であって、包含関係にある2以上の地域の地域名との関係を取得するものであり、上限のしきい値である上限しきい値よりも少ない数の地点情報を含む地域の地域名がルートノードとなるように階層構造情報を生成するものである、請求項1から請求項7のいずれか記載の地図情報表示装置。
【請求項9】
前記表示部は、前記階層構造情報に含まれる地域名をリスト表示するものであり、
前記階層構造情報生成部は、前記階層構造情報に含まれる地域名を、当該地域名に対応する地域が含む地点情報の数でソートした階層構造情報を生成する、請求項1から請求項8のいずれか記載の地図情報表示装置。
【請求項10】
前記表示部は、前記階層構造情報に含まれる地域名をリスト表示するものであり、
前記地点情報は、年月日を示す情報である年月日情報をも含むものであり、
前記階層構造情報生成部は、前記階層構造情報に含まれる地点情報を、当該地点情報が含む年月日情報でソートした階層構造情報を生成する、請求項1から請求項9のいずれか記載の地図情報表示装置。
【請求項11】
地図に関する情報である地図情報が記憶される地図情報記憶部と、前記地図情報に含まれる地点を示す情報である地点情報が2以上記憶される地点情報記憶部と、階層構造情報生成部と、表示部と、選択受付部とを用いて処理される地図情報表示方法であって、
前記表示部が、前記地図情報を表示するステップと、
前記階層構造情報生成部が、前記地点情報の示す地点と、当該地点を含む地域の名称である地域名との関係を取得し、当該地域名をまとめることによって、前記地点情報の示す地点がリーフノードであり、前記地点情報の示す地点を含む地域の地域名がリーフノード以外のノード(このノードを「上位ノード」とする)である階層構造の情報であって、地点と地域の包含関係を示す階層構造の情報である階層構造情報を生成する階層構造情報生成ステップと、
前記表示部が、前記階層構造情報生成ステップで生成した階層構造情報に含まれるノードに対応する地域名を表示する地域名表示ステップと、
前記選択受付部が、前記地域名表示ステップで表示した地域名の選択を受け付ける選択受付ステップと、
前記表示部が、前記階層構造情報において、前記選択受付ステップで選択を受け付けた地域名に対する地点情報を表示する地点情報表示ステップと、を備えた地図情報表示方法。
【請求項12】
コンピュータを、
地図に関する情報である地図情報が記憶される地図情報記憶部で記憶されている地図情報に含まれる地点を示す情報である地点情報が2以上記憶される地点情報記憶部で記憶されている地点情報の示す地点と、当該地点を含む地域の名称である地域名との関係を取得し、当該地域名をまとめることによって、前記地点情報の示す地点がリーフノードであり、前記地点情報の示す地点を含む地域の地域名がリーフノード以外のノード(このノードを「上位ノード」とする)である階層構造の情報であって、地点と地域の包含関係を示す階層構造の情報である階層構造情報を生成する階層構造情報生成部、
前記地図情報を表示し、前記階層構造情報生成部が生成した階層構造情報に含まれるノードに対応する地域名または地点情報を表示する表示部、
前記表示部が表示した地域名の選択を受け付ける選択受付部として機能させ、
前記表示部は、
前記階層構造情報において、前記選択受付部が選択を受け付けた地域名に対する子ノードの情報をも表示する、プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図18】
image rotate


【公開番号】特開2011−149977(P2011−149977A)
【公開日】平成23年8月4日(2011.8.4)
【国際特許分類】
【出願番号】特願2010−8797(P2010−8797)
【出願日】平成22年1月19日(2010.1.19)
【出願人】(504050275)株式会社 ミックウェア (42)
【Fターム(参考)】