(57)【特許請求の範囲】
【請求項１】
入力データ解析手段と面設定フラグ判断手段と干渉計算手段と不要部分検出手段及び形状データ修正手段を有し、
前記入力データ解析手段は、入力した３次元形状と、切断に使用する平面又は自由曲面のデータを解析し、
前記面設定フラグ判断手段は、前記入力データ解析手段で解析した結果により、切断処理により生成される切断面に平面又は自由曲面データを設定するかどうかを記憶し、
前記干渉計算手段は、切断処理に入ると、３次元形状とあらかじめ指定された切断に使用する平面又は自由曲面との干渉計算を行い干渉点と干渉線を求め、
前記不要部分検出手段は、３次元形状と、平面又は自由曲面の位置関係から３次元形状の不要部分を検出し、
前記形状データ修正手段は、前記干渉計算手段で求めた干渉点と干渉線の情報から３次元形状に新たに頂点と稜線を生成し、前記不要部分検出手段で検出された３次元形状の不要部分を除去し、３次元形状の新たに生成された切断面に、その平面又は自由曲面の幾何データを設定し、前記面設定フラグ判断手段の記憶結果で生成された切断面に平面又は自由曲面データを設定しないように指定されていた場合には、設定した平面又は自由曲面の幾何データを削除することを特徴とする３次元形状の切断装置。
【請求項２】
入力データ解析手段が、入力した３次元形状と、切断に使用する平面又は自由曲面のデータを解析するステップと、
面設定フラグ判断手段が、前記入力データ解析手段で解析した結果により、切断処理により生成される切断面に平面又は自由曲面データを設定するかどうかを記憶するステップと、
切断処理に入ると、干渉計算手段が、３次元形状とあらかじめ指定された切断に使用する平面又は自由曲面との干渉計算を行い干渉点と干渉線を求めるステップと、
不要部分検出手段が、３次元形状と、平面又は自由曲面の位置関係から３次元形状の不要部分を検出するステップと、
形状データ修正手段が、前記干渉計算手段で求めた干渉点と干渉線の情報から３次元形状に新たに頂点と稜線を生成し、前記不要部分検出手段で検出された３次元形状の不要部分を除去し、３次元形状の新たに生成された切断面に、その平面又は自由曲面の幾何データを設定し、前記面設定フラグ判断手段の記憶結果で生成された切断面に平面又は自由曲面データを設定しないように指定されていた場合には、設定した平面又は自由曲面の幾何データを削除するステップと、
を有することを特徴とする３次元形状の切断方法。
【請求項３】
請求項２に記載された３次元形状の切断方法の処理プログラムを格納したコンピュータで読取り可能な記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、ＣＡＤ／ＣＡＭを用いた３次元形状の切断装置と切断方法及び切断方法を格納した記憶媒体に関するものである。
【０００２】
【従来の技術】
コンピュータを利用した設計，生産のための必須の道具として、ＣＡＤやＣＡＭが広く普及している。また、完成した製品や部品が実際の使用に耐えうるかどうかなどを、実験ではなくコンピュータにより検証しようとするＣＡＥも一般化されようとしている。そして、コンピュータグラフィックスを設計の分野に利用しようというのがＣＡＤである。
【０００３】
ＣＡＤのソフトウエア技術の面では、３次元の形状をコンピュータの中に構成する幾何形状モデリング（ＣＡＧＤ）の分野が開拓され、立体を３次元的に完全に表現するソリッドモデルの技術や自由曲線や自由曲面を含むような複雑な形状の設計技術が蓄積されてきた。
【０００４】
設計から生産に至るまでのすべての場面で扱えるような形状データは２次元ではなく３次元でなければならない。ソリッドモデラのような３次元データを扱えるシステムを核にして初めてＣＡＤ／ＣＡＭ／ＣＡＥの統合化が可能になり、それが設計や生産業務の効率化をもたらす。例えば、３次元ＣＡＤデータを製図システムに渡すことによって図面を得ることができる。解析システムに渡してその解析結果に基づいて３次元ＣＡＤで形状を修正することもできる。この３次元ＣＡＤで主役を演じているのがソリッドモデラである。
【０００５】
最近は、電話器やラジカセなどの家電製品をはじめ個性的で複雑な曲面データを持った製品を設計，生産する機会が多い。このような形状は２次元的には表現しにくいので、３次元ＣＡＤを利用して設計が行われる。
【０００６】
立体をコンピュータの中で表現する場合、２次元の形状を表現するだけであれば、図形を構成する頂点の座標値や稜線の形状データの幾何学的なデータをコンピュータに蓄えておけばよい。これに対して３次元の立体を表現する場合には、稜線と頂点に加えて面という要素が必要になる。面が曲面である場合は、幾何学的な表現が複雑になる。このような立体を表現するための方法を大別すると、ワイヤフレームモデル，サーフェスモデル，ソリッドモデルの３種類がある。ワイヤフレームモデルは、物体を構成する稜線のみで形状を記述するモデルで、形状の頂点座標を持つテーブルと形状の稜線を表す稜線テーブルだけを持つ、形状分割モデルの中で最も簡単な構造のモデルである。サーフェスモデルはワイヤフレームモデルに物体の面の情報を付加したもので、そのデータ構造はワイヤフレームモデルのデータ構造にポインタを付加して、面の境界を構成する稜線を連結させて面を定義するものである。ソリッドモデルは形状の幾何情報である頂点，稜線，面データに加えて、頂点，稜線，面の隣接関係、すなわち３次元形状の位相情報をデータ構造に持つモデルである。形状の実体が面のどちら側にあるかという情報が付加されているので、形状の内部情報を持っていることと同じになる。ソリッドモデルは、このように形状としての情報を完備しているので、３次元のモデルの中でも立体を完全に表現できるモデルである。このため解析や加工などのさまざまな場面で自動的な処理が可能になる。このようなソリッドモデルに基づいたシステムをソリッドモデラと呼ぶ。
【０００７】
【発明が解決しようとする課題】
しかしながら製品を設計している途中の段階ではソリッドモデル的な扱い、すなわち常に中身が詰まっている状態だけではなく、サーフェスモデル的な扱いすなわち立体の表面データの一部が存在しないことが許容される状態が望まれる場面も多い。例えば３次元形状を平面または自由曲面で切断する場合を考えると、生成された切断面の境界稜線の曲線データのみ必要で、切断面自体の曲面データが不要である場合も多い。しかしながら従来の技術においては、変形結果はソリッドモデルになることを前提にしているため、３次元形状を平面又は自由曲面で切断する場合には、切断処理によって生成された切断面にはその平面又は自由曲面データを必ず設定していた。このため切断処理によって生成された切断面の平面又は自由曲面データが不要である場合や、サーフェスモデルのように３次元形状の一部分に曲面データが定義されていないような形状を平面又は自由曲面で切断する場合でも、切断処理後にその平面又は自由曲面データをわざわざ削除しなければならなかった。
【０００８】
この発明はかかる短所を改善し、３次元形状を平面又は自由曲面で切断するときに、生成される切断面の幾何データを設定するかどうかをあらかじめ指定することができるようにすることで、生成された切断面にその平面又は自由曲面データを設定するかどうかを制御可能にすることができる３次元形状の切断装置と切断方法及び切断方法を格納した媒体を提供することを目的とするものである。
【０００９】
【課題を解決するための手段】
この発明に係る３次元形状の切断装置は、入力データ解析手段と面設定フラグ判断手段と干渉計算手段と不要部分検出手段及び形状データ修正手段を有し、前記入力データ解析手段は、入力した３次元形状と、切断に使用する平面又は自由曲面のデータを解析し、前記面設定フラグ判断手段は、前記入力データ解析手段で解析した結果により、切断処理により生成される切断面に平面又は自由曲面データを設定するかどうかを記憶し、前記干渉計算手段は、切断処理に入ると、３次元形状とあらかじめ指定された切断に使用する平面又は自由曲面との干渉計算を行い干渉点と干渉線を求め、前記不要部分検出手段は、３次元形状と、平面又は自由曲面の位置関係から３次元形状の不要部分を検出し、前記形状データ修正手段は、前記干渉計算手段で求めた干渉点と干渉線の情報から３次元形状に新たに頂点と稜線を生成し、前記不要部分検出手段で検出された３次元形状の不要部分を除去し、３次元形状の新たに生成された切断面に、その平面又は自由曲面の幾何データを設定し、前記面設定フラグ判断手段の記憶結果で生成された切断面に平面又は自由曲面データを設定しないように指定されていた場合には、設定した平面又は自由曲面の幾何データを削除することを特徴とする。
【００１０】
この発明に係る３次元形状の切断方法は、入力データ解析手段が、入力した３次元形状と、切断に使用する平面又は自由曲面のデータを解析するステップと、面設定フラグ判断手段が、前記入力データ解析手段で解析した結果により、切断処理により生成される切断面に平面又は自由曲面データを設定するかどうかを記憶するステップと、切断処理に入ると、干渉計算手段が、３次元形状とあらかじめ指定された切断に使用する平面又は自由曲面との干渉計算を行い干渉点と干渉線を求めるステップと、不要部分検出手段が、３次元形状と、平面又は自由曲面の位置関係から３次元形状の不要部分を検出するステップと、形状データ修正手段が、前記干渉計算手段で求めた干渉点と干渉線の情報から３次元形状に新たに頂点と稜線を生成し、前記不要部分検出手段で検出された３次元形状の不要部分を除去し、３次元形状の新たに生成された切断面に、その平面又は自由曲面の幾何データを設定し、前記面設定フラグ判断手段の記憶結果で生成された切断面に平面又は自由曲面データを設定しないように指定されていた場合には、設定した平面又は自由曲面の幾何データを削除するステップとを有することを特徴とする。
【００１１】
また、この発明に係る記憶媒体は、前記３次元形状の切断方法の処理プログラムを格納し、コンピュータにより読み取り可能なことを特徴とする。
【００１２】
【発明の実施の形態】
この発明の３次元形状切断装置は中央処理部と、文字入力や図形の座標入力を行う入力部と、表示部と、形状データを出力する出力部と、形状データを印刷出力する記録部と、入力部から入力した３次元形状の入力データを記憶する入力データ格納部と、切断処理により生成された３次元形状データを記憶する形状データ格納部と、基本ソフトウェアやアプリケーションプログラムや図形を操作するためのグラフィックスライブラリ及び切断処理プログラム等を記憶したプログラム格納部を有する。中央処理部は入力データ解析部と面設定フラグ判断部と形状データ参照部と干渉計算部と不要部分検出部及び形状データ修正部を有する。
【００１３】
入力された３次元形状の切断処理を行うとき、入力された３次元形状と切断に使用する平面又は自由曲面のデータを入力データ解析部で解析する。この解析した結果により面設定フラグ判断部は切断に使用する平面又は自由曲面データを生成された切断面に設定するかどうかを記憶する。その後、入力された３次元形状の切断処理に入り、３次元形状の稜線とあらかじめ指定された切断に使用する平面又は自由曲面との干渉点と、３次元形状のもつ曲面と指定された切断に使用する平面又は自由曲面との干渉線を干渉計算部で求め、求めた干渉点と干渉線の情報から形状データ修正部で３次元形状に新たに頂点と稜線を生成する。一方、３次元形状と平面又は自由曲面の位置関係から３次元形状の不要部分を不要部分検出部で検出し、検出した不要部分を形状データ修正部で除去する。その後、３次元形状の新たに生成された切断面に、形状データ修正部でその平面又は自由曲面の幾何データを設定する。そして形状データ修正部は面設定フラグ判断部に設定された切断に使用する平面又は自由曲面データを生成された切断面に設定するかどうかの情報を調べ、生成された切断面に平面又は自由曲面データを設定するように指定されていた場合には切断処理を終了する。また、生成された切断面に平面又は自由曲面データを設定しないように指定されていた場合には、切断面に設定されている平面又は自由曲面データを削除して切断処理を終了する。
【００１４】
【実施例】
図１はこの発明の一実施例の構成を示すブロック図である。図に示すように、３次元形状切断装置１は中央処理部２と、文字入力を行うキーボードと図形の座標入力を行うマウス等を有する入力部３と、図形等を表示する表示部４と、切断機等に形状データを出力する出力部５と、形状データを印刷出力する記録部６と、入力した３次元形状の入力データを記憶する入力データ格納部７と、切断処理により生成された３次元形状データを記憶する形状データ格納部８と、基本ソフトウェアやアプリケーションプログラムや図形を操作するためのグラフィックスライブラリと切断処理プログラム等を記憶したプログラム格納部９及び外部メモリ１１に格納された切断処理プログラム等を入出力する外部メモリ入出力部１０を有する。
【００１５】
中央処理部２は図２のブロック図に示すように、入力データ解析部２１と面設定フラグ判断部２２と形状データ参照部２３と干渉計算部２４と不要部分検出部２５及び形状データ修正部２６を有する。入力データ解析部２１は設計者が入力部３から入力して入力データ格納部７に記憶した３次元形状の立体名や立体ＩＤの識別子と、切断に使用する平面又は自由曲面のデータを解析する。面設定フラグ判断部２２は切断処理により生成される切断面に平面又は自由曲面データを設定するかどうかを記憶する。形状データ参照部２３は設計者の入力した３次元形状の識別子を基に３次元形状のデータを参照する。干渉計算部２４は３次元形状と平面又は自由曲面の干渉計算を行う。不要部分検出部２５は３次元形状と平面又は自由曲面の位置関係から３次元形状の不要部分を検出する。この３次元形状の不要部分を検出するときに、干渉計算部２４で得られた結果も参照する。形状データ修正部２６は干渉計算部２４で得られた干渉点と干渉線の情報から３次元形状に新たな頂点と稜線を生成し、不要部分検出部２５で検出された形状を除去したり、生成された切断面に平面又は自由曲面の幾何データを設定したり、面設定フラグ判断部２２の記憶結果により切断部の幾何データの削除等を行う。
【００１６】
上記のように構成された３次元形状切断装置１で入力した３次元形状を切断処理するときの動作を図３のフローチャートを参照して説明する。
【００１７】
入力された３次元形状の切断処理を開始する前に、まず、入力データ解析部２１は入力された３次元形状と切断に使用する平面又は自由曲面のデータを解析する（ステップＳ１）。面設定フラグ判断部２２は、入力データ解析部２１で解析した結果により切断に使用する平面又は自由曲面データを生成された切断面に設定するかどうかを記憶する（ステップＳ２）。その後、入力された３次元形状の切断処理に入る（ステップＳ３）。切断処理に入ると、干渉計算部２４で３次元形状の稜線とあらかじめ指定された切断に使用する平面又は自由曲面との干渉点と、３次元形状のもつ曲面と指定された切断に使用する平面又は自由曲面との干渉線を求める（ステップＳ４）。形状データ修正部２６は干渉計算部２４で求めた干渉点と干渉線の情報から３次元形状に新たに頂点と稜線を生成する（ステップＳ５）。一方、不要部分検出部２５は３次元形状と平面又は自由曲面の位置関係から３次元形状の不要部分を検出する（ステップＳ６）。この検出した不要部分を形状データ修正部２６で除去する（ステップＳ７）。その後、形状データ修正部２６は３次元形状の新たに生成された切断面に、その平面又は自由曲面の幾何データを設定する（ステップＳ８）。そして形状データ修正部２６は面設定フラグ判断部２２に設定された切断に使用する平面又は自由曲面データを生成された切断面に設定するかどうかの情報を調べ（ステップＳ９）、生成された切断面に平面又は自由曲面データを設定するように指定されていた場合には切断処理を終了する（ステップＳ１３）。
【００１８】
また、平面又は自由曲面データを設定しないように指定されていた場合は（ステップＳ９）、平面又は１枚の自由曲面を切断に使用するかどうかを確認し（ステップＳ１０）、平面又は１枚の自由曲面を切断に使用した場合には、切断面に設定されている平面又は自由曲面データを削除して切断処理を終了する（ステップＳ１１，Ｓ１３）。また、接続する２枚以上の自由曲面を切断に使用した場合には、切断面として複数のループが生成されることがある。このように切断面としての複数のループが生成されたときには、それらのループの間にある稜線をすべて除去することによって切断面のループを１つにまとめ、それらのループに設定されていた自由曲面データを削除して切断処理を終了する（ステップＳ１２，Ｓ１３）。切断処理が終了すると形状データ修正部２６は切断処理によって生成された３次元形状データを形状データ格納部８に記憶する（ステップＳ１４）。
【００１９】
［具体例］  上記のように構成した３次元形状切断装置１で複数の自由曲面による３次元形状を切断した具体例を図４から図９を参照して説明する。図４に示すように、複数の自由曲面から構成されるサーフェス４１を複数の自由曲面から構成されるサーフェス４２で切断するときに、切断面に自由曲面データが設定されるように指定した場合の切断処理の結果を図５に示す。図５に示すように、サーフェス４１の内部に切断面４３が生成され、その切断面４３が複数のループ４３ａ〜４３ｆによって構成されている。この複数のループ４３ａ〜４３ｆに自由曲面データが設定されている。また、サーフェス４１をサーフェス４２で切断するときに、切断面に自由曲面データが設定されないように指定した場合の切断処理の結果を図６に示す。図６に示すように、切断面が１つのループ４４によって構成されている。このループ４４には自由曲面データが設定されていないため、切断処理後のサーフェス４１には、外側の境界と内側の境界の間だけに自由曲面データが存在している。
【００２０】
図７から図９は同様な処理をソリッドモデルに適用した例を示す。図７に示すように円柱７１を球７２で切断するときに、切断面に球面データを設定されるように指定した場合の切断処理の結果を図８に示し、切断面に球面データが設定されないように指定した場合の切断処理の結果を図９に示す。図８に示すように、切断面に球面データを設定されるように指定した場合は、円柱７１の切断面７３に複数のループの球面データが設定されるが、図９に示すように、切断面に球面データが設定されないように指定した場合は、切断面の境界稜線から構成されるループ７４に球面データが設定されず、切断処理後の３次元形状は円柱面と平面から構成されるサーフェスモデルになる。
【００２１】
上記実施例は、プログラム格納部９に切断処理プログラムをあらかじめ記憶した場合について説明したが、切断処理プログラムをフロッピディスクやコンパクトディスク等の外部メモリ１１にあらかじめ記憶させておき、切断処理をするときの外部メモリ１１から切断処理プログラムを読み込んで切断処理を行うようにしても良い。
【００２２】
【発明の効果】
この発明は以上説明したように、３次元形状を平面又は自由曲面で切断する処理において、生成された切断面にその平面又は自由曲面データを設定するか、設定しないかを選択できるようにしたから、サーフェスモデルのように３次元形の一部分に曲面データが定義されていないような形状を平面又は自由曲面で切断する場合に、切断面の境界稜線のデータだけを生成することができる。
【００２３】
また、上記切断処理プログラムを記憶媒体に格納しておくことにより、切断処理プログラムを有効に活用することができる。
【図面の簡単な説明】
【図１】この発明の実施例の構成を示すブロック図である。
【図２】上記実施例の中央処理部の構成を示すブロック図である。
【図３】上記実施例の切断処理を示すフローチャートでる。
【図４】サーフェスモデルの切断前を示す斜視図である。
【図５】サーフェスモデルの切断面に自由曲面データが設定されるように指定した場合の切断処理の結果を示す斜視図である。
【図６】サーフェスモデルの切断面に切断面に自由曲面データが設定されないように指定した場合の切断処理の結果を示す斜視図である。
【図７】ソリッドモデルの切断前を示す斜視図である。
【図８】ソリッドモデルの切断面に球面データを設定されるように指定した場合の切断処理の結果を示す斜視図である。
【図９】ソリッドモデルの切断面に球面データを設定されないよう指定した場合の切断処理の結果を示す斜視図である。
【符号の説明】
１      ３次元形状切断装置
２      中央処理部
３      入力部
４      表示部
５      出力部
６      記録部
７      入力データ格納部
８      形状データ格納部
９      プログラム格納部
１０    外部メモリ入出力部
１１    外部メモリ
２１    入力データ解析部
２２    面設定フラグ判断部
２３    形状データ参照部
２４    干渉計算部
２５    不要部分検出部
２６    形状データ修正部
【図１】
0003801792.tif 000002
【図２】
0003801792.tif 000003
【図３】
0003801792.tif 000004
【図４】
0003801792.tif 000005
【図５】
0003801792.tif 000006
【図６】
0003801792.tif 000007
【図７】
0003801792.tif 000008
【図８】
0003801792.tif 000009
【図９】
0003801792.tif 000010