三次元内部空間モデル生成方法、装置及びプログラム
【課題】地図上の建造物の仮想内部空間を生成する。
【解決手段】ユーザから仮想内部空間モデルの生成対象となる建造物の指定を受け付けた場合、三次元地図データを格納している地図DBから当該建造物の形状データを取得する取得ステップと、取得した建造物の形状データと建造物の内部空間を仕切るバウンディングボックス及び建造物のバウンディングボックスに応じて配置される所定のオブジェクトの配置条件を格納するパラメータDBに格納されている配置条件とに基づいて建造物の内部空間にバウンディングボックス及び所定のオブジェクトを配置することにより、建造物の仮想内部空間モデルを生成し、記憶装置に格納する生成ステップとを含む。このようにすれば、三次元地図データを利用して地図上の建造物の仮想内部空間を生成することができる。
【解決手段】ユーザから仮想内部空間モデルの生成対象となる建造物の指定を受け付けた場合、三次元地図データを格納している地図DBから当該建造物の形状データを取得する取得ステップと、取得した建造物の形状データと建造物の内部空間を仕切るバウンディングボックス及び建造物のバウンディングボックスに応じて配置される所定のオブジェクトの配置条件を格納するパラメータDBに格納されている配置条件とに基づいて建造物の内部空間にバウンディングボックス及び所定のオブジェクトを配置することにより、建造物の仮想内部空間モデルを生成し、記憶装置に格納する生成ステップとを含む。このようにすれば、三次元地図データを利用して地図上の建造物の仮想内部空間を生成することができる。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、三次元地図データを利用して地図上の建造物の仮想内部空間を生成する技術に関する。
【背景技術】
【0002】
近年、災害、犯罪、テロなどのリスクに対する事前対策の必要性が高まりつつある。特に、建造物内部で発生する火災、人質を取った立てこもり、建造物内部でのテロリストの潜伏などの緊急事態への対処に向け、例えば事前訓練の実施が必要とされる。この事前訓練としては、実在する建造物を利用した訓練も考えられるが、時間、場所、費用などの面からバーチャル空間を利用したシミュレーションによる訓練が有効と考えられる。
【0003】
一方で、例えば、GIS(Geographic Information System)、カーナビゲーションシステムの発展に伴い、建造物の外観や地形などの三次元データは、現実に近い形で整備されつつある。これに対し、建造物内部のデータは、セキュリティやプライバシー等の問題があり、現実の内部空間のデータを入手又は整備することは困難である。従って、事前訓練のためのシミュレーションを行うには、ユーザが、建造物の仮想内部空間又は現実の内部空間を個々に生成しなければならないため、コストや時間がかかるという問題がある。
【0004】
なお、建物の設計を容易に行う技術としては、例えば、特許第3301704号公報記載の技術がある。具体的には、建物全体の外郭形状および構造部品の情報を定めたスケルトン空間パターンを複数種類記憶したスケルトン空間パターン記憶手段と、単独または複数の組み合わされた部屋空間の3次元モデルおよび部品情報を定めた機能空間パターンを複数種類記憶した機能空間パターン記憶手段と、前記スケルトン空間パターンを表示装置の画面に表示し任意のスケルトン空間パターンを所定の入力によって選択するスケルトン空間選択手段と、画面表示されたスケルトン空間パターンに対して前記機能空間パターンを配置する領域の指定、および配置する機能空間パターンの種類の指定をすることで前記スケルトン空間パターンにその指定された機能空間パターンが組み合わさったプラン情報を作成し、その組み合わさった図を画面に表示する機能空間選択手段とを備えた建物設計装置が開示されている。さらに、上記スケルトン空間パターンにおける上記外郭形状の情報は、3次元モデルとして設定され、上記構造部品は建物強度の設計上に必要となる部品のことであって、柱、梁、および耐力壁パネルを含み、上記スケルトン空間パターンの上記構造部品の情報は、構造部品の種類と配置の情報であることも開示されている。上記公報記載の技術によれば、設計に関する高度な技術がなくても、プランニング等の設計作業を容易に行うことが可能となる。
【0005】
しかし、上記公報では、ユーザ(例えば営業マン)が、建造物内に配置する構造部品の種類や構造部品を配置する領域などを選択しなければならない。さらに、建造物周辺の情報(例えば道路や隣地)もユーザが入力しなければならないため、上記公報記載の技術は、地図上に実在する建造物の内部空間を自動生成するものではない。
【特許文献1】特許第3301704号公報
【発明の開示】
【発明が解決しようとする課題】
【0006】
以上のように、従来技術では、地図上に実在する建造物の内部空間を自動生成することはできない。
【0007】
従って、本発明の目的は、地図上の建造物の仮想内部空間を生成するための技術を提供することである。
【課題を解決するための手段】
【0008】
本発明に係る三次元内部空間モデル生成方法は、地図上の建造物の内部空間を表す仮想内部空間モデルを生成する方法であって、ユーザから仮想内部空間モデルの生成対象となる建造物の指定を受け付けた場合、三次元地図データを格納している地図データベースから当該建造物の形状データを取得する取得ステップと、取得した建造物の形状データと建造物の内部空間を仕切るバウンディングボックス及び建造物のバウンディングボックスに応じて配置される所定のオブジェクトの配置条件を格納するパラメータデータベースに格納されている配置条件とに基づいて建造物の内部空間にバウンディングボックス及び所定のオブジェクトを配置することにより、建造物の仮想内部空間モデルを生成し、記憶装置に格納する生成ステップとを含む。
【0009】
このようにすれば、三次元地図データを利用して地図上の建造物の仮想内部空間を生成することができる。例えば、配置条件を変更すれば、同一の建造物であっても異なる仮想内部空間モデルを生成することができるので、様々な状況を想定したシミュレーションを容易に行うことができるようになる。
【0010】
また、記憶装置に格納に格納された、建造物の仮想内部空間モデルをユーザに提示するステップをさらに含むようにしてもよい。
【0011】
さらに、取得ステップが、地図データベースから建造物の方角に関するデータと建造物周辺の地図データとを取得するステップを含むようにしてもよい。そして、生成ステップにおいて、建造物の方角に関するデータと建造物周辺の地図データとにさらに基づき、建造物の内部空間にバウンディングボックス及び所定のオブジェクトを配置するようにしてもよい。
【0012】
このようにすれば、建造物の方角及び建造物周辺の地図データとに基づき、バウンディングボックス(例えば、フロア空間、居住空間等)及びオブジェクト(例えば、エントランス、扉等)が配置されるので、立地条件を考慮した仮想内部空間モデルを生成することができる。すなわち、より現実に近いシミュレーションを行うことができるようになる。
【0013】
また、取得ステップが、ユーザから仮想内部空間モデルの生成対象として地図上の所定のエリアの指定を受け付けた場合、所定のエリア内に含まれる建造物を特定し、特定された建造物の形状データを地図データベースから取得するステップを含むようにしてもよい。そして、所定のエリア内に含まれる各建造物について、生成ステップを実施するステップをさらに含むようにしてもよい。このようにすれば、あるエリアに含まれる建造物の仮想内部空間モデルを生成することができるので、広範囲を対象としたシミュレーションを容易に行うことができるようになる。
【0014】
さらに、ユーザからバウンディングボックス及び所定のオブジェクトの配置状態を表す既成内部空間モデルを受け付け、記憶装置に格納するステップをさらに含むようにしてもよい。そして、生成ステップが、記憶装置に格納された既成内部空間モデルに基づき、建造物の仮想内部空間モデルを生成し、記憶装置に格納するステップを含むようにしてもよい。このようにすれば、より現実に近い仮想内部空間モデルを生成することができる。
【0015】
また、配置条件が、バウンディングボックス及び所定のオブジェクトを配置する優先順位を含む場合もある。さらに、バウンディングボックスが、フロア空間、居住空間及び付帯空間のうち少なくともいずれかの場合もある。また、所定のオブジェクトが、エントランス、扉、窓、階段、エレベータ、クローゼット、ロッカー及び浴室のうち少なくともいずれかの場合もある。例えば、大きな内部空間(例えば、フロア空間)から配置するような優先順位を設定しておけば、小さな内部空間(例えば、浴室)から配置する場合に比べ、全体のバランスの整ったレイアウトにすることができる。
【0016】
なお、本発明に係る三次元内部空間モデル生成方法をコンピュータに実行させるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブル・ディスク、CD−ROM、光磁気ディスク、半導体メモリ、ハードディスク等の記憶媒体又は記憶装置に格納される。また、ネットワークを介してディジタル信号にて頒布される場合もある。なお、処理途中のデータについては、コンピュータのメモリ等の記憶装置に一時保管される。
【発明の効果】
【0017】
本発明によれば、地図上の建造物の仮想内部空間を生成することができる。
【発明を実施するための最良の形態】
【0018】
本発明の実施の形態の概要を図1に示す。本実施の形態では、例えば、GISやカーナビゲーションシステムで利用されている三次元地図データ(デジタルマップデータと呼ぶ場合もある)から特定の建造物の形状データを取得し、取得した形状データに対して仮想的な内部空間を配置することによって、仮想内部空間モデルを生成する。なお、仮想的な内部空間を配置するにあたっては、ユーザが予め作成した既成内部空間モデルを適用する場合もあれば、配置条件等についての各種パラメータに基づいて配置する場合もある。また、これらを組み合わせる場合もある。
【0019】
本発明の一実施の形態に係る三次元内部空間モデル生成装置の機能ブロック図を図2に示す。三次元内部空間モデル生成装置は、ユーザから配置条件等についてのパラメータの入力を受け付けるパラメータ入力部1と、ユーザからデジタルマップデータの入力を受け付けるデジタルマップデータ入力部3と、パラメータ入力部1が受け付けたパラメータを格納するパラメータDB5と、デジタルマップデータ入力部3が受け付けたデジタルマップデータを格納するデジタルマップDB7と、パラメータDB5とデジタルマップDB7と内部空間モデルDB11とに格納されたデータに基づき仮想内部空間モデルを生成する処理を実施する内部空間モデル生成部9と、ユーザから既成内部空間モデルの入力を受け付ける内部空間モデル入力部13と、内部空間モデル生成部9により生成された仮想内部空間モデルと内部空間モデル入力部13が受け付けた既成内部空間モデルとを格納する内部空間モデルDB11と、ユーザからの操作に応じて、内部空間モデルDB11に格納された仮想内部空間モデルを編集する内部空間モデル編集部15と、内部空間モデルDB11に格納された仮想内部空間モデルを出力する出力部17とを有する。
【0020】
図3及び図4にパラメータDB5に格納されるデータの一例を示す。図3は、バウンディングボックス及びオブジェクトの配置条件データの一例である。なお、本実施の形態では、例えば、フロア空間、居住空間など一定の空間を表すものをバウンディングボックスと呼び、バウンディングボックスに応じて配置される扉、窓などをオブジェクトと呼ぶ。配置条件データは、図3に示すような階層構造となっており、バウンディングボックス及びオブジェクトの階層構造及び優先順位を定義するものである。例えば、フロア空間バウンディングボックスに対して居住空間バウンディングボックスと付帯空間バウンディングボックスとを配置することを示し、さらに居住空間バウンディングボックスを優先して配置することを示す。
【0021】
また、図4は、バウンディングボックス及びオブジェクトを配置する際に使用するパラメータの一例である。図4の例では、既成内部空間モデル使用基準と、建造物種別判定基準と、単一フロアの高さ基準と、居住空間バウンディングボックス作成基準面積と、居住空間バウンディングボックス配置優先方位と、居住空間バウンディングボックス配置割合と、居室バウンディングボックス作成基準面積と、居室バウンディングボックス調整幅と、扉オブジェクト配置基準と、エントランスオブジェクト配置基準と、窓オブジェクト配置基準と、階段オブジェクト配置基準と、エレベータオブジェクト配置基準と、外壁材質基準と、壁材質基準と、扉材質基準と、カラー基準とが含まれる。なお、各パラメータについては、以下で述べる仮想内部空間モデル生成処理と合わせて説明する。
【0022】
図5に内部空間モデルDB11に格納されるデータの一例を示す。図5の例では、モデルIDと、オブジェクトIDと、オブジェクト名と、材質と、カラーと、座標数と、座標1と、座標2と、・・・とが登録されるようになっている。また、座標n(n=1,2,・・・)は、基準位置(0,0,0)からの相対位置を表す。
【0023】
次に、図6乃至図25を用いて、図2に示した三次元内部空間モデル生成装置の処理内容について説明する。まず、デジタルマップデータ入力部3は、ユーザからデジタルマップデータの入力を受け付け、デジタルマップDB7に格納する(図6:ステップS1)。その後、パラメータ入力部1は、ユーザから配置条件データ(図3)及びパラメータ(図4)の入力を受け付け、パラメータDB5に格納する(ステップS3)。
【0024】
そして、内部空間モデル入力部13は、ユーザからの既成内部空間モデルの作成指示に応じて、図7に示すような既成内部空間モデル作成画面を表示装置に表示する。図7の画面では、メニューバー701と、作業領域702と、オブジェクト選択欄703と、2D表示ボタン704と、3D表示ボタン705とが含まれる。例えば、ユーザは、マウスを操作して、任意のオブジェクトをドラッグ・アンド・ドロップし、意図した位置に配置する。また、3D表示ボタン705がクリックされると、内部空間モデル入力部13は、作業領域702内の表示を三次元表示に切り替える。そして、内部空間モデル入力部13は、ユーザから、作成した既成内部空間モデルの登録指示を受け付けると、内部空間モデルDB11に格納する(ステップS5)。なお、既成内部空間モデル使用基準(図4)が「1:既成内部空間モデル使用無し」に設定されている場合(すなわち、仮想内部空間モデル生成処理において、既成内部空間モデルを使用しない場合)には、本ステップはスキップされる。
【0025】
そして、内部空間モデル生成部9は、ユーザからデジタルマップ表示要求を受け付けると、デジタルマップDB7に格納されたデジタルマップデータに基づき、表示装置に地図を表示する。そして、ユーザは、この画面に対して、例えばマウスを操作し、仮想内部空間モデルを生成する対象となるエリアを指定する。内部空間モデル生成部9は、指定エリアを受け付け、指定エリアの情報(例えば、緯度、経度)を一旦記憶装置に格納する(ステップS7)。そして、内部空間モデル生成部9は、仮想内部空間モデル生成処理を実施する(ステップS9)。この処理については、後で説明する。
【0026】
その後、出力部17は、内部空間モデルDB11に格納された、指定エリア内の建造物の仮想内部空間モデルを抽出し、出力する(ステップS11)。例えば、指定エリア内の建造物については、内部空間を認識できるように地図データを更新し、表示装置に表示する。また、ユーザが、生成された仮想内部空間モデルを編集する場合には、編集を開始する旨の指示を入力する。内部空間モデル編集部15は、ユーザから編集を開始する旨の指示を受け付けると、仮想内部空間モデルを表示装置に表示する。例えば図7で示したような画面を表示する。そして、ユーザの操作に応じて、内部空間モデル編集部15は、編集後の仮想内部空間モデルを受け付け、内部空間モデルDB11を更新する(ステップS13)。
【0027】
次に、図8及び図9を用いて、仮想内部空間モデル生成処理について説明する。まず、内部空間モデル生成部9は、パラメータDB5から配置条件データ及びパラメータを読み出す(図8:ステップS15)。そして、内部空間モデル生成部9は、デジタルマップDB7から指定エリアのデジタルマップデータを読み出す(ステップS17)。その後、内部空間モデル生成部9は、指定エリア内に未処理の建造物が存在するか判断する(ステップS19)。もし、指定エリア内に未処理の建造物が存在しなければ(ステップS19:Noルート)、本処理を終了し、元の処理に戻る。
【0028】
一方、指定エリア内に未処理の建造物が存在する場合(ステップS19:Yesルート)、内部空間モデル生成部9は、処理対象となる建造物を特定し、読み出したデジタルマップデータから当該建造物の形状データを取得する(ステップS21)。そして、内部空間モデル生成部9は、建造物種別判定基準に基づいて建造物の種別を判定する(ステップS23)。建造物種別判定基準は、建造物の高さに応じて、一般住宅又は商業建造物であると判定される確率を表す。内部空間モデル生成部9は、この確率に従って乱数を発生させ、一般住宅又は商業建造物であるか判定する。
【0029】
そして、内部空間モデル生成部9は、既成内部空間モデル使用基準に基づき、既成内部空間モデルを使用するか否か判定する(ステップS25)。既成内部空間モデル使用基準は、仮想内部空間モデル生成処理において、既成内部空間モデルを使用するか否かを表す。なお、既成内部空間モデル使用基準に、「2:ランダム」が設定されている場合には、乱数を発生させ、既成内部空間モデルを使用するか否か判定する。
【0030】
もし、既成内部空間モデルを使用する場合(ステップS25:Yesルート)、内部空間モデル生成部9は、使用する既成内部空間モデルを特定し、内部空間モデルDB11から読み出す(ステップS27)。例えば、処理対象の建造物の形状データと形及び大きさが近い既成内部空間モデルを候補として抽出し、乱数を用いて特定する。そして、内部空間モデル生成部9は、図9に示すように、読み出した既成内部空間モデルを処理対象の建造物の外部形状に合うように拡大、縮小又は回転し、建造物に当てはめる(ステップS29)。そして、ステップS19の処理に戻る。
【0031】
一方、既成内部空間モデルを使用しない場合(ステップS25:Noルート)、内部空間モデル生成部9は、仮想内部空間モデルを生成するために、ステップS31乃至ステップS37の処理を実施する。まず、内部空間モデル生成部9は、フロア空間バウンディングボックス配置処理を実施する(ステップS31)。なお、フロア空間バウンディングボックス配置処理では、図10に示すように、形状データ1001を均等の高さに区切ってフロア空間バウンディングボックス1002乃至1005を割り振る。
【0032】
フロア空間バウンディングボックス配置処理については、図11乃至図13を用いて説明する。まず、内部空間モデル生成部9は、処理対象の建造物から未処理の立体物を特定する(図11:ステップS39)。例えば、図13に示すように、建造物が立体物1301と立体物1302とから構成される場合には、立体物1301と立体物1302とに分けて、以下で述べるステップS41乃至ステップS47の処理が実施される。
【0033】
そして、内部空間モデル生成部9は、特定立体物の高さを取得し(ステップS41)、特定立体物の高さと単一フロアの高さ基準とに基づき、フロア数を算出する(ステップS43)。単一フロアの高さ基準は、フロア空間バウンディングボックスの高さを求める基準であり、一般住宅と商業建造物とで別々の値が設定される。その後、内部空間モデル生成部9は、特定立体物の高さと算出したフロア数とに基づき、単一フロアの高さを算出する(ステップS45)。例えば、図12に示すように、立体物の高さ1201を単一フロアの高さ基準1202で除算すると、商(整数値)がフロア数となる。このとき、余り1203が生じる場合がある。本実施の形態では、特定立体物の高さをフロア数で除算することで、余り1203を生じないように単一フロアの高さを算出する。なお、特定立体物の高さが単一フロアの高さ基準より小さい場合には、フロア数は1とする。そして、内部空間モデル生成部9は、算出した単一フロアの高さをフロア空間バウンディングボックスの高さとして、特定立体物にフロア空間バウンディングボックスを配置する(ステップS47)。なお、フロア空間バウンディングボックスの配置状態については、内部空間モデルDB11に格納される。さらに、内部空間モデル生成部9は、外壁材質基準とカラー基準とに基づいて、建造物の外壁の素材及び色を決定する。外壁材質基準は、建造物のフロア数に応じて、建造物の外壁の材質の確率を表す。カラー基準は、建造物に配置されるオブジェクトなどの色の確率を表す。なお、内部空間モデル生成部9は、これらの確率に従って乱数を発生させ、建造物の外壁の素材及び色を決定する。
【0034】
そして、内部空間モデル生成部9は、全ての立体物について処理が完了したか判断する(ステップS49)。もし、全ての立体物について処理が完了していなければ(ステップS49:Noルート)、ステップS39の処理に戻る。一方、全ての立体物について処理が完了した場合(ステップS49:Yesルート)、元の処理に戻る。
【0035】
以上のような処理を実施することにより、均等な高さのフロア空間を配置することができる。また、図13で示したような複数の立体物から構成される建造物の場合でも、フロア空間が複数の立体物に跨って配置されることはないため、自然なレイアウトにすることができる。
【0036】
図8の説明に戻って、内部空間モデル生成部9は、居住空間バウンディングボックス配置処理を実施する(図8:ステップS33)。なお、居住空間バウンディングボックス配置処理では、所定のパラメータ(例えば、居住空間バウンディングボックス配置優先方位等)に従って、図10に示すように、フロア空間バウンディングボックス1005に居住空間バウンディングボックス1006及び付帯空間バウンディングボックス1007を割り振る。なお、フロア空間バウンディングボックス1002乃至1004についても同様に処理する。
【0037】
居住空間バウンディングボックス配置処理については、図14乃至図16を用いて説明する。まず、内部空間モデル生成部9は、未処理のフロア空間バウンディングボックスを特定する(図14:ステップS51)。例えば、最上階のフロアから順に処理するようにしてもよいし、1階から順に処理するようにしてもよい。そして、内部空間モデル生成部9は、他のフロア空間バウンディングボックスと同じ配置にするか判断する(ステップS53)。例えば、高層ビルやマンションなどは、一定のフロア(例えば1階)を除き、各フロアの大まかなレイアウトはそれほど変わらないことが多い。従って、例えば、一定のフロアを除き、大きさが同一のフロア空間バウンディングボックスについては、居住空間バウンディングボックス及び付帯空間バウンディングボックスを同じように配置すればよい。また、所定のパラメータ(図示せず)や乱数などにより、他のフロア空間バウンディングボックスと同じ配置にするか判断してもよい。
【0038】
もし、他のフロア空間バウンディングボックスと同じ配置にすると判断された場合(ステップS53:Yesルート)、内部空間モデル生成部9は、他のフロア空間バウンディングボックスに従い、特定フロア空間バウンディングボックスに居住空間バウンディングボックス及び付帯空間バウンディングボックスを配置する(ステップS55)。なお、居住空間バウンディングボックス及び付帯空間バウンディングボックスの配置状態については、内部空間モデルDB11に格納される。
【0039】
一方、他のフロア空間バウンディングボックスと同じ配置にはしないと判断された場合(ステップS53:Noルート)、内部空間モデル生成部9は、特定フロア空間バウンディングボックスの面積Sを算出する(ステップS57)。例えば、面積Sを求める平面を構成するn個の座標を(x1,y1)、(x2,y2)、・・・、(xn,yn)とすると、以下の式を用いて面積Sを算出する。なお、iは1〜n、(xn+1,yn+1)=(x1,y1)とする。
S=1/2×Σ(xi−xi+1)(yi+yi+1) (1)
【0040】
そして、内部空間モデル生成部9は、算出した面積Sが居住空間バウンディングボックス作成基準面積以上であるか判断する(ステップS59)。居住空間バウンディングボックス作成基準面積は、居住空間バウンディングボックスを配置するために必要な最小限の面積を表す。
【0041】
もし、算出した面積Sが居住空間バウンディングボックス作成基準面積未満の場合(ステップS59:Noルート)、内部空間モデル生成部9は、フロア空間バウンディングボックスに付帯空間バウンディングボックスを配置する(ステップS61)。本実施の形態では、面積Sが、居住空間バウンディングボックス作成基準面積未満の場合は、フロア空間バウンディングボックスに居住空間バウンディングボックスを配置するための十分な空間が存在しないと見なし、居住空間バウンディングボックスは配置しない。
【0042】
一方、算出した面積Sが居住空間バウンディングボックス作成基準面積以上の場合(ステップS59:Yesルート)、内部空間モデル生成部9は、居住空間バウンディングボックス配置優先方位に基づき、居住空間配置方位を特定する(ステップS63)。居住空間バウンディングボックス配置優先方位は、居住空間バウンディングボックスの配置方位の優先順位を表す。例えば、図4では、南、東、西、北の順に設定されている。図示していないが、乱数を用いてランダムに優先順位を特定するようにしてもよい。
【0043】
図15(a)及び(b)を用いて、ステップS63の処理の詳細について説明する。まず、平面ABCD(図15(a))において、内部空間モデル生成部9は、中心Pを始点とし、各線分(線分AB、線分BC、線分CD及び線分DA)と直交するベクトル(ベクトル1501乃至1504)を決定する。そして、内部空間モデル生成部9は、居住空間バウンディングボックス配置優先方位で指定される最も優先度の高い方位と隣り合うベクトルを特定し、それぞれのベクトルまでの角度α1及びα2を算出する。そして、α1とα2を比較し、ベクトルまでの角度が小さい方を居住空間配置方位として特定する。例えば、図15(a)において、最も優先度の高い方位を「南」とすると、隣り合う2つのベクトルとして、ベクトル1501とベクトル1502とが特定され、ベクトル1501までの角度としてα1、ベクトル1502までの角度としてα2がそれぞれ算出される。図15(a)の例では、α1<α2であるため、ベクトル1501の方位が、居住空間配置方位として特定される。なお、いずれかのベクトルが、最も優先度の高い方位と重なる場合には、そのベクトルの方位を居住空間配置方位とする。
【0044】
また、図15(b)に示すように、α1=α2の場合には、次に優先度の高い方位に基づき、居住空間配置方位を特定する。図15(b)では、最も優先度の高い方位(「南」)と隣り合うベクトルとして、ベクトル1505とベクトル1506とが特定され、ベクトル1505までの角度としてα1、ベクトル1506までの角度としてα2がそれぞれ算出される。そして、α1=α2であるため、次に優先度の高い方位(「東」)を特定し、ベクトル1505までの角度としてβ1、ベクトル1506までの角度としてβ2を算出する。図15(b)の例では、β1<β2であるため、ベクトル1505の方位が、居住空間配置方位として特定される。
【0045】
図14の説明に戻って、内部空間モデル生成部9は、特定した居住空間配置方位と居住空間バウンディングボックス配置割合とに基づき、フロア空間バウンディングボックスに居住空間バウンディングボックスと付帯空間バウンディングボックスとを配置する(ステップS65)。居住空間バウンディングボックス配置割合は、フロア空間バウンディングボックス内の居住空間バウンディングボックスが占める割合を表す。なお、居住空間バウンディングボックス及び付帯空間バウンディングボックスの配置状態については、内部空間モデルDB11に格納される。
【0046】
図16を用いて、ステップS65の処理の詳細について説明する。なお、図16において、ベクトル1601は、居住空間配置方位を示すベクトルである。まず、内部空間モデル生成部9は、ベクトル1601と各線分(図16では、線分AB及び線分CD)が交差する点を特定する。図16の例では、ベクトル1601と線分ABとが交差する点を点E、ベクトル1601と線分CDとが交差する点を点Fとする。そして、内部空間モデル生成部9は、線分EF上に、線分EG:線分GFがn:mとなる点Gを特定する。ここで、居住空間配置方位寄りの線分(すなわち、線分EG)の割合nが「居住空間バウンディングボックス配置割合」、もう一方の線分(すなわち、線分GF)の割合mが「1−居住空間バウンディングボックス配置割合」となるようにする。そして、内部空間モデル生成部9は、点Gを通り、ベクトル1601と直交する線分HIを決定する。そして、内部空間モデル生成部9は、居住空間配置方位寄りの平面ABHI上に居住空間バウンディングボックスを配置し、平面IHCD上に付帯空間バウンディングボックスを配置する。さらに、内部空間モデル生成部9は、壁材質基準及びカラー基準に基づき、建造物内部の壁の材質及び色を決定する。壁材質基準は、居住空間バウンディングボックスや付帯空間バウンディングボックスの内部の壁の材質を表す。なお、建造物内部の壁の材質及び色は、建造物内で同一となるようにする。
【0047】
図14の説明に戻って、内部空間モデル生成部9は、全てのフロア空間バウンディングボックスについて処理が完了したか判断する(ステップS67)。もし、全てのフロア空間バウンディングボックスについて処理が完了していなければ(ステップS67:Noルート)、ステップS51の処理に戻る。一方、全てのフロア空間バウンディングボックスについて処理が完了した場合(ステップS67:Yesルート)、居住空間バウンディングボックス配置処理を終了し、元の処理に戻る。
【0048】
以上のような処理を実施することにより、同一建造物であっても、パラメータを変化させることで、居住空間バウンディングボックスと付帯空間バウンディングボックスとを様々なパターンで配置することができる。また、例えば、居住空間を日当たりの良い南向きに配置するなど、自然なレイアウトにすることができる。
【0049】
図8の説明に戻って、内部空間モデル生成部9は、居室バウンディングボックス配置処理を実施する(図8:ステップS35)。居室バウンディングボックス配置処理については、図17及び図18を用いて説明する。まず、内部空間モデル生成部9は、未処理の居住空間バウンディングボックスを特定する(図17:ステップS69)。そして、内部空間モデル生成部9は、他の居住空間バウンディングボックスと同じ配置にするか判断する(ステップS71)。例えば、所定のパラメータ(図示せず)や乱数などにより、他の居住空間バウンディングボックスと同じ配置にするか判断する。
【0050】
もし、他の居住空間バウンディングボックスと同じ配置にすると判断された場合(ステップS71:Yesルート)、内部空間モデル生成部9は、他の居住空間バウンディングボックスに従い、特定居住空間バウンディングボックスに居室バウンディングボックスを配置する(ステップS73)。なお、居室バウンディングボックスの配置状態については、内部空間モデルDB11に格納される。
【0051】
一方、他の居住空間バウンディングボックスと同じ配置にはしないと判断された場合(ステップS71:Noルート)、内部空間モデル生成部9は、特定居住空間バウンディングボックスの面積を算出する(ステップS75)。なお、上で述べた(1)式に、居住空間バウンディングボックスの平面を構成する座標を代入すれば、居住空間バウンディングボックスの面積を算出することができる。そして、内部空間モデル生成部9は、算出した面積と居室バウンディングボックス作成基準面積とに基づき、最大居室数を算出する(ステップS77)。居室バウンディングボックス作成基準面積は、居室バウンディングボックスを配置するために必要な最小限の面積を表す。従って、算出した面積を居室バウンディングボックス作成基準面積で除算すると、商(整数値)が最大居室数となる。なお、居室バウンディングボックス作成基準面積は、居住空間バウンディングボックス作成基準面積より小さな値とする。
【0052】
そして、内部空間モデル生成部9は、算出した最大居室数の範囲内で、乱数により居室数を決定する(ステップS79)。そして、内部空間モデル生成部9は、居室バウンディングボックス調整幅の範囲内で、居室バウンディングボックスに対する調整値を乱数により決定し、各居室の幅を算出する(ステップS81)。居室バウンディングボックス調整幅は、居室バウンディングボックスの幅を調整する調整値の範囲を表す。
【0053】
図18を用いて、ステップS81の処理の詳細について説明する。なお、図18は、平面ABHI上に居住空間バウンディングボックスが配置され、平面IHCD上に付帯空間バウンディングボックスが配置されており、居住空間バウンディングボックスに居室バウンディングボックス1801乃至1803(居室数:3)が配置される場合の例を示す。また、図18において、l1は、居室バウンディングボックス1801に対する調整値、l2は、居室バウンディングボックス1802に対する調整値を表す。まず、内部空間モデル生成部9は、乱数により、調整値l1及びl2を決定する。そして、居住空間バウンディングボックスと付帯空間バウンディングボックスとの境界線(線分HI)の長さLを、居室数で除算することで、居室バウンディングボックスを均等に配置した場合の幅(=L/3)を算出する。そして、算出した幅を調整値l1で調整することにより、居室バウンディングボックス1801の幅を算出する。すなわち、L/3+l1が、居室バウンディングボックス1801の幅となる。同様に、算出した幅を調整値l2で調整することにより、居室バウンディングボックス1802の幅を算出する。すなわち、L/3+l2が、居室バウンディングボックス1802の幅となる。また、居室バウンディングボックス1803の幅は、長さLから居室バウンディングボックス1801と居室バウンディングボックス1802との幅を減算することにより、算出する。すなわち、L−(L/3+l1)−(L/3+l2)が、居室バウンディングボックス1803の幅となる。
【0054】
図17の説明に戻って、内部空間モデル生成部9は、算出した各居室バウンディングボックスの幅に基づき、居室バウンディングボックスを配置する(ステップS83)。なお、居室バウンディングボックスの配置状態については、内部空間モデルDB11に格納される。また、内部空間モデル生成部9は、乱数により、居室バウンディングボックスの用途を特定する(ステップS85)。用途としては、例えば、事務室、会議室、リビング、洋室、和室、寝室などがある。そして、内部空間モデル生成部9は、全ての居住空間バウンディングボックスについて処理が完了したか判断する(ステップS87)。もし、全ての居住空間バウンディングボックスについて処理が完了していなければ(ステップS87:Noルート)、ステップS69の処理に戻る。一方、全ての居住空間バウンディングボックスについて処理が完了した場合(ステップS87:Yesルート)、居室バウンディングボックス配置処理を終了し、元の処理に戻る。
【0055】
図8の説明に戻って、内部空間モデル生成部9は、オブジェクト配置処理を実施する(図8:ステップS37)。オブジェクト配置処理については、図19乃至図25を用いて説明する。まず、内部空間モデル生成部9は、未処理のフロアを特定する(図19:ステップS89)。そして、内部空間モデル生成部9は、他のフロアと同じ配置にするか判断する(ステップS91)。例えば、以下で説明する階段やエレベータなどは、各フロアにおいて共通の位置に配置されるため、他のフロアと同じようにオブジェクトを配置すればよい。また、所定のパラメータ(図示せず)や乱数などにより、他のフロアと同じ配置にするか判断してもよい。
【0056】
もし、他のフロアと同じ配置にすると判断された場合(ステップS91:Yesルート)、内部空間モデル生成部9は、他のフロアにおけるオブジェクトの配置状態に従い、特定フロアにオブジェクトを配置する(ステップS93)。なお、オブジェクトの配置状態については、内部空間モデルDB11に格納される。そして、端子Aを介して、ステップS121(図23)の処理に移行する。
【0057】
一方、他のフロアと同じ配置にはしないと判断された場合(ステップS91:Noルート)、内部空間モデル生成部9は、特定フロアに配置されたバウンディングボックスを取得する(ステップS95)。そして、内部空間モデル生成部9は、特定フロアが1階であるか判断する(ステップS97)。もし、特定フロアが1階でなければ(ステップS97:Noルート)、ステップS99の処理をスキップし、ステップS101の処理に移行する。一方、特定フロアが1階である場合には(ステップS97:Yesルート)、内部空間モデル生成部9は、エントランスオブジェクト配置基準に基づき、付帯空間バウンディングボックスの外壁面にエントランスオブジェクトを配置する(ステップS99)。エントランスオブジェクト配置基準は、エントランスオブジェクトの高さ及び幅の基準値及び調整値を表す。なお、エントランスオブジェクトの配置状態については、内部空間モデルDB11に格納される。
【0058】
図20を用いて、ステップS99の処理の詳細について説明する。なお、図20では、平面ABHI上に居住空間バウンディングボックスが配置され、平面IHCD上に付帯空間バウンディングボックスが配置されているものとする。まず、内部空間モデル生成部9は、付帯空間バウンディングボックスの外壁面を特定する。図20の例では、線分HCと線分CDと線分DIとが、付帯空間バウンディングボックスの外壁面として特定される。そして、内部空間モデル生成部9は、建造物周辺の地図データを取得し、当該地図データに基づいて、特定した外壁面のうち、道路に接する外壁面を特定する。図20の例では、線分HCと線分CDとが、道路に接する外壁面として特定される。また、内部空間モデル生成部9は、道路から道路に接する外壁面までの距離を算出する。図20の例では、道路から線分CDまでの距離2001と、道路から線分HCまでの距離2002とが算出される。そして、内部空間モデル生成部9は、算出した距離を比較し、道路まで距離の短い外壁面をエントランスオブジェクト配置面として特定する。図20の例では、距離2001<距離2002であるため、線分CDが、エントランスオブジェクト配置面として特定される。そして、内部空間モデル生成部9は、エントランスオブジェクト配置基準に基づき、エントランスオブジェクトの高さ及び幅を決定する。具体的には、乱数により高さ及び幅の調整値を決定し、高さ及び幅の基準値を調整することで算出する。そして、内部空間モデル生成部9は、図20に示すようなエントランスオブジェクト2003を配置する。
【0059】
図19の説明に戻って、内部空間モデル生成部9は、扉オブジェクト配置基準に基づき、居室バウンディングボックスと付帯空間バウンディングボックスとの境界に扉オブジェクトを配置する(ステップS101)。扉オブジェクト配置基準は、扉オブジェクトの高さ及び幅の基準値及び調整値を表す。なお、扉オブジェクトの配置状態については、内部空間モデルDB11に格納される。
【0060】
図21を用いて、ステップS101の処理の詳細について説明する。なお、図21では、平面ABHI上に居室バウンディングボックス2111乃至2113が配置され、平面IHCD上に付帯空間バウンディングボックスが配置されているものとする。まず、内部空間モデル生成部9は、居室バウンディングボックスと付帯空間バウンディングボックスとの境界を特定する。図21の例では、居室バウンディングボックス2111と付帯空間バウンディングボックスとの境界として線分ITが特定され、居室バウンディングボックス2112と付帯空間バウンディングボックスとの境界として線分TUが特定され、居室バウンディングボックス2113と付帯空間バウンディングボックスとの境界として線分UHが特定される。そして、内部空間モデル生成部9は、扉オブジェクト配置基準に基づき、扉オブジェクトの高さ及び幅を決定する。具体的には、乱数により、扉オブジェクトの調整値(高さ、幅)を決定し、基準値(高さ、幅)を調整することで扉オブジェクトの高さ及び幅を算出する。さらに、内部空間モデル生成部9は、扉材質基準及びカラー基準に基づき、扉の材質及び色を決定する。なお、扉の材質及び色は、建造物内で同一となるようにする。そして、内部空間モデル生成部9は、各境界(図21では、線分IT、線分TU及び線分UH)に扉オブジェクトを配置する。このとき、配置位置(例えば、左寄り、右寄り、中央など)を乱数により決定する。例えば、図21において、扉オブジェクト2101は、線分IT上の左寄りに配置され、扉オブジェクト2102は、線分TU上の中央に配置され、扉オブジェクト2103は、線分UH上の右寄りに配置されている。
【0061】
また、居室バウンディングボックスと付帯空間バウンディングボックスとの境界に扉オブジェクトを配置できない場合には(例えば、扉オブジェクトの幅が境界の長さより大きい場合)、その居室バウンディングボックスと、隣接する居室バウンディングボックスとの境界に扉オブジェクトを配置すればよい。例えば、図21において、線分TU上に扉オブジェクトを配置することができないと判断された場合には、居室バウンディングボックス2112と居室バウンディングボックス2111との境界、及び居室バウンディングボックス2112と居室バウンディングボックス2113との境界のうち少なくとも一方に扉オブジェクトを配置する。
【0062】
図19の説明に戻って、内部空間モデル生成部9は、特定フロアの外壁全長と窓オブジェクト配置基準とに基づき、配置可能な窓の最大数(最大窓数)を算出する(ステップS103)。窓オブジェクト配置基準は、窓オブジェクトの高さ、幅及び設置高の基準値及び調整値を表す。ここでは、乱数により窓オブジェクトの調整値(幅)を決定し、基準値(幅)を調整することで窓オブジェクトの幅を算出し、特定フロアの外壁全長を窓オブジェクトの幅で除算することで、最大窓数を算出する。
【0063】
そして、内部空間モデル生成部9は、算出した最大窓数の範囲内で、乱数により窓オブジェクトの配置数を決定する(ステップS105)。さらに、内部空間モデル生成部9は、乱数により窓オブジェクトの調整値(高さ)を決定し、基準値(高さ)を調整することで窓オブジェクトの高さを算出する。そして、内部空間モデル生成部9は、窓オブジェクトの配置位置を決定し、配置する(ステップS107)。なお、窓オブジェクトの配置状態については、内部空間モデルDB11に格納される。
【0064】
図22を用いて、ステップS107の処理の詳細について説明する。なお、図22では、平面ABHI上に居住空間バウンディングボックスが配置され、平面IHCD上に付帯空間バウンディングボックスが配置されているものとする。まず、内部空間モデル生成部9は、ステップS105において決定した窓オブジェクトの配置数の内訳(居住空間バウンディングボックスに対する配置数、付帯空間バウンディングボックスに対する配置数)を乱数により決定する。さらに、内部空間モデル生成部9は、居住空間バウンディングボックスに対する配置数の内訳(居住空間バウンディングボックスの各外壁面に対する配置数)を乱数により決定する。また、同様に、内部空間モデル生成部9は、付帯空間バウンディングボックスに対する配置数の内訳(付帯空間バウンディングボックスの各外壁面に対する配置数)を乱数により決定する。例えば、図22では、窓オブジェクトの配置数が6であり、内訳として、居住空間バウンディングボックスに対する配置数は5、付帯空間バウンディングボックスに対する配置数は1に決定される。さらに、居住空間バウンディングボックスに対する配置数の内訳として、線分ABに対する配置数は3、線分BHに対する配置数は1、線分AIに対する配置数は1に決定される。また、付帯空間バウンディングボックスに対する配置数の内訳として、線分CDに対する配置数は1、線分CHに対する配置数は0、線分DIに対する配置数は0に決定される。
【0065】
そして、内部空間モデル生成部9は、居住空間バウンディングボックス及び付帯空間バウンディングボックスの各外壁面について、配置間隔が等しくなるように窓オブジェクトの配置位置を決定する。このとき、乱数により窓オブジェクトの調整値(設置高)を決定し、基準値(設置高)を調整することで窓オブジェクトの設置高も決定する。例えば、図22において、線分AB上には、窓オブジェクト2201乃至2203が等間隔で配置されている。また、線分AI上には、窓オブジェクト2204が配置され、線分BH上には、窓オブジェクト2205が配置されている。さらに、線分CD上には、エントランスオブジェクト2208と重ならないように、窓オブジェクト2206が配置されている。もし、他のオブジェクト(例えば、エントランスオブジェクト)と重なるような場合には、他の外壁面に配置するように調整すればよい。また、各フロアにおける窓オブジェクトの配置位置は、建造物内で同一となるようにする。
【0066】
図19の説明に戻って、ステップS107の処理の後、内部空間モデル生成部9は、端子Bを介してステップS109(図23)の処理に移行する。図23を用いて、図19に示したオブジェクト配置処理の続きを説明する。端子Bの後、内部空間モデル生成部9は、フロア数が2以上であるか判断する(図23:ステップS109)。もし、フロア数が1の場合は(ステップS109:Noルート)、ステップS111乃至ステップS119の処理をスキップし、ステップS121の処理に移行する。本実施の形態では、フロア数が1の場合(すなわち、建造物が1階建ての場合)には、階段オブジェクト及びエレベータオブジェクトは配置しない。
【0067】
一方、フロア数が2以上の場合には(ステップS109:Yesルート)、内部空間モデル生成部9は、乱数により階段の種別を決定する(ステップS111)。例えば、図4では、直階段、折返し階段、螺旋階段の3種類が設定されており、この中から決定する。そして、内部空間モデル生成部9は、階段オブジェクトの配置位置を決定し、配置する(ステップS113)。なお、階段オブジェクトの配置状態については、内部空間モデルDB11に格納される。
【0068】
図24を用いて、ステップS113の処理の詳細について説明する。ここでは、折返し階段を配置する場合について説明する。なお、図24では、平面ABHI上に居住空間バウンディングボックスが配置され、平面IHCD上に付帯空間バウンディングボックスが配置されているものとする。まず、内部空間モデル生成部9は、階段オブジェクト配置基準に基づき、階段オブジェクトの幅及び高さを決定する。そして、内部空間モデル生成部9は、階段オブジェクトにおける、階段へのアプローチエリアの反対面(図24における壁設置面)が、付帯空間バウンディングボックスの内壁と接するように階段オブジェクトを配置する。このとき、例えば、点Cを始点として、時計回り(点D、点I、点Hの順)に走査し、階段オブジェクトが他のオブジェクトと重ならない位置を、階段オブジェクトの配置位置とする。例えば図24のように階段オブジェクト2401が配置される。また、各フロアにおける階段オブジェクトの配置位置は、建造物内で同一となるようにする。
【0069】
図23の説明に戻って、内部空間モデル生成部9は、エレベータオブジェクト配置基準に従って乱数を発生させ、エレベータの配置数を決定する(ステップS115)。エレベータオブジェクト配置基準は、建造物のフロア数に応じて、エレベータの設置確率を表す。
【0070】
そして、内部空間モデル生成部9は、算出したエレベータの配置数が1以上であるか判断する(ステップS117)。もし、エレベータの配置数が0の場合は(ステップS117:Noルート)、ステップS119の処理をスキップし、ステップS121の処理に移行する。一方、エレベータの配置数が1以上の場合は(ステップS117:Yesルート)、内部空間モデル生成部9は、エレベータオブジェクトの配置位置を決定し、配置する(ステップS119)。なお、エレベータオブジェクトの配置状態については、内部空間モデルDB11に格納される。
【0071】
図25を用いて、ステップS119の処理の詳細について説明する。ここでは、エレベータ2基を配置する場合について説明する。なお、図25では、平面ABHI上に居住空間バウンディングボックスが配置され、平面IHCD上に付帯空間バウンディングボックスが配置されているものとする。まず、内部空間モデル生成部9は、エレベータの配置数からエレベータオブジェクトの幅を決定する。そして、内部空間モデル生成部9は、エレベータオブジェクトにおける、エレベータへのアプローチエリアの反対面(図25における壁設置面)が、付帯空間バウンディングボックスの内壁と接するようにエレベータオブジェクトを配置する。このとき、階段オブジェクトの場合と同様に、点Cを始点として、時計回り(点D、点I、点Hの順)に走査し、エレベータオブジェクトが他のオブジェクトと重ならない位置を、エレベータオブジェクトの配置位置とする。例えば図25のようにエレベータオブジェクト2551が配置される。また、各フロアにおけるエレベータオブジェクトの配置位置は、建造物内で同一となるようにする。
【0072】
図23の説明に戻って、内部空間モデル生成部9は、全てのフロアについて処理が完了したか判断する(ステップS121)。もし、全てのフロアについて処理が完了していなければ(ステップS121:Noルート)、端子Cを介してステップS89(図19)の処理に戻る。一方、全てのフロアについて処理が完了した場合(ステップS121:Yesルート)、オブジェクト配置処理を終了し、元の処理に戻る。
【0073】
図8の説明に戻って、ステップS37の処理(オブジェクト配置処理)の後、ステップS19の処理に戻る。
【0074】
以上のような処理を実施することにより、三次元地図データを利用して地図上の建造物の仮想内部空間を生成することができる。また、同一の建造物であっても、パラメータを変化させれば、異なる仮想内部空間モデルが生成されるので、コストや時間をかけずに様々な仮想内部空間モデルを生成することができる。よって、様々な状況を想定したシミュレーションを容易に行うことができるようになる。
【0075】
以上本発明の実施の形態を説明したが、本発明はこれに限定されるものではない。例えば、上で説明した機能ブロック図は必ずしも実際のプログラムモジュール構成に対応するものではない。さらに、処理フローにおいても、処理結果が変わらなければ処理の順番を入れ替えることも可能である。さらに、並列に実行させるようにしても良い。
【0076】
また、図3に示したバウンディングボックス及びオブジェクトの階層構造及び優先順位に従って、処理フローを説明したが、階層構造又は優先順位を変更した場合には、階層構造又は優先順位に応じて処理順序も変更される。
【0077】
また、上で説明したテーブルの構成は一例であって、必ずしも上記のような構成でなければならないわけではない。さらに、上記以外のパラメータを用いるようにしてもよい。また、上記以外のオブジェクトを配置する場合もある。
【0078】
なお、三次元内部空間モデル生成装置はコンピュータ装置であって、図26に示すように当該コンピュータ装置においては、メモリ2501(記憶部)とCPU2503(処理部)とハードディスク・ドライブ(HDD)2505と表示装置2509に接続される表示制御部2507とリムーバブル・ディスク2511用のドライブ装置2513と入力装置2515とネットワークに接続するための通信制御部2517とがバス2519で接続されている。オペレーティング・システム(OS)及びWebブラウザを含むアプリケーション・プログラムは、HDD2505に格納されており、CPU2503により実行される際にはHDD2505からメモリ2501に読み出される。必要に応じてCPU2503は、表示制御部2507、通信制御部2517、ドライブ装置2513を制御して、必要な動作を行わせる。また、処理途中のデータについては、メモリ2501に格納され、必要があればHDD2505に格納される。このようなコンピュータは、上で述べたCPU2503、メモリ2501などのハードウエアとOS及び必要なアプリケーション・プログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
【0079】
(付記1)
地図上の建造物の内部空間を表す仮想内部空間モデルを生成する方法であって、
ユーザから前記仮想内部空間モデルの生成対象となる前記建造物の指定を受け付けた場合、三次元地図データを格納している地図データベースから当該建造物の形状データを取得する取得ステップと、
取得した前記建造物の形状データと前記建造物の内部空間を仕切るバウンディングボックス及び前記建造物の前記バウンディングボックスに応じて配置される所定のオブジェクトの配置条件を格納するパラメータデータベースに格納されている前記配置条件とに基づいて前記建造物の内部空間に前記バウンディングボックス及び前記所定のオブジェクトを配置することにより、前記建造物の前記仮想内部空間モデルを生成し、記憶装置に格納する生成ステップと、
を含み、コンピュータにより実行される三次元内部空間モデル生成方法。
【0080】
(付記2)
前記記憶装置に格納に格納された、前記建造物の前記仮想内部空間モデルを前記ユーザに提示するステップ
をさらに含む付記1記載の三次元内部空間モデル生成方法。
【0081】
(付記3)
前記取得ステップが、
前記地図データベースから前記建造物の方角に関するデータと前記建造物周辺の地図データとを取得するステップ
を含み、
前記生成ステップにおいて、前記建造物の方角に関するデータと前記建造物周辺の地図データとにさらに基づき、前記建造物の内部空間に前記バウンディングボックス及び前記所定のオブジェクトを配置する
付記1記載の三次元内部空間モデル生成方法。
【0082】
(付記4)
前記取得ステップが、
前記ユーザから前記仮想内部空間モデルの生成対象として前記地図上の所定のエリアの指定を受け付けた場合、前記所定のエリア内に含まれる前記建造物を特定し、特定された前記建造物の形状データを前記地図データベースから取得するステップ
を含み、
前記所定のエリア内に含まれる各前記建造物について、前記生成ステップを実施するステップ
をさらに含む付記1記載の三次元内部空間モデル生成方法。
【0083】
(付記5)
前記ユーザから前記バウンディングボックス及び前記所定のオブジェクトの配置状態を表す既成内部空間モデルを受け付け、前記記憶装置に格納するステップ、
をさらに含み、
前記生成ステップが、
前記記憶装置に格納された前記既成内部空間モデルに基づき、前記建造物の前記仮想内部空間モデルを生成し、前記記憶装置に格納するステップ
を含む、付記1記載の三次元内部空間モデル生成方法。
【0084】
(付記6)
前記配置条件が、前記バウンディングボックス及び前記所定のオブジェクトを配置する優先順位を含む
付記1記載の三次元内部空間モデル生成方法。
【0085】
(付記7)
前記バウンディングボックスが、フロア空間、居住空間、付帯空間及び居室のうち少なくともいずれかである
付記1記載の三次元内部空間モデル生成方法。
【0086】
(付記8)
前記所定のオブジェクトが、エントランス、扉、窓、階段、エレベータ、クローゼット、ロッカー及び浴室のうち少なくともいずれかである
付記1記載の三次元内部空間モデル生成方法。
【0087】
(付記9)
地図上の建造物の内部空間を表す仮想内部空間モデルを生成するための処理をコンピュータに実行させるためのプログラムであって、
ユーザから前記仮想内部空間モデルの生成対象となる前記建造物の指定を受け付けた場合、三次元地図データを格納している地図データベースから当該建造物の形状データを取得する取得ステップと、
取得した前記建造物の形状データと前記建造物の内部空間を仕切るバウンディングボックス及び前記建造物の前記バウンディングボックスに応じて配置される所定のオブジェクトの配置条件を格納するパラメータデータベースに格納されている前記配置条件とに基づいて前記建造物の内部空間に前記バウンディングボックス及び前記所定のオブジェクトを配置することにより、前記建造物の前記仮想内部空間モデルを生成し、記憶装置に格納する生成ステップと、
をコンピュータに実行させるための三次元内部空間モデル生成プログラム。
【0088】
(付記10)
地図上の建造物の内部空間を表す仮想内部空間モデルを生成する装置であって、
三次元地図データを格納している地図データベースと、
前記建造物の内部空間を仕切るバウンディングボックス及び前記建造物の前記バウンディングボックスに応じて配置される所定のオブジェクトの配置条件を格納するパラメータデータベースと、
ユーザから前記仮想内部空間モデルの生成対象となる前記建造物の指定を受け付けた場合、前記地図データベースから当該建造物の形状データを取得する取得手段と、
取得した前記建造物の形状データと前記パラメータデータベースに格納されている前記配置条件とに基づいて前記建造物の内部空間に前記バウンディングボックス及び前記所定のオブジェクトを配置することにより、前記建造物の前記仮想内部空間モデルを生成し、記憶装置に格納する生成手段と、
を有する三次元内部空間モデル生成装置。
【図面の簡単な説明】
【0089】
【図1】本発明の実施の形態の概要を説明するための図である。
【図2】本発明の実施の形態における三次元内部空間モデル生成装置の機能ブロック図を示す図である。
【図3】パラメータDBに格納される配置条件データの一例を示す図である。
【図4】パラメータDBに格納されるパラメータの一例を示す図である。
【図5】内部空間モデルDBに格納されるデータの一例を示す図である。
【図6】本発明の実施の形態における処理フローを示す図である。
【図7】既成内部空間モデル作成画面の画面例を示す図である。
【図8】仮想内部空間モデル生成処理の処理フローを示す図である。
【図9】既成内部空間モデルを使用する場合の処理を説明するための図である。
【図10】バウンディングボックスを配置する処理を説明するための図である。
【図11】フロア空間バウンディングボックス配置処理の処理フローを示す図である。
【図12】フロア空間バウンディングボックスを配置する処理を説明するための図である。
【図13】フロア空間バウンディングボックスを配置する処理を説明するための図である。
【図14】居住空間バウンディングボックス配置処理の処理フローを示す図である。
【図15】(a)及び(b)は、居住空間配置方位を特定する処理を説明するための図である。
【図16】居住空間バウンディングボックスを配置する処理を説明するための図である。
【図17】居室バウンディングボックス配置処理の処理フローを示す図である。
【図18】居室バウンディングボックスを配置する処理を説明するための図である。
【図19】オブジェクト配置処理の処理フロー(第1の部分)を示す図である。
【図20】エントランスオブジェクトを配置する処理を説明するための図である。
【図21】扉オブジェクトを配置する処理を説明するための図である。
【図22】窓オブジェクトを配置する処理を説明するための図である。
【図23】オブジェクト配置処理の処理フロー(第2の部分)を示す図である。
【図24】階段オブジェクトを配置する処理を説明するための図である。
【図25】エレベータオブジェクトを配置する処理を説明するための図である。
【図26】コンピュータの機能ブロック図である。
【符号の説明】
【0090】
1 パラメータ入力部 3 デジタルマップデータ入力部
5 パラメータDB 7 デジタルマップDB
9 内部空間モデル生成部 11 内部空間モデルDB
13 内部空間モデル入力部 15 内部空間モデル編集部
17 出力部
【技術分野】
【0001】
本発明は、三次元地図データを利用して地図上の建造物の仮想内部空間を生成する技術に関する。
【背景技術】
【0002】
近年、災害、犯罪、テロなどのリスクに対する事前対策の必要性が高まりつつある。特に、建造物内部で発生する火災、人質を取った立てこもり、建造物内部でのテロリストの潜伏などの緊急事態への対処に向け、例えば事前訓練の実施が必要とされる。この事前訓練としては、実在する建造物を利用した訓練も考えられるが、時間、場所、費用などの面からバーチャル空間を利用したシミュレーションによる訓練が有効と考えられる。
【0003】
一方で、例えば、GIS(Geographic Information System)、カーナビゲーションシステムの発展に伴い、建造物の外観や地形などの三次元データは、現実に近い形で整備されつつある。これに対し、建造物内部のデータは、セキュリティやプライバシー等の問題があり、現実の内部空間のデータを入手又は整備することは困難である。従って、事前訓練のためのシミュレーションを行うには、ユーザが、建造物の仮想内部空間又は現実の内部空間を個々に生成しなければならないため、コストや時間がかかるという問題がある。
【0004】
なお、建物の設計を容易に行う技術としては、例えば、特許第3301704号公報記載の技術がある。具体的には、建物全体の外郭形状および構造部品の情報を定めたスケルトン空間パターンを複数種類記憶したスケルトン空間パターン記憶手段と、単独または複数の組み合わされた部屋空間の3次元モデルおよび部品情報を定めた機能空間パターンを複数種類記憶した機能空間パターン記憶手段と、前記スケルトン空間パターンを表示装置の画面に表示し任意のスケルトン空間パターンを所定の入力によって選択するスケルトン空間選択手段と、画面表示されたスケルトン空間パターンに対して前記機能空間パターンを配置する領域の指定、および配置する機能空間パターンの種類の指定をすることで前記スケルトン空間パターンにその指定された機能空間パターンが組み合わさったプラン情報を作成し、その組み合わさった図を画面に表示する機能空間選択手段とを備えた建物設計装置が開示されている。さらに、上記スケルトン空間パターンにおける上記外郭形状の情報は、3次元モデルとして設定され、上記構造部品は建物強度の設計上に必要となる部品のことであって、柱、梁、および耐力壁パネルを含み、上記スケルトン空間パターンの上記構造部品の情報は、構造部品の種類と配置の情報であることも開示されている。上記公報記載の技術によれば、設計に関する高度な技術がなくても、プランニング等の設計作業を容易に行うことが可能となる。
【0005】
しかし、上記公報では、ユーザ(例えば営業マン)が、建造物内に配置する構造部品の種類や構造部品を配置する領域などを選択しなければならない。さらに、建造物周辺の情報(例えば道路や隣地)もユーザが入力しなければならないため、上記公報記載の技術は、地図上に実在する建造物の内部空間を自動生成するものではない。
【特許文献1】特許第3301704号公報
【発明の開示】
【発明が解決しようとする課題】
【0006】
以上のように、従来技術では、地図上に実在する建造物の内部空間を自動生成することはできない。
【0007】
従って、本発明の目的は、地図上の建造物の仮想内部空間を生成するための技術を提供することである。
【課題を解決するための手段】
【0008】
本発明に係る三次元内部空間モデル生成方法は、地図上の建造物の内部空間を表す仮想内部空間モデルを生成する方法であって、ユーザから仮想内部空間モデルの生成対象となる建造物の指定を受け付けた場合、三次元地図データを格納している地図データベースから当該建造物の形状データを取得する取得ステップと、取得した建造物の形状データと建造物の内部空間を仕切るバウンディングボックス及び建造物のバウンディングボックスに応じて配置される所定のオブジェクトの配置条件を格納するパラメータデータベースに格納されている配置条件とに基づいて建造物の内部空間にバウンディングボックス及び所定のオブジェクトを配置することにより、建造物の仮想内部空間モデルを生成し、記憶装置に格納する生成ステップとを含む。
【0009】
このようにすれば、三次元地図データを利用して地図上の建造物の仮想内部空間を生成することができる。例えば、配置条件を変更すれば、同一の建造物であっても異なる仮想内部空間モデルを生成することができるので、様々な状況を想定したシミュレーションを容易に行うことができるようになる。
【0010】
また、記憶装置に格納に格納された、建造物の仮想内部空間モデルをユーザに提示するステップをさらに含むようにしてもよい。
【0011】
さらに、取得ステップが、地図データベースから建造物の方角に関するデータと建造物周辺の地図データとを取得するステップを含むようにしてもよい。そして、生成ステップにおいて、建造物の方角に関するデータと建造物周辺の地図データとにさらに基づき、建造物の内部空間にバウンディングボックス及び所定のオブジェクトを配置するようにしてもよい。
【0012】
このようにすれば、建造物の方角及び建造物周辺の地図データとに基づき、バウンディングボックス(例えば、フロア空間、居住空間等)及びオブジェクト(例えば、エントランス、扉等)が配置されるので、立地条件を考慮した仮想内部空間モデルを生成することができる。すなわち、より現実に近いシミュレーションを行うことができるようになる。
【0013】
また、取得ステップが、ユーザから仮想内部空間モデルの生成対象として地図上の所定のエリアの指定を受け付けた場合、所定のエリア内に含まれる建造物を特定し、特定された建造物の形状データを地図データベースから取得するステップを含むようにしてもよい。そして、所定のエリア内に含まれる各建造物について、生成ステップを実施するステップをさらに含むようにしてもよい。このようにすれば、あるエリアに含まれる建造物の仮想内部空間モデルを生成することができるので、広範囲を対象としたシミュレーションを容易に行うことができるようになる。
【0014】
さらに、ユーザからバウンディングボックス及び所定のオブジェクトの配置状態を表す既成内部空間モデルを受け付け、記憶装置に格納するステップをさらに含むようにしてもよい。そして、生成ステップが、記憶装置に格納された既成内部空間モデルに基づき、建造物の仮想内部空間モデルを生成し、記憶装置に格納するステップを含むようにしてもよい。このようにすれば、より現実に近い仮想内部空間モデルを生成することができる。
【0015】
また、配置条件が、バウンディングボックス及び所定のオブジェクトを配置する優先順位を含む場合もある。さらに、バウンディングボックスが、フロア空間、居住空間及び付帯空間のうち少なくともいずれかの場合もある。また、所定のオブジェクトが、エントランス、扉、窓、階段、エレベータ、クローゼット、ロッカー及び浴室のうち少なくともいずれかの場合もある。例えば、大きな内部空間(例えば、フロア空間)から配置するような優先順位を設定しておけば、小さな内部空間(例えば、浴室)から配置する場合に比べ、全体のバランスの整ったレイアウトにすることができる。
【0016】
なお、本発明に係る三次元内部空間モデル生成方法をコンピュータに実行させるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブル・ディスク、CD−ROM、光磁気ディスク、半導体メモリ、ハードディスク等の記憶媒体又は記憶装置に格納される。また、ネットワークを介してディジタル信号にて頒布される場合もある。なお、処理途中のデータについては、コンピュータのメモリ等の記憶装置に一時保管される。
【発明の効果】
【0017】
本発明によれば、地図上の建造物の仮想内部空間を生成することができる。
【発明を実施するための最良の形態】
【0018】
本発明の実施の形態の概要を図1に示す。本実施の形態では、例えば、GISやカーナビゲーションシステムで利用されている三次元地図データ(デジタルマップデータと呼ぶ場合もある)から特定の建造物の形状データを取得し、取得した形状データに対して仮想的な内部空間を配置することによって、仮想内部空間モデルを生成する。なお、仮想的な内部空間を配置するにあたっては、ユーザが予め作成した既成内部空間モデルを適用する場合もあれば、配置条件等についての各種パラメータに基づいて配置する場合もある。また、これらを組み合わせる場合もある。
【0019】
本発明の一実施の形態に係る三次元内部空間モデル生成装置の機能ブロック図を図2に示す。三次元内部空間モデル生成装置は、ユーザから配置条件等についてのパラメータの入力を受け付けるパラメータ入力部1と、ユーザからデジタルマップデータの入力を受け付けるデジタルマップデータ入力部3と、パラメータ入力部1が受け付けたパラメータを格納するパラメータDB5と、デジタルマップデータ入力部3が受け付けたデジタルマップデータを格納するデジタルマップDB7と、パラメータDB5とデジタルマップDB7と内部空間モデルDB11とに格納されたデータに基づき仮想内部空間モデルを生成する処理を実施する内部空間モデル生成部9と、ユーザから既成内部空間モデルの入力を受け付ける内部空間モデル入力部13と、内部空間モデル生成部9により生成された仮想内部空間モデルと内部空間モデル入力部13が受け付けた既成内部空間モデルとを格納する内部空間モデルDB11と、ユーザからの操作に応じて、内部空間モデルDB11に格納された仮想内部空間モデルを編集する内部空間モデル編集部15と、内部空間モデルDB11に格納された仮想内部空間モデルを出力する出力部17とを有する。
【0020】
図3及び図4にパラメータDB5に格納されるデータの一例を示す。図3は、バウンディングボックス及びオブジェクトの配置条件データの一例である。なお、本実施の形態では、例えば、フロア空間、居住空間など一定の空間を表すものをバウンディングボックスと呼び、バウンディングボックスに応じて配置される扉、窓などをオブジェクトと呼ぶ。配置条件データは、図3に示すような階層構造となっており、バウンディングボックス及びオブジェクトの階層構造及び優先順位を定義するものである。例えば、フロア空間バウンディングボックスに対して居住空間バウンディングボックスと付帯空間バウンディングボックスとを配置することを示し、さらに居住空間バウンディングボックスを優先して配置することを示す。
【0021】
また、図4は、バウンディングボックス及びオブジェクトを配置する際に使用するパラメータの一例である。図4の例では、既成内部空間モデル使用基準と、建造物種別判定基準と、単一フロアの高さ基準と、居住空間バウンディングボックス作成基準面積と、居住空間バウンディングボックス配置優先方位と、居住空間バウンディングボックス配置割合と、居室バウンディングボックス作成基準面積と、居室バウンディングボックス調整幅と、扉オブジェクト配置基準と、エントランスオブジェクト配置基準と、窓オブジェクト配置基準と、階段オブジェクト配置基準と、エレベータオブジェクト配置基準と、外壁材質基準と、壁材質基準と、扉材質基準と、カラー基準とが含まれる。なお、各パラメータについては、以下で述べる仮想内部空間モデル生成処理と合わせて説明する。
【0022】
図5に内部空間モデルDB11に格納されるデータの一例を示す。図5の例では、モデルIDと、オブジェクトIDと、オブジェクト名と、材質と、カラーと、座標数と、座標1と、座標2と、・・・とが登録されるようになっている。また、座標n(n=1,2,・・・)は、基準位置(0,0,0)からの相対位置を表す。
【0023】
次に、図6乃至図25を用いて、図2に示した三次元内部空間モデル生成装置の処理内容について説明する。まず、デジタルマップデータ入力部3は、ユーザからデジタルマップデータの入力を受け付け、デジタルマップDB7に格納する(図6:ステップS1)。その後、パラメータ入力部1は、ユーザから配置条件データ(図3)及びパラメータ(図4)の入力を受け付け、パラメータDB5に格納する(ステップS3)。
【0024】
そして、内部空間モデル入力部13は、ユーザからの既成内部空間モデルの作成指示に応じて、図7に示すような既成内部空間モデル作成画面を表示装置に表示する。図7の画面では、メニューバー701と、作業領域702と、オブジェクト選択欄703と、2D表示ボタン704と、3D表示ボタン705とが含まれる。例えば、ユーザは、マウスを操作して、任意のオブジェクトをドラッグ・アンド・ドロップし、意図した位置に配置する。また、3D表示ボタン705がクリックされると、内部空間モデル入力部13は、作業領域702内の表示を三次元表示に切り替える。そして、内部空間モデル入力部13は、ユーザから、作成した既成内部空間モデルの登録指示を受け付けると、内部空間モデルDB11に格納する(ステップS5)。なお、既成内部空間モデル使用基準(図4)が「1:既成内部空間モデル使用無し」に設定されている場合(すなわち、仮想内部空間モデル生成処理において、既成内部空間モデルを使用しない場合)には、本ステップはスキップされる。
【0025】
そして、内部空間モデル生成部9は、ユーザからデジタルマップ表示要求を受け付けると、デジタルマップDB7に格納されたデジタルマップデータに基づき、表示装置に地図を表示する。そして、ユーザは、この画面に対して、例えばマウスを操作し、仮想内部空間モデルを生成する対象となるエリアを指定する。内部空間モデル生成部9は、指定エリアを受け付け、指定エリアの情報(例えば、緯度、経度)を一旦記憶装置に格納する(ステップS7)。そして、内部空間モデル生成部9は、仮想内部空間モデル生成処理を実施する(ステップS9)。この処理については、後で説明する。
【0026】
その後、出力部17は、内部空間モデルDB11に格納された、指定エリア内の建造物の仮想内部空間モデルを抽出し、出力する(ステップS11)。例えば、指定エリア内の建造物については、内部空間を認識できるように地図データを更新し、表示装置に表示する。また、ユーザが、生成された仮想内部空間モデルを編集する場合には、編集を開始する旨の指示を入力する。内部空間モデル編集部15は、ユーザから編集を開始する旨の指示を受け付けると、仮想内部空間モデルを表示装置に表示する。例えば図7で示したような画面を表示する。そして、ユーザの操作に応じて、内部空間モデル編集部15は、編集後の仮想内部空間モデルを受け付け、内部空間モデルDB11を更新する(ステップS13)。
【0027】
次に、図8及び図9を用いて、仮想内部空間モデル生成処理について説明する。まず、内部空間モデル生成部9は、パラメータDB5から配置条件データ及びパラメータを読み出す(図8:ステップS15)。そして、内部空間モデル生成部9は、デジタルマップDB7から指定エリアのデジタルマップデータを読み出す(ステップS17)。その後、内部空間モデル生成部9は、指定エリア内に未処理の建造物が存在するか判断する(ステップS19)。もし、指定エリア内に未処理の建造物が存在しなければ(ステップS19:Noルート)、本処理を終了し、元の処理に戻る。
【0028】
一方、指定エリア内に未処理の建造物が存在する場合(ステップS19:Yesルート)、内部空間モデル生成部9は、処理対象となる建造物を特定し、読み出したデジタルマップデータから当該建造物の形状データを取得する(ステップS21)。そして、内部空間モデル生成部9は、建造物種別判定基準に基づいて建造物の種別を判定する(ステップS23)。建造物種別判定基準は、建造物の高さに応じて、一般住宅又は商業建造物であると判定される確率を表す。内部空間モデル生成部9は、この確率に従って乱数を発生させ、一般住宅又は商業建造物であるか判定する。
【0029】
そして、内部空間モデル生成部9は、既成内部空間モデル使用基準に基づき、既成内部空間モデルを使用するか否か判定する(ステップS25)。既成内部空間モデル使用基準は、仮想内部空間モデル生成処理において、既成内部空間モデルを使用するか否かを表す。なお、既成内部空間モデル使用基準に、「2:ランダム」が設定されている場合には、乱数を発生させ、既成内部空間モデルを使用するか否か判定する。
【0030】
もし、既成内部空間モデルを使用する場合(ステップS25:Yesルート)、内部空間モデル生成部9は、使用する既成内部空間モデルを特定し、内部空間モデルDB11から読み出す(ステップS27)。例えば、処理対象の建造物の形状データと形及び大きさが近い既成内部空間モデルを候補として抽出し、乱数を用いて特定する。そして、内部空間モデル生成部9は、図9に示すように、読み出した既成内部空間モデルを処理対象の建造物の外部形状に合うように拡大、縮小又は回転し、建造物に当てはめる(ステップS29)。そして、ステップS19の処理に戻る。
【0031】
一方、既成内部空間モデルを使用しない場合(ステップS25:Noルート)、内部空間モデル生成部9は、仮想内部空間モデルを生成するために、ステップS31乃至ステップS37の処理を実施する。まず、内部空間モデル生成部9は、フロア空間バウンディングボックス配置処理を実施する(ステップS31)。なお、フロア空間バウンディングボックス配置処理では、図10に示すように、形状データ1001を均等の高さに区切ってフロア空間バウンディングボックス1002乃至1005を割り振る。
【0032】
フロア空間バウンディングボックス配置処理については、図11乃至図13を用いて説明する。まず、内部空間モデル生成部9は、処理対象の建造物から未処理の立体物を特定する(図11:ステップS39)。例えば、図13に示すように、建造物が立体物1301と立体物1302とから構成される場合には、立体物1301と立体物1302とに分けて、以下で述べるステップS41乃至ステップS47の処理が実施される。
【0033】
そして、内部空間モデル生成部9は、特定立体物の高さを取得し(ステップS41)、特定立体物の高さと単一フロアの高さ基準とに基づき、フロア数を算出する(ステップS43)。単一フロアの高さ基準は、フロア空間バウンディングボックスの高さを求める基準であり、一般住宅と商業建造物とで別々の値が設定される。その後、内部空間モデル生成部9は、特定立体物の高さと算出したフロア数とに基づき、単一フロアの高さを算出する(ステップS45)。例えば、図12に示すように、立体物の高さ1201を単一フロアの高さ基準1202で除算すると、商(整数値)がフロア数となる。このとき、余り1203が生じる場合がある。本実施の形態では、特定立体物の高さをフロア数で除算することで、余り1203を生じないように単一フロアの高さを算出する。なお、特定立体物の高さが単一フロアの高さ基準より小さい場合には、フロア数は1とする。そして、内部空間モデル生成部9は、算出した単一フロアの高さをフロア空間バウンディングボックスの高さとして、特定立体物にフロア空間バウンディングボックスを配置する(ステップS47)。なお、フロア空間バウンディングボックスの配置状態については、内部空間モデルDB11に格納される。さらに、内部空間モデル生成部9は、外壁材質基準とカラー基準とに基づいて、建造物の外壁の素材及び色を決定する。外壁材質基準は、建造物のフロア数に応じて、建造物の外壁の材質の確率を表す。カラー基準は、建造物に配置されるオブジェクトなどの色の確率を表す。なお、内部空間モデル生成部9は、これらの確率に従って乱数を発生させ、建造物の外壁の素材及び色を決定する。
【0034】
そして、内部空間モデル生成部9は、全ての立体物について処理が完了したか判断する(ステップS49)。もし、全ての立体物について処理が完了していなければ(ステップS49:Noルート)、ステップS39の処理に戻る。一方、全ての立体物について処理が完了した場合(ステップS49:Yesルート)、元の処理に戻る。
【0035】
以上のような処理を実施することにより、均等な高さのフロア空間を配置することができる。また、図13で示したような複数の立体物から構成される建造物の場合でも、フロア空間が複数の立体物に跨って配置されることはないため、自然なレイアウトにすることができる。
【0036】
図8の説明に戻って、内部空間モデル生成部9は、居住空間バウンディングボックス配置処理を実施する(図8:ステップS33)。なお、居住空間バウンディングボックス配置処理では、所定のパラメータ(例えば、居住空間バウンディングボックス配置優先方位等)に従って、図10に示すように、フロア空間バウンディングボックス1005に居住空間バウンディングボックス1006及び付帯空間バウンディングボックス1007を割り振る。なお、フロア空間バウンディングボックス1002乃至1004についても同様に処理する。
【0037】
居住空間バウンディングボックス配置処理については、図14乃至図16を用いて説明する。まず、内部空間モデル生成部9は、未処理のフロア空間バウンディングボックスを特定する(図14:ステップS51)。例えば、最上階のフロアから順に処理するようにしてもよいし、1階から順に処理するようにしてもよい。そして、内部空間モデル生成部9は、他のフロア空間バウンディングボックスと同じ配置にするか判断する(ステップS53)。例えば、高層ビルやマンションなどは、一定のフロア(例えば1階)を除き、各フロアの大まかなレイアウトはそれほど変わらないことが多い。従って、例えば、一定のフロアを除き、大きさが同一のフロア空間バウンディングボックスについては、居住空間バウンディングボックス及び付帯空間バウンディングボックスを同じように配置すればよい。また、所定のパラメータ(図示せず)や乱数などにより、他のフロア空間バウンディングボックスと同じ配置にするか判断してもよい。
【0038】
もし、他のフロア空間バウンディングボックスと同じ配置にすると判断された場合(ステップS53:Yesルート)、内部空間モデル生成部9は、他のフロア空間バウンディングボックスに従い、特定フロア空間バウンディングボックスに居住空間バウンディングボックス及び付帯空間バウンディングボックスを配置する(ステップS55)。なお、居住空間バウンディングボックス及び付帯空間バウンディングボックスの配置状態については、内部空間モデルDB11に格納される。
【0039】
一方、他のフロア空間バウンディングボックスと同じ配置にはしないと判断された場合(ステップS53:Noルート)、内部空間モデル生成部9は、特定フロア空間バウンディングボックスの面積Sを算出する(ステップS57)。例えば、面積Sを求める平面を構成するn個の座標を(x1,y1)、(x2,y2)、・・・、(xn,yn)とすると、以下の式を用いて面積Sを算出する。なお、iは1〜n、(xn+1,yn+1)=(x1,y1)とする。
S=1/2×Σ(xi−xi+1)(yi+yi+1) (1)
【0040】
そして、内部空間モデル生成部9は、算出した面積Sが居住空間バウンディングボックス作成基準面積以上であるか判断する(ステップS59)。居住空間バウンディングボックス作成基準面積は、居住空間バウンディングボックスを配置するために必要な最小限の面積を表す。
【0041】
もし、算出した面積Sが居住空間バウンディングボックス作成基準面積未満の場合(ステップS59:Noルート)、内部空間モデル生成部9は、フロア空間バウンディングボックスに付帯空間バウンディングボックスを配置する(ステップS61)。本実施の形態では、面積Sが、居住空間バウンディングボックス作成基準面積未満の場合は、フロア空間バウンディングボックスに居住空間バウンディングボックスを配置するための十分な空間が存在しないと見なし、居住空間バウンディングボックスは配置しない。
【0042】
一方、算出した面積Sが居住空間バウンディングボックス作成基準面積以上の場合(ステップS59:Yesルート)、内部空間モデル生成部9は、居住空間バウンディングボックス配置優先方位に基づき、居住空間配置方位を特定する(ステップS63)。居住空間バウンディングボックス配置優先方位は、居住空間バウンディングボックスの配置方位の優先順位を表す。例えば、図4では、南、東、西、北の順に設定されている。図示していないが、乱数を用いてランダムに優先順位を特定するようにしてもよい。
【0043】
図15(a)及び(b)を用いて、ステップS63の処理の詳細について説明する。まず、平面ABCD(図15(a))において、内部空間モデル生成部9は、中心Pを始点とし、各線分(線分AB、線分BC、線分CD及び線分DA)と直交するベクトル(ベクトル1501乃至1504)を決定する。そして、内部空間モデル生成部9は、居住空間バウンディングボックス配置優先方位で指定される最も優先度の高い方位と隣り合うベクトルを特定し、それぞれのベクトルまでの角度α1及びα2を算出する。そして、α1とα2を比較し、ベクトルまでの角度が小さい方を居住空間配置方位として特定する。例えば、図15(a)において、最も優先度の高い方位を「南」とすると、隣り合う2つのベクトルとして、ベクトル1501とベクトル1502とが特定され、ベクトル1501までの角度としてα1、ベクトル1502までの角度としてα2がそれぞれ算出される。図15(a)の例では、α1<α2であるため、ベクトル1501の方位が、居住空間配置方位として特定される。なお、いずれかのベクトルが、最も優先度の高い方位と重なる場合には、そのベクトルの方位を居住空間配置方位とする。
【0044】
また、図15(b)に示すように、α1=α2の場合には、次に優先度の高い方位に基づき、居住空間配置方位を特定する。図15(b)では、最も優先度の高い方位(「南」)と隣り合うベクトルとして、ベクトル1505とベクトル1506とが特定され、ベクトル1505までの角度としてα1、ベクトル1506までの角度としてα2がそれぞれ算出される。そして、α1=α2であるため、次に優先度の高い方位(「東」)を特定し、ベクトル1505までの角度としてβ1、ベクトル1506までの角度としてβ2を算出する。図15(b)の例では、β1<β2であるため、ベクトル1505の方位が、居住空間配置方位として特定される。
【0045】
図14の説明に戻って、内部空間モデル生成部9は、特定した居住空間配置方位と居住空間バウンディングボックス配置割合とに基づき、フロア空間バウンディングボックスに居住空間バウンディングボックスと付帯空間バウンディングボックスとを配置する(ステップS65)。居住空間バウンディングボックス配置割合は、フロア空間バウンディングボックス内の居住空間バウンディングボックスが占める割合を表す。なお、居住空間バウンディングボックス及び付帯空間バウンディングボックスの配置状態については、内部空間モデルDB11に格納される。
【0046】
図16を用いて、ステップS65の処理の詳細について説明する。なお、図16において、ベクトル1601は、居住空間配置方位を示すベクトルである。まず、内部空間モデル生成部9は、ベクトル1601と各線分(図16では、線分AB及び線分CD)が交差する点を特定する。図16の例では、ベクトル1601と線分ABとが交差する点を点E、ベクトル1601と線分CDとが交差する点を点Fとする。そして、内部空間モデル生成部9は、線分EF上に、線分EG:線分GFがn:mとなる点Gを特定する。ここで、居住空間配置方位寄りの線分(すなわち、線分EG)の割合nが「居住空間バウンディングボックス配置割合」、もう一方の線分(すなわち、線分GF)の割合mが「1−居住空間バウンディングボックス配置割合」となるようにする。そして、内部空間モデル生成部9は、点Gを通り、ベクトル1601と直交する線分HIを決定する。そして、内部空間モデル生成部9は、居住空間配置方位寄りの平面ABHI上に居住空間バウンディングボックスを配置し、平面IHCD上に付帯空間バウンディングボックスを配置する。さらに、内部空間モデル生成部9は、壁材質基準及びカラー基準に基づき、建造物内部の壁の材質及び色を決定する。壁材質基準は、居住空間バウンディングボックスや付帯空間バウンディングボックスの内部の壁の材質を表す。なお、建造物内部の壁の材質及び色は、建造物内で同一となるようにする。
【0047】
図14の説明に戻って、内部空間モデル生成部9は、全てのフロア空間バウンディングボックスについて処理が完了したか判断する(ステップS67)。もし、全てのフロア空間バウンディングボックスについて処理が完了していなければ(ステップS67:Noルート)、ステップS51の処理に戻る。一方、全てのフロア空間バウンディングボックスについて処理が完了した場合(ステップS67:Yesルート)、居住空間バウンディングボックス配置処理を終了し、元の処理に戻る。
【0048】
以上のような処理を実施することにより、同一建造物であっても、パラメータを変化させることで、居住空間バウンディングボックスと付帯空間バウンディングボックスとを様々なパターンで配置することができる。また、例えば、居住空間を日当たりの良い南向きに配置するなど、自然なレイアウトにすることができる。
【0049】
図8の説明に戻って、内部空間モデル生成部9は、居室バウンディングボックス配置処理を実施する(図8:ステップS35)。居室バウンディングボックス配置処理については、図17及び図18を用いて説明する。まず、内部空間モデル生成部9は、未処理の居住空間バウンディングボックスを特定する(図17:ステップS69)。そして、内部空間モデル生成部9は、他の居住空間バウンディングボックスと同じ配置にするか判断する(ステップS71)。例えば、所定のパラメータ(図示せず)や乱数などにより、他の居住空間バウンディングボックスと同じ配置にするか判断する。
【0050】
もし、他の居住空間バウンディングボックスと同じ配置にすると判断された場合(ステップS71:Yesルート)、内部空間モデル生成部9は、他の居住空間バウンディングボックスに従い、特定居住空間バウンディングボックスに居室バウンディングボックスを配置する(ステップS73)。なお、居室バウンディングボックスの配置状態については、内部空間モデルDB11に格納される。
【0051】
一方、他の居住空間バウンディングボックスと同じ配置にはしないと判断された場合(ステップS71:Noルート)、内部空間モデル生成部9は、特定居住空間バウンディングボックスの面積を算出する(ステップS75)。なお、上で述べた(1)式に、居住空間バウンディングボックスの平面を構成する座標を代入すれば、居住空間バウンディングボックスの面積を算出することができる。そして、内部空間モデル生成部9は、算出した面積と居室バウンディングボックス作成基準面積とに基づき、最大居室数を算出する(ステップS77)。居室バウンディングボックス作成基準面積は、居室バウンディングボックスを配置するために必要な最小限の面積を表す。従って、算出した面積を居室バウンディングボックス作成基準面積で除算すると、商(整数値)が最大居室数となる。なお、居室バウンディングボックス作成基準面積は、居住空間バウンディングボックス作成基準面積より小さな値とする。
【0052】
そして、内部空間モデル生成部9は、算出した最大居室数の範囲内で、乱数により居室数を決定する(ステップS79)。そして、内部空間モデル生成部9は、居室バウンディングボックス調整幅の範囲内で、居室バウンディングボックスに対する調整値を乱数により決定し、各居室の幅を算出する(ステップS81)。居室バウンディングボックス調整幅は、居室バウンディングボックスの幅を調整する調整値の範囲を表す。
【0053】
図18を用いて、ステップS81の処理の詳細について説明する。なお、図18は、平面ABHI上に居住空間バウンディングボックスが配置され、平面IHCD上に付帯空間バウンディングボックスが配置されており、居住空間バウンディングボックスに居室バウンディングボックス1801乃至1803(居室数:3)が配置される場合の例を示す。また、図18において、l1は、居室バウンディングボックス1801に対する調整値、l2は、居室バウンディングボックス1802に対する調整値を表す。まず、内部空間モデル生成部9は、乱数により、調整値l1及びl2を決定する。そして、居住空間バウンディングボックスと付帯空間バウンディングボックスとの境界線(線分HI)の長さLを、居室数で除算することで、居室バウンディングボックスを均等に配置した場合の幅(=L/3)を算出する。そして、算出した幅を調整値l1で調整することにより、居室バウンディングボックス1801の幅を算出する。すなわち、L/3+l1が、居室バウンディングボックス1801の幅となる。同様に、算出した幅を調整値l2で調整することにより、居室バウンディングボックス1802の幅を算出する。すなわち、L/3+l2が、居室バウンディングボックス1802の幅となる。また、居室バウンディングボックス1803の幅は、長さLから居室バウンディングボックス1801と居室バウンディングボックス1802との幅を減算することにより、算出する。すなわち、L−(L/3+l1)−(L/3+l2)が、居室バウンディングボックス1803の幅となる。
【0054】
図17の説明に戻って、内部空間モデル生成部9は、算出した各居室バウンディングボックスの幅に基づき、居室バウンディングボックスを配置する(ステップS83)。なお、居室バウンディングボックスの配置状態については、内部空間モデルDB11に格納される。また、内部空間モデル生成部9は、乱数により、居室バウンディングボックスの用途を特定する(ステップS85)。用途としては、例えば、事務室、会議室、リビング、洋室、和室、寝室などがある。そして、内部空間モデル生成部9は、全ての居住空間バウンディングボックスについて処理が完了したか判断する(ステップS87)。もし、全ての居住空間バウンディングボックスについて処理が完了していなければ(ステップS87:Noルート)、ステップS69の処理に戻る。一方、全ての居住空間バウンディングボックスについて処理が完了した場合(ステップS87:Yesルート)、居室バウンディングボックス配置処理を終了し、元の処理に戻る。
【0055】
図8の説明に戻って、内部空間モデル生成部9は、オブジェクト配置処理を実施する(図8:ステップS37)。オブジェクト配置処理については、図19乃至図25を用いて説明する。まず、内部空間モデル生成部9は、未処理のフロアを特定する(図19:ステップS89)。そして、内部空間モデル生成部9は、他のフロアと同じ配置にするか判断する(ステップS91)。例えば、以下で説明する階段やエレベータなどは、各フロアにおいて共通の位置に配置されるため、他のフロアと同じようにオブジェクトを配置すればよい。また、所定のパラメータ(図示せず)や乱数などにより、他のフロアと同じ配置にするか判断してもよい。
【0056】
もし、他のフロアと同じ配置にすると判断された場合(ステップS91:Yesルート)、内部空間モデル生成部9は、他のフロアにおけるオブジェクトの配置状態に従い、特定フロアにオブジェクトを配置する(ステップS93)。なお、オブジェクトの配置状態については、内部空間モデルDB11に格納される。そして、端子Aを介して、ステップS121(図23)の処理に移行する。
【0057】
一方、他のフロアと同じ配置にはしないと判断された場合(ステップS91:Noルート)、内部空間モデル生成部9は、特定フロアに配置されたバウンディングボックスを取得する(ステップS95)。そして、内部空間モデル生成部9は、特定フロアが1階であるか判断する(ステップS97)。もし、特定フロアが1階でなければ(ステップS97:Noルート)、ステップS99の処理をスキップし、ステップS101の処理に移行する。一方、特定フロアが1階である場合には(ステップS97:Yesルート)、内部空間モデル生成部9は、エントランスオブジェクト配置基準に基づき、付帯空間バウンディングボックスの外壁面にエントランスオブジェクトを配置する(ステップS99)。エントランスオブジェクト配置基準は、エントランスオブジェクトの高さ及び幅の基準値及び調整値を表す。なお、エントランスオブジェクトの配置状態については、内部空間モデルDB11に格納される。
【0058】
図20を用いて、ステップS99の処理の詳細について説明する。なお、図20では、平面ABHI上に居住空間バウンディングボックスが配置され、平面IHCD上に付帯空間バウンディングボックスが配置されているものとする。まず、内部空間モデル生成部9は、付帯空間バウンディングボックスの外壁面を特定する。図20の例では、線分HCと線分CDと線分DIとが、付帯空間バウンディングボックスの外壁面として特定される。そして、内部空間モデル生成部9は、建造物周辺の地図データを取得し、当該地図データに基づいて、特定した外壁面のうち、道路に接する外壁面を特定する。図20の例では、線分HCと線分CDとが、道路に接する外壁面として特定される。また、内部空間モデル生成部9は、道路から道路に接する外壁面までの距離を算出する。図20の例では、道路から線分CDまでの距離2001と、道路から線分HCまでの距離2002とが算出される。そして、内部空間モデル生成部9は、算出した距離を比較し、道路まで距離の短い外壁面をエントランスオブジェクト配置面として特定する。図20の例では、距離2001<距離2002であるため、線分CDが、エントランスオブジェクト配置面として特定される。そして、内部空間モデル生成部9は、エントランスオブジェクト配置基準に基づき、エントランスオブジェクトの高さ及び幅を決定する。具体的には、乱数により高さ及び幅の調整値を決定し、高さ及び幅の基準値を調整することで算出する。そして、内部空間モデル生成部9は、図20に示すようなエントランスオブジェクト2003を配置する。
【0059】
図19の説明に戻って、内部空間モデル生成部9は、扉オブジェクト配置基準に基づき、居室バウンディングボックスと付帯空間バウンディングボックスとの境界に扉オブジェクトを配置する(ステップS101)。扉オブジェクト配置基準は、扉オブジェクトの高さ及び幅の基準値及び調整値を表す。なお、扉オブジェクトの配置状態については、内部空間モデルDB11に格納される。
【0060】
図21を用いて、ステップS101の処理の詳細について説明する。なお、図21では、平面ABHI上に居室バウンディングボックス2111乃至2113が配置され、平面IHCD上に付帯空間バウンディングボックスが配置されているものとする。まず、内部空間モデル生成部9は、居室バウンディングボックスと付帯空間バウンディングボックスとの境界を特定する。図21の例では、居室バウンディングボックス2111と付帯空間バウンディングボックスとの境界として線分ITが特定され、居室バウンディングボックス2112と付帯空間バウンディングボックスとの境界として線分TUが特定され、居室バウンディングボックス2113と付帯空間バウンディングボックスとの境界として線分UHが特定される。そして、内部空間モデル生成部9は、扉オブジェクト配置基準に基づき、扉オブジェクトの高さ及び幅を決定する。具体的には、乱数により、扉オブジェクトの調整値(高さ、幅)を決定し、基準値(高さ、幅)を調整することで扉オブジェクトの高さ及び幅を算出する。さらに、内部空間モデル生成部9は、扉材質基準及びカラー基準に基づき、扉の材質及び色を決定する。なお、扉の材質及び色は、建造物内で同一となるようにする。そして、内部空間モデル生成部9は、各境界(図21では、線分IT、線分TU及び線分UH)に扉オブジェクトを配置する。このとき、配置位置(例えば、左寄り、右寄り、中央など)を乱数により決定する。例えば、図21において、扉オブジェクト2101は、線分IT上の左寄りに配置され、扉オブジェクト2102は、線分TU上の中央に配置され、扉オブジェクト2103は、線分UH上の右寄りに配置されている。
【0061】
また、居室バウンディングボックスと付帯空間バウンディングボックスとの境界に扉オブジェクトを配置できない場合には(例えば、扉オブジェクトの幅が境界の長さより大きい場合)、その居室バウンディングボックスと、隣接する居室バウンディングボックスとの境界に扉オブジェクトを配置すればよい。例えば、図21において、線分TU上に扉オブジェクトを配置することができないと判断された場合には、居室バウンディングボックス2112と居室バウンディングボックス2111との境界、及び居室バウンディングボックス2112と居室バウンディングボックス2113との境界のうち少なくとも一方に扉オブジェクトを配置する。
【0062】
図19の説明に戻って、内部空間モデル生成部9は、特定フロアの外壁全長と窓オブジェクト配置基準とに基づき、配置可能な窓の最大数(最大窓数)を算出する(ステップS103)。窓オブジェクト配置基準は、窓オブジェクトの高さ、幅及び設置高の基準値及び調整値を表す。ここでは、乱数により窓オブジェクトの調整値(幅)を決定し、基準値(幅)を調整することで窓オブジェクトの幅を算出し、特定フロアの外壁全長を窓オブジェクトの幅で除算することで、最大窓数を算出する。
【0063】
そして、内部空間モデル生成部9は、算出した最大窓数の範囲内で、乱数により窓オブジェクトの配置数を決定する(ステップS105)。さらに、内部空間モデル生成部9は、乱数により窓オブジェクトの調整値(高さ)を決定し、基準値(高さ)を調整することで窓オブジェクトの高さを算出する。そして、内部空間モデル生成部9は、窓オブジェクトの配置位置を決定し、配置する(ステップS107)。なお、窓オブジェクトの配置状態については、内部空間モデルDB11に格納される。
【0064】
図22を用いて、ステップS107の処理の詳細について説明する。なお、図22では、平面ABHI上に居住空間バウンディングボックスが配置され、平面IHCD上に付帯空間バウンディングボックスが配置されているものとする。まず、内部空間モデル生成部9は、ステップS105において決定した窓オブジェクトの配置数の内訳(居住空間バウンディングボックスに対する配置数、付帯空間バウンディングボックスに対する配置数)を乱数により決定する。さらに、内部空間モデル生成部9は、居住空間バウンディングボックスに対する配置数の内訳(居住空間バウンディングボックスの各外壁面に対する配置数)を乱数により決定する。また、同様に、内部空間モデル生成部9は、付帯空間バウンディングボックスに対する配置数の内訳(付帯空間バウンディングボックスの各外壁面に対する配置数)を乱数により決定する。例えば、図22では、窓オブジェクトの配置数が6であり、内訳として、居住空間バウンディングボックスに対する配置数は5、付帯空間バウンディングボックスに対する配置数は1に決定される。さらに、居住空間バウンディングボックスに対する配置数の内訳として、線分ABに対する配置数は3、線分BHに対する配置数は1、線分AIに対する配置数は1に決定される。また、付帯空間バウンディングボックスに対する配置数の内訳として、線分CDに対する配置数は1、線分CHに対する配置数は0、線分DIに対する配置数は0に決定される。
【0065】
そして、内部空間モデル生成部9は、居住空間バウンディングボックス及び付帯空間バウンディングボックスの各外壁面について、配置間隔が等しくなるように窓オブジェクトの配置位置を決定する。このとき、乱数により窓オブジェクトの調整値(設置高)を決定し、基準値(設置高)を調整することで窓オブジェクトの設置高も決定する。例えば、図22において、線分AB上には、窓オブジェクト2201乃至2203が等間隔で配置されている。また、線分AI上には、窓オブジェクト2204が配置され、線分BH上には、窓オブジェクト2205が配置されている。さらに、線分CD上には、エントランスオブジェクト2208と重ならないように、窓オブジェクト2206が配置されている。もし、他のオブジェクト(例えば、エントランスオブジェクト)と重なるような場合には、他の外壁面に配置するように調整すればよい。また、各フロアにおける窓オブジェクトの配置位置は、建造物内で同一となるようにする。
【0066】
図19の説明に戻って、ステップS107の処理の後、内部空間モデル生成部9は、端子Bを介してステップS109(図23)の処理に移行する。図23を用いて、図19に示したオブジェクト配置処理の続きを説明する。端子Bの後、内部空間モデル生成部9は、フロア数が2以上であるか判断する(図23:ステップS109)。もし、フロア数が1の場合は(ステップS109:Noルート)、ステップS111乃至ステップS119の処理をスキップし、ステップS121の処理に移行する。本実施の形態では、フロア数が1の場合(すなわち、建造物が1階建ての場合)には、階段オブジェクト及びエレベータオブジェクトは配置しない。
【0067】
一方、フロア数が2以上の場合には(ステップS109:Yesルート)、内部空間モデル生成部9は、乱数により階段の種別を決定する(ステップS111)。例えば、図4では、直階段、折返し階段、螺旋階段の3種類が設定されており、この中から決定する。そして、内部空間モデル生成部9は、階段オブジェクトの配置位置を決定し、配置する(ステップS113)。なお、階段オブジェクトの配置状態については、内部空間モデルDB11に格納される。
【0068】
図24を用いて、ステップS113の処理の詳細について説明する。ここでは、折返し階段を配置する場合について説明する。なお、図24では、平面ABHI上に居住空間バウンディングボックスが配置され、平面IHCD上に付帯空間バウンディングボックスが配置されているものとする。まず、内部空間モデル生成部9は、階段オブジェクト配置基準に基づき、階段オブジェクトの幅及び高さを決定する。そして、内部空間モデル生成部9は、階段オブジェクトにおける、階段へのアプローチエリアの反対面(図24における壁設置面)が、付帯空間バウンディングボックスの内壁と接するように階段オブジェクトを配置する。このとき、例えば、点Cを始点として、時計回り(点D、点I、点Hの順)に走査し、階段オブジェクトが他のオブジェクトと重ならない位置を、階段オブジェクトの配置位置とする。例えば図24のように階段オブジェクト2401が配置される。また、各フロアにおける階段オブジェクトの配置位置は、建造物内で同一となるようにする。
【0069】
図23の説明に戻って、内部空間モデル生成部9は、エレベータオブジェクト配置基準に従って乱数を発生させ、エレベータの配置数を決定する(ステップS115)。エレベータオブジェクト配置基準は、建造物のフロア数に応じて、エレベータの設置確率を表す。
【0070】
そして、内部空間モデル生成部9は、算出したエレベータの配置数が1以上であるか判断する(ステップS117)。もし、エレベータの配置数が0の場合は(ステップS117:Noルート)、ステップS119の処理をスキップし、ステップS121の処理に移行する。一方、エレベータの配置数が1以上の場合は(ステップS117:Yesルート)、内部空間モデル生成部9は、エレベータオブジェクトの配置位置を決定し、配置する(ステップS119)。なお、エレベータオブジェクトの配置状態については、内部空間モデルDB11に格納される。
【0071】
図25を用いて、ステップS119の処理の詳細について説明する。ここでは、エレベータ2基を配置する場合について説明する。なお、図25では、平面ABHI上に居住空間バウンディングボックスが配置され、平面IHCD上に付帯空間バウンディングボックスが配置されているものとする。まず、内部空間モデル生成部9は、エレベータの配置数からエレベータオブジェクトの幅を決定する。そして、内部空間モデル生成部9は、エレベータオブジェクトにおける、エレベータへのアプローチエリアの反対面(図25における壁設置面)が、付帯空間バウンディングボックスの内壁と接するようにエレベータオブジェクトを配置する。このとき、階段オブジェクトの場合と同様に、点Cを始点として、時計回り(点D、点I、点Hの順)に走査し、エレベータオブジェクトが他のオブジェクトと重ならない位置を、エレベータオブジェクトの配置位置とする。例えば図25のようにエレベータオブジェクト2551が配置される。また、各フロアにおけるエレベータオブジェクトの配置位置は、建造物内で同一となるようにする。
【0072】
図23の説明に戻って、内部空間モデル生成部9は、全てのフロアについて処理が完了したか判断する(ステップS121)。もし、全てのフロアについて処理が完了していなければ(ステップS121:Noルート)、端子Cを介してステップS89(図19)の処理に戻る。一方、全てのフロアについて処理が完了した場合(ステップS121:Yesルート)、オブジェクト配置処理を終了し、元の処理に戻る。
【0073】
図8の説明に戻って、ステップS37の処理(オブジェクト配置処理)の後、ステップS19の処理に戻る。
【0074】
以上のような処理を実施することにより、三次元地図データを利用して地図上の建造物の仮想内部空間を生成することができる。また、同一の建造物であっても、パラメータを変化させれば、異なる仮想内部空間モデルが生成されるので、コストや時間をかけずに様々な仮想内部空間モデルを生成することができる。よって、様々な状況を想定したシミュレーションを容易に行うことができるようになる。
【0075】
以上本発明の実施の形態を説明したが、本発明はこれに限定されるものではない。例えば、上で説明した機能ブロック図は必ずしも実際のプログラムモジュール構成に対応するものではない。さらに、処理フローにおいても、処理結果が変わらなければ処理の順番を入れ替えることも可能である。さらに、並列に実行させるようにしても良い。
【0076】
また、図3に示したバウンディングボックス及びオブジェクトの階層構造及び優先順位に従って、処理フローを説明したが、階層構造又は優先順位を変更した場合には、階層構造又は優先順位に応じて処理順序も変更される。
【0077】
また、上で説明したテーブルの構成は一例であって、必ずしも上記のような構成でなければならないわけではない。さらに、上記以外のパラメータを用いるようにしてもよい。また、上記以外のオブジェクトを配置する場合もある。
【0078】
なお、三次元内部空間モデル生成装置はコンピュータ装置であって、図26に示すように当該コンピュータ装置においては、メモリ2501(記憶部)とCPU2503(処理部)とハードディスク・ドライブ(HDD)2505と表示装置2509に接続される表示制御部2507とリムーバブル・ディスク2511用のドライブ装置2513と入力装置2515とネットワークに接続するための通信制御部2517とがバス2519で接続されている。オペレーティング・システム(OS)及びWebブラウザを含むアプリケーション・プログラムは、HDD2505に格納されており、CPU2503により実行される際にはHDD2505からメモリ2501に読み出される。必要に応じてCPU2503は、表示制御部2507、通信制御部2517、ドライブ装置2513を制御して、必要な動作を行わせる。また、処理途中のデータについては、メモリ2501に格納され、必要があればHDD2505に格納される。このようなコンピュータは、上で述べたCPU2503、メモリ2501などのハードウエアとOS及び必要なアプリケーション・プログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
【0079】
(付記1)
地図上の建造物の内部空間を表す仮想内部空間モデルを生成する方法であって、
ユーザから前記仮想内部空間モデルの生成対象となる前記建造物の指定を受け付けた場合、三次元地図データを格納している地図データベースから当該建造物の形状データを取得する取得ステップと、
取得した前記建造物の形状データと前記建造物の内部空間を仕切るバウンディングボックス及び前記建造物の前記バウンディングボックスに応じて配置される所定のオブジェクトの配置条件を格納するパラメータデータベースに格納されている前記配置条件とに基づいて前記建造物の内部空間に前記バウンディングボックス及び前記所定のオブジェクトを配置することにより、前記建造物の前記仮想内部空間モデルを生成し、記憶装置に格納する生成ステップと、
を含み、コンピュータにより実行される三次元内部空間モデル生成方法。
【0080】
(付記2)
前記記憶装置に格納に格納された、前記建造物の前記仮想内部空間モデルを前記ユーザに提示するステップ
をさらに含む付記1記載の三次元内部空間モデル生成方法。
【0081】
(付記3)
前記取得ステップが、
前記地図データベースから前記建造物の方角に関するデータと前記建造物周辺の地図データとを取得するステップ
を含み、
前記生成ステップにおいて、前記建造物の方角に関するデータと前記建造物周辺の地図データとにさらに基づき、前記建造物の内部空間に前記バウンディングボックス及び前記所定のオブジェクトを配置する
付記1記載の三次元内部空間モデル生成方法。
【0082】
(付記4)
前記取得ステップが、
前記ユーザから前記仮想内部空間モデルの生成対象として前記地図上の所定のエリアの指定を受け付けた場合、前記所定のエリア内に含まれる前記建造物を特定し、特定された前記建造物の形状データを前記地図データベースから取得するステップ
を含み、
前記所定のエリア内に含まれる各前記建造物について、前記生成ステップを実施するステップ
をさらに含む付記1記載の三次元内部空間モデル生成方法。
【0083】
(付記5)
前記ユーザから前記バウンディングボックス及び前記所定のオブジェクトの配置状態を表す既成内部空間モデルを受け付け、前記記憶装置に格納するステップ、
をさらに含み、
前記生成ステップが、
前記記憶装置に格納された前記既成内部空間モデルに基づき、前記建造物の前記仮想内部空間モデルを生成し、前記記憶装置に格納するステップ
を含む、付記1記載の三次元内部空間モデル生成方法。
【0084】
(付記6)
前記配置条件が、前記バウンディングボックス及び前記所定のオブジェクトを配置する優先順位を含む
付記1記載の三次元内部空間モデル生成方法。
【0085】
(付記7)
前記バウンディングボックスが、フロア空間、居住空間、付帯空間及び居室のうち少なくともいずれかである
付記1記載の三次元内部空間モデル生成方法。
【0086】
(付記8)
前記所定のオブジェクトが、エントランス、扉、窓、階段、エレベータ、クローゼット、ロッカー及び浴室のうち少なくともいずれかである
付記1記載の三次元内部空間モデル生成方法。
【0087】
(付記9)
地図上の建造物の内部空間を表す仮想内部空間モデルを生成するための処理をコンピュータに実行させるためのプログラムであって、
ユーザから前記仮想内部空間モデルの生成対象となる前記建造物の指定を受け付けた場合、三次元地図データを格納している地図データベースから当該建造物の形状データを取得する取得ステップと、
取得した前記建造物の形状データと前記建造物の内部空間を仕切るバウンディングボックス及び前記建造物の前記バウンディングボックスに応じて配置される所定のオブジェクトの配置条件を格納するパラメータデータベースに格納されている前記配置条件とに基づいて前記建造物の内部空間に前記バウンディングボックス及び前記所定のオブジェクトを配置することにより、前記建造物の前記仮想内部空間モデルを生成し、記憶装置に格納する生成ステップと、
をコンピュータに実行させるための三次元内部空間モデル生成プログラム。
【0088】
(付記10)
地図上の建造物の内部空間を表す仮想内部空間モデルを生成する装置であって、
三次元地図データを格納している地図データベースと、
前記建造物の内部空間を仕切るバウンディングボックス及び前記建造物の前記バウンディングボックスに応じて配置される所定のオブジェクトの配置条件を格納するパラメータデータベースと、
ユーザから前記仮想内部空間モデルの生成対象となる前記建造物の指定を受け付けた場合、前記地図データベースから当該建造物の形状データを取得する取得手段と、
取得した前記建造物の形状データと前記パラメータデータベースに格納されている前記配置条件とに基づいて前記建造物の内部空間に前記バウンディングボックス及び前記所定のオブジェクトを配置することにより、前記建造物の前記仮想内部空間モデルを生成し、記憶装置に格納する生成手段と、
を有する三次元内部空間モデル生成装置。
【図面の簡単な説明】
【0089】
【図1】本発明の実施の形態の概要を説明するための図である。
【図2】本発明の実施の形態における三次元内部空間モデル生成装置の機能ブロック図を示す図である。
【図3】パラメータDBに格納される配置条件データの一例を示す図である。
【図4】パラメータDBに格納されるパラメータの一例を示す図である。
【図5】内部空間モデルDBに格納されるデータの一例を示す図である。
【図6】本発明の実施の形態における処理フローを示す図である。
【図7】既成内部空間モデル作成画面の画面例を示す図である。
【図8】仮想内部空間モデル生成処理の処理フローを示す図である。
【図9】既成内部空間モデルを使用する場合の処理を説明するための図である。
【図10】バウンディングボックスを配置する処理を説明するための図である。
【図11】フロア空間バウンディングボックス配置処理の処理フローを示す図である。
【図12】フロア空間バウンディングボックスを配置する処理を説明するための図である。
【図13】フロア空間バウンディングボックスを配置する処理を説明するための図である。
【図14】居住空間バウンディングボックス配置処理の処理フローを示す図である。
【図15】(a)及び(b)は、居住空間配置方位を特定する処理を説明するための図である。
【図16】居住空間バウンディングボックスを配置する処理を説明するための図である。
【図17】居室バウンディングボックス配置処理の処理フローを示す図である。
【図18】居室バウンディングボックスを配置する処理を説明するための図である。
【図19】オブジェクト配置処理の処理フロー(第1の部分)を示す図である。
【図20】エントランスオブジェクトを配置する処理を説明するための図である。
【図21】扉オブジェクトを配置する処理を説明するための図である。
【図22】窓オブジェクトを配置する処理を説明するための図である。
【図23】オブジェクト配置処理の処理フロー(第2の部分)を示す図である。
【図24】階段オブジェクトを配置する処理を説明するための図である。
【図25】エレベータオブジェクトを配置する処理を説明するための図である。
【図26】コンピュータの機能ブロック図である。
【符号の説明】
【0090】
1 パラメータ入力部 3 デジタルマップデータ入力部
5 パラメータDB 7 デジタルマップDB
9 内部空間モデル生成部 11 内部空間モデルDB
13 内部空間モデル入力部 15 内部空間モデル編集部
17 出力部
【特許請求の範囲】
【請求項1】
地図上の建造物の内部空間を表す仮想内部空間モデルを生成する方法であって、
ユーザから前記仮想内部空間モデルの生成対象となる前記建造物の指定を受け付けた場合、三次元地図データを格納している地図データベースから当該建造物の形状データを取得する取得ステップと、
取得した前記建造物の形状データと前記建造物の内部空間を仕切るバウンディングボックス及び前記建造物の前記バウンディングボックスに応じて配置される所定のオブジェクトの配置条件を格納するパラメータデータベースに格納されている前記配置条件とに基づいて前記建造物の内部空間に前記バウンディングボックス及び前記所定のオブジェクトを配置することにより、前記建造物の前記仮想内部空間モデルを生成し、記憶装置に格納する生成ステップと、
を含み、コンピュータにより実行される三次元内部空間モデル生成方法。
【請求項2】
前記取得ステップが、
前記地図データベースから前記建造物の方角に関するデータと前記建造物周辺の地図データとを取得するステップ
を含み、
前記生成ステップにおいて、前記建造物の方角に関するデータと前記建造物周辺の地図データとにさらに基づき、前記建造物の内部空間に前記バウンディングボックス及び前記所定のオブジェクトを配置する
請求項1記載の三次元内部空間モデル生成方法。
【請求項3】
前記配置条件が、前記バウンディングボックス及び前記所定のオブジェクトを配置する優先順位を含む
請求項1記載の三次元内部空間モデル生成方法。
【請求項4】
地図上の建造物の内部空間を表す仮想内部空間モデルを生成するための処理をコンピュータに実行させるためのプログラムであって、
ユーザから前記仮想内部空間モデルの生成対象となる前記建造物の指定を受け付けた場合、三次元地図データを格納している地図データベースから当該建造物の形状データを取得する取得ステップと、
取得した前記建造物の形状データと前記建造物の内部空間を仕切るバウンディングボックス及び前記建造物の前記バウンディングボックスに応じて配置される所定のオブジェクトの配置条件を格納するパラメータデータベースに格納されている前記配置条件とに基づいて前記建造物の内部空間に前記バウンディングボックス及び前記所定のオブジェクトを配置することにより、前記建造物の前記仮想内部空間モデルを生成し、記憶装置に格納する生成ステップと、
をコンピュータに実行させるための三次元内部空間モデル生成プログラム。
【請求項5】
地図上の建造物の内部空間を表す仮想内部空間モデルを生成する装置であって、
三次元地図データを格納している地図データベースと、
前記建造物の内部空間を仕切るバウンディングボックス及び前記建造物の前記バウンディングボックスに応じて配置される所定のオブジェクトの配置条件を格納するパラメータデータベースと、
ユーザから前記仮想内部空間モデルの生成対象となる前記建造物の指定を受け付けた場合、前記地図データベースから当該建造物の形状データを取得する取得手段と、
取得した前記建造物の形状データと前記パラメータデータベースに格納されている前記配置条件とに基づいて前記建造物の内部空間に前記バウンディングボックス及び前記所定のオブジェクトを配置することにより、前記建造物の前記仮想内部空間モデルを生成し、記憶装置に格納する生成手段と、
を有する三次元内部空間モデル生成装置。
【請求項1】
地図上の建造物の内部空間を表す仮想内部空間モデルを生成する方法であって、
ユーザから前記仮想内部空間モデルの生成対象となる前記建造物の指定を受け付けた場合、三次元地図データを格納している地図データベースから当該建造物の形状データを取得する取得ステップと、
取得した前記建造物の形状データと前記建造物の内部空間を仕切るバウンディングボックス及び前記建造物の前記バウンディングボックスに応じて配置される所定のオブジェクトの配置条件を格納するパラメータデータベースに格納されている前記配置条件とに基づいて前記建造物の内部空間に前記バウンディングボックス及び前記所定のオブジェクトを配置することにより、前記建造物の前記仮想内部空間モデルを生成し、記憶装置に格納する生成ステップと、
を含み、コンピュータにより実行される三次元内部空間モデル生成方法。
【請求項2】
前記取得ステップが、
前記地図データベースから前記建造物の方角に関するデータと前記建造物周辺の地図データとを取得するステップ
を含み、
前記生成ステップにおいて、前記建造物の方角に関するデータと前記建造物周辺の地図データとにさらに基づき、前記建造物の内部空間に前記バウンディングボックス及び前記所定のオブジェクトを配置する
請求項1記載の三次元内部空間モデル生成方法。
【請求項3】
前記配置条件が、前記バウンディングボックス及び前記所定のオブジェクトを配置する優先順位を含む
請求項1記載の三次元内部空間モデル生成方法。
【請求項4】
地図上の建造物の内部空間を表す仮想内部空間モデルを生成するための処理をコンピュータに実行させるためのプログラムであって、
ユーザから前記仮想内部空間モデルの生成対象となる前記建造物の指定を受け付けた場合、三次元地図データを格納している地図データベースから当該建造物の形状データを取得する取得ステップと、
取得した前記建造物の形状データと前記建造物の内部空間を仕切るバウンディングボックス及び前記建造物の前記バウンディングボックスに応じて配置される所定のオブジェクトの配置条件を格納するパラメータデータベースに格納されている前記配置条件とに基づいて前記建造物の内部空間に前記バウンディングボックス及び前記所定のオブジェクトを配置することにより、前記建造物の前記仮想内部空間モデルを生成し、記憶装置に格納する生成ステップと、
をコンピュータに実行させるための三次元内部空間モデル生成プログラム。
【請求項5】
地図上の建造物の内部空間を表す仮想内部空間モデルを生成する装置であって、
三次元地図データを格納している地図データベースと、
前記建造物の内部空間を仕切るバウンディングボックス及び前記建造物の前記バウンディングボックスに応じて配置される所定のオブジェクトの配置条件を格納するパラメータデータベースと、
ユーザから前記仮想内部空間モデルの生成対象となる前記建造物の指定を受け付けた場合、前記地図データベースから当該建造物の形状データを取得する取得手段と、
取得した前記建造物の形状データと前記パラメータデータベースに格納されている前記配置条件とに基づいて前記建造物の内部空間に前記バウンディングボックス及び前記所定のオブジェクトを配置することにより、前記建造物の前記仮想内部空間モデルを生成し、記憶装置に格納する生成手段と、
を有する三次元内部空間モデル生成装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【公開番号】特開2008−242590(P2008−242590A)
【公開日】平成20年10月9日(2008.10.9)
【国際特許分類】
【出願番号】特願2007−79110(P2007−79110)
【出願日】平成19年3月26日(2007.3.26)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】
【公開日】平成20年10月9日(2008.10.9)
【国際特許分類】
【出願日】平成19年3月26日(2007.3.26)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】
[ Back to top ]