(57)【要約】【課題】３次元地図を高速かつ高品質に表示する次元地図表示装置を提供する。【解決手段】表示画面に表示される地形ポリゴンの陰面有無を予め判定する陰面有無判定手段と、地図データを地形ポリゴン毎に分割する地図データ分割手段と、分割されたデータを格納する地図データ記憶手段と、文字列の描画順序及び表示位置を視点位置からの距離により描画順序および描画位置を決定する文字列処理手段と、格納された地図データ及び文字列を順次描画する描画手段を備え、所定視点から地形面を俯瞰した３次元地図を表示する。【選択図】図１
2006221199.tif 000002
【特許請求の範囲】
【請求項１】
標高データと地図データを備え、所定視点から俯瞰する３次元地形図を標高データから生成し、３次元地形図に地図データを重ねて表示する３次元地図表示装置において、
標高データの各頂点から地形面を構成する地形メッシュを演算する地形メッシュ演算手段と、
各々の地形メッシュに一致するよう地図データを分割する地図データ分割手段と、
地形メッシュに重ねて分割された地図データを描画する描画手段とを備えることを特徴とする３次元地図表示装置。
【請求項２】
請求項１に記載の３次元地図表示装置において、
表示範囲内において陰面が存在するか判定する陰面有無判定手段と、
陰面の有無に応じて地図データの保持方法を変更する地図データ記憶手段とを備えることを特徴とする３次元地図表示装置。
【請求項３】
請求項２に記載の３次元地図表示装置において、
陰面有無判定手段で陰面が存在すると判定されたとき、地図データ分割手段で分割した地図データを地図データ記憶手段に蓄えることを特徴とする３次元地図表示装置。
【請求項４】
請求項１に記載の３次元地図表示装置において、
表示範囲内において陰面が存在するか判定する陰面有無判定手段と、
陰面有無判定手段で陰面が存在すると判定されたとき、地図データ分割手段で地図データを地形メッシュ単位に分割することを特徴とする３次元地図表示装置。
【請求項５】
請求項１に記載の３次元地図表示装置において、
視点高さにより地形メッシュのサイズを決定する地形メッシュサイズ演算手段を持つことを特徴とする３次元地図表示装置。
【請求項６】
請求項１に記載の３次元地図表示装置において、
視点から地図を見下ろす俯角により地形メッシュのサイズを決定する地形メッシュサイズ演算手段を備えることを特徴とする３次元地図表示装置。
【請求項７】
請求項１に記載の３次元地図表示装置において、
視点高さと俯角をパラメータとし地形メッシュのサイズを決定する地形メッシュサイズ演算手段を備えることを特徴とする３次元地図表示装置。
【請求項８】
請求項１に記載の３次元地図表示装置において、
地形面を所定標高値の平面と仮定し、この仮定した仮想地形面に対し任意視点位置から俯瞰したとき、投影面に投影される該仮想地形面の可視領域を演算する可視領域演算手段と、
可視領域演算手段によって演算した該可視領域内に含まれる実際の地形面の標高データにおいて最も低い標高値を求める最低標高抽出手段と、
最低標高値と所定標高値との差から可視領域を拡大する可視領域補正手段を持つことを特徴とする３次元地図表示装置。
【請求項９】
請求項１に記載の３次元地図表示装置において、
視点位置に最も近い地形メッシュ列における視点近傍側頂点列を投影面に投影変換したとき、該視点近傍側頂点列が投影面内の表示画面領域内に存在するか判定する表示地形判定手段と、
該視点近傍側頂点列が表示画面領域内に存在するとき該視点近傍側頂点列より表示画面下方向の領域を視点位置標高に対応する地形色で描画する表示地形補正手段を備えることを特徴とする３次元地図表示装置。
【請求項１０】
標高データと地図データを備え、所定視点から俯瞰する３次元地形図を標高データから生成し、３次元地形図に地図データを重ねて表示する３次元地図表示装置において、
標高データの各頂点から地形面を構成する地形メッシュを演算する地形メッシュ演算手段と、
３次元地形図に重ねて表示する地図データにおける文字列がどの地形メッシュに含まれるか判定する文字列位置判定手段と、
描画すべき地形メッシュより視点遠方側に所定距離離れた地形メッシュに含まれる文字列を選択し、描画すべき地形メッシュに選択した文字列を重ねて描画する文字列位置補正手段とを備えることを特徴とする３次元地図表示装置。
【請求項１１】
標高データと地図データを備え、所定視点から俯瞰する３次元地形図を標高データから生成し、３次元地形図に地図データを重ねて表示する３次元地図表示装置において、
標高データの各頂点から地形面を構成する地形メッシュを演算する地形メッシュ演算手段と、
３次元地形図に重ねて表示する地図データにおける文字列がどの地形メッシュに含まれるか判定する文字列位置判定手段と、
文字列が含まれる地形メッシュより視点近傍側に所定距離離れた地形メッシュを選択し、選択された地形メッシュに重ねて文字列を描画する文字列位置補正手段とを備えることを特徴とする３次元地図表示装置。
【請求項１２】
標高データと地図データを備え、所定視点から俯瞰する３次元地形図を標高データから生成し、３次元地形図に地図データを重ねて表示する３次元地図表示装置において、
標高データの各頂点から地形面を構成する地形メッシュを演算する地形メッシュ演算手段と、
３次元地形図に重ねて表示する文字列の描画位置を演算する文字列位置演算手段と、
文字列の描画位置を所定距離移動する文字列描画位置補正手段を備えることを特徴とする３次元地図表示装置。
【請求項１３】
請求項１２に記載の３次元地図表示装置において、
文字列描画位置補正手段は文字列位置を視点より遠方に移動することを特徴とする３次元地図表示装置。
【請求項１４】
請求項１２に記載の３次元地図表示装置において、
文字列描画位置補正手段は文字列位置を表示画面上で画面上の方向に文字列を移動することを特徴とする３次元地図表示装置。
【請求項１５】
請求項１４に記載の３次元地図表示装置において、
文字列描画位置補正手段は視点から文字列までの距離に応じ文字列の移動量を演算することを特徴とする３次元地図表示装置。
【請求項１６】
請求項１に記載の３次元地図表示装置において、
描画命令を蓄える命令バッファと命令バッファを解釈し描画を実行する描画プロセッサを備え、
分割された地図データを描画する描画命令と分岐命令を組で命令バッファに蓄える命令バッファ書込手段と、
分岐命令の分岐先を変更する分岐アドレス修正手段とを備えたことを特徴とする３次元地図表示装置。
【請求項１７】
請求項１６に記載の３次元地形表示装置において、
分岐アドレス修正手段で設定する分岐先は、同組の描画命令が描画する地形メッシュに一致する地図データの描画命令であることを特徴とする３次元地図表示装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、３次元地形図に地図を重ねディスプレイなどに表示する３次元地図表示装置に関する。
【背景技術】
【０００２】
従来、地図表示装置ではＣＤ−ＲＯＭやＤＶＤ−ＲＯＭ等の記憶媒体に記憶されたデジタル地図データを読み出し、構造物や道路，地名等を座標変換することで任意縮尺の平面図として描画し、ディスプレイ等の表示装置に地図を表示していた。さらに特開平８−２９２７２０号に記載されるように、平面地図を任意の高さの視点位置から俯瞰し、該平面地図と視点との間に設けた投影面に投影される俯瞰図を表示する疑似３次元表示もある。疑似３次元表示の特徴は、視点近傍の詳細地図情報及び視点遠方の概略情報を同一画面上で把握できることである。さらに、これらの平面地図や疑似３次元表示された地図に、等高線や等高に応じた色を描画することにより地形の高低差を表現する方法もある。
【０００３】
疑似３次元地図表示では２次元の地図データをもとに全ての平面の高さが等しいと仮定し座標変換し描画する。従って、山や谷の起伏といった立体的な形状等を表現することは困難であった。さらに、平面地図や疑似３次元地図に等高線や等高に応じた色を描画する方法においても、表示される地図画面は実際の地形とはかけ離れ、より実際的な俯瞰図を表示することは困難であった。
【０００４】
この課題を解決する方法として、標高データが記録された頂点座標を読み出し、各頂点を結ぶことにより形成される地形メッシュを最小単位として３次元モデルを作成し、そこに上記２次元的な地図データを重ねることで３次元的な地形表示を得る３次元地図表示がある。３次元地図表示においては、俯瞰したい地点を含むように視点位置を設定し、投影面、即ちディスプレイ等の表示画面に３次元モデルで構成される地形形状や、それに重なる地図を投影するように動作する。
【特許文献１】特開平８−２９２７２０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
３次元地図表示では、設定された視点位置から３次元的な地形形状を俯瞰するように動作する。従って特に山間部においては視点位置と反対側の山の斜面や、手前の山等で隠される地形面、即ち陰面が発生し、その陰面を消去する陰面消去が必須になる。
【０００６】
陰面消去方法には、表示画面の各画素に対し奥行き情報を持ち、各画素に対する描画の際に奥行き情報を判定し、手前側であれば描画するＺバッファ法，３次元地形図を構成する地形メッシュや地図データを奥行き順に並び替え、視点遠方から手前方向に向かい順に描画するＺソート法、及び３次元地形図を構成する地形メッシュや地図データを視点遠方から手前方向に向かい順に選択し描画するペインターアルゴリズムなどの方法がある。
【０００７】
ここで、Ｚバッファは各画素単位に奥行き判定を実行するための比較器を備えた描画プロセッサ、ないし奥行き判定しながら各画素を描画するレンダリングソフトが必要となる。従って、３次元地図表示における陰面消去が画素単位の描画に波及し、一般的に使用される２次元な平面を描画する描画プロセッサを用いて実現することは困難である。そこで２次元平面を描画する描画プロセッサにおいても実現可能なＺソート法、ないしペインターアルゴリズムを陰面消去に使用するケースに焦点を絞る。Ｚソート法、及びペインターアルゴリズムを用い３次元地図表示を実施したとき、陰面消去において以下の課題が発生する。
【０００８】
第１の課題は、地図データに含まれる道路データや水系や緑地帯を表現する背景データは、標高データと独立に生成される。従って、地図データを構成する折れ線や面が地形メッシュと交わる場所において頂点が存在するという保証はない。このため、地形メッシュ及び地図データを視野遠方から順にソートないし選択し、描画したとき循環的な重なりが発生し、陰面消去が完全に実施できないという課題がある。
【０００９】
第２の課題は、Ｚソート法において実施する地形データ及び地図データのソーティング、またはペインターアルゴリズムにおいて実施する地形データ及び地図データを奥から順に選択する処理の処理負荷が大きく、３次元地図表示を完了するまでの時間を増大させてしまうという課題がある。さらに地形メッシュの大きさを固定にしてしまうと、視点高さを高くしたとき描画しなければならない地形メッシュ数が増大し、処理負荷が増加してしまうという課題がある。
【００１０】
第３の課題は、名称等の文字列や記号，アイコンなどは、地図データにおいてそれらを描画する位置を指定しているのみで、その文字列や記号，アイコンを表示する面積について考慮していない。従って、上記陰面消去処理を実行したとき、文字列や記号，アイコンが正しく陰面消去されず、地形メッシュや地図データにより隠されてしまうという課題がある。
【００１１】
第４の課題は、３次元地図を表示したとき、視点遠方の画面端や視点近傍において描画が完全にされない領域が発生し、表示品質を劣化させるという課題である。これは、疑似３次元地図表示では全ての平面の標高が等しいとしてディスプレイに表示する地図領域を演算すればよいが、３次元地図表示では標高値が与えられるため、単純に表示領域を決定することは困難であるという点に起因する。
本発明は上記事情に基づいてなされたものであり、描画処理負荷を低減し、かつ３次元地図の表示品質を向上することを目的とする。
【課題を解決するための手段】
【００１２】
上記課題を解決するため、以下の手段を用いる。
【００１３】
第１の課題を解決する手段として、地形メッシュ単位で地図データを分割する手段を用いる。一方で、地形メッシュ単位に地図データを分割する手段は、完全な陰面消去を実施できるが処理負荷が重い。そこで表示する３次元地図内に陰面が存在するか判定する手段を用い、陰面が存在すると判定したときには地形メッシュ単位に地図データを分割し、陰面が存在しないと判定したときには地形メッシュ単位での地図データ分割をスキップするように動作する。
【００１４】
第２の課題を解決する手段として、地形メッシュ毎に分割した地図データを描画する描画命令と分岐命令をセットで格納する手段を用いる。さらに、広範囲の領域を見渡せる視点高さや俯角の場合、地形メッシュのサイズを変化させる手段を用いる。
【００１５】
第３の課題を解決する手段として、文字列が含まれる地形メッシュの視点近傍側に隣接する地形メッシュを選択し、この選択された地形メッシュに重ねて文字列を描画する手段を用いる。さらに、文字列が含まれる地形メッシュ位置により表示画面上で、画面の上方向に文字列の描画位置を変更する手段を用いる。
【００１６】
第４の課題を解決する手段として、全ての地形の標高が等しいとしてディスプレイに表示する地図領域を演算し、地図領域内の最低標高値と視点位置の標高値の差により３次元地図表示に用いる地形メッシュを拡大する手段を用いる。さらに、表示画面の画面下に地形の描画されない領域があるか判定し、地形の描画されない領域があればその領域を視点位置標高に対する地形色で塗り潰す手段を用いる。
【発明の効果】
【００１７】
本発明の３次元地図表示装置では上記手段を適用することで、地形図に重ねて表示する地図データ、即ち道路データ，背景データ，文字・記号データ等の陰面消去を特殊なハードウェアなしに、完全かつ高速に処理できるようになる。さらに地形面のポリゴン抜けがなくなるように動作するため、表示品質を向上することができる。
【発明を実施するための最良の形態】
【００１８】
以下図面を参照し、３次元地図表示装置をナビゲーション装置に適用した一実施例を説明する。
【００１９】
図１に本発明の３次元地図表示の表示例を示す。地形及び道路，文字列などの地図データは、地形面を構成する地形メッシュ２００１単位に分割し、地形メッシュ及び分割された地図データを視点遠方から視点近傍に向かい順に描画することで３次元地図を出力装置２に表示する。
【００２０】
図２にナビゲーション装置の構成を示す。以下、ナビゲーション装置の各構成ユニットについて詳細を説明する。
【００２１】
演算処理部１は５〜８の各種センサから出力されるセンサ情報Ｓ５〜Ｓ８を基に現在位置を検出し、得られた現在位置情報から地図表示に必要な地図データを記憶手段３から読み込み、地図データをグラフィックス展開し、地図を出力装置２へ表示したり、ユーザから指示された目的地と現在地を結ぶ最適な経路を選択し、出力装置２上の地図に重ねて表示することでユーザを目的地に誘導するといった様々な処理を行う中心的なユニットである。
【００２２】
出力装置２は、演算処理部１で生成されたグラフィックス情報を表示するユニットで、ＣＲＴや液晶ディスプレイで構成される。また演算処理部１と出力装置２の間の信号Ｓ１は、ＲＧＢ信号やＮＴＳＣ（National Television SystemCommittee）信号で接続するのが一般的である。
【００２３】
記憶手段３は、ＣＤ−ＲＯＭやＤＶＤ−ＲＯＭ，ＩＣカードといった大容量記憶媒体で構成され、地図表示で必要とする地図データ，標高データなどを格納する。
【００２４】
入力装置４は、ユーザからの指示を受け付けるユニットで、スクロールキー，縮尺変更キーなどのハードスイッチ，ジョイスティック，ディスプレイ上に貼られたタッチパネルなどで構成される。
【００２５】
ナビゲーション装置で位置を検出するために使用するセンサは、車輪の円周と計測される車輪の回転数の積から距離を測定し、さらに対となる車輪の回転数の差から移動体が曲がった角度を計測する車輪速センサ５，地球が保持している磁場を検知し移動体が向いている方角を検出する地磁気センサ６，光ファイバジャイロや振動ジャイロといった移動体が回転した角度を検出するジャイロ７，ＧＰＳ衛星からの信号を受信し移動体とＧＰＳ衛星間の距離と距離の変化率を３個以上の衛星に対して測定することで移動体の現在位置，進行速度及び進行方位を測定するＧＰＳ受信装置８で構成される。さらに、ＧＰＳ受信装置８ではＧＰＳ衛星からの信号を解析することで、時刻情報や日付情報を得ることができる。
【００２６】
また、車両の様々な情報、例えばドアの開閉情報，点灯しているライトの種類と状況，エンジンの状況や故障診断結果などを受ける車内ＬＡＮ装置９を備える。
【００２７】
図３は演算処理部１のハードウェア構成について説明した図である。
【００２８】
以下、各構成要素について説明する。演算処理部１は、図中２１〜３１の各デバイス間をバスで接続し構成する。各構成要素は、数値演算及び各デバイスを制御するといった様々な処理を実行するＣＰＵ２１，地図や検索データ，演算データを格納するＲＡＭ２２，処理プログラムやデータを格納するＲＯＭ２３，高速にメモリとメモリ間及びメモリと各デバイス間のデータ転送を実行するＤＭＡ（ Direct Memory Access ）２４，ユニファイドメモリ２６に格納された描画命令や分岐命令を受け同ユニファイドメモリ内のフレームメモリ空間に画素情報に高速に展開するグラフィックス描画と表示制御を実行する描画プロセッサ２５，描画結果や描画命令等を蓄えるユニファイドメモリ２６，各色のパレットＩＤで構成されるイメージデータをＲＧＢの輝度情報信号に変換するカラーパレット２７，アナログ信号をデジタル信号に変換するＡ／Ｄ変換器２８，シリアル信号をバスに同期したパラレル信号に変換するＳＣＩ２９，パラレル信号と同期をとりバス上にのせるＰＩＯ３０，パルス信号を積分するカウンター３１で構成される。
図４は演算処理部１の機能構成について説明した図である。以下各構成要素について詳細を説明する。
【００２９】
現在位置演算手段４２は、車輪速センサ５で計測される距離パルスデータＳ５、及びジャイロ７で計測される角加速度データＳ７を各々積分した結果得られる距離データ及び角度データを用い、そのデータを時間軸で積分していくことにより、初期位置（Ｘ，Ｙ）から移動体走行後の位置（Ｘ'，Ｙ'）を演算する処理を行う。ここで、移動体の回転した角度と進む方位の関係を一致させるため、地磁気センサ６から得られる方位データＳ６と、ジャイロ７から得られる角加速度データＳ７を積分した角度データを１対１の関係にマッピングし、移動体が進行している方向の絶対方位を補正する。また上述したセンサから得られたデータを積分してゆくとセンサの誤差が蓄積するため、ある時間周期でＧＰＳ受信装置８から得られた位置データＳ８をもとに蓄積した誤差をキャンセルするという処理を施し現在位置情報を出力する。
【００３０】
上記現在位置情報にはセンサの誤差が含まれているため、さらに位置精度を高めることを目的に、マップマッチ手段４３を行う。これは、記憶手段３から現在地周辺の地図に含まれる道路データを地図データ読込手段４４によって読み込み、現在位置演算手段４２から得られた走行軌跡形状と道路形状を互いに照らし合わせ、形状の相関が最も高い道路に現在地を合わせ込むという処理である。マップマッチ処理を施すことで現在地は多くの場合走行道路と一致するようになり、精度よく現在位置情報を出力することができる。
【００３１】
ユーザ操作解析手段４１は、ユーザからの要求を入力装置４で受け、その要求内容を解析し、対応する処理を実行するよう各ユニットを制御する。
【００３２】
地図表示手段４５は、記憶手段３から地図データ読込手段４４が読み出す地図データと標高データを用い、視点位置から所定俯角かつ所定縮尺で地形を見下ろした３次元地図を描画する描画データを転送するように動作する。なお視点位置は、地図上の現在位置または表示対象となる地点から視線方向と逆方向に所定距離離れた位置に設定するとよい。
【００３３】
メニュー表示手段４６は、ユーザインタフェースとなるボタンやメニューリストなどを描画し、表示処理手段４７に描画データを転送するように動作する。
【００３４】
表示処理手段４７は、前記説明した地図表示手段４５，メニュー表示手段４６からの描画データに基づき、ユニファイドメモリ２６内のフレームメモリに地図とメニュー画面を表現する線や面，イメージ，文字を画素展開する。
【００３５】
以下、３次元地図を表示するための描画データを生成する地図表示手段４５につき詳細を説明する。
【００３６】
図５は地図表示手段４５の機能構成について説明した図である。
【００３７】
地図データ要求手段５０は、地図表示すべき領域に含まれる地図データ、即ち道路の属性とその形状で構成される道路データ，建物や緑地帯，河川等を表現するポリゴンの属性とその形状で構成される背景データ，地名や施設名称等の文字記号コードとそれらが位置する点の座標データで構成される文字記号データ、及び地図表示すべき領域においてｘ軸，ｙ軸方向に所定間隔で分割した頂点の標高値で構成される標高データを記憶手段３から読み出す。
【００３８】
地形メッシュ演算手段５１は、視点位置と俯角より表示画面に表示する地図の可視領域を演算し、その可視領域内に存在する標高データから地形面を表現する矩形形状の地形メッシュを生成する。
【００３９】
座標変換手段５２は、地図データ要求手段５０で読み出した地図データ及び標高データを視線方向がｙ軸に一致し、かつ視点位置が原点になるように座標変換する。
【００４０】
陰面有無判定手段５３は、地形メッシュ演算手段５１で生成した地形メッシュを投影変換手段５７で投影変換し、その投影変換した結果から陰面になる地形メッシュが存在するか判定する。陰面となる地形メッシュが存在すれば地図データ分割手段５４へ、存在しなければ地図データ記憶手段５６に処理が遷移するように動作する。
【００４１】
地図データ分割手段５４は、地形メッシュ単位に地図データに含まれる道路データ、及び背景データを分割する。
【００４２】
文字列処理手段５５は、名称等の文字列及び記号を描画するタイミングと表示画面上での描画位置の補正を実行する。
【００４３】
地図データ記憶手段５６は、陰面有無判定手段５３で陰面が存在すると判定された場合は分割された地図データを、陰面有無判定手段５３で陰面が存在しないと判定された場合は読み出した地図データを投影変換し、描画命令と分岐命令を組にして格納する。
【００４４】
投影変換手段５７は、図６に記載した視点位置１００５から任意俯角で、視点位置１００５から規定距離離れた位置に存在する投射面（表示画面）に前記地図データを構成するベクトルデータやポイントデータ及び地形メッシュを構成する頂点座標を投影変換する。
【００４５】
描画手段５８は、任意位置の地形メッシュ及び、その地形メッシュに重ねて描画する地図データを選択し描画する。これら処理を視点遠方から視点近傍の順に実施することで地形図及び地図の陰面消去を実現する。
【００４６】
次に、図６を用いて座標変換手段５２の詳細を説明する。
【００４７】
座標変換手段５２は、地図データ要求手段５０において読み出した地図データ及び標高データを、図６に記載した視点位置１００５が原点（０，０）で視線方向１００６がｙ座標軸に一致し、かつ地図データと標高データの縮尺が一致するように座標変換する。ここで、視点位置は自車位置から視線方向と逆方向に所定距離離れた地点で、かつ自車位置より所定高さだけ高い位置に設定するとよい。さらに視線方向は、自車両の進行方向に設定するとよい。これにより、地形メッシュ２００１と地図データが同一座標系となり、かつ各地形メッシュを構成する矩形がｘ軸及びｙ軸に平行になるため、後述する地図データを地形ポリゴン毎に分割する地図データ分割手段５４を簡略化することができる。
【００４８】
次に、図７と図８を用い地形メッシュ演算手段５１の詳細を説明する。
【００４９】
可視領域演算手段７０は、図７に記載した視点位置１００５を原点とし、視線方向１００６を上（ｙ軸）とする座標系で、自車位置又は表示対象となる地点における標高と、表示対象の全て地点の標高が等しいと仮定し、視点位置から視線方向に見下ろした場合に、表示画面に投影される２次元地図の範囲（可視領域）１００４を演算する。
【００５０】
次に、地形メッシュサイズ演算７１では地形面を構成する地形メッシュのサイズを決定するが、任意視点高さから俯瞰した３次元地図を表示する装置において視点位置が高くなると可視領域１００４が広くなる。これにより、地形メッシュサイズｄｘ，ｄｙを固定とすると地形メッシュ数が２乗オーダーで増加し、処理負荷が増す。そこで、視点高さと俯角により地形メッシュサイズｄｘ，ｄｙを決定する処理を用いる。例えば、基準となる視点高さと設定された視点高さとの比率を、基準となる地形メッシュサイズｄｘ，ｄｙに乗算しメッシュサイズを決定するとよい。さらに、各視点高さに対応する地形メッシュサイズｄｘ，ｄｙをテーブルとして備え、このテーブルから任意視点高さに対応する地形メッシュサイズｄｘ，ｄｙを決定してもよい。ここでは視点高さをパラメータとする例を述べたが、俯角をパラメータとして同様の処理を行い地形メッシュのサイズを決定することもできる。また、視点高さと俯角の関係から地形メッシュのサイズを決定してもよい。これにより、描画する地形メッシュ数が著しく増加しないように制御され、可視領域が拡大した場合の処理負荷を低減することができる。
【００５１】
地形メッシュ生成７２は、地形メッシュサイズ演算７１で得られた地形メッシュサイズｄｘ，ｄｙ毎に可視領域１００４を分割し、地形メッシュ２００１を構成する各頂点２００２の座標値を演算する。本実施例では地形メッシュ形状を矩形としているが、地形メッシュ形状を三角形としてもよい。
【００５２】
最低標高抽出７３では、視点位置１００５の標高が高く、かつ標高の低い地形領域を見下ろす場合に発生する地形ポリゴン抜けを防ぐために実施され、標高データにおける可視領域１００４内に含まれる標高値のなかで最も低い標高値を抽出する。
【００５３】
次に、可視領域補正７４は視点位置の標高値と最低標高抽出７３で抽出された標高値の差分を演算し、この差分値をパラメータとして図７に示すように視線方向と垂直方向に左右に右追加地形メッシュ２００３，左追加地形メッシュ２００４を追加する。追加する地形メッシュの演算方法には、前記差分値の所定高さ毎に追加するメッシュの数を設定する方法がある。これは例えば差分値が１００ｍ単位で地形メッシュを左右に１メッシュずつ追加するという方法である。なお、視点位置標高の変わりに現在位置標高を用いて処理を行ってもよい。
【００５４】
上記処理により生成された地形メッシュの各頂点２００２は２次元平面上の頂点であり、３次元地図表示を行うためには各頂点における標高値を得る必要がある。そこで、標高値演算７５では地図データ要求手段５０により読み出した標高データから、地形メッシュを構成する頂点の標高値を演算する。ここで、標高データに記録された頂点座標と地形メッシュを構成する頂点座標は一致しない。そこで、例えば図６のように頂点２００２を取り囲む頂点２０４０，２０４１，２０４２，２０４３の標高データを読み出し、頂点２００２の標高値を演算する。ここで、標高２０４０の座標を（ｘ１，ｙ１，ｚ１）、標高２０４１の座標を(ｘ２，ｙ１，ｚ２)、標高２０４２の座標を(ｘ２，ｙ２，ｚ３)、標高２０４３の座標を（ｘ１，ｙ２，ｚ４）とすると、頂点２００２の座標を（ｘｐ，ｙｐ）に対する標高値ｚｐは数１，数２，数３を演算することで得られる。
【００５５】
Ｚａ＝(ｙｐ−ｙ１)×(Ｚ４−Ｚ１)／(ｙ２−ｙ１)＋Ｚ１…（数１）
【００５６】
Ｚｂ＝(ｙｐ−ｙ２)×(Ｚ３−Ｚ２)／(ｙ２−ｙ１)＋Ｚ２…（数２）
【００５７】
Ｚｐ＝(ｘｐ−ｘ１)×(Ｚｂ−Ｚａ)／(ｘ２−ｘ１)＋Ｚａ…（数３）
次に、図９を用いて陰面有無判定手段５３の詳細を説明する。
【００５８】
表示する地図に陰面となる地形が存在しない場合、地図データを地形メッシュ単位に分割する処理を省略し、全ての地形面を描画した後、地図データを地形上に重ねて描画しても３次元地図が陰面により隠されるないしは、陰面が表示されるという現象は発生しない。また３次元地図表示において、山間部では陰面となる地形メッシュが発生するが、平野部では陰面となる地形メッシュの発生する確率は極端に低下するという特性を有する。さらに、大都市などの地図データ量が多い地域は平野部に集中するという特性がある。
【００５９】
そこで、陰面有無判定手段５３では、投影変換手段５７により可視領域内の地形メッシュを構成する全ての頂点を投影変換し、ある頂点２０１０と視点遠方側に隣接する頂点２０１１の投影面上でのｙ軸（投影面上方向）座標の大小関係を比較する。この比較結果が図９における陰面メッシュ例ｂ）に示すように、投影面上で頂点２０１０より視点遠方側の頂点２０１１のｙ座標が小さければ、その２頂点を含む地形メッシュは陰面であると判断する。その判定結果を基に、陰面となる地形メッシュが１つでも存在すれば地図データ分割手段５４へ、存在しなければ地図データ記憶手段５６に処理が遷移する。
【００６０】
これにより、陰面となる地形メッシュが存在する場合のみ地図データを地形メッシュ単位に分割するため、平野部での地図データ分割処理に要する処理負荷を低減することができる。
【００６１】
次に、図１０を用い地図データ分割手段５４の詳細を説明する。
【００６２】
地図データ取得手段８０は、地図フォーマットに従い同一属性で連続する折れ線及び面データを構成する頂点データを取得する。地形メッシュ位置演算手段８１では、この取得した頂点データのｙ座標（視線方向）の最大値と最小値を抽出し、この２つのｙ座標を含むカラム位置（ｙ軸方向の地形メッシュ位置）を演算する。この処理は、既に地形メッシュ及び地図データを、視線方向をｙ軸方向とする座標系に変換されているため、地形メッシュサイズでｙ座標を割れば容易に求まる。
【００６３】
カラム判定手段８２では、頂点データの最大値に対するカラム位置と、最小値に対するカラム位置が同一カラム位置か判定する。２つのカラム位置が同一である場合は、複数のカラム領域に頂点データがまたがらないため、領域分割する必要はないが、２つのカラム位置が異なる場合、頂点データが存在するカラム毎にデータを分割する必要がある。そのため補間点生成手段８３により、頂点データと各カラムの境界との交点を演算し補間点を生成する。例えば、折れ線３００１の場合、ｙ座標の最大値はカラム４，最小値はカラム２に含まれる。そのため、折れ線３００１はカラム２，カラム３，カラム４に含まれる頂点データ毎に分割する。よって、各カラムの境界と折れ線３００１の交点を演算することで３つの頂点データＡ，Ｂ，Ｃに分割する。また面データ３００３の場合、ｙ座標の最大値はカラム３，最小値はカラム１に含まれる。そのため、面データ３００３はカラム１，カラム２，カラム３に含まれる領域毎に分割する。よって、各カラムの境界と面データ３００３の交点を演算し、３つの面データＥ，Ｆ，Ｇをそれぞれ構成する頂点データに分割する。このように、全ての地図データをカラム毎に分割された頂点データに変換する。よって、地形メッシュと地形データの管理領域が同一となるため、循環的な重なりが発生することがなく、高品質な３次元地図を表示することができる。
【００６４】
次に、図１１，図１２を用い文字列処理手段５５を説明する。
【００６５】
図１１に文字列の表示例を示す。文字列や記号の位置を実際の地形に忠実に表現するため、文字列，記号の一部が手前側物体で隠される場合は、物体との重なり部分のみ陰面消去する。そのため、文字列の陰面消去も、道路等のベクトルデータと同様に陰面消去処理を実施する。しかし、ベクトルデータと違い文字列表示では矩形領域を占有するため、文字列の存在する地形メッシュと文字列の矩形領域が一致しないため、文字列４００１が地形メッシュ４００２によって隠されてしまう。このような重なりで不当に消去される文字列を防ぐため、文字列処理手段５５では文字列，記号の描画タイミングの変更及び表示画面での文字列，記号の描画位置補正を行う。
【００６６】
以下に図１２を用い文字列処理手段５５の詳細処理を説明する。
【００６７】
文字列データ取得９１は、地図データに記録された文字列の描画座標位置，文字数及び文字コード、ないし記号の描画座標位置，記号コード及びシンボルイメージを読み出す。さらに描画座標位置における標高値を標高データから演算する。
【００６８】
重なり判定９２は、全ての文字列，記号の描画位置座標を投影変換し、文字列の表示画面上で占める矩形領域位置及びサイズを文字数と文字コードより演算する。次に、全ての文字列，記号を表示対象と見なし視点位置からの距離が近い順にソートする。さらに視点位置近傍の文字列，記号を表示優先とし、表示優先文字列，記号の矩形領域と重なりのある文字列，記号を表示対象の文字列，記号から削除する。これにより表示画面で文字列，記号の重なりが削減され、視認性が向上する。
【００６９】
文字列位置判定９３は、重なり判定９２により表示対象となった文字列，記号の描画位置座標のｙ座標（視線方向）を抽出し、このｙ座標が含まれるカラム位置（ｙ軸方向の地形メッシュ位置）を演算する。
【００７０】
文字列位置補正９４は、文字列位置判定９３で得られた各文字列や記号に対するカラム位置から、視点位置近傍に隣接するカラム位置を求める。このカラム位置情報を用い、文字列，記号を描画するタイミングを決定する。例えば、図１１において文字列４００１はカラム３に含まれるが、カラム２に含まれる文字列と補正する（描画位置を補正しない点に注意）。これにより、カラム２における地形メッシュを描画した後、カラム２に含まれる地図データを描画すると同時に文字列４００１を描画するように動作する。これにより、文字列や記号が視点手前側の地形メッシュで隠される可能性が小さくなり、陰面消去が正常に行われるようになる。
【００７１】
文字列描画位置補正９５は、文字列，記号の含まれるカラム位置により、表示画面上での描画オフセット４０１２を演算し、得られた描画オフセット分だけ表示画面の上方向に文字列や記号をシフトし描画する。これは、視野遠方の地形メッシュにおいて地形メッシュの高さが文字列や記号の高さより小さくなり、文字列位置補正９４を用いても陰面消去が完全になされないという課題を解決するために実行される。描画オフセット量の演算方法は、例えば視点位置に最も近いカラムから文字列，記号の描画位置座標を含むカラムまでのカラム数をカウントし、このカラム数を描画オフセット４０１２とするとよい。ここで、文字列や記号の高さを規定値とすると、描画オフセット４０１２が規定値より小さければ規定値を描画オフセット４０１２として文字描画位置に加算し、描画オフセット４０１２が規定値より大きければ規定値を描画オフセット４０１２として文字や記号の描画位置に加算するとよい。このような処理を実施することにより、視点手前側の地形メッシュにより文字列，記号の一部又は全部が隠される可能性を最小限に止めることが可能になる。これにより、不当に文字列，記号が地形メッシュに隠れることを防ぎ、文字列，記号の表示品質を向上することができる。
【００７２】
次に、各カラム単位に分割した地図データを記憶する地図データ記憶手段５６につき詳細を説明する。なお、陰面有無判定手段５３で陰面が存在しないと判定されたときは、全てのデータが同一カラムに存在するものとして処理を行う。
【００７３】
地図データ記憶手段５６において地図データをメモリに記憶するフォーマットの一実施例を図１３に示す。この実施例では、各カラム毎に分割された地図データを投影変換した結果得られる頂点座標列と頂点数等で構成される描画命令と分岐命令を組で格納する地図データ記憶メモリ１０１と、各カラムに対する描画データの格納位置を開始アドレスと終了アドレスで管理する管理テーブル１００で構成する。
【００７４】
図１４を用い地図データ記憶手段５６の詳細を説明する。
【００７５】
初期化１１０は、管理テーブル１００の開始アドレス及び終了アドレスを所定アドレスに初期化する。例えばここで設定する初期値はＮＵＬＬ値等にするとよい。
【００７６】
分割地図データ取得１１１は、地形メッシュ又はカラム毎に分割されたベクトルデータとカラム位置，頂点データの各頂点に対応する標高値を取得する。
【００７７】
格納データ判定１１２は、分割地図データ取得１１１で取得した地図データのカラム位置から同カラムの管理テーブル１００を参照し、開始アドレスが初期値か判定する。開始アドレスが初期値の場合は開始アドレス設定１１３に、開始アドレスに初期値以外のアドレスが設定されている場合は分岐アドレス修正１１４に分岐する。
【００７８】
開始アドレス設定１１３は、地図データ記憶メモリ１０１にこれから記憶すべき描画命令が格納されるアドレスを管理テーブル１００の格納開始アドレスに設定する。例えば、地図データ記憶メモリ１０１のアドレス１に描画命令１(6001)をこれから記憶する場合は、この描画命令において描画するカラム４の開始アドレスにアドレス１を記憶する。
【００７９】
分岐アドレス修正１１４は、管理テーブル１００に格納されている最終アドレスをもとに、同一カラムで前回格納した描画命令と組の分岐命令のアドレスを、これから記憶すべき描画命令の格納先頭アドレスに変更する。例えば、地図データ記憶メモリのアドレス７に描画命令４（６００７）をこれから記憶する場合は、この描画命令において描画するカラム４の最終アドレス、即ちアドレス２を管理テーブル１００から読み出し、描画データ記憶メモリ内のアドレス２の分岐命令１（６００２）のアドレスにアドレス７を記憶する。
【００８０】
投影変換１１５は、投影変換手段５７を呼び出すことで、与えられたベクトルデータを投影変換し、表示画面上の頂点座標列に変換する。
【００８１】
命令バッファ書込み１１６は、頂点データを投影変換した頂点座標列と頂点数等で構成される描画命令と分岐命令を組で順に、格納済の最終分岐命令の次の地図データ記憶メモリ１０１に格納する。例えば、既に分岐命令３（６００６）まで格納済で、これから描画命令４（６００７）を格納する場合は、アドレス７に描画命令４（６００７）を、アドレス８に分岐命令（６００８）を格納する。
【００８２】
終了アドレス設定１１７は、命令バッファ書込み１１６で書き込んだ描画命令に対応するカラム位置の管理テーブル１００の終了アドレスを、地図データ記憶メモリ１０１に格納した分岐命令を格納したアドレスに更新する。例えば、描画命令４（６００７）を格納した場合は、管理テーブル１００内のカラム４に対応する最終アドレスをアドレス８に修正する（図１３においては、この修正がなされる前の値を示す）。
【００８３】
終了判定１１８では全地図データを格納終了か判定し、全データ格納終了となるまで初期化１１０を除く上記処理を繰り返し行う。
【００８４】
このような格納方法を用いれば、任意カラムに対応する地図データを、視点奥から手前の順に簡単に参照することができ、高速に任意カラムに対応する地図データを選択することができる。また、描画コマンドを解釈して線や面等を描画することのできる描画プロセッサを持つナビゲーション装置であれば、この描画命令及び分岐命令を描画コマンドで構成することで、地図データ記憶メモリ１０１と描画コマンド格納バファを一つのメモリ領域とすることができ、使用するメモリ領域を削減することができる。
【００８５】
次に図１４及び図１５を用い、描画手段５８の詳細を説明する。
【００８６】
陰面処理描画１３０は、まず視点最遠方に位置するカラムを選択し、選択したカラムに対応する地形メッシュを投影変換手段５７を呼び出し投影変換して描画する。次に管理テーブル１００を参照し、選択したカラムに対応する開始アドレスを読み出し、かつ選択したカラムを描画することで、地形メッシュに地図が重なり表示される。さらに、選択したカラムに対応する文字列及び記号を選択し、描画することで地形メッシュ及び地図に重ねて文字列及び記号が表示される。これらの処理を視点遠方のカラムから視点近傍のカラムの順に繰り返し実施する。これにより陰面消去が実現される。
【００８７】
なお、地形起伏により視点位置近傍に位置する地形メッシュの標高値が高い場合等は図１５のように画面下に地形ポリゴン抜け５０００が発生するという課題がある。この課題を解決するため、表示地形判定１３１は図１５に示した可視領域１００４内の最近傍地形メッシュ列５００１を構成する頂点群を選択し、さらに視点に近い最近傍頂点列５００２を抽出して投影変換し、投影変換した最近傍頂点列５００２が表示画面下境界５００３より上側に存在するか判定する。最近傍頂点列５００２が表示画面下境界５００３より上側に存在すると判定されたときは表示地形補正１３２に、存在しないと判定された場合は処理終了にそれぞれ分岐する。
【００８８】
表示地形補正１３２は、投影変換した最近傍頂点列５００２と、表示画面下境界５００３で囲まれる領域を視点位置標高に応じた地形色で塗りつぶす命令を発行し、描画を実行する。これにより画面下に発生する地形ポリゴン抜けが発生しないようになるため、表示品質を改善することができる。
【図面の簡単な説明】
【００８９】
【図１】本発明における３次元地図表示例を表した図。
【図２】ナビゲーション装置の各構成ユニットを表した図。
【図３】演算処理部のハードウエア構成を表した図。
【図４】演算処理部の機能構成を表した図。
【図５】地図表示手段の機能構成を表した図。
【図６】座標変換手段を説明するための図。
【図７】地形メッシュ演算手段を説明するための図。
【図８】地形メッシュ演算手段を説明するためのフロー図。
【図９】陰面有無判定手段を説明するための図。
【図１０】地図データ分割手段を説明するための図。
【図１１】文字列データの表示例を表した図。
【図１２】文字列処理手段を説明するためのフロー図。
【図１３】地図データ記憶手段のメモリ構成例を表した図。
【図１４】地図データ記憶手段を説明するためのフロー図。
【図１５】描画手段５８を説明するためのフロー図。
【図１６】描画手段５８を説明するための図。
【符号の説明】
【００９０】
１  演算処理部
２  出力装置
３  記憶手段
４  入力装置
５  車輪速センサ
６  地磁気センサ
７  ジャイロ
８  ＧＰＳ受信装置
９  車内ＬＡＮ装置
２１  ＣＰＵ
２２  ＲＡＭ
２３  ＲＯＭ
２４  ＤＭＡ
２５  描画プロセッサ
２６  ユニファイドメモリ
２７  カラーパレット
２８  Ａ／Ｄ変換器
２９  ＳＣＩ
３０  ＰＩＯ
３１  カウンター
４１  ユーザ操作解析手段
４２  現在位置演算手段
４３  マップマッチ手段
４４  地図データ読込手段
４５  地図表示手段
４６  メニュー表示手段
４７  表示処理手段
５０  地図データ要求手段
５１  地形メッシュ演算手段
５２  座標変換手段
５３  陰面有無判定手段
５４  地図データ分割手段
５５  文字列処理手段
５６  地図データ記憶手段
５７  投影変換手段
５８  描画手段
７０  可視領域演算手段
７１  地形メッシュサイズ演算
７２  地形メッシュ生成
７３  最低標高抽出
７４  可視領域補正
７５  標高値演算
８０  地図データ取得手段
８１  地形メッシュ位置演算手段
８２  カラム判定手段
８３  補間点生成手段
９１  文字列データ取得
９２  重なり判定
９３  文字列位置判定
９４  文字列位置補正
９５  文字列描画位置補正
１００  管理テーブル
１０１  地図データ記憶メモリ
１１０  初期化
１１１  分割地図データ取得
１１２  格納データ判定
１１３  開始アドレス設定
１１４  分岐アドレス修正
１１５  投影変換
１１６  命令バッファ書込み
１１７  終了アドレス設定
１１８  終了判定
１３０  陰面処理描画
１３１  表示地形判定
１３２  表示地形補正
【図１】
2006221199.tif 000003
【図２】
2006221199.tif 000004
【図３】
2006221199.tif 000005
【図４】
2006221199.tif 000006
【図５】
2006221199.tif 000007
【図６】
2006221199.tif 000008
【図７】
2006221199.tif 000009
【図８】
2006221199.tif 000010
【図９】
2006221199.tif 000011
【図１０】
2006221199.tif 000012
【図１１】
2006221199.tif 000013
【図１２】
2006221199.tif 000014
【図１３】
2006221199.tif 000015
【図１４】
2006221199.tif 000016
【図１５】
2006221199.tif 000017
【図１６】
2006221199.tif 000018
【手続補正書】
【提出日】平成18年6月8日(2006.6.8)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
標高データと地図データを備え、所定視点から俯瞰する３次元地形図を標高データから生成し、３次元地形図に地図データを重ねて表示する３次元地図表示装置において、
標高データの各頂点から地形面を構成する地形メッシュを演算する地形メッシュ演算手段と、
３次元地形図に重ねて表示する地図データにおける文字列がどの地形メッシュに含まれるか判定する文字列位置判定手段と、
描画すべき地形メッシュより視点遠方側に所定距離離れた地形メッシュに含まれる文字列を選択し、描画すべき地形メッシュに選択した文字列を重ねて描画する文字列位置補正手段とを備えることを特徴とする３次元地図表示装置。
【請求項２】
標高データと地図データを備え、所定視点から俯瞰する３次元地形図を標高データから生成し、３次元地形図に地図データを重ねて表示する３次元地図表示装置において、
標高データの各頂点から地形面を構成する地形メッシュを演算する地形メッシュ演算手段と、
３次元地形図に重ねて表示する地図データにおける文字列がどの地形メッシュに含まれるか判定する文字列位置判定手段と、
文字列が含まれる地形メッシュより視点近傍側に所定距離離れた地形メッシュを選択し、選択された地形メッシュに重ねて文字列を描画する文字列位置補正手段とを備えることを特徴とする３次元地図表示装置。
【請求項３】
標高データと地図データを備え、所定視点から俯瞰する３次元地形図を標高データから生成し、３次元地形図に地図データを重ねて表示する３次元地図表示装置において、
標高データの各頂点から地形面を構成する地形メッシュを演算する地形メッシュ演算手段と、
３次元地形図に重ねて表示する文字列の描画位置を演算する文字列位置演算手段と、
文字列の描画位置を所定距離移動する文字列描画位置補正手段を備え、
文字列位置演算手段は、文字列の描画位置を、当該文字列の視線方向の描画位置座標を含む隣接した地形メッシュに重なるようにすることを特徴とする３次元地図表示装置。
【請求項４】
標高データと地図データを備え、所定視点から俯瞰する３次元地形図を標高データから生成し、３次元地形図に地図データを重ねて表示する３次元地図表示装置において、
標高データの各頂点から地形面を構成する地形メッシュを演算する地形メッシュ演算手段と、
３次元地形図に重ねて表示する文字列の描画位置を演算する文字列位置演算手段と、
文字列の描画位置を所定距離移動する文字列描画位置補正手段を備え、
文字列描画位置補正手段は文字列位置を表示画面上で画面上の方向に文字列を移動することを特徴とする３次元地図表示装置。
【請求項５】
請求項４に記載の３次元地図表示装置において、
文字列描画位置補正手段は視点から文字列までの距離に応じ文字列の移動量を演算することを特徴とする３次元地図表示装置。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００８
【補正方法】削除
【補正の内容】
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００９
【補正方法】削除
【補正の内容】
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００１０
【補正方法】変更
【補正の内容】
【００１０】
すなわち、名称等の文字列や記号，アイコンなどは、地図データにおいてそれらを描画する位置を指定しているのみで、その文字列や記号，アイコンを表示する面積について考慮していない。従って、上記陰面消去処理を実行したとき、文字列や記号，アイコンが正しく陰面消去されず、地形メッシュや地図データにより隠されてしまうという課題がある。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００１１
【補正方法】削除
【補正の内容】
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００１３
【補正方法】削除
【補正の内容】
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００１４
【補正方法】削除
【補正の内容】
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００１５
【補正方法】変更
【補正の内容】
【００１５】
上記課題を解決する手段として、文字列が含まれる地形メッシュの視点近傍側に隣接する地形メッシュを選択し、この選択された地形メッシュに重ねて文字列を描画する手段を用いる。さらに、文字列が含まれる地形メッシュ位置により表示画面上で、画面の上方向に文字列の描画位置を変更する手段を用いる。
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】００１６
【補正方法】削除
【補正の内容】