JP3113314B2 - 自由曲面の生成方式 - Google Patents

自由曲面の生成方式

Info

Publication number
JP3113314B2
JP3113314B2 JP03146817A JP14681791A JP3113314B2 JP 3113314 B2 JP3113314 B2 JP 3113314B2 JP 03146817 A JP03146817 A JP 03146817A JP 14681791 A JP14681791 A JP 14681791A JP 3113314 B2 JP3113314 B2 JP 3113314B2
Authority
JP
Japan
Prior art keywords
boundary
curve
derivative
equation
patch
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP03146817A
Other languages
English (en)
Other versions
JPH04344984A (ja
Inventor
晃市 今野
禎二 高村
弘明 千代倉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co 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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP03146817A priority Critical patent/JP3113314B2/ja
Publication of JPH04344984A publication Critical patent/JPH04344984A/ja
Application granted granted Critical
Publication of JP3113314B2 publication Critical patent/JP3113314B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Processing Or Creating Images (AREA)

Description

【発明の詳細な説明】
【0001】
【技術分野】本発明は、自由曲線の生成方式に関し、よ
り詳細には、三次元立体形状処理装置における形状生成
方式に関する。例えば、曲線メッシュで定義される立体
形状での自由曲面生成方式に適用されるものである。
【0002】
【従来技術】三次元CADを使って、複雑な自由曲面形
状を定義する一つの方法として、曲面形状の輪郭を表す
境界曲面を入力し、その後、境界曲線で囲まれた領域を
自由曲面で内挿する方法がある。この境界曲線によって
定義されたメッシュを曲線メッシュと呼ぶ。この方法で
は、生成する自由曲面は、パッチと呼ばれる微小面から
成る。滑らかな曲面形状を生成するために、隣接するパ
ッチ同士はG1またはG2レベルでの連続性を保つことが
重要である。また、家電、自動車などの複雑な曲面形状
を持った製品では、円錐曲線のような有理曲線によって
曲面の境界曲線を定義しているものも多い。これらの曲
線形状を自由曲面で内挿するためには、曲面の表現式と
して有理式を許したものが必要である。現在、自由曲面
形状を定義するために使われているCADの多くは、G
1連続性を保証しているものが多い。しかし、G1連続な
自由曲面では、曲面上の映り込みや、ハイライトが滑ら
かでない。そこで、より高品位な自由曲面を生成するた
めには、さらにG2レベルでの連続性が必要であるが、
これを取り入れているCADは少ない。
【0003】曲面形状の品質だけではなく、形状変形の
容易さも重大な問題である。曲線メッシュを自由曲面で
内挿する場合には、境界曲線の情報のみから曲面は生成
される。このような内挿方法では、境界曲線を変形する
ことで曲面形状が変形される。曲面形状を入力する場合
に、境界曲線のみを考慮すればよいので、効果的な入力
方法ではあるが、曲面形状を微妙に変形するためには、
このような変形方法だけでは不十分である。
【0004】従来技術としては、境界曲線上の任意の点
における境界横断導関数(Cross Boundary Derivativ
e)を指定し、曲線メッシュをGregoryパッチで内挿する
手法が提案されている。この方法は、曲面形状の微妙な
変形に有効である。しかし、これは、多項式曲線のみで
有理曲線を許していない。以下、境界横断導関数をCB
Dと呼ぶことにする。また、高品位な曲面を生成するた
めの技術として、G2連続なBezierパッチを生成する方
法が提案されている。この方法では、隣接する二枚のBe
zierパッチをG2連続に接続することができる。しかし
一般に、ある曲線メッシュの節点には、4枚の以上の隣
接するパッチがあり、Bezierパッチを用いてG2連続な
自由曲面を生成することは困難である。一方、上記の方
法をGregoryパッチに適用し、Gregoryパッチを用いてG
2連続な自由曲面を生成する方法も提案されている。Gre
goryパッチは、各パラメーター方向で微分ベクトルを独
立に定義できるので、Bezierパッチのように接続は困難
ではない。しかし、この方法は、境界曲線におけるCB
Dや曲率を線形に補間するので、意図した形状が生成で
きるとは限らない。
【0005】従来技術として、Gregoryパッチの境界上
の任意の点におけるCBDを指定し、それを考慮した曲
面内挿方法が提案されている。また、二枚の隣接するBe
zierパッチをG2連続に接続する方法がある。Bezierパ
ッチは、各パラメーター方向の微分ベクトルを独立に定
義できないので、一つの方向でパッチを接続すると他方
向の接続が困難である。一般に、曲線メッシュ上にパッ
チを内挿する場合には、各パラメーター方向に隣接する
パッチが存在するので、BezierパッチでG2連続な自由
曲面を生成することは困難である。一方、Gregoryパッ
チは、各パラメータ方向の微分ベクトルを独立に定義で
きるので、このような問題は起きない。しかし、従来技
術では、境界曲線の端点におけるCBDや曲率ベクトル
を線形に補間しパッチを生成するので、微妙な形状変形
が困難である。
【0006】
【目的】本発明は、上述のごとき実情に鑑みてなされた
もので、境界曲線に有理曲線を許した有理境界Gregory
パッチに対して、各境界曲線上の任意の点におけるCB
Dを指定し、それを考慮した曲面内挿方法を実現するこ
と、また、Gregoryパッチの特徴を生かし、かつ、各境
界曲線で、G2連続な自由曲面を生成する方法におい
て、境界曲線上の任意の点におけるCBDや曲率ベクト
ルを指定すること、CBDや曲率ベクトルを動かすこと
によって、曲面形状の微妙な変更を可能にし、設計者の
意図した曲面形状を生成するようにした自由曲面の生成
方法を提供することを目的としてなされたものである。
【0007】
【構成】本発明は、上記目的を達成するために、(1)
有理曲線で境界を囲まれた領域に対して、境界曲線と各
境界曲線につながる曲線から境界での連続性を判定する
判定手段と、該判定手段で求めた連続性から境界での接
続条件を求める接続条件決定手段と、各境界曲線上の任
意の点における境界横断導関数を指定する導関数指定手
段と、前記接続条件決定手段で求めた接続条件と前記導
関数指定手段で指定した境界横断導関数から領域を自由
曲面で内挿する内挿手段とから成ること、或いは、
(2)多項式曲線で囲まれた領域に対して、境界曲線と
各境界曲線につながる曲線から境界での連続性を判定す
る判定手段と、該判定手段で求めた連続性から境界での
接続条件を求める接続条件決定手段と、各境界曲線上の
任意の点における境界横断導関数を指定する導関数指定
手段と、該導関数指定手段で指定した点における曲率ベ
クトルを指定するベクトル指定手段と、前記接続条件決
定手段で求めた接続条件と前記導関数指定手段で指定し
た境界横断導関数と前記ベクトル指定手段で指定した曲
率ベクトルから領域を自由曲面で内挿する内挿手段とか
ら成ることを特徴としたものである。すなわち、次の
つの部分により実現される。面を構成する全ての境界
曲線の制御点と重みを記憶装置に蓄える。各境界曲線
の端点につながっている曲線のうちで、隣接する面を構
成している曲線を制御点と重みを記憶装置に蓄える。
各境界曲線上の任意の点におけるCBDと曲率ベクトル
を記憶装置に蓄える。各境界曲線が有理曲線かどうか
を判定する。多項式曲線ならば、以下のに進み、有理
曲線ならば、次のに進む。前記,で蓄えられた
曲線の制御点と重みを使って、境界曲線をはさんだ隣接
面とのG1連続性を判定し、以下のに進む。前記
,で蓄えられた曲線の制御点を使って、境界曲線を
はさんだ隣接面とのG2連続性を判定する。前記ま
たは前記での判定結果を基に、その境界での接続条件
を記憶装置に蓄える。前記で記憶した接続条件と前
記で記憶したCBDと曲率ベクトルから内部制御点を
計算する。以下、本発明の実施例に基づいて説明する。
【0008】図1は、本発明による自由曲面の生成方式
の一実施例を説明するための構成図で、図中、1は判定
手段、2は接続条件決定手段、3は導関数指定手段、4
は自由曲面の内挿手段である。有理曲線で境界を囲まれ
た領域に対して次の手段を実行する。判定手段1は、境
界曲線と各境界曲線につながる曲線から境界での連続性
(G1連続)を判定する。接続条件決定手段2は前記判
定手段1で求めた連続性から境界での接続条件を求め
る。導関数指定手段3は各境界曲線上の任意の点におけ
る境界横断導関数を指定する。自由曲線の内挿手段4は
前記接続条件決定手段2で求めた接続条件と前記導関数
指定手段3で指定した境界横断導関数から領域を自由曲
面で内挿する。
【0009】図2は、本発明による自由曲面の生成方式
の他の実施例を説明するための構成図で、図中、11は
判定手段、12は接続条件決定手段、13は導関数指定
手段、14は曲率ベクトル指定手段、15は自由曲面の
内挿手段である。多項式曲線で囲まれた領域に対して次
の手段を実行する。判定手段11は、境界曲線と各境界
曲線につながら曲線から境界での連続性(G2連続)を
判定する。接続条件決定手段12は前記判定手段11で
求めた連続性から境界での接続条件を求める。導関数指
定手段13は、各境界曲線上の任意の点における境界横
断導関数を指定する。曲率ベクトル指定手段14は前記
導関数指定手段13で指定した点における曲率ベクトル
を指定する。自由曲面の内挿手段15は前記接続条件決
定手段12で求めた接続条件と前記導関数指定手段13
で指定して境界横断導関数と前記曲率ベクトル指定手段
14で指定した曲率ベクトルから領域を自由曲面で内挿
する。
【0010】図3は、本発明による自由曲面の生成方式
を説明するためのフローチャートである。以下、各ステ
ップに従って順に説明する。step1 :各境界曲線の制御点と重みを記憶装置に蓄え
る。step2 :境界曲線につながる曲線の制御点と重みを記憶
装置に蓄える。step3 :CBDと曲率ベクトルを記憶装置に蓄える。step4 :有理曲線かどうかを調べる。有理曲線であれ
ば、後述するstep6へ行く。step5 :前記step4において、有理曲線でなければ、次
に、G2連続かどうかを調べる。G2連続でなければ終了
する。step6 :前記step4において、有理曲線であれば、有理
境界Gregoryパッチの制御点を計算する。step7 :前記step5において、G2連続であれば、G2
続なGregoryパッチ(G2regoryパッチ)の制御点を計
算する。
【0011】まず、Gregoryパッチの特徴を生かし、か
つ各境界曲線で、G2連続な自由曲面を生成する方式に
ついて説明する(請求項2)。以下、G2連続なGregory
パッチについて説明する。ここでは、このパッチ式をG
2regoryパッチと呼ぶことにする。なお、以下の説明に
おいて記号化された表現は、表1に示すとおりの関係を
有するものとする。
【0012】
【表1】
【0013】双n次のG2regoryパッチ表現式は次のよ
うになる。図4では、双六次のG2regoryパッチを示
す。
【0014】
【数1】
【0015】ただし、i=1,2;j=1,2のとき、
【0016】
【数2】
【0017】i=1,2;j=n−1,n−2のとき、
【0018】
【数3】
【0019】i=n−1,n−2;j=1,2のとき、
【0020】
【数4】
【0021】i=n−1,n−2;j=n−1,n−2の
とき、
【0022】
【数5】
【0023】i≠1,2,n−1,n−2;j≠1,
2,n−1,n−2のとき、 Qij(u,v)=Pij である。また、B〔n,i〕(u),B〔n,j〕(v)は、
Bernstein多項式で、次のように表される。
【0024】
【数6】
【0025】共通の境界曲線を持つ二つのパッチS
〔a〕(u,v),S〔b〕(u,v)があるときに、この二
つのパッチがG2連続になるためには、まず境界曲線で
1連続でなければならない。二つのパッチがG1連続に
なるための関係式を示す。
【0026】
【数7】
【0027】式(3)は、CBDが境界曲線上のすべて
の点で、同一直線上にあることを示している。更に、G
2連続の条件は、
【0028】
【数8】
【0029】となる。ただし、k(v),l(v)はスカラ
ー関数であるとする。次に、G2regoryパッチ間の接続
について説明する。式(1)で示されるパッチ式に対し
て、式(3),式(4)を適用する。まず、式(1)の
境界上の点に対して、境界を横切る方向に微分したもの
は、境界曲線を表す制御点と、それにつながっている制
御点との関係から導くことができる。図5は、境界曲線
につながる制御点間ベクトルを表している。境界曲線上
の制御点とその一つ内側の点の間に定義されるベクトル
をai,bi(i=0,…,n)、さらに内側の点とつなが
っている点の間に定義されるベクトルをci,di(i=
0,…,n)とする。ここで、端点V0,V1に対して、式
(3)と式(4)を適用する。
【0030】 b0=k00 (5) bn=k2n (6) d0−b0=(k0)2(a0−c0)+l00 (7) dn−bn=(k2)2(an−cn)+l2n (8) となる。ただし、k0,k2,l0,l2は、実数とする。ま
た、図6のように、境界曲線上の任意の点(パラメータ
値v0)における。CBD、二次微分ベクトルをそれぞ
れ、T0,T1,C0,C1とすれば、式(3),式(4)
から T1=k(v0)T0 (9) C1=k(v0)20+l(v0)T0 (10) が成り立つ。
【0031】ここで、式(5)から式(10)までを満
たすために、スカラー関数k(v),h(v)は、次のよう
な式で表される。 k(v)=k0(1−v)2+2k1(1−v)v+k22 (11) l(v)=l0(1−v)2+2l1(1−v)v+l22 (12) ただし、k0,k1,k2,l0,l1,l2は、実数とす
る。係数k0,k2,l0,l2は、式(5)から式(8)
によって決定される。また、係数k1,l1は、式(9)
と式(10)から求めたk(v0),l(v0)から、次式の
ように求められる。
【0032】
【数9】
【0033】ここで、式(3)と式(4)の次数につい
て考えてみる。たとえば、境界曲線が三次のBezier曲線
でパッチS〔a〕が三次であるとすれば、境界を横切る
方向の一次微分と二次微分はともに三次の関数として表
される。式(3)においては、左辺の次数は三次で、右辺
の次数は五次になっている。ここでは、パッチS〔a〕
にパッチS〔b〕を接続するので、このままでは、三次
のパッチS〔a〕にパッチS〔b〕を接続する場合に
は、五次のパッチを生成することになる。このことは、
パッチを内挿する場合の対称性がないことを意味してい
る。よって、∂S〔a〕/∂uが、二次式で表すことが
できるという拘束条件をつける。このことから、境界曲
線が三次のBezier曲線のときには、左辺の次数はいつも
四次になる。式(4)においても、∂2S〔a〕/∂u2
が二次式で表すことができる、という拘束条件をつける
と、左辺は六次の式になる。これらの関係を総合する
と、境界曲線が三次のBezier曲線であるときに、二つの
式の最大次数が六次であるので、境界を横切る一次微分
と二次微分が二次の式で表すことができる。という拘束
を付けることによって、六次のG2regoryパッチが生成
されることになる。一般には、境界曲線がm次の場合に
はm+3次のパッチが生成される。それでは、パッチの
接続式を求める。ここでは、生成されるパッチの次数を
n次とする。最初に、式(3)からbiを求める。ここ
での拘束条件は、一次微分∂S〔a〕/∂uがn−2次
で表現できることである。よって、
【0034】
【数10】
【0035】が成り立つ。従って制御点は次の式から計
算できる。
【0036】
【数11】
【0037】次に、式(4)からdiを求める。ここで
の拘束条件は、二次微分∂2S〔a〕/∂u2がn−4次
で表現できることである。ここで、 Ai=ai−ci i=di−bi (i=0,…,n)とおくと、
【0038】
【数12】
【0039】が成り立つ。従って、制御点は、次の式か
ら計算できる。
【0040】
【数13】
【0041】
【数14】
【0042】以上の式からBiが求まり、その結果di
求めることができる。次に、基礎パッチ法による接続に
ついて説明する。前述では、隣合う二枚のパッチ間のG
2レベルの接続式を示した。しかし、曲線メッシュを自
由曲面で内挿する場合には、境界曲線の情報のみが存在
するだけで、図5に示されるような制御点間ベクトルa
i(i=1,…,n−1)は、存在しない。そこで、こ
のような場合には、なんらかの方法で、これらのベクト
ルを設定しなければならない。我々は、基礎パッチ法に
よって、これらのベクトルを設定している。基礎パッチ
法では、二枚のパッチを接続する場合に、その境界曲線
上に仮想的なCBD、二次微分ベクトルを設定し、それ
を使って各パッチの制御点を決定する。二つのパッチ間
で同じCBD、二次微分ベクトルを設定しそれぞれのパ
ッチの制御点を求めることによって、G2連続にパッチ
を接続できる。境界曲線上の任意の点における曲率ベク
トルを指定した場合には、これを二次微分ベクトルに変
換したものを使えばよい。以下に、メッシュを内挿する
場合のCBD、二次微分ベクトルの決め方を示す。 1.CBDの決定 図7は、二枚のパッチS〔a〕,S〔b〕の境界曲線の
端点とそれにつながる制御点間ベクトルを表している。
ここで、CBDの最低次数を二次と仮定すると、
【0043】
【数15】
【0044】で表される。ただし、B〔2,i〕(v)
は、式(2)で示されるBernstein多項式である。ここ
で、端点V0,V1におけるCBDを
【0045】
【数16】
【0046】とし、さらに図6で示されるベクトル
0,T1から、
【0047】
【数17】
【0048】を設定する。これは、二次であるので、パ
ッチを生成するときにn−2次の式に次数を上げる。 2.二次微分ベクトルの決定 式(7)と式(8)から、境界曲線につながる曲線同士
がG2連続であることがわかる。ここで、二次微分ベク
トルを表す関数の最低次数を二次と仮定すると、
【0049】
【数18】
【0050】で表される。ただし、B〔2,i〕(v)
は、式(2)で示されるBernstein多項式である。図8
は、境界曲線の端点につながる曲線を表している。各曲
線の制御点間ベクトルをp,q,r,sとすれば、曲線の
法曲率の方向Nは、 N=(p×(p−r))×p で表される。そこで、Nを単位ベクトルとすれば、始点
側では、
【0051】
【数19】
【0052】とかける。同様に、A1とA2も計算でき
る。これは、二次であるので、パッチを生成するときに
n−4次の式に次数を上げる。このようにして、仮想的
にCBD、二次微分ベクトルを決めた後で、式(9)と
式(10)を次のように置き換える。
【0053】
【数20】
【0054】以上のことから、式(16)から式(2
6)までの式を使って、制御点を生成することができ
る。図9に双三次のBezier曲線を境界とした双六次のG
2regoryパッチを生成した例を示す。
【0055】次に、有理境界Gregoryパッチによる内挿
について説明する。すなわち、境界曲線が有理曲線の場
合の内挿について説明する(請求項1)。双n次の次の
有理境界Gregoryパッチの表現式は次のようになる。図
10では、双三次の有理境界Gergoryパッチを示す。
【0056】
【数21】
【0057】ただし、・i=0,1;j=0,1のとき
【0058】
【数22】
【0059】・i=0,1;j=n−1,nのとき
【0060】
【数23】
【0061】・i=n−1,n;j=0,1のとき
【0062】
【数24】
【0063】・i=n−1,n;j=n−1,nのとき
【0064】
【数25】
【0065】・その他の点 Qij(u,v)=Pij0=Pij1 ij(u,v)=wij0=wij1 となる。またB〔n,j〕(u),B〔n,j〕(v)は式
(2)で示されるBernstein多項式である。図10から
も分かるように、端点とそれにつながっている制御点
は、座標値が同じで重みが異なっている。たとえば、u
=0をあらわす境界上では、 w001=w101 011=w111 021=w121 031=w131 が成り立つ。次に、G1連続の判定について説明する。
一般に、共通の境界曲線を持つ二つのパッチS〔a〕
(u,v),S〔b〕(u,v)があるときに、この二つのパ
ッチがG1連続になるためには、
【0066】
【数26】
【0067】を満たさなければならない。ただし、境界
曲線の端点でのCBDが一直線上にあるときには、式
(3)でよい。次に有理境界Gregoryパッチ間の接続に
ついて説明する。式(35)で示されるパッチ式に対し
て、式(36)または式(3)を適用する。まず、式
(35)の境界上の点に対して、各パラメタ方向に微分
したものは、境界曲線を表す制御点と重みと、それにつ
ながっている制御点と重みとの関係から導くことができ
る。図11は、境界曲線につながる制御点間ベクトルを
表している。境界曲線上の制御点とその一つ内側の点の
間に定義されるベクトルをai,bi(i=0,…,n)
とする。同様に、境界曲線の制御点間をつないだベクト
ルをci(i=0,…,n−1)とする。ここで、境界
曲線が有理Bezier曲線のときの二つのケースでの接続に
ついて説明する。
【0068】1.境界上の端点でのCBDが一直線のと
き 二枚のパッチを接続するための条件式は、式(3)であ
る。まず、端点V0,V1に対して、式(3)を適用す
る。 b0=k00 (37) bn=k2n (38) となる。ただし、k0,k2は、実数とする。また、図1
2のように、境界曲線上の任意の点(パラメータ値
0)における、CBDをそれぞれ、T0,T1とすれ
ば、式(3)から、 T1=k(v0)T0 (39) が成り立つ。
【0069】ここで、式(37)から式(39)までを
満たすために、スカラー関数k(v)は式(11)で表さ
れる。係数k0,k2は式(37)と式(38)から決定
される。また、係数k1は式(13)と同様の方法で求
めることができる。ここで、式(3)の次数について考
えてみる。たとえば、境界曲線が三次の有理Bezier曲線
でパッチS〔a〕にパッチS〔b〕を接続するので、こ
のままでは、三次パッチにパッチS〔b〕を接続する場
合には、五次のパッチを生成することになる。このこと
は、パッチを内挿する場合の対称性がないことを意味し
ている。よって、∂S〔a〕/∂uが、二次式で表すこ
とができるという拘束条件をつける。このことから、境
界曲線がm次の場合にはm+1次のパッチが生成され
る。いま、生成されるパッチの次数をn次とする。ここ
での拘束条件は、一次微分∂S〔a〕/∂uがn−2次
で表現できることである。よって、
【0070】
【数27】
【0071】が成り立つ、従って、制御点は、次の式か
ら計算できる。
【0072】
【数28】
【0073】2.境界上の端点でのCBDがななめの場
合 二枚のパッチを接続するための条件式は、式(36)で
ある。まず、端点V01に対して、式(36)を適用す
る。以下では、境界曲線が二次の有理Bezier曲線の場合
について説明する。まず、接続式(36)は、次のよう
に書くことができる。
【0074】
【数29】
【0075】ただし、 d0=w01(P1−P0) d1=(w01(P1−P0)+w02(P2−P0))/3 d2=(w02(P2−P0)+w12(P2−P1))/3 d3=w12(P2−P1) である。図13で示すように、P0,P1,P2は境界曲
線の制御点で、w0,w1,w2はその重みであり、w
〔b,i〕はbiに対応する重みである。ここで、k
(v)は、式(11)によって表わされる。また、h(v)
は、
【0076】
【数30】
【0077】のように設定する。ここで、境界曲線の端
点では、 b0=k00+h00 (45) bn=k22+h22 (46) となる。ただし、k0,k2,h0,h2は、実数とする。
また、図12のように、境界曲線上の任意の点(パラメ
ーター値v0)におけるCBDをそれぞれ、T0,T1
し、境界曲線に沿った方向のパラメーター値v0での微
分ベクトルをT2とすれば、式(36)から、 T1=k(v0)T0+h(v0)T2 (47) が成り立つ。係数k0,k2,h0,h2は、式(45)と
式(46)から決定される。また、係数k1,h1は、式
(47)から求たk(v0),h(v0)から次式のように求
められる。
【0078】
【数31】
【0079】ここで、式(36)の次数について考えて
みる。たとえば、境界曲線が二次の有理Bezier曲線でパ
ッチS〔a〕が三次であるとすれば、境界を横切る方向
の一次微分は三次の関数として表される。式(36)に
おいては、左辺の次数は三次で、右辺の次数は五次にな
っている。ここでは、パッチS〔a〕にパッチS〔b〕
を接続するので、このままでは、三次のパッチにパッチ
S〔b〕を接続する場合には、五次のパッチを生成する
ことになる。このことは、パッチを内挿する場合の対称
性がないことを意味している。よって、∂S〔a〕/∂
uが、二次式で表すことができるという拘束条件をつけ
る。しかし、h(v)の項は、五次なので、境界曲線が二
次の有理Bezier曲線のときには、五次の有理境界Gregor
yパッチが生成される。一般には、境界曲線がm次の場
合には2m+1次のパッチが生成される。いま、生成さ
れるパッチの次数をn次とする。ここでの拘束条件は、
一次微分∂S〔a〕/∂uがn−2次で表現できること
である。よって、
【0080】
【数32】
【0081】が成り立つ。従って、制御点は、次の式か
ら計算できる。
【0082】
【数33】
【0083】次に、基礎パッチ法による接続について説
明する。前述では、隣合う二枚のパッチ間のG1レベル
の接続式を示した。しかし、曲線メッシュを自由曲面で
内挿する場合には、境界曲線の情報のみが存在するだけ
で、図11に示されるような制御点間ベクトルai(i
=1,…,n−1)は、存在しない。そこで、このよう
な場合には、なんらかの方法で、これらのベクトルを設
定しなければならない。我々は、基礎パッチ法によっ
て、これらのベクトルを設定している。基礎パッチ法で
は、二枚のパッチを接続する場合に、その境界曲線上に
仮想的なCBDを設定し、それを使って各パッチの制御
点を決定する。二つのパッチ間で同じCBDを設定しそ
れぞれのパッチの制御点を求めることによって、G1
続にパッチを接続できる。以下に、メッシュを内挿する
場合のCBDの決め方を示す。 1.CBDの決定 図14は、二枚のパッチS〔a〕,S〔b〕の境界曲線
の端点における接ベクトルを表している。ここでCBD
の最低次数を二次と仮定すると、
【0084】
【数34】
【0085】で表される。ただし、B(2,i)(v)は、
式(2)で示されるBernstein多項式である。ここで、
端点V0,V1におけるCBDを
【0086】
【数35】
【0087】とし、さらに図12で示されるベクトルT
0,T1から、
【0088】
【数36】
【0089】が求められる。これは、二次であるので、
パッチを生成するときにn−2次の式に次数を上げる。
このようにして、仮想的にCBDを決めた後で、式(3
9)または式(47)を次の式で置き換える。
【0090】
【数37】
【0091】以上のことから、式(41)から式(4
3)または、式(52)から式(54)までの式を使っ
て、制御点を生成することができる。図15に有理Bezi
er曲線を境界とした双五次の有理境界Gregoryパッチを
生成した例を示す。
【0092】
【効果】以上の説明から明らかなように、本発明による
と、境界曲線が多項式曲線の場合には、境界曲線上の任
意の点におけるCBD、曲率ベクトルを指定し、それを
考慮してパッチを内挿する方法が実現できる。同様に、
境界曲線が有理曲線の場合にも、境界曲線上の任意の点
におけるCBDを指定することによって、それを考慮し
てパッチを内挿する方法も実現できる。これによって、
従来境界曲線のみによって曲面形状を変形していた方法
に加えて、より柔軟な形状変形が可能となった。
【図面の簡単な説明】
【図1】 本発明による自由曲面の生成方式の一実施例
を説明するための構成図である。
【図2】 本発明による自由曲面の生成方式の他の実施
例を説明するための構成図である。
【図3】 本発明による自由曲面の生成方式を説明する
ためのフローチャートである。
【図4】 G2regoryパッチの制御点を示す図である。
【図5】 G2regoryパッチの制御間ベクトルを示す図
である。
【図6】 境界上のベクトルを示す図である。
【図7】 CBDベクトルの決定を示す図である。
【図8】 曲率ベクトルの決定を示す図である。
【図9】 G2regoryパッチの生成例を示す図である。
【図10】 有理境界Gregoryパッチの制御点を示す図
である。
【図11】 有理境界Gregoryパッチの制御点間ベクト
ルを示す図である。
【図12】 境界上のベクトルを示す図である。
【図13】 有理二次曲線の制御点と重みを示す図であ
る。
【図14】 CBDベクトルを決定を示す図である。
【図15】 有理境界Gregoryパッチの生成例を示す図
である。
【符号の説明】
1…判定手段、2…接続条件決定手段、3…導関数指定
手段、4…自由曲面の内挿手段。
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 共立出版発行 鳥谷浩志ほか編著「3 次元CADの基礎と応用」76−81頁 「5.10 パッチ間の接続」 情報処理学会第40回全国大会講演論文 集 515−516頁 斉藤剛ほか「2次有理 Bezier曲面の接続」 (58)調査した分野(Int.Cl.7,DB名) G06F 17/50 622 G06T 17/40 JICSTファイル(JOIS)

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】 有理曲線で境界を囲まれた領域に対し
    て、境界曲線と各境界曲線につながる曲線から境界での
    連続性を判定する判定手段と、該判定手段で求めた連続
    性から境界での接続条件を求める接続条件決定手段と、
    各境界曲線上の任意の点における境界横断導関数を指定
    する導関数指定手段と、前記接続条件決定手段で求めた
    接続条件と前記導関数指定手段で指定した境界横断導関
    数から領域を自由曲面で内挿する内挿手段とから成るこ
    とを特徴とする自由曲面の生成方式。
  2. 【請求項2】 多項式曲線で囲まれた領域に対して、境
    界曲線と各境界曲線につながる曲線から境界での連続性
    を判定する判定手段と、該判定手段で求めた連続性から
    境界での接続条件を求める接続条件決定手段と、各境界
    曲線上の任意の点における境界横断導関数を指定する導
    関数指定手段と、該導関数指定手段で指定した点におけ
    る曲率ベクトルを指定するベクトル指定手段と、前記接
    続条件決定手段で求めた接続条件と前記導関数指定手段
    で指定した境界横断導関数と前記ベクトル指定手段で指
    定した曲率ベクトルから領域を自由曲面で内挿する内挿
    手段とから成ることを特徴とする自由曲面の生成方式。
JP03146817A 1991-05-22 1991-05-22 自由曲面の生成方式 Expired - Lifetime JP3113314B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP03146817A JP3113314B2 (ja) 1991-05-22 1991-05-22 自由曲面の生成方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP03146817A JP3113314B2 (ja) 1991-05-22 1991-05-22 自由曲面の生成方式

Publications (2)

Publication Number Publication Date
JPH04344984A JPH04344984A (ja) 1992-12-01
JP3113314B2 true JP3113314B2 (ja) 2000-11-27

Family

ID=15416204

Family Applications (1)

Application Number Title Priority Date Filing Date
JP03146817A Expired - Lifetime JP3113314B2 (ja) 1991-05-22 1991-05-22 自由曲面の生成方式

Country Status (1)

Country Link
JP (1) JP3113314B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4418349B2 (ja) * 2004-11-17 2010-02-17 三菱重工業株式会社 フィレット面作成方法及び3次元形状処理装置並びにフィレット面作成プログラム
JP6495728B2 (ja) * 2015-04-27 2019-04-03 日本ユニシス株式会社 形状変形装置および形状変形用プログラム
CN113419409B (zh) * 2021-07-16 2022-09-20 中国科学院长春光学精密机械与物理研究所 一种自由曲面控制的方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
共立出版発行 鳥谷浩志ほか編著「3次元CADの基礎と応用」76−81頁「5.10 パッチ間の接続」
情報処理学会第40回全国大会講演論文集 515−516頁 斉藤剛ほか「2次有理Bezier曲面の接続」

Also Published As

Publication number Publication date
JPH04344984A (ja) 1992-12-01

Similar Documents

Publication Publication Date Title
US5619625A (en) Method for interpolating smooth free-form surfaces into curve mesh including composite curves
Lavery Univariate cubic Lp splines and shape-preserving, multiscale interpolation by univariate cubic L1 splines
EP0285660B1 (en) Curve producing method
JPH07282117A (ja) 自由曲面生成方法及び自由曲面形状の制御方法
US5731816A (en) System and method for direct modeling of fillets and draft angles
JP3247631B2 (ja) 自由曲面の生成方法
JP3113314B2 (ja) 自由曲面の生成方式
Ye et al. Fairing of parametric cubic splines
US8055480B2 (en) Method for representing flexible elongate volume objects
JP3017322B2 (ja) 自由曲面の形状制御方式
JP2946506B2 (ja) 物体の表面形状データ作成方法
JP2737127B2 (ja) 物体の表面形状データ作成方法
JPH0836653A (ja) 自由曲面生成方法及びその装置
JP2638851B2 (ja) 数値制御加工方法
Konno et al. A new control method for free-form surfaces with tangent continuity and its applications
JP3148792B2 (ja) 自由曲面生成方法及びその装置
JP3019283B2 (ja) 曲面の境界条件生成装置
JPH04279978A (ja) 自由曲面の形状制御方式
JPH10198812A (ja) 自由曲面の近似方法
JP2737132B2 (ja) 物体の表面形状データ作成方法
JPS6333167B2 (ja)
JP2875294B2 (ja) 自由曲面生成方式
JP2638852B2 (ja) フイレツト曲面の生成方法
JPH09147127A (ja) 自由曲線生成方法
JPH0721410A (ja) 自由曲面データ生成方法

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080922

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080922

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090922

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090922

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100922

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110922

Year of fee payment: 11

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110922

Year of fee payment: 11