(57)【要約】３次元コンピュータモデルと現実のワークスペースの間の最初の対応を規定することにより、ユーザが３次元コンピュータモデルを扱うことができるようにするコンピュータシステムである。ワークスペースの編集ボリュームも規定され、該編集ボリューム内におけるコンピュータモデルセクションの立体画像が表示される。第１の入力装置により、ユーザは、前記モデルを移動および／または回転させることができ、また、前記編集ボリュームも回転させることができる。これにより、前記モデルのことなった部分が編集ボリューム内に入り、ユーザの視野に入る。ユーザは、第２の入力装置を操作し、前記モデルに加えられる変更を表現できる。第１および第２の入力装置は、ユーザのそれぞれの手で操作できる。編集ボリューム内の前記モデルの部分のみが表示されるので、該モデルの全体を表示する場合と比較して、処理および表示に対する要求が低減される。
2005527870.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータシステムのユーザと３次元コンピュータモデルの相互作用を可能にするためのコンピュータシステムであって：
前記モデル、該モデルの部分と対応する現実世界のワークスペースの部分との間の幾何学的な対応を規定するマッピング、および、ワークスペースの編集ボックスを規定するデータとを記憶するためのプロセッサ；
編集ボリューム内に明らかな位置を有する画像を生成し、該画像が、前記マッピングに従った編集ボリューム内のモデルのセクションの画像となるようになっている、表示手段；
編集ボリューム内のモデルのセクションを変更するために、編集ボリューム、および、モデルとワークスペースの間の幾何学的な対応の両方を変更するように設定されているプロセッサに、第１の信号を入力するためのユーザの第１の手により操作される、少なくとも１つの第１の入力装置；
および、第２の信号に基づいてモデルを修正するように設定されているプロセッサに、第２の信号を入力するためのユーザの第２の手により操作される、少なくとも１つの第２の入力装置と；
を含むコンピュータシステム。
【請求項２】
第１の信号に基づいて、前記プロセッサが前記マッピングを変化させ、これにより、ワークスペースに対する前記モデルの位置と方向の両方を変化させうる、少なくとも１つの操作モードを有する請求項１に記載のコンピュータシステム。
【請求項３】
第２の信号に基づいて、前記プロセッサが前記マッピングを変化させ、これにより、モデルの部分と対応する現実世界のワークスペースの部分との間の幾何学的な対応のスケールを変化させる、少なくとも１つの操作モードを有する請求項１または２に記載のコンピュータシステム。
【請求項４】
さらにマイクロフォンを含み、マイクロフォンからの音声信号に基づいて、前記プロセッサが前記マッピングを変化させ、これにより、モデルの部分と対応する現実世界のワークスペースの部分との間の幾何学的な対応のスケールを変化させて、画像の倍率を変化させる、操作モードを有する請求項１〜３のいずれかに記載のコンピュータシステム。
【請求項５】
第１の入力装置が、第１の入力装置の位置および／または方向に対応して前記信号を生成する請求項１〜４のいずれかに記載のコンピュータシステム。
【請求項６】
少なくとも１の操作モードにおいて、特定面において前記第１の入力装置の平面移動の成分に応じて、前記モデルおよびワークスペースに対する直線的な変化を前記プロセッサが生じさせるようになっている請求項５に記載のコンピュータシステム。
【請求項７】
前記プロセッサが、第１の信号に基づいて、編集ボリュームの方向を制御するが、該編集ボリュームの位置は変化させないように設定されている、少なくとも１つの操作モードを有する請求項１〜６のいずれかに記載のコンピュータシステム。
【請求項８】
前記プロセッサが、第２の信号に基づいて、編集ボリューム内にあるモデルのセクションのみを修正するように設定されている、請求項１〜７のいずれかに記載のコンピュータシステム。
【請求項９】
前記表示手段が、画像を立体画像として生成するように設定されている請求項１〜８のいずれかに記載のコンピュータシステム。
【請求項１０】
ユーザが３次元コンピュータモデルと相互作用できるようにする、コンピュータにより実行される方法であって、
モデル、モデルの部分と対応する現実世界のワークスペースの部分との間の幾何学的な対応を規定するマッピング、および、ワークスペースの編集ボリュームを規定するデータとを記憶すること、
および、
（１）前記編集ボリューム内に明らかな位置を有し、前記マッピングに従った編集ボリューム内のモデルのセクションの画像となる画像を生成し、
（２）ユーザの第１の手によって操作される少なくとも１つの第１の入力装置から第１の信号を受信し、第１の信号に基づいて編集ボリュームと、モデルと実在空間の幾何学的な対応の両方を変更し、編集ボリューム内のモデルのセクションを変更し、
（３）ユーザの第２の手によって操作される少なくとも１つの第２の入力装置から第２の信号を受信し、第２の信号に基づいてモデルを修正すること、
からなる（１）〜（３）のステップを繰り返し実行すること、
を含む方法。
【請求項１１】
ユーザの第２の手が、ユーザの利き手であり、ユーザの第１の手がユーザの非利き手である請求項１０に記載の方法。
【請求項１２】
前記第１の信号に基づいて、前記ワークスペースに対する前記モデルの位置および方向の両方を変化させることを含む請求項１０または１１に記載の方法。
【請求項１３】
前記第２の信号に基づいて、前記モデルの部分と対応する現実世界のワークスペースの部分との間の幾何学的な対応のスケールを変化させ、これにより、画像の倍率を変化させることを含む請求項１０〜１２のいずれかに記載の方法。
【請求項１４】
マイクロフォンから受信した信号に基づいて、前記モデルの部分と対応する現実世界のワークスペースの部分の間の幾何学的な対応のスケールを変化させ、これにより、画像の倍率を変化させることを含む請求項１０〜１３のいずれかに記載の方法。
【請求項１５】
第１の入力装置が、第１の入力装置の位置および／または方向に対応する第１の信号を生成する請求項１０〜１４のいずれかに記載の方法。
【請求項１６】
特定面における第１の入力装置の平行移動の成分に対応して、前記モデルおよびワークスペースの対応が直線的に変化する請求項１５に記載の方法。
【請求項１７】
前記第１の信号に基づいて、編集ボリュームの方向が制御されるが、編集ボリュームの位置は変化しないことを特徴とする請求項１０〜１６のいずれかに記載の方法。
【請求項１８】
前記第２の信号に基づいて、前記モデルを修正するステップが、編集ボリューム内のモデルのセクションのみを修正する請求項１０〜１７のいずれかに記載の方法。
【請求項１９】
前記画像が立体画像である請求項１０〜１８のいずれかに記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、３次元コンピュータモデルと相互作用するための方法およびシステムに関する。
【背景技術】
【０００２】
今日、２つの主要なタイプの現実世界の３次元コンピュータデータモデルが使用されている。一方は現実世界をサンプリングすることにより、現実世界を対応するが、他方は数学関数を使用して現実世界に近似することにより、現実世界に近づく。サンプリング方法は、ボリュメトリック・モデルにつながり、主要な表示単位としてボクセルを使用する。ＣＡＤ（コンピュータ援用設計）などの数学的な方法は、ポリゴンをプリミティブとして使用するモデルを作成する。ポリゴンは、３次元オブジェクトの外面をレンダリングするには有効であるが、例えば、人間の体内の形態を正確にレンダリングするには、３次元の画像成分である「ボクセル」を使用する、いわゆる「ボリュームレンダリング」が必要になる。
【０００３】
具体的には、ボリュームレンダリングとは、サンプリングされたデータの３次元配列を視覚化する技法である。サンプリングされる３次元データの例として、ＣＡＴスキャナまたはＭＲＩスキャナからの医療データ、地震データ、その他のボリュメトリック・データがあり、これらにおいては、幾何学的表面を生成したり、入手するのが困難である。ボリュームレンダリングは、オリジナルのサンプリングデータを採取し、使用可能なデータの間を補間して、その間隙を充填し、得られた３次元画像を、透視投影または正投影を使用して、画面上でユーザに表示する。
【０００４】
ボリュームレンダリングにより生成された典型的な画像と相互作用する際の主要な問題点は、データセット全体の大きさである。少なからずデータセットは膨大であり、および／または多くのデータセット（ＣＴおよびＭＲのようなさまざまなソースからの同じオブジェクトの画像）が同時に処理される必要がある。この要因は、実行する必要がある補間量、および、レンダリングされたボリュームのフットプリントなどの他の要因とともに、レンダリング速度に悪影響を及ぼすことがある。この問題は、ユーザがボリュームを高解像度で表示しようとするときに悪化し、その間システムはのろのろと低速化する可能性がある。
【０００５】
対照的に、ＣＡＤのような数学的な方法は、３次元オブジェクトを、数学関数、通常はポリゴンおよびポリラインとして表現する。しかしながら、ボリュームレンダリングに関しては、新しい画像を１００ミリ秒（１秒あたり１０）未満で生成するレンダリング速度が要求されるため、大規模なデータがリアルタイムの相互作用を困難にする。
【０００６】
ボリュームレンダリングとＣＡＤの両方を行うと、「フレームバッファ」でのレンダリングを生じる結果となる。
【０００７】
コンピュータのパワーが増大するにつれ、ボリュームレンダリングとＣＡＤはますます複雑化するデータモデルを生成できるようになってきている。しかしながら、コンピュータがモデルを「レンダリングする」能力は、以下のいくつかの要因によって制限されている。
【０００８】
・モデルのサイズ（すなわち、ＣＡＤのケースではポリゴン数として、ボリュームレンダリングのケースではボクセル数として、それぞれ定義されるモデル中の要素数）。サイズが大きいほど、画面上での処理とレンダリングは低速化する。
【０００９】
・レンダリング時のフットプリントのサイズ（すなわち、画面のフレームバッファ上でオブジェクトの投影によりカバーされる面積）。フットプリントが大きいほど、処理は低速化する。
【００１０】
・モデルをレンダリングする際の簡略度（すなわち、詳細レベル）。オブジェクトを最終的なディスプレイで簡略化して、レンダリング速度を向上できる。
【００１１】
ボリュームレンダリングにより作成されたのか、ＣＡＤにより作成されたのかに関係なく、３次元モデルを表示する１つの既存の技術として、デキストロスコープ（Dextroscope）があり、該デキストロスコープは、視覚化のために単一人により使用される。デキストロスコープの変形として、聴衆、および、さらに多くの視聴者に対するプレゼンテーションで使用するデキストロビーム（Dextrobeam）がある。デキストロスコープの技術は、高解像度で立体仮想イメージをユーザの前に表示できる。
【００１２】
デキストロスコープのソフトウェアは、入力がユーザのデバイスから読み取られ、それに対応して操作がなされるメインループを有するアルゴリズムを使用する。該ソフトウェアは、仮想「オブジェクト」が集結した「仮想世界」を作成する。ユーザは、一式の入力装置を自分の手で制御し、デキストロスコープはこれらの入力装置が仮想「ツール」に対応するように操作することにより、オブジェクトと相互作用が可能となる。例えば、オブジェクトが仮想的な生体組織である場合、ツールは該生体組織を切断しうる仮想のメスとなりうる。
【００１３】
図１は、デキストロスコープの操作のステージを示している。以下の３つの主要なステージがある。
【００１４】
（１）初期化：システムが準備される。アップデートのエンドレスループが続く。（２）アップデート：すべての入力装置からの入力がなされ、オブジェクトがアップデートされる。（３）ディスプレイ：仮想世界においてアップデートされた各オブジェクトが順に表示される。
【００１５】
アップデートステージにおけるメインタスクは以下のとおりである。
【００１６】
・システムに接続されているすべての入力装置を読み取る。
【００１７】
・仮想世界内のオブジェクトに、仮想ツールがどのように関連しているのかを確かめる。
【００１８】
・前記ツールのプログラミングされた機能に従ってオブジェクトに作用する。
【００１９】
・すべてのオブジェクトをアップデートする。
【００２０】
ユーザによって制御されるツールには、４つの状態、つまり「チェック」、「スタート・アクション」、「ドゥー・アクション」および「エンド・アクション」がある。ツールの動作をプログラミングするために、該４つの状態に対応するコールバック機能が備えられる。
【００２１】
「チェック」は、ツールがパッシブで、どのオブジェクトにも作用しない状態である。スタイラス（スイッチ付きの３次元入力装置）の場合、これは「ボタンが押されていない」状態に相当する。ツールはこの時間を使用して、例えばオブジェクトに触れているかどうかなど、オブジェクトに関する位置をチェックする。
【００２２】
「スタート・アクション」は、パッシブからアクティブへのツールの移行状態であり、その結果、該ツールは任意のオブジェクトに作用できる。スタイラスの場合、これは「ちょうどボタンが押された」状態に相当する。これにより、例えば「描画開始」などのツールの動作の開始がマークされる。
【００２３】
「ドゥー・アクション」は、ツールがアクティブに保たれている状態である。スタイラスの場合、これは「ボタンがいまだに押されている」状態に相当する。これは、ツールが例えば「描画」などの動作をまだ実行していることを示す。
【００２４】
「エンド・アクション」は、アクティブからパッシブへのツールの移行状態である。スタイラスの場合、これは「ちょうどボタンが離された」状態に相当する。これにより、例えば「描画の停止」などのツールの動作の終了がマークされる。
【００２５】
ツールは、通常、その先端がオブジェクト座標の（０，０，０）に位置し、それが正のＺ軸方向を指すようにモデル化される。ツールのサイズは約１０ｃｍ程度がよい。ツールには、パッシブ形状とアクティブ形状があり、それがどの状態にいるのかに関して視覚的な手掛かりが与えられる。パッシブ形状はツールがパッシブであるときの形状であり、アクティブ形状はツールがアクティブであるときの形状である。ツールには、デフォルトのパッシブ形状とアクティブ形状がある。
【００２６】
ツールは、それがオブジェクトに近接しているときに、それらに作用する。ツールがオブジェクトをピッキングしたといわれる。
【００２７】
一般的に、ツールは、その先端がオブジェクトのバウンディングボックスの内側にある場合に、オブジェクトの「中」にあるとされる。代替的に、プログラマは、拡大されたバウンディングボックスを規定し、それぞれの方向で選択されたマージン（「ゆとり」）でオブジェクトを取り囲むようにして、ツールの先端が拡大バウンディングボックスに入ると、ツールがオブジェクトの「中」にあると、ソフトウェアが認識するように設定してもよい。拡大バウンディングボックスは、ピッキングを容易にする。例えば、（仮想世界のではなく、現実世界の座標系で）２ｍｍにゆとりを設定すると、ツールは、それがオブジェクトの近接の２ｍｍ内にある場合には、オブジェクトをピッキングする。デフォルトのゆとりは０である。
【発明の開示】
【発明が解決しようとする課題】
【００２８】
本発明は、３次元のコンピュータ生成モデルと効率的に相互作用する、新規かつ実用的な方法を提供することを目的とする。
【００２９】
一般的には、コンピュータシステムが、３次元コンピュータモデルと現実世界のワークスペースの間の初期の対応を規定することを、本発明は提案する。ワークスペースの編集ボリュームも規定され、編集ボリューム内にあるコンピュータモデルのセクションの立体画像が表示される。第１の入力装置を使用して、モデルを仮想的に移動および／または回転させることができ、また、編集ボリュームを回転させて、モデルのさまざまなセクションを編集ボリュームの中に持ち込み、ユーザの視界に入るようにさせることができる。ユーザは第２の入力装置を操作し、モデルに加えられる変更を表示させうる。第１の入力装置と第２の入力装置は、ユーザのそれぞれの手で操作される。
【００３０】
したがって、本発明は、効率的かつ自然に、３次元モデルの視覚化および修正を可能にする。
【００３１】
さらに、編集ボリューム内にあるモデルの部分だけを表示すればよいため、モデル全体を表示するのと比較して、処理と表示に対する要求は低減される。すなわち、過度の演算能力を必要とするコンピュータシステムを用いずに、表示を迅速にアップデートできる。
【課題を解決するための手段】
【００３２】
具体的には、第１の態様では、本発明は、コンピュータシステムのユーザと３次元コンピュータモデルの相互作用を可能にするためのシステムを提案し、該コンピュータシステムは、
モデル、該モデルの部分と現実世界のワークスペースの部分との間の幾何学的な対応を規定するマッピング、および、ワークスペースの編集ボックスを規定するデータとを記憶するためのプロセッサ、
編集ボリューム内に明らかな位置を有し、前記マッピングに従った編集ボリューム内のモデルのセクションの画像となる画像を生成するための表示手段、
編集ボリューム内のモデルのセクションを変更するために、編集ボリュームと、モデルとワークスペースの幾何学的な対応の両方を変更するように設定されているプロセッサに、第１の信号を入力するためのユーザの第１の手により操作される、少なくとも１つの第１の入力装置と、
第２の信号に基づいてモデルを修正するように設定されているプロセッサに、第２の信号を入力するためのユーザの第２の手により操作される、少なくとも１つの第２の入力装置と、
を含む。
【００３３】
第２の態様では、本発明は、ユーザが３次元コンピュータモデルと相互作用できるようにするために、コンピュータにより実行される方法を提供し、該方法は、
モデル、該モデルの部分と対応する現実世界のワークスペースの部分との間の幾何学的な対応を規定するマッピング、およびワークスペースの編集ボリュームを規定するデータとを記憶すること、
（１）前記編集ボリューム内に明らかな位置を有し、前記マッピングに従った編集ボリューム内のモデルのセクションの画像となる画像を生成し、
（２）ユーザの第１の手によって操作される少なくとも１つの第１の入力装置から第１の信号を受信し、第１の信号に基づいて編集ボリュームと、モデルと実在空間の幾何学的な対応の両方を変更し、編集ボリューム内のモデルのセクションを変更し、
（３）ユーザの第２の手によって操作される少なくとも１つの第２の入力装置から第２の信号を受信し、第２の信号に基づいてモデルを修正する、
（１）〜（３）のステップを繰り返し実行すること、
を含む。
【００３４】
第２の入力装置は、例えば仮想「ツール」に対応する、前述された公知の入力装置の形式を採りうる。
【００３５】
制御装置は、複数のモードの内の選択されたモードで操作でき、さまざまなモードで制御装置の異なる動きが、モデルおよび／または編集ボリュームのさまざまな動きに対応するようにできる。好ましくは、これらのモードの少なくとも１つで、ワークスペースに対するモデルの位置と向きの両方を、制御装置の動きに基づいて変更できるよにする。後述のように、編集ボリュームとモデルの位置決めのこのような再選択は、不必要に演算能力を消費することなく、モデルを視覚化するために、非常に有用である。
【００３６】
好ましくは、ユーザは、例えば、再び第１の入力装置を使用する、または、プロセッサに送信されるコマンドを生成するためにマイクに話しかけることによって、モデルとワークスペースの間で対応するスケールを変更する権限を与えられる。このような対応の変更の１つに、モデルを拡大して、モデルのより小さな部分の拡大画像を、サイズを一定にしたまま、編集ボリュームの中に表示することがある。
【００３７】
好ましくは、第２の信号に基づいたモデルに対する修正は、編集ボリュームに対応するモデルのセクションに対してだけとする。すなわち、表示されるモデルの部分だけが仮想ツールの影響を受ける。
【００３８】
３次元のコンピュータ生成モデルは、現実世界のあらゆる３次元オブジェクトのデータ表現である。例えば、家や生体細胞などのオブジェクトの表現である。また、モデルは、外科手術の被術者の少なくとも部分のモデルであってよく、第２の信号に基づいて該モデルを修正するステップは、第２の入力装置（ツール）に対応する手術装置の被術者に対する動作をシミュレーションするために実行されうる。例えば、仮想ツールは、オブジェクトの仮想的な生体組織を切断するメスでありうる。
【００３９】
本明細書では、オブジェクト、ツール、デバイス、編集ボリューム等の存在に関する用語「位置」は、３次元の位置（例えば、存在の中心点の「位置」）を意味し、存在の方向は含まない。このようにして存在の「位置」は、軸Ｘ、ＹおよびＺの予め規定されたシステムに対する３つの数（Ｘ、Ｙ、Ｚ）として記述される。また、存在の「方向」は、同じ軸システムに対する存在の方向を表す３つの数（α、β、γ）を使用して記述される。用語「配置」は、オブジェクトの位置と方向の組み合わせを意味する（つまり、それは６つの数で記述される）。
【００４０】
好ましくは、画像は「立体的」であり、この用語は、ここでは、それぞれの目に１つずつ２つの異なる画像を生成し、視覚的な画像が脳の中で融合して空間を占有していると知覚される、任意の表示技法を含めている。例えば、デキストロスコープおよびデキストロビームで使用されている表示技法が、本発明を使用するために適している。
【発明を実施するための最良の形態】
【００４１】
図２（ａ）は、本発明によるシステムのユーザの３次元のワークスペースを示している。このワークスペースは、実在空間の固定された３次元領域であってよい。それはユーザの視野（の少なくとも一部）に一致している。コンピュータシステムは、このワークスペース内に立体的な表示を生成するために提供される。コンピュータは、３次元モデルを記憶する（図２（ａ）で１２として図示されているが、システムのユーザには見えない）。該３次元モデルは、実在のワークスペースに最初の（事前に選択された）対応を有する。すなわち、該モデルのすべての点が、ワークスペースのそれぞれの点に対応する。該モデルは、仮想世界で連続している単一の仮想オブジェクト（ここでは単に「オブジェクト」と呼ばれる）、または仮想世界の中では分離されている複数のオブジェクトのいずれで構成されてもよい。図２（ａ）では、簡明化のために、モデル１２は直方体として図示されている。
【００４２】
図２（ａ）に図示されるように、ユーザは、ボリュームオブジェクト１２のサブボリュームを規定する編集ボリューム１０を知覚する。編集ボリューム１０は、オブジェクトの表示の最小境界と最大境界を規定する平行６面体（図２（ａ）で図示されるように、それは直方体である）として形づくられる３次元のワークスペース領域である。したがって、編集ボリュームは、ここでは「編集ボックス」と呼ばれる。その６つの面は集合的に、オブジェクト（通常、ボリュメトリック・データセット）が表示される領域を境界付ける。一般的に、編集ボックス１０の外側にあるオブジェクトは表示されない。
【００４３】
編集ボックス１０は、前記ボックスの端縁を示すワイヤフレームとして、コンピュータ画面上にそれ自体表示される。編集ボックス１０は、３次元モデル１２を横断する。編集ボックス１０は、好ましくは、約１５ｃｍ〜２０ｃｍの直線の長さと高さを有し、厚さ（ユーザのニーズに合わせるために調整される）は調整可能である。編集ボックス１０は、３次元ワークスペースの中心に置かれ、快適な作業領域を実現する。
【００４４】
編集ボックス１０のワークスペース内での位置は、ユーザにより規定され、追加の制御で調整できる。しかしながら、図２（ｂ）から（ｅ）に関して後述されるように、本発明の通常の動作中、編集ボックス１０の中心位置は固定されている。編集ボックス１０は、このようにワークスペースの中心に置かれ、立体的な集束は、複雑な操作のために最善かつ最も快適な位置でなされる。
【００４５】
図２には示されていないが、編集ボックス１０の中にあるコンピュータモデル１２のセクションが立体的に表示される。ユーザは、後述のように、コンピュータモデル１２のさまざまな部分を見えるようにするために、コンピュータモデルのいずれのセクションが表示されるのかを再選択できる（すなわち、モデル１２が編集ボックス１０に対して移動および／または回転される）。さらに、モデル１２と実在する空間の幾何学的な対応のスケールを変更することができ、その結果、編集ボックス１０の中のモデル１２の比率が変化する。このようにして、ユーザは、詳細を見るためにモデル１２を拡大（ズームイン）したり、あるいは全体的なビューのために縮小（ズームアウト）することができる。ユーザが、モデル１２のズームレベルを変更しているのか、あるいは編集ボックス１０内に表示される３次元モデルの部分を操作しているのかに関係なく、応答および編集ボックス１０の中での表示のアップデートは、通常不変的に行われる。これは、表示するためのボリューム詳細の量と結果として生じる表示のフットプリントの割合がほぼ一定に保たれる、つまり編集ボックス１０のサイズが固定され、したがってモデル１２の拡大に関係なくフットプリントを固定するという事実のためである。
【００４６】
ユーザは、利き手ではない手（例えば、右利きの人の場合、左手）で、ジョイスティックのような制御装置１４を保持し、編集ボックス１０によって指定されるモデルのビューを制御する。これにより、位置（Ｘ、Ｙ、Ｚ）の３つと方向（α、β、γ）の３つの合わせて６つの自由度が許容される。これに使用するために適切な制御装置１４は、周知である。
【００４７】
用途に応じて、モデル１２は編集ボックス１０とともに移動でき、あるいは一方の移動は他方と無関係ともしうる。表１は、制御装置１４の可能な運転モードのうち３つを示す。
【００４８】
2005527870.tif 000003
前述のように、編集ボックス１０は、ワークスペースの中心に置かれたままであるべきである。すなわち、編集ボックスの任意の中心点はその位置を変更しない。したがって、ユーザがツールをＸ軸、Ｙ軸及びＺ軸に沿って移動するすべてのケースでは、該動作がモデル１２を対応する方向にパンし、モデル１２のさまざまな部分を編集ボックス１０に持ち込む。編集ボックス１０自体は移動しない。ユーザが制御装置１４を回転させる（移動角度はα、β及びγによって測定される）と、該動作は、編集ボックス１０、モデル１２、または両方の回転に変換される。
【００４９】
・ケース１では、モデル１２と編集ボックス１０は一緒に回転する。編集ボックス１０の回転は、その中心点の回りであり、これにより、ユーザは、すべての側面からサブボリュームを見ることができる。このモードは、図２（ｂ）に表されており、図２（ａ）と比較できる。図２（ｂ）には、実施態様のユーザに対して表示されてないが、読み手を補助するために固定軸１６のセットを含ませている。図２（ｂ）は、図２（ａ）に図示される位置決めに対して、ベクトル２０により、上方かつ右に制御ツール１４を平行移動し、回転させると、編集ボックス１０を回転させ（平行移動ではない）、およびモデル１２に、同じベクトル２０により、上方かつ右方向に平行移動と回転の両方を生じさせる仕組みを示している。編集ボックス１０とモデル１２の両方とも制御ツール１４と同じ角度だけ回転される。
【００５０】
・ケース２では、編集ボックス１０は、モデル１２を横断しながら、その中心点の回りで回転し（モデル１２の向きは固定されたままである）、コンピュータモデル１２のさまざまなサブボリュームを明らかにする。これは、図２（ｃ）に示されているが、モデル１２は回転しないが、ベクトル２０により移動し、編集ボックス１０は平行移動せずに、制御装置１４と同じ回転だけ、回転する。
【００５１】
・ケース３では、図２（ｄ）に図示されるように、モデル１２はベクトル２０により移動し、制御装置１４の方向に従って回転するが、編集ボックス１０は固定されたままで、その結果、ユーザは、制御装置１４の動きに従って傾けられた変化するサブボリュームを見る。
【００５２】
図２（ｅ）に図示されている第４のケース（ケース４）も考えることができる。このケースでは、編集ボックス１０の１つの面１８が「アクティブ面」と名付けられている。このケースでは、ケース１と同様に、サブボリューム１２と編集ボックス１０の両方の方向が制御ツール１４の方向に対応して変化する。しかしながら、モデル１２の位置がその分変化する変位ベクトル２２は、アクティブ面１８の平面に投影されるベクトル２０の成分であり、ベクトル２４として示されている。このように、アクティブ面１８は、それに沿ってモデル１２をパンすることができる面を構成する。
【００５３】
編集ボックスを面１８に垂直に移動することが所望される場合には、これが、例えばユーザの利き手によって実行されるなど、別の動作として実行されうることに注意されたい。例えば、編集ボックスの境界を規定し、ケース４でユーザの利き手がこの境界と交差すると、ボックスが面１８に対して垂直に移動されるようにする。これにより、編集ボックスの境界は、ユーザの利き手によって、編集ボックスを面１８に対して垂直に、上下に移動させるホルダーのように作用する。
【００５４】
ユーザの利き手ではない手が制御装置１４を操作する一方、ユーザの利き手は編集ボックス１０の中の３次元コンピュータモデルの部分に作用するために使用されるスタイラス（または他の入力装置）を保持する。この第２の入力装置は、例えば前述の公知のツールでよく、仮想世界でのツールに相当する。例えば、公知のシステムにおけるように、該ツールは、ツールの仮想位置がオブジェクトに一致する場合（例えば、前述されたようにバウンディングボックスによって規定される公差の範囲内で）、モデル１２内に含まれる仮想オブジェクトと相互作用できる。さらに、オブジェクトは、一般的に、この時点で編集ボックス１０の中になくてはならない。このようにして、例えば、ユーザは３次元モデルで動作（例えば外科手術）をシミュレーションすることができる。動作の種類は、この実施態様が使用される用途に依存している。例えば、実施態様が３次元ボリュメトリック輪郭エディタで使用される場合、スタイラスまたは他の入力装置は輪郭を規定するノードを追加するために使用されうる。
【００５５】
制御装置１４は、編集ボックス１０の中、または近くに位置する必要はないことに注意されたい。しかしながら、制御装置１４の座標中心は、現在どちらが選択されているのかに関係なく、モデルまたは編集ボックスの回転の中心を規定するのが好ましい。対照的に、仮想ツールに対応するスタイラス（または他の入力装置）は、それらが実質的にオブジェクトに接するように配置される場合（例えば特定の公差の範囲内）、モデル１２の中のオブジェクトと相互作用するためだけに選択される。つまり、これらの入力装置は、通常、編集ボックス１０の中または編集ボックス１０の非常に近くに位置する。
【００５６】
前述のように、編集ボリューム１０の外側のモデル１２の部分は、通常表示されない。モデル１２は「クリッピングされている」と言う。具体的には、編集ボックス１０の各面は、（ａｘ＋ｂｙ＋ｃｚ＝ｄ）の形式の面方程式によって規定される。ここで、ｘ、ｙおよびｚは３つのデカルト軸を表し、ａ、ｂ、ｃおよびｄは面を特徴付ける定数である。モデル１２は、順に該面のそれぞれに対してテストされる。編集ボックス１０の外側にあることが判明したモデル１２の部分は表示されず、その結果、オブジェクト全体またはそれらの部分のいずれかが非表示となる場合がある。クリッピングは、本発明のコンピュータシステムにおけるハードウェアの中またはソフトウェアの中のいずれかで実行されうるが、ハードウェアの中での方が高速である。
【００５７】
コンピュータプロセスは、図１に関して前述したのと同じ原理で、本実施態様のコンピュータシステムでも実行されるが、メインループは、本発明の新規な特性に対応するために、図３に図示されるように修正される。新しいステップは図３で陰影を付けて示されている。
【００５８】
具体的には、図１の初期化は、編集ボックス１０を初期化するステップを含むように修正される。これにより、すべての面の最大境界と最小境界が設定され、編集ボックス１０の配置が設定され、アクティブ面１８が規定され、モデル１２の実在空間に対する最初の対応が、例えばユーザの利き手以外の手で操作される制御装置１４を使用して規定される。
【００５９】
「アップデート」ステップは、編集ボックス１０とモデル１２の配置のアップデートを含むように修正される。「ディスプレイ」ステップは、編集ボックス１０内のモデル１２の部分だけを表示するように修正される。これはクリッピング面の計算、およびクリッピングの起動を含む。
【００６０】
オブジェクトは、新規に獲得されたクリッピング面を利用することにより、編集ボックス１０内に表示される。表示は、編集ボックス１０の境界までなされるが、コンピュータグラフィックの標準的な技法である。これにより、ボリュームレンダリングされた画像または多角形オブジェクトの切開図が作成される。
【００６１】
編集ボックス１０配置を変更すると、モデル１２のどの部分がクリッピングされるのかを決定する最終的な面方程式が影響を受ける。図４は、図３の「ディスプレイ」ステップをさらに詳細に示している。具体的には、編集ボックスを表示するステップに続き、編集ボックスが変化したかどうかの判断が下され、変化した場合には、６つの面方程式が再計算され、クリッピングアルゴリズムが新しい面方程式により初期化される。「クリッピングを起動する」ステップが実行されるのはその後となる。
【００６２】
制御装置１４は、ボタンを備えるジョイスティック（またはスタイラス）である。前述されたスタイラスまたは入力装置の４つの状態に類似する、４つの状態がある。該４つの状態は以下のとおりである。
【００６３】
・チェック−ジョイスティックボタンが押されていない。
【００６４】
・スタート・アクション−チェックからドゥー・アクションへの移行状態
・ドゥー・アクション−ジョイスティックボタンが押されている。
【００６５】
・エンド・アクション−ドゥー・アクションからチェックに戻る移行状態
これらの各状態において、プロセスによって実行されるステップは、以下のとおりである。
【００６６】
スタート・アクション
・制御装置の初期配置を記憶する。
【００６７】
・制御装置とモデルの間の配置の差異を計算し、記憶する。
【００６８】
・制御と編集ボックスの間の配置の差異を計算し、記憶する。
【００６９】
・モデルと編集ボックスの間の位置の差異を計算し、記憶する。
【００７０】
ドゥー・アクション
・制御装置の現在の配置に基づいて、モデルの配置を計算し、記憶する。
【００７１】
・制御装置の現在の配置に基づいて、編集ボックスの配置を計算し、記憶する。
【００７２】
・条件付きアップデート（表１に定められるケースのいずれか、またはケース4に従う） 
具体的には、この最終的なステップは、以下から構成される。
【００７３】
ース１：モデルの新しい配置を設定する。
【００７４】
編集ボックスの新しい方向を設定する。
【００７５】
ケース２：モデルの新しい位置を設定する。
【００７６】
編集ボックスの新しい方向を設定する。
【００７７】
ケース３:モデルの新しい配置を設定する。
【００７８】
ケース４:ａ）編集ボックスとモデルの新しい方向を設定する。
【００７９】
ｂ）モデルと編集ボックスの間の記憶されている位置ずれ（変位）に基づいて、モデルの仮の位置を計算する。
【００８０】
ｃ）編集ボックスのアクティブな面の面方程式を計算する。
【００８１】
ｄ）アクティブな面の上に制御装置の現在位置を投影する（ｐ１）。
【００８２】
ｅ）アクティブな面の上に制御装置の初期位置を投影する（ｐ２）。
【００８３】
ｆ）変位ベクトルを計算する（ｐ１−ｐ２）（前記したベクトル２４に等しい）。
【００８４】
ｇ）仮の位置に変位ベクトルを加えてモデルの最終位置を計算する。
【００８５】
ｈ）モデルの位置を設定する。
【図面の簡単な説明】
【００８６】
【図１】公知の視覚化システムの操作プロセスを示すフローチャートである。
【図２（ａ）】本実施形態に許容される要素の再位置決めの４つの方法を示す（初期状態）。
【図２（ｂ）】本実施形態に許容される要素の再位置決めの４つの方法のうちケース１を示す。
【図２（ｃ）】本実施形態に許容される要素の再位置決めの４つの方法のうちケース２を示す。
【図２（ｄ）】本実施形態に許容される要素の再位置決めの４つの方法のうちケース３を示す。
【図２（ｅ）】本実施形態に許容される要素の再位置決めの４つの方法のうちケース４を示す。
【図３】本発明の実施形態により、図１のフローチャートがいかに修正されるのかを示すフローチャートである。
【図４】実施形態のクリッピング操作における論理ステップのフローチャートである。
【図１】
2005527870.tif 000004
【図２（ａ）】
2005527870.tif 000005
【図２（ｂ）】
2005527870.tif 000006
【図２（ｃ）】
2005527870.tif 000007
【図２（ｄ）】
2005527870.tif 000008
【図２（ｅ）】
2005527870.tif 000009
【図３】
2005527870.tif 000010
【図４】
2005527870.tif 000011
【国際調査報告】
2005527870.tif 000012
2005527870.tif 000013