JPS6240580A - 図形描画方法 - Google Patents
図形描画方法Info
- Publication number
- JPS6240580A JPS6240580A JP60179485A JP17948585A JPS6240580A JP S6240580 A JPS6240580 A JP S6240580A JP 60179485 A JP60179485 A JP 60179485A JP 17948585 A JP17948585 A JP 17948585A JP S6240580 A JPS6240580 A JP S6240580A
- Authority
- JP
- Japan
- Prior art keywords
- area
- dot
- display
- internal
- internal area
- 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
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/14—Display of multiple viewports
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Processing Or Creating Images (AREA)
- Digital Computer Display Output (AREA)
- Image Generation (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔発明の利用分野〕
本発明は9表示装置における図形の描画方法に係り、特
に、ラスクスキャン型表示装置の表示画面上に、一つず
つが一つの画面として扱えるウィンドウと呼ばれる矩形
の領域が複数個作成可能なマルチウィンドウ・システム
において、互いの重なりのために一つの矩形からなると
は限らないそれらのウィンドウ内での描画や、ウィンド
ウの配置変更に伴う部分的な再表示の際に、各ウィンド
ウの重なりによって生じる表示画面に表示されない部分
を避けて図形を描画する方法に関する。
に、ラスクスキャン型表示装置の表示画面上に、一つず
つが一つの画面として扱えるウィンドウと呼ばれる矩形
の領域が複数個作成可能なマルチウィンドウ・システム
において、互いの重なりのために一つの矩形からなると
は限らないそれらのウィンドウ内での描画や、ウィンド
ウの配置変更に伴う部分的な再表示の際に、各ウィンド
ウの重なりによって生じる表示画面に表示されない部分
を避けて図形を描画する方法に関する。
この種の方法においては、以前から2表示画面を超える
図形を描画したり9画面上に設けられた特定の領域に限
って描画するために2図形を描−画領域でクリッピング
するという考え方があった。
図形を描画したり9画面上に設けられた特定の領域に限
って描画するために2図形を描−画領域でクリッピング
するという考え方があった。
従来用いられてきた主要な方法は、特開昭58−225
473に示されるように、描画対象の図形を数学的に表
現する方程式から描画領域に含まれる部分を求め、その
結果に従って2表示画面に描くというものである。この
方法の利点は9例えば線分について見ると、与えられた
線分に対して描画領域に含まれる部分の始点と終点を計
算で求めれば。
473に示されるように、描画対象の図形を数学的に表
現する方程式から描画領域に含まれる部分を求め、その
結果に従って2表示画面に描くというものである。この
方法の利点は9例えば線分について見ると、与えられた
線分に対して描画領域に含まれる部分の始点と終点を計
算で求めれば。
後はドツト発生器を用いて、始点と終点の間でドツトを
表示画面に表示すればよいという点である。
表示画面に表示すればよいという点である。
しかしながら、上記した従来方法には次のような問題点
がある。第一に、計算で求めた交点と実際に表示画面上
に現われる交点とは異なること。
がある。第一に、計算で求めた交点と実際に表示画面上
に現われる交点とは異なること。
すなわち2例えば二つの直線の方程式から計算で求めら
れる交点は、一般に、それらを表示画面上のドツトで表
わした場合の交点ではないということである。このため
、交点計算でクリッピングを行った場合、現在描かれて
いる部分図形に、現在描かれていない部分図形を追加し
て表示すると。
れる交点は、一般に、それらを表示画面上のドツトで表
わした場合の交点ではないということである。このため
、交点計算でクリッピングを行った場合、現在描かれて
いる部分図形に、現在描かれていない部分図形を追加し
て表示すると。
両者を一度に描いた場合とは異なる図形が得られること
になる。この欠点は2部分的な表示、追加。
になる。この欠点は2部分的な表示、追加。
あるいは削除が頻繁に生じるマルチウィンドウ表示を採
用する表示装置においては、致命的なものとなる。第二
に2図形としてよく現われる円や楕円については、交点
計算と部分的なドツト発生が困難であるため、従来から
2発生されるドツト毎に描画領域に含まれるか否かを確
かめていた点である。このように、ドツト毎にクリッピ
ングの判定を行えば9部分的な表示や追加に際しての誤
差は生じないが、描画領域の構成が複雑になってくると
、ドツト毎の判定が複雑になり、処理時間が増大し、描
画速度の低下を招くという問題点があった・ 〔発明の目的〕 本発明の目的は、従来技術での上記した問題点を解決し
、描画領域が、実際に表示してもよい表示内部領域と実
際の表示が禁止されている非表示内部領域とから構成さ
れる装置 生されたドツトを実際に表示するか否かの判定に要する
時間を短縮することができ,しかも正確に表示すること
ができる図形描画方法を提供することにある。
用する表示装置においては、致命的なものとなる。第二
に2図形としてよく現われる円や楕円については、交点
計算と部分的なドツト発生が困難であるため、従来から
2発生されるドツト毎に描画領域に含まれるか否かを確
かめていた点である。このように、ドツト毎にクリッピ
ングの判定を行えば9部分的な表示や追加に際しての誤
差は生じないが、描画領域の構成が複雑になってくると
、ドツト毎の判定が複雑になり、処理時間が増大し、描
画速度の低下を招くという問題点があった・ 〔発明の目的〕 本発明の目的は、従来技術での上記した問題点を解決し
、描画領域が、実際に表示してもよい表示内部領域と実
際の表示が禁止されている非表示内部領域とから構成さ
れる装置 生されたドツトを実際に表示するか否かの判定に要する
時間を短縮することができ,しかも正確に表示すること
ができる図形描画方法を提供することにある。
上記の目的を達成するために,本発明では次のような方
法を採用する.すなわち、描画開始により,1ドツト毎
に描画領域に含まれるか否かを判゛定し,描画領域内に
あると,表示が許されている表示内部領域と,表示が禁
止されている非表示内部領域のうちのいずれか一つの内
部領域に存在するかを判定する.ある内部領域にあるこ
とが判ると、以後発生されるドツトについては、その内
部領域にあるか否かのみを確かめる。もし、現在の内部
領域に存在しなくなったことが判ると、残りの内部領域
にあるか否かを確かめる。残りの内部領域の一つに含ま
れることが判れば、以後発生されるドツトについては、
この内部領域にあるか否かのみを確かめる。上記の場合
、残りのいずれの内部領域にも含まれないことが判れば
、そのドツトは2種類の内部領域のいずれにも含まれず
、描画領域の外に出たことになり、その次のドツトから
は、最初に戻って、再び描画領域内にあるか否かを確か
めていく。以上の手続きにおいて、ドツトが表示内部領
域にある場合は表示画面上に表示し、非表示内部領域に
ある場合は表示画面上には表示しないで計算のみを続け
ていく。このようにして、任意の領域においてクリッピ
ングしながら。
法を採用する.すなわち、描画開始により,1ドツト毎
に描画領域に含まれるか否かを判゛定し,描画領域内に
あると,表示が許されている表示内部領域と,表示が禁
止されている非表示内部領域のうちのいずれか一つの内
部領域に存在するかを判定する.ある内部領域にあるこ
とが判ると、以後発生されるドツトについては、その内
部領域にあるか否かのみを確かめる。もし、現在の内部
領域に存在しなくなったことが判ると、残りの内部領域
にあるか否かを確かめる。残りの内部領域の一つに含ま
れることが判れば、以後発生されるドツトについては、
この内部領域にあるか否かのみを確かめる。上記の場合
、残りのいずれの内部領域にも含まれないことが判れば
、そのドツトは2種類の内部領域のいずれにも含まれず
、描画領域の外に出たことになり、その次のドツトから
は、最初に戻って、再び描画領域内にあるか否かを確か
めていく。以上の手続きにおいて、ドツトが表示内部領
域にある場合は表示画面上に表示し、非表示内部領域に
ある場合は表示画面上には表示しないで計算のみを続け
ていく。このようにして、任意の領域においてクリッピ
ングしながら。
任意の図形を描画することを2通常、1ドツトについて
一度の判定で行うことができる。
一度の判定で行うことができる。
以下2本発明の実施例について述べる。
第1図は2本発明に係る表示装置の外観図を示している
。図のように1表示装置はキーボード1とCRT (陰
極線管)表示部2からなり、キーボード1には、カーソ
ル移動キー3.カーソル位置入カキ−4および一群の文
字列キー5が設けられている。
。図のように1表示装置はキーボード1とCRT (陰
極線管)表示部2からなり、キーボード1には、カーソ
ル移動キー3.カーソル位置入カキ−4および一群の文
字列キー5が設けられている。
第2図は本発明方法を実現する装置をブロックを用いて
表わした図である。このような構成において、キーボー
ド1上のカーソル移動キー3を押し、カーソルを移動す
る。CRT表示部2上で−のカーソル位置情報は、CP
U (中央処理装置)9によって実行されるカーソル制
御プログラムによりレジスタ8に格納される。キーボー
ド1上のカーソル位置入カキ−4が押されると、あるい
は。
表わした図である。このような構成において、キーボー
ド1上のカーソル移動キー3を押し、カーソルを移動す
る。CRT表示部2上で−のカーソル位置情報は、CP
U (中央処理装置)9によって実行されるカーソル制
御プログラムによりレジスタ8に格納される。キーボー
ド1上のカーソル位置入カキ−4が押されると、あるい
は。
一群の文字列キー5が特定の組合わせで押されると、キ
、−ボードドライバ6によってコードが発生され9発生
されたコードは、レジスタ7に格納される。CPU9は
レジスタ7内のコードより記憶装置i!20内のプログ
ラムを起動する。フレーム・メモリ11は、CRT表示
部2の表示画面の各ドツトの情報を格納したメモリであ
り、スキャナ12がスキャンすると、その内容が表示画
面上に表示され。
、−ボードドライバ6によってコードが発生され9発生
されたコードは、レジスタ7に格納される。CPU9は
レジスタ7内のコードより記憶装置i!20内のプログ
ラムを起動する。フレーム・メモリ11は、CRT表示
部2の表示画面の各ドツトの情報を格納したメモリであ
り、スキャナ12がスキャンすると、その内容が表示画
面上に表示され。
BMP (ビットマツプ・プロセッサ)10がフレーム
・メモリ11に書込みを行うことにより2表示を1ドツ
ト単位で書き換えることができる。ドツト発生器13は
、CPU9の命令により、指定された図形を表現するド
ツトを一つずつ発生し、そのドツトの表系画面上でのX
座標をレジスタ14に、Y座標をレジスタ15に格納す
る。CPU9は、レジスタ16.レジスタ17.レジス
タ18およびレジスタ19に格納されている。描画領域
あるいは内部領域の左辺、上辺、右辺および下辺の座標
と、レジスタエ4およびレジスタI5の内容を比較し、
必要ならばB M P 10を用いて、フレーム・メモ
リ11に書込みを行う。
・メモリ11に書込みを行うことにより2表示を1ドツ
ト単位で書き換えることができる。ドツト発生器13は
、CPU9の命令により、指定された図形を表現するド
ツトを一つずつ発生し、そのドツトの表系画面上でのX
座標をレジスタ14に、Y座標をレジスタ15に格納す
る。CPU9は、レジスタ16.レジスタ17.レジス
タ18およびレジスタ19に格納されている。描画領域
あるいは内部領域の左辺、上辺、右辺および下辺の座標
と、レジスタエ4およびレジスタI5の内容を比較し、
必要ならばB M P 10を用いて、フレーム・メモ
リ11に書込みを行う。
以下では9便宜上、仮想平面の座標系と表面画面の座標
系は一致し、原点は表面画面の左下隅であるとする。
系は一致し、原点は表面画面の左下隅であるとする。
第3図に従って2表面両面上の描画領域9表示内部領域
および非表示内部領域の設定の一例を説明する。図は、
CRT2の表示画面(すなわち仮想平面)上に矩形の領
域301と302を設けた状態を示している。矩形領域
301は、左辺のX座標の値(以下、単に左辺の座標値
という。他の辺についても同様−)Ll、上辺の座標値
Tユ、右辺の座標値R工、下辺の座標値B1で定義され
、矩形領域302は、左辺の座櫟値し2.上辺の座標値
T2.右辺の座標値R2,下辺の座標値B2で定義され
るとする。図の状態を座標値の大小関係で表すと。
および非表示内部領域の設定の一例を説明する。図は、
CRT2の表示画面(すなわち仮想平面)上に矩形の領
域301と302を設けた状態を示している。矩形領域
301は、左辺のX座標の値(以下、単に左辺の座標値
という。他の辺についても同様−)Ll、上辺の座標値
Tユ、右辺の座標値R工、下辺の座標値B1で定義され
、矩形領域302は、左辺の座櫟値し2.上辺の座標値
T2.右辺の座標値R2,下辺の座標値B2で定義され
るとする。図の状態を座標値の大小関係で表すと。
Lユ<L、、 B工>B、、 R工< Rz −T□>
’r zとなっている。ここで、矩形領域302を描
画領域とする場合を考える。これは、今後何らかの指示
があるまで、CRT表示部2に描画される図形は、矩形
領域302内に制限されるということである。さらに2
図に示すように、矩形領域301が、描画領域302の
上に重なっているので、302を次のような二つの内部
領域に分ける。まず2表示してもよい領域として、30
1に覆われていない部分を303.304に示す二つの
矩形として管理し2表示内部領域と呼ぶ。303の左辺
の座標値はRユ、上辺の座標値はT21右辺の座標値は
R2,下辺の座標値はB1であり、304の左辺の座標
値はL 2 +上辺の座標値はB11右辺の座標値はR
2,下辺の座標値はB2である。次に1表示を禁止され
る領域として、301に覆われた部分を矩形305とし
て管理し、非表示内部領域と呼ぶ。305の左辺の座標
値はB2.上辺の座標値はT2.右辺の座標値はR1,
下辺の座標値はB工である。ここで、X座標がXc、Y
座標がYcであるような点が2例えば、領域304に含
まれると1”2≦Xc、R2≧xC,E32≦Y、、B
1≧Ycがすべて成り立つことである。このようにして
設定された描画領域および内部領域に関する情報は。
’r zとなっている。ここで、矩形領域302を描
画領域とする場合を考える。これは、今後何らかの指示
があるまで、CRT表示部2に描画される図形は、矩形
領域302内に制限されるということである。さらに2
図に示すように、矩形領域301が、描画領域302の
上に重なっているので、302を次のような二つの内部
領域に分ける。まず2表示してもよい領域として、30
1に覆われていない部分を303.304に示す二つの
矩形として管理し2表示内部領域と呼ぶ。303の左辺
の座標値はRユ、上辺の座標値はT21右辺の座標値は
R2,下辺の座標値はB1であり、304の左辺の座標
値はL 2 +上辺の座標値はB11右辺の座標値はR
2,下辺の座標値はB2である。次に1表示を禁止され
る領域として、301に覆われた部分を矩形305とし
て管理し、非表示内部領域と呼ぶ。305の左辺の座標
値はB2.上辺の座標値はT2.右辺の座標値はR1,
下辺の座標値はB工である。ここで、X座標がXc、Y
座標がYcであるような点が2例えば、領域304に含
まれると1”2≦Xc、R2≧xC,E32≦Y、、B
1≧Ycがすべて成り立つことである。このようにして
設定された描画領域および内部領域に関する情報は。
記憶装置21に格納される。
第4図を用いて2本発明によるクリッピングの例として
、第3図の描画領域302に、第4図のドツト列401
.402.・・・、410で表わされるような図形を描
く場合の処理手順を説明する。ドツトは401から40
2.403.・・・へ順に発生されるとする。
、第3図の描画領域302に、第4図のドツト列401
.402.・・・、410で表わされるような図形を描
く場合の処理手順を説明する。ドツトは401から40
2.403.・・・へ順に発生されるとする。
まず、ドツト401から順に、描画領域302に含まれ
るか否かを判定(描画領域確認)していくと、ドツト4
03が初めて含まれることになることが判る。
るか否かを判定(描画領域確認)していくと、ドツト4
03が初めて含まれることになることが判る。
このドツト403について2表示内部領域と非表示内部
領域のいずれの内部領域にあるかを調べる(内部領域探
索)と2表示内部領域304であるので。
領域のいずれの内部領域にあるかを調べる(内部領域探
索)と2表示内部領域304であるので。
以後、ドツト403を含めて、この内部領域に含まれる
ドツトは表示されることになる。ドツトが表示内部領域
304に含まれるか否かの判定と表示処理(内部領域内
ドツト処理)を続けて、ドツト404も表示されるが、
ドツト405に至って表示内部領域304を出る。ドツ
ト405が非表示内部領域に゛入ったか否かを調べると
、非表示内部領域305内に入ったので、以後、ドツト
405を含めて、この非表示内部領域305に含まれる
ドツトは表示されないことになる(内部領域切換え)。
ドツトは表示されることになる。ドツトが表示内部領域
304に含まれるか否かの判定と表示処理(内部領域内
ドツト処理)を続けて、ドツト404も表示されるが、
ドツト405に至って表示内部領域304を出る。ドツ
ト405が非表示内部領域に゛入ったか否かを調べると
、非表示内部領域305内に入ったので、以後、ドツト
405を含めて、この非表示内部領域305に含まれる
ドツトは表示されないことになる(内部領域切換え)。
ドツトが非表示内部領域305に含まれるか否かの判定
と非表示処理(これは計算処理のみ)(内部領域内ドツ
ト処理)を続けて、ドツト406も表示されないが。
と非表示処理(これは計算処理のみ)(内部領域内ドツ
ト処理)を続けて、ドツト406も表示されないが。
ドツト407に至って非表示内部領域305を出る。再
び、内部領域切換えを行って、ドツト407が表示内部
領域に入ったか否かを調べると2表示内部領域303内
であるので、以後、ドツト407を含めて。
び、内部領域切換えを行って、ドツト407が表示内部
領域に入ったか否かを調べると2表示内部領域303内
であるので、以後、ドツト407を含めて。
この表示内部領域303に含まれるドツトは表示される
ことになる(内部領域切換え)。ドツトが表示内部領域
303に含まれるか否かの判定と表示処理(内部領域内
ドツト処理)を続けて、ドツト408も表示されるが、
ドツト409に至って表示内部領域303を出る。そこ
で、ドツト409について、内部領域切換えを行って、
非表示内部領域にあるか否かを調べると、非表示内部領
域にも入っていないことが判り、結局、ドツト409は
いずれの内部領域にもふくまれないので、以後発生され
るドツトは、描画領域の確認からやり直す。このように
して、ドツト409と9次のドツト410も描画領域に
含まれないことが判り、ここでドツトの発生は終了し描
画処理は終る。
ことになる(内部領域切換え)。ドツトが表示内部領域
303に含まれるか否かの判定と表示処理(内部領域内
ドツト処理)を続けて、ドツト408も表示されるが、
ドツト409に至って表示内部領域303を出る。そこ
で、ドツト409について、内部領域切換えを行って、
非表示内部領域にあるか否かを調べると、非表示内部領
域にも入っていないことが判り、結局、ドツト409は
いずれの内部領域にもふくまれないので、以後発生され
るドツトは、描画領域の確認からやり直す。このように
して、ドツト409と9次のドツト410も描画領域に
含まれないことが判り、ここでドツトの発生は終了し描
画処理は終る。
第5図は、第2図のCPU9での、描画領域の確認、内
部領域の探索、内部領域内ドツト処理のプログラム処理
のフローを示し、第6図、第7図。
部領域の探索、内部領域内ドツト処理のプログラム処理
のフローを示し、第6図、第7図。
第8図は第5図中の主要なルーチンにおける処理のフロ
ーを示し、第9図は、ドツト発生器13における処理の
フローを示すものである。以下、第5図に従い、処理の
流れの説明を行う。
ーを示し、第9図は、ドツト発生器13における処理の
フローを示すものである。以下、第5図に従い、処理の
流れの説明を行う。
まず、カーソル移動キー3によるカーソル移動によって
求められた。CRT表示部2上の位置座標がレジスタ8
に格納される。次に、キーボード1上のキー4,5が押
されることによって発生するコードはレジスタ7に格納
され、CPUはこのコードの命令に従い、記憶袋[21
に格納されている対応するプログラムを読出して処理を
行う。例えば、命令が直線描画命令ならば、プログラム
は。
求められた。CRT表示部2上の位置座標がレジスタ8
に格納される。次に、キーボード1上のキー4,5が押
されることによって発生するコードはレジスタ7に格納
され、CPUはこのコードの命令に従い、記憶袋[21
に格納されている対応するプログラムを読出して処理を
行う。例えば、命令が直線描画命令ならば、プログラム
は。
カーソル位置入カキ−4によって2点の位置座標値が入
力されるのを待ち(ステップ508) 、レジスタ14
に最大数MAXを格納しく509) 、最初に指定され
た点を始点2次に指定された点を終点として。
力されるのを待ち(ステップ508) 、レジスタ14
に最大数MAXを格納しく509) 、最初に指定され
た点を始点2次に指定された点を終点として。
その2点を結ぶ直線を表現するドツトを順次発生するよ
うに、ドツト発生器13に命令する(510)。
うに、ドツト発生器13に命令する(510)。
レジスタ7のコードの表わす命令が円描画命令ならば、
プログラムは、カーソル位置入カキ−4によって2点の
位置座標値が入力されるのを待ち(508)、レジスタ
14に最大数MAXを格納しく509)。
プログラムは、カーソル位置入カキ−4によって2点の
位置座標値が入力されるのを待ち(508)、レジスタ
14に最大数MAXを格納しく509)。
最初に指定された点を円の中心点2次に指定された点を
円周上の1点として、その2点から決定される円を表現
するドツトを順次発生するように。
円周上の1点として、その2点から決定される円を表現
するドツトを順次発生するように。
ドツト発生器13に命令する(510)。
ここで、ドツト発生器13の処理について第9図に従っ
て説明する。ドツト発生器13は、ドツト発生命令と必
要な情報を受は取る(901)と、レジスタ14の内容
がMAXならば、与えられた図形を表現するドツトの座
標値を一つ発生しく905) 。
て説明する。ドツト発生器13は、ドツト発生命令と必
要な情報を受は取る(901)と、レジスタ14の内容
がMAXならば、与えられた図形を表現するドツトの座
標値を一つ発生しく905) 。
MAXでなければ待ち状態にある(902)、さらに。
発生すべきドツトをすべて発生し終える(903)と。
レジスタ14に最小の数MINを格納する(904)。
ドツト発生器13から発生されたドツトの位置座標値は
、X座標がレジスタ14に、Y座標がレジスタ15に格
納(以下、それぞれの値をPXsPYと表わす)される
(905)。
、X座標がレジスタ14に、Y座標がレジスタ15に格
納(以下、それぞれの値をPXsPYと表わす)される
(905)。
第5図に戻り、プログラムは、上に述べたようにドツト
発生器13に命令を与え(510)だ後9発生されるド
ツトがあれば(511,512)、レジスタ14、15
の内容を、それぞれ、レジスタ22.23に格納しく5
13)、 レジスタ14にMAXを格納り、 (514
)。
発生器13に命令を与え(510)だ後9発生されるド
ツトがあれば(511,512)、レジスタ14、15
の内容を、それぞれ、レジスタ22.23に格納しく5
13)、 レジスタ14にMAXを格納り、 (514
)。
ドツト発生器13が次のドツトを発生できるようにして
から描画領域の確認を行う(516)。
から描画領域の確認を行う(516)。
第6図を用いて、描画領域確認ルーチンについて説明す
る。ドツト発生器13から得られるドツトが表示される
か否かを判定するためには、第一に。
る。ドツト発生器13から得られるドツトが表示される
か否かを判定するためには、第一に。
そのドツトが描画領域に含まれているかを調べなければ
ならない。プログラムは、描画領域を一つずつ順に取っ
てきて(601) 、その位置を定義する座標の値を、
記憶装置20より読出し、左辺、上−辺。
ならない。プログラムは、描画領域を一つずつ順に取っ
てきて(601) 、その位置を定義する座標の値を、
記憶装置20より読出し、左辺、上−辺。
右辺、下辺の順で、それぞれ、レジスタ16.17゜1
8、19に格納しく603) 、点(P Xy P y
)がレジスタ16.17.18.19の内容で表わされ
る領域に含まれるか否かを確かめる(604)。含まれ
ているならば、プログラムは内部領域探索ルーチンに移
る(517)。一方、含まれていないならば、まだ他に
′描画領域があるか否かを確かめ(601) 、以上の
手続きを繰り返す。次の描画領域がなければ、ドツト発
生器13の発生する次のドツトについて、同様に、描画
領域確認の手続きを繰り返す(602,520)。
8、19に格納しく603) 、点(P Xy P y
)がレジスタ16.17.18.19の内容で表わされ
る領域に含まれるか否かを確かめる(604)。含まれ
ているならば、プログラムは内部領域探索ルーチンに移
る(517)。一方、含まれていないならば、まだ他に
′描画領域があるか否かを確かめ(601) 、以上の
手続きを繰り返す。次の描画領域がなければ、ドツト発
生器13の発生する次のドツトについて、同様に、描画
領域確認の手続きを繰り返す(602,520)。
レジスタ14の内容がMAXならば、ドツト発生器13
がまだ次のドツトを発生していないのであり。
がまだ次のドツトを発生していないのであり。
MINならば、必要なドツトがすべて発生されているこ
とになるので、プログラムは終了すべきである。プログ
ラムがレジスタ14にMAXを格納した後、ドツト発生
器13は、更に発生すべきドツトがあればその座標値を
レジスタ14.15に格納している。
とになるので、プログラムは終了すべきである。プログ
ラムがレジスタ14にMAXを格納した後、ドツト発生
器13は、更に発生すべきドツトがあればその座標値を
レジスタ14.15に格納している。
第7図に従って内部領域探索ルーチンについて説明する
。ドツト発生器13から発生されるドツトが所定の描画
領域に含まれるに至ったことがわかると2次に、ドツト
の表示・非表示の決定のために、そのドツトは、該描画
領域を構成しているどの内部領域に含まれるのかを調べ
る。プログラムは、該描画領域を構成している表示内部
領域および非表示内部領域の位置と大きさを表わしてい
る各辺の座標値を、記憶装置21より読出し、それぞれ
、レジスタ16.17.18.19に格納しく702)
、現在問題にしている点(Px* Py)がその内部領
域に含まれるかを調べる(703)、以上の操作を各内
部領域について行い2点(Px+ Py)を含む内部領
域IAが見つかれば、その時点で、上記の探索は中止し
、レジスタ16.17.18.19の内容を変更しない
。もし、IAが表示内部領域ならば、以後この内部領域
に含まれるドツトは表示画面上に表示されることを示す
ために、レジスタ24に′1″を格納しく705) 、
プログラムは内部領域内ドツト処理ルーチンに移る。一
方、IAが非表示内部領域ならば、以後この内部領域に
含まれるドツトは表示画面上に表示されないことを示す
ために、レジスタ24にII O11を格納しく706
) 、プログラムは内部領域内ドツト処理ルーチンに移
る(518)。
。ドツト発生器13から発生されるドツトが所定の描画
領域に含まれるに至ったことがわかると2次に、ドツト
の表示・非表示の決定のために、そのドツトは、該描画
領域を構成しているどの内部領域に含まれるのかを調べ
る。プログラムは、該描画領域を構成している表示内部
領域および非表示内部領域の位置と大きさを表わしてい
る各辺の座標値を、記憶装置21より読出し、それぞれ
、レジスタ16.17.18.19に格納しく702)
、現在問題にしている点(Px* Py)がその内部領
域に含まれるかを調べる(703)、以上の操作を各内
部領域について行い2点(Px+ Py)を含む内部領
域IAが見つかれば、その時点で、上記の探索は中止し
、レジスタ16.17.18.19の内容を変更しない
。もし、IAが表示内部領域ならば、以後この内部領域
に含まれるドツトは表示画面上に表示されることを示す
ために、レジスタ24に′1″を格納しく705) 、
プログラムは内部領域内ドツト処理ルーチンに移る。一
方、IAが非表示内部領域ならば、以後この内部領域に
含まれるドツトは表示画面上に表示されないことを示す
ために、レジスタ24にII O11を格納しく706
) 、プログラムは内部領域内ドツト処理ルーチンに移
る(518)。
第8図に従い、内部領域内ドツト処理ルーチンについて
説明する。ここでは、−たん、ある内部領域に入った後
に発生されるドツトは、基本的にその内、部領域にあり
続けると考える。そこで、該ルーチンでは、まず、レジ
スタ24に格納されている値が“1”ならば、レジスタ
22.23に格納されている値を座標値として持つドツ
トを画面上に表示する(802)。次に、描画領域確認
ルーチンのところで述べたように、レジスタ14の内容
がMAXあるいはMINでないことを確認した後に、レ
ジスタ14.15に格納されている。この時までに、ド
ツト発生器13によって発生されたドツトの座標値をレ
ジスタ22.23に格納しく805) 、レジスタ14
にはMAXを格納しておく (806)、プログラムは
。
説明する。ここでは、−たん、ある内部領域に入った後
に発生されるドツトは、基本的にその内、部領域にあり
続けると考える。そこで、該ルーチンでは、まず、レジ
スタ24に格納されている値が“1”ならば、レジスタ
22.23に格納されている値を座標値として持つドツ
トを画面上に表示する(802)。次に、描画領域確認
ルーチンのところで述べたように、レジスタ14の内容
がMAXあるいはMINでないことを確認した後に、レ
ジスタ14.15に格納されている。この時までに、ド
ツト発生器13によって発生されたドツトの座標値をレ
ジスタ22.23に格納しく805) 、レジスタ14
にはMAXを格納しておく (806)、プログラムは
。
レジスタ22.23の内容で表わされるドツトが、レジ
スタ16.17.18.19の内容で表わされる矩形領
域に含まれるか否かを判定しく807) 、もし、含ま
れるならば、該ルーチンを繰り返し、一方、含まれなけ
れば、内部領域切り換えのために、再び。
スタ16.17.18.19の内容で表わされる矩形領
域に含まれるか否かを判定しく807) 、もし、含ま
れるならば、該ルーチンを繰り返し、一方、含まれなけ
れば、内部領域切り換えのために、再び。
描画領域確認ルーチンに移る(519)、これは、ドツ
トが、現在注目している内部領域から外に出た場合、プ
ログラムの初期状態に戻ったとして処理するものである
。
トが、現在注目している内部領域から外に出た場合、プ
ログラムの初期状態に戻ったとして処理するものである
。
上記の最後の部分(内部領域切り換え処理)は次のよう
にしてもよい。内部領域探索ルーチンにおいて、レジス
タ14.15の内容の示すドツトがいずれの内部領域に
も含まれない場合、再び、描画領域確認ルーチンに移る
ように変更した上で、内部領域内ドツト処理ルーチンに
おいて1発生したドツトが内部領域の外に出た場合に、
まず、内部領域探索ルーチンに移り、その結果、自分を
含む内部領域が存在しなければ、更に、描画領域確認ル
ーチンに移る。これは、ドツトが、現在注目している内
部領域から外に出た場合でも、まだ、他の内部領域内に
あるかもしれないので、そちらを見つけることを優先し
て処理をするものである。
にしてもよい。内部領域探索ルーチンにおいて、レジス
タ14.15の内容の示すドツトがいずれの内部領域に
も含まれない場合、再び、描画領域確認ルーチンに移る
ように変更した上で、内部領域内ドツト処理ルーチンに
おいて1発生したドツトが内部領域の外に出た場合に、
まず、内部領域探索ルーチンに移り、その結果、自分を
含む内部領域が存在しなければ、更に、描画領域確認ル
ーチンに移る。これは、ドツトが、現在注目している内
部領域から外に出た場合でも、まだ、他の内部領域内に
あるかもしれないので、そちらを見つけることを優先し
て処理をするものである。
この、他の内部領域を優先して処理する方法の方が、前
述の、直ちに最初の描画領域確認ステヅプに戻る方法よ
りも、概して、処理ステップ数をより少なくすることが
可能で、高速処理に適している。
述の、直ちに最初の描画領域確認ステヅプに戻る方法よ
りも、概して、処理ステップ数をより少なくすることが
可能で、高速処理に適している。
以上説明したように2本発明によれば、複数の内部領域
に分割された描画領域内に、任意の図形を描画するに際
し、描かれるべき図形のコードからドツトへの変換を一
度行うだけで1図形の表示内部領域内にある部分のみを
、ドツト単位で表示する方式であることから2表示が正
確であり、しかも、一度ある内部領域内にあることが判
定されるとそれ以後のドツトについてはその内部領域に
あるか否かのみを判定処理していく方式であることから
、処理ステップ数を大幅に低減させて高速処理とするこ
とができ、上記のように図形表示が正確であることから
2図形の任意の部分を任意に追加表示したり、あるいは
削除したりしても、ドツトの表示に乱れが生じることは
なく、さらに。
に分割された描画領域内に、任意の図形を描画するに際
し、描かれるべき図形のコードからドツトへの変換を一
度行うだけで1図形の表示内部領域内にある部分のみを
、ドツト単位で表示する方式であることから2表示が正
確であり、しかも、一度ある内部領域内にあることが判
定されるとそれ以後のドツトについてはその内部領域に
あるか否かのみを判定処理していく方式であることから
、処理ステップ数を大幅に低減させて高速処理とするこ
とができ、上記のように図形表示が正確であることから
2図形の任意の部分を任意に追加表示したり、あるいは
削除したりしても、ドツトの表示に乱れが生じることは
なく、さらに。
ドツトの表示される順番はドツト発生器によってドツト
が発生される順番と等しいため、マンマシン・インタフ
ェイスを向上させることができる。
が発生される順番と等しいため、マンマシン・インタフ
ェイスを向上させることができる。
第1図は本発明が適用される表示装置の斜視図。
第2図は本発明方法を実現する装置の一実施例のブロッ
ク図、第3図は本発明における領域の内部領域による分
割の一例を説明するための図、第4図は本発明により図
形を表現するドツトの表示処理の具体例を説明するため
の図、第5図は第2図のCPUにおけるプログラム処理
の流れ図、第6図は第5図中の描画領域確認ルーチンの
詳細説明図、第7図は第5図中の内部領域探索ルーチン
の詳細説明図、第8図は第5図中の内部領域内ドツト処
理ルーチンの詳細説明図、第9図は第2図中のドツト発
生器におけるドツト発生処理の流れ図である。 く符号の説明〉 1・・・キーボード 2・・・CRT表示部3・
・・カーソル移動キー 4・・・カーソル位置入カキ− 5・・・文字列キー 302・・・描画領域303
、304・・・表示内部領域 305・・・非表示内部領域 代理人弁理士 中 村 純之助 第1図 1 ・・・キーホード 2・・・・CRT表示名p 3・・・・カーソノL#勤キー 4・・・・カーソル千fl買入カキ− 5・・・・文字夕jキー 第2図 第3図 303−6−0表丞内泡図1工或 304・・・・&尺内匍傾漱 305、−IL、&系内@階酊成 第4図 302・・・・・・・描す勲或 303.304.、、&示内部自I或 互δ・・・・・・非喪玉内g餘矧成 401−410・・ ・ ド・ソ ト列第5図 第6図 第7図 第8図
ク図、第3図は本発明における領域の内部領域による分
割の一例を説明するための図、第4図は本発明により図
形を表現するドツトの表示処理の具体例を説明するため
の図、第5図は第2図のCPUにおけるプログラム処理
の流れ図、第6図は第5図中の描画領域確認ルーチンの
詳細説明図、第7図は第5図中の内部領域探索ルーチン
の詳細説明図、第8図は第5図中の内部領域内ドツト処
理ルーチンの詳細説明図、第9図は第2図中のドツト発
生器におけるドツト発生処理の流れ図である。 く符号の説明〉 1・・・キーボード 2・・・CRT表示部3・
・・カーソル移動キー 4・・・カーソル位置入カキ− 5・・・文字列キー 302・・・描画領域303
、304・・・表示内部領域 305・・・非表示内部領域 代理人弁理士 中 村 純之助 第1図 1 ・・・キーホード 2・・・・CRT表示名p 3・・・・カーソノL#勤キー 4・・・・カーソル千fl買入カキ− 5・・・・文字夕jキー 第2図 第3図 303−6−0表丞内泡図1工或 304・・・・&尺内匍傾漱 305、−IL、&系内@階酊成 第4図 302・・・・・・・描す勲或 303.304.、、&示内部自I或 互δ・・・・・・非喪玉内g餘矧成 401−410・・ ・ ド・ソ ト列第5図 第6図 第7図 第8図
Claims (2)
- (1)表示画面上に描くべき図形とそれが描かれる描画
領域を指定し、上記描画領域は表示を許されている表示
内部領域の一つあるいは複数と表示を禁止されている非
表示内部領域の一つあるいは複数とから成り、描くべき
図形に対応してドット発生器から発生されるドット列を
受けてドット毎に上記描画領域に含まれるか否かを判定
し、かつ、上記非表示内部領域は避けて表示内部領域に
のみ表示する図形描画方法において、1ドット毎に描画
領域に含まれるか否かを判定する描画領域確認ステップ
と、描画領域に含まれると判ったドットについてどの内
部領域に存在するかを調べる内部領域探索ステップと、
あるひとつの内部領域にあることが判るとそれが表示内
部領域であれば表示画面に表示し非表示内部領域であれ
ば表示画面に表示せず、以後発生するドットについては
現在の内部領域にあるか否かのみを調べて現在の内部領
域にある限りは上記手続きを繰り返して行う内部領域内
ドット処理ステップと、現在の内部領域に存在しないこ
とが判ると他の内部領域に存在するか否かを判定し他の
内部領域にあることが判れば上記内部領域内ドット処理
ステップに移って上記手続きを繰り返し、どの内部領域
にも含まれないことが判れば最初の描画領域確認ステッ
プに戻って描画領域に含まれるか否かの判定からやり直
す内部領域切り換えステップとを含んで成ることを特徴
とする図形描画方法。 - (2)表面両面上に描くべき図形とそれが描かれる描画
領域を指定し、上記描画領域は表示を許されている表示
内部領域の一つあるいは複数と表示を禁止されている非
表示内部領域の一つあるいは複数とから成り、描くべき
図形に対応してドット発生器から発生されるドット列を
受けてドット毎に上記描画領域に含まれるか否かを判定
し、かつ、上記非表示内部領域は避けて表示内部領域に
のみ表示する図形描画方法において、1ドット毎に描画
領域に含まれるか否かを判定する描画領域確認ステップ
と、描画領域に含まれると判ったドットについてどの内
部領域に存在するかを調べる内部領域探索ステップと、
あるひとつの内部領域にあることが判るとそれが表示内
部領域であれば表示画面に表示し非表示内部領域であれ
ば表示画面に表示せず、以後発生するドットについては
現在の内部領域にあるか否かのみを調べて現在の内部領
域にある限りは上記手続きを繰り返して行う内部領域内
ドット処理ステップと、現在の内部領域に存在しないこ
とが判ると最初の描画領域確認ステップに戻って描画領
域に含まれるか否かの判定からやり直す内部領域切り換
えステップとを含んで成ることを特徴とする図形描画方
法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP60179485A JP2585515B2 (ja) | 1985-08-16 | 1985-08-16 | 図形描画方法 |
US06/894,860 US4779081A (en) | 1985-08-16 | 1986-08-08 | Graphics in display unit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP60179485A JP2585515B2 (ja) | 1985-08-16 | 1985-08-16 | 図形描画方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS6240580A true JPS6240580A (ja) | 1987-02-21 |
JP2585515B2 JP2585515B2 (ja) | 1997-02-26 |
Family
ID=16066651
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP60179485A Expired - Lifetime JP2585515B2 (ja) | 1985-08-16 | 1985-08-16 | 図形描画方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US4779081A (ja) |
JP (1) | JP2585515B2 (ja) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR930001926B1 (ko) * | 1988-04-13 | 1993-03-20 | 가부시끼가이샤 히다찌세이사꾸쇼 | 표시 제어방법 및 그 장치 |
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 |
US5396263A (en) * | 1988-06-13 | 1995-03-07 | Digital Equipment Corporation | Window dependent pixel datatypes in a computer video graphics system |
US4982345A (en) * | 1989-01-23 | 1991-01-01 | International Business Machines Corporation | Interactive computer graphics display system processing method for identifying an operator selected displayed object |
JPH03177893A (ja) * | 1989-12-06 | 1991-08-01 | Toshiba Corp | マルチウィンドウ表示装置 |
US5276437A (en) * | 1992-04-22 | 1994-01-04 | International Business Machines Corporation | Multi-media window manager |
JP3413201B2 (ja) * | 1992-12-17 | 2003-06-03 | セイコーエプソン株式会社 | ウィンドウ型及び他の表示オペレーションのためのグラフィックス制御プレーン |
US5487145A (en) * | 1993-07-09 | 1996-01-23 | Taligent, Inc. | Method and apparatus for compositing display items which minimizes locked drawing areas |
US5546524A (en) * | 1993-12-15 | 1996-08-13 | International Business Machines Corp. | Method and apparatus for interlocking graphical objects |
US5877762A (en) * | 1995-02-27 | 1999-03-02 | Apple Computer, Inc. | System and method for capturing images of screens which display multiple windows |
WO2001065411A1 (en) * | 2000-02-29 | 2001-09-07 | Thinairapps, Inc. | Flexible wireless advertisement integration in wireless software applications |
US6961567B1 (en) * | 2000-12-07 | 2005-11-01 | Palm, Inc. | Generic activation and registration framework for wireless devices |
US9183571B2 (en) | 2007-09-14 | 2015-11-10 | Qualcomm Incorporated | System and method for providing advertisement data to a mobile computing device |
US6795710B1 (en) * | 2001-01-05 | 2004-09-21 | Palmone, Inc. | Identifying client patterns using online location-based derivative analysis |
US8504074B2 (en) * | 2001-01-05 | 2013-08-06 | Palm, Inc. | System and method for providing advertisement data to a mobile computing device |
US7555571B1 (en) | 2001-01-05 | 2009-06-30 | Palm, Inc. | Activation of mobile computing device on a cellular network |
US8812398B2 (en) | 2001-05-08 | 2014-08-19 | Qualcomm Incorporated | Key for a wireless-enabled device |
US20060184893A1 (en) * | 2005-02-17 | 2006-08-17 | Raymond Chow | Graphics controller providing for enhanced control of window animation |
US8688083B2 (en) * | 2008-11-26 | 2014-04-01 | Qualcomm Incorporated | System and method for providing advertisement data or other content |
US20110283226A1 (en) * | 2010-05-15 | 2011-11-17 | International Business Machines Corporation | Window display management in a graphical user interface |
CN103700362B (zh) * | 2013-12-20 | 2016-03-30 | 广东威创视讯科技股份有限公司 | 多信号窗口显示方法及装置 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3497760A (en) * | 1968-06-10 | 1970-02-24 | Sperry Rand Corp | Logical expansion circuitry for display systems |
US3639736A (en) * | 1969-11-19 | 1972-02-01 | Ivan E Sutherland | Display windowing by clipping |
US4492956A (en) * | 1980-02-29 | 1985-01-08 | Calma Company | Graphics display system and method including preclipping circuit |
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 |
EP0112942B1 (en) * | 1982-12-30 | 1987-03-11 | International Business Machines Corporation | Graphics display system and method |
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 |
US4586035A (en) * | 1984-02-29 | 1986-04-29 | International Business Machines Corporation | Display terminal with a cursor responsive virtual distributed menu |
-
1985
- 1985-08-16 JP JP60179485A patent/JP2585515B2/ja not_active Expired - Lifetime
-
1986
- 1986-08-08 US US06/894,860 patent/US4779081A/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US4779081A (en) | 1988-10-18 |
JP2585515B2 (ja) | 1997-02-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS6240580A (ja) | 図形描画方法 | |
KR900006042B1 (ko) | 복합문서 처리 장치용 표시 제어장치 | |
US4860372A (en) | Real time handwritten character input system | |
JP2002215281A (ja) | コンピュータ装置、表示デバイス、出力デバイス、表示制御装置、コンピュータプログラム、記憶媒体、イメージの処理方法 | |
US5831622A (en) | Method and apparatus for intersecting color regions of multiple shapes for graphics systems | |
JPH04347779A (ja) | 図形文書処理装置 | |
JPS6177979A (ja) | 表示制御方法 | |
JPS642953B2 (ja) | ||
JPH06274303A (ja) | マルチウィンドウ表示方法 | |
US5680527A (en) | Information processing system having recognized pattern control | |
JP3129717B2 (ja) | 画像処理装置および画像処理方法 | |
JP2751212B2 (ja) | 文書作成装置 | |
JPH0756557A (ja) | 画像合成方法 | |
JP2976671B2 (ja) | データ展開方法 | |
JPH0581948B2 (ja) | ||
JPH1139302A (ja) | 領域設定処理装置及び記憶媒体 | |
JPH06202796A (ja) | 情報記憶方法 | |
JPH04277863A (ja) | グラフィック表示装置における表の表示方法 | |
JPS63271672A (ja) | 図形出力コントロ−ラ | |
JPH05324629A (ja) | 文書処理装置 | |
JP2001357076A (ja) | Cadシステムにおける画像表示方法 | |
JPS63133226A (ja) | マルチウインドウ方式 | |
Paisner | The evolution and architecture of a high-speed workstation for interactive graphics | |
JPH06324795A (ja) | 表示画面選択方法 | |
JPS63245514A (ja) | 表示制御方式 |