以下、図面を参照して、本発明を実施するための最良の形態について詳細に説明する。
[第1の実施の形態]
まず、図1及び図2を参照して、本発明が適用された建物設計支援装置10の構成を説明する。
図1に示すように、本実施の形態に係る建物設計支援装置10は、本装置の全体的な動作を制御する制御部12と、ユーザからの各種情報等の入力に使用するキーボード14及びマウス16と、本装置による処理結果や各種メニュー画面、メッセージ等を表示するディスプレイ18と、を含んで構成されている。すなわち、本実施の形態に係る建物設計支援装置10は、市販(汎用)のパーソナル・コンピュータにより構成されている。
次に、図2を参照して、本実施の形態に係る建物設計支援装置10の電気系の要部構成を説明する。
同図に示すように、建物設計支援装置10は、建物設計支援装置10全体の動作を司るCPU(中央処理装置)22と、CPU22による各種プログラムの実行時のワークエリア等として用いられるRAM24と、各種制御プログラムや各種パラメータ等が予め記憶されたROM26と、各種情報を記憶するために用いられるハードディスク28と、前述のキーボード14、マウス16、及びディスプレイ18と、外部に接続された装置との間の各種情報の授受を司る外部インタフェース30等がシステムバスBUSにより相互に接続されて構成されている。なお、外部インタフェース30にはプリンタ50(図1では図示省略。)が接続されている。
従って、CPU22は、RAM24、ROM26、及びハードディスク28に対するアクセス、キーボード14及びマウス16を介した各種情報の取得、ディスプレイ18に対する各種情報の表示、及び外部インタフェース30を介したプリンタ50による各種情報の印刷、を各々行うことができる。
図3には、建物設計支援装置10に備えられたハードディスク28の主な記憶内容が模式的に示されている。同図に示すように、ハードディスク28には、各種データベースを記憶するためのデータベース領域DTと、各種処理を行うためのプログラムを記憶するためのプログラム領域PGと、が設けられている。
また、データベース領域DTには、構造部品データベースDT1が予め記憶されると共に、スケルトンデータベースDT2が記憶される。
本実施の形態に係る構造部品データベースDT1は、図4に示すように、部品種別、部品名、仕様、及びオブジェクト情報の各情報が構造部品毎に記憶されるものとして構成されている。
なお、上記部品種別は、対応する構造部品の種別を示す情報であり、本実施の形態では、「部屋」、「室内部材」等といった予め定められた種別を示す名称が適用されている。また、上記部品名は、対応する構造部品の名称を示す情報であり、「リビング」、「キッチン」等といった予め定められた構造部品の名称が適用されている。また、上記仕様は、対応する構造部品の仕様を示す情報であり、本実施の形態では、「洋風」、「和風」等といった予め定められた仕様の名称が適用されている。
一方、上記オブジェクト情報は、一例として図5に模式的に示されるように、対応する構造部品の3次元形状を示す情報であり、本実施の形態では、対応する構造部品の角点の位置座標を示す情報、各角点間の接続状態を示す情報、及び各角点間の距離を示す情報(寸法を示す情報)が適用されている。なお、図5(A)はリビングのオブジェクト情報を模式的に示す例であり、図5(B)はキッチンのオブジェクト情報を模式的に示す例である。
本実施の形態に係る構造部品データベースDT1では、建物を構成する多種多様な構造部品についての情報が部品種別毎に分類されて予め記憶されている。
なお、図示は省略するが、本実施の形態に係るスケルトンデータベースDT2には、建物設計支援装置10において設計対象とされる建物の構造躯体の形状及び寸法に関する情報(本実施の形態では、構造躯体の角点の位置座標を示す情報、各角点間の接続状態を示す情報、及び各角点間の距離を示す情報(寸法を示す情報)の3種類の情報であり、以下、「スケルトン情報」という。)が記憶されるものとして構成されている。
次に、本実施の形態に係る建物設計支援装置10の作用を説明する。
まず、図6を参照して、スケルトンデータベースDT2にスケルトン情報を登録する際の建物設計支援装置10の作用を説明する。なお、図6は、ユーザによりキーボード14、マウス16等の操作によってスケルトン情報の登録を実施する旨の指示入力が行われた際に建物設計支援装置10のCPU22によって実行されるスケルトン情報入力処理プログラムの処理の流れを示すフローチャートであり、当該プログラムはハードディスク28のプログラム領域PGに予め記憶されている。
まず、同図のステップ100では、ユーザに対してスケルトン情報を入力させるためのスケルトン情報入力画面(図示省略。)をディスプレイ18に表示し、次のステップ102にて所定情報の入力待ちを行う。当該スケルトン情報入力画面がディスプレイ18に表示されると、ユーザは、設計対象とする建物に関するスケルトン情報をキーボード14及びマウス16等を用いて入力する。これに応じて、上記ステップ102が肯定判定となってステップ104に移行する。
ステップ104では、スケルトン情報入力画面上でユーザによって入力されたスケルトン情報をスケルトンデータベースDT2に登録(記憶)し、その後に本スケルトン情報入力処理プログラムを終了する。
以上のスケルトン情報入力処理プログラムの実行により、スケルトンデータベースDT2が逐次構築されることになる。
次に、図7を参照して、スケルトンデータベースDT2にスケルトン情報を登録した建物を設計する際の建物設計支援装置10の作用を説明する。なお、図7は、ユーザによりキーボード14、マウス16等の操作によってスケルトン情報を登録した建物の設計を実施する旨の指示入力が行われた際に建物設計支援装置10のCPU22によって実行される建物設計支援処理プログラムの処理の流れを示すフローチャートであり、当該プログラムもハードディスク28のプログラム領域PGに予め記憶されている。
まず、同図のステップ200では、平面図作成処理ルーチン・プログラムを実行する。以下、図8を参照して、本実施の形態に係る平面図作成処理ルーチン・プログラムについて説明する。
同図のステップ300では、ユーザに対して平面図を作図させるための平面図作成画面をディスプレイ18に表示し、次のステップ302にて、平面図の作図が終了したことを示す所定情報の入力待ちを行う。
図9には、上記ステップ300の処理によってディスプレイ18に表示される平面図作成画面の表示状態例が示されている。同図に示されるように、本実施の形態に係る平面図作成画面では、各種操作を指示する際にマウス16によってポインティング指定されるボタンが表示されると共に、作図領域18Aが設けられている。なお、図9では、平面図19Aが作図(描画)された状態が図示されているが、この時点では作図領域18Aには何も表示されない状態となっている。
同図に示すような平面図作成画面がディスプレイ18に表示されると、ユーザは、キーボード14及びマウス16等を用いた操作によって、設計対象とする建物(以下、「設計対象建物」という。)内の平面図を住居単位で作図する。なお、設計対象建物に複数の住居を設ける場合には、当該複数の住居の全ての平面図を作図することになるが、ここでは、錯綜を回避するために、設計対象建物に1つの住居のみを設ける場合について説明する。
住居の平面図の作図が終了すると、ユーザは、平面図作成画面の最下に表示されている終了ボタンをマウス16にてポインティング指定する。これに応じて上記ステップ302が肯定判定となってステップ304に移行し、作図された平面図を示す情報を設計対象建物の間取りを示す間取り情報としてハードディスク28の所定領域に記憶する。なお、図9では、住居の平面図19Aの作図が終了した時点における平面図作成画面の表示状態の一例が示されている。
平面図の作図が終了すると、ユーザは、作図した平面図におけるオブジェクト情報の適用対象とする構造部品をマウス16にてポインティング指定して、当該構造部品の部品種別、部品名、及び要求仕様の各情報を入力し、全ての適用対象とする構造部品についての入力が終了した時点で平面図作成画面の最下に表示されている終了ボタンをマウス16にて再びポインティング指定する。
そこで、次のステップ306では、ユーザによる所定情報の入力待ちを行い、次のステップ308にて、ユーザによって何れかの構造部品が指定されたか否かを判定し、肯定判定となった場合はステップ310に移行して、ユーザに対して指定した構造部品に関する情報を入力させるための情報入力画面をディスプレイ18における平面図作成画面に上書き表示し、次のステップ312にて、当該情報の入力の終了待ちを行う。
図10には、上記ステップ310の処理によってディスプレイ18に表示される情報入力画面18Bの表示状態例が示されている。同図に示されるように、本実施の形態に係る情報入力画面18Bでは、部品種別、部品名、及び要求仕様の各情報を入力するための矩形枠が表示される。同図に示すような情報入力画面18Bがディスプレイ18に表示されると、ユーザは、キーボード14及びマウス16等を用いた操作によって、指定した構造部品に関する情報を対応する矩形枠内に入力し、その後に当該情報入力画面18Bの最下に表示されている終了ボタンをマウス16にてポインティング指定する。これに応じて、上記ステップ312が肯定判定となってステップ314に移行する。
ステップ314では、情報入力画面18Bによって入力された情報を、ユーザによって指定された構造部品の平面図上の位置を示す位置情報と共にハードディスク28の所定領域に記憶し、その後に上記ステップ306に戻る。
一方、上記ステップ308において否定判定となった場合は、ユーザによって平面図作成画面の最下に表示されている終了ボタンが指定されたものと見なして、本平面図作成処理ルーチン・プログラムを終了する。
上記ステップ306〜ステップ314の処理により、作図した平面図によって示される間取りを構成する構造部品に関する部品種別、部品名、及び要求仕様の各情報が対応する位置情報と共にハードディスク28の所定領域に記憶されることになる。
平面図作成処理ルーチン・プログラムが終了すると、建物設計支援処理プログラム(図7参照。)のステップ202に移行し、平面図作成処理ルーチン・プログラムによってハードディスク28の所定領域に記憶された各種情報を用いて、ユーザによって作図された平面図により示される間取りに所定レベル以上類似する間取りを構成し、かつユーザによって入力された要求仕様を最も満足する仕様情報に関連付けられたオブジェクト情報の検索を次のように行う。
まず、平面図作成処理ルーチン・プログラムのステップ304の処理によって記憶された間取り情報と、ステップ314の処理によって記憶された構造部品に関する部品種別、部品名、要求仕様、及び位置情報の各情報をハードディスク28から読み出し、次に、読み出した間取り情報によって示される間取りから、平面図作成処理ルーチン・プログラムにおいてユーザによって指定された構造部品毎の領域を抽出する。これにより、ユーザにより部品種別として「部屋」が入力された構造部品については上記間取りから、対応する位置情報により示される位置に位置される部屋の領域が抽出される一方、ユーザにより部品種別として「室内部材」が入力された構造部品については上記間取りから、対応する位置情報により示される位置に位置される部材の領域が抽出される。
なお、これらの各領域の抽出手法としては、従来既知の画像領域抽出手法を適用することができるが、本実施の形態に係る建物設計支援処理プログラムでは、平面図作成処理ルーチン・プログラムによって平面図を作図する際に、構造部品の輪郭を示す線を予め定められた特殊な線(例えば、他の線と異なる色の線、他の線と異なる線種(破線、一点鎖線等)の線、他の線と異なる太さの線等。)で描くこととしておき、対応する位置情報によって示される位置が含まれ、かつ上記特殊な線が輪郭とされている画像領域を抽出することによって行う。
次に、以上の処理によって抽出された各構造部品の領域毎に、対応する部品種別及び部品名が関連付けられた構造部品を対象として、描画した際の平面形状が類似するオブジェクト情報を、類似する順に所定数(ここでは、10)だけ構造部品データベースDT1から検索する。なお、当該検索の手法としては、従来既知のパターン・マッチング手法を適用することができる。
最後に、以上の処理によって構造部品毎に所定数ずつ検索されたオブジェクト情報から、対応する要求仕様を満足する仕様情報が関連付けられており、かつ最も類似順位の高いオブジェクト情報を特定し、これを目的とするオブジェクト情報とする。なお、上記構造部品毎に所定数ずつ検索されたオブジェクト情報に、要求仕様を満足しないものしか存在しない場合も考えられるが、この場合は、上記所定数を1つずつ増加させて再び上記検索からの処理を実行する、ということを繰り返して行う。
なお、以上のように、本実施の形態に係る建物設計支援処理プログラムでは、ユーザによって作図された平面図における構造部品の形状との類似度を優先してオブジェクト情報を検索するものとしているが、これに限らず、ユーザによって入力された要求仕様の類似度を優先して検索を行う形態とすることもできる。
構造部品毎の類似するオブジェクト情報の検索が終了すると、次のステップ204では、設計対象建物の3Dモデル(3次元モデル)の作成を次のように行う。
まず、上記ステップ202の処理によって検索されたオブジェクト情報により示される各構造部品の3次元形状を、ユーザによって作図された間取りに対応する位置関係となるように仮想的に配置する。これによって、住居単位で構造部品が組み合わされた状態の3次元形状(以下、「仮想住居形状」という。)が仮想的に構成される。
次に、スケルトン情報をスケルトンデータベースDT2から読み出し、当該スケルトン情報によって示される構造躯体の内部に仮想住居形状が収まるように、当該仮想住居形状を構成するオブジェクト情報によって示される構造部品の寸法を調整する。なお、本実施の形態に係る建物設計支援処理プログラムでは、当該構造部品の寸法の調整を、スケルトン情報によって示される、対応する住居の3次元形状の輪郭線内に仮想住居形状の3次元形状の輪郭線が収まり、かつ仮想住居形状の体積が最大となるように、各構造部品の3次元方向に対する寸法を、同一方向に対しては同一の倍率で縮小又は拡大することによって行うが、これに限らず、例えば、スケルトン情報によって示される、対応する住居の3次元形状の輪郭線内に仮想住居形状の3次元形状の輪郭線が収まり、かつ仮想住居形状の体積が最大より所定割合(例えば、10%)だけ小さくなるように、各構造部品の3次元方向に対する寸法を、構造部品毎に異なる倍率で縮小又は拡大することによって行うものとしてもよい。
なお、設計対象建物に複数の住居が設けられる場合には、更に、以上の手順によって作成した住居毎の3Dモデルを、設計対象建物における配置予定とされている位置に配置することにより、設計対象建物全体の3Dモデルを作成する。
次のステップ206では、上記ステップ204の処理によって作成された3Dモデルを示す3Dモデル表示画面をディスプレイ18によって表示する。
図11には、上記ステップ206の処理によってディスプレイ18に表示される3Dモデル表示画面の表示状態例が示されている。同図に示されるように、本実施の形態に係る3Dモデル表示画面では、各種操作を指示する際にマウス16によってポインティング指定されるボタンが表示されると共に、上記ステップ204の処理によって作成された3Dモデルの斜視図19Bが表示される。
同図に示すような3Dモデル表示画面がディスプレイ18に表示されると、ユーザは、所望の操作に対応するボタンをマウス16にてポインティング指定して当該操作を行う。なお、本実施の形態に係る建物設計支援処理プログラムでは、上記操作に、表示されている斜視図19Bに対応する3Dモデルの間取りの修正を行う操作(以下、「モデル修正操作」という。)を始めとする多数の操作が含まれているが、錯綜を回避するために、以下では、モデル修正操作のみが行えるものとして説明する。
次のステップ208では、ユーザによってモデル修正操作に対応するボタンがポインティング指定されたか否かを判定することにより、モデル修正操作の実行が指示されたか否かを判定し、否定判定となった場合は後述するステップ212に移行する一方、肯定判定となった場合はステップ210に移行して、モデル修正処理ルーチン・プログラムを実行する。以下、図12を参照して、本実施の形態に係るモデル修正処理ルーチン・プログラムについて説明する。
同図のステップ400では、ユーザに対して3Dモデルの間取りを修正させるためのモデル修正入力画面をディスプレイ18に表示し、次のステップ402にて所定情報の入力待ちを行う。
図13(A)には、上記ステップ400の処理によってディスプレイ18に表示されるモデル修正入力画面の表示状態例が示されている。同図に示されるように、本実施の形態に係るモデル修正入力画面では、各種操作を指示する際にマウス16によってポインティング指定されるボタンが表示されると共に、3Dモデル表示画面上で表示していた斜視図19Bに対応する住居の平面図19Cが表示される。
同図に示すようなモデル修正入力画面がディスプレイ18に表示されると、ユーザは、マウス16を用いて、修正対象とする箇所(ここでは、何れかの部屋の壁面)を所望の位置まで移動させる操作を行う。なお、図13(B)には、図13(A)に示されるキッチン19Kの壁面19KWを同図下方に移動させて、キッチン19Kを広くした場合のモデル修正入力画面の表示状態例が示されている。
所望の修正が終了すると、ユーザは、モデル修正入力画面の最下に表示されている終了ボタンをマウス16にてポインティング指定する。これに応じて上記ステップ402が肯定判定となってステップ404に移行し、建物設計支援処理プログラムのステップ204の処理によって作成された3Dモデルに対して、モデル修正入力画面上でユーザにより修正された部分に対応する構造部品の平面形状が修正された形状となるようにオブジェクト情報を変更した後、次のステップ406にて、上記ステップ404の処理による変更に連動して変更する必要のある部分のオブジェクト情報の変更を、他の部分の変更後の状態と整合がとれるように行い、その後に本モデル修正処理ルーチン・プログラムを終了する。
例えば、図13を参照して説明したようにキッチン19Kの壁面19KWを移動させた場合、上記ステップ404の処理により、キッチン19Kに対応する構造部品の平面形状が壁面19KWの移動に応じた形状となるように当該構造部品のオブジェクト情報が変更され、これに連動して上記ステップ406の処理により、キッチン19Kの壁面19KWに接する部屋であるリビング19Lに対応する構造部品の平面形状が、一例として図13(B)に示すように狭くなるように、当該構造部品のオブジェクト情報が変更されることになる。なお、この際、部屋の広さが変更された結果、当該部屋に設置される構造部品の仕様や寸法を変更する必要が生じた場合には、当該変更も行うようにする。これにより、例えば、キッチンが広くなった結果、当該キッチンに設置される流し台が図14(A)に示されるものから図14(B)に示されるものに変更されたり、図14(C)に示されるものから図14(D)に示されるものに変更されたりすることになる。
モデル修正処理ルーチン・プログラムが終了すると、建物設計支援処理プログラム(図7参照。)のステップ212に移行し、以上の処理によって得られた3Dモデルを示す情報をハードディスク28の所定領域に記憶(登録)し、その後に本建物設計支援処理プログラムを終了する。
以上詳細に説明したように、本実施の形態では、各々建物を構成する構造部品の3次元形状を示す複数のオブジェクト情報を、仕様を示す仕様情報と関連付けて記憶手段(ここでは、ハードディスク28)により予め記憶しておき、設計対象とする建物の間取りを示す平面図を作図させ、作図された平面図により示される間取りにおける構造部品毎の要求仕様を示す要求情報を入力し、作図された平面図により示される間取りに所定レベル以上類似する間取りを構成し、かつ前記要求情報により示される要求仕様を最も満足する前記仕様情報に関連付けられたオブジェクト情報を前記記憶手段から読み出して設計対象とする建物の3次元モデルを作成しているので、予め記憶された複数のオブジェクト情報から要求に応じたものを自動的に選択して適用することができ、要求に応じた3次元モデルを容易に作成することができる。
また、本実施の形態では、前記設計対象とする建物のスケルトンの寸法を示す寸法情報を入力し、入力した前記寸法情報により示されるスケルトンの寸法に基づいて、前記3次元モデルが前記建物のスケルトン内に収まるように前記記憶手段から読み出したオブジェクト情報により示される構造部品の寸法を調整して前記3次元モデルを作成しているので、より容易に要求に応じた3次元モデルを作成することができる。
また、本実施の形態では、作成された前記3次元モデルを示す画像を表示手段(ここでは、ディスプレイ18)によって表示し、前記表示手段によって表示された画像に対する間取りの一部の変更を指示する指示情報を入力し、前記3次元モデルに対して、入力した前記指示情報により指示された間取りの一部の変更を行うと共に、これに連動して変更する必要のある部分の変更を他の部分の変更後の状態と整合がとれるように行っているので、独創性が高く、かつ要求に応じた3次元モデルを容易に作成することができる。
更に、本実施の形態では、前記複数のオブジェクト情報に、部屋単位の3次元形状を示す情報を含めているので、部屋単位での要求に応じた3次元モデルを容易に作成することができる。
[第2の実施の形態]
本第2の実施の形態では、予め記憶しておく複数のオブジェクト情報に、住居単位の3次元形状を示す情報を含めた場合の形態例について説明する。
本第2の実施の形態に係る建物設計支援装置10では、平面図作成処理ルーチン・プログラムを用いてユーザが作図した平面図に最も類似する住居単位の構造部品を自動的に検索する。
この自動検索には、平面図自体のパターン・マッチングを行うことでも対応できるが、本第2の実施の形態に係る建物設計支援装置10では、作図した平面図をシェイプ・グラマー、或いはスキーマ・グラマーと呼ばれる空間構成を記述するための記述言語で記号化し、これを予め同様の記述言語で記号化された住居単位の構造部品から検索して、適合するものを抽出することで実現する。
利用する空間構成記述言語としては、例えば「青木義次、「建築平面記述言語と空間構成解析方法」、日本建築学会計画系論文集、第494号、pp.153−159、1997年4月」にて示されているSAL(Spatial Allocation Language)を用いることができる。
しかしながら、以上のような空間構成記述言語による検索を行っても適合する構造部品を検索することができない場合もあり、この場合、作図された平面図に最も類似する構造部品を検索して、検索した構造部品を用いて設計を進めることもできるが、本第2の実施の形態に係る建物設計支援装置10では、部分的に適合した複数の構造部品を組み合わせることで、全体が適合した構造部品を自動的に生成する。
例えば、図15(A)に示す平面図がユーザによって作図されたとする。これをSALで表記すると、「//++/RCD/RC+/SBK+/OJL」となる。ところが、これが予め用意された構造部品の中にはなく、「//++/RCD/RC+/SBKL」と「/+BK+/OJL」という部分的に一致する構造部品が検索されたとする。これらは、平面図にすると、各々図15(B)及び図15(C)に示すものとなる。これを、図15(D)に模式的に示すように合成すれば、目的とする構造部品を生成することができる。
この場合、異なる構造部品の接合部分の細部の整合性は保証されないため、事後のチェックが必要となる。例えば、上記の例のように異なる構造部品を接合すると、1つの壁を介して異なる構造部品を接続することになり、この壁の表と裏とで登録されている構造部品から仕様が変更される場合がある。この仕様変更に整合性があるか否かは、このままではわからない。
このような不具合を防ぐためには、住居単位の構造部品を構成する各構造部品に対して、隣接する構造部品が変わることによって、形状、材質等のパラメータを自動的に調整することで、整合性のとれた3次元モデルを自動的に生成することもできる。例えば、軽鉄間仕切りと木軸の間仕切りが組み合わされた場合には、住居の全体の仕様に応じて、どちらかに統一される。
ところで、構造部品の接合を行う場合、上記の例では、図15(B)及び図15(C)のSAL表記上で「BK」という共通の文字列があり、図15(D)のような接合のほかに「//++/RCD/RC+/S」+「BK+/OJL」という接合も可能である。しかしながら、この場合は図15(C)の構造部品の切れ目は構造部品の外側、すなわちスケルトン部分となるため、図15(B)の構造部品の内部の切れ目と接合した場合の不整合が大きくなる可能性が高い。従って、この場合は、図15(D)に示した接合方法を選択する。この他、一般的には「+」、「/」等の空間構成オペレータの後で切ると部品間の関係が変わってしまうため、空間構成オペレータの前で切る方が整合性をとりやすい。
このように、異なる構造部品を整合性を保ちつつ自動的に合成することが可能であるので、予め用意した住居単位の構造部品を様々に組み合わせることで、多種多様な住居単位の構造部品を生成することが可能となり、予め登録されている住居単位の構造部品に縛られない自由な設計を行うことができる。
次に、図16を参照して、本第2の実施の形態に係る構造部品データベースDT1'の構成を説明する。
同図に示すように、本第2の実施の形態に係る構造部品データベースDT1'は、上記第1の実施の形態に係る構造部品データベースDT1に比較して、部品種別として「住居」が含まれている点と、オブジェクト情報毎に検索キーを登録することができるようになっている点が異なっている。すなわち、この構造部品データベースDT1'には、構造部品として住居単位の3次元形状を示すオブジェクト情報が登録されると共に、対応する住居単位の構造部品における平面形状の空間構成を前述したSALにて表記した検索キーが登録されている。
なお、構造部品データベースDT1'における部品名、仕様、及びオブジェクト情報の各情報は、上記第1の実施の形態に係る構造部品データベースDT1と同様のものである。
次に、本第2の実施の形態に係る建物設計支援装置10の作用を説明する。なお、スケルトン情報入力処理プログラム(図6参照。)によってスケルトン情報を登録する際の作用は上記第1の実施の形態と同様であるので、ここでの説明は省略し、まず、図17を参照して、スケルトン情報が登録された建物を設計する際の建物設計支援装置10の作用を説明する。なお、図17は、ユーザによりキーボード14、マウス16等の操作によってスケルトン情報を登録した建物の設計を実施する旨の指示入力が行われた際に本第2の実施の形態に係る建物設計支援装置10のCPU22によって実行される建物設計支援処理プログラムの処理の流れを示すフローチャートであり、当該プログラムもハードディスク28のプログラム領域PGに予め記憶されている。また、同図における図7と同一の処理を行うステップについては図7と同一のステップ番号を付して、その説明を省略する。
同図のステップ200'では、上記第1の実施の形態に係る平面図作成処理ルーチン・プログラム(図8も参照。)と略同様のプログラムを実行する。但し、本第2の実施の形態に係る平面図作成処理ルーチン・プログラムでは、平面図作成画面上で平面図の作図が終了した際に、ユーザが当該平面図内の任意の位置をマウス16にてポインティング指定して、当該平面図により示される住居の部品種別、部品名、及び要求仕様の各情報を入力し、その後に平面図作成画面の最下に表示されている終了ボタンをマウス16にてポインティング指定するものとされている点が上記第1の実施の形態に係る平面図作成処理ルーチン・プログラムと異なる。
図18には、ユーザによって作図した平面図内の任意の位置がポインティング指定された際にディスプレイ18に表示される情報入力画面18Cの表示状態例が示されている。同図に示されるように、本実施の形態に係る情報入力画面18Cでは、部品種別、部品名、及び要求仕様の各情報を入力するための矩形枠が表示される。同図に示すような情報入力画面18Cがディスプレイ18に表示されると、ユーザは、キーボード14及びマウス16等を用いた操作によって、作図した平面図により示される住居に関する情報を対応する矩形枠内に入力し、その後に平面図作成画面の最下に表示されている終了ボタンをマウス16にてポインティング指定する。これに応じて、CPU22は、情報入力画面18Cによって入力された情報をハードディスク28の所定領域に記憶し、その後に平面図作成処理ルーチン・プログラムを終了する。
本平面図作成処理ルーチン・プログラムの処理により、作図した平面図によって示される住居に関する部品種別、部品名、及び要求仕様の各情報がハードディスク28の所定領域に記憶されることになる。
平面図作成処理ルーチン・プログラムが終了すると、建物設計支援処理プログラム(図17参照。)のステップ202’に移行し、類似オブジェクト検索処理ルーチン・プログラムを実行する。以下、図19を参照して、本実施の形態に係る類似オブジェクト検索処理ルーチン・プログラムについて説明する。
同図のステップ500では、ユーザによって作図された平面図に基づいて、当該平面図によって示される住居の間取り(空間構成)を所定の空間構成記述言語(ここでは、SAL)にて表記した文字列の情報(以下、「検索キーA」という。)を作成し、次のステップ502にて、各々上記検索キーAにより示される文字列の少なくとも一部に一致する文字列のうち、何番目に長いものを適用するかを示す複数の最長順序数列n(i)を‘1’に初期化する。すなわち、本ステップ502では、初期設定として、複数の最長順序数列n(i)の各々に対して、検索キーAに1番長く(最も長く)一致する文字列を適用することを示す情報を設定している。また、ステップ502では、iの値を‘1’に、検索未終了フラグを‘0’に、各々初期設定する。
次のステップ504では、平面図作成処理ルーチン・プログラムによってハードディスク28に記憶された、ユーザにより作図された平面図によって示される住居に関する部品種別、部品名、及び要求仕様の各情報を読み出し、当該情報に合致する構造部品を対象として、上記ステップ500の処理により作成した検索キーAにより構造部品データベースDT1’を検索し、次のステップ506にて、検索キーAに全て一致する検索キーが存在したか否かを判定して、肯定判定となった場合はステップ508に移行する一方、否定判定となった場合にはステップ510に移行する。
ステップ508では、上記ステップ506にて検索キーAに全て一致すると判定された検索キーに対応するオブジェクト情報を構造部品データベースDT1’から読み出し、その後に本類似オブジェクト検索処理ルーチン・プログラムを終了する。
一方、ステップ510では、上記ステップ504の検索処理において、検索キーAに部分的に一致する検索キーが存在したか否かを判定し、肯定判定となった場合はステップ512に移行して、n(i)番目に長い文字列が一致した構造部品のオブジェクト情報を構造部品データベースDT1’から読み出し、ハードディスク28の所定領域に記憶した後にステップ514に移行し、上記ステップ512において読み出した構造部品に対応する検索キーを除く文字列で新たな検索キーAを作成し、次のステップ516にて、iを1だけインクリメントした後に上記ステップ504に戻る。
一方、上記ステップ510において否定判定となった場合はステップ518に移行し、それまでに適用した最長順序数列n(i)から任意のものをランダムに選択し、次のステップ520では、‘+1’又は‘−1’をランダムに発生して上記ステップ518にて選択した最長順序数列n(i)に設定されている値に対して加算し、その後にステップ522に移行する。なお、上記ステップ520では、加算後の最長順序数列n(i)の値が‘1’を下限値とするように制限する。
ステップ522では、上記ステップ504〜ステップ520の処理の繰り返し実行された回数が所定回数(ここでは、10000回)に達したか否かを判定し、否定判定となった場合は上記ステップ504に戻り、肯定判定となった場合にはステップ524に移行して、検索未終了フラグに‘1’を設定した後に本類似オブジェクト検索処理ルーチン・プログラムを終了する。
本類似オブジェクト検索処理ルーチン・プログラムにより、ユーザによって指定された要求仕様に合致し、かつユーザによって作図された平面図により示される住居の間取りに一致する構造部品が予め登録されている場合には、当該構造部品のオブジェクト情報が読み出されてハードディスク28の所定領域に記憶される。一方、ユーザによって指定された要求仕様に合致し、かつ組み合わせることにより、ユーザによって作図された平面図により示される住居の間取りに一致する構造部品を構成することができる複数の構造部品が予め登録されている場合には、当該複数の構造部品のオブジェクト情報が読み出されてハードディスク28の所定領域に記憶される。しかしながら、ステップ504〜ステップ522の処理を所定回数繰り返しても、組み合わせることにより、ユーザによって作図された平面図により示される住居の間取りに一致する構造部品を構成することができる複数の構造部品が構造部品データベースDT1’から検索できなかった場合には、検索未終了フラグに‘1’が設定された状態で類似オブジェクト検索処理ルーチン・プログラムが終了することになる。
なお、以上のように、本実施の形態に係る類似オブジェクト検索処理ルーチン・プログラムでは、ユーザによって入力された要求仕様の類似度を優先してオブジェクト情報を検索するものとしているが、これに限らず、ユーザによって作図された平面図により示される間取りの類似度を優先して検索する形態とすることもできる。
類似オブジェクト検索処理ルーチン・プログラムが終了すると、建物設計支援処理プログラム(図17参照。)のステップ203に移行し、検索未終了フラグが検索未終了を示す状態(ここでは、‘1’が設定されている状態)となっているか否かを判定し、肯定判定となった場合は本建物設計支援処理プログラムを終了する一方、否定判定となった場合にはステップ204’に移行する。
ステップ204’では、類似オブジェクト検索処理ルーチン・プログラムによってハードディスク28に記憶されたオブジェクト情報に基づいて、設計対象建物の3Dモデルを次のように作成する。
まず、類似オブジェクト検索処理ルーチン・プログラムによって記憶されたオブジェクト情報をハードディスク28から読み出し、当該オブジェクト情報が複数存在する場合には、当該複数のオブジェクト情報を前述したように接合(合成)することにより、ユーザによって作図された平面図と同一の間取りを示すオブジェクト情報を作成する。なお、類似オブジェクト検索処理ルーチン・プログラムにおいてオブジェクト情報が1つのみ記憶された場合は、当該オブジェクト情報がユーザによって作図された平面図に一致するものであるので、このような接合を行う必要はない。以上の処理によって得られたオブジェクト情報により示される住居単位の構造部品の3次元形状が、上記第1の実施の形態における「仮想住居形状」に相当することになる。
次に、スケルトン情報をスケルトンデータベースDT2から読み出し、当該スケルトン情報によって示される構造躯体の内部に仮想住居形状が収まるように、当該仮想住居形状を構成するオブジェクト情報によって示される構造部品の寸法を調整する。なお、本実施の形態に係る建物設計支援処理プログラムでは、当該構造部品の寸法の調整を、スケルトン情報によって示される、対応する住居の3次元形状の輪郭線内に仮想住居形状の輪郭線が収まり、かつ仮想住居形状の体積が最大となるように、各構造部品の3次元方向に対する寸法を、同一方向に対しては同一の倍率で縮小又は拡大することによって行うが、これに限らず、例えば、スケルトン情報によって示される、対応する住居の3次元形状の輪郭線内に仮想住居形状の輪郭線が収まり、かつ仮想住居形状の体積が最大より所定割合(例えば、10%)だけ小さくなるように、各構造部品の3次元方向に対する寸法を、構造部品毎に異なる倍率で縮小又は拡大することによって行うものとしてもよい。
なお、設計対象建物に複数の住居が設けられる場合には、更に、以上の手順によって作成した住居毎の3Dモデルを、設計対象建物における配置予定とされている位置に配置することにより、設計対象建物全体の3Dモデルを作成する。
以上の処理によって設計対象建物の3Dモデルの作成が終了すると、ステップ206以降の処理を上記第1の実施の形態に係る建物設計支援処理プログラムと同様に実行した後に本建物設計支援処理プログラムを終了する。
以上詳細に説明したように、本実施の形態では、上記第1の実施の形態と同様の効果を奏することができると共に、各々建物を構成する構造部品の3次元形状を示し、かつ予め記憶された複数のオブジェクト情報に、住居単位の3次元形状を示す情報を含めているので、住居単位での要求に応じた3次元モデルを容易に作成することができる。
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。本発明の要旨を逸脱しない範囲で上記実施の形態に多様な変更または改良を加えることができ、そのような変更または改良を加えた形態も本発明の技術的範囲に含まれる。
また、上記の実施の形態は、クレーム(請求項)にかかる発明を限定するものではなく、また実施の形態の中で説明されている特徴の組合せの全てが発明の解決手段に必須であるとは限らない。上記の実施の形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜の組合せにより種々の発明を抽出できる。上記の実施の形態に示される全構成要件から幾つかの構成要件が削除されても、効果が得られる限りにおいて、この幾つかの構成要件が削除された構成が発明として抽出され得る。
例えば、上記実施の形態では、作成した3Dモデルをディスプレイ18にて表示する場合について説明したが、本発明はこれに限定されるものではなく、例えば、作成した3Dモデルをプリンタ50にて印刷する形態とすることもできる。この場合、作成した3Dモデルを修正することはできなくなるものの、3Dモデルを示す画像を任意に参照することができるようになる。
また、上記実施の形態では、構造部品データベースが予め記憶されたハードディスク28を内蔵した単体のパーソナル・コンピュータによって本発明を実現した場合について説明したが、本発明はこれに限定されるものではなく、例えば、当該ハードディスク28を内蔵しないパーソナル・コンピュータに、構造部品データベースが予め記憶された記憶媒体又は記憶装置が設けられた外部装置を、通信回線を介してネットワーク接続することにより、パーソナル・コンピュータと外部装置とによって本発明を実現する形態とすることもできる。この場合も、上記実施の形態と同様の効果を奏することができる。
その他、上記実施の形態で説明した建物設計支援装置10の構成(図1〜図3参照。)は一例であり、本発明の主旨を逸脱しない範囲内で適宜変更可能であることは言うまでもない。例えば、建物設計支援装置10に接続したプリンタ50は必須ではなく、削除することもできる。
また、上記実施の形態で示した構造部品データベースDT1、DT1’のデータ構造(図4、図16参照。)も一例であり、必要に応じて記憶する項目を追加したり、不要な項目を削除したりすることができることは勿論のこと、各項目の記憶内容も適宜変更可能であることは言うまでもない。
また、上記実施の形態で示した各種処理プログラムの処理の流れ(図6〜図8、図12、図17、図19参照。)も一例であり、本発明の主旨を逸脱しない範囲内で適宜変更することができることは言うまでもない。
更に、上記実施の形態で示した各種表示画面の構成(図9〜図11、図13、図18参照。)も一例であり、本発明の主旨を逸脱しない範囲内において適宜変更可能であることは言うまでもない。