(57)【特許請求の範囲】
【請求項１】
二次元図形と文字列とから成る二次元ベクトルデータを入力して、階層構造を有する三次元形状から成る三次元多関節構造体の形状データを出力する形状生成処理を行い、
前記形状生成処理において、前記二次元ベクトルデータから二次元図形の要素を部品として検出して該部品の位置や傾き等を求める処理と、前記二次元ベクトルデータから文字列およびその位置を検出する処理とを行なった後、部品と文字列の対応付けに基づいて各部品の属性と部品の階層構造とを決定し、さらに該部品のローカル座標系を求め、該部品に厚みを付けて立体化した三次元形状データと、該三次元形状の階層構造を表わす階層構造記述データとを生成することを特徴とする三次元多関節構造体形状生成方法。
【請求項２】
前記二次元図形の要素は、内部がパターンや色によって塗られており、該パターンや色によって前記部品の属性が決定されることを特徴とする請求項１に記載の三次元多関節構造体形状生成方法。
【請求項３】
前記文字列によって、前記部品の名前の設定、前記部品の属性の設定、前記部品の階層構造の指定、前記部品の使用・不使用の指定、全ての前記部品に影響を与える初期設定、注釈文のうちの少なくとも１つを行うことを特徴とする請求項１〜請求項２の何れかに記載の三次元多関節構造体形状生成方法。
【請求項４】
前記部品と文字列の対応付けが、前記部品の位置と前記文字列の位置との距離、および前記部品と前記文字列が同一のグループとして定義されているか否かに基づいて行なわれ、対応する文字列のない前記部品に対しては、新たな文字列を追加することによって対応付けが行われることを特徴とする請求項１〜請求項３の何れかに記載の三次元多関節構造体形状生成方法。
【請求項５】
前記部品の階層構造が、前記部品に対応する前記文字列の内容と、前記部品の周囲に存在する他の部品の位置とに基づいて決定されることを特徴とする請求項１〜請求項４の何れかに記載の三次元多関節構造体形状生成方法。
【請求項６】
前記部品のローカル座標系が、前記部品の親となる部品の中心を起点とした前記部品の中心までの距離と、前記部品の両端までの距離とを比較することによって決定されることを徴とする請求項１〜請求項５の何れかに記載の三次元多関節構造体形状生成方法。
【請求項７】
前記三次元形状データの生成において、前記部品を表わす二次元図形の要素を変形して得られる図形を該二次元図形の要素を含む平面の前後に複数個重ね、重ねた該図形群の輪郭が表わす三次元形状を三次元ポリゴン等で表現することを特徴とする請求項１〜請求項６の何れかに記載の三次元多関節構造体形状生成方法。
【請求項８】
前記二次元ベクトルデータが、二次元スキャナ等によって計算機に入力された画像データの中から、図形および文字を認識することによって生成されることを特徴とする請求項１〜請求項７の何れかに記載の三次元多関節構造体形状生成方法。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は階層構造を有する三次元形状から成る三次元多関節構造体の形状データ生成方法に関し、特に、二次元図形と文字列とから成る二次元ベクトルデータを入力として用いた場合に好適な形状データ生成方法方法に関する。
【０００２】
【従来の技術】
コンピュータグラフィックスの分野において、階層構造を有する三次元形状から成る三次元多関節構造体は、その姿勢を変化させることによって様々なアニメーション映像を生成できる便利な三次元モデルである。
三次元多関節構造体の形状生成作業は、部品となる三次元形状を作成する作業と、作成した三次元形状を階層構造化する作業とからなる。上記何れの作業過程も、３面図、すなわち互いに直交する３つの方向からの二次元表示と、遠近感の付いた１つ以上の三次元表示とを有し、ユーザはこれらの複数の表示を手がかりとして作業を行なっている。
【０００３】
【発明が解決しようとする課題】
しかしながら、従来の方式による三次元形状の作成作業は、ユーザにとって容易ではなかった。その理由は、一般に、ユーザが所望の三次元形状を思い浮かべる場合、１枚の二次元図形が「厚み」を持ったものとして捉えることが多いため、作業の過程で呈示さる複数の表示を結び付けようとすると、かえって三次元形状の全体像の把握の妨げになりやすいからである。
また、階層構造化作業においては、部品となる三次元形状を１つずつ配置するか、予め最終的な位置に配置されている三次元形状に対して「骨格」となるローカル座標系を指定する方法が採用されているが、上述した複数表示を手がかりとする限り、これら何れの方法も、ユーザにとって極めて煩雑なものとなっていた。なお、後者の方法の場合、ユーザが所望するローカル座標系が、最終的な位置に配置された三次元形状の「傾き」と密接な関係にあるため、階層構造化作業自動化の可能性をもっている。
【０００４】
本発明の目的は、１枚の二次元図形で表現された情報を基にして、三次元多関節構造体の形状を生成する改良された方法を提供することにある。
【０００５】
【課題を解決するための手段】
上記目的を達成するため、本発明では、二次元図形と文字列とから成る１枚の二次元ベクトルデータを入力データとし、入力データに含まれる二次元図形の要素を部品として検出し、各部品の傾きを求める。色、厚みの付け方、階層構造といった各部品の性質は、入力データに含まれる文字列で記述し、各文字列を部品と対応付けておき、各部品に厚みを付けることによって、立体化した三次元形状データと、三次元形状の階層を表わす階層構造記述データとを生成する。
【０００６】
【作用】
本発明によれば、入力データである二次元ベクトルデータは、二次元スキャナや二次元図形・文字編集プログラムによって作成でき、三次元的なデータ入力作業は不要になる。また、部品の傾きを求めることにより、各部品の最適なローカル座標系を自動的に決定でき、部品の性質を文字列で記述し、部品と文字列を対応付けることにより、個々の部品の性質を正確に設定でき、三次元形状データと階層構造記述データとを合わせることにより、姿勢変化可能な三次元多関節構造体の形状データを得ることができる。これによって、１枚の二次元図形で表現された情報を基にして、例えば、アニメーション映像生成に利用される三次元多関節構造体の形状データの自動生成が可能になる。
【０００７】
【実施例】
［１］システム構成
図１は、本発明を実行するための三次元多関節構造体形状生成システムの構成の１例をに示す。
１１１は、プログラム（１０１、１０３、１０５、１０６、１０７、１０９）とデータ（１０２、１０４、１０８）を記憶するための記憶装置、１１２はユーザがプログラムを対話的に操作するための入力装置、１１３は中央処理装置、１１４は三次元多関節構造体を表示するためのディスプレイ、１１５は二次元スキャナであり、これらの要素はバスによって相互接続されている。二次元スキャナ１１５は、二次元スキャナ制御プログラム１０７によって駆動され、二次元図形と文字から成る二次元画像を読み取る。スキャナ入力は、プログラム１０７によって、二次元図形・文字画像データ１０８として記憶装置１１１に格納される。上記データ１０８を二次元図形・文字認識プログラム１０９に入力することにより、二次元図形・文字ベクトルデータ１０２が得られる。
【０００８】
二次元図形・文字ベクトルデータ１０２は、二次元図形を表わす頂点の座標や数式の係数と、文字を表わすコードと、画像の中で文字列の置かれた位置を表わす座標とを含む数値データであり、これらのデータ１０２は、二次元図形・文字編集プログラム１０１を用いて、対話的に作成することもできる。プログラム１０９を用いる方法と、プログラム１０１を用いる方法は、本システムの利用目的に応じて適切な方を選択すればよい。例えば、紙等に描かれた二次元画像から三次元多関節構造体を生成したい場合は、前者の方法を選択し、データ１０２を計算機上で精密に作成したい場合は、後者の方法を選択すればよい。
【０００９】
二次元図形・文字ベクトルデータ１０２を三次元多関節構造体形状生成プログラム１０３に入力することにより、三次元多関節構造体形状データ１０４が得られる。三次元多関節構造体形状データ１０４の主な利用目的は、データ１０４が表わす三次元多関節構造体のアニメーション映像を生成することである。この目的を達成するために、記憶装置１１１には、三次元多関節構造体動作編集プログラム１０５と、三次元多関節構造体質感生成プログラム１０６とが用意されている。プログラム１０５は、データ１０４を入力とし、三次元多関節構造体の姿勢の変化を表わす時系列データを出力する。プログラム１０６は、データ１０４と、プログラム１０５が出力する時系列データとを入力とし、時系列データ内の各時刻における三次元多関節構造体の表面に質感を付与してアニメーション映像を生成し、この映像を装置１１４上に表示する。
【００１０】
［２］処理の流れ
図２は、本発明による三次元多関節構造体の形状生成処理の流れを示す。
三次元多関節構造体形状生成プログラム１０３は、部品の検出（２１１）、文字列の検出（２１２）、部品と文字列の対応付けによる部品の属性と階層構造の決定（２１３）、部品のローカル座標系の決定（２１４）、部品の立体化（２１５）、三次元形状の階層構造化（２１６）の６つの処理ステップを実行する。
【００１１】
処理２１１と２１２は、何れもプログラム１０３の入力データである二次元図形・文字ベクトルデータ１０２を入力とする。処理２１１は、データ１０２の中から二次元図形の要素を部品として検出し、各々の部品の位置や傾き等を求め、位置付き部品データ２０１を出力する。処理２１２は、データ１０２の中から文字の集合を文字列として検出し、各々の文字列の位置を求め、位置付き文字列データ２０２を出力する。
処理２１３は、データ２０１とデータ２０２を入力とし、データ２０１に含まれる部品の各々に対してデータ２０２に含まれる文字列を対応付けることによって、色や厚みの付け方等といった部品の属性と、部品の階層構造とを決定し、位置・属性・階層付き部品データ２０３を出力する。
処理２１４は、データ２０３を入力とし、データ２０３に含まれる部品の各々に対するローカル座標系を決定し、位置・属性・階層・座標系付き部品データ２０４を出力する。
処理２１５と処理２１６は、いずれもデータ２０４を入力とする。処理２１５は、データ２０４に含まれる部品の各々を三次元ポリゴンの生成等によって立体化し、部品の三次元形状データ２０５を出力する。処理２１６は、データ２０５の要素間の階層構造を記述するデータを生成し、部品の階層構造記述データ２０６を出力する。プログラム１０３の出力データである三次元多関節構造体形状データ１０４は、データ２０５とデータ２０６とから成る。
【００１２】
［３］二次元図形・文字ベクトルデータの内容
図３は、本発明で用いる二次元図形・文字ベクトルデータ１０２となる画像の１例を示す。本明細書では、画像の中に存在する単体の二次元図形３０１〜３１５の各々を「部品」と呼び、文字が１行以上並んで独立した集合を成すもの３５１〜３６２の各々を「文字列」と呼ぶ。
【００１３】
本発明では、面積を持つ図形のみを部品とみなす。線分（３９１、３９２）のように面積を持たない図形は、部品とはみなさないが、画像の中に存在することは許されている。従って、これらの図形３９１、３９２は、二次元図形・文字編集プログラム１０１を用いて部品を配置する際に、補助線として利用できる。
【００１４】
各部品の内部は、一定の色やパターンによって塗られている。プログラム１０１を用いてデータ１０２を作成した場合、部品３０１〜３１５、および文字列３５１〜３６２の中から選ばれた複数の要素を、同一のグループに属するものとして定義することができる。この定義を「グループ化」とよぶ。図３の例では、部品３０１〜３０４がグループ化されており、部品３１１と文字列３５３とがグループ化されているものとする。
部品３０１〜３０４のように、複数の部品が同一のグループ内にある場合、最も背面にある部品３０１以外のもの部品３０２〜３０４を特に「副部品」と呼ぶことにする。
【００１５】
文字列３５１〜３６２は、プログラム１０１によって同一のグループとして定義された部品か、または副部品でない部品で文字列の最も近くに存在するものとの間に対応関係を持つ。ただし、以下の２種類の文字列は、特定の部品との間に対応関係を持たない。
（１）「＃」で始まる文字列（例えば、３５２）は、注釈文として扱われ、無視される。
（２）「％」で始まる文字列（例えば、３５４）は、全ての部品に影響を与える初期設定を表わす。この初期設定は、具体的には、部品の色や厚みの付け方等といった「部品の属性」のデフォルトの設定、部品を立体化する際のワールド座標系の座標軸の方向やスケールの指定、変数の定義等である。
【００１６】
上記以外の文字列は、特定の部品との間に対応関係を持つ。対応する文字列の内容によって、部品（３０１〜３１５）は以下の４種類に分類される。
（１）「＊」で始まる文字列（３５３）に対応する部品（３１１）は、「不使用部品」として無視される。この文字列（３５３）は注釈文として扱われ、無視される。
（２）「＄」で始まる文字列（３５９〜３６２）に対応する部品（３１２〜３１５）は、「凡例部品」となる。これらの文字列（３５９〜３６２）は、凡例部品と同一の色やパターンによって内部が塗られている全ての部品の属性を記述するものである。
例えば、凡例部品３１２に対応する文字列３５９は、部品３０１の属性を記述しており、凡例部品３１３に対応する文字列３６０は、部品３０２、３０３、３０４の属性を記述している。
（３）アルファベットの大文字または小文字で始まる文字列（３５１、３５５〜３５８）に対応していて副部品ではない部品（３０１、３０５〜３０８）は、立体化され、かつ独立した階層となる部品である。これを「主部品」と呼ぶことにする。
これらの文字列（３５１、３５５〜３５８）は、部品の名前、部品の親となる部品（親部品）の名前、および部品の属性を記述するものである。親部品の名前は、「＠」の後に記述し、部品の属性は、「＄」の後に記述する。
【００１７】
部品の名前以外は、無くてもよい。例えば、文字列３５６の記述は、対応する部品の名前が「Ｒａｒｍ」、その親部品の名前が「Ｕｂｏｄｙ」であることを意味し、部品を立体化して得られる形状が、部品の傾きの方向を中心軸とする円柱であることを「Ｓｈａｐｅ  ｒｏｕｎｄｖ」というキーワードで示している。「−９０  ９０」はこの円柱の形状に変化を与えるパラメータである。なお、対応する文字列が無く、かつ副部品でない部品（３０９、３１０）も、「主部品」となる。予め文字列との対応があり、かつこれらの部品（３０９、３１０）の最も近くに位置する部品（３０８）が、これらの部品（３０９、３１０）の親部品となる。
（４）上記のいずれにも該当しないもので、存在が許される部品は、副部品（３０２〜３０４）だけである。副部品（３０２〜３０４）は、立体化され、かつ同一のグループに属する主部品（３０１）と同一の階層に置かれる。副部品に対しても、グループ化によって文字列を対応させ、その副部品の属性を記述することができる。
【００１８】
主部品および副部品の各々の属性は、複数の文字列によって重複して記述される。これらの記述の参照は、以下の優先順位に従って行なわれる。
（１）部品に対応する文字列の中に属性の記述があれば、これを参照する。
（２）部品と同一の色やパターンによって内部が塗られている凡例部品があれば、この凡例部品に対応する文字列の中にある属性の記述を参照する。
（３）「％」で始まる文字列の中に属性の記述があれば、これを参照する。
（４）上記のいずれの中でも記述されていない属性に関しては、暗黙の初期設定が存在し、これが参照されるものとする。
【００１９】
［４］部品の検出および文字列の検出
図４は、部品の検出処理２１１の説明図である。
部品検出処理２１１では、二次元図形・文字ベクトルデータ１０２の中から、一定の色やパターンによって塗られた単体の二次元図形を部品として検出する。部品の形状は、頂点列から成る二次元ポリゴンで表現する。単体の二次元図形が二次元ポリゴン以外の図形、例えば楕円や扇形等であった場合は、これらの図形の輪郭に適当な間隔で頂点を並べて二次元ポリゴンを作り、この二次元ポリゴンで部品を表現する。
例えば、部品３０６は、頂点４０１〜４０４を持ち、内部がパターン４１０で塗られた４角形として表現される。部品検出処理２１１では、検出された各々の部品に対して、部品の中心点、部品の傾きを表わす中心軸、部品の両端点を求める。これらは、部品のローカル座標系を決定する際に重要な手がかりとなるものである。
【００２０】
部品３０６の場合、部品の中心点４１１の座標としては、４つの頂点（４０１〜４０４）の座標の平均値等が用いられる。部品の傾きを表わす中心軸４２１は、中心点４１１を通る直線であり、その傾きは、４つの頂点（４０１〜４０４）を標本点とする一次回帰式に基づいて決定される。部品の両端点４１２、４１３は、４つの頂点（４０１〜４０４）から中心軸４２１に下した垂線の足のうち両端に位置するものである。部品の中心点を、部品の「位置」とみなし、部品と文字を対応づける際に参照する。
【００２１】
図５は、文字列の検出処理２１２の説明図である。
文字列の検出処理２１２では、二次元図形・文字ベクトルデータ１０２の中から、文字が１行以上並んで独立した集合を成すものを文字列として検出する。文字列の存在領域の左上の端点を、その文字列の「位置」とみなし、部品と文字を対応づける際に参照する。  例えば、文字列３５６の場合、その存在領域５０１の左上の端点５０２が、文字列３５６の位置となる。［３］で述べたように、文字列の内容は、部品の名前、部品の属性、親部品の名前、部品の不使用の指定、全ての部品に対する初期設定、注釈文等である。
【００２２】
［５］部品と文字列の対応付けによる部品の属性と階層構造の決定
図６は、部品と文字列の対応付けに基づく部品の属性と階層構造の決定処理２１３の流れ図である。部品の属性と階層構造の決定処理２１３は、以下の手順で行なう。
（１）全ての文字列（６１０）のうち、部品の名前と部品の属性の両方を含むもの（ステップ６１１が「Ｙｅｓ」となるもの）に対して、その属性を登録する処理を行なう（６１２）。
（２）全ての文字列（６２０）のうち、特定の部品と同一のグループに属すると定義されているもの（ステップ６２１が「Ｙｅｓ」となるもの）は、その部品に対応させる（６２２）。
（３）全ての文字列（６３０）のうち、対応が未定のもの（ステップ６３１が「Ｙｅｓ」となるもの）をＣとする。また、全ての部品（６３２）のうち、対応が未定で、主部品の候補であるもの（ステップ６３３が「Ｙｅｓ」となるもの）の位置と文字列Ｃの位置との距離を求め（６３４）、この距離が最短となる部品に文字列Ｃを対応させる（６３５）。
【００２３】
（４）全ての部品（６４０）のうち、対応が未定で主部品の候補であるもの（ステップ６４１が「主」となるもの）をＭとし、対応が未定で副部品の候補であるもの（ステップ６４１が「副」となるもの）をＳとする。Ｍに対して、新たな文字列を生成して対応させ、Ｍの名前を新たに与えてこの文字列の中に記述する（６４２）。更に、全ての部品（６４３）のうち、ループ６４０の開始以前の処理で文字列との対応が確定している主部品（ステップ６４４が「Ｙｅｓ」となるもの）の位置と部品Ｍの位置との距離とを求め（６４５）、この距離が最短となる部品の名前を品Ｍの親部品の名前とし、Ｍに対応させた文字列の中に記述する（６４６）。Ｓに対しても、上記と同様に、新たな文字列を生成して対応させる（６４７）。
【００２４】
（５）全ての部品（６５０）のうち、凡例部品（ステップ６５１が「Ｙｅｓ」となるもの）に対して、その部品に対応する文字列の中に記述された属性を登録する処理を行なう（６５２）。
（６）全ての部品（６６０）のうち、対応が確定済みで主部品であるもの（ステップ６６１が「主」となるもの）をＭとし、対応が確定済みで副部品であるもの（ステップ６６１が「副」となるもの）をＳとする。Ｍの属性を、登録済みの属性を参照して決定する（６６２）。また、全ての部品（６６３）のうち、対応が確定済みで主部品であるもの（ステップ６６４が「Ｙｅｓ」となるもの）で、名前がＭの親部品の名前と一致するもの（ステップ６６５が「Ｙｅｓ」となるもの）を、Ｍの親部品とし、Ｍに関する情報の中から参照できるようにする（６６６）。同様に、Ｓの属性も、登録済みの属性を参照して決定する（６６７）。Ｓと同一のグループに属する主部品をＳに関する情報の中から参照できるようにする（６６８）。
【００２５】
［６］部品のローカル座標系の決定
図７は、部品のローカル座標系の決定処理２１４の説明図である。
部品ローカル座標系の決定処理２１４では、部品の中心点および両端点のうち、親部品の中心点からの距離が最も短いものをローカル座標系の原点とし、部品の中心軸をローカル座標系の座標軸のうちの一つとする。
例えば、部品３０６のローカル座標系を決定する際には、部品３０６の中心点４１１と両端点４１２、４１３の各々に対して、親部品３０５の中心軸７２１上にある親部品の中心点７１１からの距離を求める。その結果、点４１２までの距離が最も短いのでこれがローカル座標系の原点となる。そして、ローカル座標系の座標軸のうちの一つ（７０１）は部品３０６の中心軸４２１の方向と一致するものになり、他の一つ（７０２）は部品３０６を含む平面内で７０１と直交するものになる。部品３０６を立体化するために必要な残りの一つの座標軸は、部品３０６を含む平面に対して垂直な方向を向くものになる。
【００２６】
以上のようにして、各々の部品に最適なローカル座標系が決定される。ただし、必要に応じて座標原点や座標軸の方向を、部品に対応する文字列で記述して指定してもよい。
部品のローカル座標系は、部品を立体化する際の縦横の方向の基準として用いられる。また、主部品のローカル座標系は、部品から生成した三次元形状を記述する際にも用いられる。
【００２７】
［７］部品の立体化および三次元形状の階層構造化
図８は、部品に「厚み」を与える部品立体化処理２１５の説明図である。
部品の立体化処理２１５では、部品を変形して得られる図形を、部品を含む平面の前後に複数個重ね、重ねた図形群の輪郭が表わす三次元形状を三次元ポリゴン等で表現する。  図８の例では、部品３０６の上に２個（８０１、８０２）、下に２個（８０３、８０４）、計４個の図形を重ねている。これらはいずれも部品３０６の縦横のスケールを変化させて生成したものである。図形８０１と図形８０４は、部品３０６の中心軸と垂直な方向のスケールがゼロであるため、縮退して線分になっている。図形８０１〜８０４の輪郭は、２つの８角形（８１１、８１２）を両端とする８角柱を形成する。これを三次元ポリゴン等で表現することにより、視覚的に円柱とみなされる三次元形状が得られる。
【００２８】
このような立体化手法により、円柱、角柱、円錐、角錐、円錐台、角錐台、楕円体、あるいはそれら以外の様々な三次元形状を生成できる。これらの三次元形状は、部品を含む平面に対して対称な位置に２個生成してもよい。また、これらの三次元形状を、予め用意された他の三次元形状と差し替えてもよい。どのような三次元形状を生成するか、すなわち厚みの付け方は、［３］で述べたように、部品に対応する文字列で記述して指定する。
【００２９】
図９は、三次元形状の階層構造化処理２１６の説明図であり、図３に示した二次元図形・文字ベクトルデータに含まれる主部品（３０１、３０５〜３１０）と副部品（３０２〜３０４）から生成した三次元形状を階層構造化した結果を示している。
三次元形状の名前は、対応する主部品の名前と同じとする。部品３０１は、文字列３５１に記述されたＨｅａｄという名前を持つ三次元形状９０１になる。三次元形状９０１には、副部品３０２〜３０４から生成される三次元形状も含まれており、それらが主部品３０１のローカル座標で記述されている。
【００３０】
部品３０６、３０７から生成される三次元形状９０６、９０７の名前は、それぞれ「Ｒａｒｍ」、「Ｌａｒｍ」となる。部品３０１、３０６、３０７の共通の親部品は部品３０５なので、部品３０５から生成される「Ｕｂｏｄｙ」という名の三次元形状９０５が、「Ｈｅａｄ」９０１、「Ｒａｒｍ」９０６および「Ｌａｒｍ」９０７の親となる。部品３０９、３１０から生成される三次元形状９０９、９１０の名はそれぞれ「Ｕ−１」、「Ｕ−２」となる。これらの名前は、図３の中で文字列で記述されたものではなく、図６の処理６４２で新たに追加された文字列によって与えられたものである。
部品３０９、３１０の共通の親部品は部品３０８であるから、部品３０８から生成される「Ｌｂｏｄｙ」という名の三次元形状９０８が、「Ｕ−１」９０９および「Ｕ−２」９１０の親となる。部品３０５、３０８には親部品が存在しない。従って、これらの部品から生成される三次元形状「Ｕｂｏｄｙ」９０５および「Ｌｂｏｄｙ」９０８には、「Ｒｏｏｔ」という名の仮想的な親９００が定義される。このようにして、図９に示す階層構造が得られ、この構造を記述したものが、部品の階層構造記述データ２０６である。
以上のようにして得られた部品の三次元形状データ２０５と部品の階層構造記述データ２０６とを合わせると、姿勢変化可能な三次元多関節構造体の形状データ１０４が得られる。本発明を用いることにより、１枚の二次元図形・文字ベクトルデータ１０２から、アニメーション映像生成用の三次元多関節構造体の形状データ１０４を自動的生成が可能となる。
【００３１】
【発明の効果】
本発明によれば、二次元図形・文字ベクトルデータから、アニメーション映像生成に利用できる三次元多関節構造体の形状データの生成が容易になり、ユーザにとって、形状把握が困難な３面図等を用いることなく、少ない工数で、三次元多関節構造体を作成できる利点がある。
【図面の簡単な説明】
【図１】本発明を実行する三次元多関節構造体形状生成システムの構成の１例を示す図。
【図２】本発明による三次元多関節構造体形状の生成処理の流れを示す図。
【図３】二次元図形・文字ベクトルデータの説明図。
【図４】部品の検出処理の説明図。
【図５】文字列の検出処理の説明図。
【図６】部品と文字列の対応付けに基づく部品の属性と階層構造の決定処理の流れ図。
【図７】部品のローカル座標系の決定処理の説明図。
【図８】部品の立体化処理の説明図。
【図９】三次元形状の階層構造化処理の説明図。
【符号の説明】
１０１…二次元図形・文字編集プログラム、
１０２…二次元図形・文字ベクトルデータ、
１０３…三次元多関節構造体形状生成プログラム、
１０４…三次元多関節構造体形状データ、
１０５…三次元多関節構造体動作編集プログラム、
１０６…三次元多関節構造体質感生成プログラム、
１０７…二次元スキャナ制御プログラム、
１０８…二次元図形・文字画像データ、
１０９…二次元図形・文字認識プログラム、
１１１…記憶装置、１１２…入力装置、１１３…中央処理装置、１１４…ディスプレイ、１１５…二次元スキャナ。
【図１】
0003635734.tif 000002
【図２】
0003635734.tif 000003
【図３】
0003635734.tif 000004
【図４】
0003635734.tif 000005
【図５】
0003635734.tif 000006
【図６】
0003635734.tif 000007
【図７】
0003635734.tif 000008
【図８】
0003635734.tif 000009
【図９】
0003635734.tif 000010