(57)【要約】【課題】本発明は、ユーザが手書き入力したエレメントからテクスチャを自動的に作成するテクスチャ描画支援装置において、ユーザの手書き入力による風合いを損なうことなく、且つ簡略な操作によってテクスチャを描画することができる技術の提供を課題とする。【解決手段】本発明は、表示画面上でテクスチャの一部を構成する複数のストロークが入力された後、一部のストロークを通過するジェスチャが入力されたときに、前記複数のストロークを組み合わせて一つのエレメントを作成し、作成されたエレメントを自動的に装置に登録するとともに、ジェスチャに従ってエレメントを合成することによりテクスチャを自動的に作成するようにした。【選択図】図４
2015215636.tif 000002
【特許請求の範囲】
【請求項１】
表示画面上で手書き入力されるストロークに基づいてテクスチャを作成及び編集するテクスチャ描画支援装置において、
手書き入力されるストロークを表示するための描画キャンバス、及びテクスチャのベースとなるエレメントを表示するエレメント表示エリアを表示画面上に表示させるインタフェース手段と、
前記描画キャンバス上で入力されたストロークを前記描画キャンバスに表示させる画像出力手段と、
前記描画キャンバス上に表示された少なくとも一つのストロークを通過するジェスチャが入力されたときに、前記描画キャンバス上に表示されている複数のストロークを組み合わせて一つのエレメントを作成し、作成されたエレメントを前記エレメント表示エリアに登録するエレメント作成手段と、
前記エレメント表示エリアに登録されているエレメントの一つが選択された状態でジェスチャが入力されたときに、選択されたエレメントを合成してテクスチャを作成する合成手段と、
を備えるテクスチャ描画支援装置。
【請求項２】
請求項１において、前記インタフェース手段は、エレメント作成モードと、エレメントを合成する合成モードと、を含む複数のモードを選択するためのボタンを表示するボタン表示エリアを表示画面上に表示させ、
前記エレメント作成手段は、エレメント作成モードが選択された状態でストロークが入力され、次いで合成モードが選択された状態で前記描画キャンバス上に表示された少なくとも一つのストロークを通過するジェスチャが入力されたときに、前記エレメント作成モードが選択された状態で入力された全てのストロークを組み合わせて一つのエレメントを作成し、作成されたエレメントを前記エレメント表示エリアに登録するテクスチャ描画支援装置。
【請求項３】
請求項２において、前記合成モードは、ジェスチャによって指定される経路に沿ってテクスチャを作成するブラシモードを含み、
前記合成手段は、前記ブラシモードが選択された状態で前記描画キャンバス上にジェスチャが入力されたときに、前記ジェスチャによって指定される経路に沿って、エレメントを各エレメントの向きがジェスチャ経路の接線方向と平行になるように一次結合することによりテクスチャを作成するテクスチャ描画支援装置。
【請求項４】
請求項２又は３において、前記合成モードは、前記描画キャンバス上で指定された領域にハッチングを施すハッチングモードを含み、
前記合成手段は、前記ハッチングモードが選択された状態で前記描画キャンバス上の指定領域内にジェスチャが入力されたときに、前記指定領域内で前記ジェスチャによって指定された方向にエレメントを一次結合し、一次結合されたエレメントと前記指定領域の境界との余白部分に前記一次結合されたエレメントと平行にエレメントを配置し、さらに前記ジェスチャによって指定された方向と直交する方向において隣接するエレメント間をスティッチングすることによりテクスチャを作成するテクスチャ描画支援装置。
【請求項５】
請求項２乃至４の何れか１項において、前記マッピングモードは、前記描画キャンバス上で指定された領域を塗りつぶす塗りつぶしモードを含み、
前記合成手段は、前記塗りつぶしモードが選択された状態で前記描画キャンバス上の指定領域内にジェスチャが入力されたときに、選択中のエレメントを前記指定領域にタイリングする処理と、選択中のエレメントから近接類似性の最も高い最適サンプルを探索する処理と、指定領域に配置されたサンプルの位置を前記最適サンプルと同等の近接類似性に
なる位置へ移動させる処理と、を実行することによりテクスチャを作成するテクスチャ描画支援装置。
【請求項６】
表示画面上で手書き入力されるストロークに基づいてテクスチャを作成及び編集するテクスチャ描画支援方法において、
コンピュータが、手書き入力されるストロークを表示するための描画キャンバス、及びテクスチャのベースとなるエレメントを表示するエレメント表示エリアを表示画面上に表示させるステップと、
コンピュータが、前記描画キャンバス上で入力されたストロークを前記描画キャンバスに表示させるステップと、
コンピュータが、前記描画キャンバス上に表示された少なくとも一つのストロークを通過するジェスチャが入力されたときに、前記描画キャンバス上に表示されている複数のストロークを組み合わせて一つのエレメントを作成し、作成されたエレメントを前記エレメント表示エリアに登録するステップと、
コンピュータが、前記エレメント表示エリアに登録されているエレメントの一つが選択された状態でジェスチャが入力されたときに、選択されたエレメントを合成してテクスチャを作成するステップと、
を含むテクスチャ描画支援方法。
【請求項７】
手書き入力されるストロークを表示するための描画キャンバス、及びテクスチャのベースとなるエレメントを表示するエレメント表示エリアを表示画面上に表示させるステップと、
前記描画キャンバス上で入力されたストロークを前記描画キャンバスに表示させるステップと、
前記描画キャンバス上に表示された少なくとも一つのストロークを通過するジェスチャが入力されたときに、前記描画キャンバス上に表示されている複数のストロークを組み合わせて一つのエレメントを作成し、作成されたエレメントを前記エレメント表示エリアに登録するステップと、
前記エレメント表示エリアに登録されているエレメントの一つが選択された状態でジェスチャが入力されたときに、選択されたエレメントを合成してテクスチャを作成するステップと、
をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パーソナルコンピュータ等を利用して画像処理を行う技術に関し、特にテクスチャの描画を支援する技術に関する。
【背景技術】
【０００２】
パーソナルコンピュータ等を利用して画像処理を行う場合に、描画オブジェクトの質感を高めるために、描画オブジェクトの表面にテクスチャをマッピングする技術が広く用いられている。テクスチャを作成（描画）する方法としては、三次元モデルや二次元イメージ等のテンプレートを合成してテクスチャを作成する方法が知られている（例えば、非特許文献１を参照）。
【０００３】
また、テクスチャを作成する他の方法としては、ユーザが入力したストロークの特徴を検出してストロークパターンを作成し、作成されたストロークパターンを合成してテクスチャを作成する方法も知られている（例えば、非特許文献２を参照）。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】Barla, P., Breslav, S., Thollot, J. and Markosian, L. Interactive hatching and stippling by example. INRIA Technical Report (2006)
【非特許文献２】Groller, E. and Szirmay-Kalos, L. Stroke Pattern Analysis and Synthesis. EUROGRAPHICS, 25 (2006), Number 3
【非特許文献３】Ijiri, T., Mech, R., Miller, G. and Igarashi, T. An example-based procedural system for element arrangement. Computer Graphics Forum 27,2 (EUROGRAPHICS 2008), 429 - 436
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、従来の方法においては、テンプレートやストロークパターンを作成又は編集する際に、ユーザが各種のパラメータを設定したり、煩雑な操作を習得したりする必要があった。また、ストロークパターンを作成又は合成する際にユーザの手書き入力による風合いが損なわれる可能性もあった。
【０００６】
本発明は、上記したような実情に鑑みてなされたものであり、その目的は、ユーザの手書き入力による風合いを損なうことなく、簡略な操作によってテクスチャを描画することができる技術の提供にある。
【課題を解決するための手段】
【０００７】
本発明は、上記した課題を解決するために、手書き入力されたテクスチャの一部を直感的なジェスチャによって編集することができるようにした。
【０００８】
詳細には、本発明は、表示画面上で手書き入力されるストロークに基づいてテクスチャを作成及び編集するテクスチャ描画支援装置において、
手書き入力されるストロークを表示するための描画キャンバス、及びテクスチャのベースとなるエレメントを表示するエレメント表示エリアを表示画面上に表示させるインタフェース手段と、
前記描画キャンバス上で入力されたストロークを前記描画キャンバスに表示させる画像出力手段と、
前記描画キャンバス上に表示された少なくとも一つのストロークを通過するジェスチャが入力されたときに、前記描画キャンバス上に表示されている複数のストロークを組み合わせて一つのエレメントを作成し、作成されたエレメントを前記エレメント表示エリアに登録するエレメント作成手段と、
前記エレメント表示エリアに登録されているエレメントの一つが選択された状態でジェスチャが入力されたときに、選択されたエレメントを合成してテクスチャを作成する合成手段と、
を備えるようにした。
【０００９】
このように構成されたテクスチャ描画支援装置によれば、ユーザによってテクスチャの一部が描画された後にジェスチャが入力された場合に、描画されたテクスチャの一部がエレメントとして自動的に登録される。また、登録されたエレメントの一つが選択された状態でジェスチャが入力された場合は、ジェスチャに従ってエレメントが合成されてテクスチャが作成される。
【００１０】
上記したように作成されるテクスチャは、ユーザが手書き入力したエレメントを使用して作成されるため、ユーザの手書き入力による風合いを損なわずにテクスチャを作成することができる。また、ユーザが直感的に行うことができるジェスチャに従ってエレメントの合成、すなわちテクスチャの作成が行われるため、ユーザが複雑なパラメータ操作を行う必要がなくなるとともに、煩雑な操作を習得する必要もなくなる。
【００１１】
ここで、インタフェース手段は、エレメント作成モードと、エレメントを合成する合成モードと、を含む複数のモードを選択するためのボタンを表示するボタン表示エリアを表示画面上に表示させるようにしてもよい。その場合、エレメント作成手段は、エレメント作成モードが選択された状態でストロークが入力され、次いで合成モードが選択された状態で前記描画キャンバス上に表示された少なくとも一つのストロークを通過するジェスチャが入力されたときに、前記エレメント作成モードが選択された状態で入力された全てのストロークを組み合わせて一つのエレメントを作成し、作成されたエレメントを前記エレメント表示エリアに登録するようにしてもよい。このような構成によれば、ユーザは、エレメントの作成作業とエレメントの合成作業とを簡単に切り替えることができる。
【００１２】
なお、前記した合成モードは、ブラシモードと、ハッチングモードと、塗りつぶしモードの少なくとも一つを含むようにしてもよい。ブラシモードは、ジェスチャによって指定される経路に沿ってテクスチャを作成するモードである。ハッチングモードは、描画キャンバス上で指定された領域にハッチングを施すモードである。塗りつぶしモードは、描画キャンバス上で指定された領域を塗りつぶすモードである。
【００１３】
前記ブラシモードが選択されている場合は、合成手段は、描画キャンバス上にジェスチャが入力されたときに、前記ジェスチャによって指定される経路に沿ってエレメントを一次結合することによりテクスチャを作成するようにしてもよい。その際、各エレメントの向き（配向）は、各エレメントが配置される位置におけるジェスチャ経路の接線方向と平行にされることが望ましい。このような構成によれば、ユーザは、ジェスチャによって経路の長さや曲がり具合を指定することにより、テクスチャの長さや曲がり具合を決定することができる。
【００１４】
前記ハッチングモードが選択されている場合は、合成手段は、描画キャンバス上の指定領域内にジェスチャが入力されたときに、前記指定領域内で前記ジェスチャによって指定された方向にエレメントを一次結合し、一次結合されたエレメントと前記指定領域の境界との余白部分に前記一次結合されたエレメントと平行にエレメントを配置し、さらに前記ジェスチャによって指定された方向と直交する方向において隣接するエレメント間をステ
ィッチングすることによりテクスチャを作成するようにしてもよい。このような構成によれば、ユーザは、ハッチングを施す領域の指定とジェスチャの入力を行うことにより、所望の領域にシームレスなハッチングを施すことができる。
【００１５】
前記塗りつぶしモードが選択されている場合は、合成手段は、描画キャンバス上の指定領域内にジェスチャが入力されたときに、選択中のエレメントを前記指定領域にタイリングする処理と、選択中のエレメントから近接類似性の最も高い最適サンプルを探索する処理と、指定領域に配置されたサンプルの位置を前記最適サンプルと同等の近接類似性になる位置へ移動させる処理と、を実行することによりテクスチャを作成するようにしてもよい。このような構成によれば、ユーザは、塗りつぶしを施す領域の指定とジェスチャを入力することにより、視覚的な違和感の少ない塗りつぶしを所望の領域に施すことができる。
【００１６】
なお、本発明は、表示画面上で手書き入力されるストロークに基づいてテクスチャを作成及び編集するテクスチャ描画支援方法として捉えることもできる。
すなわち、本発明は、コンピュータが、手書き入力されるストロークを表示するための描画キャンバス、及びテクスチャのベースとなるエレメントを表示するエレメント表示エリアを表示画面上に表示させるステップと、
コンピュータが、前記描画キャンバス上で入力されたストロークを前記描画キャンバスに表示させるステップと、
コンピュータが、前記描画キャンバス上に表示された少なくとも一つのストロークを通過するジェスチャが入力されたときに、前記描画キャンバス上に表示されている複数のストロークを組み合わせて一つのエレメントを作成し、作成されたエレメントを前記エレメント表示エリアに登録するステップと、
コンピュータが、前記エレメント表示エリアに登録されているエレメントの一つが選択された状態でジェスチャが入力されたときに、選択されたエレメントを合成してテクスチャを作成するステップと、
を含むテクスチャ描画支援方法として捉えることもできる。
【００１７】
また、本発明は、上記したテクスチャ描画支援方法の各ステップをコンピュータに実行させるプログラム、又はそのプログラムが記録された記録媒体として捉えることもできる。
【発明の効果】
【００１８】
本発明によれば、ユーザの手書き入力による風合いを損なうことなく、簡略な操作によってテクスチャを描画することができる。
【図面の簡単な説明】
【００１９】
【図１】本発明に係わるテクスチャ描画支援装置のハードウェア構成及び機能構成を模式的に示す図である。
【図２】ディスプレイの表示画面上における描画インタフェースの構成例を示す図である。
【図３】メインツールバーの構成例を示す図である。
【図４】ブラシモードにおけるテクスチャ作成手順を示す図である。
【図５】塗りつぶしモードにおけるテクスチャ作成手順を示す図である。
【図６】ハッチングモードにおけるテクスチャ作成手順を示す図である。
【図７】登録済みのエレメントを使用してテクスチャを作成する例を示す図である。
【図８】塗りつぶしモードにおけるエレメントの合成方法を示す図である。
【図９】塗りつぶしモードにおいて指定領域のサンプルを最適化する例を示す図である。
【図１０】ハッチングモードにおけるエレメントの合成方法を示す図である。
【図１１】ジェスチャ編集モードにおけるテクスチャの編集手順を示す図である。
【図１２】フロー・フィールドモードにおけるテクスチャの編集手順を示す図である。
【図１３】遠近化モードにおけるテクスチャの編集手順を示す図である。
【発明を実施するための形態】
【００２０】
以下に図面を参照して、この発明の好適な実施の形態を例示的に詳しく説明する。
【００２１】
＜テクスチャ描画支援装置の概要＞
図１は、本発明の実施形態に係るテクスチャ描画支援装置の概略構成及び機能構成を模式的に示す図である。テクスチャ描画支援装置は、ＣＰＵ、メモリ、補助記憶装置等のハードウェア資源を備えるコンピュータ１と、入力指示のためのメニュー、ツールバー、ツールボタン等の表示及び文字や図形等の出力結果を表示するためのディスプレイ２と、ポインティングデバイスとしてのマウス３と、を備えている。コンピュータ１は、汎用のパーソナルコンピュータ、タブレット端末、スマートフォン等にプログラムをインストールすることにより実現することもできるし、専用の装置として構成することも可能である。また、ポインティングデバイスとしては、マウスの代わりにタッチパッドやタブレットペンを用いることもできる。なお、コンピュータ１として、タッチパネルやタッチスクリーンを備えたスマートフォン等が用いられる場合は、マウス３の代わりにユーザが指で入力操作を行うことも可能である。
【００２２】
＜コンピュータ１＞
コンピュータ１は、図１に示すような機能構成を有している。すなわち、コンピュータ１は、インタフェース部１０、画像出力部１１、エレメント作成部１２、合成部１３、及び調整部１４を備えている。これらの機能構成は、ＣＰＵがメモリに記憶されたプログラムを実行することにより実現される。以下、各構成要素について説明する。
【００２３】
（インタフェース部１０）
インタフェース部１０は、例えば、ディスプレイ２の表示画面上にＧＵＩ（Graphical User Interface）を表示させる。詳細には、インタフェース部１０は、図２に示すように、描画キャンバス２０、メインツールバー２１、ファイル・エディットツールバー２２、パッチプレート２３、パッチツールバー２４、バックグラウンドパレット２５、選択パッチ２６から構成されるＧＵＩを表示させる。
【００２４】
描画キャンバス２０は、ユーザがマウス３を利用して描画するための作業領域である。メインツールバー２１は、各種のツールを選択するためのボタンを表示する領域である。ファイル・エディットツールバー２２は、描画キャンバス２０上で作成されたテクスチャを含む画像ファイルの保存、メモリに記録されている画像ファイルの読み出し、及びユーザ操作の取り消し等を行うためのコマンドボタンを表示する領域である。パッチプレート２３は、ユーザの手書き入力によって作成されたテクスチャの一部（エレメント）を表示する領域であり、本発明に係わるエレメント表示エリアに相当する。パッチツールバー２４は、前記パッチプレート２３に表示されたエレメントの削除等を行うためのコマンドボタンを表示する領域である。バックグラウンドパレット２５は、描画キャンバス２０の背景画像のテンプレートを表示する領域である。選択パッチ２６は、前記パッチプレート２３に表示されているエレメントのうち、ユーザによって選択されているエレメントを表示する領域である。
【００２５】
メインツールバー２１は、図３に示すように、ペンツール・ボタン２１０、ブラシツール・ボタン２１１、塗りつぶしツール・ボタン２１２、マスクツール・ボタン２１３、選
択ツール・ボタン２１４、ジェスチャ編集ボタン２１５、エグザンプル・ストローク・ボタン２１６、ハッチングツール・ボタン２１７、フロー・フィールド・ボタン２１８、ズーム・ボタン２１９、視点傾斜ボタン２２０、ペンシル・ボタン２２１、密度調整スライダ２２２、太さ調整スライダ２２３等を含む。
【００２６】
ペンツール・ボタン２１０は、描画キャンバス２０上に図形や文字等の描画オブジェクトを描画するためのペンモードを選択するためのボタンである。ブラシツール・ボタン２１１は、ユーザによって作成されたエレメントを使用して描画するためのブラシモードを選択するためのボタンである。塗りつぶしツール・ボタン２１２は、ユーザによって作成されたエレメントを使用して塗りつぶしを行う塗りつぶしモードを選択するためのボタンである。マスクツール・ボタン２１３は、マウス３を利用して描画キャンバス２０上の領域を任意に指定するマスクモードを選択するためのボタンである。選択ツール・ボタン２１４は、描画キャンバス２０上に描画されたテクスチャのうち、編集の対象となるテクスチャを特定する選択モードを選択するためのボタンである。ジェスチャ編集ボタン２１５は、マウス３によって入力されるジェスチャの経路を編集するジェスチャ編集モードを選択するためのボタンである。エグザンプル・ストローク・ボタン２１６は、描画キャンバス２０上でテクスチャの一部となるエレメントを作成するエレメント作成モードを選択するためのボタンである。ハッチングツール・ボタン２１７は、ユーザによって作成されたエレメントを使用してハッチングを施すハッチングモードを選択するためのボタンである。フロー・フィールド・ボタン２１８は、テクスチャにおけるエレメントの配向を編集するフロー・フィールドモードを選択するためのボタンである。ズーム・ボタン２１９は、描画オブジェクトを拡大するためのズームモードを選択するためのボタンである。視点傾斜ボタン２２０は、テクスチャに対する視点の傾きを変更する遠近化モードを選択するためのボタンである。ペンシル・ボタン２２１は、描画キャンバス２０上に描画オブジェクトのアウトラインを下書きするためのペンシルモードを選択するためのボタンである。密度調整スライダ２２２は、描画キャンバス２０上で作成されたテクスチャにおけるエレメントの密度（テクスチャにおいて隣接するエレメントの間隔）を調整するスライダである。太さ調整スライダ２２３は、テクスチャにおけるエレメントを構成する線（ストローク）の太さを調整するスライダである。
【００２７】
（画像出力部１１）
画像出力部１１は、前記ペンモードや前記ペンシルモードにおいてユーザが描画した描画オブジェクトを前記描画キャンバス２０上に画像出力させる。また、画像出力部１１は、前記エレメント作成モードにおいてユーザが手書き入力したストロークを前記描画キャンバス２０上に画像出力させる。
【００２８】
（エレメント作成部１２）
エレメント作成部１２は、前記エレメント作成モードにおいて描画キャンバス２０上に入力された複数のストロークを結合してエレメントを作成し、作成されたエレメントを前記パッチプレート２３に登録（インタフェース部１０により前記パッチプレート２３に表示させる）する。
【００２９】
ここで、エレメントが作成される流れを図４乃至図６を参照しつつ説明する。先ず、ユーザは、前記エグザンプル・ストローク・ボタン２１６上でマウス３をクリック操作してエレメント作成モードを選択する。続いて、ユーザは、描画キャンバス２０上でマウス３をドラッグ操作して複数のストロークを入力することにより、テクスチャの一部を描画する。エレメント作成モードにおいて入力されたストロークは、画像出力部１１によって描画キャンバス２０上に画像出力される（図４（ａ）、図５（ａ）、図６（ａ）を参照）。
【００３０】
ユーザは、テクスチャの一部を描画した後にブラシツール・ボタン２１１、塗りつぶし
ツール・ボタン２１２、又はハッチングツール・ボタン２１７上でマウス３をクリック操作して、ブラシモード、塗りつぶしモード、又はハッチングモードを選択する。続いて、ユーザは、図４（ｂ）、図５（ｂ）、図６（ｂ）の一点鎖線矢印で示すように、描画キャンバス２０上に表示されている複数のストロークの少なくとも一つを通過するジェスチャを入力する。なお、ジェスチャの入力方法は、ストロークの入力と同様に、マウス３をドラッグ操作する方法を用いることができる。このような手順によってジェスチャが入力されたときに、エレメント作成部は、先のエレメント作成モードで入力された全てのストロークを組み合わせて一つのエレメントを作成する。このようにして作成されたエレメントは、図４（ｃ）、図５（ｃ）、図６（ｃ）に示すように、パッチプレート２３に登録及び表示される。
【００３１】
なお、パッチプレート２３に登録されるエレメントの配向は、ジェスチャがストロークを通過する際の方向に従って決定される。そのため、ユーザは、エレメントの配向を直感的に変えることができる。
【００３２】
（合成部１３）
合成部１３は、ブラシモード、塗りつぶしモード、又はハッチングモードにおいてユーザが入力するジェスチャに従ってエレメントを合成することにより、テクスチャを自動的に作成する。以下、上記の各モードにおけるエレメントの合成手順について説明する。
【００３３】
・ブラシモード
ブラシモードでは、合成部１３は、図４（ｂ）及び図４（ｃ）に示すように、前述のエレメント作成モードで入力されたストロークを通過するジェスチャが入力されたときに、ジェスチャによって指定された経路に沿ってエレメントを一次結合する。その際、各エレメントの向き（配向）は、各エレメントが配置される位置におけるジェスチャ経路の接線方向に基づいて決定される。すなわち、各エレメントの向きは、ジェスチャ経路の接線方向と平行にされる。また、隣接するエレメントの間の距離は、パッチプレート２３に登録されたエレメントの大きさから計算される。
【００３４】
なお、パッチプレート２３に登録済みのエレメントを使用してテクスチャを作成する場合は、ユーザは、図７（ａ）に示すように、パッチプレート２３に登録されているエレメントの一つを選択（クリック操作）した後、描画キャンバス２０上でジェスチャを入力すればよい。これに対し、合成部１３は、パッチプレート２３に登録されているエレメントの一つが選択された状態でジェスチャが入力されたときに（図７（ａ））、選択されたエレメント（図７（ａ）中の実線で囲まれたエレメント）をジェスチャ経路に沿って一次結合する（図７（ｂ））。
【００３５】
・塗りつぶしモード
塗りつぶしモードでは、合成部１３は、図５（ｂ）及び図５（ｃ）に示すように、前述のエレメント作成モードで入力されたストロークを通過するジェスチャが入力されたときに、エレメントを合成することにより、予め指定された領域と同形状のテクスチャを作成する。なお、ユーザは、ジェスチャを入力する前に、塗りつぶし領域を指定する必要がある。塗りつぶし領域を指定する場合は、ユーザは、先ず前記マスクツール・ボタン２１３をクリック操作してマスクモードを選択し、次いで描画キャンバス２０上でマウス３をドラッグ操作することにより塗りつぶし領域を指定すればよい。ユーザは、塗りつぶし領域を指定した後にエレメント作成モードを選択し、先の指定領域内にテクスチャの一部を描画する。そして、ユーザは、塗りつぶしモードを選択し、先の指定領域内に表示されているテクスチャの一部を通過するジェスチャを入力すればよい。
【００３６】
また、パッチプレート２３に登録済みのエレメントを使用してテクスチャを作成する場
合は、パッチプレート２３に登録されているエレメントの一つを選択した後、描画キャンバス２０上の指定領域内にジェスチャを入力すればよい。これに対し、合成部１３は、パッチプレート２３に登録されているエレメントの一つが選択された状態でジェスチャが入力されたときに、ジェスチャで指定された領域内において選択されたエレメントを合成してテクスチャを作成する。
【００３７】
ここで、塗りつぶしモードにおけるエレメントの合成手順について図８、図９を参照しながら説明する。塗りつぶしモードでは、合成部１３は、選択中のエレメントを指定領域にタイリングする処理を実行した後に、選択中のエレメントから近接類似性の最も高い最適サンプルを探索する処理と、指定領域に配置されたサンプルの位置を前記最適サンプルと同等の近接類似性になる位置へ移動させる処理と、を繰り返す反復最適化を行う。
【００３８】
詳細には、合成部１３は、先ず、選択中のエレメント（図８（ａ））を指定領域にタイリングする（図８（ｂ））。次に、合成部１３は、ＥＭアルゴリズムに基づいてエレメントの合成を行う。例えば、合成部１３は、選択中のエレメントから類似性メトリックに基づく近接類似性が最も高い最適サンプル（図９（ａ）中の破線で囲んだ図形）を探索する処理（Search Step）と、指定領域のサンプル（図９（ｂ））中の破線で囲んだ図形の位
置を最適サンプルの近接類似性と同等又は近似する位置へ移動（図９（ｃ）、図９（ｄ））させる処理（Assignment Step）を実行する。これらSearch StepとAssignment Stepは
、指定領域の各サンプルについて繰り返し実行されてもよく、若しくは指定領域にタイリングされたエレメントの境界部分に配置されたサンプルについてのみ実行されてもよい。なお、前記したSearch StepとAssignment Stepは、繰り返し実行される。上記したような合成処理が行われると、図８（ｃ）、図８（ｄ）に示すように、エレメントに近似したテクスチャを作成することができる。
【００３９】
なお、塗りつぶし領域におけるエレメントの配向は、パッチプレート２３に登録されたエレメントの配向に準ずる。
【００４０】
・ハッチングモード
ハッチングモードでは、合成部１３は、図６（ｂ）及び図６（ｃ）に示すように、前述のエレメント作成モードで入力されたストロークを通過するジェスチャが入力されたときに、エレメントを合成することにより、予め指定された領域と同形状のテクスチャを作成する。なお、ユーザは、ジェスチャを入力する前に、ハッチング領域を指定する必要がある。ハッチング領域を指定する手順は、前述した塗りつぶし領域を指定する手順と同様である。
【００４１】
また、パッチプレート２３に登録済みのエレメントを使用してテクスチャを作成する場合は、パッチプレート２３に登録されているエレメントの一つを選択した後、描画キャンバス２０上の指定領域内にジェスチャを入力すればよい。これに対し、合成部１３は、パッチプレート２３に登録されているエレメントの一つが選択された状態でジェスチャが入力されたときに、ジェスチャで指定された領域内において選択されたエレメントを合成してテクスチャを作成する。
【００４２】
ここで、ハッチングモードにおけるエレメントの合成手順について図１０を参照しながら説明する。ハッチングモードでは、合成部１３は、指定領域内でジェスチャが入力されたときに（図１０（ａ））、先ず、ジェスチャの経路に沿ってエレメントを一次元結合する（図１０（ｂ））。その場合の各エレメントの配向は、前述したブラシモードと同様に、ジェスチャ経路の接線方向と平行にされる。続いて、合成部１３は、一次元結合されたエレメント群と指定領域の境界との余白領域に、前記エレメント群の各エレメントと平行なエレメントを配置する。すなわち、合成部１３は、前記エレメント群の各エレメントの
両側又は片側に複製を配置する。そして、合成部１３は、ジェスチャ経路と直交する方向において隣接するエレメント間をスティッチングすることによりシームレスなハッチング（テクスチャ）を作成する。
【００４３】
なお、エレメントはストロークの集合であり、個々のストロークは二次元の点の集まりである。よって、エレメントは、二次元の点に置き換えることができる。そこで、合成部１３は、上記した各モードでエレメントを合成する場合に、各エレメントの重心（以下、「標本点」と記す）の座標のみを計算し、各エレメントの標本点の座標が算出された後に各標本点をエレメントに置き換えるようにしてもよい。このような方法によりエレメントの合成が行われると、コンピュータ１の演算負荷を低く抑えることができるため、エレメントの合成処理に要する時間を短く抑えることができる。つまり、ユーザがジェスチャを入力してからテクスチャが表示画面上に出力されるまでのレスポンスを高めることができる。
【００４４】
（調整部１４）
調整部１４は、前述した合成部１３によって作成されたテクスチャを編集する。例えば、ユーザが選択ツール・ボタン２１４をクリック操作することにより選択モードを選択し、次いで描画キャンバス２０上に表示されているテクスチャを選択し、さらにジェスチャ編集ボタン２１５、フロー・フィールド・ボタン２１８、又は視点傾斜ボタン２２０をクリック操作してジェスチャ編集モード、フロー・フィールドモード、又は遠近化モードが選択された場合に、調整部１４は、ユーザが入力するジェスチャに従ってテクスチャを編集する。また、描画キャンバス２０上に表示されているテクスチャが選択された状態で密度調整スライダ２２２又は太さ調整スライダ２２３がドラッグ操作されると、テクスチャにおけるエレメントの密度（隣接するエレメントの間隔）やエレメントを構成するストロークの太さを変更する。
【００４５】
ここで、ジェスチャ編集モード、フロー・フィールドモード、及び遠近化モードにおいてテクスチャの編集手順について説明する。
【００４６】
・ジェスチャ編集モード
ジェスチャ編集モードでは、調整部１４は、図１１に示すように、テクスチャを作成する際にユーザが入力したジェスチャ経路を修正し、修正後のジェスチャ経路に従ってエレメントの再配置を行う。
【００４７】
詳細には、描画キャンバス２０上にテクスチャが表示された状態（図１１（ａ））で、選択ツール・ボタン２１４がクリック操作され、続いてテクスチャの表示領域がクリック操作されると、調整部１４は、図１１（ｂ）に示すように、描画キャンバス２０上にジェスチャ経路を再表示させる。また、ジェスチャ経路が再表示されている状態でジェスチャ編集ボタン２１５がクリック操作され、次いでジェスチャ経路の任意の位置がドラッグ操作されると、調整部１４は、ユーザのドラッグ操作に従ってジェスチャ経路の曲がり具合を変更する（図１１（ｃ））。そして、調整部１４は、変更後のジェスチャ経路に沿ってエレメントの配向及び位置を変更する（図１１（ｄ））。このようなアルゴリズムを採用することにより、ユーザが直感的にテクスチャの曲がり度合いを変更可能になる。
【００４８】
・フロー・フィールドモード
フロー・フィールドモードでは、調整部１４は、図１２に示すように、塗りつぶしモード又はハッチングモードで作成されたテクスチャの表示領域上にジェスチャが入力されると、ジェスチャによって指定される経路に沿ってエレメントの配向を修正する。
【００４９】
詳細には、塗りつぶしモード又はハッチングモードで作成されたテクスチャが描画キャ
ンバス２０上に表示された状態（図１２（ａ））で、選択ツール・ボタン２１４のクリック操作及びテクスチャ表示領域のクリック操作が入力された後にフロー・フィールド・ボタンがクリック操作され、次いでテクスチャ表示領域を通過するジェスチャが入力されると（図１２（ｂ））、調整部１４は、ジェスチャによって指定される経路の方向や曲がり具合に沿ってエレメントの配向を変更する。具体的には、調整部１４は、ジェスチャ経路に沿ったベクトル場（図１２（ｃ））を作成し、作成されたベクトル場に従ってエレメントを構成するストロークをレンダリングする（図１２（ｄ））。このようなアルゴリズムを採用することにより、ユーザが直感的にエレメントの配向を変更可能になる。
【００５０】
・遠近化モード
遠近化モードでは、調整部１４は、図１３に示すように、塗りつぶしモード又はハッチングモードで作成されたテクスチャの表示領域上を通過するジェスチャが入力されると、ジェスチャによって指定される方向へテクスチャを傾けることにより、テクスチャに遠近効果を付与する。
【００５１】
詳細には、塗りつぶしモード又はハッチングモードで作成されたテクスチャが描画キャンバス２０上に表示された状態で、選択ツール・ボタン２１４のクリック操作及びテクスチャ表示領域のクリック操作が入力された後に視点傾斜ボタン２２０のクリック操作が入力され、次いでテクスチャ表示領域を通過するジェスチャが入力されると（図１３（ａ））、調整部１４は、ジェスチャによって指定された方向へテクスチャを傾斜させる（図１３（ｂ））。図１３に示す例では、図中右側から左側へ向かってジェスチャが入力されているため、テクスチャの左端が図中の奥行き方向へ傾斜するとともに、テクスチャの右端が図中の手前方向へ傾斜するように、エレメントの密度及び位置が調整される。つまり、調整部１４は、テクスチャの左側に配置されるエレメントの密度を高める（エレメント間の間隔を狭くする）とともに、テクスチャの右側に配置されるエレメントの密度を低める（エレメント間の間隔を広くする）。このようなアルゴリズムを採用することにより、ユーザの直感的な操作によってテクスチャに遠近効果を与えることができる。
【００５２】
以上述べたテクスチャ描画支援装置によれば、ユーザが手書き入力したエレメントを使用してテクスチャが作成されるため、ユーザの手書き入力による風合いを損なわずにテクスチャを作成することができる。また、ユーザが直感的に行うことができるジェスチャに従ってエレメントの合成、すなわちテクスチャの作成が行われるため、ユーザが複雑なパラメータ操作を行う必要がなくなるとともに、煩雑な操作を習得する必要もない。
【符号の説明】
【００５３】
１     コンピュータ
２     ディスプレイ
３     マウス
２０   描画キャンバス
２１   メインツールバー
２３   パッチプレート
２１１ ブラシツール・ボタン
２１２ 塗りつぶしツール・ボタン
２１３ マスクツール・ボタン
２１４ 選択ツール・ボタン
２１５ ジェスチャ編集ボタン
２１６ エグザンプル・ストローク・ボタン
２１７ ハッチングツール・ボタン
２１８ フロー・フィールド・ボタン
２２０ 視点傾斜ボタン
【図１】
2015215636.tif 000003
【図２】
2015215636.tif 000004
【図３】
2015215636.tif 000005
【図４】
2015215636.tif 000006
【図５】
2015215636.tif 000007
【図６】
2015215636.tif 000008
【図７】
2015215636.tif 000009
【図８】
2015215636.tif 000010
【図９】
2015215636.tif 000011
【図１０】
2015215636.tif 000012
【図１１】
2015215636.tif 000013
【図１２】
2015215636.tif 000014
【図１３】
2015215636.tif 000015