(57)【特許請求の範囲】
【請求項１】
被加工物を目標物に加工するために工作機械を制御するための設定情報を設定するための複数のステップを表示し、
前記複数のステップのうち前記設定情報を設定するべき設定ステップを選択し、
前記設定ステップに対応する設定情報を設定するための設定インタフェースを表示し、
前記設定インタフェースを介して前記設定ステップに対応する前記設定情報が全て設定されたか否かを判定し、
前記設定ステップに対応する前記設定情報が全て設定されたと判定される場合、前記設定ステップについて設定が完了したことを示す情報を表示する、
工作機械のための入力支援方法であって、
前記複数のステップは、
前記目標物の形状を設定する第１ステップと、
前記被加工物の形状および材質を設定する第２ステップと、
前記被加工物中の前記目標物が占める部分を特定する情報を設定する第３ステップと、
前記被加工物中の前記工作機械が掴持する部分と、前記被加工物に対する切削方向とを設定する第４ステップと、
を含む、
入力支援方法。
【請求項２】
前記工作機械に装着された工具の情報を取得し、全ての前記設定ステップの各々に対応する全ての前記設定情報が設定された後、取得した前記工具の情報と前記設定情報とに基づいて、前記被加工物を前記目標物に加工するために前記工作機械を制御する加工プログラムを自動で生成する、
請求項１に記載の入力支援方法。
【請求項３】
前記被加工物の加工が穴加工とネジ加工との少なくとも１つを有するとき、前記第４ステップは、前記穴加工によって生成する穴の特性と前記ネジ加工によって生成するネジ山の特性との少なくとも１つを設定することをさらに含む、
請求項１または２に記載の入力支援方法。
【請求項４】
前記第４ステップは、前記目標物の表面の表面粗さを設定することをさらに含む、
請求項１から３のいずれかに記載の入力支援方法。
【請求項５】
前記複数のステップは、前記第１ステップ、前記第２ステップ、前記第３ステップ、及び、前記第４ステップのみから成る、請求項１から４のいずれかに記載の入力支援方法。
【請求項６】
前記設定ステップは、あらかじめ定められた順序に基づき、自動的に選択される、請求項１から５のいずれかに記載の入力支援方法。
【請求項７】
前記設定ステップの次のステップに移行するためのステップ移行インタフェースをさらに表示し、前記ステップ移行インタフェースが操作されるときに、前記設定ステップに対応する前記設定情報が全て設定されていないと判定される場合、前記次のステップに移行しない、
請求項６に記載の入力支援方法。
【請求項８】
前記設定ステップに関する前記設定情報が設定されていないとき、前記設定インタフェースを自動的に表示する、
請求項１から７のいずれかに記載の入力支援方法。
【請求項９】
前記設定ステップに関する前記設定情報の設定状態をさらに表示する、
請求項１から８のいずれかに記載の入力支援方法。
【請求項１０】
前記設定ステップに対応する、前記被加工物の形状と、前記目標物の形状とのうちの少なくとも１つを示すコンピュータグラフィックス画像を表示する、
請求項１から９のいずれかに記載の入力支援方法。
【請求項１１】
前記設定ステップに対応する、前記被加工物の形状と、前記目標物の形状とのうちの少なくとも１つを示すコンピュータグラフィックス画像を表示し、
前記コンピュータグラフィックス画像において、自動で生成される前記加工プログラムによって加工できない前記被加工物の表面を表示する、
請求項２に記載の入力支援方法。
【請求項１２】
前記設定インタフェースを呼び出すための呼出インタフェースをさらに表示し、前記設定ステップ以外のステップに対応する設定情報を設定するためのインタフェースを呼び出すためのインタフェースが表示されない、
請求項１から１１のいずれかに記載の入力支援方法。
【請求項１３】
被加工物を加工して目標物を生成するために工作機械を制御するための設定情報を設定する複数のステップを表示し、前記複数のステップの中から選択された前記設定情報を設定するべき設定ステップに対応する前記設定情報を設定するための設定インタフェースを表示するディスプレイと、
前記設定インタフェースを介して前記設定ステップに対応する前記設定情報が全て設定されたか否かを判定するプロセッサを備え、
前記ディスプレイは、前記設定ステップに対応する前記設定情報が全て設定されたと判定された場合、前記設定ステップについて設定が完了したことを示す情報を表示し、
前記複数のステップは、
前記目標物の形状を設定する第１ステップと、
前記被加工物の形状および材質を設定する第２ステップと、
前記被加工物中の前記目標物が占める部分を特定する情報を設定する第３ステップと、
前記被加工物中の前記工作機械が掴持する部分と、前記被加工物に対する切削方向とを設定する第４ステップと、
を含む、
工作機械。
【請求項１４】
被加工物を目標物に加工するために工作機械を制御するための設定情報を設定するための複数のステップを表示し、
前記複数のステップのうち前記設定情報を設定するべき設定ステップを選択し、
前記設定ステップに対応する前記設定情報を設定するための設定インタフェースを表示し、
前記設定インタフェースを介して前記設定ステップに対応する前記設定情報が全て設定されたか否かを判定し、
前記設定ステップに対応する前記設定情報が全て設定されたと判定された場合、前記設定ステップについて設定が完了したことを示す情報を表示する、
処理を実行する、工作機械のためのプログラムであって、
前記複数のステップは、
前記目標物の形状を設定する第１ステップと、
前記被加工物の形状および材質を設定する第２ステップと、
前記被加工物中の前記目標物が占める部分を特定する情報を設定する第３ステップと、
前記被加工物中の前記工作機械が掴持する部分と、前記被加工物に対する切削方向とを設定する第４ステップと、
を含む、
プログラム。
【請求項１５】
被加工物を目標物に加工するために工作機械を制御するための設定情報を設定するための複数のステップを表示し、
前記複数のステップのうち前記設定情報を設定するべき設定ステップを選択し、
前記設定ステップに対応する設定情報を設定するための設定インタフェースを表示し、
前記設定インタフェースを介して前記設定ステップに対応する前記設定情報が全て設定されたか否かを判定し、
前記設定ステップに対応する前記設定情報が全て設定されたと判定される場合、前記設定ステップについて設定が完了したことを示す情報を表示する、
工作機械のための入力支援方法であって、
前記設定インタフェースを呼び出すための呼出インタフェースをさらに表示し、前記設定ステップ以外のステップに対応する設定情報を設定するためのインタフェースを呼び出すためのインタフェースが表示されない、
入力支援方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、工作機械、工作機械のための入力支援方法、及び工作機械のためのプログラムに関する。
【背景技術】
【０００２】
特許文献１は、製品の加工プログラムの生成にあたり、加工工程順に加工に必要な情報の入力をユーザに促す、数値制御装置のための情報設定画面の表示方法を開示している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第４０４４１６９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本願に開示される技術の課題は、製品の加工に必要な情報を入力するにあたり、入力の進捗をユーザに報知することができる、工作機械のための情報設定画面の表示方法を提供することである。
【課題を解決するための手段】
【０００５】
本開示の第１態様に係る工作機械のための入力支援方法は、被加工物を目標物に加工するために工作機械を制御するための設定情報を設定するための複数のステップを表示し、複数のステップのうち設定情報を設定するべき設定ステップを選択し、設定ステップに対応する設定情報を設定するための設定インタフェースを表示し、設定インタフェースを介して設定ステップに対応する設定情報が全て設定されたか否かを判定し、設定ステップに対応する設定情報が全て設定されたと判定される場合、設定ステップについて設定が完了したことを示す情報を表示する。【０００６】
本開示の第２態様によれば、第１態様による入力支援方法は、工作機械に装着された工具の情報を取得し、全ての設定ステップの各々に対応する全ての設定情報が設定された後、取得した前記工具の情報と前記設定情報とに基づいて、前記被加工物を前記目標物に加工するために前記工作機械を制御する制御加工プログラムを自動で生成する。【０００７】
本開示の第３態様によれば、第１態様または第２態様による入力支援方法は、複数のステップは、目標物の形状を設定する第１ステップと、被加工物の形状および材質を設定する第２ステップと、被加工物中の目標物が占める部分を特定する情報を設定する第３ステップと、被加工物中の工作機械が掴持する部分と、被加工物に対する切削方向とを設定する第４ステップと、を含むように構成される。【０００８】
本開示の第４態様によれば、第３態様による入力支援方法は、被加工物の加工が穴加工とネジ加工との少なくとも１つを有するとき、第４ステップは、穴加工によって生成する穴の特性とネジ加工によって生成するネジ山の特性との少なくとも１つを設定することをさらに含むように構成される。【０００９】
本開示の第５態様によれば、第３態様または第４態様による入力支援方法は、第４ステップは、目標物の表面の表面粗さを設定することをさらに含むように構成される。【００１０】
本開示の第６態様によれば、第３態様から第５態様のいずれかによる入力支援方法は、複数のステップは、第１ステップ、第２ステップ、第３ステップ、及び、第４ステップのみから成るように構成される。【００１１】
本開示の第７態様によれば、第１態様から第６態様のいずれかによる入力支援方法は、設定ステップは、あらかじめ定められた順序に基づき、自動的に選択されるように構成される。【００１２】
本開示の第８態様によれば、第７態様による入力支援方法は、設定ステップの次のステップに移行するためのステップ移行インタフェースをさらに表示する。当該入力支援方法は、ステップ移行インタフェースが操作されたときに、設定ステップに対応する設定情報が全て設定されていないと判定された場合、次のステップに移行しないように構成される。【００１３】
本開示の第９態様によれば、第１態様から第８態様のいずれかによる入力支援方法は、設定ステップに関する設定情報が設定されていないとき、設定インタフェースを自動的に表示する。【００１４】
本開示の第１０態様によれば、第１態様または第９態様のいずれかによる入力支援方法は、設定ステップに関する設定情報の設定状態をさらに表示する。【００１５】
本開示の第１１態様によれば、第１態様から第１０態様のいずれかによる入力支援方法は、設定ステップに対応する、被加工物の形状と、目標物の形状とのうちの少なくとも１つを示すコンピュータグラフィックス画像を表示する。【００１６】
本開示の第１２態様によれば、第２態様を含んだ第１１態様による入力支援方法は、コンピュータグラフィックス画像において、自動で生成される加工プログラムによって加工できない被加工物の表面を表示する。【００１７】
本開示の第１３態様によれば、第１態様から第１２態様のいずれかによる入力支援方法は、設定インタフェースを呼び出すための呼出インタフェースをさらに表示する。当該入力支援方法は、設定ステップ以外のステップに対応する設定情報を設定するためのインタフェースを呼び出すためのインタフェースが表示されないように構成される。【００１８】
本開示の第１４態様に係る工作機械は、ディスプレイと、プロセッサとを備える。ディスプレイは、被加工物を加工して目標物を生成するために工作機械を制御するための設定情報を設定する複数のステップを表示し、複数のステップの中から選択された設定情報を設定するべき設定ステップに対応する設定情報を設定するための設定インタフェースを表示する。プロセッサは、設定インタフェースを介して設定ステップに対応する設定情報が全て設定されたか否かを判定する。ディスプレイは、設定ステップに対応する設定情報が全て設定されたと判定される場合、設定ステップについて設定が完了したことを示す情報を表示する。【００１９】
本開示の第１５態様によれば、第１４態様による工作機械は、プロセッサが、工作機械に装着された工具の情報を取得し、全ての設定ステップの各々に対応する全ての設定情報が設定された後、取得した前記工具の情報と前記設定情報とに基づいて、前記被加工物を前記目標物に加工するために前記工作機械を制御する制御加工プログラムを自動で生成する、ように構成される。【００２０】
本開示の第１６態様によれば、第１４態様または第１５態様による工作機械は、複数のステップは、目標物の形状を設定する第１ステップと、被加工物の形状および材質を設定する第２ステップと、被加工物中の目標物が占める部分を特定する情報を設定する第３ステップと、被加工物中の工作機械が掴持する部分と、被加工物に対する切削方向とを設定する第４ステップと、を含むように構成される。【００２１】
本開示の第１７態様によれば、第１６態様による工作機械は、被加工物の加工が穴加工とネジ加工との少なくとも１つを有するとき、第４ステップは、穴加工によって生成する穴の特性とネジ加工によって生成するネジ山の特性との少なくとも１つを設定することをさらに含むように構成される。【００２２】
本開示の第１８態様によれば、第１６態様または第１７態様による工作機械は、第４ステップは、目標物の表面の表面粗さを設定することをさらに含むように構成される。【００２３】
本開示の第１９態様によれば、第１６態様から第１８態様のいずれかによる工作機械は、複数のステップは、第１ステップ、第２ステップ、第３ステップ、及び、第４ステップのみから成るように構成される。【００２４】
本開示の第２０態様によれば、第１４態様から第１９態様のいずれかによる工作機械は、プロセッサが、あらかじめ定められた順序に基づき、設定ステップを自動的に選択するように構成される。【００２５】
本開示の第２１態様によれば、第２０態様による工作機械は、ディスプレイが、設定ステップの次のステップに移行するためのステップ移行インタフェースをさらに表示するように構成される。当該工作機械は、ステップ移行インタフェースが操作されたときに、設定ステップに対応する設定情報が全て設定されていないと判定された場合、次のステップに移行しないように構成される。【００２６】
本開示の第２２態様によれば、第１４態様から第２１態様のいずれかによる工作機械は、ディスプレイが、設定ステップに関する設定情報が設定されていないとき、設定インタフェースを自動的に表示するように構成される。【００２７】
本開示の第２３態様によれば、第１４態様または第２２態様のいずれかによる工作機械は、ディスプレイが、設定ステップに関する設定情報の設定状態をさらに表示するように構成される。【００２８】
本開示の第２４態様によれば、第１４態様から第２３態様のいずれかによる工作機械は、ディスプレイが、設定ステップに対応する、被加工物の形状と、目標物の形状とのうちの少なくとも１つを示すコンピュータグラフィックス画像を表示するように構成される。【００２９】
本開示の第２５態様によれば、第１５態様を含んだ第２４態様による工作機械は、ディスプレイが、コンピュータグラフィックス画像において、自動で生成される加工プログラムによって加工できない被加工物の表面を表示するように構成される。【００３０】
本開示の第２６態様によれば、第１４態様から第２５態様のいずれかによる工作機械は、ディスプレイが、設定インタフェースを呼び出すための呼出インタフェースをさらに表示するように構成される。当該工作機械は、設定ステップ以外のステップに対応する設定情報を設定するためのインタフェースを呼び出すためのインタフェースが表示されないように構成される。【００３１】
本開示の第２７態様に係る工作機械のためのプログラムは、被加工物を目標物に加工するために工作機械を制御するための設定情報を設定するための複数のステップを表示し、複数のステップのうち設定情報を設定するべき設定ステップを選択し、設定ステップに対応する設定情報を設定するための設定インタフェースを表示し、設定インタフェースを介して設定ステップに対応する設定情報が全て設定されたか否かを判定し、設定ステップに対応する設定情報が全て設定されたと判定される場合、設定ステップについて設定が完了したことを示す情報を表示する、処理を実行する。【００３２】
本開示の第２８態様によれば、第１態様によるプログラムは、工作機械に装着された工具の情報を取得し、全ての設定ステップの各々に対応する全ての設定情報が設定された後、取得した前記工具の情報と前記設定情報とに基づいて、前記被加工物を前記目標物に加工するために前記工作機械を制御する制御加工プログラムを自動で生成する、処理を実行する。【００３３】
本開示の第２９態様によれば、第２７態様または第２８態様によるプログラムは、複数のステップは、目標物の形状を設定する第１ステップと、被加工物の形状および材質を設定する第２ステップと、被加工物中の目標物が占める部分を特定する情報を設定する第３ステップと、被加工物中の工作機械が掴持する部分と、被加工物に対する切削方向とを設定する第４ステップと、を含むように構成される。【００３４】
本開示の第３０態様によれば、第２９態様によるプログラムは、被加工物の加工が穴加工とネジ加工との少なくとも１つを有するとき、第４ステップは、穴加工によって生成する穴の特性とネジ加工によって生成するネジ山の特性との少なくとも１つを設定することをさらに含むように構成される。【００３５】
本開示の第３１態様によれば、第２９態様または第３０態様によるプログラムは、第４ステップは、目標物の表面の表面粗さを設定することをさらに含むように構成される。【００３６】
本開示の第３２態様によれば、第２９態様から第３１態様のいずれかによるプログラムは、複数のステップは、第１ステップ、第２ステップ、第３ステップ、及び、第４ステップのみから成るように構成される。【００３７】
本開示の第３３態様によれば、第２７態様から第３２態様のいずれかによるプログラムは、設定ステップは、あらかじめ定められた順序に基づき、自動的に選択されるように構成される。【００３８】
本開示の第３４態様によれば、第３３態様によるプログラムは、設定ステップの次のステップに移行するためのステップ移行インタフェースをさらに表示する処理を実行する。当該プログラムは、ステップ移行インタフェースが操作されたときに、設定ステップに対応する設定情報が全て設定されていないと判定される場合、次のステップに移行しないように構成される。【００３９】
本開示の第３５態様によれば、第２７態様から第３４態様のいずれかによるプログラムは、設定ステップに関する設定情報が設定されていないとき、設定インタフェースを自動的に表示する処理を実行する。【００４０】
本開示の第３６態様によれば、第２７態様または第３５態様のいずれかによるプログラムは、設定ステップに関する設定情報の設定状態をさらに表示する処理を実行する。【００４１】
本開示の第３７態様によれば、第２７態様から第３６態様のいずれかによるプログラムは、設定ステップに対応する、被加工物の形状と目標物の形状とのうちの少なくとも１つを示すコンピュータグラフィックス画像を表示する、処理を実行する。【００４２】
本開示の第３８態様によれば、第２８態様を含んだ第３７態様によるプログラムは、コンピュータグラフィックス画像において、自動で生成される加工プログラムによって加工できない被加工物の表面を表示する、処理を実行する。【００４３】
本開示の第３９態様によれば、第２７態様から第３８態様のいずれかによるプログラムは、設定インタフェースを呼び出すための呼出インタフェースをさらに表示する処理を実行する。当該プログラムは、設定ステップ以外のステップに対応する設定情報を設定するためのインタフェースを呼び出すためのインタフェースが表示されないように構成される。【００４４】
第１態様に係る工作機械のための入力支援方法、第１４態様に係る工作機械、及び第２７態様に係る工作機械のためのプログラムによって、加工プログラムの作成のための作業の進捗をユーザに報知することができる。【００４５】
第２態様、第１５態様、第２８態様によれば、加工プログラムを自動で生成するため、ユーザのコーディングの負担を軽減することができる。【００４６】
第３態様、第１６態様、第２９態様によれば、目標物の形状を得るための工具の詳細な動きを設定する必要がないため、ユーザが加工プログラムを生成する上での負担をさらに軽減することができる。【００４７】
一般的に、目標物の形状を記述する３次元形状データでは、穴の部分の詳細形状を規定することは少ないため、第４態様、第１７態様、第３０態様によれば、このような３次元形状データを参照しても穴の正確な加工をユーザが設定することができる。【００４８】
目標物の形状を記述する３次元形状データでは、目標物の表面粗さを規定することはできないため、第５態様、第１８態様、第３１態様によれば、面の正確な加工をユーザが設定することができる。【００４９】
第６態様、第１９態様、第３２態様によれば、設定しなければならないステップが上記第１〜第４ステップしかないため、ユーザの負担をさらに軽減することができる。【００５０】
第７態様、第２０態様、第３３態様によれば、あらかじめ順序を設定することによって、複数のステップの各々においてあらかじめ設定されておくべき設定情報が設定された上で設定情報を設定することとなる。このため、各ステップの設定の際に他のステップに切り替えて先に設定するような設定の無駄を抑止することができる。【００５１】
第８態様、第２１態様、第３４態様によれば、各設定ステップにおける設定漏れを抑止することができる。【００５２】
第９態様、第２２態様、第３５態様によれば、各設定ステップに遷移したときに、設定インタフェースを起動する操作を行わなくて済むため、ユーザの利便性がさらに向上する。【００５３】
第１０態様、第２３態様、第３６態様によれば、ユーザは設定状態を参照することができるため、設定漏れをさらに抑止することができる。【００５４】
第１１態様、第２４態様、第３７態様によれば、コンピュータグラフィクスによって、被加工物の形状、目標物の形状、及び、被加工物から切削される部分の形状を確認できるため、ユーザの利便性がさらに向上する。また、穴の特性、ネジ山の特性、表面粗さを設定する際に、穴や表面を３次元画像から設定することができるため、ユーザの利便性がさらに向上する。【００５５】
第１２態様、第２５態様、第３８態様によれば、ユーザは自動的に加工プログラムを生成できない箇所の有無、生成できない箇所がある場合その場所を３次元画像から参照することができるため、ユーザの利便性がさらに向上する。【００５６】
第１３態様、第２６態様、第３９態様によれば、設定ステップを設定した後に、その設定した内容を修正する際に設定インタフェースを呼び出すことができる。また、設定ステップ以外のステップに対応する設定情報を設定するためのインタフェースを呼び出すためのインタフェースが表示されないため、ユーザによる誤操作を抑止できる。
【発明の効果】
【００５７】
本願に開示される技術によれば、例えば、製品の加工に必要な情報を入力するにあたり、入力の進捗をユーザに報知することができる。
ことができる。
【図面の簡単な説明】
【００５８】
【図１】図１は、実施形態に係る工作機械及び工作機械の加工プログラムを生成するためのコンピュータを含むシステムの概略構成を示す図である。
【図２】図２は、制御装置のハードウェアブロック図である。
【図３】図３は、コンピュータのハードウェアブロック図である。
【図４】図４は、実施形態に係る加工プログラム生成プログラムの表示画面の一例である。
【図５】図５は、初期設定ステップに係る表示画面の表示例である。
【図６】図６は、素材設定ステップに係る表示画面の表示例である。
【図７】図７は、モデル配置ステップに係る表示画面の表示例である。
【図８】図８は、モデル配置ステップに係る表示画面の表示例である。
【図９】図９は、加工属性設定サブステップに係る表示画面の表示例である。
【図１０】図１０は、加工属性設定サブステップに係る表示画面の表示例である。
【図１１】図１１は、加工属性設定サブステップに係る表示画面の表示例である。
【図１２】図１２は、加工属性設定サブステップに係る表示画面の表示例である。
【図１３】図１３は、加工属性設定サブステップに係る表示画面の表示例である。
【図１４】図１４は、加工属性設定サブステップに係る表示画面の表示例である。
【図１５】図１５は、加工属性設定サブステップに係る表示画面の表示例である。
【図１６】図１６は、プログラム生成ステップに係る表示画面の表示例である。
【図１７】図１７は、プログラム生成ステップに係る表示画面の表示例である。
【図１８】図１８は、プログラム生成ステップに係る表示画面の表示例である。
【図１９】図１９は、加工プログラム生成プログラムを利用した入力支援方法及び加工プログラムの生成方法の流れを示すフローチャートである。
【図２０】図２０は、加工プログラム生成プログラムを利用した入力支援方法及び加工プログラムの生成方法の流れを示すフローチャートである。
【図２１】図２１は、目標物モデルの各加工面の分類方法の流れを示すフローチャートである。
【図２２】図２２は、加工ユニット予備データ生成に係るフローチャートである。
【図２３】図２３は、加工プログラムを自動で生成する処理の流れを示すフローチャートである。
【図２４】図２４は、加工プログラムを自動で生成する処理の流れを示すフローチャートである。
【図２５】図２５は、加工プログラムを自動で生成する処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００５９】
以下、この発明をその実施の形態を示す図面に基づいて具体的に説明する。なお、図中において同じ符号は、対応するまたは実質的に同一の構成を示している。
【００６０】
図１は、本発明の実施形態に係るシステム１０の概略構成を示す。システム１０は、工作機械１００、コンピュータ２００、及び、工作機械１００とコンピュータ２００とを接続するネットワーク２９０とを含む。ネットワーク２９０は、例えば、工場内に設置されるＬＡＮ（ローカルエリアネットワーク）である。図示されているネットワーク２９０は有線ネットワークであるが、ネットワーク２９０は無線ネットワークであってもよい。なお、図１に示すＸ軸は、工作機械１００の高さ方向に沿い、Ｙ軸は、工作機械１００の奥行方向に沿い、Ｚ軸は、工作機械１００の幅方向に沿っている。本実施形態では、ＪＩＳ規格に基づいて、ワークを保持する第１主軸１２２の回転軸線Ａ３に平行な軸をＺ軸としている。本実施形態では、この座標系をワーク座標系と呼ぶ。
【００６１】
工作機械１００は、ワークＷ１に対する切削加工(machining)を行う。切削加工は、旋削加工(turning)、ミル加工(milling)、削孔加工(drilling)、ネジ加工（threading）、リーマ加工(reaming)、及び、ボーリング加工（boring）の少なくとも１つを含む。図１に示すように、工作機械１００は、コラム１１０と、第１主軸台１２０と、第２主軸台１２１と、を備えている。コラム１１０、第１主軸台１２０、及び、第２主軸台１２１は、基台１４０の上に配置されている。
【００６２】
コラム１１０は、基台１４０上において、Ｙ軸方向およびＺ軸方向に移動可能である。コラム１１０には、工具主軸台１１２が取り付けられている。工具主軸台１１２は、コラム１１０に対して、Ｘ軸方向に移動可能である。工具主軸台１１２は、コラム１１０に対して、Ｙ軸方向に沿う旋回軸線Ａ１周りに旋回可能である。工具主軸台１１２には、工具主軸１１４が取り付けられている。工具主軸１１４は、工具主軸台１１２に対して回転軸線Ａ２回りに回転可能である。回転軸線Ａ２は、旋回軸線Ａ１に直交する。工具主軸１１４には、切削工具(machining tool)である工具Ｔａが保持されている。切削工具とは、旋削工具、ミル工具、削孔工具(drilling tool)、ネジ加工工具（threading tool）、リーマ工具(reaming tool)、及び、ボーリング工具（boring  tool）を包含する概念である。工作機械１００は、工具Ｔａを他の工具に交換するための、図示しない工具交換装置をさらに備える。工具Ｔａは、ワークＷ１の加工内容に合わせて必要に応じて交換される。
【００６３】
本実施形態では、軸線Ａ１と軸線Ａ２との交点を機械原点Ｏｍと呼び、回転軸線Ａ２をＺｍ軸とし、旋回軸線Ａ１をＹｍ軸とし、Ｚｍ軸とＹｍ軸との夫々に対して垂直な軸をＸｍ軸とする座標系を機械座標系と呼ぶ。機械原点Ｏｍから第１工具Ｔ１の先端に向かう方向をＺｍ軸の正方向とする。ワーク座標系のＺ軸の正方向を機械座標系のＺｍ軸の正方向と同じ方向に向かうように、ワーク座標系のＸ軸をＹ軸回りに回転させたときのワーク座標系のＸ軸の正方向を、機械座標系のＸｍ軸の正方向とする。ワーク座標系のＹ軸の正方向を機械座標系のＹｍ軸の正方向とする。
【００６４】
第１主軸台１２０は、基台１４０上に固定されている。第１主軸台１２０は、第１主軸１２２を備える。第１主軸１２２は、回転軸線Ａ３周りに回転可能である。回転軸線Ａ３は、Ｚ軸方向に沿っている。第１主軸１２２には、第１チャック１２４を備える。第１チャック１２４は、ワークＷ１の第１端を掴持する。第２主軸台１２１は、基台１４０上でＺ軸方向と平行な方向に移動可能に設けられている。第２主軸台１２１は、第２主軸１２３を備える。第２主軸１２３は、回転軸線Ａ３周りに回転可能である。第２主軸１２３には、第２チャック１２５を備える。第２チャック１２５は、ワークＷ１の第１端とＺ軸方向反対のワークＷ１の第２端を掴持する。工作機械１００は、ワークＷ１の第２端を加工するときは、ワークＷ１を第１チャック１２４に掴持させる。工作機械１００は、ワークＷ１の第１端を加工するときは、ワークＷ１を第２チャック１２５に掴持させる。
【００６５】
工作機械１００は、各回転軸線回りの回転、各旋回軸線回りの旋回及び各軸方向における移動を制御するために、制御装置１５０を備えている。制御装置１５０は、基台１４０に接続されている。ここで、制御装置１５０は、工作機械１００の他の箇所に接続されてもよく、制御信号の送信や検出結果の受信ができれば、基台１４０とは別に設置されてもよい。
【００６６】
図２は、制御装置１５０のハードウェアブロック図である。図２に示すように、制御装置１５０は、プロセッサ１５１と、メモリ１５２と、通信回路１５３と、タッチパネル付きディスプレイ１５４と、を備えている。プロセッサ１５１と、メモリ１５２と、通信回路１５３と、タッチパネル付きディスプレイ１５４は、バス１５５を介して互いに接続されている。メモリ１５２は、加工に必要なプログラム、負荷表示に必要なプログラム、及び、それらに必要なデータを記憶している。プロセッサ１５１は、メモリ１５２に記憶されたプログラムを読み出して、読みだしたプログラムを実行する。これにより、制御装置１５０の各機能は、実現される。制御装置１５０が実現する各機能には、切削加工の実行の制御が含まれる。具体的には、メモリ１５２は、加工プログラム１５７を記憶している。加工プログラム１５７は、切削加工を実行するための制御指令を含んでいる。通常、加工プログラム１５７は、コンピュータ２００において編集され、ネットワーク２９０を介して制御装置１５０に送信され、メモリ１５２に記憶される。通信回路１５３は、ネットワーク２９０を介してコンピュータ２００と通信するための、通信パケットからデータへの変換機能とデータから通信パケットへの変換機能と通信パケット送受信機能とを有している。
【００６７】
本実施形態では、メモリ１５２は、工作機械１００に装着可能な工具Ｔａの工具情報１５８を記憶する。工具情報１５８とは、工具Ｔａに対応するＴ番号（T number）、工具Ｔａの名称、工具Ｔａの材質、工具Ｔａの刃の特性（characteristics）、及び工具Ｔａの使用状態（摩耗状態）を含む。工具Ｔａの刃の特性とは、工具Ｔａの呼び径、工具長(tool length)、工具径(tool diameter)、軸方向オフセット(axial offset)、径方向オフセット(radial offset)、刃数、刃先幅、刃先形状を規定する円弧の曲率半径（刃先の曲率半径）Ｒ、刃の割出角度（indexing angle）、有効な主軸回転方向、及び、刃の向きを含む。
【００６８】
工具長とは、摩耗のない（新品の）工具Ｔａが工具主軸１１４に取り付けられた状態での回転軸線Ａ２に沿う向き（以下、軸方向と呼ぶ）の工具Ｔａの長さである。別の言い方をすれば、工具長とは、機械座標系での工具ＴａのＺｍ軸方向の長さである。工具径とは、摩耗のない（新品の）工具Ｔａが工具主軸１１４に取り付けられた状態での回転軸線Ａ２に対して垂直な向き（以下、径方向と呼ぶ）の工具Ｔａの直径である。軸方向オフセットとは、摩耗のない（新品の）工具Ｔａが工具主軸１１４に取り付けられた状態での、工具Ｔａの基端点から工具Ｔａの切刃先端部（tool tip）までの軸方向の距離である。工具Ｔａの基端点とは、工具Ｔａが工具主軸１１４に取り付けられた状態での工具Ｔａの軸方向に沿う２つの端点のうち、工具主軸１１４に把持される工具Ｔａの部分に属する端点である。別の言い方をすれば、軸方向オフセットとは、機械座標系での工具Ｔａの基端点から切刃先端部までのＺｍ軸方向の距離である。径方向オフセットとは、摩耗のない（新品の）工具Ｔａが工具主軸１１４に取り付けられた状態での、工具Ｔａの基端点から工具Ｔａの刃先(cutting edge)までの径方向の座標値である。この座標値は、工具主軸台１１２が図１に示される姿勢であるときに、工具Ｔａが工具主軸１１４に取り付けられた状態での工具Ｔａの刃先のＸｍ座標の値である。
【００６９】
刃の割出角度とは、旋削工具の刃先が第１主軸１２２に向けられるか第２主軸１２３に向けられるかを示している。割出角度が０度である場合、旋削工具の刃先が第１主軸１２２に向けられる。割出角度が１８０度である場合、旋削工具の刃先が第２主軸１２３に向けられる。有効な主軸回転方向とは、旋削工具が向けられた主軸を旋削工具からみたときの当該主軸の有効な回転方向（時計回り、または、反時計回り）を示す。刃の向きとは、旋削工具が左勝手(left-handed)か右勝手(right-handed)かを示す。
【００７０】
メモリ１５２は、さらに、素材情報１６１と機械定数(machine constant)データ１６２とを含む。素材情報１６１とは、加工するワークＷ１（被加工物(workpiece) Ｗ１）となる素材の参照情報（名称、IDなど）、形状（外径、内径（孔が空いている場合）、長さ）、及び、特性（比切削抵抗ｘ(kg/mm2）を含む。機械定数データ１６２は、切削条件の計算において使用される工作機械１００固有のパラメータである。機械定数データ１６２は、例えば、機械効率η、機械馬力HP(HP)、加工制限（仕上げ代）である。工具情報１５８は、通信回路１５３によって、ネットワーク２９０を介してコンピュータ２００に送信される。また、工具情報１５８及び素材情報１６１は、後述する加工プログラム生成プログラム１５６の実行時に、メモリ１５２から読み出される。メモリ１５２は、加工プログラム１５７を生成するための加工プログラム生成プログラム１５６を記憶してもよい。加工プログラム生成プログラム１５６の機能は後述する。
【００７１】
タッチパネル付きディスプレイ１５４は１つのディスプレイ１５４でなくてもよく、複数のディスプレイの集まりであってもよい。なお、タッチパネル付きディスプレイ１５４のディスプレイは、ディスプレイの一例であり、タッチパネルは、インタフェースの一例である。なお、タッチパネル付きディスプレイ１５４は、タッチパネルのないディスプレイと、ディスプレイ周辺に設けられたボタン・スイッチ・レバー・ポインティングデバイス等の入力機器との組み合わせによって代替されてもよい。その場合、当該入力機器は、インタフェースの一例である。
【００７２】
図３は、コンピュータ２００のハードウェアブロック図である。図３に示すように、コンピュータ２００は、プロセッサ２１０と、メモリ２２０と、通信回路２３０と、ディスプレイ２４０と、入力インタフェース２５０と、を備えている。プロセッサ２１０と、メモリ２２０と、通信回路２３０と、ディスプレイ２４０と、入力インタフェース２５０は、バス２６０を介して互いに接続されている。入力インタフェース２５０は、インタフェースの一例であって、例えば、キーボード、マウスなどのポインティングデバイスを指す。なお、コンピュータ２００は、タッチパネル付きディスプレイを有するタブレットコンピュータのように、ディスプレイ２４０と入力インタフェース２５０とが一体化されたものであってもよい。
【００７３】
メモリ２２０は、上述する加工プログラム１５７、工具情報１５８、素材情報１６１、加工プログラム生成プログラム２２１と、オペレーティングシステムなどのプログラムと、を記憶している。加工プログラム生成プログラム２２１は、加工プログラム生成プログラム１５６と実質的に同じ機能を有する。ただし、加工プログラム生成プログラム２２１の画面表示方法が加工プログラム生成プログラム１５６の画面表示方法と部分的に相違してもよい。プロセッサ２１０は、メモリ２２０に記憶されたプログラムを読み出して、読みだしたプログラムを実行する。通信回路２３０は、ネットワーク２９０を介して制御装置１５０と通信するための、通信パケットからデータへの変換機能とデータから通信パケットへの変換機能と通信パケット送受信機能とを有している。
【００７４】
コンピュータ２００は、通信回路２３０を利用して、加工プログラム生成プログラム２２１を利用して生成された加工プログラム１５７を制御装置１５０に送信することができる。さらに、コンピュータ２００は、加工プログラム生成プログラム２２１が実行されると、通信回路２３０を利用して、最新の工具情報１５８を、制御装置１５０から受信し、メモリ２２０内の工具情報１５８を更新することができる。
【００７５】
次に、加工プログラム１５７の内容について説明する。本実施形態において、加工プログラム１５７は、工作機械１００を数値制御するためのプログラムコードによって記述されている。加工プログラム１５７では、少なくとも以下の内容が定義される。
（１）共通ユニット：被加工物Ｗ１の材質及び形状
（２）基本座標ユニット：ワーク座標系と機械座標系の設定方法
（３）加工ユニット：最終加工形状のうちの各部位(part)の加工法や加工形状
共通ユニット、基本座標ユニット、加工ユニットは、それぞれ、ユニット番号（unit number）を有している。加工ユニットは、加工内容を特定する情報を含むユニットデータと、工具Ｔａ及び工具Ｔａの切削条件（cutting condition）を設定する工具シーケンスと、当該加工ユニット内で加工される加工形状を規定する形状シーケンスとを含む。工具シーケンスとは、当該加工ユニットで規定される部位の加工形状（例えば、１つの棒材、１つのネジ山）を形成する上で必要となる一連の加工段階(machining stages)（１つの形状を形成する上で、工具を入れ替えながら荒加工(rough processing)、仕上げ加工(finishing processing)を行う一連の段階（例えば、穴加工(hole machining)の場合、スポット加工、徐々に工具径の大きいドリルを使った穴あけの荒加工、リーマ加工などの仕上げ加工のような一連の段階）；ネジ加工の場合、スポット加工（spotting）、下穴加工（prepared hole processing）、タップ加工（tapping）の一連の段階）をいう。形状シーケンスとは、加工形状を決定するためのワーク座標での工具の刃先の開始点、終了点、開始点と終了点との間の接続関係（直線、円弧など）によって定義されたセグメント（segment）の集合をいう。ただし、ネジ加工（タップ加工）におけるネジのピッチは、加工ユニットのユニットデータの中に含まれる。本実施形態では、工具シーケンスのうちの１つの工具が行う加工段階のことを加工プロセス(machining process)と呼び、以下説明する。
【００７６】
加工プログラム１５７は、加工作業において使用される少なくとも１つの工具Ｔａ、及び、少なくとも１つの工具Ｔａの各工具による加工作業中の少なくとも１つの加工プロセスを規定する。加工プロセスには、当該加工段階における工程（process）を実現するための、工具Ｔａ及び工具Ｔａの切削条件が定義される。工具Ｔａの切削条件は、切削速度Ｖｃ、工具ＴａのワークＷ１に対する切込量、及び、ワークＷ１の送り速度(feed speed)を含む。切削速度Ｖｃ(m/min)は、主軸回転速度をｎｗ(min-1)とし、ワーク直径をＤ(mm)とするとき、Ｖｃ＝π×Ｄ×ｎｗ／１０００という式から求められる。本実施形態では、送り速度とは、主軸１回転あたりの送り量（feed per revolution）ｆ (mm/rev)を意味する。加工プロセスを定義するパラメータは、当該加工プロセスの段階を特定する情報（例．荒加工、仕上げ加工、スポット加工、下穴加工、タップ加工など）と、当該加工プロセスが属する加工ユニットの中での実行順を示す番号とをさらに含む。したがって、例えば、加工プログラム１５７の中で、工具シーケンスの中での荒加工の加工プロセスを番号１、仕上げ加工の加工プロセスを番号２として定義されているとすると、荒加工の加工プロセスが先に実行され、その後、仕上げ加工の加工プロセスが実行される。また、加工プロセスで定義される工具Ｔａ及び工具Ｔａの切削条件は、同じ加工ユニット内の形状シーケンス全体に適用される。
＜全体の表示画面＞
図４は、実施形態に係る加工プログラム生成プログラム２２１の表示画面(display screen)３０の一例である。当該表示画面３０は、ディスプレイ２４０（１５４）に表示される。表示画面３０は、ステップ状態表示画面(step status display window)４０、設定ステップ状態表示画面（setting step status display window）５０、３Ｄ(dimension)モデル表示画面(3D model display window)６０、ドキュメント保存インタフェース８８、ステップ移行インタフェース(step transition interface)８９、及び呼出インタフェース(call interface)９０を表示する。
【００７７】
ステップ状態表示画面４０は、被加工物Ｗ１を目標物に加工するために工作機械１００を制御するための設定情報を設定するための複数のステップを表示する。当該複数のステップは、目標物の形状を設定する第１ステップ（初期設定ステップ４１１）と、被加工物Ｗ１の形状および材質を設定する第２ステップ（素材設定ステップ４１２）と、被加工物Ｗ１中の目標物が占める部分を特定する情報を設定する第３ステップ（モデル配置ステップ４１３）と、被加工物Ｗ１中の工作機械が掴持する部分と、被加工物Ｗ１に対する切削方向とを設定する第４ステップ（加工設定ステップ４１４）と、を含む。この目標物とは、製品、もしくは製品中の部品である。複数のステップは、生成される加工プログラムの内容を確認し、必要に応じて追加編集する第５ステップ（プログラム生成ステップ４１５）を含んでもよい。但し、プログラム生成ステップ４１５は省略可能である。したがって、複数のステップは、第１ステップ、第２ステップ、第３ステップ、及び、第４ステップのみから成ってもよい。なお、設定情報の詳細については後述する。
【００７８】
複数のステップは、ボタン４１によって表示され、複数のステップのうち設定情報を設定するべき設定ステップを選択することが可能である。ただし、設定ステップは、あらかじめ定められた順序に基づき、自動的に選択されるため、すでに設定されたステップについてはボタン４１の操作によって遷移することが可能である。しかし、設定ステップに対応する設定情報が全て設定されていないと判定される場合、次のステップに進むことができない。図４は、モデル配置ステップ４１３まで完了しており、加工設定ステップ４１４の途中の段階を示している。つまり、図４では、設定ステップが加工設定ステップ４１４である。この場合、初期設定ステップ４１１、素材設定ステップ４１２、モデル配置ステップ４１３に関するボタン４１を操作（タッチパネル付きディスプレイ１５４を介したタップ操作や入力インタフェース２５０を介したマウスクリックなど）することによって、操作されたステップに戻ることはできるが、プログラム生成ステップ４１５に関するボタン４１は非活性(inactive)となっており、ユーザはプログラム生成ステップ４１５に関するボタン４１を操作することができない。
【００７９】
ボタン４１の左端には、設定ステップに対応する設定情報が全て設定されたと判定された場合、設定ステップについて設定が完了したことを示す情報３６であるチェックマーク(checkmark)が表示されている。図４の例では、初期設定ステップ４１１、素材設定ステップ４１２、及びモデル配置ステップ４１３に係るボタン４１の左端に当該情報３６が表示されている。しかし、当該情報３６は、他の絵記号(pictorial symbol)またはテキストであってもよく、設定完了のステップに係るボタン４１の内部の色、テキスト表示、視覚的効果（点滅など）であってもよい。また、当該情報３６の表示位置は、設定完了のステップに係るボタン４１の左端でなくてもよい。ただし、当該情報３６の表示位置は、設定完了のステップに係るボタン４１に近接されている、もしくは設定完了のステップに係るボタン４１内部にあることが望ましい。
【００８０】
図４において設定途中のステップである加工設定ステップ４１４のボタン４１の左端には、設定ステップについて設定途中であることを示す情報３７である注意マーク(caution mark)が表示されている。しかし、当該情報３７は、他の絵記号(pictorial symbol)またはテキストであってもよく、設定途中のステップに係るボタン４１の内部の色、テキスト表示、視覚的効果（点滅など）であってもよい。また、当該情報３７の表示位置は、設定途中のステップに係るボタン４１の左端でなくてもよい。ただし、当該情報３７の表示位置は、設定途中のステップに係るボタン４１に近接されている、もしくは設定途中のステップに係るボタン４１内部にあることが望ましい。
【００８１】
設定ステップ状態表示画面５０は、設定ステップに関する設定情報の設定状態を表示する。図４は、設定ステップ状態表示画面５０が加工設定ステップ４１４に関する設定情報の設定状態を表示する例を示している。加工設定ステップ４１４は、工程分割サブステップ４５１と加工属性設定サブステップ４５２との２つのサブステップから成る。このため、設定ステップ状態表示画面５０は、工程分割サブステップ４５１に係る設定状態５４と、加工属性設定サブステップ４５２に係る設定状態５５と表示している。設定状態５４、５５の内容の詳細は後述する。
【００８２】
３Ｄモデル表示画面６０は、設定ステップに対応する、被加工物Ｗ１の形状と、目標物(target)の形状とのうちの少なくとも１つを示すコンピュータグラフィックス（ＣＧ）画像を表示する。図４では、３Ｄモデル表示画面６０は、目標物の３Ｄモデル（目標物モデル(target model)）６１と被加工物Ｗ１の３Ｄモデル（被加工物モデル６２）とを表示している。図４では、説明の便宜上、目標物モデル６１が実線で被加工物モデル６２は二点鎖線で表示されているが、表示方法は図４に示したものに限られない。目標物モデル６１、被加工物モデル６２はワイヤーフレームであってもソリッドモデルであってもよい。また、被加工物モデル６２は半透明表示のソリッドモデルであってもよい。さらに、図４では、３Ｄモデル表示画面６０は、設定ステップ（工程分割サブステップ）に対応する設定情報を設定するための設定インタフェース３００を兼用している。いずれのステップにおいても、設定ステップに対応する設定情報が設定されていないとき、設定インタフェース３００は自動的に表示される。設定インタフェース３００の詳細は後述する。
【００８３】
３Ｄモデル表示画面６０は、少なくとも１つのビュー制御アイコン(view control icon)７０を表示している。少なくとも１つのビュー制御アイコン７０は、展開アイコン（unfold icon）７１を含む。展開アイコン７１がＯＦＦのときは、３Ｄモデル表示画面６０には、少なくとも１つのビュー制御アイコン７０のうち、展開アイコン７１のみが表示される。展開アイコン７１がＯＮのときは、アイコン７２〜７９、または、図５に示されるアイコン７２、７３、８０〜８５が表示される。
【００８４】
少なくとも１つのビュー制御アイコン７０は、ビューポート制御アイコン（viewport control icon）７２と表示アイテム制御アイコン７３（display item control icon）とを含む。ビューポート制御アイコン７２と表示アイテム制御アイコン７３とのうちのいずれか一方が選択的に活性化される。図４は、ビューポート制御アイコン７２が活性化された例を示し、図５は、表示アイテム制御アイコン７３が活性化された例を示す。図４を参照すると、ビューポート制御アイコン７２が活性化されると、フィッティングボタン７４、正面視表示ボタン(front view representation button)７５、平面視表示ボタン(plan view representation button)７６、左側面視表示ボタン(left side view representation button)７７、反対図表示ボタン(opposite view representation button)７８、及び二等角投影表示ボタン(dimetric perspective representation button)７９が表示される。つまり、少なくとも１つのビュー制御アイコン７０は、フィッティングボタン７４、正面視表示ボタン７５、平面視表示ボタン７６、左側面視表示ボタン７７、反対図表示ボタン７８、及び二等角投影表示ボタン７９を含む。
【００８５】
フィッティングボタン７４が操作されると、表示中の目標物モデル６１、または、表示中の被加工物モデル６２が３Ｄモデル表示画面６０に収まるように拡大または縮小される。正面視表示ボタン７５が操作されると、目標物モデル６１、及び/または、被加工物モデル６２の正面図（ワーク座標系のＺ軸負方向に３Ｄモデルを見た図）が３Ｄモデル表示画面６０に表示される。平面視表示ボタン７６が操作されると、目標物モデル６１、及び/または、被加工物モデル６２の平面図（ワーク座標系のＸ軸負方向に３Ｄモデルを見た図）が３Ｄモデル表示画面６０に表示される。左側面視表示ボタン７７が操作されると、目標物モデル６１、及び/または、被加工物モデル６２の左側面図（ワーク座標系のＹ軸負方向に３Ｄモデルを見た図）が３Ｄモデル表示画面６０に表示される。反対図表示ボタン７８が操作されると、表示中の目標物モデル６１、または、表示中の被加工物モデル６２を、反対の視線方向から見た図が３Ｄモデル表示画面６０に表示される。二等角投影表示ボタン７９が操作されると、目標物モデル６１、及び/または、被加工物モデル６２の二等角投影図が３Ｄモデル表示画面６０に表示される。この二等角投影図では、ワーク座標系のＸ軸方向及びＹ軸方向が同じ縮尺となる。
【００８６】
図５を参照すると、表示アイテム制御アイコン７３が活性化されると、座標系表示ボタン(coordinate system display button)８０、寸法表示ボタン(measurement display button)８１、断面表示ボタン(cross section display button)８２、目標物モデル表示ボタン(target model display button)８３、被加工物モデル表示ボタン(workpiece model display button)８４、及び、モデル適用不可曲面表示ボタン(model inapplicable curved surface display button)８５が表示される。つまり、少なくとも１つのビュー制御アイコン７０は、座標系表示ボタン８０、寸法表示ボタン８１、断面表示ボタン８２、目標物モデル表示ボタン８３、被加工物モデル表示ボタン８４、及び、モデル適用不可曲面表示ボタン８５を含む。座標系表示ボタン８０が操作されると、ワーク座標系の座標軸が３Ｄモデル表示画面６０に表示される。寸法表示ボタン８１が操作されると、目標物モデル６１のワーク座標系のＸ軸方向、Ｙ軸方向、及びＺ軸方向の各長さ、または、目標物モデル６１の回転軸線Ａ３に沿う軸方向、及び回転軸線Ａ３に対する径方向の各長さが３Ｄモデル表示画面６０に表示される。断面表示ボタン８２が操作されると、表示中の目標物モデル６１をワーク座標系のＺ軸を通る平面で切断した断面図が３Ｄモデル表示画面６０に表示される。目標物モデル表示ボタン８３がＯＮになると、目標物モデル６１が３Ｄモデル表示画面６０に表示される。目標物モデル表示ボタン８３がＯＦＦになると、目標物モデル６１が３Ｄモデル表示画面６０に表示されない。被加工物モデル表示ボタン８４がＯＮになると、被加工物モデル６２が３Ｄモデル表示画面６０に表示される。被加工物モデル表示ボタン８４がＯＦＦになると、被加工物モデル６２が３Ｄモデル表示画面６０に表示されない。目標物モデル表示ボタン８３と被加工物モデル表示ボタン８４とがともにＯＮになるとき、目標物モデル６１を視認できるように、被加工物モデル６２が半透明で表示される。
【００８７】
モデル適用不可曲面表示ボタン８５が操作されると、目標物モデル６１の表面のうち、あらかじめ定められた旋削加工面(turning processed surface)のモデルと、穴加工面(hole machining processed surface)のモデルと、面加工面(surface machining processed surface)のモデルとのうちのいずれにも当てはめられないモデル適用不可曲面が強調表示される。旋削加工面のモデルとは、例えば、回転軸線Ａ３と同じ中心軸を持つ円柱面、回転軸線Ａ３と同じ中心軸を持つ円錐面（円錐台面）、及び、回転軸線Ａ３と同じ中心軸を持つトーラス面である。穴加工面のモデルとは、一周した円柱面、及び、一周した円錐面である。面加工面のモデルとは、例えば、平坦面(flat surface)である。したがって、例えば、回転軸線Ａ３からずれた中心軸を持つ円柱面、円錐面（円錐台面）、及び、トーラス面から成る旋削加工面や、平坦面と、円柱面と、円錐面（円錐台面）と、トーラス面とのいずれにも該当しない自由曲面(sculptured surface)はモデル適用不可曲面に該当する。モデル配置ステップ４１３が完了した時点で、モデル適用不可曲面を自動で抽出することができるが、その抽出方法は図２１にて後述する。モデル適用不可曲面は、加工プログラム生成プログラム１５６によって工具シーケンスを自動で求めることができないため、加工プログラム１５７が加工プログラム生成プログラム１５６によって自動で生成される場合、その加工プログラム１５７では、モデル適用不可曲面の加工は行われない。３Ｄモデル表示画面６０が、コンピュータグラフィックス画像において、自動で生成される前記加工プログラムによって加工できない被加工物Ｗ１の表面を表示するため、ユーザは、加工プログラム生成プログラム１５６によって自動で生成される加工プログラム１５７が目標物の全ての加工に対応しているか確認することができる。
【００８８】
なお、３Ｄモデル表示画面６０は、少なくとも１つのビュー制御アイコン７０の操作以外に、周知のタッチパネルやマウスの操作によって拡大縮小、平行移動、モデルの回転を行うことができる。
【００８９】
ドキュメント保存インタフェース８８は、加工プログラム１５７の生成途中で作業した内容を上述の作業ファイルに保存するためのインタフェースである。ステップ移行インタフェース８９は、設定ステップの次のステップに移行するためのインタフェースである。図４では、ステップ移行インタフェース８９は、ボタンにて表示されているが、他のユーザインタフェースであってもよい。ステップ移行インタフェース８９がタップやマウスクリック等で操作されたときに、設定ステップに対応する設定情報が全て設定されていると判定された場合、次のステップに移行する。ステップ移行インタフェース８９が操作されるときに、設定ステップに対応する設定情報が全て設定されていないと判定される場合、次のステップに移行しない。なお、次のステップに係るボタン４１が、設定ステップに対応する設定情報が全て設定されていると判定された場合、活性(active)となるのであれば、当該ボタン４１もステップ移行インタフェース８９の１つとみなすことができる。不活性のボタン４１が操作されても次のステップに移行することはなく、活性のボタン４１が操作されると次のステップに移行することになるからである。
【００９０】
呼出インタフェース９０は、設定インタフェース３００を呼び出すためのインタフェースである。図４では、設定ステップが加工設定ステップ４１４であるため、加工設定ステップ４１４に対応する設定情報である、工程分割サブステップ４５１と加工属性設定サブステップ４５２とに係る設定情報を設定するための工程分割設定インタフェース５４１と加工属性設定インタフェース５５１とをそれぞれ呼び出す工程分割設定呼出インタフェース９５と加工属性設定呼出インタフェース９６が表示されている。表示画面３０では、設定ステップ以外のステップに対応する設定情報を設定するためのインタフェースを呼び出すためのインタフェースが表示されない。つまり、図４では、加工設定ステップ４１４以外の初期設定ステップ４１１、素材設定ステップ４１２、モデル配置ステップ４１３、及び、プログラム生成ステップ４１５に対応する設定情報を設定するためのインタフェースを呼び出すためのインタフェースが表示されない。これにより、ユーザが誤操作によって誤った設定を行うことを抑止できるばかりでなく、正しい設定インタフェース３００を発見することが容易となる。
＜加工プログラム生成プログラム２２１を利用した加工プログラム１５７の生成方法＞
つぎに、加工プログラム生成プログラム２２１を利用した入力支援方法及び加工プログラム１５７の生成方法を表示画面３０とフローチャートを併用しながら説明する。図５は、初期設定ステップ４１１に係る表示画面の表示例を示し、図１９及び図２０は、加工プログラム生成プログラム２２１を利用した入力支援方法及び加工プログラム１５７の生成方法の流れを示すフローチャートである。
【００９１】
図１９のステップＳ１において、プロセッサ２１０（１５１）は、被加工物Ｗ１を目標物に加工するために工作機械１００を制御するための設定情報を設定するための複数のステップ（４１１〜４１４）を表示する処理を実行する。ディスプレイ２４０（１５４）は、被加工物Ｗ１を加工して目標物を生成するために工作機械１００を制御するための設定情報を設定する複数のステップ（４１１〜４１４）を表示する。ステップＳ２において、プロセッサ２１０（１５１）は、複数のステップのうち設定情報を設定するべき設定ステップを選択する。まず、プロセッサ２１０（１５１）は、初期設定ステップ４１１を設定ステップとして選択する。
【００９２】
ステップＳ３において、プロセッサ２１０（１５１）は、設定インタフェース３００を呼び出すための呼出インタフェース９０をさらに表示する処理を実行する。ディスプレイ２４０（１５４）は、設定インタフェース３００を呼び出すための呼出インタフェース９０をさらに表示する。具体的には、初期設定ステップ４１１において、プロセッサ２１０（１５１）は、ドキュメント選択インタフェースを呼び出すためのドキュメント選択呼出インタフェース９１と、目標物選択インタフェースを呼び出すための目標物選択呼出インタフェース９２とをさらに表示する処理を実行する。図５では、ドキュメント選択呼出インタフェース９１と目標物選択呼出インタフェース９２とはボタンで表示されているが、他のグラフィックユーザインタフェース（ＧＵＩ）であってもよい。
【００９３】
ドキュメント選択インタフェースとは、コンピュータ２００や制御装置１５０において、ドキュメントファイルを検索し、選択し、新規作成するためのインタフェースである。ドキュメントファイルは、加工プログラム１５７の生成にあたり作業用として使用する作業ファイル(work file)である。ドキュメント選択インタフェースは、一般的なファイルマネージャと同等のユーザインタフェースであるため図面による説明を省略する。目標物選択インタフェースとは、目標物の３ＤＣＡＤ（Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｄｅｓｉｇｎ）ファイルを検索し、選択するためのインタフェースである。目標物選択インタフェースは、一般的なファイルマネージャと同等の機能であるため図面による説明を省略する。
【００９４】
ステップＳ４において、プロセッサ２１０（１５１）は、設定ステップ（初期設定ステップ４１１）に対応する設定情報を設定するための設定インタフェース３００を表示する処理を実行する。ディスプレイ２４０（１５４）は、複数のステップの中から選択された設定情報を設定するべき設定ステップ（初期設定ステップ４１１）に対応する設定情報を設定するための設定インタフェース３００を表示する。プロセッサ２１０（１５１）は、設定ステップに関する設定情報が設定されていないとき、設定インタフェース３００を自動的に表示する処理を実行する。ディスプレイ２４０（１５４）は、設定ステップに関する設定情報が設定されていないとき、設定インタフェース３００を自動的に表示する。このため、ステップＳ４において、ドキュメントファイルが未設定である場合、プロセッサ２１０（１５１）は、ドキュメント選択インタフェースを自動的に表示する処理を実行する。ドキュメントファイルが未設定である場合、ディスプレイ２４０（１５４）は、ドキュメント選択インタフェースを自動的に表示する。ドキュメントファイルが設定されている場合、ドキュメント選択呼出インタフェース９１によってドキュメント選択インタフェースが呼び出されてもよい。ステップＳ５において、プロセッサ２１０（１５１）は、ドキュメント選択インタフェースを介してドキュメントファイルの設定を受け付ける。ドキュメントファイルの設定を受け付けると、プロセッサ２１０（１５１）は、ドキュメントファイルのファイル名３１を表示画面３０に表示する処理を実行する。ディスプレイ２４０（１５４）は、ドキュメントファイルのファイル名３１を表示する。
【００９５】
ステップＳ６において、プロセッサ２１０（１５１）は、設定ステップ（初期設定ステップ４１１）に対応する設定情報を設定するための設定インタフェース３００をさらに表示する処理を実行する。ディスプレイ２４０（１５４）は、複数のステップの中から選択された設定情報を設定するべき設定ステップ（初期設定ステップ４１１）に対応する設定情報を設定するための設定インタフェース３００をさらに表示する。具体的には、プロセッサ２１０（１５１）は、目標物選択呼出インタフェース９２を介して目標物選択インタフェースを表示する処理を実行する。ディスプレイ２４０（１５４）は、目標物選択呼出インタフェース９２を介して目標物インタフェースを表示する。ただし、目標物が未選択のときは、プロセッサ２１０（１５１）は、目標物選択インタフェースを自動で表示する処理を実行することが好ましい。目標物が未選択のときは、ディスプレイ２４０（１５４）は、目標物選択呼出インタフェース９２を介して目標物選択インタフェースを表示することが好ましい。
【００９６】
ステップＳ７において、プロセッサ２１０（１５１）は、目標物選択インタフェースを介して目標物の３ＤＣＡＤファイルの３Ｄデータを読み込む。この３Ｄデータは、形状情報と色情報（表示色）を有しており、目標物の表面形状を３Ｄデータから抽出することが可能である。例えば、３ＤＣＡＤファイルフォーマットの１つであるＳＴＥＰフォーマットでは、境界表現（boundary representation)によって目標物の表面が定義される。ＳＴＥＰフォーマットでは、ＩＳＯ１０３０３−４２、ＩＳＯ１０３０３−５１１仕様等に基づき、面形状も平面、円筒面、円錐面、円環面（toroidal surface）などが定義される。このため、ＳＴＥＰフォーマットのパーサーによってＳＴＥＰファイルから面形状の抽出は可能である。他に、Parasolidフォーマットでも表面形状を抽出することは可能である。図５に示すように、プロセッサ２１０（１５１）は、設定ステップ（初期設定ステップ４１１）に対応する、目標物の形状（目標物モデル６１）を示すコンピュータグラフィックス画像（３Ｄモデル表示画面６０）を表示する処理を実行する。ディスプレイ２４０（１５４）は、設定ステップに対応する、目標物の形状（目標物モデル６１）を示すコンピュータグラフィックス画像（３Ｄモデル表示画面６０）を表示する。プロセッサ２１０（１５１）は、設定ステップに関する設定情報の設定状態（設定ステップ状態表示画面５０）をさらに表示する処理を実行する。ディスプレイ２４０（１５４）は、設定ステップに関する設定情報の設定状態（設定ステップ状態表示画面５０）をさらに表示する。図５では、設定ステップ状態表示画面５０は、初期設定ステップ４１１の設定状態５１を表示している。具体的には、設定ステップ状態表示画面５０は、ドキュメントファイルに定義されているドキュメント名５１１、製品モデル名５１２、製品モデルのファイルの種類５１３、設定されたプログラム方式５１４を表示する。さらに、ドキュメントファイルにドキュメント名５１１、製品モデル名５１２、製品モデルのファイルの種類５１３、設定されたプログラム方式５１４が定義されている場合、設定ステップ状態表示画面５０は、ドキュメントファイルの設定が完了したことを示す情報３６を表示する。
【００９７】
ステップＳ８において、プロセッサ２１０（１５１）は、設定ステップ（初期設定ステップ４１１）の次のステップ（素材設定ステップ４１２）に移行するためのステップ移行インタフェース８９をさらに表示する処理を実行する。ディスプレイ２４０（１５４）は、設定ステップ（初期設定ステップ４１１）の次のステップ（素材設定ステップ４１２）に移行するためのステップ移行インタフェース８９をさらに表示する。ステップ移行インタフェース８９が操作されると、プロセッサ２１０（１５１）は、設定インタフェースを介して設定ステップ（初期設定ステップ４１１）に対応する設定情報が全て設定されたか否かを判定する。ステップ移行インタフェース８９が操作されるときに、設定ステップ（初期設定ステップ４１１）に対応する設定情報が全て設定されていないと判定される場合（ステップＳ８でＮｏ）、次のステップ（素材設定ステップ４１２）に移行しないように構成される。具体的には、ディスプレイ２４０（１５４）には、エラー表示がされ、ドキュメントファイルの再設定や目標物の３ＤＣＡＤファイルの再設定が促される（ステップＳ９）。ステップＳ９の終了後、ステップＳ８に戻る。初期設定ステップ４１１に対応する設定情報が全て設定されているとき（ステップＳ８でＹｅｓ）、ステップＳ１０に進む。
【００９８】
ステップＳ１０において、プロセッサ２１０（１５１）は、設定ステップ（初期設定ステップ４１１）に対応する設定情報が全て設定されたと判定される場合、設定ステップについて設定が完了したことを示す情報３６を表示する処理を実行する。ディスプレイ２４０（１５４）は、設定ステップ（初期設定ステップ４１１）に対応する設定情報が全て設定されたと判定される場合、設定ステップについて設定が完了したことを示す情報３６を表示する。具体的には、図６に示すように、素材設定ステップ４１２に係る表示画面において、ステップ状態表示画面４０の初期設定ステップ４１１に係るボタン４１に、当該情報３６が表示される。つぎに、ステップＳ１１において、プロセッサ２１０（１５１）は、複数のステップのうち設定情報を設定するべき設定ステップを選択する。ステップＳ１１では、プロセッサ２１０（１５１）は、素材設定ステップ４１２を設定ステップとして選択する。
【００９９】
ステップＳ１２において、プロセッサ２１０（１５１）は、設定インタフェース３００を呼び出すための呼出インタフェース９０をさらに表示する処理を実行する。ディスプレイ２４０（１５４）は、設定インタフェース３００を呼び出すための呼出インタフェース９０をさらに表示する。具体的には、素材設定ステップ４１２において、プロセッサ２１０（１５１）は、素材設定インタフェースを呼び出すための素材設定呼出インタフェース９３をさらに表示する処理を実行する。図６では、素材設定呼出インタフェース９３はボタンで表示されているが、他のＧＵＩであってもよい。
【０１００】
素材設定インタフェースは、素材情報１６１から、被加工物の素材・形状を検索し、選択し、または、素材情報１６１に新規の素材・形状を登録するためのインタフェースである。素材設定インタフェースは、項目の選択・追加が可能な一般的なリストボックスと同等のユーザインタフェースであるため図面による説明を省略する。素材設定インタフェースでは、少なくとも素材名５２１、外径５２２、内径５２３、素材長さ５２４が選択可能な態様で表示されており、素材名５２１、外径５２２、内径５２３、素材長さ５２４、及び、端面取り代５２５を新規登録可能なインタフェースである。
【０１０１】
ステップＳ１３において、プロセッサ２１０（１５１）は、設定ステップ（素材設定ステップ４１２）に対応する設定情報を設定するための設定インタフェース３００を表示する処理を実行する。ディスプレイ２４０（１５４）は、複数のステップの中から選択された設定情報を設定するべき設定ステップ（素材設定ステップ４１２）に対応する設定情報を設定するための設定インタフェース３００を表示する。プロセッサ２１０（１５１）は、設定ステップに関する設定情報が設定されていないとき、設定インタフェース３００を自動的に表示する処理を実行する。ディスプレイ２４０（１５４）は、設定ステップに関する設定情報が設定されていないとき、設定インタフェース３００を自動的に表示する。このため、ステップＳ１３において、被加工物の素材・形状が未設定である場合、プロセッサ２１０（１５１）は、素材設定インタフェースを自動的に表示する処理を実行する。被加工物の素材・形状が未設定である場合、ディスプレイ２４０（１５４）は、素材設定インタフェースを自動的に表示する。被加工物の素材・形状が設定されている場合、素材設定呼出インタフェース９３によって素材設定インタフェースが呼び出されてもよい。ステップＳ１４において、プロセッサ２１０（１５１）は、素材設定インタフェースを介して被加工物の素材・形状の設定を受け付ける。
【０１０２】
ステップＳ１４において、プロセッサ２１０（１５１）は、素材設定インタフェースを介して被加工物の３Ｄデータを設定する。図６に示すように、プロセッサ２１０（１５１）は、設定ステップ（素材設定ステップ４１２）に対応する、被加工物の形状（被加工物モデル６２）と目標物の形状（目標物モデル６１）とを示すコンピュータグラフィックス画像（３Ｄモデル表示画面６０）を表示する処理を実行する。ディスプレイ２４０（１５４）は、設定ステップに対応する、被加工物の形状（被加工物モデル６２）と目標物の形状（目標物モデル６１）とを示すコンピュータグラフィックス画像（３Ｄモデル表示画面６０）を表示する。なお、図６では、目標物モデル６１が実線で被加工物モデル６２は点線で表示されているが、表示方法は図６に示したものに限られない。目標物モデル６１、被加工物モデル６２はワイヤーフレームであってもソリッドモデルであってもよい。また、被加工物モデル６２は半透明表示のソリッドモデルであってもよい。プロセッサ２１０（１５１）は、設定ステップに関する設定情報の設定状態（設定ステップ状態表示画面５０）をさらに表示する処理を実行する。ディスプレイ２４０（１５４）は、設定ステップに関する設定情報の設定状態（設定ステップ状態表示画面５０）をさらに表示する。図６では、設定ステップ状態表示画面５０は、素材設定ステップ４１２の設定状態５２を表示している。具体的には、設定ステップ状態表示画面５０は、素材名５２１、外径５２２、内径５２３、素材長さ５２４、及び、端面取り代５２５を表示する。さらに、設定ステップ状態表示画面５０は、被加工物の素材・形状の設定が完了したことを示す情報３６を表示する。
【０１０３】
ステップＳ１５において、プロセッサ２１０（１５１）は、設定ステップ（素材設定ステップ４１２）の次のステップ（モデル配置ステップ４１３）に移行するためのステップ移行インタフェース８９をさらに表示する処理を実行する。ディスプレイ２４０（１５４）は、設定ステップ（素材設定ステップ４１２）の次のステップ（モデル配置ステップ４１３）に移行するためのステップ移行インタフェース８９をさらに表示する。ステップ移行インタフェース８９が操作されると、プロセッサ２１０（１５１）は、設定インタフェースを介して設定ステップ（素材設定ステップ４１２）に対応する設定情報が全て設定されたか否かを判定する。ステップ移行インタフェース８９が操作されるときに、設定ステップ（素材設定ステップ４１２）に対応する設定情報が全て設定されていないと判定される場合（ステップＳ１５でＮｏ）、次のステップ（モデル配置ステップ４１３）に移行しないように構成される。具体的には、ディスプレイ２４０（１５４）には、エラー表示がされ、ステップＳ１２に戻る。素材設定ステップ４１２に対応する設定情報が全て設定されているとき（ステップＳ１５でＹｅｓ）、ステップＳ１６に進む。
【０１０４】
ステップＳ１６において、プロセッサ２１０（１５１）は、設定ステップ（素材設定ステップ４１２）に対応する設定情報が全て設定されたと判定される場合、設定ステップについて設定が完了したことを示す情報３６を表示する処理を実行する。ディスプレイ２４０（１５４）は、設定ステップ（素材設定ステップ４１２）に対応する設定情報が全て設定されたと判定される場合、設定ステップについて設定が完了したことを示す情報３６を表示する。具体的には、図７及び図８に示すように、モデル配置ステップ４１３に係る表示画面において、ステップ状態表示画面４０の素材設定ステップ４１２に係るボタン４１に、当該情報３６が表示される。つぎに、ステップＳ１７において、プロセッサ２１０（１５１）は、複数のステップのうち設定情報を設定するべき設定ステップを選択する。ステップＳ１７では、プロセッサ２１０（１５１）は、モデル配置ステップ４１３を設定ステップとして選択する。
【０１０５】
ステップＳ１８において、プロセッサ２１０（１５１）は、設定インタフェース３００を呼び出すための呼出インタフェース９０をさらに表示する処理を実行する。ディスプレイ２４０（１５４）は、設定インタフェース３００を呼び出すための呼出インタフェース９０をさらに表示する。具体的には、モデル配置ステップ４１３において、プロセッサ２１０（１５１）は、モデル配置インタフェース５３１を呼び出すためのモデル配置呼出インタフェース９４をさらに表示する処理を実行する。モデル配置インタフェース５３１は、被加工物中の目標物が占める部分を特定する情報を設定するためのインタフェースである。図７及び図８では、モデル配置呼出インタフェース９４はボタンで表示されているが、他のＧＵＩであってもよい。
【０１０６】
ステップＳ１９において、プロセッサ２１０（１５１）は、設定ステップ（モデル配置ステップ４１３）に対応する設定情報を設定するための設定インタフェース３００を表示する処理を実行する。ディスプレイ２４０（１５４）は、複数のステップの中から選択された設定情報を設定するべき設定ステップ（モデル配置ステップ４１３）に対応する設定情報を設定するための設定インタフェース３００を表示する。プロセッサ２１０（１５１）は、設定ステップに関する設定情報が設定されていないとき、設定インタフェース３００を自動的に表示する処理を実行する。ディスプレイ２４０（１５４）は、設定ステップに関する設定情報が設定されていないとき、設定インタフェース３００を自動的に表示する。このため、ステップＳ１９において、被加工物中の目標物が占める部分を特定する情報が未設定である場合、プロセッサ２１０（１５１）は、モデル配置インタフェース５３１を自動的に表示する処理を実行する。被加工物中の目標物が占める部分を特定する情報が未設定である場合、ディスプレイ２４０（１５４）は、モデル配置インタフェース５３１を自動的に表示する。被加工物中の目標物が占める部分を特定する情報が設定されている場合、モデル配置呼出インタフェース９４によってモデル配置インタフェース５３１が呼び出されてもよい。
【０１０７】
図７は、モデル配置インタフェース５３１が表示された表示画面３０の表示例である。図７に示すように、モデル配置インタフェース５３１は、自動配置設定インタフェース５３３、Ｚ軸方向反転設定インタフェース５３４、及び、旋削面指定インタフェース５３５を含む。図７では、自動配置設定インタフェース５３３、Ｚ軸方向反転設定インタフェース５３４、及び、旋削面指定インタフェース５３５は、ボタンで示されているが、ドロップダウンリストのように他のＧＵＩであってもよい。
【０１０８】
自動配置設定インタフェース５３３がタップ、マウスクリック等で操作されると、目標物モデル６１が被加工物モデル６２の概ね中央に位置するように配置される。例えば、プロセッサ２１０（１５１）は、目標物モデル６１の３Ｄデータから目標物モデル６１の最大径の円柱面もしくは円錐面を抽出する。そして、プロセッサ２１０（１５１）は、当該円柱面もしくは当該円錐面の中心軸線と円柱形である被加工物モデル６２の中心軸線とがワーク座標系のＺ軸と一致するように、目標物モデル６１と被加工物モデル６２とを配置する。図７の３Ｄモデル表示画面６０は、目標物モデル６１と被加工物モデル６２とが上述のように配置された例を示している。図７では、被加工物モデル６２が実線で目標物モデル６１が点線で表示されているが、表示方法は図７に示したものに限られない。目標物モデル６１、被加工物モデル６２はワイヤーフレームであってもソリッドモデルであってもよい。また、被加工物モデル６２は半透明表示のソリッドモデルであってもよい。Ｚ軸方向反転設定インタフェース５３４がタップ、マウスクリック等で操作されると、目標物モデル６１が３Ｄモデル表示画面６０内でワーク座標系のＺ軸に沿う方向で反転される。
【０１０９】
旋削面指定インタフェース５３５がタップ、マウスクリック等で操作されると、図８に示される旋削面入力インタフェース５３２が表示される。旋削面入力インタフェース５３２が表示されるときは、被加工物モデル６２が３Ｄモデル表示画面６０に表示されない。自動配置設定インタフェース５３３では目標物モデル６１の最大径の円柱面もしくは円錐面を基準に配置されるが、別の円柱面もしくは円錐面の中心軸を基準に旋削加工をしたい場合に旋削面入力インタフェース５３２が用いられる。また、Ｚ軸方向反転設定インタフェース５３４と旋削面指定インタフェース５３５とが組み合わされて用いられてもよい。図８において、３Ｄモデル表示画面６０に表示されている目標物モデル６１の表面がタップ、マウスクリック等で選択されると、選択された面が円柱面もしくは円錐面である場合、プロセッサ２１０（１５１）は、選択された面を強調表示する処理を実行する。図８では、加工面６３Ａが選択され、強調表示されている。この状態で、旋削面入力インタフェース５３２のＯＫボタン５３８がタップ、マウスクリック等で操作されると、選択された加工面６３Ａの中心軸がワーク座標系のＺ軸と一致するように目標物モデル６１が配置される。同時に、円柱形である被加工物モデル６２の中心軸線がワーク座標系のＺ軸と一致するように、被加工物モデル６２が配置される。そして、旋削面入力インタフェース５３２がモデル配置インタフェース５３１に変更される。
【０１１０】
矢印ボタン５３６がタップ、マウスクリック等で操作されると、操作前に選択されている面から３Ｄモデル表示画面６０の手前方向に向かって目標物モデル６１の円柱形もしくは円錐形の表面が順に選択される。矢印ボタン５３７がタップ、マウスクリック等で操作されると、操作前に選択されている面から３Ｄモデル表示画面６０の奥方向に向かって目標物モデル６１の円柱形もしくは円錐形の表面が順に選択される。３Ｄモデル表示画面６０は、コンピュータグラフィックスで定義される３次元仮想空間に位置する３次元の目標物モデル６１を所定の視点位置から見たときの２次元画像を表示したものであるが、その視点位置に向かう方向が３Ｄモデル表示画面６０の手前方向であり、その視点位置から遠ざかる方向が３Ｄモデル表示画面６０の奥方向である。旋削面入力インタフェース５３２が表示されている状態で、旋削面指定インタフェース５３５がタップ、マウスクリック等で操作されると、目標物モデル６１のいずれの面も選択されずに、旋削面入力インタフェース５３２がモデル配置インタフェース５３１に変更される。
【０１１１】
ステップＳ２０において、プロセッサ２１０（１５１）は、被加工物中の目標物が占める部分を特定する情報を設定する。図７及び図８に示すように、プロセッサ２１０（１５１）は、設定ステップ（モデル配置ステップ４１３）に対応する、被加工物の形状（被加工物モデル６２）と目標物の形状（目標物モデル６１）とのうちの少なくとも１つを示すコンピュータグラフィックス画像（３Ｄモデル表示画面６０）を表示する処理を実行する。ディスプレイ２４０（１５４）は、設定ステップに対応する、被加工物の形状（被加工物モデル６２）と目標物の形状（目標物モデル６１）とのうちの少なくとも１つを示すコンピュータグラフィックス画像（３Ｄモデル表示画面６０）を表示する。プロセッサ２１０（１５１）は、設定ステップに関する設定情報の設定状態（設定ステップ状態表示画面５０）をさらに表示する処理を実行する。ディスプレイ２４０（１５４）は、設定ステップに関する設定情報の設定状態（設定ステップ状態表示画面５０）をさらに表示する。図７及び図８は、設定ステップ状態表示画面５０は、モデル配置ステップ４１３の設定状態５３を表示している。図７及び図８では、自動配置設定インタフェース５３３の操作による設定がされた状態であるため、その内容が設定状態５３として表示されている。さらに、図７及び図８では、設定ステップ状態表示画面５０は、モデル配置の設定が完了したことを示す情報３６を表示する。
【０１１２】
ステップＳ２１において、プロセッサ２１０（１５１）は、設定ステップ（モデル配置ステップ４１３）の次のステップ（加工設定ステップ４１４）に移行するためのステップ移行インタフェース８９をさらに表示する処理を実行する。ディスプレイ２４０（１５４）は、設定ステップ（モデル配置ステップ４１３）の次のステップ（加工設定ステップ４１４）に移行するためのステップ移行インタフェース８９をさらに表示する。ステップ移行インタフェース８９が操作されると、プロセッサ２１０（１５１）は、設定インタフェースを介して設定ステップ（モデル配置ステップ４１３）に対応する設定情報が全て設定されたか否かを判定する。ステップ移行インタフェース８９が操作されるときに、設定ステップ（モデル配置ステップ４１３）に対応する設定情報が全て設定されていないと判定される場合（ステップＳ２１でＮｏ）、次のステップ（加工設定ステップ４１４）に移行しないように構成される。具体的には、ディスプレイ２４０（１５４）には、エラー表示がされ、ステップＳ１８に戻る。モデル配置ステップ４１３に対応する設定情報が全て設定されているとき（ステップＳ２１でＹｅｓ）、図２０のステップＳ２２に進む。
【０１１３】
図２０のステップＳ２２において、プロセッサ２１０（１５１）は、設定ステップ（モデル配置ステップ４１３）に対応する設定情報が全て設定されたと判定される場合、設定ステップについて設定が完了したことを示す情報３６を表示する処理を実行する。ディスプレイ２４０（１５４）は、設定ステップ（モデル配置ステップ４１３）に対応する設定情報が全て設定されたと判定される場合、設定ステップについて設定が完了したことを示す情報３６を表示する。具体的には、図４に示すように、ステップ状態表示画面４０のモデル配置ステップ４１３に係るボタン４１に、当該情報３６が表示される。つぎに、ステップＳ２３において、プロセッサ２１０（１５１）は、複数のステップのうち設定情報を設定するべき設定ステップを選択する。ステップＳ２３では、プロセッサ２１０（１５１）は、加工設定ステップ４１４を設定ステップとして選択する。
【０１１４】
ステップＳ２４において、プロセッサ２１０（１５１）は、設定インタフェース３００を呼び出すための呼出インタフェース９０をさらに表示する処理を実行する。ディスプレイ２４０（１５４）は、設定インタフェース３００を呼び出すための呼出インタフェース９０をさらに表示する。具体的には、加工設定ステップ４１４において、プロセッサ２１０（１５１）は、工程分割設定インタフェース５４１を呼び出すための工程分割設定呼出インタフェース９５と、加工属性設定インタフェース５５１を呼び出すための加工属性設定呼出インタフェース９６とをさらに表示する処理を実行する。図４では、工程分割設定呼出インタフェース９５と加工属性設定呼出インタフェース９６とはボタンで表示されているが、他のＧＵＩであってもよい。
【０１１５】
工程分割設定インタフェース５４１とは、被加工物Ｗ１の切削工程を、被加工物Ｗ１を第１主軸１２２に把持させて第１主軸１２２に旋削工具の刃を向けて加工する第１工程と、被加工物Ｗ２を第２主軸１２３に把持させて第２主軸１２３に旋削工具の刃を向けて加工する第２工程とに分割する、工程分割（process segmentation）を設定するためのインタフェースである。加工属性設定インタフェース５５１とは、目標物の表面の面粗さや表面の加工方法などの加工属性を規定するためのインタフェースである。
【０１１６】
ステップＳ２５において、プロセッサ２１０（１５１）は、設定ステップ（加工設定ステップ４１４の工程分割サブステップ４５１）に対応する設定情報を設定するための設定インタフェース３００を表示する処理を実行する。ディスプレイ２４０（１５４）は、複数のステップの中から選択された設定情報を設定するべき設定ステップ（加工設定ステップ４１４の工程分割サブステップ４５１）に対応する設定情報を設定するための設定インタフェース３００を表示する。プロセッサ２１０（１５１）は、設定ステップに関する設定情報が設定されていないとき、設定インタフェース３００を自動的に表示する処理を実行する。ディスプレイ２４０（１５４）は、設定ステップに関する設定情報が設定されていないとき、設定インタフェース３００を自動的に表示する。このため、ステップＳ２５において、上述の第１工程及び第２工程が未設定である場合、プロセッサ２１０（１５１）は、工程分割設定インタフェース５４１を自動的に表示する処理を実行する。上述の第１工程及び第２工程が未設定である場合、ディスプレイ２４０（１５４）は、工程分割設定インタフェース５４１を自動的に表示する。第１工程及び第２工程が設定されている場合、工程分割設定呼出インタフェース９５によって工程分割設定インタフェース５４１が呼び出されてもよい。
【０１１７】
図４では、工程分割設定インタフェース５４１が３Ｄモデル表示画面６０内にＧＵＩで表示された例を示している。図４では、工程分割設定インタフェース５４１が表示された直後の工程分割の初期設定状態を示している。３Ｄモデル表示画面６０には、外側基準分割位置（exterior reference segmentation position）６４、第１外側加工端(first exterior machining end)６５、第２外側加工端(second exterior machining end)６６、内側基準分割位置（interior reference segmentation position）６７、第１内側加工端(first interior machining end)６８、及び、第２内側加工端(second interior machining end)６９が表示されている。被加工物がワーク座標系Ｚ軸を中心軸とする貫通穴を有していないときは、内側基準分割位置６７、第１内側加工端６８、及び、第２内側加工端６９の表示は、省略される。
【０１１８】
外側基準分割位置６４は、被加工物の外側表面(exterior surface)のうち、第１工程で旋削する第１外側切削領域(first exterior machining region)Ｒｅ１と、第２工程で旋削する第２外側切削領域(second exterior machining region) Ｒｅ２との基準分割位置を示す。ただし、旋削工具の刃先は丸みを有しているため、外側基準分割位置６４を基準に第１外側切削領域Ｒｅ１と第２外側切削領域Ｒｅ２とに分けてしまうと、外側基準分割位置６４の付近で削り残しを生じてしまう。そこで、削り残しが生じないように第１外側切削領域Ｒｅ１と第２外側切削領域Ｒｅ２とが互いに部分的に重畳するように定められる。第１外側加工端６５は、外側基準分割位置６４からワーク座標系のＺ軸負方向へ第１外側マージンＭｅ１だけシフトした位置に設けられる、第１外側切削領域Ｒｅ１の第１主軸１２２寄りの端である。第１外側切削領域Ｒｅ１は、第１外側加工端６５から、被加工物の第２端Ｅ２（第２主軸１２３の第２チャック１２５に掴持される部分）までの間の領域である。第２外側加工端６６は、外側基準分割位置６４からワーク座標系のＺ軸正方向へ第２外側マージンＭｅ２だけシフトした位置に設けられる、第２外側切削領域Ｒｅ２の第２主軸１２３寄りの端である。第２外側切削領域Ｒｅ２は、第２外側加工端６６から、被加工物の第１端Ｅ１（第１主軸１２２の第１チャック１２４に掴持される部分）までの間の領域である。
【０１１９】
内側基準分割位置６７は、被加工物の内側表面(interior surface)のうち、第１工程で旋削する第１内側切削領域(first interior machining region)Ｒｉ１と、第２工程で旋削する第２内側切削領域(second interior machining region) Ｒｉ２との基準分割位置を示す。ただし、旋削工具の刃先は丸みを有しているため、内側基準分割位置６７を基準に第１内側切削領域Ｒｉ１と第２内側切削領域Ｒｉ２とに分けてしまうと、内側基準分割位置６７の付近で削り残しを生じてしまう。したがって、削り残しが生じないように、第１内側切削領域Ｒｉ１と第２内側切削領域Ｒｉ２とが互いに部分的に重畳するように定められる。第１内側加工端６８は、内側基準分割位置６７からワーク座標系のＺ軸負方向へ第１内側マージンＭｉ１だけシフトした位置に設けられる、第１内側切削領域Ｒｉ１の第１主軸１２２寄りの端である。第１内側切削領域Ｒｉ１は、第１内側加工端６８から、被加工物の第２端Ｅ２までの間の領域である。第２内側加工端６９は、内側基準分割位置６７からワーク座標系のＺ軸正方向へ第２内側マージンＭｉ２だけシフトした位置に設けられる、第２内側切削領域Ｒｉ２の第２主軸１２３寄りの端である。第２内側切削領域Ｒｉ２は、第２内側加工端６９から、被加工物の第１端Ｅ１までの間の領域である。
【０１２０】
なお、図４の３Ｄモデル表示画面６０内に表示されている符号及びその引き出し線、座標軸、並びに、寸法線は、説明の便宜のために付されたものであり、実際の３Ｄモデル表示画面６０において表示されなくてもよい。また、外側基準分割位置６４、第１外側加工端６５、第２外側加工端６６、内側基準分割位置６７、第１内側加工端６８、及び、第２内側加工端６９が点線や一点鎖線の表示でなくてもよく、色違いの線の表示であってもよい。第１外側マージンＭｅ１、第２外側マージンＭｅ２、第１内側マージンＭｉ１、及び、第２内側マージンＭｉ２は縞として表示されてもよい。目標物モデル６１はワーク座標系のＺ軸を含む平面で切断された断面で表示されることが好ましく、被加工物モデル６２は半透明表示されるか、外形のみがワイヤーフレームで表示されることが好ましい。
【０１２１】
工程分割の初期設定状態では、外側基準分割位置６４は、第１外側切削領域Ｒｅ１の切削量と第２外側切削領域Ｒｅ２の切削量が均等となる位置に自動的に決定される。内側基準分割位置６７は、第１内側切削領域Ｒｉ１の切削量と第２内側切削領域Ｒｉ２の切削量が均等となる位置に自動的に決定される。第１外側マージンＭｅ１、第２外側マージンＭｅ２、第１内側マージンＭｉ１、及び、第２内側マージンＭｉ２は、あらかじめユーザが定めたデフォルト値で決定される。ユーザは、３Ｄモデル表示画面６０上で、外側基準分割位置６４、第１外側加工端６５、第２外側加工端６６、内側基準分割位置６７、第１内側加工端６８、及び、第２内側加工端６９を表す線をダブルタップやマウスクリックなどの操作によって選択し、ドラッグによって所望の位置に移動させることが可能である。なお、第１外側マージンＭｅ１及び第２外側マージンＭｅ２は同じ値で設定できるように、第１外側加工端６５と第２外側加工端６６とのうちの一方が移動されると、他方もそれに応じて移動されてもよい。同様に、第１内側加工端６８と第２内側加工端６９とのうちの一方が移動されると、他方もそれに応じて移動されてもよい。
【０１２２】
また、３Ｄモデル表示画面６０上で、外側基準分割位置６４、第１外側加工端６５、第２外側加工端６６、内側基準分割位置６７、第１内側加工端６８、及び、第２内側加工端６９を表す線を選択した後に、目標物の表面をタップやマウスクリックなどの操作によって指定することによって、選択された線を指定された表面の位置まで移動させてもよい。また、工程分割設定インタフェース５４１は上記以外に様々な形態が考えられる。例えば、工程分割設定インタフェース５４１は、外側基準分割位置６４、第１外側加工端６５、第２外側加工端６６、内側基準分割位置６７、第１内側加工端６８、及び、第２内側加工端６９の少なくとも１つの移動を操作するための矢印キーと、当該移動の移動量を入力するエディットボックスと、外側基準分割位置６４及び内側基準分割位置６７のワーク座標系でのＺ座標の値を入力可能なフォームと、第１外側マージンＭｅ１及び第２外側マージンＭｅ２の少なくとも１つの値を入力可能なフォームと、第１内側マージンＭｉ１及び第２内側マージンＭｉ２の少なくとも１つの値を入力可能なフォームとの少なくとも１つを含むウィンドウをさらに備えてもよい。したがって、工程分割設定インタフェース５４１は、外側基準分割位置６４、第１外側加工端６５、第２外側加工端６６、内側基準分割位置６７、第１内側加工端６８、及び、第２内側加工端６９が定められるインタフェースであればどのようなインタフェースであってもよい。
【０１２３】
ステップＳ２６において、プロセッサ２１０（１５１）は、工程分割設定インタフェース５４１において上述のように設定された工程分割を特定する情報を設定する。図４に示すように、プロセッサ２１０（１５１）は、設定ステップ（加工設定ステップ４１４の工程分割サブステップ４５１）に対応する、被加工物の形状（被加工物モデル６２）と目標物の形状（目標物モデル６１）とを示すコンピュータグラフィックス画像（３Ｄモデル表示画面６０）を表示する処理を実行する。ディスプレイ２４０（１５４）は、設定ステップに対応する、被加工物の形状（被加工物モデル６２）と目標物の形状（目標物モデル６１）とのうちの少なくとも１つを示すコンピュータグラフィックス画像（３Ｄモデル表示画面６０）を表示する。プロセッサ２１０（１５１）は、設定ステップに関する設定情報の設定状態（設定ステップ状態表示画面５０）をさらに表示する処理を実行する。ディスプレイ２４０（１５４）は、設定ステップに関する設定情報の設定状態（設定ステップ状態表示画面５０）をさらに表示する。図４は、設定ステップ状態表示画面５０は、工程分割サブステップ４５１の設定状態５４を表示している。設定ステップ状態表示画面５０では、外側基準分割位置６４及び内側基準分割位置６７が自動で設定され、第１外側マージンＭｅ１、第２外側マージンＭｅ２、第１内側マージンＭｉ１、及び、第２内側マージンＭｉ２が自動で設定されたことが表示されている。
【０１２４】
さらに、図４では、設定ステップ状態表示画面５０は、工程分割サブステップ４５１が完了したことを示す情報３６を表示する。ただし、工程分割サブステップ終了後に、初期設定ステップ４１１、素材設定ステップ４１２、モデル配置ステップ４１３に係るボタン４１が操作されたうえで、初期設定ステップ４１１、素材設定ステップ４１２、モデル配置ステップ４１３において新たな設定がされた場合には、設定ステップ状態表示画面５０は、設定途中であることを示す情報３７である注意マークを表示してもよい。また、工程分割の初期設定状態から不適切な手動設定がされた場合（例えば、外側基準分割位置６４が第１外側加工端６５と第２外側加工端６６との間に位置しない、内側基準分割位置６７が第１内側加工端６８と第２内側加工端６９との間に位置しない）にも、設定途中であることを示す情報３７である注意マークを表示してもよい。
【０１２５】
工程分割サブステップ４５１の終了は、加工属性設定呼出インタフェース９６がタップ、マウスクリック等で操作されることにより判定される。あるいは、工程分割設定インタフェース５４１が別途のウィンドウを有するとき、そのウィンドウのＯＫボタンが押下されたことが検出されることによって、工程分割サブステップ４５１の終了が判定されてもよい。工程分割サブステップ４５１の終了が判定されると、その時点での外側基準分割位置６４、第１外側加工端６５、第２外側加工端６６、内側基準分割位置６７、第１内側加工端６８、及び、第２内側加工端６９の位置が、最終的に工程分割を特定する情報として確定される。つぎに、図２０のステップＳ２７において、目標物モデル６１の３Ｄデータから抽出した目標物モデル６１の各加工面の分類を行う。ステップＳ２７は、ステップＳ２６の後でなくても、ステップＳ２０以降でステップＳ２８よりも前のいずれのタイミングでもよい。図２１は、目標物モデル６１の各加工面の分類方法の流れを示すフローチャートである。
【０１２６】
ステップＳ１０１において、プロセッサ２１０（１５１）は、目標物モデル６１の表面から、その中心軸が回転軸（回転軸線Ａ３）となる円柱面、円錐面、トーラス面を旋削加工面として分類する。ステップＳ１０２において、プロセッサ２１０（１５１）は、目標物モデル６１の残りの表面から、一周する円柱面、円錐面を、穴加工面として分類する。ステップＳ１０２では、プロセッサ２１０（１５１）は、円柱面によって形成される円柱の内部、円錐面によって形成される円錐の内部は空であるかを目標物モデル６１のソリッドモデルから判定した上で、空である場合に、一周する円柱面、円錐面を、穴加工面として分類する。ステップＳ１０３において、プロセッサ２１０（１５１）は、穴加工面として分類された表面のうち、同一の中心軸をもつ円柱面、円錐面をグルーピングする。ステップＳ１０４において、プロセッサ２１０（１５１）は、目標物モデル６１の残りの表面から平坦面を面加工面として分類する。ステップＳ１０５において、最後に、プロセッサ２１０（１５１）は、目標物の残りの表面を、モデル適用不可曲面として分類する。
【０１２７】
図２０に戻り、ステップＳ２８において、プロセッサ２１０（１５１）は、設定ステップ（加工設定ステップ４１４の加工属性設定サブステップ４５２）に対応する設定情報を設定するための設定インタフェース３００をさらに表示する処理を実行する。ディスプレイ２４０（１５４）は、複数のステップの中から選択された設定情報を設定するべき設定ステップ（加工設定ステップ４１４の加工属性設定サブステップ４５２）に対応する設定情報を設定するための設定インタフェース３００をさらに表示する。具体的には、プロセッサ２１０（１５１）は、加工属性設定呼出インタフェース９６を介して加工属性設定インタフェース５５１を表示する処理を実行する。ディスプレイ２４０（１５４）は、加工属性設定呼出インタフェース９６を介して加工属性設定インタフェース５５１を表示する。
【０１２８】
図９〜１５は、加工属性設定サブステップ４５２に係る表示画面３０の表示例である。加工属性設定インタフェース５５１は、穴加工設定ボタン６０１と面粗さ設定ボタン(plane roughness setting button)６０２とを含むウィンドウである。穴加工設定ボタン６０１と面粗さ設定ボタン６０２とのうちのいずれか一方が選択的に活性化される。穴加工設定ボタン６０１は、目標物の穴加工面にネジ加工か仕上げ加工を施す場合にその穴の特性を設定するために選択される。面粗さ設定ボタン６０２は、目標物の旋削加工面、面加工面、または、穴加工面に面粗さを設定するために選択される。したがって、第４ステップ（加工設定ステップ４１４）は、目標物の表面の表面粗さを設定することをさらに含む。図９〜１５では、穴加工設定ボタン６０１と面粗さ設定ボタン６０２とはボタンで表示されているが、ドロップダウンリストやラジオボタンなど他のＧＵＩであってもよい。図９〜１３は、穴加工設定ボタン６０１が活性化された例を示し、図１４及び図１５は、面粗さ設定ボタン６０２が活性化された例を示す。
【０１２９】
図９〜１３を参照すると、穴加工設定ボタン６０１が活性化されると、ネジ山設定ボタン(thread setting button)６０３及び穴仕上げ加工設定ボタン(hole finishing setting button)６０４が表示される。ネジ山設定ボタン６０３と穴仕上げ加工設定ボタン６０４とのうちのいずれか一方が選択的に活性化される。ネジ山設定ボタン６０３は、目標物の加工面にネジ加工を施す場合にネジ山の属性を設定するために選択される。穴仕上げ加工設定ボタン６０４は、目標物の加工面にリーマ加工やボーリング加工のような仕上げ加工を施す場合にその仕上げ加工によって生じる穴の特性を設定するために選択される。したがって、第４ステップ（加工設定ステップ４１４）は、穴加工によって生成する穴の特性とネジ加工によって生成するネジ山の特性との少なくとも１つを設定することをさらに含む。図９〜１５では、ネジ山設定ボタン６０３と穴仕上げ加工設定ボタン６０４とはボタンで表示されているが、ドロップダウンリストやラジオボタンなど他のＧＵＩであってもよい。
【０１３０】
図９〜１１を参照すると、穴仕上げ加工設定ボタン６０４が活性化されると、穴仕上げ加工工程リスト６０８と追加ボタン６０５とが表示される。つまり、加工属性設定インタフェース５５１は、穴仕上げ加工工程リスト６０８と追加ボタン６０５とを含む。穴仕上げ加工工程リスト６０８は、別途の穴加工設定ウィンドウ５５２（図９参照）もしくは穴加工設定ウィンドウ５５３（図１０参照）にて設定される穴仕上げ加工工程のリストである。穴仕上げ加工設定ボタン６０４が活性化されている状態で追加ボタン６０５がタップ、マウスクリック等で操作されると、穴仕上げ加工工程リスト６０８に新規の穴仕上げ加工設定を追加するために、穴加工設定ウィンドウ５５２、５５３が起動される。
【０１３１】
図９及び図１０を参照すると、穴加工設定ウィンドウ５５２、５５３は、リーマ加工設定ボタン６３４とボーリング加工設定ボタン６３５とを含む。リーマ加工設定ボタン６３４とボーリング加工設定ボタン６３５とのうちのいずれか一方が選択的に活性化される。図９及び図１０では、リーマ加工設定ボタン６３４とボーリング加工設定ボタン６３５とはボタンで表示されているが、ドロップダウンリストやラジオボタンなど他のＧＵＩであってもよい。リーマ加工設定ボタン６３４が活性化された場合の穴加工設定ウィンドウ５５２と、ボーリング加工設定ボタン６３５が活性化された場合の穴加工設定ウィンドウ５５３とでは、一部の表示内容が相違する。図９は、リーマ加工設定ボタン６３４が活性化された例を示し、図１０は、ボーリング加工設定ボタン６３５が活性化された例を示す。
【０１３２】
新規に穴加工面の仕上げ加工を設定する際は、リーマ加工設定ボタン６３４またはボーリング加工設定ボタン６３５が活性化された後、３Ｄモデル表示画面６０に表示されている目標物モデル６１の穴加工面が、タップ、マウスクリック等で操作されることにより、選択される。この際、ステップＳ１０３においてグルーピングされた穴形状が選択可能である。また、複数の穴形状が同一である場合、その複数の穴形状が一度に選択可能である。図９及び図１０は、３Ｄモデル表示画面６０に同一形状を有する３つの穴加工面６３Ｂが選択された例を示している。
【０１３３】
図９を参照すると、リーマ加工設定ボタン６３４が活性化された場合の穴加工設定ウィンドウ５５２には、選択された穴の個数６３１、並びに、選択された穴の穴径６３２及び穴深さ６３３が表示される。選択された穴の穴径６３２及び穴深さ６３３は、ステップＳ１０２で求められた穴加工面のうち、円柱面の直径の値、円柱面の長さの値が表示される。また、ステップＳ１０３においてグルーピングされた穴形状の開口が円錐台面から成り、その円錐台面に円柱面が接続されている場合、面取りも算出することが可能である。穴加工設定ウィンドウ５５２には、このように算出された面取りがテキストボックス６３６で表示されている。なお、ステップＳ１０３においてグルーピングされた穴形状の開口が円柱面から成る場合、面取りが０．０に設定される。面取りの数値は、ユーザがテキストボックス６３６をタップ、マウスクリックなどの操作によって編集可能とすることができる。穴加工設定ウィンドウ５５２は、リーマ加工を行う前の前工程を、ドリル加工、ボーリング加工、エンドミル加工の中から指定するためのラジオボタン６３７を含む。この前工程は、デフォルトではドリル加工が指定されているが、ラジオボタン６３７の操作によって変更可能である。ラジオボタン６３７は、ドロップダウンリストやボタンなどの他のＧＵＩであってもよい。
【０１３４】
穴加工設定ウィンドウ５５２は、矢印ボタン６２１、６２２をさらに含む。矢印ボタン６２１がタップ、マウスクリック等で操作されると、３Ｄモデル表示画面６０の最後に選択された面から３Ｄモデル表示画面６０の手前方向に向かって目標物モデル６１の加工面が順に選択される。ただし、加工面のうち、穴加工面だけが順に選択されてもよい。矢印ボタン６２２がタップ、マウスクリック等で操作されると、３Ｄモデル表示画面６０の最後に選択された面から３Ｄモデル表示画面６０の奥方向に向かって目標物モデル６１の加工面が順に選択される。ただし、加工面のうち、穴加工面だけが順に選択されてもよい。３Ｄモデル表示画面６０の手前方向、奥方向の定義は、ステップＳ１９の定義と同じである。
【０１３５】
穴加工設定ウィンドウ５５２は、ＯＫボタン６２３をさらに含む。ＯＫボタン６２３がタップ、マウスクリック等で操作されると、リーマ加工設定ボタン６３４とボーリング加工設定ボタン６３５とのうちの活性化されているボタンに対応する加工方法についての加工属性を保存する。リーマ加工設定ボタン６３４が活性化されているとき（リーマ加工）の加工属性は、穴加工面６３Ｂを特定する情報、同一の穴形状の個数６３１、加工方法６１２（リーマ加工：図１１参照）、穴径６３２、穴深さ６３３、テキストボックス６３６にて設定された面取り、リーマ加工を行う前の前工程である。なお、ユーザがタップ、マウスクリック、矢印ボタン６２１、６２２によって最終的に選択した面が穴加工面でないものが含まれている場合、穴加工設定ウィンドウ５５２及び後述する穴加工設定ウィンドウ５５３による設定は無視される。加工属性が保存されると、穴加工設定ウィンドウ５５２が閉じられ、図１１に示されるように、保存された加工属性が属性管理番号６１１とともに穴仕上げ加工工程リスト６０８に表示される。
【０１３６】
図１０は、ボーリング加工設定ボタン６３５が活性化された場合の穴加工設定ウィンドウ５５３を示す。穴加工設定ウィンドウ５５３では、穴加工設定ウィンドウ５５２と同じ構成要素には同じ符号が付されており、詳細な説明が省略される。なお、ボーリング加工の場合、段付き穴の処理が可能である。したがって、ステップＳ１０３で求められた穴加工面が異なる径を有する複数の円柱面から成る場合、奥側の円柱面がボーリング加工される円柱面として自動的に選択される。そして、選択された円柱面の直径及び高さが、それぞれ、穴径６３２及び穴深さ６３３として表示される。穴加工設定ウィンドウ５５３は、ラジオボタン６３７の代わりに、穴の壁面粗さを定義するドロップダウンリスト６３８と、穴の底面粗さを定義するドロップダウンリスト６３９とを含む。壁面粗さ及び底面粗さが粗い順に１〜９までの値によって指定される。ドロップダウンリスト６３８、６３９では、デフォルト値が９に設定されているが、ドロップダウンリスト６３８、６３９の操作によって変更可能である。ドロップダウンリスト６３８、６３９は、ラジオボタンなどの他のＧＵＩであってもよい。なお、穴加工設定ウィンドウ５５３のＯＫボタン６２３が操作されたときに保存される加工属性は、穴加工面６３Ｂを特定する情報、同一の穴形状の個数６３１、加工方法６１２（ボーリング加工）、穴径６３２、穴深さ６３３、テキストボックス６３６にて設定された面取り、壁面粗さ、底面粗さである。
【０１３７】
図１１を参照すると、穴仕上げ加工工程リスト６０８の各行には、保存された加工属性のうちの、属性管理番号６１１、加工方法６１２、穴径６３２、穴深さ６３３、及び、個数６３１が表示される。穴仕上げ加工工程リスト６０８の各行は、タップやマウスクリック等により選択可能である。穴仕上げ加工工程リスト６０８の１つの行が選択されると、選択された加工属性の穴加工面６３Ｂが３Ｄモデル表示画面６０において強調表示される。強調表示は、色を変えて表示することや点滅表示を含む。図１１は、リーマ加工に係る３つの穴形状６３Ｂが強調表示された例を示している。加工属性設定インタフェース５５１は、変更ボタン６０６と消去ボタン６０７とをさらに含む。穴仕上げ加工工程リスト６０８の１つの行が選択された状態で、変更ボタン６０６がタップやマウスクリック等の操作がされると、選択された加工属性の加工方法６１２に対応する穴加工設定ウィンドウ５５２、５５３が表示され、加工属性の再編集が可能となる。加工属性の再編集においては、３Ｄモデル表示画面６０において強調されている穴加工面６３Ｂをタップ、マウスクリック等の操作により削除するようにしてもよく、別の穴加工面を操作することにより穴加工面６３Ｂに追加するようにしてもよい。穴仕上げ加工工程リスト６０８の１つの行が選択された状態で、消去ボタン６０７がタップやマウスクリック等の操作がされると、選択された加工属性が穴仕上げ加工工程リスト６０８から削除される。
【０１３８】
図１２及び図１３を参照すると、ネジ山設定ボタン６０３が活性化されると、穴仕上げ加工工程リスト６０８の代わりに、ネジ加工工程リスト６０９が表示される。つまり、加工属性設定インタフェース５５１は、ネジ加工工程リスト６０９を含む。ネジ加工工程リスト６０９は、別途のネジ山設定ウィンドウ５５４（図１２参照）にて設定されるネジ加工工程のリストである。ネジ山設定ボタン６０３が活性化されている状態で追加ボタン６０５が操作されると、ネジ加工工程リスト６０９に新規のネジ山設定を追加するために、ネジ山設定ウィンドウ５５４が起動される。ネジ山設定ウィンドウ５５４は、タップ加工についての設定ウィンドウである。ネジ山設定ウィンドウ５５４では、穴加工設定ウィンドウ５５２と同じ構成要素には同じ符号が付されており、詳細な説明が省略される。
【０１３９】
新規にネジ山を設定する際は、新規に穴加工面の仕上げ加工を設定する場合と同様に、ネジ山設定ウィンドウ５５４が起動された後、３Ｄモデル表示画面６０に表示されている目標物モデル６１の穴加工面が、タップ、マウスクリック等で操作されることにより、選択される。図１２は、図９及び１０と同様に、３Ｄモデル表示画面６０に同一形状を有する３つの穴加工面６３Ｂが選択された例を示している。
【０１４０】
図１２を参照すると、ネジ山設定ウィンドウ５５４には、選択された穴の個数６３１、並びに、選択された穴のうちネジ加工を行う穴の開口側径６４１、奥側径６４２、長さ６４３が表示される。タップ加工の場合、段付き穴の処理が可能であるため、ステップＳ１０３で求められた穴加工面が異なる径を有する複数の円柱面もしくは円錐台面から成る場合、もっとも奥に位置する円柱面もしくは円錐台面がタップ加工される円柱面もしくは円錐台面として自動的に選択され、選択された円柱面もしくは円錐台面のうち、開口側に位置する直径、奥側に位置する直径、円柱もしくは円錐台の高さが、それぞれ、開口側径６４１、奥側径６４２、長さ６４３として表示される。
【０１４１】
ネジ山設定ウィンドウ５５４は、ネジの形状を、ネジ規格から設定するか、独自仕様から設定するかを指定するためのラジオボタン６４４を含む。ネジ形状は、デフォルトではネジ規格が指定されているが、ラジオボタン６４４の操作によって変更可能である。ラジオボタン６４４は、ドロップダウンリストやボタンなどの他のＧＵＩであってもよい。ラジオボタン６４４でネジ規格が指定されている場合、ネジ山設定ウィンドウ５５４には、ネジ規格を指定するドロップダウンリスト６４５と、ネジの呼び(normal designation of thread)を指定するドロップダウンリスト６４６と、ネジ長(thread length)を指定するテキストボックス６４７と、面取りを指定するテキストボックス６３６と、左ネジ（left-handed screw）か右ネジ（right-handed screw）かを指定するチェックボックス６４８とが表示されている。すなわち、ネジ山設定ウィンドウ５５４は、ドロップダウンリスト６４５、６４６と、テキストボックス６３６、６４７と、チェックボックス６４８とを含む。ドロップダウンリスト６４５、６４６と、チェックボックス６４８は、ラジオボタンなどの他のＧＵＩであってもよい。ラジオボタン６４４で独自仕様が指定されている場合、ドロップダウンリスト６４５、６４６に代えて、雄ネジの外径（雌ネジの谷の径）を設定するためのテキストボックスと、ピッチを設定するためのテキストボックスが表示される。その他の表示は、ラジオボタン６４４でネジ規格が指定されている場合の表示と同じである。
【０１４２】
ドロップダウンリスト６４５は、メートル並目ねじ(metric coarse thread)、メートル細目ねじ(metric fine pitch thread)、ユニファイ並目ねじ(unified coarse thread)、ユニファイ細目ねじ(unified fine pitch thread)、管用平行ねじ(parallel pipe thread)、及び、管用テーパねじ(taper pipe thread)のうちのいずれか１つの規格を選択するためのインタフェースである。デフォルトでは、メートル並目ねじが指定される。ユーザは、ドロップダウンリスト６４５を操作して他の規格に変更することが可能である。ドロップダウンリスト６４６は、ドロップダウンリスト６４５で指定されたネジ規格において１つの呼びを選択するためのインタフェースである。デフォルトでは、あらかじめ定められた呼びが指定される。ただし、その雄ネジの外径（雌ネジの谷の径）が、開口側径６４１、奥側径６４２、及び、長さ６４３から定義されるネジ穴の外形を超えない呼びの中から、最も雄ネジの外径（雌ネジの谷の径）が大きい呼びがデフォルトで指定されてもよい。ユーザは、ドロップダウンリスト６４６を操作して、ドロップダウンリスト６４５で指定されたネジ規格に対応した他の呼びに変更することが可能である。ラジオボタン６４４で独自仕様が指定されている場合、雄ネジの外径（雌ネジの谷の径）として、メートル並目ねじで上述の方法で指定された呼びに対応する値が自動で指定される。ラジオボタン６４４で独自仕様が指定されている場合、ピッチとして、メートル並目ねじで上述の方法で指定された呼びに対応するピッチが自動で指定される。
【０１４３】
テキストボックス６４７は、長さ６４３に対応する値がネジ長の初期値として表示される。ユーザは、テキストボックス６４７の値を変更することによって、ネジ長を変更することが可能である。テキストボックス６４７の値が長さ６４３の値よりも小さく設定された場合、ネジ加工は、奥側の部分において行われる。チェックボックス６４８においてtrueが指定されるとき左ネジ（left-handed screw）が指定され、falseが指定されるとき、右ネジ（right-handed screw）が指定される。チェックボックス６４８のデフォルト値は、falseである。
【０１４４】
ネジ山設定ウィンドウ５５４は、矢印ボタン６２１、６２２、及びＯＫボタン６２３をさらに含む。これらについては、穴加工設定ウィンドウ５５２の矢印ボタン６２１、６２２、及びＯＫボタン６２３と同じ機能を有するため、説明を省略する。なお、ネジ山設定ウィンドウ５５４のＯＫボタン６２３が操作されたときに保存される加工属性は、加工面６３Ｂを特定する情報、加工方法６１２（タップ加工）、同一の加工面形状の個数６３１、ドロップダウンリスト６４６で指定される呼び６１６（図１３参照）、テキストボックス６４７で指定されるネジ長６１７（図１３参照）、ドロップダウンリスト６４５で指定されるネジ規格と呼び６１６から算出される雄ネジの外径（雌ネジの谷の径）及びピッチ、並びに、テキストボックス６３６にて設定された面取りである。
【０１４５】
ネジ山設定ウィンドウ５５４のＯＫボタン６２３が操作されると、ネジ山設定ウィンドウ５５４が閉じられ、図１３に示されるように、保存された加工属性が属性管理番号６１１とともにネジ加工工程リスト６０９に表示される。
【０１４６】
図１３を参照すると、ネジ加工工程リスト６０９の各行には、保存された加工属性のうちの、属性管理番号６１１、加工方法６１２、呼び６１６、ネジ長６１７、及び、個数６３１が表示される。ネジ加工工程リスト６０９の各行は、タップやマウスクリック等により選択可能である。ネジ加工工程リスト６０９の１つの行が選択されると、選択された加工属性の穴加工面６３Ｂが３Ｄモデル表示画面６０において強調表示される。強調表示は、色を変えて表示することや点滅表示を含む。加工属性設定インタフェース５５１は、変更ボタン６０６と消去ボタン６０７とをさらに含む。ネジ加工工程リスト６０９の１つの行が選択された状態で、変更ボタン６０６が操作されると、ネジ山設定ウィンドウ５５４が表示され、加工属性の再編集が可能となる。加工属性の再編集においては、３Ｄモデル表示画面６０において強調されている穴加工面６３Ｂをタップ、マウスクリック等の操作により削除するようにしてもよく、別の穴加工面を操作することにより穴加工面６３Ｂに追加するようにしてもよい。ネジ加工工程リスト６０９の１つの行が選択された状態で、消去ボタン６０７が操作されると、選択された加工属性がネジ加工工程リスト６０９から削除される。
【０１４７】
図１４及び図１５は、面粗さ設定ボタン６０２が活性化された加工属性設定インタフェース５５１を示す。図１４及び図１５の加工属性設定インタフェース５５１において、図９〜１３の加工属性設定インタフェース５５１と同じ構成要素には同じ符号が付されており、詳細な説明が省略される。図１４及び図１５を参照すると、面粗さ設定ボタン６０２が活性化されると、加工属性設定インタフェース５５１のウィンドウには、面粗さ設定リスト６１０が表示される。追加ボタン６０５が操作されると、表面粗さ設定リスト６１０に新規の面粗さ設定を追加するために、面粗さ設定ウィンドウ５５５が起動される。面粗さの設定は、ボーリング加工においては、穴加工設定ウィンドウ５５３でも設定できる。このため、先に、穴加工設定ウィンドウ５５３で面粗さが設定されている穴に対しては面粗さ設定ウィンドウ５５５によって面粗さを設定することができない。逆に、先に面粗さ設定ウィンドウ５５５によって面粗さを設定してしまうと、穴加工設定ウィンドウ５５３で面粗さを設定することができない。ただし、穴加工設定ウィンドウ５５３と面粗さ設定ウィンドウ５５５とのうち、後に設定したものを有効にするのでもよい。
【０１４８】
新規に面粗さを設定する際は、面粗さ設定ウィンドウ５５５が起動された後、３Ｄモデル表示画面６０に表示されている目標物モデル６１の旋削加工面または面加工面が、タップ、マウスクリック等で操作されることにより、選択される。この際、ステップＳ１０１において分類された旋削加工面、または、ステップＳ１０４において分類された面加工面が選択可能である。図１４は、３Ｄモデル表示画面６０において２つの加工面６３Ｃが選択された例を示している。
【０１４９】
図１４を参照すると、面粗さ設定ウィンドウ５５５には、選択された面の個数６３１が表示される。面粗さ設定ウィンドウ５５５は、デフォルトの面粗さを指定するドロップダウンリスト６５０と、選択された加工面６３Ｃの面粗さを指定するラジオボタン６５１とを含む。ドロップダウンリスト６５０及びラジオボタン６５１では、面粗さは、粗い順に１〜９までの値によって指定される。ドロップダウンリスト６５０では、デフォルト値があらかじめユーザが指定した値に設定されているが、ドロップダウンリスト６５０の操作によって変更可能である。ラジオボタン６５１では、初期値が１に設定されているが、ドロップダウンリスト６５０と同じ値が設定されてもよく、ラジオボタン６５１の操作によって変更可能である。ドロップダウンリスト６５０はラジオボタンなどの他のＧＵＩであってもよい。同様に、ラジオボタン６５１はドロップダウンリストやボタンなどの他のＧＵＩであってもよい。
【０１５０】
面粗さ設定ウィンドウ５５５は、矢印ボタン６２１、６２２、及びＯＫボタン６２３をさらに含む。これらについては、矢印ボタン６２１、６２２によって最終的に選択した面が穴加工面であるか否かに関わらず設定が有効になる点を除いて、穴加工設定ウィンドウ５５２の矢印ボタン６２１、６２２、及びＯＫボタン６２３と同じ機能を有するため、説明を省略する。なお、面粗さ設定ウィンドウ５５５のＯＫボタン６２３が操作されたときに保存される加工属性は、加工面６３Ｃを特定する情報、同一の加工面形状の個数６３１、ラジオボタン６５１で指定された加工面６３Ｃの面粗さ６１８（図１５参照）、ドロップダウンリスト６５０で指定されるデフォルトの面粗さである。面粗さ設定ウィンドウ５５５のＯＫボタン６２３が操作されると、面粗さ設定ウィンドウ５５５が閉じられ、図１５に示されるように、面粗さ設定リスト６１０に保存された加工属性が属性管理番号６１１とともに表示される。
【０１５１】
図１５を参照すると、面粗さ設定リスト６１０の各行には、保存された加工属性のうちの、属性管理番号６１１、面粗さ６１８、及び、個数６３１が表示される。面粗さ設定リスト６１０の各行は、タップやマウスクリック等により選択可能である。面粗さ設定リスト６１０の１つの行が選択されると、選択された加工属性の加工面６３Ｃが３Ｄモデル表示画面６０において強調表示される。強調表示は、色を変えて表示することや点滅表示を含む。加工属性設定インタフェース５５１は、変更ボタン６０６と消去ボタン６０７とをさらに含む。面粗さ設定リスト６１０の１つの行が選択された状態で、変更ボタン６０６が操作されると、面粗さ設定ウィンドウ５５５が表示され、加工属性の再編集が可能となる。加工属性の再編集においては、３Ｄモデル表示画面６０において強調されている加工面６３Ｃをタップ、マウスクリック等の操作により削除するようにしてもよく、別の加工面を操作することにより加工面６３Ｃに追加するようにしてもよい。面粗さ設定リスト６１０の１つの行が選択された状態で、消去ボタン６０７が操作されると、選択された加工属性が面粗さ設定リスト６１０から削除される。
【０１５２】
図２０に戻り、ステップＳ２９において、プロセッサ２１０（１５１）は、加工属性設定インタフェース５５１（穴加工設定ウィンドウ５５２、穴加工設定ウィンドウ５５３、ネジ山設定ウィンドウ５５４、面粗さ設定ウィンドウ５５５）を介して上述のように、被加工物の加工属性を設定する。図９〜１５に示すように、プロセッサ２１０（１５１）は、設定ステップ（加工設定ステップ４１４の加工属性設定サブステップ４５２）に対応する目標物の形状（目標物モデル６１）を示すコンピュータグラフィックス画像（３Ｄモデル表示画面６０）を表示する処理を実行する。ディスプレイ２４０（１５４）は、設定ステップに対応する目標物の形状（目標物モデル６１）を示すコンピュータグラフィックス画像（３Ｄモデル表示画面６０）を表示する。なお、図９〜１５では、被加工物モデル６２は表示されていないが、面６３Ａ、６３Ｂ、６３Ｃとして選択されない態様で表示されてもよい。目標物モデル６１は内部の穴形状を表示するときは、ワイヤーフレームの表示であってもよい。
【０１５３】
プロセッサ２１０（１５１）は、設定ステップに関する設定情報の設定状態（設定ステップ状態表示画面５０）をさらに表示する処理を実行する。ディスプレイ２４０（１５４）は、設定ステップに関する設定情報の設定状態（設定ステップ状態表示画面５０）をさらに表示する。図４及び図１５では、設定ステップ状態表示画面５０は、工程分割サブステップ４５１の設定状態５４と、加工属性設定サブステップ４５２に係る設定状態５５とを表示している。
【０１５４】
具体的には、設定ステップ状態表示画面５０は、設定状態５４として、外側基準分割位置６４と内側基準分割位置６７とが「自動」で設定されたか（デフォルトの初期設定の位置）、「手動」で設定されたか（初期設定の位置から工程分割設定インタフェース５４１よる設定変更がされたか）と、第１外側マージンＭｅ１、第２外側マージンＭｅ２、第１内側マージンＭｉ１、及び、第２内側マージンＭｉ２が「自動」で設定されたか（デフォルトの初期設定の長さ）、「手動」で設定されたか（初期設定の長さから工程分割設定インタフェース５４１よる設定変更がされたか）と、を表示している。
【０１５５】
設定ステップ状態表示画面５０は、設定状態５５として、ネジ山設定がされたか否か、穴加工の設定がされたか否か、及び、面粗さの設定がされたか否か（面粗さのデフォルト値は何か）を表示している。さらに、図１５において、設定ステップ状態表示画面５０は、加工属性設定サブステップ４５２が完了したことを示す情報３６を表示している。加工属性設定サブステップ４５２で設定する加工属性を設定する必要のない加工も存在しない訳ではないが、殆どの加工作業において、当該加工属性の設定は必要と考えられるため、プロセッサ２１０（１５１）は、１つの加工属性が設定された時点で加工属性設定サブステップ４５２が完了したと判定している。
【０１５６】
ステップＳ３０において、プロセッサ２１０（１５１）は、設定ステップ（加工設定ステップ４１４）の次のステップ（プログラム生成ステップ４１５）に移行するためのステップ移行インタフェース８９をさらに表示する処理を実行する。ディスプレイ２４０（１５４）は、設定ステップ（加工設定ステップ４１４）の次のステップ（プログラム生成ステップ４１５）に移行するためのステップ移行インタフェース８９をさらに表示する。ステップ移行インタフェース８９が操作されると、プロセッサ２１０（１５１）は、設定インタフェースを介して設定ステップ（加工設定ステップ４１４）に対応する設定情報が全て設定されたか否かを判定する。ステップ移行インタフェース８９が操作されるときに、設定ステップ（プログラム生成ステップ４１５）に対応する設定情報が全て設定されていないと判定される場合（ステップＳ３０でＮｏ）、次のステップ（プログラム生成ステップ４１５）に移行しないように構成される。具体的には、ディスプレイ２４０（１５４）には、エラー表示がされ、工程分割の再設定や加工属性の再設定が促される（ステップＳ３１）。ステップＳ３１の終了後、ステップＳ３０に戻る。加工設定ステップ４１４に対応する設定情報が全て設定されているとき（ステップＳ３０でＹｅｓ）、ステップＳ３２に進む。
【０１５７】
ステップＳ３２において、プロセッサ２１０（１５１）は、設定ステップ（加工設定ステップ４１４）に対応する設定情報が全て設定されたと判定される場合、設定ステップについて設定が完了したことを示す情報３６を表示する処理を実行する。ディスプレイ２４０（１５４）は、設定ステップ（加工設定ステップ４１４）に対応する設定情報が全て設定されたと判定される場合、設定ステップについて設定が完了したことを示す情報３６を表示する。具体的には、図１６に示すように、ステップ状態表示画面４０の加工設定ステップ４１４に係るボタン４１に、当該情報３６が表示される。つぎに、ステップＳ３３において、プロセッサ２１０（１５１）は、複数のステップのうち設定情報を設定するべき設定ステップを選択する。ステップＳ３３では、プロセッサ２１０（１５１）は、プログラム生成ステップ４１５を設定ステップとして選択する。
【０１５８】
ステップＳ３４において、プロセッサ２１０（１５１）は、設定インタフェース３００を呼び出すための呼出インタフェース９０をさらに表示する処理を実行する。ディスプレイ２４０（１５４）は、設定インタフェース３００を呼び出すための呼出インタフェース９０をさらに表示する。具体的には、プログラム生成ステップ４１５において、プロセッサ２１０（１５１）は、ユニット確認・編集インタフェース５６１を呼び出すためのユニット確認・編集呼出インタフェース９７と、プログラム生成インタフェースを呼び出すためのプログラム生成呼出インタフェース９８とをさらに表示する処理を実行する。図１６では、ユニット確認・編集呼出インタフェース９７とプログラム生成呼出インタフェース９８とはボタンで表示されているが、他のＧＵＩであってもよい。
【０１５９】
ユニット確認・編集インタフェース５６１とは、加工プログラム１５７に出力される加工ユニットの内容を確認し、必要に応じて編集するためのインタフェースである。プログラム生成インタフェースとは、生成する加工プログラム１５７を特定するための番号（ワーク番号）を確認し、加工プログラム１５７を生成するためのインタフェースである。
＜加工ユニットの予備データ生成＞
つぎに、ステップＳ３５において、加工ユニット予備データを生成する。ステップＳ３５は、ステップＳ３４の後でなくても、ステップＳ３２以降でステップＳ３６よりも前のいずれのタイミングでもよい。図２２は、ステップＳ３５に係る加工ユニット予備データ生成に係るフローチャートである。加工ユニット予備データは、加工ユニットのうち、工具シーケンス及び形状シーケンスよりも前に定義されるユニットデータを含む。加工ユニット予備データは、さらに、初期設定ステップ４１１、素材設定ステップ４１２、モデル配置ステップ４１３、及び加工設定ステップ４１４にて設定され、工具シーケンス及び形状シーケンス生成に利用されるがユニットデータに格納されない設定情報も含む。
【０１６０】
ステップＳ２０１では、プロセッサ２１０（１５１）は、ステップＳ２７で分類された各加工面が旋削加工面か否か判定する（ステップＳ２０１）。旋削加工面と判定される場合（ステップＳ２０１でＹｅｓ）、プロセッサ２１０（１５１）は、当該加工面に対し、目標物の他表面から干渉されない工具のアプローチ方向を求める（ステップＳ２０２）。アプローチ方向がワーク座標系のＺ軸負方向であるとき、プロセッサ２１０（１５１）は、当該加工面に係る加工ユニットのユニット名を端面ユニットとし、加工部名称を正面とする（ステップＳ２０３）。アプローチ方向がワーク座標系のＺ軸正方向であるとき、プロセッサ２１０（１５１）は、当該加工面に係る加工ユニットのユニット名を端面ユニットとし、加工部名称を背面とする（ステップＳ２０４）。アプローチ方向がワーク座標系のＸ軸負方向であるとき、プロセッサ２１０（１５１）は、当該加工面に係る加工ユニットのユニット名を棒材ユニットとし、加工部名称を外径とする（ステップＳ２０５）。アプローチ方向がワーク座標系のＸ軸正方向であるとき、プロセッサ２１０（１５１）は、当該加工面に係る加工ユニットのユニット名を棒材ユニットとし、加工部名称を内径とする（ステップＳ２０６）。
【０１６１】
ステップＳ２０１において加工面が旋削加工面と判定されなかったとき（ステップＳ２０１でＮｏ）、プロセッサ２１０（１５１）は、加工面が穴加工面か否か判定する（ステップＳ２１１）。穴加工面と判定される場合（ステップＳ２１１でＹｅｓ）、プロセッサ２１０（１５１）は、当該加工面がステップＳ１０３でグルーピングされた異なる径の２種類の円柱の組み合わせによるものか否か判定する（ステップＳ２１２）。プロセッサ２１０（１５１）は、さらに、当該加工面がステップＳ２９で加工属性が設定されたか否か判定する（ステップＳ２１３、Ｓ２１４）。
【０１６２】
異なる径の２種類の円柱の組み合わせでなく、加工属性が設定されていないと判定される場合（ステップＳ２１２、Ｓ２１３でＮｏ）、プロセッサ２１０（１５１）は、当該加工面に係る加工ユニットのユニット名をドリルユニットとする（ステップＳ２１５）。異なる径の２種類の円柱の組み合わせでなく、加工属性が設定されていると判定される場合（ステップＳ２１２でＮｏ、ステップＳ２１３でＹｅｓ）、プロセッサ２１０（１５１）は、当該加工面に係る加工ユニットのユニット名は、加工属性指定に基づくユニット名とする（ステップＳ２１６）。プロセッサ２１０（１５１）は、保存されている加工属性の当該加工面に対応する加工方法６１２を参照することによりユニット名生成において必要な情報を取得することができる。例えば、加工方法６１２がタップ加工である場合、プロセッサ２１０（１５１）は、ユニット名をタップユニットとする。加工方法６１２がリーマ加工である場合、プロセッサ２１０（１５１）は、ユニット名をリーマユニットとする。加工方法６１２がボーリング加工である場合、プロセッサ２１０（１５１）は、ユニット名をボーリングユニットとする。面粗さが指定されているとき、プロセッサ２１０（１５１）は、ユニット名を真円ユニットとする。真円ユニットとは、穴加工の仕上げにエンドミルで穴の表面を成形する加工を行う加工ユニットである。
【０１６３】
異なる径の２種類の円柱の組み合わせであり、加工属性が設定されていないと判定される場合（ステップＳ２１２でＹｅｓ、ステップＳ２１４でＮｏ）、プロセッサ２１０（１５１）は、当該加工面に係る加工ユニットのユニット名を座付き穴ユニットとする（ステップＳ２１７）。異なる径の２種類の円柱の組み合わせであり、加工属性が設定されていると判定される場合（ステップＳ２１２、Ｓ２１４でＹｅｓ）、プロセッサ２１０（１５１）は、当該加工面に係る加工ユニットのユニット名は、加工属性指定に基づく段付きのユニット名とする（ステップＳ２１８）。例えば、加工方法６１２がタップ加工である場合、プロセッサ２１０（１５１）は、ユニット名を座付タップユニットとする。加工方法６１２がボーリング加工である場合、プロセッサ２１０（１５１）は、ユニット名を段付きボーリングユニットとする。面粗さが指定されているとき、プロセッサ２１０（１５１）は、ユニット名を真円ユニットとする。この真円ユニットでは段付き穴が設定される。
【０１６４】
ステップＳ２１５またはステップＳ２１６が終了すると、プロセッサ２１０（１５１）は、ドリルユニットである場合、穴径、穴深さをステップＳ１０３でグルーピングされた円柱面の円柱形状から算出する。さらに、プロセッサ２１０（１５１）は、ステップＳ１０３においてグルーピングされた穴形状の開口が円錐台面から成り、その円錐台面に円柱面が接続されている場合、面取りも検出する。また、プロセッサ２１０（１５１）は、ドリルユニット及びステップＳ２１６でユニット名が設定される全てのユニットについて円柱の中心軸を求め、開口部の中心である開口中心の位置、穴の伸長方向（穴方向）を求める（ステップＳ２１９）。ステップＳ２１７またはステップＳ２１８が終了すると、プロセッサ２１０（１５１）は、ステップＳ２１９と同様に、面取り、開口中心の位置、穴方向を求め、さらに、異なる２種類の穴の穴径、穴深さをステップＳ１０３でグルーピングされた円柱面の円柱形状から算出する（ステップＳ２２０）。
【０１６５】
ステップＳ２１１において加工面が穴加工面と判定されないとき（ステップＳ２１１でＮｏ）、プロセッサ２１０（１５１）は、加工面が面加工面か否か判定する（ステップＳ２２１）。加工面が面加工面でないと判定されるとき（ステップＳ２２１でＮｏ）、加工面がモデル適用不可曲面であるので、プロセッサ２１０（１５１）は、当該加工面に係る加工ユニットのユニット名を、モデル適用不可を表すユニット名（例えば、展開不可ユニット）とする（ステップＳ２２２）。ステップＳ２１１において加工面が面加工面であると判定されるとき（ステップＳ２２１でＹｅｓ）、プロセッサ２１０（１５１）は、当該加工面と他の面との接続関係を検出する（ステップＳ２２３）。そして、プロセッサ２１０（１５１）は、当該加工面に関するユニット名を接続関係から導出される面加工のユニット名とする（ステップＳ２２４）。例えば、加工面が凹凸のない平坦な表面のとき、プロセッサ２１０（１５１）は、当該加工面に関するユニット名をフェイスミルユニットとする。加工面が他の面から凹んだ平坦な面のとき、プロセッサ２１０（１５１）は、当該加工面に関するユニット名をポケットミルユニットとする。
【０１６６】
ステップＳ２０１からステップＳ２２４の処理を全ての加工面について行うと、プロセッサ２１０（１５１）は、上記のようにユニット名を割り当てた加工ユニットについて加工プログラム１５７中の順序を決定する（ステップＳ２３０）。順序は、以下のルールに基づき、決定される。
（１）旋削加工、面加工、穴加工の順とする。
（２）旋削加工は、旋削回転軸（回転軸線Ａ３）から遠い順とする。
（３）面加工は、加工の浅さが浅い順とする。
【０１６７】
なお、上記に追加して、工程分割サブステップ４５１において定義される第１外側切削領域Ｒｅ１の加工と第１内側切削領域Ｒｉ１の加工とを連続して行えるように加工ユニットを割りあて、第２外側切削領域Ｒｅ２の加工と第２内側切削領域Ｒｉ２の加工とを連続して行えるように割り当ててもよい。
【０１６８】
ステップＳ２３０の終了後、プロセッサ２１０（１５１）は、加工ユニットのユニットデータを生成する（ステップＳ２３１）。まず、プロセッサ２１０（１５１）は、順序が決められた加工ユニットそれぞれについて、ステップＳ２０３〜Ｓ２０６、Ｓ２１５〜Ｓ２１８、Ｓ２２２、Ｓ２２４の名称及び加工部名称を定義する。そして、棒材ユニットについては、プロセッサ２１０（１５１）は、加工ユニットのユニット順に基づき、前の加工ユニットからアプローチしやすい箇所を切込開始位置とし、切込開始位置と、機械定数データ１６２として記憶されている被加工物の仕上げ代とを追加して、棒材ユニットのユニットデータを生成する。生成された棒材ユニットについて加工属性として面粗さが設定されている場合、プロセッサ２１０（１５１）は、生成された棒材ユニットのユニットデータに対応づけて面粗さを加工ユニット予備データとしてメモリ２２０（１５２）に記憶させる。生成された棒材ユニットについて加工属性として面粗さが設定されていない場合、プロセッサ２１０（１５１）は、生成された棒材ユニットのユニットデータに対応づけてデフォルト値の面粗さを加工ユニット予備データとしてメモリ２２０（１５２）に記憶させる。プロセッサ２１０（１５１）は、さらに、ステップＳ１０１にて抽出された旋削加工面の形状データを、生成された棒材ユニットのユニットデータに対応づけて加工ユニット予備データとしてメモリ２２０（１５２）に記憶させる。
【０１６９】
端面ユニットについては、プロセッサ２１０（１５１）は、機械定数データ１６２として記憶されている被加工物の仕上げ代を追加して、端面ユニットのユニットデータを生成する。生成された端面ユニットについて加工属性として面粗さが設定されている場合、プロセッサ２１０（１５１）は、生成された端面ユニットのユニットデータに対応づけて面粗さを加工ユニット予備データとしてメモリ２２０（１５２）に記憶させる。生成された端面ユニットについて加工属性として面粗さが設定されていない場合、プロセッサ２１０（１５１）は、生成された端面ユニットのユニットデータに対応づけてデフォルト値の面粗さを加工ユニット予備データとしてメモリ２２０（１５２）に記憶させる。プロセッサ２１０（１５１）は、さらに、ステップＳ１０１にて抽出された旋削加工面の形状データを、生成された端面ユニットのユニットデータに対応づけて加工ユニット予備データとしてメモリ２２０（１５２）に記憶させる。
【０１７０】
フェイスミルユニット／ポケットミルユニットについては、プロセッサ２１０（１５１）は、モデル配置ステップ４１３にて設定されたワーク座標系のＺ軸と面加工面との距離を、ワーク座標系でのワーク原点から面加工面までの距離（深さ）としてフェイスミルユニット／ポケットミルユニットのユニットデータに追加する。プロセッサ２１０（１５１）は、旋削加工プロセスによって形成される加工面または被加工物モデル６２の表面とのうちの内側に位置する面と目標物の面加工面との間の距離を、面加工面までの切削量（取り代）としてフェイスミルユニット／ポケットミルユニットのユニットデータに追加する。面加工面について加工属性として面粗さが設定されている場合、プロセッサ２１０（１５１）は、設定されている面粗さを面加工面の面粗さとしてフェイスミルユニット／ポケットミルユニットのユニットデータに追加する。面加工面について加工属性として面粗さが設定されていない場合、プロセッサ２１０（１５１）は、デフォルトの面粗さを面加工面の面粗さとしてフェイスミルユニット／ポケットミルユニットのユニットデータに追加する。プロセッサ２１０（１５１）は、機械定数データ１６２として記憶されている被加工物の仕上げ代をフェイスミルユニット／ポケットミルユニットのユニットデータに追加する。以上によって、プロセッサ２１０（１５１）は、フェイスミルユニット／ポケットミルユニットのユニットデータを生成する。さらに、プロセッサ２１０（１５１）は、ステップＳ１０４にて抽出された面加工面の形状データを、生成されたフェイスミルユニット／ポケットミルユニットのユニットデータに対応づけて加工ユニット予備データとしてメモリ２２０（１５２）に記憶させる。
【０１７１】
ドリルユニットについては、プロセッサ２１０（１５１）は、ステップＳ２１５で求めたユニット名に、ステップＳ２１９で求めた穴径、穴深さ、面取りを追加してドリルユニットのユニットデータを生成する。プロセッサ２１０（１５１）は、生成されたドリルユニットのユニットデータに対応づけてステップＳ２１９で求めた開口中心、穴方向を加工ユニット予備データとしてメモリ２２０（１５２）に記憶させる。座付き穴ユニットについては、ステップＳ２１７で求めたユニット名に、ステップＳ２２０で求めた異なる２種類の穴の穴径、穴深さ、面取りを追加して座付き穴ユニットのユニットデータを生成する。プロセッサ２１０（１５１）は、生成された座付き穴ユニットのユニットデータに対応づけてステップＳ２２０で求めた開口中心、穴方向を加工ユニット予備データとしてメモリ２２０（１５２）に記憶させる。真円ユニットについては、プロセッサ２１０（１５１）は、ステップＳ２１６で求めたユニットに、ステップＳ２１９で求めた穴径、穴深さ、面取りを追加して真円ユニットのユニットデータを生成する。そして、プロセッサ２１０（１５１）は、加工属性として設定されている面粗さを、生成された真円ユニットのユニットデータに対応づけて加工ユニット予備データとしてメモリ２２０（１５２）に記憶させる。または、プロセッサ２１０（１５１）は、ステップＳ２１８で求めたユニット名に、ステップＳ２２０で求めた異なる２種類の穴の穴径、穴深さ、面取りを追加して真円ユニットのユニットデータを生成する。そして、プロセッサ２１０（１５１）は、加工属性として設定されている面粗さを、生成された真円ユニットのユニットデータに対応づけて加工ユニット予備データとしてメモリ２２０（１５２）に記憶させる。
【０１７２】
ボーリングユニットについては、ステップＳ２１６で求めたユニット名に、加工属性として設定されている穴径、穴深さ、面取り、壁面粗さ、及び底面粗さとを追加して、ボーリングユニットのユニットデータを生成する。段付きボーリングユニットについては、ステップＳ２１８で求めたユニット名に、ステップＳ２２０で求めた大穴の穴径及び穴深さと、加工属性として設定されている穴径、穴深さ、面取り、壁面粗さ、及び底面粗さとを追加して段付きボーリングユニットのユニットデータを生成する。タップユニットについては、ステップＳ２１６で求めたユニット名に、加工属性として設定されている呼び、ネジ長、雄ネジの外径（雌ネジの谷の径）、ピッチ、及び面取りとを加えてタップユニットのユニットデータを生成する。座付きタップユニットについては、ステップＳ２１８で求めたユニット名に、ステップＳ２２０で求めた座穴の穴径及び穴深さと、加工属性として設定されている呼び、ネジ長、雄ネジの外径（雌ネジの谷の径）、ピッチ、及び面取りとを加えて座付きタップユニットのユニットデータを生成する。リーマユニットについては、ステップＳ２１６で求めたユニット名に、加工属性として設定されている穴径、穴深さ、面取り、及び、前加工の種類とを加えてリーマユニットのユニットデータを生成する。プロセッサ２１０（１５１）は、生成されたボーリングユニット、段付きボーリングユニット、タップユニット、座付きタップユニット、リーマユニットのそれぞれのユニットデータに対応づけてステップＳ２２０で求めた開口中心、穴方向と、加工属性として設定されている面粗さとを加工ユニット予備データとしてメモリ２２０（１５２）に記憶させる。
【０１７３】
ステップＳ３６において、プロセッサ２１０（１５１）は、設定ステップ（プログラム生成ステップ４１５）に対応する設定情報を設定するための設定インタフェース３００を表示する処理を実行する。ディスプレイ２４０（１５４）は、複数のステップの中から選択された設定情報を設定するべき設定ステップ（プログラム生成ステップ４１５）に対応する設定情報を設定するための設定インタフェース３００を表示する。プロセッサ２１０（１５１）は、設定ステップに関する設定情報が設定されていないとき、設定インタフェース３００を自動的に表示する処理を実行する。ディスプレイ２４０（１５４）は、設定ステップに関する設定情報が設定されていないとき、設定インタフェース３００を自動的に表示する。このため、ステップＳ３６において、加工プログラム１５７に出力される加工ユニットの内容が未だ確認されていない場合、プロセッサ２１０（１５１）は、ユニット確認・編集インタフェース５６１を自動的に表示する処理を実行する。加工プログラム１５７に出力される加工ユニットの内容が未だ確認されていない場合、ディスプレイ２４０（１５４）は、ユニット確認・編集インタフェース５６１を自動的に表示する。加工プログラム１５７に出力される加工ユニットの内容がすでに確認されている場合、ユニット確認・編集呼出インタフェース９７によってユニット確認・編集インタフェース５６１が呼び出されてもよい。
【０１７４】
図１６〜１８は、プログラム生成ステップ４１５に係る表示画面３０の表示例である。ユニット確認・編集インタフェース５６１は、ステップＳ３５にてユニットデータが生成された加工ユニットについて加工順にユニット名と加工部とを表示している。加工ユニットは、ステップＳ２３０によって上述の第１工程によって加工される加工ユニットが連続して実行された後に、上述の第２工程によって加工される加工ユニットが連続して実行される。このため、ユニット確認・編集インタフェース５６１は、第１工程の加工ユニットの集合と第２工程の加工ユニットの集合とをそれぞれ矢印ボタン６６１、６６２の操作で開閉自在としたアコーディオンメニュー（accordion menu）６６０を含む。図１６及び図１７は、アコーディオンメニュー６６０が第１工程の加工ユニットのリストと第２工程の加工ユニットのリストとをともに表示している状態を示している。この状態において、矢印ボタン６６１、６６２がタップ、マウスクリック等で操作されると、それぞれ、第１工程の加工ユニットのリストと第２工程の加工ユニットのリストが閉じられ、矢印ボタン６６１、６６２の矢印の向きが反転される。なお、第１工程の加工ユニットのリスト及び第２工程の加工ユニットのリストはアコーディオンメニューによって表示されなくてもよい。
【０１７５】
第１工程の加工ユニットのリストと第２工程の加工ユニットのリストの各行は、１つの加工ユニットに対応している。当該リストの各行には、ユニット番号６６３、ユニット名６６４、加工部６６５が表示される。編集ボタン６７０がタップ、マウスクリック等で操作されると、当該リストの各行をタップ、マウスクリック等で選択し、加工順の変更、加工形状の変更、ユニット名６６４の変更、加工部６６５の変更、加工ユニットの追加・削除・統合・分割、加工ユニットの無効化（加工プログラム１５７には無効状態の加工ユニットとして出力される）などを行うことができる。加工ユニットの編集については、詳細な説明を省略する。加工ユニットの編集終了後、ユニット再生成ボタン６７１がタップ、マウスクリック等で操作されると、編集された内容に基づいて、加工ユニットのユニットデータ、および、加工ユニット予備データが再生成される。
【０１７６】
図１６は全ての加工ユニットのユニットデータの自動生成が成功した例を示しているが、ステップＳ２２２が実行された結果、一部の加工ユニットのユニットデータの自動生成が失敗した例を図１７に示す。図１７は、ユニット番号１０の加工ユニットにおいてユニットデータの生成に失敗した例を示している。図１７を参照すると、ユニット番号１０の加工ユニットにはユニットデータの自動生成に失敗したことを示す絵記号６６６が付されており、ユニット名６６４、加工部６６５には何も記載されていない。ユーザはこのような加工ユニットに対して、編集ボタン６７０を押下してその加工ユニットの編集を行うか、加工ユニットから別のＧコードによる加工プログラムを呼びだして加工することが可能である。図１７では、さらに、ユニット番号５の加工ユニットがユーザによって無効化されている。図１７を参照すると、ユニット番号５の加工ユニットには無効化を示す絵記号６６７が付されている。無効化された加工ユニットは、加工プログラム１５７には出力されない。これによって目標物モデル６１の部分的変更を行った加工プログラム１５７を出力することが容易となる。なお、図１７における絵記号６６６、６６７は図１７に示されたものに限られない。
【０１７７】
図２０に戻り、ステップＳ３７において、プロセッサ２１０（１５１）は、ユニット確認・編集インタフェース５６１を介して上述のように、加工ユニットの確認・編集の入力を受け付ける。図１６及び図１７では詳細な図示を省略したが、加工ユニットの編集においてリストの各行が選択された際に、編集作業の支援のために、選択された行に対応する加工ユニットの切削部分が３Ｄモデル表示画面６０に表示される。したがって、プロセッサ２１０（１５１）は、設定ステップ（プログラム生成ステップ４１５）に対応する、被加工物の形状（被加工物モデル６２）と目標物の形状（目標物モデル６１）とを示すコンピュータグラフィックス画像（３Ｄモデル表示画面６０）を表示する処理を実行する。ディスプレイ２４０（１５４）は、設定ステップに対応する、被加工物の形状（被加工物モデル６２）と目標物の形状（目標物モデル６１）を示すコンピュータグラフィックス画像（３Ｄモデル表示画面６０）を表示する。
【０１７８】
ステップＳ３８において、プロセッサ２１０（１５１）は、ユニット確認・設定が完了したイベントを受け付ける。図１６及び図１７に示すように、ユニット確認・編集インタフェース５６１は、さらにＯＫボタン６７３を含む。ＯＫボタン６７３がタップ、マウスクリック等で操作されると、プロセッサ２１０（１５１）は、その操作のイベントユニットを、ユニット確認・設定が完了したイベントとして受け付ける。ＯＫボタン６７３が操作されると、ユニット確認・編集インタフェース５６１に係るウィンドウは閉じられる。ＯＫボタン６７３が操作されるまでの間（ステップＳ３８でＮｏ）、ユニット確認・編集インタフェース５６１は表示される（ステップＳ３７）。
【０１７９】
ＯＫボタン６７３が操作されると（ステップＳ３８でＹｅｓ）、ステップＳ３９において、プロセッサ２１０（１５１）は、設定ステップ（プログラム生成ステップ４１５）に対応する設定情報を設定するための設定インタフェース３００をさらに表示する処理を実行する。ディスプレイ２４０（１５４）は、複数のステップの中から選択された設定情報を設定するべき設定ステップ（プログラム生成ステップ４１５）に対応する設定情報を設定するための設定インタフェース３００をさらに表示する。具体的には、加工プログラム１５７が未生成であるときは、プロセッサ２１０（１５１）は、プログラム生成インタフェースを自動で表示する処理を実行する。加工プログラム１５７が未生成であるときは、ディスプレイ２４０（１５４）は、プログラム生成インタフェースを自動で表示する。加工プログラム１５７が既に生成済であるときは、プロセッサ２１０（１５１）は、プログラム生成呼出インタフェース９８を介してプログラム生成インタフェースを表示する処理を実行する。加工プログラム１５７が既に生成済であるときは、ディスプレイ２４０（１５４）は、プログラム生成呼出インタフェース９８を介してプログラム生成インタフェースを表示する。
【０１８０】
ステップＳ４０において、プログラム生成インタフェースを介して、生成する加工プログラム１５７を特定するための番号（ワーク番号）をユーザが選択もしくは生成することで、プログラムの出力先が指定される。プログラム生成インタフェースは、図面による説明を省略する。このようにプログラムの出力先が指定されると、ステップＳ４１において、プロセッサ２１０（１５１）は、その出力先に対して加工プログラム１５７を出力する。
【０１８１】
図２３は、ステップＳ４１に係る加工プログラム１５７を自動で生成する処理の流れを示すフローチャートである。まず、プロセッサ２１０（１５１）は、加工ユニットのユニットデータから加工ユニットのユニット名を読み込む（ステップＳ３０１）。このユニット名がモデル適用不可を表すユニット名である場合（ステップＳ３０２でＹｅｓ）、当該加工ユニットは自動生成することができないので、ステップＳ３０９に進む。このユニット名がモデル適用不可を表すユニット名でない場合（ステップＳ３０２でＮｏ）、プロセッサ２１０（１５１）は、ユニット名が穴加工を表すユニット名か否か判定する（ステップＳ３０３）。穴加工を表すユニット名は、例えば、ドリルユニット、座付き穴ユニット、真円ユニット、ボーリングユニット、段付きボーリングユニット、タップユニット、座付きタップユニット、リーマユニットである。
【０１８２】
ユニット名が穴加工を表すユニット名と判定される場合（ステップＳ３０３でＹｅｓ）、プロセッサ２１０（１５１）は、穴加工の加工ユニットのユニットデータから穴径、穴深さ、面取りのデータを読み取る（ステップＳ３０４）。加工ユニットが座付き穴ユニット、段付きボーリングユニット、座付きタップユニット、段付きの真円ユニットである場合、大径の穴、小径の穴それぞれについての穴径、穴深さのデータを読み取る。そして、プロセッサ２１０（１５１）は、ユニット名が真円ユニットか否か判定する（ステップＳ３０４Ａ）。ユニット名が真円ユニットでない場合（ステップＳ３０４ＡでＮｏ）、プロセッサ２１０（１５１）は、工具シーケンスの１番目のスポット加工プロセスを生成する（ステップＳ３０５）。その際、プロセッサ２１０（１５１）は、スポット工具に最適な呼び径を決定する。呼び径は、穴径に面取りの値を加えたものであることが好ましい。ただし、穴深さが穴径よりも短い穴である場合、穴深さ以下で且つ可能な限り大きな値を呼び径として決定する。プロセッサ２１０（１５１）は、決定した呼び径を有するスポット工具を工具情報１５８の中から選択する。加工プログラム生成プログラム２２１（１５６）は、工具情報１５８に格納されているスポット工具の材質、及び、素材情報１６１に格納されている被加工物の材質に対応づけられたスポット加工プロセスにおける切削速度、送り速度のテーブルを有している。プロセッサ２１０（１５１）は、そのテーブルを参照して、スポット加工プロセスにおいて、切削速度、送り速度を自動的に決定する。そして、プロセッサ２１０（１５１）は、選択されたスポット工具を識別する識別情報と、選択された呼び径と、決定した切削速度及び送り速度とが設定されたスポット加工プロセスを、工具シーケンスの１番目の加工プロセスとして生成する。
【０１８３】
つぎに、プロセッサ２１０（１５１）は、穴径に基づいて、工具シーケンスの２番目以降に少なくとも１つのドリル加工プロセスを追加する（ステップＳ３０６）。具体的には、プロセッサ２１０（１５１）は、穴径があらかじめ定めた３つの範囲内のどこに属するかによってドリル加工プロセスの数を１〜３のいずれにするかを自動で決定する。ドリル加工プロセスの数が決定されれば、プロセッサ２１０（１５１）は、切削量が概ね均等になるように各ドリル加工プロセスにおいてドリルの呼び径を決定する。プロセッサ２１０（１５１）は、決定された呼び径を有するドリルを工具情報１５８から選択する。また、加工プログラム生成プログラム２２１（１５６）は、工具情報１５８に格納されているドリルの材質、及び、素材情報１６１に格納されている被加工物の材質に対応づけられたドリル加工プロセスにおける切削速度、送り速度のテーブルを有している。プロセッサ２１０（１５１）は、そのテーブルを参照して、各ドリル加工プロセスにおいて、切削速度、送り速度を自動的に決定する。そして、プロセッサ２１０（１５１）は、選択されたドリルの識別情報と、決定された呼び径、切削速度、及び送り速度とを含む、少なくとも１つのドリル加工プロセスを生成し、工具シーケンスに追加する。
【０１８４】
つぎに、プロセッサ２１０（１５１）は、加工ユニットのユニットデータに基づいて、少なくとも１つのドリル加工プロセス以降に加工プロセスを追加する（ステップＳ３０７）。具体的には、穴深さが穴径よりも短い穴である場合のようにスポット工具で面取りができない場合、プロセッサ２１０（１５１）は、工具情報１５８の中から他の加工面と干渉しない面取り工具を選択する。加工プログラム生成プログラム２２１（１５６）は、工具情報１５８に格納されている面取り工具の材質、及び、素材情報１６１に格納されている被加工物の材質に対応づけられた、面取り加工プロセスにおける切削速度、送り速度のテーブルを有している。プロセッサ２１０（１５１）は、そのテーブルを参照して、面取り加工プロセスにおいて、切削速度、送り速度を自動的に決定する。プロセッサ２１０（１５１）は、選択された面取り工具の工具識別情報と、当該面取り工具の呼び径と、加工ユニットのユニットデータの面取り量に対応した切込量と、決定した切削速度及び送り速度とが設定された面取り加工プロセスを生成し、工具シーケンスに追加する。
【０１８５】
加工ユニットのユニット名が座付き穴ユニット、座付きタップユニット、段付きボーリングユニットである場合、プロセッサ２１０（１５１）は、径の異なる２つの穴のうち、径の大きな穴の径を加工するためのエンドミルを工具情報１５８の中から選択する。加工プログラム生成プログラム２２１（１５６）は、工具情報１５８に格納されているエンドミルの材質、及び、素材情報１６１に格納されている被加工物の材質に対応づけられた、エンドミル加工プロセスにおける切削速度、送り速度のテーブルを有している。プロセッサ２１０（１５１）は、そのテーブルを参照して、エンドミル加工プロセスにおいて、切削速度、送り速度を自動的に決定する。さらに、プロセッサ２１０（１５１）は、選択されたエンドミルの呼び径に応じた１回の切削当たりの切込量をあらかじめ定めた数式により算出する。プロセッサ２１０（１５１）は、選択されたエンドミルの工具識別情報と、当該エンドミルの呼び径と、算出された１回の切削あたりの切込量と、決定した切削速度及び送り速度と、加工ユニット予備データとして記憶されている面粗さとが設定されたエンドミル加工プロセスを生成し、工具シーケンスに追加する。
【０１８６】
加工ユニットのユニット名がボーリングユニット及び段付きボーリングユニットである場合、ボーリングユニットのユニットヘッダで定義されている壁面粗さに応じた数の少なくとも１つのボーリング工具を工具情報１５８の中から選択する。加工プログラム生成プログラム２２１（１５６）は、工具情報１５８に格納されているボーリング工具の材質、及び、素材情報１６１に格納されている被加工物の材質に対応づけられた、ボーリング加工プロセスにおける切削速度、送り速度のテーブルを有している。プロセッサ２１０（１５１）は、そのテーブルを参照して、少なくとも１つのボーリング工具各々のボーリング加工プロセスにおいて、切削速度、送り速度を自動的に決定する。プロセッサ２１０（１５１）は、少なくとも１つのボーリング工具の各々についてあらかじめ定められた１回の切削あたりの切込量を工具情報１５８から取得する。プロセッサ２１０（１５１）は、選択された少なくとも１本のボーリング工具の識別情報と、選択された少なくとも１本のボーリング工具の呼び径と、取得された１回の切削あたりの切込量と、決定した切削速度及び送り速度と、加工ユニット予備データとして記憶されている面粗さとが設定された少なくとも１つのボーリング加工プロセスを生成し、工具シーケンスに追加する。なお、ボーリング加工プロセスの前にエンドミル加工プロセスを追加してもよい。
【０１８７】
加工ユニットのユニット名がリーマユニットである場合、プロセッサ２１０（１５１）は、リーマユニットのユニットヘッダで定義されている前工程に合わせて、加工プロセスを追加する。前工程がドリルと指定されていた場合、プロセッサ２１０（１５１）は、上述のようにドリル加工プロセスを追加した後、穴径よりも小さい呼び径を有するリーマ工具を工具情報１５８の中から選択する。加工プログラム生成プログラム２２１（１５６）は、工具情報１５８に格納されているリーマ工具の材質、及び、素材情報１６１に格納されている被加工物の材質に対応づけられた、リーマ加工プロセスにおける切削速度、送り速度のテーブルを有している。プロセッサ２１０（１５１）は、そのテーブルを参照して、リーマ加工プロセスにおいて、切削速度、送り速度を自動的に決定する。プロセッサ２１０（１５１）は、リーマ工具についてあらかじめ定められた１回の切削あたりの切込量を工具情報１５８から取得する。プロセッサ２１０（１５１）は、選択されたリーマ工具の識別情報と、選択されたリーマ工具の呼び径と、取得された１回の切削あたりの切込量と、決定した切削速度及び送り速度と、加工ユニット予備データとして記憶されている面粗さとが設定されたリーマ加工プロセスを生成し、工具シーケンスに追加する。前工程がボーリング、エンドミルと指定されていた場合、前工程がドリルと指定されていた場合と比べて、少なくとも１つのドリル加工プロセスとリーマ加工プロセスとの間に、それぞれ、ボーリング加工プロセス、エンドミル加工プロセスを上述した方法で追加する。
【０１８８】
加工ユニットのユニット名がタップユニットである場合、タップユニットのユニットデータに定義されている雄ネジの外径（雌ネジの谷の径）、ピッチ、ネジ深さと合致するタップ工具を工具情報１５８の中から選択する。加工プログラム生成プログラム２２１（１５６）は、工具情報１５８に格納されているタップ工具の材質、及び、素材情報１６１に格納されている被加工物の材質に対応づけられた、タップ加工プロセスにおける切削速度、送り速度のテーブルを有している。プロセッサ２１０（１５１）は、そのテーブルを参照して、タップ加工プロセスにおいて、切削速度、送り速度を自動的に決定する。プロセッサ２１０（１５１）は、選択されたタップ工具の識別情報と、選択したタップ工具の呼び径と、ユニットデータに定義されているピッチ（＝１回の切削あたりの切込量）と、決定した切削速度及び送り速度と、加工ユニット予備データとして記憶されている面粗さとが設定されたタップ加工プロセスを生成し、工具シーケンスに追加する。
【０１８９】
ユニット名が真円ユニットである場合（ステップＳ３０４ＡでＹｅｓ）、プロセッサ２１０（１５１）は、工具シーケンスの１番目のエンドミル加工プロセスを生成する（ステップＳ３０５Ａ）。その際、プロセッサ２１０（１５１）は、穴径に基づいて、エンドミルに最適な呼び径を決定する。エンドミルを工具情報１５８の中から選択する。加工プログラム生成プログラム２２１（１５６）は、工具情報１５８に格納されているエンドミルの材質、及び、素材情報１６１に格納されている被加工物の材質に対応づけられた、エンドミル加工プロセスにおける切削速度、送り速度のテーブルを有している。プロセッサ２１０（１５１）は、そのテーブルを参照して、エンドミル加工プロセスにおいて、切削速度、送り速度を自動的に決定する。さらに、プロセッサ２１０（１５１）は、選択されたエンドミルの呼び径に応じた１回の切削当たりの切込量をあらかじめ定めた数式により算出する。プロセッサ２１０（１５１）は、選択されたエンドミルの工具識別情報と、当該エンドミルの呼び径と、算出された１回の切削あたりの切込量と、決定した切削速度及び送り速度と、加工ユニット予備データとして記憶されている面粗さとが設定されたエンドミル加工プロセスを生成し、工具シーケンスに追加する。
【０１９０】
つぎに、加工ユニットのユニットデータに面取りが設定されている場合、ステップＳ３０７Ａにおいて、プロセッサ２１０（１５１）は、工具情報１５８の中から他の加工面と干渉しない面取り工具を選択する。加工プログラム生成プログラム２２１（１５６）は、工具情報１５８に格納されている面取り工具の材質、及び、素材情報１６１に格納されている被加工物の材質に対応づけられた、面取り加工プロセスにおける切削速度、送り速度のテーブルを有している。プロセッサ２１０（１５１）は、そのテーブルを参照して、面取り加工プロセスにおいて、切削速度、送り速度を自動的に決定する。プロセッサ２１０（１５１）は、選択された面取り工具の工具識別情報と、当該面取り工具の呼び径と、加工ユニットのユニットデータの面取り量に対応した切込量と、決定した切削速度及び送り速度とが設定された面取り加工プロセスを生成し、工具シーケンスに追加する。
【０１９１】
ステップＳ３０７またはステップＳ３０７Ａの後、プロセッサ２１０（１５１）は、ステップＳ２１９またはステップＳ２２０にて抽出され、加工ユニット予備データとして記憶されている穴開口中心の位置、穴方向に基づいて形状シーケンスを生成する（ステップＳ３０８）。
【０１９２】
ステップＳ３０３において、ユニット名が穴加工を表すユニット名と異なると判定される場合（ステップＳ３０３でＮｏ）、図２４のステップＳ３１１において、プロセッサ２１０（１５１）は、ユニット名が旋削加工を表すユニット名か否か判定する（ステップＳ３１１）。旋削加工を表すユニット名は、例えば、棒材ユニット、端面ユニットである。ユニット名が旋削加工を表すユニット名と判定される場合（ステップＳ３１１でＹｅｓ）、プロセッサ２１０（１５１）は、ユニットデータの加工部の名称を読み込む。そして、プロセッサ２１０（１５１）は、旋削加工の加工ユニットのユニットデータからワーク座標系での切込開始位置、ワーク座標系のＸ軸方向、Ｚ軸方向の仕上げ代の大きさを読み取る（ステップＳ３１２）。
【０１９３】
つぎに、プロセッサ２１０（１５１）は、切込開始位置、加工部に応じた荒加工工具を工具情報１５８の中から選択する（ステップＳ３１３）。例えば、加工部が内径である場合、ワークＷ１（被加工物）と干渉しない、軸方向オフセット、径方向オフセット、及び刃先幅が切削開始位置の座標から求められ、求められた軸方向オフセット、径方向オフセット、及び刃先幅を有している荒加工工具が選択される。また、加工ユニットが第１工程に属する場合、割出角度が０度である荒加工工具が選択される。逆に、加工ユニットが第２工程に属する場合、割出角度が１８０度である荒加工工具が選択される。さらに、あらかじめ定められた第１主軸１２２及び第２主軸１２３の回転方向において有効な主軸回転方向と、刃の向きとが決定されるので、決定された有効な主軸回転方向の特性と刃の向きの特性とを有する荒加工工具が選択される。
【０１９４】
それから、プロセッサ２１０（１５１）は、被加工物（ワークＷ１）の素材、工具の素材、機械定数データ１６２として記憶されている機械定数パラメータから荒加工の送り速度、切削速度、切込量を求める（ステップＳ３１４）。具体的には、加工プログラム生成プログラム２２１（１５６）は、工具情報１５８に格納されている工具材質、及び、素材情報１６１に格納されている被加工物の材質に対応づけられた、荒加工における切削速度、送り速度のテーブルを有している。プロセッサ２１０（１５１）は、そのテーブルを参照して、被加工物の素材及び工具の素材から、切削速度Ｖｃ及び送り速度ｆを自動的に求めることができる。そして、切削速度Ｖｃ及び送り速度ｆ、素材情報１６１として記憶されている被加工物の比切削抵抗ｘ、機械定数データ１６２として記憶されている工作機械１００の機械効率η、機械馬力HPから荒加工時の切込量ａはａ＝(4500×η×HP)／(ｘ×ｆ×Ｖｃ)から算出することができる。ステップＳ３１４に関する処理の詳細は、本件特許出願人による特開平１−２４６０４２号公報に開示されている。
【０１９５】
ステップＳ３１４終了後、プロセッサ２１０（１５１）は、ステップＳ３１３で選択された荒加工工具の識別情報と、選択された荒加工工具の呼びと、ステップＳ３１４で求められた切削速度、送り速度、及び切込量とが設定された荒加工プロセスを、工具シーケンスの１番目の加工プロセスとして生成する（ステップＳ３１５）。つぎに、プロセッサ２１０（１５１）は、ステップＳ３１３と同様の方法で、切込開始位置、加工部に応じた仕上げ加工工具を工具情報１５８の中から選択する（ステップＳ３１６）。
【０１９６】
つぎに、プロセッサ２１０（１５１）は、加工ユニット予備データとして記憶されている面粗さを参照して、仕上げ加工の送り速度を求める（ステップＳ３１７）。加工ユニット予備データとして記憶されている面粗さ、すなわち、表面粗さ設定インタフェースで設定される１から９までの表面粗さは、実際の面粗さの大きさμ(μｍ)と対応しており、加工プログラム生成プログラム２２１（１５６）は、上記１から９までの表面粗さとμとの対応関係をテーブルに格納している。プロセッサ２１０（１５１）は、旋削加工面において表面粗さが設定されている場合、その値を参照し、実際の面粗さの大きさμを求め、設定されていない場合、デフォルト値を参照し、実際の面粗さの大きさμを求める。そして、プロセッサ２１０（１５１）は、選択された仕上げ加工工具の刃先の曲率半径Ｒを工具情報１５８から取得し、取得した曲率半径Ｒと求めた面粗さμからあらかじめ定めた数式により仕上げ加工の送り速度ｆを算出する。
【０１９７】
つぎに、プロセッサ２１０（１５１）は、求められた送り速度、被加工物の素材、工具の素材、機械定数パラメータから仕上げ加工の切削速度、切込量を求める（ステップＳ３１８）。具体的には、加工プログラム生成プログラム２２１（１５６）は、工具情報１５８に格納されている工具材質、及び、素材情報１６１に格納されている被加工物の材質、及び仕上げ加工の送り速度ｆに対応づけられた、仕上げ加工における切削速度のテーブルを有している。プロセッサ２１０（１５１）は、そのテーブルを参照して、仕上げ加工の送り速度ｆ、被加工物の素材、及び、工具の素材から、切削速度Ｖｃを自動的に求めることができる。そして、切削速度Ｖｃ、送り速度ｆ、比切削抵抗ｘ、機械効率η、機械馬力HPから荒加工時の切込量ａはａ＝(4500×η×HP)／(ｘ×ｆ×Ｖｃ)から算出することができる。ステップＳ３１８に関する処理の詳細は、本件特許出願人による特開平１−２４６０４２号公報に開示されている。
【０１９８】
ステップＳ３１８終了後、プロセッサ２１０（１５１）は、ステップＳ３１６で選択された仕上げ加工工具の識別情報と、選択された荒加工工具の呼びと、ステップＳ３１７で求められた送り速度と、ステップＳ３１８で求められた切削速度及び切込量とが設定された仕上げ加工プロセスを生成し、工具シーケンスに追加する（ステップＳ３１９）。ステップＳ３１９の後、プロセッサ２１０（１５１）は、ステップＳ１０１にて抽出され、加工ユニット予備データとして記憶されている旋削加工面を、旋削回転軸（回転軸線Ａ３）を含む断面で切断した旋削加工面の形状に基づいて形状シーケンスを生成する（ステップＳ３２０）。
【０１９９】
ステップＳ３１１において、ユニット名が旋削加工を表すユニット名と異なると判定される場合（ステップＳ３１１でＮｏ）、加工ユニットは面加工ユニットとみなされる。図２５においてプロセッサ２１０（１５１）は、面加工の加工ユニットのユニットデータからワーク座標系でのワーク原点から面加工面までの距離（深さ）、面加工面までの切削量（取り代）、仕上げ代、面加工面の面粗さを読み取る（ステップＳ３２１）。つぎに、プロセッサ２１０（１５１）は、取り代が仕上げ代より大きいか否か判定する（ステップＳ３２２）。取り代が仕上げ代以下であるとき（ステップＳ３２２でＮｏ）、ステップ３２６に進む。取り代が仕上げ代より大きいとき（ステップＳ３２２でＹｅｓ）、ステップ３２３に進む。
【０２００】
ステップＳ３２３において、プロセッサ２１０（１５１）は、加工形状に応じた荒加工工具を選択する。なお、プロセッサ２１０（１５１）は、他の加工面と干渉しない荒加工工具を選択するようにしてもよい。加工プログラム生成プログラム２２１（１５６）は、工具情報１５８に格納されている荒加工工具の材質、及び、素材情報１６１に格納されている被加工物の材質に対応づけられた荒加工プロセスにおける切削速度、送り速度のテーブルを有している。プロセッサ２１０（１５１）は、そのテーブルを参照して、荒加工プロセスにおいて、切削速度、送り速度を自動的に決定する（ステップＳ３２４）。プロセッサ２１０（１５１）は、取り代から仕上げ代を引いた値、または荒加工工具であらかじめ定められた最大切込量をもとに切込量を決定する。そして、プロセッサ２１０（１５１）は、あらかじめ定められた加工パタンから加工形状を効率的に加工できるアプローチ位置を算出し、選択された荒加工工具の識別情報と、当該荒加工工具の呼び径と、加工パタンと、アプローチ位置と、決定された切込量、切削速度及び送り速度とを含む、荒加工プロセスを生成し、工具シーケンスに追加する（ステップＳ３２５）。
【０２０１】
ステップＳ３２６において、プロセッサ２１０（１５１）は、ステップＳ３２３と同様の方法で、加工形状に応じた仕上げ加工工具を選択する。つぎに、プロセッサ２１０（１５１）は、加工ユニットのユニットデータとして記憶されている面粗さを参照して、仕上げ加工の送り速度を求める（ステップＳ３２７）。加工プログラム生成プログラム２２１（１５６）は、ユニットデータとして記憶されている面粗さ、すなわち、表面粗さ設定インタフェースで設定される１から９までの表面粗さに対応する送り係数Ｋｆをテーブルに格納している。プロセッサ２１０（１５１）は、加工ユニットのユニットデータとして記憶されている面粗さから送り係数Ｋｆを求める。仕上げ加工工具の工具径Ｄが所定の閾値よりも小さい場合、プロセッサ２１０（１５１）は、送り係数Ｋｆと工具径Ｄと仕上工具の刃数Ｚとに基づき、所定の式から径方向の仕上送り速度Ｆｆ１を算出する。仕上げ加工工具の工具径Ｄが所定の閾値以上である場合、送り係数Ｋｆと仕上工具の刃数Ｚに基づき、所定の式から径方向の仕上送り速度Ｆｆ１を算出する。軸方向の仕上送り速度Ｆｆ２は、径方向の仕上送り速度Ｆｆ１に所定の比例係数を乗ずることによって算出される。
【０２０２】
つぎに、プロセッサ２１０（１５１）は、求められた送り速度、被加工物の素材、工具の素材、機械定数パラメータから仕上げ加工の切削速度を求める（ステップＳ３２８）。具体的には、加工プログラム生成プログラム２２１（１５６）は、工具情報１５８に格納されている工具材質、及び、素材情報１６１に格納されている被加工物の材質、及び仕上げ加工の送り速度Ｆｆ１またはＦｆ２に対応づけられた、仕上げ加工における切削速度のテーブルを有している。プロセッサ２１０（１５１）は、そのテーブルを参照して、仕上げ加工の送り速度Ｆｆ１またはＦｆ２、被加工物の素材、及び、工具の素材から、切削速度Ｖｃを自動的に求めることができる。プロセッサ２１０（１５１）は、仕上げ代をもとに切込量を決定する。そして、プロセッサ２１０（１５１）は、ステップＳ３２５と同様の方法でアプローチ位置を算出し、選択された仕上げ加工工具の識別情報と、当該仕上げ加工工具の呼び径と、あらかじめ定められた加工パタンと、アプローチ位置と、決定された切込量、切削速度及び送り速度とを含む、仕上げ加工プロセスを生成し、工具シーケンスに追加する（ステップＳ３２９）。ステップＳ３２９の後、プロセッサ２１０（１５１）は、ステップＳ１０４にて抽出され、加工ユニット予備データとして記憶されている面加工面を、面加工面の法線に沿う方向から見た面加工面の形状に基づいて形状シーケンスを生成する（ステップＳ３３０）。
【０２０３】
図２３に戻り、ステップＳ３０８、ステップＳ３２０、ステップＳ３３０の終了後、もしくは、ユニット名がモデル適用不可を表すユニット名である場合（ステップＳ３０２でＹｅｓ）、プロセッサ２１０（１５１）は、全ての加工ユニットの作成を終了したか判定する（ステップＳ３０９）。全ての加工ユニットの作成が終了していないと判定される場合（ステップＳ３０９でＮｏ）、ステップＳ３０１に戻る。全ての加工ユニットの作成が終了していると判定される場合（ステップＳ３０９でＹｅｓ）、共通ユニットおよび基本座標ユニットを含む他のユニットを作成し、ステップＳ４０にて指定された出力先に加工プログラム１５７を出力する（ステップＳ３１０）。
＜工具データ画面の変形例＞
基本的な表示画面３０の説明は以上である。なお、上述する加工ユニットの名称は、一例であって、同一の加工内容を有する加工ユニットが異なる名称であってもよい。また、上述の加工プログラム生成方法は、目標形状が一般的な形状から成る場合を例示したものであって、複雑な形状に対応するにあたり、追加の形状認識、追加の加工ユニットの設定がなされてもよい。その一例として、例えば、旋削によるネジ加工（ネジ旋削加工（thread grinding））や複雑形状の端面を棒材加工によって行う方法が含まれてもよい。さらに、上述の実施形態では穴加工において面属性が設定されたときは、真円ユニットが選択される場合を説明したが、ボーリング加工、タップ加工の穴加工属性の設定がされてなく、面粗さの属性がされている場合、面粗さの属性を無視してもよい。さらに、加工プログラム生成プログラム２２１（１５６）が加工プログラム１５７生成前に終了したとき、作業中の内容を保存して終了し、再度、加工プログラム生成プログラム２２１（１５６）が起動されると、当該作業中の設定画面を再表示してもよい。また、全設定のうち、作業が終了した設定の割合を別途表示してもよい。
【０２０４】
図１９〜２５におけるフローチャートにおける各ステップの実行順序は、処理結果が変わらない範囲で変更可能である。また、図２０において、ステップＳ３３〜３４、Ｓ３６〜４０は省略されてもよい。その場合、加工設定ステップ４１４が完了された時点でその時点で設定されているデータに基づき、加工プログラム１５７は出力される。
＜実施形態の作用及び効果＞
本実施形態に係る工作機械の工具負荷表示方法、工作機械１００、加工プログラム生成プログラム２２１（１５６）は、被加工物を目標物に加工するために工作機械１００を制御するための設定情報を設定するための複数のステップ（４１１〜４１５）を表示し、複数のステップ（４１１〜４１５）のうち設定情報を設定するべき設定ステップを選択し、設定ステップに対応する設定情報を設定するための設定インタフェース３００を表示し、設定インタフェース３００を介して設定ステップに対応する設定情報が全て設定されたか否かを判定し、設定ステップに対応する設定情報が全て設定されたと判定される場合、設定ステップについて設定が完了したことを示す情報３６を表示する。このため、加工プログラムの作成のための作業の進捗をユーザに報知することができる。
【０２０５】
本願においては、「備える」およびその派生語は、構成要素の存在を説明する非制限用語であり、記載されていない他の構成要素の存在を排除しない。これは、「有する」、「含む」およびそれらの派生語にも適用される。
【０２０６】
「〜部材」、「〜部」、「〜要素」、「〜体」、および「〜構造」という文言は、単一の部分や複数の部分といった複数の意味を有し得る。
【０２０７】
「第１」や「第２」などの序数は、単に構成を識別するための用語であって、他の意味（例えば特定の順序など）は有していない。例えば、「第１要素」があるからといって「第２要素」が存在することを暗に意味するわけではなく、また「第２要素」があるからといって「第１要素」が存在することを暗に意味するわけではない。
【０２０８】
程度を表す「実質的に」、「約」、および「およそ」などの文言は、最終結果が大きく変わらないような合理的なずれ量を意味し得る。本願に記載される全ての数値は、「実質的に」、「約」、および「およそ」などの文言を含むように解釈され得る。
【０２０９】
本願において「Ａ及びＢの少なくとも一方」という文言は、Ａだけ、Ｂだけ、及びＡとＢの両方を含むように解釈されるべきである。
【０２１０】
上記の開示内容から考えて、本発明の種々の変更や修正が可能であることは明らかである。したがって、本発明の趣旨を逸脱しない範囲で、本願の具体的な開示内容とは別の方法で本発明が実施されてもよい。
【符号の説明】
【０２１１】
３６                        ：設定が完了したことを示す情報
８９                        ：ステップ移行インタフェース
９０                        ：呼出インタフェース
１００                      ：工作機械
１５１，２１０              ：プロセッサ
１５２,２２０               ：メモリ
１５４，２４０              ：ディスプレイ
１５４，２５０              ：インタフェース
１５７                      ：加工プログラム
１５６                      ：加工プログラム生成プログラム（工作機械のためのプログラム）
３００                      ：設定インタフェース
４１１                      ：第１ステップ
４１２                      ：第２ステップ
４１３                      ：第３ステップ
４１４                      ：第４ステップ
【要約】
工作機械のための入力支援方法は、被加工物を目標物に加工するために工作機械を制御するための設定情報を設定するための複数のステップを表示し、複数のステップのうち設定情報を設定するべき設定ステップを選択し、設定ステップに対応する設定情報を設定するための設定インタフェースを表示し、設定インタフェースを介して設定ステップに対応する設定情報が全て設定されたか否かを判定し、設定ステップに対応する設定情報が全て設定されたと判定される場合、設定ステップについて設定が完了したことを示す情報を表示する。【図１】
0006674076.tif 000002
【図２】
0006674076.tif 000003
【図３】
0006674076.tif 000004
【図４】
0006674076.tif 000005
【図５】
0006674076.tif 000006
【図６】
0006674076.tif 000007
【図７】
0006674076.tif 000008
【図８】
0006674076.tif 000009
【図９】
0006674076.tif 000010
【図１０】
0006674076.tif 000011
【図１１】
0006674076.tif 000012
【図１２】
0006674076.tif 000013
【図１３】
0006674076.tif 000014
【図１４】
0006674076.tif 000015
【図１５】
0006674076.tif 000016
【図１６】
0006674076.tif 000017
【図１７】
0006674076.tif 000018
【図１８】
0006674076.tif 000019
【図１９】
0006674076.tif 000020
【図２０】
0006674076.tif 000021
【図２１】
0006674076.tif 000022
【図２２】
0006674076.tif 000023
【図２３】
0006674076.tif 000024
【図２４】
0006674076.tif 000025
【図２５】
0006674076.tif 000026