JPH09138855A - Curve generating device and its method - Google Patents

Curve generating device and its method

Info

Publication number
JPH09138855A
JPH09138855A JP18378996A JP18378996A JPH09138855A JP H09138855 A JPH09138855 A JP H09138855A JP 18378996 A JP18378996 A JP 18378996A JP 18378996 A JP18378996 A JP 18378996A JP H09138855 A JPH09138855 A JP H09138855A
Authority
JP
Japan
Prior art keywords
curve
designated
points
constraint condition
point
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
JP18378996A
Other languages
Japanese (ja)
Inventor
Takeshi Shimoyama
武司 下山
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 JP18378996A priority Critical patent/JPH09138855A/en
Publication of JPH09138855A publication Critical patent/JPH09138855A/en
Withdrawn legal-status Critical Current

Links

Landscapes

  • Image Generation (AREA)

Abstract

PROBLEM TO BE SOLVED: To generate a curve similar to a graphic imaged by a user based on plural points specified by the user. SOLUTION: Constraint conditions that specified points p1 to p4 are connected in a specified order on the curve and that the curvature of the curve is maximum at p2 and p3 , which are not endpoints, are set in a memory. A curve generating device provides a dividing point D1 for dividing an obtaining curve into partial curves C1 (t) and C2 (t) to describe each partial curve by the quadratic polynomial of a parameter (t). Then the coefficient of each polynomial is calculated through the use of the constraint condition by setting p1 and p4 to be endpoints and obtained C1 (t) and C2 (t) are connected to each other at D1 and displayed on the picture of a display device. A displayed curve becomes an approximate curve consisting of a polygonal line connecting these specified points.

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、指定された複数の
点に基づいて曲線を生成し、それをディスプレイやプリ
ンタなどの出力装置上で描画する曲線生成装置およびそ
の方法に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a curve generation apparatus and method for generating a curve based on a plurality of designated points and drawing the curve on an output device such as a display or a printer.

【0002】[0002]

【従来の技術】今日、工学における諸問題の考察におい
て、ユーザ(利用者)がイメージした図形を実際に描い
てみる機会が多い。例えば、ポスターなどの描画や、デ
モンストレーション用のイラストなどといった身近なも
のから、現代的な都市空間の設計、あるいは高密度電子
デバイスの設計といったハイテクノロジーの分野まで、
ありとあらゆる需要がある。
2. Description of the Related Art Today, in consideration of various problems in engineering, there are many opportunities to actually draw a figure imaged by a user. For example, from familiar things such as drawing posters and illustrations for demonstrations to high-tech fields such as modern urban space design or high-density electronic device design.
There is every kind of demand.

【0003】こうした需要に答えるべく、曲線の描画作
業を電子計算機上でディスプレイ等の表示装置を用いて
行えるように、これまでにもいくつかの図形設計装置、
あるいは、CAD(computer aided design )と呼ばれ
る種類のソフトウェアおよびハードウェアが提供され、
利用されてきた。
In order to meet such demands, some graphic design devices have been used so far so that a curve drawing operation can be performed on a computer using a display device such as a display.
Alternatively, a type of software and hardware called CAD (computer aided design) is provided,
It has been used.

【0004】また、近年において、バーチャルリアリテ
ィや3次元CAD等の3次元入出力装置、ホログラフ装
置等の発達によって、3次元映像を可視化するような装
置が市場に出回り始めており、平面だけでなく、空間も
意識した図形の設計が求められるようになりつつある。
Also, in recent years, with the development of virtual reality, three-dimensional input / output devices such as three-dimensional CAD, holographic devices, etc., devices for visualizing three-dimensional images have begun to appear on the market, and not only flat ones. It is becoming necessary to design figures that take space into consideration.

【0005】ユーザの求める図形を、ディスプレイある
いはプロッタといった2次元表示装置(以後、平面と呼
ぶ)上、あるいはバーチャルリアリティやホログラフと
いった3次元表示装置(以後、空間と呼ぶ)上に、ソフ
トウェアあるいはハードウェア(以後、作図装置と呼
ぶ)を用いて描く際には、作図装置によって提供されて
いる円、直線、文字、あるいは球、平面等の各部品を組
み合わせる作業が行われる。それらの部品の描画は、大
体、次の要領で行われるのが一般的である。 (1)ユーザが、ポインティング・デバイスを用いて、
平面または空間内の任意の点を指定する。 (2)作図装置は、指定された点(指定点)を座標ベク
トルとして認識する。 (3)それらの値を用いて、作図装置が指定された計算
方式に従って演算を行う。 (4)作図装置は、演算によって得られた結果を図形と
して、画面上の平面または空間内に表示する。
A graphic desired by a user is displayed on a two-dimensional display device (hereinafter referred to as a plane) such as a display or a plotter, or on a three-dimensional display device (hereinafter referred to as a space) such as a virtual reality or a holographic software or hardware. When drawing using a drawing device (hereinafter referred to as a drawing device), a work of combining parts such as a circle, a straight line, a character, or a sphere or a plane provided by the drawing device is performed. The drawing of these parts is generally performed in the following manner. (1) The user uses a pointing device to
Specify any point in the plane or space. (2) The drawing device recognizes a designated point (designated point) as a coordinate vector. (3) Using these values, the drawing device performs an operation according to the specified calculation method. (4) The drawing device displays the result obtained by the calculation as a figure on a plane or space on the screen.

【0006】従来の2次元平面図形の作図装置では、部
品の一つとして、自由曲線が提供されることがある。自
由曲線とは、ユーザが指定した点を用い、特定の計算方
式に従って描かれるなめらかな曲線のことである。この
自由曲線を用いれば、円や直線を単に組み合わせる場合
に比べて、より複雑な曲線を含む図形を描くことができ
る。
In a conventional two-dimensional plane drawing apparatus, a free curve may be provided as one of the parts. A free curve is a smooth curve drawn according to a specific calculation method using points specified by the user. By using this free curve, it is possible to draw a figure including a more complicated curve as compared with a case where circles and straight lines are simply combined.

【0007】[0007]

【発明が解決しようとする課題】しかしながら、従来の
自由曲線の設計方法には次のような問題がある。ユーザ
が始めに思い描く曲線は、指定した点を順に線分で結ん
で得られる多角形を、なめらかに膨らませて得られる丸
みを帯びた曲線、すなわち、多角形を曲線で近似した図
形である。
However, the conventional free curve design method has the following problems. The curve initially envisioned by the user is a rounded curve obtained by smoothly expanding a polygon obtained by connecting designated points in order with line segments, that is, a figure that approximates the polygon with a curve.

【0008】したがって、実際に画面に現れる図形にお
いても、得られた曲線が指定点を通っていなければなら
ないはずである。それにもかかわらず、従来より提供さ
れてきた平面図形の作図装置では、上述の(4)で表示
された曲線が結果的に指定点を通っていないものが多
い。
Therefore, even in the figure actually appearing on the screen, the obtained curve must pass through the specified point. Nonetheless, in many of the drawing apparatuses for planar figures that have been provided conventionally, the curve displayed in (4) above does not pass through the designated point as a result.

【0009】これは、例えば作図装置における(3)の
演算で、2次あるいは3次のスプライン曲線と呼ばれる
図形を描くための計算方式を採用した場合に共通して表
れる現象である。スプライン曲線とは、区分的多項式の
一種であるスプライン関数を利用して生成される曲線を
指し、2次、3次のスプライン曲線はそれぞれ2次、3
次の多項式から生成される。
This is a phenomenon which appears in common when the calculation method for drawing a graphic called a quadratic or cubic spline curve is adopted in the calculation of (3) in the drawing device, for example. The spline curve refers to a curve generated by using a spline function that is a kind of piecewise polynomial, and quadratic and cubic spline curves are quadratic and cubic, respectively.
It is generated from the following polynomial.

【0010】図18は、表示された平面内のスプライン
曲線の例を示している。図18においては、同一平面上
の4つの指定点に基づいて実線で示される曲線が生成さ
れているが、この曲線はいずれの指定点も通っていな
い。
FIG. 18 shows an example of the spline curve in the displayed plane. In FIG. 18, a curved line indicated by a solid line is generated based on four designated points on the same plane, but this curved line does not pass any designated points.

【0011】このように、従来の作図装置では、自由曲
線の描画について、多くの場合、ユーザのイメージする
図形である多角形から著しく逸脱したものしか描くこと
ができない。また、仮に多角形を近似した図形を描けた
としても、それには多大な手間を要する。
As described above, in many cases, the conventional drawing apparatus can draw only a free curve that deviates significantly from the polygon which is the image that the user imagines. Moreover, even if it is possible to draw a figure that approximates a polygon, it requires a great deal of work.

【0012】また、指定した点を通るような計算方式を
採用したとしても、単に曲線上に指定点が乗っているだ
けでは不十分であり、指定点における曲線の振る舞いを
どう規定すべきかなどの問題が残る。
Further, even if a calculation method that passes through a designated point is adopted, it is not enough that the designated point is on the curve, and how the behavior of the curve at the designated point should be defined. The problem remains.

【0013】さらに、3次元空間図形の作図装置におい
ては、自由曲線の概念そのものがなく、したがって、現
状では3次元空間の自由曲線の描画システムは提供され
ていない。
Further, in the drawing apparatus for the three-dimensional space figure, there is no concept of the free curve itself, and therefore, at present, no drawing system for the free curve in the three-dimensional space is provided.

【0014】本発明は、ユーザにより指定された複数の
点に基づいて、ユーザのイメージする図形に近い曲線を
生成する曲線生成装置およびその方法を提供することを
目的とする。
It is an object of the present invention to provide a curve generation device and method for generating a curve close to a figure imaged by a user based on a plurality of points designated by the user.

【0015】[0015]

【課題を解決するための手段】図1は、本発明の曲線生
成装置の原理図である。図1の曲線生成装置は、平面ま
たは空間内で指定された複数の点に基づいて演算を行
い、それらの点により規定される曲線を生成する情報処
理装置に含まれ、入力手段1、演算手段2、出力手段
3、および制約条件記憶手段4を備える。
FIG. 1 is a principle diagram of a curve generating device of the present invention. The curve generation device of FIG. 1 is included in an information processing device that performs a calculation based on a plurality of points specified in a plane or space and generates a curve defined by those points. 2, output means 3, and constraint condition storage means 4.

【0016】入力手段1は、複数の指定点の位置に関す
る情報を入力する。制約条件記憶手段4は、上記複数の
指定点は求める曲線上にあり、かつ、それらの複数の指
定点は指定された順につながり、かつ、第1の指定点が
端点でない場合には第1の指定点の近傍において上記求
める曲線の曲率が極大となることを記述した第1の制約
条件を記憶する。
The input means 1 inputs information on the positions of a plurality of designated points. The constraint condition storage means 4 determines that the plurality of designated points are on the curve to be obtained, the plurality of designated points are connected in the designated order, and the first designated point is not the end point. The first constraint condition describing that the curvature of the obtained curve becomes maximum in the vicinity of the designated point is stored.

【0017】演算手段2は、上記複数の指定点から、上
記第1の制約条件に従って上記求める曲線の形状を計算
する。出力手段3は、得られた上記求める曲線を描画す
る。
The calculating means 2 calculates the shape of the curve to be obtained from the plurality of designated points according to the first constraint condition. The output means 3 draws the obtained curve obtained above.

【0018】生成する曲線に第1の制約条件を課すこと
により、ユーザが指定した点が指定された順につながっ
た曲線が自動的に生成される。さらに、それらの指定点
のうち曲線の端点(始点または終点)に指定されていな
いものについては、それらの指定点の付近で曲率が極大
となる。したがって、求める曲線の頂点(曲率が極大に
なる点)が指定点の付近に形成され、これによりユーザ
がイメージする曲線が自動的に生成される。得られた曲
線は、与えられた複数の指定点を線分で結んだ多角形ま
たは折れ線をよく近似している。
By imposing the first constraint condition on the generated curve, a curve in which the points designated by the user are connected in the designated order is automatically generated. Further, among those designated points, those not designated at the end points (start point or end point) of the curve have the maximum curvature in the vicinity of those designated points. Therefore, the vertex of the curve to be obtained (the point where the curvature becomes maximum) is formed in the vicinity of the specified point, and the curve imaged by the user is automatically generated. The obtained curve closely approximates a polygon or a polygonal line connecting a plurality of given designated points with line segments.

【0019】図1の入力手段1は、実施形態における図
3の点集合入力部21に対応し、演算手段2は演算部2
2に対応し、出力手段3は曲線表示部24に対応する。
また、制約条件記憶手段4は制約条件記憶部25に対応
する。
The input unit 1 of FIG. 1 corresponds to the point set input unit 21 of FIG. 3 in the embodiment, and the arithmetic unit 2 is the arithmetic unit 2.
2 and the output means 3 corresponds to the curve display unit 24.
The constraint condition storage means 4 corresponds to the constraint condition storage unit 25.

【0020】[0020]

【発明の実施の形態】以下、図面を参照しながら本発明
の実施の形態を詳細に説明する。図2は、実施形態の曲
線生成装置のシステム構成図である。図2のシステム
は、CPU(中央処理装置)11、メモリ12、入出力
端末13、プロッタ14、およびプリンタ15を備え、
それらはバス16により接続されている。
Embodiments of the present invention will be described below in detail with reference to the drawings. FIG. 2 is a system configuration diagram of the curve generation device of the embodiment. The system of FIG. 2 includes a CPU (central processing unit) 11, a memory 12, an input / output terminal 13, a plotter 14, and a printer 15,
They are connected by the bus 16.

【0021】入出力端末13は、キーボードやポインテ
ィング・デバイス等の入力装置とディスプレイ装置とを
備えた端末装置である。ユーザは、平面または空間内で
指定する点の集合を入出力端末13から入力し、CPU
11は、例えばデジタルプロセッサであって、メモリ1
2内のプログラムとデータを用いて演算を行い、曲線を
生成する。
The input / output terminal 13 is a terminal device including an input device such as a keyboard and a pointing device and a display device. The user inputs a set of points specified in the plane or space from the input / output terminal 13, and the CPU
Reference numeral 11 denotes, for example, a digital processor, and a memory 1
Calculation is performed using the program and data in 2 to generate a curve.

【0022】生成された曲線は入出力端末13のディス
プレイ画面上に表示される。あるいは、ユーザは、曲線
をプロッタ14に描画させたり、プリンタ15に出力さ
せたりすることもできる。
The generated curve is displayed on the display screen of the input / output terminal 13. Alternatively, the user can cause the plotter 14 to draw the curve or output it to the printer 15.

【0023】図3は、図2の曲線生成装置の機能ブロッ
ク図である。図3の曲線生成装置は、点集合入力部2
1、演算部22、部分曲線群記憶部23、曲線表示部2
4、および制約条件記憶部25を備える。
FIG. 3 is a functional block diagram of the curve generator of FIG. The curve generation device of FIG. 3 has a point set input unit 2
1, calculation unit 22, partial curve group storage unit 23, curve display unit 2
4 and the constraint condition storage unit 25.

【0024】点集合入力部21は図2の入出力端末13
に対応し、指定点の集合を入力する。演算部22はCP
U11およびメモリ12に対応し、制約条件記憶部25
に格納された制約条件に従って演算を行って一連の部分
曲線を生成する。そして、生成された部分曲線群は部分
曲線群記憶部23に格納される。
The point set input unit 21 is the input / output terminal 13 of FIG.
Corresponding to, input a set of specified points. The calculation unit 22 is CP
The constraint condition storage unit 25 corresponds to U11 and the memory 12.
A series of partial curves is generated by performing an operation according to the constraints stored in. Then, the generated partial curve group is stored in the partial curve group storage unit 23.

【0025】制約条件記憶部25と部分曲線群記憶部2
3は、メモリ12に対応している。あるいはまた、メモ
リ12の代わりにハードディスク装置等の外部記憶装置
を用いて、制約条件等を保存してもよい。曲線表示部2
4は入出力端末13、プロッタ14、またはプリンタ1
5に対応し、部分曲線群記憶部23に格納された部分曲
線を連結して表示する。
Constraint condition storage unit 25 and partial curve group storage unit 2
Reference numeral 3 corresponds to the memory 12. Alternatively, instead of the memory 12, an external storage device such as a hard disk device may be used to store the constraint conditions and the like. Curve display section 2
4 is an input / output terminal 13, a plotter 14, or a printer 1.
Corresponding to 5, the partial curves stored in the partial curve group storage unit 23 are connected and displayed.

【0026】ところで、作図装置のユーザが求める図形
は、指定した点を順に線分で結んで得られる折れ線また
は多角形において、その角がなめらかに成るように図形
全体を膨らませて得られる丸みを帯びた曲線、すなわ
ち、折れ線や多角形を曲線で近似した図形である。
By the way, the figure desired by the user of the drawing apparatus is a polygonal line or polygon obtained by connecting designated points in order by line segments, and is rounded by bulging the whole figure so that its corners are smooth. A curved line, that is, a polygonal line or polygon that is approximated by a curved line.

【0027】ここでは、指定した点を順に線分で結んで
得られる図形を折れ線と呼び、特に、始点と終点が一致
する閉じた折れ線のことを多角形と呼んでいる。また、
折れ線や多角形は、単に同一平面上の点のみならず、一
般に、多次元空間内の任意の点を結んで得られる図形を
指す。
Here, a figure obtained by sequentially connecting designated points with line segments is called a polygonal line, and in particular, a closed polygonal line whose start point and end point coincide with each other is called a polygon. Also,
A polygonal line and a polygon refer not only to points on the same plane, but generally to a figure obtained by connecting arbitrary points in a multidimensional space.

【0028】本発明では、自由曲線を描くにあたって、
上述のようなユーザの要望を満たすために次のような制
約条件を設定し、制約条件に従って演算部に計算を行わ
せる。 (a)平面内または空間内の指定された点はあくまでも
曲線上にある。 (b)指定点が指定された順に曲線が繋がっている。 (c)指定点はもともと多角形の角に相当するので、曲
線上では、指定点の付近(近傍)で曲線の曲率(カーブ
の曲がり具合)が極大になる。曲率が大きい方が急激に
曲がることを意味する。
In the present invention, in drawing a free curve,
In order to satisfy the user's demand as described above, the following constraint conditions are set, and the calculation unit is caused to perform calculation according to the constraint conditions. (A) The designated point in the plane or space is on the curve. (B) Curves are connected in the order in which designated points are designated. (C) Since the designated point originally corresponds to the corner of the polygon, the curvature of the curve (curvature of the curve) is maximized near (near) the designated point on the curve. A larger curvature means a sharp bend.

【0029】条件(c)における指定点の近傍の範囲
は、指定点から一定距離以内にある点の集合として、あ
らかじめ定義しておくことができる。しかし、以下では
簡単のために、条件(c)は、指定点において曲率が極
大になることを表すものとする。
The range in the vicinity of the designated point in condition (c) can be defined in advance as a set of points within a certain distance from the designated point. However, in the following, for simplicity, the condition (c) represents that the curvature becomes maximum at the designated point.

【0030】自由曲線はあくまでも、指定点を頂点とす
る多角形を近似するべきものであるから、曲線上で曲率
が極大になる点(角があるように見える点:以後、頂点
と呼ぶ)は、指定点の近傍以外に存在してはならない。
その意味において、次の条件(d)を付け加える。 (d)曲線上の頂点は指定点に限る。
Since a free-form curve should only approximate a polygon having a specified point as its apex, the point at which the curvature has a maximum on the curve (a point that looks like an angle: hereinafter referred to as a vertex) , Must exist only near the specified point.
In that sense, the following condition (d) is added. (D) The vertex on the curve is limited to the specified point.

【0031】さて、これまでは曲線に端点がない多角形
の場合について述べてきたが、ここで、端点がある折れ
線の場合について述べる。指定点が端点に対応する場合
でも条件(a)と(b)は必要であるが、端点について
は条件(c)の代わりに次の条件(e)を課す。 (e)指定点が端点の場合は、曲線の端点ともなる。
Up to now, the case of a polygon having no end point on a curve has been described, but here, the case of a polygonal line having an end point will be described. Although the conditions (a) and (b) are required even when the designated point corresponds to the end point, the following condition (e) is imposed on the end point instead of the condition (c). (E) If the designated point is an end point, it also becomes the end point of the curve.

【0032】これらの制約条件は、制約条件記憶部25
にあらかじめ格納しておく。以後、2次元平面上の曲線
を平面曲線と呼び、3次元空間内の曲線のことを空間曲
線と呼ぶことにする。
These constraint conditions are stored in the constraint condition storage unit 25.
Store it in advance. Hereinafter, a curve on a two-dimensional plane will be called a plane curve, and a curve in a three-dimensional space will be called a space curve.

【0033】上述の制約条件のうち、条件(a)と
(b)のみを採用して生成した平面曲線は、例えば図4
のようになる。図4において、4つの指定点p1
2 、p3 、p4 がその順に指定されており、生成され
た平面曲線はこれらの点を指定された順に通っている。
しかしながら、指定点の付近の振る舞いを何等指定して
いないため、点線で示される多角形を近似する曲線には
なっていない。
Of the above constraint conditions, the plane curve generated by adopting only the conditions (a) and (b) is, for example, as shown in FIG.
become that way. In FIG. 4, four designated points p 1 ,
p 2 , p 3 , and p 4 are designated in that order, and the generated plane curve passes through these points in the designated order.
However, since the behavior near the designated point is not designated at all, the curve does not approximate the polygon indicated by the dotted line.

【0034】そこで、条件(c)を追加することによ
り、平面曲線は図5のようになることが期待される。図
5においては、4つの指定点p1 、p2 、p3 、p4
おいて、曲率が極大になっており、多角形をよく近似し
ているといえる。
Therefore, it is expected that the plane curve becomes as shown in FIG. 5 by adding the condition (c). In FIG. 5, the curvature is maximized at the four designated points p 1 , p 2 , p 3 , and p 4 , and it can be said that the polygon is well approximated.

【0035】次に、図6から図11までを参照しなが
ら、平面曲線を生成するために演算部22が行う処理に
ついて説明する。ここでは、平面多角形を近似するパラ
メータ関数として2次多項式を用いる場合を取り上げ
る。
Next, with reference to FIGS. 6 to 11, the processing performed by the arithmetic unit 22 to generate the plane curve will be described. Here, the case where a quadratic polynomial is used as a parameter function that approximates a planar polygon will be taken up.

【0036】まず、基本構成として、xy平面上に3つ
の指定点p1 =(x1 ,y1 )、p 2 =(x2
2 )、p3 =(x3 ,y3 )が与えられた場合を考え
る。これらの点は入出力端末13の画面上でポインティ
ング・デバイスにより指定され、それらの座標は、ポイ
ンティング・デバイスの位置情報を水平成分(x成分)
と垂直成分(y成分)とに分割して得られる。ここで、
図6に示すように、p1 とp 3 を端点とし、p2 で頂点
となる曲線C(t)=(X(t),Y(t))を求め
る。X(t)、Y(t)はtを曲線のパラメータとする
パラメータ関数で、次式により与えられる。
First, as a basic configuration, there are three on the xy plane.
Specified point p1= (X1, Y1), P Two= (XTwo,
yTwo), PThree= (XThree, YThree) Given the case
You. These points are displayed on the screen of the input / output terminal 13
Specified by the pointing device and their coordinates are
The horizontal position (x component) of the position information of the input device.
And a vertical component (y component). here,
As shown in FIG.1And p ThreeIs an end point, and pTwoAt the top
The curve C (t) = (X (t), Y (t))
You. X (t) and Y (t) have t as a parameter of the curve
Parameter function, given by

【0037】[0037]

【数1】 (Equation 1)

【0038】ただし、C(0)=p1 、C(1)=p3
とする。(1)式で表される曲線C(t)は、xy平面
内で2次曲線を回転させたものにほかならない。(1)
式において、tの2次多項式X(t)、Y(t)の各係
数が求まれば、曲線C(t)が求まったことになる。こ
れらの係数は、次の連立方程式から得られる。
However, C (0) = p 1 and C (1) = p 3
And The curve C (t) represented by the equation (1) is nothing but a quadratic curve rotated in the xy plane. (1)
If the coefficients of the quadratic polynomials X (t) and Y (t) of t are found in the equation, the curve C (t) is found. These coefficients are obtained from the following simultaneous equations.

【0039】[0039]

【数2】 (Equation 2)

【0040】(2)、(3)式は上述の制約条件(e)
から得られ、(4)式は条件(a)から得られる。ま
た、(5)式は、条件(c)から微分幾何学でよく知ら
れた次のような命題を用いて得られる。 命題1:2変数x、yについての平面2次放物線上の点
(x,y)が、(1)式のようなパラメータ付き2次多
項式によって、(x,y)=(X(t),Y(t))と
表されているとする。このとき、この放物線の頂点(曲
率が最大となる点)を表すパラメータt0 は次式を満た
す。
Expressions (2) and (3) are the above-mentioned constraint condition (e).
Equation (4) is obtained from the condition (a). Expression (5) is obtained from the condition (c) using the following proposition that is well known in differential geometry. Proposition 1: A point (x, y) on a plane quadratic parabola with respect to two variables x and y is (x, y) = (X (t), Y (t)). At this time, the parameter t 0 representing the apex of this parabola (the point at which the curvature is maximum) satisfies the following equation.

【0041】[0041]

【数3】 (Equation 3)

【0042】命題1の証明は次のようになる。 証明:一般に、tに関する関数x(t),y(t)によ
り(x,y)=(x(t),y(t))と表される平面
上の任意の曲線をCとする。C上の点(x(t0),y
(t0 ))におけるCの曲率半径をr(t0 )とする
と、r(t0 )は次式で表される。
The proof of Proposition 1 is as follows. Proof: In general, let C be an arbitrary curve on a plane represented by (x, y) = (x (t), y (t)) by functions x (t) and y (t) related to t. Point on C (x (t 0 ), y
Letting r (t 0 ) be the radius of curvature of C at (t 0 )), r (t 0 ) is expressed by the following equation.

【0043】[0043]

【数4】 (Equation 4)

【0044】ただし、However,

【0045】[0045]

【数5】 (Equation 5)

【0046】である。このとき、r(t0 )のt0 に関
する微分r′は、
It is At this time, the derivative r ′ of r (t 0 ) with respect to t 0 is

【0047】[0047]

【数6】 (Equation 6)

【0048】となる。ここで、点(x(t0 ),y(t
0 ))におけるCの曲率は曲率半径r(t0 )の逆数に
より与えられ、その微分は、 (1/r)′=−r′/r2 となる。したがって、(1/r)′=0、すなわち、
r′=0が成り立つ点において、曲率1/rが極値を持
つ。このとき、t0 に対する条件は(8)式から、
Is as follows. Here, the point (x (t 0 ), y (t
The curvature of C in ( 0 )) is given by the reciprocal of the radius of curvature r (t 0 ), and its derivative is (1 / r) ′ = − r ′ / r 2 . Therefore, (1 / r) '= 0, that is,
At the point where r ′ = 0 holds, the curvature 1 / r has an extreme value. At this time, the condition for t 0 is from the equation (8),

【0049】[0049]

【数7】 (Equation 7)

【0050】となる。(9)式のx(t0 )、y
(t0 )にX(t0 )、Y(t0 )をそれぞれ代入して
整理すると、
It becomes X (t 0 ) and y in the equation (9)
(T 0) to X (t 0), and rearranging by substituting Y a (t 0), respectively,

【0051】[0051]

【数8】 (Equation 8)

【0052】が得られる。(10)式において、仮にa
x y −ay x =0とすると、(1)式から(X
(t),Y(t))は直線になってしまい、条件に反す
る。よって、ax y −ay x ≠0である。したがっ
て、結局(6)式で定まるt0 に対応する点が、求める
放物線の頂点を決定することになる。〔証明終わり〕 命題1の(6)式において、t0 をt1 に置き換えれば
(5)式が得られる。また、条件(b)より、点p2
対応するパラメータt1 については、0<t1<1なる
条件が課される。さらに、2次曲線(放物線)の頂点が
1つしか存在しないことから、条件(d)が成立するこ
とは保証されている。(2)、(3)、(4)、(5)
式を解いて曲線C(t)を求め、それをt∈[0,1]
の区間で描けば、ユーザが求める曲線を得ることができ
る。
Is obtained. In equation (10), suppose a
When x b y -a y b x = 0, from equation (1) (X
(T) and Y (t) become straight lines, which violates the conditions. Therefore, it is a x b y -a y b x ≠ 0. Therefore, the point corresponding to t 0 determined by the equation (6) eventually determines the apex of the desired parabola. [End of proof] In equation (6) of Proposition 1, if t 0 is replaced with t 1 , equation (5) is obtained. Further, from the condition (b), the condition 0 <t 1 <1 is imposed on the parameter t 1 corresponding to the point p 2 . Furthermore, since there is only one vertex of the quadratic curve (parabola), it is guaranteed that the condition (d) is satisfied. (2), (3), (4), (5)
The curve C (t) is obtained by solving the equation, and t ∈ [0, 1]
By drawing in the section, the curve desired by the user can be obtained.

【0053】次に、n個の指定点p1 =(x1
1 ),...,pn =(xn ,yn )が与えられたと
きに、p1 とpn を端点とする曲線を求める処理につい
て説明する。以後、点p1 ,...,pn は、ユーザか
らこの順に指定されたものとする。この場合、求める曲
線は点pi+1 (i=1,...,n−2)をそれぞれ頂
点とするn−2個の部分曲線Ci (t)に分割されて、
生成される。
Next, n designated points p 1 = (x 1 ,
y 1 ) ,. . . , P n = (x n , y n ) is given, a process of obtaining a curve whose end points are p 1 and p n will be described. After that, the points p 1 ,. . . , Pn are specified by the user in this order. In this case, the curve to be obtained is divided into n-2 partial curves C i (t) each having a vertex at point p i + 1 (i = 1, ..., N-2),
Generated.

【0054】図7は、指定点が端点を含む場合の演算部
22の処理を示すフローチャートである。図7において
処理が開始されると、演算部22は、入力された指定点
1,...,pn を点集合入力部21から受け取り
(ステップS1)、求める曲線を表現するn−2個の部
分曲線C1 (t)=(X1 (t),Y
1 (t)),...,Cn-2 (t)=(Xn-2 (t),
n-2 (t))を以下のように与える(ステップS
2)。
FIG. 7 is a flow chart showing the processing of the arithmetic unit 22 when the designated point includes the end point. When the processing is started in FIG. 7, the calculation unit 22 receives the designated points p 1 ,. . . , P n from the point set input unit 21 (step S1), and n−2 partial curves C 1 (t) = (X 1 (t), Y representing the desired curve.
1 (t)) ,. . . , C n-2 (t) = (X n-2 (t),
Y n-2 (t)) is given as follows (step S
2).

【0055】[0055]

【数9】 (Equation 9)

【0056】(11)式は、(1)式と同様にxy平面
内の2次曲線を表しており、(11)式の各項の係数を
決定すれば求める曲線が得られる。ここで、条件(c)
から各部分曲線Ci (t)の頂点は指定点に対応する必
要がある。そこで、各部分曲線がそれぞれ1つずつ指定
点を含むように、連続して指定された、端点を除く2つ
の指定点の間に仮想的な分割点を設ける。この分割点の
設定の仕方はいろいろ考えられるが、一例として、2つ
の指定点を結ぶ線分の垂直2等分線上に設けることにす
る。そして、Ci (t)のtの区間を[0,1]とし、
n−3個の各分割点においてはCi (1)=C
i+1 (0)(i=1,...,n−3)とおいて、隣接
する部分曲線同士がなめらかに結ばれるようにする。
The equation (11) represents a quadratic curve in the xy plane like the equation (1), and the curve to be obtained can be obtained by determining the coefficient of each term of the equation (11). Where condition (c)
Therefore, the vertex of each partial curve C i (t) needs to correspond to the specified point. Therefore, a virtual division point is provided between two consecutively designated designated points excluding end points so that each partial curve includes one designated point. Although various methods of setting the dividing points can be considered, as an example, they are provided on the vertical bisector of the line segment connecting the two designated points. Then, the interval of t of C i (t) is set to [0, 1], and
C i (1) = C at each of the n−3 division points
Let i + 1 (0) (i = 1, ..., N−3) so that adjacent partial curves are smoothly connected.

【0057】図8は、p1 とp4 を端点として4つの指
定点p1 、p2 、p3 、p4 が与えられた時の平面曲線
の分割方法を示している。図8では、端点p1 、p4
除く残りの2点p2 とp3 を結ぶ線分の垂直2等分線上
に仮想的な分割点D1 が設けられ、求める曲線はp2
含む部分曲線C1 (t)とp3 を含む部分曲線C
2 (t)とに分割される。
FIG. 8 shows a method of dividing a plane curve when four designated points p 1 , p 2 , p 3 and p 4 are given with p 1 and p 4 as end points. In FIG. 8, a virtual dividing point D 1 is provided on the perpendicular bisector of the line segment connecting the remaining two points p 2 and p 3 excluding the end points p 1 and p 4, and the obtained curve includes p 2 . Partial curve C including partial curve C 1 (t) and p 3
2 (t).

【0058】次に、演算部22は、(11)式の各係数
を求めるために次の連立方程式を解く(ステップS
3)。
Next, the arithmetic unit 22 solves the following simultaneous equations in order to obtain each coefficient of the equation (11) (step S
3).

【0059】[0059]

【数10】 (Equation 10)

【0060】これらの方程式は、制約条件記憶部25に
格納された制約条件を参照して生成される。あるいは、
方程式そのものをあらかじめ制約条件として格納してお
く。ここで、(12)、(13)式は上述の制約条件
(e)から得られ、(14)式は条件(b)から得られ
る。(15)式は、各分割点における2つの部分曲線の
接線の傾きが等しいという条件 Xi ′(1)・Yi+1 ′(0)=Yi ′(1)・Xi+1 ′(0) (i=1,...,n−3)から得られる。
These equations are generated by referring to the constraint conditions stored in the constraint condition storage unit 25. Or,
The equation itself is stored in advance as a constraint condition. Here, the expressions (12) and (13) are obtained from the constraint condition (e), and the expression (14) is obtained from the condition (b). The expression (15) is obtained under the condition that the slopes of the tangents of the two partial curves at each division point are equal. X i ′ (1) · Y i + 1 ′ (0) = Y i ′ (1) · X i + 1 ′ (0) (i = 1, ..., N−3).

【0061】また、(16)式は、各分割点がその両側
にある2つの指定点の垂直2等分線上にあるという条
件、言い換えれば、分割点から2つの指定点までの距離
が等しいという条件から得られる。(17)式は、
(4)式と同様に条件(a)から得られ、(18)式
は、(5)式と同様に条件(c)から命題1を用いて得
られる。(17)、(18)式において、ti は指定点
i+1 に対応するtの値を表す。
Expression (16) is a condition that each division point is on the perpendicular bisector of two designated points on both sides of it, in other words, the distance from the divided point to the two designated points is equal. Obtained from the conditions. Equation (17) is
Like the formula (4), it is obtained from the condition (a), and the formula (18) is obtained from the condition (c) using the proposition 1 like the formula (5). In the equations (17) and (18), t i represents the value of t corresponding to the designated point p i + 1 .

【0062】これらの方程式により求められた部分曲線
群C1 (t),...,Cn-2 (t)について、それぞ
れt=0からt=1までの部分を描いたものが求める曲
線となる。図8の場合は、部分曲線C1 (t)とC
2 (t)をt∈[0,1]の区間に限定して描くことに
より、指定点p1 、p2 、p3 、p4 を通るなめらかな
曲線が得られる。ただし、このとき、p1 =C
1 (0)、p4 =C2 (1)、p2=C1 (t1 )、p
3 =C2 (t2 )、D1 =C1 (1)=C2 (0)であ
る。
The partial curve groups C 1 (t) ,. . . , C n−2 (t), the curves to be obtained are the portions from t = 0 to t = 1. In the case of FIG. 8, the partial curves C 1 (t) and C
By drawing 2 (t) only in the section of tε [0,1], a smooth curve passing through the specified points p 1 , p 2 , p 3 , and p 4 can be obtained. However, at this time, p 1 = C
1 (0), p 4 = C 2 (1), p 2 = C 1 (t 1 ), p
3 = C 2 (t 2 ) and D 1 = C 1 (1) = C 2 (0).

【0063】演算部22は、こうして求められたn−2
個の部分曲線群を、部分曲線群記憶部23に出力して
(ステップS4)、処理を終了する。続いて、端点の指
定がない場合を考える。この場合は、n個の指定点p1
=(x1 ,y1 ),...,pn =(xn ,yn )が与
えられたときに、p1 からp n までが順になめらかに結
ばれ、さらにpn とp1 がなめらかに結ばれているよう
な閉曲線を求める。そして、求める曲線は点pi (i=
1,...,n)をそれぞれ頂点とするn個の部分曲線
i (t)に分割されて、生成される。
The calculation unit 22 uses the n-2 thus obtained.
Output the partial curve groups to the partial curve group storage unit 23.
(Step S4), the process ends. Then, the end finger
Consider the case where there is no fixed value. In this case, n specified points p1
= (X1, Y1) ,. . . , Pn= (Xn, Yn) Gives
When you get p1To p nUntil smoothly connected in order
Bare, then pnAnd p1Seems to be tied smoothly
Find a closed curve. The curve to be obtained is the point pi(I =
1 ,. . . , N) with n vertices as vertices
CiIt is divided into (t) and generated.

【0064】図9は、指定点が端点を含まない場合の演
算部22の処理を示すフローチャートである。図9にお
いて処理が開始されると、演算部22は、入力された指
定点p1 ,...,pn を点集合入力部21から受け取
り(ステップS11)、求める曲線を表現するn個の部
分曲線C1 (t)=(X1 (t),Y
1 (t)),...,Cn (t)=(Xn (t),Yn
(t))を以下のように与える(ステップS12)。
FIG. 9 is a flow chart showing the processing of the arithmetic unit 22 when the designated point does not include the end point. When the processing is started in FIG. 9, the calculation unit 22 receives the designated points p 1 ,. . . , P n from the point set input unit 21 (step S11), and n partial curves C 1 (t) = (X 1 (t), Y representing the desired curve.
1 (t)) ,. . . , C n (t) = (X n (t), Y n
(T)) is given as follows (step S12).

【0065】[0065]

【数11】 [Equation 11]

【0066】(19)式は、(11)式と同様にxy平
面内の2次曲線を表しており、(19)式の各項の係数
を決定すれば求める曲線が得られる。ここで、指定点が
端点を含む場合と同様にして、連続して指定された2つ
の指定点の間に仮想的な分割点を設ける。そして、Ci
(t)のtの区間を[0,1]とし、n個の各分割点に
おいてはCi (1)=Ci+1 (0)(i=1,...,
n−1)、Cn (1)=C1 (0)とおく。
The equation (19) represents a quadratic curve in the xy plane like the equation (11), and the curve to be obtained can be obtained by determining the coefficient of each term of the equation (19). Here, similarly to the case where the designated point includes the end point, a virtual division point is provided between two consecutively designated points. And C i
The section of t of (t) is [0, 1], and at each of the n division points, C i (1) = C i + 1 (0) (i = 1, ...,
n-1) and C n (1) = C 1 (0).

【0067】図10は、4つの指定点p1 、p2
3 、p4 が与えられた時の平面曲線の分割方法を示し
ている。図10では、2点p1 とp2 、p2 とp3 、p
3 とp4、p4 とp1 を結ぶ各線分の垂直2等分線上
に、それぞれ分割点D1 、D2 、D 3 、D4 を設ける。
このとき、求める曲線は、p1 を含む部分曲線C
1 (t)、p2 を含む部分曲線C2 (t)、p3 を含む
部分曲線C3 (t)、およびp4 を含む部分曲線C
4 (t)に分割される。
FIG. 10 shows four designated points p.1, PTwo,
pThree, PFourShows how to divide the plane curve when is given
ing. In FIG. 10, two points p1And pTwo, PTwoAnd pThree, P
ThreeAnd pFour, PFourAnd p1On the perpendicular bisector of each line connecting
, The division point D1, DTwo, D Three, DFourIs provided.
At this time, the obtained curve is p1Partial curve C including
1(T), pTwoPartial curve C includingTwo(T), pThreeincluding
Partial curve CThree(T), and pFourPartial curve C including
Four(T).

【0068】次に、演算部22は、(19)式の各係数
を求めるために次の連立方程式を解く(ステップS1
3)。
Next, the calculation unit 22 solves the following simultaneous equations in order to obtain each coefficient of the equation (19) (step S1).
3).

【0069】[0069]

【数12】 (Equation 12)

【0070】ただし、xn+1 =x1 、yn+1 =y1 、b
(n+1)x=b1X、b(n+1)y=b1yとする。これらの方程式
は、制約条件記憶部25に格納された制約条件から得ら
れる。ここで、(20)式は、(14)式と同様に制約
条件(b)から得られ、(21)式は、(15)式と同
様に各分割点における2つの部分曲線の接線の傾きが等
しいという条件から得られる。(22)式は、(16)
式と同様に各分割点がその両側にある2つの指定点の垂
直2等分線上にあるという条件から得られる。また、
(23)式は、(17)式と同様に条件(a)から得ら
れ、(24)式は、(18)式と同様に条件(c)から
命題1を用いて得られる。(23)、(24)式におい
て、ti は指定点pi に対応するtの値を表す。
However, x n + 1 = x 1 , y n + 1 = y 1 , b
(n + 1) x = b 1X and b (n + 1) y = b 1y . These equations are obtained from the constraint conditions stored in the constraint condition storage unit 25. Here, the expression (20) is obtained from the constraint condition (b) like the expression (14), and the expression (21) is the slope of the tangent line of the two partial curves at each division point as in the expression (15). It is obtained from the condition that are equal. Equation (22) is given by (16)
Similar to the formula, it is obtained from the condition that each dividing point is on the perpendicular bisector of two specified points on both sides of the dividing point. Also,
The expression (23) is obtained from the condition (a) like the expression (17), and the expression (24) is obtained from the condition (c) using the proposition 1 like the expression (18). In the equations (23) and (24), t i represents the value of t corresponding to the designated point p i .

【0071】これらの方程式により求められた部分曲線
群C1 (t),...,Cn (t)について、それぞれ
t=0からt=1までの部分を描いたものが求める閉曲
線となる。図10の場合は、部分曲線C1 (t)、C2
(t)、C3 (t)、C4 (t)をt∈[0,1]の区
間に限定して描くことにより、指定点p1 、p2
3 、p4 を通るなめらかな閉曲線が得られる。ただ
し、このとき、p1 =C1 (t1 )、p2 =C
2 (t2 )、p3 =C3 (t3 )、p4 =C
4 (t4 )、D1=C1 (1)=C2 (0)、D2 =C
2 (1)=C3 (0)、D3 =C3 (1)=C
4 (0)、D4 =C4 (1)=C1 (0)、である。
Partial curves determined by these equations
Group C1(T) ,. . . , CnFor (t),
Closed song required by drawing the part from t = 0 to t = 1
Become a line. In the case of FIG. 10, the partial curve C1(T), CTwo
(T), CThree(T), CFour(T) is a group of t ∈ [0, 1]
By drawing only in between, the specified point p1, PTwo,
p Three, PFourA smooth closed curve passing through is obtained. However
At this time, p1= C1(T1), PTwo= C
Two(TTwo), PThree= CThree(TThree), PFour= C
Four(TFour), D1= C1(1) = CTwo(0), DTwo= C
Two(1) = CThree(0), DThree= CThree(1) = C
Four(0), DFour= CFour(1) = C1(0),

【0072】演算部22は、こうして求められたn個の
部分曲線群を、部分曲線群記憶部23に出力して(ステ
ップS14)、処理を終了する。図11は、4つの指定
点p1 、p2 、p3 、p4 が与えられた時に生成される
平面上の閉曲線の他の例を示している。図11では、p
1 とp2 を結ぶ線分と、p2 とp3 を結ぶ線分が互いに
交差している。このような場合でも、連続して指定され
た2つの指定点を結ぶ各線分の垂直2等分線上に分割点
1 、D2 、D3、D4 を設けて、部分曲線C
1 (t)、C2 (t)、C3 (t)、およびC4 (t)
により求める曲線を表すことができる。
The calculation section 22 outputs the n partial curve groups thus obtained to the partial curve group storage section 23 (step S14), and the processing is terminated. FIG. 11 shows another example of a closed curve on a plane generated when four designated points p 1 , p 2 , p 3 , and p 4 are given. In FIG. 11, p
The line segment connecting 1 and p 2 and the line segment connecting p 2 and p 3 intersect each other. Even in such a case, the dividing points D 1 , D 2 , D 3 , and D 4 are provided on the perpendicular bisector of each line segment that connects two consecutively designated points, and the partial curve C
1 (t), C 2 (t), C 3 (t), and C 4 (t)
The curve to be obtained can be expressed by

【0073】図12は、平面曲線を表示するために曲線
表示部24が行う処理のフローチャートである。図12
において処理が開始されると、曲線表示部24は、部分
曲線群記憶部23から、パラメータtで記述された平面
2次曲線群を取り出し、これらを入力とする(ステップ
S21)。次に、各部分曲線についてt∈[0,1]の
範囲にある部分に限定し(ステップS22)、それらの
部分曲線群を表示して(ステップS23)、処理を終了
する。
FIG. 12 is a flowchart of the processing performed by the curve display unit 24 to display a plane curve. FIG.
When the process is started in, the curve display unit 24 extracts the plane quadratic curve group described by the parameter t from the partial curve group storage unit 23 and inputs them (step S21). Next, each partial curve is limited to a part within the range of t ∈ [0, 1] (step S22), the partial curve group is displayed (step S23), and the process is ended.

【0074】次に、図13から図17までを参照しなが
ら、空間曲線を生成するために演算部22が行う処理に
ついて説明する。3次元空間において上述の制約条件を
満たす曲線を生成する1つの方法として、空間曲線全体
を平面上の部分曲線に分割し、各部分曲線を記述するパ
ラメータ関数として2次多項式を用いる。各々の部分曲
線を平面曲線に限定することで、空間曲線全体の計算を
容易にしている。
Next, with reference to FIGS. 13 to 17, the processing performed by the arithmetic unit 22 to generate the space curve will be described. As one method of generating a curve that satisfies the above constraint in a three-dimensional space, the entire space curve is divided into partial curves on a plane, and a quadratic polynomial is used as a parameter function that describes each partial curve. By limiting each partial curve to a plane curve, calculation of the entire space curve is facilitated.

【0075】まず、基本構成として、xyz空間内のあ
る平面上に3つの指定点p0 =(x 0 ,y0 ,z0 )、
1 =(x1 ,y1 ,z1 )、p2 =(x2 ,y2 ,z
2 )が与えられた場合を考える。実際には、これらの点
は、入出力端末13の画面上に表示された空間内で、3
次元マウス等の3次元ポインティング・デバイスにより
指定され、それらの座標は、ポインティング・デバイス
の位置情報を水平成分(x成分)、垂直成分(y成
分)、および奥行成分(z成分)に分割して得られる。
First, as a basic configuration,
3 specified points p on the plane0= (X 0, Y0, Z0),
p1= (X1, Y1, Z1), PTwo= (XTwo, YTwo, Z
Two) Is given. In fact, these points
Is 3 in the space displayed on the screen of the input / output terminal 13.
With a 3D pointing device such as a 3D mouse
Specified, their coordinates are pointing device
Position information of the horizontal component (x component), vertical component (y component)
Min) and a depth component (z component).

【0076】ここで、図13に示すように、p0 とp2
を端点とし、p1 で頂点となる曲線C(t)=(X
(t),Y(t),Z(t))を求める。X(t)、Y
(t)、Z(t)はtを曲線のパラメータとするパラメ
ータ関数で、次式により与えられる。
Here, as shown in FIG. 13, p 0 and p 2
Was an end point, the curve C (t) as the vertex p 1 = (X
(T), Y (t), Z (t)) are obtained. X (t), Y
(T) and Z (t) are parameter functions having t as a parameter of the curve, and are given by the following equation.

【0077】[0077]

【数13】 (Equation 13)

【0078】ただし、C(0)=p0 、C(1)=p2
とする。(25)式において、tの2次多項式X
(t)、Y(t)、Z(t)の各係数が求まれば、曲線
C(t)が求まったことになる。これらの係数は、次の
連立方程式から得られる。
However, C (0) = p 0 , C (1) = p 2
And In equation (25), the second-order polynomial X of t
If the coefficients of (t), Y (t), and Z (t) are obtained, the curve C (t) is obtained. These coefficients are obtained from the following simultaneous equations.

【0079】[0079]

【数14】 [Equation 14]

【0080】(26)、(27)式は上述の制約条件
(e)から得られ、(28)式は条件(a)から得られ
る。また、(29)式は、条件(c)から次のような命
題を用いて得られる。 命題2:3変数x、y、zについての平面2次放物線上
の点(x,y,z)が、(25)式のようなパラメータ
付き2次多項式によって、(x,y,z)=(X
(t),Y(t),Z(t))と表されているとする。
このとき、この放物線の頂点を表すパラメータt0 は次
式を満たす。
The expressions (26) and (27) are obtained from the above-mentioned constraint condition (e), and the expression (28) is obtained from the condition (a). Expression (29) is obtained from condition (c) using the following proposition. Proposition 2: The point (x, y, z) on the plane quadratic parabola for the three variables x, y, z is (x, y, z) = (X
(T), Y (t), Z (t)).
At this time, the parameter t 0 representing the vertex of this parabola satisfies the following equation.

【0081】[0081]

【数15】 (Equation 15)

【0082】命題2の証明は次のようになる。 証明:一般に、tに関する関数x(t),y(t),z
(t)により(x,y,z)=(x(t),y(t),
z(t))と表される平面上の任意の曲線をCとする。
C上の点(x(t0 ),y(t0 ),z(t0 ))にお
けるCの曲率半径をr(t0 )とすると、r(t0 )は
次式で表される。
The proof of Proposition 2 is as follows. Proof: Generally, a function x (t), y (t), z with respect to t
By (t), (x, y, z) = (x (t), y (t),
Let C be an arbitrary curve on the plane represented by z (t)).
Letting r (t 0 ) be the radius of curvature of C at the point (x (t 0 ), y (t 0 ), z (t 0 )) on C, r (t 0 ) is expressed by the following equation.

【0083】[0083]

【数16】 (Equation 16)

【0084】ただし、However,

【0085】[0085]

【数17】 [Equation 17]

【0086】である。このとき、方程式r′(t0 )=
0を満たす点t0 において、曲率1/rが極値を持つ。
そこで、方程式r′(t)=0の左辺のx(t)、y
(t)、z(t)にX(t)、Y(t)、Z(t)をそ
れぞれ代入して、その分子を因数分解すると、
It is At this time, the equation r ′ (t 0 ) =
At a point t 0 that satisfies 0 , the curvature 1 / r has an extreme value.
Therefore, x (t), y on the left side of the equation r ′ (t) = 0
Substituting X (t), Y (t), and Z (t) into (t) and z (t), respectively, and factoring the numerator,

【0087】[0087]

【数18】 (Equation 18)

【0088】のようになる。(32)式において、仮に
第1因子または第2因子が0とすると、(25)式から
(X(t),Y(t),Z(t))は直線になってしま
い、条件に反する。よって、(32)式が0になるため
には、その第3因子が0でなければならない。したがっ
て、結局(30)式で定まるt0 に対応する点が、求め
る放物線の頂点を決定することになる。〔証明終わり〕 命題2の(30)式において、t0 をt1 に置き換えれ
ば(29)式が得られる。また、条件(b)より、点p
1 に対応するパラメータt1 については、0<t1 <1
なる条件が課される。さらに、2次曲線(放物線)の頂
点が1つしか存在しないことから、条件(d)が成立す
ることは保証されている。(26)、(27)、(2
8)、(29)式を解いて曲線C(t)を求め、それを
t∈[0,1]の区間で描けば、ユーザが求める曲線を
得ることができる。
It becomes as follows. In equation (32), if the first factor or the second factor is 0, (X (t), Y (t), Z (t)) becomes a straight line from equation (25), which violates the condition. . Therefore, the third factor must be 0 in order for the expression (32) to become 0. Therefore, the point corresponding to t 0 determined by the equation (30) eventually determines the apex of the desired parabola. [End of proof] In equation (30) of Proposition 2, if t 0 is replaced with t 1 , equation (29) is obtained. Also, from the condition (b), the point p
For information about the parameters t 1 corresponding to the 1, 0 <t 1 <1
Conditions are imposed. Furthermore, since there is only one vertex of the quadratic curve (parabola), it is guaranteed that the condition (d) is satisfied. (26), (27), (2
By solving the equations (8) and (29) to find the curve C (t) and drawing it in the section of tε [0,1], the curve desired by the user can be obtained.

【0089】ちなみに、得られた曲線C(t)は、平面
上の2次曲線を立体的に回転させたものにほかならな
い。この曲線C(t)を含む平面の方程式は次式で表さ
れる。
Incidentally, the obtained curve C (t) is nothing more than a quadratic curve on a plane rotated three-dimensionally. The equation of the plane including this curve C (t) is expressed by the following equation.

【0090】[0090]

【数19】 [Equation 19]

【0091】ただし、(33)式のα、β、γ、δは、
次の線形方程式を満たすような値である。
However, α, β, γ, and δ in the equation (33) are
The value satisfies the following linear equation.

【0092】[0092]

【数20】 (Equation 20)

【0093】次に、n+2個の指定点p0 =(x0 ,y
0 ,z0 ),p1 =(x1 ,y1 ,z1 ),...,p
n+1 =(xn+1 ,yn+1 ,zn+1 )が与えられたとき
に、p 0 とpn+1 を端点とする曲線を求める処理につい
て説明する。これらの点p0 ,p1 ,...,p
n+1 は、ユーザからこの順に指定されたものとする。こ
の場合、求める曲線は点pi (i=1,...,n)を
それぞれ頂点とするn個の部分曲線Ci (t)に分割さ
れて、生成される。
Next, n + 2 designated points p0= (X0, Y
0, Z0), P1= (X1, Y1, Z1) ,. . . , P
n + 1= (Xn + 1, Yn + 1, Zn + 1) Is given
And p 0And pn + 1For the process of finding the curve with the end point
Will be explained. These points p0, P1,. . . , P
n + 1Is specified by the user in this order. This
, The curve to be obtained is the point pi(I = 1, ..., n)
N number of partial curves C each having a vertexiDivided into (t)
Generated.

【0094】図14は、指定点が端点を含む場合の演算
部22の処理を示すフローチャートである。図14にお
いて処理が開始されると、演算部22は、入力された指
定点p0 ,...,pn+1 を点集合入力部21から受け
取り(ステップS31)、求める曲線を表現するn個の
部分曲線C1 (t)=(X1 (t),Y1 (t),Z 1
(t)),...,Cn (t)=(Xn (t),Y
n (t),Zn (t))を以下のように与える(ステッ
プS32)。
FIG. 14 shows the calculation when the specified point includes the end point.
7 is a flowchart showing the processing of the unit 22. In FIG.
When the processing is started by the
Fixed point p0,. . . , Pn + 1Received from the point set input unit 21
(Step S31), n number of expressing the desired curve
Partial curve C1(T) = (X1(T), Y1(T), Z 1
(T)) ,. . . , Cn(T) = (Xn(T), Y
n(T), Zn(T)) is given as follows (step
S32).

【0095】[0095]

【数21】 (Equation 21)

【0096】(35)式は、(25)式と同様にある平
面内の2次曲線を表しており、(35)式の各項の係数
を決定すれば求める曲線が得られる。ここで、条件
(c)から各部分曲線Ci (t)の頂点は指定点に対応
する必要がある。そこで、各部分曲線がそれぞれ1つず
つ指定点を含むように、連続して指定された、端点を除
く2つの指定点の間に仮想的な分割点を設ける。この分
割点の設定の仕方はいろいろ考えられるが、一例とし
て、2つの指定点を結ぶ線分の中点を通り、その線分に
垂直な平面上に設けることにする。そして、Ci (t)
のtの区間を[0,1]とし、n−1個の各分割点にお
いてはCi (1)=Ci+1 (0)(i=1,...,n
−1)とおいて、隣接する部分曲線同士がなめらかに結
ばれるようにする。
The equation (35) represents a quadratic curve in a plane similar to the equation (25), and the curve to be obtained can be obtained by determining the coefficient of each term of the equation (35). Here, from the condition (c), the vertex of each partial curve C i (t) needs to correspond to the designated point. Therefore, a virtual division point is provided between two consecutively designated designated points excluding end points so that each partial curve includes one designated point. Although various methods of setting the division points are possible, as an example, the division points are provided on a plane which passes through the midpoint of a line segment connecting two designated points and is perpendicular to the line segment. And C i (t)
Is defined as [0, 1], and at each of n−1 division points, C i (1) = C i + 1 (0) (i = 1, ..., n).
-1), so that adjacent partial curves are smoothly connected to each other.

【0097】図15は、p0 とp3 を端点として4つの
指定点p0 、p1 、p2 、p3 が与えられた時の空間曲
線の分割方法を示している。図15では、端点p0 、p
3 を除く残りの2点p1 とp2 を結ぶ線分の中点を含
み、その線分に垂直な平面F上に仮想的な分割点D1
設けられ、求める曲線はp1 を含む部分曲線C1 (t)
とp2 を含む部分曲線C2 (t)とに分割される。
FIG. 15 shows a method of dividing a space curve when four designated points p 0 , p 1 , p 2 and p 3 are given with p 0 and p 3 as end points. In FIG. 15, the end points p 0 and p
A virtual dividing point D 1 is provided on a plane F perpendicular to the line segment including the midpoint of the line segment connecting the remaining two points p 1 and p 2 except 3 and the obtained curve includes p 1 . Partial curve C 1 (t)
And a partial curve C 2 (t) including p 2 .

【0098】次に、演算部22は、(35)式の各係数
を求めるために次の連立方程式を解く(ステップS3
3)。
Next, the calculation section 22 solves the following simultaneous equations in order to obtain each coefficient of the equation (35) (step S3).
3).

【0099】[0099]

【数22】 (Equation 22)

【0100】これらの方程式は、制約条件記憶部25に
格納された制約条件を参照して生成される。あるいは、
方程式そのものをあらかじめ制約条件として格納してお
く。ここで、(36)、(37)式は上述の制約条件
(e)から得られ、(38)式は条件(b)から得られ
る。(39)式は、各分割点における2つの部分曲線の
接線の傾きが等しいという条件から得られる。
These equations are generated by referring to the constraint conditions stored in the constraint condition storage unit 25. Or,
The equation itself is stored in advance as a constraint condition. Here, the expressions (36) and (37) are obtained from the constraint condition (e), and the expression (38) is obtained from the condition (b). Expression (39) is obtained from the condition that the tangents of the two partial curves at each division point have the same slope.

【0101】また、(40)式は、各分割点が、その両
側にある2つの指定点を結ぶ線分の中点を通り、その線
分に垂直な平面上にあるという条件、言い換えれば、分
割点から2つの指定点までの距離が等しいという条件か
ら得られる。(41)式は、(28)式と同様に条件
(a)から得られ、(42)式は、(29)式と同様に
条件(c)から命題2を用いて得られる。(41)、
(42)式において、tiは指定点pi に対応するtの
値を表す。
Further, the expression (40) requires that each division point be on the plane perpendicular to the line segment that passes through the midpoint of the line segment connecting the two specified points on both sides of it. It is obtained from the condition that the distances from the dividing points to the two designated points are equal. The expression (41) is obtained from the condition (a) like the expression (28), and the expression (42) is obtained from the condition (c) using the proposition 2 like the expression (29). (41),
In the equation (42), t i represents the value of t corresponding to the designated point p i .

【0102】これらの方程式により求められた部分曲線
群C1 (t),...,Cn (t)について、それぞれ
t=0からt=1までの部分を描いたものが求める曲線
となる。図15の場合は、部分曲線C1 (t)とC
2 (t)をt∈[0,1]の区間に限定して描くことに
より、指定点p0 、p1 、p2 、p3 を通るなめらかな
曲線が得られる。ただし、このとき、p0 =C
1 (0)、p3 =C2 (1)、p1=C1 (t1 )、p
2 =C2 (t2 )、D1 =C1 (1)=C2 (0)であ
る。
The partial curve groups C 1 (t) ,. . . , C n (t), the obtained curve is the portion from t = 0 to t = 1. In the case of FIG. 15, partial curves C 1 (t) and C
By drawing 2 (t) only in the interval of tε [0,1], a smooth curve passing through the specified points p 0 , p 1 , p 2 , and p 3 can be obtained. However, at this time, p 0 = C
1 (0), p 3 = C 2 (1), p 1 = C 1 (t 1), p
2 = C 2 (t 2 ) and D 1 = C 1 (1) = C 2 (0).

【0103】演算部22は、こうして求められたn個の
部分曲線群を、部分曲線群記憶部23に出力して(ステ
ップS34)、処理を終了する。続いて、端点の指定が
ない場合を考える。この場合は、n個の指定点p1
(x1 ,y1 ,z1 ),...,pn =(xn ,yn
n )が与えられたときに、p1 からpn までが順にな
めらかに結ばれ、さらにpn とp1 がなめらかに結ばれ
ているような閉曲線を求める。そして、求める曲線は点
i (i=1,...,n)をそれぞれ頂点とするn個
の部分曲線Ci (t)に分割されて、生成される。
The arithmetic unit 22 outputs the thus obtained n partial curve groups to the partial curve group storage unit 23 (step S34), and ends the processing. Next, consider the case where no end point is specified. In this case, n specified points p 1 =
(X 1 , y 1 , z 1 ) ,. . . , P n = (x n , y n ,
z n ), a closed curve in which p 1 to p n are smoothly connected in order, and p n and p 1 are smoothly connected is obtained. Then, the curve to be obtained is generated by being divided into n partial curves C i (t) each having a vertex at point p i (i = 1, ..., N).

【0104】図16は、指定点が端点を含まない場合の
演算部22の処理を示すフローチャートである。図16
において処理が開始されると、演算部22は、入力され
た指定点p1 ,...,pn を点集合入力部21から受
け取り(ステップS41)、求める曲線を表現するn個
の部分曲線C1 (t)=(X1 (t),Y1 (t),Z
1 (t)),...,Cn (t)=(Xn (t),Yn
(t),Zn (t))を以下のように与える(ステップ
S42)。
FIG. 16 is a flow chart showing the processing of the arithmetic unit 22 when the designated point does not include the end point. FIG.
When the processing is started in, the arithmetic unit 22 receives the designated points p 1 ,. . . , P n from the point set input unit 21 (step S41), and n sub-curves C 1 (t) = (X 1 (t), Y 1 (t), Z representing the desired curve.
1 (t)) ,. . . , C n (t) = (X n (t), Y n
(T), Z n (t)) are given as follows (step S42).

【0105】[0105]

【数23】 (Equation 23)

【0106】(43)式は、(35)式と同様にある平
面内の2次曲線を表しており、(43)式の各項の係数
を決定すれば求める曲線が得られる。ここで、指定点が
端点を含む場合と同様にして、連続して指定された2つ
の指定点の間に仮想的な分割点を設ける。そして、Ci
(t)のtの区間を[0,1]とし、n個の各分割点に
おいてはCi (1)=Ci+1 (0)(i=1,...,
n−1)、Cn (1)=C1 (0)とおく。
The equation (43) represents a quadratic curve in a plane similar to the equation (35), and the curve to be obtained can be obtained by determining the coefficient of each term of the equation (43). Here, similarly to the case where the designated point includes the end point, a virtual division point is provided between two consecutively designated points. And C i
The section of t of (t) is [0, 1], and at each of the n division points, C i (1) = C i + 1 (0) (i = 1, ...,
n-1) and C n (1) = C 1 (0).

【0107】図17は、4つの指定点p1 、p2
3 、p4 が与えられた時の空間曲線の分割方法を示し
ている。図17では、2点p1 とp2 、p2 とp3 、p
3 とp4、p4 とp1 を結ぶ各線分の中点を通り、各線
分に垂直な各平面上に、それぞれ分割点D1 、D2 、D
3 、D4 を設ける。このとき、求める曲線は、p1 を含
む部分曲線C1 (t)、p2 を含む部分曲線C
2 (t)、p3 を含む部分曲線C3(t)、およびp4
を含む部分曲線C4 (t)に分割される。
FIG. 17 shows four designated points p 1 , p 2 ,
It shows a method of dividing the space curve when p 3 and p 4 are given. In FIG. 17, two points p 1 and p 2 , p 2 and p 3 , p
Dividing points D 1 , D 2 , D on the planes that pass through the midpoints of the line segments connecting 3 and p 4 , and p 4 and p 1, and are perpendicular to the line segments, respectively.
3 and D 4 are provided. At this time, the obtained curves are partial curves C 1 (t) including p 1 and partial curves C including p 2.
Partial curve C 3 (t) including 2 (t) and p 3 , and p 4
To the partial curve C 4 (t).

【0108】次に、演算部22は、(43)式の各係数
を求めるために次の連立方程式を解く(ステップS4
3)。
Next, the calculation section 22 solves the following simultaneous equations in order to obtain each coefficient of the equation (43) (step S4).
3).

【0109】[0109]

【数24】 (Equation 24)

【0110】ただし、xn+1 =x1 、yn+1 =y1 、z
n+1 =z1 、b(n+1)x=b1X、b(n+1 )y=b1y、b
(n+1)z=b1zとする。これらの方程式は、制約条件記憶
部25に格納された制約条件から得られる。ここで、
(44)式は、(38)式と同様に制約条件(b)から
得られ、(45)式は、(39)式と同様に各分割点に
おける2つの部分曲線の接線の傾きが等しいという条件
から得られる。(46)式は、(40)式と同様に各分
割点がその両側にある2つの指定点の垂直2等分線上に
あるという条件から得られる。また、(47)式は、
(41)式と同様に条件(a)から得られ、(48)式
は、(42)式と同様に条件(c)から命題2を用いて
得られる。(47)、(48)式において、ti は指定
点pi に対応するtの値を表す。
However, x n + 1 = x 1 , y n + 1 = y 1 , z
n + 1 = z 1 , b (n + 1) x = b 1X , b (n + 1 ) y = b 1y , b
(n + 1) z = b 1z . These equations are obtained from the constraint conditions stored in the constraint condition storage unit 25. here,
The equation (44) is obtained from the constraint condition (b) like the equation (38), and the equation (45) is said to have the same tangent slope of the two partial curves at each dividing point as in the equation (39). Obtained from the conditions. Expression (46) is obtained from the condition that each division point is on the perpendicular bisector of two specified points on both sides thereof, as in expression (40). Also, equation (47) is
Like the equation (41), it is obtained from the condition (a), and the equation (48) is obtained from the condition (c) using the proposition 2 like the equation (42). In the expressions (47) and (48), t i represents the value of t corresponding to the designated point p i .

【0111】これらの方程式により求められた部分曲線
群C1 (t),...,Cn (t)について、それぞれ
t=0からt=1までの部分を描いたものが求める閉曲
線となる。図17の場合は、部分曲線C1 (t)、C2
(t)、C3 (t)、C4 (t)をt∈[0,1]の区
間に限定して描くことにより、指定点p1 、p2
3 、p4 を通るなめらかな閉曲線が得られる。ただ
し、このとき、p1 =C1 (t1 )、p2 =C
2 (t2 )、p3 =C3 (t3 )、p4 =C
4 (t4 )、D1=C1 (1)=C2 (0)、D2 =C
2 (1)=C3 (0)、D3 =C3 (1)=C
4 (0)、D4 =C4 (1)=C1 (0)、である。
Partial curves obtained by these equations
Group C1(T) ,. . . , CnFor (t),
Closed song required by drawing the part from t = 0 to t = 1
Become a line. In the case of FIG. 17, the partial curve C1(T), CTwo
(T), CThree(T), CFour(T) is a group of t ∈ [0, 1]
By drawing only in between, the specified point p1, PTwo,
p Three, PFourA smooth closed curve passing through is obtained. However
At this time, p1= C1(T1), PTwo= C
Two(TTwo), PThree= CThree(TThree), PFour= C
Four(TFour), D1= C1(1) = CTwo(0), DTwo= C
Two(1) = CThree(0), DThree= CThree(1) = C
Four(0), DFour= CFour(1) = C1(0),

【0112】演算部22は、こうして求められたn個の
部分曲線群を、部分曲線群記憶部23に出力して(ステ
ップS44)、処理を終了する。空間曲線を表示するた
めに曲線表示部24が行う処理については、基本的に図
12のフローと同様である。ただし、この場合、ステッ
プS21において部分曲線群記憶部23から取り出され
る複数の2次曲線は、一般に、それぞれ異なる平面上の
2次曲線である。これらの2次曲線が部分的に組み合わ
されて、立体的な空間曲線が表示される。
The arithmetic unit 22 outputs the thus obtained n partial curve groups to the partial curve group storage unit 23 (step S44) and ends the processing. The process performed by the curve display unit 24 to display the space curve is basically the same as the flow in FIG. However, in this case, the plurality of quadratic curves extracted from the partial curve group storage unit 23 in step S21 are generally quadratic curves on different planes. These quadratic curves are partially combined to display a three-dimensional space curve.

【0113】従来の描画装置(作図装置)では平面上の
自由曲線の描画について、多くの場合、ユーザのイメー
ジする図形である多角形あるいは折れ線から著しく逸脱
したものしか描くことができなかった。また、多角形等
を近似した図形を描けたとしても、それには多大な手間
を要した。さらに、3次元空間内の曲線については、そ
れを描画する手段すら提供されていなかった。
In the conventional drawing apparatus (drawing apparatus), in many cases, the drawing of free-form curves on a plane could only draw polygons or polygonal lines which are the images that the user imagines, and those which deviate significantly. Moreover, even if it is possible to draw a figure that approximates a polygon, it takes a lot of time and effort. Furthermore, even for a curve in a three-dimensional space, no means for drawing it has been provided.

【0114】これに対して、上述のような本発明の曲線
生成装置では、平面や空間内でその並び方も含めて指定
された点集合から方程式を作り、それをデジタルプロセ
ッサ等を用いて解くことにより、容易にイメージ通りの
自由曲線を得ることができる。
On the other hand, in the above-described curve generator of the present invention, an equation is created from a specified point set including the arrangement of the points in a plane or space, and the equation is solved using a digital processor or the like. With this, it is possible to easily obtain a free curve as an image.

【0115】本実施形態で取り上げた方法で用いた方程
式は、一見、複雑なように思われるが、記号計算に適し
た数式処理システムを利用することによって、結局、1
次ないし3次方程式を解くことに帰着される。4次以下
の方程式には解の公式が存在することが知られているの
で、必要であればそれらの解の公式を用いることで、一
般解を得ることが可能である。
The equation used in the method taken up in the present embodiment seems to be complicated at first glance, but by using a mathematical expression processing system suitable for symbolic calculation, it is eventually 1
It results in solving a cubic or cubic equation. It is known that there are solution formulas in the equations of the fourth order and below, so that general solutions can be obtained by using those solution formulas if necessary.

【0116】また、得られた方程式の、個々に与えられ
た入力値による評価計算は、現在一般に用いられている
デジタルプロセッサの能力からすればそれほど重いもの
ではない。
Further, the evaluation calculation of the obtained equations by input values given individually is not so heavy considering the capability of the digital processor which is generally used at present.

【0117】また、物理学や工学等の諸分野において、
物理量や制御量を一般のn次元空間内の点として定義
し、その空間内の点や図形を処理対象とすることがよく
行われるが、本発明はそのような4次元以上の空間図形
にも適用可能である。この場合にも、上記制約条件は、
2次元や3次元の場合と同様にして、多次元空間曲線の
生成処理に適用される。
In various fields such as physics and engineering,
It is often practiced to define a physical quantity or control quantity as a point in a general n-dimensional space and to process points or figures in that space, but the present invention also applies to such four-dimensional or more spatial figures. Applicable. Also in this case, the constraint condition is
It is applied to the multidimensional space curve generation processing in the same manner as in the case of two-dimensional or three-dimensional.

【0118】以上説明した本発明の実施形態はあくまで
一例に過ぎず、上述の制約条件を満たす限り、任意の方
法で曲線を生成することができる。例えばパラメータ関
数として、tの2次関数の代わりに3次関数等の任意の
関数を用いてもよい。
The embodiment of the present invention described above is merely an example, and the curve can be generated by any method as long as the above-mentioned constraint conditions are satisfied. For example, as the parameter function, an arbitrary function such as a cubic function may be used instead of the quadratic function of t.

【0119】また、必ずしも条件(a)、(b)、
(c)、(d)、(e)のすべてを用いる必要はなく、
用途に合わせて取捨選択してもよい。さらに、新たな条
件を追加することも考えられる。本発明の基本原理に従
ってそうした改良を重ねれば、さらに効率的にユーザが
イメージする曲線を求めることが期待できる。
Further, the conditions (a), (b),
It is not necessary to use all of (c), (d) and (e),
You may select according to your purpose. Furthermore, it is possible to add new conditions. If such improvements are made in accordance with the basic principle of the present invention, it can be expected that the curve imaged by the user can be obtained more efficiently.

【0120】さらに、上述のような曲線生成処理を行う
プログラムを計算機用の記憶媒体に格納して、ユーザに
提供することもできる。この場合、記憶媒体としては、
ROM(read only memory)やRAM(random access
memory)等のメモリ、ハードディスク、フロッピーディ
スク、光ディスク、光磁気ディスク等任意のものが使用
可能である。
Further, a program for performing the above curve generation processing may be stored in a storage medium for a computer and provided to the user. In this case, the storage medium is
ROM (read only memory) and RAM (random access)
Any memory such as memory, hard disk, floppy disk, optical disk, magneto-optical disk, etc. can be used.

【0121】[0121]

【発明の効果】本発明によれば、ユーザの期待する多次
元の曲線図形が容易に得られ、ユーザは作図や描画を含
む作業を能率的に進めることができる。
According to the present invention, it is possible to easily obtain a multi-dimensional curved figure expected by the user, and the user can efficiently perform work including drawing and drawing.

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

【図1】本発明の原理図である。FIG. 1 is a principle diagram of the present invention.

【図2】実施形態のシステム構成図である。FIG. 2 is a system configuration diagram of the embodiment.

【図3】実施形態の機能ブロック図である。FIG. 3 is a functional block diagram of the embodiment.

【図4】指定点を通る平面曲線の第1の例を示す図であ
る。
FIG. 4 is a diagram showing a first example of a plane curve passing through a designated point.

【図5】指定点を通る平面曲線の第2の例を示す図であ
る。
FIG. 5 is a diagram showing a second example of a plane curve passing through a designated point.

【図6】第1の平面曲線を示す図である。FIG. 6 is a diagram showing a first plane curve.

【図7】演算部の第1の処理のフローチャートである。FIG. 7 is a flowchart of a first process of the arithmetic unit.

【図8】第2の平面曲線を示す図である。FIG. 8 is a diagram showing a second plane curve.

【図9】演算部の第2の処理のフローチャートである。FIG. 9 is a flowchart of second processing of the arithmetic unit.

【図10】第3の平面曲線を示す図である。FIG. 10 is a diagram showing a third plane curve.

【図11】第4の平面曲線を示す図である。FIG. 11 is a diagram showing a fourth plane curve.

【図12】曲線表示部の処理のフローチャートである。FIG. 12 is a flowchart of processing of a curve display unit.

【図13】第1の空間曲線を示す図である。FIG. 13 is a diagram showing a first space curve.

【図14】演算部の第3の処理のフローチャートであ
る。
FIG. 14 is a flowchart of a third process of the arithmetic unit.

【図15】第2の空間曲線を示す図である。FIG. 15 is a diagram showing a second space curve.

【図16】演算部の第4の処理のフローチャートであ
る。
FIG. 16 is a flowchart of fourth processing of the arithmetic unit.

【図17】第3の空間曲線を示す図である。FIG. 17 is a diagram showing a third space curve.

【図18】従来のスプライン曲線を示す図である。FIG. 18 is a diagram showing a conventional spline curve.

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

1 入力手段 2 演算手段 3 出力手段 4 制約条件記憶手段 11 CPU 12 メモリ 13 入出力端末 14 プロッタ 15 プリンタ 16 バス 21 点集合入力部 22 演算部 23 部分曲線群記憶部 24 曲線表示部 25 制約条件記憶部 1 Input Means 2 Calculation Means 3 Output Means 4 Constraint Condition Storage Means 11 CPU 12 Memory 13 Input / Output Terminals 14 Plotters 15 Printers 16 Buses 21 Point Set Input Section 22 Calculation Section 23 Partial Curve Group Storage Section 24 Curve Display Section 25 Constraint Condition Storage Department

Claims (17)

【特許請求の範囲】[Claims] 【請求項1】 指定された複数の点に基づいて演算を行
い、該複数の点により規定される曲線を生成する情報処
理装置において、 複数の指定点の位置に関する情報を入力する入力手段
と、 前記複数の指定点は求める曲線上にあり、かつ、該複数
の指定点は指定された順につながり、かつ、第1の指定
点が端点でない場合には該第1の指定点の近傍において
該求める曲線の曲率が極大となることを記述した第1の
制約条件を記憶する制約条件記憶手段と、 前記複数の指定点から、前記第1の制約条件に従って前
記求める曲線の形状を計算する演算手段と、 得られた前記求める曲線を描画する出力手段とを備える
ことを特徴とする曲線生成装置。
1. An information processing apparatus for performing an operation on the basis of a plurality of designated points to generate a curve defined by the plurality of points, and input means for inputting information on the positions of the plurality of designated points, The plurality of designated points are on the curve to be sought, the plurality of designated points are connected in the designated order, and when the first designated point is not an end point, the plurality of designated points are obtained in the vicinity of the first designated point. Constraint condition storage means for storing a first constraint condition describing that the curvature of the curve becomes maximum; and operation means for calculating the shape of the obtained curve from the plurality of specified points according to the first constraint condition. A curve generation device comprising: an output unit that draws the obtained curve obtained.
【請求項2】 前記制約条件記憶手段は、求める曲線の
曲率が極大となる点を前記複数の指定点に限ることを記
述した第2の制約条件をさらに記憶し、前記演算手段
は、該第2の制約条件に従って前記求める曲線の形状を
計算することを特徴とする請求項1記載の曲線生成装
置。
2. The constraint condition storage means further stores a second constraint condition describing that a point where a curvature of a curve to be obtained has a maximum is limited to the plurality of designated points, and the calculation means stores the second constraint condition. The curve generation device according to claim 1, wherein the shape of the curve to be obtained is calculated in accordance with the constraint condition of 2.
【請求項3】 前記制約条件記憶手段は、第2の指定点
が端点の場合は該第2の指定点は前記求める曲線の端点
ともなることを記述した第3の制約条件をさらに記憶
し、前記演算手段は、該第3の制約条件に従って前記求
める曲線の形状を計算することを特徴とする請求項1記
載の曲線生成装置。
3. The constraint condition storage means further stores a third constraint condition that describes that, when the second designated point is an end point, the second designated point also serves as an end point of the curve to be obtained. The curve generation device according to claim 1, wherein the calculation means calculates the shape of the curve to be obtained according to the third constraint condition.
【請求項4】 前記制約条件記憶手段は、求める曲線の
曲率が極大となる点を前記複数の指定点に限ることを記
述した第2の制約条件と、第2の指定点が端点の場合は
該第2の指定点は前記求める曲線の端点ともなることを
記述した第3の制約条件とをさらに記憶し、前記演算手
段は、該第2および第3の制約条件に従って前記求める
曲線の形状を計算することを特徴とする請求項1記載の
曲線生成装置。
4. The second constraint condition describing that the constraint condition storage means limits the point where the curvature of the curve to be obtained is maximum to the plurality of designated points, and when the second designated point is an end point. A third constraint condition describing that the second designated point also serves as an end point of the curve to be obtained is further stored, and the computing means determines the shape of the curve to be obtained according to the second and third constraint conditions. The curve generation device according to claim 1, which is calculated.
【請求項5】 前記入力手段は、2次元平面上で指定さ
れた前記複数の指定点の位置に関する情報を入力し、前
記出力手段は、該平面上に前記求める曲線を描画するこ
とを特徴とする請求項1記載の曲線生成装置。
5. The input means inputs information about the positions of the plurality of designated points designated on a two-dimensional plane, and the output means draws the desired curve on the plane. The curve generation device according to claim 1.
【請求項6】 前記入力手段は、3次元空間内で指定さ
れた前記複数の指定点の位置に関する情報を入力し、前
記出力手段は、該空間内に前記求める曲線を描画するこ
とを特徴とする請求項1記載の曲線生成装置。
6. The input means inputs information on the positions of the plurality of designated points designated in a three-dimensional space, and the output means draws the desired curve in the space. The curve generation device according to claim 1.
【請求項7】 前記演算手段は、前記求める曲線を多項
式を用いて表し、前記第1の制約条件から該多項式の係
数を決定して、該求める曲線を生成することを特徴とす
る請求項1記載の曲線生成装置。
7. The calculating means represents the curve to be obtained using a polynomial, determines the coefficient of the polynomial from the first constraint condition, and generates the curve to be obtained. The described curve generator.
【請求項8】 前記演算手段は、前記求める曲線の一部
または全部を平面2次曲線を用いて表し、前記第1の制
約条件から該2次曲線を記述する前記多項式の係数を決
定して、該求める曲線を生成することを特徴とする請求
項7記載の曲線生成装置。
8. The calculating means represents a part or all of the obtained curve using a plane quadratic curve, and determines a coefficient of the polynomial describing the quadratic curve from the first constraint condition. The curve generating device according to claim 7, wherein the curve to be obtained is generated.
【請求項9】 前記求める曲線を複数の部分曲線に分割
して記憶する部分曲線群記憶手段をさらに備え、前記演
算手段は、各部分曲線の形状を計算して求め、前記出力
手段は、得られた該複数の部分曲線を連結して前記求め
る曲線を描画することを特徴とする請求項1記載の曲線
生成装置。
9. A partial curve group storage means for dividing the obtained curve into a plurality of partial curves and storing the divided partial curve, wherein the calculating means calculates and obtains the shape of each partial curve, and the output means obtains The curve generation device according to claim 1, wherein the obtained curve is drawn by connecting the plurality of obtained partial curves.
【請求項10】 前記演算手段は、連続して指定された
2つの指定点の間で前記求める曲線を分割し、分割点に
おいて隣接する部分曲線がなめらかにつながるように、
各部分曲線の形状を決定することを特徴とする請求項9
記載の曲線生成装置。
10. The computing means divides the curve to be obtained between two consecutively designated points, so that adjacent partial curves are smoothly connected at the split points,
The shape of each partial curve is determined, and the shape of each partial curve is determined.
The described curve generator.
【請求項11】 前記演算手段は、各部分曲線を平面2
次曲線を用いて表し、前記第1の制約条件から該2次曲
線を記述する多項式の係数を決定して、前記複数の部分
曲線を生成することを特徴とする請求項9記載の曲線生
成装置。
11. The calculating means calculates each partial curve on a plane 2.
10. The curve generation device according to claim 9, wherein the plurality of partial curves are generated by using a second curve and determining the coefficient of a polynomial that describes the second curve from the first constraint condition. .
【請求項12】 指定された複数の点に基づいて演算を
行い、該複数の点により規定される曲線を生成する情報
処理装置において、 複数の指定点の位置に関する情報を入力する入力手段
と、 前記複数の指定点は求める曲線上にあり、かつ、該複数
の指定点は指定された順につながることを記述した第4
の制約条件を記憶する制約条件記憶手段と、 前記複数の指定点から、前記第4の制約条件に従って前
記求める曲線の形状を計算する演算手段と、 得られた前記求める曲線を描画する出力手段とを備える
ことを特徴とする曲線生成装置。
12. An information processing apparatus for performing an operation based on a plurality of designated points to generate a curve defined by the plurality of points, and an input means for inputting information about positions of the plurality of designated points, A fourth description that the plurality of designated points are on a curve to be obtained, and that the plurality of designated points are connected in a designated order
Constraint condition storage means for storing the constraint condition, operation means for calculating the shape of the desired curve according to the fourth constraint condition from the plurality of designated points, and output means for drawing the obtained desired curve. A curve generation device comprising:
【請求項13】 前記制約条件記憶手段は、前記求める
曲線の頂点が第1の指定点の近傍に存在することを記述
した第5の制約条件をさらに記憶し、前記演算手段は、
該第5の制約条件に従って前記求める曲線の形状を計算
することを特徴とする請求項12記載の曲線生成装置。
13. The constraint condition storage means further stores a fifth constraint condition describing that the apex of the curve to be obtained exists in the vicinity of a first designated point, and the computing means comprises:
13. The curve generation device according to claim 12, wherein the shape of the curve to be obtained is calculated according to the fifth constraint condition.
【請求項14】 指定された複数の点に基づいて演算を
行い、該複数の点により規定される曲線を生成する計算
機により使用されたとき、 複数の指定点の位置に関する情報を入力する機能と、 前記複数の指定点は求める曲線上にあり、かつ、該複数
の指定点は指定された順につながり、かつ、第1の指定
点が端点でない場合には該第1の指定点の近傍において
該求める曲線の曲率が極大となることを記述した第1の
制約条件に従って、前記複数の指定点から前記求める曲
線の形状を計算する機能と、 得られた前記求める曲線を描画する機能とを前記計算機
に行わせるための計算機読み出し可能記憶媒体。
14. A function of inputting information on the positions of a plurality of designated points when used by a computer that performs an operation based on a plurality of designated points and generates a curve defined by the plurality of points. , The plurality of designated points are on a curve to be sought, the plurality of designated points are connected in a designated order, and when the first designated point is not an end point, the plurality of designated points are arranged in the vicinity of the first designated point. The computer has a function of calculating the shape of the desired curve from the plurality of designated points and a function of drawing the obtained desired curve, according to the first constraint condition that describes that the curvature of the desired curve becomes maximum. A computer-readable storage medium for performing the program.
【請求項15】 指定された複数の点に基づいて演算を
行い、該複数の点により規定される曲線を生成する計算
機により使用されたとき、 複数の指定点の位置に関する情報を入力する機能と、 前記複数の指定点は求める曲線上にあり、かつ、該複数
の指定点は指定された順につながることを記述した第4
の制約条件に従って、前記複数の指定点から前記求める
曲線の形状を計算する機能と、 得られた前記求める曲線を描画する機能とを前記計算機
に行わせるための計算機読み出し可能記憶媒体。
15. A function of inputting information about the positions of a plurality of designated points when used by a computer that performs an operation based on a plurality of designated points and generates a curve defined by the plurality of points. A fourth description that the plurality of designated points are on a curve to be obtained, and that the plurality of designated points are connected in a designated order
A computer-readable storage medium for causing the computer to perform the function of calculating the shape of the curve to be obtained from the plurality of designated points and the function of drawing the obtained curve to be obtained in accordance with the constraint condition of 1.
【請求項16】 指定された複数の点に基づいて演算を
行い、該複数の点により規定される曲線を生成する方法
において、 複数の指定点の位置に関する情報を入力し、 前記複数の指定点は求める曲線上にあり、かつ、該複数
の指定点は指定された順につながり、かつ、第1の指定
点が端点でない場合には該第1の指定点において該求め
る曲線の曲率が極大となることを記述した第1の制約条
件を用いて、前記複数の指定点から該求める曲線の形状
を計算し、 得られた前記求める曲線を描画することを特徴とする曲
線生成方法。
16. A method of performing an operation based on a plurality of designated points to generate a curve defined by the plurality of points, wherein information about the positions of the plurality of designated points is input, and the plurality of designated points are input. Is on the curve to be sought, the plurality of designated points are connected in the designated order, and when the first designated point is not an end point, the curvature of the sought curve becomes maximum at the first designated point. A curve generation method, characterized in that the shape of the curve to be obtained is calculated from the plurality of designated points using the first constraint condition described above, and the obtained curve to be obtained is drawn.
【請求項17】 指定された複数の点に基づいて演算を
行い、該複数の点により規定される曲線を生成する方法
において、 複数の指定点の位置に関する情報を入力し、 前記複数の指定点は求める曲線上にあり、かつ、該複数
の指定点は指定された順につながることを記述した第4
の制約条件を用いて、前記複数の指定点から該求める曲
線の形状を計算し、 得られた前記求める曲線を描画することを特徴とする曲
線生成方法。
17. A method of performing an operation based on a plurality of designated points to generate a curve defined by the plurality of points, wherein information on the positions of the plurality of designated points is input, and the plurality of designated points are input. Is on the curve to be sought, and the plurality of designated points are connected in the designated order.
The curve generation method is characterized in that the shape of the desired curve is calculated from the plurality of designated points using the constraint condition of (1) and the obtained desired curve is drawn.
JP18378996A 1995-09-14 1996-07-12 Curve generating device and its method Withdrawn JPH09138855A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP18378996A JPH09138855A (en) 1995-09-14 1996-07-12 Curve generating device and its method

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP23635095 1995-09-14
JP7-236350 1995-09-14
JP18378996A JPH09138855A (en) 1995-09-14 1996-07-12 Curve generating device and its method

Publications (1)

Publication Number Publication Date
JPH09138855A true JPH09138855A (en) 1997-05-27

Family

ID=26502083

Family Applications (1)

Application Number Title Priority Date Filing Date
JP18378996A Withdrawn JPH09138855A (en) 1995-09-14 1996-07-12 Curve generating device and its method

Country Status (1)

Country Link
JP (1) JPH09138855A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2383930B (en) * 2002-01-08 2005-12-14 Research Machines Plc Curved connector display
JP2006202066A (en) * 2005-01-21 2006-08-03 Institute Of National Colleges Of Technology Japan Apparatus for creating model of curve or curved surface using three-dimensional computer graphics and its system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2383930B (en) * 2002-01-08 2005-12-14 Research Machines Plc Curved connector display
JP2006202066A (en) * 2005-01-21 2006-08-03 Institute Of National Colleges Of Technology Japan Apparatus for creating model of curve or curved surface using three-dimensional computer graphics and its system

Similar Documents

Publication Publication Date Title
US7239319B2 (en) Rendering outline fonts
US5774130A (en) Computer animation generator creating hierarchies of models for rapid display
WO1995006291A1 (en) System and method for generating smooth low degree polynomial spline surfaces over irregular meshes
US9501811B2 (en) Resizing an image
WO2000002165A1 (en) Method for generating polygon data and image display using the same
US9965843B2 (en) Methods and systems for characterizing concept drawings and estimating three-dimensional information therefrom
WO2005066852A1 (en) Method for approximating and displaying three-dimensional cad data, and system for executing that method
US11605200B2 (en) System for optimizing a 3D mesh
US10339226B2 (en) System and method for defining watertight and locally refinable surfaces with interpolatory control points
JP4553601B2 (en) Visualization program
JP5458440B2 (en) Curved surface generation device and curved surface generation program
JPH09138855A (en) Curve generating device and its method
Muraki et al. Curve Mesh Modeling Method of Trimmed Surfaces for Direct Modeling
US20050057568A1 (en) Bicubic surface rendering
Frisch et al. Deformation of finite element meshes using directly manipulated free-form deformation
JP3511301B2 (en) Surface data generation method
Kim et al. Surface flow visualization using the closest point embedding
JP2671652B2 (en) 3D shape modeling device
JP3147391B2 (en) Method and apparatus for setting curved surface in three-dimensional boundary fitting mesh division
JP4005352B2 (en) 3D shape processing apparatus and curved surface interpolation program
Safko Tessellation of trimmed NURBS surfaces.
JP6888411B2 (en) 3D shape data editing device and 3D shape data editing program
JP3019283B2 (en) Curved boundary condition generator
Wang Free-form surface representation and approximation using T-splines
JP3973868B2 (en) Parametric modeling system

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20031007