(57)【特許請求の範囲】
【請求項１】
ｘｙｚ座標系におけるｘｙｚ座標値を有する複数のグリッドから構成されるレリーフ・メッシュで表現される元形状データが示す元形状を、ツールにより被加工物を切削して形成する際におけるツールのツール・パスを得るためのオフセット形状データを算出するオフセット形状データの算出方法において、
ｘ−ｙ座標面において、前記レリーフ・メッシュのｘ−ｙ軸方向における大きさに対して、ｘｙｚ座標系におけるｘｙｚ座標値を有する複数のグリッドから構成されるツール・メッシュで表現されるツール倒立形状データが示す倒立させた前記ツールの先端形状に対応するツール倒立形状のｘ−ｙ軸方向における大きさの少なくとも半分の大きさで拡張するとともに、ｘｙｚ座標系におけるｘｙｚ座標値を有する複数のグリッドのｚ座標値を前記ツール・メッシュを構成する全てのグリッドのｚ座標値の中で最も大きいｚ座標値で初期化したｘｙｚ座標系におけるｘｙｚ座標値を有する複数のグリッドから構成されるオフセット・メッシュを生成し、前記レリーフ・メッシュと前記ツール・メッシュと前記オフセット・メッシュとはいずれも前記グリッド相互の間隙たるグリッド幅が同一で、前記ｘ−ｙ座標面においてそれぞれを構成するグリッドが互いに一致する前記レリーフ・メッシュ、前記ルーツ・メッシュならびに前記オフセット・メッシュを準備する第１のステップと、
前記レリーフ・メッシュの所定のグリッドに前記ツール・メッシュを構成する全てのグリッドのｚ座標値の中で最も大きいｚ座標値を有するグリッドが一致して前記ツール・メッシュが位置する範囲において、前記オフセット・メッシュの従前のｚ座標値とｘ−ｙ座標面において一致する前記ツール・メッシュのｚ座標値と前記レリーフ・メッシュのｚ座標値とを加算した和であるｚ座標値とを比較する第２のステップと、
前記第２のステップにおける比較処理の結果、前記オフセット・メッシュの従前のｚ座標値に比べて前記ツール・メッシュのｚ座標値と前記レリーフ・メッシュのｚ座標値とを加算した和であるｚ座標値が大きい場合には、該ツール・メッシュのｚ座標値と前記レリーフ・メッシュのｚ座標値とを加算した和であるｚ座標値を前記オフセット・メッシュに保持する第３のステップと、
前記レリーフ・メッシュの全てのグリッドについて前記ツール・メッシュの前記最も大きいｚ座標値を有するグリッドが一致するようにして前記ツール・メッシュをグリッド毎に順次移動しながら、前記第２のステップと前記第３のステップとを繰り返し、前記第１のステップにおいて前記ツール・メッシュの前記最も大きいｚ座標値に初期化された前記オフセット・メッシュを構成する全てのグリッドのｚ座標値が、対応する前記ツール・メッシュのｚ座標値と前記レリーフ・メッシュのｚ座標値とを加算した和となった前記オフセット・メッシュを得る第４のステップと
を有するオフセット形状データの算出方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、オフセット形状データの算出方法に関し、さらに詳細には、数値制御による加工装置、特に３次元形状の加工装置において、当該３次元形状を被加工物から削り出すための工具（ツール）の移動経路（ツール・パス）を得るためのオフセット形状データを算出する際に用いて好適なオフセット形状データの算出方法に関する。
【０００２】
【従来の技術】
従来より、マイクロ・コンピューターと、熱可塑性樹脂材料などの被加工物を切削するツールと、上記したマイクロ・コンピューターの制御によって上記したツールを３次元方向に移動するモーターなどの駆動装置とを有し、所定のプログラムに従った当該マイクロ・コンピューターの制御によって当該駆動装置を用いて当該ツールを３次元方向に任意に移動させることにより、熱可塑性樹脂材料などの被加工物から所望の３次元形状を削り出すことができるようにした３次元切削加工装置が知られている。
【０００３】
ところで、こうした３次元切削加工装置においては、駆動装置によってツールがツール・パスに従って３次元方向に移動されることにより、被加工物から所望の３次元形状が削り出されることになる。
【０００４】
ここで、図１（ａ）（ｂ）を参照しながら説明すると、ツールとしてボール・エンド・ミルを用いる場合のツール・パスとは、被加工物から削り出される所望の３次元形状（以下、本明細書においては、「被加工物から削り出される所望の３次元形状」を「元形状」と適宜称することとする。）から、ツールの先端形状（図１（ａ）（ｂ）の斜線領域に相当する。）分だけシフトした形状（「以下、本明細書においては、「元形状からツールの先端形状分だけシフトした形状」を「オフセット形状」と適宜称することとする。）のある一つの断面である。
【０００５】
即ち、ツール・パスの集合がオフセット形状であり、当該オフセット形状を求めるには、例えば、図１（ａ）に示すように、ツールの先端を元形状に沿って移動させ、その際のツールの中心の軌跡をオフセット形状として求めるようにしてよいし、また、図１（ｂ）に示すように、倒立させたツールの中心を元形状に沿って移動させ、その際の倒立させたツールの先端形状の軌跡のなかで高さが最大となる部分をオフセット形状として求めるようにしてもよい。
【０００６】
一方、３次元形状の元形状から上記したオフセット形状を得るには、例えば、マイクロ・コンピューターの数値演算により元形状の所定領域毎のオフセット形状を示すポリゴンを作成し、当該作成された複数のポリゴンを合成することにより元形状の全体のオフセット形状を得るようになされている。
【０００７】
上記した手法、即ち、従来のオフセット形状データの算出方法について、図２（ａ）（ｂ）を参照しながら詳述すると、ツールとしてボール・エンド・ミルを用いる場合に、元形状１００（図２（ａ）斜線部分）から当該元形状１００に対するオフセット形状３００（図２（ｂ））を示すオフセット形状データを数値演算により算出するためには、まず、マイクロ・コンピューターの数値演算により元形状１００の面１００ａから矩形のポリゴン２００ａを作成し、稜線１００ｂ、１００ｃ、１００ｄ、１００ｅから半円筒形のポリゴン２００ｂ、２００ｃ、２００ｄ、２００ｅをそれぞれ作成し、頂点１００ｆ、１００ｇ、１００ｈ、１００ｉから半球形のポリゴン２００ｆ、２００ｇ、２００ｈ、２００ｉをそれぞれ作成し、当該作成された９個のポリゴン２００ａ、２００ｂ、２００ｃ、２００ｄ、２００ｅ、２００ｆ、２００ｇ、２００ｈ、２００ｉを合成し、当該合成したポリゴンからオフセット形状３００を構成してオフセット形状データが得られるものである。
【０００８】
しかしながら、上記したような従来のオフセット形状データの算出方法においては、元形状の所定領域毎にポリゴンを作成する処理や、当該作成した複数のポリゴンを合成する処理や、当該合成したポリゴンからのオフセット形状を生成する処理などの多くの数値演算を行う必要があり、オフセット形状データの算出に長時間要するという問題点があった。
【０００９】
また、従来のオフセット形状データの算出方法においては、多量の数値演算に伴い数値演算誤差が生起され、こうした数値演算誤差により生成されたオフセット形状データの示すオフセット形状に破れや突出などが発生するという問題点があった。
【００１０】
【発明が解決しようとする課題】
本発明は、上記したような従来の技術の有する問題点に鑑みてなされたものであり、その目的とするところは、被加工物から所望の３次元形状を削り出す３次元切削加工装置におけるツール・パスを得るためのオフセット形状データの生成に際して、少ない演算量で高速に元形状からオフセット形状データを生成することができるようにするとともに、当該生成したオフセット形状データの示すオフセット形状に破れや突出などが存在しないようにしたオフセット形状データの算出方法を提供しようとするものである。
【００１１】
【課題を解決するための手段】
上記目的を達成するために、本発明のうち請求項１に記載の発明は、ｘｙｚ座標系におけるｘｙｚ座標値を有する複数のグリッドから構成されるレリーフ・メッシュで表現される元形状データが示す元形状を、ツールにより被加工物を切削して形成する際におけるツールのツール・パスを得るためのオフセット形状データを算出するオフセット形状データの算出方法において、ｘ−ｙ座標面において、上記レリーフ・メッシュのｘ−ｙ軸方向における大きさに対して、ｘｙｚ座標系におけるｘｙｚ座標値を有する複数のグリッドから構成されるツール・メッシュで表現されるツール倒立形状データが示す倒立させた上記ツールの先端形状に対応するツール倒立形状のｘ−ｙ軸方向における大きさの少なくとも半分の大きさで拡張するとともに、ｘｙｚ座標系におけるｘｙｚ座標値を有する複数のグリッドのｚ座標値を上記ツール・メッシュを構成する全てのグリッドのｚ座標値の中で最も大きいｚ座標値で初期化したｘｙｚ座標系におけるｘｙｚ座標値を有する複数のグリッドから構成されるオフセット・メッシュを生成し、上記レリーフ・メッシュと上記ツール・メッシュと上記オフセット・メッシュとはいずれも上記グリッド相互の間隙たるグリッド幅が同一で、上記ｘ−ｙ座標面においてそれぞれを構成するグリッドが互いに一致する上記レリーフ・メッシュ、上記ルーツ・メッシュならびに上記オフセット・メッシュを準備する第１のステップと、上記レリーフ・メッシュの所定のグリッドに上記ツール・メッシュを構成する全てのグリッドのｚ座標値の中で最も大きいｚ座標値を有するグリッドが一致して上記ツール・メッシュが位置する範囲において、上記オフセット・メッシュの従前のｚ座標値とｘ−ｙ座標面において一致する上記ツール・メッシュのｚ座標値と上記レリーフ・メッシュのｚ座標値とを加算した和であるｚ座標値とを比較する第２のステップと、上記第２のステップにおける比較処理の結果、上記オフセット・メッシュの従前のｚ座標値に比べて上記ツール・メッシュのｚ座標値と上記レリーフ・メッシュのｚ座標値とを加算した和であるｚ座標値が大きい場合には、該ツール・メッシュのｚ座標値と上記レリーフ・メッシュのｚ座標値とを加算した和であるｚ座標値を上記オフセット・メッシュに保持する第３のステップと、上記レリーフ・メッシュの全てのグリッドについて上記ツール・メッシュの上記最も大きいｚ座標値を有するグリッドが一致するようにして上記ツール・メッシュをグリッド毎に順次移動しながら、上記第２のステップと上記第３のステップとを繰り返し、上記第１のステップにおいて上記ツール・メッシュの上記最も大きいｚ座標値に初期化された上記オフセット・メッシュを構成する全てのグリッドのｚ座標値が、対応する上記ツール・メッシュのｚ座標値と上記レリーフ・メッシュのｚ座標値とを加算した和となった上記オフセット・メッシュを得る第４のステップとを有するようにしたものである。
【００１２】
従って、本発明のうち請求項１に記載の発明によれば、レリーフ・メッシュの所定のグリッドにツール・メッシュを構成する全てのグリッドのｚ座標値の中で最も大きいｚ座標値を有するグリッドが一致してツール・メッシュが位置する範囲において、オフセット・メッシュの従前のｚ座標値に比べてツール・メッシュのｚ座標値とレリーフ・メッシュのｚ座標値とを加算した和であるｚ座標値が大きい場合には、当該ツール・メッシュのｚ座標値とレリーフ・メッシュのｚ座標値とを加算した和であるｚ座標値がオフセット・メッシュに保持されるので、単にツール・メッシュのｚ座標値とレリーフ・メッシュのｚ座標値との加算によってオフセット・メッシュを生成することができ、少ない演算量で高速で元形状からオフセット形状データを生成することができるとともに、生成されるオフセット形状データが３Ｄメッシュたるオフセット・メッシュを表すデータであるので、数値演算誤差の発生を抑制することができ、生成されたオフセット形状データの示すオフセット形状における破れや突出などの発生を回避できる。
【００１５】
【発明の実施の形態】
以下、添付の図面に基づいて、本発明によるオフセット形状データの算出方法の実施の形態の一例を詳細に説明するものとする。
【００１６】
図３には、本発明によるオフセット形状データの算出方法を実現する３次元切削加工装置の実施の形態の一例を示すブロック構成図が示されている。
【００１７】
この３次元切削加工装置は、制御装置１０によって全体の動作が制御されており、制御装置１０は、リード・オンリ・メモリ（ＲＯＭ）１０ｂに格納されたプログラムに従った処理を実行する中央処理装置（ＣＰＵ）１０ａと、ＣＰＵ１０ａが実行するプログラムなどを格納したＲＯＭ１０ｂと、ＣＰＵ１０ａの制御によって入力装置１２を介して入力された元形状を示す元形状データを記憶する元形状データ記憶部１０ｃ−１とツール倒立形状を示すツール倒立形状データを記憶するツール倒立形状データ記憶部１０ｃ−２とオフセット形状を示すオフセット形状データを記憶するオフセット形状データ記憶部１０ｃ−３とが設定されたランダム・アクセス・メモリ（ＲＡＭ）１０ｃとを有して構成されている。
【００１８】
そして、制御装置１０には、入力装置１２と、ＣＰＵ１０ａの制御によってツールとしての熱可塑性樹脂材料などの被加工物を切削するボール・エンド・ミル１６を３次元方向に移動する駆動装置１４とが接続されている。
【００１９】
ここで、入力装置１２は、例えば、フロッピー・ディスク・ドライブ（ＦＤＤ）などであり、被加工物から削り出される所望の３次元形状たる元形状を示す元形状データを、この３次元切削加工装置の外部から入力するものである。
【００２０】
また、ボール・エンド・ミル１６は、被加工物に対してツール・パスに従い３次元方向に移動し、被加工物から元形状を削り出すものである。
【００２１】
以上の構成において、ＣＰＵ１０ａの制御に基づいて、入力装置１２によって入力された元形状を示す元形状データは元形状データ記憶部１０ｃ−１に記憶される。
【００２２】
そして、元形状データ記憶部１０ｃ−１に記憶されている元形状データを用い、ＣＰＵ１０ａの制御によって本発明によるオフセット形状データの算出の処理が行われる。この処理によって生成されオフセット形状データ記憶部１０ｃ−３に記憶されたオフセット形状デーから得られるツール・パスに従って駆動装置１４が駆動され、この駆動装置１４の駆動に応じてボール・エンド・ミル１６が３次元方向で移動されて、被加工物から元形状データの示す元形状が削り出されることになる。
【００２３】
次に、添付のフローチャートを参照しながら、上記した３次元切削加工装置により実行される本発明によるオフセット形状データの算出方法の処理について説明することとする。
【００２４】
なお、以下の説明においては、本発明の実施に関連するオフセット形状データの算出の処理に関してのみ詳細に説明することとし、従来より公知の処理、例えば、入力装置１２を介して入力された元形状データを元形状データ記憶部１０ｃ−１に記憶する処理や、あるいはオフセット形状データからツール・パスを得て、当該ツール・パスに従って駆動装置１４を駆動する処理などについては、その詳細な説明は省略するものとする。
【００２５】
ここで、図４（ａ）には、本発明によるオフセット形状データの算出の処理の概要を示す説明図が示されており、図４（ｂ）には、オフセット形状データの示すオフセット・メッシュ４０が模式的に示されており、図４（ｃ）には、ツール倒立形状データの示すツール・メッシュ３０が模式的に示されており、図４（ｄ）には、元形状データの示すレリーフ・メッシュ２０が模式的に示されており、図５には、図４（ａ）におけるＡ矢視方向から見た状態の概念説明図が示されている。
【００２６】
まず、ＲＡＭ１０ｃに記憶されている本発明の実施に関連する上記のデータを、以下に詳しく説明する。
【００２７】
（１）元形状データ
元形状データは上記したように元形状を示すものであり、上記入力装置１２を介して入力され、ＣＰＵ１０ａの制御によって元形状データ記憶部１０ｃ−１に記憶されるものである。元形状データは、元形状データ記憶部１０ｃ−１から読み出されて使用されることになる。
【００２８】
また、元形状データは、ｘｙｚ座標系におけるｘｙｚ座標値を有する複数のグリッドから構成される３Ｄメッシュを表すものであり、この３Ｄメッシュをレリーフ・メッシュ２０（図４（ｄ）参照）と称することとする。
【００２９】
当該レリーフ・メッシュ２０を構成するグリッドそれぞれには座標値、即ち、位置情報たる「ｘ座標値」ならびに「ｙ座標値」と高さ情報たる「ｚ座標値」とが設定されているものである。
【００３０】
このレリーフ・メッシュ２０を形成するグリッドのｘ座標値ならびにｙ座標値は、ｘ−ｙ座標面においてレリーフ・メッシュ２０のグリッドのうちの最も左下に位置するグリッドＧ２１（図５参照）をレリーフ・メッシュ２０の原点たるｒ原点として設定されているものである。
【００３１】
また、レリーフ・メッシュ２０のｘ軸方向における大きさは、ｘ軸方向におけるグリッドの個数ｒｘであり、レリーフ・メッシュ２０のｙ軸方向における大きさは、ｙ軸方向におけるグリッドの個数ｒｙである。
【００３２】
従って、ｘ−ｙ座標面において長方形のレリーフ・メッシュ２０の４つの頂点たる、グリッドＧ２１の座標値（ｘ，ｙ）は（０，０）であり、グリッドＧ２２の座標値（ｘ，ｙ）は（ｒｘ−１，０）であり、グリッドＧ２３の座標値（ｘ，ｙ）は（０，ｒｙ−１）であり、グリッドＧ２４の座標値（ｘ，ｙ）は（ｒｘ−１，ｒｙ−１）である。
【００３３】
（２）ツール倒立形状データ
ツール倒立形状データはツール倒立形状を示すものであり、予めツール倒立形状データ記憶部１０ｃ−２に記憶されており、当該ツール倒立形状データ記憶部１０ｃ−２から読み出されて使用されることになる。
【００３４】
ここで、ツール倒立形状データが示すツール倒立形状は、倒立させたツールの先端形状（図１（ｂ）の斜線領域に相当する。）に対応するものであり、当該ツール倒立形状の高さ（後述するツール・メッシュ３０の中心Ｐのｚ座標値）は、ツールの先端形状の回転半径に等しいものである（図１（ｂ）参照）。
【００３５】
また、ツール倒立形状データは、ｘｙｚ座標系におけるｘｙｚ座標値を有する複数のグリッドから構成される３Ｄメッシュを表すものであり、この３Ｄメッシュをツール・メッシュ３０（図４（ｃ）参照）と称することとする。
【００３６】
当該ツール・メッシュ３０を構成するグリッドぞれぞれには座標値、即ち、位置情報たる「ｘ座標値」ならびに「ｙ座標値」と高さ情報たる「ｚ座標値」とが設定されているものである。
【００３７】
このツール・メッシュ３０のグリッドのｘ座標値ならびにｙ座標値は、ｘ−ｙ座標面においてツール・メッシュ３０を形成するグリッドのうちの最も左下に位置するグリッドＧ３１（図５参照）をツール・メッシュ３０の原点たるｔ原点として設定されているものである。
【００３８】
また、ツール・メッシュ３０のｘ軸方向における大きさは、ｘ軸方向におけるグリッドの個数ｔｘであり、ツール・メッシュ３０のｙ軸方向における大きさは、ｙ軸方向におけるグリッドの個数ｔｙである。なお、個数ｔｘと個数ｔｙとは等しいものである。
【００３９】
従って、ｘ−ｙ座標面において正方形のツール・メッシュ３０の４つの頂点たる、グリッドＧ３１の座標値（ｘ，ｙ）は（０，０）であり、グリッドＧ３２の座標値（ｘ，ｙ）は（ｔｘ−１，０）であり、グリッドＧ３３の座標値（ｘ，ｙ）は（０，ｔｙ−１）であり、グリッドＧ３４の座標値（ｘ，ｙ）は（ｔｘ−１，ｔｙ−１）である。
【００４０】
一方、このツール・メッシュ３０を構成するグリッドのｚ座標値については、座標値（ｘ，ｙ）が（（ｔｘ−１）／２，（ｔｙ−１）／２）であるグリッドＧ３５のｚ座標値が、当該ツール・メッシュ３０を構成する全てのグリッドのｚ座標値の中で最も大きい。（なお、本明細書においては、「グリッドＧ３５」を「ツール・メッシュ３０の中心Ｐ」と適宜称することとする。）。
【００４１】
そして、当該グリッドＧ３５以外のグリッドのｚ座標値は、ツール・メッシュ３０が半円球（図４（ｃ）参照）となるような値を有するものである。
【００４２】
（３）オフセット形状データ
オフセット形状データはオフセット形状を示すものであり、本発明によるオフセット形状データの算出の処理によって生成されてオフセット形状データ記憶部１０ｃ−３に記憶されるものである。オフセット形状データは、オフセット形状データ記憶部１０ｃ−３から読み出されて、ツール・パスを得るために使用されることになる。
【００４３】
また、オフセット形状データは、ｘｙｚ座標系におけるｘｙｚ座標値を有する複数のグリッドから構成される３Ｄメッシュを表すものであり、この３Ｄメッシュをオフセット・メッシュ４０（図４（ｂ）参照）と称することとする。
【００４４】
当該オフセット・メッシュ４０を構成するグリッドそれぞれには座標値、即ち、位置情報たる「ｘ座標値」ならびに「ｙ座標値」と高さ情報たる「ｚ座標値」とが設定されているものである。
【００４５】
このオフセット・メッシュ４０を形成するグリッドのｘ座標値ならびにｙ座標値は、ｘ−ｙ座標面においてオフセット・メッシュ４０のグリッドのうちの最も左下に位置するグリッドＧ４１（図５参照）をオフセット・メッシュ４０の原点たるｏ原点として設定されているものである。
【００４６】
また、オフセット・メッシュ４０のｘ軸方向における大きさは、ｘ軸方向におけるグリッドの個数ｏｘであり、オフセット・メッシュ４０のｙ軸方向における大きさは、ｙ軸方向におけるグリッドの個数ｏｙである。
【００４７】
従って、ｘ−ｙ座標面において長方形のオフセット・メッシュ４０の４つの頂点たる、グリッドＧ４１の座標値（ｘ，ｙ）は（０，０）であり、グリッドＧ４２の座標値（ｘ，ｙ）は（ｏｘ−１，０）であり、グリッドＧ４３の座標値（ｘ，ｙ）は（０，ｏｙ−１）であり、グリッドＧ４４の座標値（ｘ，ｙ）は（ｏｘ−１，ｏｙ−１）である。
【００４８】
そして、オフセット・メッシュ４０のｏ原点（グリッドＧ４１）は、レリーフ・メッシュ２０のｒ原点（グリッドＧ２１）に対して、ｘ軸方向における左方向にシフト量ｓｘ、ｙ軸方向における下方向にシフト量ｓｙでシフトしている。
【００４９】
当該シフト量ｓｘは、ツール・メッシュ３０のｘ軸方向における大きさの半分（ｔｘ／２）であり、シフト量ｓｙは、ツール・メッシュ３０のｙ軸方向における大きさの半分（ｔｙ／２）である。上記したように個数ｔｘと個数ｔｙとは等しいのでｔｘ／２とｔｙ／２とは等しく、従ってシフト量ｓｘとシフト量ｓｙとは等しいものである。
【００５０】
さらに、オフセット・メッシュ４０のグリッドＧ４２、グリッドＧ４３、グリッドＧ４４についても、レリーフ・メッシュ２０のグリッドＧ２２、グリッドＧ２３、グリッドＧ２４に対してシフト量ｓｘ（ｓｙ）でシフトしており、オフセット・メッシュ４０の大きさ（ｏｘ、ｏｙ）は、レリーフ・メッシュ２０の大きさ（ｒｘ、ｒｙ）に比べて、ｘ−ｙ軸方向において２ｓｘ（２ｓｙ）分大きいものである。
【００５１】
つまり、ｘ−ｙ座標面において、オフセット・メッシュ４０は、レリーフ・メッシュ２０がツール・メッシュ３０のｘ−ｙ軸方向における大きさの半分（ｔｘ／２、ｔｙ／２）だけ拡張したものとみなすことができる。
【００５２】
ここで、上記したレリーフ・メッシュ２０、ツール・メッシュ３０ならびにオフセット・メッシュ４０においては、グリッド相互の間隙たるグリッド幅は同一なものである。
【００５３】
従って、図５に示すようにｘ−ｙ座標面においては、レリーフ・メッシュ２０、ツール・メッシュ３０ならびにオフセット・メッシュ４０それぞれを構成するグリッドは互いに一致するものである。
【００５４】
より詳細には、ツール・メッシュ３０の中心Ｐ（グリッドＧ３５）が、レリーフ・メッシュ２０の所定のグリッドＲ（ｉ，ｊ）と一致してレリーフ・メッシュ２０とツール・メッシュ３０とが位置した場合、
ツール・メッシュ３０のｔ原点（０，０）は、
レリーフ・メッシュ２０の
グリッドＲ（ｉ−ｔｘ／２，ｊ−ｔｙ／２）、
オフセット・メッシュ４０の
グリッドＯ（ｉ＋ｓｘ−ｔｘ／２，ｊ＋ｓｙ−ｔｙ／２）と対応し、
ツール・メッシュ３０の所定のグリッドたるグリッドＴ（ｋ，ｌ）は、
レリーフ・メッシュ２０の
グリッドＲ（ｉ−ｔｘ／２＋ｋ，ｊ−ｔｙ／２＋ｌ）、
オフセット・メッシュ４０の
グリッドＯ（ｉ＋ｓｘ−ｔｘ／２＋ｋ，ｊ＋ｓｙ−ｔｙ／２＋ｌ）と対応する（図６参照）。
【００５５】
なお、上記した変数「ｉ」はレリーフ・メッシュ２０のｘ軸方向に対応して０〜ｒｘ−１の整数であり、変数「ｊ」はレリーフ・メッシュ２０のｙ軸方向に対応して０〜ｒｙ−１の整数であり、変数「ｋ」はツール・メッシュ３０のｘ軸方向に対応して０〜ｔｘ−１の整数であり、変数「ｌ」はツール・メッシュ３０のｙ軸方向に対応して０〜ｔｙ−１の整数である。
【００５６】
また、上記した変数ｉ、変数ｊ、変数ｋならびに変数ｌはそれぞれ、後述する本発明によるオフセット形状データの算出の処理ルーチン（図８参照）における変数ｉ、変数ｊ、変数ｋならびに変数ｌに対応するものである。
【００５７】
ここで、本発明によるオフセット形状データの算出方法の処理の概要について説明することとする。図７には、本発明によるオフセット形状データの算出方法の処理の概要を時系列的に示す説明図が示されており、当該説明図は説明を簡略化して本発明の理解を容易にするためにｘ−ｙ座標面におけるｘ軸方向にのみ着目しているものである。
【００５８】
なお、本発明によるオフセット形状データの算出方法の処理は、元形状からツール倒立形状を用いてオフセット形状を算出する手法を用いるものであり、上記したように元形状を示す元形状データ、ツール倒立形状を示すツール倒立形状データならびにオフセット形状を示すオフセット形状データのいずれもが３Ｄメッシュを表すデータとする（図４（ｂ）乃至図４（ｄ）参照）。
【００５９】
また、図７（ａ）に示すように、オフセット・メッシュ４０に対しては、当該オフセット・メッシュ４０のｘ−ｙ座標面における大きさが、元形状データの示すレリーフ・メッシュ２０をｘ−ｙ座標面においてツール倒立形状データの示すツール・メッシュ３０のｘ−ｙ軸方向における大きさの半分（ｔｘ／２、ｔｙ／２）だけ拡張した大きさとなるようにするとともに、当該オフセット・メッシュ４０を構成するグリッド全てのｚ座標値が、ツール・メッシュ３０の中心Ｐのｚ座標値を有するような初期化処理が行われているものである。
【００６０】
より詳細には、まず、ツール・メッシュ３０がレリーフ・メッシュ２０の所定のグリッドＲ（ｉ，ｊ）に当該ツール・メッシュ３０の中心Ｐが一致するようにして位置する（図７（ｂ−１）参照）。
【００６１】
この際、ツール・メッシュ３０がｘ−ｙ座標面において位置する範囲Ａ（図７（ｂ−１）（ｂ−２）参照）は、ｘ軸方向においてｔｘ（図５参照）、ｙ軸方向においてｔｙ（図５参照）の大きさを有し、ツール・メッシュ３０を構成する全てのグリッドが、レリーフ・メッシュ２０ならびにオフセット・メッシュ４０それぞれを構成するグリッドと一致して位置するものである。
【００６２】
また、ｚ軸方向においてツール・メッシュ３０を構成する全てのグリッドは、当該ツール・メッシュ３０を構成するグリッドのｚ座標値（後述するレジスタＺｔの値）とレリーフ・メッシュ２０の所定のグリッドＲ（ｉ，ｊ）のｚ座標値（後述するレジスタＺｒの値）とを加算した和の大きさのｚ座標値（後述するレジスタＺｏの値）に位置するようになるものである。
【００６３】
そうして、範囲Ａにおいてツール・メッシュ３０を構成するグリッドが位置するｚ座標値（後述するレジスタＺｏの値）が、当該ツール・メッシュ３０のグリッドとｘ−ｙ座標面において一致するオフセット・メッシュ４０のグリッドの従前のｚ座標値（後述するレジスタＯ（ｍ，ｎ）の値）に比べて大きい場合には、当該オフセット・メッシュ４０のグリッドのｚ座標値を、範囲Ａにおいてツール・メッシュ３０を構成するグリッドが位置するｚ座標値（後述するレジスタＺｏの値）に更新する（図７（ｂ−２）参照）。
【００６４】
次に、ツール・メッシュ３０をグリッド毎に移動し、レリーフ・メッシュ２０の所定のグリッドＲ’（ｉ＋１，ｊ）に当該ツール・メッシュ３０の中心Ｐが一致するようにして位置する（図７（ｃ−１）参照）。
【００６５】
この際は、ツール・メッシュ３０が位置する範囲Ａ’において、上記したのと同様に、ツール・メッシュ３０を構成するグリッドが位置するｚ座標値（後述するレジスタＺｏの値）が、当該ツール・メッシュ３０のグリッドとｘ−ｙ座標面において一致するオフセット・メッシュ４０のグリッドの従前のｚ座標値（後述するレジスタＯ（ｍ，ｎ）の値）に比べて大きい場合には、当該オフセット・メッシュ４０のグリッドのｚ座標値を、範囲Ａ’においてツール・メッシュ３０を構成するグリッドが位置するｚ座標値（後述するレジスタＺｏの値）に更新する（図７（ｃ−２）参照）。
【００６６】
このようにして、レリーフ・メッシュ２０の全てのグリッドについてツール・メッシュ３０の中心Ｐが一致するようにして、当該ツール・メッシュ３０を順次移動すると、ツール・メッシュ３０は、レリーフ・メッシュ２０上を図４（ａ）に示すような軌跡を描いて移動する。
【００６７】
その結果、初期化処理によりツール・メッシュ３０の中心Ｐのｚ座標値に初期化れたオフセット・メッシュ４０を構成するグリッドのｚ座標値（図７（ａ）参照）は、当該ツール・メッシュ３０の中心Ｐのｚ座標値以上の高さにおけるツール・メッシュ３０の軌跡と対応するｚ座標値に更新される（図７（ｄ）参照）。
【００６８】
つまり、オフセット・メッシュ４０を構成する全てのグリッドのｚ座標値はそれぞれ、対応するレリーフ・メッシュ２０のｚ座標値とツール・メッシュ３０のｚ座標値とを加算した和となるものであり、こうして得たオフセット・メッシュ４０が、オフセット形状データとなる。
【００６９】
以下、図８を中心に参照しながら、本発明によるオフセット形状データの算出方法の処理ルーチンについて詳細に説明する。
【００７０】
なお、図８に示す本発明によるオフセット形状データの算出方法の処理ルーチンのフローチャートは、ある元形状データの示す元形状を被加工物から削り出す処理を行う前に、当該元形状データを処理対象として起動されて実行されるものである。
【００７１】
このオフセット形状データの算出方法の処理ルーチンが起動されると、まず、ステップＳ８０２の処理において、元形状データ記憶部１０ｃ−１に記憶されている元形状データの示すレリーフ・メッシュ２０のｘ軸方向のグリッドの個数をｒｘとし、レリーフ・メッシュ２０のｙ軸方向のグリッドの個数をｒｙとする。
【００７２】
また、ツール倒立形状データ記憶部１０ｃ−２に記憶されているツール倒立形状データの示すツール・メッシュ３０のｘ軸方向のグリッドの個数をｔｘとし、ツール・メッシュ３０のｙ軸方向のグリッドの個数をｔｙとする。
【００７３】
一方、オフセット形状データ記憶部１０ｃ−３に記憶されているオフセット形状データの示すオフセット・メッシュ４０のｘ軸方向のグリッドの個数をｏｘとし、オフセット・メッシュ４０のｙ軸方向のグリッドの個数をｏｙとする。
【００７４】
さらに、レリーフ・メッシュ２０に対するオフセット・メッシュ４０のシフト量をｓｘ、ｓｙとする。
【００７５】
ここで、この実施の形態においては、シフト量ｓｘ、ｓｙとは等しく、ツール・メッシュ３０のｘ−ｙ軸方向における大きさの半分（ｔｘ／２、ｔｙ／２）である。
【００７６】
ステップＳ８０２を終了すると、ステップＳ８０４に進んで、変数ｊの値を「０」に初期化する。
【００７７】
ステップＳ８０４に続いて、ステップＳ８０６においては、変数ｉの値を「０」に初期化して、ステップＳ８０８に進む。
【００７８】
ステップＳ８０８においては、レリーフ・メッシュ２０の所定のグリッドＲ（ｉ，ｊ）の高さ、即ち、グリッドＲのｚ座標値をレジスタＺｒに記憶する。
【００７９】
ステップＳ８０８を終了すると、ステップＳ８１０に進んで、変数ｌの値を「０」に初期化する。
【００８０】
ステップＳ８１０に続いて、ステップＳ８１２においては、変数ｋの値を「０」に初期化して、ステップＳ８１４に進む。
【００８１】
ステップＳ８１４においては、ツール・メッシュ３０の所定のグリッドＴ（ｋ，ｌ）の高さ、即ち、グリッドＴのｚ座標値をレジスタＺｔに記憶する。
【００８２】
ステップＳ８１４を終了すると、ステップＳ８１６に進み、ステップＳ８０８の処理によるレジスタＺｒの値と、ステップＳ８１４の処理によるレジスタＺｔの値とを加算した和をレジスタＺｏに記憶する。
【００８３】
つまり、レジスタＺｏの値は、レリーフ・メッシュ２０の所定のグリッドＲ（ｉ，ｊ）の高さとツール・メッシュ３０の所定のグリッドＴ（ｋ，ｌ）の高さとを加算した高さである。
【００８４】
ステップＳ８１６に続いて、ステップＳ８１８においては、ツール・メッシュ３０の所定のグリッドＴ（ｋ，ｌ）に対応するオフセット・メッシュ４０のグリッドＯの座標値（ｘ，ｙ）を求める（図６参照）。
【００８５】
具体的には、オフセット・メッシュ４０のグリッドＯのｘ座標値はｉ＋ｓｘ−ｔｘ／２＋ｋの演算結果から求められて変数ｍに記憶され、オフセット・メッシュ４０のグリッドＯのｙ座標値はｊ＋ｓｙ−ｔｙ／２＋ｌの演算結果から求められて変数ｎに記憶される。
【００８６】
さらに、オフセット・メッシュ４０のグリッドＯ（ｍ，ｎ）の高さ、即ち、グリッドＯ（ｍ，ｎ）のｚ座標値をレジスタＯ（ｍ，ｎ）に記憶して、ステップＳ８２０に進む。
【００８７】
ステップＳ８２０においては、ステップＳ８１８の処理によるレジスタＯ（ｍ，ｎ）の値に比べてステップＳ８１６の処理によるレジスタＺｏの値が大きい否かを判断し、ステップＳ８１８の処理によるレジスタＯ（ｍ，ｎ）の値に比べてステップＳ８１６の処理によるレジスタＺｏの値が大きいと判断された場合には、ステップＳ８２２に進み、ステップＳ８１８の処理によるレジスタＯ（ｍ，ｎ）の値に比べてステップＳ８１６の処理によるレジスタＺｏの値が小さいと判断された場合には、ステップＳ８２４に進む。
【００８８】
ステップＳ８２２においては、ステップＳ８１６の処理によるレジスタＺｏの値をレジスタＯ（ｍ，ｎ）の値に代入する。つまり、ステップＳ８２０→ステップＳ８２２と進み、ステップＳ８１６の処理によるレジスタＺｏの値が従前の最大値たるレジスタＯ（ｍ，ｎ）に比べて大きい場合には、レジスタＯ（ｍ，ｎ）の値が当該レジスタＺｏの値に更新される。
【００８９】
一方、ステップＳ８２４においては、変数ｋの値がｔｘの値から「１」を引いた差に比べて小さいか否かを判断し、変数ｋの値がｔｘの値から「１」を引いた差に比べて小さい場合には、ステップＳ８２６に進み、変数ｋの値がｔｘの値から「１」を引いた差に比べて大きい場合には、ステップＳ８２８に進む。
【００９０】
ステップＳ８２６においては、変数ｋの値を１だけインクリメントして、ステップＳ８１４に戻り、ステップＳ８１４乃至ステップＳ８２４の処理を繰り返す。
【００９１】
一方、ステップＳ８２８においては、変数ｌの値がｔｙの値から「１」を引いた差に比べて小さいか否かを判断し、変数ｌの値がｔｙの値から「１」を引いた差に比べて小さい場合には、ステップＳ８３０に進み、変数ｌの値がｔｙの値から「１」を引いた差に比べて大きい場合には、ステップＳ８３２に進む。
【００９２】
ステップＳ８３０おいては、変数ｌの値を１だけインクリメントして、ステップＳ８１２に戻り、ステップＳ８１２乃至ステップＳ８２８の処理を繰り返す。
【００９３】
従って、変数ｋの値がｔｘの値から「１」を引いた差に比べて小さく、かつ、変数ｌの値がｔｙの値から「１」を引いた差に比べて小さい限りは、ステップＳ８０８の処理によるレリーフ・メッシュ２０の所定のグリッドＲ（ｉ，ｊ）にツール・メッシュ３０の中心Ｐが一致して当該ツール・メッシュ３０が位置する範囲において、ステップＳ８１２乃至ステップＳ８３０の処理が行われて、レジスタＯ（ｍ，ｎ）の値（従前のｚ座標値）に比べて大きいレジスタＺｏの値（レリーフ・メッシュ２０の所定のグリッドＲ（ｉ，ｊ）の高さとツール・メッシュ３０の所定のグリッドＴ（ｋ，ｌ）の高さとを加算した高さ）がオフセット・メッシュ４０に更新されて保持される。
【００９４】
そして、ステップＳ８３２においては、変数ｉの値がｒｘの値から「１」を引いた差に比べて小さいか否かを判断し、変数ｉの値がｒｘの値から「１」を引いた差に比べて小さい場合には、ステップＳ８３４に進み、変数ｉの値がｒｘの値から「１」を引いた差に比べて大きい場合には、ステップＳ８３６に進む。
【００９５】
ステップＳ８３４においては、変数ｉの値を１だけインクリメントして、ステップＳ８０８に戻り、ステップＳ８０８乃至ステップＳ８３２の処理を繰り返す。
【００９６】
一方、ステップＳ８３６においては、変数ｊの値がｒｙの値から「１」を引いた差に比べて小さいか否かを判断し、変数ｊの値がｒｙの値から「１」を引いた差に比べて小さい場合には、ステップＳ８３８に進み、変数ｊの値がレジスタＲｙの値から「１」を引いた差に比べて大きい場合には、この本発明によるオフセット形状データの算出の処理ルーチンを終了する。
【００９７】
ステップＳ８３８おいては、変数ｊの値を１だけインクリメントして、ステップＳ８０６に戻り、ステップＳ８０６乃至ステップＳ８３６の処理を繰り返す。
【００９８】
従って、変数ｉの値がｒｘの値から「１」を引いた差に比べて小さく、かつ、変数ｊの値がｒｙの値から「１」を引いた差に比べて小さい限りは、レリーフ・メッシュ２０を構成する全てのグリッドに対して、ステップＳ８０６乃至ステップＳ８３８の処理が行われて、レリーフ・メッシュ２０の全てのグリッドにツール・メッシュ３０の中心Ｐが一致するようにして当該ツール・メッシュ３０が順次移動する（図４（ａ）参照）。
【００９９】
上記したようにして、本発明によるオフセット形状データの算出の処理ルーチンによって、レリーフ・メッシュ２０の所定のグリッドにツール・メッシュ３０の中心Ｐが一致して当該ツール・メッシュ３０が位置する範囲において、オフセット・メッシュ４０の従前のｚ座標値であるレジスタＯ（ｍ，ｎ）の値に比べて、ｘ−ｙ座標面において一致するツール・メッシュ３０のｚ座標値とレリーフ・メッシュ２０のｚ座標値とを加算した和であるレジスタＺｏの値が大きい場合には、当該レジスタＺｏの値をオフセット・メッシュ４０に更新して保持することが繰り返されるので、単にレリーフ・メッシュ２０のｚ座標値とツール・メッシュ３０のｚ座標値との加算によってオフセット・メッシュ４０を生成することができ、従来の方法に比べて演算量が格段に少ないため、従来の方法に比べておよそ１００倍の高速で元形状からオフセット形状データを生成することができる。
【０１００】
また、演算量が少ないとともに、演算がレリーフ・メッシュ２０のｚ座標値（通常は整数である。）とツール・メッシュ３０のｚ座標値（通常は整数である。）との加算のみであり、さらに、生成されるオフセット形状データが３Ｄメッシュを表すデータであるので、数値演算誤差の発生を抑制することができ、生成されたオフセット形状データの示すオフセット形状における破れや突出などの発生を回避できる。
【０１０１】
なお、本発明によるオフセット形状データの算出方法においては、図３に示すように本発明によるオフセット形状データの算出方法を実現するための処理システムにおいて、ツールとしてボール・エンド・ミル１６が接続されるようにしたが、これに限られるものではないことは勿論であり、ツールとしてフラット・エンド・ミルやコニカル・エンド・ミルなどを接続するようにしてもよい。
【０１０２】
また、本発明によるオフセット形状データの算出方法においては、初期化処理によってオフセット・メッシュ４０が、レリーフ・メッシュ２０に対して、ｘ−ｙ座標面においてツール倒立形状データの示すツール・メッシュ３０のｘ−ｙ軸方向における大きさの半分（ｔｘ／２、ｔｙ／２）だけ拡張されて生成されるようにしたが、これに限られるものではないことは勿論であり、レリーフ・メッシュ２０に対して、ｘ−ｙ座標面においてツール倒立形状データの示すツール・メッシュ３０のｘ−ｙ軸方向における大きさの半分（ｔｘ／２、ｔｙ／２）に任意の余白分を加算した大きさ分だけ拡張されてオフセット・メッシュ４０が初期化されるようにしてもよい。
【０１０３】
さらにまた、本発明によるオフセット形状データの算出方法においては、元形状データは入力装置１２によってこの３次元切削加工装置の外部から入力されるようにしたが、これに限られるものではないことは勿論であり、３次元切削加工装置の内部に３次元スキャナーなどの形状検出装置を配設するようにして、当該形状検出装置によって取得された形状データを元形状データとして用いるようにしてもよい。
【０１０４】
【発明の効果】
本発明は、以上説明したように構成されているので、被加工物から所望の３次元形状を削り出す３次元切削加工装置におけるツール・パスを得るためのオフセット形状データの生成に際して、少ない演算量で高速に元形状からオフセット形状データを生成することができるとともに、当該生成したオフセット形状データの示すオフセット形状に破れや突出などが存在することがないという優れた効果を奏する。
【図面の簡単な説明】
【図１】（ａ）（ｂ）は、元形状からのオフセット形状の算出を概念的に示す説明図である。
【図２】（ａ）は、従来のオフセット形状データの算出方法によって元形状からオフセット形状が生成される工程を模式的に示した説明図であり、（ｂ）は、従来のオフセット形状データの算出方法によって生成されたオフセット形状を示す説明図である。
【図３】本発明によるオフセット形状データの算出方法を実現するための処理システムを示すブロック構成図である。
【図４】（ａ）は、本発明によるオフセット形状データの算出の処理の概要を示す説明図であり、（ｂ）は、オフセット形状データの示すオフセット・メッシュを模式的に示す説明図であり、（ｃ）は、ツール倒立形状データの示すツール・メッシュを模式的に示す説明図であり、（ｄ）は、元形状データの示すレリーフ・メッシュを模式的に示す説明図である。
【図５】図４（ａ）におけるＡ矢視方向から見た状態の概念説明図である。
【図６】レリーフ・メッシュ、ツール・メッシュならびにオフセット・メッシュの各グリッドの対応関係を模式的に示した説明図である。
【図７】本発明によるオフセット形状データの算出方法の処理の概要を時系列的に示す説明図であり、（ａ）は、初期化処理が行われたオフセット・メッシュを模式的に示す説明図であり、（ｂ−１）は、レリーフ・メッシュの所定のグリッドＲ（ｉ，ｊ）に中心Ｐが一致するようにして位置したツール・メッシュを模式的に示す説明図であり、（ｂ−２）は、ツール・メッシュが（ｂ−１）に示すようにして位置したときのオフセット・メッシュを模式的に示す説明図であり、（ｃ−１）は、レリーフ・メッシュの所定のグリッドＲ’（ｉ＋１，ｊ）に中心Ｐが一致するようにして位置したツール・メッシュを模式的に示す説明図であり、（ｃ−２）は、ツール・メッシュが（ｃ−１）に示すようにして位置したときのオフセット・メッシュを模式的に示す説明図であり、（ｄ）は、ツールメッシュと生成されたオフセット・メッシュとを模式的に示す説明図である。
【図８】本発明によるオフセット形状データの算出の処理を示すフローチャートである。
【符号の説明】
１０          制御装置
１０ａ        中央制御装置（ＣＰＵ）
１０ｂ        リード・オンリ・メモリ（ＲＯＭ）
１０ｃ        ランダム・アクセス・メモリ（ＲＡＭ）
１０ｃ−１    元形状データ記憶部
１０ｃ−２    ツール倒立形状データ記憶部
１０ｃ−３    オフセット形状データ記憶部
１２          入力装置
１４          駆動装置
１６          ボール・エンド・ミル
２０          レリーフ・メッシュ
３０          ツール・メッシュ
４０          オフセット・メッシュ
１００          元形状
２００          ポリゴン
３００          オフセット形状
【図１】
0003621618.tif 000002
【図２】
0003621618.tif 000003
【図３】
0003621618.tif 000004
【図４】
0003621618.tif 000005
【図５】
0003621618.tif 000006
【図６】
0003621618.tif 000007
【図７】
0003621618.tif 000008
【図８】
0003621618.tif 000009