JPS60239826A - Correlation of straight line for interactive type display system - Google Patents

Correlation of straight line for interactive type display system

Info

Publication number
JPS60239826A
JPS60239826A JP60005140A JP514085A JPS60239826A JP S60239826 A JPS60239826 A JP S60239826A JP 60005140 A JP60005140 A JP 60005140A JP 514085 A JP514085 A JP 514085A JP S60239826 A JPS60239826 A JP S60239826A
Authority
JP
Japan
Prior art keywords
register
line
correlation window
correlation
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.)
Pending
Application number
JP60005140A
Other languages
Japanese (ja)
Inventor
グリン・ノーミントン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPS60239826A publication Critical patent/JPS60239826A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G1/00Control arrangements or circuits, of interest only in connection with cathode-ray tube indicators; General aspects or details, e.g. selection emphasis on particular characters, dashed line or dotted line generation; Preprocessing of data
    • G09G1/06Control arrangements or circuits, of interest only in connection with cathode-ray tube indicators; General aspects or details, e.g. selection emphasis on particular characters, dashed line or dotted line generation; Preprocessing of data using single beam tubes, e.g. three-dimensional or perspective representation, rotation or translation of display pattern, hidden lines, shadows

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
(57) [Summary] This bulletin contains application data before electronic filing, so abstract data is not recorded.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は対話型表示装置にお(・て直線と相関ウィンド
ウの相関方法の改善に係る。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to an improved method of correlating a straight line and a correlation window in an interactive display device.

〔従来技術〕[Prior art]

図形イメージを対話により処理する場合、操作員は一般
に、対話しているアプリケーション−プログラムに合わ
せて、イメージ中の特定の線を識別しようとする0これ
は、例えば、線を他の対象図形に関連して移動したり、
対象図形を変更または削除するための種々の前提の1つ
であるかもしれない0前記動作を実行しうる方法は、例
えば゛線2ろを削除せよ′のコマンドによる対象図形の
識別であろう。しかしながら、操作員にとっては、実際
に線を指す適切な装置を使用するのが、ずっと自然であ
る。表示スクリーンのカーソルに結合される代表的な装
置として、ジョイスティック、サムホイール、トラック
ボール、またはマウスがある。
When processing a graphical image interactively, the operator typically attempts to identify a particular line in the image in accordance with the application-program with which it is interacting. and move,
A possible way to perform the operation, which may be one of various prerequisites for modifying or deleting a target shape, would be the identification of the target shape by, for example, the command ``delete line 2''. However, it is much more natural for the operator to use appropriate equipment to actually point the line. Typical devices coupled to a display screen cursor include a joystick, thumbwheel, trackball, or mouse.

このような位置指定によりスクリーン上の位置(x、y
)が直接に得られる。次いで、相関動作が実行され、ピ
クチャすなわちイメージ中のどの線が実際に、前記位置
指定された点を通過(またはその点に十分に接近)する
かどうかを判定しなければならなし・。
By specifying the position like this, the position on the screen (x, y
) can be obtained directly. A correlation operation must then be performed to determine which lines in the picture or image actually pass through (or are sufficiently close to) the located point.

前記動作を行なうため、ピクチャすなわちイメージの定
義(−表示リスト)を、イメージを描くのと全く同様に
、走査しなければならないが、リストで定義された線を
実際に描く代りに、それらの線の各々を検査して、問題
の点の周りに描かれた(例えば)小さな長方形を横切る
かどうかを調べる。
To perform the above operation, the picture or image definition (-display list) must be traversed just as one would draw an image, but instead of actually drawing the lines defined in the list, those lines Test each of them to see if they intersect (for example) a small rectangle drawn around the point in question.

前述のプロセスは迅速に実行されることが重要である。It is important that the aforementioned process be carried out quickly.

操作員は、特定の指定が成功であったかどうかを表わす
迅速なシステムの応答を期待する。
The operator expects a quick system response indicating whether a particular assignment was successful.

一般に、操作員は、イメージ中の多くの線のうちの1つ
の線しか指定しないので、いかに迅速に残りの対象の各
々を拒絶できるかが能力を表わす重要な要素となる。
Generally, the operator specifies only one line among many lines in the image, so how quickly each of the remaining objects can be rejected becomes an important factor in performance.

Cohen−3utherlandのクリッピング・ア
ルゴリズムは、領域の検査により、明白に受入れまたは
拒絶できる線を効率的に識別するように設計されている
。横断の計算は、受入れも拒絶もされない線の場合にし
か必要としない。このクリッピング・アルゴリズムは、
原線の大部分を含む大きなウィンドウの場合、または相
対的に小さなウィンドウと太き(稠密な、大部分の原線
がウィンドウの外側に出るイメージの場合の、2つの極
端な場合に物に効率的であり、大抵の線は、それぞれ、
明日に受入れ、または拒絶できる。
The Cohen-3Utherland clipping algorithm is designed to efficiently identify lines that can be unequivocally accepted or rejected by inspection of the region. Calculation of traversals is only required for lines that are neither accepted nor rejected. This clipping algorithm is
Things are more efficient in two extreme cases: a large window containing most of the primitives, or a relatively small window and a thick (dense, image with most of the primitives falling outside the window). and most of the lines are
You can accept or reject it tomorrow.

前記アルゴリズムは9つの領域またはウィンドウに基づ
き、左端をビット1とする4ビツトのアウトコードを、
線の各々の終点に割当てることにより開始する。9つの
領域またはウィンドウは、相関ウィンドウと、それを囲
む8つの領域で、4つの領域は相関ウィンドウの縁に隣
接する縁を有し、残りの4つの領域は対角する角の領域
を有する。アウトコードの各ビットは、終点とウィンド
ウの間の下記の一定の関係が真の場合、1にセットされ
る。
The algorithm is based on 9 regions or windows and creates a 4-bit outcode with bit 1 at the left end:
Begin by assigning to each endpoint of the line. The nine regions or windows are a correlation window and eight surrounding regions, four regions having edges adjacent to the edges of the correlation window, and the remaining four regions having diagonal corner regions. Each bit of the outcode is set to 1 if certain relationships between the endpoint and the window below are true.

ビット1:終点はウィンドウの上方にある。Bit 1: End point is above the window.

ビット2:終点はウィンドウの下方にある。Bit 2: End point is below the window.

ビット3=終点はウィンドウの右側にある。Bit 3 = End point is on the right side of the window.

ビット4:終点はウィンドウの左側にある。Bit 4: End point is on the left side of the window.

その他の場合は、ビットは0にセットされる。Otherwise, the bit is set to 0.

ビット操作を可能にする方式でアウトコードを計算する
1つの方法は、ビット1、ビット2、ビット3、ビット
4がそれぞれ、(ym□−y)、(y−ym、n)、(
xmaX−x)、(X ”m1n)の符号ビットである
という観測結果から得られる。若し、これらの差のすべ
てが非負なら、終点は(アウトコード0000の)相関
ウィンドウの内部にある。
One way to calculate the outcode in a way that allows bit manipulation is to calculate the outcode in such a way that bit 1, bit 2, bit 3, and bit 4 are (ym□-y), (y-ym, n), (
It follows from the observation that xma

若し、両終点が(0000のアウトコードに対応する相
関ウィンドウ内にあるなら、その線は明白に受入れでき
る。若し0両路点が相関ウィンドウの上方、下方、左側
、または右側の領域にあるなら、その線は明白に拒絶さ
れる。これは、両終点のアウトコードにある対応するビ
ットが1であれば当てはまり、前記対応するビットが1
であるかどうかは、これらのアウトコードの論理積(A
ND)をとり、その結果カーN0TO[l[]I] 〃
であるかどうかを検査することにより容易に分る。
If both endpoints are within the correlation window corresponding to an outcode of (0000), then the line is clearly acceptable. If so, the line is explicitly rejected. This is true if the corresponding bits in the outcode of both endpoints are 1, and the corresponding bits are 1.
Whether or not it is determined by the conjunction of these outcodes (A
ND), and the result is carN0TO[l[]I] 〃
It can be easily determined by testing whether or not it is.

若し、前記ANDの結果が0000なら、その線は、明
白に拒絶することも受入れることもできない。これは、
その線が相関ウィンドウを横切っているかもしれないか
らである。
If the result of the AND is 0000, then the line cannot be explicitly rejected or accepted. this is,
This is because the line may cross the correlation window.

該アルゴリズムには、相関ウィンドウを通り抜ける線を
クリップする際は、少なくて2つの交点の計算を要する
とし・う欠点がある。この作業はデータ処理の観点では
極めて時間がかかる筈である。
The algorithm has the disadvantage that it requires the calculation of at least two intersection points when clipping a line passing through a correlation window. This work must be extremely time consuming from a data processing perspective.

米国特許第441229<5号は、ディスプレイにおけ
る線の衝突を消滅させる回路構成につ(・て説明してい
る。
US Pat. No. 4,412,295 describes a circuit arrangement for eliminating line collisions in a display.

この回路は、図形生成プログラムによって生成されるよ
うな曲線ならびに直線の境界部分の生成、ならびにCR
Tスクリーンを横切る異なった水平位置における多数の
クリッピング境界の生成が可能である。
This circuit can generate curved and straight boundary parts such as those generated by a figure generation program, as well as CR
The generation of multiple clipping boundaries at different horizontal positions across the T-screen is possible.

位置情報が図形生成プログラムからこの回路に供給され
るので、この入力情報は索引表をアドレス指定して、表
示される記号の一定の部分と、高い優先順位で表示しよ
うとしている記号の領域の間に衝突が生じるかどうかを
決定できる。若し、衝突があると判れば、この回路は、
クリップしなければ高い優先順位の情報を覆うであろう
記号の部分をクリップする。
Position information is fed into this circuit from the graphics generator, so this input information addresses the lookup table to locate between certain parts of the symbol to be displayed and the region of the symbol that is to be displayed with high priority. can determine whether a conflict will occur. If it is determined that there is a collision, this circuit will
Clip portions of symbols that would otherwise cover higher priority information.

〔発明が解決しよ5とする問題点〕 上述の通り、対話型ディスプレイ・システムにおし・て
直線を相関するための従来技術は、めんどうな計算を要
するため時間が掛りすぎると言う問題点があった・本発
明は相関のための所要時間を短縮し、ユーザーの待ち時
間を少くする技術を提供することを目的とする。
[Problems to be solved by the invention] As mentioned above, the conventional technology for correlating straight lines in an interactive display system has the problem that it takes too much time because it requires troublesome calculations. The present invention aims to provide a technique that reduces the time required for correlation and reduces the user's waiting time.

C問題点を解決するための手段〕 本発明によって提供される、対話型ディスプレイ・シス
テムにおいて直線を相関ウィンドウと相関する方法は: (、) 表示領域に相関ウィンドウを定義し、表示領域
の残りの部分を、相関ウィンドウを囲む8つの領域に分
割し、 (b) 表示リスト・バッファに座標として書込まれた
線のどれが明白に受入れまたは拒絶できるかを、終点が
存在する領域の外形を計算することにより判定し、 (c)明白に受入れまたは拒絶されなかった線の各々に
ついて、その線のどちら側に、相関ウィンドウの、1つ
または2つの選択された角の点が位置するか、従って、
その線が相関ウィンドを横切るかどうかを判定する。
Means for Solving Problem C] The method of correlating a straight line with a correlation window in an interactive display system provided by the present invention is as follows: (,) Defining a correlation window in a display area, and Divide the part into eight regions surrounding the correlation window; (b) calculate the outline of the region in which the end points lie, which of the lines written as coordinates in the display list buffer can be accepted or rejected unambiguously; (c) for each line not unequivocally accepted or rejected, on which side of that line one or two selected corner points of the correlation window are located; ,
Determine whether the line crosses the correlation window.

ステップを含む。Contains steps.

本発明のもう1つの実施態様として提供される対話型デ
ィスプレイ・システムは、表示スクリーン、フロ士ツサ
を含む制御装置、制御プログラムを記憶するROM、お
よび少なくともレジスタ領域と表示検査バッファ記憶を
有するRAMを含み、制御プログラムの制御のもとに、
表示領域に相関ウィンドウを定義するとともに、表示領
域の残りの部分を、相関ウィンドウを囲む8つの領域に
分割する第1の手段と、 制御プログラムの制御のもとに、表示リスト・バッファ
に座標として書込まれたどの線が明白に受入れまたは拒
絶できるかを、終点が位置する領域の外形を計算するこ
とにより決定する第2の手段と、 制御プログラムの制御のもとに、明白に受入れまたは拒
絶されなかった線の各々について、その線のどちら側に
、相関ウィンドウの、1つまたは2つの選択された角の
点が位置するか、従って、その線が相関つ゛イントウを
横切るがどうかを決定する第3の手段と、 を有する。
An interactive display system provided as another embodiment of the present invention includes a display screen, a control device including a controller, a ROM for storing a control program, and a RAM having at least a register area and display test buffer storage. including, under the control of the control program,
a first means for defining a correlation window in the display area and dividing the remaining part of the display area into eight areas surrounding the correlation window; a second means for determining which drawn lines can be accepted or rejected unambiguously by calculating the outline of the area in which the end points are located; For each line that is not found, determine on which side of that line one or two selected corner points of the correlation window are located, and therefore whether the line crosses the correlation window. and a third means.

〔作用〕[Effect]

対話型ディスプレイ・システムにお(・て、表示スクリ
ーンを、相関ウィンドウと、それを取巻く8つの領域に
分割し、表示リスト・)くツファに座標として書込まれ
た線のどれかが明白に受入れまたは拒絶できるかを、そ
れらの線の終点が位置する領域の外形を計算することに
よって判定し、明白に受入れまたは拒絶されなかった線
の谷ノ2については、相関ウィンドウの、1つまたは2
つの選択された角の点が、その線のどちら側(で位置す
るか、従って、その線が相関ウィンドウを横切るかどう
かを判定することにより直線を相関する。
In an interactive display system, the display screen is divided into a correlated window and eight surrounding areas, and any of the lines written as coordinates in the display list are explicitly accepted. The decision is made by calculating the outline of the region in which the endpoints of those lines are located, and for valleys 2 of the lines that are not clearly accepted or rejected, one or two of the correlation windows are determined.
Correlate straight lines by determining on which side of the line the two selected corner points are located, and therefore whether the line crosses the correlation window.

〔実施例〕〔Example〕

第2図において、スクリーン10は相関ウィンドウ(ま
たは領域)1とそれを囲む領域2〜9とからなる9個の
領域に分割されている。各領域は5ピツトのアウトコー
ドにより識別される。各アウトコード内のビットは次の
ように表わされる:ビット1および5は長方形の相関ウ
ィンドウの下方を表わし、 ビット2は相関ウィンドウの右側を表わし、ビットロは
相関ウィンドウの上方を表わし、ビット4は相関ウィン
ドウの左側を表わす。
In FIG. 2, screen 10 is divided into nine regions consisting of correlation window (or region) 1 and surrounding regions 2-9. Each region is identified by a 5-pit outcode. The bits in each outcode are represented as follows: Bits 1 and 5 represent the bottom of the rectangular correlation window, Bit 2 represents the right side of the correlation window, Bitlo represents the top of the correlation window, and Bit 4 represents the top of the correlation window. Represents the left side of the correlation window.

従って、各領域は下記の5つのビットの組合せより成る
アウトコードで表わされる。
Therefore, each area is represented by an outcode consisting of a combination of the following five bits.

領域1=00000(相関ウィンドウ)領域2=001
10.(左上の領域) 領域3.=00100(中上の領域) 領域4−01100(右上の領域) 領域5−00010(左中段の領域) 領域6=[l 1000 (右中段の領域)領域7=1
001’1(左下の領域) 領域8−jDDDj(中下の領域) 領域9=11001(右下の領域) この表示法を使用すると、アウトコードを1桁左シフト
することにより、コード中の最初の4ビツトで、元のア
ウトコードを反時計方向に90度回転した結果に相当す
るアウトコードが生じる〇第2図に示されている各領域
は、実際には、だいたい同じ大きさであるが、相関ウィ
ンドウ1は10または15ペル(画素)の四角形で他の
領域はそれに対応してより大きい領域をとるので、中段
の領域は(相関ウィンドウ1に隣接する)1つの短かい
縁と、他の領域に隣接する相対的により大きい縁を有す
る。
Area 1 = 00000 (correlation window) Area 2 = 001
10. (Top left area) Area 3. = 00100 (upper middle area) Area 4 - 01100 (upper right area) Area 5 - 00010 (middle left area) Area 6 = [l 1000 (middle right area) Area 7 = 1
001'1 (lower left area) Area 8-jDDDj (lower middle area) Area 9 = 11001 (lower right area) When using this display method, by shifting the out code by one digit to the left, An outcode corresponding to the result of rotating the original outcode by 90 degrees counterclockwise is generated using 4 bits of , correlation window 1 is a rectangle of 10 or 15 pels (pixels), and the other regions take correspondingly larger areas, so the middle region has one short edge (adjacent to correlation window 1) and the other has a relatively larger edge adjacent to the area.

本発明の方法の良好な実施態様について、第1図に示す
流れ図と、第5図に示す対話型ディスプレイ・システム
により説明する。第5図の対話型ディスプレイ・システ
ムはディスプレイのスクリーン′50とそれに接続され
た制御装置31を含む。
A preferred embodiment of the method of the invention is illustrated by the flowchart shown in FIG. 1 and the interactive display system shown in FIG. The interactive display system of FIG. 5 includes a display screen '50 and a control device 31 connected thereto.

制御装置51は、プロセッサ32、ROM34、RAM
35および表示リスト−バッファ36ならびにこれらを
接続するバス33を含む。キニボ〜ド37またはカーソ
ル制御装置38とスクリーン300間の入出力は制御装
置31を介して行なわれる。カーソル制御装置38は、
ライトベン、マウス、タブレットまたはこれらに類似の
装置であるO プロセッサ32はROM54に書込まれている制御プロ
グラムによって制御される。RAM35は一時記憶レジ
スタとして働く専用の領域を有する。本発明の方法の良
好な実施態様では、A−Jの10個のレジスタが使用さ
れる。
The control device 51 includes a processor 32, a ROM 34, and a RAM.
35 and a display list-buffer 36 and a bus 33 connecting them. Input/output between the keyboard 37 or cursor control device 38 and the screen 300 is performed via the control device 31. The cursor control device 38 is
The O processor 32, which may be a light pen, mouse, tablet, or similar device, is controlled by a control program written in the ROM 54. RAM 35 has a dedicated area that serves as a temporary storage register. In a preferred implementation of the method of the invention, 10 registers A-J are used.

また、制御装置7+1はホストのデータ処理装置(図示
せず)との接続点39を有し、このデータ処理装置は、
スクリーン30に表示されるイメージの内容を定義する
表示リストを適切なリンクを一介して送る。
The control device 7+1 also has a connection point 39 with a host data processing device (not shown), and this data processing device
A display list defining the content of the images to be displayed on screen 30 is sent via the appropriate link.

表示リストは、表示されるイ、メージな形成する線の終
点の座標の形式で表示リスト・バッファ36に記憶され
る。
The display list is stored in the display list buffer 36 in the form of the image to be displayed and the coordinates of the end points of the lines forming the image.

対話型ディスプレイ・システム(以下、単にシステムと
いうことがある)のユーザーは、例えば、全体のイ7ノ
ージからの削除、強調、移動等の処理を要する線または
領域を指示しようとする場合、カーソル制御装置38を
介してスクリーン上のカーソルを移動する。
When a user of an interactive display system (hereinafter simply referred to as the system) wishes to indicate a line or area that requires processing, such as deletion, emphasis, or movement from the overall Move the cursor on the screen via device 38.

複雑なイメージの場合、カーソルは必ずしも特定の線上
に正しく乗るとは限らないので、システムは、どこの線
がカーノル位置により選択されるべきかを決定しなけれ
ばならない。そのため、相関ウィンドウ1(第2図)が
カーソル位置の周りに定義される。下記に説明する方法
が、ROM!14に書込まれている制御プログラムの制
御の下に、スクリーン上の線と相関ウィンドウ1とを相
関するのに使用される。
For complex images, the cursor does not always lie correctly on a particular line, so the system must determine which line should be selected by the cursor position. Therefore, a correlation window 1 (FIG. 2) is defined around the cursor position. The method explained below is ROM! Under the control of a control program written in 14, it is used to correlate the lines on the screen with the correlation window 1.

A−Jのレジスタの領域は次のように定義される: レジスタC:相関ウィンドウの左の縁XLレジスタB:
相関ウィンドウの右の縁χ、レジスタC:相関ウィンド
ウの下の縁yBレジスタD=相関ウィンドウの上の縁y
TレジスタE:線線点点座標1y1:X2y2 ルジス
タF:アウトコードル ジスタGニアウドコード2 レジスタH:ヒット春フラグ(最初0にセットされてい
る) レジスタI:OR(レジスタFとレジスタGの論理和の
結果) レジスタJ:AND(レジスタFとレジスタGの論理積
の結果) なお、レジスタKが作業レジスタとして使用される。
The area of registers A-J is defined as follows: Register C: Left edge of correlation window XL Register B:
Right edge of the correlation window χ, register C: bottom edge of the correlation window yB register D = top edge of the correlation window y
T register E: Line dot point coordinates 1y1: Result) Register J: AND (Result of AND of register F and register G) Note that register K is used as a working register.

レジスタFとレジスタGは次のようにセットされる。Register F and register G are set as follows.

相関ウィンドウに関して点(X+y)のアウトコードo
cは、下記のようにセットされたビットを有する8ピツ
トのバイトとして定義される:oc(1)、o c(5
): y < yBの場合は1にセットされ、その他の
場合は0にセットされる。
Outcode o of point (X+y) with respect to the correlation window
c is defined as an 8-pit byte with bits set as follows: oc(1), oc(5
): Set to 1 if y < yB, otherwise set to 0.

oc(2): x>xRの場合は1にセットされ、その
他の場合はOK左シフトれる。
oc(2): Set to 1 if x>xR, otherwise OK shift left.

oc(3): y>yTの場合は1にセットされ、その
他の場合は0にセットされる。
oc(3): Set to 1 if y>yT, otherwise set to 0.

o c(4) : x < xt、の場合は1にセット
され、その他の場合はOK左シフトれる。
oc(4): Set to 1 if x < xt, otherwise OK shift left.

アウトコード・ビット1はアウトコード・ビット55と
同じ値にセットされるので、線が中間から隅に向う場合
は、その線の部分が相関ウィンドウの回りを時計方向に
向かうか、または反時計方向に向かうかが容易に判定で
きる0アウトコードは相関ウィンドウの回りを反時計方
向に順序づけされる◇ 左シフト(SHIFT LEFT)は次のように定義さ
れる: 5HIF LEFT(oc)=oc’ ただし、o’c’ (1)= oc(2)oc’ (2
)= oc(3) OC′(3) −oc(4) oc’ (4)= oc(5) oc’ (5)= oc(6) oc’ (6)= oc(7) OC′(7)= 0C(8) oc”(8) −〇 レジスタ■は、レジスタFとレジスタGの論理和の結果
にセットされ、レジスタJは、レジスタFとレジスタG
の論理積の結果にセットされる。
Outcode bit 1 is set to the same value as outcode bit 55, so if the line goes from the middle to the corner, that part of the line goes clockwise around the correlation window, or counterclockwise. 0 out codes that can easily be determined to be towards are ordered counterclockwise around the correlation window ◇ SHIFT LEFT is defined as: 5HIF LEFT(oc) = oc' where: o'c'(1)=oc(2)oc' (2
)= oc(3) OC'(3) -oc(4) oc'(4)= oc(5) oc'(5)= oc(6) oc'(6)= oc(7) OC'(7 ) = 0C (8) oc” (8) −〇Register ■ is set to the result of the logical sum of register F and register G, and register J is set to the result of the logical sum of register F and register G.
is set to the result of the conjunction of .

次に、第1図の流れ図に示された下記のステップが実行
される0 ステップ1:次の判断を行なう。
Next, the following steps shown in the flowchart of FIG. 1 are executed. Step 1: Make the following determination.

下記の状態 レジスタFの内容−o、 o o o o o o 。The following conditions Contents of register F - o, o o o o o o o o o.

レジスタGの内容=ooooooo。Contents of register G = oooooooo.

レジスタIの内容=oioiooo。Contents of register I=oioiooo.

レジスタIの内容−10101000 のいずれかが真(T)の場合には、 線は相関ウィンドウを通過するものと認められ、ステッ
プ2が開始される。その他の場合(F)には、ステップ
3が開始される。
If any of the contents of register I -10101000 is true (T), the line is accepted to pass through the correlation window and step 2 is initiated. In other cases (F), step 3 is started.

ステップ2:レジスタHを1にセットして、処理中の線
のヒツトを表わし、表示リスト・ノ(ソファ3乙の対応
するフラグがセットされるO処理される次、の線の座標
を取出し、ステップ1に戻る。表示リスト・バッファ3
6が使い尽くされると処理は終了するO ステップ3:下記の判断が行なわれる0レジスタJの内
容=ooooooooで、かつレジスタ■の内容=j 
111’1000の場合(条件A)は、ステップ5が開
始される。レジスタJの内容= o o o ’o o
 o o oで、かつレジスタIの内容=111110
00の場合(条件B)の場合は、ステップ10が開始さ
れる。レジスタJの内容\ooooooooの場合(条
件C)は、ステップ4が開始される。
Step 2: Set register H to 1 to indicate the hit of the line being processed, and retrieve the coordinates of the next line to be processed in the display list (the corresponding flag of sofa 3 is set). Return to step 1. Display list buffer 3
When 6 is used up, the process ends O Step 3: The following judgment is made: 0 The contents of register J = ooooooooo and the contents of register ■ = j
In the case of 111'1000 (condition A), step 5 is started. Contents of register J = o o o 'o o
o o o and contents of register I = 111110
00 (condition B), step 10 is started. If the contents of register J are \ooooooooo (condition C), step 4 is started.

ステップ4:線が拒絶され、レジスタHは0にセットさ
れたままで、表示リスト・バッファ36の対応するフラ
グも0にセットされる。次に処理される線の座標を取出
してステップ1に戻る。表示リスト・バッファ36が使
い尽くされると処理は終了する。
Step 4: The line is rejected, register H remains set to 0, and the corresponding flag in display list buffer 36 is also set to 0. The coordinates of the next line to be processed are retrieved and the process returns to step 1. Processing ends when display list buffer 36 is exhausted.

ステップ5:x x を比較し、Xl>X2の2 場合は、ステップ6が開始され、その他の場合はステッ
プ7が開始される。
Step 5: Compare x x and if Xl>X2, step 6 is started, otherwise step 7 is started.

ステップ6:このステップでは、線の終点をスワップし
、Xl をX2 よりも小さくする。この機能を実行す
る1つのルーチンは、RAM35にある2つの作業レジ
スタT、Uを使用して次の動作を行なう。
Step 6: In this step, we swap the endpoints of the lines and make Xl smaller than X2. One routine that performs this function uses two working registers T, U located in RAM 35 to perform the following operations.

T =x1 Xl ”X2 2−T T =yi yl =y2 2−T レジスタビーレジスタF レジスタF−レジスタG レジスタG−レジスタU 次いでステップ7が開始される。T = x1 Xl”X2 2-T T=yi yl=y2 2-T register be register F Register F - Register G Register G - Register U Step 7 is then initiated.

ステップ7.8および9から成るルーチンは、対角線上
の相対する隅の領域2.9または領域4.7に終点を有
する線が、相関ウィンドウ1の、別の対角線に沿った隅
のそれぞれの領域と共有する2つの角の点を結ぶ線と交
叉するかどうかを判定する。
The routine consisting of steps 7.8 and 9 ensures that a line ending in region 2.9 or region 4.7 in opposite diagonal corners corresponds to the respective region of another diagonal corner of correlation window 1. Determine whether or not it intersects the line connecting the two corner points shared by .

ステップ7:ylとy2を比較し、yl<y2の場合は
ステップ8を開始し、その他の場合は、ステップ9を開
始する。
Step 7: Compare yl and y2, and if yl<y2, start step 8; otherwise, start step 9.

ステップ8:若し、論理式: %式% ))) ))) が真(T)なら、ステップ2が開始され、さもなければ
(F)、ステップ4が開始される。ただし、LSID−
EとR8IDEは後に説明する論理関数名である。
Step 8: If the logical expression: %expression% ))) ))) is true (T), step 2 is initiated; otherwise (F), step 4 is initiated. However, LSID-
E and R8IDE are logical function names that will be explained later.

ステップ9:若し、論理式: %式% ))) ))) が真(T)なら、ステップ2が開始され、さもなければ
(F)、ステップ4が開始される。
Step 9: If the logical expression: %expression% ))) ))) is true (T), step 2 is initiated; otherwise (F), step 4 is initiated.

(中間から隅へ向かう)ステップ10.’11.12お
よび13は、中間の領域3.5.6または8Vc1つの
終点を有し、第2図の、最初の終点を含む領域の行また
は列埋外の行または列妃ある領域に他の終点を有する線
が、線の終点が位置する2つの領域の間を通る対角線に
沿った2つの、相関ウィンドウの角の点を結ぶ線を横切
るかどうかを判定する。
(Going from the middle to the corner) Step 10. '11.12 and 13 have one endpoint in the intermediate region 3.5.6 or 8Vc, and in FIG. Determine whether a line with endpoints intersects a line connecting two corner points of the correlation window along a diagonal line passing between the two regions where the endpoints of the line are located.

ステップ10:このステップは、終点(x 1 、y’
1 )と終点(X2+ y2 )を結ぶ線が相関ウィン
ドウ1の回りを時計方向に指すことを確保するため、レ
ジスタFの1桁左シフトを計算し、その結果をレジスタ
Gの内容とANDL、若し、その結果が00ooooo
oに等しければ、線の終点は前述のステップ6で行なっ
たようにスワップされ、レジスタFの前記左シフトとレ
ジスタGのANDが再計算され、その結果はレジスタK
K書込まれる。
Step 10: This step is the end point (x 1 , y'
1 ) and the end point ( and the result is 00oooooo
If equal to o, the end points of the line are swapped as done in step 6 above, the left shift of register F and the AND of register G are recomputed, and the result is stored in register K.
K is written.

ステップ11:このステップは、レジスタFの第1ビツ
トと第4ビツトの値のどちらかが1の場合はy=yBI
Cセットし、これらのビットがどちらも1ではない場合
はy−yTにセラトスる。
Step 11: In this step, if either the value of the first bit or the fourth bit of register F is 1, y=yBI
Set C, and if neither of these bits is 1, set y-yT.

ステップ12:このステップは、レジスタFの第1ビツ
トと第2ビツトの値のどちらかが1の場合はx;xRに
セットし、その他の場合はX =X Lにセットする。
Step 12: In this step, if either the value of the first bit or the second bit of register F is 1, set x;

ステップ13:若し、論理式: %式%))) が真なら、ステップ2に戻り、さもなければ、ステップ
4に戻る。
Step 13: If the logical expression: %expression%))) is true, go back to step 2; otherwise go back to step 4.

次に前述の論理関数について説明する。Next, the above-mentioned logical function will be explained.

論理関数LSIDE(Xp、yp、Xq、yq、Xr。Logical function LSIDE (Xp, yp, Xq, yq, Xr.

yr)は次のルーチンによって計算される。括弧内の変
数は仮引数を表わす。
yr) is calculated by the following routine. Variables in parentheses represent formal arguments.

(xp−xr ) (yq−yp )>(yp−yr 
) (xq−xp )が成立する場合は、LSIDEは
真(1)であり、その他の場合はLSI’DEは偽(0
)である。
(xp-xr) (yq-yp)>(yp-yr
) (xq-xp), then LSIDE is true (1); otherwise, LSI'DE is false (0
).

論理関数R8I DE(Xp+ yp+ X’b yq
+ ”+ Yr )は次のルーチンによって計算される
。 ゛(xp−xr)(yq−yp)<(yp−yr)
(xq−xp:1が成立する場合は、R8IDEは真(
1)であり、その他の場合はR8IDEは偽(0)であ
る。
Logical function R8I DE(Xp+ yp+ X'b yq
+ ”+Yr) is calculated by the following routine: ゛(xp-xr)(yq-yp)<(yp-yr)
(If xq-xp:1 holds true, R8IDE is true (
1), otherwise R8IDE is false (0).

前述の方法はハードウェアまたはソフトウェアのいずれ
によっても実行できる。第3図に示すような対話型ディ
スプレイ・システムでは、プロセッサ32は、ROM3
4内に形成された制御プログラムの制御により前記方法
を実行する。他の実施態様では、制御プログラムがディ
スフット上に常駐し、必要な場合にRAM35の部分に
読込まれるものがある。
The method described above can be performed by either hardware or software. In an interactive display system such as that shown in FIG.
The method is carried out under the control of a control program formed in 4. In other embodiments, the control program may reside on the disfoot and be loaded into portions of RAM 35 when necessary.

第3図の制御装置31のようなディスプレイ制御装置で
は、ROM34に常駐する汎用の制御プログラムが、カ
ーソル制御装置58またはキーボード57からの入力に
応答してスクリーン50上のカーソル位置を制御する。
In a display control device, such as control device 31 of FIG. 3, a general purpose control program resident in ROM 34 controls cursor position on screen 50 in response to input from cursor control device 58 or keyboard 57.

プロセッサろ2は、制御プログラムの制御により、線と
相関ウィンドウを相関するプロセスを実行する。
Processor 2 executes the process of correlating lines and correlation windows under the control of a control program.

〔発明の効果〕〔Effect of the invention〕

本発明の方法により、対話型ディスプレイ・システムに
おし・て直線を相関するのに要する時間が、従来の方法
よりも短かくなり、従ってユーザーの待ち時間が短縮さ
れる。
The method of the present invention requires less time to correlate a straight line in an interactive display system than conventional methods, thus reducing user waiting time.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は本発明の、良好に実施された方法のステップを
示す流れ図、 第2図は表示領域が相関ウィンドウを含む9つの領域に
分割されていることを示す図、第6図は対話型ディスプ
レイ・システムのブロック図である。 1・・・・相関ウィンドウ、2〜9・・・・領域、10
.30・・・・スクリーン、31・・・・制御装置、ろ
2・・・・プロセッサ、56・・・・バス、34・・・
・ROM。 35・・・・RAM、36・・・・表示リスト・バッフ
ァ、37・・・・キーボード、38・・・・カーソル制
御装置。 出願人 インターナショカル・ビジネス・マシーンズ・
コーポレーション復代理人 弁理士 篠 田° 文 雄 IGi F I 0.2 FIG、3
FIG. 1 is a flowchart showing the steps of a well-implemented method of the present invention; FIG. 2 is a diagram showing the display area being divided into nine regions containing correlation windows; FIG. 6 is an interactive FIG. 1 is a block diagram of a display system. 1...correlation window, 2-9...area, 10
.. 30... Screen, 31... Control device, Filter 2... Processor, 56... Bus, 34...
・ROM. 35...RAM, 36...Display list buffer, 37...Keyboard, 38...Cursor control device. Applicant International Business Machines
Corporation sub-agent Patent attorney Fumi Shinoda IGi F I 0.2 FIG, 3

Claims (1)

【特許請求の範囲】 対話型ディスプレイ・システムにおいて直線を相関ウィ
ンドウと相関する方法であって、(a) 表示領域に相
関ウィンドウを定義し、且つ該表示領域の残りの部分を
、該相関ウィンドウを囲む8つの領域に分割するステッ
プと、 (b) 表示リスト・バッファに座標として記録された
線のどれが明白に受入れまたは拒絶できるかを、終点が
位置する領域の外形を計算することにより決定するステ
ップと、 (e) 明白に受入れまたは拒絶されなかった線の各々
について、該線のどちら側に、相関ウィンドウの、1つ
または2つの選択された角の点が存在するか、そして該
線が相関ウィンドウを横切るかど゛ うかを決定するス
テップと、 を含むことを特徴とする対話型ディスプレイ・システム
において直線を相関する方法。
Claims: A method for correlating a straight line with a correlation window in an interactive display system, comprising: (a) defining a correlation window in a display area; and defining a correlation window in a display area; (b) determining which of the lines recorded as coordinates in the display list buffer can be accepted or rejected unambiguously by calculating the outline of the region in which the endpoints are located; (e) for each line not explicitly accepted or rejected, on which side of the line there are one or two selected corner points of the correlation window; A method for correlating straight lines in an interactive display system, comprising the steps of: determining whether ゛ traverses a correlation window;
JP60005140A 1984-05-05 1985-01-17 Correlation of straight line for interactive type display system Pending JPS60239826A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB8411594 1984-05-05
GB848411594A GB8411594D0 (en) 1984-05-05 1984-05-05 Correlating on straight lines in interactive display system

Publications (1)

Publication Number Publication Date
JPS60239826A true JPS60239826A (en) 1985-11-28

Family

ID=10560567

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60005140A Pending JPS60239826A (en) 1984-05-05 1985-01-17 Correlation of straight line for interactive type display system

Country Status (3)

Country Link
EP (1) EP0163872A3 (en)
JP (1) JPS60239826A (en)
GB (1) GB8411594D0 (en)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3639736A (en) * 1969-11-19 1972-02-01 Ivan E Sutherland Display windowing by clipping

Also Published As

Publication number Publication date
EP0163872A3 (en) 1990-01-31
GB8411594D0 (en) 1984-06-13
EP0163872A2 (en) 1985-12-11

Similar Documents

Publication Publication Date Title
US5179655A (en) Multiwindow control method and apparatus for work station having multiwindow function
US5237653A (en) Multiwindow control method and apparatus for work station having multiwindow function
EP0163852B1 (en) Graphic display systems
JPS5985573A (en) Method and apparatus for displaying graphic informaion
JPS6141185A (en) Display window control
JP2707175B2 (en) Graphic processing system
JPS60202482A (en) Identification of interfaced area
US5020002A (en) Method and apparatus for decomposing a quadrilateral figure for display and manipulation by a computer system
EP0356262B1 (en) Image processing apparatus
JPH01296389A (en) Method and device for processing graphic
JPS60239826A (en) Correlation of straight line for interactive type display system
JP3264619B2 (en) Image processing apparatus and method
JP2625612B2 (en) Image processing method and image processing apparatus
JP2614111B2 (en) A method for detecting the correlation between a straight line display element and a rectangular window
EP0357076B1 (en) Inclined rectangular pattern generating system
JPH09106460A (en) Adjacent relation discriminating method for image parts
JP2660707B2 (en) How to pick 3D figures
JPS5927913B2 (en) Line texture generation circuit for display equipment
JP2898977B2 (en) How to arrange windows
JP2508634B2 (en) Multi-window generator
JP3337385B2 (en) Display control circuit
JPH0643853A (en) Method and device for controlling display attribute
JPH0350686A (en) Graphic processing system
JPS6169096A (en) Graphic processor
JPH05250455A (en) Graphic containment deciding system in graphic display device