JPH02281385A - 曲線の直線近似化装置 - Google Patents
曲線の直線近似化装置Info
- Publication number
- JPH02281385A JPH02281385A JP10289689A JP10289689A JPH02281385A JP H02281385 A JPH02281385 A JP H02281385A JP 10289689 A JP10289689 A JP 10289689A JP 10289689 A JP10289689 A JP 10289689A JP H02281385 A JPH02281385 A JP H02281385A
- Authority
- JP
- Japan
- Prior art keywords
- curve
- straight line
- value
- calculated
- memory
- 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
- 230000015654 memory Effects 0.000 abstract description 14
- 238000010586 diagram Methods 0.000 description 4
- 238000007796 conventional method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000000034 method Methods 0.000 description 1
Landscapes
- Complex Calculations (AREA)
- Image Generation (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
産業上の利用分野
この発明はベゼー曲線などの曲線を数本の直線で近似す
る際の各直線の端点の座標を算出する直線近似化装置に
関する。
る際の各直線の端点の座標を算出する直線近似化装置に
関する。
従来の技術
3次のベゼー曲線の座標は次の式であられされる。
B(x、y)=A(x、y) ・(1−t)3+ 3Z
+(x、yXl−t)”t+3Zt(x、yXl−t)
t’+E(x、y)t3(1)(0≦t≦1,0) この(1)式を用いて、ベゼー曲線を数本の直線で近似
する場合、従来は与えられたtについて(1)式の各項
毎にコンピュータが計算してB(XJ)を得ていた。そ
して求める曲線と計算で得られた近似直線の差をあらか
じめ設定した値より小さくするように、曲線によってt
の値が異ならせていた。
+(x、yXl−t)”t+3Zt(x、yXl−t)
t’+E(x、y)t3(1)(0≦t≦1,0) この(1)式を用いて、ベゼー曲線を数本の直線で近似
する場合、従来は与えられたtについて(1)式の各項
毎にコンピュータが計算してB(XJ)を得ていた。そ
して求める曲線と計算で得られた近似直線の差をあらか
じめ設定した値より小さくするように、曲線によってt
の値が異ならせていた。
すなわち第3図に示すようにまずt=0.5におけるB
、を求める。そしてAEとB1の距離り、があらかじめ
与えられたhより小さければAEを近似直線とし、一方
り、がhより大きければ次にt=0.25としてB2点
を求める。そしてAB、とB、の距離り、を求めこれを
hと比較して上記と同様の処理をして近似直線を求めて
いく。
、を求める。そしてAEとB1の距離り、があらかじめ
与えられたhより小さければAEを近似直線とし、一方
り、がhより大きければ次にt=0.25としてB2点
を求める。そしてAB、とB、の距離り、を求めこれを
hと比較して上記と同様の処理をして近似直線を求めて
いく。
発明が解決すべき課題
従来のこの種の近似化装置は(1−t)3.(1−t)
”t、(1−t)t″、【3をtが変る毎に計算してい
たので、この近似化装置のハードウェア化や計算の高速
化が困難であるという問題があった。
”t、(1−t)t″、【3をtが変る毎に計算してい
たので、この近似化装置のハードウェア化や計算の高速
化が困難であるという問題があった。
したがって、この発明は上述の問題を解決し、ハードウ
ェア化が容易でかつ近似化のための各直線の端点の計算
を高速に行なえる装置を提供することを目的とする。
ェア化が容易でかつ近似化のための各直線の端点の計算
を高速に行なえる装置を提供することを目的とする。
課題を解決する手段
上述の目的を達成するために、この発明は1つの曲線上
の複数の点の座標を結ぶ直線で該曲線を近似するに際し
て上記複数の点の各座標がB(x、y)= A (x、
y)+ΣC1−fi(t)テ表わし、複数(7)tJ、
:ツi=1 いてfi(t)を予じめ記憶した記憶装置と、上記記憶
装置からfi(t)を順次読み出す手段と、読み出した
fi(t)にもとすいて各tについてB(x、y)を演
算する演算回路とを備えたことを特徴とする。
の複数の点の座標を結ぶ直線で該曲線を近似するに際し
て上記複数の点の各座標がB(x、y)= A (x、
y)+ΣC1−fi(t)テ表わし、複数(7)tJ、
:ツi=1 いてfi(t)を予じめ記憶した記憶装置と、上記記憶
装置からfi(t)を順次読み出す手段と、読み出した
fi(t)にもとすいて各tについてB(x、y)を演
算する演算回路とを備えたことを特徴とする。
作用
直線近似しようとする曲線について適当な複数のtが選
定され、この各tの値に対するfi(t)が予じめ計算
され、この計算され九fi(t)が記憶装置に記憶され
ている。
定され、この各tの値に対するfi(t)が予じめ計算
され、この計算され九fi(t)が記憶装置に記憶され
ている。
たとえばベゼー曲線を例として説明すると、−般に第4
図に示されるように始点A(x、y)、終点E(x、y
)及び制御点Z +(x、y)、 Z *(x、y)で
表される3次のベゼー曲線は(1)式で与えられる。
図に示されるように始点A(x、y)、終点E(x、y
)及び制御点Z +(x、y)、 Z *(x、y)で
表される3次のベゼー曲線は(1)式で与えられる。
B(x、y)=A(x、y) −Q−t)’+ 3L(
x、yXl−t)”t−+−aZt(x、yXl−t)
t”+E(x、y)t3(1)ただし0≦t≦1 この曲線を直線近似する際曲線上の数点(at。
x、yXl−t)”t−+−aZt(x、yXl−t)
t”+E(x、y)t3(1)ただし0≦t≦1 この曲線を直線近似する際曲線上の数点(at。
B、、−=Bn)を算出してAB+、B+B*、BzB
a、・””’Bn−、Bn、BnEという数本の直線を
用いる。
a、・””’Bn−、Bn、BnEという数本の直線を
用いる。
このB 1. B r、・・・Bnの算出は、あらかじ
めパラメータtの値を求めておくことにより、数個の乗
算器と加算器の組合せで簡単に実現できる。
めパラメータtの値を求めておくことにより、数個の乗
算器と加算器の組合せで簡単に実現できる。
例えばtがt=o、0.1,0.2.0.3.・・・、
0.9゜1.0の11個の値をとるとする。この時ft
(t)=(t −t)”、r*(t)= s (t −
t)”t、r+(t)= 3 (t −t)t″、f4
(t)=t’の値は表1に示すようにあらかじめ計算さ
れ、 表! これらの4つの項の値をtの値ごとに記憶装置の同一番
地に記憶させておく。
0.9゜1.0の11個の値をとるとする。この時ft
(t)=(t −t)”、r*(t)= s (t −
t)”t、r+(t)= 3 (t −t)t″、f4
(t)=t’の値は表1に示すようにあらかじめ計算さ
れ、 表! これらの4つの項の値をtの値ごとに記憶装置の同一番
地に記憶させておく。
そして、近似化計算に際しては上記記憶装置に記憶され
ているfi(t)をそれぞれ読み出し手段で読み出して
、この読み出した値により、演算装置はたとえば(1)
式を用いてB(x、y)を演算する。
ているfi(t)をそれぞれ読み出し手段で読み出して
、この読み出した値により、演算装置はたとえば(1)
式を用いてB(x、y)を演算する。
実施例
第1図において、メモリ1には表1に示されたデータが
tの6値ごとに同一番地に記憶されている。このメモリ
のアドレス指定入力にはカウンタ2からアドレスデータ
が供給され、指定されたアドレスのデータが(1−t)
’、3(1−t″)t、3(1−t)t”、 3 t’
用の端子1−1.1−2.1−3.1−4別に出力され
るようになっている。
tの6値ごとに同一番地に記憶されている。このメモリ
のアドレス指定入力にはカウンタ2からアドレスデータ
が供給され、指定されたアドレスのデータが(1−t)
’、3(1−t″)t、3(1−t)t”、 3 t’
用の端子1−1.1−2.1−3.1−4別に出力され
るようになっている。
3.4.5.6はそれぞれ乗算器で各乗算器の一方の入
力端子には、上記メモリlのデータが印加されるととも
に、他方の入力端子には(1)式の各項の係数A、Z1
.Zt、Eが印加され、AX(1−t)’、ZIX 3
(1−t”)t、ZlX 3(1−t)t”、EX 3
t3がそれぞれの乗算器3.4.5.6で演算され、出
力される。7.8.9は加算器であり、この実施例では
、加算器7は乗算器3.4の出力を加算して、AX(1
−t”)+ZX3(1−tすtを演算し、また加算器8
は乗算器5.6の出力を加算してZtx3(t+t)t
”+Ex3tsを演算シ、加算m9は加算器7.8の出
力を加算して、(1)式のB(X、Y)を出力するよう
に構成されている。
力端子には、上記メモリlのデータが印加されるととも
に、他方の入力端子には(1)式の各項の係数A、Z1
.Zt、Eが印加され、AX(1−t)’、ZIX 3
(1−t”)t、ZlX 3(1−t)t”、EX 3
t3がそれぞれの乗算器3.4.5.6で演算され、出
力される。7.8.9は加算器であり、この実施例では
、加算器7は乗算器3.4の出力を加算して、AX(1
−t”)+ZX3(1−tすtを演算し、また加算器8
は乗算器5.6の出力を加算してZtx3(t+t)t
”+Ex3tsを演算シ、加算m9は加算器7.8の出
力を加算して、(1)式のB(X、Y)を出力するよう
に構成されている。
直線近似化のための各直線の端点を計算するときには、
計算機(図示せず)等から、係数A、Z、。
計算機(図示せず)等から、係数A、Z、。
Zl、Eが各乗算器3.4.5.6に与えられる。
t==0の時の(1)式の4つの項の値がメモリlの端
子1−1〜!−4より出力され(1)式にそって130
(=A)が算出される。次にクロックが入るとカウンタ
2がカウントアツプされメモリ1の出力には1=0.1
の時の4つの項の値が端子1−1〜14に出力され、各
乗算器3.4.5.6に印加される。そしてたとえば乗
算器3ではAxo。
子1−1〜!−4より出力され(1)式にそって130
(=A)が算出される。次にクロックが入るとカウンタ
2がカウントアツプされメモリ1の出力には1=0.1
の時の4つの項の値が端子1−1〜14に出力され、各
乗算器3.4.5.6に印加される。そしてたとえば乗
算器3ではAxo。
729、乗算器4ではZ、xO,243等が演算される
。そしてこの乗算結果は加算器7に印加され(Axo、
729)+(Z、xO,243)が演算される。加算器
8においては(Z、Xo、027)+(Exo、ooB
が演算される。これらの演算結果は加算器9に印加され
t=0.1に対する(1)式の81の座標が算出される
。同様にクロックがカウンタ2に入るたびに、メモリl
の1=0.1に対する各位、j=0.2に対する各位が
読み出されて上述と同様にしてB t 、 B s・・
・と計算され、各tの値に対するx、yの座標が算出さ
れる。
。そしてこの乗算結果は加算器7に印加され(Axo、
729)+(Z、xO,243)が演算される。加算器
8においては(Z、Xo、027)+(Exo、ooB
が演算される。これらの演算結果は加算器9に印加され
t=0.1に対する(1)式の81の座標が算出される
。同様にクロックがカウンタ2に入るたびに、メモリl
の1=0.1に対する各位、j=0.2に対する各位が
読み出されて上述と同様にしてB t 、 B s・・
・と計算され、各tの値に対するx、yの座標が算出さ
れる。
第2図には第1と第2のメモリI■と12と2個のカウ
ンタ13,14及び1個の乗算器!5と加算器I6でB
点を算出する回路を示す。
ンタ13,14及び1個の乗算器!5と加算器I6でB
点を算出する回路を示す。
第1と第2メモリ11.12の各アドレスには表2と表
3で示されるような値が入力されている。
3で示されるような値が入力されている。
表2 (第1メモリ用)
表3 (第2メモリ用)
最初にカウンタ13.14はメモリ11.12のアドレ
スを入力し、乗算器15でA(x、y)X(1−t)3
1 t=0の演算が行われる。次のクロック入力でこの
値がフリップフロップ17に入力されると同時にカウン
タ13.14がアドレス1を出力し、乗算器15でZ
+(x、y)X 3 (1−t)’t 1t= 0が行
なわれる。この値とフリップフロップ17の出力が加算
器16に入力されるので次のクロックでフリップフロー
、プ17にはA(x、y)X(1−t)’ 1t=0+
Z、(x、y)x3(1−t)1+1=0が入力される
。
スを入力し、乗算器15でA(x、y)X(1−t)3
1 t=0の演算が行われる。次のクロック入力でこの
値がフリップフロップ17に入力されると同時にカウン
タ13.14がアドレス1を出力し、乗算器15でZ
+(x、y)X 3 (1−t)’t 1t= 0が行
なわれる。この値とフリップフロップ17の出力が加算
器16に入力されるので次のクロックでフリップフロー
、プ17にはA(x、y)X(1−t)’ 1t=0+
Z、(x、y)x3(1−t)1+1=0が入力される
。
順次同様な演算が行なわれていき結局クロック4回毎に
no(=A(x、y))、B+、Bt、・・・が算出さ
れる。
no(=A(x、y))、B+、Bt、・・・が算出さ
れる。
ただし第1図、第2図に示した実施例は両者とも、X座
標y座標の2通りの計算を行う必要があるので図示と同
じ回路が2つ必要である。
標y座標の2通りの計算を行う必要があるので図示と同
じ回路が2つ必要である。
発明の効果
以上詳述したようにこの発明はtの値を固定しあらかじ
め(! −t)3.(1−t)’t、(1−t)t″(
3を計算してメモリ等に記憶させておくことによりベゼ
ー曲線などが高速に計算できる回路を構成することがで
きる。ここではtの値は0,0.1,0.2゜・・・1
.0としたがこれは曲線の大きさやドツトの密度などを
考慮して適当な値にすることにより従来方法と同程度の
誤差の少ない近似曲線を得ることができる。
め(! −t)3.(1−t)’t、(1−t)t″(
3を計算してメモリ等に記憶させておくことによりベゼ
ー曲線などが高速に計算できる回路を構成することがで
きる。ここではtの値は0,0.1,0.2゜・・・1
.0としたがこれは曲線の大きさやドツトの密度などを
考慮して適当な値にすることにより従来方法と同程度の
誤差の少ない近似曲線を得ることができる。
第1図はこの発明の一実施例を示すブロック回路図、第
2図は他の実施例を示すブロック回路図、第3図は直線
近似化の例を説明する線図、第4図は直線近似の例を示
すグラフである。
2図は他の実施例を示すブロック回路図、第3図は直線
近似化の例を説明する線図、第4図は直線近似の例を示
すグラフである。
Claims (1)
- (1)1つの曲線上の複数の点の座標を結ぶ直線で該曲
線を近似するに際して上記複数の点の各座標がB(x、
y)=A(x、y)+Σ_i_=_1Ci・fi(t)
で表わし、複数のtについてのfi(t)を予じめ記憶
した記憶装置と、上記記憶装置からfi(t)を順次読
み出す手段と、読み出したfi(t)にもとづいて各を
についてB(x、y)を演算する演算回路とを備えたこ
とを特徴とする曲線の直線近似化装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10289689A JPH02281385A (ja) | 1989-04-21 | 1989-04-21 | 曲線の直線近似化装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10289689A JPH02281385A (ja) | 1989-04-21 | 1989-04-21 | 曲線の直線近似化装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH02281385A true JPH02281385A (ja) | 1990-11-19 |
Family
ID=14339625
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP10289689A Pending JPH02281385A (ja) | 1989-04-21 | 1989-04-21 | 曲線の直線近似化装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH02281385A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04290181A (ja) * | 1991-03-19 | 1992-10-14 | Alps Electric Co Ltd | 曲線の座標データ再生方法 |
JPH0757105A (ja) * | 1993-08-18 | 1995-03-03 | Max Co Ltd | 曲線データ処理装置 |
JP2007206944A (ja) * | 2006-02-01 | 2007-08-16 | Sharp Corp | ベジェ曲線生成回路 |
-
1989
- 1989-04-21 JP JP10289689A patent/JPH02281385A/ja active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04290181A (ja) * | 1991-03-19 | 1992-10-14 | Alps Electric Co Ltd | 曲線の座標データ再生方法 |
JPH0757105A (ja) * | 1993-08-18 | 1995-03-03 | Max Co Ltd | 曲線データ処理装置 |
JP2007206944A (ja) * | 2006-02-01 | 2007-08-16 | Sharp Corp | ベジェ曲線生成回路 |
JP4658821B2 (ja) * | 2006-02-01 | 2011-03-23 | シャープ株式会社 | ベジェ曲線生成回路 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5920484A (en) | Method for generating a reduced order model of an electronic circuit | |
EP0530936B1 (en) | Method and apparatus for performing prescaled division | |
JPH08329261A (ja) | パラメータ曲線発生器 | |
US4727507A (en) | Multiplication circuit using a multiplier and a carry propagating adder | |
JPH02281385A (ja) | 曲線の直線近似化装置 | |
Ye et al. | Static error analysis and optimization of faithfully truncated adders for area-power efficient FIR designs | |
Hertz et al. | Parabolic synthesis methodology implemented on the sine function | |
Hertz et al. | A methodology for parabolic synthesis of unary functions for hardware implementation | |
JP2737933B2 (ja) | 除算装置 | |
JPH02176879A (ja) | パラメータ曲線発生器 | |
JPH0585924B2 (ja) | ||
JPS60129853A (ja) | アドレス発生装置 | |
JPH0445860B2 (ja) | ||
JP2567985B2 (ja) | ディジタル回路のパス自動選択方法及びディジタル回路のパス自動選択装置 | |
US3778607A (en) | Automatic scaling system | |
JP3166781B2 (ja) | 加算回路 | |
JP3201097B2 (ja) | 乗算器における乗算処方方法 | |
JP2696903B2 (ja) | 数値計算装置 | |
EP0631253A2 (en) | A device for use in the digital processing of a graphic image containing a straight line | |
JPS60171535A (ja) | 除算装置 | |
JPS61101872A (ja) | 高速フ−リエ変換演算回路 | |
KR930004215B1 (ko) | 디지탈하드웨어장치 및 디지탈데이터처리 방법 | |
Grigore et al. | Optimal hardware implementation of a low cost multiplier using multifunctional registers with decoded mode inputs | |
KR100228576B1 (ko) | 어레이형 고속 좌표 회전 디지틀 컴퓨터 회로 | |
JPH03166623A (ja) | 除算回路 |