JPH10334280A - 画像処理装置及び方法並びにプログラム記憶媒体 - Google Patents

画像処理装置及び方法並びにプログラム記憶媒体

Info

Publication number
JPH10334280A
JPH10334280A JP14778797A JP14778797A JPH10334280A JP H10334280 A JPH10334280 A JP H10334280A JP 14778797 A JP14778797 A JP 14778797A JP 14778797 A JP14778797 A JP 14778797A JP H10334280 A JPH10334280 A JP H10334280A
Authority
JP
Japan
Prior art keywords
vector
virtual
dimensional space
image processing
moving
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.)
Withdrawn
Application number
JP14778797A
Other languages
English (en)
Inventor
Naoyuki Nozaki
直行 野崎
Yuichi Arita
裕一 有田
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP14778797A priority Critical patent/JPH10334280A/ja
Publication of JPH10334280A publication Critical patent/JPH10334280A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Processing Or Creating Images (AREA)
  • Digital Computer Display Output (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

(57)【要約】 【課題】本発明は、マウスのようなポインティング手段
を使って、仮想三次元空間内の任意の位置に物体を移動
させることができるようにする画像処理装置の提供を目
的とする。 【解決手段】仮想三次元空間に設定される平面に従っ
て、ポインティング手段の指す仮想三次元空間上の始点
位置と、それから移動するポインティング手段の指す動
的位置を取得する取得手段14と、物体の移動基点をベ
クトル開始点とする始点位置と動的位置との規定する移
動ベクトルと、物体の移動基点を中心とする仮想球とそ
の移動ベクトルの先端とで規定される2つの楕円軌跡と
をディスプレイ画面に表示する表示手段13と、動的位
置が楕円軌跡上を移動するときに、その移動量に応じて
移動ベクトルの極座標角度を変更することで、移動ベク
トルの移動方向を決定する決定手段15とを備えるよう
に構成する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、計算機上に設定し
た仮想三次元空間内で表現される物体の移動処理や回転
処理を実行する画像処理装置及び方法と、その画像処理
装置を実現するプログラムが記憶されるプログラム記憶
媒体とに関し、特に、マウス等のような2次元入力装置
を使いつつ、仮想三次元空間内の任意の位置に物体を移
動させたり、任意の方向で物体を回転させることを実現
する画像処理装置及び方法と、その画像処理装置を実現
するプログラムが記憶されるプログラム記憶媒体とに関
する。
【0002】
【従来の技術】画像処理装置では、計算機上に仮想三次
元空間を設定して物体を表現し、ユーザの指示に応答し
て、この物体を移動したり回転したりする処理を行う。
【0003】従来の画像処理装置では、入力装置として
マウスを使い、仮想三次元空間に平面を設定(ディスプ
レイ画面の面を仮想三次元空間上に投影した面などが使
用される)して、マウスカーソルの位置をその平面に写
像することで、物体を移動させるという方法を採ってい
た。
【0004】すなわち、図17(a)に示すように、デ
ィスプレイ画面に物体を表示するときにあって、ディス
プレイ画面上でマウスカーソルが移動されると、図17
(b)に示すように、設定された平面上でのマウスカー
ルの指す位置に従って、その平面上で物体を移動させて
いくという方法を採っていた。
【0005】また、マウスとキーボード等のような他の
入力装置との操作を組み合わせることにより、仮想三次
元空間内の任意の位置に物体を移動させたり、任意の方
向で物体を回転させたりする方法を採るものもあった。
【0006】また、3自由度以上の入力機能を持つ三次
元マウスを入力装置として用いて、仮想三次元空間内の
任意の位置に物体を移動させたり、任意の方向で物体を
回転させたりする方法を採るものもあった。
【0007】また、ディスプレイ画面に仮想的な入力装
置を表示して、その仮想入力装置を操作させることによ
り、仮想三次元空間内の任意の位置に物体を移動させた
り、任意の方向で物体を回転させたりする方法を採るも
のもあった。
【0008】また、物体を回転させる場合には、図18
に示すように、物体の持つ固有の軸(通常、その物体を
設計したときの座標系)を回転軸として選択させて、そ
の回転軸を中心にして物体を回転させるという方法を採
るものもあった。
【0009】
【発明が解決しようとする課題】しかしながら、入力装
置としてマウスを使い、仮想三次元空間に設定された平
面上での位置をマウスカーソルの位置から算出すること
で、物体を移動させるという方法を採っていると、マウ
スが2自由度しか表現できないために、その平面の規定
する仮想三次元空間の位置にしか物体を移動させること
ができず、任意の位置に物体を移動させることができな
いという問題点があった。
【0010】これから、ユーザは、仮想三次元空間に設
定する平面を試行錯誤しながら変更していくことで、物
体を所望の位置に移動させていくという方法を採るしか
なかった。
【0011】また、マウスとキーボード等のような他の
入力装置との操作を組み合わせることにより、仮想三次
元空間内の任意の位置に物体を移動させたり、任意の方
向で物体を回転させたりするという方法を採っている
と、操作が複雑になるとともに、直感的に物体を移動さ
せたり回転させることができないという問題点があっ
た。
【0012】また、3自由度以上の入力機能を持つ三次
元マウスを入力装置として用いて、仮想三次元空間内の
任意の位置に物体を移動させたり、任意の方向で物体を
回転させたりするという方法を採っていると、三次元マ
ウスという特殊な入力装置を備えなくてはならないとい
う問題点があった。
【0013】また、ディスプレイ画面に仮想的な入力装
置を表示して、その仮想入力装置を操作させることによ
り、仮想三次元空間内の任意の位置に物体を移動させた
り、任意の方向で物体を回転させたりするという方法を
採っていると、仮想入力装置と物体の移動や回転方向と
の対応が直感的でなくなるために、操作が難しいという
問題点があった。
【0014】また、物体の持つ固有の軸を回転軸として
選択させて、その回転軸を中心にして物体を回転させる
という方法を採っていると、回転軸が固定となるため、
回転させたい方向を1回の操作で指示できないという問
題点があった。
【0015】本発明はかかる事情に鑑みてなされたもの
であって、マウス等のような2次元入力装置を使いつ
つ、仮想三次元空間内の任意の位置に物体を移動させた
り、任意の方向で物体を回転させることを実現する新た
な画像処理装置及び方法の提供と、その画像処理装置を
実現するプログラムが記憶される新たなプログラム記憶
媒体の提供とを目的とする。
【0016】
【課題を解決するための手段】図1に本発明の原理構成
を図示する。図中、1は本発明を具備する画像処理装置
であって、計算機上に設定した仮想三次元空間内で表現
される物体の移動処理や回転処理を実行するもの、2は
画像処理装置1の備えるディスプレイ装置、3は画像処
理装置1の備えるマウスのようなポインティング手段で
あって、ディスプレイ画面をポイントするものである。
【0017】画像処理装置1は、入出力制御手段10
と、物体情報管理手段11と、画像処理手段12と、表
示手段13と、取得手段14と、決定手段15と、回転
軸決定手段16とを備える。
【0018】この入出力制御手段10は、ディスプレイ
装置2/ポインティング手段3との間のインタフェース
処理を実行する。物体情報管理手段11は、画像処理の
対象となる物体の情報を管理する。画像処理手段12
は、物体情報管理手段11に管理される物体情報を画像
処理することで、物体を移動させたり回転させたりす
る。
【0019】表示手段13は、画像処理手段12の画像
処理結果をディスプレイ画面に表示したり、仮想球と、
ポインティング手段3により指定される移動ベクトル
(指定ベクトル)と、仮想球と移動ベクトル(指定ベク
トル)の先端とで規定される2つの楕円軌跡とをディス
プレイ画面に表示する。
【0020】取得手段14は、ポインティング手段3の
指す仮想三次元空間上の始点位置を取得するとともに、
その始点位置から移動するポインティング手段3の指す
仮想三次元空間上の動的位置を取得したり、ポインティ
ング手段3の指す物体表面上の表面位置を取得するとと
もに、その表面位置から移動するポインティング手段3
の指す仮想三次元空間上の動的位置を取得する。
【0021】決定手段15は、物体の移動方向を決定す
る。回転軸決定手段16は、物体の回転軸を決定する。
ここで、本発明の画像処理装置1の持つ機能は具体的に
はプログラムで実現されるものであり、このプログラム
は媒体から提供され、データ処理装置にインストールさ
れてメモリ上で動作することで、本発明の画像処理装置
1を実現することになる。
【0022】このように構成される本発明の画像処理装
置1では、物体を移動させるときには、取得手段14
は、仮想三次元空間に設定される平面に従って、ポイン
ティング手段3の指す仮想三次元空間上の始点位置を取
得するとともに、その始点位置から移動するポインティ
ング手段3の指す仮想三次元空間上の動的位置を取得す
る。
【0023】この取得処理を受けて、表示手段13は、
図2に示すように、物体の移動基点20aを中心とする
仮想球21と、その移動基点20aをベクトル開始点と
する始点位置と動的位置との規定する移動ベクトル22
aと、その仮想球21と移動ベクトル20aの先端とで
規定される2つの楕円軌跡23,24(動的位置の移動と
ともに変化することになる)とを表示する。
【0024】この表示処理を受けて、決定手段15は、
ポインティング手段3の指す動的位置が楕円軌跡23,2
4上を移動するときに、楕円軌跡23を1周するときに
は極座標角度θ(φ)が0から2π変化し、楕円軌跡2
4を1周するときには極座標角度φ(θ)が0から2π
変化することを想定して、初期状態にある移動ベクトル
22aの極座標角度θ,φを動的位置の移動量に応じ
て、 θ→θ+Δθ, φ→φ+Δφ と変更していくことで、任意の方向をとる移動ベクトル
22aの移動方向を最終的に決定する。
【0025】そして、この移動ベクトル22aの移動方
向の決定を受けて、画像処理手段12は、決定された移
動方向に物体を移動させ、表示手段13は、この物体の
移動をディスプレイ画面に表示する。このとき、画像処
理手段12は、移動ベクトル22aの大きさ(動的位置
が楕円軌跡23,24上を移動するときには変化しない)
に応じた移動速度に従って物体を移動させ、表示手段1
3は、この移動速度に応じて物体を移動表示する。
【0026】この構成を採るときに、表示手段13は、
動的位置が楕円軌跡23,24上を外れるときには、図3
に示すように、新たな移動ベクトル22aに従って、仮
想球21及び楕円軌跡23,24を新たに表示していくよ
うに処理する。
【0027】また、このように構成される本発明の画像
処理装置1では、物体を回転させるときには、取得手段
14は、ポインティング手段3の指す物体表面上の表面
位置を取得するとともに、その表面位置で物体と交差す
る形で設定される仮想三次元空間の平面に従って、その
表面位置から移動するポインティング手段3の指す仮想
三次元空間上の動的位置を取得する。
【0028】この取得処理を受けて、表示手段13は、
図2に示すように、表面位置20bを中心とする仮想球
21と、その表面位置20bをベクトル開始点とする表
面位置20bと動的位置との規定する指定ベクトル22
bと、その仮想球21と指定ベクトル20bの先端とで
規定される2つの楕円軌跡23,24(動的位置の移動と
ともに変化することになる)とを表示する。
【0029】この表示処理を受けて、決定手段15は、
ポインティング手段3の指す動的位置が楕円軌跡23,2
4上を移動するときに、楕円軌跡23を1周するときに
は極座標角度θ(φ)が0から2π変化し、楕円軌跡2
4を1周するときには極座標角度φ(θ)が0から2π
変化することを想定して、初期状態にある指定ベクトル
22bの極座標角度θ,φを動的位置の移動量に応じ
て、 θ→θ+Δθ, φ→φ+Δφ と変更していくことで、任意の方向をとる指定ベクトル
22bの方向を決定する。
【0030】この指定ベクトル22bの方向の決定を受
けて、回転軸決定手段16は、図4に示すように、決定
手段15により決定される指定ベクトル22bと、表面
位置20bと物体の回転中心点25との規定するベクト
ル26との外積(平面Pに直立するベクトルを生成す
る)から、回転中心点25を通る物体の回転軸27を決
定する。このとき、表示手段13は、この決定された回
転軸27をディスプレイ画面に表示する。
【0031】そして、この物体の回転軸の決定を受け
て、画像処理手段12は、決定された回転軸27を中心
にして物体を移動させ、表示手段13は、この物体の回
転をディスプレイ画面に表示する。このとき、画像処理
手段12は、指定ベクトル22bの大きさ(動的位置が
楕円軌跡23,24上を移動するときには変化しない)に
応じた回転速度に従って物体を回転させ、表示手段13
は、この回転速度に応じて物体を回転表示する。
【0032】この構成を採るときに、表示手段13は、
動的位置が楕円軌跡23,24上を外れるときには、図3
に示すように、新たな指定ベクトル22bに従って、仮
想球21及び楕円軌跡23,24を新たに表示していくよ
うに処理する。
【0033】このように、本発明の画像処理装置1によ
れば、2自由度の入力機能を持つマウスのようなポイン
ティング手段3を使用し、簡単な操作により、物体を仮
想三次元空間内で自由に移動させることができるように
なる。
【0034】そして、2自由度の入力機能を持つマウス
のようなポインティング手段3を使用し、簡単な操作に
より、物体を仮想三次元空間内で自由に回転させること
ができるようになる。
【0035】更に、計算機の標準的な入力装置であるマ
ウスのみを使うことで、特定の環境に依存しない操作性
を実現できるようになる。更に、移動方向や回転軸を表
示することで、直感的な操作を可能にしている。更に、
移動速度や回転速度についても簡単に設定できるように
なる。
【0036】
【発明の実施の形態】以下、実施の形態に従って本発明
を詳細に説明する。図5に、本発明を具備する画像処理
装置1の一実施例を図示する。
【0037】この実施例に示す画像処理装置1は、計算
機上に設定した仮想三次元空間内で表現される物体の移
動処理や回転処理を実行するために、ユーザとの対話装
置となるディスプレイ装置2及びマウス3aと、移動処
理や回転処理の対象となる物体の情報を格納する物体情
報ファイル30と、物体の移動方向を決定する移動方向
決定プログラム31と、物体の回転軸を決定する回転軸
決定プログラム32と、移動方向決定プログラム31の
決定した移動方向に従って物体の移動処理を実行した
り、回転軸決定プログラム32の決定した回転軸に従っ
て物体の回転処理を実行する移動回転プログラム33と
を備える。
【0038】ここで、移動方向決定プログラム31や回
転軸決定プログラム32や移動回転プログラム33は、
媒体から提供されてメモリ上に展開されることになる。
図6及び図7に、移動方向決定プログラム31の実行す
る処理フローの一実施例、図8及び図9に、回転軸決定
プログラム32の実行する処理フローの一実施例、図1
0に、移動回転プログラム33の実行する処理フローの
一実施例を図示する。次に、これらの処理フローに従っ
て、本発明について詳細に説明する。
【0039】最初に、物体の移動処理について説明す
る。移動方向決定プログラム31は、ユーザから物体の
移動要求が発行されると、図6の処理フローに示すよう
に、先ず最初に、ステップ1で、仮想三次元空間に平面
を設定するとともに、ユーザと対話することで移動対象
となる物体を選択する。
【0040】このとき設定する平面としては、どのよう
なものであってもよく、例えば、図11に示すように、
ディスプレイ画面の面(図中に示すα面)を仮想三次元
空間上に投影することで設定(図中に示すβ面)する。
また、この平面の設定処理は、移動方向決定プログラム
31が行うのではなくて、予め設定しておく構成を採る
ことも可能である。
【0041】続いて、ステップ2で、ユーザにより指定
されるマウスカーソルの指す位置を始点位置として取得
し、続くステップ3で、ステップ1で設定した平面に従
って、その始点位置の仮想三次元空間上の座標を計算す
る。すなわち、図11で示すように、始点位置としてデ
ィスプレイ画面上のA点(X0,0)が指定されると、ス
テップ1で設定した平面に従って、そのA点に対応付け
られるその平面上のa点(x0,0,0)を求めるのであ
る。
【0042】続いて、ステップ4で、ユーザにより始点
位置に続けて指定されるマウスカーソルの指す位置を動
的位置として取得し、続くステップ5で、ステップ1で
設定した平面に従って、その動的位置の仮想三次元空間
上の座標を計算する。すなわち、図11で示すように、
動的位置としてディスプレイ画面上のB点(X1,1)が
指定されると、ステップ1で設定した平面に従って、そ
のB点に対応付けられるその平面上のb点(x1,1,
1)を求めるのである。
【0043】続いて、ステップ6で、ステップ3で計算
した始点位置の仮想三次元空間上の座標と、ステップ5
で計算した動的位置の仮想三次元空間上の座標とから、
その始点位置と動的位置の規定するベクトルVを計算し
て、その極座標角度の初期値を求める。
【0044】すなわち、ステップ3で計算した始点位置
の仮想三次元空間上の座標(x0, 0,0)と、ステップ
5で計算した動的位置の仮想三次元空間上の座標(x1,
1,1)とから、 ベクトルV=(x1 −x0,1 −y0,1 −z0) を求めることで、このベクトルVの持つ極座標角度θ,
φの初期値を求めるのである。
【0045】このようにして、図12(a)に示すよう
に、極座標角度θ,φで定義されるベクトルVが求めら
れることになる。このとき求められるベクトルVの極座
標角度θ,φは、ベクトルVが任意の方向をとれるよう
にするためには、0〜2πの間の任意の角度をとる必要
がある。しかるに、マウス3aは2自由度しかなく、そ
れが指す位置はステップ1で設定した平面上に拘束され
ることから、このままでは、ベクトルVの極座標角度
θ,φは0〜2πの間の任意の角度をとることができな
い。
【0046】そこで、本発明では、図1ないし図3で説
明したように、ディスプレイ画面に、物体の移動基点2
0aを中心とする仮想球21と、その移動基点20aを
ベクトル開始点とする始点位置と動的位置との規定する
移動ベクトル22a(すなわち、ベクトルV)と、その
仮想球21と移動ベクトル22aの先端とで規定される
2つの楕円軌跡23,24とを表示する構成を採って、そ
の楕円軌跡23,24の上を動くマウスカーソルの移動量
に応じて、移動ベクトル22aの極座標角度θ,φを変
更していくことで、移動ベクトル22a(すなわち、ベ
クトルV)の極座標角度θ,φが0〜2πの間の任意の
角度をとれるようにする構成を採るのである。
【0047】これから、ステップ6でベクトルVを計算
すると、続いて、ステップ7で、図12(b)に示すよ
うに、ディスプレイ画面に、物体の移動基点20aを中
心とする仮想球21と、その移動基点20aをベクトル
開始点とするベクトルVと、その仮想球21とベクトル
Vの先端とで規定される2つの楕円軌跡23,24とを表
示する。ここで、仮想球21の大きさは、どのようなも
のであってもよく、例えば、ベクトルVの大きさを持つ
もので表示したり、ベクトルVの大きさに一定の値を乗
算した大きさを持つもので表示することになる。
【0048】続いて、ステップ8で、ユーザにより続け
て指定されるマウスカーソルの指す動的位置を取得し、
続くステップ9で、今回指定された動的位置が楕円軌跡
23,24の上を移動しているのか否かを判断する。
【0049】このステップ9の判断処理により、動的位
置が楕円軌跡23,24の上を移動していないことを判断
するときには、ベクトルVの極座標角度θ,φの変更で
はなくて、ベクトルVそのものの変更であることを判断
し、ステップ5に戻っていくことで、新たなベクトルV
に従って、新たな仮想球21及び楕円軌跡23,24を表
示していく。
【0050】一方、ステップ9で、動的位置が楕円軌跡
23,24の上を移動していることを判断するときには、
ベクトルVの極座標角度θ,φの変更である(従って、
ベクトルVの大きさは変化しない)と判断して、ステッ
プ10に進んで、動的位置の移動距離からベクトルVの
極座標角度θ,φの変化量を計算し、それに従って、ス
テップ6で計算したベクトルVの極座標角度θ,φを変
更することで、0〜2πの間の任意の角度をとるベクト
ルVの極座標角度θ,φを計算する。
【0051】すなわち、楕円軌跡23,24上での長軸距
離分の移動が角度“π”の変化を示すものと想定して、
動的位置の移動距離からベクトルVの極座標角度θ,φ
の変更量を計算することで、0〜2πの間の任意の角度
をとるベクトルVの極座標角度θ,φを決定するのであ
る。
【0052】続いて、ステップ11で、ディスプレイ画
面に、動的位置により指定されるベクトルVと、仮想球
21とそのベクトルVの先端とで更新される2つの楕円
軌跡23,24とを表示する。図13に示すように、動的
位置の移動に合わせて、動的位置が楕円軌跡A上を移動
するときには、もう一方の楕円軌跡Bが変更されていく
ので、これに合わせて、2つの楕円軌跡23,24を更新
しつつ表示していくのである。
【0053】続いて、ステップ12で、物体の移動方向
を示すベクトルVがユーザの希望する方向に到達したの
か否かを判断して、到達していないことを判断するとき
には、ステップ8に戻って、マウス3aの指す動的位置
を続いて取得し、到達したことを判断するときには、ス
テップ10で求めた極座標角度θ,φを持つベクトルV
を物体の移動方向として決定して処理を終了する。
【0054】このようにして、移動方向決定プログラム
31は、マウス3aの動きに従って、物体の移動方向を
示すベクトルVを取得すると、物体の移動基点20aを
中心とする仮想球21と、その移動基点20aをベクト
ル開始点とするベクトルVと、その仮想球21と移動ベ
クトル22aの先端とで規定される2つの楕円軌跡2
3,24とを表示する構成を採って、図7の処理フローに
示すように、動的位置がその2つの楕円軌跡23,24の
上を動くのか否かを判断して、軌跡上を動くことを判断
するときには、動的位置の移動量に合わせてベクトルV
の極座標角度を更新し、軌跡を外れることを判断すると
きには、ベクトルVを新規に作り直していくことで、0
〜2πの間の任意の角度をとるベクトルVの極座標角度
θ,φを決定するのである。
【0055】この移動方向決定プログラム31の処理に
従って、ユーザは、マウス3aを使ってディスプレイ画
面上をポイントしていくだけで、仮想三次元空間の任意
の方向をとる物体の移動方向を決定できるようになる。
【0056】この移動方向決定プログラム31による移
動方向の決定を受けて、移動回転プログラム33は、図
10(a)の処理フローに示すように、決定された移動
方向に向けて物体を移動していって、ユーザから停止要
求が発行されるときに、その物体の移動を停止していく
ことで、ユーザの希望する位置に物体を移動していくこ
とになる。
【0057】ここで、この移動処理にあたって、移動回
転プログラム33は、移動方向決定プログラム31が取
得したベクトルVの大きさに従って移動速度を決定して
いく構成を採ることがある。また、この処理フローのよ
うに、移動方向決定プログラム31が移動方向を決定し
てから物体を移動させていくのではなくて、移動方向の
決定途中に、それに合わせて物体を移動していく構成を
採ってもよい。
【0058】このようにして、本発明では、ディスプレ
イ画面に物体を表示するときにあって、図14(a)に
示すように、ディスプレイ画面上でマウス3aが移動す
ると、その移動に従って物体の移動方向を決定して、図
14(b)に示すように、その移動方向に物体を移動す
る構成を採ることで、任意の方向に物体を移動していく
構成を採るのである。
【0059】次に、物体の回転処理について説明する。
回転軸決定プログラム32は、ユーザから物体の回転要
求が発行されると、図8及び図9の処理フローに示すよ
うに、先ず最初に、ステップ1で、ユーザと対話するこ
とで回転対象となる物体を選択する。
【0060】続いて、ステップ2で、ユーザにより指定
されるマウスカーソルの指す位置に従って、物体の表面
位置を取得し、続くステップ3で、その物体表面位置の
仮想三次元空間上の座標を取得する。この取得処理は、
図11に示した視点からマウスカーソルの指す位置を見
て、その延長上にある物体の表面位置を求めることで実
行する。このようにして、図11に示したa点がマウス
カーソルの指す物体表面位置であるならば、その座標
(x0,0,0)が取得されることになる。
【0061】続いて、ステップ4で、ステップ2で取得
した物体の表面位置で交差する仮想三次元空間の平面を
設定する。このとき設定する平面としては、ステップ2
で取得した物体の表面位置で交差するものであれば、ど
のようなものであってもよく、例えば、図15に示すよ
うに、ディスプレイ画面の面(図中に示すα面)を仮想
三次元空間上に投影することで設定(図中に示すβ面)
する。ここで、図中に示す20bは、ステップ2で取得
された物体の表面位置を示している。
【0062】続いて、ステップ5で、ユーザにより表面
位置に続けて指定されるマウスカーソルの指す位置を動
的位置として取得し、続くステップ6で、ステップ4で
設定した平面に従って、その動的位置の仮想三次元空間
上の座標を計算する。すなわち、図11で示すように、
動的位置としてディスプレイ画面上のB点(X1,1)が
指定されると、ステップ4で設定した平面に従って、そ
のB点に対応付けられるその平面上のb点(x1,1,
1)を求めるのである。
【0063】続いて、ステップ7で、ステップ3で取得
した表面位置の仮想三次元空間上の座標と、ステップ6
で計算した動的位置の仮想三次元空間上の座標とから、
その表面位置と動的位置の規定するベクトルVを計算し
て、その極座標角度の初期値を求める。
【0064】すなわち、ステップ3で計算した始点位置
の仮想三次元空間上の座標(x0, 0,0)と、ステップ
6で計算した動的位置の仮想三次元空間上の座標(x1,
1,1)とから、 ベクトルV=(x1 −x0,1 −y0,1 −z0) を求めることで、このベクトルVの持つ極座標角度θ,
φの初期値を求めるのである。
【0065】続いて、ステップ8で、ステップ7で求め
たベクトルVと、ステップ3で取得した物体の表面位置
と物体の回転中心点との規定するベクトルとの外積を計
算することで、物体の回転軸を計算してこれを表示す
る。すなわち、図16に示すように、ステップ3で取得
した物体の表面位置20bをベクトル開始点とするベク
トルVと、その表面位置20bと物体の回転中心点25
との規定するベクトルとの外積を計算することで、回転
中心点25を通る物体の回転軸27を計算してこれを表
示するのである。
【0066】この物体の回転軸27はベクトルVから導
出されることになるが、任意の方向を向く回転軸27の
設定を可能とするためには、ベクトルVの極座標角度
θ,φは0〜2πの間の任意の角度をとる必要がある。
しかるに、マウス3aは2自由度しかなく、それが指す
位置はステップ4で設定した平面上に拘束されることか
ら、このままでは、ベクトルVの極座標角度θ,φは0
〜2πの間の任意の角度をとることができない。
【0067】そこで、本発明では、図1ないし図3で説
明したように、ディスプレイ画面に、物体の表面位置2
0bを中心とする仮想球21と、その表面位置20bを
ベクトル開始点とする表面位置20bと動的位置との規
定する指定ベクトル22b(すなわち、ベクトルV)
と、その仮想球21と指定ベクトル22bの先端とで規
定される2つの楕円軌跡23,24とを表示する構成を採
って、その楕円軌跡23,24の上を動くマウスカーソル
の移動量に応じて、指定ベクトル22bの極座標角度
θ,φを変更していくことで、指定ベクトル22b(す
なわち、ベクトルV)の極座標角度θ,φが0〜2πの
間の任意の角度をとれるようにする構成を採るのであ
る。
【0068】これから、ステップ8で、回転軸27を計
算すると、続いて、ステップ9で、ディスプレイ画面
に、この回転軸27を表示するとともに、物体の表面位
置20bを中心とする仮想球21と、その表面位置20
bをベクトル開始点とするベクトルVと、その仮想球2
1とベクトルVの先端とで規定される2つの楕円軌跡2
3,24とを表示する。ここで、仮想球21の大きさは、
どのようなものであってもよく、例えば、ベクトルVの
大きさを持つもので表示したり、ベクトルVの大きさに
一定の値を乗算した大きさを持つもので表示することに
なる。
【0069】続いて、ステップ10で、ユーザにより続
けて指定されるマウスカーソルの指す動的位置を取得
し、続くステップ11で、今回指定された動的位置が楕
円軌跡23,24の上を移動しているのか否かを判断す
る。
【0070】このステップ11の判断処理により、動的
位置が楕円軌跡23,24の上を移動していないことを判
断するときには、ベクトルVの極座標角度θ,φの変更
ではなくて、ベクトルVそのものの変更であることを判
断し、ステップ6に戻っていくことで、新たなベクトル
Vに従って、新たな仮想球21及び楕円軌跡23,24を
表示していく。
【0071】一方、ステップ11で、動的位置が楕円軌
跡23,24の上を移動していることを判断するときに
は、ベクトルVの極座標角度θ,φの変更である(従っ
て、ベクトルVの大きさは変化しない)と判断して、ス
テップ12に進んで、移動方向決定プログラム31の処
理と同様の処理に従って、動的位置の移動距離からベク
トルVの極座標角度θ,φの変化量を計算し、それに従
って、ステップ7で計算したベクトルVの極座標角度
θ,φを変更することで、0〜2πの間の任意の角度を
とるベクトルVの極座標角度θ,φを計算する。
【0072】続いて、ステップ13(図9の処理フロ
ー)で、極座標角度θ,φを更新したベクトルVと、表
面位置20bと物体の回転中心点25との規定するベク
トルとの外積を計算することで、回転中心点25を通る
物体の回転軸27を計算する。
【0073】続いて、ステップ14で、ディスプレイ画
面に、その計算した回転軸27と、動的位置により指定
されるベクトルVと、仮想球21とそのベクトルVの先
端とで更新される2つの楕円軌跡23,24とを表示す
る。
【0074】続いて、ステップ15で、物体の回転軸2
7がユーザの希望する方向に到達したのか否かを判断し
て、到達していないことを判断するときには、ステップ
10(図8の処理フロー)に戻って、マウス3aの指す
動的位置を続いて取得し、到達したことを判断するとき
には、ステップ13で求めた回転軸27を物体の回転軸
として決定して処理を終了する。
【0075】このようにして、回転軸決定プログラム3
2は、マウス3aの動きに従ってベクトルVを取得し
て、そのベクトルVから物体の回転軸27を決定する構
成を採るときにあって、移動方向決定プログラム31と
同様の構成に従って、ベクトルVが0〜2πの間にある
任意の極座標角度をとれるようにすることで、任意の方
向を向く物体の回転軸27を決定できるようにするので
ある。
【0076】この回転軸決定プログラム32の処理に従
って、ユーザは、マウス3aを使ってディスプレイ画面
上をポイントしていくだけで、仮想三次元空間の任意の
方向をとる物体の回転軸27を決定できるようになる。
【0077】この回転軸決定プログラム32による回転
軸27の決定を受けて、移動回転プログラム33は、図
10(b)の処理フローに示すように、決定された回転
軸27を中心にして物体を回転していって、ユーザから
停止要求が発行されるときに、その物体の回転を停止し
ていくことで、ユーザの希望する姿勢に物体を回転して
いくことになる。
【0078】ここで、この回転処理にあたって、移動回
転プログラム33は、回転軸決定プログラム32が取得
したベクトルVの大きさに従って回転速度を決定してい
く構成を採ることがある。また、この処理フローのよう
に、回転軸決定プログラム32が回転軸27を決定して
から物体を回転させていくのではなくて、回転軸27の
決定途中に、それに合わせて物体を回転していく構成を
採ってもよい。
【0079】図示実施例に従って本発明を説明したが、
本発明はこれに限定されるものではない。例えば、実施
例では、仮想球21についても表示する構成を採った
が、この仮想球21の表示については省略する構成を採
ってもよい。
【0080】
【発明の効果】以上説明したように、本発明の画像処理
装置によれば、2自由度の入力機能を持つマウスを使用
し、簡単な操作により、物体を仮想三次元空間内で自由
に移動させることができるようになる。
【0081】そして、2自由度の入力機能を持つマウス
を使用し、簡単な操作により、物体を仮想三次元空間内
で自由に回転させることができるようになる。更に、計
算機の標準的な入力装置であるマウスのみを使うこと
で、特定の環境に依存しない操作性を実現できるように
なる。更に、移動方向や回転軸を表示することで、直感
的な操作を可能にしている。更に、移動速度や回転速度
についても簡単に設定できるようになる。
【図面の簡単な説明】
【図1】本発明の原理構成図である。
【図2】本発明の説明図である。
【図3】本発明の説明図である。
【図4】本発明の説明図である。
【図5】本発明の一実施例である。
【図6】移動方向決定プログラムの実行する処理フロー
である。
【図7】移動方向決定プログラムの実行する処理フロー
である。
【図8】回転軸決定プログラムの実行する処理フローで
ある。
【図9】回転軸決定プログラムの実行する処理フローで
ある。
【図10】移動回転プログラムの実行する処理フローで
ある。
【図11】移動方向決定プログラムの処理の説明図であ
る。
【図12】移動方向決定プログラムの処理の説明図であ
る。
【図13】移動方向決定プログラムの処理の説明図であ
る。
【図14】移動回転プログラムの処理の説明図である。
【図15】回転軸決定プログラムの処理の説明図であ
る。
【図16】回転軸決定プログラムの処理の説明図であ
る。
【図17】従来技術の説明図である。
【図18】従来技術の説明図である。
【符号の説明】
1 画像処理装置 2 ディスプレイ装置 3 ポインティング手段 10 入出力制御手段 11 物体情報管理手段 12 画像処理手段 13 表示手段 14 取得手段 15 決定手段 16 回転軸決定手段

Claims (13)

    【特許請求の範囲】
  1. 【請求項1】 計算機上に設定した仮想三次元空間内で
    表現される物体の移動処理を実行する画像処理装置にお
    いて、 仮想三次元空間に設定される平面に従って、ディスプレ
    イ画面をポイントするポインティング手段の指す仮想三
    次元空間上の始点位置を取得するとともに、該始点位置
    から移動するポインティング手段の指す仮想三次元空間
    上の動的位置を取得する取得手段と、 物体の移動基点をベクトル開始点とする上記始点位置と
    上記動的位置との規定する移動ベクトルと、該移動基点
    を中心とする物体の仮想球と該移動ベクトルの先端とで
    規定される2つの楕円軌跡とをディスプレイ画面に表示
    する表示手段と、 上記動的位置が上記楕円軌跡上を移動するときに、その
    移動量に応じて上記移動ベクトルの極座標角度を変更す
    ることで、上記移動ベクトルの移動方向を決定する決定
    手段とを備えることを、 特徴とする画像処理装置。
  2. 【請求項2】 請求項1記載の画像処理装置において、 表示手段は、仮想球についても表示することを、 特徴とする画像処理装置。
  3. 【請求項3】 請求項1又は2記載の画像処理装置にお
    いて、 表示手段は、決定手段の決定する移動ベクトルの移動方
    向に従い、該移動ベクトルの大きさに応じた移動速度に
    従って物体を移動表示することを、 特徴とする画像処理装置。
  4. 【請求項4】 請求項1ないし3記載の画像処理装置に
    おいて、 表示手段は、動的位置が楕円軌跡上を外れるときには、
    新たな移動ベクトルに従って仮想球及び楕円軌跡を新た
    に表示することを、 特徴とする画像処理装置。
  5. 【請求項5】 計算機上に設定した仮想三次元空間内で
    表現される物体の回転処理を実行する画像処理装置にお
    いて、 ディスプレイ画面をポイントするポインティング手段の
    指す物体表面上の表面位置を取得するとともに、該表面
    位置で物体と交差する形で設定される仮想三次元空間の
    平面に従って、該表面位置から移動するポインティング
    手段の指す仮想三次元空間上の動的位置を取得する取得
    手段と、 上記表面位置をベクトル開始点とする上記表面位置と上
    記動的位置との規定する指定ベクトルと、上記表面位置
    を中心とする仮想球と該指定ベクトルの先端とで規定さ
    れる2つの楕円軌跡とをディスプレイ画面に表示する表
    示手段と、 上記動的位置が上記楕円軌跡上を移動するときに、その
    移動量に応じて、上記指定ベクトルの極座標角度を変更
    することで、上記指定ベクトルの方向を決定する決定手
    段と、 上記指定ベクトルと、上記表面位置と物体の回転中心点
    との規定するベクトルとから、物体の回転軸を決定する
    回転軸決定手段とを備えることを、 特徴とする画像処理装置。
  6. 【請求項6】 請求項5記載の画像処理装置において、 表示手段は、仮想球についても表示することを、 特徴とする画像処理装置。
  7. 【請求項7】 請求項5又は6記載の画像処理装置にお
    いて、 表示手段は、回転軸決定手段の決定する回転軸を表示す
    ることを、 特徴とする画像処理装置。
  8. 【請求項8】 請求項5ないし7記載の画像処理装置に
    おいて、 表示手段は、回転軸決定手段の決定する回転軸に従い、
    該指定ベクトルの大きさに応じた回転速度に従って物体
    を回転表示することを、 特徴とする画像処理装置。
  9. 【請求項9】 請求項5ないし8記載の画像処理装置に
    おいて、 表示手段は、動的位置が楕円軌跡上を外れるときには、
    新たな指定ベクトルに従って仮想球及び楕円軌跡を新た
    に表示することを、 特徴とする画像処理装置。
  10. 【請求項10】 計算機上に設定した仮想三次元空間内
    で表現される物体の移動処理を実行する画像処理方法に
    おいて、 仮想三次元空間に設定される平面に従って、ディスプレ
    イ画面をポイントするポインティング手段の指す仮想三
    次元空間上の始点位置を取得するとともに、該始点位置
    から移動するポインティング手段の指す仮想三次元空間
    上の動的位置を取得する第1の処理過程と、 物体の移動基点をベクトル開始点とする上記始点位置と
    上記動的位置との規定する移動ベクトルと、該移動基点
    を中心とする物体の仮想球と該移動ベクトルの先端とで
    規定される2つの楕円軌跡とをディスプレイ画面に表示
    する第2の処理過程と、 上記動的位置が上記楕円軌跡上を移動するときに、その
    移動量に応じて上記移動ベクトルの極座標角度を変更す
    ることで、上記移動ベクトルの移動方向を決定する第3
    の処理過程とを備えることを、 特徴とする画像処理方法。
  11. 【請求項11】 計算機上に設定した仮想三次元空間内
    で表現される物体の回転処理を実行する画像処理方法に
    おいて、 ディスプレイ画面をポイントするポインティング手段の
    指す物体表面上の表面位置を取得するとともに、該表面
    位置で物体と交差する形で設定される仮想三次元空間の
    平面に従って、該表面位置から移動するポインティング
    手段の指す仮想三次元空間上の動的位置を取得する第1
    の処理過程と、 上記表面位置をベクトル開始点とする上記表面位置と上
    記動的位置との規定する指定ベクトルと、上記表面位置
    を中心とする仮想球と該指定ベクトルの先端とで規定さ
    れる2つの楕円軌跡とをディスプレイ画面に表示する第
    2の処理過程と、 上記動的位置が上記楕円軌跡上を移動するときに、その
    移動量に応じて、上記指定ベクトルの極座標角度を変更
    することで、上記指定ベクトルの方向を決定する第3の
    処理過程と、 上記指定ベクトルと、上記表面位置と物体の回転中心点
    との規定するベクトルとから、物体の回転軸を決定する
    第4の処理過程とを備えることを、 特徴とする画像処理方法。
  12. 【請求項12】 計算機上に設定した仮想三次元空間内
    で表現される物体の移動処理を実行する画像処理装置を
    実現するプログラムが記憶されるプログラム記憶媒体で
    あって、 仮想三次元空間に設定される平面に従って、ディスプレ
    イ画面をポイントするポインティング手段の指す仮想三
    次元空間上の始点位置を取得するとともに、該始点位置
    から移動するポインティング手段の指す仮想三次元空間
    上の動的位置を取得する取得手段と、 物体の移動基点をベクトル開始点とする上記始点位置と
    上記動的位置との規定する移動ベクトルと、該移動基点
    を中心とする物体の仮想球と該移動ベクトルの先端とで
    規定される2つの楕円軌跡とをディスプレイ画面に表示
    する表示手段と、 上記動的位置が上記楕円軌跡上を移動するときに、その
    移動量に応じて上記移動ベクトルの極座標角度を変更す
    ることで、上記移動ベクトルの移動方向を決定する決定
    手段とを実現するプログラムが記憶されることを、 特徴とするプログラム記憶媒体。
  13. 【請求項13】 計算機上に設定した仮想三次元空間内
    で表現される物体の回転処理を実行する画像処理装置を
    実現するプログラムが記憶されるプログラム記憶媒体で
    あって、 ディスプレイ画面をポイントするポインティング手段の
    指す物体表面上の表面位置を取得するとともに、該表面
    位置で物体と交差する形で設定される仮想三次元空間の
    平面に従って、該表面位置から移動するポインティング
    手段の指す仮想三次元空間上の動的位置を取得する取得
    手段と、 上記表面位置をベクトル開始点とする上記表面位置と上
    記動的位置との規定する指定ベクトルと、上記表面位置
    を中心とする仮想球と該指定ベクトルの先端とで規定さ
    れる2つの楕円軌跡とをディスプレイ画面に表示する表
    示手段と、 上記動的位置が上記楕円軌跡上を移動するときに、その
    移動量に応じて、上記指定ベクトルの極座標角度を変更
    することで、上記指定ベクトルの方向を決定する決定手
    段と、 上記指定ベクトルと、上記表面位置と物体の回転中心点
    との規定するベクトルとから、物体の回転軸を決定する
    回転軸決定手段とを実現するプログラムが記憶されるこ
    とを、 特徴とするプログラム記憶媒体。
JP14778797A 1997-06-05 1997-06-05 画像処理装置及び方法並びにプログラム記憶媒体 Withdrawn JPH10334280A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP14778797A JPH10334280A (ja) 1997-06-05 1997-06-05 画像処理装置及び方法並びにプログラム記憶媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP14778797A JPH10334280A (ja) 1997-06-05 1997-06-05 画像処理装置及び方法並びにプログラム記憶媒体

Publications (1)

Publication Number Publication Date
JPH10334280A true JPH10334280A (ja) 1998-12-18

Family

ID=15438197

Family Applications (1)

Application Number Title Priority Date Filing Date
JP14778797A Withdrawn JPH10334280A (ja) 1997-06-05 1997-06-05 画像処理装置及び方法並びにプログラム記憶媒体

Country Status (1)

Country Link
JP (1) JPH10334280A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6901356B1 (en) 1998-03-20 2005-05-31 Fujitsu Limited Simulation apparatus, simulation method and computer-readable recording medium having simulation program recorded thereon as well as designing supporting apparatus
US7911468B2 (en) 2005-03-02 2011-03-22 Nintendo Co., Ltd. Storage medium storing a program for controlling the movement of an object
CN112255869A (zh) * 2020-11-03 2021-01-22 成都景中教育软件有限公司 一种基于参数的三维图形动态投影实现方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6901356B1 (en) 1998-03-20 2005-05-31 Fujitsu Limited Simulation apparatus, simulation method and computer-readable recording medium having simulation program recorded thereon as well as designing supporting apparatus
US7911468B2 (en) 2005-03-02 2011-03-22 Nintendo Co., Ltd. Storage medium storing a program for controlling the movement of an object
US8111258B2 (en) 2005-03-02 2012-02-07 Nintendo Co., Ltd. Information processing program and information processing apparatus
CN112255869A (zh) * 2020-11-03 2021-01-22 成都景中教育软件有限公司 一种基于参数的三维图形动态投影实现方法
CN112255869B (zh) * 2020-11-03 2021-09-14 成都景中教育软件有限公司 一种基于参数的三维图形动态投影实现方法

Similar Documents

Publication Publication Date Title
US20220300071A1 (en) Discrete and continuous gestures for enabling hand rays
US6762778B1 (en) Three dimensional graphical manipulator
US9619106B2 (en) Methods and apparatus for simultaneous user inputs for three-dimensional animation
JP3240156B2 (ja) 三次元作業域における目標に対する移動ビューポイント
US7568171B2 (en) Stroke-based posing of three-dimensional models
US6981229B1 (en) System for dynamically mapping input device movement as a user's viewpoint changes
JP2000242392A (ja) 動的な情報ディスプレイのためのコンピュータシステム及びその方法
JP3681958B2 (ja) 知識ベースポリモーフ分離可能ツールバー
US20040001110A1 (en) Push-tumble three dimensional navigation system
US10529145B2 (en) Touch gestures for navigation and interacting with content in a three-dimensional space
JP6360509B2 (ja) 情報処理プログラム、情報処理システム、情報処理方法、および情報処理装置
KR100348181B1 (ko) 동적인 정보 디스플레이를 위한 컴퓨터 시스템 및 그 방법
JPH10334280A (ja) 画像処理装置及び方法並びにプログラム記憶媒体
JPH1166351A (ja) 3次元仮想空間内部におけるオブジェクト動作制御方法および装置とオブジェクト動作制御プログラムを記録した記録媒体
JP3794509B2 (ja) 3次元パラメータ入力装置、3次元パラメータ入力方法及び画像処理装置
JPH08249500A (ja) 3次元図形の表示方法
KR102392675B1 (ko) 3차원 스케치를 위한 인터페이싱 방법 및 장치
US11429247B1 (en) Interactions with slices of medical data in augmented reality
JP3272794B2 (ja) 3次元図形処理装置
JPH06119430A (ja) 図形表示装置
CN115485734A (zh) 绘制三维草图的接口方法及装置
CN117666765A (zh) 属性设置控件的显示方法、装置、电子设备和介质
JPH10293864A (ja) 情報処理装置及び方法
CN117590928A (zh) 一种三维空间中的多窗口处理方法、设备及系统
CN117944031A (zh) 一种柔性机械臂的控制方法、柔性机械臂、设备及介质

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20040907