(57)【特許請求の範囲】
【請求項１】
３次元ターゲットモデルの形状を変形させる３次元ツールモデルを用い、３次元ターゲットモデルを変形するための処理を、コンピュータに実行させる処理方法であって、
前記コンピュータの受信手段が、基礎となる位相構造を有する前記３次元ターゲットモデル上に押し当てるための原型形状に相当する前記ツールモデルを選択するための情報を受信する工程と、
前記コンピュータの変形処理手段が、前記ターゲットモデルと該ターゲットモデルの領域にある前記ツールモデルの幾何学的ポイントであって前記押し当てる方向における極値を有したポイントを検出し、該検出したポイントの極値を用いて極値表面を構成し、該極値表面の、平滑化パラメータによって定義される範囲の平滑化領域に対して平滑化を行うことにより、当該平滑化された前記極値表面を有するようにして、前記ターゲットモデルが有する面の数と辺の数が変わらないように前記ターゲットモデルを変形する変形工程と、
を有することを特徴とする処理方法。
【請求項２】
前記極値表面の曲率半径の最小値を定める平滑化パラメータを指定するための情報を取得する工程を更に有することを特徴とする請求項１に記載の処理方法。
【請求項３】
前記極値表面の曲率半径の最小値は初期値あるいはユーザが指定した値のうちの１つであることを特徴とする請求項２に記載の処理方法。
【請求項４】
平滑化された前記極値表面を非一様有理Ｂ−スプライン形態に変換する工程を更に有することを特徴とする請求項１に記載の処理方法。
【請求項５】
前記ターゲットモデルは少なくとも１つの曲体、内体および表面体から構成されていることを特徴とする請求項１に記載の処理方法。
【請求項６】
前記ツールモデルは少なくとも１つの曲体、内体および表面体から構成されていることを特徴とする請求項１に記載の処理方法。
【請求項７】
前記ツールモデルを移動方向に移動する変換を適用するための情報を取得する工程を更に有していることを特徴とする請求項１に記載の処理方法。
【請求項８】
対話式にユーザから入力された情報を受信する工程と、
該ユーザ入力によって前記ツールモデルに適用する変換を決定する工程と、
前記ツールモデルに適用された変換に伴った変形を示しながら、前記３次元ターゲットモデルの現状を表示する工程と
を更に有することを特徴とする請求項７に記載の処理方法。
【請求項９】
前記押し当ての方向は前記移動方向として定義されることを特徴とする請求項７に記載の処理方法。
【請求項１０】
前記押し当ての方向は前記移動方向と無関係であることを特徴とする請求項７に記載の処理方法。
【請求項１１】
前記押し当ての方向は、初期方向あるいはユーザが指定する方向のうちの１つであることを特徴とする請求項１に記載の処理方法。
【請求項１２】
コンピュータに実行させるプログラムコマンドを格納するための、コンピュータが読み取り可能なデータ格納媒体であって、
前記プログラムコマンドは、前記コンピュータに、
基礎となる位相構造を有し少なくとも１つの曲面体、表面体、あるいは内体を備えた、３次元ターゲットボディを構成するために利用され、前記３次元のターゲットボディを表現するための第１の複数データ、を格納させる第１格納手段と、
３次元ツールボディを構成するために利用され、前記３次元のツールボディを表現するための第２の複数データを格納させる第２格納手段と、
前記ターゲットモデルと該ターゲットモデルの領域にある前記ツールモデルの幾何学的ポイントであって前記押し当てる方向における極値を有したポイントを検出し、該検出したポイントの極値用いて極値表面を構成し、該極値表面の、平滑化パラメータによって定義される範囲の平滑化領域に対して平滑化を行うことにより、当該平滑化された前記極値表面を有するようにして、前記ターゲットボディの位相を修正することがないように前記３次元のターゲットボディを変形させる変形手段と、
して機能させることを特徴とするデータ格納媒体。
【請求項１３】
前記極値の表現形は、前記ターゲットボディの曲面体、表面体および内体のうちの少なくとも１つを置換することを特徴とする請求項１２に記載のデータ格納媒体。
【請求項１４】
前記プログラムコマンドが、前記コンピュータに、さらに、前記３次元のターゲットボディと前記極値の表現形との類似性を決定するための平滑化パラメータを指定する情報を受信させることを特徴とする請求項１２に記載のデータ格納媒体。
【請求項１５】
前記プログラムコマンドが、前記コンピュータに、さらに、平滑化された前記極値表面の表現形を非一様有理Ｂスプライン形態に変換させることを特徴とする請求項１２に記載のデータ格納媒体。
【請求項１６】
コマンドが、前記コンピュータに、さらに、前記３次元ツールボディを、前記３次元ターゲットボディに対して、移動方向に移動する情報を受信させることを特徴とする請求項１２に記載のデータ格納媒体。
【請求項１７】
前記３次元のターゲットボディを変形する方向は前記３次元のツールボディの前記移動方向であることを特徴とする請求項１６に記載のデータ格納媒体。
【請求項１８】
データおよび制御情報が格納されているメモリと、
前記制御情報に基づいて前記データを処理するためのデータプロセッサを具備するデジタルコンピュータであって、
前記制御情報は、前記デジタルコンピュータを、
３次元オブジェクトのモデルを定義する第１のデータ構造の処理であって、前記モデルは、基礎となる位相構造と、前記モデルを構成するのに用いられる複数の第１幾何学値を有している、当該第１のデータ構造を加工する第１加工手段と、
３次元ツールボディのモデルを定義する第２のデータ構造の処理であって、前記ツールボディは、前記ツールボディを構成するに用いられる複数の第２幾何学値によって構成されているような、当該第２のデータ構造を加工する第２加工手段と、
移動方向を定義する第３のデータ構造を生成する手段と、
前記複数の第１幾何学値と前記複数の第２幾何学値のうちの１つによって占有された前記移動方向にある最も遠い点を検出することによって複数の極値を決定する手段と、
前記オブジェクトモデルと該オブジェクトモデルの領域にある前記ツールボディモデルのそれぞれ第１および第２の幾何学的値から前記決定手段によって決定される複数の極値を用いて極値表面を構成し、該極値表面の、平滑化パラメータによって定義される範囲の平滑化領域に対して平滑化を行うことにより、当該平滑化された前記極値表面を有するようにして、前記オブジェクトモデルの位相を修正することがないように１つ以上の平滑化ボディを構築する手段と、
として機能させることを特徴とするデジタルコンピュータ。
【請求項１９】
前記制御情報には、１つ以上の平滑化ボディを、前記モデルを定義する前記第１のデータ構造に組み入れる処理が更に用意されていることを特徴とする請求項１８に記載のデジタルコンピュータ。
【請求項２０】
前記制御情報には、前記スムージング処理のための前記複数の極値の中から、所定量の極値を指定するのに利用される平滑化パラメータを定義するための情報を受信する処理が、更に用意されていることを特徴とする請求項１８に記載のデジタルコンピュータ。
【請求項２１】
前記制御情報には、１つ以上の平滑化ボディを非一様有理Ｂスプライン形態に変換する処理が更に用意されていることを特徴とする請求項１８に記載のデジタルコンピュータ。
【請求項２２】
前記モデルは、１つ以上の曲面体、内体、および表面体によって構成されていることを特徴とする請求項１８に記載のデジタルコンピュータ。
【請求項２３】
前記制御情報には、前記ツールボディに変換マトリックスを施すことによって前記ツールボディを移動方向に移動させて、前記ツールボディを再配置する処理が更に用意されていることを特徴とする請求項１８に記載のデジタルコンピュータ。
【請求項２４】
ユーザから入力される前記移動方向を定める情報を受信することを特徴とする請求項１８に記載のデジタルコンピュータ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータ利用設計（ＣＡＤ）システムによる、３次元の(３Ｄ)曲線、曲面および内体の変形を促進するものである。
【背景技術】
【０００２】
コンピュータ利用設計(ＣＡＤ)のソフトウェアによって、ユーザは、体表面やその内体のような複雑な三次元の(３Ｄ)モデルを構築し操作することが可能である。内体あるいは表面体は、位相的実体物(例えば頂点、辺および面など)が相互に連結した結果のコレクションである。位相的実体物は、幾何学的な実体 (例えば、点、整ったカーブ、整った面) を示す相当物を有している。位相的な構造は、多様体あるいは非多様体な構造である。多様体である位相構造の場合には、内体の全ての辺が隣接した２つの面（互いに適合する）を有し、従って、内体は体積を有する。表面体は、少なくとも１つの薄端片(つまり、端片は１つの隣接面を有する)から構成されており、したがって、表面体は体積を有さない。一般に、非多様体の位相的構造では、内体と体表面の区別がない。
【０００３】
ＣＡＤシステムでは、表面体と内体のモデリング技術が組み合わせられる。また、ＣＡＤシステムは、パラメトリックモデリング技術のような他のモデリング技術を使用することもできる。パラメトリックモデリング技術では、特徴を示すための様々なパラメータを定義し、これら特徴を参照することができる。また、このような特徴のパラメータと参照の関係に基づいて、特徴間の関連性を設定することが出来る。
【０００４】
デザイナーは、３Ｄ  ＣＡＤシステムの一般ユーザである。デザイナーは、物理的かつ美的に３Ｄモデルの様相を設計し、３Ｄモデリング技法に熟練している。デザイナーは、パーツを作成し、そのパーツを機構内に組み入れる。
【０００５】
多くのＣＡＤシステムにおいて、曲線や曲面は、分析的、ベジェの、またはスプラインの曲線や表面として一般に表わされるが、特に非一様有理Ｂスプラインの曲面や表面として表される。一方、いくつかのＣＡＤシステムおよびモデルは、モザイク式モデルを利用したディスプレイ目的(例えば、娯楽や医学的なイメージング産業)にのみ使用されており、この場合モデルの表面は、個々の表面をサブ分割することによる三角形あるいは他の多角形となっている。
【０００６】
多くの市販の３Ｄ  ＣＡＤシステムにおける特徴の１つは、デザイナーがＣＡＤモデルにおける１つ以上の表面を修正することによって、ＣＡＤモデルを変形することが出来ることである。いくつかの変形技術は、現在の最先端３Ｄ  ＣＡＤシステムに既に導入されている。 これら変形技術のうちのいくつかは、ＮＵＲＢＳ表現に基づいて、表面へ適用される。 コンコード(マサチューセッツ)のＳｏｌｉｄＷｏｒｋｓ株式会社から提供されたＳｏｌｉｄＷｏｒｋｓ（登録商標）２００４ソフトウェア・プロダクトは、点や曲線体を操作の方法として使用し、１つ以上の表面体あるいは内体を変形することができる。点の利用は、表面の点を押したり引いたりすることに関与し、一方、曲線の利用は表面の曲線を押したり引いたりすることに関与する。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
ＳｏｌｉｄＷｏｒｋｓソフトウェア・プロダクトの中に導入されているようなポイントとカーブの変形によって、ユーザは変形を制御することが出来る。この際、ユーザは、変形させたい領域を指定可能とする（例えば、影響を及ぼす範囲を指定することによって、変形面を明示することによって、あるいはそれら両方によって)。ＳｏｌｉｄＷｏｒｋｓ ２００４の変形操作は、変形されて１つ以上の表面やボディに影響するような、ＮＵＲＢＳボディにおいて、位相性および平滑性を維持する。しかしながら、ＳｏｌｉｄＷｏｒｋｓ  ２００４によって導入された点と曲線の操作は、他のＣＡＤ製品と同様に、現行の表面を修正するための、原型としての表面を採用する手段が欠如している。それは、変形後のＮＵＲＢＳボディを所望の形状にするための能力に限界があることになる。
【０００８】
他の表面変形技術では、ＮＵＲＢＳ制御点を直接的に修正することが出来る。１セットの制御点により、パラメトリック曲面の形状が定義される。制御点が変形されると、表面の特定の領域が修正される。修正される領域の大きさおよび変形後の表面形状は、制御点に適用された変形ベクトルに依存する。この技術では一度に１つだけの表面を修正し、修正済の表面と隣接面との間の接触は維持しない。
【０００９】
表面体および内体を修正するための別の技術として、内体ツールを使用する、しばしば機能的モデリングと呼ばれるものがある。 機能的モデリング技術は、ブール演算を含むいくつかの操作を組み合わせる。１つ以上の現行表面を幾何学的に変形するのではなく、機能的モデリング技術は、内体ツールの表面や小部分に修正された表面を壊し、当該小部分を組み立てることによって、付加された面と新たな鋭端を有する新たなボディを形成する。このようにして、修正された内体や表面体の位相は変更される。したがって、機能的モデリング技術は、修正済の表面が破壊され鋭端が導入されていることから、自由曲面設計には適さない。
【００１０】
デザイナーは、３Ｄ  ＣＡＤモデルへの複雑な修正をするために、効率的な手段を必要としている。さらに、その修正は、１つ以上のＣＡＤボディを含んでいる広い領域に影響を与えることが要される。３Ｄ  ＣＡＤシステムによれば、変換後のボディの位相を変更することのないツールとして他のボディを使うことにより、デザイナーは１つのボディを迅速に変形することが出来る。このようであれば、いかに複雑なボディであっても、あるいはいかに多くのＣＡＤボディが変形によって影響を受けても、このような３Ｄ  ＣＡＤシステムの可能性は更に増大する。
【課題を解決するための手段】
【００１１】
一般に本発明の第１の態様では、ターゲットモデルを変形させるためのコンピュータに実装された方法であって、３次元ツールモデルを使用して、ターゲットモデルを変形することを特徴とする。本方法は、３次元ツールモデルの選択工程を有している。本ツールモデルは、形状の原型を表示し、３次元ターゲットモデルを印象付ける。その後、ターゲットモデルは、ターゲットモデル領域内において、ツールモデルを平滑化された形状に形成するような表面変形手順に従って変形される。
【００１２】
実施においては、幾何学的な極値を１セット検出するための押し出し方向を提示する工程、ツールモデルを構成するのに用いられる幾何学値やターゲットモデルを構成するのに用いられる幾何学値を調べる工程、および１セットの幾何学的な極値を生成する工程が含まれている。それぞれの幾何学的な極値は、ツールモデルを構築するのに利用されるような幾何学的な値でもよいし、ターゲットモデルを構築するのに利用される幾何学的な値でもよい。いずれにしても、押し出し方向へ延在する軸に沿って、最も遠い点を表している。極値における表面は幾何学的極値のセットによって構成され、平滑化されることによって平滑な面が形成される。
【００１３】
実施においては、以下に示す特徴の１つ以上が含まれている。ターゲットモデルは、変形の前後において同数の面と辺を有している。平滑化値は極値における表面領域の大きさを示すことが指定されており、デフォルト値であってもユーザが指定した値であっても良い。平滑化された面は、非一様有理Ｂスプラインの形態に変換される。ツールボディおよびターゲットボディは、それぞれ１つ以上の曲線、内体、および表面体によって構成されている。ツールモデルは、変換を加えることによって移動可能であり、ツールボディの移動方向は押し出し方向として定義される。実施においては、また、ユーザ入力を双方向受信する工程、ユーザ入力に応じてツールモデルに与える変換を決定する工程、および変換が施される際のターゲットモデルの変形を示すと同時に３次元ターゲットモデルの現状の光景を表示する工程を含んでいる。
【００１４】
本発明の１つ以上の実施形態の詳細については、添付図面および後の記述の中で説明されている。 発明の他の特徴、目的および利点については、記述と図面、およびクレームによって明らかにされるであろう。
【発明の効果】
【００１５】
本発明によれば、３Ｄ  ＣＡＤシステムによれば、変換後のボディの位相を変更することのないツールとして他のボディを使うことにより、デザイナーは１つのボディを迅速に変形することが出来る。このようであれば、いかに複雑なボディであっても、あるいはいかに多くのＣＡＤボディが変形によって影響を受けても、このような３Ｄ  ＣＡＤシステムの可能性は更に増大する。
【発明を実施するための最良の形態】
【００１６】
本発明は、コンピュータ利用設計（ＣＡＤ）システムによる、３次元の(３Ｄ)曲線、曲面および内体の変形を促進するものである。１本以上の曲線、曲面あるいは内体が、より多くの曲線、曲面あるいは内体を変形する目的で選択される。このような変形は、変形されているボディの位相を修正することなしに達成される。さらに、変形されているそれぞれのボディの表面における接触や連続する屈曲の存在は、保存されている。変形の対象となっているボディにおける接触や連続する屈曲の存在と同様に位相も保存しながら、モデルの変形が可能であることにより、本発明は、コンピューター化されたモデリングシステムにおける柔軟性および機能性を増強する。
【００１７】
図１は、ＣＲＴに表示され、コンピューター化されたモデリングシステムによって実行されるＣＡＤモデリング・ソフトウェアによって生成された、ウィンドウ１０２を示している。その一例については、図９を参照して後に説明する。ウィンドウ１０２は従来のコンピュータによって生成されたウィンドウであり、レドモンド(ワシントン)のマイクロソフト株式会社が提供しているもののような、従来技術の一般的な１つである、市販のソフトウェア・プログラミング・ツールによってプログラムすることができる。
【００１８】
コンピュータによって生成された３Ｄモデル１０４は、ウィンドウ１０２のモデリング領域１０６内に表示される。デザイナーは従来の方法に従って、３Ｄモデル１０４を構成し修正することができる。３Ｄモデル１０４の表面は表示することができる、あるいは３Ｄモデル１０４は、実線および破線を使用して３Ｄモデル１０４の可視端や隠れた端部をそれぞれ表示すことが出来る。実施においては、機能リスト１０８のような他のウィンドウ領域も含んでおり、これによってデザイナーは、モデリング領域１０６内に表示された３Ｄモデル１０４を見たり操作したりすることが出来る。
【００１９】
１実施形態において、モデリングシステムは、曲線、曲面および内体のモデルに適用される立体モデリングシステムであり、これらを組み合わせる。ボディの位相構造は多様体あるいは非多様体構造である。図１に示された３Ｄモデル１０４は、部分モデルである。しかし、３Ｄモデル１０４は部分の組み合わせであってもよく、この場合それぞれのパーツは、頂点、辺、および面のような位相的要素や、ポイント、曲線、および曲面のような幾何学的要素によって構成される。曲線および曲面は解析可能であり（例えば、直線、円弧、平面、および円筒）、ビジェ構造として、あるいは非一様有理Ｂスプラインのようなスプラインとして表現される。これは、ＣＡＤ産業全般で使用される標準的な曲線および曲面の表現である。以下、非一様有理Ｂスプラインという言葉を、それらの頭文字であるＮＵＲＢＳで示すことにする。一般に、曲線および曲面は、モザイク式の表面と細分化された表面を含むと評価されるものであればどのような曲線や曲面であっても良い。
【００２０】
本発明は、対象となる１つ以上のボディを変形するものであり、以後、当該ボディをターゲットボディと称する。ターゲットボディは、１つ以上の他のボディから影響を受け、以後、当該ボディをツールボディと称する。変形後、ツールボディとの接触部分におけるターゲットボディの表面形状は、ツールボディの表面形状と類似したものとなる。この際、ターゲットボディの接触部分における鋭辺は意図的に平滑化されるので、ターゲットボディの接触部分における表面形状はツールボディの表面形状と全く等しくはならない。これについては後述する。本発明は、ターゲットおよびツールボディに対する特別な幾何学的表現を制限するものではないが、望ましくは、変形後のターゲットボディがＮＵＲＢＳ表面として、表現されているとよい。
【００２１】
図２Ａを参照するに、ここには、３Ｄモデルを含んだウィンドウ２０２が示されている。この３Ｄモデルは、ウィンドウ２０２のモデリング領域２０６内に表示されたターゲットボディ２０４である。ターゲットボディ２０４を変形するために、デザイナーはツールボディ２０８を選択する。ツールボディ２０８は、ターゲットボディ２０４が変形後に想定される形状の原型である。説明を簡単にするため、１つのターゲットボディおよび１つのツールボディのみが示され、双方のボディは直方体としている。
【００２２】
図２Ｂは、ターゲットボディ２０４に対する、本発明の効果を説明するための図である。本発明は、表面対表面の変形工程を提案する。すなわち、ツールボディ２０８表面の幾何学的形状は、ターゲットボディ２０４表面を変形するように、ターゲットボディ２０４の幾何学的形状に作用する。本発明は、ツールボディ２０８を正確に表現すると言うよりは、ツールボディ２０８の形状を変形領域に類似させるという変形手順を採る。それゆえ、ターゲットボディ２０４には鋭辺を導入しないので、修正後の表面の平滑性が保たれる。
【００２３】
図２Ｂによれば、本発明はターゲットボディ２０４の位相性を保持している。特に、ターゲットボディ２０４の面の数および辺の数は変化していない。すなわち、変形工程の後においても、変更工程の前に存在したと同じく、６つの面と１２の辺のそれだけがターゲットボディ２０４に存在している。更に、変形が完了した後であっても、ターゲットボディ２０４の表面は平滑性が保たれており、これは注目すべきことであるが、ターゲットボディ２０４には新たな鋭辺は存在しない。
【００２４】
図２Ｃは、本発明を回避した状態でターゲットボディ２０４へツールボディ２０８を適応させた変換操作後の結果を示している。図２Ｃに見るように、ターゲットボディ２０４には、図２Ｃには不図示の他の面と共に付加面２１０〜２２０が付け加えられており、これは、ターゲットボディ２０４とツールボディ２０８との配置によるものである。このように、ターゲットボディ２０４の位相性は修正されてしまっている。面および曲面はいくつかの面および曲面に分断され、新たに形成された面や曲面には鋭辺が導入されている。
【００２５】
図３は、１つ以上のツールボディを使用して、１つ以上のターゲットボディを変形する際の手順３００を説明するためのフローチャートである。 まず、１つ以上のターゲットボディが選択される(ステップ３０２)。ターゲットボディは、最先端の３Ｄ  ＣＡＤシステムにおいて利用可能な機能を使用して構築することができる。さらに、最先端の３Ｄ  ＣＡＤシステムは、本発明の実施に含まれるもの以外のシステムであってもよく、その場合には、ターゲットボディを本発明の実施を可能とするような３Ｄ  ＣＡＤシステムにインポートすればよい。さらに、ターゲットボディは、曲面体、表面体、内体あるいはこれらの合成物として、データ構造内に内部的に表現されねばならない。(ワイヤー・フレーム体はカーブ体のための産業用語として使用される。)
次のステップで、１つ以上のツールボディが選択される(ステップ３０４)。ツールボディも、最先端の３Ｄ  ＣＡＤシステムにおいて利用可能な機能を使用して構築することが出来るが、ある３Ｄ  ＣＡＤシステム内に構築されてもよいし、本発明の実施に含まれるような別の３Ｄ  ＣＡＤシステムにインポートされるものであってもよい。更に、ツールボディは、他のボディを変形するためのツールとして使用されることを特定の目的として構成されたものであっても良いし、あるいは別の目的のために構成され、変形ツールとして使用されても良い。後者の一例としては、対象物用のパッケージのモデルを作成するための、対象物のモデルがツールボディとして挙げられる。
【００２６】
次のステップで、押し出し方向と平滑化パラメータが決定される(ステップ３０６)。押し出し方向および平滑化パラメータは、システムあるいはユーザによって定義されればよい。押し出し方向は、変形体を作成する際のツールやターゲットボディの幾何学的なポイントを分析するために使用され、これついては図４を用いて更に説明する。平滑化パラメータは、明らかに断面の径に類似している。平滑パラメータは、スムージング操作によって使用される周囲の領域の範囲を指定し、変形された表面の曲率半径の最小値を決定する。これについては後に説明する。
【００２７】
その後、ツールボディは、ターゲットボディに対して移動される(ステップ３０８)。手順３００によれば、ツールとターゲットボディとが互いに接近することにより、ツールボディはターゲットボディを変形させるような形でターゲットボディに影響を与える。影響が及ぶ範囲は、ターゲットボディ表面に対するツールボディの表面の位置によって決まる。
【００２８】
ツールボディがどのような方向に移動されても、ターゲットボディは自動的に変形される。ツールボディは、変換(例えば回転や平行移動のような変換)を適用することにより、双方向デバイスからＣＡＤシステムに受信された入力データに従って移動される。限定されない方法によれば、マウスあるいは他のポインティングデバイスによって、ツールボディをターゲットボディまで引いていくことが可能である。これにより、ここで説明した変形動作がターゲットボディに適用される。
【００２９】
一方、ターゲットボディに影響を及ぼす領域までツールボディを移動させるのではなく、ターゲットボディに所望の影響力が与えられることによって、ツールボディが位置決めされてもよい。(そのような位置の図は図２Ａを参照)。その後、所望の影響力を有するツールボディの位置を明らかにするのみで、ＣＡＤシステムはターゲットボディの変形が指示される。
【００３０】
ターゲットボディは変形されるが、本発明ではターゲットボディの予備的な形状が作成される(ステップ３１０)。その後、予備的な形状はデザイナーに提示され、デザイナーは、変形されたターゲットボディのプレビューを確認した上で、変形されたターゲットボディを最終形として受理するに先立って、押し出し方向あるいは平滑化パラメータの修正を行うか否かの判断をすることが出来る。プレビューは、ツールボディの移動に伴うターゲットボディの連続的な変形において、ＣＡＤシステムが有しているリソースが不十分である場合には、機能できない。これは、変形動作がリアルタイムで対話形式的に実行できないことを意味する。更に、本発明においては、デザイナーがＣＡＤシステムに対しコマンドを発することによって、必要に応じてターゲットボディのプレビューが表示される形態であっても良い。
【００３１】
ターゲットボディは変形を続け、ターゲットボディがデザイナーの容認する形状となるまで、円滑な形状変換が続けられる。変換工程に置いては、位相幾何学的な接触状態および屈曲状態が保守されている。
【００３２】
デザイナーは、予備的な変形形状を受理するか否かを決定する(ステップ３１２)。デザイナーがツールボディの移動を続け、ターゲットボディの変形が継続される場合、あるいは、ターゲットボディの変形を継続する以前にデザイナーが押し出し方向あるいは平滑化パラメータを調整した場合、予備的な変換形状は受理されない。３Ｄ  ＣＡＤシステムが、変形後のターゲットボディを最終形のターゲットボディとして受理するよう指示されると、予備的な変形形状は受理される。変形後のターゲットボディを最終形のターゲットボディとして受理することをシステムに指示するために、デザイナーは双方向デバイスを用いて３Ｄ  ＣＡＤシステムに入力データを送信し、受理を指示する。変形後のターゲットボディが受理されると（ステップ３１４）、ターゲットボディは最終変形形状となり、手順３００は完了する（ステップ３１６）。
【００３３】
図４を参照するに、ここには変形手順４００のフローチャートが示されている。手順４００は、図３参照して説明したステップ３１０を、より詳細に示している。ターゲットおよびツールボディの幾何学的なポイントが解析され、どのポイントが押し出し方向において極値を有しているかが検出されると、手順４００は開始される（ステップ４０２）。１実施形態によれば、極値を有するポイントを決定する際には、ツールボディの軌跡は考慮されず、ツールボディの現在位置だけが考慮される。別の実施形態では、ツールボディの軌跡は押し出し方向であってもよい。押し出し方向において極値を有するポイントは、極値表面を構成するために利用されるが（ステップ４０４）、ここでは滑らかな表面にはならない。続くステップで、スムージング技術が適用され、極値表面は滑らかな表面となる（ステップ４０６）。
【００３４】
一般に、極値表面の各ポイントにおいて、スムージング技術は、当該ポイント周辺のエリアを考慮して、そのポイントに対する重み付け平均による幾何学的な値を算出する。限定されない方法ではあるが、移動window平均、二次元のSavitzky-Golayフィルタ、およびスプライン評価を、極値表面のスムージングに適用することが出来る。平滑化パラメータはスムージング技術の入力値として使用され、歪んだ表面の曲率半径の最小値を定義する。平滑化パラメータの値が小さいほど、ターゲットボディの歪んだ表面はツールボディの表面に類似し、歪んだ表面の曲率半径の最小値はより小さな値となる。平滑化パラメータの値が大きいほど、歪んだ表面の曲率半径の最小値はより大きな値となり、歪んだ表面はより滑らかになる。スムージング技術を利用することの１つの利点は、隣接面間における元々の滑らかさが維持されることである。もし、ターゲットボディの２つのオリジナル表面が、接線方向に接しているか、あるいは屈曲しながら連続的に隣接していた場合、変形プロセスが完了した後であっても、表面はそのまま維持される。
【００３５】
多くの最先端ＣＡＤシステムでは、表面はＮＵＲＢＳ表面として表わされる。従って、本発明においては、スムージング後の表面はＮＵＲＢＳ表面として表わされる。スプライン評価技術のようなスムージング技術ＮＵＲＢＳは表面を形成する(それゆえ、次のステップ４０８は必要ない。)。ＮＵＲＢＳ表面を作らないスムージング技術については、限定例ではないが、表面フィッティング処理をスムージングされた表面に対し適用し、スムージングされた表面をＮＵＲＢＳ表面に変換してもよい（ステップ４０８）。多くの市販の製品では、表面フィッティング工程が導入されたソフトウェア・ライブラリが提供されている。そのような１つの製品として、ベルビュー（ワシントン）のソリッド・モデリング・ソリューションズ社から提供されたＮｌｉｂＴＭが挙げられる。
【００３６】
図５Ａを参照するに、ここには、手順４００を説明するために、ターゲットボディ５０２とツールボディ５０４の２次元側面図が示されている。２次元側面もまた曲面体である。図５において、ターゲットボディ５０２は実線で表されており、ツールボディ５０４は破線で表されている。押し出し方向５０８は、極値点が検出される方向を示している。
【００３７】
図５Ｂは、太線によって極値表面５０６を示している。既に説明したように、極値表面は、ターゲットボディ５０２とツールボディ５０４の幾何学的ポイントを解析し、押し出し方向においてどちらのポイントが極値を有しているかを検知し、さらに押し出し方向において極値を有するポイントを用いて極値表面５０６を構成した後に形成される。
【００３８】
図５Ｃは、ターゲットボディ５０２とツールボディ５０５に対する平滑化された表面５１０を、太線によって示している。平滑化面５１０はＮＵＲＢＳ表面であればよいが、そうでなくとも平滑化面５１０はＮＵＲＢＳ表面に変換されれば良い。
【００３９】
図６Ａを参照するに、ウィンドウ６０２のモデリング領域６０４には、ブラケット６０６が示されている。このブラケットは垂直面６０８と水平面６１０を有しており、これらは１つの部材を屈曲６１２することによって形成されている。ブラケット６０６は多数の表面によって構成されており、これら表面は、ビジェあるいはＮＵＲＢＳ表面、あるいは評価されるものであれば、どのような表面によって解析されていても良い。
【００４０】
図６Ｂは、ブラケット６０６と、Ｌ型のツールボディ６１４を示している。Ｌ型ツールボディ６１４は、ブラケット６０６を変形する際に使うことを意図してデザインされたものである。図６Ｂに見るように、Ｌ型ツールボディ６１４は、平面を有する基本的な形をしており、ここでは突起した６角形の概略体として示されている。図６Ｂにおいて、Ｌ型ツールボディ６１４は、ブラケット６０６に対して望ましい変形ができるような位置に、配置される。しかしながら、Ｌ型ツールボディ６１４の移動工程も、双方向通信で行われる。また、図６Ｂには、押し出し方向を示す矢印が示されている。
【００４１】
パネル６１８には、デザイナーがモデリングシステムと相互通信しながらの変形制御を可能とするユーザインタフェイスツールが含まれたグループボックスが備えられている。
図６Ｂにみるように、パネル６１８にはツールボディ６１４の変換に使われるコンビネーションボックス６２０が備えられている。コンビネーションボックス６２０は、ＣＡＤシステムへの支持を発するために使用される。これによって、ツールボディ６１４をＸ、ＹおよびＺ方向にミリメータで現された特定の距離ずつ移動したり、ツールボディ６１４をＸ、ＹおよびＺ平面で特定の角度ずつ回転させたり、あるいはツールボディ６１４の回転中心をＸ、ＹおよびＺ方向にミリメータで現された特定の距離ずつ変更したりすることが出来る。コンビネーションボックス６２０を用いてのツールボディの移動や回転に加えて、ポインティングデバイスを用いても（例えば、マウスを用いてツールボディを引いたり回転したりすることによって）、ツールボディをモデリング領域内６０４で変換されることが出来る。
【００４２】
パネル６１８には、また、押し出し方向を特定するためのセレクションボックス６２２が備えられている。デザイナーはモデリング領域６０４に表示されている面を選択し、セレクションボックス６２２に当該面の名前を入力することが出来る。押し出し方向の初期値は、選択された面における通常値となるが、デザイナーは他の好ましい押し出し方向を指定することにより初期値を書き換えることが出来る。矢印ボタン６２４によって、デザイナーは押し出し方向が引き出される面サイドを指定することが出来る。
【００４３】
変形領域グループボックス６２６は、変換領域にある面やボディの名称を表示するユーザ・インタフェイス・コントロール６２８を供えている。１つ以上の個々の面あるいは１つ以上のボディは、変換が適用可能な領域として定められている。面やボディはモデリング領域６０４からの選択を介すことによって指定される。また、変形領域グループボックス６２６にはツールボディ・コントロール６３０も含まれており、ここには上下指定メニューやセレクションボックスが備えられている。上下メニューによって、デザイナーは、基本的なツールボディのライブラリや、デザイナーによってＣＡＤモデリングシステムに保存されているツールボディのライブラリから１つのツールボディを選択することが出来る。変形領域グループボックス６２６内のセレクションボックスによって、モデリング領域６０４からツールボディを選択することが出来る。また、平滑化パラメータは変形領域コンビネーションボックス６３２内で指定される。
【００４４】
図６Ｃを参照するに、ブラケット６０６はツールボディ６１４（もはや図示されていない）によって、既に変形されている。垂直面６０８、水平面６１０、および屈曲部６１２は既に変形されている。変形完了後、垂直面６０８、水平面６１０および屈曲部６１２を構成するのに用いられている全ての変形面は、ＮＵＲＢＳ表面としてのデータ構造内に格納されている。垂直面６０８と水平面６１０は屈曲部６１２に接触した状態を保っている。
【００４５】
当業者によれば、本発明は様々な目的のために適用可能であると評価するであろう。このような目的の１つとして、パッケージデザインが挙げられる。このようなデザイン用途において、デザイナーは変形目的のために、具体的にツールを形成する必要はない。むしろ、パッケージされる対象物のモデルが変形ツールとして使用され、モデルは１つ以上のツールボディから構成されている。
【００４６】
図７Ａおよび７Ｂは、バッテリーのセットモデルが表示されているモデリング領域７０４を有するウィンドウ７０２を示した図である。バッテリーセットのパッケージを作成するために、バッテリーモデルは変形ツール７０８として使用されている。図７Ａに示すように、変形ツール７０８は３つのボディによって構成されている。
【００４７】
ターゲットボディ７１０はパッケージ材料から成るシート状のモデルであり、はじめ
図７Ａに示すように、ターゲットボディ７１０は平面である。図７Ｂは、変形ツール７０８によって変形された後のターゲットボディ７１０を示している。図に示すように、ターゲットボディ７１０は適切な方法で変形され、バッテリーセット用のパッケージの製造に用いられるような、利便性のある３次元モデルになっている。
【００４８】
図８Ａ〜８Ｄを参照するに、本発明は自由表面を変形することも出来る。図８Ａにおいて、ロフト式の表面が示されており、これがターゲットボディ８０２である。ターゲットボディ８０２のほかに、図８Ｂには、ツールボディ８０４がワイヤーフレームで示されている。図８Ｃは、変形工程が完了した後のターゲットボディ８０２を示している。整備操作が変形されたターゲットボディ８０２に施され、図８Ｄに示すダッシュボードのようなオブジェクトが形成される。
【００４９】
本発明は、３Ｄ  ＣＡＤシステムのユーザに対し、いくつかの利点をもたらす。１つ目の利点は、それぞれが多くの表面から構成されている多数のボディを、単一の手順によって同時に変形することが出来ることである。また、別の利点は、デザイナーが１つ以上のターゲットボディの最終形を効率的にコントロールすることが出来ることである。なぜなら、デザイナーは、単一で簡単に設計されたツールボディ、あるいは多数の曲線、内体、および表面体から構成される複雑な変形ツールを使って、複雑な変形形状を形成することが出来るからである。
【００５０】
本発明の別の利点は、ターゲットボディの位相性およびターゲットボディの接触表面間の平滑性が保たれることである。本発明は、ターゲットボディの表面を１つ以上のボディに分割しない。また、如何なる辺も付け加えたり、ターゲットボディから取り除いたりすることもしない。更に、接線方向における接触あるいは連続的に接触した曲面のような、ターゲットボディのオリジナルの表面は、変形後にも残されている。
【００５１】
ここに説明した実施形態では、デザイナーによって利用されるＣＡＤモデリングシステムを示している。限定される例ではないが、本発明を活用した実用的なデザインには、自由形状表面デザイン、プラスチックデザイン、消費者製品デザイン、パッキングデザイン、シートメタルデザイン、ツールデザイン、および自動車のスタイリングが挙げられる。しかしながら、他のコンピュータアプリケーションであっても、本発明から更にその可能性を拡大することが出来、これら他のシステムのユーザはこれらシステムの改善された使い易さから利益を得ることが出来る。
【００５２】
図９は、本発明を実施することが可能なコンピュータ制御のモデリングシステムである。このコンピュータ制御のモデリングシステム９００には、ＣＰＵ９０２、ＣＲＴ９０４、キーボード入力装置、マウス入力装置、および通常利用するコンピュータハードウエアデバイスを具備した保存デバイス９１０が備えられている。例えば、ＣＰＵ９０２は、Ｐｅｎｔｉｕｍ（登録商標）−ｂａｓｅｄプロセッサを備ええいても良い。マウス９０８には従来型の左右ボタンが備えられていても良く、ユーザはこれを押すことによって、ＣＰＵ９０２に実行されるソフトウエアプログラムに対してコマンドを入力することが出来る。既に説明して明らかなように、他の適切なコンピュータハードウエアプラットホームであっても適用できる。このようなコンピュータハードウエアプラットフォームは、Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ（登録商標）ＮＴ、Ｗｉｎｄｏｗｓ（登録商標）９８、Ｗｉｎｄｏｗｓ（登録商標）２０００、Ｗｉｎｄｏｗｓ（登録商標）ＸＰ、Ｗｉｎｄｏｗｓ（登録商標）ＭＥ、ＵＮＩＸ（登録商標）、Ｌｉｎｕｘ（登録商標）、あるいはＭＡＣ  ＯＳオペレーティングシステムを操作可能であることが好ましい。
【００５３】
付随のコンピュータプロセッシングユニットやハードウエアデバイス（例えば、ビデオ、数値制御、およびプリンタ装置）が、コンピュータ制御のモデリングシステム９００に含まれていても良い。更に、コンピュータ制御モデリングシステム９００はネットワーク用のハードウエアおよびソフトウェアを備えていてもよく、これによりＣＰＵと保存システムを具備したハードウエアプラットフォーム９１２との通信が、他のコンピュータコンポネントとの間で可能となる。
【００５４】
コンピュータ利用のデザインモデリングソフトウェアは、保存デバイス９１０に格納されており、ＣＰＵ９０２によってロードされたり実行されたりする。このモデリングソフトウェアによって、デザイナーは３Ｄモデルを作成し修正することが可能となり、ここに説明された発明の態様を実施することが出来る。ＣＰＵ９０２はＣＲＴ９０４を利用して３Ｄモデルや後により詳細に説明するような他の様相を表示する。キーボード９０６およびマウス９０８を使用することにより、デザイナーは３Ｄモデルに関連したデータを入力しこれを修正することができる。ＣＰＵ９０２は、キーボード９０６およびマウス９０８よりの入力を受理し、処理する。ＣＰＵ９０２は、３Ｄモデルに関連したデータと共に入力内容を処理し、モデリングソフトウェアからのコマンドに応じてＣＲＴ９０４に表示される内容に対応し適応するような変更を加える。更に、モデリングソフトウェアは、１つ以上のボディやそれぞれの特徴の定義を、互いに関してパラメータ的に抑制するような関連性を持たせている。２つの特徴の間にパラメータ的な抑圧関係が存在した場合、１つの特長に対する幾何学的な修正は、もう一方の特徴に対しても幾何学的な修正を及ぼす。
【００５５】
本発明は、ディジタル電子回路中で、あるいはコンピュータハードウェア、ファームウェア、ソフトウェア、またはこれらの複合体中で、実行することが可能である。そのための装置は、プログラムプロセッサによって実行するために機械解読格納デバイス内において明白に体化されたコンピュータプログラム製品において導入可能である。本発明の工程方法は、入力データを操作して出力値を生成することによって本発明を機能させるための指示プログラムを実行させるプログラムプロセッサによって実行される。本発明は、受信したデータや指示および発信したデータや指示と結合される少なくとも１つのプログラムプロセッサ、データ格納システム、少なくとも１つの入力装置、および少なくとも一つの出力装置を備えた、プログラムシステムにおいて実行される１つ以上のコンピュータプログラムに有効に導入することが出来る。それぞれのコンピュータプログラムは、ハイレベル工程あるいはオブジェクト指向のプログラミング言語、あるいは要望に応じてアセンブリや機械言語中に導入可能であり、いずれにしても、言語は規格化されたあるいは解釈された言語であればよい。限定される例ではないが、プロセッサには一般的な目的と特殊な目的のマイクロプロセッサが備えられていることが好ましい。一般に、プロセッサはリード・オンリー・メモリ、および／または、ランダム・アクセス・メモリから指示やデータを受信する。コンピュータプログラムの指示およびデータを明言化するのに適した保存デバイスとしては、ＥＰＲＯＭ、ＥＥＰＲＯＭ、およびフラッシュメモリデバイスのような半導体メモリデバイスを例とする全形態の非揮発性メモリ、内蔵式のハードディスクおよびリムーバブルディスクのような磁気ディスク、光磁気ディスク、およびＣＤ−ＲＯＭディスクが挙げられる。上記のいずれであっても、特注設計のＡＳＩＣｓ（ａｐｐｒｉｃａｔｉｏｎ−ｓｐｅｃｉｆｉｃ  ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔｓ）によって補充されているか、あるいは連携されている。
【００５６】
本発明の多くの実施形態は説明された。しかし、本発明の精神および範囲を逸脱することなく、様々な修正が可能であることは理解されよう。例えば、実施においては、各操作が実行される順番が変更されてもよい。例えば、図３に示したステップ３０６、３０８および３１２で構成されたループは、ステップ３０８および３１２によって構成されるループに変更されても良い（すなわち、押し出し方向と平滑化パラメータは手順３００の中で１度だけ指定される）。更に、実施の必要に応じて、ここに記述された特有の操作は、結合された操作として実行されてもよいし、除去されたり、付加されたり、あるいは再整理されても構わない。それゆえ、他の実施形態は本明細書に示す請求項の範囲に含まれる。
【図面の簡単な説明】
【００５７】
【図１】ウィンドウに表示されたモデルの説明図である。
【図２Ａ】ターゲットボディおよびツールボディの説明図である。
【図２Ｂ】ターゲットボディおよびツールボディの説明図である。
【図２Ｃ】機能的モデリング技術を使用して生成される結果の説明図である。
【図３】１つ以上のターゲットボディを変形する手順のフローチャートである。
【図４】１つ以上のターゲットボディを変形する手順のフローチャートである。
【図５Ａ】ターゲットボディおよびツールボディの説明図である。
【図５Ｂ】極値表面の説明図である。
【図５Ｃ】平滑面の説明図である。
【図６Ａ】ブラケットの説明図である。
【図６Ｂ】ブラケットおよびツールボディの説明図である。
【図６Ｃ】変形したブラケットの説明図である。
【図７Ａ】ターゲットボディおよび３つのツールボディの説明図である。
【図７Ｂ】変形したターゲットボディおよび３つのツールボディの説明図である。
【図８Ａ】ターゲットボディの説明図である。
【図８Ｂ】ターゲットボディおよびツールボディの説明図である。
【図８Ｃ】変形したターゲットボディの説明図である。
【図８Ｄ】変形したターゲットボディの説明図である。
【図９】コンピュータシステムの図である。
【符号の説明】
【００５８】
１０２、２０２、６０２、７０２  ウィンドウ
１０４  ３Ｄモデル
１０６、２０６、６０４、７０４  モデリング領域
１０８  機能リスト
１０５  給紙ローラ対
２０４  ターゲットボディ
２０８  ツールボディ
２１０〜２２０    付加面
５０２  ターゲットボディ
５０４  ツールボディ
５０６  極値表面
５０８  押し出し方向
５１０  平滑化面
６０８  垂直面
６１０  水平面
６１２  屈曲部
６１４  Ｌ型ツールボディ
６２０  コンビネーションボックス
６２２  セクションボックス
６２４  矢印ボタン
６２６  変形領域グループボックス
６２８  ユーザ・インタフェイス・コントロール
６３０  ツールボディコントロール
６３２  変形領域コンビネーションボックス
７０８  変形ツール
７１０  ターゲットボディ
８０２  ターゲットボディ
８０４  ツールボディ
９００  コンピュータ制御のモデリングシステム
９０２  ＣＰＵ
９０４  ＣＲＴ
９０６  キーボード入力装置
９０８  マウス入力装置
９１０  保存デバイス
９１２  ハードウェアプラットフォーム
【図１】
0004721764.tif 000002
【図２Ａ】
0004721764.tif 000003
【図２Ｂ】
0004721764.tif 000004
【図２Ｃ】
0004721764.tif 000005
【図３】
0004721764.tif 000006
【図４】
0004721764.tif 000007
【図５Ａ】
0004721764.tif 000008
【図５Ｂ】
0004721764.tif 000009
【図５Ｃ】
0004721764.tif 000010
【図６Ａ】
0004721764.tif 000011
【図６Ｂ】
0004721764.tif 000012
【図６Ｃ】
0004721764.tif 000013
【図７Ａ】
0004721764.tif 000014
【図７Ｂ】
0004721764.tif 000015
【図８Ａ】
0004721764.tif 000016
【図８Ｂ】
0004721764.tif 000017
【図８Ｃ】
0004721764.tif 000018
【図８Ｄ】
0004721764.tif 000019
【図９】
0004721764.tif 000020