"素材形状に対して部分的な加工を行うための加工単位データに基づいて制御指令データを生成する自動プログラミング装置であって、前記加工単位データの加工領域形状データを生成する加工領域形状生成部と、前記加工領域形状データを面取り加工の対象部位についての形状データとし、前記加工領域形状データと予め記憶されている加工条件データおよび使用工具データとに基づいて面取り加工のための面取り加工工具の工具パスデータを生成する面取り加工工具パス生成部とを備え、前記面取り加工工具パス生成部は、前記加工領域形状データと予め記憶されている前記加工条件データとに基づいて前記面取り加工工具の工具パスデータを生成する際に基準とする基準点列の形状データを生成する基準点列生成部と、前記基準点列の形状データと予め記憶されている前記加工条件データおよび前記使用工具データとに基づいて前記面取り加工工具が面取り加工を施しながら通過する際の工具位置を決定するための工具基準位置データを生成する工具基準位置生成部と、前記工具基準位置データと予め記憶されている前記使用工具データとに基づいて前記面取り加工工具の工具パスデータを生成する工具パス生成部とを有することを特徴とする自動プログラミング装置。前記工具基準位置生成部は、与えられた面取り加工方法の制限に対して、前記基準点列の形状データと予め記憶されている前記加工条件データおよび前記使用工具データとに基づいて前記面取り加工方法の制限内で前記面取り加工を行うことができる面取り加工の結果形状を定義し、前記工具基準位置データを生成することを特徴とする請求項1に記載の自動プログラミング装置。前記工具基準位置生成部は、予め記憶されている前記加工条件データおよび前記使用工具データに基づく近似計算によって前記面取り加工方法の制限内で前記面取り加工を行うことができる前記面取り加工の結果形状を定義して近似形状とし、前記近似計算における評価指標を前記加工領域形状データまたは前記加工条件データによって指定される形状データの構成要素とする場合、前記評価指標となる形状データを自身の形状データ内に保持するように前記近似形状を生成することを特徴とする請求項2に記載の自動プログラミング装置。素材形状に対して部分的な加工を行うための加工単位データに基づいて制御指令データを生成する自動プログラミング方法であって、前記加工単位データの加工領域形状データを生成する工程と、前記加工領域形状データと予め記憶されている加工条件データとに基づいて面取り加工工具の工具パスデータを生成する際に基準とする基準点列の形状データを生成する工程と、前記基準点列の形状データと予め記憶されている前記加工条件データおよび使用工具データとに基づいて前記面取り加工工具が面取り加工を施しながら通過する際の工具位置を決定するための工具基準位置データを生成する工程と、前記工具基準位置データと予め記憶されている前記使用工具データとに基づいて前記面取り加工工具の工具パスデータを生成する工程とを有することを特徴とする自動プログラミング方法。特許文献1に示された自動プログラミング装置において、素材形状に施す面取り加工は、通常、人手あるいは自動プログラミング装置によって予め作成された面取り加工用のNCプログラムに従って加工されているが、曲面を含む境界部分の加工部位となる形状は複雑である。一般的に複雑形状にできるだけ精確に対応した面取り加工を行おうとすれば、直交3軸だけではなく回転軸も加えた制御による加工が必要となる場合が多い。例えば、直交3軸に回転2軸を加えた5軸制御による加工などである。3軸制御と比較して、5軸制御をはじめとする多軸制御加工機向けのNCプログラム生成においては、まず、NCプログラム生成に必要となる情報量が多く、また、NCプログラム生成のための処理も煩雑となり、さらに、作成されたNCプログラム自体も複雑となり、専用システムを用いて演算する場合が多い。しかしながら、面取り加工においては、大抵の場合は角部を取り除くことが主目的であるので厳密な精度を要求されることは少なく、せっかく高価な多軸制御加工機と高価な専用システムによって精度のよい演算結果を得ても、演算結果を充分に活かせず効率的ではないという問題点があった。また、5軸制御加工機は高価であり操作も複雑であるため操作者の力量次第ではその機能を十分に使いこなすことができない場合がある。この発明は、上述のような課題を解決するためになされたもので、素材形状に面取り加工を施す際に、高価で操作が煩雑な回転制御軸を含む多軸制御加工機、および、CADComputerAidedDesign装置や特別な機能を持つNC装置を用いなくても、簡単な操作で、回転軸を含む多軸制御による加工機での面取り加工面に近似した直交3軸制御による加工機での面取り加工の工具パス工具経路を生成でき、操作時間が短縮でき加工能率が向上する自動プログラミング装置および自動プログラミング方法を得るものである。この発明に係る自動プログラミング装置は、素材形状に対して部分的な加工を行うための加工単位データに基づいて制御指令データを生成する自動プログラミング装置であって、加工単位データの加工領域形状データを生成する加工領域形状生成部と、加工領域形状データを面取り加工の対象部位についての形状データとし、加工領域形状データと予め記憶されている加工条件データおよび使用工具データとに基づいて面取り加工のための面取り加工工具の工具パスデータを生成する面取り加工工具パス生成部とを備え、面取り加工工具パス生成部は、加工領域形状データと予め記憶されている加工条件データとに基づいて面取り加工工具の工具パスデータを生成する際に基準とする基準点列の形状データを生成する基準点列生成部と、基準点列の形状データと予め記憶されている加工条件データおよび使用工具データとに基づいて面取り加工工具が面取り加工を施しながら通過する際の工具位置を決定するための工具基準位置データを生成する工具基準位置生成部と、工具基準位置データと予め記憶されている使用工具データとに基づいて面取り加工工具の工具パスデータを生成する工具パス生成部とを有するものである。この発明に係る自動プログラミング装置は、加工領域形状データと予め記憶されている加工条件データとに基づいて面取り加工工具の工具パスデータを生成する際に基準とする基準点列の形状データを生成する基準点列生成部と、基準点列の形状データと予め記憶されている加工条件データおよび使用工具データとに基づいて面取り加工工具が面取り加工を施しながら通過する際の工具位置を決定するための工具基準位置データを生成する工具基準位置生成部と、工具基準位置データと予め記憶されている使用工具データとに基づいて面取り加工工具の工具パスデータを生成する工具パス生成部とを有する面取り加工工具パス生成部を備えたので、簡単な操作で、回転軸を含む多軸制御による加工機での面取り加工面に近似した直交3軸制御による加工機での面取り加工の工具パスを生成でき、操作時間が短縮でき加工能率が向上させることができる。実施の形態1.図1は、この発明の実施の形態1における自動プログラミング装置の構成図である。自動プログラミング装置は、素材形状に対して部分的な加工を行うための部分加工の加工単位データに基づいて制御指令データを生成するものであって、加工領域形状、加工方法、使用工具、加工条件などのデータを含んだ部分的な加工を行うための加工単位データが入力され、入力された加工単位データを解析して工作機械を動作させるための制御指令データを生成するものである。図1において、自動プログラミング装置は、素材形状データ入力部1、加工単位データ入力部2、加工プログラム記憶部3、加工領域形状生成部8、および制御指令生成部10によって構成される。加工単位データは、加工領域形状、加工方法、使用工具、加工条件などのデータから構成される。それぞれのデータは、例えば、加工領域形状データとして輪郭形状データ、加工方法データとして加工の種類や加工手順、使用工具として各加工手順における工具を特定するデータ、加工条件として各加工手順における主軸回転数、送り速度などのデータを有している。素材形状データ入力部1は、素材形状を定義するデータを外部入力し、加工プログラム記憶部3にデータを格納する。素材形状を定義するデータとしては、中空円筒状の素材形状を例にすると、外周部円筒面の直径、中空部円筒面の直径、および、円筒面中心軸方向長さが該当する。加工単位データ入力部2は、加工プログラム記憶部3に記憶された加工単位データに含まれる加工領域形状データを参照する他加工単位参照型の加工単位データを入力し、他加工単位参照型の加工単位データを加工プログラム記憶部3へ出力するものであり、加工領域形状、加工方法、使用工具、加工条件などの加工単位を定義するデータを外部入力し、加工プログラム記憶部3にデータを格納する。他加工単位参照型の加工単位データとしては面取り加工の加工単位データなどがある。加工プログラム記憶部3は、素材形状データと他加工単位参照型の加工単位データを含めた加工単位データの加工順に並んだリストを記憶する。また、加工後素材形状生成部4は、加工プログラム記憶部3に記憶されている素材形状データおよび加工単位データに基づいて加工後素材形状データを生成するものであり、生成された加工後素材形状データは、関連加工単位データ抽出部5で表示処理される。加工後素材形状データは、素材形状データと既定義済みの加工単位の加工領域形状データとに基づき、素材形状から既定義済みの加工単位の加工領域形状を除去した加工領域除去素材形状データである。関連加工単位データ抽出部5は、加工単位データ入力部2において面取り加工の加工単位データを外部入力する際に、加工後素材形状生成部4で生成された加工後素材形状データをグラフィック表示させる。そして、オペレータからの面取り加工対象部位の指示を受けて、加工領域除去素材形状に転写された加工領域形状の面に、対応する加工単位の加工領域形状の面を特定するためのデータを属性として付加し、加工領域除去素材形状上で指示されたエッジから、それに隣接する面に付属している加工単位の加工領域形状の面を特定するためのデータを抽出し、抽出したデータから他加工単位参照型加工単位の加工領域形状データの参照データを抽出し、加工単位データ入力部2へ参照データを送る。なお、加工プログラム解析部6は、加工プログラムから制御指令を生成する際に、加工プログラム記憶部3に記憶された加工単位データを解析し、工具パスデータ生成のための使用工具データ、加工条件データなどを予め記憶し、工具パス生成部7および面取り加工工具パス生成部9へデータを送る。工具パス生成部7は、面取り加工以外の加工単位について加工単位データから工具パスデータを生成し、制御指令生成部10に工具パスデータを送る。加工領域形状生成部8は、加工単位データを解析して制御指令データを生成する際に、他加工単位参照型加工単位データについて、参照する加工単位の加工領域形状データと加工プログラム記憶部3に記憶されている素材形状データとから、部分加工の加工単位データの加工領域形状データ、つまり、面取り加工を施す部位の加工領域形状データを生成する。そして、加工領域形状生成部8は、面取り加工を施す部位の加工領域形状データを面取り加工工具パス生成部9へ送る。面取り加工工具パス生成部9は、面取り加工の加工単位について加工領域形状生成部8で抽出された面取り加工の加工領域形状データを面取り加工の対象部位についての形状データとする。そして、面取り加工の対象部位についての形状データ、加工プログラム解析部6に予め記憶されている加工条件データや使用工具データなどから面取り加工のための面取り加工工具の工具パスデータを生成し、制御指令生成部10に工具パスデータを送る。制御指令生成部10は、加工領域形状データを含めた部分加工の加工単位データに基づいて制御指令データを生成するものであって、工具パス生成部7および面取り加工工具パス生成部9で生成された工具パスデータを受け取り、工作機械を制御するための制御指令データを生成して制御装置の制御部図示せずへ出力する。このように構成された自動プログラミング装置の動作について説明する。図2に本実施の形態における自動プログラミング装置のフローチャートを示す。自動プログラミング装置は、図2に示すフローチャートに従って動作する。ステップS201では、プログラム入力を行うかどうかのオペレータ指示をチェックしており、プログラム入力を実施する指示の場合はステップS202へ進み、実施しない指示の場合はステップS209へ進む。ステップS202では、素材形状データの入力を行うかどうかのオペレータ指示をチェックしており、素材形状データ入力を実施する指示の場合はステップS203へ進み、実施しない指示の場合はステップS204へ進む。ステップS203では、素材形状データ入力部1において、素材形状データがオペレータからの指示等で外部入力され、入力されたデータが加工プログラム記憶部3へ格納される。ステップS203の処理後、ステップS201へ戻る。ステップS204では、面取り加工の加工単位データの入力を行うかどうかのオペレータ指示をチェックしており、面取り加工の加工単位データの入力を実施する指示の場合はステップS206へ進み、実施しない指示の場合はステップS205へ進む。ステップS205では、素材形状データ入力部1において、面取り加工以外の加工単位のデータがオペレータからの指示で外部入力され、入力されたデータが加工プログラム記憶部3へ格納される。面取り加工以外の加工単位のデータの入力、加工プログラム記憶部3へ格納が完了すると、ステップS201へ戻る。ステップS204において、面取り加工の加工単位データの入力を実施する指示の場合はステップS206へ進む。ステップS206~S208は面取り加工の加工単位を入力設定する際に実施される工程である。ステップS206では、加工後素材形状生成部4において、加工プログラム記憶部3に格納された素材形状および格納済みの加工単位データに基づき加工後素材形状データが生成される。ステップS207では、関連加工単位データ抽出部5において、加工後素材形状生成部4で生成された加工後素材形状データを基に面取り加工対象部位に関連する加工単位の加工領域形状データを特定する特定データが次のようにして抽出される。まず、加工後素材形状データが画面上にグラフィック表示され、オペレータからのポインディングデバイスなどによる指示で加工後素材形状データの面取り加工対象部位の一連のエッジが選択される。ここで、選択候補となり得るエッジは、加工後素材形状に転写された別々の加工単位に属する加工目的面間のエッジ、または、素材形状の面と加工目的面間のエッジのいずれかである。次に、選択されたエッジ毎に隣接する加工目的面に付属している属性データを面取り加工対象部位に関連する加工領域形状データの特定データとして抽出する。図3~図5に、選択されたエッジに対する面取り加工の加工単位の一例を示す。図3は、面取り加工対象部位として選択されたエッジを示す斜視図である。図3において、太線がエッジであり、Ekk=0、1、2、3は面取り加工対象部位として選択されたエッジを示すエッジ番号である。また、i、jは加工単位と加工面を表すものであり、iは加工単位番号、jは加工目的面の面番号である。図4は、面取り加工の加工単位データの例を示したものである。加工領域形状データとして面取り対象部位形状参照データ、面取り形状のパターン、面取り形状の大きさや角度などを指定するパラメータを有している。ここで、図5に示す面取り加工対照部位形状参照データは、加工対象部位に関連する加工領域形状データを参照するためのデータであり、抽出された加工領域形状データの特定データを集めてテーブルを構成したものである。この面取り加工対照部位形状参照データのテーブルでは、面取り加工対象部位のエッジが隣接する加工目的面の組合せで表され、さらに加工目的面は加工単位の番号とその加工単位における加工目的面の番号で表されているが、面取り加工対象部位のエッジの位置情報を直接データとして保有していない。面取り加工対象部位のエッジの位置情報については、制御指令データを生成する段階で算出するようにしている。このため、参照する加工単位の加工領域形状データの位置が調整された場合でも、面取り加工の制御指令データへの調整結果の反映を自動化することができるので、面取り加工単位データの調整の手間がかからずに済む。ステップS208では、関連加工単位データ抽出部5で抽出された加工領域形状データの特定データとその他の面取り加工の加工単位データとを入力し、加工プログラム記憶部3に面取り加工の加工単位データを記憶する。ステップS208の処理後は、ステップS201へ戻る。ステップS209では、プログラムの実行をオペレータから指示されたかどうかのチェックしており、プログラム実行が指示された場合はステップS211へ進み、プログラム実行が指示されていない場合はステップS210へ進む。ステップS211~S218では、加工プログラム記憶部3に記憶されている加工単位データを一つずつ取り出して制御指令データを生成するループ処理を構成している。ステップS212では、加工プログラム解析部6にて処理対象の加工単位データの内容を解析し、工具パスデータ生成の準備を行う。ステップS213では、処理対象の加工単位データが面取り加工のデータであるかどうかをチェックしており、面取り加工のデータである場合はステップS215へ進み、面取り加工のデータでない場合はステップS214へ進む。ステップS214では、工具パス生成部7にて面取り加工以外の加工単位データに対し工具パスを生成し、生成データを制御指令生成部10へ渡している。ステップS215では、加工領域形状生成部8において、面取り加工の加工単位データに対して、加工プログラム記憶部3に記憶されている素材形状データと面取り加工の加工単位データが参照している加工単位の加工領域形状データとから、面取り加工対象部位の形状データを抽出して面取り加工工具パス生成部9にデータを渡している。図5に示す面取り対象部位形状参照データから、面取り加工対照部位のエッジ毎に加工単位番号と加工領域形状データ内の面番号を参照し、加工領域形状の面データが2つずつ抽出される。ステップS216では、ステップS215から渡された面取り加工部のエッジに関連するデータに基づいて面取り加工工具パスを生成する。ステップS217では、制御指令生成部10において、工具パスのデータおよび面取り加工工具パスを受け取り、工作機械を動作させるための制御指令データを生成し、数値制御装置の制御部へ出力する。ステップS216で面取り加工工具パスが生成された場合には、工具パスのデータと面取り加工工具パスとに基づき制御指令データが生成される。ステップS218では、未処理の加工単位が存在しているかをチェックしており、存在している場合にS211との間で処理をループさせる。ステップS210では、オペレータから操作終了の指示があったかどうかをチェックしており、操作終了の指示があった場合にプログラムを終了させ、操作終了の指示がなかった場合にステップS201へ戻る。このように、素材形状データ入力部1において、加工単位毎の素材形状を定義するデータを外部入力し、そのデータを加工プログラム記憶部3へ格納し、加工単位データ入力部2において、加工単位毎の加工領域形状を定義する基となる1つ以上の他の加工単位の加工領域形状データへの参照データが含まれた他加工単位参照型加工単位データを入力し、そのデータを加工プログラム記憶部3へ格納する。そして、加工領域形状生成部8において、加工単位情報を解析して制御指令データを生成する際に、他加工単位参照型加工単位データについて、記憶されている素材形状データと他加工単位参照型加工単位データが参照する加工単位の加工領域形状データとから当該加工単位の加工領域形状データを生成する。面取り加工対象部位の形状データには、面取り加工対象部位の形状データも含まれる。このため、円筒面上に形成された穴や溝の縁など加工の対象部位の形状が複雑な曲線形状に対して曲面の縁の面取りなどの加工においても、加工領域形状の基となる加工単位の加工領域形状データを参照させるだけで面取り加工などの加工単位が定義できるので、複雑な形状情報を入力する必要がなく加工単位の定義が容易になる。面取りなどの加工単位を加工対象部位毎に定義できるので、曲線部等の複雑な加工対象部位の形状に合わせた適切な加工を行うための数値制御情報を得ることができる。図6は、この発明の実施の形態1における面取り加工工具パス生成部の構成図である。実施の形態1における面取り加工工具パス生成部は、面取り加工方法の制限にとらわれずに加工工具パスを生成するものである。面取り加工工具パス生成部9は、加工領域形状生成部8から面取り加工を施す部位の加工領域形状データを入力する。本実施の形態では、加工領域形状生成部8から入力された面取り加工部のエッジに関連するデータに基づいて面取り加工工具パスを生成することに関して詳細に説明する。面取り加工工具パス生成部9は、面取り加工に関するデータを記憶しているデータ記憶部から面取り加工データを取得し、面取り加工工具パスを生成する。本実施の形態では、加工領域形状生成部8がデータ記憶部に相当しているが、取得するデータの内容によっては加工プログラム記憶部3と分散してもよい。面取り加工工具パス生成部9は、データ記憶部からデータを取得し、面取り加工の対象部位形状の基準となる点を生成し、次に面取り加工の工具パス生成のために面取り加工が施される際の工具位置の基準となる工具基準位置データを生成し、その工具基準位置データに基づいて生成された工具パスデータを次の処理を行う制御指令生成部10へ渡す。図6において、面取り加工工具パス生成部9は、基準点列生成部121、工具基準位置生成部122、および工具パス生成部123によって構成されており、例えばマシニングセンタによる加工動作を制御するものである。基準点列生成部121は、面取り加工に関するデータに基づいて面取り加工の対象部位形状における基準となる点を生成するものであり、加工領域形状データを面取り加工の対象部位についての形状データとし、加工領域形状データとプログラム記憶部3などに予め記憶されている加工条件データ面取り加工に関するデータとに基づいて工具パスデータを生成する際に基準とする基準点列の形状データを生成する。工具基準位置生成部122は、予め記憶されている加工条件データや使用工具データなどの面取り加工に関するデータと基準点列生成部121で生成された基準点とに基づいて、面取り加工工具が面取り加工を施しながら通過する際の面取り加工工具の基準位置となる加工によって創生される加工面上に位置し、工具位置を決定するための工具基準位置データを生成する。工具パス生成部123は、工具基準位置データと予め記憶されている使用工具データに基づいて面取り加工工具の工具パスデータを生成する。本実施の形態における工具基準位置生成部122での処理の一例について説明する。まず、工具基準位置生成部122は、与えられた面取り加工方法の制限に対して、基準点列生成部121で生成された基準点列の形状データと予め記憶されている加工条件データおよび使用工具データとに基づいて、加工条件や使用工具などの与えられた条件の制限にとらわれない理想的な加工を行った場合に得られるであろう加工結果形状以後、理想形状、つまり与えられた面取り加工方法の制限内で面取り加工を行うことができる面取り加工の結果形状を定義し、工具基準位置データを生成する。与えられた面取り加工方法の制限内での加工では理想形状の生成が不可能な場合には、工具基準位置生成部122は、予め記憶されている加工条件データおよび使用工具データに基づく近似計算によって与えられた面取り加工方法の制限内で面取り加工を行うことができる面取り加工の結果形状を定義して近似形状とし、近似計算における評価指標を加工領域形状データまたは加工条件データによって指定される形状データの構成要素とする場合、近似形状が評価指標となる形状データを陽にあるいは陰に自身の形状データ内に保持するように生成される。与えられた面取り加工方法の制限内での加工でも理想形状の生成が可能な場合には、以後の処理における近似形状は理想形状に置き換えて処理を進める。なお、本実施の形態では、与えられた面取り加工方法の制限にとらわれずに加工工具パスを生成する例として、実加工の制御方法は3軸制御であるが理想形状は5軸制御による加工を想定した形状であるような場合に、3軸制御ではあるがその加工結果が理想形状に近づくように、加工領域形状生成部8で生成した面取り加工を施す部位の加工領域形状データあるいは予め与えられた加工条件データで指示される評価指標を保持するように定義された近似形状を想定するものである。次に、工具基準位置生成部122は、理想形状のデータおよび近似形状のデータと面取り加工に関するデータと基準点列生成部121で生成された基準点とに基づいて工具が面取り加工を施しながら通過する際の面取り加工工具の基準位置を演算する。図7は、面取り加工工具パス生成の説明に用いる素材形状の一例である。図7aは上面図、正面図、側面図で構成される三面図であり、図7bは斜視図である。図7に示した加工後素材形状50の場合、面取り加工部位51、52はデータ記憶部3において記憶された面取り加工部位の特定情報によって特定された面取り加工部位である。例えば、面取り加工部位51は、キー溝加工を行ったものであり、円筒面とX軸方向の深さをもつ溝形状の側面とが交差するエッジから構成されている。面取り加工部位52は、ポケット加工を行ったものであり、円筒面と円筒面に対して45°の斜面との交差エッジから構成されている。以下、本実施の形態では、面取り加工工具パス生成に関しては、面取り加工部位51に対する工具パス生成について説明する。具体的には、面取り加工工具パス生成部9は、例えば図8に示すフローチャートに従って処理を実行する。まず、ステップS301で読み出した加工単位から得られる工具と加工条件のデータに基づき、加工における制御軸に関するデータを取得する。通常、面取り加工の場合に加工対象部位に対してある一定の範囲内の角度で工具を接触させようとすると、ボールエンドミルであれば3軸加工でも可能であるが加工品位に問題が生じる場合がある。また、フラットエンドミルや面取りカッターを用いて加工する場合は高品位な加工面が得られるが、回転軸の制御が必要となる場合が生じる。本実施の形態の場合は、前述のように実加工の制御方法は3軸制御であるが理想形状は5軸制御による加工を想定した形状であるような場合に、3軸制御ではあるがその加工結果が少しでも理想形状に近づくように加工を行う場合を想定するものである。ステップS301では、加工領域形状生成部8に記憶されている面取り加工の加工単位から加工情報を読み出す。具体的には、加工単位ごとに記憶されている面取り加工に用いる工具の情報、面取り加工を施す部位の形状情報、加工条件、面取り形状のパターンおよびパラメータである。ステップS302では、読み出した加工情報のうち、面取り加工部位形状データと面取り形状パターンに基づいて定義される面取り加工後の面取り加工形状が不正であるかどうかを判断する。例えば、厚さ0.5mmの部位に0.5mmの面取り量の加工を施すことは不可能であり、本実施の形態では不正と判断する。対象となる形状部位に対して面取り加工形状生成が不正であると判断した場合には、読み出した加工単位に関する面取り加工工具パス生成処理を抜け、操作者に対して警告を表示するステップS351。面取り形状パターンとは、面取り加工の定義方法をパターン化したものである。一般的な加工図面で用いられる面取り加工面の形状パターンの例としては次のようなものがある。まず、面取り加工によって除去される面取り形状の一辺の長さ以後、面取り量と、加工目的面間または素材形状の面と加工目的面間の交差エッジの隣接面と、面取り加工面との角度以後、面取り角で定義する形状パターンがある。また、交差エッジに隣接する一方の隣接面側の面取り量と、もう一方の隣接面側の面取り量とで定義する形状パターンがある。また、交差エッジの隣接面どうしがなすコーナー部の角度以後、コーナー角が90°で、交差エッジのそれぞれの隣接面の面取り量が等しくなるパターンなどがある。面取り加工形状生成が不正でない場合には、ステップS303に進む。ステップS303では、図2に示したフローチャートのステップS215に相当する面取り加工部位形状データ抽出処理によって抽出されたエッジEii=0,1,,N-1を読み出す。読み出したエッジEiに対して順次処理を行うために、ステップS311では、iを0に設定する。そして、ステップS312では、iがNエッジの総数より小さいかどうかを判断する。i<Nを満たす場合はステップS321へ進む。i<Nを満たさない場合は面取り加工工具パスの生成の処理が終了し、図2に示したフローチャートのステップS217に進む。次に、ステップS321では、隣接面の形状に応じて、読みだしたエッジEiに対して工具パスの基準となる基準点列を求める。エッジから基準点を求める方法にはいくつかあるが、本実施の形態では、エッジが直線ならばその端点を基準点とし、エッジが曲線ならば直線近似するようにエッジを分割した点を基準点とする。ただし、3次元の曲線エッジの場合に精度を追求すると演算が必要以上に煩雑になる場合があるため、ある程度の精度範囲内に収まり、かつ基準点間の間隔が粗となりすぎないような近似値をとる。ステップS322では、エッジEiの分割点Piji=0,1,,N-1,j=0,1,M-1間の間隔をチェックする。ステップS323では、得られた分割点Pijに対して点の間隔の粗密を判断する。間隔が疎であれば、ステップS324で修正処理を行う。分割点の粗密の判断については、例えば予め設定された許容値を基に判断することができる。次に、工具が面取り加工を施しながら通過する際の面取り加工工具の基準位置を求めるための処理について説明する。ステップS325では、得られた分割点Piji=0,1,,N-1,j=0、1、M-1を基準点Pijとして、基準点Pijを1点ずつ読み出す。読み出した基準点Pijに対して順次処理を行うために、ステップS331では、jを0に設定する。そして、ステップS332では、jがM分割点の総数より小さいかどうかを判断する。j<Mを満たさない場合は処理が終了し、j<Mを満たす場合はステップS341へ進む。ステップS341では、それぞれの基準点Piji=0,1,,N-1,j=0,1,M-1に対して、工具基準位置Qiji=0,1,,N-1,j=0,1,M-1を生成するための演算を行う。以下、基準点Pijに対する工具基準位置Qijの求め方について説明する。面取りカッターが面取り加工を施しながら通過する際の面取り加工工具位置の基準となる工具基準位置は、工具の位置を特定できる点であればよいが、関連する演算処理の効率性を考えて、本実施の形態では、ある断面平面において切り取られる面取り加工面の中点とする。なお、本実施の形態で用いる演算方法は、エッジ番号iやエッジ分割番号jによらない演算方法であるため、以降の説明では面取り部位のエッジをE、エッジEに対する基準点をP、理想形状の保持データを保持した近似形状から求められる工具基準位置をQとする。まず、本実施の形態の計算に用いる、理想形状あるいは近似形状における基準断面について説明する。図9は、本実施の形態で定義する理想形状における基準断面F5の説明図である。基準断面は面取りカッターの工具軸方向を含んだ平面となる。図9aは加工後素材形状50の斜視図、図9bは溝形状の面取り加工部位51周辺のYZ平面で見た図、図9cは溝形状の面取り加工部位51周辺のXZ平面で見た図である。面取り加工の対象部位として選択された加工目的面間または素材形状の面と加工目的面間の交差エッジ以後、面取り部位エッジEの基準点Pにおける方向ベクトルの単位ベクトルを基準ベクトルT5とするとき、基準ベクトルT5に垂直、かつ基準点Pを通る平面を基準断面F5とする。また、近似形状の場合も同様にして求めることができる。図9に示す例の場合では、近似形状の基準断面F3はX軸を含む平面となる。図10は、基準断面F5で切り取られた理想形状の断面図であり、本実施の形態の場合では、面取りカッターが素材形状に対して5軸加工による加工を行いながら基準点Pを通過するときの模式図である。ここで、T5は基準ベクトル、F5は理想形状の基準断面、C5は基準断面F5上に表現される理想形状における面取り加工面、L5は面取り加工面C5の面取り幅、Ps5は基準断面F5上の面取り加工面C5の始点、Pe5は基準断面F5上の面取り加工面C5の終点、点Pi5は基準断面F5上の面取り加工面C5上の任意の点、FM、FNはそれぞれ面取り部位エッジEで隣接する二つの面のエッジEに対する接平面、M5は接平面FMの法線ベクトルを基準断面F5に投影した単位ベクトル、N5は接平面FNの法線ベクトルを基準断面F5に投影した単位ベクトル、Qは面取り加工面C5上の中点である本実施の形態における理想形状に対する工具基準位置、をそれぞれ表している。なお、加工プログラム記憶部3に記憶されたデータ、または加工プログラム解析部6で解析されたデータから、面取り部位エッジE、基準点P、基準ベクトルT5、接平面FM、FNを求めることができるので、基準点Pをpx、py、pz、基準ベクトルT5をtx、ty、tzとすると、基準断面F5は式1より求めることができる。txX-pxtyY-pytzZ-pz=01この基準断面F5と理想形状との交点計算によって面取り加工面C5の始点Ps5と終点Pe5とを求めることができ、面取り加工面C5の始点Ps5と終点Pe5との間の距離である面取り幅L5も求めることができる。さらに、基準断面F5と接平面FM、FNの法線ベクトルから単位ベクトルM5、N5を求めることができる。図11は、図10に示した理想形状に対する近似形状の断面図であり、本実施の形態の場合では、面取りカッターが直交3軸加工による加工を行いながら基準点Pを通過するときの模式図である。図9を使って説明すると、直交3軸加工の工具軸方向X軸に対して垂直な平面上に基準ベクトルT5を投影して得られるベクトルの単位ベクトルが近似形状の基準ベクトルT3である。図11において、F3は基準ベクトルT3を法線ベクトルにもち、かつ基準点Pを通る平面である近似形状の基準断面、C3は基準断面F3上に表現される近似形状における面取り加工面であり、面取りカッターがYZ平面に対して垂直な姿勢であるときの加工によって切り取られる加工面である。面取り加工面C3の傾斜角は面取りカッターのテーパ半角αと同じとする。また、L3は面取り加工面C3の面取り幅、Ps3は基準断面F3上の面取り加工面C3の始点、Pe3は基準断面F3上の面取り加工面C3の終点、M3は接平面FMの法線ベクトルを基準断面F3に投影した単位ベクトル、N3は接平面FNの法線ベクトルを基準断面F3に投影した単位ベクトル、をそれぞれ表している。本実施の形態では、理想形状に基づいて定義された面取り部位エッジEの接平面FM、FNを近似形状の接平面として演算に用いる。実際には、近似形状における接平面と理想形状の接平面FM、FNは必ずしも一致しない場合があるが、本実施の形態は近似計算による処理であるので近似形状の接平面をFM、FNとしても計算結果に不都合はない。次に、面取り幅を保持データとする場合の工具基準位置を求める処理について説明する。直交3軸加工で生成された近似形状の面取り加工面の傾斜は、使用した面取りカッターのテーパ半角に依存するため、理想形状の面取り加工面の傾斜と近似形状の面取り加工面の傾斜とは一致しない場合が生じる。そこで、本実施の形態で用いた面取り幅データの保持方法の考え方は、理想形状の面取り加工面の幅と近似形状の面取り加工面の幅とが一致すれば、理想形状の面取り加工面の傾斜と近似形状の面取り加工面の傾斜とが異なってもよいという考え方であり、このようにして生成した近似形状を基に工具基準位置を計算する。本実施の形態の場合、面取り加工面の幅が、近似計算における評価指標として形状データの構成要素となる。図12に、理想形状の面取り加工面の幅と近似形状の面取り加工面の幅との一致について説明するための図を示す。具体的には、図12に示すように、理想形状の面取り幅の値と同じ面取り幅の値をとる近似形状の面取り加工面C3を、基準断面F5上に基準ベクトルT5の方向で射影したときの面取り加工面C35の幅が理想形状の面取り加工面C5の面取り幅L5と一致することである。なお、直交3軸加工で生成された近似形状の面取り加工面の傾きは、使用した面取りカッターのテーパ角αと一致する。図13に、面取り幅を保持データとする場合の工具基準位置を求める処理のフローチャートを示す。まず、ステップS401で与えられた加工条件が理想形状を得るために十分であるかどうかを判断し、与えられた面取り加工方法の制限内では理想形状の生成が不可能な場合にはステップS411に進み、面取り加工方法の制限内では理想形状の生成が可能な場合にはステップS421に進む。ステップS411では、面取り加工方法の制限内で実現可能、つまり本実施の形態の場合では直交3軸加工によって生成される形状を近似形状とする。次に、ステップS412では、近似形状の基準断面F3上の面取り加工面C3の面取り幅L3を求める。なお、保持データである理想形状の基準断面F5上の面取り加工面C5の面取り幅L5は、図10に示すように基準断面F5上の面取り加工面C5の始点Ps5と終点Pe5から算出できる。図14に面取り幅を保持データとする場合の処理計算に関する説明図を示す。図14aに示すように、面取りカッターのテーパ半角をα、近似形状の基準断面F3上での面取り幅がL3となるときの面取り加工面の高さをh3、面取り加工面の幅をw3とすると、面取り幅L3は式2のように表される。また、図14bに示すように、近似形状の基準断面F3と理想形状の基準断面F5とのなす角をθとし、近似形状の面取り加工面C3の高さをh3とする。なお、理想形状の面取り加工面C5の高さをh5とする。そして、近似形状の面取り加工面C3を理想形状の基準断面F5上に基準ベクトルT5の方向で射影したときの面取り加工面C35の面取り幅をL35、面取り加工面C35の高さをh35、面取り加工面C35の幅をw35とすると、面取り幅L35は式3のように表される。なお、w35=w3、h35=h3cosθとする。ここで、面取り幅L3と面取り幅L35との関係は、kを用いて式4にように表される。L3=kL35k≧14ここで、kは式5のように表される。さらに、h3/w3=r3とすると、式5は式6のように表される。なお、面取りカッターのテーパ半角αを用いて、r3は式7のように表される。以上のことから、kは近似形状の面取り加工面の高さh3に対する面取り加工面の幅w3の長さの割合、つまり面取りカッターのテーパ半角と理想形状の基準断面F5の傾きとに依存する値であることがわかる。よって、面取り加工面C35の面取り幅L35が面取り幅Lと等しくなるような近似形状の面取り加工面の面取り幅L3を求めればよいことがわかる。ここでは、面取り幅L、面取りカッターのテーパ半角α、さらに、基準ベクトルT5、T3から基準断面F5とF3のなす角θがわかっているので、式4、6、7より、面取り幅L3を求めることができる。ステップS413では、近似形状の面取り加工面C3の面取り幅がL3となるときの始点Ps3および終点Pe3を求める。図15、図16は、近似形状の基準断面F3上での面取り面の模式図である。M3、N3は接平面FM、FNのそれぞれ法線ベクトルである。基準点Pから終点Pe3までの線分上を動く点をPe3t、同様に基準点Pから始点Ps3上を動く点をPs3t、点Ps3tから点Pe3tまでの距離をL3tとする。この場合、基準点Pから終点Pe3方向への単位ベクトルLe3=PPe3t0となる点Pe3t0に対し、三角形PPe3t0Pe3t0が三角形PPe3Pe3と相似となるような点Ps3t0を定め、ベクトルPPs3t0をベクトルLs3とする。面取り加工面C3と接平面FMとのなす角をβs3、面取り加工面C3と接平面FNとのなす角をβe3とすると、図15より、単位ベクトルLe3とベクトルLs3と面取り幅L3との関係は式8、9のように表される。Le3sinβe3=Ls3sinβs38L3=Le3cosβe3Ls3cosβs39式8を変形すると式10になる。ここで、Ls3t=Ls3tと置き換えることができるので、式10は式11となる。式9、11より、距離L3tは式12のように表される。ここで、ベクトルLs3を1とし、L3t=L3となるtをtLとすると、式12は式13になる。ここで、基準断面F3上の面取り加工面C3の終点Pe3は、基準点P、前述のtL、ベクトルLeを用いて式14のように表すことができる。Pe3=PtLLe14ベクトルLeは、式15のように、近似形状の基準ベクトルT3と接平面FNの法線ベクトルN3とを外積することによって求めることができる。ここで×は外積を表わす。Le=T3×N315式14、15より、基準断面F3上の面取り加工面C3の終点Pe3を式16より求めることができる。Pe3=PtLT3×N316同様に、基準断面F3上の面取り加工面C3の始点Ps3は、接平面FMの法線ベクトルを基準断面F3に投影した単位ベクトルM3を使って式17より求めることができる。Ps3=PsLM3×T317ここで、sLは、式18より求めることができる。このようにして、近似形状の面取り加工面C3の面取り幅がL3となるときの始点Ps3および終点Pe3を求めることができる。なお、加工面C3と接平面FM、FNとのなす角をβs3、βe3については、図16より次のように計算して求める。工具軸方向に対して接平面FMの法線ベクトルM3がなす角をθM3、工具軸方向に対して接平面FNの法線ベクトルN3がなす角をθN3とすると、法線ベクトルM3と法線ベクトルN3とがなす角はθM3θN3となる。したがって、接平面FMと接平面FNとがなす角である∠Ps3PPe3はπ-θM3θN3となる。また、工具軸方向と面取り加工面C3とのなす角は面取りカッターのテーパ半角と等しくαである。面取り加工面C3と接平面FMとのなす角∠PPs3Pe3であるβs3および面取り加工面C3と接平面FNとのなす角∠PPe3Ps3であるΒe3は、それぞれ式19、20のように表される。βs3=π/2-αθM319βe3=-π/2αθN320次に、ステップS414で示すように、本実施の形態では、基準平面F3上の面取り加工面C3上のある点に対して基準平面F5上に射影して得られる点を面取り加工の基準位置とする。例えば、射影される点を面取り加工面C3の中点Pm3を基準位置として求めてもよい。中点Pm3は線分Ps3Pe3の中点であり、式16、17を用いて式21のように表される。Pm3=Ps3Pe3/2=PsLM3×T3tLT3×N3/221なお、この例では、射影される点を面取り加工面C3の中点Pm3として基準位置を求める処理を行っているが、面取り加工面C3上の任意の点を基準位置としてもよい。ステップS415では、加工面取り面C3の中点Pm3を基準断面F5上に基準ベクトルT5の方向に射影して得られる点Pm35を求める。図17は、基準平面F3、F5の法線ベクトルT3、T5に対して垂直な方向から見た点P、Pm3、Pm35に関する模式図である。基準ベクトルT5は線分PPm35と垂直の関係にあるので、<x,y>をxとyとの内積を表す記号とすると、式22が成り立つ。<T5,Pm3-P>=022ここで、式22を用いて係数dを式23のように表す。d=-<T5,Pm3-P>23基準断面F3とF5となす角∠Pm3PPm35はθである。ここで、Pm35は式24のように表すことができる。Pm35=Pm3dT524式23および式24より、式25のような関係を得ることができる。Pm35=Pm3-<T5,Pm3-P>T525このようにして、点Pm35を求め、ステップS416でPm35を面取り加工の基準位置とする。ところで、ステップS401で、与えられた加工条件が理想形状を得るために十分であるかどうかを判断し、与えられた面取り加工方法の制限内では理想形状の生成が可能な場合にはステップS421に進む。ステップ421では、与えられた面取り加工方法の制限内で理想形状を近似形状として考え、理想形状を生成すればよい。ステップS422で、その理想形状の幾何データから面取り加工面C5の始点Ps5と終点Pe5とを算出し、ステップS423で、始点Ps5と終点Pe5とを用いてその中点Pmを算出し、ステップS424で、中点Pmを面取り加工の基準位置とする。次に、加工の工具基準位置を保持データとする場合の処理について説明する。本実施の形態で用いた工具基準位置の保持方法の考え方は、理想形状上の任意の点に相当する点を近似形状上に求め、直交3軸加工を施しながら加工工具が理想形状上の任意の点に相当する点を通過することで生成される近似形状上の面取り加工面に対して工具基準位置を求めるものである。この近似形状上の工具基準位置に相当する点を理想形状上に求め、これを工具基準位置とする方法である。本実施の形態の場合、加工の工具基準位置が、近似計算における評価指標として形状データの構成要素となる。図18に、工具基準位置を保持データとする場合の説明図を示す。具体的には、図18に示すように、理想形状の面取り加工面C5上に設定した任意の点Pi5を基準断面F3上に基準ベクトルT5の方向で射影し、工具が直交3軸加工を施しながらその射影点Pi53を通過する場合に生成される面取り加工面C3に対して工具基準位置Pm3を求める。そして、点Pm3を面取り加工面C5上に基準ベクトルT5の方向で射影した点Pm35を求め、工具基準位置とする方法である。図19は、理想的な加工における工具基準位置を保持データとする場合の近似的な加工における工具基準位置を求める処理のフローチャートである。まず、ステップS501で与えられた加工条件が理想形状を得るために十分であるかどうかを判断し、与えられた面取り加工方法の制限内では理想形状の生成が不可能な場合にはステップS511に進み、与えられた面取り加工方法の制限内では理想形状の生成が可能な場合にはステップS521に進む。面取り加工方法の制限内では理想形状の生成が可能な場合、例えば本実施の形態の場合では直交3軸加工によって生成される形状を近似形状とする。ステップS512では、理想形状の面取り加工面C5上に任意の点Pi5を設定する。なお、任意の点Pi5は面取り加工面C5の線分Ps5Pe5をm1-mに分割する。ただし、0≦m≦1である。このとき、点Pi5は式26のように表される。Pi5=1-mPs5mPe526ステップS513では、点Pi5を近似形状の基準断面F3上に理想形状の基準方向T5で射影した点Pi53を求める。図20は、基準平面F3、F5の法線ベクトルT3、T5に対して垂直な方向から見た点P、Pi5、Pi53に関する模式図である。図20より、点Pi53は式27のように表される。Pi53=Pi5d53T527ここで、係数d53は式28から求めることができる。d53=|Pi5-P|tanθ28次に、ステップS514では、直交3軸加工を施しながら加工工具が点Pi53を通過することで生成される近似形状上の面取り加工面C3に対して工具基準位置を求める。近似形状の面取り加工面C3における工具基準位置として中点Pm3を算出するために、面取り加工面C3の始点Ps3、終点Pe3を算出する必要がある。図21は、近似形状の基準断面F3上での面取り面の模式図である。M3、N3は接平面FM、FNのそれぞれ法線ベクトルである。点Pi53を通る面取り加工面C3の始点Ps3と終点Pe3に対して、始点Ps3から終点Pe3へ向かう単位ベクトルをV、始点Ps3と終点Pe3との間に位置する点をPtとするとtはパラメータ、単位ベクトルVは式29のように表される。単位ベクトルVを使って、点Ptは式30のように表される。Pt=Pi53Vt30次に、点PtがPs3となるtをtsとすると、式31が成り立つ。PS3=Pi53Vts31また、接平面FMのそれぞれ法線ベクトルM3に対して線分PPs3線分PPtsが垂直であるので、式32が成り立つ。<M3,Pts-P>=032式30、式32より、式33を得ることができる。<M3,Pi53-P><M3,V>=033そして、式19の関係を利用して、tsを式34のように表すことができる。ts=-1/cosα-θM<M3,Pi53-P>34これらの式27、式29、式34を式31に代入して始点Ps3を算出することができる。終点Pe3についても同様に算出することができる。式31と同様に、終点Pe3にてついても式35が成り立つ。Pe3=Pi53Vte35また、式34と同様に、終点Pe3についても式36が成り立つ。te=-1/cosαθN<N3,Pi53-P>36これらの式27、式29、式36を式35に代入して終点Pe3を算出することができる。このようにして、面取り加工面C3の始点Ps3および終点Pe3が算出できる。面取り加工面C3の中点Pm3は式37のように表される。Pm3=Pi53ts-te/2V37さらに、ステップS515では、点Pm3を基準平面F5上に基準ベクトルT5の方向へ射影した点Pm35を算出する。算出方法は、図17を用いて説明した方法と同様であり、点Pm35は式25と同様に表すことができる。そして、ステップS516で、点Pm35を求める工具基準位置とする。ところで、ステップS501で、与えられた加工条件が理想形状を得るために十分であるかどうかを判断し、与えられた面取り加工方法の制限内では理想形状の生成が可能な場合にはステップS521に進む。ステップS521では、与えられた面取り加工方法の制限内で理想形状を近似形状として考え、理想形状を生成すればよい。ステップS522で、その理想形状の幾何データによって面取り加工面C5の始点Ps5と終点Pe5とを算出し、ステップS523で、始点Ps5と終点Pe5とを用いてその中点Pm5を算出し、ステップS524で、中点Pm5を面取り加工の基準位置とする。以上のように、面取り加工の対象部位の形状データとしての加工領域形状データ、使用工具データ、制御方法を含む加工条件データに基づいて、面取り加工方法の制限にとらわれずに、かつ、操作者の意図を反映させた面取り加工のための工具パスデータを生成する面取り加工工具パス生成部を備えたことによって、簡単な操作で操作者が意図する面取り加工の工具パスを生成できるので、回転軸を含む多軸制御による加工機での面取り加工面に近似した直交3軸制御による加工機での面取り加工の工具パスを生成でき、操作時間が短縮でき加工能率が向上させることができる。また、使用する工具種類と加工条件を満たす実現可能な面取り加工の工具パスを生成することから、与えられた条件下において実現可能な面取り加工を行うことができる。例えば、使用工具データおよび加工条件データに基づく面取り加工方法の制限内で可能な面取り加工を実施する工具パスを生成するための工具基準位置データを生成することから、与えられた条件下において実現可能な面取り加工が行える。面取り加工方法の制限によって操作者が想定する理想どおりの形状が加工できない場合に、理想形状に対する近似形状を加工対象形状とする。そして、近似形状を生成する際には、理想とする形状の構成要素のうち近似形状にも保持させたい形状データに関しては近似形状にも保持させることができ、面取り加工方法の制限内であっても操作者の意図を反映させた近似形状が生成できる。"