説明

コンピュータを用いた描画方法

【課題】 画像情報に対する視野判断をより迅速に行い、大きなオブジェクトであっても迅速に描画することができる描画方法を提案する。
【解決手段】 所定格子の頂点毎に標高情報が与えられている座標情報を複数の塊にし、当該塊の中心座標が視野に入っているか否かを判定して描画している。また、標高情報が間引かれた座標情報である複数の塊群を生成し、塊の中心座標と視点との距離の範囲に対応して割り当て、実際に塊の中心座標と視点との距離を求めて、属する塊の中心座標と視点との距離の範囲に対応して割り当てられている塊群の塊を割り当てて描画している。

【発明の詳細な説明】
【技術分野】
【0001】
本発明はコンピュータを用いた描画方法に関し、特に、視点との距離に応じた精度で描画を行う方法に関する。
【背景技術】
【0002】
本発明の背景技術となるものに、景観シミュレーションというものがある。この景観シミュレーションとは、建物や周囲の風景をCG(Computer Graphics)で作成してみせることである。景観シミュレーションを構築する方法は、複数の方法が提案がなされている。ここでは、本発明との関係からその中でも、航空写真を用いて景観シミュレーションを構築する方法を説明する。
【0003】
航空機からFMC装置搭載の航空カメラで互いにオーバーラップした航空写真を撮影する。撮影した航空写真のネガファイルをCCDセンサ搭載のスキャナでデジタル画像に変換する。スキャンの解像度が作成するデータの精度に影響を与えるため、例えば、23[cm]×23[cm]のネガフィルムを20[μm]でスキャンする。
【0004】
デジタル画像をコンピュータに読み出してディスプレイに表示し、人が立体視できるように標定する。標定は、カメラレンズの歪みを補正し、複数枚撮影された航空写真の相互の関係を求めて行われる。次に、対空標識や地形図より平面位置と高さが明らかに判る点を選定し、それを基準点として航空写真上の位置と対応づける。この対応付けは、バンドル法を用いて計算し、撮影したカメラの位置と傾きを求めることにより、コンピュータ上に測地座標に準じた地上と相似のモデルを作成する。
【0005】
この作成したモデルから、デジタル図化機を用いて3次元の地形データを手動で取得する。地形データは、不整三角網モデル(Triangulated Irregular Network ; TIN)で表現し、道路、尾根、谷などの傾斜変換点に多くのブレークラインを設けて作成する。また、モデルの中から現況の家屋や橋梁などの3次元データも取得する。このランダム点配列の不整三角網モデルは、数値標高モデル(Digital Elevation Model;DEM)の一形態であり、他に、格子点配列の双一次曲面モデル、等高線のTINモデル、断面の双一次曲面またはTINモデルがある。これらのモデルについては、「空間情報工学」(村井俊治、社団法人日本測量協会)に詳しい。なお、本発明の実施形態では格子点配列の双一次曲面モデルを用いている。
取得した3次元データを利用し、正射投影の航空写真(オルソフォト)を作成する。オルソフォトは、地形図と一致したものとなり、距離、面積、方位を正確に計測することができる。
【0006】
以上の地形データ、現況構造物データ、オルソフォトを統合して、景観シュミレーションを構築する。具体的には、コンピュータが地形データ、現況構造物データ、オルソフォトを読み出し、ディスプレイに3次元CGを表示する。コンピュータは、座標情報である地形データに基づいてモデルを生成し、生成したモデルに対して画像情報であるオルソフォトをテクスチャマッピングする。実際にディスプレイに描画がなされるのは、これらのうち視点からの仮想的な視野を示す投影面(ビューウィンドウ)に投影されているものだけである。たとえば、実際にAというオブジェクトと、Bというオブジェクトがある場合でも、オブジェクトAが視野に入っていなければ描画されず、視野内に入っているオブジェクトBのみが描画される。
【発明の開示】
【発明が解決しようとする課題】
【0007】
前記背景技術は以上のように構成され、描画ソフトがコンピュータに読み出されて構築されている描画装置は、描画に必要な座標であるか否かを1点ずつ視野判断しており、全ての座標の判断が終了した後に画像情報をテクスチャマッピングしており、かかる判断の部分で多くの命令回数が必要となって、ボトルネックとなり描画の更新に多大な時間がかかるという課題を有する。よりユーザサイドの観点からいうと、視点の移動に描画が追いつかず連続した画像又は動画がディスプレイにスムーズに映し出されないということである。これは、ハードウェアの性能を良くすれば対応できるかもしれないが、より高精度の座標情報及び画像情報を処理する場合には同様な問題が生じる。さらにまた、主記憶上に全ての座標情報及び画像情報がロードすることができる場合はよいが、描画装置に割り当てられた領域では足りない場合にはコンピュータ全体を管理するOS(Operating System)がページングを行うために(OSでなく描画装置がこのような処理を行っている場合もある)、さらに、処理に時間がかかってとても見るに耐えない状況に陥るという課題を有する。
【0008】
本発明は、前記課題を解決するためになされたものであり、座標情報に関する視野判断をより迅速に行い、大きなオブジェクトであっても迅速に描画することができる描画方法を提案することを目的とする。
【課題を解決するための手段】
【0009】
(請求項1)
本発明に係る方法は、所定格子の頂点毎に標高情報が与えられている座標情報を所定数の頂点からなり、領域として重複しない矩形の塊に分割して第1の塊群を作るステップと、塊群から等間隔に頂点の標高情報を削除して新たな塊群を作るステップと、塊の第1の基準座標と視点との距離の範囲に対応する塊群を塊の第1の基準座標と視点との距離を求めて割り当てるステップと、塊中の第2の基準座標が視野に入っているか否かを判定する判定ステップと、当該判定ステップで入っていると判定した場合には割り当てられている塊群の塊に基づき描画するステップとを含み、これらのステップをコンピュータが行うものである。このように本発明によれば、所定格子の頂点毎に標高情報が与えられている座標情報を複数の塊にし、当該塊の第2の基準座標が視野に入っているか否かを判定して描画しており、全ての所定格子の頂点毎に視野に入っているか否かを判定する従来方法と比べ、コンピュータが行う処理数が大幅に低減されて高速に描画することができる。また、標高情報が間引かれた座標情報である複数の塊群を生成し、塊の第1の基準座標と視点との距離の範囲に対応して割り当て、実際に塊の第1の基準座標と視点との距離を求めて、属する塊の第1の基準座標と視点との距離の範囲に対応する塊群の塊を割り当てて描画しており、視点との距離が近づけば近づく程標高情報が欠損していない塊を用い、視点との距離が離れれば離れる程標高情報が欠損した塊を用いて描画することとなり、言い換えれば、精度が必要とされる部分には精度の高いものを、精度が必要とされない部分には精度の低いものを適用しており、人間の視認力に合わせて処理対象となる情報量が低減されコンピュータが高速に描画することができる。座標情報を所定数の頂点からなり、領域として重複しない矩形の塊に分割する場合には、塊の外周の頂点は隣接する塊と共有しなくともよいし、共有してもよい。塊中の基準座標とは、塊中の座標で視野に入っているか否かを判定するための座標である。塊中の第1の基準座標及び塊中の第2の基準座標は、塊毎に異ならない方が好ましく、例えば、塊の中心座標、塊のなす矩形の頂点の座標がある。また、単一の座標だけでなく、4頂点を判定し、少なくとも1つでも視野に入っていると判定した場合には塊の一部分が視野に入っていると判断することができる。塊中の第1の基準座標と塊中の第2の基準座標とが同一の座標であってもよい。
【0010】
(請求項2)
また、本発明に係る方法は必要に応じて、コンピュータが、前記判定ステップにおいて視野の範囲を拡大させて判定する方法である。このように本発明においては、塊の中心座標が視野に入るか否かの判定の際に、実際の視野と異なり視野を広げており、塊毎に判定することにより欠損する可能性がある視野の際で描画する必要がある部分を確実に描画することができる。
【0011】
(請求項3)
また、本発明に係る方法は必要に応じて、コンピュータが、塊群から等間隔に頂点の標高情報を削除して新たな塊群を作る前記ステップを、第1の塊群を始めとして複数回行って、第1の塊群も含めて生成した塊群又は塊群の塊をそれぞれファイルにして記憶手段に格納するものである。このように本発明においては、第1の塊群から標高情報を削除し第2の塊群を生成し、第2の塊群から標高情報を削除し第3の塊群を生成し、同様にして複数の塊群を生成し、それぞれをファイルにして主記憶装置以外のハードディスク・ドライブ、光磁気ディスク・ドライブ、CD-ROMドライブ、DVD-ROMドライブ等の外部記憶装置に記憶しており、コンピュータの主記憶装置上の領域を大幅に占有することがない。主記憶装置の領域を大幅に占有してしまうと、コンピュータ上に実装されている他の装置の処理に影響を与え、また、ページングが生じた場合のレスポンスに大きな影響を与えるため、できる得るだけ占有する領域を小さくした方がよい。
【0012】
(請求項4)
また、本発明に係る方法は必要に応じて、視点、視野に変更が生じた場合に、塊の第1の基準座標と視野との距離が長くなって異なる塊中の第1の基準座標と視点との距離の範囲に属するようになったとき、現在割り当てられている塊群の塊から等間隔に頂点の標高情報を削除して新たな塊を生成し割り当てるステップを含み、このステップをコンピュータが行うものである。このように本発明においては、より精度の低い塊が必要となった場合に、主記憶装置上にある塊群の塊から標高情報を削除して割り当てられる塊群の塊を生成しており、相当の処理時間を要する入出力処理を介することなく、高速な描画を実現することができる。
【0013】
(請求項5)
また、本発明に係る方法は必要に応じて、視点、視野に変更が生じた場合に、塊の第1の基準座標と視野との距離が短くなって異なる塊の第1の基準座標と視点との距離の範囲に属するようになったとき、ファイル化した塊中の第1の基準座標と視点との距離の範囲に対応する塊群又は塊群の塊を読み出し割り当てるステップを含み、このステップをコンピュータが行うものである。このように本発明においては、より精度の高い塊が必要となった場合に、対応するファイル化した塊群の塊を読み出しており、適切な精度の描画を保持している。主記憶上にある塊よりも精度の高い塊を要する場合には、既に削除された標高情報を復元することができないため、外部記憶装置から読み出して適切な描画を可能としている。
【0014】
(請求項6)
また、本発明に係る方法は必要に応じて、前記判定ステップにおいて、塊中の第2の基準座標が塊の中心座標であるものである。このように、塊の第2の基準座標が視野に入っているか否かを判定しているので、複数の点を判定するものに比べ迅速に判定することができると共に、1点で判定する場合に座標中塊が実際に視野に入っているか否かを判断する点として中心座標が好ましい。好ましい理由としては、1点で判断する場合に、頂点のうちどれか1つとすると、塊中判定対象となる頂点から離れた部分が描画されず欠損する可能性が高くなるのに対し、塊の中心であれば、中心から離れた部分であっても高々対角線の半分の距離に過ぎず、確率論として欠損する可能性が低く、また、欠損した場合であっても欠損する領域が少なくて済む。
【0015】
(請求項7)
また、本発明に係る装置は、所定格子の頂点毎に標高情報が与えられている座標情報を所定数の頂点からなり、領域として重複しない矩形の塊に分割して第1の塊群を作る塊分割部と、塊群から等間隔に頂点の標高情報を削除して新たな塊群を作る間引部と、塊中の第1の基準座標と視点との距離の範囲に対応する塊群の塊を塊中の第1の基準座標と視点との距離を求めて割り当てる距離演算部と、塊中の第2の基準座標が視野に入っているか否かを判定する判定部と、当該判定部により視野に入っていると判定された塊を描画する描画部とを備え、前記間引部が第1の塊群を始めとして複数の塊群を作るものである。
【0016】
(請求項8)
また、本発明に係るプログラムは、所定格子の頂点毎に標高情報が与えられている座標情報を所定数の頂点からなり、領域として重複しない矩形の塊に分割して第1の塊群を作る塊分割部と、塊群から等間隔に頂点の標高情報を削除して新たな塊群を作る間引部と、塊中の第1の基準座標と視点との距離の範囲に対応する塊群の塊を塊中の第1の基準座標と視点との距離を求めて割り当てる距離演算部と、塊中の第2の基準座標が視野に入っているか否かを判定する判定部と、当該判定部により視野に入っていると判定された塊を描画する描画部として、コンピュータを動作させ、前記間引部が第1の塊群を始めとして複数の塊群を作るものである。
【発明を実施するための最良の形態】
【0017】
本発明の実施の形態を図面に基づいて詳細に説明する。ただし、本発明は多くの異なる態様で実施可能であり、本実施の形態の記載内容に限定して解釈すべきではない。
本実施の形態では、主に方法を適用した装置について説明するが、当業者であれば明らかな通り、本発明はコンピュータで使用可能なプログラムとしても実施できる。したがって、本発明は、ハードウェアとしての実施形態、ソフトウェアとしての実施形態またはソフトウェアとハードウェアとの組合せの実施形態をとることができる。プログラムは、ハードディスク、CD−ROM、光記憶装置または磁気記憶装置等の任意のコンピュータ可読媒体に記録できる。同様にシステムとして実施できる。
【0018】
本実施形態に係る描画装置は、コンピュータ上に実装されており、コンピュータ本体の他、ディスプレイ30、キーボード40及びマウス(図示しない)を備える。コンピュータ本体以外の周辺装置は適宜追加することができ、例えば、ジョイスティック、ジョイパッドを適用することで、仮想空間内をより操作性高く操作することができる。
【0019】
[描画装置の構成の説明]
図1に示す通り、本実施形態に係る描画装置は、通常の描画装置が実装するモジュールであり、主記憶装置22又は外部記憶装置21内にある描画情報(一般的な描画に係る情報という意)を描画する描画部15の他、所定格子の頂点毎に標高情報が与えられている座標情報を所定数の頂点からなり、領域として重複しない矩形の塊に分割する塊分割部11と、第nの塊群の塊から等間隔に頂点の標高情報を削除して第n+1の塊群を作る間引部12と、塊の中心座標と視点との距離の範囲に対応する第nの塊群の塊を塊の中心座標と視点との距離を求めて割り当てる距離演算部13と、塊の中心座標が視野に入っているか否かを判定する判定部14とを備える構成である。これら塊分割部11、間引部12、距離演算部13、判定部14及び描画部15の他、キーボード40等の入力機器から入力信号をコンピュータ内部に出力する入力部16と、ディスプレイ30等の出力機器へ出力信号をコンピュータ内部から出力する出力部17とを備える。通常、この入力部16、出力部17は、OSが担っており、OSからのメッセージを受け入力信号があることを描画装置が認識し入力信号を受け取り処理し、OSにメッセージを投げ出力信号があることを知らせ出力信号を出力する。こららの処理をプログラミングで実装する場合には、OSのAPI(Application Program Interface)を用いて行う。
【0020】
描画装置が描画する描画情報は、所定格子の頂点毎に標高情報が与えられている座標情報である。空間情報工学において、数値地形モデル(Digital Terrain Model;略してDTM)は、標高、勾配、斜面、方位、水系などの地形の特徴を数値表現するモデルであり、数値地形モデルの情報をDTMデータという。このDTMの中で、標高データのみに特化したモデルが数値標高モデル(Digital Elevation Model;略してDEM)である。本実施形態では、DEMデータを描画情報とし、特にDEMデータのうちでも正方格子のメッシュデータを用いる。なお、本実施形態では、DEMデータの中でも正方格子のメッシュデータを用いたが、他の種類のDEMデータであってもよい。しかしながら、正方格子のようなメッシュデータ(等間隔であればよい)である場合には、間引部12で標高情報を等間隔で削除して新たに生成され塊群のDEMデータも間隔こそ異なれど、正方格子のようなメッシュデータとなるために、精度のばらつきが生じないというメリットがある。
【0021】
前記塊分割部11は、所定格子の頂点毎に標高情報が与えられている座標情報であるDEMデータを所定数の頂点からなり、領域として重複しない矩形の塊に分割する。領域としては重複しないが、頂点としては重複してもよいが、本実施形態では重複せずに固まりを図2に示すように構成する。この図2では塊を4×4で合計で16の頂点からなるものとした。ただし、図2はDEMデータの一部を示すものである。また、本実施形態では塊と呼称しているものは、ブロックと呼称される場合もある。なお、DEMデータは、通常(2のべき乗)×(2のべき乗)となっており、塊も(2のべき乗)×(2のべき乗)となっているため、余りがでることはない。仮に、余りが生じた場合には、余りを削除する方法、適当な標高情報を与えた座標を追加する方法で対応することができる。
【0022】
前記間引部12は、第nの塊群の塊から等間隔に頂点の標高情報を削除して第n+1の塊群を作る。nは正の自然数である。また、nが大きい塊群であるほど、標高情報が削除され、精度の低い画像情報となる。このように等間隔に標高情報を削除するのは、偏りがないDEMデータの塊群を生成するに他ならない。前記図2の塊から、間引部12が等間隔で頂点の標高情報を削除することで、合計で8の頂点からなる塊とした。さらに間引部で図3の塊を処理して、図4(a)に示すように、合計で4の頂点からなる塊とした。このように塊の一辺が2のべき乗からなる頂点からなる場合には、間引きする度に、塊の総頂点数が1/2倍となる。等間隔で間引くことができればよいので、1/4倍で間引くこともでき、精度の割合を調整することができる。さらに、本実施形態では生成した複数の塊群をファイル化して外部記憶装置21に格納する。これにより、主記憶装置22上にロードする塊が限定され、必要に応じてファイル化した塊群又は塊群の塊を主記憶装置22上にロードして使用することができ、恒常的に主記憶装置22の大部分を確保することなく、また、不必要となった場合にアンロードすることで領域の開放を行うことができる。
【0023】
距離演算部13は、塊の中心座標と視点との距離の範囲に対応する第nの塊群の塊を塊の中心座標と視点との距離を求めて割り当てる。図5に示すように、塊の中心座標と視点との距離dの範囲を、d1>d、d2>d≧d1、d3>d≧d2、d4>d≧d3、d5>d≧d4、・・・と分け、それぞれの範囲に対応して、第1の塊群のDEMデータ、第2の塊群のDEMデータ、第3の塊群のDEMデータ、第4の塊群のDEMデータ、第5の塊群のDEMデータ、・・・・・を割り当てている。図5では第1の塊群のDEMデータの厚みが一番厚いが、これはDEMデータの情報量が多く精度の高いDEMデータであることを示している。すなわち、頂点に対応する標高情報を多く有していることを示している。
【0024】
前記判定部14は、塊の中心座標が視野に入っているか否かを判定する。中心座標が視野に入っているか否かの判定の技術は、本発明の本質的部分でなく、かつ、様々なアルゴリズムがCG(Computer Graphics)の分野では周知技術として存在し当業者は適宜実現が可能であるので、ここでは一例のみ説明する。視点方向と視点と中心座標とを結ぶ直線との角度が視野角に入るか否かで判定する。この場合、計算は全ての辺の長さが判明することから余弦定理を用いて行うことができるが、他の計算方法を用いてもよい。余弦定理を用いた具体的な計算は、視線方向の単位ベクトルの始点が視点となり、終点も単位ベクトルであるため求まり、さらに、塊の中心座標もあるため、3つの座標から辺の長さが求まって余弦定理より視線方向から何度傾斜しているかが判明し、この傾斜角度と視野角を比較することで視野に入るか否かを判定することができる。この他、視点とは別に投影面(ビューウィンドウ)が用意され、視点から投影面に入る領域の仮想空間内のオブジェクトはディスプレイに表示されることになる。したがって、視点と中心座標を結ぶ直線が、投影面と交わっているか否かで視野に入るか否かを判定することができる(図7参照)。さらに、視点方向と視点と中心座標とを結ぶ直線との角度が視野角に入るか否かで判定する本実施形態で用いる方法において、視野角を若干広げて判定することにする。これにより、視野の際の部分で視野に入らないと判定された塊の一部分が実際には視野に入っており、かかる判定により描画されないという不具合を回避することができる。後者の方法を適用する場合には、投影面を大きくすることで対応することができる。
【0025】
前記描画部15は、描画情報を描画する。ここで、描画情報となるものは、前記判定部にて視野に入っていると判定された塊のDEMデータとなる。また、このDEMデータのみを描画しても対象となる仮想空間に立体的にオブジェクトが表現されるが、前記背景技術に示した工程を経て生成されたオルソフォトをテクスチャマッピングすることで、より現実世界に近い仮想空間を描画することができる。テクスチャマッピングは、本発明の本質的部分でなく、かつ、CG(Computer Graphics)の分野では様々なアルゴリズムが周知技術として存在し当業者は適宜実現が可能であるので、ここでは省略する。また、テクスチャマッピングだけでなく、ソリッドテクスチャを適用することもできる。さらに、本実施形態では、オルソフォトをJPEGのデータ形式にし、圧縮率の低いものから、圧縮率の高いものまで、複数のJPEG形式のオルソフォトを生成する。より好ましくは、塊群の数だけの画質のオルソフォトを用意し、塊群に合わせて塊に対応する画質のオルソフォトを読み出し、テクスチャマッピングする(図6参照)。これにより、標高情報の精度に比例してテクスチャマッピングされるオルソフォトの画質も比例して描画がなされる。ここで、JPEGに関しては、本発明の本質的部分でなく、かつ、様々なアルゴリズムが画像処理の分野では周知技術として存在し当業者は適宜実現が可能であるので、ここでは一例のみ簡単に説明する。原画像データを、まず8×8画素にブロック化し、DCT(離散コサイン変換)式で変換し、量子化し、符号化することで圧縮した画像データを得ることができる。なお、ここではJPEGを用いたが、画質の程度とデータ量を調整可能な方式であれば、他の方式を用いてもよく、例えば、PNG(Portable Network Graphics)を用いることができる。また、オルソフォトを用いたが、他の画像情報であってもよく、衛星写真、CAD図、地図であってもよい。
【0026】
また、描画部15で描画する場合に、通常隣接する塊同士は同じ塊群に属するものであるが、ある塊群の塊と異なる塊群の塊とが隣接する場合がある。これは、視点とある塊の中心座標との距離が、視点と隣接する塊の中心座標との距離と異なる視点と塊の中心座標との距離の範囲に属する場合に生じる。この場合においては、小さな間隔で標高情報を有している(精度の高い座標情報を有している)塊のDEMデータの頂点と隣接する塊のDEMデータの頂点とを結び(図4(b)参照)、三角形を形成することで対応することができる。DEMデータは、正方格子であるが、実際にコンピュータ上で描画される場合には三角形のポリゴンとして描画されることもあり、描画に関して差し支えはない。
【0027】
[描画装置の動作の説明]
まず、ディスプレイ30上に表示されている描画装置を表象するアイコンを利用者がポインタを重ねて状態でクリックすることで、描画装置がコンピュータ上に構築される。まず、描画装置は予め割り当てられているDEMデータについて、塊分割部11が、所定格子の頂点毎に標高情報が与えられている座標情報を所定数の頂点からなり、領域として重複しない矩形の塊に分割する(ステップ101。以下図8のフローチャートを参照)。塊分割部11により分割が全ての頂点について行われたか否かを判定し(ステップ102。余っている頂点はないか否かを判定し)、全ての頂点について行われたと判定した場合には、第1の塊群を始めとして(n=1として)、間引部12が第nの塊群から第n+1の塊群を標高情報を等間隔で削除して生成する(ステップ103)。生成した第n+1の塊群をファイル化して外部記憶装置に格納する(ステップ104)。予め設定された第Nの塊群まで生成されてファイル化されたか否かを判定し(ステップ105)、なされていると判定した場合には、nを1に初期化する(ステップ107)。前記ステップ105において、なされていないと判定した場合には、nを1インクリメントし(ステップ106)、前記ステップ103に移行する。また、前記ステップ102において、全ての頂点について行われていないと判定した場合には、前記ステップ101に移行する。前記ステップ107の処理の後には、第1の塊群を始めとして(n=1として)、第nの塊群に対応するオルソフォトをJPEG形式にして生成し(ステップ108。nが大きくなる程圧縮率を大きくする)、ファイル化して外部記憶装置21に格納する(ステップ109)。予め設定された第Nの塊群に対応するオルソフォトが生成されてファイル化されたか否かを判定し(ステップ110)、なされていると判定した場合には、ステップ200の定義済処理の描画処理に移行する。この描画処理については後記する。前記ステップ110において、なされていないと判定された場合には、nを1インクリメントし(ステップ111)、前記ステップ108に移行する。
【0028】
以上のステップ101ないしステップ111は、予め、例えば、描画装置が始めてコンピュータに構築された際に1回なされていれば、ファイルが生成されているので省略することもできる。また、複数のDEMデータに割り当て可能な描画装置の場合には、割り当てられたDEMデータ毎に1回なされていればよい。
【0029】
次に、ステップ200の描画処理について説明する。距離演算部13が、ある塊について(通常は仮想空間又はオブジェクトの基準座標を含む又は基準座標の近くにある塊から始める)中心座標と視点との距離を計算する(ステップ201)。求めた距離に応じて、距離演算部13が塊群の塊のDEMデータを割り当てる(ステップ202)。全ての塊についてステップ201及びステップ202がなされたか否かを判定し(ステップ203)、なされていると判定した場合には、判定部14がある塊について視野内か否かを判定する(ステップ204)。視野内であると判定された塊は、かかる塊に対して既に割り当てられている塊群の塊のDEM情報に基づき描画を描画部15により行う(ステップ205)。続けて、描画したある塊についてのモデルについて、塊群の塊に対応するオルソフォトをテクスチャマッピングを行う(ステップ206)。さらに、全ての塊について前記ステップ204がなされたか否かを判定し(ステップ207)、なされていないと判定した場合には、前記ステップ204に移行する。前記ステップ203において、なされていないと判定した場合には、前記ステップ201に移行する。前記ステップ207において、全ての塊についてなされていると判定した場合には、視点、視野に変動が生じているか否かを判定し(ステップ208)、変更が生じていると判定した場合には、変動が生じた視点、視野に基づいてステップ201に移行する。前記ステップ208において、変更が生じていないと判定した場合には、終了か否かを判定し(ステップ209)、終了と判定した場合には、終了する。前記ステップ209において、終了と判定しない場合には、前記ステップ208に移行する。
【0030】
以上のステップでは、外部記憶装置21からDEMデータのファイル及びJPEG形式のオルソフォトの読み出しについては、言及していないが、適宜必要となった場合に読み出すこととする。例えば、ステップ205及びステップ206において、主記憶装置22上にロードされていないと判断された時点でロードすることができる。この他ステップ202時点で主記憶装置22上にロードされていないと判断された時点でロードすることもできる。ただし、ステップ205及びステップ206においてロードした方が視野外の塊についてもロードするおそれがなく、全体として処理数が少なくなる。
【0031】
このように本実施形態に係る描画装置によれば、DEMデータを複数の塊(塊でなくブロックと呼称してもよい)にし、かかる塊の中心座標が視野に入っているか否かを判定して描画しており、全ての所定格子の頂点毎に視野に入っているか否かを判定する従来方法と比べ、コンピュータが行う処理数が大幅に低減されて高速に描画することができる。また、標高情報が間引かれた座標情報である複数の塊群のDEMデータを生成し、塊の中心座標と視点との距離の範囲にDEMデータが対応しており、実際に塊の中心座標と視点との距離を求めて、属する塊の中心座標と視点との距離の範囲に対応する塊群の塊を割り当てて描画しており、視点との距離が近づけば近づく程標高情報が欠損していない塊を用い、視点との距離が離れれば離れる程標高情報が欠損した塊を用いて描画することとなり、言い換えれば、精度が必要とされる部分には精度の高いものを、精度が必要とされない部分には精度の低いものを適用しており、処理対象となる情報量が低減されコンピュータが高速に描画することができる。
【0032】
なお、本実施形態で示した塊分割部11、間引部12、距離演算部13、判定部14及び描画部15は、モジュール構成の一例であり、例えば、距離演算部13を塊の中心座標と視点との距離を求める距離演算部と塊の中心座標と視点との距離の範囲に対応する第nの塊群の塊を割り当てる割当部とに分離した構成にすることもできる。
【0033】
また、ステップ107のNを大きくすることにより、多くの塊群を生成し、距離の範囲に対応させ、実際に距離を演算して割り当てて描画することができるものの、あまりもNを大きくした場合には、逆に距離の範囲の細分化によるロード、アンロードの多発により迅速性が保たれないことに留意したい。
【0034】
また、本実施形態で説明した処理の流れは一例であり、例えば、前記ステップ204の判定を、図10に示すように、前記ステップ201以前に行うことで、全ての処理が視野内にある塊についてのみになされることにより、全体としての処理量を低減することができる。さらに、全ての塊について割り当てを行った後に、一気に描画、テクスチャマッピングを行うこともできる。
【0035】
[WWWを用いた拡張]
また、本実施形態に係る描画装置は、コンピュータ上で構築されるWebページを閲覧するため、具体的には、インターネットからHTMLファイルや画像ファイル、音楽ファイルなどをダウンロードし、レイアウトを解析して表示・再生する装置(いわゆるブラウザ又はWebブラウザ)上に構築することもでき、WWW(World Wide Web)による情報送信機能を持った装置であるWebサーバから描画装置を構成するバイナリデータ、DEMデータ及びオルソフォトをHTMLファイルと共にネットワークを介してブラウザに送信する構成にすることもできる。ブラウザはこれらの情報を受け取り、HTMLをブラウザ内に表示すると共に、バイナリデータにより描画装置を構築し、DEMデータ及びオルソフォトを用いて上記と同様にブラウザ内に描画を行うことができる。より具体的な構成例としては、JAVA対応のブラウザが構築されているコンピュータに、GL4JAVAが動作するように動的ライブラリ(Dynamic Link Library)を格納し、Webサーバからバイナリデータ(Javaバイトコードと呼ばれる中間コード)をapplication/x-java-appletのメディアタイプで送信し、描画装置をブラウザ上に構築する。この場合は、全てクライアント側で描画装置の動作を行っているのであるが、Javaサーブレットを用いて、Webサーバで描画部以外の動作の一部又は全部を担うこともできる。
【0036】
このようにブラウザ上に描画装置を構築し、DEMデータ及びオルソフォトを送信する過程を踏む場合には、相当の通信速度が必要となる。しかしながら、必ずしもブラウザを構築しているコンピュータがかかる環境下にあるとは限らないので、既に間引いたDEMデータをWebサーバ側からブラウザ側に送信することもできる。この場合、通信速度に合ったデータ量のDEMデータを送信することが好ましい。具体的には、速い通信速度では高品質のDEMデータを、遅い通信速度では低品質のDEMデータ(間引き回数が多い)を送信するようにする。
【0037】
また、ブラウザ側に送信するデータは、JPEG等の圧縮方法を利用して、WWWサーバ側で圧縮し、ブラウザ側で伸張する構成にすることもできる。
また、ブラウザ側で一度受信したデータは、ブラウザを構築しているコンピュータ上に記憶しておくこともできる。より具体的には、ブラウザのキャッシュ機能を用いてキャッシュデータとして記憶することができる。
【実施例】
【0038】
前記実施形態に係る描画装置と従来の描画装置との比較実験を行った。コンピュータの環境は、CPUがPentiumIII750[Mz]、メモリ(主記憶装置)がRIMM(Rambus Inline Memory Module)1[GB]、グラフィックボードがE&S社Tornado3000である。
この環境下で、図11(a)に示すように、正方格子の座標が(0、0)から(1024、1024)まであるDEMデータを用い、視点(512、0)から、図に示す視線方向である場合の描画を視野を塊の大きさ毎に行い、描画処理時間を測定した。実験した視野は30[度]、60[度]、90[度]及び120[度]であり、実験した塊の大きさは1×1、2×2、4×4、8×8、16×16、32×32、64×64及び128×128である。
【0039】
以上の条件の実験結果が図11(b)である。全てのDEMデータを視野角30度で描画した場合に要する時間は、0.031[秒]であった。この図11(b)によると、視野角30度に関して、どの視野においても、1×1、2×2、4×4、8×8、16×16、32×32、64×64及び128×128で大幅に描画速度が改善していることがわかる。他の視野角でも同様のことが判明した。
【産業上の利用可能性】
【0040】
本発明に係る描画方法は、景観シュミレーションに適用することができる他、デジタル化された地図データと、統計データや位置の持つ属性情報などの位置に関連したデータとを、統合的に扱う情報システムである3次元GIS(Geographical Information System)に適用することができる。この描画方法を適用した景観シュミレーションにより高速の描画が実現され、現況のシミュレーション、計画構造物の取り込んだ場合のシミュレーション、過去の再現によるシミュレーション、夜景のシミュレーション、風向風速シミュレーション、ダムの湛水深のシミュレーション、河川氾濫シミュレーションなどをより容易に把握することができる。
【図面の簡単な説明】
【0041】
【図1】本発明の実施形態に係る描画装置のブロック構成図である。
【図2】本発明の実施形態に係るDEMデータの分割及び間引きの説明図である。
【図3】本発明の実施形態に係るDEMデータの間引きの説明図である。
【図4】本発明の実施形態に係るDEMデータの間引きの説明図である。
【図5】本発明の実施形態に係る各塊群のDEMデータと距離の範囲との対応である。
【図6】本発明の実施形態に係る各塊群のDEMデータとオルソフォトとの対応である。
【図7】本発明の実施形態に係る視野の判定の説明図である。
【図8】本発明の実施形態に係る描画装置のフローチャート図である。
【図9】本発明の実施形態に係る描画装置のフローチャート図である。
【図10】本発明の実施形態に係る描画装置のフローチャート図である。
【図11】本発明の実施例に係る実験説明図及び実験結果である。
【符号の説明】
【0042】
11 塊分割部
12 間引部
13 距離演算部
14 判定部
15 描画部
16 入力部
17 出力部
21 外部記憶装置
22 主記憶装置
30 ディスプレイ
40 キーボード


【特許請求の範囲】
【請求項1】
所定格子の頂点毎に標高情報が与えられている座標情報を所定数の頂点からなり、領域として重複しない矩形の塊に分割して第1の塊群を作るステップと、塊群から等間隔に頂点の標高情報を削除して新たな塊群を作るステップと、塊中の第1の基準座標と視点との距離の範囲に対応する塊群を塊中の第1の基準座標と視点との距離を求めて割り当てるステップと、塊中の第2の基準座標が視野に入っているか否かを判定する判定ステップと、当該判定ステップで入っていると判定した場合には割り当てられている塊群の塊に基づき描画するステップとを含み、これらのステップをコンピュータが行う、方法。
【請求項2】
コンピュータが、前記判定ステップにおいて視野の範囲を拡大させて判定する、請求項1に記載の方法。
【請求項3】
コンピュータが、塊群から等間隔に頂点の標高情報を削除して新たな塊群を作る前記ステップを、第1の塊群を始めとして複数回行って、第1の塊群も含めて生成した塊群又は塊群の塊をそれぞれファイルにして記憶手段に格納する、前記請求項1に記載の方法。
【請求項4】
視点、視野に変更が生じた場合に、塊の中心座標と視野との距離が長くなって異なる塊中の第1の基準座標と視点との距離の範囲に属するようになったとき、現在割り当てられている塊群の塊から等間隔に頂点の標高情報を削除して新たな塊を生成し割り当てるステップを含み、このステップをコンピュータが行う、前記請求項1に記載の方法。
【請求項5】
視点、視野に変更が生じた場合に、塊の中心座標と視野との距離が短くなって異なる塊の中心座標と視点との距離の範囲に属するようになったとき、ファイル化した塊中の第1の基準座標と視点との距離の範囲に対応する塊群又は塊群の塊を読み出し割り当てるステップを含み、このステップをコンピュータが行う、前記請求項3に記載の方法。
【請求項6】
前記判定ステップにおいて、塊中の第2の基準座標が塊の中心座標である、前記請求項1に記載の方法。
【請求項7】
所定格子の頂点毎に標高情報が与えられている座標情報を所定数の頂点からなり、領域として重複しない矩形の塊に分割して第1の塊群を作る塊分割部と、塊群から等間隔に頂点の標高情報を削除して新たな塊群を作る間引部と、塊中の第1の基準座標と視点との距離の範囲に対応する塊群の塊を塊中の第1の基準座標と視点との距離を求めて割り当てる距離演算部と、塊中の第2の基準座標が視野に入っているか否かを判定する判定部と、当該判定部により視野に入っていると判定された塊を描画する描画部とを備え、
前記間引部が第1の塊群を始めとして複数の塊群を作る、装置。
【請求項8】
所定格子の頂点毎に標高情報が与えられている座標情報を所定数の頂点からなり、領域として重複しない矩形の塊に分割して第1の塊群を作る塊分割部と、塊群から等間隔に頂点の標高情報を削除して新たな塊群を作る間引部と、塊中の第1の基準座標と視点との距離の範囲に対応する塊群の塊を塊中の第1の基準座標と視点との距離を求めて割り当てる距離演算部と、塊中の第2の基準座標が視野に入っているか否かを判定する判定部と、当該判定部により視野に入っていると判定された塊を描画する描画部として、コンピュータを動作させ、前記間引部が第1の塊群を始めとして複数の塊群を作る、プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate


【公開番号】特開2006−215888(P2006−215888A)
【公開日】平成18年8月17日(2006.8.17)
【国際特許分類】
【出願番号】特願2005−29166(P2005−29166)
【出願日】平成17年2月4日(2005.2.4)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.JAVA
【出願人】(505045975)東亜建設技術株式会社 (1)
【Fターム(参考)】