JPS6270984A - クリツピング処理方法 - Google Patents
クリツピング処理方法Info
- Publication number
- JPS6270984A JPS6270984A JP21071685A JP21071685A JPS6270984A JP S6270984 A JPS6270984 A JP S6270984A JP 21071685 A JP21071685 A JP 21071685A JP 21071685 A JP21071685 A JP 21071685A JP S6270984 A JPS6270984 A JP S6270984A
- Authority
- JP
- Japan
- Prior art keywords
- vector
- window
- coordinates
- digital line
- point
- 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.)
- Pending
Links
Landscapes
- Digital Computer Display Output (AREA)
- Image Generation (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
この発明は、グラフィックディスプレイ上に図形を表示
するため指定したウィンドウ(window)の領域外
の部分を消去して表示するためのクリッピング処理方法
に関するものである。
するため指定したウィンドウ(window)の領域外
の部分を消去して表示するためのクリッピング処理方法
に関するものである。
XY直角座標によりウィンドウの領域が指定され、複数
のベクトルの始点と終点の座標位置が指定された場合、
クリッピング処理と各ベクトルのディジタル線分発生と
は従来はそれぞれ別の処理によって行われていた。
のベクトルの始点と終点の座標位置が指定された場合、
クリッピング処理と各ベクトルのディジタル線分発生と
は従来はそれぞれ別の処理によって行われていた。
第2図はクリッピング前の各ベクトルとウィンドウを表
す図、第3図は第2図に示すベクトルがクリッピング処
理後グラフィックディスプレイに表示された図形を示す
図である。これらの図において、(100)はウィンド
ウの領域を示し、(101) 。
す図、第3図は第2図に示すベクトルがクリッピング処
理後グラフィックディスプレイに表示された図形を示す
図である。これらの図において、(100)はウィンド
ウの領域を示し、(101) 。
(102)、(103)、(104)、(105)は各
ベクトルを示し、(101a) 、 (102a) 、
(103a) 、 (104a)は各ベクトルがクリ
ッピング処理されて表示された状態を示す。
ベクトルを示し、(101a) 、 (102a) 、
(103a) 、 (104a)は各ベクトルがクリ
ッピング処理されて表示された状態を示す。
(XL IYL )l(XH+YH)はウィンドウ(1
00)の領域全指定する座標位置、Ps□y PS2
r PS3 + PS4 rPssは各ベクトルの始点
、PEI 、 PE2 、 PE3 。
00)の領域全指定する座標位置、Ps□y PS2
r PS3 + PS4 rPssは各ベクトルの始点
、PEI 、 PE2 、 PE3 。
PE4 、 PE5は各ベクトルの終点を示す。
第4図は、例えばニス・バリントン著[コンピュータグ
ラフィックスCI]第6章「ウィンドウィングとクリッ
ピング」に説明されているクリッピングアルゴリズムを
含む図形表示の方法を示すフローチャートであって、図
のill 、 t2+ 、 +31 、 +41 、
F51 。
ラフィックスCI]第6章「ウィンドウィングとクリッ
ピング」に説明されているクリッピングアルゴリズムを
含む図形表示の方法を示すフローチャートであって、図
のill 、 t2+ 、 +31 、 +41 、
F51 。
[61、(7) 、 +91は各ステップを示す。ステ
ップ(1)はウィンドウの領域を指定する領域指定ステ
ップで座標位置xL、 YL 、 XH、Y、を指定す
る。ステップ(2)は描くべきベクトルVの始点と終点
、すなわち、たとえばベクトル(101)に対しては始
点P81の座標(XSI p Yst )と終点PEI
の座標(XEI P YEI )を指定する。ステップ
(9)は従来のクリッピング処理を表すステップで、各
ベクトルのウィンドウ外の部分を消去し、第3図の表示
に対応する各ベクトルの両端の座標だけを残すステップ
である。
ップ(1)はウィンドウの領域を指定する領域指定ステ
ップで座標位置xL、 YL 、 XH、Y、を指定す
る。ステップ(2)は描くべきベクトルVの始点と終点
、すなわち、たとえばベクトル(101)に対しては始
点P81の座標(XSI p Yst )と終点PEI
の座標(XEI P YEI )を指定する。ステップ
(9)は従来のクリッピング処理を表すステップで、各
ベクトルのウィンドウ外の部分を消去し、第3図の表示
に対応する各ベクトルの両端の座標だけを残すステップ
である。
第4図においてステップ+31 、 f4+ 、 [5
1、+61 、 +71は第3図に示すクリッピング処
理済みの各ベクトルの2つの端点の座標から各ベクトル
のディジタル線分を発生させるための各ステップである
。ディジタル線分の発生方法としてはシンプルDDA(
Digital Differential Anal
yzer )、BRM(Binary Rate Mu
ltiplier )による手法、Bresenham
の手法などがあり、例えば山口冨士夫著の「コンピュー
タディスプレイによる図形処理工学」第2章「線分と円
弧の補間」に説明されている。
1、+61 、 +71は第3図に示すクリッピング処
理済みの各ベクトルの2つの端点の座標から各ベクトル
のディジタル線分を発生させるための各ステップである
。ディジタル線分の発生方法としてはシンプルDDA(
Digital Differential Anal
yzer )、BRM(Binary Rate Mu
ltiplier )による手法、Bresenham
の手法などがあり、例えば山口冨士夫著の「コンピュー
タディスプレイによる図形処理工学」第2章「線分と円
弧の補間」に説明されている。
ここでは、Bresenhamの方法によって説明する
。
。
ベクトルVの始点座標を(Xs * Ys )、終点座
標’e (XE r YE )とすると@lYr、−Y
slとlXrニーXslを比較し、大きい方(仮にl
XE −Xs l>l YE−YS lとする)の座標
を始点座標から出発して毎回1(座標変化の最小単位を
1とする)ずつ変化する。
標’e (XE r YE )とすると@lYr、−Y
slとlXrニーXslを比較し、大きい方(仮にl
XE −Xs l>l YE−YS lとする)の座標
を始点座標から出発して毎回1(座標変化の最小単位を
1とする)ずつ変化する。
仮にX=>XsとすればX座標をXsから出発して毎回
1ずつ増加する。ステップ(3)の傾き計算としてIX
E−XSI>IME−YSIの場合は傾きとして(YE
−YS)/(XE −Xs )を、l Xz −Xs
l <l YE −Ys lの場合は傾きとして(X
z −Xs )/(Y、 −Ys)を算出する。
1ずつ増加する。ステップ(3)の傾き計算としてIX
E−XSI>IME−YSIの場合は傾きとして(YE
−YS)/(XE −Xs )を、l Xz −Xs
l <l YE −Ys lの場合は傾きとして(X
z −Xs )/(Y、 −Ys)を算出する。
以下、(Xg−X8) > (Y、−Y8) > o
場合を例にして説明する。i番目のXの値X1iLは
ステップ(5)によシ Xtil=X(i−x) + 1 によシ求められる
。また、X(i−1)におけるYの真値と、Y(i−1
)の差をE(i−1)とすれば、X (ilにおけるE
litはステップ(6)により Elil≦0.5ならY fit = Y (1−1)
Elil > 0.5ならYfil= Y (i−1)
+ 1のようにY iilが決定される(ステップ(
7))。Yの値が1だけインクリメントされたら、Et
ilは、1だけ減じられステップ(4)へ戻る。
場合を例にして説明する。i番目のXの値X1iLは
ステップ(5)によシ Xtil=X(i−x) + 1 によシ求められる
。また、X(i−1)におけるYの真値と、Y(i−1
)の差をE(i−1)とすれば、X (ilにおけるE
litはステップ(6)により Elil≦0.5ならY fit = Y (1−1)
Elil > 0.5ならYfil= Y (i−1)
+ 1のようにY iilが決定される(ステップ(
7))。Yの値が1だけインクリメントされたら、Et
ilは、1だけ減じられステップ(4)へ戻る。
ステップ(4)ではXfil 、 Y(i)がXF、、
YE と一致するか否かを判定し、一致すればプロッ
ト完了としてディジタル線分の発生を終了し、一致しな
ければステップ(5)へ進む。
YE と一致するか否かを判定し、一致すればプロッ
ト完了としてディジタル線分の発生を終了し、一致しな
ければステップ(5)へ進む。
従来の方法ではステップ(9)のクリッピング処理とス
テップ+41 、 +51 、 +61 、 +71の
ディジタル線分発生処理とが共に多くの時間を必要とす
る処理であって、これらが互に独立に実行されるので、
総合的に多くの処理時間全必要とするという問題点があ
った。
テップ+41 、 +51 、 +61 、 +71の
ディジタル線分発生処理とが共に多くの時間を必要とす
る処理であって、これらが互に独立に実行されるので、
総合的に多くの処理時間全必要とするという問題点があ
った。
この発明は上記の問題点全解決するためになされたもの
で、総合的には比較的短時間でクリッピング処理された
図形?表示することができるようにしたクリッピング処
理方法を提供することを目的としている。
で、総合的には比較的短時間でクリッピング処理された
図形?表示することができるようにしたクリッピング処
理方法を提供することを目的としている。
この発明で(は、ディジタル線分発生処理の中の1ステ
ツプとしてディジタル線分上の点として決定された座標
位置がウィンドウの領域外にあるか否かの判定ステップ
を挿入することによジ、ディジタル線分発生処理と同時
にクリッピング処理を行うこと全可能にした。
ツプとしてディジタル線分上の点として決定された座標
位置がウィンドウの領域外にあるか否かの判定ステップ
を挿入することによジ、ディジタル線分発生処理と同時
にクリッピング処理を行うこと全可能にした。
この発明によると、ディジタル線分発生処理と同時にク
リッピング処理が実行できるので、綜合的な処理時間を
短縮することができる。
リッピング処理が実行できるので、綜合的な処理時間を
短縮することができる。
以下、図面についてこの発明の詳細な説明する。第1図
はこの発明の一実施例を示すフローチャートであって、
第4図と同一符号は同−又は和尚ステップを示し、(8
)・はベクトルVのディジタル線分の点の座標Xtil
、Y (i)がウィンドウ(100)の領域外にあるか
否かを判定する領域比較ステップであり、(10)はベ
クトルVのディジタル線分を発生する場合、その出発点
とする座標を決定するためのベクトル出発点決定ステッ
プである。
はこの発明の一実施例を示すフローチャートであって、
第4図と同一符号は同−又は和尚ステップを示し、(8
)・はベクトルVのディジタル線分の点の座標Xtil
、Y (i)がウィンドウ(100)の領域外にあるか
否かを判定する領域比較ステップであり、(10)はベ
クトルVのディジタル線分を発生する場合、その出発点
とする座標を決定するためのベクトル出発点決定ステッ
プである。
第2図に示す各ベクトル(101)、(102)、(1
03)。
03)。
(104)、(105)についてその始点及び終点PS
□。
□。
PEN t P82 j PE21 psa l PE
3 t PS4 P PE4 tPS5tPE5 の各
点がウィンドウ(100)内にあるか否かが従来公知の
方法で判定される。第2図に示す例で言えば、p 、
p 、p 、p がウィン81 EI
B2 83ドウ(1oo)内にあ
る。このように、始点又は終点のうち少くとも一方の端
点がウィンド内にあるベクトル(101)、(102)
、(103)についてはウィンドウ(100)内の1つ
の端点をディジタル線分発生の出発点とすればよい。ベ
クトル(101)のよ!5 K始点pstも終点PEI
も共にウィンドウ(100) 内にあるものに対しては
P8□、P8□のいずれを出発点として渕んでもよいの
で仮にP8□を出発点として選ぶことにする。
3 t PS4 P PE4 tPS5tPE5 の各
点がウィンドウ(100)内にあるか否かが従来公知の
方法で判定される。第2図に示す例で言えば、p 、
p 、p 、p がウィン81 EI
B2 83ドウ(1oo)内にあ
る。このように、始点又は終点のうち少くとも一方の端
点がウィンド内にあるベクトル(101)、(102)
、(103)についてはウィンドウ(100)内の1つ
の端点をディジタル線分発生の出発点とすればよい。ベ
クトル(101)のよ!5 K始点pstも終点PEI
も共にウィンドウ(100) 内にあるものに対しては
P8□、P8□のいずれを出発点として渕んでもよいの
で仮にP8□を出発点として選ぶことにする。
また、始点終点共にウィンドウ(100)外にあるベク
トルについては、従来公知の方法により、このベクトル
がウィンドウ(100)と交差する可能性があるかない
かを判定する。ウィンドウ(100)と交差する可能性
のないベクトル(105)は問題外となる。ウィンドウ
(100)と交差する可能性のあるベクトル(104)
については、ウィンドウ(100)との2交点のうちの
いずれか1交点の座標を従来公知の方法により求めて、
この点をディジタル線分発生の出発点とする。このよう
にしてステップ(10)のベクトル出発点決定が実行さ
れる。
トルについては、従来公知の方法により、このベクトル
がウィンドウ(100)と交差する可能性があるかない
かを判定する。ウィンドウ(100)と交差する可能性
のないベクトル(105)は問題外となる。ウィンドウ
(100)と交差する可能性のあるベクトル(104)
については、ウィンドウ(100)との2交点のうちの
いずれか1交点の座標を従来公知の方法により求めて、
この点をディジタル線分発生の出発点とする。このよう
にしてステップ(10)のベクトル出発点決定が実行さ
れる。
出発点のX座標から出発してXが1回インクリメントさ
れYの処理(7)も終って座標Xtil 、 Y[il
t得たときステップ(4)ではX (il 、 Y (
i)がそのベクトルの他の端点の座標と一致するか否か
の判定が行われ、一致すれば、プロット完了として当該
ベクトルに対する処理は終了する。ステップ(4)の判
定がNoであればステップ(8)にうつる。第2図に示
すベクトル(101)の例ではステップ(4)により処
理が終了する。ベクトル(102)ではPgZを出発点
とし毎回Xを1ずつデクリメントしてゆくのでXfi)
<Xx、になるとステップ(8)の判定はオーバとなっ
て当該ベクトルに対する処理は終了する。また、第2図
のベクトル(103)ではpssを出発点とし毎回Yt
lずつインクリメントしてゆき(ステップ(5)に対応
)それに対しXの処理を行う(ステップ(7)に対応)
のでX (if > X、 となるとステップ(8)
の判定はオーバとなってベクトル(103)に対する処
理が終了する。ベクトル(104)についてもステップ
(8)の領域比較によジ処理が終了する。
れYの処理(7)も終って座標Xtil 、 Y[il
t得たときステップ(4)ではX (il 、 Y (
i)がそのベクトルの他の端点の座標と一致するか否か
の判定が行われ、一致すれば、プロット完了として当該
ベクトルに対する処理は終了する。ステップ(4)の判
定がNoであればステップ(8)にうつる。第2図に示
すベクトル(101)の例ではステップ(4)により処
理が終了する。ベクトル(102)ではPgZを出発点
とし毎回Xを1ずつデクリメントしてゆくのでXfi)
<Xx、になるとステップ(8)の判定はオーバとなっ
て当該ベクトルに対する処理は終了する。また、第2図
のベクトル(103)ではpssを出発点とし毎回Yt
lずつインクリメントしてゆき(ステップ(5)に対応
)それに対しXの処理を行う(ステップ(7)に対応)
のでX (if > X、 となるとステップ(8)
の判定はオーバとなってベクトル(103)に対する処
理が終了する。ベクトル(104)についてもステップ
(8)の領域比較によジ処理が終了する。
以上のようにこの発明によれば、ディジタル線分発生の
処理ステップ中に領域比較のステップを挿入することに
よりクリッピング処理のうちの大部分の処理を行うこと
ができるので、図形表示を高速化できるという効果があ
る。
処理ステップ中に領域比較のステップを挿入することに
よりクリッピング処理のうちの大部分の処理を行うこと
ができるので、図形表示を高速化できるという効果があ
る。
【図面の簡単な説明】
第1図はこの発明の一実施例を示すフローチャート、第
2図はクリッピング前の各ベクトルとウィンドウを表す
図、第3図は第2図に示すベクトルがクリッピング処理
後グラフティックディスプレイに表示された図形を示す
図、第4図は従来の方法を示すフローチャートである。 (1)は領域指定ステップ、(2)はベクトル指定ステ
ップ、(3)は傾き計算ステップ、(4)はプロット完
了判定ステップ、(5)はインクリメントステップ、(
6)は誤差算出ステップ、(7)はYの処理ステップ、
(8)は領域比較ステップ、(io)はベクトル出発点
決定ステップ。 なお各図中、同一符号は同−又は相当部分を示す。
2図はクリッピング前の各ベクトルとウィンドウを表す
図、第3図は第2図に示すベクトルがクリッピング処理
後グラフティックディスプレイに表示された図形を示す
図、第4図は従来の方法を示すフローチャートである。 (1)は領域指定ステップ、(2)はベクトル指定ステ
ップ、(3)は傾き計算ステップ、(4)はプロット完
了判定ステップ、(5)はインクリメントステップ、(
6)は誤差算出ステップ、(7)はYの処理ステップ、
(8)は領域比較ステップ、(io)はベクトル出発点
決定ステップ。 なお各図中、同一符号は同−又は相当部分を示す。
Claims (1)
- 【特許請求の範囲】 XY直角座標によりウィンドウの領域とベクトル(単数
又は複数)の始点と終点とを指定し、上記ウィンドウの
領域内にある上記ベクトルの部分をグラフィックディス
プレイ上に表示するための処理を行うクリッピング処理
方法において、上記ベクトルのうち始点又は終点のうち
少くとも一方の端点が上記ウィンドウの領域内にあるベ
クトルについてはウィンドウの領域内にある1つの端点
を出発点とし、上記ベクトルのうち始点及び終点が共に
上記ウィンドウの領域外にあり、かつ上記ウィンドウの
境界線との交点を有するベクトルについては当該ベクト
ルと上記ウィンドウとの交点のうちいずれか1つの交点
を出発点としてディジタル線分発生の出発点の座標を決
定する段階、 上記XY直角座標における座標位置の最小変化単位を1
とし、上記出発点の座標から出発し、当該ベクトルの傾
斜に応じてX方向又はY方向の座標を順次1ずつ増加又
は減少し、この1ずつ増加又は減少する方向と直角な方
向の座標をもとのままに保つか又は1だけ増加又は減少
するかを決定することによって当該ベクトルを表すディ
ジタル線分を順次発生する段階、 このディジタル線分を順次発生する段階でディジタル線
分の1つの座標位置が算出されるごとに当該座標位置が
当該ベクトルの他の端点の座標位置に一致するか否かを
判定し、一致する場合はこのディジタル線分の発生を停
止するプロット完了判定段階、 このプロット完了判定段階における判定が不一致を示す
場合、上記当該座標位置が上記ウィンドウの領域外にあ
るか否かを判定し、領域外にある場合はこのディジタル
線分の発生を停止する領域比較段階を備えたことを特徴
とするクリッピング処理方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP21071685A JPS6270984A (ja) | 1985-09-24 | 1985-09-24 | クリツピング処理方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP21071685A JPS6270984A (ja) | 1985-09-24 | 1985-09-24 | クリツピング処理方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPS6270984A true JPS6270984A (ja) | 1987-04-01 |
Family
ID=16593917
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP21071685A Pending JPS6270984A (ja) | 1985-09-24 | 1985-09-24 | クリツピング処理方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS6270984A (ja) |
-
1985
- 1985-09-24 JP JP21071685A patent/JPS6270984A/ja active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH05307610A (ja) | テクスチャマッピング方法およびその装置 | |
| JPS6270984A (ja) | クリツピング処理方法 | |
| JPS6282484A (ja) | 線形図形の変換方法 | |
| JP3210141B2 (ja) | 直線描画装置 | |
| JP2698170B2 (ja) | 閉領域塗りつぶし表示方法 | |
| JP2684609B2 (ja) | 図形データ処理装置における図形表示方法 | |
| JP2538645B2 (ja) | 曲線の折線近似装置 | |
| JPS60163162A (ja) | 3次元連接体の形状定義方法 | |
| JPH0424774A (ja) | 曲線描画機能を備えた情報処理装置および処理方法 | |
| JPH1049691A (ja) | ベジェ曲線による点列トレースの方法および装置 | |
| JPH07134779A (ja) | 掃引体図形生成装置 | |
| JPH01286087A (ja) | デジタル線分描画方式 | |
| JPH0368086A (ja) | 直線補間回路 | |
| JPH0467230B2 (ja) | ||
| JPS6283790A (ja) | 画像処理装置 | |
| JP3455301B2 (ja) | Cadシステムにおける形状修正装置および方法 | |
| JP2904994B2 (ja) | 座標間接続表示方法 | |
| JPH06274308A (ja) | ベジェ曲線均等肉付け作成処理方法 | |
| JPS6061866A (ja) | 図形処理システムにおける面取り処理方式 | |
| JP2780496B2 (ja) | 描画装置のクリッピング処理方式 | |
| JPH02130689A (ja) | 図形処理装置 | |
| JPH0346826B2 (ja) | ||
| JPH07110871A (ja) | 図形描画装置 | |
| JP3034748B2 (ja) | 模様生成処理装置 | |
| JP2932844B2 (ja) | 多分岐形状図形表示方式 |