(57)【特許請求の範囲】
【請求項１】
コンピュータが記憶媒体から読み取り又は入力装置からコンピュータに入力される軌道曲線のデータを入力する過程と、
コンピュータが記憶媒体から読み取り又は入力装置からコンピュータに入力される複数の断面曲線のデータを入力する過程と、
コンピュータが、前記軌道曲線と前記複数の断面曲線との位置関係より得られる各断面に対応するパラメータと前記複数の断面曲線のデータに基づき軌道なしスキニング曲面を生成する過程と、
コンピュータが、前記軌道曲線と、この軌道曲線上の各断面曲線との位置関係より得られる各対応点を補間して生成される曲線との差分を算出する過程と、
コンピュータが、前記軌道なしスキニング曲面上の制御点と前記差分を考慮した前記記憶媒体に記憶されている演算式情報を用いた論理演算により得られる制御点を、目的とするスキニング曲面上の制御点とする演算処理によりスキニング曲面を生成する過程と、
を具備する軌道に沿ったスキニング曲面の生成方法。
【請求項２】
前記スキニング曲面を生成する過程における前記論理演算は、前記軌道なしスキニング曲面上の制御点をＰi,j、前記軌道曲線上の制御点をＱSj、前記補間曲線上の制御点を
【数１】
0003934299.tif 000035
としたとき、
【数２】
0003934299.tif 000036
なる演算式によりコンピュータが制御点を演算する処理である、
請求項１記載の軌道に沿ったスキニング曲面の生成方法。
【請求項３】
前記軌道曲線の形状の変更により、コンピュータが、前記軌道曲線上の制御点を結果となる目的のスキニング曲面上の制御点に反映させてこの目的のスキニング曲面の形状を変更させる過程、
を含む請求項１又は２記載の軌道に沿ったスキニング曲面の生成方法。
【請求項４】
前記軌道曲線、複数の断面曲線及び生成される目的のスキニング曲面は、コンピュータにより非一様有理Ｂ-spline（ＮＵＲＢＳ）形式で表現される、
請求項１，２又は３記載の軌道に沿ったスキニング曲面の生成方法。
【請求項５】
情報を入力する入力部と、情報を出力する出力部と、情報を記憶保存する記憶部と、
前記記憶部に保存され、スキニング曲面の算出に必要な演算式情報を記憶する演算ファイルと、
前記入力部の入力操作によって、軌道曲線のデータと複数の断面曲線のデータとを入力する操作対象入力手段と、
前記記憶部に保存された前記演算式情報を用いて、前記軌道曲線と前記複数の断面曲線との位置関係より得られる各断面に対応するパラメータと前記複数の断面曲線のデータに基づき軌道なしスキニング曲面を生成する軌道なしスキニング曲面生成手段と、
前記記憶部に保存された前記演算式情報を用いて、前記軌道曲線と、この軌道曲線上の各断面曲線との位置関係より得られる各対応点を補間して生成される曲線との差分を算出する差分算出手段と、
前記記憶部に保存された前記演算式情報を用いて、前記軌道なしスキニング曲面上の制御点と前記差分を考慮した論理演算により得られる制御点を、目的とするスキニング曲面上の制御点とする演算処理により前記スキニング曲面を生成するスキニング曲面生成手段と、
このスキニング曲面生成手段により生成されたスキニング曲面を前記出力部に出力する出力手段と、
を具備する軌道に沿ったスキニング曲面の生成装置。
【請求項６】
前記記憶部に保存された前記演算式情報の一つであって、前記スキニング曲線生成手段で用いられる前記論理演算のための情報は、前記補間曲線上の制御点をＰi,j、前記軌道曲線上の制御点をＱSj、前記補間曲線上の制御点を、
【数３】
0003934299.tif 000037
としたとき、
【数４】
0003934299.tif 000038
なる演算式により制御点を演算するための情報である、
請求項５記載の軌道に沿ったスキニング曲面の生成装置。
【請求項７】
前記操作対象入力手段は、前記軌道曲線の形状の変更により、前記軌道曲線上の制御点を結果となる目的のスキニング曲面上の制御点に反映させてこの目的のスキニング曲面の形状を変更させる入力処理を含む、
請求項５又は６記載の軌道に沿ったスキニング曲面の生成装置。
【請求項８】
前記軌道曲線、複数の断面曲線及び生成される目的のスキニング曲面は、非一様有理Ｂ-spline（ＮＵＲＢＳ）形式で表現される、
請求項５，６又は７記載の軌道に沿ったスキニング曲面の生成装置。
【請求項９】
軌道曲線のデータを入力する処理と、複数の断面曲線のデータとを入力する処理と、
前記軌道曲線と前記複数の断面曲線との位置関係より得られる各断面に対応するパラメータと複数の断面曲線のデータに基づき軌道なしスキニング曲面を生成する処理と、
前記軌道曲線と、この軌道曲線上の各断面曲線との位置関係より得られる各対応点を補間して生成される曲線との差分を算出する処理と、
前記軌道なしスキニング曲面上の制御点と前記差分を考慮した論理演算により得られる制御点を、目的とするスキニング曲面上の制御点とする演算処理によりスキニング曲面を生成する処理と、
をコンピュータに実行させるプログラムを格納しているコンピュータ読取り可能な記憶媒体。
【請求項１０】
前記スキニング曲面を生成する処理における前記論理演算は、前記補間曲線上の制御点をＰi,j、前記軌道曲線上の制御点をＱSj、前記補間曲線上の制御点を
【数５】
0003934299.tif 000039
としたとき、
【数６】
0003934299.tif 000040
なる演算式により制御点を演算する処理である、
請求項９記載の記憶媒体。
【請求項１１】
コンピュータに、前記軌道曲線の形状の変更により、前記軌道曲線上の制御点を結果となる目的のスキニング曲面上の制御点に反映させてこの目的のスキニング曲面の形状を変更させる処理を、
さらに実行させるコンピュータ読み取り可能なプログラムを格納している請求項９又は１０記載の記憶媒体。
【請求項１２】
前記軌道曲線、複数の断面曲線及び生成される目的のスキニング曲面は、非一様有理Ｂ-spline（ＮＵＲＢＳ）形式で表現される
請求項９，１０又は１１記載の記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＣＡＤ／ＣＡＭを用いて、軌道曲線の形状を参照しながら複数の断面曲線を補間してスキニング曲面なる３次元形状を生成するための、軌道に沿ったスキニング曲面の生成方法、生成装置及び記憶媒体に関する。
【０００２】
【従来の技術】
ＣＡＤ／ＣＡＭ等のコンピュータを利用して３次元形状を設計する上で、例えば、軌道曲線を参照しながら複数の断面曲線を補間して、目的とするスキニング曲面を生成する方法は重要な方法の一つである。ここに、スキニング曲面の生成法に関して、Ｌeslie Ｐiegl and Ｗayne Ｔiller，“Ｔhe ＮＵＲＢＳ Ｂook”Ｓpringer-Ｖerlag 1995.なる文献によれば、生成した曲面の形状を制御するために、軌道曲線上の点の接線方向を利用する技術が開示されている。
【０００３】
【発明が解決しようとする課題】
ところが、この文献に記載された生成法による場合、軌道曲線の形状を目的とするスキニング曲面の形状に十分に反映させることができない不具合がある。例えば、異なる軌道曲線に基づいてスキニング曲面を生成する場合には、異なるスキニング曲面が生成されることが望ましいにも関わらず、それらの軌道曲線が同じ接線方向を持つときには、得られるスキニング曲面が同じになってしまう。また、接線方向を利用する場合、各制御点での出だしの方向が一旦接線方向に方向付けされてしまうため、生成されるスキニング曲面がうねりやすく、或いは、うねりの大きなものとなつてしまい、軌道曲線の形状とスキニング曲面との違いが大きすぎる不自然な形状となる。
【０００４】
そこで、本発明は、軌道曲線の形状を生成されるスキニング曲面の形状に良好に反映させ得る軌道に沿ったスキニング曲面の生成方法、生成装置及び記憶媒体を提供することを目的とする。
【０００５】
併せて、生成されるスキニング曲面の形状の変更が容易な軌道に沿ったスキニング曲面の生成方法、生成装置及び記憶媒体を提供することを目的とする。
【０００６】
さらには、非一様有理Ｂ-spline（ＮＵＲＢＳ）形式で表現される軌道曲線や複数の断面曲線にも対応し得る軌道に沿ったスキニング曲面の生成方法、生成装置及び記憶媒体を提供することを目的とする。
【０００７】
【課題を解決するための手段】
請求項１記載の発明の軌道に沿ったスキニング曲面の生成方法は、コンピュータが記憶媒体から読み取り又は入力装置からコンピュータに入力される軌道曲線のデータを入力する過程と、コンピュータが記憶媒体から読み取り又は入力装置からコンピュータに入力される複数の断面曲線のデータを入力する過程と、コンピュータが、前記軌道曲線と前記複数の断面曲線との位置関係より得られる各断面に対応するパラメータと前記複数の断面曲線のデータに基づき軌道なしスキニング曲面を生成する過程と、コンピュータが、前記軌道曲線と、この軌道曲線上の各断面曲線との位置関係より得られる各対応点を補間して生成される曲線との差分を算出する過程と、コンピュータが、前記軌道なしスキニング曲面上の制御点と前記差分を考慮した前記記憶媒体に記憶されている演算式情報を用いた論理演算により得られる制御点を、目的とするスキニング曲面上の制御点とする演算処理によりスキニング曲面を生成する過程と、を具備する軌道に沿ったスキニング曲面の生成方法。
【０００８】
即ち、入力された軌道曲線の形状を参照しながら、複数の断面曲線を補間して目的とするスキニング曲面を生成する軌道に沿ったスキニング曲面の生成方法において、軌道曲線上の制御点と、軌道なしに生成したスキニング曲面（補間曲面）上の制御点との論理演算によって得られる制御点を、結果となる目的のスキニング曲面上の制御点とするようにして、スキニング曲面を生成するものである。
【０００９】
従って、軌道なしに生成される補間曲線と軌道曲線との間に生ずる差分を考慮して、補間曲線を補正しながら目的とするスキニング曲面を生成することで、軌道曲線の形状が十分に反映された良好なるスキニング曲面を生成できる。
【００１０】
請求項２記載の発明は、前記スキニング曲面を生成する過程における前記論理演算は、前記軌道なしスキニング曲面上の制御点をＰi,j、前記軌道曲線上の制御点をＱSj、前記補間曲線上の制御点を
【数７】
0003934299.tif 000002
としたとき、前記記憶媒体に記憶された
【数８】
0003934299.tif 000003
なる演算式によりコンピュータが制御点を演算する処理である。
【００１１】
従って、請求項１記載の発明を実現するための論理演算式が具体的に明らかとなる。
【００１２】
請求項３記載の発明は、前記軌道曲線の形状の変更により、コンピュータが、前記軌道曲線上の制御点を結果となる目的のスキニング曲面上の制御点に反映させてこの目的のスキニング曲面の形状を変更させる過程、を含む。
【００１３】
従って、元々入力すべき軌道曲線の形状を変更することにより、目的とするスキニング曲面の形状も容易に変更することができる。
【００１４】
請求項４記載の発明は、前記軌道曲線、複数の断面曲線及び生成される目的のスキニング曲面は、コンピュータにより非一様有理Ｂ−spline（ＮＵＲＢＳ）形式で表現される。
【００１５】
従って、一般的な非一様有理Ｂ-spline（ＮＵＲＢＳ）形式で表現される軌道曲線や複数の断面曲線に対応できる。
【００１６】
請求項５記載の発明の軌道に沿ったスキニング曲面の生成装置は、情報を入力する入力部と、情報を出力する出力部と、情報を記憶保存する記憶部と、前記記憶部に保存され、スキニング曲面の算出に必要な演算式情報を記憶する演算ファイルと、前記入力部の入力操作によって、軌道曲線のデータと複数の断面曲線のデータとを入力する操作対象入力手段と、前記記憶部に保存された前記演算式情報を用いて、前記軌道曲線と前記複数の断面曲線との位置関係より得られる各断面に対応するパラメータと前記複数の断面曲線のデータに基づき軌道なしスキニング曲面を生成する軌道なしスキニング曲面生成手段と、前記記憶部に保存された前記演算式情報を用いて、前記軌道曲線と、この軌道曲線上の各断面曲線との位置関係より得られる各対応点を補間して生成される曲線との差分を算出する差分算出手段と、前記記憶部に保存された前記演算式情報を用いて、前記軌道なしスキニング曲面上の制御点と前記差分を考慮した論理演算により得られる制御点を、目的とするスキニング曲面上の制御点とする演算処理により前記スキニング曲面を生成するスキニング曲面生成手段と、このスキニング曲面生成手段により生成されたスキニング曲面を前記出力部に出力する出力手段と、を具備する。
【００１７】
従って、軌道なしに生成される補間曲線と軌道曲線との間に生ずる差分を考慮して、補間曲線を補正しながら目的とするスキニング曲面を生成することで、軌道曲線の形状が十分に反映された良好なるスキニング曲面を生成できる。
【００１８】
請求項６記載の発明は、前記記憶部に保存された前記演算式情報の一つであって、前記スキニング曲線生成手段で用いられる前記論理演算のための情報は、前記補間曲線上の制御点をＰi,j、前記軌道曲線上の制御点をＱSj、前記補間曲線上の制御点を、
【数９】
0003934299.tif 000004
としたとき、
【数１０】
0003934299.tif 000005
なる演算式により制御点を演算するための情報である。
【００１９】
従って、請求項５記載の発明を実現するための論理演算式が具体的に明らかとなる。
【００２０】
請求項７記載の発明は、請求項５又は６記載の軌道に沿ったスキニング曲面の生成装置において、前記操作対象入力手段は、前記軌道曲線の形状の変更により、前記軌道曲線上の制御点を結果となる目的のスキニング曲面上の制御点に反映させてこの目的のスキニング曲面の形状を変更させる入力処理を含む。
【００２１】
従って、元々入力すべき軌道曲線の形状を入力部を通じて変更することにより、目的とするスキニング曲面の形状も容易に変更することができる。
【００２２】
請求項８記載の発明は、請求項５，６又は７記載の軌道に沿ったスキニング曲面の生成装置において、前記軌道曲線、複数の断面曲線及び生成される目的のスキニング曲面は、非一様有理Ｂ-spline（ＮＵＲＢＳ）形式で表現される。
【００２３】
従って、一般的な非一様有理Ｂ-spline（ＮＵＲＢＳ）形式で表現される軌道曲線や複数の断面曲線に対応できる。
【００２４】
請求項９記載の発明のコンピュータ読取り可能な記憶媒体は、軌道曲線のデータを入力する処理と、複数の断面曲線のデータとを入力する処理と、前記軌道曲線と前記複数の断面曲線との位置関係より得られる各断面に対応するパラメータと複数の断面曲線のデータに基づき軌道なしスキニング曲面を生成する処理と、前記軌道曲線と、この軌道曲線上の各断面曲線との位置関係より得られる各対応点を補間して生成される曲線との差分を算出する処理と、前記軌道なしスキニング曲面上の制御点と前記差分を考慮した論理演算により得られる制御点を、目的とするスキニング曲面上の制御点とする演算処理によりスキニング曲面を生成する処理と、をコンピュータに実行させるプログラムを格納している。
【００２５】
従って、当該記憶媒体に格納されたプログラムをコンピュータに実行させることにより、軌道なしに生成される補間曲線と軌道曲線との間に生ずる差分を考慮して、補間曲線を補正しながら目的とするスキニング曲面を生成することで、軌道曲線の形状が十分に反映された良好なるスキニング曲面を生成できる。
【００２６】
請求項１０記載の発明は、前記スキニング曲面を生成する処理における前記論理演算は、前記補間曲線上の制御点をＰi,j、前記軌道曲線上の制御点をＱSj、前記補間曲線上の制御点を
【数１１】
0003934299.tif 000006
としたとき、
【数１２】
0003934299.tif 000007
なる演算式により制御点を演算する処理である。
【００２７】
従って、請求項９記載の発明を実現するための論理演算式が具体的に明らかとなる。
【００２８】
請求項１１記載の発明は、コンピュータに、前記軌道曲線の形状の変更により、前記軌道曲線上の制御点を結果となる目的のスキニング曲面上の制御点に反映させてこの目的のスキニング曲面の形状を変更させる処理を、さらに実行させるコンピュータ読み取り可能なプログラムを格納している。
【００２９】
従って、元々入力すべき軌道曲線の形状を変更することにより、目的とするスキニング曲面の形状も容易に変更することができる。
【００３０】
請求項１２記載の発明は、請求項９，１０又は１１記載の記憶媒体において、前記軌道曲線、複数の断面曲線及び生成される目的のスキニング曲面は、非一様有理Ｂ-spline（ＮＵＲＢＳ）形式で表現される。
【００３１】
従って、一般的な非一様有理Ｂ-spline（ＮＵＲＢＳ）形式で表現される軌道曲線や複数の断面曲線に対応できる。
【００３２】
【発明の実施の形態】
本発明の一実施の形態を図面に基づいて説明する。図１は、本発明が適用されるＣＡＤ／ＣＡＭなるコンピュータシステムの概略構成例を示すブロック図である。まず、各種の演算処理を実行して各部を集中的に制御するＣＰＵ１が設けられている。このＣＰＵ１には、固定データを予め記憶するＲＯＭ２と可変データを書換え自在に記憶してワークエリア等として用いられるＲＡＭ３とがシステムバス４を介して接続され、マイクロコンピュータ５が構成されている。このようなマイクロコンピュータ５には、システムバス４を介してオペレーティングシステムやコンピュータ読取り可能なプログラムである動作プログラムを格納する記憶部としてのＨＤＤ（ハードディスクドライブ）６も接続されており、装置の起動時、必要なオペレーティングシステムの他、動作プログラムも適宜ＲＡＭ３に転送され、動作プログラムに従った駆動制御がなされる。従って、本実施の形態では、ＨＤＤ６に動作プログラムがインストールされており、そのＨＤＤ６がコンピュータ読取り可能な動作プログラムを格納する記憶媒体として機能する。
【００３３】
もっとも、動作プログラムは、例えばＲＯＭ２に予め記憶されたファームウェア構成となっていてもよく、また、マイクロコンピュータ５にシステムバス４を介して接続されたＣＤ−ＲＯＭドライブ７によって読取り可能なＣＤ−ＲＯＭ８であってもよく、或いは、同様に、ＭＯドライブ、ＤＶＤドライブ、ＣＤ−Ｒドライブ等のような光ディスクドライブによって読取り可能なＭＯ，ＤＶＤ，ＣＤ−Ｒ等のディスクに格納されていてもよい。つまり、コンピュータ読取り可能な動作プログラムを格納する記憶媒体としては、その種類を問わない。さらには、通信制御装置９を介してインタネットなどのネットワーク１０から動作プログラムをダウンロードし、ＨＤＤ６にインストールするようにしてもよい。
【００３４】
また、ＣＰＵ１を主体とするマイクロコンピュータ５には、システムバス４、コントローラ（図示せず）等を介して入力部としての入力装置１１や出力部としての出力装置１２が接続されている。入力装置１１は、表示装置（出力装置１２）に表示された断面曲線の形状、軌道曲線の形状を受け付けるためのキーボード、マウスなどにより構成されている。この入力装置１１による入力操作を通じて入力される断面曲線の形状又は軌道曲線の形状は、これらの形状を構成する点、曲線などの幾何形状データと、幾何形状データの相関関係を示す位相データとからなっている。出力装置１２は、ＨＤＤ６やＲＡＭ３などに記憶された形状を読み出し出力するもので、ディスプレイのような表示装置やプリンタのような装置より構成されている。
【００３５】
記憶部としてのＨＤＤ６には、後述するようなスキニング曲面の算出に必要な各種の演算式情報が演算ファイルの形で予め記憶されている。
【００３６】
このような基本的なコンピュータシステム構成の下、マイクロコンピュータにより実行される軌道に沿ったスキニング曲面を生成するための処理制御方法について図２に示すフローチャートを参照しつつ説明する。
【００３７】
まず、予め断面曲線、軌道曲線に関する情報を読み込み、ＨＤＤ６へ格納しておく（ステップＳ１）。そして、ユーザはマウスなどの入力装置１１の操作により、操作対象となる断面曲線、軌道曲線を選択する。例えば、図３に示すような複数の断面曲線、軌道曲線をマウスなどの入力装置１１でクリックして選択する。このように入力装置１１を通じて入力・選択処理が行われたことを確認した後（Ｓ２のＹ）、以下の処理に移行する。ここに、ステップＳ１，Ｓ２までの処理が、入力装置１１の入力操作によって、軌道曲線のデータと複数の断面曲線のデータとを入力する操作対象入力手段の機能、或いは、入力する処理として実行される。
【００３８】
ここで、曲線補間と曲面スキニングの基本について説明する。詳細には、前述したＬeslie Ｐiegl and Ｗayne Ｔiller，“Ｔhe ＮＵＲＢＳ Ｂook”Ｓpringer-Ｖerlag 1995.なる文献に記載されている技術を参照するものである。
【００３９】
まず、点列ｑk，ｋ＝０，…，ｍが与えられたとし、これらの点を通過するように１本のＢ-spline曲線を生成する。ただし、Ｂ-spline曲線の幾つかのパラメータｖk，ｋ＝０，…，ｍにおいて、Ｂ-spline曲線上の位置と点ｑkが一致する。つまり、次の（１）式が成立する。
【００４０】
【数１３】
0003934299.tif 000008
【００４１】
ここで、Ｐiは曲線上の制御点であり、Ｎi,q(ｖk)はノットベクトルＴにより定義されたｑ次の正規化されたＢ-spline関数である。本実施の形態では、このノットベクトルＴは、次の（２）式で示す形式を持つものと仮定する。
【００４２】
【数１４】
0003934299.tif 000009
【００４３】
一方、曲線補間方法は、Ｂ-spline曲面のスキニングに容易に拡張できる。与えられたＢ-spline関数の断面曲線群を補間して１枚のＢ-spline曲面を生成する方法は、次の３つのステップより構成される。
【００４４】
まず、全ての断面曲線をcompatibility化（等化）する。つまり、全ての断面曲線の次数、制御点の数、ノットベクトルが同じになるように調整する。調整した結果によれば、ノットベクトルＵにより定義される曲面のｕ方向の曲線Ｃｒ(ｕ)は、（３）式で表される。
【００４５】
【数１５】
0003934299.tif 000010
【００４６】
次に、曲面のｖ方向における各断面曲線のパラメータ値ｖr，ｒ＝０，…，Ｒとｖ方向のノットベクトルＶとを適切に設定する。
【００４７】
ついで、各ｉ，ｉ＝０，…，ｎに対して、（１）式に示した曲線補間方法を（３）式の全ての制御点Ｑi,rに適用して（４）式の方程式を解く。
【００４８】
【数１６】
0003934299.tif 000011
【００４９】
この（４）式の制御点Ｐi,jは、結果的には、次の（５）式に示すスキニング曲面Ｓ1(ｕ，ｖ)の制御点となる。
【００５０】
【数１７】
0003934299.tif 000012
【００５１】
このような曲線補間と曲面スキニングとに関する基本方法の下、本実施の形態では、次のようなステップにより１枚のＢ-spline曲面を生成する。なお、本実施の形態では、全ての断面曲線、軌道曲線はＢ-spline曲線（ＮＵＲＢＳ形式の曲線）であり、各々次の（６）（７）式により表現されるものと仮定する。
【００５２】
【数１８】
0003934299.tif 000013
【００５３】
まず、軌道曲線における各断面曲線の対応点とパラメータを決定する（Ｓ３）。例えば、断面曲線が載る平面と軌道曲線との交点を対応点とする方法を利用できる。即ち、図４に示すように、軌道曲線における各断面曲線の対応点をｑj，ｊ＝０，…，Ｒとし、軌道曲線における各々の点のパラメータをｖj，ｊ＝０，…，Ｒとする。ここでは、説明を容易にするため、ｑ0とｑRを各々軌道曲線の始点と終点とし、また、各々のパラメータを０．０，１．０とする。
【００５４】
次に、（１）式に示すＢ-spline曲線の補間方法を軌道曲線上の全ての対応点とパラメータに適用する（Ｓ４）。このステップＳ４の処理が、軌道なしスキニング曲面生成手段の機能、或いは、軌道なしスキニング曲面を生成する処理として実行される。Ｂ-spline曲線の位数（次数＋１）は断面曲線の数により決定し得る。例えば、断面曲線の数が３以下の場合には、位数を断面曲線の数とし、それ以外の場合には位数を４にする。また、対応点のパラメータ値の分布を反映したノットベクトルＶが必要となるが、このノットベクトルＶとして（８）式に示すものが実用上有効である。
【００５５】
【数１９】
0003934299.tif 000014
【００５６】
（８）式において、両端のノットの多重度は（ｑ＋１）であり、中間ノットは（９）式により計算される。
【００５７】
【数２０】
0003934299.tif 000015
【００５８】
また、補間曲線
【数２１】
0003934299.tif 000016
は（１０）式により表現されると仮定する。
【００５９】
【数２２】
0003934299.tif 000017
【００６０】
図４は与えられた軌道曲線と生成された補間曲線との一例を示す。
【００６１】
一方、前述したようなＢ-spline曲面のスキニングを全ての断面曲線に適用し、補間曲面Ｓ１(ｕ，ｖ)を生成する（Ｓ５）。即ち、軌道なしのスキニング曲面の生成である。ただし、ｖ方向（スキニングする方向）のパラメータ値は図４を参照して前述した対応点のパラメータ値を利用するものとする。また、ｖ方向のノットベクトルは（９）式により計算される。補間曲面Ｓ１(ｕ，ｖ)は、図５を参照すれば、（１１）式により表現される。
【００６２】
【数２３】
0003934299.tif 000018
【００６３】
ついで、軌道曲線Ｃs(ｖ)と補間曲線
【数２４】
0003934299.tif 000019
とをcompatibility化（等化）する。同時に、補間曲面Ｓ１(ｕ，ｖ)のｖ方向を軌道曲線Ｃs(ｖ)と補間曲線
【数２５】
0003934299.tif 000020
とにcompatibility化（等化）させる（Ｓ６）。この結果、軌道曲線Ｃs(ｖ)、補間曲線
【数２６】
0003934299.tif 000021
、補間曲面Ｓ１(ｕ，ｖ)のｖ方向は、同じ次数ｑ、制御点の数ｍ2、ノットベクトルＶを持つ。
【００６４】
このようにcompatibility化（等化）した後の補間曲面Ｓ１(ｕ，ｖ)のｖ方向の等パラメータ曲線
【数２７】
0003934299.tif 000022
は、（１２）式により表現できる。
【００６５】
【数２８】
0003934299.tif 000023
【００６６】
ここに、本実施の形態では、軌道曲線Ｃs(ｖ)と補間曲線
【数２９】
0003934299.tif 000024
との差分を、生成するスキニング曲面
【数３０】
0003934299.tif 000025
の等パラメータ曲線に反映させることを考える（Ｓ７）。つまり、次の（１３）式で示される曲面である。
【００６７】
【数３１】
0003934299.tif 000026
【００６８】
この際、
【数３２】
0003934299.tif 000027
という性質により、（１４）式が成り立つ。
【００６９】
【数３３】
0003934299.tif 000028
【００７０】
（１４）式を（１３）式に代入すると、（１５）式が得られる。
【００７１】
【数３４】
0003934299.tif 000029
【００７２】
よって、生成するスキニング曲面Ｓ(ｕ，ｖ)は、（１６）式で表現できる。
【００７３】
【数３５】
0003934299.tif 000030
【００７４】
ここで、
【数３６】
0003934299.tif 000031
である。この（１７）式が本発明における論理演算式を示している。このステップＳ７の処理が、差分算出手段及びスキニング曲面生成手段の機能、或いは、差分を算出する処理及びスキニング曲線を生成する処理として実行される。
【００７５】
このようにして得られた結果としての軌道に沿ったスキニング曲面Ｓ(ｕ，ｖ)は、例えば図６に示すような１枚のＢ-spline曲面であり、以下のような性質を持つ。
【００７６】
まず、このスキニング曲面Ｓ(ｕ，ｖ)は（１８）式より全ての断面曲線を補間する。
【００７７】
【数３７】
0003934299.tif 000032
【００７８】
また、軌道曲線の形状を変更し、かつ、軌道曲線Ｃs(ｖ)と補間曲線
【数３８】
0003934299.tif 000033
との差分が存在すれば、結果となるスキニング曲面の形状も変更される。つまり、元々入力すべき軌道曲線の形状を変更することにより、目的とするスキニング曲面の形状も容易に変更することができる。
【００７９】
さらに、各断面曲線と軌道曲線との交点が存在し、かつ、その交点を軌道曲線上の対応点として利用する場合には、全ての断面曲線における交点のパラメータが同じであれば、軌道曲線は結果となるスキニング曲面Ｓ(ｕ，ｖ)の等パラメータ線となる。これは、これらの交点を補間する曲面Ｓ1(ｕ，ｖ)の等パラメータ線は補間曲線
【数３９】
0003934299.tif 000034
と全く同じであるためである。
【００８０】
また、断面曲線のうち、ＮＵＲＢＳ曲線が存在する場合、又は、軌道曲線がＮＵＲＢＳ曲線である場合には、これらの曲線をＢ-spline曲線に近似変換した後、前述した方法を利用すればよい。近似方法としては、例えば、Ｙoshimasa Ｔokuyama，Ｋouichi Ｋonno，“Ａpproximate conversion of a rational boundary Ｇregory Ｐatch to a nonuniform Ｂ-spline surface”，Ｔhe Ｖisual Ｃomputer，Ｖol.11，Ｎo．７，Ｓep．1995，pp.360-368なる文献の記載を利用すればよい。
【００８１】
このような処理を経て最終的に生成されたスキニング曲面をＨＤＤ６へ書き出すことにより（Ｓ８）、一連の処理が終了する。併せて、生成されたスキニング曲面が出力装置１２に対して出力され、ディスプレイ表示される。この処理が、出力手段の機能として実行される。
【００８２】
図７は、より具体的に生成された軌道に沿ったスキニング曲面の一例を示しており、軌道曲線の形状が反映された滑らかな曲面として生成されているのが分かる。
【００８３】
【発明の効果】
請求項１，５及び９記載の発明によれば、軌道なしに生成される補間曲線と軌道曲線との間に生ずる差分を考慮して、補間曲線を補正しながら目的とするスキニング曲面を生成することで、軌道曲線の形状が十分に反映された良好なるスキニング曲面を生成することができる。
【００８４】
請求項２，６及び１０記載の発明によれば、請求項１，５及び９記載の発明を実現するための論理演算式が具体的に明らかとなる。
【００８５】
請求項３，７及び１１記載の発明によれば、元々入力すべき軌道曲線の形状を変更することにより、目的とするスキニング曲面の形状も容易に変更することができる。
【００８６】
請求項４，８及び１２記載の発明によれば、一般的な非一様有理Ｂ-spline（ＮＵＲＢＳ）形式で表現される軌道曲線や複数の断面曲線について対応することができる。
【図面の簡単な説明】
【図１】本発明の一実施の形態のコンピュータシステムの概略構成例を示すブロック図である。
【図２】スキニング曲面生成処理例を示すフローチャートである。
【図３】断面曲線と軌道曲線との例を示す特性図である。
【図４】軌道曲線と補間曲線との対応を示す特性図である。
【図５】軌道なしのスキニング曲面の例を示す特性図である。
【図６】軌道に基づいて生成されたスキニング曲面の例を示す特性図である。
【図７】軌道に基づいて生成されたより具体的なスキニング曲面の例を示す特性図である。
【符号の説明】
６      記憶部
１１      入力部
１２      出力部
【図１】
0003934299.tif 000041
【図２】
0003934299.tif 000042
【図３】
0003934299.tif 000043
【図４】
0003934299.tif 000044
【図５】
0003934299.tif 000045
【図６】
0003934299.tif 000046
【図７】
0003934299.tif 000047