(57)【特許請求の範囲】
【請求項１】
表示装置の画面上に複数のウインドウを表示させる端末装置であって、
各ウインドウに共通して用いられる前記画面と同一面上の特定の一つの消点を定める手段と、
前記画面に表示しているウインドウの拡大または縮小の指示を受け付ける拡大縮小受け付け手段と、
ウインドウの拡大または縮小の指示を受け付けると、前記消点と拡大または縮小前のウインドウの各頂点とを結んだ直線上に拡大または縮小後のウインドウの各頂点が位置するように当該ウインドウを拡大または縮小表示させるウインドウ拡大縮小表示手段とを備えることを特徴とする端末装置。
【請求項２】
請求項１に記載の端末装置において、
前記消点は、前記画面に対する垂直な方向についての仮想的な距離ｄｐを有し、
各ウインドウは、前記消点からの仮想的な距離である深さｄｓを有し、
前記ウインドウ拡大縮小表示手段は、当該ウインドウの深さｄｓを変化させることでウインドウの拡大または縮小を行ない、拡大または縮小後の当該ウインドウのサイズは、前記変化させる深さｄｓに基づいて定めることを特徴とする請求項１に記載の端末装置。
【請求項３】
請求項２に記載の端末装置において、
前記消点の仮想的な距離ｄｐの変更の指示を受け付ける手段をさらに備え、
前記ウインドウ拡大縮小表示手段は、前記消点の距離ｄｐの変更によって変化するウインドウの深さｄｓに基づいて、表示している各ウインドウのサイズを変更することを特徴とする端末装置。
【請求項４】
請求項３に記載の端末装置において、
前記ウインドウ拡大縮小表示手段は、サイズ不変の指示を受けたウインドウについては、前記消点の距離ｄｐの変更に基づくサイズの変更を行なわないことを特徴とする端末装置。
【請求項５】
請求項２に記載の端末装置において、
前記拡大縮小受け付け手段は、拡大または縮小の指示をズーム率で受け付け、
前記変化させる深さｄｓは、拡大または縮小前の当該ウインドウの深さｄｓと、受け付けたズーム率の積に比例することを特徴とする端末装置。
【請求項６】
請求項２に記載の端末装置において、
各ウインドウに、当該ウインドウと前記消点との距離に基づいて変化する厚みを与えて表示することを特徴とする端末装置。
【請求項７】
請求項２に記載の端末装置において、
ウインドウの拡大または縮小に応じて、ウインドウ内部の明度を変化させて表示することを特徴とする端末装置。
【請求項８】
表示装置の画面上に複数のウインドウを表示するウインドウ表示制御方法であって、
前記画面に表示している１のウインドウの拡大または縮小の指示を受け付けると、
前記画面と同一面上の特定の１つの消点と拡大または縮小前のウインドウの各頂点とを結んだ直線上に拡大または縮小後のウインドウの各頂点が位置するように、当該１のウインドウを前記画面上に拡大または縮小表示し、
前記画面に表示している他のウインドウの拡大または縮小の指示を受け付けると、
前記消点と拡大または縮小前の当該他のウインドウの各頂点とを結んだ直線上に拡大または縮小後の当該他のウインドウの各頂点が位置するように、当該他のウインドウを前記画面上に拡大または縮小表示することを特徴とするウインドウ表示制御方法。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、画面上に複数の領域を設け、その各々に独立の画像を表示させるマルチウインドウ表示制御方法に関する。
【０００２】
【従来の技術】
マルチウインドウを表示する際には、ＣＲＴ等の表示装置の限られた表示領域に複数のウインドウを配置して表示することが必要である。
【０００３】
この目的のために従来用いられていた方法としては、たとえば画面上のすべてのウインドウが重ならないようにウインドウの大きさを調節して配置する方法がある。この方法においては、ウインドウが重ならないため画像が隠れないが、ウインドウの大きさが画面上のウインドウの数によって制限されてしまうという問題がある。
【０００４】
他の方法としては、ウインドウの大きさは任意で、ウインドウ同士のオーバーラップを許す方法がある。この方法においては、ウインドウの大きさはウインドウの数により制限されないが、下にあるウインドウの重なり部分は不可視となるという問題がある。
【０００５】
その他の方法としては、ウインドウのオーバーラップを避けるために、ディスプレイサイズより大きい仮想的なスクリーンを設定し、ディスプレイを該スクリーンの一表示領域であるかのように見せる方法や、複数のスクリーンを持ち、これらを切り替えて表示する方法もある。
【０００６】
【発明が解決しようとする課題】
上記従来の技術において、オーバーラップを許さない方法においては、ウインドウが重ならないため画像が隠れないが、ウインドウの大きさが画面上のウインドウの数によって制限される。従って、あまり多数のウインドウを開けないという問題があった。
【０００７】
オーバーラップを許す方法においては、ウインドウの大きさはウインドウの数によらないが、ウインドウの重なり部分のうち後にあるウインドウの部分は不可視となる。従って、前にあるウインドウによって隠されている部分を表示するためには、前にあるウインドウをアイコン化するか、表示したいウインドウが最上部になるまで一番前のウインドウを最後部へ繰り返し持ってくる等の操作を行わなければならないという問題があった。
【０００８】
また、仮想的にディスプレイより大きいスクリーンを設定する方法においては、ディスプレイの範囲の外にある表示されていない部分のウインドウが見えないという問題があった。
【０００９】
さらに、複数のスクリーンを持つ方法においても、表示を選択していないスクリーン上にあるウインドウを見ることができないという問題があった。
【００１０】
さらに、これらの方法においては、ウインドウを同一平面上に配置するため、ウインドウの重なり順序が判別しにくいという問題があった。
【００１１】
【課題を解決するための手段】
上記の課題を解決するために、本発明によれば、ディスプレイ画面上に複数のウインドウを表示する際に、ズーム率を指示する手段を設け、ズーム率を指示することにより、画面上に表示されているすべてのウインドウを透視図法の規則にのっとって一点（消点）に収束する方向に同じ比率で拡大又は縮小する手段を備えることができる。
【００１２】
また、上記ズーム率を指示することにより、指示したウインドウの大きさを透視図法の規則にのっとって一点（消点）に収束する方向に拡大又は縮小する手段を備えることもできる。
【００１３】
さらに、上記ズーム率を指示することにより、特定のウインドウ以外のウインドウを拡大又は縮小する手段を備えることもできる。
【００１４】
さらに、各ウインドウごとに大きさの最大値を設け、ズーム率を指示することによってウインドウを拡大したときに、各ウインドウの大きさが最大値を越えた場合に該ウインドウを非表示とする手段を備えることもできる。
【００１５】
さらに、消点の位置を移動することによって、ウインドウの配置を変更する手段を備えることもできる。
【００１６】
さらに、消点の深さを変更することによってウインドウの拡大率または縮小率を変更する手段を備えることもできる。
【００１７】
さらに、画面上のウインドウを拡大または縮小することによって、該ウインドウに表示する図形及び文字を同じ比率で拡大または縮小する手段を備えることもできる。
【００１８】
さらに、表示するウインドウにディスプレイ上の仮想立体空間上で深さに対応した仮想的な厚みを表現する手段を設けることもできる。
【００１９】
さらに、仮想的な厚みを同一深さのウインドウで等しくする手段を備えることもできる。
【００２０】
さらに、ウインドウの拡大または縮小に対応してウインドウ内部の明度を大きくまたは小さくする手段を備えることもできる。
【００２１】
さらに、ヘルプ情報表示手段を設け、該ヘルプ情報表示を指定することによりウインドウ配置情報を表示する手段を備えることもできる。
【００２２】
【作用】
ディスプレイ画面上に複数のウインドウを表示するマルチウインドウ表示制御方法において、ズーム率を指示することにより、画面上に表示されているすべてのウインドウを、透視図法の規則にのっとって一点（消点）に収束する方向に同じ比率で拡大又は縮小する。これにより、ウインドウを仮想的に３次元に配置し、配置を変更することなくあたかも３次元空間上を移動するかのようにウインドウサイズを変更することが可能になる。
【００２３】
また、上記ズーム率を指示することにより、指定したウインドウの大きさを透視図法の規則にのっとって一点（消点）に収束する方向に拡大又は縮小する。これにより、あたかも３次元空間上を移動するかのように、、ウインドウサイズを変更することが可能になる。
【００２４】
さらに、上記ズームを指示することにより、特定のウインドウ以外のウインドウを拡大又は縮小する。これにより、特定のウインドウを常に同じサイズで表示することが可能になる。
【００２５】
さらに、各ウインドウごとに大きさの最大値を設け、ズーム率を指示することによってウインドウを拡大したときに、各ウインドウの大きさが最大値を越えた場合に該ウインドウを非表示とする。これにより、ウインドウの配置を変えることなく該ウインドウに隠れていた別のウインドウを表示することが可能になる。
【００２６】
さらに、消点の位置を移動することによって、ウインドウの配置を変更する。これにより、ウインドウの前後関係を変更することなく、あるウインドウに隠れていた別のウインドウを表示することが可能になる。
【００２７】
さらに、消点の深さを変更することによってウインドウの拡大率または縮小率を変更する。これにより、あたかも３次元空間上でのウインドウ間の距離を変更したかのようにウインドウサイズを変更することが可能になる。
【００２８】
さらに、画面上のウインドウを拡大または縮小することによって、該ウインドウに表示する図形及び文字を同じ比率で拡大または縮小する。これにより、ウインドウをズームすることによって所望の大きさでウインドウの内容を扱うことが可能になる。
【００２９】
さらに、表示するウインドウにディスプレイ上の仮想立体空間上で深さに対応した仮想的な厚みを表現する。これにより、仮想３次元空間をより立体的に見せることが可能になる。
【００３０】
さらに、仮想的な厚みを同一深さのウインドウで等しくする。これにより、仮想３次元空間をより立体的に見せることが可能になる。
【００３１】
さらに、ウインドウの拡大または縮小に対応して、ウインドウ内部の明度を大きくまたは小さくする。これにより、仮想３次元空間をより立体的に見せることが可能になる。
【００３２】
さらに、ヘルプ情報表示を指定することにより、ウインドウ配置情報を表示する。これにより、ウインドウの配置を確認しやすくなる。
【００３３】
【実施例】
以下、本発明の実施例を図を用いて説明する。
【００３４】
図１は、本発明の１実施例である端末装置の構成を説明するブロック図である．１０１は、キーボード，マウス，タブレット，トラックボール，タッチパネル，データペン，マイクロフォン等またはそれらの組み合わせによる入力装置である。１０２は、本実施例による端末装置を制御するためのプログラムおよびデータや、本発明にかかる仮想３次元マルチウインドウ表示を行うためのウインドウ制御プログラム、および各ウインドウに属するデータを外部記憶装置１０４からロードして格納するためのメインメモリである。
【００３５】
１０３は、本実施例の端末装置の制御を実行するＣＰＵ（中央処理装置）であり、メインメモリ１０２の端末制御プログラム及びウインドウ制御プログラムを、ウインドウ制御データとウインドウデータとを用いて実行する。１０５は、ＣＰＵ１０３によって計算された表示情報を、ディスプレイに表示するためのフレームメモリである。フレームメモリ１０５の表示データは、ディスプレイコントローラ１０６を介してディスプレイ１０７に表示される。これらの間のデータ転送は、バス１１２を通して行われる。
【００３６】
実際の動作は、以下のように行われる。まず、電源の投入又はキーボード等の入力装置１０１による起動コマンドの実行によって、本発明の仮想３次元ウインドウシステムを起動する。この時、ハードディスクまたはＲＯＭ（リードオンリメモリ）等の外部記憶装置１０４に格納してあるウインドウ制御プログラムがメインメモリ１０２上のプログラムエリア１０８に、ウインドウ制御および表示に用いるデータが仮想３Ｄウインドウ制御エリア１１０およびウインドウ情報エリア１１１にそれぞれロードされ、ＣＰＵ１０３によって実行される。
【００３７】
なお、１０９はプログラム実行のためのワークエリアである。前記プログラムは、絵画等の描画手法のひとつである１点透視図法の規則に従って、ウインドウをディスプレイ画面上に仮想的に立体的に配置して表示する機能を有する。この規則によって決定された表示画像データは、フレームメモリ１０５に送られ、ディスプレイコントローラ１０６を通してディスプレイに表示される。
【００３８】
ここで、１点透視図法の規則について簡単に説明する。１点透視図では、画面上に描くすべての描画対象を手前に配置するときは大きく、奥すなわち遠方に配置するときは小さく描くことによって立体感を表現する。このとき画面上または画面外の１点を決め、この点を仮想的な距離の無限遠を表す消点と定める。
【００３９】
本発明にかかるウインドウ制御プログラムは、表示するウインドウを１点透視図法の規則に従って仮想的に立体的に配置することを特徴とする。本発明におけるウインドウ制御プログラムで用いるデータは、図１の１０２に示したメインメモリに格納される。
【００４０】
図２に、図１に示した仮想３次元ウインドウ制御エリア１１０の詳細を示す。仮想３Ｄウインドウ制御エリアは、ウインドウを配置する仮想的に３次元の表示空間を規定する表示空間データエリア２１、ウインドウの基準値を規定するウインドウ基準データエリア２２、ウインドウのズーム率を格納するエリア２３およびウインドウを実際に描画するためのウインドウ描画データエリア２４からなる。
【００４１】
図３に、図１のメインメモリ１０２に示したウインドウの内容に関するデータを格納するウインドウ情報エリア１１１の詳細を示す。ここで、ウインドウの内容とは、ウインドウ内に表示するテキストや図形等のイメージである。ウインドウ情報エリアは、各ウインドウに属する内容全体を格納するウインドウ基準内容データエリア３１と、実際に描画する内容を格納するウインドウ描画内容データエリア３２からなる。
【００４２】
図４は、表示空間データエリア２１（図２参照）を表す図である。表示空間の属性として、消点位置（ｘp，ｙp）を４１に、表示プレーン深さｄpを４２に格納してこれらを規定する。
【００４３】
図５は、ウインドウの基準値を規定するウインドウ基準データエリア２２（図２参照）の詳細を表す図である。ウインドウの属性として、基準位置（ｘs，ｙs）、深さｄs、基準サイズ（ｈs，ｗs）、基準厚さｔs、基準明度ｌsを格納してこれらを規定する。
【００４４】
図６は、ウインドウの描画サイズを計算するためのウインドウズーム率を格納するエリア２３（図２参照）の詳細を表す図である。
【００４５】
図４乃至図６で使用される用語について説明する。
【００４６】
図４において、表示プレーンとは、表示空間上の垂直な１断面であり、表示空間上のウインドウは該表示プレーンに投影して表示される。また深さは、仮想空間上の無限遠（消点）からの距離を表し、表示プレーンとウインドウの深さ方向の相対的な位置関係によって図５に示すようなウインドウの位置、サイズ、厚さ、明度が規定される。本実施例では、仮想的立体空間をディスプレイ上に表現するために、深さすなわち消点からの距離をある有限の値として処理を行う。したがって、表示プレーン深さｄpは、消点からの距離を表し、同様にｄsはウインドウの消点からの距離を表す。ここで、あるウインドウが表示プレーン上にあるとき、その描画サイズは基準サイズに等しくなる、すなわち図６に示すズーム率において、ズーム率が１となるものとする。本実施例では表示プレーンがディスプレイ画面に一致するが、両者は必ずしも一致する必要はない。ウインドウの描画サイズはズーム率によって決定され、ズーム率はウインドウが表示プレーンより奥にある場合は１より小さく、手前にあるときには１より大きくなる。
【００４７】
図７に、ウインドウを実際に描画するためのウインドウ描画データ２４（図２参照）を格納するエリアの詳細を表す。描画データ２４は、ウインドウごとに描画位置（ｘv，ｙv）、描画サイズ（ｗv，ｈv）、描画厚さｔv、描画明度ｌvおよびウインドウを表示するかどうかを指示する表示フラグｆv、およびズーム規則に従うかどうかを指示するズームフラグｆzからなる。
【００４８】
図８は、各ウインドウに属する内容全体を格納するウインドウ基準内容データエリア３１（図３参照）の詳細を表す図である。
【００４９】
図９は、実際に描画する内容を格納するウインドウ描画内容データエリアの詳細を表す図である。
【００５０】
以下、ウインドウ描画データ２４（図２参照）の計算方法、およびウインドウ描画内容データ３２（図３参照）の決定方法を説明する。
【００５１】
本発明にかかる仮想３次元ウインドウ制御方法においては、仮想３次元空間上のウインドウは、以下に述べる方法を用いて配置される。ただし、表示プレーンに並行な移動は、従来用いられている平面的なウインドウ表示制御方法と同様の手法を用いて行うものとする。
【００５２】
ウインドウの表示プレーンに垂直な方向への移動方法の一つは、ウインドウごとの移動である。まず、移動対象のウインドウを指定した後、入力装置上に予め用意されたフォワードボタン、またはバックワードボタン、あるいはディスプレイ上のメニュー選択によって前方または後方への移動を指示する。該指示は、ウインドウ上にズームボタンアイコンを設け、カーソルを該アイコン位置に移動し、マウスボタンをクリックすることによっても実現できる。この際、ズームボタンとしてフォワードボタンとバックワードボタンを設け、それぞれを拡大、縮小に対応づけることも可能であるし、複数のボタンを持つマウスを用いて、１つのズームボタンに対しマウスボタンの１つを拡大、別の１つを縮小に対応づけてもよい。
【００５３】
上記のようなフォワードボタンアイコン、バックワードボタンアイコン領域を持つウインドウの例を図２１に示す。２１０１がフォワードボタンアイコン、２１０２がバックワードボタンアイコンを表し、カーソルを該アイコン上に移動してマウスボタンを押し続ける間ウインドウが拡大または縮小するものとする。
【００５４】
図１０は、ウインドウを表示プレーンと垂直な方向にのみ移動した場合の描画位置を示した図である。また、図１１は、図１０を正面からみた図である。図１０および図１１において、１００１は消点の位置、１００２は対象とするウインドウの移動前の描画サイズ、１００３は移動後のウインドウの描画サイズを表す。
【００５５】
ユーザーの指示によってあるウインドウの移動要求が起きたときは、消点および表示プレーン位置を固定とし、前記ウインドウを、その移動量に従って変化したズーム率に基づいて拡大又は縮小して表示する。今、移動前のウインドウの深さをｄs、ウインドウの基準サイズを（ｈs，ｗs）、描画サイズを（ｈv，ｗv）、基準厚さをｔs、ズーム率をε、移動後のウインドウの深さをｄs’、描画サイズおよび厚さをそれぞれ（ｈv’，ｗv’）、ｔv’とすると、ウインドウのズーム率ε’は、
【００５６】
【数１】
0003705826.tif 000002
【００５７】
となる。このときのウインドウ描画サイズ（ｗv’，ｈv’）および厚さｔv’は、
【００５８】
【数２】
0003705826.tif 000003
【００５９】
【数３】
0003705826.tif 000004
【００６０】
で表される。また、消点位置を（ｘp，ｙp）、ウインドウの基準位置を（ｘs，ｙs）とすると移動後の描画位置（ｘv’，ｙv’）は、
【００６１】
【数４】
0003705826.tif 000005
【００６２】
となる。ウインドウの描画明度ｌv’は、基準明度をｌsとしたとき次式によるものとする。
【００６３】
【数５】
0003705826.tif 000006
【００６４】
なお、ウインドウの基準厚さを、全てのウインドウにおいて同一とすることにより、立体感を強調することができる。
【００６５】
図２２は、ウインドウの移動（ウインドウズーム）を連続的に行う場合の処理を示すフローチャートを表している。フォワードボタンまたはバックワードボタンの選択等によってズーム要求が出されたとき、ウインドウズーム処理が開始される。
【００６６】
図２２においてズーム要求が検知されたとき（２２０１）、該ズーム要求が拡大であるか縮小であるかを判定し（２２０２）、拡大である場合は２２０３、縮小である場合は２２０４に示す式に従いズーム率を更新する。ここで、ズーム係数ｃは、ｃ＞０なる定数で、１処理サイクルあたりの深さの変化量を表す。このｃは、システムにより固定でもよく、ユーザにより変更することができるようにしてもよい。ここで、ｄsはウインドウの深さである。
【００６７】
次に、変更されたズーム率をもとにウインドウ基準データおよびウインドウ基準内容データから新たな描画データおよび描画内容データを作成し（２２０５，２２０６）、これを用いてウインドウを再描画する（２２０７）。２２０８において、ズーム要求が終了したか否かを判定し、終了していない場合は、該ズーム要求が終了するまで２２０２乃至２２０７の処理を繰り返す。終了している場合は、ズーム処理を終了する。ズーム要求の継続は、例えばフォワードボタンまたはバックワードボタンを選択し続けることによって行われる。
【００６８】
図２３は、ウインドウの描画データのみを逐次更新、再描画することによってウインドウフレームのみを変更し、ウインドウ内容データは最終的に決定されたズーム率に基づいて、更新および再描画を行う場合の処理を示すフローチャートである。この場合は、２３０１乃至２３０７まではウインドウ内容を除いて図２２と同様の処理を行い、ズーム要求が終了した後最終的なズーム率を用いて描画内容データを更新し（２３０８）、ウインドウ内容を再描画する（２３０９）。この手順を用いた場合には、連続的に再描画するデータが少ないために高速に描画処理が行われる。なお、上記連続的な方法以外に、ズーム率を直接与えることによって最終的な描画データおよび描画内容データを更新し、再描画を行うことも可能である。
【００６９】
二つ目の方法は、表示プレーンの移動である。このときは、ズームの規則に従う全てのウインドウの描画データが変化する。ウインドウがズーム規則に従うかどうかはユーザーによって指定され、規則に従う場合はズームフラグｆzを真にし、これに基づいてズームを行うかどうかを決定する。
【００７０】
図１２は、表示プレーンの移動によるウインドウ表示サイズの変化を表す図である。ユーザーの指示によって表示プレーン移動要求が起きたとき、消点位置を固定とし、ズームフラグが真の全てのウインドウは、表示プレーン移動量に従って変化したズーム率に基づいて拡大又は縮小される。表示プレーン移動要求の指示は、ウインドウズーム要求と同様に入力装置上に用意されたボタン等により行なってよい。また、メニュー選択によって行ってもよいし、ディスプレイ上の適当な領域にボタンアイコンを配置して行うことも可能である。図１２において、１２０１は消点、１２０２は移動前の表示プレーン、１２０３は移動前のウインドウの描画サイズ、１２０４は移動後の表示プレーンであり、１２０５は表示プレーンが移動したときにウインドウ１２０３の描画サイズが変化していることを表している。表示プレーンが手前に移動したとき、あるウインドウのズーム率ε’は、移動前のズーム率εに対して、
【００７１】
【数６】
0003705826.tif 000007
【００７２】
となる。このときのウインドウ描画サイズおよび位置は、ズーム率ε’を用いてウインドウの移動のときと同様の式で表される。
【００７３】
ところで、表示プレーンとディスプレイ画面が一致する条件の元で、あるウインドウのズーム率が１より大きくなったとき、該ウインドウは表示空間上において表示プレーンより手前、すなわちディスプレイ画面より使用者側に位置することになる。この時は、該ウインドウを非表示とする。これによって、表示プレーンを移動するだけで、ウインドウの配置を変えずに、前のウインドウによって隠されていた後のウインドウを表示することが可能になる。
【００７４】
図１３は、上記のように表示プレーンを移動することによってウインドウが非表示になる様子を表している。ここで、１３０１は消点、１３０２は表示プレーン、１３０３は表示プレーン上のウインドウ、１３０４は表示プレーンより手前で非表示のウインドウ、１３０５は表示プレーンより奥で縮小されたウインドウである。非表示のウインドウは、表示フラグｆvを偽とし、表示を行わない。なお、ウインドウを非表示とするためのズーム率の閾値を１より大きくすることも可能である。このとき、ウインドウは表示プレーン位置で標準値より拡大される。
【００７５】
図２４は、表示プレーンの移動を連続的に行う場合の処理のフローチャートを表している。フォワードボタンまたはバックワードボタンの選択等によって表示プレーン移動要求が出されたとき、表示プレーン移動処理が開始される。図２４において移動要求が出されたか否かを判定し（２４０１）、移動要求が出されたことが検知されると、まず変数ｎに現在設けられているウインドウの数が、カウンタ変数ｉに０がセットされる（２４０２）。
【００７６】
次に、変数ｉに１を加えたのち（２４０３）、ｉがｎ以下であるか否かを判定し（２４０４）、ｎ以下であると判定された場合には、下記のように各ウインドウごとの処理を行う。すなわち、２４０５においてｉ番目のウインドウのズームフラグｆziが真であるか否かを判定し、真でないと判定された場合には２４０３へ分岐して次のウインドウの処理に移る。
【００７７】
真の場合は、移動要求が拡大か縮小かを判定し（２４０６）、拡大であれば２４０７、縮小であれば２４０８の式に従いズーム率εiを更新する。ここでｃは、図２２、２３と同様のズーム係数、ｄsiはｉ番目のウインドウの深さである。次に、新たなズーム率を用いて図２２と同様に該ウインドウデータを更新し（２４０９，２４１０）、ズーム率εiが１以下であるか否かを判定して（２４１１）、１以下である場合には表示フラグｆviを真とし（２４１２）、再描画する（２４１３）。εiが１より大の時は、ｆviが真であるか否かを判定し（２４１４）、真である場合にはｆviを偽とし（２４１５）、ｉ番目のウインドウをディスプレイ上から消去して（２４１６）、次のウインドウの処理に移る。
【００７８】
２４０４においてｉがｎより大と判定されたときは、２４１７において移動要求が終了したか否かを判定し、移動要求が継続している場合は２４０２へ戻って、該移動要求が終了するまで上記処理を繰り返す。
【００７９】
ウインドウの再描画については図２３と同様に、ウインドウ描画内容を、移動要求終了後表示する処理が可能なことは言うまでもない。また、ズーム率が１より大となったときの処理は、ウインドウズームを行う場合にも適用することができる。
【００８０】
ウインドウの配置を変更する３つめの方法は、消点の位置を変えることである。このときは、表示プレーンの位置は固定し、消点を前後（表示プレーンに対して垂直な方向）に移動させる。消点を移動するとき、全てのズーム規則に従うウインドウのズーム率を不変とした場合は、描画情報は変化しないが、ウインドウの深さが変わる。これにより、ウインドウズームあるいは表示プレーンの移動を行った際のウインドウサイズ等の変化速度が変わる。逆に、表示プレーンからの距離を一定にした場合はウインドウ描画サイズが変わる。図１４は、消点の移動によるウインドウ表示サイズおよび距離の変化を表す図である。１４０１は移動前の消点、１４０１’は移動後の消点、１４０４は表示プレーン、１４０２および１４０３は移動前のウインドウ、１４０２’および１４０３’は移動後のウインドウを表している。（ａ）はズーム率不変の場合、（ｂ）は距離不変の場合である。（ａ）では、移動後の各ウインドウの深さｄs’は移動後の消点深さのｄp’から次式で表される。
【００８１】
【数７】
0003705826.tif 000008
【００８２】
（ｂ）では、移動後のズーム率ε’は、
【００８３】
【数８】
0003705826.tif 000009
【００８４】
の様になる。ここで、移動後のウインドウ深さｄs’と移動前のウインドウ深さｄsの差は、消点深さの移動量に等しい。消点ズームボタン等を設けてこれを選択することによって消点の移動要求が起きたとき、ズーム率不変が同時に選択されたときは（数７）に従い各ウインドウの深さおよび表示プレーン深さを更新する。距離不変が選択されたときは、（数８）に従ってズーム率を更新した後、これに基づいてウインドウ描画データ、描画内容データを更新し、ウインドウの再描画を行う。
【００８５】
図１５は、消点位置が表示上においても無限遠である場合を表している。このとき、ウインドウサイズはいずれの移動によっても変化しない。従って、明度を変更しなければ従来の平面的なウインドウ表示制御方式と同様になる。
【００８６】
なお、新たにウインドウオープン要求が起きたときは、現在の表示プレーン上に基準値を用いてズーム率１でウインドウを表示する。このとき、ウインドウの表示位置は表示時点でポインティングデバイス等により入力されたデータに変更することも可能である。また、新しいウインドウの深さを表示プレーンより手前に設定し、表示と同時に表示プレーンの深さが該ウインドウの深さとなる様に、画面全体をズームすれば、該ウインドウが飛び出したような錯視を引き起こして使用者の注目を喚起することができる。
【００８７】
図１６は、本発明にかかる仮想３次元ウインドウ表示制御方式を用いた端末装置のディスプレイ表示の１例である。消点１６０１は、ディスプレイ外に配置することも可能である。ウインドウ１６０２は、ズーム規則に従わないウインドウ（非ズームウインドウ）であり、常に表示プレーン上に位置する。１６０３は、表示空間全体を表す補助情報ウインドウである。なお、消点は、選択する必要が生じた時以外は非表示としてもよい。
【００８８】
図１７は、図１６における表示プレーンを手前に移動することによってディスプレイ全体をズームアウトした様子を示している。１７０１，１７０２，１７０３は、それぞれ図６の１６０１，１６０２，１６０３に対応する。このとき、図６における非ズームウインドウ１６０２は、表示プレーンの移動によって変化しない（１７０２）。
【００８９】
図１８は、消点位置の表示面に並行な方向への移動によってウインドウ位置がどのように変化するかを示している。消点位置を、ディスプレイ画面内または画面外に定めることができるが、この消点位置を可変とし、消点位置の移動に伴ってウインドウの配置を変化させる。消点位置１８０１を１８０１’に移動したとき、表示プレーン上のウインドウ１８０２は１８０２’となるが位置は移動せず、後方のウインドウ１８０３は１８０３’に移動する。これにより、前のウインドウに完全に隠されていた後のウインドウが可視となる。図１９は、図１８を正面からみた図である。
【００９０】
ズームによってウインドウのサイズを変更するときは、ウインドウサイズに合わせて表示量を変えるか、ウインドウに表示する内容をズーム率に対応して拡大または縮小する。ウインドウの内容を拡大または縮小する場合、文字や画像をビットマップイメージとして表示する方式では、従来用いられている公知の方法等により、拡大あるいは縮小に応じて画素を補間あるいは間引きする。文字や画像をベクトル形式、例えばポストスクリプトと呼ばれる表示言語等を用いて記述し、これを用いて表示を行う場合は、ズーム率に従って文字フォントサイズを変更し、描画領域の変更に対応して画像を再構築することによって任意のサイズに変更することができる。
【００９１】
図２０は、図１６の１６０３、または図１７の１７０３と同様に、使用者がウインドウ配置状況の確認を行うための補助情報（ヘルプ情報）の他の一例である。使用者の要求があったときにディスプレイ上に表示することによって、ウインドウの配置および表示プレーンの位置等の判断のための補助情報として用いる。
【００９２】
【発明の効果】
ウインドウを透視図法の規則に基づく仮想空間上に配置することによって、ディスプレイ画面があたかも３次元であるかのような錯視を起こすことができる。これを利用して、奥行きを持った空間内にウインドウを配置することによって、ディスプレイ上に多数のウインドウを効果的に配置することができるようになった。
【００９３】
また、ウインドウをズームすることにより、ユーザーの要求に応じた大きさでウインドウを扱うことができるようになった。
【００９４】
注目していないウインドウを仮想空間上の奥に配置することにより、ウインドウの縮小が行われ、これによりウインドウの特徴を保持したままアイコン化と同様の効果を得ることができるようになった。この場合、ウインドウを縮小しても内容はある程度判別できるため、アイコンのように内容を表す絵や、形状を与える必要がなくなった。
【００９５】
消点を移動することによって前後関係を保持したままウインドウ間の重なり量が変わり、前のウインドウによって完全に隠されていたウインドウを可視にすることができるため、完全に隠されていたウインドウをポインティングデバイス等により容易に選択することができるようになった。
【００９６】
空間上のある深さをディスプレイ平面と定めることにより、該ディスプレイ平面より手前に配置されたウインドウを非表示とすることによって、ウインドウ間の配置を変更することなく後に隠れていたウインドウを表示することが可能になった。
【図面の簡単な説明】
【図１】本発明の１実施例である端末装置の構成を説明するブロック図である。
【図２】仮想３次元ウインドウ制御に用いるデータエリアを示す図である。
【図３】ウインドウの内容に関するデータを格納するウインドウ情報エリアを表す図である。
【図４】表示空間データエリアを表す図である。
【図５】ウインドウの基準値を規定するウインドウ基準データエリアを表す図である。
【図６】ウインドウズーム率を格納するエリアを表す図である。
【図７】ウインドウ描画データを格納するエリアを表す図である。
【図８】ウインドウ基準内容データエリアを表す図である。
【図９】ウインドウ描画内容データエリアを表す図である。
【図１０】ウインドウを移動した場合の描画位置およびウインドウサイズを示した図である。
【図１１】図１０を正面からみた図である。
【図１２】表示プレーンの移動によるウインドウ表示サイズの変化を表す図である。
【図１３】表示プレーンを移動することによってウインドウが非表示になる様子を表す図である。
【図１４】消点の移動によるウインドウ表示サイズおよび距離の変化を表す図である。
【図１５】消点位置が無限遠である場合を表す図である。
【図１６】端末装置のディスプレイ表示の１例を示す図である。
【図１７】図１６をズームアウトした様子を示す図である。
【図１８】消点位置の移動によってウインドウ位置がどのように変化するかを示す図である。
【図１９】図１８を正面からみた図である。
【図２０】使用者がウインドウ配置状況の確認を行うためのヘルプ情報の一例を示す図である。
【図２１】ズームボタンアイコンを持つウインドウの一例を示す図である。
【図２２】ウインドウズーム処理の流れ１を示すフローチャートの図である。
【図２３】ウインドウズーム処理の流れ２を示すフローチャートの図である。
【図２４】表示プレーン移動処理の流れを示すフローチャートの図である。
【符号の説明】
１０１…入力装置、１０２…メインメモリ、１０３…ＣＰＵ、１０４…外部記憶装置、１０５…フレームメモリ、１０６…ディスプレイコントローラ、１０７…ディスプレイ、１０８…バス、１００１，１２０１，１３０１，１４０１，１４０１’，１６０１，１７０１，１８０１，１８０１’…消点、１００２，１００３，１２０３，１２０５，１３０３，１３０４，１３０５，１４０２，１４０２’，１４０３，１４０３’，１６０２，１７０２，１８０２，１８０２’，１８０３，１８０３’…ウインドウ、１３０２…表示プレーン、２１０１…フォーワードズームボタン、２１０２…バックワードズームボタン。
【図１】
0003705826.tif 000010
【図２】
0003705826.tif 000011
【図３】
0003705826.tif 000012
【図４】
0003705826.tif 000013
【図５】
0003705826.tif 000014
【図６】
0003705826.tif 000015
【図７】
0003705826.tif 000016
【図８】
0003705826.tif 000017
【図９】
0003705826.tif 000018
【図１０】
0003705826.tif 000019
【図１１】
0003705826.tif 000020
【図１２】
0003705826.tif 000021
【図１３】
0003705826.tif 000022
【図１４】
0003705826.tif 000023
【図１５】
0003705826.tif 000024
【図１６】
0003705826.tif 000025
【図１７】
0003705826.tif 000026
【図１８】
0003705826.tif 000027
【図１９】
0003705826.tif 000028
【図２０】
0003705826.tif 000029
【図２１】
0003705826.tif 000030
【図２２】
0003705826.tif 000031
【図２３】
0003705826.tif 000032
【図２４】
0003705826.tif 000033