JPH03198169A - 曲線発生方式 - Google Patents
曲線発生方式Info
- Publication number
- JPH03198169A JPH03198169A JP33639089A JP33639089A JPH03198169A JP H03198169 A JPH03198169 A JP H03198169A JP 33639089 A JP33639089 A JP 33639089A JP 33639089 A JP33639089 A JP 33639089A JP H03198169 A JPH03198169 A JP H03198169A
- Authority
- JP
- Japan
- Prior art keywords
- function
- uniform
- control point
- conversion
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000006243 chemical reaction Methods 0.000 claims abstract description 53
- 238000000034 method Methods 0.000 claims description 11
- 238000004364 calculation method Methods 0.000 claims description 9
- 238000012545 processing Methods 0.000 abstract description 10
- 239000013598 vector Substances 0.000 description 20
- 238000010586 diagram Methods 0.000 description 8
- 238000011960 computer-aided design Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 238000003860 storage Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000005429 filling process Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000002747 voluntary effect Effects 0.000 description 1
Landscapes
- Image Generation (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔概 要〕
文字パターンの生成、コンピュータグラフィックあるい
はコンピュータエイデツドデザインなどにおける曲線生
成方式に関し、 ノンユニフォーム・Bスプライン関数の制御点をベイツ
エル関数の制御点への変換を高速に行うようにした曲線
生成方式を得ることを目的とし、ノンユニフォーム・B
スプライン関数におケル制御点の座標をベイツエル関数
における制御点の座標に変換する変換係数を格納した変
換テーブルと、この変換テーブルから得られた変換係数
と入力曲線データとの積和演算を行う積和演算器とから
なるデータ変換手段を備え、このデータ変換手段によっ
てノンユニフォーム・Bスプライン関数で表現された入
力曲線データをベイツエル関数のデータに変換し、得ら
れたベイツエル関数のデータを用いてベイツエル関数生
成器によって曲線を生成するように構成した。
はコンピュータエイデツドデザインなどにおける曲線生
成方式に関し、 ノンユニフォーム・Bスプライン関数の制御点をベイツ
エル関数の制御点への変換を高速に行うようにした曲線
生成方式を得ることを目的とし、ノンユニフォーム・B
スプライン関数におケル制御点の座標をベイツエル関数
における制御点の座標に変換する変換係数を格納した変
換テーブルと、この変換テーブルから得られた変換係数
と入力曲線データとの積和演算を行う積和演算器とから
なるデータ変換手段を備え、このデータ変換手段によっ
てノンユニフォーム・Bスプライン関数で表現された入
力曲線データをベイツエル関数のデータに変換し、得ら
れたベイツエル関数のデータを用いてベイツエル関数生
成器によって曲線を生成するように構成した。
文字パターンの生成、コンピュータグラフィ7り(CG
)あるいはコンピュータエイデツドデザイン(CAD)
などにおける曲線生成方式に関する。
)あるいはコンピュータエイデツドデザイン(CAD)
などにおける曲線生成方式に関する。
上記のような分野においては、自然界に曲線で表される
物体が多いことから、現実に近い高品質の画像表現を行
うために、より少ないデータによって高品質で高速な曲
線を生成することがが望まれている。
物体が多いことから、現実に近い高品質の画像表現を行
うために、より少ないデータによって高品質で高速な曲
線を生成することがが望まれている。
ノンユニフォーム−Bスプライン(Non−unifo
rmB−sρ1ine)関数を用いた曲線生成において
は、太線で示した曲線Aを生成するに必要な制御点は、
第2図(a)に示すように、制御点Q1〜Q、の5つで
済むのでデータ量が少な(、また、データの制御性の点
でも優れているがハードウェアとして構成することが困
難であって高品質、高速な生成を行うことができないと
いう問題がある。
rmB−sρ1ine)関数を用いた曲線生成において
は、太線で示した曲線Aを生成するに必要な制御点は、
第2図(a)に示すように、制御点Q1〜Q、の5つで
済むのでデータ量が少な(、また、データの制御性の点
でも優れているがハードウェアとして構成することが困
難であって高品質、高速な生成を行うことができないと
いう問題がある。
すなわち、ノンユニフォーム・Bスプライン関数の定義
式を3次の場合を例にとると次の式で示される。
式を3次の場合を例にとると次の式で示される。
ノットベクトル tl、h、−・−’ ji−1+ L
i+ ji+1+・−−一’l t I’l + 4に
おいて、ここで、Qlは制御点であり、Ni、4(t)
はノットベクトルから算出される基底関数である。
i+ ji+1+・−−一’l t I’l + 4に
おいて、ここで、Qlは制御点であり、Ni、4(t)
はノットベクトルから算出される基底関数である。
区間[1++11.、〕のNi、a(t)を計算するた
めのアルゴリズムは下記のように初期条件から次々に漸
化式を解くことができ、f(t)は上記(1)式に示さ
れるようにこのNt、4(t)とQ、との積和演算によ
って求められる。
めのアルゴリズムは下記のように初期条件から次々に漸
化式を解くことができ、f(t)は上記(1)式に示さ
れるようにこのNt、4(t)とQ、との積和演算によ
って求められる。
初期条件
Nt、4(t)= 1 (t、≦1<1.。υNi、
4(t)=O(上記以外> −−−−−・ (2)漸
化式 この(3)式は割算を含んだ複雑な式であって、高速な
演算処理を行うハードウェアを実現することが困難であ
る。
4(t)=O(上記以外> −−−−−・ (2)漸
化式 この(3)式は割算を含んだ複雑な式であって、高速な
演算処理を行うハードウェアを実現することが困難であ
る。
一方、ベイツエル(Bez 1er)関数の定義式を上
述の(11〜(3)式に示したノンユニフォーム・Bス
プライン関数の記述に対応して示すと次のとおりである
。
述の(11〜(3)式に示したノンユニフォーム・Bス
プライン関数の記述に対応して示すと次のとおりである
。
ノットベクトルt+、t+、L、t+、’−−−−−−
− tl、 t4. tz。
− tl、 t4. tz。
j i+−”’−’−’+ Ln+4 + Ln。4
+ n+1 +jn+4において・ここで、Q、/は制
御点であり、Bt、<(t)はノットベクトルから算出
される基底関数である。
+ n+1 +jn+4において・ここで、Q、/は制
御点であり、Bt、<(t)はノットベクトルから算出
される基底関数である。
このベイツエル関数による曲線生成は中点分割法を適用
することによってハードウェアとして構成することが比
較的容易であり、誤差のない高品質の曲線を生成するこ
とができる。
することによってハードウェアとして構成することが比
較的容易であり、誤差のない高品質の曲線を生成するこ
とができる。
しかしながら、ベイツエル関数を用いて上記(81図に
太線で示したと同一の曲線Aを生成するためには同図(
blに示すようにQ1′〜Q、′の8つの制御点が必要
であり、上記のBスプライン関数を用いる場合に比して
データの量が多く、また、データの制御性などの点で劣
っている。
太線で示したと同一の曲線Aを生成するためには同図(
blに示すようにQ1′〜Q、′の8つの制御点が必要
であり、上記のBスプライン関数を用いる場合に比して
データの量が多く、また、データの制御性などの点で劣
っている。
先に引用した第2図のta1図と(1))図とを比較す
ると、(a)図のノンユニフォーム・Bスプライン関数
の制御点Q、〜Q、から(bl図のベイツエル関数のQ
l ’〜Ql’の8つの制御点を得ることができれば、
ノンユニフォーム・Bスプライン関数によって得られる
と同一の曲線Aをベイツエル関数生成器を用いて得るこ
とができることが判る。
ると、(a)図のノンユニフォーム・Bスプライン関数
の制御点Q、〜Q、から(bl図のベイツエル関数のQ
l ’〜Ql’の8つの制御点を得ることができれば、
ノンユニフォーム・Bスプライン関数によって得られる
と同一の曲線Aをベイツエル関数生成器を用いて得るこ
とができることが判る。
このためには、ノンユニフォーム・Bスプライン関数の
)7)ベクトルにノットを追加すればよいが、ノット追
加のアルゴリズムとして知られている0sloあるいは
Boehmのアルゴリズムにおいては、先に示した(3
)式と同類の演算を繰返えすために高速で演算可能なハ
ードウェアを構成することが困難である。
)7)ベクトルにノットを追加すればよいが、ノット追
加のアルゴリズムとして知られている0sloあるいは
Boehmのアルゴリズムにおいては、先に示した(3
)式と同類の演算を繰返えすために高速で演算可能なハ
ードウェアを構成することが困難である。
ここで、ノットベクトルt 、 、 −−−−−−ti
+・・−・・+jn44 制御点Q + 、 Q t 、 −−−−−−−Q 、
、で表されるノンユニフォーム・Bスプライン関数のノ
ットベクトルにBoehmのアルゴリズムによってノッ
トを1つ追加してノットベクトルt、、−−−−−ti
、 ti、・・−・−・−+tFl+4に、また、制御
点Q I ’ + QZ ’ + ’−’−”−’+
Qll+1に変換する例を示すと、 Q、′=(1−α、)十αjQj αi = 1 (J≦1−4)α、
=0 (i≦ j)となる。
+・・−・・+jn44 制御点Q + 、 Q t 、 −−−−−−−Q 、
、で表されるノンユニフォーム・Bスプライン関数のノ
ットベクトルにBoehmのアルゴリズムによってノッ
トを1つ追加してノットベクトルt、、−−−−−ti
、 ti、・・−・−・−+tFl+4に、また、制御
点Q I ’ + QZ ’ + ’−’−”−’+
Qll+1に変換する例を示すと、 Q、′=(1−α、)十αjQj αi = 1 (J≦1−4)α、
=0 (i≦ j)となる。
このようにノットベクトル間の割算を繰返えし行うこと
によってノンユニフォーム・Bスプライン関数からベイ
ツエル関数への変換を行うことはできるが、割算の回数
が多いために高速なハードウェアを得ることは望めない
。
によってノンユニフォーム・Bスプライン関数からベイ
ツエル関数への変換を行うことはできるが、割算の回数
が多いために高速なハードウェアを得ることは望めない
。
本発明はノンユニフォーム・Bスプライン関数の制御点
をベイツエル関数の制御点への変換を高速に行うように
した曲線生成方式を得ることを目的とする。
をベイツエル関数の制御点への変換を高速に行うように
した曲線生成方式を得ることを目的とする。
第1図の原理図に示すように、ノンユニフォーム・Bス
プライン関数における制御点の座標をベイツエル関数に
おける制御点の座標に変換する変換係数を格納した変換
テーブルと、この変換テーブルから得られた変換係数と
入力曲線データとの積和演算を行う積和演算器とからな
るデータ変換手段とを設け、このデータ変換手段によっ
てノンユニフォーム・Bスプライン関数で表現された入
力曲線データをベイツエル関数のデータに変換し、得ら
れたベイツエル関数のデータを用いてベイツエル関数生
成器によって曲線を生成するようにした。
プライン関数における制御点の座標をベイツエル関数に
おける制御点の座標に変換する変換係数を格納した変換
テーブルと、この変換テーブルから得られた変換係数と
入力曲線データとの積和演算を行う積和演算器とからな
るデータ変換手段とを設け、このデータ変換手段によっ
てノンユニフォーム・Bスプライン関数で表現された入
力曲線データをベイツエル関数のデータに変換し、得ら
れたベイツエル関数のデータを用いてベイツエル関数生
成器によって曲線を生成するようにした。
上記の変換テーブルの作成の例としては、RoehI1
1アルゴリズムによってノットを1つずつ追加してゆく
ときにノット追加前の制御点とノット追加後の制御点と
の変換係数が求められるが、各段階で初期のノンユニフ
ォーム・Bスプライン関数の制御点からの変換係数に換
算して保存することによって、最終的にノンユニフォー
ム・Bスプライン関数からベイツエル関数へ直接変換す
るための変換係数テーブルが得られる。
1アルゴリズムによってノットを1つずつ追加してゆく
ときにノット追加前の制御点とノット追加後の制御点と
の変換係数が求められるが、各段階で初期のノンユニフ
ォーム・Bスプライン関数の制御点からの変換係数に換
算して保存することによって、最終的にノンユニフォー
ム・Bスプライン関数からベイツエル関数へ直接変換す
るための変換係数テーブルが得られる。
より具体的な例を挙げて説明すると、ノンユニフォーム
・Bスプライン関数のノットベクトル、例えばt、 =
(0,0,5,0,75,1)を入力し、ベイツエル
関数の制御点Q、を得るためのノンユニフォーム・Bス
プライン関数の制御点Q、からの変換係数を格納する格
納領域S(i、j)をi=jのときには1に、i≠jの
ときには0に初期化する。
・Bスプライン関数のノットベクトル、例えばt、 =
(0,0,5,0,75,1)を入力し、ベイツエル
関数の制御点Q、を得るためのノンユニフォーム・Bス
プライン関数の制御点Q、からの変換係数を格納する格
納領域S(i、j)をi=jのときには1に、i≠jの
ときには0に初期化する。
次いでBoehmアルゴリズムによってノットを1つ追
加し、その前後の制御点間の変換係数W (i 、 D
を例えば下記のように算出する。
加し、その前後の制御点間の変換係数W (i 、 D
を例えば下記のように算出する。
t、 →t、 ’ = (0,0,0,5,0,75,
1)q、 −ΣW (i+ J ) Q jここで、
11/はベイツエル関数でのノットベクトル、q、′は
ノット追加前の制御点、qJはノット追加後の制御点で
ある。
1)q、 −ΣW (i+ J ) Q jここで、
11/はベイツエル関数でのノットベクトル、q、′は
ノット追加前の制御点、qJはノット追加後の制御点で
ある。
そして、次の式によってノンユニフォーム・Bスプライ
ン関数の制御点QJからの変換係数を求め、上記の変換
係数の算出とともに追加するノットの数に相当する回数
だけ繰返えし、得られた係数を保存することによって所
要の変換テーブルを作成する。
ン関数の制御点QJからの変換係数を求め、上記の変換
係数の算出とともに追加するノットの数に相当する回数
だけ繰返えし、得られた係数を保存することによって所
要の変換テーブルを作成する。
b (i、D −b (i、j)+ΣW(i、k) x
S (k、j)S (i、j) = b (i、j
)b(i、D =0 第3図はこのようにして得られた変換テーブルに格納さ
れている値の例を示すものであり、この変換テーブルを
用いてノンユニフォーム・Bスプライン関数で表現され
た入力曲線データをベイツエル関数のデータに変換する
方法を具体的に説明する。
S (k、j)S (i、j) = b (i、j
)b(i、D =0 第3図はこのようにして得られた変換テーブルに格納さ
れている値の例を示すものであり、この変換テーブルを
用いてノンユニフォーム・Bスプライン関数で表現され
た入力曲線データをベイツエル関数のデータに変換する
方法を具体的に説明する。
この第3図の上段に示されているQ、−Q、は制御点座
標Q+、Qz、Q3.Q4.Q5のそれぞれに対する係
数であることを示しており、また、左列に示されている
Ql 〜Qs’はベイツエル関数に変換した新しい8つ
の制御点を求めるための係数であることを示している。
標Q+、Qz、Q3.Q4.Q5のそれぞれに対する係
数であることを示しており、また、左列に示されている
Ql 〜Qs’はベイツエル関数に変換した新しい8つ
の制御点を求めるための係数であることを示している。
ノンユニフォーム・Bスプライン関数による曲線データ
として制御点座標Q、、Qz、Qs、Q4.Qsと例え
ば(0,0,5,1)のノットベクトルを入力すると、
制御点座標Qt、Qz、 Q8.Qa、Qsのそれぞれ
に上記第3図の変換テーブルからの係数が乗算される第
4図の積和演算が行われ、ベイツェル関数における8つ
の制御点座標Ql ’〜Qa’が求められる。なお、こ
の第4図におけるQ1〜Q5の係数をそれぞれ点線の枠
で囲って、これらの係数が第3図におけるQ1〜Q、の
係数であることを示した。
として制御点座標Q、、Qz、Qs、Q4.Qsと例え
ば(0,0,5,1)のノットベクトルを入力すると、
制御点座標Qt、Qz、 Q8.Qa、Qsのそれぞれ
に上記第3図の変換テーブルからの係数が乗算される第
4図の積和演算が行われ、ベイツェル関数における8つ
の制御点座標Ql ’〜Qa’が求められる。なお、こ
の第4図におけるQ1〜Q5の係数をそれぞれ点線の枠
で囲って、これらの係数が第3図におけるQ1〜Q、の
係数であることを示した。
このようにして得られたベイツェル関数における制御点
座標Ql ’〜Q、′を用いてベイツエル関数生成器に
よって曲線を生成させれば、ノンユニフォーム・Bスプ
ライン関数によって指定された曲線が生成される。
座標Ql ’〜Q、′を用いてベイツエル関数生成器に
よって曲線を生成させれば、ノンユニフォーム・Bスプ
ライン関数によって指定された曲線が生成される。
本発明によれば、データ変換手段lにおける変換係数テ
ーブルの参照と積和演算とをパイプライン処理によって
実行することができるので、このパイプライン処理を行
うことによってさらに高速化することができる。
ーブルの参照と積和演算とをパイプライン処理によって
実行することができるので、このパイプライン処理を行
うことによってさらに高速化することができる。
第5図は、上記〔作用〕の項で説明した変換処理を行う
ための本発明の実施例を示すもので、第1図のデータ変
換手°段lに相当するデータ変換手段lOは#l〜#8
の乗算器111.11□、・・・−・・11aと、加算
器12と、変換係数テーブル13とを含んでいる。
ための本発明の実施例を示すもので、第1図のデータ変
換手°段lに相当するデータ変換手段lOは#l〜#8
の乗算器111.11□、・・・−・・11aと、加算
器12と、変換係数テーブル13とを含んでいる。
このデータ変換手段10にはノンユニフォーム・Bスプ
ライン関数における制御点座標および後述するノットベ
クトルのコードが入力され、この制御点座標は上記乗算
器11□11□、−−−−一・−,11nの一方の入力
端子に供給され、他方の入力端子にはノットベクトルの
コードを変換係数テーブルで変換して得られた変換係数
が供給される。
ライン関数における制御点座標および後述するノットベ
クトルのコードが入力され、この制御点座標は上記乗算
器11□11□、−−−−一・−,11nの一方の入力
端子に供給され、他方の入力端子にはノットベクトルの
コードを変換係数テーブルで変換して得られた変換係数
が供給される。
このノットベクトルのコードについて説明すると、ノン
ユニフォーム・Bスプライン関数においてはノットを自
由に挿入することができ、これによって制御点数が増加
するので制御の自由度も増大する。
ユニフォーム・Bスプライン関数においてはノットを自
由に挿入することができ、これによって制御点数が増加
するので制御の自由度も増大する。
第6図(a)は4つの制御点Q、〜Q4を有するノンユ
ニフォーム・Bスプライン関数によって生成される図形
Aについて、同図伽)に示すように、その中点t=0.
5に制御点Q、を追加して5つの制御点Qo、Q+、〜
Q4とし、さらにこの図形Aの端点である1=0の制御
点Ql ’の位置をQ1″に移動させた状態を点線で示
したもので、1=0の制御点Ql ’の移動は1=0〜
t=0.5の区間の曲線形状に影響を与えるだけでt=
0.5〜t=1の区間には影響を与えないので、図形A
として示したような曲線の形状の局所制御が可能である
。
ニフォーム・Bスプライン関数によって生成される図形
Aについて、同図伽)に示すように、その中点t=0.
5に制御点Q、を追加して5つの制御点Qo、Q+、〜
Q4とし、さらにこの図形Aの端点である1=0の制御
点Ql ’の位置をQ1″に移動させた状態を点線で示
したもので、1=0の制御点Ql ’の移動は1=0〜
t=0.5の区間の曲線形状に影響を与えるだけでt=
0.5〜t=1の区間には影響を与えないので、図形A
として示したような曲線の形状の局所制御が可能である
。
この第4図の例ではt=0.5のノットを挿入したが、
−船釣にはノットの値は制限されないが、1つのノット
ベクトルについて1つの変換係数テーブルが必要である
ため、ノットベクトルの種類が増えるとテーブルの格納
容量も増えるためにノットの値に制限を設けることが望
ましい。
−船釣にはノットの値は制限されないが、1つのノット
ベクトルについて1つの変換係数テーブルが必要である
ため、ノットベクトルの種類が増えるとテーブルの格納
容量も増えるためにノットの値に制限を設けることが望
ましい。
この制限方法はシステムに依存するが、曲線近似すると
きにノットを追加する有効な方法である逐次分割法によ
るノットベクトルの例を次の表に示す。この逐次分割法
においては、ある参照データに対して曲線近似を行った
ときの誤差評価によっであるノット区間の誤差が予め定
めた闇値より大きかった場合にはその区間の中点にノッ
トを追加するものであり、下記の表から明らかなように
ノットの各要素は規則性を有するためにコード化するこ
とが容易である。
きにノットを追加する有効な方法である逐次分割法によ
るノットベクトルの例を次の表に示す。この逐次分割法
においては、ある参照データに対して曲線近似を行った
ときの誤差評価によっであるノット区間の誤差が予め定
めた闇値より大きかった場合にはその区間の中点にノッ
トを追加するものであり、下記の表から明らかなように
ノットの各要素は規則性を有するためにコード化するこ
とが容易である。
上述のようにこのノットベクトルのコードが第5図の変
換係数テーブル13に供給されると、生成されるパイプ
エル関数の制御点の数に等しい数の係数がこのテーブル
13から読出され、乗算器11、.11.、−・・・・
−・、11nでは入力されたノンユニフォーム・Bスプ
ライン関数のそれぞれの制御点の座標値にこの係数を乗
算し、これらの乗算器で得られた値を加算器12で加算
することによってパイプエル関数の制御点の座標を求め
、パイプエル関数による曲線生成器2においてはこの制
御点の座標を用いて所要の曲線の点列の座標を出力する
。
換係数テーブル13に供給されると、生成されるパイプ
エル関数の制御点の数に等しい数の係数がこのテーブル
13から読出され、乗算器11、.11.、−・・・・
−・、11nでは入力されたノンユニフォーム・Bスプ
ライン関数のそれぞれの制御点の座標値にこの係数を乗
算し、これらの乗算器で得られた値を加算器12で加算
することによってパイプエル関数の制御点の座標を求め
、パイプエル関数による曲線生成器2においてはこの制
御点の座標を用いて所要の曲線の点列の座標を出力する
。
第7図はノンユニフォーム・Bスプライン関数による制
御点の最大数がQ、〜Qllの8つの場合のデータ変換
器のハードウェア構成の例を示すもので、ノットベクト
ルのコードによって指定された変換係数テーブルからパ
イプエル関数における最初の制御点座標Ql ’を得る
ための変換係数を読出し、入力されたノンユニフォーム
・Bスプライン関数の制御点Q1〜Qn (n<8)の
値とそれぞれの乗算器において乗算を行い、得られた値
を3段に構成された加算器によって加算することによっ
て、上記パイプエル関数における最初の制御点の座標Q
l ’を出力させる。
御点の最大数がQ、〜Qllの8つの場合のデータ変換
器のハードウェア構成の例を示すもので、ノットベクト
ルのコードによって指定された変換係数テーブルからパ
イプエル関数における最初の制御点座標Ql ’を得る
ための変換係数を読出し、入力されたノンユニフォーム
・Bスプライン関数の制御点Q1〜Qn (n<8)の
値とそれぞれの乗算器において乗算を行い、得られた値
を3段に構成された加算器によって加算することによっ
て、上記パイプエル関数における最初の制御点の座標Q
l ’を出力させる。
続いてパイプエル関数における第2番目の制御点の座標
Qt′を得るための変換係数を上記同様に変換係数テー
ブルから読出すが、乗算器において上記の最初の制御点
座標Ql ’を得るための乗算を行っている期間中にこ
の変換係数の読出しを行う前述のパイプライン処理を実
行させることによって、処理に要する時間をさらに短縮
することができる。
Qt′を得るための変換係数を上記同様に変換係数テー
ブルから読出すが、乗算器において上記の最初の制御点
座標Ql ’を得るための乗算を行っている期間中にこ
の変換係数の読出しを行う前述のパイプライン処理を実
行させることによって、処理に要する時間をさらに短縮
することができる。
そして、このような変換係数テーブルからの読出し、乗
算器による乗算と加算器による加算を繰返えすことによ
ってノンユニフォーム・Bスプライン関数における制御
点のすべての座標をパイプエル関数におけるすべての制
御点座標にそれぞれ変換することができる。
算器による乗算と加算器による加算を繰返えすことによ
ってノンユニフォーム・Bスプライン関数における制御
点のすべての座標をパイプエル関数におけるすべての制
御点座標にそれぞれ変換することができる。
したがって、ノンユニフォーム・Bスプライン関数の制
御点として与えられた座標がアウトラインフォントを表
すものであれば、上記のように変換された座標を用いた
パイプエル関数による演算によってこのアウトラインフ
ォントのアウトラインを再現することができるので、こ
のアウトラインの内部を塗りつぶすことによって所要の
フォントが生成される。
御点として与えられた座標がアウトラインフォントを表
すものであれば、上記のように変換された座標を用いた
パイプエル関数による演算によってこのアウトラインフ
ォントのアウトラインを再現することができるので、こ
のアウトラインの内部を塗りつぶすことによって所要の
フォントが生成される。
なお、この塗りつぶしは公知のように、例えば、得られ
たアウトラインと走査線との最初の交点などの奇数回目
の交点を開始点として塗りつぶしを開始し、次の偶数回
目のアウトラインと走査線との交点を塗りつぶしの終了
点として実行することができる。
たアウトラインと走査線との最初の交点などの奇数回目
の交点を開始点として塗りつぶしを開始し、次の偶数回
目のアウトラインと走査線との交点を塗りつぶしの終了
点として実行することができる。
本発明によれば、ノンユニフォーム・Bスプライン関数
の制御点のパイプエル関数の制御点への変換を変換係数
テーブルを使用することによって乗算と加算とを行うだ
けで実行し得るので、繰返えし演算が必要であった従来
の処理に比してその処理時間を著しく短縮することがで
きる。
の制御点のパイプエル関数の制御点への変換を変換係数
テーブルを使用することによって乗算と加算とを行うだ
けで実行し得るので、繰返えし演算が必要であった従来
の処理に比してその処理時間を著しく短縮することがで
きる。
また、変換係数テーブルの参照と乗算・加算とはパイプ
ライン処理として実行できるので、さらに高速化を図る
ことができるという格別の効果が達成される。
ライン処理として実行できるので、さらに高速化を図る
ことができるという格別の効果が達成される。
第1図は本発明の原理を示すブロック図、第2図はノン
ユニフォーム・Bスプライン関数とパイプエル関数にお
ける曲線生成の例を示す図、 第3図は変換係数テーブルの例を示す図、第4図は変換
演算を説明するための図、第5図は本発明の実施例を示
すブロック図、第6図はノンユニフォーム・Bスプライ
ン関数における制御点の追加と移動について説明するた
めの図、 第7図はデータ変換器をハードウェア構成とした例を示
す図である。 手続補正書(自発) 平成 2年12月 7日
ユニフォーム・Bスプライン関数とパイプエル関数にお
ける曲線生成の例を示す図、 第3図は変換係数テーブルの例を示す図、第4図は変換
演算を説明するための図、第5図は本発明の実施例を示
すブロック図、第6図はノンユニフォーム・Bスプライ
ン関数における制御点の追加と移動について説明するた
めの図、 第7図はデータ変換器をハードウェア構成とした例を示
す図である。 手続補正書(自発) 平成 2年12月 7日
Claims (1)
- 【特許請求の範囲】 ノンユニフォーム・Bスプライン関数における制御点の
座標をベイツエル関数における制御点の座標に変換する
変換係数を格納した変換テーブルと、この変換テーブル
から得られた変換係数と入力曲線データとの積和演算を
行う積和演算器とからなるデータ変換手段を備え、 このデータ変換手段によってノンユニフォーム・Bスプ
ライン関数で表現された入力曲線データをベイツエル関
数のデータに変換し、得られたベイツエル関数のデータ
を用いてベイツエル関数生成器によって曲線を生成する
ようにしたことを特徴とする曲線生成方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP33639089A JPH03198169A (ja) | 1989-12-27 | 1989-12-27 | 曲線発生方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP33639089A JPH03198169A (ja) | 1989-12-27 | 1989-12-27 | 曲線発生方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH03198169A true JPH03198169A (ja) | 1991-08-29 |
Family
ID=18298641
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP33639089A Pending JPH03198169A (ja) | 1989-12-27 | 1989-12-27 | 曲線発生方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH03198169A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20020058608A (ko) * | 2000-12-30 | 2002-07-12 | 오길록 | 컴퓨팅 장치에서 두 개의 비-스플라인 곡선이나 곡면의경계가 연속성을 갖도록 하기 위한 대수적 블렌딩 처리방법 |
-
1989
- 1989-12-27 JP JP33639089A patent/JPH03198169A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20020058608A (ko) * | 2000-12-30 | 2002-07-12 | 오길록 | 컴퓨팅 장치에서 두 개의 비-스플라인 곡선이나 곡면의경계가 연속성을 갖도록 하기 위한 대수적 블렌딩 처리방법 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2501580B2 (ja) | 曲線イメ−ジの可視表示発生装置 | |
KR100657775B1 (ko) | 컴퓨터 그래픽 애니메이션 방법 및 장치 | |
US5317682A (en) | Parametric curve evaluation method and apparatus for a computer graphics display system | |
KR19980079671A (ko) | 그래픽 데이터 계산 수행 방법 및 그에 이용되는 데이터 프로세서 | |
JPH09167255A (ja) | バンプマッピングとポンシェーディングを選択的に行う実時間レンダリング方法及び装置 | |
JPS6367680A (ja) | 曲面加工方法 | |
CN108830000B (zh) | 一种基于vtk的运载火箭结构有限元分析可视化方法 | |
JPH11345344A (ja) | 3次曲線を与える方法及び装置 | |
Pulleyblank et al. | The Feasibility of a VLSI Chip for Ray Tracing Bicublic Patches | |
JPH08329261A (ja) | パラメータ曲線発生器 | |
JPH03198169A (ja) | 曲線発生方式 | |
JP2677273B2 (ja) | 3次ベジェ曲線の折線近似装置 | |
JPH10111791A (ja) | 除算装置 | |
JP2001067491A (ja) | 再分割多角形を用いる画像表示方法及び装置 | |
JP3059739B2 (ja) | 曲線描画機能を備えた情報処理装置および処理方法 | |
JP2538645B2 (ja) | 曲線の折線近似装置 | |
JPH11185052A (ja) | 3次元コンピュータグラフィックスのテクスチャマッピング座標計算装置および方法 | |
Hua et al. | Dynamic implicit solids with constraints for haptic sculpting | |
Nuntawisuttiwong et al. | Fast and efficient algorithms for evaluating uniform and nonuniform Lagrange and Newton curves | |
JP3511301B2 (ja) | 曲面データ生成方法 | |
Wong et al. | Virtual 3D sculpturing with a parametric hand surface | |
JPH0766451B2 (ja) | コンピュータ・グラフィック装置 | |
Benoit | A minimum-energy quadratic curve through three points and corresponding cubic Hermite spline | |
JP2003099419A (ja) | 高速補間演算器 | |
DeRose | Technical Report 87-08-07 August 1987 |