JPH0628418A - Equal equally dividing points calculating method for b-spline curve - Google Patents

Equal equally dividing points calculating method for b-spline curve

Info

Publication number
JPH0628418A
JPH0628418A JP4179547A JP17954792A JPH0628418A JP H0628418 A JPH0628418 A JP H0628418A JP 4179547 A JP4179547 A JP 4179547A JP 17954792 A JP17954792 A JP 17954792A JP H0628418 A JPH0628418 A JP H0628418A
Authority
JP
Japan
Prior art keywords
length
curve
point
spline
spline curve
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.)
Withdrawn
Application number
JP4179547A
Other languages
Japanese (ja)
Inventor
Hiroyuki Takahashi
裕幸 高橋
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP4179547A priority Critical patent/JPH0628418A/en
Publication of JPH0628418A publication Critical patent/JPH0628418A/en
Withdrawn legal-status Critical Current

Links

Abstract

PURPOSE:To provide the equally dividing points calculating method for a B-spline curve, which can shorten the processing time. CONSTITUTION:When a B-spline curve on a drawing is indicated from a keyboard, in S1, control point information, a NOT vector, and an equal division number N are inputted, and in S2, designated length of a given point designated as one in plural equally dividing points between a start point and an end point on the B-spline curve is calculated, and in S3, curve length to a first candidate point being a target by using a ratio of length of an actual B-spline curve to a difference of the maximum value and the minimum value of the NOT vector of fundamental data of the B-spline curve is calculated, and in S4, length of the curve length and the designated length is compared, and when they are the same, it is decided that a position of a given point being a target is derived and the processing is finished, and unless they are the same, in S5, curve length of a second candidate point is calculated so as to insert and hold the given point between its point and a first candidate point, based on a difference of the curve length being length on the curve between a first condidate point and the given point and the designated length, and in S6, a position of the given piont is calculated by a bisecting method by using the curve length of a first and a second candidate points and the processing is finished.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明はCADシステムで曲線の
表現に使用するB−スプライン曲線の等分点計算法に関
する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a method for calculating equidistant points of a B-spline curve used for representing a curve in a CAD system.

【0002】[0002]

【従来の技術】従来のB−スプライン曲線の等分点計算
法は、図6の従来の等分点計算法の流れ図に示し、以下
に説明するような手順を経て行っていた。
2. Description of the Related Art A conventional method for calculating an equal point of a B-spline curve is shown in the flow chart of the conventional equal point calculation method of FIG. 6 and has been carried out through the procedure described below.

【0003】まず、CADシステム内で図面上のB−ス
プライン曲線を指示すると、ステップ(以下Sと記す)
31でこのB−スプライン曲線の基本データ(制御点情
報・ノットベクトル)と等分割数Nとを取り込む。次
に、S32でこれらの入力データをチェックし、異常で
あればエラーとして終了し、正常であればS33でこの
基本データからB−スプライン曲線の全長を計算し、S
34で全長の1/N,2/N,・・・,(N−1)/N
の長さを求め、次にS35でB−スプライン曲線の始点
から曲線に沿って全長の1/N,2/N,・・・,(N
−1)/N の長さに該当する点を求め、求めた点のデ
ータをS36で出力する。ここで、S35で行った始点
から曲線に沿って全長の1/N,2/N,・・・,(N
−1)/Nの長さの点を求めるためには、スプライン曲
線上の点から曲線上の道のりに沿って指定した長さ分移
動した点を求める計算を必要とするので、次に曲線上の
与点の指定長移動計算の手順について説明する。
First, when a B-spline curve on the drawing is designated in the CAD system, a step (hereinafter referred to as S) is performed.
At 31, the basic data (control point information / knot vector) of this B-spline curve and the equal division number N are fetched. Next, these input data are checked in S32, and if abnormal, the process ends as an error. If normal, the total length of the B-spline curve is calculated from this basic data in S33, and S
34 at 1 / N, 2 / N, ..., (N-1) / N of the total length
Of the total length along the curve from the start point of the B-spline curve in S35, 1 / N, 2 / N, ..., (N
The point corresponding to the length of -1) / N is obtained, and the data of the obtained point is output in S36. Here, 1 / N, 2 / N, ..., (N of the total length along the curve from the starting point performed in S35
-1) / N In order to obtain a point, the calculation is required to find the point that has moved the specified length from the point on the spline curve along the path on the curve. A procedure for calculating the designated length movement of the point will be described.

【0004】図7は従来の曲線上の与点の指定長移動計
算の手順を示す流れ図である。まず、S41でB−スプ
ライン曲線の基本データと等分割数Nとを入力し、次に
S42で与点の曲線上におけるパラメータt0 を求め、
S43でこのt0 よりも大きなノットベクトルti を求
めた後、S44で区間[t0 ,ti ]における曲線の長
さを求める。次にS45で求めた曲線の長さが指定長と
一致するか否かを判別し、一致した場合にはS46でノ
ットベクトルti に対応する曲線上の点を求めて処理を
終了する。又、曲線の長さと指定長が一致せずかつ曲線
の長さが指定長に満たない場合は、S47で区間
[t0 ,ti ]における曲線の長さが指定長を越えるま
でti のiを増加させS44に飛び、以下、先に説明し
たと同様の動作を繰返す。曲線の長さが指定長を越えた
場合は、S48でパラメータt0とti-1 のうち大きい
方をtstart ,ノットベクトルti をtend とし、中間
点をtmiddle=(tstart +tend )÷2として目的の
点を二分法で探す。
FIG. 7 is a flow chart showing a conventional procedure for calculating the designated length movement of a given point on a curve. First, in S41, the basic data of the B-spline curve and the equal division number N are input, and then in S42, the parameter t 0 on the curve of the given point is obtained,
After the knot vector t i larger than t 0 is obtained in S43, the length of the curve in the section [t 0 , t i ] is obtained in S44. Next, it is determined whether or not the length of the curve obtained in S45 matches the designated length, and if they match, the point on the curve corresponding to the knot vector t i is obtained in S46, and the process ends. Further, if the length of and the curve does not match the length and the specified length of the curve is less than the specified length, the t i until the length of the curve in the interval [t 0, t i] in S47 exceeds the specified length i is increased and the process jumps to S44, and thereafter, the same operation as described above is repeated. If the length of the curve exceeds the specified length, the larger one of the parameters t 0 and t i-1 is set to t start and the knot vector t i is set to t end in S48, and the middle point is t middle = (t start + t end ) ÷ 2 and find the target point by the dichotomy.

【0005】図8は二分法を説明するための説明図であ
る。まず、図8分図(A)の状態から区間[t0 ,t
middle]での曲線の長さを求めて指定長と比較し、曲線
長と指定長が一致する場合は、パラメータtmiddleに対
応する曲線上の点を求めて終了する。曲線長と指定長が
一致しない場合は指定長と一致するまで次の処理を繰返
す。
FIG. 8 is an explanatory diagram for explaining the bisection method. First, the interval [t 0 , t
The length of the curve in [ middle ] is calculated and compared with the specified length. If the curve length and the specified length match, the point on the curve corresponding to the parameter t middle is calculated and the process ends. If the curve length does not match the specified length, the following process is repeated until the specified length matches.

【0006】図8分図(B)に示すように曲線長が指定
長よりも小さい場合には、tmiddleの値をtstart に代
入する。
When the curve length is smaller than the designated length as shown in FIG. 8B, the value of t middle is substituted for t start .

【0007】図8分図(C)に示すように曲線長が指定
長よりも大きい場合には、tmiddleの値をtend に代入
する。tstart (又はtend )の更新後tmiddle=(t
start +tend )÷2の式に従ってtmiddleの更新を行
うことにより、図8分図(A)の状態に戻り、再度、区
間[t0 ,tmiddle]の曲線の長さを求め、曲線長と指
定長とが一致するまで先に説明した処理を繰返す。
When the curve length is larger than the designated length as shown in FIG. 8C, the value of t middle is substituted for t end . After updating t start (or t end ) t middle = (t
By updating t middle according to the formula start + t end ) / 2, the state returns to the state of FIG. 8A, and the length of the curve in the section [t 0 , t middle ] is calculated again, and the curve length is calculated . The above-mentioned processing is repeated until the specified length matches the specified length.

【0008】以上が,従来の曲線上の指定長移動計算の
手順である。
The above is the conventional procedure for calculating the designated length movement on a curve.

【0009】[0009]

【発明が解決しようとする課題】上述した従来のB−ス
プライン曲線の等分点計算法は、t0 が、通常は曲線上
の始点であるため、曲線上の与点から指定した長さ分移
動した点を求める計算に時間がかかり、特に、B−スプ
ラインの通過点数が多い場合には通過点数に比例して処
理時間がかかってしまうという問題点がある。
In the conventional B-spline curve equidistant point calculation method described above, since t 0 is usually the starting point on the curve, the length equal to the length specified from the given point on the curve is used. There is a problem in that it takes time to calculate the moved point, and particularly when the number of B-spline passing points is large, the processing time is proportional to the number of passing points.

【0010】本発明の目的は、処理時間を短縮できるB
−スプライン曲線の等分点計算法を提供することにあ
る。
An object of the present invention is to shorten the processing time B
-To provide an equal point calculation method for a spline curve.

【0011】[0011]

【課題を解決するための手段】本発明のB−スプライン
曲線の等分点計算法は、CADシステムで曲線の表現に
使用するB−スプライン曲線上の始点と終点との間の複
数の等分点の中の1つとして指定する指定長を持つ与点
の位置を算出するB−スプライン曲線の等分点計算法に
おいて、前記B−スプライン曲線の基本データのノット
ベクトルの最大値と最小値との差に対する実際のB−ス
プライン曲線の長さの比を用いて目的の第1の候補点ま
での曲線長を定め、前記第1の候補点と前記与点との間
の曲線上の長さである曲線長と指定長の差を基に前記第
1の候補点との間に前記与点を挟むよう第2の候補点の
曲線長を算出し、前記第1および第2の候補点の曲線長
を用いて二分法により前記与点の位置を算出する構成で
ある。
SUMMARY OF THE INVENTION The B-spline curve equidistant point calculation method of the present invention comprises a plurality of equal points between a start point and an end point on a B-spline curve used to represent the curve in a CAD system. In the B-spline curve equal point calculation method for calculating the position of a given point having a designated length designated as one of the points, the maximum value and the minimum value of the knot vector of the basic data of the B-spline curve are calculated. The ratio of the length of the actual B-spline curve to the difference between the two is used to determine the curve length to the first candidate point of interest, and the length on the curve between the first candidate point and the given point. Based on the difference between the curve length and the designated length, the curve length of the second candidate point is calculated so as to sandwich the given point between the first candidate point and the first candidate point, and the curve length of the first and second candidate points is calculated. The position of the given point is calculated by the bisection method using the curve length.

【0012】本発明のB−スプライン曲線の等分点計算
法は、B−スプライン曲線の基本データのノットベクト
ルの中の最大値と最小値との差を前記B−スプライン曲
線の長さで除してスプラインの単位長さ当りのノットベ
クトルの平均変化率とし、この平均変化率に目的の与点
までの指定長を乗じたものを前記B−スプライン曲線の
始点から目的の第1の候補点までの曲線長と定めてもよ
い。
In the B-spline curve equal point calculation method of the present invention, the difference between the maximum value and the minimum value in the knot vector of the basic data of the B-spline curve is divided by the length of the B-spline curve. The average change rate of the knot vector per unit length of the spline, and multiplying this average change rate by the specified length up to the target giving point gives the first candidate point of interest from the start point of the B-spline curve. May be defined as the curve length up to.

【0013】[0013]

【実施例】次に、本発明の実施例について図面を参照し
て説明する。
Embodiments of the present invention will now be described with reference to the drawings.

【0014】図9は本発明の一実施例のハードウェアの
構成を示す外観図である。本発明を実行するための入出
力演算装置10は、B−スプライン曲線の指定長移動計
算等の演算や、各デバイス装置に演算結果を知らせる役
割を果たすCPUとしてのエンジニアリングワークステ
ーション(以下EWSと記す)1と、CAD図面として
曲線等の要素を表示出力するCRTディスプレイ2と、
等分割数等の数字をオペレータが入力するのに用いるキ
ーボード3と、画面上の曲線の要素指示をオペレータが
行うのに用いるタブレット4およびスタイラスペン5と
を備えている。
FIG. 9 is an external view showing a hardware configuration of an embodiment of the present invention. An input / output arithmetic unit 10 for carrying out the present invention is an engineering workstation (hereinafter referred to as EWS) as a CPU that plays a role of performing a calculation such as a designated length movement calculation of a B-spline curve and notifying each device unit of the calculation result. ) 1 and a CRT display 2 for displaying and outputting elements such as curves as a CAD drawing,
A keyboard 3 used by the operator for inputting numbers such as the number of equal divisions, a tablet 4 and a stylus pen 5 used by the operator for instructing curved line elements on the screen are provided.

【0015】入出力演算装置10を用いて本発明を実行
する手順について以下に示す。
The procedure for carrying out the present invention using the input / output arithmetic unit 10 will be described below.

【0016】本発明のB−スプライン曲線の等分点計算
法の動作の要点は、図1の流れ図に示すように、キーボ
ード3から図面上のB−スプライン曲線を指示すると、
S1でこのB−スプライン曲線の基本データ(制御点情
報・ノットベクトル)と等分割数Nとを入力し、次に、
S2でB−スプライン曲線上の始点と終点との間の複数
の等分点の中の1つとして指定する与点の指定長を算出
し、S3でB−スプライン曲線の基本データのノットベ
クトルの最大値と最小値との差に対する実際のB−スプ
ライン曲線の長さの比を用いて目的の第1の候補点まで
の曲線長を算出し、S4で曲線長と指定長との長さを比
較し、同一であれば目的とする与点の位置が求まったと
して終了する。又、同一でなければ、S5で第1の候補
点と与点との間の曲線上の長さである曲線長と指定長の
差を基に第1の候補点との間に与点を挟むよう第2の候
補点の曲線長を算出し、S6で第1および第2の候補点
の曲線長を用いて二分法により与点の位置を算出して終
了することにある。
The essential point of the operation of the equal point calculation method of the B-spline curve of the present invention is that when the B-spline curve on the drawing is designated from the keyboard 3 as shown in the flow chart of FIG.
In S1, the basic data (control point information / knot vector) of this B-spline curve and the equal division number N are input, and next,
In S2, a designated length of a given point that is designated as one of a plurality of equally divided points between the start point and the end point on the B-spline curve is calculated, and in S3, the knot vector of the basic data of the B-spline curve is calculated. The ratio of the length of the actual B-spline curve to the difference between the maximum value and the minimum value is used to calculate the curve length up to the target first candidate point, and the length between the curve length and the designated length is calculated in S4. If they are the same, the position of the target addition point is determined and the process ends. If they are not the same, in S5, a given point is set between the first candidate point and the given point based on the difference between the curve length which is the length on the curve and the designated length. This is to calculate the curve length of the second candidate point so as to be sandwiched, calculate the position of the given point by the dichotomy method using the curve lengths of the first and second candidate points in S6, and end the processing.

【0017】図2ないし図4は本発明の一実施例の詳細
な流れ図である。
2 to 4 are detailed flow charts of one embodiment of the present invention.

【0018】まず図2のS7でCAD図面上にあるスプ
ライン曲線をタブレット4を使用して指示することによ
り制御点座標やノットベクトル等の基本データと曲線上
の与点データを入力し、あらかじめ領域を確保しておい
た変数領域に格納する。次にS8で与点の曲線上のパラ
メータを求めてこれを変数p0 に格納する。さらにS9
で基本データとして格納してある制御点座標とノットベ
クトルとからスプライン全体の長さを数値積分のシンプ
ソン法より求めた後、次の計算式に当てはめることによ
り、スプラインの単位長さ当りのノットベクトルの平均
変化率を求め、これをλ0 という変数に格納する。
First, in step S7 of FIG. 2, the spline curve on the CAD drawing is designated by using the tablet 4, basic data such as control point coordinates and knot vectors, and the point data on the curve are input, and the area is preliminarily set. Is stored in the reserved variable area. Next, in S8, the parameter on the curve of the given point is calculated and stored in the variable p 0 . Further S9
After calculating the total length of the spline from the Simpson method of numerical integration from the control point coordinates and the knot vector stored as the basic data in, the knot vector per unit length of the spline is obtained by applying the following formula. The average rate of change of is calculated and stored in the variable λ 0 .

【0019】 次にS10でp0 +(目的の指定長)×λ0 から指定長
移動点の候補パラメータp1 を求め、S11で再びシン
プソン法で区間[p0 ,p1 ]における曲線の長さLを
計算し、S12で求めた曲線長Lと指定長とを比較し、
一致する場合は図4のS13に飛び、パラメータp1
対応する曲線上の点を求めてその結果を出力して処理を
終了する。曲線長と指定長が一致しない場合は、S14
で(指定長−L)の値の格納領域からこの値を取り出し
てλ0 を乗じて進み幅δp とし、これをp1 に加算す
る。即ちp1 +δp で新候補点パラメータを定めてこれ
を変数pnew に格納し、元のp1 を変数pold に格納
し、S15で(指定長−L)の符号を変数ε1 に格納す
る。
[0019] Next, in S10, the candidate parameter p 1 of the designated length moving point is obtained from p 0 + (target designated length) × λ 0 , and in S11, the length L of the curve in the section [p 0 , p 1 ] is again determined by the Simpson method. Calculate and compare the curve length L obtained in S12 with the designated length,
If they match, the process jumps to S13 of FIG. 4, finds a point on the curve corresponding to the parameter p 1 , outputs the result, and ends the process. If the curve length and the specified length do not match, S14
Then, this value is taken out from the storage area of the value of (designated length-L) and multiplied by λ 0 to obtain the advance width δ p , which is added to p 1 . That is, a new candidate point parameter is defined by p 1 + δ p and stored in the variable p new , the original p 1 is stored in the variable p old, and the code of (specified length −L) is stored in the variable ε 1 in S15. To do.

【0020】ここで動作は図3に移り、S16で区間
[p0 ,pnew ]における曲線長L’を計算し、S17
でこの曲線長L’と指定長とを比較し、曲線長L’が指
定長と一致する場合は図4のS13に飛び、パラメータ
new に対応する曲線上の点を求めて終了する。曲線長
L’と指定長とが一致しない場合には、S18で(指定
長−L’)の符号を変数ε2 に格納し、S19で変数ε
1 と変数ε2 との符号の比較演算を行う。ε1 とε2
の符号が一致する場合は、S20でパラメータpnew
δp を加えてこれをpnew とする。次にS21でpnew
とp0 とを比較しpnew がp0 より大きい値をとる場合
には、S16に飛びループに入り、元の変数pnew の値
を変数pold に格納して、区間[p0 ,pnew ]におけ
る曲線の長さL’がS17で指定長と一致すると判定す
れば図4のS13に飛び、S17で一致しない場合であ
ってもS19で(指定長−L’)の符号がε1 と異なる
と判定すれば図4のS23に飛び、S21でpnew がp
0 以下の値をとった場合はS22でp0 をpnew として
図4のS23に飛び、S16からS21までのループを
抜け出すまでパラメータpnew の更新を続ける。
Here, the operation shifts to FIG. 3, the curve length L'in the section [p 0 , p new ] is calculated in S16, and S17 is calculated.
Then, the curve length L'is compared with the designated length, and if the curve length L'matches the designated length, the process jumps to S13 in FIG. 4 to find the point on the curve corresponding to the parameter p new and terminate. When the curve length L ′ does not match the designated length, the sign of (designated length−L ′) is stored in the variable ε 2 in S18, and the variable ε is stored in S19.
The sign of 1 and the variable ε 2 is compared. If the signs of ε 1 and ε 2 match, δ p is added to the parameter p new in S20 to make this p new . Next, in S21, p new
And p 0 are compared with each other, and if p new takes a value larger than p 0 , the process jumps to S16, enters the loop, stores the value of the original variable p new in the variable p old, and stores the interval [p 0 , p If it is determined in S17 that the length L ′ of the curve in [ new ] matches the designated length, the process jumps to S13 in FIG. 4, and even if the length does not match in S17, the sign of (designated length−L ′) is ε 1 in S19. If it is determined that P new is different from p new
When the value is 0 or less, p 0 is set to p new in S22, the process jumps to S23 in FIG. 4, and the parameter p new is continuously updated until the loop from S16 to S21 is exited.

【0021】このループを抜け出した状態は、図5の本
発明での二分法の演算開始状態を示す図で明らかなよう
に、目的の指定長移動点の曲線上のパラメータは、パラ
メータpold とpnew の間にある。
The state of exiting this loop is, as is clear from the diagram showing the state of operation of the dichotomy according to the present invention in FIG. 5, the parameters on the curve of the target designated length moving point are the parameters p old and between p new .

【0022】次に動作は図4に移り、S23で3つの変
数pstart ,pend ,pmiddleを用意し次のように定義
する。即ち、パラメータpold とpnew との内、小さい
方をpstart ,大きい方をpend とし、さらにpmiddle
=(pstart +pend )÷2としてそれぞれ変数の値と
して格納し、これらを用いて指定長移動点を二分法で探
す。二分法による目的の点の探索は従来の場合と同様
で、以下のように行う。S24で区間[p0
middle]における曲線の長さL”を数値積分で求め、
S25で指定長との比較を行い、曲線長L”と指定長と
が一致する場合はS13でパラメータpmiddleに対応す
る曲線上の点を求めて終了する。曲線長L”と指定長と
が一致しない場合は指定長と一致するまで次の処理を繰
り返す。即ち、曲線長L”が指定長よりも小さい場合
は、S26でpmiddleの値を変数pstart の値に格納す
る。又、曲線長が指定長よりも大きい場合は、S27で
middleの値を変数pend の値に格納する。続いてp
start (又はpend )の更新後、S28でpmiddle
(pstart +pend )÷2でpmiddleの更新を行い、S
24に戻り、区間[p0,pmiddle]の曲線の長さを数
値積分で求め、S24からS28までを曲線長L”と指
定長とが一致するまで繰り返す。
Next, the operation moves to FIG. 4, and in S23, three variables p start , p end and p middle are prepared and defined as follows. That is, of the parameters p old and p new , the smaller one is p start , the larger one is p end , and p middle
= (P start + p end ) / 2, which are stored as the values of the variables, and the designated length moving point is searched by the dichotomy method using these. The search for the target point by the bisection method is similar to the conventional case, and is performed as follows. In S24, the section [p 0 ,
p middle ] to find the length L "of the curve by numerical integration,
In S25, a comparison is made with the designated length, and if the curve length L ″ and the designated length match, the point on the curve corresponding to the parameter p middle is found in S13 and the processing ends. If they do not match, the next process is repeated until they match the specified length. That is, when the curve length L ″ is smaller than the designated length, the value of p middle is stored in the value of the variable p start in S26. Further, when the curve length is larger than the designated length, the value of p middle in S27. Is stored in the value of the variable p end .
After updating start (or p end ), p middle =
(P start + p end ) / 2 updates p middle , and S
Returning to step 24, the length of the curve in the section [p0, pmiddle] is obtained by numerical integration, and steps S24 to S28 are repeated until the curve length L ″ matches the designated length.

【0023】以上が,発明を適用した曲線上の指定長移
動計算の手順である。
The above is the procedure for calculating the designated length movement on a curve to which the invention is applied.

【0024】このように構成することにより、特に通過
点を多い場合に処理時間の短縮に効果を発揮するB−ス
プライン曲線の等分点計算法を提供できる。
With this configuration, it is possible to provide a B-spline curve equidistant point calculation method that is effective in shortening the processing time especially when there are many passing points.

【0025】実際の性能向上の実例を下表に示す。The following table shows an example of actual performance improvement.

【0026】[0026]

【0027】 [0027]

【0028】[0028]

【発明の効果】以上説明したように、本発明は、B−ス
プライン曲線の基本データのノットベクトルの最大値と
最小値との差に対する実際のB−スプライン曲線の長さ
の比を用いて目的の第1の候補点までの曲線長を定め、
第1の候補点と与点との間の曲線上の長さである曲線長
と指定長の差を基に第1の候補点との間に与点を挟むよ
う第2の候補点の曲線長を算出し、第1および第2の候
補点の曲線長を用いて二分法により与点の位置を算出す
ることにより、B−スプライン曲線の等分点計算処理時
間を短縮できるという効果が有る。
As described above, the present invention uses the ratio of the actual length of the B-spline curve to the difference between the maximum value and the minimum value of the knot vector of the basic data of the B-spline curve. Determines the curve length to the first candidate point of
The curve of the second candidate point so that the given point is sandwiched between the first candidate point and the given point based on the difference between the curve length that is the length on the curve and the designated length By calculating the length and calculating the position of the given point by the bisection method using the curve lengths of the first and second candidate points, it is possible to reduce the time required to calculate the equidistant points of the B-spline curve. .

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明のB−スプライン曲線の等分点計算法の
動作の要点を説明するための流れ図である。
FIG. 1 is a flow chart for explaining the essential points of the operation of a method for calculating equal points of a B-spline curve according to the present invention.

【図2】本発明の一実施例の詳細な流れ図である。FIG. 2 is a detailed flow chart of one embodiment of the present invention.

【図3】本発明の一実施例の詳細な流れ図である。FIG. 3 is a detailed flowchart of one embodiment of the present invention.

【図4】本発明の一実施例の詳細な流れ図である。FIG. 4 is a detailed flow chart of one embodiment of the present invention.

【図5】本発明での二分法の演算開始状態を示す図であ
る。
FIG. 5 is a diagram showing a calculation start state of the bisection method according to the present invention.

【図6】従来の等分点計算法の流れ図である。FIG. 6 is a flow chart of a conventional equal point calculation method.

【図7】従来の曲線上の与点の指定長移動計算の手順を
示す流れ図である。
FIG. 7 is a flow chart showing a conventional procedure for calculating a designated length movement of a given point on a curve.

【図8】二分法を説明するための説明図である。FIG. 8 is an explanatory diagram for explaining the bisection method.

【図9】本発明の一実施例のハードウェアの構成を示す
外観図である。
FIG. 9 is an external view showing a hardware configuration according to an embodiment of the present invention.

【符号の説明】[Explanation of symbols]

1 エンジニアリングワークステーション(EWS) 2 CRTディスプレイ 3 キーボード 4 タブレット 5 スタイラスペン 10 入出力演算装置 1 Engineering workstation (EWS) 2 CRT display 3 Keyboard 4 Tablet 5 Stylus pen 10 Input / output computing device

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】 CADシステムで曲線の表現に使用する
B−スプライン曲線上の始点と終点との間の複数の等分
点の中の1つとして指定する指定長を持つ与点の位置を
算出するB−スプライン曲線の等分点計算法において、
前記B−スプライン曲線の基本データのノットベクトル
の最大値と最小値との差に対する実際のB−スプライン
曲線の長さの比を用いて目的の第1の候補点までの曲線
長を定め、前記第1の候補点と前記与点との間の曲線上
の長さである曲線長と指定長の差を基に前記第1の候補
点との間に前記与点を挟むよう第2の候補点の曲線長を
算出し、前記第1および第2の候補点の曲線長を用いて
二分法により前記与点の位置を算出することを特徴とす
るB−スプライン曲線の等分点計算法。
1. A position of a given point having a designated length designated as one of a plurality of equal points between a start point and an end point on a B-spline curve used for expressing a curve in a CAD system is calculated. In the B-spline curve equal point calculation method,
The ratio of the actual length of the B-spline curve to the difference between the maximum value and the minimum value of the knot vector of the basic data of the B-spline curve is used to determine the curve length up to the first candidate point of interest, and The second candidate is arranged so as to sandwich the given point between the first candidate point and the given point based on the difference between the curve length which is the length on the curve and the designated length. A method for calculating equal points of a B-spline curve, wherein a curve length of a point is calculated, and a position of the given point is calculated by a bisection method using the curve lengths of the first and second candidate points.
【請求項2】 B−スプライン曲線の基本データのノッ
トベクトルの中の最大値と最小値との差を前記B−スプ
ライン曲線の長さで除してスプラインの単位長さ当りの
ノットベクトルの平均変化率とし、この平均変化率に目
的の与点までの指定長を乗じたものを前記B−スプライ
ン曲線の始点から目的の第1の候補点までの曲線長と定
めることを特徴とする請求項1記載のB−スプライン曲
線の等分点計算法。
2. An average of knot vectors per unit length of a spline by dividing a difference between a maximum value and a minimum value in knot vectors of basic data of a B-spline curve by the length of the B-spline curve. The rate of change is defined as a curve length from the start point of the B-spline curve to the first target candidate point, which is obtained by multiplying the average rate of change by a designated length up to the target giving point. 1. The method for calculating the equal points of the B-spline curve described in 1.
JP4179547A 1992-07-07 1992-07-07 Equal equally dividing points calculating method for b-spline curve Withdrawn JPH0628418A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4179547A JPH0628418A (en) 1992-07-07 1992-07-07 Equal equally dividing points calculating method for b-spline curve

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4179547A JPH0628418A (en) 1992-07-07 1992-07-07 Equal equally dividing points calculating method for b-spline curve

Publications (1)

Publication Number Publication Date
JPH0628418A true JPH0628418A (en) 1994-02-04

Family

ID=16067660

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4179547A Withdrawn JPH0628418A (en) 1992-07-07 1992-07-07 Equal equally dividing points calculating method for b-spline curve

Country Status (1)

Country Link
JP (1) JPH0628418A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013083582A (en) * 2011-10-11 2013-05-09 Fujitsu Ltd Movement locus interpolation device, movement locus interpolation method, and program

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013083582A (en) * 2011-10-11 2013-05-09 Fujitsu Ltd Movement locus interpolation device, movement locus interpolation method, and program
US8873805B2 (en) 2011-10-11 2014-10-28 Fujitsu Limited Trajectory interpolation apparatus and method

Similar Documents

Publication Publication Date Title
JPH0628418A (en) Equal equally dividing points calculating method for b-spline curve
EP0513689B1 (en) A membership function data preparation method and an apparatus thereof
JPH08314892A (en) Rate of interest predicting system applying neural net to econometric model
Bosner et al. Non-uniform exponential tension splines
JPS59145970A (en) Displaying method of spectrum
JP2684609B2 (en) Graphic display method in graphic data processing device
JP2807950B2 (en) Graphic drawing apparatus and its graphic drawing method
JP2783143B2 (en) Computer-aided design equipment
JPH0830679A (en) Generation and update processor for bar chart for schedule control
JPH053008B2 (en)
JPH10283002A (en) Optimum load distributor
JP2896544B2 (en) Character generation method and apparatus
JPH06315856A (en) Production planning system
JP3108582B2 (en) Thicker text generator
JPH03290755A (en) Table calculation system
JPH0589210A (en) Cad/cam device
JP3900929B2 (en) Square root symbol display control apparatus, program, and square root symbol display control method
JPH0628153A (en) Low-error calculation processor
JPH04191958A (en) Device for multivariable regression analysis
JPS6254377A (en) Selecting method for vector
JPH04171536A (en) Support device for development of fuzzy control system
JPH0581230A (en) Learning device for neural network
JP2002074377A (en) Device and method for line segment display processing and storage medium
JPH02162463A (en) Back-up device for production of process network
JPH033084A (en) Line plotting method

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 19991005