(57)【特許請求の範囲】
【請求項１】
数値制御工作機械に取り付けられた工具を連続した線分からなる経路にそって移動させ、工作物を切削加工することで得られる工作物の形状を表示する表示方法であって、
加工前の工作物の立体モデル、ボールエンドミルの工具形状データ、ボールエンドミルの工具移動経路に関する情報を入力するステップと、
前記入力するステップにより入力された工作物の立体モデルを、基準座標系のｘｙ平面上にｘ軸とｙ軸に平行かつ等間隔な直交格子を有するデクセルが集積された立体モデルへ変換するステップと、
前記入力するステップにより入力された工具形状データ及び工具移動経路に関する情報と、前記変換するステップにより求められた立体モデルとに基づいて、ボールエンドミル先端の半球形切刃と同一半径の球の直線移動の連続により生成される球面と円筒形を結合したものの和形状として、ボールエンドミルが工具移動経路にそって移動するときの掃引形状を生成するステップと、
前記掃引形状を生成するステップにより生成された掃引形状について、掃引形状を構成する直線部分に対応する円筒形状と、方向転換部分に対応する各球面から両側の円筒形状の内部に入り込んでいる部分を削除してくさび形状を計算するステップと、
前記計算するステップにより求められたくさび形状は、球面部を幾つかの等幅な細片へ分割し、得られた各細片をさらに等しい間隔で分割することで微小な四辺形又は三角形の集合として多面体近似し、前記計算するステップにより求められた円筒形状は、等しい幅の長方形を鎧状につないだものとして多面体近似することにより、円筒形状及びくさび形状の表面を微小な多角形の集合へ分割し、さらに、多面体を構成する多角形のうち、デクセルの切り詰めに関与する法線方向が下向きの多角形のみ選択して他を除外することにより、多角形データを生成するステップと、
前記多角形データを生成するステップにより得られた多角形データを、工作物のデクセル化のもとになるｘｙ平面上の直交格子をフレームバッファと見なして、隠面消去のハードウェア処理を行う３次元グラフィックス表示部に与えるステップと、
３次元グラフィックス表示部による隠面消去のハードウェア処理で求められた掃引形状の最下面の高さを表すデプス値を受けるステップと、
工作モデルを構成する各デクセルについて、前記受けるステップにより得られたデプス値と立体モデルの各デクセルの高さとを比較し、立体モデルの各デクセルの高さを、得られたデプス値まで切り詰めるステップと、
前記切り詰めるステップにより切り詰められた各デクセルの上端に微小な多角形を貼り付けモデルの上面を覆うように多面体化して多角形データを求めるステップと、
３次元グラフィックス表示部により可視表示させるために、前記求めるステップにより求められたデクセルの上端に貼り付けられた多角形データを３次元グラフィックス表示部へ出力するステップと、
を備えた表示方法。
【請求項２】
３次元グラフィックス表示部は、伝送された全三角形データに基づいてハードウェアによる処理を実行し、その隠面消去した画像をフレームバッファへ描画し、その投影図を出力部へ表示又は出力することを特徴とする請求項１に記載の表示方法。
【請求項３】
視体積と工作物モデルの積立体を新しい工作物モデルとする拡大表示ステップをさらに備えた請求項１に記載の表示方法。
【請求項４】
数値制御工作機械に取り付けられた工具を連続した線分からなる経路にそって移動させ、工作物を切削加工することで得られる工作物の形状を表示する表示プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
加工前の工作物の立体モデル、ボールエンドミルの工具形状データ、ボールエンドミルの工具移動経路に関する情報を入力する手段と、
前記入力する手段により入力された工作物の立体モデルを、基準座標系のｘｙ平面上にｘ軸とｙ軸に平行かつ等間隔な直交格子を有するデクセルが集積された立体モデルへ変換する手段と、
前記入力する手段により入力された工具形状データ及び工具移動経路に関する情報と、前記変換する手段により求められた立体モデルとに基づいて、ボールエンドミル先端の半球形切刃と同一半径の球の直線移動の連続により生成される球面と円筒形を結合したものの和形状として、ボールエンドミルが工具移動経路にそって移動するときの掃引形状を生成する手段と、
前記掃引形状を生成する手段により生成された掃引形状について、掃引形状を構成する直線部分に対応する円筒形状と、方向転換部分に対応する各球面から両側の円筒形状の内部に入り込んでいる部分を削除してくさび形状を計算する手段と、
前記計算する手段により求められたくさび形状は、球面部を幾つかの等幅な細片へ分割し、得られた各細片をさらに等しい間隔で分割することで微小な四辺形又は三角形の集合として多面体近似し、前記計算する手段により求められた円筒形状は、等しい幅の長方形を鎧状につないだものとして多面体近似することにより、円筒形状及びくさび形状の表面を微小な多角形の集合へ分割し、さらに、多面体を構成する多角形のうち、デクセルの切り詰めに関与する法線方向が下向きの多角形のみ選択して他を除外することにより、多角形データを生成する手段と、
前記多角形データを生成する手段により得られた多角形データを、工作物のデクセル化のもとになるｘｙ平面上の直交格子をフレームバッファと見なして、隠面消去のハードウェア処理を行う３次元グラフィックス表示部に与える手段と、
３次元グラフィックス表示部による隠面消去のハードウェア処理で求められた掃引形状の最下面の高さを表すデプス値を受ける手段と、
工作モデルを構成する各デクセルについて、前記受ける手段により得られたデプス値と立体モデルの各デクセルの高さとを比較し、立体モデルの各デクセルの高さを、得られたデプス値まで切り詰める手段と、
前記切り詰める手段により切り詰められた各デクセルの上端に微小な多角形を貼り付けモデルの上面を覆うように多面体化して多角形データを求める手段と、
３次元グラフィックス表示部により可視表示させるために、前記求める手段により求められたデクセルの上端に貼り付けられた多角形データを３次元グラフィックス表示部へ出力する手段と、
をコンピュータに実行させるための表示プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項５】
処理部と３次元グラフィックス表示部とを備え、数値制御工作機械に取り付けられた工具を連続した線分からなる経路にそって移動させ、工作物を切削加工することで得られる工作物の形状を表示する表示装置であって、
前記処理部は、
加工前の工作物の立体モデル、ボールエンドミルの工具形状データ、ボールエンドミルの工具移動経路に関する情報を入力する手段と、
前記入力する手段により入力された工作物の立体モデルを、基準座標系のｘｙ平面上にｘ軸とｙ軸に平行かつ等間隔な直交格子を有するデクセルが集積された立体モデルへ変換する手段と、
前記入力する手段により入力された工具形状データ及び工具移動経路に関する情報と、前記変換する手段により求められた立体モデルとに基づいて、ボールエンドミル先端の半球形切刃と同一半径の球の直線移動の連続により生成される球面と円筒形を結合したものの和形状として、ボールエンドミルが工具移動経路にそって移動するときの掃引形状を生成する手段と、
前記掃引形状を生成する手段により生成された掃引形状について、掃引形状を構成する直線部分に対応する円筒形状と、方向転換部分に対応する各球面から両側の円筒形状の内部に入り込んでいる部分を削除してくさび形状を計算する手段と、
前記計算する手段により求められたくさび形状は、球面部を幾つかの等幅な細片へ分割し、得られた各細片をさらに等しい間隔で分割することで微小な四辺形又は三角形の集合として多面体近似し、前記計算する手段により求められた円筒形状は、等しい幅の長方形を鎧状につないだものとして多面体近似することにより、円筒形状及びくさび形状の表面を微小な多角形の集合へ分割し、さらに、多面体を構成する多角形のうち、デクセルの切り詰めに関与する法線方向が下向きの多角形のみ選択して他を除外することにより、多角形データを生成する手段と、
前記多角形データを生成する手段により得られた多角形データを、工作物のデクセル化のもとになるｘｙ平面上の直交格子をフレームバッファと見なして、隠面消去のハードウェア処理を行う３次元グラフィックス表示部に与える手段と、
３次元グラフィックス表示部による隠面消去のハードウェア処理で求められた掃引形状の最下面の高さを表すデプス値を受ける手段と、
工作モデルを構成する各デクセルについて、前記受ける手段により得られたデプス値と立体モデルの各デクセルの高さとを比較し、立体モデルの各デクセルの高さを、得られたデプス値まで切り詰める手段と、
前記切り詰める手段により切り詰められた各デクセルの上端に微小な多角形を貼り付けモデルの上面を覆うように多面体化して多角形データを求める手段と、
３次元グラフィックス表示部により可視表示させるために、前記求める手段により求められたデクセルの上端に貼り付けられた多角形データを３次元グラフィックス表示部へ出力する手段と、
を備えた表示装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、表示方法及び表示プログラムを記録したコンピュータ読み取り可能な記録媒体及び表示装置に係り、特に、ボールエンドミル等の工具を連続した線分からなる経路にそって移動させ、工作物を切削加工した結果を表示する表示方法及び表示プログラムを記録した記録媒体に関する。
【０００２】
【従来の技術】
従来、プラスチックや金属のダイキャスト製品、板金製品の製造等に用いられる金型には、複雑な曲面形状を有するものが多い。このような金型の多くは、ボールエンドミル工具を用いた数値制御加工（ＮＣ（Ｎｕｍｅｒｉｃａｌ  Ｃｏｎｔｒｏｌ）切削加工）等により製作される。金型加工では、工具により工作物を深く彫り込むことが多いため、剛性に優れた３軸制御の工作機械の利用が一般的である。
【０００３】
また、例えば、ボールエンドミル等による切削加工の結果を表示する場合、その切削加工の結果は、立体モデリングシステムの集合演算機能を用いて、加工前の工作物形状を表す立体モデルから、与えられた経路にしたがって移動するボールエンドミルの掃引形状を表す立体モデルを差し引くことで計算できる。この考え方に基づいて、工作物形状と掃引形状を表現する様々な可視化手法が、既に開発されている。可視化手法としては、例えば、ＣＳＧ（Ｃｏｎｓｔｒｕｃｔｉｖｅ  Ｓｏｌｉｄ  Ｇｅｏｍｅｔｒｙ）モデルとして扱う手法（Ｎｕｍｅｒｉｃａｌ  Ｃｏｎｔｒｏｌ  Ｐａｒｔ  Ｐｒｏｇｒａｍ  Ｖｅｒｉｆｉｃａｔｉｏｎ  Ｓｙｓｔｅｍ，  Ｐｒｏｃ．  Ｃｏｎｆ．  Ｏｎ  ＣＡＤ／ＣＡＭ  Ｔｅｃｈｎｏｌｏｇｙ  ｉｎ  Ｍｅｃｈａｎｉｃａｌ  Ｅｎｇｉｎｅｅｒｉｎｇ，  ｐｐ．２３６−２５４  （１９８２）参照）、工作物の視線方向のデクセル表現に基づく手法（Ｒｅａｌ−Ｔｉｍｅ  Ｓｈａｄｅｄ  ＮＣ  Ｍｉｌｌｉｎｇ  Ｄｉｓｐｌａｙ，  Ｃｏｍｐｕｔｅｒ  Ｇｒａｐｈｉｃｓ，  Ｖｏｌ．２０，  Ｎｏ．４，  ｐｐ．１５−２０  （１９８６），  Ｇｅｏｍｅｔｒｉｃ  Ｍｏｄｅｌｉｎｇ  ｆｏｒ  Ｓｗｅｐｔ  Ｖｏｌｕｍｅ  ｏｆ  Ｍｏｖｉｎｇ  Ｓｏｌｉｄｓ，  ＩＥＥＥ  Ｃｏｍｐｕｔｅｒ  Ｇｒａｐｈｉｃｓ  ａｎｄ  Ａｐｐｌｉｃａｔｉｏｎｓ，  Ｖｏｌ．６，  Ｎｏ．１２  ｐｐ．８−１７  （１９８６）参照）、ボクセル表現に基づく手法（Ｂｒｉｄｇｉｎｇ  ｔｈｅ  Ｇａｐ  ｂｅｔｗｅｅｎ  ＣＳＧ  ａｎｄ  Ｂｒｅｐ  ｖｉａ  ａ  Ｔｒｉｐｌｅ  Ｒａｙ  Ｒｅｐｒｅｓｅｎｔａｔｉｏｎ，  Ｐｒｏｃ．  ｏｆ  Ｆｏｕｒｔｈ  Ｓｙｍｐｏｓｉｕｍ  ｏｎ  Ｓｏｌｉｄ  Ｍｏｄｅｌｉｎｇ  ａｎｄ  Ａｐｐｌｉｃａｔｉｏｎｓ，  ｐｐ．６８−７９  （１９９７）参照）、オクツリー表現に基づく手法（Ａ  Ｆｌｅｘｉｂｌｅ  Ｑｕａｎｔｉｔａｔｉｖｅ  Ｍｅｔｈｏｄ  ｆｏｒ  ＮＣ  Ｍａｃｈｉｎｉｎｇ  Ｖｅｒｉｆｉｃａｔｉｏｎ  Ｕｓｉｎｇ  ａ  Ｓｐａｃｅ−Ｄｉｖｉｓｉｏｎ  ｂａｓｅｄ  Ｓｏｌｉｄ  Ｍｏｄｅｌ，  Ｔｈｅ  Ｖｉｓｕａｌ  Ｃｏｍｐｕｔｅｒ，  Ｖｏｌ．７，  ｐｐ．１４９−１５７  （１９９１）参照）、Ｇ−バッファ表現に基づく手法（ＮＣ  Ｍａｃｈｉｎｉｎｇ  ｗｉｔｈ  Ｇ−Ｂｕｆｆｅｒ  Ｍｅｔｈｏｄ，  Ｃｏｍｐｕｔｅｒ  Ｇｒａｐｈｉｃｓ，  Ｖｏｌ．２５，  Ｎｏ．４，  ｐｐ．２０７−２１６  （１９９１）参照）等がある。
【０００４】
また、Ｍｅｎｏｎ等は、ハードウェアを用いてＣＳＧモデルの描画を高速化する手法を開発している（Ｍｏｒｅ  Ｐｏｗｅｒｆｕｌ  Ｓｏｌｉｄ  Ｍｏｄｅｌｉｎｇ  ｔｈｒｏｕｇｈ  Ｒａｙ  Ｒｅｐｒｅｓｅｎｔａｔｉｏｎｓ，  ＩＥＥＥ  Ｃｏｍｐｕｔｅｒ  Ｇｒａｐｈｉｃｓ  ａｎｄ  Ａｐｐｌｉｃａｔｉｏｎｓ，  Ｖｏｌ．１４，  Ｎｏ．３，  ｐｐ．２２−３５  （１９９４）参照）。
【０００５】
さらに、近年ミーリング技術（切削加工技術）の進歩により、切削加工だけで磨き作業が不要な程に高品質な仕上がりの金型を得ることが可能になってきた。それにともない、切削加工により製作される金型について、表面精度や品質を、実加工の前に詳細に把握して検討する必要が生じている。
【０００６】
【発明が解決しようとする課題】
一般の曲面加工用のＣＡＭ（Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｍａｎｕｆａｃｔｕｒｉｎｇ）ソフトウェアでは、使用者が対話的に入力する加工範囲、加工方法（走査線切削、等高線切削など）、工具半径、要求精度などの情報と、加工対象製品の幾何モデルに基づいて、ボールエンドミルの移動経路などの、工作機械の制御情報（ＮＣコード）を生成する。しかしながら、一般のＣＡＭソフトウェアには、線画による工具経路の表示機能しか用意されていないため、このような複雑な加工の結果、どのような形状の工作物が得られるのか理解しにくい。そのため、従来は、生成された移動経路に製品への削り込みや多大な削り残しなどの問題が生じていても、それらを事前に把握することは困難であった。
【０００７】
また、金型のような複雑な曲面を多用した製品の加工では、ボールエンドミルは、例えば、数十万にも及ぶ膨大な回数の微小な直線移動を繰り返す。そのため、上述のような従来の可視化手法では、処理に多大な時間を要してしまうため、金型のような複雑なＮＣ加工の結果を、対話的な時間内のような短時間の間に精密に可視化することは困難であった。
また、Ｍｅｎｏｎ等の技術では、加工結果の可視化にも適用可能だが、独自開発した特殊なハードウェアを用いているため、今後の性能向上が期待できない。
【０００８】
本発明は、以上の点に鑑み、ボールエンドミル等の工具による切削加工をすることで得られる工作物の形状を、高速にグラフィックス表示することを目的とする。本発明は、ハードウェアで構成された３次元グラフィックス表示部を利用して、処理装置を用いて切削加工の過程をシミュレーションし、加工後の工作物の形状を可視化することを目的とする。また、本発明は、金型への削り込みや削り残しなどの加工上の問題を実際の加工前に検出確認することを可能とし、加工に要する手間を低減することを目的とする。
【０００９】
【課題を解決するための手段】
本発明の第１の解決手段によると、
数値制御工作機械に取り付けられた工具を連続した線分からなる経路にそって移動させ、工作物を切削加工することで得られる工作物の形状を表示する表示方法であって、
工作物、工具及び工具経路に関する情報を入力するステップと、
前記入力するステップにより入力された工作物を、デクセルが集積された立体モデルへ変換するステップと、
前記入力するステップにより入力された工具及び工具経路に関する情報と、前記変換するステップにより求められた立体モデルとに基づいて、工具が工具経路にそって移動するときの掃引形状を生成するステップと、
前記掃引形状を生成するステップにより生成された掃引形状について、掃引形状を構成する直線部分に対応する第１の形状と方向転換部分に対応する第２の形状を計算するステップと、
前記計算するステップにより求められた第１及び第２の形状の表面を微小な多角形の集合へ分割し、法線方向が所定の向きの多角形のみ選択することにより、多角形データを生成するステップと、
前記多角形データを生成するステップにより得られた多角形データを３次元グラフィックス表示部に与えるステップと、
３次元グラフィックス表示部によるハードウェア処理で求められた掃引形状の最下面の高さを表すデプス値を受けるステップと、
前記受けるステップにより得られたデプス値と立体モデルの各デクセルの高さ又は長さとを比較し、立体モデルの各デクセルの高さ又は長さを、得られたデプス値まで切り詰めるステップと
を備えた表示方法を提供する。
【００１０】
本発明の第２の解決手段によると、
数値制御工作機械に取り付けられた工具を連続した線分からなる経路にそって移動させ、工作物を切削加工することで得られる工作物の形状を表示する表示プログラムを記録したコンピュータ読み取り可能な記録媒体及び表示装置であって、
工作物、工具及び工具経路に関する情報を入力するステップと、
前記入力するステップにより入力された工作物を、デクセルが集積された立体モデルへ変換するステップと、
前記入力するステップにより入力された工具及び工具経路に関する情報と、前記変換するステップにより求められた立体モデルとに基づいて、工具が工具経路にそって移動するときの掃引形状を生成するステップと、
前記掃引形状を生成するステップにより生成された掃引形状について、掃引形状を構成する直線部分に対応する第１の形状と方向転換部分に対応する第２の形状を計算するステップと、
前記計算するステップにより求められた第１及び第２の形状の表面を微小な多角形の集合へ分割し、法線方向が所定の向きの多角形のみ選択することにより、多角形データを生成するステップと、
前記多角形データを生成するステップにより得られた多角形データを３次元グラフィックス表示部に与えるステップと、
３次元グラフィックス表示部によるハードウェア処理で求められた掃引形状の最下面の高さを表すデプス値を受けるステップと、
前記受けるステップにより得られたデプス値と立体モデルの各デクセルの高さ又は長さとを比較し、立体モデルの各デクセルの高さ又は長さを、得られたデプス値まで切り詰めるステップと
を備えた表示プログラムを記録したコンピュータ読み取り可能な記録媒体を提供する。
【００１１】
本発明の第３の解決手段によると、
処理部と３次元グラフィックス表示部とを備え、数値制御工作機械に取り付けられた工具を連続した線分からなる経路にそって移動させ、工作物を切削加工することで得られる工作物の形状を表示する表示装置であって、
前記処理部は、
工作物、工具及び工具経路に関する情報を入力する手段と、
前記入力する手段により入力された工作物をデクセルが集積した立体モデルへ変換する手段と、
前記入力する手段により入力された工具及び工具経路に関する情報と、前記変換する手段により求められた立体モデルとに基づいて、工具が工具経路にそって移動するときの掃引形状を生成する手段と、
前記掃引形状を生成する掃引形状を構成する直線部分に対応する第１の形状と方向転換部分に対応する第２の形状を計算する手段と、
前記計算する手段により求められた第１及び第２の形状の表面を微小な多角形の集合へ分割し、法線方向が所定の向きの多角形のみ選択することにより、全多角形データを生成する手段と、
前記全多角形データを生成する手段により得られた全多角形データを前記３次元グラフィックス表示部に出力する手段と、
前記３次元グラフィックス表示部によるハードウェア処理で求められた掃引形状の最下面の高さを表すデプス値を受ける手段と、
前記受ける手段により得られたデプス値と立体モデルの各デクセルの高さ又は長さとを比較し、その高さ又は長さを立体モデルの各デクセルについて、得られたデプス値まで切り詰める手段と
を備え、
前記３次元グラフィックス表示部は、
前記処理部の前記生成する手段により得られた全多角形データに基づき隠面消去処理を実行し、デプスバッファの各要素のデプス値を更新又は記憶するハードウェアによるデプスバッファ処理を実行する手段と、
前記デプスバッファ処理を実行する手段により記憶されたデプスバッファに基づき各要素に記憶された掃引形状の最下面の高さを表す全デプス値を得る手段と、
前記得る手段により得られた全デプス値を前記処理部へ出力する手段と、
前記処理部によるソフトウェア処理により得られたデクセル上端の全三角形データに基づいて、隠面消去した画像をフレームバッファへ描画し、その投影図をディスプレイへ表示する手段と
を備えた表示装置を提供する。
【００１２】
【発明の実施の形態】
図１に、工作物の切り詰め処理についての説明図を示す。この図は、一例として、工作物形状のデクセルによる近似表現と、ボールエンドミル先端によるデクセルの切り詰め処理を表している。ボールエンドミル１０１の先端には、工具と同一半径の球形の切刃が取り付けられており、この部分がデクセルを切り詰める。工作物１０２は、デクセルのもととなる直交格子の間隔ｗのデクセルで表されている。工作物１０２は、ボールエンドミル１０１により掃引形状１０３で切削される。この図では、一つの直線移動に対応する球の掃引形状１０３により、工作物１０２の立体モデルを構成するデクセル群を切り詰めた様子を示している。特に、ここでは、工作物１０２の形状を、ボールエンドミル１０１の軸方向に細長いデクセルと呼ばれる直方体の集積により近似表現する手法が用いられる。連続した直線移動に対応するボールエンドミル１０１の掃引形状１０３は、先端の切刃と同一半径の球とによる球面と円筒形を交互に結合したものの和形状となる。
【００１３】
工作物１０２の素材の形状を表す立体モデルから、経路にしたがって移動する工具（ここでは、ボールエンドミル１０１）の掃引形状１０３を差し引くことで、加工により得られる形状を表現できる。計算処理としては、切削加工後の工作物１０２の形状は、掃引形状１０３を構成する球面と円筒形とにより、デクセルの上部を切り詰める処理を繰り返すことで計算できる。また、金型などの曲面加工の結果を可視化する場合には、数十万回程度の直線移動に対応する掃引形状により、デクセルの切り詰め処理を行なうことになる。また、デクセル表現ではモデルの上面に段差が残るため、滑らかな表示が得られないことがある。そこで、立体モデルの上面を覆うように微小な三角形ポリゴンを貼り付け、段差を平面で補間して表示することもできる。
【００１４】
図２に、デプスバッファの利用による二つの立方体の隠面消去画像の説明図を示す。
ここで、立方体２０１及び２０２が、図示のような位置関係にある場合、観察者の視点２０３からの可視画像を考える。フレームバッファ２０４は、その際の可視画像を投影する２次平面である。立方体２０１及び２０２を視点２０３から観察した画像を、平行投影によりフレームバッファ２０４に描く。図示してあるように、フレームバッファ２０４上では、立方体２０１の面上の点２０６及び２０７、立方体２０２の面上の点２０８及び２０９が、同一のピクセル２０５で表される。なお、図中のｘ軸、ｙ軸、ｚ軸は、それぞれ処理の基準となる座標を表している。３次元コンピュータグラフィックスでは、立体の面のうち、他の面に隠されて観察者から見えない隠面を消去した画像を生成するために、デプスバッファ（又は、Ｚ−バッファ）と呼ばれるデータ構造を用いる。このデプスバッファを用いることで、視点２０３及びフレームバッファ２０４に最も近い点２０６が選択され、点２０６に相当する色・パターン・模様等の情報がピクセル２０５に与えられる。例えば、相当する情報が色の場合は、フレームバッファ２０４は、該当する色に染められる。
【００１５】
次に、２個の立方体２０１及び２０２の隠面を消去した画像を、平行投影によりフレームバッファ２０４へ描く具体的処理技術を説明する。以下の説明では、一例として、各面に該当する色をピクセル２０５に与える場合について説明する。処理の基準となる座標系を図示のように、フレームバッファ２０４上の任意の位置に、そのｚ軸の方向が観察者の視点２０３方向と一致するように与える。また、フレームバッファ２０４の各ピクセルと１対１に対応する要素からなる、デプスバッファと呼ばれる配列を用意し、各要素に初期値として十分に大きな数値を与えておき、立方体を構成する各多角形を、平行投影により順にフレームバッファ２０４へ描画していく。その際に、各ピクセルへ投影される多角形（正方体）上の点のｚ軸座標値を計算し、ピクセルに対応するデプスバッファ要素の値（これをデプス値とよぶ）と比較する。そして、ｚ軸座標値がデプス値よりも小さいときには、ピクセルを面上の点の色で染め、さらに、ｚ軸座標値を新しいデプス値として記録する。この一連の処理をデプスバッファ処理という。このような処理を全ての面について繰り返すと、結果として隠面を消去した画像がフレームバッファ２０４に描かれることになる。
【００１６】
デクセル表現に基づく切削加工のシミュレーションにおいて、最も手間を要するもののひとつは、切刃の掃引形状と交差するデクセルを検出し、それらを適切な長さに切り詰める処理である。ボールエンドミルの軸方向を観察者の視点方向に定めると、デクセルの集積をデプスバッファにより表現することが可能になる。このように置き換えると、デクセルの切り詰め処理は、掃引形状を構成する全ての球面と円筒形の隠面消去処理を行った画像を、デプスバッファを用いて計算することと同等の処理になる。多くの３次元グラフィックス表示装置は、デプスバッファ処理を用いた多面体の隠面消去処理を、ハードウェアで直接実行する機能を備えている。従って、３次元グラフィクス表示装置のデプスバッファ処理機能を活用するためには、掃引形状を構成する球面と円筒形を適切に多面体近似する必要がある。これは、ハードウェアによるデプスバッファ処理に要する時間が、隠面消去の対象となる多角形数に比例するので、できるだけ処理時間を短縮するためである。
【００１７】
従って、得られる画像に悪影響が生じない範囲で、近似球面や近似円筒形の多角形数を減らすことにより、加工結果の可視化処理をさらに高速化することができる。掃引形状を構成する球面の大部分は、球面に接続する円筒形の内部に入り込んでいるため、デクセルの切り詰めに関与しない。そこで、球面を多面体化する前に、円筒形内部に入り込んでいる部分を除去しておく必要がある。曲面をほぼ同一サイズの多角形を用いて多面体近似する場合、近似曲面を構成する多角形数は、曲面の面積にほぼ比例する。そのため、このように不要な部分を除去してから多面体化することで、デプスバッファ処理を行う多角形数を削減することができる。
【００１８】
図３に、ボールエンドミルによる掃引形状についての説明図を示す。図３（ａ）は、ボールエンドミルの切刃部と同一半径の球が連続した二つの直線移動を行った場合の球の掃引形状図を示している。円筒形３０２及び３０３は、ボールエンドミル先端の切刃と同一半径の球の掃引形状である。また、角度θは、円筒形３０２及び３０３の中心軸のなす角度を表している。球面３０１は、掃引形状の中にあり、この掃引形状の中ほどを構成する球面３０１のほとんどの部分が、両側の円筒形３０２と３０３の内部に入り込んでいる。このような入り込んだ部分は、デクセルの切り詰めに関与し得ないので、多面体化やデプスバッファ処理等は不要である。
【００１９】
図３（ｂ）は、掃引形状図の円筒形３０２及び３０３と球面３０１が接続する箇所において、球面３０１を分割し不要部分を除去する様子を示している。図示のように、多面体近似を行う前に、両側の円筒形３０２及び３０３の終端面を含む２枚の平面３０４と３０５を用いて、球面３０１を分割する。そして、円筒形３０２及び３０３の内部に入り込んでいる球面３０１の部分を除去した結果、くさび形状３０６が得られる。分割に用いる２枚の平面は、共に球面３０１の中心を通過するので、最後に残る部分である刃にあたる辺が、球の直径に対応するくさび形状３０６となる。
【００２０】
ボールエンドミル等の滑らかな移動を考慮した工具の移動経路では、経路中の連続した二つの直線移動のなす角度θは極めて小さいものになる。このとき、くさび形状３０６は非常に薄いものになるので、この形状の多面体近似に要する多角形数もごく少数となる。金型加工の場合には、工具移動の回数は数十万回にも及ぶ場合があるが、対応する球の掃引形状を構成する球面の大部分は、上述の手法により薄いくさび形状に変換されるため、デプスバッファ処理を必要とする多角形数は大幅に削減される。
【００２１】
図４に、本発明に係るハードウェアの構成図を示す。
この実施の形態は、中央処理装置である処理部（ＣＰＵ）１と、データを入力する入力部２と、入力されたデータを記憶する記憶部３と、出力部４と、３次元グラフィックス表示部５とを有する。図からもわかるように、ＣＰＵ１、入力部２、記憶部３、出力部４及び３次元グラフィックス表示部５は、スター又はバス等の適宜の接続手段で接続されている。
【００２２】
３次元グラフィックス表示部５は、前述の隠面消去の画像を、デプスバッファを用いることにより生成するハードウェアの装置である。３次元グラフィックス表示部５は、ハードウェア処理により高速にデプスバッファ処理を行うことができる。また、３次元グラフィックス表示部５は、例えば、ボード、カード又は他の装置として構成され、ＣＰＵ１等と一体に構成されていても、別個の構成であっても良い。出力部４は、３次元グラフィックス表示部５で生成され、フレームバッファへ描画された隠面消去の画像をディスプレイ上に表示する又は他の装置に出力する装置である。なお、出力部４は、バスに直接接続されるように構成することもできる。
【００２３】
図５に、処理アルゴリズムのフローチャートを示す。以下に、この図４の構成図及び、このフローチャートを参照して具体的な処理について説明する。
まず、ステップＳ１００においては、ボールエンドミルによるＮＣ加工のシミュレーションを行なうために、加工前の工作物の立体モデル、ボールエンドミルの形状データ、ボールエンドミルの移動経路等の情報を、入力部２から記憶部３に入力する。また、ここでは、工作物の形状や移動経路の基準となる直交座標系を、そのｚ軸がボールエンドミルの軸方向と一致するように与える。以下の説明では、一例として、ｘｙ平面に垂直な任意の直線と工作物の関係が、「交差なし」、「一点で交差」、「一線分で交差」のいずれかであることを仮定する。「交差なし」とは、直線と工作物が全く交わらないことであり、「一点で交差」とは、直線と工作物が一点で接する状態のときをいい、「一線分で交差」とは、直線と工作物の交差が一線分となるときをいう。また、説明中、工作物の形状がｘｙ平面に関して単調ということは、工具と工作物の位置関係が上記のような関係のいずれかに該当する場合をいう。金型用の素材は一般に直方体でありこの条件を満たす。また、このような工作物をボールエンドミルを用いて、切削加工した後の形状も、ｘｙ平面に関して単調となる。尚、本発明は、単調な場合以外にも適宜応用することができる。
【００２４】
ここで、拡大表示が必要な場合は、視体積と工作物モデルの積立体を新しい工作物モデルとする（Ｓ１０１）。加工結果の表示に用いる表示装置４の解像度は、現在、高品位なものでも１，０００×１，０００ピクセル程度である。従って、工作物表面の微細な形状誤差を評価するためには、その部分を拡大表示する必要がある。尚、３次元コンピュータグラフィックスでは、図形の描画法として透視投影を用いることが多い。そして、透視投影では、視点と画面の周囲の辺を結ぶ四角錐とその延長の内部の図形しか画面に描画されない。このような（底のない）四角錐を視体積と呼ぶ。
【００２５】
図６に、拡大表示の説明図を示す。図６（ａ）は、視点と画面を共に工作物へ接近させて拡大した映像を得る方法を図示している。図中、工作物を視点６０１から見ると、画面６０２の範囲が示される。図６（ｂ）は、画面を縮小させることで工作物の一部を画面全体へ描画させ、結果として拡大した映像を得る方法を図示している。図中、工作物を視点６０１から見ると、画面６０３の範囲が示される。
【００２６】
工作物を拡大表示する場合には、図６（ａ）のように視点６０１と画面６０２を工作物の観察したい部分へ接近させるか、または、図６（ｂ）のように画面６０３を縮小して視体積を狭める方法がある。いずれの場合も、工作物の一部（図中の灰色の部分）だけが、画面全体に拡大されて投影されることになる。工作物を拡大表示し、加工結果を可視化する場合には、視体積の外部の工作物の形状を無視することができる。そこで、本発明では、視体積と加工前の工作物形状の積にあたる立体を計算し、これを新しい工作物形状と考えて以下の処理を行なうことにより、拡大表示を実行することができる。視体積は凸図形なので、もとの工作物の形状がｘｙ平面に関して単調であれば、積立体の形状もｘｙ平面に関して単調となる。
【００２７】
次に、ステップ１０２では、基準座標系のｘｙ平面上に、ｘ軸とｙ軸に平行かつ等間隔な直交格子を、工作物のｘｙ平面への投影を覆うように生成する。そして、各格子の中心を通過するｚ軸に平行な直線を考え、これと工作物の交差に相当する線分を計算する。これらの線分を格子と同じ太さの直方体へ置き換えることで、工作物をデクセル表現へ変換する（図１及びその説明箇所参照）。工作物の形状はｘｙ平面に関して単調なので、各格子には０または１本のデクセルが対応する。
【００２８】
一般に、間隔ｗを小さくするほど、精密な可視化が可能になる。しかし、１／ｗの平方に比例してデクセル数が増加するため、必要な記憶容量と処理時間が膨大なものになる。また、計算機画面の解像度以上のデクセルへ分割しても、細部がつぶれてしまい、得られる画像の品質は向上しない。そこで、計算機画面の解像度に基づいて、例えば、デクセルの総数が１，０００×１，０００個程度になるように、間隔ｗを調整することができる。工作物の一部を拡大表示する場合には、その部分だけ工作物全体を表示する場合と同数のデクセルへ分割するので、結果的に間隔ｗは非常に小さいものになり、より精密な可視化が行われることになる。
【００２９】
ステップＳ１０３では、工作物の形状がｘｙ平面に関して単調であること、また、デクセルの中心軸とボールエンドミルの回転軸が共にｚ軸方向であることから、加工シミュレーションは、移動する工具の掃引形状により、デクセルの上端を切り詰めていく処理の繰り返しとなる。掃引形状の下面は、ボールエンドミル先端の半球形切刃の移動により生成される。そこで、工具全体ではなく、ボールエンドミル先端の半球形切刃と同一半径の球の掃引形状による、デクセルの切り詰め処理を考える。
【００３０】
図７に、ボールエンドミルの切刃と同一半径の球の移動経路についての説明図を示す。この図では、ボールエンドミルの切刃が、微小な線分の連続として表現された経路に沿って移動しているものを表している。ここでは、直線移動の連続により生成される球の掃引形状の様子を示し、球面と円筒形を交互に結合したものの和形状となっている。工作物の加工後の形状は、デクセルの集積の上において、これらの球面と円筒形を用いて順に切り詰めることで計算できる。
【００３１】
次に、ステップＳ１０４では、掃引形状を構成するくさび形状と円筒形を計算する。本発明では、球面や円筒形によるデクセルの切り詰め作業を、３次元グラフィックス表示部５の上述のデプスバッファ処理機能を用いてハードウェアにより行なう。このデプスバッファ処理機能を用いるためには、球面と円筒形を適切に多面体近似する必要がある。前述のように、掃引形状を構成する各球面のほとんどの部分は、その前後の円筒形の内部に入り込んでおり、デクセルの切り詰めには関与しない（図３及びその説明箇所参照）。そこで、各球面から、両側の円筒形の内部に入り込んでいる部分を削除し、くさび形状を生成する。一般に、切削加工用の工具経路は、ボールエンドミルが滑らかに移動するように生成される。その場合、ほとんどのくさび形状は非常に薄いものになるので、それらを多面体近似した場合、その多角形数をごく少数に抑えることができる。
【００３２】
ステップ１０５では、くさび形状と円筒形を以下の手順で多面体化する。
図８に、くさび形状と円筒形の多面体近似手法についての説明図を示す。図８（ａ）は、くさび形状の球面部を等幅の細片へ分割し、さらにその細片を等しい間隔で分割する方法を示している。図８（ｂ）は、円筒形を等幅の長方形を鎧状につないだものとして、多面体化する方法を示している。尚、図中の長さｄは、近似円筒形状やくさび形状を構成する四辺形のサイズを表している。
【００３３】
くさび形状は、球面部を、図８（ａ）に示すような幾つかの等幅な細片へ分割し、得られた各細片をさらに等しい間隔で分割することで、微小な四辺形（細片の両端のみ三角形）の集合として多面体近似する。円筒形状は、図８（ｂ）に示すような、等しい幅の長方形を鎧状につないだものとして多面体近似する。多面体を構成する多角形のうち、デクセルの切り詰め（デプス値の更新）に関与するのは、掃引形状の下面に対応するものだけである。従って、法線が上向きの多角形は、掃引形状の下面になり得ず、以後の３次元グラフィックス表示部５を用いたデプスバッファ処理から除外できる。
【００３４】
曲面の近似精度は、近似円筒形状を構成する細片の幅や、近似くさび形状を構成する四辺形の最大サイズ（図８（ａ）及び（ｂ）中の長さｄ）により決まる。長さｄを大きくすると近似曲面の多角形数は減少するが、大きくしすぎると、生成される画像に、多面体化に起因する「折れ曲がり」が生じてしまう。長さｄの値が、デクセルの間隔ｗ以下の時には、多面体化は画質に全く影響を与えない。実際には、長さｄが、多少、間隔ｗより大きくても画像にほとんど変化はみられない。そこで、ｄ＞ｗであるような様々な長さｄを用いて、多面体化処理を行うことで、適当な長さｄ及び間隔ｗを設定することができる。また、多面体近似されたくさび形状や円筒形状を用いて可視化した場合と、くさび形状や円筒形状をそのまま用いて可視化した場合で、得られる画像の品質を比較し、どの程度まで長さｄを大きくできるか調査することができる。その結果、例えば、ｄ＝２ｗ程度であれば、多面体化の影響が画像に現れないことを確認した。勿論、この値に限定されず、工作物、工具等の形状により適宜の値を定めることができる。
【００３５】
以上のようなソフトウェアによる処理の後、全多角形データが３次元グラフィックス表示部５に伝送される。３次元グラフィックス表示部５では、特に、ハードウェアにより以下のような処理を高速に行う。
【００３６】
まず、ステップＳ１０６では、多面体近似されたくさび形状や円筒形状の表面を覆う多角形群が、全多角形データとして３次元グラフィックス表示部５へ入力される。工作物のデクセル化のもとになるｘｙ平面上の直交格子をフレームバッファと見なし、隠面消去処理を行い、平行投影によりフレームバッファへ描画して、多角形群をｚ軸の負方向から観察した画像を生成する。また、３次元グラフィックス表示部５のデプスバッファ処理機能は、前述の隠面消去の手順にしたがってデプスバッファの内容を更新する。次に、３次元グラフィックス表示部５は、ステップＳ１０７において、デプスバッファの各要素に記録されているデプス値を求める。３次元グラフィックス表示部５が、全てのくさび形状と円筒形状を描き終えたとき、デプスバッファの各要素のデプス値は、対応するデクセル上を通過する球の掃引形状の最下面高さであるｚ座標値を表す。３次元グラフィックス表示部５から求められた全デプス値が、再びソフトウェア側の処理へ伝送される。
【００３７】
ソフトウェア処理では、ステップＳ１０８において、ＣＰＵ１が工作物モデルを構成する全デクセルについて、現在のデクセルの高さ（これは、加工前の工作物のデクセルごとの高さを表す）と対応するデプス値とを比較し、デプス値がデクセルの高さよりも小さい時には、デクセルの高さをデプス値まで切り詰める。なお、デクセル表現では、モデルの上面に段差が残るため、そのままでは滑らかな表示が得られない。そこで、ステップＳ１０９おいて、モデルの上面を覆うように、デクセルの上端に微小な三角形を貼り付け、段差を平面で補間して多面体化して表示する。そして、このようなソフトウェアによる処理の後、３次元グラフィックス表示部５へ、デクセル上端に貼り付けられた三角形群のデータ（全三角形データ）を伝送する。
【００３８】
３次元グラフィックス表示部５は、ステップＳ１１０において、伝送された全三角形データに基づいてハードウェアによる処理を実行し、その隠面消去した画像をフレームバッファへ描画し、その投影図を出力部４へ表示又は出力する。
【００３９】
次に、本発明に係る３次元グラフィックス表示部５のデプスバッファ処理機能を利用した加工結果の可視化プログラムの有効性について説明する。本発明の有効性を検証するために、一例として、デクセルの総数が１，０２４×１，０２４になるように間隔ｗを調整した工作物モデルを用いた。また、一例として、ＣＰＵ１のクロック数が１９５ＭＨｚで、主記憶容量が５１２ＭＢのワークステーションで計算実験を行った。このワークステーションには、３次元グラフィックス表示のための専用ハードウェアが備えられている。描画する多角形の形状を、ＯｐｅｎＧＬ（Ｏｐｅｎ  Ｇｒａｐｈｉｃｓ  Ｌｉｂｒａｒｙ）とよばれるライブラリの仕様にしたがってプログラムに記述すると、デプスバッファ処理を３次元グラフィックスハードウェアで実行する機械語コードをコンパイラが自動生成する。
【００４０】
図９に、金型の仕上げ加工用のＮＣコードによる加工結果を可視化した画像の図を示す。
また、図１０に、加工結果の一部を拡大表示した画像の図を示す。
図９及び図１０からもわかるように、本発明に係る３次元グラフィックス表示装置によると工具マークのような微小な凹凸まで評価可能な、高品質の画像が得られることがわかる。
【００４１】
次に、デクセルの切り詰め処理を従来のソフトウェアで行うプログラムと、３次元グラフィックス表示部のデプスバッファ処理機能を用いて行うプログラムを用意し、同一条件下で処理に要する時間を比較した。実験の条件や利用した計算機は、上述のものと同じである。実験には、一例として、４種類のＮＣコードを用いた。これらはいずれも、実際の金型の粗加工と仕上げ加工用に生成されたものである。
【００４２】
図１１に、本発明と従来との比較実験結果の説明図を示す。図では、各ＮＣコードでの工具の直線移動回数１０及びボールエンドミルの半径２０の条件で、デクセルの切り詰め処理をソフトウェアで行い加工結果を可視化した場合の従来の計算時間３０と、これと前述と同じ処理を本発明に係る３次元グラフィックス表示部５を用いて行った場合の計算時間４０を示している。
【００４３】
例えば、直線移動回転数１０が９，５４２回で、ボールエンドミルの半径２０が５．０ｍｍの場合、従来の計算時間３０は１６．８３秒かかるのに対して、本発明の計算時間４０は０．９９秒である。直線移動回転数１０が３５，３９１回で、ボールエンドミルの半径２０が３．０ｍｍの場合、従来の計算時間３０は１５．９３秒かかるのに対して、本発明の計算時間４０は１．６５秒である。
【００４４】
以上のような比較実験結果より、本発明に係る３次元グラフィックス表示部では、従来の装置よりも４倍から１５倍の高速化が実現できること、また、複雑な切削加工の結果を１〜２秒で可視化できることが分かる。
【００４５】
なお、本発明では、工具はボールエンドミルに限らず、適宜のものが使用可能であり、また、掃引形状は球面及び円筒形に限らず工具の先端形状により楕円面、多角形面、凹凸面など適宜の形状のものなどにも使用できる。また、工作物は金型に限らず、プラスチック、金属等の各材料の様々な工作物にも本発明を適用することが可能である。全デプスデータ、全多角形データ、全三角形データを処理部と３次元グラフィックス表示部で入力又は出力しているが、全ての各データに限らず、一部の各データをやりとりするようにしても良い。さらには、表面の近似として多面体及び多角形として三角形を例に説明したが、これに限らず適宜の多角形を用いることが出来る。
【００４６】
【発明の効果】
本発明によると、以上のように、ボールエンドミル等の工具による切削加工をすることで得られる工作物の形状を、高速にグラフィックス表示することができる。また、本発明によると、ハードウェアで構成された３次元グラフィックス表示部を利用して、処理装置を用いて切削加工の過程をシミュレーションし、加工後の工作物の形状を可視化することができ、さらには、金型への削り込みや削り残しなどの加工上の問題を実際の加工前に検出確認することを可能とし、加工に要する手間を低減することができる。
また、３次元グラフィックス表示部は、今後の高速化が最も期待されている半導体デバイスなので、将来、本発明による表示処理をさらに高速化することが可能である。
【図面の簡単な説明】
【図１】工作物の切り詰め処理についての説明図。
【図２】デプスバッファの利用による二つの立方体の隠面消去画像の説明図。
【図３】ボールエンドミルによる掃引形状についての説明図。
【図４】本発明に係るハードウェアの構成図。
【図５】処理アルゴリズムのフローチャート。
【図６】拡大表示の説明図。
【図７】ボールエンドミルの切刃と同一半径の球の移動経路についての説明図。
【図８】くさび形状と円筒形の多面体近似手法についての説明図。
【図９】金型の仕上げ加工用のＮＣコードによる加工結果を可視化した画像の図。
【図１０】加工結果の一部を拡大表示した画像の図。
【図１１】本発明と従来との比較実験結果の説明図。
【符号の説明】
１  処理部
２  入力部
３  記憶部
４  出力部
５  ３次元グラフィックス表示部
【図１】
0003571564.tif 000002
【図２】
0003571564.tif 000003
【図３】
0003571564.tif 000004
【図４】
0003571564.tif 000005
【図５】
0003571564.tif 000006
【図６】
0003571564.tif 000007
【図７】
0003571564.tif 000008
【図８】
0003571564.tif 000009
【図９】
0003571564.tif 000010
【図１０】
0003571564.tif 000011
【図１１】
0003571564.tif 000012