地図表示装置、地図上の位置を特定する方法、および、コンピュータプログラム
【課題】3次元的に表示された電子地図において、電子地図上の位置の指定を可能にする。
【解決手段】地図表示装置は、3次元の仮想空間を3次元的に表示するための表示画像データを、仮想空間内に設定された視点、該視点からの視線ベクトルおよび視野枠に基づいて生成し、この表示画像データに基づく表示画像を表示し、表示画像上で定義された2次元座標系において、ユーザによって指定された指定点に対応する2次元座標値を入力し、仮想空間で定義された3次元座標系において、指定点を視野枠に写像して得られる点および視点を結ぶ直線が仮想空間内の所定の高さに設定された面と交差する空中の点を求め、該空中の点から仮想空間内の地表面へ向けて上記面に対し所定の角度にて補助直線を伸ばし、該補助直線が仮想空間内の地表面と交差する地表面上の点の3次元座標値を求める。
【解決手段】地図表示装置は、3次元の仮想空間を3次元的に表示するための表示画像データを、仮想空間内に設定された視点、該視点からの視線ベクトルおよび視野枠に基づいて生成し、この表示画像データに基づく表示画像を表示し、表示画像上で定義された2次元座標系において、ユーザによって指定された指定点に対応する2次元座標値を入力し、仮想空間で定義された3次元座標系において、指定点を視野枠に写像して得られる点および視点を結ぶ直線が仮想空間内の所定の高さに設定された面と交差する空中の点を求め、該空中の点から仮想空間内の地表面へ向けて上記面に対し所定の角度にて補助直線を伸ばし、該補助直線が仮想空間内の地表面と交差する地表面上の点の3次元座標値を求める。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、地図表示装置、地図上の位置を特定する方法、および、コンピュータプログラムに関する。
【背景技術】
【0002】
従来、コンピュータで利用可能に電子化された、いわゆる電子地図データが普及している。近年では、3次元的な表示が可能な電子地図データも普及している。3次元的に表示された電子地図は、街の鳥瞰や道路の立体交差などを立体的にリアルに表現することができるため、地図の把握がし易いという利点がある。このような3次元的な表示が可能な電子地図データは、いわゆるパーソナルコンピュータにインストールされた地図ソフトや、ナビゲーションシステムなどで利用される。
【0003】
【特許文献1】特開平4−267427号公報
【特許文献2】特開平9−265550号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
電子地図では、表示画面に表示されるエリアの指定や、ナビゲーションシステムにおける目的地の指定など、ユーザがポインティングデバイスで任意の地点を指定できることが望まれる。しかし、表示画面は2次元であるため、例えば、3次元的に表示された電子地図では、建物の陰になる地点等は、ポインティングデバイスで指定することができなかった。つまり、従来の3次元的に表示された電子地図においては、ポインティングデバイスなどによるオブジェクトや地点の指定方法に支障や制限があった。
【0005】
本発明は、上述の課題を解決するためになされたものであり、3次元的に表示された電子地図において、電子地図上の位置の指定を可能にすることを目的とする。
【課題を解決するための手段】
【0006】
上述の課題の少なくとも一部を解決するため、本発明では、以下の構成を採用した。
本発明の第1の地図表示装置は、
所定の電子地図データに基づいて、電子地図を3次元的に表示する地図表示装置であって、
前記電子地図データを参照する参照部と、
前記電子地図データに基づいて定まる3次元の仮想空間を3次元的に表示するための表示画像データを生成し、該表示画像データに基づく表示画像を表示する表示部と、
前記表示画像上で定義された2次元座標系において、ユーザによって指定された指定点に対応する2次元座標値を入力する座標値入力部と、
前記2次元座標値を、前記仮想空間で定義された3次元座標系において、高さが既定値である制約下で、3次元座標値に変換する変換部と、
を備えることを要旨とする。
【0007】
電子地図データは、一般に、緯度、経度などの座標系で、地図上に配置される道路や建物などのオブジェクトの配置位置を示すデータや、オブジェクトの形状データなどを含んでいる。そして、地図表示装置は、このような電子地図データを利用して、3次元の仮想空間を形成し、これを2次元の表示画面上に地図を3次元的に表示することが可能である。3次元の仮想空間は、オブジェクトに現実の高さデータが付与された3次元モデルに基づいて形成してもよいし、2次元の平面モデルにおいて、オブジェクトに任意の高さを付与することによって形成してもよい。ユーザは、地図表示装置の表示画面上で、マウスなどのポインティングデバイスを用いて任意の位置を指定する。
【0008】
本発明では、ユーザによって指定された表示画面上の指定点の2次元座標値を、仮想空間上の3次元座標値へ変換する際に、仮想空間上の3次元座標系における高さを既定値に固定する。このように3次元座標の1つに制約条件をかけることによって、指定点の2次元座標値を3次元座標値に一義的に変換することができる。つまり、3次元的に表示された電子地図において、指定点の電子地図上の位置を一義的に特定することができる。
【0009】
本発明の第1の地図表示装置において、
前記既定値は、例えば、予め設定された所定値であるものとすることができる。
【0010】
「所定値」は、任意に設定可能であり、例えば、地表面の代表高さなど、所定の標高とすることができる。本発明によって、指定点の2次元座標値を、仮想空間内において高さが所定値の3次元座標値に変換することができる。
【0011】
また、本発明の第1の地図表示装置において、
前記既定値は、例えば、前記仮想空間内の地表面に基づいた高さであるものとしてもよい。
【0012】
「地表面に基づいた高さ」とは、例えば、地表面高さであってもよいし、地表面から一定の高さであってもよい。こうすることによって、地表に起伏がある場合でも、指定点の2次元座標値を仮想空間内の地表面上の3次元座標値に変換することができる。
【0013】
上記地図表示装置において、例えば、
前記表示部が、前記仮想空間内に設定された視点および視野枠に基づいて前記表示画像データを生成する場合、
前記変換部は、前記2次元座標値を、前記2次元座標値を前記視野枠に写像して得られる点と、前記視点とを結ぶ直線が、前記仮想空間内の地表面と交差する点の3次元座標値に変換するようにすることができる。
【0014】
こうすることによって、例えば、仮想空間内で地表面が起伏している場合でも、表示画面上の指定点を仮想空間上の3次元座標値に変換し、位置を特定することができる。
【0015】
上述した本発明の第1の地図表示装置において、
前記表示部は、前記仮想空間内に設定された視線ベクトルに基づいて前記表示画像データを生成し、
前記変換部は、前記視線ベクトルと直交する前記仮想空間内の地表面上の軸よりも、前記表示画像において上側の点が前記指定点として指定されているときに、前記2次元座標値を、前記指定点から前記軸への垂線の足に対応する3次元座標値に変換するようにすることができる。
【0016】
3次元的な地図を2次元的な表示画面上に表示する場合、視点に近い領域を表す表示画面の下側よりも、視点から遠い位置を表す表示画面の上側の方が、仮想空間における奥行き方向の座標間隔が狭く表示されるため、ユーザは、表示画面上で位置の指定を行いにくくなる傾向にある。このため、ユーザが意図した指定点と特定結果との誤差が大きくなる場合がある。
【0017】
本発明では、前記軸を境界線として、2次元座標値から3次元座標値への座標値の変換方法、即ち、指定点の特定方法を切り換える。表示画面において、指定点が、視点から遠い、前記軸よりも上側の領域に存在する場合は、ユーザが軸上の点を指定したものとして指定点の2次元座標値を取り扱う。こうすることによって、ユーザの意図と大きく離れた地点が特定されることを回避することができる。
【0018】
本発明の第2の地図表示装置は、
所定の電子地図データに基づいて、電子地図を3次元的に表示する地図表示装置であって、
前記電子地図データを参照する参照部と、
前記電子地図データに基づいて、該電子地図データに含まれる少なくとも一部のオブジェクトを立体オブジェクトとして立体的に表示することにより、前記電子地図データに基づいて定まる3次元の仮想空間を3次元的に表示するための表示画像データを生成し、該表示画像データに基づく表示画像を表示する表示部と、
前記表示画面上で定義された2次元座標系において、ユーザによって指定された指定点に対応する2次元座標値を入力する座標値入力部と、
前記2次元座標値に基づいて、前記指定点に、前記立体オブジェクトの表示画像が存在するか否かを判断する判断部と、
該判断部が、前記立体オブジェクトの表示画像が存在すると判断した場合に、該立体オブジェクトを、前記ユーザが指定する指定オブジェクトとして特定する特定部と、
を備えることを要旨とする。
【0019】
3次元的に表示される電子地図上に配置されるオブジェクトには、ビルなど立体的に表示される立体オブジェクトと、地表面上に沿って通る道路など平面的に表示される平面オブジェクトとがある。本発明では、ユーザが表示画面上で立体オブジェクトの画像を指定したときに、仮想空間上においても、そのオブジェクトが指定されたものとして特定することができる。
【0020】
上記地図表示装置において、更に、
前記特定部は、前記仮想空間において、前記指定オブジェクトに対応づけられた所定の代表点の3次元座標を出力するようにすることができる。
【0021】
電子地図データにおいて、オブジェクトは、通常、その配置位置である代表点と対応付けられている。本発明によって、ユーザによって表示画面上で立体オブジェクトの画像のどの部分(2次元座標値)が指定されても、代表点が指定されたものとして指定点の3次元座標値を特定することができる。
【0022】
上記地図表示装置において、代表点として、例えば、ビルの屋上など、オブジェクトによって異なった、高さを含む3次元座標値を用いるようにしてもよいが、
前記代表点は、前記指定オブジェクトに含まれ、前記仮想空間内の地表面上の一点であるものとすることができる。
【0023】
こうすることによって、複数の立体オブジェクトについて、3次元座標値のうちの高さを統一することができるので、仮想空間における位置の特定を容易に行うことができる。
【0024】
本発明の第2の地図表示装置において、
前記表示部は、前記指定オブジェクトを強調表示するようにすることができる。
【0025】
こうすることによって、ユーザは、自らが表示画面上で指定した立体オブジェクトが地図表示装置によって有効に取り扱われていることを視認することができる。
【0026】
本発明の第2の地図表示装置において、
前記表示部は、少なくとも、前記表示画像上で前記指定オブジェクトの少なくとも一部を遮る立体オブジェクトを半透明表示、あるいは、透明表示するようにしてもよい。
【0027】
こうすることによって、表示画面上に指定オブジェクトの全体像を表示することができるので、ユーザが指定オブジェクトを見易くすることができる。
【0028】
上述した指定オブジェクトを強調表示する、あるいは、指定オブジェクトの少なくとも一部を遮る立体オブジェクトを半透明表示する地図表示装置において、
前記電子地図データは、前記立体オブジェクトと対応付けられ、該立体オブジェクトに関する所定の付加情報を含んでいる場合、
前記地図表示装置は、更に、
前記指定オブジェクトの前記付加情報の表示要求を入力する要求入力部を備え、
前記表示部は、前記表示要求に応じて、更に、前記付加情報を表示するようにすることができる。
【0029】
こうすることによって、ユーザは、指定オブジェクトに対応する付加情報を利用することができ、電子地図の利便性を向上させることができる。
【0030】
本発明の第2の地図表示装置において、更に、
前記指定オブジェクトを半透明表示する指示を入力する指示入力部を備え、
前記表示部は、前記指示に応じて、前記指定オブジェクトを半透明表示するようにしてもよい。また、前記指定オブジェクトを透明表示する指示を入力する指示入力部を備え、前記表示部は、前記指示に応じて、前記指定オブジェクトを透明表示するようにしてもよい。
【0031】
こうすることによって、ユーザの指示によって、指定オブジェクトを半透明表示させることができる。この場合、半透明に表示された指定オブジェクトは、地図上にないものとして取り扱う。この結果、指定オブジェクトの陰に隠れていたオブジェクトを、更に、指定オブジェクトとして指定することができる。
【0032】
上述した本発明の第2の地図表示装置において、
前記表示部は、前記仮想空間内に設定された視線ベクトルに基づいて前記表示画像データを生成し、
更に、前記視線ベクトルと直交する前記仮想空間内の地表面上の軸よりも、前記表示画像において上側の点が前記指定点として指定されているときに、前記2次元座標値を、前記指定点から前記軸への垂線の足に対応する3次元座標値に変換する変換部を備えるようにしてもよい。
【0033】
こうすることによって、先に第1の地図表示装置で説明したのと同様に、指定点の特定を簡易に行うことができる。
【0034】
本発明の第1または第2の地図表示装置において、
前記表示部は、前記指定点の周辺領域を表す2次元の電子地図を、前記3次元的に表示された電子地図と共に表示するようにしてもよい。
【0035】
こうすることによって、ユーザは、指定点の周辺領域の地図を、3次元的な表示と、2次元的な表示との双方で、同時に同じ表示画面で見ることができるので、電子地図の利便性を向上させることができる。更に、3次元的な表示と同時に表示された2次元的に表示された地図において、2次元的な位置の指定を行えるようにしてもよい。
【0036】
なお、上記地図表示装置において、
前記表示部は、前記指定点の周辺領域については、前記3次元的な表示に代えて、前記2次元の電子地図を表示するようにしてもよい。
【0037】
本発明は、画像データ生成装置の発明として構成することもできる。即ち、本発明の画像データ生成装置は、
所定の電子地図データに基づいて、所定の表示装置に電子地図を表示させるための表示画像データを生成する画像データ生成装置であって、
前記電子地図データを参照する参照部と、
前記電子地図データに基づいて定まる3次元の仮想空間を表示するための表示画像データを、該仮想空間内に設定された視点および視線ベクトルに基づいて、該視線ベクトルと前記仮想空間内の地表面とのなす角度および前記視点が、表示対象となる前記仮想空間の領域に応じて、相対的に異なるように生成する表示画像データ生成部と、
を備えることを要旨とする。
【0038】
「視線ベクトルと仮想空間内の地表面とのなす角度および視点が、表示対象となる仮想空間の領域に応じて、相対的に異なる」とは、仮想空間の座標値を固定して、視線ベクトルを変化させてもよいし、視線ベクトルを固定して、仮想空間の座標値を変化させてもよいことを意味している。本発明によって、地図表示装置に、様々な視線から仮想空間の地表面を見たときの地図を表示させることができる。
【0039】
なお、上記画像データ生成装置において、
前記表示画像データ生成部は、前記視線ベクトルと前記地表面とのなす角度および視線を単調に変化させることによって、前記表示画像が3次元的な表示から2次元表示に連続的に変化する表示画像データを生成するようにしてもよい。
【0040】
本発明の画像データ生成装置で生成された表示画像データは、地図表示装置の表示画面に表示される。従って、上述した画像データ生成装置と、生成された表示画像データに基づく表示画像を表示する表示部とを備える地図表示装置の発明として構成することもできる。
【0041】
また、表示画面に表示された地図を印刷装置によって印刷して利用することも可能であり、地図の発明として構成することもできる。
【0042】
本発明は、上述の地図表示装置、画像データ生成装置としての構成の他、電子地図においてユーザが指定した指定点やオブジェクトの特定方法、電子地図を表示させるための画像データ生成方法、電子地図の表示方法の発明として構成することもできる。また、これらを実現するコンピュータプログラム、およびそのプログラムを記録した記録媒体、そのプログラムを含み搬送波内に具現化されたデータ信号など種々の態様で実現することが可能である。なお、それぞれの態様において、先に示した種々の付加的要素を適用することが可能である。
【0043】
本発明をコンピュータプログラムまたはそのプログラムを記録した記録媒体等として構成する場合には、地図表示装置を駆動するプログラム全体として構成するものとしてもよいし、本発明の機能を果たす部分のみを構成するものとしてもよい。また、記録媒体としては、フレキシブルディスクやCD−ROM、DVD−ROM、光磁気ディスク、ICカード、ROMカートリッジ、パンチカード、バーコードなどの符号が印刷された印刷物、コンピュータの内部記憶装置(RAMやROMなどのメモリ)および外部記憶装置などコンピュータが読み取り可能な種々の媒体を利用できる。
【発明を実施するための最良の形態】
【0044】
以下、本発明の実施の形態について、実施例に基づき以下の順序で説明する。
A.第1実施例:
A1.地図表示装置の概略構成:
A2.3D地図表示処理:
A3.指定点特定処理:
A4.サブディスプレイ表示処理:
A5.付加情報表示処理:
B.第2実施例:
C.変形例:
【0045】
A.第1実施例:
A1.地図表示装置の概略構成:
図1は、第1実施例としての地図表示装置10の概略構成を示す説明図である。本実施例の地図表示装置10は、汎用のパーソナルコンピュータであり、図示しないCPUやメモリの他、マウス12や、表示画面DSPを表示するためのディスプレイ14や、ハードディスク16や、CD−ROMドライブ18などを備えている。地図表示装置10は、パーソナルコンピュータに、電子地図を表示するためのアプリケーションプログラムをインストールすることによって構成されている。
【0046】
地図表示装置10は、図示した各機能ブロックをソフトウェア的に備えている。制御部110は、地図表示装置10内の各部の動作制御を行う。参照部120は、電子地図データを記録したコンパクト・ディスクCDや、ハードディスク16から電子地図データを参照する。電子地図データは、地図上の位置を示す緯度、経度や、地図上に配置されるオブジェクトの配置位置を示すデータや、オブジェクト(地物)の形状データや高さデータや、オブジェクトに関する付加情報などを含んでいる。付加情報としては、ビルの名称や、店舗の電話番号、営業時間など、ユーザに提供するための情報が挙げられる。参照部120は、電子地図データを、インターネットなどのネットワークを介して所定のサーバから参照するようにしてもよい。
【0047】
表示画像データ生成部130は、参照部120が参照した電子地図データに基づいて、更に、後述する入力部150に入力された各種指示等に応じて、ディスプレイ14に、2次元表示(2D)の電子地図を表示したり、3次元的な表示(3D)の電子地図を表示したりするための画像データを生成する。表示画像データ生成部130は、更に、後述するように、ユーザからの指示に応じて、表示画面DSPに表示された3D地図上に立体的に表示されたビルなどの立体オブジェクトの表示方法を変更したり、ユーザによって指定されたオブジェクトに対応する付加情報を表示させたりするための表示画像データを生成したりもする。表示制御部140は、表示画像データ生成部130で生成された画像データをディスプレイ14に表示するための制御を行う。
【0048】
入力部150は、ディスプレイ14の表示画面DSPの切り換え等のユーザからの各種指示の入力や、表示画面DSP上で、ユーザによってマウス12を用いて指定された指定点の2次元座標値を入力する。判断部160は、指定点の2次元座標値に基づいて、表示画面DSPに表示された立体オブジェクトの画像と指定点との位置関係などを判断する。この判断の詳細については、後述する。特定部170は、判断部160が、指定点が立体オブジェクトの画像上に存在すると判断したときに、その立体オブジェクトを、ユーザによって指定された指定オブジェクトとして特定する。更に、特定部170は、指定オブジェクトの代表点の3次元座標値を出力する。代表点とは、電子地図上に配置されるオブジェクトに対応付けられた代表的な配置位置の座標値である。本実施例では、代表点は、地表面上の点であるものとした。変換部180は、指定点の2次元座標値を、判断部160の判断結果に応じて、3次元座標値に変換する。
【0049】
A2.3D地図表示処理:
図2は、3D地図表示処理の流れを示すフローチャートである。地図表示装置10のCPUが実行する処理である。まず、CPUは、入力部150によって、ユーザによって指定された表示エリアを取得する(ステップS100)。表示エリアとしては、例えば、「九州」、「福岡県」、「北九州市」、更に、町名、番地などの住所が挙げられる。次に、表示エリアに基づいて、参照部120によって、電子地図データを参照する(ステップS110)。そして、表示画像データ生成部130によって、2次元表示の電子地図を表示するための2D表示画像データを生成し(ステップS120)、表示画面DSPに2D地図を表示する(ステップS130)。次に、入力部150によって、ユーザが2D地図上で指定したエリアについての3D地図の表示指示を取得する(ステップS140)。そして、参照部120によって、電子地図データを参照し、表示画像データ生成部130によって、3次元的な表示の電子地図を表示するための3D表示画像データを生成して(ステップS150)、表示画面DSPに3D地図を表示する(ステップS160)。このとき、表示画面DSPには、2次元座標上で移動するマウスポインタも表示される。なお、本実施例では、2D地図を表示した後に、3D地図を表示するものとしたが、2D地図の表示処理(ステップS120、および、ステップS13)をジャンプしてもよい。
【0050】
図3は、3D表示画像データの生成方法について示す説明図である。図の右側には、電子地図データに基づいて定まる3次元の仮想空間VSを示した。仮想空間VSの地表面Gには、表示画面DSPに立体オブジェクトとして表示されるビルBLDが配置されている。図の左側には、表示画面DSPを示した。表示画面DSPには、仮想空間VSにおけるビルBLDを立体的に表示した立体オブジェクトとしてのビルbldの画像が配置されている。
【0051】
本実施例では、仮想空間VS内に視点PV、視点PVからの視線ベクトル、および、視野枠FRMを設定し、視点PVから視野枠FRMを通して仮想空間VSの地表面Gを見たときの像を用いて3D表示画像データを生成するものとした。視野枠FRMと視点PVとの距離を変更することによって、あるいは、視野枠FRMのサイズを変更することによって、表示画面DSPに表示される地図の縮尺を変更することができる。なお、視野枠FRMから見える仮想空間VSの地表面Gには、図示した例では、X軸に平行な軸AXが設定されている。軸AXは、地表面G上で視線ベクトルに直交する軸である。この軸AXは、表示画面DSPの軸axと対応している。
【0052】
A3.指定点特定処理:
本実施例の地図表示装置10は、3D地図が表示された表示画面DSP上において、マウス12を用いてユーザによって指定された指定点の仮想空間VS内の位置を特定することができる。指定点の位置の特定は、以下に説明する3通りに分けて行う。即ち、(1)指定点が表示画面DSPの軸axよりも上側の領域に存在する場合、(2)指定点が表示画面DSPの軸axよりも下側の領域に存在し、その点に立体オブジェクトの画像が存在しない場合、(3)指定点が表示画面DSPの軸axよりも下側の領域に存在し、その点に立体オブジェクトの画像が存在する場合、の3通りである。
【0053】
図3に(1)、(2)の場合の指定点の特定方法を併せて示した。図3において、点Paは、表示画面DSPの軸axよりも上側の領域に存在する点である。この場合、点Paから軸axへの垂線の足である点Pa'を求め、点Pa'を視野枠FRMに写像して得られる点Pa'mと視点PVとを結ぶ直線が仮想空間VSの地表面Gと交差する軸AX上の点Pavを仮想空間VS内の指定点として特定する。
【0054】
3D地図を表示する場合、視点PVに近い領域を表す表示画面DSPの下側よりも、視点PVから遠い位置を表す表示画面DSPの上側の方が、仮想空間における奥行き方向の座標間隔が狭く表示されるため、ユーザは、表示画面上で位置の指定を行いにくくなる傾向にある。このため、ユーザが意図した指定点と特定結果との誤差が大きくなる場合がある。先に説明したように、軸axよりも上側の指定点を軸ax上の点として取り扱うことによって、仮想空間VSにおいて、ユーザの意図と大きく離れた地点が特定されることを回避することができる。なお、軸axを考慮せずに、次に説明する(2)、(3)の場合と同様に指定点の特定を行ってもよい。
【0055】
図3において、点Pbは、表示画面DSPの軸axよりも下側の領域に存在し、その点に立体オブジェクトの画像が存在しない点である。この場合、点Pbを視野枠FRMに写像して得られる点Pbmと視点PVとを結ぶ直線が仮想空間VSの地表面Gと交差する点Pbvを仮想空間VS内の指定点として特定する。
【0056】
こうすることによって、例えば、仮想空間VS内で地表面Gが起伏している場合でも、表示画面DSP上の指定点を仮想空間VS上の3次元座標値に変換し、位置を特定することができる。
【0057】
図4は、(3)の場合の仮想空間VSにおける指定点の特定方法を示す説明図である。立体オブジェクトの画像上に表した点P1〜P4は、いずれも図3に示した軸axよりも下側の領域に存在する点であるものとする。この場合、表示画面DSPにおいて、指定点として点P1〜P4のいずれが指定されたとしても、代表点Prが指定されたものとして取り扱う。即ち、代表点Prを視野枠FRMに写像して得られる点と視点PVとを結ぶ直線が仮想空間VSの地表面Gと交差する点を仮想空間VS内の指定点として特定する。
【0058】
こうすることによって、ユーザが表示画面DSPで立体オブジェクトを指定したときに、仮想空間VS上においても、そのオブジェクトが指定されたものとして特定し、更に、3次元座標値を特定することができる。
【0059】
図5は、指定点特定処理の流れを示すフローチャートである。地図表示装置10のCPUが実行する処理である。まず、CPUは、入力部150によって、表示画面DSPにおける指定点の2次元座標値を取得する(ステップS200)。次に、判断部160によって、指定点が表示画面DSP上の軸axよりも上側の領域に存在するか否かを判断する(ステップS210)。指定点が軸axよりも上側の領域に存在する場合は、先に説明したように、仮想空間VS内の地表面G上に設定された軸AX上の3次元座標値に変換する(ステップS220)。
【0060】
ステップS210において、指定点が軸axよりも下側の領域に存在する場合は、指定点に立体オブジェクトの画像が存在するか否かを判断する(ステップS230)。指定点に立体オブジェクトの画像が存在しない場合には、先に説明したように、仮想空間VS内の地表面G上の3次元座標値に変換する(ステップS240)。
【0061】
本実施例の地図表示装置10は、表示画面DSPにおいて、指定点に立体オブジェクトの画像が存在する場合、ユーザの指示によって、その立体オブジェクト(指定オブジェクト)を半透明表示させることができる。
【0062】
図6は、指定オブジェクトを半透明表示させる様子を示す説明図である。ここでは、表示画面DSPに4つのビルBLD1〜BLD4が表示されている例を示した。図6(a)に示したように、ユーザがマウス12によってビルBLD4を指定し、半透明表示させる指示を入力する。そうすると、図6(b)に示したように、ビルBLD4が半透明表示され、ビルBLD4の陰に隠れていたビルBLD1〜BLD3の一部や、道路が表示される。これらの表示画像データは、先に説明したように、表示画像データ生成部130が生成する。
【0063】
こうすることによって、指定オブジェクトの陰に隠れていた他の立体オブジェクトや地表面を表示させることができる。このとき、半透明表示された指定オブジェクトは、地図上にないものとして取り扱われる。従って、ユーザは、半透明表示された領域において、新たに指定点を指定することができる。
【0064】
図5のステップS230において、指定点に立体オブジェクトの画像が存在する場合には、ユーザから半透明表示の指示があるか否かを判断する(ステップS250)。半透明表示の指示がある場合には、指定点に存在する立体オブジェクトを半透明表示する(ステップS260)。そして、次の指定点の2次元座標値を取得し(ステップS265)、ステップS230に戻る。
【0065】
ステップS250において、半透明表示の指示がない場合には、表示画面DSP上で、指定オブジェクトの少なくとも一部を遮っている立体オブジェクトが存在するか否かを判断する(ステップS270)。指定オブジェクトの少なくとも一部を遮っている立体オブジェクトが存在しない場合には、先に説明したように、指定オブジェクトの代表点Prに対応する仮想空間VS内の点の3次元座標値を出力する(ステップS290)。指定オブジェクトの少なくとも一部を遮っている立体オブジェクトが存在する場合には、遮る立体オブジェクトを半透明表示して(ステップS280)、指定オブジェクトの代表点Prに対応する仮想空間VS内の点の3次元座標値を出力する(ステップS290)。
【0066】
図7は、指定オブジェクトの少なくとも一部を遮る立体オブジェクトを半透明表示させる様子を示す説明図である。表示画面DSPに4つのビルBLD1〜BLD4が表示されている例を示した。図7(a)に示したように、ユーザがマウス12によってビルBLD1指定する。図示した例では、ビルBLD2〜BLD4がビルBLD1の一部を遮っているので、図6(b)に示したように、ビルBLD2〜BLD4を半透明に表示する。これらの表示画像データは、表示画像データ生成部130が生成する。
【0067】
こうすることによって、表示画面DSP上に指定オブジェクトの全体像を表示することができるので、ユーザは、自らが指定した指定オブジェクトが地図表示装置10によって有効に取り扱われていることを視認するとともに、指定オブジェクトを見易くすることができる。
【0068】
A4.サブディスプレイ表示処理:
本実施例の地図表示装置10は、指定点の周辺領域について、表示画面DSPに表示された3D地図の中にサブディスプレイ領域を形成し、この領域に2D地図を表示させることができる。
【0069】
図8は、サブディスプレイ表示処理の流れを示す説明図である。指定点の特定後に、地図表示装置10のCPUが実行する処理である。まず。CPUは、入力部150によって、ユーザからのサブディスプレイ表示の指示を取得する(ステップS300)。次に、参照部120によって、電子地図データを参照する(ステップS310)。次に、表示画像データ生成部130によって、指定点の周辺領域の2D表示画像データを生成する(ステップS320)。そして、サブディスプレイの形成位置を指定点付近に設定して、表示画面DSPに表示中の3D地図の3D表示画像データとステップS320で生成した2D表示画像データとを合成し(ステップS330)、合成地図を表示画面DSPに表示する(ステップS340)。
【0070】
図9は、サブディスプレイSDSPの表示例を示す説明図である。図9(a)に示したように、表示画面DSP上でユーザがマウス12によって任意の指定点を指定する。そうすると、先に説明した指定点特定処理によって、仮想空間VS上の点の3次元座標値が特定される。そして、図8に示した処理によって、図9(b)に示したように、表示画面DSP内に、指定点の周辺領域を示す2D地図を表示するサブディスプレイSDSPが表示される。このとき、マウスポインタは、図示するように、サブディスプレイSDSP上で移動する。
【0071】
こうすることによって、ユーザは、指定点の周辺領域の地図を、3次元的な表示と、2次元的な表示との双方で、同時に同じ表示画面DSPで見ることができるので、電子地図の利便性を向上させることができる。更に、3次元的な表示と同時に表示された2次元的に表示された地図において、2次元的な位置の指定を行えるようにしてもよい。
【0072】
A5.付加情報表示処理:
本実施例の地図表示装置10は、ユーザの指示によって、3D電子地図データが含む付加情報を表示画面DSPに表示させることも可能である。
【0073】
図10は、付加情報表示処理の流れを示すフローチャートである。指定点の特定後に、地図表示装置10のCPUが実行する処理である。まず、CPUは、入力部150によって、ユーザからの付加情報の表示指示を取得する(ステップS400)。次に、参照部120によって、電子地図データを参照し(ステップS410)、指定オブジェクトに対応する付加情報を表示画面DSPに表示する(ステップS420)。
【0074】
図11は、付加情報の表示例を示す説明図である。ここでは、ユーザがビルBLD1の付加情報の表示指示を入力した場合について示した。図示するように、指定オブジェクトとしてのビルBLD1の画像とともに、その付加情報が表示される。
【0075】
こうすることによって、3D地図においても、ユーザは、指定オブジェクトに対応する付加情報を利用することができ、電子地図の利便性を向上させることができる。
【0076】
B.第2実施例:
第1実施例では、地図表示装置10は、仮想空間VSにおいて視点PVを固定して、表示画面DSPに3次元的に一様に表示するための表示画像データを生成した。第2実施例では、仮想空間VSが3次元的な表示から2次元表示に連続的に変化する表示画像データを生成し、表示画面DSPに表示する。第2実施例の地図表示装置の構成は、第1実施例の地図表示装置と同様であるので、説明を省略する。
【0077】
図12は、第2実施例の地図表示装置10における表示画像データの生成方法、および、表示画像の一例を示す説明図である。図12の右側には、表示画像データの生成方法を概念的に示した。右図下段に図示した例では、3次元的な仮想空間VSの地表面Gに3つの建物B1、B2、B3が配置されている様子を示している。ここでは、仮想空間VSの領域に応じて、異なる視点PV1、PV2、PV3、および、視線ベクトルが設定されており、視線ベクトルと仮想空間VSの地表面Gとのなす角度を、仮想空間VSの奥行き方向(Y軸方向)に、単調に増加させて、表示画像データを生成する様子を示している。視線ベクトルと地表面Gとのなす角度は相対的なものであるから、右図上段に図示したように、視点を点PV'に固定し、湾曲した地表面G'の法線方向に建物B1'、B2'、B3'を配置した仮想空間VS'を形成して表示画像データを生成するのと同等である。このようにして生成した表示画像データに基づく表示画像を左図に示した。図示した建物b1、b2、b3の様子から、表示画像が3次元的な表示から2次元表示に連続的に変化している様子が分かる。
【0078】
図13は、第2実施例における地図表示処理の流れを示すフローチャートである。地図表示装置10のCPUが実行する処理である。まず、CPUは、入力部150によって、ユーザによって指定された表示エリアを取得する(ステップS500)。次に、表示エリアに基づいて、参照部120によって、電子地図データを参照する(ステップS510)。次に、表示画像データ生成部130によって、図12に示した地表面が湾曲した仮想空間VS'を定義し(ステップS520)、平面オブジェクトおよび立体オブジェクトを配置する(ステップS540)。立体オブジェクトは、それぞれ高さデータに基づいて、地表面から垂直方向に配置される。次に、視点PV'および視野枠FRMを設定する(ステップS540)。そして、先に説明した表示画像データを生成し(ステップS550)、表示画面DSPに地図を表示する(ステップS560)。
【0079】
このように表示画像データを生成することによって、様々な視点から地表面を見た仮想空間の地図を表示することができる。また、本実施例では、仮想空間VSの奥の方の領域において、視線ベクトルと地表面Gとのなす角度が大きいため、奥の方の領域が2次元表示に近い状態で表示される。従って、表示画面上でユーザが位置の指定を行いやすいという利点もある。本実施例の地図表示装置10で表示された地図は、印刷装置で印刷して利用することも可能である。
【0080】
なお、第2実施例の地図表示装置の構成は、第1実施例の地図表示装置10と同様であるから、第2実施例の地図表示装置においても、地図表示装置10と同様にして、指定点特定処理や、サブディスプレイ表示処理や、付加情報表示処理などの処理を行うことができる。
【0081】
C.変形例:
以上、本発明のいくつかの実施の形態について説明したが、本発明はこのような実施の形態になんら限定されるものではなく、その要旨を逸脱しない範囲内において種々なる態様での実施が可能である。例えば、以下のような変形例が可能である。
【0082】
C1.変形例1:
上記第1実施例では、図5〜図7を用いて説明した指定点特定処理のステップS270において、指定オブジェクトを遮る立体オブジェクトを半透明表示するものとしたが、これに限られない。この場合において、例えば、指定オブジェクトを強調表示するようにしてもよい。図14は、変形例としての指定オブジェクトを強調表示した様子を示す説明図である。強調表示としては、例えば、色彩や模様を変化させた表示などが挙げられる。このようにすることによっても、表示画面DSP上に指定オブジェクトの全体像を表示することができるので、ユーザは、自らが指定した指定オブジェクトが地図表示装置10によって有効に取り扱われていることを視認するとともに、指定オブジェクトを見易くすることができる。
【0083】
C2.変形例2:
上記第1実施例では、マウスポインタは、表示画面DSPの2次元座標上で移動するものとしたが、仮想空間VS内の3次元座標上で移動するマウスポインタを表示するものとしてもよい。図15は、本変形例におけるマウスポインタの移動の様子を示す説明図である。図15(a)は、2D地図を示している。図中の楕円は、等高線であり、山が存在していることを示している。図15(b)、(c)は、3D地図を示している。図15(b)、(c)中には、マウスポインタが視点から遠ざかるに連れて、徐々に小さくなっていく様子も併せて示した。
【0084】
図15(b)は、図15(a)に示した地点A〜Dまでマウスポインタが地表面上に沿って移動する様子を示している。図示するように地点Aおよび地点Dでは、マウスポインタMPa、MPdは、山の陰に隠れておらず、視点から見える。地点Bおよび地点Cでは、マウスポインタMPb、MPcは、破線で示したように、山の陰に隠れてしまうので、視点から見えない。なお、このようにマウスポインタがオブジェクトの陰に隠れる場合には、オブジェクトの陰の領域が見えるように、視点を変更した3D地図を表示してもよい。また、マウスポインタが見えるように、第1実施例で説明したサブディスプレイの表示を行うようにしてもよい。こうすることによって、ユーザが指定したい地点を3D地図上に表示することができる。
【0085】
図15(b)に示したマウスポインタの表示は、以下の処理によって行う。地図表示装置は、過去に移動したマウスポインタの2次元座標値およびこれに対応する仮想空間の3次元座標値の履歴データを保持する履歴データ保持部を備えている。地図表示装置のCPUは、現在のマウスポインタの2次元座標値と履歴データの2次元座標値とを取得し、両者からマウスポインタの移動方向および移動量を算出する。そして、算出した移動方向、移動量、および、履歴データの3次元座標値に基づいて、地図上にマウスポインタの表示を行う。このような処理によって、図15(b)に示した、マウスポインタが地表面に沿って山を登り、下ってゆく様子を表示することができる。
【0086】
図15(c)は、マウスポインタが仮想空間の空中を移動する様子を示している。本変形例では、マウスポインタが仮想空間内の所定の高さを移動するように設定される。また、仮想空間内の所定位置に太陽sunが設定される。図中に黒で示した矢印SPa、SPdは、マウスポインタMPa、MPdの影である。マウスポインタMPb、マウスポインタMPcの影SPb、SPcは、山の陰に隠れていて見えない。このように、空中を移動するマウスポインタMPa〜MPdおよびその影SPa、SPdの表示を行い、影の地点をマウスポインタが指している地点としてもよい。こうすることによって、マウスポインタがオブジェクトの陰に隠れてしまうことを回避することができる。
【0087】
C3.変形例3:
上記第1実施例では、指定点特定処理において、指定点が表示画面DSPの軸axよりも上側の領域に存在するか否かの判断を行ったが、この判断を行わなくてもよい。この場合、指定点に立体オブジェクトの画像が存在するか否かに応じて、位置の特定方法を切り換えればよい。
【0088】
更に、指定点に立体オブジェクトが存在するか否かの判断も行わなくてもよい。この場合、例えば、指定点が常に地表面上の地点を指定しているものとして、位置の特定を行えばよい。
【0089】
C4.変形例4:
上記第1実施例では、指定点特定処理において、指定点の2次元座標値を仮想空間VSにおける地表面G上の3次元座標値に変換したが、これに限られない。高さは、既定値を用いることが可能であり、例えば、所定の標高など、予め設定された所定値を用いることが可能である。
【0090】
C5.変形例5:
上記第1実施例では、サブディスプレイ表示処理において、サブディスプレイSDSPの形成位置を指定点付近に設定し、図9(b)に示したように、指定点周辺を3次元的な表示に代えて、2次元表示で表示したが、これに限られない。例えば、両者を並べて表示するようにしてもよい。
【0091】
C6.変形例6:
上記第1実施例では、付加情報表示処理において、指定オブジェクトに対応付けられた付加情報を表示するものとしたが、更に、指定オブジェクト内の位置を指定可能とし、その位置に対応付けられた付加情報を表示するようにしてもよい。例えば、高層ビルの各階を指定して、各付加情報を表示できるようにしてもよい。
【0092】
C7.変形例7:
上記第2実施例では、視線ベクトルと地表面とのなす角度を、仮想空間の奥行き方向(Y方向)に、単調に増加させて表示画像データを生成したが、これに限られない。例えば、幅方向(X方向)に変化させてもよい。また、変化のさせ方は、単調な変化に限らず、任意に変化させてもよい。
【0093】
C8.変形例8:
上記実施例では、地図表示装置10は、パーソナルコンピュータに、電子地図を表示するためのアプリケーションプログラムをインストールすることによって構成されているものとしたが、例えば、カーナビゲーション装置などの地図表示装置に本発明を適用するものとしてもよい。
【0094】
また、図1に示した機能ブロックの一部を、ネットワークを介して接続されたサーバに備えるようにしてもよい。例えば、サーバ側で電子地図データを参照し、表示画像データの生成を行うようにしてもよい。
【図面の簡単な説明】
【0095】
【図1】第1実施例としての地図表示装置10の概略構成を示す説明図である。
【図2】3D地図表示処理の流れを示すフローチャートである。
【図3】3D表示画像データの生成方法について示す説明図である。
【図4】指定点が表示画面DSPの軸axよりも下側の領域に存在し、その点に立体オブジェクトの画像が存在する場合の、仮想空間VSにおける指定点の特定方法を示す説明図である。
【図5】指定点特定処理の流れを示すフローチャートである。
【図6】指定オブジェクトを半透明表示させる様子を示す説明図である。
【図7】指定オブジェクトの少なくとも一部を遮る立体オブジェクトを半透明表示させる様子を示す説明図である。
【図8】サブディスプレイ表示処理の流れを示す説明図である。
【図9】サブディスプレイSDSPの表示例を示す説明図である。
【図10】付加情報表示処理の流れを示すフローチャートである。
【図11】付加情報の表示例を示す説明図である。
【図12】第2実施例の地図表示装置10における表示画像データの生成方法、および、表示画像の一例を示す説明図である。
【図13】第2実施例における地図表示処理の流れを示すフローチャートである。
【図14】変形例としての指定オブジェクトを強調表示した様子を示す説明図である。
【図15】変形例におけるマウスポインタの移動の様子を示す説明図である。
【符号の説明】
【0096】
10...地図表示装置
12...マウス
14...ディスプレイ
16...ハードディスク
18...CD−ROMドライブ
110...制御部
120...参照部
130...表示画像データ生成部
140...表示制御部
150...入力部
160...判断部
170...特定部
180...変換部
DSP...表示画面
VS、VS'...仮想空間
G、G'、g...地表面
PV、PV1〜PV3、PV'...視点
FRM...視野枠
AX、ax...軸
Pr...代表点
SDSP...サブディスプレイ
【技術分野】
【0001】
本発明は、地図表示装置、地図上の位置を特定する方法、および、コンピュータプログラムに関する。
【背景技術】
【0002】
従来、コンピュータで利用可能に電子化された、いわゆる電子地図データが普及している。近年では、3次元的な表示が可能な電子地図データも普及している。3次元的に表示された電子地図は、街の鳥瞰や道路の立体交差などを立体的にリアルに表現することができるため、地図の把握がし易いという利点がある。このような3次元的な表示が可能な電子地図データは、いわゆるパーソナルコンピュータにインストールされた地図ソフトや、ナビゲーションシステムなどで利用される。
【0003】
【特許文献1】特開平4−267427号公報
【特許文献2】特開平9−265550号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
電子地図では、表示画面に表示されるエリアの指定や、ナビゲーションシステムにおける目的地の指定など、ユーザがポインティングデバイスで任意の地点を指定できることが望まれる。しかし、表示画面は2次元であるため、例えば、3次元的に表示された電子地図では、建物の陰になる地点等は、ポインティングデバイスで指定することができなかった。つまり、従来の3次元的に表示された電子地図においては、ポインティングデバイスなどによるオブジェクトや地点の指定方法に支障や制限があった。
【0005】
本発明は、上述の課題を解決するためになされたものであり、3次元的に表示された電子地図において、電子地図上の位置の指定を可能にすることを目的とする。
【課題を解決するための手段】
【0006】
上述の課題の少なくとも一部を解決するため、本発明では、以下の構成を採用した。
本発明の第1の地図表示装置は、
所定の電子地図データに基づいて、電子地図を3次元的に表示する地図表示装置であって、
前記電子地図データを参照する参照部と、
前記電子地図データに基づいて定まる3次元の仮想空間を3次元的に表示するための表示画像データを生成し、該表示画像データに基づく表示画像を表示する表示部と、
前記表示画像上で定義された2次元座標系において、ユーザによって指定された指定点に対応する2次元座標値を入力する座標値入力部と、
前記2次元座標値を、前記仮想空間で定義された3次元座標系において、高さが既定値である制約下で、3次元座標値に変換する変換部と、
を備えることを要旨とする。
【0007】
電子地図データは、一般に、緯度、経度などの座標系で、地図上に配置される道路や建物などのオブジェクトの配置位置を示すデータや、オブジェクトの形状データなどを含んでいる。そして、地図表示装置は、このような電子地図データを利用して、3次元の仮想空間を形成し、これを2次元の表示画面上に地図を3次元的に表示することが可能である。3次元の仮想空間は、オブジェクトに現実の高さデータが付与された3次元モデルに基づいて形成してもよいし、2次元の平面モデルにおいて、オブジェクトに任意の高さを付与することによって形成してもよい。ユーザは、地図表示装置の表示画面上で、マウスなどのポインティングデバイスを用いて任意の位置を指定する。
【0008】
本発明では、ユーザによって指定された表示画面上の指定点の2次元座標値を、仮想空間上の3次元座標値へ変換する際に、仮想空間上の3次元座標系における高さを既定値に固定する。このように3次元座標の1つに制約条件をかけることによって、指定点の2次元座標値を3次元座標値に一義的に変換することができる。つまり、3次元的に表示された電子地図において、指定点の電子地図上の位置を一義的に特定することができる。
【0009】
本発明の第1の地図表示装置において、
前記既定値は、例えば、予め設定された所定値であるものとすることができる。
【0010】
「所定値」は、任意に設定可能であり、例えば、地表面の代表高さなど、所定の標高とすることができる。本発明によって、指定点の2次元座標値を、仮想空間内において高さが所定値の3次元座標値に変換することができる。
【0011】
また、本発明の第1の地図表示装置において、
前記既定値は、例えば、前記仮想空間内の地表面に基づいた高さであるものとしてもよい。
【0012】
「地表面に基づいた高さ」とは、例えば、地表面高さであってもよいし、地表面から一定の高さであってもよい。こうすることによって、地表に起伏がある場合でも、指定点の2次元座標値を仮想空間内の地表面上の3次元座標値に変換することができる。
【0013】
上記地図表示装置において、例えば、
前記表示部が、前記仮想空間内に設定された視点および視野枠に基づいて前記表示画像データを生成する場合、
前記変換部は、前記2次元座標値を、前記2次元座標値を前記視野枠に写像して得られる点と、前記視点とを結ぶ直線が、前記仮想空間内の地表面と交差する点の3次元座標値に変換するようにすることができる。
【0014】
こうすることによって、例えば、仮想空間内で地表面が起伏している場合でも、表示画面上の指定点を仮想空間上の3次元座標値に変換し、位置を特定することができる。
【0015】
上述した本発明の第1の地図表示装置において、
前記表示部は、前記仮想空間内に設定された視線ベクトルに基づいて前記表示画像データを生成し、
前記変換部は、前記視線ベクトルと直交する前記仮想空間内の地表面上の軸よりも、前記表示画像において上側の点が前記指定点として指定されているときに、前記2次元座標値を、前記指定点から前記軸への垂線の足に対応する3次元座標値に変換するようにすることができる。
【0016】
3次元的な地図を2次元的な表示画面上に表示する場合、視点に近い領域を表す表示画面の下側よりも、視点から遠い位置を表す表示画面の上側の方が、仮想空間における奥行き方向の座標間隔が狭く表示されるため、ユーザは、表示画面上で位置の指定を行いにくくなる傾向にある。このため、ユーザが意図した指定点と特定結果との誤差が大きくなる場合がある。
【0017】
本発明では、前記軸を境界線として、2次元座標値から3次元座標値への座標値の変換方法、即ち、指定点の特定方法を切り換える。表示画面において、指定点が、視点から遠い、前記軸よりも上側の領域に存在する場合は、ユーザが軸上の点を指定したものとして指定点の2次元座標値を取り扱う。こうすることによって、ユーザの意図と大きく離れた地点が特定されることを回避することができる。
【0018】
本発明の第2の地図表示装置は、
所定の電子地図データに基づいて、電子地図を3次元的に表示する地図表示装置であって、
前記電子地図データを参照する参照部と、
前記電子地図データに基づいて、該電子地図データに含まれる少なくとも一部のオブジェクトを立体オブジェクトとして立体的に表示することにより、前記電子地図データに基づいて定まる3次元の仮想空間を3次元的に表示するための表示画像データを生成し、該表示画像データに基づく表示画像を表示する表示部と、
前記表示画面上で定義された2次元座標系において、ユーザによって指定された指定点に対応する2次元座標値を入力する座標値入力部と、
前記2次元座標値に基づいて、前記指定点に、前記立体オブジェクトの表示画像が存在するか否かを判断する判断部と、
該判断部が、前記立体オブジェクトの表示画像が存在すると判断した場合に、該立体オブジェクトを、前記ユーザが指定する指定オブジェクトとして特定する特定部と、
を備えることを要旨とする。
【0019】
3次元的に表示される電子地図上に配置されるオブジェクトには、ビルなど立体的に表示される立体オブジェクトと、地表面上に沿って通る道路など平面的に表示される平面オブジェクトとがある。本発明では、ユーザが表示画面上で立体オブジェクトの画像を指定したときに、仮想空間上においても、そのオブジェクトが指定されたものとして特定することができる。
【0020】
上記地図表示装置において、更に、
前記特定部は、前記仮想空間において、前記指定オブジェクトに対応づけられた所定の代表点の3次元座標を出力するようにすることができる。
【0021】
電子地図データにおいて、オブジェクトは、通常、その配置位置である代表点と対応付けられている。本発明によって、ユーザによって表示画面上で立体オブジェクトの画像のどの部分(2次元座標値)が指定されても、代表点が指定されたものとして指定点の3次元座標値を特定することができる。
【0022】
上記地図表示装置において、代表点として、例えば、ビルの屋上など、オブジェクトによって異なった、高さを含む3次元座標値を用いるようにしてもよいが、
前記代表点は、前記指定オブジェクトに含まれ、前記仮想空間内の地表面上の一点であるものとすることができる。
【0023】
こうすることによって、複数の立体オブジェクトについて、3次元座標値のうちの高さを統一することができるので、仮想空間における位置の特定を容易に行うことができる。
【0024】
本発明の第2の地図表示装置において、
前記表示部は、前記指定オブジェクトを強調表示するようにすることができる。
【0025】
こうすることによって、ユーザは、自らが表示画面上で指定した立体オブジェクトが地図表示装置によって有効に取り扱われていることを視認することができる。
【0026】
本発明の第2の地図表示装置において、
前記表示部は、少なくとも、前記表示画像上で前記指定オブジェクトの少なくとも一部を遮る立体オブジェクトを半透明表示、あるいは、透明表示するようにしてもよい。
【0027】
こうすることによって、表示画面上に指定オブジェクトの全体像を表示することができるので、ユーザが指定オブジェクトを見易くすることができる。
【0028】
上述した指定オブジェクトを強調表示する、あるいは、指定オブジェクトの少なくとも一部を遮る立体オブジェクトを半透明表示する地図表示装置において、
前記電子地図データは、前記立体オブジェクトと対応付けられ、該立体オブジェクトに関する所定の付加情報を含んでいる場合、
前記地図表示装置は、更に、
前記指定オブジェクトの前記付加情報の表示要求を入力する要求入力部を備え、
前記表示部は、前記表示要求に応じて、更に、前記付加情報を表示するようにすることができる。
【0029】
こうすることによって、ユーザは、指定オブジェクトに対応する付加情報を利用することができ、電子地図の利便性を向上させることができる。
【0030】
本発明の第2の地図表示装置において、更に、
前記指定オブジェクトを半透明表示する指示を入力する指示入力部を備え、
前記表示部は、前記指示に応じて、前記指定オブジェクトを半透明表示するようにしてもよい。また、前記指定オブジェクトを透明表示する指示を入力する指示入力部を備え、前記表示部は、前記指示に応じて、前記指定オブジェクトを透明表示するようにしてもよい。
【0031】
こうすることによって、ユーザの指示によって、指定オブジェクトを半透明表示させることができる。この場合、半透明に表示された指定オブジェクトは、地図上にないものとして取り扱う。この結果、指定オブジェクトの陰に隠れていたオブジェクトを、更に、指定オブジェクトとして指定することができる。
【0032】
上述した本発明の第2の地図表示装置において、
前記表示部は、前記仮想空間内に設定された視線ベクトルに基づいて前記表示画像データを生成し、
更に、前記視線ベクトルと直交する前記仮想空間内の地表面上の軸よりも、前記表示画像において上側の点が前記指定点として指定されているときに、前記2次元座標値を、前記指定点から前記軸への垂線の足に対応する3次元座標値に変換する変換部を備えるようにしてもよい。
【0033】
こうすることによって、先に第1の地図表示装置で説明したのと同様に、指定点の特定を簡易に行うことができる。
【0034】
本発明の第1または第2の地図表示装置において、
前記表示部は、前記指定点の周辺領域を表す2次元の電子地図を、前記3次元的に表示された電子地図と共に表示するようにしてもよい。
【0035】
こうすることによって、ユーザは、指定点の周辺領域の地図を、3次元的な表示と、2次元的な表示との双方で、同時に同じ表示画面で見ることができるので、電子地図の利便性を向上させることができる。更に、3次元的な表示と同時に表示された2次元的に表示された地図において、2次元的な位置の指定を行えるようにしてもよい。
【0036】
なお、上記地図表示装置において、
前記表示部は、前記指定点の周辺領域については、前記3次元的な表示に代えて、前記2次元の電子地図を表示するようにしてもよい。
【0037】
本発明は、画像データ生成装置の発明として構成することもできる。即ち、本発明の画像データ生成装置は、
所定の電子地図データに基づいて、所定の表示装置に電子地図を表示させるための表示画像データを生成する画像データ生成装置であって、
前記電子地図データを参照する参照部と、
前記電子地図データに基づいて定まる3次元の仮想空間を表示するための表示画像データを、該仮想空間内に設定された視点および視線ベクトルに基づいて、該視線ベクトルと前記仮想空間内の地表面とのなす角度および前記視点が、表示対象となる前記仮想空間の領域に応じて、相対的に異なるように生成する表示画像データ生成部と、
を備えることを要旨とする。
【0038】
「視線ベクトルと仮想空間内の地表面とのなす角度および視点が、表示対象となる仮想空間の領域に応じて、相対的に異なる」とは、仮想空間の座標値を固定して、視線ベクトルを変化させてもよいし、視線ベクトルを固定して、仮想空間の座標値を変化させてもよいことを意味している。本発明によって、地図表示装置に、様々な視線から仮想空間の地表面を見たときの地図を表示させることができる。
【0039】
なお、上記画像データ生成装置において、
前記表示画像データ生成部は、前記視線ベクトルと前記地表面とのなす角度および視線を単調に変化させることによって、前記表示画像が3次元的な表示から2次元表示に連続的に変化する表示画像データを生成するようにしてもよい。
【0040】
本発明の画像データ生成装置で生成された表示画像データは、地図表示装置の表示画面に表示される。従って、上述した画像データ生成装置と、生成された表示画像データに基づく表示画像を表示する表示部とを備える地図表示装置の発明として構成することもできる。
【0041】
また、表示画面に表示された地図を印刷装置によって印刷して利用することも可能であり、地図の発明として構成することもできる。
【0042】
本発明は、上述の地図表示装置、画像データ生成装置としての構成の他、電子地図においてユーザが指定した指定点やオブジェクトの特定方法、電子地図を表示させるための画像データ生成方法、電子地図の表示方法の発明として構成することもできる。また、これらを実現するコンピュータプログラム、およびそのプログラムを記録した記録媒体、そのプログラムを含み搬送波内に具現化されたデータ信号など種々の態様で実現することが可能である。なお、それぞれの態様において、先に示した種々の付加的要素を適用することが可能である。
【0043】
本発明をコンピュータプログラムまたはそのプログラムを記録した記録媒体等として構成する場合には、地図表示装置を駆動するプログラム全体として構成するものとしてもよいし、本発明の機能を果たす部分のみを構成するものとしてもよい。また、記録媒体としては、フレキシブルディスクやCD−ROM、DVD−ROM、光磁気ディスク、ICカード、ROMカートリッジ、パンチカード、バーコードなどの符号が印刷された印刷物、コンピュータの内部記憶装置(RAMやROMなどのメモリ)および外部記憶装置などコンピュータが読み取り可能な種々の媒体を利用できる。
【発明を実施するための最良の形態】
【0044】
以下、本発明の実施の形態について、実施例に基づき以下の順序で説明する。
A.第1実施例:
A1.地図表示装置の概略構成:
A2.3D地図表示処理:
A3.指定点特定処理:
A4.サブディスプレイ表示処理:
A5.付加情報表示処理:
B.第2実施例:
C.変形例:
【0045】
A.第1実施例:
A1.地図表示装置の概略構成:
図1は、第1実施例としての地図表示装置10の概略構成を示す説明図である。本実施例の地図表示装置10は、汎用のパーソナルコンピュータであり、図示しないCPUやメモリの他、マウス12や、表示画面DSPを表示するためのディスプレイ14や、ハードディスク16や、CD−ROMドライブ18などを備えている。地図表示装置10は、パーソナルコンピュータに、電子地図を表示するためのアプリケーションプログラムをインストールすることによって構成されている。
【0046】
地図表示装置10は、図示した各機能ブロックをソフトウェア的に備えている。制御部110は、地図表示装置10内の各部の動作制御を行う。参照部120は、電子地図データを記録したコンパクト・ディスクCDや、ハードディスク16から電子地図データを参照する。電子地図データは、地図上の位置を示す緯度、経度や、地図上に配置されるオブジェクトの配置位置を示すデータや、オブジェクト(地物)の形状データや高さデータや、オブジェクトに関する付加情報などを含んでいる。付加情報としては、ビルの名称や、店舗の電話番号、営業時間など、ユーザに提供するための情報が挙げられる。参照部120は、電子地図データを、インターネットなどのネットワークを介して所定のサーバから参照するようにしてもよい。
【0047】
表示画像データ生成部130は、参照部120が参照した電子地図データに基づいて、更に、後述する入力部150に入力された各種指示等に応じて、ディスプレイ14に、2次元表示(2D)の電子地図を表示したり、3次元的な表示(3D)の電子地図を表示したりするための画像データを生成する。表示画像データ生成部130は、更に、後述するように、ユーザからの指示に応じて、表示画面DSPに表示された3D地図上に立体的に表示されたビルなどの立体オブジェクトの表示方法を変更したり、ユーザによって指定されたオブジェクトに対応する付加情報を表示させたりするための表示画像データを生成したりもする。表示制御部140は、表示画像データ生成部130で生成された画像データをディスプレイ14に表示するための制御を行う。
【0048】
入力部150は、ディスプレイ14の表示画面DSPの切り換え等のユーザからの各種指示の入力や、表示画面DSP上で、ユーザによってマウス12を用いて指定された指定点の2次元座標値を入力する。判断部160は、指定点の2次元座標値に基づいて、表示画面DSPに表示された立体オブジェクトの画像と指定点との位置関係などを判断する。この判断の詳細については、後述する。特定部170は、判断部160が、指定点が立体オブジェクトの画像上に存在すると判断したときに、その立体オブジェクトを、ユーザによって指定された指定オブジェクトとして特定する。更に、特定部170は、指定オブジェクトの代表点の3次元座標値を出力する。代表点とは、電子地図上に配置されるオブジェクトに対応付けられた代表的な配置位置の座標値である。本実施例では、代表点は、地表面上の点であるものとした。変換部180は、指定点の2次元座標値を、判断部160の判断結果に応じて、3次元座標値に変換する。
【0049】
A2.3D地図表示処理:
図2は、3D地図表示処理の流れを示すフローチャートである。地図表示装置10のCPUが実行する処理である。まず、CPUは、入力部150によって、ユーザによって指定された表示エリアを取得する(ステップS100)。表示エリアとしては、例えば、「九州」、「福岡県」、「北九州市」、更に、町名、番地などの住所が挙げられる。次に、表示エリアに基づいて、参照部120によって、電子地図データを参照する(ステップS110)。そして、表示画像データ生成部130によって、2次元表示の電子地図を表示するための2D表示画像データを生成し(ステップS120)、表示画面DSPに2D地図を表示する(ステップS130)。次に、入力部150によって、ユーザが2D地図上で指定したエリアについての3D地図の表示指示を取得する(ステップS140)。そして、参照部120によって、電子地図データを参照し、表示画像データ生成部130によって、3次元的な表示の電子地図を表示するための3D表示画像データを生成して(ステップS150)、表示画面DSPに3D地図を表示する(ステップS160)。このとき、表示画面DSPには、2次元座標上で移動するマウスポインタも表示される。なお、本実施例では、2D地図を表示した後に、3D地図を表示するものとしたが、2D地図の表示処理(ステップS120、および、ステップS13)をジャンプしてもよい。
【0050】
図3は、3D表示画像データの生成方法について示す説明図である。図の右側には、電子地図データに基づいて定まる3次元の仮想空間VSを示した。仮想空間VSの地表面Gには、表示画面DSPに立体オブジェクトとして表示されるビルBLDが配置されている。図の左側には、表示画面DSPを示した。表示画面DSPには、仮想空間VSにおけるビルBLDを立体的に表示した立体オブジェクトとしてのビルbldの画像が配置されている。
【0051】
本実施例では、仮想空間VS内に視点PV、視点PVからの視線ベクトル、および、視野枠FRMを設定し、視点PVから視野枠FRMを通して仮想空間VSの地表面Gを見たときの像を用いて3D表示画像データを生成するものとした。視野枠FRMと視点PVとの距離を変更することによって、あるいは、視野枠FRMのサイズを変更することによって、表示画面DSPに表示される地図の縮尺を変更することができる。なお、視野枠FRMから見える仮想空間VSの地表面Gには、図示した例では、X軸に平行な軸AXが設定されている。軸AXは、地表面G上で視線ベクトルに直交する軸である。この軸AXは、表示画面DSPの軸axと対応している。
【0052】
A3.指定点特定処理:
本実施例の地図表示装置10は、3D地図が表示された表示画面DSP上において、マウス12を用いてユーザによって指定された指定点の仮想空間VS内の位置を特定することができる。指定点の位置の特定は、以下に説明する3通りに分けて行う。即ち、(1)指定点が表示画面DSPの軸axよりも上側の領域に存在する場合、(2)指定点が表示画面DSPの軸axよりも下側の領域に存在し、その点に立体オブジェクトの画像が存在しない場合、(3)指定点が表示画面DSPの軸axよりも下側の領域に存在し、その点に立体オブジェクトの画像が存在する場合、の3通りである。
【0053】
図3に(1)、(2)の場合の指定点の特定方法を併せて示した。図3において、点Paは、表示画面DSPの軸axよりも上側の領域に存在する点である。この場合、点Paから軸axへの垂線の足である点Pa'を求め、点Pa'を視野枠FRMに写像して得られる点Pa'mと視点PVとを結ぶ直線が仮想空間VSの地表面Gと交差する軸AX上の点Pavを仮想空間VS内の指定点として特定する。
【0054】
3D地図を表示する場合、視点PVに近い領域を表す表示画面DSPの下側よりも、視点PVから遠い位置を表す表示画面DSPの上側の方が、仮想空間における奥行き方向の座標間隔が狭く表示されるため、ユーザは、表示画面上で位置の指定を行いにくくなる傾向にある。このため、ユーザが意図した指定点と特定結果との誤差が大きくなる場合がある。先に説明したように、軸axよりも上側の指定点を軸ax上の点として取り扱うことによって、仮想空間VSにおいて、ユーザの意図と大きく離れた地点が特定されることを回避することができる。なお、軸axを考慮せずに、次に説明する(2)、(3)の場合と同様に指定点の特定を行ってもよい。
【0055】
図3において、点Pbは、表示画面DSPの軸axよりも下側の領域に存在し、その点に立体オブジェクトの画像が存在しない点である。この場合、点Pbを視野枠FRMに写像して得られる点Pbmと視点PVとを結ぶ直線が仮想空間VSの地表面Gと交差する点Pbvを仮想空間VS内の指定点として特定する。
【0056】
こうすることによって、例えば、仮想空間VS内で地表面Gが起伏している場合でも、表示画面DSP上の指定点を仮想空間VS上の3次元座標値に変換し、位置を特定することができる。
【0057】
図4は、(3)の場合の仮想空間VSにおける指定点の特定方法を示す説明図である。立体オブジェクトの画像上に表した点P1〜P4は、いずれも図3に示した軸axよりも下側の領域に存在する点であるものとする。この場合、表示画面DSPにおいて、指定点として点P1〜P4のいずれが指定されたとしても、代表点Prが指定されたものとして取り扱う。即ち、代表点Prを視野枠FRMに写像して得られる点と視点PVとを結ぶ直線が仮想空間VSの地表面Gと交差する点を仮想空間VS内の指定点として特定する。
【0058】
こうすることによって、ユーザが表示画面DSPで立体オブジェクトを指定したときに、仮想空間VS上においても、そのオブジェクトが指定されたものとして特定し、更に、3次元座標値を特定することができる。
【0059】
図5は、指定点特定処理の流れを示すフローチャートである。地図表示装置10のCPUが実行する処理である。まず、CPUは、入力部150によって、表示画面DSPにおける指定点の2次元座標値を取得する(ステップS200)。次に、判断部160によって、指定点が表示画面DSP上の軸axよりも上側の領域に存在するか否かを判断する(ステップS210)。指定点が軸axよりも上側の領域に存在する場合は、先に説明したように、仮想空間VS内の地表面G上に設定された軸AX上の3次元座標値に変換する(ステップS220)。
【0060】
ステップS210において、指定点が軸axよりも下側の領域に存在する場合は、指定点に立体オブジェクトの画像が存在するか否かを判断する(ステップS230)。指定点に立体オブジェクトの画像が存在しない場合には、先に説明したように、仮想空間VS内の地表面G上の3次元座標値に変換する(ステップS240)。
【0061】
本実施例の地図表示装置10は、表示画面DSPにおいて、指定点に立体オブジェクトの画像が存在する場合、ユーザの指示によって、その立体オブジェクト(指定オブジェクト)を半透明表示させることができる。
【0062】
図6は、指定オブジェクトを半透明表示させる様子を示す説明図である。ここでは、表示画面DSPに4つのビルBLD1〜BLD4が表示されている例を示した。図6(a)に示したように、ユーザがマウス12によってビルBLD4を指定し、半透明表示させる指示を入力する。そうすると、図6(b)に示したように、ビルBLD4が半透明表示され、ビルBLD4の陰に隠れていたビルBLD1〜BLD3の一部や、道路が表示される。これらの表示画像データは、先に説明したように、表示画像データ生成部130が生成する。
【0063】
こうすることによって、指定オブジェクトの陰に隠れていた他の立体オブジェクトや地表面を表示させることができる。このとき、半透明表示された指定オブジェクトは、地図上にないものとして取り扱われる。従って、ユーザは、半透明表示された領域において、新たに指定点を指定することができる。
【0064】
図5のステップS230において、指定点に立体オブジェクトの画像が存在する場合には、ユーザから半透明表示の指示があるか否かを判断する(ステップS250)。半透明表示の指示がある場合には、指定点に存在する立体オブジェクトを半透明表示する(ステップS260)。そして、次の指定点の2次元座標値を取得し(ステップS265)、ステップS230に戻る。
【0065】
ステップS250において、半透明表示の指示がない場合には、表示画面DSP上で、指定オブジェクトの少なくとも一部を遮っている立体オブジェクトが存在するか否かを判断する(ステップS270)。指定オブジェクトの少なくとも一部を遮っている立体オブジェクトが存在しない場合には、先に説明したように、指定オブジェクトの代表点Prに対応する仮想空間VS内の点の3次元座標値を出力する(ステップS290)。指定オブジェクトの少なくとも一部を遮っている立体オブジェクトが存在する場合には、遮る立体オブジェクトを半透明表示して(ステップS280)、指定オブジェクトの代表点Prに対応する仮想空間VS内の点の3次元座標値を出力する(ステップS290)。
【0066】
図7は、指定オブジェクトの少なくとも一部を遮る立体オブジェクトを半透明表示させる様子を示す説明図である。表示画面DSPに4つのビルBLD1〜BLD4が表示されている例を示した。図7(a)に示したように、ユーザがマウス12によってビルBLD1指定する。図示した例では、ビルBLD2〜BLD4がビルBLD1の一部を遮っているので、図6(b)に示したように、ビルBLD2〜BLD4を半透明に表示する。これらの表示画像データは、表示画像データ生成部130が生成する。
【0067】
こうすることによって、表示画面DSP上に指定オブジェクトの全体像を表示することができるので、ユーザは、自らが指定した指定オブジェクトが地図表示装置10によって有効に取り扱われていることを視認するとともに、指定オブジェクトを見易くすることができる。
【0068】
A4.サブディスプレイ表示処理:
本実施例の地図表示装置10は、指定点の周辺領域について、表示画面DSPに表示された3D地図の中にサブディスプレイ領域を形成し、この領域に2D地図を表示させることができる。
【0069】
図8は、サブディスプレイ表示処理の流れを示す説明図である。指定点の特定後に、地図表示装置10のCPUが実行する処理である。まず。CPUは、入力部150によって、ユーザからのサブディスプレイ表示の指示を取得する(ステップS300)。次に、参照部120によって、電子地図データを参照する(ステップS310)。次に、表示画像データ生成部130によって、指定点の周辺領域の2D表示画像データを生成する(ステップS320)。そして、サブディスプレイの形成位置を指定点付近に設定して、表示画面DSPに表示中の3D地図の3D表示画像データとステップS320で生成した2D表示画像データとを合成し(ステップS330)、合成地図を表示画面DSPに表示する(ステップS340)。
【0070】
図9は、サブディスプレイSDSPの表示例を示す説明図である。図9(a)に示したように、表示画面DSP上でユーザがマウス12によって任意の指定点を指定する。そうすると、先に説明した指定点特定処理によって、仮想空間VS上の点の3次元座標値が特定される。そして、図8に示した処理によって、図9(b)に示したように、表示画面DSP内に、指定点の周辺領域を示す2D地図を表示するサブディスプレイSDSPが表示される。このとき、マウスポインタは、図示するように、サブディスプレイSDSP上で移動する。
【0071】
こうすることによって、ユーザは、指定点の周辺領域の地図を、3次元的な表示と、2次元的な表示との双方で、同時に同じ表示画面DSPで見ることができるので、電子地図の利便性を向上させることができる。更に、3次元的な表示と同時に表示された2次元的に表示された地図において、2次元的な位置の指定を行えるようにしてもよい。
【0072】
A5.付加情報表示処理:
本実施例の地図表示装置10は、ユーザの指示によって、3D電子地図データが含む付加情報を表示画面DSPに表示させることも可能である。
【0073】
図10は、付加情報表示処理の流れを示すフローチャートである。指定点の特定後に、地図表示装置10のCPUが実行する処理である。まず、CPUは、入力部150によって、ユーザからの付加情報の表示指示を取得する(ステップS400)。次に、参照部120によって、電子地図データを参照し(ステップS410)、指定オブジェクトに対応する付加情報を表示画面DSPに表示する(ステップS420)。
【0074】
図11は、付加情報の表示例を示す説明図である。ここでは、ユーザがビルBLD1の付加情報の表示指示を入力した場合について示した。図示するように、指定オブジェクトとしてのビルBLD1の画像とともに、その付加情報が表示される。
【0075】
こうすることによって、3D地図においても、ユーザは、指定オブジェクトに対応する付加情報を利用することができ、電子地図の利便性を向上させることができる。
【0076】
B.第2実施例:
第1実施例では、地図表示装置10は、仮想空間VSにおいて視点PVを固定して、表示画面DSPに3次元的に一様に表示するための表示画像データを生成した。第2実施例では、仮想空間VSが3次元的な表示から2次元表示に連続的に変化する表示画像データを生成し、表示画面DSPに表示する。第2実施例の地図表示装置の構成は、第1実施例の地図表示装置と同様であるので、説明を省略する。
【0077】
図12は、第2実施例の地図表示装置10における表示画像データの生成方法、および、表示画像の一例を示す説明図である。図12の右側には、表示画像データの生成方法を概念的に示した。右図下段に図示した例では、3次元的な仮想空間VSの地表面Gに3つの建物B1、B2、B3が配置されている様子を示している。ここでは、仮想空間VSの領域に応じて、異なる視点PV1、PV2、PV3、および、視線ベクトルが設定されており、視線ベクトルと仮想空間VSの地表面Gとのなす角度を、仮想空間VSの奥行き方向(Y軸方向)に、単調に増加させて、表示画像データを生成する様子を示している。視線ベクトルと地表面Gとのなす角度は相対的なものであるから、右図上段に図示したように、視点を点PV'に固定し、湾曲した地表面G'の法線方向に建物B1'、B2'、B3'を配置した仮想空間VS'を形成して表示画像データを生成するのと同等である。このようにして生成した表示画像データに基づく表示画像を左図に示した。図示した建物b1、b2、b3の様子から、表示画像が3次元的な表示から2次元表示に連続的に変化している様子が分かる。
【0078】
図13は、第2実施例における地図表示処理の流れを示すフローチャートである。地図表示装置10のCPUが実行する処理である。まず、CPUは、入力部150によって、ユーザによって指定された表示エリアを取得する(ステップS500)。次に、表示エリアに基づいて、参照部120によって、電子地図データを参照する(ステップS510)。次に、表示画像データ生成部130によって、図12に示した地表面が湾曲した仮想空間VS'を定義し(ステップS520)、平面オブジェクトおよび立体オブジェクトを配置する(ステップS540)。立体オブジェクトは、それぞれ高さデータに基づいて、地表面から垂直方向に配置される。次に、視点PV'および視野枠FRMを設定する(ステップS540)。そして、先に説明した表示画像データを生成し(ステップS550)、表示画面DSPに地図を表示する(ステップS560)。
【0079】
このように表示画像データを生成することによって、様々な視点から地表面を見た仮想空間の地図を表示することができる。また、本実施例では、仮想空間VSの奥の方の領域において、視線ベクトルと地表面Gとのなす角度が大きいため、奥の方の領域が2次元表示に近い状態で表示される。従って、表示画面上でユーザが位置の指定を行いやすいという利点もある。本実施例の地図表示装置10で表示された地図は、印刷装置で印刷して利用することも可能である。
【0080】
なお、第2実施例の地図表示装置の構成は、第1実施例の地図表示装置10と同様であるから、第2実施例の地図表示装置においても、地図表示装置10と同様にして、指定点特定処理や、サブディスプレイ表示処理や、付加情報表示処理などの処理を行うことができる。
【0081】
C.変形例:
以上、本発明のいくつかの実施の形態について説明したが、本発明はこのような実施の形態になんら限定されるものではなく、その要旨を逸脱しない範囲内において種々なる態様での実施が可能である。例えば、以下のような変形例が可能である。
【0082】
C1.変形例1:
上記第1実施例では、図5〜図7を用いて説明した指定点特定処理のステップS270において、指定オブジェクトを遮る立体オブジェクトを半透明表示するものとしたが、これに限られない。この場合において、例えば、指定オブジェクトを強調表示するようにしてもよい。図14は、変形例としての指定オブジェクトを強調表示した様子を示す説明図である。強調表示としては、例えば、色彩や模様を変化させた表示などが挙げられる。このようにすることによっても、表示画面DSP上に指定オブジェクトの全体像を表示することができるので、ユーザは、自らが指定した指定オブジェクトが地図表示装置10によって有効に取り扱われていることを視認するとともに、指定オブジェクトを見易くすることができる。
【0083】
C2.変形例2:
上記第1実施例では、マウスポインタは、表示画面DSPの2次元座標上で移動するものとしたが、仮想空間VS内の3次元座標上で移動するマウスポインタを表示するものとしてもよい。図15は、本変形例におけるマウスポインタの移動の様子を示す説明図である。図15(a)は、2D地図を示している。図中の楕円は、等高線であり、山が存在していることを示している。図15(b)、(c)は、3D地図を示している。図15(b)、(c)中には、マウスポインタが視点から遠ざかるに連れて、徐々に小さくなっていく様子も併せて示した。
【0084】
図15(b)は、図15(a)に示した地点A〜Dまでマウスポインタが地表面上に沿って移動する様子を示している。図示するように地点Aおよび地点Dでは、マウスポインタMPa、MPdは、山の陰に隠れておらず、視点から見える。地点Bおよび地点Cでは、マウスポインタMPb、MPcは、破線で示したように、山の陰に隠れてしまうので、視点から見えない。なお、このようにマウスポインタがオブジェクトの陰に隠れる場合には、オブジェクトの陰の領域が見えるように、視点を変更した3D地図を表示してもよい。また、マウスポインタが見えるように、第1実施例で説明したサブディスプレイの表示を行うようにしてもよい。こうすることによって、ユーザが指定したい地点を3D地図上に表示することができる。
【0085】
図15(b)に示したマウスポインタの表示は、以下の処理によって行う。地図表示装置は、過去に移動したマウスポインタの2次元座標値およびこれに対応する仮想空間の3次元座標値の履歴データを保持する履歴データ保持部を備えている。地図表示装置のCPUは、現在のマウスポインタの2次元座標値と履歴データの2次元座標値とを取得し、両者からマウスポインタの移動方向および移動量を算出する。そして、算出した移動方向、移動量、および、履歴データの3次元座標値に基づいて、地図上にマウスポインタの表示を行う。このような処理によって、図15(b)に示した、マウスポインタが地表面に沿って山を登り、下ってゆく様子を表示することができる。
【0086】
図15(c)は、マウスポインタが仮想空間の空中を移動する様子を示している。本変形例では、マウスポインタが仮想空間内の所定の高さを移動するように設定される。また、仮想空間内の所定位置に太陽sunが設定される。図中に黒で示した矢印SPa、SPdは、マウスポインタMPa、MPdの影である。マウスポインタMPb、マウスポインタMPcの影SPb、SPcは、山の陰に隠れていて見えない。このように、空中を移動するマウスポインタMPa〜MPdおよびその影SPa、SPdの表示を行い、影の地点をマウスポインタが指している地点としてもよい。こうすることによって、マウスポインタがオブジェクトの陰に隠れてしまうことを回避することができる。
【0087】
C3.変形例3:
上記第1実施例では、指定点特定処理において、指定点が表示画面DSPの軸axよりも上側の領域に存在するか否かの判断を行ったが、この判断を行わなくてもよい。この場合、指定点に立体オブジェクトの画像が存在するか否かに応じて、位置の特定方法を切り換えればよい。
【0088】
更に、指定点に立体オブジェクトが存在するか否かの判断も行わなくてもよい。この場合、例えば、指定点が常に地表面上の地点を指定しているものとして、位置の特定を行えばよい。
【0089】
C4.変形例4:
上記第1実施例では、指定点特定処理において、指定点の2次元座標値を仮想空間VSにおける地表面G上の3次元座標値に変換したが、これに限られない。高さは、既定値を用いることが可能であり、例えば、所定の標高など、予め設定された所定値を用いることが可能である。
【0090】
C5.変形例5:
上記第1実施例では、サブディスプレイ表示処理において、サブディスプレイSDSPの形成位置を指定点付近に設定し、図9(b)に示したように、指定点周辺を3次元的な表示に代えて、2次元表示で表示したが、これに限られない。例えば、両者を並べて表示するようにしてもよい。
【0091】
C6.変形例6:
上記第1実施例では、付加情報表示処理において、指定オブジェクトに対応付けられた付加情報を表示するものとしたが、更に、指定オブジェクト内の位置を指定可能とし、その位置に対応付けられた付加情報を表示するようにしてもよい。例えば、高層ビルの各階を指定して、各付加情報を表示できるようにしてもよい。
【0092】
C7.変形例7:
上記第2実施例では、視線ベクトルと地表面とのなす角度を、仮想空間の奥行き方向(Y方向)に、単調に増加させて表示画像データを生成したが、これに限られない。例えば、幅方向(X方向)に変化させてもよい。また、変化のさせ方は、単調な変化に限らず、任意に変化させてもよい。
【0093】
C8.変形例8:
上記実施例では、地図表示装置10は、パーソナルコンピュータに、電子地図を表示するためのアプリケーションプログラムをインストールすることによって構成されているものとしたが、例えば、カーナビゲーション装置などの地図表示装置に本発明を適用するものとしてもよい。
【0094】
また、図1に示した機能ブロックの一部を、ネットワークを介して接続されたサーバに備えるようにしてもよい。例えば、サーバ側で電子地図データを参照し、表示画像データの生成を行うようにしてもよい。
【図面の簡単な説明】
【0095】
【図1】第1実施例としての地図表示装置10の概略構成を示す説明図である。
【図2】3D地図表示処理の流れを示すフローチャートである。
【図3】3D表示画像データの生成方法について示す説明図である。
【図4】指定点が表示画面DSPの軸axよりも下側の領域に存在し、その点に立体オブジェクトの画像が存在する場合の、仮想空間VSにおける指定点の特定方法を示す説明図である。
【図5】指定点特定処理の流れを示すフローチャートである。
【図6】指定オブジェクトを半透明表示させる様子を示す説明図である。
【図7】指定オブジェクトの少なくとも一部を遮る立体オブジェクトを半透明表示させる様子を示す説明図である。
【図8】サブディスプレイ表示処理の流れを示す説明図である。
【図9】サブディスプレイSDSPの表示例を示す説明図である。
【図10】付加情報表示処理の流れを示すフローチャートである。
【図11】付加情報の表示例を示す説明図である。
【図12】第2実施例の地図表示装置10における表示画像データの生成方法、および、表示画像の一例を示す説明図である。
【図13】第2実施例における地図表示処理の流れを示すフローチャートである。
【図14】変形例としての指定オブジェクトを強調表示した様子を示す説明図である。
【図15】変形例におけるマウスポインタの移動の様子を示す説明図である。
【符号の説明】
【0096】
10...地図表示装置
12...マウス
14...ディスプレイ
16...ハードディスク
18...CD−ROMドライブ
110...制御部
120...参照部
130...表示画像データ生成部
140...表示制御部
150...入力部
160...判断部
170...特定部
180...変換部
DSP...表示画面
VS、VS'...仮想空間
G、G'、g...地表面
PV、PV1〜PV3、PV'...視点
FRM...視野枠
AX、ax...軸
Pr...代表点
SDSP...サブディスプレイ
【特許請求の範囲】
【請求項1】
所定の電子地図データに基づいて、電子地図を3次元的に表示する地図表示装置であって、
前記電子地図データを参照する参照部と、
前記電子地図データに基づいて定まる3次元の仮想空間を3次元的に表示するための表示画像データを、前記仮想空間内に設定された視点、該視点からの視線ベクトルおよび視野枠に基づいて生成し、前記表示画像データに基づく表示画像を表示する表示部と、
前記表示画像上で定義された2次元座標系において、ユーザによって指定された指定点に対応する2次元座標値を入力する座標値入力部と、
前記仮想空間で定義された3次元座標系において、前記指定点を前記視野枠に写像して得られる点および前記視点を結ぶ直線が前記仮想空間内の所定の高さに設定された面と交差する空中の点を求め、該空中の点から前記仮想空間内の地表面へ向けて前記面に対し所定の角度にて補助直線を伸ばし、該補助直線が前記仮想空間内の地表面と交差する地表面上の点を求め、該地表面上の点の3次元座標値を前記指定点の3次元座標値とする変換部と、
を備える地図表示装置。
【請求項2】
所定の電子地図データに基づいて、3次元的に表示された電子地図において、ユーザが指定した指定点の地図上の位置を特定する方法であって、
(a)コンピュータが、前記電子地図データを参照する工程と、
(b)コンピュータが、前記電子地図データに基づいて定まる3次元の仮想空間を3次元的に表示するための表示画像データを、前記仮想空間内に設定された視点、該視点からの視線ベクトルおよび視野枠に基づいて生成し、前記表示画像データに基づく表示画像を表示する工程と、
(c)コンピュータが、前記表示画像上で定義された2次元座標系において、ユーザによって指定された指定点に対応する2次元座標値を取得する工程と、
(d)コンピュータが、前記仮想空間で定義された3次元座標系において、前記指定点を前記視野枠に写像して得られる点および前記視点を結ぶ直線が前記仮想空間内の所定の高さに設定された面と交差する空中の点を求め、該空中の点から前記仮想空間内の地表面へ向けて前記面に対し所定の角度にて補助直線を伸ばし、該補助直線が前記仮想空間内の地表面と交差する地表面上の点を求め、該地表面上の点の3次元座標値を前記指定点の3次元座標値とする工程と、
を備える、地図上の位置を特定する方法。
【請求項3】
所定の電子地図データに基づいて、3次元的に表示された電子地図において、ユーザが指定した指定点の地図上の位置を特定するためのコンピュータプログラムであって、
前記電子地図データを参照する機能と、
前記電子地図データに基づいて定まる3次元の仮想空間を3次元的に表示するための表示画像データを、前記仮想空間内に設定された視点、該視点からの視線ベクトルおよび視野枠に基づいて生成し、前記表示画像データに基づく表示画像を表示する機能と、
前記表示画像上で定義された2次元座標系において、ユーザによって指定された指定点に対応する2次元座標値を取得する機能と、
前記仮想空間で定義された3次元座標系において、前記指定点を前記視野枠に写像して得られる点および前記視点を結ぶ直線が前記仮想空間内の所定の高さに設定された面と交差する空中の点を求め、該空中の点から前記仮想空間内の地表面へ向けて前記面に対し所定の角度にて補助直線を伸ばし、該補助直線が前記仮想空間内の地表面と交差する地表面上の点を求め、該地表面上の点の3次元座標値を前記指定点の3次元座標値とする機能と、
をコンピュータに実現させるためのコンピュータプログラム。
【請求項1】
所定の電子地図データに基づいて、電子地図を3次元的に表示する地図表示装置であって、
前記電子地図データを参照する参照部と、
前記電子地図データに基づいて定まる3次元の仮想空間を3次元的に表示するための表示画像データを、前記仮想空間内に設定された視点、該視点からの視線ベクトルおよび視野枠に基づいて生成し、前記表示画像データに基づく表示画像を表示する表示部と、
前記表示画像上で定義された2次元座標系において、ユーザによって指定された指定点に対応する2次元座標値を入力する座標値入力部と、
前記仮想空間で定義された3次元座標系において、前記指定点を前記視野枠に写像して得られる点および前記視点を結ぶ直線が前記仮想空間内の所定の高さに設定された面と交差する空中の点を求め、該空中の点から前記仮想空間内の地表面へ向けて前記面に対し所定の角度にて補助直線を伸ばし、該補助直線が前記仮想空間内の地表面と交差する地表面上の点を求め、該地表面上の点の3次元座標値を前記指定点の3次元座標値とする変換部と、
を備える地図表示装置。
【請求項2】
所定の電子地図データに基づいて、3次元的に表示された電子地図において、ユーザが指定した指定点の地図上の位置を特定する方法であって、
(a)コンピュータが、前記電子地図データを参照する工程と、
(b)コンピュータが、前記電子地図データに基づいて定まる3次元の仮想空間を3次元的に表示するための表示画像データを、前記仮想空間内に設定された視点、該視点からの視線ベクトルおよび視野枠に基づいて生成し、前記表示画像データに基づく表示画像を表示する工程と、
(c)コンピュータが、前記表示画像上で定義された2次元座標系において、ユーザによって指定された指定点に対応する2次元座標値を取得する工程と、
(d)コンピュータが、前記仮想空間で定義された3次元座標系において、前記指定点を前記視野枠に写像して得られる点および前記視点を結ぶ直線が前記仮想空間内の所定の高さに設定された面と交差する空中の点を求め、該空中の点から前記仮想空間内の地表面へ向けて前記面に対し所定の角度にて補助直線を伸ばし、該補助直線が前記仮想空間内の地表面と交差する地表面上の点を求め、該地表面上の点の3次元座標値を前記指定点の3次元座標値とする工程と、
を備える、地図上の位置を特定する方法。
【請求項3】
所定の電子地図データに基づいて、3次元的に表示された電子地図において、ユーザが指定した指定点の地図上の位置を特定するためのコンピュータプログラムであって、
前記電子地図データを参照する機能と、
前記電子地図データに基づいて定まる3次元の仮想空間を3次元的に表示するための表示画像データを、前記仮想空間内に設定された視点、該視点からの視線ベクトルおよび視野枠に基づいて生成し、前記表示画像データに基づく表示画像を表示する機能と、
前記表示画像上で定義された2次元座標系において、ユーザによって指定された指定点に対応する2次元座標値を取得する機能と、
前記仮想空間で定義された3次元座標系において、前記指定点を前記視野枠に写像して得られる点および前記視点を結ぶ直線が前記仮想空間内の所定の高さに設定された面と交差する空中の点を求め、該空中の点から前記仮想空間内の地表面へ向けて前記面に対し所定の角度にて補助直線を伸ばし、該補助直線が前記仮想空間内の地表面と交差する地表面上の点を求め、該地表面上の点の3次元座標値を前記指定点の3次元座標値とする機能と、
をコンピュータに実現させるためのコンピュータプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【公開番号】特開2009−20906(P2009−20906A)
【公開日】平成21年1月29日(2009.1.29)
【国際特許分類】
【出願番号】特願2008−241920(P2008−241920)
【出願日】平成20年9月22日(2008.9.22)
【分割の表示】特願2002−288666(P2002−288666)の分割
【原出願日】平成14年10月1日(2002.10.1)
【出願人】(597151563)株式会社ゼンリン (155)
【Fターム(参考)】
【公開日】平成21年1月29日(2009.1.29)
【国際特許分類】
【出願日】平成20年9月22日(2008.9.22)
【分割の表示】特願2002−288666(P2002−288666)の分割
【原出願日】平成14年10月1日(2002.10.1)
【出願人】(597151563)株式会社ゼンリン (155)
【Fターム(参考)】
[ Back to top ]