(57)【要約】【課題】中間ファイル等によるデータ変換により生じた誤差を熟練作業者でなくとも短時間で容易に修正することができる３次元ＣＡＤシステムのワイヤフレームデータの修正装置を提供する。【解決手段】ワイヤフレームデータの稜線、頂点及び稜線頂点関連を記憶する（ステップＳ１）。その後、後の処理を容易にするために、円弧やスプラインは線分に変更する処理を行う（ステップＳ２）。続いて、離れた頂点は頂点マージし、僅かに交差した線分等は線分マージし、突出した部分がある線分は突出部分の削除処理等を行う（ステップＳ３〜Ｓ７）。続いて、境界線分により囲まれた面の平面化処理を行うことで面の歪みを取り除く（ステップＳ８）。最後に、面貼りした３次元形状にフィレット生成を行って円弧復元処理を行う（ステップＳ１０）。【選択図】図１
2004258859.tif 000002
【特許請求の範囲】
【請求項１】
境界線分と、複数の該境界線分の端点が集合する集合頂点と、該境界線分と該集合頂点との関連付けを示す線分頂点関連情報とからなるワイヤフレームデータを記憶するデータ記憶手段と、
前記集合頂点を端点とする２つの前記境界線分を含む平面を前記集合頂点毎に対応付けられた頂点対応平面を生成する頂点対応平面生成手段と、
それぞれの前記頂点対応平面の傾き及び前記頂点対応平面間の距離が所定の平面マージ用トレランス内に含まれる複数の前記頂点対応平面を一の平面にマージしたマージ平面を生成するマージ平面生成手段と、
前記データ記憶手段に記憶された前記集合頂点のうち前記マージ平面上に位置しない前記集合頂点を前記マージ平面上に投影した位置に変更する集合頂点位置変更手段と、
変更された前記集合頂点及び前記線分頂点関連情報に基づき前記境界線分を再定義する境界線分再定義手段と、を備えたことを特徴とする３次元ＣＡＤシステムのワイヤフレームデータ修正装置。
【請求項２】
さらに、前記ワイヤフレームデータとして境界円弧を含む場合に、該境界円弧を該境界円弧の端点と該境界円弧の各端点における接線の交点とを結ぶ線分に変更する円弧−線分変更手段と、
前記境界円弧が変更された前記線分を前記境界線分として前記データ記憶手段に記憶する変更線分記憶手段と、を備えたことを特徴とする請求項１記載の３次元ＣＡＤシステムのワイヤフレームデータ修正装置。
【請求項３】
さらに、前記ワイヤフレームデータとして境界スプラインを含む場合に該境界スプラインを分割した分割スプラインを生成する分割スプライン生成手段と、
前記分割スプラインの曲率を算出する分割スプライン曲率算出手段と、
前記曲率が所定の線分近似用曲率閾値より大きい場合には前記分割スプラインの両端点を結ぶ線分に変更するスプライン−線分変更手段と、
前記曲率が所定の線分近似用曲率閾値以下の場合には前記分割スプラインを前記分割スプラインの端点と前記分割スプラインの各端点における接線の交点とを結ぶ線分に変更するスプライン−円弧−線分変更手段と、
前記分割スプラインが変更された前記線分を前記境界線分として前記データ記憶手段に記憶する変更線分記憶手段と、
を備えたことを特徴とする請求項１記載の３次元ＣＡＤシステムのワイヤフレームデータ修正装置。
【請求項４】
さらに、前記ワイヤフレームデータの第１境界線分の端点である第１頂点と第２境界線分の端点である第２頂点とが離れている場合に前記第１頂点を中心とした所定の頂点マージ用トレランス内に前記第２頂点が位置するか否かを判定する頂点位置判定手段と、
前記第２頂点が前記頂点マージ用トレランス内に位置する場合には第２頂点を第１頂点にマージしたマージ頂点を生成するマージ頂点生成手段と、
前記マージ頂点を前記集合頂点として前記データ記憶手段に記憶する集合頂点記憶手段と、を備えたことを特徴とする請求項１記載の３次元ＣＡＤシステムのワイヤフレームデータ修正装置。
【請求項５】
さらに、前記ワイヤフレームデータの第１境界線分と第２境界線分との間の距離が所定の線分マージ用トレランス内に含まれる場合に前記第１境界線分と前記第２境界線分とをマージしたマージ境界線分を生成するマージ線分生成手段と、
前記マージ線分を前記境界線分として前記データ記憶手段に記憶する境界線分記憶手段と、を備えたことを特徴とする請求項１記載の３次元ＣＡＤシステムのワイヤフレームデータ修正装置。
【請求項６】
さらに、前記ワイヤフレームデータの第１境界線分と第２境界線分とが交差すると共に該第２境界線分の端点が前記集合頂点でない場合に該第２境界線分は突出線分であると判定する突出線分判定手段と、
前記第２境界線分のうち前記第１境界線分との交点から前記第２境界線分の端点までの部分である突出部分を削除した突出部分削除線分を生成する突出部分削除線分生成手段と、
前記突出部分削除線分を前記第２境界線分として前記データ記憶手段に記憶する削除境界線分記憶手段と、を備えたことを特徴とする請求項１記載の３次元ＣＡＤシステムのワイヤフレームデータ修正装置。
【請求項７】
さらに、第１境界線分の端点が第２境界線分上に位置する場合に前記第２境界線分を前記第１境界線分の端点にて分断して２つの第２境界線分を生成する境界線分分断手段と、
分断された２つの第２境界線分をそれぞれ前記データ記憶手段の前記境界線分として記憶すると共に分断された２つの第２境界線分の分断点を前記データ記憶手段の前記集合端点として記憶する分断データ記憶手段と、を備えたことを特徴とする請求項１記載の３次元ＣＡＤシステムのワイヤフレームデータ修正装置。
【請求項８】
さらに、前記境界線分再定義手段により再定義された前記境界線分の長さを拘束する又は前記境界線分間の距離及び角度を拘束する寸法拘束と、前記境界線分どうしの相互関係を平行・垂直・接線・直交・中点・一致・同長などの幾何的に拘束する幾何拘束とからなる拘束条件定義する拘束条件定義手段と、
前記拘束条件に基づき前記境界線分及び前記集合頂点の位置を変更する拘束変更手段と、を備えたことを特徴とする請求項１記載の３次元ＣＡＤシステムのワイヤフレームデータ修正装置。
【請求項９】
境界線分と、複数の該境界線分の端点が集合する集合頂点と、該境界線分と該集合頂点との関連付けを示す線分頂点関連情報とからなるワイヤフレームデータを記憶するデータ記憶手段と、
前記集合頂点を端点とする２つの前記境界線分を含む平面を前記集合頂点毎に対応付けられた頂点対応平面を生成する頂点対応平面生成手段と、
それぞれの前記頂点対応平面の傾き及び前記頂点対応平面間の距離が所定の平面マージ用トレランス内に含まれる複数の前記頂点対応平面を一の平面にマージしたマージ平面を生成するマージ平面生成手段と、
前記データ記憶手段に記憶された前記集合頂点のうち前記マージ平面上に位置しない前記集合頂点を前記マージ平面上に投影した位置に変更する集合頂点位置変更手段と、
変更された前記集合頂点及び前記線分頂点関連情報に基づき前記境界線分を再定義する境界線分再定義手段と、をコンピュータにて実行させることを特徴とする３次元ＣＡＤシステムのワイヤフレームデータ修正装置の制御用プログラム。
【請求項１０】
境界線分と、複数の該境界線分の端点が集合する集合頂点と、該境界線分と該集合頂点との関連付けを示す線分頂点関連情報とからなるワイヤフレームデータを記憶するデータ記憶手段と、
前記集合頂点を端点とする２つの前記境界線分を含む平面を前記集合頂点毎に対応付けられた頂点対応平面を生成する頂点対応平面生成手段と、
それぞれの前記頂点対応平面の傾き及び前記頂点対応平面間の距離が所定の平面マージ用トレランス内に含まれる複数の前記頂点対応平面を一の平面にマージしたマージ平面を生成するマージ平面生成手段と、
前記データ記憶手段に記憶された前記集合頂点のうち前記マージ平面上に位置しない前記集合頂点を前記マージ平面上に投影した位置に変更する集合頂点位置変更手段と、
変更された前記集合頂点及び前記線分頂点関連情報に基づき前記境界線分を再定義する境界線分再定義手段と、をコンピュータにて実行させることを特徴とする３次元ＣＡＤシステムのワイヤフレームデータ修正装置の制御用プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項１１】
境界線分と、複数の該境界線分の端点が集合する集合頂点と、該境界線分と該集合頂点との関連付けを示す線分頂点関連情報とからなるワイヤフレームデータを記憶するデータ記憶ステップと、
前記集合頂点を端点とする２つの前記境界線分を含む平面を前記集合頂点毎に対応付けられた頂点対応平面を生成する頂点対応平面生成ステップと、
それぞれの前記頂点対応平面の傾き及び前記頂点対応平面間の距離が所定の平面マージ用トレランス内に含まれる複数の前記頂点対応平面を一の平面にマージしたマージ平面を生成するマージ平面生成ステップと、
前記データ記憶手段に記憶された前記集合頂点のうち前記マージ平面上に位置しない前記集合頂点を前記マージ平面上に投影した位置に変更する集合頂点位置変更ステップと、
変更された前記集合頂点及び前記線分頂点関連情報に基づき前記境界線分を再定義する境界線分再定義ステップと、からなることを特徴とする３次元ＣＡＤシステムのワイヤフレームデータ修正方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、３次元ＣＡＤシステムのワイヤフレームデータの修正装置、３次元ＣＡＤシステムのワイヤフレームデータ修正装置の制御用プログラム、そのプログラムを記録したコンピュータ読み取り可能な記録媒体、及び３次元ＣＡＤシステムのワイヤフレームデータ修正方法に関するものである。
【０００２】
【従来の技術】
近年、設計者が使用するＣＡＤ（Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｄｅｓｉｇｎ）は、２次元から３次元へと変換されつつある。また、３次元ＣＡＤといっても、様々な種類のものが使用されている。また、企業間では、３次元ＣＡＤにより作成したＣＡＤデータを直接受け渡すことにより、開発期間及び製造納期の短縮を図ると共にコスト削減を実現している。
【０００３】
しかし、各企業間で異種の３次元ＣＡＤを使用している場合には、データ受け渡しの際、中間ファイル（ＩＧＥＳ、ＳＴＥＰ、Ｐａｒａｓｏｌｉｄ、ＳＴＬ等）に変換する必要がある。すなわち、受け取った３次元ＣＡＤデータを中間ファイルに変換した後、その中間ファイルを異種の３次元ＣＡＤデータに変換している。ところが、データの変換を繰り返すことにより、各３次元ＣＡＤが有する精度の違い等により、３次元形状の面の歪みや境界線分の端点の離れを生じることがある。このような面の歪みや境界線分の端点の離れにより生じた誤差は修正しなければ、例えばＣＡＭ（Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｍａｎｕｆａｃｔｕｒｉｎｇ）等による使用ができない。しかし、誤差の修正は、複雑で困難であるため、熟練した作業者によらなければ出来ないことに加えて、多くの時間を要していた。このように誤差の修正作業は、費用及び時間の大きなロスとなる。
【０００４】
そこで、このような問題に対して、特開２０００−２３１５８０号公報に開示されている。これは、ソリッドモデルの頂点部、境界曲線と曲面との間で隙間がある場合に、その隙間を埋めるように修正している。
【０００５】
【特許文献１】
特開２０００−２３１５８０号公報
【０００６】
【発明が解決しようとする課題】
しかし、特開２０００−２３１５８０号公報に開示された技術は、隙間を埋めるのみである。従って、例えば、面の歪み等が生じる場合には解決されない。ここで、面の歪みについて説明する。例えば、ある面が４角形、すなわち４つの頂点とこれらの頂点を結ぶ４つの境界線分とからなり、平面からなる面を考える。
この４角形の平面は、本来的には４つの頂点が同一平面上に位置するはずであるが、データ変換により頂点の位置がずれることにより、同一平面上に位置しないことになる。つまり、頂点と境界線分から形成される面は歪んでいることになる。
【０００７】
本発明は、このような事情に鑑みて為されたものであり、中間ファイル等によるデータ変換により生じた誤差を熟練作業者でなくとも短時間で容易に修正することができる３次元ＣＡＤシステムのワイヤフレームデータの修正装置を提供することを目的とする。
【０００８】
【課題を解決するための手段及び発明の効果】
本発明の３次元ＣＡＤシステムのワイヤフレームデータ修正装置は、データ記憶手段と、頂点対応平面生成手段と、マージ平面生成手段と、集合頂点位置変更手段と、境界線分再定義手段と備えたことを特徴とする。データ記憶手段は、境界線分と、複数の該境界線分の端点が集合する集合頂点と、該境界線分と該集合頂点との関連付けを示す線分頂点関連情報とからなるワイヤフレームデータを記憶する手段である。なお、集合頂点とは、複数の境界線分の端点が完全に一致している場合はもちろん、複数の境界線分の端点が所定許容範囲内に位置する場合に一致しているとみなす場合を含む。線分頂点関連情報とは、例えば、どの集合頂点がどの境界線分の端点であるか等に情報である。
【０００９】
頂点対応平面生成手段は、前記集合頂点を端点とする２つの前記境界線分を含む平面を前記集合頂点毎に対応付けられた頂点対応平面を生成する手段である。
例えば、ある集合頂点が３つの境界線分の端点を共有している場合には、その集合頂点に３つの頂点対応平面が生成される。また、例えば、４角形の平面の場合には、集合頂点が４つ存在するので、４つの頂点対応平面が生成される。
【００１０】
マージ平面生成手段は、それぞれの前記頂点対応平面の傾き及び前記頂点対応平面間の距離が所定の平面マージ用トレランス内に含まれる複数の前記頂点対応平面を一の平面にマージしたマージ平面を生成する手段である。ここで、頂点対応平面間の距離とは、基準となる頂点対応平面を生成した集合頂点から他の頂点対応平面までの距離を意味する。両平面が平行な場合はその平面間の距離がそのまま前記頂点対応平面間の距離となり、両平面が平行でない場合は基準平面の集合頂点と他の平面との距離となる。例えば、４角形の平面の場合は、本来的には、４つの頂点対応平面が一致するはずであるが、誤差によりずれが生じる場合がある。そして、これらの４つの頂点対応平面の傾き及び頂点対応平面間の距離は、非常に近接していると考えられる。従って、これらの４つの頂点対応平面の傾き及び距離は、所定の平面マージ用トレランス内に含まれると考えられる。この場合に、これらの４つの頂点対応平面を一つの平面にマージする。
【００１１】
集合頂点位置変更手段は、前記データ記憶手段に記憶された前記集合頂点のうち前記マージ平面上に位置しない前記集合頂点を前記マージ平面上に投影した位置に変更する手段である。集合頂点がマージ平面上に位置する場合は、その集合頂点をそのまま使用する。しかし、集合頂点がマージ平面上に位置しない場合には、マージ平面上に投影（移動）する。
【００１２】
境界線分再定義手段は、変更された前記集合頂点及び前記線分頂点関連情報に基づき前記境界線分を再定義する手段である。変更された集合頂点とは、マージ平面上に位置する集合頂点である。そして、線分頂点関連情報は、上述したように、境界線分と集合頂点との関連付けを示す情報である。従って、集合頂点が集合頂点位置変更手段により移動された時点においては、境界線分の端点と集合頂点が一致していない。そこで、境界線分再定義手段により、変更された集合頂点を端点とする境界線分を再定義することとしている。
【００１３】
本発明によれば、データ変換等により平面の歪みが生じている場合であっても、歪みのない平面に修正することができる。つまり、ＣＡＭ等により使用することができるデータにすることができる。なお、ワイヤフレームデータを使用することにより、全ての３次元ＣＡＤシステムにより修正することができる。そして、本発明の修正は、自動的に行うことができるため、熟練した作業者でなくとも可能となり、さらに短時間で行うことができ低コスト化を図ることができる。
【００１４】
また、３次元ＣＡＤシステムのワイヤフレームデータ修正装置は、さらに、円弧−線分変更手段と、変更線分記憶手段とを備えるようにしてもよい。円弧−線分変更手段は、前記ワイヤフレームデータとして境界円弧を含む場合に、該境界円弧を該境界円弧の端点と該境界円弧の各端点における接線の交点とを結ぶ線分に変更する手段である。変更線分記憶手段は、前記境界円弧が変更された前記線分を前記境界線分として前記データ記憶手段に記憶する手段である。一般に、３次元形状は、直線のみならず曲線を含んでいることが多い。すなわち、ワイヤフレームデータとして境界円弧を有する場合がある。この場合、境界円弧を円弧そのままの状態で上述の修正を行うことは非常に困難であるので、まず線分に変換している。この変換は、境界円弧の各端点から接線を引き、その接線の交点とそれぞれの端点とを結ぶ線分を境界線分としている。つまり、境界円弧が２つの境界線分に変換される。これにより、境界円弧を境界線分とすることにより、修正が容易に行うことができる。さらに、境界円弧は、コーナーにフィレットを作成して出来たものが多い。このような作成手順からも、線分のみにより３次元形状を作成して面を張った後にフィレットを作成するなどした方がより作成しやすくなる。なお、円弧−線分変更手段は、境界円弧の中心角が１８０度未満の場合に適用する。
【００１５】
また、３次元ＣＡＤシステムのワイヤフレームデータ修正装置は、さらに、分割スプライン生成手段と、分割スプライン曲率算出手段と、スプライン−線分変更手段と、スプライン−円弧−線分変更手段と、変更線分記憶手段とを備えるようにしてもよい。分割スプライン生成手段は、前記ワイヤフレームデータとして境界スプラインを含む場合に該境界スプラインを分割した分割スプラインを生成する手段である。分割スプライン曲率算出手段は、前記分割スプラインの曲率を算出する手段である。スプライン−線分変更手段は、前記曲率が所定の線分近似用曲率閾値より大きい場合には前記分割スプラインの両端点を結ぶ線分に変更する手段である。スプライン−円弧−線分変更手段は、前記曲率が所定の線分近似用曲率閾値以下の場合には前記分割スプラインを前記分割スプラインの端点と前記分割スプラインの各端点における接線の交点とを結ぶ線分に変更する手段である。変更線分記憶手段は、前記分割スプラインが変更された前記線分を前記境界線分として前記データ記憶手段に記憶する手段である。
【００１６】
上述したように、３次元形状は、一般に直線のみならず曲線を含んでいることが多い。すなわち、ワイヤフレームデータとして境界スプラインを有する場合がある。この場合、境界スプラインをスプラインそのままの状態で、上述の修正を行うことは非常に困難であるので、線分に変換している。この変換は、まず、直接的に線分に変換する場合と、一旦円弧に変換した後に線分に変換する場合とがある。これにより、境界スプラインを境界線分とすることにより、修正が容易に行うことができる。さらに、境界スプラインは、通常、最初からスプラインとして作成したものではなく、複数の連続したフィレットを作成して出来たものや、本来は直線や円弧であったものがデータ変換によりスプラインとなったものが多い。このことからも、線分のみにより３次元形状を作成して面を張った後にフィレットを作成するなどした方がより作成しやすくなる。また、本来は直線であったものは、直線として正確に修正できる。
【００１７】
また、３次元ＣＡＤシステムのワイヤフレームデータ修正装置は、さらに、頂点位置判定手段と、マージ頂点生成手段と、集合頂点記憶手段とを備えるようにしてもよい。頂点位置判定手段は、前記ワイヤフレームデータの第１境界線分の端点である第１頂点と第２境界線分の端点である第２頂点とが離れている場合に前記第１頂点を中心とした所定の頂点マージ用トレランス内に前記第２頂点が位置するか否かを判定する手段である。マージ頂点生成手段は、前記第２頂点が前記頂点マージ用トレランス内に位置する場合には第２頂点を第１頂点にマージしたマージ頂点を生成する手段である。集合頂点記憶手段は、前記マージ頂点を前記集合頂点として前記データ記憶手段に記憶する手段である。これにより、離れている端点をマージすることにより、上述した面歪みの修正を行うことができる。
【００１８】
また、３次元ＣＡＤシステムのワイヤフレームデータ修正装置は、さらに、マージ線分生成手段と、境界線分記憶手段とを備えるようにしてもよい。マージ線分生成手段は、前記ワイヤフレームデータの第１境界線分と第２境界線分との間の距離が所定の線分マージ用トレランス内に含まれる場合に前記第１境界線分と前記第２境界線分とをマージしたマージ境界線分を生成する手段である。境界線分記憶手段は、前記マージ線分を前記境界線分として前記データ記憶手段に記憶する手段である。例えば、２つの境界線分が、平行に僅かにずれている場合、重複している場合、僅かに交差している場合や、僅かに捻れている場合、途中が僅かに離れている場合等に、これらを一つの境界線分にする。これらの場合は、データ変換により誤差を生じたものと考えられる。そして、このままでは、ワイヤフレームデータに面を張ることができない。もちろん、上述した面歪みの修正もできない。そこで、所定の境界線分をマージすることにより、上述した面歪みの修正を行うことができる。なお、第１境界線分と第２境界線分との間の距離とは、例えば、基準とする第１境界線分と第２境界線分上の点との距離を意味する。
【００１９】
また、３次元ＣＡＤシステムのワイヤフレームデータ修正装置は、さらに、突出線分判定手段と、突出部分削除線分生成手段と、削除境界線分記憶手段とを備えるようにしてもよい。突出線分判定手段は、前記ワイヤフレームデータの第１境界線分と第２境界線分とが交差すると共に該第２境界線分の端点が前記集合頂点でない場合に該第２境界線分は突出線分であると判定する手段である。突出部分削除線分生成手段は、前記第２境界線分のうち前記第１境界線分との交点から前記第２境界線分の端点までの部分である突出部分を削除した突出部分削除線分を生成する手段である。削除境界線分記憶手段は、前記突出部分削除線分を前記第２境界線分として前記データ記憶手段に記憶する手段である。ここで、前記突出線分は不要なものである。そして、面歪み修正を行うための集合頂点は、複数の境界線分の端点が集合する頂点であるため、単独に境界線分の端点が存在する場合は、上述した面歪み修正を行うことができない。そこで、この突出部分を削除することにより、上述した面歪み修正を行うことができる。
【００２０】
また、３次元ＣＡＤシステムのワイヤフレームデータ修正装置は、さらに、境界線分分断手段と、分断データ記憶手段とを備えるようにしてもよい。境界線分分断手段は、第１境界線分の端点が第２境界線分上に位置する場合に前記第２境界線分を前記第１境界線分の端点にて分断して２つの第２境界線分を生成する手段である。分断データ記憶手段は、分断された２つの第２境界線分をそれぞれ前記データ記憶手段の前記境界線分として記憶すると共に分断された２つの第２境界線分の分断点を前記データ記憶手段の前記集合端点として記憶する手段である。３次元ＣＡＤシステムによっては、平面が境界線分及び集合頂点により閉じた形状でなければ、ワイヤフレームデータに面貼りを行なうことができない場合がある。例えば、一の平面のある境界線分の一部分が隣接する他の平面の境界線分となっている場合が該当する。つまり、他の平面は、頂点の一部が集合頂点となっていない。そこで、境界線分分断手段により、境界線分を分断して、平面が境界線分及び集合頂点により閉じた形状とすることにより、上述した面歪み修正を行うことができる。
【００２１】
また、３次元ＣＡＤシステムのワイヤフレームデータ修正装置は、さらに、拘束条件定義手段と、拘束変更手段とを備えるようにしてもよい。拘束条件定義手段は、前記境界線分再定義手段により再定義された前記境界線分の長さを拘束する又は前記境界線分間の距離及び角度を拘束する寸法拘束と、前記境界線分どうしの相互関係を平行・垂直・接線・直交・中点・一致・同長などの幾何的に拘束する幾何拘束からなる拘束条件を定義する手段である。拘束変更手段は、前記拘束条件に基づき前記境界線分及び前記集合頂点の位置を変更する手段である。これにより、設計者の意図した３次元形状に近づけることができる。さらに、上述の処理により、集合頂点及び境界線分の位置は、僅かであるが本来設計者が意図した位置からずれる可能性がある。そこで、拘束条件に基づき拘束変更することで、より正確な集合頂点及び境界線分の位置とすることができる。
【００２２】
これまでは、本発明を装置と考えた場合について説明してきたが、本発明は装置に限られるものではない。すなわち、同様の機能を実現させることができる限り、コンピュータにて実行させるプログラムでも良いし、さらには、そのプログラムを記録したコンピュータ読み取り可能な記録媒体であっても良いし、ワイヤフレームデータ修正方法でも良い。
【００２３】
本発明の３次元ＣＡＤシステムのワイヤフレームデータ修正装置の制御用プログラムは、データ記憶手段と、頂点対応平面生成手段と、マージ平面生成手段と、集合頂点位置変更手段と、境界線分再定義手段とをコンピュータにて実行させることを特徴とする。ここで、各手段は、上述したものと同様である。なお、ワイヤフレームデータ修正装置における他の特徴部分については、ワイヤフレームデータ修正装置の各手段をコンピュータにて実行させる制御用プログラムとして実現することができる。
【００２４】
本発明の３次元ＣＡＤシステムのワイヤフレームデータ修正装置の制御用プログラムを記録したコンピュータ読み取り可能な記録媒体は、データ記憶手段と、頂点対応平面生成手段と、マージ平面生成手段と、集合頂点位置変更手段と、境界線分再定義手段とをコンピュータにて実行させることを特徴とする。ここで、各手段は、上述したものと同様である。なお、ワイヤフレームデータ修正装置における他の特徴部分については、ワイヤフレームデータ修正装置の各手段をコンピュータにて実行させる制御用プログラムを記録したコンピュータ読取り可能な記録媒体として実現することができる。
【００２５】
本発明の３次元ＣＡＤシステムのワイヤフレームデータ修正方法は、データ記憶ステップと、頂点対応平面生成ステップと、マージ平面生成ステップと、集合頂点位置変更ステップと、境界線分再定義ステップとからなることを特徴とする。ここで、データ記憶ステップは、境界線分と、複数の該境界線分の端点が集合する集合頂点と、該境界線分と該集合頂点との関連付けを示す線分頂点関連情報とからなるワイヤフレームデータを記憶するステップである。頂点対応平面生成ステップは、前記集合頂点を端点とする２つの前記境界線分を含む平面を前記集合頂点毎に対応付けられた頂点対応平面を生成するステップである。マージ平面生成ステップは、それぞれの前記頂点対応平面の傾き及び前記頂点対応平面間の距離が所定の平面マージ用トレランス内に含まれる複数の前記頂点対応平面を一の平面にマージしたマージ平面を生成するステップである。集合頂点位置変更ステップは、前記データ記憶手段に記憶された前記集合頂点のうち前記マージ平面上に位置しない前記集合頂点を前記マージ平面上に投影した位置に変更するステップである。境界線分再定義ステップは、変更された前記集合頂点及び前記線分頂点関連情報に基づき前記境界線分を再定義するステップである。なお、ワイヤフレームデータ修正装置における他の特徴部分については、ワイヤフレームデータ修正装置の各手段をステップに置換えてワイヤフレームデータ修正方法として実現することができる。
【００２６】
【発明の実施の形態】
次に、実施形態を挙げ、本発明をより詳しく説明する。本実施形態においては、３次元ＣＡＤシステムのワイヤフレームデータ修正装置の制御用プログラムについて説明する。一般に、異種の３次元ＣＡＤシステム間でデータの受け渡しを行うには、まず、受け取った３次元ＣＡＤデータを中間ファイルに変換し、その中間ファイルを異種の３次元ＣＡＤデータに変換する必要がある。この場合、変換した３次元ＣＡＤデータは、面の歪みや境界線分の端点の離れ等が生じている。ここで、以下に示す本実施形態の処理は、変換された３次元ＣＡＤデータの修正処理を示すものである。特に、３次元ＣＡＤシステムのワイヤフレームデータの修正処理である。
【００２７】
図１に、制御用プログラムの基本処理のフローチャートを示す。まず、変換された３次元ＣＡＤシステムのワイヤフレームデータ（以下、「ワイヤフレームデータ」という）が入力される。そして、入力されたワイヤフレームデータの稜線、頂点、及び稜線頂点関連情報を記憶する（データ記憶手段）（ステップＳ１）。稜線とは、線分、円弧、スプライン等の形状及び位置からなるデータである。
頂点とは、稜線の端点の位置データである。稜線頂点関連情報とは、稜線と頂点との関連付けを示す情報である。例えば、どの頂点がどの稜線の端点であるかの情報である。
【００２８】
続いて、記憶された稜線のうち、円弧及びスプラインを線分に変更する（線分変更手段）（ステップＳ２）。線分変更処理により、全ての稜線が線分に変更されて後の処理が行い易くなる。この線分変更処理について図２を参照して説明する。選択された稜線が直線であるか否かを判定する（ステップＳ１１）。この稜線が直線であれば、処理は終了し、次の稜線について線分変更処理を繰り返す。
一方、選択された稜線が直線でない場合は、さらに選択された稜線が円弧であるか否かを判定する（ステップＳ１２）。そして、選択された稜線が円弧である場合には、「円弧−線分変更処理」を行う（円弧−線分変更手段）（ステップＳ１３）。この円弧−線分変更処理により、選択された境界円弧からなる稜線を境界線分に変更する。円弧−線分変更処理についの詳細は後述する。そして、円弧−線分変更処理の後は、次の稜線について線分変更処理を繰り返す。
【００２９】
一方、選択された稜線が円弧でない場合は、選択された稜線はスプラインとなる。この場合、選択された境界スプラインである稜線に基づき、分割スプラインを生成する（分割スプライン生成手段）（ステップＳ１４）。分割スプラインとは、選択された境界スプラインを複数に分割された際に生成される稜線である。
続いて、分割スプラインが直線近似されるか否かを判定する（ステップＳ１５）。具体的には、分割スプラインの曲率が、予め設定された線分近似用曲率閾値より大きいか否かを判定する。なお、分割スプラインの曲率は、分割スプライン毎に曲率を算出しておく（分割スプライン曲率算出手段）。そして、分割スプラインが、直線近似の場合、すなわち、分割スプラインの曲率が線分近似用曲率閾値より大きい場合には、「スプライン−線分変更処理」を行う（スプライン−線分変更手段）（ステップＳ１６）。スプライン−線分変更処理により、選択された分割スプラインを境界線分に変更する。スプライン−線分変更処理にの詳細については後述する。
【００３０】
一方、分割スプラインが、直線近似できない場合、すなわち、分割スプラインの曲率が線分近似用曲率閾値以下の場合には、「スプライン−円弧変更処理」を行う（スプライン−円弧変更手段）（ステップＳ１７）。スプライン−円弧変更処理により、選択された分割スプラインを境界円弧に変更する。スプライン−円弧変更処理にの詳細については後述する。続いて、スプライン−円弧変更処理の後は、円弧−線分変更処理を行う（円弧−線分変更手段）（ステップＳ１８）。
この円弧−線分変更処理は、上述と同様である。なお、分割スプラインから円弧に変換した後に線分に変更する処理を「スプライン−円弧−線分変更処理」という。
【００３１】
続いて、「スプライン−線分変更処理」又は「円弧−線分処理」の後は、分割スプライン全てについて線分変更処理が終了したか否かを判定する（ステップＳ１９）。全ての分割スプラインについて線分変更処理が終了していない場合は、ステップＳ１５に戻り、処理を繰り返す。一方、全ての分割スプラインについて線分変更処理が終了した場合には、次の稜線について線分変更処理を繰り返す。
【００３２】
次に、「円弧−線分変更処理」について図３を参照して説明する。円弧−線分変更処理は、まず、図３に示すように、境界円弧の両端点における接線の交点を算出する（接線交点算出手段）。続いて、境界円弧の両端点と接線の交点とをそれぞれ結ぶ線分を算出する（接線線分算出手段）。続いて、元の境界円弧の半径を記憶しておく（円弧半径記憶手段）。続いて、元の境界円弧を削除する（円弧削除手段）。続いて、算出された２つの線分を境界線分として記憶し、その境界線分の端点を頂点として記憶する（データ記憶手段）。
【００３３】
「分割スプライン−線分変更処理」は、まず、分割スプラインの端点を算出する（分割スプライン端点算出手段）。続いて、算出された両端点を結ぶ線分を算出する（スプライン線分算出手段）。続いて、元の分割スプラインを削除する（分割スプライン削除手段）。続いて、算出された線分を境界線分として記憶し、その線分の端点を頂点として記憶する（データ記憶手段）。
【００３４】
「分割スプライン−円弧変更処理」は、まず、分割スプラインの端点を算出する（分割スプライン端点算出手段）。続いて、分割スプラインの曲率の平均値を算出する（分割スプライン平均曲率算出手段）。続いて、両端点と平均曲率とに基づき、境界円弧を算出する（円弧算出手段）。続いて、元の分割スプラインを削除する（分割スプライン削除手段）。続いて、算出された円弧を境界円弧として記憶し、その境界円弧の端点を頂点として記憶する（データ記憶手段）。
【００３５】
次に、図１のフローチャートに戻り説明する。線分変更処理の後には、頂点マージ処理を行う（ステップＳ３）。頂点マージ処理とは、ＣＡＤデータの変換により稜線の端点が離れている場合に、これらの端点をくっつける処理である。ＣＡＤデータの変換により、本来は、くっついていた端点が離れることがあるので、これを修正するものである。ここで、頂点マージ処理については、図４及び図５を参照して説明する。なお、図５は、変更前状態と変更後状態を示す。
【００３６】
まず、第１頂点Ｐ１及び第２頂点Ｐ２を決定する（ステップＳ２１、Ｓ２２）。この第１頂点及び第２頂点は、任意に選択される。続いて、第１頂点Ｐ１と第２頂点Ｐ２が離れているか否かを判定する（頂点位置判定手段）（ステップＳ２３）。すなわち、両頂点が一致している場合は、当然に両頂点は離れていないと判断される。そして、両頂点が離れている場合であっても、離間距離が３次元ＣＡＤシステムが有する許容誤差範囲内であれば、両頂点は一致していると判断される。しかし、両頂点の離間距離が３次元ＣＡＤシステムが有する許容誤差範囲外である場合は、両頂点は離れていると判断される。そして、両頂点が離れていないと判断された場合には、次の頂点について頂点マージ処理を繰り返す。
【００３７】
一方、第１頂点Ｐ１と第２頂点Ｐ２が離れていると判断された場合には、さらに、第１頂点Ｐ１と第２頂点Ｐ２との頂点間距離が予め設定された許容値（頂点マージ用トレランス）を半径とする球Ｃの中に位置するか否かを判定する（頂点位置判定手段）（ステップＳ２４）。そして、頂点間距離が許容値内でない場合には、次の頂点について頂点マージ処理を繰り返す。
【００３８】
一方、頂点間距離が許容値内である場合には、マージ頂点の生成処理を行う（マージ頂点生成手段）（ステップＳ２５）。マージ頂点生成処理は、第２頂点Ｐ２を第１頂点Ｐ１にマージする処理である。すなわち、第２頂点Ｐ２は、第１頂点Ｐ１と一致する。そして、変更された第２頂点Ｐ２を記憶する（集合頂点記憶手段）。そして、図５の変更後状態に示すように、第２頂点Ｐ２が変更されたとき、第２頂点Ｐ２を端点とする線分も第２頂点Ｐ２の変更に伴い変更される。そして、マージ頂点が生成された後は、次の頂点について頂点マージ処理を繰り返す。ここで、頂点のうち、複数の境界線分の端点が集合する頂点を集合頂点という。つまり、頂点マージ処理は、集合頂点の生成処理ということになる。
【００３９】
次に、図１のフローチャートに戻り説明する。頂点マージ処理の後には、線分マージ処理を行う（ステップＳ４）。図７に示すように、ＣＡＤデータの変換により、２つの境界線分が、平行に僅かにずれている場合や、重複している場合や、途中が僅かに離れている場合や、僅かに交差している場合や、僅かに捻れている場合等が発生する。そこで、線分マージ処理により、これらの境界線分を一体化する処理を行う。ここで、線分マージ処理については、図６及び図７を参照して説明する。なお、図７は、変更前状態と変更後状態を示す。
【００４０】
まず、第１線分Ｌ１及び第２線分Ｌ２を決定する（ステップＳ３１、Ｓ３２）。この第１線分Ｌ１及び第２線分Ｌ２は、任意に選択される。続いて、第１線分Ｌ１と第２線分Ｌ２との距離が予め記憶された線分マージ用トレランス内あるか否かを判定する（マージ線分生成手段）（ステップＳ３３）。ここで、第１線分Ｌ１と第２線分Ｌ２との距離とは、例えば、第２線分Ｌ２上の複数の点と第１線分Ｌ１との距離である。そして、両線分の距離が線分マージ用トレランス内でない場合には、次の線分について線分マージ処理を繰り返す。
【００４１】
一方、両線分の傾きが線分マージ用傾きトレランス内である場合には、マージ線分生成処理を行う（ステップＳ３４）。つまり、第１線分Ｌ１と第２線分Ｌ２とが図７の変更前状態に示す種々の状態の場合、一本の線分に変更される。この変更後の境界線分は、第１線分の傾きと一致させる。そして、変更された境界線分を記憶する（境界線分記憶手段）。なお、第１線分の間に第２線分が位置する場合は、元の第１線分がそのまま記憶される。第１線分が第２線分を含む位置関係にない場合（図７の変更前状態の中央）には、最も離れた端点から第１線分に投影した端点が変更後の境界線分の端点となる。このとき、境界線分の変更に伴い、その端点からなる集合頂点が変更される。そして、マージ線分が生成された後は、次の線分について線分マージ処理を繰り返す。
【００４２】
次に、図１のフローチャートに戻り説明する。線分マージ処理の後には、突出線分削除処理を行う（ステップＳ５）。図９に示すように、ＣＡＤデータの変換により、集合頂点がずれて線分の一部が突出している場合が生じる。この突出部分は不要な部分である。そこで、突出線分削除処理により、この突出部分を削除する処理を行う。ここで、突出線分削除処理については、図８及び図９を参照して説明する。なお、図９は、変更前状態と変更後状態を示す。
【００４３】
まず、第１線分Ｌ１及び第２線分Ｌ２を決定する（ステップＳ４１、Ｓ４２）。この第１線分Ｌ１及び第２線分Ｌ２は、任意に選択される。続いて、第１線分Ｌ１の傾きと第２線分Ｌ２が交差しているか否かを判定する（突出線分判定手段）（ステップＳ４３）。そして、両線分が交差していない場合には、次の線分について突出線分削除処理を繰り返す。
【００４４】
一方、両線分が交差している場合には、さらに、第２線分Ｌ２の端点が集合端点であるか否かを判定する（突出線分判定手段）（ステップＳ４４）。そして、第２線分Ｌ２の端点が集合頂点である場合には、削除する部分は存在しないため、次の線分について突出線分削除処理を繰り返す。
【００４５】
一方、第２線分Ｌ２の端点が集合頂点でない場合には、突出部分が存在することになる。従って、その突出部分の削除した突出部分削除線分の生成処理を行う（突出部分削除線分生成手段）（ステップＳ４５）。具体的には、第１線分Ｌ１と第２線分Ｌ２との交点と、第２線分Ｌ２の端点との間の線分を削除する。つまり、第２線分は、突出部分が削除された境界線分となり、第２線分の端点である頂点は、第１線分上に位置することになる。そして、この変更された第２線分及び頂点を記憶する（削除境界線分記憶手段）。なお、変更後の第２線分の端点である頂点が第１線分の集合頂点と一致する場合には、第２線分の端点である頂点は第１線分の集合頂点として記憶される。そして、突出部分削除線分が生成された後は、次の線分について突出部分削除処理を繰り返す。
【００４６】
次に、図１のフローチャートに戻り説明する。突出部分削除処理の後には、パーテイション分割処理を行う（ステップＳ６）。ＣＡＤデータの変換により、本来は、別々の線分であるものが一体化される場合がある。また、上述した線分マージ処理により、線分マージ用トレランス内に位置する線分は一体化される。この処理を行う結果、本来分離されるべき線分が一体化されてしまう。つまり、パーテイション分断処理は、一体化された線分を分断する処理である。３次元ＣＡＤシステムによっては、平面が境界線分及び集合頂点により閉じた形状でなければ、ワイヤフレームデータに面貼りを行なうことができない場合がある。例えば、図１１の変更前状態に示すように、一の平面のある境界線分の一部分が隣接する他の平面の境界線分となっている場合が該当する。つまり、他の平面は、頂点の一部が集合頂点となっていない。従って、このような場合にパーテイション分断処理は有効である。ここで、パーテイション分断処理については、図１０及び図１１を参照して説明する。図１１は、変更前状態と変更後状態を示す。
【００４７】
まず、第１線分Ｌ１及び第２線分Ｌ２を決定する（ステップＳ５１、Ｓ５２）。この第１線分Ｌ１及び第２線分Ｌ２は、任意に選択される。続いて、第１線分Ｌ１の端点が第２線分Ｌ２上に位置するか否かを判定する（境界分断判定手段）（ステップＳ５３）。そして、第１線分Ｌ１の端点が第２線分Ｌ２上に位置しない場合には、次の線分についてパーテイション分断処理を繰り返す。
【００４８】
一方、第１線分Ｌ１の端点が第２線分Ｌ２上に位置する場合は、第２線分を分断する（境界線分分断手段）（ステップＳ５４）。具体的には、第２線分Ｌ２を第１線分Ｌ１の端点位置にて分断して２つの第２線分を生成する。すなわち、各パーテイション毎に分断される。そして、分断された２つの第２線分Ｌ２及び分断点を集合頂点として記憶する（分断データ記憶手段）。分断点である集合頂点は、分断された２つの第２線分Ｌ２の端点及び第１線分Ｌ１の端点が集合する頂点となる。そして、第２線分の分断の後は、次の線分についてパーテイション分断処理を行う。
【００４９】
次に、図１のフローチャートに戻り説明する。パーテイション分断処理の後には、再び頂点マージ処理を行う（ステップＳ７）。再び頂点マージ処理を行う理由は、例えば、突出部分削除処理により生成された突出部分削除線分の端点が、ある線分の端点から頂点マージ用トレランス内に位置する場合等があるためである。そして、ここまで行われた処理により、ワイヤフレームデータは全て境界線分により囲まれたデータとなっている。さらに、各パーテイション毎にも境界線分により囲まれたデータとなっている。さらに、頂点は、全て集合頂点となっている。つまり、ワイヤフレームデータは、集合頂点と、境界線分と、それらの関係情報とからなる。
【００５０】
続いて、平面化処理を行う（ステップＳ８）。境界線分により囲まれた部分は本来は平面を形成するはずであるが、ＣＡＤデータの変換及び上述した処理により、面に歪みが発生し平面を形成しない場合が生じる。平面化処理とは、このような面の歪みを取り除き、平面を形成することができるようにするために行う処理である。なお、ワイヤフレームデータ全てが境界線分により囲まれたデータであったとしても、面に歪みがある場合には、ワイヤフレームデータに面貼りを行うことができない。つまり、平面化する必要がある。ここで、平面化処理について、図１２〜図１４を参照して説明する。ここで、ワイヤフレームデータが、図１３に示すような立方体形状である場合を例にとり説明する。なお、図１３に示す立方体形状は、手前側の３つの面のみからなり、裏側の３つの面はないものとする。すなわち、立方体形状は、集合頂点Ａ〜Ｇ、境界線分Ｌ１〜Ｌ９から構成される。
【００５１】
まず、頂点対応平面の生成を行う（頂点対応平面生成手段）（ステップＳ６１）。頂点対応平面とは、一の集合頂点を端点とする２つの境界線分を含む平面である。そして、この頂点対応平面をそれぞれの集合頂点毎に生成する。例えば、図１４に示す頂点対応平面Ａ１は、集合頂点Ａと境界線分Ｌ１，Ｌ４とを含む平面である。同様に、他の境界線分及び他の集合頂点についても頂点対応平面を生成する。このようにして、Ａ１，Ａ３，Ｂ１，Ｃ１，Ｃ２，Ｄ１，Ｄ２，Ｄ３，Ｅ１，Ｆ１，Ｆ３，Ｇ１の１２の頂点対応平面が生成される。
【００５２】
続いて、生成された頂点対応平面の中から基準頂点対応平面を決定する（ステップＳ６２）。例えば、頂点対応平面Ｃ１を基準頂点対応平面とする。続いて、基準頂点対応平面Ｃ１の傾きを基準として傾き許容値（平面マージ用トレランス）内に含まれる頂点対応平面を抽出する（ステップＳ６３）。生成された１２の頂点対応平面のうち、基準頂点対応平面Ｃ１の傾きと同一若しくは近似する頂点対応平面は、Ａ１，Ｂ１，Ｄ１の３つとなる。これらの４つの頂点対応平面は本来は同一の傾きであるべきであるが、上述したように同一とならない場合がある。従って、頂点対応平面Ａ１，Ｂ１，Ｃ１，Ｄ１は、傾きが同一若しくは近似していると考えられる。なお、傾きが近似とは、傾き許容値内に含まれることを意味する。一方、頂点対応平面Ａ３やＤ２等は、傾き許容値内には含まれないため抽出されない。なお、頂点対応平面の傾きとしては、平面の垂直ベクトル等を使用してもよい。
【００５３】
続いて、抽出された頂点対応平面のうちから、基準頂点対応平面Ｃ１との距離が距離許容値（平面マージ用トレランス）内に含まれる頂点対応平面を抽出する（ステップＳ６４）。なお、基準頂点対応平面Ｃ１と他の頂点対応平面との距離とは、基準頂点対応平面を生成した集合頂点Ｃから他の頂点対応平面Ａ１，Ｂ１，Ｄ１までの距離を意味する。ここでは、頂点対応平面Ａ１，Ｂ１，Ｄ１の３つ全てが、基準頂点対応平面Ｃ１との距離が距離許容値内にある。図１３に示す立方体形状の下面があるとすると、頂点対応平面Ｃ１と下面とは、傾きが同一若しくは近似するが、平面間距離が大きい。この場合の頂点対応平面間の距離は、線分Ｌ５の長さとほぼ同一となる。従って、基準頂点対応平面をＣ１とした場合、下面は抽出されない。
【００５４】
続いて、基準頂点対応平面Ｃ１と抽出された頂点対応平面Ａ１，Ｂ１，Ｄ１の合計４つの頂点対応平面をマージする（マージ平面生成手段）（ステップＳ６５）。つまり、これら４つの頂点対応平面Ａ１，Ｂ１，Ｃ１，Ｄ１を一つの平面にする。ここでは、マージ平面として基準頂点対応平面Ｃ１を採用する。なお、マージ平面としては、各頂点対応平面の傾きの平均的な平面を採用するようにしてもよい。同様にして、他の２平面についてもマージ平面を生成する。また、この段階においては、境界線分及び集合頂点は、何ら変更されていない。
【００５５】
続いて、集合頂点をマージ平面上に投影（移動）する（集合頂点位置変更手段）（ステップＳ６６）。上述のように、基準頂点対応平面Ｃ１に基づきマージ平面を生成したので、集合頂点Ａ，Ｃ，Ｄはマージ平面上に位置するが、集合頂点Ｂはマージ平面上に位置しない可能性がある。そこで、マージ平面上に位置しない集合頂点Ｂをマージ平面上に移動させる。このとき、集合頂点Ｂは、移動前集合頂点Ｂをマージ平面に対して垂直に投影した位置に移動する。これにより、集合頂点Ａ，Ｂ，Ｃ，Ｄは、全て同一平面上に位置することになる。
【００５６】
ここで、仮に、集合頂点Ａを移動させる場合は、以下のように行う。まず、図１４の３つの平面（頂点対応平面Ｃ１を含む平面、頂点対応平面Ｃ３を含む平面、及び頂点対応平面Ｆ１を含む平面）について、それぞれマージ平面を生成するとする。そうすると、集合頂点Ａ１は、頂点対応平面Ｃ１を含むマージ平面及び頂点対応平面Ｆ１を含むマージ平面上に位置しない場合が生じる。続いて、頂点対応平面Ｃ１を含むマージ平面と頂点対応平面Ｆ１を含むマージ平面の交線を求めておく。そこで、集合頂点Ａの移動は、算出した交線に垂直に投影した位置に移動させる。また、仮に、集合頂点Ｄを移動させる場合には、３つの平面の交点上に移動させる。
【００５７】
続いて、集合頂点の投影を行った後は、境界線分の再定義を行う（境界線分再定義手段）（ステップ６７）。集合頂点投影により、一部または全ての集合頂点が移動する。そうすると、集合頂点と境界線分の端点が一致しない場合が生じる。そこで、変更した集合頂点に基づき境界線分を再定義してワイヤフレームデータを生成する。具体的には、現在記憶されている境界線分データを全て消去する。そして、変更した集合頂点と線分頂点関連情報とに基づき、新たに境界線分を定義する。線分頂点関連情報は、どの集合頂点とどの集合頂点とが結ばれているかの情報が含まれている。このように再定義された境界線分は、変更した集合頂点を端点とする線分となるため、境界線分により囲まれた面が歪みのない平面となる。
【００５８】
次に、図１のフローチャートに戻り説明する。平面化処理の後には、スケッチ変換処理を行う（ステップＳ９）。スケッチ変換処理について、図１５及び図１６を参照して説明する。ここでは、上述までの処理により生成された形状が、図１６（ａ）に示す場合について説明する。すなわち、図１６（ａ）に示す形状は、上面１と、下面２と、垂直面３とからなるものである。
【００５９】
まず、スケッチ平面を定義する（ステップＳ７１）。ここでは、図１６（ｂ）に示すように、下面２を含む平面をスケッチ平面として定義する。なお、スケッチ平面と定義された平面は、後述する寸法拘束および幾何拘束による処理を行うことができる平面となる。続いて、スケッチ平面上のうち幾何拘束を行う境界線分をスケッチ要素として選択して取り込む（ステップＳ７２）。図１６（ｃ）に示すように、下面２を形成する境界線分全てをスケッチ要素として選択して取り込む。続いて、スケッチ要素として取り込まれた下面２を形成する境界線分のうち、寸法拘束を行いたい部分を選択して、その拘束条件となる寸法拘束値を定義する（拘束条件定義手段）（ステップＳ７３）。例えば、図１６（ｄ）に示すように、下面２の２方向の幅の寸法を所定値に拘束する。具体的には、寸法拘束させる境界線分を選択して、寸法拘束する幅寸法を入力して行う。続いて、寸法拘束値に基づき境界線分及び集合頂点を変更する（拘束変更手段）（ステップＳ７４）。これにより、入力された拘束条件に基づき集合頂点及び境界線分を移動させることができるので、正確な位置とすることができる。
【００６０】
なお、角度拘束を行う場合は、図１６（ｅ）に示すように、下面２と垂直面３の交線の端点を幾何拘束して、両面のなす角度を入力して拘束条件を定義する。ここで、両面のなす角度とは、交線の一方の端点を端点とする下面２の境界線分と垂直面３の境界線分間のなす角度と同一である。
【００６１】
なお、スケッチ変換処理を行うの理由は、上述の処理を行うことにより集合頂点及び境界線分の位置が僅かにずれるため、図１７に示すようにある平面間のなす角度が８９．９９９・・度となる場合が生じる。この場合、設計者はこのなす角度は９０度として設計したものと推定される。そこで、スケッチ変換処理により、このなす角度が９０度となるように角度拘束を行うというものである。
【００６２】
次に、図１のフローチャートに戻り説明する。スケッチ変換処理の後には、面貼りを行って円弧復元処理を行う（ステップＳ１０）。上述までの処理により生成されたワイヤフレームデータに基づき面貼りを行う。すなわち、３次元形状データとして利用できるようにする。面貼りを行った後には、ステップＳ２において記憶された円弧半径に基づき、フィレット生成する。このフィレットが生成される部分は、面貼りが行われた角部のみである。従って、ステップＳ２において記憶された円弧半径のうち面貼りが行われた角部に相当する部分のみフィレット生成される。
【図面の簡単な説明】
【図１】本発明の基本処理を示すフローチャートである。
【図２】線分変更処理を示すフローチャートである。
【図３】線分変更処理の説明図である。
【図４】頂点マージ処理を示すフローチャートである。
【図５】頂点マージ処理の説明図である。
【図６】線分マージ処理を示すフローチャートである。
【図７】線分マージ処理の説明図である。
【図８】突出線分削除処理を示すフローチャートである。
【図９】突出線分削除処理の説明図である。
【図１０】パーテイション分断処理を示すフローチャートである。
【図１１】パーテイション分断処理の説明図である。
【図１２】平面化処理を示すフローチャートである。
【図１３】平面化処理の説明図である。
【図１４】平面化処理の説明図である。
【図１５】スケッチ変換処理を示すフローチャートである。
【図１６】スケッチ変換処理の説明図である。
【図１７】スケッチ変換処理を行う前の形状を示す図である。
【図１】
2004258859.tif 000003
【図２】
2004258859.tif 000004
【図３】
2004258859.tif 000005
【図４】
2004258859.tif 000006
【図５】
2004258859.tif 000007
【図６】
2004258859.tif 000008
【図７】
2004258859.tif 000009
【図８】
2004258859.tif 000010
【図９】
2004258859.tif 000011
【図１０】
2004258859.tif 000012
【図１１】
2004258859.tif 000013
【図１２】
2004258859.tif 000014
【図１３】
2004258859.tif 000015
【図１４】
2004258859.tif 000016
【図１５】
2004258859.tif 000017
【図１６】
2004258859.tif 000018
【図１７】
2004258859.tif 000019