"CAMシステムにおいて素材から製品へ加工するための複数の加工工程のツールパスを生成する、複数のCPUを搭載した処理装置における並列分散処理方法であって、加工前の素材形状を表す素材CADデータと、加工後の製品形状を現す製品CADデータと、加工工程別の加工領域を表す加工領域データと、を保持するステップと、前記素材CADデータ、前記製品CADデータ及び前記加工領域データとを使用して、加工順序を算出するステップと、加工順序の算出結果から、加工順序の制約がなく並列処理可能な複数の加工領域を抽出するステップと、それぞれの加工領域におけるツールパス生成処理に対しCPUを割り付けて並列分散処理を行うステップとを有することを特徴とする並列分散処理方法。請求項1に記載の並列分散処理方法において、加工領域をノード、加工順序をエッジとして加工領域ネットワークを生成するステップを有することにより、加工順序の制約がなく並列処理可能な加工領域を抽出することを特徴とする並列分散処理方法。請求項2に記載の並列分散処理方法において、下記条件式を満たす加工領域を加工順序の制約がなく並列処理可能な加工領域として抽出することを特徴とする並列分散処理方法。条件式並列処理可能な加工領域=ツールパスが未生成∧請求項1に記載の並列分散処理方法において、前記加工順序を算出するステップにおいて、前記製品CADデータの要素モデルのフェース上に離散点を生成し、前記離散点から前記素材CADデータのモデル方向へ生成した法線ベクトル上の複数加工領域に対してベクトルの長短を比較して加工順序を決定することを特徴とする並列分散処理方法。請求項1に記載の並列分散処理方法において、ツールパス生成中の複数工程と、ツールパス生成中の複数の加工領域を画面表示するステップを備えることを特徴とする並列分散処理方法。請求項1に記載の並列分散処理方法において、ツールパス生成処理に使用した複数のCPUと、各CPUが割付けられた加工領域と、前記加工領域毎のツールパス生成処理時間を出力することを特徴とする並列分散処理方法。CAMシステムにおいて素材から製品へ加工するための複数の加工工程のツールパスを生成する、複数のCPUを搭載した並列分散処理装置であって、加工前の素材形状を表す素材CADデータと、加工後の製品形状を現す製品CADデータと、加工工程別の加工領域を表す加工領域データと、を保持する記憶部と、前記記憶部に記憶された前記素材CADデータ、前記製品CADデータ及び前記加工領域データとを使用して、加工順序を算出する処理部と、を備え、前記処理部は、加工順序の算出結果から、加工順序の制約がなく並列処理可能な複数の加工領域を抽出し、それぞれの加工領域におけるツールパス生成処理に対しCPUを割り付けて並列分散処理を行うことを特徴とする並列分散処理装置。請求項7に記載の並列分散処理装置において、前記処理部は、加工領域をノード、加工順序をエッジとして加工領域ネットワークを生成することにより、加工順序の制約がなく並列処理可能な加工領域として抽出することを特徴とする並列分散処理装置。請求項8に記載の並列分散処理装置において、前記処理部は、下記条件式を満たす加工領域を加工順序の制約がなく並列処理可能な加工領域として抽出することを特徴とする並列分散処理装置。条件式並列処理可能な加工領域=ツールパスが未生成∧請求項7に記載の並列分散処理装置において、データを出力する出力部を有し、前記出力部は前記処理部において算出した、複数の加工領域において並列処理可能な複数の加工領域の情報を出力することを特徴とする並列分散処理装置。請求項7に記載の並列分散処理装置において、データを出力する出力部を有し、前記出力部はそれぞれの加工領域におけるツールパス生成処理に対しCPUを割り付けたCPUの情報を出力することを特徴とする並列分散処理装置。上記のような前加工後の削り残り形状を認識し次の工程の加工領域として自動生成する機能では,前工程の削り残り形状を利用する。このため,CAMシステムではツールパス生成処理を実行する際に全ての領域のツールパス生成を順列処理しており,処理時間が長くなるという課題がある。また,特許文献1では距離情報によって処理対象を複数グループに分けて並列処理しているが,処理順序に制約はない。これに対し、本発明で対象とするツールパス生成処理は前工程の削り残り形状を利用するため,工程間の処理順序制約が生じてしまう。処理順序制約が生じた場合、特許文献1の記載の例では、並列処理ができず,処理時間を削減できなくなるという課題がある。以上より、本発明は,加工順序制約のある加工工程においてもツールパス生成処理時間を短縮することを課題とする。上記課題を解決するためCAMシステムにおいて素材から製品へ加工するための複数の加工工程のツールパスを生成する、複数のCPUを搭載した処理装置における並列分散処理方法であって、加工前の素材形状を表す素材CADデータと、加工後の製品形状を現す製品CADデータと、加工工程別の加工領域を表す加工領域データと、を保持し、前記素材CADデータ、前記製品CADデータ及び前記加工領域データとを使用して、加工順序を算出し、加工順序の算出結果から、加工順序の制約がなく並列処理可能な複数の加工領域を抽出し、それぞれの加工領域におけるツールパス生成処理に対しCPUを割り付けて並列分散処理を行う。また、加工領域をノード、加工順序をエッジとして加工領域ネットワークを生成するステップを有することにより、加工順序の制約がなく並列処理可能な加工領域を抽出する。また、加工順序を算出するステップにおいて、製品CADデータの要素モデルのフェース上に離散点を生成し、離散点から素材CADデータのモデル方向へ生成した法線ベクトル上の複数加工領域に対してベクトルの長短を比較して加工順序を決定する。本発明によれば,CAMシステムを利用して複数の加工工程のツールパスを生成する場合の生成処理時間を短縮することができる。以下、本発明の一実現形態について,図面を用いて説明する。図1は,本発明の並列処理装置の一実現例にかかる機能構成図である。本発明は,処理部1と,記憶部2と,入力部3と,出力部4と,表示部5からなる。処理部1は,加工順序算出部10と,加工領域ネットワーク算出部11と,並列処理可能領域集合算出部12と,空きCPU取得部13と,CPU割付け部14からなる。記憶部は,素材CADデータ保持部20と,製品CADデータ保持部21と,加工工程別加工領域データ保持部22と,CPU構成データ保持部23と,加工順序候補リスト保持部24と,並列処理可能領域集合データ保持部25と,ツールパス生成済み領域集合データ保持部26と,CPU割付け結果データ保持部27と,ツールパスデータ保持部28からなる。本並列処理装置で実現する並列処理方法について説明する。はじめに,加工前の素材形状を定義する素材CADデータと,加工後の製品形状を定義する製品CADデータと,加工工程別の加工領域を定義する加工領域データと,CPU構成データを入力部3より入力し,それぞれ,素材CADデータ保持部20,製品CADデータ保持部21,加工工程別加工領域データ保持部22,CPU構成データ保持部23に保持する。図1の加工順序算出部10では,素材CADデータ保持部20のデータと,製品CADデータ保持部21のデータと,加工工程別の加工領域データ保持部22のデータを入力とし,加工領域の重複関係を判定して加工順序を算出する。この処理について説明する。図2に,加工順序算出部10の処理フローを示す。はじめに,製品CADデータ保持部21のデータから作成した製品CADモデルの要素モデルフェース上に離散点を生成する。図3は,要素モデルフェース上への離散点生成の概念図であり,製品CADデータから生成した製品CADモデル210a中の要素モデル211aのフェース上に複数の離散点を生成した例である。離散点の生成方法としては,例えば,要素モデルの各軸方向に一定間隔で断面曲線を抽出し,断面曲線の交点上に離散点を生成する方法がある。また,例えば,要素モデルのフェースをBezier曲面やNURBS曲面等で表現し,制御点を離散点とする方法等がある。次に,加工領域の加工順序を算出する。このとき,要素モデルが凸形状の場合は凸形状の加工順序算出処理S102aを,凹形状の場合は凹形状の加工順序算出処理S102bを行う。まず,凸形状の加工順序算出処理S102aについて述べる。図4に,凸形状の加工順序決定処理フローを表す。加工順序決定処理では,はじめに,離散点を選択するS1021a。次に,製品CADモデル上の選択した離散点における接平面を算出するS1022a。ここで,曲面zfの離散点における接平面は,式1で定義できる。z=fxfyz0式1式1を用いて,製品CADモデル上の離散点における接平面を算出する。次に,離散点から素材CADモデルの方向に,離散点を基点とした接平面の法線ベクトルを生成し,ベクトルの長短に従って法線ベクトル上の複数加工領域間の加工順序を算出する。S1021aからS1024までの処理を全ての離散点について行う。図5に,凸形状要素モデル211a上の離散点P1における法線ベクトルを用いた加工順序決定の概念図を示す。素材CADデータ保持部20のデータから生成した素材CADモデル200aに対し,加工領域1221a,加工領域2222a,加工領域3223a,加工領域4224a,加工領域5225aを加工する。いま,離散点P1を基点とし,素材CADモデル200aの方向へ,離散点P1における接平面の法線ベクトルV1を引くS1023a。すると,法線ベクトルV1上には加工領域1221aと加工領域2222aの2つの加工領域がある。ここで,ベクトルの長短に従い法線ベクトル上の複数加工領域間の加工順序を算出する処理S1024を行う。このとき,加工領域1221aへのベクトルの長さと加工領域2222aへのベクトルの長さを比較すると,加工領域1221aへのベクトルが長く,要素モデル211aに対して加工領域1221aは加工領域2222aよりも外側にあることがわかる。すなわち,加工領域2222aを加工するためには,先に加工領域1221aを除去しなければならないため,加工順序は加工領域1221aを先に,加工領域2222aを後に加工する順序となる。図6に,上記の,ベクトルの長短に従い法線ベクトル上の複数加工領域間の加工順序を算出する処理S1024のフローを示す。始めに,法線ベクトル上の加工領域を2つ選択し,領域Aと領域Bとする。次に,離散点から領域Aへのベクトルの長さが,離散点から領域Bへのベクトルより長い場合は,領域Aを先に,領域Bを後に加工する加工順序とする。離散点から領域Aへのベクトルの長さが,離散点から領域Bへのベクトルより短い場合は,領域Bを先に,領域Aを後に加工する加工順序とする。この判定を,法線ベクトル上の全ての加工領域の組合せに対して行う。このように,凸形状では法線ベクトル上の複数の加工領域についてベクトルの長短を比較することにより,複数加工領域間の加工順序を求められる。この加工順序の判定を全ての離散点について行い,各離散点上の加工領域間の加工順序を求める。次に,図2の凹形状の加工順序算出処理について図7を用いて述べる。はじめに,離散点を選択する。次に,前述の式1を用いて,製品CADモデル上の選択した離散点における接平面を算出するS1022b。次に,離散点から素材CADモデルの方向に,離散点を基点とした接平面の法線ベクトルを生成する。図8に凹形状要素モデル211bにおける法線ベクトルを用いた加工順序決定の概念図を示す。素材CADモデル200bに対し,加工領域1221b,加工領域2222b,加工領域3223b,加工領域4224b,加工領域5225bを加工する。いま,要素モデル201b上の離散点P2を基点とし,素材CADモデル200bの方向へ接平面の法線ベクトルV2を引く。すると,法線ベクトルV2上には加工領域221b,加工領域222b,加工領域223b,加工領域224b,加工領域225bの5つの加工領域がある。この5つの加工領域に対し,ベクトルの長短に従い,法線ベクトル上の複数加工領域間の加工順序を算出するS1024。この法線ベクトル上の複数加工領域間の加工順序算出処理は,前述の図6のフローに従う。次に,算出した加工順序を加工順序候補リストに保持する。図9に加工順序候補リスト24の例を示す。加工順序候補リスト24は,ベクトル名240と,先に加工する領域名241と,後に加工する領域名242からなる。いま,法線ベクトルV2上の加工領域は,ベクトルが長い順に,加工領域,加工領域,加工領域,加工領域,加工領域となる。ベクトルの長短に従い,加工領域を最初に,加工領域を最後に順次加工する加工順序を加工順序候補リスト24に保持する。次に,離散点の選択に戻り,要素モデル201b上の離散点P3を基点とし,素材CADモデル200bの方向へ接平面の法線ベクトルV3を引く。すると,法線ベクトルV3上の加工領域は,ベクトルが長い順に,加工領域,加工領域,加工領域,加工領域,加工領域となる。ベクトルの長短に従い,加工領域を最初に,加工領域を最後に順次加工する加工順序を加工順序候補リスト24に保持する。次に,離散点の選択に戻り,要素モデル201b上の離散点P4を基点とし,素材CADモデル200bの方向へ接平面の法線ベクトルV4を引く。すると,法線ベクトルV4上の加工領域は,ベクトルが長い順に,加工領域,加工領域となる。ベクトルの長短に従い,加工領域を先に,加工領域を後に加工する加工順序を加工順序候補リスト24に保持する。ここで,加工順序候補リスト24をみると,例えば加工領域と加工領域に対して,法線ベクトルV2から求めた加工領域を先に,加工領域を後に加工する順序と,法線ベクトルV3から求めた加工領域を先に,加工領域を後に加工する順序の両方がある。このような状態を加工順序が双方向になる組合せと定義する。加工順序が双方向になっている加工領域の組合せは,どちらの領域を先に加工しても良いが,どちらを先に加工するか決定する必要がある。先に加工する領域の決定方法としては,ベクトルの長さを比較する方法や,加工領域の体積を比較する方法等があるが,ここではオペレータが加工順序を指定する方法を例として示す。まず,加工順序候補リストの中で加工順序が双方向になる組合せを抽出する。本例では,図13にハッチングで示した,加工領域221b,加工領域222b,加工領域223b,加工領域224b,加工領域225bに対する加工順序が双方向になっている。これらの加工領域に対し,オペレータにより加工順序を指定する。例えば,加工順序が双方向になっている加工領域221b,加工領域222b,加工領域223b,加工領域224b,加工領域225bの中で,最初に加工する領域としてオペレータが加工領域223bを指定する。すると,加工順序候補リスト31で加工順序が双方向になっていた,加工領域と加工領域に対し,加工領域を先に,加工領域を後に加工する順序と決定できる。また,加工領域と加工領域に対しても,加工領域を先に,加工領域を後に加工する順序と決定できる。そして,決定した加工順序を残し,逆の加工順序を削除するように,加工順序候補リストを更新する。このオペレータによる加工順序の指定と加工順序候補リストの更新を,加工順序が双方向になる組合せがなくなるまで繰り返し,複数加工領域間の加工順序を一意に求める。図10に,加工順序が双方向になる組合せがなくなった加工順序候補リストの例243を示す。このように,凹形状では全離散点で法線ベクトル上の複数加工領域の加工順序を求めた後,加工順序候補リストから加工順序が双方向になる領域を抽出して,それぞれの領域間の加工順序を求める。次に,求めた加工順序に基づき,加工領域ネットワークを生成する。図1の加工領域ネットワーク生成部11では,図2に示した加工領域をノード,加工順序をエッジとした加工領域ネットワークの生成を行う。図11に加工領域ネットワークの例を示す。本例では,図5に示した凸形状の加工順序から構成した加工領域ネットワークを示している。各加工領域をノード41,各加工領域に対して上記処理S102a,S102bで求めた加工順序をエッジ42として,全ての加工領域間のネットワークを構成する。エッジ42の矢印は基点が先に処理する加工領域,先端が後に処理する加工領域を指す。このような加工領域ネットワークを構成することで,各離散点で得た加工領域間の加工順序に基づき,加工領域全体の加工順序関係を得ることができる。図1の並列処理可能領域集合算出部12では,加工領域ネットワークから,並列処理可能な加工領域集合を抽出する。並列処理可能な領域は,加工順序のない領域同士,つまり,加工領域ネットワークでノード間にエッジがなく,親子関係にないノード同士である。さらに,各ノードは,先に処理する加工領域である親ノードが全て処理されている必要がある。図11の加工領域ネットワークにおいて,これらの条件を満たす並列処理可能な加工領域は,下記の式2で定義できる。並列処理可能な加工領域=ツールパスが未生成∧...式2式2を満たす領域は,ツールパスが未生成で,なおかつ,先に処理する加工領域である親ノードが全て処理されているか,親ノードがないノードである。この条件を満たす加工領域が複数あれば,それらの加工領域は並列処理可能である。例えば,図11の加工領域ネットワークにおける,初期状態で並列処理可能な加工領域集合は,式2を用いて,ツールパスが未生成,かつ親ノードのない,加工領域と加工領域と抽出できる。図12に並列処理可能領域集合データ25の例を示す。並列処理可能領域集合データ25は,加工領域名251と,概加工領域の親ノードリスト252と,概加工領域に式1を適用した並列処理可否の判定結果253からなる。図中にハッチングで示した並列処理可否の判定結果253が可である加工領域が,並列処理可能領域集合である。図1の空きCPU取得部13では,計算機に搭載されているCPU構成データ23の中からCPU選択部19で選択した複数のCPUのうち,処理を行っていない空きCPUを随時取得する。図1のCPU割付け部14では,並列処理可能領域集合に対し,空きCPU取得部13で取得した空きCPUを割り付ける。図13に,CPU割付け部14の処理フローを示す。割り付けられる空きCPUがない場合は,空きCPUが発生するまで待機する。空きCPUがある場合は,並列計算可能領域集合から加工領域を1つ選択する。次に,空きCPUの中から最も稼働率が低いCPUを,選択した加工領域に割り付ける。次に,選択した加工領域を並列計算可能領域集合から除去する。次に,CPU割付けした加工領域のツールパスを生成する。次に,ツールパス生成した加工領域をツールパス生成済み領域集合データ27に加え,並列計算可能領域集合の親ノードから除去する。図14に,ツールパス生成済み領域集合データ26の例を示す。ツールパス生成済み領域集合データ26には,図示するようにツールパス生成処理が終了した加工領域名を保持する。図15にCPU割付け結果データ27の例を示す。横軸がツールパス生成処理に使用したCPU,縦軸が時間を表す。例えば,並列処理可能な加工領域273と加工領域274に対し,それぞれCPU271,CPU272を割付けて,同じ時間に並列処理している結果が確認できる。図1の出力部4では,並列処理可能領域集合データ保持部25,ツールパス生成済み領域集合データ保持部26,CPU割付け結果データ保持部27,ツールパスデータ保持部28に保持したデータを出力する。図16に入力表示画面の一例を示す。表示画面50は,ツールパス生成対象工程選択領域501と,CPU選択表示領域502と,素材CADデータ選択表示領域503と,製品CADデータ選択表示領域504と,を有する。ツールパス生成対象工程選択領域501は,加工工程別加工領域データ22と紐づいた加工工程を選択候補として表示する。CAMオペレータは候補表示された工程の中から,ツールパス生成対象とする工程を選択することができる。CPU選択表示領域502は,CPU構成データ23を選択候補として表示する。CAMオペレータは候補表示されたCPUの中から,ツールパス生成処理に使用するCPUを選択することができる。素材CADデータ選択表示領域503は,選択された素材CADデータを表示する。製品CADデータ選択表示領域504は,選択された製品CADデータを表示する。図17に凹部加工順序選択画面の一例を示す。表示画面51は,加工順序の選択表示領域510と,選択候補の加工領域表示領域511と,を有す。加工順序の選択表示領域510は,加工順序候補リストのうち,加工順序が双方向になる加工領域を加工順序決定の選択候補として示す。CAMオペレータは候補表示された工程の中から,先に加工する工程を選択することができる。選択候補の加工領域表示領域511は,加工順序が双方向になる加工領域を表示する。図17では加工順序が双方向になる加工領域を斜線ハッチングで表示している。図18に出力表示画面の一例を示す。表示画面52は,ツールパス生成中工程表示領域520と,ツールパス生成中加工領域表示領域521と,を有する。ツールパス生成中工程表示領域520は,ツールパス生成対象工程のうち,ツールパス生成処理中の全工程を表示する。図18では,ツールパス生成処理中の全工程を斜線ハッチングで表示している。ツールパス生成中加工領域表示領域521は,ツールパス生成対象工程のうち,ツールパス生成処理中の全工程の加工領域を表示する。図18では,ツールパス生成処理中の全工程の加工領域を斜線ハッチングで表示している。図19に出力表示画面の一例を示す。表示画面53は,CPU割付け結果データ保持部27に保持されたCPU割付け結果データを表示する。以上のように,本実施形態によれば,CAMシステムを利用して複数工程のツールパスを生成する場合に,並列処理可能な加工領域を抽出し,複数CPUを割付けて並列処理することができる。なお,本発明は上記した実施例に限定されるものではなく,様々な変形例が含まれる。例えば,上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり,必ずしも説明した全ての構成を備えるものに限定されるものではない。また,ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり,また,ある実施例の構成に他の実施例の構成を加えることも可能である。また,各実施例の構成の一部について,他の構成の追加削除置換をすることが可能である。また,上記の各構成,機能,処理部,処理手段等は,それらの一部又は全部を,例えば集積回路で設計する等によりハードウェアで実現してもよい。また,上記の各構成,機能等は,プロセッサがそれぞれの機能を実現するプログラムを解釈し,実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム,テーブル,ファイル等の情報は,メモリや,ハードディスク,SSD等の記録装置,または,ICカード,SDカード,DVD等の記録媒体に置くことができる。また,制御線や情報線は説明上必要と考えられるものを示しており,製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。"