JPH08504961A - ウィンドウ型及び他の表示オペレーションのためのグラフィックス制御プレーン - Google Patents

ウィンドウ型及び他の表示オペレーションのためのグラフィックス制御プレーン

Info

Publication number
JPH08504961A
JPH08504961A JP6514353A JP51435394A JPH08504961A JP H08504961 A JPH08504961 A JP H08504961A JP 6514353 A JP6514353 A JP 6514353A JP 51435394 A JP51435394 A JP 51435394A JP H08504961 A JPH08504961 A JP H08504961A
Authority
JP
Japan
Prior art keywords
window
writable
plane
pixel
frame buffer
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.)
Granted
Application number
JP6514353A
Other languages
English (en)
Other versions
JP3413201B2 (ja
Inventor
デレク レンツ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Publication of JPH08504961A publication Critical patent/JPH08504961A/ja
Application granted granted Critical
Publication of JP3413201B2 publication Critical patent/JP3413201B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/14Display of multiple viewports

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Generation (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Digital Computer Display Output (AREA)

Abstract

(57)【要約】 本発明は、複数のウインドウを表示するコンピュータ・グラフィックス・システムに於て画素表示及びアップデートを制御するシステム及び方法である。当装置は表示する画素データを格納するフレーム・バッファを備えている。フレーム・バッファは、画素が実行中のウインドウの可視部分にあるかどうかを表示するように構成された書き込み可能プレーンを備えている。当装置はまた、ウインドウ・データ構造を格納するためのメモリを備え、そのデータ構造は、書き込み可能プレーンを効率的に管理するため、ウインドウ優先順位、ウインドウ境界、ウインドウ共通部分を含んでいる。グラフィックス・サーバは、画素をフレーム・バッファに書き込むかどうかを決定するが、その決定は、書き込み可能プレーン及びウインドウ・クリップ境界に基づいて行われる。フロント及びバックのフレーム・バッファの選択及びビデオモードの選択のためにいくつかのプレーンをオプションとしてさらに設けてもよい。さらにその上、画素が1つのオブジェクトに対して1回のみ書き込まれるかどうかを示すための1回書き込みプレーンを設けてもよい。

Description

【発明の詳細な説明】 ウインドウ型及び他の表示オペレーションのための グラフィックス制御プレーン (Graphics Control Planes For Windowing And Other Display Operations) 発明の背景 1.産業上の利用分野 本発明は、一般にはラスタ・グラフィックス・システムの分野に関し、よ り具体的には、複数のウインドウを表示するシステムにおいてウインドウ描画を 制御するシステム及び方法に関する。 2.関連技術 現代コンピュータ・システムでは、コンピュータ・グラフィックス技術が 幅広く使用されている。計算能力の面から見てパーソナルコンピュータからワー クステーション、さらにグラフィックス専用システムに亘る広い分野のコンピュ ータ・システムで、ラスタ・グラフィックス技術はグラフィックス画像を表示す る最も有力なメカニズムになってきた。 ラスタ・グラフィックス・システムでは、水平表示線は、ラスタ線と呼ば れ、一列の画素(ピクセル又はPEL)で表される。全画面は、ラスタ線の集合 を矩形に配列して得られるが、この配列をラスタと呼ぶ。したがって、ラスタは 、1つ以上の画像を保持するのに用いられるが、画素のマトリックスから出来て いることになる。この画素 マトリックスは、メモリ・バッフアにディジタル情報として記憶される。特に、 表示装置に転送されるデータを保持するように設計されているメモリ・バッファ を「フレーム・バッファ」と呼ぶ。 単色システムでは、各画素は普通、フレーム・バッフアの1ビットで表さ れる。ビットの状態(即ち、1又は0)は対応するビットがオンかオフ(即ち、 表示上白又は黒)かを決定する。そのようなシステムでは、メモリ・バッファは ビットマップと呼ばれる。 カラーや3次元(3D)画像のようなより複雑な画像を保持するように設 計されたシステムでは、各画素は、その画素に関する情報を含む複数のビットで 表される。各画素を表すビットには、色情報を記憶するビット、深さの情報を表 すビット等が含まれる。1画素当り複数ビットを持つシステムのメモリ・バッフ ァ内にある全ビットのマトリックスをピックスマップと呼ぶ。 画像を表示するには、通常ピックスマップのビットはフレーム・バッフア から一度にラスタ線1本の単位で逐次走査される。走査されたデータは、表示装 置(最も普通にはCRTビデオモニタ)に転送される。CRTモニタ以外の表示 装置については、通常似通ってはいるが違った走査及び表示条件がある。 システムの機能が向上して拡張グラフィックスを提供出来るようになるに 従って、システムの複雑さも増す。例えば、現代のグラフィックス・システムで は、より高い分解能(単位面積当りの画素数の増加)及びより多くの色の選択が 可能になってきた。こうした機能拡張にはピックスマップを構成する大量のビッ ト数が必要となる。 メモリの価格が低下するにつれ、システムは同じ価格目標でより向上した 機能を備えたものになってきている。現在入手可能な低価格のランダム・アクセ ス・メモリ(RAM)及び専用ビデオRAM(VRAM)のおかげで、3Dグラ フィックスを表示するのに、大容量、高速フレーム・バッフアは極くありきたり のものとなって来ている。 3Dラスタ・グラフイックス・システムでは「ダブル・バッフアリング」 として知られている手法を用いる。ダブルバッファリングに おいては、1つのフレーム・バッファから画豫が表示されている時に、第2のフ レーム・バッファではデータが全てクリアされ、次の表示のための新しい画像に 書き換えられる。 この手法では、ユーザーが前の画像を見ている間に、フレーム・バッファ をアップデートすることが出来る。このため、フレーム・バッファが消去され再 描画される間に起きる画面のフリッカリングを防ぐことが出来る。通常、表示装 置に画像を表示するのにかかる時間に比して描画するには非常に長い時間がかか るのでこの手法が必要である。 ラスタ・グラフィックス・システムに関する詳しい解説には、アデイソン ・ウエズリー出版社(Addison-Wcsley Publishing Company)より1990年発行の 、ジェイムス・D・フオーリー(James D.Foley、アンドリー・ヴァン・ダム( Andries van Dam)、スティーブン・K・ファイナー(Steven K.Feiner)、ジ ョン・F・ヒユーズ(John F.Hughes)の著書、「Computer Graphics:Princip la and Practice(コンピュータ・グラフィックス:原理と実践)」第2版を参 考にすること。特に1章、4.3章、18章を参照のこと。 現代のコンピュータ・マーケットで一段と普及してきたものは「ウインド ウ」である。PCやワークステーションでのウインドウ機能は極く普通のもので ある。実際、ウインドウは、MicrosoftWindows、X Windows Systemのようなグ ラフィックス・ユーザ・インタフエース、Apple Macintoshコンピュータ用の種 々のアプリケーションで欠くことの出来ない要素となっている。 ラスタ・グラフィックス技術とウインドウ環境を結合することの必要性は 、これら2つの技術が進化していく過程で自然に生まれてくるものである。しか し、そのような結合には数多くの問題が存在する。特に、1つの問題は、動画を 表示装置に表示しながら、ダブルバッファの画像を入れ替えるというものである 。 動的フレーム・バッファでは、全バッファを高速にスワップしたりクリア することが容易で、従って全表示領域の内容を変えることは容易である。しかし 、ウインドウ画面では、表示の一部のみがアッ プデートされるので、いくつかの問題が生じる。ある時点においては、画面のあ るサブセットのみがある1つのウインドウに割り当てられている。どのウインド ウも、ダブルバッファ方式のフレーム・バッファのどちらのバッファを使用して もよいので、各ウインドウに選択されたバッファは独立に制御されなくてはなら ない。 しかも、常時、前景バッファ(即ち、表示されてるバッファ)は各ウイン ドウに対して個別に選択されなくてはならない。しかし、ウインドウは表示のど の画素から始まり、どの画素で終了してもよいので、この選択は、表示時に各画 素に対しなされねばならない。 従来のグラフィックス・システムでは、描画をウインドウ内に制御するの にウインドウID(WID)が用いられる。WIDを定義する前に、フレーム・ バッファで用いられる「プレーン」という用語を定義するのが有用と思われる。 プレーンとは、全ての画素で同一のビットから成るピックスマップのサブセット である。プレーンは、ピックスマップの「水平」断面ともいえる。従って、例え ば、各画素の第1ビットからなる集合はプレーンを作る。 WIDを用いるシステムでは、フレーム・バッファ・メモリにいくつかの プレーンを追加する。これらのプレーンは、WIDと呼ばれるコードを保持する 。WIDコードは、各画素が属するウインドウを指定する。画素がフレーム・バ ッファに送られる時、そのWIDコードが、画面上のその位置に表示されるウイ ンドウを指定するWIDと比較される。もしその比較が一致すれば、書き込み可 能信号が生成され、その画素はフレーム・バッファに記憶される。もしWIDの 比較が一致しなければ、書き込み可能信号は生成されず、その画素はフレーム・ バッフアに書き込まれない。 複数のフレーム・バッファを用いるシステムでは、WIDは、画素データ を書き込むフレーム・バッファを制御するのに用いられる。 WIDに関するより詳しい説明には、Tsujidoに付与された米国特許番号4 ,769,762、Westberg他に付与された米国特許番号5,101,365、及びCarrie他に付 与された米国特許番号5,091,717を参 照のこと。 WIDシステムにはいくつかの欠点がある。まず第1に、WIDシステム には、データ及びアドレス中のWIDコードをデコードし、それらが一致するか どうかを判定するための回路が余分に必要となる。第2に、WIDのサイズに制 限があるため、複雑な「WID交換」ソフトウエアを使わないかぎり、この手法 は限られた数のウインドウしか管理することが出来ない。普通のウインドウ・シ ステムでも多くのウインドウが要求される。例えば、3ビットのWIDは、8個 の唯一無二のWIDを与えるだけである。第3には、複雑なシステムにおいてW IDをインプリメントするには多くのプレーンが必要となるが、その理由は、シ ステムのウインドウの数が多くなれば、それだけWIDプレーンの数も多くなる からである。例えば、256ウインドウ・システムでは8個のWIDプレーンが必 要となる。これは1個の画素につき8ビットとなる。1kx2kのフレーム・バッフ ァでは、8個のWIDプレーンをサポートするには16Mビットが必要となる。 発明の要約 本発明は、複数のウインドウをサポート可能なグラフィックス・システム の表示装置への書き込みシステム及びその方法を提供するものである。本発明は また、グラフィックス・システムのビデオ機能を制御するのに用いるグラフィッ クス制御プレーンと呼ばれるいくつかのプレーンを提供する。フロント/バック ・バッフア選択プレーンは、画素が、デュアルバッファ・システムのフロント・ バッファかバック・バッファのどちらに属するかを選択するのに用いられる。ビ デオモード選択プレーンは、複数の画素形式のどれが選択されているかを示す。 例えば、ビデオモード選択プレーンは、12ビット又は24ビットRGB画素を選択 するのに用いることが出来る。さらに新たなビデオモード選択プレーンを加え、 違ったビデオモードをサポートするような柔軟性を提供するようにすることも出 来る。違ったモードの1つの例 は、8プレーンのカラー・インデックス・モードである。 書き込み可能プレーンは、グラフィックス・システムが矩形及び非矩形ウ インドウをサポート可能にするための重要な機能である。書き込み可能プレーン は、画素がウインドウにあるかどうか、さらに具体的には、その画素が表示され るウインドウの1部にあるかどうかを絶えず記録する。 さらに、1つのオブジェクトに対して1回しか書き込まないようにするシ ステムの要件をサポートするために1回書き込みプレーンを含めることも出来る 。この要件は、X Windows環境のような特定の環境でのみ必要である。 グラフィックス制御プレーンを用いて、さらに具体的には、書き込み可能 プレーンを用いることにより、従来のウインドウ描画手法に比ベハードウエアを 節約できるようになる。書き込み可能プレーンは、フレーム・バッフア・メモリ のただ1個のプレーンのコストでウインドウ・システムに大きな柔軟性をもたら す。 書き込み可能プレーンをサポートするため、インポートされたウインドウ ・パラメータを定義出来るようウインドウ・データ構造を確立する。ウインドウ ・データ構造は、相対的なウインドウ優先順位(即ち、あるウインドウが他のウ インドウに対して上に来るか下に来るか)、ウインドウ・クリップ境界のような ウインドウの定義、フィルパターンやブラシの定義を含んでいる。ウインドウ・ データ構造はまた、1つのウインドウが少なくも1つの他のウインドウと重なり 合う共通部分領域を定義する共通部分情報も含んでいる。共通部分領域データ構 造は、ウインドウ間の共通部分領域、即ち、その座標及びその共通部分領域を作 る重なり合ったウインドウを定義する。 システムは、データ構造を用い、オブジェクトを描画するウインドウが他 のウインドウで完全に隠れているか、部分的に隠れているか、全く隠れていない かを判定する。もし完全に隠れているなら描画動作は終了し、そのウインドウに 対する全ての画素は捨て去られる。もし全く隠れていなければ、ウインドウ・ク リップ境界情報を用いて 画素をウインドウに描画する。 もしウインドウが他のウインドウで部分的に隠れていれば、システムは、 最後のオペレーシヨン以後ウインドウの定義が変更されたかどうかを決定する。 もしそうなら、書き込み可能プレーンをアップデートし、ウインドウのどの部分 が現在隠れていないかを示す。もしウインドウの定義が変更されていなければ、 書き込み可能プレーンをアップデートする必要はない。システムは次に、書き込 み可能プレーンと共にウインドウ・クリップ境界を用い、そのウインドウのフレ ーム・バッファに各画素を書き込むかどうかを決定する。 本発明の特長は、画素をフレーム・バッファに書き込むかどうかの決定を 1個の書き込み可能プレーンを用いて行い得ることである。これは、従来のウイ ンドウID(WID)システムに比べて大変有利である。従来のシステムでは、 2nのウインドウをインプリメントするにはn個のプレーンとそれらn個のプレ ーンを解釈する別のハードウエアが必要であった。 本発明の他の特長は、もしウインドウの定義が変更されていなければ、書 き込み制御プレーンを、オペレーションとオペレーションの間にアップデートし なくてもよいことである。これは、ウインドウの隠れた領域と隠れていない領域 が相補的な形式で定義出来るからである。この場合、変化するものは単に、画素 をフレーム・バッファに書き込むかどうかを決定するために選択されたハードウ エアテストだけである。書き込み可能プレーンの再書き込みが必要ないため、こ れにより節約が可能となる。 また別の特長は、書き込み可能プレーンを用いて、非矩形ウインドウを利 用するウインドウ・アプリケーシヨンを簡単にサポートすることが出来ることで ある。 本発明の他の機能及び特長、さらに本発明の種々の実施例の構成及び動作 について添付の図を参照しながら以下に詳細に説明する。 図面の簡単な説明 本発明を、添付の図を参照して説明する。図において、同一の要素又は 同様の機能を持つ要素は同じ参照番号で表わされる。さらに、参照番号の一番左 の数字は、その番号が最初に出てくる図面の番号を表す。 第1図は、ウインドウIDを用いた従来のグラフィックス・システムを 示すブロック図である。 第2図は、本発明のグラフィックス制御プレーンをサポートするために 用いられるシステムを示すブロック図である。 第3図は、本発明のグラフィックス制御プレーンを示す。 第4図は、表示画面上で互いに重なり合う複数のウインドウの例を示す 。 第5図は、本発明のウインドウ・クリップ境界を示す。 第6図は、本発明の書き込み可能プレーンをサポートするのに用いるデ ート構造を示す。 第7図は、本発明の第1の実施例のオペレーションを示すフローチャー トである。 第8図は、ピックスマップの典型的なインプリメンテーション・プレー ンを示す。 第9図は、本発明の重なり合う複数のウインドウに対する書き込み可能 プレーンの書き込み可能ビットを表す。 第10〜11図は、本発明の他の実施例の方法を示すフローチャートである 。 発明の詳細な説明 本発明は、複数のウインドウをサポートするグラフィックス・システムの 表示装置にデータを書き込むシステム及びその方法に関するものである。フレー ム・バッファ又はピックスマップ中のある画素 が実行中のウインドウで修正されるべきかどうかを制御するためにグラフィック ス制御プレーンが与えられている。本発明によれば、ディスプレイ・コントロー ラが、画素を修正するかどうかを決定するのである。この決定は、その画素が属 するウインドウに基づいて行われる。もしその画素を含むウインドウが実行中の ウインドウであれば、画素はそのウインドウのカバーされていない部分に入り、 それは描画される。本発明は、描画ハードウエアが実行中のウインドウだけに限 り描画するような手段を提供する。 フレーム・バッファと関連した動作の観点から本発明を説明する。ピック スマップについての動作はフレーム・バッファのものと同じであることは当業者 にとって明かであろう。 フレーム・バッフア又はピックスマップの全ての画素には、「書き込み可 能ビット」という書き込み制御プレーンのビットがある。書き込み制御ビットは 、現在の画素が実行中のウインドウで描画されるべきかどうかを決定するのに用 いられる。書き込み制御ビットを描画制限(クリップ又は鋏み)許可又は不可の 状態にすることができる。フレーム・バッファに書き込み可能にする値は、論理 の1又は諭理の0としてプログラムすることが出来る。必ずしも必要ではないが 、このプログラム可能な書き込み可のレベルを持つことで多重ウインドウの描画 により高い柔軟性とより有効な制御が得られるようになる。どのようにしてこれ が実現されるかは以下に説明する。 第4図に、表示画面で複数のウインドウを用いている状態を示す。表示画 面422は多重ウインドウ402、404、406、408、410、412のグラフィックス情報を 表示している。これらのウインドウ402、404、406、408、410、412は表示画面42 2上で隠れてしまったり、お互いに部分的に隠し合ったりすることが出来る。例 えば、ウインドウ402は、ウインドウ410によって部分的に隠されているが、今度 はウインドウ410がウインドウ412によって部分的に隠されている。従って、ある 画素を表示するのかどうか、もしくは、それが現在実行中でないウインドウの一 部か又は実行中のウインドウのマスクされている部分 なのかを判定することが重要になってくる。 先に提起したWIDは、各画素が属するウインドウを指定するコードを記 憶するために付け加えたプレーンである。第1図は、WIDをインプリメントし た従来のシステムのブロック図を示している。第1図を参照してWIDを更に詳 しく説明する。動作状態では、ウインドウは、ディスプレイ・コントローラ102 (X-ウインドウ・システムではグラフイックス・サーバ)によって選択される 。ディスプレイ・コントローラ102は、通常中央処理ユニット(CPU)を有し ている。ディスプレイ・コントローラ102は、ウインドウマップを作成し、ウイ ンドウ・マップ・バッファ104にこのマップを格納している。 ウインドウ・マップは、個々のウインドウが使用する画面中の特定の領域 を定義する。ウインドウ・マップは、ディスプレイ・コントローラ102が与える 値に基づいて作られる。これらの値として、画素のアドレス及び各ウインドウに 含まれる各画素のWIDがある。WIDは、ウインドウ・マップ・バッファ104 内にある特定のウインドウの対応する位置の1つ1つに書き込まれる。あるウイ ンドウがウインドウ・マップ・バッファ104に書き込まれる時、WIDメモリ内 でそのウインドウを定義する全ての位置は夫々そのウインドウのWIDを格納す る。第1のウインドウの前に来る第2のウインドウをウインドウ・マップ・バッ ファ104に書き込む時には、第2のウインドウに対するウインドウ香号が第2の ウインドウを表す各位置に格納される。このようにして、第1のウインドウの上 に来る第2のウインドウの部分は、ウインドウ・マップ・バッファ104内の第1 のウインドウの重なり合う位置の上に書き込まれることになる。その結果、第2 のウインドウのこれらの部分は第1のウインドウを自動的にカバーしクリップす る。表示される全てのウインドウが書き込まれた後では、ウインドウ・マップ・ バッファ104には、画面上の各点でどのウインドウが表示されるかを示すマップ が出来たことになる。言い換えると、ウインドウ・マップ・バッファ104には、 各画素に対するウインドウIDが含まれることになり、それはその画素位置にど のウインドウが表示 されるかを示している。 実際には、ウインドウはある与えられた順番で書き込まれる必要はない。 通常、ウインドウ・システム・ソフトウエアには、どのウインドウがどのウイン ドウの上に来るかという優先順位があるのが普通である。この優先順位は、ウイ ンドウが作られる順番とは独立に決定されてもよい。 ディスプレイ・メモリに情報を書き込むため、フレーム・バッファの各画 素のWIDは、WIDレジスタ106に記憶され、その画素位置のウインドウ・マ ップ・バッファ104のWIDと比較される。もしウインドウ・マップ・バッファ1 04のWIDが表示しようとする画素のWIDと同一なら、比較回路108は、書き 込み可能ロジックがその画素の情報をフレーム・バッファ110の正しい画素アド レスに書き込むようにする。これに反して、もしその画素のWIDが、ウインド ウ・マップ・バッファ104に記憶されているWIDと同一でないと比較回路108が 判定すれば、その画素の情報はフレーム・バッファ110には書き込まれない。従 って、ある位置で表示されるウインドウに属するその位置の画素だけがフレーム ・バッフア110に書き込まれ、引き続き表示されることになる。 このようにして、WIDを用いて、各画素位置の前景ウインドウの画素の みがフレーム・バッファに書き込まれるのである。 他のシステムでも上記の手法の変形が用いられる。これらのシステムでは 、WIDは、各WIDに対応する表示特性が見いだされるテーブル中の場所を示 す指標としての働きをする。新しい画素値が作られていくにつれて、そのWID は、その画素の特性を探索するためのアドレスとして用いられる。もし実行中の ウインドウ(現在描画されているウインドウ)が新しい画素位置の前景ウインド ウと一致するなら、その新しい画素の値は表示用としてフレーム・バッファに格 納される。 WIDはまた、グラフィックス・コントローラへの制御情報を提供する。 この情報は、通常、ハードウエアのルックアップ・テーブル にプログラムされていて、フレーム・バッファのバック・バッファの前面が現在 表示されているかどうかとかCLUT(カラールックアップ・テーブル)が画素 のカラープレーンの内容をどのように解釈するかというようなことを示す。 ある画素がある特定の画素位置を制御するウインドウに属するかどうかを 決定する1つの方法は、上に述べたWIDを用いることである。しかし、インプ リメントするには、複雑なWID交換ソフトウエアを用いない限り、WIDには 新たにフレーム・バッファ・メモリ・プレーンと制御ハードウエアが必要となる 。典型的には、グラフィックス・システムが十分な柔軟性と効率を持つには、現 在、フレーム・バッファ・メモリの8個のWIDプレーンが必要とされる。 第8図に典型的なフレーム・バッファ又はピックスマップのプレーンの概 略図を示す。第8図を参照して、ピックスマップ802は複数のプレーン(プレー ン0、プレーン1、等)を用いてインプリメントされている。各プレーン0、1 、2、...、Nは、ビットの2次元マトリックスで(1画素当り1ビット)、個 々に或いはセットとして各画素に関する情報を含んでいる。プレーン0、1、2 、...、Nの完全なセットはピックスマップを作り、各画素はNビットで表され る(1ビット/プレーン)。 例えば、ビット802、804、806、808は夫々プレーン0、1、2、...、N にあり、単一の画素に対応している。各ビット802、804、806、808はその画素の 情報を格納している。ピックスマップ800の他の全ての画素もそれ自身のビット のセット(未表示)を有する (各プレーン0、1、2、...、Nに対し1ビッ ト)。 プレーン0、1、2、...、Nの数は、グラフィックス・システムに与え られる機能の数に依存する。カラー、カラー・インデックス、z-バッファリング 等のプレーンがある。WIDを用いるシステムに対しては、そのグラフィックス ・システムが提供するウインドウの数を指定するのに十分な数のWIDプレーン がなくてはならない。例えば、もしそのグラフィックス・システムが256のウイ ンドウをサポート出 来るなら、8個のプレーンが必要となり、WIDハードウエアが256のウインド ウをサポート出来るようになる。これらのプレーンを新たに付け加えることによ り、以下に示すグラフィックスのハードウエア・コストがその分余計に掛かるこ とになる。 本発明では、グラフィックス制御プレーンと呼ばれるWIDプレーンの代 わりとなるプレーンのセットを導入してWIDプレーンの必要性を無くす。第3 図にはグラフィックス制御プレーンが示されている。好適な実施例では、最高5 個までのグラフィックス制御プレーンがシステム中に存在してもよい。これらの プレーンはダブルバッファにはなっていない。必要なグラフィックス・サブシス テムの機能によりそれ以上又はそれ以下の数のグラフィックス制御プレーンをイ ンプリメントすることが可能である。プレーンの数が少ないシステムでは、イン プリメントするのも安価になるので、性能/コストのトレードオフが可能である 。 グラフィックス制御プレーンはフレーム・バッファ(又はピックスマップ )中のプレーンのサブセットで、グラフィックス・システムのビデオの機能を制 御するのに用いられる。プレーン(例えば、RGBプレーン)を用いることはこ の分野では周知であるが、本発明が教えるグラフィックス制御プレーンを用いる ことにより多くの新しく有用な機能を得ることが出来るのである。 制御プレーンをインプリメントするのに必要なハードウエアを第2図に示 す。第2図を参照して、グラフィックス・コントローラ212は、画素をフレーム ・バッファ204に書き込むべきかどうかを決定するためデータ構造(第6図を参 照して後に説明する)を用いる。グラフィックス・コントローラ212は、グラフ ィックス・サーバ206及びディスプレイ・コントローラ202を備える。グラフィッ クス・サーバ(又は、グラフィックス・ソフトウエア・ドライバ)206は、ウイ ンドウ・システム・ソフトウエアの一部で、多数のクライアント・プロセス210 のタスクを管理するために備えられている。グラフィックス・サーバ206とディ スプレイ・コントローラ202の間の機能の割 り振りは、システム要件及び標準的な設計の慣例に従って行われる。さらに、デ ィスプレイ・コントローラ・メモリ208は、ディスプレイ・コントローラ202が使 用するために設けられている。1つの実施例では、フレーム・バッファ204に2 つのバッファ、即ち、フロント・バッファ204A及びバック・バッファ204Bが設け られている。 ウインドウの隠れた部分の画素を一時的に記憶するため補助記憶装置214 をオプシヨンとして用いてもよい。これらの画素は、後刻それらを表示するため 呼び出すことが出来る。 さて第3図を参照して、プレーン322は、ダブル・バッファ・システムで 、フロント/バック・バッファ選択プレーンとして動作する。バッファ選択プレ ーン322は、画素がデュアル・バッファ・システムのフロント・バッファ204Aに 属するのか或いはバック・バッファ204Bに属するのかを選択するために用いられ る。 フレーム・バッファで複数の画素形式がサポートされているなら、ビデオ モード選択プレーン324が設けられ、ビデオモードを示す。ビデオモードは、シ ステム・モニタ上の画素の表示を制御するフレーム・バッファ204の画素の形式 を定義する。例えば、ビデオモード選択プレーン324は、画素が12-ビットのRG Bか24-ビットのRGBかを標示してもよい。8プレーンカラー・インデックス ・モードのようなビデオモードを新たに付け加えるには第2のビデオモード選択 プレーン326を設けてもよい。このように、フレーム・バッファ内の画素の内容 を複数に解釈することが少数のプレーンでインプリメント可能となる。 書き込み可能プレーン328により、グラフィックス・システムが複雑な( 矩形でない)ウインドウ形状をサポートできるようになる。書き込み可能プレー ン328は、ある画素がウインドウ内にあるか、より具体的には、表示されるウイ ンドウの一部にあるかどうかを絶えず記録しておくために備えられている。 画素は一つのオブジェクトに対して1回のみ書き込まれるというx-ウイ ンドウの要件をサポートするのに1回書き込みプレーン 330を設けてもよい。1回書き込みプレーン330のあるビットが真とセットされて いると、そのビットに対応する画素は一つのオブジェクトに対して1回のみしか 書き込まれることはない。 表1は、WIDの代わりにグラフィックス制御プレーン(GCP)を用い るとどれだけの節約が出来るかを示したものである。この表では、ハイエンドの システムとローエンドのシステムの2つのタイプに対する節約分が示されている 。ハイエンドのシステムについては、どちらの手法(WID及びGCP)も24個 のカラープレーン(赤緑青に対して各8プレーン)、24個のZ-バッファプレー ン(3次元グラフィックスに対して256のレベル)、8個のオーバーレイプレー ン、4個のステンシルプレーンを用いる。本発明のGCPシステムで節約出来る のは、256のウインドウをサポートするのにWIDシステムでは8個のプレーン が必要となるのに引き換え、本発明では単に4個のプレーン(GCP)でウイン ドウや第3図を参照して述べた他のグラフィックス機能を行うことができるとこ ろにある。GCPが行える全ての機能が必ずしも必要ではないので、全てのGC Pを使用しなければ、それ以上の節約をすることが出来る。表1に示した例では 、システムは1個のビデオモード選択プレーン326を持つのみである。1280画素 x1024画素の表示装置を持つシステムでは、典型的には、フレーム・バッフアは 1プレーン当り2Mビットである。これは、8ビット/バイトのシステムでは、0 .25Mバイト/プレーンということである。従って、WIDシステムは17Mバイ トのフレーム・バッファ・メモリが必要なのに対して、GCPシステムでは単に 16Mバイトを必要とするだけである。 ローエンドのシステムでは、もっと著しい節約が可能となる。双方とも8 個のカラープレーンを用いるが、WIDシステムでは、256のウインドウを制御 するのにやはり8個のWIDプレーンが必要である。しかし、GCPシステムは 、ビデオ機能を制御するのに単に2プレーンが必要だけである。これらは、フレ ーム・バッファへの画素描画を制御する書き込み可能プレーン328及びX-ウイン ドウの要件を満たすための1回書き込みプレーン330である。X-ウインドウ・シ ステム以外のシステムでは、1回書き込みプレーンを省略できるので、さらに0. 25Mバイトのメモリを節約できる。 グラフィックス制御プレーン、より具体的には、書き込み可能プレーン32 8を用いることにより、フレーム・バッファ・メモリのただ1個のプレーンのコ ストで、ウインドウ・システムに対し大きな柔軟性が得られるのである。 本発明の書き込み可能プレーン328がもたらす柔軟性について以下に説明 する。書き込み可能プレーン328は、以下に説明するように、1つ以上の矩形ク リッピング境界比較回路と共に用いるのが最善である。 ウインドウ・システムではウインドウ制御のケースとして5つが挙げられ る。本発明はこれらの夫々のケースを制御することが可能である。これらのケー スは以下の通りである。 1.第1の矩形ウインドウを描く時他のウインドウが第1のウインド ウのどの部分も隠さない。その例は404、406、408、412である。 2.他のウインドウで隠れた部分がある第1の矩形ウインドウを描画 するが、他のウインドウはそれ自身隠れていない。この例としては、ウインドウ 414が挙げられるが、これはウインドウ408により部分的に隠れるが、ウインドウ 408は他のどのウインドウにも隠されていない。 3.他のウインドウで隠れた部分がある第1の矩形ウインドウを描画 するが、その他のウインドウ自身部分的に隠れている。こ の例はウインドウ402で、これはウインドウ410で部分的に隠れているが、ウイン ドウ410自身ウインドウ412によって隠れている。 4.非矩形の形(例えば、円)のウインドウを隠れがあるなしに拘ら ず描画する。 5.第1のウインドウが他の重なっているウインドウによって完全に 隠れている。 これらのケースを取り扱うために、ウインドウ・データ構造を確立し、重 要なウインドウ・パラメータ定義する。ウインドウ・データ構造に使われる構成 の詳細は、それがウインドウの重なり及びオプションとして書き込み可能プレー ン328の状態を定義するのに十分であれば、重要ではない。第6図は、ウインド ウに描画するためディスプレイ・コントローラ202が用いるウインドウ・データ 構造600の例を示す。第6図を参照して、ウインドウ優先順位データ構造602が各 ウインドウの相対的な優先順位(即ち、あるウインドウが他のウインドウに対し てその上に来るのか下に来るのかということ)をリストする。第4図の画面構成 の例では、ウインドウ優先順位データ構造602はウインドウ404がウインドウ402 より高い優先順位を持つことを示している。これは、ウインドウ404は、ウイン ドウ402の上にあり、ウインドウ404とウインドウ402の共通部分442(両ウインド ウが共存する所)では、ウインドウ404が表示され、ウインドウ402は隠れること を意味する。ウインドウ優先順位データ構造602は、表示領域の全てのウインド ウに対して同様なリストを保守する。ウインドウ優先順位データ構造602の正確 なインプリメンテーションは、表示を制御する個々のウインドウ・システムの要 件に依存する。 ウインドウ定義データ構造604は、ウインドウ・システムによって定義 される各ウインドウに対する主要なパラメータを定義する。定義としては、ウイ ンドウ・クリップ境界500、塗りつぶしパターン、文字フォント、各ウインドウ に対するペンやブラシ定義等がある。 第5図はウインドウ・クリップ境界500を示す。ウインドウ・クリップ境 界500は、各ウインドウに対する境界を表示画面の2次元 表記で定義する。境界は、X-min 502、Y-min 504、X-max 506、Y-max 508で 定義されている。これらの境界は、ウインドウ定義データ構造604では一対の2 次元座標(X1,Y1)及び(X2,Y2)として表してもよい、ここでX1はX-mi n 502、Y1はY-min 504、X2はX-max 506、Y2はY-max 508である。これ以外 に他の従来の表記を用いてもかまわない。ウインドウ・クリップ境界500は、1 つのウインドウのサブセットを定義するのに用いてもよい。 ウインドウ共通部分データ構造606は、ディスプレイ・コントローラが定 義する各ウインドウの共通領域を定義する。共通領域とは、1つのウインドウが 少なくも1つの他のウインドウと重なり合う領域と定義される。共通領域は、ウ インドウ・クリップ境界500を用いて計算される。例として、共通領域442は、ウ インドウ402がウインドウ404と重なり合う領域である。第6図は、各ウインドウ に対してウインドウ共通部分がリストされるように構成されたウインドウ共通部 分データ構造606を示している。 共通部分領域データ構造608は、共通部分領域、その座標、及び重なり合 って共通部分領域を形成するウインドウを定義する。例えば、共通部分領域442 は、ウインドウ402に対する座標(X1,Y1)及びウインドウ404に対する座標( X2,Y2)で定義される。共通部分領域データ構造608は、各共通部分領域の書 き込み可能プレーンの状態も含んでいる。 第7図は、第1の実施例のフローチャートで、ウインドウ・システムがデ ータ構造600を用いて、どのようにして、フレーム・バッファ204のウインドウの 可視領域に限って画素を書き込むのかを示している。この実施例では、ある画素 がフレーム・バッファ204に書かれるべきかどうかを決定するテストが各ウイン ドウに対して独立に存在し、重なり合うウインドウに対し相補的になっている。 例えば、ウインドウ402に対するテストは、書き込み可能ビット(書き込み可能 プレーン328内の)が1の時フレーム・バッファ204に書き込まれ、書き込み可能 ビットが0の時フレーム・バッファに書き込まれないと いうように定義してもよい。この例を用いると、ウインドウ402に対して、書き 込み可能プレーン328は、ウインドウクリッピング境界500で定義されるように領 域442、444、446、に対して0で、ウインドウ402の他の領域に対しては1となる だろう。同時にウインドウ410に対するテストは、書き込み可能ビットが0の時 画素はウインドウ410に対するフレーム・バッフア204に書き込まれ、書き込み可 能ビットが1の時書き込まれないというように定義されるであろう。従って、ウ インドウ410に関して、領域448に対応する書き込み可能プレーン328の全てのビ ットは1であろう。その理由は、領域448はウインドウ412により隠されるからで ある。ウインドウ410に対してウインドウクリッピング境界500で定義される書き 込み可能プレーンの残りのビットは全て0で、これらの画素はフレーム・バッフ ア204に書き込まれることになる。 この例にさらに従うと、ウインドウ402の全ての隠れていない領域は書 き込み可能ビットが1で、ウインドウ402の全ての隠れる領域は書き込み可能ビ ットが0(隠れない領域の反対)となる。同時に、ウインドウ410の全ての隠れ ない領域は書き込み可能ビット0を持つ。従って、もしグラフィツクス画面206 又はディスプレイ・コントローラ202が、ウインドウ410に書き込みその後にウイ ンドウ402に書き込みを行ってフレーム・バッファ204をアップデートするなら、 書き込み可能プレーンはアップデートする必要はない(ここでウインドウ402に 対するウインドウ定義が変わっていないと仮定して)。これは、領域446の画素 位置に対応する書き込み可能プレーン328の部分にある0は、前の動作では、フ レーム・バッファ204のその領域に画素を書き込むことを許可したからである。 現在のオペレーションでは、この同じ0が、フレーム・バッファ203の領域446に 画素が書き込まれるのを禁止している。 さて第7図に戻ると、ステップ702で、グラフィックス画面206は先ず、オ ブジェクトを描画しようとするウインドウが完全に隠れているかどうかを決定す る。もしそのウインドウが完全に隠れてい れば、ウインドウが見えないのでそのオペレーションは終了し全ての描画操作は 破棄される。この描画破棄は色々な方法で行うことが出来るが、最も簡単な方法 は、データをフレーム・バッファ204に渡さないことである。もしウインドウが 全部隠れていなければ、オペレーションはステップ704に続く。この決定はデー タ構造600を用いて行われる。 ステップ704では、グラフィックス・サーバ206は、データ構造600を用い 、そのウインドウが部分的に隠れているかどうかを決定する。ステップ704でウ インドウが部分的に隠れていなければ(そして、ステップ702で決定されたよう に完全に隠れていない)、そのウインドウには隠れた部分が全くないことになる 。これが上述した最初のケースである。この場合にはオペレーシヨンはステップ 706に進む。 ステップ706では、ウインドウは隠れていないので、そのウインドウとし て定義されたウインドウ・クリップ境界500に対して各位置の画素をテストする ことによってウインドウクリッピングを行う。もし画素がその境界500の外にあ れば、フレーム・バッファ204に書き込まれない。もしそれが境界内に入れば、 そのウインドウは他のウインドウに隠れていないので間違いなく書き込まれる。 従って、この場合、書き込み可能プレーン328は必要でなく、フレーム・バッフ ァ204への書き込み制限は不可の状態にされている。 ステップ708では、実行中のウインドウの可視部分(この場合全ての部分 が見えている)の画素は、前のステップで定義された制約の集合を用いてフレー ム・バッファ204に書き込まれる。 しかし、ステップ704で、ウインドウが部分的に隠れていれば、ステッ プ710に進む。これは上述した第2、第3のケースにあたる。ステップ710では、 グラフィックス・サーバ206は、最後に行ったオペレーシヨンに比べてウインド ウの定義が変わっているかどうかを決定する。ウインドウの定義が変更されるの は、ウインドウが削除されたり、大きさが変更されたり、その場所が変更された り、新しいウインドウが作られたり(そして当ウインドウと重なり合う)、さも なけ れば、ウインドウ間の上下関係(即ち、相対的な優先順位)が変更されたりする 時である。もしウインドウの定義が変更されていれば、ステップ712に進む。も しウインドウの定義が変更されていなければ、ステップ714に進む。ウインドウ の定義に変更があれば、データ構造600も変更されることになる。 ステップ712では、グラフィックス・サーバ206は書き込み可能プレーン32 8をアップデートし、そのウインドウの隠れていない部分に対応する書き込み可 能プレーンのビット全てが、フレーム・バッファに画素を書き込むことを示すよ うにする(例えば、上の例では、ウインドウ402の隠れていない部分に対しては 1で、ウインドウ404の隠れていない部分に対しては0となる)。 ステップ714では、各ウインドウに対するハードウエア書き込み可能テス トを、各ウインドウに対して選ばれた取り決めに対応するようにセットする。テ ストは、ウインドウの隠れていない部分に対して真になるようにセットされる。 例えば、ウインドウ402の境界内の書き込み可能328に1が存在することは、ウイ ンドウ402の情報がフレーム・バッフア204に書き込まれることを示す。従って、 書き込み可能プレーン328に1が出てくると、ウインドウ402に対するテストは真 となる。 ステップ716では、グラフィックス・サーバ206は、ウインドウ・クリップ 境界500及び書き込み可能プレーン328(ウインドウ・クリップ境界500内)を用 い、画素をフレーム・バッファ204に書き込むかどうかを決定する。もしこれら のテストが、画素が隠れた領域に入るためウインドウに書き込まれないことを示 すと、画素はその代わり補助記憶装置210に書き込まれる。 ステップ708では、画像がウインドウに描画される。このステップで、実 行中のウインドウで可視部分内の画素がフレーム・バッファ204に書き込まれる 。 この実施例において2つの重要な点がある。第1に、もしウインドウが全 く隠れていないか又は完全に隠れている時には書き込み可 能プレーンは不要なことである。全てのグラフィックス・サーバ206が行わなけ ればならないことは、そのウインドウの画素を、そのウインドウに対するウイン ドウ・クリップ境界500によって決められる領域に書き込むことである。第2に 、部分的に隠れたウインドウに対して、もしウインドウの定義が変化していなけ れば、オペレーションとオペレーションの間に書き込み制御プレーンをアップデ ートしなくてもよいことである。隠れた領域と隠れていない領域は相補的に定義 されているので、もしディスプレイ・コントローラが一つのウインドウを描画し 、引き続き他のものへ移っても、書き込み可能プレーン328はそのまま同じであ る。変化するのは、画素をフレーム・バッファ204に書き込むかどうかを決定す るのに用いられるハードウエア・テストだけである(即ち、0の時書き込みとい う代わりに1なら書き込みとする)。これにより書き込み可能プレーン328をア ップデートしなければならないオペレーションを省くことが出来る。 第9図は、第4図に示したウインドウに対する書き込み可能プレーン328 のビットを第1の実施例に従って表示した例である。ウインドウ402においては 、1は隠れていない部分を示し、0は実行中の部分を表している。 次の実施例では書き込み可能プレーン328が用いる取り決めは全てのウイ ンドウに関して共通である。例えば、1はどのウインドウについても隠れていな い領域を表し、0はどのウインドウに対しても隠された領域を表す。この実施例 では、もしディスプレイ・コントロラが第1のオペレーションで第1のウインド ウに書き込みを行い、第2のオペレーションで、それに重なり合った第2のウイ ンドウに書き込みを行う時には、書き込み制御プレーン328をアップデートしな くてはならない。 例えば、グラフィックス・サーバ206がウインドウ404に書き込むと仮定し よう。このオペレーションを可能にするには、ウインドウ404に対するウインド ウ・クリップ境界500内の書き込み可能プレーン328の全てのビットを1にセット しなくてはならない。もしディ スプレイ・コントローラ202が次にウインドウ402に書き込みたければ、領域442 (ここではウインドウ404は402の上になっている)に対応する書き込み可能プレ ーン328のビットは1(前のオペレーションでは書き込みに使われた)から0に 変更されなくてはならない。従って、第2の実施例では、ウインドウの定義が変 わっても変わらなくてもステップ712を実行しなくてはならない。 第10図は、本発明の第2の実施例による方法を示すフローチャートである 。グラフィックス・サーバ206は、ステップ1002で、ウインドウが完全に隠れて いるかどうかを決定する。この決定はデータ構造600に基づいて行われる。もし ウインドウが完全に隠れていれば、オペレーションは終了する。グラフィックス ・サーバ206は、ウインドウが部分的に隠れているかどうかをステップ1004で決 定する。もしウインドウが部分的に隠れていなければ(即ち、全く隠れていなけ れば)、ディスプレイ・コントローラ202は、ステップ1006でウインドウ・クリ ップ境界500を用いて画素をフレーム・バッファ204に書き込むかどうかを決定す る。ディスプレイ・コントローラは、ステップ1012で、適当な画素をフレーム・ バッファ204に書き込む。これらの画素は実行中のウインドウの可視部分に入る 。 それに反して、ステップ1004でウインドウが部分的に隠れていれば、グラ フィックス・サーバ206は書き込み可能プレーン328をアップデートし(ステップ 1008)書き込みをそのウインドウの隠れていない領域のみに許可する。ステップ 1010で、グラフィックス・サーバ206はこの書き込み可能プレーン及びウインド ウ・クリップ境界を用い・画素をフレーム・バッファ204に書き込むかどうかを 決定する。ステップ1012で、実行中のウインドウの可視部分の画素をフレーム・ バッファ204に書き込む。オプションで、そのウインドウの隠れた領域の画素は 補助記憶装置210に書き込んでもよい。 本発明では書き込み可能プレーン328は、非矩形のウインドウを持つウイ ンドウ・アプリケーションをサポートすることが出来る。第11図は、非矩形のウ インドウでの描画をサポートするのに書き込 み可能プレーン328を用いることを示すフローチャートである。非矩形ウインド ウはウインドウ・クリップ境界500では完全に定義することができないので、非 矩形ウインドウに描画するには必ず書き込み可能プレーン328を用いなくてはな らない。その結果、ウインドウが部分的に隠れているかどうかは問題にならない (第7図のステップ704)。第11図は従って、第7図のサブセット(即ち、ステ ップ704及び706がない)である。 さて第11図を参照して、非矩形ウインドウをサポートするオペレーション を以下に説明する。もしウインドウが完全に隠れていれば、ステップ1102に示す ように、オペレーションは終了し、画素はフレーム・バッファ204に書き込まれ ない。もしウインドウが完全に隠れているのでなければ、隠れていない領域の画 素はフレーム・バッファ204に書き込まれる。第11図の残りのステップは、画素 が隠れていない領域にあるかどうかを決定するためのものである。 ステップ1110では、グラフィックス・サーバ206がウインドウの定義が変 更されたかどうかを決定する。この決定は、データ構造600に基づいて行われる 。もしウインドウの定義が最後のオペレーション以降変更されているなら、ステ ップ1112で共通領域をアップデートし、書き込み可能プレーンがウインドウのど の部分が隠れていないかを正しく示すようにする。ステップ1114では、ハードウ エアの書き込み可能テストを、隠れていない領域に対しては書き込みを許可し、 隠れる領域に対しては書き込みを抑止するようにセットする。 ステップ1116では、書き込み可能プレーンのウインドウクリッピング境 界を用いて画素をフレーム・バッフア204に書き込むかどうかを決定する。ステ ップ1108では、先のステップで確立された制約を用いて、実行中のウインドウの 可視部分の画素がフレーム・バッファ204に書き込まれる。オプションで、隠れ ている画素は補助記憶装置210に書き込んでもよい。 第7、10、11図はグラフィックス・サーバ206がオペレーションを行うとし て説明しているが、グラフィックス・サーバの代わりに、 ディスプレイ・コントローラ202を用いてもよい。 当業者には、本発明を、多重ウインドウ・クリップ矩形を用いるために拡 張できることが容易に分かるであろう。 本発明の多くの実施例について上に述べたが、それらは例として挙げられ たものであり、限度を示すためのものではない。従って、本発明の広さと範囲は 、上述したいかなる典型的な実施例もその限界を与えるものではなく、以下の特 許請求範囲及びそれと同等のものに従ってのみ定義される。
【手続補正書】特許法第184条の8 【提出日】1994年11月23日 【補正内容】 請求の範囲 1. 複数ウインドウ(422)を表示するシステム(204,208,212)におけるウイ ンドウ内の描画を制御する方法であって、該システム(204,208,212)は、書き 込み可能テスト(710-716,1110-1116)を備え、且つ、単一書き込み可能プレー ン(328)、ウインドウ定義(602,604)、ウインドウ共通部分領域(606,608) 及びウインドウ・クリップ境界(604)を有するデータ構造(600)から成り、該 方法は、 a)その前のオペレーション以降当ウインドウ定義(602,604)が変更され たかどうかを判定するためにデ一夕構造(600)をチェックする(710,1110)ス テップと、 b)単一書き込み可能プレーン(328)の、ウインドウに対応する全ての隠 れた領域が第1の論理レベルに設定されるように、また、単一書き込み可能プレ ーン(328)の隠れていない全ての領域が第2の論理レベルに設定されるように 、データ構造(600)のウインドウ共通部分領域(606,608)を用いて単一書き込 み可能プレーン(328)をアップデートし、単一書き込み可能プレーン(328)は 前記その前のオペレーション以降当ウインドウ定義(602,604)が変更したとき にのみアップデートされる、アップデートの(712,1112)ステツプと、 c)表示すべき該ウインドウの隠れていない領域に対して書き込み可能テ ストを真に設定する(714,1114)ステツプと、 d)該書き込み可能プレーン(328)及びウインドウ・クリップ境界(604 )に基づいて画素をフレーム・バッファ(328)に書き込むかどうかを決定する (716,1116)ステップと、 から成ることを特徴とする描画制御方法。 2. 請求項第1項記載の方法であって、画素をフレーム・バッフア(328)に 書き込む(708,1108)ステップからさらに成ることを特徴とする方法。 3. 請求項第1項記載の方法であって、描画すべきウインドウが完全に隠れて いるかどうかを、データ構造(600)の共通部分領域(606,608)情報及びウイン ドウ優先順位情報(602)に基づいて決定する(702,1102)ステップからさらに 成ることを特徴とする方法。 4. 請求項第1項記載の方法であって、さらに、 e)描画すべきウインドウが全く隠れていないかどうかを判定する(704) ステップと、 f)もし描画すべき前記ウインドウが全く隠れていない時には該ウインド ウのウインドウ・クリップ境界(604)のみを用いて前記ウインドウを描画する (706-708)ステツプと、 から成ることを特徴とする方法。 5. 請求項第4項記載の方法であって、前記ステップ(e)は、 i)描画すべき前記ウインドウが完全に隠れているかどうかを判定する(7 02)ステップと、 ii)描画すべき前記ウインドウが部分的に隠れているかどうかを判定する (704)ステツプと、 から成ることを特徴とする方法。 6. 複数のウインドウ(422)の表示を制御するシステムであって、該システ ム(204,208,212)は、書き込み可能テスト(710-716,1110-1116)を備え、且つ 、ウインドウ定義(602,604)、ウインドウ共通部分領域(606,608)及びウイン ドウ・クリップ境界(604)を有するデータ構造(600)から成り、該システムは 表示するピックスマップを格納するフレーム・バッファ手段(204)で、前記フ レーム・バッファ手段(204)は画素がウインドウ境界(604)内にあるかどうか 、また、前記画素がより優先度の高いウインドウ(602)によって隠されている かどうかを示すように構成された単一書き込み可能プレーン(328)から成るフ レーム・バッフア手段(204)と、 その前のオペレーション以降当ウインドウ定義(602,604)が変更されたかどう かを判定するためにデータ構造(600)をチェツクする手段(212,710,1110)と 、 単一書き込み可能プレーン(328)の、ウインドウに対応する全ての隠れた領域 が第1の論理レベルに設定されるように、また、単一書き込み可能プレーン(32 8)の隠れていない全ての領域が第2の論理レベルに設定されるように、データ 構造(600)のウインドウ共通部分領域(606,608)を用いて単一書き込み可能プ レーン(328)をチエツクし、単一書き込み可能プレーン(328)は前記その前の オペレーション以降当ウインドウ規定(602,604)が変更したときにのみアップ デートされる、チェックの手段(212,712,1112)と、 表示すべきウインドウの隠れていない領域に対して書き込み可能テストを真に設 定する手段(212,714,1114)と、 書き込み可能プレーン(238)及びウインドウ・クリップ境界(604)に基づいて 画素を前記フレーム・バッファ手段(204)に書き込むかどうかを決定する手段 (212,716,1116)と、 から成ることを特徴とするシステム。 7. 請求項第6項記載のシステムであって、描画すべきウインドウが完全に隠 れているかどうかを、データ構造(600)の共通部分領域情報(606,608)及びウ インドウ優先順位情報(602)に基づいて決定する手段(212,702,1102)からさ らに成ることを特徴とするシステム。 8. 請求項第6項記載のシステムであって、 (e) 描画すべきウインドウが全く隠れていないかどうかを判定する(2 12,704)手段と、 (f) もし描画すべき前記ウインドウが全く隠れていない時には当ウイ ンドウのウインドウ・クリップ境界(604)のみを用いて描画すべき前記ウイン ドウを描画する(212,706-708)ステップと、 からさらに成ることを特徴とする方法。 9. 請求項第8項記載のシステムであって、前記判定手段(212,704)は、 i)描画すべき前記ウインドウが完全に隠れているかどうかを判定する手 段(212,702)と、 ii)描画すべき前記ウインドウが部分的に隠れているかどうかを判定する 手段(212,704)と、 から成ることを特徴とするシステム。 10. 請求項第6項記載のシステムであって、前記フレーム・バッファ手段(20 4)は第1のフレーム・バッファ(204A)及び前記ピックスマップをダブル・バ ッファリングするための第2のフレーム・バッフア(204B)、並びに画素を前記 フレーム・バッファ手段(204)に書き込むかどうかを選 択するためのフロント/バック・バッファ(322)選択プレーンとをさらに備え たことを特徴とするシステム。 11. 請求項第6項記載のシステムであって、前記フレーム・バッファ手段(204 )は、ビデオモードを示すために少なくも1つのビデオモード選択プレーン(32 4,326)をさらに備えたことを特徴とするシステム。 12. 請求項第6項記載のシステムであって、前記フレーム・バッファ手段(20 4)は、画素が1つのオブジェクト当たり1回だけ書き込まれるかどうかを示す ために1回書き込みプレーン(330)をさらに備えたことを特徴とするシステム 。 13. 請求項第6項記載のシステムであって、実行中のウインドウの隠れた領域 内に入る少なくも1つの画素を格納する補助記憶装置(214)をさらに備えたこ とを特徴とするシステム。

Claims (1)

  1. 【特許請求の範囲】 特許請求の範囲は以下の通りである。 1. 複数のウインドウを表示するシステムにおいて画素の書き込みを制御す る装置であって、 画素がウインドウ境界内にあるかどうかを示し、もし境界内にあるなら 、前記画素がそのウインドウよりも優先順位の高いウインドウに隠れているかど うかを示すように構成された書き込み可能プレーンを備える、表示するためのピ ックスマップを格納するフレーム・バッファ手段と、 前記フレーム・バッファ手段及び前記メモリ手段に電気的に結合され、 画素を前記フレーム・バッファ手段に書き込むかどうかを決定するグラフィック ス・コントローラとから成り、前記決定は書き込み可能プレーン及びウインドウ ・クリップ境界データに基づいてなされることを特徴とする装置。 2. 請求項第1項の装置であって、前記グラフィックス・コントローラ手段 に接続された、ウインドウ・データ構造を格納するメモリ手段をさらに含み、前 記ウインドウ・データ構造はウインドウ優先順位データ、ウインドウ・クリップ 境界データ、ウインドウ共通部分データ、共通領域構造データから成ることを特 徴とする装置。 3. 請求項第1項の装置であって、前記書き込み可能プレーンは、画素を前 記フレーム・バッファ手段に書き込むかどうかを決定する相補的テストを用いる ことを特徴とする装置。 4. 請求項第1項の装置であって、前記フレーム・バッファ手段はさらに、 第1のフレーム・バッファ、第2のフレーム・バッファ、及び画素を前記フレー ム・バッファ手段に書き込むかどうかを選択す るためのフロント/バック・バッファ選択プレーンを備えることを特徴とする装 置。 5. 請求項第1項の装置であって、前記フレーム・バッファ手段はさらに、 ビデオモードを表示するためのビデオモード選択プレーンを少なくも1個備える ことを特徴とする装置。 6. 請求項第1項の装置であって、実行中のウインドウの隠れた領域に入る 少なくも1個の画素を格納するための補助記憶装置をさらに備えることを特徴と する装置。 7. 請求項第1項の装置であって、前記フレーム・バッファ手段はさらに、 1つのオブジェクトに対して画素を1回だけ書き込むかどうかを表示する1回書 き込みプレーンを備えることを特徴とする装置。 8. 請求項第1項の装置であって、前記グラフィックス・コントローラは、 グラフィックス・サーバ及び前記グラフィックス・サーバに接続されたディスプ レイ・コントローラを備えることを特徴とする装置。 9. 書き込み可能プレーン及びウインドウ・クリップ境界を備え、複数ウイ ンドウを表示するシステムでウインドウ内の描画を制御する方法であって、 (a)ディスプレイ・コントローラが当ウインドウの隠れていない 領域に画素を書き込めるよう書き込み可能プレーンをアップデートするステップ と、 (b)画素をフレーム・バッファに書き込むかどうかを決定するた めにウインドウ・クリップ境界及び書き込み可能プレーンを用いるステップと、 から成ることを特徴とする描画制御方法。 10. 請求項第7項の方法であって、さらに、ウインドウが全く隠れていない かどうかを決定するステップと、もし全く隠れていなければ、画素をフレーム・ バッファに書き込むかどうかを決定するためにウインドウ・クリップ境界のみを 用いるステップとを有することを特徴とする方法。 11. 請求項第7項の方法であって、さらに、画素をフレーム・バッファに書 き込むステップを有することを特徴とする方法。 12. 書き込み可能テストを備え、且つ、書き込み可能プレーン、ウインドウ 定義、ウインドウ共通部分及びウインドウ・クリップ境界を有するデータ構造を 備え、複数ウインドウを表示するシステムでウインドウ内の描画を制御する方法 であって、 前のオペレーシヨン以降当ウインドウ定義が変更されたかどうか を決定するためにデータ構造をチェックするステップと、 書き込み可能プレーンの隠れた領域が合致し、書き込み可能プレ ーンの隠れていない全ての領域が隠れた領域の反対になるように、データ構造の ウインドウ共通部分を用いて書き込み可能プレーンをアップデートするステップ で、前のオペレーション以降当ウインドウ定義が変更したときにのみ書き込み可 能プレーンをアップデートするステップと、 当ウインドウの隠れていない領域に対して書き込み可能テストを 真に設定するステップと、 前記書き込み可能テスト及びウインドウ・クリップ境界に基づい て画素をフレーム・バッファに書き込むかどうかを決定するステップと、 から成ることを特徴とする描画制御方法。 13. 請求項第12項の方法であって、さらに、画素をフレーム・バッファに書 き込むステップを有することを特徴とする方法。 14. 請求項第12項の方法であって、さらに、描画するウインドウが完全に隠 れているかどうかを、データ構造の共通部分情報及びウインドウ優先順位情報に 基づいて決定するステップを有することを特徴とする方法。 15. 請求項第12項の方法であって、さらに、 (e)描画するウインドウが全く隠れていないかどうかを決定する ステップと、 (f)もし描画する前記ウインドウが全く隠れていない時にはその ウインドウのウインドウ・クリップ境界のみを用いて描画する前記ウインドウを 描画するステップとを、 有することを特徴とする方法。 16. 請求項第15項の方法であって、ここで前記ステップ(e)は、 (i)描画する前記ウインドウが完全に隠れているかどうかを決定 するステップと、 (ii)描画する前記ウインドウが部分的に隠れているかどうかを決 定するステップとを、 有することを特徴とする方法。 17. 書き込み可能テストを備え、且つ、書き込み可能プレーン、ウインドウ 定義、ウインドウ共通部分及びウインドウ・クリップ境界を有するデータ構造を 備え、複数ウインドウを表示するシステムでウインドウの描画を制御するシステ ムであって、 前のオペレーション以降当ウインドウ定義が変更されたかどうか を決定するためにデータ構造をチェックする手段と、 書き込み可能プレーンの隠れた領域が合致し、書き込み可能プレ ーンの隠れていない全ての領域が隠れた領域の反対になるように、データ構造の ウインドウ共通部分を用いて書き込み可能プレーンをアップデートする手段で、 前のオペレーシヨン以降当ウインドウ 定義が変更したときにのみ書き込み可能プレーンをアップデートする手段と、 当ウインドウの隠れていない領域に対して書き込み可能テストを 真に設定する手段と、 前記書き込み可能テスト及びウインドウ・クリップ境界に基づい て画素をフレーム・バッファに書き込むかどうかを決定する手段と、 から成ることを特徴とする描画制御システム。 18. 請求項第17項のシステムであって、さらに、 描画するウインドウが完 全に隠れているかどうかを、データ構造の共通部分情報及びウインドウ優先順位 情報に基づいて決定する手段を備えたことを特徴とするシステム。 19. 請求項第17項のシステムであって、さらに、 (e)描画するウインドウが全く隠れていないかどうかを決定する 手段と、 (f)もし描画する前記ウインドウが全く隠れていない時には当ウ インドウのウインドウ・クリップ境界のみを用いて描画する前記ウインドウを描 画する手段とを、 備えたことを特徴とする方法。 20. 請求項第17項のシステムであって、ここで前記決定手段は、 (i)描画する前記ウインドウが完全に隠れているかどうかを決定 する手段と、 (ii)描画する前記ウインドウが部分的に隠れているかどうかを決 定する手段とを、 有することを特徴とするシステム。
JP51435394A 1992-12-17 1993-12-07 ウィンドウ型及び他の表示オペレーションのためのグラフィックス制御プレーン Expired - Fee Related JP3413201B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US99373692A 1992-12-17 1992-12-17
US07/993,736 1992-12-17
PCT/US1993/011896 WO1994014155A1 (en) 1992-12-17 1993-12-07 Graphics control planes for windowing and other display operations

Publications (2)

Publication Number Publication Date
JPH08504961A true JPH08504961A (ja) 1996-05-28
JP3413201B2 JP3413201B2 (ja) 2003-06-03

Family

ID=25539870

Family Applications (1)

Application Number Title Priority Date Filing Date
JP51435394A Expired - Fee Related JP3413201B2 (ja) 1992-12-17 1993-12-07 ウィンドウ型及び他の表示オペレーションのためのグラフィックス制御プレーン

Country Status (3)

Country Link
US (1) US5515494A (ja)
JP (1) JP3413201B2 (ja)
WO (1) WO1994014155A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004354896A (ja) * 2003-05-30 2004-12-16 Matsushita Electric Ind Co Ltd 描画処理装置及び描画処理方法
JP2007080020A (ja) * 2005-09-15 2007-03-29 Matsushita Electric Ind Co Ltd ステンシルによるウィンドウ処理装置及び方法

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5561755A (en) * 1994-07-26 1996-10-01 Ingersoll-Rand Company Method for multiplexing video information
JP2729151B2 (ja) * 1994-10-19 1998-03-18 日本電気アイシーマイコンシステム株式会社 記憶制御装置
US5877762A (en) * 1995-02-27 1999-03-02 Apple Computer, Inc. System and method for capturing images of screens which display multiple windows
US5793360A (en) * 1995-05-05 1998-08-11 Wacom Co., Ltd. Digitizer eraser system and method
US5751979A (en) * 1995-05-31 1998-05-12 Unisys Corporation Video hardware for protected, multiprocessing systems
US5841420A (en) * 1995-08-18 1998-11-24 International Business Machines Corporation Method and system in a data processing system windowing environment for displaying previously obscured information
US6097388A (en) * 1995-08-22 2000-08-01 International Business Machines Corporation Method for managing non-rectangular windows in a raster display
US5850232A (en) * 1996-04-25 1998-12-15 Microsoft Corporation Method and system for flipping images in a window using overlays
US5801717A (en) * 1996-04-25 1998-09-01 Microsoft Corporation Method and system in display device interface for managing surface memory
US6812930B1 (en) * 1996-05-10 2004-11-02 Apple Computer, Inc. Transparent compatibility and adaptation to differing format implementations in a computer system
US6522335B2 (en) * 1999-05-10 2003-02-18 Autodesk Canada Inc. Supplying data to a double buffering process
WO2001082279A2 (en) * 2000-04-24 2001-11-01 The Trustees Of Columbia University In The City Of New York System and method for dynamic space management of a display space
JP2002006829A (ja) * 2000-06-26 2002-01-11 Nec Corp 表示制御装置、表示制御機能を備えた情報処理装置、表示制御方法および記録媒体
WO2002093491A1 (en) * 2001-05-17 2002-11-21 The Trustees Of Columbia University In The City Of New York System and method for view management in three dimensional space
US6888550B2 (en) * 2001-07-19 2005-05-03 International Business Machines Corporation Selecting between double buffered stereo and single buffered stereo in a windowing system
KR20040069344A (ko) * 2001-12-28 2004-08-05 코닌클리즈케 필립스 일렉트로닉스 엔.브이. 데이터 디코딩 방법, 수신기 및 컴퓨터 프로그램 제품
US7310103B2 (en) * 2002-03-05 2007-12-18 Sun Microsystems, Inc. Pipelined 2D viewport clip circuit
KR100566242B1 (ko) * 2002-07-19 2006-03-29 삼성전자주식회사 이동통신단말기에서 화면 편집 장치 및 방법
US7002599B2 (en) * 2002-07-26 2006-02-21 Sun Microsystems, Inc. Method and apparatus for hardware acceleration of clipping and graphical fill in display systems
US7286140B2 (en) * 2002-07-26 2007-10-23 Sun Microsystems, Inc. Hardware acceleration of display data clipping
JP4158462B2 (ja) 2002-09-04 2008-10-01 ソニー株式会社 画面表示処理装置及び画面表示処理方法、並びにコンピュータ・プログラム
JP2006510963A (ja) * 2002-12-18 2006-03-30 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ ネットワーク上で伝送されるメディア・データのクリッピング
US7313764B1 (en) * 2003-03-06 2007-12-25 Apple Inc. Method and apparatus to accelerate scrolling for buffered windows
US20050195206A1 (en) * 2004-03-04 2005-09-08 Eric Wogsberg Compositing multiple full-motion video streams for display on a video monitor
US7921373B2 (en) * 2004-04-05 2011-04-05 Panasonic Corporation Display screen management apparatus
WO2005103877A1 (ja) * 2004-04-22 2005-11-03 Fujitsu Limited 画像処理装置及びグラフィックスメモリ装置
US8006196B2 (en) * 2004-09-10 2011-08-23 Presagis Multi-application graphic display environment
US7747965B2 (en) * 2005-01-18 2010-06-29 Microsoft Corporation System and method for controlling the opacity of multiple windows while browsing
US8341541B2 (en) * 2005-01-18 2012-12-25 Microsoft Corporation System and method for visually browsing of open windows
US7426697B2 (en) 2005-01-18 2008-09-16 Microsoft Corporation Multi-application tabbing system
US20060164431A1 (en) * 2005-01-26 2006-07-27 Samsung Electronics, Co.,Ltd. Apparatus and method for displaying graphic objects concurrently
CN1300684C (zh) * 2005-01-31 2007-02-14 浙江大学 确定图形用户界面中窗口剪切关系的方法
US20060184893A1 (en) * 2005-02-17 2006-08-17 Raymond Chow Graphics controller providing for enhanced control of window animation
JP4302081B2 (ja) * 2005-06-21 2009-07-22 富士通株式会社 ウェブアプリケーションシステム,遠隔操作サーバプログラム及び遠隔操作クライアントプログラム
US8810480B2 (en) * 2006-08-04 2014-08-19 Apple Inc. Methods and apparatuses for controlling display devices
US7764291B1 (en) * 2006-08-30 2010-07-27 Adobe Systems Incorporated Identification of common visible regions in purposing media for targeted use
JP5116514B2 (ja) * 2008-03-11 2013-01-09 キヤノン株式会社 撮像装置および表示制御方法
US8115778B2 (en) * 2008-09-26 2012-02-14 Nvidia Corporation System and method for selecting a pixel output format
US8713473B2 (en) 2011-04-26 2014-04-29 Google Inc. Mobile browser context switching
US8610724B2 (en) * 2011-07-29 2013-12-17 Qualcomm Innovation Center, Inc. Systems and methods for webpage adaptive rendering
EP2798615A4 (en) * 2011-12-26 2015-09-09 Intel Corp MULTI-PLANE SCISSOR REGISTERS FOR IMAGE DATA RENDERING
US10114672B2 (en) * 2013-12-31 2018-10-30 Thomson Licensing User-centered task scheduling for multi-screen viewing in cloud computing environment
CN110989948B (zh) * 2019-10-31 2023-03-21 中国航空工业集团公司洛阳电光设备研究所 一种基于ufcp绘图帧率提升方法

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4555775B1 (en) * 1982-10-07 1995-12-05 Bell Telephone Labor Inc Dynamic generation and overlaying of graphic windows for multiple active program storage areas
US4550315A (en) * 1983-11-03 1985-10-29 Burroughs Corporation System for electronically displaying multiple images on a CRT screen such that some images are more prominent than others
US4823108A (en) * 1984-05-02 1989-04-18 Quarterdeck Office Systems Display system and memory architecture and method for displaying images in windows on a video display
JPS60232596A (ja) * 1984-05-02 1985-11-19 株式会社日立製作所 マルチウインドウ表示方式
DE3584718D1 (de) * 1984-12-07 1992-01-02 Dainippon Screen Mfg Bilddatenverarbeitungsverfahren und system dafuer.
JPS61188582A (ja) * 1985-02-18 1986-08-22 三菱電機株式会社 マルチウインドウ書込み制御装置
JPH0727349B2 (ja) * 1985-07-01 1995-03-29 株式会社日立製作所 マルチウインドウの表示制御方式
US4710767A (en) * 1985-07-19 1987-12-01 Sanders Associates, Inc. Method and apparatus for displaying multiple images in overlapping windows
DE3650119T2 (de) * 1985-08-14 1995-03-30 Hitachi Ltd Verfahren zur Anzeigesteuerung für ein System mit mehreren Bildausschnitten.
JP2585515B2 (ja) * 1985-08-16 1997-02-26 株式会社日立製作所 図形描画方法
US4860218A (en) * 1985-09-18 1989-08-22 Michael Sleator Display with windowing capability by addressing
US4954818A (en) * 1985-10-18 1990-09-04 Hitachi, Ltd. Multi-window display control system
US4780709A (en) * 1986-02-10 1988-10-25 Intel Corporation Display processor
US4868557A (en) * 1986-06-04 1989-09-19 Apple Computer, Inc. Video display apparatus
US4772881A (en) * 1986-10-27 1988-09-20 Silicon Graphics, Inc. Pixel mapping apparatus for color graphics display
US4862154A (en) * 1986-10-31 1989-08-29 International Business Machines Corporation Image display processor for graphics workstation
US4954819A (en) * 1987-06-29 1990-09-04 Evans & Sutherland Computer Corp. Computer graphics windowing system for the display of multiple dynamic images
US5061919A (en) * 1987-06-29 1991-10-29 Evans & Sutherland Computer Corp. Computer graphics dynamic control system
US5216413A (en) * 1988-06-13 1993-06-01 Digital Equipment Corporation Apparatus and method for specifying windows with priority ordered rectangles in a computer video graphics system
US5003496A (en) * 1988-08-26 1991-03-26 Eastman Kodak Company Page memory control in a raster image processor
US5043923A (en) * 1988-10-07 1991-08-27 Sun Microsystems, Inc. Apparatus for rapidly switching between frames to be presented on a computer output display
US5101365A (en) * 1988-10-31 1992-03-31 Sun Microsystems, Inc. Apparatus for extending windows using Z buffer memory
US5091717A (en) * 1989-05-01 1992-02-25 Sun Microsystems, Inc. Apparatus for selecting mode of output in a computer system
US5220312A (en) * 1989-09-29 1993-06-15 International Business Machines Corporation Pixel protection mechanism for mixed graphics/video display adaptors
US5276437A (en) * 1992-04-22 1994-01-04 International Business Machines Corporation Multi-media window manager

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004354896A (ja) * 2003-05-30 2004-12-16 Matsushita Electric Ind Co Ltd 描画処理装置及び描画処理方法
JP2007080020A (ja) * 2005-09-15 2007-03-29 Matsushita Electric Ind Co Ltd ステンシルによるウィンドウ処理装置及び方法

Also Published As

Publication number Publication date
JP3413201B2 (ja) 2003-06-03
WO1994014155A1 (en) 1994-06-23
US5515494A (en) 1996-05-07

Similar Documents

Publication Publication Date Title
JP3413201B2 (ja) ウィンドウ型及び他の表示オペレーションのためのグラフィックス制御プレーン
US4642790A (en) Presentation space management and viewporting on a multifunction virtual terminal
US4907174A (en) Z-buffer allocated for window identification
US7253820B2 (en) Method and system for dynamically allocating a frame buffer for efficient anti-aliasing
US6002385A (en) Computer display system controller
US5748174A (en) Video display system including graphic layers with sizable, positionable windows and programmable priority
EP0419814B1 (en) Pixel protection mechanism for mixed graphics/video display adaptors
JP3428192B2 (ja) ウインドウ表示処理装置
JPH0850659A (ja) フルモーション動画のntsc式表示装置および方法
EP0455374A2 (en) Controlling a computer display
EP0673012A2 (en) Controller for a display with multiple common lines for each pixel
US5454076A (en) Method and apparatus for simultaneously minimizing storage and maximizing total memory bandwidth for a repeating pattern
US5146211A (en) Bit mapped color cursor
CA1294381C (en) Display system with symbol font memory
US7663642B2 (en) Systems and methods for rendering a polygon in an image to be displayed
US4748442A (en) Visual displaying
JP3578533B2 (ja) 画像表示制御装置
JP2858137B2 (ja) コンピュータ出力装置
JPH0562348B2 (ja)
US5777631A (en) Method and apparatus for displaying a video window in a computer graphics display
US4988985A (en) Method and apparatus for a self-clearing copy mode in a frame-buffer memory
JPH07234773A (ja) 表示制御装置
JP3400175B2 (ja) 表示装置
JP2547347B2 (ja) 画像表示制御装置
KR0145709B1 (ko) 컴퓨터 그래픽 시스템

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080328

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090328

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090328

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100328

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100328

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110328

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120328

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120328

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130328

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130328

Year of fee payment: 10

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130328

Year of fee payment: 10

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees