JP2787487B2 - コンピュータシステムに表示され且つ操作される線分の位置を決定する回路 - Google Patents
コンピュータシステムに表示され且つ操作される線分の位置を決定する回路Info
- Publication number
- JP2787487B2 JP2787487B2 JP1288089A JP28808989A JP2787487B2 JP 2787487 B2 JP2787487 B2 JP 2787487B2 JP 1288089 A JP1288089 A JP 1288089A JP 28808989 A JP28808989 A JP 28808989A JP 2787487 B2 JP2787487 B2 JP 2787487B2
- Authority
- JP
- Japan
- Prior art keywords
- value
- register
- pixel
- circuit
- output
- 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.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/36—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
- G09G5/39—Control of the bit-mapped memory
- G09G5/393—Arrangements for updating the contents of the bit-mapped memory
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Controls And Circuits For Display Device (AREA)
- Image Generation (AREA)
Description
【発明の詳細な説明】 〔産業上の利用分野〕 本発明はコンピユータシステムに関し、特に、コンピ
ユータシステムの出力表示装置に表示されるべき走査線
の個々の点の位置を確定する回路に関する。
ユータシステムの出力表示装置に表示されるべき走査線
の個々の点の位置を確定する回路に関する。
〔従来の技術及び発明が解決しようとする問題点〕 図形表示を実行するためにコンピユータを利用する場
合の主な問題点は、陰極線管(CRT)に提供すべき図形
材料の1フレームごとに、陰極線管の各位置(画素)に
ついて表示すべき情報を表示するものを記憶することが
通常必要であるという点にある。大型で高解像度の表示
装置では、陰極線管の画素数は水平方向,垂直方向のい
ずれにも約千個以上になると考えられ、合わせて約百万
個以上の画素に関する情報を記憶しなければならない。
陰極線管のいくつかの異なる色を現わすことができる好
ましいシステムにおいては、各画素は特定の色出力を指
定する8ビツトのデジタル情報を含む。従つて、出力装
置に提示すべきフレームごとに、約八百万ビツトの情報
を記憶しなければならない。
合の主な問題点は、陰極線管(CRT)に提供すべき図形
材料の1フレームごとに、陰極線管の各位置(画素)に
ついて表示すべき情報を表示するものを記憶することが
通常必要であるという点にある。大型で高解像度の表示
装置では、陰極線管の画素数は水平方向,垂直方向のい
ずれにも約千個以上になると考えられ、合わせて約百万
個以上の画素に関する情報を記憶しなければならない。
陰極線管のいくつかの異なる色を現わすことができる好
ましいシステムにおいては、各画素は特定の色出力を指
定する8ビツトのデジタル情報を含む。従つて、出力装
置に提示すべきフレームごとに、約八百万ビツトの情報
を記憶しなければならない。
表示装置のフレームごとに、各画素についてカラー情
報を提供しなければならないばかりでなく、図形表示を
生成する場合、図形の形状を確定する通常の方法によれ
ば、図形の形状を規定するために、様々なアルゴリズム
を適用することも必要である。この情報をシステムのソ
フトウエアで処理すると、表示すべきそれぞれの点の位
置を計算し、その点に表示すべきデータを確定しなけれ
ばならなくなるため、システムの動作は、アニメーシヨ
ンなどの機能が実質的に不可能になるほど遅くなつてし
まう。たとえば、出力表示装置に多角形を提示するため
には、情報が水平走査線によつて表示装置に供給される
ことから、多角形を構成する各走査線の両端部を確定す
る必要がある。従来のシステムにおいては、出力表示装
置へ走査されるべきそれぞれの線の端部の確定には、中
央処理装置(CPU)により実行されるソフトウエアを使
用して提示すべき各図形形状のそれぞれの走査線につい
て終端値を評価することが必要であつた。このような構
成では、図形を提示するのに要する時間は、顕著な表示
の遅れを招くまでに長くなる。
報を提供しなければならないばかりでなく、図形表示を
生成する場合、図形の形状を確定する通常の方法によれ
ば、図形の形状を規定するために、様々なアルゴリズム
を適用することも必要である。この情報をシステムのソ
フトウエアで処理すると、表示すべきそれぞれの点の位
置を計算し、その点に表示すべきデータを確定しなけれ
ばならなくなるため、システムの動作は、アニメーシヨ
ンなどの機能が実質的に不可能になるほど遅くなつてし
まう。たとえば、出力表示装置に多角形を提示するため
には、情報が水平走査線によつて表示装置に供給される
ことから、多角形を構成する各走査線の両端部を確定す
る必要がある。従来のシステムにおいては、出力表示装
置へ走査されるべきそれぞれの線の端部の確定には、中
央処理装置(CPU)により実行されるソフトウエアを使
用して提示すべき各図形形状のそれぞれの走査線につい
て終端値を評価することが必要であつた。このような構
成では、図形を提示するのに要する時間は、顕著な表示
の遅れを招くまでに長くなる。
このため、動作をスピードアツプできるようにハード
ウエアを利用する様々なシステムが示唆されている。動
作を速くする1つの方法では、2つの出力フレームバツ
フアを使用し、一方のバツフアの内容が表示装置へ走査
されている間の他方のバツフアをロードする。このよう
なシステムは動作を著しく速くはするが、記憶装置を実
現するためにほぼ2倍の記憶容量を必要とする。
ウエアを利用する様々なシステムが示唆されている。動
作を速くする1つの方法では、2つの出力フレームバツ
フアを使用し、一方のバツフアの内容が表示装置へ走査
されている間の他方のバツフアをロードする。このよう
なシステムは動作を著しく速くはするが、記憶装置を実
現するためにほぼ2倍の記憶容量を必要とする。
従つて、本発明の目的は、コンピユータシステムの動
作速度を増すことである。
作速度を増すことである。
本発明の目的は、通常の場合には、これまで、コンピ
ユータシステムのソフトウエアにより処理されていた図
形材料の操作をハードウエアで処理するための回路を提
供することである。
ユータシステムのソフトウエアにより処理されていた図
形材料の操作をハードウエアで処理するための回路を提
供することである。
本発明の付加的な目的は、出力表示装置へ走査される
べき線の端部のX座標とY座標を確定する回路を提供す
ることである。
べき線の端部のX座標とY座標を確定する回路を提供す
ることである。
本発明の上記の目的及びその他の目的は、単一の出力
表示用バッフアのみを使用して高速図形表示を実行でき
るようにした独自の図形提示の考えを利用する新規な出
力表示システムにおいて実現される。
表示用バッフアのみを使用して高速図形表示を実行でき
るようにした独自の図形提示の考えを利用する新規な出
力表示システムにおいて実現される。
図形提示を実現するためにハードウエアを使用するこ
とができるようにするために、ハードウエアに提供され
る情報は、それが表示装置に描出されるべき形状の種類
にかかわらず本質的に同じ性質のものがあるならば、よ
り迅速に処理されることがわかつている。システムは、
形状を、それぞれが四辺形である複数の下位部分から構
成されると考える図形形状の定義を基礎としている。四
辺形の4つの頂点に関する情報のみを処理することによ
り四辺形画像を高速で表示する回路が提供される。この
ような四辺形は、全て、図形提示用ハードウエアにより
同様に処理され、表示装置において再び組合されて、所
望の形状を構成する。
とができるようにするために、ハードウエアに提供され
る情報は、それが表示装置に描出されるべき形状の種類
にかかわらず本質的に同じ性質のものがあるならば、よ
り迅速に処理されることがわかつている。システムは、
形状を、それぞれが四辺形である複数の下位部分から構
成されると考える図形形状の定義を基礎としている。四
辺形の4つの頂点に関する情報のみを処理することによ
り四辺形画像を高速で表示する回路が提供される。この
ような四辺形は、全て、図形提示用ハードウエアにより
同様に処理され、表示装置において再び組合されて、所
望の形状を構成する。
システムは、四辺形を、出力表示装置に提示されるべ
き走査線から成る1つの台形領域を境界限定する複数対
の線分から構成される複数の下位部分に分割する。それ
ぞれの台形の中の各走査線の両端部のX座標とY座標を
その後に確定する。本発明は、出力表示装置に表示され
るべき四辺形図形に含まれる走査線それぞれの両端部を
同時に確定する回路に関する。
き走査線から成る1つの台形領域を境界限定する複数対
の線分から構成される複数の下位部分に分割する。それ
ぞれの台形の中の各走査線の両端部のX座標とY座標を
その後に確定する。本発明は、出力表示装置に表示され
るべき四辺形図形に含まれる走査線それぞれの両端部を
同時に確定する回路に関する。
本発明のシステム及び回路は、動作が最も速く進行す
るように形状を分解する最適の方法を選択するために考
案された。たとえば、分解すべき形状の一部のみがクリ
ツプウインドウの中にあり、別の部分はクリツプウイン
ドウの上方又は下方に位置している場合、クリツプウイ
ンドウの外にある部分を出力する必要がなければ、動作
は一層迅速に進行するであろう。これは、分解を上から
下へ又は下から上へ進めれば可能になると考えられる。
さらに、コンピユータシステムで使用されるランダムア
クセスメモリは、一般に、ページと呼ばれる複数のグル
ープに分割されるが、1つのページの第1のアドレスか
ら別のページの第2のアドレスへ進む(ページ境界を越
える)より、1つのページの中でメモリをアクセスする
ほうが、時間は短くてすむ。動作を下から上へ進める場
合、所定の走査線の処理が通常のように左から右へ進行
するのではなく、右から左へ進行するならば、メモリ中
で越えなければならないページ境界の数は少なくなる。
ページ境界を越える回数が減つても、動作をスピードア
ツプすることができる。
るように形状を分解する最適の方法を選択するために考
案された。たとえば、分解すべき形状の一部のみがクリ
ツプウインドウの中にあり、別の部分はクリツプウイン
ドウの上方又は下方に位置している場合、クリツプウイ
ンドウの外にある部分を出力する必要がなければ、動作
は一層迅速に進行するであろう。これは、分解を上から
下へ又は下から上へ進めれば可能になると考えられる。
さらに、コンピユータシステムで使用されるランダムア
クセスメモリは、一般に、ページと呼ばれる複数のグル
ープに分割されるが、1つのページの第1のアドレスか
ら別のページの第2のアドレスへ進む(ページ境界を越
える)より、1つのページの中でメモリをアクセスする
ほうが、時間は短くてすむ。動作を下から上へ進める場
合、所定の走査線の処理が通常のように左から右へ進行
するのではなく、右から左へ進行するならば、メモリ中
で越えなければならないページ境界の数は少なくなる。
ページ境界を越える回数が減つても、動作をスピードア
ツプすることができる。
本発明のシステム及び動作により実行される分解と走
査線処理は左から右又は右から左のいずれかの方向で、
また、上から下又は下から上のいずれかの方向で進行す
る。さらに、回路は、図形が互いに交わる線分から構成
されている場合でも、各走査線の始りと終りの線を確定
することができる。本発明の回路はそのような直線座標
を提供する能力を備えているので、図形情報を出力表示
装置へ迅速に転送することができる。
査線処理は左から右又は右から左のいずれかの方向で、
また、上から下又は下から上のいずれかの方向で進行す
る。さらに、回路は、図形が互いに交わる線分から構成
されている場合でも、各走査線の始りと終りの線を確定
することができる。本発明の回路はそのような直線座標
を提供する能力を備えているので、図形情報を出力表示
装置へ迅速に転送することができる。
本発明の上述の、そしてその他の目的と特徴は、図面
中のいくつかの図と共に以下の詳細な説明を参照するこ
とにより、当業者には明白になるであろう。尚、図面
中、いくつかの図を通して、同じ図中符号は同様の部分
を示す。
中のいくつかの図と共に以下の詳細な説明を参照するこ
とにより、当業者には明白になるであろう。尚、図面
中、いくつかの図を通して、同じ図中符号は同様の部分
を示す。
以下の詳細な説明は、一部で、コンピユータメモリ内
におけるデータビツトの操作を、アルゴリズム及び記号
表示で表わしている。このアルゴリズムによる説明や表
示は、データ処理技術の分野を熟知した人がその分野の
他の人に作業の実体を最も有効に伝達するために利用す
る手段である。
におけるデータビツトの操作を、アルゴリズム及び記号
表示で表わしている。このアルゴリズムによる説明や表
示は、データ処理技術の分野を熟知した人がその分野の
他の人に作業の実体を最も有効に伝達するために利用す
る手段である。
一般的にもそうであるが、この明細書では、アルゴリ
ズムは、所望の結果に至る首尾一貫した一連のステツプ
であると考えられている。それらのステツプは、物理量
の物理的操作を必要とするステツプである。通常、物理
量は記憶,転送,組合せ,比較及びその他の方法による
操作が可能である電気的信号又は磁気信号の形態をとる
が、必ずそうである必要はない。一般に共通して使用す
る用語という点を主に考慮して、そのような信号をビツ
ト,値,要素,記号,文字,項,数などと呼ぶと好都合
なときがある。しかしながら、それらの用語及びそれに
類する用語は、全て、適正な物理量と関連するものであ
り、単に、そのような量に適宜上付されたラベルである
にすぎないということに留意すべきである。
ズムは、所望の結果に至る首尾一貫した一連のステツプ
であると考えられている。それらのステツプは、物理量
の物理的操作を必要とするステツプである。通常、物理
量は記憶,転送,組合せ,比較及びその他の方法による
操作が可能である電気的信号又は磁気信号の形態をとる
が、必ずそうである必要はない。一般に共通して使用す
る用語という点を主に考慮して、そのような信号をビツ
ト,値,要素,記号,文字,項,数などと呼ぶと好都合
なときがある。しかしながら、それらの用語及びそれに
類する用語は、全て、適正な物理量と関連するものであ
り、単に、そのような量に適宜上付されたラベルである
にすぎないということに留意すべきである。
さらに、実行される操作は、一般には人間のオペレー
タが実行するメンタルな操作と関連している加算又は比
較などの用語で呼ばれることが多い。本発明の一部を成
す、ここで説明する動作においては、オペレータのその
ような能力は、多くの場合、不要であるか又は望ましく
なく、動作は機械動作である。本発明の動作を実行する
のに有用な機械には、汎用デジダルコンピユータ及びそ
の他の同様な装置がある。いずれにしても、コンピユー
タを操作するときの方法動作と、演算方法それ自体との
区別を心に留めておかねばならない。本発明は、電気的
信号又はその他の(たとえば、機械的,科学的)物理的
信号を処理して、別の所望の物理的信号を発生する際に
コンピユータを動作させるための方法過程に関する。
タが実行するメンタルな操作と関連している加算又は比
較などの用語で呼ばれることが多い。本発明の一部を成
す、ここで説明する動作においては、オペレータのその
ような能力は、多くの場合、不要であるか又は望ましく
なく、動作は機械動作である。本発明の動作を実行する
のに有用な機械には、汎用デジダルコンピユータ及びそ
の他の同様な装置がある。いずれにしても、コンピユー
タを操作するときの方法動作と、演算方法それ自体との
区別を心に留めておかねばならない。本発明は、電気的
信号又はその他の(たとえば、機械的,科学的)物理的
信号を処理して、別の所望の物理的信号を発生する際に
コンピユータを動作させるための方法過程に関する。
本発明は、このような動作を実行する装置にも関す
る。この装置は必要な目的のために特別に構成されても
良いが、汎用コンピユータを、コンピユータに記憶され
たコンピユータプログラムにより選択的に動作させるか
又は再構成しても良い。ここに提示するアルゴリズム
は、本来、特定のコンピユータ又は他の装置に関連する
ものではない。詳細にいえば、ここに示す教示に従つて
プログラムを書込んだ上で様々な汎用機械を使用でき
る。あるいは、必要な方法過程を実行するためには、よ
り専門化させた装置を設計するほうが好都合であると判
明するかもしれない。このような多様な機械について要
求される構造は、以下の説明から明白になるであろう。
る。この装置は必要な目的のために特別に構成されても
良いが、汎用コンピユータを、コンピユータに記憶され
たコンピユータプログラムにより選択的に動作させるか
又は再構成しても良い。ここに提示するアルゴリズム
は、本来、特定のコンピユータ又は他の装置に関連する
ものではない。詳細にいえば、ここに示す教示に従つて
プログラムを書込んだ上で様々な汎用機械を使用でき
る。あるいは、必要な方法過程を実行するためには、よ
り専門化させた装置を設計するほうが好都合であると判
明するかもしれない。このような多様な機械について要
求される構造は、以下の説明から明白になるであろう。
〔実施例〕 以下、添付の図面を参照して本発明を詳細に説明す
る。
る。
コンピユータシステムの設計にあたつては、図形画像
の表示により大半の機械の動作が相当に遅くなることが
わかつている。このようなスピードダウンは、コンピユ
ータが出力表示装置に提示すべきフレームごとに扱わな
ければならない情報の量が厖大であることと、図形画像
提示のために大量の情報を操作するときに中央処理装置
(CPU)の無理な使いかたが必要になることによつて起
こる。
の表示により大半の機械の動作が相当に遅くなることが
わかつている。このようなスピードダウンは、コンピユ
ータが出力表示装置に提示すべきフレームごとに扱わな
ければならない情報の量が厖大であることと、図形画像
提示のために大量の情報を操作するときに中央処理装置
(CPU)の無理な使いかたが必要になることによつて起
こる。
このことは、出力表示装置に複数の「ウインドウ」を
含むインタフエースを利用するシステムに特に当てはま
る。そのようなシステムにおいては、メモリの、瞬時呼
出しのために利用可能な部分に、一度に、2つ以上のプ
ログラムが記憶される。そのような各プログラムのテキ
スト出力と図形出力は、出力表示装置に、ウインドウ又
はクリツプウインドウと呼ばれる特定の1組の規定境界
に囲まれる形で現われることになつている。それぞれの
ウインドウは他のウインドウと重なつていても良く、
「前面のウインドウ」が現在作業中のフアイルを構成す
る。通常、コンピユータのオペレータは一度に1つのウ
インドウでのみプログラムを操作するが、別のウインド
ウのプログラムへすばやく切換えて、そのプログラムで
作業を進めることは可能である。一般に、ウインドウ
は、ウインドウを使用しない操作と比べて、かなり大き
な記憶容量と時間を必要とする。
含むインタフエースを利用するシステムに特に当てはま
る。そのようなシステムにおいては、メモリの、瞬時呼
出しのために利用可能な部分に、一度に、2つ以上のプ
ログラムが記憶される。そのような各プログラムのテキ
スト出力と図形出力は、出力表示装置に、ウインドウ又
はクリツプウインドウと呼ばれる特定の1組の規定境界
に囲まれる形で現われることになつている。それぞれの
ウインドウは他のウインドウと重なつていても良く、
「前面のウインドウ」が現在作業中のフアイルを構成す
る。通常、コンピユータのオペレータは一度に1つのウ
インドウでのみプログラムを操作するが、別のウインド
ウのプログラムへすばやく切換えて、そのプログラムで
作業を進めることは可能である。一般に、ウインドウ
は、ウインドウを使用しない操作と比べて、かなり大き
な記憶容量と時間を必要とする。
本発明がその一部を成すシステムは、情報を瞬時に利
用できるように大半の動作をハードウエアで処理するこ
とにより、コンピユータグラフイツクスの表示をスピー
ドアツプする。図形の提示を実現するのにハードウエア
を使用することができるようにするために、システム
は、表示装置に提示すべき図形画像を、全てハードウエ
アにより同じように処理しうる四辺形に分割する。シス
テムはそれらの四辺形を取上げ、出力表示装置に提示す
べき同じ走査線を範囲規定する線分にさらに細分する。
走査線は、実際には、1つの台形を形成している。次
に、各走査線の両端部のX座標とY座標を本発明の回路
により確定する。システムはその直線座標を取上げ、連
続走査線に変換する。それらの連続走査線はフレームバ
ツフアに記憶され、出力表示装置に表示されれば良い。
用できるように大半の動作をハードウエアで処理するこ
とにより、コンピユータグラフイツクスの表示をスピー
ドアツプする。図形の提示を実現するのにハードウエア
を使用することができるようにするために、システム
は、表示装置に提示すべき図形画像を、全てハードウエ
アにより同じように処理しうる四辺形に分割する。シス
テムはそれらの四辺形を取上げ、出力表示装置に提示す
べき同じ走査線を範囲規定する線分にさらに細分する。
走査線は、実際には、1つの台形を形成している。次
に、各走査線の両端部のX座標とY座標を本発明の回路
により確定する。システムはその直線座標を取上げ、連
続走査線に変換する。それらの連続走査線はフレームバ
ツフアに記憶され、出力表示装置に表示されれば良い。
第1図は、コンピユータの出力装置に個々に表示され
るときには完成した元の形状を示す2つの四辺形8及び
9に分割された図形形状を表わす図である。第1図に示
す形状は単純であるが、実質的に限りなく複雑な形状で
も、十分に多数の小さな独立した四辺形を設定するなら
ば表示できることは当業者には明白であろう。実際問題
として、本発明のシステムは、非常に複雑な三次元の動
く形状を表示するために利用されている。
るときには完成した元の形状を示す2つの四辺形8及び
9に分割された図形形状を表わす図である。第1図に示
す形状は単純であるが、実質的に限りなく複雑な形状で
も、十分に多数の小さな独立した四辺形を設定するなら
ば表示できることは当業者には明白であろう。実際問題
として、本発明のシステムは、非常に複雑な三次元の動
く形状を表示するために利用されている。
第3図は、本発明に従つて構成された、汎用コンピユ
ータシステムと組合せて使用可能な図形出力システム10
を示すブロツク線図である。このシステム10は、コンピ
ユータシステムの中央処理装置(図示せず)から、所望
の図形形状に関する情報を受信するバスインタフエース
論理12を含む。バスインタフエース論理12は、入力が転
送されるべきシステム10の特定の部分を指定する情報
を、アドレス線を介して受信する。バスインタフエース
論理12は、色記述データなどの実際のデータを入力デー
タ線を介して受信する。バスインターフエース論理12
は、情報を処理すべき方式を指定する制御信号を制御線
を介してさらに受信する。
ータシステムと組合せて使用可能な図形出力システム10
を示すブロツク線図である。このシステム10は、コンピ
ユータシステムの中央処理装置(図示せず)から、所望
の図形形状に関する情報を受信するバスインタフエース
論理12を含む。バスインタフエース論理12は、入力が転
送されるべきシステム10の特定の部分を指定する情報
を、アドレス線を介して受信する。バスインタフエース
論理12は、色記述データなどの実際のデータを入力デー
タ線を介して受信する。バスインターフエース論理12
は、情報を処理すべき方式を指定する制御信号を制御線
を介してさらに受信する。
本発明に従つて四辺形から図形表示を構成する場合、
入力情報は、表示される情報が現われるべき特定のウイ
ンドウを規定する矩形領域の座標と、四辺形の座標(頂
点)と、それぞれの四辺形に関する色データとを含む。
四辺形を表示するときに提示されるべき色のデータは、
データ経路/メモリインタフエース段22に記憶される。
四辺形の頂点と、クリツプウインドウ情報は、座標ステ
ージング回路14に記憶される。この回路14は、レジスタ
やゲーテイング回路などの従来から良く知られている手
段によつて入力情報の比較を実行するハードウエアを含
む。
入力情報は、表示される情報が現われるべき特定のウイ
ンドウを規定する矩形領域の座標と、四辺形の座標(頂
点)と、それぞれの四辺形に関する色データとを含む。
四辺形を表示するときに提示されるべき色のデータは、
データ経路/メモリインタフエース段22に記憶される。
四辺形の頂点と、クリツプウインドウ情報は、座標ステ
ージング回路14に記憶される。この回路14は、レジスタ
やゲーテイング回路などの従来から良く知られている手
段によつて入力情報の比較を実行するハードウエアを含
む。
実行される比較は、各頂点の各X値とその他の頂点そ
れぞれのX値との比較、各頂点の各Y値のその他の頂点
それぞれのY値との比較、及び頂点のX値とY値それぞ
れと、情報が提示されるべきクリツプウインドウの縁部
のX値及びY値との比較である。これはハードウエアに
より実行されるので、情報はシステム10に対して直ちに
利用可能な状態にあり、システムのクロツク時間が失な
われることはない。
れぞれのX値との比較、各頂点の各Y値のその他の頂点
それぞれのY値との比較、及び頂点のX値とY値それぞ
れと、情報が提示されるべきクリツプウインドウの縁部
のX値及びY値との比較である。これはハードウエアに
より実行されるので、情報はシステム10に対して直ちに
利用可能な状態にあり、システムのクロツク時間が失な
われることはない。
座標ステージング回路14で利用できる四辺形の頂点
と、クリツプウインドウに関する情報は、座標順序付け
回路16に提供され、この回路16において、四辺形は、そ
れぞれが元の四辺形の2つの線分を含む一連の下位部分
に分解される。それらの下位部分は、それぞれ、線分が
四辺形の一連の平行な水平走査線により描出可能である
ような1つの領域を規定するように選択される。尚、各
走査線は線分の一方に位置するX始り値と、他方の線分
にあるX終り値とを有する。本質においては、2つの線
分は、四辺形の形状を考えてできる限り多くの数のY
(水平)走査線を含む台形を規定する。全ての下位部分
のあらゆる走査線が表示装置に描出されると、四辺形は
全体として規定されることになる。
と、クリツプウインドウに関する情報は、座標順序付け
回路16に提供され、この回路16において、四辺形は、そ
れぞれが元の四辺形の2つの線分を含む一連の下位部分
に分解される。それらの下位部分は、それぞれ、線分が
四辺形の一連の平行な水平走査線により描出可能である
ような1つの領域を規定するように選択される。尚、各
走査線は線分の一方に位置するX始り値と、他方の線分
にあるX終り値とを有する。本質においては、2つの線
分は、四辺形の形状を考えてできる限り多くの数のY
(水平)走査線を含む台形を規定する。全ての下位部分
のあらゆる走査線が表示装置に描出されると、四辺形は
全体として規定されることになる。
第2図(a)から第2図(d)は、本発明に従つて下
位部分に分割された1つの四辺形を示す。第2図(a)
には分解前の四辺形を示し、その下位部分を第2図
(b)から第2図(d)に示す。第2図からかるよう
に、それぞれの下位部分は、出力表示装置に提示される
とき、四辺形を規定する一方の線分から始まり、他方の
線分で終わる一連の水平走査線を含む。四辺形の各下位
部分の走査線は、元の四辺形の台形の一部分を表わす。
全ての台形下位部分のそれらの水平走査線が、出力表示
装置への提示のために、フレームバツフアへ走査された
とき、四辺形の形状全体が表示装置において再構成され
る。
位部分に分割された1つの四辺形を示す。第2図(a)
には分解前の四辺形を示し、その下位部分を第2図
(b)から第2図(d)に示す。第2図からかるよう
に、それぞれの下位部分は、出力表示装置に提示される
とき、四辺形を規定する一方の線分から始まり、他方の
線分で終わる一連の水平走査線を含む。四辺形の各下位
部分の走査線は、元の四辺形の台形の一部分を表わす。
全ての台形下位部分のそれらの水平走査線が、出力表示
装置への提示のために、フレームバツフアへ走査された
とき、四辺形の形状全体が表示装置において再構成され
る。
再び第3図に戻つて説明すると、四辺形が下位部分に
分解された後、個々のY走査線は、機能アドレツシング
段18で確定された始りX値と、終りX値とを有する。本
発明の好ましい実施例によれば、これは、四辺形の分解
された下位部分の中にある各走査線の始りと終りのX値
を構成する特定の画素を確定する回路を使用することに
より実行される。この機能アドレツシング段18は、特定
の四辺形をクリツプウインドウに当てはめるために必要
なクリツピングの一部をさらに実行し、信号をマスク発
生段20へ転送する。マスク発生段20は、情報を、各走査
線の始りと終りを指定して、データ経路/メモリインタ
フエース段22をアドレスするために使用される16画素部
分に配列する。
分解された後、個々のY走査線は、機能アドレツシング
段18で確定された始りX値と、終りX値とを有する。本
発明の好ましい実施例によれば、これは、四辺形の分解
された下位部分の中にある各走査線の始りと終りのX値
を構成する特定の画素を確定する回路を使用することに
より実行される。この機能アドレツシング段18は、特定
の四辺形をクリツプウインドウに当てはめるために必要
なクリツピングの一部をさらに実行し、信号をマスク発
生段20へ転送する。マスク発生段20は、情報を、各走査
線の始りと終りを指定して、データ経路/メモリインタ
フエース段22をアドレスするために使用される16画素部
分に配列する。
マスク発生信号は直線アドレス発生器24にも供給され
る。このアドレス発生器24は、マスク発生段20により提
供された直線アドレスを、出力表示装置のフレームバツ
フアを直線的にアドレスするための信号に変換する。こ
の時点で、データ経路/メモリインタフエース段22にお
いてメモリに保持されていた、表示すべき四辺形に関す
る色データは、出力表示装置の(フレーム)バツフアへ
転送される。
る。このアドレス発生器24は、マスク発生段20により提
供された直線アドレスを、出力表示装置のフレームバツ
フアを直線的にアドレスするための信号に変換する。こ
の時点で、データ経路/メモリインタフエース段22にお
いてメモリに保持されていた、表示すべき四辺形に関す
る色データは、出力表示装置の(フレーム)バツフアへ
転送される。
この明細書で考慮する発明は、最終的には出力表示装
置に1本の走査線として提供される、四辺形の各下位部
分の中のそれぞれの水平線の両端部を確定する装置及び
方法に関する。本発明は第3図に示す図形システムとの
関連で説明されるが、コンピユータシステムに図形表示
出力を供給するそれ以外のシステムにも本発明を広く適
用できることは、当業者には了承されるであろう。
置に1本の走査線として提供される、四辺形の各下位部
分の中のそれぞれの水平線の両端部を確定する装置及び
方法に関する。本発明は第3図に示す図形システムとの
関連で説明されるが、コンピユータシステムに図形表示
出力を供給するそれ以外のシステムにも本発明を広く適
用できることは、当業者には了承されるであろう。
本発明の回路は、各四辺形を複数の下位部分に分解す
る回路から、この図形システムが関連しているコンピユ
ータシステムの出力表示装置に表示されるべき一連の共
通水平線を規定する複数対の線分を表わす入力信号を受
信する。それらの入力信号は、共通のY値を有する特定
の台形領域の境界を限定する線分の頂点の直線座標とし
て、回路に供給される。このような入力信号を発生する
回路は、これも本出願と同じ日に出願されている同時係
属特許出願−出願番号 名称 「Method and Apparatus for Decomposing Graphics Im
ages for Display and Manipulation by a Computer Sy
stem」、発明者C.Malachowsky−に記載されている。
る回路から、この図形システムが関連しているコンピユ
ータシステムの出力表示装置に表示されるべき一連の共
通水平線を規定する複数対の線分を表わす入力信号を受
信する。それらの入力信号は、共通のY値を有する特定
の台形領域の境界を限定する線分の頂点の直線座標とし
て、回路に供給される。このような入力信号を発生する
回路は、これも本出願と同じ日に出願されている同時係
属特許出願−出願番号 名称 「Method and Apparatus for Decomposing Graphics Im
ages for Display and Manipulation by a Computer Sy
stem」、発明者C.Malachowsky−に記載されている。
本発明の回路に供給される線位置情報は四辺形の特定
の下位部分を規定する線分の頂点しか含んでいないのに
対し、出力表示装置は情報を走査線ごとに処理するの
で、関心ある四辺形を完成するために出力表示装置に走
査線を提供できるように、線分により両端を限定される
水平Y走査線のそれぞれの終端点を確定することが必要
である。
の下位部分を規定する線分の頂点しか含んでいないのに
対し、出力表示装置は情報を走査線ごとに処理するの
で、関心ある四辺形を完成するために出力表示装置に走
査線を提供できるように、線分により両端を限定される
水平Y走査線のそれぞれの終端点を確定することが必要
である。
陰極線管などの出力表示装置に1本の直線を描くと
き、その線は隣接する走査線上にある一連の画素により
規定される。描出すべき線が水平である場合、始りの画
素と終りの画素のアドレスが供給されれば、その線を描
くのに、表示装置の走査線は1本で十分である。線が垂
直である場合には、多数の隣接する走査線からそれぞれ
1つずつ画素をとつて、表示装置に書込まなければなら
ない。水平と垂直との間の線の画素の数は、走査線ごと
に、線の傾きによつて異なる。線の傾きが小さければ、
多数の隣接する走査線のそれぞれに多数の隣接する画素
を描いてゆき、線が完成するまでそれを続ける。各走査
線にあるそれぞれの隣接画素列の始りと終りのX値がわ
かれば、表示装置側で間に入るべき画素を埋めて、線を
完成できるであろう。
き、その線は隣接する走査線上にある一連の画素により
規定される。描出すべき線が水平である場合、始りの画
素と終りの画素のアドレスが供給されれば、その線を描
くのに、表示装置の走査線は1本で十分である。線が垂
直である場合には、多数の隣接する走査線からそれぞれ
1つずつ画素をとつて、表示装置に書込まなければなら
ない。水平と垂直との間の線の画素の数は、走査線ごと
に、線の傾きによつて異なる。線の傾きが小さければ、
多数の隣接する走査線のそれぞれに多数の隣接する画素
を描いてゆき、線が完成するまでそれを続ける。各走査
線にあるそれぞれの隣接画素列の始りと終りのX値がわ
かれば、表示装置側で間に入るべき画素を埋めて、線を
完成できるであろう。
表示装置へ走査されるべき台形を描出するためには、
それらの台形の辺を規定する線分それぞれに関連する各
走査線上の位置を知らなければならない。このことは、
各走査線を始めるときと終わらせるとき、また、走査線
をクリツプウインドウに当てはめるためにクリツプする
ときに重要である。線分を横切つてクリツピングが起こ
る場合には、各線分のうち、描出すべき部分を確定する
方法を考案しなければならない。本発明の回路の考え
は、各走査線上のそのような始りと終りの点を確定する
ものである。
それらの台形の辺を規定する線分それぞれに関連する各
走査線上の位置を知らなければならない。このことは、
各走査線を始めるときと終わらせるとき、また、走査線
をクリツプウインドウに当てはめるためにクリツプする
ときに重要である。線分を横切つてクリツピングが起こ
る場合には、各線分のうち、描出すべき部分を確定する
方法を考案しなければならない。本発明の回路の考え
は、各走査線上のそのような始りと終りの点を確定する
ものである。
本発明の回路は、1つの下位部分を規定する2つの線
分をそれぞれ同時に処理できるように、2つの同様の回
路部分を含む。各回路部分は、まず、1つの線分の一方
の頂点から動作を始め、その線分の傾きを計算し、その
計算結果から、線分のX値とY値のうち、大きな割合で
増加しているほうを確定し、傾きに基づいて減分すべき
初期誤差値を確定して記憶し、第1の頂点から値をプロ
ットし始める。誤差値は、線分の正確な経路と、実際に
発生された画素との、最大の傾きの軸に対し垂直な離間
距離を測定するために選択される。Xの値がYより速く
変化している場合には、ステツプごとにXは1画素ずつ
増分(又は減分)され、一方、Yの変化は、誤差値がゼ
ロ以下に達するまで、誤差値から減じられる。このよう
にして、Y値を増分(又は減分)すべきXの値を確定す
る。このX値は特定の線分に関する終りのX値として記
憶され、そこで、Y値が増分(又は減分)される。新た
なY値で最初に現われたX値は、新たなY値と関連する
新たな走査線の始りのX値として記憶される。このよう
にして、Y値ごとに最初と最後に現われるX値を記憶し
ながら、線分の終端頂点に達するまで、動作は続けられ
る。
分をそれぞれ同時に処理できるように、2つの同様の回
路部分を含む。各回路部分は、まず、1つの線分の一方
の頂点から動作を始め、その線分の傾きを計算し、その
計算結果から、線分のX値とY値のうち、大きな割合で
増加しているほうを確定し、傾きに基づいて減分すべき
初期誤差値を確定して記憶し、第1の頂点から値をプロ
ットし始める。誤差値は、線分の正確な経路と、実際に
発生された画素との、最大の傾きの軸に対し垂直な離間
距離を測定するために選択される。Xの値がYより速く
変化している場合には、ステツプごとにXは1画素ずつ
増分(又は減分)され、一方、Yの変化は、誤差値がゼ
ロ以下に達するまで、誤差値から減じられる。このよう
にして、Y値を増分(又は減分)すべきXの値を確定す
る。このX値は特定の線分に関する終りのX値として記
憶され、そこで、Y値が増分(又は減分)される。新た
なY値で最初に現われたX値は、新たなY値と関連する
新たな走査線の始りのX値として記憶される。このよう
にして、Y値ごとに最初と最後に現われるX値を記憶し
ながら、線分の終端頂点に達するまで、動作は続けられ
る。
2つの回路部分は1つの四辺形の各下位部分の2つの
線分を同時に処理するために同じように動作しているの
で、Yレベルを変化させても良い状態になつている第1
の線分を処理している回路の部分は、変化を実行できる
のであつても、他方の線分を処理している回路部分がそ
のY値の変化点に到達するまで待機する。他方の回路部
分がY値を変化させることができるようになつたとき、
完成した走査線のX値は規定されており、それらを処理
すれば良い。すなわち、双方の回路は同時に次のY値へ
進む。それぞれの走査線について識別された2つの始り
X値と、2つの終りX値の処理は、第3図のマスク発生
段20に供給されるべき最も左側(最小)の記憶X値と、
最も右側(最大)の記憶X値とを確定することから成
る。
線分を同時に処理するために同じように動作しているの
で、Yレベルを変化させても良い状態になつている第1
の線分を処理している回路の部分は、変化を実行できる
のであつても、他方の線分を処理している回路部分がそ
のY値の変化点に到達するまで待機する。他方の回路部
分がY値を変化させることができるようになつたとき、
完成した走査線のX値は規定されており、それらを処理
すれば良い。すなわち、双方の回路は同時に次のY値へ
進む。それぞれの走査線について識別された2つの始り
X値と、2つの終りX値の処理は、第3図のマスク発生
段20に供給されるべき最も左側(最小)の記憶X値と、
最も右側(最大)の記憶X値とを確定することから成
る。
各四辺形を迅速に処理するために、1つの下位部分の
1つの線分の終端に達したとき、回路は次に処理すべき
線分をロードする。一方の線分が他方の線分より先に終
わつてしまうことはしばしばあるが、そのような場合に
は、終わつていない線分の情報を再度ロードする必要は
なく、かなり時間を節約できる。
1つの線分の終端に達したとき、回路は次に処理すべき
線分をロードする。一方の線分が他方の線分より先に終
わつてしまうことはしばしばあるが、そのような場合に
は、終わつていない線分の情報を再度ロードする必要は
なく、かなり時間を節約できる。
回路は、図形が完成するまで、四辺形の線分の処理を
続ける。ステツプごとに、発生された値は、本発明の回
路の動作方向及びクリツプウインドウ情報の用途を考慮
して、走査線の実際の始りの値と終りの値を確定するた
めにそれらの値を分類する回路に供給される。この分類
動作は、先に指摘したように、本発明のシステムと回路
が最も速く動作を進行できるように形状を分解する最適
の方法を選択することを目的として考案されているとい
う理由により実行されるのである。分解すべき形状の一
部のみがクリツプウインドウの中に入つており、他の部
分はクリツプウインドウの上又は下に位置している場合
を例にとると、クリツプウインドウの外にある部分を処
理する必要がなければ、動作はさらに速く進行する。こ
のスピードアツプは、分解を上から下へ又は下から上へ
進めれば可能にあるであろう。さらに、動作が下から上
へ進行する場合、動作が通常の場合のように左から右で
はなく、右から左へ進行すれば、メモリ内で境を越える
ページ境界の数が少なくてすむ。ページ境界を越える回
数が少なくなると、動作は一層迅速になる。
続ける。ステツプごとに、発生された値は、本発明の回
路の動作方向及びクリツプウインドウ情報の用途を考慮
して、走査線の実際の始りの値と終りの値を確定するた
めにそれらの値を分類する回路に供給される。この分類
動作は、先に指摘したように、本発明のシステムと回路
が最も速く動作を進行できるように形状を分解する最適
の方法を選択することを目的として考案されているとい
う理由により実行されるのである。分解すべき形状の一
部のみがクリツプウインドウの中に入つており、他の部
分はクリツプウインドウの上又は下に位置している場合
を例にとると、クリツプウインドウの外にある部分を処
理する必要がなければ、動作はさらに速く進行する。こ
のスピードアツプは、分解を上から下へ又は下から上へ
進めれば可能にあるであろう。さらに、動作が下から上
へ進行する場合、動作が通常の場合のように左から右で
はなく、右から左へ進行すれば、メモリ内で境を越える
ページ境界の数が少なくてすむ。ページ境界を越える回
数が少なくなると、動作は一層迅速になる。
次に、本発明の動作を実現するための、Cプログラミ
ング言語に似た擬似コードによるアルゴリズムを示す。
このアルゴリズムは周知のBresenhamアルゴリズムを変
形したものであるが、その他にも数多くの走査変換アル
ゴリズムが存在しており、本発明の実施に際してそれら
のアルゴリズムを容易に実現できることを認識すべきで
あろう。
ング言語に似た擬似コードによるアルゴリズムを示す。
このアルゴリズムは周知のBresenhamアルゴリズムを変
形したものであるが、その他にも数多くの走査変換アル
ゴリズムが存在しており、本発明の実施に際してそれら
のアルゴリズムを容易に実現できることを認識すべきで
あろう。
このアルゴリズムにおいて、 Delta Xは、1つの頂点と別の頂点との間のXの変化
を表わし; Delta Yは、1つの頂点と別の頂点との間のYの変化
を表わし; Xは、当初、始りの頂点の値に設定され; Yは、当初、始りの頂点の値に設定され; X termは、終りの頂点のX値であり; Y termは、終りの頂点のY値であり; abs( )は、その引数の絶対値を戻し; major axisは、Delta XがDelta Yより大きいか否かに
よつて、X又はYを指す。
を表わし; Delta Yは、1つの頂点と別の頂点との間のYの変化
を表わし; Xは、当初、始りの頂点の値に設定され; Yは、当初、始りの頂点の値に設定され; X termは、終りの頂点のX値であり; Y termは、終りの頂点のY値であり; abs( )は、その引数の絶対値を戻し; major axisは、Delta XがDelta Yより大きいか否かに
よつて、X又はYを指す。
第4図は、先に説明した本発明の回路の一部が1つの
線分を処理するときの動作を示す。第4図には、頂点
(0,5)で始り、頂点(4,6)で終る線分が示されてい
る。本発明を実現するとき、回路は、まず、線分の2つ
の頂点の間のXの変化と、頂点間のYの変化とを求め、
それに基づいて線分の傾きを計算し、長軸(最大の変化
を伴なう値)を決定し、誤差項をXの変化の値の二分の
一と等しくなるように設定する。この二分の一値は、よ
り一層対称的な見かけが得られるように線分について回
路により規定される画素の均衡を保つために選択されて
いる。これらの値が与えられると、線分の走査線上の最
初のXの値としてXの頂点値が記憶された状態でプロツ
トが始まる。次に、回路はYの変化の値だけ誤差項を減
分し、2つの試験条件、すなわち、誤差項はゼロより小
さくなつたか、又は描出方向は上向きであり且つ誤差は
ゼロに等しいかを適用する。
線分を処理するときの動作を示す。第4図には、頂点
(0,5)で始り、頂点(4,6)で終る線分が示されてい
る。本発明を実現するとき、回路は、まず、線分の2つ
の頂点の間のXの変化と、頂点間のYの変化とを求め、
それに基づいて線分の傾きを計算し、長軸(最大の変化
を伴なう値)を決定し、誤差項をXの変化の値の二分の
一と等しくなるように設定する。この二分の一値は、よ
り一層対称的な見かけが得られるように線分について回
路により規定される画素の均衡を保つために選択されて
いる。これらの値が与えられると、線分の走査線上の最
初のXの値としてXの頂点値が記憶された状態でプロツ
トが始まる。次に、回路はYの変化の値だけ誤差項を減
分し、2つの試験条件、すなわち、誤差項はゼロより小
さくなつたか、又は描出方向は上向きであり且つ誤差は
ゼロに等しいかを適用する。
これらの条件にいずれも適合しない場合は、試験条件
が真の状態、すなわち、ゼロ以下を示すところまで誤差
項の値が達するまで、動作は続く。ゼロ以下になつた時
点で、X項の値はその線分についてその走査線(Y値)
に関する最終X値として記憶される。動作は次のY値に
進んで続き、増分後の最初のX値を走査線の始りX値と
して記憶し、Xの変化の値を誤差項に加えてゆく。動作
は走査線に沿つて続き、誤差項がゼロ以下になるまで、
X値を増加し、誤差項を減らす。再び、ゼロ以下になつ
た時点のX値が走査線の最終X値として記憶され、Xの
変化が誤差項に加えられ、動作は次のY値に移る。
が真の状態、すなわち、ゼロ以下を示すところまで誤差
項の値が達するまで、動作は続く。ゼロ以下になつた時
点で、X項の値はその線分についてその走査線(Y値)
に関する最終X値として記憶される。動作は次のY値に
進んで続き、増分後の最初のX値を走査線の始りX値と
して記憶し、Xの変化の値を誤差項に加えてゆく。動作
は走査線に沿つて続き、誤差項がゼロ以下になるまで、
X値を増加し、誤差項を減らす。再び、ゼロ以下になつ
た時点のX値が走査線の最終X値として記憶され、Xの
変化が誤差項に加えられ、動作は次のY値に移る。
動作は、X値が線分のX終り値と等しいと確定される
まで続く。この確定の時点で、線分全体が規定され、次
の新たな線分に対して回路の初期設定することができ
る。回路のそれぞれの部分は互いに独立して2つの線分
の一方を処理するように動作するが、1つの線分を処理
している各回路部分は、1本の走査線の処理を終了した
ときに、他方の線分がその走査線に関して完全に規定さ
れ終わつているか否かを試験する。規定が完了していな
ければ、2つの回路部分が共に先へ進むことができ、そ
れぞれの走査線が完全に規定された形で一度に後続する
回路へ転送されるように、回路は、他方の線分がその走
査線を終了するまで待機する。
まで続く。この確定の時点で、線分全体が規定され、次
の新たな線分に対して回路の初期設定することができ
る。回路のそれぞれの部分は互いに独立して2つの線分
の一方を処理するように動作するが、1つの線分を処理
している各回路部分は、1本の走査線の処理を終了した
ときに、他方の線分がその走査線に関して完全に規定さ
れ終わつているか否かを試験する。規定が完了していな
ければ、2つの回路部分が共に先へ進むことができ、そ
れぞれの走査線が完全に規定された形で一度に後続する
回路へ転送されるように、回路は、他方の線分がその走
査線を終了するまで待機する。
第5図は、本発明を実現するための好ましい実施例で
ある1つの回路30を示す。回路30は1対のほぼ同じよう
な回路部分32及び34を含み、各回路部分は2つの線分の
一方を処理する。2つの部分はこのように同じものであ
るので、以下、回路部分32のみを説明する。走査線の終
端値を確定するとき、回路は、まず、線分ごとに初期設
定される。これを実行するため、第1のクロツクサイク
ルで、回路部分32は、第1の線分(線分A)の始りと終
りのX値を表わす入力値を受信する。それらの値はレジ
スタ36及び38にそれぞれ記憶され、マルチプレクサ40及
び42へ転送される。X値はマルチプレクサ40及び42から
排他的OR(XOR)ゲート44及び46に供給される。
ある1つの回路30を示す。回路30は1対のほぼ同じよう
な回路部分32及び34を含み、各回路部分は2つの線分の
一方を処理する。2つの部分はこのように同じものであ
るので、以下、回路部分32のみを説明する。走査線の終
端値を確定するとき、回路は、まず、線分ごとに初期設
定される。これを実行するため、第1のクロツクサイク
ルで、回路部分32は、第1の線分(線分A)の始りと終
りのX値を表わす入力値を受信する。それらの値はレジ
スタ36及び38にそれぞれ記憶され、マルチプレクサ40及
び42へ転送される。X値はマルチプレクサ40及び42から
排他的OR(XOR)ゲート44及び46に供給される。
XORゲート44及び46は、X値が加算器48により加算又
は減算されるようにX値をそのまま又は補数にして供給
させる入力(ゼロ又は1)をさらに受信する。たとえ
ば、排他的ORゲート44にゼロが供給されると、他方の入
力端子の値はそのまま加算器48に供給されるが、XORゲ
ート44に1が供給された場合には、入力値は補数化され
るので、(2進数として)都合良く減算される。始りか
ら終りまでのX値の変化を確定するために、X項の差が
計算されて、マルチプレクサ50からX変化レジスタ52に
供給され、記憶される。
は減算されるようにX値をそのまま又は補数にして供給
させる入力(ゼロ又は1)をさらに受信する。たとえ
ば、排他的ORゲート44にゼロが供給されると、他方の入
力端子の値はそのまま加算器48に供給されるが、XORゲ
ート44に1が供給された場合には、入力値は補数化され
るので、(2進数として)都合良く減算される。始りか
ら終りまでのX値の変化を確定するために、X項の差が
計算されて、マルチプレクサ50からX変化レジスタ52に
供給され、記憶される。
次のクロツクサイクルで、線分Aの始りと終りのY値
がマルチプレクサ40及び42に供給され、同様にして、加
算器48により確定されたYの変化はY変化レジスタ54
と、誤差レジスタ56の双方に記憶される。
がマルチプレクサ40及び42に供給され、同様にして、加
算器48により確定されたYの変化はY変化レジスタ54
と、誤差レジスタ56の双方に記憶される。
Y値の変化を誤差レジスタ56に記憶することにより、
回路を追加する必要なく、長軸を確定できる。これは、
デルタXと、デルタYのうち大きい方が求められるよう
に、X変化レジスタ52及び誤差レジスタ56に保持されて
いる値の一方を補数化しながら、それらの値を加算器48
に供給することにより行われる。この大きい方の値は、
続いて、その値を加算器48において右へ1ビツトだけシ
フトすることにより二分割され、マルチプレクサ50を経
て誤差レジスタに記憶される。これで、回路部分32の初
期設定は完了する。
回路を追加する必要なく、長軸を確定できる。これは、
デルタXと、デルタYのうち大きい方が求められるよう
に、X変化レジスタ52及び誤差レジスタ56に保持されて
いる値の一方を補数化しながら、それらの値を加算器48
に供給することにより行われる。この大きい方の値は、
続いて、その値を加算器48において右へ1ビツトだけシ
フトすることにより二分割され、マルチプレクサ50を経
て誤差レジスタに記憶される。これで、回路部分32の初
期設定は完了する。
同時に、回路部分34は、処理すべき2つの線分のうち
他方のもの、すなわち、線分Bについて、始りと終りの
X値及びY値を受信して、初期設定を完了している。初
期設定完了後、それぞれの回路部分32及び34は、扱つて
いる線分に関する線分情報の処理を開始する。回路部分
32のみを考えると、線分Aに関する現在X値はレジスタ
36に保持されている。レジスタ36の値は、レジスタ38に
記憶されているXの終り値に対して、比較器58により試
験される。それらの値が等しくない場合、マルチプレク
サ40及び42は誤差値及びY変化値を排他的ORゲート44及
び46を介して加算器48へ転送し、そこで、Y変化値は誤
差値から減じられる。小さくなつた誤差値は誤差レジス
タ56に記憶され、このプロセスは、誤差値がゼロ以下に
なるまで続く。誤差値とゼロ値との関係は状態機械60に
より試験される。試験条件が満たされると、状態機械60
は現在X値をこのY走査線の終り値として供給し、Y値
を増分(又は減分)させ、さらに、Xの変化の値に等し
い値を現在誤差値に加えることにより、誤差レジスタを
リセツトする。
他方のもの、すなわち、線分Bについて、始りと終りの
X値及びY値を受信して、初期設定を完了している。初
期設定完了後、それぞれの回路部分32及び34は、扱つて
いる線分に関する線分情報の処理を開始する。回路部分
32のみを考えると、線分Aに関する現在X値はレジスタ
36に保持されている。レジスタ36の値は、レジスタ38に
記憶されているXの終り値に対して、比較器58により試
験される。それらの値が等しくない場合、マルチプレク
サ40及び42は誤差値及びY変化値を排他的ORゲート44及
び46を介して加算器48へ転送し、そこで、Y変化値は誤
差値から減じられる。小さくなつた誤差値は誤差レジス
タ56に記憶され、このプロセスは、誤差値がゼロ以下に
なるまで続く。誤差値とゼロ値との関係は状態機械60に
より試験される。試験条件が満たされると、状態機械60
は現在X値をこのY走査線の終り値として供給し、Y値
を増分(又は減分)させ、さらに、Xの変化の値に等し
い値を現在誤差値に加えることにより、誤差レジスタを
リセツトする。
先に概要を述べたが、線分の傾きの値に従つてY値が
変化すべき点に回路部分32又は回路部分34が到達したと
き、回路部分32又は34は先に変化値信号を状態機械60に
到達させ、2つの回路32,34の他方が同様にY値を変化
させることができる状態になるまで、その回路部分を待
つている。共にY値を変化させる状態になると、状態機
械は、2つの回路部分32及び34を次のY走査線へそれぞ
れ進ませるための信号を発生する。このようにして、各
回路部分32及び34は同じY走査線を同時に処理し、1本
の走査線の両端の値は同時に後続する回路に供給される
ことになる。
変化すべき点に回路部分32又は回路部分34が到達したと
き、回路部分32又は34は先に変化値信号を状態機械60に
到達させ、2つの回路32,34の他方が同様にY値を変化
させることができる状態になるまで、その回路部分を待
つている。共にY値を変化させる状態になると、状態機
械は、2つの回路部分32及び34を次のY走査線へそれぞ
れ進ませるための信号を発生する。このようにして、各
回路部分32及び34は同じY走査線を同時に処理し、1本
の走査線の両端の値は同時に後続する回路に供給される
ことになる。
第5図の回路30が水平走査線の両端のX値を確定する
ために線分を処理しており、その線分が1以上の傾き、
すなわち、45度以上の傾きをもつ線分であるとき、回路
はほぼ同じように動作する。まず、各線分の始りと終り
のX値はそれぞれの回路部分32及び34により処理され
て、各線分についてXの変化が確定する。次に、各線分
のY値の変化を確定するために、各線分の始りと終りの
Y値がそれぞれの回路部分により処理される。続いて、
2つの線分のそれぞれについて、X値の変化とY値の変
化とが比較され、1より大きい傾きを有する線分ごと
に、Y値の変化の二分の一の値に誤差が設定される。そ
の後、処理は前述の場合と同様に進行するが、最初にY
値から始まり、Xに変化が起こるまで処理が続けられる
ことになる。
ために線分を処理しており、その線分が1以上の傾き、
すなわち、45度以上の傾きをもつ線分であるとき、回路
はほぼ同じように動作する。まず、各線分の始りと終り
のX値はそれぞれの回路部分32及び34により処理され
て、各線分についてXの変化が確定する。次に、各線分
のY値の変化を確定するために、各線分の始りと終りの
Y値がそれぞれの回路部分により処理される。続いて、
2つの線分のそれぞれについて、X値の変化とY値の変
化とが比較され、1より大きい傾きを有する線分ごと
に、Y値の変化の二分の一の値に誤差が設定される。そ
の後、処理は前述の場合と同様に進行するが、最初にY
値から始まり、Xに変化が起こるまで処理が続けられる
ことになる。
その間に、回路64はY値を処理している。回路64は、
最初にY値を受取つて保持するレジスタ66と、各線分の
Y終り値、Yクリツプ最小値及びYクリツプ最大値を含
むいくつかの信号を受信するマルチプレクサ68と、Y終
り値レジスタ70とを含む。レジスタ66の値と、レジスタ
70の値とは、一方の値が他方より大きいか、小さいか又
はそれと等しいかを判定することができる比較器72によ
り比較される。この構成は、線分がその終端点に達した
時点を判定するときや、図形がクリツプウインドウの中
にあるのを判定するときにも使用されて良い。
最初にY値を受取つて保持するレジスタ66と、各線分の
Y終り値、Yクリツプ最小値及びYクリツプ最大値を含
むいくつかの信号を受信するマルチプレクサ68と、Y終
り値レジスタ70とを含む。レジスタ66の値と、レジスタ
70の値とは、一方の値が他方より大きいか、小さいか又
はそれと等しいかを判定することができる比較器72によ
り比較される。この構成は、線分がその終端点に達した
時点を判定するときや、図形がクリツプウインドウの中
にあるのを判定するときにも使用されて良い。
回路64にさらに含まれるYクリツプレジスタ74は、最
大又は最小Yクリツプ値を示す入力値を受取る。それら
の値は、四辺形が書込まれるべきクリツプウインドウの
上下の境界の位置を指示する。クリツプレジスタ74は、
それらの値の一方を、情報がフレームバツフアに書込ま
れている方向に従つてクリツプウインドウの最小Y値又
は最大Y値のいずれかを供給するマルチプレクサ76から
受取る。
大又は最小Yクリツプ値を示す入力値を受取る。それら
の値は、四辺形が書込まれるべきクリツプウインドウの
上下の境界の位置を指示する。クリツプレジスタ74は、
それらの値の一方を、情報がフレームバツフアに書込ま
れている方向に従つてクリツプウインドウの最小Y値又
は最大Y値のいずれかを供給するマルチプレクサ76から
受取る。
描出すべき特定の形状が上縁部と下縁部の双方でクリ
ツプされるような場合もある。形状の始りの縁部でのク
リツピングは、レジスタ66のY初期値と、マルチプレク
サ76によりクリツプレジスタ74に供給された始りクリツ
プ値とを比較することにより判定される。情報がスクリ
ーンに上から下へ書込まれている場合を例にとると、供
給される値は最小クリツプY値である。反対方向に進ん
でいる場合には、最大クリツプY値がレジスタに供給さ
れる。マルチプレクサ78はクリツプ値を比較器72に供給
する。そこで、大きさ比較器72は、Y値がクリツプウイ
ンドウの中に入るまで描出を禁止する信号を発生する。
ツプされるような場合もある。形状の始りの縁部でのク
リツピングは、レジスタ66のY初期値と、マルチプレク
サ76によりクリツプレジスタ74に供給された始りクリツ
プ値とを比較することにより判定される。情報がスクリ
ーンに上から下へ書込まれている場合を例にとると、供
給される値は最小クリツプY値である。反対方向に進ん
でいる場合には、最大クリツプY値がレジスタに供給さ
れる。マルチプレクサ78はクリツプ値を比較器72に供給
する。そこで、大きさ比較器72は、Y値がクリツプウイ
ンドウの中に入るまで描出を禁止する信号を発生する。
レジスタ70に記憶されているYの値は、形状がクリツ
プウインドウの中に入つた後に図形全体を終わらせるべ
き値に従つて、台形内に描くべき最後の走査線のY値で
あるか、又は適切なYクリツピング境界である。この値
(レジスタ70)は、Yの現在値(レジスタ66)をYのこ
の終り値と比較する回路(マルチプレクサ78)により供
給される。
プウインドウの中に入つた後に図形全体を終わらせるべ
き値に従つて、台形内に描くべき最後の走査線のY値で
あるか、又は適切なYクリツピング境界である。この値
(レジスタ70)は、Yの現在値(レジスタ66)をYのこ
の終り値と比較する回路(マルチプレクサ78)により供
給される。
形状がクリツプウインドウの外まで出ている場合に
は、終りYクリツプ値がレジスタ70に記憶され、比較器
72において実際のY値と比較される。このようにして、
描出すべき形状部分の終り値が設定される。これは、情
報を上昇方向又は下降方向(すなわち、増分Y方向又は
減分Y方向)のいずれかでフレームバツフアに書込むこ
とが可能になるという点で、本発明において有用であ
る。これにより、まず第1に可視(クリツプされない)
情報が動作中に処理され、その後にクリツプされる情報
が続くように走査線の走査変換を進行させることができ
る。クリツプされる情報は無視できるため、動作は相当
にスピードアツプする。
は、終りYクリツプ値がレジスタ70に記憶され、比較器
72において実際のY値と比較される。このようにして、
描出すべき形状部分の終り値が設定される。これは、情
報を上昇方向又は下降方向(すなわち、増分Y方向又は
減分Y方向)のいずれかでフレームバツフアに書込むこ
とが可能になるという点で、本発明において有用であ
る。これにより、まず第1に可視(クリツプされない)
情報が動作中に処理され、その後にクリツプされる情報
が続くように走査線の走査変換を進行させることができ
る。クリツプされる情報は無視できるため、動作は相当
にスピードアツプする。
本発明を好ましい一実施例に関して説明したが、当業
者が本発明の趣旨から逸脱せずに様々な変形及び変更を
実行しうることは明白であろう。従つて、本発明は特許
請求の範囲との関連でのみ評価されるべきである。
者が本発明の趣旨から逸脱せずに様々な変形及び変更を
実行しうることは明白であろう。従つて、本発明は特許
請求の範囲との関連でのみ評価されるべきである。
第1図は、コンピユータ出力装置に個々に表示されたと
きに完成した元の形状を構成する2つの四辺形に分割さ
れた図形形状を示す図、 第2図(a)から第2図(d)は、複数の線分に分解さ
れた1つの四辺形形状を示す図、 第3図は、本発明に従つて構成されたコンピユータの図
形出力システムを示すブロツク線図、 第4図は、本発明の回路の一部の動作を示す図、 第5図は、本発明を実現する1つの方法を示す回路図で
ある。 10……図形出力システム、12……バスインタフエース論
理、14……座標ステージング回路、16……座標順序付け
回路、18……機能アドレツシング段、20……マスク発生
段、22……データ経路/メモリインタフエース段、24…
…直線アドレス発生器、32,34……回路部分、36,38……
レジスタ、40,42……マルチプレクサ、44,46……排他的
ORゲート、48……加算器、50……マルチプレクサ、52…
…X変化レジスタ、54……Y変化レジスタ、56……誤差
レジスタ、60……状態機械、66……レジスタ、68……マ
ルチプレクサ、70……Y終り値レジスタ、72……比較
器、74……Yクリツプレジスタ、76……マルチプレク
サ、78……マルチプレクサ。
きに完成した元の形状を構成する2つの四辺形に分割さ
れた図形形状を示す図、 第2図(a)から第2図(d)は、複数の線分に分解さ
れた1つの四辺形形状を示す図、 第3図は、本発明に従つて構成されたコンピユータの図
形出力システムを示すブロツク線図、 第4図は、本発明の回路の一部の動作を示す図、 第5図は、本発明を実現する1つの方法を示す回路図で
ある。 10……図形出力システム、12……バスインタフエース論
理、14……座標ステージング回路、16……座標順序付け
回路、18……機能アドレツシング段、20……マスク発生
段、22……データ経路/メモリインタフエース段、24…
…直線アドレス発生器、32,34……回路部分、36,38……
レジスタ、40,42……マルチプレクサ、44,46……排他的
ORゲート、48……加算器、50……マルチプレクサ、52…
…X変化レジスタ、54……Y変化レジスタ、56……誤差
レジスタ、60……状態機械、66……レジスタ、68……マ
ルチプレクサ、70……Y終り値レジスタ、72……比較
器、74……Yクリツプレジスタ、76……マルチプレク
サ、78……マルチプレクサ。
フロントページの続き (58)調査した分野(Int.Cl.6,DB名) G06T 11/00 - 11/80 G06T 15/00 - 15/60
Claims (3)
- 【請求項1】中央演算処理装置(CPU)と、メモリと、
グラフィック表示装置を具備する入力/出力手段とを具
備するグラフィック表示装置上にイメージを描出するコ
ンピュータ・グラフィック表示システムであって、前記
グラフィック表示装置が、画素の所定の数の水平走査線
を有する画素の行列を具備し、前記イメージが、画素デ
ータによって識別されるいくつかの画素を作動させるこ
とによってグラフィック表示装置上に表示され、前記画
素データが、行列内の画素位置に対応する座標値を具備
し、前記イメージが、それぞれ第1の終点および第2の
終点を有する右側線分および左側線分を有する少なくと
も1つの四辺形を具備し、右側線分に関する第1の終点
のy座標値と左側線分に関する第1の終点のy座標値が
等しく、かつ右側線分に関する第2の終点のy座標値と
左側線分に関する第2の終点のy座標値が等しく、線分
の終点が四辺形の頂点を規定し、前記画素データが、各
走査線ごとに四辺形の右端画素位置および左端画素位置
を確定しかつ右端画素および左端画素に関する画素デー
タを生成することによって生成された四辺形を表し、各
画素が右端画素と左端画素の間の走査線上に配置される
コンピュータ・グラフィック表示システムにおいて: 右側線分に関する第1の終点のX、Y座標値と、左側線
分に関する第1の終点のX、Y座標値と、イメージを走
査線昇順で描出すべき場合は1の値になり、イメージを
走査線降順で描出すべき場合は−1の値になるY増分値
とを受容する受容手段と; 右側サブ回路が走査線上の右側線分の右端画素を確定
し、左側サブ回路が走査線上の左側線分の左端画素を確
定し、前記右側サブ回路と前記左側サブ回路が走査線に
関して前記右端画素と前記左端画素を同時に確定し、前
記サブ回路がそれぞれ、受容手段に接続され、線分の終
点のY座標値間の差を確定し、かつその差の絶対値をΔ
Y値として出力する第1のサブトラクタ手段と、受容手
段に接続され、線分の終点のX座標値間の差を確定し、
かつその差の絶対値をΔX値として出力する第2のサブ
トラクタ手段と、第1のサブトラクタおよび第2のサブ
トラクタに接続され、ΔX値がΔY値よりも大きいかま
たはそれに等しい場合に長軸をX軸に確定するか、また
はΔY値がΔX値よりも大きい場合に長軸をy軸に確定
する長軸確定手段と、第1のサブトラクタおよび第2の
サブトラクタに接続され、ΔY/ΔXに等しい線分の傾き
からX増分を確定するX増分確定手段であって、線分の
傾きがゼロよりも大きい場合に前記X増分値を1の値に
確定し、線分の傾きがゼロよりも小さい場合に前記X増
分値を−1の値に確定するX増分確定手段とを含む右側
サブ回路および左側サブ回路と; 受容手段に接続され、線分の第1の終点のX座標値に初
期設定された現在X値を記憶する第1のレジスタと; 受容手段に接続され、線分の第2の終点のX座標値に初
期設定されたX終端値を記憶する第2のレジスタと; 長軸確定手段および第1のサブトラクタおよび第2のサ
ブトラクタに接続され、長軸に関する対応するΔ値の1/
2に等しくなるように初期設定された誤差値を記憶する
第3のレジスタと; 第1のサブトラクタに接続され、ΔY値を記憶する第4
のレジスタと; 受容手段に接続され、第1の終点のY座標値に初期設定
された現在Y値を記憶する第5のレジスタであって、右
側線分の前記第1の終点のY座標値が左側線分の第1の
終点のY座標値に等しい第5のレジスタと; 第2のサブトラクタに接続され、ΔX値を記憶する第6
のレジスタと; 第1のレジスタおよび第2のレジスタに接続され、現在
X値とX終端値を比較し、現在X値がX終端値に等しく
ない場合に第1の制御信号を出力し、処理が終了したこ
とを示す第1のコンパレータと; 第1のコンパレータに接続された第1の入力と、第3の
レジスタおよび第4のレジスタに接続された第1の出力
および第2の出力とを有し、第1のコンパレータから第
1の制御信号を受信した場合に第3のレジスタから誤差
値を出力させ、かつ第4のレジスタからΔY値を出力さ
せる第1のレジスタ制御手段と; 第4のレジスタの出力に接続され、ΔY値を受容しかつ
ΔY値を反転させるインバータと; 第3のレジスタの出力に接続され、誤差値を受容する第
1の入力と、インバータの出力に接続され、反転したΔ
Y値を受容する第2の入力とを具備し、反転したΔY値
と誤差値との和を生成する加算器であって、第3のレジ
スタに接続され、ΔY値と誤差値の差が生じるように第
3のレジスタ内に配置された誤差値を更新する出力をさ
らに具備する加算器と; 第3のレジスタの第2の出力に接続され、更新された誤
差値を受容し、前記誤差値がゼロよりも小さいかまたは
それに等しい場合に第2の制御信号を第1の出力を介し
て出力し、かつ前記誤差値がゼロよりも大きい場合に第
3の制御信号を第2の出力を介して出力する第2のコン
パレータと; 第2のコンパレータに接続された入力と、第1のレジス
タに接続され、第3の制御信号を受信した際に現在X値
をX増分値だけ増分する第1の出力と、第1のレジス
タ、第3のレジスタおよび第6のレジスタに接続され、
第2の制御信号を受信した際に、第3のレジスタ内の誤
差値を誤差値と長軸の対応するΔ値との和に等しくなる
ように更新し、回路から現在X値を出力し、増分された
Y値のところに配置された次の走査線に対して出力すべ
きX値を確定するために、現在X値をX増分値だけ増分
しかつ現在Y値をY増分値だけ増分する第2の出力とを
具備する第2のレジスタ制御手段と; 右側サブ回路および左側サブ回路に接続され、フレーム
・バッファへ出力すべき走査線に関する画素データを発
生させる回路出力制御手段であって、前記画素データが
走査線上で作動させるべき画素を識別し、前記回路出力
制御手段が、両方のサブ回路が回路からX値を出力する
準備ができるまで、表示すべき現在X値の出力を制御
し、右側サブ回路によって出力されたX値が、現在走査
線上で作動させるべき右端画素のX座標位置であり、か
つ左側サブ回路によって出力されたX値が、現在走査線
上で作動させるべき左端画素のX座標位置である回路出
力制御手段とを具備し、 それにより左端画素の座標値と右端画素の座標値が画素
データを発生させる手段へ同時に出力され、画素データ
を発生させる手段が、右端画素と左端画素の間で作動さ
せるべき現在走査線上の画素データを発生し、その画素
データを直ちにフレーム・バッファへ出力して、表示装
置上の画素データによって識別された画素を作動させ
る、走査線上で作動させるべき右端画素および左端画素
を同時に確定する回路。 - 【請求項2】中央演算出力装置(CPU)と、メモリと、
グラフィック表示装置を具備する入力/出力手段とを具
備する表示装置上にイメージを描出するコンピュータ・
グラフィック表示システムであって、前記グラフィック
表示装置が、画素の所定の数の水平走査線を具備する画
素の行列を具備し、前記イメージが、行列内の画素位置
に対応する座標値を具備する画素データによって識別さ
れるいくつかの画素を作動させることによって表示装置
上に表示され、前記イメージが、右側線分および左側線
分を有する少なくとも1つの四辺形を具備し、線分の終
点が四辺形の頂点を規定し、前記画素データが、各走査
線ごとに四辺形の右端画素位置および左端画素位置を確
定しかつ右端画素および左端画素に関する画素データを
生成することによって生成された四辺形を表し、各画素
が右端画素と左端画素の間の走査線上に配置されるコン
ピュータ・グラフィック表示システムにおいて: 右側線分に関する終点のX、Y座標値と、左側線分に関
する終点のX、Y座標値と、イメージが走査線昇順で描
出されるべき場合は1の値になり、イメージが走査線降
順で描出されるべき場合は−1の値になるY増分値とを
受容する受容手段と; 右側サブ回路が走査線の右端画素を確定し、左側サブ回
路が走査線の左端画素を確定し、前記右側サブ回路と前
記左側サブ回路が走査線に関して前記右端画素と前記左
端画素を同時に確定し、前記サブ回路がそれぞれ、受容
手段に接続され、線分の終点のY座標値間の差を確定
し、かつその差の絶対値をΔY値として出力する第1の
サブトラクタ手段と、受容手段に接続され、線分の終点
のX座標値間の差を確定し、かつその差の絶対値をΔX
値として出力する第2のサブトラクタ手段と、第1のサ
ブトラクタおよび第2のサブトラクタに接続され、ΔX
値がΔY値よりも大きいかまたはそれに等しい場合に長
軸をX軸に確定するか、またはΔY値がΔX値よりも大
きい場合に長軸をy軸に確定する長軸確定手段と、第1
のサブトラクタおよび第2のサブトラクタに接続され、
ΔY/ΔXに等しい線分の傾きからX増分を確定するX増
分確定手段であって、線分の傾きがゼロよりも大きい場
合に前記X増分値を1の値に設定し、線分の傾きがゼロ
よりも小さい場合に前記X増分値を−1の値に設定する
X増分確定手段と、受容手段に接続され、第1の終点の
X座標値に初期設定された現在X値を記憶する第1のレ
ジスタと、受容手段に接続され、第2の終点のX座標値
に初期設定されたX終端値を記憶する第2のレジスタ
と、長軸確定手段に接続され、長軸に関する対応するΔ
値の1/2に等しくなるように初期設定された誤差値を記
憶する第3のレジスタと、第1のサブトラクタに接続さ
れ、ΔY値を記憶する第4のレジスタと、受容手段に接
続され、第1の終点のY座標値に初期設定された現在Y
値を記憶する第5のレジスタと、第2のサブトラクタに
接続され、ΔX値を記憶する第6のレジスタとを具備す
る右側サブ回路および左側サブ回路と; 第1のレジスタ、第2のレジスタ、第3のレジスタ、第
4のレジスタ、第5のレジスタおよび第6のレジスタに
接続され、レジスタからのデータの入力および出力を制
御する状態機械とを具備し; 前記状態機械が、それぞれ第1のレジスタ内および第2
のレジスタ内に配置された現在X値とX終端値を比較し
て、処理が終了したかどうか判定し、現在X値がX終端
値に等しい場合に処理が終了し、 Y軸が第6のレジスタの短軸であり、X軸が短軸である
場合に、第3のレジスタから読み出された誤差値と第4
のレジスタから検索された短軸のΔ値との和となるよう
に誤差値を更新し、 更新された誤差値がゼロよりも大きい場合に第1のレジ
スタ内の現在X値を増分し、 現在X値を現在走査線に関するサブ回路の出力と確定
し、現在X値をX増分だけ増分し、現在Y値をY増分だ
け増分し、かつ更新された誤差値がゼロよりも小さいか
またはそれに等しい場合に、誤差値を更新された誤差値
と長軸のΔ値との和に等しくなるように再調節し、 両方のサブ回路が出力すべきX値を確定した場合に、現
在走査線に関するサブ回路の出力である現在X値を確定
し、右側サブ回路によって出力されたX値が現在走査線
に関する右端画素のX座標位置であり、かつ左側サブ回
路によって出力されたX値が現在走査線に関する左端画
素のX座標位置であり、 それにより左端画素の座標値と右端画素の座標値が同時
に出力され、画素データを発生させる手段が、フレーム
・バッファへ出力される画素データを発生して、直ちに
画素データの走査線を表示装置上に描出する、走査線上
で作動させるべき右端画素および左端画素を同時に確定
する回路。 - 【請求項3】中央演算処理装置(CPU)と、メモリと、
グラフィック表示装置を具備する入力/出力手段とを具
備する表示装置上にイメージを描出するコンピュータ・
グラフィック表示システムであって、前記グラフィック
表示装置が、画素の所定の数の水平走査線を具備する画
素の行列を具備し、前記イメージが、行列内の画素位置
に対応する座標値を具備する画素データによって識別さ
れるいくつかの画素を作動させることによって表示装置
上に表示され、前記イメージが、右側線分および左側線
分を有する少なくとも1つの四辺形を具備し、線分の終
点が四辺形の頂点を規定し、前記画素データが、各走査
線ごとに四辺形の右端画素位置および左端画素位置を確
定しかつ右端画素および左端画素に関する画素データを
生成することによって生成された四辺形を表し、各画素
が右端画素と左端画素の間の走査線上に配置されるコン
ピュータ・グラフィック表示システムにおいて: 右側線分に関する終点のX、Y座標値と、左側線分に関
する終点のX、Y座標値と、イメージが走査線昇順で描
画されるべき場合は1の値になり、イメージが走査線降
順で描出されるべき場合は−1の値になるY増分値とを
受容する受容手段と; 右側サブ回路が走査線の右端画素を確定し、左側サブ回
路が走査線の左端画素を確定し、前記右側サブ回路と前
記左側サブ回路が走査線に関して前記右端画素と前記左
端画素を同時に確定し、前記サブ回路がそれぞれ、受容
手段に接続され、線分の終点のY座標値間の差を確定
し、かつその差の絶対値をΔY値として出力する第1の
サブトラクタ手段と、受容手段に接続され、線分の終点
のX座標値間の差を確定し、かつその差の絶対値をΔX
値として出力する第2のサブトラクタ手段と、第1のサ
ブトラクタおよび第2のサブトラクタに接続され、ΔX
値がΔY値よりも大きいかまたはそれに等しい場合に長
軸をX軸に確定するか、またはΔY値がΔX値よりも大
きい場合に長軸をy軸に確定する長軸確定手段と、第1
のサブトラクタおよび第2のサブトラクタおよび長軸確
定手段に接続され、長軸のΔ値の1/2に初期設定された
誤差値を記憶する誤差レジスタと、Y座標値を記憶する
Yレジスタと、X座標値を記憶するXレジスタとを有す
る右側サブ回路および左側サブ回路と; Xレジスタ、Yレジスタおよび誤差レジスタに接続さ
れ、走査線上の右端画素および左端画素としてサブ回路
から出力された値を制御する状態機械であって、前記状
態機械が、右側サブ回路および左側サブ回路のYレジス
タ内の同じ初期Y値を記憶し、初期X値が初期Y値に対
応する各線分上のX値に等しく、誤差レジスタ内に記憶
された誤差値を長軸のΔ値と誤差値の差に等しくなるよ
うに更新し、更新された誤差値がゼロよりも大きい場
合、および更新された誤差値がゼロよりも小さいかまた
はそれに等しい場合にXレジスタ内の現在X値をX増分
値だけ増分し、誤差レジスタ内の誤差値を誤差値と長軸
の対応するΔ値との和に等しくなるように更新し、サブ
回路からの出力として現在X値を提供し、増分されたY
値のところに配置された次の走査線に対して出力すべき
X値を確定するために現在X値をX増分値だけ増分する
状態機械と; 右側サブ回路および左側サブ回路に接続され、フレーム
・バッファへ出力すべき走査線に関する画素データを発
生させる回路出力制御手段であって、前記画素データが
走査線上で作動させるべき画素を識別し、前記回路出力
制御手段が、両方のサブ回路が回路からX値を出力する
準備ができるまで、表示すべき現在X値の出力を制御
し、右側サブ回路によって出力されたX値が、現在走査
線上で作動させるべき右端画素のX座標位置であり、か
つ左側サブ回路によって出力されたX値が、現在走査線
上で作動させるべき左端画素のX座標位置である回路出
力制御手段とを具備し、 それにより右端画素の座標値と左端画素の座標値が画素
データを発生させる手段へ同時に出力され、画素データ
を発生させる手段が、右端画素と左端画素の間で作動さ
せるべき現在走査線上の画素データを発生し、その画素
データを直ちにフレーム・バッファへ出力して、表示装
置上の画素データによって識別された画素を作動させ
る、走査線上で作動させるべき右端画素および左端画素
を同時に確定する回路。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US28699788A | 1988-12-20 | 1988-12-20 | |
US286,997 | 1988-12-20 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH02190897A JPH02190897A (ja) | 1990-07-26 |
JP2787487B2 true JP2787487B2 (ja) | 1998-08-20 |
Family
ID=23101036
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP1288089A Expired - Fee Related JP2787487B2 (ja) | 1988-12-20 | 1989-11-07 | コンピュータシステムに表示され且つ操作される線分の位置を決定する回路 |
Country Status (5)
Country | Link |
---|---|
JP (1) | JP2787487B2 (ja) |
CA (1) | CA1324676C (ja) |
FR (1) | FR2640792B1 (ja) |
GB (1) | GB2226480B (ja) |
HK (1) | HK52594A (ja) |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4667306A (en) * | 1983-07-20 | 1987-05-19 | Ramtek Corporation | Method and apparatus for generating surface-fill vectors |
US4725831A (en) * | 1984-04-27 | 1988-02-16 | Xtar Corporation | High-speed video graphics system and method for generating solid polygons on a raster display |
US4758965A (en) * | 1985-10-09 | 1988-07-19 | International Business Machines Corporation | Polygon fill processor |
-
1989
- 1989-09-15 CA CA000611651A patent/CA1324676C/en not_active Expired - Fee Related
- 1989-09-20 GB GB8921264A patent/GB2226480B/en not_active Expired - Fee Related
- 1989-11-07 JP JP1288089A patent/JP2787487B2/ja not_active Expired - Fee Related
- 1989-12-14 FR FR8916545A patent/FR2640792B1/fr not_active Expired - Fee Related
-
1994
- 1994-05-24 HK HK52594A patent/HK52594A/xx not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
GB8921264D0 (en) | 1989-11-08 |
GB2226480B (en) | 1993-09-22 |
CA1324676C (en) | 1993-11-23 |
GB2226480A (en) | 1990-06-27 |
HK52594A (en) | 1994-06-03 |
FR2640792B1 (fr) | 1995-03-03 |
JPH02190897A (ja) | 1990-07-26 |
FR2640792A1 (fr) | 1990-06-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR900006042B1 (ko) | 복합문서 처리 장치용 표시 제어장치 | |
US4648045A (en) | High speed memory and processor system for raster display | |
US5218674A (en) | Hardware bit block transfer operator in a graphics rendering processor | |
US4725831A (en) | High-speed video graphics system and method for generating solid polygons on a raster display | |
US6952217B1 (en) | Graphics processing unit self-programming | |
US4747042A (en) | Display control system | |
US6275241B1 (en) | High speed image drawing apparatus for displaying three dimensional images | |
JPH04246790A (ja) | ベクトル/円錐曲線/エリアフィルプリミティブジェネレータ | |
US5128872A (en) | Method and apparatus for determining line positions for display and manipulation by a computer system | |
JP3191159B2 (ja) | 図形情報を処理する装置 | |
US5020002A (en) | Method and apparatus for decomposing a quadrilateral figure for display and manipulation by a computer system | |
US7528839B1 (en) | Faster clears for three-dimensional modeling applications | |
JPH0714029A (ja) | 線描画装置及び方法 | |
EP0250868A2 (en) | Method and apparatus for area fill in a raster graphics system | |
US4945497A (en) | Method and apparatus for translating rectilinear information into scan line information for display by a computer system | |
US5299299A (en) | Scan line full figure filling device for display units and printers | |
JP2787487B2 (ja) | コンピュータシステムに表示され且つ操作される線分の位置を決定する回路 | |
US5117485A (en) | Method and apparatus for sorting line segments for display and manipulation by a computer system | |
US6677950B1 (en) | Graphics computer | |
JPS642953B2 (ja) | ||
KR0145709B1 (ko) | 컴퓨터 그래픽 시스템 | |
JP2836617B2 (ja) | レンダリングプロセッサ | |
JP3106246B2 (ja) | 画像処理装置 | |
JP2656753B2 (ja) | 画像データ処理装置及びそれを用いたシステム | |
JP2887122B2 (ja) | 画像データ処理装置及びそれを用いたシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |