(57)【特許請求の範囲】
【請求項１】
少なくともプロセッサとアクセス可能なメモリとを有するデータ処理システムのためのグラフィックの編集を行う方法であって、
前記プロセッサが、
第一の曲線及び第二の曲線の選択を受け取り、該第一の曲線及び該第二の曲線が一つの関連性ヒストリーツリーに関連しており、
該第一の曲線及び該第二の曲線に対応してインターミディアリを作成し、
該第一の曲線及び該第二の曲線よりアップストリームの場所に、該関連性ヒストリーツリーに該インターミディアリを挿入し、
該第一の曲線及び該第二の曲線のいずれかが編集されると、対応して該インターミディアリを編集し、
該第一の曲線及び該第二の曲線を更新して該インターミディアリを補間する、
ことを特徴とするグラフィックの編集を行う方法。
【請求項２】
前記プロセッサが、更に、該第一の曲線を編集する命令を受けとり、該インターミディアリを編集する、請求項１に記載の方法。
【請求項３】
前記プロセッサが、更に、該インターミディアリが編集された後に該関連性ツリーを更新する、請求項１に記載の方法。
【請求項４】
該第一の曲線及び該第二の曲線がグラフィックスの曲面を形成している、請求項１に記載の方法。
【請求項５】
前記プロセッサが、該インターミディアリを、該第一の曲線または該第二の曲線の編集に対応して自動的に編集する、請求項１に記載の方法。
【請求項６】
前記プロセッサが、更に、該第一の曲線及び該第二の曲線を選択するためのユーザーによる入力を受け取る、請求項１に記載の方法。
【請求項７】
前記プロセッサが、更に、該第一の曲線及び該第二の曲線に対応したイメージをユーザーに表示する、請求項１に記載の方法。
【請求項８】
少なくともプロセッサとアクセス可能なメモリを有するデータ処理システムで、該データ処理システムが、
第一の曲線及び第二の曲線の選択を受け取る手段と、該第一の曲線及び該第二の曲線が一つの関連性ヒストリーツリーに関連している、
該第一の曲線及び該第二の曲線に対応してインターミディアリを作成する手段と、
該第一の曲線及び該第二の曲線よりアップストリームの場所に、該関連性ヒストリーツリーに該インターミディアリを挿入する手段と、
該第一の曲線及び該第二の曲線のいずれかが編集されると、対応して該インターミディアリを編集する手段と、
該第一の曲線及び該第二の曲線を更新して該インターミディアリを補間する手段と、
から成る、該少なくともプロセッサとアクセス可能なメモリを有するデータ処理システム。
【請求項９】
該第一の曲線を編集する命令を受け取り、該インターミディアリを編集する手段、から更に成る請求項８に記載のデータ処理システム。
【請求項１０】
該インターミディアリが編集された後に該関連性ツリーを更新する手段、から更に成る請求項８に記載のデータ処理システム。
【請求項１１】
該第一の曲線及び該第二の曲線がグラフィックスの曲面を形成すること、を特徴とする請求項８に記載のデータ処理システム。
【請求項１２】
該インターミディアリが該第一の曲線または該第二の曲線の編集に対応して自動的に編集されること、を特徴とする請求項８に記載のデータ処理システム。
【請求項１３】
該第一の曲線及び該第二の曲線を選択するためのユーザーによる入力を受け取る手段、から更に成る請求項８に記載のデータ処理システム。
【請求項１４】
該第一の曲線及び該第二の曲線に対応したイメージをユーザーに表示する手段、から更に成る請求項８に記載のデータ処理システム。
【請求項１５】
コンピュータによって実行されるコンピュータプログラムであって、
該コンピュータプログラムが、
第一の曲線及び第二の曲線の選択を受け取る命令と、該第一の曲線及び該第二の曲線がそれぞれ関連性ヒストリーツリーに関連している、
該第一の曲線及び該第二の曲線に対応してインターミディアリを作成する命令と、
該第一の曲線及び該第二の曲線よりアップストリームの場所に、該関連性ヒストリーツリーに該インターミディアリを挿入する命令と、
該インターミディアリが編集されると、対応して該第一の曲線及び該第二の曲線を編集する命令と、
から成る、コンピュータプログラム。
【請求項１６】
該第一の曲線を編集する命令を受け取り、該インターミディアリを編集する命令、から更に成る請求項１５に記載のコンピュータプログラム。
【請求項１７】
該インターミディアリが編集された後に該関連性ツリーを更新する命令、から更に成る請求項１５に記載のコンピュータプログラム。
【請求項１８】
該第一の曲線及び該第二の曲線がグラフィックスの曲面を形成すること、を特徴とする請求項１５に記載のコンピュータプログラム。
【請求項１９】
該インターミディアリが該第一の曲線または該第二の曲線の編集に対応して自動的に編集されること、を特徴とする請求項１５に記載のコンピュータプログラム。
【請求項２０】
該第一の曲線及び該第二の曲線を選択するためのユーザーによる入力を受け取る命令、から更に成る請求項１５に記載のコンピュータプログラム。
【請求項２１】
該第一の曲線及び該第二の曲線に対応したイメージをユーザーに表示する命令、から更に成る請求項１５に記載のコンピュータプログラム。
【請求項２２】
請求項１記載のグラフィックの編集を行う方法であって、
前記関連性ヒストリーツリーにおいて、前記第二の曲線は、前記第一の曲線の後に発生するものであり、
前記プロセッサが、該第二の曲線が編集されると、対応して該第一の曲線を編集する、方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般にコンピュータグラフィックスの分野に関し、特に曲線の接続、編集、操作の分野に関する。本出願はいくつかの図面または明細書の本文を下記出願と共有するが、必ずしも他の意味でそれらに関連しているわけではない。
【背景技術】
【０００２】
コンピュータは、グラフィックスの編集やコンピュータ支援設計製図（ＣＡＤ）［ｃｏｍｐｕｔｅｒ  ａｉｄｅｄ  ｄｅｓｉｇｎ  ａｎｄ  ｄｒａｆｔｉｎｇ］ツールを含むあらゆる形態の情報マネジメントに、本質的に大きな影響を与えている。単純な形状をモデリングするコンピュータプログラム製品は二次元的であり、対象の長さ及び幅しか表現しないが、より複雑で強力なコンピュータプログラム製品は、三次元的編集及び三次元的画像化を提供する。
【０００３】
三次元形状モデリングプログラムは、一つ以上の３Ｄのソリッドな形（ｓｏｌｉｄ  ｓｈａｐｅ）である構成物から成るシーンや部分を生成することが出来る。例えば、単純なテーブル（ｔａｂｌｅ）を描いたシーンは、そのテーブルの各脚を表すソリッドな形及び平坦なテーブル面（ｔａｂｌｅ  ｔｏｐ）を表すソリッドな形から成る。形状モデリングコンピュータプログラムは、通常、各々のソリッドな形を定義し生成するために使用される実行可能なオブジェクトを有する。各々のソリッドな形のためのオブジェクトは数個の構成要素を有するが、ここで構成要素とは実行可能コードとデータ構造との組み合わせである。例えば、境界表現（「Ｂ−ｒｅｐ」）の構成要素は、ソリッドな形（例えば、ソリッドな部分の長さ、幅、深さ、座標）のための形状及びトポロジーデータを描写しているデータ構造を含む。
【０００４】
ほとんどの三次元形状モデリングプログラムは、フィーチャーベースのパラメータを使ったモデリング技術（ｆｅａｔｕｒｅ−ｂａｓｅｄ  ｐａｒａｍｅｔｒｉｃ  ｍｏｄｅｌｉｎｇ  ｔｅｃｈｎｉｑｕｅ）を採用している。フィーチャーベースのパラメータを使ったモデリングでは、各々のソリッドな形の実行可能なオブジェクトは境界表現の構成要素だけでなく、ソリッドな形がいかにして作成されたかを反映しているデータ構造を含むヒストリー（ｈｉｓｔｏｒｙ）の構成要素または作成の構成要素を有する。ここではこの構成要素を「フィーチャーツリー」（ｆｅａｔｕｒｅ  ｔｒｅｅ）と称する。すなわち、フィーチャーツリーは、ソリッドな形を構成するために使用されるステップの順番または時系列を示すデータを含む。例えば、単純なソリッドブロックでは、ヒストリーはソリッドブロックが単純な二次元の長方形として始まり、三次元に押し出されたことを示している。ここに参照として取り入れる米国特許番号５，８９４，３１０は、境界表現及びヒストリーの構成要素に加えて、視覚的構成要素、物理的構成要素、機能的構成要素、行動的構成要素といった他の様々な構成要素を有するソリッドな形を開示している。同様にここに参照として取り入れる米国特許番号６，３９２，６４５は、図形モデリングにおいて、フィーチャーベースのツリーデータ構造とダイレクトフェースのデータ構造間で変換する方法を記載している。
【０００５】
通常、ユーザーがソリッドな形の任意の様態を変更することによってフィーチャーベースのソリッドな形を変更したい場合、フィーチャーベースのパラメータを使ったモデリング技術では、例えば、変更に従ってその部分を改定するためにＣＧＳのフィーチャーツリー全体を調べるといったように、そのソリッドな形全体を再評価する。例えば、ユーザーが前述したテーブルのテーブル面を長くしたい場合、別のソリッドな形が変更前のテーブル面に隣接して付け加えられるのである。テーブル面の長さの増加分に相応する別のソリッドな形がそのように付け加えられ、ＣＳＧのヒストリーには別のステップが加えられる。代わりに、ユーザーはテーブル面の２Ｄプロファイルを変更し、プログラムがテーブルのソリッドな形を再評価するようにしても良い。
【０００６】
曲面を構成するには、曲面によって補間された接続された曲線のネットワークをセットアップする。曲面の形は曲面を変更することによって操作するか、あるいは、システムによっては基本的な曲線を変更することによって操作する。
【０００７】
既存のソリューション（ｓｏｌｕｔｉｏｎ）では、曲線ネットワークを編集するには三つの主要なアプローチがある。
【０００８】
関連性モデリングシステムでは、曲線は順番に作成され、モデル内で後から発生する曲線はモデル内で先にできた曲線から形状を参照する。関連性関係が曲線を更新し、アップストリームの曲線が変更される時に形状の接続性を確実なものにする。曲線が関係している順番は、関連性ツリーにおける曲線の位置によって暗示的に定義される。ツリーにおいて上部の曲線がダウンストリームの曲線をドライブする。アップストリームの曲線をダウンストリームの曲線に接続すると関連性する依存性ループが出来てしまうので、これは出来ない。通常、ユーザーが依存性ループを作成するのを避けるために、アップストリームの曲線が編集されている間ソフトウエアがダウンストリームの形状を自動的に隠し、その結果、ユーザーは変更のコンテキストを失うことになる。
【０００９】
関連性モデリングシステムによっては、曲線はローカルな関係を有する曲線ネットワークへとグループ化されているものもある。曲線ネットワークのグループ外のエンティティ（ｅｎｔｉｔｙ）に対する関係は上述した挙動に似ている。一つのネットワーク内の曲線は同時に編集することが可能だが、その曲線外の形状に関しては同様に制限がある。
【００１０】
非関連性のシステムでは、モデル内の曲線は明示的な順番も暗黙的な順番もない。曲線は、互いに対していかなる関係も有していないが、形状の接続性はある。曲線は関係を構築することなく、他の曲線上の重要なポイントに形状をスナップすることによって接続される。曲線を編集しても接続された曲線は自動的には更新されないが、隣接する曲線との接続は断たれる結果となる。全ての曲線は、形状の接続性を確実なものにするため、個別に変更されなければならない。
【００１１】
従って、当技術分野では、関連性モデリングシステムにおいて曲線ネットワークを編集するシステム及び方法の改善が望まれている。
【発明の開示】
【発明が解決しようとする課題】
【００１２】
上述したような従来の技術における問題を解決するため、本発明の主要な目的はデータ処理システムにおいてグラフィックスの編集をするための、改善されたシステム、方法及びコンピュータプログラム製品を提供することである。
【課題を解決するための手段】
【００１３】
好ましい実施例では、関係する曲線の内の接続されようとしている曲線のどちらよりもアップストリームにある関連性エンティティを自動的に定義することによって、この関係する曲線を編集するためのシステム、方法、及びコンピュータプログラム製品（ｃｏｍｐｕｔｅｒ  ｐｒｏｇｒａｍ  ｐｒｏｄｕｃｔ）を提供する。この接続するエンティティは「インターミディアリ」（ｉｎｔｅｒｍｅｄｉａｒｙ）と呼ばれる。曲線間を接続する場合、曲線が関連性ツリーのどこに現れるかにかかわらず、曲線の形状は、ツリーにおいて両曲線よりアッパーストリームに位置する共通のインターミディアリに依存する。この構造においては、両曲線はこのインターミディアリに関係するが、互いに接続していることに関する全てのプロパティはそのまま保持される。いずれかの曲線が編集されると、この編集はインターミディアリを介してリダイレクトされて両曲線が同時に変更され、ユーザーにとっては編集が双方向に伝搬したことになる。ユーザーは曲線が関係していた順番を追跡し続ける必要はない。
【００１４】
上記は、当業者が後述する発明の詳細な説明をよりよく理解出来るように、本発明の特徴及び技術的な効果についてかなり広範に概要を述べたものである。本発明の追加的な特徴及び効果は、以下、本発明の特許請求項の範囲の対象として記述する。当業者は、本発明と同様の目的を実行するために、他の構造を変更またはデザインすることを基礎として、開示される概念及び具体的な実施例を容易に使用することが出来ると理解するであろう。当業者はまた、そのような同等の構成は、広義の形態における本発明の精神及び範囲から逸脱するものではないということを認めるであろう。
【００１５】
下記の発明の詳細な説明に進む前に、本特許で使用している単語または語句の定義を説明することは有意義であろう。「含む」（ｉｎｃｌｕｄｅ）および「から成る」（ｃｏｍｐｒｉｓｅ）という用語およびそれらの派生語は、制限のない包含を意味する。「または」（ｏｒ）という用語は包含的であり、「および／または」（ａｎｄ／ｏｒ）を意味する。「に関連する」（ａｓｓｏｃｉａｔｅｄ  ｗｉｔｈ）または「と関連する」（ａｓｓｏｃｉａｔｅｄ  ｔｈｅｒｅｗｉｔｈ）という語句およびそれらの派生語は、〜を含む、〜内に含まれる、相互に接続する、〜を包含する、〜に包含される、〜に接続する、〜と接続する、〜と連結する、〜に連結する、〜と伝達できる、〜と提携する、インターリーブする、並列する、〜に隣接する、〜に境を接する、〜と境を接する、〜を有する、〜の性質を有する、等を意味する。「コントローラー」（ｃｏｎｔｒｏｌｌｅｒ）という用語は、少なくとも一つの操作を制御するデバイス、システム、またはそれらの部品の全てを意味し、そのようなデバイスが、ハードウェア、ファームウェア、ソフトウエアまたは少なくとも二つの同様なものを組み合わせたものに実装されているかを問わない。特定のコントローラーに関連する機能性は集中型でも分散型でもよく、ローカルかまたは遠隔かは問わないことに留意されたい。本特許では特定の単語および語句の定義を提供するが、当業者は、そのような定義は、ほとんどではないにしても多くの場合、そのように定義された単語および語句の従来の使用および今後の使用に当てはまることが理解出来るであろう。
【発明を実施するための最良の形態】
【００１６】
本特許においては、後述する図１乃至図３及び本発明の原理を記述するために用いられる様々な実施例は説明するためだけのものであり、本発明の範囲はこれらのみに限定して解釈されるべきではない。当業者は、本発明の原理は他の好適に構成されたいかなるものでも実行出来ることは理解出来る。本出願の多数の革新的な教えを、特にここに好ましい実施例を参照しながら説明する。
【００１７】
本特許においては、読者は当業者であり、当分野で使用される一般的な用語及び頭字語には精通しているとの前提に立っている。特に、フィーチャーツリーは、一つのグラフィック要素または複数のグラフィック要素に関係するフィーチャー、ステータス、またはイベントの順序に関するリストを含むことを記す。本特許で言う「アップストリーム」（ｕｐｓｔｒｅａｍ）とはフィーチャーツリーにおいて時系列的に早い位置にあるフィーチャー、ステータスまたはイベントのことであり、「ダウンストリーム」（ｄｏｗｎｓｔｒｅａｍ）とはフィーチャーツリーにおいて時系列的に遅い位置にあるフィーチャー、ステータスまたはイベントのことである。更に、「依存ツリー」（ｄｅｐｅｎｄｅｎｔ  ｔｒｅｅ）とはフィーチャーツリーにおいてダウンストリームにあるフィーチャー、ステータスまたはイベントのツリーのことである。遅いイベントは必然的に早いイベントに依存するからである。
【００１９】
好ましい実施例では、関係する曲線の内の接続されようとしている曲線のどちらよりもアップストリームにある関連性エンティティを自動的に定義することによって、この関係する曲線を編集するためのシステム、方法、及びコンピュータプログラム製品を提供する。この接続するエンティティは「インターミディアリ」（ｉｎｔｅｒｍｅｄｉａｒｙ）と呼ばれる。曲線間を接続する場合、曲線が関連性ツリーのどこに現れるかにかかわらず、曲線の形状は、ツリーにおいて両曲線よりアッパーストリームに位置する共通のインターミディアリに依存する。この構造においては、両曲線はこのインターミディアリに関係するが、互いに接続していることに関する全てのプロパティはそのまま保持される。いずれかの曲線が編集されると、この編集はインターミディアリを介してリダイレクトされて両曲線が同時に変更され、ユーザーにとっては編集が双方向に伝搬したことになる。ユーザーは曲線が関係していた順番を追跡し続ける必要はない。
【００２０】
更に、一つのセットの接続された曲線が更新されると、インターミディアリはインテリジェントに更新する。こののセットの曲線に関与している全てのインターミディアリは同時に解決され、（例えば平面性［ｐｌａｎａｒｉｔｙ］、剛性、形の編集に関する挙動といった）曲線のプロパティが確実に保たれるようにする。インターミディアリを同時に解決することによって、いかなる編集がなされた場合でも、曲線は全て確実に接続したままであるようにする。平面的な曲線が含まれ、ユーザーがその平面性を保ちたい場合には、これらは複雑で相互依存的なプロセスになることを記す。この場合、平面の位置が「フロート」（ｆｌｏａｔ）出来るような特別なソリューション（ｓｏｌｕｔｉｏｎ）を見出し、制約を考慮しても望ましいソリューションが達成可能なようにしなければならない。
【００２１】
双方向性伝搬の概念は、好ましい位置接続性から、例えば接線方向の連続性、直角の連続性、曲線の連続性といった、より高度な次元の関係へと拡張することが出来る。そのような場合のインターミディアリは、全ての関係する曲線が反応する適切な編集可能なプロパティを提供する。例えば、接線方向のインターミディアリは、接続された曲線が相互の接線方向を保つために使用する「方向」のプロパティを提供する。どれか一つの曲線の端の向きが変更されると、このインターミディアリの方向が変更される。全ての関係する曲線が更新されると、接線方向のプロパティを保つことになる。
【００２２】
図１は例として示す曲線上のポイント間の関係を示す。図２は図１のポイントに対応する、例として示す曲線及び曲面を示す。以下の実施例においては、図１及び図２を一緒に参照されたい。
【００２３】
図１では、四つのインターミディアリ（Ｉｎｔ  １乃至Ｉｎｔ  ４）が一つのセットの六つの曲線を接続している。矢印は曲面から曲線（ｆｒｏｍ  ｓｕｒｆａｃｅｓ  ｔｏ  ｃｕｒｖｅｓ）、曲線からインターメディアリへの方向性のある関係を描写している。ユーザーが曲線の端点、例えばＡ．ｅｎｄｐｏｉｎｔ．ｆｉｒｓｔを編集すると、好ましい実施例のシステムがＩｎｔ  １の全ての位置を実際に変更する。Ｉｎｔ  １の変更は、Ｃ．ｅｎｄｐｏｉｎｔ．ｓｅｃｏｎｄ及びＨ．ｅｎｄｐｏｉｎｔ．ｆｉｒｓｔに伝搬する。同様に、ユーザーはデザインを編集する自分のコンテキストに基づいて、Ｃ．ｅｎｄｐｏｉｎｔ．ｓｅｃｏｎｄまたはＨ．ｅｎｄｐｏｉｎｔ．ｆｉｒｓｔのいずれかを変更することが出来る。この時、Ｉｎｔ  １の全ての曲線は接続した状態に留まる。
【００２４】
インターミディアリは関係からその位置を導き出すことが出来る。Ｉｎｔ  ３は、曲線Ｂ上のパラメータが０．３２というところにあると定義される。この場合、Ｉｎｔ  ３は、曲線Ｅの端だけをドライブする。
【００２５】
好ましい実施例では関連性による、ヒストリーに基づいたフレームワークを使用し続けながら、その効果を達成する。曲線接続しようとすると、ヒストリーツリーにおける位置を保持し続ける。例えば、二つの曲線がヒストリーツリーの異なるポイントにあり、この曲線同士を接続する場合、「インターミディアリ」と呼ばれる共通のエンティティに依存し、曲線がインターミディアリを曲線間に補間する。インターミディアリは関連性グラフにおいて、いずれの曲線よりも早く発生する。
【００２６】
共通のインターミディアリを補間することによって、曲線は互いに確実に接続されたままになる。接続された曲線に対する位置の編集は直接的になされるのではなく、むしろ、インターミディアリを変更する。関連性が更新する間、両曲線はインターミディアリの特別な位置に補間し続け、互いに接続されたままでいるように見える。
【００２７】
このようにして、実用的な曲線の双方向性の編集技術は達成される。好ましい実施例によると、双方向性は、共通のインターミディアリへ回り道することによって導き出される。インターミディアリは、ユーザーが曲線を編集することによって変更されるか、または、関係し合うインターミディアリのグループを変更して望ましいように動かす解の一部として変更されるか、のいずれかによってのみ変更される。上記の制限は、インターミディアリは依存曲線の更新中には変更されず、従って環状依存性を防ぐことを意味する。
【００２８】
例えば、ユーザーは、接続されている曲線よりもヒストリー上後から発生した曲線を編集することが出来る。ダウンストリームの曲線（ｄｏｗｎｓｔｒｅａｍ  ｃｕｒｖｅ）を変更することによってインターミディアリの位置が変更され、アップストリームの曲線（ｕｐｓｔｒｅａｍ  ｃｕｒｖｅ）がそのインターミディアリの補間を更新する。事実上、変更されよダウンストリームの曲線に接続されたままでいる。
【００２９】
図３は好ましい実施例に従ったプロセスのフローチャートを図示する。この実施例では、ユーザーは、複数の曲線が既に定義されているグラフィックスの編集システム内で作業をしているという前提に立っている。これらのステップは当業者には周知のものであるからである。
【００３０】
このプロセスによると、ユーザーはまずグラフィックスのシステムを操作し、既存の二つの曲線が接続されているポイントを指定する（ステップ３１０）。ユーザーはまた、接続する曲線上に多数の初期ポイントを指定することが出来る。この場合、各々の曲線は共通の関連性ヒストリーツリーに関連している。この選択は自動システムで行うことも出来ることに留意されたい。
【００３１】
ユーザーの指定に対応して、システムはインターミディアリを作り（ステップ３１５）、選択された曲線のどれよりもアップストリーム（ｕｐｓｔｒｅａｍ）にある、関連性ヒストリーツリー上のポイントに置かれる（ステップ３２０）。
【００３２】
その後システムでは、ユーザーが手動で編集を始めても良いし（ステップ３２５）、または他のプロセスが自動的に編集しても良い。
【００３３】
一つの曲線が編集されると、システムはそれをインターミディアリが編集されたものとして扱い、その曲線ではなくインターミディアリを編集する（ステップ３３０）。この編集がなされると、その変更がヒストリーツリーにおけるダウンストリームの要素（ｄｏｗｎｓｔｒｅａｍ  ｅｌｅｍｅｎｔｓ）の全てを更新する（ステップ３３５）。そのようにして、接続された曲線は両方とも更新される（ステップ３４０）。
【００３４】
接続された曲線のどちらでも編集でき、それによって両曲線が更新されるので、実質的な効果としては、ヒストリーツリーにおいて曲線の編集を双方向に伝搬することが可能である。
【００３５】
当業者は、本発明の利用が適するデータ処理システムの全てのものの全体の構成及び作用は、説明を簡素かつ明瞭にするためにここに図示または記述していないことを理解するであろう。代わりに、本発明に特有のデータ処理システムの部分のみ、または本発明を理解する上で必要であるデータ処理システムの部分のみを図示及び記述している。データ処理システム１００の残りの構成及び作用は、当業者に知られている様々な現行の実施形態及び実行形態のいかなるものに準拠するものでも良い。
【００３６】
本発明は完全に機能するシステムとして記述されるが、当業者は、少なくとも本発明のメカニズムの一部分は、様々な形態で機械が使用出来る媒体内に含まれた命令の形で配布可能であり、本発明は実際に配布を実行するために使用される特別な命令のタイプまたは信号を保持する媒体にかかわらず、同じように適用されることに留意することが重要である。機械が使用出来る媒体の例としては、以下のものがある。例えばロム（ＲＯＭ）［ｒｅａｄ  ｏｎｌｙ  ｍｅｍｏｒｙ］またはイーイーピーロム（ＥＥＰＲＯＭ）［ｅｌｅｃｔｒｉｃａｌｌｙ  ｐｒｏｇｒａｍｍａｂｌｅ  ｒｅａｄ  ｏｎｌｙ  ｍｅｍｏｒｙ］といった不揮発性のハードコードされた媒体（ｈａｒｄ−ｃｏｄｅｄ  ｔｙｐｅ  ｍｅｄｉｕｍ）、フロッピーディスク、ハードディスクドライブ、シーディーロム（ＣＤ−ＲＯＭ）またはディーブィディー（ＤＶＤ）［ｄｉｇｉｔａｌ  ｖｅｒｓａｔｉｌｅ  ｄｉｓｋ］といったユーザーが書き込むことが出来る媒体、デジタルとアナログとの通信リンクといった送信タイプの媒体である。
【００３７】
本発明の例として示す実施形態は詳細に記述されているが、当業者はここに開示される本発明は、広義の形態における本発明の精神及び範囲から逸脱することなく、様々に変更、代替、変形、改良することが出来るということを理解するであろう。
【００３８】
本願の記述は、特別な要素、ステップまたは機能が特許請求項の範囲に含まれるべき必須の要素であることを示唆するものとして読まれるべきではない。特許を受ける対象となる範囲は、特許請求項の範囲によってのみ定義される。更に、分詞が続く「のための手段」という厳密な記載がない場合、いずれの請求項も米国法典第３５編１１２条第６段を行使する意図があるものではない。
【００３９】
本発明及び本発明による効果をより完全に理解するために、付随する図面と併せながら下記に説明をする。なお、図内の同じ数字は同じものを示す。
【図面の簡単な説明】
【００４０】
【図１】好ましい実施例に基づく、曲線に対する依存性を示すネットワークの例を図示している。
【図２】好ましい実施例に基づく曲線及び曲面のグラフィックス（ｃｕｒｖｅ  ａｎｄ  ｓｕｒｆａｃｅ  ｇｒａｐｈｉｃ）を図示している。
【図３】好ましい実施例に基づくプロセスのフローチャートである。
【図１】
0004464394.tif 000002
【図２】
0004464394.tif 000003
【図３】
0004464394.tif 000004