JPH05250123A - マルチウィンドウシステム - Google Patents
マルチウィンドウシステムInfo
- Publication number
- JPH05250123A JPH05250123A JP4047427A JP4742792A JPH05250123A JP H05250123 A JPH05250123 A JP H05250123A JP 4047427 A JP4047427 A JP 4047427A JP 4742792 A JP4742792 A JP 4742792A JP H05250123 A JPH05250123 A JP H05250123A
- Authority
- JP
- Japan
- Prior art keywords
- window
- windows
- image
- rectangle
- work ram
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Landscapes
- Digital Computer Display Output (AREA)
- Image Generation (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
(57)【要約】
【目的】 マルチウィンドウシステムにおける図形の描
画を高速化する。 【構成】 マルチウィンドウシステムは、複数のウィン
ドウ14、16、18を設定することが可能なVRAM
10と、ウィンドウ14、16、18の可視領域16、
18、28、30、32、34を管理するための管理手
段と、VRAM10の画像を表示するためのCRTと、
VRAM10の画像の少なくとも一部をワークRAM1
2に複写し、図形22aを描画するための描画手段と、
ワークRAM12の図形のうち、必要な領域28a、3
0a、32a、34aのみをVRAM10に複写するた
めの複写手段とを含む。
画を高速化する。 【構成】 マルチウィンドウシステムは、複数のウィン
ドウ14、16、18を設定することが可能なVRAM
10と、ウィンドウ14、16、18の可視領域16、
18、28、30、32、34を管理するための管理手
段と、VRAM10の画像を表示するためのCRTと、
VRAM10の画像の少なくとも一部をワークRAM1
2に複写し、図形22aを描画するための描画手段と、
ワークRAM12の図形のうち、必要な領域28a、3
0a、32a、34aのみをVRAM10に複写するた
めの複写手段とを含む。
Description
【0001】
【産業上の利用分野】この発明は複数個のウィンドウを
表示する機能を有するマルチウィンドウシステムに関
し、特に、任意のウィンドウに任意の画像を高速で描画
する機能を有するマルチウィンドウシステムに関する。
表示する機能を有するマルチウィンドウシステムに関
し、特に、任意のウィンドウに任意の画像を高速で描画
する機能を有するマルチウィンドウシステムに関する。
【0002】
【従来の技術】電子計算機などから人間に対して情報を
表示するためのシステムとして、表示画面上に複数のウ
ィンドウを設け、各ウィンドウに別々の情報を表示する
システム、すなわちマルチウィンドウシステムが知られ
ている。マルチウィンドウシステムにおいては、表示画
面上に複数のウィンドウを配置して、各ウィンドウ毎に
別々の図形を描画する処理を行なうことができる。
表示するためのシステムとして、表示画面上に複数のウ
ィンドウを設け、各ウィンドウに別々の情報を表示する
システム、すなわちマルチウィンドウシステムが知られ
ている。マルチウィンドウシステムにおいては、表示画
面上に複数のウィンドウを配置して、各ウィンドウ毎に
別々の図形を描画する処理を行なうことができる。
【0003】マルチウィンドウシステム上で動作する描
画処理に特有の問題として、複数のウィンドウが表示画
面上に設けられている場合に、そのうちの1つのウィン
ドウに図形を描画する際に、実際に表示画面上にその図
形のどの部分を表示し、どの部分を表示しないかを定め
るための問題がある。これは、複数のウィンドウが表示
されている場合、上下に重なり合ったウィンドウのうち
下部のウィンドウの一部が上部のウィンドウに覆い隠さ
れるためである。このように上部のウィンドウによって
覆い隠された部分では、その部分に描画されるべき図形
は表示されない。ウィンドウが複雑な重なり方をした場
合には、マルチウィンドウシステムは、複雑なクリッピ
ングを考えて描画する必要がある。
画処理に特有の問題として、複数のウィンドウが表示画
面上に設けられている場合に、そのうちの1つのウィン
ドウに図形を描画する際に、実際に表示画面上にその図
形のどの部分を表示し、どの部分を表示しないかを定め
るための問題がある。これは、複数のウィンドウが表示
されている場合、上下に重なり合ったウィンドウのうち
下部のウィンドウの一部が上部のウィンドウに覆い隠さ
れるためである。このように上部のウィンドウによって
覆い隠された部分では、その部分に描画されるべき図形
は表示されない。ウィンドウが複雑な重なり方をした場
合には、マルチウィンドウシステムは、複雑なクリッピ
ングを考えて描画する必要がある。
【0004】従来このような場合、次のようにして描画
が実行されていた。図11を参照して、表示画面上に第
1のウィンドウ14と、第2のウィンドウ16と、第3
のウィンドウ18とが表示されているものとする。第1
のウィンドウ14に楕円22を描画する場合を考える。
この場合この楕円22の一部は第2のウィンドウ16お
よび第3のウィンドウ18によって覆い隠される。従来
のマルチウィンドウシステムにおいては、この楕円を描
画する際には、図11に示されるクリッピング図形84
のような、ウィンドウの重なり具合によって定まる複雑
な図形を考え、描画しようとする楕円上の点の1つ1つ
につき、クリッピング図形84の内部にあるか外部にあ
るかを判断し、内部にある場合のみ描画していた。
が実行されていた。図11を参照して、表示画面上に第
1のウィンドウ14と、第2のウィンドウ16と、第3
のウィンドウ18とが表示されているものとする。第1
のウィンドウ14に楕円22を描画する場合を考える。
この場合この楕円22の一部は第2のウィンドウ16お
よび第3のウィンドウ18によって覆い隠される。従来
のマルチウィンドウシステムにおいては、この楕円を描
画する際には、図11に示されるクリッピング図形84
のような、ウィンドウの重なり具合によって定まる複雑
な図形を考え、描画しようとする楕円上の点の1つ1つ
につき、クリッピング図形84の内部にあるか外部にあ
るかを判断し、内部にある場合のみ描画していた。
【0005】
【発明が解決しようとする課題】従来のマルチウィンド
ウシステムにおいては、図形上の点の1つ1つにつきク
リッピング図形の内部にあるか外部にあるかを判断して
表示をするか否かを決定していたために、描画処理が複
雑であってかつその速度が遅いという問題があった。
ウシステムにおいては、図形上の点の1つ1つにつきク
リッピング図形の内部にあるか外部にあるかを判断して
表示をするか否かを決定していたために、描画処理が複
雑であってかつその速度が遅いという問題があった。
【0006】それゆえにこの発明の目的は、マルチウィ
ンドウシステムにおいて、図形の描画処理を高速化する
ことである。
ンドウシステムにおいて、図形の描画処理を高速化する
ことである。
【0007】
【課題を解決するための手段】本発明にかかるマルチウ
ィンドウシステムは、複数個のウィンドウを設定するこ
とが許容される画像を記憶するための第1の画像記憶手
段と、複数個のウィンドウの相互の重複順序を管理する
とともに、重複による各ウィンドウ中の視認可能な領域
を判別して管理するための管理手段と、第1の画像記憶
手段に記憶された画像を表示するための表示手段と、第
1の画像記憶手段に記憶された画像の少なくとも一部を
複写し、任意の図形を、複写された画像上に各ウィンド
ウの重複を考慮せずに描画するための描画手段と、管理
手段による管理に基づいて、図形を描画すべきウィンド
ウの視認可能であってかつ図形が描画された領域を、描
画手段の画像から第1の画像記憶手段に複写するための
複写手段とを含む。
ィンドウシステムは、複数個のウィンドウを設定するこ
とが許容される画像を記憶するための第1の画像記憶手
段と、複数個のウィンドウの相互の重複順序を管理する
とともに、重複による各ウィンドウ中の視認可能な領域
を判別して管理するための管理手段と、第1の画像記憶
手段に記憶された画像を表示するための表示手段と、第
1の画像記憶手段に記憶された画像の少なくとも一部を
複写し、任意の図形を、複写された画像上に各ウィンド
ウの重複を考慮せずに描画するための描画手段と、管理
手段による管理に基づいて、図形を描画すべきウィンド
ウの視認可能であってかつ図形が描画された領域を、描
画手段の画像から第1の画像記憶手段に複写するための
複写手段とを含む。
【0008】
【作用】この発明にかかるマルチウィンドウシステムに
おいては、第1の画像記憶手段の画像の少なくとも一部
が一旦描画手段によって複写された上、複写された画像
上に、各ウィンドウの重複を考えずに図形を描画する処
理が行なわれる。その後、管理手段による管理に基づ
き、図形を描画すべきウィンドウの視認可能であって、
図形が描画された領域を、描画手段によって図形が加え
られた画像から第1の画像記憶手段に複写する。図形の
描画の際には各ウィンドウの重複を考える必要がないた
め、描画処理は高速化できる。
おいては、第1の画像記憶手段の画像の少なくとも一部
が一旦描画手段によって複写された上、複写された画像
上に、各ウィンドウの重複を考えずに図形を描画する処
理が行なわれる。その後、管理手段による管理に基づ
き、図形を描画すべきウィンドウの視認可能であって、
図形が描画された領域を、描画手段によって図形が加え
られた画像から第1の画像記憶手段に複写する。図形の
描画の際には各ウィンドウの重複を考える必要がないた
め、描画処理は高速化できる。
【0009】
【実施例】始めに図1を参照して、本発明にかかるマル
チウィンドウシステムの原理の概略を説明する。図1
(a)を参照して、表示画像を記憶するためのVRAM
(Video Random Access Memo
ry)10に、第1のウィンドウ14と、第2のウィン
ドウ16と、第3のウィンドウ18とが設定されている
ものとする。第1のウィンドウ14には、線画による三
角形20が形成されている。この三角形20は、ウィン
ドウ16、18の部分では表示されていない。
チウィンドウシステムの原理の概略を説明する。図1
(a)を参照して、表示画像を記憶するためのVRAM
(Video Random Access Memo
ry)10に、第1のウィンドウ14と、第2のウィン
ドウ16と、第3のウィンドウ18とが設定されている
ものとする。第1のウィンドウ14には、線画による三
角形20が形成されている。この三角形20は、ウィン
ドウ16、18の部分では表示されていない。
【0010】この第1のウィンドウ14に、点線で示さ
れる楕円22を描画する場合を考える。この楕円22に
ついては、三角形20と同様にウィンドウ16、18の
部分をクリッピングする必要がある。そこで、以下のよ
うにしてVRAM10の画像の一部を他に用意されたワ
ークRAM12(図1(A))にコピーする。このワー
クRAMの容量としては、VRAM10と同じだけ準備
しておくのが望ましい。しかし、ワークRAM12の容
量が必ずしもVRAM10の容量と等しい必要はなく、
これより小さくてもよいし、これより大きくてもよい。
れる楕円22を描画する場合を考える。この楕円22に
ついては、三角形20と同様にウィンドウ16、18の
部分をクリッピングする必要がある。そこで、以下のよ
うにしてVRAM10の画像の一部を他に用意されたワ
ークRAM12(図1(A))にコピーする。このワー
クRAMの容量としては、VRAM10と同じだけ準備
しておくのが望ましい。しかし、ワークRAM12の容
量が必ずしもVRAM10の容量と等しい必要はなく、
これより小さくてもよいし、これより大きくてもよい。
【0011】まず、図1(a)を参照して、描画すべき
楕円22に外接する矩形24を計算により求める。この
矩形24の内、他のウィンドウ16、18によって覆い
隠されていない部分(図1(a)におけるハッチングさ
れた領域)を、矩形領域に分割する。図1(a)の場
合、この領域は矩形28、30、32、34に分割され
る。
楕円22に外接する矩形24を計算により求める。この
矩形24の内、他のウィンドウ16、18によって覆い
隠されていない部分(図1(a)におけるハッチングさ
れた領域)を、矩形領域に分割する。図1(a)の場
合、この領域は矩形28、30、32、34に分割され
る。
【0012】図1(A)を参照して、図1(a)に示さ
れる4つの矩形28、30、32、34内の画像を、そ
のままワークRAM12にコピーする。コピーされた矩
形を矩形28a、30a、32a、34aとする。各矩
形内に描かれた図形はそのまま複写されるため、図1
(a)に示される矩形24内の三角形20はそのまま図
1(A)のワークRAM12に複写され、三角形20a
となっている。
れる4つの矩形28、30、32、34内の画像を、そ
のままワークRAM12にコピーする。コピーされた矩
形を矩形28a、30a、32a、34aとする。各矩
形内に描かれた図形はそのまま複写されるため、図1
(a)に示される矩形24内の三角形20はそのまま図
1(A)のワークRAM12に複写され、三角形20a
となっている。
【0013】続いて図1(B)を参照して、ワークRA
M12内において、図1(a)に示される楕円22に対
応する位置に、楕円22aを描画する。この楕円22a
の描画の際には、図1(a)に示されるウィンドウ1
6、18によるクリッピングなどは一切考慮する必要が
ない。考慮するのは、ワークRAM12自体の外形のみ
である。したがってこの描画処理は、通常の楕円描画の
ための関数を用いて容易に行なうことができる。このと
き、VRAM10の画像自体は、図1(b)に示される
ように、楕円描画前の状態に保たれている。
M12内において、図1(a)に示される楕円22に対
応する位置に、楕円22aを描画する。この楕円22a
の描画の際には、図1(a)に示されるウィンドウ1
6、18によるクリッピングなどは一切考慮する必要が
ない。考慮するのは、ワークRAM12自体の外形のみ
である。したがってこの描画処理は、通常の楕円描画の
ための関数を用いて容易に行なうことができる。このと
き、VRAM10の画像自体は、図1(b)に示される
ように、楕円描画前の状態に保たれている。
【0014】さらに図1(C)、(c)を参照して、ワ
ークRAM12に描画された楕円22aは、次のように
して図1(c)に示されるVRAM10に複写される。
前述のようにワークRAM12にVRAM10から複写
された4つの矩形28a、30a、32a、34aは、
図1(a)に示される第1のウィンドウ14内の、楕円
22に外接する矩形24の内、第2のウィンドウ16お
よび第3のウィンドウ18によって覆い隠されていない
部分である。したがって、ワークRAM12の4つの矩
形28a、30a、32a、34aを再び図1(c)に
示されるようにVRAM10の矩形28、30、32、
34にそのまま複写することにより、楕円22aの内、
ウィンドウ16および18によって覆い隠されていない
部分のみが描かれることになる。
ークRAM12に描画された楕円22aは、次のように
して図1(c)に示されるVRAM10に複写される。
前述のようにワークRAM12にVRAM10から複写
された4つの矩形28a、30a、32a、34aは、
図1(a)に示される第1のウィンドウ14内の、楕円
22に外接する矩形24の内、第2のウィンドウ16お
よび第3のウィンドウ18によって覆い隠されていない
部分である。したがって、ワークRAM12の4つの矩
形28a、30a、32a、34aを再び図1(c)に
示されるようにVRAM10の矩形28、30、32、
34にそのまま複写することにより、楕円22aの内、
ウィンドウ16および18によって覆い隠されていない
部分のみが描かれることになる。
【0015】図1に示されるようにして楕円22を描画
する際には、楕円の上の各点について、その点がクリッ
ピング図形の内部にあるか外部にあるかを逐一判断する
必要がない。楕円そのものは図1(B)に示されるよう
にワークRAM12に、ウィンドウによるクリッピング
などを一切考慮せず容易にかつ迅速に作成することがで
きる。したがって、マルチウィンドウシステムにおい
て、描画を高速化することが可能になる。このような描
画方式を間接描画方式と呼ぶことにする。
する際には、楕円の上の各点について、その点がクリッ
ピング図形の内部にあるか外部にあるかを逐一判断する
必要がない。楕円そのものは図1(B)に示されるよう
にワークRAM12に、ウィンドウによるクリッピング
などを一切考慮せず容易にかつ迅速に作成することがで
きる。したがって、マルチウィンドウシステムにおい
て、描画を高速化することが可能になる。このような描
画方式を間接描画方式と呼ぶことにする。
【0016】図2は、本発明の一実施例にかかるマルチ
ウィンドウシステムの機能ブロック図である。図2を参
照して、このマルチウィンドウシステムは、このマルチ
ウィンドウシステム上で動作する文書処理ソフトウエア
などのアプリケーション36から送られてくる描画命令
に応答して、マルチウィンドウシステム全体を制御して
描画を行なうためのウィンドウ制御部38と、設定され
た複数のウィンドウの各々につき、他のウィンドウによ
って覆い隠されていないために、視認可能な領域(可視
領域と呼ぶ)を矩形に分割し、各ウィンドウ毎にその可
視領域を構成する矩形を表わすデータをリストの形でデ
ータ54として管理するとともに、VRAM10からワ
ークRAM12およびその逆方向での画像の複写の際
に、描画対象となるウィンドウの矩形リストを探索する
ためのウィンドウ可視領域矩形管理部52と、間接描画
動作の制御を行なうための間接描画制御部42と、図1
(a)に示される矩形24のように、描画すべき図形に
外接する矩形を計算するための外接矩形計算部44と、
VRAM10からワークRAM12およびその逆方向へ
の、画像データの一部の一括転送を行なうためのbit
blt(bit block transfer)ハー
ド制御部48と、ワークRAM上12上に所望の図形の
描画を行なうための描画関数群46とを含む。
ウィンドウシステムの機能ブロック図である。図2を参
照して、このマルチウィンドウシステムは、このマルチ
ウィンドウシステム上で動作する文書処理ソフトウエア
などのアプリケーション36から送られてくる描画命令
に応答して、マルチウィンドウシステム全体を制御して
描画を行なうためのウィンドウ制御部38と、設定され
た複数のウィンドウの各々につき、他のウィンドウによ
って覆い隠されていないために、視認可能な領域(可視
領域と呼ぶ)を矩形に分割し、各ウィンドウ毎にその可
視領域を構成する矩形を表わすデータをリストの形でデ
ータ54として管理するとともに、VRAM10からワ
ークRAM12およびその逆方向での画像の複写の際
に、描画対象となるウィンドウの矩形リストを探索する
ためのウィンドウ可視領域矩形管理部52と、間接描画
動作の制御を行なうための間接描画制御部42と、図1
(a)に示される矩形24のように、描画すべき図形に
外接する矩形を計算するための外接矩形計算部44と、
VRAM10からワークRAM12およびその逆方向へ
の、画像データの一部の一括転送を行なうためのbit
blt(bit block transfer)ハー
ド制御部48と、ワークRAM上12上に所望の図形の
描画を行なうための描画関数群46とを含む。
【0017】図3は、図2の機能ブロック図に示される
マルチウィンドウシステムを実現するための電子計算機
のハードウエアの構成図である。図3を参照してこの計
算機は、図2に示される各機能ブロックの動作を、所定
のプログラムを実行することによって実現するためのC
PU56と、CPU56で実行されるプログラムおよび
その他のデータを格納するためのローカルメモリ60
と、CPU56に接続されたVRAM10およびワーク
RAM12と、CPU56から与えられる指令に基づ
き、VRAM10およびワークRAM12相互の間で所
望の画像ブロックの転送を行なうためのbitbltハ
ードロジック58と、VRAM10に格納された画像を
表示するためのCRT(Cathode Ray Tu
be)50とを含む。
マルチウィンドウシステムを実現するための電子計算機
のハードウエアの構成図である。図3を参照してこの計
算機は、図2に示される各機能ブロックの動作を、所定
のプログラムを実行することによって実現するためのC
PU56と、CPU56で実行されるプログラムおよび
その他のデータを格納するためのローカルメモリ60
と、CPU56に接続されたVRAM10およびワーク
RAM12と、CPU56から与えられる指令に基づ
き、VRAM10およびワークRAM12相互の間で所
望の画像ブロックの転送を行なうためのbitbltハ
ードロジック58と、VRAM10に格納された画像を
表示するためのCRT(Cathode Ray Tu
be)50とを含む。
【0018】図4を参照して、bitbltハードロジ
ック58は次のような機能を有する。bitbltハー
ドロジック58は、CPU56(図3参照)から、転送
方向、転送すべきブロックの始点座標、転送すべき画像
ブロックの長さ(高さhおよび幅w)とを受け取り、V
RAM10およびワークRAM12相互の間で指定の画
像ブロックの転送を行なう。転送方向の指定により、V
RAM10からワークRAM12への転送、およびその
逆方向の転送を自由に選択することができる。また、V
RAM10からワークRAM12への転送の際には、V
RAM10上で、ワークRAM12に転送すべき矩形領
域の左上の頂点(始点)の座標(x1 、y1 )と、この
矩形領域の高さhおよび幅wを指定する。これによりワ
ークRAM12の対応する場所にその矩形領域のデータ
が転送される。同様にワークRAM12からVRAM1
0への転送の際には、転送すべき画像データの矩形領域
の左上の頂点座標(x2 ,y2 )および領域の高さh、
幅wを指定することによりVRAM10の対応領域への
画像転送を行なうことができる。
ック58は次のような機能を有する。bitbltハー
ドロジック58は、CPU56(図3参照)から、転送
方向、転送すべきブロックの始点座標、転送すべき画像
ブロックの長さ(高さhおよび幅w)とを受け取り、V
RAM10およびワークRAM12相互の間で指定の画
像ブロックの転送を行なう。転送方向の指定により、V
RAM10からワークRAM12への転送、およびその
逆方向の転送を自由に選択することができる。また、V
RAM10からワークRAM12への転送の際には、V
RAM10上で、ワークRAM12に転送すべき矩形領
域の左上の頂点(始点)の座標(x1 、y1 )と、この
矩形領域の高さhおよび幅wを指定する。これによりワ
ークRAM12の対応する場所にその矩形領域のデータ
が転送される。同様にワークRAM12からVRAM1
0への転送の際には、転送すべき画像データの矩形領域
の左上の頂点座標(x2 ,y2 )および領域の高さh、
幅wを指定することによりVRAM10の対応領域への
画像転送を行なうことができる。
【0019】図2に示されるウィンドウ可視領域矩形管
理部52は、次のようにして各ウィンドウの可視領域を
矩形リストとして管理している。図5を参照して、VR
AM10に第1のウィンドウ14と第2のウィンドウ1
6と、第3のウィンドウ18とが設定されているものと
する。そして第1のウィンドウ14は、第2のウィンド
ウ16および第3のウィンドウ18によってそれぞれ部
分的に覆い隠されているものとする。これら各ウィンド
ウ14,16,18はいずれも矩形であるために、ウィ
ンドウ14のうちウィンドウ16、18のいずれによっ
ても覆い隠されていない可視領域は、3つの矩形62、
64、66に分割することができる。ウィンドウ可視領
域矩形管理部52は、このように各ウィンドウの可視領
域を1または複数の矩形領域に分割し、ウィンドウ可視
領域矩形リストデータ54として管理する。
理部52は、次のようにして各ウィンドウの可視領域を
矩形リストとして管理している。図5を参照して、VR
AM10に第1のウィンドウ14と第2のウィンドウ1
6と、第3のウィンドウ18とが設定されているものと
する。そして第1のウィンドウ14は、第2のウィンド
ウ16および第3のウィンドウ18によってそれぞれ部
分的に覆い隠されているものとする。これら各ウィンド
ウ14,16,18はいずれも矩形であるために、ウィ
ンドウ14のうちウィンドウ16、18のいずれによっ
ても覆い隠されていない可視領域は、3つの矩形62、
64、66に分割することができる。ウィンドウ可視領
域矩形管理部52は、このように各ウィンドウの可視領
域を1または複数の矩形領域に分割し、ウィンドウ可視
領域矩形リストデータ54として管理する。
【0020】図6は、ウィンドウ可視領域矩形リストデ
ータ54の構成を示す模式図である。図6を参照してウ
ィンドウ可視領域矩形リストデータ54は、ウィンドウ
管理テーブル68と、ウィンドウ矩形リスト部70とを
含む。
ータ54の構成を示す模式図である。図6を参照してウ
ィンドウ可視領域矩形リストデータ54は、ウィンドウ
管理テーブル68と、ウィンドウ矩形リスト部70とを
含む。
【0021】ウィンドウ管理テーブル68は、設定され
ている各ウィンドウ毎にウィンドウ番号を割当て、各ウ
ィンドウの可視領域を構成する矩形数と、各ウィンドウ
の可視領域を構成する矩形をリスト形式で示す矩形リス
トへのポインタとを表形式で格納したものである。
ている各ウィンドウ毎にウィンドウ番号を割当て、各ウ
ィンドウの可視領域を構成する矩形数と、各ウィンドウ
の可視領域を構成する矩形をリスト形式で示す矩形リス
トへのポインタとを表形式で格納したものである。
【0022】ウィンドウ矩形リスト部70は、各ウィン
ドウ毎に設けられたウィンドウ矩形リスト72、74、
76などを含む。
ドウ毎に設けられたウィンドウ矩形リスト72、74、
76などを含む。
【0023】各ウィンドウ矩形リスト72、74、76
などは、各ウィンドウの可視領域を構成する矩形の各々
につき、その左上の頂点の座標(xij、Yij)と、右下
の頂点の座標(xij、yij)(ただしiはウィンドウ番
号を、jはリスト中の矩形の順位をそれぞれ示す)から
なる組をリスト形式で格納したものである。
などは、各ウィンドウの可視領域を構成する矩形の各々
につき、その左上の頂点の座標(xij、Yij)と、右下
の頂点の座標(xij、yij)(ただしiはウィンドウ番
号を、jはリスト中の矩形の順位をそれぞれ示す)から
なる組をリスト形式で格納したものである。
【0024】図1〜図9を参照して、この実施例のマル
チウィンドウシステムは以下のように動作する。CPU
56(図3参照)で実行されるプログラムのフローチャ
ートを示す図7を参照して、ステップS(以下単にSと
言う)01において、アプリケーション36(図2参
照)から、所定のウィンドウ(たとえば第1のウィンド
ウ14)上に所定の図形(たとえば楕円)を描画すべき
指示があったものとする。
チウィンドウシステムは以下のように動作する。CPU
56(図3参照)で実行されるプログラムのフローチャ
ートを示す図7を参照して、ステップS(以下単にSと
言う)01において、アプリケーション36(図2参
照)から、所定のウィンドウ(たとえば第1のウィンド
ウ14)上に所定の図形(たとえば楕円)を描画すべき
指示があったものとする。
【0025】S02において、描画すべき図形に外接す
る矩形を計算する処理が行なわれる。この矩形は、図1
(a)、図8、図9に矩形24として示されている。こ
の計算は図2に示される外接矩形計算部44に相当す
る。
る矩形を計算する処理が行なわれる。この矩形は、図1
(a)、図8、図9に矩形24として示されている。こ
の計算は図2に示される外接矩形計算部44に相当す
る。
【0026】続いてS03において、描画するウィンド
ウに対して設けられた可視領域矩形リストの探索が、図
2に示されるウィンドウ可視領域矩形管理部52に相当
する処理により行なわれる。この場合ウィンドウ可視領
域矩形リストデータ54に格納されている、図8に示さ
れる矩形62、64、68を特定するデータが探索され
る。
ウに対して設けられた可視領域矩形リストの探索が、図
2に示されるウィンドウ可視領域矩形管理部52に相当
する処理により行なわれる。この場合ウィンドウ可視領
域矩形リストデータ54に格納されている、図8に示さ
れる矩形62、64、68を特定するデータが探索され
る。
【0027】続いてS04において、図9を参照して、
探索された3つの矩形62、64、68と、S02にお
いて計算された描画図形外接矩形24との間の共通領域
が、互いのANDをとることにより求められる。求めら
れた領域はいずれも矩形領域となる。これら図形は図9
における斜線が施された矩形78、80、82として求
められる。結局、この楕円22の描画により、画面上に
おいて変更される領域はこの3つの矩形領域78、8
0、82のみ、ということになる。これら矩形78、8
0、82を描画矩形と呼ぶこととする。
探索された3つの矩形62、64、68と、S02にお
いて計算された描画図形外接矩形24との間の共通領域
が、互いのANDをとることにより求められる。求めら
れた領域はいずれも矩形領域となる。これら図形は図9
における斜線が施された矩形78、80、82として求
められる。結局、この楕円22の描画により、画面上に
おいて変更される領域はこの3つの矩形領域78、8
0、82のみ、ということになる。これら矩形78、8
0、82を描画矩形と呼ぶこととする。
【0028】続いてS05〜S08により、これら描画
矩形をワークRAM12にコピーする処理が行なわれ
る。この場合S04で求められた描画矩形は、描画矩形
リストとして管理される。
矩形をワークRAM12にコピーする処理が行なわれ
る。この場合S04で求められた描画矩形は、描画矩形
リストとして管理される。
【0029】続いてS05〜S08で、この求められた
描画矩形リスト内の各描画矩形をVRAM10からワー
クRAM12にすべて複写する処理が行なわれる。まず
S05で、変数Nとして、描画矩形リストの矩形数を設
定する処理が行なわれる。さらに繰返し制御のための変
数iに1が代入される。
描画矩形リスト内の各描画矩形をVRAM10からワー
クRAM12にすべて複写する処理が行なわれる。まず
S05で、変数Nとして、描画矩形リストの矩形数を設
定する処理が行なわれる。さらに繰返し制御のための変
数iに1が代入される。
【0030】S06で、iがNよりも大きいか否かにつ
いての判断が行なわれる。iがNよりも大きい場合には
処理はS09に進むが、それ以外の場合には処理はS0
7に進む。
いての判断が行なわれる。iがNよりも大きい場合には
処理はS09に進むが、それ以外の場合には処理はS0
7に進む。
【0031】S07では、描画矩形リストのi番目の矩
形領域をVRAM10からワークRAM12にコピーす
る処理が行なわれる。この処理は図2に示されるbit
bltハード制御部48に相当し、図3に示されるbi
tbltハードロジック58に対して、転送すべき矩形
領域を特定するための始点座標および高さ、幅を与える
ことにより行なわれる。
形領域をVRAM10からワークRAM12にコピーす
る処理が行なわれる。この処理は図2に示されるbit
bltハード制御部48に相当し、図3に示されるbi
tbltハードロジック58に対して、転送すべき矩形
領域を特定するための始点座標および高さ、幅を与える
ことにより行なわれる。
【0032】続いてS08で、iの内容を1インクリメ
ントする処理が行なわれ、制御は再びS06に戻る。
ントする処理が行なわれ、制御は再びS06に戻る。
【0033】したがってS06における判断の答えがY
ESとなった場合には、求められた描画矩形リスト内の
描画矩形のすべてについて、ワークRAM12への複写
が完了したことになる。複写結果が図10に示される。
ESとなった場合には、求められた描画矩形リスト内の
描画矩形のすべてについて、ワークRAM12への複写
が完了したことになる。複写結果が図10に示される。
【0034】S09において、図10に示されるよう
に、ワークRAM12において、描画すべき図形(この
例の場合には楕円22)を、図2に示される描画関数群
46を用いて描画する処理が行なわれる。この描画の
際、ウィンドウ同士の重なりを考慮する必要は全くな
い。考慮すべきものとしては、ワークRAM12自体の
領域のみである。
に、ワークRAM12において、描画すべき図形(この
例の場合には楕円22)を、図2に示される描画関数群
46を用いて描画する処理が行なわれる。この描画の
際、ウィンドウ同士の重なりを考慮する必要は全くな
い。考慮すべきものとしては、ワークRAM12自体の
領域のみである。
【0035】続いてS10〜S13の処理により、ワー
クRAM12に描画された楕円のうち、必要な部分のみ
をVRAM10に再転送する処理が行なわれる。まずS
10で、変数Nとして、描画矩形リストの矩形数が設定
される。また繰返し制御のための変数iに、初期値とし
て1が代入される。
クRAM12に描画された楕円のうち、必要な部分のみ
をVRAM10に再転送する処理が行なわれる。まずS
10で、変数Nとして、描画矩形リストの矩形数が設定
される。また繰返し制御のための変数iに、初期値とし
て1が代入される。
【0036】S11で、iがNよりも大きいか否かにつ
いての判断が行なわれる。この判断の答えがYESとな
ればすべての描画矩形をワークRAM12からVRAM
10に転送し終わったということであるから処理は終了
する。S11における判断の答えがNOである場合には
処理はS12に進む。
いての判断が行なわれる。この判断の答えがYESとな
ればすべての描画矩形をワークRAM12からVRAM
10に転送し終わったということであるから処理は終了
する。S11における判断の答えがNOである場合には
処理はS12に進む。
【0037】S12では、i番目の矩形領域をワークR
AM12からVRAM10にコピーする処理が行なわれ
る。このコピーも、bitbltハード制御部48(図
2参照)から図3に示されるbitbltハードロジッ
ク58に対して所定の指示を与えることにより行なわれ
る。
AM12からVRAM10にコピーする処理が行なわれ
る。このコピーも、bitbltハード制御部48(図
2参照)から図3に示されるbitbltハードロジッ
ク58に対して所定の指示を与えることにより行なわれ
る。
【0038】さらにS13でiを1インクリメントする
処理が行なわれて再び処理はS11に戻る。このように
S11〜S13の処理を繰返し「i>N」という条件が
成立するまで行なうことにより、最終的に図11に示さ
れるような楕円22を第1のウィンドウ14上に表示す
ることができる。
処理が行なわれて再び処理はS11に戻る。このように
S11〜S13の処理を繰返し「i>N」という条件が
成立するまで行なうことにより、最終的に図11に示さ
れるような楕円22を第1のウィンドウ14上に表示す
ることができる。
【0039】以上のように本実施例にかかるマルチウィ
ンドウシステムによれば、複雑なウィンドウが互いに重
なり合っている場合にも、描画自体はそれらウィンドウ
の重なりを全く考慮する必要がなく、したがって非常に
高速に行なうことができる。VRAM10からワークR
AM12への画像の複写およびその逆の複写もbitb
ltハードロジック58を用いて高速に行なうことがで
きるために、複雑なウィンドウが互いに重なり合った画
面上で所定のウィンドウに図形を描画する際の処理を高
速に行なうことができる。
ンドウシステムによれば、複雑なウィンドウが互いに重
なり合っている場合にも、描画自体はそれらウィンドウ
の重なりを全く考慮する必要がなく、したがって非常に
高速に行なうことができる。VRAM10からワークR
AM12への画像の複写およびその逆の複写もbitb
ltハードロジック58を用いて高速に行なうことがで
きるために、複雑なウィンドウが互いに重なり合った画
面上で所定のウィンドウに図形を描画する際の処理を高
速に行なうことができる。
【0040】上述の実施例においては、描画を行なうに
際し一旦描画矩形を求め、これをワークRAM12に転
送して図形の描画が行なわれた。しかしこの発明はこれ
には限定されず、たとえばワークRAM12への転送の
際に描画矩形リストをあえて求めずに、対象となるウィ
ンドウの可視領域の矩形リストに含まれる矩形のみをワ
ークRAM12にコピーしてもよい。さらに、ウィンド
ウ14を、他のウィンドウによって覆い隠されている部
分も含めてすべてワークRAM12にコピーしてもよ
い。要は、ワークRAM12で図形をウィンドウの重な
りを考慮せず描画し、必要な部分のみを描画矩形リスト
にしたがってVRAM10に再転送すればよい。また、
再転送する領域は上述の描画矩形よりも大きくても、他
のウィンドウを含まない領域であればよい。
際し一旦描画矩形を求め、これをワークRAM12に転
送して図形の描画が行なわれた。しかしこの発明はこれ
には限定されず、たとえばワークRAM12への転送の
際に描画矩形リストをあえて求めずに、対象となるウィ
ンドウの可視領域の矩形リストに含まれる矩形のみをワ
ークRAM12にコピーしてもよい。さらに、ウィンド
ウ14を、他のウィンドウによって覆い隠されている部
分も含めてすべてワークRAM12にコピーしてもよ
い。要は、ワークRAM12で図形をウィンドウの重な
りを考慮せず描画し、必要な部分のみを描画矩形リスト
にしたがってVRAM10に再転送すればよい。また、
再転送する領域は上述の描画矩形よりも大きくても、他
のウィンドウを含まない領域であればよい。
【0041】以上、この発明を一実施例に基づいて詳細
に説明した。しかし本発明は上述の実施例には限定され
ず、他に様々に変形して実施することが可能なことは言
うまでもない。
に説明した。しかし本発明は上述の実施例には限定され
ず、他に様々に変形して実施することが可能なことは言
うまでもない。
【0042】
【発明の効果】以上のように本発明によれば、図形の描
画自体をウィンドウの重なり具合を考慮せず、高速で行
なうことができる。従来のように描画の際に、描画図形
の上の各点につき描画すべきか否かを判断する必要はな
く、マルチウィンドウシステムにおける図形の描画を高
速で行なうことが可能になる。
画自体をウィンドウの重なり具合を考慮せず、高速で行
なうことができる。従来のように描画の際に、描画図形
の上の各点につき描画すべきか否かを判断する必要はな
く、マルチウィンドウシステムにおける図形の描画を高
速で行なうことが可能になる。
【0043】その結果、マルチウィンドウシステムにお
ける図形の描画を高速化することができる。
ける図形の描画を高速化することができる。
【図1】本発明の概要を模式的に示す図である。
【図2】本発明の一実施例にかかるマルチウィンドウシ
ステムの機能ブロック図である。
ステムの機能ブロック図である。
【図3】マルチウィンドウシステムを実現するためのハ
ードウエアのブロック図である。
ードウエアのブロック図である。
【図4】bitbltハードロジックの機能を示す模式
図である。
図である。
【図5】ウィンドウの可視領域を分割して得られる矩形
を示す、VRAMの模式図である。
を示す、VRAMの模式図である。
【図6】ウィンドウ可視領域矩形リストデータの内容を
示す模式図である。
示す模式図である。
【図7】本発明のマルチウィンドウシステムを実現する
ためのプログラムのフローチャートである。
ためのプログラムのフローチャートである。
【図8】描画図形外接矩形リストを示す、VRAM10
の模式図である。
の模式図である。
【図9】描画矩形を示すVRAM10の模式図である。
【図10】ワークRAMに転送された描画矩形および描
画される楕円を示すワークRAMの模式図である。
画される楕円を示すワークRAMの模式図である。
【図11】マルチウィンドウシステムにおける図形のク
リッピングの状態を示す模式図である。
リッピングの状態を示す模式図である。
10 VRAM 12 ワークRAM 14、16、18 ウィンドウ 24 外接矩形 38 ウィンドウ制御部 42 間接描画制御部 44 外接矩形計算部 46 描画関数群 48 bitbltハード制御部 50 CRT 52 ウィンドウ可視領域矩形管理部 54 ウィンドウ可視領域矩形リストデータ 56 CPU 58 bitbltハードロジック
Claims (1)
- 【請求項1】 複数個のウィンドウを設定することが許
容される画像を記憶するための第1の画像記憶手段と、 前記複数個のウィンドウの相互の重複順序を管理すると
ともに、重複による各前記ウィンドウ中の視認可能な領
域を判別して管理するための管理手段と、 前記第1の画像記憶手段に記憶された画像を表示するた
めの表示手段と、 前記第1の画像記憶手段に記憶された画像の少なくとも
一部を複写し、任意の図形を前記複写された画像上に、
各ウィンドウの重複を考慮せずに描画するための描画手
段と、 前記管理手段によるウィンドウの管理に基づいて、前記
図形を描画すべきウィンドウの視認可能であってかつ前
記図形の描画された領域を、前記描画手段の画像から前
記第1の画像記憶手段に複写するための複写手段とを含
む、マルチウィンドウシステム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4047427A JPH05250123A (ja) | 1992-03-05 | 1992-03-05 | マルチウィンドウシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4047427A JPH05250123A (ja) | 1992-03-05 | 1992-03-05 | マルチウィンドウシステム |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH05250123A true JPH05250123A (ja) | 1993-09-28 |
Family
ID=12774858
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4047427A Withdrawn JPH05250123A (ja) | 1992-03-05 | 1992-03-05 | マルチウィンドウシステム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH05250123A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014179031A (ja) * | 2013-03-15 | 2014-09-25 | Takumi Corp | 画像処理装置、画像処理方法、およびプログラム |
-
1992
- 1992-03-05 JP JP4047427A patent/JPH05250123A/ja not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014179031A (ja) * | 2013-03-15 | 2014-09-25 | Takumi Corp | 画像処理装置、画像処理方法、およびプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5191644A (en) | Multiwindow control system | |
US4819189A (en) | Computer system with multiwindow presentation manager | |
EP0806756B1 (en) | Dymamic translucent windows in a graphical user interface | |
JPH0766317B2 (ja) | 表示制御方法 | |
JP3995114B2 (ja) | スイッチ画像表示方法 | |
JPH05250123A (ja) | マルチウィンドウシステム | |
JPH0322014A (ja) | メニュー選択方法 | |
JP2855827B2 (ja) | 地図検索方法 | |
JPH11338456A (ja) | 地図表示システム及びそれにおける画像スクロール処理方法 | |
JP2969924B2 (ja) | 文書処理装置 | |
JPH04288593A (ja) | 画像表示装置 | |
JPS6360671A (ja) | 画像処理装置およびその方法 | |
JP3028543B2 (ja) | 図形の再表示方式 | |
JP2906643B2 (ja) | 文書処理装置 | |
JP2680076B2 (ja) | マルチウィンドウの画面表示方法 | |
JPH08249481A (ja) | 図面処理装置 | |
JP2714114B2 (ja) | グラフィック処理方法及びグラフィックシステム | |
JPS6159484A (ja) | セグメント制御方式 | |
JP2595884B2 (ja) | ラバーバンド枠表示装置 | |
JP2545828B2 (ja) | デ−タ表示装置 | |
JPH05189181A (ja) | 表示方式 | |
JP2665206B2 (ja) | 表画面描画処理方式 | |
JP2000207087A (ja) | 表示図形選択方法 | |
JPH0743582B2 (ja) | 多重画面表示用計算システム | |
JPH0441832B2 (ja) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 19990518 |