JPH1186008A - 描画処理方法および描画処理装置 - Google Patents

描画処理方法および描画処理装置

Info

Publication number
JPH1186008A
JPH1186008A JP9241507A JP24150797A JPH1186008A JP H1186008 A JPH1186008 A JP H1186008A JP 9241507 A JP9241507 A JP 9241507A JP 24150797 A JP24150797 A JP 24150797A JP H1186008 A JPH1186008 A JP H1186008A
Authority
JP
Japan
Prior art keywords
straight line
end point
point
clipping
line
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP9241507A
Other languages
English (en)
Inventor
Hideki Hara
英樹 原
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP9241507A priority Critical patent/JPH1186008A/ja
Publication of JPH1186008A publication Critical patent/JPH1186008A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Image Generation (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

(57)【要約】 【課題】 不必要な直線描画の座標計算処理を省くこと
ができる描画処理方法および描画処理装置の提供を目的
とする。 【解決手段】 直線描画処理方法は、クリッピング領域
CPの頂点を原点とし、クリッピング領域CPが座標領
域の第4象現に位置するとした際に、描画直線の始点Q
もしくは終点Rが第1象現に存在し、他点が第3象現に
存在する直線を選択する第1のステップとされるステッ
プS22乃至ステップS26と、クリッピング領域CP
が第4象現に位置するとした際に、上記描画直線の切片
が正である直線を選択する第2のステップとされるステ
ップS27およびステップS28と、描画直線が第1の
選択ステップおよび第2の選択ステップを満たす場合に
は、35描画演算処理を終了する終了ステップとされる
ステップS13とを有する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、描画有効領域とし
て指定されたクリッピング領域に対して図形等を描画す
る描画処理方法および描画処理装置に関する。
【0002】
【従来の技術】コンピュータを用いて画像を描画するコ
ンピュータグラフィクスは、画像素子毎にデータを画像
データを設定して、このように画像毎に設定された画像
データタに基づいて、図形をディスプレイ等の表示装置
に表示する。
【0003】このコンピュータグラッフィクスによる図
形の描画の方法で、矩形に囲まれた領域を作成し、この
囲まれた領域内に描画のみを有効にする方法がある。こ
のように描画等を行うために矩形等の領域を指定する機
能は、クリッピング機能と称されるものであって、この
機能によって指定された領域をクリッピング領域とい
う。
【0004】また、上位階層ソフトウェアである描画を
行うアプリケーションソフト等による直線の描画は、直
線の両端点の座標の指定によって通常行われる。そし
て、直線の両端点の座標の指定は、上述したクリッピン
グ領域内外を問わず指定されることが多い。
【0005】このような状況において、上記クリッピン
グ領域外で本来は描画する必要のない直線かどうかを判
断し、不必要な直線描画の座標計算処理を行わないよう
にするのが当該クリッピング機能の一つの役目である。
【0006】
【発明が解決しようとする課題】ところで、クリッピン
グ領域を指定して行う描画方法では、両端点が指定され
た直線が上記クリッピング領域の内外の何れに属するが
否かの判別して、実際の描画が実行される。
【0007】具体的には、直線のパラメータである始点
と終点に基づいて、この直線を構成する始点から終点ま
での一点一点について座標計算処理を行いながら、各点
がクリッピング領域の内外どちらに属するかを判断して
行っている。
【0008】よって、描画すべき座標か否かを決める
際、終点まで座標計算処理を行っていった後、結局、各
点が全てがクリッピング領域内に入ることなく、選択さ
れた直線内に有効な描画座標が全くないという場合も生
じてくる。
【0009】すなわち、直線描画の座標計算処理を始点
から終点まで順番に行いながらクリッピング内外を判断
しても、最終的にその直線全体がクリッピング領域外に
あることになり、無駄な計算処理を行ってしまうことに
なる。
【0010】なお、選択された直線の両端点の座標値の
値に基づいて、当該直線がクリッピング領域外にあるか
否かを判別することも従来より行われているが、条件と
しての制限が多かった。例えば、X−Y座標系の第4象
現にクリッピング領域が選択された場合にあっては、始
点および終点が第1象現と第2象現にわたって選択され
た場合や第1象現と第3象現にわたって選択された場合
等にのみ判別できるといった制約があった。
【0011】そこで、本発明は、上述の実情に鑑みてな
されたものであり、不必要な直線描画の座標計算処理を
省くことができる描画処理方法および描画処理装置の提
供を目的とする。
【0012】
【課題を解決するための手段】本発明に係る描画処理方
法は、上述の課題を解決するために、クリッピング領域
の頂点を原点とし、クリッピング領域が座標領域の第4
象現に位置するとした際に、描画直線の始点もしくは終
点が第1象現に存在し、他点が第3象現に存在する直線
を選択する第1選択ステップと、クリッピング領域の頂
点を原点とし、クリッピング領域が座標領域の第4象現
に位置するとした際に、描画直線の切片が正である直線
を選択する第2の選択ステップと、描画直線が第1の選
択ステップおよび第2の選択ステップを満たす場合に
は、描画演算処理を終了する終了ステップとを有する。
【0013】これにより、描画処理方法は、座標領域の
第4象現にクリッピング領域が位置するとした際に、描
画直線の始点もしくは終点が第1象現に存在し、かつ他
点が第3象現に存在する直線であって、切片が正である
描画直線が選択された場合に、描画演算処理を終了す
る。
【0014】また、本発明に係る描画処理装置は、上述
の課題を解決するために、任意に選択された方形のクリ
ッピング領域の頂点を原点とし、クリッピング領域が座
標領域の第4象現に位置するとした際に、描画直線の始
点もしくは終点が第1象現に存在し、他点が第3象現に
存在する直線を選択する第1選択ステップと、クリッピ
ング領域の頂点を原点とし、クリッピング領域が座標領
域の第4象現に位置するとした際に、描画直線の切片が
正である直線を選択する第2の選択ステップと、描画直
線が第1の選択ステップおよび上記第2の選択ステップ
を満たす場合には、描画演算処理を終了する終了ステッ
プとを有する。
【0015】これにより、描画処理装置は、座標領域の
第4象現にクリッピング領域が位置するとした際に、描
画直線の始点もしくは終点が第1象現に存在し、かつ他
点が第3象現に存在する直線であって、切片が正である
描画直線が選択された場合に、描画演算処理を終了す
る。
【0016】
【発明の実施の形態】本発明の実施の形態について図面
を参照して、詳しく説明する。この実施の形態は、クリ
ッピング領域内外を問わず指定された直線を、有効描画
領域とされるクリッピング領域にのみ描画する直線描画
処理方法である。
【0017】上記直線描画処理方法は、始点および終点
によって指定された直線を描画する際に、その描画前に
当該指定された始点及び終点からクリッピング領域に属
するか否かを判断して、その結果に基づいて実際の描画
処理を実行するものである。これにより、直線描画処理
方法は、描画指定された直線について、この直線を構成
する一点一点がクリッピング領域内に指定されているか
否かを判断することなく、直線全体がクリッピング領域
外に指定されている場合についての描画座標を計算処理
することを省略することができる。
【0018】先ず、本発明の実施の形態とされる直線描
画処理方法の説明をする前に従来のその方法について説
明する。
【0019】従来の直線描画処理方法は、クリッピング
領域に対して描画指定された直線の始点および終点のみ
の座標値を用いて当該直線がクリッピング領域の内側ま
たは外側に指定されるか否かを座標計算によって判断す
るものであって、本発明の実施の形態とされる直線描画
処理方法にあっては、従来のものに新たな座標計算処理
を加えることで直線描画の座標計算処理の冗長分を省く
ことを実現している。先ず、従来の描画処理方法につい
て図1乃至図5に示を用いて説明する。
【0020】図1には、コンピュータ等の表示装置にお
いて指定されたクリッピング領域CPを示している。こ
こでは、クリッピング領域CPは、矩形とされて表示さ
れる領域である。このクリッピング領域CPは、例えば
コンピュータの備えるマウス等の入力手段によって指定
することができる。
【0021】このクリッピング領域CPの指定は、通
常、2点を任意に選択することによって行い、具体的に
は、始点及び終点とされる選択した2点の位置が、矩形
のクリッピング領域CPが決定された際の対角線に位置
された頂点位置となるよう決定する。例えば、図1にお
いては、始点としてクリッピング始点(Xcs,Yc
s)を選択して、終点としてクリッピング終点(Xc
e,Yce)を選択した場合の、頂点C1,C2,C3
4を有して矩形状の形成されたクリッピング領域CP
を示している。
【0022】すなわち、この場合のクリッピング領域C
Pは、上記クリッピング始点(Xcs,Ycs)とされ
る第1の頂点C1、上記クリッピング終点(Xce,Y
ce)とされる第4の頂点C4、上記クリッピング始点
(Xcs,Ycs)および上記クリッピング終点(Xc
e,Yce)を構成する各辺が交差して形成された第2
の頂点C2,第3の頂点C3とを有している。
【0023】また、クリッピング領域CP内外で選択さ
れる直線についても説明するために、図1には、その説
明をする上で必要な領域a乃至領域hを示している。
【0024】各領域は、上記クリッピング領域CPを構
成する各辺からの延長線によって区分けされる領域であ
る。
【0025】すなわち、領域aは、クリッピング始点
(Xcs,Ycs)とされる第1の頂点C1を構成する
各辺の延長線によって囲まれている領域であって、図1
中、クリッピング領域CPの左上に位置されている。
【0026】領域bは、クリッピング領域CPを構成す
る相対向する短辺の延長線によって囲まれてクリッピン
グ領域CPに隣接されている領域であって、図1中、ク
リッピング領域CPの上に位置されている。
【0027】領域cは、第2の頂点C2を構成する各辺
の延長線によって囲まれている領域であって、図1中、
クリッピング領域CPの右上に位置されている。
【0028】領域dは、クリッピング領域CPを構成す
る相対向する長辺の延長線によって囲まれてクリッピン
グ領域CPに隣接されている領域であって、図1中、ク
リッピング領域CPの左に位置されている。
【0029】領域eは、クリッピング領域CPを構成す
る相対向する長辺の延長線によって囲まれてクリッピン
グ領域CPに隣接されている領域であって、図1中、ク
リッピング領域CPの右に位置されている。
【0030】領域fは、第3の頂点C3を構成する各辺
の延長線によって囲まれている領域であって、図1中、
クリッピング領域CPの左下に位置されている。
【0031】領域gは、クリッピング領域CPを構成す
る相対向する短辺の延長線によって囲まれてクリッピン
グ領域CPに隣接されている領域であって、図1中、ク
リッピング領域CPの下に位置されている。
【0032】領域hは、クリッピング終点(Xce,Y
ce)とされる第4の頂点C4を構成する各辺の延長線
によって囲まれている領域であって、図1中、クリッピ
ング領域CPの右下に位置されている。
【0033】図1に示すように構成されたクリッピング
領域CPにおいて、次に示すように始点および終点が指
定された場合、直線が明らかにクリッピング領域CP外
であることを判断できる。すなわち、これにより不必要
な直線描画について座標計算処理を行わなくて済む。
【0034】直線の始点および終点が共に領域a、領域
b、領域cのどこかに存在する場合である(条件
[1])。例えば図2に示すように、始点Qが領域a
に、終点Rが領域bに存在する場合である。
【0035】また、直線の始点及び終点が共に領域a、
領域d、領域fのどこかに存在する場合である(条件
[2])。例えば図3に示すように、始点Qが領域a
に、終点Rが領域fに存在する場合である。
【0036】また、直線の始点及び終点が共に領域c、
領域e、領域hのどこかに存在する場合である(条件
[3])。例えば図4に示すように、始点Qが領域h
に、終点Rが領域eに存在する場合である。
【0037】また、直線の始点及び終点が共に領域f、
領域g、領域hのどこかに存在する場合である(条件
[4])。例えば図5に示すように、始点Qが領域h
に、終点Rが領域fに存在する場合である。
【0038】ここで、上記条件[1]乃至条件[4]
は、座標の関係式によって示すことができる、次の
(5)式乃至(8)式によって条件が満たされる。
【0039】すなわち、条件[1]は、下記の式(5)
によって示すことができる。
【0040】 Ys>YcsかつYe>Ycs ・・・(5) また、条件[2]は、下記の(6)式によって示すこと
ができる。
【0041】 Xs<XcsかつXe<Xcs ・・・(6) また、条件[3]は、下記の(7)式によって示すこと
ができる。
【0042】 Xs>XcsかつXe>Xcs ・・・(7) また、条件[4]は、下記の(8)式によって示すこと
ができる。
【0043】 Ys<YcsかつYe<Ycs ・・・(8) 従来の直線描画処理においては、上記の条件式とされる
(5)式乃至(8)式を満たす始点および終点によって
直線が指定されてた場合、描画座標を計算せずに処理を
終了している。図6は、上記条件式が組み込まれている
座標計算処理を示すフローチャートを示している。
【0044】図6に示すように、ステップS1は、選択
された始点Q(Xs,Ys)、終点R(Xe,Ye)の
入力を示している。また、ステップS2は、クリッピン
グ領域CPが指定されて、そのクリッピング始点(Xc
s,Ycs)とクリッピング終点(Xce,Yce)の
入力を示している。
【0045】そして、上記選択された直線の始点Q(X
s,Ys)および終点R(Xe,Ye)とクリッピング
始点(Xcs,Ycs)およびクリッピング終点(Xc
e,Yce)とが入力された後、ステップS3が実行さ
れる。
【0046】ステップS3では、選択された直線につい
て上記の(5)式乃至(8)式が成り立つか否かを判別
する。ここで、選択された始点Q(Xs,Ys)および
終点R(Xe,Ye)について上記の(5)式乃至
(8)式が成り立たないことを確認した場合、ステップ
S4に進み、描画座標の計算処理を実行する。
【0047】一方、ステップS3において選択された始
点Q(Xs,Ys)および終点R(Xe,Ye)につい
て上記の(5)式乃至(8)式が成り立つことを確認し
た場合、当該座標計算処理をステップS13において終
了する。
【0048】このようにステップS3において、始点Q
(Xs,Ys)および終点R(Xe,Ye)について上
述の条件式によって判断することで、クリッピング領域
CP内に直線の一部または全部が指定された場合にのみ
描画座標の計算処理を実行することができる。
【0049】上述の条件式が成り立たなかった場合のス
テップS4における描画座標の計算処理が実行された
後、ステップS5において始点Q(Xs,Ys)を点
(X,Y)に置き換えて、ステップS6に進む。
【0050】ステップS6では、上記置き換えた点
(X,Y)がクリッピング領域CP外に存在するか否か
を判別する。ここで、点(X,Y)がクリッピング領域
CP外に存在することを確認した場合には、ステップS
7に進み、また、点(X,Y)がクリッピング領域CP
外ではないこと、すなわち、点(X,Y)がクリッピン
グ領域CP内に存在することを確認した場合には、ステ
ップS9に進む。
【0051】ステップS7では、点(X,Y)が終点R
(Xe,Ye)と一致するか否かを判別する。ここで、
点(X,Y)が終点R(Xe,Ye)と一致する場合に
は、当該座標計算処理をステップS13において終了す
る。
【0052】一方、ステップS7における判別の結果、
点(X,Y)が終点R(Xe,Ye)と一致しないこと
を確認した場合、次の点(Xn,Yn)を点(X,Y)
に置き換え、上述したステップS6に進む。ステップS
6では、上記置き換えられた点(X,Y)がクリッピン
グ領域CP外に存在するか否かを判別する。
【0053】例えば、ステップS6,ステップS7,ス
テップS8にかけて実行される処理は、始点Q(Xs,
Ys)から一定区間がクリッピング領域CP外に存在し
ている場合に実行されるものであって、置換された点
(X,Y)がクリッピング領域CP内とされるまで実行
する処理である。
【0054】ステップS6において点(X,Y)がクリ
ッピング領域CP外ではないことを確認した場合、ステ
ップS9において、点(X,Y)は有効な座標として決
定する処理を行う。
【0055】ステップS9の処理の後のステップS10
では、点(X,Y)は、終点R(Xe,Ye)と一致す
るか否かを判別する。ここで、点(X,Y)が終点R
(Xe,Ye)と一致することを確認した場合には、当
該座標計算処理を終了し、点(X,Y)が終点R(X
e,Ye)と一致しないことを確認した場合、ステップ
S11に進む。
【0056】上記ステップS11では、次の点(Xn,
Yn)を点(X,Y)に置き換え、ステップS12に進
む。
【0057】ステップS12では、上記置換された点
(X,Y)がクリッピング領域CP外に存在するか否か
を判別する。ここで、上記置換された点(X,Y)がク
リッピング領域CP外に存在することを確認した場合に
は、上述当該座標計算処理を終了し、上記置換された点
(X,Y)がクリッピング領域CP外に存在する点では
ないことを確認した場合には、上述したステップS9に
進む。ステップS9では、上述したように、点(X,
Y)を有効な座標とする処理を行う。
【0058】従来における座標計算処理は、直線を描画
するために選択された始点Q(Xs,Ys)および終点
R(Xe,Ye)について、ステップS3に示されるよ
うに、上記の(5)式乃至(8)式の条件式によって判
別して、その後に当該始点Q(Xs,Ys)と終点R
(Xe,Ye)との間に存在する各点毎にクリッピング
領域CP内外の何れに存在するかを判別している。
【0059】以下にいくつかの例をあげて具体的に座標
計算処理を説明する。
【0060】図7に示すように、始点Qが領域g内にお
いて選択され、終点Rが領域h内において選択された場
合には、条件式(8)が成り立つので、ステップS3に
おける判別段階で不要な直線描画と判断され、ステップ
S13において描画座標計算処理を終了する。
【0061】また、図8に示すように、始点Qおよび終
点R共にクリッピング領域CP内で選択された場合に
は、ステップS3における判別段階で上記の(5)式乃
至(8)のいずれも成り立たないので、描画座標計算処
理が開始され、始点Qから順次先の座標点が計算され
て、終点Rまで計算された時点で描画座標計算処理を終
了する。
【0062】また、図9に示すように、始点Qが領域e
で選択され、終点Rがクリッピング領域CP内で選択さ
れた場合には、ステップS3における判別段階で上記の
(5)式乃至(8)式のいずれも成り立たないので、始
点Qから順次先の座標点について、終点Rに到るまで描
画座標計算処理が実行される。
【0063】ここで、直線QRの(ア)部分では、クリ
ッピング領域CP外であることからステップS7,ステ
ップS8の座標計算は実行されるが、この(ア)部分の
描画はされない。また、直線QRの(イ)部分では、ク
リッピング領域CP内であることからステップS9から
ステップS12の処理が実行される。直線QRの(イ)
部分の計算された座標は、有効な座標とされ、描画の対
象となる。
【0064】また、図10に示すように、始点Qがクリ
ッピング領域CP内で選択され、終点Rが領域b内で選
択された場合には、(5)式乃至(8)式のいずれも成
り立たないので、始点Qから順次先の座標点について、
終点Rに到るまで描画座標計算が実行される。
【0065】ここで、直線QRの(ア)部分では、クリ
ッピング領域CP内であることからステップS9からス
テップS12の処理が実行される。直線QRの(ア)部
分の計算された座標は、有効な座標とされ、描画の対象
とされる。また、直線QRの(イ)部分では、クリッピ
ング領域CP外であることからステップS7,ステップ
S8の座標計算は実行されるが、この(イ)部分の描画
はされない。
【0066】また、図11に示すように、始点Qおよび
終点Rがともにクリッピング領域CP外において選択さ
れているものの、直線の一部である(イ)部分がクリッ
ピング領域CPに係っている場合、上記の(5)式乃至
(8)式のいずれも満たさないので、描画座標計算処理
が開始され、順次先の点についての座標計算処理が実行
される。
【0067】ここで、直線QRの(ア)部分では、クリ
ッピング領域CP外であることからステップS7,ステ
ップS8の座標計算は行われるが、この(ア)部分の描
画はされない。また、直線QRの(イ)部分では、クリ
ッピング領域CP内であることからステップS9からス
テップS12の処理が実行される。直線QRの(ア)部
分の計算された座標は、有効な座標とされ、描画の対象
とされる。そして、(イ)部分が終了して(ウ)部分に
なると、再び、クリッピング領域CP外となる。
【0068】この状況で直線の描画方向を考えると、
(ウ)部分は二度と座標点がクリッピング領域CP内に
入ってくることはなく、したがって、(イ)部分で行っ
たステップS12で残りの処理は不要としてスキップさ
れて、描画座標計算処理が終了する。
【0069】ところで、図12に示すように、始点Qが
領域bが存在し、かつ終点Rが領域dに存在するように
選択にされた直線QRの全体ががクリッピング領域CP
内に全く係らない場合、当然のことながら描画する必要
はなく、また座標計算処理も行う必要もない。
【0070】しかし、図12に示すような場合では、ス
テップS3における上記の(5)式乃至(8)式のいず
れも成り立たないので、ステップS4以降の処理が実行
されて、順次先の座標点が始点Qから終点Rに向かって
計算がなされてしまう。すなわち、上記図12に示すよ
うな選択がなされると、上記の(5)式乃至(8)式に
より判別するステップS3では、不要な直線描画である
ことは判断できず、ステップS10の段階で終点Rを判
別して各点の座標が無効とされる。
【0071】すなわち、先の図1にあてはめた場合、下
記する表1の条件のときには、与えられた直線が完全に
クリッピング領域外CPで描画しなくてもよい場合であ
ったとしても、座標計算処理が行われ、これにより処理
時間を非効率的に損失してしまうことになる。
【0072】
【表1】
【0073】本発明の実施の形態は、表1の条件[5]
から条件[12]に対しても不要な直線描画が選択され
た場合には座標計算処理を行わずに当該座標計算処理を
終了することを可能にする直線描画処理方法である。こ
れにより、描画すべき直線が完全にクリッピング領域C
P外か否かを早い段階で判断することが可能となり、描
画処理の無駄を小さくし効率を上げることができる。
【0074】本発明の実施の形態とされる直線描画処理
方法は、図13に示すように、上述した直線描画処理方
法の説明に用いた図6に示すフローチャートのステップ
S3の後に新たな処理であるステップS21を付加して
実行するものである。よって、本発明の実施の形態とさ
れる直線描画処理方法についての説明は、ステップS2
1の部分についての説明を加えるのみとする。なおステ
ップS3は、上記した(5)式乃至(8)式によって直
線を判別する判別部分であって、ステップS21は、
(5)式乃至(8)式が成り立つ場合、すなわち、選択
された直線の一部又は全部がクリッピング領域CP内に
存在するとされていた場合に実行される。
【0075】ステップS21は、クリッピング領域CP
の頂点を原点とし、クリッピング領域CPが座標領域の
第4象現に位置するとした際に、描画直線の始点Q(X
s,Ys)もしくは終点R(Xe,Ye)が第1象現に
存在し、他点が第3象現に存在する直線を選択する第1
選択ステップとされる図14に示すステップS22,ス
テップS23,ステップS24,ステップS25および
ステップS26と、クリッピング領域CPの頂点を原点
とし、クリッピング領域CPが座標領域の第4象現に位
置するとした際に、上記描画直線の切片が正である直線
を選択する第2の選択ステップとされる図14に示すス
テップS27およびステップS28と、描画直線が上記
第1の選択ステップおよび上記第2の選択ステップを満
たす場合には、描画演算処理を終了する終了ステップと
されるステップS13とを有している。
【0076】なお、上記ステップS27は、図15に示
すように、ステップS31,ステップS32およびステ
ップS33とを有しており、上記ステップS28は、図
16に示すように、ステップS34,ステップS35お
よびステップS36とを有している。
【0077】以下に具体的な例を用いて、図14乃至図
16に示すフローチャートを説明する。なお、クリッピ
ング領域CPは図17に示すように定義しておく。すな
わち、クリッピング始点(Xcs,Ycs)、クリッピ
ング終点(Xce,Yce)の2点が与えられることで
得られる矩形状のクリッピング領域CPの4点の頂点の
座標を、第1の頂点C1(Xcs,Ycs),第2の頂
点C2(Xce,Ycs),第3の頂点C3(Xcs,Y
ce),第4の頂点C4(Xce,Yce)とする。
【0078】先ず、クリッピング領域の第1の頂点C1
を基準にして、描画直線の始点Qもしくは終点Rが図1
7中の右上領域に位置し、第1の頂点C1を基準にし
て、描画直線の他点が図17中の左下領域に位置する表
1の条件[5]又は条件[6]を満たす直線であって、
かつその直線全体が完全にクリッピング領域CP外にあ
ると判断する場合について説明する。
【0079】なお、上述したように上記クリッピング領
域CPは、対角線を構成するように選択されたクリッピ
ング始点である第1端点とクリッピング終点である第2
端点によってその方形状の領域が決定されるものであ
る。よって、第1端点が第1の頂点C1とされ、第2端
点が第4の頂点C4とされてクリッピング領域CPが形
成された場合、当該第1の頂点C1および第4の頂点C4
を観点とすれば、条件[5]または条件[6]を満たす
直線は、図17中において、描画直線の始点Q若しくは
終点Rが第1端点とされる第1の頂点C1の右かつ第1
端点とされる第1の頂点C1の上に位置し、描画直線の
他点が第1端点とされる第1の頂点C1の左かつ第1端
点とされたこの第1の頂点C1の下に位置する直線とな
る。
【0080】また、クリッピング始点が第2の頂点C2
とされ、クリッピング終点が第3の頂点C3とされてク
リッピング領域CPが形成されている場合、当該第2と
頂点C2および第3の頂点C3を観点とすれば、条件
[5]または条件[6]を満たす直線は、図17中にお
いて、描画直線の始点Q若しくは終点Rが第2端点とさ
れた第3の頂点C3の右かつ第1端点とされた第2の頂
点C2の上に位置し、描画直線の他点が第2端点とされ
た第3の頂点C3の左かつ第1端点とされたの下に位置
する直線となる。
【0081】上記条件[5]を満たす直線については、
具体的には、始点Qが領域bに存在し、終点Rが領域d
に存在している直線QRである。さらに、この直線QR
の下側に第1の頂点C1があれば、直線QR全体が完全
にクリッピング領域CP外にあるといえ、これら条件を
満たす直線QRは、図18(a)に示すようになる。
【0082】図18(b)は、この図18(a)をわか
り易くするために、第1の頂点C1を原点(0,0)と
する座標系に座標変換したものであり、この座標変換に
よって始点Q(Xs,Ys)は、始点Q(Xs−Xc
s,Ys−Ycs)となり、終点R(Xe,Ye)は、
終点R(Xe−Xcs,Ye−Ycs)となる。
【0083】ここで、X1=Xs−Xcs,Y1=Ys−
Ycs,X2=Xe−Xcs,Y2=Ye−Ycsとした
場合、直線QRは、(9)式によって示すことができ
る。
【0084】 Y−Y1=(Y2−Y1)/(X2−X1)×(X−X1) ・・・(9) また、第1の頂点C1(0,0)が直線QRの下側にあ
るためには、(10)式が成り立つことが必要となる。
【0085】 0<(Y2−Y1)/(X2−X1)×(−X1)+Y1 ・・・(10) ここで、 X2−X1<0 ・・・(11) なので、上記の(10)式は(12)式となる。
【0086】 X1×Y2−X2×Y1>0 ・・・(12) そして、X1×Y2<0,X2×Y1<0なので |X1|×|Y2|−|X2|×|Y1|<0 ・・・(13) となる。よって条件[5]が成り立つときにおいて、こ
の条件式(13)が成り立つならば、直線QR全体はク
リッピング領域CP外に存在することになる。よって、
これらを条件とすることで、描画座標計算処理を行こな
うことなく終了することが可能になる。
【0087】また、条件[6]を満たす直線について
は、具体的には、始点Qが領域dに存在し、終点Rが領
域bに存在している直線QRである。さらに、この直線
QRの下側に第1の頂点C1があれば、直線QR全体が
完全にクリッピング領域CP外にあるといえ、これら条
件を満たす直線QRは、図19(a)に示すようにな
る。
【0088】図19(b)は、この図19(a)をわか
り易くするために、第1の頂点C1を原点(0,0)と
する座標系に座標変換したものであり、この座標変換に
よって始点Q(Xs,Ys)は、始点Q(Xs−Xc
s,Ys−Ycs)となり、終点R(Xe,Ye)は、
終点R(Xe−Xcs,Ye−Ycs)となる。
【0089】ここで、X1=Xs−Xcs,Y1=Ys−
Ycs,X2=Xe−Xcs,Y2=Ye−Ycsとした
場合、直線QRは、上記の(9)式によって示すことが
できる。
【0090】また、点C1(0,0)が直線QRの下側
にあるためには、上記の(10)式が成り立つことが必
要となる。
【0091】ここで、 X2−X1>0 ・・・(14) なので、上記の(10)式は(15)式となる。
【0092】 X1×Y2−X2×Y<0 ・・・(15) そして、X1×Y2<0,X2×Y1<0なので |X1|×|Y2|−|X2|×|Y1|>0 ・・・(16) となる。よって条件[6]が成り立つときにおいて、上
記の(16)式が成り立つならば、直線QR全体はクリ
ッピング領域CP外に存在することになる。よって、こ
れらを条件とすることで、描画座標計算処理を行こなう
ことなく終了することが可能になる。
【0093】これらの条件を有したフローチャート内の
判別は、次のような処理によって行われる。
【0094】条件[5]を満たすか否かの判別は、図1
4に示すステップS22内のステップS22において、
1a=Xs−Xcs,Y1a=Ys−Ycs,X2a=
Xe−Xcs,Y2a=Ye−Ycsに各値を置き換え
て行い、X1a>0かつY1a>0かつX2a<0かつY2
a<0を満たした場合に当該条件が満たされたと判断し
てステップS23を実行する。
【0095】また、条件[6]を満たすか否かの判別に
ついては、ステップS22において、X1a=Xs−X
cs,Y1a=Ys−Ycs,X2a=Xe−Xcs,Y
2a=Ye−Ycsに各値を置き換えた後、X1a<0か
つY1a<0かつX2a>0かつY2a>0を満たした場
合に当該条件が満たされたと判断してステップS23を
実行する。
【0096】上記ステップS23では、X1=X1a,Y
1=Y1a,X2=X2a,Y2=Y2aに各値を置き換え、
続いてステップS27内のステップS31においてX1
>X2が成り立つか否かの判別を行う。
【0097】ここで、条件[5]を満たし、かつ直線Q
R全体がクリッピング領域外に存在する場合には、ステ
ップS31において、X1<X2が成り立つと判断するた
め、ステップS32に進む。また、条件[6]を満た
し、かつ直線QR全体がクリッピング領域外に存在する
場合には、ステップS31において、X2<X1が成り立
たないと判断するために、ステップS33に進む。
【0098】ステップS32では、|X1|×|Y2|<
|X2|×|Y1|が成り立つか否かを判別する。ここ
で、条件[5]を満たし、かつ直線QR全体がクリッピ
ングCP領域外に存在する場合には上記の(13)式よ
り|X1|×|Y2|<|X2|×|Y1|が成り立つと判
断することができるために、描画座標の計算処理を行わ
ずにステップS13において座標計算を終了する。
【0099】上記ステップS33では、|X1|×|Y2
|>|X2|×|Y1|が成り立つか否かを判別する。こ
こで、条件[6]を満たし、かつ直線QR全体がクリッ
ピング領域外に存在する場合には上記の(16)式より
|X1|×|Y2|>|X2|×|Y1|が成り立つと判断
することができるために、描画座標の計算処理を行わず
にステップS13において座標計算を終了する。
【0100】なお、ステップS32において|X1|×
|Y2|<|X2|×|Y1|が成り立たたないと判断し
た場合、また、ステップS33において|X1|×|Y2
|>|X2|×|Y1|が成り立たたないと判断した場合
には、直線QRの一部または全部がクリッピング領域C
P内に存在しているので、図13に示すステップS4以
降の描画座標の計算処理を開始する。
【0101】以上のようなフローチャートに従った処理
を行うことで、図18(a)及び図19(a)に示すよ
うに直線QR全体がクリッピング領域CP外に存在する
ときも、例外なく、描画座標の計算処理を実行すること
なく当該座標計算を終了することができるようになる。
【0102】よって、直線描画処理方法により、不必要
な直線描画の座標計算処理を避け、グラフィクスシステ
ムとしての効率を向上することができる。
【0103】以下の説明は、上述と同様な手順によって
他の領域になされた描画直線に関するその処理について
のものである。すなわち、領域bと領域e、または領域
dと領域g、あるいは領域eと領域g、において直線の
始点Q、終点Rを選択した場合である。
【0104】例えば、クリッピング領域CPの第2の頂
点C2を基準にして、描画直線の始点Q若しくは終点R
が図17中の左上領域に位置し、第1の頂点C1を基準
にして、描画直線の他点が図17中の右下領域に位置す
る表1の条件[7]又は条件[8]を満たす直線であっ
て、かつその直線全体が完全にクリッピング領域CP外
にあると判断する場合について説明する。
【0105】なお、クリッピング始点である第1端点が
第1の頂点C1とされ、クリッピング終点である第2端
点が第4の頂点C4とされてクリッピング領域CPが形
成されている場合、当該第1の頂点C1および第4の頂
点C4を観点とすれば、条件[7]または条件[8]を
満たす直線は、図17中において、描画直線の始点Q若
しくは終点Rが第2端点とされる第4の頂点C4の左か
つ第1端点とされる第1の頂点C1の上に位置し、描画
直線の他点が第2端点とされる第4の頂点C4の右かつ
第1端点とされる第1の頂点C1の下に位置する直線と
なる。
【0106】また、上記第1端点が第2の頂点C2とさ
れ、上記第2端点が第3の頂点C3とされてクリッピン
グ領域CPが形成されている場合、当該第2の頂点C2
および第3の頂点を観点とすれば、条件[7]または条
件[8]を満たす直線は、図17中において、描画直線
の始点Q若しくは終点Rが第1端点とされる第2の頂点
2の左かつ第1端点とされる第2の頂点C2の上に位置
し、描画直線の他点が第1端点とされる第2の頂点C2
の右かつ第1端点とされる第2の頂点C2の下に位置す
る直線となる。
【0107】さらに、クリッピング領域CPの第2の頂
点C2をX−Y座標の原点とし、クリッピング領域CP
がX−Y座標領域の第4象現に位置すると置き換えた場
合、始点Qもしくは終点Rが第1象現に存在し、他点が
第3象現に存在するとともに、切片が正である直線QR
を構成することになる。
【0108】上記条件[7]を満たす直線については、
具体的には、始点Qが領域bに存在し、終点Rが領域e
に存在している直線QRである。さらに、この直線QR
の下側に第2の頂点C2があれば、直線QR全体が完全
にクリッピング領域CP外にあるといえ、これら条件を
満たす直線QRは、図20(a)に示すようになる。
【0109】図20(b)は、この図20(a)をわか
り易くするために、第2の頂点C2を原点(0,0)と
する座標系に座標変換したものであり、この座標変換に
よって始点Q(Xs,Ys)は、始点Q(Xs−Xc
e,Ys−Ycs)となり、終点R(Xe,Ye)は、
終点R(Xe−Xce,Ye−Ycs)となる。
【0110】ここで、X1=Xs−Xce,Y1=Ys−
Ycs,X2=Xe−Xce,Y2=Ye−Ycsとした
場合、直線QRは、上記の(9)式によって示すことが
できる。
【0111】また、第2の頂点C2(0,0)が直線Q
Rの下側にあるためには、上記の(10)式が成り立つ
ことが必要となる。
【0112】ここで、上記の(14)式と同じX2−X1
>0であり、上記の(10)式は上記の(15)式にな
る。
【0113】そして、X1×Y2>0,X2×Y1>0なの
で、上記の(13)式と同じになる。
【0114】よって、条件[7]が成り立つときにおい
て、上記の(13)式が成り立つならば、直線QR全体
はクリッピング領域外に存在することになる。よって、
これらを条件とすることで、描画座標計算処理を行こな
うことなく終了することが可能になる。
【0115】また、条件[8]を満たす直線について
は、具体的には、始点Qが領域eに存在し、終点Rが領
域bに存在している直線QRである。さらに、この直線
QRの下側に第2の頂点C2があれば、直線QR全体が
完全にクリッピング領域CP外にあるといえ、これら条
件を満たす直線QRは、図21(a)に示すようにな
る。
【0116】図21(b)は、この図21(a)をわか
り易くするために、第2の頂点C2を原点(0,0)と
する座標系に座標変換したものであり、この座標変換に
よって始点Q(Xs,Ys)は、始点Q(Xs−Xc
e,Ys−Ycs)となり、終点R(Xe,Ye)は、
終点R(Xe−Xce,Ye−Ycs)となる。
【0117】ここで、X1=Xs−Xce,Y1=Ys−
Ycs,X2=Xe−Xce,Y2=Ye−Ycsとした
場合、直線QRは、上記の(9)式によって示すことが
できる。
【0118】また、第2の頂点C2(0,0)が直線Q
Rの下側にあるためには、上記の(10)式が成り立つ
ことが必要となる。
【0119】ここで、上記の(11)式と同じX2−X1
<0であり、上記の(10)式は上記の(12)式にな
る。
【0120】そして、X1×Y2>0,X2×Y1>0なの
で、上記の(16)式と同じになる。
【0121】よって、条件[8]が成り立つときにおい
て、上記の(16)が成り立つならば、直線QR全体は
クリッピング領域CP外に存在することになる。よっ
て、これらを条件とすることで、描画座標計算処理を行
こなうことなく終了することが可能になる。
【0122】これらの条件を有したフローチャート内の
判別は、次のような処理によって行われる。
【0123】条件[7]を満たすか否かの判別は、図1
4に示すステップS21内のステップS22において、
1b=Xs−Xce,Y1b=Ys−Ycs,X2b=
Xe−Xce,Y2b=Ye−Ycsに各値を置き換え
て行い、X1b<0かつY1b>0かつX2b>0かつY2
b<0を満たした場合に当該条件が満たされたと判断し
てステップS24を実行する。
【0124】また、条件[8]を満たすか否かの判別に
ついては、ステップS22において、X1b=Xs−X
ce,Y1b=Ys−Ycs,X2b=Xe−Xce,Y
2b=Ye−Ycsに各値を置き換えた後、X1b>0か
つY1b<0かつX2b<0かつY2b>0を満たした場
合に当該条件が満たされたと判断してステップS24を
実行する。
【0125】上記ステップS24では、図16に示すよ
うに、X1=X1b,Y1=Y1b,X2=X2b,Y2=Y2
bに各値を置き換え、続いてステップS28内のステッ
プS34においてX1<X2が成り立つか否かの判別を行
う。
【0126】ここで、条件[7]を満たし、かつ直線Q
R全体がクリッピング領域CP外に存在する場合には、
ステップS34において、X1<X2が成り立つと判断す
るため、ステップS35に進む。また、条件[8]を満
たし、かつ直線QR全体がクリッピング領域CP外に存
在する場合には、ステップS34において、X1<X2
成り立たないと判断するため、ステップS36に進む。
【0127】ステップS35では、|X1|×|Y2|<
|X2|×|Y1|が成り立つか否かを判別する。ここ
で、条件[7]を満たし、かつ直線QR全体がクリッピ
ング領域CP外に存在する場合には上記の(13)式よ
り|X1|×|Y2|<|X2|×|Y1|が成り立つと判
断することができるために、描画座標の計算処理を行わ
ずにステップS13において座標計算を終了する。
【0128】上記ステップS36では、|X1|×|Y2
|>|X2|×|Y1|が成り立つか否かを判別する。こ
こで、条件[8]を満たし、かつ直線QR全体がクリッ
ピング領域CP外に存在する場合には上記の(16)式
より|X1|×|Y2|>|X2|×|Y1|が成り立つと
判断することができるために、描画座標の計算処理を行
わずにステップS13において座標計算を終了する。
【0129】以上のようなフローチャートに従った処理
を行うことで、図20(a)及び図21(a)に示すよ
うに直線QR全体がクリッピング領域CP外に存在する
ときも、例外なく、描画座標の計算処理を実行すること
なく当該座標計算を終了することができるようになる。
【0130】また、クリッピング領域CPの第3の頂点
3を基準にして、描画直線の始点Q若しくは終点Rが
図17中の左上領域に位置し、第3の頂点C3を基準に
して、描画直線の他点が図17中の右下領域に位置する
表1の条件[9]又は条件[10]を満たす直線であっ
て、かつその直線全体が完全にクリッピング領域CP外
にあると判断する場合について説明する。
【0131】なお、上記第1端点が第1の頂点C1とさ
れ、上記第2端点が第4の頂点C4とされてクリッピン
グ領域CPが形成されている場合、当該第1の頂点C1
および第4の頂点C4を観点とすれば、条件[9]また
は条件[10]を満たす直線は、図17中において、描
画直線の始点Q若しくは終点Rが第1端点とされる第1
の頂点C1の左かつ第2端点とされる第4の頂点C4の上
に位置し、描画直線の他点が第1端点とされる第1の頂
点C1の右かつ第2端点とされる第4の頂点C4の下に位
置する直線となる。
【0132】また、上記第1端点が第2の頂点C2とさ
れ、上記第2端点が第3の頂点C3とされてクリッピン
グ領域CPが形成されている場合、当該第2の頂点C2
および第3の頂点C3を観点とすれば、条件[9]また
は条件[10]を満たす直線は、図17中において、描
画直線の始点Q若しくは終点Rが第2端点とされる第3
の頂点C3の左かつ第2端点とされる第3の頂点C3の上
に位置し、描画直線の他点が第2端点とされる第3の頂
点C3の右かつ第2端点とされる第3の頂点C3の下に位
置する直線となる。
【0133】さらに、クリッピング領域CPの第3の頂
点C3をX−Y座標の原点とし、クリッピング領域CP
がX−Y座標領域の第4象現に位置すると置き換えた場
合、始点Qもしくは終点Rが第1象現に存在し、他点が
第3象現に存在するとともに、切片が正である直線QR
を構成する。
【0134】上記条件[9]を満たす直線については、
具体的には、始点Qが領域dに存在し、終点Rが領域g
に存在している直線QRである。さらに、この直線QR
の上側に第3の頂点C3があれば、直線QR全体が完全
にクリッピング領域CP外にあるといえ、これら条件を
満たす直線QRは、図22(a)に示すようになる。
【0135】図22(b)は、この図22(a)をわか
り易くするために、第3の頂点C3を原点(0,0)と
する座標系に座標変換したものであり、この座標変換に
よって始点Q(Xs,Ys)は、始点Q(Xs−Xc
s,Ys−Yce)となり、終点R(Xe,Ye)は、
終点R(Xe−Xcs,Ye−Yce)となる。
【0136】ここで、X1=Xs−Xcs,Y1=Ys−
Yce,X2=Xe−Xcs,Y2=Ye−Yceとした
場合、直線QRは、上記の(9)式によって示すことが
できる。
【0137】また、第3の頂点C3(0,0)が直線Q
Rの上側にあるためには、(17)式が成り立つことが
必要となる。
【0138】 0>(Y2−Y1)/(X2−X1)×(−X1)+Y1 ・・・(17) ここで、上記の(11)式と同じX2−X1<0であり、
上記の(17)式は上記の(12)式になる。
【0139】そして、X1×Y2>0,X2×Y1>0なの
で、上記の(16)式と同じになる。
【0140】よって、条件[9]が成り立つときにおい
て、上記の(16)式が成り立つならば、直線QR全体
はクリッピング領域CP外に存在することになる。よっ
て、これらを条件とすることで、描画座標計算処理を行
こなうことなく終了することが可能になる。
【0141】また、条件[10]を満たす直線について
は、具体的には、始点Qが領域gに存在し、終点Rが領
域dに存在している直線QRである。さらに、この直線
QRの上側に第3の頂点C3があれば、直線QR全体が
完全にクリッピング領域CP外にあるといえ、これら条
件を満たす直線QRは、図23(a)に示すようにな
る。
【0142】図23(b)は、この図23(a)をわか
り易くするために、第3の頂点C3を原点(0,0)と
する座標系に座標変換したものであり、この座標変換に
よって始点Q(Xs,Ys)は、始点Q(Xs−Xc
s,Ys−Yce)となり、終点R(Xe,Ye)は、
終点R(Xe−Xcs,Ye−Yce)となる。
【0143】ここで、X1=Xs−Xcs,Y1=Ys−
Yce,X2=Xe−Xcs,Y2=Ye−Yceとした
場合、直線QRは、上記の(9)式によって示すことが
できる。
【0144】また、第3の頂点C3(0,0)が直線Q
Rの上側にあるためには、上記の(17)式が成り立つ
ことが必要となる。
【0145】ここで、上記の(11)式と同じX2−X1
<0であり、上記の(17)式は上記(11) 式にな
る。
【0146】そして、X1×Y2>0,X2×Y1>0なの
で、上記の(13)式と同じになる。
【0147】よって、条件[10]が成り立つときにお
いて、上記の(13)式が成り立つならば、直線QR全
体はクリッピング領域外に存在することになる。よっ
て、これらを条件とすることで、描画座標計算処理を行
こなうことなく終了することが可能になる。
【0148】これらの条件を有したフローチャート内の
判別は、次のような処理によって行われる。
【0149】条件[9]を満たすか否かの判別は、図1
4に示すステップS21内のステップS22において、
1c=Xs−Xcs,Y1c=Ys−Yce,X2c=
Xe−Xcs,Y2c=Ye−Yceに各値を置き換え
て行い、X1c<0かつY1c>0かつX2c>0かつY2
c<0を満たした場合に当該条件が満たされたと判断し
てステップS25を実行する。
【0150】また、条件[10]を満たすか否かの判別
については、ステップS22において、X1c=Xs−
Xcs,Y1c=Ys−Yce,X2c=Xe−Xcs,
2c=Ye−Yceに各値を置き換えた後、X1c>0
かつY1c<0かつX2c<0かつY2c>0を満たした
場合に当該条件が満たされたと判断してステップS25
を実行する。
【0151】上記ステップS25では、図15に示すよ
うに、X1=X1c,Y1=Y1c,X 2=X2c,Y2=Y2
cに各値を置き換え、続いてステップS27内のステッ
プS31においてX1>X2が成り立つか否かの判別を行
う。
【0152】ここで、条件[9]を満たし、かつ直線Q
R全体がクリッピング領域CP外に存在する場合には、
ステップS31において、X1>X2が成り立たたないと
判断するため、ステップS33に進む。また、条件[1
0]を満たし、かつ直線QR全体がクリッピング領域C
P外に存在する場合には、ステップS31において、X
1>X2が成り立つと判断するため、ステップS32に進
む。
【0153】ステップS33では、|X1|×|Y2|>
|X2|×|Y1|が成り立つか否かを判別する。ここ
で、条件[9]を満たし、かつ直線QR全体がクリッピ
ング領域CP外に存在する場合には上記の(13)式よ
り|X1|×|Y2|>|X2|×|Y1|が成り立つと判
断することができるために、描画座標の計算処理が行わ
ずにステップS13において座標計算を終了する。
【0154】上記ステップS32では、|X1|×|Y2
|<|X2|×|Y1|が成り立つか否かを判別する。こ
こで、条件[10]を満たし、かつ直線QR全体がクリ
ッピング領域CP外に存在する場合には上記の(16)
式より|X1|×|Y2|<|X2|×|Y1|が成り立つ
と判断することができるてめに、描画座標の計算処理が
行わずにステップS13において座標計算を終了する。
【0155】以上のようなフローチャートに従った処理
を行うことで、図22(a)及び図23(a)に示すよ
うに直線QR全体がクリッピング領域CP外に存在する
ときも、例外なく、描画座標の計算処理を実行すること
なく当該座標計算を終了することができるようになる。
【0156】また、クリッピング領域CPの第4の頂点
4を基準にして、描画直線の始点Q若しくは終点Rが
図17中の右上領域に位置し、第4の頂点C4を基準に
して、描画直線の他点が図17中の左下領域に位置する
表1の条件[11]又は条件[12]を満たす直線であ
って、かつその直線全体が完全にクリッピング領域CP
外にあると判断する場合について説明する。
【0157】なお、上記第1端点が第1の頂点C1とさ
れ、上記第2端点が第4の頂点C4とされてクリッピン
グ領域CPが形成されている場合、当該第1の頂点C1
および第4の頂点C4を観点とすれば、条件[11]ま
たは条件[12]を満たす直線は、図17中において、
描画直線の始点Q若しくは終点Rが第2端点とされる第
4の頂点C4の右かつ第2端点とされる第4の頂点C4
上に位置し、描画直線の他点が第2端点とされる第4の
頂点C4の左かつ第2端点とされる第4の頂点C4の下に
位置する直線となる。
【0158】また、上記第1端点が第2の頂点C2とさ
れ、上記第2端点が第3の頂点C3とされてクリッピン
グ領域CPが形成されている場合、当該第2の頂点C2
および第3の頂点C3を観点とすれば、条件[11]ま
たは条件[12]を満たす直線は、図17中において、
描画直線の始点Q若しくは終点Rが第1端点とされる第
2の頂点C2の右かつ第2端点とされる第3の頂点C3
上に位置し、描画直線の他点が第1端点とされる第2の
頂点C2の左かつ第2端点とされる第3の頂点C3の下に
位置する直線となる。
【0159】さらに、クリッピング領域CPの第4の頂
点C4をX−Y座標の原点とし、クリッピング領域CP
がX−Y座標領域の第4象現に位置すると置き換えた場
合、始点Qもしくは終点Rが第1象現に存在し、他点が
第3象現に存在するとともに、切片が正である直線QR
を構成する。
【0160】上記条件[11]を満たす直線について
は、具体的には、始点Qが領域eに存在し、終点Rが領
域gに存在している直線QRである。さらに、この直線
QRの上側に第4の頂点C4があれば、直線QR全体が
完全にクリッピング領域CP外にあるといえ、これら条
件を満たす直線QRは、図24(a)に示すようにな
る。
【0161】図24(b)は、この図24(a)をわか
り易くするために、第4の頂点C4を原点(0,0)と
する座標系に座標変換したものであり、この座標変換に
よって始点Q(Xs,Ys)は、始点Q(Xs−Xc
e,Ys−Yce)となり、終点R(Xe,Ye)は、
終点R(Xe−Xce,Ye−Yce)となる。
【0162】ここで、X1=Xs−Xce,Y1=Ys−
Yce,X2=Xe−Xce,Y2=Ye−Yceとした
場合、直線QRは、上記の(9)式によって示すことが
できる。
【0163】また、第4の頂点C4(0,0)が直線Q
Rの上側にあるためには、上記の(17)式が成り立つ
ことが必要となる。
【0164】ここで、上記の(11)式と同じX2−X1
<0であり、上記の(17)式は上記の(15)式にな
る。
【0165】そして、X1×Y2<0,X2×Y1<0なの
で、上記の(16)式と同じになる。
【0166】よって、条件[11]が成り立つときにお
いて、上記の(16)式が成り立つならば、直線QR全
体はクリッピング領域外に存在することになる。よっ
て、これらを条件とすることで、描画座標計算処理を行
こなうことなく終了することが可能になる。
【0167】また、条件[12]を満たす直線について
は、具体的には、始点Qが領域gに存在し、終点Rが領
域eに存在している直線である。さらに、この直線QR
の上側に第4の頂点C4があれば、直線QR全体が完全
にクリッピング領域CP外にあるといえ、これら条件を
満たす直線QRは、図25(a)に示すようになる。
【0168】図25(b)は、この図25(a)をわか
り易くするために、第4の頂点C4を原点(0,0)と
する座標系に座標変換したものであり、この座標変換に
よって始点Q(Xs,Ys)は、始点Q(Xs−Xc
e,Ys−Yce)となり、終点R(Xe,Ye)は、
終点R(Xe−Xce,Ye−Yce)となる。
【0169】ここで、X1=Xs−Xce,Y1=Ys−
Yce,X2=Xe−Xce,Y2=Ye−Yceとした
場合、直線QRは、上記の(9)式によって示すことが
できる。
【0170】また、第4の頂点C4(0,0)が直線Q
Rの上側にあるためには、上記の(17)式が成り立つ
ことが必要となる。
【0171】ここで、上記の(14)式と同じX2−X1
>0なので、上記の(17)式は上記の(12)式にな
る。
【0172】そして、X1×Y2<0,X2×Y1<0なの
で、上記の(13)式と同じになる。
【0173】よって、条件[12]が成り立つときにお
いて、上記の(13)式が成り立つならば、直線QR全
体はクリッピング領域CP外に存在することになる。よ
って、これらを条件とすることで、描画座標計算処理を
行こなうことなく終了することが可能になる。
【0174】これらの条件を有したフローチャート内の
判別は、次のような処理によって行われる。
【0175】条件[11]を満たすか否かの判別は、図
14に示すステップS21内のステップS22におい
て、X1d=Xs−Xce,Y1d=Ys−Yce,X2
d=Xe−Xce,Y2d=Ye−Yceに各値を置き
換えて行い、X1d>0かつY1d>0かつX2d<0か
つY2d<0を満たした場合に当該条件が満たされたと
判断してステップS26を実行する。
【0176】また、条件[12]を満たすか否かの判別
については、ステップS22において、X1d=Xs−
Xce,Y1d=Ys−Yce,X2d=Xe−Xce,
2d=Ye−Yceに各値を置き換えた後、X1d<0
かつY1d<0かつX2d>0かつY2d>0を満たした
場合に当該条件が満たされたと判断してステップS26
を実行する。
【0177】ステップS26では、図16に示すよう
に、X1=X1d,Y1=Y1d,X2=X2d,Y2=Y2
に各値を置き換え、続いてステップS28内のステップ
S34においてX1<X2が成り立つか否かの判別を行
う。
【0178】ここで、条件[11]を満たし、かつ直線
QR全体がクリッピング領域CP外に存在する場合に
は、ステップS34において、X1<X2が成り立たたな
いと判断するため、ステップS36に進む。また、条件
[12]を満たし、かつ直線QR全体がクリッピング領
域CP外に存在する場合には、ステップS34におい
て、X1<X2が成り立つと判断するため、ステップS3
5に進む。
【0179】ステップS36では、|X1|×|Y2|>
|X2|×|Y1|が成り立つか否かを判別する。ここ
で、条件[11]を満たし、かつ直線QR全体がクリッ
ピング領域CP外に存在する場合には上記の(16)式
より|X1|×|Y2|>|X2|×|Y1|が成り立つと
判断することができるために、描画座標の計算処理を行
わずにステップS13において座標計算を終了する。
【0180】上記ステップS35では、|X1|×|Y2
|<|X2|×|Y1|が成り立つか否かを判別する。こ
こで、条件[12]を満たし、かつ直線QR全体がクリ
ッピング領域CP外に存在する場合には上記の(13)
式より|X1|×|Y2|<|X2|×|Y1|が成り立つ
と判断することができるために、描画座標の計算処理を
行わずにステップS13において座標計算を終了する。
【0181】以上のようなフローチャートに従った処理
を行うことで、図24(a)及び図25(a)に示すよ
うに直線QR全体がクリッピング領域CP外に存在する
ときも、例外なく、描画座標の計算処理を実行すること
なく当該座標計算を終了することができるようになる。
【0182】よって、本発明の実施の形態として示した
直線描画処理方法は、表1に示した条件[5]乃至条件
[12]にあてはまる描画直線であっても、描画すべき
直線がクリッピング領域CP外か否かを確実に判別する
ことができる。
【0183】これにより、直線描画処理方法は、描画処
理の無駄を小さくし効率を上げることができる。
【0184】以上のような描画処理方法は、図26に示
すコンピュータ10によって実行可能とすることができ
る。
【0185】コンピュータ10は、入力装置11と、中
央処理装置12と、記憶装置13と、グラフィックアク
セラレータ14と、グラフック用メモリ18と、表示装
置19とから構成される。上記入力装置は、例えば、当
該コンピュータ10へのデータ等の入力部であって、キ
ーボードやマウスである。
【0186】上記中央処理装置12は、例えば、CPU
であって、当該コンピュータ10の有する各回路等を制
御する。
【0187】上記記憶装置13は、メモリ、ハードディ
スク等であって、各種データが記憶されている。
【0188】上記グラフィックアクセラレータ14は、
グラフィック用メモリ18に出力する画像データを発生
させる部分である。このグラフィックアクセラレータ1
4は、初期値設定部15と、前処理部16と、座標値発
生部17とから構成されている。
【0189】上記初期値設定部15は、前処理部16で
処理を開始する前の各種初期設定を行う部分であって、
例えばレジスタ等によって構成される。
【0190】上記前処理部16は、画像処理を行う部分
であって、上記図13乃至図16に示すフローチャート
に従って描画直線についての処理を行う。この処理によ
って、前処理部16は、選択された直線とクリッピング
領域CPとの関係を判別して、クリッピング領域CP内
に属して描画が有効とされる直線の座標値を発生させ
る。
【0191】上記座標値発生部17は、上記前処理部1
6で有効とされた直線の座標、すなわちクリッピング領
域CP内に入っている直線の座標部分に基づいて、グラ
フィック用メモリ18に有効とされる部分への画像デー
タ、例えばグラフィック用メモリのアドレスや色のデー
タを発生させる。
【0192】このようにグラフィックアクセラレータ1
4は、上述した直線描画処理によって有効とされる画像
データを発生させる。
【0193】上記グラフィック用メモリ18は、表示装
置19にその画像データを表示する。表示装置19上で
は、例えば、クリッピング領域CP外で選択された直線
はクリッッピングされて有効とされたクリッピング領域
CP内にのみ直線等が表示される。
【0194】よって、コンピュータ10は、図13乃至
図16に示すフローチャートに従った直線描画処理を行
うことで、直線QR全体がクリッピング領域CP外に存
在するときも、例外なく、描画座標の計算処理を実行す
ることなく当該座標計算を終了することができるように
なる。
【0195】これにより、コンピュータ10は、不必要
な直線描画の座標計算処理を避け、グラフィクスシステ
ムとしての効率を向上させることができる。
【0196】例えば、グラフィックシステムにおいて、
ウィンドウ(Window)と呼ばれる矩形領域を設定
して描画を行う応用例は多数あり、例えば、CAD(Co
mputer Aided Design)、CAE(Computer Aided Engi
neering)やフライトシミュレータおよびドライブシミ
ュレータ等のシュミレータなどがあるが、本発明の描画
処理方法や描画処理装置をこれらシステムに適用させて
組み入れることでグラフィクス性能、さらには当該シス
テム性能を向上させることができる。
【0197】
【発明の効果】本発明に係る描画処理方法は、クリッピ
ング領域の頂点を原点とし、クリッピング領域が座標領
域の第4象現に位置するとした際に、描画直線の始点も
しくは終点が第1象現に存在し、他点が第3象現に存在
する直線を選択する第1選択ステップと、クリッピング
領域の頂点を原点とし、クリッピング領域が座標領域の
第4象現に位置するとした際に、描画直線の切片が正で
ある直線を選択する第2の選択ステップと、描画直線が
第1の選択ステップおよび第2の選択ステップを満たす
場合には、描画演算処理を終了する終了ステップとを有
することで、座標領域の第4象現にクリッピング領域が
位置するとした際に、描画直線の始点もしくは終点が第
1象現に存在し、かつ他点が第3象現に存在する直線で
あって、切片が正である描画直線が選択された場合に、
描画演算処理を終了することができる。
【0198】これにより、描画処理方法は、選択された
直線全体がクリッピング領域外に存在するとき、例外な
く、描画座標の計算処理を実行することなく当該座標計
算を終了することができる。すなわち、描画処理方法
は、不必要な直線描画の座標計算処理を省くことができ
るようになる。
【0199】また、本発明に係る描画処理装置は、任意
に選択された方形のクリッピング領域の頂点を原点と
し、クリッピング領域が座標領域の第4象現に位置する
とした際に、描画直線の始点もしくは終点が第1象現に
存在し、他点が第3象現に存在する直線を選択する第1
選択ステップと、クリッピング領域の頂点を原点とし、
クリッピング領域が座標領域の第4象現に位置するとし
た際に、描画直線の切片が正である直線を選択する第2
の選択ステップと、描画直線が第1の選択ステップおよ
び第2の選択ステップを満たす場合には、描画演算処理
を終了する終了ステップとを有することで、座標領域の
第4象現にクリッピング領域が位置するとした際に、描
画直線の始点もしくは終点が第1象現に存在し、かつ他
点が第3象現に存在する直線であって、切片が正である
描画直線が選択された場合に、描画演算処理を終了する
ことができる。
【0200】これにより、描画処理装置は、選択された
直線全体がクリッピング領域外に存在するとき、例外な
く、描画座標の計算処理を実行することなく当該座標計
算を終了することができる。すなわち、描画処理装置
は、不必要な直線描画の座標計算処理を省くことができ
るようになる。
【図面の簡単な説明】
【図1】本発明に係る描画処理方法の説明に用いた図で
あって、クリッピング領域と、このクリッピング領域を
中心として構成される領域を示す図である。
【図2】従来の描画処理方法によって描画するか否かが
判別できる描画直線であって、領域aから領域bにかけ
て選択された描画直線を示す図である。
【図3】従来の描画処理方法によって描画するか否かが
判別できる描画直線であって、領域aから領域fにかけ
て選択された描画直線を示す図である。
【図4】従来の描画処理方法によって描画するか否かが
判別できる描画直線であって、領域hから領域eにかけ
て選択された描画直線を示す図である。
【図5】従来の描画処理方法によって描画するか否かが
判別できる描画直線であって、領域hから領域fにかけ
て選択された描画直線を示す図である。
【図6】本発明の実施の形態とされる直線描画処理方法
の説明のために用いた描画座標の計算処理手順等を示す
フローチャートである。
【図7】上記フローチャートによって有効とされる描画
部分無しと判断される描画直線であって、領域gから領
域hにかけて選択された描画直線の示す図である。
【図8】上記フローチャートによって有効とされる描画
部分有りと判断される描画直線であって、クリッピング
領域CPにおいて選択された描画直線の示す図である。
【図9】上記フローチャートによって有効とされる描画
部分有りと判断される描画直線であって、領域eからク
リッピング領域CPにかけて選択された描画直線の示す
図である。
【図10】上記フローチャートによって有効とされる描
画部分有りと判断される描画直線であって、クリッピン
グ領域CPから領域bにかけて選択された描画直線の示
す図である。
【図11】上記フローチャートによって有効とされる描
画部分有りと判断される描画直線であって、領域eから
クリッピング領域CPを介して領域gにかけて選択され
た描画直線の示す図である。
【図12】上記フローチャートによって有効とされる描
画部分有りと判断されてしまう描画直線であって、領域
bから領域dにかけて選択された描画直線の示す図であ
る。
【図13】本発明の実施の形態である直線描画処理方法
の処理手順を示すフローチャート図である。
【図14】本発明の実施の形態である直線描画処理方法
のステップS21の詳細を示す部分であって、描画直線
判別部の処理手順を示すフローチャートである。
【図15】上記描画直線判別部のステップS23,ステ
ップS25およびステップS27の処理内容を示すフロ
ーチャートである。
【図16】上記描画直線判別部のステップS24,ステ
ップS26およびステップS28の処理内容を示すフロ
ーチャートである。
【図17】本発明の実施の形態である直線描画処理方法
を説明するために用いた図であって、詳しくは、第1の
頂点C1,第2の頂点C2,第3の頂点C3および第4の
頂点C4によって定義されたクリッピング領域CPを示
す図である。
【図18】本発明の実施の形態とされる直線描画方法に
よって有効とされる描画部分無しと判断される描画直線
を示すものであって、始点Qが領域bに存在し、終点R
が領域dに存在して、かつ第1の頂点C1の上側に位置
される描画直線を示す図である。
【図19】本発明の実施の形態とされる直線描画方法に
よって有効とされる描画部分無しと判断される描画直線
を示すものであって、始点Qが領域dに存在し、終点R
が領域bに存在して、かつ第1の頂点C1の上側に位置
される描画直線を示す図である。
【図20】本発明の実施の形態とされる直線描画方法に
よって有効とされる描画部分無しと判断される描画直線
を示すものであって、始点Qが領域bに存在し、終点R
が領域eに存在して、かつ第2の頂点C2の上側に位置
される描画直線を示す図である。
【図21】本発明の実施の形態とされる直線描画方法に
よって有効とされる描画部分無しと判断される描画直線
を示すものであって、始点Qが領域eに存在し、終点R
が領域bに存在して、かつ第2の頂点C2の上側に位置
される描画直線を示す図である。
【図22】本発明の実施の形態とされる直線描画方法に
よって有効とされる描画部分無しと判断される描画直線
を示すものであって、始点Qが領域dに存在し、終点R
が領域fに存在して、かつ第3の頂点C3の上側に位置
される描画直線を示す図である。
【図23】本発明の実施の形態とされる直線描画方法に
よって有効とされる描画部分無しと判断される描画直線
を示すものであって、始点Qが領域fに存在し、終点R
が領域dに存在して、かつ第3の頂点C3の上側に位置
される描画直線を示す図である。
【図24】本発明の実施の形態とされる直線描画方法に
よって有効とされる描画部分無しと判断される描画直線
を示すものであって、始点Qが領域eに存在し、終点R
が領域gに存在して、かつ第4の頂点C4の上側に位置
される描画直線を示す図である。
【図25】本発明の実施の形態とされる直線描画方法に
よって有効とされる描画部分無しと判断される描画直線
を示すものであって、始点Qが領域gに存在し、終点R
が領域eに存在して、かつ第4の頂点C4の上側に位置
される描画直線を示す図である。
【図26】本発明の実施の形態となるコンピュータの構
成を示す回路ブロック図である。
【符号の説明】 10 コンピュータ、16 前処理部

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】 クリッピング領域の頂点を原点とし、ク
    リッピング領域が座標領域の第4象現に位置するとした
    際に、描画直線の始点もしくは終点が第1象現に存在
    し、他点が第3象現に存在する直線を選択する第1選択
    ステップと、 クリッピング領域の頂点を原点とし、クリッピング領域
    が座標領域の第4象現に位置するとした際に、上記描画
    直線の切片が正である直線を選択する第2の選択ステッ
    プと、 描画直線が上記第1の選択ステップおよび上記第2の選
    択ステップを満たす場合には、描画演算処理を終了する
    終了ステップとを有することを特徴とする描画処理方
    法。
  2. 【請求項2】 クリッピング領域の第1の頂点を基準に
    して、描画直線の始点若しくは終点が右上領域に位置
    し、第1の頂点を基準にして、描画直線の他点が左下領
    域に位置する直線を選択する第3選択ステップと、 クリッピング領域の第2の頂点を基準にして、描画直線
    の始点若しくは終点が左上領域に位置し、第2の頂点を
    基準にして、描画直線の他点が右下領域に位置する直線
    を選択する第4選択ステップと、 クリッピング領域の第3の頂点を基準にして、描画直線
    の始点若しくは終点が左上領域に位置し、第3の頂点を
    基準にして、描画直線の他点が右下領域に位置する直線
    を選択する第5選択ステップと、 クリッピング領域の第4の頂点を基準にして、描画直線
    の始点若しくは終点が右上領域に位置し、第4の頂点を
    基準にして、描画直線の他点が左下領域に位置する直線
    を選択する第6選択ステップとをさらに有することを特
    徴とする請求項1記載の描画処理方法。
  3. 【請求項3】 上記第3選択ステップは、描画直線の始
    点若しくは終点がクリッピング領域における対角線を構
    成する第1端点の右かつクリッピング領域における対角
    線を構成する第1端点の上に位置し、描画直線の他点が
    クリッピング領域における対角線を構成する第1端点の
    左かつクリッピング領域における対角線を構成する第1
    端点の下に位置する直線を選択し、 上記第4選択ステップは、描画直線の始点若しくは終点
    がクリッピング領域における対角線を構成する第2端点
    の左かつクリッピング領域における対角線を構成する第
    1端点の上に位置し、描画直線の他点がクリッピング領
    域における対角線を構成する第2端点の右かつクリッピ
    ング領域における対角線を構成する第1端点の下に位置
    する直線を選択し、 上記第5選択ステップは、描画直線の始点若しくは終点
    がクリッピング領域における対角線を構成する第1端点
    の左かつクリッピング領域における対角線を構成する第
    2端点の上に位置し、描画直線の他点がクリッピング領
    域における対角線を構成する第1端点の右かつクリッピ
    ング領域における対角線を構成する第2端点の下に位置
    する直線を選択し、 上記第6選択ステップは、描画直線の始点若しくは終点
    がクリッピング領域における対角線を構成する第2端点
    の右かつクリッピング領域における対角線を構成する第
    2端点の上に位置し、描画直線の他点がクリッピング領
    域における対角線を構成する第2端点の左かつクリッピ
    ング領域における対角線を構成する第2端点の下に位置
    する直線を選択することを特徴とする請求項2記載の描
    画処理方法。
  4. 【請求項4】 上記第3選択ステップは、描画直線の始
    点若しくは終点がクリッピング領域における対角線を構
    成する第2端点の右かつクリッピング領域における対角
    線を構成する第1端点の上に位置し、描画直線の他点が
    クリッピング領域における対角線を構成する第2端点の
    左かつクリッピング領域における対角線を構成する第1
    端点の下に位置する直線を選択し、 上記第4選択ステップは、描画直線の始点若しくは終点
    がクリッピング領域における対角線を構成する第1端点
    の左かつクリッピング領域における対角線を構成する第
    1端点の上に位置し、描画直線の他点がクリッピング領
    域における対角線を構成する第1端点の右かつクリッピ
    ング領域における対角線を構成する第1端点の下に位置
    する直線を選択し、 上記第5選択ステップは、描画直線の始点若しくは終点
    がクリッピング領域における対角線を構成する第2端点
    の左かつクリッピング領域における対角線を構成する第
    2端点の上に位置し、描画直線の他点がクリッピング領
    域における対角線を構成する第2端点の右かつクリッピ
    ング領域における対角線を構成する第2端点の下に位置
    する直線を選択し、 上記第6選択ステップは、描画直線の始点若しくは終点
    がクリッピング領域における対角線を構成する第1端点
    の右かつクリッピング領域における対角線を構成する第
    2端点の上に位置し、描画直線の他点がクリッピング領
    域における対角線を構成する第1端点の左かつクリッピ
    ング領域における対角線を構成する第2端点の下に位置
    する直線を選択することを特徴とする請求項2記載の描
    画処理方法。
  5. 【請求項5】 X−Y座標系においてクリッピング領域
    が第4象現に位置して、かつ当該クリッピング領域の頂
    点O(X0,Y0)が上記X−Y座標系の原点に位置され
    るとした際に、始点もしくは終点とされる点A(Xa,
    Ya)が第1象現において選択され、他点とされる点B
    (Xb,Yb)が第3象現において選択された描画直線
    を、Xb<Xaにときには下記(1)式によって判別し
    て、Xa<Xbのときには下記(2)式によって判別し
    て、下記(1)式又は下記(2)式が満たされた場合に
    は、上記描画演算処理を終了することを特徴とする請求
    項1記載の描画処理方法。 |Xa−X0|×|Yb−Y0|<|Xb−X0|×|Ya−Y0|・・・(1) |Xa−X0|×|Yb−Y0|>|Xb−X0|×|Ya−Y0|・・・(2)
  6. 【請求項6】 任意の方形状に選択された領域であっ
    て、当該領域内に描画された描画情報のみを有効とする
    クリッピング領域を設定する機能を有する描画処理装置
    において、上記クリッピング領域の頂点を原点とし、ク
    リッピング領域が座標領域の第4象現に位置するとした
    際に、描画直線の始点もしくは終点が第1象現に存在
    し、他点が第3象現に存在する直線を選択する第1選択
    ステップと、 クリッピング領域の頂点を原点とし、クリッピング領域
    が座標領域の第4象現に位置するとした際に、上記描画
    直線の切片が正である直線を選択する第2の選択ステッ
    プと、 描画直線が上記第1の選択ステップおよび上記第2の選
    択ステップを満たす場合には、描画演算処理を終了する
    終了ステップとを有することを特徴とする描画処理装
    置。
  7. 【請求項7】 クリッピング領域の第1の頂点を基準に
    して、描画直線の始点若しくは終点が右上領域に位置
    し、第1の頂点を基準にして、描画直線の他点が左下領
    域に位置する直線を選択する第3選択ステップと、 クリッピング領域の第2の頂点を基準にして、描画直線
    の始点若しくは終点が左上領域に位置し、第2の頂点を
    基準にして、描画直線の他点が右下領域に位置する直線
    を選択する第4選択ステップと、 クリッピング領域の第3の頂点を基準にして、描画直線
    の始点若しくは終点が左上領域に位置し、第3の頂点を
    基準にして、描画直線の他点が右下領域に位置する直線
    を選択する第5選択ステップと、 クリッピング領域の第4の頂点を基準にして、描画直線
    の始点若しくは終点が右上領域に位置し、第1の頂点を
    基準にして、描画直線の他点が左下領域に位置する直線
    を選択する第6選択ステップとをさらに有することを特
    徴とする請求項6記載の描画処理装置。
  8. 【請求項8】 上記第3選択ステップは、描画直線の始
    点若しくは終点がクリッピング領域における対角線を構
    成する第1端点の右かつクリッピング領域における対角
    線を構成する第1端点の上に位置し、描画直線の他点が
    クリッピング領域における対角線を構成する第1端点の
    左かつクリッピング領域における対角線を構成する第1
    端点の下に位置する直線を選択し、 上記第4選択ステップは、描画直線の始点若しくは終点
    がクリッピング領域における対角線を構成する第2端点
    の左かつクリッピング領域における対角線を構成する第
    1端点の上に位置し、描画直線の他点がクリッピング領
    域における対角線を構成する第2端点の右かつクリッピ
    ング領域における対角線を構成する第1端点の下に位置
    する直線を選択し、 上記第5選択ステップは、描画直線の始点若しくは終点
    がクリッピング領域における対角線を構成する第1端点
    の左かつクリッピング領域における対角線を構成する第
    2端点の上に位置し、描画直線の他点がクリッピング領
    域における対角線を構成する第1端点の右かつクリッピ
    ング領域における対角線を構成する第2端点の下に位置
    する直線を選択し、 上記第6選択ステップは、描画直線の始点若しくは終点
    がクリッピング領域における対角線を構成する第2端点
    の右かつクリッピング領域における対角線を構成する第
    2端点の上に位置し、描画直線の他点がクリッピング領
    域における対角線を構成する第2端点の左かつクリッピ
    ング領域における対角線を構成する第2端点の下に位置
    する直線を選択することを特徴とする請求項7記載の描
    画処理装置。
  9. 【請求項9】 上記第3選択ステップは、描画直線の始
    点若しくは終点がクリッピング領域における対角線を構
    成する第2端点の右かつクリッピング領域における対角
    線を構成する第1端点の上に位置し、描画直線の他点が
    クリッピング領域における対角線を構成する第2端点の
    左かつクリッピング領域における対角線を構成する第1
    端点の下に位置する直線を選択し、 上記第4選択ステップは、描画直線の始点若しくは終点
    がクリッピング領域における対角線を構成する第1端点
    の左かつクリッピング領域における対角線を構成する第
    1端点の上に位置し、描画直線の他点がクリッピング領
    域における対角線を構成する第1端点の右かつクリッピ
    ング領域における対角線を構成する第1端点の下に位置
    する直線を選択し、 上記第5選択ステップは、描画直線の始点若しくは終点
    がクリッピング領域における対角線を構成する第2端点
    の左かつクリッピング領域における対角線を構成する第
    2端点の上に位置し、描画直線の他点がクリッピング領
    域における対角線を構成する第2端点の右かつクリッピ
    ング領域における対角線を構成する第2端点の下に位置
    する直線を選択し、 上記第6選択ステップは、描画直線の始点若しくは終点
    がクリッピング領域における対角線を構成する第1端点
    の右かつクリッピング領域における対角線を構成する第
    2端点の上に位置し、描画直線の他点がクリッピング領
    域における対角線を構成する第1端点の左かつクリッピ
    ング領域における対角線を構成する第2端点の下に位置
    する直線を選択することを特徴とする請求項7記載の描
    画処理装置。
  10. 【請求項10】 X−Y座標系においてクリッピング領
    域が第4象現に位置して、かつ当該クリッピング領域の
    頂点O(X0,Y0)が上記X−Y座標系の原点に位置さ
    れるとした際に、始点もしくは終点とされる点A(X
    a,Ya)が第1象現において選択され、他点とされる
    点B(Xb,Yb)が第3象現において選択された描画
    直線を、Xb<Xaにときには下記(3)式によって判
    別して、Xa<Xbのときには下記(4)式によって判
    別して、下記(3)式又は下記(4)式が満たされた場
    合には、上記描画演算処理を終了することを特徴とする
    請求項6記載の描画処理装置。 |Xa−X0|×|Yb−Y0|<|Xb−X0|×|Ya−Y0|・・・(3) |Xa−X0|×|Yb−Y0|>|Xb−X0|×|Ya−Y0|・・・(4)
JP9241507A 1997-09-05 1997-09-05 描画処理方法および描画処理装置 Withdrawn JPH1186008A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9241507A JPH1186008A (ja) 1997-09-05 1997-09-05 描画処理方法および描画処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9241507A JPH1186008A (ja) 1997-09-05 1997-09-05 描画処理方法および描画処理装置

Publications (1)

Publication Number Publication Date
JPH1186008A true JPH1186008A (ja) 1999-03-30

Family

ID=17075366

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9241507A Withdrawn JPH1186008A (ja) 1997-09-05 1997-09-05 描画処理方法および描画処理装置

Country Status (1)

Country Link
JP (1) JPH1186008A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6275593B1 (en) 1996-05-10 2001-08-14 True Dimensional Sound, Inc. Apparatus and methods for the harmonic enhancement of electronic audio signals
WO2005059736A1 (ja) * 2003-12-17 2005-06-30 National University Corporation Shizuoka University 瞳孔検出によるポインタ制御装置及び方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6275593B1 (en) 1996-05-10 2001-08-14 True Dimensional Sound, Inc. Apparatus and methods for the harmonic enhancement of electronic audio signals
WO2005059736A1 (ja) * 2003-12-17 2005-06-30 National University Corporation Shizuoka University 瞳孔検出によるポインタ制御装置及び方法

Similar Documents

Publication Publication Date Title
JP3030206B2 (ja) グラフィック多角形をクリップ領域にクリップする方法および装置
JP2707175B2 (ja) 図形処理システム
US5524198A (en) Character or graphic processing method and apparatus
JPH06309395A (ja) 画像作成装置
JPH1186008A (ja) 描画処理方法および描画処理装置
JP2003250039A (ja) 画像処理装置,画像処理方法および記録媒体
JPH07225849A (ja) グラフィックスコンピュータと直線描画装置
JP2007179272A (ja) コンピュータ支援設計装置、そのプログラム及び方法
US20090073180A1 (en) Graphics drawing apparatus, method, and program and recording medium on which the program is recorded
JPH09106453A (ja) 画像の変形方法
JP2971765B2 (ja) 多角形描画方法及び多角形描画装置
JPH1115994A (ja) 曲面作成方法
JP2695788B2 (ja) 図形データ補間方法
JPH07134779A (ja) 掃引体図形生成装置
JP2723058B2 (ja) 線対称図形入力装置
JP2614111B2 (ja) 直線表示要素と矩形ウインドウの相互関係の検出方法
JPH0350686A (ja) 図形処理方式
JP2010009271A (ja) 画像処理装置
JPH07220098A (ja) 多角形近似による円弧の描画データ作成装置
JPH1031760A (ja) 図形処理装置
JP2004030135A (ja) Cadシステムにおける円の一部の描画方法及びプログラム
JPH06215094A (ja) 図形生成装置
JPH06110442A (ja) 文字図形処理装置、及び文字または図形の変形処理方法
JPH08335277A (ja) 図形処理装置
JPH08227463A (ja) 三次元アニメーション処理システム

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20041207