(57)【要約】【課題】  ３次元モデルに設定された寸法情報を、画面上で見やすく表現できるようにする。【解決手段】  寸法オブジェクト生成手段２により、表示対象方向に対して垂直な寸法配置面上に定義され、表示対象方向から見たときの寸法設定位置間の寸法を示す寸法オブジェクト１ｂが生成されると、その寸法オブジェクト１ｂが記憶手段１に記憶される。３次元モデル１ａの表示方向を示す操作入力が行われると、寸法オブジェクト抽出手段３により、記憶手段１から表示方向と表示対象方向の差が所定値以内である寸法配置面上に設けられた寸法オブジェクト１ｂが抽出される。そして、表示手段４により、表示方向から見た３次元モデル１ａと、寸法オブジェクト抽出手段３が抽出した寸法オブジェクト１ｂとが表示される。【選択図】  図１
2006048569.tif 000002
【特許請求の範囲】
【請求項１】
寸法付きの３次元モデルを表示するための３次元モデル表示プログラムにおいて、
コンピュータを、
表示対象方向に対して垂直な寸法配置面上に定義され、前記表示対象方向から見たときの寸法設定位置間の寸法を示す寸法オブジェクトを記憶する記憶手段、
前記３次元モデルの表示方向を示す操作入力に応答し、前記記憶手段から前記表示方向と前記表示対象方向の差が所定値以内である前記寸法配置面上に設けられた前記寸法オブジェクトを抽出する寸法オブジェクト抽出手段、
前記表示方向から見た前記３次元モデルと、前記寸法オブジェクト抽出手段が抽出した前記寸法オブジェクトとを表示する表示手段、
として機能させることを特徴とする３次元モデル表示プログラム。
【請求項２】
さらに、前記表示対象方向を指定する操作入力を受け取ると３次元空間内に２つの前記寸法設定位置を決定し、前記寸法配置面上に前記寸法設定位置間の寸法を示す寸法オブジェクトを生成し、前記記憶手段に格納する寸法オブジェクト生成手段として機能させることを特徴とする請求項１記載の３次元モデル表示プログラム。
【請求項３】
前記寸法オブジェクト生成手段は、前記寸法設定位置が前記寸法配置面に接していない場合、前記寸法設定位置と前記寸法オブジェクトの端点とを結ぶ補助線を生成し、前記寸法オブジェクトに付加し、
前記表示手段は、前記寸法オブジェクトを表示する際には、付加された前記補助線も表示することを特徴とする請求項２記載の３次元モデル表示プログラム。
【請求項４】
前記寸法オブジェクト生成手段は、予めパーツ基準位置と寸法設定方向とが設定された複数のパーツに対し、操作入力により前記表示対象方向が入力されると、前記表示対象方向に垂直な方向から所定の角度以内の前記寸法設定方向が設定された前記パーツの組を選択し、選択した前記パーツそれぞれの前記パーツ基準位置を前記寸法設定位置として決定することを特徴とする請求項２記載の３次元モデル表示プログラム。
【請求項５】
前記寸法オブジェクト生成手段は、操作入力により１つの基準位置と複数の対象位置を指定されたとき、前記基準位置と前記対象位置それぞれとの組を前記寸法設定位置とし、前記基準位置と各前記対象位置との間の線の高さをずらして、複数の前記寸法オブジェクトを生成することを特徴とする請求項２記載の３次元モデル表示プログラム。
【請求項６】
前記寸法オブジェクト生成手段は、前記寸法オブジェクトを生成後、前記３次元モデルと前記寸法オブジェクトとを前記表示対象方向に応じて投影し、前記寸法オブジェクトの寸法値が前記３次元モデルを表す線と重ならない位置に前記寸法値を配置することを特徴とする請求項２記載の３次元モデル表示プログラム。
【請求項７】
前記寸法オブジェクト生成手段は、前記表示対象方向が指定された注記が仮想３次元空間内に設定されているとき、前記３次元モデルと前記注記とを前記表示対象方向に応じて投影し、投影された画像において前記注記が前記３次元モデルを表す線と重ならない位置に前記注記を配置することを特徴とする請求項２記載の３次元モデル表示プログラム。
【請求項８】
前記表示手段は、画面内での大きさが所定値以下となる前記寸法オブジェクトを、表示対象から除外することを特徴とする請求項１記載の３次元モデル表示プログラム。
【請求項９】
寸法付きの３次元モデルを表示するための３次元モデル表示方法において、
記憶手段が、表示対象方向に対して垂直な寸法配置面上に定義され、前記表示対象方向から見たときの寸法設定位置間の寸法を示す寸法オブジェクトを記憶し、
寸法オブジェクト抽出手段が、前記３次元モデルの表示方向を示す操作入力に応答し、前記記憶手段から前記表示方向と前記表示対象方向の差が所定値以内である前記寸法配置面上に設けられた前記寸法オブジェクトを抽出し、
表示手段が、前記表示方向から見た前記３次元モデルと、前記寸法オブジェクト抽出手段が抽出した前記寸法オブジェクトとを表示する、
ことを特徴とする３次元モデル表示方法。
【請求項１０】
寸法付きの３次元モデルを表示するための３次元モデル表示装置において、
表示対象方向に対して垂直な寸法配置面上に定義され、前記表示対象方向から見たときの寸法設定位置間の寸法を示す寸法オブジェクトを記憶する記憶手段と、
前記３次元モデルの表示方向を示す操作入力に応答し、前記記憶手段から前記表示方向と前記表示対象方向の差が所定値以内である前記寸法配置面上に設けられた前記寸法オブジェクトを抽出する寸法オブジェクト抽出手段と、
前記表示方向から見た前記３次元モデルと、前記寸法オブジェクト抽出手段が抽出した前記寸法オブジェクトとを表示する表示手段と、
を有することを特徴とする３次元モデル表示装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は３次元モデル表示プログラム、３次元モデル表示方法、及び３次元モデル表示装置に関し、特に寸法付きの３次元モデルを表示するための３次元モデル表示プログラム、３次元モデル表示方法、及び３次元モデル表示装置に関する。
【背景技術】
【０００２】
製造業で機械的な設計を行う場合、３次元ＣＡＤ（Computer-Aided Design）を利用し、仮想３次元空間内の３次元モデルによって設計を行うことが増えている。その場合、３次元モデルを作成後、製造現場に渡される設計書を作成するために、作成した３次元モデルから２次元図面が生成される。
【０００３】
なお、実際に図面に沿って部品等を作成するには、その部品の細部に渡る寸法が分かっていなくてはならない。部品の寸法は、２次元図面上で書き込まれることが一般的である。ただし、２次元図面では部品の寸法を表現できない場合がある。たとえば、寸法の計測位置となり得る頂点等が２次元平面上で重なっているとき、どちらの頂点から図ったときの寸法なのかが区別できない。
【０００４】
そこで、３次元モデルに寸法を付加し、寸法の情報が付加された３次元モデルを製造現場の作業者に渡すことも考えられている（たとえば、特許文献１参照）。３次元モデルの状態で寸法の情報が付加されていれば、３次元モデルの形状をより正確に認識できる。
【特許文献１】特開２００３−９１５６０号公報（図５）
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで、製造現場において部品を加工する場合、３次元モデルを２次元の平面に投影したときの寸法情報（２次元平面上での２点間の距離）が必要となる。すなわち、２点間の寸法であっても、投影する平面が異なれば寸法の値が異なる。したがって、２つの点に対する寸法情報は、多数存在する。このような寸法情報が、３次元モデル上に定義される多数の点の組み合わせに対して設定される。
【０００６】
しかし、３次元モデルに設定された寸法情報を同時に全て表示すると、画面内に寸法線が氾濫してしまい、各寸法情報がどの点の間の寸法を示しているのかが見分けづらくなってしまう。
【０００７】
また、３次元モデルの寸法の基準点となる頂点が、２次元平面上で他の頂点と同一の場所に投影され、重なり合う場合がある。この場合、投影された平面に記載された寸法が、重なり合う複数の頂点のどちらに対する寸法なのかが分からなくなる。
【０００８】
本発明はこのような点に鑑みてなされたものであり、３次元モデルに設定された寸法情報を、画面上で見やすく表現できる３次元モデル表示プログラム、３次元モデル表示方法、及び３次元モデル表示装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明では上記課題を解決するために、図１に示すような３次元モデル表示プログラムが提供される。本発明に係る３次元モデル表示プログラムは、寸法付きの３次元モデル１ａを表示するためのものである。この３次元モデル表示プログラムにより、図１に示す機能がコンピュータで実現される。
【００１０】
記憶手段１は、表示対象方向に対して垂直な寸法配置面上に定義され、表示対象方向から見たときの寸法設定位置間の寸法を示す寸法オブジェクト１ｂを記憶する。寸法オブジェクト抽出手段３は、３次元モデル１ａの表示方向を示す操作入力に応答し、記憶手段１から表示方向と表示対象方向の差が所定値以内である寸法配置面上に設けられた寸法オブジェクト１ｂを抽出する。表示手段４は、表示方向から見た３次元モデル１ａと、寸法オブジェクト抽出手段３が抽出した寸法オブジェクト１ｂとを表示する。
【００１１】
このような３次元モデル表示プログラムを実行するコンピュータでは、記憶手段１により、表示対象方向に対して垂直な寸法配置面上に定義され、表示対象方向から見たときの寸法設定位置間の寸法を示す寸法オブジェクト１ｂが記憶される。３次元モデル１ａの表示方向を示す操作入力が行われると、寸法オブジェクト抽出手段３により、記憶手段１から表示方向と表示対象方向の差が所定値以内である寸法配置面上に設けられた寸法オブジェクト１ｂが抽出される。そして、表示手段４により、表示方向から見た３次元モデル１ａと、寸法オブジェクト抽出手段３が抽出した寸法オブジェクト１ｂとが表示される。
【００１２】
また、上記課題を解決するために、寸法付きの３次元モデルを表示するための３次元モデル表示方法において、記憶手段が、表示対象方向に対して垂直な寸法配置面上に定義され、前記表示対象方向から見たときの寸法設定位置間の寸法を示す寸法オブジェクトを記憶し、寸法オブジェクト抽出手段が、前記３次元モデルの表示方向を示す操作入力に応答し、前記記憶手段から前記表示方向と前記表示対象方向の差が所定値以内である前記寸法配置面上に設けられた前記寸法オブジェクトを抽出し、表示手段が、前記表示方向から見た前記３次元モデルと、前記寸法オブジェクト抽出手段が抽出した前記寸法オブジェクトとを表示する、ことを特徴とする３次元モデル表示方法が提供される。
【００１３】
また、上記課題を解決するために、寸法付きの３次元モデルを表示するための３次元モデル表示装置において、表示対象方向に対して垂直な寸法配置面上に定義され、前記表示対象方向から見たときの寸法設定位置間の寸法を示す寸法オブジェクトを記憶する記憶手段と、前記３次元モデルの表示方向を示す操作入力に応答し、前記記憶手段から前記表示方向と前記表示対象方向の差が所定値以内である前記寸法配置面上に設けられた前記寸法オブジェクトを抽出する寸法オブジェクト抽出手段と、前記表示方向から見た前記３次元モデルと、前記寸法オブジェクト抽出手段が抽出した前記寸法オブジェクトとを表示する表示手段と、を有することを特徴とする３次元モデル表示装置が提供される。
【発明の効果】
【００１４】
以上説明したように本発明では、寸法オブジェクトに対して予め表示対象方向を設定しておき、指定された表示方向と表示対象方向との差が所定値以内の場合に、表示方向から見た３次元モデルと寸法オブジェクトとを表示するようにした。これにより、表示方向から３次元モデルを見たときの寸法設定位置間の寸法を示す寸法オブジェクトのみが表示される。その結果、画面内に寸法オブジェクトが氾濫することにより寸法オブジェクトの識別性が低下するのを防止できる。
【発明を実施するための最良の形態】
【００１５】
以下、本発明の実施の形態を図面を参照して説明する。
まず、実施の形態に適用される発明の概要について説明し、その後、実施の形態の具体的な内容を説明する。
【００１６】
図１は、実施の形態に適用される発明の概念図である。図１に示すように、本発明に係る３次元モデル表示プログラムを実行するコンピュータは、記憶手段１、寸法オブジェクト生成手段２、寸法オブジェクト抽出手段３、及び表示手段４として機能する。
【００１７】
記憶手段１は、表示対象方向に対して垂直な寸法配置面上に定義され、表示対象方向から見たときの寸法設定位置間の寸法を示す寸法オブジェクト１ｂを記憶する。寸法オブジェクト１ｂは、たとえば、寸法オブジェクト生成手段２によって作成される。
【００１８】
寸法オブジェクト生成手段２は、表示対象方向を指定する操作入力を受け取ると３次元空間内に２つの寸法設定位置を決定する。たとえば、寸法オブジェクト生成手段２は、操作入力によって指定された２点を寸法設定位置と決定する。そして、寸法オブジェクト生成手段２は、寸法配置面上に寸法設定位置間の寸法を示す寸法オブジェクト１ｂを生成する。そして、寸法オブジェクト生成手段２は、生成した寸法オブジェクト１ｂを記憶手段１に格納する。
【００１９】
なお、寸法オブジェクト生成手段２は、寸法設定位置が寸法配置面に接していない場合、寸法設定位置と寸法オブジェクト１ｂの端点とを結ぶ補助線１ｃを生成し、寸法オブジェクト１ｂに関連付けて記憶手段１に格納することもできる。
【００２０】
寸法オブジェクト抽出手段３は、３次元モデル１ａの表示方向を示す操作入力に応答し、記憶手段１から表示方向と表示対象方向の差が所定値以内である寸法配置面上に設けられた寸法オブジェクト１ｂを抽出する。
【００２１】
表示手段４は、表示方向から見た３次元モデル１ａと、寸法オブジェクト抽出手段３が抽出した寸法オブジェクト１ｂとを表示する。なお、表示手段４は、寸法オブジェクト１ｂを表示する際には、付加された補助線１ｃも表示する。
【００２２】
このような３次元モデル表示プログラムを実行するコンピュータでは、寸法オブジェクト生成手段２により、表示対象方向に対して垂直な寸法配置面上に定義され、表示対象方向から見たときの寸法設定位置間の寸法を示す寸法オブジェクト１ｂが生成されると、その寸法オブジェクト１ｂが記憶手段１に記憶される。
【００２３】
３次元モデル１ａの表示方向を示す操作入力が行われると、寸法オブジェクト抽出手段３により、記憶手段１から表示方向と表示対象方向の差が所定値以内である寸法配置面上に設けられた寸法オブジェクト１ｂが抽出される。そして、表示手段４により、表示方向から見た３次元モデル１ａと、寸法オブジェクト抽出手段３が抽出した寸法オブジェクト１ｂとが表示される。
【００２４】
たとえば、寸法オブジェクト１ｂが設けられた寸法配置面の正面を表示方向とした場合の画像５では、３次元モデル１ａと寸法オブジェクト１ｂが表示されている。この際、他の方向を表示対象方向とした寸法オブジェクトが記憶手段１に記憶されていても、その寸法オブジェクトは表示対象から除外される。したがって、画面５内に表示される寸法オブジェクトが少なくて済み、非常に見やすい画像となる。
【００２５】
また、寸法オブジェクト１ｂを表面から見ただけでは、寸法設定位置が不明瞭な場合がある。その場合、寸法配置面の斜め前方を表示方向とする。斜め前方を表示方向としたときの画面６では、補助線１ｃが表示される（画像５では、３次元モデルの裏に隠れている）。補助線１ｃが表示されることで、寸法オブジェクト１ｂの寸法設定位置が明確となる。
【００２６】
なお、寸法オブジェクト生成手段２は、予めパーツ基準位置と寸法設定方向とが設定された複数のパーツに対し、操作入力により表示対象方向が入力されると、表示対象方向に垂直な方向から所定の角度以内の寸法設定方向が設定されたパーツの組を選択する。そして、寸法オブジェクト生成手段２は、選択したパーツそれぞれのパーツ基準位置を寸法設定位置として決定することができる。この際、寸法オブジェクト生成手段２は、たとえば、互いの表示対象方向の成す角が所定の角度以内のパーツの組を選択して、選択したパーツそれぞれのパーツ基準位置を寸法設定位置として決定する。これにより、複数のパーツ間の寸法オブジェクトを容易に生成することができる。
【００２７】
また、寸法オブジェクト生成手段２は、操作入力により１つの基準位置と複数の対象位置を指定されたとき、基準位置と対象位置それぞれとの組を寸法設定位置とし、基準位置と各対象位置との間の線の高さをずらして、複数の寸法オブジェクトを生成することもできる。この際、寸法オブジェクト生成手段２は、たとえば、基準位置を通り表示対象方向からみて垂直な線を境界として複数の対象位置を線の左右のグループに分類し、同じグループに分類された対象位置同士の関係において、基準位置と各対象位置との間の線の高さをずらす。これにより、表示されたときの複数の寸法オブジェクト間の識別性を高めることができる。
【００２８】
また、寸法オブジェクト生成手段２は、寸法オブジェクト１ｂを生成後、３次元モデル１ａと寸法オブジェクト１ｂとを表示対象方向に応じて投影し、寸法オブジェクト１ｂの寸法値が３次元モデルを表す線と重ならない位置に寸法値を配置することもできる。これにより、表示されたときの寸法値が読み取りやすくなる。
【００２９】
さらに、寸法オブジェクト生成手段２は、表示対象方向が指定された注記が仮想３次元空間内に設定されているとき、３次元モデルと注記とを表示対象方向に応じて投影し、投影された画像において注記が３次元モデルを表す線と重ならない位置に注記を配置することもできる。これにより、表示されたときの注記が読み取りやすくなる。
【００３０】
また、表示手段４は、画面内での大きさが所定値以下となる寸法オブジェクトを、表示対象から除外することもできる。これにより、画面内で小さすぎて寸法等の判別が困難な寸法オブジェクトを表示せずに済み、表示された寸法オブジェクトの識別性が高まる。
【００３１】
ところで、本発明は、３次元ＣＡＤ内の一機能として実装することができる。そこで、本発明の機能を含む３次元ＣＡＤの例を、本発明の実施の形態として具体的に説明する。
図２は、本発明の実施の形態に用いるコンピュータのハードウェア構成例を示す図である。コンピュータ１００は、ＣＰＵ(Central Processing Unit)１０１によって装置全体が制御されている。ＣＰＵ１０１には、バス１０７を介してＲＡＭ(Random Access Memory)１０２、ハードディスクドライブ（ＨＤＤ:Hard Disk Drive）１０３、グラフィック処理装置１０４、入力インタフェース１０５、および通信インタフェース１０６が接続されている。
【００３２】
ＲＡＭ１０２には、ＣＰＵ１０１に実行させるＯＳ(Operating System)のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、ＲＡＭ１０２には、ＣＰＵ１０１による処理に必要な各種データが格納される。ＨＤＤ１０３には、ＯＳやアプリケーションプログラムが格納される。
【００３３】
グラフィック処理装置１０４には、モニタ１１が接続されている。グラフィック処理装置１０４は、ＣＰＵ１０１からの命令に従って、画像をモニタ１１の画面に表示させる。入力インタフェース１０５には、キーボード１２とマウス１３とが接続されている。入力インタフェース１０５は、キーボード１２やマウス１３から送られてくる信号を、バス１０７を介してＣＰＵ１０１に送信する。
【００３４】
通信インタフェース１０６は、ネットワーク１０に接続されている。通信インタフェース１０６は、ネットワーク１０を介して、他のコンピュータとの間でデータの送受信を行う。
【００３５】
以上のようなハードウェア構成によって、本実施の形態の処理機能を実現することができる。
図３は、コンピュータの機能を示すブロック図である。コンピュータ１００は、３次元モデルデータベース（ＤＢ）１１０、ユーザインタフェース１２０、３次元モデル作成部１３０、寸法オブジェクト作成部１４０、３次元モデル表示部１５０を有している。
【００３６】
３次元モデルＤＢ１１０には、３次元モデルの形状等のデータ（３次元モデルデータ）、及び３次元モデルの各部の寸法を示す寸法オブジェクトのデータ（寸法オブジェクトデータ）が格納される。
【００３７】
ユーザインタフェース１２０は、キーボード１２やマウス１３からの入力内容を３次元モデル作成部１３０、寸法オブジェクト作成部１４０または３次元モデル表示部１５０に渡す。また、ユーザインタフェース１２０は、３次元モデル作成部１３０、寸法オブジェクト作成部１４０または３次元モデル表示部１５０から送られた３次元モデルや寸法オブジェクトの画像をモニタ１１に表示する。
【００３８】
３次元モデル作成部１３０は、ユーザからの操作入力に応答して、３次元モデルを作成する。３次元モデル作成部１３０は、作成した３次元モデルのデータを、３次元モデルＤＢ１１０に格納する。
【００３９】
寸法オブジェクト作成部１４０は、ユーザからの操作入力に応答して、３次元モデルに対する寸法オブジェクトを作成する。寸法オブジェクト作成部１４０は、作成した寸法オブジェクトのデータを３次元モデルＤＢ１１０に格納する。
【００４０】
３次元モデル表示部１５０は、３次元モデルＤＢ１１０に格納されている３次元モデルデータや寸法オブジェクトデータに基づいて、寸法付きの３次元モデル画像を生成する。
このような機能を有するコンピュータ１００を利用し、ユーザは３次元モデルや寸法オブジェクトにより部品の設計を行うことができる。以下、部品を設計する際のコンピュータ１００における処理を具体的に説明する。
【００４１】
図４は、部品設計の処理手順を示す図である。以下、図４に示す処理をステップ番号に沿って説明する。
［ステップＳ１１］３次元モデル作成部１３０がユーザからの操作入力に応答して、３次元モデルを作成する。作成された３次元モデルの形状を定義する３次元モデルデータは、３次元モデルＤＢ１１０に格納される。
【００４２】
［ステップＳ１２］寸法オブジェクト作成部１４０は、ユーザからの寸法作成方法指定入力を受け付ける。
［ステップＳ１３］寸法オブジェクト作成部１４０は、ユーザからの寸法作成方法指定が、任意の２点間の寸法作成か否かを判断する。任意の２点間の寸法作成が指示された場合、処理がステップＳ１４に進められる。そうでなければ、処理がステップＳ１５に進められる。
【００４３】
［ステップＳ１４］寸法オブジェクト作成部１４０は、任意の２点間の寸法作成処理を実行する。この処理の詳細は後述する。
［ステップＳ１５］寸法オブジェクト作成部１４０は、ユーザからの寸法作成方法指定が、パーツ組み合わせによる寸法作成か否かを判断する。パーツ組み合わせによる寸法作成が指示された場合、処理がステップＳ１６に進められる。そうでなければ、処理がステップＳ１７に進められる。
【００４４】
［ステップＳ１６］寸法オブジェクト作成部１４０は、パーツ組み合わせによる寸法作成処理を実行する。この処理の詳細は後述する。
［ステップＳ１７］寸法オブジェクト作成部１４０は、ユーザからの寸法作成方法指定が、任意の方向から見た寸法作成か否かを判断する。任意の方向から見た寸法作成が指示された場合、処理がステップＳ１８に進められる。そうでなければ、処理がステップＳ１９に進められる。
【００４５】
［ステップＳ１８］寸法オブジェクト作成部１４０は、任意の方向から見た寸法作成処理を実行する。この処理の詳細は後述する。
［ステップＳ１９］寸法オブジェクト作成部１４０は、ユーザからの操作入力に応答して、他の方法で寸法作成を行うか否かを判断する。ユーザから寸法作成を示す操作入力があった場合、処理がステップＳ１２に進められ、その操作入力に応じた処理が行われる。寸法作成の終了が指示された場合、処理がステップＳ２０に進められる。
【００４６】
［ステップＳ２０］寸法オブジェクト作成部１４０は、寸法配置調整処理を行う。この処理の詳細は後述する。
［ステップＳ２１］寸法オブジェクト作成部１４０は、寸法付きの３次元モデル表示処理を行う。この処理の詳細は後述する。
【００４７】
このような手順で、３次元モデルの作成、寸法オブジェクトの作成、及びそれらの表示処理が行われる。以下、寸法オブジェクトの作成、及び表示処理の詳細について説明する。
【００４８】
［任意２点間寸法作成処理］
任意２点間寸法作成処理では、寸法設定位置となる２点（基準位置と対象位置）を指定する操作入力を受け付ける。そして、その２点間の寸法を示す寸法オブジェクトを寸法オブジェクト作成部１４０が作成する。寸法オブジェクトは、寸法配置面上に作成される。寸法配置面は、基準位置または対象位置を通り、表示対象方向に垂直な平面である。このとき、寸法配置面に対して、基準位置と対象位置との双方が接している保障はない。そこで、基準位置または対象位置が寸法配置面から離れているとき、それらを接続する補助線を付加する。
【００４９】
図５は、任意２点間寸法作成処理を示すフローチャートである。以下、図５に示す処理をステップ番号に沿って説明する。
［ステップＳ３１］寸法オブジェクト作成部１４０は、ユーザからの操作入力に応答して、これから作成する寸法オブジェクトの表示対象方向を決定する。たとえば、ユーザが仮想カメラ（視点）を移動させる操作入力を行うと、寸法オブジェクト作成部１４０が視点の位置及び方向を決定する。このとき、３次元オブジェクトから視点への方向が表示対象方向となる。
【００５０】
［ステップＳ３２］寸法オブジェクト作成部１４０は、ユーザからの操作入力に応答して、基準位置を決定する。たとえば、寸法オブジェクト作成部１４０は、ユーザによる３次元モデルの任意の頂点を指定する操作入力を受け取ると、指定された頂点を基準位置とする。
【００５１】
［ステップＳ３３］寸法オブジェクト作成部１４０は、ユーザからの操作入力に応答して対象位置を決定する。たとえば、寸法オブジェクト作成部１４０は、ユーザによる３次元モデルの任意の頂点を指定する操作入力を受け取ると、指定された頂点を対象位置とする。
【００５２】
［ステップＳ３４］寸法オブジェクト作成部１４０は、ユーザからの操作入力に応答して寸法配置面を決定する。たとえば、寸法オブジェクト作成部１４０は、ユーザによる基準位置または対象位置の何れかを選択する操作入力を受け取ると、選択された位置を通り表示対象方向に垂直な平面を寸法配置面とする。
【００５３】
［ステップＳ３５］寸法オブジェクト作成部１４０は、基準位置と対象位置との間の寸法を計算する。寸法は、基準位置と対象位置とのそれぞれから寸法配置面に垂線を降ろし、各垂線と寸法配置面との交点を求める。各垂線に応じた交点間の距離が寸法となる。
【００５４】
［ステップＳ３６］寸法オブジェクト作成部１４０は、基準位置と対象位置との間の寸法を示す寸法オブジェクトを作成する。寸法オブジェクトは、寸法配置面上に作成される。寸法オブジェクトは、寸法設定位置（基準位置と対象位置）を示す線（寸法線）と、寸法値とで構成される。
【００５５】
［ステップＳ３７］寸法オブジェクト作成部１４０は、補助線の作成処理を行う。この処理の詳細は後述する。
［ステップＳ３８］寸法オブジェクト作成部１４０は、任意２点間寸法作成処理を終了させるか否かを判断する。たとえば、ユーザによって処理終了を示す操作入力を受け取ったときに、処理を終了する。処理を終了させない場合、処理がステップＳ３１に進められる。処理を終了させる場合、処理がステップＳ１５（図４に示す）に進められる。
【００５６】
図６は、補助線作成処理の手順を示すフローチャートである。以下、図６に示す処理をステップ番号に沿って説明する。
［ステップＳ４１］寸法オブジェクト作成部１４０は、補助線作成処理を未処理の寸法オブジェクトがあるか否かを判断する。未処理の寸法オブジェクトがあれば、処理がステップＳ４２に進められる。全ての寸法オブジェクトに対する処理が終了していれば、補助線作成処理が終了し、処理がステップＳ３８（図５に示す）に進められる。
【００５７】
［ステップＳ４２］寸法オブジェクト作成部１４０は、寸法オブジェクトの１つを選択する。
［ステップＳ４３］寸法オブジェクト作成部１４０は、選択した寸法オブジェクトの寸法線の端点と対象位置とが接しているか否かを判断する。接している場合、処理がステップＳ４１に進められる。接していない場合、処理がステップＳ４４に進められる。
【００５８】
［ステップＳ４４］寸法オブジェクト作成部１４０は、寸法線の端点と対象位置とを結ぶ補助線を生成する。生成された補助線は、ステップＳ４２で選択された寸法オブジェクトに付加される。その後、処理がステップＳ４１に進められる。
【００５９】
このようにして、３次元モデルに対して寸法オブジェクトを生成することができる。
図７は、寸法オブジェクトの例を示す図である。この寸法オブジェクト２２は、基準位置Ｐ１と対象位置Ｐ２との間の寸法を示している。対象位置Ｐ２は、寸法配置面に接していない。そのため、対象位置Ｐ２から寸法配置面に降ろした垂線と寸法配置面との交点に端点Ｐ５が定義される。
【００６０】
基準位置Ｐ１から垂直方向に線分２２ａが設けられている。また、端点Ｐ５から垂直方向に線分２２ｂが設けられている。線分２２ａと線分２２ｂとの間には、矢印２２ｃが設けられている。矢印２２ｃに沿った位置に、寸法値２２ｄが配置される。なお、寸法値２２ｄは、基準位置Ｐ１と端点Ｐ５との間の距離を示している。また、図７の例では、対象位置Ｐ２が寸法配置面と離れているため、対象位置Ｐ２と端点Ｐ５との間に、補助線２６が設けられている。
【００６１】
このような寸法オブジェクト２２が作成される毎に、寸法オブジェクトデータが３次元モデルＤＢ１１０に格納される。
図８は、寸法オブジェクトのデータ構造例を示す図である。寸法オブジェクトデータ１１１は、３次元モデル２１に関連付けて３次元モデルＤＢ１１０に格納される。
【００６２】
寸法オブジェクトデータ１１１には、属性付加対象要素、キーの内容、値の内容の項目が設けられている。属性付加対象要素は、付加属性によって定義される要素の種別を示している。寸法オブジェクトデータ１１１の場合、属性付加対象要素は、全て「寸法」となる。キーの内容は、付加属性の種別を示している。
【００６３】
値の内容には、付加属性の値を示している。たとえば、基準位置の値は、要素ＩＤである。この要素ＩＤは、たとえば、３次元モデル２１を構成するオブジェクト（ポリゴン等）の頂点の識別情報である。３次元モデル２１には、頂点の３次元空間での座標が定義されているため、基準位置で要素ＩＤが設定されることで、基準位置の座標が一意に決定される。
【００６４】
対象位置の値も、基準位置の場合と同様に、要素ＩＤが設定される。ビュー名は表示対象方向を示しており、値として表示対象方向を示すベクトルが設定される。補助線の値には、補助線の線分の両端となる２点の座標値が設定される。高さは、基準位置から寸法値の表示位置までの高さである。数値は、寸法の値である。数値表示位置は、基準位置Ｐ１に接続される線分２２ａから寸法値２２ｄの位置までの距離である。
【００６５】
図９は、寸法が付加された３次元モデルを示す図である。図９の例では、３次元モデル２１の基準位置Ｐ１と２つの対象位置Ｐ２，Ｐ３それぞれとの間の寸法オブジェクト２２，２３が生成されている。寸法オブジェクト２２，２３は、基準位置Ｐ１と２つの対象位置Ｐ２，Ｐ３とを寸法配置面に投影したときの位置を端点としている。そして、寸法オブジェクト２３と対象位置Ｐ３とが離れているため、寸法オブジェクト２３の端点と対象位置Ｐ３とを結ぶ補助線２４が生成されている。補助線２４は、表示対象方向から３次元モデル２１を観察した際には３次元モデルの裏に隠れるため描画されないが、表示対象方向から少しだけずれた方向から観察すると描画され、モニタ１１に表示される。
【００６６】
図１０は、３次元モデルと寸法オブジェクトとを上から見た図である。この例では、寸法配置面２５は基準位置Ｐ１を通る。また、寸法配置面２５の法線方向と表示対象方向とは平行である。
【００６７】
ここで、対象位置Ｐ２は、寸法配置面２５に含まれない。そこで、基準位置Ｐ１と対象位置Ｐ３との間の寸法は、基準位置Ｐ１と端点Ｐ４との間の距離となる。対象位置Ｐ２は寸法配置面２５から離れているため、端点Ｐ４と対象位置Ｐ２との間には補助線２６が設けられている。
【００６８】
一方、対象位置Ｐ３は、寸法配置面２５に含まれない。そこで、基準位置Ｐ１と対象位置Ｐ３との間の寸法配置面２５に表示される寸法は、基準位置Ｐ１と端点Ｐ５との間の距離となる。対象位置Ｐ３は寸法配置面２５から離れているため、端点Ｐ５と対象位置Ｐ３との間には補助線２４が設けられている。
【００６９】
このように、寸法線の端点と基準位置または対象位置が離れている場合、離れた点を接続する補助線を生成することで、どの位置の間の寸法なのかが明確となる。
以下、図１１〜図１３に、２次元平面に寸法線を設定した場合、３次元モデルに補助線のない寸法オブジェクトを設定した場合、及び３次元モデルに補助線のある寸法オブジェクトを設定した場合の表示結果を示す。
【００７０】
図１１は、２次元平面に寸法線を設定した場合の表示結果を示す図である。２次元平面に描かれた部品３０は、複数の突起部材３１〜３３を有している。また、部品３０の所定の位置から各突起部材３１〜３３までの寸法を示す寸法線４１〜４３（図中、横方向の寸法）が示されている。このとき、寸法線４２と線寸法４３とは、２つの突起部材３２，３３のどちらの寸法を表しているのかが不明確である。
【００７１】
図１２は、３次元モデルに補助線のない寸法オブジェクトを設定した場合の表示結果を示す図である。部品３０を３次元モデルで表すと、突起部材３１〜３３の形状が分かり易くなる。ただし、寸法線５１〜５３は、所定の寸法配置面に設定されているため、どの突起部材３１〜３３の寸法を示しているのかが分かりづらい。
【００７２】
図１３は、３次元モデルに補助線のある寸法オブジェクトを設定した場合の表示結果を示す図である。寸法線５１〜５３に対して、補助線６１〜６５を付加することにより、どの寸法線がどの突起部材の寸法を示しているのかが明確となる。
【００７３】
［パーツ組み合わせ寸法作成］
次に、パーツを組み合わせて寸法を作成する処理について説明する。この処理では、既存のパーツに寸法対象情報を付与し、複数の寸法対象情報の間の寸法を自動生成する。
【００７４】
図１４は、パーツ組み合わせ寸法作成処理の手順を示すフローチャートである。以下、図１４に示す処理をステップ番号に沿って説明する。
［ステップＳ５１］寸法オブジェクト作成部１４０は、ユーザからの操作入力に応答してパーツに対して寸法対象情報を付与する。寸法対象情報では、寸法の基準となる点（パーツ基準位置）と向き（寸法設定方向）とが定義される。
【００７５】
［ステップＳ５２］寸法オブジェクト作成部１４０は、ユーザからの操作入力に応答して表示対象方向を決定する。
［ステップＳ５３］寸法オブジェクト作成部１４０は、未処理のパーツの組み合わせが有るか否かを判断する。未処理のパーツの組み合わせがある場合、処理がステップＳ５４に進められる。全てのパーツの組み合わせについて処理した場合、処理がステップＳ５８に進められる。
【００７６】
［ステップＳ５４］寸法オブジェクト作成部１４０は、未処理の２つのパーツの組み合わせを選択する。
［ステップＳ５５］寸法オブジェクト作成部１４０は、ステップＳ５４で選択した２つのパーツの寸法設定方向が、表示対象方向に対して垂直方向を向いているかどうかを判断する。このとき、全くの垂直ではなくても、垂直方向に対する寸法設定方向が所定の角度以内のときは垂直とみなすことができる。垂直方向を向いている場合、処理がステップＳ５６に進められる。垂直方向を向いていない場合、処理がステップＳ５３に進められる。
【００７７】
［ステップＳ５６］寸法オブジェクト作成部１４０は、ステップＳ５４で選択した２つのパーツの寸法設定方向が同じかどうかを判断する。このとき、全く平行ではなくても、２つの寸法設定方向の成す角が所定の角度以下のときは平行とみなすことができる。寸法設定方向が平行な場合、処理がステップＳ５７に進められる。平行でない場合、処理がステップＳ５３に進められる。
【００７８】
［ステップＳ５７］寸法オブジェクト作成部１４０は、選択されたパーツのパーツ基準位置間に寸法情報を生成する。その後、処理がステップＳ５３に進められ、他のパーツの組み合わせについて処理が実行される。
【００７９】
［ステップＳ５８］全てのパーツの組み合わせについて寸法情報の生成の有無が検討され、寸法生成対象となる組み合わせについて寸法情報が生成されると、寸法オブジェクト作成部１４０は、パーツ組み合わせ寸法作成処理が終了か否かを判断する。たとえば、寸法オブジェクト作成部１４０は、ユーザから処理終了を示す操作入力が行われたとき、処理終了と判断する。パーツ組み合わせ寸法作成処理終了の場合、処理がステップＳ１７（図４に示す）に進められる。パーツ組み合わせ寸法作成処理を継続する場合、処理がステップＳ５２に進められ、ユーザからの表示対象方向の指定を受け付ける。
【００８０】
図１５は、寸法対象情報の設定例を示す図である。たとえば、３次元モデル７０に孔７１が設けられている。この場合、孔７１を１つのパーツと考える。
このとき、孔７１の開口部に対して寸法対象情報７１ａを設定する。寸法対象情報では、少なくともパーツ基準位置と寸法設定方向とが定義される。たとえば、図１５の例では、孔７１の開口部の中心をパーツ基準位置とする。そして、開口部の向きを、寸法設定方向とする。パーツ基準位置を原点とし、開口部がｘ−ｙ平面内に存在するｘ、ｙ、ｚ座標系を考えると、ｚ軸方向が寸法設定方向となる。
【００８１】
図１６は、パーツ組み合わせ寸法作成例を示す図である。図１６に示す３次元モデル７０には、複数の孔７１〜７４が設けられている。図中、各孔７１〜７４の向きを矢印で示している。孔７１〜７３は、表示対象方向に対して垂直方向を向いている。また、孔７４は、表示対象方向と同じ方向を向いている。
【００８２】
この場合、孔７４は、表示対象方向に垂直ではないため、寸法作成の対象とはならない。一方、孔７１〜７３は、表示対象方向に対して垂直方向を向いている。孔７１と孔７２とは、向きがほぼ平行であるため、寸法オブジェクト７５が生成される。また、孔７３は、他の孔７１，７２と異なる方向を向いているため、寸法オブジェクトの作成対象とはならない。
【００８３】
このように、寸法対象情報を予め設定するだけで、必要な寸法オブジェクトを自動生成することができる。
［任意の方向から見た複数の寸法同時作成処理］
次に、任意の方向から見た複数の寸法同時作成処理について説明する。これは、予め指定された複数の対象位置に対して、重なりのない寸法線を自動生成する処理である。
【００８４】
図１７は、任意の方向から見た複数の寸法同時作成処理の手順を示すフローチャートである。以下、図１７に示す処理をステップ番号に沿って説明する。
［ステップＳ６１］寸法オブジェクト作成部１４０は、ユーザからの操作入力に応答して、基準位置を決定する。なお、３次元モデルの形状を定義する際の基準となる位置（モデル基準）を、予め基準位置として定めておくこともできる。
【００８５】
［ステップＳ６２］寸法オブジェクト作成部１４０は、ユーザからの操作入力に応答して複数の対象位置を決定する。たとえば、寸法オブジェクト作成部１４０は、ユーザによる３次元モデルの任意の頂点や中心線などを指定する操作入力を受け取る度に、指定された位置を対象位置とする。
【００８６】
［ステップＳ６３］寸法オブジェクト作成部１４０は、ユーザからの操作入力に応答して、表示対象方向を決定する。
［ステップＳ６４］寸法オブジェクト作成部１４０は、ユーザからの操作入力に応答して寸法配置面を決定する。たとえば、寸法オブジェクト作成部１４０は、ユーザによる基準位置または対象位置の何れかを選択する操作入力を受け取ると、選択された位置を通り表示対象方向に垂直な平面を寸法配置面とする。
【００８７】
［ステップＳ６５］寸法オブジェクト作成部１４０は、基準位置から垂直な線を引いたときに、各対象位置が表示対象方向から見たときに右側になるか左側になるかによって、対象位置を分類する。
【００８８】
［ステップＳ６６］寸法オブジェクト作成部１４０は、右側として分類された対象位置を、基準位置に近いものから順に選択し、寸法オブジェクトを作成する。この際、各寸法オブジェクトには、それぞれ異なる高さが設定される。
【００８９】
［ステップＳ６７］寸法オブジェクト作成部１４０は、左側として分類された対象位置を、基準位置に近いものから順に選択し、寸法オブジェクトを作成する。この際、各寸法オブジェクトには、それぞれ異なる高さが設定される。その後、処理がステップＳ１９（図４に示す）に進められる。
【００９０】
図１８は、同時作成処理によって生成された寸法線の例を示す図である。この例では、３次元モデル８０のモデル基準を基準位置として、パーツの中心線等の他の対象位置までの寸法線８１〜８５が生成されている。
【００９１】
ここで、基準位置より右側の寸法線８１〜８３は、それぞれ異なる高さに設定されている。同様に、基準位置より左側の寸法線８４〜８５も、それぞれ異なる高さに設定されている。これにより、表示対象方向から見たときに寸法線が重なり合うのを防止している。
【００９２】
［寸法配置調整処理］
次に、寸法配置調整処理について説明する。寸法配置調整処理においては、３次元モデルと寸法オブジェクトとを投影し、その２次元の図面上で寸法値や注記等の文字と他のオブジェクトの線との重なりの有無を判断する。そして、重なる場合には、文字の位置をずらす処理を行う。
【００９３】
図１９は、寸法配置処理の手順を示すフローチャートの前半である。以下、図１９に示す処理をステップ番号に沿って説明する。
［ステップＳ７１］寸法オブジェクト作成部１４０は、ユーザからの操作入力に応答し、表示対象方向を決定する。
【００９４】
［ステップＳ７２］寸法オブジェクト作成部１４０は、３次元モデルと寸法オブジェクトとを、表示対象方向に応じた２次元平面上に投影する。
［ステップＳ７３］寸法オブジェクト作成部１４０は、投影した画像において、寸法値の表示位置が３次元モデルの輪郭線等の線に重なるか否かを判断する。この際、ステップＳ７９において、重なる位置に配置するものと決定された寸法値については、判断の対象から除外される。線と重なる寸法値がある場合、処理がステップＳ７４に進められる。重なりがない場合、処理がステップＳ８１（図２０に示す）に進められる。
【００９５】
［ステップＳ７４］寸法オブジェクト作成部１４０は、他の線と重なった寸法値の１つを選択する。
［ステップＳ７５］寸法オブジェクト作成部１４０は、選択した寸法値の横方向（基準位置と対象位置とに平行）に、投影による重なり判定を行っていない位置（未チェックの位置）があるかどうかを判断する。未チェックの位置があれば、処理がステップＳ７６に進められる。横方向の全ての位置がチェック済みであり、その位置でも重なりが解消できない場合、処理がステップＳ７７に進められる。
【００９６】
［ステップＳ７６］寸法オブジェクト作成部１４０は、選択した寸法値の位置を、３次元空間上で横方向の未チェックの位置にずらす。その後、処理がステップＳ７２に進められ、投影面上での重なりの有無がチェックされる。
【００９７】
［ステップＳ７７］寸法オブジェクト作成部１４０は、ステップＳ７４で選択した寸法値を上にずらす（３次元モデルから遠ざかる方を上とする）。
［ステップＳ７８］寸法オブジェクト作成部１４０は、高さが所定の上限値を超えるか否かを判断する。上限値を超える場合、処理がステップＳ７９に進められる。上限値を超えない場合、処理がステップＳ７２に進められ、投影面上での重なりの有無がチェックされる。
【００９８】
［ステップＳ７９］寸法オブジェクト作成部１４０は、所定の範囲内に重なりを解消できる位置がないと判断し、ステップＳ７４で選択した寸法値を重なる位置に配置する。たとえば、寸法値を初期状態の位置に戻す。その後、処理がステップＳ７２に進められ、他の寸法値の重なりの有無が判定される。
【００９９】
図２０は、寸法配置処理の手順を示すフローチャートの後半である。以下、図２０に示す処理をステップ番号に沿って説明する。
［ステップＳ８１］寸法オブジェクト作成部１４０は、重なりの有無を未チェックの注記があるか否かを判断する。未チェックの注記があれば、処理がステップＳ８２に進められる。全ての注記のチェックが終了していれば、処理がステップＳ２１（図４に示す）に進められる。
【０１００】
［ステップＳ８２］寸法オブジェクト作成部１４０は、注記の１つを選択する。
［ステップＳ８３］寸法オブジェクト作成部１４０は、３次元モデルと寸法オブジェクトとを投影する。
【０１０１】
［ステップＳ８４］寸法オブジェクト作成部１４０は、選択した注記の候補位置を決定する。たとえば、投影面を注記対象位置を原点とするＸ−Ｙ平面（Ｘ軸が横方向、Ｙ軸が縦方向）としたときに、注記対象位置から所定の距離だけ離れ、各象限においてＸ軸から４５度、Ｙ軸から４５度となる位置を、候補位置とする。
【０１０２】
［ステップＳ８５］寸法オブジェクト作成部１４０は、投影された画像において、他の線と重ならない候補位置があるか否かを判断する。重ならない候補位置がある場合、処理がステップＳ８６に進められる。重ならない候補位置がない場合、処理がステップＳ８７に進められる。
【０１０３】
［ステップＳ８６］寸法オブジェクト作成部１４０は、他の線と重ならない候補位置に、注記を配置する。その後、処理がステップＳ８１に進められ、他の注記の重なりチェックが行われる。
【０１０４】
［ステップＳ８７］寸法オブジェクト作成部１４０は、候補位置の１つを注記の対象となる位置を中心に、所定の角度（たとえば、最初１５度、その後３０度ずつ）だけ回転させる。
【０１０５】
［ステップＳ８８］寸法オブジェクト作成部１４０は、ステップＳ８７における回転により、対象となる候補位置が一回り（３６０度以上）回転したか否かを判断する。一回りした場合、処理がステップＳ８９に進められる。一回りしていない場合、処理がステップＳ８３に進められる。
【０１０６】
［ステップＳ８９］寸法オブジェクト作成部１４０は、注記対象位置から候補位置までの距離を延長する。たとえば、元の距離を１．５倍する。
［ステップＳ９０］寸法オブジェクト作成部１４０は、ステップＳ８９によって算出された距離が、予め設定された距離の上限値を超えたか否かを判断する。上限値を超えた場合、処理がステップＳ９１に進められる。上限値を超えていない場合、処理がステップＳ８３に進められる。
【０１０７】
［ステップＳ９１］寸法オブジェクト作成部１４０は、重ならない位置が検出できないと判断し、重なる位置に注記を配置する。その後、処理がステップＳ８１に進められ、他の注記の重なりチェックが行われる。
【０１０８】
図２１は、注記の重なり判定アルゴリズムを説明する図である。この例では、注記対象位置９０に対する説明を注記として３次元モデルに付加する場合を示している。この場合、まず、注記対象位置９０から所定の距離だけ離れ、各象限内でＸ軸とＹ軸とから４５度の位置（Ｘの正の軸を基準に反時計回りの角度で示すと、４５度、１３５度、２２５度、３１５度の位置）を候補位置９１〜９４とする。
【０１０９】
そして、各候補位置９１〜９４と３次元モデルの投影線９５との重なりの有無が判定される。図２１の例では、候補位置９４のみが重なっており、他の候補位置９１〜９３は重なっていない。この場合、重なっていない候補位置９１〜９３の１つを注記の位置とする。
【０１１０】
もし、全ての候補位置９１〜９４が投影線と重なっていた場合、たとえば、候補位置９１を注記対象位置９０を基準に回転させ、投影された画像上で重ならない位置を探索する。回転させただけでは、重ならない位置が見つからない場合、注記対象位置９０からの距離を伸ばして、同様の処理が行われる。
【０１１１】
このように３次元空間内での注記の位置を決定することで、投影された画像において、注記が他の線と重ならずに済む。
［表示処理］
次に、３次元モデルと寸法オブジェクトとの表示処理について説明する。このとき、寸法オブジェクトについては、表示方向に正対した寸法配置面に生成された寸法オブジェクトのみを表示対象とする。また、表示される画面において、所定値以下の長さになる寸法オブジェクトには、表示対象から除外する。
【０１１２】
図２２は、表示処理の手順を示すフローチャートである。以下、図２２に示す処理をステップ番号に沿って説明する。
［ステップＳ１０１］３次元モデル表示部１５０は、ユーザからの操作入力に応答して、表示倍率を決定する。
【０１１３】
［ステップＳ１０２］３次元モデル表示部１５０は、ユーザからの操作入力に応答して、表示方向Ｖｖを決定する。
［ステップＳ１０３］３次元モデル表示部１５０は、全ての寸法オブジェクトについて、表示の要否を決定したか否かを判断する。全ての寸法オブジェクトについて決定済みであれば、処理がステップＳ１０９に進められる。未決定の寸法オブジェクトがあれば、処理がステップＳ１０４に進められる。
【０１１４】
［ステップＳ１０４］３次元モデル表示部１５０は、表示の要否を未決定の寸法オブジェクトを１つ選択する。
［ステップＳ１０５］３次元モデル表示部１５０は、選択した寸法オブジェクトの表示対象方向Ｖｄと、ステップＳ１０２で決定した表示方向Ｖｖとが同じか否かを判断する。なお、方向の違いが所定値以下の場合、同じ方向とみなす。すなわち、表示対象方向Ｖｄと表示方向Ｖｖとの成す角が、予め設定された所定の角度以下であれば、選択した寸法オブジェクトを表示可能とする。方向が同じであれば、処理がステップＳ１０６に進められる。表示方向が異なれば、処理がステップＳ１０８に進められる。
【０１１５】
［ステップＳ１０６］３次元モデル表示部１５０は、表示倍率に応じて投影されたときの寸法の長さが所定の下限値以下か否かを判断する。寸法の長さとは、たとえば、寸法設定位置間の距離である。長さが下限値以下の場合、処理がステップＳ１０８に進められる。長さが下限値より長い場合、処理がステップＳ１０７に進められる。
【０１１６】
［ステップＳ１０７］３次元モデル表示部１５０は、ステップＳ１０４で選択した寸法オブジェクトを表示対象とする。その後、処理がステップＳ１０３に進められる。
［ステップＳ１０８］３次元モデル表示部１５０は、ステップＳ１０４で選択した寸法オブジェクトを表示対象外とする。その後、処理がステップＳ１０３に進められる。
【０１１７】
［ステップＳ１０９］３次元モデル表示部１５０は、全ての寸法オブジェクトに対して表示の要否判断が完了したら、３次元モデル及び表示対象の寸法オブジェクトを投影し、生成された画像をモニタ１１に表示する。
【０１１８】
このように、表示方向を向いた寸法オブジェクトのみを表示対象とすることで、不要な寸法の情報が表示されることを防止することができる。また、画面内で非常に小さく表示される寸法オブジェクトについても表示対象外としたことで、画面内に無駄な寸法が表示されることを防止できる。
【０１１９】
なお、上記実施の形態では、寸法オブジェクトを表示する可能な３次元ＣＡＤ機能を１つのコンピュータ上で実現する場合について説明したが、３次元モデルや寸法オブジェクトの作成機能と表示機能（ビューワ）とを個別のコンピュータに実装してもよい。
【０１２０】
また、上記の処理機能は、コンピュータによって実現することができる。その場合、コンピュータが有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。磁気記録装置には、ハードディスク装置（ＨＤＤ）、フレキシブルディスク（ＦＤ）、磁気テープなどがある。光ディスクには、ＤＶＤ(Digital Versatile Disc)、ＤＶＤ−ＲＡＭ(Random Access Memory)、ＣＤ−ＲＯＭ(Compact Disc Read Only Memory)、ＣＤ−Ｒ(Recordable)／ＲＷ(ReWritable)などがある。光磁気記録媒体には、ＭＯ(Magneto-Optical disk)などがある。
【０１２１】
プログラムを流通させる場合には、たとえば、そのプログラムが記録されたＤＶＤ、ＣＤ−ＲＯＭなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【０１２２】
プログラムを実行するコンピュータは、たとえば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送される毎に、逐次、受け取ったプログラムに従った処理を実行することもできる。
【０１２３】
（付記１）  寸法付きの３次元モデルを表示するための３次元モデル表示プログラムにおいて、
コンピュータを、
表示対象方向に対して垂直な寸法配置面上に定義され、前記表示対象方向から見たときの寸法設定位置間の寸法を示す寸法オブジェクトを記憶する記憶手段、
前記３次元モデルの表示方向を示す操作入力に応答し、前記記憶手段から前記表示方向と前記表示対象方向の差が所定値以内である前記寸法配置面上に設けられた前記寸法オブジェクトを抽出する寸法オブジェクト抽出手段、
前記表示方向から見た前記３次元モデルと、前記寸法オブジェクト抽出手段が抽出した前記寸法オブジェクトとを表示する表示手段、
として機能させることを特徴とする３次元モデル表示プログラム。
【０１２４】
（付記２）  さらに、前記表示対象方向を指定する操作入力を受け取ると３次元空間内に２つの前記寸法設定位置を決定し、前記寸法配置面上に前記寸法設定位置間の寸法を示す寸法オブジェクトを生成し、前記記憶手段に格納する寸法オブジェクト生成手段として機能させることを特徴とする付記１記載の３次元モデル表示プログラム。
【０１２５】
（付記３）  前記寸法オブジェクト生成手段は、操作入力によって指定された２点を前記寸法設定位置と決定することを特徴とする付記２記載の３次元モデル表示プログラム。
（付記４）  前記寸法オブジェクト生成手段は、前記寸法設定位置が前記寸法配置面に接していない場合、前記寸法設定位置と前記寸法オブジェクトの端点とを結ぶ補助線を生成し、前記寸法オブジェクトに付加し、
前記表示手段は、前記寸法オブジェクトを表示する際には、付加された前記補助線も表示することを特徴とする付記２記載の３次元モデル表示プログラム。
【０１２６】
（付記５）  前記寸法オブジェクト生成手段は、予めパーツ基準位置と寸法設定方向とが設定された複数のパーツに対し、操作入力により前記表示対象方向が入力されると、前記表示対象方向に垂直な方向から所定の角度以内の前記寸法設定方向が設定された前記パーツの組を選択し、選択した前記パーツそれぞれの前記パーツ基準位置を前記寸法設定位置として決定することを特徴とする付記２記載の３次元モデル表示プログラム。
【０１２７】
（付記６）  前記寸法オブジェクト生成手段は、互いの前記表示対象方向の成す角が所定の角度以内の前記パーツの組を選択して、選択した前記パーツそれぞれの前記パーツ基準位置を前記寸法設定位置として決定することを特徴とする付記５記載の３次元モデル表示プログラム。
【０１２８】
（付記７）  前記寸法オブジェクト生成手段は、操作入力により１つの基準位置と複数の対象位置を指定されたとき、前記基準位置と前記対象位置それぞれとの組を前記寸法設定位置とし、前記基準位置と各前記対象位置との間の線の高さをずらして、複数の前記寸法オブジェクトを生成することを特徴とする付記２記載の３次元モデル表示プログラム。
【０１２９】
（付記８）  前記寸法オブジェクト生成手段は、前記基準位置を通り前記表示対象方向からみて垂直な線を境界として前記複数の対象位置を前記線の左右のグループに分類し、同じグループに分類された前記対象位置同士の関係において、前記基準位置と各前記対象位置との間の線の高さをずらすことを特徴とする付記７記載の３次元モデル表示プログラム。
【０１３０】
（付記９）  前記寸法オブジェクト生成手段は、前記寸法オブジェクトを生成後、前記３次元モデルと前記寸法オブジェクトとを前記表示対象方向に応じて投影し、前記寸法オブジェクトの寸法値が前記３次元モデルを表す線と重ならない位置に前記寸法値を配置することを特徴とする付記２記載の３次元モデル表示プログラム。
【０１３１】
（付記１０）  前記寸法オブジェクト生成手段は、前記表示対象方向が指定された注記が仮想３次元空間内に設定されているとき、前記３次元モデルと前記注記とを前記表示対象方向に応じて投影し、投影された画像において前記注記が前記３次元モデルを表す線と重ならない位置に前記注記を配置することを特徴とする付記２記載の３次元モデル表示プログラム。
【０１３２】
（付記１１）  前記表示手段は、画面内での大きさが所定値以下となる前記寸法オブジェクトを、表示対象から除外することを特徴とする付記１記載の３次元モデル表示プログラム。
【０１３３】
（付記１２）  寸法付きの３次元モデルを表示するための３次元モデル表示方法において、
記憶手段が、表示対象方向に対して垂直な寸法配置面上に定義され、前記表示対象方向から見たときの寸法設定位置間の寸法を示す寸法オブジェクトを記憶し、
寸法オブジェクト抽出手段が、前記３次元モデルの表示方向を示す操作入力に応答し、前記記憶手段から前記表示方向と前記表示対象方向の差が所定値以内である前記寸法配置面上に設けられた前記寸法オブジェクトを抽出し、
表示手段が、前記表示方向から見た前記３次元モデルと、前記寸法オブジェクト抽出手段が抽出した前記寸法オブジェクトとを表示する、
ことを特徴とする３次元モデル表示方法。
【０１３４】
（付記１３）  寸法付きの３次元モデルを表示するための３次元モデル表示装置において、
表示対象方向に対して垂直な寸法配置面上に定義され、前記表示対象方向から見たときの寸法設定位置間の寸法を示す寸法オブジェクトを記憶する記憶手段と、
前記３次元モデルの表示方向を示す操作入力に応答し、前記記憶手段から前記表示方向と前記表示対象方向の差が所定値以内である前記寸法配置面上に設けられた前記寸法オブジェクトを抽出する寸法オブジェクト抽出手段と、
前記表示方向から見た前記３次元モデルと、前記寸法オブジェクト抽出手段が抽出した前記寸法オブジェクトとを表示する表示手段と、
を有することを特徴とする３次元モデル表示装置。
【０１３５】
（付記１４）  寸法付きの３次元モデルを表示するための３次元モデル表示プログラムを記録したコンピュータ読み取り可能な記録媒体において、
前記コンピュータを、
表示対象方向に対して垂直な寸法配置面上に定義され、前記表示対象方向から見たときの寸法設定位置間の寸法を示す寸法オブジェクトを記憶する記憶手段、
前記３次元モデルの表示方向を示す操作入力に応答し、前記記憶手段から前記表示方向と前記表示対象方向の差が所定値以内である前記寸法配置面上に設けられた前記寸法オブジェクトを抽出する寸法オブジェクト抽出手段、
前記表示方向から見た前記３次元モデルと、前記寸法オブジェクト抽出手段が抽出した前記寸法オブジェクトとを表示する表示手段、
として機能させることを特徴とする３次元モデル表示プログラムを記録したコンピュータ読み取り可能な記録媒体。
【図面の簡単な説明】
【０１３６】
【図１】実施の形態に適用される発明の概念図である。
【図２】本発明の実施の形態に用いるコンピュータのハードウェア構成例を示す図である。
【図３】コンピュータの機能を示すブロック図である。
【図４】部品設計の処理手順を示す図である。
【図５】任意２点間寸法作成処理を示すフローチャートである。
【図６】補助線作成処理の手順を示すフローチャートである。
【図７】寸法オブジェクトの例を示す図である。
【図８】寸法オブジェクトのデータ構造例を示す図である。
【図９】寸法が付加された３次元モデルを示す図である。
【図１０】３次元モデルと寸法オブジェクトとを上から見た図である。
【図１１】２次元平面に寸法線を設定した場合の表示結果を示す図である。
【図１２】３次元モデルに補助線のない寸法オブジェクトを設定した場合の表示結果を示す図である。
【図１３】３次元モデルに補助線のある寸法オブジェクトを設定した場合の表示結果を示す図である。
【図１４】パーツ組み合わせ寸法作成処理の手順を示すフローチャートである。
【図１５】寸法対象情報の設定例を示す図である。
【図１６】パーツ組み合わせ寸法作成例を示す図である。
【図１７】任意の方向から見た複数の寸法同時作成処理の手順を示すフローチャートである。
【図１８】同時作成処理によって生成された寸法線の例を示す図である。
【図１９】寸法配置処理の手順を示すフローチャートの前半である。
【図２０】寸法配置処理の手順を示すフローチャートの後半である。
【図２１】注記の重なり判定アルゴリズムを説明する図である。
【図２２】表示処理の手順を示すフローチャートである。
【符号の説明】
【０１３７】
１  記憶手段
１ａ  ３次元モデル
１ｂ  寸法オブジェクト
２  寸法オブジェクト生成手段
３  寸法オブジェクト抽出手段
４  表示手段
５，６  画面
【図１】
2006048569.tif 000003
【図２】
2006048569.tif 000004
【図３】
2006048569.tif 000005
【図４】
2006048569.tif 000006
【図５】
2006048569.tif 000007
【図６】
2006048569.tif 000008
【図７】
2006048569.tif 000009
【図８】
2006048569.tif 000010
【図９】
2006048569.tif 000011
【図１０】
2006048569.tif 000012
【図１１】
2006048569.tif 000013
【図１２】
2006048569.tif 000014
【図１３】
2006048569.tif 000015
【図１４】
2006048569.tif 000016
【図１５】
2006048569.tif 000017
【図１６】
2006048569.tif 000018
【図１７】
2006048569.tif 000019
【図１８】
2006048569.tif 000020
【図１９】
2006048569.tif 000021
【図２０】
2006048569.tif 000022
【図２１】
2006048569.tif 000023
【図２２】
2006048569.tif 000024