(57)【要約】  それぞれが位置と向きとを有する、３Ｄシーン内の複数の２Ｄ平面またはペイントキャンバスを、ユーザが作成することを可能にする、３Ｄモデリングワークフローシステムが開示される。これらの２Ｄ平面は、３Ｄシーン内に任意に位置決めされてもよく、そして、ペイントとモデル構築ジオメトリとの組み合わせを含んでもよい。構築ジオメトリは、複数の２Ｄ平面にわたってもよい。ユーザは、ペイントを使用して平面上にスケッチすること、そして、スケッチを基準として使用して、平面内および平面間にカーブジオメトリを作成することが可能である。２Ｄ平面は集合的に、３Ｄオブジェクトが、異なるタイプの入力を使用して表されることを可能にし、その場合、オブジェクトの部分はペイントによってドローされ、そして、その他の、または同じ部分は、ジオメトリから構成される。ユーザは、２Ｄ平面上のペインティングと、モデルジオメトリの作成を、必要に応じて切り換えてもよい。
2009512012.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータを使用してユーザが３Ｄ空間内でペイントできるようにするステップと、
前記ペイントに関連付けられた前記３Ｄ空間内の３Ｄモデルジオメトリを前記ユーザが指定できるようにするステップと
を含む、方法。
【請求項２】
前記ユーザがペイントできるようにするステップと、前記ユーザが前記３Ｄジオメトリを指定できるようにするステップとを、前記ユーザが切り換え可能である、請求項１に記載の方法。
【請求項３】
前記ユーザは、ペイント操作またはジオメトリ操作を指定する、請求項２に記載の方法。
【請求項４】
前記ペイントが適用される、前記３Ｄ空間内のキャンバス平面を、前記ユーザが指定できるようにするステップをさらに含む、請求項１に記載の方法。
【請求項５】
前記ペイントが上に適用される、前記３Ｄ空間内の別のキャンバス平面を、前記ユーザが指定できるようにするステップをさらに含む、請求項４に記載の方法。
【請求項６】
前記ユーザは、前記平面を複製することによって別の平面を指定する、請求項５に記載の方法。
【請求項７】
前記３Ｄ空間内の前記キャンバス平面を、前記ユーザが方向付けおよび位置決めできるようにするステップをさらに含む、請求項３に記載の方法。
【請求項８】
前記平面は交差する、請求項７に記載の方法。
【請求項９】
前記３Ｄジオメトリは、平面内で指定されることが可能である、請求項４に記載の方法。
【請求項１０】
前記３Ｄジオメトリは、平面間で指定されることが可能である、請求項５に記載の方法。
【請求項１１】
前記ジオメトリはモデルサーフェスを指定する、請求項９に記載の方法。
【請求項１２】
ドローイング平面のビューを調節するために、前記ユーザがシーンのビューを調節できるようにするステップをさらに含む、請求項１に記載の方法。
【請求項１３】
前記ユーザが前記平面上にジオメトリカーブをストロークできるようにするステップをさらに含む、請求項４に記載の方法。
【請求項１４】
ジオメトリ作成のためのターゲット平面を、前記ユーザが選択できるようにするステップをさらに含む、請求項４に記載の方法。
【請求項１５】
平面の境界を選択することにより、前記ターゲット平面が選択される、請求項１４に記載の方法。
【請求項１６】
前記ユーザが前記ターゲット平面上にカーブコントロールポイントを指定できるようにするステップをさらに含む、請求項１４に記載の方法。
【請求項１７】
前記ユーザが前記ターゲット平面上で前記カーブコントロールポイントを移動させることができるようにするステップをさらに含む、請求項１６に記載の方法。
【請求項１８】
前記ユーザが同じまたは異なるターゲット平面上に別のカーブコントロールポイントを指定できるようにするステップをさらに含む、請求項１６に記載の方法。
【請求項１９】
ペインティングのための平面を、前記ユーザが選択できるようにするステップをさらに含む、請求項４に記載の方法。
【請求項２０】
前記ペインティングは、平面サーフェス、３Ｄサーフェス、非平面サーフェス、３Ｄボリュームのサーフェスの中から選択されたサーフェス上で行われる、請求項１に記載の方法。
【請求項２１】
コンピュータを使用してユーザが３Ｄモデル空間内に第１の平面ドローイングキャンバスを作成できるようにするステップと、
ユーザが任意に、
前記３Ｄ空間内に第２の平面キャンバスを作成することと、
前記３Ｄ空間内の前記第１のキャンバス上にペイントすることと、
前記ペイントに関連付けられた、前記３Ｄ空間内の前記第１のキャンバス上の３Ｄモデルジオメトリを指定することと、
前記３Ｄ空間内の前記第２のキャンバス上にペイントすることと、
前記ペイントに関連付けられた、前記３Ｄ空間内の前記第１のキャンバスと第２のキャンバスとの間の３Ｄモデルジオメトリを指定することと、
前記キャンバスのうちの１つを方向付けることと、を行うことができるようにするステップと
を含む、方法。
【請求項２２】
入力／出力インタフェースを有し、かつユーザがコンピュータを使用して３Ｄ空間内でペイントすることと、前記ペイントに関連付けられた前記３Ｄ空間内の３Ｄモデルジオメトリを前記ユーザが指定することとを可能にするコンピュータシステムを具備する、システム。
【請求項２３】
ユーザがコンピュータを使用して３Ｄ空間内でペイントすることと、前記ペイントに関連付けられた前記３Ｄ空間内の３Ｄモデルジオメトリを前記ユーザが指定することとを可能にするプロセスで、前記コンピュータを制御するための、コンピュータ読み取り可能な記憶装置。
【請求項２４】
１つ以上のキャンバス平面を含む３Ｄモデル空間を具備するディスプレイであって、前記キャンバス平面上にユーザはペイントしてモデルジオメトリを作成することが可能であり、そして、前記キャンバス平面間に前記ユーザは前記モデルジオメトリを作成することが可能である、ディスプレイ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、３Ｄモデル作成のためのワークフローシステムに関する。
【背景技術】
【０００２】
今日のモデリング環境では、３Ｄモデリングシステムのための迅速な３Ｄ形状生成および設計が必要とされている。従来の３Ｄモデリングツールは、形状を生成するために、かなり高い精度と、綿密さと、注意とを必要とする。逆に、ペイントブラシまたは鉛筆を使用したスケッチングは、非常に流動的な概略の形状吟味を可能にする。ただし、２Ｄスケッチが受け入れられた後で、それを３Ｄモデルに変換することは困難である。
【０００３】
今日までの解決方法は、２Ｄイメージ平面が、イメージ平面の前に３Ｄモデルを構築するための背景参照として働く、単純化されたアプローチを含む。このアプローチでは、いくつかの参照が使用されることが可能ではあるが、迅速な形状吟味は可能ではない。さらに、しばしば、１つまたは２つの参照イメージ平面が使用される。あるいは、最先端の３Ｄモデリングアプリケーションは、シーン内での３Ｄジオメトリの配置または位置合わせにおいて、１つ以上の構築平面がユーザを補助することを可能にする。これらの構築平面の背後にある動機は、３Ｄジオメトリ構築をより効率的にすることであり、インキング（すなわち、スケッチング）と３Ｄジオメトリとを１つの平面内で組み合わせるという概念は有していない。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
必要とされているのは、２Ｄペインティングのスケッチ的かつ迅速な性質を、３Ｄモデリングの精度および配置と組み合わせるシステムである。そのような必要とされているシステムは、迅速な概念スケッチングと、正確な３Ｄモデリングとの間の隔たりを埋める。そのような必要とされているハイブリッドシステムは、両方のアプローチの長所を活用する。迅速なスケッチングの利点と、概念をより容易に正確な３Ｄモデリングに変換する能力とを組み合わせた、このタイプのハイブリッドワークフローは、ユーザが「１つのツール内にとどまって」、「観念化」を経てより堅牢な３Ｄ設計に進むことを可能にする。
【課題を解決するための手段】
【０００５】
本発明の一側面は、３Ｄモデルを開発するために、２Ｄスケッチングと３Ｄジオメトリ作成とが協調して実行されることを可能にするシステムを提供することである。
【０００６】
本発明の別の側面は、インクおよび紙の上のドローイングとの類似性の使用による形状吟味を振張し、同時に、ドローイングとともに動作するジオメトリ構築機能を提供することである。
【０００７】
上記の側面は、それぞれが位置と向きとを有する、３Ｄシーン内の複数の２Ｄ平面を、ユーザが作成することを可能にする、開示される３Ｄモデリングワークフローシステムによって達成されることが可能である。これらの２Ｄ平面は、ペイントとモデル構築ジオメトリとの組み合わせを含むこともできる。構築ジオメトリは、複数の２Ｄ平面にわたることができる。２Ｄ平面は集合的に、３Ｄオブジェクトの３Ｄスケッチを可能にし、その場合、オブジェクトの部分はペイントによってドローされ、その他の部分はジオメトリから構成される。ユーザは、開発中に、２Ｄ平面上のペインティングと、モデルジオメトリの作成との間を、必要に応じて交換（行き来）することができる。
【０００８】
これらは、後で明らかになるその他の態様および利点と一緒に、以下でより詳細に説明され特許請求される、構築および操作の詳細内に存在し、以下では、本明細書の一部を構成する添付の図面への参照が行われており、図面全体にわたって、同様の数字は同様の部分を示す。
【発明を実施するための最良の形態】
【０００９】
本発明は、ユーザが、自動車の設計などの、オブジェクトのアウトラインを、マウス、タッチスクリーンスタイラス、タブレットなどの、従来の入力ツールを使用してモデル空間内でスケッチし、次にそのスケッチを基準として使用して、オブジェクトについてのモデルジオメトリをモデル空間内に作成することを可能にする、ワークフローシステムである。ユーザは、ペイント操作の間にスケッチし、そして、ジオメトリ操作に切り替えて、モデルジオメトリを作成する。ユーザは、ドローイング（ｄｒａｗｉｎｇ）のための鉛筆ツール、およびジオメトリカーブストロークを作成するためのＣＶまたはエディットポイントカーブツールなどの、適切なツールを選択することによって、ドローイング操作とジオメトリ操作とを交互に切り替えることが可能であり、それにより、ユーザは、何本かのラインをスケッチし、ラインについてのジオメトリを作成し、次に、さらに何本かのラインをスケッチすることなどが可能になる。ペイント操作のスケッチングまたはドローイングの間、ユーザは、エイリアス・システムズ・コーポレーション（Ａｌｉａｓ  Ｓｙｓｔｅｍｓ  Ｃｏｒｐ．）から入手可能なスタジオツールズ（ＳｔｕｄｉｏＴｏｏｌｓ）（登録商標）などの、従来のドローイングシステムで利用可能な、一般的なドローイングツールおよび機能を使用する。スケッチングは、３次元（３Ｄ）モデル空間内に任意に位置決めまたは再位置決めされてもよい、平面または２次元（２Ｄ）キャンバス上で実行される。ジオメトリ操作内でモデルジオメトリを作成する間は、スケッチを基準として使用し、また、スタジオツールズ（ＳｔｕｄｉｏＴｏｏｌｓ）（登録商標）などのシステム内に見出される、ジオメトリ作成のための従来のツールおよび機能を使用して、ジオメトリポイントまたはカーブを３Ｄモデル空間内に位置決めする。
【００１０】
本発明のユーザは、ペインティングまたはスケッチ操作から開始することができ（ただしキャンバスはその他の操作の間に作成されてもよい）、そして、図１の３Ｄモデル空間内の無限平面１０４上に、スケッチ平面またはキャンバス１０２を作成する。この平面１０２は、ユーザの必要に応じた任意の次元を有してもよい。この平面は、平面１０２を指定し、それを所望の位置および向きにドラッグするユーザによって、任意に位置決めされえる。平面１０２は、斜視図で示されており、モデル空間の原点に一致しているが、モデル空間内の任意の位置において作成されてもよい。
【００１１】
ユーザは、次に、ペイントツールを選択して、ペインティング／ドローイングストロークを作成することによって、平面１０２上にドローすることができ、図２は、平面１０２上に作成された４つのペイントストローク２０２〜２０８を有する平面１０２を示している。図からわかるように、平面またはキャンバス１０２は、ユーザが上にドローすることが可能な、一枚の紙と同じように扱われる。このキャンバス１０２は、ユーザの視点に垂直であるように位置決めされることも可能で、それにより、表示画面上に配置された一枚の紙のように見え、紙へのスケッチングとの類似性が高められる。
【００１２】
ユーザは、ドローイングモード内にある間、別の平面を、その上にスケッチするために作成してもよい。この平面は図１におけるように空であってもよく、または、ユーザは、図３に示すようなコピー３０２を作成してもよい。平面の複製３０２は、コピーされている平面１０２のペイントストローク２０２〜２０８の複製３０４〜３１０も含む。図３では、ユーザは、複製平面３０２を、元の平面１０２の上方に、そして、元の平面１０２に対してある角度をなすように、位置決めまたは移動している。
【００１３】
ユーザは、スケッチをモデルジオメトリ作成のための基準として使用する準備ができたら、例えば、ｃｖカーブ、エディットポイントカーブ、ブレンドカーブ、またはスケッチカーブなどの、ジオメトリカーブのドローイングのためのツールの従来の起動によって、システムをジオメトリ操作に切り替える。この操作の中で、ユーザは、モデルカーブのパラメータを指定してもよい。図４は、平面３０２および１０２の、交点４０４および４０６に、カーブをスナップすることによってユーザが作成した、ジオメトリカーブ４０２を示す。この特定の操作によって、２つの平面１０２と３０２とを接続するジオメトリが作成された。
【００１４】
ユーザは、さらに、図５に示すような、平面ペイントストロークに一致する、または平面ペイントストロークのすぐ上のジオメトリを作成してもよく、図５では、ユーザは、平面キャンバス３０２内のペイントストローク３０８の部分に沿った、モデルジオメトリカーブ５０２を指定している。
【００１５】
図６は、ジオメトリモードにある間の、ユーザによる、カーブ６０２および６０４の作成を示し、ここで、カーブ６０２は、平面１０２と３０２との間を接続し、カーブ６０４は平面１０２内にある。カーブ４０２、５０２、６０２、および６０４の組は、カーブのネットワークを形成する。
【００１６】
ジオメトリモードにある間、ユーザは、カーブ４０２、５０２、６０２、および６０４などの、カーブのネットワークを使用して、図７に示すようなサーフェスジオメトリ７０２を作成してもよい。
【００１７】
前述したように、ユーザは、任意の時に、ペインティング操作とジオメトリ操作とを切り替えてもよい。図８は、ペイント操作に切り替えた後のユーザによって作成された平面８０２を示し、ユーザは、ペイントストローク８０４、８０６、および８０８をキャンバス（平面）上に作成している。この平面８０２は、以前に作成された平面１０２および３０２の両方と交差するように、ユーザによって、これらの平面１０２および３０２に対して方向付けられている。この例では、断面プロファイル内でモデルがどのように見えるべきかを示すために紙の上でユーザが行う場合があるのと同様に、ユーザは、センターラインプロファイルスケッチまたは断面スケッチを作成している。
【００１８】
他のスケッチの場合と同様に、ユーザは、ジオメトリ操作に切り替えて、平面８０２を基準として使用してジオメトリを作成してもよい。図９は、以前に作成されたペイントストローク８０６を実質的にトレースするブラシストロークを使用して、平面８０２上にジオメトリカーブ９０４を作成している、スタイラスタイプのツール９０２を示す。
【００１９】
ユーザは、モデルを構築するこのプロセスを、モデルジオメトリを作成するために使用されてもよいペイントストローク基準平面を作成することによって、一度に１つ以上の平面を構築して継続してもよい。図１０は、自動車のモデルをスケッチするために、このような方法でユーザによって作成されたペイントストロークを示しており、この図では、ストロークが作成された平面の表示は無効にされている。図１１は、平面の表示が有効にされた、その同じスケッチモデルを示す。図からわかるように、平面は、モデル化が行われている自動車の基礎を概念化する際にユーザがそれらの平面を方向付けているとおりに、方向付けられる。図１２は、モデル自動車の前部がユーザに面するように方向付けられた、同じモデルを示し、キャンバス平面間の関係を再び示している。そのような変更されたビューでは、平面、およびドローイング、ジオメトリ、その他が、真横向きになっている可能性があり、その場合、ドローされたラインは不可視になるかもしれない。
【００２０】
図１３は、ポイントを接続し、カーブを指定することによって、自動車の片側についてユーザによって作成されたジオメトリを示す。このカーブネットワークは、やはり前述したように、図１４に示すように、モデルサーフェスを自動的に作成するために使用されてもよい。
【００２１】
上述したワークフロー動作は、図１５〜図１８に関して後述する１組のプロセスによって行われる。前述したように、平面またはキャンバスの作成などの、いくつかの動作は、スタジオツールズ（ＳｔｕｄｉｏＴｏｏｌｓ）（登録商標）などの入手可能なシステムの、従来のツールを使用して実行される。そのような従来の動作については、説明しない。さらに、レンダリングされたペイントストロークの作成、またはカーブへのブラシストロークのスナッピングなどの、スタジオツールズ（ＳｔｕｄｉｏＴｏｏｌｓ）（登録商標）などのシステムによって自動的に実行される、後述するプロセス中に行われるその他の動作も、詳細には説明しない。後述するプロセスにおいて発生していることの視覚化に役立つように、関連する関係のさまざまな斜視図も、図中に示す。
【００２２】
図１５は、ユーザが３Ｄモデル空間内にペイントストロークを作成する際に発生するプロセス動作を示す。システムは、画面へのスタイラスの接触、ペイントストロークのポイントの入力を示すマウスボタン押下事象の起動などの、入力事象を検出した場合、その位置１５０４を入力し１５０２、そして、可視ポイント、矢印などの、何らかのタイプのカーソルの形態で、画面１５０６上にその位置を表示してもよい。システムは、次に、ポイント１５０４から、３Ｄシーン内へのユーザの視点を表すことができる仮想カメラ１５１２への、表示画面１５０６を本質的に表す近接平面１５１４を通した、レイ（ｒａｙ）１５１０を構築する１５０８。
【００２３】
この時点で、ターゲットキャンバスが、以下のように選択される。最初に、レイは、既存のキャンバスを表す、ワールド空間内の有限矩形と交差される。交差されたキャンバスのうち、目に最も近いものがドローイングのために選択される。交差が発生しない場合、レイは、最後に使用されたキャンバスを含む無限平面と交差される。この交差が発生した場合は、このキャンバスがドローイングのために選択される。この交差が発生しない場合は、視野方向に垂直な新しいキャンバスが画面全体に作成される。ピックレイ（ｐｉｃｋ  ｒａｙ）に沿って、眼点から最も近くで交差された平面を選択することや、ユーザに、平面のリストから明示的に選択させることなどの、その他のキャンバス選択技術が使用されてもよい。
【００２４】
システムは、次に、レイ１５１０をシーン内に投射して、シーン内のキャンバスまたはドローイング平面１５２０とレイとの交点１５１８を決定する１５１６。このポイントは、交差されたキャンバス平面上のポイントの２Ｄ位置に対応する、２Ｄ座標を有するポイントである。このポイントは、次に、ペイントストロークのためのポイントのリストに追加される１５２２。ユーザが、マウスを移動させること、およびペイント起動ボタンを押したままにすることなどによって、ペイントストローク１５２４を入力している間、ポイントがリストに追加され、そしてストロークのポイントが作成されるにつれてそれを表示するようにシステムが有効化されている場合は、シーン１５２６内に表示される。ブラシストロークの最後に、またはストロークの間に、システムは、ポイントに対応するカーブをシーン１５２８内に作成する。
【００２５】
図１６は、３Ｄモデル空間内の平面またはキャンバス上にジオメトリカーブを作成する、ブラシストロークを作成しているユーザに関連する動作を示す。上述したペインティング動作と同様に、システムは、ポイントを入力し１６０２、レイを構築し１６０４、前述のようにターゲットキャンバスを決定して、モデル空間内の交差ポイントを決定する１６０６。ただし、この交差ポイント１６０８は、モデルのワールド空間内での、平面との３Ｄ交差ポイントである。このポイントは、このブラシストロークカーブのためのポイントのリストに追加される１６１０。これらのポイントは、この表示機能が有効にされている場合、シーン１６１２内に現れてもよい。ユーザがストロークを終了したら、システムは、ポイント１６１６にスプラインカーブを適合させ１６１４、次に、構築中の３Ｄデータモデル内にその３Ｄカーブを挿入する１６１８。
【００２６】
ユーザが複数のキャンバス上にカーブを作成している場合、図１７に示すように、ユーザが、例えば適切なマウスボタンを押下することによって、カーブ操作を起動すると、システムは、新しいシステムカーブＣを初期化する１７０２。この新しいカーブは、最初は空であり、そのカーブのためのコントロールポイント、ｐ、が追加される１７０４。このコントロールポイントは、ユーザによって「意図された」平面に応じた、３Ｄ空間内の位置を割り当てられる。前と同様に、入力１７０６ポイントは、近接平面上にレイを構築１７０８するために使用される。システムは、次に、ターゲット平面が設定されているかどうかを、すなわち、上にポイントを配置する平面を、ユーザが選択または指定済みであるかどうかを判定する１７１０。平面が設定されていない場合、平面を設定する動作が実行される（図１８を参照）。平面が設定されている場合、ポイントは、近接平面から、レイとターゲット平面との交点に移動される１７１４。ループ１７０６、１７０８、１７１０、および１７１４における、ターゲット平面上でのコントロールポイントの移動は、ユーザがそのポイントを所望の位置に到らせて、マウスボタンが放されるまで継続される。ターゲット平面は、次に、設定解除され１７１６、そして、動作が変更されていないならば、別のコントロールポイントがジオメトリカーブに追加され１７０４、ターゲット平面が選択され、このポイントは、同様に、所望の位置に移動される。所望の平面についての、コントロールポイントの規定が完了したら、ポイントに対するジオメトリカーブがモデル内に配置される。
【００２７】
ターゲット平面の設定において（図１８を参照）、システムは、レイの交差ポイント（１５０４、１６０８）がキャンバス矩形の境界と交差するかどうかを判定する１８０２。これが発生した場合、ターゲット平面は、そのキャンバスが存在する無限平面として設定される１８０４。すなわち、ユーザは、コントロールポイントが設定されるべき所望の平面を、所望のキャンバスのエッジに触れることによって選択してもよい。ピックレイに沿って、眼点から最も近くで交差された平面を選択することや、ユーザに、平面のリストから明示的に選択させることなどの、エッジに触れること以外の方法が使用されてもよい。
【００２８】
ユーザが所望のキャンバスのエッジに触れない場合、システムは、システムのビューが、固定された直交するビュー（ｆｉｘｅｄ  ｏｒｔｈｏｇｏｎａｌ  ｖｉｅｗ）であるかどうかを判定する１８０６。ビューが固定されている場合、ターゲット平面は、ビューベクトル（または投射されたレイ）に垂直な平面として設定される１８０８。これは、実質的に、表示面を一枚の紙として扱っていると見なされてもよい。ビューが固定されているとして設定されていない場合、ターゲット平面は、ｚ座標が０の値を有する、ｘ−ｙ平面となる１８１０。
【００２９】
図１９は、本発明のプロセスおよびワークフローのために使用されてもよいハードウェア構成要素を示す。ユーザは、キーボード１９０４および／またはマウス１９０６、ならびに前述したその他の入力装置を使用して、操作切り替えおよびポイント配置、その他を、デスクトップ型コンピュータ１９０２内に入力してもよい。コンピュータは、３Ｄモデル空間を、ユーザがかかわる適切なシステムＧＵＩとともに、ディスプレイ１９０８上に表示する。システムは、従来の構成要素を含む。システムは、さらに、磁気および光ディスク、ＲＡＭ、ＲＯＭなどの、永久または着脱式記憶装置を含み、それらの記憶装置上に、本発明のプロセスおよびデータ構造が記憶され、分散されてもよい。プロセスは、例えば、インターネットなどのネットワーク上でのダウンロードによって分散されてもよく、そして、クライアントサーバ関係の中で実行されてもよい。
【００３０】
図１５〜図１８に関して上述したプロセスは、図１〜図１４に関して前述した、そして図２０に示す、柔軟なワークフローを可能にする。このワークフローは、キャンバスまたは平面の作成２００２という、一般的な第１の操作を含む。方向付け（または移動）操作２００４において、ユーザは、平面を所望の位置に移動する。複製操作２００６において、キャンバスは複製されてもよい。ユーザは、ドロー操作２００８において、キャンバス上にドローまたはペイントする。ジオメトリ操作は、キャンバス上にジオメトリカーブを作成すること２０１０、サーフェスジオメトリを作成すること２０１２、およびキャンバス間の、またはキャンバスにわたるカーブジオメトリを作成すること２０１４を含む。図１〜図１４の例のワークフローは、図２１に部分的に示されており、キャンバスの作成２００２（図１）から、キャンバス上でのドローイング２００８（図２）を介し、次に、それを複製すること２００６（図３）、それに続く、複製キャンバスの方向付け２００４（図３）、キャンバス間のジオメトリの作成（図４）、サーフェスジオメトリの作成（図５）、そしてキャンバス上のカーブジオメトリの作成（図６）、というフローを含む。
【００３１】
本発明で使用される、ワールド空間とイメージ空間との間の関係を、図２２に示す。キャンバス平面２２０８上に位置するポイントは、ワールド空間２２０４内で３Ｄポイントｐ（２２０２）として、またはイメージ空間２２１０内で２Ｄポイントｓ（２２０６）として記述されてもよい。イメージ空間とワールド空間との間で変換するには、以下に記載する行列の組が使用される。
【００３２】
【数１】
2009512012.tif 000003
これは、４×４同次変換行列であることに注意されたい。
イメージ空間からワールド空間への変換は、
【００３３】
【数２】
2009512012.tif 000004
であり、ここで、ｑは同次ポイント、ｑ＝ｑｘ、ｑｙ、ｑｚ、ｑｗであり、ｓｕおよびｓｖはイメージ空間座標であり、０．０は平面上に位置し、１．０はベクトルではなくポイントが変換されることを示し、そして、ｐｘ＝ｑｘ／ｑｗ、ｐｙ＝ｑｙ／ｑｗ、ｐｚ＝ｑｚ／ｑｗである。
ワールド空間からイメージ空間への変換は、
【００３４】
【数３】
2009512012.tif 000005
であり、ここで、ｐｘ、ｐｙ、ｐｚはワールド空間座標であり、１．０はポイント変換を示し、そして、ｓｕ＝ｑｘ／ｑｗおよびｓｖ＝ｑｙ／ｑｗである。
【００３５】
本発明は、以下を含むデータ構造を使用する。
【００３６】
Ｉｎｔｅｇｅｒ  Ｗｉｄｔｈ；
Ｉｎｔｅｇｅｒ  Ｈｅｉｇｈｔ；
イメージ空間座標内でイメージデータが広がる高さおよび幅のピクセル数。
【００３７】
ＰｉｘｅｌＡｒｒａｙ  ｉｍａｇｅ  ｄａｔａ；
キャンバスイメージを形成する実際のデータ。
【００３８】
Ｍａｔｒｉｘ  ｉｍａｇｅｔｏｗｏｒｌｄｓｐａｃｅ；
イメージ空間からワールド空間への変換であり、行列Ｍは可逆である（｜Ｍ｜≠０）
上述のように、本発明は、それぞれが位置と向きとを有する、３Ｄシーン内の複数の２Ｄ平面を、ユーザが作成することを可能にする３Ｄモデリングワークフローである。これらの２Ｄ平面は、ペイント、イメージ、および構築ジオメトリ（すなわち、ＮＵＲＢＳ、ポリライン、その他）の組み合わせを含むことができる。構築ジオメトリは、複数の２Ｄ平面にわたってもよい。２Ｄ平面は集合的に、３Ｄオブジェクトの３Ｄスケッチを可能にし、その場合、オブジェクトの部分はペイントによってドローされ、その他の部分はジオメトリから構成される。ワークフローは、紙の上のドローイングとの類似性を使用した、３Ｄシーン内でのインクと２Ｄ平面配置／方向付けとの使用により、ルーズな形状吟味を可能にする。スケッチから、より堅牢な３Ｄ  ＮＵＲＢＳモデルへの、３Ｄ形状の漸進的改良が可能になる。２Ｄ平面は、通常、透明であり、インク、ペイント、イメージ、または３Ｄジオメトリのみが不透明である。平面の両方の面上で内容が見られることが可能であるという点で、平面は「２面」である。２Ｄ平面は、非平面であってもよい。構築平面は、ジオメトリを作成するためのガイドとして使用されてもよい（例えば、スナッピング）。イメージ平面は、ジオメトリを作成するための局所座標系を定義するために使用されてもよい。本発明がサポートする基本的ワークフローは、ペインティングと３Ｄジオメトリ指定との混合に基づいて、表現がより容易ないずれかの手段を利用する、３Ｄ形状のハイブリッド構築である。３Ｄスケッチは、所定の位置で行われて、スケーリングされてもよく、見る人は、ジオメトリを構築する必要なしに、３Ｄの感覚を得る。
【００３９】
本発明を、一枚の紙のような、２Ｄ平面であるドローイングサーフェスに関して説明した。しかし、本発明は、非平面キャンバス（球、立方体、円錐などの、非平面サーフェスおよびボリューム）などの、その他のタイプのキャンバスとともに使用されてもよい。
【００４０】
本発明を、ユーザが上にドローすることが可能な、一枚の紙のようなドローイングサーフェスに関して説明した。ユーザが上にドローすることを許可されるサーフェスは、写真などのイメージであることも可能である。このイメージは、平面としてシステム内にロードされてもよく、ロードされたイメージ平面は、ジオメトリの作成のための基準として使用される。このロードは、従来通りにキャンバス作成の一部として実行されて、それにより、ロードされたイメージを含む新しいキャンバスが作成されてもよいし、または、イメージは、既存のキャンバス内の新しいレイヤとしてロードされてもよい。
【００４１】
本発明を、複数の異なるターゲットサーフェス／平面選択技術とともに説明した。その他の技術が使用されてもよい。ターゲット平面の選択は、平面を新しいグラウンド平面にさせる、構築平面の「設定」の概念を含む。そして、アプリケーション、ドローイングまたはジオメトリ作成は、キャンバスを含む構築平面の平面であるように「設定」され得るグラウンド平面を常に対象とする。任意の選択された平面は「ロック」されてもよく、それにより、そのロックされた平面に対して働くいかなる操作も、ロックされた状態で実行されるようになる。使用される平面設定技術は、本明細書に記載するワークフローをサポートすべきである。
【００４２】
本発明の多くの特徴および利点は、詳細な明細書から明らかであり、したがって、本発明の真の精神および範囲に含まれる、本発明のすべてのそのような特徴および利点を網羅することが、添付の請求項によって意図されている。さらに、多くの変形および変更が、当業者には容易に明らかとなるため、本発明を、図示および説明した正確な構成と動作に限定することは望ましくなく、したがって、すべての適切な変形および均等物が、本発明の範囲内で遂行されてもよい。
【図面の簡単な説明】
【００４３】
【図１】平面の作成を示す。
【図２】平面またはスケッチキャンバス上へのユーザによるドローイング／ペインティングを示す。
【図３】新しい平面が複製によって作成でき、次に移動させられることを示す。
【図４】平面を接続するモデルジオメトリカーブの作成を示す。
【図５】平面上への直接的なジオメトリの作成を示す。
【図６】カーブネットワークを形成するための、カーブの接続を示す。
【図７】カーブネットワークに対して自動的に作成されるサーフェスジオメトリを示す。
【図８】以前に作成された平面に交差する、作成される新しい平面を示す。
【図９】カーブジオメトリを作成する、平面上のブラシストロークを示す。
【図１０】自動車のスケッチモデルを作成するために使用される、ペイントストロークを示す。
【図１１】自動車のスケッチモデルを作成するために使用される、ペイントストロークおよび平面を示す。
【図１２】自動車のスケッチモデルを作成するために使用される、ペイントストロークおよび平面を示す。
【図１３】図１０〜図１２の基準スケッチを使用して作成されたカーブネットワークを示す。
【図１４】図１３のカーブネットワークに対して作成されたサーフェスジオメトリを示す。
【図１５】ペイントストロークを作成する動作を示す。
【図１６】ジオメトリカーブの作成を示す。
【図１７】キャンバス間のジオメトリカーブのための動作を示す。
【図１８】ターゲット平面の設定を示す。
【図１９】ハードウェア構成要素を示す。
【図２０】可能なワークフローの流れを示す。
【図２１】図１〜図９に関して述べた例のワークフローを示す。
【図２２】ワールド空間とイメージ空間との間の関係を示す。
【図１】
2009512012.tif 000006
【図２】
2009512012.tif 000007
【図３】
2009512012.tif 000008
【図４】
2009512012.tif 000009
【図５】
2009512012.tif 000010
【図６】
2009512012.tif 000011
【図７】
2009512012.tif 000012
【図８】
2009512012.tif 000013
【図９】
2009512012.tif 000014
【図１０】
2009512012.tif 000015
【図１１】
2009512012.tif 000016
【図１２】
2009512012.tif 000017
【図１３】
2009512012.tif 000018
【図１４】
2009512012.tif 000019
【図１５】
2009512012.tif 000020
【図１６】
2009512012.tif 000021
【図１７】
2009512012.tif 000022
【図１８】
2009512012.tif 000023
【図１９】
2009512012.tif 000024
【図２０】
2009512012.tif 000025
【図２１】
2009512012.tif 000026
【図２２】
2009512012.tif 000027
【国際調査報告】
2009512012.tif 000028