(57)【要約】  ３次元形状に関する情報を算出する情報処理装置において、３次元形状の表示に用いる３次元形状の製図データを入力する３次元形状入力部１１と、３次元形状入力部に入力された製図データの３次元形状を表示する表示部１６と、外部入力される指示に基づいて表示部が表示している３次元形状の形状要素を３次元形状の算出に用いるデータに設定するとともに、製図データ内に明示されていない３次元形状に関する形状の値を、設定した形状要素を用いて形状値情報として算出し、算出結果を表示部に表示させる形状値情報算出部１３と、を備える。
2009008072.tif 000002
【特許請求の範囲】
【請求項１】
３次元形状に関する情報を算出する情報処理装置において、
３次元形状の表示に用いる３次元形状の製図データを入力する３次元形状入力部と、
前記３次元形状入力部に入力された製図データの３次元形状を表示する表示部と、
外部入力される指示に基づいて前記表示部が表示している３次元形状の形状要素を３次元形状の算出に用いるデータに設定するとともに、前記製図データ内に明示されていない前記３次元形状に関する形状の値を、設定した形状要素を用いて形状値情報として算出し、算出結果を前記表示部に表示させる形状値情報算出部と、
を備えることを特徴とする情報処理装置。
【請求項２】
外部入力される指示に基づいて前記表示部が表示している３次元形状に前記形状値情報の基準となる座標系を設定する座標系設定部をさらに備え、
前記形状値情報算出部は、前記座標系設定部が設定した座標系の３次元形状に対して前記形状値情報を算出することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記形状値情報算出部が算出した形状値情報を、前記製図データに対応するＮＣプログラムに反映させるＮＣプログラム反映部をさらに備え、
前記表示部は、前記ＮＣプログラム反映部が前記形状値情報を反映させたＮＣプログラムを表示することを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記表示部は、前記形状値情報を、前記ＮＣプログラムに応じたプログラム方式で表示することを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記表示部は、前記製図データの３次元形状と前記形状値情報とをリンクさせて表示することを特徴とする請求項１〜４のいずれか１つに記載の情報処理装置。
【請求項６】
３次元形状に関する情報の算出を行なう情報処理方法において、
３次元形状の表示に用いる３次元形状の製図データを入力する３次元形状入力ステップと、
入力された製図データの３次元形状を表示する３次元形状表示ステップと、
外部入力される指示に基づいて、表示している３次元形状の形状要素を算出に用いるデータに設定するとともに前記製図データ内に明示されていない前記３次元形状に関する形状の値を設定した形状要素を用いて形状値情報として算出する算出ステップと、
算出結果を表示する算出結果表示ステップと、
を含むことを特徴とする情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、３次元形状に関する情報を算出する情報処理装置および情報処理方法に関するものである。
【背景技術】
【０００２】
被加工物を種々の形状に加工する工作機械やロボットは、数値制御装置（以下、ＮＣ（Numerical  Control）装置という）によって制御されながら、被加工物の３次元加工を行なっている。【０００３】
特許文献１に記載の型加工支援装置は、金型を３次元モデルとして設計したときに、この仮想空間内に存在する所望部分の寸法を表す数値を、３次元モデルと共に表示させる機能（寸法表示機能）を具備している。そして、寸法表示機能が、ＣＡＤなどで作成した仮想モデルを３次元的に表示させる場合に、その後の作業で特に注目して欲しい部分などの寸法を表示させている。例えば、寸法表示機能は、ダイアログボックスを表示し、３次元モデルの表示時画面上でマウスによって指定された距離や角度などを数字で表示している。【０００４】
また、特許文献２に記載の寸法表示システムは、ＣＡＤ／ＣＡＭシステムの画面に、正面図、平面図、側面図からなる製品の２次元図面を表示するとともに、画面上に三次元用のウインドウを開いて製品の三次元像を表示している。そして、三次元像に、２点間の寸法、交差する線や面の角度、寸法、円の径寸法を表示している。【０００５】
【特許文献１】特開２００３−４４５４４号公報（第５頁、図４）
【特許文献２】特開平５−１３４７２９号公報（第１頁）
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記前者の従来技術では、コンピュータ内でディジタル的に作成された型についての仮想モデルの部位に関する情報を予め格納しておく必要がある。このため、操作者が格納された情報以外の部位を選択した場合には、選択された情報を表示できないといった問題があった。【０００７】
また、上記後者の従来技術では、寸法情報を２次元図面から取得して表示するので、表示できる寸法情報は２次元図面から解析できうる情報に限られてしまうといった問題があった。【０００８】
本発明は、上記に鑑みてなされたものであって、３次元形状の製図データから所望の３次元形状に関する情報を容易に算出することができる情報処理装置および情報処理方法を得ることを目的とする。
【課題を解決するための手段】
【０００９】
上述した課題を解決し、目的を達成するために、本発明は、３次元形状に関する情報を算出する情報処理装置において、３次元形状の表示に用いる３次元形状の製図データを入力する３次元形状入力部と、前記３次元形状入力部に入力された製図データの３次元形状を表示する表示部と、外部入力される指示に基づいて前記表示部が表示している３次元形状の形状要素を３次元形状の算出に用いるデータに設定するとともに、前記製図データ内に明示されていない前記３次元形状に関する形状の値を、設定した形状要素を用いて形状値情報として算出し、算出結果を前記表示部に表示させる形状値情報算出部と、を備えることを特徴とする。
【発明の効果】
【００１０】
本発明に係る情報処理装置は、３次元形状の形状要素を３次元形状の算出に用いるデータに設定するとともに、製図データ内に明示されていない３次元形状に関する形状の値を、設定した形状要素を用いて算出するので、製図データから所望の３次元形状に関する情報を容易に算出することが可能になるという効果を奏する。
【図面の簡単な説明】
【００１１】
【図１】図１は、本発明の実施の形態に係る情報処理装置の構成を示すブロック図である。
【図２】図２は、情報処理装置の動作手順を示すフローチャートである。
【図３】図３は、座標系の設定処理手順を示すフローチャートである。
【図４】図４は、座標系を設定する際に表示させる設定ダイアログを説明するための図である。
【図５】図５は、形状値情報の算出処理手順を示すフローチャートである。
【図６】図６は、長さ寸法の算出処理を説明するための図である。
【図７】図７は、座標値の算出処理を説明するための図である。
【図８】図８は、角度寸法の算出処理を説明するための図である。
【図９】図９は、長さ寸法の値の表示例を示す図である。
【図１０】図１０は、点の座標値の表示例を示す図である。
【図１１】図１１は、角度寸法の値の表示例を示す図である。
【図１２】図１２は、形状値情報の表示処理手順を示すフローチャートである。
【図１３】図１３は、３次元表示画面と形状値情報ダイアログの表示例を示す図（１）である。
【図１４】図１４は、３次元表示画面と形状値情報ダイアログの表示例を示す図（２）である。
【図１５】図１５は、３次元表示画面と形状値情報ダイアログの表示例を示す図（３）である。
【図１６】図１６は、形状値情報のＮＣプログラムへの反映処理手順を示すフローチャートである。
【図１７】図１７は、形状値情報のＮＣプログラムへの反映処理を説明するための図である。
【図１８】図１８は、座標値に関する形状値情報の算出処理手順を示すフローチャートである。
【図１９】図１９は、長さ寸法に関する形状値情報の算出処理手順を示すフローチャートである。
【図２０】図２０は、点とエッジとの間の最短距離を説明するための図（１）である。
【図２１】図２１は、点とエッジとの間の最短距離を説明するための図（２）である。
【図２２】図２２は、点と面との間の最短距離を説明するための図（１）である。
【図２３】図２３は、点と面との間の最短距離を説明するための図（２）である。
【図２４】図２４は、エッジとエッジとの間の最短距離を説明するための図（１）である。
【図２５】図２５は、エッジとエッジとの間の最短距離を説明するための図（２）である。
【図２６】図２６は、面と面との間の最短距離を説明するための図（１）である。
【図２７】図２７は、面と面との間の最短距離を説明するための図（２）である。
【図２８】図２８は、エッジと面との間の最短距離を説明するための図である。
【図２９】図２９は、角度寸法に関する形状値情報の算出処理手順を示すフローチャートである。
【図３０】図３０は、直線エッジの方向ベクトルと直線エッジの方向ベクトルとがなす角度を示す図である。
【図３１】図３１は、平面の法線ベクトルと平面の法線ベクトルとがなす角度を示す図である。
【図３２】図３２は、直線エッジの方向ベクトルと平面の法線ベクトルとがなす角度を示す図である。
【図３３】図３３は、直線エッジの方向ベクトルと平面の法線ベクトルとがなす角度を示す図である。
【符号の説明】
【００１２】
１  情報処理装置
２  プログラム作成部
１１  次元形状入力部
１２  座標系設定部
１３  形状値情報算出部
１４  出力部
１５  指示入力部
１６  表示部
１９  制御部
２１  ＮＣプログラム記憶部
２２  ＮＣプログラム反映部
１１２Ｅ，１２２Ｅ，１２３Ｅ，１３２Ｅ，１７３  エッジ
１１３Ｐ，１１４Ｐ，１４３，１４４  端点
１１５，１２４，１２５，１７１，１７４，１７６，１７７  点
１２６  線
１３３Ｆ，１７５  面
１３４  角
１４０，１５０，１６０  ３次元表示画面
１４２  ３次元形状
１４５  中心点
２０１，２０３，２０４  設定ダイアログ
２１１ａ〜２１１ｃ，２１１ａ〜２２１ｃ，２３０  形状値情報ダイアログ
２２２〜２２６，２３１，３０４  形状値情報
３０１，３０２  プログラムエディタ画面
３０２  カーソル
ａ１〜ａ３  方向ベクトル
ｂ１〜ｂ３  法線ベクトル
Ｘ，Ｙ，Ｚ１，Ｚ２  角度
【発明を実施するための最良の形態】
【００１３】
以下に、本発明に係る情報処理装置および情報処理方法の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。【００１４】
実施の形態
図１は、本発明の実施の形態に係る情報処理装置の構成を示すブロック図である。情報処理装置１は、３次元形状に関する情報に基づいて所望の形状要素に対する形状の情報（形状に含まれる部位の長さ寸法や角度寸法など）を算出し、算出結果を表示するコンピュータなどの装置である。【００１５】
情報処理装置１は、例えばＣＡＤ（Computer  Aided  Design）装置で作成された３次元形状に関する情報（ＣＡＤデータなどの所定の寸法を含んだ製図データ）に基づいて形状（部位）の寸法などの情報（後述の形状値情報）を算出するとともに、算出した形状値情報（ＣＡＤデータ内に明示されていない形状の値）を必要に応じてＮＣプログラムなどに反映させる。情報処理装置１には、ＮＣプログラムなどを用いて工作機械やロボットなどを制御させてもよい。この場合、情報処理装置１はＮＣ装置として動作する。【００１６】
情報処理装置１は、３次元形状入力部１１、座標系設定部１２、形状値情報算出部１３、出力部１４、指示入力部１５、表示部１６、ＮＣプログラム作成部２、制御部１９を備えている。【００１７】
３次元形状入力部１１は、外部装置などから送られてくる３次元形状に関する情報（辺や面を表示するための情報）（以下、３次元形状情報という）を入力し、座標系設定部１２、形状値情報算出部１３、表示部１６などに送る。【００１８】
指示入力部１５は、マウスやキーボードを備えて構成され、情報処理装置１の使用者（加工オペレータなどの操作者）から入力される指示などを入力する。指示入力部１５には、３次元形状情報に含まれる形状に対して設定される座標系の情報（座標系を指定する情報）や、表示部１６によって表示される３次元形状内の形状要素（点、線、面など）を指定する情報などが入力される。指示入力部１５は、入力した座標系の情報を座標系設定部１２に入力し、入力した形状要素の情報を形状値情報算出部１３に入力する。【００１９】
座標系設定部１２は、ＣＡＤ座標系で作成されたＣＡＤデータ（３次元形状データ）に対して、形状値情報を算出や表示する際に用いる新たな座標系を設定し、ＣＡＤデータを新たな座標系に応じた３次元形状の情報に変換する。座標系設定部１２は、表示部１６によって表示される３次元形状のＣＡＤデータに対し、指示入力部１５から入力される指示情報（座標系を指定する情報）に基づいた新たな座標系を設定する。座標系設定部１２は、設定した新たな座標系と、座標系を変換した３次元形状の情報と、を形状値情報算出部１３、表示部１６、ＮＣプログラム作成部２、出力部１４などに送る。なお、座標系設定部１２は、ＣＡＤ座標系が、形状値情報を算出や表示する際に用いる新たな座標系と同じである場合、ＣＡＤデータに対する座標系の変換処理を行う必要はない。【００２０】
形状値情報算出部１３は、表示部１６によって表示される３次元形状の中で使用者によって指定された任意の形状の情報（形状要素を用いた情報）（例えば、部位の長さ寸法や角度寸法などの値）を形状値情報として算出する。形状値情報算出部１３は、指示入力部１５から入力される指示情報（形状要素を指定する情報）に基づいて、形状値情報を算出する。形状値情報算出部１３は、算出した結果（形状値情報）を、表示部１６、ＮＣプログラム作成部２、出力部１４などに送る。【００２１】
ＮＣプログラム作成部２は、ＮＣプログラムの作成や修正を行なう。ＮＣプログラム作成部２は、ＮＣプログラム記憶部２１とＮＣプログラム反映部２２を備えている。ＮＣプログラム記憶部２１は、工作機械などを制御する際に用いるＮＣプログラムを記憶するメモリなどの記憶手段である。ＮＣプログラム反映部２２は、形状値情報をＮＣプログラム記憶部２１内のＮＣプログラムに反映させ、反映後の新たなＮＣプログラムをＮＣプログラム記憶部２１に記憶させる。【００２２】
表示部１６は、液晶ディスプレイなどの表示手段を備えて構成されている。表示部は、３次元形状情報に応じた３次元形状、座標系設定部１２で設定された座標系、この座標系での３次元形状、使用者によって指定された部位（被加工物の形状要素）、算出対象となる形状（線、角などの部位）、算出対象となる形状を使用者に設定させるための設定ダイアログ、形状値情報、反映後の新たなＮＣプログラムなどを表示する。【００２３】
出力部１４は、表示部１６が表示する種々の情報を外部装置へ出力する。出力部１４は、例えば座標系設定部１２で設定された座標系での３次元形状、使用者によって指定された部位、形状値情報、反映後の新たなＮＣプログラムなどを外部装置に出力する。制御部１９は、３次元形状入力部１１、座標系設定部１２、形状値情報算出部１３、出力部１４、指示入力部１５、表示部１６、ＮＣプログラム作成部２を制御する。【００２４】
つぎに、情報処理装置１の動作手順について説明する。図２は、情報処理装置の動作手順を示すフローチャートである。３次元形状入力部１１は、外部装置などから送られてくる３次元形状情報（幾何情報）を入力し（ステップＳＴ１０）、表示部１６と座標系設定部１２に送る。表示部１６は、３次元形状入力部１１からの３次元形状情報に応じた３次元形状を表示する（ステップＳＴ２０）。【００２５】
座標系設定部１２は、指示入力部１５から入力される使用者からの指示情報（座標系を指定する情報）に基づいて、ＣＡＤ座標系で作成されたＣＡＤデータ（３次元形状データ）に新たな座標系（座標軸と原点）を設定（座標系の変換処理）するとともに、入力された３次元形状の情報を座標系に応じた３次元形状の情報に変換する（ステップＳＴ３０）。座標系設定部１２は、設定した座標系と、この座標系に応じて変換した３次元形状の情報と、を表示部１６に表示させるとともに形状値情報算出部１３に送る。【００２６】
形状値情報算出部１３は、指示入力部１５から入力される使用者からの指示情報（形状要素を指定する情報）に基づいて、形状値情報の算出処理を行なう（ステップＳＴ４０）。形状値情報算出部１３は、形状値情報を、表示部１６、ＮＣプログラム作成部２に送る。【００２７】
表示部１６は、形状値情報算出部１３からの形状値情報を、ＮＣプログラムで指定された座標系で表示する（ステップＳＴ５０）。機械加工などでは、加工方法によってプログラムに設定する加工位置の表示形式が異なる。例えば、直交座標系の座標値を用いて加工位置を表す方法、極座標系の座標値を用いて加工位置を表す方法、などがある。さらに、表示部１６は、表形式等で表示されている形状値情報に関連する３次元形状上の部位（算出対象となった部位）を新たに設定した座標系で表示する（ステップＳＴ６０）。【００２８】
ＮＣプログラム作成部２は、形状値情報算出部１３からの形状値情報をＮＣプログラム記憶部２１内のＮＣプログラムに反映させることによってＮＣプログラムの編集を行なう（ステップＳＴ７０）。このとき、表示部１６は、座標系を指定する指示情報が使用者から入力されると、指定された座標系に応じた値に形状値情報を変換し、変換した形状値情報を表示する。表示部１６は、ＮＣプログラム作成部２で作成されたＮＣプログラム（編集結果）を表示する（ステップＳＴ８０）。【００２９】
なお、図２では、ステップＳ３０の処理（新たな座標系の設定処理）の後にステップＳ４０の処理（形状値情報の算出処理）を行う場合について説明したが、座標系設定部１２は、形状値情報算出部１３によるステップＳ４０の処理の後にステップＳ３０の処理を行ってもよい。その場合、座標系設定部１２は、ステップＳＴ４０の処理で得た形状値情報を、ステップＳＴ３０の処理で設定した座標系に応じた値に変換する。【００３０】
つぎに、図２に示した各処理（ステップＳＴ３０〜ＳＴ７０）を詳細に説明する。以下、ステップＳＴ３０の処理（座標系の設定処理）、ステップＳＴ４０の処理（形状値情報の算出処理）、ステップＳＴ６０の処理（形状値情報の表示処理）、ステップＳＴ７０の処理（ＮＣプログラムへの反映処理）の順番で説明し、最後に形状値情報の算出処理を詳細に説明する。【００３１】
図３は、座標系の設定処理手順を示すフローチャートである。座標系設定部１２は、指示入力部１５から入力される指示情報に基づいて、座標系のうちの何れの種類のデータを設定するかを判別する（ステップＳＴ１１０）。座標系（ＣＡＤ座標系で作成されたＣＡＤデータに対して新たに設定する座標系）として設定されるデータとしては、座標軸の傾斜、座標原点、座標原点の移動などがある。本実施の形態では、この座標系設定部１２で設定する新たな座標系が、形状値情報を算出や表示する際に用いる座標系となる。【００３２】
指示入力部１５から座標軸の傾斜角度を指定する指示情報が入力されると（ステップＳＴ１１０、座標軸の傾斜）、座標系設定部１２は座標系に関するデータの内容が、座標軸の傾斜である場合と判断する。そして、座標系設定部１２は、指示入力部１５からの指示情報に基づいて、指定された傾斜角度だけ３次元形状データの座標軸を回転移動（傾斜）させ（ステップＳＴ１２０，ＳＴ１３０）、現状の座標系に対する３次元形状データの変換を行う。【００３３】
指示入力部１５から座標原点を指定する指示情報が入力されると（ステップＳＴ１１０、座標原点）、座標系設定部１２は座標系に関するデータの内容が、座標原点の設定（新たな座標原点の指定）であると判断する。そして、座標系設定部１２は、指示入力部１５からの指示情報に基づいて、指定された座標原点へ座標軸を平行移動させ（ステップＳＴ１４０，ＳＴ１５０）、現状の座標系に対する３次元形状データの変換を行う。【００３４】
指示入力部１５から座標原点の移動量を指定する指示情報が入力されると（ステップＳＴ１１０、座標原点移動）、座標系設定部１２は座標系に関するデータの内容が、座標原点の移動（移動量の指定）であると判断する。そして、座標系設定部１２は、指示入力部１５からの指示情報に基づいて、指定された座標原点へ座標軸を平行移動させ（ステップＳＴ１６０，ＳＴ１７０）、現状の座標系に対する３次元形状データの変換を行う。【００３５】
座標系設定部１２は、現状の座標軸に対する３次元形状データの変換を行うと、座標系として他に設定するデータがあるか否かを判断する（ステップＳＴ１８０）。座標系として他に設定するデータがある場合（ステップＳＴ１８０、Ｙｅｓ）、ステップＳＴ１１０〜ＳＴ１７０の処理を繰り返す。すなわち、座標系設定部１２は、指示入力部１５から入力される指示情報に基づいて、座標系のうちの何れのデータを設定するかを判別し、この判別結果に応じた座標系の設定を行なう。【００３６】
座標系として他に設定するデータがない場合（ステップＳＴ１８０、Ｎｏ）、座標系設定部１２は、変換した座標系での３次元形状データや座標軸を表示部１６に表示させる（ステップＳＴ１９０）。さらに、座標系設定部１２は、変換した座標軸を新しい現状の座標軸に更新する（ステップＳＴ２００）。【００３７】
なお、本実施の形態では、座標系として設定するデータとして３種類のデータがある場合を一例として説明したが、座標系として設定するデータは座標系に関するデータであれば何れのデータでもよい。また、座標系設定部１２は、座標系として設定するデータを１つずつ設定してもよいし、複数同時に設定してもよい。また、複数回に渡って座標系を設定する場合には、座標系を設定する都度、変換した座標系での３次元形状データや座標軸を表示部１６に表示させてもよい。【００３８】
図４は、座標系を設定する際に表示させる設定ダイアログを説明するための図である。図４では、点の座標測定（座標値）を行うための設定ダイアログ２０１と、点の座標測定を行なう際に用いる座標系（測定座標系）を設定するための設定ダイアログ２０３，２０４と、を示している。【００３９】
設定ダイアログ２０１には、点を測定する際の座標系を入力する欄（テキストボックス）、算出対象となる点の種類（後述の特徴点）を入力する欄、加工ユニットデータ（３次元形状データ）が保持する座標系の情報を参照するためのボタンなどが設けられている。【００４０】
点を測定する際の座標系は、座標軸の傾きや座標原点などによって設定される。設定ダイアログ２０３は、座標軸の傾きを設定するダイアログであり、図４では、工具の進行方向から座標軸の傾きを設定する場合の設定ダイアログを一例として示している。【００４１】
設定ダイアログ２０４は、座標原点を設定するダイアログであり、図４では、座標値を入力する場合の設定ダイアログを一例として示している。設定ダイアログ２０３で設定された座標軸の傾きや、設定ダイアログ２０４で設定された座標原点は、設定ダイアログ２０１の座標系を入力する欄に反映される。【００４２】
つぎに、ステップＳＴ４０の処理（形状値情報の算出処理）について説明する。図５は、形状値情報の算出処理手順を示すフローチャートである。形状値情報算出部１３は、指示入力部１５から入力される指示情報に基づいて、算出対象となる形状（部位）の種類（以下、算出対象種別という）を判別する（ステップＳＴ２１０）。算出対象種別としては、長さ寸法（距離）、座標値、角度寸法などがある。長さ寸法には、例えば半径寸法、直径寸法、円弧寸法、形状要素間寸法などが含まれている。【００４３】
（算出対象種別が長さ寸法の場合）
基準となる形状要素（１）を１つ指定し、順次この形状要素（１）と各形状要素（２）の間の距離を算出（測定）する場合の例について説明する。形状値情報算出部１３が判別した算出対象種別が、長さ寸法である場合（ステップＳＴ２１０、長さ寸法）、使用者の所望の形状要素（寸法を測定したい部位の形状要素）として、３次元形状の表示画面上で１つめの形状要素（１）と２つめの形状要素（２）が使用者に指定される。この１つめの形状要素（１）と２つめの形状要素（２）は、指示入力部１５（マウスなど）から使用者によって指定される。１つめの形状要素（１）が長さ寸法を算出する際に基準となる形状要素である。【００４４】
１つめの形状要素（１）は、指示入力部１５から形状値情報算出部１３へ送られる。形状値情報算出部１３は、指定された形状要素（１）を、３次元形状の表示画面上に設定する（ステップＳＴ２２０）。具体的には、形状値情報算出部１３は、表示部１６が表示している３次元形状の中から、指定された形状要素（１）に対応するデータを抽出しておく。形状値情報算出部１３は、表示部１６が表示している３次元形状の中から、指定された形状要素（１）の箇所を表示部１６にハイライト表示させる（ステップＳＴ２３０）。【００４５】
また、２つめの形状要素（２）は、指示入力部１５から形状値情報算出部１３へ送られる。形状値情報算出部１３は、指定された形状要素（２）を、３次元形状の表示画面上に設定する（ステップＳＴ２４０）。具体的には、形状値情報算出部１３は、表示部１６が表示している３次元形状の中から、指定された形状要素（２）に対応するデータを抽出しておく。形状値情報算出部１３は、表示部１６が表示している３次元形状の中から、指定された形状要素（２）の箇所を表示部１６にハイライト表示させる（ステップＳＴ２５０）。【００４６】
形状値情報算出部１３は、形状要素（１）と形状要素（２）との間の長さ寸法に関する形状値情報を内部演算によって算出する（ステップＳＴ２６０）。形状値情報算出部１３は、形状値情報として、例えば測定対象となる点同士（点間）の座標成分の差分値や、同一平面内または空間に位置する点間の距離などを算出する。形状値情報算出部１３は、算出した形状値情報を、ダイアログ（形状値情報ダイアログ）として表示部１６に表示させる（ステップＳＴ２７０）。【００４７】
この後、情報処理装置１に長さ寸法の算出処理を続行させる場合には、使用者によって指示入力部１５から長さ寸法の算出処理を続行させることを示す指示情報が入力される。この指示情報は、指示入力部１５から形状値情報算出部１３に送られる。【００４８】
形状値情報算出部１３は、指示入力部１５からの指示情報に基づいて、長さ寸法の算出処理を続行するか否かを判断する（ステップＳＴ２８０）。形状値情報算出部１３は、長さ寸法の算出処理を続行すると判断した場合（ステップＳＴ２８０、Ｙｅｓ）、長さ寸法を算出する際に基準となっていない方の形状要素（２）のハイライト表示を表示部１６にキャンセルさせる（ステップＳＴ２８５）。【００４９】
そして、形状値情報算出部１３は、ステップＳＴ２４０〜ＳＴ２８５の処理を行なう。長さ寸法の算出処理を続行する場合、使用者によって指示入力部１５から新たな形状要素（２）が入力される。この新たな形状要素（２）は、指示入力部１５から形状値情報算出部１３に送られる。【００５０】
形状値情報算出部１３は、新たに指定された形状要素（２）を、３次元形状の表示画面上に設定し、指定された新たな形状要素（２）の箇所を表示部１６にハイライト表示させる（ステップＳＴ２４０，ＳＴ２５０）。【００５１】
そして、形状値情報算出部１３は、形状要素（１）と形状要素（２）との間の長さ寸法に関する形状値情報を内部演算によって算出し、算出した形状値情報を、形状値情報ダイアログとして表示部１６に表示させる（ステップＳＴ２６０，ＳＴ２７０）。【００５２】
長さ寸法の算出処理を続行させないことを示す指示情報（算出終了の指示）が、使用者によって指示入力部１５に入力されるまで、形状値情報算出部１３はステップＳＴ２４０〜ＳＴ２８５の処理を繰り返す。算出終了の指示が、使用者によって指示入力部１５に入力されると（ステップＳＴ２８０、Ｎｏ）、情報処理装置１は長さ寸法の算出処理を終了する。【００５３】
（算出対象種別が座標値の場合）
形状値情報算出部１３が判別した算出対象種別が、座標値である場合（ステップＳＴ２１０、座標値）、寸法を測定したい部位の種類として、座標値を求める点の種類（例えば、端点、中間点、中心点など）が使用者に指定される。また、寸法を測定したい部位の形状要素（位置）が３次元形状の表示画面上で使用者に指定される。【００５４】
使用者に指定されて算出対象となる点の種類と形状要素は、使用者によって指示入力部１５（マウスなど）から指定され、指示入力部１５から形状値情報算出部１３へ送られる。形状値情報算出部１３は、指定された点の種類を記憶（設定）する（ステップＳＴ２９０）。また、形状値情報算出部１３は、指定された形状要素を３次元形状の表示画面上に設定する（ステップＳＴ３００）。具体的には、形状値情報算出部１３は、表示部１６が表示している３次元形状の中から、指定された形状要素に対応するデータを抽出しておく。【００５５】
形状値情報算出部１３は、表示部１６が表示している３次元形状の中から、指定された形状要素の箇所を表示部１６にハイライト表示させる（ステップＳＴ３１０）。形状値情報算出部１３は、指定された形状要素に関連する形状値情報であって、指定された種類の点の形状値情報（点の座標値）を内部演算により算出する（ステップＳＴ３２０）。【００５６】
形状値情報算出部１３は、算出した点の座標値（形状値情報）に対応する位置（点）を、表示部１６に３次元形状の表示画面上でハイライト表示させる（ステップＳＴ３３０）。形状値情報算出部１３は、算出した点をハイライト表示させると、形状要素のハイライト表示を表示部１６にキャンセルさせる（ステップＳＴ３４０）。そして、形状値情報算出部１３は、算出した形状値情報を、ダイアログ（形状値情報ダイアログ）として表示部１６に表示させる（ステップＳＴ３５０）【００５７】
この後、情報処理装置１に座標値の算出処理を続行させる場合には、使用者によって指示入力部１５から座標値の算出処理を続行させることを示す指示情報が入力される。この指示情報は、指示入力部１５から形状値情報算出部１３に送られる。【００５８】
形状値情報算出部１３は、指示入力部１５からの指示情報に基づいて、座標値の算出処理を続行するか否かを判断する（ステップＳＴ３６０）。形状値情報算出部１３は、座標値の算出処理を続行すると判断した場合（ステップＳＴ３６０、Ｙｅｓ）、ステップＳＴ２９０〜ＳＴ３６０の処理を行なう。座標値の算出処理を続行する場合、使用者によって指示入力部１５から新たな点の種類と新たな形状要素が入力される。この新たな点の種類と形状要素は、指示入力部１５から形状値情報算出部１３に送られる。【００５９】
形状値情報算出部１３は、指定された点の種類を記憶するとともに、指定された形状要素を３次元形状の表示画面上に設定する（ステップＳＴ２９０，ＳＴ３００）。そして、形状値情報算出部１３は、指定された形状要素の箇所を表示部１６にハイライト表示させる（ステップＳＴ３１０）。【００６０】
形状値情報算出部１３は、指定された形状要素に関連する形状値情報であって、指定された種類の点の形状値情報を算出する（ステップＳＴ３２０）。形状値情報算出部１３は、算出した点の座標値に対応する点を、表示部１６に３次元形状の表示画面上でハイライト表示させるとともに、表示部１６に形状要素のハイライト表示をキャンセルさせる（ステップＳＴ３３０，ＳＴ３４０）。そして、形状値情報算出部１３は、算出した形状値情報を、ダイアログとして表示部１６に表示させる（ステップＳＴ３５０）。【００６１】
座標値の算出処理を続行させないことを示す指示情報（算出終了の指示）が、使用者によって指示入力部１５に入力されるまで、形状値情報算出部１３はステップＳＴ２９０〜ＳＴ３６０の処理を繰り返す。算出終了の指示が、使用者によって指示入力部１５に入力されると（ステップＳＴ３６０、Ｎｏ）、情報処理装置１は座標値の算出処理を終了する。【００６２】
なお、図５では、算出対象となる点の種類を設定した後、算出対象となる形状要素の設定とハイライト表示を行なったが、算出対象となる形状要素の設定とハイライト表示を行なった後に算出対象となる点の種類を設定してもよい。換言すると、算出対象となる点の種類の設定は、形状値情報を算出する前に設定しておけばよい。【００６３】
（算出対象種別が角度寸法の場合）
基準となる形状要素（３）を１つ指定し、順次この形状要素（３）と各形状要素（３）の間でなす角度を算出（測定）する場合の例について説明する。形状値情報算出部１３が判別した算出対象種別が、角度寸法である場合（ステップＳＴ２１０、角度寸法）、使用者の所望の形状要素として、３次元形状の表示画面上で１つめの形状要素（３）と２つめの形状要素（４）が使用者に指定される。この１つめの形状要素（３）と２つめの形状要素（４）は、指示入力部１５（マウスなど）から使用者によって指定される。１つめの形状要素（３）が角度寸法を算出する際に基準となる形状要素である。【００６４】
１つめの形状要素（３）は、指示入力部１５から形状値情報算出部１３へ送られる。形状値情報算出部１３は、指定された形状要素（３）を、３次元形状の表示画面上に設定する（ステップＳＴ３７０）。具体的には、形状値情報算出部１３は、表示部１６が表示している３次元形状の中から、指定された形状要素（３）に対応するデータを抽出しておく。形状値情報算出部１３は、表示部１６が表示している３次元形状の中から、指定された形状要素（３）の箇所を表示部１６にハイライト表示させる（ステップＳＴ３８０）。【００６５】
また、２つめの形状要素（４）は、指示入力部１５から形状値情報算出部１３へ送られる。形状値情報算出部１３は、指定された形状要素（４）を、３次元形状の表示画面上に設定する（ステップＳＴ３９０）。具体的には、形状値情報算出部１３は、表示部１６が表示している３次元形状の中から、指定された形状要素（４）に対応するデータを抽出しておく。形状値情報算出部１３は、表示部１６が表示している３次元形状の中から、指定された形状要素（４）の箇所を表示部１６にハイライト表示させる（ステップＳＴ４００）。【００６６】
形状値情報算出部１３は、形状要素（３）と形状要素（４）との間の角度寸法に関する形状値情報を内部演算によって算出する（ステップＳＴ４１０）。形状値情報算出部１３は、形状値情報として、例えば、形状要素（３）と形状要素（４）とがなす角度などを算出する。形状値情報算出部１３は、算出した形状値情報を、ダイアログ（形状値情報ダイアログ）として表示部１６に表示させる（ステップＳＴ４２０）。【００６７】
この後、情報処理装置１に角度寸法の算出処理を続行させる場合には、使用者によって指示入力部１５から角度寸法の算出処理を続行させることを示す指示情報が入力される。この指示情報は、指示入力部１５から形状値情報算出部１３に送られる。【００６８】
形状値情報算出部１３は、指示入力部１５からの指示情報に基づいて、角度寸法の算出処理を続行するか否かを判断する（ステップＳＴ４３０）。形状値情報算出部１３は、角度寸法の算出処理を続行すると判断した場合（ステップＳＴ４３０、Ｙｅｓ）、角度寸法を算出する際に基準となっていない方の形状要素（４）のハイライト表示を表示部１６にキャンセルさせる（ステップＳＴ４３５）。【００６９】
そして、形状値情報算出部１３は、ステップＳＴ３９０〜ＳＴ４３５の処理を行なう。角度寸法の算出処理を続行する場合、使用者によって指示入力部１５から新たな形状要素（４）が入力される。この新たな形状要素（４）は、指示入力部１５から形状値情報算出部１３に送られる。【００７０】
形状値情報算出部１３は、新たに指定された形状要素（４）を、３次元形状の表示画面上に設定し、指定された新たな形状要素（４）の箇所を表示部１６にハイライト表示させる（ステップＳＴ３９０，ＳＴ４００）。【００７１】
そして、形状値情報算出部１３は、形状要素（３）と形状要素（４）との間の角度寸法に関する形状値情報を内部演算によって算出し、算出した形状値情報を、形状値情報ダイアログとして表示部１６に表示させる（ステップＳＴ４１０，ＳＴ４２０）。【００７２】
角度寸法の算出処理を続行させないことを示す指示情報（算出終了の指示）が、使用者によって指示入力部１５に入力されるまで、形状値情報算出部１３はステップＳＴ３９０〜ＳＴ４３５の処理を繰り返す。算出終了の指示が、使用者によって指示入力部１５に入力されると（ステップＳＴ４３０、Ｎｏ）、情報処理装置１は角度寸法の算出処理を終了する。【００７３】
このように、算出対象が長さ寸法の場合は、２つの形状要素間の各座標成分の差分や距離などが形状値情報として算出される。また、算出対象が座標値の場合は、指定された形状要素に関連する点の座標値などが形状値情報として算出される。さらに、算出対象が座標値であって、指定され形状要素が円弧エッジに関する場合は、直径または半径などが形状値情報として算出される。また、算出対象が角度寸法の場合は、２つの形状要素がなす角の大きさなどが形状値情報として算出される。【００７４】
ここで、図６〜図８を参照して形状値情報の算出処理を説明する。なお、以下でのエッジは、曲線、直線、線分などの線形状を示している。図６は、長さ寸法の算出処理を説明するための図である。図６ではエッジ１２２Ｅとエッジ１２３Ｅの２つの形状要素に関する寸法値情報（長さ寸法）を算出する場合の例を示している。【００７５】
形状値情報算出部１３は、まずエッジ１２２Ｅとエッジ１２３Ｅとの間が最短距離となる点１２４と点１２５を求める。点１２４がエッジ１２２Ｅ上の点であり、点１２５がエッジ１２３Ｅ上の点である。【００７６】
形状値情報算出部１３は、点１２４と点１２５を求めると、点１２４と点１２５との最短距離となる線１２６に関する形状値情報（長さ寸法）を算出する。そして、表示画面上の３次元形状上に線１２６を表示させるとともに、線１２６に関する形状値情報を表示画面上（形状値情報ダイアログ）に表示させる。【００７７】
図６では、２つのエッジ１２２Ｅとエッジ１２３Ｅとの間の長さ寸法の算出処理について説明したが、この他にも寸法値情報の算出対象となる形状要素の組合せは種々ある。例えば、点と点との間の長さ寸法、点とエッジとの間の長さ寸法、点と面との間の長さ寸法、エッジと面との間の長さ寸法、面と面との間の長さ寸法などが寸法値情報の算出対象となる。【００７８】
図７は、座標値の算出処理を説明するための図である。図７ではエッジ１１２Ｅの形状要素に関する点（エッジ１１２Ｅ上の中間点）の座標値情報を算出する場合の例を示している。【００７９】
形状値情報算出部１３は、エッジ１１２Ｅの端点１１３Ｐ，１１４Ｐの中間位置となる点１１５を寸法値情報として算出する。点１１５は、エッジ１１２Ｅ上の点である。形状値情報算出部１３は、表示画面上の３次元形状上に算出した点１１５を表示させるとともに、点１１５に関する形状値情報を表示画面上（形状値情報ダイアログ）に表示させる。【００８０】
図７では、エッジ１１２Ｅ上の中間点（座標値）の算出処理について説明したが、この他にも寸法値情報の算出対象となる形状要素（座標値）は種々ある。例えば、端点の座標値や中心点の座標値などが寸法値情報の算出対象となる。【００８１】
図８は、角度寸法の算出処理を説明するための図である。図８ではエッジ１３２Ｅと面１３３Ｆの２つの形状要素に関する寸法値情報（角度寸法）を算出する場合の例を示している。【００８２】
形状値情報算出部１３は、エッジ１３２Ｅと面１３３Ｆがなす角１３４に関する形状値情報（角度寸法）を算出する。形状値情報算出部１３は、表示画面上の３次元形状上に角１３４を表示させるとともに、角１３４に関する形状値情報を表示画面上に表示させる。【００８３】
図８では、エッジ１３２Ｅと面１３３Ｆとがなす角度の角度寸法の算出処理について説明したが、この他にも形状値情報の算出対象となる形状要素の組合せは種々ある。例えば、エッジとエッジがなす角度寸法、面と面がなす角度寸法、所定方向に限定した点の角度など（後述の加工軸と特徴点のなす角度など）が形状値情報の算出対象となる。【００８４】
図９〜図１１は、形状値情報の表示例を示す図である。図９は、２つの形状要素間の長さ寸法の値の表示例として形状値情報ダイアログ２１１ａを示し、図１０は、点の座標値の表示例として形状値情報ダイアログ２１１ｂを示し、図１１は、２つの形状要素間の角度寸法の値の表示例として形状値情報ダイアログ２１１ｃを示している。【００８５】
本実施の形態では、形状値情報ダイアログ２１１ａ〜２１１ｃが、ＮＣプログラムの表示形式に応じた形状値情報を表示する。形状値情報ダイアログ２１１ａ〜２１１ｃは、例えばＮＣプログラムで用いられている座標系（直交座標系や極座標系など）、この座標系での座標値、座標軸の傾き、座標原点などを表示する。【００８６】
つぎに、ステップＳＴ６０の処理（形状値情報の表示処理）について説明する。図１２は、形状値情報の表示処理手順を示すフローチャートである。本実施の形態では、使用者が指示入力部１５に入力する指示情報に基づいて、形状値情報を確認するための画面（確認用画面）に、確認対象となる形状要素（３次元形状上の位置）ハイライト表示させるとともに、この形状要素に対応する形状値情報を形状値情報ダイアログで反転表示させる。表示部１６は、例えば３次元形状の表示画面と形状値情報ダイアログとをリンクさせて表示する。【００８７】
形状値情報算出部１３は、表示部１６が表示している３次元形状の形状値情報（形状要素）に基づいて、この形状値情報の種類（以下、確認対象種別という）を判別する（ステップＳＴ５１０）。【００８８】
（確認対象種別が座標値の場合）
形状値情報算出部１３が判別した確認対象種別が、座標値である場合（ステップＳＴ５１０、座標値）、形状値情報ダイアログに表示されている形状値情報（座標値）に対応する各点（１〜複数）が３次元形状の表示画面上でハイライト表示されている。【００８９】
３次元形状の画面上でハイライト表示されている点の１つを指示入力部１５（マウス等）によって使用者が指定すると、指定された点（指定点）の情報が指示入力部１５から形状値情報算出部１３に入力される（ステップＳＴ５２０）。形状値情報算出部１３は、この指定点を３次元形状の画面上でハイライト表示させ（ステップＳＴ５３０）、ハイライト表示されていた他の点のハイライト表示をキャンセルする。そして、形状値情報算出部１３は、３次元形状の画面上でハイライト表示させた点（指示入力部１５から指定された点）に関する形状値情報（算出値）を形状値情報ダイアログで反転表示させる（ステップＳＴ５４０）。この後、情報処理装置１に他の新たな座標値の表示処理（反転表示）を継続して行なわせる場合には、使用者によって指示入力部１５から座標値寸法の表示処理を続行させることを示す指示情報が入力される。この指示情報は、指示入力部１５から形状値情報算出部１３に送られる。【００９０】
形状値情報算出部１３は、指示入力部１５からの指示情報に基づいて、座標値の表示処理を続行するか否かを判断する（ステップＳＴ５５０）。形状値情報算出部１３は、座標値の表示処理を続行すると判断した場合（ステップＳＴ５５０、Ｙｅｓ）、３次元形状の表示画面上でハイライト表示されている指定点のハイライト表示を表示部１６にキャンセルさせる（ステップＳＴ５６０）。さらに、形状値情報算出部１３は、ハイライト表示をキャンセルした指定点に関する形状値情報（算出値）の形状値情報ダイアログ上での反転表示をキャンセルする（ステップＳＴ５６５）。【００９１】
そして、形状値情報算出部１３は、ステップＳＴ５２０〜ＳＴ５５０の処理を行なう。この後、他の新たな座標値の表示処理を行なわないことを示す指示情報（終了の指示）が使用者によって指示入力部１５に入力されるまで、形状値情報算出部１３はステップＳＴ５２０〜ＳＴ５６５の処理を繰り返す。反転表示の終了指示が、使用者によって指示入力部１５に入力されると（ステップＳＴ５５０、Ｎｏ）、情報処理装置１は新たな反転表示は行なわない。【００９２】
（確認対象種別が長さ寸法または角度寸法の場合）
形状値情報算出部１３が判別した確認対象種別が、長さ寸法または角度寸法である場合（ステップＳＴ５１０、長さ寸法または角度寸法）、形状値情報ダイアログには形状値情報が反転表示されている。さらに、この反転表示されている形状値情報に関連している２つの形状要素（形状値情報の算出に用いた形状要素）が３次元形状の表示画面上でハイライト表示されている。【００９３】
形状値情報ダイアログ上に表示されている形状値情報を指示入力部１５（マウス等のカーソル移動）によって使用者が指定すると、指定された形状値情報が指示入力部１５から形状値情報算出部１３に入力される（ステップＳＴ５７０）。【００９４】
形状値情報算出部１３は、指示入力部１５からの形状値情報（カーソルを移動させた形状値情報）を形状値情報ダイアログ上で反転表示させる（ステップＳＴ５８０）。形状値情報算出部１３は、反転表示させた形状値情報に関連する２つの形状要素を、３次元形状の表示画面上でハイライト表示させる（ステップＳＴ５９０）。【００９５】
この後、情報処理装置１に他の新たな長さ寸法または角度寸法の表示処理（ハイライト表示）を継続して行なわせる場合には、使用者によって指示入力部１５から長さ寸法または角度寸法の表示処理を続行させることを示す指示情報が入力される。この指示情報は、指示入力部１５から形状値情報算出部１３に送られる。【００９６】
形状値情報算出部１３は、指示入力部１５からの指示情報に基づいて、長さ寸法または角度寸法の表示処理を続行するか否かを判断する（ステップＳＴ６００）。形状値情報算出部１３は、長さ寸法または角度寸法を続行すると判断した場合（ステップＳＴ６００、Ｙｅｓ）、形状値情報ダイアログ上で反転表示されている形状値情報の反転表示を表示部１６にキャンセルさせる（ステップＳＴ６１０）。さらに、形状値情報算出部１３は、反転表示をキャンセルした形状値情報に対応する各形状要素の、３次元形状の表示画面上でのハイライト表示をキャンセルする（ステップＳＴ６２０）。【００９７】
そして、形状値情報算出部１３は、ステップＳＴ５７０〜ＳＴ６２０の処理を行なう。この後、他の新たな長さ寸法または角度寸法の表示処理を行なわないことを示す指示情報（終了の指示）が使用者によって指示入力部１５に入力されるまで、形状値情報算出部１３は、ステップＳＴ５７０〜ＳＴ６２０の処理を繰り返す。ハイライト表示の終了指示が、使用者によって指示入力部１５に入力されると（ステップＳＴ６００、Ｎｏ）、情報処理装置１は新たなハイライト表示は行なわない。【００９８】
なお、形状値情報算出部１３は、ステップＳＴ５６０の処理とステップＳＴ５６５の処理とを何れの順番で行ってもよい。すなわち、形状値情報算出部１３は、指定点のハイライト表示のキャンセルと、形状値情報の反転表示のキャンセルとを、どちらを先に行ってもよい。【００９９】
また、形状値情報算出部１３は、ステップＳＴ６１０の処理とステップＳＴ６２０の処理とを何れの順番で行ってもよい。すなわち、形状値情報算出部１３は、形状値情報の反転表示のキャンセルと、各形状要素のハイライト表示のキャンセル、とをどちらを先に行ってもよい。【０１００】
ここで、３次元表示画面の表示例と、形状値情報ダイアログの表示例について説明する。図１３〜図１５は、３次元表示画面と形状値情報ダイアログの表示例を示す図である。図１３は、形状要素のハイライト表示と形状値情報の反転表示を行なっていない場合の３次元形状の表示画面（３次元表示画面１４０）と形状値情報ダイアログ２２１ａを示している。【０１０１】
３次元表示画面１４０には、３次元形状１４２、端点１４３、端点１４４、中心点１４５が表示されている。この場合の形状値情報ダイアログ２２１ａには、端点１４３の形状値情報２２２、端点１４４の形状値情報２２３、中心点１４５の形状値情報２２４が表示される。【０１０２】
図１４は、形状値情報の確認モード中に端点１４４が指定された場合の３次元表示画面１５０と形状値情報ダイアログ２２１ｂを示している。端点１４４が指定された場合、３次元表示画面１５０では指定された端点１４４がハイライト表示される。この場合の形状値情報ダイアログ２２１ｂには、端点１４４の形状値情報２２５が反転表示される。【０１０３】
図１５は、形状値情報の確認モード中に中心点１４５が指定された場合の３次元表示画面１６０と形状値情報ダイアログ２２１ｃを示している。中心点１４５が指定された場合、３次元表示画面１６０では指定された中心点１４５がハイライト表示される。この場合の形状値情報ダイアログ２２１ｃには、中心点１４５の形状値情報２２６が反転表示される。【０１０４】
なお、図１３〜図１５で示した点のハイライト表示や形状値情報の反転表示は表示方法の一例であり、使用者が指定した点や形状値情報と、その他の点や形状値情報とを、使用者が区別できる何れの表示方法で表示してもよい。【０１０５】
つぎに、ステップＳＴ７０の処理（ＮＣプログラムへの反映処理）について説明する。図１６は、形状値情報のＮＣプログラムへの反映処理手順を示すフローチャートである。表示部１６が形状値情報ダイアログに形状値情報を表示しているときに、指示入力部１５から形状値情報のＮＣプログラムへの反映指示が入力されると、この反映指示はＮＣプログラム作成部２に送られる。【０１０６】
ＮＣプログラム作成部２のＮＣプログラム反映部２２は、形状値情報に対応するＮＣプログラムをＮＣプログラム記憶部２１から抽出し、ＮＣプログラム画面（後述のＮＣプログラムエディタ画面３０１）として表示部１６に表示させる。【０１０７】
ＮＣプログラム画面上で、指示入力部１５から使用者が形状値情報を反映させたいＮＣプログラムの位置を指定（カーソルの移動指示）すると、表示部１６では指定されたＮＣプログラム画面上の位置にカーソルを移動（表示）させる（ステップＳＴ７００）。【０１０８】
形状値情報ダイアログ上で、指示入力部１５から使用者が反映させたい形状値情報の位置を指定（カーソルの移動指示）すると、表示部１６では指定された形状値情報ダイアログ上の位置にカーソルを移動（表示）させる（ステップＳＴ７１０）。【０１０９】
使用者がＮＣプログラムに形状値情報を反映させるコマンド（プログラム反映コマンド）を入力すると、このコマンドはＮＣプログラム反映部２２に入力される（ステップＳＴ７２０）。【０１１０】
ＮＣプログラム反映部２２は、ＮＣプログラム画面上でカーソルによって示された位置にあるＮＣプログラム（データ）の属性と、形状値情報ダイアログ上でカーソルによって示された位置にある形状値情報の属性とを比較して、これらの属性が一致するか否かを判断する（ステップＳＴ７３０）。ＮＣプログラム反映部２２は、例えばデータの属性が穴径どうしであるか否か、穴深さどうしであるか否か、面とりどうしであるか否か、などの加工の形状値情報であるか否かや、データの属性が（Ｘ，Ｙ，Ｚ）などの座標値どうしであるか否かなどを判断する。【０１１１】
ＮＣプログラムの属性と形状値情報の属性とが一致する場合（ステップＳＴ７３０、Ｙｅｓ）、ＮＣプログラム反映部２２は、形状値情報ダイアログ上のカーソル位置にある形状値情報を、ＮＣプログラム画面上のカーソル位置にあるＮＣプログラムに入力（反映）する。これによりＮＣプログラム反映部２２は、ＮＣプログラム記憶部２１ＮＣプログラムを、形状値情報を反映した新たなＮＣプログラムに更新する（ステップＳＴ７４０）。【０１１２】
一方、ＮＣプログラムの属性と形状値情報の属性とが一致しない場合（ステップＳＴ７３０、Ｎｏ）、ＮＣプログラム反映部２２は、ＮＣプログラム側へのデータの設定（形状値情報の反映）は行なわない。【０１１３】
この後、情報処理装置１に形状値情報のＮＣプログラムへの反映処理を続行させる場合には、使用者によって指示入力部１５から形状値情報の反映処理を続行させることを示す指示情報が入力される。この指示情報は、指示入力部１５からＮＣプログラム反映部２２に送られる。【０１１４】
そして、ＮＣプログラム反映部２２は、ステップＳＴ７００〜ＳＴ７５０の処理を行なう。この後、形状値情報の反映処理を続行しないことを示す指示情報（終了の指示）が使用者によって指示入力部１５に入力されるまで、ＮＣプログラム反映部２２は、ステップＳＴ７００〜ＳＴ７５０の処理を繰り返す。形状値情報の反映処理の終了指示が、使用者によって指示入力部１５に入力されると（ステップＳＴ７５０、Ｎｏ）、情報処理装置１は形状値情報のＮＣプログラムへの反映処理を終了する。【０１１５】
図１７は、形状値情報のＮＣプログラムへの反映処理を説明するための図である。形状値情報をＮＣプログラムへ反映させる際には、ＮＣプログラムエディタ画面３０１で、形状値情報を反映させたいＮＣプログラムの位置にカーソル３０２が移動させられる（ｓ１）。【０１１６】
また、形状値情報ダイアログ２３０で、ＮＣプログラムエディタ画面３０１に反映させたい形状値情報２３１の位置にカーソルが移動させられることによって形状値情報２３１は反転表示させられる（ｓ２）。【０１１７】
反映ボタンがクリック（プログラム反映コマンドが入力）されると、形状値情報２３１の情報が、ＮＣプログラムエディタ画面３０１に反映され、反映後のＮＣプログラムエディタ画面３０２に形状値情報３０４が表示される（ｓ３）。【０１１８】
つぎに、図５で説明した長さ寸法に関する形状値情報の算出処理（ステップＳＴ２６０）、座標値に関する形状値情報の算出処理（ステップＳＴ３２０）、角度寸法に関する形状値情報の算出処理（ステップＳＴ４１０）をそれぞれ詳細に説明する。【０１１９】
図１８は、座標値に関する形状値情報の算出処理手順を示すフローチャートである。形状値情報算出部１３は、図５のステップＳＴ２９０の処理で設定した点（以下、特徴点という）の種類に応じた形状値情報（座標値）の算出処理を行なう。まず、形状値情報算出部１３は、特徴点の種類を判別する（ステップＳＴ８００）。特徴点の種類には、例えば端点、中間点、第１の中心点、第２の中心点、法線点、最近接点、象限点などがある。【０１２０】
端点は、形状要素が開いたエッジである場合の、エッジの始点または終点である。中間点は、形状要素が開いたエッジの場合の、エッジの始点と終点の中間にある点である。第１の中心点は、形状要素が円弧エッジの場合の、エッジの中心点である。第２の中心点は、形状要素が穴の開いた曲面の場合に、穴が開く前の曲面領域内で、且つその曲面上で最も突出した位置に対応する点である。【０１２１】
法線点は、形状要素がエッジまたは面の場合に、任意の点を基準としてその点から形状要素に下ろした垂線の足に対応する点である。最近接点は、形状要素がエッジまたは面の場合に、任意の点を基準としてその点から形状要素に対して最短距離にある点である。象限点は、形状要素が円弧エッジ、球面、トーラス面など断面に円弧を含む面の場合に、その円弧形状の各象限に対応する領域の境界上にある点である。なお、これらの点以外にもなんらかの特徴を持つ点や、特徴点どうしの幾何演算により求められる点を形状値情報の算出対象としてもよい。【０１２２】
形状値情報算出部１３が、特徴点の種類は「端点」であると判断した場合（ステップＳＴ８００、端点）、形状値情報算出部１３は端点（エッジの始点または終点）の位置を算出する（ステップＳＴ８１０）。【０１２３】
形状値情報算出部１３が、特徴点の種類は「中間点」であると判断した場合（ステップＳＴ８００、中間点）、形状値情報算出部１３は中間点の位置を算出する（ステップＳＴ８２０）。具体的には、形状値情報算出部１３は開いたエッジが持つカーブのインターバル値（始点から終点までの区間パラメータ）を求め、そのパラメータの平均値に対応する位置にある点を中間点とする。なお、中間点は端点間の途中の位置にある点であり、直線エッジや円弧エッジ以外の場合には、必ずしもエッジ長の中間に位置する点になるとは限らない。【０１２４】
形状値情報算出部１３が、特徴点の種類は「第１の中心点」であると判断した場合（ステップＳＴ８００、第１の中心点）、形状値情報算出部１３は第１の中心点の位置を算出する（ステップＳＴ８３０）。具体的には、形状値情報算出部１３は、円弧エッジや円柱面・円筒面の中心に位置する点を第１の中心点とする。円柱面や円錐面の場合、形状値情報算出部１３は、円柱面や円錐面の中心軸方向で最大値・最小値をとる円柱面上や円錐面上の点（極値点）を求め、極値点から中心軸に下ろした垂線の足を第１の中心点とする。【０１２５】
形状値情報算出部１３が、特徴点の種類は「第２の中心点」であると判断した場合（ステップＳＴ８００、第２の中心点）、形状値情報算出部１３は第２の中心点の位置を算出する（ステップＳＴ８４０）。具体的には、形状値情報算出部１３は、円柱面または円錐面の穴に対して、穴の周りの面が、球面、トーラス面、円錐面の場合に、穴の周りの面の極値点を穴（円柱面または円錐面）の中心軸に下ろした点を第２の中心点とする。この場合の第２の中心点は、元の円柱面に穴を開ける前の曲面領域内で最も突出した位置にある。【０１２６】
このような点は、例えば加工開始点に相当する点である。したがって、工作機械などで加工を行う場合には、加工開始点や加工開始の目安となる位置にある点を加工作業者は認識しておく必要がある。【０１２７】
従来、素材形状と製品形状の情報から加工開始点を求めていたが、加工開始点は加工により除去される領域に含まれる場合が多く、素材形状や製品形状が加工開始点の情報を直接持っていなかった。このため、従来までは加工開始点を指定する作業は難しかった。本実施の形態では、形状値情報算出部１３が加工開始点（第２の中心点）を算出するので、容易に加工を開始することが可能となる。【０１２８】
形状値情報算出部１３が、特徴点の種類は「象限点」であると判断した場合（ステップＳＴ８００、象限点）、形状値情報算出部１３は象限点の位置を算出する（ステップＳＴ８５０）。具体的には、形状値情報算出部１３は、円弧エッジ、球面、トーラス面に対して、測定座標系の、０°、９０°、１８０°、２７０°の位置にある点を象限点とする。【０１２９】
例えば、円弧エッジの場合、測定座標系の軸が法線となる平面内の点であって円弧上にある点が象限点となる。また、球面の場合、球の中心を通る平面で測定座標系の軸が法線となる平面と、球面とが交わってできる円弧（円弧エッジ）の象限点が、球の象限点となる。また、トーラス面の場合、トーラス面の中心軸が測定座標軸と一致している場合に、中心軸を含む座標軸平面でトーラス面を切った場合の切り口（円弧）に対して、０°、９０°、１８０°、２７０°の位置にある点が象限点となる。すなわち、トーラス面の象限点は最大で１６点存在する。【０１３０】
形状値情報算出部１３が、特徴点の種類は「法線点」であると判断した場合（ステップＳＴ８００、法線点）、形状値情報算出部１３は直近に取得した特徴点（使用者によって指定された特徴点）を基準として法線点の位置を算出する（ステップＳＴ８６０，ＳＴ８７０）。具体的には、形状値情報算出部１３は、前回指定された特徴点（今回算出対象となっている形状要素の直前に指定された点）から、エッジ（直線や円弧）、平面、円柱面の中心軸に降ろした垂線の足に位置（最短距離）する点を法線点とする。法線点は、算出に用いる形状要素（選択要素）の領域外であってもよい。算出に用いる形状要素が円弧エッジの場合、前回の特徴点と、円弧エッジが同一平面内に存在してればよい。【０１３１】
形状値情報算出部１３が、特徴点の種類は「最近接点」であると判断した場合（ステップＳＴ８００、最近接点）、形状値情報算出部１３は直近に取得した特徴点を基準として最近接点の位置を算出する（ステップＳＴ８８０，ＳＴ８９０）。具体的には、形状値情報算出部１３は、前回指定された特徴点から、エッジ（直線や円弧）や任意の面に対して距離が最短となる頂点を最近接点とする。【０１３２】
形状値情報算出部１３は、ステップＳＴ８１０〜ＳＴ８９０の何れかの処理で特徴点の位置を算出すると、算出した特徴点の座標に関する情報（座標値、円弧エッジの場合は直径または半径）を演算する（ステップＳＴ９００）。【０１３３】
図１９は、長さ寸法に関する形状値情報の算出処理手順を示すフローチャートである。形状値情報算出部１３は、図５のステップＳＴ２２０の処理で設定した形状要素（１）とステップＳＴ２４０の処理で設定した形状要素（２）の組み合わせの種類に応じた形状値情報の算出処理を行なう。まず、形状値情報算出部１３は、形状要素（１）と形状要素（２）の組み合わせの種類を判別する（ステップＳＴ９１０）。算出する形状値情報が長さ寸法である場合の形状要素の組合せには、例えば点と点、点とエッジ、点と面、エッジとエッジ、面と面、エッジと面などがある。【０１３４】
本実施の形態では、形状要素（１）と形状要素（２）を設定した順序とは関係なく、形状要素（１），（２）の組み合わせの種類に基づいて形状値情報の算出方法を場合分けする。以下、形状要素（１）と形状要素（２）の組み合わせ例に沿って説明する。【０１３５】
形状値情報算出部１３が、形状要素どうしの組み合わせは「点とエッジ」であると判断した場合（ステップＳＴ９１０、点とエッジ）、形状値情報算出部１３は点とエッジとの間が最短距離となるエッジ上の点を算出する（ステップＳＴ９２０）。そして、形状値情報算出部１３は、算出した２点間の寸法（ＸＹＺ座標における寸法、ＸＹ座標における寸法など）を演算する（ステップＳＴ９７０）。【０１３６】
図２０および図２１は、点とエッジとの間の最短距離を説明するための図である。図２０に示すように、点１７１からエッジ１７３上へ垂線を延ばした場合に、垂線の足がエッジ１７３上に存在する場合は、点１７１からエッジ１７３への垂線の長さ（寸法１７２）を２点間寸法とする。また、図２１に示すように、点１７１からエッジ１７３上へ垂線を延ばした場合に、垂線の足がエッジ１７３上に存在しない場合は、点１７１と、エッジ１７３の領域内に存在する点１７４と、の間の最短距離（寸法１７２）を２点間寸法とする。【０１３７】
形状値情報算出部１３が、形状要素どうしの組み合わせは「点と面」であると判断した場合（ステップＳＴ９１０、点と面）、形状値情報算出部１３は点と面との間が最短距離となる面上の点を算出する（ステップＳＴ９３０）。そして、形状値情報算出部１３は、算出した２点間の寸法を演算する（ステップＳＴ９７０）。【０１３８】
図２２および図２３は、点と面との間の最短距離を説明するための図である。図２２に示すように、点１７１から面１７５へ垂線を延ばした場合に、垂線の足が面１７５上に存在する場合は、点１７１から面１７５への垂線の長さ（寸法１７２）を２点間寸法とする。また、図２３に示すように、点１７１から面１７５へ垂線を延ばした場合に、垂線の足が面１７５上に存在しない場合は、点１７１と、面１７５の領域内に存在する点１７６と、の間の最短距離（寸法１７２）を２点間寸法とする。【０１３９】
形状値情報算出部１３が、形状要素どうしの組み合わせは「エッジとエッジ」であると判断した場合（ステップＳＴ９１０、エッジとエッジ）、形状値情報算出部１３はエッジとエッジとの間が最短距離となる各エッジ上の点を算出する（ステップＳＴ９４０）。そして、形状値情報算出部１３は、算出した２点間の寸法を演算する（ステップＳＴ９７０）。【０１４０】
図２４および図２５は、エッジとエッジとの間の最短距離を説明するための図である。図２４および図２５に示すように、一方のエッジ１７３から他方のエッジ１７３へ垂線を延ばした場合の、一方のエッジ１７３から他方のエッジ１７３への垂線の長さ（寸法１７２）を２点間寸法とする。図２４は、他方のエッジ１７３が線分を含んでいる場合の寸法１７２を示しており、図２５は、他方のエッジ１７３が曲線を含んでいる場合の寸法１７２を示している。【０１４１】
形状値情報算出部１３が、形状要素どうしの組み合わせは「面と面」であると判断した場合（ステップＳＴ９１０、面と面）、形状値情報算出部１３は面と面との間（２面間の距離）が最短距離となる各面上の点を算出する（ステップＳＴ９５０）。そして、形状値情報算出部１３は、算出した２点間の寸法を演算する（ステップＳＴ９７０）。【０１４２】
図２６および図２７は、面と面との間の最短距離を説明するための図である。図２６に示すように、一方の面１７５上の点１７７と、他方の面１７５上の点１７７とを結んだ直線が、一方の面１７５への垂線になるとともに他方の面１７５への垂線になる場合（両方の面１７５の垂線になる場合）の、垂線の長さ（一方の面１７５上の点１７７と、他方の面１７５上の点１７７との間の寸法１７２）を２点間寸法とする。また、図２７に示すように、一方の面１７５から他方の面１７５へ垂線を延ばした場合に、垂線の足が他方の面１７５上に存在しない場合は、一方の面１７５上の点１７７と、他方の面１７５の領域内に存在する点１７６と、の間の最短距離（寸法１７２）を２点間寸法とする。【０１４３】
形状値情報算出部１３が、形状要素どうしの組み合わせは「エッジと面」であると判断した場合（ステップＳＴ９１０、エッジと面）、形状値情報算出部１３はエッジと面との間が最短距離となるエッジ上の点と面上の点を算出する（ステップＳＴ９６０）。そして、形状値情報算出部１３は、算出した２点間の寸法を演算する（ステップＳＴ９７０）。【０１４４】
図２８は、エッジと面との間の最短距離を説明するための図である。図２８に示すように、面１７５の領域内に存在する点１７６と、点１７６からエッジ１７３へ垂線を延ばした場合の、点１７６からエッジ１７３への垂線の長さ（寸法１７２）を２点間寸法とする。【０１４５】
形状値情報算出部１３が、形状要素どうしの組み合わせは「点と点」であると判断した場合（ステップＳＴ９１０、点と点）、形状値情報算出部１３は形状要素（１）と形状要素（２）の２点間の寸法を演算する（ステップＳＴ９７０）。【０１４６】
図２９は、角度寸法に関する形状値情報の算出処理手順を示すフローチャートである。形状値情報算出部１３は、図５のステップＳＴ３７０の処理で設定した形状要素（３）とステップＳＴ３９０の処理で設定した形状要素（４）の組み合わせの種類に応じた形状値情報の算出処理を行なう。まず、形状値情報算出部１３は、形状要素（３）と形状要素（４）の組み合わせの種類を判別する（ステップＳＴ１０００）。【０１４７】
形状値情報が角度寸法である場合に、形状要素（３）、形状要素（４）として設定できる組合せは、例えば、直線エッジどうし、平面どうし、直線エッジと平面、座標軸と特徴点などである。【０１４８】
したがって、算出する形状値情報が角度寸法である場合の形状要素の組合せは、例えば直線エッジと直線エッジ、平面と平面、直線エッジと平面、加工軸と特徴点、加工軸と直線エッジ、加工軸と平面などである。【０１４９】
本実施の形態では、形状要素（３）と形状要素（４）を設定した順序とは関係なく、形状要素（３），（４）の組み合わせの種類に基づいて形状値情報の算出方法を場合分けする。以下、形状要素（３）と形状要素（４）の組み合わせ例に沿って説明する。【０１５０】
形状値情報算出部１３が、形状要素どうしの組み合わせは「直線エッジと直線エッジ」であると判断した場合（ステップＳＴ１０００、直線エッジと直線エッジ）、形状値情報算出部１３は２つの直線エッジの方向ベクトルを求め、求めたベクトル間の角度を算出する（ステップＳＴ１０１０）。図３０に示すように、形状値情報算出部１３は、直線エッジの方向ベクトルａ１と直線エッジの方向ベクトルａ２とがなす角度Ｘを２要素間（直線エッジと直線エッジ）の角度とする。【０１５１】
形状値情報算出部１３が、形状要素どうしの組み合わせは「平面と平面」であると判断した場合（ステップＳＴ１０００、、平面と平面）、形状値情報算出部１３は２平面の法線ベクトルを求め、求めたベクトル間の角度を算出する（ステップＳＴ１０２０）。図３１に示すように、形状値情報算出部１３は、平面の法線ベクトルｂ１と平面の法線ベクトルｂ２とがなす角度Ｙを２要素間（平面と平面）の角度とする。【０１５２】
形状値情報算出部１３が、形状要素どうしの組み合わせは「直線エッジと平面」であると判断した場合（ステップＳＴ１０００、直線エッジと平面）、形状値情報算出部１３は直線エッジの方向ベクトルと平面の法線ベクトルを求め、求めたベクトル間の角度を算出する（ステップＳＴ１０３０）。図３２や図３３に示すように、形状値情報算出部１３は、直線エッジの方向ベクトルａ３と平面の法線ベクトルｂ３との間の角度Ｚ１，Ｚ２を２要素間（直線エッジと平面）の角度とする。【０１５３】
図３２に示すように、直線エッジの方向ベクトルａ３と平面の法線ベクトルｂ３のなす角度αが０°≦α＜９０°の場合、求める角度Ｚ１はＺ１＝９０°−αとなる。一方、図３３に示すように、直線エッジの方向ベクトルａ３と平面の法線ベクトルｂ３のなす角度αが９０°≦α＜１８０°の場合、求める角度Ｚ２はＺ２＝α−９０°となる。【０１５４】
形状値情報算出部１３が、形状要素どうしの組み合わせは「加工軸と特徴点」であると判断した場合（ステップＳＴ１０００、加工軸と特徴点）、形状値情報算出部１３は加工軸周りでの、特徴点の位置に対応する角度を算出する（ステップＳＴ１０４０）。例えばＣ軸を選択した場合、原点と特徴点を結ぶ直線とＡ軸（プラス方向）とのなす角度が求める角度となる。【０１５５】
形状値情報算出部１３が、形状要素どうしの組み合わせは「加工軸と直線エッジ」であると判断した場合（ステップＳＴ１０００、加工軸と直線エッジ）、形状値情報算出部１３は加工軸周りでの、直線エッジの方向ベクトルの角度を算出する（ステップＳＴ１０５０）。例えばＣ軸を選択した場合、直線エッジの方向ベクトルとＡ軸（プラス方向）とのなす角度が求める角度となる。【０１５６】
形状値情報算出部１３が、形状要素どうしの組み合わせは「加工軸と平面」であると判断した場合（ステップＳＴ１０００、加工軸と平面）、形状値情報算出部１３は加工軸周りでの、平面の法線ベクトルの角度を算出する（ステップＳＴ１０６０）。例えばＣ軸を選択した場合、平面の法線ベクトルとＡ軸（プラス方向）とのなす角度が求める角度となる。【０１５７】
指示入力部１５に入力される使用者からの指示に基づいて、形状値情報算出部１３が算出した形状値情報や、ＮＣプログラム反映部２２によって作成されたＮＣプログラムは、出力部１４から外部装置に出力される。【０１５８】
なお、本実施の形態では、情報処理装置１が表示部１６を備える場合を示したが、情報処理装置１と表示部１６を別構成としてもよい。また、情報処理装置１が、ＮＣプログラム作成部２を備える構成としたが、情報処理装置１とＮＣプログラム作成部２を別構成としてもよい。また、情報処理装置１がＮＣプログラム記憶部２１を備える構成としたが、情報処理装置１とＮＣプログラム記憶部２１を別構成としてもよい。【０１５９】
このように実施の形態によれば、使用者は座標値、寸法値、角度値などの形状値情報を計算することなく、これらの形状値情報を容易に取得することが可能となる。また、予め登録しておいた形状の情報（長さ寸法や角度寸法など）を読みだすのではなく、３次元形状の幾何情報から所望の形状値情報を算出処理するので、任意の形状値情報を取得することが可能となる。また、形状値情報を取得する際に、使用者が設定した座標系に基づいた形状値情報値を算出することが可能となる。【０１６０】
また、使用者が設定した座標系での形状値情報を算出できるので、使用者による座標変換計算の計算ミスを軽減できる。さらに、取得した形状値情報をそのままＮＣプログラムで利用することができるので、ＮＣプログラム作成時の入力ミスが減り、ＮＣプログラムの作成および編集を容易に行なうことが可能になる。【０１６１】
また、３次元表示画面と、取得した形状値情報を表示している表形式（形状値情報ダイアログ）と、をリンクさせて表示させることができるので、使用者は形状値情報が３次元形状内の何れの部位に対応するものであるかを容易に確認することが可能になる。【０１６２】
また、取得した形状値情報をＮＣプログラムの種類に応じた表示形式で表示できるので、使用者が所望のプログラム表示形式に合わせて形状値情報を計算する必要がなく、計算ミスを軽減できる。さらに、プログラム表示形式に応じて表示された形状値情報をそのままＮＣプログラムで利用することができるので、ＮＣプログラム作成時の入力ミスが減り、ＮＣプログラムの作成および編集を容易に行なうことが可能になる。
【産業上の利用可能性】
【０１６３】
以上のように、本発明に係る情報処理装置および情報処理方法は、３次元形状に関する情報の算出に適している。
【図１】
2009008072.tif 000003
【図２】
2009008072.tif 000004
【図３】
2009008072.tif 000005
【図４】
2009008072.tif 000006
【図５】
2009008072.tif 000007
【図６】
2009008072.tif 000008
【図７】
2009008072.tif 000009
【図８】
2009008072.tif 000010
【図９】
2009008072.tif 000011
【図１０】
2009008072.tif 000012
【図１１】
2009008072.tif 000013
【図１２】
2009008072.tif 000014
【図１３】
2009008072.tif 000015
【図１４】
2009008072.tif 000016
【図１５】
2009008072.tif 000017
【図１６】
2009008072.tif 000018
【図１７】
2009008072.tif 000019
【図１８】
2009008072.tif 000020
【図１９】
2009008072.tif 000021
【図２０】
2009008072.tif 000022
【図２１】
2009008072.tif 000023
【図２２】
2009008072.tif 000024
【図２３】
2009008072.tif 000025
【図２４】
2009008072.tif 000026
【図２５】
2009008072.tif 000027
【図２６】
2009008072.tif 000028
【図２７】
2009008072.tif 000029
【図２８】
2009008072.tif 000030
【図２９】
2009008072.tif 000031
【図３０】
2009008072.tif 000032
【図３１】
2009008072.tif 000033
【図３２】
2009008072.tif 000034
【図３３】
2009008072.tif 000035
【手続補正書】
【提出日】平成20年4月9日(2008.4.9)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
３次元形状に関する情報を算出する情報処理装置において、
３次元形状の表示に用いる３次元形状の製図データを入力する３次元形状入力部と、
前記３次元形状入力部に入力された製図データの３次元形状を表示する表示部と、
前記表示部が表示している３次元形状の形状要素のうち外部入力される指示に対応する形状要素を３次元形状の算出に用いるデータに設定するとともに、設定した形状要素を用いて前記３次元形状内の寸法を形状値情報として算出し、算出結果を前記表示部に表示させる形状値情報算出部と、
を備え、
前記外部入力される指示は、前記製図データ内で形状要素間の寸法が明示されていない異なる２つの形状要素を指定する指示であり、
前記形状値情報算出部は、前記異なる２つの形状要素間の寸法を算出することによって形状値情報を算出することを特徴とする情報処理装置。
【請求項２】
外部入力される指示に基づいて、前記表示部が表示している３次元形状に新たな座標系を設定する座標系設定部をさらに備え、
前記形状値情報算出部は、前記３次元形状のデータを前記座標系設定部が設定した新たな座標系に対応する３次元形状のデータに変換し、変換後の３次元形状のデータを用いて前記形状値情報を算出することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記形状値情報算出部が算出した形状値情報を、前記製図データに対応するＮＣプログラムに反映させるＮＣプログラム反映部をさらに備え、
前記ＮＣプログラム反映部は、前記形状値情報算出部が形状値情報を算出した際に、この算出した形状値情報をＮＣプログラムに反映させ、
前記表示部は、前記ＮＣプログラム反映部が前記形状値情報を反映させたＮＣプログラムを表示することを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記表示部は、前記形状値情報を、前記ＮＣプログラムに応じたプログラム方式で表示することを特徴とする請求項３に記載の情報処理装置。
【請求項５】
（削除）
【請求項６】
３次元形状に関する情報の算出を行なう情報処理方法において、
３次元形状の表示に用いる３次元形状の製図データを入力する３次元形状入力ステップと、
入力された製図データの３次元形状を表示する３次元形状表示ステップと、
表示している３次元形状の形状要素のうち外部入力される指示に対応する形状要素を３次元形状の算出に用いるデータに設定するとともに、設定した形状要素を用いて前記３次元形状内の寸法を形状値情報として算出する算出ステップと、
算出結果を表示する算出結果表示ステップと、
を含み、
前記外部入力される指示は、前記製図データ内で形状要素間の寸法が明示されていない異なる２つの形状要素を指定する指示であり、
前記算出ステップは、前記異なる２つの形状要素間の寸法を算出することによって形状値情報を算出することを特徴とする情報処理方法。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００２
【補正方法】変更
【補正の内容】
【０００２】
報を表示できないといった問題があった。
［０００７］
また、上記後者の従来技術では、寸法情報を２次元図面から取得して表示するので、表示できる寸法情報は２次元図面から解析できうる情報に限られてしまうといった問題があった。
［０００８］
本発明は、上記に鑑みてなされたものであって、３次元形状の製図データから所望の３次元形状に関する情報を容易に算出することができる情報処理装置および情報処理方法を得ることを目的とする。
課題を解決するための手段
［０００９］
上述した課題を解決し、目的を達成するために、本発明は、３次元形状に関する情報を算出する情報処理装置において、３次元形状の表示に用いる３次元形状の製図データを入力する３次元形状入力部と、前記３次元形状入力部に入力された製図データの３次元形状を表示する表示部と、前記表示部が表示している３次元形状の形状要素のうち外部入力される指示に対応する形状要素を３次元形状の算出に用いるデータに設定するとともに、設定した形状要素を用いて前記３次元形状内の寸法を形状値情報として算出し、算出結果を前記表示部に表示させる形状値情報算出部と、を備え、前記外部入力される指示は、前記製図データ内で形状要素間の寸法が明示されていない異なる２つの形状要素を指定する指示であり、前記形状値情報算出部は、前記異なる２つの形状要素間の寸法を算出することによって形状値情報を算出することを特徴とする。
発明の効果
［００１０］
本発明に係る情報処理装置は、外部入力される指示が、異なる２つの形状要素を指定する指示であり、異なる２つの形状要素間の寸法を算出することによって、製図データ内で明示されていない形状値情報を算出するので、製図データから所望の３次元形状に関する情報を容易に算出することが可能になるという効果を奏する。
図面の簡単な説明
［００１１］
［図１］図１は、本発明の実施の形態に係る情報処理装置の構成を示すブロック図である。
［図２］図２は、情報処理装置の動作手順を示すフローチャートである。
［図３］図３は、座標系の設定処理手順を示すフローチャートである。
［図４］図４は、座標系を設定する際に表示させる設定ダイアログを説明するための図である。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００１５
【補正方法】変更
【補正の内容】
【００１５】
［００６３］
（算出対象種別が角度寸法の場合）
基準となる形状要素（３）を１つ指定し、順次この形状要素（３）と各形状要素（４）の間でなす角度を算出（測定）する場合の例について説明する。形状値情報算出部１３が判別した算出対象種別が、角度寸法である場合（ステップＳＴ２１０、角度寸法）、使用者の所望の形状要素として、３次元形状の表示画面上で１つめの形状要素（３）と２つめの形状要素（４）が使用者に指定される。この１つめの形状要素（３）と２つめの形状要素（４）は、指示入力部１５（マウスなど）から使用者によって指定される。１つめの形状要素（３）が角度寸法を算出する際に基準となる形状要素である。
［００６４］
１つめの形状要素（３）は、指示入力部１５から形状値情報算出部１３へ送られる。形状値情報算出部１３は、指定された形状要素（３）を、３次元形状の表示画面上に設定する（ステップＳＴ３７０）。具体的には、形状値情報算出部１３は、表示部１６が表示している３次元形状の中から、指定された形状要素（３）に対応するデータを抽出しておく。形状値情報算出部１３は、表示部１６が表示している３次元形状の中から、指定された形状要素（３）の箇所を表示部１６にハイライト表示させる（ステップＳＴ３８０）。
［００６５］
また、２つめの形状要素（４）は、指示入力部１５から形状値情報算出部１３へ送られる。形状値情報算出部１３は、指定された形状要素（４）を、３次元形状の表示画面上に設定する（ステップＳＴ３９０）。具体的には、形状値情報算出部１３は、表示部１６が表示している３次元形状の中から、指定された形状要素（４）に対応するデータを抽出しておく。形状値情報算出部１３は、表示部１６が表示している３次元形状の中から、指定された形状要素（４）の箇所を表示部１６にハイライト表示させる（ステップＳＴ４００）。
［００６６］
形状値情報算出部１３は、形状要素（３）と形状要素（４）との間の角度寸法に関する形状値情報を内部演算によって算出する（ステップＳＴ４１０）。形状値情報算出部１３は、形状値情報として、例えば、形状要素（３）と形状要素、（４）とがなす角度などを算出する。形状値情報算出部１３は、算出した形状値情報を、ダイアログ（形状値情報ダイアログ）として表示部１６に表示させる（ステップＳＴ４２０）。
［００６７］
この後、情報処理装置１に角度寸法の算出処理を続行させる場合には、使用者によって指示入力部１５から角度寸法の算出処理を続行させることを示す指示情報が
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００２３
【補正方法】変更
【補正の内容】
【００２３】
する。これによりＮＣプログラム反映部２２は、ＮＣプログラム記憶部２１ＮＣプログラムを、形状値情報を反映した新たなＮＣプログラムに更新する（ステップＳＴ７４０）。
［０１１２］
一方、ＮＣプログラムの属性と形状値情報の属性とが一致しない場合（ステップＳＴ７３０、Ｎｏ）、ＮＣプログラム反映部２２は、ＮＣプログラム側へのデータの設定（形状値情報の反映）は行なわない。
［０１１３］
この後、情報処理装置１に形状値情報のＮＣプログラムへの反映処理を続行させる場合には、使用者によって指示入力部１５から形状値情報の反映処理を続行させることを示す指示情報が入力される。この指示情報は、指示入力部１５からＮＣプログラム反映部２２に送られる。
［０１１４］
そして、ＮＣプログラム反映部２２は、ステップＳＴ７００〜ＳＴ７５０の処理を行なう。この後、形状値情報の反映処理を続行しないことを示す指示情報（終了の指示）が使用者によって指示入力部１５に入力されるまで、ＮＣプログラム反映部２２は、ステップＳＴ７００〜ＳＴ７５０の処理を繰り返す。形状値情報の反映処理の終了指示が、使用者によって指示入力部１５に入力されると（ステップＳＴ７５０、Ｎｏ）、情報処理装置１は形状値情報のＮＣプログラムへの反映処理を終了する。
［０１１５］
図１７は、形状値情報のＮＣプログラムへの反映処理を説明するための図である。形状値情報をＮＣプログラムへ反映させる際には、ＮＣプログラムエディタ画面３０１で、形状値情報を反映させたいＮＣプログラムの位置にカーソル３０２が移動させられる（ｓ１）。
［０１１６］
また、形状値情報ダイアログ２３０で、ＮＣプログラムエディタ画面３０１に反映させたい形状値情報２３１の位置にカーソルが移動させられることによって形状値情報２３１は反転表示させられる（ｓ２）。
［０１１７］
反映ボタンがクリック（プログラム反映コマンドが入力）されると、形状値情報２３１の情報が、ＮＣプログラムエディタ画面３０１に反映され、反映後のＮＣプログラムエディタ画面３０３に形状値情報３０４が表示される（ｓ３）。
［０１１８］
つぎに、図５で説明した長さ寸法に関する形状値情報の算出処理（ステップＳＴ２６０）、座標値に関する形状値情報の算出処理（ステップＳＴ３２０）、角度寸法に関する形状値情報の算出処理（ステップＳＴ４１０）をそれぞれ詳細に説明する。
【手続補正５】
【補正対象書類名】図面
【補正対象項目名】図２９
【補正方法】変更
【補正の内容】
【図２９】
2009008072.tif 000036
【手続補正書】
【提出日】平成21年12月10日(2009.12.10)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
３次元形状に関する情報を算出する情報処理装置において、
３次元形状の表示に用いる３次元形状の製図データを入力する３次元形状入力部と、
前記３次元形状入力部に入力された製図データの３次元形状を表示する表示部と、
外部入力される指示に基づいて、前記表示部が表示している３次元形状に新たな座標系を設定する座標系設定部と、
前記表示部が表示している３次元形状の形状要素のうち外部入力される指示に対応する形状要素を３次元形状の算出に用いるデータに設定するとともに、設定した形状要素を用いて前記３次元形状内の寸法を形状値情報として算出し、算出結果を前記表示部に表示させる形状値情報算出部と、
を備え、
前記外部入力される指示は、前記製図データ内で形状要素間の寸法が明示されていない異なる２つの形状要素を指定する指示であり、
前記形状値情報算出部は、前記異なる２つの形状要素間の寸法を算出するとともに前記３次元形状のデータを前記座標系設定部が設定した新たな座標系に対応する３次元形状のデータに変換し、変換後の３次元形状のデータを用いて新たな座標系での前記形状値情報を算出することを特徴とする情報処理装置。
【請求項２】
前記形状値情報算出部が算出した形状値情報を、前記製図データに対応するＮＣプログラムに反映させるＮＣプログラム反映部をさらに備え、
前記ＮＣプログラム反映部は、前記形状値情報算出部が形状値情報を算出した際に、この算出した形状値情報をＮＣプログラムに反映させ、
前記表示部は、前記ＮＣプログラム反映部が前記形状値情報を反映させたＮＣプログラムを表示することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記表示部は、前記形状値情報を、前記ＮＣプログラムに応じたプログラム方式で表示することを特徴とする請求項２に記載の情報処理装置。
【請求項４】
３次元形状に関する情報の算出を行なう情報処理方法において、
３次元形状の表示に用いる３次元形状の製図データを入力する３次元形状入力ステップと、
入力された製図データの３次元形状を表示する３次元形状表示ステップと、
外部入力される指示に基づいて、前記表示部が表示している３次元形状に新たな座標系を設定するとともに、表示している３次元形状の形状要素のうち外部入力される指示に対応する形状要素を３次元形状の算出に用いるデータに設定し、設定した形状要素を用いて前記３次元形状内の寸法を形状値情報として算出する算出ステップと、
算出結果を表示する算出結果表示ステップと、
を含み、
前記外部入力される指示は、前記製図データ内で形状要素間の寸法が明示されていない異なる２つの形状要素を指定する指示であり、
前記算出ステップは、前記異なる２つの形状要素間の寸法を算出するとともに前記３次元形状のデータを前記座標系設定部が設定した新たな座標系に対応する３次元形状のデータに変換し、変換後の３次元形状のデータを用いて新たな座標系での前記形状値情報を算出することを特徴とする情報処理方法。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、３次元形状に関する情報を算出する情報処理装置および情報処理方法に関するものである。
【背景技術】
【０００２】
被加工物を種々の形状に加工する工作機械やロボットは、数値制御装置（以下、ＮＣ（Numerical  Control）装置という）によって制御されながら、被加工物の３次元加工を行なっている。
【０００３】
特許文献１に記載の型加工支援装置は、金型を３次元モデルとして設計したときに、この仮想空間内に存在する所望部分の寸法を表す数値を、３次元モデルと共に表示させる機能（寸法表示機能）を具備している。そして、寸法表示機能が、ＣＡＤなどで作成した仮想モデルを３次元的に表示させる場合に、その後の作業で特に注目して欲しい部分などの寸法を表示させている。例えば、寸法表示機能は、ダイアログボックスを表示し、３次元モデルの表示時画面上でマウスによって指定された距離や角度などを数字で表示している。
【０００４】
また、特許文献２に記載の寸法表示システムは、ＣＡＤ／ＣＡＭシステムの画面に、正面図、平面図、側面図からなる製品の２次元図面を表示するとともに、画面上に三次元用のウインドウを開いて製品の三次元像を表示している。そして、三次元像に、２点間の寸法、交差する線や面の角度、寸法、円の径寸法を表示している。
【０００５】
【特許文献１】特開２００３−４４５４４号公報（第５頁、図４）
【特許文献２】特開平５−１３４７２９号公報（第１頁）
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記前者の従来技術では、コンピュータ内でディジタル的に作成された型についての仮想モデルの部位に関する情報を予め格納しておく必要がある。このため、操作者が格納された情報以外の部位を選択した場合には、選択された情報を表示できないといった問題があった。
【０００７】
また、上記後者の従来技術では、寸法情報を２次元図面から取得して表示するので、表示できる寸法情報は２次元図面から解析できうる情報に限られてしまうといった問題があった。
【０００８】
本発明は、上記に鑑みてなされたものであって、３次元形状の製図データから所望の３次元形状に関する情報を容易に算出することができる情報処理装置および情報処理方法を得ることを目的とする。
【課題を解決するための手段】
【０００９】
上述した課題を解決し、目的を達成するために、本発明は、３次元形状に関する情報を算出する情報処理装置において、３次元形状の表示に用いる３次元形状の製図データを入力する３次元形状入力部と、前記３次元形状入力部に入力された製図データの３次元形状を表示する表示部と、外部入力される指示に基づいて、前記表示部が表示している３次元形状に新たな座標系を設定する座標系設定部と、前記表示部が表示している３次元形状の形状要素のうち外部入力される指示に対応する形状要素を３次元形状の算出に用いるデータに設定するとともに、設定した形状要素を用いて前記３次元形状内の寸法を形状値情報として算出し、算出結果を前記表示部に表示させる形状値情報算出部と、を備え、前記外部入力される指示は、前記製図データ内で形状要素間の寸法が明示されていない異なる２つの形状要素を指定する指示であり、前記形状値情報算出部は、前記異なる２つの形状要素間の寸法を算出するとともに前記３次元形状のデータを前記座標系設定部が設定した新たな座標系に対応する３次元形状のデータに変換し、変換後の３次元形状のデータを用いて新たな座標系での前記形状値情報を算出することを特徴とする。
【発明の効果】
【００１０】
本発明に係る情報処理装置は、３次元形状のデータを新たな座標系に対応する３次元形状のデータに変換し、変換後の３次元形状のデータを用いて新たな座標系での形状値情報を算出するので、製図データから所望の３次元形状に関する情報を容易に算出することが可能になるという効果を奏する。
【発明を実施するための最良の形態】
【００１１】
以下に、本発明に係る情報処理装置および情報処理方法の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１２】
実施の形態
図１は、本発明の実施の形態に係る情報処理装置の構成を示すブロック図である。情報処理装置１は、３次元形状に関する情報に基づいて所望の形状要素に対する形状の情報（形状に含まれる部位の長さ寸法や角度寸法など）を算出し、算出結果を表示するコンピュータなどの装置である。
【００１３】
情報処理装置１は、例えばＣＡＤ（Computer  Aided  Design）装置で作成された３次元形状に関する情報（ＣＡＤデータなどの所定の寸法を含んだ製図データ）に基づいて形状（部位）の寸法などの情報（後述の形状値情報）を算出するとともに、算出した形状値情報（ＣＡＤデータ内に明示されていない形状の値）を必要に応じてＮＣプログラムなどに反映させる。情報処理装置１には、ＮＣプログラムなどを用いて工作機械やロボットなどを制御させてもよい。この場合、情報処理装置１はＮＣ装置として動作する。
【００１４】
情報処理装置１は、３次元形状入力部１１、座標系設定部１２、形状値情報算出部１３、出力部１４、指示入力部１５、表示部１６、ＮＣプログラム作成部２、制御部１９を備えている。
【００１５】
３次元形状入力部１１は、外部装置などから送られてくる３次元形状に関する情報（辺や面を表示するための情報）（以下、３次元形状情報という）を入力し、座標系設定部１２、形状値情報算出部１３、表示部１６などに送る。
【００１６】
指示入力部１５は、マウスやキーボードを備えて構成され、情報処理装置１の使用者（加工オペレータなどの操作者）から入力される指示などを入力する。指示入力部１５には、３次元形状情報に含まれる形状に対して設定される座標系の情報（座標系を指定する情報）や、表示部１６によって表示される３次元形状内の形状要素（点、線、面など）を指定する情報などが入力される。指示入力部１５は、入力した座標系の情報を座標系設定部１２に入力し、入力した形状要素の情報を形状値情報算出部１３に入力する。
【００１７】
座標系設定部１２は、ＣＡＤ座標系で作成されたＣＡＤデータ（３次元形状データ）に対して、形状値情報を算出や表示する際に用いる新たな座標系を設定し、ＣＡＤデータを新たな座標系に応じた３次元形状の情報に変換する。座標系設定部１２は、表示部１６によって表示される３次元形状のＣＡＤデータに対し、指示入力部１５から入力される指示情報（座標系を指定する情報）に基づいた新たな座標系を設定する。座標系設定部１２は、設定した新たな座標系と、座標系を変換した３次元形状の情報と、を形状値情報算出部１３、表示部１６、ＮＣプログラム作成部２、出力部１４などに送る。なお、座標系設定部１２は、ＣＡＤ座標系が、形状値情報を算出や表示する際に用いる新たな座標系と同じである場合、ＣＡＤデータに対する座標系の変換処理を行う必要はない。
【００１８】
形状値情報算出部１３は、表示部１６によって表示される３次元形状の中で使用者によって指定された任意の形状の情報（形状要素を用いた情報）（例えば、部位の長さ寸法や角度寸法などの値）を形状値情報として算出する。形状値情報算出部１３は、指示入力部１５から入力される指示情報（形状要素を指定する情報）に基づいて、形状値情報を算出する。形状値情報算出部１３は、算出した結果（形状値情報）を、表示部１６、ＮＣプログラム作成部２、出力部１４などに送る。
【００１９】
ＮＣプログラム作成部２は、ＮＣプログラムの作成や修正を行なう。ＮＣプログラム作成部２は、ＮＣプログラム記憶部２１とＮＣプログラム反映部２２を備えている。ＮＣプログラム記憶部２１は、工作機械などを制御する際に用いるＮＣプログラムを記憶するメモリなどの記憶手段である。ＮＣプログラム反映部２２は、形状値情報をＮＣプログラム記憶部２１内のＮＣプログラムに反映させ、反映後の新たなＮＣプログラムをＮＣプログラム記憶部２１に記憶させる。
【００２０】
表示部１６は、液晶ディスプレイなどの表示手段を備えて構成されている。表示部は、３次元形状情報に応じた３次元形状、座標系設定部１２で設定された座標系、この座標系での３次元形状、使用者によって指定された部位（被加工物の形状要素）、算出対象となる形状（線、角などの部位）、算出対象となる形状を使用者に設定させるための設定ダイアログ、形状値情報、反映後の新たなＮＣプログラムなどを表示する。
【００２１】
出力部１４は、表示部１６が表示する種々の情報を外部装置へ出力する。出力部１４は、例えば座標系設定部１２で設定された座標系での３次元形状、使用者によって指定された部位、形状値情報、反映後の新たなＮＣプログラムなどを外部装置に出力する。制御部１９は、３次元形状入力部１１、座標系設定部１２、形状値情報算出部１３、出力部１４、指示入力部１５、表示部１６、ＮＣプログラム作成部２を制御する。
【００２２】
つぎに、情報処理装置１の動作手順について説明する。図２は、情報処理装置の動作手順を示すフローチャートである。３次元形状入力部１１は、外部装置などから送られてくる３次元形状情報（幾何情報）を入力し（ステップＳＴ１０）、表示部１６と座標系設定部１２に送る。表示部１６は、３次元形状入力部１１からの３次元形状情報に応じた３次元形状を表示する（ステップＳＴ２０）。
【００２３】
座標系設定部１２は、指示入力部１５から入力される使用者からの指示情報（座標系を指定する情報）に基づいて、ＣＡＤ座標系で作成されたＣＡＤデータ（３次元形状データ）に新たな座標系（座標軸と原点）を設定（座標系の変換処理）するとともに、入力された３次元形状の情報を座標系に応じた３次元形状の情報に変換する（ステップＳＴ３０）。座標系設定部１２は、設定した座標系と、この座標系に応じて変換した３次元形状の情報と、を表示部１６に表示させるとともに形状値情報算出部１３に送る。
【００２４】
形状値情報算出部１３は、指示入力部１５から入力される使用者からの指示情報（形状要素を指定する情報）に基づいて、形状値情報の算出処理を行なう（ステップＳＴ４０）。形状値情報算出部１３は、形状値情報を、表示部１６、ＮＣプログラム作成部２に送る。
【００２５】
表示部１６は、形状値情報算出部１３からの形状値情報を、ＮＣプログラムで指定された座標系で表示する（ステップＳＴ５０）。機械加工などでは、加工方法によってプログラムに設定する加工位置の表示形式が異なる。例えば、直交座標系の座標値を用いて加工位置を表す方法、極座標系の座標値を用いて加工位置を表す方法、などがある。さらに、表示部１６は、表形式等で表示されている形状値情報に関連する３次元形状上の部位（算出対象となった部位）を新たに設定した座標系で表示する（ステップＳＴ６０）。
【００２６】
ＮＣプログラム作成部２は、形状値情報算出部１３からの形状値情報をＮＣプログラム記憶部２１内のＮＣプログラムに反映させることによってＮＣプログラムの編集を行なう（ステップＳＴ７０）。このとき、表示部１６は、座標系を指定する指示情報が使用者から入力されると、指定された座標系に応じた値に形状値情報を変換し、変換した形状値情報を表示する。表示部１６は、ＮＣプログラム作成部２で作成されたＮＣプログラム（編集結果）を表示する（ステップＳＴ８０）。
【００２７】
なお、図２では、ステップＳ３０の処理（新たな座標系の設定処理）の後にステップＳ４０の処理（形状値情報の算出処理）を行う場合について説明したが、座標系設定部１２は、形状値情報算出部１３によるステップＳ４０の処理の後にステップＳ３０の処理を行ってもよい。その場合、座標系設定部１２は、ステップＳＴ４０の処理で得た形状値情報を、ステップＳＴ３０の処理で設定した座標系に応じた値に変換する。
【００２８】
つぎに、図２に示した各処理（ステップＳＴ３０〜ＳＴ７０）を詳細に説明する。以下、ステップＳＴ３０の処理（座標系の設定処理）、ステップＳＴ４０の処理（形状値情報の算出処理）、ステップＳＴ６０の処理（形状値情報の表示処理）、ステップＳＴ７０の処理（ＮＣプログラムへの反映処理）の順番で説明し、最後に形状値情報の算出処理を詳細に説明する。
【００２９】
図３は、座標系の設定処理手順を示すフローチャートである。座標系設定部１２は、指示入力部１５から入力される指示情報に基づいて、座標系のうちの何れの種類のデータを設定するかを判別する（ステップＳＴ１１０）。座標系（ＣＡＤ座標系で作成されたＣＡＤデータに対して新たに設定する座標系）として設定されるデータとしては、座標軸の傾斜、座標原点、座標原点の移動などがある。本実施の形態では、この座標系設定部１２で設定する新たな座標系が、形状値情報を算出や表示する際に用いる座標系となる。
【００３０】
指示入力部１５から座標軸の傾斜角度を指定する指示情報が入力されると（ステップＳＴ１１０、座標軸の傾斜）、座標系設定部１２は座標系に関するデータの内容が、座標軸の傾斜である場合と判断する。そして、座標系設定部１２は、指示入力部１５からの指示情報に基づいて、指定された傾斜角度だけ３次元形状データの座標軸を回転移動（傾斜）させ（ステップＳＴ１２０，ＳＴ１３０）、現状の座標系に対する３次元形状データの変換を行う。
【００３１】
指示入力部１５から座標原点を指定する指示情報が入力されると（ステップＳＴ１１０、座標原点）、座標系設定部１２は座標系に関するデータの内容が、座標原点の設定（新たな座標原点の指定）であると判断する。そして、座標系設定部１２は、指示入力部１５からの指示情報に基づいて、指定された座標原点へ座標軸を平行移動させ（ステップＳＴ１４０，ＳＴ１５０）、現状の座標系に対する３次元形状データの変換を行う。
【００３２】
指示入力部１５から座標原点の移動量を指定する指示情報が入力されると（ステップＳＴ１１０、座標原点移動）、座標系設定部１２は座標系に関するデータの内容が、座標原点の移動（移動量の指定）であると判断する。そして、座標系設定部１２は、指示入力部１５からの指示情報に基づいて、指定された座標原点へ座標軸を平行移動させ（ステップＳＴ１６０，ＳＴ１７０）、現状の座標系に対する３次元形状データの変換を行う。
【００３３】
座標系設定部１２は、現状の座標軸に対する３次元形状データの変換を行うと、座標系として他に設定するデータがあるか否かを判断する（ステップＳＴ１８０）。座標系として他に設定するデータがある場合（ステップＳＴ１８０、Ｙｅｓ）、ステップＳＴ１１０〜ＳＴ１７０の処理を繰り返す。すなわち、座標系設定部１２は、指示入力部１５から入力される指示情報に基づいて、座標系のうちの何れのデータを設定するかを判別し、この判別結果に応じた座標系の設定を行なう。
【００３４】
座標系として他に設定するデータがない場合（ステップＳＴ１８０、Ｎｏ）、座標系設定部１２は、変換した座標系での３次元形状データや座標軸を表示部１６に表示させる（ステップＳＴ１９０）。さらに、座標系設定部１２は、変換した座標軸を新しい現状の座標軸に更新する（ステップＳＴ２００）。
【００３５】
なお、本実施の形態では、座標系として設定するデータとして３種類のデータがある場合を一例として説明したが、座標系として設定するデータは座標系に関するデータであれば何れのデータでもよい。また、座標系設定部１２は、座標系として設定するデータを１つずつ設定してもよいし、複数同時に設定してもよい。また、複数回に渡って座標系を設定する場合には、座標系を設定する都度、変換した座標系での３次元形状データや座標軸を表示部１６に表示させてもよい。
【００３６】
図４は、座標系を設定する際に表示させる設定ダイアログを説明するための図である。図４では、点の座標測定（座標値）を行うための設定ダイアログ２０１と、点の座標測定を行なう際に用いる座標系（測定座標系）を設定するための設定ダイアログ２０３，２０４と、を示している。
【００３７】
設定ダイアログ２０１には、点を測定する際の座標系を入力する欄（テキストボックス）、算出対象となる点の種類（後述の特徴点）を入力する欄、加工ユニットデータ（３次元形状データ）が保持する座標系の情報を参照するためのボタンなどが設けられている。
【００３８】
点を測定する際の座標系は、座標軸の傾きや座標原点などによって設定される。設定ダイアログ２０３は、座標軸の傾きを設定するダイアログであり、図４では、工具の進行方向から座標軸の傾きを設定する場合の設定ダイアログを一例として示している。
【００３９】
設定ダイアログ２０４は、座標原点を設定するダイアログであり、図４では、座標値を入力する場合の設定ダイアログを一例として示している。設定ダイアログ２０３で設定された座標軸の傾きや、設定ダイアログ２０４で設定された座標原点は、設定ダイアログ２０１の座標系を入力する欄に反映される。
【００４０】
つぎに、ステップＳＴ４０の処理（形状値情報の算出処理）について説明する。図５は、形状値情報の算出処理手順を示すフローチャートである。形状値情報算出部１３は、指示入力部１５から入力される指示情報に基づいて、算出対象となる形状（部位）の種類（以下、算出対象種別という）を判別する（ステップＳＴ２１０）。算出対象種別としては、長さ寸法（距離）、座標値、角度寸法などがある。長さ寸法には、例えば半径寸法、直径寸法、円弧寸法、形状要素間寸法などが含まれている。
【００４１】
（算出対象種別が長さ寸法の場合）
基準となる形状要素（１）を１つ指定し、順次この形状要素（１）と各形状要素（２）の間の距離を算出（測定）する場合の例について説明する。形状値情報算出部１３が判別した算出対象種別が、長さ寸法である場合（ステップＳＴ２１０、長さ寸法）、使用者の所望の形状要素（寸法を測定したい部位の形状要素）として、３次元形状の表示画面上で１つめの形状要素（１）と２つめの形状要素（２）が使用者に指定される。この１つめの形状要素（１）と２つめの形状要素（２）は、指示入力部１５（マウスなど）から使用者によって指定される。１つめの形状要素（１）が長さ寸法を算出する際に基準となる形状要素である。
【００４２】
１つめの形状要素（１）は、指示入力部１５から形状値情報算出部１３へ送られる。形状値情報算出部１３は、指定された形状要素（１）を、３次元形状の表示画面上に設定する（ステップＳＴ２２０）。具体的には、形状値情報算出部１３は、表示部１６が表示している３次元形状の中から、指定された形状要素（１）に対応するデータを抽出しておく。形状値情報算出部１３は、表示部１６が表示している３次元形状の中から、指定された形状要素（１）の箇所を表示部１６にハイライト表示させる（ステップＳＴ２３０）。
【００４３】
また、２つめの形状要素（２）は、指示入力部１５から形状値情報算出部１３へ送られる。形状値情報算出部１３は、指定された形状要素（２）を、３次元形状の表示画面上に設定する（ステップＳＴ２４０）。具体的には、形状値情報算出部１３は、表示部１６が表示している３次元形状の中から、指定された形状要素（２）に対応するデータを抽出しておく。形状値情報算出部１３は、表示部１６が表示している３次元形状の中から、指定された形状要素（２）の箇所を表示部１６にハイライト表示させる（ステップＳＴ２５０）。
【００４４】
形状値情報算出部１３は、形状要素（１）と形状要素（２）との間の長さ寸法に関する形状値情報を内部演算によって算出する（ステップＳＴ２６０）。形状値情報算出部１３は、形状値情報として、例えば測定対象となる点同士（点間）の座標成分の差分値や、同一平面内または空間に位置する点間の距離などを算出する。形状値情報算出部１３は、算出した形状値情報を、ダイアログ（形状値情報ダイアログ）として表示部１６に表示させる（ステップＳＴ２７０）。
【００４５】
この後、情報処理装置１に長さ寸法の算出処理を続行させる場合には、使用者によって指示入力部１５から長さ寸法の算出処理を続行させることを示す指示情報が入力される。この指示情報は、指示入力部１５から形状値情報算出部１３に送られる。
【００４６】
形状値情報算出部１３は、指示入力部１５からの指示情報に基づいて、長さ寸法の算出処理を続行するか否かを判断する（ステップＳＴ２８０）。形状値情報算出部１３は、長さ寸法の算出処理を続行すると判断した場合（ステップＳＴ２８０、Ｙｅｓ）、長さ寸法を算出する際に基準となっていない方の形状要素（２）のハイライト表示を表示部１６にキャンセルさせる（ステップＳＴ２８５）。
【００４７】
そして、形状値情報算出部１３は、ステップＳＴ２４０〜ＳＴ２８５の処理を行なう。長さ寸法の算出処理を続行する場合、使用者によって指示入力部１５から新たな形状要素（２）が入力される。この新たな形状要素（２）は、指示入力部１５から形状値情報算出部１３に送られる。
【００４８】
形状値情報算出部１３は、新たに指定された形状要素（２）を、３次元形状の表示画面上に設定し、指定された新たな形状要素（２）の箇所を表示部１６にハイライト表示させる（ステップＳＴ２４０，ＳＴ２５０）。
【００４９】
そして、形状値情報算出部１３は、形状要素（１）と形状要素（２）との間の長さ寸法に関する形状値情報を内部演算によって算出し、算出した形状値情報を、形状値情報ダイアログとして表示部１６に表示させる（ステップＳＴ２６０，ＳＴ２７０）。
【００５０】
長さ寸法の算出処理を続行させないことを示す指示情報（算出終了の指示）が、使用者によって指示入力部１５に入力されるまで、形状値情報算出部１３はステップＳＴ２４０〜ＳＴ２８５の処理を繰り返す。算出終了の指示が、使用者によって指示入力部１５に入力されると（ステップＳＴ２８０、Ｎｏ）、情報処理装置１は長さ寸法の算出処理を終了する。
【００５１】
（算出対象種別が座標値の場合）
形状値情報算出部１３が判別した算出対象種別が、座標値である場合（ステップＳＴ２１０、座標値）、寸法を測定したい部位の種類として、座標値を求める点の種類（例えば、端点、中間点、中心点など）が使用者に指定される。また、寸法を測定したい部位の形状要素（位置）が３次元形状の表示画面上で使用者に指定される。
【００５２】
使用者に指定されて算出対象となる点の種類と形状要素は、使用者によって指示入力部１５（マウスなど）から指定され、指示入力部１５から形状値情報算出部１３へ送られる。形状値情報算出部１３は、指定された点の種類を記憶（設定）する（ステップＳＴ２９０）。また、形状値情報算出部１３は、指定された形状要素を３次元形状の表示画面上に設定する（ステップＳＴ３００）。具体的には、形状値情報算出部１３は、表示部１６が表示している３次元形状の中から、指定された形状要素に対応するデータを抽出しておく。
【００５３】
形状値情報算出部１３は、表示部１６が表示している３次元形状の中から、指定された形状要素の箇所を表示部１６にハイライト表示させる（ステップＳＴ３１０）。形状値情報算出部１３は、指定された形状要素に関連する形状値情報であって、指定された種類の点の形状値情報（点の座標値）を内部演算により算出する（ステップＳＴ３２０）。
【００５４】
形状値情報算出部１３は、算出した点の座標値（形状値情報）に対応する位置（点）を、表示部１６に３次元形状の表示画面上でハイライト表示させる（ステップＳＴ３３０）。形状値情報算出部１３は、算出した点をハイライト表示させると、形状要素のハイライト表示を表示部１６にキャンセルさせる（ステップＳＴ３４０）。そして、形状値情報算出部１３は、算出した形状値情報を、ダイアログ（形状値情報ダイアログ）として表示部１６に表示させる（ステップＳＴ３５０）
【００５５】
この後、情報処理装置１に座標値の算出処理を続行させる場合には、使用者によって指示入力部１５から座標値の算出処理を続行させることを示す指示情報が入力される。この指示情報は、指示入力部１５から形状値情報算出部１３に送られる。
【００５６】
形状値情報算出部１３は、指示入力部１５からの指示情報に基づいて、座標値の算出処理を続行するか否かを判断する（ステップＳＴ３６０）。形状値情報算出部１３は、座標値の算出処理を続行すると判断した場合（ステップＳＴ３６０、Ｙｅｓ）、ステップＳＴ２９０〜ＳＴ３６０の処理を行なう。座標値の算出処理を続行する場合、使用者によって指示入力部１５から新たな点の種類と新たな形状要素が入力される。この新たな点の種類と形状要素は、指示入力部１５から形状値情報算出部１３に送られる。
【００５７】
形状値情報算出部１３は、指定された点の種類を記憶するとともに、指定された形状要素を３次元形状の表示画面上に設定する（ステップＳＴ２９０，ＳＴ３００）。そして、形状値情報算出部１３は、指定された形状要素の箇所を表示部１６にハイライト表示させる（ステップＳＴ３１０）。
【００５８】
形状値情報算出部１３は、指定された形状要素に関連する形状値情報であって、指定された種類の点の形状値情報を算出する（ステップＳＴ３２０）。形状値情報算出部１３は、算出した点の座標値に対応する点を、表示部１６に３次元形状の表示画面上でハイライト表示させるとともに、表示部１６に形状要素のハイライト表示をキャンセルさせる（ステップＳＴ３３０，ＳＴ３４０）。そして、形状値情報算出部１３は、算出した形状値情報を、ダイアログとして表示部１６に表示させる（ステップＳＴ３５０）。
【００５９】
座標値の算出処理を続行させないことを示す指示情報（算出終了の指示）が、使用者によって指示入力部１５に入力されるまで、形状値情報算出部１３はステップＳＴ２９０〜ＳＴ３６０の処理を繰り返す。算出終了の指示が、使用者によって指示入力部１５に入力されると（ステップＳＴ３６０、Ｎｏ）、情報処理装置１は座標値の算出処理を終了する。
【００６０】
なお、図５では、算出対象となる点の種類を設定した後、算出対象となる形状要素の設定とハイライト表示を行なったが、算出対象となる形状要素の設定とハイライト表示を行なった後に算出対象となる点の種類を設定してもよい。換言すると、算出対象となる点の種類の設定は、形状値情報を算出する前に設定しておけばよい。
【００６１】
（算出対象種別が角度寸法の場合）
基準となる形状要素（３）を１つ指定し、順次この形状要素（３）と各形状要素（４）の間でなす角度を算出（測定）する場合の例について説明する。形状値情報算出部１３が判別した算出対象種別が、角度寸法である場合（ステップＳＴ２１０、角度寸法）、使用者の所望の形状要素として、３次元形状の表示画面上で１つめの形状要素（３）と２つめの形状要素（４）が使用者に指定される。この１つめの形状要素（３）と２つめの形状要素（４）は、指示入力部１５（マウスなど）から使用者によって指定される。１つめの形状要素（３）が角度寸法を算出する際に基準となる形状要素である。
【００６２】
１つめの形状要素（３）は、指示入力部１５から形状値情報算出部１３へ送られる。形状値情報算出部１３は、指定された形状要素（３）を、３次元形状の表示画面上に設定する（ステップＳＴ３７０）。具体的には、形状値情報算出部１３は、表示部１６が表示している３次元形状の中から、指定された形状要素（３）に対応するデータを抽出しておく。形状値情報算出部１３は、表示部１６が表示している３次元形状の中から、指定された形状要素（３）の箇所を表示部１６にハイライト表示させる（ステップＳＴ３８０）。
【００６３】
また、２つめの形状要素（４）は、指示入力部１５から形状値情報算出部１３へ送られる。形状値情報算出部１３は、指定された形状要素（４）を、３次元形状の表示画面上に設定する（ステップＳＴ３９０）。具体的には、形状値情報算出部１３は、表示部１６が表示している３次元形状の中から、指定された形状要素（４）に対応するデータを抽出しておく。形状値情報算出部１３は、表示部１６が表示している３次元形状の中から、指定された形状要素（４）の箇所を表示部１６にハイライト表示させる（ステップＳＴ４００）。
【００６４】
形状値情報算出部１３は、形状要素（３）と形状要素（４）との間の角度寸法に関する形状値情報を内部演算によって算出する（ステップＳＴ４１０）。形状値情報算出部１３は、形状値情報として、例えば、形状要素（３）と形状要素（４）とがなす角度などを算出する。形状値情報算出部１３は、算出した形状値情報を、ダイアログ（形状値情報ダイアログ）として表示部１６に表示させる（ステップＳＴ４２０）。
【００６５】
この後、情報処理装置１に角度寸法の算出処理を続行させる場合には、使用者によって指示入力部１５から角度寸法の算出処理を続行させることを示す指示情報が入力される。この指示情報は、指示入力部１５から形状値情報算出部１３に送られる。
【００６６】
形状値情報算出部１３は、指示入力部１５からの指示情報に基づいて、角度寸法の算出処理を続行するか否かを判断する（ステップＳＴ４３０）。形状値情報算出部１３は、角度寸法の算出処理を続行すると判断した場合（ステップＳＴ４３０、Ｙｅｓ）、角度寸法を算出する際に基準となっていない方の形状要素（４）のハイライト表示を表示部１６にキャンセルさせる（ステップＳＴ４３５）。
【００６７】
そして、形状値情報算出部１３は、ステップＳＴ３９０〜ＳＴ４３５の処理を行なう。角度寸法の算出処理を続行する場合、使用者によって指示入力部１５から新たな形状要素（４）が入力される。この新たな形状要素（４）は、指示入力部１５から形状値情報算出部１３に送られる。
【００６８】
形状値情報算出部１３は、新たに指定された形状要素（４）を、３次元形状の表示画面上に設定し、指定された新たな形状要素（４）の箇所を表示部１６にハイライト表示させる（ステップＳＴ３９０，ＳＴ４００）。
【００６９】
そして、形状値情報算出部１３は、形状要素（３）と形状要素（４）との間の角度寸法に関する形状値情報を内部演算によって算出し、算出した形状値情報を、形状値情報ダイアログとして表示部１６に表示させる（ステップＳＴ４１０，ＳＴ４２０）。
【００７０】
角度寸法の算出処理を続行させないことを示す指示情報（算出終了の指示）が、使用者によって指示入力部１５に入力されるまで、形状値情報算出部１３はステップＳＴ３９０〜ＳＴ４３５の処理を繰り返す。算出終了の指示が、使用者によって指示入力部１５に入力されると（ステップＳＴ４３０、Ｎｏ）、情報処理装置１は角度寸法の算出処理を終了する。
【００７１】
このように、算出対象が長さ寸法の場合は、２つの形状要素間の各座標成分の差分や距離などが形状値情報として算出される。また、算出対象が座標値の場合は、指定された形状要素に関連する点の座標値などが形状値情報として算出される。さらに、算出対象が座標値であって、指定され形状要素が円弧エッジに関する場合は、直径または半径などが形状値情報として算出される。また、算出対象が角度寸法の場合は、２つの形状要素がなす角の大きさなどが形状値情報として算出される。
【００７２】
ここで、図６〜図８を参照して形状値情報の算出処理を説明する。なお、以下でのエッジは、曲線、直線、線分などの線形状を示している。図６は、長さ寸法の算出処理を説明するための図である。図６ではエッジ１２２Ｅとエッジ１２３Ｅの２つの形状要素に関する寸法値情報（長さ寸法）を算出する場合の例を示している。
【００７３】
形状値情報算出部１３は、まずエッジ１２２Ｅとエッジ１２３Ｅとの間が最短距離となる点１２４と点１２５を求める。点１２４がエッジ１２２Ｅ上の点であり、点１２５がエッジ１２３Ｅ上の点である。
【００７４】
形状値情報算出部１３は、点１２４と点１２５を求めると、点１２４と点１２５との最短距離となる線１２６に関する形状値情報（長さ寸法）を算出する。そして、表示画面上の３次元形状上に線１２６を表示させるとともに、線１２６に関する形状値情報を表示画面上（形状値情報ダイアログ）に表示させる。
【００７５】
図６では、２つのエッジ１２２Ｅとエッジ１２３Ｅとの間の長さ寸法の算出処理について説明したが、この他にも寸法値情報の算出対象となる形状要素の組合せは種々ある。例えば、点と点との間の長さ寸法、点とエッジとの間の長さ寸法、点と面との間の長さ寸法、エッジと面との間の長さ寸法、面と面との間の長さ寸法などが寸法値情報の算出対象となる。
【００７６】
図７は、座標値の算出処理を説明するための図である。図７ではエッジ１１２Ｅの形状要素に関する点（エッジ１１２Ｅ上の中間点）の座標値情報を算出する場合の例を示している。
【００７７】
形状値情報算出部１３は、エッジ１１２Ｅの端点１１３Ｐ，１１４Ｐの中間位置となる点１１５を寸法値情報として算出する。点１１５は、エッジ１１２Ｅ上の点である。形状値情報算出部１３は、表示画面上の３次元形状上に算出した点１１５を表示させるとともに、点１１５に関する形状値情報を表示画面上（形状値情報ダイアログ）に表示させる。
【００７８】
図７では、エッジ１１２Ｅ上の中間点（座標値）の算出処理について説明したが、この他にも寸法値情報の算出対象となる形状要素（座標値）は種々ある。例えば、端点の座標値や中心点の座標値などが寸法値情報の算出対象となる。
【００７９】
図８は、角度寸法の算出処理を説明するための図である。図８ではエッジ１３２Ｅと面１３３Ｆの２つの形状要素に関する寸法値情報（角度寸法）を算出する場合の例を示している。
【００８０】
形状値情報算出部１３は、エッジ１３２Ｅと面１３３Ｆがなす角１３４に関する形状値情報（角度寸法）を算出する。形状値情報算出部１３は、表示画面上の３次元形状上に角１３４を表示させるとともに、角１３４に関する形状値情報を表示画面上に表示させる。
【００８１】
図８では、エッジ１３２Ｅと面１３３Ｆとがなす角度の角度寸法の算出処理について説明したが、この他にも形状値情報の算出対象となる形状要素の組合せは種々ある。例えば、エッジとエッジがなす角度寸法、面と面がなす角度寸法、所定方向に限定した点の角度など（後述の加工軸と特徴点のなす角度など）が形状値情報の算出対象となる。
【００８２】
図９〜図１１は、形状値情報の表示例を示す図である。図９は、２つの形状要素間の長さ寸法の値の表示例として形状値情報ダイアログ２１１ａを示し、図１０は、点の座標値の表示例として形状値情報ダイアログ２１１ｂを示し、図１１は、２つの形状要素間の角度寸法の値の表示例として形状値情報ダイアログ２１１ｃを示している。
【００８３】
本実施の形態では、形状値情報ダイアログ２１１ａ〜２１１ｃが、ＮＣプログラムの表示形式に応じた形状値情報を表示する。形状値情報ダイアログ２１１ａ〜２１１ｃは、例えばＮＣプログラムで用いられている座標系（直交座標系や極座標系など）、この座標系での座標値、座標軸の傾き、座標原点などを表示する。
【００８４】
つぎに、ステップＳＴ６０の処理（形状値情報の表示処理）について説明する。図１２は、形状値情報の表示処理手順を示すフローチャートである。本実施の形態では、使用者が指示入力部１５に入力する指示情報に基づいて、形状値情報を確認するための画面（確認用画面）に、確認対象となる形状要素（３次元形状上の位置）ハイライト表示させるとともに、この形状要素に対応する形状値情報を形状値情報ダイアログで反転表示させる。表示部１６は、例えば３次元形状の表示画面と形状値情報ダイアログとをリンクさせて表示する。
【００８５】
形状値情報算出部１３は、表示部１６が表示している３次元形状の形状値情報（形状要素）に基づいて、この形状値情報の種類（以下、確認対象種別という）を判別する（ステップＳＴ５１０）。
【００８６】
（確認対象種別が座標値の場合）
形状値情報算出部１３が判別した確認対象種別が、座標値である場合（ステップＳＴ５１０、座標値）、形状値情報ダイアログに表示されている形状値情報（座標値）に対応する各点（１〜複数）が３次元形状の表示画面上でハイライト表示されている。
【００８７】
３次元形状の画面上でハイライト表示されている点の１つを指示入力部１５（マウス等）によって使用者が指定すると、指定された点（指定点）の情報が指示入力部１５から形状値情報算出部１３に入力される（ステップＳＴ５２０）。形状値情報算出部１３は、この指定点を３次元形状の画面上でハイライト表示させ（ステップＳＴ５３０）、ハイライト表示されていた他の点のハイライト表示をキャンセルする。そして、形状値情報算出部１３は、３次元形状の画面上でハイライト表示させた点（指示入力部１５から指定された点）に関する形状値情報（算出値）を形状値情報ダイアログで反転表示させる（ステップＳＴ５４０）。この後、情報処理装置１に他の新たな座標値の表示処理（反転表示）を継続して行なわせる場合には、使用者によって指示入力部１５から座標値寸法の表示処理を続行させることを示す指示情報が入力される。この指示情報は、指示入力部１５から形状値情報算出部１３に送られる。
【００８８】
形状値情報算出部１３は、指示入力部１５からの指示情報に基づいて、座標値の表示処理を続行するか否かを判断する（ステップＳＴ５５０）。形状値情報算出部１３は、座標値の表示処理を続行すると判断した場合（ステップＳＴ５５０、Ｙｅｓ）、３次元形状の表示画面上でハイライト表示されている指定点のハイライト表示を表示部１６にキャンセルさせる（ステップＳＴ５６０）。さらに、形状値情報算出部１３は、ハイライト表示をキャンセルした指定点に関する形状値情報（算出値）の形状値情報ダイアログ上での反転表示をキャンセルする（ステップＳＴ５６５）。
【００８９】
そして、形状値情報算出部１３は、ステップＳＴ５２０〜ＳＴ５５０の処理を行なう。この後、他の新たな座標値の表示処理を行なわないことを示す指示情報（終了の指示）が使用者によって指示入力部１５に入力されるまで、形状値情報算出部１３はステップＳＴ５２０〜ＳＴ５６５の処理を繰り返す。反転表示の終了指示が、使用者によって指示入力部１５に入力されると（ステップＳＴ５５０、Ｎｏ）、情報処理装置１は新たな反転表示は行なわない。
【００９０】
（確認対象種別が長さ寸法または角度寸法の場合）
形状値情報算出部１３が判別した確認対象種別が、長さ寸法または角度寸法である場合（ステップＳＴ５１０、長さ寸法または角度寸法）、形状値情報ダイアログには形状値情報が反転表示されている。さらに、この反転表示されている形状値情報に関連している２つの形状要素（形状値情報の算出に用いた形状要素）が３次元形状の表示画面上でハイライト表示されている。
【００９１】
形状値情報ダイアログ上に表示されている形状値情報を指示入力部１５（マウス等のカーソル移動）によって使用者が指定すると、指定された形状値情報が指示入力部１５から形状値情報算出部１３に入力される（ステップＳＴ５７０）。
【００９２】
形状値情報算出部１３は、指示入力部１５からの形状値情報（カーソルを移動させた形状値情報）を形状値情報ダイアログ上で反転表示させる（ステップＳＴ５８０）。形状値情報算出部１３は、反転表示させた形状値情報に関連する２つの形状要素を、３次元形状の表示画面上でハイライト表示させる（ステップＳＴ５９０）。
【００９３】
この後、情報処理装置１に他の新たな長さ寸法または角度寸法の表示処理（ハイライト表示）を継続して行なわせる場合には、使用者によって指示入力部１５から長さ寸法または角度寸法の表示処理を続行させることを示す指示情報が入力される。この指示情報は、指示入力部１５から形状値情報算出部１３に送られる。
【００９４】
形状値情報算出部１３は、指示入力部１５からの指示情報に基づいて、長さ寸法または角度寸法の表示処理を続行するか否かを判断する（ステップＳＴ６００）。形状値情報算出部１３は、長さ寸法または角度寸法を続行すると判断した場合（ステップＳＴ６００、Ｙｅｓ）、形状値情報ダイアログ上で反転表示されている形状値情報の反転表示を表示部１６にキャンセルさせる（ステップＳＴ６１０）。さらに、形状値情報算出部１３は、反転表示をキャンセルした形状値情報に対応する各形状要素の、３次元形状の表示画面上でのハイライト表示をキャンセルする（ステップＳＴ６２０）。
【００９５】
そして、形状値情報算出部１３は、ステップＳＴ５７０〜ＳＴ６２０の処理を行なう。この後、他の新たな長さ寸法または角度寸法の表示処理を行なわないことを示す指示情報（終了の指示）が使用者によって指示入力部１５に入力されるまで、形状値情報算出部１３は、ステップＳＴ５７０〜ＳＴ６２０の処理を繰り返す。ハイライト表示の終了指示が、使用者によって指示入力部１５に入力されると（ステップＳＴ６００、Ｎｏ）、情報処理装置１は新たなハイライト表示は行なわない。
【００９６】
なお、形状値情報算出部１３は、ステップＳＴ５６０の処理とステップＳＴ５６５の処理とを何れの順番で行ってもよい。すなわち、形状値情報算出部１３は、指定点のハイライト表示のキャンセルと、形状値情報の反転表示のキャンセルとを、どちらを先に行ってもよい。
【００９７】
また、形状値情報算出部１３は、ステップＳＴ６１０の処理とステップＳＴ６２０の処理とを何れの順番で行ってもよい。すなわち、形状値情報算出部１３は、形状値情報の反転表示のキャンセルと、各形状要素のハイライト表示のキャンセル、とをどちらを先に行ってもよい。
【００９８】
ここで、３次元表示画面の表示例と、形状値情報ダイアログの表示例について説明する。図１３〜図１５は、３次元表示画面と形状値情報ダイアログの表示例を示す図である。図１３は、形状要素のハイライト表示と形状値情報の反転表示を行なっていない場合の３次元形状の表示画面（３次元表示画面１４０）と形状値情報ダイアログ２２１ａを示している。
【００９９】
３次元表示画面１４０には、３次元形状１４２、端点１４３、端点１４４、中心点１４５が表示されている。この場合の形状値情報ダイアログ２２１ａには、端点１４３の形状値情報２２２、端点１４４の形状値情報２２３、中心点１４５の形状値情報２２４が表示される。
【０１００】
図１４は、形状値情報の確認モード中に端点１４４が指定された場合の３次元表示画面１５０と形状値情報ダイアログ２２１ｂを示している。端点１４４が指定された場合、３次元表示画面１５０では指定された端点１４４がハイライト表示される。この場合の形状値情報ダイアログ２２１ｂには、端点１４４の形状値情報２２５が反転表示される。
【０１０１】
図１５は、形状値情報の確認モード中に中心点１４５が指定された場合の３次元表示画面１６０と形状値情報ダイアログ２２１ｃを示している。中心点１４５が指定された場合、３次元表示画面１６０では指定された中心点１４５がハイライト表示される。この場合の形状値情報ダイアログ２２１ｃには、中心点１４５の形状値情報２２６が反転表示される。
【０１０２】
なお、図１３〜図１５で示した点のハイライト表示や形状値情報の反転表示は表示方法の一例であり、使用者が指定した点や形状値情報と、その他の点や形状値情報とを、使用者が区別できる何れの表示方法で表示してもよい。
【０１０３】
つぎに、ステップＳＴ７０の処理（ＮＣプログラムへの反映処理）について説明する。図１６は、形状値情報のＮＣプログラムへの反映処理手順を示すフローチャートである。表示部１６が形状値情報ダイアログに形状値情報を表示しているときに、指示入力部１５から形状値情報のＮＣプログラムへの反映指示が入力されると、この反映指示はＮＣプログラム作成部２に送られる。
【０１０４】
ＮＣプログラム作成部２のＮＣプログラム反映部２２は、形状値情報に対応するＮＣプログラムをＮＣプログラム記憶部２１から抽出し、ＮＣプログラム画面（後述のＮＣプログラムエディタ画面３０１）として表示部１６に表示させる。
【０１０５】
ＮＣプログラム画面上で、指示入力部１５から使用者が形状値情報を反映させたいＮＣプログラムの位置を指定（カーソルの移動指示）すると、表示部１６では指定されたＮＣプログラム画面上の位置にカーソルを移動（表示）させる（ステップＳＴ７００）。
【０１０６】
形状値情報ダイアログ上で、指示入力部１５から使用者が反映させたい形状値情報の位置を指定（カーソルの移動指示）すると、表示部１６では指定された形状値情報ダイアログ上の位置にカーソルを移動（表示）させる（ステップＳＴ７１０）。
【０１０７】
使用者がＮＣプログラムに形状値情報を反映させるコマンド（プログラム反映コマンド）を入力すると、このコマンドはＮＣプログラム反映部２２に入力される（ステップＳＴ７２０）。
【０１０８】
ＮＣプログラム反映部２２は、ＮＣプログラム画面上でカーソルによって示された位置にあるＮＣプログラム（データ）の属性と、形状値情報ダイアログ上でカーソルによって示された位置にある形状値情報の属性とを比較して、これらの属性が一致するか否かを判断する（ステップＳＴ７３０）。ＮＣプログラム反映部２２は、例えばデータの属性が穴径どうしであるか否か、穴深さどうしであるか否か、面とりどうしであるか否か、などの加工の形状値情報であるか否かや、データの属性が（Ｘ，Ｙ，Ｚ）などの座標値どうしであるか否かなどを判断する。
【０１０９】
ＮＣプログラムの属性と形状値情報の属性とが一致する場合（ステップＳＴ７３０、Ｙｅｓ）、ＮＣプログラム反映部２２は、形状値情報ダイアログ上のカーソル位置にある形状値情報を、ＮＣプログラム画面上のカーソル位置にあるＮＣプログラムに入力（反映）する。これによりＮＣプログラム反映部２２は、ＮＣプログラム記憶部２１ＮＣプログラムを、形状値情報を反映した新たなＮＣプログラムに更新する（ステップＳＴ７４０）。
【０１１０】
一方、ＮＣプログラムの属性と形状値情報の属性とが一致しない場合（ステップＳＴ７３０、Ｎｏ）、ＮＣプログラム反映部２２は、ＮＣプログラム側へのデータの設定（形状値情報の反映）は行なわない。
【０１１１】
この後、情報処理装置１に形状値情報のＮＣプログラムへの反映処理を続行させる場合には、使用者によって指示入力部１５から形状値情報の反映処理を続行させることを示す指示情報が入力される。この指示情報は、指示入力部１５からＮＣプログラム反映部２２に送られる。
【０１１２】
そして、ＮＣプログラム反映部２２は、ステップＳＴ７００〜ＳＴ７５０の処理を行なう。この後、形状値情報の反映処理を続行しないことを示す指示情報（終了の指示）が使用者によって指示入力部１５に入力されるまで、ＮＣプログラム反映部２２は、ステップＳＴ７００〜ＳＴ７５０の処理を繰り返す。形状値情報の反映処理の終了指示が、使用者によって指示入力部１５に入力されると（ステップＳＴ７５０、Ｎｏ）、情報処理装置１は形状値情報のＮＣプログラムへの反映処理を終了する。
【０１１３】
図１７は、形状値情報のＮＣプログラムへの反映処理を説明するための図である。形状値情報をＮＣプログラムへ反映させる際には、ＮＣプログラムエディタ画面３０１で、形状値情報を反映させたいＮＣプログラムの位置にカーソル３０２が移動させられる（ｓ１）。
【０１１４】
また、形状値情報ダイアログ２３０で、ＮＣプログラムエディタ画面３０１に反映させたい形状値情報２３１の位置にカーソルが移動させられることによって形状値情報２３１は反転表示させられる（ｓ２）。
【０１１５】
反映ボタンがクリック（プログラム反映コマンドが入力）されると、形状値情報２３１の情報が、ＮＣプログラムエディタ画面３０１に反映され、反映後のＮＣプログラムエディタ画面３０３に形状値情報３０４が表示される（ｓ３）。
【０１１６】
つぎに、図５で説明した長さ寸法に関する形状値情報の算出処理（ステップＳＴ２６０）、座標値に関する形状値情報の算出処理（ステップＳＴ３２０）、角度寸法に関する形状値情報の算出処理（ステップＳＴ４１０）をそれぞれ詳細に説明する。
【０１１７】
図１８は、座標値に関する形状値情報の算出処理手順を示すフローチャートである。形状値情報算出部１３は、図５のステップＳＴ２９０の処理で設定した点（以下、特徴点という）の種類に応じた形状値情報（座標値）の算出処理を行なう。まず、形状値情報算出部１３は、特徴点の種類を判別する（ステップＳＴ８００）。特徴点の種類には、例えば端点、中間点、第１の中心点、第２の中心点、法線点、最近接点、象限点などがある。
【０１１８】
端点は、形状要素が開いたエッジである場合の、エッジの始点または終点である。中間点は、形状要素が開いたエッジの場合の、エッジの始点と終点の中間にある点である。第１の中心点は、形状要素が円弧エッジの場合の、エッジの中心点である。第２の中心点は、形状要素が穴の開いた曲面の場合に、穴が開く前の曲面領域内で、且つその曲面上で最も突出した位置に対応する点である。
【０１１９】
法線点は、形状要素がエッジまたは面の場合に、任意の点を基準としてその点から形状要素に下ろした垂線の足に対応する点である。最近接点は、形状要素がエッジまたは面の場合に、任意の点を基準としてその点から形状要素に対して最短距離にある点である。象限点は、形状要素が円弧エッジ、球面、トーラス面など断面に円弧を含む面の場合に、その円弧形状の各象限に対応する領域の境界上にある点である。なお、これらの点以外にもなんらかの特徴を持つ点や、特徴点どうしの幾何演算により求められる点を形状値情報の算出対象としてもよい。
【０１２０】
形状値情報算出部１３が、特徴点の種類は「端点」であると判断した場合（ステップＳＴ８００、端点）、形状値情報算出部１３は端点（エッジの始点または終点）の位置を算出する（ステップＳＴ８１０）。
【０１２１】
形状値情報算出部１３が、特徴点の種類は「中間点」であると判断した場合（ステップＳＴ８００、中間点）、形状値情報算出部１３は中間点の位置を算出する（ステップＳＴ８２０）。具体的には、形状値情報算出部１３は開いたエッジが持つカーブのインターバル値（始点から終点までの区間パラメータ）を求め、そのパラメータの平均値に対応する位置にある点を中間点とする。なお、中間点は端点間の途中の位置にある点であり、直線エッジや円弧エッジ以外の場合には、必ずしもエッジ長の中間に位置する点になるとは限らない。
【０１２２】
形状値情報算出部１３が、特徴点の種類は「第１の中心点」であると判断した場合（ステップＳＴ８００、第１の中心点）、形状値情報算出部１３は第１の中心点の位置を算出する（ステップＳＴ８３０）。具体的には、形状値情報算出部１３は、円弧エッジや円柱面・円筒面の中心に位置する点を第１の中心点とする。円柱面や円錐面の場合、形状値情報算出部１３は、円柱面や円錐面の中心軸方向で最大値・最小値をとる円柱面上や円錐面上の点（極値点）を求め、極値点から中心軸に下ろした垂線の足を第１の中心点とする。
【０１２３】
形状値情報算出部１３が、特徴点の種類は「第２の中心点」であると判断した場合（ステップＳＴ８００、第２の中心点）、形状値情報算出部１３は第２の中心点の位置を算出する（ステップＳＴ８４０）。具体的には、形状値情報算出部１３は、円柱面または円錐面の穴に対して、穴の周りの面が、球面、トーラス面、円錐面の場合に、穴の周りの面の極値点を穴（円柱面または円錐面）の中心軸に下ろした点を第２の中心点とする。この場合の第２の中心点は、元の円柱面に穴を開ける前の曲面領域内で最も突出した位置にある。
【０１２４】
このような点は、例えば加工開始点に相当する点である。したがって、工作機械などで加工を行う場合には、加工開始点や加工開始の目安となる位置にある点を加工作業者は認識しておく必要がある。
【０１２５】
従来、素材形状と製品形状の情報から加工開始点を求めていたが、加工開始点は加工により除去される領域に含まれる場合が多く、素材形状や製品形状が加工開始点の情報を直接持っていなかった。このため、従来までは加工開始点を指定する作業は難しかった。本実施の形態では、形状値情報算出部１３が加工開始点（第２の中心点）を算出するので、容易に加工を開始することが可能となる。
【０１２６】
形状値情報算出部１３が、特徴点の種類は「象限点」であると判断した場合（ステップＳＴ８００、象限点）、形状値情報算出部１３は象限点の位置を算出する（ステップＳＴ８５０）。具体的には、形状値情報算出部１３は、円弧エッジ、球面、トーラス面に対して、測定座標系の、０°、９０°、１８０°、２７０°の位置にある点を象限点とする。
【０１２７】
例えば、円弧エッジの場合、測定座標系の軸が法線となる平面内の点であって円弧上にある点が象限点となる。また、球面の場合、球の中心を通る平面で測定座標系の軸が法線となる平面と、球面とが交わってできる円弧（円弧エッジ）の象限点が、球の象限点となる。また、トーラス面の場合、トーラス面の中心軸が測定座標軸と一致している場合に、中心軸を含む座標軸平面でトーラス面を切った場合の切り口（円弧）に対して、０°、９０°、１８０°、２７０°の位置にある点が象限点となる。すなわち、トーラス面の象限点は最大で１６点存在する。
【０１２８】
形状値情報算出部１３が、特徴点の種類は「法線点」であると判断した場合（ステップＳＴ８００、法線点）、形状値情報算出部１３は直近に取得した特徴点（使用者によって指定された特徴点）を基準として法線点の位置を算出する（ステップＳＴ８６０，ＳＴ８７０）。具体的には、形状値情報算出部１３は、前回指定された特徴点（今回算出対象となっている形状要素の直前に指定された点）から、エッジ（直線や円弧）、平面、円柱面の中心軸に降ろした垂線の足に位置（最短距離）する点を法線点とする。法線点は、算出に用いる形状要素（選択要素）の領域外であってもよい。算出に用いる形状要素が円弧エッジの場合、前回の特徴点と、円弧エッジが同一平面内に存在してればよい。
【０１２９】
形状値情報算出部１３が、特徴点の種類は「最近接点」であると判断した場合（ステップＳＴ８００、最近接点）、形状値情報算出部１３は直近に取得した特徴点を基準として最近接点の位置を算出する（ステップＳＴ８８０，ＳＴ８９０）。具体的には、形状値情報算出部１３は、前回指定された特徴点から、エッジ（直線や円弧）や任意の面に対して距離が最短となる頂点を最近接点とする。
【０１３０】
形状値情報算出部１３は、ステップＳＴ８１０〜ＳＴ８９０の何れかの処理で特徴点の位置を算出すると、算出した特徴点の座標に関する情報（座標値、円弧エッジの場合は直径または半径）を演算する（ステップＳＴ９００）。
【０１３１】
図１９は、長さ寸法に関する形状値情報の算出処理手順を示すフローチャートである。形状値情報算出部１３は、図５のステップＳＴ２２０の処理で設定した形状要素（１）とステップＳＴ２４０の処理で設定した形状要素（２）の組み合わせの種類に応じた形状値情報の算出処理を行なう。まず、形状値情報算出部１３は、形状要素（１）と形状要素（２）の組み合わせの種類を判別する（ステップＳＴ９１０）。算出する形状値情報が長さ寸法である場合の形状要素の組合せには、例えば点と点、点とエッジ、点と面、エッジとエッジ、面と面、エッジと面などがある。
【０１３２】
本実施の形態では、形状要素（１）と形状要素（２）を設定した順序とは関係なく、形状要素（１），（２）の組み合わせの種類に基づいて形状値情報の算出方法を場合分けする。以下、形状要素（１）と形状要素（２）の組み合わせ例に沿って説明する。
【０１３３】
形状値情報算出部１３が、形状要素どうしの組み合わせは「点とエッジ」であると判断した場合（ステップＳＴ９１０、点とエッジ）、形状値情報算出部１３は点とエッジとの間が最短距離となるエッジ上の点を算出する（ステップＳＴ９２０）。そして、形状値情報算出部１３は、算出した２点間の寸法（ＸＹＺ座標における寸法、ＸＹ座標における寸法など）を演算する（ステップＳＴ９７０）。
【０１３４】
図２０および図２１は、点とエッジとの間の最短距離を説明するための図である。図２０に示すように、点１７１からエッジ１７３上へ垂線を延ばした場合に、垂線の足がエッジ１７３上に存在する場合は、点１７１からエッジ１７３への垂線の長さ（寸法１７２）を２点間寸法とする。また、図２１に示すように、点１７１からエッジ１７３上へ垂線を延ばした場合に、垂線の足がエッジ１７３上に存在しない場合は、点１７１と、エッジ１７３の領域内に存在する点１７４と、の間の最短距離（寸法１７２）を２点間寸法とする。
【０１３５】
形状値情報算出部１３が、形状要素どうしの組み合わせは「点と面」であると判断した場合（ステップＳＴ９１０、点と面）、形状値情報算出部１３は点と面との間が最短距離となる面上の点を算出する（ステップＳＴ９３０）。そして、形状値情報算出部１３は、算出した２点間の寸法を演算する（ステップＳＴ９７０）。
【０１３６】
図２２および図２３は、点と面との間の最短距離を説明するための図である。図２２に示すように、点１７１から面１７５へ垂線を延ばした場合に、垂線の足が面１７５上に存在する場合は、点１７１から面１７５への垂線の長さ（寸法１７２）を２点間寸法とする。また、図２３に示すように、点１７１から面１７５へ垂線を延ばした場合に、垂線の足が面１７５上に存在しない場合は、点１７１と、面１７５の領域内に存在する点１７６と、の間の最短距離（寸法１７２）を２点間寸法とする。
【０１３７】
形状値情報算出部１３が、形状要素どうしの組み合わせは「エッジとエッジ」であると判断した場合（ステップＳＴ９１０、エッジとエッジ）、形状値情報算出部１３はエッジとエッジとの間が最短距離となる各エッジ上の点を算出する（ステップＳＴ９４０）。そして、形状値情報算出部１３は、算出した２点間の寸法を演算する（ステップＳＴ９７０）。
【０１３８】
図２４および図２５は、エッジとエッジとの間の最短距離を説明するための図である。図２４および図２５に示すように、一方のエッジ１７３から他方のエッジ１７３へ垂線を延ばした場合の、一方のエッジ１７３から他方のエッジ１７３への垂線の長さ（寸法１７２）を２点間寸法とする。図２４は、他方のエッジ１７３が線分を含んでいる場合の寸法１７２を示しており、図２５は、他方のエッジ１７３が曲線を含んでいる場合の寸法１７２を示している。
【０１３９】
形状値情報算出部１３が、形状要素どうしの組み合わせは「面と面」であると判断した場合（ステップＳＴ９１０、面と面）、形状値情報算出部１３は面と面との間（２面間の距離）が最短距離となる各面上の点を算出する（ステップＳＴ９５０）。そして、形状値情報算出部１３は、算出した２点間の寸法を演算する（ステップＳＴ９７０）。
【０１４０】
図２６および図２７は、面と面との間の最短距離を説明するための図である。図２６に示すように、一方の面１７５上の点１７７と、他方の面１７５上の点１７７とを結んだ直線が、一方の面１７５への垂線になるとともに他方の面１７５への垂線になる場合（両方の面１７５の垂線になる場合）の、垂線の長さ（一方の面１７５上の点１７７と、他方の面１７５上の点１７７との間の寸法１７２）を２点間寸法とする。また、図２７に示すように、一方の面１７５から他方の面１７５へ垂線を延ばした場合に、垂線の足が他方の面１７５上に存在しない場合は、一方の面１７５上の点１７７と、他方の面１７５の領域内に存在する点１７６と、の間の最短距離（寸法１７２）を２点間寸法とする。
【０１４１】
形状値情報算出部１３が、形状要素どうしの組み合わせは「エッジと面」であると判断した場合（ステップＳＴ９１０、エッジと面）、形状値情報算出部１３はエッジと面との間が最短距離となるエッジ上の点と面上の点を算出する（ステップＳＴ９６０）。そして、形状値情報算出部１３は、算出した２点間の寸法を演算する（ステップＳＴ９７０）。
【０１４２】
図２８は、エッジと面との間の最短距離を説明するための図である。図２８に示すように、面１７５の領域内に存在する点１７６と、点１７６からエッジ１７３へ垂線を延ばした場合の、点１７６からエッジ１７３への垂線の長さ（寸法１７２）を２点間寸法とする。
【０１４３】
形状値情報算出部１３が、形状要素どうしの組み合わせは「点と点」であると判断した場合（ステップＳＴ９１０、点と点）、形状値情報算出部１３は形状要素（１）と形状要素（２）の２点間の寸法を演算する（ステップＳＴ９７０）。
【０１４４】
図２９は、角度寸法に関する形状値情報の算出処理手順を示すフローチャートである。形状値情報算出部１３は、図５のステップＳＴ３７０の処理で設定した形状要素（３）とステップＳＴ３９０の処理で設定した形状要素（４）の組み合わせの種類に応じた形状値情報の算出処理を行なう。まず、形状値情報算出部１３は、形状要素（３）と形状要素（４）の組み合わせの種類を判別する（ステップＳＴ１０００）。
【０１４５】
形状値情報が角度寸法である場合に、形状要素（３）、形状要素（４）として設定できる組合せは、例えば、直線エッジどうし、平面どうし、直線エッジと平面、座標軸と特徴点などである。
【０１４６】
したがって、算出する形状値情報が角度寸法である場合の形状要素の組合せは、例えば直線エッジと直線エッジ、平面と平面、直線エッジと平面、加工軸と特徴点、加工軸と直線エッジ、加工軸と平面などである。
【０１４７】
本実施の形態では、形状要素（３）と形状要素（４）を設定した順序とは関係なく、形状要素（３），（４）の組み合わせの種類に基づいて形状値情報の算出方法を場合分けする。以下、形状要素（３）と形状要素（４）の組み合わせ例に沿って説明する。
【０１４８】
形状値情報算出部１３が、形状要素どうしの組み合わせは「直線エッジと直線エッジ」であると判断した場合（ステップＳＴ１０００、直線エッジと直線エッジ）、形状値情報算出部１３は２つの直線エッジの方向ベクトルを求め、求めたベクトル間の角度を算出する（ステップＳＴ１０１０）。図３０に示すように、形状値情報算出部１３は、直線エッジの方向ベクトルａ１と直線エッジの方向ベクトルａ２とがなす角度Ｘを２要素間（直線エッジと直線エッジ）の角度とする。
【０１４９】
形状値情報算出部１３が、形状要素どうしの組み合わせは「平面と平面」であると判断した場合（ステップＳＴ１０００、、平面と平面）、形状値情報算出部１３は２平面の法線ベクトルを求め、求めたベクトル間の角度を算出する（ステップＳＴ１０２０）。図３１に示すように、形状値情報算出部１３は、平面の法線ベクトルｂ１と平面の法線ベクトルｂ２とがなす角度Ｙを２要素間（平面と平面）の角度とする。
【０１５０】
形状値情報算出部１３が、形状要素どうしの組み合わせは「直線エッジと平面」であると判断した場合（ステップＳＴ１０００、直線エッジと平面）、形状値情報算出部１３は直線エッジの方向ベクトルと平面の法線ベクトルを求め、求めたベクトル間の角度を算出する（ステップＳＴ１０３０）。図３２や図３３に示すように、形状値情報算出部１３は、直線エッジの方向ベクトルａ３と平面の法線ベクトルｂ３との間の角度Ｚ１，Ｚ２を２要素間（直線エッジと平面）の角度とする。
【０１５１】
図３２に示すように、直線エッジの方向ベクトルａ３と平面の法線ベクトルｂ３のなす角度αが０°≦α＜９０°の場合、求める角度Ｚ１はＺ１＝９０°−αとなる。一方、図３３に示すように、直線エッジの方向ベクトルａ３と平面の法線ベクトルｂ３のなす角度αが９０°≦α＜１８０°の場合、求める角度Ｚ２はＺ２＝α−９０°となる。
【０１５２】
形状値情報算出部１３が、形状要素どうしの組み合わせは「加工軸と特徴点」であると判断した場合（ステップＳＴ１０００、加工軸と特徴点）、形状値情報算出部１３は加工軸周りでの、特徴点の位置に対応する角度を算出する（ステップＳＴ１０４０）。例えばＣ軸を選択した場合、原点と特徴点を結ぶ直線とＡ軸（プラス方向）とのなす角度が求める角度となる。
【０１５３】
形状値情報算出部１３が、形状要素どうしの組み合わせは「加工軸と直線エッジ」であると判断した場合（ステップＳＴ１０００、加工軸と直線エッジ）、形状値情報算出部１３は加工軸周りでの、直線エッジの方向ベクトルの角度を算出する（ステップＳＴ１０５０）。例えばＣ軸を選択した場合、直線エッジの方向ベクトルとＡ軸（プラス方向）とのなす角度が求める角度となる。
【０１５４】
形状値情報算出部１３が、形状要素どうしの組み合わせは「加工軸と平面」であると判断した場合（ステップＳＴ１０００、加工軸と平面）、形状値情報算出部１３は加工軸周りでの、平面の法線ベクトルの角度を算出する（ステップＳＴ１０６０）。例えばＣ軸を選択した場合、平面の法線ベクトルとＡ軸（プラス方向）とのなす角度が求める角度となる。
【０１５５】
指示入力部１５に入力される使用者からの指示に基づいて、形状値情報算出部１３が算出した形状値情報や、ＮＣプログラム反映部２２によって作成されたＮＣプログラムは、出力部１４から外部装置に出力される。
【０１５６】
なお、本実施の形態では、情報処理装置１が表示部１６を備える場合を示したが、情報処理装置１と表示部１６を別構成としてもよい。また、情報処理装置１が、ＮＣプログラム作成部２を備える構成としたが、情報処理装置１とＮＣプログラム作成部２を別構成としてもよい。また、情報処理装置１がＮＣプログラム記憶部２１を備える構成としたが、情報処理装置１とＮＣプログラム記憶部２１を別構成としてもよい。
【０１５７】
このように実施の形態によれば、使用者は座標値、寸法値、角度値などの形状値情報を計算することなく、これらの形状値情報を容易に取得することが可能となる。また、予め登録しておいた形状の情報（長さ寸法や角度寸法など）を読みだすのではなく、３次元形状の幾何情報から所望の形状値情報を算出処理するので、任意の形状値情報を取得することが可能となる。また、形状値情報を取得する際に、使用者が設定した座標系に基づいた形状値情報値を算出することが可能となる。
【０１５８】
また、使用者が設定した座標系での形状値情報を算出できるので、使用者による座標変換計算の計算ミスを軽減できる。さらに、取得した形状値情報をそのままＮＣプログラムで利用することができるので、ＮＣプログラム作成時の入力ミスが減り、ＮＣプログラムの作成および編集を容易に行なうことが可能になる。
【０１５９】
また、３次元表示画面と、取得した形状値情報を表示している表形式（形状値情報ダイアログ）と、をリンクさせて表示させることができるので、使用者は形状値情報が３次元形状内の何れの部位に対応するものであるかを容易に確認することが可能になる。
【０１６０】
また、取得した形状値情報をＮＣプログラムの種類に応じた表示形式で表示できるので、使用者が所望のプログラム表示形式に合わせて形状値情報を計算する必要がなく、計算ミスを軽減できる。さらに、プログラム表示形式に応じて表示された形状値情報をそのままＮＣプログラムで利用することができるので、ＮＣプログラム作成時の入力ミスが減り、ＮＣプログラムの作成および編集を容易に行なうことが可能になる。
【産業上の利用可能性】
【０１６１】
以上のように、本発明に係る情報処理装置および情報処理方法は、３次元形状に関する情報の算出に適している。
【図面の簡単な説明】
【０１６２】
【図１】本発明の実施の形態に係る情報処理装置の構成を示すブロック図である。
【図２】情報処理装置の動作手順を示すフローチャートである。
【図３】座標系の設定処理手順を示すフローチャートである。
【図４】座標系を設定する際に表示させる設定ダイアログを説明するための図である。
【図５】形状値情報の算出処理手順を示すフローチャートである。
【図６】長さ寸法の算出処理を説明するための図である。
【図７】座標値の算出処理を説明するための図である。
【図８】角度寸法の算出処理を説明するための図である。
【図９】長さ寸法の値の表示例を示す図である。
【図１０】点の座標値の表示例を示す図である。
【図１１】角度寸法の値の表示例を示す図である。
【図１２】形状値情報の表示処理手順を示すフローチャートである。
【図１３】３次元表示画面と形状値情報ダイアログの表示例を示す図（１）である。
【図１４】３次元表示画面と形状値情報ダイアログの表示例を示す図（２）である。
【図１５】３次元表示画面と形状値情報ダイアログの表示例を示す図（３）である。
【図１６】形状値情報のＮＣプログラムへの反映処理手順を示すフローチャートである。
【図１７】形状値情報のＮＣプログラムへの反映処理を説明するための図である。
【図１８】座標値に関する形状値情報の算出処理手順を示すフローチャートである。
【図１９】長さ寸法に関する形状値情報の算出処理手順を示すフローチャートである。
【図２０】点とエッジとの間の最短距離を説明するための図（１）である。
【図２１】点とエッジとの間の最短距離を説明するための図（２）である。
【図２２】点と面との間の最短距離を説明するための図（１）である。
【図２３】点と面との間の最短距離を説明するための図（２）である。
【図２４】エッジとエッジとの間の最短距離を説明するための図（１）である。
【図２５】エッジとエッジとの間の最短距離を説明するための図（２）である。
【図２６】面と面との間の最短距離を説明するための図（１）である。
【図２７】面と面との間の最短距離を説明するための図（２）である。
【図２８】エッジと面との間の最短距離を説明するための図である。
【図２９】角度寸法に関する形状値情報の算出処理手順を示すフローチャートである。
【図３０】直線エッジの方向ベクトルと直線エッジの方向ベクトルとがなす角度を示す図である。
【図３１】平面の法線ベクトルと平面の法線ベクトルとがなす角度を示す図である。
【図３２】直線エッジの方向ベクトルと平面の法線ベクトルとがなす角度を示す図である。
【図３３】直線エッジの方向ベクトルと平面の法線ベクトルとがなす角度を示す図である。
【符号の説明】
【０１６３】
１  情報処理装置
２  プログラム作成部
１１  次元形状入力部
１２  座標系設定部
１３  形状値情報算出部
１４  出力部
１５  指示入力部
１６  表示部
１９  制御部
２１  ＮＣプログラム記憶部
２２  ＮＣプログラム反映部
１１２Ｅ，１２２Ｅ，１２３Ｅ，１３２Ｅ，１７３  エッジ
１１３Ｐ，１１４Ｐ，１４３，１４４  端点
１１５，１２４，１２５，１７１，１７４，１７６，１７７  点
１２６  線
１３３Ｆ，１７５  面
１３４  角
１４０，１５０，１６０  ３次元表示画面
１４２  ３次元形状
１４５  中心点
２０１，２０３，２０４  設定ダイアログ
２１１ａ〜２１１ｃ，２１１ａ〜２２１ｃ，２３０  形状値情報ダイアログ
２２２〜２２６，２３１，３０４  形状値情報
３０１，３０２  プログラムエディタ画面
３０２  カーソル
ａ１〜ａ３  方向ベクトル
ｂ１〜ｂ３  法線ベクトル
Ｘ，Ｙ，Ｚ１，Ｚ２  角度
【国際調査報告】
2009008072.tif 000037
2009008072.tif 000038
2009008072.tif 000039