JP2854035B2 - 曲線生成装置 - Google Patents

曲線生成装置

Info

Publication number
JP2854035B2
JP2854035B2 JP1243645A JP24364589A JP2854035B2 JP 2854035 B2 JP2854035 B2 JP 2854035B2 JP 1243645 A JP1243645 A JP 1243645A JP 24364589 A JP24364589 A JP 24364589A JP 2854035 B2 JP2854035 B2 JP 2854035B2
Authority
JP
Japan
Prior art keywords
matrix
curve
max
total number
value
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
Application number
JP1243645A
Other languages
English (en)
Other versions
JPH03105579A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP1243645A priority Critical patent/JP2854035B2/ja
Publication of JPH03105579A publication Critical patent/JPH03105579A/ja
Application granted granted Critical
Publication of JP2854035B2 publication Critical patent/JP2854035B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Image Generation (AREA)

Description

【発明の詳細な説明】 [目次] 概要 産業上の利用分野 従来の技術 発明が解決しようとする課題 課題を解決するための手段 作用 実施例 発明の効果 [概要] 差分マトリクス法の利用で曲線を生成する装置に関
し、 高品質な曲線を高速に生成できる装置の提供を目的と
し、 曲線を形成する各点のいずれかと対応したマトリクス
を微分演算して該マトリクスから所定の時間間隔だけ離
れた次のマトリクスまでの増分量を算出し、算出された
増分量と算出基準のマトリクスとの加算で次のマトリク
スを求める処理が前記曲線の始点と対応したマトリクス
を初期値として該曲線の終点と対応したマトリクスの得
られるまで繰り返される曲線生成装置において、前記初
期値のマトリクスに含まれた誤差が前記加算の繰り返し
により前記終点までに累積する量を示し曲線形成点の総
数が変数となる関数を定め、該関数の値が許容値以下で
最大となる曲線形成点の総数を算出し、曲線の始点から
終点までの時間的な長さと選択された総数とから前記時
間間隔を求める、ことを特徴とする。
[産業上の利用分野] 本発明は、差分マトリクス法の利用で曲線を生成する
装置に関する。
CG,CADの分野においては品質の高い曲線を生成するこ
とが必要とされる。
そして、高品質な曲線をソフトウェアで生成する場合
にはその生成速度が低いので、ハードウェアで曲線を生
成する方式がCG装置やCAD装置で採用される。
[従来の技術] 中点分割法を適用したハードウェアで曲線が生成され
る場合には、全ての曲線をBezier曲線に変換することが
必要となり、また、その変換を行うハードウェアの構成
が著しく複雑化し、さらに、中点座標を繰り返して記憶
するスタックの容量が膨大となる。
そこで、マトリクスの微分演算で算出された増分量を
そのマトリクスに加算する処理が繰り返されることによ
り曲線形成点を逐次求める差分マトリクス法が曲線生成
用のハードウェアに適用される。
この差分マトリクス法によれば、前記の変換を行うこ
となく一般多項式,Bezier曲線,Spline曲線などを高速に
生成でき、しかも、スタック量が膨大となることはな
い。
[発明が解決しようとする課題] しかしながら差分マトリクス法によれば、増分量の逐
次加算で曲線生成点のマトリクスが順に求められるの
で、その加算の繰り返しにより誤差が次第に累積する。
本発明は上記の従来の事情に鑑みてなされたものであ
り、その目的は、高品質な曲線を高速に生成できる装置
を提供することにある。
[課題を解決するための手段] 上記目的を達成するために、本発明では曲線(100)
を形成する各点(P0・・・Pi,Pi+1・・・Pn)のいず
れか(Pi)と対応したマトリクス(M(ti))を微分演
算して該マトリクス(M(ti))から所定の時間間隔
(δ)だけ離れた次のマトリクス(M(ti))までの増
分量(a)を算出する手段と、算出された増分量(a)
と算出基準のマトリクス(M(t+i))とを加算する
手段と、該加算値より次の曲線形成点(Pi+1)と対応
したマトリクス(M(ti+1))を求める処理を行う手
段と、該処理を前記曲線(100)の始点(P0)と対応し
たマトリクス(M(t0))を初期値として該曲線(10
0)の終点(Pn)と対応したマトリクス(M(tn))が
得られるまで繰り返す手段と、を備えた曲線生成装置に
おいて、前記初期値のマトリクス(M(t0))に含まれ
た誤差(ε)が前記加算の繰り返しにより前記終点(P
n)までに蓄積する量(E)を示し曲線形成点(P0・・
・Pi,Pi+1・・・Pn)の総数(n)が変数となる関数
(f)を定める手段(ステップ110)と、該関数(f)
の値(E)が許容値(E max)以下のときに最大となる
曲線形成点(P0・・・Pi,Pi+1・・・Pn)の総数(n m
ax)を選択する手段(ステップ120)と、曲線(100)の
始点(P0)から終点(Pn)までの時間的な長さ(tn〜t
0)と選択された総数(n max)とから前記時間間隔(δ
min)を求める手段(ステップ130)と、を有すること
を特徴とする。
[作用] 本発明では、各曲線生成点P0・・・Pi,Pi+1・・・P
nを各々示すマトリクスM(t0)・・・M(ti),M(ti
+1)・・・M(tn)が差分マトリクス法で順に求めら
れる。
その差分マトリクス演算で使用される時間間隔δ min
は曲線100の始点P0から終点Pnまでの時間的な長さtn〜t
0曲線形成点P0・・・Pi,Pi+1・・・Pnの総数n maxか
ら求められる(ステップ130)。
さらに、時間間隔δ minを求めるために使用される曲
線形成点P0・・・Pi,Pi+1・・・Pnの総数n maxは関数
fの解を選択することにより得られる(ステップ12
0)。
この関数fは曲線形成点P0・・・Pi,Pi+1・・・Pn
の総数nを変数としており、初期誤差εが与えられるこ
とで最終的な累積誤差Eが得られ、関数値Eが許容誤差
E max以下となる条件下で変数nが最大となる解として
総数n maxが選択される。
そして、関数fはマトリクスM(t0),M(ti),M(ti
+1)・・・M(tn)と同様な形で表現できる。したが
って、最大総数n maxを差分マトリクス法の利用で選択
でき、このため、曲線形成点P0・・・Pi,Pi+1・・・P
nとともに時間間隔δ minをハードウェアで高速に求め
ることが可能となる。
さらに、最終的な累積誤差Eが許容値E max以下とな
る最小の時間間隔δ minが求められるので、曲線100を
正確に表現することも可能となる。
[実施例] 以下、図面に基づいて本発明に係る方法の好適な実施
例を説明する。
第2図では本発明が適用された曲線発生器の構成が説
明されており、この曲線発生器はデータ入力部20,累積
誤差算出部22,差分マトリクス算出部24,間隔決定部26,
増分値加算部28,曲線出力部30で構成されている。
本実施例では三次元曲線100(例えば、ユニフォーム
Bスプライン関数)が生成の対象とされており、一定の
時間的な長さt0〜tnの区間における曲線制御点Qi,Qi+
1,Qi+2,Qi+3のデータがデータ入力部20から取り込ま
れる。
それら制御点Qi,Qi+1,Qi+2,Qi+3及び時間間隔δ
で初期値のマトリクスM(t0)=[A,B,C,D]を A=(1/6)Qi+(2/3)Qi+1+(1/6)Qi+2 B={(−1/6)δ+(1/2)δ−1/2}Qi +{1/2)δ−δ}Qi+1+{(−1/2)δ +(1/2)δ+1/2}Qi+2+(1/6)δ2Qi+3 C=(−δ+1)Qi+(3δ−2)Qi+1+(−3δ
+1)Qi+2+δQi+3 D=−Qi+3Qi+1−3Qi+2+Qi+3 ・・・第(1)式 により表現でき、このマトリクスM(t0)=[A,B,C,
D]の算出は差分マトリクス算出部24で行われる。
第3図では差分マトリクス算出部24と増分値加算部28
の作用が説明されており、マトリクスM(t0)=[A,B,
C,D]は曲線100の始点P0と対応している。
そして、初期値のマトリクスM(t0)=[A,B,C,D]
は増分値加算部28に与えられ、始点P0を示すその第1要
素A=S(t0)は増分値加算部28から曲線出力部30に与
えられて外部へ出力される。
また、増分加算部28では現在のマトリクスM(t0)の
第2要素B=ΔS(t0)が一次微分され、第3要素C=
Δ2S(t0)が二次微分され、さらに第4要素D=Δ3S
(t0)が三次微分される。
その微分演算で増分量aを示すマトリクス[B,C,D,
0]=[ΔS(t0),Δ2S(t0),Δ3S(t0)]が算出
され、増分値加算部28では増分量aのマトリクス[B,C,
D,0]がそれまでのマトリクスM(t0)=[A,B,C,D]に
加算される。
これにより得られたマトリクスM(t1)=[A+B,B
+C,C+D,D]の第1要素A+Bが次の曲線形成点P1を示
すデータとして曲線出力部30へ送出される。
さらに、新たなマトリクスM(t1)=[A+B,B+C,C
+D,D]へそれまでのマトリクスM(t0)=[A,B,C,D]
が更新される。
以上の処理は同様にして繰り返され、その結果、曲線
形成点P0,P1,P2・・・Pnを各々示すデータA,A+B,A+2B
+C・・・A+nB+n(n−1)C/2+n(n−1)
(n−2)D/6が外部へ順に出力される。
このときに求められるマトリクスM(t0)=[A,B,C,
D],M(t1)=[A+B,B+C,C+D,D],M(t2)=[A+
2B+C,B+2C+D,C+2D,D]・・・M(tn)=[A+nB+
n(n−1)C/2+n(n−1)(n−2)D/6,B+nC+
n(n−1)D/2,C+nD,D]の各要素S(ti+1),Δ
S(ti+1),Δ2S(ti+1),Δ3S(ti+1)は、次
の第(2)式で表現される。
S(ti+1)=S(ti)+ΔS(ti) ΔS(ti+1)=ΔS(ti)+Δ2S(ti) Δ2S(ti+1)=Δ2S(ti)+Δ3S(ti) Δ3S(ti+1)=Δ3S(ti) ・・・第(2)式 それらのマトリクスM(t0),M(t1),M(t2)・・・
M(tn)が求められる時間間隔δは δ=ti+1−ti ・・・第(3)式 で示され、微分演算及び増分量加算の回数nは n=(tn+t0)/δ ・・・第(4)式 で示される。
ここで、差分マトリクスの演算に際し、3次微分増分
量Δ3S(ti)の初期値Dに含まれる誤差εと最終的に累
積する誤差Eの許容値E maxがデータ入力部20から予め
取り込まれる。
曲線100の終点Pnで最終的に累積する誤差Eは、第3
図におけるマトリクスM(tn)の第1要素S(tn)から
理解されるように、 E=n(n−1)(n−2)ε/6 ・・・第(5)式 で示される。
その第(5)式は、曲線形成点Pi+1の間隔δが最も
密となる最大の形成点総数n maxを用いて E=n max(n max−1)(n max−2)ε/6 ・・・第(6)式 と表現でき、また、このときの時間間隔δ minは δ min=(tn−t0)/n max ・・・第(7)式 で示される。
その累積誤差Eが許容値E max以上となる条件は、 n max(n max−1)(n max−2)>6E max/ε ・・・第(8)式 で示され、この第(8)式は累積算出部22で生成され
る。
そして、差分マトリクス算出部24及び増分加算部28に
より第(8)式における左辺の値が差分マトリクス法で
求められ、第(8)式を満たす最大の形成点総数n max
が選択される。
すなわち、最大の形成点総数n maxが0以上の整数で
あるので、その総数n maxに0,1,2・・・を第(8)式に
代入して左辺の値を求める処理が繰り返される。
それら左辺の値は累積誤差算出部22に増分値加算部28
から逐次与えられ、第(8)式を満たす総数n maxが選
択される。
さらに、累積誤差算出部22からこの総数n maxが間隔
決定部26に与えられ、間隔決定部26では n max=n max−1 ・・・第(9)式 に従って最大の形成点総数n maxが定められる。
以上のように本実施例においては、第(8)式の左辺
が曲線100と同様な3次曲線式でこの式を満たす解が0
以上の整数であることに着目して最大総数n maxが差分
マトリクス法を用いてハードウェアで求められる。
したがって、ニュートン法などのように解の収束性や
算出所要時間の点で問題が生ずることはなく、第(8)
式の解が高速に算出される。
しかも、差分マトリクス法による演算が整数演算であ
るので、誤差が皆無となり、このため、正確な解を求め
ることが可能となる。
なお、増分値加算部28では S(n max)=n max(n max−1)(n max−2) ・・・第(10)式 が対象の曲線式として取り扱われる。
また、その際に第3図の値A,B,C,Dで示されるマトリ
クス要素は、 S(n maxi+1)=S(n maxi) ・・・第(11)式 ΔS(n maxi+1)=ΔS(n maxi)+Δ2S(n max
i) ・・・第(12)式 Δ2S(n maxi+1)=Δ2S(n maxi)+Δ3S(n max
i) ・・・第(13)式 Δ3S(n maxi+1)=Δ3S(n maxi) ・・・第(14)式 で各々示され、第(10)式から値A,B,C,Dの相当値An,B
n,Cn,Dnが次の第(15)式から求められる。
An=Bn=Cn=0 Dn=6 ・・・第(15)式 このようにして間隔決定部26で最小の時間間隔δ min
が求められると、第3図の値A,B,C,Dが完全に定まり、
以下は第(2)式に従って差分マトリクスの演算がn ma
x回繰り返えされる。
ただし、実際にはシフト数γを用いて次の第(16)式
で示される演算が行われ、これにより演算精度が高めら
れる。
S(ti+1)=S(ti)+γ*(1/γ)ΔS(ti)
(1/γ)ΔS(ti+1) =(1/γ)ΔS(ti)+γ*(1/γ2) Δ2S(ti)(1/γ2)Δ2S(ti+1) =(1/γ2)Δ2S(ti)+γ*(1/γ3)Δ3S(t
i)(1/γ3) Δ3S(ti+1) =(1/γ3)Δ3S(ti) ・・・第(16)式 また、曲線形成点Piの間隔が1ドットとなる場合に
は、それらの間を結ぶ直線は直線発生器で生成できる。
以上説明したように本実施例によれば、初期誤差εと
誤差許容値E maxが与えられることにより最終的な累積
誤差Eが誤差許容値E max以下となるので、差分マトリ
クス法で高品質な曲線100を生成できる。
また、最小の時間間隔δ minも差分マトリクス法で求
められるので、高品質な曲線100を高速に生成できる。
このため、CG,CADの処理が行われる装置を著しく高性
能化することが可能となる。
なお、初期誤差ε,誤差許容値E maxが大きな場合に
は、時間間隔δ maxもこれに応じて拡大するので、曲線
100の生成速度が極めて高くなる。
したがって、初期誤差ε及び誤差許容値E maxの指定
により、曲線100の生成速度と生成精度のいずれを優先
すべきかを用途に応じて選択できる。
[発明の効果] 以上説明したように本発明によれば、最終的な累積誤
差が誤差許容値以下となる時間間隔を用いて差分マトリ
クスの演算が行われ、その時間間隔も差分マトリクス法
で算出できるので、高品質な曲線を航測に生成するハー
ドウェアを構成することが可能となる。
【図面の簡単な説明】
第1図は発明の原理説明図、 第2図は実施例の構成説明図、 第3図は差分マトリクス算出部及び増分値加算部の作用
説明図、 である。 20……データ入力部 22……累積誤差算出部 24……差分マトリクス算出部 26……間隔決定部 28……増分値加算部 30……曲線出力部
フロントページの続き (56)参考文献 特開 昭64−41077(JP,A) 特開 昭62−297984(JP,A) 特開 昭64−82281(JP,A) (58)調査した分野(Int.Cl.6,DB名) G06T 11/00 - 11/20

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】曲線(100)を形成する各点(P0・・・Pi,
    Pi+1・・・Pn)のいずれか(Pi)と対応したマトリク
    ス(M(ti))を微分演算して該マトリクス(M(t
    i))から所定の時間間隔(δ)だけ離れた次のマトリ
    クス(M(ti))までの増分量(a)を算出する手段
    と、 算出された増分量(a)と算出基準のマトリクス(M
    (t+i))とを加算する手段と、 該加算値より次の曲線形成点(Pi+1)と対応したマト
    リクス(M(ti+1)を求める処理を行う手段と、 該処理を前記曲線(100)の始点(P0)と対応したマト
    リクス(M(t0))を初期値として該曲線(100)の終
    点(Pn)と対応したマトリクス(M(tn))が得られる
    まで繰り返す手段と、を備えた曲線生成装置において、 前記初期値のマトリクス(M(t0))に含まれた誤差
    (ε)が前記加算の繰り返しにより前記終点(Pn)まで
    に蓄積する量(E)を示し曲線形成点(P0・・・Pi,Pi
    +1・・・Pn)の総数(n)が変数となる関数(f)を
    定める手段(ステップ110)と、 該関数(f)の値(E)が許容値(Emax)以下のときに
    最大となる曲線形成点(P0・・・Pi,Pi+1・・・Pn)
    の総数(n max)を選択する手段(ステップ120)と、 曲線(100)の始点(P0)から終点(Pn)までの時間的
    な長さ(tn〜t0)と選択された総数(n max)とから前
    記時間間隔(δmin)を求める手段(ステップ130)と、 を有する ことを特徴とする曲線生成装置。
JP1243645A 1989-09-20 1989-09-20 曲線生成装置 Expired - Lifetime JP2854035B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1243645A JP2854035B2 (ja) 1989-09-20 1989-09-20 曲線生成装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1243645A JP2854035B2 (ja) 1989-09-20 1989-09-20 曲線生成装置

Publications (2)

Publication Number Publication Date
JPH03105579A JPH03105579A (ja) 1991-05-02
JP2854035B2 true JP2854035B2 (ja) 1999-02-03

Family

ID=17106902

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1243645A Expired - Lifetime JP2854035B2 (ja) 1989-09-20 1989-09-20 曲線生成装置

Country Status (1)

Country Link
JP (1) JP2854035B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117075612A (zh) * 2023-09-13 2023-11-17 东南大学 一种基于改进可视图的快速路径规划与基于esdf地图的轨迹优化方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2712078B2 (ja) * 1987-09-25 1998-02-10 株式会社東芝 ベジェ3次曲線のプロットに好適なΔt決定方法
JPH01154292A (ja) * 1987-12-10 1989-06-16 Fujitsu Ltd 曲線発生方式

Also Published As

Publication number Publication date
JPH03105579A (ja) 1991-05-02

Similar Documents

Publication Publication Date Title
CN112889219A (zh) 可变相位和频率脉宽调制技术
WO1990004818A1 (fr) Systeme d'interpolation de courbes ''pistolet'' (splines)
JPH0373883B2 (ja)
JPS6367680A (ja) 曲面加工方法
CN109164759B (zh) 曲线插补方法、设备及计算机可读存储介质
US3806713A (en) Method and apparatus for maximizing the length of straight line segments approximating a curve
US4581698A (en) Method and system for generating interpolation pulses
JPH09294393A (ja) リラクタンスモータにおける力補正のための装置と方法
JP2854035B2 (ja) 曲線生成装置
JPS63229506A (ja) 軸速度出力方式
EP0349182B1 (en) Method and apparatus for approximating polygonal line to curve
JP2677273B2 (ja) 3次ベジェ曲線の折線近似装置
WO1989009954A1 (fr) Procede et dispositif de production de courbes dans l'espace
CN112068487B (zh) 插补控制方法、装置以及可读存储介质
US5231340A (en) Servomotor control method
JPH01217562A (ja) 計算格子生成方式
JPH01292405A (ja) ディジタル位置サーボ装置
JP2000056822A (ja) 軌跡制御装置
US5917301A (en) Method for generating a motion profile of a motor
JP2538645B2 (ja) 曲線の折線近似装置
CN117226193B (zh) 一种电火花线切割硬件插补方法、装置及存储介质
JP3513989B2 (ja) 位置決め制御系の指令補間方法
JP3078273B2 (ja) 超音波モータの速度制御方法及び装置
JP2995812B2 (ja) 数値制御装置による工具軌跡生成方式
JPS6350722B2 (ja)