JP3162391B2 - 有向オブジェクトのコンピュータエイド形状設計のための関連エンティティシステム - Google Patents

有向オブジェクトのコンピュータエイド形状設計のための関連エンティティシステム

Info

Publication number
JP3162391B2
JP3162391B2 JP51120993A JP51120993A JP3162391B2 JP 3162391 B2 JP3162391 B2 JP 3162391B2 JP 51120993 A JP51120993 A JP 51120993A JP 51120993 A JP51120993 A JP 51120993A JP 3162391 B2 JP3162391 B2 JP 3162391B2
Authority
JP
Japan
Prior art keywords
objects
entities
class
geometric
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
JP51120993A
Other languages
English (en)
Other versions
JPH07502355A (ja
Inventor
ジョン エス ジュニア レッチャー
Original Assignee
エアロハイドロ インク
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 エアロハイドロ インク filed Critical エアロハイドロ インク
Publication of JPH07502355A publication Critical patent/JPH07502355A/ja
Application granted granted Critical
Publication of JP3162391B2 publication Critical patent/JP3162391B2/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/20Finite element generation, e.g. wire-frame surface description, tesselation

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)
  • Orthopedics, Nursing, And Contraception (AREA)

Description

【発明の詳細な説明】 発明分野 本発明は、データ構造における2次元および3次元形
状オブジェクトの表示方法に関する。この方法は特に、
曲線、曲面、立体などで構成される複雑な形状オブジェ
クトのCADによる設計や数値制御による製造の分野で有
用である。
技術背景 幾何学描写は、実際に製造される物体の設計における
基本要素である。最近まで、幾何学描写は種としてその
物体の縮尺図面を引くことによって行われていた。ここ
で20年で、コンピュータエイド形状設計(CAGD:Compute
r−aided Geometric Design)が製図にとって代わっ
た。CAGDでは、オブジェクトの幾何学配置の数学的表示
は、コンピュータのメモリに記憶され、コンピュータの
ユーザがそれを操作する。CAGDによって設計された図
は、プロット装置上に生成された縮尺図面となる場合も
あるし、別のケースではCAGDによるオブジェクト表示図
が数値制御(NC)に送られてその物体が自動的に生産さ
れる。また、視覚的な側面を別にした設計の解析および
評価(例えば有限要素の応力解析)の基礎としても機能
する。
CAGDプログラムの公知例として、AutoDesk社(Califo
rnia,Sausalito)のAutoCADがある。紙上の製図プロセ
スをシュミレートする2次元環境があれば、AutoCADは
3次元環境を生成する。ここでは、点、線、曲線、曲
面、立体を含む多種の幾何学エンティティ(entities)
が形成され、配置され編集されて、非常に複雑な物体の
構成を正確に描写する。AutoCADほど一般的ではないに
しても特別の目的で使用されるその他のCAGDプログラム
もある。例えば、船艇設計でなだらかな(fair)曲面を
生成する特殊作業に用いられるAeroHydro社のFAIRLINE
がある。また、ワークステーションやメインフレームコ
ンピュータ用のCAGDプログラム(例えばIntergraph社
(Ala/Huntsville)のIGDS)は、不均一有理数B−spli
ne(NURBS:Nonuniform rational B−spline)曲面など
のさらにフレキシブルな曲面とソリッドモデルを生成す
る。
CAGDプログラムでは、ユーザコマンドの実行によっ
て、またはファイルからのデータ読み出しの結果とし
て、各オブジェクトが生成され、これと同時にそれらオ
ブジェクトが実在する。ほとんどの場合、新たなオブジ
ェクトはすでに存在しているひとつ以上のオブジェクト
との意図的な関係を用いて位置設定され、方向づけられ
構成される。例えば、ラインBはその端点のひとつがす
でに存在するラインAの一方の端点となるように生成さ
れる。しかしながら、ラインBが引かれた時点でユーザ
が明確に想定していた関係は、CAGDプログラム中に保持
されない。したがって、ラインAがあとで引き直された
場合、ラインBはそのままの場所に残り、ラインAとは
接続しなくなる。従来のCAGDによる幾何学表示は、基本
的に独立した多数の単純なオブジェクトから構成され、
オブジェクト間の関係はそれらが生成された方法と順序
に付随するか、プログラムには記憶されない。
設計が常に前進方向にだけ行われるのなら、関係づけ
情報の消滅はさほど問題ではない。プロジェクトを開始
してから設計が完了するまで順次オブジェクトを追加し
てゆき、それを保存すればよいからである。しかし周知
のとおり、光学設計で前進のみのプロセスはほとんどな
く、むしろ反復プロセスが一般的である。すなわち、あ
る段階では設計は進行されるが、それが解析、評価され
て問題点があれば、少し前の段階に戻ってそこからまた
設計を進め直す必要がある。設計者の技術、設計図の困
難度、最適化などの目的に応じて、通常は多数の反復サ
イクルが必要である。別の設計要素を書き直すことによ
って壊された関係を再度記憶するためには、設計者は前
進段階ごとにその前の段階で行ったのと同じ操作を繰り
返さねばならない(更新)。例えば、ラインBの端部を
もう一度ラインAと結合するために移動させる必要があ
るが、これを設計中の更新のたびに繰り返さねばならな
い。CAGDシステムはこれらの更新を容易にするための拡
張編集機能を有する。
新たな要件を満たすために以前に存在した設計を変更
する場合にも、同様の問題が起きる。前段階の設計プロ
セスが変更されると、その段階以降のすべての設計プロ
セスを進行方向に少なくとも1回繰り返し、壊された関
係を再度記憶させる。特に、幾何学関係およびその関係
を達成するまでの一連の設計段階が失われてしまった場
合(ユーザによるアクセス可能は方法で保持されない場
合)、更新プロセスは非常に困難となり、エラーが発生
しやすく時間もかかる。
この問題の部分的な解決法はある。AutoCADを含むい
くつかのCAGDプログラムでは、ラインAとBは「ポリラ
イン(Polyline)」エンティテイの一部として共に生成
され、共有点を含むどの端点が移動されてもそれらの接
続性は自動的に維持される。Christensen(米国特許第
4,663,616号)はこのような固着特性のコンセプトを開
示しており、選択された直線とそれらが意図的に結ばれ
たオブジェクトとの接続が維持できる。Draney(米国特
許第4,829,446号)は、2次元連続番号上に点を与え、
数値を与えられた点との関係付け(X,Y座標オフセッ
ト)によって2次元上に別の点(相対点)を位置させる
コンセプトを開示している。またO、Oosterholt(米国
特許第4,868,766号)は依存性の木構造においてあらゆ
る幾何学オブジェクトに名称を与え、各オブジェクトを
多くともひとつ別のオブジェクトとの関係付けにおいて
配置するコンセプトを開示している。また、Ota et al.
(米国特許第5,003,498号)のCAGDシステムでは、いく
つかのオブジェクトに名称が与えられ、それらオブジェ
クトは名称によって別のさらに複雑なオブジェクトの構
築に使用される。Saxton(米国特許第4,912,657号)
は、設計要素が記憶されて異なるリーディングディメン
ションに再生されるモジュラーパラメトリック設計シス
テムを開示している。
上述のように、CAGDサーフェイスモゼルシステムは、
B−splineマスター曲線集合でlofted(放物湾曲され
た)陽三次曲線splineから生成される一種類の曲面(例
えばFAIRLINE曲面)だけを取り扱う。この曲面な船体を
設計領域に役立つ広範囲の多彩な形状にモデリングされ
るが、生成できない形も多くある。例えば、正確な円断
面や完全に丸い船首などはいずれも潜水船体の一般的な
特徴であるが、これらは形成できない。また、AutoCAD
など機械設計に適したCAGDプログラムは単純な曲面(線
識面(ruled surface)や回転面など)は処理するが、
B−splineパラメトリック曲面などのより複雑な自由曲
面は扱わない。単一のCAGD環境で広範囲の曲線や曲面の
種類を扱えると非常に便利ではあるが、必要なプログラ
ミングの複雑さのせいで、これまではワークステーショ
ンやメインフレームCAGDシステムでのみ可能であった。
この問題点の解決として、より単純な有効曲面集合を
特別のケースとして含み、十分なフレキシビリティを有
する単一の種類のサーフェイスのみを扱うものがある。
非均一有理数B−spline(NURBS)曲面がこの役割を果
たすものとして提案されてきた。NURBS曲面は、特別の
ノット(knots)および係数の選択で正確に円弧や楕円
やその他の有用な円錐曲線を表わせるからである。この
方法の失点は、所望の曲線を達成るためのノット部分と
係数との間の関係があいまいであり、円形シリンダなど
の単純な曲面を決定するのでさえ莫大な量のデータが必
要とし、結果としてのパラメータ表示が不均一になり、
fairnessや展開可能性など特別の要件を有する曲面の相
互作用設計にはNURBS曲面は適切でない。
CAGDサーフェイスモデルシステムでは、曲面と曲面の
交差はプログラムにおいてもユーザインターフェイスに
おいても複雑さを有する。一般的な使用法では、まず曲
面Yを生成し、ついでこの曲面Yに交差するように曲面
Zを生成する。次のステップはYとZとの交差曲線を見
つけ、その曲線をはみ出るY部分および/またはZ部分
を切り棄てる(トリミングする)。2つの曲面の交差の
課題いくつかの理由で生来困難なものである。交差の任
意の一点を見つけるには、通常非直線的な3つの同時等
式を解く必要がある。これらの等式は交差角度が小さい
場合に悪条件となる。交差は単一の点、弧、閉じた曲
線、自己交差曲線、およびこれらの要素の多様な組み合
わせを含む。曲面は実際ある無限領域を占めてもよい。
交差曲線の発見されたなら、どの曲面のどの部分が削除
されるのか正確に示すのは困難である。トリミング後
は、パラメトルック曲面パッチはもはや位相的に四辺形
ではなく、従来通りのパラメータ表示はされない。
発明の目的 本発明の目的は、形状モデルの幾何学オブジェクト間
の基本的な依存関係を捕獲し、記憶し、それを用いるこ
とによって、形状モデルの変更及び更新に必要とされる
作業を最小にするCAGDか経を提供することにある。第2
の目的は、非常に多様な曲線や曲面の種類を融通性を持
って扱うことのできるCAGDサーフェイスモデル環境の提
供にある。第3の目的は、第1の箇所でお互いに正確に
接触、接合する曲面を構成し、モデルの更新時にもこの
ような接触および接合を自動的に維持することによっ
て、曲面間の交差やトリミングの困難性を大幅に回避す
ることにある。
発明の要旨 3次元設計において点の位置は、デカルト座標(x,y,
z)を用いて表わすこととする。本発明の基本原理は平
面設計や、3次元以上の設計にも適用され、また非デカ
ルト座標を用いてもよい。
定義:エンティティ(entity)とは本システム内で定義
される幾何学オブジェクトの種類であり、それを実際に
描写するには特定のデータ集合を必要とする。一般的な
CAGDエンティティは、点、直線、弧、Bezierパッチであ
る。
定義:オブジェクト(object)とは、エンティティを実
際描写したものである。例えば、座標(1.,2.,3.)に位
置する点。
定義:ロジカルモデル(logical model)とは、オブジ
ェトの有効な集まり、すなわち、すべての依存性が満た
されている有効なオブジェクトの集合。
定義:絶対モデル(absolute model)とは、ロジカルモ
デルからコンピュータ計算されて形状表示されたもので
あり、すべての点は絶対座標点で表わされる。
上記第1の目的(依存関係の利用)は、モデル中の各
オブジェクトに固有の名称(または数字)を与え、一連
のエンティティの種類を定義および実行することによっ
て達成される。一連のエンティティの現実描写は、オブ
ジェクト名(または数字)を参照して、モデル中の別の
オブジェクトに依存して達成される。本発明によれば、
オブジェクト間の依存関係は有向グラフ(directed gr
aph=digraph;ダイグラフ)の論理形式をとる。データ
構造はプログラムに組み込まれ、ユーザによって操作さ
れ、特定の数値データとともに記憶されて、モデルの完
全な内部描写を形成する。また、任意の成分オブジェク
トが変更された場合に選択的にモデルを更新するために
も使用される。このように依存関係のデータ構造を利用
することによって自動的に維持されるモデル特性を、以
下「恒久」特性とする。
依存ダイグラフの各交点(node)はオブジェクトを表
わし、方向付けられた稜線はあるオブジェクトの別のオ
ブジェクトへの依存性を示す。依存性は多様な形態を取
る、例えば、相対点はその位置に関して別の点オブジェ
クトに依存する。B−spline曲線は、その曲線の頂点と
なる点オブジェクトの各々に依存して決定される。Loft
ed(ロフト)曲面は、湾曲される部分の曲線オブジェク
トの各々に依存し、これらの曲線はさらにその曲線を決
定するための点オブジェクトの各々に依存する。依存性
は多レベルに拡張する。あるオブジェクトはその他の多
数のオブジェクトに依存し、多数の他のオブジェクトが
ひとつのオブジェクトに依存することもある。
オブジェクトのいくつかは、他のオブジェクトに依存
せずに絶対的な意味で定義される。例えば、絶対点(ab
solute point)はその座標点(x,y,z)によってのみ特
定される。
エンティティをまずその次元によって分類し、ついで
その主要な依存性で定義するとわかりやすい。
点は0次元オブジェクトである。
絶対点(absolute point)とは、なにものにも依存し
ない点である。
相対点(relative point)とは、別の点に依存する点
である。
ビード(bead)とは、曲線上に位置する点である。
マグネット(magnet)とは、曲面上に位置する点であ
る。
リング(ring)とは、スネーク(snake)上に位置す
る点である。
曲線は1次元オブジェクトである。
直線は、2つの点に依存して決定される。
弧は、3つの点に依存して決定される。
B−spline曲線は、2つ以上の点に依存して決定され
る。
C−spline曲線は、2つ以上の点に依存して決定され
る。
曲面は2次元オブジェクトである。
Translation(並進)曲面は、2つの曲線に依存して
決定される。
Ruled(線識)曲面は、2つの曲線に依存して決定さ
れる。
Revolution(回転)曲面は、1つの曲線と2つの点に
依存して決定される。
C−Lofted曲面は、2つ以上の曲線に依存して決定さ
れる。
Blended曲面は、3つ以上の曲線に依存して決定され
る。
B−spline曲面は、点アレイに依存して決定される。
スネーク(snake)とは、1次元オブジェクトであ
り、パラメトリック曲面上に位置するパラメトリック曲
線である。いかなるスネークもそれが含まれる曲面に依
存する。
直線スネーク(Line Snake)は、2つのマグネットま
たはリングに依存して決定される。
ジオデシック(Geodesic:測地線)スネークは、2つ
のマグネットまたはリングに依存して決定される。
弧スネーク(Arc Snake)は、2つのマグネットまた
はリングに依存して決定される。
B−splineスネークは、2つ以上のマグネットまたは
リングに依存して決定される。
C−splineスネークは、2つ以上のマグネットまたは
リングに依存して決定される。
上記のエンティティのリストは例として挙げたもので
あり、これだけに限定されるものではない。このエンテ
ィティシステムはパラメトリック立体(パラメータu、
v、wを有する3次元オブジェクト)や、この立体パラ
メトリック座標システムを用いて立体に関連して位置す
る点、曲線、曲面も含むように特別に拡張されてもよ
い。
別の分類として、各エンティティクラスが満たす依存
性の役割によって分類する方法がある。
点が要求されると、任意の点エンティティが使用され
る。
ビードが要求されると、ビードだけが使用される。
リングが要求されると、マグネットまたはリングが使
用される。
リングが要求されると、リングだけが使用される。
曲線が要求されると、任意の点、曲線、またはスネー
クエンティティが使用される。
スネークが要求されると、スネーク、マグネット、ま
たはリングが使用される。
曲面が要求されると、曲面のみが使用される。
これらのエンティティのデータの一部としてパラメト
リック座標が使用されてもよい。例えば、曲線は、一方
の端点から他端点まで0から1の間で変化するパラメー
タtを用いてパラメータ表示され得る。そして、その曲
線とtの値を特定することによって、絶対ビードの位置
が設定される。曲面はパラメータu、vを用いてパラメ
ータ表示され得る。各パラメータは0から1まで個別に
変化する。この曲面とパラメータ(u,v)の値を特定す
ることによって、絶対マグネットの位置が設定される。
スネークは、それが含まれる2次元u,vパラメータ曲面
上のパラメトリック曲線である。
ロジカモデル表示の有効な形態のひとつとして、各オ
ブジェクトにつきひとつのレコードを有するデキスト作
図がある。オブジェクトのレコードには、エンティティ
の種類、オブジェクトの名称、オブジェクトの属性
(色、可視性など)、その他オブジェクトの写実描写に
必要とされる可変データが含まれる。このような可変デ
ータは、あらかじめ定義された各エンティティで特有の
順序(order)で表わされる。例えば、前述のラインA
とラインBの接続課題は、本発明によれば以下の5つの
レコードで解決される。
AbsPoint A1 14 1 1.1.3.; AbsPoint A2 14 1 2.1.3.; Line Line_A 13 1 A1 A2; AbsPoint B2 14 1 2.3.3.; Line line_B 13 1 A2 B2; このモデルは5つのオブジェクト、すなわち3つの絶
対点(それぞれA1,A2,B2の名称がつけられる)と、2つ
の直線(lineA,lineB)を含む。14、13という番号は色
番号を示す。“1"は見える位置にあることを示す。この
データは、lineBはlineAが終了した地点、すなわち点A2
から開始されることを明示している。lineBの点A2への
依存によって、恒久的な接続が生じる。
以下のレコードは、上記の例にさらに別のオブジェク
トを追加したものである。
AbsBead bead_B 12 1 line_B 0.7; このデータは、beadBは色番号が12、可視状態にあ
り、lineB上のパラメータ値0.7の場所に位置する、すな
わち点A2から点B2までの70%の位置にあることを示す。
lineAがどのように変化しても、beadBはlineB上の同じ
相対場所にある。beadBのlineBへの依存によって、恒久
的な関係が生まれる。
出力表示するためには、ロジカルモデルから絶対モデ
ルが計算される。この例では、絶対モデルは以下のデー
タからなる。
a point,color 14 at(1.,1.,3.) a point,color 14,at(2.,1.,3.) a line,color 13,from(1.,1.,3.)to(2.,1.,3.) a point,color 14,at(2.,3.,3.) a line,color 13,from(2.,1.,3.)to(2.,3.,3.) a point,color 12,at(2.,2.4,3.) ここで、点A2を新たな位置(2.,1.,4.)に移すことに
よってモデルが変更されたとする。これは、ロジカルモ
デルのひとつのレコード中の要素をひとつ変更すること
によって行われる。
AbsPoint A2 14 1 2.1.4.; この変更後は、更新された絶対モデルは以下から成
る。
a point,color 14 at(1.,1.,3.) a point,color 14,at(2.,1.,4.) a line,color 13,from(1.,1.,3.)to(2.,1.,4.) a point,color 14,at(2.,3.,3.) a line,color 13,from(2.,1.,4.)to(2.,1.,3.) a point,color 12,at(2.,2.4,3.3) lineAとlineBの接続は自動的に維持され、beadBはlin
eB上の同じ相対位置、すなわちlineBの長さの70%の地
点に位置する。これは、依存性のグラフデータを使用す
ることで可能になるモデルの自動更新を示す例である。
データ構造の内部または外部描写は上記のテキスト描
写とは異なるが、論理的に有効グラフ(ダイグラフ)と
等しい方法で依存性の情報を符号化する。
本発明の第2の目的(多様な種類の曲線および曲面を
扱う)はプログラム指示を特別に構成することによって
達成される。本発明によれば、ひとつのルーチンポイン
ト(点)によってすべての点オブジェクトがアクセスさ
れる。ルーチン点の入力パラメータは点オブジェクトの
名称またはインデックスであり、そのオブジェクトのx,
y,z座標が却ってくる。点の内部では、ケースステート
メントは枝分れして別々のルーチンになり、それぞれ特
定の点エンティティを計算する。点は、それ自体を呼び
出すか、またはそれが呼び出したルーチンによって呼び
出されるように、帰納的な方法でプログラムされるのが
基本である。
同様に、すべての曲線オブジェクトも単一のルーチン
曲線を介してアクセスされる。このルーチン曲線の独立
変数は、特定の曲線の名称またはインデックスと、パラ
メータ値tのリストであり、その回帰パラメータは、x,
y,z座標の表を含む。曲線内で、ケースステートメント
は枝分かれして別々のルーチンになり、特定の曲線エン
ティティごとに計算する。任意の曲線に関するデータは
別の曲線に依存するので、曲線も同様に機能的にプログ
ラムされることが基本となる。曲線を呼び出すプログラ
ムモジュールに対して、すべての種類の曲線が相互変更
可能であり、パラメータ値tを入力すると、点(x,y,
z)が却ってくる。新たな曲線エンティティを取り扱う
には、そのエンティティに必要なデータを決定し、曲線
ルーチンにケースをひとつ追加し、新たなエンティティ
を計算するルーチンをひとつ追加するだけでよい。
単一の再帰ルーチンスネークもある。このルーチンス
ネークの独立変数は特定のスネークオブジェクトの名称
またはインデックスと、パラメータ値tのリストであ
り、その回帰パラメータは座標軸x,y,zの表を含む。ス
ネークが、2次元u,vパラメータ曲面状の曲線として扱
われた場合、新たな曲線エンティティが追加されると、
同じ種類の新たなスネークも自動的に追加される。この
ように、曲線種類とスネークの種類との対応が自動的に
維持されるので、ユーザが曲線およびスネークの個別の
特性を調べたり記憶する必要が省かれる。
同様に、単一の再帰ルーチン曲面の独立変数は特性の
曲面オブジェクトの名称またはインデックスと、パラメ
ータ値tのリストであり、その回帰パラメータは座標軸
x,y,zの表を含む。N種類の曲面を扱う場合でも、その
プログラミングの手間はN2ではなく、Nの値だけに比例
する。
本発明の第3の目的(曲面と曲面の交差やトリミング
を避ける)は、上述の依存関係を用い、広く役立つある
種のスネークおよび曲面エンティティを生成することに
よって達成される。2つの大きな課題は、(1)2つの
曲面オブジェクトY、Zが共通の稜線を正確にシェアす
るようにする、(2)一方の曲面オブジェクトZが、曲
線に沿ってもう一方の曲面オブジェクトYで正確に終端
するようにする。この曲線は曲面Yの稜線とは限らな
い。
本発明によれば、曲面間の永続的な共通稜線は、隣接
する稜線を決定する共通データを使用することによって
求められる。例えば、2つの曲面が融合曲面(blended
surface)であれば、そのデータは境界曲線を含み、
同一の曲線オブジェクトを2つの曲面の対応する稜線に
使用することだけを要件とする。また、2つのロフト曲
面が隣接する稜線に沿って共通の端点を有すれば、2つ
のロフト曲面はロフト方向に正確に接合する。サブ曲線
エンティティは、特定された2つのビード間の既存の特
定曲線部分に等しい新たな曲線を生成し、共通稜線が2
の曲面の一方または双方の稜線全体に沿ってのびなくて
も、その生成を可能にする。
本発明によれば、その稜線が別の曲面Y上に正確かつ
永続的に位置するような曲面Zは、Y上にまずスネーク
Sを決定し、引き続くZ面の設計でスネークSを稜線と
して使用することによって達成される。スネークSが曲
面Yの稜線のひとつの一部または全体に沿って位置する
直線スネーク(Line Snake)として特定された場合
も、この方法で共通稜線が生成される。
図面の簡単な説明 図1は、CPUと、ディスクメモリと、キーボードと、
マウスと、モニタを有するコンピュータシステムを示し
ており、このコンピュータシステム上で3次元形状モデ
ルがワイヤフレームモデルとして表示される。
図2〜5は、点オブジェクトを示す。図2は、絶対点
(absolute point)と相対点(relative point)を、図
3は、絶対ビード(absolute bead)と相対ビード(rel
ative bead)を、図4は、絶対マグネット(absolute m
agnet)と相対マグネット(relative magnet)を、図5
は、絶対リング(absolute ring)と相対リング(relat
ive ring)をそれぞれ示す。
図6〜10は、曲線オブジェクトを示す。図6は直線と
弧曲線を、図7はB−spline曲線を、図8はC−spline
曲線を、図9はサブ曲線を、図10は相対曲線を、それぞ
れ示す。
図11〜18は、曲面オブジェクトを示す。図11はruled
(線識)曲面を、図12はTranslation(平行移動)曲面
を、図13はRevolution(回転)曲面を、図14はblended
(融合)曲面を、図15はC−lofted曲面を、図16はB−
spline曲面を、図17はサブ曲面を、図18は相対曲面を、
それぞれ示す。
図19〜24はスネークオブジェクトを示す。図19は直線
スネーク(Line Snake)を、図20は弧スネークを、図21
はB−splineスネークを、図22はC−splineスネーク
を、図23はサスネークを、図24は相対スネークを、それ
ぞれ示す。
図25は、単純なモデルにおける依存性のダイグラフ
(有向グラフ)の例を示す。
図26は、本発明の目的を達成するプログラムモジュー
ルの構成例を示す。
図27は、本発明の適用例を示す。
良好な実施形態の詳細な説明 本発明の実施例では、IBM−PCコンパチブル(互換
機)や、高解像カラーグラフィックディスプレイを有す
る光学ワークステーションなどの適切なコンピュータシ
ステム上で、コンピュータプログラムの操作が行われ
る。入力装置はキーボードでもマウスでもよい。グラフ
ィックディスプレイは、モデルのワイヤーフレームイメ
ージの斜視図または正投射図の表示に使用される。コン
トローラが設けられて、ユーザはイメージを自由に回
転、ズーム、パーン(上下左右に動かす)して適切な図
を選択できる。別のスクリーンウィンドウは、曲面のu,
vパラメータ空間と、オブジェクトおよびそれらの依存
性をリストするアウトライン形式と、ロジカルモデルの
テキスト形式とを表示する。図1は、CPU/ディスクメモ
リ11と、キーボード12と、マウス13と、モニタ14を有す
る0コンピュータシステムを示す。このコンピュータシ
ステム上に3次元オブジェクトがワイヤフレームイメー
ジ15として表示される。
グラフィックディスプレイでは、見える位置にある点
オブジェクトは小さな丸で表示される。見える位置の直
線、曲線、スネークオブジェクトは、ユーザによって選
択可能の多数の小区分線(subdivision)で表示され
る。曲面オブジェクトは、各々パラメータ方向にユーザ
選択可能の多数の小区分線を有する網目状のパラメータ
ラインで示される。より進んだグラフィックディスプレ
イハードウェアがあれば、曲面オブジェクトは見えない
部分の直線や曲面を除去した立体として表わされる。
すべてのオブジェクトは、16色パレットから一色を選
択した色属性を有する。また、オブジェクトは可視性の
属性も有し、これは異なるクラスのエンティティごとに
異なる意味を持つ16ビット整数で表わされる。例えば、 点に関しては、 ビット1:点は見える位置にある。
曲線、スネークに関しては、 ビット1:ポリラインは見える状態にある。
ビット2:多角形は見える状態にある。
ビット3:均一のパラメータインターバルで表示される
チックマーク。
曲面に関しては、 ビット1:u方向へのパラメータラインは見える状態。
ビット2:v方向へのパラメータラインは見える状態。
ビット4:環境線は見える状態。
以下は、実施例で取り扱われるエンティティのリスト
である。
点クラス ・絶対点(AbsPoint):x,y,z x,y,zはその点の絶対座標点。
・相対点(RelPoint):point,dx,dy,dz dx,dy,dzは、“point"からオフセットした座標点。図
2は、デカルト座標軸上に位置する絶対点21と相対点22
を示している。
・絶対ビード(AbsBead):curve,t tは、“curve"上の絶対パラメータ値。
・相対ビード(RelBead):bead,dt dtは、“bead"からオフセットしたパラメータ。図3
は、1次元パラメータ空間32から三空間マッピングされ
た曲線31と、それぞれの空間での絶対ビード33および相
対ビード34を示している。
・絶対マグネット(Absmagnet):surface,u,v u,vは、“surface"上の絶対パラメータである。
・相対マグネット(Relmagnet):magnet,u,v du,dvは“magnet"からオフセットしたパラメータ。図
4は、2次元パラメータ空間42から三空間マッピングさ
れた曲面41と、それぞれの空間での絶対マグネット43お
よび相対マグネット44を示している。
・絶対リング(absRing);snake,t tは、“snake"上の絶対パラメータである。
・相対リング(RelRing):ring,dt dtは、“ring"からオフセットしたパラメータ。図5
は、1次元パラメータ空間52から、2次元パラメータ空
間53を介して三空間マッピングされたスネーク51と、そ
れぞれの空間での絶対リング54および相対リング55を介
している。
曲線クラス (すべての曲線は0.から1.の間でパラメータ表示され
る。) ・直線(Line):point1,point2 直線は、point1(x1)からpoint2(x2)への直線であ
り、 x(t)=(1−t)x1+tx2 ・弧(Arc):point1,point2,point3 弧は、3点を連続補間した円弧である。図6は、2つ
の点オブジェクト63に依存して決定される直線61と、3
つの点オブジェクト63に依存して決定される弧62を示し
ている。
・B−spline曲線(BCurve):type,point1,point2,・・
・,pointN typeはB−splineに、1=線形、2=方形などの指令
を与える。
連続番号をつけられたpointは、各頂点を示す。
図7は、複数の点オブジェクト72に依存して決定され
るB−spline曲線オブジェクト71と、その1次元パラメ
ータ空間73を示す。
・C−spline曲線(CCurve):point1,point2,・・・,po
intN 連続番号のpointが順次補完される。この曲線は、弦
長パラメトリック表示を有し、データポイントにノット
(knot)を有するパラメトリック3次スプラインであ
り、その終端にはノットがない曲線である。図8は、複
数の点オブジェクト82に依存して決定されるC−spline
曲線オブジェクト81と、その1次元パラメータ空間83を
示す。
・サブ曲線(subCurve):Curve,bead1,bead2 サブ曲線y(t)は曲線x(s)の一部、すなわちbe
ad1(パラメータs1)からbead2(パラメータs2)までの
曲線である。
y(t)=x[(1−t)s1+ts2] 図9は、2つのビードオブジェクト93と94の間で曲線
オブジェクト92の一部となるサブ曲線91と、これら曲線
とサブ曲線のそれぞれの1次元空間95、96とを示す。
・相対曲線(RelCurve):Curve,point1,point2 相対曲線x(t)は、曲線y(t)と、2つの点x1、
x2とから、リニア変換によって形成される。
x(t)=y(t)+(1−t)[x1−y(0)]+t[x2−y(1)] 図10は、曲線102と、点オブジェクト103、104とに依
存して決定される相対曲線オブジェクト101、およびそ
の1次元パラメータ空間105を示すものである。
曲面クラス (すべての曲面は、u方向およびv方向の双方に0から
1の間でパラメータ表示される。) ・線識曲面(RuleSurf):curve1,curve2 この曲面はリニア補間によって2つの曲線y(t)、
z(t)から形成される。
x(u,v)=(1−v)y(u)+xz(u) 図11は、2つの曲線オブジェクト112、113に依存して
決定される線識(ruled)曲面111と、その2次元パラメ
ータ空間114とを示している。
・平行移動曲面(TranSurf):curve1,curve2 この曲面は、2つの曲線y(t)z、(t)から加算
によって形成される。
x(u,v)=y(u)+z(v)−z(0) 図12は、2つの曲線オブジェクト122、123に依存して
決定される平行移動(translation)曲面オブジェクト1
21と、その2次元パラメータ空間124とを示している。
・回転曲面(RevSurf):curve,point1,point2,angle1,a
ngle2 “curve"から点y(v)を取り、それをpoint1からpo
int2までの軸ラインの周りに角度θ=(1−u)θ1+
θ2だけ回転させることによって、点u,vでの曲面が構
成される。図13は、ひとつの曲線オブジェクト132と、
軸135を決定する2つの点オブジェクト133、134とに依
存する回転曲面オブジェクト131と、その2次元パラメ
ータ空間136を示す。
・融合曲面(blendSurf):curve1,curve2,curve3,curve
4 この曲面は、4つの曲線から双Coonsパッチ構成され
る。4つの曲線が図14に示されるように端と端を接する
向きの曲線であれば、曲線上の点を位置設定する等式は
以下の通りである。
x(u,v)=(1−v)x1(u)+vx3(1−u) +(1−u)x4(1−v)+ux2(v) −(1−u)(1−v)[x1(0)+x4(1)]/2 −u(1−v)[x1(1)+x2(0)]/2 −uv[x2(1)+x3(0)]/2 −(1−u)v[x3(1)+x4(0)]/2 図14は、4つの曲面オブジェクト142、143、144、145
に依存して決定される融合曲面オブジェクト141と、そ
の2次元パラメータ空間146を示す。
・C−lofted曲面(CLoftSurf):curvel,curve2,・・
・,curveN 曲面点x(u、v)は、三段階で求められる。(1)
各曲線iから点xi(u)を取り、(2)xi(u)を順次
補間するC−spline曲線を形成し、(3)パラメータv
でC−splineを計算する。図15は、C−lofted曲面151
を示している。このC−lofted曲面はいくつかの曲線オ
ブジェクト153を補間した無数のC−spline152から成
る。
・B−splineテンソル積曲面(BSurf):typeU,typeV,N,
M,point11,point12,・・・,pointNM typeU,typeVは、B−splineのu方向およびv方向へ
の方向性を与える。N,Mはu、v方向における頂点の数
である。point11,point12,・・・,pointNMは、制御点の
方形ネットである。
図16は,点オブジェクト162のアレイに依存して決定
されるB−spline曲面オブジェト161と、その2次元パ
ラメータ空間163を示している。
・サブ曲面(SubSurf);surface,snake1,snake2,snake
3,snake4 サブ曲面は曲面y(p,q)の一部であり、端と端が接
触する4つのスネークw1、w2、w3、w4によって囲まれ
る。
x(u,v)=y(w) ここにおいて、 w={p,q}=(1−v)w1(u)+vw3(1−u) +(1−u)w4(1−v)+uw2(v) −(1−u)(1−v)[w1(0)+w4(1)]/2 −u(1−v)[w1(1)+w2(0)]/2 −uv[w2(1)+w3(0)]/2 −(1−u)v[w3(1)+w4(0)]/2 図17は、曲面オブジェクト172と、4のスネークオブ
ジェクト173、174、175、176とに依存して決定されるサ
ブ曲面オブジェクト171と、曲面およびサブ曲面のそれ
ぞれの2次元パラメータ空間177、178を示す。
・相対曲面(RelSurf):surface,point1,point2,point
3,point4 相対曲面x(u,v)は、曲面y(u,v)と4つのコーナ
ー点x1、x2、x3、x4とから、双線変換によって形成され
る。
x(u,v)=y(u,v)+(1−u)(1−v)[x1−y
(0,0)] +u(1−v)[x2−y(1,0)] +v(1−u)[x3−y(1,1)] +uv[x4−y(0,1)] 図18は、曲面オブジェクト182と4の点オブジェクト1
83、184、185、186とに依存して決定される相対曲面オ
ブジェクト181、およびその2次元パラメータ空間187と
を示す スネーククラス すべてのスネークは0から1の間でパラメータ表示さ
れる。スネークは、まず曲面のパラメータ空間で点w=
{u,v}を位置設定し、ついでこれらのパラメータ値を
用いてその曲面を計算する。
・直線スネーク(LineSnake):magnet1,magnet2 LineSnakeとは、u,vパラメータ空間において“magnet
1"(w1={u1,v1})から“magnet2"(w2={u2,v2})
までの直線である。
w(t)=(1−t)w1+tw2 図19は、曲面オブジェクト192と、2つのマグネット
オブジェクト193とに依存して決定されるスネークオブ
ジェクト191と、そのスネークの1次元パラメータ空間1
95および曲面の2次元パラメータ空間196とを示してい
る。
・弧スネーク(ArcSnake):magnet1,magnet2,magnet3 ArcSnakeは、u,vパラメータ空間で3のマグネットを
補間した円弧である。図20は、曲面オブジェクト202
と、3つのマグネットオブジェクト203、204、205とに
依存して決定される弧スネークオブジェクト201と、そ
のスネークの1次元パラメータ空間206および曲面の2
次元パラメータ空間207とを示している。
・B−splineスネーク(BSnake):type,magnet1,magnet
2,・・・,magnetN typeはB−splineに、1=線形、2=方形などの指令
を与える。
連続番号をつけられたマグネットは、各頂点を示す。
N,Mはu、v方向における頂点の数である。point11,p
oint12,・・・,pointNMは、制御点の方形ネットであ
る。
図21は,曲面オブジェクト212と複数のマグネットオ
ブジェクト213とに依存して決定されるB−splineスネ
ークオブジェクト211と、そのスネークの1次元パラメ
ータ空間214および曲面の2次元パラメータ空間215を示
している。
・C−spline曲線(CSnake):magnet1,magnet2,・・・,
magnetN 連続番号のpointが順次補間される。このスネーク
は、弦長パラメイトリック表示を有し、データポイント
にノット(knot)を有するパラメトリック3次スプライ
ンであり、その終端にはノットがない曲線である。図22
は、曲面オブジェクト222と、複数のマグネットオブジ
ェクト223とに依存して決定されc−splineスネークオ
ブジェクト221と、そのスネークの1次元パラメータ空
間224および曲面の2次元パラメータ空間225を示す。
・サブスネーク(SubSnake):snake,ring1,ring2 サブスネークw(t)は,“snake"p(s)の一部で
あり、ring1(パラメータs1)からring2(パラメータs
2)まで延びる。
w(t)=p[(1−t)s1+ts2] 図23は、曲面オブジェクト232と、スネークオブジェ
クト233と、2つのリングドオブジェクト234、235とに
依存して決定されるサブスネークオブジェクト231と、
そのスネークおよびサブスネークのそれぞれの1次元パ
ラメータ空間236、237と、曲面の2次元パラメータ空間
238とを示す。
・相対スネーク(RelSnake):snake,magnet,magnet2 相対スネークw(t)は、“snake"p(t)と、2つ
のマグネットm1、m2とから、リニア変換によって形成さ
れる。
w(t)=p(t)+(1−t)[m1−p(0)]+t[m2−p(1)] 図24は、曲面オブジェクト242と、スネークオブジェ
クト243と、2つのマネットオブジェクト244、245とに
依存して決定される相対スネークオブジェクト241と、
この相対スネークの1次元パラメータ空間246と、曲面
の2次元パラメータ空間247とを示すものである。
ロジカルモデルは、ディスクメモリ中のファイルとし
て記憶される。従来と同様のテキストフォーマットで記
憶されるが、表示用にポリラインの小区分を特定する数
値パラメータを追加している。各オブジェクトはそれぞ
れひとつのテキストレコードで表わされ、各レコード
は、エンティティを定義するかっこ内のエンティティキ
ーワードで始まる。キーワードの後には、オブジェクト
名称、色および可視性のインデックスがくる。曲線また
はスネークオブジェクトはさらに、ディスプレイ中での
表示に必要なポリラインを構成する小区分線の数を示す
整数が続き、曲面オブジェクトはディスプレイ表示の網
目状ポリラインを形成するu方向およびv方向への小区
分線の数を示す2つの整数データを有する。これ以降で
は、先に示したエンティティの定義リストに示されるよ
うに、各エンティティに必要なデータはそれぞれ異なっ
てくる。このテキストファイルはキーワード“End"で終
了する。キーワード“Rem"を用いてテキストファイル中
に注釈を盛り込むこともできる。
オブジェクトはプログラム内で、入力データファイル
中でのシーケンス(または生成順序)に対応する一連の
番号で参照される。このように、あらかじめ定義された
オブジェクトすべてに参照番号を与えることが、環状依
存性(ダイグラフサイクル)が生じる可能性を避ける簡
単な方法である。ロジカルモデルの内部記憶構成は、依
存性のダイグラフを表わすリンクされたリトデータ構造
を含み、絶対モデルの更新時に使用する。図25は、前述
のラインA−B間の依存関係を表わすダイグラフの例で
ある。接点251はオブジェクトを表わし、矢印線252はそ
れらの依存関係を示す。
プログラムは、適切なテキスト形式でのロジカルモデ
ルデータファイルの読み出し、書き込みをユーザ制御可
能に行うことができる。さらに、読み出しオペレーショ
ン中にデータファイルのエラーや不一致を検出して知ら
せることもできる。プログラムは、モデルの表示と同時
に、3次元ワイヤフレームを表わすひとつ以上のファイ
ルの読み出しおよび表示が可能であるし、現在表示され
ている絶対モデルの3次元ワイヤフレームファイルや最
新表示の2次元ワイヤフレームファイルを書き込むこと
もできる。
オブジェクトを生成、編集、消去するための相互作用
的な性能が備えられ、オブジェクトを別のエンティティ
タイプへ変容する限定機能も備えられる。例えば、点オ
ブジェクトは絶対点に変容され得る。これらすべての動
作において、プログラムは一貫性をチェックし、ダイグ
ラフデータ構造の完全さを保証するためのルールを実行
する。ルールの例として、新たに生成したオブジェクト
をロジカルモデル内に受け入れる前に、必要とされるす
べての依存関係が満たされねばならない、オブジェクト
はその依存性がすべて消去されてしまうまでは消去され
てはならない、環状依存関係は認められない、などがあ
る。
図26は、本発明の目的を達成できるプログラムモジュ
ールの組織図である。ボックス263、264はそれぞれサブ
ルーチンを示し、矢印262はサブルーチンの呼び出しを
示し、呼み出しモジュールから呼び出されるモジュール
へ直接矢印が向けられる。
“点(point)”、“曲線(Curve)",“スネーク(Sn
ake)”、“曲面(Surface)”と記された4つの特別モ
ジュール(“主モジュール"263)は、モデルからの絶対
形状情報を必要とする任意のアプリケーションプログラ
ムへのインターフェイスである。これらのモジュールは
以下のような入出力独立変数を有する。
<点> 入力:点オブジェクトの名称(またはイ
ンデックス) 出力:絶対座標点x,y,z <曲線> 入力:曲線オブジェクトの名称(または
インデックス) パラメータ値tのリスト 出力:座標点x,y,zのリスト <スネーク> 入力:スネークオブジェクトの名称(ま
たはインデックス) パラメータ値のリスト 出力:座標点x,y,zのリスト <曲面> 入力:曲面オブジェクトの名称(または
インデックス) パラメータ値uのリスト パラメータ値vのリスト 出力:座標点x,y,zのアレイ (一点だけが計算される必要のある場合は、パラメータ
値の入力リストはひとつのみのエンティティを含む。) 図中のその他のモジュール(“2次モジュール”)
は、矢印からも分かるように、アプリケーションからは
呼び出されず、主モジュールからだけ、または場合によ
っては別の2次モジュールから呼び出される。
“点”モジュールは、どの種類の点オブジェクトを計
算しているかを決定し、別々の2次ルーチンに枝分かれ
する。同様に、“曲線”、“スネーク”、“曲面”もそ
れぞれの要素である2次ルーチンに基本的に枝分かれす
る。
“Line"と“Line Snake"は、共通の“Line math"ル
ーチンを分け合い、その他の曲線やスネークも共通のマ
ス(数学)ルーチンを共有する。マスルーチンは、2次
元データ(スネークルーチンに要求された場合)でも3
次元データ(曲線ルーチンに要求された場合)でも操作
することができる。図26から、新たなパラメトリック曲
線、スネーク、曲面エンティティがいかに容易にシステ
ム中に追加されるか明白である。すなわち、新たなエン
ティティを実行する2次モジュールをひとつ追加し、主
要モジュールを僅かに変更して追加された2次モジュー
ルへのブランチを設けるだけでよい。
他にも、いくかのエンティティの計算に主モジュール
の呼び出しを必要とする。例えば図示されるように、ビ
ードは曲線の計算を必要とし、スネークは曲面の計算を
必要とする。
図26に、サイクル状の再帰的な要求(call)が示され
る。例えば、相対点の位置設定するには、プログラムは
まず基準点を設定する必要がある。その基準点がどんな
種類の点オブジェクトであっても関係ない。すなわち、
「相対点」は「点(point)」を呼び出せねばならな
い。同様に、「サブ曲線」と「相対曲線」は「曲線(Cu
rve)」を呼び出し、「サブスネーク」と「相対スネー
ク」は「スネーク(Snake)」を、「サブ曲面」と「相
対曲面」は「曲面(Surface)」を呼び出せねばならな
い。
主ルーチンへの上記以外の可能な回帰要求も多数ある
が、これらの可能性をすべて矢印で示すのは繁雑すぎる
ので、図示しないこととする。例えば、“Line"、“Ar
c"、“B−Curve"、“C−Curve"はすべて、「点(Poin
t)」を呼び出すことによってこれらをサポートする点
を計算する必要があるし、“Line Snake"、“Arc Sna
ke"、“B−Snake"、“C−Snake"は、“Magnet"または
“Ring"を呼び出すことによってこれらをサポートする
マグネットオブジェクトのu,vパラメータを計算する必
要がある。曲面ルーチンは、それら個々の構成にしたが
って、多様な点、曲線、スネークオブジェクトの計算を
必要とする。これらはすべて主モジューへの呼び出しを
介して行われる。
また、例えば計算される曲面をサポートするひとつの
曲線が別の曲面状のスネークである場合に、さらなる回
帰要求が行われ、この場合、一連の要求は「曲面(Surf
ace)」を2度通ることになる。任意の長さの依存性の
チェーンで考えると容易である。このようなすべての回
帰可能性は図26のプログラム構造に納められる。回帰性
がないと、依存性の許容深度でプログラムの複雑さとサ
イズが非常な速度で増加するが、回帰性があれば、依存
性の許容深度を無限に拡張するためのスタック空間が必
要とされるだけである。
好適な実施例の適用例 表1は、先に定義した多様な点、曲線、スネークオブ
ジェクト、異なる種類の6つの相互接続曲面オブジェク
トを用いた、ロジカルモデルのテキスト表示例である。
図27は、その結果表示される絶対モデルのワイヤフレー
ム表示例である。この例は、30フィートのセイリングヨ
ットの設計における船体、デッキ、キャビン面を示して
いる。
表示例のモデルは6つの曲面オブジェクトからなる。
すなわち、艇体(hull)271とデッキ(deck)272はC−
lofted曲面、前方キャビン(cabin_fwd)273、側部キャ
ビン(cabin_side)274、後方キャビン(cabin_aft)27
5は線識(ruled)曲面、トップキャビン(cabin_top)2
76は融合(blended)曲面である。これら曲面の可視性
はすべて値2であり、v方向だけのパラメータラインが
表示される。形をビジュアルにするために、モデルを横
切る11の交差線277も表示される。
“hull(艇体)”は3つのb−splineマスター曲線MC
A,MCB,MCCを有するC−lofted曲面であり、各曲線は4
つの絶対点を頂点として有する。“deck(デッキ)”も
3つのマスター曲線を有する。曲線のひとつは単点MCAV
1、他の2つは3点B−spline曲線“deck_beam"と“tra
nsom"である。“hull(艇体)”と“deck(デッキ)”
の間の接合部278は、それぞれの曲面の隣接稜線でのC
−splineが同一のデータポイント、すなわちMCAV1,MCBV
1,MCCV1を用いるので、正確かつ永続的である。
3つの線識(ruled)曲面、すなわち“cabin_fwd"、
“cabin_side"、“cabin_aft"も同様な方法でお互いに
接合される。各曲面は、“deck"曲面への正確かつ恒久
的な接合部279を生成する稜線として“deck"上のスネー
クを使用し、そのスネークに依存する相対曲線を第2の
(上部)稜線として使用する。“deck"上の3つのスネ
ークは、共通の端点データ、すなわちマグネットdm3、d
m5を分かち合うので、お互い正確かつ恒久的に接続す
る。3つの相対曲線“top_fwd"、“top_side"、“top_a
ft"もまた共通の端点(相対点rp3,rp5)を用いて構成さ
れるので、お互い正確かつ恒久的に接続する。“cabin_
side"の端部罫線はラインdm3_rp3およびdm5_rp5であ
り、これらは隣接する他の2うの曲面の端罫線と一致す
るので、これらの曲面と正確かつ恒久的に接合する。
融合曲面“cabin_top"は、3つの線識(ruled)曲面
の上部稜線“top_fwd"、“top_side"、“top_aft"をデ
ータとして使用するので、これら3つの曲面と正確に接
合する。この融合曲面の4番目の接合部は3点C−spli
ne“top_ctr"であり、各頂点のy軸の値は0で平面中央
に正確に位置する。
上述の表示例モデルは、絶対点の座標と、相対点のオ
フセットと、マグネットのパラメータを変えることによ
って、別の様々な形に容易に変形される。3つの曲面す
べてを変えるには、y軸の“MCBV1"値を増加させればよ
い。どのように変更しても、複数の曲面の接続性と相対
位置は絶対モデルとして自動的に保存され、更新され
る。
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G06F 17/50 622 G06F 17/50 604 G06T 17/40

Claims (7)

    (57)【特許請求の範囲】
  1. 【請求項1】コンピュータエイド設計において、2次元
    以上の設計空間における点、曲線および面等の多数の幾
    何学的要素から構成される形状モデルを設計するために
    用いられる複数の幾何学的オブジェクトとして描写され
    る複数の幾何学的エンティティを表現する方法であっ
    て、 前記形状モデルを構成するのに使用される幾何学エンテ
    ィティの集合を定義し、取り扱うステップを含み、前記
    幾何学エンテイティの各々は、コンピュータアクセス可
    能メモリ内に記憶される1つ以上の対応する幾何学オブ
    ジェクトとして描写される抽象的幾何学オブジェクトタ
    イプであるとともに、データフィールドを含み、前記1
    つ以上の対応する幾何学オブジェクトを描写するため
    に、特定のデータフィールドを有効なデータタイプのデ
    ータアイテムで満たすことを必要とし、対応する幾何学
    オブジェクトの各々は、対応するデータ構造として前記
    コンピュータアクセス可能メモリ内に記憶され、前記幾
    何学エンティティの各々は、前記データフィールド内の
    値から1つ以上の前記幾何学オブジェクトを構成するた
    めの特定の手順を表し、 前記幾何学エンティティは1つ以上の点クラスエンティ
    ティと、1つ以上の曲線クラスエンティティと、1つ以
    上の面クラスエンティティとを含み、 前記点クラスエンティティの各々は1つ以上の点クラス
    オブジェクトとして描写され、前記点クラスオブジェク
    トの各々は、前記設計空間におけるゼロ次元の点を指定
    し、 前記曲線クラスエンティティの各々は1つ以上の曲線ク
    ラスオブジェクトとして描写され、前記曲線クラスオブ
    ジェクトの各々は、前記設計空間における一次元の連続
    する点の集合を指定し、 前記面クラスエンティティの各々は1つ以上の面クラス
    オブジェクトとして描写され、前記面クラスオブシェク
    トの各々は、前記設計空間における二次元の連続する点
    の集合を指定し、 前記方法はさらに、 前記幾何学オブジェクトのうちの少なくともいくつかを
    対応する固有のオブジェクト識別子によって識別するス
    テップと、 前記幾何学エンティティの集合の間に複数の関係エンテ
    ィティを定義し、取り扱うステップと、 を含み、前記関係エンティティの各々は、コンピュータ
    アクセス可能メモリ内に記憶される1つ以上の関係オブ
    ジェクトとして描写されるとともに、前記1つ以上の対
    応する関係のオブジェクトの各々として描写するため
    に、1つ以上の幾何学オブジェクトのオブジェクト識別
    子への参照を必要とし、前記参照は、描写された対応関
    係オブジェクトと関連づけてコンピュータメモリ内に記
    憶され、それによって前記関係オブジェクトによって参
    照されるオブジェクト識別子を持つ1つ以上の他の幾何
    学オブジェクトに依存する関係を構築し、 前記関係エンティティのうちの少なくとも1つは前記曲
    線クラスエンティティのうちの1つであり、関係曲線ク
    ラスオブジェクトとしての描写のために、2つ以上の点
    クラスオブジェクトのオブジェクト識別子への参照を必
    要とし、 前記関係エンティティのうちの少なくとも1つは前記面
    クラスエンティティのうちの1つであり、関係面クラス
    オブジェクトとしての描写のために、点クラスオブジェ
    クトおよび曲線クラスオブジェクトを含む群から選択さ
    れる2つ以上の幾何学オブジェクトのオブジェト識別子
    への参照を必要とすることを特徴とする方法。
  2. 【請求項2】請求項1に記載の方法であって、各関係オ
    ブジェクトは、1つ以上のオブジェクトデータフィール
    ドを有する対応のデータ構造としてコンピュータアクセ
    ス可能メモリ内に記憶され、前記オブジェクトデータフ
    ィールドの各々は、その有効なデータタイプが、その関
    係オブジェクトが依存関係を有する別の幾何学オブジェ
    クトのオブジェクト識別子である、データフィールドで
    あることを特徴とする方法。
  3. 【請求項3】請求項1に記載の方法であって、前記関係
    エンティティの少なくとも1つは前記面クラスエンティ
    ティのうちの別のものであって、関係面クラスオブジェ
    クトとしての描写のために、点クラスオブジェクトおよ
    び曲線クラスオブジェクトを含む群から選択された任意
    の2つ以上の幾何学オブジェクトのオブジェクト識別子
    への参照を必要とすることを特徴とする方法。
  4. 【請求項4】請求項1に記載の方法であって、依存関係
    の集まりがダイグラフを表すことを特徴とする方法。
  5. 【請求項5】請求項1に記載の方法であって、前記幾何
    学エンティティが1つ以上の立体クラスエンティティを
    含み、前記関係エンティティのうちの少なくとも1つが
    前記立体クラスエンティティのうちの1つであり、関係
    立体クラスオブジェクトとしての描写のために、2つ以
    上の他のオブジェクトのオブジェクト識別子への参照を
    必要とすることを特徴とする方法。
  6. 【請求項6】2次元以上の設計空間における点、曲線お
    よび面等の多数の幾何学的要素から構成される形状モデ
    ルのコンピュータエイド設計方法であって、 前記形状モデルを構成するのに使用される幾何学エンテ
    ィティの集合を定義し、取り扱うステップを含み、前記
    幾何学エンテイティの各々は、コンピュータアクセス可
    能メモリ内に記憶される1つ以上の対応する幾何学オブ
    ジェクトとして描写される抽象的幾何学オブジェクトタ
    イブであるとともに、データフィールドを含み、前記1
    つ以上の対応する幾何学オブジェクトを描写するため
    に、特定のデータフィールドを有効なデータタイプのデ
    ータアイテムで満たすことを必要とし、対応する幾何学
    オブジェクトの各々は、対応するデータ構造として前記
    コンピュータアクセス可能メモリ内に記憶され、前記幾
    何学エンティティの各々は、前記データフィールド内の
    値から1つ以上の前記幾何学オブジェクトを構成するた
    めの特定の手順を表し、 前記幾何学エンティティは1つ以上の点クラスエンティ
    ティと、1つ以上の曲線クラスエンティティと、1つ以
    上の面クラスエンティティとを含み、 前記点クラスエンティティの各々は1つ以上の点クラス
    オブジェクトとして描写され、前記点クラスオブジェク
    トの各々は、前記設計空間におけるゼロ次元の点を指定
    し、 前記曲線クラスエンティティの各々は1つ以上の曲線ク
    ラスオブジェクトとして描写され、前記曲線クラスオブ
    ジェクトの各々は、前記設計空間における一次元の連続
    する点の集合を指定し、 前記面クラスエエンティティの各々は1つ以上の面クラ
    スオブジェクトとして描写され、前記面クラスオブジェ
    クトの各々は、前記設計空間における二次元の連続する
    点の集合を指定し、 前記方法はさらに、 前記幾何学オブジェクトのうちの少なくともいくつかを
    対応する固有のオブジェクト識別子によって識別するス
    テップと、 前記幾何学エンティティの集合の間に複数の関係エンテ
    ィティを定義し、取り扱うステップと、 を含み、前記関係エンティティの各々は、コンピュータ
    アクセス可能メモリ内に記憶される1つ以上の関係オブ
    ジェクトとして描写されるとともに、前記1つ以上の対
    応する関係オブジェクトの各々として描写するために、
    1つ以上の幾何学オブジェクトのオブジェクト識別子へ
    の参照を必要とし、前記参照は、描写された対応関係オ
    ブジェクトと関連づけてコンピュータメモリ内に記憶さ
    れ、それによって前記関係オブジェクトによって参照さ
    れるオブジェクト識別子を持つ1つ以上の他の幾何学オ
    ブジェクトに依存する関係を構築し、 前記関係エンティティのうちの少なくとも1は前記曲線
    クラスエンティティのうちの1つであり、関係曲線クラ
    スオブジェクトとしての描写のために、2つ以上の点ク
    ラスオブジェクトのオブジェクト識別子への参照を必要
    とし、 前記関係エンティティのうちの少なとも1つは前記面ク
    ラスエンティティのうちの1つであり、関係面クラスオ
    ブジェクトとしての描写のために、点クラスオブジェク
    トおよび曲線クラスオブジェクトを含む群から選択され
    る2つ以上の幾何学オブジェクトのオブジェクト識別子
    への参照を必要とし、 さらに前記方法は、 ユーザに対応して前記幾何学的エンティティの集合の要
    素を描写して、複数の描写されたオブジェクトを生成す
    るステップと、 これら描写されたオブジェクトから前記形状モデルを構
    成するステップと、 を含むことを特徴とするコンピュータエイド設計方法。
  7. 【請求項7】請求項6に記載のコンピュータエイド設計
    方法であって、前記形状モデルを表示するステップを更
    に含むことを特徴とする方法。
JP51120993A 1991-12-19 1992-12-17 有向オブジェクトのコンピュータエイド形状設計のための関連エンティティシステム Expired - Fee Related JP3162391B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US81096091A 1991-12-19 1991-12-19
US810.960 1991-12-19
PCT/US1992/011087 WO1993012500A1 (en) 1991-12-19 1992-12-17 System of relational entities for object-oriented computer-aided geometric design

Publications (2)

Publication Number Publication Date
JPH07502355A JPH07502355A (ja) 1995-03-09
JP3162391B2 true JP3162391B2 (ja) 2001-04-25

Family

ID=25205149

Family Applications (1)

Application Number Title Priority Date Filing Date
JP51120993A Expired - Fee Related JP3162391B2 (ja) 1991-12-19 1992-12-17 有向オブジェクトのコンピュータエイド形状設計のための関連エンティティシステム

Country Status (6)

Country Link
EP (1) EP0619904B1 (ja)
JP (1) JP3162391B2 (ja)
AU (2) AU659919B2 (ja)
CA (1) CA2126220C (ja)
DE (1) DE69230728T2 (ja)
WO (1) WO1993012500A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6499062B1 (en) * 1998-12-17 2002-12-24 Koninklijke Philips Electronics N.V. Synchronizing property changes to enable multiple control options
DE102004035885A1 (de) * 2004-07-23 2006-02-16 Daimlerchrysler Ag Konstruktionssystem mit zwei Rechnern
FR2936070A1 (fr) 2008-09-12 2010-03-19 Airbus France Procede et dispositif de realisation d'un modele par elements finis.

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4829446A (en) * 1986-12-12 1989-05-09 Caeco, Inc. Method and apparatus for recording and rearranging representations of objects in a model of a group of objects located using a co-ordinate system

Also Published As

Publication number Publication date
AU3029195A (en) 1995-11-09
JPH07502355A (ja) 1995-03-09
AU3416793A (en) 1993-07-19
CA2126220A1 (en) 1993-06-24
EP0619904B1 (en) 2000-03-01
AU659919B2 (en) 1995-06-01
DE69230728T2 (de) 2000-08-10
EP0619904A1 (en) 1994-10-19
WO1993012500A1 (en) 1993-06-24
DE69230728D1 (de) 2000-04-06
EP0619904A4 (en) 1997-03-26
AU672944B2 (en) 1996-10-17
CA2126220C (en) 2005-02-22

Similar Documents

Publication Publication Date Title
US5581672A (en) System of relational entities for object-oriented computer-aided geometric design
Yerry et al. A modified quadtree approach to finite element mesh generation
US4821214A (en) Computer graphics method for changing the shape of a geometric model using free-form deformation
De Floriani et al. A survey on data structures for level-of-detail models
KR20010012815A (ko) 레퍼런스에 기초한 파라미터 조정 방법 및 시스템
CN103649856A (zh) 通过工具的动作模拟物体的加工的方法及其系统和计算机程序产品
JP3599386B2 (ja) エッジの混合方法
Forrest Computational geometry-achievements and problems
JPH04222075A (ja) 切断ビュー生成表示方法
JP3162391B2 (ja) 有向オブジェクトのコンピュータエイド形状設計のための関連エンティティシステム
Bloomenthal Techniques for implicit modeling
Letcher Jr et al. Relational geometric synthesis: Part 1—framework
Kalay Modelling polyhedral solids bounded by multi-curved parametric surfaces
JPH05324775A (ja) コンピュータ支援設計装置および方法
JP2817917B2 (ja) ソリッドcadシステム
Rassovsky Cubical marching squares implementation
US6504536B1 (en) Shape creating/displaying device
Alciatore et al. Importing and reshaping digitized data for use in rapid prototyping: a system for sculpting polygonal mesh surfaces
van Emmerik Creation and modification of parametrized solid models by graphical interaction
JPH05101152A (ja) 3次元数値計算メツシユ生成方法
JP2518935B2 (ja) 住宅設計支援装置
JP2006114007A (ja) 2次元および3次元図形のデータをコンピュータのメモリに記録するデータ構造、プログラム及び記録媒体
Vasiljevs Procedural modeling of park layouts
TWI486905B (zh) 從iges檔案中匯入曲面的系統及方法
Haman Deformation based modelling.

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees