(57)【特許請求の範囲】
【請求項１】
三次元形状データによって特定される立体形状を画面表示する形状表示手段と、
前記形状表示手段が表示する画面上にて前記立体形状を成形加工する際の抜き方向を指定する方向指定手段と、
前記形状表示手段が表示する画面上にて前記立体形状における凸状に形成されたリブ部分の一構成面を利用者が指定する面指定手段と、
前記方向指定手段で指定された抜き方向と前記面指定手段で指定された一構成面の座標とから、前記リブ部分の高さｈ、先端幅ｗ１、根元幅ｗ２と根元肉厚ｔとの比ｗ２／ｔ、及び、側面の勾配θからなる形状寸法値を算出する寸法算出手段と、
前記寸法算出手段が算出した形状寸法値を所定規格値と比較して当該形状寸法値を有する前記形状部分が所定形状条件に合致するか否かを判定する判定手段と
を備えることを特徴とする形状検査装置。
【請求項２】
前記抜き方向のベクトルと直交する補正法線ベクトルＶ１´と、当該補正法線ベクトルＶ１´と反対方向のマイナスベクトルＶ２´とを求め、前記一構成面から前記補正法線ベクトルおよびマイナスベクトルを仮想照射した領域に、前記一構成面と同じ向きの面を抽出することで、前記一構成面の並設面を抽出する並設面抽出手段を更に有する
ことを特徴とする請求項１記載の形状検査装置。
【請求項３】
前記並設面のうち、抽出した並設面と反対側の対抗面との距離を算出し、算出結果が所定幅以下のものを前記リブの並設リブとして抽出する並設リブ抽出手段を更に有する
ことを特徴とする請求項２記載の形状検査装置。
【請求項４】
前記リブ部分の高さｈを算出する場合、前記寸法算出手段は、
前記リブ部分の前記一構成面の全エッジおよび各々の当該エッジの全端点を取得し、
座標空間内の任意の点から前記全端点のそれぞれに向けてベクトルＶ１，Ｖ２，Ｖ３，Ｖ４を生成し、
前記ベクトルＶ１，Ｖ２，Ｖ３，Ｖ４と前記方向指定手段で指定された抜き方向ベクトルＶ０との内積値を算出して、前記ベクトルＶ１，Ｖ２，Ｖ３，Ｖ４のうち当該内積値が最大となったベクトルが結ぶ端点を前記一構成面における上端点として認識し、前記ベクトルＶ１，Ｖ２，Ｖ３，Ｖ４のうち前記内積値が最小となったベクトルが結ぶ端点を前記一構成面における下端点として認識し、
前記下端点から当該下端点に接する各エッジ沿いに作成した各ベクトルと前記抜き方向ベクトルＶ０との内積値を算出して、当該内積値が小さいほうの前記エッジを前記一構成面の下端エッジとして認識し、
前記上端点から当該上端点に接する各エッジ沿いに作成した各ベクトルと前記抜き方向ベクトルＶ０との内積値を算出し、当該内積値が大きいほうの前記エッジを前記一構成面の上端エッジとして認識し、
前記下端エッジの両端点から前記抜き方向ベクトルＶ０に沿った方向にそれぞれ直線を作成し、
各々の当該直線上のいずれかの点と前記上端エッジ上のいずれかの点との間で最短の距離を測定し、
前記各直線上において前記最短の距離が測定された点と前記下端エッジの両端点との間の距離をそれぞれ測定して、当該距離のうち値が大きいほうを前記リブ部分の高さｈとして算出する
ことを特徴とする請求項１、２または３のいずれか１に記載の形状検査装置。
【請求項５】
前記判定手段で前記所定形状条件に合致しないと判定されたリブ部分を前記立体形状における他のリブ部分と識別可能な態様で画像表示する判定結果表示手段を備える
ことを特徴とする請求項１、２、３または４のいずれか１に記載の形状検査装置。
【請求項６】
コンピュータを、
三次元形状データによって特定される立体形状を画面表示する形状表示手段と、
前記形状表示手段が表示する画面上にて前記立体形状を成形加工する際の抜き方向を指定する方向指定手段と、
前記形状表示手段が表示する画面上にて前記立体形状における凸状に形成されたリブ部分の一構成面を利用者が指定する面指定手段と、
前記方向指定手段で指定された抜き方向と前記面指定手段で指定された一構成面の座標とから、前記リブ部分の高さｈ、先端幅ｗ１、根元幅ｗ２と根元肉厚ｔとの比ｗ２／ｔ、及び、側面の勾配θからなる形状寸法値を算出する寸法算出手段と、
前記寸法算出手段が算出した形状寸法値を所定規格値と比較して当該形状寸法値を有する前記形状部分が所定形状条件に合致するか否かを判定する判定手段として機能させる
ことを特徴とする形状検査プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、形状検査装置および形状検査プログラムに関する。
【背景技術】
【０００２】
ＣＡＤ（Computer Aided Design）システムを利用した製品設計では、その製品設計時にＣＡＤモデル上で製品形状についての異常有無を判定し、異常箇所があればその箇所を設計変更する、といったことが行われる（例えば、特許文献１参照）。ここで、製品形状についての異常とは、例えば鋭角な凸部分や凹部分のように、ＣＡＤモデルから金型を作成したときに加工し難い部分となる箇所や、製品になった場合に破損し易く当該製品として相応しくない箇所等のことをいう。
【０００３】
【特許文献１】特開２００５−２７５５９６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
従来、ＣＡＤモデル上で製品形状についての異常有無を判定するためには、例えば特許文献１にも開示されているように、その判定の前準備として、当該製品形状（処理対象となる立体形状）を変換ツール（トランスレータ等）により複数の面要素に分割し、各面についての法線ベクトルを抽出する必要がある。すなわち、当該前準備を必要とすることから、必ずしも迅速な判定処理が行えるとは限らない。
また、異常有無の判定は、ＣＡＤシステムが備える標準的な機能（２点間の距離計測機能等）を利用して行うことも考えられるが、その場合には製品形状の形状構成要素（面、線、点等）を選択指定する必要が生じるため、特に製品形状が複雑であると、選択指定の誤りや形状構成要素見落とし等の人為的ミスが発生する可能性がある。
【０００５】
そこで、本発明は、ＣＡＤモデル上での製品形状についての異常判定を行う場合であっても、人為的ミスの発生を抑制しつつ、迅速な判定処理を行うことのできるの形状検査装置および形状検査プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明は、上記目的を達成するために案出されたものである。
請求項１に係る発明は、三次元形状データによって特定される立体形状を画面表示する形状表示手段と、前記形状表示手段が表示する画面上にて前記立体形状を成形加工する際の抜き方向を指定する方向指定手段と、前記形状表示手段が表示する画面上にて前記立体形状における凸状に形成されたリブ部分の一構成面を利用者が指定する面指定手段と、
前記方向指定手段で指定された抜き方向と前記面指定手段で指定された一構成面の座標及び、側面の勾配θからなる形状寸法値を算出する寸法算出手段と、前記寸法算出手段が算出した形状寸法値を所定企画値と比較して当該形状寸法値を有する前記形状部分が所定形状条件に合致するか否かを判定する判定手段とを備えることを特徴とする形状検査装置である。
請求項２に係る発明は、前記抜き方向のベクトルと直交する補正法線ベクトルＶ１´と、当該補正法線ベクトルＶ１´と反対方向のマイナスベクトルＶ２´とを求め、前記一構成面から前記補正法線ベクトルおよびマイナスベクトルを仮想照射した領域に、前記一構成面と同じ向きの面を抽出することで、前記一構成面の並設面を抽出する並設面抽出手段を更に有することを特徴とする請求項１記載の形状検査装置である。
請求項３に係る発明は、前記並設面のうち、抽出した並設面と反対側の対抗面との距離を算出し、算出結果が所定幅以下のものを前記リブの並設リブとして抽出する並設リブ抽出手段を更に有することを特徴とする請求項２記載の形状検査装置である。
請求項４に係る発明は、前記リブ部分の高さｈを算出する場合、前記寸法算出手段は、前記リブ部分の前記一構成面の全エッジおよび各々の当該エッジの全端点を取得し、座標空間内の任意の点から前記全端点のそれぞれに向けてベクトルＶ１，Ｖ２，Ｖ３，Ｖ４を生成し、前記ベクトルＶ１，Ｖ２，Ｖ３，Ｖ４と前記方向指定手段で指定された抜き方向ベクトルＶ０との内積値を算出して、前記ベクトルＶ１，Ｖ２，Ｖ３，Ｖ４のうち当該内積値が最大となったベクトルが結ぶ端点を前記一構成面における上端点として認識し、前記ベクトルＶ１，Ｖ２，Ｖ３，Ｖ４のうち前記内積値が最小となったベクトルが結ぶ端点を前記一構成面における下端点として認識し、前記下端点から当該下端点に接する各エッジ沿いに作成した各ベクトルと前記抜き方向ベクトルＶ０との内積値を算出して、当該内積値が小さいほうの前記エッジを前記一構成面の下端エッジとして認識し、前記上端点から当該上端点に接する各エッジ沿いに作成した各ベクトルと前記抜き方向ベクトルＶ０との内積値を算出し、当該内積値が大きいほうの前記エッジを前記一構成面の上端エッジとして認識し、前記下端エッジの両端点から前記抜き方向ベクトルＶ０に沿った方向にそれぞれ直線を作成し、各々の当該直線上のいずれかの点と前記上端エッジ上のいずれかの点との間で最短の距離を測定し、前記各直線上において前記最短の距離が測定された点と前記下端エッジの両端点との間の距離をそれぞれ測定して、当該距離のうち値が大きいほうを前記リブ部分の高さｈとして算出することを特徴とする請求項１、２または３のいずれか１に記載の形状検査装置である。
請求項５に係る発明は、前記判定手段で前記所定形状条件に合致しないと判定されたリブ部分を前記立体形状における他のリブ部分と識別可能な態様で画像表示する判定結果表示手段を備えることを特徴とする請求項１、２、３または４のいずれか１に記載の形状検査装置である。
請求項６に係る発明は、コンピュータを、三次元形状データによって特定される立体形状を画面表示する形状表示手段と、前記形状表示手段が表示する画面上にて前記立体形状を成形加工する際の抜き方向を指定する方向指定手段と、前記形状表示手段が表示する画面上にて前記立体形状における凸状に形成されたリブ部分の一構成面を利用者が指定する面指定手段と、前記方向指定手段で指定された抜き方向と前記面指定手段で指定された一構成面の座標とから、前記リブ部分の高さｈ、先端幅ｗ１、根元幅ｗ２と根元肉厚ｔとの比ｗ２／ｔ、及び、側面の勾配θからなる形状寸法値を算出する寸法算出手段と、前記寸法算出手段が算出した形状寸法値を所定規格値と比較して当該形状寸法値を有する前記形状部分が所定形状条件に合致するか否かを判定する判定手段として機能させることを特徴とする形状検査プログラムである。
【発明の効果】
【０００７】
請求項１に係る発明および請求項６に係る発明によれば、抜き方向と一構成面とを指定すれば、当該指定に係る形状部分についての形状寸法値を算出されるので、処理対象となる立体形状を複数の面要素に分割する前処理や当該立体形状における形状部分の構成要素のそれぞれについての選択指定等を必要とすることなく、当該形状部分が所定形状条件に合致するか否かの判定が行われることになる。したがって、当該前処理や当該選択指定等を必要とする場合に比べて、迅速な判定処理を行うことができ、当該判定に要する時間を大幅に短縮することができる。また、当該選択指定等を要する場合に比べて、人為的ミスが発生する可能性を抑制して、利用者にとっての利便性を向上させることができる。
請求項２に係る発明によれば、判定結果表示手段による画面表示結果を参照することで、所定形状条件に合致しないと判定された形状部分について、容易かつ的確に認識することができる。
請求項３に係る発明によれば、凸状または凹状の形状部分において、最も特徴的で、かつ、認識し易いと考えられる当該形状部分の一側面を、当該形状部分の一構成面として指定することになるので、当該指定を容易かつ的確に行えるようになる。
請求項４に係る発明によれば、所定形状条件に合致しない場合の悪影響が大きいと考えられる立体形状のリブ構造部分を判定対象とすることで、当該悪影響の排除が実現可能となる。
請求項５に係る発明によれば、面指定手段で指定された一構成面と並設された構成面を有する形状部分についても、当該一構成面を有する形状部分と同様に、纏めて処理されるので、例えば複数の並設された形状部分を備える立体形状が処理対象となるときであっても、各形状部分についての一括処理を指定しない場合に比べて、処理迅速化が実現可能になるとともに、その処理のために必要な作業の簡略化も実現可能となる。
【発明を実施するための最良の形態】
【０００８】
以下、図面に基づき本発明に係る形状検査装置および形状検査プログラムについて説明する。
【０００９】
ここでは、立体形状を有する製品構成部品における凸状の形状部分であるリブ構造部分について、所定形状条件に合致するか否かの判定を行う場合を例に挙げて説明する。
図１は、判定処理対象となる形状部分の一具体例であるリブ構造部分を示す説明図である。
一般に、立体形状を有する製品構成部品は、図１（ａ）に示すように、当該部品のソリ防止や強度（剛性）確保等のために、凸状の形状部分であるリブ構造部分（以下、単に「リブ」という）１を有したものがある。
ただし、リブ１の高さを過大にしたり肉厚を大きくし過ぎたりすると、当該部品の表面には、凹みや歪み等のいわゆるヒケが生じるおそれがある。また、金型を利用した成型加工を経て当該部品を形成する場合であれば、その金型製作の都合上または成型加工の都合上により、リブ１の形状にも、一定の制約条件が与えられる。
これらのことから、リブ１については、設計段階にて、その形状が所定形状条件に合致するか否か、さらに詳しくは図１（ｂ）に示すリブ１の高さｈ、先端幅ｗ１、根元幅ｗ２と根元肉厚ｔとの比ｗ２／ｔおよび側面の勾配θの各寸法値が、所定規格値によって特定される許容範囲内にあるか否かを判定する。
【００１０】
ここで、リブについての判定処理を行う形状検査装置を含むシステム構成について説明する。
図２は、本発明に係る形状検査装置を含むシステム構成例を示す説明図である。
図例のシステムは、コンピュータ装置、ディスプレイ装置、キーボード装置等が組み合わされてなるＣＡＤシステム１１と、これに有線または無線の通信回線を介して接続するライセンスサーバ１２と、を備えて構成されている。そして、ＣＡＤシステム１１には、形状検査装置２０としての機能が設けられている。
形状検査装置２０は、システムコントロール部２１、チェック実施部２２、チェック結果管理部２３および三次元（以下「３Ｄ」と略す）データ管理部２４としての機能を有している。ただし、３Ｄデータ管理部２４については、ＣＡＤシステム１１上で機能するものであれば、形状検査装置２０が有する機能でなくてもよい。
【００１１】
このような構成のシステムでは、リブについての判定にあたり、以下に述べるような処理動作を行う。先ず、システム利用者がＣＡＤシステム１１を起動すると（ステップ１０１、以下ステップを「Ｓ」と略す）、ＣＡＤシステム１１は、ライセンスサーバ１２にアクセスして、ライセンス認証を行う（Ｓ１０２）。その結果、認証が得られれば、ＣＡＤシステム１１では、形状検査装置２０がリブ１についての判定処理を行い得る状態となる。その状態で、システム利用者が処理対象となる製品構成部品（以下「チェック対象モデル」という。）を選択指定すると（Ｓ１０３）、形状検査装置２０のシステムコントロール部２１は、３Ｄデータ管理部２４から指定されたチェック対象モデルの３Ｄデータを読み出して（Ｓ１０４）、その３Ｄデータによって特定される立体形状をＣＡＤシステム１１のディスプレイ装置に画面表示させる（Ｓ１０５）。そして、その画面上で、システム利用者が、処理対象となるリブを選択指定するとともに、当該リブついての判定処理開始を指示すると（Ｓ１０６）、形状検査装置２０のチェック実施部２２は、選択指定されたリブについての判定処理、すなわち当該リブが所定形状条件に合致するか否かの判定を行い（Ｓ１０７）、その判定結果をチェック結果管理部２３内に格納する（Ｓ１０８）。複数のリブが選択指定された場合であれば、チェック結果管理部２３は、それぞれについての判定結果を順次格納することになる。その後、全てのリブについての判定処理が終了すると、形状検査装置２０のシステムコントロール部２１は、チェック結果管理部２３から判定結果を取り出して（Ｓ１０９）、ＣＡＤシステム１１のディスプレイ装置に画面表示させる（Ｓ１１０）。これにより、リブについての判定処理の結果が、処理依頼元であるシステム利用者に対して出力されることになる。
【００１２】
以上のような一連の処理動作を行う形状検査装置２０は、ＣＡＤシステム１１上で機能するもの、すなわち当該ＣＡＤシステム１１におけるコンピュータ装置としての機能が所定プログラムを実行することによって実現されるものである。その場合に、当該所定プログラムは、ＣＡＤシステム１１へのインストールに先立ち、コンピュータ読み取り可能な記憶媒体に格納されて提供されるものであっても、または有線若しくは無線による通信回線を介して配信されるものであってもよい。つまり、上述した一連の処理動作を行う形状検査装置２０は、ＣＡＤシステム１１におけるコンピュータ装置にインストール可能な形状検査プログラムによっても実現される。
【００１３】
次に、形状検査装置（形状検査プログラムによって実現される場合を含む）２０における処理動作、特にリブについての判定を行う場合の処理動作について、さらに詳しく説明する。
図３は、形状検査装置２０における判定処理の手順の一例を示すフローチャートである。
【００１４】
図例のように、リブについての判定処理を行うのにあたって、形状検査装置２０は、先ず、システム利用者に、選択タイプ入力、抜き方向入力および側面入力を行わせる（Ｓ２０１）。選択タイプ入力とは、判定処理のタイプを、並設された複数のリブを処理対象とするマルチ（multi）モードとするか、あるいは一つのリブのみを処理対象とするシングル（single）モードとするかを選択指定することをいう。抜き方向入力とは、処理対象となるリブを含むチェック対象モデルを成型加工する際の抜き方向を指定することをいう。また、側面入力とは、処理対象となるリブを選択指定するために当該リブの一構成面であるの一側面を指定することをいう。つまり、形状検査装置２０は、システム利用者の操作を介して、ＣＡＤシステム１１のディスプレイ装置で表示される画面上にて、複数のリブについての一括処理をするか否かを指定する一括処理指定手段、チェック対象モデルを成型加工する際の抜き方向を指定する方向指定手段、および、処理対象となるリブの一側面を指定する面指定手段として機能することになる。
【００１５】
マルチモードが指定された場合、または、並設された複数のリブを自動的に処理対象とする並列自動選択が予めオンとなっている場合には、ディスプレイ装置の表示画面上にて選択指定された一側面と、チェック対象モデルの構成面のうち当該一側面と同じ向きの面を抽出して取得する（Ｓ２０２）。つまり、形状検査装置２０は、一括処理指定手段での一括処理指定があると面指定手段で指定された一構成面と並設された構成面を有する形状部分を抽出する並設部分抽出手段として機能することになる。一方、シングルモードが指定された場合、または、並列自動選択が予めオフとなっている場合には、ディスプレイ装置の表示画面上にて選択指定された一側面のみを取得する（Ｓ２０２）。
【００１６】
そして、取得した面と対向するチェック対象モデルの構成面（以下、単に「対面」という。）を取得するとともに、取得した各面に属性を付加し、これにより各面の抜き方向、フェースタイプ（平面、曲面の別等）、各面を識別可能にする符号テキストの配置ポイントを特定する（Ｓ２０３）。そして、各面についての情報をリスト状に纏めて所定記憶領域（選択フェースリスト）内に格納保持する（Ｓ２０４）。さらには、当該格納保持によって不要になった所定記憶領域（inptFace）内を空にするとともに、ディスプレイ装置の表示画面上にて選択指定された面の表示色を他部と相違させるように変更し、符号テキストを注記として配置表示して（Ｓ２０５）、システム利用者が当該面を識別し得るようにする。
【００１７】
その後、システム利用者によって、判定処理の実行開始を指示するための「適用」ボタンの押下（クリック）があると（Ｓ２０６）、形状検査装置２０は、選択指定された面を有するリブについての判定処理を開始する。具体的には、先ず、選択フェースリスト内における格納情報のうち、一つのリブについての情報を別の所定記憶領域（測定実行リスト）へ書き出し（Ｓ２０７）、その書き出した情報から当該一つのリブについての形状測定を行う（Ｓ２０８）。すなわち、形状検査装置２０は、当該一つのリブの高さｈ、先端幅ｗ１、根元幅ｗ２と根元肉厚ｔとの比ｗ２／ｔおよび側面の勾配θの各形状寸法値を算出する寸法算出手段として機能することになる。そして、各形状寸法値を算出したら、その算出結果を所定規格値と比較して、当該所定規格値によって特定される許容範囲内にあるか否かを判定する。すなわち、形状検査装置２０は、算出した各形状寸法値を有するリブが、当該所定規格値によって特定される所定形状条件に合致するか否かを判定する判定手段として機能することになる。なお、選択フェースリスト内に複数のリブについての情報が格納されている場合には、一つのリブについての判定が終了した後、次のリブについての判定を開始し、これを全てのリブについての判定が終了するまで繰り返す。
【００１８】
このようにして得た判定結果については、ディスプレイ装置の表示画面上にて、例えば所定形状条件に合致する場合（ＯＫの場合）は青、所定形状条件に合致しない場合（ＮＧの場合）は赤といったように、面の表示色を相違させることで、システム利用者が認識し得るようにする（Ｓ２０９）。すなわち、形状検査装置２０は、所定形状条件に合致しないと判定されたリブをチェック対象モデルにおける他の形状部分と識別可能な態様で画面表示する判定結果表示手段として機能することになる。
【００１９】
以上のような一連の判定処理を行った後は、シングルモードが指定されている場合であれば（Ｓ２１０）、選択指定された一側面を有するリブについて、その判定処理の詳細な結果（以下、単に「チェック結果」という。）をディスプレイ装置に画面表示させる（Ｓ２１１）。ただし、マルチモードが指定されている場合には、複数のリブについてのチェック結果を全て表示するのではなく、チェック総数（判定処理を行ったリブの総数）やエラー数（所定形状条件に合致しないと判定されたリブの数）等を、ディスプレイ装置に一覧表示させる（Ｓ２１２）。そして、さらに詳細な表示を要求するための「インフォメーション」ボタンの押下（クリック）と、当該表示に係る面の選択指定があると（Ｓ２１３）、その選択指定された面を有するリブについてのチェック結果をディスプレイ装置に画面表示させる（Ｓ２１４）。
【００２０】
ここで、以上のような一連の処理動作における各ステップについて、具体例を挙げて、さらに詳しく説明する。
【００２１】
先ず、抜き方向入力および側面入力を行うステップ（図３におけるＳ２０１）について、詳しく説明する。
図４は、抜き方向入力および側面入力の操作具体例を示す説明図である。
既に説明したように、形状検査装置２０は、ＣＡＤシステム１１の起動後、チェック対象モデルの３Ｄデータを読み込むと、その３Ｄデータによって特定される立体形状をディスプレイ装置に画面表示させる。
その状態で、リブについての判定処理を行うためのリブチェックボタンをシステム利用者がメニューから選択して押下すると、形状検査装置２０は、図４（ａ）に示すようなウインドウ画面をディスプレイ装置に表示させて、システム利用者に抜き方向入力を行わせる。具体的には、当該ウインドウ画面を用いて、抜き方向となるベクトルをシステム利用者に指定させるようにする。なお、ベクトル指定は、選択指定面の法線ベクトルを抽出したり、選択指定された２点を結ぶベクトル成分を抽出する、といった公知の技術を利用して行うことが考えられる。
さらに、形状検査装置２０は、図４（ｂ）に示すように、処理対象となるリブ１についての側面入力をシステム利用者に行わせる。具体的には、画面表示されたチェック対象モデル中で、処理対象となるリブ１における一つの側面１ａに、カーソルを合わせてクリックするといった手順を経ることで、当該一つの側面１ａを指定させることが考えられる。
【００２２】
続いて、選択指定された一側面と同じ向きの面を自動抽出するステップ（図３におけるＳ２０２）について、詳しく説明する。
図５は、面自動抽出の具体例を示す説明図である。
面自動抽出を行う場合において、図例のように、あるリブを構成する一側面１ａが側面入力によって選択指定されると、形状検査装置２０は、その一側面１ａにおける補正法線ベクトルＶ１′を求める。補正法線ベクトルＶ１′とは、当該一側面１ａの法線ベクトルに角度補正を施したもので、抜き方向入力で指定されたベクトルと直交方向に延びるベクトルのことをいうが、その角度補正についてはその詳細を後述する。補正法線ベクトルＶ１′を求めると、次いで、形状検査装置２０は、当該補正法線ベクトルＶ１′と方向が反対であるマイナスベクトルＶ２′を求める。そして、各ベクトルＶ１′，Ｖ２′を求めたら、形状検査装置２０は、一側面１ａが選択指定された際の指定点（クリック箇所）または当該一側面１ａの全面領域から、各ベクトルＶ１′，Ｖ２′に沿って、仮想的な投影ビームを照射する。これにより、形状検査装置２０は、チェック対象モデルを構成する各面の中で、当該一側面１ａと同じ向きの面（ベクトルＶ１′の方向が外方側となる面）で、かつ、投影ビームと交差する面の全てを、当該一側面１ａの並設面として抽出して取得する。さらには、取得した並設面と反対側の対向面（ベクトルＶ２′の方向が外方側となる面）を認識するとともに、当該並設面と対向面との間の距離を算出し、その算出結果が所定幅以下のものを、当該一側面１ａを有するリブに並設されたリブとして抽出して取得する。各面の間の距離が所定幅を超えているとリブとは認められず、リブ以外のものが抽出取得結果に含まれてしまうのを回避するためである。
以上のような処理動作を行うことで、形状検査装置２０では、あるリブを構成する一側面１ａが選択指定されると、当該一側面１ａに並設された構成面を有する全てのリブを、当該あるリブの並設リブとして抽出することになる。
【００２３】
続いて、リブについての形状測定を行うステップ（図３におけるＳ２０８）、すなわち当該リブの形状寸法値を算出するステップについて、詳しく説明する。形状寸法値を算出するステップには、高さｈを算出するステップ、先端幅ｗ１を算出するステップ、根元幅ｗ２を算出するステップ、根元肉厚ｔを算出するステップ、根元幅ｗ２と根元肉厚ｔとの比ｗ２／ｔを算出するステップ、勾配θを算出するステップ、および、リブ側面法線方向の角度補正を行うステップがある。
【００２４】
図６は、高さｈの算出の具体例を示す説明図である。
リブの高さｈの算出にあたり、形状検査装置２０は、先ず、図６（ａ）に示すように、上下端点の認識を行う。すなわち、形状検査装置２０は、リブを構成する選択面（側面入力で指定された一側面または面自動抽出で抽出取得した並設面）１ｂにおける全エッジ（選択面１ｂの端縁を構成する全ての線分）を取得し、さらに各エッジの全端点を取得する。そして、チェック対象モデルが存在する座標空間内の任意の点（例えば座標原点Ｏ）から全端点のそれぞれに向けてベクトルＶ１〜Ｖ４を生成し、各ベクトルＶ１〜Ｖ４と抜き方向入力で指定された抜き方向ベクトルＶ０との内積値を算出する。このとき、ベクトルの内積値は、各ベクトルの向きが近いほど大きく、遠いほど小さいものとなる。したがって、形状検査装置２０は、抜き方向ベクトルＶ０との内積値が最大となったベクトルが結ぶ端点を選択面１ｂにおける上端点とし、抜き方向ベクトルＶ０との内積値が最小となったベクトルが結ぶ端点を選択面１ｂにおける下端点とする。
選択面１ｂにおける上下端点を認識すると、形状検査装置２０は、次に、図６（ｂ）に示すように、上下端エッジの認識を行う。すなわち、形状検査装置２０は、例えば下端エッジの場合であれば、下端点に接する選択面１ｂ上の全てのエッジＡ,Ｂを認識して、当該下端点から各エッジＡ,Ｂ沿いに、それぞれベクトルＶＡ,ＶＢを作成し、各ベクトルＶＡ,ＶＢと抜き方向入力で指定された抜き方向ベクトルＶ０との内積値を算出する。そして、内積値が小さいほうを下端エッジとする。上端エッジについても、同様の処理を経て特定すればよい。ただし、上端エッジの場合は、ベクトルＶ０との内積値が大きいほうとなる。
なお、リブには、図６（ｃ）に示すように、フィレットを有するもの（端部の形状が曲面状のもの）があるが、このようなリブについては、上述した手順で認識した上下端エッジと接線性のある面（曲面状部分を構成する面）を取得し、その面の持つ全エッジを認識して取得した後、当該全エッジを加えて上述した上下端点の認識および上下端エッジの認識を繰り返して行い、当該曲面状部分を構成する面を含んだ状態での上下端エッジを認識することが考えられる。
このようにして、選択面１ｂにおける上下端エッジを認識した後に、形状検査装置２０は、図６（ｄ）に示すように、リブ高さの認識を行う。すなわち、形状検査装置２０は、下端エッジの両端点Ｐ１，Ｐ２から、抜き方向入力で指定された抜き方向ベクトルＶ０に沿った方向に向けて、直線Ｌ１，Ｌ２を作成し、各直線Ｌ１，Ｌ２と上端エッジとの距離を測定する。さらに詳しくは、各直線Ｌ１，Ｌ２上のいずれかの点と、上端エッジ上のいずれかの点との間について、最短の距離を測定する。そして、このときに測定点として作成される各直線Ｌ１，Ｌ２上の各点Ｐ１′，Ｐ２′と、下端エッジの両端点Ｐ１，Ｐ２との間の距離を測定し、これらの距離Ｐ１−Ｐ１′，Ｐ２−Ｐ２′のうちで値が大きいほうを、リブの高さｈとして算出する。
【００２５】
図７は、先端幅ｗ１の算出の具体例を示す説明図である。
先端幅ｗ１の算出にあたり、形状検査装置２０は、先ず、図７（ａ）に示すように、リブを構成する選択面１ｂと、当該リブを構成する他の面で当該選択面１ｂと反対側の対向面１ｃとを認識する。そして、図７（ｂ）に示すように、これらの各面１ｂ，１ｃのそれぞれにおける上端エッジｅ１，ｅ２の認識を行う。上端エッジｅ１，ｅ２の認識は、リブ高さｈの算出の場合と同様に行えばよい（図６（ｂ）参照）。
上端エッジｅ１，ｅ２を認識すると、形状検査装置２０は、続いて、これら上端エッジｅ１，ｅ２とその反対側の面の全てのエッジとの間の距離を総当りで測定する。すなわち、上端エッジｅ１については、当該上端エッジｅ１上のいずれかの点と、当該上端エッジｅ１を含む選択面１ｂの反対側の面である対向面１ｃにおける全てのエッジ上のいずれかの点との間で、最短の距離を測定する。また、上端エッジｅ２については、当該上端エッジｅ２を含む対向面１ｃの反対側の面である選択面１ｂにおける全てのエッジとの間で、最短の距離を測定する。そして、このようにして得られた最短距離の値（各上端エッジｅ１，ｅ２についての距離測定結果が異なる場合には小さいほうの値）と、図７（ｃ）に示すこのときに測定点として作成される各点Ｐ１，Ｐ２とを取得し、その取得した距離値を先端幅ｗ１として、また各点Ｐ１，Ｐ２の位置を先端幅ｗ１の算出位置として、それぞれ算出する。
ただし、例えば図７（ｄ）に示すように、リブがフィレットを有するものや端縁に面取り加工が施されたものである場合には、各点Ｐ１，Ｐ２を結ぶ最短距離値が必ずしも先端幅ｗ１の値とは一致しないおそれがある。そこで、形状検査装置２０は、後述する補正法線ベクトルＶ１′を取得し、その補正法線ベクトルＶ１′が各点Ｐ１，Ｐ２を結ぶ線分の方向と一致しない場合には、各点Ｐ１，Ｐ２のいずれかから補正法線ベクトルＶ１′に沿った方向における反対側の面までの距離を算出する。この算出は、三平方定理等の公知の概念を用いて行えばよい。そして、このようにして得られた距離値を、先端幅ｗ１の算出値とする。
【００２６】
図８は、根元幅ｗ２の算出の具体例を示す説明図である。
根元幅ｗ２の算出にあたり、形状検査装置２０は、先ず、図８（ａ）に示すように、リブを構成する選択面１ｂと、当該リブを構成する他の面で当該選択面１ｂと反対側の対向面１ｃとを認識する。そして、これらの各面１ｂ，１ｃのそれぞれにおける下端エッジｅ１，ｅ２の認識を行う。下端エッジｅ１，ｅ２の認識は、リブ高さｈの算出の場合と同様に行えばよい（図６（ｂ）参照）。
下端エッジｅ１，ｅ２を認識すると、形状検査装置２０は、続いて、図８（ｂ）に示すように、これら下端エッジｅ１，ｅ２とその反対側の面の全てのエッジとの間の距離を総当りで測定する。すなわち、下端エッジｅ１については、当該下端エッジｅ１上のいずれかの点と、当該下端エッジｅ１を含む選択面１ｂの反対側の面である対向面１ｃにおける全てのエッジ上のいずれかの点との間で、最短の距離を測定する。また、下端エッジｅ２については、当該下端エッジｅ２を含む対向面１ｃの反対側の面である選択面１ｂにおける全てのエッジとの間で、最短の距離を測定する。そして、これらの測定結果から、最短距離が得られた相手エッジｅ１′を取得し、その取得した相手エッジｅ１′を根元幅ｗ２の算出に用いる測定エッジとして特定する。
その後、形状検査装置２０は、図８（ｃ）に示すように、測定エッジｅ１′と、その最短距離測定の相手である下端エッジｅ１とについて、それぞれのエッジ長を認識するとともに、各エッジ長を互いに比較して、エッジ長が短いほうのエッジ（図例の場合は測定エッジｅ１′）を特定する。そして、その特定した測定エッジｅ１′上における始点、中点および終点を抽出して、これらを根元幅ｗ２の算出に用いる測定ポイントとして取得し、これらの各測定ポイントとその相手である下端エッジｅ１との間の距離をそれぞれ測定し、これらの距離のうちで値が最も大きいものをリブの根元幅ｗ２として算出する。
【００２７】
図９は、根元肉厚ｔの算出の具体例を示す説明図である。
根元肉厚ｔの算出にあたり、形状検査装置２０は、先ず、根元幅ｗ２の算出と同様に、リブを構成する選択面１ｂとその対向面１ｃとのそれぞれにおける下端エッジｅ１，ｅ２の認識を行う。そして、両下端エッジｅ１，ｅ２について、それぞれにおける始点、中点および終点を抽出して、根元肉厚ｔの算出に用いる測定ポイントとして取得する。
これらの測定ポイントを取得したら、形状検査装置２０は、図９に示すように、各測定ポイントから、抜き方向入力で指定された抜き方向ベクトルＶ０の方向と反対方向に向けて、仮想的な投影ビームを照射する（図中矢印参照）。そして、各投影ビームのそれぞれについて、当該投影ビームが最初にあたるチェック対象モデルの構成面を抽出して取得する。
その後は、このようにして取得した各構成面と、両下端エッジｅ１，ｅ２のそれぞれとの間の距離を、総当りで測定する。そして、測定結果である距離値のうちで値が最も小さいものを、選択面１ｂを有するリブに対して基準となる根元肉厚ｔとして算出する。最も小さい距離値を根元肉厚ｔとするのは、いわゆるワースト・ケース・デザインによるものである。
【００２８】
根元幅ｗ２と根元肉厚ｔとの比ｗ２／ｔの算出については、上述した手順で算出した根元幅ｗ２を、同じく上述した手順で算出した根元肉厚ｔで、除算することによって行えばよい。
【００２９】
図１０は、勾配θの算出の具体例を示す説明図である。
勾配θの算出にあたり、形状検査装置２０は、先ず、リブを構成する選択面１ｂと、当該リブを構成する他の面で当該選択面１ｂと反対側の対向面１ｃとを認識する。そして、これらの各面１ｂ，１ｃのそれぞれにおける法線ベクトルＶ１，Ｖ２を取得する。
法線ベクトルＶ１，Ｖ２を取得すると、形状検査装置２０は、続いて、各法線ベクトルＶ１，Ｖ２と抜き方向入力で指定された抜き方向ベクトルＶ０との内積値を算出する。そして、それぞれの内積値の算出結果から、抜き方向ベクトルＶ０の方向に対する選択面１ｂおよび対向面１ｃのそれぞれの傾き角を算出して、その算出結果を基に各面１ｂ，１ｃについての勾配θを特定する。
【００３０】
図１１は、リブ側面法線方向の角度補正の具体例を示す説明図である。
例えば、リブを構成する側面に勾配θが与えられている場合、その側面における法線ベクトルＶ１は、抜き方向入力で指定された抜き方向ベクトルＶ０との関係が、必ずしも一義的なものになるとは限らない。そのため、上述した一括処理のための面自動抽出を行うステップやリブの先端幅ｗ１を算出するステップ等では、法線ベクトルＶ１をそのまま用いると不都合が生じるおそれがある。
そこで、形状検査装置２０は、リブを構成する側面に勾配θが与えられている場合には、その側面における法線ベクトルＶ１に対する角度補正を行うようにする。具体的には、図１１に示すように、リブを構成する選択面１ｂにおける法線ベクトルＶ１を取得して、その法線ベクトルＶ１と抜き方向入力で指定された抜き方向ベクトルＶ０との内積値を算出し、その算出結果から選択面１ｂにおける勾配θを認識する。さらには、法線ベクトルＶ１と抜き方向ベクトルＶ０との外積値を算出し、その算出結果から各ベクトルＶ１，Ｖ０と直交する方向に延びるベクトルＶ２を求める。そして、ベクトルＶ２を求めたら、そのベクトルＶ２を基準軸、すなわち回転中心として、ベクトルＶ１を勾配θの分だけ回転させて、当該ベクトルＶ１に角度補正を施した補正法線ベクトルＶ１′を取得する。
この補正法線ベクトルＶ１′は、勾配θの分だけ角度補正が施されているので、抜き方向ベクトルＶ０との関係が常に直交関係にあるといった一義的なものになる。
【００３１】
以上のようなアルゴリズムの各ステップを経ることで、形状検査装置２０は、抜き方向入力で指定された抜き方向ベクトルＶ０と、側面入力で選択指定または並設面として一括抽出された選択面１ｂとを基に、リブの形状寸法値として、当該リブの高さｈ、先端幅ｗ１、根元幅ｗ２と根元肉厚ｔとの比ｗ２／ｔおよび側面の勾配θの各寸法値を算出するのである。
【００３２】
そして、上述したアルゴリズムの各ステップを経てリブの形状寸法値の算出を行うと、形状検査装置２０は、その算出した形状寸法値を所定規格値と比較して、当該形状寸法値が当該所定規格値によって特定される許容範囲内にあるか否かを判定する。具体的には、高さｈの算出結果が当該高さｈについての所定規格値を超えていないか、先端幅ｗ１の算出結果が当該先端幅ｗ１についての所定規格値を超えていないか、根元幅ｗ２と根元肉厚ｔとの比ｗ２／ｔが当該比ｗ２／ｔについての所定規格値を超えていないか、勾配θが当該勾配θについての所定規格値によって特定される許容範囲内に属しているか等を判定し、これら全ての条件を満たしている場合に、これらの形状寸法値を有するリブが所定形状条件に合致している判定する。なお、所定規格値は、高さｈ、先端幅ｗ１、比ｗ２／ｔおよび勾配θの各項目について予め設定されているものであればよく、その値自体が特に限定されるものではない。
【００３３】
次に、リブについての判定処理の結果をシステム利用者に対して画面表示出力するステップ（図３におけるＳ２０９〜Ｓ２１４）について、詳しく説明する。
【００３４】
図１２は、画面表示出力の一具体例を示す説明図である。
処理対象となった全てのリブについての判定処理を終了すると、形状検査装置２０は、当該判定処理の結果、所定形状条件に合致しないと判定されたリブを、チェック対象モデルにおける他部と識別可能な態様で画面表示する（図３におけるＳ２０９参照）。具体的には、図例のように、ディスプレイ装置の表示画面上にて、高さｈ、先端幅ｗ１、比ｗ２／ｔおよび勾配θの全項目について所定形状条件に合致しているリブについては例えば青色で表示し、また一つの項目でも所定形状条件に合致しないリブについては赤色で表示するといったように、その表示色を相違させてシステム利用者が認識し得るようにする。なお、リブの表示色は、特に限定されるものではないが、当該リブ以外の部分とは異なるものにする。処理対象となったリブを当該リブ以外の部分と判別可能にするためである。また、所定形状条件に合致するか否かを問わず、処理対象となった全てのリブについては、それぞれに固有の符号テキストを配置ポイント上に配置して表示し、当該符号テキストによって各リブを識別し得るようにする。
【００３５】
このような画面表示出力を行うと、続いて、形状検査装置２０は、判定処理の詳細な結果であるチェック結果についての画面表示出力を行う（図３におけるＳ２１１またはＳ２１４参照）。
図１３は、チェック結果の表示出力の一具体例を示す説明図である。
チェック結果の表示出力にあたり、形状検査装置２０は、図例のようなウインドウ画面をディスプレイ装置に表示させる。すなわち、当該ウインドウ画面上にて、あるリブにおける各形状寸法値についての判定結果やその判定の基準となった所定規格値等を表示出力するのである。
【００３６】
ただし、マルチモードが指定されている場合には、ディスプレイ装置における画面の大きさの制約から、複数のリブについて判定結果を得たら直ちに各リブについてのチェック結果を全て表示させるのではなく、先ずチェック総数やエラー数等についての一覧表示を、当該ディスプレイ装置に行わせる（図３におけるＳ２１２参照）。
図１４は、一覧表示の一具体例を示す説明図である。
図例のように、形状検査装置２０は、マルチモードが指定されている場合には、各リブに付された符号テキストが識別子となるような態様で、各リブについてのチェック内容を一覧形式で示すウインドウ画面を、ディスプレイ装置に表示させる。そして、その一覧形式のウインドウ画面上にて、システム利用者による符号テキストの選択指定、すなわちさらに詳細な表示を要求するリブ（面）の選択指定があると、形状検査装置２０は、「インフォメーション」ボタンの押下後に、その選択指定されたリブについてチェック結果の表示出力を行うのである。
【００３７】
以上に説明した一連の処理動作を行うことで、形状検査装置２０は、ＣＡＤシステム１１上において、システム利用者によって指定されたチェック対象モデルの抜き方向と当該チェック対象モデルの判定処理対象となるリブの一側面とから、当該指定に係るリブ（マルチモードの場合は並設リブを含む。）についての形状寸法値を算出して、当該リブが所定形状条件に合致するか否かを判定し、その判定結果を画面表示出力するようになっている。つまり、システム利用者にとっては、抜き方向と一構成面とを指定すれば、当該指定に係るリブが所定形状条件に合致するか否かの判定結果が得られることになる。
【００３８】
なお、本実施形態では、本発明の好適な実施具体例について説明したが、本発明はその内容に限定されるものではない。
例えば、本実施形態では、リブについての判定処理の結果をディスプレイ装置における画面上に表示出力する場合を例に挙げたが、その出力先はこれに限定されるものではなく、ファイル形式で記憶装置に出力して当該記憶装置内に記憶保持させたり、通信回線を介して接続する外部装置に送信した当該外部装置にて出力等の処理をさせたりすることも考えられる。
また、本実施形態では、処理対象となるリブの選択指定にあたり、そのリブを構成する一側面をシステム利用者に指定させる場合を例に挙げたが、当該リブの一構成面であれば、一側面以外の面であっても、当該リブについての形状寸法値を算出することは可能である。
さらに、本実施形態では、チェック対象モデルに形成された凸状のリブを判定処理の対象とする場合を例に挙げたが、例えばリブ以外の凸状の形状部分であっても、また溝やスリット等の凹状の形状部分であっても、本発明を適用することで、当該形状部分が金型製作の都合、成型加工の都合、その他の都合による一定の制約条件に合致するか否かの判定を行い得るようになる。
このように、本発明は、本実施形態で説明した内容に限定されるものではなく、その要旨を逸脱しない範囲で適宜変更することが可能である。
【図面の簡単な説明】
【００３９】
【図１】本発明に係る形状検査装置による判定処理の対象となる形状部分の一具体例であるリブ構造部分を示す説明図である。
【図２】本発明に係る形状検査装置を含むシステム構成例を示す説明図である。
【図３】本発明に係る形状検査装置が行う判定処理の手順の一例を示すフローチャートである。
【図４】本発明に係る形状検査装置での抜き方向入力および側面入力の操作具体例を示す説明図である。
【図５】本発明に係る形状検査装置での面自動抽出の具体例を示す説明図である。
【図６】本発明に係る形状検査装置でのリブの高さ算出の具体例を示す説明図である。
【図７】本発明に係る形状検査装置でのリブの先端幅算出の具体例を示す説明図である。
【図８】本発明に係る形状検査装置でのリブの根元幅算出の具体例を示す説明図である。
【図９】本発明に係る形状検査装置でのリブの根元肉厚算出の具体例を示す説明図である。
【図１０】本発明に係る形状検査装置でのリブの勾配の算出の具体例を示す説明図である。
【図１１】本発明に係る形状検査装置でのリブ側面法線方向の角度補正の具体例を示す説明図である。
【図１２】本発明に係る形状検査装置での画面表示出力の一具体例を示す説明図である。
【図１３】本発明に係る形状検査装置でのチェック結果の表示出力の一具体例を示す説明図である。
【図１４】本発明に係る形状検査装置での一覧表示の一具体例を示す説明図である。
【符号の説明】
【００４０】
１…リブ、１ａ…側面、１ｂ…選択面、１ｃ…対向面、１１…ＣＡＤシステム、１２…ライセンスサーバ、２０…形状検査装置、２１…システムコントロール部、２２…チェック実施部、２３…チェック結果管理部、２４…３Ｄデータ管理部
【図１】
0004609481.tif 000002
【図２】
0004609481.tif 000003
【図３】
0004609481.tif 000004
【図４】
0004609481.tif 000005
【図５】
0004609481.tif 000006
【図６】
0004609481.tif 000007
【図７】
0004609481.tif 000008
【図８】
0004609481.tif 000009
【図９】
0004609481.tif 000010
【図１０】
0004609481.tif 000011
【図１１】
0004609481.tif 000012
【図１２】
0004609481.tif 000013
【図１３】
0004609481.tif 000014
【図１４】
0004609481.tif 000015