JP4376371B2 - 円の展開処理方法 - Google Patents

円の展開処理方法 Download PDF

Info

Publication number
JP4376371B2
JP4376371B2 JP27749499A JP27749499A JP4376371B2 JP 4376371 B2 JP4376371 B2 JP 4376371B2 JP 27749499 A JP27749499 A JP 27749499A JP 27749499 A JP27749499 A JP 27749499A JP 4376371 B2 JP4376371 B2 JP 4376371B2
Authority
JP
Japan
Prior art keywords
axis direction
circle
vector data
accuracy
processing
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 - Fee Related
Application number
JP27749499A
Other languages
English (en)
Other versions
JP2001101432A (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.)
Mutoh Industries Ltd
Original Assignee
Mutoh Industries Ltd
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 Mutoh Industries Ltd filed Critical Mutoh Industries Ltd
Priority to JP27749499A priority Critical patent/JP4376371B2/ja
Publication of JP2001101432A publication Critical patent/JP2001101432A/ja
Application granted granted Critical
Publication of JP4376371B2 publication Critical patent/JP4376371B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Image Generation (AREA)

Description

【0001】
【発明の属する技術分野】
この発明は、ベクタデータを点列(ラスタ)データへ展開する画像展開処理方法に関し、特にDDA(Digital Differential Analyzer)アルゴリズムを使用して垂直倍精度又は水平倍精度の直交座標系上に円を展開する円の展開処理方法に関する。
【0002】
【従来の技術】
ベクタデータで表現された直線、円等をラスタデータへ展開するためのDDAアルゴリズムを用いた画像展開処理方法は、プリンタ及びディスプレイ装置等に広く使用されている。一般的なDDAアルゴリズムとしては、実数型のデータ演算を伴わず乗除算が不要な Bresenham のDDAアルゴリズムが良く知られている。このアルゴリズムは、直線の描画を例にとると、両端点P1,P2の座標値(x1,y1),(x2,y2)が与えられたとき、両端点P1,P2間のX軸方向の距離と、Y軸方向の距離とを比較して、その絶対値が大きい方の軸の座標値を1つずつ増加させながら、小さい方の軸の座標に短軸長さを余りとして累積加算していき、その余りが長軸長さを超えたらキャリーを出力して短軸方向のドット形成位置を1つ変化させるという処理を逐次実行するものである。
【0003】
出力画像の解像度を上げるためには、ビットマップ展開密度を高めればよいが、解像度を単純に通常の2倍とすると、ビットマップメモリの容量を通常の4倍にしなければならず、しかも描画時間が通常の4倍になってしまう。また、インクジェット方式の出力装置においては、ドット密度が高くなった分だけ、塗り潰し等の部分で、インクの過多による流れ、すれ、乾きの遅れ、及び用紙のふやけ等の問題が生じる。そこで、水平又は垂直方向のみを倍精度にしてメモリ容量及び描画時間共に2倍に抑えるようにした水平倍精度又は垂直倍精度DDA方式も提案されている。
【0004】
【発明が解決しようとする課題】
水平又は垂直倍精度での直線DDA処理は、始終点座標を変更するだけでそのまま従来のDDA処理を利用することができるが、円を形成する場合には、そのまま水平又は垂直倍精度での円DDA処理を実行すると、形成される円は楕円になってしまう。
【0005】
この発明はこのような問題点に鑑みなされたもので、水平又は垂直倍精度の直交座標系においても支障無く円を描画することができる円の展開処理方法を提供することを目的とする。
【0006】
【課題を解決するための手段】
本願に係る円の展開処理方法は、CPU及びバンドメモリを有するシステムにベクトルデータを入力し、前記CPUにてこのベクトルデータによって特定される直交座標系の第1軸方向の各座標値に対し、前記ベクトルデータの傾き相当値を蓄積し、その蓄積量が所定値を超えた時点で前記直交座標系の第2軸方向の座標値を1つ変化させると共に前記蓄積量から所定値を減算することにより前記ベクトルデータに沿ってドットを形成し、前記バンドメモリの座標領域上に前記ドットにより構成されるラスタデータの画像を展開していくDDA処理による円の展開処理方法において、前記CPUが、前記第1軸方向の精度と前記第2軸方向の精度とが異なる直交座標系で前記円のDDA処理を実行する際に、前記第1軸方向の精度と前記第2軸方向の精度の比に対応した縦横直径比を有する楕円を前記円を表すベクトルデータとしてDDA処理を実行し、前記DDA処理は、前記CPUが、前記縦横直径比に基づいて、前記第1軸方向が1増加したときの第2軸方向の増分と、前記第2軸方向が1増加したときの第1軸方向の増分と、基準変更点とを求め、前記第1軸方向を1増加させて第2軸方向の増分を蓄積させる処理と、前記第2軸方向を1増加させて第1軸方向の増分を蓄積させる処理とを、前記基準変更点を境にして切り替えることで実行されることを特徴とする。
【0007】
本発明によれば、第1軸方向の精度と第2軸方向の精度とが異なる直交座標系で円を描画する場合でも、第1軸方向の精度と第2軸方向の精度の比に対応した縦横直径比を有する楕円を円を表すベクトルデータとして与えてDDA処理するようにしているので、最終的なプロット結果を正しい円とすることができる。
【0008】
【発明の実施の形態】
以下、図面を参照して、この発明の実施例を説明する。
図1は、本発明の一実施例に係る画像展開処理方法を実現するインクジェットプリントシステムの構成を示すブロック図である。
このシステムは、ホストコンピュータ1とインクジェットプリンタ2とにより構成されている。インクジェットプリンタ2は、ホストコンピュータ1とのインタフェース11と、CPU12と、バンドメモリ13と、インクジェットヘッド14とを備えている。ホストコンピュータ1から与えられるベクトルデータは、インタフェース11を介してCPU12に与えられ、ここでDDA処理されてラスタデータに変換されバンドメモリ13に展開される。バンドメモリ13に展開されたラスタデータは、インクジェットヘッド14に送られて印字処理に供される。
【0009】
次に、このシステムを使用した円の展開処理方法について説明する。
いま、水平倍精度の場合を例にとると、真円を生成するためには縦直径:横直径=1:2の楕円を円のベクトルデータとして与えれば良い。いま、水平方向(X方向)の半径をrxとすると、このような楕円の方程式は、下記数1のように表される。
【0010】
【数1】
2+(2y)2=rx2
【0011】
これを微分すると、次の数2が得られる。
【0012】
【数2】
Figure 0004376371
【0013】
この式から、yが1増加したときのxの増分とxが1増加したときのyの増分とを知ることができるので、DDA処理が可能となる。
【0014】
ところで、水平垂直方向の密度が等しい場合には、1/8の円を発生させれば、後はx,yの入れ替えや上下左右の対称処理によって全ての円のドットを形成することができる。この場合、基準軸変更点が45゜に設定され、例えば90゜〜45゜までの円のドットが求められる。45゜〜0゜までの円は、90゜〜45゜までの円のx,y座標を入れ替えることによって求められる。
【0015】
しかしながら、本実施例のように水平方向と垂直方向の密度が異なっている場合には、1/4の円を生成しないと全ての円の形状は求まらない。1/4の円は、Xが長軸である部分と、Y軸が長軸である部分とで異なる処理により生成される。この実施例の場合xと4yとが一致する点が基準軸変更点となる。従って、基準軸変更点は、水平に対して約14゜{=tan-1(1/4)}の方向で、この点の楕円接線が45゜に傾くことになる。実際にプロットすると、水平倍密度なので図5に示すように、基準軸変更点は、16.6゜{=tan-1(2/4)}の方向になる。
【0016】
図2及び図3は、この実施例に係る円発生DDA処理を示すフローチャートであり、図2はx≦4yであるX長軸部分の処理、図3はx≧4yであるY長軸部分の処理をそれぞれ示している。
図2に示すように、X長軸部分では、まず、座標値x,y,余りrの初期値として、x=0,y=ry,r=−4yをそれぞれ代入する(S1)。ここで、ryは、楕円のY軸方向(短軸方向)の半径である。ry=16とすると、最初の座標値(x,y)=(0,16)、余りr=−64となる。次に、x,yにドットを形成したのち(S2)、xが4yを超えるまで(S3)、xのインクリメントと2x+1を余りrへ累積する処理とを実行する(S4)。もし、余りrが0以上になったら(S5)、余りrから4(2y−1)を減算し、yを1つ減算するキャリー処理を実行したのち(S6)、x,yを出力する(S2)。
【0017】
xと4yとが一致するようになったら(S3)、図3の処理に切り換える。図3の処理では、まず、座標値x,y,余りrの初期値として、x=2ry,y=0,r=−xをそれぞれ代入する(S11)。ry=16とすると、最初の座標値(x,y)=(32,0)、余りr=−32となる。次に、x,yにドットを形成したのち(S12)、4yがxを超えるまで(S13)、yのインクリメントと4*(2y+1)を余りrへ累積する処理とを実行する(S14)。もし、余りrが0以上にになったら(S15)、余りrから(2x−1)を減算し、xを1つ減算するキャリー処理を実行したのち(S16)、x,yを出力する(S12)。
【0018】
図4に以上の処理結果を示す。同図(a)はX長軸部分の処理結果、同図(b)はY軸方向部分の結果である。図5には、その処理結果プロットした結果が示されている。このように、単軸方向倍精度の直交座標系であっても、楕円のDDA処理を実行することにより、真円に沿ったドットを形成することができる。
【0019】
【発明の効果】
以上述べたようにこの発明によれば、第1軸方向の精度と第2軸方向の精度とが異なる直交座標系で円を描画する場合でも、第1軸方向の精度と第2軸方向の精度の比に対応した縦横直径比を有する楕円を円を表すベクトルデータとして与えてDDA処理するようにしているので、最終的なプロット結果を正しい円とすることができるという効果を奏する。
【図面の簡単な説明】
【図1】 この発明の一実施例に係るインクジェットプリントシステムのブロック図である。
【図2】 同システムを使用した本発明の一実施例に係る円生成DDAアルゴリズムのX長軸部分の処理を示すフローチャートである。
【図3】 同システムを使用した本発明の一実施例に係る円生成DDAアルゴリズムのY長軸部分の処理わ示すフローチャートである。
【図4】 同処理に基づくドット形成処理結果を示す図である。
【図5】 同ドット形成処理によってプロットした円を示す図である。
【符号の説明】
1…ホストコンピュータ、2…インクジェットプリンタ、11…インタフェース、12…CPU、13…バンドメモリ、14…インクジェットヘッド。

Claims (1)

  1. CPU及びバンドメモリを有するシステムにベクトルデータを入力し、前記CPUにてこのベクトルデータによって特定される直交座標系の第1軸方向の各座標値に対し、前記ベクトルデータの傾き相当値を蓄積し、その蓄積量が所定値を超えた時点で前記直交座標系の第2軸方向の座標値を1つ変化させると共に前記蓄積量から所定値を減算することにより前記ベクトルデータに沿ってドットを形成し、前記バンドメモリの座標領域上に前記ドットにより構成されるラスタデータの画像を展開していくDDA処理による円の展開処理方法において、
    前記CPUが、前記第1軸方向の精度と前記第2軸方向の精度とが異なる直交座標系で前記円のDDA処理を実行する際に、前記第1軸方向の精度と前記第2軸方向の精度の比に対応した縦横直径比を有する楕円を前記円を表すベクトルデータとしてDDA処理を実行し、
    前記DDA処理は、前記CPUが、前記縦横直径比に基づいて、前記第1軸方向が1増加したときの第2軸方向の増分と、前記第2軸方向が1増加したときの第1軸方向の増分と、基準軸変更点とを求め、前記第1軸方向を1増加させて第2軸方向の増分を蓄積させる処理と、前記第2軸方向を1増加させて第1軸方向の増分を蓄積させる処理とを、前記基準軸変更点を境にして切り替えることで実行される
    ことを特徴とする円の展開処理方法。
JP27749499A 1999-09-29 1999-09-29 円の展開処理方法 Expired - Fee Related JP4376371B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP27749499A JP4376371B2 (ja) 1999-09-29 1999-09-29 円の展開処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP27749499A JP4376371B2 (ja) 1999-09-29 1999-09-29 円の展開処理方法

Publications (2)

Publication Number Publication Date
JP2001101432A JP2001101432A (ja) 2001-04-13
JP4376371B2 true JP4376371B2 (ja) 2009-12-02

Family

ID=17584392

Family Applications (1)

Application Number Title Priority Date Filing Date
JP27749499A Expired - Fee Related JP4376371B2 (ja) 1999-09-29 1999-09-29 円の展開処理方法

Country Status (1)

Country Link
JP (1) JP4376371B2 (ja)

Also Published As

Publication number Publication date
JP2001101432A (ja) 2001-04-13

Similar Documents

Publication Publication Date Title
KR0167618B1 (ko) 문자 발생 장치 및 방법
US6753862B1 (en) Outline smoothing method and system
JP3037854B2 (ja) 文字生成方法及びその装置
JP4376371B2 (ja) 円の展開処理方法
US6504543B1 (en) Polygon drawing method and polygon drawing apparatus
Lejun et al. A new contour fill algorithm for outlined character image generation
JP3029135B2 (ja) 文字処理装置及び方法
JP4376372B2 (ja) 画像展開処理方法
JP3243293B2 (ja) 輪郭線補正方法
JPH07334695A (ja) 作図装置および線幅決定方法
KR940001106B1 (ko) 선폭보정방법 및 그 장치
JP3057959B2 (ja) データ変換装置
JP2002244643A (ja) 画像処理装置
JP2630843B2 (ja) 直線描画方法及び装置
JP3039214B2 (ja) データ変換装置
JPH10188011A (ja) 描画処理装置
JP3055306B2 (ja) データ出力装置
JP3060569B2 (ja) 印刷装置
JP2782752B2 (ja) 文字パターン出力装置
JP2856136B2 (ja) 印刷装置
JP3211591B2 (ja) イメージ処理装置
JPH0934435A (ja) 文字出力装置
JPH04250496A (ja) データ変換装置
JPH03280095A (ja) 画像処理方法
JPH0511736A (ja) 文字パターン出力装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060602

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20070820

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090522

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090602

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090731

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090901

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090909

R150 Certificate of patent or registration of utility model

Ref document number: 4376371

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120918

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120918

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120918

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130918

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees