(57)【特許請求の範囲】
【請求項１】
画面上に表示されるカーソル位置を取得するカーソル位置取得部と、
複数の部品を含む３次元モデルが表示される３次元モデル画像上で前記カーソル位置取得部によって取得されたカーソル位置が指す部品の大きさと、該３次元モデル画像に重ね表示させる拡大画像の表示枠の大きさとに基づき、前記カーソル位置が指す部品の拡大率を決定する拡大率決定部と、
前記部品を含む前記拡大率決定部によって決定された拡大率で拡大した拡大画像を前記３次元モデル画像に重ね表示させる表示制御部と
を有することを特徴とする部品選択装置。
【請求項２】
前記表示制御部は、前記３次元モデル画像上で前記カーソル位置取得部によって取得されたカーソル位置が指す部品の正面方向から所定の角度を傾けた方向に前記部品に対する視点方向を変更した上で前記拡大画像を表示させることを特徴とする請求項１に記載の部品選択装置。
【請求項３】
前記表示制御部は、前記３次元モデル画像上で前記カーソル位置取得部によって取得されたカーソル位置が指す部品の位置と、前記拡大画像の表示枠の中心位置とが重なるように前記３次元モデル画像及び前記拡大画像を重ね表示させることを特徴とする請求項１または２に記載の部品選択装置。
【請求項４】
前記表示制御部は、前記カーソル位置取得部によって取得されたカーソル位置が前記３次元モデル画像上の部品を指す場合には、前記拡大画像を前記３次元モデル画像に重ね表示させ、前記３次元モデル画像上の部品を指さない場合には、前記３次元モデル画像を単独表示させることを特徴とする請求項１、２または３に記載の部品選択装置。
【請求項５】
画面上に表示されるカーソル位置を取得するカーソル位置取得部と、
複数の部品を含む３次元モデルが表示される３次元モデル画像上で前記カーソル位置取得部によって取得されたカーソル位置が指す部品の大きさと、該３次元モデル画像に重ね表示させる拡大画像の表示枠の大きさとに基づき、前記カーソル位置が指す部品の拡大率を決定する拡大率決定部と、
前記部品を含む前記拡大率決定部によって決定された拡大率で拡大した拡大画像を前記３次元モデル画像に重ね表示させる表示制御部と
を有することを特徴とするＣＡＤ装置。
【請求項６】
コンピュータが、
画面上に表示されるカーソル位置を取得するカーソル位置取得工程と、
複数の部品を含む３次元モデルが表示される３次元モデル画像上で前記カーソル位置取得工程によって取得されたカーソル位置が指す部品の大きさと、該３次元モデル画像に重ね表示させる拡大画像の表示枠の大きさとに基づき、前記カーソル位置が指す部品の拡大率を決定する拡大率決定工程と、
前記部品を含む前記拡大率決定工程によって決定された拡大率で拡大した拡大画像を前記３次元モデル画像に重ね表示させる表示制御工程と
を実行することを特徴とする部品選択方法。
【請求項７】
画面上に表示されるカーソル位置を取得するカーソル位置取得手順と、
複数の部品を含む３次元モデルが表示される３次元モデル画像上で前記カーソル位置取得手順によって取得されたカーソル位置が指す部品の大きさと、該３次元モデル画像に重ね表示させる拡大画像の表示枠の大きさとに基づき、前記カーソル位置が指す部品の拡大率を決定する拡大率決定手順と、
前記部品を含む前記拡大率決定手順によって決定された拡大率で拡大した拡大画像を前記３次元モデル画像に重ね表示させる表示制御手順と
をコンピュータに実行させることを特徴とする部品選択プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、部品選択装置、ＣＡＤ装置、部品選択方法及び部品選択プログラムに関する。
【背景技術】
【０００２】
近年、ハードウェア（hardware）の高性能化に伴って設計支援用アプリケーション（Application）における３次元モデル（Model）の再現能力が高まっている。このような設計支援用アプリケーションの一例としては、３次元ＣＡＤ（Computer  Aided  Design）やデジタルモックアップ（ＤＭＵ：Digital  Mock−Up）などが挙げられる。なお、以下では、設計支援用アプリケーションを設計支援アプリと略記する。
【０００３】
かかる設計支援アプリでは、３次元モデルの一部に含まれる部分部品が表示されるとともにその形状までもが実物と同等に表示される。そして、部分部品には、３次元モデルに比べてスケール（scale）が著しく小さい微小部品も含まれる。このことから、設計支援アプリにより再現される部分部品の数は多くなり、また、設計支援アプリにより表示される部分部品の密度も高くなる。
【０００４】
このため、設計支援アプリによって生成される表示画像上で操作者が特定の微小部品を選択操作する場合にその選択操作に係る操作性が悪化するケース（case）がある。このような表示画像の一例としては、３次元モデルの閲覧または編集を行う作業画像が表示される。例えば、微小部品を選択する場合には、微小部品のスケールが３次元モデルのスケールとかけ離れているので、作業画像上で微小部品が占める割合も微細になる。一例として挙げれば、微小部品が数ドットで表示される場合がある。それゆえ、操作者が作業画像上でポインティングデバイス（pointing  device）のカーソル（cursor）の照準を微小部品に合わせるのには困難な状況となる。このような状況下では、操作者は、目的の微小部品をカーソルで指定するのを成功するまでカーソルの照準合わせを行わねばならず、トライアンドエラー（try  and  error）が発生してしまう。なお、以下では、作業画像上で部分部品を選択する操作のことを「部品選択操作」という。
【０００５】
このようなトライアンドエラーが発生するとはいえ、部品選択操作は、特定の部分部品やその形状の一部の属性情報を閲覧する操作や部分部品の属性を変更する操作につながる基本操作であり、使用頻度の高い重要な操作である。なお、かかる部品選択操作には、部分部品そのものを指定する操作だけでなく、部分部品における形状の一部を指定する操作なども含まれる。このように形状の一部を指定する操作の一例としては、ネジなどの部分部品の径を特定する２点を指定する操作などが挙げられる。
【０００６】
このように微細部品の選択操作が困難な状況下でも選択対象とする微小部品を特定するための技術として、部品検索機能（従来技術１）、ズーム機能（従来技術２）、拡大画像の重ね表示機能（従来技術３）などが使用される。
【０００７】
このうち、従来技術１は、操作者が選択しようとする部分部品の名前などの検索キーワードを受け付け、３次元モデルが含む部分部品の一覧が登録された部品リストの中から検索キーワードに該当する部分部品を検索するものである。これによって、操作者は、検索結果の中から目的の部分部品を選択できる。
【０００８】
また、従来技術２は、作業画像に含まれる３次元モデルの拡大を行うものである。これによって、作業者は、３次元モデルとともにその一部として拡大された微小部品またはその形状の一部をポインティングデバイスのカーソルで指定できる。
【０００９】
また、従来技術３は、カーソル位置を示すためのカーソル位置マークを常に拡大モニタ表示領域の中心に表示するとともに、カーソルの移動に追従してカーソルを中心とする所定範囲の表示画像を拡大した拡大画像を拡大モニタ表示領域に自動表示するものである。これによって、作業者は、微小部品の周辺にカーソル位置を合わせることにより微小部品の拡大画像を別画像で表示させることができ、拡大された微小部品またはその形状の一部をポインティングデバイスのカーソルで指定できる。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開２００１−３５７０７６号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
しかしながら、上記の従来技術１〜３には、依然として、微小部品の選択操作が煩雑であるという問題が残る。
【００１２】
例えば、従来技術１では、検索キーワードの入力や検索結果からの部分部品の選択などの余分な操作手順が生じるとともに、操作手順間で異なる種類の入力デバイスを使用する必要が生じる。結果として、従来技術１では、作業画像上で微小部品をカーソル指定するのを避けることにより、微小部品の選択に至るまでの操作過程が迂遠になってしまう。さらに、従来技術１では、検索キーワードとする部分部品が３次元モデルの中に複数存在する場合に、検索結果として得られた部分部品それぞれが３次元モデル上でどの位置に配置されているかを確かめてから目的の部分部品を選択する必要がある。
【００１３】
また、従来技術２では、作業画像上で微小部品をカーソル指定する前にズーム機能を使用する必要があり、微小部品の選択操作が煩雑となってしまう。例えば、ズーム機能を使用する場合には、作業画像の中心位置に目的の微小部品を合わせる操作を行った上で拡大コマンドに対応する操作を微小部品がカーソル指定に耐え得る大きさに拡大されるまで繰り返し行う必要がある。
【００１４】
さらに、従来技術３では、微小部品の周辺にカーソル位置を合わせると微小部品の拡大画像が重ね表示されるものの、その拡大画像は一律の拡大率で拡大されるに過ぎない。このため、従来技術３では、拡大画像に含まれる微小部品がカーソル指定に耐え得る大きさまで拡大されていない場合に操作者が拡大率を手動で変更する手間が生じるので、依然として、微小部品の選択操作に煩雑さが残る。
【００１５】
開示の技術は、上記に鑑みてなされたものであって、微小部品の選択操作を簡単に行うことができる部品選択装置、ＣＡＤ装置、部品選択方法及び部品選択プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１６】
本願の開示する部品選択装置は、画面上に表示されるカーソル位置を取得するカーソル位置取得部を有する。前記部品選択装置は、前記カーソル位置が指す部品の拡大率を決定する拡大率決定部をさらに有する。前記拡大率決定部は、複数の部品を含む３次元モデルが表示される３次元モデル画像上で前記カーソル位置取得部によって取得されたカーソル位置が指す部品の大きさと、該３次元モデル画像に重ね表示させる拡大画像の表示枠の大きさとから前記拡大率を決定する。前記部品選択装置は、前記部品を含む前記拡大率決定部によって決定された拡大率で拡大した拡大画像を前記３次元モデル画像に重ね表示させる表示制御部をさらに有する。
【発明の効果】
【００１７】
本願の開示する部品選択装置の一つの態様によれば、微小部品の選択操作を簡単に行うことができるという効果を奏する。
【図面の簡単な説明】
【００１８】
【図１】図１は、実施例１に係る部品選択装置の構成を示すブロック図である。
【図２】図２は、実施例２に係るＣＡＤ装置の構成を示すブロック図である。
【図３】図３は、重ね表示時におけるカーソル移動を説明するための図である。
【図４】図４は、部品選択ビューの自動表示を説明するための図である。
【図５Ａ】図５Ａは、部品選択ビューの位置合わせ表示を説明するための図である。
【図５Ｂ】図５Ｂは、部品選択ビューの位置合わせ表示を説明するための図である。
【図６】図６は、部品選択ビューの視点方向自動調節を説明するための図である。
【図７】図７は、実施例２に係る表示制御処理の手順を示すフローチャートである。
【図８】図８は、実施例３に係る部品選択プログラムを実行するコンピュータの一例について説明するための図である。
【発明を実施するための形態】
【００１９】
以下に、本願の開示する部品選択装置、ＣＡＤ装置、部品選択方法及び部品選択プログラムの実施例を図面に基づいて詳細に説明する。なお、この実施例は開示の技術を限定するものではない。
【実施例１】
【００２０】
図１は、実施例１に係る部品選択装置の構成を示すブロック図である。図１に示す部品選択装置１は、カーソル位置取得部２と、拡大率決定部３と、表示制御部４とを有する。
【００２１】
カーソル位置取得部２は、画面上に表示されるカーソル位置を取得する。拡大率決定部３は、カーソル位置が指す部品の拡大率を決定する。この拡大率決定部３は、複数の部品を含む３次元モデルが表示される３次元モデル画像上でカーソル位置取得部２によって取得されたカーソル位置が指す部品の大きさと、３次元モデル画像に重ね表示させる拡大画像の表示枠の大きさとから拡大率を決定する。また、表示制御部４は、部品を含む拡大率決定部３によって決定された拡大率で拡大した拡大画像を３次元モデル画像に重ね表示させる。
【００２２】
このように、部品選択装置１は、３次元モデル画像に重ね表示させる拡大画像の表示枠に部品が埋まるように部品の拡大率を変化させる。つまり、部品選択装置１では、部品が大きいほど拡大率を小さくし、また、部品が小さいほど拡大率を大きくする。このため、部品選択装置１では、部品のスケールに適合した拡大率で拡大された拡大画像を３次元モデル画像に重ね表示できる。それゆえ、部品選択装置１では、拡大画像に含まれる微小部品がカーソル指定に耐え得る大きさまで操作者が手動で拡大率を変更する手間を不要化できる。したがって、本実施例に係る部品選択装置１によれば、微小部品の選択操作を簡単に行うことが可能になる。
【実施例２】
【００２３】
［ＣＡＤ装置の構成］
続いて、実施例２に係るＣＡＤ装置１０について説明する。図２は、実施例２に係るＣＡＤ装置の構成を示すブロック図である。このＣＡＤ装置１０は、部品や製品などの設計を支援するアプリケーションであるＣＡＤシステム１５が搭載されたコンピュータであり、図２に示すように、入力部１１と、表示部１２と、記憶部１３と、制御部１４とを有する。
【００２４】
このうち、入力部１１は、各種情報、例えば後述のＣＡＤシステム１５に対する指示入力を受け付ける入力デバイスであり、例えば、キーボードやマウスなどである。なお、後述の表示部１２も、マウスと協働して、ポインティングデバイス機能を実現する。また、表示部１２は、各種の情報、例えば３次元モデル画像や拡大画像を表示する表示デバイスであり、例えば、モニタ、ディスプレイやタッチパネルなどである。
【００２５】
なお、以下では、マウスによってポインティングデバイス機能が実現される場合を説明するが、タッチパッドなどの他の入力デバイスによりポインティングデバイス機能が実現される場合にも開示の装置に適用できる。
【００２６】
記憶部１３は、例えば、フラッシュメモリ（flash  memory）などの半導体メモリ素子、または、ハードディスク、光ディスクなどの記憶装置である。なお、記憶部１３は、上記の種類の記憶装置に限定されるものではなく、ＲＡＭ（Random  Access  Memory)、ＲＯＭ（Read  Only  Memory)であってもよい。
【００２７】
この記憶部１３は、制御部１４で実行される各種プログラム、例えばＯＳ（Operating  System）やＣＡＤ（Computer  Aided  Design）システム１５などを記憶する。さらに、記憶部１３は、先のプログラムの実行に必要なデータ、例えば３次元モデル及びその部分部品の製図情報であるＣＡＤデータ１３ａを記憶する。このほか、記憶部１３は、カーソル移動量算出用データ１３ｂを併せて記憶する。
【００２８】
カーソル移動量算出用データ１３ｂは、３次元モデル画像及び拡大画像の２つの画像を重ね表示する場合におけるカーソルの移動量を算出するための関数を含むデータである。このカーソル移動量算出用データ１３ｂは、後述するカーソル情報取得部１５ａによって使用される。なお、以下では、３次元モデル画像を１つだけで表示することを「単独表示」と呼び、また、３次元モデル画像及び拡大画像の２つの画像を重ね表示することを「重ね表示」と呼ぶ。また、以下では、３次元モデル画像を「３次元モデル表示ビュー」と呼び、カーソル位置が指す部品を含む拡大画像を「部品選択ビュー」と呼ぶ。
【００２９】
ここで、上記の関数を例示する前に重ね表示用のカーソル操作量を算出する技術的意義を説明する。本実施例に係るＣＡＤ装置１０は、３次元モデル表示ビューよりも大きいスケールで部品が表示される部品選択ビュー上で部品を選択できる重ね表示を行う。すなわち、ＣＡＤ装置１０では、３次元モデルビュー上でカーソル位置が指す部品の位置と、部品選択ビューの表示枠の中心位置とが重なるように３次元モデル表示ビュー及び部品選択ビューを重ね表示させる。このような重ね表示を行う場合には、操作者は、拡大画像を目視しながらマウスを操作することになる。
【００３０】
このとき、単独表示時と重ね表示時との間でマウスの操作量に連動させて動かすカーソルの移動量を同じとしたのでは、操作者がマウスの操作量から予測するカーソルの移動量と、実際のカーソルの移動量との間にズレが生じてしまう。なぜなら、ＣＡＤ装置１０では、３次元モデル表示ビュー上でカーソルが指し示す部品の拡大画像を部品選択ビューとして重ね表示するが、操作者は、あくまでも部品選択ビューのスケールに合わせてマウスを動かすからである。このため、操作者は部品選択ビューに含まれる部品上でマウスを動かしているつもりでも、カーソルは３次元モデル表示ビュー上の部品からはみ出す。それゆえ、カーソルの照準が操作者の意図しない部品に合ったり、或いは３次元モデル上からも外れたりしてしまう。このようなマウス操作上の違和感が生じることを防止するために、後述の表示制御部１５ｃによって単独表示時とは異なる重ね表示用のカーソル操作量を導出する関数を記憶部１３にセットさせる。すなわち、カーソル情報取得部１５ａによってカーソル移動量の算出時にカーソル移動量算出用データ１３ｂの有無がチェックされることを念頭に、重ね表示が実行される場合に表示制御部１５ｃによって関数がセットされる。
【００３１】
このような関数としては、操作者によって動かされたマウスの操作量が大きいほどカーソルの移動量が大きくなり、さらに、後述の拡大率決定部１５ｂによって決定された拡大率が大きいほどカーソルの移動量が小さくなるように導出する式の規定が好ましい。一例としては、「重ね表示時のカーソル移動量＝マウスの操作量÷カーソル位置が指す部品の拡大率」などが挙げられる。
【００３２】
拡大率データ１３ｃは、カーソル位置が指す部品の拡大率を含むデータである。この拡大率データ１３ｃは、後述の拡大率決定部１５ｂによって決定され、後述のカーソル情報取得部１５ａによって使用される。
【００３３】
制御部１４は、例えば、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）などの集積回路、または、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）などの電子回路である。
【００３４】
この制御部１４は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、これらによって種々の処理を実行する。制御部１４は、図２に示すように、３次元モデルの設計を支援するアプリケーションであるＣＡＤシステム１５を搭載し、ＣＡＤシステム１５がカーソル情報取得部１５ａと、拡大率決定部１５ｂと、表示制御部１５ｃとを有する。
【００３５】
カーソル情報取得部１５ａは、カーソルに係る情報を取得する処理部である。例えば、カーソル情報取得部１５ａは、操作者によってマウスを移動させる操作がなされた場合に、マウス操作量からカーソル移動量を算出する。
【００３６】
このとき、前回のカーソル移動時に部品選択ビューが重ね表示されていれば、カーソル情報取得部１５ａは、記憶部１３にカーソル移動量算出データ１３ｂとして記憶された関数を読み出す。そして、カーソル情報取得部１５ａは、今回計測されたマウス操作量と、記憶部１３に拡大率データ１３ｃとして記憶された拡大率とを先に読み出した関数へ代入することにより、重ね表示用のカーソル移動量を算出する。例えば、マウス移動量が３ｃｍであり、拡大率が２倍であった場合には、重ね表示用のカーソル移動量は１．５ｃｍ（＝３÷２）と算出される。
【００３７】
一方、前回のカーソル移動時に部品選択ビューが重ね表示されていなければ、カーソル情報取得部１５ａは、今回計測されたマウス操作量をそのまま単独表示用のカーソル移動量とする。例えば、マウス移動量が３ｃｍであった場合には、単独表示用のカーソル移動量も３ｃｍとなる。
【００３８】
そして、カーソル情報取得部１５ａは、このようにして算出したカーソル移動量およびマウスの移動軌跡にしたがって３次元モデル表示ビュー上でカーソルを移動させる。図３は、重ね表示時におけるカーソル移動を説明するための図である。図３に示す符号３０は、３次元モデル表示ビューを示す。図３に示す符号３０ａは、ノートパソコンの３次元モデルを示す。図３に示す符号Ｃはカーソルを示す。図３に示す符号３１は、部品選択ビューを示す。図３に示す符号３１ａ、符号３２及び符号３３は、ノートパソコンの３次元モデルに含まれる部分部品を示す。図３に示す符号ｍ１及びｎ１は、カーソルＣの起点を示す。図３に示す符号ｍ２及びｎ２は、カーソルＣの終点を示す。なお、図３に示す例では、説明の便宜上、３次元モデルビュー上でカーソル位置が指す部品の位置と、部品選択ビューの表示枠の中心位置とをずらせて図示している。また、部分部品３２及び３３については、ここでは説明に使用せず、後述の図５の説明に使用することとする。
【００３９】
ここで、図３に示す部品選択ビュー３１に含まれる部分部品３１ａ上で操作者が起点ｍ１から終点ｍ２へカーソルＣを動かす意図を持つ場合を想定する。仮に、単独表示時と重ね表示時との間でマウスの操作量に対するカーソルの移動量を同じとした場合には、操作者が起点ｍ１から終点ｍ２に至るマウス操作を行うと３次元モデル表示ビュー３０上で起点ｎ１から終点ｎ２までカーソルＣが移動する。このため、３次元モデル表示ビュー３０上でカーソルＣが部分部品３１ａからはみ出してしまう。一方、カーソル情報取得部１５ａでは、同じマウス操作量であっても重ね表示時の方が単独表示時よりもカーソル移動量を小さくする関数を用いる。このため、操作者が起点ｍ１から終点ｍ２に至るマウス操作を行っても３次元モデル表示ビュー３０上でカーソルＣが部分部品３１ａからはみ出す可能性を低減できる。したがって、操作者がマウス操作量から予測するカーソル移動量と、実際のカーソル移動量との間に生じるズレを低減でき、マウス操作上の違和感が生じることを防止できる。
【００４０】
拡大率決定部１５ｂは、３次元モデル表示ビュー上でカーソル情報取得部１５ａによって取得されたカーソル位置が指す部品の大きさと、部品選択ビューの表示枠の大きさとからカーソル位置が指す部品の拡大率を決定する処理部である。なお、以下では、３次元モデル表示ビュー上でカーソル位置が指す部品を「カーソル指示部品」と呼ぶ。
【００４１】
これを説明すると、拡大率決定部１５ｂは、３次元モデル表示ビュー上でカーソル位置が指す部品を包含する包含球を求め、その包含球が部品選択ビューの表示枠に最大限投影された時の拡大率をカーソル指示部品の拡大率と決定する。このとき、拡大率決定部１５ｂは、部品選択ビューの表示枠の枠線と包含球の円周とが少なくとも１点で接した場合に最大限投影されたものと見做す。なお、ここでは、包含球が部品選択ビューの表示枠にぴったり投影される場合の拡大率を採用することとしたが、部品選択ビューの表示枠の枠線と包含球の円周との最短距離が所定の距離となるように余白を設けることとしてもよい。
【００４２】
表示制御部１５ｃは、表示部１２の表示制御を行う処理部である。この表示制御部１５ｃは、ＣＡＤ装置１０特有の表示機能として、（１）部品選択ビューの自動表示、（２）部品選択ビューの位置合わせ表示、（３）部品選択ビューの視点方向自動調節などの機能を有する。
【００４３】
（１）部品選択ビューの自動表示
まず、表示制御部１５ｃによる部品選択ビューの自動表示について説明する。表示制御部１５ｃは、カーソル情報取得部１５ａによって移動されたカーソル位置が３次元モデル表示ビューの部品上に存在する場合には、３次元モデル表示ビューにカーソル指示部品を含む部品選択ビューを重ねて表示部１２に表示させる。その一方で、表示制御部１５ｃは、カーソル情報取得部１５ａによって移動されたカーソル位置が３次元モデル表示ビューの部品上に存在しない場合には、３次元モデル表示ビューだけを表示部１２に表示させる。
【００４４】
図４は、部品選択ビューの自動表示を説明するための図である。図４に示す符号４０、符号４１及び符号４２は、いずれもノートパソコンの３次元モデル表示ビューを示す。図４に示す符号４０ａ、符号４１ａ及び符号４２ａは、いずれもノートパソコンの３次元モデルを示す。図４に示す符号Ｃは、カーソルを示す。図４に示す符号４３は、部品選択ビューを示す図である。図４に示す符号４３ａは、３次元モデル４０ａ、４１ａ及び４２ａの部分部品を示す。なお、図４に示す例では、３次元モデル表示ビュー４０、３次元モデル表示ビュー４１、３次元モデル表示ビュー４２の順に画面が遷移する場合を想定する。
【００４５】
図４に示す３次元モデル表示ビュー４０が表示されている段階では、カーソルＣが３次元モデル表示ビュー４０のノートパソコン４０ａ上になく、カーソルＣが空白部分に載置されている。ここから、３次元モデル表示ビュー４１に示す位置までカーソルＣが移動されると、３次元モデル表示ビュー４２に示すノートパソコン４２ａの部分部品４３ａ上にカーソルＣが載置される。そして、表示制御部１５ｃは、３次元モデル表示ビュー４２に部品選択ビュー４３を重ね表示させる。その上で、表示制御部１５ｃは、３次元モデルビュー４２上でカーソルＣが載置された部分部品４３ａの位置と、部品選択ビュー４３の表示枠の中心位置とが重なるように３次元モデル表示ビュー４２及び部品選択ビュー４３を重ね表示させる。このとき、部分部品４３ａを包含する包含球が部品選択ビュー４３の表示枠に最大限投影された時の拡大率が部分部品４３ａの拡大率として拡大率決定部１５ｂによって決定される。そして、表示制御部１５ｃは、記憶部１３に記憶されたＣＡＤデータ１３ａを用いて、部分部品４３ａ及びその周辺の部分の画像を拡大率決定部１５ｂによって決定された拡大率で拡大し、その拡大画像が部品選択ビュー４３からはみ出る部分を切取り表示させる。
【００４６】
このように、カーソル位置が３次元モデル表示ビューの部品上に存在する場合に３次元モデル表示ビュー及び部品選択ビューを重ね表示させることで、３次元モデル表示ビューの部品上にカーソルを載置するだけで部品選択ビューを自動表示できる。また、カーソル位置が３次元モデル表示ビューの部品上に存在しない場合に３次元モデル表示ビューを単独表示させることで、３次元モデル表示ビュー上の空白部分にカーソルを載置するだけで部品選択ビューを非表示とすることができる。
【００４７】
（２）部品選択ビューの位置合わせ表示
続いて、表示制御部１５ｃによる部品選択ビューの位置合わせ表示について説明する。表示制御部１５ｃは、３次元モデルビュー上でカーソルが載置された部分部品の位置と、部品選択ビューの表示枠の中心位置とが重なるように３次元モデル表示ビュー及び部品選択ビューを重ね表示させる。
【００４８】
図５Ａ及び図５Ｂは、部品選択ビューの位置合わせ表示を説明するための図である。図５Ａに示す符号５０は、図３に示した部分部品３２の部品選択ビューを示す。図５Ａに示す符号５０ａは、部品選択ビュー５０の中心位置を示す。図５Ｂに示す符号５１は、図３に示した部分部品３３の部品選択ビューを示す。図５Ｂに示す符号５１ａは、部品選択ビュー５１の中心位置を示す。図５Ａ及び図５Ｂに示す符号Ｃは、カーソルである。
【００４９】
図３に示した３次元モデル表示ビュー３０の部分部品３２上にカーソルＣが載置されると、表示制御部１５ｃは、３次元モデル表示ビュー３０に部品選択ビュー５０を重ね表示させる。その上で、表示制御部１５ｃは、部品選択ビュー５０の表示枠の中心位置５０ａがカーソルＣの載置箇所と一致するように部品選択ビュー５０の表示位置を調節する。また、図３に示した３次元モデル表示ビュー３０の部分部品３３上にカーソルＣが載置されると、表示制御部１５ｃは、３次元モデル表示ビュー３０に部品選択ビュー５１を重ね表示させる。その上で、表示制御部１５ｃは、部品選択ビュー５１の表示枠の中心位置５１ａがカーソルＣの載置箇所と一致するように部品選択ビュー５１の表示位置を調節する。
【００５０】
これによって、操作者は、３次元モデル表示ビューよりも大きいスケールでカーソル指示部品が表示される部品選択ビュー上で部品選択を実行でき、微小部品の選択操作をより簡単に行うことができる。
【００５１】
また、部分部品３２は、３次元モデル表示ビュー３０上で表示されるサイズが部分部品３３よりも大きいので、部分部品３３よりも拡大率が抑制される。一方、部分部品３３は、３次元モデル表示ビュー３０上で表示されるサイズが部分部品３２よりも小さいので、部分部品３３よりも拡大率が強化される。
【００５２】
（３）部品選択ビューの視点方向自動調節
次に、表示制御部１５ｃによる部品選択ビューの視点方向自動調節について説明する。表示制御部１５ｃは、３次元モデル表示ビュー上でカーソル情報取得部１５ａによって取得されたカーソル位置が指す部品の正面方向から所定の角度を傾けた方向に部品に対する視点方向を変更した上で部品選択ビューを表示させる。
【００５３】
図６は、部品選択ビューの視点方向自動調節を説明するための図である。図６に示す符号６０は、視点方向調節前の部品選択ビューを示す。図６に示す符号６０ａは、視点方向調節前の部分部品を指す。図６に示す符号６１は、視点方向調節後の部品選択ビューを示す。図６に示す符号６１ａは、視点方向調節後の部分部品を示す。なお、図６に示す符号Ｃは、カーソルを示す。
【００５４】
図６に示すように、表示制御部１５ｃは、部品選択ビュー６０に含まれる部分部品６０ａの正面方向から所定の角度αに傾けて部品選択ビュー６１に示す部分部品６１ａのように視点方向を調節する。ここで、部分部品６０の正面方向から右斜め４５度に傾けた方向に変更した場合には、部分部品６１の正面方向及び側面方向のいずれも俯瞰できるようになる。このため、画面の手前に表示される部分の表示体積が画面の奥側の表示体積よりも大きく、部品が窪んでいる場合などでも、画面の奥側まで部分部品を俯瞰できる。
【００５５】
なお、ここでは、視点方向を右斜め方向に傾ける場合を説明したが、視点方向を左斜め方向に傾ける調節を行ってもよい。また、視点方向を正面方向から傾ける角度αは、必ずしも４５度である必要はない。例えば、正面方向から部分部品を閲覧したい場合には、角度αをゼロに設定できる。また、側面方向から部分部品を閲覧したい場合には、角度αを９０度に設定できる。
【００５６】
さらに、表示制御部１５ｃでは、３次元モデル表示ビューとは独立して部品選択ビューの視点方向を変更する。ここで、３次元モデル表示ビューの視点方向を変更したくないという要望は操作者の間で根強い。このため、３次元モデル表示ビューの視点方向を変更することなく、付属画像である部品選択ビューの視点方向を変更できるのは微小部品の操作利便性にかかわらず、閲覧利便性の面からも効果が大きい。
【００５７】
［処理の流れ］
図７は、実施例２に係る表示制御処理について説明する。図７は、実施例２に係る表示制御処理の手順を示すフローチャートである。この表示制御処理は、操作者によってマウスを移動させる操作がなされた場合に起動する処理である。
【００５８】
図７に示すように、カーソル情報取得部１５ａは、マウス操作量からカーソル移動量を算出する（ステップＳ１０１）。これを説明すると、カーソル情報取得部１５ａは、カーソル移動量の算出時にチェックする記憶部１３の参照領域にカーソル移動量算出用データ１３ａがセットされている場合には、重ね表示用のカーソル移動量を算出する。なお、カーソル移動量算出用データ１３ａがセットされている場合には、カーソル情報取得部１５ａは、単独表示用のカーソル移動量を算出する。
【００５９】
続いて、カーソル情報取得部１５ａは、このようにして算出したカーソル移動量およびマウスの移動軌跡にしたがって３次元モデル表示ビュー上でカーソルを移動させる（ステップＳ１０２）。そして、移動後のカーソル位置が３次元モデル表示ビューの部品上に存在する場合（ステップＳ１０３肯定）には、表示制御部１５ｃは、部品選択ビューが表示中であるか否かを判定する（ステップＳ１０４）。
【００６０】
このとき、部品選択ビューが表示中でない場合（ステップＳ１０４否定）には、表示制御部１５ｃは、３次元モデル表示ビューにカーソル指示部品を含む部品選択ビューを重ねて表示部１２に表示させる（ステップＳ１０５）。なお、部品選択ビューが表示中でない場合（ステップＳ１０４肯定）には、そのままステップＳ１０６へ移行する。
【００６１】
その後、表示制御部１５ｃは、部品選択ビューの表示枠の中心位置がカーソルの載置箇所と一致するように部品選択ビューの表示位置を調節する（ステップＳ１０６）。そして、表示制御部１５ｃは、カーソルが指し示す部品が前回の部品から変化したか否かを判定する（ステップＳ１０７）。なお、前回にカーソルが部品を指していなくとも、今回新たに部品選択ビューが表示された場合には、カーソルが指し示す部品が前回の部品から変化したものと判定される。
【００６２】
ここで、前回の部品から変化した場合（ステップＳ１０７肯定）には、拡大率決定部１５ｃは、カーソル指示部品の大きさと、部品選択ビューの表示枠の大きさとからカーソル位置が指す部品の拡大率を決定する（ステップＳ１０８）。そして、表示制御部１５ｃは、カーソル指示部品及びその周辺の部分の画像を拡大率決定部１５ｂによって決定された拡大率で拡大し、その拡大画像が部品選択ビュー４３からはみ出る部分を切取り表示させる（ステップＳ１０９）。
【００６３】
その後、表示制御部１５ｃは、カーソル情報取得部１５ａがカーソル移動量の算出時にチェックする記憶部１３の参照領域にカーソル移動量算出用データ１３ａをセットする（ステップＳ１１０）。そして、表示制御部１５ｃは、カーソル指示部品の正面方向から所定の角度を傾けた方向に部品選択ビューの視点方向を調節し（ステップＳ１１１）、処理を終了する。
【００６４】
一方、移動後のカーソル位置が３次元モデル表示ビューの部品上に存在しない場合（ステップＳ１０３否定）には、表示制御部１５ｃは、部品選択ビューが表示中であるか否かを判定する（ステップＳ１１２）。なお、部品選択ビューが表示中ではない場合（ステップＳ１１２否定）には、そのまま処理を終了する。
【００６５】
このとき、部品選択ビューが表示中である場合（ステップＳ１１２肯定）には、表示制御部１５ｃは、３次元モデル表示ビューに重ね表示していた部品選択ビューを閉じる（ステップＳ１１３）。そして、表示制御部１５ｃは、カーソル情報取得部１５ａがカーソル移動量の算出時にチェックする記憶部１３の参照領域からカーソル移動量算出用データ１３ａをリセットし（ステップＳ１１４）、処理を終了する。
【００６６】
［実施例２の効果］
上述してきたように、本実施例に係るＣＡＤ装置１０によれば、３次元モデル表示ビューに重ね表示させる部品選択ビューの表示枠に部品が埋まるように部品の拡大率を変化させる。つまり、ＣＡＤ装置１０では、部品が大きいほど拡大率を小さくし、また、部品が小さいほど拡大率を大きくする。このため、ＣＡＤ装置１０では、部品のスケールに適合した拡大率で拡大された部品選択ビューを３次元モデル表示ビューに重ね表示できる。それゆえ、ＣＡＤ装置１０では、部品選択ビューに含まれる微小部品がカーソル指定に耐え得る大きさまで操作者が手動で拡大率を変更する手間を不要化できる。したがって、本実施例に係るＣＡＤ装置１０によれば、微小部品の選択操作を簡単に行うことが可能である。
【００６７】
また、本実施例に係るＣＡＤ装置１０では、３次元モデル表示ビュー上でカーソル指示部品の正面方向から所定の角度を傾けた方向に部品に対する視点方向を変更した上で部品選択ビューを表示させる。このため、操作者は、部品の正面方向及び側面方向のいずれも俯瞰できるようになる。したがって、本実施例に係るＣＡＤ装置１０によれば、画面の手前に表示される部分の表示体積が画面の奥側の部分の表示体積よりも大きく、部品が窪んでいる場合などでも、画面の奥側まで部品を俯瞰することが可能である。
【００６８】
さらに、本実施例に係るＣＡＤ装置１０では、３次元モデル表示ビュー上でカーソル位置が指す部品の位置と、部品選択ビューの表示枠の中心位置とが重なるように３次元モデル表示ビュー及び部品選択ビューを重ね表示させる。したがって、本実施例に係るＣＡＤ装置１０によれば、操作者は、３次元モデル表示ビューよりも大きいスケールでカーソル指示部品が表示される部品選択ビュー上で部品選択を実行でき、微小部品の選択操作をより簡単に行うことが可能である。
【００６９】
また、本実施例に係るＣＡＤ装置１０では、カーソル位置が３次元モデル表示ビューの部品上に存在する場合には、３次元モデル表示ビューにカーソル指示部品を含む部品選択ビューを重ねて表示部１２に表示させる。また、本実施例に係るＣＡＤ装置１０では、カーソル位置が３次元モデル表示ビューの部品上に存在しない場合には、３次元モデル表示ビューだけを表示部１２に表示させる。したがって、本実施例に係るＣＡＤ装置１０によれば、３次元モデル表示ビューの部品上にカーソルを載置するだけで部品選択ビューを自動表示したり、３次元モデル表示ビュー上の空白部分にカーソルを載置するだけで部品選択ビューを非表示とすることができる。
【００７０】
さらに、本実施例に係るＣＡＤ装置１０では、部品選択ビューが３次元モデル表示ビューに重ね表示されている場合には、部品選択ビューが重ね表示されていない場合に比較してカーソルの移動量を小さくする。したがって、本実施例に係るＣＡＤ装置１０によれば、操作者がマウス操作量から予測するカーソル移動量と、実際のカーソル移動量との間に生じるズレを低減でき、マウス操作上の違和感が生じることを防止できる。
【実施例３】
【００７１】
さて、これまで開示の装置に関する実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下では、本発明に含まれる他の実施例を説明する。
【００７２】
［応用例］
例えば、上記の実施例２では、図３〜図６で部品選択用ビューの表示枠の形状を円とした場合を例示したが、開示の装置はこれに限定されない。例えば、開示の装置は、楕円、多角形などの任意の図形を部品選択用ビューの表示枠として使用できる。さらに、開示の装置は、部品選択ビューの表示枠の大きさも任意に設定できる。また、開示の装置では、１種類の表示枠を固定して使用するだけでなく、同種類の部品を部品選択ビューに表示させる場合には同じ形状の表示枠を使用し、異種類の部品を部品選択ビューに表示させる場合には異なる形状の表示枠を使用することもできる。
【００７３】
また、上記の実施例２では、１つのカーソル指示部品が部品選択ビューの表示枠にぴったり埋めるように拡大率を決定する場合を説明したが、開示の装置はこれに限定されない。例えば、開示の装置では、所定のサイズよりも小さい部品がカーソル指示部品となった場合には、その部品を含む組み立て部品、いわゆるアセンブリをカーソル指示部品として拡大率を決定するようにしてもよい。さらに、開示の装置では、上記のアセンブリをカーソル指示部品とするアセンブリモードと、１つの部品をカーソル指示部品とする通常モードとを操作者に選択させるようにしてもよい。
【００７４】
［適用例］
また、図示した各装置の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、カーソル情報取得部１５ａ、拡大率決定部１５ｂ、又は表示制御部１５ｃの全部または一部の機能をＣＡＤ装置１０の外部装置としてネットワーク経由で接続するようにしてもよい。そして、ＣＡＤ装置１０のＣＡＤシステム１５が外部装置を呼び出すことにより、部品選択補助機能を発揮することとしてもよい。また、カーソル情報取得部１５ａ、拡大率決定部１５ｂ、又は表示制御部１５ｃの一部を別の装置がそれぞれ有し、ネットワーク接続されて協働することで、上記のＣＡＤ装置１０の機能を実現するようにしてもよい。
【００７５】
［部品選択プログラム］
また、上記の実施例で説明した各種の処理は、予め用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。そこで、以下では、図８を用いて、上記の実施例と同様の機能を有する部品選択プログラムを実行するコンピュータの一例について説明する。なお、図８は、実施例３に係る部品選択プログラムを実行するコンピュータの一例について説明するための図である。
【００７６】
図８に示すように、実施例３におけるコンピュータ１００は、操作部１１０ａと、マイク１１０ｂと、スピーカ１１０ｃと、ディスプレイ１２０と、通信部１３０とを有する。さらに、このコンピュータ１００は、ＣＰＵ１５０と、ＲＯＭ１６０と、ＨＤＤ（Hard  Disk  Drive）１７０と、ＲＡＭ（Random  Access  Memory）１８０と有する。これら１１０〜１８０の各部はバス１４０を介して接続される。
【００７７】
ＲＯＭ１６０には、上記の実施例２で示したカーソル情報取得部１５ａと、拡大率決定部１５ｂと、表示制御部１５ｃとを含むＣＡＤシステム１５と同様の機能を発揮する制御プログラムが予め記憶される。つまり、ＲＯＭ１６０には、図８に示すように、カーソル情報取得プログラム１６０ａと、拡大率決定プログラム１６０ｂと、表示制御プログラム１６０ｃとを含むＣＡＤプログラム１６１が記憶される。なお、これらのプログラム１６０ａ〜１６０ｃについては、図２に示したＣＡＤ装置１０の各構成要素と同様、適宜統合又は分離しても良い。
【００７８】
そして、ＣＰＵ１５０が、これらのプログラム１６０ａ〜１６０ｃを含むＣＡＤプログラム１６１をＲＯＭ１６０から読み出して実行する。これによって、ＣＰＵ１５０は、図８に示すように、各プログラム１６０ａ〜１６０ｃを含むＣＡＤプログラム１６１については、カーソル情報取得プロセス１５０ａ及び拡大率決定プロセス１５０ｂを含むＣＡＤシステム１５１として機能するようになる。このＣＡＤシステム１５１は、表示制御プロセス１５０ｃを含む。なお、各プロセス１５０ａ〜１５０ｃは、図２に示した、カーソル情報取得部１５ａと、拡大率決定部１５ｂと、表示制御部１５ｃとにそれぞれ対応する。
【００７９】
そして、ＨＤＤ１７０には、ＣＡＤデータ１７０ａと、カーソル移動量算出用データ１７０ｂとが設けられる。なお、これらＣＡＤデータ１７０ａ及びカーソル移動量算出用データ１７０ｂは、図２に示したＣＡＤデータ１３ａ及びカーソル移動量算出用データ１３ｂに対応する。
【００８０】
そして、ＣＰＵ１５０は、ＣＡＤデータ１７０ａ及びカーソル移動量算出用データ１７０ｂを読み出してＲＡＭ１８０に格納する。続いて、ＣＰＵ１５０は、ＣＡＤデータ１７０ａを用いて、部品選択補助機能を実現する。さらに、ＣＰＵ１５０は、ＲＡＭ１８０に格納されたＣＡＤデータ１８０ａを用いて、拡大率データ１８０ｃを生成し、生成した拡大率データ１８０ｃをＲＡＭ１８０に格納する。その上で、ＣＰＵ１５０は、カーソル移動量算出用データ１８０ｂと、拡大率データ１８０ｃとを用いて、カーソル移動量調節機能を実現する。
【００８１】
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
【００８２】
（付記１）画面上に表示されるカーソル位置を取得するカーソル位置取得部と、
複数の部品を含む３次元モデルが表示される３次元モデル画像上で前記カーソル位置取得部によって取得されたカーソル位置が指す部品の大きさと、該３次元モデル画像に重ね表示させる拡大画像の表示枠の大きさとに基づき、前記カーソル位置が指す部品の拡大率を決定する拡大率決定部と、
前記部品を含む前記拡大率決定部によって決定された拡大率で拡大した拡大画像を前記３次元モデル画像に重ね表示させる表示制御部と
を有することを特徴とする部品選択装置。
【００８３】
（付記２）前記表示制御部は、前記３次元モデル画像上で前記カーソル位置取得部によって取得されたカーソル位置が指す部品の正面方向から所定の角度を傾けた方向に前記部品に対する視点方向を変更した上で前記拡大画像を表示させることを特徴とする付記１に記載の部品選択装置。
【００８４】
（付記３）前記表示制御部は、前記３次元モデル画像上で前記カーソル位置取得部によって取得されたカーソル位置が指す部品の位置と、前記拡大画像の表示枠の中心位置とが重なるように前記３次元モデル画像及び前記拡大画像を重ね表示させることを特徴とする付記１または２に記載の部品選択装置。
【００８５】
（付記４）前記表示制御部は、前記カーソル位置取得部によって取得されたカーソル位置が前記３次元モデル画像上の部品を指す場合には、前記拡大画像を前記３次元モデル画像に重ね表示させ、前記３次元モデル画像上の部品を指さない場合には、前記３次元モデル画像を単独表示させることを特徴とする付記１、２または３に記載の部品選択装置。
【００８６】
（付記５）前記表示制御部によって前記拡大画像が前記３次元モデル画像に重ね表示されている場合には、前記拡大画像が重ね表示されていない場合に比較してカーソルの移動量を小さくするカーソル移動量制御部をさらに有することを特徴とする付記４に記載の部品選択装置。
【００８７】
（付記６）画面上に表示されるカーソル位置を取得するカーソル位置取得部と、
複数の部品を含む３次元モデルが表示される３次元モデル画像上で前記カーソル位置取得部によって取得されたカーソル位置が指す部品の大きさと、該３次元モデル画像に重ね表示させる拡大画像の表示枠の大きさとに基づき、前記カーソル位置が指す部品の拡大率を決定する拡大率決定部と、
前記部品を含む前記拡大率決定部によって決定された拡大率で拡大した拡大画像を前記３次元モデル画像に重ね表示させる表示制御部と
を有することを特徴とするＣＡＤ装置。
【００８８】
（付記７）画面上に表示されるカーソル位置を取得するカーソル位置取得工程と、
複数の部品を含む３次元モデルが表示される３次元モデル画像上で前記カーソル位置取得工程によって取得されたカーソル位置が指す部品の大きさと、該３次元モデル画像に重ね表示させる拡大画像の表示枠の大きさとに基づき、前記カーソル位置が指す部品の拡大率を決定する拡大率決定工程と、
前記部品を含む前記拡大率決定工程によって決定された拡大率で拡大した拡大画像を前記３次元モデル画像に重ね表示させる表示制御工程と
を含んだことを特徴とする部品選択方法。
【００８９】
（付記８）画面上に表示されるカーソル位置を取得するカーソル位置取得手順と、
複数の部品を含む３次元モデルが表示される３次元モデル画像上で前記カーソル位置取得手順によって取得されたカーソル位置が指す部品の大きさと、該３次元モデル画像に重ね表示させる拡大画像の表示枠の大きさとに基づき、前記カーソル位置が指す部品の拡大率を決定する拡大率決定手順と、
前記部品を含む前記拡大率決定手順によって決定された拡大率で拡大した拡大画像を前記３次元モデル画像に重ね表示させる表示制御手順と
をコンピュータに実行させることを特徴とする部品選択プログラム。
【符号の説明】
【００９０】
１    部品選択装置
２    カーソル位置取得部
３    拡大率決定部
４    表示制御部
１０    ＣＡＤ装置
１１    入力部
１２    表示部
１３    記憶部
１３ａ  ＣＡＤデータ
１３ｂ  カーソル移動量算出用データ
１３ｃ  拡大率データ
１４    制御部
１５    ＣＡＤシステム
１５ａ  カーソル情報取得部
１５ｂ  拡大率決定部
１５ｃ  表示制御部
【図１】
0005446888.tif 000002
【図２】
0005446888.tif 000003
【図３】
0005446888.tif 000004
【図４】
0005446888.tif 000005
【図５Ａ】
0005446888.tif 000006
【図５Ｂ】
0005446888.tif 000007
【図６】
0005446888.tif 000008
【図７】
0005446888.tif 000009
【図８】
0005446888.tif 000010