(57)【要約】【課題】情報表示領域に制約を与えることなく、且つ特別なデバイスを必要とせずに、コマンド入力を容易に行う。【解決手段】表示画面７０上に仮想線ＶＬを設定し、表示画面７０を複数の要素Ａ〜Ｉに分割し、各要素に対してコマンドを割り当てて、各要素とコマンドとの対応関係を機能テーブルとして記憶しておく。ユーザのマウス１６の操作により表示画面７０の点Ｐα１が指定された場合は、機能テーブルを参照して、Ａ〜Ｉの９つの要素のうち要素Ａに対応するコマンドを選択して実行する。要素Ａに対応するコマンドが、当該要素Ａの領域内において、仮想線ＶＬ（Ｘ）上の点Ｐ０１の制御量がＤ０１であり、仮想線ＶＬ（Ｘ）からの距離に応じて制御量を線形変化させて、仮想線ＶＬ（Ｘ）から距離Ｌ１の位置にある点ＰＬ１の制御量をＤＬ１にするような量的制御コマンドである場合には、点Ｐ０１から点Ｐα１までの距離に応じた制御量でコマンドを実行する。【選択図】  図４
2004362113.tif 000002
【特許請求の範囲】
【請求項１】
表示画面上に設定された仮想線を基準とした前記表示画面上の位置と、所定の情報処理を行うコマンドとを対応付ける対応情報を予め記憶しておき、
前記表示画面上の位置が指定された場合に、当該指定された位置と前記対応情報において対応付けられているコマンドを実行する、
ことを特徴とするコマンド実行方法。
【請求項２】
記憶手段と、表示画面に情報を表示する表示手段と、前記表示画面上の位置を指定するための位置指定手段と、を備えたコンピュータにコマンドを実行させるためのコマンド実行プログラムであって、
表示画面上に設定された仮想線を基準とした前記表示画面上の位置と、所定の情報処理を行うコマンドとを対応付ける対応情報が前記記憶手段に予め記憶されている状態で、
前記位置指定手段により前記表示画面上の位置が指定された場合に、当該指定された位置と前記対応情報において対応付けられているコマンドを実行させる、
ことを特徴とするコマンド実行プログラム。
【請求項３】
表示画面に情報を表示する表示手段と、
前記表示画面上の位置を指定するための位置指定手段と、
前記表示画面上に設定された仮想線を基準とした前記表示画面上の位置と、所定の情報処理を行うコマンドとを対応付ける対応情報を記憶する記憶手段と、
前記位置指定手段により前記表示画面上の位置が指定された場合に、当該指定された位置と、前記記憶手段に記憶されている前記対応情報において対応付けられているコマンドを実行するコマンド実行手段と、
を備えた情報処理装置。
【請求項４】
前記表示画面上の位置が、前記仮想線を基準として、前記仮想線により区切られた面である面的要素、前記仮想線上である線的要素、及び複数の前記仮想線の交点である点的要素に区分されている、
ことを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記記憶手段に、前記仮想線の設定パターンが互いに異なる複数のモデルの前記対応情報が記憶されており、
前記モデルの指定情報が入力され、当該入力された指定情報に基づいて前記モデルを選択する選択手段を更に備え、
前記コマンド実行手段が、前記選択手段により選択したモデルの前記対応情報に基づいて、実行するコマンドを選択する、
ことを特徴とする請求項３又は請求項４に記載の情報処理装置。
【請求項６】
前記表示画面上に前記仮想線を設定する設定手段と、
前記設定手段により表示画面上に設定した前記仮想線を基準とした前記表示画面上の各位置に対して、コマンドを割り当てるコマンド割当手段と、
前記設定手段により表示画面上に設定した前記仮想線を基準とした前記表示画面上の位置と、前記割当手段により割当てたコマンドとを対応付けた前記対応情報を生成する対応情報生成手段と、を更に備え、
前記対応情報生成手段により生成された前記対応情報が前記記憶手段に記憶される、
ことを特徴とする請求項３乃至請求項５の何れか１項に記載の情報処理装置。
【請求項７】
前記コマンドが、前記位置指定手段により指定された位置の前記仮想線又は前記仮想線の交点からの距離に応じて、実行時の制御量を調整可能である、
ことを特徴とする請求項３乃至請求項６の何れか１項に情報処理装置。
【請求項８】
前記コマンドが、前記表示画面に仮想空間を表す画像の表示してウォークスルー機能を提供する際に、表視点を上下左右前後に移動させる、投影スクリーンを遠近させる、視点を上下左右に回転させる、視点を正面に戻す、の何れかを指示するコマンドである、
ことを特徴とする請求項３乃至請求項７の何れか１項に記載の情報処理装置。
【請求項９】
前記コマンドが、前記位置指定手段により指定された位置の前記仮想線又は前記仮想線の交点からの距離に応じて、視点を移動させる距離、投影スクリーンを遠近させる距離、視点を回転させる角度、移動させる速度、遠近させる速度、及び回転させる速度の何れかを調整可能である、
ことを特徴とする請求項８に記載の情報処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、情報処理装置、コマンド実行方法、及びコマンド実行プログラムに係わり、特に、表示画面に情報を表示する表示手段と、前記表示画面上の位置を指定するための位置指定手段とを備えた情報処理装置、コマンド実行方法、及びコマンド実行プログラムに関する。
【０００２】
【従来の技術】
一般に、情報処理装置では、コマンドと対応付けられた操作ボタンや、複数の操作ボタンを並べて配置した所謂ツールバーをディスプレイの表示画面上に配置し、マウスなどのポインティングデバイスの操作によって操作ボタンが選択されることによってコマンド入力が行われている。このように操作ボタンをコマンド入力に用いる場合、本来表示したい情報の表示領域が操作ボタンの表示により制約を受けてしまう。また、制御量を変更可能なコマンドの場合、当該コマンドに対応する操作ボタンの選択とその制御量の指定との少なくとも２回の操作が必要とされるので、ユーザの操作が煩雑になることがある。
【０００３】
特に、仮想空間内をユーザが歩き回っているかのようにディスプレイの表示画面を切り替えるウォークスルー機能を提供する場合、仮想空間内でのユーザの視点位置を上下左右前後に移動したり、左右上下に振ったり（所謂パン）、投影スクリーンを前後に移動する機能と共に、より広い仮想空間の表示領域が求められる。しかしながら、図１３に示すように、視点を上下左右前後に移動させるための操作ボタン３００Ａや、視点を左右上下に振ったりするための操作ボタン３００Ｂや、投影スクリーンを前後に移動させるための操作ボタン３００Ｃを、それぞれの方向毎に設けられるための表示スペース３０２を確保する必要があり、この表示スペース３０２の分だけ仮想空間を表示するための表示画面３０４が狭くなってしまう。また、視点の位置を移動させるためには、ユーザは、表示スペース３０２内に設けられた入力欄３０６に移動量を入力してから、移動させたい方向に対応した操作ボタン３００Ａを選択しなければならず、仮想空間内を自由に歩き回る場合は視点位置の移動が頻繁に行われるため、ユーザの操作が大変面倒なものになってしまう。
【０００４】
このため、従来より、仮想空間内をウォークスルーする際に、入力操作を円滑に且つ直感的に分かり易く行うことができる専用の三次元座標入力装置がある（例えば、特許文献１）。
【０００５】
【特許文献１】
特開平１０−１４９２５６号公報
【０００６】
【発明が解決しようとする課題】
しかしながら、従来技術では、上記の三次元座標入力装置を情報処理装置の新規デバイスとして接続して用いなければならず、情報処理装置が通常備えているデバイスのみでコマンド入力を行うことはできなかった。
【０００７】
本発明は上記問題点を解消するためになされたもので、情報表示領域に制約を与えることなく、且つ特別なデバイスを必要とせずに、コマンド入力を容易に行うことができる情報処理装置、コマンド実行方法、及びコマンド実行プログラムを提供することを目的とする。
【０００８】
【課題を解決するための手段】
上記目的を達成するために、請求項１に記載のコマンド実行方法は、表示画面上に設定された仮想線を基準とした前記表示画面上の位置と、所定の情報処理を行うコマンドとを対応付ける対応情報を予め記憶しておき、前記表示画面上の位置が指定された場合に、当該指定された位置と前記対応情報において対応付けられているコマンドを実行する、ことを特徴としている。
【０００９】
請求項１に記載のコマンド実行方法によれば、仮想線を基準とした表示画面上の位置とコマンドとを対応付ける対応情報が予め記憶されている。すなわち、対応情報により、仮想線を基準とした表示画面上の位置とコマンドとが予め対応付けられている。表示画面上の位置が指定されたら、この指定された位置と対応付けられているコマンドが自動的に選択されて実行される。
【００１０】
これにより、ユーザは、表示画面上の位置を指定するだけで、所望のコマンドを実行させることができるので、コマンド入力操作が容易である。また、単に表示画面上の位置を単に指定できればよく、この位置指定は、マウス、タッチパネルディスプレイ、タブレットなどの汎用のポインティングデバイスを位置指定手段として使用することで行うことができる。したがって、従来技術のように特別なデバイスを必要とすることもない。また、仮想線により表示画面上の位置を定義するので、たとえこの仮想線を表示画面上に表示しても、線であるため、従来の操作ボタンのように面積を必要とせず、情報表示領域に制約を与えることもない。
【００１１】
上記のコマンド実行方法は、以下のようなコマンド実行プログラムをコンピュータに実行させることで容易に実現可能である。すなわち、請求項２に記載されているように、記憶手段と、表示画面に情報を表示する表示手段と、前記表示画面上の位置を指定するための位置指定手段と、を備えたコンピュータにコマンドを実行させるためのコマンド実行プログラムであって、表示画面上に設定された仮想線を基準とした前記表示画面上の位置と、所定の情報処理を行うコマンドとを対応付ける対応情報が前記記憶手段に予め記憶されている状態で、前記位置指定手段により前記表示画面上の位置が指定された場合に、当該指定された位置と前記対応情報において対応付けられているコマンドを実行させる、ことを特徴とするコマンド実行プログラムをコンピュータに実行させればよい。
【００１２】
また、上記のコマンド実行方法は、以下のような情報処理装置により容易に実現可能である。すなわち、この情報処理装置は、請求項３に記載されているように、表示画面に情報を表示する表示手段と、前記表示画面上の位置を指定するための位置指定手段と、前記表示画面上に設定された仮想線を基準とした前記表示画面上の位置と、所定の情報処理を行うコマンドとを対応付ける対応情報を記憶する記憶手段と、前記位置指定手段により前記表示画面上の位置が指定された場合に、当該指定された位置と、前記記憶手段に記憶されている前記対応情報において対応付けられているコマンドを実行するコマンド実行手段と、を備えればよい。
【００１３】
上記の情報処理装置においては、請求項４に記載されているように、前記表示画面上の位置が、前記仮想線を基準として、前記仮想線により区切られた面である面的要素、前記仮想線上である線的要素、及び複数の前記仮想線の交点である点的要素に区分するとよい。これにより、少ない仮想線数でも多数のコマンドを表示画面上の位置に対応付けることができ、表示画面上に仮想線を表示したときの影響をより小さくすることができる。
【００１４】
また、上記の情報処理装置においては、請求項５に記載されているように、前記記憶手段が、前記仮想線の設定パターンが互いに異なる複数のモデルの前記対応情報を記憶しており、前記モデルの指定情報が入力され、当該入力された指定情報に基づいて前記モデルを選択する選択手段を更に備え、前記コマンド実行手段が、前記選択手段により選択したモデルの前記対応情報に基づいて、実行するコマンドを選択するとよい。これにより、実現したい機能に応じて、ユーザが操作し易いモデルを選択することができる。
【００１５】
また、上記の情報処理装置においては、請求項６に記載されているように、前記表示画面上に前記仮想線を設定する設定手段と、前記設定手段により表示画面上に設定した前記仮想線を基準とした前記表示画面上の各位置に対して、コマンドを割り当てるコマンド割当手段と、前記設定手段により表示画面上に設定した前記仮想線を基準とした前記表示画面上の位置と、前記割当手段により割当てたコマンドとを対応付けた前記対応情報を生成する対応情報生成手段と、を更に備え、前記対応情報生成手段により生成された前記対応情報が前記記憶手段に記憶されるようにするとよい。これにより、各ユーザが感覚的に操作し易いように任意にモデルを設定することができる。
【００１６】
また、上記の情報処理装置においては、請求項７に記載されているように、前記コマンドが、前記位置指定手段により指定された位置の前記仮想線又は前記仮想線の交点からの距離に応じて、実行時の制御量を調整可能であるようにするとよい。これにより、表示画面上の位置を１回指定するだけで、コマンド入力とその制御量の入力を同時に行うことができ、操作性をより向上させることができる。
【００１７】
また、上記の情報処理装置においては、請求項８に記載されているように、前記コマンドが、前記表示画面に仮想空間を表す画像を表示してウォークスルー機能を提供する際に、表視点を上下左右前後に移動させる、投影スクリーンを遠近させる、視点を上下左右に回転させる、視点を正面に戻す、の何れかを指示するコマンドであるとよい。これによりウォークスルー機能で必要とされた多数の操作ボタンを不要にすることができ、仮想空間の表示領域を従来よりも広くすることができる。
【００１８】
この場合、請求項９に記載されているように、前記コマンドが、前記位置指定手段により指定された位置の前記仮想線又は前記仮想線の交点からの距離に応じて、視点を移動させる距離、投影スクリーンを遠近させる距離、視点を回転させる角度、移動させる速度、遠近させる速度、及び回転させる速度の何れかを調整可能にするとよい。これにより、ユーザは、より少ない操作で仮想空間内を自由に歩き回っているかの如く仮想体験をすることができる。
【００１９】
【発明の実施の形態】
次に、図面を参照して本発明に係る実施形態の１例を詳細に説明する。なお、以下では、情報処理装置として一般的なパーソナルコンピュータ（以下、「ＰＣ」と称す）に本発明を適用した例について説明する。
【００２０】
［全体構成］
図１に本発明が適用されたＰＣ１０を示す。図１に示すように、ＰＣ１０は、表示手段としてのディスプレイ１２と、入力手段としてのキーボード１４と、位置指定手段としてのマウス１６とを付属デバイス（周辺機器）として備えている。また、ＰＣ１０は、ＣＰＵ２０と、ＲＡＭ２２と、ＲＯＭ２４と、ＨＤＤ２６と、ディスプレイ１２、キーボード１４、マウス１６の各々とデータを入出力するためのインタフェース回路（以下、「Ｉ／Ｆ」と称す）２８、３０、３２とを備えている。これらＣＰＵ２０、ＲＡＭ２２、ＲＯＭ２４、ＨＤＤ２６、Ｉ／Ｆ２８、Ｉ／Ｆ３０、及びＩ／Ｆ３２は、バスＢＵＳを介して接続されている。なお、位置指定手段には、マウス１６以外にも、タッチパネルディスプレイ、タブレットなど汎用のポインティングデバイスを用いることができる。
【００２１】
上記のハードウェア構成はＰＣの一般的な構成であるため、以下では詳細な説明は省略し、本発明に係わる部分のみ詳細に説明する。
【００２２】
ＲＯＭ２４には、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）を始めとする当該ＰＣ１０を動作させるための各種プログラムが予め格納されており、特に本発明に係わるものとして、マウス１６により指定された画面上の位置に応じてコマンドを実行するためのプログラム３４が格納されている。なお、プログラム３４は、ＨＤＤ２６に格納することも可能である。
【００２３】
このプログラム３４は、モデル設定処理（後述）を実行させるためのサブプログラム３４Ａと、コマンド実行処理（後述）を実行させるためのサブプログラム３４Ｂとを備えている。なお、サブプログラム３４Ａは、ユーザからの指示入力により実行されるが、サブプログラム３４Ｂについては、ユーザからの指示入力により実行してもよいし、予めサブプログラム３４Ｂを所定の処理を行うアプリケーションプログラムと対応付けておき、該アプリケーションプログラムの起動時や実行時の所定のタイミングでサブプログラム３４Ｂが呼び出されて実行されるようにしてもよい。
【００２４】
ＰＣ１０では、ＣＰＵによりサブプログラム３４Ａ、サブプログラム３４Ｂを実行することにより、上記のハードウェア資源を利用して、以下のような機能が構築されるようになっている。
【００２５】
［機能構成］
図２にＰＣ１０の機能構成を示す。図２に示すように、ＰＣ１０には、サブプログラム３４Ａの実行により、設定手段としてのモデル定義部４０、コマンド割当手段としてのコマンド割当部４２、及び対応情報生成手段としての機能テーブル生成部４４が構築され、サブプログラム３４Ｂの実行により、選択手段としてのモデル選択部５０、及びコマンド実行手段としてのコマンド選択・実行部５２が構築される。
【００２６】
モデル定義部４０は、ユーザの操作によるキーボード１４からの指示入力を受け付け、入力された指示に従って、図３に示すように、モデル毎に、ディスプレイ１２に表示される表示画面７０上に仮想線ＶＬを設定し、仮想線ＶＬを基準として表示画面７０上の位置を定義する。なお、ユーザのマウス１６の操作により指示入力を受けるようにしてもよい。また、図３では仮想線ＶＬを点線で示しており、以降の説明で用いる他の表示画面を示す図もこれに従う。
【００２７】
より詳しくは、モデル定義部４０は、仮想線ＶＬを設定することによって、仮想線ＶＬにより区切られた面である面的要素、仮想線ＶＬ上である線的要素、複数の仮想線ＶＬの交点である点的要素というように、表示画面７０の領域を複数の要素に区分する。
【００２８】
なお、このとき表示画面７０上に設定する仮想線ＶＬの種類（形状、長さ）や本数については、特に限定されるものではない。すなわち、図３の（Ａ）に示す如く長短の仮想線ＶＬが混在していてもよいし、（Ｂ）に示す如く表示画面７０の各辺に平行に複数の仮想線ＶＬを設けてもよいし、（Ｃ）に示す如く表示画面７０の対角線となる仮想線ＶＬを設けてもよい。図３（Ａ）〜（Ｃ）は、直線の仮想線ＶＬを示したが、仮想線は曲線であってもよい。また、所定の図形を描くように仮想線ＶＬを設定してもよく、例えば（Ｄ）に示す如く円を描く仮想線ＶＬを設けたり、（Ｅ）に示す如く矩形を描くように仮想線ＶＬを設けることもできる。
【００２９】
また、ユーザがマウス１６を操作したときの指定誤差を考慮して、仮想線ＶＬを所定の線幅を有する線として扱うことが好ましく、この場合の仮想線ＶＬの線幅を任意に設定可能にしてもよい。このため、本実施の形態では、実際には、図４に一例を示す如く、線的要素及び点的要素についても面積を有する領域となっている。なお、図４では、仮想線ＶＬを点線、その線幅を一点鎖線で示しており、表示画面７０の中央を通り、且つ表示画面７０のＸ方向及びＹ方向に渡る２本の長い仮想線ＶＬ（Ｘ）、ＶＬ（Ｙ）を設定して、Ａ〜Ｄの４つの面的要素、Ｅ〜Ｈの４つの線的要素、Ｉの１つの点的要素の計９つの要素を定義した例である。
【００３０】
また、仮想線ＶＬにより定義可能な全て要素を定義する必要はなく、定義する要素数については、使用したいコマンドの個数に応じて適宜選択することができる。例えば、図４では、面的要素のＣ，Ｄについては定義せずに、定義要素を計７つにしてもよい。
【００３１】
コマンド割当部４２は、ユーザの操作によるキーボード１４からの指示入力を受け付け、入力された指示に従って、モデル定義部４０において定義した領域の各要素に対してコマンドを割り当てるものである。なお、ユーザのマウス１６の操作により指示入力を受けるようにしてもよい。
【００３２】
より詳しくは、コマンド割当部４２では、モデル定義部４０で定義された要素（図４の例では、９つの要素Ａ〜Ｉ）各々に対して、予めＰＣ１０で実行可能に定義されているコマンドを対応付けるが、このとき、次の表１に示すように、点的要素に対しては、ある所定の処理を行うだけの単純コマンドを割り当てるが、面的要素及び線的要素に対しては、単純コマンドと、制御量の調整も可能な量的調整コマンドの何れかを割り当てることができる。
【００３３】
【表１】
2004362113.tif 000003
【００３４】
ここで面的要素に割り当てる量的調整コマンドとは、仮想線ＶＬからの距離に応じて制御量を変化させるものであり、例えば、図４の面的要素である要素Ａの領域内において、仮想線ＶＬ（Ｘ）上の点Ｐ０１の制御量がＤ０１であり、仮想線ＶＬ（Ｘ）からの距離に応じて制御量を線形変化させて、仮想線ＶＬ（Ｘ）から距離Ｌ１の位置にある点ＰＬ１の制御量をＤＬ１にするようなコマンドである。この場合、仮想線ＶＬ（Ｘ）からの距離がα１である点Ｐα１の制御量Ｄα１は、以下の式（１）により決定される。
【００３５】
【数１】
2004362113.tif 000004
【００３６】
また、線的要素に割り当てる量的調整コマンドとは、複数の仮想線ＶＬの交点からの距離に応じて制御量を変化させるものであり、例えば、図４の線的要素である要素Ｇの領域内において、仮想線ＶＬ（Ｘ）及び仮想線ＶＬ（Ｙ）の交点である点Ｐ０２の制御量がＤ０２であり、点Ｐ０２からの距離に応じて制御量を線形変化させて、仮想線ＶＬ（Ｘ）上のＰ０２から距離Ｌ２の位置にある点ＰＬ２の制御量をＤＬ２にするようなコマンドである。この場合、点Ｐ０２からの距離がα２である点Ｐα２の制御量Ｄα２は、以下の式（２）により決定される。
【００３７】
【数２】
2004362113.tif 000005
【００３８】
したがって、量的制御コマンドを割り当てる場合は、上記式（１）、（２）のような制御量を求めるための計算式を定義する必要がある。なお、上記では、制御量が距離に応じて線形変化する（すなわち制御量を求めるための計算式が変数である距離の１次式となる）場合を例に説明したが、本発明はこれに限定されるものではなく非線形変化するようにしてもよい。
【００３９】
機能テーブル生成部４４は、対応情報として、モデル定義部４０において定義した領域の各要素と、コマンド割当部４２により割り当てたコマンドとの対応を示す機能テーブル７２（図２参照）を生成して、例えばＨＤＤ２６の所定領域を記憶手段として用いて、生成した機能テーブル７２を記憶するものである。
【００４０】
より詳しくは、機能テーブル生成部４４では、図５示すように、面的要素、線的要素については、当該要素の名称（該要素を識別するための符号、該要素の境界となる表示画面７０上の座標（始点・終点）、或いはこの座標の記憶位置を示すメモリアドレスなどでもよい）と、当該要素に割り当てたコマンドの名称（コマンド名）及び割り当てたコマンドが量的制御コマンドの場合は制御量を求めるための計算式との対応を表すテーブルデータ７２Ａ、７２Ｂを生成し、点的要素の場合は、当該要素の名称と、当該要素に割り当てたコマンドの名称との対応を表すテーブルデータ７２Ｃを生成して、これら面的要素、線的要素、及び点的要素のテーブルデータ７２Ａ〜Ｃをまとめて当該モデルの機能テーブル７２として記憶する。
【００４１】
モデル選択部５０は、設定済み（機能テーブル７２が記憶済み）のモデルの中から何れか１つを選択し、当該選択したモデルの機能テーブル７２をＨＤＤ２６から読み出すものである。選択するモデルについては、ユーザがキーボード１４を操作して指定するようにしてもよいし、他のアプリケーションプログラムの起動時や実行時にサブプログラム３４Ｂが呼び出されて実行される場合には、当該他のアプリケーションプログラムの機能により指定されるようにしてもよい。
【００４２】
コマンド選択・実行部５２は、ユーザによるマウス１６のクリック操作による位置情報の入力を受け付け、入力された位置情報に基づいて、当該位置情報が示すユーザによる指定位置が、モデル選択部５０で選択したモデルで定義されている要素のうちの何れの要素に該当するのかを判別すると共に、この判別した要素と、当該モデル選択部５０で選択したモデルの機能テーブル７２において対応つけられているコマンドを選択し、当該選択したコマンドを実行するものである。
【００４３】
［作用］
次に本実施の形態の作用として、モデル設定処理及びコマンド実行処理について説明する。
【００４４】
まず、図６を参照して、モデル設定処理を説明する。モデル設定処理では、図６に示すように、まずステップ１００で、ユーザからの領域定義の指示入力を受け付け、入力されたユーザの指示に従って、表示画面７０に仮想線ＶＬが設定されて、表示画面７０が複数の要素に区分される。これによって、当該モデルにおいて、表示画面７０の領域をどのような要素に区分して用いるかが定義されることになる。次のステップ１０２では、定義した複数の要素各々に対して、ユーザからのコマンドを指定する指示入力を受け付け、入力されたユーザの指示に従って、定義した複数の要素各々に対して、コマンドが割り当てられる。そして次のステップ１０４において、ステップ１００で定義した領域の各要素と、ステップ１０２で割り当てたコマンドとの対応を示すテーブルデータが生成されて、ＨＤＤ２６に機能テーブル７２として記憶される。この機能テーブル７２の記憶によりモデル設定処理は終了する。この結果、ＰＣ１０には、例えば図３（Ａ）〜（Ｅ）に示した如く仮想線の設定・領域定義を行って各モデルを設定した場合には、各モデルについて１つずつの計５つの機能テーブル７２が記憶されることになる。
【００４５】
次に、図７を参照して、コマンド実行処理について説明する。コマンド実行処理では、図７に示すように、まずステップ１１０で使用するモデルが選択され、当該モデルの機能テーブル７２がＨＤＤ２６から読み出される。なお、１モデルしか定義されていない場合には、ステップ１１０の処理は省略できる。
【００４６】
その後は、ステップ１１２に進み、ユーザによりマウス１６がクリック操作されて位置が指定されて位置情報が入力されるのを待機する。なお、この位置情報の入力待機時は、前述したコマンド選択・実行部５２の機能により、当該時点で表示画面７０上のマウスポインタが示している位置が指定された場合に、選択・実行されるコマンドを示す補助情報７４（図１０参照）が表示されるようにするとよい。補助情報７４としては、例えば、コマンド名又はコマンド内容（コマンドにより実行される処理の内容）を表すテキスト、コマンドを表す図形などが挙げられる。また、量的制御コマンドの場合は、補助情報７４として、当該位置での制御量を表す数値及び図形の少なくとも一方も表示されるようにするとよい。このような補助情報７４により、ユーザは、当該時点でマウス１６をクリック操作したら、どのようなコマンドを入力することができるのかを把握することができる。このような補助情報７４の表示は、例えば機能テーブル７２に補助情報７４又は補助情報７４へのリンク情報を含ませて記憶しておくことで容易に実現できる。
【００４７】
そして、ユーザによりマウス１６がクリック操作されて、ディスプレイ１２の表示画面７０上の位置が指定されたら、ステップ１１２から次のステップ１１４に進む。ステップ１１４では、選択したモデルで定義されている領域の各要素の中から、指定された位置に該当する要素が判別される。そして次のステップ１１６で、前述のステップ１１０で選択したモデルの機能テーブル７２を参照して、判別した要素に対応つけられているコマンドが選択されて、ステップ１１８で、この選択されたコマンドが実行される。その後は、ユーザ又はＰＣの内部処理により終了指示が入力されるまでは、次のステップ１２０からステップ１１２に戻り、終了指示が入力されたら図７の処理は終了する。
【００４８】
このようなコマンド実行処理により、例えば、図４で示した例において、ユーザが表示画面７０の点Ｐα１上にマウスカーソルがあるときにマウス１６をクリック操作して、点Ｐα１が指定された場合は、Ａ〜Ｉの９つの要素のうち、指定された点Ｐα１は面的要素Ａに該当すると判別されることになる。この場合、機能テーブル７２を参照して面的要素Ａに対応付けられているコマンドが選択されて、実行されることになる。このとき選択されたコマンドが量的制御コマンドの場合には、まず、前述の式（１）で示したような計算式に従った演算により制御量が求められ、当該制御量でコマンドが実行される。
【００４９】
このように、本実施の形態では、モデル設定処理により、表示画面７０上に仮想線ＶＬを設定し、仮想線ＶＬにより表示画面７０を複数の要素に区分して各要素にコマンドを割り当てることで、仮想線ＶＬを基準とした表示画面７０上の位置とコマンドとを任意に対応付けて、その対応関係を機能テーブル７２として予め記憶しておくことができる。
【００５０】
また、コマンド実行処理では、このように記憶された機能テーブル７２を参照して、表示画面７０上の位置が指定されたら、当該指定された位置が該当する要素を判別し、その要素に対応付けられたコマンドを選択して実行する。これにより、指定された位置と対応付けらているコマンドが自動的に選択されて実行されることになり、ユーザは、マウス１６の操作により所望のコマンドが対応付けられている表示画面７０上の位置を指定するだけで、ＰＣ１０に対して所望のコマンドを実行させることができる。
【００５１】
なお、本実施形態では、プログラム３４がサブプログラム３４Ａを含み、ＰＣ１０のユーザがモデル設定を任意に行うことができるようにした場合を例に説明したが、本発明はこれに限定されるものではない。すなわち、プログラム３４には、サブプログラム３４Ａが必ずしも含まれていなくてもよい。例えば、プログラム３４の開発元においてモデル設定処理を行って各種のモデルを設定し、その結果である各モデルの機能テーブル７２とプログラム３４Ｂとをプログラム３４としてパッケージ化して、ＰＣ１０のＲＯＭ２４又はＨＤＤ２６に格納されるようにしてもよい。
【００５２】
［実施例］
次に、ＰＣ１０においてウォークスルー機能を実現する際のコマンド入力に本発明を適用した場合を説明する。なお、以下では、ウォークスルー機能を実現するためにＰＣ１０で実行されるアプリケーションプログラムに、サブプログラム３４Ｂが関連付けられており、該アプリケーションプログラムの起動中にユーザによりマウス１６がクリック操作された場合に、以下のようなモデルが選択されるように指定されて、サブプログラム３４Ｂが呼び出されて実行される場合を例に説明する。
【００５３】
（モデル例）
すなわち、本例で用いるモデルは、図８に示すように、表示画面７０上に、表示画面７０の中央を通り且つ表示画面７０のＸ方向及びＹ方向に渡る２本の長い仮想線ＶＬ（Ｘ１）、ＶＬ（Ｙ１）と、仮想線ＶＬ（Ｙ１）と直交し且つ仮想線ＶＬ（Ｘ）に対して対称に設けられた２本の短い仮想線ＶＬ（Ｘ２）、ＶＬ（Ｘ３）と、仮想線ＶＬ（Ｘ１）と直交し且つ仮想線ＶＬ（Ｙ）に対して対称に設けられた２本の短い仮想線ＶＬ（Ｙ２）、ＶＬ（Ｙ３）の計６本の仮想線ＶＬが設定されており、Ｔ１〜Ｔ１３の１３個の要素により表示画面７０の領域が定義されている。
【００５４】
なお、Ｔ１〜Ｔ４は、仮想線ＶＬ（Ｘ１）、ＶＬ（Ｙ１）により区切られた面である面的要素である。Ｔ５、Ｔ６は、仮想線ＶＬ（Ｙ１）上であり且つ仮想線ＶＬ（Ｘ１）及びＶＬ（Ｙ１）の交点Ｔ９から仮想線ＶＬ（Ｘ２）、ＶＬ（Ｘ３）までを範囲とした線的要素である。Ｔ７、Ｔ８は、仮想線ＶＬ（Ｘ１）上であり且つ仮想線ＶＬ（Ｘ１）及びＶＬ（Ｙ１）の交点Ｔ９から仮想線ＶＬ（Ｙ２）、ＶＬ（Ｙ３）までを範囲とした線的要素である。Ｔ９は、仮想線ＶＬ（Ｘ１）及びＶＬ（Ｙ１）の交点である点的要素である。Ｔ１０、Ｔ１１は、仮想線ＶＬ（Ｙ１）上で且つ仮想線ＶＬ（Ｘ２）、ＶＬ（Ｘ３）から表示画面７０の枠までを範囲とした線的要素である。Ｔ１２、Ｔ１３は、仮想線ＶＬ（Ｘ１）上で且つ仮想線ＶＬ（Ｙ２）、ＶＬ（Ｙ３）から表示画面７０の枠までを範囲とした線的要素である。
【００５５】
これらのＴ１〜Ｔ１３の各要素に対して、以下の表２に示すようにコマンドが予め割り当てられて、各要素とコマンドの対応を表す機能テーブル７２がＨＤＤ２６（又はＲＯＭ２４）に記憶されている。
【００５６】
【表２】
2004362113.tif 000006
【００５７】
なお、本例では、量的制御コマンドにより、移動させる距離、遠近させる距離、及び回転させる角度を調整可能なモデルを例に説明するが、移動、遠近、又は回転させるときの速度を調整可能にすることもできる。
【００５８】
（ウォークスルー制御処理）
ＰＣ１０では、ウォークスルー機能を実現するためのアプリケーションプログラムが起動されると、上記のモデルを選択して、図９のウォークスルー制御処理を行う。
【００５９】
図９に示すように、このウォークスルー制御処理では、まずステップ２００において、仮想空間を表す３Ｄ画像を表示した表示画面（初期画面）７０がディスプレイ１２に表示されて、ステップ２０２に進み、ユーザによりマウス１６がクリック操作されて、ディスプレイ１２の表示画面７０上の位置が指定されるのを待機する。
【００６０】
図１０に、このときディスプレイ１２に表示される表示画面（初期画面）７０の一例を示す。図１０に示す表示画面７０では、仮想空間を表す３Ｄ画像上に、図８で示したモデルの仮想線ＶＬが重ねられて表示されている。ユーザは、この仮想線ＶＬを目安にして、所望のコマンドを入力するには、何れの位置を指定すればよいのかを判断することができる。また、この表示画面７０では、図１０に示すように現時点のマウスカーソルＣｒの位置が指定された（クリックした）場合に、選択・実行されるコマンドを示す補助情報７４が表示されるようになっている。この場合、ユーザは、マウス１６の操作により表示画面７０上でマウスカーソルＣｒの位置を移動しながら補助情報７４によりコマンドを確認することで、所望のコマンドが入力される表示画面７０上の位置を把握することができる。
【００６１】
ユーザによりマウス１６がクリック操作されて、ディスプレイ１２の表示画面７０上の位置が指定されると、当該指定された位置がＴ１〜Ｔ１３の何れの要素に該当するのかを判別するために、図９のステップ２０２からステップ２０４に進む。
【００６２】
そして、指定された位置に該当する要素がＴ１又はＴ２であれば、ステップ２０４からステップ２０６に進み、表２に示したようにＴ１又はＴ２には量的制御コマンドが割り当てられているので、機能テーブルを参照して、Ｔ１又はＴ２の該当する要素に対応するコマンドの計算式を用いた演算により、指定された位置の仮想線ＶＬ（Ｘ）からの距離に応じて視点を近づける又は遠ざける距離を求めるズーム距離演算が行われる。そして、Ｔ１又はＴ２の該当する要素に対応するコマンドの実行により、次のステップ２０８で、現在の視点位置からズーム距離演算により求めた距離だけ視点を前後させる視点位置演算が行われ、続いてステップ２１０に進んで、その結果が新しい視点位置に設定されてから、ステップ２１２に進み、当該設定後の視点位置に応じた３Ｄ画像が生成され、この生成された３Ｄ画像が表示画面７０に表示されることになる（３Ｄ表示更新）。これによって、仮想空間内を前後に自由に移動する機能（ズーム機能）が実現される。
【００６３】
また、指定された位置に該当する要素がＴ５〜Ｔ８の何れかである場合は、ステップ２０４からステップ２１４、ステップ２１６と進む。ステップ２１６では、表２に示したようにＴ５〜Ｔ８には量的制御コマンドが割り当てられているので、機能テーブルを参照して、Ｔ５〜Ｔ８の何れかの該当する要素に対応するコマンドの計算式を用いた演算により、指定された位置の仮想線ＶＬ（Ｘ１）又はＶＬ（Ｙ１）からの距離に応じて視点を回転させる角度を求めるパン角度演算が行われる。そして、Ｔ５〜Ｔ８の何れかの該当する要素に対応するコマンドの実行により、次のステップ２１８で、現在の視点位置からパン角度演算により求めた角度だけ上下左右の何れかの方向に視点を回転させる視点位置演算が行われてから、同様にステップ２１０に進み、その結果が新しい視点位置に設定されて、ステップ２１２の３Ｄ表示が行われる、すなわち、設定後の視点位置に応じた３Ｄ画像が生成されて表示画面７０に表示されることになる（３Ｄ表示更新）。これによって、仮想空間内で視点を自由に回転する機能（パン機能）が実現される。
【００６４】
また、指定された位置に該当する要素がＴ１０〜Ｔ１３の何れかである場合は、ステップ２０４からステップ２１４、ステップ２２０、ステップ２２２と進む。ステップ２２２では、表２に示したようにＴ１０〜Ｔ１３には量的制御コマンドが割り当てられているので、機能テーブルを参照して、Ｔ１０〜Ｔ１３の何れかの該当する要素に対応するコマンドの計算式を用いた演算により、指定された位置の仮想線ＶＬ（Ｘ２）又はＶＬ（Ｘ３）又はＶＬ（Ｙ２）又はＶＬ（Ｙ３）からの距離に応じて視点を移動させる距離を求める移動距離演算が行われる。そして、Ｔ１０〜Ｔ１３の何れかの該当する要素に対応するコマンドの実行により、次のステップ２２４で、現在の視点位置から移動距離演算により求めた値だけ上下左右の何れかへ視点を移動させる視点位置演算が行われてから、同様にステップ２１０に進み、その結果が新しい視点位置に設定されて、ステップ２１２の３Ｄ表示が行われる、すなわち、設定後の視点位置に応じた３Ｄ画像が生成されて表示画面７０に表示されることになる（３Ｄ表示更新）。これによって、仮想空間内で視点を上下左右に自由に移動する機能（移動機能）が実現される。
【００６５】
また、指定された位置に該当する要素がＴ３又はＴ４である場合は、ステップ２０４からステップ２１４、ステップ２２０、ステップ２２６、ステップ２２８と進む。ステップ２２８では、表２に示したようにＴ３又はＴ４には量的制御コマンドが割り当てられているので、機能テーブルを参照して、Ｔ３又はＴ４の該当する要素に対応するコマンドの計算式を用いた演算により、指定された位置の仮想線ＶＬ（Ｘ１）からの距離に応じて投影スクリーンを近づける又は遠ざける距離を求めるスクリーン移動距離演算が行われる。そして、Ｔ３又はＴ４の何れかの該当する要素に対応するコマンドの実行により、次のステップ２３０で、現在の投影スクリーン位置からスクリーン移動距離演算により求めた距離だけ前後に投影スクリーンを移動させるスクリーン位置演算が行われ、次いでステップ２３２で、その結果に基づいて、仮想空間内の可視化範囲（ビューイング・ボリューム）を設定してから、ステップ２１２の３Ｄ表示が行われる、すなわち、設定後の可視化範囲に応じた３Ｄ画像が生成されて表示画面７０に表示されることになる（３Ｄ表示更新）。これによって、画面に表示する投影スクリーン面を前後に自由に移動する機能（スクリーン機能）が実現される。
【００６６】
また、指定された位置に該当する要素がＴ９である場合は、ステップ２０４からステップ２１４、ステップ２２０、ステップ２２６、ステップ２３４と進む。ステップ２３４では、表２に示したようにＴ９には単純コマンドが割り当てられているので、機能テーブルを参照して、Ｔ９の要素に対応するコマンドを実行することで、視点位置を初期位置（例えば、正面方向で高さ１５００ｍｍ）として、ステップ２１２の３Ｄ表示が行われる、すなわち視点位置を初期位置に戻した３Ｄ画像が生成されて表示画面７０に表示されることになる（３Ｄ表示更新）。これによって、仮想空間内でユーザの視点がどのような方向に向いていても、ユーザの体の正面方向で高さ１５００ｍｍの高さの視点に戻る機能（定点機能）が実現される。
【００６７】
このようにして、ステップ２１２で３Ｄ表示を行った後は、ウォークスルー機能を実現するためのプログラムが起動中であれば、次のステップ２３６で否定判定されてステップ２０２に戻り、表示画面７０上の位置が指定されるのを待機する待機状態になる。ウォークスルー機能を実現するためのプログラムの終了が指示されたら、ステップ２３６で肯定判定されて、図９の処理は終了する。
【００６８】
上記のような処理により、ユーザはマウス１６をクリック操作して表示画面７０上の位置を指定するだけで、ズーム機能、パン機能、移動機能、スクリーン機能、定点機能を任意に動作させて、あたかも表示画面７０に３Ｄ表示された仮想空間内を自由に歩き回っているかのような仮想体験をすることができる。
【００６９】
例えば、図１０の表示画面（初期画面）７０上で点ＰＡを指定すれば、図１１に示すように表示画面７０の表示が更新されて、仮想線ＶＬ（Ｙ１）から点ＰＡまでの距離に応じた角度（例えば３０度）だけ視点を右方向に回転させることができる。また、図１０の表示画面（初期画面）７０上で点ＰＢを指定すれば、図１２に示すように表示画面７０の表示が更新されて、視点を右方向にさらに大きな角度（例えば６０度）回転させることができる。
【００７０】
［まとめ］
上記をまとめると、仮想線ＶＬを基準とした表示画面７０上の位置とコマンドとが予め対応付けられるので、ユーザは、マウス１６の操作により表示画面７０上の位置を指定するだけで、ＰＣ１０に所望のコマンドを実行させることができ、コマンド入力操作が容易である。また、一般的なＰＣに通常備えられているマウス１６のような汎用のポインティングデバイスを操作して表示画面７０上の位置を指定するだけで、所望のコマンド入力を行うことができ、従来技術のように特別なデバイスを必要とすることもない。
【００７１】
また、仮想線ＶＬによって表示画面７０上の位置を定義するので、表示画面７０上に仮想線ＶＬを表示しても、線であるため、従来の操作ボタンのように面積を必要とせず、情報表示領域に制約を与えることがない。また、使用したいコマンド数に応じて仮想線ＶＬの本数や形状を選択することで、略無制限に表示画面上の位置とコマンドを対応付けることができる。特に、面的要素、線的要素、点的要素に分けて定義することにより、より少ない仮想線数で多数のコマンドを表示画面上の位置に対応付けることができる。
【００７２】
また、ウォークスルー機能に適用した場合、従来必要とされた多数の操作ボタン３００を表示するための表示スペース３０２（図１３参照）が不要となり、図１０を図１３と比較することから分かるように、この表示スペース３０２（図１０の一点鎖線で囲んだ部分参照）の分だけ仮想空間の表示範囲を広くとることができるので、特に有効である。また、仮想線ＶＬを表示しても線であるため視覚的にも目立たず、ウォークスルー機能のように表示したい情報が画像である場合にユーザに違和感を与えることがないという効果も有る。
【００７３】
また、制御量を可変にする場合には、基準位置（仮想線や仮想線の交点）から指定された位置までの距離に応じて、制御量を調整する量的制御コマンドを割り当てれば、ユーザは１回の操作（表示画面上の１箇所をクリックする）だけで、コマンド入力と制御量の入力を同時に行うことができ、より操作性が向上する。
【００７４】
また、仮想線の配置パターンが異なる複数のモデルの中から使用するモデルを選択可能にしたので、実現したい機能に応じて、ユーザが操作し易いモデルを選択することができる。例えば、ウォークスルー機能であれば、図８及び表２に示したモデルを選択することで、右方向へ移動や回転させたい場合は表示画面の右側、左方向へ移動や回転させたい場合は表示画面の左側の位置を指定すればよく、ユーザが感覚的に容易に操作することができる。また、サブプログラム３４Ａの起動により、任意に仮想線を設定して、コマンドを対応つけることができるので、ユーザは各自で操作し易いようにモデルを設定することができる。
【００７５】
【発明の効果】
上記に示したように、本発明は、情報表示領域に制約を与えることなく、且つ特別なデバイスを必要とせずに、コマンド入力を容易に行うことができるという優れた効果を有する。
【図面の簡単な説明】
【図１】本実施形態に係るパーソナルコンピュータの構成図である。
【図２】本実施形態に係るパーソナルコンピュータに構築される機能を示す機能構成図である。
【図３】（Ａ）〜（Ｅ）はモデル設定例を示す表示画面の図である。
【図４】仮想線により定義される要素、及び量的制御コマンドを説明するための表示画面の図である。
【図５】機能テーブルを示す図である。
【図６】本実施形態に係るパーソナルコンピュータで実行されるモデル設定処理を示すフローチャートである。
【図７】本実施形態に係るパーソナルコンピュータで実行されるコマンド実行処理を示すフローチャートである。
【図８】ウォークスルー機能時に用いるモデル例を示す表示画面の図である（実施例）。
【図９】ウォークスルー機能時にパーソナルコンピュータで実行されるウォークスルー制御処理を示すフローチャートである（実施例）。
【図１０】ウォークスルー機能時に表示される初期画面例を示す図である（実施例）。
【図１１】図１０から視点を右方向に回転させた場合の表示画面例である（実施例）。
【図１２】図１０から視点を右方向に図１１よりも大きく回転させた場合の表示画面例である（実施例）。
【図１３】ウォークスルー機能時に表示される従来の表示画面例を示す図である（従来技術）。
【符号の説明】
１０  ＰＣ
１２  ディスプレイ
１４  キーボード
１６  マウス
３４  プログラム
３４Ａ、３４Ｂ          サブプログラム
４０  モデル定義部
４２  コマンド割当部
４４  機能テーブル生成部
５０  モデル選択部
５２  コマンド選択・実行部
７０  表示画面
７２  機能テーブル
７４  補助情報
【図１】
2004362113.tif 000007
【図２】
2004362113.tif 000008
【図３】
2004362113.tif 000009
【図４】
2004362113.tif 000010
【図５】
2004362113.tif 000011
【図６】
2004362113.tif 000012
【図７】
2004362113.tif 000013
【図８】
2004362113.tif 000014
【図９】
2004362113.tif 000015
【図１０】
2004362113.tif 000016
【図１１】
2004362113.tif 000017
【図１２】
2004362113.tif 000018
【図１３】
2004362113.tif 000019