JPH11272892A - 三次元空間表示システムにおける物体移動配置装置及び方法 - Google Patents

三次元空間表示システムにおける物体移動配置装置及び方法

Info

Publication number
JPH11272892A
JPH11272892A JP10095276A JP9527698A JPH11272892A JP H11272892 A JPH11272892 A JP H11272892A JP 10095276 A JP10095276 A JP 10095276A JP 9527698 A JP9527698 A JP 9527698A JP H11272892 A JPH11272892 A JP H11272892A
Authority
JP
Japan
Prior art keywords
point
dimensional
dimensional space
intersection
constituent surface
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP10095276A
Other languages
English (en)
Other versions
JP4109745B2 (ja
Inventor
Masahiro Nakamura
昌弘 中村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
REKUSAA RESEARCH KK
Original Assignee
REKUSAA RESEARCH KK
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by REKUSAA RESEARCH KK filed Critical REKUSAA RESEARCH KK
Priority to JP09527698A priority Critical patent/JP4109745B2/ja
Publication of JPH11272892A publication Critical patent/JPH11272892A/ja
Application granted granted Critical
Publication of JP4109745B2 publication Critical patent/JP4109745B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Processing Or Creating Images (AREA)

Abstract

(57)【要約】 【課題】 三次元空間表示システムで、表示映像上にあ
る物体を移動して配置する操作を容易にする。 【解決手段】 三次元映像における物体A上の任意点
aを指定し、予め決められた視点Eから任意点aを通る
直線を生成し、該直線と物体Aの構成面との交点fiを
演算することで物体Aを取得する手段、物体B上の任意
点bを指定し、視点Eから任意点bを通る直線を生成
し、該直線と物体Bの構成面との交点giを演算して、
交点giを含む物体Bの構成面Giを取得する手段、物体
Aが予め有する特徴点を利用して物体Aを構成面Gi上
に移動して配置する手段、とからなる物体移動配置装
置。物体Aの配置の際、構成面G1の法線上方向と三次
元空間の絶対的上方向を認識し、物体Aが有する方向を
これに合わせて配置すると好適である。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、設計やバーチャル
リアリティ等に用いる表示映像上で仮想物体を取り扱う
三次元表示システムにおいて、表示映像上における三次
元空間で物体を所望の位置に移動させる装置に関する。
【0002】
【従来の技術】従来、三次元物体を扱う分野でのシステ
ム技術として、設計に用いる三次元CADシステム、バ
ーチャルリアリティ(以下、VRという。)空間の設計
デザインに用いるVRオーサリングツールなどがある。
【0003】上記のシステム技術はいずれの場合も、三
次元物体の位置を規定する際に、位置について三軸(x
位置、y位置、z位置)、回転について三軸(x回転、
y回転、z回転)、即ち、六軸の変数を与える必要があ
る。
【0004】そして、マウスなどの二次元デバイスを利
用して三次元物体を移動させようとする場合、従来の方
法では一度に最大2つの変数しか与えることができず、
そのため、一度の操作では2変数以内で対象変数を指
定、変更していた。つまり、三次元物体を移動させるた
めには、移動方向や回転方向を順番に指定していく必要
がある。
【0005】具体的には、表示映像上の三次元物体を任
意の位置に移動して、向きを変えて配置する際、例えば
水平を表すX軸−Z軸方向への移動と、垂直を表すY軸
方向への移動と、Y軸方向への回転という、少なくとも
3つの操作を順番に行わなければならない。
【0006】この操作は手順として煩雑であるだけでな
く、操作方法を論理的に把握し、その過程を考慮しなが
ら作業を行う必要があり、感覚的な操作ではない。この
ため、当該技術に熟練した技術者でなければ操作を行う
ことは不可能で、空間デザイナーなどのクリエイターを
はじめ、一般の利用者に対して広く利用させることは困
難であった。
【0007】また、別の従来技術として、VRを体験す
る環境でポヒマスセンサなどのリアルタイム3次元セン
サにより、三次元位置を取得する方法がある。これは、
手などの身体や道具に取り付けられた三次元センサによ
る操作用装置で、三次元位置と三次元方向を取得し、こ
の情報をもとに三次元物体の位置を決定するものであ
る。
【0008】しかし、上記の方法で仮想三次元物体を移
動させたい位置まで移動させるためには、試行錯誤的動
作が必要である。具体的には、まず、操作用装置を動か
して、表示映像上の現在の位置を視覚的に確認する。そ
して、移動させたい物体の位置が目的とする位置である
かどうかを判断する。そうでなければ、操作用装置を動
かし目的の位置に近づける。この操作を繰り返して移動
させたい位置に近づくように調整する。
【0009】動作をシミュレーションする場合には上記
操作は有効であるが、三次元物体を所望位置に移動させ
ることが目的の場合は、センサ操作を伴った動作を実際
に行って位置の調整を行う必要があり、作業が煩雑にな
る。換言すれば、上記方法では移動目標の指定を行うこ
とが不可能で、センサによる変更された状態を観測しな
がら目標位置までオペレータが介在して制御しながら移
動する、という方法を採ることになり、オペレータに対
する負担が大きくなる。
【0010】さらに、上記方法では、三次元センサで取
得したデータで移動するため、移動させたい位置まで三
次元センサを移動しなければならない。例えば、目の前
の物体を100m前方まで移動する必要がある場合、1
00m前方まで実際にセンサを移動させる必要がある。
センサの能力を含めてそのような範囲まで移動させるこ
とは現実的に困難である。
【0011】一方、二次元情報を二次元映像で表示する
場合、従来からドラッグ・アンド・ドロップ技術が用い
られている。このドラッグ・アンド・ドロップ技術は、
アイコンと呼ぶ情報を現す部分画像をマウスで指定して
保持し、保持状態のまま移動して位置を変更するもので
ある。
【0012】かかる位置変更で情報と情報の新しい関係
を規定することが可能となり、例えば、パソコン上のO
Sでは、情報の分類整理のためのユーザーインターフェ
イスとして利用されたり、データの属性を与えるユーザ
ーインターフェイスとして利用されている。
【0013】ところが、従来のドラッグ・アンド・ドロ
ップ技術はすべて二次元情報に対するものであり、OS
やアプリケーションソフトで実現しているドラッグ・ア
ンド・ドロップは、二次元の制御画面の中でアイコンを
二次元的に移動させるだけである。即ち、三次元を表示
する表示装置で、ドラッグ・アンド・ドロップにより三
次元物体を移動させる機能を持つものはない。
【0014】
【発明が解決しようとする課題】本発明は上記問題点に
鑑みなされたものであって、表示映像上において物体を
選択決定し、この物体を三次元座標で示された指定位置
に移動して再配置する方法及び装置を提供することによ
り、表示映像上で物体を移動する際の余分な作業を省い
て、操作を容易化することを目的とする。
【0015】
【課題を解決するための手段】本発明よる三次元空間表
示システムにおける物体移動配置装置は、三次元空間を
二次元映像に変換して表示する三次元空間表示システム
で、三次元映像における物体Aを取得する手段、物体B
上の任意点bを指定し、視点Eから任意点bを通る直線
を生成し、該直線と物体Bの構成面との交点giを演算
して、交点giを含む物体Bの構成面Giを取得する手
段、物体Aが予め有する特徴点を利用して物体Aを構成
面Gi上に移動して配置する手段、を有することを特徴
とする。
【0016】そして、上記物体移動装置は、三次元空間
を二次元映像に変換して表示する三次元空間表示システ
ムで、三次元映像における物体A上の任意点aを指定
し、予め決められた視点Eから任意点aを通る直線を生
成し、該直線と物体Aの構成面との交点fiを演算する
ことで物体Aを取得する手段、物体B上の任意点bを指
定し、視点Eから任意点bを通る直線を生成し、該直線
と物体Bの構成面との交点giを演算して、交点giを含
む物体Bの構成面Giを取得する手段、物体Aが予め有
する特徴点を利用して物体Aを構成面Gi上に移動して
配置する手段、を有することを特徴とする。
【0017】上記物体移動装置で、物体Aを構成面Gi
上に移動して配置する際、構成面Giの法線上方向と三
次元空間の所望方向を認識し、物体Aが有する方向をこ
れに合わせて配置する手段、を有することとすると好適
である。
【0018】また、本発明よる三次元空間表示システム
における物体移動方法は、三次元空間を二次元映像に変
換して表示する三次元空間表示システムで、三次元映像
における物体A上の任意点aを指定し、予め決められた
視点Eから任意点aを通る直線を生成し、該直線と物体
Aの構成面との交点fiを演算することで物体Aを取得
する過程、物体B上の任意点bを指定し、視点Eから任
意点bを通る直線を生成し、該直線と物体Bの構成面と
の交点giを演算して、交点giを含む物体Bの構成面G
iを取得する過程、物体Aが予め有する特徴点を利用し
て物体Aを構成面Gi上に移動して配置する過程、を有
することを特徴とする。
【0019】上記物体移動方法で、物体Aを構成面Gi
上に移動して配置する際、構成面Giの法線上方向と三
次元空間の所望方向を認識し、物体Aが有する方向をこ
れに合わせて配置する過程、を有することとすると好適
である。
【0020】また、本発明は、三次元空間を二次元映像
に変換して表示する三次元空間表示システムで、三次元
映像における物体A上の任意点aを指定し、予め決めら
れた視点Eから任意点aを通る直線を生成し、該直線と
物体Aの構成面との交点fiを演算することで物体Aを
取得する過程、物体B上の任意点bを指定し、視点Eか
ら任意点bを通る直線を生成し、該直線と物体Bの構成
面との交点giを演算して、交点giを含む物体Bの構成
面Giを取得する過程、物体Aが予め有する特徴点を利
用して物体Aを構成面Gi上に移動して配置する過程、
を行わせるコンピュータに読み取り可能な記録媒体とす
ることを特徴とする。
【0021】上記記録媒体で、物体Aを構成面Gi上に
移動して配置する際、構成面Giの法線上方向と三次元
空間の所望方向を認識し、物体Aが有する方向をこれに
合わせて配置する過程、を行わせると好適である。
【0022】更に、三次元空間表示システムにおける物
体移動装置は、三次元空間を二次元映像に変換して表示
する三次元空間表示システムで、三次元空間をワールド
座標系で規定して三次元空間の絶対的上方向を示すベク
トルUを保持し、三次元空間における物体をローカル座
標で定義して特徴点を定め、該物体の法線上方向を規定
するベクトルαと、該物体の上方向を規定するベクトル
βを該物体に保持させると共に、該物体をその構成点と
構成面に対応させて記憶する手段、二次元映像における
物体A上の任意点aを指定して決定し、三次元空間に存
在する任意物体の面を構成する一連の記憶された三次元
座標を二次元座標に変換して変換点を取得し、該任意点
aと該変換点を比較して該任意点aを表す変換点群a1
〜anを決定すると共に、該変換点群a1〜anに対応
する面群F1〜Fnを取得する手段、予め決められた視
点Eから任意点aを通る指示ベクトルLを演算生成し、
該指示ベクトルLと前記面群F1〜Fnとの交点演算を
行って交点群f1〜fnを取得し、該交点群f1〜fn
と視点Eとの直線距離を計算して最短距離の交点f1を
求め、該交点f1に対応する物体Aを取得する手段、物
体Aを移動後に配置する物体B上の任意点bを指定して
決定し、三次元空間で任意物体の面を構成する一連の記
憶された三次元座標を二次元座標に変換して変換点を取
得し、該任意点bと該変換点を比較して該任意点bを表
す変換点群b1〜bnを決定すると共に、該変換点群b
1〜bnに対応する面群G1〜Gnを取得する手段、予
め決められた視点Eから任意点bを通る指示ベクトル
L’を演算生成し、該指示ベクトルL’と前記面群G1
〜Gnとの交点演算を行って交点群g1〜gnを取得
し、該交点群g1〜gnと視点Eとの直線距離を計算し
て最短距離の交点g1を取得すると共に交点g1に対応
する面G1を取得する手段、物体Aの特徴点のワールド
座標系における座標値を交点g1に変更する手段、交点
g1において面G1に対する法線上方向にベクトルγを
演算生成して保持し、物体Aが保持するベクトルαの方
向をベクトルγの方向と合わせる手段、物体Aが保持す
るベクトルβとベクトルUの間の角度を連続的に演算
し、該角度が最小となるベクトルβを求めて確定するこ
とで物体Aを配置する手段、からなることを特徴とす
る。
【0023】
【作用】本発明は上記の如くであるから、表示映像上で
仮想物体の表面座標値を確定的に決定して仮想物体を取
得できるとともに、仮想物体を再配置する三次元空間中
の所望の点座標をオペレータは直接認識し、当該点座標
を三次元座標値として指定することができる。
【0024】
【発明の実施の形態】以下、具体的な実施形態に基づい
て説明するが、本発明はかかる実施形態に限定されるも
のではない。
【0025】まず、物体移動装置を有する三次元空間表
示システムのハードウェア構成を説明する。
【0026】三次元空間表示システム自体は、三次元グ
ラフィックスという考え方でコンピュータ・システム技
術としてすでに確立されており、その装置構成は、例え
ば、図1に示すようにCPU等の演算処理装置1、内蔵
若しくは外部メモリ或いはディスク等の記憶装置2、C
RTディスプレイや液晶表示パネル等の表示装置3、キ
ーボードやマウス等の入力装置4などで構成される。
【0027】上記三次元空間表示システムで三次元物体
等を表示する場合、予め三次元空間をワールド座標系で
規定して物体の数値データを記憶装置2に記憶させる。
具体的には三次元の数値データとして、物体形状データ
やどこからどの方向へ向かって物体を観測しているかと
いう視点データ・視線データ・観測画角データ、さらに
は必要に応じて光源データや物体の質感データなどを記
憶させる(図2)。また、物体の構成面の頂点はその順
番を追って定義されており、これにより構成面やその物
体の表裏を認識して、記憶されることになる。そして、
上記数値データに基づいて演算処理装置1で投影変換
(射影投影もしくは平行投影)等の演算処理を行い、三
次元空間にある物体の観測映像として面、線などの表現
で表示装置3の画面(スクリーン)上に二次元の可視映
像として表示するものである。
【0028】本発明では表示映像上の物体を移動させる
ために、所定のプログラムが記憶装置2に記憶設定さ
れ、これに基づき演算処理装置1が演算を行い、表示映
像上の物体の移動を制御する。プログラムの具体例とし
ては、後述する空間及び物体規定プログラム、物体取得
プログラム、移動位置指定プログラム、物体移動プログ
ラム、自己方向調整プログラム、空間方向調整プログラ
ム等である。
【0029】次に、上記プログラムについて説明する。 まず、三次元空間表示システムにおいて表示映像上
の物体移動を可能にするため、予め空間及び物体規定プ
ログラムが記憶設定されている(図3)。
【0030】このプログラムでは、視点データ等をふま
えて、三次元空間の全体をワールド座標系(X,Y,
Z)で規定すると同時に、三次元空間の任意方向、例え
ば絶対的上方向を指向するベクトルUを保持する。ま
た、スクリーンには、注視点tを原点として二次元座標
系が設定されている(図6参照)。
【0031】そして、三次元空間における個々の物体を
ローカル座標系(x,y,z)で規定して、当該物体の
特徴点を定める。特徴点は例えば、ローカル座標の原
点、物体の頂点、ローカル座標系の座標軸の中点など任
意に定めることが可能である。かかる特徴点に対しては
ワールド座標系の原点から指定ベクトルQが生成されて
おり、例えば任意の物体Aを取得することは、物体Aを
規定するローカル座標系とその指定ベクトルQaを取得
することと同値である。
【0032】さらに、物体自体の法線方向で上下を規定
するベクトルαと三次元空間の上方向を指向するよう物
体の上方向を規定するベクトルβを、ローカル座標系で
規定し当該物体に保持させる。このベクトルα、βは、
例えばローカル座標系のz軸方向をベクトルα、y軸方
向をベクトルβとして定める。
【0033】また、三次元空間を表すワールド座標系に
おいて、それぞれの物体は一つ又は複数個の構成面で形
成され、この構成面は複数の構成点で形成される。この
各構成点は、それぞれ構成点が包含される構成面及びか
かる構成面によって形成される物体に対応して記憶され
ている。
【0034】 物体取得プログラムは、三次元空間で
物体を取得する際に起動するもので、以下のようなもの
である。
【0035】まず、マウスのポインタなどで二次元映像
上で指定された物体A上の任意点aを認識し、その表示
スクリーンに設定された二次元座標を決定して保持す
る。
【0036】ここで任意ではあるが、いわゆるピッキン
グ処理を行うようプログラムすると、既存の高速演算処
理装置の利用が可能となり効率的である。ピッキング処
理では、三次元空間における任意物体の構成面上にある
構成点の三次元座標を、二次元座標に連続的に変換して
変換点の二次元座標を取得して記憶保持し、これを上記
任意点aの二次元座標を比較して、同一の二次元座標値
となる点の三次元座標値を記憶保持することで、任意点
aが示す変換点群a1〜an(三次元座標値)を決定す
る。かかる変換点群a1〜anは、任意物体の構成面に
包含される構成点であるから、変換点群a1〜anの取
得によって、変換点群a1〜anに対応する構成面群F
1〜Fnが認識され、この構成面群が記憶保持される。
ピッキング処理では、例えば特開平7−73344号の
技術を応用できる。尚、ピッキング処理を行わない場合
は、任意物体の全ての構成面について後述の交点演算を
行うこととなる。
【0037】その後、予め決められた視点Eから任意点
aを通る指示ベクトルLを演算生成して記憶保持する
(図4、図5)。具体的な演算プログラムは以下の如く
である。
【0038】前提として表示装置4のスクリーンは、基
準となる視点座標Pe、注視点座標Pt、鉛直ベクトル
Sh(ワールド座標系の座標)で表し、視点とスクリー
ンの距離を単位長さと仮定して処理する。また、注視点
座標Ptを原点として、スクリーンには二次元座標が設
定されている。尚、視点座標Pe、注視点座標Pt、鉛
直ベクトルShは予め記憶装置2に記憶設定されている
(図5)。
【0039】視点からスクリーン中心への視線ベクトル
Lvは、視点ベクトルPe、注視点ベクトルPtによりL
v=Pt−Peで表すことができ、Lvの単位ベクトルLv
uは、Lvu=Lv/│Lv│で表せる。このLvuを用い
て、スクリーン中心からスクリーン右端部、上端部への
ベクトルLr、Luを計算する。Lrは長さH・tan(横画
角/2)で鉛直ベクトルShと垂直なベクトルであり
(Hは視点Eと注視点t間の距離)、Luは長さH・tan
(縦画角/2)で鉛直ベクトルと平行なベクトルであ
る。LrおよびLuは以下の式で表される。
【0040】
【数1】
【0041】そして、マウスが指示する任意点aをスク
リーンの二次元座標(mx,my)とすると、任意点a
のスクリーンの原点からの三次元位置ベクトルMは以下
のように表される。
【0042】
【数2】
【0043】従って、視点Eからスクリーン上の任意点
aまでの指示ベクトルLは、以下の式で表せる。 L=Lvu+M ‥‥‥‥‥(1)
【0044】尚、上述の三次元空間表示システムは、基
準となる視点データ等により二次元映像を射影変換する
ことで表示されており、この射影変換過程の逆の過程を
求め任意点aの逆射影変換を行い、指示ベクトルLを得
ることが可能である。即ち、三次元から二次元への変換
関数の逆変換関数を用いて、視点からの奥行き方向のみ
が変数成分となる三次元の指示ベクトルLを得てもよ
い。
【0045】その後、ピッキング処理により取得した構
成面群F1〜Fnと指示ベクトルLとの交点演算を行っ
て、その交点群f1〜fnを取得して保持する。これ
は、以下のプログラムで行う。
【0046】まず、三次元空間に存在する面番号F(i):
i=1〜nの構成面の、それぞれの面方程式を演算して
作成する。そのため、面番号F(i)を構成する3点のワ
ールド座標系の座標値Pfa,Pfb,Pfcを利用して、以
下のベクトルを得る。 Vfa=Pfa−Pfb Vfb=Pfb−Pfc
【0047】上記2式のベクトルを用いて、外積(Vfa
・Vfb)により面法線ベクトルVfnを計算すると、Vfn
=Vfa・Vfb となる。尚、前記座標値は順番を設定さ
れており、面F(i)の表裏を区別して面法線ベクトルVf
nは得られる。これを用いて、三次元中の平面を表す方
程式を決定する。例えば下記のヘッセの標準形で表す。 FNX・x+FNY・y+FNZ・z+C=0
【0048】ここで、FNX、FNY、FNZは先ほど
求めた面法線ベクトルVfnの方向余弦であり、Cはワー
ルド座標系の原点から平面へ降ろした垂線の長さであ
る。ここでCは、面番号F(i)を構成する3点の座標の
うちの任意の1点を利用して上式に代入することにより
求めることができる。
【0049】一方、視点Eからマウスが指し示す三次元
物体上の任意点aへの直線Lm、即ち、視点Eを通って
指示ベクトルLに沿う直線方程式Lmは、
【0050】
【数3】
【0051】と表される。ここで、Lx、Ly、Lzは指
示ベクトルLのベクトル要素(方向余弦)であり、Pe
x、Pey、Pezは直線Lmが通過する視点座標PeのX方
向、Y方向、Z方向の座標値である。
【0052】そして、上記の平面方程式と直線方程式を
連立して演算し、面番号F(i)の表現する平面と指示ベ
クトルLに沿う直線Lmの交点を求める。即ち、上記2
式の連立方程式の解 IS(i)=fi(i=1〜n)を得
て、交点群f1〜f2を取得する(図4)。
【0053】最後に、交点群f1〜fnと視点Eとの直
線距離をそれぞれ計算して最短距離の最適な交点f1を
求め、最適点f1に対応する物体Aを取得して保持す
る。具体的には、以下のプログラムで行う。
【0054】IS(i)と視点Peとの直線距離を以下の演
算で求める。 Length(i)=|IS(i)−Pe| i=1〜n
【0055】最適点f1はLength(i)のうち、利用する
のに最適の点を選ぶが、一般的には視点Eに最も近い点
を選択する。このためには、min(Length(i))を表すf1
を最適点とすればよい。図5の例では、交点f1とf2
の直線距離K1、K2の内、短い距離K1を有するf1
が最適点となる。尚、必要に応じてmin(Length(i))以外
の点を選択し、これを最適点とすることも可能である。
このような場合は、これら最適点に対応して任意物体の
構成面や任意物体が選択される。
【0056】尚、物体Aを取得する方法は上記に限定さ
れず、予め決まっている物体Aを後述の指定位置に移動
する等してもよく、適宜である。
【0057】 移動位置指定プログラムは、物体Aの
移動する位置を指定するものであり、以下の如くであ
る。
【0058】まず、ここでも上述のピッキング処理を行
うと好適である。即ち、物体Aを再配置する物体B上の
任意点bを指定して決定し、三次元空間における任意物
体の構成面上にある構成点の三次元座標を、二次元座標
に連続的に変換して変換点の二次元座標を取得して記憶
保持し、これを上記任意点bの二次元座標を比較して、
同一の座標値となる点の三次元座標値を記憶保持するこ
とで、任意点bが示す変換点群b1〜bn(三次元座標
値)を決定する。該変換点群b1〜bnの取得によっ
て、対応する構成面G1〜Gnが認識され、この構成面
群が記憶保持される。尚、ピッキング処理を行わない場
合は、任意物体の全ての構成面について後述の交点演算
を行う。
【0059】その後、上述の物体取得プログラムと同様
に、予め決められた視点Eから任意点bを通る指示ベク
トルL’を演算生成し、該指示ベクトルL’と前記構成
面群G1〜Gnとの交点演算を行って交点群g1〜gn
を取得し、該交点群g1〜gnと視点Eとの直線距離を
計算して最短距離の交点g1を取得する。この最適な交
点g1は、点g1を構成点とする面G1に対応している
ことから直ちにG1を取得することができる。上記交点
g1、構成面G1は記憶保持され、物体B上の物体Aの
移動する位置が決定する。
【0060】 物体B上の位置を指定した後、物体移
動プログラムによって物体Aを指定位置の任意点bに移
動させる。
【0061】即ち、ワールド座標系における物体Aの特
徴点の座標値を上記の最適点g1に変更し、物体Aを規
定するローカル座標系に対する初期の指定ベクトルQ
を、指定ベクトルQ’とする。指定ベクトルをQ’とす
ることにより、物体Aを規定するローカル座標系、即ち
物体Aは最適点g1の位置に移動する(図3参照)。
【0062】 物体Aの移動後は、物体Aの自己方向
調整プログラムで物体A自体の方向調整を行う。これ
は、物体Aの配置に際して物体Bの向きに合わせるもの
で、通常の機能的目的を達成するために必要である。具
体的には以下の処理を行う(図7)。
【0063】まず、物体Bの構成面G1において最適点
g1から法線方向の法線ベクトルγを生成する。即ち、
最適点g1を算出する際に用いた三次元空間における平
面方程式から、上下方向を規定した最適点g1における
法線ベクトルγを演算して保持する。法線ベクトルγの
方向は、構成面G1において物体Bの内側から外方向に
向くようにする。これは、上記の面法線ベクトルVfnの
決定と同様に定まる。
【0064】一方、ローカル座標系で規定される物体A
は、物体A自体の法線方向でその上下を規定するベクト
ルαを有することから、このベクトルαと法線ベクトル
γの数値情報を比較して、ベクトルαの方向を法線ベク
トルγに変換する。これにより、物体Aは構成面G1上
で法線方向で上下正しく配置される。
【0065】上記処理により、例えば映像上の机の上面
に対する灰皿の配置、天井に対する照明装置の配置、壁
に対する時計の配置など、三次元物体の方向を機能目的
に合わせることが可能となる。
【0066】 空間方向調整プログラムは、例えば時
計の文字盤の12時方向を合わせて壁、立面、斜面に取
り付ける場合や、花を日光の方向に向かせるなど、物体
を所望方向に向かせて配置することに意味がある場合、
所望方向と物体Aの方向を合致させるものである。ここ
では、「所望方向」の例として、三次元空間の絶対的上
方向と物体Aの上方向を合致させる場合について説明す
る。
【0067】この処理は、物体Aを構成面G1の法線方
向に合わせて配置する際、物体Aは法線軸(法線ベクト
ルγ=ベクトルα方向)に対して回転の自由度を有する
から、物体Aの「上」が三次元空間の「上」を向くよう
に前記自由度を確定することにより行う。これは以下の
如く行う(図7)。
【0068】前提として、ローカル座標系で規定される
物体Aは、法線方向(法線ベクトルγ=ベクトルα方
向)を回転軸とし、回転の自由度は任意に設定されてい
る。そして、物体Aは上述の如く、三次元空間における
上方向を指向するよう規定されるベクトルβを保持して
いる。一方、ワールド座標系で規定される三次元空間で
絶対的上方向を指向するベクトルUが、予め記憶保持さ
れている。
【0069】そして、ベクトルUをローカル座標系へ変
換後に物体Aの回転面へ射影し、射影ベクトルUljとベ
クトルβのなす角度を比較して、当該角度が最小となる
ベクトルβとその角度を決定して、ベクトルβの回転方
向の自由度を確定する。これにより、物体Aの回転方向
の自由度が確定する。
【0070】具体的な演算処理は以下のようになる。一
般にローカル座標系からワールド座標系への変換関数W
を以下のようになる。 W=W(L,Px,Py,Pz,Rx,Ry,Rz)
【0071】上式でLはローカル座標系の指定ベクト
ル、Px,Py,Pzはローカル座標系の座標値、Rx,R
y,Rzはローカル座標系での回転角を表す。予め配置す
る位置と法線方向が決定されている場合は、変換関数W
のパラメータPx,Py,Pz,Rx,Ry,Rzのうち、法
線に対する回転角を表すRx,Ry,Rzのいずれか一つ
は任意となり、他の5つの変数は確定する。即ち、一つ
の回転変数以外は定数化されるので、例えばW=W(R
z)のように表せる。
【0072】そこで、変換関数Wの逆変換関数W-1を予
め保持し、ワールド座標系の上方向ベクトルUを逆変換
関数W-1によりローカル座標系へと変換する。即ち、変
換ベクトルUl=W-1(U)となる。さらに、変換ベク
トルUlを、物体Aがベクトルαで規定される唯一回転
を許された回転面に対して射影変換を行う。即ち、射影
変換関数Jにより、射影ベクトルUljはUlj=J(U
l)となる。
【0073】一方、ベクトルβは回転面に対する回転角
度のみを変数として表せるから、かかる変数をθとする
と、ベクトルβはβ=β(θ)となる。変数θは、0度
から360度の間で予め決められた角度毎に数値設定さ
れ、後述の角度演算ではかかる数値毎に連続して変数θ
が代入され、角度演算を行う。
【0074】そして、射影ベクトルUljと物体Aのベク
トルβのなす角度を次式の角度演算関数Angleで演算す
る。 Angle(up)=Angle(Ulj,β(θ))
【0075】上記の角度Angle(up)をそれぞれ比較し
て、最小値 min(Angle(up))を取得し、変数θは最小
値 min(Angle(up))の数値に決定される。そして、こ
れにより、物体Aの回転方向の自由度が確定する。
【0076】尚、上記Angle(up)、θの結果は、ワール
ド座標系に変換して演算処理して求めてもよく、この場
合はベクトルβをワールド座標系に変換したβ’(法線
回転角度が変数)と、ワールド座標系の上方向ベクトル
Uのなす角度を最小にする関数で、以下のように示すこ
とができる。ANGLE(up)は定数である。 ANGLE(up)=MIN・ANGLE(U,β’)
【0077】次に、三次元空間表示システムにおける物
体移動装置を、実際に使用する場合の一例について説明
する(図6、図7)。
【0078】前提として、三次元空間表示システムのハ
ードウェア構成は、CPU、ROM、CRTディスプレ
イ、マウス等からなり、ROMには上記のプログラムが
記憶されている場合を想定する。CRTには仮想三次元
空間と仮想三次元物体が表示されている。
【0079】まず、マウスを使用して検出しようとする
物体A上の任意点a、例えば時計上の任意点にポインタ
を合わせ、マウスのボタンを押し下げる。マウスの押し
下げで任意点aの二次元座標が取得され、上述の物体取
得プログラムにより物体Aを検出する。このとき、対象
物体Aをハイライト表示するようにすると、操作が容易
になる。
【0080】その後、マウスを押し下げた状態を維持し
たまま、マウスを移動させてポインタを移動させる。ポ
インタの移動で移動前後のポインタ位置の差異を認識
し、移動後のポインタ位置の二次元座標に対応する三次
元座標を取得する。三次元座標の取得は上記移動位置指
定プログラム、物体移動プログラムで行う。即ち、ポイ
ンタ位置の差異を認識する毎に上述の交点演算を行い、
ポインタ位置の二次元座標に対応する三次元座標を取得
する。尚、ポインタ位置の差異の認識は、CPUの能力
が許せばCRTディスプレイの画素毎等で行うこともで
きる。
【0081】このとき、三次元座標を取得する毎に物体
Aを移動させ、好ましくは三次元座標を取得したポイン
タ位置毎に物体Aを一時的に表示できるようにし、物体
Aの移動の軌跡を認識可能とする。
【0082】そして、物体Aを配置しようとする物体B
の任意点bに、ポインタ位置が到達した際にマウスボタ
ンを開放し、物体Aを確定的に配置する。このとき、物
体Aは法線方向の上下と三次元空間の上方向を指向し
て、任意点bを構成点とする物体Bの任意面に配置され
る。これは上記自己方向調整プログラムと空間方向調整
プログラムで行われる。物体Aの配置が確定したときは
物体Aの表示が確定する。図8には、時計を壁面に配置
する例を示す。
【0083】尚、上述の三次元空間表示システムにおけ
る物体移動の手順はいずれも、ハードウェア、ソフトウ
ェアのどちらで行わせてもよく、また、複数のコンピュ
ータを利用してもよく、上記手順を実行させる機器の形
態で限定されるものではない。
【0084】
【発明の効果】本発明は上述の如くであるから、表示映
像上で仮想物体を移動し所望位置に配置する際の余分な
作業を省いて、操作を容易化することができる効果があ
る。これにより、かかる技術分野に精通していない一般
のユーザーにも利用させることが可能となる。
【図面の簡単な説明】
【図1】三次元空間表示システムのハードウェア構成
図。
【図2】三次元空間の物体を規定する各種データの概略
図。
【図3】三次元空間における規定関係を示す概念図。
【図4】指示ベクトルの概念図。
【図5】指示ベクトルの生成過程図。
【図6】オペレーション、演算処理、表示の概略相関
図。
【図7】表示映像上の三次元空間で時計を移動させる場
合の概念図。
【符号の説明】
1 演算処理装置 2 記憶装置 3 表示装置 4 入力装置

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】 三次元空間を二次元映像に変換して表示
    する三次元空間表示システムで、三次元映像における物
    体Aを取得する手段、物体B上の任意点bを指定し、視
    点Eから任意点bを通る直線を生成し、該直線と物体B
    の構成面との交点giを演算して、交点giを含む物体B
    の構成面Giを取得する手段、物体Aが予め有する特徴
    点を利用して物体Aを構成面Gi上に移動して配置する
    手段、を有する三次元空間表示システムにおける物体移
    動配置装置。
  2. 【請求項2】 三次元空間を二次元映像に変換して表示
    する三次元空間表示システムで、三次元映像における物
    体A上の任意点aを指定し、予め決められた視点Eから
    任意点aを通る直線を生成し、該直線と物体Aの構成面
    との交点fiを演算することで物体Aを取得する手段、
    物体B上の任意点bを指定し、視点Eから任意点bを通
    る直線を生成し、該直線と物体Bの構成面との交点gi
    を演算して、交点giを含む物体Bの構成面Giを取得す
    る手段、物体Aが予め有する特徴点を利用して物体Aを
    構成面Gi上に移動して配置する手段、を有する三次元
    空間表示システムにおける物体移動配置装置。
  3. 【請求項3】 物体Aを構成面Gi上に移動して配置す
    る際、構成面Giの法線上方向と三次元空間の所望方向
    を認識し、物体Aが有する方向をこれに合わせて配置す
    る手段、を有する請求項2記載の三次元空間表示システ
    ムにおける物体移動配置装置。
  4. 【請求項4】 三次元空間を二次元映像に変換して表示
    する三次元空間表示システムで、三次元映像における物
    体A上の任意点aを指定し、予め決められた視点Eから
    任意点aを通る直線を生成し、該直線と物体Aの構成面
    との交点fiを演算することで物体Aを取得する過程、
    物体B上の任意点bを指定し、視点Eから任意点bを通
    る直線を生成し、該直線と物体Bの構成面との交点gi
    を演算して、交点giを含む物体Bの構成面Giを取得す
    る過程、物体Aが予め有する特徴点を利用して物体Aを
    構成面Gi上に移動して配置する過程、を有する三次元
    空間表示システムにおける物体移動配置方法。
  5. 【請求項5】 物体Aを構成面Gi上に移動して配置す
    る際、構成面Giの法線上方向と三次元空間の所望方向
    を認識し、物体Aが有する方向をこれに合わせて配置す
    る過程、を有する請求項4記載の三次元空間表示システ
    ムにおける物体移動配置方法。
  6. 【請求項6】 三次元空間を二次元映像に変換して表示
    する三次元空間表示システムで、三次元映像における物
    体A上の任意点aを指定し、予め決められた視点Eから
    任意点aを通る直線を生成し、該直線と物体Aの構成面
    との交点fiを演算することで物体Aを取得する過程、
    物体B上の任意点bを指定し、視点Eから任意点bを通
    る直線を生成し、該直線と物体Bの構成面との交点gi
    を演算して、交点giを含む物体Bの構成面Giを取得す
    る過程、物体Aが予め有する特徴点を利用して物体Aを
    構成面Gi上に移動して配置する過程、を行わせるコン
    ピュータに読み取り可能な記録媒体。
  7. 【請求項7】 物体Aを構成面Gi上に移動して配置す
    る際、構成面Giの法線上方向と三次元空間の所望方向
    を認識し、物体Aが有する方向をこれに合わせて配置す
    る過程、を行わせる請求項6記載のコンピュータに読み
    取り可能な記録媒体。
JP09527698A 1998-03-24 1998-03-24 三次元空間表示システムにおける物体移動配置装置及び方法 Expired - Fee Related JP4109745B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP09527698A JP4109745B2 (ja) 1998-03-24 1998-03-24 三次元空間表示システムにおける物体移動配置装置及び方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP09527698A JP4109745B2 (ja) 1998-03-24 1998-03-24 三次元空間表示システムにおける物体移動配置装置及び方法

Publications (2)

Publication Number Publication Date
JPH11272892A true JPH11272892A (ja) 1999-10-08
JP4109745B2 JP4109745B2 (ja) 2008-07-02

Family

ID=14133261

Family Applications (1)

Application Number Title Priority Date Filing Date
JP09527698A Expired - Fee Related JP4109745B2 (ja) 1998-03-24 1998-03-24 三次元空間表示システムにおける物体移動配置装置及び方法

Country Status (1)

Country Link
JP (1) JP4109745B2 (ja)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002092651A (ja) * 1999-11-16 2002-03-29 Hitachi Kokusai Electric Inc 映像データ編集方法及び映像データ編集プログラムを記憶したコンピュータ読み取り可能な記憶媒体
JP2005049954A (ja) * 2003-07-29 2005-02-24 Lexer Research Inc オブジェクト表象端末装置、サーバ装置、オブジェクト表象プログラム、オブジェクト表象システム
JP2006134251A (ja) * 2004-11-09 2006-05-25 Ricoh Co Ltd 立体図形配置入力装置
JP2008257746A (ja) * 2008-06-26 2008-10-23 Nintendo Co Ltd 入力処理プログラムおよび入力処理装置
JP2009093666A (ja) * 2008-11-12 2009-04-30 Nintendo Co Ltd 入力処理プログラムおよび入力処理装置
JP2009093680A (ja) * 2009-01-22 2009-04-30 Nintendo Co Ltd 入力処理プログラムおよび入力処理装置
JP2009093681A (ja) * 2009-01-22 2009-04-30 Nintendo Co Ltd 入力処理プログラムおよび入力処理装置
JP2009116908A (ja) * 2009-02-20 2009-05-28 Nintendo Co Ltd 入力処理プログラムおよび入力処理装置
WO2018100620A1 (ja) * 2016-11-29 2018-06-07 株式会社Fuji 情報処理装置及び情報処理方法
JP2018120598A (ja) * 2014-06-27 2018-08-02 キヤノンマーケティングジャパン株式会社 情報処理装置、情報処理システム、その制御方法及びプログラム
WO2020029556A1 (zh) * 2018-08-09 2020-02-13 北京微播视界科技有限公司 自适应平面的方法、装置和计算机可读存储介质

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002092651A (ja) * 1999-11-16 2002-03-29 Hitachi Kokusai Electric Inc 映像データ編集方法及び映像データ編集プログラムを記憶したコンピュータ読み取り可能な記憶媒体
JP2005049954A (ja) * 2003-07-29 2005-02-24 Lexer Research Inc オブジェクト表象端末装置、サーバ装置、オブジェクト表象プログラム、オブジェクト表象システム
JP2006134251A (ja) * 2004-11-09 2006-05-25 Ricoh Co Ltd 立体図形配置入力装置
JP2008257746A (ja) * 2008-06-26 2008-10-23 Nintendo Co Ltd 入力処理プログラムおよび入力処理装置
JP2009093666A (ja) * 2008-11-12 2009-04-30 Nintendo Co Ltd 入力処理プログラムおよび入力処理装置
JP4724740B2 (ja) * 2008-11-12 2011-07-13 任天堂株式会社 入力処理プログラムおよび入力処理装置
JP2009093681A (ja) * 2009-01-22 2009-04-30 Nintendo Co Ltd 入力処理プログラムおよび入力処理装置
JP2009093680A (ja) * 2009-01-22 2009-04-30 Nintendo Co Ltd 入力処理プログラムおよび入力処理装置
JP2009116908A (ja) * 2009-02-20 2009-05-28 Nintendo Co Ltd 入力処理プログラムおよび入力処理装置
JP2018120598A (ja) * 2014-06-27 2018-08-02 キヤノンマーケティングジャパン株式会社 情報処理装置、情報処理システム、その制御方法及びプログラム
WO2018100620A1 (ja) * 2016-11-29 2018-06-07 株式会社Fuji 情報処理装置及び情報処理方法
CN109997133A (zh) * 2016-11-29 2019-07-09 株式会社富士 信息处理装置及信息处理方法
US11216151B2 (en) 2016-11-29 2022-01-04 Fuji Corporation Information processing device and information processing method
CN109997133B (zh) * 2016-11-29 2023-08-25 株式会社富士 信息处理装置及信息处理方法
WO2020029556A1 (zh) * 2018-08-09 2020-02-13 北京微播视界科技有限公司 自适应平面的方法、装置和计算机可读存储介质

Also Published As

Publication number Publication date
JP4109745B2 (ja) 2008-07-02

Similar Documents

Publication Publication Date Title
US5583977A (en) Object-oriented curve manipulation system
JP4077321B2 (ja) 表示制御装置
JP5609416B2 (ja) 情報処理装置、情報処理方法およびプログラム
US7640515B2 (en) System for dynamically mapping input device movement as a user's viewpoint changes
US5841440A (en) System and method for using a pointing device to indicate movement through three-dimensional space
JPH0668758B2 (ja) カーソル制御方法及び3次元図形表示装置
EP0743589B1 (en) Interactive image generation method and apparatus
JP4109745B2 (ja) 三次元空間表示システムにおける物体移動配置装置及び方法
US20200042284A1 (en) Augmented reality audio mixing
US6714198B2 (en) Program and apparatus for displaying graphical objects
JPH07271546A (ja) 画像表示制御方法
US5577176A (en) Method and apparatus for displaying a cursor along a two dimensional representation of a computer generated three dimensional surface
JP3559335B2 (ja) 三次元画像処理装置
JP2003256025A (ja) ロボット動作教示方法及び装置
Fleisch et al. Stroke-input methods for immersive styling environments
JPH03211686A (ja) コンピュータ制御デイスプレイ方法および装置
JPH06102919A (ja) ロボット軌道を教示するための方法
JP3413145B2 (ja) 仮想空間の編集方法及び仮想空間の編集装置
JPH0614336B2 (ja) 設計支援方法
WO1995011482A1 (en) Object-oriented surface manipulation system
JPH08249500A (ja) 3次元図形の表示方法
JPH06134684A (ja) ロボット軌道を教示するための方法
JPH0660164A (ja) 3次元形状処理システム
JPH0699376A (ja) ロボット軌道を教示するための方法及びシステム
JPH1097646A (ja) 三次元空間表示システムにおける三次元空間座標値の取得方法および装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050208

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20071106

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071113

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080109

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080311

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080407

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110411

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120411

Year of fee payment: 4

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120411

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120411

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120411

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120411

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130411

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140411

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees