(57)【要約】【課題】  基本物体の表面に布や皮革などのシート状物体を張り付けた物品の外観を、良好な質感をもって表現する。【解決手段】  基本物体１０の三次元形状データを、ポリゴンやBezier曲面のデータとしてコンピュータに入力し、物体表面１１に多数のサンプル点Ｑ１〜Ｑ５を定義する(a)。各サンプル点位置に法線ｎ１〜ｎ５を定義し、物体表面１１を外側に向けて膨らませる度合いを示す圧力パラメータＰと、シート状物体の表面張力の強さを示す張力パラメータＴと、を設定し、各サンプル点における物体表面１１の曲がり具合を示す曲率パラメータｋを求める(b)。各サンプル点Ｑ１〜Ｑ５を、法線に沿って外側にｄ＝Ｐ−Ｔ×ｋで求まる移動距離ｄだけ移動して、新サンプル点ＱＱ１〜ＱＱ５を求め、新サンプル点ＱＱ１〜ＱＱ５を含む表面１２を、シート状物体を張り付けた物品の外観表面とする(c)。【選択図】図７
2008299473.tif 000002
【特許請求の範囲】
【請求項１】
三次元の基本物体の表面にシート状物体を張り付けた状態を示す三次元形状データを作成する装置であって、
基本物体の三次元形状データを格納する基本物体データ格納部と、
前記基本物体の表面を外側に向けて膨らませる度合いを示す圧力パラメータＰと、前記シート状物体の表面張力の強さを示す張力パラメータＴと、を設定するパラメータ設定部と、
前記基本物体の表面に多数のサンプル点を定義するサンプル点定義部と、
前記各サンプル点の位置に、前記基本物体外側表面に立てた法線を演算によって求める法線演算部と、
前記各サンプル点の位置における前記基本物体表面の曲がり具合の程度を示す曲率パラメータｋを演算によって求める曲率パラメータ演算部と、
前記各サンプル点について、前記圧力パラメータＰおよび前記張力パラメータＴ、ならびに当該サンプル点について求められた曲率パラメータｋを用いて、移動距離ｄを、ｄ＝Ｐ−Ｔ×ｋなる演算によって求める移動距離演算部と、
前記各サンプル点を、当該サンプル点について求められた法線方向に、当該サンプル点について求められた移動距離ｄだけ移動させ、移動後の位置に新サンプル点を定義する新サンプル点定義部と、
前記新サンプル点に基づいて、前記基本物体の表面にシート状物体を張り付けた状態を示す三次元形状データを作成するシート状物体データ作成部と、
を備えることを特徴とする三次元形状データの作成装置。
【請求項２】
請求項１に記載の作成装置において、
基本物体の表面に固定点を設定する固定点設定部を更に設け、
移動距離演算部が、前記固定点近傍に位置するサンプル点についての移動距離ｄを、所定の移動実効率Ｅ（０≦Ｅ≦１）を用いて、ｄ＝（Ｐ−Ｔ×ｋ）×Ｅなる演算によって求めることを特徴とする三次元形状データの作成装置。
【請求項３】
請求項２に記載の作成装置において、
移動距離演算部が、距離ｒの増加とともに単調増加する移動実効率関数Ｅ（ｒ）を用い（但し、Ｅmin ≦Ｅ（ｒ）≦１）、サンプル点とその最近接固定点との距離ｒに基づいて、当該サンプル点についての移動距離ｄを、ｄ＝（Ｐ−Ｔ×ｋ）×Ｅ（ｒ）なる演算によって求めることを特徴とする三次元形状データの作成装置。
【請求項４】
請求項２または３に記載の作成装置において、
固定点設定部が、基本物体の表面上に固定線を定義することにより当該固定線上の点として固定点の設定を行う機能と、基本物体の表面上に固定領域を定義することにより当該固定領域内の点として固定点の設定を行う機能と、を有することを特徴とする三次元形状データの作成装置。
【請求項５】
請求項１〜４のいずれかに記載の作成装置において、
基本物体データ格納部が、基本物体の三次元形状データを、ポリゴンの集合からなるデータとして格納し、
サンプル点定義部が、前記ポリゴンの各頂点をサンプル点として定義することを特徴とする三次元形状データの作成装置。
【請求項６】
請求項５に記載の作成装置において、
法線演算部が、演算対象となる着目サンプル点の位置に立てた法線を求める際に、前記着目サンプル点を１頂点とするポリゴンを着目ポリゴンとして、各着目ポリゴンの外面に立てた単位法線ベクトルの和として求まる和ベクトルの方向を法線の方向とする処理を行うことを特徴とする三次元形状データの作成装置。
【請求項７】
請求項５または６に記載の作成装置において、
曲率パラメータ演算部が、演算対象となる着目サンプル点の位置における曲率パラメータを求める際に、前記着目サンプル点を１頂点とするポリゴンを着目ポリゴンとし、前記着目サンプル点を一端とする前記各着目ポリゴンの辺を着目辺として、前記着目サンプル点から前記各着目辺に沿って伸びる単位ベクトルの平均として求まる平均ベクトルの大きさに基づいて、曲率パラメータｋの絶対値を決定し、前記平均ベクトルが基本物体の内側に向かう場合は正、外側に向かう場合は負となるように、曲率パラメータｋの符号を決定することを特徴とする三次元形状データの作成装置。
【請求項８】
請求項５〜７のいずれかに記載の作成装置において、
シート状物体データ作成部が、基本物体データ格納部に格納されている基本物体の三次元形状データを参照して、新サンプル点相互の位置関係を認識し、これら新サンプル点を頂点とする新たなポリゴンの集合からなる三次元形状データを作成することを特徴とする三次元形状データの作成装置。
【請求項９】
請求項１〜４のいずれかに記載の作成装置において、
基本物体データ格納部が、基本物体の三次元形状データを、パラメトリック曲面を示す方程式および制御点の座標値を用いて表現されるパラメトリック曲面の集合からなるデータとして格納し、
サンプル点定義部が、前記パラメトリック曲面上の所定点をサンプル点として定義することを特徴とする三次元形状データの作成装置。
【請求項１０】
請求項９に記載の作成装置において、
サンプル点定義部が、パラメトリック曲面の媒介変数を特定の離散値に設定することにより、当該特定の離散値で示される点をサンプル点として定義することを特徴とする三次元形状データの作成装置。
【請求項１１】
請求項９または１０に記載の作成装置において、
法線演算部が、パラメトリック曲面を示す方程式、制御点の座標値、サンプル点を示す媒介変数の離散値に基づいて、当該サンプル点の位置に立てた法線を演算し、
曲率パラメータ演算部が、パラメトリック曲面を示す方程式、制御点の座標値、サンプル点を示す媒介変数の離散値に基づいて、当該サンプル点の位置における曲率パラメータを演算することを特徴とする三次元形状データの作成装置。
【請求項１２】
請求項９〜１１のいずれかに記載の作成装置において、
シート状物体データ作成部が、パラメトリック曲面を示す方程式、新サンプル点の座標値、新サンプル点についての移動前のサンプル点の媒介変数の離散値に基づいて、新パラメトリック曲面の制御点の座標値を演算し、新パラメトリック曲面を示す方程式およびその制御点の座標値を用いて表現される新パラメトリック曲面の集合からなる三次元形状データを作成することを特徴とする三次元形状データの作成装置。
【請求項１３】
請求項９〜１２のいずれかに記載の作成装置において、
基本物体データ格納部が、基本物体の三次元形状データを、２つの媒介変数ｕ，ｖ（０≦ｕ≦１、０≦ｖ≦１）と１６個の制御点の座標値とを用いて表現されるBezier曲面の集合からなるデータとして格納し、
サンプル点定義部が、媒介変数ｕを、０，ｕ′，ｕ″，１の４通りの離散値に設定し（但し、０＜ｕ′＜ｕ″＜１）、媒介変数ｖを、０，ｖ′，ｖ″，１の４通りの離散値に設定し（但し、０＜ｖ′＜ｖ″＜１）、１つのBezier曲面について、これら離散値の組み合わせによって示される合計１６通りのサンプル点を定義することを特徴とする三次元形状データの作成装置。
【請求項１４】
請求項１〜１３のいずれかに記載の作成装置において、
パラメータ設定部が、圧力パラメータＰとして、基本物体の表面を外側に向けて膨らませる基準寸法値を設定し、張力パラメータＴとして、０＜Ｔ≦Ｐなる寸法値を設定し、
曲率パラメータ演算部が、曲率パラメータｋとして、−１≦ｋ≦１なる値を求めることを特徴とする三次元形状データの作成装置。
【請求項１５】
三次元の基本物体の表面にシート状物体を張り付けた状態を示す三次元形状データを作成する方法であって、
コンピュータが、基本物体の三次元形状データを入力する基本物体データ入力段階と、
コンピュータが、前記基本物体の表面を外側に向けて膨らませる度合いを示す圧力パラメータＰと、前記シート状物体の表面張力の強さを示す張力パラメータＴと、を設定するパラメータ設定段階と、
コンピュータが、基本物体の表面に多数のサンプル点を定義するサンプル点定義段階と、
コンピュータが、前記各サンプル点の位置に、前記基本物体外側表面に立てた法線を演算によって求める法線演算段階と、
コンピュータが、前記各サンプル点の位置における前記基本物体表面の曲がり具合の程度を示す曲率パラメータｋを演算によって求める曲率パラメータ演算段階と、
コンピュータが、前記各サンプル点について、前記圧力パラメータＰおよび前記張力パラメータＴ、ならびに当該サンプル点について求められた曲率パラメータｋを用いて、移動距離ｄを、ｄ＝Ｐ−Ｔ×ｋなる演算によって求める移動距離演算段階と、
コンピュータが、前記各サンプル点を、当該サンプル点について求められた法線方向に、当該サンプル点について求められた移動距離ｄだけ移動させ、移動後の位置に新サンプル点を定義する新サンプル点定義段階と、
コンピュータが、前記新サンプル点に基づいて、前記基本物体の表面にシート状物体を張り付けた状態を示す三次元形状データを作成するシート状物体データ作成段階と、
を有することを特徴とする三次元形状データの作成方法。
【請求項１６】
請求項１５に記載の作成方法において、
基本物体データ入力段階で、基本物体の表面に固定点を設定し、
移動距離演算段階で、前記固定点近傍に位置するサンプル点についての移動距離ｄを、所定の移動実効率Ｅ（０≦Ｅ≦１）を用いて、ｄ＝（Ｐ−Ｔ×ｋ）×Ｅなる演算によって求めることを特徴とする三次元形状データの作成方法。
【請求項１７】
請求項１６に記載の作成方法において、
移動距離演算段階で、距離ｒの増加とともに単調増加する移動実効率関数Ｅ（ｒ）を用い（但し、０≦Ｅ（ｒ）≦１）、サンプル点とその最近接固定点との距離ｒに基づいて、当該サンプル点についての移動距離ｄを、ｄ＝（Ｐ−Ｔ×ｋ）×Ｅ（ｒ）なる演算によって求めることを特徴とする三次元形状データの作成方法。
【請求項１８】
請求項１６または１７に記載の作成方法において、
基本物体データ入力段階で、基本物体の表面上に固定線を定義することにより当該固定線上の点として固定点の設定を行うか、もしくは、基本物体の表面上に固定領域を定義することにより当該固定領域内の点として固定点の設定を行うことを特徴とする三次元形状データの作成装置。
【請求項１９】
請求項１５〜１８のいずれかに記載の作成方法において、
基本物体データ入力段階で、基本物体の三次元形状データを、ポリゴンの集合からなるデータとして入力し、
サンプル点定義段階で、前記ポリゴンの各頂点をサンプル点として定義し、
法線演算段階で、演算対象となる着目サンプル点の位置に立てた法線を求める際に、前記着目サンプル点を１頂点とするポリゴンを着目ポリゴンとして、各着目ポリゴンの外面に立てた単位法線ベクトルの和として求まる和ベクトルの方向を法線の方向とする処理を行い、
曲率パラメータ演算段階で、演算対象となる着目サンプル点の位置における曲率パラメータを求める際に、前記着目サンプル点を１頂点とするポリゴンを着目ポリゴンとし、前記着目サンプル点を一端とする前記各着目ポリゴンの辺を着目辺として、前記着目サンプル点から前記各着目辺に沿って伸びる単位ベクトルの平均として求まる平均ベクトルの大きさに基づいて、曲率パラメータｋの絶対値を決定し、前記平均ベクトルが基本物体の内側に向かう場合は正、外側に向かう場合は負となるように、曲率パラメータｋの符号を決定し、
シート状物体データ作成段階で、基本物体データ格納部に格納されている基本物体の三次元形状データを参照して、新サンプル点相互の位置関係を認識し、これら新サンプル点を頂点とする新たなポリゴンの集合からなる三次元形状データを作成することを特徴とする三次元形状データの作成方法。
【請求項２０】
請求項１５〜１８のいずれかに記載の作成方法において、
基本物体データ入力段階で、基本物体の三次元形状データを、パラメトリック曲面を示す方程式および制御点の座標値を用いて表現されるパラメトリック曲面の集合からなるデータとして入力し、
サンプル点定義段階で、前記パラメトリック曲面の媒介変数を特定の離散値に設定することにより、当該特定の離散値で示される点をサンプル点として定義し、
法線演算段階で、前記パラメトリック曲面を示す方程式、前記制御点の座標値、サンプル点を示す媒介変数の離散値に基づいて、当該サンプル点の位置に立てた法線を演算し、
曲率パラメータ演算段階で、前記パラメトリック曲面を示す方程式、前記制御点の座標値、サンプル点を示す媒介変数の離散値に基づいて、当該サンプル点の位置における曲率パラメータを演算し、
シート状物体データ作成段階で、前記パラメトリック曲面を示す方程式、新サンプル点の座標値、新サンプル点についての移動前のサンプル点の媒介変数の離散値に基づいて、新パラメトリック曲面の制御点の座標値を演算し、新パラメトリック曲面を示す方程式およびその制御点の座標値を用いて表現される新パラメトリック曲面の集合からなる三次元形状データを作成することを特徴とする三次元形状データの作成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータを利用して物体の三次元形状データを作成する技術に関し、特に、三次元の基本物体の表面にシート状物体を張り付けた状態を示す三次元形状データを作成する技術に関する。
【背景技術】
【０００２】
コンピュータの性能向上により、産業界の様々な分野でＣＧ画像が利用されるようになってきている。たとえば、建築物、家具、自動車などの設計段階では、通常、多くのＣＧ画像が利用されている。また、コンピュータを利用した製品のプレゼンテーションや映画などの種々の映像表現においても、物品の様々なＣＧ画像が不可欠である。更に、最近では、商品カタログなどにも、実際の商品写真の代わりに、ＣＧ画像が利用される例も少なくない。一般に、ＣＡＤを用いた設計段階を経て製品化された商品の場合、設計に用いたＣＡＤデータを流用してＣＧ画像を作成することができるため、商品カタログに掲載するＣＧ画像も、比較的容易に用意することが可能になる。
【０００３】
たとえば、下記の特許文献１には、家具や自動車の内装などのインテリア製品、衣服、バッグ、靴、鞄などのアパレル製品など、物品の表面にパイプ状構造体が付加された商品のＣＧ画像を作成する技術が開示されている。
【特許文献１】特開２００６−３３１１７７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ソファや椅子等の家具、自動車のシートや内装品などは、ウレタン等の材質からなる基本物体の表面に、布や皮革などのシート状物体を張り付けたり、覆い被せることにより構成される。このような製品をＣＧ画像で表現する場合、布や皮革の厚みや質感（基本物体の表面形状に応じた形状変形のしかた、角の部分での丸まり具合、たるみ具合、ひだのでき方など）が十分に表現されるようにするのが好ましい。特に、インテリア製品や自動車内装品は、機能面だけでなく、デザイン性が重視されており、商品カタログや広告媒体にそのＣＧ画像を掲載する場合、外観上、布地や革地の質感を細部まで表現することが重要である。しかしながら、従来の一般的なＣＧ手法では、ウレタン等の材質からなる基本物体の三次元形状データのみを用意し、その表面に、布地や革地の柄をマッピングする単純な方法を採っているため、布地や革地の質感を細部まで表現することはできない。
【０００５】
そこで本発明は、基本物体の表面に布や皮革などのシート状物体を張り付けることにより構成される物品の外観を、良好な質感をもって表現することができる三次元形状データを作成する手法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
(1)   本発明の第１の態様は、三次元の基本物体の表面にシート状物体を張り付けた状態を示す三次元形状データを作成する装置において、
基本物体の三次元形状データを格納する基本物体データ格納部と、
基本物体の表面を外側に向けて膨らませる度合いを示す圧力パラメータＰと、シート状物体の表面張力の強さを示す張力パラメータＴと、を設定するパラメータ設定部と、
基本物体の表面に多数のサンプル点を定義するサンプル点定義部と、
各サンプル点の位置に、基本物体外側表面に立てた法線を演算によって求める法線演算部と、
各サンプル点の位置における基本物体表面の曲がり具合の程度を示す曲率パラメータｋを演算によって求める曲率パラメータ演算部と、
各サンプル点について、圧力パラメータＰおよび張力パラメータＴ、ならびに当該サンプル点について求められた曲率パラメータｋを用いて、移動距離ｄを、ｄ＝Ｐ−Ｔ×ｋなる演算によって求める移動距離演算部と、
各サンプル点を、当該サンプル点について求められた法線方向に、当該サンプル点について求められた移動距離ｄだけ移動させ、移動後の位置に新サンプル点を定義する新サンプル点定義部と、
新サンプル点に基づいて、基本物体の表面にシート状物体を張り付けた状態を示す三次元形状データを作成するシート状物体データ作成部と、
を設けたものである。
【０００７】
(2)   本発明の第２の態様は、上述の第１の態様に係る三次元形状データの作成装置において、
基本物体の表面に固定点を設定する固定点設定部を更に設け、
移動距離演算部が、固定点近傍に位置するサンプル点についての移動距離ｄを、所定の移動実効率Ｅ（０≦Ｅ≦１）を用いて、ｄ＝（Ｐ−Ｔ×ｋ）×Ｅなる演算によって求めるようにしたものである。
【０００８】
(3)   本発明の第３の態様は、上述の第２の態様に係る三次元形状データの作成装置において、
移動距離演算部が、距離ｒの増加とともに単調増加する移動実効率関数Ｅ（ｒ）を用い（但し、Ｅmin ≦Ｅ（ｒ）≦１）、サンプル点とその最近接固定点との距離ｒに基づいて、当該サンプル点についての移動距離ｄを、ｄ＝（Ｐ−Ｔ×ｋ）×Ｅ（ｒ）なる演算によって求めるようにしたものである。
【０００９】
(4)   本発明の第４の態様は、上述の第２または第３の態様に係る三次元形状データの作成装置において、
固定点設定部が、基本物体の表面上に固定線を定義することにより当該固定線上の点として固定点の設定を行う機能と、基本物体の表面上に固定領域を定義することにより当該固定領域内の点として固定点の設定を行う機能と、を有するようにしたものである。
【００１０】
(5)   本発明の第５の態様は、上述の第１〜第４の態様に係る三次元形状データの作成装置において、
基本物体データ格納部が、基本物体の三次元形状データを、ポリゴンの集合からなるデータとして格納し、
サンプル点定義部が、ポリゴンの各頂点をサンプル点として定義するようにしたものである。
【００１１】
(6)   本発明の第６の態様は、上述の第５の態様に係る三次元形状データの作成装置において、
法線演算部が、演算対象となる着目サンプル点の位置に立てた法線を求める際に、着目サンプル点を１頂点とするポリゴンを着目ポリゴンとして、各着目ポリゴンの外面に立てた単位法線ベクトルの和として求まる和ベクトルの方向を法線の方向とする処理を行うようにしたものである。
【００１２】
(7)   本発明の第７の態様は、上述の第５または第６の態様に係る三次元形状データの作成装置において、
曲率パラメータ演算部が、演算対象となる着目サンプル点の位置における曲率パラメータを求める際に、着目サンプル点を１頂点とするポリゴンを着目ポリゴンとし、着目サンプル点を一端とする各着目ポリゴンの辺を着目辺として、着目サンプル点から各着目辺に沿って伸びる単位ベクトルの平均として求まる平均ベクトルの大きさに基づいて、曲率パラメータｋの絶対値を決定し、平均ベクトルが基本物体の内側に向かう場合は正、外側に向かう場合は負となるように、曲率パラメータｋの符号を決定するようにしたものである。
【００１３】
(8)   本発明の第８の態様は、上述の第５〜第７の態様に係る三次元形状データの作成装置において、
シート状物体データ作成部が、基本物体データ格納部に格納されている基本物体の三次元形状データを参照して、新サンプル点相互の位置関係を認識し、これら新サンプル点を頂点とする新たなポリゴンの集合からなる三次元形状データを作成するようにしたものである。
【００１４】
(9)   本発明の第９の態様は、上述の第１〜第４の態様に係る三次元形状データの作成装置において、
基本物体データ格納部が、基本物体の三次元形状データを、パラメトリック曲面を示す方程式および制御点の座標値を用いて表現されるパラメトリック曲面の集合からなるデータとして格納し、
サンプル点定義部が、パラメトリック曲面上の所定点をサンプル点として定義するようにしたものである。
【００１５】
(10)  本発明の第１０の態様は、上述の第９の態様に係る三次元形状データの作成装置において、
サンプル点定義部が、パラメトリック曲面の媒介変数を特定の離散値に設定することにより、当該特定の離散値で示される点をサンプル点として定義するようにしたものである。
【００１６】
(11)  本発明の第１１の態様は、上述の第９または第１０の態様に係る三次元形状データの作成装置において、
法線演算部が、パラメトリック曲面を示す方程式、制御点の座標値、サンプル点を示す媒介変数の離散値に基づいて、当該サンプル点の位置に立てた法線を演算し、
曲率パラメータ演算部が、パラメトリック曲面を示す方程式、制御点の座標値、サンプル点を示す媒介変数の離散値に基づいて、当該サンプル点の位置における曲率パラメータを演算するようにしたものである。
【００１７】
(12)  本発明の第１２の態様は、上述の第９〜第１１の態様に係る三次元形状データの作成装置において、
シート状物体データ作成部が、パラメトリック曲面を示す方程式、新サンプル点の座標値、新サンプル点についての移動前のサンプル点の媒介変数の離散値に基づいて、新パラメトリック曲面の制御点の座標値を演算し、新パラメトリック曲面を示す方程式およびその制御点の座標値を用いて表現される新パラメトリック曲面の集合からなる三次元形状データを作成するようにしたものである。
【００１８】
(13)  本発明の第１３の態様は、上述の第９〜第１２の態様に係る三次元形状データの作成装置において、
基本物体データ格納部が、基本物体の三次元形状データを、２つの媒介変数ｕ，ｖ（０≦ｕ≦１、０≦ｖ≦１）と１６個の制御点の座標値とを用いて表現されるBezier曲面の集合からなるデータとして格納し、
サンプル点定義部が、媒介変数ｕを、０，ｕ′，ｕ″，１の４通りの離散値に設定し（但し、０＜ｕ′＜ｕ″＜１）、媒介変数ｖを、０，ｖ′，ｖ″，１の４通りの離散値に設定し（但し、０＜ｖ′＜ｖ″＜１）、１つのBezier曲面について、これら離散値の組み合わせによって示される合計１６通りのサンプル点を定義するようにしたものである。
【００１９】
(14)  本発明の第１４の態様は、上述の第１〜第１３の態様に係る三次元形状データの作成装置において、
パラメータ設定部が、圧力パラメータＰとして、基本物体の表面を外側に向けて膨らませる基準寸法値を設定し、張力パラメータＴとして、０＜Ｔ≦Ｐなる寸法値を設定し、
曲率パラメータ演算部が、曲率パラメータｋとして、−１≦ｋ≦１なる値を求めるようにしたものである。
【００２０】
(15)  本発明の第１５の態様は、三次元の基本物体の表面にシート状物体を張り付けた状態を示す三次元形状データを作成する方法において、
コンピュータが、基本物体の三次元形状データを入力する基本物体データ入力段階と、
コンピュータが、基本物体の表面を外側に向けて膨らませる度合いを示す圧力パラメータＰと、シート状物体の表面張力の強さを示す張力パラメータＴと、を設定するパラメータ設定段階と、
コンピュータが、基本物体の表面に多数のサンプル点を定義するサンプル点定義段階と、
コンピュータが、各サンプル点の位置に、基本物体外側表面に立てた法線を演算によって求める法線演算段階と、
コンピュータが、各サンプル点の位置における基本物体表面の曲がり具合の程度を示す曲率パラメータｋを演算によって求める曲率パラメータ演算段階と、
コンピュータが、各サンプル点について、圧力パラメータＰおよび張力パラメータＴ、ならびに当該サンプル点について求められた曲率パラメータｋを用いて、移動距離ｄを、ｄ＝Ｐ−Ｔ×ｋなる演算によって求める移動距離演算段階と、
コンピュータが、各サンプル点を、当該サンプル点について求められた法線方向に、当該サンプル点について求められた移動距離ｄだけ移動させ、移動後の位置に新サンプル点を定義する新サンプル点定義段階と、
コンピュータが、新サンプル点に基づいて、基本物体の表面にシート状物体を張り付けた状態を示す三次元形状データを作成するシート状物体データ作成段階と、
を行うようにしたものである。
【００２１】
(16)  本発明の第１６の態様は、上述の第１５の態様に係る三次元形状データの作成方法において、
基本物体データ入力段階で、基本物体の表面に固定点を設定し、
移動距離演算段階で、固定点近傍に位置するサンプル点についての移動距離ｄを、所定の移動実効率Ｅ（０≦Ｅ≦１）を用いて、ｄ＝（Ｐ−Ｔ×ｋ）×Ｅなる演算によって求めるようにしたものである。
【００２２】
(17)  本発明の第１７の態様は、上述の第１６の態様に係る三次元形状データの作成方法において、
移動距離演算段階で、距離ｒの増加とともに単調増加する移動実効率関数Ｅ（ｒ）を用い（但し、０≦Ｅ（ｒ）≦１）、サンプル点とその最近接固定点との距離ｒに基づいて、当該サンプル点についての移動距離ｄを、ｄ＝（Ｐ−Ｔ×ｋ）×Ｅ（ｒ）なる演算によって求めるようにしたものである。
【００２３】
(18)  本発明の第１８の態様は、上述の第１６または第１７の態様に係る三次元形状データの作成方法において、
基本物体データ入力段階で、基本物体の表面上に固定線を定義することにより当該固定線上の点として固定点の設定を行うか、もしくは、基本物体の表面上に固定領域を定義することにより当該固定領域内の点として固定点の設定を行うようにしたものである。
【００２４】
(19)  本発明の第１９の態様は、上述の第１５〜第１８の態様に係る三次元形状データの作成方法において、
基本物体データ入力段階で、基本物体の三次元形状データを、ポリゴンの集合からなるデータとして入力し、
サンプル点定義段階で、ポリゴンの各頂点をサンプル点として定義し、
法線演算段階で、演算対象となる着目サンプル点の位置に立てた法線を求める際に、着目サンプル点を１頂点とするポリゴンを着目ポリゴンとして、各着目ポリゴンの外面に立てた単位法線ベクトルの和として求まる和ベクトルの方向を法線の方向とする処理を行い、
曲率パラメータ演算段階で、演算対象となる着目サンプル点の位置における曲率パラメータを求める際に、着目サンプル点を１頂点とするポリゴンを着目ポリゴンとし、着目サンプル点を一端とする各着目ポリゴンの辺を着目辺として、着目サンプル点から各着目辺に沿って伸びる単位ベクトルの平均として求まる平均ベクトルの大きさに基づいて、曲率パラメータｋの絶対値を決定し、平均ベクトルが基本物体の内側に向かう場合は正、外側に向かう場合は負となるように、曲率パラメータｋの符号を決定し、
シート状物体データ作成段階で、基本物体データ格納部に格納されている基本物体の三次元形状データを参照して、新サンプル点相互の位置関係を認識し、これら新サンプル点を頂点とする新たなポリゴンの集合からなる三次元形状データを作成するようにしたものである。
【００２５】
(20)  本発明の第２０の態様は、上述の第１５〜第１８の態様に係る三次元形状データの作成方法において、
基本物体データ入力段階で、基本物体の三次元形状データを、パラメトリック曲面を示す方程式および制御点の座標値を用いて表現されるパラメトリック曲面の集合からなるデータとして入力し、
サンプル点定義段階で、パラメトリック曲面の媒介変数を特定の離散値に設定することにより、当該特定の離散値で示される点をサンプル点として定義し、
法線演算段階で、パラメトリック曲面を示す方程式、制御点の座標値、サンプル点を示す媒介変数の離散値に基づいて、当該サンプル点の位置に立てた法線を演算し、
曲率パラメータ演算段階で、パラメトリック曲面を示す方程式、制御点の座標値、サンプル点を示す媒介変数の離散値に基づいて、当該サンプル点の位置における曲率パラメータを演算し、
シート状物体データ作成段階で、パラメトリック曲面を示す方程式、新サンプル点の座標値、新サンプル点についての移動前のサンプル点の媒介変数の離散値に基づいて、新パラメトリック曲面の制御点の座標値を演算し、新パラメトリック曲面を示す方程式およびその制御点の座標値を用いて表現される新パラメトリック曲面の集合からなる三次元形状データを作成するようにしたものである。
【発明の効果】
【００２６】
本発明に係る三次元形状データの作成装置および作成方法によれば、基本物体の表面に布や皮革などのシート状物体を張り付けることにより構成される物品の外観を表現する方法として、当該基本物体の表面を、各部の曲がり具合を考慮して膨らませる方法を採用したため、良好な質感をもった三次元形状データの作成が可能になる。
【発明を実施するための最良の形態】
【００２７】
以下、本発明を図示する実施形態に基づいて説明する。
【００２８】
＜＜＜  §１．本発明の基本概念  ＞＞＞
はじめに、本発明の基本概念を説明する。図１は、本発明による三次元形状データ作成処理の材料となる基本物体１０およびシート状物体２０の一例を示す斜視図である。たとえば、自動車用のヘッドレストは、ウレタンなどからなる枕型の形状をした基本物体１０を、布や皮革からなるシート状物体２０で覆うことに構成される。通常、自動車の内装部品は、ＣＡＤを用いた設計がなされており、ヘッドレスト用の基本物体１０の三次元形状データも、ＣＡＤデータとして用意することができる。したがって、このようなヘッドレストをＣＧ画像で作成するためには、基本物体１０の三次元形状データを利用して、その表面にシート状物体２０を張り付けた外観を示す三次元形状データを作成すればよい。
【００２９】
図２は、図１に示す基本物体１０の表面１１に、シート状物体２０を密着させて張り付けた状態を示す正断面図である。シート状物体２０の厚みを均一とすれば、この厚みの寸法を与えることにより、図示のシート状物体２０の表面２１の三次元形状データは、比較的容易に作成することができる。すなわち、基本物体１０の表面１１を、厚みの寸法分だけ外側へ膨らませる処理をすれば、シート状物体２０の表面２１を得ることができる。
【００３０】
しかしながら、図２に示すように、シート状物体２０を基本物体１０の表面１１にぴったりと密着させて張り付けるケースは、実用上、あまり多くはない。特に、ソファや椅子、自動車のシートや内装品などでは、ウレタン等の材質からなる基本物体１０を、シート状物体２０からなる袋で包み込むような構造が採られるのが一般的であり、この場合、図３に示すように、シート状物体２０は、基本物体１０の表面１１から若干浮いた状態になることが多い。すなわち、家具や自動車の内装品など、基本物体１０の表面にシート状物体２０を被せた形態をもつ一般的な物品の場合、基本物体１０とシート状物体２０との相互の位置関係は、図２に示すような形態よりも、むしろ図３に示すような形態を採るケースが多く、外観を観察した場合、前者よりも後者の方が自然に見える。
【００３１】
本願発明者は、このような点に着眼し、基本物体の表面に布や皮革などのシート状物体を張り付けることにより構成される物品の外観を、良好な質感をもって表現するために、次のような手法が効果的であることを見出した。
【００３２】
まず、図４を見てみよう。この図４は、図３に示す状態における基本物体１０の表面１１の位置とシート状物体２０の表面２１の位置との関係を示す正面図である。図４を見れば、基本物体１０の表面１１を外側に膨らませることにより、シート状物体２０の表面２１を作成できることがわかる。但し、膨らませる程度は均一ではなく、各部によって異なっている。具体的には、上部左右に位置する角の部分については、膨らませる程度が小さいことがわかる。別言すれば、基本物体１０の表面各部のうち、曲がり具合の程度が大きい部分については、膨らませる程度を小さくし、曲がり具合の程度が小さい部分については、膨らませる程度を大きくすると、実際の物品に似た自然な表現が可能になる。
【００３３】
このような現象が生じる理由は、シート状物体２０に表面張力が作用しているためと考えられる。一般に、表面張力とは、物体の表面が縮まろうとしてその表面に沿って働く力を意味し、布地や皮革などのシート状物体２０についても、そのような力が作用している。すなわち、布地や皮革などの弾力性を有するシート状物体２０は、本来、平面に置かれた状態が最も安定した状態であり、これを曲げようとすると、元の平面状態に戻ろうとする性質がある。このため、曲がり具合の程度が大きい部分については、シート状物体２０により大きな表面張力が作用する。その結果、曲がり具合の程度が大きい部分は、シート状物体２０が基本物体１０の表面に接近し、曲がり具合の程度が小さい部分は、シート状物体２０が基本物体１０の表面から離されることになる。
【００３４】
そこで、本発明では、図５に示すように、基本物体１０の表面１１を外側に向けて膨らませ、膨らんだ状態の表面１２を、シート状物体２０の表面２１として利用する、という基本原理を採りつつ、次のような３つのパラメータを設定して膨らませる程度を制御している。
【００３５】
まず、第１のパラメータは、基本物体１０の表面１１を外側に向けて膨らませる度合いを示す圧力パラメータＰである。これは、たとえば、風船を膨らませるために風船内部に加える圧力に相当するものであり、圧力パラメータＰを大きく設定すればするほど、表面１１はより大きく膨らむことになるので、膨らむ前の表面１１と膨らんだ後の表面１２との差は大きくなる。このように、圧力パラメータＰは、概念としては、基本物体１０内部の圧力に相当するパラメータであるが、後述する実施形態の場合、基本物体１０の表面１１を外側に向けて膨らませる基準寸法値を指定する値になる。圧力パラメータＰを大きく設定すればするほど、シート状物体２０が基本物体１０に対して膨らんだ感じが強く表現されることになる。
【００３６】
第２のパラメータは、シート状物体２０自体に潜在的に備わっている表面張力の強さを示す張力パラメータＴである。前述したとおり、布地や皮革などの弾力性を有するシート状物体２０には、表面張力が作用しており、曲げようとすると、元の平面状態に戻ろうとする性質がある。この表面張力の強さは、個々のシート状物体２０の材質や繊維構造に応じて定まるものと考えられる。一般に、弾力性の強い糸からなる繊維や、編み目の細かな繊維は、表面張力が強くなると考えられる。このように、張力パラメータＴは、概念としては、シート状物体２０に固有の表面張力の強さを示すパラメータであるが、本発明では、基本物体１０の表面１１を外側に向けて膨らませる程度を抑制する因子（ｋ＞０の場合）として機能し、後述する実施形態の場合、寸法値として設定される。張力パラメータＴを大きく設定すればするほど、曲面部分でのシート状物体２０の膨らみ具合が抑制される（ｋ＞０の場合）。
【００３７】
第３のパラメータは、基本物体１０の表面１１の各部の曲がり具合の程度を示す曲率パラメータｋである。ここで述べる基本的な実施形態の場合、上述した圧力パラメータＰは、１つの基本物体１０で共通した値として設定され、上述した張力パラメータＴは、１枚のシート状物体２０で共通した値として設定されるが、曲率パラメータｋは、基本物体１０の表面１１の各部に応じて、それぞれ独立した値が設定される（もちろん、必要に応じて、圧力パラメータＰおよび張力パラメータＴを部分ごとに異ならせるような変則的な設定も可能である）。
【００３８】
一般に、任意曲面についての曲率とは、幾何学上、当該任意曲面に近似する球面の半径の逆数として定義される。たとえば、半径１０ｍｍの球面に近似できる任意曲面の曲率は、１／１０（単位は、ｍｍ−１）となる。平面の場合、近似する球面は半径が無限大の球面になるので、曲率は０になる。ただ、本発明で用いる曲率パラメータｋは、必ずしも幾何学的に正確な曲率にする必要はなく、基本物体１０の表面１１の曲がり具合の程度を示すことができるパラメータとなっていれば足り、曲がり具合が大きければ大きいほど、絶対値が大きくなればよい。したがって、その単位も、ｍｍ−１のような寸法値の逆数として与える必要はなく、後述する実施形態の場合、無名数として定義される。なお、曲率パラメータｋの符号は、基本物体１０の外側に凸となる曲面の場合を正とし、内側に凸となる曲面（窪んだ曲面）の場合を負とすればよい。
【００３９】
本発明では、図５に示すように、基本物体１０の表面１１を外側に向けて膨らませるときに、その膨らませる程度を、上記３つのパラメータを用いて「Ｐ−Ｔ×ｋ」なる量で定義する。前述したとおり、ここで述べる実施形態の場合、圧力パラメータＰおよび張力パラメータＴは、いずれも寸法値（たとえば、単位ｍｍで定義される値）として与えられ、曲率パラメータｋは無名数として与えられる。したがって、「Ｐ−Ｔ×ｋ」なる量は、たとえば、単位ｍｍをもった寸法値になり、表面１１を外側に移動させる移動距離を示す。
【００４０】
ここでは、圧力パラメータＰとして、基本物体１０の表面１１を外側に向けて膨らませる基準寸法値を設定し、張力パラメータＴとして、０＜Ｔ≦Ｐなる寸法値を設定し、曲率パラメータｋとして、−１≦ｋ≦１なる値を設定した場合を考えてみる。この場合、表面１１が平面をなす部分については、ｋ＝０になるので、「Ｐ−Ｔ×ｋ」＝Ｐとなり、当該部分は基準寸法値Ｐまで膨らむことになる。たとえば、図５に示す点Ｑ１は、平面上の点であるから、上方に寸法値Ｐだけ移動することになる。一方、図５に示す点Ｑ２は、外側に凸となる曲面上の点であり、点Ｑ２の位置における曲率パラメータｋは正の値になる。したがって、点Ｑ２は、斜め左上方向に寸法値「Ｐ−Ｔ×ｋ」だけ移動することになる。
【００４１】
これは、点Ｑ１のように、平坦な箇所では、シート状物体２０の表面張力による膨らみ抑制効果は発揮されず、圧力Ｐによる基準量の膨らみが生じるの対して、点Ｑ２のように曲がり具合が大きい箇所では、シート状物体２０の表面張力による膨らみ抑制効果が機能し、圧力Ｐによる基準量の膨らみは抑制されることを意味している。このような基本原理に基づいて、基本物体１０の表面１１の各部をそれぞれ外側に向けて膨らませることにより、膨らんだ後の表面１２を得るようにすれば、この表面１２は、図３に示すシート状物体２０の表面２１に近いものになる。したがって、上述した基本原理に基づいて、シート状物体２０の表面２１の形状データを作成すれば、より自然な良好な質感をもった外観形状データを得ることができる。なお、基本物体１０の内側に凸となる曲面（窪んだ曲面）上の点については、曲率パラメータｋは負の値となるので、移動量「Ｐ−Ｔ×ｋ」の値は基準寸法値Ｐよりも大きくなる。これは、窪んだ箇所では、平坦な箇所より膨らみ効果が促進されることを意味し、やはり実際のシート状物体の変形態様に合致したものになる。
【００４２】
ユーザは、この３つのパラメータの設定の仕方により、好みの三次元形状データ（膨らんだ後の表面１２のデータ）が得られるよう、調整を行うことができる。すなわち、圧力パラメータＰの値を増減することにより、膨らみの程度を制御することができ、張力パラメータＴの値を増減することにより、曲面部分での膨らみ抑制効果（ｋ＞０の場合）もしくは促進効果（ｋ＜０の場合）を制御することができる。
【００４３】
なお、曲率パラメータｋは、基本物体１０の表面１１の形状に依存して定まる量であるから、ユーザが自由に設定することはできないが、スケーリングファクター（規格化の方法）を調整することにより、多少の形状調整を行うことは可能である。具体的には、演算により求めた幾何学的な曲率値（単位：ｍｍ−１）に基づいて曲率パラメータｋを決定する場合、曲率値を−１≦ｋ≦１なる範囲内の曲率パラメータｋに変換する変換条件式や変換テーブルを任意に設定することにより、多少の形状調整を行うことが可能になる。たとえば、
「ｋ＝曲率値×１０、但し、ｋ＞１になる場合はｋ＝１とし、ｋ＜−１になる場合はｋ＝−１とする」
のような変換条件式を設定した場合、半径５０ｍｍの球面に近似した外側に凸となる曲面については、ｋ＝（１／５０）×１０＝０．２となるが、半径１０ｍｍ以下の球面に近似した外側に凸となる曲面については、一律、ｋ＝１になる。
【００４４】
＜＜＜  §２．本発明に係る方法の基本手順  ＞＞＞
続いて、図６の流れ図を参照しながら、本発明に係る三次元形状データの作成方法の基本手順を説明する。ここでは、§１で述べた具体的な実施例、すなわち、図１に示す三次元の基本物体１０の表面にシート状物体２０を張り付けた状態を示す三次元形状データを作成する例についての手順を述べる。なお、図６のステップＳ１〜Ｓ８は、実際には、コンピュータを用いて行われる処理であり、個々の手順は、コンピュータが所定のプログラムに基づく自動演算を行うことにより実行されるか、もしくは、ユーザがコンピュータに対して入力や設定操作を行うことにより実行されることになる。
【００４５】
まず、ステップＳ１において、基本物体１０の三次元形状データを入力する基本物体データ入力段階が実行される。具体的には、図１に示すような三次元の基本物体１０の表面形状を示すデータが、コンピュータに入力されることになる。三次元物体の表面形状を示すデータの形式としては、ポリゴンやパラメトリック曲面を用いた形式が一般的に用いられている。なお、本発明では、シート状物体２０の形態を示すデータは不要である。これは、§１で述べたとおり、本発明では、基本物体１０の表面１１を膨らませることにより、疑似的に、シート状物体２０の表面２１のデータを生成する手法を採るためである。
【００４６】
続くステップＳ２では、基本物体１０の表面１１を外側に向けて膨らませる度合いを示す圧力パラメータＰと、シート状物体２０の表面張力の強さを示す張力パラメータＴと、を設定するパラメータ設定段階が実行される。前述したとおり、ここで述べる実施形態の場合、圧力パラメータＰは、基本物体１０の表面１１を外側に向けて膨らませる基準寸法値として設定され、膨らみの程度を制御するパラメータになる。また、張力パラメータＴは、０＜Ｔ≦Ｐなる寸法値として設定され、曲面部分での膨らみ抑制効果を制御するパラメータになる。
【００４７】
次のステップＳ３では、基本物体１０の表面１１に多数のサンプル点を定義するサンプル点定義段階が実行される。サンプル点は、表面１１を変形させるための指標として機能する点であり、表面１１上に離散的に分布した点として定義される。図７(a) は、図１に示す基本物体１０の表面１１上に、５つのサンプル点Ｑ１〜Ｑ５を定義した例を示す正断面図である。ここでは、説明の便宜上、図７の断面図に現れている表面１１の輪郭線上にサンプル点Ｑ１〜Ｑ５のみを定義した一次元の単純な例を示すが、実際には、表面１１は、基本物体１０の外面全体に広がる二次元の面であり、この二次元の面上に離散的に分布する多数のサンプル点が定義されることになる。
【００４８】
これらのサンプル点は、たとえば、所定ピッチで一様分布するように定義することもできるし、乱数に基づいてランダムに定義することもできる。ただ、実用上は、ステップＳ１で入力した基本物体１０の三次元形状データの形態に応じて、最も効率的な定義方法を採るのが好ましい。基本物体１０が、ポリゴンやパラメトリック曲面を用いた三次元形状データとして入力された場合の最適なサンプル点の定義方法は後述する。
【００４９】
ステップＳ４では、ステップＳ３で定義された各サンプル点の位置に、基本物体１０の表面１１の外側に立てた法線を演算によって求める法線演算段階が実行される。図７(b) には、各サンプル点Ｑ１〜Ｑ５の位置に、法線ｎ１〜ｎ５を定義した状態が示されている。基本物体１０の表面１１は任意曲面であるから、各サンプル点位置に立てた法線は、当該サンプル点位置における基本物体１０に対する接面に直交する直線ということになる。既にステップＳ１において、基本物体１０の表面１１の形状を示す三次元形状データが、コンピュータに入力されているので、この三次元形状データを用いて、各サンプル点位置の法線を演算によって求めることが可能である。
【００５０】
次のステップＳ５では、各サンプル点Ｑ１〜Ｑ５の位置における基本物体１０の表面１１の曲がり具合の程度を示す曲率パラメータｋを演算によって求める曲率パラメータ演算段階が実行される。図７(b) に示す例の場合、サンプル点Ｑ１，Ｑ３，Ｑ５が位置する表面１１は平面であるため、曲率パラメータはｋ＝０になるが、サンプル点Ｑ２，Ｑ４が位置する表面１１は外側に凸となる曲面であるため、曲率パラメータは０＜ｋ≦１となる（正確なｋの値は、曲率値を曲率パラメータｋに変換する際の規格化の条件に応じて決まる）。なお、図では外側に凸となる曲面が示されているが、内側に凸となる曲面についても、同様にして曲率パラメータｋ（−１≦ｋ＜０）を求めることができる。
【００５１】
続くステップＳ６では、各サンプル点Ｑ１〜Ｑ５について、ステップＳ２で設定された圧力パラメータＰおよび張力パラメータＴ、ならびに当該サンプル点Ｑ１〜Ｑ５についてステップＳ５で求められた曲率パラメータｋを用いて、移動距離ｄを、ｄ＝Ｐ−Ｔ×ｋなる演算によって求める移動距離演算段階が実行される。ここで述べる実施形態では、前述したとおり、圧力パラメータＰとして、基本物体１０の表面１１を外側に向けて膨らませる基準寸法値を設定し、張力パラメータＴとして、０＜Ｔ≦Ｐなる寸法値を設定し、曲率パラメータｋとして、−１≦ｋ≦１なる値を求めるようにしているため、平面上に位置するサンプル点Ｑ１，Ｑ３，Ｑ５についての移動距離は、ｄ＝Ｐ（基準寸法値）となるが、曲面上に位置するサンプル点Ｑ２，Ｑ４についての移動距離は、ｄ＝Ｐ−Ｔ×ｋとなり、図示の例のようにｋ＞０の場合、０≦ｄ＜Ｐなる範囲の値となる。
【００５２】
ステップＳ７では、各サンプル点Ｑ１〜Ｑ５を、当該サンプル点について求められた法線方向（基本物体１０の外側へ向かう方向）に、当該サンプル点について求められた移動距離ｄだけ移動させ、移動後の位置に新サンプル点ＱＱ１〜ＱＱ５を定義する新サンプル点定義段階が実行される。図７(c) は、このようにして定義された新サンプル点ＱＱ１〜ＱＱ５を示す。図示のｄ１〜ｄ５は、それぞれ各サンプル点Ｑ１〜Ｑ５についてステップＳ６で求められた移動距離である。
【００５３】
なお、ここで述べる実施形態では、０＜Ｔ≦Ｐ、−１≦ｋ≦１なるパラメータ設定を行っているため、移動距離ｄ＝Ｐ−Ｔ×ｋは必ず０または正の値になるが、Ｔ＞Ｐなる設定や、ｋ＞１もしくはｋ＜−１なる設定を行った場合は、移動距離ｄは負の値になりうる。このように、移動距離ｄが負の値になった場合は、サンプル点を基本物体１０の内側へ向かう方向に移動させればよい。この場合、基本物体１０の表面１１を膨らませる代わりに、内部へ縮ませる変形が行われることになるので、基本物体１０の表面に厚みをもったシート状物体２０を張り付けた状態を示す三次元形状データを作成する、という観点からは、非現実的な処理になるが、特殊な用途については利用価値のある処理になろう。
【００５４】
最後のステップＳ８では、新サンプル点ＱＱ１〜ＱＱ５に基づいて、基本物体１０の表面１１にシート状物体２０を張り付けた状態を示す三次元形状データを作成するシート状物体データ作成段階が実行される。図７(c) には、新サンプル点ＱＱ１〜ＱＱ５に基づいて定義された三次元形状データが一点鎖線で示されている。この一点鎖線で示す面は、基本物体１０の表面１１を膨らませることにより得られた表面１２であるが、本発明では、この膨らんだ表面１２を、疑似的にシート状物体２０の表面２１を示す面として採用することになる。新サンプル点ＱＱ１〜ＱＱ５に基づいて、三次元形状データを作成するには、これら新サンプル点を滑らかに結ぶ曲面の形状データを作成すればよい。その具体的な方法は後述する。
【００５５】
＜＜＜  §３．ポリゴンを用いた実施例  ＞＞＞
ここでは、図６の流れ図を参照しながら§２で述べた基本手順を、ポリゴンを用いた三次元形状データに適用した具体例を述べる。任意の三次元形状をポリゴンの集合体として表現する方法は、三次元ＣＧの技術では広く利用されている方法であり、本発明を実施する上でも、基本物体１０の三次元形状データが、ポリゴンの集合体として与えられることは、最も一般的な実施例になるものと思われる。
【００５６】
まず、ステップＳ１の基本物体データ入力段階では、図１に示すような三次元の基本物体１０の表面形状を示すデータが、ポリゴンの集合からなるデータとして入力されることになる。図８は、ポリゴンの集合からなる基本物体１０の一部を示す上面図である。図示の例では、４つのポリゴンＧ１〜Ｇ４の集合により、基本物体１０の一部が表現された例が示されている。もちろん、個々のポリゴンとしては、図示のような三角形に限らず任意の多角形を用いること可能であるが、ここでは、説明の便宜上、すべてのポリゴンが三角形によって構成されている例を述べる。
【００５７】
もちろん、通常、個々のポリゴンは肉眼では観察できない程度の微小領域によって構成され、基本物体１０の表面形状は、このような微小なポリゴンを多数集めることにより表現される。したがって、図８は、このような微小ポリゴンから構成された基本物体１０の表面の一部分の拡大図ということになる。図示の点Ａ，Ｂ，Ｃ，Ｄ，Ｑは、各ポリゴンの頂点である。図では、頂点Ｑを白丸、それ以外の頂点Ａ，Ｂ，Ｃ，Ｄを黒丸で示しているが、これは、後述する説明において、頂点Ｑが着目サンプル点となるためである。
【００５８】
個々のポリゴンは、その頂点の座標値によって定義することができる。たとえば、図８に示すポリゴンＧ１は、３つの頂点Ａ，Ｂ，Ｑの三次元空間上での座標値によって定義することができる。また、個々のポリゴンの連結関係は、個々の頂点の連結関係によって定義することができる。たとえば、図８に示す例の場合、頂点Ｑに対して、頂点Ａ，Ｂ，Ｃ，Ｄが辺ａ，ｂ，ｃ，ｄによって連結されており、頂点ＡＢ，頂点ＢＣ，頂点ＣＤ，頂点ＤＡがそれぞれの辺によって連結されている、という連結関係を定義することにより、各ポリゴンＧ１〜Ｇ４の連結関係が定義される。
【００５９】
ステップＳ２で行われるパラメータ設定段階では、前述したとおり、圧力パラメータＰと張力パラメータＴとが設定される。このパラメータ設定段階では、三次元形状データがポリゴンの集合体として与えられたからといって、特別な設定を行う必要はない。
【００６０】
ステップＳ３のサンプル点定義段階では、基本物体１０の表面１１上に多数のサンプル点の定義を行うことになるが、ここに示す例のように、基本物体１０が、ポリゴンの集合からなるデータとして与えられている場合には、個々のポリゴンの各頂点をそのままサンプル点として定義すればよい。たとえば、図８に示す例の場合、各頂点Ａ，Ｂ，Ｃ，Ｄ，Ｑが、そのままサンプル点として定義される。したがって、実用上は、ステップＳ３としての特別な処理を行う必要はなく、以後の各ステップにおいて、ポリゴンの頂点をそのままサンプル点として取り扱うようにすれば足りる。
【００６１】
一方、ステップＳ４の法線演算段階では、各サンプル点の位置に立てた法線を求める処理を行う必要があるが、ポリゴンの各頂点をサンプル点として取り扱う場合、法線の定義方法に工夫を施す必要がある。なぜなら、ポリゴンの集合体として表現された三次元形状は、滑らかな曲面ではなく、隣接するポリゴン間の境界に不連続が生じているためである。
【００６２】
たとえば、図８において、中央のサンプル点Ｑ（図では白丸で示す）に着目し、この着目サンプル点Ｑの位置に法線を立てることを考えてみる。この場合、着目サンプル点Ｑは、その周囲を取り囲む４つのポリゴンＧ１〜Ｇ４の境界に位置する不連続点であるため、幾何学的な法線を定義することはできない。そこで、演算対象となる着目サンプル点Ｑの位置に立てた法線を求める際に、この着目サンプル点Ｑを１頂点とするポリゴンＧ１〜Ｇ４を着目ポリゴンとして、これら着目ポリゴンの外面に立てた単位法線ベクトル（大きさ１のベクトル）の和として求まる和ベクトルの方向を法線の方向とする処理を行うようにする。
【００６３】
図９は、図８に示す基本物体の一部の斜視図であり、着目サンプル点Ｑについて定義された着目ポリゴンＧ１〜Ｇ４に、それぞれ単位法線ベクトルＮ１〜Ｎ４を定義した状態が示されている。着目ポリゴンＧ１〜Ｇ４は、いずれも平面であるため、それぞれ単位法線ベクトルＮ１〜Ｎ４を幾何学的に定義することができる。そこで、これら単位法線ベクトルＮ１〜Ｎ４の和ベクトルΣＮを求め、図１０に示すように、この和ベクトルΣＮの始点を着目サンプル点Ｑの位置へ置いたときの当該和ベクトルΣＮの方向を法線の方向とする。このようにして求めた和ベクトルΣＮの方向は、各単位法線ベクトルＮ１〜Ｎ４の向きの中間的な方向となるため、周囲を着目ポリゴンＧ１〜Ｇ４によって取り囲まれた着目サンプル点Ｑに相応しい法線方向になる。
【００６４】
以上、図８の中央に示されているサンプル点Ｑを着目サンプル点として、当該着目サンプル点Ｑの位置に法線を定義する方法を説明したが、前述したとおり、ここで述べる実施形態の場合、ポリゴンの頂点はすべてサンプル点として取り扱われることになるので、図示する頂点Ａ，Ｂ，Ｃ，Ｄのそれぞれの位置についても、これらを着目サンプル点として、それぞれの法線が定義されることになる。
【００６５】
次のステップＳ５の曲率パラメータ演算段階では、各サンプル点の位置における曲率パラメータｋを求める処理を行う必要がある。ここで述べるポリゴンを用いた実施形態の場合、ある１つの着目サンプル点位置の曲率パラメータｋを求めるには、この着目サンプル点を１頂点とするポリゴンを着目ポリゴンとし、着目サンプル点を一端とする各着目ポリゴンの辺を着目辺として、着目サンプル点から各着目辺に沿って伸びる単位ベクトル（大きさ１のベクトル）の平均として求まる平均ベクトルの大きさに基づいて、曲率パラメータｋの絶対値を決定し、平均ベクトルが基本物体の内側に向かう場合は正、外側に向かう場合は負となるように、曲率パラメータｋの符号を決定する。
【００６６】
たとえば、図１１に示す例において、中央のサンプル点Ｑに着目し、この着目サンプル点Ｑについて、曲率パラメータｋの値を求めることを考えてみる。この場合、着目サンプル点Ｑを１頂点とするポリゴンとして、４つの着目ポリゴンＧ１〜Ｇ４が定義され、着目サンプル点Ｑを一端とする各着目ポリゴンＧ１〜Ｇ４の辺として、４つの着目辺ａ，ｂ，ｃ，ｄが定義される。そして、図１１に太線矢印で示すように、着目サンプル点Ｑから各着目辺ａ，ｂ，ｃ，ｄに沿って伸びる単位ベクトルＶａ，Ｖｂ，Ｖｃ，Ｖｄが定義される。そこで、これら単位ベクトルＶａ，Ｖｂ，Ｖｃ，Ｖｄの平均として、図１２の斜視図に示されているような平均ベクトルＶｍを求め、この平均ベクトルＶｍの大きさ（すなわち、長さ）に基づいて、曲率パラメータｋの絶対値を決定すればよい。また、図１２において、着目サンプル点Ｑの上方が基本物体１０の外側、下側が基本物体１０の内側であるとすると、着目サンプル点Ｑは、外側に凸となる曲面上の点であるから、曲率パラメータｋの符号を正にすればよい。別言すれば、曲率パラメータｋの符号は、図示のように、平均ベクトルＶｍが基本物体１０の内側に向かう場合は正とし、逆に外側に向かう場合は負とすればよい。
【００６７】
平均ベクトルＶｍは、単位ベクトルＶａ，Ｖｂ，Ｖｃ，Ｖｄの和ベクトルを、その総数４で除した（すなわち、大きさを１／４とした）ベクトルである。和ベクトルの代わりに平均ベクトルを用いるのは、着目辺の数が、個々のサンプル点について異なるような場合に、曲率パラメータｋの値が着目辺の数に左右されるのを避けるためである。したがって、すべての着目サンプル点について、着目辺の総数が一定であれば、平均ベクトルではなく、和ベクトルを用いても、等価な結果が得られる。
【００６８】
図１３は、図１２に示す例よりも、曲がり具合のより大きな基本物体の一部について求められた平均ベクトルＶｍを示す斜視図である。図１２に示す平均ベクトルＶｍと図１３に示す平均ベクトルＶｍとを比較すると、前者よりも後者の方が大きくなることがわかる。これは、着目サンプル点Ｑに関する限り、図１２に示す形状よりも、図１３に示す形状の方が、曲がり具合が大きいためである。着目サンプル点Ｑが平面上の点である場合には、平均ベクトルＶｍ＝０になる。また、ベクトルＶａ，Ｖｂ，Ｖｃ，Ｖｄは単位ベクトルであり、その大きさはいずれも１であるから、平均ベクトルＶｍの最大値は１である。よって、平均ベクトルＶｍの大きさ（ベクトルの長さ）を、そのまま曲率パラメータｋの絶対値として用いるようにすれば、曲率パラメータｋの値は、−１≦ｋ≦１となる。
【００６９】
続くステップＳ６の移動距離演算段階では、各サンプル点について、圧力パラメータＰ、張力パラメータＴ、曲率パラメータｋを用いて、移動距離ｄを、ｄ＝Ｐ−Ｔ×ｋなる演算によって求める処理が実行される。ここで述べる実施形態の場合、圧力パラメータＰおよび張力パラメータＴとして、０＜Ｔ≦Ｐなる寸法値を設定しており、曲率パラメータｋの値は、上述したとおり−１≦ｋ≦１であるから、個々のサンプル点ごとに、それぞれ０≦ｄ≦２Ｐなる範囲内の移動距離ｄが求められる。
【００７０】
ステップＳ７の新サンプル点定義段階では、各サンプル点を、法線方向に移動距離ｄだけ移動させ、移動後の位置に新サンプル点を定義する処理が実行される。たとえば、図１４に示すように、ポリゴンの頂点としてサンプル点Ｑ１〜Ｑ５（黒丸で示す）が定義されていた場合、各サンプル点を、それぞれの法線方向にそれぞれの移動距離ｄだけ移動させることにより、新サンプル点ＱＱ１〜ＱＱ５（黒星で示す）が定義される。具体的には、各サンプル点Ｑ１〜Ｑ５の座標値と、法線方向および移動距離ｄを示す情報に基づく幾何学的な演算処理により、各新サンプル点ＱＱ１〜ＱＱ５の座標値を得ることができる。
【００７１】
最後に、ステップＳ８のシート状物体データ作成段階では、新サンプル点ＱＱ１〜ＱＱ５に基づいて、新たな三次元形状データ（基本物体１０の表面１１にシート状物体２０を張り付けた状態を示す三次元形状データ）の作成が行われる。そのためには、図１４に一点鎖線で示されている新たなポリゴンを認識し、これらポリゴンの集合からなる三次元形状データを作成すればよい。既にステップＳ７において、新サンプル点ＱＱ１〜ＱＱ５の座標値が得られているので、このステップＳ８で行う処理は、基本物体１０の三次元形状データを参照して、新サンプル点相互の位置関係を認識し、これら新サンプル点を頂点とする新たなポリゴンの集合からなる三次元形状データを作成する処理ということになる。たとえば、基本物体１０の三次元形状データを参照すれば、サンプル点Ｑ１，Ｑ５，Ｑ４が互いに連結関係にあり、１つのポリゴンを構成する頂点になっていることが認識できるので、新サンプル点ＱＱ１，ＱＱ５，ＱＱ４も互いに連結関係にあり、１つのポリゴンを構成する頂点になっている、との認識を行うことが可能である。
【００７２】
かくして、多数のポリゴンの集合体として、新たな三次元形状データの作成が行われる。こうして作成された三次元形状データは、もとの基本物体１０の表面１１を所定の条件下で膨らませることにより得られた表面を示すデータであるが、シート状物体２０を張り付けた状態を示す三次元形状データとして利用することができる。
【００７３】
以上、ポリゴンとして、三角形を用いた実施例を説明したが、本発明は、必ずしも三角形を用いた例に限定されるものではなく、任意のポリゴンを用いて定義された曲面に広く適用可能である。要するに、図６の流れ図において、ステップＳ１の基本物体データ入力段階で基本物体１０の三次元形状データを、ポリゴンの集合からなるデータとして入力し、ステップＳ３のサンプル点定義段階で、これらポリゴンの各頂点をサンプル点として定義し、ステップＳ４の法線演算段階で、演算対象となる着目サンプル点の位置に立てた法線を求める際に、着目サンプル点を１頂点とするポリゴンを着目ポリゴンとして、各着目ポリゴンに立てた単位法線ベクトルの和として求まる和ベクトルの方向を法線の方向とする処理を行い、ステップＳ５の曲率パラメータ演算段階で、演算対象となる着目サンプル点の位置における曲率パラメータを求める際に、着目サンプル点を１頂点とするポリゴンを着目ポリゴンとし、着目サンプル点を一端とする各着目ポリゴンの辺を着目辺として、着目サンプル点から各着目辺に沿って伸びる単位ベクトルの平均として求まる平均ベクトルの大きさに基づいて、曲率パラメータｋの絶対値を決定し、平均ベクトルが基本物体の内側に向かう場合は正、外側に向かう場合は負となるように、曲率パラメータｋの符号を決定し、ステップＳ８のシート状物体データ作成段階で、基本物体１０の三次元形状データを参照して、新サンプル点相互の位置関係を認識し、これら新サンプル点を頂点とする新たなポリゴンの集合からなる三次元形状データを作成するようにすればよい。
【００７４】
＜＜＜  §４．固定点の設定  ＞＞＞
これまで述べてきた実施形態では、基本物体１０の表面１１を膨らませる程度は、専ら、表面１１の曲がり具合に基づいて決定されていた。すなわち、ある部分の曲がり具合が大きければ大きいほど、その部分を膨らませる程度を小さくする（外側に凸の曲面の場合）もしくは大きくする（内側に凸の曲面の場合）ような処理が行われていた。しかしながら、実際の物品には、基本物体１０の形状とは無関係に、膨らませる程度を制御すべき部分が存在することも少なくない。このような部分には、予め固定点を設定しておき、この固定点近傍に位置するサンプル点についての移動を制限する処理を行うことが可能である。
【００７５】
たとえば、図１５は、基本物体１０上に固定点１５、固定線１６、固定領域１７を定義した状態を示す斜視図である。固定点１５は、たとえば、シート状物体２０が基本物体１０に対して鋲などで留められた部分に相当する。このように、シート状物体２０の１点を固定すると、この固定点周辺のシート状物体２０の表面は、いわば臍のような形状をなすことになる。このような固定点１５が設定されていた場合、その近傍に位置するサンプル点についての移動距離ｄは、所定の移動実効率Ｅ（０≦Ｅ≦１）を用いて、ｄ＝（Ｐ−Ｔ×ｋ）×Ｅなる演算によって求めるようにする。たとえば、移動実効率Ｅ＝０に設定すると、ｄ＝０となるので、固定点１５の近傍に位置するサンプル点は、全く移動しないことになり、基本物体１０の表面１１上の位置に留まる。その結果、固定点１５の周囲におけるシート状物体２０の表面は、臍のような形状をなす。
【００７６】
図１５に示す固定線１６は、基本物体１０の表面上に定義された線であり、多数の固定点を一次元に配置したものに相当する。このような固定線１６は、たとえば、シート状物体２０上に形成された縫い目を表現することができる。この固定線１６の近傍に位置するサンプル点について、所定の移動実効率Ｅを用いてｄ＝（Ｐ−Ｔ×ｋ）×Ｅなる演算によって移動距離ｄを求めるようにすれば、固定線１６に沿った部分のシート状物体２０の表面は、縫い目のような形状をなす。
【００７７】
図１５に示す固定領域１７は、基本物体１０の表面上に定義された面であり、多数の固定点を二次元に配置したものに相当する。このような固定領域１７は、たとえば、シート状物体２０の一部に接着剤を塗布して基本物体１０の表面に固着した部分を表現することができる。この固定領域１７の内部および近傍に位置するサンプル点について、所定の移動実効率Ｅを用いてｄ＝（Ｐ−Ｔ×ｋ）×Ｅなる演算によって移動距離ｄを求めるようにすれば、固定領域１７の部分のシート状物体２０の表面には、窪み部が形成されることになる。
【００７８】
このように、固定点は、幾何学上の１点として設定することもできるが、基本物体の表面上に固定線を定義することにより当該固定線上の点として固定点の設定を行うことも可能である。また、基本物体の表面上に固定領域を定義することにより当該固定領域内の点として固定点の設定を行うことも可能である。
【００７９】
こうして設定した固定点の近傍に位置するサンプル点については、移動距離ｄを求める式として、ｄ＝（Ｐ−Ｔ×ｋ）なる式の代わりに、所定の移動実効率Ｅ（０≦Ｅ≦１）を用いて、ｄ＝（Ｐ−Ｔ×ｋ）×Ｅなる式を用いるようにすればよい。あるサンプル点が固定点の「近傍」か否かは、当該サンプル点の最近接固定点との距離ｒに基づいて決定すればよい。すなわち、この距離ｒが、所定のしきい値ｒｔ未満であった場合には、当該サンプル点についての移動距離ｄの計算には、ｄ＝（Ｐ−Ｔ×ｋ）×Ｅなる式を用い、所定のしきい値ｒｔ以上であった場合には、当該サンプル点についての移動距離ｄの計算には、ｄ＝（Ｐ−Ｔ×ｋ）なる式を用いればよい。
【００８０】
たとえば、図１６(a) に示すように、固定点Ｆが設定されている場合、サンプル点Ｑと固定点Ｆとの距離ｒは、両点の幾何学的な距離として与えられる。一方、図１６(b) に示すように、固定線Ｌが設定されている場合、サンプル点Ｑと固定線Ｌとの距離ｒは、サンプル点Ｑから固定線Ｌに下ろした垂線の長さとして与えられる（垂線の足の位置が最近接固定点ということになる）。また、図１６(c) に示すように、固定領域Ｓが設定されている場合、サンプル点Ｑと固定領域Ｓとの距離ｒは、サンプル点Ｑと「固定領域Ｓ内の点の中で、サンプル点Ｑに最も近接した点」との距離として与えられる。
【００８１】
もっとも、実用上は、距離ｒとしきい値ｒｔとの大小関係に基づいて、ｄ＝（Ｐ−Ｔ×ｋ）なる式か、ｄ＝（Ｐ−Ｔ×ｋ）×Ｅなる式かの二者択一を行う代わりに、距離ｒの増加とともに単調増加する移動実効率関数Ｅ（ｒ）を用い（但し、Ｅmin ≦Ｅ（ｒ）≦１）、サンプル点とその最近接固定点との距離ｒに基づいて、当該サンプル点についての移動距離ｄを、ｄ＝（Ｐ−Ｔ×ｋ）×Ｅ（ｒ）なる演算によって求めるようにするのが好ましい。
【００８２】
図１７は、距離ｒの増加とともに単調増加する移動実効関数Ｅ（ｒ）の一例を示すグラフである。図示の例の場合、関数Ｅ（ｒ）の値は、ｒ＝０において最小値Ｅmin をとり、ｒ＞ｒｔまでの範囲ではｒの増加とともに単調増加し、ｒ≧ｒｔ以降は最大値１になる。このような関数Ｅ（ｒ）を用いて、すべてのサンプル点についての移動距離ｄを、ｄ＝（Ｐ−Ｔ×ｋ）×Ｅ（ｒ）なる式で求めるようにすれば、ｒ≧ｒｔの場合は、Ｅ（ｒ）＝１になるので、これまでの例と同様に、ｄ＝（Ｐ−Ｔ×ｋ）なる式を適用したときと全く同様の結果が得られる。一方、０≦ｒ＜ｒｔの場合は、ｒが小さいほど（すなわち、固定点に近いほど）、移動距離ｄは本来の値よりも小さく制限される。なお、図１７に示す例では、最小値Ｅmin を０＜Ｅmin ＜１の任意の値に設定しているが、Ｅmin ＝０に設定してもかまわない。
【００８３】
＜＜＜  §５．パラメトリック曲面を用いた実施例  ＞＞＞
ここでは、§２で述べた基本手順を、パラメトリック曲面を用いた三次元形状データに適用した具体例を述べる。三次元ＣＧの技術分野では、任意の三次元形状をパラメトリック曲面の集合体として表現する手法も広く利用されている。本発明は、基本物体１０の三次元形状データが、パラメトリック曲面の集合体として与えられた場合にも適用可能である。ただ、その具体的な手法は、§３で述べたポリゴンを用いた実施例とは若干異なる。そこで、以下、その具体的な手法の要点を説明する。
【００８４】
一般に、パラメトリック表現とは、媒介変数を用いた方程式で、曲線や曲面を表現することを指し、パラメトリック曲面は、媒介変数を用いた方程式で表現される曲面ということになる。三次元ＣＧの技術分野で最も一般的に利用されているパラメトリック曲面は、Bezier曲面やNurbs曲面である。三次元形状は、このようなパラメトリック曲面の集合体として表現することができる。本発明で取り扱う基本物体１０の三次元形状データが、パラメトリック曲面の集合体として表現されていた場合、このパラメトリック曲面上に多数のサンプル点を定義し、これを所定の移動距離ｄだけ移動させ、移動後の新サンプル点に基づいて、新たなパラメトリック曲面を作成する処理を行うことになる。ここでは、このようなパラメトリック曲「面」についての具体的手法の説明を行う前に、パラメトリック曲「線」の基本的な性質を簡単に述べておく。
【００８５】
図１８は、Bezier曲線Ｈの一般的な定義方法を示す図である。図示のとおり、Bezier曲線Ｈは、左端点Ｐ０〜右端点Ｐ３までを結ぶ任意形状の曲線であり、この曲線上の任意の点Ｐｔは、変数ｔを用いて表すことができる。すなわち、左端点Ｐ０の位置を変数ｔ＝０とし、右端点Ｐ３の位置を変数ｔ＝１とすれば、Bezier曲線Ｈ上の任意の点Ｐｔは、０≦ｔ≦１の範囲内の変数ｔで示すことができる。
【００８６】
このBezier曲線Ｈは、所定の方程式と制御点の座標値とによって一義的に定義される。Bezier曲線は、その方程式に含まれる変数ｔの次数に応じて、３次Bezier曲線、４次Bezier曲線、５次Bezier曲線、.....と様々な曲線の定義が可能であるが、一般にｎ次Bezier曲線を定義するためには、（ｎ＋１）個の制御点が必要になる。図１８には、最も一般的に利用されている３次Bezier曲線の例が示されており、この場合、４個の制御点を用いた定義が行われる。
【００８７】
３次Bezier曲線の場合、４個の制御点のうちの２個は、Bezier曲線の両端点であり、残りの２個は、Bezier曲線外の点になる。図１８に示すBezier曲線Ｈの場合、その両端点Ｐ０，Ｐ３と、曲線外の２点Ｐ１，Ｐ２が制御点となる。図では、この４個の制御点の位置を×印で示し、そのｘｙ座標値とともに、Ｐ０（ｘ０，ｙ０），Ｐ１（ｘ１，ｙ１），Ｐ２（ｘ２，ｙ２），Ｐ３（ｘ３，ｙ３）なる符号で示してある。制御点Ｐ０，Ｐ３は、Bezier曲線Ｈの両端点を規定する役割を果たし、制御点Ｐ１，Ｐ２は、この両端点間の曲線の形状を規定する役割を果たす。
【００８８】
ここで、このBezier曲線Ｈ上の任意の点Ｐｔを、その座標値とともに、Ｐｔ（ｘｔ，ｙｔ）と示すことにすれば、点Ｐｔの座標値ｘｔ，ｙｔは、図示のような２本の式によって定義される。すなわち、
＜＜＜式（１）＞＞＞
ｘｔ＝ｘ０Ｂ０（ｔ）＋ｘ１Ｂ１（ｔ）＋ｘ２Ｂ２（ｔ）＋ｘ３Ｂ３（ｔ）
＜＜＜式（２）＞＞＞
ｙｔ＝ｙ０Ｂ０（ｔ）＋ｙ１Ｂ１（ｔ）＋ｙ２Ｂ２（ｔ）＋ｙ３Ｂ３（ｔ）
ここで、ｘ０，ｙ０，ｘ１，ｙ１，ｘ２，ｙ２，ｘ３，ｙ３は、上述したとおり、４個の制御点Ｐ０，Ｐ１，Ｐ２，Ｐ３の座標値である。また、Ｂ０（ｔ），Ｂ１（ｔ），Ｂ２（ｔ），Ｂ３（ｔ）は、３次Bezier曲線の係数であり、変数ｔについての関数になる。具体的には、図１８にも示されているように、次のとおりになる。
＜＜＜式（３）＞＞＞
０≦ｔ≦１
＜＜＜式（４）＞＞＞
Ｂ０（ｔ）＝（１−ｔ）３
＜＜＜式（５）＞＞＞
Ｂ１（ｔ）＝３ｔ（１−ｔ）２
＜＜＜式（６）＞＞＞
Ｂ２（ｔ）＝３ｔ２（１−ｔ）
＜＜＜式（７）＞＞＞
Ｂ３（ｔ）＝ｔ３
＜＜＜式（８）＞＞＞
Ｂ０（ｔ）＋Ｂ１（ｔ）＋Ｂ２（ｔ）＋Ｂ３（ｔ）＝１
結局、上記式（１），（２）は、０≦ｔ≦１なる範囲内の媒介変数ｔを用いた式ということになる。たとえば、ｔ＝０を代入すると、ｘｔ＝ｘ０，ｙｔ＝ｙ０となるので、Ｐｔ（ｘｔ，ｙｔ）＝Ｐ０（ｘ０，ｙ０）に一致し、ｔ＝１を代入すると、ｘｔ＝ｘ３，ｙｔ＝ｙ３となるので、Ｐｔ（ｘｔ，ｙｔ）＝Ｐ３（ｘ３，ｙ３）に一致する。ｔが０＜ｔ＜１の場合、Ｐｔ（ｘｔ，ｙｔ）は、図示されている曲線Ｈ上のいずれかの点ということになり、ｔが０から１へ増加すると、点Ｐｔの位置は図の左から右へと移動する関係にある。
【００８９】
図１９は、このようなBezier曲線Ｈ上に４つのサンプル点Ｑ０〜Ｑ３を定義した状態を示す平面図である。図示のとおり、サンプル点Ｑ０，Ｑ３は、Bezier曲線Ｈの両端点に位置し、制御点Ｐ０，Ｐ３と同一の点ということになる。サンプル点Ｑ１，Ｑ２は、その中間に定義された点である。なお、図示されている点Ｐ１，Ｐ２は、残りの２個の制御点である。
【００９０】
サンプル点Ｑ０〜Ｑ３は、媒介変数ｔの値を決めることにより一義的に定義できる。ここでは、一例として、ｔ＝０，０．４，０．７，１の４つの値を決めることにより、４つのサンプル点Ｑ０，Ｑ１，Ｑ２，Ｑ３を定義したものとしよう。もっとも、左端のサンプル点Ｑ０はｔ＝０、右端のサンプル点Ｑ３はｔ＝１の点として定義されるが、中間のサンプル点Ｑ１，Ｑ２についてのｔの値は、必ずしも０．４，０．７にする必要はない。ただ、サンプル点は、できるだけ均一に分布するように定義するのが好ましいので、ｔの値は、０〜１の範囲内でできるだけ均一に分布する離散値を定義するのがよい。
【００９１】
図２０は、図１９に示すサンプル点Ｑ０〜Ｑ３を移動して、新サンプル点ＱＱ０〜ＱＱ３を求めた状態を示す平面図である。新サンプル点ＱＱ０〜ＱＱ３を求めるには、まず、サンプル点Ｑ０〜Ｑ３の位置において、Bezier曲線Ｈに対する法線ｎ０〜ｎ３を求める。次に、各サンプル点Ｑ０〜Ｑ３の位置について、Bezier曲線Ｈの曲がり具合を示す曲率パラメータｋを計算し、§２で述べたように、圧力パラメータＰおよび張力パラメータＴ、ならびに曲率パラメータｋを用いて、移動距離ｄを、ｄ＝Ｐ−Ｔ×ｋなる演算によって算出する。
【００９２】
図２０に示す例は、各サンプル点Ｑ０〜Ｑ３について、それぞれｄ０〜ｄ３なる移動距離が算出された場合を示しており、各法線ｎ０〜ｎ３に沿って、各サンプル点Ｑ０〜Ｑ３（黒丸）をそれぞれ移動距離ｄ０〜ｄ３だけ移動することにより、新サンプル点ＱＱ０〜ＱＱ３（黒星）が得られている。前述したとおり、各サンプル点Ｑ０〜Ｑ３の座標値は、式（１），（２）に、媒介変数ｔの値（具体的には、ｔ＝０，０．４，０．７，１）を代入することによって計算することができる。したがって、新サンプル点ＱＱ０〜ＱＱ３の座標値も、幾何学的な演算によって求めることができる。ここでは、新サンプル点ＱＱ０〜ＱＱ３を、その座標値とともに、ＱＱ０（α０，β０），ＱＱ１（α１，β１），ＱＱ２（α２，β２），ＱＱ３（α３，β３）と記述することにする。
【００９３】
こうして、４つの新サンプル点ＱＱ０〜ＱＱ３の位置が求まったら、これらに基づいて、新たなBezier曲線の定義を行う。図２１は、図２０に示す新サンプル点ＱＱ０〜ＱＱ３に基づいて、新たなBezier曲線ＨＨを定義した状態を示す平面図である。新たなBezier曲線ＨＨは、次のような方法で定義することができる。
【００９４】
まず、新サンプル点ＱＱ０〜ＱＱ３には、移動前のサンプル点Ｑ０〜Ｑ３に与えられていた媒介変数ｔの離散値をそのまま付与する。すなわち、上述の例の場合、ＱＱ０にはｔ＝０、ＱＱ１にはｔ＝０．４、ＱＱ２にはｔ＝０．７、ＱＱ３にはｔ＝１が付与される。また、新サンプル点ＱＱ０〜ＱＱ３は、その座標値（α０，β０），（α１，β１），（α２，β２），（α３，β３）が求まっているので、新たなBezier曲線ＨＨを規定する４個の制御点ＰＰ０，ＰＰ１，ＰＰ２，ＰＰ３の座標値を、それぞれ（ａ０，ｂ０），（ａ１，ｂ１），（ａ２，ｂ２），（ａ３，ｂ３）とすれば、式（１），（２）に基づいて、これらの座標値を算出することができる。
【００９５】
たとえば、新サンプル点ＱＱ１（α１，β１）に関して式（１），（２）を適用すると、ｘｔ＝α１、ｙｔ＝β１であるから、
α１＝ａ０Ｂ０（ｔ）＋ａ１Ｂ１（ｔ）＋ａ２Ｂ２（ｔ）＋ａ３Ｂ３（ｔ）
β１＝ｂ０Ｂ０（ｔ）＋ｂ１Ｂ１（ｔ）＋ｂ２Ｂ２（ｔ）＋ｂ３Ｂ３（ｔ）
なる式が成り立つ。ここで、ｔ＝０．４である。このような式が、４個の新サンプル点ＱＱ０〜ＱＱ３のすべてについて成り立つので、これらを連立させて解くことにより、４個の制御点ＰＰ０（ａ０，ｂ０），ＰＰ１（ａ１，ｂ１），ＰＰ２（ａ２，ｂ２），ＰＰ３（ａ３，ｂ３）を求めることができる。これらの４個の制御点ＰＰ０，ＰＰ１，ＰＰ２，ＰＰ３を定めることは、新たなBezier曲線ＨＨを定めることと等価である。
【００９６】
なお、ここで述べる実施例では、制御点ＰＰ０（ａ０，ｂ０）は、新サンプル点ＱＱ０（α０，β０）に一致し、制御点ＰＰ３（ａ３，ｂ３）は、新サンプル点ＱＱ３（α３，β３）に一致するので、ａ０＝α０、ｂ０＝β０、ａ３＝α３、ｂ３＝β３であり、これらの座標値についての実質的な演算は不要である。
【００９７】
かくして、もとのBezier曲線Ｈ上に定義した４個のサンプル点Ｑ０〜Ｑ３を、それぞれ法線ｎ０〜ｎ３の方向に距離ｄ０〜ｄ３だけ移動させた位置に新サンプル点ＱＱ０〜ＱＱ３を求め、これら新サンプル点ＱＱ０〜ＱＱ３に基づいて、新たなBezier曲線ＨＨ（を定義するための４個の制御点ＰＰ０，ＰＰ１，ＰＰ２，ＰＰ３）が求められたことになる。
【００９８】
これまで、１つのBezier曲線Ｈについて、新Bezier曲線ＨＨを求める処理を説明したが、複数のBezier曲線を連結して構成される任意曲線についても、全く同様の手法を適用することにより、複数の新Bezier曲線を連結して構成される新たな曲線を求めることができる。
【００９９】
たとえば、図２３に示すように、第１のBezier曲線Ｈ１０と第２のBezier曲線Ｈ２０とを連結してなる任意曲線を考える。この場合、第１のBezier曲線Ｈ１０上に４個のサンプル点（黒丸）が定義され、第２のBezier曲線Ｈ２０上にも４個のサンプル点（黒丸）が定義されるが、両Bezier曲線Ｈ１０，Ｈ２０は連結した曲線であるため、第１のBezier曲線Ｈ１０の右端のサンプル点は、第２のBezier曲線Ｈ２０の左端のサンプル点に一致する。図示のとおり、第１のBezier曲線Ｈ１０は、区間ｈ１１，ｈ１２，ｈ１３から構成され、第２のBezier曲線Ｈ２０は、区間ｈ２１，ｈ２２，ｈ２３から構成されている。
【０１００】
ここで、各サンプル点（黒丸）を移動させ、新サンプル点（黒星）を定義すれば、これら新サンプル点を連結する曲線として、新たな曲線を定義することができる。図示の例の場合、区間ｈｈ１１，ｈｈ１２，ｈｈ１３から構成される第１の新Bezier曲線ＨＨ１０と、区間ｈｈ２１，ｈｈ２２，ｈｈ２３から構成される第２の新Bezier曲線ＨＨ２０とが定義される。第１の新Bezier曲線ＨＨ１０の右端点と第２の新Bezier曲線ＨＨ２０の左端点とは一致するため、両Bezier曲線は連結した１本の曲線になる。
【０１０１】
以上、Bezier曲線についての取り扱いを述べたが、これを二次元に拡張すれば、Bezier曲面について同様の取り扱いが可能である。図２４は、Bezier曲面Ｗの一般的な定義方法を示す図である。Bezier曲線の場合は、１つの媒介変数ｔ（０≦ｔ≦１）をパラメータとして用いることにより、曲線上の任意の点Ｐｔを定義することができた。これに対して、Bezier曲面の場合は、２つの媒介変数ｕ（０≦ｕ≦１）およびｖ（０≦ｖ≦１）をパラメータとして用いることにより、曲面上の任意の点Ｐｕｖを定義することができる。すなわち、０〜１の範囲内の特定の値ｕ，ｖを決めることにより、このBezier曲面Ｗ上の任意の１点Ｐｕｖ（ｘ（ｕ，ｖ），ｙ（ｕ，ｖ），ｚ（ｕ，ｖ））を示すことができる。ここで、ｘ（ｕ，ｖ），ｙ（ｕ，ｖ），ｚ（ｕ，ｖ）は、１点Ｐｕｖのｘｙｚ座標値である。
【０１０２】
このようなBezier曲面Ｗを定義するために、図２４に示すように、Bezier曲面Ｗの４隅に、制御点Ｐ００，Ｐ３０，Ｐ０３，Ｐ３３が定義される。ここで、制御点Ｐ００は媒介変数ｕ＝０，ｖ＝０の点であり、制御点Ｐ３０は媒介変数ｕ＝１，ｖ＝０の点であり、制御点Ｐ０３は媒介変数ｕ＝０，ｖ＝１の点であり、制御点Ｐ３３は媒介変数ｕ＝１，ｖ＝１の点である。そして、制御点Ｐ００とＰ３０とを連結する曲線上の点は、いずれも媒介変数ｖ＝０の点であり、左端から右端に向かって、媒介変数ｕが０から１へと増加してゆく。同様に、制御点Ｐ０３とＰ３３とを連結する曲線上の点は、いずれも媒介変数ｖ＝１の点であり、左端から右端に向かって、媒介変数ｕが０から１へと増加してゆく。一方、制御点Ｐ００とＰ０３とを連結する曲線上の点は、いずれも媒介変数ｕ＝０の点であり、手前端から向こう端に向かって、媒介変数ｖが０から１へと増加してゆく。同様に、制御点Ｐ３０とＰ３３とを連結する曲線上の点は、いずれも媒介変数ｕ＝１の点であり、手前端から向こう端に向かって、媒介変数ｖが０から１へと増加してゆく。
【０１０３】
上記４個の制御点Ｐ００，Ｐ３０，Ｐ０３，Ｐ３３は、Bezier曲面Ｗの４隅に位置する制御点であるが、この他に、Bezier曲面Ｗの外部に１２個の制御点が定義され、合計１６個の制御点によって、１つのBezier曲面Ｗが規定されることになる。ここでは、図２４に示すように、これら１６個の制御点を、その座標値とともに、Ｐ００（ｘ（０，０），ｙ（０，０），ｚ（０，０））〜Ｐ３３（ｘ（３，３），ｙ（３，３），ｚ（３，３））と表すことにする。たとえば、ｘ（０，０）は第１の制御点Ｐ００のｘ座標値、ｙ（０，０）はｙ座標値、ｚ（０，０）はｚ座標値である。
【０１０４】
このように、１６個の制御点の座標値を定めることにより、１つのBezier曲面Ｗが規定される。そして、当該曲面上の任意の点Ｐｕｖのｘｙｚ座標値を、それぞれｘ（ｕ，ｖ）、ｙ（ｕ，ｖ）、ｚ（ｕ，ｖ）と表せば、これら各座標値は、図２５に示す式（９）〜式（１１）で与えられる。これらの式において、ｘ（０，０）、ｘ（０，１）などは、上述したように、各制御点の座標値である。また、Ｂ０（ｕ）、Ｂ０（ｖ）などは、媒介変数ｕやｖを引数とする所定の関数である（これら各関数の内容は、Bezier曲面を定義する関数として公知であるため、ここではその詳細説明は省略する）。
【０１０５】
さて、続いて、基本物体１０の三次元形状データが、図２４に示すようなBezier曲面Ｗの集合体として与えられた場合に本発明を適用する手順を説明しよう。図２４には、１つのBezier曲面Ｗしか示されていないが、実際には、多数のBezier曲面の連続体として、基本物体１０の表面１１が構成されることになる。隣接するBezier曲面は、その輪郭線が共通になるように設定されるため、全体として、連続した任意曲面が形成される。前述したとおり、Bezier曲面は、図２４に示す各制御点の座標値および図２５に示す方程式を用いて表現された曲面であり、基本物体１０は、そのような情報の集合体として与えられることになる。以下、１つのBezier曲面Ｗについての膨らませ処理の手順を説明する。
【０１０６】
まず、Bezier曲面Ｗ上の所定点をサンプル点として定義する。そのためには、Bezier曲面Ｗの媒介変数ｕ，ｖを特定の離散値に設定することにより、当該特定の離散値で示される点をサンプル点として定義すればよい。ここでは、ｕに関して、０，０．４，０．７，１という４種類の離散値を設定し、ｖに関しても同様に、０，０．４，０．７，１という４種類の離散値を設定した例を述べる。この場合、ｕとｖとの組み合わせによって、合計１６個のサンプル点が定義される。これら１６個のサンプル点は、いずれもBezier曲面Ｗ上の点である。
【０１０７】
図２６は、図２４に示すBezier曲面Ｗ上に１６個のサンプル点（黒丸）を定義した状態を示す斜視図である。Bezier曲面Ｗ上に示す曲線は、媒介変数ｕ，ｖの値を示す指標線であり、Bezier曲面Ｗ上で、ｕ＝０，０．４，０．７，１の値をとる点、ｖ＝０，０．４，０．７，１の値をとる点の位置が示されている。前述したとおり、Bezier曲面Ｗの４隅の点は、「ｕ＝０，ｖ＝０」の点、「ｕ＝１，ｖ＝０」の点、「ｕ＝０，ｖ＝１」の点、「ｕ＝１，ｖ＝１」の点であり、これら４点は、制御点Ｐ００，Ｐ３０，Ｐ０３，Ｐ３３に一致する。
【０１０８】
もちろん、媒介変数ｕ，ｖの離散値は、必ずしも０，０．４，０．７，１にする必要はない。実用上は、４通りの離散値のうち、最初の離散値を０、最後の離散値を１に設定するのが好ましいが、中間の離散値は、必ずしも０．４および０．７に設定する必要はない。要するに、ここで述べる実施例の場合、基本物体１０の三次元形状データを、２つの媒介変数ｕ，ｖ（０≦ｕ≦１、０≦ｖ≦１）と１６個の制御点の座標値とを用いて表現されるBezier曲面の集合からなるデータとして用意し、媒介変数ｕを、０，ｕ′，ｕ″，１の４通りの離散値に設定し（但し、０＜ｕ′＜ｕ″＜１）、媒介変数ｖを、０，ｖ′，ｖ″，１の４通りの離散値に設定し（但し、０＜ｖ′＜ｖ″＜１）、１つのBezier曲面について、これら離散値の組み合わせによって示される合計１６通りのサンプル点を定義することができればよい。ただ、サンプル点は、Bezier曲面Ｗ上にできるだけ均一に分布するように定義するのが好ましいので、ｕ，ｖの離散値は、０〜１の範囲内でできるだけ均一に分布する値とするのが好ましい。
【０１０９】
図２７は、図２６に示す１６個のサンプル点（黒丸）を移動して、新サンプル点（黒星）を求めた状態を示す斜視図である。新サンプル点を求めるには、まず、サンプル点の位置において、Bezier曲面Ｗに対する法線を求める。一般に、Bezier曲面等のパラメトリック曲面上の１点についての法線は、当該パラメトリック曲面を示す方程式、制御点の座標値、サンプル点を示す媒介変数の離散値に基づいて演算によって求めることができる（具体的な手法は、たとえば、「ＣＡＤ・ＣＧ技術者のためのＮＵＲＢＳ早わかり」三浦曜監修、中嶋孝行・大野敏則著  ISBN 4-7693-5124-0  などの書籍にも記載されているように公知技術である）。
【０１１０】
次に、各サンプル点の位置について、Bezier曲面Ｗの曲がり具合を示す曲率パラメータｋを計算する。パラメトリック曲面上の１点についての曲率も、当該パラメトリック曲面を示す方程式、制御点の座標値、サンプル点を示す媒介変数の離散値に基づいて演算によって求めることができる（具体的な手法は、やはり前掲書籍にも記載されているように公知技術である）。したがって、この公知手法で求めた曲率値を、０〜１の範囲になるように規格化した値を曲率パラメータｋの絶対値として用いればよい。曲率パラメータｋの符号は、ポリゴンの実施例と同様に、外側に凸となる曲面上の点の場合は正、内側に凸となる曲面上の点の場合は負と定義すればよい。曲率パラメータｋが求まれば、§２で述べたように、圧力パラメータＰおよび張力パラメータＴ、ならびに曲率パラメータｋを用いて、移動距離ｄを、ｄ＝Ｐ−Ｔ×ｋなる演算によって算出することができる。
【０１１１】
図２７に示す例は、１６個のサンプル点（黒丸）を、こうして求められた各移動距離だけ法線に沿って移動することにより、新サンプル点（黒星）を求めた例である。前述したとおり、各サンプル点の座標値は、図２５に示す式（９）〜（１１）に、媒介変数ｕ，ｖの値（具体的には、０，０．４，０．７，１のいずれか）を代入することによって計算することができる。したがって、新サンプル点の座標値も、幾何学的な演算によって求めることができる。なお、§４で述べた固定点の設定を行う場合には、所定の移動実効率Ｅ（０≦Ｅ≦１）を用いて、ｄ＝（Ｐ−Ｔ×ｋ）×Ｅなる演算によって移動距離ｄを演算すればよい。移動実効率Ｅとしては、図１７に示すような移動実効率関数Ｅ（ｒ）を用いることができる。
【０１１２】
こうして、１６個の新サンプル点（黒星）の位置が求まったら、これらに基づいて、図２７に示すような新たなBezier曲面ＷＷの定義を行う。新たなBezier曲面ＷＷは、次のような方法で定義することができる。
【０１１３】
まず、各新サンプル点には、移動前のサンプル点に与えられていた媒介変数ｕ，ｖの離散値（図２６に示されている離散値）をそのまま付与する。これら新サンプル点は、その座標値が求まっているので、これら座標値と上記離散値とに基づいて、新たなBezier曲面ＷＷを規定する１６個の制御点ＰＰ００〜ＰＰ３３の座標値を算出することができる。
【０１１４】
たとえば、ｘ座標値に関しては、図２５に示す式（９）に、（ｕ，ｖ）についての１６通りの組み合わせを代入することにより、ｘ（０，０）〜ｘ（３，３）の１６個の未知数（すなわち、新たなBezier曲面ＷＷを規定する１６個の制御点ＰＰ００〜ＰＰ３３のｘ座標値）を含む連立方程式を１６本作成することができる。ここで、各連立方程式の左辺ｘ（ｕ，ｖ）は、新サンプル点のｘ座標値である。この１６本の連立方程式を解くことにより、未知数ｘ（０，０）〜ｘ（３，３）を求めることができる。同様に、式（１０）を用いて未知数ｙ（０，０）〜ｙ（３，３）を求め、式（１１）を用いて未知数ｚ（０，０）〜ｚ（３，３）を求めることができる。
【０１１５】
こうして、１６個の制御点ＰＰ００〜ＰＰ３３の位置を定めることは、新たなBezier曲面ＷＷを定めることと等価である。なお、ここで述べる実施例では、４隅の制御点ＰＰ００，ＰＰ３０，ＰＰ０３，ＰＰ３３は、４個の新サンプル点に一致するので、これら４個の制御点の座標値についての実質的な演算は不要である。
【０１１６】
かくして、もとのBezier曲面Ｗ上に定義した１６個のサンプル点を、それぞれ法線方向に所定距離だけ移動させた位置に新サンプル点を求め、これら新サンプル点に基づいて、新たなBezier曲面ＷＷ（を定義するための１６個の制御点ＰＰ００〜ＰＰ３３）が求められたことになる。
【０１１７】
このように、パラメトリック曲面を示す方程式、新サンプル点の座標値、新サンプル点についての移動前のサンプル点の媒介変数の離散値に基づいて、新パラメトリック曲面の制御点の座標値を演算し、新パラメトリック曲面を示す方程式およびその制御点の座標値を用いて表現される新パラメトリック曲面の集合からなる三次元形状データを作成することができる。
【０１１８】
なお、図２７では、１つのBezier曲面Ｗについて、新Bezier曲面ＷＷを求める処理を説明したが、複数のBezier曲面を連結して構成される任意曲面についても、全く同様の手法を適用することにより、複数の新Bezier曲面を連結して構成される新たな曲線を求めることができる。
【０１１９】
ここで述べる例の場合、図２６に示すように、媒介変数ｕ，ｖの最初の離散値を０、最後の離散値を１に設定し、全１６個のサンプル点のうち、１２個のサンプル点がBezier曲面Ｗの輪郭線上にくるようにしている。そのため、複数のBezier曲面の連続体からなる任意曲面に本発明を適用しても、生成される複数の新Bezier曲面は、その輪郭線上でサンプル点を共有するため、相互に連結したものとなる。したがって、実用上は、媒介変数ｕ，ｖの最初の離散値を０、最後の離散値を１に設定するのが好ましい。
【０１２０】
媒介変数ｕ，ｖを、たとえば、０．１，０．３，０．６，０．９のような４つの離散値に設定した場合、１つのBezier曲面のサンプル点と隣接する別なBezier曲面のサンプル点とに共有点が存在しなくなるため、生成される複数の新Bezier曲面は、その輪郭線上で不連続になる。しかしながら、このような不連続を解消するような処理（たとえば、不連続部分を滑らかに連結するような曲面に置き換える処理）を行うようにすれば、離散値を上例のように設定しても、本発明は実施可能である。
【０１２１】
かくして、Bezier曲面の集合体として、新たな三次元形状データの作成が行われる。こうして作成された三次元形状データは、もとの基本物体１０の表面１１を所定の条件下で膨らませることにより得られた表面を示すデータであるが、シート状物体２０を張り付けた状態を示す三次元形状データとして利用することができる。
【０１２２】
以上、パラメトリック曲面として、Bezier曲面を用いた例を説明したが、本発明は、必ずしもBezier曲面を用いた例に限定されるものではなく、制御点を用いたパラメトリック曲面に広く適用可能である。要するに、図６の流れ図において、ステップＳ１の基本物体データ入力段階で、基本物体１０の三次元形状データを、パラメトリック曲面を示す方程式および制御点の座標値を用いて表現されるパラメトリック曲面の集合からなるデータとして入力し、ステップＳ３のサンプル点定義段階で、パラメトリック曲面の媒介変数を特定の離散値に設定することにより、当該特定の離散値で示される点をサンプル点として定義し、ステップＳ４の法線演算段階で、パラメトリック曲面を示す方程式、制御点の座標値、サンプル点を示す媒介変数の離散値に基づいて、当該サンプル点の位置に立てた法線を演算し、ステップＳ５の曲率パラメータ演算段階で、パラメトリック曲面を示す方程式、制御点の座標値、サンプル点を示す媒介変数の離散値に基づいて、当該サンプル点の位置における曲率パラメータを演算し、ステップＳ８のシート状物体データ作成段階で、パラメトリック曲面を示す方程式、新サンプル点の座標値、新サンプル点についての移動前のサンプル点の媒介変数の離散値に基づいて、新パラメトリック曲面の制御点の座標値を演算し、新パラメトリック曲面を示す方程式およびその制御点の座標値を用いて表現される新パラメトリック曲面の集合からなる三次元形状データを作成するようにすればよい。
【０１２３】
＜＜＜  §６．本発明に係る装置の構成  ＞＞＞
最後に、図２８のブロック図を参照して、本発明に係る三次元形状データの作成装置の基本構成を説明する。この図２８に示す装置は、図６の流れ図のステップＳ１〜Ｓ８を実行するための装置であり、三次元の基本物体の表面にシート状物体を張り付けた状態を示す三次元形状データを作成する装置である。実際には、この装置は、コンピュータに専用のプログラムを組み込むことによって実現される。なお、この装置は、§４で述べた固定点の設定機能を有している。
【０１２４】
基本物体データ格納部１１０は、外部から入力された基本物体データを格納する構成要素であり、この基本物体データ格納部１１０に対して、図６の流れ図のステップＳ１が実行される。ここに格納される基本物体データは、基本物体１０の表面形状を示すデータであれば、どのような形式のデータであってもかまわない。具体的には、§３で述べたようなポリゴンの集合体からなるデータや、§５で述べたようなパラメトリック曲面の集合体からなるデータを用いることができる。
【０１２５】
サンプル点定義部１２０は、基本物体データ格納部１１０内に格納された基本物体データに基づいて、基本物体１０の表面に多数のサンプル点を定義する構成要素であり、図６の流れ図におけるステップＳ３の処理を実行する機能を有している。具体的なサンプル点の定義処理については、既に、§３や§５で述べたとおりである。
【０１２６】
曲率パラメータ演算部１３０は、サンプル点定義部１２０によって定義された各サンプル点の位置における基本物体１０の表面の曲がり具合の程度を示す曲率パラメータｋを演算によって求める構成要素であり、図６の流れ図におけるステップＳ５の処理を実行する機能を有している。曲率パラメータｋの演算は、基本物体データ格納部１１０内に格納された基本物体データに対して実行されることになるが、その具体的な演算方法については、既に、§３や§５で述べたとおりである。
【０１２７】
パラメータ設定部１４０は、外部からの設定操作に基づいて、圧力パラメータＰと張力パラメータＴとを設定する構成要素であり、図６の流れ図におけるステップＳ２の処理を実行する機能を有している。既に述べたとおり、圧力パラメータＰは、基本物体１０の表面を外側に向けて膨らませる度合いを示すパラメータであり、張力パラメータＴは、シート状物体２０の表面張力の強さを示すパラメータである。ユーザは、これらのパラメータを任意の値に設定することにより、最終的に得られるシート状物体データによって表現される物体外形の形状を調整することができる。
【０１２８】
移動距離演算部１５０は、サンプル点定義部１２０によって定義された各サンプル点について、パラメータ設定部１４０で設定された圧力パラメータＰおよび張力パラメータＴ、ならびに当該サンプル点について、曲率パラメータ演算部１３０によって求められた曲率パラメータｋを用いて、移動距離ｄを、ｄ＝（Ｐ−Ｔ×ｋ）・Ｅ（ｒ）なる演算によって求める構成要素であり、図６の流れ図におけるステップＳ６の処理を実行する機能を有している。ここで、Ｅ（ｒ）は、§４で述べた移動実効率関数であり、たとえば、図１７のように、距離ｒの増加とともに単調増加する関数Ｅ（ｒ）になる。移動距離演算部１５０内には、このような関数Ｅ（ｒ）を示すデータが格納されており、基本物体データ格納部１１０に格納されている基本物体データを参照することにより、サンプル点と、その最近接固定点との距離ｒを求め、関数Ｅ（ｒ）の値を算出することができる。
【０１２９】
法線演算部１６０は、サンプル点定義部１２０によって定義された各サンプル点の位置に、基本物体１０の表面に立てた法線を演算によって求める構成要素であり、図６の流れ図におけるステップＳ４の処理を実行する機能を有している。法線を求める具体的な処理方法については、既に、§３や§５で述べたとおりである。
【０１３０】
新サンプル点定義部１７０は、サンプル点定義部１２０によって定義された各サンプル点を、法線演算部１６０によって求められた法線方向に、移動距離演算部１５０によって求められた移動距離ｄだけ移動させ、移動後の位置に新サンプル点を定義する構成要素であり、図６の流れ図におけるステップＳ７の処理を実行する機能を有している。新サンプル点を求める具体的な処理方法については、既に、§３や§５で述べたとおりである。
【０１３１】
シート状物体データ作成部１８０は、新サンプル点定義部１７０で定義された新サンプル点に基づいて、基本物体１０の表面にシート状物体２０を張り付けた状態を示す三次元形状データを作成する構成要素であり、図６の流れ図におけるステップＳ８の処理を実行する機能を有している。その具体的な処理方法については、既に、§３や§５で述べたとおりである。ここで作成されたシート状物体データは、外部へと出力される。このシート状物体データは、基本物体データ格納部１１０に格納されているデータで表現される基本物体１０の表面に、シート状物体２０を張り付けた状態を示す三次元形状データとして用いられるＣＧ用データであるが、実際には、基本物体１０の表面を膨らませる処理を行うことにより得られたデータということになる。
【０１３２】
固定点設定部１９０は、§４で述べた固定点を設定するための構成要素である。この固定点は、実際には、図１５に示す例のように、文字通りの点として固定点１５のような設定を行うこともできるし、基本物体１０の表面上に固定線１６を定義することにより当該固定線１６上の点として設定することもできるし、基本物体１０の表面上に固定領域１７を定義することにより当該固定領域１７内の点として設定することもできる。実用上は、基本物体データ格納部１１０に格納されているデータに基づいて、図１５に示すように、ディスプレイ画面上に、基本物体１０の形状を表示させ、この表示画面上における操作入力により、固定点１５、固定線１６、固定領域１７などを設定できるようなインターフェイスを用意しておくのが好ましい。こうして設定された固定点に関する情報は、基本物体データ格納部１１０に格納されている基本物体データに付加される。移動距離演算部１５０は、前述したとおり、この固定点に関する情報を含んだ基本物体データに基づいて、各サンプル点について、その最近接固定点との距離ｒを求め、関数Ｅ（ｒ）の値を算出する。
【図面の簡単な説明】
【０１３３】
【図１】本発明に係る装置による作成処理の材料となる基本物体１０およびシート状物体２０の一例を示す斜視図である。
【図２】基本物体１０の表面にシート状物体２０を密着させて張り付けた状態を示す正断面図である。
【図３】基本物体１０を包み込むようにシート状物体２０を張り付けた状態を示す正断面図である。
【図４】図３に示す状態における基本物体１０の表面１１の位置とシート状物体２０の表面２１の位置との関係を示す正面図である。
【図５】基本物体１０の表面１１を外側に向けて膨らませることにより、シート状物体２０の表面２１を形成する原理を示す正面図である。
【図６】本発明に係る三次元形状データの作成方法の基本手順を示す流れ図である。
【図７】基本物体１０の表面１１上に定義されたサンプル点Ｑ１〜Ｑ５を法線方向に移動させることにより膨らんだ表面１２を求める原理を示す正断面図である。
【図８】ポリゴンの集合からなる基本物体の一部を示す上面図である。
【図９】図８に示す基本物体の一部を構成する各ポリゴンに単位法線ベクトルＮ１〜Ｎ４を定義した状態を示す斜視図である。
【図１０】図９に示す単位法線ベクトルＮ１〜Ｎ４の和ベクトルΣＮを着目サンプル点Ｑ上に求めた状態を示す斜視図である。
【図１１】図８に示す基本物体の一部を構成する各ポリゴンの辺に、単位ベクトルＶａ〜Ｖｄを定義した状態を示す上面図である。
【図１２】図１１に示す単位ベクトルＶａ〜Ｖｄの平均ベクトルＶｍを着目サンプル点Ｑ上に求めた状態を示す斜視図である。
【図１３】より曲がり具合の大きな基本物体の一部について求められた平均ベクトルＶｍを示す斜視図である。
【図１４】各ポリゴンの頂点となるサンプル点Ｑ１〜Ｑ５を移動して、新サンプル点ＱＱ１〜ＱＱ５を頂点とする新たなポリゴンを求めた状態を示す斜視図である。
【図１５】基本物体１０上に固定点１５、固定線１６、固定領域１７を定義した状態を示す斜視図である。
【図１６】サンプル点Ｑと固定点Ｆ、固定線Ｌ、固定領域Ｓとの位置関係を示す平面図である。
【図１７】距離ｒの増加とともに単調増加する移動実効関数Ｅ（ｒ）の一例を示すグラフである。
【図１８】Bezier曲線Ｈの一般的な定義方法を示す図である。
【図１９】Bezier曲線Ｈ上に４つのサンプル点Ｑ０〜Ｑ３を定義した状態を示す平面図である。
【図２０】図１９に示すサンプル点Ｑ０〜Ｑ３を移動して、新サンプル点ＱＱ０〜ＱＱ３を求めた状態を示す平面図である。
【図２１】図２０に示す新サンプル点ＱＱ０〜ＱＱ３に基づいて、新たなBezier曲線ＨＨを定義した状態を示す平面図である。
【図２２】図２１に示すBezier曲線ＨＨを定義するための制御点ＰＰ０〜ＰＰ３を示す平面図である。
【図２３】複数のBezier曲線で表現される任意曲線を移動して新たな曲線を求めた状態を示す平面図である。
【図２４】Bezier曲面Ｗの一般的な定義方法を示す図である。
【図２５】図２４に示すBezier曲面Ｗ上の任意の点Ｐｕｖの座標値を求める式を示す図である。
【図２６】図２４に示すBezier曲面Ｗ上に１６個のサンプル点を定義した状態を示す斜視図である。
【図２７】図２６に示す１６個のサンプル点を移動させることにより、新たなBezier曲面ＷＷを定義した状態を示す斜視図である。
【図２８】本発明に係る三次元形状データの作成装置の基本構成を示すブロック図である。
【符号の説明】
【０１３４】
１０：基本物体
１１：基本物体の表面
１２：膨らんだ基本物体の表面
１５：固定点
１６：固定線
１７：固定領域
２０：シート状物体
２１：シート状物体の表面
１１０：基本物体データ格納部
１２０：サンプル点定義部
１３０：曲率パラメータ演算部
１４０：パラメータ設定部
１５０：移動距離演算部
１６０：法線演算部
１７０：新サンプル点定義部
１８０：シート状物体データ作成部
１９０：固定点設定部
Ａ〜Ｄ：ポリゴンの頂点
ａ〜ｄ：ポリゴンの辺
ａ０，ａ１，ａ２，ａ３：ｘ座標値
Ｂ０（ｔ）〜Ｂ３（ｔ）：方程式の係数
Ｂ０（ｕ）〜Ｂ３（ｕ）：方程式の係数
Ｂ０（ｖ）〜Ｂ３（ｖ）：方程式の係数
ｂ０，ｂ１，ｂ２，ｂ３：ｙ座標値
ｄ０〜ｄ５：移動距離
Ｅ（ｒ）：移動実行率関数
Ｆ：固定点
Ｇ１〜Ｇ４：ポリゴン（三角形）
Ｈ，Ｈ１０，Ｈ２０，ＨＨ，ＨＨ１０，ＨＨ２０：Bezier曲線
ｈ１１，ｈ１２，ｈ１３，ｈ２１，ｈ２２，ｈ２３：Bezier曲線の各区間
ｈｈ１１，ｈｈ１２，ｈｈ１３，ｈｈ２１，ｈｈ２２，ｈｈ２３：Bezier曲線の各区間
ｋ：曲率パラメータ
Ｌ：固定線
Ｎ１〜Ｎ４：単位法線ベクトル
ΣＮ：和ベクトル
ｎ０〜ｎ５：法線
Ｐ：圧力パラメータ
Ｐ０〜Ｐ３：Bezier曲線の制御点
Ｐ００〜Ｐ３３：Bezier曲面の制御点
ＰＰ０〜ＰＰ３：Bezier曲線の制御点
Ｐｕｖ：Bezier曲面上の任意の点
Ｑ：着目サンプル点
Ｑ０〜Ｑ５：サンプル点
ＱＱ０〜ＱＱ５：新サンプル点
ｒ：サンプル点Ｑと最近接固定点との距離
ｒｔ：距離のしきい値
Ｓ：固定領域
Ｓ１〜Ｓ８：流れ図の各ステップ
Ｔ：張力パラメータ
ｔ：Bezier曲線の媒介変数
ｕ，ｖ：Bezier曲面の媒介変数
Ｖａ〜Ｖｄ：単位ベクトル
Ｖｍ：平均ベクトル
Ｗ，ＷＷ：Bezier曲面
ｘ０，ｘ１，ｘ２，ｘ３，ｘｔ：ｘ座標値
ｘ（ｕ，ｖ），ｘ（０，０）〜ｘ（３，３）：ｘ座標値
ｙ０，ｙ１，ｙ２，ｙ３，ｙｔ：ｙ座標値
ｙ（ｕ，ｖ），ｙ（０，０）〜ｙ（３，３）：ｙ座標値
ｚ（ｕ，ｖ），ｚ（０，０）〜ｚ（３，３）：ｚ座標値
α０，α１，α２，α３：ｘ座標値
β０，β１，β２，β３：ｙ座標値
【図１】
2008299473.tif 000003
【図２】
2008299473.tif 000004
【図３】
2008299473.tif 000005
【図４】
2008299473.tif 000006
【図５】
2008299473.tif 000007
【図６】
2008299473.tif 000008
【図７】
2008299473.tif 000009
【図８】
2008299473.tif 000010
【図９】
2008299473.tif 000011
【図１０】
2008299473.tif 000012
【図１１】
2008299473.tif 000013
【図１２】
2008299473.tif 000014
【図１３】
2008299473.tif 000015
【図１４】
2008299473.tif 000016
【図１５】
2008299473.tif 000017
【図１６】
2008299473.tif 000018
【図１７】
2008299473.tif 000019
【図１８】
2008299473.tif 000020
【図１９】
2008299473.tif 000021
【図２０】
2008299473.tif 000022
【図２１】
2008299473.tif 000023
【図２２】
2008299473.tif 000024
【図２３】
2008299473.tif 000025
【図２４】
2008299473.tif 000026
【図２５】
2008299473.tif 000027
【図２６】
2008299473.tif 000028
【図２７】
2008299473.tif 000029
【図２８】
2008299473.tif 000030