JPS6227872A - 交点検出回路 - Google Patents
交点検出回路Info
- Publication number
- JPS6227872A JPS6227872A JP16805385A JP16805385A JPS6227872A JP S6227872 A JPS6227872 A JP S6227872A JP 16805385 A JP16805385 A JP 16805385A JP 16805385 A JP16805385 A JP 16805385A JP S6227872 A JPS6227872 A JP S6227872A
- Authority
- JP
- Japan
- Prior art keywords
- register
- output
- point
- intersection
- line segment
- 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
- Image Analysis (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
[発明の技術分野]
この発明は、線分と指定枠の指定辺との交点の座標を検
出する交点検出回路に関する。
出する交点検出回路に関する。
[発明の技術的背景とその問題点]
近年、電子計算機システムの中で図形処理の要求が増加
している。この処理の基本となるのは、予め定義された
幾何空間の中で、両端の座標値が与えられる線分の表示
である。そして最近では、指定された線分のうち、別に
指定される枠の中に含まれる部分だけを表示する要求が
ある。この指定枠に含まれる部分の切出しは、指定線分
と指定枠との交点の座標を検出することにより行なわれ
る。
している。この処理の基本となるのは、予め定義された
幾何空間の中で、両端の座標値が与えられる線分の表示
である。そして最近では、指定された線分のうち、別に
指定される枠の中に含まれる部分だけを表示する要求が
ある。この指定枠に含まれる部分の切出しは、指定線分
と指定枠との交点の座標を検出することにより行なわれ
る。
従来、上記の交点座標検出は、マイクロプロセッサ等で
行なわれており、多大な処理時間を要していた。そこで
、この種の交点座標検出が高速で行なえるハードウェア
回路の実現が要望されていた。
行なわれており、多大な処理時間を要していた。そこで
、この種の交点座標検出が高速で行なえるハードウェア
回路の実現が要望されていた。
[発明の目的]
この発明は上記事情に鑑みてなされたものでその目的は
、指定線分と指定枠との交点の座標が、マイクロプロセ
ッサ等から独立して蟲速に検出できる交点検出回路を提
供することにある。
、指定線分と指定枠との交点の座標が、マイクロプロセ
ッサ等から独立して蟲速に検出できる交点検出回路を提
供することにある。
[発明の概要]
この発明では、指定された線分の始点と終点の第1の方
向の座標の差の1 / 2 Ill!である第1差分値
がその小数部を含めて初期設定される第1シフトレジス
タと、第2シフトレジスタとが設けられる。この第2シ
フトレジスタには、上記線分の始点と終点の上記第1の
方向と直交する第2の方向の座標の差の1/2)i1で
ある第2差分値がその小数部を含めて初期設定される。
向の座標の差の1 / 2 Ill!である第1差分値
がその小数部を含めて初期設定される第1シフトレジス
タと、第2シフトレジスタとが設けられる。この第2シ
フトレジスタには、上記線分の始点と終点の上記第1の
方向と直交する第2の方向の座標の差の1/2)i1で
ある第2差分値がその小数部を含めて初期設定される。
第1.第2シフトレジスタは、第1クロツク信号に応じ
て右に1ビット算術シフト動作を行なう。これにより、
シフト後の第1.第2シフトレジスタの内容は、シフト
前のそれの1/2の値を示す。
て右に1ビット算術シフト動作を行なう。これにより、
シフト後の第1.第2シフトレジスタの内容は、シフト
前のそれの1/2の値を示す。
また、この発明では、上記線分の始点の第1゜第2の方
向の座標値が初期設定される第1.第2レジスタが設け
られる。第1レジスタの出力は、第1加算器によって第
1シフトレジスタの出力と加算される。第2レジスタの
出力は、第2加算器によって第2シフトレジスタの出力
と加算される。
向の座標値が初期設定される第1.第2レジスタが設け
られる。第1レジスタの出力は、第1加算器によって第
1シフトレジスタの出力と加算される。第2レジスタの
出力は、第2加算器によって第2シフトレジスタの出力
と加算される。
第1加算器の加算結果は、比較器によって、上記線分と
の交点検出が要求される指定枠の第2の方向の指定辺の
第1の方向の座標値と比較される。
の交点検出が要求される指定枠の第2の方向の指定辺の
第1の方向の座標値と比較される。
この結果、比較器からは、大小比較結果を示す第1比較
信号および一致検出結果を示す第2比較信号が出力され
る。
信号および一致検出結果を示す第2比較信号が出力され
る。
比較器から出力される第1比較信号は、論理回路により
、上記第1差分値の符号に応じてレベル反転される。こ
の論理回路の出力信号は、第1レジスタの出力および第
1加算器の加算結果のいずれか一方を選択する第1選択
器と、第2レジスタの出力および第2加惇器の加算結東
のいずれか一方を選択する第2)3択器に対する選択制
御信号として用いられる。第1.第2選択器の出力は、
ロード手段により、クロック信号に応じて第1.第2レ
ジスタにロードされる。そして、比較器から一致を示す
第2比較信号が出力された際に第1゜第2レジスタにロ
ードされたデータにより、上記線分と指定枠の第2の方
向の指定辺との交点の第1、第2の方向の座標値が示さ
れる。
、上記第1差分値の符号に応じてレベル反転される。こ
の論理回路の出力信号は、第1レジスタの出力および第
1加算器の加算結果のいずれか一方を選択する第1選択
器と、第2レジスタの出力および第2加惇器の加算結東
のいずれか一方を選択する第2)3択器に対する選択制
御信号として用いられる。第1.第2選択器の出力は、
ロード手段により、クロック信号に応じて第1.第2レ
ジスタにロードされる。そして、比較器から一致を示す
第2比較信号が出力された際に第1゜第2レジスタにロ
ードされたデータにより、上記線分と指定枠の第2の方
向の指定辺との交点の第1、第2の方向の座標値が示さ
れる。
[発明の実施例]
以下、この発明の一実施例を第1図乃至第4図を参照し
て説明する。
て説明する。
第1図は交点検出回路のブロック構成を示す。
第1図の交点検出回路は、第2図に示す指定線分PAP
日と指定枠Wの右辺との交点PRを求めるのに用いられ
る。
日と指定枠Wの右辺との交点PRを求めるのに用いられ
る。
ここで、第1図の交点検出回路に適用される交点検出動
作の原理を第3図を参照して説明する。
作の原理を第3図を参照して説明する。
第3図において、PA、PBは指定線分PA Paの始
点、終点である。始点PAの座標を(X A*yA)、
終点PBの座標を(Xe、V日)とする。
点、終点である。始点PAの座標を(X A*yA)、
終点PBの座標を(Xe、V日)とする。
PRは求めようとする線分PA Paと枠Wの右辺との
交点であり、その座標を(XR,VR)とする。交点P
RのX座標(XR)は予め与えられ、X座標(yR)を
第1図の交点検出回路により中点分割アルゴリズムを用
いて求める。
交点であり、その座標を(XR,VR)とする。交点P
RのX座標(XR)は予め与えられ、X座標(yR)を
第1図の交点検出回路により中点分割アルゴリズムを用
いて求める。
ここでは、線分PA Paの中点PToを求めるために
、線分PA PBの終点Paと始点PAのX座標の差の
1/2)i!であるΔx八と、同じくX座標の差の1
/2)![であるΔyAとが予め与えられる。
、線分PA PBの終点Paと始点PAのX座標の差の
1/2)i!であるΔx八と、同じくX座標の差の1
/2)![であるΔyAとが予め与えられる。
ここで、ΔXA −(XB −XA )/2.ΔyA=
+=(Vs−V^)/2である。線分PA PBの中点
PToのX座標は始点PAのX座標とΔXAとにより求
められ、同じくX座標は始点PAのX座標とΔyAとに
より求められる。もし、始点PAおよび中点P T O
が第3図に示すように枠Wの右辺(X−XR)に対して
同じ側にあるときは、交点PRはPT、とPaとの間に
あることから、今度はPT。
+=(Vs−V^)/2である。線分PA PBの中点
PToのX座標は始点PAのX座標とΔXAとにより求
められ、同じくX座標は始点PAのX座標とΔyAとに
より求められる。もし、始点PAおよび中点P T O
が第3図に示すように枠Wの右辺(X−XR)に対して
同じ側にあるときは、交点PRはPT、とPaとの間に
あることから、今度はPT。
とPaとの中点PT+が求められる。これに対して始点
PAおよび中点PToが枠Wの右辺(X−XR>に対し
て互いに反対側にあるときは、交点PRはPAとPTo
との間にあることから、今度はPAとPToどの中点P
T!が求められる。以上の動作を繰返すことにより、新
たに求められる中点PTiが求める交点PRに近付いて
いく。ヤがてX座標がXRに一致する中点PTnが求め
られると、その中点PTnが求めようとする枠W(の右
辺)との交点PRとなる。
PAおよび中点PToが枠Wの右辺(X−XR>に対し
て互いに反対側にあるときは、交点PRはPAとPTo
との間にあることから、今度はPAとPToどの中点P
T!が求められる。以上の動作を繰返すことにより、新
たに求められる中点PTiが求める交点PRに近付いて
いく。ヤがてX座標がXRに一致する中点PTnが求め
られると、その中点PTnが求めようとする枠W(の右
辺)との交点PRとなる。
第1図の交点検出回路において、It、 12はΔX
A +Δy^が初期設定されシフト用のクロック信号C
LKGにより右に1ビツト算術シフトするシフトレジス
タである。ΔXA、ΔyAは、1ビツトのサイン・ビッ
トを含む41ビツトの整数゛である。負数は2の補数で
表わされる。シフトレジスタ11.12のピッ]・長は
、整数部41ビットおよび小数部7ピツトの48ビツト
である。シフトレジスタ11.12のMSB側直列入力
端には、ΔxA、ΔyAのサイン・ビット(S)を保持
するフリップフロップ13.14の出力が接続されてい
る。
A +Δy^が初期設定されシフト用のクロック信号C
LKGにより右に1ビツト算術シフトするシフトレジス
タである。ΔXA、ΔyAは、1ビツトのサイン・ビッ
トを含む41ビツトの整数゛である。負数は2の補数で
表わされる。シフトレジスタ11.12のピッ]・長は
、整数部41ビットおよび小数部7ピツトの48ビツト
である。シフトレジスタ11.12のMSB側直列入力
端には、ΔxA、ΔyAのサイン・ビット(S)を保持
するフリップフロップ13.14の出力が接続されてい
る。
15は第2図に示す枠Wの右辺のxJil標×Rを保持
するレジスタである。XRは、1ビットのサイン・ビッ
トを含む40ビツトの整数である。16゜17はXA、
yAが初期設定されるレジスタである。
するレジスタである。XRは、1ビットのサイン・ビッ
トを含む40ビツトの整数である。16゜17はXA、
yAが初期設定されるレジスタである。
XA、MAは、1ビツトのサイン・ビットを含む40ビ
ツトの整数である。レジスタ16.17のビット長は、
整数部40ビットおよび小数部7ビツトの47ビツトで
ある。
ツトの整数である。レジスタ16.17のビット長は、
整数部40ビットおよび小数部7ビツトの47ビツトで
ある。
上記したように、シフトレジスタ11.12およびレジ
スタ16.17のビット長は、各パラメータの最大ビッ
ト長より良くなっている。これは、演算精度を保証する
ために、各パラメータの小数点以下の値を保持するよう
にしたことによる。整数部のビット長をm1小数部のビ
ット長をnとすると、これらの間には2n >mの関係
がある。なお小数部(ここでは7ビツト)には、後述す
るように“OItが初期設定される。
スタ16.17のビット長は、各パラメータの最大ビッ
ト長より良くなっている。これは、演算精度を保証する
ために、各パラメータの小数点以下の値を保持するよう
にしたことによる。整数部のビット長をm1小数部のビ
ット長をnとすると、これらの間には2n >mの関係
がある。なお小数部(ここでは7ビツト)には、後述す
るように“OItが初期設定される。
さて、上記のXA、yA、ΔxA、Δ’1/A。
XRは図示せぬマイクロプロセッサにより用意される。
即ちマイクロプロセッサは、第1図の交点検出回路の動
作に先立って、X A* V xをレジスタ16.17
に、ΔxA、ΔyAをシフトレジスタ11゜12に、そ
してxRをレジスタ15に、それぞれ供給する。その後
マイクロプロセッサは、交点検出回路起動用のスタート
信号STRを第4図に示すように1サイクルONする。
作に先立って、X A* V xをレジスタ16.17
に、ΔxA、ΔyAをシフトレジスタ11゜12に、そ
してxRをレジスタ15に、それぞれ供給する。その後
マイクロプロセッサは、交点検出回路起動用のスタート
信号STRを第4図に示すように1サイクルONする。
マイクロプロセッサからのスタート信号STRは、タイ
ミング制御回路18に供給される。タイミング制御回路
18には、基本のクロック信号CLKが常時供給されて
いる。タイミング制御回路18は、スタート信号STR
がONされると、クロック信号CLKに同期したクロッ
ク信号CLKLを1サイクルだ・け出力し、次のサイク
ルよりクロック信号CLKに同期したクロック信号CL
KCを繰返し出力するように構成されている。タイミン
グ制御回路18からのクロック信号CLKLはシフトレ
ジスタ11.12およびレジスタ15〜17に供給され
、同じくクロック信号CLKCはシフトレジスタ11゜
12およびレジスタ16.17に供給される。
ミング制御回路18に供給される。タイミング制御回路
18には、基本のクロック信号CLKが常時供給されて
いる。タイミング制御回路18は、スタート信号STR
がONされると、クロック信号CLKに同期したクロッ
ク信号CLKLを1サイクルだ・け出力し、次のサイク
ルよりクロック信号CLKに同期したクロック信号CL
KCを繰返し出力するように構成されている。タイミン
グ制御回路18からのクロック信号CLKLはシフトレ
ジスタ11.12およびレジスタ15〜17に供給され
、同じくクロック信号CLKCはシフトレジスタ11゜
12およびレジスタ16.17に供給される。
タイミングIIJ 1u11回路18からのクロック信
号CL K Lがシフトレジスタ11.12およびレジ
スタ15〜17に供給されると、ΔxA、ΔyAがシフ
トレジスタ11.12の整数部に、XRがレジスタ15
に、そしてXAIVAがレジスタ16.17の整数部に
、それぞれロードされる。このときシフトレジスタ11
、12およびレジスタ16.17の小数部には0”がロ
ードされる。
号CL K Lがシフトレジスタ11.12およびレジ
スタ15〜17に供給されると、ΔxA、ΔyAがシフ
トレジスタ11.12の整数部に、XRがレジスタ15
に、そしてXAIVAがレジスタ16.17の整数部に
、それぞれロードされる。このときシフトレジスタ11
、12およびレジスタ16.17の小数部には0”がロ
ードされる。
レジスタ16.17の出力は加算器19.20の六入力
に接続され、シフトレジスタ11.12の出力は加算器
19.20の8入力に接続される。ここでレジスタ16
、17の出力〈47ビツト)をX+ 、V+ 、シフト
レジスタit、 12の出力をΔxl、Δy1とする。
に接続され、シフトレジスタ11.12の出力は加算器
19.20の8入力に接続される。ここでレジスタ16
、17の出力〈47ビツト)をX+ 、V+ 、シフト
レジスタit、 12の出力をΔxl、Δy1とする。
iは対応データが何回目のロードデータであるかを示す
もので、りOツク信号CLKLによりxA。
もので、りOツク信号CLKLによりxA。
Vh、ΔxA、ΔyAがロードされた初期状態では0で
ある。
ある。
加算器19はレジスタ16からの×1とシフトレジスタ
11からのΔx1との加算×1+Δx1を行ない、中点
PT1のX座I XT、を出力する。また加算器20は
レジスタ17からのylとシフトレジスタ12からのΔ
y1との加lyt+Δy1を行ない、中点P のy座標
yT、を出力する。加算器19.20の最初の加算結果
XTo 、VToは、XQ+ΔXo (=XA+ΔX
A)、”I10+Δ’T’O(=yA+ΔyA)となり
、線分PA Paの中点PToのx、y座標x 、y
を示す。加算器19.20の出力(XT o*T6
T。
11からのΔx1との加算×1+Δx1を行ない、中点
PT1のX座I XT、を出力する。また加算器20は
レジスタ17からのylとシフトレジスタ12からのΔ
y1との加lyt+Δy1を行ない、中点P のy座標
yT、を出力する。加算器19.20の最初の加算結果
XTo 、VToは、XQ+ΔXo (=XA+ΔX
A)、”I10+Δ’T’O(=yA+ΔyA)となり
、線分PA Paの中点PToのx、y座標x 、y
を示す。加算器19.20の出力(XT o*T6
T。
VTo )は、1ビットのサイン・ビットを含む40ピ
ツトの整数部と、7ピツトの小数部から成る。
ツトの整数部と、7ピツトの小数部から成る。
加算器19の出力XToの整数部は比較器2)の六入力
に接続される。比較器2)0B入力にはレジスタ15の
出力xRが接続される。比較器2)は、A、B入力を比
較、即ち中点PTiのX座標XTiの整数部(ここでは
点PToのX座標XQ+ΔXo )と枠Wの右辺のX座
tllXRを比較し、大小比較結果を示す第1比較信号
F(A≦Bで’1”)と一致検出結果を示す第2比較信
号(A−8で“”1”)とを出力する。この第2比較信
号は“1″で交点検出の終了を示すことから、終了検出
信号ENDと呼ぶ。
に接続される。比較器2)0B入力にはレジスタ15の
出力xRが接続される。比較器2)は、A、B入力を比
較、即ち中点PTiのX座標XTiの整数部(ここでは
点PToのX座標XQ+ΔXo )と枠Wの右辺のX座
tllXRを比較し、大小比較結果を示す第1比較信号
F(A≦Bで’1”)と一致検出結果を示す第2比較信
号(A−8で“”1”)とを出力する。この第2比較信
号は“1″で交点検出の終了を示すことから、終了検出
信号ENDと呼ぶ。
比較器2)からの比較信号Fは排他的論理和ゲート(X
OR)22の一方の入力に接続される。排他的論理和ゲ
ート22の他方の入力には、フリップフロップ13の出
力、即ちΔXA(ΔX+)のサイン・ビットが接続され
る。排他的論理和ゲート22は、信号Fと7リツプ70
ツブ13からのサイン・ビットとの排他的論理和をとる
。排他的論理和ゲート22の出力は、レジスタ16.1
7の出力X+ 、V+の示す点くここではPA)と中点
P71とが、枠Wの右辺(X=Xyz )に対して同じ
側にあるか否かを示す。排他的論理和ゲート22の出力
は2人力1出力の選択器23.24の選択指定入力に接
続される。
OR)22の一方の入力に接続される。排他的論理和ゲ
ート22の他方の入力には、フリップフロップ13の出
力、即ちΔXA(ΔX+)のサイン・ビットが接続され
る。排他的論理和ゲート22は、信号Fと7リツプ70
ツブ13からのサイン・ビットとの排他的論理和をとる
。排他的論理和ゲート22の出力は、レジスタ16.1
7の出力X+ 、V+の示す点くここではPA)と中点
P71とが、枠Wの右辺(X=Xyz )に対して同じ
側にあるか否かを示す。排他的論理和ゲート22の出力
は2人力1出力の選択器23.24の選択指定入力に接
続される。
選択器23.24の六入力にはレジスタ16.17の出
力xi 、 ’i/lが接続され、選択器23.24の
8入力には加算器19.20の出力x’rt、y’rt
が接続される。
力xi 、 ’i/lが接続され、選択器23.24の
8入力には加算器19.20の出力x’rt、y’rt
が接続される。
選択器23.24は、A、8両入力のいずれか一方を排
他的論理和ゲート22の出力に応じて選択する。
他的論理和ゲート22の出力に応じて選択する。
例えば排他的論理和ゲート22の出力が1′の場合、即
ちレジスタ16.17の出力XI 、V+の示す点(こ
こではPA)と中点Pア、とが、枠Wの右辺(X−XR
)に対して同じ側にある場合、選択器23、24は加算
器19.20の出力XTH、yTt (即ち中点PTi
の座標)を選択する。これに対して排他的論理和ゲート
22の出力がO″の場合、即ちレジスタ16.17の出
力Xi 、 ylの示す点(ここではPA)と中点PT
iとが、枠Wの右辺(X=XR)に対して互いに反対側
にある場合、選択器23.24はレジスタ16.17の
出力XI 、 ylを選択する。
ちレジスタ16.17の出力XI 、V+の示す点(こ
こではPA)と中点Pア、とが、枠Wの右辺(X−XR
)に対して同じ側にある場合、選択器23、24は加算
器19.20の出力XTH、yTt (即ち中点PTi
の座標)を選択する。これに対して排他的論理和ゲート
22の出力がO″の場合、即ちレジスタ16.17の出
力Xi 、 ylの示す点(ここではPA)と中点PT
iとが、枠Wの右辺(X=XR)に対して互いに反対側
にある場合、選択器23.24はレジスタ16.17の
出力XI 、 ylを選択する。
第3図の例では、PAとPT、とが枠Wの右辺に対して
同じ側にある。したがって最初のサイクル(第0サイク
ル)ではPT、が選択される。
同じ側にある。したがって最初のサイクル(第0サイク
ル)ではPT、が選択される。
選択器23.24の出力はレジスタ16.17の入力に
接続される。レジスタ16.17には前記したようにタ
イミング制御回路18からのクロック信号CLKCが供
給される。しかして、選択器23.24の出力は、クロ
ック信号CLKCに応じてレジスタ1G。
接続される。レジスタ16.17には前記したようにタ
イミング制御回路18からのクロック信号CLKCが供
給される。しかして、選択器23.24の出力は、クロ
ック信号CLKCに応じてレジスタ1G。
17にロードされる。ここでは、第0サイクルにおいて
レジスタ16.17にロードされる選択器23.24の
出力(座標値)は、上記したようにPToのX座標XT
(+1 ’/座標y1oである。もし、PAとPToと
が枠Wの右辺に対して互いに反対側にあれば、第0サイ
クルにおいては、レジスタ16.17には点PAの座標
が再ロードされることになる。
レジスタ16.17にロードされる選択器23.24の
出力(座標値)は、上記したようにPToのX座標XT
(+1 ’/座標y1oである。もし、PAとPToと
が枠Wの右辺に対して互いに反対側にあれば、第0サイ
クルにおいては、レジスタ16.17には点PAの座標
が再ロードされることになる。
タイミング制御回路18からのクロック信号CLKCは
、前記したようにシフトレジスタ11.12にも供給さ
れる。これによりシフトレジスタ11.12では、(選
択器23.24の出力がレジスタIG、 17にロード
されるタイミングで)右に1ピツト算術シフトが行なわ
れる。この結果、前のサイクルにおけるシフトレジスタ
11.12の内容の1/2の値が新たなΔxl、ΔV+
(i−i+1)としてシフトレジスタ11.12内に求
められる。なお、上記のシフト時には、シフトレジスタ
11.12のMSB(Jl上位ビット)位置に7リツプ
フロツブ13.14からのサイン・ビットが入力される
。
、前記したようにシフトレジスタ11.12にも供給さ
れる。これによりシフトレジスタ11.12では、(選
択器23.24の出力がレジスタIG、 17にロード
されるタイミングで)右に1ピツト算術シフトが行なわ
れる。この結果、前のサイクルにおけるシフトレジスタ
11.12の内容の1/2の値が新たなΔxl、ΔV+
(i−i+1)としてシフトレジスタ11.12内に求
められる。なお、上記のシフト時には、シフトレジスタ
11.12のMSB(Jl上位ビット)位置に7リツプ
フロツブ13.14からのサイン・ビットが入力される
。
次のサイクルでは、シフトレジスタ11.12に求めら
れた新たなΔxl、Δy+ (ここではΔXl。
れた新たなΔxl、Δy+ (ここではΔXl。
Δy1の1/2値であるΔx2.ΔV2 )と、レジス
タ16.17にロードされた新たなXI 、V+(ここ
では点PT0の座標)を用いて、上記の場合と同様の演
算が行なわれる。即ち、加算器19.20により、前の
サイクルでの中点PTOと終点Paを結ぶ線分の新たな
中点PT1の座標X T 1 * V T Iが求めら
れる。次に比較器2)および排他的論理和ゲート22に
より、レジスタ16.17の示す点(ここでは前の中点
PTo)と加算器19.20により求められた新たな中
点PTlとが、枠Wの右辺(X=XR)に対して同じ側
にあるか否かが検出される。続いて、この検出結果によ
り、次の中点を求める際の始点となる座標がレジスタ1
6.17に求められる。そして、以上の動作を繰返すこ
とにより各サイクル毎に新たに求められる中点は、求め
る交点PRに近付く。
タ16.17にロードされた新たなXI 、V+(ここ
では点PT0の座標)を用いて、上記の場合と同様の演
算が行なわれる。即ち、加算器19.20により、前の
サイクルでの中点PTOと終点Paを結ぶ線分の新たな
中点PT1の座標X T 1 * V T Iが求めら
れる。次に比較器2)および排他的論理和ゲート22に
より、レジスタ16.17の示す点(ここでは前の中点
PTo)と加算器19.20により求められた新たな中
点PTlとが、枠Wの右辺(X=XR)に対して同じ側
にあるか否かが検出される。続いて、この検出結果によ
り、次の中点を求める際の始点となる座標がレジスタ1
6.17に求められる。そして、以上の動作を繰返すこ
とにより各サイクル毎に新たに求められる中点は、求め
る交点PRに近付く。
やがて、第nサイクルにおいて、加算器19の出力XT
+v(−XrL+ΔXn>がXRに一致すると、第4図
に示すように比較器2)から論理“1”の終了検出信号
ENDが出力される。この終了検出信号ENDはタイミ
ング制御回路18に供給される。
+v(−XrL+ΔXn>がXRに一致すると、第4図
に示すように比較器2)から論理“1”の終了検出信号
ENDが出力される。この終了検出信号ENDはタイミ
ング制御回路18に供給される。
このときレジスタ16.17の出力Xn、Vn (これ
らはPRの座標を示す)は、タイミング制御回路18か
らのクロック信@CLKCにより、同レジスタ16.1
7に再ロードされる。タイミング制御回路18は、比較
器2)から論理111 IIの終了検出信号ENDを受
取ると、第4図に示すように、終了信号5TOPを出力
し、且つクロック信号CLKCの出力を停止する。終了
信号5TOPは、線分PAPaと枠W〈ここでは枠Wの
右辺)との交点PRの検出終了を示す。したがって、論
理“1”の終了検出信号END出力時におけるレジスタ
16.17の再ロード内容(これをx 1ast、 V
1astと呼ぶ)の整数部が、求める交点PRのX座
標XR,V座標yRとなる。
らはPRの座標を示す)は、タイミング制御回路18か
らのクロック信@CLKCにより、同レジスタ16.1
7に再ロードされる。タイミング制御回路18は、比較
器2)から論理111 IIの終了検出信号ENDを受
取ると、第4図に示すように、終了信号5TOPを出力
し、且つクロック信号CLKCの出力を停止する。終了
信号5TOPは、線分PAPaと枠W〈ここでは枠Wの
右辺)との交点PRの検出終了を示す。したがって、論
理“1”の終了検出信号END出力時におけるレジスタ
16.17の再ロード内容(これをx 1ast、 V
1astと呼ぶ)の整数部が、求める交点PRのX座
標XR,V座標yRとなる。
さて、この実施例では、第1図の交点検出回路を第1交
点検出回路とすると、第1交点検出回路の他に第1交点
検出回路と同様の回路構成を有する第2乃至第4交点検
出回路が用意される。第2交点検出回路は線分PAP日
と枠Wの左辺との交点検出に用いられる。この第2交点
検出回路は、第1図に示すレジスタ15に枠Wの左辺の
X座標値が初期設定きれる点を除いて、第1交点検出回
路と同じである。また第3交点検出回路は線分PAPa
と枠Wの上辺との交点検出に、第4交点検出回路は線分
PA PHと枠Wの下辺との交点を求めるのに用いられ
る。第3.第4交点検出回路は、第1図の交点検出回路
においてx、yを相互に入替えたものとなる。第1閏の
交点検出回路を第3゜第4交点検出回路に用いる場合、
レジスタ15には指定枠Wの上辺、下辺のy座標が初期
設定される。
点検出回路とすると、第1交点検出回路の他に第1交点
検出回路と同様の回路構成を有する第2乃至第4交点検
出回路が用意される。第2交点検出回路は線分PAP日
と枠Wの左辺との交点検出に用いられる。この第2交点
検出回路は、第1図に示すレジスタ15に枠Wの左辺の
X座標値が初期設定きれる点を除いて、第1交点検出回
路と同じである。また第3交点検出回路は線分PAPa
と枠Wの上辺との交点検出に、第4交点検出回路は線分
PA PHと枠Wの下辺との交点を求めるのに用いられ
る。第3.第4交点検出回路は、第1図の交点検出回路
においてx、yを相互に入替えたものとなる。第1閏の
交点検出回路を第3゜第4交点検出回路に用いる場合、
レジスタ15には指定枠Wの上辺、下辺のy座標が初期
設定される。
このような第1乃至第4交点検出回路を同時に起動する
ことにより、指定線分PA PBと指定枠Wとの交点が
全て求められる。なお、第3図の例では、線分PA P
aと枠Wの交点は、枠Wの左辺、上辺および下辺には存
在しない。この場合、マイクロプロセッサは第1交点検
出回路のみ起動する。
ことにより、指定線分PA PBと指定枠Wとの交点が
全て求められる。なお、第3図の例では、線分PA P
aと枠Wの交点は、枠Wの左辺、上辺および下辺には存
在しない。この場合、マイクロプロセッサは第1交点検
出回路のみ起動する。
第1乃至第4交点検出回路には、直線線発生器が接続さ
れるようになっている。したがって直線線発生器は、マ
イクロプロセッサにより起動された全ての交点検出回路
から終了信号5TOP信号が出力されると、対応する交
点検出回路で検出された交点の座標に基づいて直線(第
3図の例であれば、線分PA PR)を発生することが
できる。
れるようになっている。したがって直線線発生器は、マ
イクロプロセッサにより起動された全ての交点検出回路
から終了信号5TOP信号が出力されると、対応する交
点検出回路で検出された交点の座標に基づいて直線(第
3図の例であれば、線分PA PR)を発生することが
できる。
なお、第1乃至第4交点検出回路で求められた交点が枠
W外に存在することがある。しかし、この種の交点は、
枠Wの左右辺のX座標または上下辺のy座標との比較に
より、P!Iwiにリジェクトできる。
W外に存在することがある。しかし、この種の交点は、
枠Wの左右辺のX座標または上下辺のy座標との比較に
より、P!Iwiにリジェクトできる。
ところで線分PNP日と枠Wの交点が、枠Wの左辺、右
辺、上辺および下辺のいずれに存在するかは、マイクロ
プロセッサにより予め検出することが可能である。例え
ば線分PA PBと枠Wの左右辺との交点の有無は、P
A、PBのX座標と左右辺のX座標との比較により検出
可能である。また線分PA Paと枠Wの上下辺との交
点の有無は、PA、PBのy座標と上下辺のy座標との
比較により検出可能である。
辺、上辺および下辺のいずれに存在するかは、マイクロ
プロセッサにより予め検出することが可能である。例え
ば線分PA PBと枠Wの左右辺との交点の有無は、P
A、PBのX座標と左右辺のX座標との比較により検出
可能である。また線分PA Paと枠Wの上下辺との交
点の有無は、PA、PBのy座標と上下辺のy座標との
比較により検出可能である。
[発明の効果]
以上詳述したようにこの発明によれば、指定線分と指定
枠との交点の座標検出に必要な浮動小数点演算を含む処
理が、ハードウェア回路により高速に行なえる。しかも
マイクロプロセッサ等は、本回路による演算と並行して
次の演算の準備を行なえることから、処理の一層の轟速
化が図れる。
枠との交点の座標検出に必要な浮動小数点演算を含む処
理が、ハードウェア回路により高速に行なえる。しかも
マイクロプロセッサ等は、本回路による演算と並行して
次の演算の準備を行なえることから、処理の一層の轟速
化が図れる。
第1図はこの発明の一実施例に係る交点検出回路のブロ
ック構成図、第2図は指定線分と指定枠との交点を説明
する図、第3図はこの発明の詳細な説明するための図、
第4図は動作を説明するためのタイミングチャートであ
る。 11、12・・・シフトレジスタ、15〜17・・・レ
ジスタ、18・・・タイミング制御回路、19.20・
・・加算器、2)・・・比較器、22・・・排他的論理
和ゲート(XOR)、23゜24・・・選択器。
ック構成図、第2図は指定線分と指定枠との交点を説明
する図、第3図はこの発明の詳細な説明するための図、
第4図は動作を説明するためのタイミングチャートであ
る。 11、12・・・シフトレジスタ、15〜17・・・レ
ジスタ、18・・・タイミング制御回路、19.20・
・・加算器、2)・・・比較器、22・・・排他的論理
和ゲート(XOR)、23゜24・・・選択器。
Claims (2)
- (1)指定された線分の始点と終点の第1の方向の座標
の差の1/2値である第1差分値がその小数部を含めて
初期設定され、クロック信号に応じて右に1ビット算術
シフトする第1シフトレジスタと、 上記線分の始点と終点の上記第1の方向と直交する第2
の方向の座標の差の1/2値である第2差分値がその小
数部を含めて初期設定され、上記クロック信号に応じて
右に1ビット算術シフトする第2シフトレジスタと、 上記線分の始点の第1の方向の座標値が初期設定される
第1レジスタと、 上記線分の始点の第2の方向の座標値が初期設定される
第2レジスタと、 上記第1レジスタおよび上記第1シフトレジスタの各出
力間の加算を行なう第1加算器と、上記第2レジスタお
よび上記第2シフトレジスタの各出力間の加算を行なう
第2加算器と、上記線分との交点検出が要求される指定
枠の第2の方向の指定辺の第1の方向の座標値と上記第
1加算器の加算結果とを比較し、大小比較結果を示す第
1比較信号および一致検出結果を示す第2比較信号を出
力する比較器と、 この比較器から出力される上記第1比較信号を上記第1
差分値の符号に応じてレベル反転する論理回路と、 この論理回路の出力に応じて上記第1レジスタの出力お
よび上記第1加算器の加算結果のいずれか一方を選択す
る第1選択器と、 上記論理回路の出力に応じて上記第2レジスタの出力お
よび上記第2加算器の加算結果のいずれか一方を選択す
る第2選択器と、 上記クロック信号に応じ、上記第1選択器の出力を上記
第1レジスタに、上記第2選択器の出力を上記第2レジ
スタに、それぞれロードするロード手段と、 を具備し、 上記比較器から一致を示す上記第2比較信号が出力され
た際に上記第1、第2レジスタにロードされたデータが
上記線分と指定枠の第2の方向の指定辺との交点の第1
、第2の方向の座標値を示すことを特徴とする交点検出
回路。 - (2)上記論理回路が排他的論理和ゲートであることを
特徴とする特許請求の範囲第1項記載の交点検出回路。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP16805385A JPS6227872A (ja) | 1985-07-30 | 1985-07-30 | 交点検出回路 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP16805385A JPS6227872A (ja) | 1985-07-30 | 1985-07-30 | 交点検出回路 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPS6227872A true JPS6227872A (ja) | 1987-02-05 |
Family
ID=15860955
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP16805385A Pending JPS6227872A (ja) | 1985-07-30 | 1985-07-30 | 交点検出回路 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS6227872A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5031114A (en) * | 1987-03-31 | 1991-07-09 | Kabushiki Kaisha Toshiba | Method and apparatus for clipping figures against a clipping frame using line segment cross point and area detection |
-
1985
- 1985-07-30 JP JP16805385A patent/JPS6227872A/ja active Pending
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5031114A (en) * | 1987-03-31 | 1991-07-09 | Kabushiki Kaisha Toshiba | Method and apparatus for clipping figures against a clipping frame using line segment cross point and area detection |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4218751A (en) | Absolute difference generator for use in display systems | |
| US4910698A (en) | Sine wave generator using a cordic algorithm | |
| JPH053032B2 (ja) | ||
| JPS6158839B2 (ja) | ||
| US4389723A (en) | High-speed pattern generator | |
| JPH08329261A (ja) | パラメータ曲線発生器 | |
| JPS6227872A (ja) | 交点検出回路 | |
| US20160119132A1 (en) | Method and device for generating a hash value | |
| JPH06314091A (ja) | 輪郭塗り潰し方法及びその回路 | |
| JP2589884B2 (ja) | ビットサーチ回路 | |
| JP2600502B2 (ja) | 情報処理装置 | |
| JP3166781B2 (ja) | 加算回路 | |
| JPH0695854A (ja) | 除算演算装置 | |
| KR100206152B1 (ko) | 평균 위상차 보상을 위한 위상차 데이타 처리 제어방법 | |
| SU1534455A1 (ru) | Устройство дл отображени графической информации на экране электронно-лучевой трубки | |
| RU1803912C (ru) | Суммирующее устройство | |
| JPH0357086A (ja) | 補間発生回路 | |
| JPH02202738A (ja) | シリアルデータ受信回路 | |
| JPS61131137A (ja) | 複数アドレスの連続生成方式 | |
| JPS62282369A (ja) | 直線補間回路 | |
| JPS60200371A (ja) | 図形発生装置 | |
| JPH0477349B2 (ja) | ||
| JPS5813916B2 (ja) | 円弧信号発生方式 | |
| JPH01128090A (ja) | 表示制御装置 | |
| JPH04344950A (ja) | アドレス・トレース回路 |