JP3626896B2 - データ変換方法およびデータ変換プログラムを記録した記録媒体 - Google Patents
データ変換方法およびデータ変換プログラムを記録した記録媒体 Download PDFInfo
- Publication number
- JP3626896B2 JP3626896B2 JP2000153078A JP2000153078A JP3626896B2 JP 3626896 B2 JP3626896 B2 JP 3626896B2 JP 2000153078 A JP2000153078 A JP 2000153078A JP 2000153078 A JP2000153078 A JP 2000153078A JP 3626896 B2 JP3626896 B2 JP 3626896B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- graphic data
- solid graphic
- shape
- solid
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Description
【0001】
【発明の属する技術分野】
本発明は、互換性のない異種CAD間のデータ変換を実現するためのデータ変換方法に関するものであり、特に、AutoCAD(米AutoDesk社の汎用CAD)上で生成された3Dソリッド図形データをIntergraph_PDS(米Intergraph社のプラント向けCAD)にて干渉チェック機能およびレンダリング機能を実現可能な形式に自動変換するデータ変換方法、およびそのデータ変換プログラムを記録した記録媒体に関するものである。
【0002】
【従来の技術】
以下、従来のデータ変換方法について説明する。従来の設計システム内においては、その目的や用途に応じて、各サブシステム単位に、それぞれ最適なCADツールを選択していた。その結果、たとえば、プラント向け設計システムについては、プラント向けCADであるIntergraph_PDSが基幹CADとして採用され、ボイラ設計システム等については、汎用CADであるAutoCADが基幹CADとして採用されていた。そのため、両方のCADで同一の図形を表現する場合には、同一の図形を個別に作成する必要があった。
【0003】
なお、これらのCAD間においては、それぞれ扱えるデータ形式が異なり、たとえば、AutoCADでは、多くのソリッド・モデラで採用されたACIS(米Spatical Technologyのソリッド・モデリング・カーネル)に基づくデータ形式の「3Dソリッド・モデル」が使用され、Intergraph_PDSでは、独自のフォーマットに基づくデータ形式である「サーフェイス・モデル」が使用されている。したがって、AutoCADで出力した3Dソリッド図形データを、本来の特性を維持した状態でIntergraph_PDSに取り込むことは不可能であった。
【0004】
具体的にいうと、AutoCADで生成した3Dソリッド図形データを、たとえば、AutoCADおよびIntergraph_PDSの両方で使用可能な中間フォーマットである、DWG,DXF,IGES等の形式に変換/出力し、この状態のデータをIntergraph_PDSで取り込んだ場合、Intergraph_PDS側では、受け取ったデータを、3Dソリッドの図形としてではなく、ワイヤフレームの図形として表現する(図18参照)。
【0005】
このように、従来技術においては、両方のCADで個別に図形を作成するか、または、両方のCADで使用可能な(本来の特性を維持できない)中間フォーマットを用いて相互のデータを利用するか、いずれかを選択して各サブシステムに関する作業を行っていた。
【0006】
【発明が解決しようとする課題】
しかしながら、上記、従来技術において、両方のCAD(AutoCAD,Intergraph_PDS)で個別に図形を作成する場合には、同一な設計対象に対し、両方のCADシステム上でそれぞれ、個別に3次元的なモデルを作成することとなり、二重作業であるため作業効率が悪い、という問題があった。
【0007】
また、従来技術において、両方のCADで使用可能な中間フォーマットを用いて相互のデータを利用する場合には、AutoCAD上で生成された3Dソリッド図形データにおける本来の特性を維持できないため、Intergraph_PDS側で干渉チェック機能およびレンダリング機能を実現できない、という問題があった。
【0008】
具体的にいうと、たとえば、「Intergraph_PDS上で作成した3Dデータ(配管,鉄骨,ケーブルトレイ,その他の機器等)、およびAutoCAD上で作成した3Dソリッド図形データを用いて、Intergraph_PDS上で、干渉チェック処理、レンダリング処理、および陰線処理を行いたい」というニーズに対して、AutoCADと、Intergraph_PDSの基幹CADであるMicroStation(米Bentley社の汎用CAD)との間には、処理に不可欠な位相(Topology)情報に関する互換性がなく、上記各処理を実現できない、という問題があった。
【0009】
本発明は、上記に鑑みてなされたものであって、AutoCADとIntergraph_PDSを含む設計システム全体で、図形の作成に関する処理量(労力)の削減を実現し、かつ、各CADで作成した本来の特性を維持した状態で、干渉チェック処理,レンダリング処理,陰線処理を実現可能なデータ変換方法、およびデータ変換プログラムを記録した記録媒体、を得ることを目的とする。
【0010】
【課題を解決するための手段】
上述した課題を解決し、目的を達成するために、本発明にかかるデータ変換方法にあっては、AutoCADで作成され、記憶された全ての3Dソリッド図形データを検索し、検出された全ての3Dソリッド図形データに対する繰り返し処理で、Intergraph_PDS上で表現可能な厚さ属性つきポリゴン形式のデータを生成し、その後、変換元の3Dソリッド図形データを消去するタイプAのデータ変換処理ステップと、前記3Dソリッド図形データを検索し、検出された全ての3Dソリッド図形データに対する繰り返し処理で、前記Intergraph_PDS上で表現可能な(ポリライン+ポリフェイスメッシュ)の形式のデータを生成し、その後、変換元の3Dソリッド図形データを消去するタイプBのデータ変換処理ステップと、を含むことを特徴とする。
【0011】
この発明によれば、AutoCAD上で作成された3Dソリッド図形データを、本来の特性を維持した状態で、Intergraph_PDS上で使用可能なデータ形式に変換することにより、個別に図形を作成することなく、たとえば、Intergraph_PDSによる干渉チェック機能、レンダリング機能、および陰線処理機能を実現する。
【0012】
つぎの発明にかかるデータ変換方法において、前記タイプAのデータ変換処理ステップにあっては、前記3Dソリッド図形データが単一の「平行掃引」形状である場合に、前記厚さ属性となる上底および下底間の距離を算出し、その後、前記厚さ属性つきポリゴン形式のデータを生成する第1の生成ステップと、前記3Dソリッド図形データが複数の「平行掃引」形状の組み合わせである場合に、該3Dソリッド図形データを、「平行掃引」形状、かつその体積が最大、となるように切断し、切断後の形状単位に、前記厚さ属性となる上底および下底間の距離を算出し、その後、前記厚さ属性つきポリゴン形式のデータを生成する第2の生成ステップと、前記3Dソリッド図形データが、単一の「平行掃引」形状および複数の「平行掃引」形状の組み合わせ以外である場合に、近似的なデータ変換方法を用いて、前記厚さ属性つきポリゴン形式のデータを生成する第3の生成ステップと、を含むことを特徴とする。
【0013】
この発明によれば、AutoCADにより作成された3Dソリッド図形データを「厚さ属性つきポリゴン」に変換するような場合に、まず、その3Dソリッド図形データが、第1の生成ステップで変換可能なデータかどうかを判断し、単一の「平行掃引」形状である場合に、第1の生成ステップを実行し、その生成結果を出力する。一方、単一の「平行掃引」形状でない場合には、つぎに、第2の生成ステップで変換可能なデータかどうかを判断し、たとえば、複数の「平行掃引」形状の組み合わせである場合に、第2の生成ステップを実行し、その生成結果を出力する。最後に、3Dソリッド図形データが、単一の「平行掃引」形状および複数の「平行掃引」形状の組み合わせ以外の形状であるような場合には、無条件に第3の生成ステップを実行し、その生成結果を出力する。
【0014】
つぎの発明にかかるデータ変換方法において、前記タイプBのデータ変換処理ステップにあっては、前記3Dソリッド図形データにおけるすべての平面に対してポリゴン化処理を実施するポリゴン化処理ステップと、前記3Dソリッド図形データにおけるすべての曲面に対してポリフェイスメッシュ化処理を実施するポリフェイスメッシュ化処理ステップと、を含むことを特徴とする。
【0015】
この発明によれば、AutoCADにより作成された3Dソリッド図形データを、「(POLYLINE + PolyFaceMesh)」に変換するような場合、受け取った3Dソリッド図形データを擬似的に分解することで、元の立体を構成するすべての平面および曲面を取得し、この状態で、すべての平面に対して「ポリゴン化処理」を実施し、さらに、すべての曲面に対して「ポリフェース・メッシュ化処理」を実施し、これらの処理結果をデータ変換結果として出力する。
【0016】
つぎの発明にかかるデータ変換プログラムを記録した記録媒体にあっては、AutoCADで作成され、記憶された全ての3Dソリッド図形データを検索し、検出された全ての3Dソリッド図形データに対する繰り返し処理で、Intergraph_PDS上で表現可能な厚さ属性つきポリゴン形式のデータを生成し、その後、変換元の3Dソリッド図形データを消去するタイプAのデータ変換処理ステップと、前記3Dソリッド図形データを検索し、検出された全ての3Dソリッド図形データに対する繰り返し処理で、前記Intergraph_PDS上で表現可能な(ポリライン+ポリフェイスメッシュ)の形式のデータを生成し、その後、変換元の3Dソリッド図形データを消去するタイプBのデータ変換処理ステップと、を含むことを特徴とする。
【0017】
この発明によれば、AutoCAD上で作成された3Dソリッド図形データを、本来の特性を維持した状態で、Intergraph_PDS上で使用可能なデータ形式に変換することにより、個別に図形を作成することなく、たとえば、Intergraph_PDSによる干渉チェック機能、レンダリング機能、および陰線処理機能を実現する。
【0018】
【発明の実施の形態】
以下に、本発明にかかるデータ変換方法の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【0019】
図1は、本発明にかかるデータ変換方法の全体の流れを示すフローチャートであり、図2は、本発明にかかるデータ変換方法を用いて変換/出力されたデータの流れを示す図である。本実施の形態においては、たとえば、AutoCAD上で作成された3Dソリッド図形データ1が、AutoCADに常駐するデータ変換プログラム2にて所望のデータ形式に変換され、そして、変換後のデータ(干渉チェック用データ3,形状表示用データ4)が、外部に出力される。また、Intergraph_PDS側では、受け取った干渉チェック用データ3をIntergraph_PDS用の「干渉チェック用モデル5」として扱い、干渉チェック機能を実現し、もう一方の形状表示用データ4をIntergraph_PDS用の「形状表示用モデル6」として扱い、レンダリング機能や陰線処理機能を実現する。
【0020】
このとき、データ変換プログラム2においては、AutoCADの起動と同時に、環境初期化変数(図3参照)を取得してその内部に常駐し(図1、ステップS1)、ユーザからの制御コマンド(開始)の入力にあわせて(ステップS2)、後述する干渉チェック用のデータ変換処理(ステップS3)や形状表示用のデータ変換処理(ステップS4)を行う。また、上記各処理の終了およびシステム自体の終了にあわせて(ステップS2)、データ変換プログラム2を終了する。
【0021】
なお、本実施の形態において、上記干渉チェック用モデル5は、AutoCAD上の3Dソリッド図形データ1の位相(「立体の中身が詰まっている」という情報)を伝えることを目的としたモデルであり、曲面等の複雑な形状については微小な段差が発生する。また、形状表示用モデル6は、モデル外観のパースや、平面図および側面図を作成することを目的としたモデルであり、AutoCAD上の3Dソリッド図形データ1の外観形状をより正確に表現する。また、図3に示す環境初期化変数については、これに限らず、上記処理に関するすべての動作環境を設定可能とする。
【0022】
このように、本実施の形態においては、AutoCAD上で作成された3Dソリッド図形データを、本来の特性を維持した状態で、Intergraph_PDS上で使用可能なデータ形式に変換し、以下の機能を実現する。
(1)干渉チェック機能の実現により、3次元的な設計作業を支援する。
(2)レンダリング機能および陰線処理機能の実現により、客先説明用の鳥瞰図(パース)および正確な外観図を作成する。
【0023】
図4は、上記干渉チェック機能を実現するための具体的なシステム構成を示す図である。図4において、11はAutoCADがインストールされた計算機であり、12はIntergraph_PDSがインストールされた計算機であり、13はIntergraph_PDSの基幹CADとして動作するMicroStationであり、14は干渉チェック用情報を記憶する記憶部である。
【0024】
たとえば、計算機11で作成された3Dソリッド図形データ1(図示の3DSOLIDに対応)は、システムの起動と同時に常駐するデータ変換プログラム2の処理により干渉チェック用データ3(POLYLINE + thickness:厚属性つきポリゴン「閉じた2Dポリラインに厚さ属性を付加したもの」)に変換され、出力される。そして、干渉チェック用データ3を受け取った計算機12上のMicroStation13では、そのデータに基づいて、干渉チェック対象として登録可能な干渉チェック用モデル5(SOLID:ソリッド)を作成する。この状態で、計算機12では、受け取った干渉チェック用モデル5および記憶部14に記憶された干渉チェック用情報を用いて干渉チェック機能を実現する。
【0025】
また、図5は、上記レンダリング機能および陰線処理機能を実現するための具体的なシステム構成を示す図である。なお、前述の図5と同一の構成については、同一の符号を付してその説明を省略する。
【0026】
たとえば、計算機11で作成された3Dソリッド図形データ1(図示の3DSOLIDに対応)は、システムの起動と同時に常駐するデータ変換プログラム2の処理により形状表示用データ4(POLYLINE + PolyFaceMesh:平面+曲面)に変換され、出力される。そして、形状表示用データ4を受け取った計算機12上のMicroStation13では、そのデータに基づいて、レンダリング対象として処理可能な形状表示用モデル6(SHAPE:形状)を作成する。この状態で、計算機12では、受け取った形状表示用モデル6を用いてレンダリング機能を実現し、さらに、形状表示用モデル6を用いて陰線処理機能(エッジ処理)を実現する。
【0027】
以下、前述したデータ変換プログラム2による干渉チェック用のデータ変換処理(ステップS3)、および形状表示用のデータ変換処理(ステップS4)、の内容を詳細に説明する。まず、干渉チェック用のデータ変換処理について説明する。
【0028】
図6は、3Dソリッド図形データ1を干渉チェック用データ3に変換するデータ変換プログラム2のフローチャートである。まず、データ変換プログラム2では、AutoCADにより作成されたすべての3Dソリッド図形データ(3Dソリッド)を探索し(ステップS11)、繰り返し処理で、探索されたすべての3Dソリッド図形データを、干渉チェック用データ3、すなわち、「厚属性つきポリゴン」に変換する(ステップS12,ステップS13)。
【0029】
本実施の形態においては、ステップS12に対応するデータ変換処理として、まず、ステップS11にて探索された3Dソリッド図形データ1が、後述するレベル_1変換可能なデータかどうかを判断し(ステップS14)、レベル_1変換を実行するために規定された特定の基準を満たしていれば、レベル_1変換を実行し(ステップS15,Yes)、その結果を出力する。一方、前記特定の基準を満たしていなければ、レベル_1変換を実行せずに(ステップS15,No)、ステップS16の処理に移行する。
【0030】
つぎに、データ変換プログラム2においては、レベル_1変換を実行しなかった3Dソリッド図形データ1が、レベル_2変換可能なデータかどうかを判断し(ステップS16)、レベル_2変換を実行するために規定された特定の基準を満たしていれば、レベル_2変換を実行し(ステップS17,Yes)、その結果を出力する。一方、前記所定の基準を満たしていなければ、レベル_2変換を実行せずに(ステップS17,No)、ステップS18の処理に移行する。
【0031】
最後に、データ変換プログラム2においては、レベル_2変換を実行しなかった3Dソリッド図形データ1に対して、無条件にレベル_3変換を実行する(ステップS18)。なお、レベル_3変換は、近似的なデータ変換方法であり、原理上、どのような形状の3Dソリッド図形データであっても、干渉チェック用データ3に変換可能である。
【0032】
ここで、各レベルにて変換可能な形状を、具体例を用いて説明する。たとえば、図7は、レベル_1変換が可能な3Dソリッド図形データ1の形状と、レベル_1変換後の干渉チェック用データ3の形状と、を示す図である。また、図8は、レベル_1変換が不可かつレベル_2変換が可能な3Dソリッド図形データ1の形状と、レベル_2変換後の干渉チェック用データ3の形状と、を示す図である。また、図9は、レベル_1変換およびレベル_2変換が不可である3Dソリッド図形データ1の形状と、レベル_3変換後の干渉チェック用データ3の形状と、を示す図である。
【0033】
本実施の形態においては、図7に示すとおり、3Dソリッド図形データ1の形状が、PDSプリミティブ形状である場合に、前述した「レベル_1変換を実行するために規定された特定の基準」を満たすことになる。すなわち、PDSプリミティブ形状をもつ3Dソリッド図形データ1だけが、レベル_1変換を実施できる。たとえば、直方体、角柱、型鋼のような形状がこの処理に適用される。なお、ここでいうPDSプリミティブとは、ある2次元平面状の多角形(ポリゴン)に対して垂直に押し出してできる立体図形、すなわち、「平行掃引」形状の図形のことをいう。
【0034】
また、図8に示すとおり、3Dソリッド図形データ1の形状が、PDSプリミティブ形状が立体的に組み合わされた形状(単一を含む)である場合に、前述した「レベル_2変換を実行するために規定された特定の基準」を満たすことになる。すなわち、PDSプリミティブ形状が立体的に組み合わされた形状、または単一のPDSプリミティブ形状をもつ3Dソリッド図形データ1が、レベル_2変換を実施できる。たとえば、プラント設計の分野では、通常(異形なものを除く)のダクト等の形状がこの処理に適用される。
【0035】
また、本実施の形態においては、図9に示すとおり、3Dソリッド図形データ1の形状が、PDSプリミティブ形状が立体的に組み合わされた形状(単一を含む)以外である場合に、レベル_3変換を実行する。たとえば、プラント設計の分野では、ダクトトランジッション部等の形状がこの処理に適用される。ただし、レベル_3変換については、3Dソリッド図形データ1の形状が、単一のPDSプリミティブ形状、またはPDSプリミティブ形状が立体的に組み合わされた形状であっても、実施可能である。また、図9(a)は、変更前および変更後の図形の斜視図を表し、(b)は、側面図を表し、(c)は、側面図の一部の拡大図を表す。
【0036】
図10および図11は、図6に示すフローチャートにおける「レベル_1変換処理(ステップS14)」の詳細を示すフローチャートである。たとえば、図10(a)に示すように、データ変換プログラム2のステップS14においては、前述のステップS6にて探索された3Dソリッド図形データ1が、レベル_1変換可能なデータであるかどうか、すなわち、PDSプリミティブ形状かどうか、を判断する(ステップS21)。そして、PDSプリミティブ形状であった場合にのみ(ステップS22,Yes)、レベル_1変換を実施し、その3Dソリッド図形データ1を干渉チェック用データ3に変換する(ステップS23)。一方、PDSプリミティブ形状でなかった場合には(ステップS22,No)、レベル_1変換を実施しない。
【0037】
図10(b)は、上記「PDSプリミティブ形状かどうかの判定処理(ステップS21)」の詳細を示すフローチャートである。たとえば、対象となる3Dソリッド図形データ1が、PDSプリミティブ形状かどうかの判定を行う場合、図10(a)のステップS21では、まず、3Dソリッド図形データ1を擬似的に分解し(ステップS24)、その後、分解した面(リージョン)構成が「平行掃引」形状の条件を満たしているかどうかを判断する(ステップS25)。
【0038】
具体的にいうと、ある特定の面の法線ベクトルと、その他の面の法線ベクトルと、を順に比較し(図11、ステップS41)、最後の面との比較が終了した段階で、たとえば、平行でなく(ステップS45,No)、かつ垂直でない(ステップS46,No)法線ベクトルが1つでも存在するような場合(ステップS42,Yes)には、つぎの特定の面に対して、同様の比較処理を行う(ステップS41)。一方、たとえば、ある特定の面の法線ベクトルと、最後の面の法線ベクトルとの比較が終了した段階で、平行な法線ベクトル(ステップS45,Yes)か、または垂直な法線ベクトル(ステップS46,Yes)だけしか存在しないような場合(ステップS42,No)には、その3Dソリッド図形データ1が、「平行掃引」形状の条件を満たしている可能性がある判断し、つぎに、面の比較を行う(ステップS43)。
【0039】
ステップS43では、ある特定の面とその他の面とを順に比較し、最後の面との比較が終了した段階で、たとえば、平行(ステップS47,Yes)かつ同一面でない(ステップS48,Yes)面が2つであるような場合(ステップS44,Yes)に、その3Dソリッド図形データ1が、「平行掃引」形状の条件を満たしていると判断する。そして、その2つの面の一方を上底、他方を下底、と規定し、上底および下底間の距離を算出する(ステップS49)。
【0040】
図10(c)は、上記「3Dソリッド図形データ1を干渉チェック用データ3に変換する処理(ステップS23)」の詳細を示すフローチャートである。ステップS23では、PDSプリミティブ形状であると判断された(ステップS22,Yes)3Dソリッド図形データ1を、擬似的に分解し(ステップS27)、押し出し方向を法線とする面を探索し(ステップS28,Yes)、その面(基底面)から厚属性つきポリゴンを作成する(ステップS29)。
【0041】
具体的にいうと、基底面は、複数のループで構成されている場合があるため、基底面を構成するループ数を取得し(ステップS31)、その後、そのループ数分のポリゴンを作成し(ステップS32)、新規に作成されたポリゴンには、もとの「平行掃引」形状と同じ押し出し距離を、厚属性として付加する(ステップS33)。そして、厚属性つきポリゴンの作成後、変換の対象となる元の3Dソリッド図形データ1を消去する(ステップS30)。
【0042】
図12および図13は、図6に示すフローチャートにおける「レベル_2変換処理(ステップS16)」の詳細を示すフローチャートである。たとえば、図12に示すように、データ変換プログラム2のステップS16においては、まず、受け取った3Dソリッド図形データ1における切断可能なすべての平面を算出する(ステップS51)。
【0043】
具体的にいうと、ステップ51においては、まず、受け取った3Dソリッド図形データ1におけるすべての頂点を取得し(ステップS62)、さらに、3Dソリッド図形データ1を構成するすべての面の法線ベクトルを取得する(ステップS63)。そして、取得した頂点と法線ベクトルの組合わせで定義される平面で、受け取った3Dソリッド図形データ1を切断できるかどうか判断し(ステップS64)、切断不可であれば(ステップS65,No)、つぎの面についての判断処理に移行し、一方、切断可能であれば(ステップS65,Yes)、その面を配列に追加し(ステップS66)、つぎの面についての判断処理に移行し、すべての平面の組合わせについて、この処理を繰り返す。
【0044】
ステップS51により切断平面を算出後、データ変換プログラム2では、1回の切断による結果が「平行掃引」形状であるかどうか、すなわち、PDSプリミティブ形状であるかどうかを判断する(ステップS52)。
【0045】
具体的にいうと、ステップS52においては、仮想的な3Dソリッド図形データを、先に追加しておいた平面で擬似的に切断し、切断後の形状がPDSプリミティブ形状かどうかを判断する(図13(a)ステップS71)。そこで、ステップS71では、まず、受け取った3Dソリッドに対する切断などのシュミレーションを行うための仮想的な3Dソリッド図形データ(クローン)を作成し(ステップS72)、ステップS66にて先に追加しておいた平面を用いて、その仮想的な3Dソリッド図形データを切断する(ステップS73)。そして、図10におけるステップS21およびS22と同様の処理で、切断後の形状がPDSプリミティブ形状かどうかを判断し(ステップS74)、PDSプリミティブ形状でなければ(ステップS75,No)、作成した仮想的な3Dソリッド図形データを消去し(ステップS77)、先に追加されたつぎの平面について、同様の処理を行う。一方、切断後の形状がPDSプリミティブ形状であれば(ステップS75,Yes)、データ変換プログラム2では、切断後の形状の体積を算出し(ステップS76)、その後、作成した仮想的な3Dソリッド図形データを消去し(ステップS77)、追加されたすべての平面について同様の処理を行う。
【0046】
ステップS52による判断処理後、データ変換プログラム2では、さらに、2回の切断による結果が「平行掃引」形状であるかどうか、すなわち、PDSプリミティブ形状であるかどうかを判断する(ステップS53)。
【0047】
具体的にいうと、ステップS53においては、仮想的な3Dソリッド図形データを、先に追加しておいた2つの平面で擬似的に切断し、切断後の形状がPDSプリミティブ形状かどうかを判断する(図13(b)ステップS81)。そこで、ステップS81では、まず、先に取得しておいた頂点や法線ベクトルに関する情報から、仮想的な3Dソリッド図形データを作成し(ステップS82)、ステップS66にて先に追加しておいた2つの平面の組み合わせを用いて、その仮想的な3Dソリッド図形データを切断する(ステップS83,S84)。そして、図10におけるステップS21およびS22と同様の処理で、切断後の形状がPDSプリミティブ形状かどうかを判断し(ステップS85)、PDSプリミティブ形状でなければ(ステップS86,No)、作成した仮想的な3Dソリッド図形データを消去し(ステップS88)、いずれか一方の平面を変更して、同様の処理を行う。一方、切断後の形状がPDSプリミティブ形状であれば(ステップS86,Yes)、データ変換プログラム2では、切断後の形状の体積を算出し(ステップS87)、その後、作成した仮想的な3Dソリッド図形データを消去し(ステップS88)、すべての組み合わせについて同様の処理を繰り返し行う。
【0048】
その後、データ変換プログラム2では、ステップS52およびS53のいずれの判断処理においても、PDSプリミティブ形状でないと判断された場合に(ステップS54,Yes)、受け取った3Dソリッド図形データ1に対して「レベル_2変換処理」を実行できないと判断し(すなわち、前記特定の基準を満たしていないと判断し)、その3Dソリッド図形データ1を、つぎの「レベル_3変換処理」に渡す。
【0049】
一方、ステップS52およびS53の少なくともいずれか一方の判断処理において、PDSプリミティブ形状であると判断された場合には(ステップS54,No)、受け取った3Dソリッド図形データ1に対して「レベル_2変換処理」を実行できると判断し、そのPDSプリミティブ形状の体積が最大となる最適断面(ステップS53)で、3Dソリッド図形データ1を切断する(ステップS56、またはステップS57,S58)。
【0050】
そして、受け取った3Dソリッド図形データ1に対して「レベル_2変換処理」を実行できると判断した場合には、最適断面による切断後の形状単位に、図10(a)と同様の処理を実施し、最終的に、厚属性つきポリゴンを作成する(ステップS59,S60,S61)。
【0051】
図14は、図6に示すフローチャートにおける「レベル_3変換処理(ステップS18)」の詳細を示すフローチャートである。データ変換プログラム2のステップS18においては、まず、受け取った3Dソリッド図形データ1を、微小な「平行掃引」形状の積み重ねに分解することで、近似的なデータ変換を行う。
【0052】
具体的にいうと、まず、データ変換プログラム2においては、受け取った3Dソリッド図形データ1のすべてのエッジを探索し(ステップS91)、さらに、その3Dソリッド図形データ1が存在するおおまかな座標範囲(以降、境界ボックスと呼ぶ)を算出する(ステップS92)。
【0053】
境界ボックスの算出後、データ変換プログラム2では、その境界ボックス内を走査することによって、3Dソリッド図形データ1の断面が作成できるかどうかを判断する(ステップS93)。すなわち、その境界ボックスの始端から終端までの間を、指定された微小増分単位に進みながら走査平面を決定し、この走査平面が、3Dソリッド図形データ1のエッジを横切るかどうか探索する(ステップS100,S101)。
【0054】
走査平面により、3Dソリッド図形データ1の断面が作成できると判断した場合には(ステップS94,Yes)、仮想的な断面、すなわち、その切断面の形状を作成する(ステップS95)。そして、隣り合う前断面の形状と比較して(ステップS96)、その形状が同一であれば(ステップS97,Yes)、前回の形状と今回の形状の組み合わせが「平行掃引」形状であると判断し、微小増分単位に走査平面をずらし、同様の処理で再度つぎの切断面の形状を作成する。
【0055】
一方、隣り合う前断面の形状との比較結果が異なれば(ステップS97,No)、前記微小増分単位の立体、すなわち、微小増分単位の厚属性つきポリゴンを作成する(ステップS98)。具体的にいうと、図10(c)ステップS29と同様の処理で、厚属性つきポリゴンを作成する(ステップS102,S103,S104)。これらステップS91からS98の処理を、微小増分単位に繰り返し実行することで、受け取った3Dソリッド図形データ1に対応する厚属性つきポリゴンを作成し、最後に、もとの3Dソリッド図形データ1を消去する(ステップS99)。
【0056】
このように、本実施の形態においては、AutoCADにより作成された3Dソリッド図形データを、干渉チェック用データ3、すなわち、「厚属性つきポリゴン」に変換するような場合に、まず、その3Dソリッド図形データ1が、レベル_1変換可能なデータかどうかを判断し、レベル_1変換を実行するために規定された特定の基準を満たしていれば、レベル_1変換を実行し、その変換結果を出力する。一方、前記特定の基準を満たしていなければ、つぎに、レベル_2変換可能なデータかどうかを判断し、レベル_2変換を実行するために規定された特定の基準を満たしていれば、レベル_2変換を実行し、前記所定の基準を満たしていなければ、無条件にレベル_3変換を実行し、いずれか一方の変換結果を出力する。
【0057】
これにより、本実施の形態においては、AutoCADおよびIntergraph_PDSで個別に図形を作成する必要がなくなるため、AutoCADとIntergraph_PDSを含む設計システム全体で、図形の作成に関する処理量(労力)の削減を実現することが可能となり、さらに、AutoCAD上で生成された3Dソリッド図形データの特性を維持することができるため、Intergraph_PDS側で干渉チェック機能を実現することが可能となる。また、レベル1→2→3と段階的にデータ変換処理を実施できるため、演算処理量を削減することができる。
【0058】
つぎに、形状表示用のデータ変換処理について説明する。図15は、3Dソリッド図形データ1を形状表示用データ4に変換するデータ変換プログラム2のフローチャートである。まず、データ変換プログラム2では、AutoCADにより作成されたすべての3Dソリッド図形データを探索し(ステップS111)、繰り返し処理で、探索されたすべての3Dソリッド図形データを、形状表示用データ4、すなわち、「(POLYLINE + PolyFaceMesh:平面+曲面)」に変換する(ステップS112,ステップS113)。
【0059】
本実施の形態においては、ステップ112に対応するデータ変換処理として、まず、受け取った3Dソリッド図形データを擬似的に分解することで、元の立体を構成する形状のすべての面(平面および曲面)を取得する(ステップS114)。なお、ここでは、平面が「リージョン」と呼ばれ、曲面が「ボディ」と呼ばれる。
【0060】
その後、データ変換プログラム2においては、すべてのリージョン(多角形平面)に対して後述するポリゴン化処理を実施し(ステップS115)、さらに、すべてのボディに対して後述するポリフェース・メッシュ化処理を実施することで(ステップS116)、受け取った3Dソリッド図形データを形状表示用データ4に変換し、最後に、元の3Dソリッド図形データをプログラム上から消去する(ステップS117)。
【0061】
図16(a)および(b)は、それぞれ図15に示す「ポリゴン化処理(ステップS115)」および「ポリフェース・メッシュ化処理(ステップS116)」の詳細を示すフローチャートである。図16(a)において、ステップS115では、まず、先にステップS114にて取得しておいたリージョンから、クローンを作成し(ステップS121)、その面から厚属性つきポリゴンを作成する(ステップS122)。
【0062】
具体的にいうと、リージョンは、複数のループで構成されている場合があるため、リージョンを構成するループ数を取得し(ステップS124)、その後、そのループ数分の厚属性つきポリゴンを作成する(ステップS125)。そして、厚属性つきポリゴンの作成後、変換の対象となる元の3Dソリッド図形データ1をプログラム上から消去する(ステップS123)。
【0063】
また、図16(b)において、ステップS116では、まず、先にステップS114にて取得しておいたボディからクローンを作成し(ステップS131)、そのボディが完全な円柱形状であるかどうかを判断する(ステップS132)。ステップS132において、たとえば、サーフェイス・タイプを取得し(ステップS137)、そのサーフェイス・タイプが円柱形状であれば(S138,円柱)、その円柱ボディから表面の円エッジを取得し(ステップS139)、つぎに完全な円柱かどうかを判断する(ステップS140)。そして、そのボディが完全な円柱であれば(ステップS140,Yes)、「厚属性つき円」を作成し(ステップS133,S134)、その後、プログラム上からクローンを消去する(ステップS136)。
【0064】
一方、サーフェイス・タイプを取得し(ステップS137)、そのサーフェイス・タイプが円柱形状でない場合(S138,円柱以外)、または、ボディが完全な円柱でない場合(ステップS140,No)には、ボディオブジェクトを探索し、「ポリフェイス・メッシュ」を作成する(ステップS135)。すなわち、ボディ上の通過点列を取得することで(ステップS141)、「ポリフェイス・メッシュ」を作成し(ステップS142)、その後、プログラム上からクローンを消去する(ステップS136)。
【0065】
このように、本実施の形態においては、AutoCADにより作成された3Dソリッド図形データを、形状表示用データ4、すなわち、「(POLYLINE + PolyFaceMesh:平面+曲面)」に変換するような場合、受け取った3Dソリッド図形データを擬似的に分解することで、元の立体を構成するすべてのリージョンおよびボディを取得し、すべてのリージョンに対して「ポリゴン化処理」を実施し、さらに、すべてのボディに対して「ポリフェース・メッシュ化処理」を実施し、これらの処理結果をデータ変換結果として出力する。
【0066】
これにより、本実施の形態においては、AutoCADおよびIntergraph_PDSで個別に図形を作成する必要がなくなるため、原動機統合システム全体で、図形の作成に関する処理量(労力)の削減を実現することが可能となり、さらに、AutoCAD上で生成された3Dソリッド図形データの特性を維持することができるため、Intergraph_PDS側でレンダリング機能および陰線処理機能を実現することが可能となる。
【0067】
なお、図17は、上記実施の形態1に示すAutoCADとして動作し、前述したデータ変換プログラム2を実行可能な一般的な計算機システムの構成を示す図である。この計算機システムでは、たとえば、図6および図10〜図16に示すデータ変換方法を実現する「データ変換プログラム2」を実行する。
【0068】
この計算機システムは、CPUを含む制御ユニット301と、メモリユニット302と、表示ユニット303と、入力ユニット304と、CD−ROMドライブユニット305と、ディスクユニット306と、を備え、これらの各ユニットは、それぞれシステムバスAを介して接続されている。また、図17において、制御ユニット301は、前記データ変換プログラムを実行する。メモリユニット302は、RAM、ROM等のメモリを含み、制御ユニット301が実行すべきプログラム、処理の過程で得られた必要なデータ等を記憶する。表示ユニット303は、CRTやLCD(液晶表示パネル)等で構成され、計算機システムの使用者に対して、各種画面を表示する。入力ユニット304は、キーボード、マウス等で構成され、計算機システムの使用者が、各種情報の入力を行うために使用される。また、図示のCD−ROM200には、図6および図10〜図16に示すデータ変換プログラム2が格納されている。
【0069】
上記のように構成される計算機システムでは、まず、CD−ROMドライブユニット305にセットされたCD−ROM200からデータ変換プログラム2がディスクユニット306にインストールされる。そして、計算機システムを立ち上げるときにディスクユニット306から読み出されたデータ変換プログラム2が、メモリユニット302に格納される。この状態で、制御ユニット301(CPU)は、メモリユニット302に格納されたデータ変換プログラムにしたがって、上記図6および図10〜図16に示す処理を実行する。
【0070】
なお、本発明においては、CD−ROM200にて上記処理を記述したプログラムを提供しているが、このプログラムの記憶媒体は、これに限定されることなく、システムを構成するコンピュータに応じて、たとえば、フロッピーディスク等の磁気ディスク、光磁気ディスク、磁気テープ等の他の記憶媒体を用いることも可能である。
【0071】
【発明の効果】
以上、説明したとおり、本発明によれば、データ互換のないCAD上で、個別に図形を作成する必要がなくなるため、AutoCADとIntergraph_PDSを含む設計システム全体において、図形の作成に関する処理量(労力)を大幅に削減することができる、という効果を奏する。また、AutoCADで作成した3Dソリッド図形データ本来の特性を維持した状態で、データ変換が可能となるため、Intergraph_PDS上で、干渉チェック処理,レンダリング処理,陰線処理を実現することができる、という効果を奏する。
【0072】
つぎの発明によれば、AutoCADおよびIntergraph_PDSで個別に図形を作成する必要がなくなるため、AutoCADとIntergraph_PDSを含む設計システム全体で、図形の作成に関する処理量(労力)の削減を実現することが可能となり、さらに、段階的にデータ変換処理を実施できるため、演算処理量を削減することができる、という効果を奏する。
【0073】
つぎの発明によれば、AutoCADおよびIntergraph_PDSで個別に図形を作成する必要がなくなるため、AutoCADとIntergraph_PDSを含む設計システム全体で、図形の作成に関する処理量(労力)の削減を実現することが可能となり、さらに、平面と曲面に分けてデータを作成するため、Intergraph_PDS側でレンダリング機能および陰線処理機能を実現できる、という効果を奏する。
【0074】
つぎの発明によれば、請求項1の発明(本発明)によれば、データ互換のないCAD上で、個別に図形を作成する必要がなくなるため、AutoCADとIntergraph_PDSを含む設計システム全体において、図形の作成に関する処理量(労力)を大幅に削減することが可能なプログラムを得ることができる、という効果を奏する。また、AutoCADで作成した3Dソリッド図形データ本来の特性を維持した状態で、データ変換が可能となるため、Intergraph_PDS上で、干渉チェック処理,レンダリング処理,陰線処理を実現することが可能なプログラムを得ることができる、という効果を奏する。
【図面の簡単な説明】
【図1】本発明にかかるデータ変換方法の全体の流れを示すフローチャートである。
【図2】本発明にかかるデータ変換方法を用いて変換/出力されたデータの流れを示す図である。
【図3】環境初期化変数の一例を示す図である。
【図4】干渉チェック機能を実現するための具体的なシステム構成を示す図である。
【図5】レンダリング機能および陰線処理機能を実現するための具体的なシステム構成を示す図である。
【図6】3Dソリッド図形データ1を干渉チェック用データ3に変換するデータ変換プログラム2のフローチャートである。
【図7】レベル_1変換が可能な3Dソリッド図形データ1の形状とレベル_1変換後の干渉チェック用データ3の形状とを示す図である。
【図8】レベル_1変換が不可かつレベル_2変換が可能な3Dソリッド図形データ1の形状とレベル_2変換後の干渉チェック用データ3の形状とを示す図である。
【図9】レベル_1変換およびレベル_2変換が不可である3Dソリッド図形データ1の形状とレベル_3変換後の干渉チェック用データ3の形状とを示す図である。
【図10】図6に示す「レベル_1変換処理(ステップS14)」の詳細を示すフローチャートである。
【図11】図6に示す「レベル_1変換処理(ステップS14)」の詳細を示すフローチャートである。
【図12】図6に示す「レベル_2変換処理(ステップS16)」の詳細を示すフローチャートである。
【図13】図6に示す「レベル_2変換処理(ステップS16)」の詳細を示すフローチャートである。
【図14】図6に示す「レベル_3変換処理(ステップS18)」の詳細を示すフローチャートである。
【図15】3Dソリッド図形データ1を形状表示用データ4に変換するデータ変換プログラム2のフローチャートである。
【図16】図15に示す「ポリゴン化処理(ステップS115)」および「ポリフェース・メッシュ化処理(ステップS116)」の詳細を示すフローチャートである。
【図17】データ変換プログラム2を実行可能な一般的な計算機システムの構成を示す図である。
【図18】従来のデータ変換方法を示す図である。
【符号の説明】
1 3Dソリッド図形データ
2 データ変換プログラム
3 干渉チェック用データ
4 形状表示用データ
5 干渉チェック用モデル
6,6a 形状表示用モデル
11,12 計算機
13 MicroStation
14 記憶部
【発明の属する技術分野】
本発明は、互換性のない異種CAD間のデータ変換を実現するためのデータ変換方法に関するものであり、特に、AutoCAD(米AutoDesk社の汎用CAD)上で生成された3Dソリッド図形データをIntergraph_PDS(米Intergraph社のプラント向けCAD)にて干渉チェック機能およびレンダリング機能を実現可能な形式に自動変換するデータ変換方法、およびそのデータ変換プログラムを記録した記録媒体に関するものである。
【0002】
【従来の技術】
以下、従来のデータ変換方法について説明する。従来の設計システム内においては、その目的や用途に応じて、各サブシステム単位に、それぞれ最適なCADツールを選択していた。その結果、たとえば、プラント向け設計システムについては、プラント向けCADであるIntergraph_PDSが基幹CADとして採用され、ボイラ設計システム等については、汎用CADであるAutoCADが基幹CADとして採用されていた。そのため、両方のCADで同一の図形を表現する場合には、同一の図形を個別に作成する必要があった。
【0003】
なお、これらのCAD間においては、それぞれ扱えるデータ形式が異なり、たとえば、AutoCADでは、多くのソリッド・モデラで採用されたACIS(米Spatical Technologyのソリッド・モデリング・カーネル)に基づくデータ形式の「3Dソリッド・モデル」が使用され、Intergraph_PDSでは、独自のフォーマットに基づくデータ形式である「サーフェイス・モデル」が使用されている。したがって、AutoCADで出力した3Dソリッド図形データを、本来の特性を維持した状態でIntergraph_PDSに取り込むことは不可能であった。
【0004】
具体的にいうと、AutoCADで生成した3Dソリッド図形データを、たとえば、AutoCADおよびIntergraph_PDSの両方で使用可能な中間フォーマットである、DWG,DXF,IGES等の形式に変換/出力し、この状態のデータをIntergraph_PDSで取り込んだ場合、Intergraph_PDS側では、受け取ったデータを、3Dソリッドの図形としてではなく、ワイヤフレームの図形として表現する(図18参照)。
【0005】
このように、従来技術においては、両方のCADで個別に図形を作成するか、または、両方のCADで使用可能な(本来の特性を維持できない)中間フォーマットを用いて相互のデータを利用するか、いずれかを選択して各サブシステムに関する作業を行っていた。
【0006】
【発明が解決しようとする課題】
しかしながら、上記、従来技術において、両方のCAD(AutoCAD,Intergraph_PDS)で個別に図形を作成する場合には、同一な設計対象に対し、両方のCADシステム上でそれぞれ、個別に3次元的なモデルを作成することとなり、二重作業であるため作業効率が悪い、という問題があった。
【0007】
また、従来技術において、両方のCADで使用可能な中間フォーマットを用いて相互のデータを利用する場合には、AutoCAD上で生成された3Dソリッド図形データにおける本来の特性を維持できないため、Intergraph_PDS側で干渉チェック機能およびレンダリング機能を実現できない、という問題があった。
【0008】
具体的にいうと、たとえば、「Intergraph_PDS上で作成した3Dデータ(配管,鉄骨,ケーブルトレイ,その他の機器等)、およびAutoCAD上で作成した3Dソリッド図形データを用いて、Intergraph_PDS上で、干渉チェック処理、レンダリング処理、および陰線処理を行いたい」というニーズに対して、AutoCADと、Intergraph_PDSの基幹CADであるMicroStation(米Bentley社の汎用CAD)との間には、処理に不可欠な位相(Topology)情報に関する互換性がなく、上記各処理を実現できない、という問題があった。
【0009】
本発明は、上記に鑑みてなされたものであって、AutoCADとIntergraph_PDSを含む設計システム全体で、図形の作成に関する処理量(労力)の削減を実現し、かつ、各CADで作成した本来の特性を維持した状態で、干渉チェック処理,レンダリング処理,陰線処理を実現可能なデータ変換方法、およびデータ変換プログラムを記録した記録媒体、を得ることを目的とする。
【0010】
【課題を解決するための手段】
上述した課題を解決し、目的を達成するために、本発明にかかるデータ変換方法にあっては、AutoCADで作成され、記憶された全ての3Dソリッド図形データを検索し、検出された全ての3Dソリッド図形データに対する繰り返し処理で、Intergraph_PDS上で表現可能な厚さ属性つきポリゴン形式のデータを生成し、その後、変換元の3Dソリッド図形データを消去するタイプAのデータ変換処理ステップと、前記3Dソリッド図形データを検索し、検出された全ての3Dソリッド図形データに対する繰り返し処理で、前記Intergraph_PDS上で表現可能な(ポリライン+ポリフェイスメッシュ)の形式のデータを生成し、その後、変換元の3Dソリッド図形データを消去するタイプBのデータ変換処理ステップと、を含むことを特徴とする。
【0011】
この発明によれば、AutoCAD上で作成された3Dソリッド図形データを、本来の特性を維持した状態で、Intergraph_PDS上で使用可能なデータ形式に変換することにより、個別に図形を作成することなく、たとえば、Intergraph_PDSによる干渉チェック機能、レンダリング機能、および陰線処理機能を実現する。
【0012】
つぎの発明にかかるデータ変換方法において、前記タイプAのデータ変換処理ステップにあっては、前記3Dソリッド図形データが単一の「平行掃引」形状である場合に、前記厚さ属性となる上底および下底間の距離を算出し、その後、前記厚さ属性つきポリゴン形式のデータを生成する第1の生成ステップと、前記3Dソリッド図形データが複数の「平行掃引」形状の組み合わせである場合に、該3Dソリッド図形データを、「平行掃引」形状、かつその体積が最大、となるように切断し、切断後の形状単位に、前記厚さ属性となる上底および下底間の距離を算出し、その後、前記厚さ属性つきポリゴン形式のデータを生成する第2の生成ステップと、前記3Dソリッド図形データが、単一の「平行掃引」形状および複数の「平行掃引」形状の組み合わせ以外である場合に、近似的なデータ変換方法を用いて、前記厚さ属性つきポリゴン形式のデータを生成する第3の生成ステップと、を含むことを特徴とする。
【0013】
この発明によれば、AutoCADにより作成された3Dソリッド図形データを「厚さ属性つきポリゴン」に変換するような場合に、まず、その3Dソリッド図形データが、第1の生成ステップで変換可能なデータかどうかを判断し、単一の「平行掃引」形状である場合に、第1の生成ステップを実行し、その生成結果を出力する。一方、単一の「平行掃引」形状でない場合には、つぎに、第2の生成ステップで変換可能なデータかどうかを判断し、たとえば、複数の「平行掃引」形状の組み合わせである場合に、第2の生成ステップを実行し、その生成結果を出力する。最後に、3Dソリッド図形データが、単一の「平行掃引」形状および複数の「平行掃引」形状の組み合わせ以外の形状であるような場合には、無条件に第3の生成ステップを実行し、その生成結果を出力する。
【0014】
つぎの発明にかかるデータ変換方法において、前記タイプBのデータ変換処理ステップにあっては、前記3Dソリッド図形データにおけるすべての平面に対してポリゴン化処理を実施するポリゴン化処理ステップと、前記3Dソリッド図形データにおけるすべての曲面に対してポリフェイスメッシュ化処理を実施するポリフェイスメッシュ化処理ステップと、を含むことを特徴とする。
【0015】
この発明によれば、AutoCADにより作成された3Dソリッド図形データを、「(POLYLINE + PolyFaceMesh)」に変換するような場合、受け取った3Dソリッド図形データを擬似的に分解することで、元の立体を構成するすべての平面および曲面を取得し、この状態で、すべての平面に対して「ポリゴン化処理」を実施し、さらに、すべての曲面に対して「ポリフェース・メッシュ化処理」を実施し、これらの処理結果をデータ変換結果として出力する。
【0016】
つぎの発明にかかるデータ変換プログラムを記録した記録媒体にあっては、AutoCADで作成され、記憶された全ての3Dソリッド図形データを検索し、検出された全ての3Dソリッド図形データに対する繰り返し処理で、Intergraph_PDS上で表現可能な厚さ属性つきポリゴン形式のデータを生成し、その後、変換元の3Dソリッド図形データを消去するタイプAのデータ変換処理ステップと、前記3Dソリッド図形データを検索し、検出された全ての3Dソリッド図形データに対する繰り返し処理で、前記Intergraph_PDS上で表現可能な(ポリライン+ポリフェイスメッシュ)の形式のデータを生成し、その後、変換元の3Dソリッド図形データを消去するタイプBのデータ変換処理ステップと、を含むことを特徴とする。
【0017】
この発明によれば、AutoCAD上で作成された3Dソリッド図形データを、本来の特性を維持した状態で、Intergraph_PDS上で使用可能なデータ形式に変換することにより、個別に図形を作成することなく、たとえば、Intergraph_PDSによる干渉チェック機能、レンダリング機能、および陰線処理機能を実現する。
【0018】
【発明の実施の形態】
以下に、本発明にかかるデータ変換方法の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【0019】
図1は、本発明にかかるデータ変換方法の全体の流れを示すフローチャートであり、図2は、本発明にかかるデータ変換方法を用いて変換/出力されたデータの流れを示す図である。本実施の形態においては、たとえば、AutoCAD上で作成された3Dソリッド図形データ1が、AutoCADに常駐するデータ変換プログラム2にて所望のデータ形式に変換され、そして、変換後のデータ(干渉チェック用データ3,形状表示用データ4)が、外部に出力される。また、Intergraph_PDS側では、受け取った干渉チェック用データ3をIntergraph_PDS用の「干渉チェック用モデル5」として扱い、干渉チェック機能を実現し、もう一方の形状表示用データ4をIntergraph_PDS用の「形状表示用モデル6」として扱い、レンダリング機能や陰線処理機能を実現する。
【0020】
このとき、データ変換プログラム2においては、AutoCADの起動と同時に、環境初期化変数(図3参照)を取得してその内部に常駐し(図1、ステップS1)、ユーザからの制御コマンド(開始)の入力にあわせて(ステップS2)、後述する干渉チェック用のデータ変換処理(ステップS3)や形状表示用のデータ変換処理(ステップS4)を行う。また、上記各処理の終了およびシステム自体の終了にあわせて(ステップS2)、データ変換プログラム2を終了する。
【0021】
なお、本実施の形態において、上記干渉チェック用モデル5は、AutoCAD上の3Dソリッド図形データ1の位相(「立体の中身が詰まっている」という情報)を伝えることを目的としたモデルであり、曲面等の複雑な形状については微小な段差が発生する。また、形状表示用モデル6は、モデル外観のパースや、平面図および側面図を作成することを目的としたモデルであり、AutoCAD上の3Dソリッド図形データ1の外観形状をより正確に表現する。また、図3に示す環境初期化変数については、これに限らず、上記処理に関するすべての動作環境を設定可能とする。
【0022】
このように、本実施の形態においては、AutoCAD上で作成された3Dソリッド図形データを、本来の特性を維持した状態で、Intergraph_PDS上で使用可能なデータ形式に変換し、以下の機能を実現する。
(1)干渉チェック機能の実現により、3次元的な設計作業を支援する。
(2)レンダリング機能および陰線処理機能の実現により、客先説明用の鳥瞰図(パース)および正確な外観図を作成する。
【0023】
図4は、上記干渉チェック機能を実現するための具体的なシステム構成を示す図である。図4において、11はAutoCADがインストールされた計算機であり、12はIntergraph_PDSがインストールされた計算機であり、13はIntergraph_PDSの基幹CADとして動作するMicroStationであり、14は干渉チェック用情報を記憶する記憶部である。
【0024】
たとえば、計算機11で作成された3Dソリッド図形データ1(図示の3DSOLIDに対応)は、システムの起動と同時に常駐するデータ変換プログラム2の処理により干渉チェック用データ3(POLYLINE + thickness:厚属性つきポリゴン「閉じた2Dポリラインに厚さ属性を付加したもの」)に変換され、出力される。そして、干渉チェック用データ3を受け取った計算機12上のMicroStation13では、そのデータに基づいて、干渉チェック対象として登録可能な干渉チェック用モデル5(SOLID:ソリッド)を作成する。この状態で、計算機12では、受け取った干渉チェック用モデル5および記憶部14に記憶された干渉チェック用情報を用いて干渉チェック機能を実現する。
【0025】
また、図5は、上記レンダリング機能および陰線処理機能を実現するための具体的なシステム構成を示す図である。なお、前述の図5と同一の構成については、同一の符号を付してその説明を省略する。
【0026】
たとえば、計算機11で作成された3Dソリッド図形データ1(図示の3DSOLIDに対応)は、システムの起動と同時に常駐するデータ変換プログラム2の処理により形状表示用データ4(POLYLINE + PolyFaceMesh:平面+曲面)に変換され、出力される。そして、形状表示用データ4を受け取った計算機12上のMicroStation13では、そのデータに基づいて、レンダリング対象として処理可能な形状表示用モデル6(SHAPE:形状)を作成する。この状態で、計算機12では、受け取った形状表示用モデル6を用いてレンダリング機能を実現し、さらに、形状表示用モデル6を用いて陰線処理機能(エッジ処理)を実現する。
【0027】
以下、前述したデータ変換プログラム2による干渉チェック用のデータ変換処理(ステップS3)、および形状表示用のデータ変換処理(ステップS4)、の内容を詳細に説明する。まず、干渉チェック用のデータ変換処理について説明する。
【0028】
図6は、3Dソリッド図形データ1を干渉チェック用データ3に変換するデータ変換プログラム2のフローチャートである。まず、データ変換プログラム2では、AutoCADにより作成されたすべての3Dソリッド図形データ(3Dソリッド)を探索し(ステップS11)、繰り返し処理で、探索されたすべての3Dソリッド図形データを、干渉チェック用データ3、すなわち、「厚属性つきポリゴン」に変換する(ステップS12,ステップS13)。
【0029】
本実施の形態においては、ステップS12に対応するデータ変換処理として、まず、ステップS11にて探索された3Dソリッド図形データ1が、後述するレベル_1変換可能なデータかどうかを判断し(ステップS14)、レベル_1変換を実行するために規定された特定の基準を満たしていれば、レベル_1変換を実行し(ステップS15,Yes)、その結果を出力する。一方、前記特定の基準を満たしていなければ、レベル_1変換を実行せずに(ステップS15,No)、ステップS16の処理に移行する。
【0030】
つぎに、データ変換プログラム2においては、レベル_1変換を実行しなかった3Dソリッド図形データ1が、レベル_2変換可能なデータかどうかを判断し(ステップS16)、レベル_2変換を実行するために規定された特定の基準を満たしていれば、レベル_2変換を実行し(ステップS17,Yes)、その結果を出力する。一方、前記所定の基準を満たしていなければ、レベル_2変換を実行せずに(ステップS17,No)、ステップS18の処理に移行する。
【0031】
最後に、データ変換プログラム2においては、レベル_2変換を実行しなかった3Dソリッド図形データ1に対して、無条件にレベル_3変換を実行する(ステップS18)。なお、レベル_3変換は、近似的なデータ変換方法であり、原理上、どのような形状の3Dソリッド図形データであっても、干渉チェック用データ3に変換可能である。
【0032】
ここで、各レベルにて変換可能な形状を、具体例を用いて説明する。たとえば、図7は、レベル_1変換が可能な3Dソリッド図形データ1の形状と、レベル_1変換後の干渉チェック用データ3の形状と、を示す図である。また、図8は、レベル_1変換が不可かつレベル_2変換が可能な3Dソリッド図形データ1の形状と、レベル_2変換後の干渉チェック用データ3の形状と、を示す図である。また、図9は、レベル_1変換およびレベル_2変換が不可である3Dソリッド図形データ1の形状と、レベル_3変換後の干渉チェック用データ3の形状と、を示す図である。
【0033】
本実施の形態においては、図7に示すとおり、3Dソリッド図形データ1の形状が、PDSプリミティブ形状である場合に、前述した「レベル_1変換を実行するために規定された特定の基準」を満たすことになる。すなわち、PDSプリミティブ形状をもつ3Dソリッド図形データ1だけが、レベル_1変換を実施できる。たとえば、直方体、角柱、型鋼のような形状がこの処理に適用される。なお、ここでいうPDSプリミティブとは、ある2次元平面状の多角形(ポリゴン)に対して垂直に押し出してできる立体図形、すなわち、「平行掃引」形状の図形のことをいう。
【0034】
また、図8に示すとおり、3Dソリッド図形データ1の形状が、PDSプリミティブ形状が立体的に組み合わされた形状(単一を含む)である場合に、前述した「レベル_2変換を実行するために規定された特定の基準」を満たすことになる。すなわち、PDSプリミティブ形状が立体的に組み合わされた形状、または単一のPDSプリミティブ形状をもつ3Dソリッド図形データ1が、レベル_2変換を実施できる。たとえば、プラント設計の分野では、通常(異形なものを除く)のダクト等の形状がこの処理に適用される。
【0035】
また、本実施の形態においては、図9に示すとおり、3Dソリッド図形データ1の形状が、PDSプリミティブ形状が立体的に組み合わされた形状(単一を含む)以外である場合に、レベル_3変換を実行する。たとえば、プラント設計の分野では、ダクトトランジッション部等の形状がこの処理に適用される。ただし、レベル_3変換については、3Dソリッド図形データ1の形状が、単一のPDSプリミティブ形状、またはPDSプリミティブ形状が立体的に組み合わされた形状であっても、実施可能である。また、図9(a)は、変更前および変更後の図形の斜視図を表し、(b)は、側面図を表し、(c)は、側面図の一部の拡大図を表す。
【0036】
図10および図11は、図6に示すフローチャートにおける「レベル_1変換処理(ステップS14)」の詳細を示すフローチャートである。たとえば、図10(a)に示すように、データ変換プログラム2のステップS14においては、前述のステップS6にて探索された3Dソリッド図形データ1が、レベル_1変換可能なデータであるかどうか、すなわち、PDSプリミティブ形状かどうか、を判断する(ステップS21)。そして、PDSプリミティブ形状であった場合にのみ(ステップS22,Yes)、レベル_1変換を実施し、その3Dソリッド図形データ1を干渉チェック用データ3に変換する(ステップS23)。一方、PDSプリミティブ形状でなかった場合には(ステップS22,No)、レベル_1変換を実施しない。
【0037】
図10(b)は、上記「PDSプリミティブ形状かどうかの判定処理(ステップS21)」の詳細を示すフローチャートである。たとえば、対象となる3Dソリッド図形データ1が、PDSプリミティブ形状かどうかの判定を行う場合、図10(a)のステップS21では、まず、3Dソリッド図形データ1を擬似的に分解し(ステップS24)、その後、分解した面(リージョン)構成が「平行掃引」形状の条件を満たしているかどうかを判断する(ステップS25)。
【0038】
具体的にいうと、ある特定の面の法線ベクトルと、その他の面の法線ベクトルと、を順に比較し(図11、ステップS41)、最後の面との比較が終了した段階で、たとえば、平行でなく(ステップS45,No)、かつ垂直でない(ステップS46,No)法線ベクトルが1つでも存在するような場合(ステップS42,Yes)には、つぎの特定の面に対して、同様の比較処理を行う(ステップS41)。一方、たとえば、ある特定の面の法線ベクトルと、最後の面の法線ベクトルとの比較が終了した段階で、平行な法線ベクトル(ステップS45,Yes)か、または垂直な法線ベクトル(ステップS46,Yes)だけしか存在しないような場合(ステップS42,No)には、その3Dソリッド図形データ1が、「平行掃引」形状の条件を満たしている可能性がある判断し、つぎに、面の比較を行う(ステップS43)。
【0039】
ステップS43では、ある特定の面とその他の面とを順に比較し、最後の面との比較が終了した段階で、たとえば、平行(ステップS47,Yes)かつ同一面でない(ステップS48,Yes)面が2つであるような場合(ステップS44,Yes)に、その3Dソリッド図形データ1が、「平行掃引」形状の条件を満たしていると判断する。そして、その2つの面の一方を上底、他方を下底、と規定し、上底および下底間の距離を算出する(ステップS49)。
【0040】
図10(c)は、上記「3Dソリッド図形データ1を干渉チェック用データ3に変換する処理(ステップS23)」の詳細を示すフローチャートである。ステップS23では、PDSプリミティブ形状であると判断された(ステップS22,Yes)3Dソリッド図形データ1を、擬似的に分解し(ステップS27)、押し出し方向を法線とする面を探索し(ステップS28,Yes)、その面(基底面)から厚属性つきポリゴンを作成する(ステップS29)。
【0041】
具体的にいうと、基底面は、複数のループで構成されている場合があるため、基底面を構成するループ数を取得し(ステップS31)、その後、そのループ数分のポリゴンを作成し(ステップS32)、新規に作成されたポリゴンには、もとの「平行掃引」形状と同じ押し出し距離を、厚属性として付加する(ステップS33)。そして、厚属性つきポリゴンの作成後、変換の対象となる元の3Dソリッド図形データ1を消去する(ステップS30)。
【0042】
図12および図13は、図6に示すフローチャートにおける「レベル_2変換処理(ステップS16)」の詳細を示すフローチャートである。たとえば、図12に示すように、データ変換プログラム2のステップS16においては、まず、受け取った3Dソリッド図形データ1における切断可能なすべての平面を算出する(ステップS51)。
【0043】
具体的にいうと、ステップ51においては、まず、受け取った3Dソリッド図形データ1におけるすべての頂点を取得し(ステップS62)、さらに、3Dソリッド図形データ1を構成するすべての面の法線ベクトルを取得する(ステップS63)。そして、取得した頂点と法線ベクトルの組合わせで定義される平面で、受け取った3Dソリッド図形データ1を切断できるかどうか判断し(ステップS64)、切断不可であれば(ステップS65,No)、つぎの面についての判断処理に移行し、一方、切断可能であれば(ステップS65,Yes)、その面を配列に追加し(ステップS66)、つぎの面についての判断処理に移行し、すべての平面の組合わせについて、この処理を繰り返す。
【0044】
ステップS51により切断平面を算出後、データ変換プログラム2では、1回の切断による結果が「平行掃引」形状であるかどうか、すなわち、PDSプリミティブ形状であるかどうかを判断する(ステップS52)。
【0045】
具体的にいうと、ステップS52においては、仮想的な3Dソリッド図形データを、先に追加しておいた平面で擬似的に切断し、切断後の形状がPDSプリミティブ形状かどうかを判断する(図13(a)ステップS71)。そこで、ステップS71では、まず、受け取った3Dソリッドに対する切断などのシュミレーションを行うための仮想的な3Dソリッド図形データ(クローン)を作成し(ステップS72)、ステップS66にて先に追加しておいた平面を用いて、その仮想的な3Dソリッド図形データを切断する(ステップS73)。そして、図10におけるステップS21およびS22と同様の処理で、切断後の形状がPDSプリミティブ形状かどうかを判断し(ステップS74)、PDSプリミティブ形状でなければ(ステップS75,No)、作成した仮想的な3Dソリッド図形データを消去し(ステップS77)、先に追加されたつぎの平面について、同様の処理を行う。一方、切断後の形状がPDSプリミティブ形状であれば(ステップS75,Yes)、データ変換プログラム2では、切断後の形状の体積を算出し(ステップS76)、その後、作成した仮想的な3Dソリッド図形データを消去し(ステップS77)、追加されたすべての平面について同様の処理を行う。
【0046】
ステップS52による判断処理後、データ変換プログラム2では、さらに、2回の切断による結果が「平行掃引」形状であるかどうか、すなわち、PDSプリミティブ形状であるかどうかを判断する(ステップS53)。
【0047】
具体的にいうと、ステップS53においては、仮想的な3Dソリッド図形データを、先に追加しておいた2つの平面で擬似的に切断し、切断後の形状がPDSプリミティブ形状かどうかを判断する(図13(b)ステップS81)。そこで、ステップS81では、まず、先に取得しておいた頂点や法線ベクトルに関する情報から、仮想的な3Dソリッド図形データを作成し(ステップS82)、ステップS66にて先に追加しておいた2つの平面の組み合わせを用いて、その仮想的な3Dソリッド図形データを切断する(ステップS83,S84)。そして、図10におけるステップS21およびS22と同様の処理で、切断後の形状がPDSプリミティブ形状かどうかを判断し(ステップS85)、PDSプリミティブ形状でなければ(ステップS86,No)、作成した仮想的な3Dソリッド図形データを消去し(ステップS88)、いずれか一方の平面を変更して、同様の処理を行う。一方、切断後の形状がPDSプリミティブ形状であれば(ステップS86,Yes)、データ変換プログラム2では、切断後の形状の体積を算出し(ステップS87)、その後、作成した仮想的な3Dソリッド図形データを消去し(ステップS88)、すべての組み合わせについて同様の処理を繰り返し行う。
【0048】
その後、データ変換プログラム2では、ステップS52およびS53のいずれの判断処理においても、PDSプリミティブ形状でないと判断された場合に(ステップS54,Yes)、受け取った3Dソリッド図形データ1に対して「レベル_2変換処理」を実行できないと判断し(すなわち、前記特定の基準を満たしていないと判断し)、その3Dソリッド図形データ1を、つぎの「レベル_3変換処理」に渡す。
【0049】
一方、ステップS52およびS53の少なくともいずれか一方の判断処理において、PDSプリミティブ形状であると判断された場合には(ステップS54,No)、受け取った3Dソリッド図形データ1に対して「レベル_2変換処理」を実行できると判断し、そのPDSプリミティブ形状の体積が最大となる最適断面(ステップS53)で、3Dソリッド図形データ1を切断する(ステップS56、またはステップS57,S58)。
【0050】
そして、受け取った3Dソリッド図形データ1に対して「レベル_2変換処理」を実行できると判断した場合には、最適断面による切断後の形状単位に、図10(a)と同様の処理を実施し、最終的に、厚属性つきポリゴンを作成する(ステップS59,S60,S61)。
【0051】
図14は、図6に示すフローチャートにおける「レベル_3変換処理(ステップS18)」の詳細を示すフローチャートである。データ変換プログラム2のステップS18においては、まず、受け取った3Dソリッド図形データ1を、微小な「平行掃引」形状の積み重ねに分解することで、近似的なデータ変換を行う。
【0052】
具体的にいうと、まず、データ変換プログラム2においては、受け取った3Dソリッド図形データ1のすべてのエッジを探索し(ステップS91)、さらに、その3Dソリッド図形データ1が存在するおおまかな座標範囲(以降、境界ボックスと呼ぶ)を算出する(ステップS92)。
【0053】
境界ボックスの算出後、データ変換プログラム2では、その境界ボックス内を走査することによって、3Dソリッド図形データ1の断面が作成できるかどうかを判断する(ステップS93)。すなわち、その境界ボックスの始端から終端までの間を、指定された微小増分単位に進みながら走査平面を決定し、この走査平面が、3Dソリッド図形データ1のエッジを横切るかどうか探索する(ステップS100,S101)。
【0054】
走査平面により、3Dソリッド図形データ1の断面が作成できると判断した場合には(ステップS94,Yes)、仮想的な断面、すなわち、その切断面の形状を作成する(ステップS95)。そして、隣り合う前断面の形状と比較して(ステップS96)、その形状が同一であれば(ステップS97,Yes)、前回の形状と今回の形状の組み合わせが「平行掃引」形状であると判断し、微小増分単位に走査平面をずらし、同様の処理で再度つぎの切断面の形状を作成する。
【0055】
一方、隣り合う前断面の形状との比較結果が異なれば(ステップS97,No)、前記微小増分単位の立体、すなわち、微小増分単位の厚属性つきポリゴンを作成する(ステップS98)。具体的にいうと、図10(c)ステップS29と同様の処理で、厚属性つきポリゴンを作成する(ステップS102,S103,S104)。これらステップS91からS98の処理を、微小増分単位に繰り返し実行することで、受け取った3Dソリッド図形データ1に対応する厚属性つきポリゴンを作成し、最後に、もとの3Dソリッド図形データ1を消去する(ステップS99)。
【0056】
このように、本実施の形態においては、AutoCADにより作成された3Dソリッド図形データを、干渉チェック用データ3、すなわち、「厚属性つきポリゴン」に変換するような場合に、まず、その3Dソリッド図形データ1が、レベル_1変換可能なデータかどうかを判断し、レベル_1変換を実行するために規定された特定の基準を満たしていれば、レベル_1変換を実行し、その変換結果を出力する。一方、前記特定の基準を満たしていなければ、つぎに、レベル_2変換可能なデータかどうかを判断し、レベル_2変換を実行するために規定された特定の基準を満たしていれば、レベル_2変換を実行し、前記所定の基準を満たしていなければ、無条件にレベル_3変換を実行し、いずれか一方の変換結果を出力する。
【0057】
これにより、本実施の形態においては、AutoCADおよびIntergraph_PDSで個別に図形を作成する必要がなくなるため、AutoCADとIntergraph_PDSを含む設計システム全体で、図形の作成に関する処理量(労力)の削減を実現することが可能となり、さらに、AutoCAD上で生成された3Dソリッド図形データの特性を維持することができるため、Intergraph_PDS側で干渉チェック機能を実現することが可能となる。また、レベル1→2→3と段階的にデータ変換処理を実施できるため、演算処理量を削減することができる。
【0058】
つぎに、形状表示用のデータ変換処理について説明する。図15は、3Dソリッド図形データ1を形状表示用データ4に変換するデータ変換プログラム2のフローチャートである。まず、データ変換プログラム2では、AutoCADにより作成されたすべての3Dソリッド図形データを探索し(ステップS111)、繰り返し処理で、探索されたすべての3Dソリッド図形データを、形状表示用データ4、すなわち、「(POLYLINE + PolyFaceMesh:平面+曲面)」に変換する(ステップS112,ステップS113)。
【0059】
本実施の形態においては、ステップ112に対応するデータ変換処理として、まず、受け取った3Dソリッド図形データを擬似的に分解することで、元の立体を構成する形状のすべての面(平面および曲面)を取得する(ステップS114)。なお、ここでは、平面が「リージョン」と呼ばれ、曲面が「ボディ」と呼ばれる。
【0060】
その後、データ変換プログラム2においては、すべてのリージョン(多角形平面)に対して後述するポリゴン化処理を実施し(ステップS115)、さらに、すべてのボディに対して後述するポリフェース・メッシュ化処理を実施することで(ステップS116)、受け取った3Dソリッド図形データを形状表示用データ4に変換し、最後に、元の3Dソリッド図形データをプログラム上から消去する(ステップS117)。
【0061】
図16(a)および(b)は、それぞれ図15に示す「ポリゴン化処理(ステップS115)」および「ポリフェース・メッシュ化処理(ステップS116)」の詳細を示すフローチャートである。図16(a)において、ステップS115では、まず、先にステップS114にて取得しておいたリージョンから、クローンを作成し(ステップS121)、その面から厚属性つきポリゴンを作成する(ステップS122)。
【0062】
具体的にいうと、リージョンは、複数のループで構成されている場合があるため、リージョンを構成するループ数を取得し(ステップS124)、その後、そのループ数分の厚属性つきポリゴンを作成する(ステップS125)。そして、厚属性つきポリゴンの作成後、変換の対象となる元の3Dソリッド図形データ1をプログラム上から消去する(ステップS123)。
【0063】
また、図16(b)において、ステップS116では、まず、先にステップS114にて取得しておいたボディからクローンを作成し(ステップS131)、そのボディが完全な円柱形状であるかどうかを判断する(ステップS132)。ステップS132において、たとえば、サーフェイス・タイプを取得し(ステップS137)、そのサーフェイス・タイプが円柱形状であれば(S138,円柱)、その円柱ボディから表面の円エッジを取得し(ステップS139)、つぎに完全な円柱かどうかを判断する(ステップS140)。そして、そのボディが完全な円柱であれば(ステップS140,Yes)、「厚属性つき円」を作成し(ステップS133,S134)、その後、プログラム上からクローンを消去する(ステップS136)。
【0064】
一方、サーフェイス・タイプを取得し(ステップS137)、そのサーフェイス・タイプが円柱形状でない場合(S138,円柱以外)、または、ボディが完全な円柱でない場合(ステップS140,No)には、ボディオブジェクトを探索し、「ポリフェイス・メッシュ」を作成する(ステップS135)。すなわち、ボディ上の通過点列を取得することで(ステップS141)、「ポリフェイス・メッシュ」を作成し(ステップS142)、その後、プログラム上からクローンを消去する(ステップS136)。
【0065】
このように、本実施の形態においては、AutoCADにより作成された3Dソリッド図形データを、形状表示用データ4、すなわち、「(POLYLINE + PolyFaceMesh:平面+曲面)」に変換するような場合、受け取った3Dソリッド図形データを擬似的に分解することで、元の立体を構成するすべてのリージョンおよびボディを取得し、すべてのリージョンに対して「ポリゴン化処理」を実施し、さらに、すべてのボディに対して「ポリフェース・メッシュ化処理」を実施し、これらの処理結果をデータ変換結果として出力する。
【0066】
これにより、本実施の形態においては、AutoCADおよびIntergraph_PDSで個別に図形を作成する必要がなくなるため、原動機統合システム全体で、図形の作成に関する処理量(労力)の削減を実現することが可能となり、さらに、AutoCAD上で生成された3Dソリッド図形データの特性を維持することができるため、Intergraph_PDS側でレンダリング機能および陰線処理機能を実現することが可能となる。
【0067】
なお、図17は、上記実施の形態1に示すAutoCADとして動作し、前述したデータ変換プログラム2を実行可能な一般的な計算機システムの構成を示す図である。この計算機システムでは、たとえば、図6および図10〜図16に示すデータ変換方法を実現する「データ変換プログラム2」を実行する。
【0068】
この計算機システムは、CPUを含む制御ユニット301と、メモリユニット302と、表示ユニット303と、入力ユニット304と、CD−ROMドライブユニット305と、ディスクユニット306と、を備え、これらの各ユニットは、それぞれシステムバスAを介して接続されている。また、図17において、制御ユニット301は、前記データ変換プログラムを実行する。メモリユニット302は、RAM、ROM等のメモリを含み、制御ユニット301が実行すべきプログラム、処理の過程で得られた必要なデータ等を記憶する。表示ユニット303は、CRTやLCD(液晶表示パネル)等で構成され、計算機システムの使用者に対して、各種画面を表示する。入力ユニット304は、キーボード、マウス等で構成され、計算機システムの使用者が、各種情報の入力を行うために使用される。また、図示のCD−ROM200には、図6および図10〜図16に示すデータ変換プログラム2が格納されている。
【0069】
上記のように構成される計算機システムでは、まず、CD−ROMドライブユニット305にセットされたCD−ROM200からデータ変換プログラム2がディスクユニット306にインストールされる。そして、計算機システムを立ち上げるときにディスクユニット306から読み出されたデータ変換プログラム2が、メモリユニット302に格納される。この状態で、制御ユニット301(CPU)は、メモリユニット302に格納されたデータ変換プログラムにしたがって、上記図6および図10〜図16に示す処理を実行する。
【0070】
なお、本発明においては、CD−ROM200にて上記処理を記述したプログラムを提供しているが、このプログラムの記憶媒体は、これに限定されることなく、システムを構成するコンピュータに応じて、たとえば、フロッピーディスク等の磁気ディスク、光磁気ディスク、磁気テープ等の他の記憶媒体を用いることも可能である。
【0071】
【発明の効果】
以上、説明したとおり、本発明によれば、データ互換のないCAD上で、個別に図形を作成する必要がなくなるため、AutoCADとIntergraph_PDSを含む設計システム全体において、図形の作成に関する処理量(労力)を大幅に削減することができる、という効果を奏する。また、AutoCADで作成した3Dソリッド図形データ本来の特性を維持した状態で、データ変換が可能となるため、Intergraph_PDS上で、干渉チェック処理,レンダリング処理,陰線処理を実現することができる、という効果を奏する。
【0072】
つぎの発明によれば、AutoCADおよびIntergraph_PDSで個別に図形を作成する必要がなくなるため、AutoCADとIntergraph_PDSを含む設計システム全体で、図形の作成に関する処理量(労力)の削減を実現することが可能となり、さらに、段階的にデータ変換処理を実施できるため、演算処理量を削減することができる、という効果を奏する。
【0073】
つぎの発明によれば、AutoCADおよびIntergraph_PDSで個別に図形を作成する必要がなくなるため、AutoCADとIntergraph_PDSを含む設計システム全体で、図形の作成に関する処理量(労力)の削減を実現することが可能となり、さらに、平面と曲面に分けてデータを作成するため、Intergraph_PDS側でレンダリング機能および陰線処理機能を実現できる、という効果を奏する。
【0074】
つぎの発明によれば、請求項1の発明(本発明)によれば、データ互換のないCAD上で、個別に図形を作成する必要がなくなるため、AutoCADとIntergraph_PDSを含む設計システム全体において、図形の作成に関する処理量(労力)を大幅に削減することが可能なプログラムを得ることができる、という効果を奏する。また、AutoCADで作成した3Dソリッド図形データ本来の特性を維持した状態で、データ変換が可能となるため、Intergraph_PDS上で、干渉チェック処理,レンダリング処理,陰線処理を実現することが可能なプログラムを得ることができる、という効果を奏する。
【図面の簡単な説明】
【図1】本発明にかかるデータ変換方法の全体の流れを示すフローチャートである。
【図2】本発明にかかるデータ変換方法を用いて変換/出力されたデータの流れを示す図である。
【図3】環境初期化変数の一例を示す図である。
【図4】干渉チェック機能を実現するための具体的なシステム構成を示す図である。
【図5】レンダリング機能および陰線処理機能を実現するための具体的なシステム構成を示す図である。
【図6】3Dソリッド図形データ1を干渉チェック用データ3に変換するデータ変換プログラム2のフローチャートである。
【図7】レベル_1変換が可能な3Dソリッド図形データ1の形状とレベル_1変換後の干渉チェック用データ3の形状とを示す図である。
【図8】レベル_1変換が不可かつレベル_2変換が可能な3Dソリッド図形データ1の形状とレベル_2変換後の干渉チェック用データ3の形状とを示す図である。
【図9】レベル_1変換およびレベル_2変換が不可である3Dソリッド図形データ1の形状とレベル_3変換後の干渉チェック用データ3の形状とを示す図である。
【図10】図6に示す「レベル_1変換処理(ステップS14)」の詳細を示すフローチャートである。
【図11】図6に示す「レベル_1変換処理(ステップS14)」の詳細を示すフローチャートである。
【図12】図6に示す「レベル_2変換処理(ステップS16)」の詳細を示すフローチャートである。
【図13】図6に示す「レベル_2変換処理(ステップS16)」の詳細を示すフローチャートである。
【図14】図6に示す「レベル_3変換処理(ステップS18)」の詳細を示すフローチャートである。
【図15】3Dソリッド図形データ1を形状表示用データ4に変換するデータ変換プログラム2のフローチャートである。
【図16】図15に示す「ポリゴン化処理(ステップS115)」および「ポリフェース・メッシュ化処理(ステップS116)」の詳細を示すフローチャートである。
【図17】データ変換プログラム2を実行可能な一般的な計算機システムの構成を示す図である。
【図18】従来のデータ変換方法を示す図である。
【符号の説明】
1 3Dソリッド図形データ
2 データ変換プログラム
3 干渉チェック用データ
4 形状表示用データ
5 干渉チェック用モデル
6,6a 形状表示用モデル
11,12 計算機
13 MicroStation
14 記憶部
Claims (4)
- AutoCADで作成され、記憶された全ての3Dソリッド図形データを検索し、検出された全ての3Dソリッド図形データに対する繰り返し処理で、Intergraph_PDS上で表現可能な厚さ属性つきポリゴン形式のデータを生成し、その後、変換元の3Dソリッド図形データを消去するタイプAのデータ変換処理ステップと、
前記3Dソリッド図形データを検索し、検出された全ての3Dソリッド図形データに対する繰り返し処理で、前記Intergraph_PDS上で表現可能な「ポリライン+ポリフェイスメッシュ」の形式のデータを生成し、その後、変換元の3Dソリッド図形データを消去するタイプBのデータ変換処理ステップと、
を含むことを特徴とするデータ変換方法。 - 前記タイプAのデータ変換処理ステップにあっては、
前記3Dソリッド図形データが単一の「平行掃引」形状である場合に、前記厚さ属性となる上底および下底間の距離を算出し、その後、前記厚さ属性つきポリゴン形式のデータを生成する第1の生成ステップと、
前記3Dソリッド図形データが複数の「平行掃引」形状の組み合わせである場合に、該3Dソリッド図形データを、「平行掃引」形状、かつその体積が最大、となるように切断し、切断後の形状単位に、前記厚さ属性となる上底および下底間の距離を算出し、その後、前記厚さ属性つきポリゴン形式のデータを生成する第2の生成ステップと、
前記3Dソリッド図形データが、単一の「平行掃引」形状および複数の「平行掃引」形状の組み合わせ以外である場合に、近似的なデータ変換方法を用いて、前記厚さ属性つきポリゴン形式のデータを生成する第3の生成ステップと、
を含むことを特徴とする請求項1に記載のデータ変換方法。 - 前記タイプBのデータ変換処理ステップにあっては、
前記3Dソリッド図形データにおけるすべての平面に対してポリゴン化処理を実施するポリゴン化処理ステップと、
前記3Dソリッド図形データにおけるすべての曲面に対してポリフェースメッシュ化処理を実施するポリフェースメッシュ化処理ステップと、
を含むことを特徴とする請求項1または2に記載のデータ変換方法。 - AutoCADで作成され、記憶された全ての3Dソリッド図形データを検索し、検出された全ての3Dソリッド図形データに対する繰り返し処理で、Intergraph_PDS上で表現可能な厚さ属性つきポリゴン形式のデータを生成し、その後、変換元の3Dソリッド図形データを消去するタイプAのデータ変換処理ステップと、
前記3Dソリッド図形データを検索し、検出された全ての3Dソリッド図形データに対する繰り返し処理で、前記Intergraph_PDS上で表現可能な「ポリライン+ポリフェイスメッシュ」の形式のデータを生成し、その後、変換元の3Dソリッド図形データを消去するタイプBのデータ変換処理ステップと、
を含むことを特徴とするデータ変換プログラムを記録したコンピュータ読み取り可能な記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000153078A JP3626896B2 (ja) | 2000-03-08 | 2000-05-24 | データ変換方法およびデータ変換プログラムを記録した記録媒体 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000064147 | 2000-03-08 | ||
JP2000-64147 | 2000-03-08 | ||
JP2000153078A JP3626896B2 (ja) | 2000-03-08 | 2000-05-24 | データ変換方法およびデータ変換プログラムを記録した記録媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001325304A JP2001325304A (ja) | 2001-11-22 |
JP3626896B2 true JP3626896B2 (ja) | 2005-03-09 |
Family
ID=26587056
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000153078A Expired - Fee Related JP3626896B2 (ja) | 2000-03-08 | 2000-05-24 | データ変換方法およびデータ変換プログラムを記録した記録媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3626896B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004102751A (ja) * | 2002-09-11 | 2004-04-02 | Megumi Shimokawa | 3dデータ生成システム |
JP4738067B2 (ja) | 2005-06-10 | 2011-08-03 | 株式会社東芝 | Cadデータ作成装置および方法 |
JP4568843B2 (ja) * | 2006-02-13 | 2010-10-27 | 国立大学法人北海道大学 | 解析曲面セグメンテーション装置、方法、プログラム及び記録媒体 |
-
2000
- 2000-05-24 JP JP2000153078A patent/JP3626896B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2001325304A (ja) | 2001-11-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8175734B2 (en) | Methods and system for enabling printing three-dimensional object models | |
JP6787661B2 (ja) | 工作物の機械加工のシミュレート | |
JP6196032B2 (ja) | 複数の3d曲線からの表面の生成 | |
CN101901503B (zh) | 使用光谱分析的伸展驱动的网格参数化 | |
EP1560163B1 (en) | Wrap deformation using subdivision surfaces | |
JP2009064447A (ja) | 適応的サンプル距離フィールド生成方法及びその装置 | |
JP2002352273A (ja) | 対話式にグラフィクスオブジェクトを編集するシステムおよび方法 | |
KR102620835B1 (ko) | 3D 기하 객체 정보를 이용한 CityGML 기반의 빌딩 객체 정보 생성 방법, 빌딩 객체 정보 생성 시스템, 이를 위한 컴퓨터 프로그램 | |
Lin et al. | Metamorphosis of 3d polyhedral models using progressive connectivity transformations | |
JP2002324250A (ja) | コンピュータ実現ツールを用いてグラフィクスオブジェクトを編集する方法 | |
JP2002334346A (ja) | オブジェクトのレンジデータをオブジェクトのモデルに変換する方法 | |
JP3265879B2 (ja) | 3次元直交格子データの生成装置 | |
JP2002329218A (ja) | コンピュータ実現ツールを用いてグラフィクスオブジェクトのサーフェスを編集する方法 | |
JP2002324251A (ja) | グラフィクスオブジェクトを編集する方法 | |
CN111353188A (zh) | 人造岩石结构设计和制造的自动化*** | |
JP3626896B2 (ja) | データ変換方法およびデータ変換プログラムを記録した記録媒体 | |
JP2002324252A (ja) | グラフィクスオブジェクトをモデル化する方法 | |
JP2002352270A (ja) | モデルの適応的サンプル距離フィールドを訂正する方法 | |
JP3143464B2 (ja) | 3次元モデル作成装置及び方法 | |
JP3582509B2 (ja) | 三次元地図データ処理方法、装置及びプログラム | |
Patel et al. | Stitching and filling: Creating conformal faceted geometry | |
Lin et al. | Rapid prototyping through scanned point data | |
JP7338322B2 (ja) | 三次元形状データの編集装置、及び三次元形状データの編集プログラム | |
CN112487522B (zh) | Bim模型的生成方法、装置以及计算机存储介质 | |
CN117475109B (zh) | 基于拉伸体几何切割的模型流水段划分方法、装置及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20020806 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20041206 |
|
LAPS | Cancellation because of no payment of annual fees |