"パーツを設計するためのコンピュータ実行方法であって、表面および前記表面上にある基本曲線を提供するステップS1と、前記基本曲線C0を複数の基点BiのリストにサンプリングするステップS2と、垂直測地線SPCiの複数の点の格子を決定するステップS3であって、前記複数の点はそれぞれのレベルに属し、各レベルは前記基本曲線C0へのそれぞれの測地的距離に対応し、各垂直測地線SPCiは前記表面上にあり、それぞれの基点Biにおいて前記基本曲線C0から垂直に離れる、ステップと、前記複数の点の格子を使用することにより、前記表面上にある複数の平行測地線C1,...,Cnを計算するステップS4であって、各平行測地線はそれぞれのレベルに対応する、ステップS4と、前記パーツの表現を表示するステップS5とを含むことを特徴とする方法。前記複数の平行測地線を計算するステップS4は、各レベルの前記複数の点を補間するステップ、または各レベルの前記複数の点を適合させるステップを含むことを特徴とする請求項1に記載の方法。1つまたは複数のレベルを修正するステップをさらに含むことを特徴とする請求項1または2に記載の方法。前記複数の平行測地線を計算するステップS4は、折れ線を使って各レベルの前記複数の点を補間するステップであって、前記折れ線は前記レベルの点列上に形成される線分を含む、ステップを含み、前記1つまたは複数のレベルを修正するステップは、修正中の前記レベルの少なくとも1つの線分を破棄するステップを含むことを特徴とする請求項3に記載の方法。前記1つまたは複数のレベルを修正するステップは、修正中の前記レベルの線分に対応するベクトルを形成するステップであって、各ベクトルは始点および終点を有し、前記形成されたベクトルは、前記始点および前記終点にそれぞれ対応する前記基本曲線の2点により形成される対応する基底ベクトルを有する、ステップと、前記形成されたベクトルが、前記対応する基底ベクトルと同じ方向に向いているかどうかを評価するステップと、前記評価するステップの結果に基づいて、前記列の正規線分および非正規線分を判定するステップであって、非正規線分は、前記対応する基底ベクトルとは異なる方向に向いていると評価されるベクトルに対応する線分である、ステップと、修正中の前記レベルから前記非正規線分を破棄するステップとを含むことを特徴とする請求項4に記載の方法。前記1つまたは複数のレベルを修正するステップは、少なくとも1つの他のレベルの線分に対応するベクトルを形成するステップであって、前記形成された前記他のレベルのベクトルは対応する基底ベクトルを有する、ステップと、前記形成された前記他のレベルのベクトルが、前記対応する基底ベクトルと同じ方向に向いているかどうかを評価するステップと、前記他のレベルについて評価する前記ステップの結果に基づいて、修正中の前記レベルから正規線分を破棄するステップとをさらに含むことを特徴とする請求項5に記載の方法。前記1つまたは複数のレベルを修正するステップは、第1の多角形の分枝と第2の多角形の分枝との交わりを決定するステップであって、前記交わりは、前記第1の多角形の分枝と前記第2の多角形の分枝とをつなぐ最短の線である、ステップと、前記交わりの後の前記第1の多角形の分枝の全ての前記線分、および、前記交わりの前の前記第2の多角形の分枝の全ての前記線分を破棄するステップとをさらに含み、修正中の前記レベルの一連の正規線分である前記第1の多角形の分枝および前記第2の多角形の分枝の各々は、前に破棄した前記レベルの一連の線分により分けられることを特徴とする請求項5または6に記載の方法。前記修正するステップは、前記交わり上に位置し、好ましくは前記交わりの中央に位置するリーダー点を修正中の前記レベルに追加するステップをさらに含むことを特徴とする請求項7に記載の方法。前記基本曲線は鋭い交点を含み、前記修正するステップは、前記鋭い交点の片側にある前記基本曲線の2つの基点に対応する、前記レベルの2点の位置に応じて、修正中の前記レベルに少なくとも1つの点を追加するステップを含むことを特徴とする請求項3ないし8のいずれかに記載の方法。前記複数の点の格子は、動的に洗練されることを特徴とする請求項1ないし9のいずれかに記載の方法。前記パーツは、複合材パーツであることを特徴とする請求項1ないし10のいずれかに記載の方法。少なくとも1本の平行測地線は、鋭い交点を含むことを特徴とする請求項1ないし11のいずれかに記載の方法。表面および前記表面上にある基本曲線のパラメータ化を記憶するのに適したデータベースと、請求項1ないし12のいずれかに記載の方法でパーツを設計するのに適したグラフィカルユーザーインターフェイスとを備えることを特徴とするコンピュータ援用設計システム。コンピュータが実行するための命令を含むコンピュータプログラムであって、前記命令は、表面および前記表面上にある基本曲線のパラメータ化を記憶するのに適したデータベースを備えるコンピュータ援用設計システムに、請求項1ないし12のいずれかに記載の方法を実行させるための手段を含むことを特徴とするコンピュータプログラム。請求項14に記載のコンピュータプログラムが記録されていることを特徴とするコンピュータ可読記憶媒体。設計者に新たな設計オプションを提供することによりパーツの設計、とりわけ表面パーツの設計を改善する必要性がある。この目的は、パーツを設計するためのコンピュータ実行方法であって、表面、およびその表面上にある基本曲線を提供するステップと、その基本曲線を複数の基点のリストにサンプリングするステップと、垂直測地線の複数の点の格子を決定するステップであって、それらの複数の点はそれぞれのレベルに属し、各レベルは基本曲線へのそれぞれの測地的距離に対応し、各垂直測地線は表面上にあり、それぞれの基点において基本曲線から垂直に離れる、ステップと、その複数の点の格子を使用することにより表面上にある複数の平行測地線を計算するステップであって、各平行測地線はそれぞれのレベルに対応する、ステップと、パーツの表現を表示するステップとを含む、方法で達成される。好ましい実施形態は、下記の特徴のうちの1つまたは複数を含むことができる。-複数の平行測地線を計算するステップは、各レベルの複数の点を補間するステップ、または、各レベルの複数の点を適合させるステップを含むこと、-この方法はさらに、1つまたは複数のレベルを修正するステップを含むこと、-複数の平行測地線を計算するステップは、折れ線で各レベルの複数の点を補間するステップであって、その折れ線はそのレベルの点の列上に形成される線分を含む、ステップを含み、1つまたは複数のレベルを修正するステップは、修正中のレベルの少なくとも1つの線分を破棄するステップを含むこと、-1つまたは複数のレベルを修正するステップは、修正中のレベルの線分に対応するベクトルを形成するステップであって、各ベクトルは始点および終点を有し、形成されたベクトルは、その始点および終点にそれぞれ対応する基本曲線の2点により形成される対応する基底ベクトルを有する、ステップと、その形成されたベクトルが、対応する基底ベクトルと同じ方向に向いているかどうかを評価するステップと、その評価するステップの結果に基づいて、その列の正規線分および非正規線分を判定するステップであって、非正規線分は、対応する基底ベクトルとは異なる方向に向いていると評価されるベクトルに対応する線分である、ステップと、修正中のレベルから非正規線分を破棄するステップとを含むこと、-1つまたは複数のレベルを修正するステップはさらに、少なくとも1つの他のレベルの線分に対応するベクトルを形成するステップであって、その形成された他のレベルのベクトルは対応する基底ベクトルを有する、ステップと、その形成された他のレベルのベクトルが、対応する基底ベクトルと同じ方向に向いているかどうかを評価するステップと、他のレベルについて評価するステップの結果に基づいて、修正中のレベルから正規線分を破棄するステップとを含むこと、-1つまたは複数のレベルを修正するステップはさらに、第1の多角形の分枝と第2の多角形の分枝との交わりを決定するステップであって、その交わりは、第1の多角形の分枝と第2の多角形の分枝とをつなぐ最短の線である、ステップと、その交わりの後の第1の多角形の分枝の全ての線分、および、その交わりの前の第2の多角形の分枝の全ての線分を破棄するステップとを含み、各々が修正中のレベルの一連の正規線分である第1の多角形の分枝および第2の多角形の分枝は、前に破棄したそのレベルの一連の線分により分けられ、-その修正するステップはさらに、その交わり上に位置し、好ましくはその交わりの中央に位置するリーダー点を修正中のレベルに追加するステップを含むこと、-基本曲線は鋭い交点を含み、修正するステップは、その鋭い交点の一方の側にある基本曲線の2つの基点に対応する、修正中のレベルの2点の位置に応じて、その修正中のレベルに少なくとも1つの点を追加するステップを含むこと、-その複数の点の格子は動的に洗練されること、-そのパーツは複合材パーツであること、および-少なくとも1本の平行測地線は、鋭い交点を含むこと。また、この目的は、表面、およびその表面上にある基本曲線のパラメータ化を記憶するのに適したデータベースと、上記の方法でパーツを設計するのに適したグラフィカルユーザーインターフェイスとを備えるコンピュータ援用設計システムで達成される。この目的はまた、コンピュータが実行するための命令を含むコンピュータプログラムであって、その命令は、表面、およびその表面上にある基本曲線のパラメータ化を記憶するのに適したデータベースを備えるコンピュータ援用設計システムに上記の方法を実行させるための手段を含む、コンピュータプログラムで達成される。この目的はまた、上記のコンピュータプログラム上に記録されているコンピュータ可読記憶媒体で達成される。以下、列挙した添付図面を参照して、限定的ではない例として与えられる本発明の実施形態についての説明から、本発明のさらなる特徴および利点があらわれる。本発明によるコンピュータ実行方法は、パーツを設計することを目的とする。この方法は、表面、およびその表面上にある基本曲線を提供するステップを含む。この方法はまた、その基本曲線を複数の基点のリストにサンプリングするステップを含む。この方法はまた、垂直測地線の複数の点の格子を決定するステップを含む。その格子の複数の点は、それぞれのレベルにそれぞれ属する。格子の各レベルは、基本曲線へのそれぞれの測地的距離に対応する。各垂直測地線は表面上にあり、それぞれの基点において基本曲線から垂直に離れる。次に、この方法は、その複数の点の格子を使用することにより表面上にある複数の平行測地線を計算するステップを含む。各平行測地線はそれぞれのレベルに対応する。この方法により、そのパーツの表現が表示される。こうした方法は、パーツを設計するための新たな方法を提供する。本発明による方法は、パーツを設計することを目的とする。パーツという用語は概して、工業製品の機械コンポーネントを指す。ただし、本発明の範囲内で多くの改変形態が可能である。例えば、この方法は、パーツのアセンブリ、ことによると工業製品全体例えば飛行機の翼を設計するために使用することもできる。さらに、本発明は機械パーツを設計することを専ら意図するものではなく、コンピュータ設計が必要などの分野にも適用可能である。例えば、本発明はビデオゲームの分野に適用可能である。次に、図5の流れ図を参照してこの方法を詳述する。この方法は、表面、およびその表面上にある基本曲線を提供するステップS1を含む。表面を提供するステップは典型的には、表面の識別、および/または、パラメータ化などの形状の仕様を提供することを含む。同様に、基本曲線を提供するステップは典型的には、曲線の識別、および/または、パラメータ化などの形状の仕様を提供することを含む。そのような識別および仕様は、従来技術から知られている任意のものとすることができる。例えば、この表面は表面Sとして識別することができ、パラメータ化Su,v、u,v∈[a,b]×[c,d]により規定することができ、ここではa、b、c、およびdは実数である。ただし、他の仕様が代替的にまたは追加的に提供されてもよく、他の仕様はこの方法の範囲内に含まれる。他の仕様は、例えば後続の点を補間する面もしくは後続の円を補間する球などの仕様、または、その解が表面である最適化問題などの仕様を含む。この曲線は、基本曲線C0として識別することができる。この曲線は表面上にある。言い換えれば、ある点がこの曲線に属する場合、その点は表面にも属する。こうして基本曲線は、区間[t0,t1]から[a,b]×[c,d]へのp曲線により都合よく規定することができる。表面S上の基本曲線は、このp曲線に関連するCt=Sut,vtにより定義される区間[t0,t1]から3D空間R3への曲線である。ただし、代替的にまたは追加的に他の仕様を提供してもよく、他の仕様もこの方法の範囲内に含まれる。例えば、など、3D空間R3における直接のパラメータ化により基本曲線を規定することもできる。またこの方法はさらに、表面上に本来はなかった曲線をその表面上に投影し、それによりその表面上に位置する基本曲線を与えるステップを含むことができる。その場合、基本曲線は、初期曲線および投影の方向により規定することができる。大抵の場合、この基本曲線は表面上にある任意の曲線である。この基本曲線は、具体的には表面の測地線とすることができる。表面、およびその表面上にある基本曲線を提供するステップS1は、半自動的にまたは手動で実行することができる。この提供するステップS1は、設計者を関与させる場合がある。典型的には、および従来技術から知られているように、パーツを設計するとき、設計者はCADシステムに形状の仕様を提供することを要求されることが多い。そのような仕様は、表面、およびその表面上にある基本曲線を定義するためのパラメータを含み得る。あるいは、設計者は、CADシステムに既に存在するオブジェクトの領域のみを選択することができる。そのCADシステムは、その設計者がパラメータを意識することなく、その領域から表面および/または曲線のパラメータ化を計算することができる。あるいは、設計者は、CADシステムにより自身に提案される既定のリストから表面および/または曲線を選択することができる。この表面および/または基本曲線はまた、提携する設計者により提供するようにしてもよい。上記の方法は組み合わせて使用することができる。例えば、表面は、システムにおけるオブジェクトの領域を選択することにより提供することができ、基本曲線は、その表面上にp曲線を規定することにより提供することができる。上記に詳述した多くの代替から理解できるように、この方法を実行するシステムが、この方法の後続のステップを実行するための表面および基本曲線についての十分な情報を有する限り、表面およびその表面上にある基本曲線を提供するステップS1は多くの代替を包含する。この方法はまた、その基本曲線を複数の基点のリストにサンプリングするステップS2を含む。基本曲線を複数の基点のリストにサンプリングするステップは、その曲線の複数の点を作成し、それらの点の位置を決定することにある。この位置は、座標、もしくは、曲線のパラメータの値、または、この方法の後続のステップで必要とされる計算を行うための任意の都合のよい手段により決定することができる。この曲線は表面上にあるので、これらの基点も表面上にある。このサンプリングするステップは、自動的にもしくは半自動的に、または手動でさえ実行することができる。事実、このサンプリングするステップは、連続する2つの点の間の距離を定義する刻み幅に応じて実行することができる。この刻み幅は、例えば、曲線の長さ、および/または、計算しようとする平行測地線の数などの多様な基準に従って、コンピュータにより自動的に決定することができる。あるいは、この刻み幅は、手動で、または部分的に手動で決定することもできる。代替的にまたは付加的に、複数の点は設計者により手動で提供することができる。一例では、このサンプリングするステップは、基本曲線の局所的な曲率半径の値に従って実行される。曲率半径がより小さい場合、より多くの点が作成される。より多くの点を作成することにより、隣接する垂直測地線が基本曲線から離れるにつれて互いにますます離れるようになる場合に、容易に予期することが可能となる。事実、その場合には、あるレベル内の複数の点の間の距離が大きすぎ、満足のいく平行測地線を導かない。不要な計算を回避するため、このサンプリングするステップは、基本曲線から離れ、平行測地線に影響を及ぼす可能性のある表面の形を考慮しない。この方法はまた、垂直測地線の複数の点の格子を決定するステップS3を含む。したがって、その格子の複数の点は垂直測地線に属する。各垂直測地線は表面上にあり、それぞれの基点において基本曲線から垂直に離れる。従来技術から知られており、かつ図3に関して上述したように、それぞれの基点において基本曲線から離れる垂直測地線は、基本曲線に対して垂直な、この表面の測地線である。平行測地線は一般的に、基本曲線の片側で計算するべきである。この場合、全ての垂直測地線は基本曲線からその片側の方に向かって離れ得る。この片側で計算することにより、計算を節約することが可能になる。平行測地線を基本曲線の両側で計算しようとする場合、垂直測地線は同様に両側に離れ得る。この垂直測地線は、従来技術に従って生成することができる。典型的には、例えば基本曲線のパラメータ化を伴う微分方程式を解くことにより、または、基本曲線において、例えば基点の一方側にある他の2点に応じて基本曲線の方向を近似することにより、基本曲線に対して垂直な法線方向がそれぞれの基点において得られる。次いで、従来技術に関して説明した最小長または最小エネルギーの定義から導かれる微分方程式を積分することにより、その基点から離れる垂直測地線が得られる。この解決策は全ての場合に当てはまり、したがって実施するのが最も簡単である。垂直測地線はまた、例えば知られている形状の結果を伴う、他の手段により生成することができる。例えば、表面が球状の場合、従来技術に関して上述したように、測地線は、その表面と球の中心を通る面との交わりにより生成される。その場合、リソースを節約することができる。垂直測地線の近似は、複数の基点の少なくとも一部について生成することができる。パーツの設計は、必ずしも正確な測地平行線を必要とするとは限らない。正確な測地平行線が必要でない場合、垂直測地線の近似を生成することは、効率を著しく損なうことなくリソースを節約できるようにする。複数の点の格子を得ることができる限り、必ずしも実際の垂直測地線を生成するわけではない。具体的には、近似を使用する場合、垂直測地線は生成しない。垂直測地線を実際に生成する場合、それらの生成は独立しているので、生成を並列処理することができる。並列処理により、平行測地線をより高速に計算することが可能となる。同様に、垂直測地線を生成しない場合にも並列処理を使用することができる。格子の複数の点は、それぞれのレベルにそれぞれ属する。言い換えれば、この格子は、複数の点を含む各レベルを含む。定義によれば、測地垂直線は表面上にあるので、各レベルの複数の点はその表面上にある。各レベル内の点の数は、必ずしも同じではない。しかし、この方法の実施は一般的に、各レベル内に同一数の点をもたらす。これにより、平行測地線の計算がシステム化し、それにより一様な結果を導くことが可能となる。格子の各レベルは、基本曲線へのそれぞれの測地的距離に対応する。典型的には、設計者は、平行測地線を計算するための要件を使用中のシステムに提供することができる。例えば、設計者は、自らが望む平行測地線の数、および/または、それぞれの平行測地線間の距離の刻み幅を提供することができる。この刻み幅は可変とすることができ、例えば基本曲線からの距離とともに増加する。あるいは、設計者は、計算する必要がある平行測地線ごとに、基本曲線からのそれぞれの距離を一つずつ提供することができる。あるいは、例えばデフォルト値が使用される場合、上記のパラメータの少なくとも一部分を自動的に決定することができる。いずれにせよ、それぞれの平行測地線は、基本曲線から一定の測地的距離に位置することになる。格子の各レベルは基本曲線へのそれぞれの距離に対応し、そのため、各レベルは、計算しようとするそれぞれの平行測地線に帰属する。ただし、後で説明するように、これは格子の複数の点が基本曲線へのその正確な測地的距離にあることを意味するものではない。次に、この方法は、その複数の点の格子を使用することにより、表面上にある複数の平行測地線を計算するステップS4を含む。使用するという用語により、複数の平行測地線は、複数の点の格子に従って、すなわち格子の複数の点の位置に基づいて計算されることを意味する。上記に述べたように、各平行測地線はそれぞれのレベルに対応し、したがって基本曲線へのそれぞれの測地的距離に対応する。計算される平行測地線は、基本曲線とは異なる曲線である。複数の平行測地線を計算するために、複数の点の格子をどのように使用するのかについては、様々な例により後で詳述する。この方法はまた、パーツの表現を表示するステップS5を含む。この表現は、好ましくは3次元である。事実、パーツは3Dモデリングすることができ、したがって3D表現は表示することができる。3D表現により、あらゆる角度からパーツを見ることが可能となる。例えば、そのパーツは自らの軸のいずれかを中心に、または画面内の任意の軸を中心に処理し、回転させることができる。軸を中心に処理/回転させることは、3Dモデリングされていない2D図像をとりわけ除外する。ただし、2次元表示を代わりに行うこともできる。図5に、他の全てのステップの後に、この表示するステップS5を示す。しかし、この表示するステップS5を他のステップの後に示すことは、パーツの表現がこの方法の他のステップの後に表示されることを必ずしも意味しない。事実、パーツの表現は、この方法の他のステップを実行しながら表示し、その結果更新することができる。このことは、設計者が各ステップの結果を見ることを可能にする。あるいは、この表示するステップは、設計者からの要求があり次第実行することができる。図2~図4に関して詳述したように、単一の平行測地線を計算するための解決策は従来技術に存在する。測地線網またはオフセット曲線を計算するための解決策も存在する。一方、この方法は複数の測地平行線を計算することを提案する。したがって、この方法は、パーツを設計するための新たな方法を提供する。具体的には、複数の測地平行線を計算することは、複合材パーツを設計するときに有用であることが分かる。複合材パーツは、基本的には、一連の層で表面が整えられる表面パーツ例えば飛行機の尾部、翼、胴体、船殻、一部の自動車部品である。それぞれの層は、表面パーツの一部分を覆う複合材料のリボンである。複合繊維の層は、結果として得られるパーツの方向上の構造的剛性および強度を高めるような方法で慎重に方向づけられる。複合材の設計の技術は、剛性特性および強度特性を得るために、層の積層順序を定義することである。したがって、この層の積層順序を設計することは、複合材パーツを形成する様々な積層物層の境界の、基本面上の投影を表す、基本面上の平行測地線を都合よく大量に使用することができる。その結果として生じる形は、その上で全ての鋭い境界が支持面に関して平行になるステップ形状である。したがって、とりわけ複数の平行測地線を計算する設計オプションを追加し、それにより複合材パーツのより優れた設計を可能にすることにより、この方法はパーツ設計の技術を改善する。同じ基本曲線に対して複数の平行測地線を計算するための、従来技術の1つの修正形態は、図2~図4に関して記載したプロセスを必要に応じて何度でも繰り返すことであり得る。次々と各平行測地線を計算するために従来技術のアルゴリズムを適用することは、以下に詳述する効率の問題を提示する。以下に説明するように、これらの問題は本発明が提案する方法により解決される。最初の問題は、作成および更新の性能問題である。古典的な履歴ベースのCADシステムは、各基本曲線と、その基本曲線の全ての平行測地線との間の依存関係を保存する。したがって、設計者が、基本曲線の形、距離値、または、基本面などの入力パラメータを変更するとき、このシステムは全ての平行測地線を個別に再計算することにより形状を更新する。多くの平行測地線を計算する場合、計算に数時間かかることがあるので、この計算時間は対話型システムに適合しない。ワンショットの中に、対話型システムに適合しない計算時間を必要とする数十本の平行測地線が生成されるので、作成時間も極めて重要である。本発明の方法は、平行測地線が専ら複数の点の格子に基づいて計算されるのでこの問題を解決する。この複数の点の格子は、システムが記憶するのに軽量であり、この複数の点の格子を使用して平行測地線を同時に生成することができる。本発明が解決する第2の問題は、ロバスト性対性能を考慮することに関係する。従来技術のアルゴリズムの反復を用いて複数の平行測地線を計算することは、初期基本曲線を毎回再利用すること対、次の平行曲線の基本曲線として前の平行曲線を再利用することの問題を提起する。初期基本曲線からm本の測地平行線を計算することにある解決策は、例えば図6のアルゴリズムにより実施することができる。前の曲線を再利用することにある解決策は、例えば図7のアルゴリズムにより実施することができる。これら2つの手法は理論的な観点から等価であるにもかかわらず、ソフトウェア実装は等価ではない。図8および図9に示すように、初期基本曲線を再利用する場合、アルゴリズムが測地垂直線の重複部分を計算する。図8および図9の例は、図6の種類のアルゴリズムを使い、基本曲線C0から2本の平行測地線をどのように計算するのかを示している。図8は、第1の平行測地線C1を示しているのに対し、右端の部分は第2の平行測地線C2および点線で第1の平行測地線C1を示している。第1の平行C1を計算するために生成される垂直測地線SPC1i、および第2の平行C2を計算するために生成される垂直測地線SPC2iも示している。図8の手法はロバストだが、同じ計算を無駄に何度も行うので遅い。実際、図8から見てとることができるように、垂直測地線SPC2iの丸で囲った部分は、垂直測地線SPC1iを計算したときに既に計算した部分である。概して、測地平行線Ci番号iは、長さidのn本の垂直曲線の線分を必要とし、ただし、dは、各平行曲線を分ける距離値である。これは、垂直曲線の長さの累計nidを表す。次に、mを、計算する測地平行線の数であるとする。計算された垂直曲線の全長は12...mnd、すなわちである。それぞれの垂直測地線の計算は、計算されている曲線の長さに依拠する複雑さを有する。したがって、図8の手法を使用することは、深刻な速度の問題を提起する。本発明の方法は、複数の点の格子を決定した後で初めて平行測地線を計算するので、この速度の問題を解決する。実際、1つのステップで複数の点の格子を決定するS3のために、垂直測地線は最高1回しか生成することができない。典型的な複合材の設計は、表される繊維の数に対応する千本から2千本の曲線を伴う。これらの曲線は、10本から50本の平行測地線の束単位で配置される。上記から分かるように、複合材の設計および製造準備の核となる形状上の特徴は、平行測地線を計算することである。事実、各束は基本曲線に対する数十本の平行測地線を含み、結果として生じる千本から2千本の曲線をもたらす、数十束もの数の平行測地線を計算する必要があり得る。したがって、複数の平行測地線を計算する効率は、複合材パーツを設計するときに特に有用である。前の平行曲線を基本曲線として再利用することは、垂直曲線の新たな部分しか計算しないのでこの現象も回避する。都合の悪いことにこの方法は、不必要な振幅または鋭くとがった先など、以前の曲線の不完全さを増長する。したがって、そのような方法は、図6、図8および図9に示した方法よりも速いが、その質は不確実である。図10に示す、以前の曲線を再利用することのもう1つの欠点は、表面の内部境界曲線101を交差するとき、交点が不自然に急増することである。基本曲線C0は、内部境界曲線101と交差しない。第1の平行曲線C1は、境界曲線101と交差し、そのため交点102が作成され、第1の平行曲線C1を2つの連続する弧に分ける。したがって、第2の平行曲線C2を計算するために、第1の平行曲線C1の左端の弧から平行な左端の弧を、かつ第1の平行曲線C1の右端の弧から平行な右端の弧を分けて計算する必要がある。この平行な左端の弧は、境界曲線101と交差しない。この平行な右端の弧は境界曲線101と交差し、そのため第2の交点104が作成され、3つの連続する弧を含む第2の平行曲線C2をもたらす。第2の平行な右端の弧は、内部境界曲線とまたもや交差し、その後も同様である。したがって、こうした方法は、図10に点線の丸で囲ういくつもの余計な交点106を作成する。図11は、図10の余計な交点を含まない、最小数の交点を特徴とする正しい結果を示している。一般的に、kが、内部境界曲線と交差する平行曲線の数であることに留意し、図10の手法により作成される余計な交点の合計数は、となる。交点の最小数kと比べると、これはok2個の余計な交点が作成されることを意味する。一方の平行曲線にならって他方の平行曲線を計算しないので、本発明の方法はこの急増することおよび不完全さを増幅することだけでなく、余計な交点を作成することも回避する。したがって本発明の方法は、基本曲線から複数の平行測地線を計算する、リソースおよび計算の複雑さの観点から効率的な方法を提供する。そのおかげで、この方法はとりわけ複合材パーツを効率的に設計することを可能にする。これに基づき、この方法を使って設計されるパーツを複合材パーツとし、それによりこの方法を使用する利点を強調することができる。この方法は、グラフィカルユーザーインターフェイスを使用したユーザーとの対話により、CADシステム上で実行することができる。図12を参照して、例示のグラフィカルユーザーインターフェイスすなわちGUI100は、標準のメニューバー110、120、ならびに、下部のツールバー140およびサイドツールバー150を有する、典型的なCADライクなインターフェイスとすることができる。そのようなメニューおよびツールバーは、ユーザーが選択可能な1組のアイコンを含み、当技術分野で知られているように、それぞれのアイコンは1つもしくは複数の操作または機能に関連する。これらのアイコンの一部は、GUI100の中に表示するものなど、モデリングされる製品200または製品200のパーツを編集し、かつ/または、それらに取り組むのに適したソフトウェアツールに関連する。それらのソフトウェアツールは、ワークベンチにグループ化することができる。それぞれのワークベンチは、ソフトウェアツールのサブセットを含む。具体的には、そのワークベンチのうちの1つは、モデリングされる製品200の形状特徴を編集するのに適した編集ワークベンチである。操作において、設計者は例えばオブジェクト200のパーツをあらかじめ選択し、その後、適切なアイコンを選択することにより、操作例えば寸法、色などを変更することを開始し、または形状の制約を編集することができる。例えば、典型的なCAD操作は、画面上に表示される3Dモデリングされたオブジェクトの穿孔や折曲げをモデリングすることである。このGUIは、例えば表示される製品200に関係するデータ250を表示することができる。図12の例では、特徴ツリーとして表示されるデータ250、およびデータ250の3D表現200は、ブレーキキャリパおよびブレーキディスクを含むブレーキアセンブリに関する。このGUIはさらに、例えばオブジェクトの3D方向付けを容易にし、編集した製品の動作のシミュレーションをトリガするための様々な種類のグラフィックツール130、160を示し、または、表示された製品200の様々な属性を描画すことができる。複数の平行測地線を計算するステップS4は、各レベルの複数の点を補間するステップを含むことができる。あるレベル内の複数の点を補間することは、そのレベルの全ての点を通過する曲線を計算することを意味する。そのような曲線を計算することは、多項式補間など、従来技術から知られている任意の補間アルゴリズムを使用して達成することができる。得られた曲線が表面上に位置するよう、この補間は表面によって制約されてもよい。そのような制約は、非常に厳密な結果を得ることを可能にする。あるいは、この補間は表面により制約されなくてもよく、表面上にその結果を投影し、それによりその投影はそのレベルに対応する測地平行線を定義することができる。この方法を使って複数の平行測地線を計算するステップの一例について、簡潔に論じる。この例では、あるレベルの複数の点を、例えば以下ポリラインとも呼ぶ折れ線、すなわちそのレベルの複数の点の対をつなぐ一連のまっすぐな線分により補間することができる。例えば、基本曲線をサンプリングした後に得られる複数の点は、ある順序を示すことができる。この順序は、各レベル内で元に戻すことができる。そのように形成される各ポリラインから、対応する平行測地線を計算することができる。例えば、このポリラインは表面上に投影することができる。次に、所要の連続性を得るように、投影の結果を平滑化することができる。逆に、ポリラインを平滑化し、その後、表面上に投影することもできる。また、ポリラインは表面上に投影しなくてもよい。表面上に投影することは必須ではない。ポリラインの重要性は、この方法によって得られるパーツの設計をどのように使用するかすなわち設計者が何を望むのかによって決まる。したがって、計算される平行測地線は、ポリライン自体または平滑化した後のポリラインとすることができる。その場合、それらのポリラインは表面上に正確には位置しない。このことは、この方法の性能を著しく高速化する。概して、平行測地線を計算するためにポリラインに対して、またはポリラインの投影に対して平滑化プロセスを使用することは、工業設計の観点から許容可能な結果をもたらすと同時に、比較的高速である。あるいは、この計算するステップS4は、各レベルの複数の点を適合させるステップを含むことができる。複数の点を適合させることは、必ずしもそれらの点を通過しない曲線を使い、それらの点を近似することである。これは典型的には最適化問題、例えば様々な曲線群について1組のパラメータをテストし、最小2乗和を最小化することである。そのような適合させる方法は従来技術から知られている。適合させる方法を使用することは、リソースを節約できるようにする。事実、測地平行線はあるレベルの全ての点を通過する必要はないので、単純な曲線群を使って良好な結果を達成することができる。結果として、測地平行線を計算するために僅かなパラメータしか必要でない。当然ながら、これらのレベルの間で、および/または、レベル内の点の間で、補間することと適合させることとの組合せを使用することができる。例えば、遠くにある平行測地線では、より低い精度が要求され得る。遠くにある平行測地線は、それらの測地線の対応するレベルの、複数の点を適合させることによって得ることができる一方、より近くの平行測地線は補間によって得られる。そのような組合せは、より多くの設計意図をカバーするので、設計者に与えられる設計の可能性を高める。図2~図4に関して記載した従来技術のアルゴリズムは、汎用形状モデリングシステムとの関連で、単一の平行測地線を計算するように設計されている。したがって、結果として生じる曲線がさらなる設計において潜在的に再利用されるので、その形状モデリングプログラムは可能な限り厳密な結果を提供する。汎用モデリングとの関連で、精密であることは性能にとって好ましい。また、従来技術のアルゴリズムの最後のステップは、多項式曲線または有理式曲線典型的にはBスプライン曲線またはNURBS曲線によって複数の点Piを補間することにより、滑らかな曲線を提供することである。もう一度繰り返すと、汎用形状モデリングシステムとの関連で、この補間は精度指向である。その結果、計算される曲線は多くの多項または有理弧を必要とする可能性があり、そのことは、何千もの平行測地線を記憶/管理するための膨大なデータメモリを必要とする。したがって、この方法が提供し、かつ先に説明したリソース節約的解決策は、従来技術からの離脱である。事実、従来技術のアルゴリズムは、作成しようとする平行曲線の数によって計算量が増加するので、複数の平行測地線を計算するためには効率的に適用されない。本発明の方法は、多数の平行曲線の、高速かつ容易に更新可能な計算を可能にする、リソース節約を提案する。精度は下がる。しかし、多数の平行曲線がある場合、単一の平行曲線を計算するときの従来技術の精度と同じ高さの精度は必要ない。例えば複合材パーツを設計するとき、全ての繊維が基底の完全な平行測地線である必要はない。事実、どのみち工業プロセスが非精密性を引き起こすことになる。この方法はさらに、1つまたは複数のレベルを修正するステップを含むことができる。レベルを修正するステップは、特異点を訂正できるようにする。さらに、計算量の観点から容易に点を操作できるので、特異点の訂正は非常に効率的に行われる。したがって、この方法が解決する1つの問題は、特異点管理の性能問題である。特異点は、平行曲線の望ましくない特徴である。次に図13~図14の例を参照して、一種の特異点の問題について論じる。平行測地線計算の分野における古典的な特異点は、距離値よりも局所的に小さい、平行曲線の曲率半径である。図13の例は、図2~図4の従来技術のアルゴリズムを直接適用することが、どのようにそうした特異点をもたらすのかを示す。基本曲線C0から測地平行線136を計算するために、従来技術のアルゴリズムを使用する。理論解136は、この例の中で、平行曲線136上の2つの尖点132および1つの自己交差点134を特徴とする。この論理解は、工業目的では使えない。したがって、特異点を管理することが避けられない。特異点をどのように管理するのかが、平行曲線を計算するためのこの方法の有用性を決定する。事実、複合材との関連でロバスト性の問題の約80が、特異点の管理に失敗したことに起因する。従来技術において適用される簡単な解決策は、自己交差に起因するループを除去することにある。図14にその結果を示す。この解決策の第1の問題は、訂正した平行曲線C1上に鋭い交点142が作成されることである。第2の問題は、平行曲線群を計算するとき、特異点群が生じる可能性があることに関係する。これらの特異点を個別に管理することは性能問題も引き起こす。事実、上記に説明したように、汎用モデリングとの関連で、精密であることは性能にとって好ましい。このことは特異点の管理にも当てはまり、つまり高い曲率に起因する自己交差点が、曲線の交わりによって厳密に計算される。一方、この方法は、格子の1つまたは複数のレベルを修正することによって特異点を管理し、したがって、複数の点を操作するだけでよい。点は容易に処理することができるので、この方法は性能問題を解決する。あるレベルについてポリラインを形成する場合、そのポリラインの線分を操作することによりそのレベルを修正することができる。これは計算量の観点からも非常に軽量である。特異点は、大きなリソースを必要とする最終平行曲線の操作なしに、どんな場合でもレベル上で管理することができる。さらに、レベルを修正することは、望まれない特徴、例えば曲線のループを切り捨てる場合の図14の鋭い交点142などの望まれない鋭い交点を操作するとき、それらの望まれない特徴が最終平行曲線上に現れるリスクを回避する。Kellermannらの特許出願は、特異点を管理するための解決策を提供することも指摘しておく。この解決策は、結果として生じるオフセット曲線上に特異点が予期されるたびに基本曲線を平滑化することを必要とする。それ自体では、この平滑化することは、多項式曲線または有理式曲線を提供するためのサンプリングおよびアルゴリズムを伴う。次の平行曲線上の特異点を回避するために結果として生じる平行曲線を平滑化する必要があるので、この戦略は複合材との関連で性能問題に適合しない。さらに、この曲線を平滑化することおよび平行曲線を計算することの交互のプロセスは、平滑化の誤差を積み重ねることにより精度を完全に損なわせる。最後に、Kellermannらの解決策は、比較的平らな入力曲線上の微小な振幅を克服することを目的とする。U字型またはL字型の入力曲線を処理する問題は対処されていない。後で詳述するように、1つまたは複数のレベルを修正するステップは、複数の平行測地線を計算するステップS4の前に、または複数の平行測地線を計算するステップS4に付随して実行することができる。それは、後で行うこともできる。その場合、複数の訂正済みの平行測地線を再計算するステップが続いて起こることができる。このことは、特異点を訂正するかどうかを決定する前に、それらの特異点を観察する可能性を設計者に与える。複数の平行測地線を計算するステップが、折れ線を使って各レベルの複数の点を補間するステップを含み、その折れ線はそのレベルの点列上に形成される線分を含む場合にあると仮定する。次に、この1つまたは複数のレベルを修正するステップは、修正中のレベルの少なくとも1つの線分を破棄するステップを含むことができる。図13に戻ると、このステップは、例えばループに相当する全ての線分を破棄することにより達成することができる。平滑化した後、そのような解決策は図14の結果と同様の結果をもたらすことになる。しかし、ポリラインは、この方法により線分を破棄した後で初めて平滑化されることになるので、特異点を訂正することはより高速であり、望まれない鋭い交点142をもたらさない。ポリライン補間とは異なる別の補間アルゴリズムを使用する場合、格子の2点をつなぐ弧を破棄する原理は同じままである。適合させるアルゴリズムを使用する場合、および概して、特異点を訂正するために格子の点は破棄することができる。あるいは、または線分もしくは点を破棄することに加え、1つまたは複数のレベルを修正するステップは、修正中のレベルの線分または点の位置を修正するステップを含むことができる。この1つまたは複数のレベルを修正するステップは、そのレベル内に新たな線分または新たな点を挿入するステップを含むこともできる。図15を参照して、線分を破棄する方法の一例について説明する。図15には、基本曲線C0および点P1,..,Pnを含む1つのレベルを示している。1つまたは複数のレベルを修正するステップは、修正中のレベルの線分[Pi,Pi1]に対応するベクトルを形成するステップを含むことができる。図15に、これらのベクトルを矢印により示す。それぞれのベクトルは、始点Piと終点Pi1とを有する。形成されるベクトルは、その始点Piおよび終点Pi1にそれぞれ対応する、基本曲線C0の2点BiおよびBi1によって形成される対応する基底ベクトルを有する。1つまたは複数のレベルを修正するステップは、その形成されるベクトルが、対応する基底ベクトルと同じ方向に向いているかどうかを評価するステップも含むことができる。この1つまたは複数のレベルを修正するステップは、その評価するステップの結果に基づいて、その列の正規線分および非正規線分152を判定するステップを含むこともできる。非正規線分152とは、対応する基底ベクトルとは異なる方向に向いていると評価されるベクトルに対応する線分である。次いで、修正中のレベルからこの非正規線分を破棄することができる。一般的場合に適用することができる一例では、ステップS3において決定した複数の点の格子は、基本曲線C0の点別の記載、全ての平行測地線C1,...の点別の定義、および基本曲線のそれぞれの点Biと、各測地平行線上にあるBiの対応する点図15に示すレベルではPiとの間の結合を含む。それぞれの点別の平行測地線は、ポリラインとして見られる。特異点の管理は、それぞれのポリラインごとに行われる。説明したように、最初のステップは特異な線分を識別することである。定義によれば、ベクトルに対応する線分[Pi,Pi1]は、そのベクトルがその対応する基底ベクトルと同じ向きを有する場合、正規である。さもなければその線分は特異である。この評価を行うために内積を使用することができる。言い換えれば、線分[Pi,Pi1]は、が成立する場合は正規であり、が成立する場合は特異であり、ここでは表記U|Vは、ベクトルUとベクトルVとの内積である。2つのベクトルの角度を計算することなど、2つのベクトルが同じ方向を有するかどうかを評価する他の方法も使用することができる。特異な線分を定義する他の基準も使用することができる。例えば、負ではないにせよ内積が小さすぎる場合、その2つのベクトル間の角度はほぼ90°であり、対応する線分は特異とみなし、したがって破棄することができる。また、線分[Pi,Pi1]および[Pi1,Pi]が正規の場合、点Piは正規である。少なくとも1つの線分[Pi,Pi1]および[Pi1,Pi]が特異な場合、点Piは特異である。両方の線分[Pi,Pi1]および[Pi1,Pi]が特異な場合、1つまたは複数のレベルを修正するステップは、全ての特異点を破棄するステップまたは全ての点Piを破棄するステップを含むことができる。上記の例は、複数の点の格子が、どのように特異点を高速に訂正できるようにするのかを示す。実際に、計算はそのレベルの複数の点の位置しか使用しない。曲線のパラメータ化を使用する微分計算は必要ない。方向づけが行われていないベクトルに対応する線分を破棄した後、折れ線は裂け目を示す。そして、定義によれば、この多角形は多角形の分枝を含む。多角形の分枝とは、修正中のレベルの一連の正規線分である。多角形の分枝内の線分はつながれる。多角形の分枝は、前に破棄したそのレベルの一連の線分によって分けられる。1つまたは複数のレベルを修正するステップは、第1の多角形の分枝と第2の多角形の分枝との交わりを決定するステップをさらに含むことができる。その交わりは、例えばユークリッド的な意味で、第1の多角形の分枝と第2の多角形の分枝とをつなぐ最も短い線である。次いで、その交わりの後の第1の多角形の分枝の全ての線分、およびその交わりの前の第2の多角形の分枝の全ての線分を破棄することができる。交わりの前および後により、基点の順序に対応するレベル内の順序を指す。図16を参照して、第1の多角形の分枝162を第2の多角形の分枝164につなぐ最も短い線166は、第1の分枝162の末端、点Aにおいて、および第2の分枝64のそのもう一方の末端、点Bにおいて決定する。上記の交わりの定義により、点Aおよび点Bは、一般的な場合のレベルの点にないことに留意されたい。しかし、より速い速度を得るために、この交わりは、第1の分枝上のレベルの1点と第2の分枝上のレベルの1点とをつなぐ、最も短い線として一方で計算することができる。点Aの後にある全ての線分とは、第1の多角形の分枝上の点Aの後に位置する、その分枝の複数の点によって形成される全ての線分を意味する。その線分は、点Aがその上にある線分をことによると含む。同様に、点Bの前にある全ての線分とは、第2の多角形の分枝上の点Bの前に位置する、その分枝の複数の点によって形成される全ての線分を意味する。その線分は、点Bがその上にある線分をことによると含む。これらの他の線分を破棄するステップは、続いて起こる折れ線を平滑化するステップをより容易にする。このようにして、第1の分枝および第2の分枝が減らされる。修正するステップは、その交わり上に位置するリーダー点を修正中のレベルに追加するステップをさらに含むことができる。このリーダー点は、好ましくはその交わりの中央に位置する。このステップを図15~図18によって例示し、これらの図面は、上記に挙げた全てのオプションを含む1つまたは複数のレベルを修正するステップの、互いに異なるステップをそれぞれ示す。図15では、線分の局所的な特異/正規状態が知られる。次いで特異な線分を破棄し、図17に示すように、第1の分枝162および第2の分枝164の中の正規線分だけを含む、2本の分枝のポリラインを残す。これらの2本の分枝は、例えば以下の方法により、いわゆるリーダー点Lを計算することによりトリミングされる。まず、これらの2本の分枝間の最短距離を実現する、点Aおよび点Bの1対各分枝上に1点を探す。定義によれば、これらの2点を結ぶ線分は、ポリラインの各分枝に対して直角である。すると、図16に示すように、リーダー点Lはこの線分の中点とすることができ、すなわちが成立する。当然ながら、他の方法を実施することもできる。このリーダー点の計算は、2D平面に対立するものとして、3D空間内で実行されることを理解すべきである。3D空間内で計算するのは、ポリラインが平面ではない表面上に定義され、その結果、非平面オブジェクトだからである。交わりを決定した後、先に説明したように、リーダー点Lを越える分枝162および分枝164の線分を破棄する。図18は、最終的な分枝、すなわちリーダー点Lとともに、第1のトリミング済み分枝182および第2のトリミング済み分枝184を示している。先に言及したように、この特異点の管理は、複数の分枝からなる不連続なポリラインをもたらすことに留意されたい。図19~図21に示すように、このアルゴリズムは、測地平行線上に生じる一連の特異点を解決することができる。図19の曲線は、2つの離ればなれの特異点192および194を特徴とする。図20の曲線は、右端の特異点194を解決した後の結果である。図21の曲線は、左端の特異点192を解決した後の結果である。このアルゴリズムの観点からは、特異点が重なるかどうかは問題ではない。そのことを図22~図24の例を使って示す。図22の曲線は、2つの重なっている特異点222および224を特徴とする。図23の曲線は、第1の特異点224を解決した後の結果であり、図24の曲線は最終的な結果である。図25は、特異点の伝播についての典型的な状況を示している。上の方の曲線C0は、基本曲線である。図19~図21および図22~図24の例はそれぞれ、第3の曲線253および第5の曲線255である。この方法の先のオプションにより、これらの全ての特異点を解決することができる。1つまたは複数のレベルを修正するステップは、少なくとも1つの他のレベルの線分に対応するベクトルを形成するステップをさらに含むことができ、その形成される他のレベルのベクトルは、対応する基底ベクトルを有する。言い換えれば、あるレベルに対して行ってきたことを、今度は別のレベルに対して行う。次いで、その形成される他のレベルのベクトルが、対応する基底ベクトルと同じ方向に向いているかどうかを評価する。他のレベルについて評価するステップの結果に基づいて、修正中のレベルの正規線分を破棄することができる。ここでの考えは、まだ検出されていない特異点を検出するために、他のレベルについての評価の結果を使用することである。他のレベルに関する評価の結果を使用することは、特異点の駆除についてより高いロバスト性をもたらす。先に説明したように、単純な特異点は、特異な線分を破棄し、残りの多角形の分枝をトリミングすることによって解決される。逆に、複雑な特異点は、場合によっては一部の正規線分を、それらの線分が正規であるにもかかわらず、破棄しなければならないことによって特徴付けられる。複雑な特異点を訂正するための解決策は、伝播情報を活用する。事実、図25に関して先に示したように、特異点は、ある測地平行線から次の測地平行線への伝播現象である。特異点は、現れ、消えることができるが、概して何本かの連続する測地平行線を伴う。複雑な特異点は、正規の種類と特異な種類とを混ぜた扱いにくい交差する線分の集まりであり、オフセット距離値に対して非常に敏感である。ある測地平行線から次の測地平行線へと特異点に関する情報を再利用するために、本発明は伝播現象を活用する。目標は、破棄される可能性があることを意味する、疑わしい正規線分を識別することである。この情報は、ポリラインの分枝の交わりおよびトリミングを計算するアルゴリズムによって使用される。疑わしい線分を破棄することが解決へとつながる一方で、それらの線分を保持することがどんな解決策も一切提供しない状況が起こり得る。問題は、疑わしいの意味を定量化することである。以下の表は、それぞれが10本の線分を含む、4本の測地平行線に対して実行されるアルゴリズムの例を示す。それぞれの行は、先に説明したように評価することができる、平行測地線の線分の状態を捕獲する。初めに、線分の状態は正規表の中の値1または特異表の中の値0である。例えば、曲線番号2の線分番号8の状態は1正規である。このことは、以下の表を与える。この例では、最初のステップは、値が全て1である列を値2の列に変えることである以下の表の列1、5、6、および10参照。値2は、変更されない正規状態を捕獲し、つまり不変の正規状態を有する線分は、純粋に正規である疑わしくない。このことは、以下の表を与える。次のステップは、値2を隣接する値1に水平に伝播することである。言い換えれば、値1が値2に近い場合、その値1は値2に切り替えられる。この切り替えは、何も変更できなくなるまで反復して繰り返される。次の表は、この水平伝播の結果を示す。この考えは、純粋に正規である線分に隣接する正規線分は、それら自体疑わしくないということである。このことは、以下の表を与える。ここで、残りの値1は、値0によって水平に囲まれる。定義によれば、これらの値1は疑わしく、対応する線分を、それらの線分が正規であるにもかかわらず、破棄しなければならない可能性があることを意味する。先の表では、曲線番号2の線分番号3および8だけが疑わしい。当然ながら、上記の方式は一例に過ぎない。疑わしい線分を定義するために、他の方式を実行することもできる。例えば、値が全て1である列を値2の列に変える代わりに、より局所化された処理を適用することができる。例えば、i番目の線分が、n-2からn2までの少なくとも5本の連続した曲線にわたり正規である場合、i番目の列およびn番目の行の値を2に変えることができる。修正中のレベルの線分の疑わしい状態を評価するために別のレベルの線分の特異/正規状態の評価を使用する限り、特異点の駆除は強化される。決定した複数の点の格子のおかげで、より優れた駆除をこの方法によって実行することができる。この例は、従来技術の技法とは対照的に、複数の点の格子を使用することによって提供される能力を示す。線分を、疑わしいとして評価すると、それらの線分は破棄することができる。選択的に、および、以下に例示するように、さらなる評価を行うことができる。正規のポリラインおよび疑わしいポリラインは、その向きに応じてリスト内に順序付けられる。疑わしい状態は次のように使用し、それはつまり、正規の多角形の分枝すなわち正規線分からなる分枝と、疑わしい多角形の分枝すなわち疑わしい線分からなる分枝との間に交わりがない場合、その疑わしいポリラインは破棄することができ、図16に関して先に説明した交差方式によるシーケンスで、正規のポリラインが次のポリラインと交わる。図26~図31は、そのような方式を行う一例を示している。図26は、複雑な特異点を特徴とする一連の3本の連続する測地平行線を示している。図27に状態計算の結果を示す。短点線は特異であり、実線は正規であり、長点線は疑わしい。特異なポリラインを破棄することは、図28の形状をもたらす。図29~図31に、曲線番号1、2、および3を順番に解決することを示す。曲線3の疑わしいポリライン図30および図31の横線が結果に含まれる一方、曲線1の疑わしいポリラインは破棄されている図29ことに留意されたい。特異な線分または疑わしい線分を、上記に示した例のいずれかまたは組合せによって破棄している場合、計算しようとするそれぞれの平行測地線に対し、連続する多角形の分枝およびことによると分枝間のリーダー点によって形成されるポリラインが対応する。次いで、先に論じた結果を提供するために、このポリラインを平滑化することができる。一例では、それぞれの分枝が平滑化される。この平滑化のアルゴリズムは、複合材の状況のおかげで定義される許容範囲に従って緩めることができる。この許容範囲を所与として、この平滑化アルゴリズムは通常の補間アルゴリズムほど厳密である必要はない。ポリライン分枝の終点だけ、正確である必要がある。その結果、この平滑化するステップはより高速であり、結果として生じる少ないBスプラインまたはNURBS曲線をもたらす。図32の例では、平滑化された分枝182および184がつながれている。これらの平滑化された分枝をつなぐ、リーダー点Lの近くにある曲線の部分322は、平滑化アルゴリズムにより計算されない、つまり接続曲線322は意図的に計算される。図33に示す典型的な解決策は、以下のように定義される3次多項式のベジェ円弧322である。制御多角形の終点GおよびHは、つなぐ分枝の終点である。残りの2つの制御点KおよびRは、これらの分枝の接線方向332および334に対してそれぞれ同一線上にある。これらの点は、複合材の許容範囲に従って、多項式のベジェ円弧322の中点がリーダー点Lに十分近いように調節される。従来技術の解決策とは対照的に、接続曲線322はリーダー点を通過せず、どんな鋭い交点も特徴としないことに留意されたい。この例は、正確な結果を提供する。別の例では、全ての分枝は、連続したポリラインを形成するよう、もしあればリーダー点に直線により接続される。次いで、そのポリラインをワンショットで平滑化する。このようにすることは、速い結果を与える。上記の方式は、基本曲線がU字型、または、U字型の領域を示す場合にとりわけ現れる特異点を訂正するために実行される。基本曲線が鋭い交点を含む場合にも、問題が発生する場合がある。その問題が図34に例示されていて、図34は、基本曲線C0が鋭い交点342および344を有する状態の、平行測地線に対応する1つのレベルを示している。複合材との関連で、入力基本曲線C0は、鋭い交点342、344を特徴とすることが多い。理論解は、不連続かつことによると自己交差する平行曲線C1である。従来技術のCADシステムは、弧もしくは測地円、または、トリミングされた測地的な外挿により、不連続な平行曲線をつなぐオプションを提供する。汎用形状モデリングシステムに必要な内在精度によって統制されるどちらの解決策も、コンピュータの時間を多く必要とする。したがって、基本曲線が鋭い交点を含む場合、より時間のかからない専用の処理が必要である。例えば、この修正するステップは、鋭い交点342の両側にある基本曲線C0の不図示の2つの基点に対応する、修正中のレベルの2点346の位置に応じて、その修正中のレベルに少なくとも1つの点、好ましくは図35に示すようにリーダー点Lを追加するステップを含むことができる。このリーダー点Lは、鋭い交点342によって提起される不連続問題を訂正するために計算する。リーダー点Lは、図16に関して上述したように計算することができる。この目的を達成するために、その間にリーダー点Lを計算しようとする、ポリラインの分枝の末端線分を伸ばすことができ、これにより交わりを計算することができる。あるいは、このリーダー点は、それぞれの分枝の末端を定義するレベルの点346の位置に従って計算することができる。鋭い交点344によって提起される自己交差問題は、図15~図18に関して提示した特異点訂正方法によって訂正することができる。したがって、鋭い交点の問題は、その解決策について先に説明した特異点の問題へと転換される。図35に示すように、この方法は、ポリラインの凸側に人為的な特異線分を追加し、凹側の分枝間にリーダー点を追加するステップを含むことができる。このようにして、不連続な平行測地線は問題ではなく、不連続な平行測地線は既存の特異点管理アルゴリズムによって処理される。図36は、分枝をつなぎ平滑化した後の、図35に示す形状から生じる平行曲線C1の形を示している。少なくとも1本の平行測地線が鋭い交点を含むよう、オプションをユーザーに提供することもできる。このオプションを提供することは、様々な設計意図の適用範囲を拡大する。これまでのところ、本発明は、いかなる場合でも結果として生じる滑らかな曲線を与える。しかし、結果として生じる曲線における鋭い交点により、設計意図がより良く捕獲されることもあり得る。この場合、例えばシステムは、結果として生じる鋭い交点としてリーダー点を使用して正規の分枝をつなぐことができる。鋭い交点を作成するときを決定するためにシステムが適用する基準は、多項式曲線を作成した場合、曲率半径の小さな大きさに基づく。工業試験が適切な閾値を提供する。このオプションのもう1つの利点は、データの節約であり、それは鋭い交点をモデリングすることが、小半径を特徴とする多項式または有理式曲線よりも少ないデータメモリを必要とするからである。するとこの方法の結果は、小さな曲率半径を決して特徴としない、平行測地線を特徴とすることができる。結果として生じる曲線は、滑らかであり曲率半径が全く小さすぎることがないか、または潜在的に小さな曲率半径が鋭い交点によって置換される。複数の点の格子は、動的に洗練させることができる。動的に洗練させることができることは、その格子の様々な点の間の距離を最適化できるようにする。基本曲線は、古典的にステップ長および曲率に従ってサンプリングされる。このサンプリングが、垂直測地線の全体にわたって一定のままである理由はない。このサンプリングは、垂直測地線の横のフローに依拠する。サンプリングの密度を節約するために、この動的サンプリングアルゴリズムは、互いに離れている連続する2本の垂直測地線の間に追加の垂直測地線を挿入し、これらの追加した曲線を使用して格子を洗練させる。このようにして格子を洗練させることを、図37~図43に関する例を使って示す。この例では、表面Sおよび基本曲線C0は、図37にあるようなものである。図38に示すように垂直測地線を生成した後、最初の3本の垂直測地線386は初期基点を分ける距離を保存し、そのためサンプリングの密度を維持する。言い換えれば、それらの基点間の刻み幅は、例えばこの格子の最高レベルに対応することができる、図38に丸で囲む、垂直測地線の末端の複数の点382の間で取得される。当然ながら、距離を保存するまたは刻み幅が取得されるにより、この刻み幅が所定の閾値を超えて大きくされることはなく、この刻み幅が必ずしも全く同じままではないことを意味する。とりわけ、刻み幅が小さくなることは精度に悪影響を与えないので、刻み幅は小さくなってもよい。図39に示すように、この例では、同じく生成される4番目の垂直測地線392が、表面Sの形が原因で前の垂直測地線386から離れる。この偏差は後で定義される閾値よりも大きいため、このアルゴリズムは、最後の垂直測地線392の前に追加の垂直測地線402を挿入することができ、垂直測地線402を挿入することは、図40に示すように、垂直測地線のもう一方の末端のサンプリングの密度を元に戻す。図40に丸で囲む、垂直測地線の末端の複数の点382の間で、サンプリングの密度が元に戻されていることに留意されたい。図41に、結果として生じる垂直測地線の組を示す。サンプリングの密度を保つために挿入される3本の曲線402を含む、9本の曲線が作成される。図42に、どんな動的なサンプリングもなしに、結果として生じる測地垂直線網を示す。この例の基本曲線C0および表面Sとともに、複数の点382を使用することにより平行測地線Cnを計算することは、図43に示すように、平行曲線Cnの波状の形をもたらす。所望の場合、動的な洗練プロセスによりこの波状の形を回避することができる。複数の点の格子を動的に洗練させるためのアルゴリズムの一例を以下に示す。このアルゴリズムは、公称のサンプリングによって単純なループを実行し、必要な場合に洗練プロシージャを呼び出す。この洗練プロシージャは、密度の基準が正しくなるまで必要に応じて何度でも反復適用される。ui1=uihを意味する、基本曲線のサンプリングを定義するステップ長hを所与として、密度の閾値は、ε:=λhによって定義され、ただしλ≧1は内部/固定パラメータである。工業用パーツに対して行われる試験が、パラメータλの実際値を定義する。連続する2本の測地垂直線の間の距離がεよりも大きい場合、何らかの洗練が必要である。関数Distは、この距離を計算する。関数GeoPerpwは、パラメータ値wにおいて、基本曲線に対する測地垂直線を作成するまたは取得する。このことは次式を与える。P1:=GeoPerpu1Fori:=2tondobeginPi:=GeoPerpuidistPi1,Pi≧εが成立する場合、Refineui1,uiEndforこの洗練プロシージャは、細分するパラメータ間隔を覚えておくために内部スタックを使用することができる。入力パラメータ間隔は、[s,t]である。間隔は無制限に洗練させることはできないので、次のようにもう1つの閾値が定義される。kが、ある間隔を細分可能な最高回数であることに留意し、hmin:=2khを最小間隔長と仮定する。λのように、kは、その値が工業用パーツに対して行われる試験によって定義される内部/固定パラメータである。このことは次式を与える。Refines,tPushs,tスタックが空ではない間dobeginPops,t|t-s|≧hminが成立する場合、Q:=GeoPerprdistQ,GeoPerpt≧εが成立する場合、Pushr,tdistGeoPerps,Q≧εが成立する場合、Pushs,rEndifEndwhile図44~図47を参照して、上記に記載したオプションを含むこの方法の一例を示す。与えられるS1、入力形状オブジェクト442は、表面、その表面上にある基本曲線C0、および距離値である。その後、最初のステップは、その基本曲線C0を、n個の基点BiのリストにサンプリングするステップS2である。先に説明したように、この最初のサンプリングするステップは、基本曲線C0の局所的な曲率半径の値に従って行うことができる。このサンプリングするステップは、それぞれの点Biにおいて、基本曲線に対する垂直方向Diを計算するステップを含むことができる。図45に、このサンプリングするステップS2を示す。次のステップは、BiおよびDiの初期点/方向から始めて、n回の点方向測地計算を開始することにより、複数の点の格子を決定するステップS3である。このステップは、上記に記載した動的サンプリングアルゴリズムによって実行される。このステップは、n本またはそれ以上のサンプリングされた垂直測地線SPCiをもたらす。図46に、この複数の点の格子を決定するステップS3を示す。サンプリングされた全ての垂直測地線は、複数の点の格子とみなされる。複数の平行測地線を計算するS4ために、m本のサンプリングされた平行曲線SPLCiを与える目的で、この点の格子をまず転置する。次のステップは、もしあれば、この複数の点の格子上の特異点を駆除することである。一番最後のステップは、形状モデリングシステムによって処理できるオブジェクトとして測地平行線Ciを提供するために、そのサンプリングした平行曲線を平滑化することである。これらの計算は、独立しているので並列処理することができる。これらの平行曲線にとって関連するp曲線が要求される場合、この平滑化プロセスでは表面が必要である。さもなければ、表面は不要である。図47に、複数の平行測地線を計算するステップS4を示す。一例では、この方法は、複合材の設計との関連で何千もの平行測地線を生成する全体的なプロセスを考慮に入れる。基本曲線を所与として、その基本曲線から計算する平行測地線の数が与えられ、かつそれらの平行測地線を分ける距離値が与えられると、このアルゴリズムは、従来技術のアルゴリズムのように基本曲線をサンプリングすることによって開始する。次いで、このアルゴリズムは全ての垂直測地線を計算する。それぞれの垂直測地線は、将来の全ての平行測地線に重なるのに足りるほど長い。この計算は、数値積分の結果として生じる複数の点の格子として、垂直測地線をもたらす。もしあれば、特異点の管理はこの複数の点の格子に対して行われる。明らかに、ある曲線の特異点をその曲線の多角形補間によって管理することは近似だが、この近似は複合材との関連では許容できる。きれいな格子に由来する複数の点は、曲線を提供するために補間されるのではなく平滑化される。データメモリ目的で、弧の数を最小限に抑えるためにこの平滑化プロセスは調整される。もう一度繰り返すと、滑らかな曲線は理論上の平行測地線の近似だが、この近似は複合材の観点からは許容できる。複合材の状況を関与させることにより、この方法は不必要な制約を緩和させることができる。そうすることにより、およびロバスト性を保ち、本発明は計算時間およびデータメモリを節約する。mが、計算する測地平行線の数であることに留意し、力まかせのアルゴリズムは、測地平行線の計算をm回再利用し、om2の計算時間をもたらす単一のループである。本発明は、シングルプロセッサのコンピュータで使用する場合、omのアルゴリズムである。マルチプロセッサのコンピュータで使用する場合、このアルゴリズムは、部分線形またはそれどころか一定とすることができる。この方法は、全ての平行測地線を初期基本曲線から計算するのでロバスト性を保つ。前の平行測地線を再利用することにより、不完全さが増幅することを回避する。それぞれの垂直測地線をワンショットで計算するので性能も保ち、ワンショットで計算することは、重なる線分を計算することを回避する。これは、平行測地線の数およびそれらの距離がアプリオリに知られているので可能である。このことは、からmndに至るまで計算される垂直測地線の全長をもたらす。垂直測地線は互いに独立しているので、垂直測地線の計算は、マルチコア機能または並列計算機能によって加速することができる。特異点の管理は、複数の点の格子によって定義される折れ線に対して行われ、この特異点の管理は、厳密な特異点の管理よりも速い。従来の特異点の管理は、ちなみに常に鋭い交点を特徴とする、厳密解を提供するために、自己交差点およびその自己交差点に対する接ベクトルを厳密に計算する。複合材との関連ではこれらの計算は不要であり、不要であることは計算時間を短縮する。さらに、それぞれの特異な部分の形は、いわゆるリーダー点によって統制される。実験は、リーダー点の安定性が、特異点の近傍におけて正規の平行測地線網を提供することを示している。この方法の特徴は、特異点の管理に対して、および基本曲線上の鋭い交点に対して同じアルゴリズムを使用し、それによりプログラミングを節約し、高信頼ソフトウェアを生み出せることである。先に言及したように、複合材の設計の精度要件は、平滑化プロセスがより少ない数の弧を作成し、そのようにしてより軽量のデータメモリをもたらすことを可能にする。これは、実際の製造プロセスが、コンピュータによって提供される完全な精度を活用できない人的操作を伴うからである。そのため、過度に厳密な解を得るために計算時間を費やす理由はない。さらに、結果として生じる少ない曲線は、主に曲線の交わりおよびトリミングをさらに処理する性能を改善する。これまでのところ、この方法を、基本曲線から複数の平行測地線を計算するための応用例に関して主に説明してきた。しかしこの方法は、前に計算した平行測地線が示す可能性のある、特異点を訂正するために適用することもできる。実際に一例では、この方法は、複数の測地平行線が既に計算され、上記に記載したような特異点、例えばループ、鋭い交点例えばそのようなループをトリミングする場合、または自己交差を示す場合に適用することができる。例えば、第1の設計者が、従来技術のアルゴリズムを使用してこれらの曲線を計算している場合がある。または第1の設計者は、先に記載した任意の特異点訂正オプションを使用せず、複数の平行測地線を計算している可能性もある。その場合、第2の設計者または第1の設計者自身が、これらの特異点を訂正するためにこの方法を適用することができる。最初のステップは、表面およびその表面上にある基本曲線を提供することである。この表面は、訂正されていない複数の平行測地線がその上にある表面であり、この基本曲線は、特異点を示さない、訂正されていない曲線のうちの1本、または従来技術の技法を適用することによりその特異点が訂正済みである、訂正されていない曲線のうちの1本から得られる曲線である。当然ながら、訂正されていない曲線を計算するための基本曲線として第1の設計者が使用した曲線が保存される場合、その曲線を使用することができる。第2のステップは、そうして提供される基本曲線を、先に説明したのと同じ方法で複数の点のリストにサンプリングすることにある。第3のステップは、垂直測地線の複数の点の格子を決定することである。これらの点は、垂直測地線を生成し、生成した垂直測地線と訂正されていない曲線との交わりを決定することにより得ることができる。レベルはしかるべく定義される。次いで、先に広く詳述したように、その複数の点の格子を処理して特異点を訂正した後、訂正済みの複数の平行測地線を計算することができる。その訂正済みの部分は表示することができる。したがって、この方法は、前に計算された平行曲線上の特異点を訂正できるようにする。上記の方法は、CAD/CAM/CAEシステム、または変化する視点からのオブジェクトのビューを表示するために使用される任意のシステムによって定義できる、任意の構成のどんなオブジェクトにも適用可能であることを理解すべきである。本発明は、デジタル電子回路により、またはコンピュータハードウェア、ファームウェア、ソフトウェア、もしくはそれらの組合せによって実装することができる。本発明の機器は、プログラム可能なプロセッサが実行するための、機械可読記憶デバイスに実体的に具現化されるコンピュータプログラム製品によって実装することができ、本発明の方法ステップは、入力データに対して操作を行い、出力を生成することにより、本発明の諸機能を実行するための命令プログラムを実行する、プログラム可能なプロセッサによって行うことができる。この方法は、CADシステムを使って実行することができる。そのコンピュータ援用設計システムは、文脈自由文法のシード構造を使用することによってモデリングされるパーツを記憶するデータベースと、その文法の1組の規則と、少なくとも2つの設計上の特徴であって、それぞれの設計上の特徴は、その組の少なくとも1つの規則によって定義される、少なくとも2つの設計上の特徴と、そのシード構造および1組の規則によって決定されるそれらの設計上の特徴間の優先順位とを含むことができ、このシステムは、上記に詳述した方法を実行するのに適したグラフィカルユーザーインターフェイスをさらに含むことができる。コンピュータプログラムは、コンピュータによって実行するための命令を含むことができ、それらの命令は、コンピュータ援用設計システムのコンピュータ援用設計システムが備えるグラフィカルユーザーインターフェイスを使ってこの方法を実行するための手段を含む。このシステムは、文脈自由文法のシード構造によってモデリングされるパーツを記憶するデータベースと、その文法の1組の規則と、少なくとも2つの設計上の特徴であって、それぞれの設計上の特徴は、その組の少なくとも1つの規則によって定義される、少なくとも2つの設計上の特徴と、そのシード構造および1組の規則によって決定されるそれらの設計上の特徴間の優先順位とをさらに含む。そのようなプログラムは、本発明の方法を実行するのに適したようになるよう、CADシステムを更新するために使用することができる。従来技術から知られているように、そのようなプログラムはコンピュータ可読記憶媒体に記録することができる。本発明は、データ記憶システム、少なくとも1つの入力デバイス、および少なくとも1つの出力デバイスとの間でデータ/命令をやり取りするために結合される少なくとも1個のプログラム可能なプロセッサを含む、プログラム可能なシステム上で実行可能な、1つまたは複数のコンピュータプログラムによって有利に実装することができる。そのアプリケーションプログラムは、高水準手続きプログラミング言語もしくは高水準オブジェクト指向プログラミング言語、または所望の場合はアセンブリ言語もしくは機械語によって実装することができ、どんな場合でも、その言語はコンパイラ型言語またはインタープリタ型言語とすることができる。図48は、クライアントコンピュータシステム、例えばユーザーのワークステーションの一例を示している。このクライアントコンピュータは、内部通信バス300に接続されるCPU中央処理装置301、同じくこのバスに接続されるRAMランダムアクセスメモリ307を含む。このクライアントコンピュータには、バスに接続されるビデオランダムアクセスメモリ310に関連する、GPUグラフィック処理ユニット311がさらに設けられる。ビデオRAM310は、フレームバッファとしても当技術分野で知られている。大容量記憶装置コントローラ302は、ハードドライブ303などのマスメモリデバイスへのアクセスを管理する。コンピュータプログラム命令およびデータを有形に実施するのに適したマスメモリデバイスには、例としてEPROM、EEPROM、フラッシュメモリデバイスなどの半導体メモリデバイス、内蔵ハードディスクやリムーバブルディスクなどの磁気ディスク、光磁気ディスク、およびCD-ROMディスク304が含まれる、あらゆる形態の不揮発性メモリが含まれる。上記のいずれも、専用に設計されるASIC特定用途向け集積回路により補足し、または専用に設計されるASICに組み込むことができる。ネットワークアダプタ305は、ネットワーク306へのアクセスを管理する。このクライアントコンピュータは、カーソル制御デバイス、キーボード等のハプティックデバイス309も含むことができる。カーソル制御デバイスは、ディスプレイ308上の任意の所望の位置にユーザーがカーソルを選択的に位置づけることを可能にするために、クライアントコンピュータ内で使用される。さらに、このカーソル制御デバイスは、ユーザーが様々なコマンドを選択し、制御信号を入力することを可能にする。このカーソル制御デバイスは、システムへの入力制御信号のための一部の信号生成デバイスを含む。典型的には、カーソル制御デバイスはマウスとし、信号を生成するためにマウスのボタンが使用される。本発明の複数の例について説明してきた。本発明の趣旨および範囲から逸脱することなく、様々な修正を加え得ることが理解される。したがって、他の実装形態も特許請求の範囲に記載の範囲に含まれる。例えば、本発明の方法は、基本曲線を提供するステップと、その基本曲線をサンプリングする別のステップとを使って主に説明してきた。しかし、複数の点の格子を計算するのに十分な仕様が提供される限り、複数の点のサンプルを代わりに直接提供することが可能である。"