(57)【要約】【課題】全体画面に表示されている３次元モデルを移動、回転、拡大、または、縮小しても部分表示ウインドウは初期表示の状態を保つことができる３次元部分拡大表示方法を提供する【解決手段】全体表示ウインドウに表示された３次元構造のモデルの一部分を部分表示ウインドウに表示する３次元モデル部分表示方法であって、前記全体表示ウインドウに表示された前記モデルに対して利用者が指定した構成要素のＢＯＸを作成するステップと、作成された前記ＢＯＸをモデル座標からビュー座標に変換するステップと、前記ＢＯＸのビュー座標を、２次元に投影する２次元投影ステップと、２次元に投影されたＢＯＸの座標値の最大値及び最小値に基づいて決定された矩形領域を表示領域として設定するステップと、表示領域を部分表示ウインドウに描画して表示するステップと、を含む。【選択図】  図２
2008242611.tif 000002
【特許請求の範囲】
【請求項１】
全体表示ウインドウに表示された３次元構造のモデルの一部分を部分表示ウインドウに表示する３次元モデル部分表示方法であって、
前記全体表示ウインドウに表示された前記モデルに対して利用者が指定した構成要素をモデル座標からビュー座標に変換する座標変換ステップと、
前記座標変換ステップで変換された前記構成要素を前記部分表示ウインドウの視点に関して２次元に投影する２次元投影ステップと、
前記２次元投影ステップで２次元に投影された前記構成要素の座標値の最大値及び最小値に基づいた矩形領域を決定し、前記矩形領域を表示領域として設定する表示領域設定ステップと、
前記表示領域設定ステップで設定された表示領域を部分表示ウインドウに描画して表示する表示領域表示ステップと、を含む３次元モデル部分表示方法。
【請求項２】
全体表示ウインドウに表示された３次元構造のモデルの一部分を部分表示ウインドウに表示する３次元モデル部分表示方法であって、
前記全体表示ウインドウに表示された前記モデルに対して利用者が指定した構成要素をモデル座標からビュー座標に変換する座標変換ステップと、
前記座標変換ステップでビュー座標に変換された前記構成要素の座標値の最大値及び最小値から８つの頂点の座標値を決定して、ＢＯＸとして作成するＢＯＸ作成ステップと、
前記ＢＯＸ作成ステップで作成された前記ＢＯＸを前記部分表示ウインドウの視点に関して２次元に投影する２次元投影ステップと、
前記２次元投影ステップで２次元に投影された前記ＢＯＸの座標値の最大値及び最小値に基づいた矩形領域を決定し、前記矩形領域を表示領域として設定する表示領域設定ステップと、
前記表示領域設定ステップで設定された表示領域を部分表示ウインドウに描画して表示する表示領域表示ステップと、を含む３次元モデル部分表示方法。
【請求項３】
全体表示ウインドウに表示された３次元構造のモデルの一部分を部分表示ウインドウに表示する３次元モデル部分表示方法であって、
前記全体表示ウインドウに表示された前記モデルに対して利用者が指定した構成要素の座標値の最大値及び最小値から８つの頂点の座標値を決定して、ＢＯＸとして作成するＢＯＸ作成ステップと、
前記ＢＯＸ作成ステップで作成された前記ＢＯＸをモデル座標からビュー座標に変換する座標変換ステップと、
前記座標変換ステップで変換された前記ＢＯＸを前記部分表示ウインドウの視点に関して２次元に投影する２次元投影ステップと、
前記２次元投影ステップで２次元に投影された前記ＢＯＸの座標値の最大値及び最小値に基づいた矩形領域を決定し、前記矩形領域を表示領域として設定する表示領域設定ステップと、
前記表示領域設定ステップで設定された表示領域を部分表示ウインドウに描画して表示する表示領域表示ステップと、を含む３次元モデル部分表示方法。
【請求項４】
前記表示領域設定ステップは、前記矩形領域の縦辺のサイズを前記部分表示ウインドウの縦辺のサイズに揃うように拡大または縮小をして前記矩形領域を前記部分表示ウインドウの表示領域として設定するか、または、前記矩形領域の横辺のサイズを前記部分表示ウインドウの横辺のサイズに揃うように拡大または縮小をして前記矩形領域を前記部分表示ウインドウの表示領域として設定することを特徴とする、請求項１ないし３のいずれかに記載の３次元モデル部分表示方法。
【請求項５】
前記全体表示ウインドウが保持するビューウインドウに関する情報と前記部分表示ウインドウが保持するビューウインドウに関する情報が異なるビューウインドウに関する情報であることを特徴とする請求項１ないし４のいずれかに記載の３次元モデル部分表示方法。
【請求項６】
前記全体表示ウインドウが保持するビューウインドウに関する情報は利用者からの指示に基づいて前記部分表示ウインドウが保持するビューウインドウに関する情報に切り替わることを特徴とする請求項５記載の３次元モデル部分表示方法。
【請求項７】
全体表示ウインドウに表示された３次元構造のモデルの一部分を部分表示ウインドウに表示する３次元モデル部分表示装置であって、
前記全体表示ウインドウに表示された前記モデルに対して利用者が指定した構成要素の座標値の最大値及び最小値から８つの頂点の座標値を決定して、ＢＯＸとして作成するＢＯＸ作成手段と、
前記ＢＯＸ作成手段が作成した前記ＢＯＸをモデル座標からビュー座標に変換する座標変換手段と、
前記座標変換手段が変換した前記ＢＯＸを前記部分表示ウインドウの視点に関して２次元に投影する２次元投影手段と、
前記２次元投影手段が２次元に投影した前記ＢＯＸの座標値の最大値及び最小値に基づいた矩形領域を決定し、前記矩形領域を表示領域として設定する表示領域設定手段と、
前記表示領域設定手段が設定した表示領域を部分表示ウインドウに描画して表示する表示領域表示手段と、を備える３次元モデル部分表示装置。
【請求項８】
全体表示ウインドウに表示された３次元構造のモデルの一部分を部分表示ウインドウに表示するようにコンピュータを動作させるための３次元モデル部分表示プログラムであって、
前記全体表示ウインドウに表示された前記モデルに対して利用者が指定した構成要素の座標値の最大値及び最小値から８つの頂点の座標値を決定して、ＢＯＸとして作成するＢＯＸ作成手段と、
前記ＢＯＸ作成手段が作成した前記ＢＯＸをモデル座標からビュー座標に変換する座標変換手段と、
前記座標変換手段が変換した前記ＢＯＸを前記部分表示ウインドウの視点に関して２次元に投影する２次元投影手段と、
前記２次元投影手段が２次元に投影した前記ＢＯＸの座標値の最大値及び最小値に基づいた矩形領域を決定し、前記矩形領域を表示領域として設定する表示領域設定手段と、
前記表示領域設定手段が設定した表示領域を部分表示ウインドウに描画して表示する表示領域表示手段としてコンピュータを動作させるための３次元モデル部分表示プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、全体表示ウインドウに表示された３次元構造のモデルの一部分を部分表示ウインドウに表示する３次元モデル部分表示方法、３次元モデル部分表示装置、及び、３次元モデル部分表示プログラムに関する。
【背景技術】
【０００２】
画面上に３次元で表示されたモデルの一部分に注目して拡大表示すると、拡大されたモデルの一部分のみが画面上に表示されて同時に表示していたモデル全体が表示できなくなり、現在表示している部分がモデル全体のどの部分にあたるものなのかを把握することが難しくなる。そこで、モデル全体を全体ウインドウとして表示しつつ、注視したい部分のみを別ウインドウ（以下、部分表示ウインドウとする）に抜き出して表示する場合がある。
【０００３】
特許文献１にこの部分表示ウインドウに関する技術が開示されている。この特許文献１の図面表示システムは、図面表示に供される表示装置と、この表示装置に表示されている図面上の任意位置を指示するための位置指示手段とを備えた図面表示システムにおいて、図面を拡大表示するための拡大表示モードを設定するモード設定手段と、このモード設定手段によって拡大表示モードが設定されている場合に、上記位置指示手段の指示位置を基準位置とする第１のサイズの領域にウインドウを開き、同ウインドウ内に、上記位置指示手段の指示位置を基準位置とする第２のサイズの領域の図面内容を拡大表示する制御手段とを備え、上記位置指示手段の指示位置の移動に伴って上記ウインドウを移動するようにしたものである。
このような特許文献１の図面表示システムによれば、ウインドウ内の図面部分（拡大表示されている部分）とウインドウ外の図面部分（全体図）が同時に表示されて相互の位置関係を把握できる。
【特許文献１】特開平３−２０６５６２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記背景技術では、利用者の操作により部分表示ウインドウに表示されていた部分が表示されなくなってしまう問題が発生する。以下、図を用いて詳しく説明する。図１３は、上記従来技術の課題を示した模式図である。図１３（ａ）では、全体表示ウインドウ５０２に３次元のモデル５００が表示されており、利用者が注視したい部分である選択領域５０３を選択（または、アセンブリツリーによりモデルの構成要素を選択）することで、部分表示ウインドウ５０４を表示している。この時、画面上には３次元モデル５００の全体図と部分表示ウインドウ５０４が正常に表示されているため、相互の位置関係は容易に把握することができる。しかし、図１３（ｂ）に示すように３次元モデル５００が上方に移動してしまった場合は、部分表示ウインドウ５００には、選択領域５０３がそのまま固定で表示され、初期表示の状態を保つことができず、利用者が注視したい部分が部分表示ウインドウから逸脱してしまう。このような現象は、部分表示ウインドウ形成時に部分表示ウインドウの描画範囲を固定してしまっているために起こる。また、３次元モデル５００を回転した場合、拡大した場合、縮小した場合においても、上記と同様の問題が発生し、利用者が注視したい構成要素が部分表示ウインドウに正常に表示されず、相互の位置関係を把握できなくなってしまうという課題を有する。
【０００５】
上記課題は、仮に特許文献１の公知技術を３次元モデルの図面表示システムに適用した場合であっても、同様の問題が発生し、課題の解決には至らない。
そこで、本発明は上記課題を解決するために、全体画面に表示されている３次元モデルを移動、回転、拡大、または、縮小した場合であっても部分表示ウインドウは初期表示の状態を保つことができる３次元部分拡大表示装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
（１．ＢＯＸを作成しない３次元モデル部分表示方法）
本発明に係る３次元モデル部分表示方法は、全体表示ウインドウに表示された３次元構造のモデルの一部分を部分表示ウインドウに表示する３次元モデル部分表示方法であって、前記全体表示ウインドウに表示された前記モデルに対して利用者が指定した構成要素をモデル座標からビュー座標に変換する座標変換ステップと、前記座標変換ステップで変換された前記構成要素を前記部分表示ウインドウの視点に関して２次元に投影する２次元投影ステップと、前記２次元投影ステップで２次元に投影された前記構成要素の座標値の最大値及び最小値に基づいた矩形領域を決定し、前記矩形領域を表示領域として設定する表示領域設定ステップと、前記表示領域設定ステップで設定された表示領域を部分表示ウインドウに描画して表示する表示領域表示ステップと、を含む。
【０００７】
このように、本発明においては部分表示ウインドウに表示する３次元モデルの構成要素をモデル座標からビュー座標に変換して表示するため、全体表示ウインドウに表示されたモデルを平行移動、回転、拡大、または、縮小した場合にモデルが部分表示ウインドウから逸脱した場合でも追従して表示することができる。従って、利用者は全体表示ウインドウに表示されたモデルと部分表示ウインドウに表示された部分との位置関係を容易に把握することができ、作業効率を上げることができる。また、構成要素の座標値の最大値及び最小値に基づいて矩形領域を決定するため、構成要素全体を表示対象として部分表示ウインドウに表示することができ、利用者は作業し易くなる。
【０００８】
なお、利用者の構成要素の指定方法については後記の実施形態で説明する。
（２．座標変換後にＢＯＸを作成する３次元モデル部分表示方法）
本発明に係る３次元モデル部分表示方法は、全体表示ウインドウに表示された３次元構造のモデルの一部分を部分表示ウインドウに表示する３次元モデル部分表示方法であって、前記全体表示ウインドウに表示された前記モデルに対して利用者が指定した構成要素をモデル座標からビュー座標に変換する座標変換ステップと、前記座標変換ステップでビュー座標に変換された前記構成要素の座標値の最大値及び最小値から８つの頂点の座標値を決定して、ＢＯＸとして作成するＢＯＸ作成ステップと、前記ＢＯＸ作成ステップで作成された前記ＢＯＸを前記部分表示ウインドウの視点に関して２次元に投影する２次元投影ステップと、前記２次元投影ステップで２次元に投影された前記ＢＯＸの座標値の最大値及び最小値に基づいた矩形領域を決定し、前記矩形領域を表示領域として設定する表示領域設定ステップと、前記表示領域設定ステップで設定された表示領域を部分表示ウインドウに描画して表示する表示領域表示ステップと、を含む。
【０００９】
このように、本発明においてはビュー座標に変換された構成要素からＢＯＸを作成する。ＢＯＸは、構成要素の座標値の最大値及び最小値から８つの頂点の座標値を決定して作成されるため、構成要素を完全に覆う６面体となる。その作成されたＢＯＸを部分表示ウインドウの視点に関して２次元に投影する処理を行い、２次元に投影されたＢＯＸの座標値の最大値及び最小値から表示領域を設定して部分表示ウインドウに表示する。従って、ＢＯＸを作成しない場合は、構成要素の全ての座標値の中の最大値及び最小値から矩形領域を決定する処理を行わなければいけないが、ＢＯＸを作成した場合は、ＢＯＸの８頂点の座標値の最大値及び最小値から矩形領域を決定すればよいため、処理を簡潔にすることができる。また、構成要素を完全に覆う６面体をＢＯＸとして作成するため、部分表示ウインドウには構成要素の全体を表示対象とすることができ、利用者は作業をし易くなる。
【００１０】
（３．ＢＯＸを作成後に座標変換する３次元モデル部分表示方法）
本発明に係る３次元モデル部分表示方法は、全体表示ウインドウに表示された３次元構造のモデルの一部分を部分表示ウインドウに表示する３次元モデル部分表示方法であって、前記全体表示ウインドウに表示された前記モデルに対して利用者が指定した構成要素の座標値の最大値及び最小値から８つの頂点の座標値を決定して、ＢＯＸとして作成するＢＯＸ作成ステップと、前記ＢＯＸ作成ステップで作成された前記ＢＯＸをモデル座標からビュー座標に変換する座標変換ステップと、前記座標変換ステップで変換された前記ＢＯＸを前記部分表示ウインドウの視点に関して２次元に投影する２次元投影ステップと、前記２次元投影ステップで２次元に投影された前記ＢＯＸの座標値の最大値及び最小値に基づいた矩形領域を決定し、前記矩形領域を表示領域として設定する表示領域設定ステップと、前記表示領域設定ステップで設定された表示領域を部分表示ウインドウに描画して表示する表示領域表示ステップと、を含む。
【００１１】
このように、本発明においては利用者の指示に従って決定された構成要素を完全に覆うＢＯＸを作成し、そのＢＯＸをモデル座標からビュー座標へ変換する座標変換処理を行い、変換されたＢＯＸを部分表示ウインドウの視点に関して２次元に投影する処理を行い、２次元に投影されたＢＯＸの座標値の最大値及び最小値から表示領域を設定して部分表示ウインドウに表示する。従って、座標変換処理の後にＢＯＸを作成する場合は、構成要素の座標値の全てに対して座標変換の処理を行わなければいけないが、このように座標変換処理の前にＢＯＸを作成した場合は、ＢＯＸの８頂点に対してのみ座標変換処理を行えばよいため、上記よりもさらに処理を簡潔にすることができ、処理速度も上げることができる。
【００１２】
（４．表示領域のサイズ調整）
本発明に係る３次元モデル部分表示方法は、前記の３次元モデル部分表示方法であって、前記表示領域設定ステップは、前記矩形領域の縦辺のサイズを前記部分表示ウインドウの縦辺のサイズに揃うように拡大または縮小をして前記矩形領域を前記部分表示ウインドウの表示領域として設定するか、または、前記矩形領域の横辺のサイズを前記部分表示ウインドウの横辺のサイズに揃うように拡大または縮小をして前記矩形領域を前記部分表示ウインドウの表示領域として設定することを特徴とする。
このように、本発明においては利用者が選択した注視したい構成要素を、部分表示ウインドウからはみ出すことなく部分表示ウインドウのサイズに合わせて構成要素全体を表示することができるため、利用者は作業し易くなる。
【００１３】
（５．相違するビューウインドウ情報を保持）
本発明に係る３次元モデル部分表示方法は、前記の３次元モデル部分表示方法であって、前記全体表示ウインドウが保持するビューウインドウに関する情報と前記部分表示ウインドウが保持するビューウインドウに関する情報が異なるビューウインドウに関する情報であることを特徴とする。
【００１４】
このように、本発明においては全体表示ウインドウが保持するビューウインドウに関する情報と前記部分表示ウインドウが保持するビューウインドウに関する情報が異なるビューウインドウに関する情報であるため、全体表示ウインドウのビューウインドウが変更された場合であっても部分表示ウインドウは全体表示ウインドウのビューウインドウに束縛されることなく表示することができる。従って、利用者は全体表示ウインドウのビューが変更された場合であってもモデル全体と部分表示ウインドウに表示された部分との位置関係を容易に把握することができ、作業効率を上げることができる。
【００１５】
ここで、ビューウインドウについて説明する。利用者は３次元のモデルを、画面を通して２次元に投影して見ることができる。この画面に相当するものをビューウインドウという。例えば、３次元モデルのある特定の部分Ａと利用者の視点を結ぶ直線を引いて、その直線が画面と交わる点がビューウインドウ上の部分Ａとなる。このようにして３次元モデルをビューウインドウ上に投影することで利用者は３次元モデルをみることができる。モデルが画面上のどの位置にどういった大きさで表示されるかは、ビューウインドウの大きさ、角度、視点からの距離等によって決まる。上記のビューウインドウに関する情報とは、このようなビューウインドウの大きさ、角度、視点からの距離等の情報を指す。
【００１６】
（６．ビューウインドウ情報の切り替え）
本発明に係る３次元モデル部分表示方法は、前記の３次元モデル部分表示方法であって、前記全体表示ウインドウが保持するビューウインドウに関する情報は利用者からの指示に基づいて前記部分表示ウインドウが保持するビューウインドウに関する情報に切り替わることを特徴とする。
【００１７】
このように、本発明においては利用者からの指示に基づいて全体表示ウインドウが保持するビューウインドウに関する情報を、部分表示ウインドウが保持するビューウインドウに関する情報に切り替える。従って、利用者は全体表示ウインドウと部分表示ウインドウのビューウインドウを同一のビューウインドウで表示することが可能となり、作業効率を上げることができる。
【００１８】
これまで、本発明を装置として示したが、所謂当業者であれば明らかであるように本発明をシステム、方法、及び、プログラムとして捉えることもできる。これら前記の発明の概要は、本発明に必須となる特徴を列挙したものではなく、これら複数の特徴のサブコンビネーションも発明となり得る。
【発明を実施するための最良の形態】
【００１９】
以下、本発明の実施の形態を説明する。本発明は多くの異なる形態で実施可能である。従って、本実施形態の記載内容のみで本発明を解釈すべきではない。また、本実施形態の全体を通して同じ要素には同じ符号を付けている。
【００２０】
本実施の形態では、主に装置について説明するが、所謂当業者であれば明らかな通り、本発明はシステム、方法、及び、コンピュータを動作させるためのプログラムとしても実施できる。また、本発明はハードウェア、ソフトウェア、または、ハードウェア及びソフトウェアの実施形態で実施可能である。プログラムは、ハードディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、光記憶装置、または、磁気記憶装置等の任意のコンピュータ可読媒体に記録できる。さらに、プログラムはネットワークを介した他のコンピュータに記録することができる。
【００２１】
（本発明の第１の実施形態）
[１．  構成]
[１．１  ハードウェア構成]
図１は、本発明の第１の実施形態に係る３次元モデル部分表示装置のハードウェア構成の模式図である。
３次元モデル部分表示装置１００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０１と、メインメモリ１０２と、外部記憶装置１０３と、入力装置１０４と、出力装置１０５と、を備える。
ＣＰＵ１０１は、プログラムに従って実際の処理を行う。メインメモリ１０２は、プログラムやデータを一時的に記憶する。外部記憶装置１０３は、例えばハードディスク等の記憶装置であり、プログラムやデータを保存しておく。入力装置１０４は、例えばマウスやキーボードであり、利用者はこれらの装置を用いてデータや指示を入力することができる。出力装置１０５は、例えばディスプレイであり、３次元モデルをディスプレイに出力することで、利用者が視認することができる。これらの装置は全てバス１１０を介して接続している。
【００２２】
なお、図１は本実施形態に係る３次元モデル部分表示装置のハードウェア構成を模式的に示した一例に過ぎず、本実施形態の３次元モデル部分表示装置を実現可能であれば、他の構成を採ることもできる。
【００２３】
３次元モデル部分表示装置１００は、３次元モデル部分拡大表示プログラムを、ハードディスクを備える外部記憶装置１０３に複製し、メインメモリ１０２に複製した３次元モデル部分拡大表示プログラムがロード可能に構成する所謂インストール（ここで説示したインストールは例示に過ぎない）を行うことで実現できる。そして、コンピュータを制御するＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）へ利用者が３次元モデル部分表示装置の起動を命令することで３次元モデル部分拡大表示プログラムがメインメモリ１０２にロードされて起動する。
なお、３次元モデル部分拡大表示プログラムは、ＣＤ−ＲＯＭ等の記録媒体から提供されるようにしてもよいし、ネットワークを介して他のコンピュータから提供されるようにしてもよい。
[１．２  構成要素]
【００２４】
図２は、本発明の第１の実施形態に係る３次元モデル部分表示装置のモジュール構成図である。
３次元モデル部分表示装置１００は、処理制御装置２００と、入力部２２０と、出力部２３０と、記憶部２４０と、を備える。処理制御装置２００は、モデルデータ読込処理部２０２と、ＢＯＸ作成処理部２０４と、座標変換処理部２０６と、２次元投影処理部２０８と、表示領域設定処理部２１０と、表示領域表示処理部２１２と、ビュー切替処理部２１４と、を備える。
【００２５】
モデルデータ読込処理部２０２は、表示の対象となる３次元モデルのデータを読み込む処理を行う。利用者からの指示により、表示の対象となるモデルのデータを読み込み、そのモデルが出力部２３０により画面上に表示される。
【００２６】
ＢＯＸ作成部２０４は、利用者が注視したい部分として指定した領域に含まれる３次元モデルの構成要素（以下、オブジェクトとする）を完全に覆う８つの頂点でＢＯＸを作成する。具体的には、オブジェクトの座標値（Ｘ，Ｙ，Ｚ）においてＸ、Ｙ、Ｚのそれぞれの値が取り得る最大値、最小値の組み合わせを８パターン抽出し、その８パターンの座標値がオブジェクトを完全に覆うＢＯＸの８頂点の座標値となる。ここで設定されるＢＯＸの８つの頂点の座標値はモデル座標系に基づいて設定される。
【００２７】
なお、利用者が注視したいオブジェクトを指定する場合は、上記のように領域により選択することもできるし、アセンブリツリーにより選択することもできる。また、マウスクリックによりオブジェクトを点で選択してもよい。その他、マウスまたはキーボード等を利用してオブジェクトを選択できればよい。
【００２８】
座標変換部２０６は、モデル座標をビュー座標に変換する処理を行う。ここでは、ＢＯＸ作成部２０４が設定したオブジェクトを覆うＢＯＸをモデル座標からビュー座標に変換する。ここで言うビュー座標とは、利用者の視点から見た座標である。モデル座標からビュー座標への変換は、周知技術を用いて行うことができる。例えば、その一例としてアフィン変換がある。アフィン変換とは、４×４の変換行列の掛け算を行うことで３次元モデルの平行移動、回転、拡大、及び、縮小を行う変換方法である。
【００２９】
２次元投影処理部２０８は、部分表示ウインドウの視点に関して、３次元を２次元に投影する処理を行う。ここでは、座標変換部２０６で変換されたＢＯＸを部分表示ウインドウの視点に関して２次元に投影する処理を行う。
【００３０】
表示領域設定処理部２１０は、２次元投影処理部２０８が投影した２次元の座標（Ｘ，Ｙ）の最大値及び最小値から矩形を作成する。具体的には、２次元化されたＢＯＸの８頂点の座標値（Ｘ，Ｙ）においてＸ、Ｙのそれぞれの値が取り得る最大値、最小値の組み合わせを４パターン抽出し、その４パターンの座標値から矩形を作成する。その矩形を部分表示ウインドウに表示する表示領域として設定する。その際、矩形領域を部分表示ウインドウのサイズに合わせて自動で調整して設定する。矩形領域及び部分表示ウインドウが双方とも正方形であれば、そのまま各辺を揃えるように拡大または縮小して表示することができる。矩形領域または部分表示ウインドウのいずれかまたは双方が長方形である場合は、縦辺または横辺同士のサイズを揃えるように拡大または縮小して表示することができる。縦辺を揃えるかまたは横辺を揃えるかは利用者が任意に選択できるようにしてもよい。また、縦辺、横辺のサイズの関係から、矩形領域の縦辺または横辺のいずれかを部分表示ウインドウの対応する辺のサイズに揃えるように拡大または縮小することで、利用者が選択した矩形領域全体が部分表示ウインドウに表示されるように自動調整するようにしてもよい。
【００３１】
表示領域表示処理部２１２は、表示領域設定処理部２１０で設定された表示領域を部分表示ウインドウに描画する処理を行う。その結果、利用者が注視したい表示部分が部分表示ウインドウに表示される。ここで表示された部分表示ウインドウは、座標がビュー座標に変換されているため、全体画面においてモデルを移動、回転、または、拡大・縮小しても部分表示ウインドウの表示内容は変わらず、表示部分を追従することができる。従って、利用者はモデル全体と部分表示ウインドウに表示された部分の位置関係を容易に把握することができ、作業効率が上がる。
【００３２】
なお、表示領域を表示する際に、部分表示ウインドウと全体表示ウインドウが別々のビューウインドウに関する情報を保持することで、全体表示ウインドウのビューウインドウが変更された場合でも、部分表示ウインドウのビューウインドウが変更されることなく、表示内容を維持することが可能となる。
【００３３】
また、部分表示ウインドウを複数表示することもできる。例えば、利用者が第１の選択領域を選択し、その領域に含まれるオブジェクトが第１の部分表示ウインドウに表示される。次に、利用者が第１の選択領域を選択した状態のまま、全体表示ウインドウ中の第２の選択領域を選択し、その領域に含まれるオブジェクトが第２の部分表示ウインドウに表示される。このようにして、部分表示ウインドウを複数用いることで、利用者の更なる作業効率の向上を図ることができる。また、この時、それぞれの部分表示ウインドウごとにビューウインドウに関する情報を保持するようにすることで、全体ウインドウのビューウインドウが変更された場合でも、それぞれの部分表示ウインドウのビューウインドウが変更されることなく、表示内容を維持することが可能となる。
【００３４】
ビュー切替処理部２１４は、ビューウインドウの切り替えを行う。例えば、利用者が選択した選択領域に含まれるオブジェクトを部分表示ウインドウに表示する際に、部分表示ウインドウと全体表示ウインドウがそれぞれ別々のビューウインドウに関する情報を保持することで、利用者により全体表示ウインドウのビューウインドウが変更されている場合でも、部分表示ウインドウ、または、全体表示ウインドウ中の選択領域をマウスでクリックすることで、全体表示ウインドウのビューウインドウを部分表示ウインドウのビューウインドウに合わせて切り替える処理を行う。そうすることで、全体表示ウインドウのビューウインドウを部分表示ウインドウのビューウインドウに合わせて表示させることができる。
【００３５】
[２  動作]
本発明の第１の実施形態における３次元モデル部分表示装置の動作を説明する。図３は、本発明の第１の実施形態に係る３次元モデル部分表示装置の処理を示すフローチャートである。
まず、図２のモデルデータ読込処理部２０２が、モデルデータを読み込む処理を行う（ステップＳ３０１）。これにより、利用者が作業対象としている３次元のモデルが画面上に初期表示される。次に、初期表示されたモデルの中で、利用者により指定されたオブジェクトを注視オブジェクトとして決定する（ステップＳ３０２）。この時、利用者はマウスで矩形領域を選択してオブジェクトを指定してもよいし、アセンブリツリーを用いてオブジェクトの指定をしてもよい。また、マウスクリックによりオブジェクトを点で選択してもよい。その他、マウスまたはキーボード等を利用してオブジェクトを選択できればよい。
【００３６】
次に、ステップＳ３０２で決定した注視オブジェクトに対して、図２のＢＯＸ作成処理部２０４がＢＯＸの作成処理を行う。ＢＯＸの作成は、注視オブジェクトを完全に覆うような８頂点で作成される（ステップＳ３０３）。作成されたＢＯＸの８頂点の座標は、図２の座標変換処理部２０６によりアフィン変換されて、モデル座標からビュー座標に変換される（ステップＳ３０４）。次に、図２の２次元投影処理部２０８が、ビュー座標に変換後のＢＯＸを部分表示ウインドウの視点に関して２次元に投影する処理を行う（ステップＳ３０５）。図２の表示領域設定処理部２１０は、２次元化された座標（Ｘ，Ｙ）の最大値及び最小値から作成される矩形を表示領域として設定する（ステップＳ３０６）。そして、表示領域として設定された領域を図２の表示領域表示処理部２１４が部分表示ウインドウに描画して処理を終了する。
なお、部分表示ウインドウを複数使用したい場合は、上記の処理を繰り返して行うことで、別の部分表示ウインドウに表示することができる。
【００３７】
[３．  ＢＯＸの作成から表示領域を設定するまでの過程]
ＢＯＸの作成から表示領域を設定するまでの過程をさらに詳細に説明する。図４は、ＢＯＸの作成から表示領域を設定するまでの過程を示した模式図である。
図４（ａ）は、注視したいオブジェクト４０１のＢＯＸ４０２を作成した様子を示している。この時ＢＯＸ４０２は、オブジェクト４０１を完全に覆うような８頂点で作成されており、ＢＯＸの８頂点の座標はモデル座標である。この８頂点は上記でも説明したように、オブジェクトの座標値の最大値、最小値の組み合わせを８パターン抽出し、その８パターンの座標値がＢＯＸの８頂点の座標値となる。このＢＯＸのモデル座標をアフィン変換によりビュー座標に変換した様子を示した図が図４（ｂ）である。そして、変換後のＢＯＸを部分表示ウインドウの視点に関して２次元に投影し、２次元化されたＢＯＸの平面座標（Ｘ，Ｙ）の座標値の最大値及び最小値の４パターンの組み合わせから矩形４０４を作成した様子を示した図が図４（ｃ）である。図２の表示領域設定処理部２１０は、この矩形４０４を部分表示ウインドウ５０４のサイズに合わせてサイズ調整処理を行う（図４（ｄ））。
【００３８】
図４（ｃ）及び図４（ｄ）を用いてサイズ調整処理について説明する。矩形４０４及び部分表示ウインドウ５０４が双方とも正方形であれば、矩形４０４の一辺のサイズを部分表示ウインドウ５０４の一辺のサイズに揃えるように拡大または縮小して表示することができる。矩形４０４または部分表示ウインドウ５０４のいずれかまたは双方が長方形である場合は、矩形４０４の縦辺４１０のサイズと部分表示ウインドウ５０４の縦辺４２０のサイズを揃えるか、または、矩形４０４の横辺４１１のサイズと部分表示ウインドウ５０４の横辺４２１のサイズを揃えるように拡大または縮小して表示することができる。矩形４０４の縦辺４１０のサイズと部分表示ウインドウ５０４の縦辺４２０のサイズを揃えるか、または、矩形４０４の横辺４１１のサイズと部分表示ウインドウ５０４の横辺４２１のサイズを揃えるかは利用者が任意に選択できるようにしてもよい。また、矩形４０４の縦辺４１０または横辺４１１のいずれかを、それに対応する部分表示ウインドウ５０４の辺のサイズに揃えて拡大または縮小して調整することで、利用者が選択した矩形４０４の全体が部分表示ウインドウ５０４に含まれて表示されるように、縦辺を揃えるかまたは横辺を揃えるかを表示領域設定処理部２１０が自動で選択して調整するようにしてもよい。この時、拡大率または縮小率は次のようして算出することができる。部分表示ウインドウ５０４の縦辺４２０または横辺４２１のサイズを、矩形４０４の対応する縦辺４１０または横辺４１１のサイズで割った値が拡大率または縮小率となる。その値が１以上であれば拡大されて表示され、１以下であれば縮小されて部分表示ウインドウ５０４に表示される。  
【００３９】
[４．  第１の実施形態の実施結果]
図５は、本発明の第１の実施形態に係る３次元モデル部分表示装置を実施した場合の結果を示した模式図である。
図５（ａ）は、全体ウインドウ５０２に３次元モデル５００が表示されており利用者が選択領域５０３を選択することで、部分表示ウインドウ５０４を表示している。この時、画面上には３次元モデル５００の全体図と部分表示ウインドウ５０４が正常に表示されているため、相互の位置関係は容易に把握することができる。そして、利用者がモデル５００を上方に平行移動した場合を図５（ｂ）に示している。従来は、図１３（ｂ）に示したように、部分表示ウインドウ５０４には、選択領域５０３がそのまま固定で表示され、モデル５００の移動に伴い、利用者が注視したい部分が部分表示ウインドウ５０４から逸脱してしまい、初期表示の状態を維持することができなかった。しかし、本発明により、モデル５００の移動に伴い、利用者が注視したい部分が部分表示ウインドウ５０４から逸脱してしまうことがなくなり、図５（ｂ）に示すように常にモデル５００全体と部分表示ウインドウ５０４に表示された部分の相互の位置関係を把握することが可能となる。これにより、利用者の作業効率を上げることができる。
【００４０】
[５．  部分表示ウインドウを複数使用する場合]
図６は、部分表示ウインドウを複数使用した場合の模式図である。
まず、利用者により、全体表示ウインドウ５０２に読み込まれたモデル５００の中で注視したいオブジェクトが選択される（ここでは、左後ろのタイヤ）。本発明の３次元モデル部分表示装置は、その指示に従い部分表示ウインドウ５０４に選択されたオブジェクトを表示する。ここで、利用者が左前のタイヤも同時に部分表示ウインドウに表示したいと思った場合、部分表示ウインドウ５０４は保持したまま、第２のオブジェクトを選択することができる。３次元モデル部分表示装置は、利用者からの第２の選択指示に従い第２の部分表示ウインドウ６１２に選択されたオブジェクトを表示する。同様に、第３の部分表示ウインドウ６２２にもオブジェクト（左側窓）を表示することができる。このように、複数の部分表示ウインドウを表示することで、利用者はより作業し易くなる。
【００４１】
また、図６において、全体表示ウインドウ５０２、部分表示ウインドウ５０４、第２の部分表示ウインドウ６１２、及び、第３の部分表示ウインドウ６２２は、それぞれ違うビューウインドウに関する情報を保持することができる。そうすることで、全体表示ウインドウ５０２のビューウインドウが変更された場合であっても、それぞれの部分表示ウインドウに表示されている内容を維持することができる。さらに、ビューウインドウの切り替え機能を有することで、例えば、全体表示ウインドウ５０２のビューウインドウと部分表示ウインドウ５０４のビューウインドウが相違する状態にある場合であっても、部分表示ウインドウ５０４またはそれに対応する選択領域５０３をマウスでクリックすることで、全体表示ウインドウ５０２のビューウインドウを部分表示ウインドウ５０４のビューウインドウに切り替え、全体表示ウインドウ５０２の表示を部分表示ウインドウ５０４と同じビューウインドウで表示することが可能となる。
【００４２】
（本発明の第２の実施形態）
[１．  構成]
[１．１  ハードウェア構成]
本発明の第２の実施形態において、装置のハードウェア構成は第１の実施形態と同じであるため説明は省略する。
【００４３】
[１．２  構成要素]
図７は、本発明の第２の実施形態に係る３次元モデル部分表示装置のモジュール構成図である。
本発明の第２の実施形態に係る３次元モデル部分表示装置のモジュール構成は、第１の実施形態に係る３次元モデル部分表示装置のモジュール構成と同じであるが、処理の順番が異なる。第１の実施形態においては、注視オブジェクトのＢＯＸを作成してから座標変換処理を行ったが、第２の実施携帯においては、注視オブジェクトの座標変換処理を行ってからＢＯＸの作成を行う。
各処理部の機能は、第１の実施形態と同じであるため説明は省略する。
【００４４】
[２．  動作]
本発明の第２の実施形態における３次元モデル部分表示装置の動作を説明する。図８は、本発明の第２の実施形態に係る３次元モデル部分表示装置の処理を示すフローチャートである。
ステップＳ７０２までの処理は第１の実施形態と同じであるため説明は省略する。ステップＳ７０３では、図７の座標変換処理部２０６が、アフィン変換により注視オブジェクトのモデル座標をビュー座標に変換する処理を行う。図７のＢＯＸ作成処理部２０４は、ステップＳ７０３でビュー座標に変換された注視オブジェクトに対してＢＯＸの作成を行う。ＢＯＸの作成は、座標変換された注視オブジェクトを完全に覆うような８頂点で作成される（ステップＳ７０４）。作成されたＢＯＸの８頂点の座標に対して、図７の２次元投影処理部２０８が、部分表示ウインドウの視点に関して２次元に投影する処理を行う（ステップＳ７０５）。以降、部分表示ウインドウに表示するまでの処理は、第１の実施形態と同じであるため説明を省略する。
【００４５】
[３．  注視オブジェクトの座標変換から表示領域を設定するまでの過程]
第２の実施形態における注視オブジェクトの座標変換から表示領域を設定するまでの過程をさらに詳細に説明する。図９は、本発明の第２の実施形態における注視オブジェクトの座標変換から表示領域を設定するまでの過程を示した模式図である。
【００４６】
図９（ａ）は、注視したいオブジェクト４０１である。図９（ａ）に示すオブジェクト４０１をアフィン変換によりモデル座標からビュー座標に変換したものが図９（ｂ）に示すオブジェクト４０１である。ＢＯＸ４０２は、このオブジェクト４０１を完全に覆うような８頂点で作成されており、８頂点の座標はビュー座標系である。そして、このＢＯＸを部分表示ウインドウの視点に関して２次元に投影し、２次元化されたＢＯＸの平面座標（Ｘ，Ｙ）の最大値及び最小値から矩形４０４を作成した様子を示した図が図９（ｃ）である。以降、部分表示ウインドウを表示する過程は第１の実施形態と同じであるため説明は省略する。
【００４７】
（本発明の第３の実施形態）
[１．  構成]
[１．１  ハードウェア構成]
本発明の第３の実施形態において、装置のハードウェア構成は第１の実施形態と同じであるため説明は省略する。
【００４８】
[１．２  構成要素]
図１０は、本発明の第３の実施形態に係る３次元モデル部分表示装置のモジュール構成図である。
３次元モデル部分表示装置１００は、処理制御装置２００と、入力部２２０と、出力部２３０と、記憶部２４０と、を備える。処理制御装置２００は、モデルデータ読込処理部２０２と、座標変換処理部２０６と、２次元投影処理部２０８と、表示領域設定処理部２１０と、表示領域表示処理部２１２と、ビュー切替処理部２１４と、を備える。第１の実施形態とは異なる点は、ＢＯＸ作成処理部２０４を備えていない点である。
各処理部の機能は、第１の実施形態と同じであるため説明は省略する。
【００４９】
[２．  動作]
本発明の第３の実施形態における３次元モデル部分表示装置の動作を説明する。図１１は、本発明の第３の実施形態に係る３次元モデル部分表示装置の処理を示すフローチャートである。
ステップＳ１１０３までは第２の実施形態と同じであるため説明は省略する。ステップＳ１１０４では、モデル座標からビュー座標に変換された注視オブジェクトに対して、図１０の２次元投影処理部２０８が、部分表示ウインドウの視点に関して２次元に投影する処理を行う。以降、部分表示ウインドウに表示するまでの処理は、第２の実施形態と同じであるため説明を省略する。
【００５０】
[３．  注視オブジェクトの座標変換から表示領域を設定するまでの過程]
第３の実施形態における注視オブジェクトの座標変換から表示領域を設定するまでの過程をさらに詳細に説明する。図１２は、本発明の第３の実施形態における注視オブジェクトの座標変換から表示領域を設定するまでの過程を示した模式図である。
【００５１】
図１２（ａ）は、注視したいオブジェクト４０１である。図１２（ａ）に示すオブジェクト４０１をアフィン変換によりモデル座標からビュー座標に変換したものが図１２（ｂ）のオブジェクト４０１である。そして、座標変換後のオブジェクト４０１を部分表示ウインドウの視点に関して２次元に投影し、２次元化されたオブジェクト４０１の平面座標（Ｘ，Ｙ）の最大値及び最小値から矩形４０４を作成した様子を示す図が図１２（ｃ）である。以降、部分表示ウインドウを表示する過程は第２の実施形態と同じであるため説明は省略する。
【００５２】
このように、上記各実施形態によれば、全体画面に表示されている３次元モデルを移動、回転、拡大、または、縮小した場合であっても部分表示ウインドウは初期表示の状態を維持することができるため、利用者の作業効率が向上する。
【００５３】
なお、上記各実施形態は、ＣＡＤ装置や分子構造のシミュレーション装置のように、コンピュータグラフィクス技術を用いてモデルを３次元で表示させ、そのモデルを構成するオブジェクトの選択を受け付け、選択を受け付けたオブジェクトを表示する装置で適用可能である。
【００５４】
以上の前記各実施形態により本発明を説明したが、本発明の技術的範囲は実施形態に記載の範囲には限定されず、これら各実施形態に多様な変更又は改良を加えることが可能である。そして、かような変更又は改良を加えた実施の形態も本発明の技術的範囲に含まれる。このことは、特許請求の範囲及び課題を解決する手段からも明らかなことである。
【図面の簡単な説明】
【００５５】
【図１】本発明の第１の実施形態に係る３次元モデル部分表示装置のハードウェア構成の模式図である。
【図２】本発明の第１の実施形態に係る３次元モデル部分表示装置のモジュール構成図である。
【図３】本発明の第１の実施形態に係る３次元モデル部分表示装置の処理を示すフローチャートである。
【図４】ＢＯＸの作成から表示領域を設定するまでの過程を示した模式図である。
【図５】本発明の第１の実施形態を実施した場合の結果を示した模式図である。
【図６】部分表示ウインドウを複数使用した場合の模式図である。
【図７】本発明の第２の実施形態に係る３次元モデル部分表示装置のモジュール構成図である。
【図８】本発明の第２の実施形態に係る３次元モデル部分表示装置の処理を示すフローチャートである。
【図９】本発明の第２の実施形態における注視オブジェクトの座標変換から表示領域を設定するまでの過程を示した模式図である。
【図１０】本発明の第３の実施形態に係る３次元モデル部分表示装置のモジュール構成図である。
【図１１】本発明の第３の実施形態に係る３次元モデル部分表示装置の処理を示すフローチャートである。
【図１２】本発明の第３の実施形態における注視オブジェクトの座標変換から表示領域を設定するまでの過程を示した模式図である。
【図１３】従来技術の課題を示した模式図である。
【符号の説明】
【００５６】
１００  ３次元モデル部分表示装置
１０１  ＣＰＵ
１０２  メインメモリ
１０３  外部記憶装置
１０４  入力装置
１０５  出力装置
１１０  バス
２００  処理制御装置
２０２  モデルデータ読込処理部
２０４  ＢＯＸ作成処理部
２０６  座標変換処理部
２０８  ２次元投影処理部
２１０  表示領域設定処理部
２１２  表示領域表示処理部
２１４  ビュー切替処理部
２２０  入力部
２３０  出力部
２４０  記憶部
４０１  オブジェクト
４０２  ＢＯＸ
４０４  矩形領域
４１０  矩形領域の縦辺
４１１  矩形領域の横辺
４２０  部分表示ウインドウの縦辺
４２１  部分表示ウインドウの横辺
５００  モデル
５０２  全体表示ウインドウ
５０３  選択領域
５０４  部分表示ウインドウ
６１０  第２の選択領域
６１２  第２の部分表示ウインドウ
６２０  第３の選択領域
６２２  第３の部分表示ウインドウ
【図１】
2008242611.tif 000003
【図２】
2008242611.tif 000004
【図３】
2008242611.tif 000005
【図４】
2008242611.tif 000006
【図５】
2008242611.tif 000007
【図６】
2008242611.tif 000008
【図７】
2008242611.tif 000009
【図８】
2008242611.tif 000010
【図９】
2008242611.tif 000011
【図１０】
2008242611.tif 000012
【図１１】
2008242611.tif 000013
【図１２】
2008242611.tif 000014
【図１３】
2008242611.tif 000015