(57)【特許請求の範囲】
【請求項１】
３Ｄモデル化オブジェクトを設計するためのコンピューター実行方法であって、
細分割表面を制御する基本メッシュを提供するステップ（Ｓ１０）であって、前記細分割表面が前記３Ｄモデル化オブジェクトをモデル化する、ステップと、
前記基本メッシュの接続されたエッジからなるポリラインを提供するステップ（Ｓ２０）と、
前記ポリラインの先端を含む前記ポリラインの平滑部と、前記平滑部の上流にある前記ポリラインの鋭部とを定義するステップ（Ｓ３０）と、
前記ポリラインに隣接する前記メッシュの面を、前記細分割表面に近似するパラメトリックなパッチに変換する変換ステップ（Ｓ４０）であって、前記パッチは前記ポリラインの前記鋭部にわたってＧ０接続を有し、前記パッチは前記ポリラインの前記平滑部にわたってＧｉ接続を有し、ｉが１以上の整数である、ステップと
を含み、
前記平滑部を定義するステップが、平滑点を前記ポリラインに定義するステップであって、前記平滑部が前記ポリラインの前記平滑点と前記先端とによって区切られる、ステップを含み、
前記定義するステップ（Ｓ３０）が、鋭点を前記平滑点の上流の前記ポリラインに定義するステップであって、前記鋭部は前記鋭点により区切られ、かつ前記鋭点の上流にあり、
前記変換するステップ（Ｓ４０）が、
前記平滑部と交差する前記ポリラインのエッジに隣接する面を第１のパッチに変換するステップであって、前記変換はＧｉ接続属性を前記エッジに適用する、ステップと、
前記鋭部と交差する前記ポリラインのエッジに隣接する面を第２のパッチに変換し、前記変換がＧ０接続属性を前記エッジに適用し、それにより、前記第２のパッチの集合上に急曲線が生成され、前記急曲線が前記エッジに対応する、ステップと、次いで、
前記鋭点の下流にある前記第２のパッチをトリミングするステップと
を含む、方法。
【請求項２】
前記変換ステップ（Ｓ４０）がさらに、前記平滑点に対応する点の上流にある前記第１のパッチをトリミングするステップを含む、請求項１に記載の方法。
【請求項３】
前記急曲線を補間するステップと、
前記急曲線の補間結果を前記第１のパッチに投影するステップと、
前記急曲線の補間結果の投影を前記急曲線と混合することにより接続曲線を決定するステップと、
前記第１のパッチ、前記第２のパッチ、前記接続曲線、および前記ポリラインに隣接しない前記メッシュの面に対応するパッチとの間で形成された２つの穴を埋めるステップと
をさらに含む、請求項１または２に記載の方法。
【請求項４】
前記接続曲線を決定するステップがユーザ対話を含む、請求項３に記載の方法。
【請求項５】
前記パラメトリックなパッチがＮＵＲＢＳである、請求項１ないし４の何れかに記載の方法。
【請求項６】
コンピューターに、請求項１ないし５の何れかに記載の方法を実行させるための命令を含むコンピュータープログラム。
【請求項７】
請求項６に記載の前記コンピュータープログラムを記録したデータ記憶媒体。
【請求項８】
メモリとグラフィカル・ユーザ・インタフェースとに結合されたプロセッサを含むＣＡＤシステムであって、前記メモリが請求項６に記載の前記コンピュータープログラムを記録し、前記プロセッサが前記メモリに記録されたコンピュータープログラムによって動作させられる、ＣＡＤシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータープログラムおよびシステムの分野に関し、より具体的には、細分割表面によりモデル化された３Ｄモデル化オブジェクトを設計するための方法、システムおよびプログラムに関する。
【背景技術】
【０００２】
幾つかのシステムおよびプログラムが、オブジェクトの設計、エンジニアリング、および製造に関する市場で提供されている。ＣＡＤは、コンピュータ支援設計（Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｄｅｓｉｇｎ）の頭字語であり、例えば、オブジェクトを設計するためのソフトウェア・ソリューションに関する。ＣＡＥは、コンピュータ支援エンジニアリング（Ｃｏｍｐｕｔｅｒ−Ａｉｄｅｄ  Ｅｎｇｉｎｅｅｒｉｎｇ）の頭字語であり、例えば、将来の製品の物理的な振舞いをシミュレートするためのソフトウェア・ソリューションに関する。ＣＡＭは、コンピュータ支援製造（Ｃｏｍｐｕｔｅｒ−Ａｉｄｅｄ  Ｍａｎｕｆａｃｔｕｒｉｎｇ）の頭字語であり、例えば、製造のプロセスと作業を定義するためのソフトウェア・ソリューションに関する。かかるシステムでは、グラフィカル・ユーザ・インタフェース（ＧＵＩ）が、当該技法の効率に関して重要な役割を果たす。これらの技法は、ＰＬＭ（Ｐｒｏｄｕｃｔ  Ｌｉｆｅｃｙｃｌｅ  Ｍａｎａｇｅｍｅｎｔ）システムに組み込まれることもある。ＰＬＭとは、企業が拡張企業の概念にわたって、構想からその寿命に至るまで、製品データを共有し、共通プロセスを適用し、かつ会社の知識を製品開発に利用するのを支援する、ビジネス戦略のことをいう。
【０００３】
ダッソー・システムズによって（ＣＡＴＩＡ、ＥＮＯＶＩＡ、およびＤＥＬＭＩＡという商標で）提供されているＰＬＭソリューションは、エンジニアリングハブ、製造ハブ、および企業ハブを提供する。エンジニアリングハブは製品エンジニアリングの知識を構成するものであり、製造ハブは製造設計の知識を管理するものであり、企業ハブはエンジニアリングハブと製造ハブの双方への事業統合と事業接続とを可能とする。これらが一体となって、システムは、製品、プロセス、リソースを関連づけるオープンなオブジェクトモデルを提供し、最適な製品定義、製造準備、生産、およびサービスを推進するダイナミックで、知織ベースの製品創出および意思決定を可能とする。
【０００４】
以上のシステムによって設計されたオブジェクトは通常、３Ｄ曲面でモデル化される。対話的な曲面設計に関する既存の解決策には、主に２つの技術がある。
【０００５】
その一方で、非特許文献１〜４で提供されているもののような多数の解決策が、非常に人気のあるＮＵＲＢＳ（ｎｏｎ  ｕｎｉｆｏｒｍ  ｒａｔｉｏｎａｌ  Ｂ−ｓｐｌｉｎｅ  ｓｕｒｆａｃｅｓ）に基づいている。
【０００６】
主として、ＮＵＲＢＳの面は、制御点からなる長方形格子と平滑性を管理するための他のパラメーターとにより定義される。いったん平滑性のパラメーターが設定されると、面の形状を変更するために、ユーザは制御点を移動させ、それが順に面の形状を変更する。換言すれば、制御点は面を編集するための中間的な道具である。その結果として与えられる面は、多項式パッチまたは有理パッチからなる長方形のパッチワークである。性質上、パッチ面は長方形のトポロジを特徴付けており、４つのエッジで区切られる。このモデルは、制御点と結果として得られる曲面との関係が非常に自然で直感的であるので非常に人気がある。さらに、制御点の局所的な影響により、ユーザは面上の局所的な細部を設計することができる。
【０００７】
他方、非特許文献５〜９で提供されているような多くの解決策が、細分割面に基づいている。
【０００８】
細分割曲面は、多角形メッシュにより定義され、以下では「基本メッシュ」と称するが、これは曲面の形状を制御するものである。しかし、細分割曲面は以下で説明するようにＮＵＲＢＳ技術とは異なる。第１に、基本メッシュのトポロジが制限されていない。当該トポロジは閉じていても開いていてもよく、必要なだけ多くの穴が存在することができる。第２に、この基本メッシュから生ずる細分割曲面は、基本メッシュから始まる無限かつ収束性の細分割プロセスの限界面である、理論上の曲面である。実際の細分割曲面は理論的な視点からは到達できないが、特許文献１、特許文献２、または特許文献３で詳述されているように、１組の隣接ＮＵＲＢＳ曲面パッチにより非常に良好な精度で近似することができる。ここでも、基本メッシュの改良と基本メッシュの制御点の移動によるものであるが、局所的な再形成は可能である。
【０００９】
機械的または機能的な曲面とは反対に、曲面のスタイリングは詳細な設計（即ち、「スタイリング設計」）を基礎とし、多数の正確な幾何学形状を有する曲面をもたらす。スタイリング設計の１つの目標は、所謂「キャラクタ・ライン」を曲面上に生成することである。キャラクタ・ラインとは、曲面上を走る鋭く長い折込み（ｆｏｌｄ）である。この特徴が曲面内部で終了するとき、所謂「移行ゾーン（ｔｒａｎｓｉｔｉｏｎ  ｚｏｎｅ）」が、鋭い折込みがどんどん滑らかになって近傍の曲面内部で消失する場所に存在する。ＮＵＲＢＳおよび細分割曲面の双方とも、制御点を調節することでキャラクタ・ラインを設計することができる。
【００１０】
スタイリング設計には、（ＮＵＲＢＳ曲面の長方形のトポロジと反対に）その制限されないトポロジのため、細分割曲面の技術が好適である。問題は、結果のキャラクタ・ラインの形状とその移行ゾーンが、細分割曲面を用いるときは満足できるものではないことである。業務用のスタイリング曲面で行った試験によれば、熟練した設計者は基本メッシュを調節して期待されたキャラクタ・ラインおよび移行ゾーンを得ることができなかったことが示されている。その結果、先行技術を用いると、既存の解決策は、（１）細分割曲面に近似する近似のＮＵＲＢＳ曲面を生成し、（２）当該ＮＵＲＢＳ曲面から手動で（不十分な）移行ゾーンを除去し、（３）正確な形状を示す局所的なＮＵＲＢＳ曲面を設計し、（４）当該局所的な曲面をステップ（２）で得た曲面と結合すること、である。
【００１１】
明らかに、この方法は正確な結果をもたらす。欠点は、初期の細分割曲面が後で修正された場合に、修正された曲面で移行ゾーンを再度生成しなければならないことである。設計者はステップ（２）乃至（４）を手動で再実行しなければならず、これは時間がかかる。この理由は、ステップ（２）乃至（４）がＣＡＤシステムの履歴を通じて捕捉されず、そのため入力曲面が変化したときにステップ（２）乃至（４）を自動的に再生できないからである。
【先行技術文献】
【特許文献】
【００１２】
【特許文献１】米国特許第７５９５７９９号明細書
【特許文献２】米国特許第７４００３２３号明細書
【特許文献３】欧州特許第１７５０２２９号明細書
【非特許文献】
【００１３】
【非特許文献１】ＢＥＺＩＥＲ，Ｐ．（１９８７）．ＣＯＵＲＢＥＳ  ＥＴ  ＳＵＲＦＡＣＥＳ，ＰＡＲＩＳ，ＨＥＲＮＥＳ
【非特許文献２】ＣＡＳＴＥＬＪＡＵ，Ｐ．Ｄ．（１９８５）．ＦＯＲＭＥＳ  Ａ  ＰＯＬＥＳ．ＰＡＲＩＳ，ＨＥＲＭＥＳ
【非特許文献３】ＦＡＲＩＮ，Ｇ．（１９９３），ＣＵＲＶＥＳ  ＡＮＤ  ＳＵＲＦＡＣＥＳ  ＦＯＲ  ＣＯＭＰＵＴＥＲ  ＡＩＤＥＤ  ＧＥＯＭＥＴＲＩＣ  ＤＥＳＩＧＮ：Ａ  ＰＲＡＣＴＩＣＡＬ  ＧＵＩＤＥ．ＳＡＮ  ＤＩＥＧＯ，ＵＳＡ，ＡＣＡＤＥＭＩＣ  ＰＲＥＳＳ  ＰＲＯＦＥＳＳＩＯＮＡ１，ＩＮＣ
【非特許文献４】ＰＩＥＧＬ，Ｌ．Ｌ．，ＴＩＬＬＥＲ  Ｗ．（１９９６），ＴＨＥＮＵＲＢＳ  ＢＯＯＫ．ＳＰＲＩＮＧＥＲ
【非特許文献５】Ｅ．ＣＡＴＭＵＬＬ  ＡＮＤ  Ｊ．ＣＬＡＲＫ，ＲＥＣＵＲＳＩＶＥＬＹ  ＧＥＮＥＲＡＴＥＤ  Ｂ−ＳＰＬＩＮＥ  ＳＵＲＦＡＣＥＳ  ＯＮ  ＡＲＢＩＴＲＡＲＹ  ＴＯＰＯＬＯＧＩＣＡＬ  ＭＥＳＨＥＳ．ＣＯＭＰＵＴＥＲ−ＡＩＤＥＤ  ＤＥＳＩＧＮ，１０：３５０−３５５，ＪＵＬＹ  １９７８
【非特許文献６】Ｊ．ＳＴＡＭ，ＥＸＡＣＴ  ＥＶＡＬＵＡＴＩＯＮ  ＯＦ  ＣＡＴＭＵＬＬ−ＣＬＡＲＫ  ＳＵＢＤＩＶＩＳＩＯＮ  ＳＵＲＦＡＣＥＳ  ＡＴ  ＡＲＢＩＴＲＡＲＹ  ＰＡＲＡＭＥＴＥＲ  ＶＡＬＵＥＳ．ＰＲＯＣＥＥＤＩＮＧＳ  ＯＦ  ＳＩＧＧＲＡＰＨ  １９９８，ＰＡＧＥＳ  ３９５−４０４，ＪＵＬＹ  １９９８
【非特許文献７】ＪＯＲＤＡＮ  ＳＭＩＴＨ  ＡＮＤ  ＣＡＲＬＯ  ＳＥＱＵＩＮ，ＥＩＧＥＮ  ＳＴＲＵＣＴＵＲＥ  ＯＦ  ＳＴＡＴＩＯＮＡＲＹ  ＳＵＢＤＩＶＩＳＩＯＮ  ＳＣＨＥＭＥＳ  ＡＮＤ  ＤＩＦＦＥＲＥＮＴＩＡＬ  ＧＥＯＭＥＴＲＹ  ＯＦ  ＳＵＲＦＡＣＥＳ
【非特許文献８】ＪＯＲＧ  ＰＥＴＥＲＳ，ＰＡＴＣＨＩＮＧ  ＣＡＴＭＵＬＬ−ＣＬＡＲＫ  ＭＥＳＨＥＳ，ＵＮＩＶＥＲＳＩＴＹ  ＯＦ  ＦＬＯＲＩＤＡ
【非特許文献９】ＪＯＲＧ  ＰＥＴＥＲＳ，ＭＯＤＩＦＩＣＡＴＩＯＮＳ  ＯＦ  ＰＣＣＭ，ＵＮＩＶＥＲＳＩＴＹ  ＯＦ  ＦＬＯＲＩＤＡ
【非特許文献１０】ＴＯＮＹ  ＤＥＲＯＳＥ，ＭＩＣＨＡＥＬ  ＫＡＳＳ，ＴＩＥＮ  ＴＲＵＯＮＧ，ＳＵＢＤＩＶＩＳＩＯＮ  ＳＵＲＦＡＣＥＳ  ＩＮ  ＣＨＡＲＡＣＴＥＲ  ＡＮＩＭＡＴＩＯＮ．ＳＩＧＧＲＡＰＨ  １９９８
【発明の概要】
【発明が解決しようとする課題】
【００１４】
したがって、上記で列挙した解決策は、特にユーザの利用の視点から、効率性に欠けている。このコンテキストでは、細分割表面によってモデル化された３Ｄモデル化オブジェクトを設計するための改良された解決策が依然として必要である。
【課題を解決するための手段】
【００１５】
一態様によれば、３Ｄモデル化オブジェクトを設計するためのコンピュータ実行方法がしたがって提供される。この方法は、細分割曲面を制御するための基本メッシュを提供するステップを含む。細分割曲面により、３Ｄモデル化オブジェクトをモデル化する。当該方法はまた、接続された基本メッシュのエッジからなるポリラインを提供するステップと、当該ポリラインの先端を含む当該ポリラインの平滑部と当該平滑部上流の当該ポリラインの鋭部とを定義するステップを含む。当該方法はまた、ポリラインに隣接するメッシュの面を、細分割曲面に近似するパラメトリックなパッチに変換するステップを含む。当該パッチはポリラインの鋭部にわたってＧ０接続を有し、ポリラインの平滑部にわたってＧｉ接続を有し、ここで、ｉは１以上の整数である。
【００１６】
当該方法は、以下のうち１つまたは複数を含んでもよい。すなわち、
−平滑部を定義することが、ポリライン上に平滑点を定義することであって、当該平滑部が当該平滑点と当該ポリラインの先端とによって区切られることを含む。
【００１７】
−当該定義ステップが、当該平滑点上流のポリライン上に鋭点を定義することであって、当該鋭部が、当該鋭点により区切られ、当該鋭点上流にあることを含む。
【００１８】
−上記変換ステップが、当該平滑部と交わる当該ポリラインのエッジに隣接する面を第１のパッチに変換することであって、当該変換によりＧｉ接続属性が当該エッジに適用されることと、当該鋭部と交わる当該ポリラインのエッジに隣接する面を第２のパッチに変換することであって、当該変換によりＧ０接続属性が当該エッジに適用され、それにより急曲線が当該第２のパッチの集合体にもたらされ、当該急曲線が当該エッジに対応することと、当該鋭点下流の第２のパッチをトリミングすることとを含む。
【００１９】
−当該変換ステップがさらに、当該平滑点に対応する点上流の第１のパッチをトリミングすることを含む。
【００２０】
−当該方法はさらに、当該急曲線を補間することと、当該急曲線の補間結果を当該第１のパッチに投影することと、当該急曲線の補間結果の投影を当該急曲線と混合することで接続曲線を決定することと、当該第１のパッチ、当該第２のパッチ、当該接続曲線、および当該ポリラインに隣接しないメッシュの面に対応するパッチの間に形成される２つの穴を埋めることとを含む。
【００２１】
−当該接続曲線を決定することがユーザ対話を含み、
かつ／または、
−当該パラメトリックなパッチがＮＵＲＢＳである。
【００２２】
以上の方法を実施するための命令を含むコンピュータープログラムがさらに提供される。
【００２３】
上記コンピュータープログラムを記録したコンピュータ読取可能記憶媒体がさらに提供される。
【００２４】
上記のコンピュータープログラムを記録したメモリとグラフィカル・ユーザ・インタフェースとに結合されたプロセッサを備えるＣＡＤシステムがさらに提供される。
【００２５】
本発明の諸実施形態について、非限定的な例として、および添付図面を参照して説明する。
【図面の簡単な説明】
【００２６】
【図１】上記方法の一例の流れ図である。
【図２】グラフィカル・ユーザ・インタフェースの一例を示す図である。
【図３】クライアントのコンピュータ・システムの一例を示す図である。
【図４】上記方法の種々の例を示す図である。
【図５】上記方法の種々の例を示す図である。
【図６】上記方法の種々の例を示す図である。
【図７】上記方法の種々の例を示す図である。
【図８】上記方法の種々の例を示す図である。
【図９】上記方法の種々の例を示す図である。
【図１０】上記方法の種々の例を示す図である。
【図１１】上記方法の種々の例を示す図である。
【図１２】上記方法の種々の例を示す図である。
【図１３】上記方法の種々の例を示す図である。
【図１４】上記方法の種々の例を示す図である。
【図１５】上記方法の種々の例を示す図である。
【図１６】上記方法の種々の例を示す図である。
【図１７】上記方法の種々の例を示す図である。
【図１８】上記方法の種々の例を示す図である。
【図１９】上記方法の種々の例を示す図である。
【図２０】上記方法の種々の例を示す図である。
【図２１】上記方法の種々の例を示す図である。
【発明を実施するための形態】
【００２７】
図１は、３Ｄモデル化オブジェクトを設計するためのコンピュータ実行方法の一例の流れ図を示す。この方法は、細分剖曲面を制御する基本メッシュを提供するステップＳ１０を含む。細分割曲面により、３Ｄモデル化オブジェクトがモデル化される。当該方法はまた、ポリラインを提供するステップＳ２０を含む。ポリラインは、接続された基本メッシュのエッジから構成される。当該方法はまた、ポリラインの平滑部とポリラインの鋭部を定義するステップＳ３０を含む。平滑部は、ポリラインの先端を含む。鋭部は当該平滑部の上流にある。当該方法は、次いでポリラインに隣接しているメッシュの面をパラメトリックなパッチに変換するステップＳ４０を含む。当該パッチにより細分割曲面に近似する。当該パッチは、ポリラインの鋭部にわたってＧ０接続を有する。当該パッチはポリラインの平滑部にわたってＧｉ接続を有する。ここで、ｉは１以上の整数である（例えば、ｉ＝２）。図１の方法により、キャラクタ・ラインを曲面に生成して、３Ｄモデル化オブジェクトを高速に、柔軟に、堅牢に、および永続的にモデル化することができる。
【００２８】
モデル化オブジェクトとは、コンピュータ・システムのメモリに格納されたデータにより定義される任意のオブジェクトである。拡張により、「モデル化オブジェクト」という表現で当該データ自体を示す。
【００２９】
「３Ｄモデル化オブジェクトを設計する」により、３Ｄモデル化オブジェクトを生成するプロセスの少なくとも一部である任意の動作または一連の動作を示す。したがって、当該方法は、３Ｄモデル化オブジェクトを一から生成することを含むことができる。あるいは、当該方法が、過去に生成した３Ｄモデル化オブジェクトを提供し、次いで当該３Ｄモデル化オブジェクトを修正することを含んでもよい。
【００３０】
３Ｄモデル化オブジェクトは、ＣＡＤモデル化オブジェクトまたはＣＡＤモデル化オブジェクトの一部であってもよい。いずれの場合でも、当該方法により設計した３Ｄモデル化オブジェクトが、ＣＡＤモデル化オブジェクトまたは少なくともその一部、例えば、ＣＡＤモデル化オブジェクトが占有する３Ｄ空間を表してもよい。当該方法により曲面上のキャラクタ・ラインの設計が改善されるので、当該方法によりＣＡＤモデル化オブジェクトの設計も改善される。ＣＡＤモデル化オブジェクトは、ＣＡＤシステムのメモリに格納されたデータにより定義される任意のオブジェクトである。当該システムのタイプによれば、モデル化オブジェクトを様々な種類のデータで定義してもよい。ＣＡＤシステムは、ＣＡＴＩＡのようなモデル化オブジェクトのグラフィカル表現に基づいてモデル化オブジェクトを設計するのに少なくとも適した任意のシステムである。したがって、ＣＡＤモデル化オブジェクトを定義するデータは、モデル化オブジェクトの表現を可能とするデータ（例えば、空間内の相対的位置を含む、幾何学データ）を含む。
【００３１】
当該方法を製造プロセスに含めてもよい。当該製造プロセスは、当該方法を実施した後に、モデル化オブジェクトに対応する物理的な製品を製造することを含んでもよい。いずれの場合でも、当該方法により設計したモデル化オブジェクトが製造オブジェクトを表してもよい。したがって、当該モデル化オブジェクトはモデル化されたソリッド（即ち、ソリッドを表すモデル化オブジェクト）であってもよい。当該製造オブジェクトは、部品、または組立品のような製品であってもよい。当該方法によりモデル化オブジェクトの設計が改善されるので、製品の製造も改善され、したがって製造プロセスの生産性が増す。当該方法を、ＤＥＬＭＩＡのようなＣＡＤシステムを用いて実装することができる。ＣＡＭシステムは、製造プロセスと作業を定義し、シミュレートし、制御するのに少なくとも適した任意のシステムである。
【００３２】
当該方法は、コンピュータ実行型である。これは、当該方法が少なくとも１つのコンピュータ、または、同様な任意のシステムで実行されることを意味する。例えば、当該方法をＣＡＤシステムで実施してもよい。したがって、当該方法のステップをコンピュータにより、場合によっては完全に自動的に、または、半自動的に（例えば、ユーザがトリガするステップおよび／またはユーザ対話を必要とするステップ）実施することも可能である。とりわけ、提供ステップＳ１０をユーザによりトリガしてもよい。提供ステップＳ２０および／または定義ステップＳ３０を、ユーザ対話を通じて実施してもよく、かつ／または、ユーザがトリガしてもよい。変換ステップＳ４０が、完全に自動的であってもよく、または、半自動的（すなわち、幾分かのユーザ対話を必要とする）であってもよい。
【００３３】
当該方法の典型的なコンピュータ実装の例は、当該方法を本目的に適したシステムで実施することである。当該システムが、当該方法を実施するための命令を記録したメモリを備えてもよい。換言すれば、既に、ソフトウェアがすぐに使用できるようにメモリに準備されている。したがって、当該システムは、他のどのソフトウェアをインストールせずにでも当該方法を実施するのに適している。かかるシステムはまた、当該命令を実行するための、当該メモリに接続された少なくとも１つのプロセッサを備えてもよい。換言すれば、当該システムは、当該プロセッサに接続されたメモリ上で符号化された命令を備え、当該命令は当該方法を実施するための手段を埠供する。かかるシステムは、３Ｄモデル化オブジェクトを設計するための効率的な道具である。
【００３４】
かかるシステムがＣＡＤシステムであってもよい。当該システムがＣＡＥおよび／またはＣＡＭシステムであってもよく、ＣＡＤモデル化オブジェクトがＣＡＥモデル化オブジェクトおよび／またはＣＡＭモデル化オブジェクトであってもよい。実際、ＣＡＤ、ＣＡＥおよびＣＡＭシステムは他方を排除するものではない。なぜならば、モデル化オブジェクトをこれらのシステムの任意の組合せに対応するデータで定義できるからである。
【００３５】
当該システムは、例えばユーザにより命令の実行を起動するための少なくとも１つのＧＵＩを備えてもよい。とりわけ、当該ＧＵＩによりユーザが提供ステップＳ１０をトリガできるようにしてもよい。これを、提供ステップＳ２０の前に行ってもよい。または、基本メッシュおよびポリラインを同時にメモリから取り出して、同時に提供してもよい（Ｓ１０およびＳ２０）。かかるシステムは、ユーザが３Ｄモデル化オブジェクトを設計するための効率的な道具である。
【００３６】
当該３Ｄモデル化オブジェクトは３Ｄ（即ち、３次元）である。これは、モデル化オブジェクトが、その３Ｄ表現を可能とするデータにより定義されることを意味する。３Ｄ表現により、全ての角度から当該表現を参照することが可能となる。例えば、３Ｄで表現すると、モデル化オブジェクトをその軸の何れかの周りで、または、当該表現が表示されている画面内の任意の軸の周りで、操作して回転させることができる。これはとりわけ、３Ｄでモデル化されていない２Ｄのアイコンを、それらが何かを２Ｄの視点で表現するときでも、排除するものである。３Ｄ表現を表示することで、設計が容易になる（即ち、設計者が自己の作業を完了する統計的な速度が増大する）。これにより、製品の設計が製造プロセスの一部であるので、業界の製造プロセスのスピードが増す。
【００３７】
図２は、典型的なＣＡＤシステムのＧＵＩの一例を示す。
【００３８】
ＧＵＩ２１００は、標準的なメニュー・バー２１１０、２１２０、ならびに下部および側面のツールバー２１４０、２１５０を有する、典型的なＣＡＤ風のインタフェースであってもよい。当業界で知られているように、かかるメニューおよびツールバーは１組のユーザ選択可能なアイコンを含み、各アイコンは１つまたは複数の操作または機能と関連付けられている。これらのアイコンの一部はソフトウェア・ツールに関連付けられ、ＧＵＩ２１００に表示された３Ｄモデル化オブジェクト２０００で編集および／または作業するのに適合されている。当該ソフトウェア・ツールをワークベンチにグループ化してもよい。各ワークベンチはソフトウェア・ツールのサブセットを含む。特に、当該ワークベンチの１つはエディション・ワークベンチであり、モデル化製品２０００の幾何学的特徴を編集するのに適している。操作の際は、設計者は例えば予めオブジェクト２０００の一部を選択しておき、操作（例えば、彫刻操作、または次元、色、等の変更といった他の任意の操作）を開始するか、または、適切なアイコンを選択することで幾何学的な定数を編集してもよい。例えば、典型的なＣＡＤ操作は、画面に表示された３Ｄモデル化オブジェクトの型取り、または折込みをモデル化することである。
【００３９】
ＧＵＩは、例えば、表示された製品２０００に関連する表示データ２５００であってもよい。図２の例では、「特徴ツリー（ｆｅａｔｕｒｅ  ｔｒｅｅ）」として表示したデータ２５００とその３Ｄ表現２０００は、ブレーキ・キャリバと円盤を含むブレーキ部品に関するものである。当該ＧＵＩがさらに、例えばオブジェクトの３Ｄ配向を容易にし、編集した製品の操作のシミュレーションをトリガし、または、表示した製品２０００の様々な属性を描画するための、グラフィック・ツール２１３０、２０７０、２０８０を示してもよい。カーソル２０６０を触角装置により制御して、ユーザがグラフィック・ツールと対話できるようにしてもよい。
【００４０】
図３は、システムのアーキテクチャの一例を、クライアントのコンピュータ・システム、例えば、ユーザのワークステーションとして示している。
【００４１】
クライアント・コンピュータは、内部通信ＢＵＳ１０００に接続されたＣＰＵ１０１０と、ＢＵＳにも接続されたＲＡＭ（Random Access Memory）１０７０とを備える。クライアント・コンピュータにさらに、ＢＵＳに接続されたビデオ・ランダム・アグセス・メモリ１１００に関連付けられたＧＰＵ（Graphics  Processing Unit）１１１０が設けられる。ビデオＲＡＭ１１００はまた、当業界ではフレーム・バッファとしても知られている。大容量記憶装置コントローラ１０２０が、ハード・ドライブ１０３０のような大容量メモリ装置へのアクセスを管理する。コンピュータープログラム命令とデータを実際に具体化するのに適した大容量メモリ装置には、あらゆる形態の不揮発性メモリ、内部ハード・ディスクおよび取外し可能ディスクのような磁気ディスク、光磁気ディスク、ならびにＣＤ−ＲＯＭディスク１０４０がある。不揮発性メモリには、例として、ＥＰＲＯＭ、ＥＥＰＲＯＭ、およびフラッシュ・メモリ装置のような半導体メモリ装置が含まれる。上記のうちの任意のものは、特別に設計されたＡＳＩＣ（ａｐｐｌｉｃａｔｉｏｎ−ｓｐｅｃｉｆｉｃ  ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔｓ）で補完し、または、ＡＳＩＣに組み込んでもよい。ネットワーク・アダプタ１０５０はネットワーク１０６０へのアクセスを管理する。クライアント・コンピュータはまた、カーソル制御装置、キーボード等のような触角装置１０９０を備えてもよい。カーソル制御装置をクライアント・コンピュータで使用して、図２を参照して述べたように、ユーザが選択的にカーソルを画面１０８０の任意の所望の位置に置くことができる。画面により、コンピュータ・モニタのような、表示が行われうるものに対する任意のサポートを意味する。さらに、カーソル制御装置により、ユーザは様々なコマンドおよび入力制御信号を選択することができる。カーソル制御装置は、制御信号をシステムに入力するための幾つかの信号生成装置を備える。一般に、カーソル制御装置はマウスでもよく、マウスのボタンが当該信号を生成するために使用される。
【００４２】
システムに上記方法を実行させるために、コンピュータにより実行するための命令を含むコンピュータープログラムであって、上記命令はこの目的のための手段を含む、コンピュータープログラムが提供される。プログラムは、例えば、デジタル電子回路、もしくは、コンピュータのハードウェア、ファームウェア、ソフトウェアまたはそれらの組合せで実現してもよい。本発明の装置は、プログラム可能なプロセッサで実行するための機械読取可能な記憶装置で有形的に具体化したコンピュータープログラム製品で実現してもよいし、また本発明の方法ステップはプログラム可能なプロセッサにより実施するようにしてもよい。プログラム可能プロセッサは、入力データ上で動作し出力を生成することによって本発明の機能を実施するプログラム命令を実行する。命令は、プログラム可能なシステムで実行可能な１つまたは複数のコンピュータープログラムで有利に実現してもよい。プログラム可能なシステムは、データおよび命令をデータ記憶システムから受信しデータ記憶システムに送信するように接続された少なくとも１つのプログラム可能なプロセッサ、少なくとも１つの入力装置、および少なくとも１つの出力装置を備える。アプリケーション・プログラムは、高レベルな手続型プログラミング言語もしくはオブジェクト指向プログラミング言語、または、望むならばアセンブリ言語もしくは機械語で実現してもよいし、いずれの場合も言語はコンパイル型言語またはインタプリタ型言語であってもよい。プログラムは、完全インストールのプログラム、または更新プログラムであってもよい。後者の場合、プログラムは既存のＣＡＤシステムを、システムが上記方法を実施するのに適切な状態に更新する。
【００４３】
細分割曲面を制御する基本メッシュを提供するステップＳ１０が、当該基本メッシュをシステムのメモリから取り出すこと、または、当該メッシュを外部メモリからロードすること、または当該基本メッシュを一からまたは取出した中間バージョンから（ユーザが）設計することを含んでもよい。
【００４４】
当該基本メッシュは、メッシュである。ＣＡＤの分野で広く知られているように、メッシュは、１組の頂点（３Ｄ位置を有する点）と、頂点を２つずつ接続し所謂メッシュ面（即ち、最小のエッジ・サイクル）を形成するエッジとを含んでもよい。当該メッシュは任意の種類のメッシュ、例えば、三角形（この場合、メッシュの面は少なくとも大部分は３つのエッジから成る）または四辺形メッシュ（この場合、メッシュの面は少なくとも大部分は４つのエッジから成る）であってもよい。
【００４５】
「基本」メッシュは、３Ｄモデル化オブジェクトの幾何形状を定義するデータにおける基礎となるメッシュである。換言すれば、当該オブジェクトの幾何形状が当該メッシュにより表される。より具体的かつ公知な形では、当該基本メッシュは概念的には細分割アルゴリズムに関連付けられる。当該細分割アルゴリズムに従って基本メッシュを無限に細分割すると、「細分割曲面」と呼ばれる曲面が生成されるはずである。当該局面は、設計された３Ｄモデル化オブジェクトのエンベロープを表現し、それにより３Ｄモデル化オブジェクトをモデル化する。したがって、基本メッシュが細分割曲面を「制御する」と言える。細分割アルゴリズムは、四辺形メッシュの場合はＣａｔｍｕｌｌ−Ｃｌａｒｋ細分割アルゴリズム、三角形メッシュの場合はループ細分割アルゴリズムのような、任意の公知の細分割アルゴリズムであってもよい。
【００４６】
次に、前述し広く知られているように、実用性のため、細分割曲面は実際にはシステムによっては決定されない。実際、システムはその近似を、１組のパラメトリックなパッチ、典型的にはＮＵＲＢＳまたはベジェ曲面のパッチの形状のもとで決定する。例えば、システムは、メッシュを、細分割曲面に近似する１組のパラメトリックなパッチに変換する枠組みを実施するためのプログラムを格納する。この意味では、当該枠組みは基礎となる細分割アルゴリズムに対応する。当該枠組みを、以下では「メッシュ曲面変換スキーム」と呼ぶこともある。
【００４７】
細分割曲面を制御する基本メッシュを用いるＣＡＤの分野で広く知られているように、「ポリライン」はエッジのラインの任意のチェーンを示す（「ライン」自体は、少なくとも１つのエッジのトポロジ的に直線のチェーンである）。換言すれば、ポリラインは接続された基本メッシュのエッジからなる。次に、ポリラインの提供ステップＳ２０が、当該ポリラインをシステムのメモリから取り出すこと、または、当該ポリラインを外部メモリからロードすること、または、好適には、当該ポリラインを基本メッシュ上で（ユーザが）手動で定義することを含んでもよい。いずれの場合でも、当該ポリラインを示すデータが、３Ｄモデル化オブジェクトを定義するデータの中に存在する。当該方法により、最終曲面上のキャラクタ・ライン（即ち、当該曲面上を走る鋭い折込み）を、とりわけかかるポリラインを基本メッシュ上で定義することにより、モデル化することが可能になる。当該方法が（キャラクタ・ラインが以前の方法を用いて定義された）既存のモデルを更新できるので、ポリラインは必ずしもユーザにより定義されないが、例えばＧ０接続属性が予め関連付けられたエッジからなるポリラインとして取り出してもよい。いずれの場合でも、ポリラインのエッジがＧ０接続属性を有してもよい。とりわけ、提供ステップＳ２０が、ユーザがＧ０接続属性をエッジの鎖に定義し、それによりポリラインを定義することを含んでもよい。
【００４８】
当業界で知られているように、メッシュ以外のデータで３Ｄモデル化オブジェクトをモデル化してもよい。かかるデータを、メッシュ曲面変換スキームにより入力条件として使用してもよい。かかるデータが、例えば、基本メッシュの要素に関連付けられた属性を含んでもよい。上記属性により、変換プロセスが従うべき条件を定義してもよい。とりわけ、Ｇ０接続属性をポリラインのエッジに関連付けてもよい。エッジに対するＧ０接続属性は、定義によると、最終曲面（変換プロセスから生ずる曲面）がポリラインに対応する曲面の曲線にわたってＧ０連続性を有するというユーザの意図を表す、上記エッジに関連付けられたデータである。それ自体知られているように、システムのメッシュ曲面変換スキームは、かかるデータを使用し（Ｇ０接続属性を有する）上記エッジに隣接するメッシュの面を、Ｇ０連続性で接続する隣接するパラメトリックなパッチに変換するように、適合されている。その隣接面をパラメトリックなパッチに変換するとき、メッシュ曲面変換スキームがエッジに「Ｇ０接続属性を適用する」と言われる。同様に、エッジがＧｉ接続属性を有してもよい。この場合、その隣接面をパラメトリックなパッチに変換するとき、メッシュ曲面変換スキームはエッジに「Ｇｉ接続属性を適用する」。その結果、エッジに対応する曲線にわたってＧｉ連続性で互いと接続する、上記面に対応するパッチがもたらされる。
【００４９】
ユーザが先行技術の細分割曲面技術を用いて、即ち、パラメトリックな曲面に変換された基本メッシュを用いて曲面にキャラクタ・ラインを設計したい場合、当該キャラクタ・ラインを、基本メッシュのポリラインにＧ０接続属性（および、例えばデフォルトでｉ＞０とした、Ｇｉ接続属性を有する他のエッジ）を関連付けることで、定義することが可能である。かかる場合、先行技術のメッシュ曲面変換スキームは当該属性を考慮しており、結果の曲面はポリラインに対応する急曲線（キャラクタ・ライン）を提供する。
【００５０】
この先行技術の技法に対する代替または追加として、当該方法はまた、ポリラインの平滑部およびポリラインの鋭部を（ユーザが）定義するステップＳ３０を含む。したがって、当該部分を定義するデータが、モデル化オブジェクトを定義するデータに追加される。当該ポリラインのエッジが、Ｇ０連続性の属性を有しても有さなくてもよい。重要なのは、当該方法が、ポリラインに隣接するメッシュの面（即ち、少なくとも１つのエッジまたは頂点がポリラインの一部である面）を、古典的な（とりわけ、当該パッチが細分割曲面に近似する）方法でだが、パッチがポリラインの鋭部にわたってＧ０接続を有し当該パッチがポリラインの平滑部にわたってＧｉ接続を有するように、パラメトリックなパッチ（例えば、ＮＵＲＢＳパッチ）に変換するステップＳ４０を含むことである。ただし、ｉは１以上の整数（即ち、またはｉ＞０）である。換言すれば、メッシュ曲面変換スキームは最終曲面（即ち、パラメトリックなパッチを含む）のＧ０連続性（即ち、鮮明さ）をポリラインの鋭部に対応する曲線上で保証し、最終曲面のＧｉ連続性（平滑性）をポリラインの平滑部に対応する曲線上で保証する。
【００５１】
したがって、図１の方法は、キャラクタ・ラインを曲面に生成して３Ｄモデル化オブジェクトを高速に、柔軟に、かつ堅牢にモデル化することを可能とする。実際、平滑部および鋭部はポリラインの任意の部分である。とりわけ、平滑部および／または鋭部を、メッシュの頂点ではない点により区切ってもよい。したがって、当該方法により、簡単な方法で、任意の詳細レベルで、基本メッシュを細分割するかまたはその頂点を（例えば、任意の長さをキャラクタ・ラインに課すために）修正する必要なしに、キャラクタ・ラインを生成することができる。それでも、ポリラインおよび平滑部および鋭部を、モデルを定義するデータの中に格納することができる。したがって、メッシュが後で修正された場合であっても、（キャラクタ・ラインがＮＵＲＢＳ近似の制御点を修正することで定義される先行技術の場合と異なり）修正履歴と無関係に、メッシュ曲面変換を通じてキャラクタ・ラインを取得することができる。
【００５２】
平滑部および鋭部は、当該方法が鋭部にわたるＧ０接続と平滑部にわたるＧｉ接続で変換を実施するための関連データにそれぞれ関連付けられる、ポリラインの部分である。平滑部はポリラインの先端を含む。鋭部は平滑部の上流にある。平滑部および鋭部の間には、上述のキャラクタ・ラインの移行ゾーンに対応する第３の部分があってもなくてもよく、例えばこれは「移行部」と呼ばれる。実際、ポリラインはオープンであり、２つの先端を有する。参照方向は、想定される先端に向かって定義される。ポリライン上の任意の位置および所与の１つの先端において、「下流」とは先端に向かうことを意味し、「上流」とはもう一方の方向に向かうことを意味する。したがって、当該方法から生ずるキャラクタ・ラインは曲面上で滑らかに弱まり、移行が、ユーザによって、平滑部および鋭部をポリラインの任意の部分として自由に定義することによって制御される。
【００５３】
本発明は、設計者が移行部を介して移行ゾーンの形状を制御するための方法を提供する。当該移行ゾーンは、結果の曲面に属する。移行ゾーンの一端はキャラクタ・ラインの先端に接続されている。当該移行ゾーンの他端では曲面は滑らかである。重要な点は、移行ゾーンの仕様が基本メッシュのレベルで取得されることであり、この基本メッシュのレベルは、プロセス全体の入力オブジェクトである。これは、プロセスをアソシアティブにする。これは、ユーザが事後的に移行ゾーンを修正し、基本メッシュを（または両方を同時に）修正できることを意味し、システムが新たな形状を更新できることを意味する。
【００５４】
一例では、平滑部はポリラインの先端列で定義される。とりわけ、平滑部はポリラインの先端エッジの先端部であってもよい。これにより、単純にＧ０接続属性をポリラインのエッジに関連付けることでキャラクタ・ラインを単にモデル化するのと比較して、キャラクタ・ラインを改良することができる。換言すれば、これにより、基本メッシュの過度の改良を回避することができ、したがって、メモリとＣＰＵリソースを節約することができる。実際、基本メッシュをあまり改良しなければ、システムはモデル化オブジェクトをリソースの視点からより良く扱うことができる。
【００５５】
次に、当該方法は、２つの平滑部をポリラインの２つの先端に定義することを含んでもよい。鋭部を、当該２つの平滑部の間に（各平滑部に関連付けられた先端の視点からは、各平滑部の上流に）定義してもよい。実際、キャラクタ・ラインがその２つの先端で滑らかに消えてもよい。理解しやすいように、以下では、一方の平滑部に関する説明をもう一方の平滑部に適用できると理解される場合には、一方のみの平滑部を参照する。
【００５６】
明らかに、本方法により、基本メッシュが変化した後に移行ゾーンを局所的に再パッチすることからなる手動の繰返し作業が回避される。このように、ユーザは余分な時間を代替の設計ソリューションの開発に費やすことができ、または、設計結果を先行技術のソリューションより早くリリースすることができる。さらに、３つの理由から、結果の曲面の品質が高まる。第１に、当該方法は、細分割曲面それ自体を修正するのではなく、その（ＮＵＲＢＳ）近似を修正する。このように、当該方法は、細分割規則によって、および、通常は幾何学滑り（ｇｅｏｍｅｔｒｉｃ  ｓｌｉｄｉｎｇ）につながる重心効果によって、制限されることはない。第２に、移行ゾーンにおいて直接関わるもの以外のパッチは修正されず、変更は局所的である。どの近傍にも伝播しない。第３に、当該方法は自動的なプロセスを提供する。したがって、誤りにつながりうる繰返し作業が回避される。
【００５７】
次に、当該方法の一例を図４乃至２１を参照して論ずる。
【００５８】
図４および図５に示すように、本例の方法は、提供ステップＳ１０を含み、提供されるデータは、１組のパラメトリックなパッチ５０により近似される細分割曲面を制御する基本メッシュ４０である。図４は、細分割曲面５０の近似を基本メッシュ４０とともに示す。図５は、細分割曲面５０の近似のみを示す。
【００５９】
図６および７に示すように、ユーザは一連の連続するラインセグメントを基本メッシュ４０に定義すること（即ち、提供ステップＳ２０）により、キャラクタ・ライン７０を設計することができる。この選択されたポリライン６０はオープンであり、そうでなければ移行ゾーンは存在しないはずである。先行技術では、メッシュ曲面変換から生ずる曲面５０は、ポリライン６０に対応する急曲線としてキャラクタ・ライン７０を含む。図６は、曲面５０を基本メッシュ４０とともに示す。太線はポリライン６０であり、そこにユーザがＧ０接続属性を設定する。図７は、先行技術に従う曲面５０のみを示し、キャラクタ・ライン７０（太線）を示す。この能力は、細分割曲面技術の標準的な特徴である。例えば、非特許文献１０を参照のこと。
【００６０】
図６を参照すると、位置６１および所与の先端６３において、「下流」とは先端６３、即ちポリラインの左部分（当該図の位置６１の左）に向かうことを意味し、「上流」とは他の方向、即ちポリラインの右部分（当該図の位置６１の右）に向かうことを意味する。
【００６１】
先行技術に加えて、本例の方法は平滑部および鋭部の定義を含む。以下で、図８を参照してポリラインの１つの先端の管理を説明する。必要な場合は、もう一方の先端を全く同様に管理する。
【００６２】
本例では、平滑部を定義することは平滑点をポリラインに定義することを含み、当該平滑部は当該平滑点とポリラインの先端によって区切られる。定義ステップ（Ｓ３０）がさらに、鋭点を当該平滑点の上流にあるポリラインに定義することを含んでもよく、当該鋭部は、鋭点により区切られ、鋭点の上流にある。したがって、平滑部は、先端と平滑点の問にあり、鋭部は鋭点から得られ、平滑点を含まない。ポリライン６０の終点の近くで（例えば、本例では２つの先端エッジに）、ユーザは、移行ゾーンを制御する２つの点、即ち、所謂「鋭点」８２（図８の三角形記号）と所謂「平滑点」８０（図８の円形記号）を生成する。各点の位置は、ポリライン６０上のその線形横座標（ｌｉｎｅａｒ  ａｂｓｃｉｓｓａ）を介して基本メッシュに取り付けられている。
【００６３】
本例の方法の変換ステップ（Ｓ４０）は、平滑部と交差するポリラインのエッジに隣接する面（即ち、ポリラインの一部であるエッジまたは頂点を含み、当該平滑部に含まれるかまたはそれがエッジである場合には平滑点を含む、全ての面）を第１のパッチに変換するステップ（Ｓ４２）を含み、当該変換（Ｓ４２）はＧｉ接続属性を当該エッジに適用する。したがって、変換ステップ（Ｓ４２）により、第１のパッチの集合に対応する曲面上の曲線にわたってＧｉ連続性が得られる。当該曲線は、平滑部と交差するポリラインのエッジに対応する。
【００６４】
本例の方法の変換ステップ（Ｓ４０）はまた、鋭部と交差するポリラインのエッジに隣接する面（即ち、ポリラインの一部であるエッジまたは頂点を含み、鋭部に含まれるかまたはそれがエッジである場合には鋭点を含む、全ての面）を第２のパッチに変換するステップ（Ｓ４４）を含み、（ちょうど図７の曲面のポリラインに隣接する全ての面に対して行ったように）当該変換（Ｓ４４）はＧ０接続属性を当該エッジに適用する。したがって、変換ステップ（Ｓ４４）により、第２のパッチの集合（即ち、１組の第２のパッチからなる曲面）上に急曲線（即ち、全域で連続性がＧ０である曲面上の曲線）が得られる。当該急曲線は、当該エッジに対応する（定義によれば、急曲線が、鋭部と交差するポリラインのエッジに「対応する」と言われる）。
【００６５】
実際、当該方法により、（理論上の細分割曲面に近似する）ＮＵＲＢＳパッチが鋭点８２と平滑点８０の近傍に形成される。キャラクタ・ラインに隣接する初期パッチの配置構成（ポリラインに隣接する基本メッシュの面に対応）が図９に示されており、これは、図７の先行技術の曲面を再現するものである。キャラクタ・ライン７０上の鋭点８２および平滑点８０の位置も示されている。（図７または９の先行技術のソリューションと比較して）再形成すべきパッチは、キャラクタ・ラインの端頂点９０と接するもの（図９のパッチＡおよびＢ）と、その端頂点から鋭点８２までのキャラクタ・ラインのセグメントと接するもの（図９のパッチＡ１、Ａ２、Ｂ１およびＢ２）である。
【００６６】
パッチＡ、Ａ１、ＢおよびＢ１の形状は隣接するキャラクタ・ラインの鮮明さ（即ち、Ｇ０連続性の属性）の影響を受ける。特に、これにより、目的とする結果の曲面の期待される平滑性と互換性のない曲率の飛躍が引き起こされる。この現象は、産業用のテスト・ケースで見られる。この理由のため、先行技術のパッチＡ、Ａ１、ＢおよびＢ１を本例の方法において以下のように定義される新たなパッチＡ’、Ａ１’、Ｂ’およびＢ１’で置き換える。第１に、当該方法では入力曲面の基本メッシュを考える。第２に、当該方法は鋭いエッジの仕様（即ち、もしあればＧ０連続性の属性）を当該基本メッシュから除去する。第３に、当該方法は結果の曲面を計算する（即ち、正規のＧｉ属性を適用する）。最後に、当該方法はパッチＡ、Ａ１、ＢおよびＢ１に対応するパッチＡ’、Ａ１’、Ｂ’およびＢ１’を抽出する。当該方法のどのポリラインにも隣接しない面については、先行技術と同様に（例えば、Ｇｉ属性をエッジに適用することにより）メッシュ曲面変換を行う。
【００６７】
最後のステップの対応関係も可能である。なぜならば、入力曲面と第３のステップから得られる曲面とが同一のパッチ構成を有するからである。これは、その各基本メッシュのトポロジが同一であるからである。図１０（先行技術）は、鋭いエッジを示す曲面上のパッチＡ、Ａ１、ＢおよびＢ１を示す。図１１は、同一の基本メッシュから計算した鋭いエッジをもたない曲面（上の第３のステップからの曲面）上のパッチＡ’、Ａ１’、Ｂ’、およびＢ１’を示す。基本メッシュは示していない。当該方法がより滑らかな移行ゾーンにつながることに留意されたい。
【００６８】
本例の方法の変換ステップ（Ｓ４０）は次に、鋭点の下流にある第２のパッチをトリミングすることを含む。本例の方法の変換ステップ（Ｓ４０）はさらに、平滑点に対応する点上流の第１のパッチをトリミングすることを含む。これらの２つの動作は各々、キャラクタ・ラインの移行ゾーンに対応するパッチの部分がないことを保証する。次に、移行ゾーンに対応する穴を埋めることにより、最終曲面に到達することができる。
【００６９】
本例では、後で論ずるように、当該方法はさらに、（例えば、それ自体知られている任意の補間方法に従って）急曲線を補間（即ち、拡張）すること、当該急曲線の補間結果を第１のパッチに投影すること、接続曲線を決定すること、を含む。当該接続曲線は、（第１のパッチ上の）当該急曲線の補間結果を（例えば、それ自体知られている任意の混合方法に従って）当該急曲線と混合することにより得られる曲線である。次に、当該方法は単に、第１のパッチ、第２のパッチ、接続曲線、およびポリラインに隣接しないメッシュの面に対応するパッチの間で形成された２つの穴を埋めてもよい。かかる方法は、キャラクタ・ラインの移行ゾーンを最終曲面上に設計するための、効率的で柔軟な手段である。
【００７０】
以下では、パッチＡ１’およびＢ１’から作られた曲面を曲面Ｃと称する。次のステップは、（先行技術と比較して）残りのパッチ（Ａ２およびＢ２）を、そのサイズが鋭点と平滑点を介して制御される曲面を埋めることにより置き換えることである。この目的のため、所謂「接続曲線」が図１２を参照して以下のように生成される。急曲線７０は、投影１２２を提供するために鋭点８２を曲面Ｃに投影できるように、鋭点８２から補間される。当該補間１２０の長さは、任意の方法に従って平滑点の位置により制御される。
【００７１】
次に、図１３を参照すると、接続曲線１３０が急曲線の鋭点８２を、曲面Ｃに投影された補間された曲線の投影１２２の端点と結合する。
【００７２】
次のステップは、接続曲線の端点に従って、図１４のＡ１’∪Ｂ１’（簡単のため、トリミングされたパッチは名前変更していない）に到達するために曲面Ｃをトリミングし、Ａ２’およびＢ２’（簡単のため、トリミングされたパッチは名前変更していない）に到達するために初期パッチＢ２およびＡ２をトリミングすることである。図１４は、結果の開口部を接続曲線１３０とともに示す。
【００７３】
図１５を参照すると、例えばそれ自体知られている任意の埋込みアルゴリズムに従って、結果の開口部が２つの充填面１５０で埋められている。これらは、接続曲線に沿った部分を除いて、全ての近傍パッチに接している。当該接続曲線をここではフェーディング・エッジと称することができる。明らかに、当該フェーディング・エッジに沿って、結果の曲面が鋭い形状７０から滑らかな形状に変化している。
【００７４】
図１６乃至１９は、ユーザが基本メッシュ上の鋭点と平滑点の位置を変更した後の、移行ゾーンの様々な幅を示す。充填面とトリミングされた隣接パッチのサイズに留意されたい。
【００７５】
接続曲線を決定することがさらに、ユーザ対話を含んでもよい。実際、図２０を参照すると、フェーディング・エッジの端点、即ち、曲面Ｃの境界線に沿った位置、接線ベクトル方向、張力パラメーターを制御することによって、追加のスタイリング設計の柔軟性を加えることができる。
【００７６】
曲面Ｃの境界線上の点Ｐの位置は、その曲線座標により定義される。点Ｐにおいて、以下の軸系が定義される。ベクトルＺは曲面Ｃの法線ベクトルであり、ベクトルＹは曲面Ｃの境界線と垂直であり、ベクトルＸはベクトルＺとベクトルＹの外積である。当該軸系では、接続曲線に対する接線ベクトルＵの位置を、そのベクトルＹとの角度を介して取得する。もともと、ベクトルＵはベクトルＺと直角である。図２１は、どのように接続曲線の端点が局所軸系を介して制御されるかを示す。
【００７７】
接続曲線を、ユーザが定義したパラメーターを介してユーザにより制御することができ、基本メッシュのレベルで取得することができる。このように、ある更新から別の更新へと、仕様が保存され、その結果、局所的な修復は不要である。
【図１】
0006301590.tif 000002
【図２】
0006301590.tif 000003
【図３】
0006301590.tif 000004
【図４】
0006301590.tif 000005
【図５】
0006301590.tif 000006
【図６】
0006301590.tif 000007
【図７】
0006301590.tif 000008
【図８】
0006301590.tif 000009
【図９】
0006301590.tif 000010
【図１０】
0006301590.tif 000011
【図１１】
0006301590.tif 000012
【図１２】
0006301590.tif 000013
【図１３】
0006301590.tif 000014
【図１４】
0006301590.tif 000015
【図１５】
0006301590.tif 000016
【図１６】
0006301590.tif 000017
【図１７】
0006301590.tif 000018
【図１８】
0006301590.tif 000019
【図１９】
0006301590.tif 000020
【図２０】
0006301590.tif 000021
【図２１】
0006301590.tif 000022