JP3137245B2 - 自由曲線作成方法及び自由曲面作成方法 - Google Patents

自由曲線作成方法及び自由曲面作成方法

Info

Publication number
JP3137245B2
JP3137245B2 JP03313634A JP31363491A JP3137245B2 JP 3137245 B2 JP3137245 B2 JP 3137245B2 JP 03313634 A JP03313634 A JP 03313634A JP 31363491 A JP31363491 A JP 31363491A JP 3137245 B2 JP3137245 B2 JP 3137245B2
Authority
JP
Japan
Prior art keywords
vector
patch
projection
free
curve
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP03313634A
Other languages
English (en)
Other versions
JPH05128216A (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.)
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 JP03313634A priority Critical patent/JP3137245B2/ja
Publication of JPH05128216A publication Critical patent/JPH05128216A/ja
Priority to US08/389,562 priority patent/US5557719A/en
Application granted granted Critical
Publication of JP3137245B2 publication Critical patent/JP3137245B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/30Polynomial surface description

Description

【発明の詳細な説明】
【0001】
【目次】以下の順序で本発明を説明する。 産業上の利用分野 従来の技術(図23) 発明が解決しようとする課題(図23) 課題を解決するための手段(図3、図11及び図17) 作用(図3、図11及び図17) 実施例 (1)CAD/CAMシステムの全体構成(図1) (2)自由曲線の原理(図2) (3)自由曲線の投影(図1〜図10) (4)パツチの生成(図11〜図16) (5)パツチの変換(図17〜図22) (6)他の実施例 発明の効果
【0002】
【産業上の利用分野】本発明は自由曲線作成方法に関
し、例えばCAD/CAM(computer aided design /
computer aided manufacturing) の手法を用いたデザイ
ン装置に適用し得る。
【0003】
【従来の技術】例えば、CADの手法を用いて自由曲面
をもつた物体の形状をデザインする場合(geometric mo
deling) 、一般にデザイナは、曲面が通るべき3次元空
間における複数の点(これを節点と呼ぶ)を指定し、当
該指定された節点を結ぶ境界曲線網を所望のベクトル関
数によつて演算させることにより、いわゆるワイヤーフ
レームで表現された曲面を作成する。かくして境界曲線
によつて囲まれた多数の枠組み空間を形成することがで
きる(この処理を枠組み処理と呼ぶ)。
【0004】かかる枠組み処理によつて形成された境界
曲線網は、それ自体デザイナがデザインしようとする大
まかな形状を表しており、各枠組み空間を囲む境界曲線
を用いて所定のベクトル関数によつて表現できる曲面を
補間演算することができれば、全体としてデザイナがデ
ザインした自由曲面(2次関数で規定できないものをい
う)を生成することができる。ここで各枠組み空間に張
られた曲面は全体の曲面を構成する基本要素を形成し、
これをパツチと呼ぶ。
【0005】ところで生成した自由曲面全体としてより
自然な外形形状をもたせるために、共有境界を挟んで隣
接する2つの枠組み空間に、共有境界において接平面連
続の条件を満足するようなパツチを張るように、共有境
界周りの制御辺ベクトルを設定し直すようにした自由曲
線作成方法が提案されている(特願昭 60-277448号)。
【0006】この自由曲面作成方法は、図9に示すよう
に、四辺形枠組空間に張られるパツチベクトルS(u,v)1
及びベクトルS(u,v)2を3次のベジエ式でなるベクトル
関数ベクトルS(u,v) で表し、2つのパツチベクトルS
(u,v)1及びベクトルS(u,v)2を滑からに接続するため
に、枠組み処理によつて与えられた節点ベクトルP(0
0)、ベクトルP(30)1 、ベクトルP(33)1 、ベクトルP
(03)、ベクトルP(33)2 、ベクトルP(30)2 に基づい
て、隣接するパツチベクトルS(u,v)1及びベクトルS
(u,v)2の共有境界COMにおいて接平面連続の条件が成
り立つような制御辺ベクトルベクトルa1、ベクトルa
2及びベクトルc1、ベクトルc2を設定し、これらの
制御辺ベクトルによつて制御点ベクトルP(11)1 、ベク
トルP(12)1 、ベクトルP(11)2 、ベクトルP(12)2 を
設定し直すことを原理としている。
【0007】このような手法を他の共有境界についても
適用すれば、結局パツチベクトルS(u,v)1及びベクトル
S(u,v)2は隣接するパツチと接平面連続の条件に従つて
滑らかに接続することができる。ここで、3次のベジエ
式でなるベクトル関数ベクトルS(u,v) は、次式
【数1】 のように、u方向及びv方向のパラメータu及びv、シ
フト演算子E及びFを用いて表現され、制御点ベクトル
P(ij)に対して、次式
【数2】
【数3】
【数4】
【数5】 の関係をもつ。
【0008】さらに、接平面とは共有境界の各点におけ
るu方向及びv方向の接線ベクトルによつて形成される
平面を意味し、例えば図9の共有境界COMについて、
パツチベクトルS(u,v)1及びベクトルS(u,v)2の接平面
が同一のとき接平面連続の条件が成り立つ。
【0009】この方法によれば、デザイナの意図するま
まに、全体として滑らかに曲面形状が変化するような、
従来の設計手法では実際上デザインすることが困難な物
体形状をも、容易にデザインし得る。
【0010】
【発明が解決しようとする課題】ところでこのようなデ
ザイン装置において、生成したパツチに対して所望の曲
線を投影することができれば、例えば投影した曲線を抽
出して断面形状を観察したり、また溝加工、穴加工後の
様子を観察したりし得、便利であると考えられる。また
射出整形した際のパーテイグラインを観察したり、曲面
にシールを張り付けた状態等も観察することができる。
さらにこのようにして生成した曲線を利用して新たなパ
ツチを生成することも考えられる。
【0011】本発明は以上の点を考慮してなされたもの
で、所望の曲面に曲線等を投影して自由曲線及び自由曲
面を生成することができる自由曲線作成方法及び自由曲
面作成方法を提案しようとするものである。
【0012】
【課題を解決するための手段】かかる課題を解決するた
め第1の発明においては、コンピユータを用いて、3次
元空間上の2つの節点ベクトルP0、ベクトルP3間に
制御点ベクトルP1、ベクトルP2を生成し、節点ベク
トルP0、ベクトルP3及び制御点ベクトルP1、ベク
トルP2に基づいて、所定のパラメータtを用いたベク
トル関数ベクトルC(t) で物体の表面形状を表す自由曲
線C(t) をもつ物体の表面形状を生成する自由曲線作成
方法において、枠組み空間に形成された所定のベクトル
関数ベクトルS(u,v) で表される物体の表面形状を表す
パツチベクトルS(u,v)1〜S(u,v)4について、投影方向
dir がx方向、y方向又はz方向になるようにパツチベ
クトルS(u,v)1〜S(u,v)4を回転移動した後、回転移動
したパツチベクトルS(u,v)1〜S(u,v)4の制御点ベクト
ルP00〜P33について、y及びz座標値、x及びz座標
値又はx及びy座標値の最大値及び最小値を検出し、該
検出結果に基づいて、投影対象の自由曲線ベクトルC
(t) について、節点ベクトルPC0、ベクトルPC3を
投影方向dir から元のパツチベクトルS(u,v)1〜S(u,
v)4に投影可能か否か判断し、該判断結果に基づいて、
投影対象の自由曲線C(t) について、節点ベクトルPC
0、ベクトルPC3を投影方向dir から元のパツチベク
トルS(u,v)1〜S(u,v)4に投影してなる投影節点ベクト
ルC0、ベクトルC3を生成し、投影対象の自由曲線C
(t) 上に点列ベクトルq0〜ベクトルq11を生成し、検
出結果に基づいて、点列ベクトルq0〜ベクトルq11の
各点について、投影方向dirから元のパツチベクトルS
(u,v)1〜S(u,v)4に投影可能か否か判断し、該判断結果
に基づいて、点列ベクトルq0〜ベクトルq11の各点を
投影方向dir から元のパツチベクトルS(u,v)1〜S(u,
v)4に投影してなる投影点列ベクトルqa0〜ベクトル
qa11を形成し、投影節点ベクトルC0、ベクトルC3
及び上記投影点列ベクトルqa0〜ベクトルqa11に基
づいて、投影対象の自由曲線C(t) を、投影方向dir か
ら元のパツチベクトルS(u,v)1〜S(u,v)4上に投影した
形状の自由曲線ベクトルCを生成し、当該投影した形状
の自由曲線を物体の表面形状としてデイスプレイ16上
に表示する。
【0013】さらに第2の発明においては、元のパツチ
ベクトルS(u,v)1〜S(u,v)4は複数でなり、投影方向di
r がx方向、y方向又はz方向になるように各パツチベ
クトルS(u,v)1〜S(u,v)4を回転移動した後、回転移動
した各パツチベクトルS(u,v)1〜S(u,v)4の制御点ベク
トルP00〜P33について、y及びz座標値、x及びz座
標値又はx及びy座標値の最大値及び最小値を検出し、
該検出結果に基づいて、投影対象の自由曲線ベクトルC
(t) について、節点ベクトルPC0、ベクトルPC3を
投影方向dir から元の各パツチベクトルS(u,v)1〜S
(u,v)4に投影可能か否か判断し、該判断結果に基づい
て、投影対象の自由曲線ベクトルC(t) について、節点
ベクトルPC0、ベクトルPC3を投影方向dir から元
のパツチベクトルS(u,v)1〜S(u,v)4に投影してなる投
影節点ベクトルC0、ベクトルC3を生成し、検出結果
に基づいて、点列ベクトルq0〜ベクトルq11の各点に
ついて、投影方向dir から元の各パツチベクトルS(u,
v)1〜S(u,v)4に投影可能か否か判断し、該判断結果に
基づいて、点列ベクトルq0〜ベクトルq11の各点を投
影方向dir から元の各パツチベクトルS(u,v)1〜S(u,
v)4に投影してなる投影点列ベクトルqa0〜ベクトル
qa11を形成し、投影節点ベクトルC0、ベクトルC3
及び投影点列ベクトルqa0〜ベクトルqa11に基づい
て、投影対象の自由曲線ベクトルC(t) を、投影方向di
r から元の複数のパツチベクトルS(u,v)1〜S(u,v)4上
に投影した形状の自由曲線ベクトルCを生成する。
【0014】さらに第3の発明においては、投影対象の
自由曲線COM1〜COM4は、所定の枠組み空間を形
成する境界曲線COM1〜COM4でなり、投影対象の
自由曲線COM1〜COM4を、投影方向dir から元の
パツチベクトルS(u,v) 上に投影した形状の自由曲線C
OM1N〜COM4Nを元のパツチベクトルS(u,v)上
に生成し、元のパツチベクトルS(u,v) 上に生成した自
由曲線COM1N〜COM4Nを境界曲線にしてなる枠
組み空間を生成する。
【0015】さらに第4の発明においては、コンピユー
タを用いて、所定の枠組み空間を形成する境界曲線CO
M1〜COM4を、所定の投影方向dir から物体の表面
形状を表す元のパツチベクトルS(u,v) 上に投影した形
状の自由曲線COM1N〜COM4Nを元のパツチベク
トルS(u,v) 上に生成することにより、元のパツチベク
トルS(u,v) 上に生成した自由曲線COM1N〜COM
4Nを境界曲線にしてなる枠組み空間を生成し、該枠組
み空間にパツチベクトルBを仮生成し、該仮生成したパ
ツチベクトルBを変形して、元のパツチベクトルS(u,
v) の曲面形状のパツチベクトルBを生成し、元のパツ
チベクトルS(u,v) 上に生成する自由曲線COM1N〜
COM4Nは、元のパツチベクトルS(u,v) について、
投影方向dir がx方向、y方向又はz方向になるように
元のパツチベクトルS(u,v) を回転移動した後、回転移
動したパツチベクトルS(u,v) の制御点ベクトルP00〜
P33について、y及びz座標値、x及びz座標値又はx
及びy座標値の最大値及び最小値を検出し、該検出結果
に基づいて、投影対象の自由曲線COM1〜COM4に
ついて、節点ベクトルPC0、ベクトルPC3を投影方
向dir から元のパツチベクトルS(u,v) に投影可能か否
か判断し、該判断結果に基づいて、投影対象の自由曲線
COM1〜COM4について、節点ベクトルPC0、ベ
クトルPC3を投影方向dir から元のパツチベクトルS
(u,v) に投影してなる投影節点ベクトルC0、ベクトル
C3を生成し、投影対象の自由曲線COM1〜COM4
上に点列ベクトルq0〜ベクトルq11を生成し、検出結
果に基づいて、点列ベクトルq0〜ベクトルq11の各点
について、投影方向dir から元のパツチベクトルS(u,
v)に投影可能か否か判断し、該判断結果に基づいて、点
列ベクトルq0〜ベクトルq11の各点を投影方向dir か
ら元のパツチベクトルS(u,v) に投影してなる投影点列
ベクトルqa0〜ベクトルqa11を形成し、投影節点ベ
クトルC0、ベクトルC3及び投影点列ベクトルqa0
〜ベクトルqa11に基づいて生成した投影対象の自由曲
線COM1〜COM4を、投影方向dir から元のパツチ
ベクトルS(u,v) 上に投影した形状の自由曲線COM1
N〜COM4Nを生成し、当該投影した形状の自由曲線
を物体の表面形状としてデイスプレイ16上に表示す
る。
【0016】
【0017】
【作用】回転移動したパツチベクトルS(u,v)1〜S(u,
v)4の制御点ベクトルP00〜P33について、y及びz座
標値、x及びz座標値又はx及びy座標値の最大値及び
最小値を検出し、該検出結果に基づいて、節点ベクトル
PC0、ベクトルPC3、点列ベクトルq0〜ベクトル
q11を元のパツチベクトルS(u,v)1〜S(u,v)4に投影可
能か否か判断し、当該判断結果に基づいて節点ベクトル
PC0、ベクトルPC3、点列ベクトルq0〜ベクトル
q11を元のパツチベクトルS(u,v)1〜S(u,v)4に投影す
れば、投影した投影節点ベクトルC0、ベクトルC3、
投影点列ベクトルqa0〜ベクトルqa11に基づいて、
元のパツチベクトルS(u,v)1〜S(u,v)4上に自由曲線C
(t) を投影した形状の自由曲線ベクトルCを簡易に生成
することができる。
【0018】このとき元のパツチベクトルS(u,v)1〜S
(u,v)4が複数の場合、各パツチベクトルS(u,v)1〜S
(u,v)4を回転移動した後、回転移動した各パツチベクト
ルS(u,v)1〜S(u,v)4の制御点ベクトルP00〜P33につ
いて、y及びz座標値、x及びz座標値又はx及びy座
標値の最大値及び最小値を検出し、該検出結果に基づい
て投影可能か否か判断することにより、複数のパツチベ
クトルS(u,v)1〜S(u,v)4上に自由曲線ベクトルC(t)
を投影した形状の自由曲線ベクトルCを生成することが
できる。
【0019】これに対して所定の枠組み空間を形成する
境界曲線COM1〜COM4をパツチベクトルS(u,v)
に投影して曲線を形成すれば、パツチベクトルS(u,v)
上に自由曲線COM1〜COM4を投影した形状の自由
曲線COM1N〜COM4Nで枠組み空間を生成するこ
とができる。
【0020】これにより当該枠組み空間にパツチベクト
ルBを生成し、元のパツチベクトルS(u,v) の曲面形状
に変形して、簡易に、元の曲面形状で所望の大きさのパ
ツチベクトルBを生成することができる。
【0021】
【0022】
【実施例】以下図面について、本発明の一実施例を詳述
する。
【0023】(1)CAD/CAMシステムの全体構成 図1において、10は全体としてCAD/CAMシステ
ムを示し、自由曲面作成装置12で自由曲面を表す形状
データDTS を作成した後、工具経路作成装置13で切
削加工用の加工データDTCLを作成する。
【0024】すなわち自由曲面作成装置12は、中央処
理装置(CPU)を有し、表示装置16の表示に応答し
て入力装置17を操作することにより、デザイナが指定
入力したワイヤフレームモデルに3次のベジエ式を用い
てパツチを張つた後、当該パツチを接続し直すことによ
り、自由曲面を有する物体の形状データDTS を作成す
る。
【0025】これに対して工具経路作成装置13は、形
状データDTS に基づいて、金型を荒加工及び仕上げす
る加工データDTCLを作成した後、当該荒加工用及び仕
上げ加工用の加工データDTCLを、例えばフロツピデイ
スク15を介して、NCミーリングマシン14に出力す
る。
【0026】NCミーリングマシン14は、当該加工デ
ータDTCLに基づいて例えばNCフライス盤を駆動し、
これにより形状データDTS で表される製品の金型を作
成する。
【0027】(2)自由曲線の原理 ここで図2に示すように、ベジエ曲線は、3次のベジエ
(bezier)式を用いて次式、
【数6】 で表されるパラメトリツクな空間曲線ベクトルR(t) で
表現される。
【0028】ここでt は、一方の節点ベクトルP0 から
曲線セグメントKSGに沿う方向に他方の節点ベクトルP
3 に至るまでの間に、次式
【数7】 で表されるように値0から値1まで変化するパラメータ
である。このようにして3次のベジエ式で表される曲線
セグメントKSGは、シフト演算子Eによつて節点ベクト
ルP0 及びベクトルP3 間に2つの制御点ベクトルP1
及びベクトルP2 を指定することによつて曲線セグメン
トKSG上の各点が次式
【数8】 の展開によつてxyz空間の原点Oからの位置ベクトル
R(t) として表される。
【0029】ここでシフト演算子Eは、曲線セグメント
KSG上の制御点ベクトルPi に対して次式
【数9】
【数10】 の関係をもつ。
【0030】従つて(6)式を展開して(9)式の関係
を代入すれば、次式
【数11】 のように演算することができ、その結果(8)式が得ら
れる。
【0031】かくしてベジエ曲線で表される各曲線セグ
メントKSG1 、KSG2 、KSG3 は(8)式に基づいてそ
れぞれ2つの節点及び制御点ベクトルP(0)1〜3 、ベク
トルP(1)1〜3 、ベクトルP(2)1〜3 及びベクトルP
(3)1〜3 によつて表すことができ、節点ベクトルP(0)1
〜3 及びP(3)1間に制御点ベクトルP(1)1〜3 及びベク
トルP(2)1〜3 を設定することにより、節点ベクトルP
(0)1〜3 及びP(3)1を通つて制御点ベクトルP(0)1〜3
、ベクトルP(1)1〜3 、ベクトルP(2)1〜3 及びベク
トルP(3)1〜3 で決まる形状に設定することができる。
【0032】(3)自由曲線の投影 自由曲面作成装置12は、図3に示す処理手順を実行し
てオペレータの入力した曲線を自由曲面に投影し、当該
自由曲面上に自由曲線を生成する。すなわち自由曲面作
成装置12は、ステツプSP1からステツプSP2に移
り、ここで図4に示すように曲線を投影するパツチベク
トルS(u,v)1〜S(u,v)4をオペレータが指定すると、当
該パツチベクトルS(u,v)1〜S(u,v)4のデータを取り込
む。
【0033】続いて自由曲面作成装置12は、ステツプ
SP3に移り、ここでオペレータの入力した座標データ
に基づいて投影対象の曲線を生成する。
【0034】この曲線生成処理は、例えばオペレータが
所望の形状の曲線が得られるように、節点ベクトルPC
0、ベクトルPC3、内部制御点ベクトルPC1、ベク
トルPC2を入力することにより、実行される。これに
より入力された曲線ベクトルC(t) は、(11)式のベク
トルP0〜ベクトルP3をベクトルPC1〜ベクトルP
C2とおいて、次式
【数12】 で表すことができる。
【0035】続いて自由曲面作成装置12は、ステツプ
SP4に移り、オペレータが入力した投影方向dir(dx、
dy、dz)を取り込んだ後、ステツプSP5に移り、ここ
で節点ベクトルPC0をパツチベクトルS(u,v)1〜S
(u,v)4に投影する。この投影処理は、図5に示すよう
に、投影する節点ベクトルPC0を中心にして、投影方
向dir がZ方向になるように順次パツチベクトルS(u,
v)1〜S(u,v)4を回転移動して投影し得るか否か判断
し、当該判断結果に基づいて節点ベクトルPC0を元の
位置のパツチに投影することにより、簡易な演算処理で
節点ベクトルPC0を投影し得るようになされている。
【0036】すなわち自由曲面作成装置12は、図6に
示すように、ステツプSP6からステツプSP7に移
り、ここで初めに第1のパツチベクトルS(u,v)1を選択
した後、ステツプSP8に移る。ここで自由曲面作成装
置12は、節点ベクトルPC0を中心にして、投影方向
dir がZ方向になるように当該パツチベクトルS(u,v)1
の12の制御点ベクトルP00〜P33を回転移動する。
【0037】続いて自由曲面作成装置12は、ステツプ
SP9に移り、ここで回転移動した制御点ベクトルP00
〜P33のxy座標値について、それぞれ最小値及び最大
値を検出した後、節点ベクトルPC0のxy座標値が当
該最小値から最大値の範囲に入るか否か判断する。これ
により自由曲面作成装置12は、節点ベクトルPC0の
xy座標値がパツチベクトルS(u,v)1内か否か判断す
る。
【0038】ここで否定結果が得られると、自由曲面作
成装置12は、ステツプSP10に移り、続く第2のパ
ツチベクトルS(u,v)2を選択した後、ステツプSP8に
戻り、当該パツチベクトルS(u,v)2についてステツプS
P8−SP9の処理を繰り返す。
【0039】これに対してステツプSP9において肯定
結果が得られると、自由曲面作成装置12は、ステツプ
SP11に移り、節点ベクトルPC0を元のパツチベク
トルS(u,v)1に投影できるか否か判断する。すなわち自
由曲面作成装置12は、節点ベクトルPC0から投影方
向dir の方向に直線ベクトルLを形成し、当該直線ベク
トルL及びパツチベクトルS(u,v)1とが交点ベクトルC
0を形成するか否か判断し、これにより節点ベクトルP
C0を元のパツチベクトルS(u,v)1に投影できるか否か
判断する。
【0040】ここで自由曲面作成装置12は、交点ベク
トルC0を形成し得ない場合、否定結果が得られること
により、ステツプSP10に移り、続くパツチベクトル
S(u,v)2について処理する。これに対してステツプSP
11において肯定結果が得られると、自由曲面作成装置
12は、ステツプSP12に移り、当該交点ベクトルC
0を節点に設定した後、ステツプSP13に移つて当該
処理手順を終了する。
【0041】続いて自由曲面作成装置12は、ステツプ
SP14に移り、残りの節点PC3について、同様にパ
ツチベクトルS(u,v)1〜ベクトルS(u,v)4に投影し、そ
の結果得られる交点ベクトルC3を節点に設定する。
【0042】このとき何れのパツチベクトルS(u,v)1〜
ベクトルS(u,v)4にも交点ベクトルC0又はベクトルC
3を形成し得ない場合、自由曲面作成装置12において
は、対応する節点ベクトルPC0又はベクトルPC3か
ら順次自由曲線ベクトルC(t) を内側に辿り、当該自由
曲線ベクトルC(t) 上に投影用の点を形成する。さらに
当該点について、図6に示す処理手順を実行することに
より、節点ベクトルPC0又はベクトルPC3に代えて
当該点の交点を節点ベクトルC0又はベクトルC3に設
定する。
【0043】続いて自由曲面作成装置12は、ステツプ
SP15に移り、ここで節点ベクトルC0について制御
辺ベクトルベクトルtv1を生成する。すなわち図7に
示すように、自由曲面作成装置12は、節点ベクトルP
C0にパツチベクトルS(u,v)1の法線ベクトルn1を設
定した後、当該法線ベクトルn1を法線にしてなる平面
ベクトルH1を形成する。
【0044】さらに自由曲面作成装置12は、自由曲線
ベクトルC(t) の制御点ベクトルPC1から投影方向di
r の方向に直線ベクトルL1を形成し、当該直線ベクト
ルL1及び平面ベクトルH1の交点ベクトルC1を検出
する。これにより自由曲面作成装置12は、次式
【数13】 の演算処理を実行し、節点ベクトルC0から交点ベクト
ルC1を結ぶ方向に制御辺ベクトルベクトルtv1を生
成する。
【0045】続いて自由曲面作成装置12は、ステツプ
SP16に移り、ここでステツプSP15と同様の処理
を実行して、次式
【数14】 の演算処理を実行し、節点ベクトルC3から交点ベクト
ルC2を結ぶ方向に制御辺ベクトルベクトルtv2を生
成する。
【0046】続いて自由曲面作成装置12は、ステツプ
SP17に移り、自由曲線ベクトルC(t) 上に投影用の
点列を形成する。すなわち自由曲面作成装置12におい
ては、自由曲線ベクトルC(t) のパラメータtを10等
分し、当該パラメータtを(11)式に順次代入すること
により、次式
【数15】 で表される11の点ベクトルq1〜ベクトルq11を生成
する。
【0047】続いて自由曲面作成装置12は、ステツプ
SP18に移り、ここでステツプSP5と同様の処理を
実行して、点ベクトルq1〜q11を順次パツチベクトル
S(u,v)1〜ベクトルS(u,v)4に投影する。これにより自
由曲面作成装置12は、図8に示すように、点ベクトル
q1〜ベクトルq11に対応する交点ベクトルqa1〜ベ
クトルqa11を順次パツチベクトルS(u,v)1〜ベクトル
S(u,v)4に生成する。
【0048】かくして各パツチベクトルS(u,v)1〜ベク
トルS(u,v)4を順次z方向に回転移動し、各パツチベク
トルS(u,v)1〜ベクトルS(u,v)4の制御点ベクトルP00
〜P33のxy座標値を基準にして投影し得るか否かを判
断することにより、点列ベクトルq1〜q11を簡易に投
影し得、その分簡易にベジエ曲線ベクトルCを生成する
ことができる。
【0049】このようにして交点ベクトルqa1〜ベク
トルqa11を生成すると、自由曲面作成装置12は、ス
テツプSP19に移り、図9に示すように、制御辺ベク
トルベクトルtv1、ベクトルtv2及び交点ベクトル
qa1〜qa11からベジエ曲線ベクトルCを生成する。
【0050】この生成処理において、自由曲面作成装置
12は、次式
【数16】
【数17】
【数18】
【数19】 で示すように、両端点の交点ベクトルqa1、qa11を
それぞれ節点ベクトルP0、P3に設定し、当該節点ベ
クトルP0、P3から制御辺ベクトルベクトルtv1、
ベクトルtv2の延長方向に制御点ベクトルP1、P2
を設定する。これにより自由曲面作成装置12は、当該
節点ベクトルP0、P3、制御点ベクトルP1、P2を
用いて、次式
【数20】 で表されるベジエ曲線ベクトルR(t) を仮設定する。こ
こでa及びbは、所定の初期値である。
【0051】続いて自由曲面作成装置12は、次式
【数21】 の演算処理を実行することにより、各交点ベクトルqa
1〜ベクトルqa11からベジエ曲線ベクトルR(t) まで
の最短距離の2乗和fを検出し、当該2乗和fが最少に
なるようにベジエ曲線ベクトルR(t) の制御点ベクトル
P1、P2を設定する。
【0052】すなわち(21)式をそれぞれ初期値a及び
bで微分して値0とおけば、次式
【数22】
【数23】 で表すことができる。従つて(22)、(23)式をテーラ
ー展開して2次以降の項を切り捨てると、次式
【数24】
【数25】 の関係式を得ることができる。従つて、これを行列で表
すと、次式
【数26】 で表すことができ、これによりニユートンラプソン法を
適用して値Δa、Δbを検出することができる。
【0053】かくして自由曲線作成装置12において
は、このようにして検出した値Δa、Δbを初期値a、
bに加算して(26)式の演算処理を繰り返し、これによ
り値a、bの最終値を決定する。
【0054】続いて自由曲線作成装置12においては、
値a、bの最終値を(17)、(18)式に代入して制御点
ベクトルP1、P2を決定し、これにより交点ベクトル
qa1〜ベクトルqa11を通過するベジエ曲線ベクトル
Cを生成した後、ステツプSP20に移つて当該処理手
順を終了する。これにより自由曲線作成装置12におい
ては、自由曲線ベクトルC(t) を曲面ベクトルS(u,v)1
〜ベクトルS(u,v)4に投影してなるベジエ曲線ベクトル
Cを生成することができる。
【0055】かくして予め制御辺ベクトルベクトルtv
1、ベクトルtv2を設定し、当該制御辺ベクトルベク
トルtv1、ベクトルtv2を用いてベジエ曲線ベクト
ルCを生成することにより、ニユートンラプソン法を適
用して簡易に演算処理し得、その分全体の演算処理時間
を短縮することができる。
【0056】このとき自由曲線作成装置12において
は、自由曲線ベクトルC(t) 上の点列ベクトルq1〜ベ
クトルq11を基準にして曲面ベクトルS(u,v)1〜ベクト
ルS(u,v)4上の交点ベクトルqa1〜ベクトルqa11を
通過するようにベジエ曲線ベクトルCを生成することに
より、滑らかで精度の高いベジエ曲線ベクトルCを生成
することができる。
【0057】さらに制御辺ベクトルベクトルtv1、ベ
クトルtv2を用いてベジエ曲線Cを生成ことにより、
パツチベクトルS(u,v)1〜ベクトルS(u,v)4が接平面連
続の条件を満足するように接続されている場合、ベジエ
曲線ベクトルCにおいては接線連続の状態を保持するこ
とができる。
【0058】従つて従来の自由曲線の変更等の処理手順
を当該ベジエ曲線ベクトルCに適用し得、その分当該自
由曲線作成装置12の使い勝手を向上することができ
る。また穴加工後の様子を観察したり、溝加工後の様子
を簡易に観察することができる。
【0059】実際上、図10に示すように、5個のベジ
エ曲線ベクトルC1〜ベクトルC5をリング状に接続し
た自由曲面を、パツチベクトルS(u,v)1〜ベクトルS
(u,v)16 で構成された自由曲面に投影して実験した結果
によれば、短時間で、当該パツチベクトルS(u,v)1〜ベ
クトルS(u,v)16 上に接線連続の条件で接続されたベジ
エ曲線ベクトルCt1〜ベクトルCt5を生成すること
ができた。
【0060】以上の構成によれば、投影方向がz方向に
なるように各パツチを回転移動して投影し得るか否か判
断し、当該判断結果に基づいて曲線上の点列及び制御点
を当該パツチに投影し、その結果得られる曲面上の交点
を用いて制御辺ベクトルを生成してベジエ曲線を生成す
ることにより、所望の曲線を簡易に自由曲面上に投影し
得、その分デザイン作業の能率を向上して、当該デザイ
ン装置に使い勝手を向上することができる。
【0061】(4)パツチの生成 自由曲面作成装置12は、上述の自由曲線投影の手法を
適用して図11に示す処理手順を実行することにより、
オペレータの所望するパツチ上に枠組み空間を形成し、
当該枠組み空間に当該パツチと曲面形状の等しいパツチ
を生成する。これにより自由曲面作成装置12は、デザ
インした製品の全体形状から部品の形状を設計したり、
曲面にシールを張り付けた状態を確認し得るようになさ
れている。
【0062】すなわち自由曲面作成装置12は、ステツ
プSP21からステツプSP22に移り、ここでオペレ
ータの指定したパツチベクトルS(u,v) (パツチA)に
ついて制御点ベクトルQ00〜ベクトルQ33の座標データ
を取り込んだ後、ステツプSP23に移る。
【0063】ここで自由曲面作成装置12は、オペレー
タがパツチベクトルS(u,v) に投影しようとする境界曲
線COM1〜COM4について、制御点ベクトルK10〜
ベクトルK13、ベクトルK20〜ベクトルK23、ベクトル
K30〜ベクトルK33、ベクトルK40〜ベクトルK43の座
標データを取り込んだ後、続いてステツプSP24にお
いて、投影方向dir を入力する。
【0064】なお各境界曲線COM1〜COM4におい
ては、それぞれ制御点ベクトルK10〜ベクトルK13、ベ
クトルK20〜ベクトルK23、ベクトルK30〜ベクトルK
33、ベクトルK40〜ベクトルK43を用いて、次式
【数27】
【数28】
【数29】
【数30】 で示すベクトル関数ベクトルL1(t)、ベクトルL2(t)、
ベクトルL3(t)、ベクトルL4(t)で表すようになされて
いる。
【0065】続いて自由曲面作成装置12は、ステツプ
SP25に移り、ここで先ず境界曲線COM1をパツチ
ベクトルS(u,v) に投影する。この投影処理は、図3に
ついて上述した処理手順を実行することにより、パツチ
ベクトルS(u,v) 上に境界曲線COM1を投影してなる
曲線形状のベジエ曲線ベクトルCA1を生成する。
【0066】続いて自由曲面作成装置12は、ステツプ
SP26に移り、同様にして境界曲線COM2〜COM
4をパツチベクトルS(u,v) に投影する。これにより自
由曲面作成装置12は、制御点ベクトルKA10〜ベクト
ルKA13、ベクトルKA20〜ベクトルKA23、ベクトル
KA30〜ベクトルKA33、ベクトルKA40〜ベクトルK
A43を用いて、次式
【数31】
【数32】
【数33】
【数34】 のベクトル関数ベクトルLA1(t)、ベクトルLA2(t)、
ベクトルLA3(t)、ベクトルLA4(t)で表される自由曲
線をパツチベクトルS(u,v) 上に生成し、ステツプSP
27に移つて図13に示すように当該自由曲線を境界曲
線COM1N〜COM4Nに設定する。
【0067】かくしてパツチベクトルS(u,v) を回転移
動して投影し得るか否か判断し、当該判断結果に基づい
て自由曲線を投影することにより、境界曲線COM1〜
COM4を簡易にパツチベクトルS(u,v) に投影するこ
とができる。従つてパツチベクトルS(u,v) 上に簡易に
枠組み空間を形成し得、その分枠組み処理の変更、デザ
インの確認等に利用して、当該自由曲面作成装置12の
使い勝手を向上することができる。
【0068】続いて自由曲面作成装置12は、ステツプ
SP28に移り、ここで図14に示すように境界曲線C
OM1N〜COM4Nで囲まれる枠組み空間に、パツチ
ベクトルBを仮生成する。
【0069】すなわち自由曲面作成装置12は、次式
【数35】
【数36】
【数37】
【数38】 で示すように、当該枠組み空間に内部制御点ベクトルP
11、ベクトルP12、ベクトルP21、ベクトルP22を設定
する。ここで制御点ベクトルP00〜ベクトルP33は、次
【数39】 の関係に保持され、これにより自由曲面作成装置12
は、境界曲線COM1N〜COM4Nの制御点ベクトル
KA10〜ベクトルKA43を用いて、パツチベクトルBを
仮生成する。
【0070】続いて自由曲面作成装置12は、ステツプ
SP29に移り、ここでパツチベクトルBの曲面形状を
パツチベクトルS(u,v) に変形する。すなわちパツチベ
クトルS(u,v) においては、(1)式を分解して、制御
点ベクトルP00〜ベクトルP33に代えて制御点ベクトル
Q00〜ベクトルQ33とおいて、次式
【数40】 で表し得る。
【0071】これに対してパツチベクトルBは、ベクト
ル関数ベクトルR(u,v) を用いて、次式
【数41】 で表し得、これを整理して、次式
【数42】 で表し得る。但し、drp00 〜drp33 は、次式
【数43】 の関係に保持される。
【0072】ここで自由曲面作成装置12は、図15に
示すように、パツチベクトルBのパラメータu,vを10
等分して(42)式に代入することにより、ベクトルR1
(0.1,0.1)、ベクトルR2(0.1,0.2)、ベクトルR3(0.1,
0.3)、……ベクトルR80(0.9,0.8) 、ベクトルR81(0.
9,0.9) で表される点群をパツチベクトルB上に設定す
る。
【0073】さらに各点ベクトルR1(0.1,0.1)〜ベクト
ルR81(0.9,0.9) からパツチベクトルS(u,v) まで垂線
を下ろして交点を検出することにより、各点ベクトルR
1(0.1,0.1)〜ベクトルR81(0.9,0.9) からパツチベクト
ルS(u,v) までの最短距離d1〜d81を検出する。
【0074】さらに自由曲面作成装置12は、次式
【数44】 の演算処理を実行することにより、最短距離d1〜d81
の2乗和を検出する。なおRi(ui,vi)x 、Ri(ui,vi)y
、Ri(ui,vi)z 及びSix、Siy、Sizは、それぞれ点
ベクトルR1(0.1,0.1)〜ベクトルR81(0.9,0.9) 及び交
点のx、y、z座標値を表す。
【0075】ここで内部制御点ベクトルP11、ベクトル
P12、ベクトルP21、ベクトルP22をそれぞれ次式
【数45】 とおくと、最短距離d1〜d81の2乗和においては、次
【数46】 で示すように、内部制御点ベクトルP11〜ベクトルP22
のx、y、z座標値を変数にしてなる関数fで表すこと
ができ、この場合当該関数が最小値になるようにx、
y、z座標値を選定すれば、パツチベクトルBの曲面形
状をパツチベクトルS(u,v) の曲面形状に変形し得るこ
とがわかる。
【0076】ここで(46)式を各変数で微分して0とお
けば、次式
【数47】
【数48】
【数49】
【数50】
【数51】
【数52】
【数53】
【数54】
【数55】
【数56】
【数57】
【数58】 の関係式を得ることができる。
【0077】これに対して dRx /dx11〜 dRz/dz22
においては、(42)式から次式
【数59】
【数60】
【数61】
【数62】
【数63】
【数64】
【数65】
【数66】
【数67】
【数68】
【数69】
【数70】 の関係式を得ることができ、これにより(47)式に(4
2)式を代入して整理して、次式
【数71】 の関係式を得ることができる。
【0078】同様にして(48)式から(58)式を変形
し、x、y、z成分毎に行列の形で表すと、次式
【数72】
【数73】
【数74】 の関係式を得ることができる。
【0079】但し、DPx 、DPy 、DPzは、次式
【数75】
【数76】
【数77】 の関係に保持され、これにより(75)〜(77)式の四元
一次の連立方程式を解けば、内部制御点ベクトルP11〜
ベクトルP22のx、y、z座標値を設定し得ることがわ
かる。
【0080】これにより自由曲面作成装置12において
は、最短距離d1〜d81の2乗和検出結果に基づいて
(75)〜(77)式の演算処理を実行し、内部制御点ベク
トルP11〜ベクトルP22の座標値を検出する。
【0081】さらに検出した座標値でパツチベクトルB
を再生成し、再び点群ベクトルR1〜ベクトルR81を設
定して最短距離d1〜d81の2乗和を得、これにより
(44)〜(77)式の演算処理を繰り返す。
【0082】このとき自由曲面作成装置12において
は、演算処理を繰り返す度に、内部制御点ベクトルP11
〜ベクトルP22の座標値の変化を検出し、当該変化が所
定値以下になると、当該内部制御点ベクトルP11〜ベク
トルP22の座標値でパツチベクトルBを生成した後、ス
テツプSP30に移つて当該処理手順を完了する。
【0083】かくしてパツチベクトルS(u,v) を回転移
動して投影し得るか否か判断し、当該判断結果に基づい
て自由曲線を投影することにより、パツチベクトルS
(u,v)上に簡易に枠組み空間を形成し得、その分当該枠
組み空間を利用してパツチベクトルS(u,v) の曲面形状
で所望の大きさのパツチを生成することができる。
【0084】従つてデザインの確認、完成品から部品を
検討する場合等に利用して、簡易に検討結果を得ること
ができ、その分当該自由曲面作成装置12の使い勝手を
向上することができる。
【0085】実際上、図16に示すように、半球の底面
に所望の形状で境界曲線を入力した後、当該境界曲線を
球面に投影した実験によれば、簡易かつ短時間の内に、
元の球面形状でパツチを生成し得た。
【0086】図11の構成によれば、パツチベクトルS
(u,v) を回転移動して投影し得るか否か判断し、当該判
断結果に基づいて自由曲線を投影することにより、パツ
チベクトルS(u,v) 上に簡易に枠組み空間を形成し得、
その分当該枠組み空間を利用してパツチベクトルS(u,
v) の曲面形状で所望の大きさのパツチを生成すること
ができ、当該自由曲面作成装置の使い勝手を向上し得
る。
【0087】(5)パツチの変換 自由曲面作成装置12は、上述の自由曲線投影の手法を
適用して図17に示す処理手順を実行することにより、
縮退した三辺形パツチを四辺形パツチに変換する。
【0088】ここで縮退した三辺形パツチは、図18に
示すように、四辺形パツチを形成する境界曲線の1つの
長さが0になつたパツチで、次式
【数78】 で示すベクトル関数ベクトルS(u,v) で表現される。こ
のような縮退した三辺形パツチベクトルS(u,v) は、例
えば立方体の各辺にフレツト面を形成した際、頂点の位
置に形成され、4つの項で共通の制御点ベクトルP00の
座標データを用いて処理しなければならないことによ
り、周囲の四辺形パツチに比して演算処理が煩雑な欠点
がある。
【0089】このため自由曲面作成装置12において
は、ステツプSP1からステツプSP2に移り、ここで
オペレータの指定した三辺形パツチベクトルA(ベクト
ルS(u,v) )について制御点ベクトルQ00〜ベクトルQ
33の座標データを取り込んだ後、ステツプSP33に移
る。
【0090】ここで自由曲面作成装置12は、図19に
示すように、制御点ベクトルQ00の両側の境界曲線ベク
トルC1(t)及びベクトルC2(t)について、制御点を設定
し直すことにより、当該境界曲線ベクトルC1(t)及びベ
クトルC2(t)及びベクトルC3(t)をパラメータ0.5 の位
置で2分割する。
【0091】すなわち境界曲線ベクトルC1(t)、ベクト
ルC2(t)及びベクトルC3(t)においては、それぞれ次式
【数79】
【数80】
【数81】 で表し得、これに対応して曲線ベクトルC1A(t) 、ベク
トルC1B(t) 、ベクトルC2A(t) 、ベクトルC2B(t) 、
ベクトルC3A(t) 、ベクトルC3B(t) においては、次式
【数82】
【数83】
【数84】
【数85】
【数86】
【数87】 で表すことができる。ここで点ベクトルC1A0 〜点ベク
トルC3B3は、それぞれ曲線ベクトルC1A(t) 〜ベクト
ルC3B(t) の制御点を表す。
【0092】続いて自由曲面作成装置12は、ステツプ
SP34に移り、ここで図20に示すように頂点ベクト
ルQ00と当該頂点ベクトルQ00と対抗する境界曲線ベク
トルC3の中点(すなわちベクトルC3A(t) 、ベクトル
C3B(t) の制御点ベクトルC3A3 、C3B0 と一致する)
とを結ぶ直線ベクトルLを生成し、当該直線ベクトルL
を頂点ベクトルEから2:1で内分する分割点ベクトル
Hを設定する。これにより当該自由曲面作成装置12に
おいては、当該分割点ベクトルHを基準にして三辺形パ
ツチAを四辺形パツチに変換する。
【0093】すなわち自由曲面作成装置12は、ステツ
プSP35に移り、当該三辺形パツチベクトルAの3つ
の頂点ベクトルQ00、ベクトルQ03、ベクトルQ33を通
過する平面を生成し、当該平面の法線方向を検出する。
【0094】さらに自由曲面作成装置12は、当該法線
方向を投影方向dir(dx、dy、dz) に設定した後、ステツ
プSP36に移る。
【0095】ここで図21に示すように自由曲面作成装
置12は、分割点ベクトルHから投影方向dir に直線を
延長し、三辺形パツチベクトルAと当該直線との交点ベ
クトルHNを検出する。
【0096】続いて自由曲面作成装置12は、ステツプ
SP37に移り、ここで制御点ベクトルC1A3 及び交点
ベクトルHNを結ぶ線分ベクトルD1を設定した後、続
いて制御点ベクトルC2A3 及び交点ベクトルHNを結ぶ
線分ベクトルD2、制御点ベクトルC3A3 及び交点ベク
トルHNを結ぶ線分ベクトルD3を設定する。
【0097】すなわち線分ベクトルD1においては、制
御点ベクトルC1A3及び交点ベクトルHNをそれぞれ制
御点ベクトルPD0、ベクトルPD3とおき、内部制御
点ベクトルPD1、ベクトルPD2を設定して、次式
【数88】 で表すことができる。このようにして線分ベクトルD1
〜D3を設定すると、自由曲面作成装置12は、ステツ
プSP38に移り、図3について上述した処理手順を実
行して線分ベクトルD1〜ベクトルD3を三辺形パツチ
ベクトルAに投影し、これにより図22に示すようにベ
ジエ曲線ベクトルD1N、ベクトルD2N、ベクトルD
3Nを生成する。すなわち自由曲面作成装置12におい
ては、線分ベクトルD1〜D3の両端点の制御点ベクト
ルPD0〜PD3にパツチベクトルAの法線を形成し、
当該法線と垂直に平面を形成する。
【0098】さらに自由曲面作成装置12においては、
線分ベクトルD1〜D3の残りの制御点ベクトルPD1
〜PD2を当該平面に投影し、これにより各両端点の制
御点ベクトルPD0〜PD3から制御辺ベクトルの向き
を検出する。
【0099】続いて自由曲面作成装置12は、線分ベク
トルD1〜D3を表すベジエ式について、パラメータt
を等分して順次値を切り換えることにより、各線分ベク
トルD1〜D3上に投影用の点列ベクトルL(0) 〜ベク
トルL(1.0) を形成した後、当該点列ベクトルL(0) 〜
ベクトルL(1.0) をパツチベクトルA上に投影する。こ
れにより自由曲面作成装置12は、各線分ベクトルD1
〜D3に対応する点列ベクトルLA10〜LA110 をパツ
チベクトルA上に形成した後、(20)式の演算処理を実
行して内部制御点を仮設定する。
【0100】さらに仮設定した内部制御点を用いて(2
1)〜(26)式の演算処理を実行し、これにより線分ベ
クトルD1〜D3をパツチベクトルAに投影してなる曲
線形状のベジエ曲線ベクトルD1N〜D3Nを生成す
る。このようにしてパツチベクトルA上にベジエ曲線ベ
クトルD1N〜D3Nを生成すると、自由曲面作成装置
12は、ステツプSP39に移り、パツチベクトルAを
分割する。
【0101】ここで自由曲面作成装置12は、三辺形パ
ツチベクトルAの頂点ベクトルQ00を間に挟む曲線ベク
トルC1A(t) 及び曲線ベクトルC2A(t) と当該曲線ベク
トルC1A(t) 及び曲線ベクトルC2A(t) と対抗するベジ
エ曲線ベクトルD1N及びベクトルD2Nとで境界曲線
を形成し、当該境界曲線で第1の枠組み空間を形成す
る。
【0102】同様にして頂点ベクトルQ03を間に挟む曲
線ベクトルC1B(t) 及び曲線ベクトルC3A(t) と当該曲
線ベクトルC1B(t) 及び曲線ベクトルC3A(t) と対抗す
るベジエ曲線ベクトルD1N及びベクトルD3Nとで境
界曲線を形成し、当該境界曲線で第2の枠組み空間を形
成すると共に、頂点ベクトルQ33を間に挟む曲線ベクト
ルC2B(t) 及び曲線ベクトルC3B(t) と当該曲線ベクト
ルC2B(t) 及び曲線ベクトルC3B(t) と対抗するベジエ
曲線ベクトルD3N及びベクトルD2Nとで境界曲線を
形成し、当該境界曲線で第3の枠組み空間を形成する。
【0103】続いて自由曲面作成装置12は、(27)〜
(77)式の演算処理を実行することにより、図11につ
いて上述した処理手順を実行して第1の枠組み空間にパ
ツチベクトルB1を生成する。
【0104】続いて自由曲面作成装置12は、ステツプ
SP40に移り、当該パツチベクトルB1の曲面形状が
元のパツチベクトルAの曲面形状になるように変形した
後、ステツプSP41に移る。ここで自由曲面作成装置
12は、同様にして第2及び第3の枠組み空間にパツチ
ベクトルB2、ベクトルB3を生成した後、元のパツチ
ベクトルAの曲面形状に変形し、ステツプSP42に移
つて当該処理手順を終了する。
【0105】これにより自由曲面作成装置12は、元の
三辺形パツチベクトルAを3つの四辺形パツチベクトル
B1〜ベクトルB3で表現し、例えば曲面の変形等の演
算処理において、簡易かつ高い精度で演算処理すること
ができる。
【0106】さらにこのようにすれば、全体形状を簡易
に四辺形パツチだけで表現し得、その分全体を接平面連
続の条件で接続して、全体として滑らかな曲面形状をデ
ザインすることができる。
【0107】図17の構成によれば、三辺形パツチの頂
点を通過する平面を基準にして、当該平面の法線方向
に、三辺形パツチの頂点及び対抗する面を基準にして生
成した線分を投影して三辺形パツチ上にベジエ曲線を生
成し、当該ベジエ曲線で枠組み空間を形成した後、元の
曲面形状のパツチを生成することにより、簡易かつ高い
精度で元の三辺形パツチを四辺形パツチに変換すること
ができる。
【0108】(6)他の実施例 なお上述の実施例については、複数の四辺形パツチに自
由曲線、境界曲線を投影する場合について述べたが、本
発明はこれに限らず、必要に応じて1つの四辺形パツチ
に投影する場合、三辺形パツチに投影する場合に広く適
用することができる。
【0109】さらに上述の実施例については、曲線でな
る自由曲線、境界曲線を投影する場合について述べた
が、本発明はこれに限らず、直線をベジエ曲線で表して
投影するようにしてもよい。
【0110】さらに上述の実施例においては、1つのパ
ツチ内に境界曲線を投影してパツチを切り出す場合につ
いて述べたが、本発明はこれに限らず、複数のパツチか
ら切り出すようにしてもよい。
【0111】
【発明の効果】上述のように本発明によれば、パツチを
回転移動して投影し得るか否か判断し、当該判断結果に
基づいて投影対象の節点及び投影対象上に設定した点列
をパツチに投影し、投影結果に基づいてパツチ上に自由
曲線を生成してデイスプレイ上に表示することにより、
簡易かつ高い精度で自由曲線を投影した形状の自由曲線
を生成し得る自由曲線作成方法を得ることができる。
【0112】このとき元のパツチが複数の場合、各パツ
チ毎の回転移動して投影可能か否か判断することによ
り、複数のパツチ上に自由曲線を投影した形状の自由曲
線を簡易かつ高い精度で生成し得る自由曲線作成方法を
得ることができる。
【0113】さらに境界曲線を投影することにより、投
影対象のパツチ上に、境界曲線を投影した形状で枠組み
空間を生成し得る自由曲線作成方法を得ることができ
る。
【0114】またこのようにして形成した枠組み空間に
パツチを生成し、元のパツチの曲面形状に変形して、簡
易に、元の曲面形状で所望の大きさのパツチを生成し得
る自由曲面作成方法を得ることができる。
【0115】
【図面の簡単な説明】
【図1】本発明の一実施例によるCAD/CAMシステ
ムの全体構成を示すブロツク図である。
【図2】自由曲線の説明に供する略線図である。
【図3】曲線投影の説明に供するフローチヤートであ
る。
【図4】オペレータの指定したパツチを示す略線図であ
る。
【図5】パツチの回転の説明に供する略線図である。
【図6】点の投影の説明に供するフローチヤートであ
る。
【図7】制御辺ベクトル生成の説明に供する略線図であ
る。
【図8】交点生成の説明に供する略線図である。
【図9】ベジエ曲線生成の説明に供する略線図である。
【図10】実際の処理を示す略線図である。
【図11】境界曲線を投影してパツチを生成する処理手
順を示すフローチヤートである。
【図12】データ入力の説明に供する略線図である。
【図13】境界曲線の投影の説明に供する略線図であ
る。
【図14】パツチの仮生成の説明に供する略線図であ
る。
【図15】パツチの変形の説明に供する略線図である。
【図16】実際に処理したパツチを示す略線図である。
【図17】パツチの変換の処理手順を示すフローチヤー
トである。
【図18】縮退した三辺形パツチを示す略線図である。
【図19】境界曲線の分割の説明に供する略線図であ
る。
【図20】分割点設定の説明に供する略線図である。
【図21】パツチの分割の説明に供する略線図である。
【図22】パツチの仮設定の説明に供する略線図であ
る。
【図23】自由曲面の説明に供する略線図である。
【符号の説明】
10……CAD/CAMシステム、12……自由曲面作
成装置、P(11)、P(11)1 、P(11)2 ……節点、制御
点、R(t) ……自由曲線、S(u,v) 、S(u,v)1……パツ
チ。
フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G06F 17/50 G06T 15/00 JICSTファイル(JOIS)

Claims (4)

    (57)【特許請求の範囲】
  1. 【請求項1】コンピユータを用いて、3次元空間上の2
    つの節点間に制御点を生成し、上記節点及び上記制御点
    に基づいて、所定のパラメータを用いたベクトル関数で
    物体の表面形状を表す自由曲線を生成する自由曲線作成
    方法において、 枠組み空間に形成された所定のベクトル関数で表される
    上記物体の表面形状を表すパツチについて、投影方向が
    x方向、y方向又はz方向になるように上記パツチを回
    転移動した後、回転移動したパツチの制御点について、
    y及びz座標値、x及びz座標値又はx及びy座標値の
    最大値及び最小値を検出し、 該検出結果に基づいて、投影対象の自由曲線について、
    上記節点を上記投影方向から元のパツチに投影可能か否
    か判断し、 該判断結果に基づいて、上記投影対象の自由曲線につい
    て、上記節点を上記投影方向から上記元のパツチに投影
    してなる投影節点を生成し、 上記投影対象の自由曲線上に点列を生成し、 上記検出結果に基づいて、上記点列の各点について、上
    記投影方向から元のパツチに投影可能か否か判断し、 該判断結果に基づいて、上記点列の各点を上記投影方向
    から元のパツチに投影してなる投影点列を形成し、 上記投影節点及び上記投影点列に基づいて、上記投影対
    象の自由曲線を、上記投影方向から上記元のパツチ上に
    投影した形状の自由曲線を生成し、 当該投影した形状の自由曲線を上記物体の表面形状とし
    てデイスプレイ上に表示 することを特徴とする自由曲線
    作成方法。
  2. 【請求項2】上記元のパツチは複数でなり、 投影方向がx方向、y方向又はz方向になるように上記
    各パツチを回転移動した後、回転移動した各パツチの制
    御点について、y及びz座標値、x及びz座標値又はx
    及びy座標値の最大値及び最小値を検出し、 該検出結果に基づいて、投影対象の自由曲線について、
    上記節点を上記投影方向から上記元の各パツチに投影可
    能か否か判断し、 該判断結果に基づいて、上記投影対象の自由曲線につい
    て、上記節点を上記投影方向から上記元のパツチに投影
    してなる投影節点を生成し、 上記検出結果に基づいて、上記点列の各点について、上
    記投影方向から元の各パツチに投影可能か否か判断し、 該判断結果に基づいて、上記点列の各点を上記投影方向
    から元の各パツチに投影してなる投影点列を形成し、 上記投影節点及び上記投影点列に基づいて、上記投影対
    象の自由曲線を、上記投影方向から上記元の複数のパツ
    チ上に投影した形状の自由曲線を生成し、 当該投影した形状の自由曲線を上記物体の表面形状とし
    てデイスプレイ上に表示 することを特徴とする請求項1
    に記載の自由曲線作成方法。
  3. 【請求項3】上記投影対象の自由曲線は、所定の枠組み
    空間を形成する境界曲線でなり、 上記投影対象の自由曲線を、上記投影方向から上記元の
    パツチ上に投影した形状の自由曲線を上記元のパツチ上
    に生成し、上記元のパツチ上に生成した上記自由曲線を
    境界曲線にしてなる枠組み空間を生成することを特徴と
    する請求項1に記載の自由曲線作成方法。
  4. 【請求項4】コンピユータを用いて、所定の枠組み空間
    を形成する境界曲線を、所定の投影方向から物体の表面
    形状を表す元のパツチ上に投影した形状の自由曲線を上
    記元のパツチ上に生成することにより、上記元のパツチ
    上に生成した上記自由曲線を境界曲線にしてなる枠組み
    空間を生成し、 該枠組み空間にパツチを仮生成し、 該仮生成したパツチを変形して、上記元のパツチの曲面
    形状のパツチを生成し、 上記元のパツチ上に生成する上記自由曲線は、 上記元のパツチについて、上記投影方向がx方向、y方
    向又はz方向になるように上記元のパツチを回転移動し
    た後、回転移動したパツチの制御点について、y及びz
    座標値、x及びz座標値又はx及びy座標値の最大値及
    び最小値を検出し、 該検出結果に基づいて、投影対象の上記自由曲線につい
    て、節点を上記投影方向から元のパツチに投影可能か否
    か判断し、 該判断結果に基づいて、上記投影対象の上記自由曲線に
    ついて、上記節点を上記投影方向から上記元のパツチに
    投影してなる投影節点を生成し、 投影対象の上記自由曲線上に点列を生成し、 上記検出結果に基づいて、上記点列の各点について、上
    記投影方向から元のパツチに投影可能か否か判断し、 該判断結果に基づいて、上記点列の各点を上記投影方向
    から元のパツチに投影してなる投影点列を形成し、 上記投影節点及び上記投影点列に基づいて生成した上
    投影対象の自由曲線を、上記投影方向から上記元のパツ
    チ上に投影した形状の自由曲線を生成し、 当該投影した形状の自由曲線を上記物体の表面形状とし
    てデイスプレイ上に表示する ことを特徴とする自由曲面
    作成方法。
JP03313634A 1991-10-30 1991-10-30 自由曲線作成方法及び自由曲面作成方法 Expired - Fee Related JP3137245B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP03313634A JP3137245B2 (ja) 1991-10-30 1991-10-30 自由曲線作成方法及び自由曲面作成方法
US08/389,562 US5557719A (en) 1991-10-30 1995-02-15 Method and apparatus for forming objects based on free-form curves and free-form surfaces from projecting nodal points and a series of points onto a patch

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP03313634A JP3137245B2 (ja) 1991-10-30 1991-10-30 自由曲線作成方法及び自由曲面作成方法

Publications (2)

Publication Number Publication Date
JPH05128216A JPH05128216A (ja) 1993-05-25
JP3137245B2 true JP3137245B2 (ja) 2001-02-19

Family

ID=18043683

Family Applications (1)

Application Number Title Priority Date Filing Date
JP03313634A Expired - Fee Related JP3137245B2 (ja) 1991-10-30 1991-10-30 自由曲線作成方法及び自由曲面作成方法

Country Status (2)

Country Link
US (1) US5557719A (ja)
JP (1) JP3137245B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6283507B1 (en) 1997-11-28 2001-09-04 Asahi Kasei Kogyo Kabushiki Kaisha Lightweight air bag

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69414996T2 (de) * 1994-04-28 1999-04-15 Hewlett Packard Gmbh Verfahren zur Ausführung Boolescher Operationen auf geometrischen Objekten in einem rechnergestützen Entwurfsystem
US5818452A (en) * 1995-08-07 1998-10-06 Silicon Graphics Incorporated System and method for deforming objects using delta free-form deformation
US6111588A (en) * 1996-12-05 2000-08-29 Adobe Systems Incorporated Creating and modifying curves on a computer display
US5936627A (en) * 1997-02-28 1999-08-10 International Business Machines Corporation Method and system for performing perspective divide operations on three-dimensional graphical object data within a computer system
JPH10293854A (ja) * 1997-04-18 1998-11-04 Koubundou:Kk 曲線表示方法及び装置、同曲線を表すデータの作成方法及び装置、並びに同表示方法及び作成方法を実現するためのプログラムを記録した記録媒体
US7196702B1 (en) 1998-07-23 2007-03-27 Freedesign, Inc. Geometric design and modeling system using control geometry
US8836701B1 (en) 1998-07-23 2014-09-16 Freedesign, Inc. Surface patch techniques for computational geometry
US6981695B1 (en) * 2003-10-14 2006-01-03 Polaris Industries Inc. All terrain vehicle with multiple winches
US8576232B2 (en) * 2001-12-31 2013-11-05 Siemens Product Lifecycle Management Software Inc. Apparatus, method, and system for drafting multi-dimensional drawings
US20080137969A1 (en) * 2004-04-14 2008-06-12 Imperial College Innovations Limited Electrical And Electronic Engineering Building Estimation of Within-Class Matrix in Image Classification
DE102004035970A1 (de) * 2004-07-23 2006-02-16 Sirona Dental Systems Gmbh Verfahren zur Bearbeitung eines digitalisierten Werkstücks, insbesondere von dreidimensionalen Modellen von herzustellenden Zahnersatzteilen und Vorrichtung
US7589720B2 (en) * 2004-08-04 2009-09-15 Microsoft Corporation Mesh editing with gradient field manipulation and user interactive tools for object merging
US7097540B1 (en) 2005-05-26 2006-08-29 General Electric Company Methods and apparatus for machining formed parts to obtain a desired profile
US8180605B1 (en) * 2005-11-23 2012-05-15 Livermore Software Technology Corporation Methods and systems for creating a smooth contact-impact interface in finite element analysis
US11907617B2 (en) 2008-07-18 2024-02-20 Cad-Sense Llc Surface patch techniques for computational geometry
US8737769B2 (en) * 2010-11-26 2014-05-27 Microsoft Corporation Reconstruction of sparse data
CN106604006B (zh) * 2016-12-20 2020-07-21 深圳市Tcl高新技术开发有限公司 一种适用于投影电视的曲面幕布投影方法及系统
KR102197652B1 (ko) * 2018-12-14 2021-01-04 네이버웹툰 유한회사 선따기 훈련 데이터 생성 방법, 시스템 및 컴퓨터 프로그램

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5344298A (en) * 1984-08-08 1994-09-06 3D Systems, Inc. Apparatus for making three-dimensional objects by stereolithography
US4763280A (en) * 1985-04-29 1988-08-09 Evans & Sutherland Computer Corp. Curvilinear dynamic image generation system
US4829456A (en) * 1985-06-07 1989-05-09 Hitachi, Ltd. Three-dimensional surface display method
US4646251A (en) * 1985-10-03 1987-02-24 Evans & Sutherland Computer Corporation Computer graphics, parametric patch parallel subdivision processor
NL8503461A (nl) * 1985-12-17 1986-04-01 Oce Nederland Bv Werkwijze voor het genereren van lijnstukken.
US4890242A (en) * 1986-06-05 1989-12-26 Xox Corporation Solid-modeling system using topology directed subdivision for determination of surface intersections
US4999789A (en) * 1987-02-05 1991-03-12 Hewlett-Packard Co. Method and apparatus for trimming B-spline descriptions of patches in a high performance three dimensional graphics system
US5191642A (en) * 1987-04-09 1993-03-02 General Electric Company Method for efficiently allocating computer resource for real time image generation
US4949281A (en) * 1987-04-23 1990-08-14 H. Berthold Ag Method and apparatus for generating and producing two-dimensional graphic object by polynominal parametric curves
CA1309198C (en) * 1987-12-10 1992-10-20 Carlo J. Evangelisti Parallel rendering of smoothly shaded color triangles with anti-aliased edges for a three dimensional color display
GB8728836D0 (en) * 1987-12-10 1988-01-27 Quantel Ltd Electronic image processing
US5214754A (en) * 1988-06-29 1993-05-25 Fujitsu Limited Method and apparatus for approximating polygonal line to curve
US5033005A (en) * 1988-09-06 1991-07-16 Schlumberger Technologies, Inc. Analytical computer-aided machining system and method
US5241654A (en) * 1988-12-28 1993-08-31 Kabushiki Kaisha Toshiba Apparatus for generating an arbitrary parameter curve represented as an n-th order Bezier curve
US5121334A (en) * 1989-06-08 1992-06-09 Regents Of The University Of Minnesota Method and apparatus for automated machining of objects of complex and unique geometry
US5121333A (en) * 1989-06-09 1992-06-09 Regents Of The University Of Minnesota Method and apparatus for manipulating computer-based representations of objects of complex and unique geometry
JPH0776991B2 (ja) * 1989-10-24 1995-08-16 インターナショナル・ビジネス・マシーンズ・コーポレーション Nurbsデータ変換方法及び装置
US5129054A (en) * 1990-03-12 1992-07-07 International Business Machines Corporation Specifying 3d reference points in 2d graphic displays
CA2040273C (en) * 1990-04-13 1995-07-18 Kazu Horiuchi Image displaying system
JP3049096B2 (ja) * 1990-12-20 2000-06-05 株式会社リコー 曲面間のフィレット面生成方式

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6283507B1 (en) 1997-11-28 2001-09-04 Asahi Kasei Kogyo Kabushiki Kaisha Lightweight air bag

Also Published As

Publication number Publication date
JPH05128216A (ja) 1993-05-25
US5557719A (en) 1996-09-17

Similar Documents

Publication Publication Date Title
JP3137245B2 (ja) 自由曲線作成方法及び自由曲面作成方法
Pottmann Architectural geometry and fabrication-aware design
JPH0535826A (ja) 自由曲線作成方法及び自由曲面作成方法
CN103544733B (zh) 基于统计形状分析的三维人体头部三角网格模型建立方法
CN101356549B (zh) 用于生成对动画模型性态进行近似的膨化组件的方法
JP4185698B2 (ja) メッシュ生成方法
JPH027174A (ja) 図形処理法
JPH0973559A (ja) モーフィング編集装置
JP3512091B2 (ja) 自由曲面作成方法及び自由曲面作成装置
Gray et al. A simulator for origami-inspired self-reconfigurable robots
US6084586A (en) Method and apparatus for forming objects based on free-form curves and free-form surfaces generated by minimizing sum of distances from an input series of points to a free-form curve
Celniker ShapeWright--finite element based free-form shape design
Vukašinović et al. Introduction to freeform surface modelling
JPH07121579A (ja) 有限要素メッシュ生成方法
JP2000172742A (ja) 曲線変形処理方法、曲線変形処理装置、曲線変形用処理プログラムが記憶された記憶媒体、曲面変形処理方法、曲面変形処理装置および曲面変形用処理プログラムが記憶された記憶媒体
JP3187809B2 (ja) 物体の表面形状データ作成方法
JP3187808B2 (ja) 物体の表面形状データ作成装置
JP2737126B2 (ja) 物体の断面形状画像データ作成方法
JP2897245B2 (ja) 自由曲線作成方法
Lechner et al. Augmented Reality for Forming Technology–Visualisation of Simulation Results and Component Measurement
JP2595568B2 (ja) オフセツトデータ作成方法
JP3109681B2 (ja) 物体の表面形状データ作成方法及びその装置
Ustinova Modeling the Laying Material Trajectory on the Technological Mandrel Surface Specified by an Irregular Spatial Point Set
JP3823596B2 (ja) 動作シミュレーション用データの圧縮方法
JP2913663B2 (ja) 物体の自由曲面作成方法

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees