(57)【要約】      （修正有）【課題】２次元図面に表示された隠線の奥行き方向を認識させつつ、ユーザが容易に隠線の表示制御をすることの可能な仕組みを提供する。【解決手段】２次元図面上で選択されたビューに対応する平面を、当該２次元図面を生成した３次元モデルを表示する３次元空間上に設定する。隠線コントロール画面に備えられたスライダーに対する操作に応じて、設定した平面を平行移動させ、ユーザに奥行き方向の認識をさせる。そして、スライダーに対する操作に基づいて隠線の表示制御をするコンポーネントを特定し、当該コンポーネントの隠線を表示または非表示とする。【選択図】図１５
2014146266.tif 000002
【特許請求の範囲】
【請求項１】
設計物の立体形状を示す３次元モデルと、当該３次元モデルから生成された２次元図面とを管理する情報処理装置であって、
前記２次元図面を構成する投影図の選択を受け付ける投影図選択受付手段と、
前記投影図選択受付手段で選択を受け付けた投影図に対応する平面を、前記２次元図面に対応する３次元モデルを表示する３次元空間上に設定する平面設定手段と、
前記投影図選択受付手段で選択された投影図の奥行き方向の指定を受け付ける奥行き指定受付手段と、
前記奥行き指定受付手段における奥行き方向の指定の受付に応じて、前記平面設定手段で設定された平面を移動させる平面移動手段と、
前記奥行き指定受付手段で指定を受け付けた奥行き方向に基づいて、前記３次元モデルを構成する部品要素を特定する部品要素特定手段と、
前記部品要素特定手段で特定された部品要素の隠線の表示状態を制御する表示制御手段と
を備えることを特徴とする情報処理装置。
【請求項２】
前記情報処理装置は、
前記２次元図面上で表示制御を行う範囲の指定を受け付ける範囲指定受付手段を更に備え、
前記表示制御手段は、前記範囲指定受付手段で受け付けた範囲にある部品要素であって、前記部品要素特定手段で特定された部品要素の隠線の表示状態を制御することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記情報処理装置は、
前記表示制御手段で表示制御した結果を取り消す指示を受け付ける取消指示受付手段を更に備え、
前記表示制御手段は、前記取消指示受付手段で取り消す指示を受け付けた場合には、前記部品要素特定手段で特定された部品要素の隠線の表示状態を初期状態に戻すことを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記平面移動手段は、前記奥行き指定受付手段における奥行き方向の指定の受付に応じて、前記平面設定手段で設定された平面を当該奥行き方向に対して平行に移動させることを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
前記奥行き指定受付手段は、スライダーによって前記投影図選択受付手段で選択された投影図の奥行き方向の指定を受け付けることを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記表示制御手段は、前記部品要素特定手段で特定された部品要素の隠線の表示状態を表示または非表示となるよう制御することを特徴とする請求項１乃至５のいずれか１項に記載の情報処理装置。
【請求項７】
設計物の立体形状を示す３次元モデルと、当該３次元モデルから生成された２次元図面とを管理する情報処理装置の制御方法であって、
前記情報処理装置の投影図選択受付手段が、前記２次元図面を構成する投影図の選択を受け付ける投影図選択受付ステップと、
前記情報処理装置の平面設定手段が、前記投影図選択受付ステップで選択を受け付けた投影図に対応する平面を、前記２次元図面に対応する３次元モデルを表示する３次元空間上に設定する平面設定ステップと、
前記情報処理装置の奥行き指定受付手段が、前記投影図選択受付ステップで選択された投影図の奥行き方向の指定を受け付ける奥行き指定ステップと、
前記情報処理装置の平面移動手段が、前記奥行き指定受付ステップにおける奥行き方向の指定の受付に応じて、前記平面設定ステップで設定された平面を移動させる平面移動ステップと、
前記情報処理装置の部品要素特定手段が、前記奥行き指定ステップで指定を受け付けた奥行き方向に基づいて、前記３次元モデルを構成する部品要素を特定する部品要素特定ステップと、
前記情報処理装置の表示制御手段が、前記部品要素特定ステップで特定された部品要素の隠線の表示状態を制御する表示制御ステップと
を備えることを特徴とする情報処理装置の制御方法。
【請求項８】
設計物の立体形状を示す３次元モデルと、当該３次元モデルから生成された２次元図面とを管理する情報処理装置の制御方法をコンピュータに実行させるためのコンピュータに読み取り実行可能なプログラムであって、
前記情報処理装置を、
前記２次元図面を構成する投影図の選択を受け付ける投影図選択受付手段と、
前記投影図選択受付手段で選択を受け付けた投影図に対応する平面を、前記２次元図面に対応する３次元モデルを表示する３次元空間上に設定する平面設定手段と、
前記投影図選択受付手段で選択された投影図の奥行き方向の指定を受け付ける奥行き指定受付手段と、
前記奥行き指定受付手段における奥行き方向の指定の受付に応じて、前記平面設定手段で設定された平面を移動させる平面移動手段と、
前記奥行き指定受付手段で指定を受け付けた奥行き方向に基づいて、前記３次元モデルを構成する部品要素を特定する部品要素特定手段と、
前記部品要素特定手段で特定された部品要素の隠線の表示状態を制御する表示制御手段
として機能させることを特徴とするコンピュータに読み取り実行可能なプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、３次元モデルを用いた２次元図面の作成に関し、特に容易な操作で２次元図面における隠線の表示制御をすることの可能な情報処理装置、その制御方法、及びプログラムに関する。
【背景技術】
【０００２】
３次元ＣＡＤソフトの普及と共に３次元形状データ（以下、３次元モデル）作成による設計が進んだ現在でも、設計における最終的な成果物は、従来同様２次元図面データ（以下、２次元図面）、すなわち紙に印刷された図面（以下、紙図面）であることが多い。これには長年にわたる国内企業の文化や慣習はもとより、官公庁などとのやり取りにおいても紙図面が用いられることが起因している。そのため３次元モデルに全ての設計情報が盛り込まれているとしても、依然として設計した３次元モデルをもとに２次元図面を作成しなければならない。またそうした理由からも、３次元ＣＡＤソフトには３次元モデルから２次元図面の作成機能が一般的に備わっている。
【０００３】
２次元図面は、一般的に正面、平面（上面）、右側面を投影した投影図から成る三面図である。三面図で把握できるような単純な設計物であればよいが、そうではないことが多い。複雑な構成をしている設計物はこの三面図では設計物を完璧に表現することは難しい。そのため、ある投影図の奥行き方向を透過させた場合に隠れている線（以下、隠線）を破線等で表現し、三面図では足りない情報を補っている。
【０００４】
隠線の表示制御について、下記の特許文献１には、ループ形状のような後ろに隠れた部品が一部見えるような場合に、ループ形状の部分は隠線を非表示とし、部品が一部見える部分は、隠れ線を表示するような仕組みが開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平８−３２０８９８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
前述した通り、３次元ＣＡＤソフトには３次元モデルから２次元図面を作成する機能が備わっている。しかしながら、あくまで３次元ＣＡＤソフトは３次元モデルを扱うソフトウェアであり、３次元モデルから２次元図面を生成することはできても、２次元図面に対する細かな操作を行うことはできない。そのため、２次元図面に表現された隠線も、すべての隠れ線を表示または非表示とするか、隠線を構成する線要素を１本ずつ表示または非表示とする機能しか備えていない。よって、３次元ＣＡＤソフトのユーザは、必要な隠線だけを表示する場合には、不要な隠線を１本ずつ選択して非表示にしなければならなかった。
【０００７】
また前述した通り、隠線は、ある投影図の奥行き方向を透過させた場合に隠れている線である。しかしながら、平面である２次元図面では奥行き方向を把握しにくく、表示されている隠線が３次元モデルのどの部分に対応する隠線なのかがわかりにくい問題があった。隠線の形状からある程度３次元モデルを構成する部品を想像することはできても、平面である２次元図面からは奥行きが掴みにくい。似たような部品が数多く重なり合っている設計物においては、特に部品の構成を把握しにくいため、隠線の表示制御を行っても、間違った部品の隠線を表示または非表示にしている場合が多かった。
【０００８】
これを解決するために、２次元図面の元となった３次元モデルを構成する部品データやアセンブリデータ（以下、コンポーネント）のファイル名を一覧表示して、選択されたコンポーネントの隠線を表示または非表示とする仕組みが考えられる。しかしながら、ファイル名を一覧表示しただけでは、３次元モデルのどの位置に配置されたコンポーネントなのかわかりにくい問題があり、結局設計者でないと、正確に隠線を表示制御することは難しかった。
【０００９】
本発明は上記の課題を解決するためになされたもので、２次元図面に表示された隠線の奥行き方向を認識させつつ、ユーザが容易に隠線の表示制御をすることの可能な仕組みを提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記の目的を達成するために、本発明の情報処理装置は、設計物の立体形状を示す３次元モデルと、当該３次元モデルから生成された２次元図面とを管理する情報処理装置であって、前記２次元図面を構成する投影図の選択を受け付ける投影図選択受付手段と、前記投影図選択受付手段で選択を受け付けた投影図に対応する平面を、前記２次元図面に対応する３次元モデルを表示する３次元空間上に設定する平面設定手段と、前記投影図選択受付手段で選択された投影図の奥行き方向の指定を受け付ける奥行き指定受付手段と、前記奥行き指定受付手段における奥行き方向の指定の受付に応じて、前記平面設定手段で設定された平面を移動させる平面移動手段と、前記奥行き指定受付手段で指定を受け付けた奥行き方向に基づいて、前記３次元モデルを構成する部品要素を特定する部品要素特定手段と、前記部品要素特定手段で特定された部品要素の隠線の表示状態を制御する表示制御手段とを備えることを特徴とする。
【発明の効果】
【００１１】
本発明によれば、隠線の表示制御を行う奥行きの指定をユーザから受け付けると、指定された奥行きに応じて、当該奥行き箇所を３次元モデル上で識別表示しつつ、当該奥行きに基づいて抽出されたコンポーネントの隠線を表示制御することが可能となるので、ユーザはユーザが指定した奥行きに対応する箇所を３次元モデル上で閲覧しつつ、容易に隠線の表示制御を行うことのできる効果を奏する。
【図面の簡単な説明】
【００１２】
【図１】情報処理装置１００のハードウェア構成の一例を示す構成図である。
【図２】情報処理装置１００のモジュール構成の一例を示す構成図である。
【図３】本発明の実施形態における一連の処理の流れを示すフローチャートである。
【図４】本発明の実施形態における２次元図面の一例を示す模式図である。
【図５】情報処理装置１００に記憶されたコンポーネントテーブル５００の一例を示す構成図である。
【図６】隠線コントロール画面６００の一例を示す構成図である。
【図７】隠線コントロール範囲受付処理の詳細を示すフローチャートである。
【図８】情報処理装置１００に記憶されたビュースケッチテーブル８００の一例を示す構成図である。
【図９】隠線コントロール画面６００の画面遷移を示す模式図である。
【図１０】コンポーネントリスト表示処理の詳細を示すフローチャートである。
【図１１】情報処理装置１００に記憶された補正テーブル１１００、３次元モデルスケッチテーブル１１１０の一例を示す構成図である。
【図１２】情報処理装置１００に記憶された正方向テーブル１２００、負方向テーブル１２１０の一例を示す構成図、および正方向テーブル１２００と負方向テーブル１２１０から生成されるコンポーネントテーブル５００の一例を示す模式図である。
【図１３】ユーザから指定された選択範囲に基づいて、３次元モデルからコンポーネントを抽出する際の処理の一例を示す模式図である。
【図１４】隠線表示コントロール（スライダー）処理の詳細を示すフローチャートである。
【図１５】スライダー操作時の処理概要を示す模式図である。
【図１６】スライダー操作時に更新されるコンポーネントテーブル５００の一例を示す模式図である。
【図１７】隠線表示コントロール（チェックボックス）処理の詳細を示すフローチャートである。
【発明を実施するための形態】
【００１３】
以下、図面を参照して、本発明の実施の形態の一例について説明する。
【００１４】
図１は、本発明の実施形態における情報処理装置１００のハードウェア構成を示す図である。
【００１５】
情報処理装置１００は、パーソナルコンピュータのような装置である。情報処理装置１００にインストールされた３次元ＣＡＤソフトに対する操作をユーザから受け付けることで、設計物の立体形状を示す３次元モデルや、当該３次元モデルから生成された２次元図面を扱うことができる。３次元ＣＡＤソフトでは、３次元モデルの表示や設計、３次元モデルに対応する２次元図面の出力、出力された２次元図面の編集を行うことができる。また、３次元モデルから生成された２次元図面は、元となる３次元モデルと対応づいている。そのため、３次元モデルで変更を加えた場合、対応する２次元図面は自動的にその変更が反映された状態で表示できる仕組みになっている。３次元モデルと２次元図面の対応づけや操作は、３次元ＣＡＤソフトに備えられた各種ＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ）によって行うことができる。そのため、２次元図面で選択された線要素が３次元モデルのどの部分に対応するのかは、このＡＰＩが動作することで分かる仕組みになっている。
【００１６】
図１に示すＣＰＵ１０１は、システムバス１０４に接続される各デバイスやコントローラを統括的に制御する。
【００１７】
また、ＲＯＭ１０２あるいは外部メモリ１１１には、ＣＰＵ１０１の制御プログラムであるＢＩＯＳ(Ｂａｓｉｃ  Ｉｎｐｕｔ  ／  ＯｕｔｐｕｔＳｙｓｔｅｍ)やオペレーティングシステムプログラム（以下、ＯＳ）や、各サーバ或いは各ＰＣの実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。ＲＡＭ１０３は、ＣＰＵ１０１の主メモリ、ワークエリア等として機能する。
【００１８】
ＣＰＵ１０１は、処理の実行に際して必要なプログラム等をＲＡＭ１０３にロードして、プログラムを実行することで各種動作を実現するものである。
【００１９】
また、入力コントローラ（入力Ｃ）１０５は、キーボードやマウスといった入力デバイス１０９からの入力を制御する。
【００２０】
ビデオコントローラ（ＶＣ）１０６は、ディスプレイ１１０等の表示器への表示を制御する。表示器はＣＲＴや、液晶ディスプレイ等を想定するが、これに限らない。
【００２１】
メモリコントローラ（ＭＣ）１０７は、ブートプログラム、ブラウザソフトウエア、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスク（ＨＤ）やフレキシブルディスク（ＦＤ）或いはＰＣＭＣＩＡカードスロットにアダプタを介して接続されるカード型メモリ等の外部メモリ１１１へのアクセスを制御する。
【００２２】
通信Ｉ／Ｆコントローラ（通信Ｉ／ＦＣ）１０８は、ネットワークを介して、外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、ＴＣＰ／ＩＰを用いたインターネット通信等が可能である。
【００２３】
尚、ＣＰＵ１０１は、例えばＲＡＭ１０３内の表示情報用領域へアウトラインフォントの展開（ラスタライズ）処理を実行することにより、ディスプレイ１１０上での表示を可能としている。また、ＣＰＵ１０１は、ディスプレイ１１０上の不図示のマウスカーソル等でのユーザ指示を可能とする。
【００２４】
本発明の情報処理装置１００が後述する各種処理を実行するために用いられる各種プログラム等は外部メモリ１１１に記録されており、必要に応じてＲＡＭ１０３にロードされることによりＣＰＵ１０１によって実行されるものである。さらに、本発明に係わるプログラムが用いる定義ファイルや各種情報テーブルは外部メモリ１１１に格納されている。
【００２５】
次に、情報処理装置１００のモジュール構成を示す機能構成図について、図２を用いて説明する。尚、図２のモジュール構成は一例であり、用途や目的に応じて様々な構成例があることは言うまでもない。また、各モジュールは、ＡＰＩであってもよい。
【００２６】
情報処理装置１００の３次元ＣＡＤソフト２００は、ＣＡＤデータ表示モジュール２０１、コンポーネント抽出モジュール２０２、２次元図面生成モジュール２０３、座標変換モジュール２０４、規定平面設定モジュール２０５、対応要素特定モジュール２０６を備える。
【００２７】
ＣＡＤデータ表示モジュール２０１は、情報処理装置１００の外部メモリ１１１等に記憶された３次元モデルや２次元図面をＲＡＭ１０３に読み出し、ディスプレイ１１０に表示させるためのモジュールである。また、３次元モデルや２次元図面を操作するための各種画面やメニューの表示制御も行う。そして、後述する隠線コントロールツール２１０の隠線表示制御モジュール２１４からの要求に応じて、２次元図面上のある投影図の奥行き方向を透過させた場合に隠れている線（以下、隠線）を表示または非表示となるよう制御する。
【００２８】
コンポーネント抽出モジュール２０２は、３次元モデルを構成するコンポーネントを抽出するためのモジュールである。後述する隠線コントロールツール２１０の隠線範囲指定モジュール２１１で２次元図面上において受け付けた選択範囲に基づいて、当該選択範囲の奥行き方向にあるコンポーネントを対応する３次元モデルから抽出する。尚、コンポーネント（部品要素）は、アセンブリを構成するひとつひとつの部品を意味し、同一の部品が複数個アセンブリに含まれる場合でも、それらのコンポーネントは個別のコンポーネントとして識別される。
【００２９】
２次元図面生成モジュール２０３は、３次元モデルから２次元図面を生成するためのモジュールである。３次元モデルを正面、上面、右側面といった規定平面から見た場合の輪郭線や隠線を２次元の平面に投影し、２次元図面を生成する。生成された２次元図面の各線要素は３次元モデルと対応づいており、後述する対応要素特定モジュール２０６によって、特定することができる。
【００３０】
座標変換モジュール２０４は、２次元図面上の座標と、対応する３次元モデルを表示する３次元空間上の座標とを相互に変換するためのモジュールである。後述する隠線範囲指定モジュール２１１で２次元図面のある範囲が選択された場合、３次元空間上のどの範囲に対応するのかを特定するために、座標変換モジュール２０４が座標の変換を行う。
【００３１】
規定平面設定モジュール２０５は、３次元モデルに正面、上面、右側面といった投影図を設定するモジュールである。３次元モデルが表示された３次元空間上に正面、上面、右側面に該当する仮想平面を作成し、それらを規定平面とする。規定平面設定モジュール２０５で設定された規定平面に基づいて、前述した２次元図面生成モジュール２０３で対応する投影図が２次元図面上に生成される。
【００３２】
対応要素特定モジュール２０６は、２次元図面で選択された要素が、対応する３次元モデル上でどこに対応するのか特定するためのモジュールである。また、３次元モデルで選択された要素が、対応する２次元図面上でどこに対応するのかも特定できる。これらの具体的な特定方法は、従来技術であるので説明を省略する。
【００３３】
情報処理装置１００の隠線コントロールツール２１０は、隠線範囲指定モジュール２１１、深度指定モジュール２１２、深度位置表示モジュール２１３、隠線表示制御モジュール２１４を備える。
【００３４】
隠線範囲指定モジュール２１１は、２次元図面において隠線の表示制御を行いたい範囲の選択を受け付けるためのモジュールである。マウス等の入力デバイス１０９からの指示に応じて矩形で範囲選択を受け付ける。選択を受け付けると、選択された矩形の座標値を取得し、前述した座標変換モジュール２０４に渡す。こうすることで、２次元図面上で選択された矩形の範囲に対応する３次元空間上の箇所を、特定することができる。
【００３５】
深度指定モジュール２１２は、後述する隠線コントロール画面６００に備えられたスライダーに対する操作を受け付けて、２次元図面の奥行き方向である深度の指定を行うためのモジュールである。
【００３６】
深度位置表示モジュール２１３は、前述した深度指定モジュール２１２で操作されたスライダーに対応する一時的な仮想平面を３次元空間上に作成し、深度指定モジュール２１２で指定された奥行き（以下、深度）を３次元空間上で識別表示するためのモジュールである。この仮想平面を見ることにより、３次元空間上でどのくらいの奥行きを指定しているのかを見ながら、スライダーに対する操作を行える。
【００３７】
隠線表示制御モジュール２１４は、深度指定モジュール２１２で指定された深度に応じて、前述したコンポーネント抽出モジュール２０２で抽出されたコンポーネントの表示制御を、前述したＣＡＤデータ表示モジュール２０１に指示するためのモジュールである。隠線コントロール画面６００に備えられたスライダーで指定された深度に応じて、隠線の表示または非表示を決定できるので、この指定に応じて、ＣＡＤデータ表示モジュール２０１に対して、隠線の表示または非表示するよう指示を送る。
【００３８】
次に、本発明の実施形態における情報処理装置１００によって行われる一連の処理について、図３に示すフローチャートを用いて説明する。この処理を情報処理装置１００に実行させるためのプログラムは、情報処理装置１００にインストールされている３次元ＣＡＤソフト２００の一部、若しくはアドオンプログラムとして用意されていてもよいし、３次元ＣＡＤソフト２００とは別にインストールされたプログラムとして用意されていてもよい。
【００３９】
まず、ステップＳ３０１では、情報処理装置１００は、ユーザからの指示に応じて３次元ＣＡＤソフト２００を外部メモリ１１１からＲＡＭ１０３に読み出し、起動させる。
【００４０】
ステップＳ３０２では、情報処理装置１００の３次元ＣＡＤソフト２００は、ユーザからの指示に応じて３次元ＣＡＤソフト２００上で、３次元モデルから生成された図４に示すような２次元図面を開き、ディスプレイ１１０に表示させる。２次元図面は、外部メモリ１１１等の記憶媒体に記憶されており、これらからＲＡＭ１０３に読みだして、３次元ＣＡＤソフト２００上で開く。尚、２次元図面に対応する３次元モデルも、外部メモリ１１１等の記憶媒体に記憶されている。そのため、２次元図面を開いたときに合わせて対応する３次元モデルも開いてもよい。図４に示す２次元図面４００は、正面４０１、上面４０２、右側面４０３といった三面図から構成され、更に等角投影４０４、分解イメージ４０５も表示されている。２次元図面４００に表示する情報はユーザが設定できる。３次元モデルから２次元図面を生成する際に、規定平面設定モジュール２０５で３次元空間上に設定された平面に基づいて２次元図面に三面図を投影し、更に等角投影４０４、分解イメージ４０５といったような任意の情報も合わせて表示させる。こうすることにより、三面図の理解を助けている。
【００４１】
ステップＳ３０３では、情報処理装置１００の３次元ＣＡＤソフト２００は、ユーザからの指示に応じて、隠線コントロール画面６００（図６参照）を表示するためのコマンドを実行する。当該コマンドは、３次元ＣＡＤソフト２００に備えられたメニューの一つであってもよいし、３次元ＣＡＤソフト２００とは別のプログラムとして動作してもよい。コマンドを実行すると、隠線の制御を行うための隠線コントロール画面６００をディスプレイ１１０に表示させる。
【００４２】
ステップＳ３０４では、情報処理装置１００は、ユーザからの指示に応じて、隠線の表示制御を行いたい範囲（例えば、図４の選択範囲４０６）の指定を受け付ける処理を実行する。隠線コントロール範囲受付処理の詳細は、後述する図７に示す。
【００４３】
ステップＳ３０５では、情報処理装置１００の隠線コントロールツール２１０は、隠線コントロール画面６００に備えられた確定ボタン６０２が押下されたか否かを判定する。確定ボタン６０２が押下されたと判定した場合には、ステップＳ３０６に処理を進める。確定ボタン６０２が押下されず、解除ボタン６０３が押下されたと判定した場合には、ステップＳ３０４に処理を戻す。
【００４４】
ステップＳ３０６では、情報処理装置１００は、ステップＳ３０４で指定された選択範囲に応じて対応する３次元モデルからコンポーネントを抽出し、抽出したコンポーネントを隠線コントロール画面６００に備えられたコンポーネントリスト６０６に一覧表示する処理を実行する。コンポーネントリスト表示処理の詳細は、後述する図１０に示す。
【００４５】
ステップＳ３０７では、情報処理装置１００の隠線コントロールツール２１０は、隠線コントロール画面６００に備えられたスライダー（左スライダー６０４、右スライダー６０５）、またはチェックボックス６０７のうち、どちらに対する操作をユーザから受け付けたかを判定する。スライダーに対する操作を受け付けたと判定した場合には、ステップＳ３０８に処理を進める。チェックボックス６０７に対する操作を受け付けたと判定した場合には、ステップＳ３０９に処理を進める。
【００４６】
ステップＳ３０８では、情報処理装置１００は、スライダーの操作に応じて隠線の表示制御を行う処理を実行する。隠線表示コントロール（スライダー）処理の詳細は、後述する図１４に示す。
【００４７】
ステップＳ３０９では、情報処理装置１００は、チェックボックス６０７に対する操作に応じて隠線の表示制御を行う処理を実行する。隠線表示コントロール（チェックボックス）処理の詳細は、後述する図１７に示す。
【００４８】
ステップＳ３１０では、情報処理装置１００の隠線コントロールツール２１０は、隠線コントロール画面６００に備えられたキャンセルボタン６０９が押下されたか否かを判定する（取消指示受付手段）。つまり、ステップＳ３０８やステップＳ３０９において更新された隠線の表示状態を取り消す指示がなされたか否かを判定する。キャンセルボタン６０９が押下されたと判定した場合には、ステップＳ３１１に処理を進める。キャンセルボタン６０９が押下されなかったと判定した場合には、ステップＳ３１２に処理を進める。
【００４９】
ステップＳ３１１では、情報処理装置１００の隠線コントロールツール２１０は、ステップＳ３０６において生成されたコンポーネントテーブル５００（図５参照）の初期隠線表示状態５０５に基づいて、表示された２次元図面の隠線の表示状態を制御する。初期隠線表示状態５０５は、ステップＳ３０８やステップＳ３０９において隠線の表示制御を行う前の表示状態を示すフラグである。キャンセルボタン６０９が押下されたということは、ステップＳ３０８やステップＳ３０９で表示制御された隠線を初期状態に戻す必要がある。そのため、初期隠線表示状態５０５に基づいて、隠線の表示状態を初期状態に戻している。
【００５０】
コンポーネントテーブル５００（図５参照）は、ＮＯ５０１、コンポーネント名５０２、深度座標５０３、隠線表示状態５０４、初期隠線表示状態５０５から構成される。ＮＯ５０１は、コンポーネントテーブル５００のレコードを一意に識別するための識別番号である。コンポーネント名５０２は、３次元モデルを構成するコンポーネントの名称を示す情報である。深度座標５０３は、当該コンポーネントの奥行きを示す座標値を示す。３次元モデルのＸ軸とＹ軸から成る平面であれば、奥行きはＺ軸となるので、深度座標５０３にはＺ座標が格納される。一方、３次元モデルのＸ軸とＺ軸から成る平面であれば、奥行きはＹ軸となるので、深度座標５０３にはＹ座標が格納される。更に、３次元モデルのＹ軸とＺ軸から成る平面であれば、奥行きはＸ軸となるので、深度座標５０３にはＸ座標が格納される。隠線表示状態５０４は、当該コンポーネントの隠線の表示状態を示すフラグである。隠線表示状態５０４が「０」であれば非表示、「１」であれば表示を示す。初期隠線表示状態５０５は、当該コンポーネントの隠線の表示制御を行う前の初期状態を示すフラグである。初期隠線表示状態５０５が「０」であれば非表示、「１」であれば表示を示す。
【００５１】
ステップＳ３１２では、情報処理装置１００の隠線コントロールツール２１０は、隠線コントロール画面６００に備えられたＯＫボタン６０８が押下されたか否かを判定する。ＯＫボタン６０８が押下されたと判定した場合には、ステップＳ３１３に処理を進める。ＯＫボタン６０８が押下されなかったと判定した場合には、ステップＳ３０７に処理を戻す。
【００５２】
ステップＳ３１３では、情報処理装置１００の３次元ＣＡＤソフト２００は、ステップＳ３０３で起動した隠線コントロール画面６００を閉じる。また、ユーザからの指示に応じて、ステップＳ３０２で開いた２次元図面を閉じ、ステップＳ３０１で起動した３次元ＣＡＤソフトも終了させる。
【００５３】
次に、隠線コントロール範囲受付処理について図７を用いて説明する。この処理を情報処理装置１００に実行させるためのプログラムは、情報処理装置１００にインストールされている３次元ＣＡＤソフト２００の一部、若しくはアドオンプログラムとして用意されていてもよいし、３次元ＣＡＤソフト２００とは別にインストールされたプログラムとして用意されていてもよい。
【００５４】
まず、ステップＳ７０１では、情報処理装置１００の隠線コントロールツール２１０は、ユーザからの指示に応じて、２次元図面を構成する投影図（以下、ビュー）における矩形の範囲選択を受け付ける（範囲指定受付手段）。例えば、図４の選択範囲４０６に示すような矩形の範囲選択を受け付ける。本実施形態では、矩形の範囲選択を受け付けているが、ビューの選択を受け付けるだけでもよい（投影図選択受付手段）。
【００５５】
ステップＳ７０２では、情報処理装置１００の３次元ＣＡＤソフト２００は、ステップＳ７０１で受け付けた矩形の選択範囲が規定平面であるか否かを判定する。具体的には、規定平面設定モジュール２０５で設定された平面の投影図上で範囲選択がなされたか否かを判定すればよい。つまり、投影図上で範囲選択がなされていないと、奥行きである深度の算出ができないので、このような判定を行っている。選択範囲が規定平面であると判定された場合には、ステップＳ７０３に処理を進める。選択範囲が規定平面でないと判定された場合には、隠線コントロール範囲受付処理を終了する。
【００５６】
ステップＳ７０３では、情報処理装置１００の隠線コントロールツール２１０は、ステップＳ７０１で受け付けた選択範囲に関する情報を取得し、ビュースケッチテーブル８００（図８参照）に格納する。
【００５７】
ビュースケッチテーブル８００（図８参照）は、ＮＯ８０１、スケッチ名８０２、所属ビュー名８０３、表示平面８０４、左上座標値８０５、右下座標値８０６から構成される。ＮＯ８０１は、選択範囲ごとに一意に割り振られる識別番号である。スケッチ名８０２は、選択範囲を作成するごとに命名される名前である。所属ビュー名８０３は、範囲選択されたビューの名前である。表示平面８０４は、当該ビューが示す規定平面の名前を示す。左上座標値８０５は、矩形で選択した範囲の左上のＸ座標とＹ座標を示す情報である。右下座標値８０６は、矩形で選択した範囲の右下のＸ座標とＹ座標を示す情報である。
【００５８】
ステップＳ７０５は、情報処理装置１００の隠線コントロールツール２１０は、隠線コントロール画面６００に備えられたリストボックス６０１に、ステップＳ７０１で選択された範囲のスケッチ名８０２を表示する。図９には、隠線コントロール画面６００の画面遷移が示されている。ステップＳ３０３で隠線コントロール画面９００が表示された初期状態が図９の９００に示す状態である。リストボックス６０１やスライダー、コンポーネントリスト６０６には何も表示されていない。ここで、ステップＳ７０１により２次元図面上で隠線の表示制御をしたい範囲の選択を受け付けると、当該範囲選択に対応するスケッチ名８０２をリストボックス６０１に表示する。その表示結果が９０１に示す通りである。９０２と９０３に関する処理の詳細は、後述する。
【００５９】
次に、コンポーネントリスト表示処理について図１０を用いて説明する。この処理を情報処理装置１００に実行させるためのプログラムは、情報処理装置１００にインストールされている３次元ＣＡＤソフト２００の一部、若しくはアドオンプログラムとして用意されていてもよいし、３次元ＣＡＤソフト２００とは別にインストールされたプログラムとして用意されていてもよい。
【００６０】
まず、ステップＳ１００１では、情報処理装置１００の３次元ＣＡＤソフト２００は、ステップＳ３０２で開いた２次元図面に対応する３次元モデルを３次元ＣＡＤソフト２００上で開く。このとき、開いた３次元モデルを２次元図面とは別の領域に表示させる。２次元図面を表示するウィンドウと、３次元モデルを表示するウィンドウの２つを設けてもよいし、他の方法でもよい。当該３次元モデルは、当該２次元図面を生成した元の３次元モデルである。３次元ＣＡＤソフト２００が３次元モデルと、当該３次元モデルから生成した２次元図面とを対応づけて管理しておき、この管理に基づいてステップＳ１００１で開いている２次元図面に対応する３次元モデルを開けばよい。
【００６１】
ステップＳ１００２では、情報処理装置１００の３次元ＣＡＤソフト２００は、ステップＳ７０１で受け付けた選択範囲の座標を３次元空間上の座標に変換する。より具体的には、ステップＳ７０１で選択された矩形の左上座標値８０５と右下座標値８０６を、図１１に示す補正テーブル１１００の各パラメータを使って３次元空間上の座標値に変換する。補正テーブル１１００の補正値Ｘ１１０１と補正値Ｙ１１０２は、範囲選択された２次元図面上のビューの原点座標と、当該２次元図面に対応する３次元モデルを表示する３次元空間上の原点座標との差が格納されている。補正値Ｘ１１０１と補正値Ｙ１１０２は、２次元図面上のビューの座標値を３次元空間上の座標値に変換する際のオフセット量を示す。更に、補正テーブル１１００は、スケール１１０３を備える。スケール１１０３は、３次元モデルに対する２次元図面のビューの縮尺を示す。図１３に示すように、２次元図面のビュー上における原点座標と、３次元モデルを表示する３次元空間上における原点座標はそれぞれ異なっている。よって、これらのずれを補正しなければならないので、補正値Ｘ１１０１と補正値Ｙ１１０２を使用する。補正テーブル１１００の各パラメータは、ステップＳ１００２を実行するタイミングで算出して取得してもよいし、図１１に示すような補正テーブル１１００としてあらかじめ用意されていてもよい。
【００６２】
そして、ビュースケッチテーブル８００に格納された選択範囲の左上座標値８０５と右下座標値８０６を、補正値Ｘ１１０１と補正値Ｙ１１０２で座標のずれを修正し、更にスケール１１０３の逆数を乗算する。例えば、左上座標値８０５が「（１６０，２２０）」で、補正値Ｘ１１０１が「１０」、補正値Ｙ１１０２が「２０」の場合、ずれを修正すると「（１５０，２００）」になる。そして、スケール１１０３が「１／２」なので、その逆数である「２／１」を「（１５０，２００）」に乗算すると、最終的には「（３００，４００）」となる。これが３次元空間上における、２次元図面上で選択した矩形の選択範囲の左上の座標値である。同様に右下座標値８０６についても計算すると、「（４００，５００）」となる。算出された３次元空間上における座標値は、３次元モデルスケッチテーブル１１１０の左上座標値１１１３と右下座標値１１１４に格納する。
【００６３】
３次元モデルスケッチテーブル１１１０は、ＮＯ１１１１、スケッチ名１１１２、左上座標値１１１３、右下座標値１１１４から構成される。ＮＯ１１１１は、スケッチごとに一意に割り振られる識別番号である。スケッチ名１１１２は、当該スケッチの名称を示す。左上座標値１１１３と右下座標値１１１４は、３次元空間上における、２次元図面上で選択した矩形の選択範囲の左上の座標値と右下の座標値である。
【００６４】
ステップＳ１００３では、情報処理装置１００の３次元ＣＡＤソフト２００は、ビュースケッチテーブル８００の表示平面８０４に格納された平面に対して、ステップＳ１００２で算出した座標値である左上座標値１１１３と右下座標値１１１４に基づいて、３次元空間上に矩形のスケッチを作成する。
【００６５】
ステップＳ１００４では、情報処理装置１００の３次元ＣＡＤソフト２００は、ステップＳ１００３で作成された矩形のスケッチを平面正方向に押し出す。図１３に示すような場合には、正面の平面にＸ軸とＹ軸に基づく矩形のスケッチを作成しているので、Ｚ軸の正方向に矩形のスケッチを押し出す。押し出す距離は無限とする。押し出したイメージは、図１３の下部に示す。
【００６６】
ステップＳ１００５では、情報処理装置１００の３次元ＣＡＤソフト２００は、ステップＳ１００４で押し出された空間と干渉するコンポーネントに関する情報を干渉順に取得する。３次元ＣＡＤソフト２００では、一般的に干渉の認識機能が備えられており、この機能によって干渉を識別した順で、干渉したコンポーネントに関する情報の一覧を保持できる。
【００６７】
ステップＳ１００６では、情報処理装置１００の３次元ＣＡＤソフト２００は、ステップＳ１００５で取得したコンポーネントに関する情報を干渉順に正方向テーブル１２００（図１２参照）に格納する。これにより、２次元図面上で選択した範囲に対応する矩形のスケッチの正方向にあるコンポーネントを特定できる。
【００６８】
正方向テーブル１２００（図１２参照）は、ＮＯ１２０１、コンポーネント名１２０２、深度座標１２０３から構成される。ＮＯ１２０１は、レコードを一意に識別するための識別番号である。コンポーネント名１２０２は、干渉したコンポーネントの名称を示す。深度座標１２０３は、当該コンポーネントの奥行き方向の座標を示す。Ｘ軸とＹ軸に生成された矩形のスケッチを押し出すことで取得したコンポーネントの深度座標１２０３は、Ｚ座標である。
【００６９】
次に、ステップＳ１００７は、情報処理装置１００の３次元ＣＡＤソフト２００は、ステップＳ１００３で作成された矩形のスケッチを平面負方向に押し出す。ステップＳ１００４では、平面正方向に押し出していたが、逆側である平面負方向に対して押し出しを行う。図１３に示すような場合には、正面の平面にＸ軸とＹ軸に基づく矩形のスケッチを作成しているので、Ｚ軸の負方向に矩形のスケッチを押し出す。押し出す距離は無限とする。押し出したイメージは、図１３の下部に示す。
【００７０】
ステップＳ１００８では、情報処理装置１００の３次元ＣＡＤソフト２００は、情報処理装置１００は、ステップＳ１００７で押し出された空間と干渉するコンポーネントに関する情報を干渉順に取得する。
【００７１】
ステップＳ１００９では、情報処理装置１００の３次元ＣＡＤソフト２００は、ステップＳ１００８で取得したコンポーネントに関する情報を干渉順に負方向テーブル１２１０（図１２参照）に格納する。これにより、２次元図面上で選択した範囲に対応する矩形のスケッチの負方向にあるコンポーネントを特定できる。
【００７２】
負方向テーブル１２１０（図１２参照）は、ＮＯ１２１１、コンポーネント名１２１２、深度座標１２１３から構成される。ＮＯ１２１１は、レコードを一意に識別するための識別番号である。コンポーネント名１２１２は、干渉したコンポーネントの名称を示す。深度座標１２１３は、当該コンポーネントの奥行き方向の座標を示す。Ｘ軸とＹ軸に生成された矩形のスケッチを押し出すことで取得したコンポーネントの深度座標１２１３は、Ｚ座標である。
【００７３】
ステップＳ１０１０では、情報処理装置１００の３次元ＣＡＤソフト２００は、ステップＳ１００３で作成された矩形のスケッチを削除する。尚、矩形のスケッチを削除することで、押し出し空間も削除される。
【００７４】
ステップＳ１０１１では、情報処理装置１００の隠線コントロールツール２１０は、ステップＳ１００６で登録された正方向テーブル１２００と、ステップＳ１００７で登録された負方向テーブル１２１０を結合して、図５に示すようなコンポーネントテーブル５００を生成する。図１２に示すように、正方向テーブル１２００のレコードの下に負方向テーブル１２１０を結合することで、コンポーネントテーブル５００を生成する。
【００７５】
ステップＳ１０１２では、情報処理装置１００の隠線コントロールツール２１０は、ステップＳ１０１１で作成されたコンポーネントテーブル５００に登録された各コンポーネントの現在の表示状態を初期隠線表示状態５０５に格納する。前述した通り、非表示なら「０」、表示なら「１」を格納する。
【００７６】
ステップＳ１０１３では、情報処理装置１００の３次元ＣＡＤソフト２００は、２次元図面にある隠線のうち、コンポーネントテーブル５００に登録されたコンポーネントの隠線をすべて表示する。尚、２次元図面上に存在する隠線をすべて表示するようにしてもよい。ステップＳ１０１３では、隠線の表示制御をしやすいように、すべての隠線を一度表示するようにしている。
【００７７】
ステップＳ１０１４では、情報処理装置１００の隠線コントロールツール２１０は、隠線コントロール画面６００のコンポーネントリスト６０６に、ステップＳ１０１１で作成されたコンポーネントテーブル５００に登録されたコンポーネントのコンポーネント名５０２を表示する。表示順は、コンポーネントテーブル５００に登録されたＮＯ５０１の順とする。つまり、範囲選択を行った２次元図面の手前から奥に並んだ順番でコンポーネントを表示することになる。これにより、コンポーネントの奥行き感がわかりやすくなる。また、コンポーネントリスト６０６に表示したコンポーネントにはチェックボックス６０７を設け、すべてチェックをオンの状態にして表示する。図９の９０２では、コンポーネントリスト６０６にコンポーネント名５０２が表示された状態の一例を示している。この隠線コントロール画面６００に対して後述するステップＳ１０１５とステップＳ１０１６の処理を行い、ステップＳ３０８の処理を行うことで、図９の９０３に示すような状態となる。
【００７８】
ステップＳ１０１５では、情報処理装置１００の隠線コントロールツール２１０は、隠線コントロール画面６００に備えられたスライダー（左スライダー６０４、右スライダー６０５）の１目盛あたりの深度の量（奥行きの量）を算出する。具体的には、コンポーネントテーブル５００の第１レコードの深度座標５０３から最終レコードの深度座標５０３を減算し、これらの深度の絶対値によって、スライダーの最大目盛を決定する。例えば、第１レコードの深度座標５０３が「１５０」、最終レコードの深度座標５０３が「−２００」だった場合、「深度の絶対値＝１５０−（−２００）＝３５０」となる。つまり、スライダーを端から端まで移動させると、深度を「３５０」移動させることになる。よって、これに基づいてスライダーの１目盛あたりの移動量として算出する。
【００７９】
ステップＳ１０１６では、情報処理装置１００の隠線コントロールツール２１０は、コンポーネントテーブル５００の第１レコードの深度座標５０３の値と同じ３次元空間上の座標位置に、ステップＳ１００３で矩形のスケッチを作成した平面と平行な一時平面Ａを作成する（平面設定手段）。また、コンポーネントテーブル５００の最終レコードの深度座標５０３の値と同じ３次元空間上の座標位置にも、ステップＳ１００３で矩形のスケッチを作成した平面と平行な一時平面Ｂを作成する。作成された一時平面Ａと一時平面Ｂは、それぞれ左スライダー６０４と右スライダー６０５と対応づいている。そのため、左スライダー６０４を移動させると、ステップＳ１０１５で算出された１目盛あたりの深度の深さに応じて、対応する一時平面Ａが移動する。つまり、スライダーと３次元空間上の平面が対応づいているので、ユーザはスライダーでどのあたりの深度を指定しているのかを確認することができる。
【００８０】
次に、隠線表示コントロール（スライダー）処理について図１４を用いて説明する。この処理を情報処理装置１００に実行させるためのプログラムは、情報処理装置１００にインストールされている３次元ＣＡＤソフト２００の一部、若しくはアドオンプログラムとして用意されていてもよいし、３次元ＣＡＤソフト２００とは別にインストールされたプログラムとして用意されていてもよい。
【００８１】
まず、ステップＳ１４０１では、情報処理装置１００の隠線コントロールツール２１０は、マウス等の入力デバイス１０９で操作されたスライダーは、左スライダー６０４か右スライダー６０５かを判定する（奥行き指定手段）。左スライダー６０４であると判定された場合には、ステップＳ１４０２に処理を進める。右スライダー６０５であると判定された場合には、ステップＳ１４１０に処理を進める。
【００８２】
ステップＳ１４０２では、情報処理装置１００の３次元ＣＡＤソフト２００は、左スライダー６０４が操作されたので、左スライダー６０４に対応する、ステップＳ１０１６で作成された一時平面Ａをスライダーの移動量に合わせて移動させる（平面移動手段）。前述した通り、ステップＳ１０１５でスライダーを１目盛移動させた場合の深度の量が算出されている。そのため、スライダーの移動量を検知し、どれくらい移動されたかに応じて、３次元空間上に表示されている一時平面Ａを当該一時平面Ａの奥行き方向に平行となるよう移動させる。これにより、隠線の表示制御を行いたい深度の指定を行った際に、どのあたりを指定しているのかわかりやすくなる。
【００８３】
ステップＳ１４０３では、情報処理装置１００の隠線コントロールツール２１０は、コンポーネントテーブル５００に格納されたレコードのうち、後述するステップＳ１４０４乃至ステップＳ１４０９の処理を実行していないレコードを、コンポーネントテーブル５００の上から優先的に参照する。
【００８４】
ステップＳ１４０４では、情報処理装置１００の隠線コントロールツール２１０は、コンポーネントテーブル５００に格納されたすべてのレコードが、後述するステップＳ１４０４乃至ステップＳ１４０９の処理を終了したか否かを判定する。すべてのレコードが処理を終了したと判定した場合には、ステップＳ１４１８に処理を進める。すべてのレコードが処理を終了していない、つまり未処理のレコードが存在すると判定した場合には、ステップＳ１４０５に処理を進める。
【００８５】
ステップＳ１４０５では、情報処理装置１００の隠線コントロールツール２１０は、ステップＳ１４０２で移動させた一時平面Ａの深度座標の方が、参照中のレコードの深度座標５０３よりも大きいか否かを判定する。左スライダー６０４よりも手前に存在するコンポーネントは隠線を非表示とし、左スライダー６０４よりも奥に存在するコンポーネントは隠線を表示するように制御する。そのため、ステップＳ１４０２で移動させた一時平面Ａの深度座標の方が、参照中のレコードの深度座標５０３よりも大きいか否か、つまり、参照中のレコードが示すコンポーネントが一時平面Ａよりも奥に存在するか否かを判定している。ステップＳ１４０２で移動させた一時平面Ａの深度座標の方が、参照中のレコードの深度座標５０３よりも大きいと判定した場合には、ステップＳ１４０８に処理を進める。ステップＳ１４０２で移動させた一時平面Ａの深度座標の方が、参照中のレコードの深度座標５０３よりも大きいと判定されなかった、つまり、参照中のレコードの深度座標５０３よりも小さいと判定した場合には、ステップＳ１４０６に処理を進める。
【００８６】
ステップＳ１４０６では、情報処理装置１００の隠線コントロールツール２１０は、ステップＳ１４０３で参照中のレコードの隠線表示状態を非表示にする（部品要素特定手段）。より具体的には、参照中のレコードの隠線表示状態５０４を「０」に変更する。
【００８７】
ステップＳ１４０７では、情報処理装置１００の隠線コントロールツール２１０は、参照中のレコードに対応する、コンポーネントリスト６０６に表示されたコンポーネントのチェックボックス６０７をオフに切り替える。こうして、隠線が非表示となっていることを識別表示させる。
【００８８】
一方、ステップＳ１４０８では、情報処理装置１００の隠線コントロールツール２１０は、ステップＳ１４０３で参照中のレコードの隠線表示状態を表示にする（部品要素特定手段）。より具体的には、参照中のレコードの隠線表示状態５０４を「１」に変更する。
【００８９】
ステップＳ１４０９では、情報処理装置１００の隠線コントロールツール２１０は、参照中のレコードに対応する、コンポーネントリスト６０６に表示されたコンポーネントのチェックボックス６０７をオンに切り替える。こうして、隠線が表示となっていることを識別表示させる。このように、ステップＳ１４０５乃至ステップＳ１４０９の処理を、コンポーネントテーブル５００に格納されたすべてのレコードに対して実行し、すべてのレコードに対する処理が終了したら、ステップＳ１４１８に処理を進める。
【００９０】
ステップＳ１４０１で右スライダー６０５が操作された場合には、ステップＳ１４１０では、情報処理装置１００の３次元ＣＡＤソフト２００は、右スライダー６０５に対応する、ステップＳ１０１６で作成された一時平面Ｂをスライダーの移動量に合わせて移動させる（平面移動手段）。より具体的な処理の詳細はステップＳ１４０２と同様であるので省略する。
【００９１】
ステップＳ１４１１では、情報処理装置１００の隠線コントロールツール２１０は、コンポーネントテーブル５００に格納されたレコードのうち、後述するステップＳ１４１２乃至ステップＳ１４１７の処理を実行していないレコードを、コンポーネントテーブル５００の下から優先的に参照する。
【００９２】
ステップＳ１４１２では、情報処理装置１００の隠線コントロールツール２１０は、コンポーネントテーブル５００に格納されたすべてのレコードが、後述するステップＳ１４１３乃至ステップＳ１４１７の処理を終了したか否かを判定する。すべてのレコードが処理を終了したと判定した場合には、ステップＳ１４１８に処理を進める。すべてのレコードが処理を終了していない、つまり未処理のレコードが存在すると判定した場合には、ステップＳ１４１３に処理を進める。
【００９３】
ステップＳ１４１３では、情報処理装置１００の隠線コントロールツール２１０は、ステップＳ１４１０で移動させた一時平面Ｂの深度座標の方が、参照中のレコードの深度座標５０３よりも小さいか否かを判定する。右スライダー６０５よりも手前に存在するコンポーネントは隠線を表示とし、右スライダー６０５よりも奥に存在するコンポーネントは隠線を非表示するように制御する。そのため、ステップＳ１４１０で移動させた一時平面Ｂの深度座標の方が、参照中のレコードの深度座標５０３よりも小さいか否か、つまり、参照中のレコードが示すコンポーネントが一時平面Ｂよりも手前に存在するか否かを判定している。ステップＳ１４１０で移動させた一時平面Ｂの深度座標の方が、参照中のレコードの深度座標５０３よりも小さいと判定した場合には、ステップＳ１４１６に処理を進める。ステップＳ１４１０で移動させた一時平面Ｂの深度座標の方が、参照中のレコードの深度座標５０３よりも小さいと判定されなかった、つまり、参照中のレコードの深度座標５０３よりも大きいと判定した場合には、ステップＳ１４１４に処理を進める。
【００９４】
ステップＳ１４１４では、情報処理装置１００の隠線コントロールツール２１０は、ステップＳ１４１０で参照中のレコードの隠線表示状態を非表示にする（部品要素特定手段）。より具体的には、参照中のレコードの隠線表示状態５０４を「０」に変更する。
【００９５】
ステップＳ１４１５では、情報処理装置１００の隠線コントロールツール２１０は、参照中のレコードに対応する、コンポーネントリスト６０６に表示されたコンポーネントのチェックボックス６０７をオフに切り替える。こうして、隠線が非表示となっていることを識別表示させる。
【００９６】
一方、ステップＳ１４１６では、情報処理装置１００の隠線コントロールツール２１０は、ステップＳ１４１０で参照中のレコードの隠線表示状態を表示にする（部品要素特定手段）。より具体的には、参照中のレコードの隠線表示状態５０４を「１」に変更する。
【００９７】
ステップＳ１４１７では、情報処理装置１００の隠線コントロールツール２１０は、参照中のレコードに対応する、コンポーネントリスト６０６に表示されたコンポーネントのチェックボックス６０７をオンに切り替える。こうして、隠線が表示となっていることを識別表示させる。このように、ステップＳ１４１３乃至ステップＳ１４１７の処理を、コンポーネントテーブル５００に格納されたすべてのレコードに対して実行し、すべてのレコードに対する処理が終了したら、ステップＳ１４１８に処理を進める。
【００９８】
ステップＳ１４１８では、情報処理装置１００の隠線コントロールツール２１０は、コンポーネントテーブル５００に格納されたレコードのうち、ステップＳ１４１９乃至ステップＳ１４２０の処理が未処理であるレコードを参照する。
【００９９】
ステップＳ１４１９では、情報処理装置１００の隠線コントロールツール２１０は、ステップＳ１４１８で参照中のレコードの隠線表示状態５０４を取得する。そして、ステップＳ１４２０では、情報処理装置１００の３次元ＣＡＤソフト２００は、２次元図面上で参照中のレコードのコンポーネントの表示状態を、ステップＳ１４１９で取得した隠線表示状態５０４に基づいて更新する（表示制御手段）。隠線表示状態５０４が「１」なら当該コンポーネントの隠線を表示させ、隠線表示状態５０４が「０」なら当該コンポーネントの隠線を非表示にする。
【０１００】
ステップＳ１４２１では、情報処理装置１００の隠線コントロールツール２１０は、コンポーネントテーブル５００に格納されたすべてのレコードが、ステップＳ１４１８乃至ステップＳ１４２０の処理を終了したか否かを判定する。すべてのレコードが処理を終了したと判定した場合には、隠線表示コントロール（スライダー）処理を終了する。すべてのレコードが処理を終了していない、つまり未処理のレコードが存在すると判定した場合には、ステップＳ１４１８に処理を戻す。
【０１０１】
図１５の１５００は、２次元図面と、当該２次元図面に対応する３次元モデルを表示し、深度の指定を行っている３次元ＣＡＤソフト２００の画面を示す。画面左側の１５０１には２次元図面が表示され、画面右側の１５０２には３次元モデルが表示されている。例えば、この２次元図面上で隠線の表示制御を行いたい範囲の指定を受け付けると、前述した処理によって、隠線コントロール画面６００の設定と、１５０２に表示された３次元モデルにスライダーに対応する一時平面を設定する。尚、本実施形態においては２つのスライダーを用いて深度の指定を行っているが、１つでもよいし、３つでもよい。深度の指定ができればなんでもよい。このように、深度の指定に対応して、当該深度を示す一時平面を３次元空間上で移動させることにより、ユーザがどのあたりの深度を指定しているのかをわかりやすくしている。
【０１０２】
更に、図１５の１５１０には、スライダーを操作した場合の２次元図面と３次元モデルの状態遷移を示している。図１５の１５１１は、スライダーが何も操作されていない初期表示状態を示す。この場合には、スライダーが両脇に配置され、コンポーネントリスト６０６もすべてチェックがオンになっている。つまり、すべての隠線が表示されている状態である。右スライダー６０５を左に移動させた場合を１５１２に示す。この場合には、３次元空間に設定された左スライダー６０４に対応する一時平面Ｂが１５１５に示す位置まで移動する。この１５１５に示す一時平面Ｂよりも奥にあるコンポーネントの隠線は非表示となるため、図１６の１６００に示すようにコンポーネントテーブル５００の隠線表示状態５０４を更新し、その結果図１５の１５１３に示すようにチェックボックスがオフとなり、２次元図面は１５１４に示すような状態となる。
【０１０３】
更に左スライダー６０４を右に移動させた場合を１５１６に示す。この場合には、３次元空間に設定された右スライダー６０５に対応する一時平面Ａが１５１９に示す位置まで移動する。この１５１９に示す一時平面Ｂよりも手前にあるコンポーネントの隠線は非表示となるため、図１６の１６１０に示すようにコンポーネントテーブル５００の隠線表示状態５０４を更新し、その結果図１５の１５１７に示すチェックボックスが更にオフとなり、２次元図面は１５１８に示すような状態となる。このように、スライダーで指定された深度に対応する箇所が、２次元図面に対応する３次元モデルの３次元空間上で表示されるので、深度の指定が容易となる。また、どのあたりの深度が指定されているかを見ながら、隠線の表示制御を行うことができるので、ユーザはより直感的に隠線の表示制御を指示することができる。
【０１０４】
次に、隠線表示コントロール（チェックボックス）処理について図１７を用いて説明する。この処理を情報処理装置１００に実行させるためのプログラムは、情報処理装置１００にインストールされている３次元ＣＡＤソフト２００の一部、若しくはアドオンプログラムとして用意されていてもよいし、３次元ＣＡＤソフト２００とは別にインストールされたプログラムとして用意されていてもよい。
【０１０５】
まず、ステップＳ１７０１では、情報処理装置１００の隠線コントロールツール２１０は、チェックボックス６０７に対する入力指示を受け付けたので、チェックボックス６０７の表示を切り替える。入力指示がなされたチェックボックス６０７がオンだった場合にはオフにし、オフだった場合にはオンにする。
【０１０６】
ステップＳ１７０２では、情報処理装置１００の隠線コントロールツール２１０は、操作のなされたチェックボックス６０７に対応するコンポーネントの隠線表示状態５０４を更新する。チェックボックス６０７がオンにされた場合には、隠線表示状態５０４に「１」を格納する。チェックボックス６０７がオフにされた場合には、隠線表示状態５０４に「０」を格納する。
【０１０７】
ステップＳ１７０３では、情報処理装置１００の３次元ＣＡＤソフト２００は、ステップＳ１７０２で更新した隠線表示状態５０４に応じて、当該コンポーネントの隠線を表示または非表示に制御する。隠線表示状態５０４に「１」が格納されていれば、当該コンポーネントの隠線を表示するよう制御し、隠線表示状態５０４に「０」が格納されていれば、当該コンポーネントの隠線を非表示とするよう制御する。このようにして、チェックボックス６０７に対する入力によっても、隠線の表示制御を行うことができる。
【０１０８】
以上説明したように、本実施形態によれば、隠線の表示制御を行う奥行きの指定をユーザから受け付けると、指定された奥行きに応じて、当該奥行き箇所を３次元モデル上で識別表示しつつ、当該奥行きに基づいて抽出されたコンポーネントの隠線を表示制御することが可能となるので、ユーザはユーザが指定した奥行きに対応する箇所を３次元モデル上で閲覧しつつ、容易に隠線の表示制御を行うことのできる効果を奏する。
【０１０９】
本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体等としての実施形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、１つの機器からなる装置に適用してもよい。
【０１１０】
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システム或いは装置に直接、或いは遠隔から供給するものを含む。そして、そのシステム或いは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合も本発明に含まれる。
【０１１１】
したがって、本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【０１１２】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等の形態であってもよい。
【０１１３】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷなどがある。また、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などもある。
【０１１４】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、前記ホームページから本発明のコンピュータプログラムそのもの、若しくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。
【０１１５】
また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明に含まれるものである。
【０１１６】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、ダウンロードした鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【０１１７】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。その他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【０１１８】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現される。
【０１１９】
なお、前述した実施形態は、本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。即ち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【０１２０】
１００  情報処理装置
１０１  ＣＰＵ
１０２  ＲＡＭ
１０３  ＲＯＭ
１０４  システムバス
１０５  入力コントローラ
１０６  ビデオコントローラ
１０７  メモリコントローラ
１０８  通信Ｉ／Ｆ（インターフェース）コントローラ
１０９  入力デバイス
１１０  ディスプレイ
１１１  外部メモリ
【図１】
2014146266.tif 000003
【図２】
2014146266.tif 000004
【図３】
2014146266.tif 000005
【図４】
2014146266.tif 000006
【図５】
2014146266.tif 000007
【図６】
2014146266.tif 000008
【図７】
2014146266.tif 000009
【図８】
2014146266.tif 000010
【図９】
2014146266.tif 000011
【図１０】
2014146266.tif 000012
【図１１】
2014146266.tif 000013
【図１２】
2014146266.tif 000014
【図１３】
2014146266.tif 000015
【図１４】
2014146266.tif 000016
【図１５】
2014146266.tif 000017
【図１６】
2014146266.tif 000018
【図１７】
2014146266.tif 000019