JPH0214714B2 - - Google Patents
Info
- Publication number
- JPH0214714B2 JPH0214714B2 JP55082484A JP8248480A JPH0214714B2 JP H0214714 B2 JPH0214714 B2 JP H0214714B2 JP 55082484 A JP55082484 A JP 55082484A JP 8248480 A JP8248480 A JP 8248480A JP H0214714 B2 JPH0214714 B2 JP H0214714B2
- Authority
- JP
- Japan
- Prior art keywords
- coordinate
- circle
- data
- calculation
- range
- 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.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/20—Function-generator circuits, e.g. circle generators line or curve smoothing circuits
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Generation (AREA)
Description
本発明はCRT(カソード・レイ・チユーブ)、
プリンター等の表示装置に表示すべき画像データ
を作成する為の画像制御装置に関し、特に円図形
もしくは円図形の一部(弧)の描画データを作成
するための機構を有する画像制御装置に関する。 従来の画像データ作成用の制御装置は主として
2種類に大別される。かかる2種類の制御装置に
は後述するように乗算機構や関数演算機構等複雑
でかつ長時間の演算を要する機能が具備されてお
り、高速でデータを作成することができなかつ
た。しかしながら、この様な機能は従来の制御方
式には欠くべからざるもので、円図形等の画像デ
ータを高速で作成することは困難であつた。以下
に、円画像データを作成する従来の制御方式を提
示して上記欠点を明らかにする。 その第1は、円の方程式x2+y2=r2を基にして
X座標、又はY座標を1座標単位(1ドツト単
位)で変更しながら描画すべき円上の点を表示装
置のドツト位置として算出していく方式である。
より具体的な説明を加えると以下の如くとなる。 中心座標(h,k)、半径rの円を点(h+r,
k)より描画を開始し、X座標方向に1座標単位
で座標を変更しながらY座標を算出し、円描画を
行なう場合、 X座標(xn)は xn=h+r,(h+r)−1,(h+r)−2,…
…, h,……h−(r−1),h−r …… のように(h+r)から(h−r)の座標まで
“1”ずつ減算され、その都度Y座標が、 yn=±√2−(−)2+k …… の式から算出される。 この第1の円描画方式では、式から明らかな
ように表示座標1ドツトの算出毎に2回の整数乗
算、1回の実数平方根演算、3回の整数加減算を
必要とする。その為、乗算回路、平方根演算回
路、加減算回路を用いた長時間の演算を必要とし
描画が遅れるという欠点がある。更にX座標もし
くはY座標いづれかを基準として1座標単位で変
更しながら、その時のY座標(X座標)を求めて
いる為、第1図に示すように0度から45度、135
度から225度、315度から360度(0度)の間の円
周上に描画されるドツトの間隔が拡がり、描画精
度及び品質が劣る等の欠点もある。 第2の従来より実施されている円描画方式は、
円周上の点を三角関数を含む数式によつて表現
し、1単位角度毎に描画すべきドツトのX座標、
Y座標を算出、変更する方式であり、より具体的
な説明を加えると以下の如くとなる。 中心座標(h,k)、半径rの円において、円
周上の点(xn,yn)は、 xn=r・cosθn+h …… yn=r・sinθn+k …… の式によつて表現される。ここで、θnを例えば
1度毎に0度から360度まで360回変更し、角度変
更毎に上式からX,Y座標を算出する。 この描画方式では1ドツトの描画毎に、2回の
実数三角関数演算、2回の実数乗算、2回の整数
加算を必要とする為、これも描画時間が長くなる
という欠点を除去することはできない。一方描画
時間短縮を目的として、あらかじめ三角関数テー
ブルをメモリに用意しておき、そのテーブルを参
照する事によつて、上記した2回の実数三角関数
演算を省略することも考えられるが、関数テーブ
ルとして大容量メモリを必要とし、一般性、拡張
性に乏しくなるという欠点が生じてくる。しか
も、いずれにせよ少なくとも2回の実数乗算が実
行されなければならないので演算時間は長く、か
つそのための乗算機構などを用意しなければなら
ないのでハードウエア機構が複雑化してしまう。 この第2の描画方式では角度をドツト描画位置
変更の単位としているので、円周上に描画される
ドツトの間隔は、その半径が一定であれば等間隔
となる。従つて第1の従来方式と比較して描画品
質は向上する。しかしながら、半径の値に従がつ
て角度変更の単位を最適に変更する手段を用意し
ないと、半径の値がどのような円であろうと、例
えば半径が1であろうと1000であろうと同数の描
画ドツト数となり、半径が小さい場合には同一座
標への無駄なドツト多重描画、又は半径が大きく
なるにつれて描画ドツト間隔が拡がりすぎるとい
う不都合が生じる。第2図は、この欠点を説明す
るための描画像図である。この図の例では角度変
更の単位を15度としたものであつて、半径が1の
小円であつても、半径が8の大円であつても、総
描画ドツト数はいづれも360/15=24点を必要と
する。従つて、半径が1の小円では同一座標に多
数回のドツト描画が実行され、又半径が8の円で
は、描画ドツトの間隔が拡がり表示品質が劣化し
てしまう。 尚、特に図示していないが、これら2種の従来
方式では表示画面への表示位置(ドツト位置)を
算出するのに、乗算演算回路や平方根演算回路等
複雑なハードウエア機構を必要とする。従つて、
処理装置(例えばマイクロコンピユータ等)が大
型化すると共に加減算に比べて数十倍以上もの演
算処理時間を費さねばならないということが、特
に大きな欠点であつた。 本発明の目的は、極めて簡単な演算処理だけを
用いて短時間で画像データを作成する画像制御装
置を提供することで、特に円図形あるいは円図形
の一部(円弧)を描画するに適した画像制御装置
を提供する事にある。 本発明は、直交座標系でX軸及びY軸と交差す
る円の交点データを記憶する記憶部と、前記X軸
と交差する円の交点データのうちそのY座標デー
タを所定数づつ変化させた時の円周上でのX座標
データをX=√2−2(rは半径)から算出す
る第1の演算部と、前記Y軸と交差する円の交点
データのうちそのX座標データを所定数づつ変化
させた時の円周上でのY座標データをY=√2−
X2から算出する第2の演算部と、前記第1及び
第2の演算部での演算実行の切り換えを制御する
制御部とを含み、前記制御部はX座標の変化に比
べてY座標の変化が大きい範囲では前記第1の演
算部を用いて演算を行ない、Y座標の変化に比べ
てX座標の変化が大きい範囲では前記第2の演算
部を用いて演算を行なうように制御することを特
徴とする。 本発明によれば、座標(X,Y)を中心として
半径Rの円もしくはその円の一部(円弧)を表示
面上に描画すべき表示位置制御データ(画像デー
タ)を作成する場合、X軸を始線として反時計回
りに0゜〜45゜の第1の範囲、45゜〜135゜の第2の範
囲、135゜〜225゜の第3の範囲、225゜〜315゜の第4
の範囲、315゜〜360゜の第5の範囲に分割し、前記
円を第1及び第5の範囲に描く時は描画データ作
成開始点(X+R、Y)を記憶部から読み出し、
そのY座標を所定の値づつ変化せしめ、その時の
X座標を第1の演算部で求め、前記円を第2の範
囲に描く時は描画データ作成開始点(X、Y+
R)データを記憶部から読み出して、そのX座標
を所定の値づつ変化せしめその時のY座標を第2
の演算部で求め、前記円を第3の範囲に描く時は
描画データ作成開始点(X−R、Y)のデータを
記憶部から読み出し、そのY座標を所定の値づつ
変化せしめその時のX座標を第1の演算部で求
め、前記円を第4の範囲に描く時は描画データ作
成開始点(X、Y−R)のデータを記憶部から読
み出し、そのX座標を所定の値づつ変化せしめて
その時のY座標を第2の演算部で求め、夫々の演
算結果を画像データとして設定するように制御さ
れる。前記X(又はY)座標を所定の値づつ変化
せしめた時の前記Y(又はX)座標は、円の方程
式X2+Y2=R2から得られる前記Y(又はX)座
標の値のうち小数部を四捨五入して得られる整数
値データに規格化すれば処理が簡単になる。ここ
で、座標とはX−Y直交座標系を意味し、その座
標データ(X,Y)は表示面上で、n番目の主走
査線がX、m番目の副走査線がYに対応するもの
と考えてもよい。このようにして作成された画像
データで指示された表示面上の対応する位置(画
素)にドツトパターンが描画されて所望の円もし
くは円弧が表示される。 本発明によれば、第1、第3、第5の範囲に描
画される円に対してはY座標を基準としてX座標
を求め、第2及び第4の範囲に描画される円に対
してはX座標を基準としてY座標を求めるように
設定しているので、従来の第1図に示すようなド
ツト表示間隔にムラを出すような画像データを作
成したり、あるいは第2図に示すような半径の違
いに応じてドツト表示間隔が拡がりすぎたり又は
同一座標(同一ドツト)への多重表示を行なつた
りするような画像データを作成したりするような
ことは無く、等間隔で無駄のない円もしくは円弧
の表示位置データを得ることができる。又、小数
演算部を四捨五入して演算データを作成している
ため乗算や平方根演算の複雑な演算回路は一切不
要である。従つて演算回路の簡略化ができ高速で
かつ表示品質のよい画像データを作成することが
できる。 以下に、図面を参照して本発明の一実施例を詳
細に説明する。まず第3図に本発明で作成した画
像データに基づいて表示面上に円を描画した様子
を示す。これは中心座標(h,k)、半径8の円
を描画したときの一実施例を示す描画図である。
このとき全円は、45度毎に8個の1/8円弧に分割
され、その1/8円弧を8回描画開始点及び描画方
向を変更する事によつて全円周の描画位置データ
が作成され、このデータが表示部に送られて全円
周が描画される。315度から45度(第1及び第5
の範囲)、135度から225度(第3の範囲)の1/8円
弧描画に関しては、描画データ作成開始点を中心
から方向0度及び180度の円周上の点に選択し、
Y座標を1座標単位で移動させたときのX座標値
を算出して描画を行ない、45度から135度(第2
の範囲)、225度から315度(第4の範囲)の1/8円
弧描画に関しては描画データ作成開始点を中心か
ら方向90度及び270度の円周上の点に選択し、X
座標を1座標単位で移動させたときのY座標値を
算出して描画を行なう。 以下、本発明の一実施例における円描画位置デ
ータのX,Y座標算出の為のアルゴリズムについ
て詳細に説明する。 第3図に示す中心(h,k)、半径rの円に対
して、0度から45度に至る1/8円弧描画を例にあ
げると、円の方程式は (x−h)2+(y−k)2=r2 …… この1/8円弧描画の場合は前述したとうり、Y
座標の1座標変更毎に円周上の画像データを算出
するので式を変形して x=√2−(−)2+h …… ここで座標は全て“正の整数”で定義されなけ
れば、表示面上にドツトパターンを表示すること
ができないので式で定まるxの値に対してその
整数部を“”、小数部を“F”で表現すると、 x=√2−(−)2+h=I−F …… ここで式をそのままの形で演算し、X座標を
直接算出すると2回の整数乗算、1回の整数減
算、1回の実数平方根演算を必要とすることが容
易に理解できる。しかしながら実数平方根や乗算
演算は長時間の演算時間を必要とするので描画速
度が遅くなり好ましくない。従つて、本実施例で
は式の小数部分Fにのみ注目し、これによつて
描画ドツト位置のXあるいはY方向の変位分を検
出して描画すべきドツト位置の座標を決定するよ
うに工夫している。この方式によれば後述するよ
うに、わずかな整数加減算のみで描画ドツト座標
位置を指示する画像データを求めることができ、
極めて高速度で描画データの作成を行なうことが
できる。 座標は一般に“正の整数”で定義されるので、
得られる小数部分Fを四捨五入する事によつて直
線的に変化する円の軌跡を座標上のドツトとして
近似することができる。このため式において、
Fが1/2未満の場合は、整数部“I”には変更が
なく、Fが1/2以上の場合は、整数部“I”は1
だけ減算された値となるように設定する。即ち、
Fが1/2以上となつた場合には、描画ドツトデー
タのX座標を−1だけ移動させて各範囲での円の
座標データを規格化する。従つて式に四捨五入
の条件を加味すると、 F=(I−h)−√2−(−)2≧1/2
…… となり、これを変形して {r2−(y−k)2}−{(I−h)2 −(I−h)+1/4}≦0 …… とすることができる。この範囲(0゜〜45゜)では
描画開始点が中心から0度の円周上の点(h+
r、k)に定められるので、y=k、I=r+h
を代入すると式は r−1/4≦0 …… となる。整数演算を行なう為1/4の値を1に切上
げてもrが整数値であるので支障は無い。従つ
て、描画開始点では式は r−1≦0 …… となり、これは描画開始点における小数部演算の
中間結果Dの初期値となる。この式の正負を判断
する事により、式における四捨五入の判断をす
る事が可能となることは容易に理解できる。今r
=8であるので式は満足されず、小数部Fは0
となる。一方、式が満足されるときは、四捨五
入の条件が満足されるので、その時のX座標の整
数部Iを1だけ減算してX座標を−1だけ移動す
ればよい。 次に、小数部の演算を実行して次描画点のX座
標を求める必要があるが、式に示す小数部Fの
値を直接求めると平方根演算を必要とし処理が大
変である。しかしながら、実際の描画ではY座標
が+1づつ変化する毎に、X座標が変化しない
か、あるいは−1だけ変化するかのいずれかであ
る。そしてこの変化の有無は前記中間結果Dが正
となるか負となるかによつて決定されるわけであ
る。故に、次の描画点での中間結果Dの変位を求
めればよい。即ち、式の左辺の変位を求めるこ
とによつて次の中間結果を求めることができる。 ここで、式の左辺を直接演算すると多数回の
実数乗除算が必要となるので、演算時間が長くな
る。従つて、式の左辺が0以上のとき、X座標
は変化せずY座標のみが1だけ加算されればよ
い。故に、次描画点の座標データAに対しては {r2−(y−k+1)2}−{(I−h−N)2 −(I−h−N)+1/4} ……′ となり、前描画点Bに対しては {r2−(y−k)2}−{(I−h−N)2 −(I−h−N)+1/4} ……″ となるから、中間結果Dの変位D1はその差をと
つて、 {r2−(y−k+1)2}−{(I−h−N)2 −(I−h−N)+1/4} −{r2−(y−k)2}+{(I−h−N)2 −(I−h−N)+1/4} =−{2(y−k)+1} …… となる。 一方、式の左辺が0未満のときは四捨五入条
件を満足するので、次描画点での中間結果はY座
標が+1、X座標が−1されるため {r2−(y−k+1)2}−{(I−h−N−1)2 −(I−h−N−1)+1/4} …… となる。故に、中間結果Dのこの時の変位は
−″で算出されるので、 {r2−(y−k+1)2}−{(I−h−N−1)2 −(I−h−N−1)+1/4} −{r2−(y−k)2}+{(I−h−N)2 −(I−h−N)+1/4} =2{(I−h)−N}−{2(y−k)+1}−2
…… となる。ここで、−{2(y−k)+1}は変位D1
と同値であるため、これを除く式、すなわち2
{(I−h)−N}−2を変位D2として算出し、そ
の結果からD1分を引けば解が求まる。 なお、NはX座標の変化回路数を示す。 ここで、第4図に本発明の画像制御装置の概略
を示すブロツク図を提示する。第4図において、
メモリ100は複数のレジスタ等で構成されたも
ので、CPUあるいは外部メモリから送られるX,
Y座標と円との交点、即ち画像データ作成開始点
が設定される。このメモリ100からのデータは
Y座標を所定数づつ変化させた時のX座標を前述
の方式に基いて算出する第1の演算部101と、
X座標を所定数づつ変化させた時のY座標を算出
する第2の演算部102とに送られ、夫々の演算
結果が画像データ格納メモリ103に出力され
る。尚、演算途中結果はメモリ100に一時格納
するものとする。メモリ103から表示部104
へ画像データが表示信号に変換されて転送される
ことにより所望の円あるいは円弧の表示を可能な
らしめる。105は各部のタイミングを制御する
信号を出力する制御部である。 ここで、メモリ100に格納されたデータにつ
いてより詳しく説明する。分割された角度(第1
〜第5の範囲)のうち例えば第1の範囲に表示す
べき画像データを作成する場合、初期値X、初期
値Yとして描画開始点の座標X=h+8、Y=k
が設定され、小数部演算の中間結果Dとして描画
開始時においては、式で与えられた値r−1=
7が設定される。更に小数部演算の変位D1とし
て描画開始時においては式において、Yがkで
あるから−1が設定される。さらに、小数部演算
の結果が0未満となつたときに追加実行される値
D2として式で示される小数部演算変位式の一
部である2{(I−h)−N}−2の計算結果が格納
される。描画開始時においてN=0、I=rであ
るので、D2として2{(r−h)−1}が設定され
る。X座標の方向変化が生ずるたびに、前記2
(I−h−N)−2のNの値が1だけ増加されるの
で、その結果D2は2だけ減算される。 第5図は描画演算実行回路のブロツク図であり
CPUから送出される命令又はパラメータがデー
タ及び制御バス10を経由してレジスタD,D1,
D2,X,Y,DCに設定される。ここで、レジス
タD,D1,D2には前述した中間結果D、変位D
1,D2が夫々格納される。さらにレジスタX,
Yには夫々描画開始座標が格納され、レジスタ
DCには描画範囲に描画すべきドツト数が格納さ
れる。 さらに描画開始命令が与えられたとき描画指示
信号発生回路(フリツプフロツプ)42を起動す
る為の信号線11がフリツプフロツプ42のセツ
ト端子に接続される。20aから20pは各々切
換ゲート群であり、G入力が“1”となつたと
き、入力信号が出力に接続され、G入力が“0”
のときは、出力には信号が出力されず開放状態と
なる。35,36,37は3バス形式を持つた演
算器のデータバスであり、被演算数が35へ、演
算数が36へ、ALU50の出力である演算結果
が37へそれぞれ接続される。ALU50は演算
器であつて、オア・ゲート45gよりA/Sに供
給される信号線が“1”のとき加算を“0”のと
き減算を実行し、被演算数がバス35から、演算
数がバス36からそれぞれ入力され、演算結果が
バス37へ出力される。42は描画指示信号発生
回路であり、CPUから描画開始命令が与えられ
たとき信号線11に発生する信号DRAW
STARTによつて出力が能動状態となり、AND
ゲート41から供給されるリセツト信号が“1”
になつたとき非能動状態となる。42の出力は描
画タイミング発生回路44に供給され、第6図に
示されるタイミング信号E1〜E7が順次発生さ
れる。40は零検出回路でありレジスタDCの内
容が全ビツト“0”となつたとき出力は“1”と
なり、アンドゲート41にその出力は接続され
る。アンドゲート41の一方の入力には描画タイ
ミング信号E7が接続されており、入力が共に
“1”となつたときアンドゲート41の出力であ
るDRAW END信号(第6図参照)が“1”と
なり描画指示回路42を非能動とする。フリツプ
フロツプ43は描画タイミングE2のときのレジ
スタDのデータ正負を記憶する。43の出力は4
5c,d,eに供給され、第5図に示す演算処理
制御を可能とする。30及び31はデータ発生回
路であり、各々データ“1”及びデータ“2”を
発生する。60は映像制御回路であり本描画演算
実行回路にて演算生成された描画位置座標X,Y
が供給され実際に描画を実行する。 以下、第5図の回路動作について説明する。
CPUよりパラメータ設定及び描画開始命令が与
えられると信号線11にDRAW START信号が
発生し描画指示信号発生器42の出力DRAW―
INGが“1”となり描画タイミング信号発生器
44から描画タイミング信号がE1からE7の順
に発生し、タイミングE7においてDの値が全て
“0”でなければ、アンドゲート41の出力信号
であるDRAW ENDは“0”のままであり、引
き続きE1からE7の描画タイミング信号が発生
し、描画が続行される。タイミングE7において
DCの値が全て“0”であれば上記DRAW END
は“1”となり、描画指示信号発生器42をリセ
ツトし、描画を終了する。 次に、描画タイミングE1において実行される
“D+D1→D”の演算実行を例に取つて回路動作
を説明する。描画タイミング信号E1が出力され
るとオアゲート45a及び45gの出力が共に
“1”となり、切換ゲート群20a,20b,2
0dが活性化され、バス35にはレジスタDの内
容が、バス36にはレジスタD1の内容が出力さ
れ、各々ALU50に入力される。ALU50の出
力、即ち演算結果“D+D1”はバス37、及び
切換ゲート20bを経由してレジスタDに読み込
まれ“D+D1→D”の演算が実行される。描画
実行タイミングE2以降の演算に関しては、上記
E1時の説明と類似しているので省略する。 この様な回路動作の下で実行される円図形の画
像データ作成過程を第7図及び第8図の手順図を
参照して以下に説明する。 第7図に示すように画像データ作成開始時に、
メモリ100内のレジスタX,Y,DC,D,
D1,D2に夫々前述したデータを設定する。この
後の、描画開始命令の入力により第8図に示す流
れ図に沿つて、タイミング制御の下で画像データ
作成処理を実行していく。 第8図の流れ図に沿つて0゜〜45゜の範囲に描画
される円図形の画像データを求める。 まず、レジスタYに設定されている開始点デー
タ、この場合にはX=h+8、Y=kが、第3図
での点a0を示す画像データとして画像制御回路6
0に転送される。この時、タイミングE1でレジ
スタDとD1との内容がALU50で加算される。
即ちD=r−1=7、D1=−(2Y+1)=−1(∵
Y=0)だからD+D1=7−1=6となり、デ
ータ6がレジスタDに設定される。更に、タイミ
ングE2でレジスタD1の内容が(−2)加算され、
−3がレジスタD1に設定される。この時D=6
>0だからタイミングE6での処理にジヤンプす
る。この期間はYの内容を+1変化させる処理を
実行する期間で、Y=1がレジスタYに設定さ
れ、次の画像データ作成の準備をする。一方レジ
スタDCには0゜〜45゜の範囲に描画すべきドツト数
7が設定されており、1ドツト作成する毎に1づ
つ減算される。例えばリングカウンタによりその
値が6に設定される(タイミングE7)。 次に再びタイミングE1に戻り、Y座標が+1
されたk+1でのX座標の算出が開始される。手
順は前述した過程を繰り返して実行すればよい。
即ち、各タイミングE1〜E7で第8図に示す加算
を実行し、その演算結果特にレジスタDとDCと
の内容を調べて、次に実行すべき処理を決定す
る。この処理は第8図に示す単純な加減算処理で
よい。 0゜〜45゜の範囲に描画される点の値を第8図の
流れ図に沿つて算出すると下に示す表1のような
結果が得られる。
プリンター等の表示装置に表示すべき画像データ
を作成する為の画像制御装置に関し、特に円図形
もしくは円図形の一部(弧)の描画データを作成
するための機構を有する画像制御装置に関する。 従来の画像データ作成用の制御装置は主として
2種類に大別される。かかる2種類の制御装置に
は後述するように乗算機構や関数演算機構等複雑
でかつ長時間の演算を要する機能が具備されてお
り、高速でデータを作成することができなかつ
た。しかしながら、この様な機能は従来の制御方
式には欠くべからざるもので、円図形等の画像デ
ータを高速で作成することは困難であつた。以下
に、円画像データを作成する従来の制御方式を提
示して上記欠点を明らかにする。 その第1は、円の方程式x2+y2=r2を基にして
X座標、又はY座標を1座標単位(1ドツト単
位)で変更しながら描画すべき円上の点を表示装
置のドツト位置として算出していく方式である。
より具体的な説明を加えると以下の如くとなる。 中心座標(h,k)、半径rの円を点(h+r,
k)より描画を開始し、X座標方向に1座標単位
で座標を変更しながらY座標を算出し、円描画を
行なう場合、 X座標(xn)は xn=h+r,(h+r)−1,(h+r)−2,…
…, h,……h−(r−1),h−r …… のように(h+r)から(h−r)の座標まで
“1”ずつ減算され、その都度Y座標が、 yn=±√2−(−)2+k …… の式から算出される。 この第1の円描画方式では、式から明らかな
ように表示座標1ドツトの算出毎に2回の整数乗
算、1回の実数平方根演算、3回の整数加減算を
必要とする。その為、乗算回路、平方根演算回
路、加減算回路を用いた長時間の演算を必要とし
描画が遅れるという欠点がある。更にX座標もし
くはY座標いづれかを基準として1座標単位で変
更しながら、その時のY座標(X座標)を求めて
いる為、第1図に示すように0度から45度、135
度から225度、315度から360度(0度)の間の円
周上に描画されるドツトの間隔が拡がり、描画精
度及び品質が劣る等の欠点もある。 第2の従来より実施されている円描画方式は、
円周上の点を三角関数を含む数式によつて表現
し、1単位角度毎に描画すべきドツトのX座標、
Y座標を算出、変更する方式であり、より具体的
な説明を加えると以下の如くとなる。 中心座標(h,k)、半径rの円において、円
周上の点(xn,yn)は、 xn=r・cosθn+h …… yn=r・sinθn+k …… の式によつて表現される。ここで、θnを例えば
1度毎に0度から360度まで360回変更し、角度変
更毎に上式からX,Y座標を算出する。 この描画方式では1ドツトの描画毎に、2回の
実数三角関数演算、2回の実数乗算、2回の整数
加算を必要とする為、これも描画時間が長くなる
という欠点を除去することはできない。一方描画
時間短縮を目的として、あらかじめ三角関数テー
ブルをメモリに用意しておき、そのテーブルを参
照する事によつて、上記した2回の実数三角関数
演算を省略することも考えられるが、関数テーブ
ルとして大容量メモリを必要とし、一般性、拡張
性に乏しくなるという欠点が生じてくる。しか
も、いずれにせよ少なくとも2回の実数乗算が実
行されなければならないので演算時間は長く、か
つそのための乗算機構などを用意しなければなら
ないのでハードウエア機構が複雑化してしまう。 この第2の描画方式では角度をドツト描画位置
変更の単位としているので、円周上に描画される
ドツトの間隔は、その半径が一定であれば等間隔
となる。従つて第1の従来方式と比較して描画品
質は向上する。しかしながら、半径の値に従がつ
て角度変更の単位を最適に変更する手段を用意し
ないと、半径の値がどのような円であろうと、例
えば半径が1であろうと1000であろうと同数の描
画ドツト数となり、半径が小さい場合には同一座
標への無駄なドツト多重描画、又は半径が大きく
なるにつれて描画ドツト間隔が拡がりすぎるとい
う不都合が生じる。第2図は、この欠点を説明す
るための描画像図である。この図の例では角度変
更の単位を15度としたものであつて、半径が1の
小円であつても、半径が8の大円であつても、総
描画ドツト数はいづれも360/15=24点を必要と
する。従つて、半径が1の小円では同一座標に多
数回のドツト描画が実行され、又半径が8の円で
は、描画ドツトの間隔が拡がり表示品質が劣化し
てしまう。 尚、特に図示していないが、これら2種の従来
方式では表示画面への表示位置(ドツト位置)を
算出するのに、乗算演算回路や平方根演算回路等
複雑なハードウエア機構を必要とする。従つて、
処理装置(例えばマイクロコンピユータ等)が大
型化すると共に加減算に比べて数十倍以上もの演
算処理時間を費さねばならないということが、特
に大きな欠点であつた。 本発明の目的は、極めて簡単な演算処理だけを
用いて短時間で画像データを作成する画像制御装
置を提供することで、特に円図形あるいは円図形
の一部(円弧)を描画するに適した画像制御装置
を提供する事にある。 本発明は、直交座標系でX軸及びY軸と交差す
る円の交点データを記憶する記憶部と、前記X軸
と交差する円の交点データのうちそのY座標デー
タを所定数づつ変化させた時の円周上でのX座標
データをX=√2−2(rは半径)から算出す
る第1の演算部と、前記Y軸と交差する円の交点
データのうちそのX座標データを所定数づつ変化
させた時の円周上でのY座標データをY=√2−
X2から算出する第2の演算部と、前記第1及び
第2の演算部での演算実行の切り換えを制御する
制御部とを含み、前記制御部はX座標の変化に比
べてY座標の変化が大きい範囲では前記第1の演
算部を用いて演算を行ない、Y座標の変化に比べ
てX座標の変化が大きい範囲では前記第2の演算
部を用いて演算を行なうように制御することを特
徴とする。 本発明によれば、座標(X,Y)を中心として
半径Rの円もしくはその円の一部(円弧)を表示
面上に描画すべき表示位置制御データ(画像デー
タ)を作成する場合、X軸を始線として反時計回
りに0゜〜45゜の第1の範囲、45゜〜135゜の第2の範
囲、135゜〜225゜の第3の範囲、225゜〜315゜の第4
の範囲、315゜〜360゜の第5の範囲に分割し、前記
円を第1及び第5の範囲に描く時は描画データ作
成開始点(X+R、Y)を記憶部から読み出し、
そのY座標を所定の値づつ変化せしめ、その時の
X座標を第1の演算部で求め、前記円を第2の範
囲に描く時は描画データ作成開始点(X、Y+
R)データを記憶部から読み出して、そのX座標
を所定の値づつ変化せしめその時のY座標を第2
の演算部で求め、前記円を第3の範囲に描く時は
描画データ作成開始点(X−R、Y)のデータを
記憶部から読み出し、そのY座標を所定の値づつ
変化せしめその時のX座標を第1の演算部で求
め、前記円を第4の範囲に描く時は描画データ作
成開始点(X、Y−R)のデータを記憶部から読
み出し、そのX座標を所定の値づつ変化せしめて
その時のY座標を第2の演算部で求め、夫々の演
算結果を画像データとして設定するように制御さ
れる。前記X(又はY)座標を所定の値づつ変化
せしめた時の前記Y(又はX)座標は、円の方程
式X2+Y2=R2から得られる前記Y(又はX)座
標の値のうち小数部を四捨五入して得られる整数
値データに規格化すれば処理が簡単になる。ここ
で、座標とはX−Y直交座標系を意味し、その座
標データ(X,Y)は表示面上で、n番目の主走
査線がX、m番目の副走査線がYに対応するもの
と考えてもよい。このようにして作成された画像
データで指示された表示面上の対応する位置(画
素)にドツトパターンが描画されて所望の円もし
くは円弧が表示される。 本発明によれば、第1、第3、第5の範囲に描
画される円に対してはY座標を基準としてX座標
を求め、第2及び第4の範囲に描画される円に対
してはX座標を基準としてY座標を求めるように
設定しているので、従来の第1図に示すようなド
ツト表示間隔にムラを出すような画像データを作
成したり、あるいは第2図に示すような半径の違
いに応じてドツト表示間隔が拡がりすぎたり又は
同一座標(同一ドツト)への多重表示を行なつた
りするような画像データを作成したりするような
ことは無く、等間隔で無駄のない円もしくは円弧
の表示位置データを得ることができる。又、小数
演算部を四捨五入して演算データを作成している
ため乗算や平方根演算の複雑な演算回路は一切不
要である。従つて演算回路の簡略化ができ高速で
かつ表示品質のよい画像データを作成することが
できる。 以下に、図面を参照して本発明の一実施例を詳
細に説明する。まず第3図に本発明で作成した画
像データに基づいて表示面上に円を描画した様子
を示す。これは中心座標(h,k)、半径8の円
を描画したときの一実施例を示す描画図である。
このとき全円は、45度毎に8個の1/8円弧に分割
され、その1/8円弧を8回描画開始点及び描画方
向を変更する事によつて全円周の描画位置データ
が作成され、このデータが表示部に送られて全円
周が描画される。315度から45度(第1及び第5
の範囲)、135度から225度(第3の範囲)の1/8円
弧描画に関しては、描画データ作成開始点を中心
から方向0度及び180度の円周上の点に選択し、
Y座標を1座標単位で移動させたときのX座標値
を算出して描画を行ない、45度から135度(第2
の範囲)、225度から315度(第4の範囲)の1/8円
弧描画に関しては描画データ作成開始点を中心か
ら方向90度及び270度の円周上の点に選択し、X
座標を1座標単位で移動させたときのY座標値を
算出して描画を行なう。 以下、本発明の一実施例における円描画位置デ
ータのX,Y座標算出の為のアルゴリズムについ
て詳細に説明する。 第3図に示す中心(h,k)、半径rの円に対
して、0度から45度に至る1/8円弧描画を例にあ
げると、円の方程式は (x−h)2+(y−k)2=r2 …… この1/8円弧描画の場合は前述したとうり、Y
座標の1座標変更毎に円周上の画像データを算出
するので式を変形して x=√2−(−)2+h …… ここで座標は全て“正の整数”で定義されなけ
れば、表示面上にドツトパターンを表示すること
ができないので式で定まるxの値に対してその
整数部を“”、小数部を“F”で表現すると、 x=√2−(−)2+h=I−F …… ここで式をそのままの形で演算し、X座標を
直接算出すると2回の整数乗算、1回の整数減
算、1回の実数平方根演算を必要とすることが容
易に理解できる。しかしながら実数平方根や乗算
演算は長時間の演算時間を必要とするので描画速
度が遅くなり好ましくない。従つて、本実施例で
は式の小数部分Fにのみ注目し、これによつて
描画ドツト位置のXあるいはY方向の変位分を検
出して描画すべきドツト位置の座標を決定するよ
うに工夫している。この方式によれば後述するよ
うに、わずかな整数加減算のみで描画ドツト座標
位置を指示する画像データを求めることができ、
極めて高速度で描画データの作成を行なうことが
できる。 座標は一般に“正の整数”で定義されるので、
得られる小数部分Fを四捨五入する事によつて直
線的に変化する円の軌跡を座標上のドツトとして
近似することができる。このため式において、
Fが1/2未満の場合は、整数部“I”には変更が
なく、Fが1/2以上の場合は、整数部“I”は1
だけ減算された値となるように設定する。即ち、
Fが1/2以上となつた場合には、描画ドツトデー
タのX座標を−1だけ移動させて各範囲での円の
座標データを規格化する。従つて式に四捨五入
の条件を加味すると、 F=(I−h)−√2−(−)2≧1/2
…… となり、これを変形して {r2−(y−k)2}−{(I−h)2 −(I−h)+1/4}≦0 …… とすることができる。この範囲(0゜〜45゜)では
描画開始点が中心から0度の円周上の点(h+
r、k)に定められるので、y=k、I=r+h
を代入すると式は r−1/4≦0 …… となる。整数演算を行なう為1/4の値を1に切上
げてもrが整数値であるので支障は無い。従つ
て、描画開始点では式は r−1≦0 …… となり、これは描画開始点における小数部演算の
中間結果Dの初期値となる。この式の正負を判断
する事により、式における四捨五入の判断をす
る事が可能となることは容易に理解できる。今r
=8であるので式は満足されず、小数部Fは0
となる。一方、式が満足されるときは、四捨五
入の条件が満足されるので、その時のX座標の整
数部Iを1だけ減算してX座標を−1だけ移動す
ればよい。 次に、小数部の演算を実行して次描画点のX座
標を求める必要があるが、式に示す小数部Fの
値を直接求めると平方根演算を必要とし処理が大
変である。しかしながら、実際の描画ではY座標
が+1づつ変化する毎に、X座標が変化しない
か、あるいは−1だけ変化するかのいずれかであ
る。そしてこの変化の有無は前記中間結果Dが正
となるか負となるかによつて決定されるわけであ
る。故に、次の描画点での中間結果Dの変位を求
めればよい。即ち、式の左辺の変位を求めるこ
とによつて次の中間結果を求めることができる。 ここで、式の左辺を直接演算すると多数回の
実数乗除算が必要となるので、演算時間が長くな
る。従つて、式の左辺が0以上のとき、X座標
は変化せずY座標のみが1だけ加算されればよ
い。故に、次描画点の座標データAに対しては {r2−(y−k+1)2}−{(I−h−N)2 −(I−h−N)+1/4} ……′ となり、前描画点Bに対しては {r2−(y−k)2}−{(I−h−N)2 −(I−h−N)+1/4} ……″ となるから、中間結果Dの変位D1はその差をと
つて、 {r2−(y−k+1)2}−{(I−h−N)2 −(I−h−N)+1/4} −{r2−(y−k)2}+{(I−h−N)2 −(I−h−N)+1/4} =−{2(y−k)+1} …… となる。 一方、式の左辺が0未満のときは四捨五入条
件を満足するので、次描画点での中間結果はY座
標が+1、X座標が−1されるため {r2−(y−k+1)2}−{(I−h−N−1)2 −(I−h−N−1)+1/4} …… となる。故に、中間結果Dのこの時の変位は
−″で算出されるので、 {r2−(y−k+1)2}−{(I−h−N−1)2 −(I−h−N−1)+1/4} −{r2−(y−k)2}+{(I−h−N)2 −(I−h−N)+1/4} =2{(I−h)−N}−{2(y−k)+1}−2
…… となる。ここで、−{2(y−k)+1}は変位D1
と同値であるため、これを除く式、すなわち2
{(I−h)−N}−2を変位D2として算出し、そ
の結果からD1分を引けば解が求まる。 なお、NはX座標の変化回路数を示す。 ここで、第4図に本発明の画像制御装置の概略
を示すブロツク図を提示する。第4図において、
メモリ100は複数のレジスタ等で構成されたも
ので、CPUあるいは外部メモリから送られるX,
Y座標と円との交点、即ち画像データ作成開始点
が設定される。このメモリ100からのデータは
Y座標を所定数づつ変化させた時のX座標を前述
の方式に基いて算出する第1の演算部101と、
X座標を所定数づつ変化させた時のY座標を算出
する第2の演算部102とに送られ、夫々の演算
結果が画像データ格納メモリ103に出力され
る。尚、演算途中結果はメモリ100に一時格納
するものとする。メモリ103から表示部104
へ画像データが表示信号に変換されて転送される
ことにより所望の円あるいは円弧の表示を可能な
らしめる。105は各部のタイミングを制御する
信号を出力する制御部である。 ここで、メモリ100に格納されたデータにつ
いてより詳しく説明する。分割された角度(第1
〜第5の範囲)のうち例えば第1の範囲に表示す
べき画像データを作成する場合、初期値X、初期
値Yとして描画開始点の座標X=h+8、Y=k
が設定され、小数部演算の中間結果Dとして描画
開始時においては、式で与えられた値r−1=
7が設定される。更に小数部演算の変位D1とし
て描画開始時においては式において、Yがkで
あるから−1が設定される。さらに、小数部演算
の結果が0未満となつたときに追加実行される値
D2として式で示される小数部演算変位式の一
部である2{(I−h)−N}−2の計算結果が格納
される。描画開始時においてN=0、I=rであ
るので、D2として2{(r−h)−1}が設定され
る。X座標の方向変化が生ずるたびに、前記2
(I−h−N)−2のNの値が1だけ増加されるの
で、その結果D2は2だけ減算される。 第5図は描画演算実行回路のブロツク図であり
CPUから送出される命令又はパラメータがデー
タ及び制御バス10を経由してレジスタD,D1,
D2,X,Y,DCに設定される。ここで、レジス
タD,D1,D2には前述した中間結果D、変位D
1,D2が夫々格納される。さらにレジスタX,
Yには夫々描画開始座標が格納され、レジスタ
DCには描画範囲に描画すべきドツト数が格納さ
れる。 さらに描画開始命令が与えられたとき描画指示
信号発生回路(フリツプフロツプ)42を起動す
る為の信号線11がフリツプフロツプ42のセツ
ト端子に接続される。20aから20pは各々切
換ゲート群であり、G入力が“1”となつたと
き、入力信号が出力に接続され、G入力が“0”
のときは、出力には信号が出力されず開放状態と
なる。35,36,37は3バス形式を持つた演
算器のデータバスであり、被演算数が35へ、演
算数が36へ、ALU50の出力である演算結果
が37へそれぞれ接続される。ALU50は演算
器であつて、オア・ゲート45gよりA/Sに供
給される信号線が“1”のとき加算を“0”のと
き減算を実行し、被演算数がバス35から、演算
数がバス36からそれぞれ入力され、演算結果が
バス37へ出力される。42は描画指示信号発生
回路であり、CPUから描画開始命令が与えられ
たとき信号線11に発生する信号DRAW
STARTによつて出力が能動状態となり、AND
ゲート41から供給されるリセツト信号が“1”
になつたとき非能動状態となる。42の出力は描
画タイミング発生回路44に供給され、第6図に
示されるタイミング信号E1〜E7が順次発生さ
れる。40は零検出回路でありレジスタDCの内
容が全ビツト“0”となつたとき出力は“1”と
なり、アンドゲート41にその出力は接続され
る。アンドゲート41の一方の入力には描画タイ
ミング信号E7が接続されており、入力が共に
“1”となつたときアンドゲート41の出力であ
るDRAW END信号(第6図参照)が“1”と
なり描画指示回路42を非能動とする。フリツプ
フロツプ43は描画タイミングE2のときのレジ
スタDのデータ正負を記憶する。43の出力は4
5c,d,eに供給され、第5図に示す演算処理
制御を可能とする。30及び31はデータ発生回
路であり、各々データ“1”及びデータ“2”を
発生する。60は映像制御回路であり本描画演算
実行回路にて演算生成された描画位置座標X,Y
が供給され実際に描画を実行する。 以下、第5図の回路動作について説明する。
CPUよりパラメータ設定及び描画開始命令が与
えられると信号線11にDRAW START信号が
発生し描画指示信号発生器42の出力DRAW―
INGが“1”となり描画タイミング信号発生器
44から描画タイミング信号がE1からE7の順
に発生し、タイミングE7においてDの値が全て
“0”でなければ、アンドゲート41の出力信号
であるDRAW ENDは“0”のままであり、引
き続きE1からE7の描画タイミング信号が発生
し、描画が続行される。タイミングE7において
DCの値が全て“0”であれば上記DRAW END
は“1”となり、描画指示信号発生器42をリセ
ツトし、描画を終了する。 次に、描画タイミングE1において実行される
“D+D1→D”の演算実行を例に取つて回路動作
を説明する。描画タイミング信号E1が出力され
るとオアゲート45a及び45gの出力が共に
“1”となり、切換ゲート群20a,20b,2
0dが活性化され、バス35にはレジスタDの内
容が、バス36にはレジスタD1の内容が出力さ
れ、各々ALU50に入力される。ALU50の出
力、即ち演算結果“D+D1”はバス37、及び
切換ゲート20bを経由してレジスタDに読み込
まれ“D+D1→D”の演算が実行される。描画
実行タイミングE2以降の演算に関しては、上記
E1時の説明と類似しているので省略する。 この様な回路動作の下で実行される円図形の画
像データ作成過程を第7図及び第8図の手順図を
参照して以下に説明する。 第7図に示すように画像データ作成開始時に、
メモリ100内のレジスタX,Y,DC,D,
D1,D2に夫々前述したデータを設定する。この
後の、描画開始命令の入力により第8図に示す流
れ図に沿つて、タイミング制御の下で画像データ
作成処理を実行していく。 第8図の流れ図に沿つて0゜〜45゜の範囲に描画
される円図形の画像データを求める。 まず、レジスタYに設定されている開始点デー
タ、この場合にはX=h+8、Y=kが、第3図
での点a0を示す画像データとして画像制御回路6
0に転送される。この時、タイミングE1でレジ
スタDとD1との内容がALU50で加算される。
即ちD=r−1=7、D1=−(2Y+1)=−1(∵
Y=0)だからD+D1=7−1=6となり、デ
ータ6がレジスタDに設定される。更に、タイミ
ングE2でレジスタD1の内容が(−2)加算され、
−3がレジスタD1に設定される。この時D=6
>0だからタイミングE6での処理にジヤンプす
る。この期間はYの内容を+1変化させる処理を
実行する期間で、Y=1がレジスタYに設定さ
れ、次の画像データ作成の準備をする。一方レジ
スタDCには0゜〜45゜の範囲に描画すべきドツト数
7が設定されており、1ドツト作成する毎に1づ
つ減算される。例えばリングカウンタによりその
値が6に設定される(タイミングE7)。 次に再びタイミングE1に戻り、Y座標が+1
されたk+1でのX座標の算出が開始される。手
順は前述した過程を繰り返して実行すればよい。
即ち、各タイミングE1〜E7で第8図に示す加算
を実行し、その演算結果特にレジスタDとDCと
の内容を調べて、次に実行すべき処理を決定す
る。この処理は第8図に示す単純な加減算処理で
よい。 0゜〜45゜の範囲に描画される点の値を第8図の
流れ図に沿つて算出すると下に示す表1のような
結果が得られる。
【表】
なお、表1は原点を中心とする半径8の円につ
いて求めたものであるが、中心(h,k)の円に
ついてはX座標の各値にhを加算すればよいこと
は明白である。 かかる処理を逐次実行することにより、第3図
に示す点a0〜a6の各座標位置を示す画像データが
作成され、画像制御回路60に順次格納される。
一方、45゜〜135゜、225゜〜315゜の範囲では、第8図
でタイミングE4及びE6の処理が夫々Y−1→Y,
X+1→Xに変更されるだけで他は同様の処理で
よい。この様にして全円を示す画像データが全て
画像制御回路60に格納され、表示タイミングに
同期して表示部へ送られる。 本実施例は円を4分割して45゜〜135゜、135゜〜
225゜、225゜〜315゜、315〜゜45゜の各範囲で初期値
をYあるいはX座標上に選定して、XあるいはY
の座標を所定の値(実施例では1)づつ変化させ
て、その時のYあるいはXの座標を第4図の小数
部簡易演算方式を用いて算出するもので、描画す
べき円又は円弧の半径が異なつても、一定の間隔
で円周上のドツトパターンを近似することがで
き、半径の小さい円での同一ドツトの多重化及び
半径の大きい円でのドツト間の拡がりをなくした
品質の良い円描画を実行することができる。又、
第8図より明らかなように円のドツト位置を作成
する演算方式は独得の小数部簡易演算法を採用し
ているので、平方根演算や乗算演算等、長時間を
要する演算を使うことなく単純な加減算だけでよ
いので、描画速度は従来に比して約100〜1000倍
程高速化できる。 尚、本実施例では円の全周及びその任意の一部
の円弧のいづれでも描画可能であるが、描画すべ
き円あるいは円弧がどの範囲に相当するものであ
るかを予め規定しておく必要がある。しかしなが
ら、この規定は極めて簡単で、例えば各範囲に表
示されるべきドツト数を規定しておき、第8図で
ドツトデータを作成する度にその数を検出して所
定の値になつた時、演算を中止したりあるいは範
囲の設定を変更したりすればよい。又、マスクレ
ジスタを付加して目的とするデータだけを画像制
御回路60に出力するようにしてもよい。 以上、0度から45度に至る1/8円弧描画の場合
を例に取つて説明したが、他の角度領域における
円弧についても、第4図におけるX,Yの演算位
置の交換、又はXY加減算の変更、描画開始点の
設定変更によつて描画可能である。又、上記例で
はX,Y座標値の算出を例に取つているが、画像
記憶器のドツト情報格納番地の算出を行なう場合
に置換しても効果は同じである事は言うまでも無
い。更に、基準となるXもしくはY座標の変化分
を1ではなく2もしくは3等他の整数値に変更す
れば、円周上で隣り合うドツトの間隔を任意に変
化させることができ楕円表示等も可能となる。こ
の様に、本発明によれば描画範囲に応じてX=√
r2−Y2およびY=√2−2のいずれかを指定し
て描画ドツト位置を算出するようにしているの
で、第1図のように描画間隔にムラを出すことは
なく、また、第2図に示すようにドツト間隔が広
がりすぎることもない。さらに、同一座標への多
重描画もなくなるという利点もある。とくに描画
される円が上下左右対象になるようなドツトデー
タを生成することができるので、従来のように不
自然さを出すことなく、自然円に近い円を描画す
ることができる。
いて求めたものであるが、中心(h,k)の円に
ついてはX座標の各値にhを加算すればよいこと
は明白である。 かかる処理を逐次実行することにより、第3図
に示す点a0〜a6の各座標位置を示す画像データが
作成され、画像制御回路60に順次格納される。
一方、45゜〜135゜、225゜〜315゜の範囲では、第8図
でタイミングE4及びE6の処理が夫々Y−1→Y,
X+1→Xに変更されるだけで他は同様の処理で
よい。この様にして全円を示す画像データが全て
画像制御回路60に格納され、表示タイミングに
同期して表示部へ送られる。 本実施例は円を4分割して45゜〜135゜、135゜〜
225゜、225゜〜315゜、315〜゜45゜の各範囲で初期値
をYあるいはX座標上に選定して、XあるいはY
の座標を所定の値(実施例では1)づつ変化させ
て、その時のYあるいはXの座標を第4図の小数
部簡易演算方式を用いて算出するもので、描画す
べき円又は円弧の半径が異なつても、一定の間隔
で円周上のドツトパターンを近似することがで
き、半径の小さい円での同一ドツトの多重化及び
半径の大きい円でのドツト間の拡がりをなくした
品質の良い円描画を実行することができる。又、
第8図より明らかなように円のドツト位置を作成
する演算方式は独得の小数部簡易演算法を採用し
ているので、平方根演算や乗算演算等、長時間を
要する演算を使うことなく単純な加減算だけでよ
いので、描画速度は従来に比して約100〜1000倍
程高速化できる。 尚、本実施例では円の全周及びその任意の一部
の円弧のいづれでも描画可能であるが、描画すべ
き円あるいは円弧がどの範囲に相当するものであ
るかを予め規定しておく必要がある。しかしなが
ら、この規定は極めて簡単で、例えば各範囲に表
示されるべきドツト数を規定しておき、第8図で
ドツトデータを作成する度にその数を検出して所
定の値になつた時、演算を中止したりあるいは範
囲の設定を変更したりすればよい。又、マスクレ
ジスタを付加して目的とするデータだけを画像制
御回路60に出力するようにしてもよい。 以上、0度から45度に至る1/8円弧描画の場合
を例に取つて説明したが、他の角度領域における
円弧についても、第4図におけるX,Yの演算位
置の交換、又はXY加減算の変更、描画開始点の
設定変更によつて描画可能である。又、上記例で
はX,Y座標値の算出を例に取つているが、画像
記憶器のドツト情報格納番地の算出を行なう場合
に置換しても効果は同じである事は言うまでも無
い。更に、基準となるXもしくはY座標の変化分
を1ではなく2もしくは3等他の整数値に変更す
れば、円周上で隣り合うドツトの間隔を任意に変
化させることができ楕円表示等も可能となる。こ
の様に、本発明によれば描画範囲に応じてX=√
r2−Y2およびY=√2−2のいずれかを指定し
て描画ドツト位置を算出するようにしているの
で、第1図のように描画間隔にムラを出すことは
なく、また、第2図に示すようにドツト間隔が広
がりすぎることもない。さらに、同一座標への多
重描画もなくなるという利点もある。とくに描画
される円が上下左右対象になるようなドツトデー
タを生成することができるので、従来のように不
自然さを出すことなく、自然円に近い円を描画す
ることができる。
第1図、第2図は夫々従来の描画方式によつて
描画された円図形図、第3図は本発明の一実施例
による描画方式によつて描画された円図形図、第
4図は本実施例描画制御装置の概略図で、第5図
は画像データ作成回路図、第6図はタイミング信
号発生図、第7図、第8図は夫々動作処理の実行
手順を示す流れ図である。 (h,k)…円の中心座標、a1〜a6…0゜〜45゜の
範囲に表示される半径8の円のドツト位置、1…
レジスタD、2…レジスタD1、3…レジスタD2、
4…レジスタX、5……レジスタY、6…レジス
タDC、10…バス、11…セツト信号、20…
ゲート、42…フリツプフロツプ、45…タイミ
ング信号発生回路、50…ALU、60…画像制
御回路、100,103…メモリ、101,10
2…演算部、104…表示部、105…タイミン
グ制御部。
描画された円図形図、第3図は本発明の一実施例
による描画方式によつて描画された円図形図、第
4図は本実施例描画制御装置の概略図で、第5図
は画像データ作成回路図、第6図はタイミング信
号発生図、第7図、第8図は夫々動作処理の実行
手順を示す流れ図である。 (h,k)…円の中心座標、a1〜a6…0゜〜45゜の
範囲に表示される半径8の円のドツト位置、1…
レジスタD、2…レジスタD1、3…レジスタD2、
4…レジスタX、5……レジスタY、6…レジス
タDC、10…バス、11…セツト信号、20…
ゲート、42…フリツプフロツプ、45…タイミ
ング信号発生回路、50…ALU、60…画像制
御回路、100,103…メモリ、101,10
2…演算部、104…表示部、105…タイミン
グ制御部。
Claims (1)
- 1 直交座標系でX軸及びY軸と交差する円の交
点データを記憶する記憶部と、前記X軸と交差す
る円の交点データのうちそのY座標データを所定
数づつ変化させた時の円周上でのX座標データを
X=√2−2(rは半径)から算出する第1の
演算部と、前記Y軸と交差する円の交点データの
うちそのX座標データを所定数づつ変化させた時
の円周上でのY座標データをY=√2−2から
算出する第2の演算部と、前記第1及び第2の演
算部での演算実行の切り換えを制御する制御部と
を含み、前記制御部はX座標の変化に比べてY座
標の変化が大きい範囲では前記第1の演算部を用
いて演算を行ない、Y座標の変化に比べてX座標
の変化が大きい範囲では前記第2の演算部を用い
て演算を行なうように制御することを特徴とする
画像制御装置。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP8248480A JPS578584A (en) | 1980-06-18 | 1980-06-18 | Video controller |
| US06/275,206 US4459676A (en) | 1980-06-18 | 1981-06-18 | Picture image producing apparatus |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP8248480A JPS578584A (en) | 1980-06-18 | 1980-06-18 | Video controller |
Related Child Applications (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP61163276A Division JPS62123576A (ja) | 1986-07-11 | 1986-07-11 | 円描画方法 |
| JP3009288A Division JPH04363772A (ja) | 1991-01-29 | 1991-01-29 | 円描画方式 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS578584A JPS578584A (en) | 1982-01-16 |
| JPH0214714B2 true JPH0214714B2 (ja) | 1990-04-09 |
Family
ID=13775779
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP8248480A Granted JPS578584A (en) | 1980-06-18 | 1980-06-18 | Video controller |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US4459676A (ja) |
| JP (1) | JPS578584A (ja) |
Families Citing this family (21)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4615013A (en) * | 1983-08-02 | 1986-09-30 | The Singer Company | Method and apparatus for texture generation |
| US4616327A (en) * | 1984-01-13 | 1986-10-07 | Computer Humor Systems, Pty, Ltd | Personalized graphics and text materials, apparatus and method for producing the same |
| US4631691A (en) * | 1984-05-14 | 1986-12-23 | Rca Corporation | Video display device simulation apparatus and method |
| JPS61172056A (ja) * | 1985-01-25 | 1986-08-02 | Nippon Telegr & Teleph Corp <Ntt> | 配管検査装置における画像表示方式 |
| JPS61249088A (ja) * | 1985-04-26 | 1986-11-06 | インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション | 図形塗りつぶし方法 |
| US5276778A (en) * | 1987-01-08 | 1994-01-04 | Ezel, Inc. | Image processing system |
| US5283866A (en) * | 1987-07-09 | 1994-02-01 | Ezel, Inc. | Image processing system |
| US5553170A (en) * | 1987-07-09 | 1996-09-03 | Ezel, Inc. | High speed image processing system having a preparation portion and a converting portion generating a processed image based on the preparation portion |
| US5561604A (en) * | 1988-12-08 | 1996-10-01 | Hallmark Cards, Incorporated | Computer controlled system for vending personalized products |
| US5036472A (en) * | 1988-12-08 | 1991-07-30 | Hallmark Cards, Inc. | Computer controlled machine for vending personalized products or the like |
| US5993048A (en) * | 1988-12-08 | 1999-11-30 | Hallmark Cards, Incorporated | Personalized greeting card system |
| US4945497A (en) * | 1988-12-20 | 1990-07-31 | Sun Microsystems, Inc. | Method and apparatus for translating rectilinear information into scan line information for display by a computer system |
| GB8904535D0 (en) * | 1989-02-28 | 1989-04-12 | Barcrest Ltd | Automatic picture taking machine |
| US5559714A (en) * | 1990-10-22 | 1996-09-24 | Hallmark Cards, Incorporated | Method and apparatus for display sequencing personalized social occasion products |
| US5546316A (en) * | 1990-10-22 | 1996-08-13 | Hallmark Cards, Incorporated | Computer controlled system for vending personalized products |
| US5420970A (en) * | 1991-03-13 | 1995-05-30 | Martin Marietta Corporation | Method for determining computer image generation display pixels occupied by a circular feature |
| US5726898A (en) * | 1994-09-01 | 1998-03-10 | American Greetings Corporation | Method and apparatus for storing and selectively retrieving and delivering product data based on embedded expert judgements |
| US5550746A (en) * | 1994-12-05 | 1996-08-27 | American Greetings Corporation | Method and apparatus for storing and selectively retrieving product data by correlating customer selection criteria with optimum product designs based on embedded expert judgments |
| US5768142A (en) * | 1995-05-31 | 1998-06-16 | American Greetings Corporation | Method and apparatus for storing and selectively retrieving product data based on embedded expert suitability ratings |
| US5875110A (en) * | 1995-06-07 | 1999-02-23 | American Greetings Corporation | Method and system for vending products |
| JP6617463B2 (ja) * | 2015-07-31 | 2019-12-11 | 大日本印刷株式会社 | パターン編集プログラム、パターン編集装置、パターン編集方法 |
Family Cites Families (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| GB1359674A (en) * | 1971-06-11 | 1974-07-10 | Elliott Brothers London Ltd | Display system with circle drawing |
| US3789200A (en) * | 1972-06-30 | 1974-01-29 | Ibm | Circle or arc generator for graphic display |
| US3987284A (en) * | 1974-12-03 | 1976-10-19 | International Business Machines Corporation | Conic generator for on-the-fly digital television display |
| US3996673A (en) * | 1975-05-29 | 1976-12-14 | Mcdonnell Douglas Corporation | Image generating means |
| US4115863A (en) * | 1976-12-07 | 1978-09-19 | Sperry Rand Corporation | Digital stroke display with vector, circle and character generation capability |
| JPS5386122A (en) * | 1977-01-07 | 1978-07-29 | Nippon Telegr & Teleph Corp <Ntt> | Pattern signal generator |
| JPS54116141A (en) * | 1978-03-01 | 1979-09-10 | Nippon Telegr & Teleph Corp <Ntt> | Generating system for circular arc signal |
| US4371933A (en) * | 1980-10-06 | 1983-02-01 | International Business Machines Corporation | Bi-directional display of circular arcs |
-
1980
- 1980-06-18 JP JP8248480A patent/JPS578584A/ja active Granted
-
1981
- 1981-06-18 US US06/275,206 patent/US4459676A/en not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| US4459676A (en) | 1984-07-10 |
| JPS578584A (en) | 1982-01-16 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH0214714B2 (ja) | ||
| JPH01196675A (ja) | パターンデータ生成方式 | |
| US4538144A (en) | Graphic display device having graphic generator for shading graphs | |
| JPS6326898B2 (ja) | ||
| JPH0412875B2 (ja) | ||
| EP0494325B1 (en) | Apparatus for editing and creating video image and method for editing and creating video image | |
| JPH04363772A (ja) | 円描画方式 | |
| JP4811177B2 (ja) | グラフ表示装置及びグラフ表示処理プログラム | |
| JPS642953B2 (ja) | ||
| JPH0315193B2 (ja) | ||
| JP2904994B2 (ja) | 座標間接続表示方法 | |
| JPS62123576A (ja) | 円描画方法 | |
| JP2734735B2 (ja) | 円描画方法とその装置 | |
| JP3004993B2 (ja) | 画像処理装置 | |
| JPH04168581A (ja) | 超楕円の近似曲線生成方法 | |
| JPH0453318B2 (ja) | ||
| JPH07175937A (ja) | 描画アドレス演算方式 | |
| JPS62271187A (ja) | ベクトル描画方式 | |
| JPH0340184A (ja) | 図形描画装置 | |
| JPS636685A (ja) | ベクトル描画方式 | |
| JPS62131378A (ja) | 連続色塗り潰し制御方式 | |
| JPH04153786A (ja) | 四辺形塗りつぶし装置 | |
| JPH02165185A (ja) | 模擬視界発生方式 | |
| JPH04225480A (ja) | 図形描画方法および装置 | |
| JPS6376063A (ja) | 円弧発生方式 |