JPH0327950B2 - - Google Patents

Info

Publication number
JPH0327950B2
JPH0327950B2 JP60277448A JP27744885A JPH0327950B2 JP H0327950 B2 JPH0327950 B2 JP H0327950B2 JP 60277448 A JP60277448 A JP 60277448A JP 27744885 A JP27744885 A JP 27744885A JP H0327950 B2 JPH0327950 B2 JP H0327950B2
Authority
JP
Japan
Prior art keywords
patches
patch
vectors
boundary
vector
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
Application number
JP60277448A
Other languages
English (en)
Other versions
JPS62135965A (ja
Inventor
Tetsuzo Kuragano
Atsushi Kikuchi
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.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP60277448A priority Critical patent/JPS62135965A/ja
Publication of JPS62135965A publication Critical patent/JPS62135965A/ja
Publication of JPH0327950B2 publication Critical patent/JPH0327950B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Numerical Control (AREA)

Description

【発明の詳細な説明】 以下の順序で本発明を説明する。
A 産業上の利用分野 B 発明の概要 C 従来の技術 D 発明が解決しようとする問題点 E 問題点を解決するための手段(第1図) F 作用(第1図) G 実施例(第1図〜第7図) H 発明の効果 A 産業上の利用分野 本発明は自由曲面作成方法に関し、例えば
CAD(computer aided design)、又はCAM
(computer aided manufacturing)において、
自由曲面をもつた形状を生成する場合に適用して
好適なものである。
B 発明の概要 本発明は、CAD、又はCAMなどにおける自由
曲面作成方法において、隣合う2つのパツチを、
1階級係数が共有境界において接平面連続の条件
をもつように内部の制御点を設定するようにした
ことにより、隣合う2つのパツチを滑らかな自由
曲面をもつように接続することができる。
C 従来の技術 例えばCADの手法を用いて、自由曲面をもつ
た物体の形状をデザインする場合、一般に、デザ
イナは曲面か通るべき3次元空間における複数の
点を指定し、当該指定された複数の点を結ぶ境界
曲線網を、所定の関数を用いてコンピユータによ
つて演算させることにより、いわゆるワイヤーフ
レームで表現された曲面を作成する。かくして境
界曲線によつて囲まれた多数の枠組み空間を形成
することができる(このような処理を以下枠組み
と呼ぶ)。
かかる枠組み処理によつて形成された境界曲線
網は、それ自体デザイナがデザインしようとする
大まかな形状を表しており、各枠組み空間を囲む
境界曲線を利用して所定の関数によつて表現でき
る曲面を補間演算することができれば、全体とし
てデザイナがデザインした自由曲面(2次関数で
規定できないものを言う)を生成することができ
る。ここで各枠組み空間に張られた曲面は全体の
曲面を構成する基本要素を形成し、これをパツチ
と呼ぶ。
従来この種のCADシステムにおいては、境界
曲線網を表現する数式として、計算が容易な例え
ばベジエ(Bezier)式、Bスプライン(B−
spline)式でなる3次のテンソルが使われてお
り、例えば形状的に特殊な特徴がないような自由
曲面を数式表現するには最適であると考えられて
いる。
D 発明が解決しようとする問題点 しかしこの従来の数式表現は、形状的に特徴が
ある曲面(例えば大きく歪んだ形状をもつ曲面)
に適用する場合には、パツチ相互間の接続方法に
困難があり、高度な数学的演算処理を実行する必
要があるため、コンピユータによる演算処理が複
雑かつ膨大になる問題がある。
本発明は以上の点を考慮してなされたもので、
テンソル積の数式表現が簡素である利点を生かす
ように、簡素な数式表現のまま隣接するパツチ相
互間を接平面連続の条件の下に簡易に接続するこ
とによつて、複雑な曲面を簡易な数式表現をもつ
補間演算式によつて演算し得るようにした自由曲
面作成方法を提案しようとするものである。
E 問題点を解決するための手段 かかる問題点を解決するため本発明において
は、枠組み処理によつて境界曲線で囲まれる多数
の枠組み空間を形成し、この枠組み空間に所定の
ベクトル関数で表されるパツチを張ることによ
り、自由曲面を生成するようになされた自由曲面
作成方法において、多数のパツチのうち、共有境
界COMにおいて隣合う第1及び第2のパツチ
S(u,v)1及びS(u,v)2を指定し、第1のパツチS(u,v)1
表わすベクトル関数の1階微係数でなり、当該第
1のパツチS(u,v)1の共有境界COMに沿う方向及び
横断する方向の2つのベクトルでなる第1の接線
ベクトル∂S1/∂u、∂S1/∂vを求め、第2のパツ
チS(u,v)2を表すベクトル関数の1階微係数でなり、
上記第2のパツチの共有境界COMに沿う方向及
び横断する方向の第2の接線ベクトル∂S2/∂u、
∂S2/∂vを求め、当該求められた第1及び第2の
接線ベクトル∂S1/∂u、∂S1/∂v及び∂S2/∂u、
∂S2/∂vについて、共有境界COMにおいて接平
面連続の条件が成り立つように第1及び第2のパ
ツチS(u,v)1及びS(u,v)2の内部に当該第1及び第2の
パツチS(u,v)1及びS(u,v)2の形状を変化させるための
制御点P(11)1,P(12)1及びP(11)2,P(12)2を決めるよ
うにする。
F 作用 第1及び第2のパツチS(u,v)1及びS(u,v)2の内部の
制御点P(11)1,P(12)1及びP(11)2,P(12)2の立体曲面
上の位置が、各パツチの1階微係数が共有境界
COMにおいて接平面連続の条件を満足するよう
な位置に設定される。
かくして2つのパツチS(u,v)1及びS(u,v)2の共有境
界COMにおける曲面は滑らかに接続されること
になる。
G 実施例 以下図面について、本発明の一実施例を詳述す
る。
(G1) パツチ接続の原理 この実施例において、枠組みされた境界曲線
及び枠組み空間に張られるパツチを次式のベク
トル関数S(u,v)、 S(u,v)=(1−u+uE)m・ (1−v+vF)nP(00) ……(1) で表される3次のベジエ式を用いて表現する。
ここでP(00)は、第1図に示すように、隣合う
枠組み空間に張られた曲面すなわち第1のパツ
チS(u,v)1及び第2のパツチS(u,v)2が共に保有して
いる境界(これを共有境界と呼ぶ)の一端の位
置を表す位置ベクトルでなり、(1)式は、位置ベ
クトルでなる制御点P(00)を基準にして、第1及
び第2のパツチS(u,v)1及びS(u,v)2上の自由曲面を
表現する。
また、(1)式においてE,Fはシフト演算子
で、パツチS(u,v)1及びS(u,v)2上の位置ベクトルで
表される制御点P(i,j)に対して次式、 E・P(i,j)=P(i+1,j) ……(2) F・P(i,j)=P(i,j+1) ……(3) の関係をもつ。
さらに(1)式において、u、vは0〜1の間の
値を変化するパラメータで、第1図に示すよう
に、第1及び第2のパツチS(u,v)1及びS(u,v)2に対
してそれぞれ制御点P(00)から横方向にu軸をと
り、かつ縦方向にv軸をとつた座標(u,v)
を用いてSパツチ(u,v)1及びS(u,v)2内の自由曲面
上の座標を表すことができる。
さらに(1)式においてm及びnは、ベジエ曲面
を、m次及びn次の演算式を用いて表現するこ
とを表している。第1図の場合m=3、n=3
に選定して3次のベジエ式を用いて自由曲面を
表現するようになされ、かくしてS(u,v)1は16個
の制御点、すなわちP(00)〜P(03),P(10)1〜P(13)1
P(20)1〜P(23)1,P(30)1〜P(33)1で表現されること
になる。また第2のパツチS(u,v)2も同様にして
16個の制御点P(00)〜P(03),P(10)2〜P(13)2,P(20)2
〜P(23)2,P(30)2〜P(33)2によつて表現することが
できる。
因に第1及び第2のパツチS(u,v)1及びS(u,v)2
は、制御点P(00)を基準にしてそれぞれシフト演
算子E、E2、E3及びF、F2、F3によつて表わ
される16個の制御点P(00)〜P(33)を用いて形状が
規定される。
すなわち、(1)式によつて表わされる3次のベ
ジエ式を展開すると、 S(u,v)=(1−u+uE)3・(1−v+vF)3P(00)=(
1−u)3(1−v)3P(00) +3(1−u)2uE(1−v)3P(00)+3(1−u)u
2E2(1−v)3P(00)+u3E3(1−v)3P(00) +(1−u)3・3(1−v)2vFP(00)+3(1−u
2uE・3(1−v)2vFP(00) +3(1−u)u2E2・3(1−v)2vFP(00)+u3E3
3(1−v)2vFP(00) +(1−u)3・3(1−v)v2F2P(00)+3(1−u
2uE・3(1−v)v2F2P(00) +3(1−u)u2E2・3(1−v)v2F2P(00)+u3E3
・3(1−v)2v2F2P(00)+(1−u)3・v3F3P(00) +3(1−u)2uE・v3F3P(00)+3(1−u)2u2E2
・v3F3P(00)+u3E3・v3F3P(00) =(1−u)3(1−v)3P(00)+3(1−u)2u(
1−v)3P(10)+3(1−u)u2(1−v)3P(20) +u3(1−v)3P(30)+(1−u)3・3(1−v)2
vP(01)+3(1−u)2u・3(1−v)2vP(11) +3(1−u)u2・3(1−v)2vP(21)+u3・3(
1−v)2vP(31)+(1−u)3・3(1−v)v2P(02) +3(1−u)2u・3(1−v)v2P(12)+3(1−
u)u2・3(1−v)v2P(22)+u3E3・3(1−v)
v2F2P(32) +(1−u)3・v3P(03)+3(1−u)2u.v3P(13)
3(1−u)2u2・v3P(23)u3・v3P(33)……(1X) のように、16個の制御点P(00)〜P(33)によつて表
すことができる。このことは第1及び第2のパ
ツチS(u,v)1及びS(u,v)2の曲面上の各点を当該16個
の制御点P(00)〜P(33)を表すベクトルの合成ベク
トルによつて表すことができることを意味し、
その結果制御点P(00)〜P(33)の位置の指定を変更
することにより第1及び第2のパツチS(u,v)1
びS(u,v)2の曲面の形状を制御できることを意味
している。
このような2つのパツチS(u,v)1及びS(u,v)2は、
デザイナによる枠組み処理によつて、作られた
境界曲線網上に張られており、この2つのパツ
チ間に共有境界COMをもつている。ここで、
各境界曲線に沿つて設定された制御点は、枠組
み処理時に各境界曲線を3次のベジエ式で表す
ために設定され、各境界曲線の両端間に4つの
制御点が指定されている。これに対して境界曲
線によつて囲まれた枠組み空間内部の制御点
は、当該枠組み空間に自由曲面を張るために3
次のベジエ式を用いて補間演算するために設定
される。かくして各枠組み空間の曲面は、16個
の制御点によつて表される。
ところで、枠組み処理によつて形成された境
界曲線網の多数の枠組み空間に、それぞれ別個
に自由曲面を張つてパツチを生成した場合、隣
合うパツチの共有境界における曲面は一般に滑
らかにはならない。そこでこの実施例において
は、2つのパツチS(u,v)1及びS(u,v)2を、共有境界
COMにおいて滑らかに接続するように、各パ
ツチの制御点を設定し直して、これらの制御点
を用いてパツチに張るべき自由曲面を補間演算
する。これにより、境界曲線網に枠組みされた
曲面全体に亘つて全てのパツチを滑らかに接続
して行くことができることにより、多くの物体
の外形形状を自然に表現できる。
この共有境界COMにおける接続は、接平面
連続の条件を満足するような制御辺ベクトル
a1,a2,c1,c2を求めて実現される。制御辺ベ
クトルa0,a1,a2,a3は制御点P(00),P(01)
P(02),P(03)から第1のパツチS(u,v)1の隣の制御
点P(10)1,P(11)1,P(12)1,P(13)1に向かうベクト
ルで表される。また、制御辺ベクトルc0,c1
c2,c3は、制御点P(00),P(01),P(02),P(03)から
第2のパツチS(u,v)2の隣の制御点P(10)2,P(11)2
P(12)2,P(13)2に向かうベクトルでなる。さらに
制御辺ベクトルb1,b2,b3は、制御点P(00)から
P(01)に向かうベクトル、制御点P(01)からP(02)
向かうベクトル、制御点P(02)からP(03)に向かう
ベクトルでなる。
a0,a3,b1,b2,b3,c0,c3は枠組として設
定されているため接平面連続条件を使つてa1
a2,c1,c2を求めることにより内部の制御点
P(11)1,P(12)1,P(11)2,P(12)2を求める。接平面
連続の条件は、共有境界COMの線上の各点に
ついて、第1のパツチS(u,v)1のu方向の接線ベ
クトルと、第2のパツチS(u,v)2のu方向の接線
ベクトルと、第2のパツチS(u,v)2のv方向を指
定する共有境界COMの接線ベクトルとが同一
平面上に存在することである。ここで接平面
は、共有境界の各点でのu方向及びv方向の接
線ベクトルによつて形成される平面を呼び、従
つて共有境界の各点においてパツチS(u,v)1及び
S(u,v)2の接平面が同一のとき、接平面連続の条
件が成り立つ。
すなわち、共有境界COM上の任意点P(0v)
ついての接平面連続の条件は、第2図に示すよ
うに決められる。すなわちパツチS(u,v)1につい
て、共有境界COMを横断する方向(すなわち
u方向)の接線ベクトルHa、及び共有境界
COMに沿う方向(すなわちv方向)の接線ベ
クトルHbの法線ベクトルn1は、 n1=Ha×Hb ……(4A) で表され、またパツチS(u,v)2について、共有境
界COMを横断する方向の接線ベクトルHc及び
共有境界COMに沿う方向の接線ベクトルHb
法線ベクトルn2は、 n2=Hc×Hb ……(4B) で表される。
このような条件の下に、接平面連続というた
めには、接線ベクトルHa,Hb及びHcが同一平
面上に存在しなければならず、その結果法線ベ
クトルn1及びn2は同一方向に向くことになる。
ここで、 Ha=∂S(u,v)1/∂u ……(4C) Hb=∂S(u,v)1/∂v ……(4D) Bc=∂S(u,v)2/∂u ……(4E) かかる接平面連続の条件を満足する数式を次
式 λ(v)・∂S(u,v)2/∂u =μ(v)・∂S(u,v)1/∂u+ν(v) ・∂S(u,v)1/∂v ……(6) で表す。(6)式において∂S(u,v)1/∂u及び
∂S(u,v)2/∂uは、それぞれ共有境界COM上の点
におけるパツチS(u,v)1及びS(u,v)2のu方向の接線
ベクトル(すなわち横断接線ベクトル)を表
し、(1)式を1階偏微分することにより、 ∂S(u,v)1/∂u=3(1−v+vF)3a0 ……(7) ∂S(u,v)2/∂u=3(1−v+vF)3c0 ……(8) になる。ただし、 aj=P(1j)1−P(0j) ……(9) (j=0、1、2、3) cj=P(1j)2−P(0j) ……(10) (j=0、1、2、3) である。
また∂S(u,v)1/∂vは、共有境界COM上のパツ
チS(u,v)1のv方向の接線ベクトルで、(1)式を1
階偏微分することにより、 ∂S(u,v)1/∂v=3(1−v+vF)2b1 ……(11) になる。ただし、 bj=P(0j)−P(0j-1) ……(12) (j=1、2、3) である。
また(6)式のスカラ関数λ(v)、μ(v)、ν
(v)として λ(v)=(1−v)+v ……(13) μ(v)=κ1(1−v)+κ2v ……(14) ν(v)=η1(1−V)2+(η1+η2) 〔(1−v)・v〕+η2v2 ……(15) に選定してこれを(6)式に代入する。
(13)式〜(15)式のスカラ関数λ(v)、μ
(v)、ν(v)は、数式の形として、(1−v)
の項及びvの項と、その積の項とをもち、μ
(v)及びν(v)には、未知数κ1、κ2及びη1
η2を含んでいる。かくして(13)式〜(15)式
を(6)式に代入して展開したとき、(6)式の右辺及
び左辺が共に、(1−v)4、v(1−v)3、v2
(1−v)2、v3(1−v)、v4の項の和の形に整
理できるようにする。かくして(6)式に対して、
(7)式、(8)式、(11)式と、(13)式、(14)式、
(15)式とを代入して整理した各項ごとに、係
数部が互いに等しくなるように未知数κ1、κ2
びη1、η2を選定すれば、結局共有境界COMに
おいて、接平面連続の条件を満足させることが
できるような制御辺ベクトルa1,a2,c1,c2
設定することができる。
実際上、(6)式の各項の係数部を互いに等しい
とおくと共に、(7)式、(8)式、(11)式に含まれ
ているFを(2)式の関係から消去すれば、それぞ
れ(1−v)4、v(1−v)3、v2(1−v)2、v3
(1−v)、v4の項の条件から c0=κ1a0+η1b1 ……(16) 3c1+c0=3κ1a1+κ2a0 +2η1b2+(η1+η2)b1 ……(17) 3c2+3c1=3κ1a2+3κ2a1+η1b3 +2(η1+η2)b2+η2b1 ……(18) c3+3c2=κ1a3+3κ2a2 +(η1+η2)b3+2η2b2 ……(19) c3=κ2a3+η2b3 ……(20) の関係式を得ることができる。
(16)式より未知数κ1、η1が決まり、(20)
式より未知数κ2,η2が決まり、(17)式〜(19)
式よりa1,a2,c1,c2を、決めることができ、
その結果(6)式に基づく接平面連続の条件を満足
させながら第1及び第2のパツチS(u,v)1及び
S(u,v)2を滑らかに接続することができる。
(G2) 1次元的な接続方法 このように(1)式で表されたベジエ曲面のう
ち、3次式の数式を用いて2つのパツチの共有
境界を連続的に接続することができるが、この
実施例においては、かかる数式表現によつて第
3図に示すように1方向(例えば横方向)に複
数のパツチ…SE1,SE2,SE3,SE4,SE
5…を順次接続して行くことによつて全体とし
て帯状に接続する自由曲面を生成して行く。
そのため、(16)式〜(20)式において、c0
c1,c2,c3を消去した後、次式 (κ1−κ2)(a0−3a1+3a2−a3)=0
……(21) で示すように、第1のパツチS(u,v)1側の制御辺
ベクトルa0〜a3のみで表される式を得る。
ここで、第2項を0とおけば、制御辺ベクト
ルa0〜a3について a0−3a1+3a2−a3=0 ……(22) の関係があれば接平面連続の条件式を満足する
ことが分かる。
ここで、(22)式の関係から、枠組みの際に
既知の制御辺ベクトルa0,a3を用いて制御辺ベ
クトルa1,a2を求めれば、接平面連続の条件式
を満足するパツチS(u,v)1の内部の制御点P(11)1
P(12)1を決めることができる。
別の方法として、制御辺ベクトルa0,a1
a2,a3をその変化率が一定になるように設定す
ると、制御辺ベクトルa0及びa2間にある制御辺
ベクトルa1は、 a1=a3+2a0/3 ……(23) のように表し得ると共に、制御辺ベクトルa1
びa3間にある制御辺ベクトルa2は、 a2=2a3+a0/3 ……(24) のように表し得る。そして(23)式及び(24)
式を(22)式に代入することにより、制御辺ベ
クトルa0,a1,a2,a3をその変化率が一定にな
るように設定すれば、(22)式の関係を満足さ
せることができることが分かる。
次に(16)式を(17)式に代入すると、次式 c1=κ1a1+κ1−κ2/3a0 +2η1/3b2+η2/3b1 ……(25) によつて第2のパツチS(u,v)2の制御辺ベクトル
c1を得ることができ、また(20)式を(19)式
に代入することにより、次式 c2=κ2a2+κ1−κ2/3a3 +η1/3b3+2η2/3b2 ……(26) によつて第2のパツチS(u,v)2の制御辺ベクトル
c2を求めることができる。
(25)式及び(26)式に、(23)式及び(24)
式を代入すれば、制御辺ベクトルc1及びc2は c1=1/3〔κ1a3+(κ1+κ2)a0+2η1b2+η2b1〕 ……(27) c2=1/3〔κ2a0+(κ1+κ2)a3+2η2b2+η1b3〕 ……(28) のように、既知の制御辺ベクトルa0,a3,b1
b2,b3によつて表されることになる。
(G3) 枠組みの形態による条件 ところで、制御辺ベクトルc1,c2の値は、枠
組み処理によつて形成された共有境界COMの
両端位置の節点を構成する制御点P(00)及びP(03)
における制御辺ベクトルa0,b1,c0及びa3
b3,c3の関係によつて異なる影響を受ける。そ
こで、枠組みの形態を3つの類型に分類し、各
類型ごとに第1及び第2のパツチS(u,v)1及び
S(u,v)2の制御辺ベクトルa1,a2及びc1,c2を決
める。
この実施例の場合、制御辺ベクトルa1,a2
びc1,c2を決める手法として、次に述べるよう
に、一方の制御辺ベクトルa1,a2を変更せずに
他方の制御辺ベクトルのみを変更することによ
り、接平面連続の条件を成立させるようにす
る。
すなわち枠組みの形態は、共有境界COMの
両端の節点となる制御点P(00)及びP(03)におい
て、2つのパツチS(u,v)1及びS(u,v)2の方向に向か
う制御辺ベクトルa0,c0及びa3,c3が互いに平
行であるか否かによつて分類する。
(1) 両方が平行の場合 第3図において共有境界COM1によつて
示すように、共有境界COM1の両端の制御
点P(00)及びP(03)において、2つの制御辺ベク
トルa0,c0及びa3,c3がそれぞれ互いに平行
である場合、接平面連続の条件を満足するた
めには、(16)式及び(20)式においてη1
びη2は η1=0、η2=0 ……(29) でなければならない。
この条件を(27)式及び(28)式に代入す
ると、κ1及びκ2が互いに等しくない場合に
は、制御辺ベクトルc1及びc2は次式 c1=1/3〔κ1a3+(κ1+κ2)a0〕 ……(30) c2=1/3〔κ2a0+(κ1+κ2)a3〕 ……(31) として求めることができる。
これに対してκ1及びκ2が互いに等しい場合
には、κ1=κ2=κとおいてこれを(30)式及
び(31)式に代入することによつて c1=1/3(κa3+2κa0) ……(32) c2=1/3(κa0+2κa3) ……(33) と表すことができる。
従つて制御点P(00)及びP(03)においてu方向
に向かう制御辺ベクトルが共に平行になるよ
うに枠組みされた2つのパツチ間を接平面連
続の条件によつて接続するためには、一方の
パツチの制御辺ベクトルa0,a3に対して、他
方のパツチの制御辺ベクトルc1,c2を、(30)
式、(31)式及び(32)式、(33)式で表すよ
うな関係に選定すれば良い。
(2) 一方が平行でない場合 第3図において共有境界COM3について
示すように、第1に、一方の節点でなる制御
点P(00)の制御辺ベクトルa0,c0が互いに平行
でない場合には、η1、η2の関係は、(16)式
及び(20)式から η1≠0、η2=0 ……(34) にならなければならず、これを(27)式及び
(28)式に代入する。ここでκ1及びκ2が互い
に等しくなければ、制御辺ベクトルc1及びc2
は、 c1=1/3〔κ1a3+(κ1+κ2)a0+2η1b2〕 ……(35) c2=1/3〔κ2a0+(κ1+κ2)a3+η1b3〕 ……(36) のように、制御点P(00)及びP(03)におけるu方
向の制御辺ベクトルa0及びa3と、共有境界
COM3沿うv方向の制御辺ベクトルb2,b3
とによつて決まる関係に設定すれば、接平面
連続の条件を満足させながら2つのパツチを
接続することができる。
これに対してκ1及びκ2が互いに等しい場合
には、(35)式及び(36)式においてκ1=κ2
=κとおけば、 c1=1/3(κa3+2κa0+2η1b2) ……(37) c2=1/3(κa0+2κa3+η1b3)……(38) と表し得る。
また第2に、第3図において共有境界
COM3について示すように、他方の節点で
なる制御点P(03)の制御辺ベクトルa3,c3が互
いに平行でない場合には、η1,η2の関係は、
(16)式及び(20)式から η1=0、η2≠0 ……(39) にならなければならず、これを(27)式及び
(28)式に代入する。ここでκ1及びκ2が互い
に等しくなければ、制御辺ベクトルc1及びc2
は、 c1=1/3〔κ1a3+(κ1+κ2)a0+η2b1〕 ……(40) c2=1/3〔κ2a0+(κ1+κ2)a3+2η2b2〕 ……(41) のように、制御点P(00)及びP(03)におけるu方
向の制御辺ベクトルa0及びa3と、共有境界
COM3に沿うv方向の制御辺ベクトルb1
b2とによつて決まる関係に設定すれば、接平
面連続の条件を満足させながら2つのパツチ
を接続することができる。
これに対してκ1及びκ2が互いに等しい場合
には、(40)式及び(41)式においてκ1=κ2
=κとおけば、 c1=1/3(κa3+2κa0+η2b1) ……(42) c2=1/3(κa0+2κa3+2η2b2) ……(43) と表し得る。
(3) 両方が平行でない場合 第3図において共有境界COM2で示すよ
うに、両端の節点でなる制御点P(00)及びP(03)
におけるu方向の制御辺ベクトルa0,c0及び
a3,c3がそれぞれ互いに平行でない場合、η1
及びη2の関係は、(16)式及び(20)式から η1≠0、η2≠0 ……(44) の関係になければならない。
ここでκ1及びκ2が互いに等しくないときに
は、次式 c1=1/3〔κ1a3+(κ1+κ2)a0+2η1b2+η2b1〕 ……(45) c2=1/3〔κ2a0+(κ1+κ2)a3+2η2b2+η1b3〕 ……(46) で示すように、(27)式及び(28)式で表さ
れる関係と同じ条件で、制御辺ベクトルc1
びc2が求められる。
これに対してκ1及びκ2が互いに等しいとき
には、(45)式及び(46)式においてκ1=κ2
=κとおくことにより、制御辺ベクトルc1
びc2は c1=1/3(κa3+2κa0+2η1b2+η2b1) ……(47) c2=1/3(κa0+2κa3+2η2b2+η1b3) ……(48) のように表すことができる。
このようにして節点の制御点P(00)及びP(03)
におけるu方向の制御辺ベクトルが互いに等
しくないときには、(45)式、(46)式又は
(47)式及び(48)式によつて表される関係
に制御辺ベクトルc1及びc2を選定することに
よつて2つのパツチを接平面連続の条件によ
つて接続することができる。
(G4) パツチ接続処理手順 第3図に示すように、パツチを帯状に1次元
的に接続する処理は、これをコンピユータによ
つて第4図に示す処理手順を実行することによ
り実現し得る。
第4図において、ステツプSP1において接続
処理手順が開始されると、コンピユータはステ
ツプSP2においてパツチデータを読み込む。こ
のパツチデータは例えば別途デザイナが自由曲
面をデザインする際に、3次元空間に境界曲線
網を枠組みすることにより得られる。この枠組
み処理に異常がなければ、境界曲線によつて囲
まれている隣合うパツチは共有境界COMをも
つており、従つて以下に述べる接続処理によつ
てこの共有境界COMにおいて2つのパツチを
接平面連続の条件の下に滑らかに接続すること
ができる。
コンピユータはステツプSP2においてパツチ
データを読み込んだとき、3次のベジエ式で表
される曲面を対応する境界曲線上に張る際に必
要とされる16個の制御点を設定してパツチ内の
補間演算を実行する。ここで、境界曲線周りの
制御辺ベクトルが補間演算の基準位置データに
用いられる。
かくして第1図について上述したように、共
有境界COMについて、その両端の節点でなる
制御点P(00)及びP(03)と、この制御点P(00)及び
P(03)間の2つの制御点P(01)及びP(02)とが設定さ
れる。
同様にして他の境界曲線についても、節点
P(00)及びP(30)1間、P(30)1及びP(33)1間、P(33)1及び
P(03)間、P(00)及びP(30)2間、P(30)2及びP(33)2間、
P(33)2及びP(03)間にそれぞれ制御点P(10)1及び
P(20)1,P(31)1及びP(32)1,P(23)1及びP(13)1,P(10)2
及びP(20)2,P(31)2及びP(32)2,P(23)2及びP(13)2
設定される。
このようにして隣合う2つのパツチS(u,v)1
びS(u,v)2の境界曲線についてそれぞれ3次のベ
ジエ式を表す4つの制御点が指定されると共
に、4つの境界曲線に囲まれた各パツチの内部
に、各境界線について両端の節点間に指定され
た2つの制御点に対応する4つの制御点P(11)1
P(21)1,P(12)1,P(22)1,P(11)2,P(21)2,P(12)2
P(22)2が指定される。
かくして隣合う2つのパツチS(u,v)1及びS(u,v)2
に対して3次のベジエ式で表された曲面をそれ
ぞれ張ることができる。
コンピユータはこの2つの曲面について、そ
の共有境界COMを挟んで指定されている制御
点によつて構成される制御辺ベクトルa0〜a3
b1〜b3,c0〜c3を用いて2つのパツチが接平面
連続の条件を満足するように共有境界COMの
節点の制御点P(00)及びP(03)間の制御点P(01)及び
P(02)から各パツチ内部の中間制御点P(11)1
P(12)1及びP(11)2,P(12)2に向かう制御辺ベクトル
a1,a2及びc1,c2を演算し直すことによつて、
1次元的な接続を以下に述べるステツプによつ
て実現する。
すなわちコンピユータは次のステツプSP3に
おいて、接続すべき2つのパツチS(u,v)1及び
S(u,v)2を指定した後、ステツプSP4に移る。こ
のステツプSP4は、接続しようとする2つのパ
ツチの共有境界COMの両端にある制御点P(00)
及びP(03)において、制御辺ベクトルが同一平面
上にあるかどうかを調べる。すなわち制御点
P(00)において制御辺ベクトルa0,b1,c1が同一
平面になければ、接平面連続の条件が成り立た
ないことになり、同様に節の制御点P(03)におい
て制御辺ベクトルa3,b3,c3が同一平面になけ
れば接平面連続の条件が成り立たないことにな
る。そこでコンピユータはステツプSP4におい
て肯定結果が得られたときには次のステツプ
SP5に進み、これに対して否定結果が得られた
ときには、ステツプSP6において同一平面にな
い制御辺ベクトルを回転させることによつて同
一平面上に修正した後次のステツプSP5に進
む。
このステツプSP5は制御点P(00)及びP(03)間に
ある2つの制御点P(01)及びP(02)について、各パ
ツチS(u,v)1及びS(u,v)2に向かう制御辺ベクトル
a1,a2及びc1,c2として接平面連続の条件を満
足する位置ベクトルを求めて設定し直す。この
実施例の場合、制御辺ベクトルa1及びa2は、
(23)式及び(24)式について上述したように、
制御点P(00)からP(03)に向かう方向すなわちv方
向に座標を移動させて行つたときの横断接線ベ
クトルの変化率が一定であるものとして決めら
れた制御辺ベクトルa0,a3に基づいて設定され
る。
かくして設定された制御辺ベクトルa1,a2
基づいて(27)式及び(28)式を用いて他方の
パツチの制御辺ベクトルc1,c2を演算する。
この実施例の場合、コンピユータによるこの
ステツプSP5における演算は、枠組み処理の仕
方によつて共有境界COMの両端位置における
境界曲線の形態に応じて、u方向の制御辺ベク
トルが平行か否かの条件に基づいてそれぞれ異
なる演算式を用いて制御辺ベクトルc1,c2を求
めるようになされている((29)式〜(48)
式)。
かくしてコンピユータは隣合う2つのパツチ
相互間を接平面連続の条件で接続する処理を終
わつて、次のステツプSP7において表示装置を
用いて各パツチを囲む境界曲線の各点における
法線ベクトル及びパツチ内の等高線を表示する
ことにより、2つのパツチの接続が滑らかであ
るか否かをオペレータが目視確認できるように
表示する。
例えば第5図に示すように、共有境界COM
の両端の制御点P(00)及びP(03)における係数κ1
びκ2が互いに異なる場合にも、オペレータは第
6図に示すように、ステツプSP2〜SP5の接続
処理によつて生成された曲面の共有境界COM
における法線ベクトルが同一になることを、他
の境界線上の法線ベクトルと共に目視確認し得
る。
この表示を見てオペレータは次のステツプ
SP8において、各パツチS(u,v)1及びS(u,v)2につい
て共有境界COM上の法線ベクトルが互いに一
致したか否かを確認でき、一致していない場合
にはステツプSP9においてその原因を調べ、必
要に応じて数値的な修正を行う。かくして一連
のパツチ接続処理手順をステツプSP10におい
て終了する。
(G5) 実施例の効果 上述のように構成すれば、オペレータが枠組
み処理によつて形成した枠組み空間に張られた
隣合うパツチを、その1階微係数が共有境界に
おいて接平面連続となるように接続することが
でき、かくして全体として滑らかな自由曲面を
生成できる曲面作成装置を得ることができる。
かくするにつき、3次の補間演算式を用いる
ようにしたことにより、作成した曲面の予測が
容易な条件の下でパツチの接続をし得る。
また上述の実施例のように、枠組み形態が異
なるとき、これに応じて異なる補間演算式を用
いるようにしたことにより、多様な枠組み形態
に最適な条件で、パツチを滑らかに接続するこ
とができる。
また、第6図について上述したように、共有
境界COMの法線ベクトルを表示装置によつて
表示することにより、パツチの接続結果を誤り
なく表示することができる。因に、上述のよう
に接続処理をする前の不連続のまますると、2
つのパツチS(u,v)1及びS(u,v)2の共有境界COMの
法線ベクトルは一致しないので第7図に示すよ
うに開いた状態に表示されるのに対して、接続
処理をすれば、第6図について上述したよう
に、2つのパツチの法線ベクトルは閉じて1本
のように表示される。かくして共有境界が連続
であることを容易に目視確認できる。
(G6) 他の実施例 なお上述においては、(21)式及び(22)式
に基づいて制御辺ベクトルa1及びa2を設定する
につき、v方向に見たときの横断接線ベクトル
の変化率が一定であるという条件を用いた場合
について述べたが、これに代え、例えば(22)
式において a0−3a1=0 ……(49) となるように制御辺ベクトルa1を a1=1/3a0 ……(50) のように設定し、その結果制御辺ベクトルa2
(22)式の関係から a2=1/3a3 ……(51) のように設定することができる。
このようにして設定した制御辺ベクトルa1
びa2に基づいて、(50)式及び(51)式を、
(25)式及び(26)式に代入することによつて
制御辺ベクトルc1及びc2を次式 c1=1/3(κ2a0+2η1b2+η2b1) ……(52) c2=1/3(κ1a3+2η2b2+η1b3) ……(53) として求めることができる。
また上述においては、3次のベジエ式を用い
てパツチの補間演算をする場合について述べた
が、数式の次数はこれに限らず4次以上にして
も良い。
さらに上述においては、パツチの補間演算を
ベジエ式を用いた場合について述べたが、これ
に限らず、スプライン式、クーンズ(Coons)
式、フアーガソン(Furgason)式などの他の
数式を用いるようにしても良い。
H 発明の効果 以上のように本発明によれば、隣合う2つのパ
ツチの内部の曲面を表す制御点を、各パツチのベ
クトル関数の1階微係数でなる接線ベクトルを用
いて、接平面連続の条件を満足するように設定す
るようにしたことにより、2つのパツチを容易に
滑らかに接続することができる自由曲面作成装置
を実現し得る。
【図面の簡単な説明】
第1図は本発明による自由曲面作成方法におい
て用いられる制御辺ベクトルを示す略線図、第2
図は第1図の共有境界における接平面連続の条件
の説明に供する略線図、第3図はパツチの1次元
的接続でなる枠組み形態を示す略線図、第4図は
2つのパツチを接続する際に用いられる接続処理
手順を示すフローチヤート、第5図は枠組の一例
を示す略線図、第6図は本発明の実施例によつて
接続した場合の共有境界の接続状態の表示を示す
略線図、第7図は接続処理をする前の接続状態を
示す略線図である。 S(u,v)1,S(u,v)2……パツチ、a0〜a3,b1〜b3,c0
〜c3……制御辺ベクトル、P(00)〜P(03),P(10)1
P(33)1,P(10)2〜P(33)2……制御点、SE1〜SE5…
…パツチ、COM,COM1〜COM3……共有境
界。

Claims (1)

  1. 【特許請求の範囲】 1 枠組み処理によつて境界曲線で囲まれる多数
    の枠組み空間を形成し、上記枠組み空間に所定の
    ベクトル関数で表されるパツチを張ることによ
    り、自由曲面を生成するようになされた自由曲面
    作成方法において、 上記多数のパツチのうち、共有境界において隣
    合う第1及び第2のパツチを指定し、 上記第1のパツチを表すベクトル関数の1階微
    係数でなり、上記第1のパツチの上記共有境界に
    沿う方向及び横断する方向の2つのベクトルでな
    る第1の接線ベクトルを求め、 上記第2のパツチを表すベクトル関数の1階微
    係数でなり、上記第2のパツチの上記共有境界に
    沿う方向及び横断する方向の2つのベクトルでな
    る第2の接線ベクトルを求め、 上記求められた第1及び第2の接線ベクトルに
    ついて、上記共有境界において接平面連続の条件
    が成り立つように上記第1及び第2のパツチの内
    部に上記第1及び第2のパツチの形状を変化させ
    るための制御点を決める ことを特徴とする自由曲面作成方法。 2 上記枠組み空間に張られるパツチを3次の補
    間演算式によつて表してなる特許請求の範囲第1
    項に記載の自由曲面作成方法。 3 上記多数のパツチを1次元的方向に順次接続
    されるように枠組みしてなる特許請求の範囲第1
    項に記載の自由曲面作成方法。 4 上記内部の制御点を、上記共有境界の両端に
    おける境界曲線の形態の変化に対応する数式を用
    いて演算するようにしてなる特許請求の範囲第1
    項に記載の自由曲面作成方法。
JP60277448A 1985-12-09 1985-12-09 自由曲面作成方法 Granted JPS62135965A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP60277448A JPS62135965A (ja) 1985-12-09 1985-12-09 自由曲面作成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60277448A JPS62135965A (ja) 1985-12-09 1985-12-09 自由曲面作成方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP62074986A Division JPH0682381B2 (ja) 1987-03-28 1987-03-28 自由曲面表示方法

Publications (2)

Publication Number Publication Date
JPS62135965A JPS62135965A (ja) 1987-06-18
JPH0327950B2 true JPH0327950B2 (ja) 1991-04-17

Family

ID=17583715

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60277448A Granted JPS62135965A (ja) 1985-12-09 1985-12-09 自由曲面作成方法

Country Status (1)

Country Link
JP (1) JPS62135965A (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3512091B2 (ja) * 1994-04-28 2004-03-29 ソニー株式会社 自由曲面作成方法及び自由曲面作成装置
JPH07311858A (ja) * 1994-05-18 1995-11-28 Sony Corp 自由曲面作成方法及び自由曲面作成装置
JPH08339219A (ja) * 1995-06-13 1996-12-24 Daikin Ind Ltd みがき装置におけるみがき面教示方法
JP4301791B2 (ja) * 2002-10-04 2009-07-22 三菱重工業株式会社 Cadシステム及びcadプログラム

Also Published As

Publication number Publication date
JPS62135965A (ja) 1987-06-18

Similar Documents

Publication Publication Date Title
US4866631A (en) Method for generating offset surface data
US5566281A (en) Method and apparatus for generating a surface by simulating a physical membrane
US5579464A (en) Free-form surface creation method and apparatus thereof
Karčiauskas et al. Bi-cubic scaffold surfaces
JPH0327950B2 (ja)
JP3187807B2 (ja) 物体の表面形状データ作成装置
Peters et al. Algorithm 1032: Bi-cubic splines for polyhedral control nets
JP3187808B2 (ja) 物体の表面形状データ作成装置
JP3187811B2 (ja) 物体の表面形状データ作成方法
JP3187815B2 (ja) 物体の表面形状データ作成方法
JP3187810B2 (ja) 物体の表面形状データ作成装置
JP2737132B2 (ja) 物体の表面形状データ作成方法
JP2946506B2 (ja) 物体の表面形状データ作成方法
JPH0682381B2 (ja) 自由曲面表示方法
JP2701252B2 (ja) 物体の表面形状データ作成方法
JP2767801B2 (ja) 物体の表面形状データ作成方法
JP2600671B2 (ja) 自由曲面作成方法
JP2638852B2 (ja) フイレツト曲面の生成方法
JP3187809B2 (ja) 物体の表面形状データ作成方法
JPH0632043B2 (ja) 陰影表示方法
JP2600670B2 (ja) 自由曲面作成方法
JP2932528B2 (ja) 物体の表面形状データ作成方法
JP3148792B2 (ja) 自由曲面生成方法及びその装置
JPS62224863A (ja) 自由曲面作成方法
JPH01120674A (ja) 物体の表面形状データ作成方法