(57)【要約】【課題】三次元形状の作成を容易にする。【解決手段】三次元形状作成装置は、三次元形状を示す座標点群のデータから対象物の三次元形状を作成し、座標値取得部と平面算出部と交線算出部と交点算出部とを備える。座標値取得部は、座標点群の中から、対象物の表面を形成する一つの平面に含まれる３つ以上の座標点の座標値を取得する。平面算出部は、取得された座標値に基づいて、３つ以上の座標点を含む平面の方程式である平面方程式を算出する。交線算出部は、算出された複数の平面方程式に基づいて、平面方程式が算出された複数の平面が交わる交線の方程式である交線方程式を算出する。交点算出部は、算出された複数の交線方程式に基づいて、交線方程式が算出された複数の交線が交わる交点の座標値を算出する。【選択図】図１
2020052978.tif 000002
【特許請求の範囲】
【請求項１】
三次元座標で表される座標点の集合により少なくとも１つの対象物における表面の三次元形状を示す座標点群のデータから、前記少なくとも１つの対象物の三次元形状を作成する三次元形状作成装置であって、
前記座標点群の中から、前記少なくとも１つの対象物の表面を形成する一つの平面に含まれる３つ以上の前記座標点の座標値を取得するように構成された座標値取得部と、
前記座標値取得部により取得された前記座標値に基づいて、３つ以上の前記座標点を含む前記平面の方程式である平面方程式を算出するように構成された平面算出部と、
前記平面算出部により算出された複数の前記平面方程式に基づいて、前記平面算出部により前記平面方程式が算出された複数の前記平面が交わる交線の方程式である交線方程式を算出するように構成された交線算出部と、
前記交線算出部により算出された複数の前記交線方程式に基づいて、前記交線算出部により前記交線方程式が算出された複数の前記交線が交わる交点の座標値を算出するように構成された交点算出部と
を備える三次元形状作成装置。
【請求項２】
請求項１に記載の三次元形状作成装置であって、
前記平面算出部により前記平面方程式が算出された複数の前記平面のそれぞれについて、前記平面上に存在する複数の前記交線により囲まれる最大の領域を閉合領域として作成するように構成された閉合領域作成部と、
前記閉合領域作成部により作成された前記閉合領域を、前記平面上に存在する複数の前記交線により分割して、複数の分割領域を作成するように構成された分割領域作成部と、
前記分割領域作成部により作成された複数の前記分割領域のうち、前記座標値取得部により取得された前記座標値に対応する前記座標点を含む前記分割領域を有効分割領域として設定するように構成された有効設定部と、
前記有効設定部により設定された１または複数の前記有効分割領域を囲む線を、有効境界として設定するように構成された境界設定部と
を備える三次元形状作成装置。
【請求項３】
請求項２に記載の三次元形状作成装置であって、
前記交線算出部により前記交線方程式が算出された複数の前記交線のうち、前記境界設定部により前記有効境界に設定されなかった部分を無効に設定するように構成された無効設定部を備える三次元形状作成装置。
【請求項４】
三次元座標で表される座標点の集合により少なくとも１つの対象物における表面の三次元形状を示す座標点群のデータから、前記少なくとも１つの対象物の三次元形状を作成する三次元形状作成方法であって、
前記座標点群の中から、前記少なくとも１つの対象物の表面を形成する一つの平面に含まれる３つ以上の前記座標点の座標値を取得する座標値取得手順と、
前記座標値取得手順により取得された前記座標値に基づいて、３つ以上の前記座標点を含む前記平面の方程式である平面方程式を算出する平面算出手順と、
前記平面算出手順により算出された複数の前記平面方程式に基づいて、前記平面算出手順により前記平面方程式が算出された複数の前記平面が交わる交線の方程式である交線方程式を算出する交線算出手順と、
前記交線算出手順により算出された複数の前記交線方程式に基づいて、前記交線算出手順により前記交線方程式が算出された複数の前記交線が交わる交点の座標値を算出する交点算出手順と
を備える三次元形状作成方法。
【請求項５】
三次元座標で表される座標点の集合により少なくとも１つの対象物における表面の三次元形状を示す座標点群のデータから、前記少なくとも１つの対象物の三次元形状を作成するために、コンピュータを、
前記座標点群の中から、前記少なくとも１つの対象物の表面を形成する一つの平面に含まれる３つ以上の前記座標点の座標値を取得するように構成された座標値取得部、
前記座標値取得部により取得された前記座標値に基づいて、３つ以上の前記座標点を含む前記平面の方程式である平面方程式を算出するように構成された平面算出部、
前記平面算出部により算出された複数の前記平面方程式に基づいて、前記平面算出部により前記平面方程式が算出された複数の前記平面が交わる交線の方程式である交線方程式を算出するように構成された交線算出部、及び、
前記交線算出部により算出された複数の前記交線方程式に基づいて、前記交線算出部により前記交線方程式が算出された複数の前記交線が交わる交点の座標値を算出するように構成された交点算出部と
として機能させるための三次元形状作成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、物体の表面の三次元形状を示す座標点群のデータから三次元形状を作成する三次元形状作成装置、方法およびプログラムに関する。
【背景技術】
【０００２】
近年、「３次元地理空間情報を活用した安全・安心・快適な社会実現」を目的として、３次元地図データの整備および更新が進められている。国家戦略として３次元地理空間情報を最重要基盤と位置づけ、国が主導してその整備の効率化および迅速化を図っている。こうして整備された３次元地図データは、高精度測位社会の発展とサービス展開のために必要不可欠である。
【０００３】
また、建築分野のＢＩＭおよび土木分野のＣＩＭにおいても、３次元モデルを中心にデータの共有を行うことで、業務効率の改善および高度化が行われている。ＢＩＭは、Building Information Modelingの略である。ＣＩＭは、Construction Information Modelingの略である。
【０００４】
２次元データのみでは調査、施工および維持管理について関係者間のイメージ共有が難しかった場面でも、３次元モデルであるならば完成図に近い形となるため、関係者間で認識の摺り合わせが行い易くなる。また、見えてこなかったものがより見えてくるため、トラブルの未然防止、および議論の活発化など、業務効率の改善に繋がっていく。
【０００５】
こうした背景により、３次元地図データの需要が増加している。特許文献１には、レーザスキャナを用いて、対象物の座標点群データを取得する技術が記載されている。しかし、３次元地図の作成は、現状では時間および人的資源の面でコストが高く、整備がうまく進んでいない。
【０００６】
屋内または屋外の建物形状の３次元モデルを作成する従来の手法として、２次元図面の作成に必要な情報を測量機で計測し、この計測データを用いて３次元モデルを作成する手法と、３次元空間情報をレーザスキャナなどで大量に取得し、３次元空間情報から必要な情報を抽出して３次元モデルを作成する手法とが挙げられる。測量機を用いる場合も、レーザスキャナを用いる場合も、３次元モデルを作成するために必要な情報は、建物形状の頂点であり、頂点を結線することで、３次元モデルを作成する。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特許第４３４４８６９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかし、建物形状の頂点の位置情報を取得するのは困難である。測量機などを使用して頂点を視準し座標値を取得する方法は、計測に用いるプリズムを頂点に設置することが困難であること、および、熟練者でないとレーザポインタを頂点に当てて正確な位置を測定するのが困難であることなど、複数の問題を有している。一方、レーザスキャナを用いて３次元空間の点群データを作成した場合には、点密度によっては、頂点の位置データを取得できないことがある。また、測量機およびレーザスキャナの両方において、障害物があり頂点が隠れてしまう場合には、頂点の位置データを取得できない。
【０００９】
本開示は、三次元形状の作成を容易にすることを目的とする。
【課題を解決するための手段】
【００１０】
本開示の一態様は、三次元座標で表される座標点の集合により少なくとも１つの対象物における表面の三次元形状を示す座標点群のデータから、少なくとも１つの対象物の三次元形状を作成する三次元形状作成装置である。
【００１１】
そして、本開示の三次元形状作成装置は、座標値取得部と、平面算出部と、交線算出部と、交点算出部とを備える。
座標値取得部は、座標点群の中から、少なくとも１つの対象物の表面を形成する一つの平面に含まれる３つ以上の座標点の座標値を取得するように構成される。
【００１２】
平面算出部は、座標値取得部により取得された座標値に基づいて、３つ以上の座標点を含む平面の方程式である平面方程式を算出するように構成される。
交線算出部は、平面算出部により算出された複数の平面方程式に基づいて、平面算出部により平面方程式が算出された複数の平面が交わる交線の方程式である交線方程式を算出するように構成される。
【００１３】
交点算出部は、交線算出部により算出された複数の交線方程式に基づいて、交線算出部により交線方程式が算出された複数の交線が交わる交点の座標値を算出するように構成される。
【００１４】
このように構成された本開示の三次元形状作成装置は、一つの平面について３つ以上の座標点の座標値を特定することにより、対象物の表面を形成する複数の平面を作成することができる。そして、本開示の三次元形状作成装置は、作成した複数の平面が交わる交線を作成することができる。これにより、本開示の三次元形状作成装置は、作成した複数の交線が交わる交点を特定することができる。
【００１５】
このため、本開示の三次元形状作成装置は、対象物の頂点を実際に計測することなく、対象物の頂点の位置を特定することができ、対象物の三次元形状の作成を容易にすることができる。
【００１６】
本開示の一態様では、閉合領域作成部と、分割領域作成部と、有効設定部と、境界設定部とを備えるようにしてもよい。
閉合領域作成部は、平面算出部により平面方程式が算出された複数の平面のそれぞれについて、平面上に存在する複数の交線により囲まれる最大の領域を閉合領域として作成するように構成される。分割領域作成部は、閉合領域作成部により作成された閉合領域を、平面上に存在する複数の交線により分割して、複数の分割領域を作成するように構成される。
【００１７】
有効設定部は、分割領域作成部により作成された複数の分割領域のうち、座標値取得部により取得された座標値に対応する座標点を含む分割領域を有効分割領域として設定するように構成される。境界設定部は、有効設定部により設定された１または複数の有効分割領域を囲む線を、有効境界として設定するように構成される。
【００１８】
このように構成された本開示の三次元形状作成装置は、平面上に存在する複数の交線によって囲まれる領域（すなわち、分割領域）のうち、対象物の表面を形成する平面ではない領域が、対象物の表面を形成する平面であると特定されてしまう事態の発生を抑制することができる。
【００１９】
本開示の一態様では、交線算出部により交線方程式が算出された複数の交線のうち、境界設定部により有効境界に設定されなかった部分を無効に設定するように構成された無効設定部を備えるようにしてもよい。
【００２０】
このように構成された本開示の三次元形状作成装置は、交線算出部により交線方程式が算出された交線において、対象物の表面上に実際に存在していない部分を除外することができる。これにより、本開示の三次元形状作成装置は、有効境界の設定が行われていない平面において有効境界の設定を行う場合に、平面上に存在する複数の交線のうち、既に無効にされた部分を除外して、複数の分割領域を作成することができる。すなわち、本開示の三次元形状作成装置は、対象物の表面上に実際に存在していない線を用いて、分割領域を作成する頻度を低減することができる。このため、本開示の三次元形状作成装置は、平面上に存在する複数の交線によって囲まれる領域（すなわち、分割領域）のうち、対象物の表面を形成する平面ではない領域が、対象物の表面を形成する平面であると特定されてしまう事態の発生を更に抑制することができる。
【００２１】
本開示の別の態様は、三次元座標で表される座標点の集合により少なくとも１つの対象物における表面の三次元形状を示す座標点群のデータから、少なくとも１つの対象物の三次元形状を作成する三次元形状作成方法である。
【００２２】
そして、本開示の三次元形状作成方法は、座標値取得手順と、平面算出手順と、交線算出手順と、交点算出手順とを備える。
座標値取得手順は、座標点群の中から、少なくとも１つの対象物の表面を形成する一つの平面に含まれる３つ以上の座標点の座標値を取得する。
【００２３】
平面算出手順は、座標値取得手順により取得された座標値に基づいて、３つ以上の座標点を含む平面の方程式である平面方程式を算出する。
交線算出手順は、平面算出手順により算出された複数の平面方程式に基づいて、平面算出手順により平面方程式が算出された複数の平面が交わる交線の方程式である交線方程式を算出する。
【００２４】
交点算出手順は、交線算出手順により算出された複数の交線方程式に基づいて、交線算出手順により交線方程式が算出された複数の交線が交わる交点の座標値を算出する。
本開示の三次元形状作成方法は、本開示の三次元形状作成装置にて実行される方法であり、当該方法を実行することで、本開示の三次元形状作成装置と同様の効果を得ることができる。
【００２５】
本開示の更に別の態様は、コンピュータを、座標値取得部、平面算出部、交線算出部、及び、交点算出部として機能させるための三次元形状作成プログラムである。
本開示の三次元形状作成プログラムによって制御されるコンピュータは、本開示の三次元形状作成装置の一部を構成することができ、本開示の三次元形状作成装置と同様の効果を得ることができる。
【図面の簡単な説明】
【００２６】
【図１】三次元形状作成装置の構成を示すブロック図である。
【図２】三次元形状作成処理を示すフローチャートである。
【図３】平面作成処理を示すフローチャートである。
【図４】平面の法線ベクトルと平面上のベクトルとを示す図である。
【図５】視点座標値を示す図である。
【図６】交線・交点算出処理を示すフローチャートである。
【図７】作成平面と選択平面との交線を示す図である。
【図８】交線と交線との交点を示す図である。
【図９】最近傍点を示す図である。
【図１０】境界設定処理を示すフローチャートである。
【図１１】閉合領域を説明する図である。
【図１２】分割領域を示す図である。
【図１３】有効境界の第１の例を示す図である。
【図１４】有効境界の第２の例を示す図である。
【図１５】建築物の平面図、および、第１平面上の交線を示す図である。
【図１６】第１平面上の交線が無効に設定された後の第２平面上の交線を示す図である。
【図１７】交線と交点とに基づいて作成される三次元形状を示す図である。
【図１８】第１平面上の交線が無効に設定される前の第２平面上の交線を示す図である。
【図１９】有効境界の設定を説明する図である。
【発明を実施するための形態】
【００２７】
以下に本開示の実施形態を図面とともに説明する。
本実施形態の三次元形状作成装置１は、図１に示すように、表示部１１と、操作入力部１２と、データ記憶部１３と、データ入出力部１４と、制御部１５とを備える。
【００２８】
表示部１１は、図示しない表示装置を備え、表示装置の表示画面に各種画像を表示する。
操作入力部１２は、図示しないキーボードおよびマウスを介して使用者が行った入力操作を特定するための入力操作情報を出力する。
【００２９】
データ記憶部１３は、各種データを記憶するための記憶装置である。
データ入出力部１４は、有線または無線で接続された外部機器との間でデータの入出力を行う。
【００３０】
制御部１５は、ＣＰＵ、ＲＯＭおよびＲＡＭ等を備えた周知のマイクロコンピュータを中心に構成される。マイクロコンピュータの各種機能は、ＣＰＵが非遷移的実体的記録媒体に格納されたプログラムを実行することにより実現される。この例では、ＲＯＭが、プログラムを格納した非遷移的実体的記録媒体に該当する。また、このプログラムの実行により、プログラムに対応する方法が実行される。なお、ＣＰＵが実行する機能の一部または全部を、一つあるいは複数のＩＣ等によりハードウェア的に構成してもよい。また、制御部１５を構成するマイクロコンピュータの数は１つでも複数でもよい。
【００３１】
次に、制御部１５が実行する三次元形状作成処理の手順を説明する。三次元形状作成処理は、三次元形状作成処理を実行するために制御部１５に記憶された三次元形状作成プログラム２０を使用者の入力操作により起動することで実行される。なお、三次元形状作成プログラム２０は、三次元形状作成装置１に予めインストールされていてもよいし、記録媒体またはネットワークを介してインストールされるようにしてもよい。記録媒体としては、例えば光ディスク、磁気ディスクおよび半導体メモリなどが挙げられる。
【００３２】
三次元形状作成処理が実行されると、制御部１５は、図２に示すように、まず、Ｓ１０にて、三次元形状を作成する対象となる建築物（以下、対象建築物）を選択するための画像（以下、対象建築物選択画像）を表示部１１の表示画面に表示する。
【００３３】
その後Ｓ２０にて、使用者により選択された対象建築物を特定する対象建築物特定情報が操作入力部１２から入力されたか否かを判断する。ここで、対象建築物情報が入力されていない場合には、Ｓ２０の処理を繰り返すことにより、対象建築物特定情報が入力されるまで待機する。そして、対象建築物特定情報が入力されると、Ｓ３０にて、対象建築物特定情報により特定される対象建築物の座標点群データをデータ記憶部１３から取得する。なお、対象建築物の座標点群データは、三次元形状作成処理を開始する前に予めデータ記憶部１３に記憶される。
【００３４】
対象建築物の座標点群データは、対象建築物の三次元形状を表す複数地点の三次元座標の集合であり、レーザスキャナを利用して取得される。以下、Ｓ３０で取得した座標点群データにより表される座標点群を構成する複数の点のそれぞれを座標点という。なお、対象建築物の座標点群データは、対象建築物の外側の形状、または、対象建築物の内側の形状を示す。
【００３５】
そしてＳ４０にて、表示部１１の表示画面に、Ｓ３０で取得した座標点群データを構成する複数の座標点の位置を立体的に表示する。なお、制御部１５は、キーボードおよびマウスを介して使用者が行う入力操作により、複数の座標点の位置を立体的に表示している画像を拡大したり、縮小したりすることができる。同様に、制御部１５は、キーボードおよびマウスを介して使用者が行う入力操作により、複数の座標点の位置を立体的に表示しているときの視点を移動させたり、回転させたりすることができる。
【００３６】
次にＳ５０にて、後述する平面作成処理を実行する。平面作成処理が終了すると、Ｓ６０にて、後述する交線・交点算出処理を実行する。交線・交点算出処理が終了すると、Ｓ７０にて、後述する境界設定処理を実行する。境界設定処理が終了すると、Ｓ８０にて、Ｓ７０にて設定された境界を示すデータをデータ記憶部１３に記憶する。
【００３７】
そしてＳ９０にて、未登録平面確認画像を表示部１１の表示画面に表示する。未登録平面確認画像は、対象建築物を構成する壁、天井および床等のうち、平面作成処理において平面として登録されていないものが残っているか否かを選択するための画像である。
【００３８】
その後Ｓ１００にて、使用者により選択された選択結果を示す未登録平面確認情報が操作入力部１２から入力されたか否かを判断する。
ここで、未登録平面確認情報が入力されていない場合には、Ｓ１００の処理を繰り返すことにより、未登録平面確認情報が入力されるまで待機する。そして、未登録平面確認情報が入力されると、Ｓ１１０にて、未登録平面確認情報に基づいて、未登録平面が残っているか否かを判断する。具体的には、平面作成処理において平面として登録されていないものが残っていることを未登録平面確認情報が示す場合には、未登録平面が残っていると判断する。一方、平面作成処理において平面として登録されていないものが残っていないことを未登録平面確認情報が示す場合には、未登録平面が残っていないと判断する。
【００３９】
ここで、未登録平面が残っている場合には、Ｓ５０に移行する。一方、未登録平面が残っていない場合には、三次元形状作成処理を終了する。
次に、Ｓ５０で実行される平面作成処理の手順を説明する。
【００４０】
平面作成処理が実行されると、制御部１５は、図３に示すように、まず、Ｓ２１０にて、３点の座標値が入力されたか否かを判断する。なお、座標値の入力は、使用者がマウスを操作することにより、表示部１１の表示画面上において所望の座標点をカーソルで指定することにより行われる。使用者は、同一平面上に存在していると使用者が考える３つの座標点をカーソルで指定する。３つの座標点を指定する場合は、３つの座標点で囲まれた領域が可能な限り広く、且つ、３つの座標点で囲まれた領域の縦横比が均等であることが望ましい。
【００４１】
ここで、３点の座標値が入力されていない場合には、Ｓ２１０の処理を繰り返すことにより、３点の座標値が入力されるまで待機する。そして、３点の座標値が入力されると、Ｓ２２０にて、入力された３つの座標点が同一直線上に存在しているか否かを判断する。ここで、３つの座標点が同一直線上に存在している場合には、Ｓ２１０に移行する。
【００４２】
一方、３つの座標点が同一直線上に存在していない場合には、Ｓ２３０にて、入力された３つの座標点を含む平面の方程式を算出する。
平面の方程式は、式（１）で表される。
【００４３】
【数１】
2020052978.tif 000003
Ｓ２１０で入力された３点を、図４に示すように、点Ｐ１，点Ｐ２および点Ｐ３とする。そして、点Ｐ１，Ｐ２，Ｐ３の座標値を、それぞれ式（２），（３），（４）で表す。
【００４４】
Ｐ１＝（ｘ１，ｙ１，ｚ１）  ・・・（２）
Ｐ２＝（ｘ２，ｙ２，ｚ２）  ・・・（３）
Ｐ３＝（ｘ３，ｙ３，ｚ３）  ・・・（４）
点Ｐ１、点Ｐ２および点Ｐ３を含む平面の法線ベクトルをｎとする。点Ｐ１を始点とし、点Ｐ２を終点とするベクトルをＶ１２とする。点Ｐ１を始点とし、点Ｐ３を終点とするベクトルをＶ１３とする。
【００４５】
法線ベクトルｎは、ベクトルＶ１２およびベクトルＶ１３に対して垂直であるため、式（５）に示すように、ベクトルＶ１２とベクトルＶ１３との外積により算出することができる。
【００４６】
【数２】
2020052978.tif 000004
そして、法線ベクトルｎと、点Ｐ１の座標値とにより、平面の方程式のパラメータａ，ｂ，ｃ，ｄは、それぞれ式（６），（７），（８），（９）で算出される。
【００４７】
【数３】
2020052978.tif 000005
Ｓ２３０の処理が終了すると、図３に示すように、Ｓ２４０にて、視点座標値を入力する。視点座標値とは、平面を作成する際に使用した３つの座標点を直接目視することができる座標値である。視点座標値は、壁などの障害物に遮られないように設定される。例えば、図５に示すように、壁ＷＬ１，ＷＬ２，ＷＬ３に囲まれた点Ｐａから、壁ＷＬ１の平面を作成する際に使用した３つの座標点Ｐｕ１，Ｐｕ２，Ｐｕ３を直接目視することができる。このため、点Ｐａの座標値を視点座標値とすることができる。一方、壁ＷＬ１，ＷＬ２，ＷＬ３に囲まれた領域外に配置されている点Ｐｂと座標点Ｐｕ１，Ｐｕ２，Ｐｕ３との間は壁ＷＬ２で遮られているため、点Ｐｂから、座標点Ｐｕ１，Ｐｕ２，Ｐｕ３を直接目視することができない。このため、点Ｐｂの座標値を視点座標値とすることができない。
【００４８】
Ｓ２４０では、表示部１１の表示画面に座標点群データを表示している表示ソフトウェアのカメラポジションを表示ソフトウェアから取得し、このカメラポジションを視点座標値として入力する。視点座標値は、以降の処理において、平面がどこから視準できるのかという情報として扱うことができる。
【００４９】
Ｓ２４０の処理が終了すると、図３に示すように、Ｓ２５０にて、Ｓ２３０で算出された平面の方程式を、既に算出が終了した平面（以下、既存平面）として登録し、平面作成処理を終了する。具体的には、Ｓ２３０で算出された平面の方程式と、Ｓ２４０で入力された視点座標値とを対応付けた状態で、データ記憶部１３に記憶する。
【００５０】
次に、Ｓ６０で実行される交線・交点算出処理の手順を説明する。
交線・交点算出処理が実行されると、制御部１５は、図６に示すように、まず、Ｓ３１０にて、登録された既存平面のうち、直近で方程式が算出された既存平面（以下、作成平面）と、未だ交差判定が行われていない既存平面の中から選択された１つの既存平面（選択平面）とが交差しているか否かを判断する。以下に、作成平面と選択平面との交差判定の方法を説明する。
【００５１】
互いに平行な２つの平面は交わらないため、この２つの平面が交わる交線を求めることはできない。互いに平行な２つの平面の法線ベクトルを、それぞれｎ１，ｎ２とすると、式（１０）が成立する。
【００５２】
しかし、式（１０）が成立することは稀である。このため、１未満であり且つ１に略等しくなるように予め設定された平行判定値αを用いて、式（１１）が成立した場合に、２つの平面が互いに平行であると判断する。
【００５３】
【数４】
2020052978.tif 000006
そしてＳ３２０にて、Ｓ３１０における判定結果に基づいて、作成平面と選択平面とが交差しているか否かを判断する。ここで、作成平面と選択平面とが交差していない場合には、Ｓ３８０に移行する。一方、作成平面と選択平面とが交差している場合には、Ｓ３３０にて、作成平面と選択平面との交線の方程式を算出する。
【００５４】
例えば、図７に示すように、作成平面Ｓｐと選択平面Ｓｓとの交線Ｌｉの方程式を、式（１２）で表す。式（１２）におけるベクトルＡは、三次元直交座標系における原点を始点とし、交線Ｌｉ上の点の位置を終点とするベクトルである。すなわち、ベクトルＡは、終点の位置により、交線Ｌｉ上の点の位置を示す。式（１２）におけるベクトルｅは交線Ｌｉの方向ベクトルである。式（１２）におけるｔは、媒介変数である。また、作成平面Ｓｐの方程式を式（１３）、選択平面Ｓｓの方程式を式（１４）で表す。
【００５５】
【数５】
2020052978.tif 000007
方向ベクトルｅは、作成平面Ｓｐの法線ベクトルと選択平面Ｓｓの法線ベクトルとに対して垂直である。このため、方向ベクトルｅは、上記２つの法線ベクトルの外積を用いて、式（１５）で算出することができる。式（１５）におけるベクトルｎｐは作成平面Ｓｐの法線ベクトルである。式（１５）におけるベクトルｎｓは選択平面Ｓｓの法線ベクトルである。
【００５６】
【数６】
2020052978.tif 000008
次に、交線Ｌｉ上の点の位置を示すベクトルＡを算出する方法を説明する。
【００５７】
交線Ｌｉ上の点は、式（１３）および式（１４）の方程式を満たすｘ、ｙ、ｚの組となる。但し、ｘ、ｙ、ｚの組を算出するためには、連立３元１次方程式である必要がある。このため、まず、式（１３），（１４）においてｚ＝０とすることにより、連立２元１次方程式として、ｘ，ｙを算出する。
【００５８】
式（１３），（１４）においてｚ＝０とすることにより式（１６），（１７）が得られる。これにより、式（１８），（１９）に示すように、ｘ，ｙが算出される。式（１８），（１９）における右辺の分母は、方向ベクトルｅのｚ成分である。方向ベクトルｅのｚ成分をｅｚと表記すると、式（１８），（１９）はそれぞれ、式（２０），（２１）で表される。このため、方向ベクトルｅのｚ成分が０でない場合には、ベクトルＡの終点（すなわち、交線Ｌｉ上の点）は、（ｘ，ｙ，０）と算出される。
【００５９】
【数７】
2020052978.tif 000009
一方、方向ベクトルｅのｚ成分が０である場合には、式（１３），（１４）においてｙ＝０とすることにより、上記と同様にして、式（２２），（２３）に示すように、ｘ，ｚを算出する。式（２２），（２３）におけるｅｙは、方向ベクトルｅのｙ成分である。このため、方向ベクトルｅのｙ成分が０でない場合には、ベクトルＡの終点（すなわち、交線Ｌｉ上の点）は、（ｘ，０，ｚ）と算出される。
【００６０】
【数８】
2020052978.tif 000010
また、方向ベクトルｅのｘ成分が０である場合には、式（１３），（１４）においてｘ＝０とすることにより、上記と同様にして、式（２４），（２５）に示すように、ｙ，ｚを算出する。式（２４），（２５）におけるｅｘは、方向ベクトルｅのｘ成分である。このため、方向ベクトルｅのｘ成分が０でない場合には、ベクトルＡの終点（すなわち、交線Ｌｉ上の点）は、（０，ｙ，ｚ）と算出される。
【００６１】
【数９】
2020052978.tif 000011
方向ベクトルｅの全ての成分が０である場合には、作成平面Ｓｐと選択平面Ｓｓは互いに平行であり、交線を求めることができない。
【００６２】
そして、Ｓ３３０の処理が終了すると、Ｓ３４０にて、Ｓ３３０で算出された交線の方程式を、既に算出が終了した交線（以下、既存交線）として登録する。具体的には、Ｓ３３０で算出された交線の方程式を、データ記憶部１３に記憶する。
【００６３】
次にＳ３５０にて、登録された既存交線のうち、直近で方程式が算出された既存交線（以下、作成交線）と、未だ交差判定が行われていない既存交線の中から選択された１つの既存交線（選択交線）との交点を算出する。例えば、図８に示すように、既存平面Ｓｅ１と既存平面Ｓｅ２との交線Ｌｉ１２と、既存平面Ｓｅ１，Ｓｅ２と交差する既存平面Ｓｅ３と既存平面Ｓｅ１との交線Ｌｉ３１との交点Ｐｉ１が算出される。
【００６４】
以下に、作成交線と選択交線との交点を算出する方法を説明する。
作成交線ｌの方程式を式（２６）で表し、選択交線ｍの方程式を式（２７）で表す。
式（２６）におけるベクトルｐは、三次元直交座標系における原点を始点とし、作成交線ｌ上の点の位置を終点とするベクトルである。すなわち、ベクトルｐは、終点の位置により、作成交線ｌ上の点の位置を示す。式（２６）におけるベクトルｕは作成交線ｌの方向ベクトルである。式（２６）におけるｓは、媒介変数である。
【００６５】
式（２７）におけるベクトルｑは、三次元直交座標系における原点を始点とし、選択交線ｍ上の点の位置を終点とするベクトルである。すなわち、ベクトルｑは、終点の位置により、選択交線ｍ上の点の位置を示す。式（２７）におけるベクトルｖは選択交線ｍの方向ベクトルである。式（２７）におけるｔは、媒介変数である。
【００６６】
【数１０】
2020052978.tif 000012
まず、作成交線ｌと選択交線ｍとの最近傍点を求める。三次元空間では、最近傍点が２つ求まる可能性があり、図９に示すように、２つの最近傍点をｌ（σ），ｍ（τ）と表記する。
【００６７】
最近傍点同士を連結するベクトルは、作成交線ｌおよび選択交線ｍの方向ベクトルと垂直であるため、内積を用いて、式（２８），（２９）が成立する。
【００６８】
【数１１】
2020052978.tif 000013
そして、式（２８），（２９）に式（２６），（２７）を代入した式を解くことにより、式（３０），（３１）に示すように、作成交線ｌにおける最近傍点ｌ（σ）のパラメータσと、作成交線ｍにおける最近傍点ｍ（τ）のパラメータτとが得られる。なお、式（３０），（３１）におけるｒとαはそれぞれ、式（３２）と式（３３）で表される。
【００６９】
【数１２】
2020052978.tif 000014
なお、式（３３）で示すαが１である場合には、式（３０），（３１）における右辺の分母が０になり、パラメータσ，τを求めることができない。αは、式（３３）に示すように、作成交線ｌの方向ベクトルと選択交線ｍの方向ベクトルとの内積であるため、α＝１は、作成交線ｌと選択交線ｍとが互いに平行であることを示す。すなわち、α＝１である場合には、交点が存在しないと判断する。
【００７０】
また、最近傍点ｌ（σ）と最近傍点ｍ（τ）とが一致しない場合にも、交点が存在しないと判断する。一方、最近傍点ｌ（σ）と最近傍点ｍ（τ）とが一致する場合には、交点が存在すると判断し、最近傍点ｌ（σ）および最近傍点ｍ（τ）が示す座標値を、作成交線ｌと選択交線ｍとの交点の座標値として採用する。
【００７１】
そして、Ｓ３５０の処理が終了すると、図６に示すように、Ｓ３６０にて、Ｓ３５０で算出された交点の座標値を登録する。具体的には、３５０で算出された交点の座標値を、データ記憶部１３に記憶する。
【００７２】
さらにＳ３７０にて、作成交線と、作成交線以外の全ての既存交線との間で交点の算出が行われたか否かを判断する。ここで、全ての既存交線との間で交点の算出が行われていない場合には、Ｓ３５０に移行する。一方、全ての既存交線との間で交点の算出が行われた場合には、Ｓ３８０に移行する。
【００７３】
そしてＳ３８０に移行すると、作成平面と、作成平面以外の全ての既存平面との間で交差判定が行われたか否かを判断する。ここで、全ての既存平面との間で交差判定が行われていない場合には、Ｓ３１０に移行する。一方、全ての既存平面との間で交差判定が行われた場合には、交線・交点算出処理を終了する。
【００７４】
次に、Ｓ７０で実行される境界設定処理の手順を説明する。
境界設定処理が実行されると、制御部１５は、図１０に示すように、まず、Ｓ５１０にて、登録された既存平面のうち、今回の境界設定処理において選択されていない既存平面を１つ選択する。
【００７５】
そしてＳ５２０にて、Ｓ５１０で選択された既存平面（以下、選択平面）の境界が確定しているか否かを判断する。具体的には、選択平面が、後述する境界確定平面として登録されている場合には、選択平面の境界が確定していると判断し、選択平面が境界確定平面として登録されていない場合には、選択平面の境界が確定していないと判断する。但し、選択平面が境界確定平面として登録されている場合であっても、直近の交線・交点算出処理で算出された交線が選択平面に含まれる場合には、Ｓ５２０にて、選択平面の境界が確定していないと判断する。
【００７６】
ここで、選択平面の境界が確定している場合には、Ｓ６００に移行する。一方、選択平面の境界が確定していない場合には、Ｓ５３０にて、選択平面の境界を設定する。以下に、選択平面の境界を設定する方法を説明する。
【００７７】
平面のままでは、三次元の面図形として扱うことができない。このため、平面上に存在する交線および交点に基づいて、閉じた領域（以下、閉合領域）となるように境界を設定する。
【００７８】
例えば、図１１に示すように、平面Ｓｂ１上には、交線Ｌｂ１，Ｌｂ２，Ｌｂ３が存在している。そして、平面Ｓｂ１上には、交線Ｌｂ１と交線Ｌｂ２との交点Ｐｂ１と、交線Ｌｂ２と交線Ｌｂ３との交点Ｐｂ２とが存在している。しかし、交線Ｌｂ１，Ｌｂ２，Ｌｂ３は、閉合領域を形成していない。このため、境界を設定することはできない。
【００７９】
また、平面Ｓｂ２上には、交線Ｌｂ１１，Ｌｂ１２，Ｌｂ１３，Ｌｂ１４が存在している。そして、平面Ｓｂ２上には、交点Ｐｂ１１，Ｐｂ１２，Ｐｂ１３，Ｐｂ１４が存在している。交点Ｐｂ１１は、交線Ｌｂ１１と交線Ｌｂ１２との交点である。交点Ｐｂ１２は、交線Ｌｂ１２と交線Ｌｂ１３との交点である。交点Ｐｂ１３は、交線Ｌｂ１３と交線Ｌｂ１４との交点である。交点Ｐｂ１４は、交線Ｌｂ１４と交線Ｌｂ１１との交点である。この場合には、交線Ｌｂ１１，Ｌｂ１２，Ｌｂ１３，Ｌｂ１４は、閉合領域Ｒｂ１を形成している。このため、境界を設定することができる。
【００８０】
また、平面Ｓｂ３上には、交線Ｌｂ２１，Ｌｂ２２，Ｌｂ２３，Ｌｂ２４，Ｌｂ２５，Ｌｂ２６が存在している。そして、平面Ｓｂ３上には、交点Ｐｂ２１，Ｐｂ２２，Ｐｂ２３，Ｐｂ２４，Ｐｂ２５，Ｐｂ２６，Ｐｂ２７，Ｐｂ２８，Ｐｂ２９が存在している。
【００８１】
交点Ｐｂ２１は、交線Ｌｂ２１と交線Ｌｂ２２との交点である。交点Ｐｂ２２は、交線Ｌｂ２２と交線Ｌｂ２３との交点である。交点Ｐｂ２３は、交線Ｌｂ２３と交線Ｌｂ２４との交点である。交点Ｐｂ２４は、交線Ｌｂ２４と交線Ｌｂ２１との交点である。
【００８２】
交点Ｐｂ２５は、交線Ｌｂ２１と交線Ｌｂ２５との交点である。交点Ｐｂ２６は、交線Ｌｂ２２と交線Ｌｂ２６との交点である。交点Ｐｂ２７は、交線Ｌｂ２３と交線Ｌｂ２５との交点である。交点Ｐｂ２８は、交線Ｌｂ２４と交線Ｌｂ２６との交点である。交点Ｐｂ２９は、交線Ｌｂ２５と交線Ｌｂ２６との交点である。
【００８３】
この場合には、交線Ｌｂ２１，Ｌｂ２２，Ｌｂ２３，Ｌｂ２４は、閉合領域Ｒｂ２を形成している。このため、境界を設定することができる。但し、閉合領域Ｒｂ２内を通る交線Ｌｂ２５，Ｌｂ２６が存在しているため、境界を一つに決めることができない。
【００８４】
境界を設定するには、まず、平面上に存在する交線から、交線上に存在する交点に基づいて線分を抽出する。具体的には、交線上に存在する複数の交点のうち、２交点間の距離が最も長くなる２つの交点を選択し、選択した２つの交点を結ぶ直線を線分とする。なお、交点の接合関係に応じて、閉合領域が最も大きくなるように、境界を設定する。
【００８５】
例えば、平面Ｓｂ２では、交線Ｌｂ１１から、交点Ｐｂ１１と交点Ｐｂ１４とを結ぶ線分が抽出される。同様に、交線Ｌｂ１２から、交点Ｐｂ１１と交点Ｐｂ１２とを結ぶ線分が抽出される。また、交線Ｌｂ１３から、交点Ｐｂ１２と交点Ｐｂ１３とを結ぶ線分が抽出される。また、交線Ｌｂ１４から、交点Ｐｂ１３と交点Ｐｂ１４とを結ぶ線分が抽出される。そして、抽出された４つの線分を境界として設定する。
【００８６】
また、平面Ｓｂ３では、交線Ｌｂ２１上に交点Ｐｂ２１，Ｐｂ２４，Ｐｂ２５が存在している。そして、交点Ｐｂ２１，Ｐｂ２４，Ｐｂ２５のうち、２交点間の距離が最も長くなる交点Ｐｂ２１とＰｂ２４とを結ぶ線分が抽出される。同様に、交線Ｌｂ２２から、交点Ｐｂ２１と交点Ｐｂ２２とを結ぶ線分が抽出される。また、交線Ｌｂ２３から、交点Ｐｂ２２と交点Ｐｂ２３とを結ぶ線分が抽出される。また、交線Ｌｂ２４から、交点Ｐｂ２３と交点Ｐｂ２４とを結ぶ線分が抽出される。そして、抽出された４つの線分を境界として設定する。
【００８７】
そして、Ｓ５３０の処理が終了すると、図１０に示すように、Ｓ５４０にて、Ｓ５３０の処理で境界を設定することができたか否かを判断する。ここで、境界を設定することができなかった場合には、Ｓ５５０にて、選択平面を、境界が確定していない平面（以下、境界未確定平面）として登録し、Ｓ６００に移行する。
【００８８】
一方、境界を設定することができた場合には、Ｓ５６０にて、選択平面を、境界が確定した平面（以下、境界確定平面）として登録する。そしてＳ５７０にて、選択平面上に、境界に使用された交線以外の交線（以下、未使用交線）が存在するか否かを判断する。ここで、未使用交線が存在しない場合には、Ｓ６００に移行する。一方、未使用交線が存在する場合には、Ｓ５８０にて、選択平面の閉合領域を未使用交線により分割する。
【００８９】
例えば、図１２に示すように、平面Ｓｂ３の閉合領域Ｒｂ２は、交線Ｌｂ２５，Ｌｂ２６によって、分割領域Ｒｄ２１，Ｒｄ２２，Ｒｄ２３，Ｒｄ２４に分割される。分割領域Ｒｄ２１は、交線Ｌｂ２１，Ｌｂ２２，Ｌｂ２５，Ｌｂ２６により囲まれる領域である。分割領域Ｒｄ２２は、交線Ｌｂ２２，Ｌｂ２３，Ｌｂ２５，Ｌｂ２６により囲まれる領域である。分割領域Ｒｄ２３は、交線Ｌｂ２３，Ｌｂ２４，Ｌｂ２５，Ｌｂ２６により囲まれる領域である。分割領域Ｒｄ２４は、交線Ｌｂ２１，Ｌｂ２４，Ｌｂ２５，Ｌｂ２６により囲まれる領域である。
【００９０】
そして、Ｓ５８０の処理が終了すると、図１０に示すように、Ｓ５９０にて、境界の有効または無効を設定する。具体的には、まず、Ｓ５８０で形成された複数の分割領域のうち、選択平面に対応してＳ２１０で入力された座標値により特定される３つの座標点を含む分割領域を、有効分割領域とする。そして、１または複数の有効分割領域で形成される領域を囲む線を有効境界とする。また、分割領域を囲む線のうち、有効境界に設定されなかった線を無効境界とする。
【００９１】
例えば、図１３に示すように、平面Ｓｂ３の分割領域Ｒｄ２１，Ｒｄ２２，Ｒｄ２３，Ｒｄ２４のうち、分割領域Ｒｄ２２に、選択平面に対応する３つの座標点Ｐｃ１，Ｐｃ２，Ｐｃ３が含まれる場合には、分割領域Ｒｄ２２を囲む４つの線分が有効境界に設定される。図１３における有効境界は、以下の４つの線分である。第１の線分は、交点Ｐｂ２２と交点Ｐｂ２６とを結ぶ線分である。第２の線分は、交点Ｐｂ２２と交点Ｐｂ２７とを結ぶ線分である。第３の線分は、交点Ｐｂ２７と交点Ｐｂ２９とを結ぶ線分である。第４の線分は、交点Ｐｂ２６と交点Ｐｂ２９とを結ぶ線分である。
【００９２】
また、図１４に示すように、平面Ｓｂ３の分割領域Ｒｄ２１，Ｒｄ２２，Ｒｄ２３，Ｒｄ２４のうち、分割領域Ｒｄ２２，Ｒｄ２３，Ｒｄ２４に、３つの座標点Ｐｃ１，Ｐｃ２，Ｐｃ３が含まれる場合には、分割領域Ｒｄ２２，Ｒｄ２３，Ｒｄ２４を囲む６つの線分が有効境界に設定される。図１４における有効境界は、以下の６つの線分である。第１の線分は、交点Ｐｂ２２と交点Ｐｂ２６とを結ぶ線分である。第２の線分は、交点Ｐｂ２２と交点Ｐｂ２３とを結ぶ線分である。第３の線分は、交点Ｐｂ２３と交点Ｐｂ２４とを結ぶ線分である。第４の線分は、交点Ｐｂ２４と交点Ｐｂ２５とを結ぶ線分である。第５の線分は、交点Ｐｂ２５と交点Ｐｂ２９とを結ぶ線分である。第６の線分は、交点Ｐｂ２６と交点Ｐｂ２９とを結ぶ線分である。
【００９３】
次に、図１５に示すように、壁ＷＬ１１，ＷＬ１２，ＷＬ１３，ＷＬ１４，ＷＬ１５，ＷＬ１６，ＷＬ１７，ＷＬ１８で形成された建築物ＢＬ１では、平面Ｓｗ１１，Ｓｗ１２，Ｓｗ１３，Ｓｗ１４，Ｓｗ１５，Ｓｗ１６，Ｓｗ１７，Ｓｗ１８が算出される。平面Ｓｗ１１，Ｓｗ１２，Ｓｗ１３，Ｓｗ１４，Ｓｗ１５，Ｓｗ１６，Ｓｗ１７，Ｓｗ１８はそれぞれ、壁ＷＬ１１，ＷＬ１２，ＷＬ１３，ＷＬ１４，ＷＬ１５，ＷＬ１６，ＷＬ１７，ＷＬ１８を含む平面である。
【００９４】
そして、平面Ｓｗ１３において、壁ＷＬ１３を画定する有効境界は、天井を含む平面との交線、床を含む平面との交線と、平面Ｓｗ１２との交線と、平面Ｓｗ１４との交線とにより囲まれる領域を示すように設定される。
【００９５】
このようにして、平面Ｓｗ１３において有効境界が設定されると、平面Ｓｗ１３における他の境界は無効に設定されるため、図１６に示すように、平面Ｓｗ１８と平面Ｓｗ１３とが交差しなくなる。この状態では、平面Ｓｗ１８において、平面Ｓｗ１１との交線と平面Ｓｗ１７との交線との間に、平面Ｓｗ１３との交線が配置されない。これにより、壁ＷＬ１８を画定する有効境界の誤設定を抑制することができる。
【００９６】
そして、Ｓ５９０の処理が終了すると、図１０に示すように、Ｓ６００にて、Ｓ５１０において全ての既存平面が選択されたか否かを判断する。ここで、選択されていない既存平面が存在する場合には、Ｓ５１０に移行する。一方、全ての既存平面が選択された場合には、境界設定処理を終了する。
【００９７】
このように構成された三次元形状作成装置１は、三次元座標で表される座標点の集合により少なくとも１つの対象建築物における表面の三次元形状を示す座標点群データから、少なくとも１つの対象建築物の三次元形状を作成する。
【００９８】
まず、制御部１５は、座標点群の中から、少なくとも１つの対象建築物の表面を形成する一つの平面に含まれる３つの座標点の座標値を取得する。
また制御部１５は、取得された座標値に基づいて、３つの座標点を含む平面の方程式で（以下、平面方程式）を算出する。
【００９９】
また制御部１５は、算出された複数の平面方程式に基づいて、平面方程式が算出された複数の平面が交わる交線の方程式（以下、交線方程式）を算出する。
そして制御部１５は、算出された複数の交線方程式に基づいて、交線方程式が算出された複数の交線が交わる交点の座標値を算出する。
【０１００】
このように三次元形状作成装置１は、一つの平面について３つの座標点の座標値を特定することにより、対象建築物の表面を形成する複数の平面を作成することができる。そして、三次元形状作成装置１は、作成した複数の平面が交わる交線を作成することができる。これにより、三次元形状作成装置１は、作成した複数の交線が交わる交点を特定することができる。
【０１０１】
このため、三次元形状作成装置１は、対象建築物の頂点を実際に計測することなく、対象物の頂点の位置を特定することができ、対象建築物の三次元形状の作成を容易にすることができる。
【０１０２】
また制御部１５は、平面方程式が算出された複数の平面のそれぞれについて、平面上に存在する複数の交線により囲まれる最大の領域を閉合領域として作成する。さらに制御部１５は、作成された閉合領域を、平面上に存在する複数の交線により分割して、複数の分割領域を作成する。
【０１０３】
また制御部１５は、作成された複数の分割領域のうち、取得された座標値に対応する座標点を含む分割領域を有効分割領域として設定する。そして制御部１５は、設定された１または複数の有効分割領域を囲む線を、有効境界として設定する。
【０１０４】
このように三次元形状作成装置１は、平面上に存在する複数の交線によって囲まれる領域（すなわち、分割領域）のうち、対象建築物の表面を形成する平面ではない領域が、対象建築物の表面を形成する平面であると特定されてしまう事態の発生を抑制することができる。
【０１０５】
また制御部１５は、交線方程式が算出された複数の交線のうち、有効境界に設定されなかった部分を無効に設定する。
このように三次元形状作成装置１は、交線方程式が算出された交線において、対象建築物の表面上に実際に存在していない部分を除外することができる。これにより、三次元形状作成装置１は、有効境界の設定が行われていない平面において有効境界の設定を行う場合に、平面上に存在する複数の交線のうち、既に無効にされた部分を除外して、複数の分割領域を作成することができる。すなわち、三次元形状作成装置１は、対象建築物の表面上に実際に存在していない線を用いて、分割領域を作成する頻度を低減することができる。このため、三次元形状作成装置１は、平面上に存在する複数の交線によって囲まれる領域（すなわち、分割領域）のうち、対象建築物の表面を形成する平面ではない領域が、対象建築物の表面を形成する平面であると特定されてしまう事態の発生を更に抑制することができる。
【０１０６】
このようにして、三次元形状作成装置１は、図１７に示すように、複数の平面が交わる交線と、複数の交線が交わる交点とに基づいて、対象建築物の表面を示す三次元形状を作成することができる。
【０１０７】
以上説明した実施形態において、Ｓ２１０は座標値取得部としての処理に相当し、Ｓ２３０は平面算出部としての処理に相当し、Ｓ３３０は交線算出部としての処理に相当し、Ｓ３５０は交点算出部としての処理に相当し、対象建築物は対象物に相当する。
【０１０８】
また、Ｓ５３０は閉合領域作成部としての処理に相当し、Ｓ５８０は分割領域作成部としての処理に相当し、Ｓ５９０は有効設定部、無効設定部および境界設定部としての処理に相当する。
【０１０９】
また、Ｓ２１０は座標値取得手順としての処理に相当し、Ｓ２３０は平面算出手順としての処理に相当し、Ｓ３３０は交線算出手順としての処理に相当し、Ｓ３５０は交点算出手順としての処理に相当し、三次元形状作成プログラム２０は三次元形状作成プログラムに相当する。
【０１１０】
以上、本開示の一実施形態について説明したが、本開示は上記実施形態に限定されるものではなく、種々変形して実施することができる。
例えば上記実施形態では、３点の座標値が入力される形態を示したが、４点以上の座標値が入力されるようにしてもよい。
【０１１１】
上記実施形態では、対象建築物の座標点群データがレーザスキャナを利用して取得された形態を示したが、座標点群データが測量機を利用して取得されるようにしてもよい。
上記実施形態では、表示ソフトウェアのカメラポジションを表示ソフトウェアから自動的に取得して視点座標値として入力する形態を示した。しかし、座標点群データが測量機を利用して取得される場合には、測量機が設置された位置を視点座標値として手動で入力するようにするとよい。
【０１１２】
また、例えば図１８に示すように、壁ＷＬ１１〜ＷＬ１８で形成された建築物ＢＬ１では、平面Ｓｗ１１〜Ｓｗ１８が算出される。そして、平面Ｓｗ１８上には、天井を含む平面との交線、床を含む平面との交線と、平面Ｓｗ１１との交線と、平面Ｓｗ１３との交線と、平面Ｓｗ１７との交線と、平面Ｓｗ１５とが存在する。なお、壁ＷＬ１８に対応する領域は、天井を含む平面との交線、床を含む平面との交線と、平面Ｓｗ１１との交線と、平面Ｓｗ１７との交線とにより囲まれる領域である。
【０１１３】
これに対して、図１９に示すように、平面Ｓｗ１８に対応する３つの座標点が、天井を含む平面との交線、床を含む平面との交線と、平面Ｓｗ１１との交線と、平面Ｓｗ１３との交線とにより囲まれる領域Ｒｅ１内に含まれると、壁ＷＬ１８を有効境界によって正しく設定することができない。
【０１１４】
また、平面Ｓｗ１８に対応する３つの座標点が、天井を含む平面との交線、床を含む平面との交線と、平面Ｓｗ１３との交線と、平面Ｓｗ１７との交線とにより囲まれる領域Ｒｅ２内に含まれると、壁ＷＬ１８を有効境界によって正しく設定することができない。
【０１１５】
一方、平面Ｓｗ１８に対応する３つの座標点が、天井を含む平面との交線、床を含む平面との交線と、平面Ｓｗ１１との交線と、平面Ｓｗ１７との交線とにより囲まれる領域Ｒｅ３内に含まれると、壁ＷＬ１８を有効境界によって正しく設定することができる。
【０１１６】
このため、有効境界を正しく設定することができない場合には、三次元形状作成装置１の使用者が、キーボードおよびマウスを介した入力操作により手動で、境界の有効または無効を設定することができるようにしてもよい。
【０１１７】
また、上記実施形態における１つの構成要素が有する機能を複数の構成要素に分担させたり、複数の構成要素が有する機能を１つの構成要素に発揮させたりしてもよい。また、上記実施形態の構成の一部を省略してもよい。また、上記実施形態の構成の少なくとも一部を、他の上記実施形態の構成に対して付加、置換等してもよい。
【０１１８】
上述した三次元形状作成装置１の他、当該三次元形状作成装置１を構成要素とするシステム、当該三次元形状作成装置１としてコンピュータを機能させるためのプログラム、このプログラムを記録した媒体、三次元形状作成方法など、種々の形態で本開示を実現することもできる。
【符号の説明】
【０１１９】
１…三次元形状作成装置、１５…制御部、２０…三次元形状作成プログラム
【図１】
2020052978.tif 000015
【図２】
2020052978.tif 000016
【図３】
2020052978.tif 000017
【図４】
2020052978.tif 000018
【図５】
2020052978.tif 000019
【図６】
2020052978.tif 000020
【図７】
2020052978.tif 000021
【図８】
2020052978.tif 000022
【図９】
2020052978.tif 000023
【図１０】
2020052978.tif 000024
【図１１】
2020052978.tif 000025
【図１２】
2020052978.tif 000026
【図１３】
2020052978.tif 000027
【図１４】
2020052978.tif 000028
【図１５】
2020052978.tif 000029
【図１６】
2020052978.tif 000030
【図１７】
2020052978.tif 000031
【図１８】
2020052978.tif 000032
【図１９】
2020052978.tif 000033