JP4031758B2 - インタラクティブな特徴ベースの地球科学幾何学的モデリングのためのシーングラフの構築および保守 - Google Patents

インタラクティブな特徴ベースの地球科学幾何学的モデリングのためのシーングラフの構築および保守 Download PDF

Info

Publication number
JP4031758B2
JP4031758B2 JP2003517842A JP2003517842A JP4031758B2 JP 4031758 B2 JP4031758 B2 JP 4031758B2 JP 2003517842 A JP2003517842 A JP 2003517842A JP 2003517842 A JP2003517842 A JP 2003517842A JP 4031758 B2 JP4031758 B2 JP 4031758B2
Authority
JP
Japan
Prior art keywords
property
feature
volume
geometric
instance
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
JP2003517842A
Other languages
English (en)
Other versions
JP2004537817A5 (ja
JP2004537817A (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.)
Schlumberger Holdings Ltd
Original Assignee
Schlumberger Holdings 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 Schlumberger Holdings Ltd filed Critical Schlumberger Holdings Ltd
Publication of JP2004537817A publication Critical patent/JP2004537817A/ja
Publication of JP2004537817A5 publication Critical patent/JP2004537817A5/ja
Application granted granted Critical
Publication of JP4031758B2 publication Critical patent/JP4031758B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

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/005Tree description, e.g. octree, quadtree
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01VGEOPHYSICS; GRAVITATIONAL MEASUREMENTS; DETECTING MASSES OR OBJECTS; TAGS
    • G01V1/00Seismology; Seismic or acoustic prospecting or detecting
    • G01V1/28Processing seismic data, e.g. for interpretation or for event detection
    • G01V1/32Transforming one recording into another or one representation into another
    • 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/05Geographic models

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Geometry (AREA)
  • Remote Sensing (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Acoustics & Sound (AREA)
  • Environmental & Geological Engineering (AREA)
  • Geology (AREA)
  • General Life Sciences & Earth Sciences (AREA)
  • Geophysics (AREA)
  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)
  • Instructional Devices (AREA)

Description

関連出願
本願は、2001年7月31日に出願された米国仮特許出願第60/308,915号を改変したものである。その優先権を米国特許法第120条に基づき主張する。
技術分野
本発明は、一般に、コンピュータグラフィックスイメージングおよび幾何学的モデリングに関する。より詳細には、本発明は、インタラクティブに地球科学のモデルを構築、編集、表現(rendering)および操作することに関する。
地質学者、地球物理学者および石油技師は、炭化水素および、程度は低いがその他の鉱物を探索および製造する計画を立てるために、地殻のコンピュータ化モデルをはじめとしたモデルを使用する。炭化水素は、ますます希少となっているので、コンピュータ化モデルの正確さは、炭化水素の位置を突き止め、製造するためのコスト、およびガソリンや加熱オイルのような炭化水素産物に関連するコストを制限するのにますます重要となっている。
コンピュータ化モデルに保存された地球物理学的および地質学的データの解釈は、モデルに包含される情報が識別され編集され得るように、そのモデルが表示されることができる性能に依存する。
インタラクティブ幾何学的モデリングライブラリ(IGM)(Luらの米国特許第6,191, 787号参照)は、幾何学的エンジンとグラフィックスエンジンとを統合している。この統合は、インタラクティブ特徴ベースの3D地球科学幾何学的モデルの構築、表現および編集をサポートする高レベルのインタフェースを提供する。
シーングラフは、グラフィックスエンジンによるシーンを表す。効率的なシーングラフの構築および保守は、インタラクティブシステムの性能に直接的な影響を及ぼす。本特許出願は、シーングラフを構築および保守するためのいくつかの新たな技法を記載する。それは、IGMの性能を大いに高め、新たな機能をIGMに追加するものである。
IGMが使用する幾何学的エンジンは、幾何学的クエリーインタフェース(GQI)である(Assaらの米国特許法第6,128, 577号参照)。GQIは、"Shapes"(XOX、Inc)と呼ばれる幾何学的カーネルの上に配置される層である。このグラフィックスエンジンは、オープンインベンター(Open Inventor)と呼ばれる。IGMは、この2つのエンジンを統合してインタラクティブ特徴ベースの幾何学的モデリングを可能とする。
GQIは、ブール演算を用いた不規則な空間分割(Irregular Space Partitioning)を介して、幾何学的モデルを構築する。得られるモデルは、境界表現(b-rep)モデルである。GQIは、地球科学アプリケーションのための特徴ベースのモデリングを提供する。そこでは、特徴が、モデル中の幾何学的および位相的エレメントのグループに関心を持つエンドユーザにとって、関心のあるエンティティである。
地球科学のモデルを構成するためのシーングラフを構築および保守するためにいくつかのファクターが考慮されなければならない。その方法および生成される地球科学の幾何学的モデルは、伝統的なCAD産業におけるものとは異なる。本発明に関する他のいくつかの相違点を以下に述べる。これらの相違は、表現するシーングラフを構築および保守する方法に影響を及ぼすものである。
第1に、モデルは、不規則な空間分割によって構成されており、そこでは、入力特徴がばらばらに分割されるが、一方、CAD産業は典型的に、入力特徴がブール演算を介して組み合わされるConstructive Solid Geometryを用いる。第2に、地球科学の幾何学的モデルにおけるマテリアルプロパティは、典型的に空間変化(space changing)であり、特徴レベルにおいてアタッチされている。一方、CAD産業では、モデルの各エレメントが典型的に一定のマテリアルプロパティを持っている。第3に、地球科学モデルにおいてはクラックは正常であるが、一方CADモデルにおいてはクラックは欠陥とされるかもしれない。
CAD産業のユーザのニーズと同様、地球科学のユーザは、入力特徴のアイデンティティに対してインタラクティブであり、それを維持することができること、新たな特徴に割り付けられ、それに対してインタラクティブであることを求めている。
地球科学アプリケーションには、以下の2つのタイプのビューが典型的に要求されている。第1のタイプは、モデル中に表面セルまたはモデルの特徴を表現する表面ビューである。第2のタイプは、モデル中にボリュームセルまたは特徴を表現するボリュームビューである。表面セルは、独自のアイデンティティを持っている。それはまた、2つのボリュームが共有する境界セルとしての機能も果たす。ユーザはまた、この2つのタイプの組み合わせも求めている。その結果、同じ幾何学的モデルのための図形による表示が1つより多く存在することになる。
最後に、地球科学アプリケーションに関連するソフトウェアは、典型的にかなりのコンピュータリソースを消費する、容易に動かされない強力なワークステーションを必要とすることもしばしばある。しかしながら、フィールドロケーションにおいては、上記の能力を持つことは望ましいであろう。したがって、当該技術においては、それがラップトップコンピュータのような普通の移動可能コンピュータ装置にインストールできるほどに、地球科学のソフトウェアの効率を上昇させることが必要とされている。
本発明によれば、新たなシーングラフ構築方法により、要求されるメモリを減少させることによって、ならびにグラフィックスオブジェクト(見えるように設定されているか、もしくは見えないように設定されているか、および有効もしくは無効のいずれにかにかかわらず)とそれらの対応する幾何学的オブジェクトとの間の一貫性(consistency)を処理する有限状態機械を提供することによって、従来技術に関連する不利な点および問題点を解決し、それによってその幾何学的形状もしくは位相が変化し、ユーザによって見えるように設定されたグラフィックスオブジェクトのみを選択的もしくは部分的に更新すること、さらに性能を高めることを可能としている。
本発明は、第1の表面を含むモデルをインタラクティブに編集する方法を含む。この方法は、プロセッサ、保存システムおよび少なくとも1つの入力および少なくとも1つの出力装置を備えたプログラム可能なコンピュータ上で実行される。該モデルは、プログラム可能なコンピュータによって読み取り可能な媒体に保存されることが好ましい。または、テープ、ハードディスク、CD−ROMなどの他の媒体に保存されることもできる。保存システムを用いて操作するデータベース及びプロセッサは、1以上のシーングラフにおいて見ることができる種々のオブジェクトのモデルを保存する。
本発明の最も簡単な態様において、データベース内の第1の表面特徴を表すデータをランダムアクセスメモリまたはコンピュータシステムのシステムメモリーにローディングする。集合体特徴を第1の表面特徴のために作成する。集合体特徴を作成した後、第1のグラフィックスオブジェクトを集合体特徴から作成する。次に、グラフィックスオブジェクトをアプリケーションシーングラフに追加する。その後、集合体特徴のための幾何学的オブジェクトを作成し、次に第1の表面特徴をモデルの中に編集する。表面特徴を編集した後、その幾何学的オブジェクトが変化し、かつユーザが見ることができるグラフィックスオブジェクトだけが更新されず、したがって時間とリソースを節約することになるように、モデルのグラフィックスの選択的更新を行う。選択的更新は、本発明にとって重要な特徴であり、オブジェクトが見えるかどうかおよび/または変化したかどうかに関わらず、全てのオブジェクトを更新していた従来技術のシステムと本発明とを区別するものである。本発明は、ユーザに表示されるモデル中のグラフィックスを更新するだけである。例えば、該当するグラフィックスオブジェクトがユーザに見えないものとして設定された場合、それらはすぐには更新されない。更新ステップが一端完了すれば、第1のグラフィックスオブジェクトはアプリケーションシーングラフから除去される。
本発明はまた、インタフェースおよびインタフェースで操作可能なIGM、ならびにIGMで操作可能なGQIを提供する。インタフェースは、第2の表面特徴において実行する操作を選択するために用られ、また、インタフェースは、IGMにユーザが行った選択を知らせるために開発されたものでもある。一旦それが生じると、IGMは、GQIでの操作を呼び出すことが可能である。次にその後、GQIから、少なくとも1回のコールバックを行い、モデルのグラフィックスオブジェクトの更新を行って出力装置をリフレッシュさせることができるように、操作を実行中のIGMに通知を行う。
編集が不規則な空間分割によって達成されること、およびグラフィックスオブジェクトの更新がグラフィックスオブジェクトの作成を含むことが好ましい。または、コールバックを行うことで集合体特徴の状態の変化をもたらす場合、集合体特徴の状態変化は、本発明の一貫性のある有限状態機械に記録される。この一貫性のある有限状態機械は、幾何学とグラフィックスの間の一貫性を管理する。この一貫性のある有限状態機械は、ユーザに提示されるグラフィックスの選択的(部分的)更新を促進する。
本発明の方法はまた、集合体特徴のグラフィックスオブジェクトを無効にすることを含むコールバック方法を含む。このコールバック方法はまた、無効なグラフィックスと有効な幾何学とが区別され得るように、集合体特徴の幾何学の有効化を行う。
本発明のコールバック方法は、コールバックを容易にする1セットのオブジェクト、すなわち、第1の幾何学的モデラー特徴オブジェクトを提供することを含む。幾何学的モデルもしくは特徴オブジェクトに含まれる変更された幾何学的オブジェクトもまた本方法に含まれる。変更された幾何学的オブジェクトに関連する第1のメタ-プロパティ属性オブジェクトも存在する。さらに、メタ-プロパティ属性オブジェクトに関連する第1のメタ-プロパティオブジェクトが提供される。第1のメタ-プロパティ オブジェクトは、それに関連する多数のプロパティ、主に、ポイント設定保存プロパティ、ポイント設定保存プロパティポリシーオブジェクト、セルバックポインタプロパティオブジェクト、集合体バックポインタプロパティポリシーオブジェクト、バックセルポインタオブジェクトに関連する幾何学的セルオブジェクト、幾何学的セルオブジェクトに関連する集合体セルオブジェクト、および集合体セルオブジェクトに関連する表示セルグラフィックスオブジェクトを有している。さらに、幾何学的モデラー特徴オブジェクトに関連する第2のメタ-プロパティ オブジェクトが、第2のメタ-プロパティ属性オブジェクトに関連するメタ-プロパティ オブジェクト同様含まれる。第2のメタ-プロパティ オブジェクトは、第1のメタ-プロパティ オブジェクトと同様の多くのオブジェクトおよび特徴を有している。すなわち、第2のメタ-プロパティ オブジェクトは、ポイント設定保存プロパティオブジェクト、ポイント設定保存プロパティポリシーオブジェクト、特徴バックポインタプロパティオブジェクト、第2の集合体バックポインタ プロパティポリシーオブジェクト、特徴バックポインタプロパティオブジェクトに関連する幾何学的特徴オブジェクト、幾何学的特徴オブジェクトに関連する集合体特徴オブジェクト、および集合体特徴オブジェクトに関連する表示特徴オブジェクトを有している。
コールバックは一連のサブステップにおいて行われる。例えば、コールバックがボリュームオブジェクトに対して行われれば、編集はボリューム特徴に対して行われる。そうでない場合、編集は表面特徴に対して行われる。グラフィックスを更新する場合、更新は、幾何学的に変更されたセルだけに対して行われることが好ましい。あるいは、グラフィックスにおける更新は、位相的に変化した特徴だけを含むことができる。しかしながら、本発明の別の態様は、位相的もしくは幾何学的に変更されたそれらの特徴のグラフィックスを更新することを含む。最後に、更新は位相的もしくは幾何学的に変更された特徴に対して行うことができる。
モデルの集合体特徴のためのグラフィックスの形成は、連続したサブステップにおいて行うことができる。通常、モデルから関連する表面特徴を取得し、関連する表面のそれぞれについて、表面特徴がグラフィックスオブジェクトであれば、グラフィックスオブジェクトが更新される。そうでない場合、グラフィックスオブジェクトがまず形成され、その後グラフィックスオブジェクトが表面シーングラフルートノードに追加される。
本発明の操作
本発明は、プロセッサ、データ保存システム、少なくとも1つの入力装置および少なくとも1つの出力装置を含み、および限定されないが、コンピュータモニター、保存装置、またはプリントアウトを含むコンピュータ上で行われる、インタラクティブにモデルを編集するための方法として説明することができる。このモデルは、コンピュータ読み取り可能な媒体に保存されることが好ましい。モデル自体は少なくとも第1の表面を有する。とはいえ、典型的には多くの表面がモデリングされている。
この方法は、第1の表面特徴をデータ保存システムに保存されているデータベースからローディングすることによって始まる。次に、集合体特徴が第1の表面特徴として形成される。これによって、第1のグラフィックスオブジェクトを集合体特徴から形成することができる。その後、第1のグラフィックオブジェクトをアプリケーションシーングラフに追加する。次に、集合体特徴から幾何学的オブジェクトが形成される。次にモデルの第1の表面特徴を望ましいように編集する。編集が完了すれば(例えば、ユーザが編集モード以外を選択する、または、必要な時間の経過後)、モデルのためのグラフィックスが選択的に更新される。この選択的な更新によって、種々の装置は、すべての更新および変更を再計算したり、表示たりしないでよくなる。実際、ユーザが経験することに影響を及ぼす更新のみが更新される。最後に、第1の表面特徴の第1のグラフィックスオブジェクトがアプリケーションシーングラフから除去される。
編集および更新
編集プロセス自身は、いくつかの工程からなる。まず、インタフェースを提供しなければならない。次に、インタフェースで操作するIGM を提供しなければならない。幾何学的モデリングを可能とするIGMで操作するGQIが提供される。これによってユーザは、インタフェースを介して、第2の表面特徴について行われる操作を選択することができる。このインタフェースは、IGMにユーザの選択を通知するように設計される。この操作自身は、GQIで呼び出される。 編集プロセス中、操作を実行する間、GQIからIGMへのコールバックを少なくとも1回行う必要がある。このコールバックは、モデルのグラフィックスオブジェクトを更新するために用いられる。編集は、不規則な空間分割によって達成することができるが、他の編集技法を本発明に用いることもできる。編集が終了すると、典型的にはグラフィックスオブジェクトを作成することによってグラフィックスの更新が始まる。本発明は、更新する工程が、幾何学的および/または位相的に変更されたグラフィックスのみを更新することを含むという、特別な特徴をもっている。この更新工程はまた、可視の有限状態機械を参照することを含む。可視の有限状態機械は、グラフィックスオブジェクトの更新操作およびグラフィックスオブジェクトの可視性の更新操作を管理することを助ける。可視性の有限状態機械の使用は、(ユーザに)見えるように設計されたグラフィックスオブジェクトのみを更新することができる。可視の有限状態機械は、見えるようにグラフィックスオブジェクトを設計するため、そしてまたグラフィックスオブジェクトの有効性について確認するために用いることができる。グラフィックスオブジェクトが有効である場合、グラフィックスオブジェクトは、シーングラフに追加される。そうでない場合、グラフィックスオブジェクトは、更新することができ、シーングラフに追加することができる。
更新プロセスは、いくつかの工程を含むことができる。例えば、更新は、シーングラフにおけるそれぞれの特徴の状態を確認することを含んでもよい。通常、この特徴のグラフィックスが有効であるか、または特徴の幾何学が無効であれば、この特徴のグラフィックスオブジェクトは更新されない。しかしながら、特徴の幾何学が有効であり、かつ特徴のグラフィックスが無効であれば、特徴のグラフィックスオブジェクトは更新される。
更新の別の形態は、シーングラフにおけるそれぞれのセルの状態を確認することを含むことができる。このようにすれば、セルのグラフィックスが有効であるか、またはセルの幾何学が無効であれば、セルのグラフィックス オブジェクトは更新されない。セルの幾何学的が有効であり、かつセルのグラフィックスが無効であれば、セルのグラフィックスオブジェクトは更新される。
本発明の方法はまた、第2の表面特徴がモデルに含まれていない状況を包含することもできるが、もちろん第2の特徴をモデルに含むことができる。
グラフィックスの作成
本発明の方法はまた、集合体特徴のような種々のエンティティのグラフィックスの作成を含む。典型的には、このプロセスは、モデルの全ての関連する表面特徴を取得することを含む。関連する表面特徴のそれぞれについて、表面特徴がグラフィックスオブジェクトを持つ場合、グラフィックスオブジェクトが更新される。そうでない場合は、表面特徴のグラフィックスオブジェクトが作成される。その後、表面特徴のグラフィックスオブジェクトが表面シーングラフルートノードに追加される。
先の段落で概略を示した工程に加えて、他の工程も任意に達成することができる。例えば、表面特徴のための全ての二次元的なセルの集合体オブジェクトを取得してもよい。次に、セルのそれぞれの集合体オブジェクトを促して、少なくとも1つの有効なグラフィックスオブジェクトを取得させ、グラフィックスオブジェクトを表面特徴のサブシーングラフに追加させることができる。これが一旦完了すれば、表面特徴のグラフィックスオブジェクトを有効にすることができる。
直前で概略を示した方法では、更に多くのステップを行ってもよい。例えば、セルの有効なグラフィックスオブジェクトを取得する工程は、セルのグラフィックスオブジェクトが存在しないかどうかを判定するための確認を含むことができる。グラフィックスオブジェクトが存在しない場合、セルのグラフィックスオブジェクトが作成され、有効とされる。セルのグラフィックスオブジェクトが存在するが有効でない場合、セルのグラフィックスオブジェクトは更新され、有効とされる。
あるいは、グラフィックスを作成するための本発明の方法は、モデルから少なくとも1つのボリュームセルを作成することも含むこともできる。この代替的な方法は、モデルにおいて、少なくとも1つの関連する活性のボリュームセルを取得することを含む。取得後、各ボリュームセルの二次元的なセルの全てのグラフィックスオブジェクトが作成されたことを確認することができる。次に、二次元的なセルのそれぞれに対して、集合体を取得することができる。二次元的なセル集合体が存在しない場合、新たな集合体を作成することができる。その後、それぞれの二次元的なセルについて、それが有効なグラフィックスを持つかどうかを確認する。その後、各ボリュームセルのグラフィックスオブジェクトを作成することができる。次に、各ボリュームセルについて、ボリュームセルのそれぞれの二次元的なセルのグラフィックス コンテンツを、好ましくはカラーマテリアルを含まない、ボリュームセルのグラフィックスオブジェクトのサブシーングラフに追加する。最後に、各ボリュームセルのそれぞれについて、ボリュームシーングラフルートノードにグラフィックスオブジェクトを追加する。さらに、二次元的なセルを図表的に表した、好ましくはカラーマテリアルを含まない、グラフィックスコンテンツのインスタンテーションは、二次元的なセルを子とした表面特徴のグラフィックスオブジェクトを含む少なくとも1つのシーングラフ、ならびに、1つのボリュームセル、または二次元的なセルをそれらの境界として持つ2つボリュームセルのグラフィックスオブジェクトを含む少なくとも1つのシーングラフによって共有される。
コールバック
本発明では、オブジェクト フレームワーク内に広範にコールバックを使用する。例えば、コールバックは、集合体特徴の変化をもたらす。集合体特徴は、一貫性のある有限状態機械であって、その結果、コールバックが効率的に容易化されることが好ましい。一貫性のある有限状態機械は、幾何学とグラフィックスの間の一貫性を管理することもまた好ましい。コールバックは、集合体特徴のグラフィックスオブジェクトを無効にし、集合体特徴の幾何学を有効にするために有用である。例えば、コールバックがボリュームオブジェクトのためのものである場合、ボリューム特徴のために特別のコールバックが使用される。そうでない場合、表面特徴の編集コールバックが行われる。
本発明のコールバックは、種々の構成および環境において現われる。例えば、ボリューム特徴の編集コールバックは、幾何学的モデラーインタフェースを用いたメタ-プロパティ分割コールバック分類方法を登録することを含む。幾何学的モデラーインタフェースは、ボリューム分割事象が生じたときに呼び出されることが意図されている。その後、第1のメタ-プロパティ属性が、ボリューム特徴によって具備される少なくとも1つのボリュームオブジェクトにアタッチされる。次に、コールバックは、第1のボリュームオブジェクトと、第1のボリュームオブジェクトに対する変更によって影響を受ける第2のボリュームと、第1のメタ-プロパティ属性とを指定する幾何学的モデラーインタフェースによって受け取られる。次にポインタ値が第1のメタ-プロパティ属性から取得され、ポインタ値をメタ-プロパティオブジェクトの位置を突き止めるために逆参照することが可能となる。分割コールバックは、第1のメタ-プロパティ属性、第1のボリュームオブジェクトおよび第2のボリュームオブジェクトを持つ第1のメタ-プロパティ オブジェクトにおいて呼び出される。この最後のステップ自身は、第1のポイント設定プロパティインスタンスおよびプロパティインスタンスからの第1のポイント設定保存ポリシーインスタンスを取得すること、並びに、ポイント設定保存プロパティインスタンス、第1のボリュームオブジェクトおよび第2のボリュームオブジェクトをもつポイント設定保存プロパティポリシーインスタンスに対する第1の分割コールバックを開始することを含む。この最後のサブステップ自身は、第1のボリュームオブジェクトの、少なくとも1つの含有特徴を取得すること、および含有特徴および第2のボリュームオブジェクトを持つ幾何学的モデラーインタフェースにおいて特徴追加子更新を開始することを含む。次に、集合体バックポインタプロパティポリシーインスタンスがセルバックポインタプロパティインスタンスから得られ、その結果、集合体バックポインタプロパティインスタンスによって第2の分割コールバックが開始されるようにセルバックポインタプロパティを取得する。後のコールバック自身は、セルバックポインタプロパティインスタンスからボリューム幾何学的セルオブジェクトを取得すること、およびボリューム幾何学的セルオブジェクトに対するセル分割コールを開始することを含む。後のサブステップは、ボリューム幾何学的セルオブジェクトのボリュームセル集合体パトロンに対するコールを開始し、第1のボリュームのグラフィックスを無効にすることを含むことができる。
ボリューム特徴の特徴追加子コールバックを行うことは、特徴追加子事象が生じたときに呼び出される幾何学的モデラーインタフェースでのメタ-プロパティ追加子コールバック分類方法を登録することを含む。これは、第2のメタ-プロパティ属性インスタンスをボリューム特徴にアタッチすること;および幾何学的モデラーインタフェースから、ボリューム特徴と、ボリュームオブジェクトと、第2のメタ-プロパティ属性とを指定する追加子コールバックを受け取ることを含むことができる。第2のメタ-プロパティ属性からポインタ値が取得され、第2のメタ-プロパティオブジェクトの位置を突き止めるためにポインタ値が逆参照される。追加子コールバックは、第2のメタ-プロパティオブジェクトにおいて呼び出される。後のステップは、第2のポイント設定保存プロパティインスタンスを取得すること;第2のポイント設定保存プロパティインスタンスから第2のポイント設定保存プロパティポリシーインスタンスを取得すること;およびボリューム特徴およびボリューム幾何学的オブジェクトを持つ第2のポイント設定ポリシーオブジェクトの追加子コールバック方法を開始することを含む。後のサブステップ自身は、ポイント設定保存プロパティをボリュームセルにアタッチすること;特徴バックポインタプロパティインスタンスを取得すること;および特徴バックポインタプロパティインスタンスの特徴から第2の集合体バック ポインタ プロパティ ポリシー インスタンスを取得すること;およびボリューム特徴、ボリューム幾何学的オブジェクトおよびボリューム特徴バックポインタプロパティを持つ、第2の集合体バックポインタ プロパティインスタンスの追加子コールバック方法を開始することを含む。後のサブステップ自身は、特徴バックポインタプロパティインスタンスによって確認される、ボリューム特徴幾何学的オブジェクトに対する追加子通知方法を開始することを含む。後のサブステップ自身は、ボリューム特徴オブジェクトの幾何学を有効にするために、ボリューム特徴オブジェクトのボリューム特徴集合体パトロンに対するコールを開始すること;およびボリューム特徴オブジェクトのグラフィックスを無効にするために、ボリューム 特徴オブジェクトのボリューム特徴集合体パトロンに対するコールを開始することを含む。
本発明の更に別の方法は、表面特徴の編集コールバックを行うことを含む。この方法のこの局面は、表面分割事象が生じたときに呼び出されるべき幾何学的モデラーインタフェースで、メタ-プロパティ分割コールバック分類方法を登録すること;表面特徴によって具備されるメタ-プロパティ属性を少なくとも1つの表面オブジェクトにアタッチすること;幾何学的モデラーインタフェースから、第1の表面オブジェクトと、第1の表面に対する変更による影響を受ける第2の表面と、第1のメタ-プロパティ属性とを指定するコールバックを受け取ること;メタ-プロパティ属性からポインタ値を取得し、およびメタ-プロパティ オブジェクトの位置を突き止めるためにポインタ値を逆参照すること;第1のメタ-プロパティオブジェクトにおいて、第1の表面オブジェクト、第2の表面オブジェクト及び第1のメタ-プロパティ属性自身を持つ分割コールバックを呼び出すことを含む。後のステップは、ポイント設定保存プロパティインスタンスを取得すること;プロパティインスタンスからポイント設定保存ポリシーインスタンスを取得すること;およびポイント設定保存プロパティインスタンス、第1の表面オブジェクト、および第2の表面オブジェクトを持つ、ポイント設定保存ポリシーインスタンスに対する第1の分割コールバックを開始することを含む。後のサブステップ自身は、第1の表面オブジェクトのための少なくとも1つの含有特徴を取得すること;および含有特徴および第2の表面オブジェクトを持つ、幾何学的 モデラー インタフェース上で特徴追加更新を開始すること;セルバックポインタプロパティインスタンスを取得すること;セル バック ポインタ プロパティインスタンスから集合体バック ポインタ プロパティ ポリシー インスタンスを取得すること;およびセルバックポインタプロパティインスタンスを持つ第2の分割コールバックを集合体バックポインタプロパティポリシーインスタンスに対して開始することを含む。後のサブステップは、セル バック ポインタ プロパティインスタンスから表面幾何学的セルオブジェクトを取得すること;および表面幾何学的セルオブジェクトに対するセル分割コールを開始することを含む。後のサブステップは、表面幾何学的セル オブジェクトの表面セル集合体パトロンへのコールを開始し、第1の表面のグラフィックスを無効にすることを含む。
特徴追加コールバックを行う工程(先行するパラグラフに記載)は、幾何学的モデラー インタフェースでメタ-プロパティ追加子コールバック分類方法を登録して、特徴追加子事象が生じたときに呼び出されるようにすること;第2のメタ-プロパティ属性インスタンスを表面特徴にアタッチすること;幾何学的モデラーインタフェースから、表面特徴と、表面オブジェクトと、第2のメタ-プロパティ属性とを指定する追加子コールバックを受け取ること;第2のメタ-プロパティ属性からポインタ値を取得し、第2のメタ-プロパティ オブジェクトの位置を突き止めるためにポインタ値を逆参照すること;および第2のメタ-プロパティオブジェクトにおいて追加子コールバックを呼び出すことを含む。後のサブステップ自身は、第2のポイント設定保存プロパティインスタンスを取得すること;第2のポイント設定保存プロパティインスタンスから、第2のポイント設定保存プロパティポリシーインスタンスを取得すること;および、表面特徴および表面幾何学的 オブジェクトをもつ第2のポイント設定ポリシーオブジェクトの追加子コールバック方法を開始することを含む。後のサブステップ自身は、ポイント設定保存プロパティをボリュームセルにアタッチすること;特徴バック ポインタ プロパティインスタンスを取得すること;第2の集合体バック ポインタ プロパティ ポリシー インスタンスを、特徴バック ポインタ プロパティインスタンスから取得すること、および表面特徴、表面幾何学的オブジェクトおよび表面特徴バックポインタプロパティをもつ第2の集合体バックポインタプロパティインスタンスの子コールバック方法を開始することを含む。後のサブステップ自身は、表面特徴オブジェクトの表面特徴集合体パトロンに対するコールを開始し、表面特徴オブジェクトの幾何学を有効にすること;および表面特徴オブジェクトの表面特徴集合体パトロンに対するコールを開始し、表面特徴オブジェクトのグラフィックスを無効にすることを含む。
コールバックは、本発明の種々のオブジェクトの多数の効果を持つことができる。例えば、コールバックを行うことによって、セルの状態を変化させ得る。この状態の変化は、一貫性のある有限状態機械に記録されることができる。
本発明の方法の別の局面は、ボリューム特徴のために編集コールバックを行うことである。本発明のこの局面は、ボリュームの併合事象が生じたときに呼び出される幾何学的モデラーインタフェースでメタ-プロパティ併合コールバック分類方法を登録すること; メタ-プロパティ属性をボリューム特徴によって限定される少なくとも1つのボリュームオブジェクトにアタッチすること;幾何学的モデラーインタフェースから、ボリュームオブジェクトと、第2のボリュームと、ボリュームオブジェクトに以前は結合していて除去された表面オブジェクトと、メタ-プロパティ属性とを指定するコールバックを受け取ること;幾何学的モデル属性からポインタ値を取得し、メタ-プロパティオブジェクトの位置を突き止めるためにポインタ値を逆参照すること;および第1のメタ-プロパティオブジェクトに併合コールバックを呼び出すことを含む。後のサブステップ自身は、ポイント設定保存プロパティインスタンスを取得することおよび、プロパティインスタンスからポイント設定保存ポリシー インスタンスを取得すること;およびポイント設定保存プロパティ、第1のボリューム オブジェクト、第2のボリュームオブジェクト、および表面オブジェクトを持つ、ポイント設定保存ポリシーインスタンスに対する併合コールバックを開始することを含む。後のサブステップ自身は、第1のボリュームオブジェクトのために少なくとも1つの含有特徴を取得すること;含有特徴及び第2のボリュームオブジェクトを持つ幾何学的モデラーインタフェースにおいて特徴除去子更新を開始すること;セルバックポインタプロパティインスタンスを取得すること;集合体バックポインタプロパティポリシーインスタンスをセルバックポインタプロパティインスタンスから取得すること;および第2の併合コールバックが、セルバックポインタプロパティインスタンス、第1のボリュームオブジェクト、第2のボリュームオブジェクト、および表面オブジェクトを持つ集合体バックポインタプロパティ ポリシー インスタンスに対して開始することを含む。後のサブステップ自身は、セルバックポインタプロパティインスタンスからボリューム幾何学的セルオブジェクトを取得すること、およびボリューム幾何学的セルオブジェクトに対するセル併合コール開始することを含む。後のサブステップ自身は、ボリューム幾何学的セルオブジェクトのボリュームセル集合体パトロンに対するコールを開始して、第1のボリュームのグラフィックスを無効にすることを含む。
ボリューム特徴自身において編集コールバックを行うための方法を示し、任意に子編集コールバックの除去を含む。後のサブ方法は、特徴除去子事象が生じたときに呼び出される幾何学的モデラーインタフェースでメタ-プロパティ除去子コールバック分類方法を登録すこと;第2のメタ-プロパティ属性インスタンスをボリューム特徴にアタッチすること;幾何学的モデラーインタフェースから、ボリューム特徴と、ボリュームオブジェクトと、第2のメタ-プロパティ属性とを指定する除去子コールバックを受け取ること;第2のメタ-プロパティ属性からポインタ値を取得する;第2のメタ-プロパティオブジェクトの位置を突き止めるためにポインタ値を逆参照すること;および第2のメタ-プロパティオブジェクトにおいて除去子コールバックを呼び出すことを含む。後のサブステップは、第2のポイント設定保存プロパティインスタンスを取得すること;第2のポイント設定保存プロパティインスタンスから、第2のポイント設定保存プロパティポリシー インスタンスを取得すること;ボリューム特徴およびボリュームボリューム 幾何学的オブジェクトを持つ、第2のポイント設定ポリシーオブジェクト除去子コールバック方法を開始することを含む。後のサブステップは、ボリュームセルからポイント設定保存プロパティを除去すること;特徴バックポインタプロパティインスタンスを取得すること;特徴バック ポインタ プロパティインスタンスから第2の集合体バック ポインタ プロパティ ポリシー インスタンスを取得すること;およびボリューム特徴、ボリューム幾何学的オブジェクトおよびボリューム特徴バックポインタプロパティを持つ、第2の集合体バックポインタプロパティポリシーインスタンスの除去子コールバック方法を開始することを含む。後のサブステップは、ボリューム特徴オブジェクトのボリューム特徴集合体パトロンへのコールを開始し、ボリューム特徴オブジェクトの幾何学を有効にすること;およびボリューム特徴オブジェクトのボリューム特徴集合体パトロンへのコールを開始し、ボリューム特徴オブジェクトのグラフィックスを無効にすることを含む。
表面ボリュームで編集コールバックを行うことは、ボリューム特徴(上記)と同じ類似の方法であることを示している。具体的に、表面特徴の編集コールバックを行う工程は、表面併合事象が生じたときに呼び出されるべき幾何学的モデラーインタフェースでメタ-プロパティ併合コールバック分類方法を登録すること;第1のメタ-プロパティ属性を、表面特徴によって限定される少なくとも1つの表面オブジェクトにアタッチすること;幾何学的モデラーインタフェースから、表面オブジェクトと、第2の表面オブジェクトと、第1および第2の表面に以前は結合していて除去された曲面オブジェクトと、メタ-プロパティ属性とを指定するコールバックを受け取ること;幾何学的モデル属性からポインタ値を取得し、メタ-プロパティオブジェクトの位置を突き止めるためにポインタ値を逆参照すること;および第1のメタ-プロパティオブジェクト中に併合コールバックを呼び出すことを含む。後のサブステップは、ポイント設定保存プロパティインスタンスを取得すること;プロパティインスタンスから、第1のポイント設定保存ポリシーインスタンスを取得すること;およびポイント設定保存プロパティインスタンス、第1の表面オブジェクト、第2の表面オブジェクトおよび曲線オブジェクトを持つポイント設定保存ポリシーインスタンスに対して、第1の併合コールバックを開始することを含む。後のサブステップは、第1の表面オブジェクトのために少なくとも1つの含有特徴を取得すること;および含有特徴および第2の表面オブジェクトを持つ幾何学的モデラーインタフェースにおいて、特徴除去子更新を開始すること;集合体バック ポインタ プロパティ ポリシー インスタンスをセル バックポインタプロパティインスタンスから取得すること;およびポイント設定保存プロパティインスタンス、第1の表面オブジェクト、第2の表面オブジェクトおよび曲線オブジェクトを持つ、集合体バックポインタプロパティポリシーインスタンスに対する第2の併合コールバックを開始することを含む。後のサブステップは、セル バック ポインタ プロパティインスタンスから幾何学的セルオブジェクトを取得すること;および表面幾何学的セルオブジェクトに対するセル併合コールを開始することを含む。後のサブステップは、表面幾何学的セルのセル集合体パトロンに対するコールを開始し、第1の表面のグラフィックスを無効にすることを含む。
最後に、表面特徴のための特徴除去コールバックを行う工程は、特徴除去子事象が生じたときに呼び出されるべき、幾何学的モデラーインタフェースでメタ-プロパティ除去子コールバック分類方法を登録すること;第2のメタ-プロパティ属性インスタンスを表面特徴にアタッチすること;幾何学的モデラーインタフェースから、表面特徴と、表面オブジェクトと、第2のメタ-プロパティ属性とを指定する前記除去子コールバックを受け取ること;第2のメタ-プロパティ属性からポインタ値を取得し、第2のメタ-プロパティ オブジェクトの位置を突き止めるためにポインタ値を逆参照すること;および第2のメタ-プロパティ属性、表面特徴及び表面幾何学的オブジェクトを持つ第2のメタ-プロパティ オブジェクト中の除去子コールバックを呼び出すことを含む。後のサブステップは、第2のポイント設定保存プロパティインスタンスを取得すること;第2のポイント設定保存プロパティインスタンスから第2のポイント設定保存プロパティポリシー インスタンスを取得すること;および表面特徴および表面幾何学的オブジェクトを持つ、第2のポイント設定ポリシーオブジェクトオブジェクト中の除去子コールバックを開始することを含む。後のサブステップ自身は、表面セルからポイント設定保存プロパティを除去すること;特徴バック ポインタ プロパティインスタンスを取得すること;特徴バック ポインタ プロパティインスタンスから第2の集合体バック ポインタ プロパティ ポリシー インスタンスを取得すること;および表面幾何学的オブジェクトおよび表面特徴ポインタプロパティをもつ、第2の集合体バックポインタプロパティポリシーインスタンスの除去子コールバック方法を開始することを含む。 後のサブステップは、バックポインタプロパティインスタンスによって確認される表面特徴幾何学的オブジェクトに対して、除去子通知コールを開始することを含む。後のサブステップは、表面特徴オブジェクトの表面特徴集合体パトロンに対するコールを開始し、表面特徴オブジェクトの幾何学を有効にする;および表面特徴オブジェクトの表面特徴集合体パトロンに対するコールを開始し、表面特徴オブジェクトのグラフィックスを無効にするを含む。
コールバックは、多くの方法で行うことができる。しかしながら、通常、コールバックは1セットの1以上のオブジェクトを用いて達成される。通常、そのオブジェクトのセットは、第1の幾何学モデラー特徴オブジェクト;幾何学モデラー特徴オブジェクトに含まれた変化した幾何学オブジェクト;変化された幾何学オブジェクトに効果を及ぼして関連している第1のメタ‐プロパティ属性オブジェクト;第1のメタ-プロパティ属性と関連する第1のメタ-プロパティオブジェクト;幾何学的モデラー特徴オブジェクトと関連する第2のメタ-プロパティ属性オブジェクト;および第2のメタ-プロパティ属性オブジェクトと関連する第2のメタ-プロパティオブジェクトを含む。
第1のメタ-プロパティ オブジェクト自身は、ポイント設定保存プロパティオブジェクト;ポイント設定保存プロパティポリシーオブジェクト;セルバックポインタプロパティオブジェクト;集合体バックポインタプロパティポリシーオブジェクト;コールバックポインタオブジェクトと関連する幾何学的セルオブジェクト;幾何学的セルオブジェクトと関連する集合体セルオブジェクト;および集合体セルオブジェクトトン関連する表示セルグラフィックスオブジェクトのような1セットのオブジェクトを含む。
第2のメタ-プロパティ属性オブジェクト自身は、1セットのオブジェクトを持ち、第2のポイント設定保存プロパティオブジェクト;第2のポイント設定保存プロパティポリシーオブジェクト;特徴バックポインタプロパティオブジェクト;第2の集合体バックポインタプロパティポリシーオブジェクト;特徴バックポインタプロパティオブジェクトと関連する幾何学的特徴オブジェクト; 幾何学的 特徴オブジェクトと関連する集合体特徴オブジェクト;および集合体特徴オブジェクトと関連する表示特徴グラフィックスオブジェクトとを含む。
幾何学的モデル構築および編集は大半が、適切なグラフィックスのサポートを必要とするインタラクティブプロセスである。インタラクティブ コンピュータグラフィックスの複雑さから、オブジェクト指向グラフィックスライブラリであるOPEN INVENTORのような高レベルの開発されたツールを用いたアプリケーションを書くことが好ましい。
地球科学のモデリングを実行するためのアプリケーションである、GEOFRAME (Schlumberger Ltd.製)は、GEOMETRY QUERY INTERFACE(「GQI」)と呼ばれる幾何学的モデリングコンポーネントを備えている。それは、固体3D幾何学的モデルを構成し、編集するためのアプリケーションプログラミングインタフェース(「API」)を提供するものである。固体3D幾何学的モデルは、モデルに含まれる種々の幾何学的エレメント間の関係を包含する。GQI幾何学的モデリング機能性の一部は、市販の幾何学的エンジン、XOX Corporation製のSHAPES パッケージによって提供される。
グラフィックスシステムは、幾何学的モデルに含まれるもののような複雑な関係が視覚化されるように、グラフィックス情報を表示する。SHAPESパッケージは、OpenGLに基づくグラフィックスシステムを含む。しかしながら、性能上の理由から、グラフィックスのインタラクションおよび幾何学的処理を分離することが重要である。さらに、事実上全ての地球科学アプリケーションは、全てが幾何学的モデリングを要求しているのではないにしても、インタラクティブグラフィックスの視覚化を要求している。したがって、それは、1つの通常の好適なグラフィックスシステムを、アプリケーションを書くために使用し、幾何学的エンジンのみを追加するための開発を簡易化する。
グラフィックスシステムと幾何学的システムの両方を含むアプリケーションを設計する際、その設計の問題点は、どのようにして幾何学的モデルを表現し、かつ視覚的に相互作用するかだけでなく、どのように幾何学的エンジンとグラフィックスエンジンを滑らかに一緒に動かすかという点である。OPEN INVENTORおよびGQI/SHAPESの場合、双方のエンジンは、自動抑制され、それら自身のオブジェクトおよびそれらオブジェクトに関する操作を管理する。2つのエンジンは、幾何学的、位相的な関係及び物性を記載するために、等価なオブジェクトを表す異なる内部表示を持っている。これは、両エンジンによって同じオブジェクトが操作されたときに矛盾を生じさせる。2つのエンジンの統合によって、トラックを維持し、矛盾を両立させるために、いくつかのメカニズムの追加が必要となる。
1つのそのようなデザインである、インタラクティブ幾何学的モデリングライブラリ(「IGM」)10は、高レベルのグラフィックスシステム(「グラフィックスシステム」)12と、高レベルの幾何学的モデリングパッケージ(「幾何学的システム」)14とを統合し、図1に示すように、双方のサブシステムを両立して見えるようにしたアプリケーション16を提供する。IGMは、グラフィックスシステムと幾何学的システムを統合して、地球科学モデルのインタラクティブな構築、編集および視覚化を可能とする。
地球科学のアプリケーションは、従来のCADパッケージによって満たされるものに加えて、特別な幾何学的モデリングの必要基準を持っている。サブ表面構造は、典型的に「レイヤーケーキ」20を形成している。そこでは、層位22a、22b、22c、層位24a、24bおよび層位26および28のような「層位」が、層を、図2に示すように、例えば仕切られた層30a、30b、仕切られた層32a、32b、仕切られた層34a、34bのような分離層がある。レイヤーケーキはしばしば、30a、30b、32a、32b、34a、34bのような「断層ブロック」に分かれている。それらは、断層40および42のような「断層」によって結合されている。幾何学的モデリングに関しては、これは、使用される幾何学的エンジンが、非多様性の幾何学的形状、すなわち、長さが雑多の幾何学的形状の、表現および演算を支持するものでなければならない(すなわち、3D断層ブロックおよび2D断層)であることを意味する。
層位は、層の境界を形成し、断層は、層のブロックを分離およびオフセットしている。論理的に、たとえそれらが、例えば、層32a、32bを層34a、34bから分離する層位22a、22b、22cのように分割され、空間的に分離されていても層および層位は、単一のオブジェクトであると考えられる。
図3に示すように、表面52a、52bを挿入してレイヤーケーキ54を形成することによって、関連領域50は、副分割(sub-divided)される。まず、副分割は、スクリーンのみに現われる。アプリケーションは、表面の位置に満足すれば、計算相互作用およびアッセンブリ中における全てのオブジェクト間の連結関係の確立を「完遂」56し、レイヤーケーキ58を生成する。そして層がスクリーン上に表現され、スクリーンビュー59を提供する。
表面下構造の幾何学的モデルもしくは地球モデルの構築は、大半がインタラクティブプロセスによる。そこでは、新たな表面下データが取得可能であるので、モデルが改良される。図3において、下部表面52bが変形され層位71を形成しており、その上の層60の幾何学的形状を楔形もしくは「ピンチアウト」に変えている。ここでもアプリケーションが満たされた後、完遂62し、幾何学的モデル64中およびスクリーン66上において反映されるべき変化をもたらしている。特に、IGMは2つの層70、72を併合し、層74を生成し、プロセス中において層位76を除去している。そのような変化を収容するためには、モデル編集のための適切なサポートが、モデルをゼロから構築する容易にするためのものと同程度に重要である。
地球モデルは大きくすることもでき、それぞれが数万〜数十万の三角形によってあらわされる数十〜数表の表面を含むこともできる。IGMは、同様に大きなデータセットで行わなければならない。それが、バッチプロセスとして機能するいくつかのアプリケーションにとって許容され、もしくは必要とさえされているとき、それは、インタラクティブに地球モデルとともに働かなければならない。これはモデルを見ることならびにそのオブジェクトおよびそれらの属性を編集することを含む。
異なるアプリケーションが地球モデルを共有することができなければならない。このことは、持続的な保存が、モデルを形成する全ての形状、位相関係および属性を含まなければならないことを意味している。
もっとも商業的な幾何学的モデリングシステムは、境界表現を用い、マテリアルプロパティのような形状、位相、および属性の表示を建築学的に分離している。いくつかのシステムは、非多様性な幾何学的形状、例えば、埋没した表面を持つ3Dオブジェクトまたは埋没した曲線を持つ2Dオブジェクトを表すことができる。そのようなオブジェクトにおいて、境界は、隣接するコンポーネントによって共有されている。例えば、図2に示されているように、断層42は断層ブロック30b、32aおよび32bによって共有されている。
伝統的な計算援用設計(CAD)アプリケーションは、ブロックおよび円筒のような基本の3D構築ブロックを組み合わせることによって複雑な3D幾何学的形状を構築している。これは、構築固体幾何学的(CSG)モデリングと称される。例えば、図4aに示されているように、サブボリューム80a〜dを最初の形状82から減算する。さらに、サブボリューム84a〜cを最初の形状86から減算する。CSGモデリングは、地球モデルを構築するために好適でない。そこでは、3Dオブジェクトの形状、例えば、地質的な層は、層位や断層面によって境界を区切っている2Dオブジェクトから推論しなければならない。
不規則空間分離(「ISP」)は、図4bに示すように、再分割され、挿入されているので、地球モデルを構築することができる。関連領域90は、表面92aおよび92bによって再分割され、レイヤーケーキ94を生成する。岩塩ドームを表すサブボリューム96をレイヤーケーキ94に挿入し、オブジェクト間の境界の形状を編集し、最終的なモデル98を作製する。
ISPモデルは、さらに、異なる境界に沿って現れる内部不連続部を含んでもよい、滑らかに変化するマテリアルプロパティフィールドを表す。不連続境界の位置は、モデルの形状および構造を構成する。不連続境界の形状が明確に表されている。これらの境界は、無限の空間のどこに位置することもでき、どのような形状をとることもでき、分割空間に互いに交差し、複数セットの異なるサブ領域をなすことができる。
ISPモデルは、「関連領域」を定義し、より低次元のオブジェクト、例えば、真っ直ぐなグラフィック境界によって層に再分割されたサブ表面領域によって再分割することもできる。ISPモデルのGQIの実施によって、均一なオブジェクトとしての領域の集合を取り扱うことを可能にする特徴の概念がサポートされる。
幾何学的エンジンは、分析的およびパラメータ的曲線を含む形状の種々の表現ならびに表面表現を提供する。地球科学において、三角形メッシュは、表面表現のために広く用いられている。
モデルの位相的な表現は、ノードが頂点、曲線、面およびボリュームのような位相的なエンティティであり、端面が連結的関係にあるグラフである。これは、境界表現もしくは「b−rep」と呼ばれる。CSGおよびISPモデリングの双方がb−repを生成することができる。
例えば、図5aは、境界106を共有する2つの隣接する矩形102,104からなるオブジェクト100を示す。図5bに示されたオブジェクト100の分解図は、それが2つの面108、110、7つの端部106、112、114、116、118、120および122、ならびに6つの頂点124、136、138、130、132および134を含むことを示している。図5cに示された、これらの幾何学的要素の間の位相的な関係は、面108および110を表す円形136および138をそれぞれ含む。面108は、それぞれ円形140、142、144および146によってそれぞれ表される4つの端部120、122、112および106によって連結され、および境界がつけられている。「境界がつけられている」関係は、円弧150、152、154および156によって表されている。面110は、それぞれ円形158、160、162および146によってそれぞれ表される4つの端部114、116、118および106によって連結され、および境界がつけられている。「境界がつけられている」関係は、円弧164、166、168および170によって表される。
属性は、典型的に位相的なエンティティによって関連付けられている。例えば、矩形の色属性172および174は、それらの対応する面136および138にそれぞれ関連している。
幾何学的モデリングシステムは、総合的な一連の幾何学的操作をサポートする。これらは、曲線/曲線、表面/表面および表面/曲線の交わりならびに和、減算および固体オブジェクトの交わり等のブール演算が含まれる。固体についてのブール演算はまた、(位相的な)分類とも呼ばれる。非多様なオブジェクトに対するサポートは、いくつかの分類、すなわち、再分割操作が「一体構造」のオブジェクトではなく、むしろ複合体を生成することを意味している。例えば、図3の関連領域50の、2つの表面52aおよび52bによる再分割を参照されたい。表面52aおよび52bに加えて、得られたモデルは、元のブロックに置き換えられる3つの層180、182および184を含んでいる。
多くの幾何学的計算は、「インタラクティブ時間」において実行される。すなわち、それらは数秒未満で完成される。しかしながら50万程度の三角形からなるメッシュを含むブール演算は数分程度かかる。
単一オブジェクトの変換は非常に速い。同じオブジェクトの変換は、それがより大きなアッセンブリを形成している場合、再分類が必要であるため、かなりの時間がかかる。
GQI/SHAPESは、非多様体オブジェクトの表現および計算をサポートする幾何学的モデリングシステムを実行する。GQI/SHAPESは、密閉されたアブストラクトデータ型がC言語APIを提供する。アプリケーションが属性を持つコールバックを登録することができるようにするSHAPES属性メカニズム全体において、拡張性が付与されている。分類アルゴリズムとして誘発されるコールバックは、それらの関連するオブジェクトを変化させる。GQI/SHAPESは、持続的な保存のための所有ファイルフォーマットを定義する。
高レベル3Dグラフィックスシステムは、形状および属性表現を密閉したライブラリ、表現方法および対話方法である。市販の製品としては、OPEN INVENTOR、IRIS PERFORMER、HOOPS、RENDERWARE、COSMO 3Dその他がある。本モデルは、拡張可能なオブジェクト指向3DグラフィックスライブラリであるOPEN INVENTORを用いる。アプリケーションは、OPEN INVENTORコールを使用して3Dオブジェクトを作成し、それらを有向非循環(DAG)グラフ、いわゆるシーングラフに配列する。
例えば、図5aに示された、端部が共有された2つの矩形は、図6に示されているように、スクリーングラフとして表してもよい。スクリーングラフの横断順序は、上から下および左から右である。グループノード190は、横断の開始部である。次のノード192は、マテリアルプロパティ、すなわち、色(グレー40)を確立している。ノード194は、画像の開始座標を確立している。ノード196は、「インデックスフェースセット」あるいは、左の矩形の頂点のインデックスを確立している。ノード198は、色マテリアルプロパティの値をグレー20に変更しており、ノード200は、右の三角形の「インデックスフェースセット」を確立している。このスクリーングラフを横断するとき、図5aに示される画像がスクリーンに表示される。
アクションと呼ばれる特別なセットの分類は、アプリケーションがシーングラフを横断するオブジェクトを作成し、そのノード上で操作を行うことを可能とする。例えば、シーングラフ中のオブジェクトを表示するための表現アクションなどがある。シーングラフの役割は、横断順序の定義である。アクションは、操作がオブジェクトに保存されていないが横断中に行われる操作の副作用である状態のときは、いつでも使用される。例えば、図6のシーングラフは、1つの座標ノード194を含んでおり、その座標は、2つのインデックスフェースセットによって共有されている。横断中、「電流座標」のアレイが維持されている。各インデックスフェースセットは、1つの矩形をあらわし、その角座標のインデックスを含んでいる。座標と同様に、マテリアル値も、新たなマテリアルノードによって置き換えられるまで有効である。その結果、図6において、第1の矩形は、第2のものよりグレーの影が暗く描かれる。
センサと呼ばれる別セットの分類を、シーングラフのノードおよびサブグラフをモニタするために使用することができる。アプリケーションは、コールバックとセンサを関連付けることができ、それは、「センサで認識された」オブジェクトの状態が変化するごとに誘発される。
Open Inventorオブジェクトは、箱形、球状および円筒状のような形状、ならびにNURBS曲線および表面および三角形メッシュのようなパラメータ形を暗に含む。形を作成し表示することができるとき、座標変換および光オブジェクト交わり以外の幾何学的計算のためのサポートは存在しない。これらの操作は典型的に速く行われ、再表現が必要な場合、時間を表現することによって支配される。達成可能なフレーム速度がそれをサポートする限りインタラクティブワークが可能である。例えば、シーンが0.1秒で表現されることができるとき、オブジェクトは、シーンの周りを10フレーム/秒で移動することができる。
幾何学的サブシステムおよびグラフィックスサブシステムのIGM統合によって満たされる重要な要件がいくつか存在する。第1に、IGMは、インタラクティブに3Dオブジェクトを構築、編集、および操作するための一貫性のあるオブジェクト指向インタフェースを提供する。第2にIGMは、オーバーヘッドの観点から軽量である。各サブシステムそれ自体は複雑で、統合はオーバーヘッドをさらに最小化するものであり、性能を低下させるものではない。第3に、インタフェースは、カスタマイズが可能であり、拡張可能である。
さらに、3つの主な問題点がIGMによって対処される幾何学的およびグラフィックスシステムの上記概説において述べられている。それらは、いずれかのシステムにおける幾何学的オブジェクトの表現におけるミスマッチ、オブジェクト属性におけるミスマッチ、および処理速度の矛盾である。
幾何学的システムおよびグラフィックスシステムのオブジェクト表現は一致しない。幾何学的システムのオブジェクトは、図5cに示されているように、位相グラフによって明確に連結されているが、グラフィックスオブジェクトは、図6に示すように、単にシーングラフに配列されているに過ぎない。
さらに、地球モデルにおいては、多くの表面が隣接するオブジェクト間の境界として共有されており、その結果、幾何学的システムにおいて2つの役割を果たしている。第1に、それらはそれら自身がオブジェクトであり、空間のいくつかの領域を再分割することによって、地球モデルを構築するために使用される。第2に、それらは岩層の境界表面である。そうであるのでそれらは層オブジェクトの一部をなす。グラフィックスシステムにおいて、地球モデルが表現されるとき、それは、1セットの表面もしくは1セットの層として表現してもよく、またはその両方でもよい。1セットの層を表現するとき、共有される表面は、良好な性能のために1度だけ表現される。
その結果、幾何学的オブジェクトとグラフィックスオブジェクトとの間には1対1の関係は存在しない。むしろ、グラフィックスオブジェクトは、幾何学的オブジェクトの過渡的な表現でなければならず、そのためオブジェクトの2つの表現が維持されなければならないときは、データを複製しなければならないことにもなる。さらに、データ複製は、オブジェクトの1つの表現が変化するとき、その他の表現も同様に更新されることを保証するようにデータの一貫性コントロールを要求する。幾何学的システムの属性は、図5cの色属性172および174のような、オブジェクトもしくはオブジェクトまたは複数のオブジェクトと直接的に関連する。グラフィックスシステムにおける属性は、幾何学的オブジェクトとはっきりとは関連していない。むしろ、それらは、図6のノード192および198のような、シーングラフの「自律的な」オブジェクトであり、表現状態に影響を及ぼし、したがって表現される形状の外形を間接的に制御する。
IGMは、複雑な幾何学的モデルを用いて、インタラクティブワークをサポートする。ユーザがオブジェクトのグラフィックス表現に対して行った変化をモニタすることができ、望ましい場合、幾何学的表現にあらゆる変化を「完遂」させるようにユーザに要求する。図3を参照されたい。関連領域50を表面52aおよび52bを用いて再分割するために、まず表面を正確に位置づけなければならない。これは表面幾何学のみのグラフィックスをインタラクティブに操作することによって行うことができるであろう。この相においては、幾何学的モデルは、スクリーンに見えているものと一致していない。次に、表面を幾何学的モデルに組み込むために分類を行う。やや時間のかかるこのプロセスの後、幾何学的モデル58およびスクリーン54上の表現が再び一致する。
グラフィックスシステムと幾何学的システムの双方は、拡張システムである。この2つのシステムを統合する際の最初の設計上の選択は、1つのシステムを最初のシステムと見て、それを他方のシステムにおいて見られる機能性によって最初のシステムを拡張するか、または、双方のサブシステムの上部の統合層を作成するかのいずれかである。本モデルは、後者のアプローチを用いる。必要に応じて、いずれかのサブシステムを取り換えることができるグラフィックスシステムと幾何学的システムを統合する統合層を用いることで、グラフィックス操作と幾何学的操作とが明確に分離し、そして、各サブシステムが異なるホストにおいて分散された実行を行うことができる。
統合層はC++において実行される。次の設計上の選択は、多重継承を使用するか、オブジェクト集合体を使用するかである。多重継承によって、孫は子の親を、それらの互いの下位にアクセスすることなく継承する。1つの階層における下位が他の改造構造における下位と関連する「いとこ」関係をモデリングすることが望ましい。したがって、多重継承は適切ではない。
さらに、好ましい態様は、サブシステムを完全には密閉せず、むしろそれらをアプリケーションに対して露出させている。これはオーバーヘッドを最小化する。なぜなら、それはオブジェクトをいくつかのそれらのそれぞれのサブシステムに特異的な操作に対して接近しやすい状態にし、一方、統合層において定義された唯一のオブジェクトを管理することを可能にしている。データの一貫性コントロールは、サブシステム間に矛盾が結果的に生成されることを避けることを助長する。
本モデルは、統合層の設計において「オブジェクト集合体」を用いる。「AggregateObject」クラス210は、オブジェクトのGeometryObject表現212およびGraphicsObject表現214の共通の局面を図7に示すように密閉している。ライン220および222は、一方の端部に矢印を持つラインによって示された、1対多数の関係を示しており、その「1つの」関係が矢印をもつ端部にある。例えば、ライン222は、単一のアプリケーション228が複数のAggregateObjectを管理し、そのうちの1つがAggregateObject210であることを示している(その他は図示していない)。ライン216、218は、1対1関係を示している。示されている実施例において、AggregateObject210は、1つのGraphicsObject214および1つのGeometryObject212を有している。GraphicsObjectクラスは、GeometryObjectの多数のグラフィックビュー227および229を含んでもよい。
図7に示された「IgmAction」クラス224は、位相グラフを横断し、グラフィックス表現を生成するか、使われていないグラフィックスオブジェクトを除去するシーングラフを横断するか、または幾何学的オブジェクトを横断するかのいずれかが要求される方法を密閉している。
GeometryObjectクラス階層は、図8に示された幾何学的サブシステム中の幾何学的オブジェクトのためにC++ラッパーを提供する。ツリーの最上部において、IgmObject 230は、GeometryObject ベースクラスである。gmGeometry クラス232(図8における"gm"と"Geometry"の間の下線のように図に示された図中の不定の名称の下線は、明細書のテキスト部分に残されている)は、IgmObjectのサブクラスであり、サブクラス化は、ライン234のような矢印のついたラインによって表されている。gmGeometryクラスは、特徴のためのgmFeature236とセルのためのgmCell238の2つのサブクラスを持ち、このサブクラス化は、ライン240によって示されている。gmFeatureクラスおよびgmCellクラスは、特徴およびセルに対してGQI handleをそれぞれ保存している。gmFeatureクラスは、多数のサブクラスを有しており、それは、平面のためのgmPlane242、ボックスのためのgmBox 244、ウェブのためのgmweb 246、ISPのためのgmISP248、およびその他250を含む。サブクラス化はライン252によって示されている。
図9に示されているように、GraphicsObjectクラス階層は、スクリーン上に表現することができるオブジェクトを記載する。GraphicsObjectクラスは、 GeometryObjectsを表現し、図表による対話を扱う役割を担っている。GraphicsObjectツリーの最上部には、OPEN INVENTORのSoWrapperKit254があり、それは、シーンサブグラフを構築し、管理するためのメカニズムを提供する。典型的にそれらのサブグラフは、属性および形状ノードを包含している。したがって、SoWrapperKits は、属性と形状を関連付け、グラフィックスサブシステムと幾何学的サブシステムの間の属性表現ミスマッチを扱う単純な方法を提供する。oiBaseKit256は、ライン258で示されているようにSoWrapperKitのサブクラスである。このoiBasekitは、oiFeatureクラス260、oiCellクラス262およびoinongmBasekitクラス264を含む多数のサブクラスを持ち、サブクラス化は、ライン266で示されている。oiFeatureクラスは、oiBoxクラス268、oiwebクラス270、oiISPクラス272および他のクラス274を含む多数のサブクラスを持ち、サブクラス化は、ライン276で示されている。さらに、幾何学的モデルの一部ではないオブジェクトを表現するoinongmBaseKitは多数のサブクラスを持ち、サブクラス化は、ライン280で示されている。
幾何学的モデルの一部ではないオブジェクトグラフィックスオブジェクトを除き、グラフィックスオブジェクトは、図6に示されているような、それらの対応するGeometryObjectsを表現する流れを表すシーングラフを包含する。例えば、ISPモデルのためのGraphicsObjectは、その連続する特徴を表すGraphicsObjectsが入れられているシーングラフを含むことができる。アプリケーションは、それら自身のシーングラフにGraphicsObjectsを加え、幾何学的モデルの望ましい部分を表現している。通常、アプリケーションは、新たな分類されていないオブジェクトの GraphicsObjectをシーングラフに追加している。分類後、新たなオブジェクトは、複合体オブジェクトの一部となり、そのその「独立の」表現は、シーングラフから除去される。ISPモデルのためのGraphicsObjectは、シーングラフに追加されるか、またはすでに追加されている場合、更新される。
ユーザの対話を通して、GraphicsObjectに加えられた変更は、Open Inventor センサによってモニタすることができる。センサは、変更のAggregateObject を通知するコールバックを誘発することができる。ユーザは、IGMインタラクタを介してGraphicsObjectと対話する。ユーザが満足するまでは、変更はグラフィカルのみであり、アプリケーションは、AggregateObjectにGraphicsObjectを通知し、GeometryObjectに対する変更を伝えるよう通知する。
必要に応じて、特殊化が可能であるにもかかわらず、GraphicsObjectsは、GeometryObjectsによって特殊化される必要はない。多くの場合において、必要な機能性を密閉するには、一般のGraphicsObjectで十分である。例外として、GeometryObjectから構築されてはいない純粋なグラフィカルな表現が存在するオブジェクト、例えば、分類される前に表面が押出し成型曲面で構築されたもの、および編集もしくは変形するための、ウェブ表面のような特別な対話を要求するオブジェクトが含まれる。
AggregateObjectクラス階層は、図10に示すように、統合されたオブジェクトを表現している。AggregateObjectクラスツリーの最上部には、IgmObject230があり、それはまた、GeometryObjectクラス階層の最上部でもあった(図8参照)。agBaseクラス280は、IgmObjectクラス230のサブクラスであり、サブクラス化は、ライン282で示される。agBaseClassクラスは、agGeometryクラス284およびagBaseClassクラス286の2つのサブクラスを持ち、サブクラス化は、ライン288で示される。agGeometryクラスは、agFeatureクラス290およびagcellクラス292の2つのサブクラスを持ち、サブクラス化は、ライン294で示されている。nagBaseクラス286は、幾何学的モデルの一部ではないオブジェクトを表し、複数のサブ-クラス296を持ち、サブクラス化は、ライン298によって示されている。agFeatureクラスは、agPlaneクラス300、agBoxクラス302、agwebクラス304、agISPクラス306および他のクラス308を含む、多数のサブ-クラスを持ち、サブクラス化は、ライン310で示されている。
AggregateObjectは、GraphicsObjectとGeometryObjectとの間で共有されるデータ統合および方法を表す。図11に示すように、例えば、agPlaneオブジェクトは、その対応するGraphicsObjectsおよびGeometryObjectsと一緒にクラス階層を形成する。階層の大半は、図8〜10に示されたクラス階層から抽出されたものである。ライン320によって表された集合体クラスとグラフィックスクラスの間の関連性、およびライン322によって表された集合体クラスと幾何学的クラスの間の関連性が集合体に追加され、集合体を表現している。
AggregateObjectsは、オブジェクトパラメータ、例えば、点および面の法線から構築することができる。AggregateObjectクラスは、その対応するGraphicsObjectsおよびGeometryObjectsを構築するための方法を提供する。アプリケーションは、いつサブオブジェクトを作成すべきかをコントロールする。
あるいは、AggregateObjectsは、存在するGraphicsObjectsまたは存在するGeometryObjectsから構築することができる。これによって、アプリケーションがグラフィックス表現と等価のパッケージのみからのオブジェクトを導入することができるようになる(例えば、他のOPEN INVENTORアプリケーション)。より重要なことには、アプリケーションが、持続的な保存のために、GeometryObjects表現を使用し、形状、位相的および属性情報によって、完結することができるようになる。典型的に、AggregateObjectsとGraphicsObjectsは、持続的な保存からGeometryObjectsをローディングしているその進行中に作成される。
この3つのクラスツリーは類似しているが、いくつかの相違点がある。例えば、この3つのクラスツリーは、深さが相違する。3つすべてのクラスは、動的タイプ確認をサポートしている。
IGMは、一般的なGraphicsObjects、GeometryObjects及びAggregateObjectsに加えて、多くの標準的なオブジェクトを定義する。例えば、GeometryObject クラス階層は、多くのサブ-クラスを含む。なぜなら、それらは、幾何学的システムによってモデリングされ得る異なるオブジェクトを密閉しているからである。GraphicsObject階層は、より少ないオブジェクトを含む。なぜなら、多くのGeometryObjectsは、一般的な方法を用いて表現することができるからである。例えば、図8の面242のための特別なGeometryObjectが存在するが、図9に示されているような特別なGraphicsObjectは存在しない。メッシュ状表面のような他のオブジェクトおよび複合体オブジェクトは、特別なGraphicsObjectsにおいて実行される、インタラクティブな編集をサポートすることを必要としている。複合体オブジェクトは、相当に複雑になってもよく、コンポーネント基準での更新を管理する特別なクラスに密閉されていてもよい。
図7に示すように、アプリケーションは、AggregateObjects をインスタンス化し、管理する。AggregateObjectsはまた、AggregateObjectsへのコール330によって、グラフィックス操作及び幾何学的操作をも提供する。それは、図12に示すように、その後、委託経路332を通ってGraphicsObject214へ、または、委託経路334を通ってGeometryObject 212へのいずれかの適切なサブオブジェクトに委託される。アプリケーションはまた、図13に示すように、それぞれ、コール経路336および338を介してのGraphicsObjects およびGeometryObjectsへのリードオンリーアクセスをも備え、システムの一貫性に影響を及ぼさない操作を行う。この露出によって、最小のオーバーヘッド要件を満たすことができる。なぜなら、AggregateObject におけるGraphicsObject方法またはGeometryObject方法の反復を最小とすることができるからである。
そのルートクラスがmpMap340(それ自身は、ライン342で示したように Igmobject クラス230内に定着している)である、図14に示された特別なクラスは、物理的特性から表現可能な属性へ、必要なデータフォーマットの翻訳およびマッピングを実行する。例えば、ライン346で示されたように、mpMapクラスからサブクラス化されたmpColorMapクラス344、およびライン350で示されたように、mpColorMapクラス344からサブクラス化されたmpCLutMapクラス348は、多くの方法で標識化されたカラーマップを提供する。ライン354で示されたように、mpCLutMapクラスからサブクラス化されたmpCLutDoubleMapクラス352は、2倍の精密な変動点の数の範囲でカラーをマップする方法を提供する。mpMapおよびmpCLutMapクラスからそれぞれサブクラス化された、他のクラス356および358も存在する。
GraphicsObjectがOpen Inventorセンサを使用するのと同様に、GeometryObjectは、GQI/Shapes属性を通じて利用可能なコールバックメカニズムを使用するAggregateObjectは、幾何学的オブジェクトの状態への変化が通知される。
AggregateObjectは、多数のタスクを遂行し、その2つが一貫性のコントロールとデータ変換管理である、それをより詳細に説明する。該タスクは:
1.GraphicsObjectとGeometryObjectとを統合し、アプリケーションに、幾何学的システムおよびグラフィックスシステムに対する簡単なインタフェースを提供する。
2.オブジェクトの一貫性を管理する。例えば、GraphicsObject 変換をインタラクティブに行うことができる。一方、GeometryObject変換には時間がかかるかもしれない。なぜなら、再計算するために交差および位相関係が必要だからである。AggregateObjectは、変換が両方のサブシステムに適用されたかどうかを追跡する。
3.編集操作の副作用を最小限にする。ISPオブジェクトの全てが典型的に複合体オブジェクトを含む分類による影響を受けるわけではない、多くのサブオブジェクトで構成してもよい。境界表現レベルでの状態変化を管理することによって、AggregateObjectは、必要とされる更新の位置を突き止める。
4.GeometryObjectとGraphicsObjectとの間の「均一な(flat)幾何学的データ」変換を管理する。均一な幾何学的データは、位相関係の表示のない形状データの表示である。
5.管理を選択する。選択は、通常、GraphicsObjectによって開始されるが、いくつかのサブ-クラスは、対応するGeometryObjectによって行われる。その結果、AggregateObject座標選択および交信が行われる。
IGMによって統合される2つのサブシステムは、常に一致しているわけではない。すなわち、それらは、時々同じ幾何学的データの一貫性のない表示を有していることもある。しばしば、この2つのサブシステムは、拡張された編集操作の性能を改良するために、意図的に一致させないでおくことがある。
2つのサブシステムの、有限数の可能な「有効/無効」状態およびAggregateObjectは、図15に示すように、該2つのサブオブジェクトを可変な状態とした有限状態機械として取り扱われることができる。サブオブジェクトは、それらが最後のユーザ対話の結果を表しているかどうかにしたがって、「有効」か「無効」とすることができる。AggregateObjectは、1つの状態から別の状態への遷移をモニタし、管理することによって、一貫性を管理し、処理速度の不一致の問題に対処する。
状態機械は、種々の事象に対応して変化させることによって操作する。 GraphicsObjectおよびGeometryObjectの双方が有効であるとした場合、それは、システムが状態360にあることを意味する。状態360のような状態を表すボックスの左半分は、GraphicsObjectが有効もしくは無効の場合、それぞれ陰影を付けるか、もしくは付けていない。状態360を表すボックスの双方の半分に陰影が付けられているとき、それはGraphicsObjectおよびGeometryObjectの双方が有効であることを示す。
今、GraphicsObjectが変化すると想定する。そのような変化の例は、グラフィックスオブジェクトを選択し、その動きにコミットすることなくそれを移動させるアプリケーションであろう。そのような変化は、GraphicsObjectは有効であるが、GeometryObjectは無効である状態364への遷移362によって表される。GraphicsObjectがさらに変化した場合、遷移366に示されているように、システムはこの状態から遷移しない。
もし、GraphicsObjectに対する変更が、GeometryObjectでなされる変更(移動された表面の分類等)を引き起こすことに関与していたら、または、もし、GeometryObjectが作成されたら、システムは、GraphicsObjectおよびGeometryObjecの双方が有効である状態360へ後ろ向きに遷移368する。そうではなく、もしパラメータが変化したら、システムは、GraphicsObjectおよびGeometryObjecの双方が無効である状態372へと遷移370する。さらに、パラメータの設定もしくは変更は、システムを状態372のままにすることもある。
システムは、2つの環境において、状態372に放置することができる。システムがGraphicsObjectを作成したら、システムは、GraphicsObjectが有効であり、GeometryObject が無効である状態364へ遷移374する。そうではなく、システムがGeometryObjectを作成したら、システムは、GraphicsObjectが無効で、GeometryObjectが有効である状態378に遷移376する、。システムは、GeometryObjectにおいて更なる変化380が起こるまでは状態378のままである。GraphicsObjectが更新されるか、またはGraphicsObjectが作成された場合、システムは、状態360に遷移382する。そうではなく、パラメータが変化した場合、システムは、状態378から、GeometryObjectおよびGraphicsObjectの双方が無効である状態372へ遷移384する。
図3の実施例を検討する。そこでは、ユーザは、新たな表面をスクリーン上に位置づける。表面のグラフィックス表現は、それらが、ユーザによって意図された形状および位置を持つまで、有効である。幾何学的モデルは、無効である。なぜなら、そのオブジェクトは、それらの間の位相関係を確立しないなら、存在するオブジェクトと重なるからである。したがって、該システムは、状態364にある。一旦、ユーザが変更に関与すると、該システムは、状態360に遷移368し、幾何学を変更させ、グラフィックスを更新させる。
GeometryObjectとGraphicsObjectとの間の複雑な変換を行う方法は、図7に示されるように、それら独自のクラスとして実行することができ、それら独自のベースクラスは、IgmAction224と称される。IgmActionは、gg_Action(およびそのサブクラス)を使用して、幾何学からグラフィックスを生成する。gm_objectは、ag_objectまたはoi_objectの助けによって、グラフィックスオブジェクトから幾何学的オブジェクトを生成する(gqi instance)。igm_Objectクラスに導き出されるgg_Action オブジェクトは、位相グラフを横断することができ、望ましい操作を行い、適切であれば、個別のオブジェクトに方法をコールする。ggActionは、サブシステム間の幾何学的オブジェクト表現ミスマッチを扱うコンポーネントである。それは、AggregateObjectによって使用され、一貫性のある管理をサポートする。
いくつかの異なる表現モードにしたがって、GeometryObjects からGraphicsObjectsを作成し、または更新することができるIgmActionの例を述べる。それに依存して、GraphicsObjectsは、表現すべき、異なる属性および形状を含むことになるだろう。表現モードとしては以下が含まれる。
1.サブボリュームの表現であって、そこでは、表面と境界をなす各ボリュームが表現される(隣接するボリュームの境界は、1回だけ表現される)。このモードでは、 ピックスリターンボリューム(picks return volume)オブジェクトおよび切り取られたボリュームが閉じられたオブジェクトとして表現されている(切り開かれたボリュームの反対のボリュームとして)。
2.空間を分割する表面の表現。ピックスリターン表面およびクリッピングを表面の穴に作成してもよい。
モードの表現の管理は、GraphicsObjectsがそれらの対応するGeometryObjectsの視覚表現であることを示している。上記したように、2つのタイプの間には1対1の関係は存在しない。例えば、ボリュームを表現するGraphicsObjectによってどの形状が表現されるかは、隣接するオブジェクトおよびクリッピング面に依存する。
3Dビューに表示されるべき全てのオブジェクトではないが、必然的にオブジェクトは、幾何学的モデルの一部を形成もしくは形成することを意図されている。例としては、テキスト、シンボル、グリフがあげられる。さらに、多くのアプリケーションが表現されるが、幾何学的モデルの一部ではない。幾何学的解釈を持つデータを用いて機能する。地球科学の例は、 ボアホール軌跡(borehole trajectory)がある。これは引用によってのみ表す。IGMは、agBaseClass280(図10)を提供する。「非幾何学的モデル」オブジェクトのようなもののためのnagBaseClass286がそれに由来する。nagBaseClassの等価GraphicsObjectは、oinongmBaseKit264(図9)である。
このアプローチによって、アプリケーションは、幾何学的モデルに用いられるべきものであるかどうかにかかわらず、1つの一般的なタイプのオブジェクトが幾何学的モデルのために用いられることができるようにする。例えば、SceneManagerクラスは、1以上のアプリケーションウインドウに表示されているか、隠されているように、オブジェクトを追跡するように書かれている。さらに、nagBaseClassのサブクラスは、GraphicObjects と全体とのデータベースにおける結合を密閉することができる。
本発明は、ハードウェアにおいてもソフトウェアにおいても、あるいはその両方においても実行することができる。しかしながら、本発明は好ましくは、 プロセッサ、保存システム(揮発性および不揮発性メモリおよび/または保存エレメントを含む)、少なくとも1つの入力および少なくとも1つの出力装置を備えたプログラム可能なコンピュータ上で実行されるコンピュータプログラム内において実行される。プログラムコードは、入力データに適用され、上記の機能を行い、情報を出力する。出力された情報は、1以上の出力装置に公知の方法で適用する。
図16を参照されたい。そこでは、第1のボリューム400および第2のボリューム402が表面セル401によって分離されている。ボリュームセル400および402の右側に、表面セル401に対応する表面特徴404によって示された一連の注釈(note interpretations)がある。表面特徴ノード404は、色マテリアルのないグラフィックスコンテンツであるノードMP406、MB408および面410を含む。ボリュームセル400は、MP414、MB416および表面418を持つボリューム4012のノード表現を持つ。ノート表現(note representation)を持つ第2のボリューム402の一部は、ノード420のボリューム2、MP422、MB424および面426によって率いられる。
図17は、ボリューム428およびボリューム 430を持つ類似のボリューム表面セル配置が、表面セル429によって分離されている異なる実行を示している。このノード表現には、図16のノード表現とは有意な差がある。図16に示されたノード表現同様、図17に示されているように、表面特徴ノード432、ボリュームノード438およびボリュームノード444が存在する。しかしながら、図17に示されているように、本発明の実施形態のいくつかは、表面特徴ノード432、ボリュームノード438およびボリュームノード444に連結した共通の表面450を持っている。図17に示されているように、MP434、MP440、MP446ならびにMB436、MB442およびMB448のような他のエレメントも連結されている。
図18aは、本発明によって説明することができる種々のボリュームおよび表面特徴の2次元的な表現である。特に、ボリュームAl 452、B1 456、A2 454およびB2 458は、表面特徴HI460、F1 464、F2 466、H2 462およびF3 468によって分離されている。図18aの種々の表面およびボリュームを図18bにノードの形式で示す。特に、表面ルート470は、表面ノードのすべてを含んでいる。ボリュームルート486は、ボリュームノードのすべてを含んでいる。例えば、表面特徴H472は、図18aのH1 460およびH2 462にそれぞれ対応する表面特徴H1 474およびH2 476を有している。同様に、図18aのF1 464、F2 466およびF3 468に対応する他の表面特徴F1 480、F2 482およびF3 484も存在する。図18aに示されるボリュームエレメントは、対応するノード表現を図18bの右側に 有している。特にノードボリューム488、ノードボリューム490、ノードボリューム492およびノードボリューム494は、図18aのボリューム452、454、456および458に対応している。グラフィックスコンテンツ474、476、480、482および484は、表面ルート470に定着し、表面シーングラフおよびボリュームルート486に定着したボリュームシーングラフを含んでいる。
本発明のフレームワーク
本発明は、その他の実行の低レベルのGQI C-構造メカニズムを新たなフレームワークで置き換える。性能をさらに改良するため、上記コアgmMPフレームワーククラスは、もはやIGMに依存しない。本発明は、ソフトウェア、例えば、デジタルコンピュータとして実行される、1セットのオブジェクトインスタンスからなる。しかしながら、本発明は、ハードウェア、またはハードウェアおよびソフトウェアの組み合わせにおいても完全に適用可能である。
図20は、互いに関連する1セットのモジュラーアプリケーション エンティティを含む本発明のフレームワーク2002を示す。例えば、モデリングオフィスアプリケーション(Modeling Office Application)2004、ジェミニアプリケーション(Gemini Application)2006、ジオステアリングアプリケーション(GeoSteering Application)2008、High-Angle Well Evaluation Application2010、および1以上のリサーチプロトタイプモジュール2012が存在し、そのすべては、Common Model Builder2014と、図20に示されているように機能する。Common Model Builder2014は、そのベースクラスにおいて図20の他のモジュールのサービスに対してインタフェースを提供する。種々のアプリケーションは、Common Model Builderベースクラスを直接用いることもできるし、それらから誘発して特別な動作を実現することもできる。他のサービスはとしては、インタラクティブ幾何学的モデリングライブラリ(IGM)2016およびGeoFrame のためのデータアクセスAPIであるApplication Data Interface ADI2026がある。幾何学的クエリーインタフェース(GQI)2020は、IGM2016およびADI2026の双方と操作する。IGM2016とGQI2020の双方は、マテリアルプロパティエレメントIGM MP2018およびGQI MP2022をそれぞれ有している。図20に示されているように、IGM MP2018はGQI MP2022と操作する。最後に、グラフィックスライブラリ2024は、種々のモジュールによって用いられるデータのグラフィカルの表現を実行する。グラフィックスライブラリ2024は、図20に記載のようにIGM2016と操作する。
図21は、GQIマテリアルプロパティフレームワークのための1セットのオブジェクトを示す。特に、GQIマテリアルプロパティフレームワーク2022は、図21に示されているように、cc_RefObjオブジェクト2150とIsA関係を有するgmMP2104を含む1セットのオブジェクトを含む。cc_RefObjオブジェクト2150とIsA関係を有するgmMPPolicyオブジェクト2106も存在する。図21に示されているように、gmMPPolicy クラス2106と構成関係を有するgmMPTopologyTraversalStatesオブジェクト2118も存在する。
gmMPConstantオブジェクト2120は、gmMPオブジェクト2104とIsA関係を有する。図21に示すように、gmUtilFtrBndPolicy オブジェクト2108は、gmMPGQIPolicyオブジェクト2110とIsA 関係を有する。図21に示すように、gmSysPSPPolicyオブジェクト2112、gmSysRulesPolicyオブジェクト2114、およびgmMPVolumePropertyPolicyオブジェクト2116を含む他のいくつかのポリシーオブジェクトはすべて、gmMPPolicy オブジェクト 2106とIsA関係を有する。さらに、gmSysPSPPolicy オブジェクト2112は、gmSysPSPProperty オブジェクト2124とポリシー構成関係を有する。同様に、gmSysRulesPolicyオブジェクト2114は、gmSysRules オブジェクト2122とポリシー構成関係を有する。gmUtilFtrBndオブジェクト2126は、グループの最後であり、gmSysRules2122およびgmSysPSPPropertyオブジェクト 2124とともに、それは、gmMPConstant オブジェクト2120とIsA 関係を有する。図21に示すように、gmMPVolumePropertyPolicyオブジェクト2116もgmMPConstant オブジェクト2120と構成関係を有する。最後に、GQI マテリアルプロパティフレームワーク2022も任意にgmutil_statusオブジェクト2128およびmv_vtオブジェクト2130およびgm_mp_atomsオブジェクト2132を含み、そのすべては、本発明の情報の保存および処理において対話および関係を促進する。
図22は、GQIマテリアルプロパティフレームワーク2022とIGMマテリアルプロパティフレームワーク2018との間の内部関係を示す。IGMマテリアルプロパティフレームワーク2018は、とりわけ、gmMPNameオブジェクト2230と構成ポリシー関係を有するgmMPNamePropertyPolicy オブジェクト2228を含む。gmMPIGMPropertyPolicyオブジェクト2234は、mbCeIIGMReference オブジェクト2232およびmbFtrGMReference オブジェクト2236と2つの別個の構成ポリシー関係をもつ。図22に示すようにgmMPName オブジェクト2230、mbCellGMReferenceオブジェクト2232、mbFtrGMReferenceオブジェクト2236、ならびにvspQualityPropオブジェクト2238、vspTransverseIsotroppyオブジェクト2240およびfbFtrParametersオブジェクト2242は、すべてgmMPConstantオブジェクト2120とIsA関係を有する。別のサブセットのオブジェクト、特に、gmMPZオブジェクト2216、ならびにgmMPTimeオブジェクト2218およびgmMPDepthオブジェクト2220も存在する。後の2つのオブジェクトは、前のオブジェクト、すなわち、gmMPZ 2216とIsA関係を有する。また、このサブセットには、図22に示すように、gmMP2DPolyオブジェクト2222、gmMP2DGrid オブジェクト2224、およびgmMP3DGridオブジェクト2226も存在する。gmMPZオブジェクト2216、ならびにgmMP2DPolyオブジェクト2222およびgmMP2DGridオブジェクト2224およびgmMP3DGridオブジェクト2226のすべては、gmMP オブジェクト2104とIsA関係を有する。IGMマテリアルプロパティフレームワーク2018に含まれる最後のオブジェクトのサブセットが存在する。すなわち、GQIマテリアルプロパティフレームワーク2022のgmMP オブジェクト2104とIsA関係を有するgmMPPolyXYZ オブジェクト2204が存在する。最後に、gmGradientPropオブジェクト2206とIsA関係を有する4つのオブジェクト、すなわち、vspDensPropオブジェクト2208、vspVelPPropオブジェクト2210、vspVelSPropオブジェクト2212およびgmResistivityPropオブジェクト2214が存在する。
図23は、GQIマテリアルプロパティフレームワーク2022とIGMマテリアルプロパティフレームワーク2018との間の関係を示す。特に、gmUtilFtrBndPolicyオブジェクト2108およびgmMPIGMPropertyPolicy オブジェクト2234が存在し、後者は、gmUtilFtrBndPolicyオブジェクト2108とIsA関係を有する。GQIマテリアルプロパティフレームワーク2022内には、gmMPVolumePropertyPolicyオブジェクト2116が存在する。図23に示すように、IGMマテリアルプロパティフレームワーク2018のgmMPNamePropertyPolicyオブジェクト2228は、gmMPVolumePropertyPolicyオブジェクト2116とIsA関係を有する。同様に、図23に示したように、gmMPVolumePropertyPolicyオブジェクト2116は、gmMPZオブジェクト2216およびgmGradientPropオブジェクト 2206と構成関係を有する。
図24は、データ、好ましくは地震のデータの計算および表示を促進するための本発明のオブジェクトの配列を示す。図24は、gqi_Core オブジェクト2018とIsA関係を有するgqi_AttachmentSiteオブジェクト2204を示す。図24に示したように、gqi_AttachmentSite オブジェクト2204およびgqi_Coreオブジェクト2402の双方にmp XAttrオブジェクト2408および2406がそれぞれ存在する。
gqi_AttachmentSiteオブジェクト2204は、gqi_MetaProperty オブジェクト2412と操作関係を有する。同様に、gqi_Coreオブジェクト2402は、gqi_MetaProperty オブジェクト2410と操作関係を有する。図24に示したように、gmMPオブジェクト2104は、gqi_MetaProperty2412およびgqi_MetaProperty2410の双方と0.. n表現の操作関係を有する。aqi_Parameterオブジェクト2414は、図24に示すように、gmMP オブジェクト2104と0.. n表現の操作関係を有する(プロパティDI)。gmMPPolicyオブジェクト2106は、gmMP オブジェクト2104と構成関係を有する。最後に、gmMPTopologyTraversalStateオブジェクト2416は、gmMPPolicy オブジェクト2106と操作関係を有する。
図21および22によれば、マテリアルプロパティフレームワーククラスは、4つのカテゴリーに分類できる。システムクラス(図21の2104、2106、2108、2110、2112、2114、2118、2122、2124、2126、2128、2130および2132)は、GQIの操作(例えば、ポイント設定保存、特徴境界トラッキング)をサポートする。IGMクラス(図22の2232、2234および2236)(例えば、特徴バックポインタ)は、システムクラスから分離しなければならない。なぜなら、それらはIGMに依存しているからである。そのシステムクラスは、内部使用に厳密に限定されており、アプリケーションから導き出されたり、インスタンス化されるべきではない。アプリケーションサポートプロパティクラス(図21および22の2120、2204,2206、2216および2228)は、アタッチ、不変の保守および評価のためのアプリケーション(およびシステムコンポーネント)によって要求される基本的なメカニズムを実行する。それらは、アプリケーションから誘導されてもよいし、場合によっては、アプリケーションによって直接使用されてもよい。またシステムクラスは、これらのアプリケーションサポートクラスから誘導されることが好ましい。最後に、第4のセットのクラスである、アプリケーションクラス(図22の2208、2210、2212、2214、2218、2220、2222、2224、2226、2230、2238、2240および2242)は、マテリアルプロパティの直接的な表現のためのアプリケーションによって直接使用されることが意図されている。
アブストラクトベースクラス(Abstract Base Classes)
図21および22のgmMPクラス2104は、マテリアルプロパティ表現クラスの基本的な動作を定義している。それは下記の性能を直接サポートする。
- mp_classインスタンスのリード/ライト。リード/ライト、バリュータイプのスキャン/プリント/パック/アンパックの間、同じインスタンスを多数回参照するトラッキングを含む;
- 形状編集事象コールバックの方法を提供するアタッチメントポリシーの参照を維持(下記参照);
- リターンタイプ(evalDouble、evalPtr、evalString、evalOnPolyLine、evalMinMax)によるプロパティ評価のためのインスタンス方法;
- プロパティ名(evalPropertyDouble、evalPropertyPtr、evalPropertyString、evalPropertyMinMax)によるプロパティ評価のための分類方法;
- gmMP誘導クラスインスタンスをルックアップするための多種多様な方法;エバリュエータクラスおよびサイト、サイトおよびプロパティDIによる、サイト、プロパティコード(および任意に、プロパティクラスネーム)による;および
- インデックスプロパティアタッチメントに使用されるプロパティDIのデフォルト構築。
gmMPクラス2104はまた、上記方法によって用いられる、誘導されたクラスのすべてのインスタンスを管理するため、および必要なルックアップ性能をサポートするために用いられるデータ構造を提供する。
gmMPPolicyアブストラクトベースクラス2106は、下記の行動を実行する:
- 所与のポリシーに一致するマテリアルプロパティが伝播されるべきサブセルを列挙する位相横断ジェネレータ(topology traversal generator)の参照を維持する
- 事象ハンドラーによって呼び出された形状編集ハンドらーおよびダミー仮想インスタンス方法。再設計システムにおいて、すべての可能なコールバックがサポートされなければならない。前の設計においては、下記のみがgmMPPolicy レベルにサポートされた: CellCopyCallback、CellDissociateCallback、CellSplitCallback、CellEmbedCallback、CellMergeCallback、CellDeleteCallback、FeatureAddChildCallback、FeatureRemoveChildCallback、FeatureReplaceChiIdCallback;
- gmMPPolicyクラスを単体として実行する、それは、1つのインスタンスを取得および作成するために分類方法が提供されることを意味する。
図21のgm_MPTopologyTraversalState2118は、横断の状態を維持しながら横断を行うための繰返し子のような、異なるプロパティ伝播ポリシーおよび行動の複数のジェネレータを実行する。サポートされているジェネレータは以下を含む:
- generateNone:ダミージェネレータ;
- generateHereOnly:リストのヘッド、後続なし:
- generateHereAndChildren:オープンリストのヘッドに返る;次のサイトがコアもしくは特徴である場合、後続は次のサイトの子。または、次のサイトが3セルの場合下位のブリッジ;
- generateHereAndChildrenNoSubs:オープンリストのヘッドに返る;次のサイトがあらゆるグループである場合、後続は次のサイトの子。下位は生成されない;
- generateChildrenOf3Cell:サブブリッジおよび3セルの下位2セルのみを横断。3セル自身は除外;
- generateHereAndPartialBridges:開始セルから1つ下のレベルの部分セルブリッジへ位相を横断。参照セル(reference_cell)が無し(NULL)の場合、存在する階層を横断している。参照セルが無し(NULL)でない場合、その方向が参照セルが部分ブリッジのそれとマッチする部分ブリッジを作成する。および
- generateSupBridgesOf2Cell:参照セルが所与であり、参照セルの方向とマッチする部分ブリッジを見つけ出し、または生成する場合、2セルのサップブリッジを横断。
マテリアルプロパティ表現スキーム
形状属性、指定された「mp XATTR」図24の2408および2406が、Shapesエンティティgqi_AttachmentSite2404とそれに対応するgqi_MetaPropertyインスタンス2412との間のマッピングを確立する。図24からわかるように、より早いC構造ベースのスキームをgmMP インスタンス2104に対する直接参照と置き換えている。
本発明の好ましい態様において、コアはもはや事象ハンドラーを管理しない。従来のプラクティスにおいて、事象ハンドラーは独立していなかったことがわかっている。代わりに、事象ハンドラーは2〜3セットの関連するハンドラーにまとめられる。本発明によれば、従来技術の事象ハンドラーは、今gmMPPolicyインスタンス2106によって表現されている(図21および24)。gmMPPolicy2106は、持続的な状態を持たないので(再び参入した横断がサポートされるべき場合、横断状態は、多数回インスタンス化されなければならない)、事象ハンドラー仮想機能テーブルの数を最小化するために単体パターンを使用する。
本発明のエバリュエータは、gmMP2104(例えば、サブ機能)およびgmMP2104に導かれるクラスにおいて、仮想の機能として実行される。エバリュエータの数が増えるにしたがって、単体gmMPPolicy2106と類似のパターンを使用して、エバリュエータの数が増えているので、gmMP2104が誘導するクラスのためのエバリュエータを表現することもできる。しかしながら、gmMP2104インスタンスは、特別な「プロパティインスタンス」が伝播される、それぞれのアタッチメントサイトによって共有される。
本発明のオブジェクトの設計は、上記2つの行動を2つの新たな対のクラスに分離する。
ポイント設定保存
- gmSysPSPProperty2124は、ポイント設定保存(「PSP」)のためのアタッチメント意味論を持つ。gmSysPSPProperty2124のための最高レベルのアタッチメントサイトは、モデルコア自身である。1より多くのコアが存在する場合、多数のPropertyDI'sが生成され、それぞれのコアは分離されたアタッチメントを持つように考慮される。このプロパティのための他の持続する状態は存在しない。
- 図21のgmSysPSPPolicy2112は、PSPのための伝播ポリシーおよび編集コールバックを行う。
ルール
- 図21のgmSysRules2122は、 「コア」および「特徴」付ルールセットのためのアタッチメント意味論を持つ。これらのプロパティインスタンスの状態は、実際のルールアタッチメントとそれらのファイアリング状態(firing state)からなる。ルールの状態(フレームワークルールがアタッチされている。およびルール違反)がgmSysRulesプロパティインスタンス2122上での評価操作によって管理される。ファイアリングルールレゾルバは、gmSysRulesクラス2122によってのみ実行される異なる操作である。
- gmSysRulePolicy2114は、伝播ポリシーを実行し、ルール検出器をファイアすることを含む、このルールのためのコールバックを編集する。
プロパティD1およびアタッチメント意味論
下記実施例に示すように、プロパティ(パラメータ)データ項目は、非常に特別なユーザが目視可能な意味論を提供する。指定されたプロパティ_コード、名前、変更子(およびLog Curve Naming変換をサポートする他の属性)がユーザ(または、ユーザのために機能するアプリケーション)によってアタッチされた。これらの属性によって、ユーザは、所与のサイトにおいて、多数の類似のプロパティから識別することが可能となる。
TopLevelSiteと呼ばれるパラメータを持つgmMPデータメンバー2104は、 は、最高レベルのアタッチメントがなされたオリジナルのサイトを保存する。gmMPインスタンス2104の属性(例えば、デフォルトまたは値)が変更されれば、変更に関連するサイトが最高レベルのサイトでないならば、gmMPインスタンス2104のコピーを作成しなければならない。
以下のポリシーがプロパティ(パラメータ)データ項目およびアタッチメントサイトの使用のために確立される:
1.プロパティのサイト(例えば、ボリューム)への、(他のトップレベルの割付のうち)すべての最高レベルの割付は、特有のプロパティD1およびgmMPサブクラスインスタンス2104に関連する。
2.gmMPPolicyクラス2106が割付を伝播するすべてのサイト(例えば、ボリュームおよび境界をなす2セルの間のブリッジ)は、同じプロパティD1および同じgmMPインスタンス2104を受け取る。所与のポリシーは、2つの方向からの伝播により同じ部位にアタッチされた同じコードの多数のプロパティインスタンスを生じさせることができる。多数のプロパティインスタンスがサポートされるので、これは問題ではない。
3.アプリケーションは、すでに同じコードのプロパティがアタッチされ、前記サブセルに伝播されているアタッチメントサイトのサブセルにプロパティをアタッチしてもよい。伝播されたアタッチメントは最高レベルではないが、明らかにアタッチされたプロパティインスタンスは最高レベルのアタッチメントであり、新たなプロパティD1が生成される。
4. 最高レベルのアタッチメントのみが削除され得る。プロパティポリシークラスが削除を伝播する信頼性はそれがアタッチメントを伝播するのと同様である。
有限状態機械
図19は、本発明の有限状態機械を示す。特に、図19にはボックス496で示された状態1、ボックス500で示された状態2、ボックス502で示された状態3およびボックス498で示された状態4が存在する。状態1から状態4への遷移は、オブジェクトを操作504において見えないように設定することによるものである。状態1から状態2への遷移は、操作506においてグラフィックスを無効にすることによって達成される。状態2から状態3への遷移は、操作510においてオブジェクトを見えないように設定することによって達成される。状態4から状態3への遷移は、操作508においてグラフィックスを無効にすることによって達成される。状態4から状態1への遷移は、操作512においてグラフィックスオブジェクトを見えるように設定することによって達成される。状態2から状態1への遷移は、操作516においてグラフィックスを更新することによって達成される。最後に、操作514は、グラフィックスを更新され、かつ有効にし、図19に示された状態3から状態1への遷移に対してオブジェクトを見えるように設定する。
コールバックスキーム
図26は、本発明のコールバックスキームを示す。図26のオブジェクトの配列は、本発明のコールバック局面を示す。
図26に示すように、3つの主なオブジェクトが図26の左側および中央部に存在する。上記のように、このオブジェクトは、幾何学、特徴およびセルの3つの一般的な局面を包含する。表記法上、一般的なカテゴリーのための頭文字を特別なオブジェクトの局面の前につけた。例えば、「ag」は、集合体(aggregate)を意味し、「gm」は、幾何学的モデリング(geometric modeling)を意味し、「oi」は、グラフィックスエンジンであるOPEN INVENTORを意味し、gqiは、幾何学的クエリーインタフェースを意味し、および、「X」は、幾何学的エンジンであるXOX-Shapesを意味する。
図26によれば、まず、図26に記載のag_Geometryオブジェクト284とIsA関係288にあるag_BaseClass280(図11参照)が存在する。gm_Geometryオブジェクト232は、ag_Geometry オブジェクト284とhasA関係322にあり、gqi_Geometry_tオブジェクト2608と別の関係2658の関係にある。
図26に示すように、集合体特徴オブジェクトag_Featurei2638および集合体セルオブジェクトag_Celli2644のインスタンスは、集合体幾何学的オブジェクトag_Geometry284と、それぞれIsA 関係2648および2649を通じて関連している。オープンインベンター特徴オブジェクトインスタンスoi_Featurei2640は、関連2699によってag_Featureiと効果を及ぼして関連している。同様に、オープンインベンターセルオブジェクトインスタンスoi_Celli2646は、関連2696を介してag_Celli2644と効果を及ぼして関連している。
幾何学的モデリングオブジェクトインスタンスgm_Featurei2636 およびgm_Celli2642は、それぞれ関連2698および2694を介してag_Featurei2698およびag_Cellj2644と効果を及ぼして連結している。さらに、gm_Featurei オブジェクト2636は、gm_Geometryオブジェクト232と関係2637を持っている。gm_Celljオブジェクトは、同様に、gm_Geometry オブジェクト232と関係2643を持っている。
図26に示したように、X_Featurei オブジェクト2614が本発明によって提供される。X_Featurei オブジェクト2614は、gm_Featureiオブジェクト2636と関係2692を有する。X_Featureiオブジェクト2614は、xAttrFtrオブジェクト2612と関係2660を有し、その結果、gqi_Featureiオブジェクト2610と関係2662を有する。gqi_Featureiオブジェクト2610は、結果として、X_Featureiオブジェクト2614と関係2664を有する。図26に示したように、X_CelIiオブジェクト2618は、X_Featureiオブジェクト2614と関係2664を有する(および、X_Featureiオブジェクト2614は、X_Celliオブジェクト2618と関係2676を有する)。
図26に示したように、X_Featureiオブジェクト2614は、gqi_Geometry_tオブジェクト2608と関係2615を有する。X_Featureiオブジェクト2614もxAttrMPオブジェクト 2628と関係2666を有し、その結果、第1のgqi_MetaPropertyjインスタンス オブジェクト 2622と関係2668をう有する。gqi_MetaPropertyiオブジェクト2622の第1のインスタンスは特徴に対するものであり、2684とそれを関連付ける1セットのオブジェクト、例えば、オブジェクト2624および1以上のFtrRefiオブジェクト2626のインスタンス等を持つことができる。図26に示したようにFtrRefiオブジェクト2626は、gmFeatureiオブジェクト2636との関係2686および2688によって本発明のコールバック機能を促進する。
セルオブジェクトは、gqiMetaPropertyオブジェクトのパラレルなインスタンス、すなわちGqi_MetaPropertyjオブジェクト2630を有している。本発明のこの局面において、X_Celljオブジェクト2618は、xAttrMPオブジェクト2620と関係2680がある。xAttrMPオブジェクト2620は、さらに図26に示したように、gqi_MetaPropertyjオブジェクト 2630の第2のインスタンスと関係2682がある。gqi_MetaPropertyi2622の第1のインスタンスと同様、第2のgqi_MetaPropertyjオブジェクト2630 は、オブジェクト2632およびCellRefj オブジェクト2634等の種々のオブジェクトと関係2670がある。本発明のコールバック操作(セルのための)は、gm_Celljオブジェクト2642との関係2672および2674によって促進される。図26に示したように、X_Featurei オブジェクト2614同様、X_Celljオブジェクト2618は、gqi_Geometry_tオブジェクト2608と関係2619と関係がある。最後に、X_Celljオブジェクト2618は、 X_Featureiオブジェクト2614との関係2678および2676を共有している。

本発明の操作
本発明は、プロセッサ、データ保存システム、少なくとも1つの入力装置および少なくとも1つの出力装置を含み、および限定されないが、コンピュータモニター、保存装置、またはプリントアウトを含むコンピュータ上で行われる、インタラクティブにモデルを編集するための方法として説明することができる。このモデルは、コンピュータ読み取り可能な媒体に保存されることが好ましい。モデル自体は少なくとも第1の表面を有する。とはいえ、典型的には多くの表面がモデリングされている。
実施例:PSPプロパティのアタッチ
本発明の構造の性能および柔軟性の一般的な指示は、以下の実施例によって明らかになるであろう。
図25は、コアの不活性な特徴を追加することを示している。図25に示したように、「登録されていない」状態の層位特徴(「H1」と称する)2501を、モデルコアC1(gqi_Coreオブジェクト)2502の分類されていない特徴に追加する。gmSysPSPProperty2520は、特徴にアタッチし、子およびそれらのサブセルに伝播するため、GQIの動作をモデリングすることが望ましい。したがって、追加子方法2503は、gqi_Feature2504(図25において、そのインスタンスは「IAF1」と称される)の上で実行される。活性および不活性な特徴は、アタッチされたPSPプロパティを持つので、そのため追加子方法2503は、追加子事象を誘起し、その結果H1のアタッチメントを引き起こすであろう。尚、PSPプロパティのアタッチメントは、追加子事象の結果として生じる。なぜなら、コアの活性および不活性の特徴は、POPプロパティを持っているからである。
図25に示したように、gqi_Featureオブジェクト2504から、グループの追加子方法2505を呼び出し、XOX Shapesオブジェクト2506に効果を及ぼす。XOX Shapesオブジェクト2506は、次に、図25に示したように、パラメータIAF1、H1およびIAF1属性を持つクラスグループ追加子コールバック方法2507をgqi_metaPropertyオブジェクト2412上に呼び出す。gqi_MetaPropertyオブジェクト2412も、avlAttr変数をパラメータとしている属性取得ポインタ値方法2510をXOX ハンドルオブジェクト2512の標識されたIAFlattrに呼び出す。その後、図25に示したように、追加子コールバック方法2509は、gqi_MetaPropertyオブジェクト2412から、IAFlmeta2514と呼ばれるgqi_MetaPropertyインスタンスに呼び出す。追加子コールバック方法2509は、IAF1、HlおよびIAFl属性をそのパラメータとしている。gqiMetaProperty2412のIAFlmetaインスタンスは、2つの方法を呼び出す。まず、取得ポリシー方法2519がgmSysPSPPropertyオブジェクト2520のインスタンスからC1PSPインスタンスが呼び出される。第2に、図25に示すように、IAF1、H1およびPIAF1属性をパラメータとして持つ追加子コールバック方法をgmSysPSPPolicyオブジェクト2518に呼び出す。最後に、方法2521へのアタッチは、gm_SysPSPPolicyオブジェクト2518をgmSysPSPPropertyオブジェクト2520のC1PSPインスタンスに呼び出すものである。
他の方法の記載
上記特別な実施例とは対照的に、本発明の方法のより一般的な記載を図27〜40に示す。これらの図に示された特別なステップを下記の明細書にしたがって説明する。
図27によれば、この方法は通常ステップ2702から始まる。この方法は、ステップ2704において、表面特徴についてのデータを、データ保存システムに保存されているデータベースからローディングすることから始まる。次に、ステップ2706において、表面特徴についての集合体特徴を作成する。これは、ステップ2708において、集合体特徴から第1のグラフィックスオブジェクトを作成することを可能にする。その後、ステップ2710において、第1のグラフィックスオブジェクトをアプリケーションシーングラフに追加する。次に、ステップ2712において、集合体特徴について幾何学オブジェクトを作成する。次にモデルの第1の表面特徴を望ましいように編集する(ステップ2714)。編集が完了すれば(例えば、ユーザが編集モード選択する、または必要な時間が経過する)と、モデルのグラフィックスが選択的に更新される(ステップ2716)。この選択的な更新によって、種々の装置は、すべての更新および変更を再計算し、表示することから開放される。そうではなく、ユーザが経験することに影響を及ぼす更新のみが更新される。最後に、第1の表面特徴の第1のグラフィックスオブジェクトがアプリケーションシーングラフから除去される(ステップ2718)。
編集および更新
編集プロセス自身は、いくつかの工程からなる。図28aについて、まず、インタフェースを提供しなければならない(ステップ2804)。次に、ステップ2806において、インタフェースで操作するIGM を提供しなければならない。IGM で操作するGQI を含むことは有用である。これによってユーザは、インタフェースを介して、第2の表面特徴についての操作を選択することができる。このインタフェースは、ユーザの選択するIGMを含むように設計される(ステップ2810)。その操作自身は、GQIで呼び出される(ステップ2812)。 編集プロセス(ステップ2814)の間、操作を実行する間、GQIからIGMへのコールバックを少なくとも1回行う必要がある。そのコールバックは、モデルのグラフィックスオブジェクトを更新し、出力装置をリフレッシュするために用いられる。編集は、不規則な空間分割によって達成することができるが、他の編集技法を本発明とともに用いることもできる。編集が終了すると、典型的にはグラフィックスオブジェクトを作成することによって、グラフィックスの更新が始まる(ステップ2816)。
図28bに示したように、本発明は、更新工程2816は、幾何学的および/または位相的のような定義された基準にしたがって変更されたグラフィックスのみを更新することを含む、特別な特徴をもっている。この更新工程はまた、目視可能な有限状態機械を参照することを含む(ステップ2822)。可視の有限状態機械は、操作を更新するグラフィックスオブジェクトおよび操作を更新するグラフィックスオブジェクトの目視可能性を管理することを助ける。目視可能な有限状態機械は、(ユーザの)目に見えるように指定されたグラフィックスオブジェクトのみを更新することができる。この目視可能な有限状態機械は、見えるとされたグラフィックスを指定し、また、グラフィックスオブジェクトの目視可能性について確認するために使用することができる。図28bに示されているように、グラフィックスオブジェクトが有効であれば(ステップ2824)、グラフィックスオブジェクトは、シーングラフに追加することができる(ステップ2826)。そうでない場合は、グラフィックスオブジェクトは、更新されて、シーングラフに追加することができる(ステップ2828)。
更新プロセスは、いくつかの工程を含むことができる。例えば、更新は、図28bのステップ2854〜2856に示したように、シーングラフにおけるそれぞれの特徴の状態を確認することを含んでもよい。通常、この特徴のグラフィックスが有効であれば、特徴のグラフィックスオブジェクトは、更新されない(ステップ2860)。しかしながら、図28cに示されているように、特徴のグラフィックスが無効であれば(ステップ2854)、かつ、幾何学的が有効であれば(ステップ2856)、特徴のグラフィックスオブジェクトを更新する(ステップ2862)。
更新の別の形態は、図28dに示されているように、シーングラフにおけるそれぞれのセルの状態を確認することを含むことができる。このようにすれば、セルのグラフィックスが有効であれば(ステップ2872)、セルのグラフィックスオブジェクトは更新されない(ステップ2878)。セルのグラフィックスが無効であり、かつ、セルの幾何学的が有効であれば(ステップ2876)セルのグラフィックスオブジェクトは更新される(ステップ2880)。
本発明の方法はまた、第2の表面特徴がモデルに含まれていない状況を包含することができるが、第2の特徴は、もちろんモデルに含まれることができる。
グラフィックスの作成
本発明の方法はまた、図29に示された集合体特徴のような種々のエンティティのグラフィックスの作成を含む。典型的には、このプロセスは、モデルの全ての関連する表面特徴を取得することを含む(ステップ2904)。次に、例えば、関連する表面のそれぞれについて、表面特徴は、グラフィックスオブジェクトを持ち(ステップ2905)、次にグラフィックスオブジェクトが更新される(ステップ2906)。そうでない場合、表面特徴のグラフィックスオブジェクトが作成される(ステップ2908)。その後、表面特徴のグラフィックスオブジェクトが表面シーングラフルートノードに追加され(ステップ2910)、図29に示された方法は、通常ステップ2912において終了する。
先の段落で概略を示した工程に加えて、図30に示したように、他の工程も任意に達成することができる。例えば、表面特徴のための全ての二次元的なセルの集合体オブジェクトを取得してもよい(ステップ3004)。次に、セルのそれぞれの集合体オブジェクトが少なくとも1つの有効なグラフィックスオブジェクトを取得するように助長することができる(ステップ3006)。これが一旦完結すれば、表面特徴のグラフィックスオブジェクトを有効にすることができ(ステップ3008)、この方法は、通常ステップ3010において終了する。
直前で概略を示した方法には、図31で示したように、更に多くのステップを行ってもよい。例えば、セルの有効なグラフィックスオブジェクトを取得する工程は、セルのグラフィックスオブジェクトが存在しないかどうかを判定する確認を含むことができる(ステップ3104)。グラフィックスオブジェクトが存在しない場合、セルのグラフィックスオブジェクトが作成され、有効とされる(ステップ3106)。セルのグラフィックスオブジェクトが存在せず、有効でない場合、セルのグラフィックスオブジェクトは更新され、有効とされる(ステップ3108)。
あるいは、グラフィックスを作成するための本発明の方法は、図32に示すように、モデルから少なくとも1つのボリュームセルを作成することを含む。この代替的な方法は、モデルにおいて、少なくとも1つの関連する活性なボリュームセルを取得することを含む(ステップ3204)。取得後、二次元的なセルの全てのグラフィックスオブジェクトが作成されたことを確認をすることができる(ステップ3206)。次に、二次元的なセルに、集合体を取得することができる(ステップ3208)。二次元的なセル集合体が存在しない場合、新たな集合体を作成することができる(ステップ3210)。その後、それぞれの二次元的なセルについて、それが有効なグラフィックスを持つかどうかを確認する(ステップ3212)。その後、各ボリュームセルのグラフィックスオブジェクトを作成することができる(ステップ3214)。次に、各ボリュームセルについて、ボリュームセルのそれぞれの二次元的なセルのグラフィックスコンテンツを、ボリュームセルのグラフィックスオブジェクトのサブシーングラフに追加する(ステップ3214)。最後に、各ボリュームセルのそれぞれについて、ボリュームシーングラフルートノードにグラフィックスオブジェクトを追加する(ステップ3216)。さらに、二次元的なセルを図示した、カラーマテリアルなしの、グラフィックスコンテンツのインスタンテーションは、二次元的なセルを子とした表面特徴のグラフィックスオブジェクトを含む少なくとも1つのシーングラフ、ならびに、グラフィックスオブジェクトを含む、1つのボリュームセルまたはそれぞれの境界を二次元的なセルとして有する2つのボリュームセルを持つ少なくとも1つのシーングラフによって共有されることができる。
コールバック
本発明では、オブジェクトフレームワーク内に広範にコールバックを使用する。例えば、コールバックは、集合体特徴の変化をもたらす。集合体特徴エレメントは、一貫性のある有限状態機械であって、その結果、コールバックが効率的に容易化されることが好ましい。一貫性のある有限状態機械は、幾何学的とグラフィックスの間の一貫性を管理することもまた好ましい。コールバックは、集合体特徴のグラフィックスオブジェクトを無効にし、集合体特徴の幾何学を有効にするために有用である。例えば、コールバックがボリュームオブジェクトのためのものである場合、ボリューム特徴のために特別のコールバックが使用される。層でない場合、表面特徴の編集コールバックが行われる。
コールバックは、多くの方法で行うことができる。しかしながら、通常、コールバックは1セットの1以上のオブジェクトを用いて達成される。通常、そのオブジェクトのセットは、第1の幾何学モデラー特徴オブジェクト;幾何学モデラー特徴オブジェクトに含まれた変化した幾何学オブジェクト;変化された幾何学オブジェクトに効果を及ぼして関連している第1のメタ‐プロパティ属性オブジェクト;第1のメタ-プロパティ属性と関連する第1のメタ-プロパティオブジェクト;幾何学的モデラー特徴オブジェクトと関連する第2のメタ-プロパティ属性オブジェクト;および第2のメタ-プロパティ属性オブジェクトと関連する第2のメタ-プロパティオブジェクトを含む。
第1のメタ-プロパティオブジェクト自身は、ポイント設定保存プロパティオブジェクト;ポイント設定保存プロパティポリシーオブジェクト;セルバックポインタプロパティオブジェクト;集合体バックポインタプロパティポリシーオブジェクト;コールバックポインタオブジェクトと関連する幾何学的セルオブジェクト;幾何学的セルオブジェクトと関連する集合体セルオブジェクト;および集合体セルオブジェクトと関連する表示セルグラフィックスオブジェクトのような1セットのオブジェクトを含む。
第2のメタ-プロパティ属性オブジェクト自身は、1セットのオブジェクトを持ち、第2のポイント設定保存プロパティオブジェクト;第2のポイント設定保存プロパティポリシーオブジェクト;特徴バックポインタプロパティオブジェクト;第2の集合体バックポインタプロパティポリシーオブジェクト;特徴バックポインタプロパティオブジェクトと関連する幾何学的特徴オブジェクト; 幾何学的 特徴オブジェクトと関連する集合体特徴オブジェクト;および集合体特徴オブジェクトと関連する表示特徴グラフィックスオブジェクトとを含む。
本発明のコールバックは、種々の構成および環境において現われる。例えば、図33は、幾何学的モデラー インタフェースを用いたメタ-プロパティ分割コールバック分類方法を登録する(ステップ3304)ことを含むボリューム特徴の編集コールバックを示す。幾何学的モデラーインタフェースは、ボリューム分割事象が生じたときに呼び出されることが意図されている。その後、ステップ3306において、第1のメタ-プロパティ属性がボリューム特徴によって限定される、少なくとも1つのボリュームオブジェクトにアタッチされる。その後、ステップ3308において、コールバックは、第1のボリューム オブジェクト、第1のボリューム オブジェクトによって、第1のボリュームオブジェクトと、第1のメタ-プロパティ属性に対する変更によって影響を受ける第2のボリュームとを指定する幾何学的モデラーインタフェースによって受け取られる。次にポインタ値が第1のメタ-プロパティ属性から取得され、ポインタ値をメタ-プロパティ オブジェクトの位置を突き止めるために逆参照することを可能にする(ステップ3310)。分割コールバックは、第1のメタ-プロパティ属性、第1のボリュームオブジェクトおよび第2のボリュームオブジェクトを持つ第1のメタ-プロパティ オブジェクトにおいて、分割コールバックが呼び出される。この最後のステップ自身は、第1のポイント設定プロパティインスタンス(ステップ3312)およびプロパティインスタンスからの第1のポイント設定保存ポリシーインスタンス(ステップ3314)を取得すること、並びに、ポイント設定保存プロパティインスタンス第1のボリュームオブジェクトおよび第2のボリュームオブジェクトをもつポイント設定保存プロパティポリシーインスタンスに対する第1のコールバックを開始することを含む。この最後のサブステップ自身は、第1のボリュームオブジェクトの、少なくとも1つの含有特徴を取得すること(ステップ3316)、および含有特徴および第2のボリュームオブジェクトを持つ幾何学的モデラーインタフェースにおいて特徴追加子更新を開始することを含む(ステップ3318)。次に、集合体バックポインタプロパティポリシーインスタンスがセルバックポインタプロパティインスタンスから得られ、その結果、集合体バックポインタプロパティインスタンスによって第2の分割コールバックが開始されるようにセルバックポインタプロパティを取得する。後のコールバック自身は、セルバックポインタプロパティインスタンスからボリューム幾何学的セルオブジェクトを取得すること(ステップ3320)、およびボリューム幾何学的セルオブジェクトに対するセル分割コールを開始することを含む。後のサブステップは、ボリューム幾何学的セルオブジェクトのボリュームセル集合体パトロンに対するコールを開始し、第1のボリュームのグラフィックスを無効にすることを含むことができる(ステップ3322)。
図34は、特徴追加子事象が生じたときに呼び出される幾何学的モデラーインタフェースでのメタ-プロパティ追加子コールバック分類方法を登録することを含む(ステップ3403)ボリューム特徴の特徴追加子コールバックを行うことを示す。これは、第2のメタ-プロパティ属性インスタンスをボリューム特徴にアタッチすること(ステップ3406);および幾何学的モデラーインタフェースから、ボリューム特徴と、ボリュームオブジェクトと、第2のメタ-プロパティ属性とを指定する追加子コールバックを受け取ること(ステップ3408)を含むことができる。次にステップ3410において、第2のメタ-プロパティ属性からポインタ値が取得され、第2のメタ-プロパティオブジェクトの位置を突き止めるためにポインタ値が逆参照される。追加子コールバックは、第2のメタ-プロパティオブジェクトにおいて呼び出される。後のステップは、第2のポイント設定保存プロパティインスタンスを取得すること(ステップ3412);第2のポイント設定保存プロパティインスタンスから第2のポイント設定保存プロパティポリシーインスタンスを取得すること(ステップ3414);およびボリューム特徴およびボリューム幾何学的オブジェクトを持つ第2のポイント設定ポリシーオブジェクトの追加子コールバック方法を開始することを含む。後のサブステップ自身は、ポイント設定保存プロパティをボリュームセルにアタッチすること(ステップ3416);特徴バックポインタプロパティインスタンスを取得すること(ステップ3418);および特徴バックポインタプロパティインスタンスの特徴から第2の集合体バックポインタプロパティポリシーインスタンスを取得すること;およびボリューム特徴、ボリューム幾何学的オブジェクトおよびボリューム特徴バックポインタプロパティを持つ、第2の集合体バックポインタプロパティインスタンスの追加子コールバック方法を開始することを含む。後のサブステップ自身は、特徴バックポインタプロパティインスタンスによって確認される、ボリューム特徴幾何学的オブジェクトに対する追加子通知方法を開始することを含む。後のサブステップ自身は、ボリューム特徴オブジェクトの幾何学を有効にするために、ボリューム特徴オブジェクトのボリューム特徴集合体パトロンに対するコールを開始すること(ステップ3420);およびボリューム特徴オブジェクトのグラフィックスを無効にするために、ボリューム 特徴オブジェクトのボリューム特徴集合体パトロンに対するコールを開始すること(ステップ3422)を含む。
本発明の更に別の方法は、表面特徴の編集コールバックを行うことを含む。この方法のこの局面は、表面分割事象が生じたときに呼び出されるべき幾何学的モデラーインタフェースで、メタ-プロパティ分割コールバック分類方法を登録すること(ステップ3504);表面特徴によって限定されるメタ-プロパティ属性を少なくとも1つの表面オブジェクトにアタッチすること(ステップ3506);幾何学的モデラーインタフェースから、表面オブジェクトと、第2の表面と、メタ-プロパティ属性とを指定するコールバックを受け取ること(ステップ3508);メタ-プロパティ属性からポインタ値を取得し、メタ-プロパティオブジェクトの位置を突き止めるためにポインタ値を逆参照すること(ステップ3510);第1のメタ-プロパティオブジェクトにおいて、第1の表面オブジェクト、第2の表面オブジェクト及び第1のメタ-プロパティ属性自身を持つ分割コールバックを呼び出すことを含む。後のステップは、ポイント設定保存プロパティインスタンスを取得すること(ステップ3512);プロパティインスタンスからポイント設定保存ポリシーインスタンスを取得すること(ステップ3514);およびポイント設定保存プロパティインスタンス、第1の表面オブジェクト、および第2の表面オブジェクトを持つ、ポイント設定保存ポリシーインスタンスに対する第1の分割コールバックを開始することを含む。後のサブステップ自身は、第1の表面オブジェクトのための少なくとも1つの含有特徴を取得すること(ステップ3516);および含有特徴および第2の表面オブジェクトを持つ、幾何学的モデラーインタフェース上で特徴追加更新を開始すること(ステップ3518);セルバックポインタプロパティインスタンスを取得すること(ステップ3520);セルバックポインタプロパティインスタンスから集合体バックポインタプロパティポリシーインスタンスを取得すること(ステップ3522);およびセルバックポインタプロパティインスタンスを持つ第2の分割コールバックを集合体バックポインタプロパティポリシーインスタンスに対して開始することを含む。後のサブステップは、セルバックポインタプロパティインスタンスから表面幾何学的セルオブジェクトを取得すること(ステップ3524);および表面幾何学的セルオブジェクトに対するセル分割コールを開始することを含む。後のサブステップは、表面幾何学的セルオブジェクトの表面セル集合体パトロンへのコールを開始し、第1の表面のグラフィックスを無効にすること (ステップ3526)を含む。
図36は、特徴追加コールバックを行う工程(先行するパラグラフに記載)は、幾何学的モデラーインタフェースでメタ-プロパティ追加子コールバック分類方法を登録して、特徴追加子事象が生じたときに呼び出されるようにすること(ステップ3604);第2のメタ-プロパティ属性インスタンスを表面特徴にアタッチすること(ステップ3606);幾何学的モデラーインタフェースから、表面特徴と、表面オブジェクトと、第2のメタ-プロパティ属性とを指定する追加子コールバックを受け取ること(ステップ3608);第2のメタ-プロパティ属性からポインタ値を取得し、第2のメタ-プロパティオブジェクトの位置を突き止めるためにポインタ値を逆参照すること(ステップ3610);および第2のメタ-プロパティオブジェクトにおいて追加子コールバックを呼び出すことを含む。後のサブステップ自身は、第2のポイント設定保存プロパティインスタンスを取得すること(ステップ3612);第2のポイント設定保存プロパティインスタンスから、第2のポイント設定保存プロパティポリシーインスタンスを取得すること(ステップ3614);および、表面特徴および表面幾何学的オブジェクトをもつ第2のポイント設定ポリシーオブジェクトの追加子コールバック方法を開始することを含む。後のサブステップ自身は、ポイント設定保存プロパティをボリュームセルにアタッチすること(ステップ3616);特徴バックポインタプロパティインスタンスを取得すること(ステップ3618);第2の集合体バックポインタプロパティポリシーインスタンスを特徴バックポインタプロパティインスタンスから取得すること(ステップ3620)、および表面特徴、表面幾何学的オブジェクトおよび表面特徴バックポインタプロパティをもつ第2の集合体バックポインタプロパティインスタンスの子コールバック方法を開始することを含む。後のサブステップ自身は、表面特徴オブジェクトの表面特徴集合体パトロンに対するコールを開始し、表面特徴オブジェクトの幾何学を有効にすること(ステップ3622);および表面特徴オブジェクトの表面特徴集合体パトロンに対するコールを開始し、表面特徴オブジェクトのグラフィックスを無効にすること(ステップ3624)を含む。
コールバックは、本発明の種々のオブジェクトの多数の効果を持つことができる。例えば、コールバックを行うことによって、セルの状態を変化させることができる。この状態の変化は、一貫性のある有限状態機械に記録されることができる。
本発明の方法の別の局面は、図37に示されているようにボリューム特徴の編集コールバックを行うことである。本発明のこの局面は、ボリュームの併合事象が生じたときに呼び出される幾何学的モデラーインタフェースでメタ-プロパティ併合コールバック分類方法を登録すること(ステップ3704); メタ-プロパティ属性をボリューム特徴によって限定される少なくとも1つのボリュームオブジェクトにアタッチすること(ステップ3706);幾何学的モデラーインタフェースから、ボリュームオブジェクトと、第2のボリュームと、ボリュームオブジェクトに以前は結合していて除去された表面オブジェクトと、メタ-プロパティ属性とを指定するコールバックを受け取ること(ステップ3708);幾何学的モデル属性からポインタ値を取得すること;メタ-プロパティオブジェクトの位置を突き止めるためにポインタ値を逆参照すること(ステップ3710);および第1のメタ-プロパティオブジェクトに併合コールバックを呼び出すことを含む。後のサブステップ自身は、ポイント設定保存プロパティインスタンスを取得すること(ステップ3712)および、プロパティインスタンスからポイント設定保存ポリシーインスタンスを取得すること(ステップ3714);およびポイント設定保存プロパティ、第1のボリューム オブジェクト、第2のボリュームオブジェクトおよび表面オブジェクトを持つ、ポイント設定保存ポリシーインスタンスに対する併合コールバックを開始することを含む。後のサブステップ自身は、ボリュームオブジェクトのために少なくとも1つの含有特徴を取得すること(ステップ3716);および含有特徴及び第2のボリュームオブジェクトを持つ幾何学的モデラーインタフェースにおいて特徴除去子更新を開始すること(ステップ3718);そして次にセルバックポインタプロパティインスタンスがステップ3719において得られる。次にステップ3720において、集合体バックポインタプロパティポリシーインスタンスが、セルバックポインタプロパティインスタンスから得られる;および第2の併合コールバックが、セルバックポインタプロパティインスタンス、第1のボリュームオブジェクト、第2のボリュームオブジェクト、および表面オブジェクトを持つ集合体バックポインタプロパティポリシーインスタンスに対して開始される。後のサブステップ自身は、セルバックポインタプロパティインスタンスからボリューム幾何学的セルオブジェクトを取得すること(ステップ3722)およびボリューム幾何学的セルオブジェクトに対するセル併合コール開始することを含む。後のサブステップ自身は、ボリューム幾何学的セルオブジェクトのボリュームセル集合体パトロンに対するコールを開始して、第1のボリュームのグラフィックスを無効にすることを含む(ステップ3724)。
図38は、ボリューム特徴自身において編集コールバックを行うための方法を示し、任意に子編集コールバックの除去を含む。後のサブ方法は、特徴除去子事象が生じたときに呼び出される幾何学的モデラーインタフェースでメタ-プロパティ除去子コールバック分類方法を登録すこと(ステップ3804);第2のメタ-プロパティ属性インスタンスをボリューム特徴にアタッチすること(ステップ3806);幾何学的モデラーインタフェースから、ボリューム特徴と、ボリュームオブジェクトと、第2のメタ-プロパティ属性とを指定する除去子コールバックを受け取ること(ステップ3808);第2のメタ-プロパティ属性からポインタ値を取得する;第2のメタ-プロパティオブジェクトの位置を突き止めるためにポインタ値を逆参照すること(ステップ3810);および第2のメタ-プロパティオブジェクトにおいて除去子コールバックを呼び出すことを含む。後のサブステップは、第2のポイント設定保存プロパティインスタンスを取得すること(ステップ3812);第2のポイント設定保存プロパティインスタンスから、第2のポイント設定保存プロパティポリシーインスタンスを取得すること(ステップ3814);ボリューム特徴およびボリュームボリューム幾何学的オブジェクトを持つ、第2のポイント設定ポリシーオブジェクト除去子コールバック方法を開始することを含む。後のサブステップは、ボリュームセルからポイント設定保存プロパティを除去すること(ステップ3816);特徴バックポインタプロパティインスタンスを取得すること(ステップ3818);特徴バックポインタ プロパティインスタンスから第2の集合体バックポインタプロパティポリシーインスタンスを取得する(ステップ3820);およびボリューム特徴、ボリューム幾何学的オブジェクトおよびボリューム特徴バックポインタプロパティを持つ、第2の集合体バックポインタプロパティポリシーインスタンスの除去子コールバック方法を開始することを含む。後のサブステップは、ボリューム特徴オブジェクトのボリューム特徴集合体パトロンへのコールを開始し、ボリューム特徴オブジェクトの幾何学を有効にすること(ステップ3822);およびボリューム特徴オブジェクトのボリューム特徴集合体パトロンへのコールを開始し、ボリューム特徴オブジェクトのグラフィックスを無効にすること(ステップ3824)を含む。
図39は、表面ボリュームで編集コールバックを行うことは、ボリューム特徴(上記)と同じ類似の方法であることを示している。具体的に、表面特徴の編集コールバックを行う工程は、表面併合事象が生じたときに呼び出されるべき幾何学的モデラーインタフェースでメタ-プロパティ併合コールバック分類方法を登録すること(ステップ3904);第1のメタ-プロパティ属性を、表面特徴によって限定される少なくとも1つの表面オブジェクトにアタッチすること(ステップ3906);幾何学的モデラーインタフェースから、表面オブジェクトと、第2の表面オブジェクトと、表面オブジェクトに以前は結合していて除去された曲面オブジェクトと、メタ-プロパティ属性とを指定するコールバックを受け取ること(ステップ3908);幾何学的モデル属性からポインタ値を取得し、メタ-プロパティオブジェクトの位置を突き止めるために、ポインタ値を逆参照すること(ステップ3910);および第1のメタ-プロパティオブジェクト中に併合コールバックを呼び出すことを含む。後のサブステップは、ポイント設定保存プロパティインスタンスを取得すること(ステップ3912);プロパティインスタンスから、第1のポイント設定保存ポリシーインスタンスを取得すること(ステップ3914);およびポイント設定保存プロパティインスタンス、第1の表面オブジェクト、第2の表面オブジェクトおよび曲線オブジェクトを持つ、ポイント設定保存ポリシーインスタンスに対して、第1の併合コールバックを開始することを含む。後のサブステップは、表面オブジェクトのために少なくとも1つの含有特徴を取得すること(ステップ3916);および含有特徴および第2の表面オブジェクトを持つ幾何学的モデラーインタフェースにおいて、特徴除去子更新を開始すること(ステップ3918);集合体バックポインタプロパティポリシーインスタンスをセルバックポインタプロパティインスタンスから取得すること(ステップ3920);およびポイント設定保存プロパティインスタンス、第1の表面オブジェクト、第2の表面オブジェクトおよび曲線オブジェクトを持つ、集合体バックポインタプロパティポリシーインスタンスに対する第2の併合コールバックを開始することを含む。後のサブステップは、セルバックポインタプロパティインスタンスから幾何学的セルオブジェクトを取得すること(ステップ3922);および表面幾何学的セルオブジェクトに対するセル併合コールを開始することを含む。後のサブステップは、表面幾何学的セルのセル集合体パトロンに対するコールを開始し、第1の表面のグラフィックスを無効にすること(ステップ3924)を含む。
最後に、図40は、除去子事象が生じたときに呼び出されるべき、幾何学的モデラーインタフェースでメタ-プロパティ除去子コールバック分類方法を登録することを含む、表面特徴のための特徴除去コールバックを行う工程を示し(ステップ4004)、第2のメタ-プロパティ属性インスタンスを表面特徴にアタッチすること(ステップ4006);表面特徴と、表面オブジェクトと、第2のメタ-プロパティ属性とを指定する前記除去子コールバックを幾何学的モデラーインタフェースから受け取ること(ステップ4008);第2のメタ-プロパティ属性からポインタ値を取得するし、第2のメタ-プロパティ オブジェクトの位置を突き止めるためにポインタ値を逆参照すること(ステップ4010;および第2のメタ-プロパティ属性、表面特徴及び表面幾何学的オブジェクトを持つ第2のメタ-プロパティオブジェクト中の除去子コールバックを呼び出すことを含む。後のサブステップは、第2のポイント設定保存プロパティインスタンスを取得すること(ステップ4012);第2のポイント設定保存プロパティインスタンスから第2のポイント設定保存プロパティポリシーインスタンスを取得すること(ステップ4014);および表面特徴および表面幾何学的オブジェクトを持つ、第2のポイント設定ポリシーオブジェクトオブジェクト中の除去子コールバックを開始することを含む。後のサブステップ自身は、表面セルからポイント設定保存プロパティを除去すること(ステップ4016);特徴バックポインタ プロパティインスタンスを取得すること(ステップ4018);特徴バックポインタプロパティインスタンスから第2の集合体バック ポインタ プロパティ ポリシー インスタンスを取得すること(ステップ4020);および表面幾何学的オブジェクトおよび表面特徴ポインタプロパティで第2の集合体バックポインタプロパティポリシーインスタンスの除去子コールバック方法を開始することを含む。 後のサブステップ自身は、バックポインタプロパティインスタンスによって確認される表面特徴幾何学的オブジェクトに対して、除去子通知コールを開始することを含む。後のサブステップ自身は、表面特徴オブジェクトの表面特徴集合体パトロンに対するコールを開始し、表面特徴オブジェクトの幾何学を有効にすること(ステップ4022);および表面特徴オブジェクトの表面特徴集合体パトロンに対するコールを開始し、表面特徴オブジェクトのグラフィックスを無効にすること(4024)を含む。
本発明は、したがって、目的を実行し、目的および上記の結果および固有の利点を達成するために、適応される。本発明は、特定の態様に言及して描写、記載および定義されているが、そのような言及は、本発明を限定することを意図するものではなく、そのような限定があると推察されるべきものではない。本発明は、当該技術分野の当業者にとって生じるであろう、相当量の形式的および/または機能的な改変、交代(alternation)、変更および等価が可能である。描写および記載された本発明の態様は例示に過ぎず、本発明の範囲を網羅するものではない。したがって、本発明は、すべての点について均等を認識した上で、添付の請求の範囲の精神および範囲によってのみ限定されるよう意図されている。
本発明およびその利点の理解をより完全にするために、以下においては、添付の図面と一致する符号を付けて説明する。
ブロック図である。 モデリングされる項目を示す図である。 モデリングプロセスにおける保存を説明する図である。 モデリングプロセスにおける保存を説明する図である。 モデリングプロセスにおける保存を説明する図である。 モデリングされる項目を示す図である。 モデリングされる項目を示す図である。 幾何学的モデルを示す図である。 グラフィックスモデルを示す図である。 ブロック図である。 それぞれオブジェクトの関係を示す図である。 それぞれオブジェクトの関係を示す図である。 それぞれオブジェクトの関係を示す図である。 それぞれオブジェクトの関係を示す図である。 それぞれオブジェクトの関係を示す図である。 それぞれオブジェクトの関係を示す図である。 それぞれオブジェクトの関係を示す図である。 状態を示す図である。 本発明の2つのボリュームおよび1つの表面セルおよびそれらのそれぞれノードを示すブロック図である。 共通の面を備えた、本発明の2つのボリュームおよび1つの表面セルおよびそれらのそれぞれのノードを示すブロック図である。 表面とボリューム特徴との間の対応性、および本発明のノードを示すブロック図である。 表面とボリューム特徴との間の対応性、および本発明のノードを示すブロック図である。 本発明の状態図である。 本発明の主なフレームワークのブロック図である。 本発明の種々のオブジェクトの関係を示すブロック図である。 本発明の種々のオブジェクトの関係を示すブロック図である。 本発明の種々のオブジェクトの関係を示すブロック図である。 本発明の種々のオブジェクトの関係を示すブロック図である。 本発明の種々のオブジェクトの関係を示すブロック図である。 本発明の種々のオブジェクトの関係を示すブロック図である。 本発明の種々の方法を示すブロック図である。 本発明の種々の方法を示すブロック図である。 本発明の種々の方法を示すブロック図である。 本発明の種々の方法を示すブロック図である。 本発明の種々の方法を示すブロック図である。 本発明の種々の方法を示すブロック図である。 本発明の種々の方法を示すブロック図である。 本発明の種々の方法を示すブロック図である。 本発明の種々の方法を示すブロック図である。 本発明の種々の方法を示すブロック図である。 本発明の種々の方法を示すブロック図である。 本発明の種々の方法を示すブロック図である。 本発明の種々の方法を示すブロック図である。 本発明の種々の方法を示すブロック図である。 本発明の種々の方法を示すブロック図である。 本発明の種々の方法を示すブロック図である。 本発明の種々の方法を示すブロック図である。

Claims (36)

  1. 第1の表面特徴を含むモデルをインタラクティブに編集する方法であって、前記方法は、プロセッサ、データ保存システム、少なくとも1つの入力装置および少なくとも1つの出力装置を備えたコンピュータにおいて実行され、前記コンピュータは、ランダムアクセスメモリを含むメモリをさらに備え、前記モデルは、コンピュータ読み取り可能な媒体に保存され、前記方法は、
    データ保存システムに保存されたデータベースから前記第1の表面特徴のデータを前記コンピュータの前記メモリへローディングし、
    第1の表面特徴の集合体特徴オブジェクトを前記コンピュータの前記メモリ上に作成し、
    前記集合体特徴オブジェクト用の第1のグラフィックスオブジェクトを前記コンピュータの前記メモリ上に作成し、
    第1のグラフィックスオブジェクトを前記コンピュータの前記メモリ上のアプリケーションシーングラフに加え、
    集合体特徴オブジェクトの幾何学的オブジェクトを前記コンピュータの前記メモリ上に作成し、
    不規則空間分離によって、前記第1の表面特徴が、前記出力装置に表示されるよう構成されたモデルの一部となるように集合体特徴オブジェクトのための幾何学的オブジェクトを編集することによって、モデルに第1の表面特徴を編集し、
    変化したセルのみのモデルのグラフィックスを、前記入力装置の少なくとも一つにおいて、幾何学的基準、位相的基準およびグラフィックオブジェクト目視可能性から選択された基準にしたがって選択的に更新し;および
    表面特徴が前記モデル内に分類された後、第1の表面特徴の第1のグラフィックスオブジェクトをアプリケーションシーングラフから除去することを含む方法。
  2. 前記編集を行う工程は、
    インタフェースを提供すること、
    前記インタフェースで操作するIGMを提供すること、
    前記IGMで操作するGQIを提供すること、
    インタフェースを通じて、第2の表面特徴において行う操作を選択すること、前記インタフェースは、IGMに選択を知らせるために構成され、配列されている、
    GQIによって操作を呼び出すこと、
    前記プロセッサによる操作の実行中、GQIからIGMへのコールバックを少なくとも1回行うこと、および
    モデルのグラフィックスオブジェクトを更新し、出力装置をリフレッシュすることを含む、請求項1に記載の方法。
  3. 前記編集を行う工程は、不規則な空間分割を介して達成される、請求項1に記載の方法。
  4. 前記グラフィックスオブジェクトを更新する工程は、グラフィックスオブジェクトを作成することを含む、請求項1に記載の方法。
  5. 前記コールバックを行う工程が集合体特徴の状態に変化を生じさせる、請求項2に記載の方法。
  6. 前記集合体特徴の状態の変化が、幾何学的オブジェクトとグラフィックスとの間の一貫性を管理する有限状態機械で表される、請求項5に記載の方法。
  7. 前記コールバックを行う工程は、集合体特徴のグラフィックスオブジェクトを無効にすることを含む、請求項5に記載の方法。
  8. 前記コールバックを行う工程は、集合体特徴の幾何学オブジェクトを有効にすることを含む、請求項5に記載の方法。
  9. 前記コールバックを行う工程は、1セットのオブジェクトを提供することを含み、前記1セットのオブジェクトは、
    第1の幾何学的モデラー特徴オブジェクトと、
    幾何学的モデラー特徴オブジェクトに含まれる変更された幾何学的オブジェクトと、
    変更された幾何学的オブジェクトと効果をもたらすように関連した第1のメタ-プロパティ属性オブジェクトと、
    第1のメタ-プロパティ属性オブジェクトと関連する第1のメタ-プロパティオブジェクトとを含み、
    ポイント設定保存プロパティオブジェクトと、
    ポイント設定保存プロパティポリシーオブジェクトと、
    セルバックポインタプロパティオブジェクトと、
    集合体バックポインタプロパティポリシーオブジェクトと、
    前記セルバックポインタオブジェクトと関連する幾何学的セルオブジェクトと、
    前記幾何学的セルオブジェクトと関連する集合体セルオブジェクトと、
    前記集合体セルオブジェクトと関連する表示セルグラフィックスオブジェクトとを含む、前記第1のメタ-プロパティオブジェクトと、
    前記幾何学的モデラー特徴オブジェクトと関連した、第2のメタ-プロパティ属性オブジェクトと、および
    第2のメタ-プロパティ属性オブジェクトと関連した、
    第2のポイント設定保存プロパティオブジェクトと、
    第2のポイント設定保存プロパティポリシーオブジェクトと、
    特徴バックポインタプロパティオブジェクトと、
    第2の集合体バックポインタプロパティポリシーオブジェクトと、
    特徴バックポインタプロパティオブジェクトと関連した幾何学的特徴オブジェクトと、
    幾何学的特徴オブジェクトと関連した集合体特徴オブジェクトと、
    集合体特徴オブジェクトと関連した表示特徴グラフィックスオブジェクトとを含む、第2のメタ-プロパティオブジェクトとを含む、請求項5に記載の方法。
  10. 前記コールバックを行う工程は、コールバックがボリュームオブジェクトに対するものであれば、ボリューム特徴に対して編集コールバックを行い、そうでない場合は、表面特徴に対して編集コールバックを行う、請求項に記載の方法。
  11. 前記更新工程は、幾何学的に変更されたセルのみのグラフィックスを更新することを含む、請求項1に記載の方法。
  12. 前記更新工程は、位相的に変更された特徴のみのグラフィックスを更新することを含む、請求項1に記載の方法。
  13. 前記コンピュータのメモリ上に記集合体特徴のための第1のグラフィックスオブジェクトを作する工程は、
    モデル中の全ての関連する表面特徴を取得すること;
    関連する表面特徴のそれぞれについて
    前記関連する表面特徴がグラフィックスオブジェクトを有している場合、前記関連する表面特徴についてグラフィックスオブジェクトを更新し、そうでない場合は、関連する表面特徴について前記コンピュータのメモリ上にグラフィックスオブジェクトを作成し、および、
    関連する表面特徴のグラフィックスオブジェクトを表面シーングラフルートノードに追加することを含む、請求項1に記載の方法。
  14. 前記グラフィックスオブジェクトを前記コンピュータのメモリ上に作成する工程は、
    前記表面特徴の全ての二次元的なセルの集合体オブジェクトを得ること;
    前記セルのそれぞれの集合体オブジェクトを促して、少なくとも1つの有効なグラフィックスオブジェクトを取得させ、およびグラフィックスオブジェクトをサブシーングラフに追加させること;および
    前記表面特徴のグラフィックスオブジェクトを有効にすることを含む、請求項13に記載の方法。
  15. セルのための有効なグラフィックスオブジェクトを取得する前記工程は、
    セルのためのグラフィックスオブジェクトが存在しない場合、セルのためグラフィックスオブジェクトを作成し、前記グラフィックスを有効にすること、および、
    セルのためのグラフィックスオブジェクトが存在するが有効でない場合、セルのためのグラフィックスオブジェクトを更新して、前記グラフィックスを有効にすることを含む、請求項14に記載の方法。
  16. 前記グラフィックスオブジェクトを更新する工程は、目視可能性についての有限状態機械を参照することを含む、請求項1に記載の方法。
  17. 目視可能性についての有限状態機械は、グラフィックスオブジェクトの更新、およびグラフィックスオブジェクトの目視可能性の更新を管理する、請求項16に記載の方法。
  18. 目視可能性についての有限状態機械は、目視可能と指定されたオブジェクトのグラフィックスだけを更新することができる、請求項17に記載の方法。
  19. 前記更新工程は、
    グラフィックスオブジェクトを目視可能と指定すること、
    グラフィックスオブジェクトの有効性を確認すること,
    グラフィックスオブジェクトが有効である場合、グラフィックスオブジェクトをシーングラフに追加し、そうでない場合は、グラフィックスオブジェクトを更新し、その後グラフィックスオブジェクトをシーングラフに追加することを含む、請求項17に記載の方法。
  20. 前記モデルから、少なくとも1つのボリュームセルのための第1のグラフィックスオブジェクト前記コンピュータのメモリ上に作成する工程は、前記モデルからの少なくとも1つのボリュームセルに対して実行され、当該工程は
    少なくとも1つの関連する活性なボリュームセル(active volume)をモデルの中に取得すること、
    各ボリュームセルの全ての二次元的なセルのグラフィックスオブジェクトが作成されたことを確認すること、
    前記二次元的なセルのそれぞれについて、二次元的なセル集合体が存在しない場合、集合体を取得し、新たな集合体を作成すること、
    各二次元的なセルが有効なグラフィックスを持つことを確認すること、
    少なくとも1つのボリュームセルのそれぞれについてグラフィックスオブジェクトを作成すること、
    各ボリュームセルに対して、ボリュームセルの各2次元的なセルのグラフィックスコンテンツを、前記ボリュームセルのグラフィックスオブジェクトのサブシーングラフに追加すること;および
    各ボリュームセルのグラフィックスオブジェクトをシーングラフルートノードに追加することを含む、請求項1に記載の方法。
  21. 二次元的なセルのグラフィックスコンテンツのインスタンシエーションは、子としての二次元的なセルを有する表面特徴のグラフィックスオブジェクトを含む少なくとも1つのシーングラフ、および、1つのボリュームセルもしくは二次元的なセルをそれぞれの境界の一部として有する2つのボリュームセルのいずれかのグラフィックスオブジェクトを含む少なくとも1つのシーングラフによって共有される、請求項20に記載の方法。
  22. 前記更新工程は、
    前記シーングラフの各特徴の状態をチェックすること、および、
    その特徴にとってグラフィックスが有効であるか、または、幾何学的オブジェクトが無効である場合、その特徴のグラフィックスオブジェクトを更新しないこと、
    幾何学的オブジェクトが有効であり、グラフィックスが無効であれば、その特徴のグラフィックスオブジェクトを更新することを含む、請求項6に記載の方法。
  23. 出力装置をリフレッシュするための前記モデルのグラフィックオブジェクトの前記更新工程は、
    前記シーングラフの各特徴の状態をチェックすること、および、
    そのセルにとってグラフィックスが有効であるか、または、幾何学的オブジェクトが無効である場合、そのセルのグラフィックスオブジェクトを更新しないこと;
    幾何学的オブジェクトが有効であり、グラフィックスが無効であれば、そのセルのグラフィックスオブジェクトを更新することを含む、請求項6に記載の方法。
  24. ボリューム特徴の編集コールバックを行う前記工程は、
    幾何学的モデラーインタフェースによるメタ-プロパティ分割コールバック分類方法を登録すること、前記幾何学的モデラーインタフェースは、ボリューム分割事象が生じたときに呼び出されるように構成され、配置されている、
    第1のメタ-プロパティ属性を、ボリューム特徴によって限定される少なくとも1つのボリュームオブジェクトにアタッチすること、
    第1のボリュームオブジェクトと、第1のボリュームオブジェクトに対する変更によって影響を受ける第2のボリュームと、第1のメタ-プロパティ属性とを指定するコールバックを幾何学的モデラーインタフェースから受け取ること、
    第1のメタ-プロパティ属性からのポインタ値を取得し、第1のメタ-プロパティオブジェクトを突き止めるためにポインタ値を逆参照すること、
    第1のメタ-プロパティ属性を用いて、第1のメタ-プロパティオブジェクト中の分割コールバックを呼び出すことを含み、前記第1のボリュームオブジェクトおよび第2のボリュームオブジェクトは、
    第1のポイント設定保存プロパティインスタンスを取得すること、
    第1のポイント設定保存ポリシーインスタンスを前記プロパティインスタンスから取得すること、
    ポイント設定保存ポリシーインスタンスへの第1の分割コールバックをポイント設定保存プロパティインスタンスによって開始することを含み、前記第1のボリュームオブジェクトおよび第2のボリュームオブジェクトは、
    第1のボリュームオブジェクトの少なくとも1つの含有特徴を取得すること、
    前記含有特徴と第2のボリュームオブジェクトとを用いて、幾何学的モデラーインタフェースにおいて特徴追加子更新(feature add child update)を開始することを含み、
    セルバックポインタプロパティインスタンスを取得すること、および
    集合体バックポインタプロパティポリシーインスタンスを、セルバックポインタプロパティインスタンスから取得すること、およびセルバックポインタプロパティインスタンスを用いて集合体バックポインタプロパティインスタンスに対する第2の分割コールバックを開始すること、それは、
    セルバックポインタプロパティから、セルバックポインタプロパティインスタンスを取得すること、および
    ボリューム幾何学的セルオブジェクトに対するセル分割コールを開始すること、を含み、それは、
    ボリューム幾何学セルオブジェクトのボリュームセル集合体パトロンに対するコールを開始して、第1のボリュームのグラフィックスを無効にすることを含む、請求項10記載の方法。
  25. 前記ボリューム特徴のための特徴追加子コールバックを行う工程は、
    幾何学的モデラーインタフェースによるメタ-プロパティ追加子コールバック分類方法を登録して、特徴追加子事象が生じたときに呼び出されるようにすること、
    第2のメタ-プロパティ属性インスタンスをボリューム特徴にアタッチすること、
    ボリューム特徴と、ボリュームオブジェクトと、第2のメタ-プロパティ属性とを指定する追加子コールバックを前記幾何学的モデラーインタフェースから受け取ること、
    第2のメタ-プロパティ属性からポインタ値を取得し、第2のメタ-プロパティオブジェクトの位置を突き止めるためにポインタ値を逆参照すること、
    第2のメタ-プロパティオブジェクト中に前記追加子コールバックを呼び出すことを含み、それは、
    第2のポイント設定保存プロパティインスタンスを取得すること、
    第2のポイント設定保存プロパティポリシーインスタンスを、前記第2のポイント設定保存プロパティインスタンスから取得すること、及び
    ボリューム特徴及びボリューム幾何学的オブジェクトによって、第2のポイント設定ポリシーオブジェクトの追加子コールバック方法を開始することを含み、それは、
    ポイント設定保存プロパティをボリュームセルにアタッチすること、
    特徴バックポインタプロパティインスタンスを取得すること、
    第2の集合体バックポインタプロパティポリシーインスタンスを、特徴バックポインタプロパティインスタンスから取得すること、および
    前記ボリューム特徴、前記ボリューム幾何学的オブジェクトおよび前記ボリューム特徴バックポインタプロパティをもつ、第2の集合体バックポインタプロパティポリシーインスタンスの追加子コールバック方法を開始することを含み、それは、
    特徴バックポインタプロパティインスタンスによって確認されたボリューム特徴幾何学的オブジェクトに対する追加子通知コールを開始することを含み、それは、
    ボリューム特徴オブジェクトのボリューム特徴集合体パトロンに対するコールを開始してボリューム特徴オブジェクトの幾何学的オブジェクトを有効にすること、およびボリューム特徴オブジェクトのボリューム特徴集合体パトロンに対するコールを開始してボリューム特徴オブジェクトのグラフィックスを無効にすることすることを含む、請求項24に記載の方法。
  26. 前記表面特徴のための編集コールバックを行う工程は、
    表面分割事象が生じたときに呼び出される幾何学的モデラーインタフェースによってメタ-プロパティ分割コールバック分類方法を登録すること、
    第1のメタ-プロパティ属性を、表面特徴によって限定される少なくとも1つの表面にアタッチすること、
    第1の表面オブジェクトと、第1の表面に対する変化による影響を受ける第2の表面と、第1のメタ-プロパティ属性とを指定するコールバックを幾何学的モデラーインタフェースから受け取ること、
    第1のメタ-プロパティ属性からのポインタ値を取得し、第1のメタ-プロパティオブジェクトの位置を突き止めるために前記ポインタ値を逆参照すること、
    第1の表面オブジェクト、前記第2の表面オブジェクトおよび第1のメタ-プロパティ属性を持つ第1のメタ-プロパティオブジェクトに分割コールバック呼び出すことを含み、それは、
    第1のポイント設定保存プロパティインスタンスを取得すること、
    第1のポイント設定保存プロパティポリシーインスタンスを、プロパティインスタンスから取得すること、及び
    ポイント設定保存ポリシーインスタンスに対する第1の分割コールバックをポイント設定保存プロパティインスタンスによって開始することを含み、第1の表面オブジェクトおよび第2の表面オブジェクトは、
    第1の表面オブジェクトの少なくとも1つの含有特徴を取得すること、および前記含有特徴と第2の表面オブジェクトによって幾何学的モデラーインタフェース上で特徴追加子更新を開始することを含み、
    セルバックポインタプロパティインスタンスを取得すること、
    集合体のバックポインタプロパティポリシーインスタンスを、バックポインタプロパティインスタンスから取得すること、および
    セルバックポインタプロパティインスタンスを持つ集合体バックポインタプロパティポリシーインスタンスに対して、第2の分割コールバックを開始することを含み、それは、
    セルバックポインタプロパティインスタンスから、表面幾何学的形状を取得すること、及び、
    表面幾何学的セルオブジェクトに対するセル分割コールを開始することを含み、それは、
    表面幾何学的セルオブジェクトの表面セル集合体パトロンに対してコールを開始し、第1の表面のグラフィックスを無効にすることを含む、請求項10に記載の方法。
  27. 特徴追加コールバックを行う工程は、
    幾何学的モデラーインタフェースによるメタ-プロパティ追加子コールバック分類方法を登録して、特徴追加子事象が生じたとき、呼び出されるようにすること、
    第2のメタ-プロパティ属性インスタンスを表面特徴にアタッチすること、
    表面特徴と、表面オブジェクトと、第2のメタ-プロパティ属性とを指定する追加子コールバックを幾何学的モデラーインタフェースから受け取ること、
    第2のメタ-プロパティ属性からポインタ値を取得し、第2のメタ-プロパティオブジェクトの位置を突き止めるためにポインタ値を逆参照すること、
    第2のメタ-プロパティオブジェクト中に追加子コールバックを呼び出すことを含み、それは、
    第2のポイント設定保存プロパティインスタンスを取得すること、
    第2のポイント設定保存プロパティポリシーインスタンスを、第2のポイント設定保存プロパティインスタンスから取得すること、および
    表面特徴および表面幾何学的オブジェクトを持つ第2のポイント設定ポリシーオブジェクトの追加子コールバック方法を開始することを含み、それは、
    ポイント設定保存プロパティを表面セルにアタッチすること、
    特徴バックポインタプロパティインスタンスを取得すること、
    第2の集合体バックポインタプロパティポリシーインスタンスを、特徴バックポインタプロパティインスタンスから取得すること、および
    表面特徴、表面幾何学的オブジェクトおよび表面特徴バックポインタプロパティをもつ、第2の集合体バックポインタプロパティポリシーインスタンスの追加子コールバック方法を開始することを含み、それは、
    表面特徴幾何学オブジェクトに対して追加子通知を開始して特徴バックポインタプロパティインスタンスによって確認れた表面特徴幾何学的オブジェクトを開始することを含み、それは、
    表面特徴オブジェクトの表面特徴集合体パトロンに対するコールを開始し、表面特徴オブジェクトの幾何学的オブジェクトを有効にすること、および
    表面特徴オブジェクトの表面特徴集合体パトロンに対するコールを開始し、表面特徴オブジェクトのグラフィックスを無効にすることを含む、請求項26に記載の方法。
  28. 前記コールバックを行う工程がセルの状態に変化を生じさせる、請求項2に記載の方法。
  29. 前記セルの状態の変化が、幾何学的オブジェクトとグラフィックスとの間の一貫性を管理する有限状態機械で表される、請求項28に記載の方法。
  30. 前記第2の表面特徴は、モデルに含まれていない、請求項2に記載の方法。
  31. 前記第2の表面特徴がモデルに含まれている、請求項2に記載の方法。
  32. 前記出力装置がディスプレイである、請求項1に記載の方法。
  33. ボリューム特徴のための編集コールバックを行う前記工程は、
    幾何学的モデラーインタフェースによるメタ-プロパティ併合コールバック分類方法を登録して、ボリュームの併合事象が生じたとき、呼び出されるようにすること、
    第1のメタ-プロパティ属性を、前記ボリューム特徴によって限定されている少なくとも1つのボリュームオブジェクトにアタッチすること、
    第1のボリュームオブジェクトと、第2のボリュームオブジェクトと、第1および第2のボリュームオブジェクトに以前に結合しており、およびモデルから除去されている表面オブジェクトと、メタ-プロパティ属性とを指定するコールバックを幾何学的モデラーインタフェースから受け取ること、
    幾何学モデル属性からポインタ値を取得し、第1のメタ-プロパティオブジェクトの位置を突き止めるためにポインタ値を逆参照すること、および
    第1のメタ-プロパティオブジェクト中に併合コールバックを呼び出すことを含み、それは、
    第1のポイント設定保存プロパティインスタンスを取得すること、
    第1のポイント設定保存ポリシーインスタンスを、プロパティインスタンスから取得すること、および
    ポイント設定保存プロパティインスタンスによるポイント設定保存ポリシーインスタンスに対する第1の併合コールバックを開始することを含み、前記第1のボリュームオブジェクト、第2のボリュームオブジェクト、および表面オブジェクトは、
    第1のボリュームオブジェクトの少なくとも1つの含有特徴を取得し、および
    含有特徴および第2のボリュームオブジェクトを持つ、幾何学的モデラーインタフェース上で、特徴除去子更新を開始すること、
    セルバックポインタプロパティインスタンスを取得すること、
    集合体バックポインタプロパティポリシーインスタンスをセルバックポインタプロパティインスタンスから取得すること、および
    セルバックポインタプロパティインスタンス、第1のボリュームオブジェクト、第2のボリュームオブジェクト、及び表面オブジェクトを備えた集合体バックポインタプロパティポリシーに対する第2の併合コールバックを開始すること、を含み、前記表面オブジェクトは、
    ボリューム幾何学的セルオブジェクトを、前記セルバックポインタプロパティインスタンスから取得し、および、
    ボリューム幾何学的セルオブジェクトに対するセル併合コールを開始することを含み、それは、
    ボリューム幾何学的セルオブジェクトのボリュームセル集合体パトロンに対するコールを開始し、第1のボリュームのグラフィックスを無効にすることを含む、請求項10に記載の方法。
  34. 特徴除去子コールバックを行う前記工程は、
    特徴除去子事象が生じたときに呼び出される幾何学的モデラーインタフェースによって、メタ-プロパティ除去子コールバック分類方法を登録すること、
    第2のメタ-プロパティ属性インスタンスをボリューム特徴にアタッチすること、
    ボリューム特徴と、ボリュームオブジェクトと、第2のメタ-プロパティ属性とを指定する除去子コールバックを幾何学的モデラーインタフェースから受け取ること、
    第2のメタ-プロパティ属性からポインタ値を取得し、第2のメタ-プロパティオブジェクトを突き止めるためにポインタ値を逆参照すること、および
    第2のメタ-プロパティオブジェクト中に除去子コールバックを呼び出すことを含み、それは、
    第2のポイント設定保存プロパティインスタンスを取得すること、
    第2のポイント設定保存プロパティインスタンスから、第2のポイント設定保存プロパティポリシーインスタンスを取得すること、
    ボリューム特徴及びボリューム幾何学的オブジェクトによって、第2のポイント設定ポリシーオブジェクトの除去子コールバック方法を開始することを含み、それは、
    ボリュームセルからポイント設定保存プロパティを除去すること、
    特徴バックポインタプロパティインスタンスを取得すること、
    第2の集合体バックポインタプロパティポリシーインスタンスを、特徴バックポインタプロパティインスタンスから取得すること、および
    ボリューム特徴、ボリューム幾何学的オブジェクト、およびボリューム特徴バックポインタプロパティを用いて第2の集合体バックポインタプロパティポリシーインスタンスの除去子コールバック方法を開始することを含み、それは、
    特徴バックポインタプロパティインスタンスによって確認されたボリューム特徴幾何学的オブジェクトに対する除去子通知コールを開始することを含み、それは、
    ボリューム特徴オブジェクトのボリューム特徴集合体パトロンへのコールを開始し、ボリューム特徴オブジェクトの幾何学的オブジェクトを有効にすること、および
    ボリューム特徴オブジェクトのボリューム特徴集合体パトロンへのコールを開始し、ボリューム特徴オブジェクトのグラフィックスを無効にすることを含む、請求項33に記載の方法。
  35. 前記表面特徴のための編集コールバックを行う前記工程は、
    表面併合事象が生じたときに呼び出される幾何学的モデラーインタフェースによるメタ-プロパティ併合コールバック分類方法を登録すること、
    表面特徴によって限定される少なくとも1つの表面オブジェクトに第1のメタ-プロパティ属性をアタッチすること、
    第1の表面オブジェクトと、第2の表面オブジェクトと、以前に第1および第2の表面に結合し、モデルから除去されている曲線オブジェクトと、メタルプロパティ属性とを指定するコールバックを、幾何学的モデラーインタフェースから受け取ること、
    幾何学的モデル属性からポインタ値を取得すること、およびメタ-プロパティオブジェクトを突き止めるために、ポインタ値を逆参照すること、および
    第1のメタ-プロパティオブジェクトにおいて併合コールバックを呼び出すことを含み、それは、
    第1のポイント設定保存プロパティインスタンスを取得すること、および
    ポイント設定保存プロパティインスタンス、第1の表面オブジェクト、第2の表面オブジェクトおよび曲線オブジェクトをもつポイント設定保存ポリシーインスタンスに対する第1の併合コールバックを開始することを含み、それは、
    第1の表面オブジェクトのための少なくとも1つの含有特徴を取得すること、および
    含有特徴および第2の表面オブジェクトをもつ、幾何学的モデラーインタフェース上で特徴除去子更新を開始すること、
    セルバックポインタプロパティインスタンスを取得すること、
    前記セルバックポインタプロパティインスタンスから、集合体バックポインタプロパティポリシーインスタンスを取得すること、および
    セルバックポインタプロパティインスタンス、第1の表面オブジェクト、第2の表面オブジェクト、および曲線オブジェクトを持つ集合体バックポインタプロパティポリシーインスタンスに対する第2の併合コールバックを開始することを含み、それは、
    セルバックポインタプロパティインスタンスから表面幾何学的セルオブジェクトを取得すること、および
    前記表面幾何学的セルオブジェクトに対するセル併合コールを開始することを含み、それは、
    前記表面幾何学的セルオブジェクトの表面セル集合体パトロンに対するコールを開始し、第1の表面のグラフィックスを無効にすることを含む、請求項10に記載の方法。
  36. 前記特徴除去コールバックを行う工程は、
    特徴除去子事象が生じたときに呼び出される幾何学的モデラーインタフェースによって、メタ-プロパティ除去子コールバック分類方法を登録すること、
    第2のメタ-プロパティ属性インスタンスを表面特徴にアタッチすること、
    表面特徴と、表面オブジェクトと、第2のメタ-プロパティ属性とを指定する前記除去子コールバックを、幾何学的モデラーインタフェースから受け取ること、
    第2のメタ-プロパティ属性からポインタ値を取得し、第2のメタ-プロパティオブジェクトを突き止めるために、ポインタ値を逆参照すること、および
    第2のメタ-プロパティ属性、表面特徴および表面幾何学的オブジェクトを持つ第2のメタ-プロパティオブジェクトに除去子コールバックを呼び出すことを含み、それは、
    第2のポイント設定保存プロパティインスタンスを取得すること、
    第2のポイント設定保存プロパティインスタンスから第2のポイント設定保存プロパティポリシーインスタンスを取得すること、および
    表面特徴および表面幾何学的オブジェクトを持つ第2のポイント設定ポリシーオブジェクトの除去子コールバック方法を開始することを含み、それは、
    表面セルからポイント設定保存プロパティを除去すること、
    特徴バックポインタプロパティインスタンスを取得すること、
    第2の集合体バックポインタプロパティポリシーインスタンスを、特徴バックポインタプロパティインスタンスから取得すること、および
    表面特徴、表面幾何学的オブジェクトおよび表面特徴バックポインタプロパティを持つ、第2の集合体バックポインタプロパティポリシーインスタンスの除去子コールバック方法を開始することを含み、それは、
    特徴バックポインタプロパティインスタンスによって確認された表面特徴幾何学的オブジェクトに対して除去子通知コールを開始することを含み、それは、
    表面特徴オブジェクトの表面特徴集合体パトロンに対するコールを開始し、表面特徴オブジェクトの幾何学的オブジェクトを有効にすることを含み、および
    表面特徴オブジェクトの表面特徴集合体パトロンに対するコールを開始し、表面特徴オブジェクトのグラフィックスを無効にすることを含む、請求項35に記載の方法。
JP2003517842A 2001-07-31 2002-07-23 インタラクティブな特徴ベースの地球科学幾何学的モデリングのためのシーングラフの構築および保守 Expired - Fee Related JP4031758B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US30891501P 2001-07-31 2001-07-31
US10/010,540 US6980935B2 (en) 2001-07-31 2001-11-08 Method, apparatus and system for constructing and maintaining scenegraphs for interactive feature-based geoscience geometric modeling
PCT/US2002/024045 WO2003012745A2 (en) 2001-07-31 2002-07-23 Construction and maintenance of scenegraphs for interactive feature-based geoscience geometric modeling

Publications (3)

Publication Number Publication Date
JP2004537817A JP2004537817A (ja) 2004-12-16
JP2004537817A5 JP2004537817A5 (ja) 2006-01-05
JP4031758B2 true JP4031758B2 (ja) 2008-01-09

Family

ID=26681296

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003517842A Expired - Fee Related JP4031758B2 (ja) 2001-07-31 2002-07-23 インタラクティブな特徴ベースの地球科学幾何学的モデリングのためのシーングラフの構築および保守

Country Status (5)

Country Link
US (1) US6980935B2 (ja)
EP (1) EP1412923B1 (ja)
JP (1) JP4031758B2 (ja)
CN (1) CN100380407C (ja)
WO (1) WO2003012745A2 (ja)

Families Citing this family (59)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7298376B2 (en) 2003-07-28 2007-11-20 Landmark Graphics Corporation System and method for real-time co-rendering of multiple attributes
US20050165555A1 (en) * 2004-01-13 2005-07-28 Baker Hughes Incorporated 3-D visualized data set for all types of reservoir data
MX2009002237A (es) 2006-09-01 2009-10-12 Landmark Graphics Corp Sistemas y metodos para representar volumenes de forma de onda.
GB2442496A (en) * 2006-10-02 2008-04-09 Univ Sheffield Evaluating displacements at discontinuities within a body
CA2674846C (en) * 2007-01-05 2017-01-03 Landmark Graphics Corporation, A Halliburton Company Systems and methods for visualizing multiple volumetric data sets in real time
EP2102824A1 (en) * 2007-01-05 2009-09-23 Landmark Graphics Corporation, A Halliburton Company Systems and methods for selectively imaging objects in a display of multiple three-dimensional data-objects
US8305376B2 (en) 2007-04-12 2012-11-06 Dassault Systemes Solidworks Corporation Locally updating a three-dimensional model
CA2614669C (en) * 2007-05-03 2008-12-30 Imperial Oil Resources Limited An improved process for recovering solvent from asphaltene containing tailings resulting from a separation process
CA2592725C (en) * 2007-06-26 2009-04-14 Imperial Oil Resources Limited A method for cleaning fouled vessels in the paraffinic froth treatment process
CA2594205C (en) * 2007-07-20 2009-11-24 Imperial Oil Resources Limited Use of a fluorocarbon polymer as a surface of a vessel or conduit used in a paraffinic froth treatment process for reducing fouling
US9171391B2 (en) 2007-07-27 2015-10-27 Landmark Graphics Corporation Systems and methods for imaging a volume-of-interest
CA2595336C (en) * 2007-07-31 2009-09-15 Imperial Oil Resources Limited Reducing foulant carry-over or build-up in a paraffinic froth treatment process
US20090063575A1 (en) * 2007-08-27 2009-03-05 International Business Machines Coporation Systems, methods and computer products for dynamic image creation for copy service data replication modeling
US7702463B2 (en) * 2007-12-12 2010-04-20 Landmark Graphics Corporation, A Halliburton Company Systems and methods for enhancing a seismic data image
US8704827B2 (en) * 2007-12-21 2014-04-22 Mako Surgical Corp. Cumulative buffering for surface imaging
SE533322C2 (sv) * 2007-12-21 2010-08-24 Tat The Astonishing Tribe Ab Förfarande, modul och anordning för att visa grafisk information
US8271244B2 (en) * 2008-01-28 2012-09-18 Landmark Graphics Corporation Hybrid stratigraphic layering using pseudo-wheeler space
US20090200210A1 (en) * 2008-02-11 2009-08-13 Hommema Scott E Method Of Removing Solids From Bitumen Froth
US20110057929A1 (en) * 2008-03-03 2011-03-10 Honeywell International Inc Model driven 3d geometric modeling system
WO2009117192A1 (en) * 2008-03-20 2009-09-24 Exxonmobil Upstream Research Company Enhancing emulsion stability
US8736600B2 (en) * 2008-06-06 2014-05-27 Landmark Graphics Corporation Systems and methods for imaging a three-dimensional volume of geometrically irregular grid data representing a grid volume
US8252170B2 (en) 2008-06-27 2012-08-28 Exxonmobil Upstream Research Company Optimizing feed mixer performance in a paraffinic froth treatment process
US8612485B2 (en) * 2008-08-11 2013-12-17 Sony Corporation Deferred 3-D scenegraph processing
TWI426463B (zh) * 2009-05-08 2014-02-11 Hon Hai Prec Ind Co Ltd 曲面渲染系統及方法
CA2672004C (en) * 2009-07-14 2012-03-27 Imperial Oil Resources Limited Feed delivery system for a solid-liquid separation vessel
US9222929B2 (en) 2009-12-07 2015-12-29 Exxonmobil Upstream Research Company Solvent surveillance in solvent-based heavy oil recovery processes
US9038034B2 (en) * 2009-12-22 2015-05-19 Intel Corporation Compiling for programmable culling unit
US8731872B2 (en) 2010-03-08 2014-05-20 Exxonmobil Upstream Research Company System and method for providing data corresponding to physical objects
US8731887B2 (en) 2010-04-12 2014-05-20 Exxonmobile Upstream Research Company System and method for obtaining a model of data describing a physical structure
US8727017B2 (en) 2010-04-22 2014-05-20 Exxonmobil Upstream Research Company System and method for obtaining data on an unstructured grid
US8731873B2 (en) 2010-04-26 2014-05-20 Exxonmobil Upstream Research Company System and method for providing data corresponding to physical objects
WO2012018428A1 (en) 2010-08-04 2012-02-09 Exxonmobil Upstream Research Company System and method for summarizing data on an unstructured grid
US8731875B2 (en) 2010-08-13 2014-05-20 Exxonmobil Upstream Research Company System and method for providing data corresponding to physical objects
CA2714842C (en) 2010-09-22 2012-05-29 Imperial Oil Resources Limited Controlling bitumen quality in solvent-assisted bitumen extraction
US8825459B2 (en) * 2010-11-29 2014-09-02 Autodesk, Inc. Multi-modal manipulation of a geometric model
CA2734811C (en) 2011-03-29 2012-11-20 Imperial Oil Resources Limited Feedwell system for a separation vessel
CA2832882A1 (en) * 2011-05-17 2012-11-22 Exxonmobil Upstream Research Company Method for partitioning parallel reservoir simulations in the presence of wells
CN102722906B (zh) * 2012-05-23 2015-01-07 温州大学 一种基于特征的自顶向下从图像建模的方法
US20140282188A1 (en) * 2013-03-15 2014-09-18 Moresteam Development Llc Computer graphical user interface, system, and method
EP2793127B1 (en) * 2013-04-19 2021-11-17 Huawei Technologies Co., Ltd. Method for displaying a 3D scene graph on a screen
US11238056B2 (en) 2013-10-28 2022-02-01 Microsoft Technology Licensing, Llc Enhancing search results with social labels
US9542440B2 (en) * 2013-11-04 2017-01-10 Microsoft Technology Licensing, Llc Enterprise graph search based on object and actor relationships
US11645289B2 (en) 2014-02-04 2023-05-09 Microsoft Technology Licensing, Llc Ranking enterprise graph queries
US9870432B2 (en) 2014-02-24 2018-01-16 Microsoft Technology Licensing, Llc Persisted enterprise graph queries
US11657060B2 (en) 2014-02-27 2023-05-23 Microsoft Technology Licensing, Llc Utilizing interactivity signals to generate relationships and promote content
US10757201B2 (en) 2014-03-01 2020-08-25 Microsoft Technology Licensing, Llc Document and content feed
US10255563B2 (en) 2014-03-03 2019-04-09 Microsoft Technology Licensing, Llc Aggregating enterprise graph content around user-generated topics
US10169457B2 (en) 2014-03-03 2019-01-01 Microsoft Technology Licensing, Llc Displaying and posting aggregated social activity on a piece of enterprise content
US10394827B2 (en) 2014-03-03 2019-08-27 Microsoft Technology Licensing, Llc Discovering enterprise content based on implicit and explicit signals
US9734273B2 (en) * 2014-05-27 2017-08-15 Mentor Graphics Corporation System design management
US9934339B2 (en) 2014-08-15 2018-04-03 Wichita State University Apparatus and method for simulating machining and other forming operations
US10061826B2 (en) 2014-09-05 2018-08-28 Microsoft Technology Licensing, Llc. Distant content discovery
CN106600700B (zh) * 2015-10-20 2020-01-17 星际空间(天津)科技发展有限公司 一种三维模型数据处理系统
CN113014906B (zh) 2016-04-12 2023-06-30 奎蒂安特有限公司 3d场景重建方法、系统及计算机程序存储介质
CN109307885A (zh) * 2017-07-28 2019-02-05 中国石油化工股份有限公司 一种地震解释模块的通用并行处理方法
CA3097202A1 (en) 2018-05-02 2019-11-07 Quidient, Llc A codec for processing scenes of almost unlimited detail
CN110427420B (zh) * 2019-08-05 2022-02-15 中国地质大学(北京) 一种可动态调节的数据管理系统与模型控制方法
US20230281955A1 (en) 2022-03-07 2023-09-07 Quidient, Llc Systems and methods for generalized scene reconstruction
CN116562172B (zh) * 2023-07-07 2023-09-15 中国人民解放军国防科技大学 面向时空叙事的地理场景时间推演方法、装置和设备

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB8622941D0 (en) * 1986-09-24 1986-10-29 Gen Electric Co Plc Computer system
JPH10508715A (ja) * 1994-11-03 1998-08-25 パラメトリック テクノロジー コーポレーション コンピューターグラフィック模型化システム
US6308144B1 (en) 1996-09-26 2001-10-23 Computervision Corporation Method and apparatus for providing three-dimensional model associativity
US6483513B1 (en) * 1998-03-27 2002-11-19 At&T Corp. Method for defining MPEP 4 animation parameters for an animation definition interface
US6191787B1 (en) * 1998-02-10 2001-02-20 Schlumberger Technology Corporation Interactively constructing, editing, rendering and manipulating geoscience models
US6266053B1 (en) * 1998-04-03 2001-07-24 Synapix, Inc. Time inheritance scene graph for representation of media content
US6631403B1 (en) * 1998-05-11 2003-10-07 At&T Corp. Architecture and application programming interfaces for Java-enabled MPEG-4 (MPEG-J) systems
US6608628B1 (en) * 1998-11-06 2003-08-19 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration (Nasa) Method and apparatus for virtual interactive medical imaging by multiple remotely-located users
US6215499B1 (en) * 1999-05-06 2001-04-10 Phillips Petroleum Company Method and apparatus for interactive curved surface seismic interpretation and visualization
US7013246B1 (en) 1999-05-24 2006-03-14 Parametric Technology Corporation Parametric exchange of data between a modeling system and an external application program
US6751655B1 (en) * 2000-04-18 2004-06-15 Sun Microsystems, Inc. Method and apparatus for transport of scenegraph information across a network

Also Published As

Publication number Publication date
CN1561505A (zh) 2005-01-05
US20030025692A1 (en) 2003-02-06
EP1412923A2 (en) 2004-04-28
CN100380407C (zh) 2008-04-09
WO2003012745A2 (en) 2003-02-13
JP2004537817A (ja) 2004-12-16
EP1412923B1 (en) 2005-12-28
US6980935B2 (en) 2005-12-27
WO2003012745A3 (en) 2003-10-09

Similar Documents

Publication Publication Date Title
JP4031758B2 (ja) インタラクティブな特徴ベースの地球科学幾何学的モデリングのためのシーングラフの構築および保守
CA2320447C (en) Interactively constructing, editing, rendering and manipulating geoscience models
US6373489B1 (en) Scalable visualization for interactive geometry modeling
US5729671A (en) Object-oriented method and apparatus for rendering a 3D surface image on a two-dimensional display
US8731887B2 (en) System and method for obtaining a model of data describing a physical structure
US9110194B2 (en) System and method for providing a time-based representation of data
MX2010012490A (es) Sistemas y metodos para formar la imagen de un volumen tridimensional de datos de rejilla geometricamente irregulares que representan un volumen de rejilla.
Van Oosterom et al. Integrated 3D Modelling within a GIS.
Fradin et al. A Hierarchical Topology‐Based Model for Handling Complex Indoor Scenes
US7002576B2 (en) System and method for analyzing a region of interest relative to a predetermined event
Takala User interface management system with geometric modeling capability: a CAD system’s framework
EP1628265A2 (en) Construction and maintenance of scenegraphs for interactive feature-based geoscience graphical modeling
Winkler et al. Design and implementation of an immersive geoscience toolkit
Becker et al. Building an interoperable GIS: Integration of an object-oriented GIS database kernel and a visualization framework
Raposo et al. A system for integrated visualization in oil exploration and production
NO330633B1 (no) Fremgangsmate ved interaktiv redigering av en modell innen geovitenskap
Cheng et al. Multi-resolution Modeling for Virtual Design
Hui-xin et al. A New Integrated Data Structure for 3D GIS
Nir Using Histogram Matrices as an Interface for Designing with Parametric Point-Clouds
Yang et al. The Research of 3D GIS Section for the True Three-Dimensional Geo-Spatial Model
Breunig Examples of Today’s Geoinformation Systems
Basic EXACT GEOMETRY SIMULATION FOR OPTIMIZED DESIGN OF VEHICLES AND VESSELS
Cambazoğlu A Hypergraph-Partitioning Based Remapping Model for Image-Space Parallel Volume Rendering
Shen High-performance visualization algorithms for large-scale scientific data

Legal Events

Date Code Title Description
A072 Dismissal of procedure [no reply to invitation to correct request for examination]

Free format text: JAPANESE INTERMEDIATE CODE: A072

Effective date: 20040907

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070424

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070720

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070920

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20071019

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20101026

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20111026

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees