3次元地図表示システム
【課題】 文字に対して遠近感を持たせた地図を表示する。
【解決手段】 3次元地図表示システムは、道路,建物などの地物の3次元ポリゴンデータに基づいて透視投影によって地図表示を行う。地図中に表示される文字については、文字表示の対象となる建物等の奥行きに応じて、文字サイズを変化させる。透視投影では、奥行きに応じて建物等が縮小されて表示されるが、文字サイズは、建物等に適用されるのとは異なる表示比率で変化させる。
こうすることにより、文字自体に遠近感を持たせることができ、建物等との関係を直感的に把握しやすくなるとともに、透視投影法と異なる表示比率を適用することによって、文字サイズが過大または過小となることを回避でき、判読しやすい文字表示を実現することができる。
【解決手段】 3次元地図表示システムは、道路,建物などの地物の3次元ポリゴンデータに基づいて透視投影によって地図表示を行う。地図中に表示される文字については、文字表示の対象となる建物等の奥行きに応じて、文字サイズを変化させる。透視投影では、奥行きに応じて建物等が縮小されて表示されるが、文字サイズは、建物等に適用されるのとは異なる表示比率で変化させる。
こうすることにより、文字自体に遠近感を持たせることができ、建物等との関係を直感的に把握しやすくなるとともに、透視投影法と異なる表示比率を適用することによって、文字サイズが過大または過小となることを回避でき、判読しやすい文字表示を実現することができる。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は,地物を3次元的に表現した3次元地図を描画する3次元地図表示システムに関し、詳しくは3次元地図における文字の表記方法に関する。
【背景技術】
【0002】
ナビゲーション装置、コンピュータ、および携帯端末の画面等に電子地図を表示する際に,建造物や道路などの地物を透視投影によって3次元的に表示する3次元地図表示システムがある。3次元地図表示システムでは、建造物や道路などを表す3次元のポリゴンデータを地図データとして格納しておき、ユーザの現在位置など指定された視点および視線ベクトルに応じて、レンダリングと呼ばれる処理を行い透視投影による地図を描画している。
特許文献1は、このような3次元地図において、建造物等の名称を文字で表示する技術を開示する。この技術では、ポリゴンデータとは別に文字データを用意し、建造物等を透視投影で描画した2次元の画像内で文字を配置する。文字の配置は、各建造物等のシルエットに当たる表示領域を求め、その表示領域内に文字が収まるように定めている。
特許文献2は、地図とは異なる分野ではあるが、3次元のCADにおいて文字を表示する技術を開示する。この技術では、対象物のモデリングを行う3次元空間内に文字を配置し、対象物のモデルとともに文字も透視投影することによって、文字を表示する。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2003−263102号公報
【特許文献2】特開昭63−136174号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
図1は従来技術における文字の表示例を示す説明図である。従来は、3次元地図において文字を表示する場合、いずれの名称も、同じ文字サイズ、文字間隔で表示していた。
このように表示した場合、図1から分かる通り、地図内に多くの文字が配置されると、文字自体からは遠近感が把握できないため、それぞれの文字がどの建造物等を指しているのかが直感的に把握しづらい。また、遠景の建造物等を指す文字も相対的に大きなサイズで表示されることになるため、画面内が煩雑になるという課題もある。
本発明は、かかる課題に鑑み、3次元地図において、描画された建造物等の地物と文字との対応関係を直感的に把握しやすい文字表示を実現することを目的とする。
【課題を解決するための手段】
【0005】
本発明は、地物を3次元的に表現した3次元地図を描画する3次元地図表示システムとして構成することができる。本発明の3次元地図表示システムは、地図データベース、背景描画部、文字表示部を備えている。
地図データベースは3次元ポリゴンデータと文字データとを格納する。経路案内を行うための道路ネットワークデータなど他のデータを併せて格納してもよい。
3次元ポリゴンデータとは、地物を透視投影法で3次元的に描画するためのデータである。このように3次元的に描かれた画像を、以下、背景画像または地図画像と称することもある。地物とは、建造物、信号機、案内板、橋、街路樹など、地上に配置される種々の対象物、および道路、山、川、海などを言う。
文字データとは、背景画像中に所定の名称を表示するための文字列および表示位置を特定するデータである。表示すべき名称としては、例えば、地物等の名称、交差点の名称、地名、住所、通り名、行き先案内などが挙げられる。それぞれの文字データは、表示位置を特定するため、表示対象となる地物等や表示すべき地点と対応づけて格納されている。また文字データとして、表示すべき文字のフォント、文字色、縦書き/横書きなどの属性を併せて格納してもよい。
背景描画部は、3次元ポリゴンデータを用いて地物を透視投影法で3次元的に描画することで背景画像を生成する。
文字表示部は文字データを用いて背景画像中に所定の名称を表す文字を表示する。文字表示部は、各名称の文字列について、文字列を外接するように包含する文字枠が透視投影法における視点からの奥行きに応じて小さくなるように表示する。ただし、奥行きに応じた表示比率は、透視投影法における表示比率とは異なる表示比率になるようにする。表示比率とは、奥行きが所定の基準位置における文字枠の大きさに対する、それぞれの奥行きにおける文字枠の大きさの比率を言う。
文字枠は典型的には文字列の最大幅および最大高さからなる矩形とすることができるが、文字列に応じて一義的に定まる種々の形状を文字枠と定義することができる。文字枠を小さくするためには、奥行きに応じて、文字列の文字サイズおよび文字間隔の少なくとも一方を変化させる。文字サイズのみを変化させてもよいし、文字間隔のみを変化させてもよい。また、文字サイズと文字間隔の双方を変化させてもよい。さらに、奥行きが所定範囲内の近景では文字間隔のみを変化させ、それを超える遠景では文字サイズを変化させるというように、文字サイズ、文字間隔の双方を切り替えて変化させてもよい。
【0006】
本発明の3次元地図表示システムによれば、上述の通り、奥行きに応じて文字枠の大きさを変化させて表示することができる。つまり、同じ文字列であっても、視点から遠い遠景に表示される場合には、近景に表示される場合よりも文字枠が小さくなるように表示されるのである。このように文字サイズおよび文字間隔を決定することによって、文字に遠近感を持たせることができ、文字と地物等との対応関係が直感的に把握しやすくなる。
透視投影法では、遠景の地物等は近景の地物等よりも奥行きに応じた表示比率で縮小して表示されるが、本発明では、文字については、地物等の表示比率とは異なる表示比率を適用する。こうすることによって、文字表示比率を柔軟に設定でき、文字に遠近感を持たせるとともに、文字を読みやすくすることが可能となる。
【0007】
文字枠の表示比率は、種々の設定が可能である。例えば、奥行きが所定値以下の範囲では透視投影法よりも大きい表示比率で文字枠の大きさを変化させるようにしてもよい。こうすることによって、この範囲内では奥行きが大きくなっても建物等が縮小されるのに比較して相対的に大きく文字枠を表示することができるため、判読可能に文字を表示させることができ、地図としての有用性を向上させることができる。
この文字の表示比率は、奥行きに応じて直線的に変化させるようにしてもよいし、曲線的に変化させるようにしてもよい。
一般に透視投影法では、奥行きを横軸にとり、表示比率を縦軸にとると、「表示比率=0」に漸近する反比例のグラフとなる。文字の表示比率は、奥行きが所定値以下の範囲で、この反比例のグラフよりも大きく設定されていれば足りる。所定値以下の範囲は、例えば、判読可能に文字が表示できる奥行き範囲内というように設定することができる。
【0008】
文字表示は、視点位置から所定の奥行き範囲内に位置する文字を表示対象としてもよい。つまり、この範囲を超える奥行きにある文字は表示対象外としてもよい。こうすることによって判読できないほど小さい文字が表示されることを回避でき、地図の画面内が煩雑になることを回避できる。
所定の範囲は、種々の設定が可能である。例えば、視点位置から所定の半径内にある円形領域内を表示対象としてもよい。また、視点位置から奥行き方向に所定距離だけ離れた直線を境界とする帯状領域または矩形領域を表示対象としてもよい。
【0009】
文字サイズおよび文字間隔の少なくとも一方について、予め設定された制限値の範囲内で変化させるようにしてもよい。制限値は最大値/最小値の一方のみを設けてもよいし、双方を設けても良い。文字サイズの最大値を設ければ、文字が過大となりすぎて地物等の画像を覆い隠してしまう事態を回避できる。文字サイズの最小値を設ければ、判読できないほどの過小な文字が表示されることを回避できる。文字間隔の最大値を設ければ、一連の文字列として認識できないほどに文字間隔が開きすぎることを回避できる。文字間隔の最小値を設ければ、個別の文字と認識できないほどに文字が詰まることを回避できる。このようにこれらの制限値を設けることにより、判読しやすい文字表示を実現することができる。
【0010】
縦長の文字枠と横長の文字枠で異なる表示比率を適用してもよい。縦長の文字枠(縦書きの文字)と、横長の文字枠(横書きの文字)とでは、判読のしやすさに差違があるため、両者で異なる表示比率を適用することにより、それぞれの文字枠について判読しやすい文字表示を実現することができる。
縦長の文字枠/横長の文字枠のそれぞれに適用する表示比率は種々の設定が可能であるが、例えば、地図表示画面が矩形である場合には、長辺に沿う方向の文字枠に対して、短辺に沿う方向の文字枠よりも急な表示比率を適用してもよい。横辺が長辺、縦辺が短辺の矩形の場合には、長辺に沿う横長の文字枠に対して、短辺に沿う縦長の文字枠よりも急な表示比率を適用するのである。長辺に沿う方向の複数の文字枠は、短辺方向にずらして配置されるため、文字枠同士の間隔が狭くなりがちであるから、奥行きに応じて急激に小さくすることにより、こうした煩雑さを抑制することが可能となる。
文字表示の煩雑さを抑制するためには、別の態様として、縦長よりも横長の文字枠で小さい文字サイズを用いるようにしてもよい。こうすれば、縦長と横長とで共通の表示比率を適用しても、画面内の煩雑さを抑制することができる。
【0011】
本発明において文字表示部は次の方法で文字を表示するか否かを決めるようにしてもよい。
まず、文字表示部は、文字の表示対象となるべき地物および背景の輪郭内を文字の表示領域として特定する。そして、この表示領域の最大幅が、文字枠の幅よりも大きい場合に、文字を表示するのである。こうすることによって、少なくとも幅方向は表示領域内に収まる文字が表示対象となるため、わずかに一部分が見えているだけの地物等に対する無用な文字を表示対象外とすることができ、画面内の煩雑さを抑制することができる。
仮に文字枠の大きさを固定で表示するものとした場合、透視投影法では遠景に行くほど地物等が縮小されて表示されるため、すぐに文字枠は地物等の表示範囲からはみ出すことになり、上述の方法による表示可否の判断が活きない。本発明では、奥行きに応じて文字枠を変化させるからこそ、上述の方法によって、表示する意義のある文字を選択的に表示することが可能となるのである。
【0012】
文字を表示する際の文字配置については、例えば、次の方法をとることができる。
まず、文字表示部は、描画された地図内での文字の表示位置を複数の方法で設定する。そして、設定された複数の表示位置のうち、文字と他の文字の文字枠同士の重なりが少ない表示位置を選択する。こうすることにより、文字同士の重なりを回避して、見やすい文字表示を実現することができる。
【0013】
また、本発明では、交差点について、各出口方向の行き先を表示するようにしてもよい。例えば、交差点を右折した場合の行き先、左折した場合の行き先を表示するのである。かかる表示は、例えば、次の方法で実現することができる。
まず、地図データベースには、地図中の交差点について、交差点への進入方向と対応づけて、交差点の各出口方向の行き先を表す文字列を格納した行き先データベースを設ける。このデータベースは種々の構造をとることができるが、例えば、道路をノード、リンクで表現したネットワークデータを利用して、交差点に進入するリンクと交差点の出口に該当するリンクの組合せに対して、それぞれ行き先を格納する態様をとることができる。そして、文字表示部は、透視投影法における視線ベクトル、または現在位置および進行方向に基づいて進入方向または進入リンクを特定し、それぞれの出口方向に対応するリンクを指定することで上述の行き先データベースを参照し、行き先を表す文字を表示するのである。
こうすることによって、比較的容易に行き先案内を表示することが可能となる。出口方向に当たる通り名称などを行き先データベースに格納しておき、通り名称を行き先と併せて、または行き先に代えて表示してもよい。
行き先案内は、全ての交差点に対して表示する必要はなく、直近の交差点など、一部の交差点についてのみ表示するようにしてもよい。
【0014】
本発明は,その他,コンピュータによって3次元地図を描画する3次元地図表示方法として構成してもよいし,かかる描画をコンピュータに実行させるためのコンピュータプログラムとして構成してもよい。また,かかるコンピュータプログラムを記録したコンピュータが読み取り可能な記録媒体として構成してもよい。記録媒体としては,フレキシブルディスクやCD−ROM,光磁気ディスク,ICカード,ROMカートリッジ,パンチカード,バーコードなどの符号が印刷された印刷物,コンピュータの内部記憶装置(RAMやROMなどのメモリ)および外部記憶装置等,コンピュータが読取り可能な種々の媒体を利用できる。
【図面の簡単な説明】
【0015】
【図1】従来技術における文字の表示例を示す説明図である。
【図2】実施例における3次元地図表示システムの構成を示す説明図である。
【図3】実施例における文字表示例を示す説明図である。
【図4】経路案内処理のフローチャートである。
【図5】3次元地図表示処理のフローチャートである。
【図6】文字サイズ決定処理のフローチャートである。
【図7】文字表示対象領域の他の設定例を示す説明図である。
【図8】文字サイズの設定例(1)を示す説明図である。
【図9】文字サイズの設定例(2)を示す説明図である。
【図10】文字サイズの設定例(3)を示す説明図である。
【図11】文字配置処理のフローチャートである。
【図12】交差点、行き先表示のフローチャート(1)である。
【図13】交差点、行き先表示のフローチャート(2)である。
【図14】行き先データベースを例示する説明図である。
【図15】行き先表示例を示す説明図である。
【発明を実施するための形態】
【実施例1】
【0016】
<<システム構成>>
図2は、実施例における3次元地図表示システムの構成を示す説明図である。図2には車載のカーナビゲーション装置としての構成例を示した。3次元地図表示システムは、歩行者用のナビゲーション装置として構成してもよい。また、3次元地図表示システム100は、車載装置としての構成に限らず、携帯電話、PDA(Personal Digital Assistant)、PND(Personal
Navigation Device)などの携帯端末を用いて構成することも可能である。3次元地図表示システム100は、ナビゲーション機能を必ずしも備えている必要はなく、単に3次元地図を表示するシステムとして構成してもよい。
【0017】
3次元地図表示システム100は、ディスプレイ101、スイッチ102等を備える本体から構成される。ユーザは、ディスプレイ101に表示されるメニュー等に従ってスイッチ102を操作することで、出発地、目的地、時間優先/距離優先などの経路探索の条件を指定することができる。また、経路案内時には、ディスプレイ101上に地図および経路が表示される。この画面では、スイッチ102を操作することによって、ノースアップ(地図の上が北となる表示)/ヘディングアップ(地図の上が移動体の進行方向となる表示)の切り換えや、地図の表示サイズの切り換え、3次元表示/2次元表示の切り替えなどを行うことができる。
【0018】
図の上方には、3次元地図表示システム100に備えられている機能ブロックを示した。本実施例では、3次元地図表示システム100は、内部にCPU、ROM、RAMを備えたマイクロコンピュータを有しており、図中の各機能ブロックは、主としてROMに備えられた制御プログラムによってソフトウェア的に構成されている。これらの機能ブロックは、それぞれハードウェア的に構成してもよい。
また、本実施例では、3次元地図表示システム100に必要な機能ブロックを全て備えることによってスタンドアロンで稼働する装置構成とした。これに対し、図中の機能の少なくとも一部を、3次元地図表示システム100とネットワーク等の通信回線で接続されたサーバによって提供する構成としてもよい。
【0019】
3次元地図表示システム100には、経路探索および経路案内に使用する地図データベース130が用意されている。地図データベース130は、3次元地図表示システム100内に記憶する他、DVDなどの記録媒体によって提供してもよいし、サーバからネットワーク等の通信回線を介して供給可能としてもよい。
【0020】
地図データベース130には、道路ネットワークデータ131、3次元ポリゴンデータ132、文字データ133が備えられている。
道路ネットワークデータ131は、道路をノードおよびリンクで表したネットワークであり、主として経路探索および経路案内に利用される。リンクとは道路に対応した位置座標で表される点列からなる線分または折れ線である。ノードはリンクの交点または端点に対応する位置座標で表される地点である。
3次元ポリゴンデータ132は、地物等を3次元的に表示した3次元地図を表示するためのデータである。3次元ポリゴンデータ132には、高架道路、ビルその他の建造物のデータの他、道路周辺に存在する案内板、道路標識、ガードレール、街路樹などを表示するためのデータも格納されており、ユーザが現実に視認する光景とほぼ同じ画面を再現可能となっている。
文字データ133は、地物等の名称、交差点の名称、地名、住所、通り名など、地図中に種々の文字を表示するためのデータを格納している。文字データ133は、表示対象となる地物等と対応づけて格納されている。交差点名や地名など、表示対象としての3次元ポリゴンデータが存在しない名称については、緯度経度などの座標系で表示位置を指定してもよい。文字データ133には、表示すべき文字のフォント、文字色、縦書き/横書きなどの属性を併せて格納してもよい。
【0021】
主制御部110は、3次元地図表示システム100の動作を統合制御する。コマンド入力部115は、ユーザによるスイッチ102の操作を介して、経路探索の条件指定や経路案内の表示切り換えなどのコマンドを入力する。
経路探索エンジン112は、ユーザから指定された条件に従って、道路ネットワーク131を参照して経路探索を行う。経路探索方法としては、例えば、周知のダイクストラ法を利用することができる。経路探索結果113は、経路探索の結果を記憶するメモリ領域である。経路探索の結果は、任意の形式で記憶可能である。本実施例では、通過すべきノードおよびリンクを順次指定したノード・リンク列の形式で記憶させている。
GPS111は、Global Positioning Systemによって現在位置を検出する。ジャイロによる検出結果を併用することで検出精度を向上させることもできる。
経路案内部114は、検出された現在位置に応じて、経路探索結果113に記憶された経路の案内画面をディスプレイ101に表示する。案内画面としては、2次元地図上に経路を表示した画面、3次元モデルを利用した画面がある。バーズアイビュー、ドライバーズビューなど、種々の視点での3次元表示が可能である。3次元表示の視点は、ユーザの操作によって切り換えられる他、交差点との位置関係によって自動的に切り換えることも可能である。
表示制御部120は、ディスプレイ101への表示を制御する。表示内容としては、経路探索の条件等を指定するためのメニュー画面等の表示や、経路探索や経路案内に用いられる地図の表示などが挙げられる。
3次元地図による経路案内時の表示は、図示する背景描画部121、文字表示部122、経路表示部123によって行われる。背景描画部121は、3次元ポリゴンデータ132を用いて、透視投影法により地物等の描画を行う。文字表示部122は、描画された背景画像中に、地物等の名称などの文字を表示する。経路表示部123は、経路探索結果113を参照して、背景画像中に経路を表示する。本実施例では、背景画像を描画するレイヤ、文字を表示するレイヤ、経路を表示するレイヤと分けて、それぞれの描画、表示を行うものとした。3次元地図全体を一つのレイヤで描画してもよいし、更に多くのレイヤを用いても構わない。またレイヤは、図示した以外の順序で重ね合わせるようにしてもよい。
3次元地図表示システム100は、経路案内と無関係に単に3次元地図を表示することも可能である。かかる場合には、背景描画部121、文字表示部122が用いられることになる。
【0022】
<<文字表示例>>
図3は、実施例における文字表示例を示す説明図である。図3(a)〜図3(d)の順に、正面に位置する「百年橋通り」なる道路を進行する際の表示を示した。
図中に丸囲みで示した「ルビエ博多」なる文字に着目すると、図3(a)〜図3(d)の順に、この文字列の文字枠、つまり「ルビエ博多」の文字の外郭に相当する矩形の大きさが大きくなっていることが分かる。本実施例では、このように奥行きに応じて文字枠の大きさを変化させて文字を表示する。
具体的には、図3(a)の状態では、「ルビエ博多」なる建物は、視点位置よりも奥行き方向に遠方にあるため、透視投影法によって小さく描画される。従って、「ルビエ博多」の名称も、小さく表示する。図3(b)〜図3(d)のように、「ルビエ博多」に近づくと、透視投影法によって建物は徐々に大きく描画されるようになるため、名称も徐々に大きく表示する。
図3の例では、奥行きに応じて文字サイズおよび文字間隔の双方を変化させる例を示したが、文字サイズまたは文字間隔の一方のみを変化させる態様としてもよい。奥行きに応じて、文字サイズ等を設定する方法は、後述する。
従来技術における表示例(図1)と、図3とを比較すれば明らかな通り、奥行きに応じて、文字枠の大きさを変化させることによって、文字自体に遠近感を持たせることができ、文字と建物との対応関係を直感的に把握しやすくなる利点がある。また、遠景の文字を小さく表示することにより、地図内の煩雑さを抑制できる。
以下では、経路案内を行う場合を例にとって、図3のように文字枠の大きさを変化させて3次元地図を表示する技術について説明する。
【0023】
<<経路案内処理>>
図4は、経路案内処理のフローチャートである。3次元地図表示装置100のCPUが実行する処理である。処理を開始すると、CPUは、経路探索の出発地および目的地を設定する(ステップS10)。出発地は、ユーザが指定してもよいし、GPS111で検出される現在位置を用いても良い。
出発地、目的地が設定されると、CPUは経路探索を行う(ステップS12)。経路探索は、例えば、道路ネットワークデータ131を参照し、周知のダイクストラ法によって行うことができる。得られた経路は、経路探索結果113に蓄積される。
CPUは、以下、GPS111の検出結果およびその変化に基づいて、現在位置および進行方向を取得し(ステップS14)、3次元地図を表示しながら(ステップS100)、経路案内を行う。本実施例では、地図表示は、2次元地図と3次元地図で切り替え可能であるが、ここでは3次元地図表示を行う場合を例にとって説明する。この経路案内は、目的地に到着するまで継続して行う(ステップS500)。
本実施例では、経路案内処理の一過程として3次元地図を表示する例を示すが、経路案内と無関係に単純にユーザの操作に従って3次元地図を表示させることも可能である。
【0024】
<<3次元地図表示処理>>
図5は、3次元地図表示処理のフローチャートである。図4のステップS100に相当する処理である。
本実施例では、図5の右側に示すように、背景レイヤ、文字レイヤ、経路レイヤに分けて描画を行っている。背景レイヤとは、地物等の背景画像を描画するレイヤである。文字レイヤは、地物等の名称などの文字を表示するためのレイヤである。経路レイヤは、経路探索結果を矢印等で表示するためのレイヤである。ディスプレイ101には、これらのレイヤを重ね合わせた画像が表示される。
3次元地図表示処理を開始すると、CPUは、背景描画処理を行う(ステップS200)。これは、3次元ポリゴンデータ132を参照しながら、透視投影法によって地物等を描画する処理である。透視投影法の視点は、現在位置、または現在位置から所定距離だけずらした位置を用いることができる。透視投影の視線ベクトルとしては、現在の進行方向を用いることができる。視点や視線ベクトルをユーザが指定可能としてもよい。
次に,CPUは、文字表示処理を行う(ステップS300)。地図内に表示される地物等の名称などの文字を表示する処理である。図3で示したように、本実施例では、文字表示の対象となる地物等の奥行きに応じて文字サイズを変化させることによって文字枠の大きさを変化させるため、CPUは奥行きに応じて文字サイズを決定する処理、つまり文字サイズ決定処理を行う(ステップS310)。そして、文字サイズを決めた後、文字の配置を決定する処理、つまり文字配置処理を行う(ステップS340)。また、交差点の名称、および交差点からの出口についての行き先を表示する処理、つまり交差点、行き先表示処理を行う(ステップS370)。これらの各処理の内容については、後で詳述する。
こうして背景および文字の表示を行うと、CPUは、経路表示処理を行う(ステップS400)。経路探索結果113を参照して、目的地に向かう経路を矢印等で表示する処理である。
【0025】
<<文字サイズ決定処理>>
図6は、文字サイズ決定処理のフローチャートである。図5のステップS310に相当する処理である。
CPUは、現在位置Pvを取得する(ステップS312)。そして、処理対象となる文字が表す地物の重心位置Pobjを取得する(ステップS314)。文字データ133は、それぞれ文字が表す対象となる3次元ポリゴンデータ132と関連づけて格納されているから、3次元ポリゴンデータ132を参照すれば、その重心位置Pobjを取得することができる。交差点名称、通りの名称、地名など地物と対応づけられていない文字については、表示すべき位置が文字データ133に格納されているので、この位置を、上述の重心位置Pobjとして用いることができる。
CPUは、図中右上の説明図内に示す通り、視点位置と重心位置との距離dを取得する(ステップS316)。そして、この距離dが視点から規定範囲Dc内か否かを判断する(ステップS318)。図中右下の説明図に示す通り、視点Pvを中心として半径Dcの円形領域Aを設定し、文字が表す地物の重心位置Pobjが、この円形領域A内にあるか否かを判断することになる。
そして、重心位置Pobjまでの距離dが、規定距離Dcよりも小さい場合には(ステップS318)、距離dに応じた文字サイズを決定する(ステップS322)。文字サイズは奥行きに応じて予め設定された関数に基づいて決める。具体的な決定方法は後述する。なお、重心位置Pobjが視線ベクトルからずれている場合には、厳密には距離dは奥行きとは異なるが、距離dを奥行きと見なして文字サイズを決定して差し支えない。3次元地図の左右方向の画角が限られているため視線ベクトルから大きく左右方向に離れた位置の文字は画角から外れること、および左右にずれた位置にある文字は他の建物等の陰になるため表示対象となりにくいことから、表示される文字は、視線ベクトル付近のものが多いからである。
ステップS318において、距離dが規定距離Dcよりも大きい場合には、その文字は表示対象外とする(ステップS320)。つまり、図示する円形領域A内に位置する地物に対応する文字のみを表示対象とし、その外側に位置する文字は表示対象外とするのである。このように、視点Pvから一定距離内にある文字だけを表示対象とすることによって、遠く離れた文字を間引くことができ、地図画像内が煩雑化するのを回避することができる。
円形領域Aを規定する距離Dcは、文字を表示対象とするか否かの判断基準となる距離であり、任意に設定可能である。距離Dcを大きくすれば、多くの文字が表示対象となるので地図で提供される情報が増える一方、地図画像が煩雑になる傾向がある。逆に、距離Dcを小さくすれば、地図画像内は文字が少なく簡潔になる一方、地図によって提供される情報が少なくなる。距離Dcは、双方を考慮して設定すれば良い。距離Dcは、予め固定としてもよいし、ユーザが指定可能としてもよい。
【0026】
図6では、処理対象となる文字を決定した後、当該文字を表示すべき重心位置Pobjを求め、円形領域A内に属するか否かに応じて、表示対象とするか否かを判断する(ステップS313)という手順で処理を行う例を示した。
表示対象とするか否かは、種々の処理方法で判断可能である。図6に示した方法とは逆に、まず視点位置Pvを中心とする円形領域Aを設定し、円形領域A内のオブジェクトを抽出し、それに対応する文字データを選択することで、表示対象となる文字を特定してもよい。文字の表示は、視線ベクトル方向に存在するもののみが問題となるため、視線ベクトルに直交する直径で円形領域Aを切断した半円形領域を用いて表示対象となる文字を特定する方法をとることもできる。
【0027】
図6では円形領域Aを用いて表示対象となる文字を判別する例を示したが、円形以外の領域を用いて判断してもよい。
図7は、文字表示対象領域の他の設定例を示す説明図である。この例では、文字表示対象領域として矩形領域を用いた例を示した。視点位置Pv、視線ベクトルVvであるとすると、視点位置Pvからオブジェクトまでの視線ベクトル方向の投影距離ddが規定距離Dr以内の場合に、文字を表示対象と判断する。投影距離ddは、オブジェクトの重心位置Pobjから視線ベクトルVvへの垂線の足PHを算出し、視点Pvから足PHまでの距離を算出すればよい。
さらに、視線ベクトルと直交する幅方向にも制限を持たせても良い。図示するように幅Wr内のみを表示対象とするのである。幅Wrは、透視投影法の画角などを考慮して任意に設定可能である。こうすることにより、表示対象となる文字をさらに間引くことができる。図6で示した円形領域に比較して、矩形領域を用いる場合には、視線ベクトルVv方向の規定距離Drと、幅Wrとを個別に設定することができるため、文字表示対象領域を柔軟に設定できる利点がある。
【0028】
次に、図6のステップS322における文字サイズの決定方法について説明する。
図8は、文字サイズの設定例(1)を示す説明図である。図8(a)における直線Lsが、文字サイズと視点からの距離、つまり奥行きとの関係を表している。図示する通り、本実施例では、奥行きが大きくなるほど表示比率が最大値Smaxから最小値Sminまで直線的に小さくなる。表示比率は、奥行きがDmaxよりも小さい範囲内で設定されている。奥行きの最大値Dmaxを超える範囲では、文字を表示しないからであり、このDmaxの値は、図6における円形領域Aの半径Dc、または図7における矩形領域の辺Drに相当する値となる。表示比率は、Dmaxよりも小さい奥行きDlimで、最小値となるように設定されている。従って、奥行きDlimからDmaxの間では、表示比率は奥行きに関わらず最小値で固定値となる。このように固定値となる範囲を設けることにより、文字が過小となることを回避し、判読可能なサイズの文字を表示することが可能となる。
一般に透視投影法では、奥行きを横軸にとり、表示比率を縦軸にとると、表示比率Lpは「表示比率=0」に漸近する反比例のグラフとなる。本実施例では、文字の表示比率Lsは、透視投影法における表示比率Lpよりも大きくなるように設定した。透視投影では奥行きが大きくなるにつれて建物が縮小されて表示されるが、図8(a)に示すように文字の表示比率を設定することによって、奥行きが大きくなるにつれて建物よりも緩やかな比率で文字サイズは小さくなる。従って、文字サイズが過小となることを回避でき、判読可能なサイズで文字表示することが可能となる。
本実施例では、文字間隔は上側の文字の下端と、下側の文字の上端との間隔として定義されている。従って、文字サイズを変更すれば文字間隔一定であっても文字列に外接する矩形の文字枠の大きさは、文字サイズに応じて縦横ともに変化する。
図8(a)では、文字サイズの表示比率の設定例を示したが、これに代えて、奥行きに応じて文字サイズを設定するグラフを用いても良い。
【0029】
図8(b)は、図8(a)の設定による文字の表示例を示す説明図である。「ABCDEビル」なる文字列の表示位置を奥行き方向に変化させた場合の表示例を示した。この文字列を包含する矩形Cbが文字枠である。ただし、図の煩雑化を回避するため、それぞれの文字については、文字枠Cbを一定比率で拡大した矩形を文字枠として描いている。
図示する通り、奥行きが大きくなるにつれて、文字のサイズが徐々に小さくなる。この表示比率が直線的であることは、「ABCDEビル」の文字枠の上端と下端とが、それぞれ直線的に配置されることから分かる。 また、文字サイズを透視投影法と同じ表示比率で変化させた場合には、上端と下端とを結ぶ直線は、消失点Vpで交差するはずであるが、図8(b)の例では、上端を結んだ線は消失点Vpとは異なる点で交差する。このことから、それぞれの奥行きにおける文字の表示比率は、透視投影法による表示比率よりも大きくなっていることが分かる。
【0030】
図8(c)は、地図中での文字の表示例である。図示する通り、「ルビエ博多」など遠景の建物に対する文字は、「西鉄ビル別館」など近景にある建物に対する文字よりも小さく表示される。こうすることにより、文字からも、遠近感が把握でき、文字と建物との対応関係を直感的に理解しやすくなる。
【0031】
文字サイズの変化は、図8に示す他、種々の設定が可能である。
図9は、文字サイズの設定例(2)を示す説明図である。図9(a)における曲線Csが、表示比率と視点からの距離、つまり奥行きとの関係を表している。図示する通り、奥行きが大きくなるほど表示比率が最大値Smaxから最小値Sminに漸近するように曲線的に小さくなる。表示比率は、図8と同様、奥行きがDmaxよりも小さい範囲内で設定されている。かかる曲線は、指数関数、双曲線など種々の関数を用いることができる。最小値Sminに漸近する曲線を用いると、最大値Dmin近傍では、概ね最小値Sminに近い表示比率となり、文字が過小となることを一つの統一的な関数で簡易に回避することができる利点がある。
曲線の関数は、種々の設定が可能であるが、透視投影法による表示比率Lpよりも、全範囲で大きな表示比率となるように設定することが好ましい。こうすることにより、建造物の大きさの変化よりも文字サイズの変化を緩やかにすることができ、文字サイズが過小となることを回避できる。
【0032】
図9(b)は、図9(a)の設定による文字の表示例を示す説明図である。「ABCDEビル」なる文字列の表示位置を奥行き方向に変化させた場合の表示例を示した。図示する通り、奥行きが大きくなるにつれて、文字のサイズが徐々に小さくなることが分かる。この表示比率が曲線的であることは、「ABCDEビル」の文字列の下端を直線的に配置したときに上端が曲線的に配置されることから分かる。下端を直線的に配置したのは、建物の下端は道路に沿って直線的に並んでいるので、これに合わせて文字を配置した方が、違和感が小さいからである。
図の例では、文字の下端を結ぶ直線は消失点Vpで交差するのに対し、上端を結ぶ曲線は消失点Vpとは異なる点に向かうことになるから、文字の表示比率は、透視投影法による表示比率よりも大きいことが分かる。
【0033】
図9(c)は、地図中での文字の表示例である。図示する通り、「ルビエ博多」など遠景の建物に対する文字は、「西鉄ビル別館」など近景にある建物に対する文字よりも小さく表示される。こうすることにより、文字からも、遠近感が把握でき、文字と建物との対応関係を直感的に理解しやすくなる。
【0034】
文字サイズは、更に種々の設定が可能である。
図10は、表示比率の設定例(3)を示す説明図である。
図10(a)には、直線的に表示比率を変化させる設定の変形例を示した。この例では、次のように3つの区分に応じて表示比率が決まっている。
奥行き<D0・・・・・・・・・表示比率は最大値Smaxで固定;
D0≦奥行き≦Dlim・・・・表示比率は最大値SmaxからSminまで直線的に変化;
Dlim<奥行き≦Dmax・・表示比率は最小値Sminで固定;
このように、奥行き<D0となる近景の部分にも、表示比率が一定となる範囲を設けても良い。こうすることにより、近景の文字が過大になって画面からはみ出してしまうことを抑制できる利点がある。
【0035】
図10(b)には、曲線的に表示比率を変化させる設定の変形例を示した。表示比率は、曲線Cs1のように、奥行きDmaxで最小値Sminとなるように、最大値Smaxから上に凸の曲線と下に凸の曲線との組合せで変化させる。かかる関数としては、例えば、余弦(cos)関数が挙げられる。こうすることにより、近景で文字が過大になることを抑制しつつ、遠景で文字が過小になることを抑制することができ、全体にわたって判読可能な文字を表示することが可能となる。
また、別の設定例として、曲線Cs2のように、上に凸の曲線によって最大値Smaxから最小値Sminまで変化させるようにしてもよい。かかる曲線としては、指数関数、正弦(sin)関数などを用いることができる。こうすることにより、遠景に向かうにつれて急激に文字サイズが小さくなるから、近景の文字が過大になることを回避できるとともに、近景での情報提供を重視した地図表示を行うことが可能となる。
【0036】
図8〜10では、文字サイズの設定方法を説明したが、文字間隔についても、同様に奥行きに応じて変化させてもよい。それぞれの文字の代表点の距離によって文字間隔が定義されている場合は、文字間隔についても変化させることが好ましい。かかる定義では、文字サイズを小さくしても文字の代表点の間隔は変化しないため、文字と文字との隙間が開いてしまうからである。文字間隔の定義に関わらず、文字サイズの変化に応じて文字間隔も変化させるようにすれば、遠景においても近景においても文字列全体をバランスよく表示することが可能となる。文字サイズの変化と文字間隔の変化とは異なる表示比率としてもよいし、同じ表示比率を適用してもよい。
また図8〜10では、文字サイズを変化させる例を示したが、文字枠の大きさが変化すれば遠近感を把握することは可能であるため、文字サイズは固定とし、文字間隔のみを奥行きに応じて変化させる設定としてもよい。さらに、奥行きが所定範囲内にあるときは文字間隔のみを変化させ、奥行きが所定範囲よりも大きくなると、文字サイズのみ、または文字サイズと文字間隔を変化させるというように、途中で変化の態様を切り替えてもよい。
【0037】
図8〜10では、縦長の文字枠に対する設定を示した。横長の文字枠に対しては、縦長と同様の設定を適用してもよいし、異なる設定としてもよい。図3(c)に示すように、横長の文字枠は、奥行きに応じて上下方向にずれて配置されるため、縦長の文字枠に比較して文字枠同士の間隔が狭くなりがちである。従って、横長の文字枠に対しては、縦長の文字枠よりも相対的に文字サイズが小さくなる設定を適用することが好ましい。
【0038】
<<文字配置処理>>
図11は、文字配置処理のフローチャートである。サイズが決定された文字について、地図画像内の配置を決定する処理であり、文字表示処理(図5)のステップS340に相当する処理である。
処理を開始すると、CPUはオブジェクトの横幅Wobjを取得する(ステップS342)。図中に横幅Wobjの例を示した。図中にハッチングで示したように、まずCPUは、建物など文字の表示対象となるオブジェクトについて、透視投影された地図画像内での輪郭を特定する。これは、オブジェクトのシルエット(以下、「表示領域」ということもある)を求めるということもできる。そして、この輪郭で特定された閉図形または表示領域の最大幅を計測し、横幅Wobjとするのでる。
CPUは、文字の幅が、横幅Wobjである場合(ステップS344)には、その文字を表示対象外とする(ステップS346)。こうすることによって、透視投影図で、ごく一部しか見えていないような建物等に対して文字が表示されることを容易に回避でき、地図の煩雑化を抑制することができる。
文字の幅が横幅Wobj≦である場合には(ステップS344)、文字の配置位置を決定する(ステップS348)。左右方向の位置は、文字枠を最大横幅Wobj内で消失点に近い側の端に一端を寄せて配置することが好ましい。こうすることにより、オブジェクトからのはみ出し、および他の建物等への重なりを少なくすることができる。
縦方向の位置については、まずオブジェクトの表示領域の最下部BLを特定する(ステップS350)。図の右側に示した通り、最下部BLとは、オブジェクトについての3次元での最下部という意味ではなく、透視投影された2次元の地図画像内で表示領域を見た場合の縦方向の最下部という意味である。そして、最下部BLを求めると、CPUは、ここに文字の最下点を配置する(ステップS352)。図の右側に示した通り、最下部BLに文字を配置することにより、オブジェクトから上下方向に文字が大きくはみ出すことを回避でき、また結果として画面から上下方向に文字がはみ出すことも抑制できる利点がある。
【0039】
文字配置は、必ずしも図11に示した方法による必要はない。例えば、表示領域の重心位置に文字枠の重心を合わせるように配置してもよい。また、他の文字枠や、他のオブジェクトの表示領域との重なりの有無を判断して、表示するか否かを決定してもよい。例えば、表示対象となる文字枠の面積のうち、所定の割合以上の面積が他の文字枠や表示領域と重なるようであれば、表示対象から外すものとしてもよい。
【0040】
<<交差点、行き先表示処理>>
図12および図13は、交差点、行き先表示のフローチャートである。この処理は、交差点の名称や、交差点出口の行き先を表示する処理であり、文字表示処理(図5)のステップS370に相当する処理である。交差点、行き先表示の文字サイズについては、図8〜10の処理によって事前に設定されているものとする。
CPUは、まず交差点に名称を表示するための処理を実行する。CPUは、交差点について表示領域を取得する(ステップS372)。図の右側に、表示領域の例を示した。
図中の領域ISCが表示領域に相当する。透視投影法で地図を描画すると、交差点の中には、建物BLD1、BLD2等によって部分的に隠れてしまうものが生じる。表示領域とは、本来、道路ポリゴンのみで規定されるはずの交差点のうち、建物によって隠される部分を除いた領域を言う。
図中に示すように、表示領域ISCは複雑な形状となることが多い。そこで表示領域ISCに内接する一定幅Wiの矩形領域Riを求め、この重心CG1(図示は省略)に交差点名称を配置する(ステップS374)。
【0041】
そして、CPUは、交差点名称について、他の配置候補を設定する。つまり、3次元ポリゴンデータに基づいて、交差点の重心位置CGiを求め、この点からHだけ上方にある点CG2に交差点名称を配置するのである(ステップS376)。地図画像内での配置は、点CG2に対応する点を透視投影法で求めることによって決められる。
【0042】
CPUは、こうして求められた配置位置CG1、CG2のうち、建物名称との重なりが少ない方を選択して、交差点名称を表示する(ステップS378)。当然ながら、2つの配置位置CG1、CG2同士の重なりは判断しない。
建物名称については、建物との位置関係が重要であり、文字配置の自由度が低いのに対し、交差点名称は、上述のように複数の配置が可能である。建物等の名称と重なりが少ない側の配置を選択することにより、交差点名称の配置の自由度を活かし、見やすい表示を実現することができる。
上述の例では、2つの配置を比較する場合を示したが、さらに多くの配置候補を考慮してもよい。また、いずれの配置候補も、建物との重なりが生じる場合には、重なる部分の面積が少ないものを選択してもよいし、複数の候補配置から予め設定された優先度に従って一つを選択してもよい。
交差点名称の配置を決定すると、CPUは、交差点名称と重なる建物名称を削除する(ステップS380)。こうすることで、交差点名称を優先的に表示することができる。交差点名称と建物名称の優先度は、種々の設定が可能であり、建物名称と重ならない場合にのみ交差点名称を表示するようにしてもよい。また、交差点名称の文字枠のうち建物名称が重なる部分の比率を求め、この比率が所定値以下の場合は、交差点名称を優先(建物名称を削除)するようにしてもよい。
【0043】
交差点名称を配置すると、CPUは、交差点の行き先表示を行う。この処理のため、まずCPUは対象となる交差点について、行き先情報を取得する(ステップS382)。
【0044】
行き先情報を与える行き先データベースについて説明する。
図14は、行き先データベースを例示する説明図である。本実施例では、行き先データベースは、文字データ133の一つとして格納されているものとしたが、道路ネットワークデータ131に格納するようにしてもよい。
図14(a)に示す道路形状を例にとって行き先データベースの構造を説明する。図14(a)に示す通り、この交差点は、ノードFN1に接続される4本のリンクFL1〜FL4から構成されている。リンクFL1は「□□」に向かう通り「A通り」に対応している。リンクFL2は「○○」に向かう通り「B通り」に対応している。リンクFL3は、「**」に向かう通り「A通り」に対応している。リンクFL4は「△△」に向かう通り「C通り」に対応している。
図14(b)に行き先データベース例を示した。行き先データベースは、ノードごとに用意されている。図の例では、図14(a)に示したノードFN1に対応する部分を示した。「リンク間情報」は、ノードFN1の通行方法を進入リンク、出口リンクの組合せで示している。例えば、「FL1→FL2」は、リンクFL1からノードFN1に進入し、リンクFL2に退出する経路を表している。そして、「行き先」は当該経路に対して表示されるべき行き先情報の文字列を表し、「通り名」は当該経路において出口リンクに対応する通り名称を表している。例えば、「FL1→FL2」の経路に対しては、リンクFL2が「○○」に向かう通り「B通り」に対応しているから、「行き先」として「○○」、「通り名」として「B通り」が格納されている。他の経路についても、同様である。
このように、ノードの通過方法に対して、それぞれ「行き先」、「通り名」を対応づけたデータベースを用いることにより、通過方法に即した利便性の高い行き先表示を行うことが可能となる。
例えば、図14(b)のデータ構造によれば、リンク間情報「FL1→FL3」と「FL2→FL3」とでは、ともにリンクFL3を出口とする経路であっても、別個のデータとして、それぞれ異なる「行き先」「通り名」を格納することができる。リンク間情報「FL1→FL3」に対しては、リンクFL1、FL3がともに「A通り」に対応したリンクであることから、「通り名」データをブランクとして、表示の簡素化を図ってもよい。また、リンクFL1からFL3方向に向かうユーザと、リンクFL2からFL3方向に向かうユーザとで、求める行き先情報が異なる傾向にある場合には、この傾向に合わせた個別の「行き先」を格納してもよい。
図14の例では、「行き先」「通り名」をそれぞれ格納するものとしたが、いずれか一方のみを格納してもよい。
【0045】
図14で示した行き先データベースを参照すれば、CPUは、各交差点のノードに対して、それぞれの出口ごとの「行き先」「通り名」を行き先情報として取得することができる。行き先情報は経路探索結果とは無関係に取得して構わない。図14の例で、リンクFL1をノードFN1に向かって走行している場合には、経路探索結果に関わらず、進入リンクとしてリンクFL1を含むリンク間情報「FL1→FL2」、「FL1→FL3」、「FL1→FL4」の全データを取得してもよい。
【0046】
図13に戻り、交差点、行き先表示処理の内容を説明する。
行き先情報を取得すると、CPUは、行き先情報を表示する。行き先情報についても、交差点名称と同様、複数の候補表示位置を設定し、いずれか一つを選択する方法をとった。CPUは、一つ目の候補として、出口道路ポリゴンと交差点との交線の中点D1に行き先表示を配置する(ステップS384)。また2つ目の候補として、出口道路リンクと交差点との境界の上方Hmの点D2に行き先表示を配置する(ステップS386)。そして、D1、D2のうち、建物名称と重なりが生じない方を選択して行き先表示する(ステップS388)。交差点名称の場合は、建物名称よりも交差点名称を優先的に表示するが(ステップS378、S380)、行き先表示は交差点名称よりも重要性が低いと考えられるため、建物名称を優先させるものとした。行き先名称についても、交差点名称と同様、建物名称より優先的に表示する処理としてもよい。
【0047】
上述した2つの候補表示位置の設定例について具体的に説明する。
図15は、行き先表示例を示す説明図である。図15(a)に候補表示位置の設定例を示した。図の煩雑化を回避するため、候補位置D1は図の右側のリンクFLRに示し、候補位置D2は左側のリンクFLLに示した。中央のハッチングを付した領域ISC2が交差点領域である。
候補位置D1は、右側のリンクFLRに対応する道路ポリゴンと交差点領域ISC2との交線の中点に設定する。リンクFLRと交差点領域との交点に設定するようにしてもよい。実際には左側のリンクFLLに対しても点D1に対応する候補位置が得られることになる。
一方、候補位置D2は、リンクFLLと交差点領域ISC2との交点DHを足とする垂線を求め、交点DHより高さHmの位置にある点D2に表示する。具体的には、3次元空間においてかかる点D2を求め、透視投影によって描画された地図上での表示位置を特定すればよい。実際には、右側のリンクFLRに対しても点D2に対応する候補位置が得られることになる。
そして、各リンクFLR、FLLに対して得られた2つの候補位置に行き先表示を行った場合に、建物名称と重ならないものを選択するのである。
【0048】
図15(b)に行き先情報の表示例を示した。破線で囲った「祇園」「塩原」という横書きの名称が、「美野島交差点」の行き先表示である。中央の「百年橋通り」という縦書きの名称が通り名表示である。ここでは、行き先と通り名とを使い分けて表示する例を示した。表示の文字サイズは交差点名称と同様にして設定できる。縦書き/横書きの使い分けは、対応するリンクが地図画像内で傾き45〜90度(垂直に近い状態)であれば縦書き、その他の場合は横書きというように設定することができる。縦書きまたは横書きのいずれかに統一してもよいし、通り名は縦書き、行き先は横書きというように内容に応じて使い分けても良い。
行き先表示を全ての交差点について行うと、画面が煩雑化するため、最も近景にある交差点についてのみ行き先表示を行うようにしてもよい。
【0049】
本実施例では、図14(b)に示すように行き先情報として「行き先」「通り名」の2通りが用意されている。この2通りは種々の方法で使い分けが可能である。例えば、ユーザがいずれを表示するかを指示するようにしてもよい。また、正面に近い通りに対しては「通り名」を用い、右左折方向の通りに対しては「行き先」を用いるというように、方向に応じて使い分けてもよい。例えば、進入リンクと出口リンクとの間の角度が所定値以下(直進に近い状態)であれば、「通り名」を用い、その他の場合には「行き先」を用いるという方法をとることができる。
【0050】
<<効果および変形例>>
以上で説明した実施例の3次元地図表示システムによれば、文字サイズを奥行きに応じて変化させることにより、文字自体に遠近感を持たせることができる。この結果、文字と建物等との対応関係を直感的に把握しやすくできる。
また、奥行きに応じた文字サイズの表示比率を、透視投影法において建物等に適用される表示比率と異なる設定とすることにより、文字サイズが過小または過大となることを回避でき、判読可能な文字を表示しつつ、画像の煩雑化を回避することができる。
【0051】
本発明は、種々の態様で実現することが可能である。上述した種々の処理は、必ずしも全てを備えなければならないことはなく、一部を省略したり、他の処理に置き換えたりすることも可能である。
また、上述の例において、ソフトウェア的に実行されている処理は、ハードウェア的に実行してもよいし、その逆も可能である。
【産業上の利用可能性】
【0052】
本発明は,地物を3次元的に表現した3次元地図において文字を表示するために利用可能である。
【符号の説明】
【0053】
100…3次元地図表示システム
101…ディスプレイ
102…スイッチ
110…主制御部
111…GPS
112…経路探索エンジン
113…経路探索結果
114…経路案内部
115…コマンド入力部
120…表示制御部
121…背景描画部
122…文字表示部
123…経路表示部
130…地図データベース
131…道路ネットワークデータ
132…3次元ポリゴンデータ
133…文字データ
【技術分野】
【0001】
本発明は,地物を3次元的に表現した3次元地図を描画する3次元地図表示システムに関し、詳しくは3次元地図における文字の表記方法に関する。
【背景技術】
【0002】
ナビゲーション装置、コンピュータ、および携帯端末の画面等に電子地図を表示する際に,建造物や道路などの地物を透視投影によって3次元的に表示する3次元地図表示システムがある。3次元地図表示システムでは、建造物や道路などを表す3次元のポリゴンデータを地図データとして格納しておき、ユーザの現在位置など指定された視点および視線ベクトルに応じて、レンダリングと呼ばれる処理を行い透視投影による地図を描画している。
特許文献1は、このような3次元地図において、建造物等の名称を文字で表示する技術を開示する。この技術では、ポリゴンデータとは別に文字データを用意し、建造物等を透視投影で描画した2次元の画像内で文字を配置する。文字の配置は、各建造物等のシルエットに当たる表示領域を求め、その表示領域内に文字が収まるように定めている。
特許文献2は、地図とは異なる分野ではあるが、3次元のCADにおいて文字を表示する技術を開示する。この技術では、対象物のモデリングを行う3次元空間内に文字を配置し、対象物のモデルとともに文字も透視投影することによって、文字を表示する。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2003−263102号公報
【特許文献2】特開昭63−136174号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
図1は従来技術における文字の表示例を示す説明図である。従来は、3次元地図において文字を表示する場合、いずれの名称も、同じ文字サイズ、文字間隔で表示していた。
このように表示した場合、図1から分かる通り、地図内に多くの文字が配置されると、文字自体からは遠近感が把握できないため、それぞれの文字がどの建造物等を指しているのかが直感的に把握しづらい。また、遠景の建造物等を指す文字も相対的に大きなサイズで表示されることになるため、画面内が煩雑になるという課題もある。
本発明は、かかる課題に鑑み、3次元地図において、描画された建造物等の地物と文字との対応関係を直感的に把握しやすい文字表示を実現することを目的とする。
【課題を解決するための手段】
【0005】
本発明は、地物を3次元的に表現した3次元地図を描画する3次元地図表示システムとして構成することができる。本発明の3次元地図表示システムは、地図データベース、背景描画部、文字表示部を備えている。
地図データベースは3次元ポリゴンデータと文字データとを格納する。経路案内を行うための道路ネットワークデータなど他のデータを併せて格納してもよい。
3次元ポリゴンデータとは、地物を透視投影法で3次元的に描画するためのデータである。このように3次元的に描かれた画像を、以下、背景画像または地図画像と称することもある。地物とは、建造物、信号機、案内板、橋、街路樹など、地上に配置される種々の対象物、および道路、山、川、海などを言う。
文字データとは、背景画像中に所定の名称を表示するための文字列および表示位置を特定するデータである。表示すべき名称としては、例えば、地物等の名称、交差点の名称、地名、住所、通り名、行き先案内などが挙げられる。それぞれの文字データは、表示位置を特定するため、表示対象となる地物等や表示すべき地点と対応づけて格納されている。また文字データとして、表示すべき文字のフォント、文字色、縦書き/横書きなどの属性を併せて格納してもよい。
背景描画部は、3次元ポリゴンデータを用いて地物を透視投影法で3次元的に描画することで背景画像を生成する。
文字表示部は文字データを用いて背景画像中に所定の名称を表す文字を表示する。文字表示部は、各名称の文字列について、文字列を外接するように包含する文字枠が透視投影法における視点からの奥行きに応じて小さくなるように表示する。ただし、奥行きに応じた表示比率は、透視投影法における表示比率とは異なる表示比率になるようにする。表示比率とは、奥行きが所定の基準位置における文字枠の大きさに対する、それぞれの奥行きにおける文字枠の大きさの比率を言う。
文字枠は典型的には文字列の最大幅および最大高さからなる矩形とすることができるが、文字列に応じて一義的に定まる種々の形状を文字枠と定義することができる。文字枠を小さくするためには、奥行きに応じて、文字列の文字サイズおよび文字間隔の少なくとも一方を変化させる。文字サイズのみを変化させてもよいし、文字間隔のみを変化させてもよい。また、文字サイズと文字間隔の双方を変化させてもよい。さらに、奥行きが所定範囲内の近景では文字間隔のみを変化させ、それを超える遠景では文字サイズを変化させるというように、文字サイズ、文字間隔の双方を切り替えて変化させてもよい。
【0006】
本発明の3次元地図表示システムによれば、上述の通り、奥行きに応じて文字枠の大きさを変化させて表示することができる。つまり、同じ文字列であっても、視点から遠い遠景に表示される場合には、近景に表示される場合よりも文字枠が小さくなるように表示されるのである。このように文字サイズおよび文字間隔を決定することによって、文字に遠近感を持たせることができ、文字と地物等との対応関係が直感的に把握しやすくなる。
透視投影法では、遠景の地物等は近景の地物等よりも奥行きに応じた表示比率で縮小して表示されるが、本発明では、文字については、地物等の表示比率とは異なる表示比率を適用する。こうすることによって、文字表示比率を柔軟に設定でき、文字に遠近感を持たせるとともに、文字を読みやすくすることが可能となる。
【0007】
文字枠の表示比率は、種々の設定が可能である。例えば、奥行きが所定値以下の範囲では透視投影法よりも大きい表示比率で文字枠の大きさを変化させるようにしてもよい。こうすることによって、この範囲内では奥行きが大きくなっても建物等が縮小されるのに比較して相対的に大きく文字枠を表示することができるため、判読可能に文字を表示させることができ、地図としての有用性を向上させることができる。
この文字の表示比率は、奥行きに応じて直線的に変化させるようにしてもよいし、曲線的に変化させるようにしてもよい。
一般に透視投影法では、奥行きを横軸にとり、表示比率を縦軸にとると、「表示比率=0」に漸近する反比例のグラフとなる。文字の表示比率は、奥行きが所定値以下の範囲で、この反比例のグラフよりも大きく設定されていれば足りる。所定値以下の範囲は、例えば、判読可能に文字が表示できる奥行き範囲内というように設定することができる。
【0008】
文字表示は、視点位置から所定の奥行き範囲内に位置する文字を表示対象としてもよい。つまり、この範囲を超える奥行きにある文字は表示対象外としてもよい。こうすることによって判読できないほど小さい文字が表示されることを回避でき、地図の画面内が煩雑になることを回避できる。
所定の範囲は、種々の設定が可能である。例えば、視点位置から所定の半径内にある円形領域内を表示対象としてもよい。また、視点位置から奥行き方向に所定距離だけ離れた直線を境界とする帯状領域または矩形領域を表示対象としてもよい。
【0009】
文字サイズおよび文字間隔の少なくとも一方について、予め設定された制限値の範囲内で変化させるようにしてもよい。制限値は最大値/最小値の一方のみを設けてもよいし、双方を設けても良い。文字サイズの最大値を設ければ、文字が過大となりすぎて地物等の画像を覆い隠してしまう事態を回避できる。文字サイズの最小値を設ければ、判読できないほどの過小な文字が表示されることを回避できる。文字間隔の最大値を設ければ、一連の文字列として認識できないほどに文字間隔が開きすぎることを回避できる。文字間隔の最小値を設ければ、個別の文字と認識できないほどに文字が詰まることを回避できる。このようにこれらの制限値を設けることにより、判読しやすい文字表示を実現することができる。
【0010】
縦長の文字枠と横長の文字枠で異なる表示比率を適用してもよい。縦長の文字枠(縦書きの文字)と、横長の文字枠(横書きの文字)とでは、判読のしやすさに差違があるため、両者で異なる表示比率を適用することにより、それぞれの文字枠について判読しやすい文字表示を実現することができる。
縦長の文字枠/横長の文字枠のそれぞれに適用する表示比率は種々の設定が可能であるが、例えば、地図表示画面が矩形である場合には、長辺に沿う方向の文字枠に対して、短辺に沿う方向の文字枠よりも急な表示比率を適用してもよい。横辺が長辺、縦辺が短辺の矩形の場合には、長辺に沿う横長の文字枠に対して、短辺に沿う縦長の文字枠よりも急な表示比率を適用するのである。長辺に沿う方向の複数の文字枠は、短辺方向にずらして配置されるため、文字枠同士の間隔が狭くなりがちであるから、奥行きに応じて急激に小さくすることにより、こうした煩雑さを抑制することが可能となる。
文字表示の煩雑さを抑制するためには、別の態様として、縦長よりも横長の文字枠で小さい文字サイズを用いるようにしてもよい。こうすれば、縦長と横長とで共通の表示比率を適用しても、画面内の煩雑さを抑制することができる。
【0011】
本発明において文字表示部は次の方法で文字を表示するか否かを決めるようにしてもよい。
まず、文字表示部は、文字の表示対象となるべき地物および背景の輪郭内を文字の表示領域として特定する。そして、この表示領域の最大幅が、文字枠の幅よりも大きい場合に、文字を表示するのである。こうすることによって、少なくとも幅方向は表示領域内に収まる文字が表示対象となるため、わずかに一部分が見えているだけの地物等に対する無用な文字を表示対象外とすることができ、画面内の煩雑さを抑制することができる。
仮に文字枠の大きさを固定で表示するものとした場合、透視投影法では遠景に行くほど地物等が縮小されて表示されるため、すぐに文字枠は地物等の表示範囲からはみ出すことになり、上述の方法による表示可否の判断が活きない。本発明では、奥行きに応じて文字枠を変化させるからこそ、上述の方法によって、表示する意義のある文字を選択的に表示することが可能となるのである。
【0012】
文字を表示する際の文字配置については、例えば、次の方法をとることができる。
まず、文字表示部は、描画された地図内での文字の表示位置を複数の方法で設定する。そして、設定された複数の表示位置のうち、文字と他の文字の文字枠同士の重なりが少ない表示位置を選択する。こうすることにより、文字同士の重なりを回避して、見やすい文字表示を実現することができる。
【0013】
また、本発明では、交差点について、各出口方向の行き先を表示するようにしてもよい。例えば、交差点を右折した場合の行き先、左折した場合の行き先を表示するのである。かかる表示は、例えば、次の方法で実現することができる。
まず、地図データベースには、地図中の交差点について、交差点への進入方向と対応づけて、交差点の各出口方向の行き先を表す文字列を格納した行き先データベースを設ける。このデータベースは種々の構造をとることができるが、例えば、道路をノード、リンクで表現したネットワークデータを利用して、交差点に進入するリンクと交差点の出口に該当するリンクの組合せに対して、それぞれ行き先を格納する態様をとることができる。そして、文字表示部は、透視投影法における視線ベクトル、または現在位置および進行方向に基づいて進入方向または進入リンクを特定し、それぞれの出口方向に対応するリンクを指定することで上述の行き先データベースを参照し、行き先を表す文字を表示するのである。
こうすることによって、比較的容易に行き先案内を表示することが可能となる。出口方向に当たる通り名称などを行き先データベースに格納しておき、通り名称を行き先と併せて、または行き先に代えて表示してもよい。
行き先案内は、全ての交差点に対して表示する必要はなく、直近の交差点など、一部の交差点についてのみ表示するようにしてもよい。
【0014】
本発明は,その他,コンピュータによって3次元地図を描画する3次元地図表示方法として構成してもよいし,かかる描画をコンピュータに実行させるためのコンピュータプログラムとして構成してもよい。また,かかるコンピュータプログラムを記録したコンピュータが読み取り可能な記録媒体として構成してもよい。記録媒体としては,フレキシブルディスクやCD−ROM,光磁気ディスク,ICカード,ROMカートリッジ,パンチカード,バーコードなどの符号が印刷された印刷物,コンピュータの内部記憶装置(RAMやROMなどのメモリ)および外部記憶装置等,コンピュータが読取り可能な種々の媒体を利用できる。
【図面の簡単な説明】
【0015】
【図1】従来技術における文字の表示例を示す説明図である。
【図2】実施例における3次元地図表示システムの構成を示す説明図である。
【図3】実施例における文字表示例を示す説明図である。
【図4】経路案内処理のフローチャートである。
【図5】3次元地図表示処理のフローチャートである。
【図6】文字サイズ決定処理のフローチャートである。
【図7】文字表示対象領域の他の設定例を示す説明図である。
【図8】文字サイズの設定例(1)を示す説明図である。
【図9】文字サイズの設定例(2)を示す説明図である。
【図10】文字サイズの設定例(3)を示す説明図である。
【図11】文字配置処理のフローチャートである。
【図12】交差点、行き先表示のフローチャート(1)である。
【図13】交差点、行き先表示のフローチャート(2)である。
【図14】行き先データベースを例示する説明図である。
【図15】行き先表示例を示す説明図である。
【発明を実施するための形態】
【実施例1】
【0016】
<<システム構成>>
図2は、実施例における3次元地図表示システムの構成を示す説明図である。図2には車載のカーナビゲーション装置としての構成例を示した。3次元地図表示システムは、歩行者用のナビゲーション装置として構成してもよい。また、3次元地図表示システム100は、車載装置としての構成に限らず、携帯電話、PDA(Personal Digital Assistant)、PND(Personal
Navigation Device)などの携帯端末を用いて構成することも可能である。3次元地図表示システム100は、ナビゲーション機能を必ずしも備えている必要はなく、単に3次元地図を表示するシステムとして構成してもよい。
【0017】
3次元地図表示システム100は、ディスプレイ101、スイッチ102等を備える本体から構成される。ユーザは、ディスプレイ101に表示されるメニュー等に従ってスイッチ102を操作することで、出発地、目的地、時間優先/距離優先などの経路探索の条件を指定することができる。また、経路案内時には、ディスプレイ101上に地図および経路が表示される。この画面では、スイッチ102を操作することによって、ノースアップ(地図の上が北となる表示)/ヘディングアップ(地図の上が移動体の進行方向となる表示)の切り換えや、地図の表示サイズの切り換え、3次元表示/2次元表示の切り替えなどを行うことができる。
【0018】
図の上方には、3次元地図表示システム100に備えられている機能ブロックを示した。本実施例では、3次元地図表示システム100は、内部にCPU、ROM、RAMを備えたマイクロコンピュータを有しており、図中の各機能ブロックは、主としてROMに備えられた制御プログラムによってソフトウェア的に構成されている。これらの機能ブロックは、それぞれハードウェア的に構成してもよい。
また、本実施例では、3次元地図表示システム100に必要な機能ブロックを全て備えることによってスタンドアロンで稼働する装置構成とした。これに対し、図中の機能の少なくとも一部を、3次元地図表示システム100とネットワーク等の通信回線で接続されたサーバによって提供する構成としてもよい。
【0019】
3次元地図表示システム100には、経路探索および経路案内に使用する地図データベース130が用意されている。地図データベース130は、3次元地図表示システム100内に記憶する他、DVDなどの記録媒体によって提供してもよいし、サーバからネットワーク等の通信回線を介して供給可能としてもよい。
【0020】
地図データベース130には、道路ネットワークデータ131、3次元ポリゴンデータ132、文字データ133が備えられている。
道路ネットワークデータ131は、道路をノードおよびリンクで表したネットワークであり、主として経路探索および経路案内に利用される。リンクとは道路に対応した位置座標で表される点列からなる線分または折れ線である。ノードはリンクの交点または端点に対応する位置座標で表される地点である。
3次元ポリゴンデータ132は、地物等を3次元的に表示した3次元地図を表示するためのデータである。3次元ポリゴンデータ132には、高架道路、ビルその他の建造物のデータの他、道路周辺に存在する案内板、道路標識、ガードレール、街路樹などを表示するためのデータも格納されており、ユーザが現実に視認する光景とほぼ同じ画面を再現可能となっている。
文字データ133は、地物等の名称、交差点の名称、地名、住所、通り名など、地図中に種々の文字を表示するためのデータを格納している。文字データ133は、表示対象となる地物等と対応づけて格納されている。交差点名や地名など、表示対象としての3次元ポリゴンデータが存在しない名称については、緯度経度などの座標系で表示位置を指定してもよい。文字データ133には、表示すべき文字のフォント、文字色、縦書き/横書きなどの属性を併せて格納してもよい。
【0021】
主制御部110は、3次元地図表示システム100の動作を統合制御する。コマンド入力部115は、ユーザによるスイッチ102の操作を介して、経路探索の条件指定や経路案内の表示切り換えなどのコマンドを入力する。
経路探索エンジン112は、ユーザから指定された条件に従って、道路ネットワーク131を参照して経路探索を行う。経路探索方法としては、例えば、周知のダイクストラ法を利用することができる。経路探索結果113は、経路探索の結果を記憶するメモリ領域である。経路探索の結果は、任意の形式で記憶可能である。本実施例では、通過すべきノードおよびリンクを順次指定したノード・リンク列の形式で記憶させている。
GPS111は、Global Positioning Systemによって現在位置を検出する。ジャイロによる検出結果を併用することで検出精度を向上させることもできる。
経路案内部114は、検出された現在位置に応じて、経路探索結果113に記憶された経路の案内画面をディスプレイ101に表示する。案内画面としては、2次元地図上に経路を表示した画面、3次元モデルを利用した画面がある。バーズアイビュー、ドライバーズビューなど、種々の視点での3次元表示が可能である。3次元表示の視点は、ユーザの操作によって切り換えられる他、交差点との位置関係によって自動的に切り換えることも可能である。
表示制御部120は、ディスプレイ101への表示を制御する。表示内容としては、経路探索の条件等を指定するためのメニュー画面等の表示や、経路探索や経路案内に用いられる地図の表示などが挙げられる。
3次元地図による経路案内時の表示は、図示する背景描画部121、文字表示部122、経路表示部123によって行われる。背景描画部121は、3次元ポリゴンデータ132を用いて、透視投影法により地物等の描画を行う。文字表示部122は、描画された背景画像中に、地物等の名称などの文字を表示する。経路表示部123は、経路探索結果113を参照して、背景画像中に経路を表示する。本実施例では、背景画像を描画するレイヤ、文字を表示するレイヤ、経路を表示するレイヤと分けて、それぞれの描画、表示を行うものとした。3次元地図全体を一つのレイヤで描画してもよいし、更に多くのレイヤを用いても構わない。またレイヤは、図示した以外の順序で重ね合わせるようにしてもよい。
3次元地図表示システム100は、経路案内と無関係に単に3次元地図を表示することも可能である。かかる場合には、背景描画部121、文字表示部122が用いられることになる。
【0022】
<<文字表示例>>
図3は、実施例における文字表示例を示す説明図である。図3(a)〜図3(d)の順に、正面に位置する「百年橋通り」なる道路を進行する際の表示を示した。
図中に丸囲みで示した「ルビエ博多」なる文字に着目すると、図3(a)〜図3(d)の順に、この文字列の文字枠、つまり「ルビエ博多」の文字の外郭に相当する矩形の大きさが大きくなっていることが分かる。本実施例では、このように奥行きに応じて文字枠の大きさを変化させて文字を表示する。
具体的には、図3(a)の状態では、「ルビエ博多」なる建物は、視点位置よりも奥行き方向に遠方にあるため、透視投影法によって小さく描画される。従って、「ルビエ博多」の名称も、小さく表示する。図3(b)〜図3(d)のように、「ルビエ博多」に近づくと、透視投影法によって建物は徐々に大きく描画されるようになるため、名称も徐々に大きく表示する。
図3の例では、奥行きに応じて文字サイズおよび文字間隔の双方を変化させる例を示したが、文字サイズまたは文字間隔の一方のみを変化させる態様としてもよい。奥行きに応じて、文字サイズ等を設定する方法は、後述する。
従来技術における表示例(図1)と、図3とを比較すれば明らかな通り、奥行きに応じて、文字枠の大きさを変化させることによって、文字自体に遠近感を持たせることができ、文字と建物との対応関係を直感的に把握しやすくなる利点がある。また、遠景の文字を小さく表示することにより、地図内の煩雑さを抑制できる。
以下では、経路案内を行う場合を例にとって、図3のように文字枠の大きさを変化させて3次元地図を表示する技術について説明する。
【0023】
<<経路案内処理>>
図4は、経路案内処理のフローチャートである。3次元地図表示装置100のCPUが実行する処理である。処理を開始すると、CPUは、経路探索の出発地および目的地を設定する(ステップS10)。出発地は、ユーザが指定してもよいし、GPS111で検出される現在位置を用いても良い。
出発地、目的地が設定されると、CPUは経路探索を行う(ステップS12)。経路探索は、例えば、道路ネットワークデータ131を参照し、周知のダイクストラ法によって行うことができる。得られた経路は、経路探索結果113に蓄積される。
CPUは、以下、GPS111の検出結果およびその変化に基づいて、現在位置および進行方向を取得し(ステップS14)、3次元地図を表示しながら(ステップS100)、経路案内を行う。本実施例では、地図表示は、2次元地図と3次元地図で切り替え可能であるが、ここでは3次元地図表示を行う場合を例にとって説明する。この経路案内は、目的地に到着するまで継続して行う(ステップS500)。
本実施例では、経路案内処理の一過程として3次元地図を表示する例を示すが、経路案内と無関係に単純にユーザの操作に従って3次元地図を表示させることも可能である。
【0024】
<<3次元地図表示処理>>
図5は、3次元地図表示処理のフローチャートである。図4のステップS100に相当する処理である。
本実施例では、図5の右側に示すように、背景レイヤ、文字レイヤ、経路レイヤに分けて描画を行っている。背景レイヤとは、地物等の背景画像を描画するレイヤである。文字レイヤは、地物等の名称などの文字を表示するためのレイヤである。経路レイヤは、経路探索結果を矢印等で表示するためのレイヤである。ディスプレイ101には、これらのレイヤを重ね合わせた画像が表示される。
3次元地図表示処理を開始すると、CPUは、背景描画処理を行う(ステップS200)。これは、3次元ポリゴンデータ132を参照しながら、透視投影法によって地物等を描画する処理である。透視投影法の視点は、現在位置、または現在位置から所定距離だけずらした位置を用いることができる。透視投影の視線ベクトルとしては、現在の進行方向を用いることができる。視点や視線ベクトルをユーザが指定可能としてもよい。
次に,CPUは、文字表示処理を行う(ステップS300)。地図内に表示される地物等の名称などの文字を表示する処理である。図3で示したように、本実施例では、文字表示の対象となる地物等の奥行きに応じて文字サイズを変化させることによって文字枠の大きさを変化させるため、CPUは奥行きに応じて文字サイズを決定する処理、つまり文字サイズ決定処理を行う(ステップS310)。そして、文字サイズを決めた後、文字の配置を決定する処理、つまり文字配置処理を行う(ステップS340)。また、交差点の名称、および交差点からの出口についての行き先を表示する処理、つまり交差点、行き先表示処理を行う(ステップS370)。これらの各処理の内容については、後で詳述する。
こうして背景および文字の表示を行うと、CPUは、経路表示処理を行う(ステップS400)。経路探索結果113を参照して、目的地に向かう経路を矢印等で表示する処理である。
【0025】
<<文字サイズ決定処理>>
図6は、文字サイズ決定処理のフローチャートである。図5のステップS310に相当する処理である。
CPUは、現在位置Pvを取得する(ステップS312)。そして、処理対象となる文字が表す地物の重心位置Pobjを取得する(ステップS314)。文字データ133は、それぞれ文字が表す対象となる3次元ポリゴンデータ132と関連づけて格納されているから、3次元ポリゴンデータ132を参照すれば、その重心位置Pobjを取得することができる。交差点名称、通りの名称、地名など地物と対応づけられていない文字については、表示すべき位置が文字データ133に格納されているので、この位置を、上述の重心位置Pobjとして用いることができる。
CPUは、図中右上の説明図内に示す通り、視点位置と重心位置との距離dを取得する(ステップS316)。そして、この距離dが視点から規定範囲Dc内か否かを判断する(ステップS318)。図中右下の説明図に示す通り、視点Pvを中心として半径Dcの円形領域Aを設定し、文字が表す地物の重心位置Pobjが、この円形領域A内にあるか否かを判断することになる。
そして、重心位置Pobjまでの距離dが、規定距離Dcよりも小さい場合には(ステップS318)、距離dに応じた文字サイズを決定する(ステップS322)。文字サイズは奥行きに応じて予め設定された関数に基づいて決める。具体的な決定方法は後述する。なお、重心位置Pobjが視線ベクトルからずれている場合には、厳密には距離dは奥行きとは異なるが、距離dを奥行きと見なして文字サイズを決定して差し支えない。3次元地図の左右方向の画角が限られているため視線ベクトルから大きく左右方向に離れた位置の文字は画角から外れること、および左右にずれた位置にある文字は他の建物等の陰になるため表示対象となりにくいことから、表示される文字は、視線ベクトル付近のものが多いからである。
ステップS318において、距離dが規定距離Dcよりも大きい場合には、その文字は表示対象外とする(ステップS320)。つまり、図示する円形領域A内に位置する地物に対応する文字のみを表示対象とし、その外側に位置する文字は表示対象外とするのである。このように、視点Pvから一定距離内にある文字だけを表示対象とすることによって、遠く離れた文字を間引くことができ、地図画像内が煩雑化するのを回避することができる。
円形領域Aを規定する距離Dcは、文字を表示対象とするか否かの判断基準となる距離であり、任意に設定可能である。距離Dcを大きくすれば、多くの文字が表示対象となるので地図で提供される情報が増える一方、地図画像が煩雑になる傾向がある。逆に、距離Dcを小さくすれば、地図画像内は文字が少なく簡潔になる一方、地図によって提供される情報が少なくなる。距離Dcは、双方を考慮して設定すれば良い。距離Dcは、予め固定としてもよいし、ユーザが指定可能としてもよい。
【0026】
図6では、処理対象となる文字を決定した後、当該文字を表示すべき重心位置Pobjを求め、円形領域A内に属するか否かに応じて、表示対象とするか否かを判断する(ステップS313)という手順で処理を行う例を示した。
表示対象とするか否かは、種々の処理方法で判断可能である。図6に示した方法とは逆に、まず視点位置Pvを中心とする円形領域Aを設定し、円形領域A内のオブジェクトを抽出し、それに対応する文字データを選択することで、表示対象となる文字を特定してもよい。文字の表示は、視線ベクトル方向に存在するもののみが問題となるため、視線ベクトルに直交する直径で円形領域Aを切断した半円形領域を用いて表示対象となる文字を特定する方法をとることもできる。
【0027】
図6では円形領域Aを用いて表示対象となる文字を判別する例を示したが、円形以外の領域を用いて判断してもよい。
図7は、文字表示対象領域の他の設定例を示す説明図である。この例では、文字表示対象領域として矩形領域を用いた例を示した。視点位置Pv、視線ベクトルVvであるとすると、視点位置Pvからオブジェクトまでの視線ベクトル方向の投影距離ddが規定距離Dr以内の場合に、文字を表示対象と判断する。投影距離ddは、オブジェクトの重心位置Pobjから視線ベクトルVvへの垂線の足PHを算出し、視点Pvから足PHまでの距離を算出すればよい。
さらに、視線ベクトルと直交する幅方向にも制限を持たせても良い。図示するように幅Wr内のみを表示対象とするのである。幅Wrは、透視投影法の画角などを考慮して任意に設定可能である。こうすることにより、表示対象となる文字をさらに間引くことができる。図6で示した円形領域に比較して、矩形領域を用いる場合には、視線ベクトルVv方向の規定距離Drと、幅Wrとを個別に設定することができるため、文字表示対象領域を柔軟に設定できる利点がある。
【0028】
次に、図6のステップS322における文字サイズの決定方法について説明する。
図8は、文字サイズの設定例(1)を示す説明図である。図8(a)における直線Lsが、文字サイズと視点からの距離、つまり奥行きとの関係を表している。図示する通り、本実施例では、奥行きが大きくなるほど表示比率が最大値Smaxから最小値Sminまで直線的に小さくなる。表示比率は、奥行きがDmaxよりも小さい範囲内で設定されている。奥行きの最大値Dmaxを超える範囲では、文字を表示しないからであり、このDmaxの値は、図6における円形領域Aの半径Dc、または図7における矩形領域の辺Drに相当する値となる。表示比率は、Dmaxよりも小さい奥行きDlimで、最小値となるように設定されている。従って、奥行きDlimからDmaxの間では、表示比率は奥行きに関わらず最小値で固定値となる。このように固定値となる範囲を設けることにより、文字が過小となることを回避し、判読可能なサイズの文字を表示することが可能となる。
一般に透視投影法では、奥行きを横軸にとり、表示比率を縦軸にとると、表示比率Lpは「表示比率=0」に漸近する反比例のグラフとなる。本実施例では、文字の表示比率Lsは、透視投影法における表示比率Lpよりも大きくなるように設定した。透視投影では奥行きが大きくなるにつれて建物が縮小されて表示されるが、図8(a)に示すように文字の表示比率を設定することによって、奥行きが大きくなるにつれて建物よりも緩やかな比率で文字サイズは小さくなる。従って、文字サイズが過小となることを回避でき、判読可能なサイズで文字表示することが可能となる。
本実施例では、文字間隔は上側の文字の下端と、下側の文字の上端との間隔として定義されている。従って、文字サイズを変更すれば文字間隔一定であっても文字列に外接する矩形の文字枠の大きさは、文字サイズに応じて縦横ともに変化する。
図8(a)では、文字サイズの表示比率の設定例を示したが、これに代えて、奥行きに応じて文字サイズを設定するグラフを用いても良い。
【0029】
図8(b)は、図8(a)の設定による文字の表示例を示す説明図である。「ABCDEビル」なる文字列の表示位置を奥行き方向に変化させた場合の表示例を示した。この文字列を包含する矩形Cbが文字枠である。ただし、図の煩雑化を回避するため、それぞれの文字については、文字枠Cbを一定比率で拡大した矩形を文字枠として描いている。
図示する通り、奥行きが大きくなるにつれて、文字のサイズが徐々に小さくなる。この表示比率が直線的であることは、「ABCDEビル」の文字枠の上端と下端とが、それぞれ直線的に配置されることから分かる。 また、文字サイズを透視投影法と同じ表示比率で変化させた場合には、上端と下端とを結ぶ直線は、消失点Vpで交差するはずであるが、図8(b)の例では、上端を結んだ線は消失点Vpとは異なる点で交差する。このことから、それぞれの奥行きにおける文字の表示比率は、透視投影法による表示比率よりも大きくなっていることが分かる。
【0030】
図8(c)は、地図中での文字の表示例である。図示する通り、「ルビエ博多」など遠景の建物に対する文字は、「西鉄ビル別館」など近景にある建物に対する文字よりも小さく表示される。こうすることにより、文字からも、遠近感が把握でき、文字と建物との対応関係を直感的に理解しやすくなる。
【0031】
文字サイズの変化は、図8に示す他、種々の設定が可能である。
図9は、文字サイズの設定例(2)を示す説明図である。図9(a)における曲線Csが、表示比率と視点からの距離、つまり奥行きとの関係を表している。図示する通り、奥行きが大きくなるほど表示比率が最大値Smaxから最小値Sminに漸近するように曲線的に小さくなる。表示比率は、図8と同様、奥行きがDmaxよりも小さい範囲内で設定されている。かかる曲線は、指数関数、双曲線など種々の関数を用いることができる。最小値Sminに漸近する曲線を用いると、最大値Dmin近傍では、概ね最小値Sminに近い表示比率となり、文字が過小となることを一つの統一的な関数で簡易に回避することができる利点がある。
曲線の関数は、種々の設定が可能であるが、透視投影法による表示比率Lpよりも、全範囲で大きな表示比率となるように設定することが好ましい。こうすることにより、建造物の大きさの変化よりも文字サイズの変化を緩やかにすることができ、文字サイズが過小となることを回避できる。
【0032】
図9(b)は、図9(a)の設定による文字の表示例を示す説明図である。「ABCDEビル」なる文字列の表示位置を奥行き方向に変化させた場合の表示例を示した。図示する通り、奥行きが大きくなるにつれて、文字のサイズが徐々に小さくなることが分かる。この表示比率が曲線的であることは、「ABCDEビル」の文字列の下端を直線的に配置したときに上端が曲線的に配置されることから分かる。下端を直線的に配置したのは、建物の下端は道路に沿って直線的に並んでいるので、これに合わせて文字を配置した方が、違和感が小さいからである。
図の例では、文字の下端を結ぶ直線は消失点Vpで交差するのに対し、上端を結ぶ曲線は消失点Vpとは異なる点に向かうことになるから、文字の表示比率は、透視投影法による表示比率よりも大きいことが分かる。
【0033】
図9(c)は、地図中での文字の表示例である。図示する通り、「ルビエ博多」など遠景の建物に対する文字は、「西鉄ビル別館」など近景にある建物に対する文字よりも小さく表示される。こうすることにより、文字からも、遠近感が把握でき、文字と建物との対応関係を直感的に理解しやすくなる。
【0034】
文字サイズは、更に種々の設定が可能である。
図10は、表示比率の設定例(3)を示す説明図である。
図10(a)には、直線的に表示比率を変化させる設定の変形例を示した。この例では、次のように3つの区分に応じて表示比率が決まっている。
奥行き<D0・・・・・・・・・表示比率は最大値Smaxで固定;
D0≦奥行き≦Dlim・・・・表示比率は最大値SmaxからSminまで直線的に変化;
Dlim<奥行き≦Dmax・・表示比率は最小値Sminで固定;
このように、奥行き<D0となる近景の部分にも、表示比率が一定となる範囲を設けても良い。こうすることにより、近景の文字が過大になって画面からはみ出してしまうことを抑制できる利点がある。
【0035】
図10(b)には、曲線的に表示比率を変化させる設定の変形例を示した。表示比率は、曲線Cs1のように、奥行きDmaxで最小値Sminとなるように、最大値Smaxから上に凸の曲線と下に凸の曲線との組合せで変化させる。かかる関数としては、例えば、余弦(cos)関数が挙げられる。こうすることにより、近景で文字が過大になることを抑制しつつ、遠景で文字が過小になることを抑制することができ、全体にわたって判読可能な文字を表示することが可能となる。
また、別の設定例として、曲線Cs2のように、上に凸の曲線によって最大値Smaxから最小値Sminまで変化させるようにしてもよい。かかる曲線としては、指数関数、正弦(sin)関数などを用いることができる。こうすることにより、遠景に向かうにつれて急激に文字サイズが小さくなるから、近景の文字が過大になることを回避できるとともに、近景での情報提供を重視した地図表示を行うことが可能となる。
【0036】
図8〜10では、文字サイズの設定方法を説明したが、文字間隔についても、同様に奥行きに応じて変化させてもよい。それぞれの文字の代表点の距離によって文字間隔が定義されている場合は、文字間隔についても変化させることが好ましい。かかる定義では、文字サイズを小さくしても文字の代表点の間隔は変化しないため、文字と文字との隙間が開いてしまうからである。文字間隔の定義に関わらず、文字サイズの変化に応じて文字間隔も変化させるようにすれば、遠景においても近景においても文字列全体をバランスよく表示することが可能となる。文字サイズの変化と文字間隔の変化とは異なる表示比率としてもよいし、同じ表示比率を適用してもよい。
また図8〜10では、文字サイズを変化させる例を示したが、文字枠の大きさが変化すれば遠近感を把握することは可能であるため、文字サイズは固定とし、文字間隔のみを奥行きに応じて変化させる設定としてもよい。さらに、奥行きが所定範囲内にあるときは文字間隔のみを変化させ、奥行きが所定範囲よりも大きくなると、文字サイズのみ、または文字サイズと文字間隔を変化させるというように、途中で変化の態様を切り替えてもよい。
【0037】
図8〜10では、縦長の文字枠に対する設定を示した。横長の文字枠に対しては、縦長と同様の設定を適用してもよいし、異なる設定としてもよい。図3(c)に示すように、横長の文字枠は、奥行きに応じて上下方向にずれて配置されるため、縦長の文字枠に比較して文字枠同士の間隔が狭くなりがちである。従って、横長の文字枠に対しては、縦長の文字枠よりも相対的に文字サイズが小さくなる設定を適用することが好ましい。
【0038】
<<文字配置処理>>
図11は、文字配置処理のフローチャートである。サイズが決定された文字について、地図画像内の配置を決定する処理であり、文字表示処理(図5)のステップS340に相当する処理である。
処理を開始すると、CPUはオブジェクトの横幅Wobjを取得する(ステップS342)。図中に横幅Wobjの例を示した。図中にハッチングで示したように、まずCPUは、建物など文字の表示対象となるオブジェクトについて、透視投影された地図画像内での輪郭を特定する。これは、オブジェクトのシルエット(以下、「表示領域」ということもある)を求めるということもできる。そして、この輪郭で特定された閉図形または表示領域の最大幅を計測し、横幅Wobjとするのでる。
CPUは、文字の幅が、横幅Wobjである場合(ステップS344)には、その文字を表示対象外とする(ステップS346)。こうすることによって、透視投影図で、ごく一部しか見えていないような建物等に対して文字が表示されることを容易に回避でき、地図の煩雑化を抑制することができる。
文字の幅が横幅Wobj≦である場合には(ステップS344)、文字の配置位置を決定する(ステップS348)。左右方向の位置は、文字枠を最大横幅Wobj内で消失点に近い側の端に一端を寄せて配置することが好ましい。こうすることにより、オブジェクトからのはみ出し、および他の建物等への重なりを少なくすることができる。
縦方向の位置については、まずオブジェクトの表示領域の最下部BLを特定する(ステップS350)。図の右側に示した通り、最下部BLとは、オブジェクトについての3次元での最下部という意味ではなく、透視投影された2次元の地図画像内で表示領域を見た場合の縦方向の最下部という意味である。そして、最下部BLを求めると、CPUは、ここに文字の最下点を配置する(ステップS352)。図の右側に示した通り、最下部BLに文字を配置することにより、オブジェクトから上下方向に文字が大きくはみ出すことを回避でき、また結果として画面から上下方向に文字がはみ出すことも抑制できる利点がある。
【0039】
文字配置は、必ずしも図11に示した方法による必要はない。例えば、表示領域の重心位置に文字枠の重心を合わせるように配置してもよい。また、他の文字枠や、他のオブジェクトの表示領域との重なりの有無を判断して、表示するか否かを決定してもよい。例えば、表示対象となる文字枠の面積のうち、所定の割合以上の面積が他の文字枠や表示領域と重なるようであれば、表示対象から外すものとしてもよい。
【0040】
<<交差点、行き先表示処理>>
図12および図13は、交差点、行き先表示のフローチャートである。この処理は、交差点の名称や、交差点出口の行き先を表示する処理であり、文字表示処理(図5)のステップS370に相当する処理である。交差点、行き先表示の文字サイズについては、図8〜10の処理によって事前に設定されているものとする。
CPUは、まず交差点に名称を表示するための処理を実行する。CPUは、交差点について表示領域を取得する(ステップS372)。図の右側に、表示領域の例を示した。
図中の領域ISCが表示領域に相当する。透視投影法で地図を描画すると、交差点の中には、建物BLD1、BLD2等によって部分的に隠れてしまうものが生じる。表示領域とは、本来、道路ポリゴンのみで規定されるはずの交差点のうち、建物によって隠される部分を除いた領域を言う。
図中に示すように、表示領域ISCは複雑な形状となることが多い。そこで表示領域ISCに内接する一定幅Wiの矩形領域Riを求め、この重心CG1(図示は省略)に交差点名称を配置する(ステップS374)。
【0041】
そして、CPUは、交差点名称について、他の配置候補を設定する。つまり、3次元ポリゴンデータに基づいて、交差点の重心位置CGiを求め、この点からHだけ上方にある点CG2に交差点名称を配置するのである(ステップS376)。地図画像内での配置は、点CG2に対応する点を透視投影法で求めることによって決められる。
【0042】
CPUは、こうして求められた配置位置CG1、CG2のうち、建物名称との重なりが少ない方を選択して、交差点名称を表示する(ステップS378)。当然ながら、2つの配置位置CG1、CG2同士の重なりは判断しない。
建物名称については、建物との位置関係が重要であり、文字配置の自由度が低いのに対し、交差点名称は、上述のように複数の配置が可能である。建物等の名称と重なりが少ない側の配置を選択することにより、交差点名称の配置の自由度を活かし、見やすい表示を実現することができる。
上述の例では、2つの配置を比較する場合を示したが、さらに多くの配置候補を考慮してもよい。また、いずれの配置候補も、建物との重なりが生じる場合には、重なる部分の面積が少ないものを選択してもよいし、複数の候補配置から予め設定された優先度に従って一つを選択してもよい。
交差点名称の配置を決定すると、CPUは、交差点名称と重なる建物名称を削除する(ステップS380)。こうすることで、交差点名称を優先的に表示することができる。交差点名称と建物名称の優先度は、種々の設定が可能であり、建物名称と重ならない場合にのみ交差点名称を表示するようにしてもよい。また、交差点名称の文字枠のうち建物名称が重なる部分の比率を求め、この比率が所定値以下の場合は、交差点名称を優先(建物名称を削除)するようにしてもよい。
【0043】
交差点名称を配置すると、CPUは、交差点の行き先表示を行う。この処理のため、まずCPUは対象となる交差点について、行き先情報を取得する(ステップS382)。
【0044】
行き先情報を与える行き先データベースについて説明する。
図14は、行き先データベースを例示する説明図である。本実施例では、行き先データベースは、文字データ133の一つとして格納されているものとしたが、道路ネットワークデータ131に格納するようにしてもよい。
図14(a)に示す道路形状を例にとって行き先データベースの構造を説明する。図14(a)に示す通り、この交差点は、ノードFN1に接続される4本のリンクFL1〜FL4から構成されている。リンクFL1は「□□」に向かう通り「A通り」に対応している。リンクFL2は「○○」に向かう通り「B通り」に対応している。リンクFL3は、「**」に向かう通り「A通り」に対応している。リンクFL4は「△△」に向かう通り「C通り」に対応している。
図14(b)に行き先データベース例を示した。行き先データベースは、ノードごとに用意されている。図の例では、図14(a)に示したノードFN1に対応する部分を示した。「リンク間情報」は、ノードFN1の通行方法を進入リンク、出口リンクの組合せで示している。例えば、「FL1→FL2」は、リンクFL1からノードFN1に進入し、リンクFL2に退出する経路を表している。そして、「行き先」は当該経路に対して表示されるべき行き先情報の文字列を表し、「通り名」は当該経路において出口リンクに対応する通り名称を表している。例えば、「FL1→FL2」の経路に対しては、リンクFL2が「○○」に向かう通り「B通り」に対応しているから、「行き先」として「○○」、「通り名」として「B通り」が格納されている。他の経路についても、同様である。
このように、ノードの通過方法に対して、それぞれ「行き先」、「通り名」を対応づけたデータベースを用いることにより、通過方法に即した利便性の高い行き先表示を行うことが可能となる。
例えば、図14(b)のデータ構造によれば、リンク間情報「FL1→FL3」と「FL2→FL3」とでは、ともにリンクFL3を出口とする経路であっても、別個のデータとして、それぞれ異なる「行き先」「通り名」を格納することができる。リンク間情報「FL1→FL3」に対しては、リンクFL1、FL3がともに「A通り」に対応したリンクであることから、「通り名」データをブランクとして、表示の簡素化を図ってもよい。また、リンクFL1からFL3方向に向かうユーザと、リンクFL2からFL3方向に向かうユーザとで、求める行き先情報が異なる傾向にある場合には、この傾向に合わせた個別の「行き先」を格納してもよい。
図14の例では、「行き先」「通り名」をそれぞれ格納するものとしたが、いずれか一方のみを格納してもよい。
【0045】
図14で示した行き先データベースを参照すれば、CPUは、各交差点のノードに対して、それぞれの出口ごとの「行き先」「通り名」を行き先情報として取得することができる。行き先情報は経路探索結果とは無関係に取得して構わない。図14の例で、リンクFL1をノードFN1に向かって走行している場合には、経路探索結果に関わらず、進入リンクとしてリンクFL1を含むリンク間情報「FL1→FL2」、「FL1→FL3」、「FL1→FL4」の全データを取得してもよい。
【0046】
図13に戻り、交差点、行き先表示処理の内容を説明する。
行き先情報を取得すると、CPUは、行き先情報を表示する。行き先情報についても、交差点名称と同様、複数の候補表示位置を設定し、いずれか一つを選択する方法をとった。CPUは、一つ目の候補として、出口道路ポリゴンと交差点との交線の中点D1に行き先表示を配置する(ステップS384)。また2つ目の候補として、出口道路リンクと交差点との境界の上方Hmの点D2に行き先表示を配置する(ステップS386)。そして、D1、D2のうち、建物名称と重なりが生じない方を選択して行き先表示する(ステップS388)。交差点名称の場合は、建物名称よりも交差点名称を優先的に表示するが(ステップS378、S380)、行き先表示は交差点名称よりも重要性が低いと考えられるため、建物名称を優先させるものとした。行き先名称についても、交差点名称と同様、建物名称より優先的に表示する処理としてもよい。
【0047】
上述した2つの候補表示位置の設定例について具体的に説明する。
図15は、行き先表示例を示す説明図である。図15(a)に候補表示位置の設定例を示した。図の煩雑化を回避するため、候補位置D1は図の右側のリンクFLRに示し、候補位置D2は左側のリンクFLLに示した。中央のハッチングを付した領域ISC2が交差点領域である。
候補位置D1は、右側のリンクFLRに対応する道路ポリゴンと交差点領域ISC2との交線の中点に設定する。リンクFLRと交差点領域との交点に設定するようにしてもよい。実際には左側のリンクFLLに対しても点D1に対応する候補位置が得られることになる。
一方、候補位置D2は、リンクFLLと交差点領域ISC2との交点DHを足とする垂線を求め、交点DHより高さHmの位置にある点D2に表示する。具体的には、3次元空間においてかかる点D2を求め、透視投影によって描画された地図上での表示位置を特定すればよい。実際には、右側のリンクFLRに対しても点D2に対応する候補位置が得られることになる。
そして、各リンクFLR、FLLに対して得られた2つの候補位置に行き先表示を行った場合に、建物名称と重ならないものを選択するのである。
【0048】
図15(b)に行き先情報の表示例を示した。破線で囲った「祇園」「塩原」という横書きの名称が、「美野島交差点」の行き先表示である。中央の「百年橋通り」という縦書きの名称が通り名表示である。ここでは、行き先と通り名とを使い分けて表示する例を示した。表示の文字サイズは交差点名称と同様にして設定できる。縦書き/横書きの使い分けは、対応するリンクが地図画像内で傾き45〜90度(垂直に近い状態)であれば縦書き、その他の場合は横書きというように設定することができる。縦書きまたは横書きのいずれかに統一してもよいし、通り名は縦書き、行き先は横書きというように内容に応じて使い分けても良い。
行き先表示を全ての交差点について行うと、画面が煩雑化するため、最も近景にある交差点についてのみ行き先表示を行うようにしてもよい。
【0049】
本実施例では、図14(b)に示すように行き先情報として「行き先」「通り名」の2通りが用意されている。この2通りは種々の方法で使い分けが可能である。例えば、ユーザがいずれを表示するかを指示するようにしてもよい。また、正面に近い通りに対しては「通り名」を用い、右左折方向の通りに対しては「行き先」を用いるというように、方向に応じて使い分けてもよい。例えば、進入リンクと出口リンクとの間の角度が所定値以下(直進に近い状態)であれば、「通り名」を用い、その他の場合には「行き先」を用いるという方法をとることができる。
【0050】
<<効果および変形例>>
以上で説明した実施例の3次元地図表示システムによれば、文字サイズを奥行きに応じて変化させることにより、文字自体に遠近感を持たせることができる。この結果、文字と建物等との対応関係を直感的に把握しやすくできる。
また、奥行きに応じた文字サイズの表示比率を、透視投影法において建物等に適用される表示比率と異なる設定とすることにより、文字サイズが過小または過大となることを回避でき、判読可能な文字を表示しつつ、画像の煩雑化を回避することができる。
【0051】
本発明は、種々の態様で実現することが可能である。上述した種々の処理は、必ずしも全てを備えなければならないことはなく、一部を省略したり、他の処理に置き換えたりすることも可能である。
また、上述の例において、ソフトウェア的に実行されている処理は、ハードウェア的に実行してもよいし、その逆も可能である。
【産業上の利用可能性】
【0052】
本発明は,地物を3次元的に表現した3次元地図において文字を表示するために利用可能である。
【符号の説明】
【0053】
100…3次元地図表示システム
101…ディスプレイ
102…スイッチ
110…主制御部
111…GPS
112…経路探索エンジン
113…経路探索結果
114…経路案内部
115…コマンド入力部
120…表示制御部
121…背景描画部
122…文字表示部
123…経路表示部
130…地図データベース
131…道路ネットワークデータ
132…3次元ポリゴンデータ
133…文字データ
【特許請求の範囲】
【請求項1】
地物を3次元的に表現した3次元地図を描画する3次元地図表示システムであって,
前記地物を透視投影法で3次元的に描画して前記3次元地図の背景画像を生成するための3次元ポリゴンデータと,前記背景画像中に所定の名称を表示するための文字列および表示位置を特定する文字データとを格納する地図データベースと、
前記3次元ポリゴンデータを用いて地物を透視投影法で3次元的に描画して前記背景画像を生成する背景描画部と、
前記文字データを用いて前記背景画像中に前記所定の名称を表す文字を表示する文字表示部とを備え、
前記文字表示部は、
各名称の文字列について、該文字列を包含する文字枠が前記透視投影法における視点からの奥行きに応じて該透視投影法における表示比率とは異なる表示比率で小さくなるよう、該文字列の文字サイズおよび文字間隔の少なくとも一方を変化させて、前記文字の表示を行う3次元地図表示システム。
【請求項2】
請求項1記載の3次元地図表示システムであって、
前記文字表示部は、奥行きが所定値以下の範囲では前記透視投影法よりも緩やかな表示比率で前記文字枠の大きさを変化させる3次元地図表示システム。
【請求項3】
請求項1または2記載の3次元地図表示システムであって、
前記文字表示部は、前記視点位置から所定の奥行き範囲内に位置する文字を表示対象とする3次元地図表示システム。
【請求項4】
請求項1〜3いずれか記載の3次元地図表示システムであって、
前記文字表示部は、前記文字サイズおよび文字間隔の少なくとも一方について、予め設定された制限値の範囲内で変化させる3次元地図表示システム。
【請求項5】
請求項1〜4いずれか記載の3次元地図表示システムであって、
前記文字表示部は、縦長の文字枠と横長の文字枠で異なる表示比率を適用する3次元地図表示システム。
【請求項6】
請求項1〜5いずれか記載の3次元地図表示システムであって、
前記文字表示部は、
前記文字の表示対象となるべき地物および背景の輪郭内を前記文字の表示領域とし、
該表示領域の最大幅が、前記文字枠の幅よりも大きい場合に、当該文字を表示する3次元地図表示システム。
【請求項7】
請求項1〜5いずれか記載の3次元地図表示システムであって、
前記文字表示部は、
前記地図内での前記文字の表示位置を複数の方法で設定し、
前記設定された複数の表示位置のうち、該文字と他の文字の文字枠同士の重なりが少ない表示位置を選択する3次元地図表示システム。
【請求項8】
請求項1〜7いずれか記載の3次元地図表示システムであって、
前記地図データベースは、地図中の交差点について、該交差点への進入方向と対応づけて、該交差点の各出口方向の行き先を格納した行き先データベースを有しており、
前記文字表示部は、前記透視投影法における視線ベクトルに基づいて前記進入方向を特定し、前記行き先データベースを用いて、前記行き先を表す文字を表示する3次元地図表示システム。
【請求項9】
地図データベースを備えたコンピュータによって、地物を3次元的に表現した3次元地図を描画する3次元地図表示方法であって,
前記地図データベースは、
前記地物を透視投影法で3次元的に描画して前記3次元地図の背景画像を生成するための3次元ポリゴンデータと,前記背景画像中に所定の名称を表示するための文字列および表示位置を特定する文字データとを格納するデータベースであり、
前記コンピュータは、
前記3次元ポリゴンデータを用いて地物を透視投影法で3次元的に描画して前記背景画像を生成する背景描画ステップと、
前記文字データを用いて前記背景画像中に前記所定の名称を表す文字を表示する文字表示ステップとを実行し、
前記文字表示ステップでは、
各名称の文字列について、該文字列を包含する文字枠が前記透視投影法における視点からの奥行きに応じて該透視投影法における表示比率とは異なる表示比率で小さくなるよう、該文字列の文字サイズおよび文字間隔の少なくとも一方を変化させて、前記文字の表示を行う3次元地図表示方法。
【請求項10】
地図データベースを備えたコンピュータによって、地物を3次元的に表現した3次元地図を描画するためのコンピュータプログラムであって,
前記地図データベースは、
前記地物を透視投影法で3次元的に描画して前記3次元地図の背景画像を生成するための3次元ポリゴンデータと,前記背景画像中に所定の名称を表示するための文字列および表示位置を特定する文字データとを格納するデータベースであり、
前記プログラムは、
前記3次元ポリゴンデータを用いて地物を透視投影法で3次元的に描画して前記背景画像を生成する背景描画機能と、
前記文字データを用いて前記背景画像中に前記所定の名称を表す文字を表示する文字表示機能とを実行させるプログラムであり、
前記文字表示機能は、
各名称の文字列について、該文字列を包含する文字枠が前記透視投影法における視点からの奥行きに応じて該透視投影法における表示比率とは異なる表示比率で小さくなるよう、該文字列の文字サイズおよび文字間隔の少なくとも一方を変化させて、前記文字の表示を行う機能であるコンピュータプログラム。
【請求項1】
地物を3次元的に表現した3次元地図を描画する3次元地図表示システムであって,
前記地物を透視投影法で3次元的に描画して前記3次元地図の背景画像を生成するための3次元ポリゴンデータと,前記背景画像中に所定の名称を表示するための文字列および表示位置を特定する文字データとを格納する地図データベースと、
前記3次元ポリゴンデータを用いて地物を透視投影法で3次元的に描画して前記背景画像を生成する背景描画部と、
前記文字データを用いて前記背景画像中に前記所定の名称を表す文字を表示する文字表示部とを備え、
前記文字表示部は、
各名称の文字列について、該文字列を包含する文字枠が前記透視投影法における視点からの奥行きに応じて該透視投影法における表示比率とは異なる表示比率で小さくなるよう、該文字列の文字サイズおよび文字間隔の少なくとも一方を変化させて、前記文字の表示を行う3次元地図表示システム。
【請求項2】
請求項1記載の3次元地図表示システムであって、
前記文字表示部は、奥行きが所定値以下の範囲では前記透視投影法よりも緩やかな表示比率で前記文字枠の大きさを変化させる3次元地図表示システム。
【請求項3】
請求項1または2記載の3次元地図表示システムであって、
前記文字表示部は、前記視点位置から所定の奥行き範囲内に位置する文字を表示対象とする3次元地図表示システム。
【請求項4】
請求項1〜3いずれか記載の3次元地図表示システムであって、
前記文字表示部は、前記文字サイズおよび文字間隔の少なくとも一方について、予め設定された制限値の範囲内で変化させる3次元地図表示システム。
【請求項5】
請求項1〜4いずれか記載の3次元地図表示システムであって、
前記文字表示部は、縦長の文字枠と横長の文字枠で異なる表示比率を適用する3次元地図表示システム。
【請求項6】
請求項1〜5いずれか記載の3次元地図表示システムであって、
前記文字表示部は、
前記文字の表示対象となるべき地物および背景の輪郭内を前記文字の表示領域とし、
該表示領域の最大幅が、前記文字枠の幅よりも大きい場合に、当該文字を表示する3次元地図表示システム。
【請求項7】
請求項1〜5いずれか記載の3次元地図表示システムであって、
前記文字表示部は、
前記地図内での前記文字の表示位置を複数の方法で設定し、
前記設定された複数の表示位置のうち、該文字と他の文字の文字枠同士の重なりが少ない表示位置を選択する3次元地図表示システム。
【請求項8】
請求項1〜7いずれか記載の3次元地図表示システムであって、
前記地図データベースは、地図中の交差点について、該交差点への進入方向と対応づけて、該交差点の各出口方向の行き先を格納した行き先データベースを有しており、
前記文字表示部は、前記透視投影法における視線ベクトルに基づいて前記進入方向を特定し、前記行き先データベースを用いて、前記行き先を表す文字を表示する3次元地図表示システム。
【請求項9】
地図データベースを備えたコンピュータによって、地物を3次元的に表現した3次元地図を描画する3次元地図表示方法であって,
前記地図データベースは、
前記地物を透視投影法で3次元的に描画して前記3次元地図の背景画像を生成するための3次元ポリゴンデータと,前記背景画像中に所定の名称を表示するための文字列および表示位置を特定する文字データとを格納するデータベースであり、
前記コンピュータは、
前記3次元ポリゴンデータを用いて地物を透視投影法で3次元的に描画して前記背景画像を生成する背景描画ステップと、
前記文字データを用いて前記背景画像中に前記所定の名称を表す文字を表示する文字表示ステップとを実行し、
前記文字表示ステップでは、
各名称の文字列について、該文字列を包含する文字枠が前記透視投影法における視点からの奥行きに応じて該透視投影法における表示比率とは異なる表示比率で小さくなるよう、該文字列の文字サイズおよび文字間隔の少なくとも一方を変化させて、前記文字の表示を行う3次元地図表示方法。
【請求項10】
地図データベースを備えたコンピュータによって、地物を3次元的に表現した3次元地図を描画するためのコンピュータプログラムであって,
前記地図データベースは、
前記地物を透視投影法で3次元的に描画して前記3次元地図の背景画像を生成するための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】
【公開番号】特開2012−73397(P2012−73397A)
【公開日】平成24年4月12日(2012.4.12)
【国際特許分類】
【出願番号】特願2010−217906(P2010−217906)
【出願日】平成22年9月28日(2010.9.28)
【出願人】(502002186)株式会社ジオ技術研究所 (23)
【Fターム(参考)】
【公開日】平成24年4月12日(2012.4.12)
【国際特許分類】
【出願日】平成22年9月28日(2010.9.28)
【出願人】(502002186)株式会社ジオ技術研究所 (23)
【Fターム(参考)】
[ Back to top ]