JP3672352B2 - 3次元立体配置編集方法及び3次元立体配置編集装置 - Google Patents
3次元立体配置編集方法及び3次元立体配置編集装置 Download PDFInfo
- Publication number
- JP3672352B2 JP3672352B2 JP09870195A JP9870195A JP3672352B2 JP 3672352 B2 JP3672352 B2 JP 3672352B2 JP 09870195 A JP09870195 A JP 09870195A JP 9870195 A JP9870195 A JP 9870195A JP 3672352 B2 JP3672352 B2 JP 3672352B2
- Authority
- JP
- Japan
- Prior art keywords
- solid
- dimensional
- moving plane
- editing
- parallel
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Processing Or Creating Images (AREA)
Description
【産業上の利用分野】
本発明は、3次元空間に配置された立体を2次元画面で表示する図形表示システムにおける3次元立体配置編集方法に関する。
【0002】
【従来の技術及び発明が解決しようとする課題】
3次元空間に配置された立体を2次元画面で表示する図形表示システムにおいては、配置された立体を移動及び回転させる場合や、立体を一部の方向又はすべての方向について拡大及び縮小させる場合等の編集を行う場合、ユーザがマウス等の指示装置を操作して画面に表示されるカーソルを移動させて指示を入力する。
【0003】
表示された立体を移動する第1の従来方法においては、正面図、側面図及び平面図の3面図を表示し、それぞれの画面上で画面に平行な移動操作を行い、各図における移動を合成して3次元の移動を行っていた。
しかし、この方法では、3次元空間において任意の方向に立体を移動させるためには3面図の内の少なくとも2図において操作を行う必要があるため、操作が煩雑である。また、最終的な3次元の移動は、各図における移動を合成して得られるため、移動方向及び移動量を直観的に認識するのが難しいという問題がある。しかも、3面図の各図は平行投影法によって作成されるが、平行投影法では3次元空間内の物体が増加した場合には、表示される立体に重なりが多く生じ、画面の理解が難しくなるという問題がある。
【0004】
表示された立体を移動する第2の従来方法においては、同様に3面図を用いるが、各図において移動ベクトルを入力し、対象となる立体を選択して移動させていた。
しかし、この方法では、移動方向を直感的に認識しにくいという問題がある。また、上記の第1の従来方法と同様の問題も有する。
【0005】
また、2次元画面に3次元空間に配置された立体を表示した状態で移動させることは、画面上で移動方向や移動量を特定することができないため、難しかった。
表示された立体を拡大あるいは縮小する従来方法においては、画面上でマウス等を用いて立体を指示し、マウスをクリックした状態で移動させるドラッグをすることによって相似拡大していた。
【0006】
しかし、この方法では、立体のタテ・ヨコ・高さ方向である3軸方向を独立して拡大・縮小操作ができないという問題があった。
表示された立体を回転する従来の第1の方法においては、画面上で立体を指示し、ドラッグすることによって、画面に向かって上下、あるいは左右方向の回転の2自由度で立体を回転させていた。
【0007】
しかし、この方法では、特定の軸について回転させるのが難しく、正確な回転量が入力しにくいという問題があった。
表示された立体を回転する従来の第2の方法においては、回転軸をあらかじめ3面図等で入力し、その軸のまわりにマウスドラッグによって立体を回転させていた。
【0008】
しかし、この方法では、回転軸の設定が難しいという問題があった。
表示された立体を回転する従来の第3の方法においては、個々の立体について最初から定義されている軸について、マウスドラッグによって立体を回転させていた。
しかし、この方法では、各立体について1種類の回転軸についての回転しかできず、所望の回転ができないという問題があった。
【0009】
表示された立体を回転する従来の第4の方法においては、画面に対して定まる特定の軸、例えば、画面に垂直な軸、画面に平行な水平軸、垂直軸について立体を回転させていた。
しかし、この方法では、斜めから見た透視図などでは、立体固有の軸に関する回転操作ができないという問題があった。
【0010】
本発明は、上記問題点に鑑みてなされたものであり、従来方法のような繁雑な作業を行うことなく、従来の2次元図面作成ツールと同様の直感的な操作で立体配置の編集作業が行なえるような3次元立体配置編集方法及び編集装置の実現を目的とする。
【0011】
【課題を解決するための手段】
本発明の3次元立体配置編集方法は、上記問題点を解決するため、編集対象として選択した立体について、その立体に外接する直方体の輪郭線を表示する。その上で編集内容を選択し、その輪郭線上を画面指示位置入力手段(マウス等)で指示し、操作することによって編集を行なえるようにする。このとき、選択された編集の内容と外接直方体のどの位置が指示されたかによって、編集時の基準となる不動辺又は不動点が自動的に設定されるようにする。
【0012】
編集内容として立体を回転させる操作を選択した時には、外接直方体の辺上を指示し、画面指示位置入力手段をドラッグ操作する。このとき、どの辺が指示されたかに応じて回転軸が定められ、その軸を中心にカーソルの操作に応じて立体が回転する。
編集内容として立体を拡大あるいは縮小させる操作を選択した時には、外接直方体の辺あるいは頂点上を指示し、カーソルをドラッグ操作する。このとき、どの辺あるいは頂点が指示されたかに応じて不動軸あるいは不動点が定められ、不動軸が定められた場合はその軸と直交する2方向の自由度に関し、立体が拡大・縮小される。一方、不動点が定められた場合はその点を中心として相似的に、画面位置指示手段の操作に応じて立体が拡大・縮小される。
【0013】
編集内容として立体を移動させる操作を選択した時には、外接直方体の辺あるいは立体そのものを指示し、画面指示位置入力手段をドラッグ操作することによる。移動方向については、あらかじめ移動平面方向を設定しておく。
本発明の第2の態様の3次元立体配置編集方法では、立体移動操作において、立体が移動する方向を移動平面方向として定義し、その向きを設定した上で、カーソルをドラッグ操作して立体をこの移動平面方向に移動させる。設定された移動平面方向は、3次元空間において平面方向を定義する2本の直交する直線(移動平面方向軸)と、それに直交する1本の直線によって表示される。前者と後者は別の色で表示することによって区別する。また、これら3本の直線は1点で交わるようにし、その1点が通常は画面指示位置入力手段による画面指示位置と一致するようにする。
【0014】
【作用】
本発明の第1の態様の3次元立体配置編集方法によれば、回転操作あるいは拡大・縮小操作において、いちいち回転軸あるいは拡大方向、拡大中心等を設定すること無く、外接直方体のどこを指示するかによって、編集操作時に回転軸あるいは不動点・不動軸を素早く選択できる。これにより操作性が向上する。
【0015】
本発明の第2の態様の3次元立体配置編集方法によれば、表示されている透視図の表示パラメタ(視点位置、注視方向、視野角等)によらず、任意の移動方向を設定して立体を移動させることができる。また、3本の軸表示によって、その方向を視覚的に容易に認識できる。
【0016】
【実施例】
図1は、本発明が適用される図形表示装置(コンピュータグラフィックシステム)の構成を示すブロック図である。本発明のコンピュータグラフィックシステムは、CPU1、バス2、メモリ3、外部記憶装置4、入力装置5、画面上位置入力装置6、表示装置7を備えるコンピュータシステム、およびその上で動作するプログラムによって実現できる。
【0017】
本発明の実行時には、プログラムはメモリ3上に配置され、CPU1がメモリ3上のプログラムを実行することによって本発明が実行される。本発明実行時のデータはメモリ3中に置かれ、データを保存する場合には外部記憶装置に保存される。
入力装置5としてはキーボード、画面上位置入力装置6としてはマウスあるいはタブレットを用いる。マウスあるいはタブレットは画面上の一点を指示入力するためのものであり、移動操作によって画面上の指示位置(カーソルを表示)を動かすことができるほか、ボタン操作によって入力確定を行うことができる。
【0018】
図2は、図1の計算機システムの外観図である。参照番号10は、コンピュータであり、内部にCPU1、バス2、メモリ3、外部記憶装置4を有している。入力装置としてはキーボード5が、表示装置としてはCRTディスプレイ7が使用される。本実施例では、画面上位置入力装置としてマウス6を使用する。
図3と図4は、図1の計算機システムを用いて実現した本発明の実施例の3次元立体配置編集装置の機能ブロック図である。
【0019】
図3と図4に示すように、本実施例の3次元立体配置編集装置は、指示入力検出手段11と、画面指示位置検出手段12と、ローカル座標系方向算出手段14と、表示パラメータ算出手段15と、立体選択手段31と、立体編集処理手段32と、ローカル座標系方向記憶手段20と、表示パラメータ記憶手段21と、立体配置データ算出手段22と、画面指示位置表示手段33と、補助線表示手段24と、直方体輪郭線表示手段25と、立体表示手段26と、立体詳細形状記憶手段27と、立体配置データ記憶手段28と、表示装置7と、データ入出力手段29とを有する。
【0020】
3次元空間における立体の配置は、立体詳細形状データと立体配置データを用いて定義される。立体詳細形状データは、立体を定義する座標系(立体詳細形状定義座標系)において、立体の形状を詳細に定義したものであり、例えば立体が多面体である場合は、その全頂点の座標、各面を構成する頂点のリスト、その他立体の定義に必要な情報を含む。立体詳細形状定義座標系における立体詳細形状データは、配置される前にローカル座標系のデータに変換される。一方、立体配置データは、ローカル座標系において詳細形状を定義された立体の、ワールド座標系における配置および大きさ(縮尺)を定義するデータである。すなわち、ローカル座標系からワールド座標系への座標変換のための行列を含む。(実際には、単一の座標変換行列ではなく、回転、縮尺等の変換を別々に表現する場合もある。)
一般には、空間内に異なった詳細形状を持つ複数の立体を配置することになるので、立体配置データ記憶手段22および立体詳細形状記憶手段27には、それぞれ複数の立体についてのデータを記憶する。そして、立体配置データ記憶手段22に記憶される各立体のデータには、その立体がどの立体詳細形状データに対応するかを識別するための情報を付随させる。
【0021】
立体詳細形状記憶手段27および立体配置データ記憶手段28に記憶されたデータは、データ入出力手段29を用いて外部記憶装置4に保存することができる。また逆に、外部記憶装置4に保存されたデータをデータ入出力手段29を用いて読み込むことができる。
次に、本実施例における画面表示について説明する。図5は、本実施例における表示画面の例を示す図である。
【0022】
図5に示すように、本実施例においては、3次元空間に定義された立体、画面指示位置表示(マウスカーソル)、後述する補助線(3Dカーソル)及びツールパレットを表示装置7の画面に表示する。マウスカーソルは、マウスの操作に連動して動く。この表示は、3次元世界座標系について定義された上記各データに対して座標変換を施し、2次元の画面座標に変換し、表示するものである。この変換を定義するのが表示パラメタである。本発明では、入力操作および画像表示を行うために、あらかじめ表示パラメタ算出手段15を用いて表示パラメタを決定し、表示パラメタ記憶手段21に値を記憶させておく。
【0023】
表示パラメタは、3次元座標空間における視点位置、注視方向、傾き角(ロールアングル)、視野角を定義する情報で構成される。実際には、視点位置、注視方向および傾き角は、まとめて一つの4×4行列で定義できる。これは、世界座標系から視点座標系(視点を原点とし、画面水平方向のX軸、画面鉛直方向のY軸、注視点方向のZ軸によって定義される、3次元直交座標系)への座標変換行列である。視野角は、画面横方向の視野の角度を定義する。
【0024】
表示パラメタ算出手段15は、ユーザが表示パラメタ変更のための操作を、入力装置あるいは画面上位置入力装置を用いて行なった際に、それを指示入力検出手段11あるいは画面指示位置検出手段12で検出し、その内容に応じて、プログラムの記述に従い、新たな表示パラメタの値を算出し、表示パラメタを設定もしくは変更する。
【0025】
ツールパレットは、編集内容を表示する部分であり、カーソルで指示することにより、表示された編集内容が選択できるようになっている。
図6は、実施例における立体配置編集操作の手順を示す図である。
図6に示すように、ステップ610では、編集の対象となる立体をカーソルで選択する。ステップ620では、選択した立体に外接する直方体の輪郭線が表示される。ステップ630では、選択した立体に対して行おうとする編集内容を図4のツールパレットから選択する。ステップ630は、ステップ610、620より前に行うことも可能である。ステップ640では、カーソルで表示された直方体の一部を指示し、ステップ650では、ステップ640で指示した直方体の部分に対してカーソルをドラッグする。これに応じて、ステップ660では、ステップ630で選択された編集内容、ステップ640で指示された直方体の部分、及びドラッグ量に応じて対象となる立体を編集する。
【0026】
以下、図6の各ステップについて、詳しく説明する。
まず、立体を選択し、それに外接する直方体を表示する工程について説明する。
立体配置データ記憶手段28では、個々の立体が選択状態にあるかどうかの情報を保持している。選択状態にある立体については、直方体輪郭線表示手段25によって外接直方体枠が表示される。
【0027】
編集の対象となる立体を選択する場合には、編集の対象とする立体の上にマウスカーソルを合わせ、ボタンをクリックすると、画面指示位置検出手段12および指示入力検出手段11はそれを検出し、立体選択手段31は、立体配置データ記憶手段28および立体詳細形状記憶手段27に記憶されているデータをもとに、指示された立体を判別し、その立体を選択状態とし、直方体輪郭線表示手段25は、選択状態の立体の外接直方体を表示する。
【0028】
後述するように、キーボード等の操作に応じて、立体選択手段31は、単独選択(指示された立体のみを選択)またはトグル選択(指示された立体の選択状態を反転)処理が可能である。また、マウスボタンを押したままマウスをドラッグした場合、ドラッグ開始・終了点を頂点とする長方形領域内の立体を同時に指示したものと判断し、それらの立体について上記処理を行う。
【0029】
図6のステップ640から660の操作は、ステップ630で選択された編集内容に応じて異なるので、ステップ630で選択される編集内容とその場合の操作について編集内容毎に説明する。
図7は編集内容として回転操作を選択した場合の操作を説明する図である。回転操作には2種類の操作がある。1つは、指示した辺に平行な立体の中心軸を回転軸とする操作であり、もう1つは、指示した辺に平行な直方体の対角辺を回転軸とする操作である。(1)は立体の中心軸を回転軸とする時の操作を、(2)は対角辺を回転軸とする操作を示す。
【0030】
立体の回転操作を行うためには、まず図5のステップ630で回転編集モードを選択する。編集モードの選択は、マウスカーソルをツールパレット上の適当なアイコンに合わせてマウスボタンを押すことにより行われる。マウスの操作は、画面指示位置検出手段12および指示入力検出手段11によって検出され、その結果を立体編集処理手段32が受取り、回転編集モードの設定あるいは回転軸算出法の選択が行われる。ツールパレット上には、上記の2種類の回転操作に対応するアイコンがあり、これを選択する。
【0031】
立体回転操作においては、まずマウスカーソルを、表示されている外接直方体枠の辺に合わせ、マウスボタンを押す。すると、画面指示位置検出手段12および指示入力検出手段11はその操作を検出し、それを受取った立体編集処理手段32は、立体配置データ記憶手段28に記憶されているデータをもとに指示された辺を判別し、上記の2つの回転操作のいずれかであるかに応じて回転軸を算出する。立体の中心軸を回転軸とする編集内容の時には、図7の(1)に示すように、指示した辺に平行な立体の中心軸が回転軸として算出される。対角辺を回転軸とする編集内容の時には、図7の(2)に示すように、指示した辺に平行な直方体の対角辺が回転軸として算出される。
【0032】
続いて、マウスボタンを押したままマウスをドラッグすると、画面指示位置検出手段12はマウスの動きを随時検出し、その結果を受取った立体編集処理手段32は、マウスボタンを押した位置を基準としたマウスの変位量をもとに回転角を決定し、立体配置データ算出手段22は、その角度だけ回転した外接直方体枠を求め、直方体輪郭線表示手段25はそれを表示する。図7の(1)では、指示した辺に平行な立体の中心軸を回転軸として回転され、図7の(2)では、指示した辺に平行な直方体の対角辺を回転軸として回転される。ただし、複数の立体が選択されているときは、それぞれ立体について算出された軸の回りに外接直方体枠を回転させる。また、階層構造の親である立体が選択されている場合は、子孫の立体についても、親との相対関係を保つように親と同じ軸の回りに回転させる。
【0033】
マウスを移動させた先でマウスボタンを放すと、立体編集処理手段32は、その時点での回転角を確定し、立体配置データ算出手段22は、確定した角度の立体配置データを求め、それをもとに立体表示手段26は立体を表示する。
図8は編集内容として立体の拡大/縮小を選択した場合の操作を説明する図である。拡大/縮小操作にも2種類の操作がある。1つは、指示した辺に平行な立体の中心軸を不動軸とする操作であり、もう1つは、指示した辺に平行な直方体の対角辺を不動軸とする操作である。(1)は立体の中心軸を不動軸とする時の操作を、(2)は対角辺を不動軸とする操作を示す。
【0034】
立体の拡大・縮小操作を行うためには、まず拡大・縮小編集モードを選択しておく必要がある。編集モードの選択は、マウスカーソルをツールパレット上の適当なアイコンに合わせてマウスボタンを押すことによる。マウスの操作は、画面指示位置検出手段12および指示入力検出手段11によって検出され、その結果を立体編集処理手段32が受取り、2種類の拡大・縮小編集モードのいずれかの設定あるいは不動軸算出法の選択が行われる。ツールパレット上には、上記の2種類の回転操作に対応するアイコンがあり、これを選択する。
【0035】
立体拡大・縮小操作においては、まずマウスカーソルを、表示されている外接直方体枠の辺に合わせ、マウスボタンを押す。すると、画面指示位置検出手段12および指示入力検出手段11はその操作を検出し、それを受取った立体編集処理手段32は、立体配置データ記憶手段28に記憶されているデータをもとに指示された辺を判別し、不動軸を算出する。立体の中心軸を不動軸とする編集内容の時には、図8の(1)に示すように、指示した辺に平行な立体の中心軸が不動軸として算出される。対角辺を不動軸とする編集内容の時には、図8の(2)に示すように、指示した辺に平行な直方体の対角辺が不動軸として算出される。
【0036】
続いて、マウスボタンを押したままマウスをドラッグすると、画面指示位置検出手段12はマウスの動きを随時検出し、その結果を受取った立体編集処理手段32は、マウスボタンを押した位置を基準としたマウスの変位量をもとに、不動軸と直交する2軸方向の倍率を決定し、立体配置データ算出手段22は、その倍率だけ拡大・縮小した外接直方体枠を求め、直方体輪郭線表示手段25はそれを表示する。ただし、複数の立体が選択されているときは、それぞれ立体について算出された不動軸に対して拡大・縮小する。図8の(1)では、指示した辺に平行な立体の中心軸を不動軸として拡大又は縮小され、図8の(2)では、指示した辺に平行な直方体の対角辺を不動軸として拡大又は縮小される。
【0037】
マウスを移動させた先でマウスボタンを放すと、立体編集処理手段32は、その時点での倍率を確定し、立体配置データ算出手段22は、確定した倍率に応じて立体配置データを求め、それをもとに立体表示手段26は立体を表示する。
図9は編集内容として立体の相似拡大/縮小を選択した場合の操作を説明する図である。相似拡大/縮小操作にも2種類の操作がある。1つは、指示した立体の中心を不動点とする操作であり、もう1つは、指示した頂点に対する直方体の対角点を不動点とする操作である。(1)は立体の中心点を不動点とする時の操作を、(2)は対角点を不動点とする操作を示す。
【0038】
相似立体拡大・縮小操作においては、まずマウスカーソルを、表示されている外接直方体枠の頂点に合わせ、マウスボタンを押す。すると、画面指示位置検出手段12および指示入力検出手段11はその操作を検出し、それを受取った立体編集処理手段32は、立体配置データ記憶手段28に記憶されているデータをもとに指示された頂点を判別し、不動点を算出する。立体の中心点を不動点とする編集内容の時には、図9の(1)に示すように、指示した立体の中心点が不動点として算出される。対角点を不動点とする編集内容の時には、図9の(2)に示すように、指示した頂点対する直方体の対角点が不動軸として算出される。
【0039】
続いて、マウスボタンを押したままマウスをドラッグすると、画面指示位置検出手段はマウスの動きを随時検出し、その結果を受取った立体編集処理手段32は、マウスボタンを押した位置を基準としたマウスの変位量をもとに、相似倍率を決定し、立体配置データ算出手段22は、その倍率だけ拡大・縮小した外接直方体枠を求め、直方体輪郭線表示手段25はそれを表示する。ただし、複数の立体が選択されているときは、それぞれ立体について算出された不動点に対して拡大・縮小する。図9の(1)では、指示した立体の中心点を不動点として拡大又は縮小され、図9の(2)では、指示した頂点に対する直方体の対角点を不動点として拡大又は縮小される。
【0040】
マウスを移動させた先でマウスボタンを放すと、立体編集処理手段32は、その時点での倍率を確定し、立体配置データ算出手段22は、確定した倍率に応じて立体配置データを求め、それをもとに立体表示手段26は立体を表示する。
図10は編集内容として立体の平行操作を選択した場合の操作を説明する図である。
【0041】
立体の移動操作を行うためには、まず移動編集モードを選択しておく必要がある。編集モードの選択は、マウスカーソルをツールパレット上の適当なアイコンに合わせてマウスボタンを押すことによる。マウス操作は画面指示位置検出手段12および指示入力検出手段11によって検出され、その結果を立体編集処理手段32が受取り、モードの設定が行われる。
【0042】
立体移動操作においては、まずマウスカーソルを、表示されている外接直方体枠の辺あるいは表示されている立体に合わせ、マウスボタンを押す。すると、画面指示位置検出手段12および指示入力検出手段11はその操作を検出し、それを受取った立体編集処理手段32は、ローカル座標系方向記憶手段20に記憶されている移動平面方向(マウスを動かしたときに立体が移動する平面の方向)に関するデータを元に、マウスの移動量から立体の3次元移動量を求める関数を算出する。
【0043】
続いて、マウスボタンを押したままマウスをドラッグすると、画面指示位置検出手段12はマウスの動きを随時検出し、その結果を受取った立体編集処理手段32は、マウスボタンを押した位置を基準としたマウスの変位量をもとに、先に求めた関数を用いて立体移動量を決定し、立体配置データ算出手段22は、その立体移動量だけ移動した外接直方体枠を求め、直方体輪郭線表示手段25はそれを表示する。ただし、複数の立体が選択されているときは、それぞれ立体について外接直方体枠を移動させる。また、階層構造の親である立体が選択されている場合は、子孫の立体についても、親と同じ移動量だけ移動させる。
【0044】
マウスを移動させた先でマウスボタンを放すと、立体編集処理手段32は、その時点での立体移動量を確定し、立体配置データ算出手段22は、確定した移動量だけ移動させた立体配置データを求め、立体配置データ記憶手段28の記憶内容を更新する。また、それをもとに立体表示手段26は立体を表示する。
次に、ローカル座標系における移動平面方向に関するデータの設定について説明する。
【0045】
形状入力の準備として、これから入力する立体のローカル座標系方向を設定し、ローカル座標系方向記憶部20に記憶させておく。本実施例では、このローカル座標系方向記憶部20に移動平面方向に関するデータを記憶しておく。
ローカル座標系方向は、世界座標系におけるローカル座標系の3軸(X軸、Y軸、Z軸)の方向ベクトルを3×3行列で表現する。加えて、高さ入力方向軸がどの軸であるかという情報を含む。
【0046】
ローカル座標系における移動平面方向に関するデータの設定方法の例を図11及び図12に示す。
図11は、画面上に表示されている立体に移動平面方向を合わせる方法を示す図である。マウスカーソルを表示されている立体に合わせ、指示操作(マウスボタンクリック)を行うと、ローカル座標系方向算出手段14は、指示された立体を判別し、その立体のローカル座標系方向を新たな移動平面方向とし、ローカル座標系方向記憶手段20に記憶する。
【0047】
図12は、既にローカル座標系方向記憶手段20において記憶されている移動平面方向を修正する方法を示す図である。まず現在の移動平面方向の各軸と平行な辺を持つ立方体の枠(ワイヤフレーム)を画面に表示し、そのいずれかの辺上にマウスカーソルを合わせてボタンを押下したまま移動(ドラッグ)したとき、マウス移動中は随時、ローカル座標系方向算出手段14において、上記の立方体を、マウスカーソル移動方向および移動量に応じて回転角度を決定し、マウスカーソルを合わせた辺と平行かつ立方体中心を通る直線を軸として回転させ、表示する。マウスボタンを離した時点での立方体の各辺と平行な軸を、新たな移動平面方向とし、移動平面方向を決定する。
【0048】
上記のように、立体を移動する場合には、直接立体を指示するればよく、かならずしも立体に外接する直方体を表示する必要はない。
前述のように、本実施例の3次元図形編集装置では、複数の立体を対象として同時に編集することが可能である。マウスボタンを押したままマウスをドラッグした場合、ドラッグ開始・終了点を頂点とする長方形領域内の立体を同時に指示したものと判断し、それらの立体について上記処理を行う。
【0049】
【発明の効果】
本発明によれば、従来の2次元図面作成ツールと同様の直感的な操作で立体配置の編集作業が行なえる3次元立体配置編集方法及び編集装置が実現される。
【図面の簡単な説明】
【図1】本発明の実施例のシステム構成を示す図である。
【図2】実施例で使用する装置の外観を示す図である。
【図3】実施例で使用する装置の機能ブロック図である。
【図4】実施例で使用する装置の機能ブロック図である。
【図5】実施例におけるディスプレイ画面を示す図である。
【図6】実施例における編集操作の手順を示すフローチャートである。
【図7】回転操作を説明する図である。
【図8】拡大/縮小操作を説明する図である。
【図9】相似拡大/縮小操作を説明する図である。
【図10】平行移動操作を説明する図である。
【図11】ローカル座標系での移動平面方向設定方法を説明するための図である。
【図12】ローカル座標系での移動平面方向設定方法を説明するための図である。
【符号の説明】
11…指示入力検出手段
12…画面指示位置検出手段
14…ローカル座標系方向算出手段
15…表示パラメータ算出手段
20…ローカル座標系方向記憶手段
21…表示パラメータ記憶手段
22…立体配置データ算出手段
25…直方体輪郭線表示手段
26…立体表示手段
27…立体詳細形状記憶手段
28…立体配置データ記憶手段
31…立体選択手段
32…立体編集処理手段
Claims (6)
- 図形表示システムにおける図形の3次元立体配置編集方法であって、
表示済の立体のローカル座標系から対象となる立体が平行移動する移動平面を定義し、該移動平面方向を所望の方向に設定する工程と、
前記移動平面と平行で且つ相互に直交する2本の直線を表示する工程と、
前記直交する2本の直線の交点を通過し、前記移動平面に垂直な直線を更に表示し、
編集対象の立体を選択する工程と、
指示された立体又は該立体に外接する直方体の部分に対してカーソルを活性化して移動する工程と、
前記選択された立体を前記カーソルの活性化された移動量に応じて、前記移動平面上を平行移動させる工程とを備えることを特徴とする3次元立体配置編集方法。 - 前記移動平面と平行で相互に直交する2本の直線と、前記移動平面に垂直な直線は異なる表示方法で表示される請求項1に記載の3次元立体配置編集方法。
- 前記移動平面と平行で相互に直交する2本の直線と、前記移動平面に垂直な直線の交点は、前記カーソルの画面上の指示位置に一致する請求項1又は2のいずれかに記載の3次元立体配置編集方法。
- 画面上の指示位置を検出する指示位置検出手段(11、12)と、
表示済の立体のローカル座標系から平行移動する移動平面方向を定義するローカル座標系方向を設定するローカル座標系方向算出手段(14)と、
前記移動平面と平行で且つ相互に直交する2本の直線を表示し、更に前記移動平面と平行で相互に直交する2本の直線の交点を通過し、前記移動平面に垂直な直線を更に表示する補助線表示手段(24)と、
編集対象の立体を選択する立体選択手段(31)と、
前記指示位置検出手段が検出した移動に応じて、前記選択された立体を前記移動平面方向に移動させる立体編集処理手段(32)とを備えることを特徴とする3次元立体配置編集装置。 - 前記移動平面と平行で相互に直交する2本の直線と、前記移動平面に垂直な直線は異なる表示方法で表示される請求項4に記載の3次元立体配置編集装置。
- 前記移動平面と平行で相互に直交する2本の直線と、前記移動平面に垂直な直線の交点は、カーソルの画面上の指示位置に一致する請求項4又は5のいずれかに記載の3次元立体配置編集装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP09870195A JP3672352B2 (ja) | 1994-04-25 | 1995-04-24 | 3次元立体配置編集方法及び3次元立体配置編集装置 |
US08/428,408 US5712965A (en) | 1994-04-25 | 1995-04-25 | Three-dimensional solid arranging/editing method in a computer graphic system and system |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP8678294 | 1994-04-25 | ||
JP6-86782 | 1994-04-25 | ||
JP09870195A JP3672352B2 (ja) | 1994-04-25 | 1995-04-24 | 3次元立体配置編集方法及び3次元立体配置編集装置 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002354169A Division JP3732174B2 (ja) | 1994-04-25 | 2002-12-05 | 3次元立体配置編集方法及び3次元立体配置編集装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0816825A JPH0816825A (ja) | 1996-01-19 |
JP3672352B2 true JP3672352B2 (ja) | 2005-07-20 |
Family
ID=26427865
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP09870195A Expired - Fee Related JP3672352B2 (ja) | 1994-04-25 | 1995-04-24 | 3次元立体配置編集方法及び3次元立体配置編集装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3672352B2 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6822662B1 (en) * | 1999-03-31 | 2004-11-23 | International Business Machines Corporation | User selected display of two-dimensional window in three dimensions on a computer screen |
JP3465892B2 (ja) * | 1999-11-16 | 2003-11-10 | 株式会社日立国際電気 | 映像データ編集方法及び映像データ編集プログラムを記憶したコンピュータ読み取り可能な記憶媒体 |
EP2523132A1 (en) * | 2011-05-11 | 2012-11-14 | Dassault Systèmes | Designing a three-dimensional modeled assembly of objects in a three-dimensional scene |
JP5555681B2 (ja) * | 2011-10-06 | 2014-07-23 | 株式会社ア−キテック | 三次元図形入力方法及びその装置 |
JP6360509B2 (ja) * | 2016-02-25 | 2018-07-18 | 任天堂株式会社 | 情報処理プログラム、情報処理システム、情報処理方法、および情報処理装置 |
JP6969149B2 (ja) * | 2017-05-10 | 2021-11-24 | 富士フイルムビジネスイノベーション株式会社 | 三次元形状データの編集装置、及び三次元形状データの編集プログラム |
-
1995
- 1995-04-24 JP JP09870195A patent/JP3672352B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH0816825A (ja) | 1996-01-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5861889A (en) | Three dimensional computer graphics tool facilitating movement of displayed object | |
US5623583A (en) | Three-dimensional model cross-section instruction system | |
EP0856786B1 (en) | Window Displaying apparatus and method | |
US5583977A (en) | Object-oriented curve manipulation system | |
JP4546855B2 (ja) | 要素を選択する方法およびプログラム | |
JPH0573661A (ja) | 3次元情報会話システム | |
JP3705826B2 (ja) | 仮想3次元ウインドウ表示制御方法 | |
US5712965A (en) | Three-dimensional solid arranging/editing method in a computer graphic system and system | |
US6295069B1 (en) | Three dimensional computer graphics tool facilitating movement of displayed object | |
JP3186241B2 (ja) | 図形編集装置 | |
JP3672352B2 (ja) | 3次元立体配置編集方法及び3次元立体配置編集装置 | |
JP3732174B2 (ja) | 3次元立体配置編集方法及び3次元立体配置編集装置 | |
JP3599198B2 (ja) | 図形編集装置 | |
JP3239356B2 (ja) | 図形編集装置 | |
JP3361652B2 (ja) | 立体図形配置入力方法及びグラフィックシステム | |
JP3413145B2 (ja) | 仮想空間の編集方法及び仮想空間の編集装置 | |
JPH08249500A (ja) | 3次元図形の表示方法 | |
JP3794509B2 (ja) | 3次元パラメータ入力装置、3次元パラメータ入力方法及び画像処理装置 | |
WO1995011482A1 (en) | Object-oriented surface manipulation system | |
JP2001291119A (ja) | ユーザインタフェース制御装置およびユーザインタフェース制御方法、並びにプログラム提供媒体 | |
JP2004005575A (ja) | 3次元空間図形処理装置および3次元空間図形処理方法 | |
JPH04180180A (ja) | 3次元位置入力方法及び装置 | |
JPH08297750A (ja) | 3次元図形の表示状態変更方法および3次元図形表示装置 | |
JP4310909B2 (ja) | 画像処理装置 | |
WO1995011480A1 (en) | Object-oriented graphic manipulation system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20021008 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050225 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050419 |
|
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: 20080428 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090428 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090428 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100428 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110428 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110428 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120428 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130428 Year of fee payment: 8 |
|
LAPS | Cancellation because of no payment of annual fees |