(57)【要約】【課題】少ない計算量で、３Ｄ図面上で記載された設置物の干渉が確認できる３Ｄ―ＣＡＤ図面干渉確認方法を提供すること【解決手段】演算部（１）と表示部（２）を具備するコンピュータシステムの表示部（２）に表示され、複数の物体が記載されている図面の複数の物体のうちの第一物体と第二物体の干渉を確認する方法において、本発明の干渉確認方法は以下のステップを含む。演算部（１）が、第一物体上の複数の点へ、第二物体を示す点の集合から最短距離の複数のベクトルを仮定するステップ。複数のベクトルの向きが、所定の平面に対して一方に偏っていることを判断するステップ。【選択図】　図２
2004030321.tif 000002
【特許請求の範囲】
【請求項１】
演算部と表示部を具備するコンピュータシステムの前記表示部に表示され、複数の物体が記載されている図面の前記複数の物体のうちの第一物体と第二物体の干渉を確認する方法において、
前記演算部が、前記第一物体上の複数の点へ、前記第二物体を示す点の集合から最短距離の複数のベクトルを仮定するステップと、
前記複数のベクトルの向きが、所定の平面に対して一方に偏っていることを判断するステップと、
を含む、
干渉確認方法。
【請求項２】
演算部と表示部を具備するコンピュータシステムの前記表示部に表示され、複数の物体が記載されている３次元図面の前記複数の物体のうちの第一物体と第二物体の干渉を確認する方法において、
前記演算部が、前記第一物体を示す各々の線分の端点へ、前記第二物体を示す線分の一つである第一線分から最短距離となるベクトルを仮定するＡステップと、
前記演算部が、複数の前記端点へ前記第一線分から仮定された複数のベクトルの始点を原点としたベクトルの集合を仮定するＢステップと、
前記演算部が、前記ベクトルの集合の複数のベクトルが、互いに１８０°以上離れていないことを確認するＣステップと、
前記演算部が、前記第二物体を示す線分が複数ある場合に、全ての線分毎に、前記Ａステップ〜前記Ｃステップを行うステップと、
前記演算部が、前記第二物体を示す線分の全てにおける前記Ｃステップで、１８０°以上離れたベクトルがない場合、前記第一物体と前記第二物体の干渉がないと判断し、一つでも１８０°以上離れたベクトルがある場合、前記第一物体と前記第二物体の干渉があると判断するステップ、
を含む、
３Ｄ―ＣＡＤ図面干渉確認方法。
【請求項３】
演算部と表示部を具備するコンピュータシステムの前記表示部に表示され、複数の物体が記載されている３次元図面上の前記複数の物体のうちの第一物体と第二物体の干渉を確認する方法において、
前記演算部が、前記第一物体を所定の間隔で囲んだ補正第一物体を仮定するステップと、
前記演算部が、前記補正第一物体を示す各線分の端点へ、前記第二物体を示す線分の一つである第一線分から最短距離となるベクトルを仮定するＡステップと、
前記演算部が、複数の前記端点へ、前記第一線分から仮定された複数のベクトルの始点を原点としたベクトルの集合を仮定するＢステップと、
前記演算部が、前記複数のベクトルが、互いに１８０°以上離れていないことを確認するＣステップと、
前記演算部が、前記第二物体を示す線分が複数ある場合に、全ての線分毎に、前記Ａステップ〜前記Ｃステップを行うＤステップと、
前記演算部が、前記第二物体を示す線分の全てにおける前記Ｃステップで、１８０°以上離れたベクトルがない場合、前記第一物体と前記第二物体の干渉がないと判断し、一つでも１８０°以上離れたベクトルがある場合、前記第一物体と前記第二物体の干渉があると判断するステップ、
を含む、
３Ｄ―ＣＡＤ図面干渉確認方法。
【請求項４】
前記複数のベクトルが、互いに１８０°以上離れていないことを確認する前記Ｃステップは、
全ての前記複数のベクトルを、各々の単位ベクトルに変換するステップと、
複数の前記単位ベクトルの中から、Ｘ軸成分の最大値を持つベクトルを抽出するステップと、
複数の前記単位ベクトルの中から、Ｘ軸成分の最小値を持つベクトルを抽出するステップと、
Ｘ軸成分の最大値を持つベクトルのＸ成分値と、Ｘ軸成分の最小値を持つベクトルのＸ成分値の中間値であるＸ成分中間値を求めるステップと、
複数の前記単位ベクトルの中から、Ｙ軸成分の最大値を持つベクトルを抽出するステップと、
複数の前記単位ベクトルの中から、Ｙ軸成分の最小値を持つベクトルを抽出するステップと、
Ｙ軸成分の最大値を持つベクトルのＹ成分値と、Ｙ軸成分の最小値を持つベクトルのＹ成分値の中間値であるＹ成分中間値を求めるステップと、
複数の前記単位ベクトルの中から、Ｚ軸成分の最大値を持つベクトルを抽出するステップと、
複数の前記単位ベクトルの中から、Ｚ軸成分の最小値を持つベクトルを抽出するステップと、
Ｚ軸成分の最大値を持つベクトルのＺ成分値と、Ｚ軸成分の最小値を持つベクトルのＺ成分値の中間値であるＺ成分中間値を求めるステップと、
前記Ｘ成分中間値、Ｙ成分中間値、Ｚ成分中間値をもつ基本ベクトルを仮定するステップと、
前記単位ベクトルの各々が前記基本ベクトルと成す角が９０°以上でないことを確認するステップと、を含む、
請求項２または３に記載された３Ｄ―ＣＡＤ図面干渉確認方法。
【請求項５】
前記第二物体が円柱形の場合、前記間隔は前記第二物体の半径であり、前記第二物体を示す線分は、前記第二物体の中心線を示す線分である、
請求項３または４に記載された３Ｄ―ＣＡＤ図面干渉確認方法。
【請求項６】
前記間隔は、前記第一物体と前記第二物体の間に空けられる所定の間隔を含む、
請求項３〜５に記載された３Ｄ―ＣＡＤ図面干渉確認方法。
【請求項７】
複数の物体が記載されている３次元図面において、前記複数の物体の一つである第一物体を示す各線分の端点へ、前記複数の物体の一つである第二物体を示す線分の一つである第一線分から最短距離となるベクトルを仮定するＡステップと、
複数の前記端点へ、前記第一線分から仮定された複数のベクトルの始点を原点としたベクトルの集合を仮定するＢステップと、
前記ベクトルの集合の複数のベクトルが、互いに１８０°以上離れていないことを確認するＣステップと、
前記第二物体を示す線分が複数ある場合に、全ての線分毎に、前記Ａステップ〜前記Ｃステップを行うステップと、
前記第二物体を示す線分の全てにおける前記Ｃステップで、１８０°以上離れたベクトルがない場合、前記第一物体と前記第二物体の干渉がないと判断され、一つでも１８０°以上離れたベクトルがある場合、前記第一物体と前記第二物体の干渉があると判断さるステップと、
を含む、
３Ｄ―ＣＡＤ図面干渉確認プログラム。
【請求項８】
複数の物体が記載されている３次元図面において、前記複数の物体の一つである第一物体を所定の間隔で囲んだ補正第一物体を仮定するステップと、
前記補正第一物体を示す各線分の端点へ、前記複数の物体の一つである第二物体を示す線分の一つである第一線分から最短距離となるベクトルを作成するＡステップと、
複数の前記端点へ、前記第一線分から仮定された複数のベクトルの始点を原点としたベクトルの集合を仮定するＢステップと、
前記複数のベクトルが、互いに１８０°以上離れていないことを確認するＣステップと、
前記第二物体を示す線分が複数ある場合に、全ての線分毎に、前記Ａステップ〜前記Ｃステップを行うＤステップと、
前記第二物体を示す線分の全てにおける前記Ｃステップで、１８０°以上離れたベクトルがない場合、前記第一物体と前記第二物体の干渉がないと判断され、一つでも１８０°以上離れたベクトルがある場合、前記第一物体と前記第二物体の干渉があると判断されるステップと、
を含む、
３Ｄ―ＣＡＤ図面干渉確認プログラム。
【請求項９】
前記Ｃステップにおいて、前記複数のベクトルが、互いに１８０°以上離れていないことを確認する方法は、
全ての前記複数のベクトルを、各々単位ベクトルにするステップと、
複数の前記単位ベクトルの中から、Ｘ軸成分の最大値を持つベクトルを抽出するステップと、
複数の前記単位ベクトルの中から、Ｘ軸成分の最小値を持つベクトルを抽出するステップと、
Ｘ軸成分の最大値を持つベクトルのＸ成分値と、Ｘ軸成分の最小値を持つベクトルのＸ成分値の中間値であるＸ成分中間値を求めるステップと、
複数の前記単位ベクトルの中から、Ｙ軸成分の最大値を持つベクトルを抽出するステップと、
複数の前記単位ベクトルの中から、Ｙ軸成分の最小値を持つベクトルを抽出するステップと、
Ｙ軸成分の最大値を持つベクトルのＹ成分値と、Ｙ軸成分の最小値を持つベクトルのＹ成分値の中間値であるＹ成分中間値を求めるステップと、
複数の前記単位ベクトルの中から、Ｚ軸成分の最大値を持つベクトルを抽出するステップと、
複数の前記単位ベクトルの中から、Ｚ軸成分の最小値を持つベクトルを抽出するステップと、
Ｚ軸成分の最大値を持つベクトルのＺ成分値と、Ｚ軸成分の最小値を持つベクトルのＺ成分値の中間値であるＺ成分中間値を求めるステップと、
前記Ｘ成分中間値、Ｙ成分中間値、Ｚ成分中間値をもつ基本ベクトルを作成するステップと、
前記単位ベクトルの各々が前記基本ベクトルと成す角が９０°以上でないことを確認するステップと、を含む、
請求項７または８に記載された３Ｄ―ＣＡＤ図面干渉確認プログラム。
【請求項１０】
前記第二物体が円柱形の場合、前記間隔は前記第二物体の半径であり、前記第二物体を示す線分は、前記第二物体の中心線を示す線分である、
請求項８または９に記載された３Ｄ―ＣＡＤ図面干渉確認プログラム。
【請求項１１】
前記間隔は、前記第一物体と前記第二物体の間に空けられる所定の間隔を含む、
請求項８〜１０に記載された３Ｄ―ＣＡＤ図面干渉確認プログラム。
【請求項１２】
３Ｄ図面を表示することができる表示部と、
３Ｄ図面の座標認識ができる演算部と、を具備し、
前記演算部は、請求項６〜１０のいずれかに記載された３Ｄ―ＣＡＤ図面干渉確認プログラムを実行し、
前記表示部は、前記３Ｄ―ＣＡＤ図面干渉確認プログラムの実行結果を表示する、
３Ｄ―ＣＡＤ図面干渉確認システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、３Ｄ―ＣＡＤ図面干渉確認方法に関し、特にワイヤーフレームモデルで記載された３Ｄ−ＣＡＤ図面内の設置物の干渉確認方法に関する。
【０００２】
【従来の技術】
設置物の配置を、３次元で製図された３Ｄ−ＣＡＤ図が使用されている。３Ｄ−ＣＡＤ図は、コンピュータを使用し、所定のＣＡＤプログラムを使用して、３次元座標を含む位置情報を入力することにより作成される。
３Ｄ−ＣＡＤ図は、設置物の占有する３次元領域をそのまま記載するソリッドモデル、または、配管等の一部の設置物は中心線のみで記載し、表示されていない幅等の寸法を中心線に属性として関連付けたワイヤーフレームモデルで作成される場合がある。
【０００３】
設置物の干渉を確認する場合、ソリッドモデルでは、所定の領域が重複して占有されていれば干渉していると判断することができる。しかし、ソリッドモデルは、図面を構成するデータ量が多く、複雑な図面では迅速な処理が行えない場合がある。
【０００４】
このため、図面のデータ量が少ないワイヤーフレームモデルが使用される場合がある。特に、船舶内の設置物の配置に関する図面では、ワイヤーフレームモデルが使用される場合がある。ワイヤーフレームモデルで設置物の干渉を確認する従来の方法では、対象物と他の対象物の距離を計算し、所定の距離を有しているかにより判断していた。具体的には、管と管、管と構造物等の互いの距離を算出することにより判断していた。この従来の方法では、対象物同士の位置関係により多岐に渡る場合分けが必要となり、また、計算量も多く、これにより干渉確認プログラムの複雑化、計算速度の低下が発生し、効率が低下する場合があった。
【０００５】
少ない計算量で、ワイヤーフレームモデルで記載された設置物の干渉が確認できる方法が好ましい。
【０００６】
【発明が解決しようとする課題】
本発明の目的は、少ない計算量で、３Ｄ図面上で記載された設置物の干渉が確認できる３Ｄ―ＣＡＤ図面干渉確認方法を提供することにある。
【０００７】
【課題を解決するための手段】
以下に、［発明の実施の形態］で使用する番号・符号を用いて、課題を解決するための手段を説明する。これらの番号・符号は、［特許請求の範囲］の記載と［発明の実施の形態］の記載との対応関係を明らかにするために付加されたものであるが、［特許請求の範囲］に記載されている発明の技術的範囲の解釈に用いてはならない。
【０００８】
演算部（１）と表示部（２）を具備するコンピュータシステムの表示部（２）に表示され、複数の物体が記載されている図面の複数の物体のうちの第一物体と第二物体の干渉を確認する方法において、本発明の干渉確認方法は以下のステップを含む。
演算部（１）が、第一物体上の複数の点へ、第二物体を示す点の集合から最短距離の複数のベクトルを仮定するステップ。
複数のベクトルの向きが、所定の平面に対して一方に偏っていることを判断するステップ。
【０００９】
演算部（１）と表示部（２）を具備するコンピュータシステムの表示部（２）に表示され、複数の物体が記載されている３次元図面の複数の物体のうちの第一物体と第二物体の干渉を確認する方法において、本発明の干渉確認方法は以下のステップを含む。
演算部（１）が、第一物体を示す各々の線分の端点へ、第二物体を示す線分の一つである第一線分から最短距離となるベクトルを仮定するＡステップ。
演算部（１）が、複数の端点へ第一線分から仮定された複数のベクトルの始点を原点としたベクトルの集合を仮定するＢステップ。
演算部（１）が、ベクトルの集合の複数のベクトルが、互いに１８０°以上離れていないことを確認するＣステップ。
演算部（１）が、第二物体を示す線分が複数ある場合に、全ての線分毎に、Ａステップ〜Ｃステップを行うステップ。
演算部（１）が、第二物体を示す線分の全てにおけるＣステップで、１８０°以上離れたベクトルがない場合、第一物体と第二物体の干渉がないと判断し、一つでも１８０°以上離れたベクトルがある場合、第一物体と第二物体の干渉があると判断するステップ。
【００１０】
演算部（１）と表示部（２）を具備するコンピュータシステムの表示部（２）に表示され、複数の物体が記載されている３次元図面上の複数の物体のうちの第一物体と第二物体の干渉を確認する方法において、本発明の干渉確認方法は以下のステップを含む。
演算部（１）が、第一物体を所定の間隔で囲んだ補正第一物体を仮定するステップ。
演算部（１）が、補正第一物体を示す各線分の端点へ、第二物体を示す線分の一つである第一線分から最短距離となるベクトルを仮定するＡステップ。
演算部（１）が、複数の端点へ、第一線分から仮定された複数のベクトルの始点を原点としたベクトルの集合を仮定するＢステップ。
演算部（１）が、複数のベクトルが、互いに１８０°以上離れていないことを確認するＣステップ。
演算部（１）が、第二物体を示す線分が複数ある場合に、全ての線分毎に、Ａステップ〜Ｃステップを行うＤステップ。
演算部（１）が、第二物体を示す線分の全てにおけるＣステップで、１８０°以上離れたベクトルがない場合、第一物体と第二物体の干渉がないと判断し、一つでも１８０°以上離れたベクトルがある場合、第一物体と第二物体の干渉があると判断するステップ。
【００１１】
上記の複数のベクトルが、互いに１８０°以上離れていないことを確認するＣステップは、以下のステップを含む。
全ての複数のベクトルを、各々の単位ベクトルに変換するステップ。
複数の単位ベクトルの中から、Ｘ軸成分の最大値を持つベクトルを抽出するステップ。
複数の単位ベクトルの中から、Ｘ軸成分の最小値を持つベクトルを抽出するステップ。
Ｘ軸成分の最大値を持つベクトルのＸ成分値と、Ｘ軸成分の最小値を持つベクトルのＸ成分値の中間値であるＸ成分中間値を求めるステップ。
複数の単位ベクトルの中から、Ｙ軸成分の最大値を持つベクトルを抽出するステップ。
複数の単位ベクトルの中から、Ｙ軸成分の最小値を持つベクトルを抽出するステップ。
Ｙ軸成分の最大値を持つベクトルのＹ成分値と、Ｙ軸成分の最小値を持つベクトルのＹ成分値の中間値であるＹ成分中間値を求めるステップ。
複数の単位ベクトルの中から、Ｚ軸成分の最大値を持つベクトルを抽出するステップ。
複数の単位ベクトルの中から、Ｚ軸成分の最小値を持つベクトルを抽出するステップ。
Ｚ軸成分の最大値を持つベクトルのＺ成分値と、Ｚ軸成分の最小値を持つベクトルのＺ成分値の中間値であるＺ成分中間値を求めるステップ。
Ｘ成分中間値、Ｙ成分中間値、Ｚ成分中間値をもつ基本ベクトルを仮定するステップ。
単位ベクトルの各々が基本ベクトルと成す角が９０°以上でないことを確認するステップ。
【００１２】
上記の３Ｄ―ＣＡＤ図面干渉確認方法において、第二物体が円柱形の場合、間隔は第二物体の半径であり、第二物体を示す線分は、第二物体の中心線を示す線分である。
【００１３】
上記の３Ｄ―ＣＡＤ図面干渉確認方法において、間隔は、第一物体と第二物体の間に空けられる所定の間隔を含む。
【００１４】
本発明の３Ｄ―ＣＡＤ図面干渉確認プログラムは、以下のステップを含む。
複数の物体が記載されている３次元図面において、複数の物体の一つである第一物体を示す各線分の端点へ、複数の物体の一つである第二物体を示す線分の一つである第一線分から最短距離となるベクトルを仮定するＡステップ。
複数の端点へ、第一線分から仮定された複数のベクトルの始点を原点としたベクトルの集合を仮定するＢステップ。
ベクトルの集合の複数のベクトルが、互いに１８０°以上離れていないことを確認するＣステップ。
第二物体を示す線分が複数ある場合に、全ての線分毎に、Ａステップ〜Ｃステップを行うステップ。
第二物体を示す線分の全てにおけるＣステップで、１８０°以上離れたベクトルがない場合、第一物体と第二物体の干渉がないと判断され、一つでも１８０°以上離れたベクトルがある場合、第一物体と第二物体の干渉があると判断されるステップ。
【００１５】
本発明の３Ｄ―ＣＡＤ図面干渉確認プログラムは、以下のステップを含む。
複数の物体が記載されている３次元図面において、複数の物体の一つである第一物体を所定の間隔で囲んだ補正第一物体を仮定するステップ。
補正第一物体を示す各線分の端点へ、複数の物体の一つである第二物体を示す線分の一つである第一線分から最短距離となるベクトルを作成するＡステップ。
複数の端点へ、第一線分から仮定された複数のベクトルの始点を原点としたベクトルの集合を仮定するＢステップ。
複数のベクトルが、互いに１８０°以上離れていないことを確認するＣステップ。
第二物体を示す線分が複数ある場合に、全ての線分毎に、Ａステップ〜Ｃステップを行うＤステップ。
第二物体を示す線分の全てにおけるＣステップで、１８０°以上離れたベクトルがない場合、第一物体と第二物体の干渉がないと判断され、一つでも１８０°以上離れたベクトルがある場合、第一物体と第二物体の干渉があると判断さるステップ。
【００１６】
上記３Ｄ―ＣＡＤ図面干渉確認プログラムのＣステップにおいて、複数のベクトルが、互いに１８０°以上離れていないことを確認する方法は、以下のステップを含む。
全ての複数のベクトルを、各々単位ベクトルにするステップ。
複数の単位ベクトルの中から、Ｘ軸成分の最大値を持つベクトルを抽出するステップ。
複数の単位ベクトルの中から、Ｘ軸成分の最小値を持つベクトルを抽出するステップ。
Ｘ軸成分の最大値を持つベクトルのＸ成分値と、Ｘ軸成分の最小値を持つベクトルのＸ成分値の中間値であるＸ成分中間値を求めるステップ。
複数の単位ベクトルの中から、Ｙ軸成分の最大値を持つベクトルを抽出するステップ。
複数の単位ベクトルの中から、Ｙ軸成分の最小値を持つベクトルを抽出するステップ。
Ｙ軸成分の最大値を持つベクトルのＹ成分値と、Ｙ軸成分の最小値を持つベクトルのＹ成分値の中間値であるＹ成分中間値を求めるステップ。
複数の単位ベクトルの中から、Ｚ軸成分の最大値を持つベクトルを抽出するステップ。
複数の単位ベクトルの中から、Ｚ軸成分の最小値を持つベクトルを抽出するステップ。
Ｚ軸成分の最大値を持つベクトルのＺ成分値と、Ｚ軸成分の最小値を持つベクトルのＺ成分値の中間値であるＺ成分中間値を求めるステップ。
Ｘ成分中間値、Ｙ成分中間値、Ｚ成分中間値をもつ基本ベクトルを作成するステップ。
単位ベクトルの各々が基本ベクトルと成す角が９０°以上でないことを確認するステップ。
【００１７】
上記３Ｄ―ＣＡＤ図面干渉確認プログラムにおいて、第二物体が円柱形の場合、間隔は第二物体の半径であり、第二物体を示す線分は、第二物体の中心線を示す線分である。
【００１８】
上記３Ｄ―ＣＡＤ図面干渉確認プログラムにおいて、間隔は、第一物体と第二物体の間に空けられる所定の間隔を含む。
【００１９】
本発明の３Ｄ―ＣＡＤ図面干渉確認システムは、３Ｄ図面を表示することができる表示部（２）と、３Ｄ図面の座標認識ができる演算部（１）と、を具備する。
演算部（１）は、上記のいずれかに記載された３Ｄ―ＣＡＤ図面干渉確認プログラムを実行し、表示部（２）は、３Ｄ―ＣＡＤ図面干渉確認プログラムの実行結果を表示する。
【００２０】
【発明の実施の形態】
添付図面を参照して、本発明による３Ｄ―ＣＡＤ図面干渉確認方法の実施の形態を以下に説明する。
図１に３Ｄ―ＣＡＤ図面干渉確認方法を実施する３Ｄ―ＣＡＤ図面干渉確認システムが示される。
【００２１】
３Ｄ―ＣＡＤ図面干渉確認システムは、演算部１、表示部２、入力部３、記憶部４を含む。演算部１は、ＣＰＵ５を含み、コンピュータ本体に代表される。
演算部１は、３Ｄ−ＣＡＤプログラム６および干渉チェックプログラム７を実行することができる。演算部１は、３Ｄ−ＣＡＤプログラムで書かれた図面の座標認識が可能である。また、３Ｄ−ＣＡＤプログラムで書かれた図面の線分等は記載されている物体の属性が付けられ、演算部１は、物体と線の関係を認識することができる。
３Ｄ−ＣＡＤプログラム６は、コンピュータ画面上で、３次元の製図を行うためのプログラムである。干渉チェックプログラム７は、以下で説明される３Ｄ―ＣＡＤ図面干渉確認方法を、演算部１に実行させるためのプログラムである。
干渉チェックプログラム７は、３Ｄ−ＣＡＤプログラム６に含まれる場合がある。
【００２２】
表示部２は、モニタに代表され、３Ｄ―ＣＡＤ図面や干渉チェックプログラムで実施された結果を表示することができる。
入力部３は、マウスやキーボードに代表され、使用者が製図のためのデータ入力する場合、干渉チェックプログラム７の実行命令をする場合に使用される。
【００２３】
記憶部４は、ハードディスクに代表され、３Ｄ−ＣＡＤプログラム６、干渉チェックプログラム７を記憶することができる。記憶部４は３Ｄ―ＣＡＤ図面８を記憶し、３Ｄ―ＣＡＤ図面８は演算部１で呼び出され、表示部２に表示される。ここで、３Ｄ―ＣＡＤ図面８は、ワイヤーフレームモデルである。
【００２４】
次に、３Ｄ―ＣＡＤ図面８に記載されている設置物の干渉を確認するためのフローが説明される。本実施例では、３次元凸型多角形Ｖと所定の配管Ｐの干渉を確認するための例が示される。
図２は、フローを、図３〜図５は概念図を示す。
【００２５】
演算部１は３Ｄ−ＣＡＤプログラム６により、記憶部４に記憶されている３Ｄ−ＣＡＤ図面８もしくは、使用者によって製図された３Ｄ−ＣＡＤ図面８を表示部２に表示するように制御する（Ｓ１）。
本実施例の３Ｄ−ＣＡＤ図面８は、ワイヤーフレームモデルであるので、図３に示されるように配管Ｐは中心線Ｌで表示され、半径ｒの情報が中心線Ｌに属性として関連付けられている。図３に示されるように３Ｄ−ＣＡＤ図面上で３次元凸型多角形Ｖは、稜線（辺）の組み合わせによって表示される。
【００２６】
使用者により、干渉チェック命令が入力される（Ｓ２）。
【００２７】
演算部１は、配管Ｐと３次元凸型多角形Ｖの干渉を確認する場合、３次元凸型多角形Ｖを間隔ｒで囲んだ補正多角形Ｖ’を図面上で仮定する（Ｓ３）。ここで、間隔ｒは、配管Ｐの半径ｒである。
３次元凸型多角形Ｖを間隔ｒで囲んだ補正多角形Ｖ’の概略図が図４に示される。
【００２８】
本例では間隔を配管半径ｒとしたが、間隔は配管Ｐの表面と３次元凸型多角形Ｖ表面の間に空けなければいけない所定の空間α（安全間隔など）を加えることで、所定の空間が空いていることを確認することもできる。
【００２９】
概念的には、補正多角形Ｖ’と中心線Ｌが交差しなければ、配管Ｐと３次元凸型多角形Ｖは干渉していないと判断できる。本発明では補正多角形Ｖ’と中心線Ｌが交差しているか、以下のベクトルを使用する方法で判断する。
【００３０】
配管Ｐの中心を示す線分Ｌから、補正多角形Ｖ’の各角Ｃ１〜ｋにベクトルｎ１〜ｋを仮定する（Ｓ４）。ベクトルｎ１〜ｋは、線分Ｌから最短距離となるように作成される。すなわち、線分Ｌ上の任意の点から垂直に所定の角にベクトルを作成できる場合は、そのベクトルが作成され、線分上の点から垂直に所定の角へベクトルを作成できない場合は、当該角に近い方の線分の端点から、当該角へのベクトルが作成される。
具体的には、線分Ｌを無限長の直線とし、ある角から当該直線へ垂直に引いた線が直線に交わる点が線分Ｌの範囲になければ、線分Ｌの近い方の端をベクトルの始点とする。図４では、角Ｃ１、Ｃｋから線分Ｌに垂線を引けないので、端点ｌ１を始点として角Ｃ１へベクトルｎ１を、端点ｌ２を始点として角Ｃｋへベクトルｎｋを作成している。
【００３１】
次に、上記で作成した全てのベクトルｎ１〜ｋの始点を原点に集めた３次元空間を仮定する（Ｓ５）。全てのベクトルｎ１〜ｋの始点を原点に集めた３次元空間の概念図が図５に示される。
【００３２】
全てのベクトルｎ１〜ｋを単位長さの単位ベクトルｅ１〜ｋに変換する（Ｓ６）。
【００３３】
単位ベクトルｅ１〜ｋの中から各軸（Ｘ軸、Ｙ軸、Ｚ軸）毎に最大値を持つ単位ベクトルと最小値を持つ単位ベクトルを抽出し、最大値と最小値の中間値を求める。各軸毎の中間値を持つベクトルを基準ベクトルｅＡとする（Ｓ７）。
【００３４】
基準ベクトルｅＡと各単位ベクトルｅ１〜ｋの形成する角θ１〜ｋが９０°以下であるか判定する（Ｓ８）。
全ての単位ベクトルｅ１〜ｋと基準ベクトルｅＡの成す角θ１〜ｋが９０°以下であれば、配管Ｐと３次元凸型多角形Ｖは干渉していないと判断される（Ｓ９）。
単位ベクトルｅ１〜ｋと基準ベクトルｅＡの成す角θ１〜ｋのうちの一つ以上が９０°以上であれば、配管Ｐと３次元凸型多角形Ｖは干渉していると判断される（Ｓ１０）。
【００３５】
演算部１は、干渉の有無の結果を表示部２に表示するように制御する。
【００３６】
上記の判定は、線分Ｌが補正多角形Ｖ’と交差していなければ、ベクトルｎ１〜ｋは、原点に集められた３次元空間で、原点を通る所定の平面の一方側に偏り、線分Ｌが補正多角形Ｖ’と交差していれば、原点を通る所定の平面の一方側に偏らないことにより判定している。すなわち、線分Ｌが補正多角形Ｖ’と交差していれば、線分Ｌの周りに補正多角形Ｖ’が存在しているので、ベクトルは所定の面の一方方向にならない。
【００３７】
次に、基準ベクトルｅＡと各単位ベクトルｅ１〜ｋの形成する角θ１〜ｋが９０°以下であるか判定する方法が説明される。
ベクトルｎ１の単位ベクトルをｅ１＝（ｅ１ｘ、ｅ１ｙ、ｅ１ｚ）とする。
同様にベクトルｎ２の単位ベクトルをｅ２＝（ｅ２ｘ、ｅ２ｙ、ｅ２ｚ）とする。
同様にベクトルｎｉ（ｉは１〜ｋの間の自然数）の単位ベクトルをｅｉ＝（ｅｉｘ、ｅｉｙ、ｅｉｚ）とする。
ベクトルｎｋの単位ベクトルをｅｋ＝（ｅｋｘ、ｅｋｙ、ｅｋｚ）とする。
【００３８】
原点を始点としたベクトルｎ１〜ｋがある方向に偏っているとき、厳密にいえば原点を通り全てのベクトルｎ１〜ｋを表側または裏側に置く境界平面が存在するとき、原点を通る単位ベクトルｅ１〜ｋは、原点（０，０）を中心とする所定の面できられた半径１の半球内に分布する。
半球に入るということは、最も離れた２つのベクトルが１８０°以上開くことはない。
ここで、ｘｙｚ方向にそれぞれもっとも離れているベクトルｅｉの組を求めると、それぞれの軸方向の成分は次の通りとなる。
ｘ方向
Ｍａｘ（ｅｉｘ）＝Ｍａｘ（ｅ１ｘ、ｅ２ｘ、…、ｅｋｘ）
Ｍｉｎ（ｅｉｘ）＝Ｍｉｎ（ｅ１ｘ、ｅ２ｘ、…、ｅｋｘ）
ｙ方向
Ｍａｘ（ｅｉｙ）＝Ｍａｘ（ｅ１ｙ、ｅ２ｙ、…、ｅｋｙ）
Ｍｉｎ（ｅｉｙ）＝Ｍｉｎ（ｅ１ｙ、ｅ２ｙ、…、ｅｋｙ）
ｚ方向
Ｍａｘ（ｅｉｚ）＝Ｍａｘ（ｅ１ｚ、ｅ２ｚ、…、ｅｋｚ）
Ｍｉｎ（ｅｉｚ）＝Ｍｉｎ（ｅ１ｚ、ｅ２ｚ、…、ｅｋｚ）
【００３９】
各軸の最大と最小の中間値を持つ成分を持つ基本ベクトルｅＡを求める。
【数１】
2004030321.tif 000003
式（１）の基本ベクトルと各ベクトルの角度を下記式（２）で求める。
【数２】
2004030321.tif 000004
各単位ベクトルｅ１〜ｋの式（２）の解が９０°以下であれば、ベクトルｎ１〜ｋは、ある面に対して一方方向に偏っていると判断できる。
各単位ベクトルｅ１〜ｋの式（２）の解が９０°以下のものがあれば、ある面に対して一方方向に偏っていると判断できず、干渉していると判断される。
【００４０】
上記の例では、３次元凸型多角形Ｖと配管Ｐの干渉を確認する方法が説明されたが、その他の形状のものでも適用可能である。
【００４１】
３次元凸型多角形Ｖと丸ダクトの干渉を確認する場合、配管との干渉方法と同様で、３次元凸型多角形Ｖを間隔ｒで囲んだ補正多角形Ｖ’と、丸ダクトの中心線の干渉を確認する。
間隔ｒは丸ダクトの半径、もしくは、丸ダクトの半径＋安全間隔である。
【００４２】
３次元凸型多角形Ｖと角ダクトの干渉を確認する場合、３次元凸型多角形Ｖを間隔ｒで囲んだ補正多角形Ｖ’と、角ダクトの各稜線の干渉を確認する。
間隔ｒは安全間隔である。
【００４３】
角ダクトと配管もしくは丸ダクトの干渉を確認する場合、角ダクトを間隔ｒで囲んだ補正角ダクトと、配管または丸ダクトの中心線の干渉を確認する。
間隔ｒは配管もしくは丸ダクトの半径、もしくは、配管もしくは丸ダクトの半径＋安全間隔である。
【００４４】
角ダクトと他の角ダクトの干渉を確認する場合、一方の角ダクトを間隔ｒで囲んだ補正角ダクトと、他方の角ダクトの各稜線の干渉を確認する。
間隔ｒは、安全間隔である。
【００４５】
船殻と配管もしくは丸ダクトの干渉を確認する場合、船殻の表面を間隔ｒで囲んだ補正船殻と、配管または丸ダクトの中心線の干渉を確認する。
間隔ｒは配管もしくは丸ダクトの半径、もしくは、配管もしくは丸ダクトの半径＋安全間隔である。
【００４６】
船殻と角ダクトの干渉を確認する場合、船殻の表面を間隔ｒで囲んだ補正船殻と、角ダクトの各稜線の干渉を確認する。
間隔ｒは、安全間隔である。
【００４７】
機器は３次元凸型多角形Ｖ、もしくは３次元凸型多角形Ｖと円筒（丸ダクトや配管と同じ）の組み合わせとして確認可能である。
【００４８】
丸ダクトと丸ダクト、配管と配管、丸ダクトと配管の場合は以下の確認をする。本例では、丸ダクトと配管の干渉で説明されているが、丸ダクトと丸ダクト、配管と配管の組み合わせても同様である。
丸ダクトの中心線を含む平面Ａと配管の中心線を含む平面Ｂで、かつ、平面Ａと平面Ｂは平行である２平面を仮定する。丸ダクトの表面を間隔ｒで囲んだ補正丸ダクト領域が、配管の中心を含む平面Ｂで切り取られた断面Ｃを求める。（断面Ｃは、平面Ｂ上の所定の領域である。）断面Ｃ上を、配管の中心線（平面Ｂ上の線分）が通っているか確認する。
ここで、間隔ｒは、配管の半径、もしくは、配管の半径＋安全間隔である。
【００４９】
同様に、多角形、円柱、球、円錐、平面、３次元の面などの組み合わせの確認ができる。
球の場合は、干渉を確認する相手を、（半径長さ）または（半径長さ＋安全距離）で囲い、球の中心からベクトルを仮定することで確認することができる。
円錐の場合は、円錐を含む円柱として干渉を確認し、干渉が確認された場合、円錐を高さ方向に垂直な面で区切って、それぞれの区分を含む円柱の集合として干渉を確認することができる。干渉が確認された場合、区切る区分を小さくすることにより正確に判断できる。なお、繰り返しを防ぐため、先に、円錐の内側に接する円柱の集合と干渉を確認して、干渉の確認をすることもできる。
【００５０】
なお、凹型多角形の場合は、形状を区切って凸型の組合せとすることで確認できる。
【００５１】
本発明の３Ｄ―ＣＡＤ図面干渉確認方法は、ワイヤーフレームモデルであればより有効であるが、ワイヤーフレームモデルに限定されない。３Ｄ図面であれば、ソリッドモデルでも適用可能である。特に、設置物と設置物の間の安全間隔を確認するのに好ましい。
【００５２】
【発明の効果】
本発明は、少ない計算量で、３Ｄ図面上で記載された設置物の干渉が確認できる３Ｄ―ＣＡＤ図面干渉確認方法を提供することができる。
【図面の簡単な説明】
【図１】図１は本発明のシステムの構成を示すブロック図である。
【図２】図２は本発明の３Ｄ―ＣＡＤ図面干渉確認方法のフローを表す。
【図３】図３は実施例で説明される３次元凸型多角形と配管の図面上の関係を示す。
【図４】図４は実施例で説明される３次元凸型多角形と配管の図面上の関係を示す。
【図５】図５は実施例で説明されるベクトルｎ１〜ｋが、原点を始点として集められ仮定された３次元座標の概略を示す。
【符号の説明】
１　演算部
２　表示部
３　入力部
４　記憶部
５　ＣＰＵ
６　３Ｄ−ＣＡＤプログラム
７　干渉チェックプログラム
８　３Ｄ−ＣＡＤ図面
Ｖ　３次元凸型多角形
Ｖ’　補正多角形
Ｌ　中心線／線分
ｌ１　端点
ｌ２　端点
Ｐ　配管
ｒ　間隔（半径）
【図１】
2004030321.tif 000005
【図２】
2004030321.tif 000006
【図３】
2004030321.tif 000007
【図４】
2004030321.tif 000008
【図５】
2004030321.tif 000009