(57)【要約】【課題】  表面に縫い目を有する物体の高品質な三次元形状データを効率的に作成する。【解決手段】  縫い目の情報を含まない物体の三次元形状データＤｂをコンピュータに入力し、縫い目の物体表面上での方向を示す第１の基準線Ｌ１を定義する。１ピッチ分の縫い目の物体表面に対する浮き沈みの形状を示す縫製処理パラメータを定義し、第１の基準線Ｌ１に沿って、物体表面に対して浮き沈みを生じる縫い目の三次元空間上での方向を示す第２の基準線Ｌ２を求める。縫い目を構成する糸の断面図形を定義し、この断面図形を、第２の基準線Ｌ２に沿って配置してゆき、多数の断面図形の輪郭線を滑らかに結ぶ曲面により、糸の三次元形状データを作成する。作成した糸の三次元形状データを、もとの物体の三次元形状データＤｂに合成し、縫い目を含んだ合成形状データとする。【選択図】  図６
2006302060.tif 000002
【特許請求の範囲】
【請求項１】
表面に縫い目を有する物体について、縫い目を含めた三次元形状データを作成する装置であって、
縫い目の情報を含まない物体の三次元形状データを、基本形状データとして入力する基本形状データ入力手段と、
オペレータの指示に基づいて、前記基本形状データで示される物体の表面上に、縫い目の物体表面上での方向を示す第１の基準線を定義する第１の基準線定義手段と、
オペレータの指示に基づいて、縫い目を構成する糸の断面形状と、そのサイズと、を示す糸断面パラメータを定義する糸断面パラメータ定義手段と、
オペレータの指示に基づいて、縫い目の１ピッチ分の長さと、この１ピッチ分の縫い目の物体表面に対する浮き沈みの形状と、を示す縫製処理パラメータを定義する縫製処理パラメータ定義手段と、
前記第１の基準線と前記縫製処理パラメータとに基づいて、物体表面に対して浮き沈みを生じる縫い目の三次元空間上での方向を示す第２の基準線を作成する第２の基準線作成手段と、
前記第２の基準線と前記糸断面パラメータとに基づいて、縫い目を構成する糸の三次元形状データを作成する糸形状データ作成手段と、
前記基本形状データに前記糸の三次元形状データを合成することにより、縫い目の情報を含んだ物体の三次元形状データである合成形状データを作成する合成形状データ作成手段と、
を備えることを特徴とする表面に縫い目を有する物体の三次元形状データの作成装置。
【請求項２】
請求項１に記載の作成装置において、
第１の基準線定義手段が、オペレータの指示に基づいて、基本形状データで示される物体が定義された三次元空間上に、直線もしくは曲線からなる参照線と、所定の投影方向を示す投影方向ベクトルと、を定義する機能を有し、前記参照線を前記投影方向ベクトルの示す投影方向に投影したときに、前記基本形状データで示される物体の表面上に形成される投影像を第１の基準線として定義することを特徴とする表面に縫い目を有する物体の三次元形状データの作成装置。
【請求項３】
請求項１または２に記載の作成装置において、
糸断面パラメータ定義手段が、ｘｙ二次元直交座標系において、（ｘ／ａ）２／ε＋（ｙ／ｂ）２／ε＝１（但し、εは所定の定数）なる式によって示される超二次曲線を用いて糸断面パラメータを定義することを特徴とする表面に縫い目を有する物体の三次元形状データの作成装置。
【請求項４】
請求項１または２に記載の作成装置において、
糸断面パラメータ定義手段が、ｒθ極座標系において、角度θ（０≦θ＜２π）と、この角度θに対応する距離ｒ（θ）と、の組み合わせを示す断面形状テーブルを用いて糸断面パラメータを定義することを特徴とする表面に縫い目を有する物体の三次元形状データの作成装置。
【請求項５】
請求項１〜４のいずれかに記載の作成装置において、
縫製処理パラメータ定義手段が、縫い目の１ピッチ分の長さλと、周期λをもった周期関数ｈ（ｓ）と、を用いて縫製処理パラメータを定義する機能を有し、
第２の基準線作成手段が、第１の基準線上にあり、前記第１の基準線上に定義された所定の始点Ｐ０からの前記第１の基準線に沿った距離がｓの位置にある点Ｐに関して、当該点Ｐの位置に立てた物体表面についての法線ｎを求め、この法線ｎ上にあり、点Ｐから距離ｈ（ｓ）だけ隔たった位置にある点Ｑを求め、点Ｑの集合によって第２の基準線を作成する機能を有することを特徴とする表面に縫い目を有する物体の三次元形状データの作成装置。
【請求項６】
請求項１〜４のいずれかに記載の作成装置において、
縫製処理パラメータ定義手段が、縫い目の１ピッチ分の長さλと、ｈ（ｓ）＝Ａsinγ（２πｓ／λ）なる式（但し、Ａ，γは所定の定数）で示される周期関数ｈ（ｓ）と、を用いて縫製処理パラメータを定義する機能を有し、
第２の基準線作成手段が、第１の基準線上にあり、前記第１の基準線上に定義された所定の始点Ｐ０からの前記第１の基準線に沿った距離がｓの位置にある点Ｐに関して、当該点Ｐの位置に立てた物体表面についての法線ｎを求め、この法線ｎ上にあり、点Ｐから距離ｈ（ｓ）だけ離れた位置にある点Ｑを求め、点Ｑの集合によって第２の基準線を作成することを特徴とする表面に縫い目を有する物体の三次元形状データの作成装置。
【請求項７】
請求項１〜４のいずれかに記載の作成装置において、
縫製処理パラメータ定義手段が、縫い目の１ピッチ分の長さλと、０〜λの範囲内の複数の離散値ｓおよび個々の離散値に対応する所定値ｈ（ｓ）の組み合わせを示す起伏テーブルと、を用いて縫製処理パラメータを定義する機能を有し、
第２の基準線作成手段が、第１の基準線上にあり、前記第１の基準線上に定義された所定の始点Ｐ０からの前記第１の基準線に沿った距離が（ｋλ＋ｓ）の位置（但し、ｋ＝０，１，２，…）にある点Ｐに関して、当該点Ｐの位置に立てた物体表面についての法線ｎを求め、この法線ｎ上にあり、点Ｐから距離ｈ（ｓ）だけ離れた位置にある点Ｑを求め、点Ｑの集合によって第２の基準線を作成することを特徴とする表面に縫い目を有する物体の三次元形状データの作成装置。
【請求項８】
請求項７に記載の作成装置において、
第２の基準線作成手段が、起伏テーブルに基づく離散的情報に対して補間処理を行い、補間処理後の情報を用いて第２の基準線を作成することを特徴とする表面に縫い目を有する物体の三次元形状データの作成装置。
【請求項９】
請求項１〜８のいずれかに記載の作成装置において、
糸形状データ作成手段が、第２の基準線上に所定間隔で代表点を定義し、各代表点位置に、糸断面パラメータで示される糸の二次元断面図形を、当該代表点における前記第２の基準線の接線ベクトルに対して直交する向きに配置する処理を行い、配置された二次元断面図形を利用して、糸の三次元形状データを作成することを特徴とする表面に縫い目を有する物体の三次元形状データの作成装置。
【請求項１０】
請求項９に記載の作成装置において、
第２の基準線作成手段が、方程式により表現可能な第２の基準線を作成する機能を有し、
糸形状データ作成手段が、所定の代表点における第２の基準線の接線ベクトルを、前記方程式の当該代表点における微分値を利用して求める機能を有することを特徴とする表面に縫い目を有する物体の三次元形状データの作成装置。
【請求項１１】
請求項９に記載の作成装置において、
第２の基準線作成手段が、第１の基準線上に所定間隔で標本点Ｐ（ｉ）を定義し、縫製処理パラメータに基づいて各標本点Ｐ（ｉ）を浮き沈みさせることにより、第２の基準線を構成する代表点Ｑ（ｉ）を求める機能を有することを特徴とする表面に縫い目を有する物体の三次元形状データの作成装置。
【請求項１２】
請求項１１に記載の作成装置において、
糸形状データ作成手段が、第ｉ番目の代表点Ｑ（ｉ）における第２の基準線の接線ベクトルＴ（ｉ）を、第（ｉ＋１）番目の代表点Ｑ（ｉ＋１）を利用して、点Ｑ（ｉ）とＱ（ｉ＋１）とを結ぶ線分に沿ったベクトルとして求める機能を有することを特徴とする表面に縫い目を有する物体の三次元形状データの作成装置。
【請求項１３】
請求項１１に記載の作成装置において、
糸形状データ作成手段が、個々の代表点Ｑ（ｉ）について、第２の基準線上の点であって、隣接する代表点よりも近くに存在する近接点ＱＱ（ｉ）を定義し、各代表点Ｑ（ｉ）における第２の基準線の接線ベクトルＴ（ｉ）を、当該代表点Ｑ（ｉ）と当該代表点について定義された近接点ＱＱ（ｉ）とを結ぶ線分に沿ったベクトルとして求める機能を有することを特徴とする表面に縫い目を有する物体の三次元形状データの作成装置。
【請求項１４】
請求項１１〜１３のいずれかに記載の作成装置において、
第２の基準線作成手段が、標本点Ｐ（ｉ）の位置に立てた物体表面についての法線ｎ（ｉ）を求め、この法線ｎ（ｉ）上にあり、標本点Ｐ（ｉ）から縫製処理パラメータに基づいて定まる所定距離だけ離れた位置にある点を代表点Ｑ（ｉ）とする処理を行い、
糸形状データ作成手段が、代表点Ｑ（ｉ）の位置に糸の二次元断面図形Ｃ（ｉ）を配置する際に、前記代表点Ｑ（ｉ）を含み、前記代表点Ｑ（ｉ）における第２の基準線の接線ベクトルＴ（ｉ）に直交する投影面を定義し、前記接線ベクトルＴ（ｉ）を前記法線ｎ（ｉ）の方向へ投影することによって前記投影面上に得られる投影ベクトルＴＴ（ｉ）の位置を基準として配置を行うことを特徴とする表面に縫い目を有する物体の三次元形状データの作成装置。
【請求項１５】
請求項９〜１４のいずれかに記載の作成装置において、
糸形状データ作成手段が、糸の二次元断面図形の輪郭線上に複数の制御点を定義し、第ｉ番目の代表点Ｑ（ｉ）の位置に配置された二次元断面図形Ｃ（ｉ）について定義された１つもしくは複数の制御点と、第（ｉ＋１）番目の代表点Ｑ（ｉ＋１）の位置に配置された二次元断面図形Ｃ（ｉ＋１）について定義された１つもしくは複数の制御点と、を頂点とするポリゴンの集合によって、糸の三次元形状データを作成することを特徴とする表面に縫い目を有する物体の三次元形状データの作成装置。
【請求項１６】
請求項１５に記載の作成装置において、
糸形状データ作成手段が、第ｉ番目の代表点Ｑ（ｉ）の位置に配置された二次元断面図形Ｃ（ｉ）について定義された第ｊ番目の制御点Ｇ（ｉ，ｊ）および第（ｊ＋１）番目の制御点Ｇ（ｉ，ｊ＋１）と、第（ｉ＋１）番目の代表点Ｑ（ｉ＋１）の位置に配置された二次元断面図形Ｃ（ｉ＋１）について定義された第ｊ番目の制御点Ｇ（ｉ＋１，ｊ）および第（ｊ＋１）番目の制御点Ｇ（ｉ＋１，ｊ＋１）と、の合計４点を頂点とする四角形の集合によって、糸の三次元形状データを作成することを特徴とする表面に縫い目を有する物体の三次元形状データの作成装置。
【請求項１７】
請求項１〜１６のいずれかに記載の作成装置としてコンピュータを機能させるためのプログラム。
【請求項１８】
表面に縫い目を有する物体について、縫い目を含めた三次元形状データを作成する方法であって、
縫い目の情報を含まない物体の三次元形状データが、コンピュータ内の記憶手段に、基本形状データとして入力される基本形状データ入力段階と、
コンピュータが、オペレータの指示に基づいて、前記基本形状データで示される物体の表面上に、縫い目の物体表面上での方向を示す第１の基準線を定義し、これを記憶手段に格納する第１の基準線定義段階と、
コンピュータが、オペレータの指示に基づいて、縫い目を構成する糸の断面形状と、そのサイズと、を示す糸断面パラメータを定義し、これを記憶手段に格納する糸断面パラメータ定義段階と、
コンピュータが、オペレータの指示に基づいて、縫い目の１ピッチ分の長さと、この１ピッチ分の縫い目の物体表面に対する浮き沈みの形状と、を示す縫製処理パラメータを定義し、これを記憶手段に格納する縫製処理パラメータ定義段階と、
コンピュータが、前記第１の基準線と前記縫製処理パラメータとに基づいて、物体表面に対して浮き沈みを生じる縫い目の三次元空間上での方向を示す第２の基準線を作成し、これを記憶手段に格納する第２の基準線作成段階と、
コンピュータが、前記第２の基準線と前記糸断面パラメータとに基づいて、縫い目を構成する糸の三次元形状データを作成し、これを記憶手段に格納する糸形状データ作成段階と、
コンピュータが、前記基本形状データに前記糸の三次元形状データを合成することにより、縫い目の情報を含んだ物体の三次元形状データである合成形状データを作成し、これを記憶手段に格納する合成形状データ作成段階と、
を有することを特徴とする表面に縫い目を有する物体の三次元形状データの作成方法。
【請求項１９】
請求項１８に記載の作成方法において、
基本形状データ入力段階では、多数のポリゴンによって物体表面を表現した三次元形状データが、基本形状データとして入力されることを特徴とする表面に縫い目を有する物体の三次元形状データの作成方法。
【請求項２０】
請求項１８に記載の作成方法において、
基本形状データ入力段階では、パラメトリック曲面によって物体表面を表現した三次元形状データが、基本形状データとして入力されることを特徴とする表面に縫い目を有する物体の三次元形状データの作成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、表面に縫い目を有する物体の三次元形状データを作成する技術に関し、特に、表面に縫い目を有する商品の見本画像を、ＣＧ（コンピュータグラフィックス）の技術を利用して作成する手法に関する。
【背景技術】
【０００２】
コンピュータの性能向上により、産業界の様々な分野でＣＧ画像が利用されるようになってきている。たとえば、建築物、家具、自動車などの設計段階では、通常、多くのＣＧ画像が利用されている。また、コンピュータを利用した製品のプレゼンテーションや映画などの種々の映像表現においても、物品の様々なＣＧ画像が不可欠である。更に、最近では、商品カタログなどにも、実際の商品写真の代わりに、ＣＧ画像が利用される例も少なくない。一般に、ＣＡＤを用いた設計段階を経て製品化された商品の場合、設計に用いたＣＡＤデータを流用してＣＧ画像を作成することができるため、商品カタログに掲載するＣＧ画像も、比較的容易に用意することが可能になる。
【０００３】
ソファなどの家具、自動車の内装、衣服、バッグ、靴、鞄など、表面に布地や革地による加飾を施した物品の場合、その性質上、表面に縫い目が現れることになる。したがって、これらの物品をＣＧ画像で表現する場合、縫い目を含めた物品の画像を作成するのが好ましい。特に、縫い目が、物品の意匠を構成する重要な要素となっている場合には、縫い目を含んだＣＧ画像による表現が欠かせない。たとえば、下記の特許文献１には、服飾品のできあがり状態をＣＧ画像で確認することができるように、縫製ラインやステッチなどの立体感を、光学的に特別な陰影処理を施すことにより表現する技術が開示されている。
【特許文献１】特開２０００−２３５５８９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
家具や自動車の内装などのインテリア製品や、衣服、バッグ、靴、鞄などのアパレル製品では、縫い目は機能的な産物としての意味だけではなく、デザイン上の重要な構成要素としての意味をもち、消費者から見た場合に、商品価値を左右する重大な要因になる。このため、商品のカタログやプレゼンテーションに用いるＣＧ画像では、縫い目の形状をできるだけ正確に表現することが要求される。
【０００５】
しかしながら、従来、このような縫い目を含めた物体の高品質な三次元形状データを効率的に作成する手法は提案されていないため、高品質なＣＧ画像を作成しようとすると、制作者に多大な負担を課する結果となっていた。
【０００６】
たとえば、前掲の特許文献１には、物体表面の法線方向を修正することにより、縫い目の部分に擬似的に陰影を付加する手法（いわゆるバンプマッピングの手法）が開示されている。この手法によれば、比較的簡便な処理によって縫い目を表現することができるが、あくまでも縫い目を擬似的に表現する手法であるため、物体の高品質な三次元形状データを作成することはできない。具体的には、物品のクローズアップ表現には不適切であり、テクスチャを貼り込んだ場合に、テクスチャの歪みを表現することができず、また、単純な凹状もしくは凸状のライン表現にとどまり、実際の縫い目に特有の複雑な形状表現を行うことができないという問題がある。
【０００７】
一方、建築物や自動車の内装、家具などの場合、設計段階で利用したＣＡＤデータを流用することにより、ＣＧ画像を効率的に作成することが可能である。しかしながら、通常、設計段階で利用したＣＡＤデータには、物品の基本形状を示す情報しか含まれておらず、縫い目の情報は含まれていない。たとえば、自動車の座席シートは、ＣＡＤを利用した設計が行われるため、ＣＡＤデータを流用したＣＧ画像を作成することが可能である。しかしながら、設計段階で作成される座席シートのＣＡＤデータは、シートの内部を構成するウレタン構造体の三次元形状データであり、最終的に、このウレタン構造体を包み込む布製もしくは革製の表皮の情報を含むものではない。したがって、縫い目を含むＣＧ画像を作成するには、ＣＡＤデータをそのまま流用することはできない。
【０００８】
そこで本発明は、縫い目を含めた物体の高品質な三次元形状データを効率的に作成することを可能にする手法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
(1)   本発明の第１の態様は、表面に縫い目を有する物体について、縫い目を含めた三次元形状データを作成する、表面に縫い目を有する物体の三次元形状データの作成装置を、
縫い目の情報を含まない物体の三次元形状データを、基本形状データとして入力する基本形状データ入力手段と、
オペレータの指示に基づいて、基本形状データで示される物体の表面上に、縫い目の物体表面上での方向を示す第１の基準線を定義する第１の基準線定義手段と、
オペレータの指示に基づいて、縫い目を構成する糸の断面形状と、そのサイズと、を示す糸断面パラメータを定義する糸断面パラメータ定義手段と、
オペレータの指示に基づいて、縫い目の１ピッチ分の長さと、この１ピッチ分の縫い目の物体表面に対する浮き沈みの形状と、を示す縫製処理パラメータを定義する縫製処理パラメータ定義手段と、
第１の基準線と縫製処理パラメータとに基づいて、物体表面に対して浮き沈みを生じる縫い目の三次元空間上での方向を示す第２の基準線を作成する第２の基準線作成手段と、
第２の基準線と糸断面パラメータとに基づいて、縫い目を構成する糸の三次元形状データを作成する糸形状データ作成手段と、
基本形状データに糸の三次元形状データを合成することにより、縫い目の情報を含んだ物体の三次元形状データである合成形状データを作成する合成形状データ作成手段と、
によって構成したものである。
【００１０】
(2)   本発明の第２の態様は、上述の第１の態様に係る表面に縫い目を有する物体の三次元形状データの作成装置において、
第１の基準線定義手段に、オペレータの指示に基づいて、基本形状データで示される物体が定義された三次元空間上に、直線もしくは曲線からなる参照線と、所定の投影方向を示す投影方向ベクトルと、を定義する機能をもたせ、参照線を投影方向ベクトルの示す投影方向に投影したときに、基本形状データで示される物体の表面上に形成される投影像を第１の基準線として定義できるようにしたものである。
【００１１】
(3)   本発明の第３の態様は、上述の第１または第２の態様に係る表面に縫い目を有する物体の三次元形状データの作成装置において、
糸断面パラメータ定義手段が、ｘｙ二次元直交座標系において、（ｘ／ａ）２／ε＋（ｙ／ｂ）２／ε＝１（但し、εは所定の定数）なる式によって示される超二次曲線を用いて糸断面パラメータを定義するようにしたものである。
【００１２】
(4)   本発明の第４の態様は、上述の第１または第２の態様に係る表面に縫い目を有する物体の三次元形状データの作成装置において、
糸断面パラメータ定義手段が、ｒθ極座標系において、角度θ（０≦θ＜２π）と、この角度θに対応する距離ｒ（θ）と、の組み合わせを示す断面形状テーブルを用いて糸断面パラメータを定義するようにしたものである。
【００１３】
(5)   本発明の第５の態様は、上述の第１〜第４の態様に係る表面に縫い目を有する物体の三次元形状データの作成装置において、
縫製処理パラメータ定義手段に、縫い目の１ピッチ分の長さλと、周期λをもった周期関数ｈ（ｓ）と、を用いて縫製処理パラメータを定義する機能をもたせ、
第２の基準線作成手段に、第１の基準線上にあり、第１の基準線上に定義された所定の始点Ｐ０からの第１の基準線に沿った距離がｓの位置にある点Ｐに関して、当該点Ｐの位置に立てた物体表面についての法線ｎを求め、この法線ｎ上にあり、点Ｐから距離ｈ（ｓ）だけ隔たった位置にある点Ｑを求め、点Ｑの集合によって第２の基準線を作成する機能をもたせるようにしたものである。
【００１４】
(6)   本発明の第６の態様は、上述の第１〜第４の態様に係る表面に縫い目を有する物体の三次元形状データの作成装置において、
縫製処理パラメータ定義手段に、縫い目の１ピッチ分の長さλと、ｈ（ｓ）＝Ａsinγ（２πｓ／λ）なる式（但し、Ａ，γは所定の定数）で示される周期関数ｈ（ｓ）と、を用いて縫製処理パラメータを定義する機能をもたせ、
第２の基準線作成手段に、第１の基準線上にあり、第１の基準線上に定義された所定の始点Ｐ０からの第１の基準線に沿った距離がｓの位置にある点Ｐに関して、当該点Ｐの位置に立てた物体表面についての法線ｎを求め、この法線ｎ上にあり、点Ｐから距離ｈ（ｓ）だけ離れた位置にある点Ｑを求め、点Ｑの集合によって第２の基準線を作成する機能をもたせるようにしたものである。
【００１５】
(7)   本発明の第７の態様は、上述の第１〜第４の態様に係る表面に縫い目を有する物体の三次元形状データの作成装置において、
縫製処理パラメータ定義手段に、縫い目の１ピッチ分の長さλと、０〜λの範囲内の複数の離散値ｓおよび個々の離散値に対応する所定値ｈ（ｓ）の組み合わせを示す起伏テーブルと、を用いて縫製処理パラメータを定義する機能をもたせ、
第２の基準線作成手段に、第１の基準線上にあり、第１の基準線上に定義された所定の始点Ｐ０からの第１の基準線に沿った距離が（ｋλ＋ｓ）の位置（但し、ｋ＝０，１，２，…）にある点Ｐに関して、当該点Ｐの位置に立てた物体表面についての法線ｎを求め、この法線ｎ上にあり、点Ｐから距離ｈ（ｓ）だけ離れた位置にある点Ｑを求め、点Ｑの集合によって第２の基準線を作成する機能をもたせるようにしたものである。
【００１６】
(8)   本発明の第８の態様は、上述の第７の態様に係る表面に縫い目を有する物体の三次元形状データの作成装置において、
第２の基準線作成手段に、起伏テーブルに基づく離散的情報に対して補間処理を行い、補間処理後の情報を用いて第２の基準線を作成する機能をもたせるようにしたものである。
【００１７】
(9)   本発明の第９の態様は、上述の第１〜第８の態様に係る表面に縫い目を有する物体の三次元形状データの作成装置において、
糸形状データ作成手段が、第２の基準線上に所定間隔で代表点を定義し、各代表点位置に、糸断面パラメータで示される糸の二次元断面図形を、当該代表点における第２の基準線の接線ベクトルに対して直交する向きに配置する処理を行い、配置された二次元断面図形を利用して、糸の三次元形状データを作成するようにしたものである。
【００１８】
(10)  本発明の第１０の態様は、上述の第９の態様に係る表面に縫い目を有する物体の三次元形状データの作成装置において、
第２の基準線作成手段に、方程式により表現可能な第２の基準線を作成する機能をもたせ、
糸形状データ作成手段に、所定の代表点における第２の基準線の接線ベクトルを、方程式の当該代表点における微分値を利用して求める機能をもたせるようにしたものである。
【００１９】
(11)  本発明の第１１の態様は、上述の第９の態様に係る表面に縫い目を有する物体の三次元形状データの作成装置において、
第２の基準線作成手段に、第１の基準線上に所定間隔で標本点Ｐ（ｉ）を定義し、縫製処理パラメータに基づいて各標本点Ｐ（ｉ）を浮き沈みさせることにより、第２の基準線を構成する代表点Ｑ（ｉ）を求める機能をもたせるようにしたものである。
【００２０】
(12)  本発明の第１２の態様は、上述の第１１の態様に係る表面に縫い目を有する物体の三次元形状データの作成装置において、
糸形状データ作成手段に、第ｉ番目の代表点Ｑ（ｉ）における第２の基準線の接線ベクトルＴ（ｉ）を、第（ｉ＋１）番目の代表点Ｑ（ｉ＋１）を利用して、点Ｑ（ｉ）とＱ（ｉ＋１）とを結ぶ線分に沿ったベクトルとして求める機能をもたせるようにしたものである。
【００２１】
(13)  本発明の第１３の態様は、上述の第１１の態様に係る表面に縫い目を有する物体の三次元形状データの作成装置において、
糸形状データ作成手段に、個々の代表点Ｑ（ｉ）について、第２の基準線上の点であって、隣接する代表点よりも近くに存在する近接点ＱＱ（ｉ）を定義し、各代表点Ｑ（ｉ）における第２の基準線の接線ベクトルＴ（ｉ）を、当該代表点Ｑ（ｉ）と当該代表点について定義された近接点ＱＱ（ｉ）とを結ぶ線分に沿ったベクトルとして求める機能をもたせるようにしたものである。
【００２２】
(14)  本発明の第１４の態様は、上述の第１１〜第１３の態様に係る表面に縫い目を有する物体の三次元形状データの作成装置において、
第２の基準線作成手段が、標本点Ｐ（ｉ）の位置に立てた物体表面についての法線ｎ（ｉ）を求め、この法線ｎ（ｉ）上にあり、標本点Ｐ（ｉ）から縫製処理パラメータに基づいて定まる所定距離だけ離れた位置にある点を代表点Ｑ（ｉ）とする処理を行い、
糸形状データ作成手段が、代表点Ｑ（ｉ）の位置に糸の二次元断面図形Ｃ（ｉ）を配置する際に、代表点Ｑ（ｉ）を含み、代表点Ｑ（ｉ）における第２の基準線の接線ベクトルＴ（ｉ）に直交する投影面を定義し、接線ベクトルＴ（ｉ）を法線ｎ（ｉ）の方向へ投影することによって投影面上に得られる投影ベクトルＴＴ（ｉ）の位置を基準として配置を行うようにしたものである。
【００２３】
(15)  本発明の第１５の態様は、上述の第９〜第１４の態様に係る表面に縫い目を有する物体の三次元形状データの作成装置において、
糸形状データ作成手段が、糸の二次元断面図形の輪郭線上に複数の制御点を定義し、第ｉ番目の代表点Ｑ（ｉ）の位置に配置された二次元断面図形Ｃ（ｉ）について定義された１つもしくは複数の制御点と、第（ｉ＋１）番目の代表点Ｑ（ｉ＋１）の位置に配置された二次元断面図形Ｃ（ｉ＋１）について定義された１つもしくは複数の制御点と、を頂点とするポリゴンの集合によって、糸の三次元形状データを作成するようにしたものである。
【００２４】
(16)  本発明の第１６の態様は、上述の第１５の態様に係る表面に縫い目を有する物体の三次元形状データの作成装置において、
糸形状データ作成手段が、第ｉ番目の代表点Ｑ（ｉ）の位置に配置された二次元断面図形Ｃ（ｉ）について定義された第ｊ番目の制御点Ｇ（ｉ，ｊ）および第（ｊ＋１）番目の制御点Ｇ（ｉ，ｊ＋１）と、第（ｉ＋１）番目の代表点Ｑ（ｉ＋１）の位置に配置された二次元断面図形Ｃ（ｉ＋１）について定義された第ｊ番目の制御点Ｇ（ｉ＋１，ｊ）および第（ｊ＋１）番目の制御点Ｇ（ｉ＋１，ｊ＋１）と、の合計４点を頂点とする四角形の集合によって、糸の三次元形状データを作成するようにしたものである。
【００２５】
(17)  本発明の第１７の態様は、上述の第１〜第１６の態様に係る表面に縫い目を有する物体の三次元形状データの作成装置を、コンピュータに所定のプログラムを組み込むことにより構成したものである。
【００２６】
(18)  本発明の第１８の態様は、表面に縫い目を有する物体について、縫い目を含めた三次元形状データを作成する、表面に縫い目を有する物体の三次元形状データの作成方法を、
縫い目の情報を含まない物体の三次元形状データが、コンピュータ内の記憶手段に、基本形状データとして入力される基本形状データ入力段階と、
コンピュータが、オペレータの指示に基づいて、基本形状データで示される物体の表面上に、縫い目の物体表面上での方向を示す第１の基準線を定義し、これを記憶手段に格納する第１の基準線定義段階と、
コンピュータが、オペレータの指示に基づいて、縫い目を構成する糸の断面形状と、そのサイズと、を示す糸断面パラメータを定義し、これを記憶手段に格納する糸断面パラメータ定義段階と、
コンピュータが、オペレータの指示に基づいて、縫い目の１ピッチ分の長さと、この１ピッチ分の縫い目の物体表面に対する浮き沈みの形状と、を示す縫製処理パラメータを定義し、これを記憶手段に格納する縫製処理パラメータ定義段階と、
コンピュータが、第１の基準線と縫製処理パラメータとに基づいて、物体表面に対して浮き沈みを生じる縫い目の三次元空間上での方向を示す第２の基準線を作成し、これを記憶手段に格納する第２の基準線作成段階と、
コンピュータが、第２の基準線と糸断面パラメータとに基づいて、縫い目を構成する糸の三次元形状データを作成し、これを記憶手段に格納する糸形状データ作成段階と、
コンピュータが、基本形状データに糸の三次元形状データを合成することにより、縫い目の情報を含んだ物体の三次元形状データである合成形状データを作成し、これを記憶手段に格納する合成形状データ作成段階と、
によって構成したものである。
【００２７】
(19)  本発明の第１９の態様は、上述の第１８の態様に係る表面に縫い目を有する物体の三次元形状データの作成方法において、
基本形状データ入力段階では、多数のポリゴンによって物体表面を表現した三次元形状データが、基本形状データとして入力されるようにしたものである。
【００２８】
(20)  本発明の第２０の態様は、上述の第１８の態様に係る表面に縫い目を有する物体の三次元形状データの作成方法において、
基本形状データ入力段階では、パラメトリック曲面によって物体表面を表現した三次元形状データが、基本形状データとして入力されるようにしたものである。
【発明の効果】
【００２９】
本発明では、縫い目の情報を含まない物体表面上に第１の基準線を定義し、縫製処理パラメータを用いて、この第１の基準線を物体表面に対して浮き沈みを生じる縫い目の三次元空間上での方向を示す第２の基準線に変換し、この第２の基準線に沿って、糸の断面形状図形を配置し、糸の三次元形状データを作成するようにしたため、縫い目を含めた物体の高品質な三次元形状データを効率的に作成することが可能になる。
【発明を実施するための最良の形態】
【００３０】
以下、本発明を図示する実施形態に基づいて説明する。
【００３１】
＜＜＜  §１．基本手順  ＞＞＞
本発明では、表面に縫い目を有する物体について、縫い目を含めた三次元形状データの作成が行われる。この§１では、この本発明の基本手順を、簡単なモデルを用いて説明する。
【００３２】
図１は、本発明に係る三次元形状データの作成方法の基本手順を示す流れ図である。本発明は、基本的にコンピュータを利用することを前提とした発明であり、図１の流れ図の各ステップに示された段階は、いずれもコンピュータが、そのハードウエア資源を用いて、専用に開発されたソフトウエアプログラムに基づいて実行する処理を示すものである。
【００３３】
図示のとおり、この基本手順は、大まかに分類して、入力プロセス（ステップＳ１）、定義プロセス（ステップＳ２〜Ｓ４）、作成プロセス（ステップＳ５〜Ｓ７）の３つのプロセスによって構成される。入力プロセスは、この基本手順の処理対象となる物体の三次元形状データを入力するためのプロセスであり、定義プロセスは、縫い目の三次元情報を作成するために必要なパラメータ等を定義するためのプロセスであり、作成プロセスは、入力プロセスで入力した三次元形状データで示される物体の表面に、定義プロセスで定義したパラメータ等を用いて、縫い目の三次元情報を作成するためのプロセスである。以下、各プロセスを構成する個々のステップについて、順に説明を行う。
【００３４】
まず、ステップＳ１に示す基本形状データ入力段階は、コンピュータ内の記憶手段に、基本形状データを入力する処理を行う段階である。ここで、基本形状データとは、縫い目の情報を含まない物体の三次元形状データのことであり、この図１の流れ図に示す基本手順は、この基本形状データに、縫い目の情報を付加する処理ということができる。ここでは、説明の便宜上、図２に示すような単純な直方体形状をもった物体についての三次元形状データが、基本形状データＤｂとして入力された場合について、以下の説明を行うことにする。図２に示す基本形状データＤｂは、単なる直方体を表現するデータであり、縫い目の情報は全く含まれていない。
【００３５】
なお、本願では、説明の便宜上、三次元形状データと当該データで表現される三次元図形とを同じ符号で示すことにする。たとえば、図２に示す符号「Ｄｂ」は、物体の三次元形態そのものを示すと同時に、当該物体を表現するための基本形状データも示している。
【００３６】
ステップＳ２に示す第１の基準線定義段階は、オペレータの指示に基づいて、ステップＳ１で入力した基本形状データＤｂで示される物体Ｄｂの表面上に、縫い目の物体表面上での方向を示す第１の基準線を定義し、これを記憶手段に格納する処理を行う段階である。いわば、縫い目の軌跡を物体表面上に投影した投影線を、第１の基準線として定義する処理が行われることになる。図３は、物体Ｄｂの上面の中心位置に、第１の基準線Ｌ１（破線で示す）を定義した例を示す斜視図である。ここでは、説明の便宜上、物体の上面に第１の基準線Ｌ１を１本だけ定義した単純な例を示すが、もちろん、第１の基準線Ｌ１は、複数の面に跨って定義することも可能であり、また、複数本を定義することも可能である。
【００３７】
ステップＳ３に示す糸断面パラメータ定義段階は、オペレータの指示に基づいて、糸断面パラメータＰｃを定義し、これを記憶手段に格納する処理を行う段階である。ここで、糸断面パラメータＰｃとは、縫い目を構成する糸の断面形状と、そのサイズと、を示すパラメータである。図４は、この糸断面パラメータＰｃによって定義された糸の断面形状の一例を示す平面図である。図示の例では、円形の二次元断面図形Ｃが定義されている。このような代表的な幾何学図形からなる断面は、その形状を方程式によって定義することが可能であり、図示の円の場合、ｘｙ二次元座標系を用いて、ｘ２＋ｙ２＝ｒ２なる方程式で定義することができる。ここで、ｒは円の半径であるから、この方程式によって、糸の断面形状と、そのサイズと、の双方が定義されたことになる。
【００３８】
ステップＳ４に示す縫製処理パラメータ定義段階は、オペレータの指示に基づいて、縫製処理パラメータＰｓを定義し、これを記憶手段に格納する処理を行う段階である。ここで、縫製処理パラメータＰｓとは、縫い目の１ピッチ分の長さと、この１ピッチ分の縫い目の物体表面に対する浮き沈みの形状と、を示すパラメータである。そもそも縫い目は、布や革のシートの表面から裏面および裏面から表面へと、糸を交互に繰り返し通してゆくことによって形成される物理的構造体であり、物品の表面に現れる縫い目は、物体表面に対して糸を所定周期で浮き沈みさせることにより構成される。
【００３９】
縫製処理パラメータＰｓは、この浮き沈みの周期と形状とを定義するパラメータである。図５は、この縫製処理パラメータＰｓの一定義形態を示す平面図である。この例では、縫製処理パラメータＰｓは、矩形波状の浮き沈み形状（一点鎖線で示す）を示すグラフと、１ピッチ分の長さλ（グラフの１周期）を示す情報と、によって構成されている。ここで、グラフの基準線Ｓは、物体の表面位置を示しており、基準線Ｓより上方に示された一点鎖線は、物体の表面に露出する縫い目部分（可視部）に対応し、基準線Ｓより下方に示された一点鎖線は、物体の内部に隠れる縫い目部分（不可視部）に対応する。
【００４０】
以上で、定義プロセスは完了である。続いて、作成プロセスが実行される。まず、ステップＳ５に示す第２の基準線作成段階は、ステップＳ２で定義した第１の基準線Ｌ１とステップＳ４で定義した縫製処理パラメータＰｓとに基づいて、物体表面に対して浮き沈みを生じる縫い目の三次元空間上での方向を示す第２の基準線Ｌ２を作成し、これを記憶手段に格納する処理を行う段階である。
【００４１】
図６は、このステップＳ５の段階で作成された第２の基準線Ｌ２の一例を示す斜視図である。図６に示す第２の基準線Ｌ２は、図３に示す第１の基準線Ｌ１と、図５に示す縫製処理パラメータＰｓとに基づいて作成されたものであり、図５に示すグラフの基準線Ｓを、図３に示す第１の基準線Ｌ１に重ねたときの、一点鎖線で示すグラフの三次元空間上での位置を示すものである。要するに、図５に示すグラフを、その基準線Ｓを基準として、第１の基準線Ｌ１上にマッピングする処理が行われたことになる。
【００４２】
前述したように、図５に示すグラフのうち、基準線Ｓより下方に示された一点鎖線の部分は不可視部となる。この不可視部は、図６において、物体Ｄｂの内部に埋め込まれた状態になっている。第１の基準線Ｌ１が、あくまでも物体表面に定義された二次元的な線であるのに対して、第２の基準線Ｌ２は、物体表面に対して浮き沈みを生じる三次元的な線ということになる。
【００４３】
なお、図６には、図示の便宜上、第２の基準線Ｌ２が、２周期分（２ピッチ分）の縫い目から構成されている例が示されているが、実際には、縫い目の１ピッチ分の長さλは、物体の寸法に対して十分小さく設定されるのが一般的であり、第２の基準線Ｌ２には、通常、より多数の周期が含まれることになる。また、図示の例では、物体の上面のみに第１の基準線Ｌ１が定義されているため、第２の基準線Ｌ２も、この物体の上面のみに作成されることになるが、第１の基準線Ｌ１が物体の前面などにも連続して定義されている場合には、第２の基準線Ｌ２も物体の前面にまで連続して作成される。
【００４４】
ステップＳ６の糸形状データ作成段階は、ステップＳ５で作成した第２の基準線Ｌ２とステップＳ３で定義した糸断面パラメータＰｃとに基づいて、縫い目を構成する糸の三次元形状データを作成し、これを記憶手段に格納する処理を行う段階である。図７は、このステップＳ６の段階で作成された糸の三次元形状データＤｓによって示される糸の三次元形態の一例を示す斜視図である。ここでは、便宜上、この形状データＤｓによって示される糸の三次元形態についても、同じ符号Ｄｓを用いて示すことにする。図６に示す第２の基準線Ｌ２に沿って、図４に示す糸の二次元断面図形を連続的に配置することにより、図７に示すような糸の三次元形態Ｄｓを作成することができる。
【００４５】
具体的には、第２の基準線Ｌ２上に所定間隔で代表点を定義し、個々の代表点に糸の二次元断面図形を配置してゆく処理を行い、こうして配置された多数の二次元断面図形の輪郭線を滑らかに結ぶ面として、糸の三次元形状データＤｓを作成すればよい。たとえば、図４に示すように、糸断面パラメータＰｃにより、円からなる二次元断面図形Ｃが定義されている場合、第２の基準線Ｌ２上に定義された各代表点位置に中心がくるように、それぞれ円形の二次元断面図形Ｃを配置すればよい。このとき、各二次元断面図形Ｃは、各代表点における第２の基準線Ｌ２の接線に直交する向きに配置するとよい。こうして、第２の基準線Ｌ２に沿って配置された多数の円（二次元断面図形Ｃ）の円周を滑らかに結んで得られる三次元構造体が、図７に示す糸の三次元形態Ｄｓということになる。この糸の三次元形態Ｄｓは、いわば第２の基準線Ｌ２を中心軸として配置された半径ｒの円柱状パイプに相当し、その一部（不可視部）は、物体Ｄｂの内部に埋め込まれた状態となっている。
【００４６】
ステップＳ７の合成形状データ作成段階は、ステップＳ１で入力した基本形状データＤｂに、ステップＳ６で作成した糸の三次元形状データＤｓを合成することにより、縫い目の情報を含んだ物体の三次元形状データである合成形状データＤｂｓを作成し、これを記憶手段に格納する処理を行う段階である。基本形状データＤｂと糸の三次元形状データＤｓとが、同一の三次元座標系上で定義されたデータになっていれば、単に、これらのデータを合わせることにより、合成形状データＤｂｓを得ることができる。
【００４７】
なお、糸の三次元形状データＤｓは、物体Ｄｂの上面に露出した可視部と、物体Ｄｂの内部に埋め込まれた不可視部との双方を含んだデータとなっているので、必要に応じて、このステップＳ７において、糸の三次元形状データＤｓのうちの不可視部のデータを削除して合成するようにしてもよい。もっとも、実用上は、合成形状データＤｂｓに、糸の三次元形状データＤｓの不可視部のデータが含まれていたとしても、図７に示されているような三次元構造体を、所定の視点から観察した状態を示す二次元投影像を得る段階で、糸の三次元形態Ｄｓの不可視部については、隠面処理によって物体Ｄｂの上面によって隠されてしまうので、問題は生じない。
【００４８】
以上のとおり、本発明に係る表面に縫い目を有する物体の三次元形状データの作成方法によれば、まず、縫い目の情報を含まない物体の三次元形状データを基本形状データＤｂとして入力し、第１の基準線Ｌ１、糸断面パラメータＰｃ、縫製処理パラメータＰｓを定義し、これらの情報に基づいて、縫い目の三次元空間上での方向を示す第２の基準線Ｌ２を作成し、この第２の基準線Ｌ２に沿って、糸の断面形状図形を配置することにより、糸の三次元形状データＤｓを作成することができる。したがって、縫い目を含めた物体の高品質な三次元形状データを効率的に作成することが可能になる。
【００４９】
＜＜＜  §２．装置の基本構成  ＞＞＞
続いて、本発明に係る表面に縫い目を有する物体の三次元形状データの作成装置の基本構成を、図８のブロック図を参照しながら説明する。前述したとおり、本発明は、基本的にコンピュータを利用することを前提とした発明であり、この図８に示す装置は、コンピュータに専用のプログラムを組み込むことによって実現される装置である。したがって、個々のブロックとして示されている構成要素の機能は、実際には、いずれもコンピュータに組み込まれたプログラムによって実現される機能ということになる。
【００５０】
図８に示す装置は、表面に縫い目を有する物体について、縫い目を含めた三次元形状データを作成する機能を有し、合計７つのブロックで示される構成要素から構成されている。これら個々のブロックは、図１に示す流れ図の各ステップＳ１〜Ｓ７に対応しており、それぞれ対応するステップに示された処理を実行する機能を有する。
【００５１】
すなわち、基本形状データ入力手段１０は、ステップＳ１に示されている基本形状データ入力段階を実行する機能を有し、第１の基準線定義手段２０は、ステップＳ２に示されている第１の基準線定義段階を実行する機能を有し、糸断面パラメータ定義手段３０は、ステップＳ３に示されている糸断面パラメータ定義段階を実行する機能を有し、縫製処理パラメータ定義手段４０は、ステップＳ４に示されている縫製処理パラメータ定義段階を実行する機能を有し、第２の基準線作成手段５０は、ステップＳ５に示されている第２の基準線作成段階を実行する機能を有し、糸形状データ作成手段６０は、ステップＳ６に示されている糸形状データ作成段階を実行する機能を有し、合成形状データ作成手段７０は、ステップＳ７に示されている合成形状データ作成段階を実行する機能を有する。以下、これらの各手段１０〜７０により実行される処理を、図２〜図７に示す具体例を参照して順に説明する。
【００５２】
まず、基本形状データ入力手段１０は、縫い目の情報を含まない物体の三次元形状データを、基本形状データとして入力する機能をもった構成要素であり、たとえば、図２に示すような物体の三次元形状データを、基本形状データＤｂとして入力する処理を行う。要するに、この基本形状データ入力手段１０は、外部から与えられたデジタルデータを、コンピュータ内部に取り込む機能をもった一般的な入力装置である。
【００５３】
物体を三次元表現する方法としては、ポリゴンを用いた表現と、パラメトリック曲面を用いた表現とが一般的に知られている。前者は、物体表面を多数のポリゴン（多角形）の集合体として表現する手法であり、通常、個々のポリゴンを構成する頂点の位置座標と、各頂点の位置関係（どの頂点とどの頂点を結ぶことにより、多角形が形成されるかを示す情報）と、によって、物体の三次元形状が定義される。一方、後者は、物体の表面を、ベジェ曲面、スプライン曲面、ＮＵＲＢＳ曲面に代表されるようなパラメトリック曲面によって表現する手法であり、パラメトリック曲面を定義するための種々のパラメータの集合によって、物体の三次元形状が定義される。
【００５４】
基本形状データ入力手段１０が入力する基本形状データは、前者の形態のデータ（多数のポリゴンによって物体表面を表現した三次元形状データ）であってもよいし、後者の形態のデータ（パラメトリック曲面によって物体表面を表現した三次元形状データ）であってもかまわない。
【００５５】
既に述べたとおり、建築物や自動車の内装、家具などの場合、ＣＡＤを利用した設計が行われるのが一般的であり、この設計段階で作成されるＣＡＤデータには、通常、基本形状データＤｂが含まれている。たとえば、自動車の座席シートのＣＡＤデータは、シートの内部を構成するウレタン構造体の三次元形状データであり、縫い目の情報を含まないシートの三次元形状データに相当する。実際のシートは、このウレタン構造体の表面に、縫い目をもった布製もしくは革製の表皮を被せたものになる。このようなＣＡＤデータが用意されている物体については、このＣＡＤデータをそのまま、もしくは、必要な修正を施して、基本形状データ入力手段に与えるようにすればよい。たとえば、衣服の場合であれば、設計時に用いた型紙のＣＡＤデータに対して、人体表面との接触によって生じる皺などを表現するための修正を加えたデータを、当該衣服の基本形状データＤｂとして、基本形状データ入力手段１０に与えるようにすればよい。
【００５６】
もちろん、設計段階で用いたＣＡＤデータを流用することができない場合や、そもそもＣＡＤデータが存在しない物体の場合には、当該物体の三次元形状データ（縫い目の情報を含まないデータ）を作成し、基本形状データ入力手段１０に与える必要がある。このように、縫い目の情報を含まない物体の三次元形状データを作成する装置は、既に種々のものが実用化されているので、ここでは詳しい説明は省略する。
【００５７】
第１の基準線定義手段２０、糸断面パラメータ定義手段３０、縫製処理パラメータ定義手段４０は、いずれもオペレータの指示入力に基づいて、所定のデータを設定する機能を有する構成要素である。オペレータからの指示を入力するためには、ディスプレイ上に所定の入力画面を提示し、この入力画面を見たオペレータに、キーボードやマウスなどのコンピュータ用入力機器を操作させ、この操作結果を指示入力として取り込むプログラムを用意しておけばよい。
【００５８】
まず、第１の基準線定義手段２０は、オペレータの指示に基づいて、基本形状データ入力手段１０が入力した基本形状データＤｂで示される物体の表面上に、縫い目の物体表面上での方向を示す第１の基準線Ｌ１を定義する機能をもった構成要素である。たとえば、図２に示すような物体の基本形状データＤｂが入力されている場合、この物体の表面上に、図３に破線で示すような第１の基準線Ｌ１の定義が行われる。第１の基準線Ｌ１の具体的な定義方法については、§３で詳述する。
【００５９】
一方、糸断面パラメータ定義手段３０は、オペレータの指示に基づいて、縫い目を構成する糸の断面形状と、そのサイズと、を示す糸断面パラメータＰｓを定義する構成要素であり、たとえば、図４に示すように、ｘｙ二次元座標系における円の方程式ｘ２＋ｙ２＝ｒ２により、糸の二次元断面図形Ｃの形状とサイズとを定義することができる。オペレータに、このような特定の方程式を直接入力させて、糸断面パラメータＰｓを設定することも可能であるが、実用上は、方程式に含まれる種々の定数値をパラメータとして指定もしくは選択させることにより、所望の断面形状およびサイズを設定させるようにしておくのが好ましい。具体的な糸断面パラメータの設定方法については、§４で詳述する。
【００６０】
縫製処理パラメータ定義手段４０は、オペレータの指示に基づいて、縫い目の１ピッチ分の長さと、この１ピッチ分の縫い目の物体表面に対する浮き沈みの形状と、を示す縫製処理パラメータＰｓを定義する機能をもった構成要素である。たとえば、図５に示す例では、縫い目の１ピッチ分の長さλと、この１ピッチ分の縫い目の物体表面に対する浮き沈みの形状を示すグラフ（一点鎖線で示す）によって、縫製処理パラメータＰｓの定義が行われている。長さλの定義を行うためには、たとえば、所定の単位（たとえば、ｍｍ）で、オペレータに所望の数値入力を行わせる機能をもたせておけばよい。また、浮き沈みの形状の定義を行うためには、たとえば、予め複数通りのグラフを用意しておき、その中から、オペレータに所望のグラフを選択させる機能をもたせておけばよい。具体的な縫製処理パラメータの設定方法については、§５で詳述する。
【００６１】
第２の基準線作成手段５０は、第１の基準線定義手段２０によって定義された第１の基準線Ｌ１と、縫製処理パラメータ定義手段４０によって定義された縫製処理パラメータＰｓと、に基づいて、物体表面に対して浮き沈みを生じる縫い目の三次元空間上での方向を示す第２の基準線Ｌ２を作成する機能をもった構成要素である。§１で述べたとおり、たとえば、図３に示すような第１の基準線Ｌ１と、図５に示すようなグラフで示される縫製処理パラメータＰｓとを用いることにより、図６に示すような第２の基準線Ｌ２が作成されることになる。この第２の基準線Ｌ２を作成する処理の具体的なアルゴリズムについては、§６で詳述する。
【００６２】
糸形状データ作成手段６０は、第２の基準線作成手段５０によって作成された第２の基準線Ｌ２と、糸断面パラメータ定義手段３０によって定義された糸断面パラメータＰｃと、に基づいて、縫い目を構成する糸の三次元形状データＤｓを作成する機能をもった構成要素である。§１で述べたとおり、たとえば、図６に示すような第２の基準線Ｌ２と、図４に示すような糸断面パラメータＰｃで示される糸の二次元断面図形Ｃ（この例の場合は円）とを用いることにより、図７に示すような糸の三次元形状データＤｓが作成されることになる。この糸の三次元形状データＤｓを作成する処理の具体的なアルゴリズムについては、§７で詳述する。
【００６３】
合成形状データ作成手段７０は、基本形状データ入力手段１０が入力した基本形状データＤｂに、糸形状データ作成手段６０が作成した糸の三次元形状データＤｓを合成することにより、縫い目の情報を含んだ物体の三次元形状データである合成形状データＤｂｓを作成する処理を行う構成要素である。前述したとおり、基本形状データＤｂと糸の三次元形状データＤｓとを、同一の三次元座標系を用いたデータにしておけば、合成形状データ作成手段７０は、単に、２つのデータＤｂ，Ｄｓを合わせることにより、合成形状データＤｂｓを作成することができる。
【００６４】
こうして作成された合成形状データＤｂｓは、合成形状データ作成手段７０から外部装置へと出力され、種々の用途に利用される。たとえば、三次元ＣＧを取り扱うことができる一般的な装置に合成形状データＤｂｓを取り込めば、所定の視点から、図７に示すような縫い目の情報を含んだ物体を観察したときの二次元ＣＧ画像を作成することができる。このとき、糸の三次元形態Ｄｓの不可視部は、隠面処理により非表示とすることができることは、既に述べたとおりである。
【００６５】
＜＜＜  §３．第１の基準線の定義  ＞＞＞
続いて、図１のステップＳ２もしくは図８の第１の基準線定義手段２０において行われる第１の基準線Ｌ１の具体的な定義方法の一例を述べる。第１の基準線Ｌ１は、たとえば、図３に示すように、縫い目の物体表面上での方向を示す線であり、物体の表面上に定義された線であれば、直線であろうが、曲線であろうがかまわない。
【００６６】
これまで述べてきた§１，§２では、説明の便宜上、図２に示すような直方体からなる物体の三次元形状データを基本形状データＤｂとして入力した例について説明を行ったが、ここでは、図９に示すような曲面を含む物体の三次元形状データが、基本形状データＤｂとして入力された場合を考えてみる。
【００６７】
図１０は、図９に示す物体の表面に、第１の基準線Ｌ１１，Ｌ１２（破線で示す）を定義した状態を示す斜視図である。これらの基準線Ｌ１１，Ｌ１２は、物体Ｄｂの左右両端付近の曲面上に定義されている。オペレータの操作入力に基づいて第１の基準線を定義するには、たとえば、三次元物体の表面に対して描画を行う機能を提供するプログラムを用意しておき、この描画機能を利用して、物体の表面上に第１の基準線を直接描かせるような方法をとることも可能である。ただ、実用上は、以下に述べるような投影処理を利用して、第１の基準線を定義するのが好ましい。
【００６８】
図１１は、この投影処理を利用した第１の基準線の定義方法の原理を示す斜視図である。いま、図示のように、物体Ｄｂから離れた位置に、２本の参照線Ｋ１１，Ｋ１２を定義するとともに、所定の投影方向を示す投影方向ベクトルＶを定義する。そして、参照線Ｋ１１，Ｋ１２を、投影ベクトルＶの示す投影方向に投影し、物体Ｄｂの表面上に投影像を形成させ、この投影像を第１の基準線として定義するのである。図示の例では、参照線Ｋ１１の物体表面上の投影像が第１の基準線Ｌ１１となり、参照線Ｋ１２の物体表面上の投影像が第１の基準線Ｌ１２となっている。
【００６９】
参照線Ｋ１１，Ｋ１２を直線で構成すれば、これら参照線の三次元座標系上での位置は、非常に簡単な方程式で表現することができ、この方程式のパラメータを変化させることにより、参照線Ｋ１１，Ｋ１２を所望の方向へ移動させることができる。方程式は若干複雑になるが、曲線からなる参照線を定義することも可能である。一方、物体の三次元形状は、基本形状データＤｂとして与えられているので、物体表面への参照線Ｋ１１，Ｋ１２の投影像は、三次元座標系上で幾何学演算を行うことにより求めることができる。オペレータに、参照線の形状や位置および投影方向ベクトルの向きを指定するパラメータを入力させ、指定されたパラメータに基づいて得られる投影像を、ディスプレイ画面上にリアルタイムで表示させるようにすれば、オペレータがパラメータの値を変化させる操作入力を行うたびに、ディスプレイ画面上に表示される投影像の位置がリアルタイムで変化することになる。したがって、オペレータは、ディスプレイ画面を見ながら、所望の位置に第１の基準線を定義することができる。
【００７０】
結局、オペレータの指示に基づいて、基本形状データＤｂで示される物体が定義された三次元空間上に、直線もしくは曲線からなる参照線Ｋ１１，Ｋ１２と、所定の投影方向を示す投影方向ベクトルＶと、を定義する機能と、参照線Ｋ１１，Ｋ１２を投影方向ベクトルＶの示す投影方向に投影したときに、基本形状データＤｂで示される物体の表面上に形成される投影像Ｌ１１，Ｌ１２を第１の基準線として定義する機能とを、図８に示す第１の基準線定義手段２０にもたせておくようにすればよい。
【００７１】
前述したとおり、基本形状データＤｂは、多数のポリゴンによって物体表面を表現した三次元形状データであってもよいし、ベジェ曲面、スプライン曲面、ＮＵＲＢＳ曲面に代表されるようなパラメトリック曲面によって物体表面を表現した三次元形状データであってもかまわない。参照線Ｋ１１，Ｋ１２の投影像Ｌ１１，Ｌ１２（すなわち、第１の基準線）は、前者の場合、通常は、特定のポリゴン上に描かれた直線もしくは曲線として表現され、後者の場合、通常は、ベジェ曲線、スプライン曲線、ＮＵＲＢＳ曲線などのパラメトリック曲線で表現されることになる。
【００７２】
＜＜＜  §４．糸断面パラメータの定義  ＞＞＞
次に、図１のステップＳ３もしくは図８の糸断面パラメータ定義手段３０において行われる糸断面パラメータＰｃの具体的な定義方法の一例を述べる。糸断面パラメータＰｃは、縫い目を構成する糸の断面形状とそのサイズとを示すパラメータであるので、糸の二次元断面図形とその大きさを定めることができれば、どのような形態のパラメータであってもかまわない。
【００７３】
図１２は、ｘｙ二次元直交座標系において、（ｘ／ａ）２／ε＋（ｙ／ｂ）２／ε＝１（但し、εは所定の定数）なる式によって示される超二次曲線を用いて糸の二次元断面図形の定義を行った例を示す図である。この式は、超二次関数を示す式であり、媒介変数θを用いた表現に書き直すと、ｘ＝ａcosεθ、ｙ＝ｂsinεθという三角関数を用いた形になる。
【００７４】
図１３は、定数εの値を変えた場合に、上式によって、ｘｙ二次元直交座標系上に定義される二次元断面図形の形状を示す平面図である。図１３(a) は、ε＝０．１に設定した場合の形状であり、いわゆる角丸矩形に近い図形となる。図１３(b) は、ε＝０．７に設定した場合の形状であり、角の丸みが強くなってくる。図１３(c) は、ε＝１．０に設定した場合の形状であり、得られる図形は、（ｘ／ａ）２＋（ｙ／ｂ）２＝１なる式で示される幾何学図形、すなわち、楕円になる。図４に示す円は、ａ＝ｂ＝ｒに設定した場合に対応する。図１３(d) ，(e) ，(f) は、それぞれε＝１．５，２．０，３．０に設定した場合の形状である。
【００７５】
結局、上式において、定数ａ，ｂは、断面のサイズを規定するパラメータとなり、定数εは、断面形状を規定するパラメータとなる。したがって、この図１２に示す超二次関数を用いて糸断面を定義することにすれば、ａ，ｂ，εなる定数を糸断面パラメータとして定めることにより、超楕円から構成される糸断面の形状およびサイズを決定することができる。オペレータは、３つのパラメータａ，ｂ，εの値を設定する指示入力を行うだけで済むので、非常に軽い作業負担で、糸断面の定義が可能になる。
【００７６】
一般的な縫製処理に用いられる糸の断面形状は、ほぼ円や楕円を基準にした形状になるため、図１２に示す式において、εを所望の値に設定することにより定義することができる。ただ、特殊な縫製加工などでは、図１２に示す式では表現できない断面形状をもった糸が用いられることもある。そのような場合は、図１４に示すように、ｒθ極座標系において、角度θ（０≦θ＜２π）と、この角度θに対応する距離ｒ（θ）と、の関係を糸断面パラメータとして定義すればよい。
【００７７】
実際には、角度θの値は、所定間隔ごとの離散値として定義せざるを得ないので、この離散値として与えられた有限個のθの値と、これに対応するｒ（θ）の値との組み合わせを示す断面形状テーブルを用意し、この断面形状テーブルにより糸断面パラメータを定義すればよい。たとえば、θを１０°おきの離散値として設定すれば、合計３６組の「θとｒ（θ）」の組み合わせを示す断面形状テーブルによって糸断面パラメータを定義することができ、任意形状の断面をもった糸に対応することができる。
【００７８】
なお、角度θの値として離散値を用いた場合、糸断面の輪郭線は、連続した線ではなく、有限個の点の集合として定義されることになる。たとえば、図１４に示されている例の場合、特定のθとｒ（θ）との組み合わせにより、１つの輪郭点Ｋが定義されることになるので、糸断面の輪郭線は、有限個の輪郭点Ｋの集合として表現されることになる。したがって、隣接する輪郭点Ｋ間の輪郭線の情報が必要な場合には、線形補間やスプライン補間などの補間処理を行うようにすればよい。
【００７９】
＜＜＜  §５．縫製処理パラメータの定義  ＞＞＞
続いて、図１のステップＳ４もしくは図８の縫製処理パラメータ定義手段４０において行われる縫製処理パラメータＰｓの具体的な定義方法の一例を述べる。縫製処理パラメータＰｓは、縫い目の１ピッチ分の長さと、この１ピッチ分の縫い目の物体表面に対する浮き沈みの形状と、を示すパラメータである。ここで、縫い目の１ピッチ分の長さλは、所定の単位（たとえば、ｍｍ）を指定して、オペレータに数値を指定させることにより容易に定義することが可能である。
【００８０】
一方、物体表面に対する浮き沈みの形状は、周期λをもった周期関数ｈ（ｓ）を用いて定義すると便利である。ここで、ｓは、第１の基準線Ｌ１上に定義された所定の始点位置から、第１の基準線Ｌ１に沿った距離を示すパラメータであり、関数値ｈ（ｓ）は、距離ｓだけ離れた位置における浮き沈み量を示すパラメータである。たとえば、物体表面上の位置を基準値０とし、物体表面から外部に浮いた位置を正の浮き沈み量で示し、物体表面から内部に沈んだ位置を負の浮き沈み量で示せばよい。
【００８１】
図１５は、代表的な周期関数ｈ（ｓ）として、ｈ（ｓ）＝Ａsinγ（２πｓ／λ）なる式（但し、Ａ，γは所定の定数）で示される関数を示すグラフである。ここで、γ＝１に設定した場合、周期関数ｈ（ｓ）は、図示のような正弦関数になり、γの値を種々変化させることにより、グラフの形状を調整することができる。たとえば、図５に一点鎖線で示されているグラフのように、矩形波に近い周期関数を定義することも可能である。なお、Ａは振幅であり、λと同様に、所定の単位（たとえば、ｍｍ）をもった量として、オペレータに数値指定させることができる。
【００８２】
一般的な縫い目の場合、可視部（物体表面より上に位置する部分）と不可視部（物体表面より下に位置する部分）とが交互に繰り返されるので、周期関数ｈ（ｓ）も、正の値と負の値とを交互にとる関数にするのが好ましい。上述の式において、γを偶数に設定すると、関数ｈ（ｓ）は常に正の値をとることになるので、どうしてもγを偶数に設定した形状が必要な場合には、半周期ごとに関数値の符号を反転させるような処理を行うようにするとよい。もちろん、縫い方によっては、可視部のみからなり、不可視部を有さない縫い目が形成される場合もあるので、そのような場合には、γを偶数に設定した関数をそのまま用いてかまわない。
【００８３】
また、可視部と不可視部とをそれぞれ別個の関数で定義することも可能である。可視部の長さと不可視部の長さとの比は、必ずしも１：１である必要はなく、また、可視部の形状と不可視部の形状とは、必ずしも同一である必要はないので、縫い目によっては、可視部の形状を規定する関数と、不可視部の形状を規定する関数とを、別個に定義した方がよいケースもある。要するに、１ピッチ分の縫い目の物体表面に対する浮き沈みの形状を定義できる関数であれば、どのような関数を用いてもかまわない。なお、関数ｈ（ｓ）は周期関数なので、０≦ｓ＜λの範囲内について、関数値ｈ（ｓ）の値が定義されていればよい。
【００８４】
もちろん、１ピッチ分の縫い目の形状は、必ずしも関数で定義する必要はなく、離散的に配置された輪郭点の集合によって定義することも可能である。図１６は、多数の輪郭点Ｋｉの集合により、縫い目の形状を定義した例を示す平面図である。ここで、第ｉ番目の輪郭点Ｋｉは、０〜λの範囲内の第ｉ番目の離散値として与えられる距離ｓｉと、これに対応する所定値ｈ（ｓｉ）との組み合わせによって定義される点ということになる。したがって、縫い目の１ピッチ分の長さλと、０〜λの範囲内の複数の離散値ｓおよび個々の離散値に対応する所定値ｈ（ｓ）の組み合わせを示す起伏テーブルを作成すれば、この起伏テーブルを用いて縫製処理パラメータを定義することが可能になる。
【００８５】
もっとも、この起伏テーブルで定義される１ピッチ分の縫い目の形状は、連続的な線ではなく、有限個の点の集合になるので、必要があれば、この起伏テーブル上の離散的情報に対する補間処理を行うのが好ましい。
【００８６】
＜＜＜  §６．第２の基準線の作成  ＞＞＞
次に、図１のステップＳ５もしくは図８の第２の基準線作成手段５０において行われる第２の基準線の具体的な作成方法の一例を述べる。図６に示されているように、第２の基準線Ｌ２は、物体表面に対して浮き沈みを生じる縫い目の三次元空間上での方向を示す線であり、第１の基準線Ｌ１と縫製処理パラメータＰｓとに基づいて作成されることになる。ここでは、図１０に示すような物体Ｄｂ上に定義された第１の基準線Ｌ１１，Ｌ１２と、図１５に示すような所定周期λをもった周期関数ｈ（ｓ）として定義された縫製処理パラメータＰｓとに基づいて、第２の基準線を作成する具体的な方法を述べる。
【００８７】
まず、図１７の斜視図に示されている第１の基準線Ｌ１２に基づいて、第２の基準線を作成する方法を考える。ここで作成する第２の基準線は、図１５に示す周期関数ｈ（ｓ）のグラフを、第１の基準線Ｌ１２に沿ってマッピングした線というべきものである。この場合、まず、第１の基準線Ｌ１２上の任意の位置に、始点Ｐ０を設定する。この始点Ｐ０は、周期関数ｈ（ｓ）をマッピングする上での位相を定める基準になる。縫い目の位相までも正確に定める必要がある場合には、オペレータに、始点Ｐ０の位置を正確に指定させる必要があるが、縫い目の位相までも考慮する必要のない一般的な用途の場合であれば、第２の基準線作成手段５０に、第１の基準線Ｌ１２上の任意の点（たとえば、第１の基準線Ｌ１２の端点）を始点Ｐ０とする自動設定機能をもたせておけばよい。
【００８８】
こうして、始点Ｐ０が定まったら、図１７に示すように、第１の基準線Ｌ１２上にあり、始点Ｐ０からこの第１の基準線Ｌ１２に沿った距離がｓの位置にある点Ｐに関して、当該点Ｐの位置に立てた物体表面についての法線ｎを求め、この法線ｎ上にあり、点Ｐから距離ｈ（ｓ）だけ隔たった位置にある点Ｑを求め、このような点Ｑの集合によって第２の基準線を作成する処理を行えばよい。関数ｈ（ｓ）は周期関数なので、０≦ｓ＜λの範囲内について、関数値ｈ（ｓ）の値が定義されていれば、任意のｓの値について、関数値ｈ（ｓ）を求めることができ、第１の基準線がどのような長さをもっていても、これに対応する第２の基準線を作成することが可能である。
【００８９】
第２の基準線を構成する点Ｑは、点Ｐに対して、当該点Ｐの位置に立てた法線ｎの方向に沿って、関数値ｈ（ｓ）だけ離れた位置に定義されるので、作成される第２の基準線は、常に物体表面に対して浮き沈みを生じる線になる。もちろん、関数値ｈ（ｓ）は正負両方の値をとることができ、関数値ｈ（ｓ）が正の値をとる場合には、点Ｑは点Ｐに対して物体の外側方向に隔たった点として定義され、関数値ｈ（ｓ）が負の値をとる場合には、点Ｑは点Ｐに対して物体の内側方向に隔たった点として定義される。
【００９０】
縫製処理パラメータＰｓが式によって定義されており、第１の基準線が比較的単純な式によって表されている場合、点Ｑの集合からなる第２の基準線も式によって表現することが可能である。たとえば、第１の基準線が直線であった場合、第２の基準線は、縫製処理パラメータＰｓとして与えられた式、たとえば、ｈ（ｓ）＝Ａsinγ（２πｓ／λ）のような式で表される周期的曲線を、三次元空間上にそのまま配置したものになる。したがって、二次元平面上の周期的曲線を定義する上記式を、三次元空間上の式に変換することにより、第２の基準線を式として求めることができる。
【００９１】
なお、図１６に示す例のように、縫製処理パラメータＰｓが、縫い目の１ピッチ分の長さλと、０〜λの範囲内の複数の離散値ｓおよび個々の離散値に対応する所定値ｈ（ｓ）の組み合わせを示す起伏テーブルによって定義されている場合は、０≦ｓ＜λの範囲内の有限個の変数ｓについてのみ、値ｈ（ｓ）の定義がなされている。したがって、λ以上の変数ｓについては、値ｈ（ｓ）の定義がなされていないことになるが、起伏テーブルの情報を周期λで繰り返し適用すれば問題はない。すなわち、第１の基準線Ｌ１２上にあり、始点Ｐ０からの第１の基準線Ｌ１２に沿った距離が（ｋλ＋ｓ）の位置（但し、ｋ＝０，１，２，…）にある点Ｐに関して、当該点Ｐの位置に立てた物体表面についての法線ｎを求め、この法線ｎ上にあり、点Ｐから距離ｈ（ｓ）だけ離れた位置にある点Ｑを求め、点Ｑの集合によって第２の基準線を作成すればよい。ここで、ｋは、ｋ＝０，１，２，…のような整数であり、繰り返しの回数を示すパラメータである。
【００９２】
このように、起伏テーブルを用いて定義された点Ｑは、離散的な点になるので、第２の基準線を連続的な線として求めたい場合には、起伏テーブルに基づく離散的情報に対して補間処理を行い、補間処理後の情報を用いて第２の基準線を作成すればよい。たとえば、起伏テーブルに基づいて、複数の離散的な点Ｑを求め、隣接する点Ｑの間の部分については、線形補間やスプライン補間などの補間処理を行うようにすればよい。
【００９３】
一方、縫製処理パラメータＰｓが、起伏テーブルではなく、周期関数ｈ（ｓ）によって定義されていた場合は、任意のｓに対して関数値ｈ（ｓ）を求めることができるので、第１の基準線上の任意の点Ｐについて、対応する点Ｑを求めることができる。したがって、原理的には、無限個の点Ｑから構成される連続的な線として、第２の基準線を作成することができる。しかしながら、実用上は、無限個の点Ｑの位置を求める演算を行うことはできないので、第１の基準線上に所定間隔で有限個の標本点Ｐ（ｉ）を定義し、縫製処理パラメータに基づいて各標本点Ｐ（ｉ）を浮き沈みさせることにより、有限個の代表点Ｑ（ｉ）を求めるようにし、この有限個の代表点Ｑ（ｉ）の集合として、第２の基準線を構成すればよい。具体的には、第１の基準線上の第ｉ番目の標本点Ｐ（ｉ）の位置に立てた物体表面についての法線ｎ（ｉ）を求め、この法線ｎ（ｉ）上にあり、標本点Ｐ（ｉ）から縫製処理パラメータに基づいて定まる所定距離だけ離れた位置にある点を、第ｉ番目の代表点Ｑ（ｉ）とする処理を、ｉ＝１，２，３，…と必要な回数だけ繰り返し実行すればよい。
【００９４】
図１８は、第１の基準線Ｌ１（破線で示されている）上に定義された有限個の標本点Ｐ０，Ｐ１，Ｐ２，…に基づいて、第２の基準線Ｌ２を作成する方法を示す正断面図であり、物体の三次元形態を、第１の基準線Ｌ１に沿って切断した断面を示している。標本点Ｐ０，Ｐ１，Ｐ２，…は、たとえば、始点Ｐ０から第１の基準線Ｌ１に沿って等間隔に並ぶような点として定義すればよい（もちろん、必ずしも等間隔に設定する必要はない）。図に破線で示す直線ｎ０，ｎ１，ｎ２，…は、それぞれ標本点Ｐ０，Ｐ１，Ｐ２，…の位置において、物体表面に立てた法線を示している。標本点Ｐ０は、始点Ｐ０と同一の点であり、始点からの距離ｓ＝０となる点である。
【００９５】
図示の例は、周期関数ｈ（ｓ）のｓ＝０における値が、ｈ（０）＝０となっている例であり、始点位置における標本点Ｐ０とこれに対応する代表点Ｑ０とは同一の点になる。一方、始点Ｐ０から第１の基準線Ｌ１に沿って距離ｓ１だけ離れた位置に定義された標本点Ｐ１については、法線ｎ１上にあり、標本点Ｐ１から距離ｈ（ｓ１）だけ離れた位置にある点Ｑ１が、対応する代表点として求められる。同様に、始点Ｐ０から第１の基準線Ｌ１に沿って距離ｓ２だけ離れた位置に定義された標本点Ｐ２については、法線ｎ２上にあり、標本点Ｐ２から距離ｈ（ｓ２）だけ離れた位置にある点Ｑ２が、対応する代表点として求められる。以下、同様にして、各標本点Ｐ３〜Ｐ８に対応する代表点Ｑ３〜Ｑ８が、図示のように求められる。
【００９６】
こうして複数の離散的な点として求められた代表点Ｑ０〜Ｑ８の集合により、第２の基準線Ｌ２が構成されることになる。隣接する代表点Ｑの間の部分については、必要に応じて、線形補間やスプライン補間などの補間処理を行うようにすればよい。
【００９７】
なお、物体表面が、複数の面によって構成されており、この複数の面の交差部分に標本点を設定する場合には、当該標本点位置には、複数の法線（個々の面についての法線）が定義されることになる。たとえば、図３に示す例では、第１の基準線Ｌ１が、物体Ｄｂの上面にのみ定義されているが、もし、第１の基準線Ｌ１が物体Ｄｂの上面から前面へと連続した線となっており、この上面と前面との交差位置（直角に折り曲がる位置）に標本点Ｐが定義されることになったとすると、当該標本点Ｐに関しては、物体上面についての法線と、物体前面についての法線とが定義可能である。このような場合、いずれか一方の法線のみを採用し、採用した法線上に代表点Ｑを定義してもよいし、両法線の中間に位置する中間法線を定め、この中間法線上に代表点Ｑを定義してもよい。
【００９８】
＜＜＜  §７．糸の三次元形状データの作成  ＞＞＞
最後に、図１のステップＳ６もしくは図８の糸形状データ作成手段６０において行われる糸の三次元形状データの具体的な作成方法の一例を述べる。図６に示す第２の基準線Ｌ２が、太さをもたない幾何学的な線であるのに対して、図７に示す糸の三次元形状データＤｓは、円柱状のパイプのような三次元形態を示すデータになる。このような三次元形状データＤｓを作成するには、第２の基準線Ｌ２上に所定間隔で代表点Ｑを定義し、各代表点位置に、糸断面パラメータＰｃで示される糸の二次元断面図形を、当該代表点Ｑにおける第２の基準線Ｌ２の接線ベクトルＴに対して直交する向きに配置する処理を行い、配置された二次元断面図形を利用して、糸の三次元形状データＤｓを作成すればよい。
【００９９】
たとえば、図１９に示すように、第１の基準線Ｌ１上に、第ｉ番目の標本点Ｐ（ｉ）、第（ｉ＋１）番目の標本点Ｐ（ｉ＋１）、第（ｉ＋２）番目の標本点Ｐ（ｉ＋２）が定義され、これら各標本点位置に、それぞれ物体表面に対する法線ｎ（ｉ），ｎ（ｉ＋１），ｎ（ｉ＋２）が定義され、各法線上に、それぞれ代表点Ｑ（ｉ），Ｑ（ｉ＋１），Ｑ（ｉ＋２）が求められている場合を考える。この場合、第２の基準線Ｌ２は、各代表点を滑らかに結ぶ線として定義される。なお、図１９において、ベクトルＴ（ｉ），Ｔ（ｉ＋１），Ｔ（ｉ＋２）は、それぞれ代表点Ｑ（ｉ），Ｑ（ｉ＋１），Ｑ（ｉ＋２）における第２の基準線Ｌ２の接線の向きを示す接線ベクトルである。
【０１００】
一方、糸の二次元断面図形Ｃとしては、図４に示すような糸断面パラメータＰｃによって、半径ｒの円が定義されていたものとする。この場合、糸の三次元形状データを作成するには、まず、各代表点Ｑ（ｉ），Ｑ（ｉ＋１），Ｑ（ｉ＋２）の位置に、糸の二次元断面図形Ｃ、すなわち、半径ｒの円を配置する処理を行えばよい。具体的には、各代表点Ｑ（ｉ），Ｑ（ｉ＋１），Ｑ（ｉ＋２）の位置に中心がくるように、半径ｒの円をそれぞれ配置すればよい。このとき、各円を、各代表点における第２の基準線Ｌ２の接線ベクトルに対して直交する向きに配置する。
【０１０１】
図２０は、各代表点Ｑ（ｉ），Ｑ（ｉ＋１），Ｑ（ｉ＋２）の位置に、それぞれ半径ｒの円からなる糸の二次元断面図形Ｃ（ｉ），Ｃ（ｉ＋１），Ｃ（ｉ＋２）を配置した状態を示す概念図である。各円Ｃ（ｉ），Ｃ（ｉ＋１），Ｃ（ｉ＋２）は、それぞれ各代表点Ｑ（ｉ），Ｑ（ｉ＋１），Ｑ（ｉ＋２）が中心となるように配置されており、かつ、各接線ベクトルＴ（ｉ），Ｔ（ｉ＋１），Ｔ（ｉ＋２）に対して直交する向きに配置されている。
【０１０２】
なお、配置対象となる断面図形Ｃが円の場合には、配置の際の回転方向（円周方向）に関する位置は考慮する必要がないが、それ以外の図形の場合には、回転方向に関する位置も考慮する必要が生じる。たとえば、糸の二次元断面図形Ｃが楕円の場合、長軸をどの方向に向けて配置するかを考慮する必要がある。このような回転方向に関する位置基準は、個々の代表点についての接線ベクトルと法線とを利用して定めるようにするとよい。
【０１０３】
たとえば、図２１に示す例の場合、標本点Ｐ（ｉ）についての法線ｎ（ｉ）上に代表点Ｑ（ｉ）が定義され、この代表点Ｑ（ｉ）の位置において接線ベクトルＴ（ｉ）が定義されている。この場合、代表点Ｑ（ｉ）の位置に糸の二次元断面図形Ｃ（ｉ）を配置する際には、代表点Ｑ（ｉ）を含み、接線ベクトルＴ（ｉ）に直交する投影面を定義し、接線ベクトルＴ（ｉ）を法線ｎ（ｉ）の方向へ投影することによってこの投影面上に得られる投影ベクトルＴＴ（ｉ）の位置を基準として、糸の二次元断面図形Ｃ（ｉ）を配置するようにすればよい。別言すれば、代表点Ｑ（ｉ）を通り接線ベクトルＴ（ｉ）に直交する投影面を定義し、接線ベクトルＴ（ｉ）、法線ｎ（ｉ）、投影ベクトルＴＴ（ｉ）の三者が同一平面上に含まれることになるように、当該投影面上に投影ベクトルＴＴ（ｉ）を定義するのである。そして、この投影ベクトルＴＴ（ｉ）の向きを、糸の二次元断面図形Ｃを配置する上での回転方向に関する位置基準（たとえば、楕円を配置する場合には、長軸の向きを定める基準）として用いるようにすればよい。
【０１０４】
以上述べたとおり、代表点Ｑ（ｉ）の位置に、糸の二次元断面図形Ｃ（ｉ）を配置する処理を行う際には、代表点Ｑ（ｉ）の位置における接線ベクトルＴ（ｉ）を求める必要がある。ここでは、この接線ベクトルＴ（ｉ）を求めるための具体的な手法を３通り示しておく。
【０１０５】
まず、第２の基準線作成手段５０によって、方程式により表現可能な第２の基準線Ｌ２が作成された場合は、この方程式の代表点Ｑ（ｉ）における微分値を利用して、接線ベクトルＴ（ｉ）を求めることができる。直線もしくは曲線グラフを示す方程式における特定の座標位置における微分値は、当該座標位置におけるグラフの傾きを示すものになり、当該座標位置における接線ベクトルの方向を示すものになる。よって、第２の基準線Ｌ２が式によって表現されている場合には、微分演算を行うことにより、任意の代表点Ｑ（ｉ）における接線ベクトルＴ（ｉ）を求めることができる。
【０１０６】
一方、第２の基準線Ｌ２が、離散的に定義された代表点Ｑの集合によって表現されている場合、第２の基準線Ｌ２を表現する直接的な情報は、個々の代表点Ｑの三次元空間上での位置座標のみである。たとえば、図１９では、説明の便宜上、第２の基準線Ｌ２を実線で描いてあるが、実際には、各代表点Ｑ（ｉ），Ｑ（ｉ＋１），Ｑ（ｉ＋２）の位置座標のみが与えられており、第２の基準線Ｌ２は、これら代表点を滑らかに結ぶ曲線として概念的に定義されている線に過ぎない（もちろん、線形補間やスプライン補間などの補間処理を行えば、各代表点を結ぶ線として、第２の基準線Ｌ２を実体化させることは可能である）。
【０１０７】
このように、各代表点Ｑ（ｉ），Ｑ（ｉ＋１），Ｑ（ｉ＋２）の位置座標のみが与えられている場合には、隣接する代表点へ向かう方向を、接線ベクトルの方向として取り扱うことにより、各代表点に接線ベクトルを定義することができる。すなわち、第ｉ番目の代表点Ｑ（ｉ）における第２の基準線の接線ベクトルＴ（ｉ）は、第（ｉ＋１）番目の代表点Ｑ（ｉ＋１）を利用して、点Ｑ（ｉ）とＱ（ｉ＋１）とを結ぶ線分に沿ったベクトルとして定義すればよい。
【０１０８】
図２２は、このような手法により、各代表点Ｑ（ｉ），Ｑ（ｉ＋１）についての接線ベクトルＴ（ｉ），Ｔ（ｉ＋１）を定義した例を示す概念図である。代表点Ｑ（ｉ）についての接線ベクトルＴ（ｉ）は、代表点Ｑ（ｉ）とＱ（ｉ＋１）とを結ぶ線分に沿ったベクトルとなっており、代表点Ｑ（ｉ＋１）についての接線ベクトルＴ（ｉ＋１）は、代表点Ｑ（ｉ＋１）とＱ（ｉ＋２）とを結ぶ線分に沿ったベクトルとなっている。このような手法で定義された接線ベクトルは、各代表点における接線の正確な向きを示すものにはならないが、隣接する代表点間の間隔がある程度小さければ、実用上、十分な精度をもった接線ベクトルを定義することができる。
【０１０９】
より精度の高い接線ベクトルを定義するには、次のような手法が有効である。すなわち、個々の代表点Ｑ（ｉ）について、第２の基準線Ｌ２上の点であって、隣接する代表点よりも近くに存在する近接点ＱＱ（ｉ）を定義し、各代表点Ｑ（ｉ）における接線ベクトルＴ（ｉ）を、当該代表点Ｑ（ｉ）と当該代表点について定義された近接点ＱＱ（ｉ）とを結ぶ線分に沿ったベクトルとして求めるのである。
【０１１０】
図２３は、このような手法により、各代表点Ｑ（ｉ），Ｑ（ｉ＋１），Ｑ（ｉ＋２）についての接線ベクトルＴ（ｉ），Ｔ（ｉ＋１），Ｔ（ｉ＋２）を定義した例を示す概念図である。代表点Ｑ（ｉ）についての接線ベクトルＴ（ｉ）は、代表点Ｑ（ｉ）と近接点ＱＱ（ｉ）とを結ぶ線分に沿ったベクトルとなっており、代表点Ｑ（ｉ＋１）についての接線ベクトルＴ（ｉ＋１）は、代表点Ｑ（ｉ＋１）と近接点ＱＱ（ｉ＋１）とを結ぶ線分に沿ったベクトルとなっており、代表点Ｑ（ｉ＋２）についての接線ベクトルＴ（ｉ＋２）は、代表点Ｑ（ｉ＋２）と近接点ＱＱ（ｉ＋２）とを結ぶ線分に沿ったベクトルとなっている。図では、図示の便宜上、各代表点とその近接点との距離を比較的大きくとっているが、実際には、この距離を非常に小さくとるのが好ましい。
【０１１１】
なお、各近接点ＱＱ（ｉ），ＱＱ（ｉ＋１），ＱＱ（ｉ＋２）の位置は、結局は、第１の基準線Ｌ１上の近接点ＰＰ（ｉ），ＰＰ（ｉ＋１），ＰＰ（ｉ＋２）に基づいて決定されることになるので、実務上は、次のような手順により、各近接点ＱＱ（ｉ），ＱＱ（ｉ＋１），ＱＱ（ｉ＋２）の位置を決定するようにすればよい。
【０１１２】
まず、図２３に示すように、第２の基準線Ｌ２を作成する段階において、第１の基準線Ｌ１上に所定間隔で、多数の標本点Ｐ（ｉ），Ｐ（ｉ＋１），Ｐ（ｉ＋２）を設定したら、第１の基準線Ｌ１上で各標本点から所定距離δだけ離れた位置に、近接点ＰＰ（ｉ），ＰＰ（ｉ＋１），ＰＰ（ｉ＋２）を併せて設定する。そして、各標本点Ｐ（ｉ），Ｐ（ｉ＋１），Ｐ（ｉ＋２）について、各代表点Ｑ（ｉ），Ｑ（ｉ＋１），Ｑ（ｉ＋２）を求めるのと全く同様の手法により、各近接点ＰＰ（ｉ），ＰＰ（ｉ＋１），ＰＰ（ｉ＋２）について、各近接点ＱＱ（ｉ），ＱＱ（ｉ＋１），ＱＱ（ｉ＋２）を求めるようにする。すなわち、近接点ＰＰ（ｉ），ＰＰ（ｉ＋１），ＰＰ（ｉ＋２）の各位置において、物体表面に立てた法線を、それぞれｎｎ（ｉ），ｎｎ（ｉ＋１），ｎｎ（ｉ＋２）とすれば、各近接点ＱＱ（ｉ），ＱＱ（ｉ＋１），ＱＱ（ｉ＋２）は、それぞれ各法線ｎｎ（ｉ），ｎｎ（ｉ＋１），ｎｎ（ｉ＋２）上の点であって、各近接点ＰＰ（ｉ），ＰＰ（ｉ＋１），ＰＰ（ｉ＋２）から、縫製処理パラメータＰｓに基づいて定まる所定の距離だけ離れた点として求まる。
【０１１３】
さて、図２０に示すように、各代表点Ｑ（ｉ），Ｑ（ｉ＋１），Ｑ（ｉ＋２）の位置に、それぞれ糸の二次元断面図形Ｃ（ｉ），Ｃ（ｉ＋１），Ｃ（ｉ＋２）を配置したら、これら各断面図形の輪郭を滑らかに結ぶことにより得られる三次元構造体を示すデータが、糸の三次元形状データＤｓということになる。ここでは、この糸の三次元形状データＤｓを、ポリゴンデータとして得るための具体的な方法を説明する。
【０１１４】
まず、図２４の平面図に示されているとおり、糸の二次元断面図形Ｃ（図示の例は円）の輪郭線上に複数の制御点を定義する。図示の例では、１２個の制御点Ｇ０〜Ｇ１１が、円周上に等間隔で定義されている。このような制御点が定義された断面図形を、各代表点位置に配置したら、同一断面図形上の隣接する制御点同士、もしくは、互いに隣接配置された断面図形上の制御点同士を相互に接続し、これら制御点を頂点とするポリゴンを形成し、このポリゴンの集合によって、糸の三次元形状データＤｓを構成すればよい。
【０１１５】
図２５は、このようなポリゴンの形成方法を示す斜視図であり、第ｉ番目の代表点Ｑ（ｉ）に配置された断面図形Ｃ（ｉ）と、第（ｉ＋１）番目の代表点Ｑ（ｉ＋１）に配置された断面図形Ｃ（ｉ＋１）とが示されている。この例では、２つの断面図形Ｃ（ｉ），Ｃ（ｉ＋１）は、いずれも円であり、前述したとおり、投影ベクトルＴＴ（ｉ），ＴＴ（ｉ＋１）を回転方向に関する位置基準とする配置が行われている。したがって、断面図形Ｃ（ｉ）上の第０番目の制御点Ｇ０（ｉ）は、投影ベクトルＴＴ（ｉ）の示す方向に定義され、断面図形Ｃ（ｉ＋１）上の第０番目の制御点Ｇ０（ｉ＋１）は、投影ベクトルＴＴ（ｉ＋１）の示す方向に定義されている。なお、この図２５では、図が繁雑になるのを避けるため、断面図形Ｃ（ｉ）上には、この他に第ｊ番目の制御点Ｇ（ｉ，ｊ）と第（ｊ＋１）番目の制御点Ｇ（ｉ，ｊ＋１）のみを示し、断面図形Ｃ（ｉ＋１）上には、この他に第ｊ番目の制御点Ｇ（ｉ＋１，ｊ）と第（ｊ＋１）番目の制御点Ｇ（ｉ＋１，ｊ＋１）のみを示してある。
【０１１６】
ここで、図のように、４つの制御点Ｇ（ｉ，ｊ），Ｇ（ｉ，ｊ＋１），Ｇ（ｉ＋１，j＋１），Ｇ（ｉ＋１，ｊ）を結べば、これら４つの制御点を頂点とする四角形が形成できる。このように、第ｉ番目の代表点Ｑ（ｉ）の位置に配置された二次元断面図形Ｃ（ｉ）について定義された第ｊ番目の制御点Ｇ（ｉ，ｊ）および第（ｊ＋１）番目の制御点Ｇ（ｉ，ｊ＋１）と、第（ｉ＋１）番目の代表点Ｑ（ｉ＋１）の位置に配置された二次元断面図形Ｃ（ｉ＋１）について定義された第ｊ番目の制御点Ｇ（ｉ＋１，ｊ）および第（ｊ＋１）番目の制御点Ｇ（ｉ＋１，ｊ＋１）と、の合計４点を頂点とする四角形を定義すれば、これらの四角形の集合によって、糸の三次元形状データＤｓを構成することができる（第０番目の制御点Ｇ０を、第１２番目の制御点Ｇ１２としても取り扱うようにすれば、断面図形の全周囲に四角形を定義することができる）。
【０１１７】
なお、複数の制御点を頂点として形成するポリゴンは、必ずしも四角形にする必要はない。たとえば、図２５に示す例において、制御点Ｇ（ｉ，ｊ）と制御点Ｇ（ｉ＋１，ｊ＋１）とを結ぶようにすれば、四角形の代わりに２組の三角形が形成されることになる。結局、一般論として拡張すれば、第ｉ番目の代表点Ｑ（ｉ）の位置に配置された二次元断面図形Ｃ（ｉ）について定義された１つもしくは複数の制御点と、第（ｉ＋１）番目の代表点Ｑ（ｉ＋１）の位置に配置された二次元断面図形Ｃ（ｉ＋１）について定義された１つもしくは複数の制御点と、を頂点とするポリゴンの集合によって、糸の三次元形状データＤｓを作成することができることになる。
【０１１８】
以上、糸の三次元形状データＤｓをポリゴンの集合体として構成する例を述べたが、もちろん、糸の三次元形状データＤｓをＮＵＲＢＳなどのパラメトリック曲面の集合体として構成することも可能である。この場合は、各制御点を通るようなＮＵＲＢＳ曲面を定義する処理を行えばよい。このような処理を行うための技術は、既に種々の手法が知られている公知技術であるため、ここでは詳しい説明は省略する。
【図面の簡単な説明】
【０１１９】
【図１】本発明に係る三次元形状データの作成方法の基本手順を示す流れ図である。
【図２】図１のステップＳ１で入力された基本形状データＤｂによって表現される物体の一例を示す斜視図である。
【図３】図１のステップＳ２において、基本形状データＤｂで示される物体の上面の中心位置に、第１の基準線Ｌ１（破線で示す）を定義した例を示す斜視図である。
【図４】図１のステップＳ３において定義された糸断面パラメータＰｃに対応する糸の断面形状の一例を示す平面図である。
【図５】図１のステップＳ４において定義された縫製処理パラメータＰｓの一定義形態を示す平面図である。
【図６】図１のステップＳ５の段階で作成された第２の基準線Ｌ２の一例を示す斜視図である。
【図７】図１のステップＳ６の段階で作成された糸形状データＤｓによって示される糸の三次元形態を示す斜視図である。
【図８】本発明に係る三次元形状データの作成装置の基本構成を示すブロック図である。
【図９】基本形状データＤｂで示される物体曲面を含む物体の一例を示す斜視図である。
【図１０】図９に示す物体の表面に、第１の基準線Ｌ１１，Ｌ１２（破線で示す）を定義した状態を示す斜視図である。
【図１１】投影処理を利用した第１の基準線Ｌ１１，Ｌ１２の定義方法の原理を示す斜視図である。
【図１２】ｘｙ二次元直交座標系において、超二次関数を用いて糸の二次元断面図形の定義を行った例を示す図である。
【図１３】図１２に示す式における定数εの値を変えた場合に、ｘｙ二次元直交座標系上に定義される二次元断面図形の形状を示す平面図である。
【図１４】ｒθ極座標系を用いて糸断面パラメータを定義した例を示す平面図である。
【図１５】代表的な周期関数ｈ（ｓ）を示すグラフである。
【図１６】多数の輪郭点Ｋｉの集合により、縫い目の形状を定義した例を示す平面図である。
【図１７】第２の基準線を作成する具体的な方法を示す斜視図である。
【図１８】第１の基準線Ｌ１上に定義された有限個の標本点に基づいて、第２の基準線Ｌ２を作成する方法を示す正断面図である。
【図１９】第２の基準線Ｌ２に基づいて、糸の三次元形状データＤｓを作成する方法を示す概念図である。
【図２０】第２の基準線Ｌ２に基づいて、糸の三次元形状データＤｓを作成する方法を示す別な概念図である。
【図２１】第２の基準線Ｌ２に基づいて、糸の三次元形状データＤｓを作成する方法を示す更に別な概念図である。
【図２２】各代表点における接線ベクトルを定義する手法の一例を示す概念図である。
【図２３】各代表点における接線ベクトルを定義する別な手法の一例を示す概念図である。
【図２４】糸の二次元断面図形の輪郭線上に複数の制御点Ｇ０〜Ｇ１１を定義した状態を示す平面図である。
【図２５】糸の三次元形状データＤｓを構成するポリゴンの形成方法を示す斜視図である。
【符号の説明】
【０１２０】
１０…基本形状データ入力手段
２０…第１の基準線定義手段
３０…糸断面パラメータ定義手段
４０…縫製処理パラメータ定義手段
５０…第２の基準線作成手段
６０…糸形状データ作成手段
７０…合成形状データ作成手段
Ｃ，Ｃ（ｉ），Ｃ（ｉ＋１），Ｃ（ｉ＋２）…糸の二次元断面図形
Ｄｂ…基本形状データおよび当該データで示される物体の三次元形態
Ｄｓ…糸の三次元形状データおよび当該データで示される糸の三次元形態
Ｄｂｓ…合成形状データ
Ｇ０〜Ｇ１１，Ｇ（ｉ，ｊ），Ｇ（ｉ，ｊ＋１），Ｇ（ｉ＋１，ｊ），Ｇ（ｉ＋１，ｊ＋１）…制御点
ｈ（ｓ）…周期関数およびその値
Ｋ，Ｋｉ…輪郭点
Ｋ１１，Ｋ１２…参照線
Ｌ１，Ｌ１１，Ｌ１２…第１の基準線
Ｌ２…第２の基準線
ｎ，ｎ０〜ｎ８，ｎ（ｉ），ｎ（ｉ＋１），ｎ（ｉ＋２），ｎｎ（ｉ），ｎｎ（ｉ＋１），ｎｎ（ｉ＋２）…法線
Ｐ，Ｐ０〜Ｐ８，Ｐ（ｉ），Ｐ（ｉ＋１），Ｐ（ｉ＋２）…第１の基準線上の標本点
ＰＰ（ｉ），ＰＰ（ｉ＋１），ＰＰ（ｉ＋２）…近接点
Ｑ，Ｑ０〜Ｑ８，Ｑ（ｉ），Ｑ（ｉ＋１），Ｑ（ｉ＋２）…第２の基準線を構成する代表点
ＱＱ（ｉ），ＱＱ（ｉ＋１），ＱＱ（ｉ＋２）…近接点
ｒ…円の半径
ｒ（θ）…ｒθ極座標系における角度θに対応する長さ
Ｓ…グラフの基準線（物体の表面位置）
Ｓ１〜Ｓ７…流れ図の各ステップ
ｓ，ｓ１，ｓｉ…始点Ｐ０からの距離
Ｔ（ｉ），Ｔ（ｉ＋１），Ｔ（ｉ＋２）…接線ベクトル
ＴＴ（ｉ），ＴＴ（ｉ＋１），ＴＴ（ｉ＋２）…投影ベクトル
Ｖ…投影方向ベクトル
ｘ，ｙ…二次元直交座標系の各座標軸
δ…近接点までの距離
λ…縫い目の１ピッチ分の長さ
θ…角度
【図１】
2006302060.tif 000003
【図２】
2006302060.tif 000004
【図３】
2006302060.tif 000005
【図４】
2006302060.tif 000006
【図５】
2006302060.tif 000007
【図６】
2006302060.tif 000008
【図７】
2006302060.tif 000009
【図８】
2006302060.tif 000010
【図９】
2006302060.tif 000011
【図１０】
2006302060.tif 000012
【図１１】
2006302060.tif 000013
【図１２】
2006302060.tif 000014
【図１３】
2006302060.tif 000015
【図１４】
2006302060.tif 000016
【図１５】
2006302060.tif 000017
【図１６】
2006302060.tif 000018
【図１７】
2006302060.tif 000019
【図１８】
2006302060.tif 000020
【図１９】
2006302060.tif 000021
【図２０】
2006302060.tif 000022
【図２１】
2006302060.tif 000023
【図２２】
2006302060.tif 000024
【図２３】
2006302060.tif 000025
【図２４】
2006302060.tif 000026
【図２５】
2006302060.tif 000027