JP3676399B2 - 3D coordinate input method and apparatus - Google Patents
3D coordinate input method and apparatus Download PDFInfo
- Publication number
- JP3676399B2 JP3676399B2 JP21443294A JP21443294A JP3676399B2 JP 3676399 B2 JP3676399 B2 JP 3676399B2 JP 21443294 A JP21443294 A JP 21443294A JP 21443294 A JP21443294 A JP 21443294A JP 3676399 B2 JP3676399 B2 JP 3676399B2
- Authority
- JP
- Japan
- Prior art keywords
- plane
- locate
- point
- screen
- coordinate
- 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 - Lifetime
Links
Images
Landscapes
- Position Input By Displaying (AREA)
Description
【0001】
【産業上の利用分野】
本発明は、3次元座標を入力する方法及びその装置に関し、特にCAD/CAMを用いた3次元自由曲面及び3次元自由曲線の座標データの入力方法及びその装置に関する。
【0002】
【従来の技術】
従来は次ぎのような方法で3次元データを入力していた。
1.三面図等の別々の角度からみたビューを複数表示し、それぞれのビューに対応する平面とその平面上の点を指定するポインティング装置により入力を行う。この場合には、利用者が三面図上で空間位置を認識できるように習熟していなければならない。
又、3次元座標の入力は3次元CADシステムなどで必要になるため、すでに入力済みの3次元形状やこれから入力する3次元座標により予想される要素の形状を表示することで利用者が確認しながら、新たに必要な3次元形状のための3次元座標を入力していたため、透視図に比べて3次元形状を想像しにくく、このような三面図での入力方法ではかなりの習熟が必要となっている。
【0003】
2.3次元空間に平面を定め画面上のマウスカーソル位置での2次元座標値をその平面上にマッピングすることで3次元空間座標を入力する。
この場合には、この予め定められた平面上の座標しか入力できないので、任意の3次元空間座標を入力するためには、平面を必要に応じて変更する必要がある。
又、画面と対応する3次元空間の平面の領域の関係が固定されているので、画面上でマウスを動かしてできる最大の長方形(画面の上下左右の縁)とそれに対応する3次元空間の平面上の長方形は1対1に対応しており、利用者が意識的にその関係をスケール調整などで変更しないかぎりその領域の大きさは変わらない。
例えば、平面から視点を遠ざけると、相対的に画面上で3次元空間の平面の領域は小さくなり、画面いっぱいにマウスカーソルを動かしても、最初に定義した平面上の領域の範囲でしか動かず、3次元空間上の動きは変わらないので、画面上での動きは非常な小さな長方形の範囲になり、不自然な感じになってしまっている。
逆に、平面に視点を近づけると、相対的に画面上で3次元空間の平面の領域は大きくなり、画面からはみ出してしまい、3次元空間の平面上の点を入力はできるが、画面外の点であるという不自然な状況になっている。
このように従来の方法では、視点と平面の位置関係に応じて利用者が適当にスケール調整した上で座標を入力する必要がある。
【0004】
3.3次元空間に線分又は直線を定め、画面上の横方向又は縦方向などの直線と対応づけることによって3次元空間座標を入力する場合には、視線方向、距離、スケールなどのビュー関連のパラメータが変化したとき、それに応じてマウスカーソルの移動範囲を画面内で適度な量に収まるように調整する必要がある。
この場合には、直線上の座標しか入力できないため、任意の3次元空間座標を入力するためには、直線を必要に応じて変更する必要がある。
又、画面の線分と対応する3次元空間の線分の関係が固定されているので、画面上で最大にマウスを動かしてできる線分とそれに対応する3次元空間の線分は1対1に対応しており、利用者が意識的にその関係をスケール調整などで変更しないかぎり変わらない。
例えば、3次元空間の線分から視点を遠ざけると、画面上で3次元空間の線分の長さは相対的に短くなり、画面いっぱいにマウスカーソルを動かしても、最初に定義した3次元空間の線分の範囲でしか動かず、3次元空間上の動きは変わらないので、画面上での動きは非常に短い線分の範囲になり、不自然な感じになってしまっている。
逆に、線分に視点を近づけると、画面上で3次元空間の線分が相対的に長くなり、画面を越えてしまうこともあり、3次元空間の線分上の点を入力はできるが、画面外の点であるという不自然な状況になっている。
このように従来の方法では、視点と線分の位置関係に応じて利用者が適当にスケール調整した上で座標を入力する必要がある。
【0005】
【発明が解決しようとする課題】
本発明の目的は、以上のような従来の課題を解決するため、CAD/CAMを用いた3次元自由曲面及び3次元自由曲線等の3次元座標を入力するための感覚的にわかりやすい方法を提供することを目的とする。
【0006】
【課題を解決するための手段】
請求項1の発明では、キーボードやマウスを入力手段とし、コンピュータを使用して3次元自由曲面及び3次元自由曲線の3次元座標を入力する方法において、
3次元空間座標の入力基準となるロケート座標を設定するステップと、
マウス又はメニューなどの手段を用いてモードをロケート平面投影モードかロケート法線投影モードかを選択して画面上の点の投影方法を決定するステップと、
視点と画面上の点の座標から3次元空間上の直線を決定するステップと、ロケート平面に平行で現在のロケート座標を通る平面を決定するステップと、前記直線と前記平面との干渉点を決定するステップとを備え、該干渉点を3次元空間上の座標値とするようにしたロケート平面の水平方向に対する座標値を入力するステップと、画面上の点の座標を通って画面に水平な3次元空間上の直線を決定するステップと、該直線と視点とを通る平面を決定するステップと、該平面と現在のロケ−ト座標を通りロケート平面の法線方向へ伸びる直線との干渉点を決定するステップとを備え、該干渉点を3次元空間上の座標値とするようにしたロケート平面の法線方向に対する座標値を入力するステップとを有し、いずれかの入力ステップで入力した座標値を合わせて表示することにより3次元空間上の位置を想像しながら入力するようにした画面上の点の座標から3次元空間上の点の座標値に投影するステップと、
前記画面上の点の投影された座標値を新しいロケート座標とするステップとから構成し、3次元座標を感覚的にわかり易く入力できるようにした。
請求項2の発明では、キーボードやマウスを入力手段とし、コンピュータを使用して3次元自由曲面及び3次元自由曲線の3次元座標を入力する装置において、
3次元空間座標の入力基準となるロケート座標を設定する手段と、
マウス又はメニューなどの手段を用いてモードをロケート平面投影モードかロケート法線投影モードかを選択して画面上の点の投影方法を決定する手段と、
視点と画面上の点の座標から3次元空間上の直線を決定する手段と、ロケート平面に平行で現在のロケート座標を通る平面を決定する手段と、前記直線と前記平面との干渉点を決定する手段とを備え、該干渉点を3次元空間上の座標値とするようにしたロケート平面の水平方向に対する座標値を入力する手段と、画面上の点の座標を通って画面に水平な3次元空間上の直線を決定する手段と、該直線と視点とを通る平面を決定する手段と、該平面と現在のロケ−ト座標を通りロケート平面の法線方向へ伸びる直線との干渉点を決定する手段とを備え、該干渉点を3次元空間上の座標値とするようにしたロケート平面の法線方向に対する座標値を入力する手段とを有し、いずれかの入力ステップで入力した座標値を合わせて表示することにより3次元空間上の位置を想像しながら入力するようにした画面上の点の座標から3次元空間上の点の座標値に投影する手段と、
前記画面上の点の投影された座標値を新しいロケート座標とする手段とからなることを特徴とする。
【0010】
【作用】
本発明は、まず3次元空間座標の入力基準となるロケート座標を設定する。
次ぎに、画面上の点の投影方法をロケート平面の水平または法線のいずれかの方向に決定する。
(1)投影方法をロケート平面の水平方向とした場合
視点と画面上の点の座標から3次元空間上の直線を決定し、ロケート平面に平行で現在のロケート座標を通る平面を決定し、その直線とその平面との干渉点を決める。
(2)投影方法をロケート平面の法線方向とした場合
画面上の点の座標を通って画面に水平な3次元空間上の直線と、その直線と視点とを通る平面を決定し、その平面と現在のロケート座標の法線方向への延長直線との干渉点を決定める。
ここで決定された干渉点を、入力要求のあった新しいロケート座標とするようにする。このような2つの投影方法によって入力した座標値を表示し、要求する座標値が得られるまで投影方法を変えながら座標点を求めていく。
このようにロケート平面の水平方向と垂直方向との2つの投影方法で求められたロケート座標値を表示するので、3次元空間上の位置を想像し易く、感覚的にわかりやすい透視図のままで入力することができる。
又、視線方向、距離、スケールなどビュー関連のパラメータが変化しても画面上のパラメータのスケール調整をする必要もない。
【0011】
【実施例】
次ぎのような前提に基づいて、本発明の3次元座標入力方法を説明する。
1.視点及び投影面
視点や投影面は、一般的なCADシステムでは予め設定しているので、本発明でも予め決まっているものとし、必要に応じてその設定を変更することもできる。
2.ロケート平面
本発明の3次元座標入力方法を実施する上で基準となる平面である。
本発明は希望の3次元座標値を得るために画面上で位置を確認しながら位置補正を繰り返し加えるが、その位置補正を行う際にロケート平面に水平な方向の移動と垂直な方向の移動の2方向を利用者は会話的に選択することができる。
3.ロケート座標
本発明の3次元座標入力方法を実施する上で基準となる座標値である。
本発明は希望の3次元座標値を得るために画面上で位置を確認しながら位置補正を繰り返し加えるが、その位置補正を行った結果の座標値をロケート座標として格納しておき、次回の位置補正の際に移動の基点の座標として用いる。
本発明の3次元座標入力方法を実施する前に、ロケート平面及びロケート座標の初期値はロケート平面上の値の範囲であらかじめ決定しておくものとする。
【0012】
本発明の一実施例を図に基づいて詳細に説明する。図1は本発明の3次元座標入力方法を説明するフローチャートである。又、図6乃至図8は本発明を用いて直方体の形状を入力する場合の例を示しており、直方体の底面の中心の座標値が(0,0,0)で決定されている場合に上面の頂点の座標を本発明により入力するときの操作を説明するための図である。
【0013】
ステップ100:
予め決定しておいたロケート平面上のロケート座標の初期値を登録し、モード(投影方法)の初期値をロケート平面投影モードに設定する。
例えば、図6では点Mは画面上のマウスカーソルを表わしており、3次元空間上ではロケート座標に対応している。ここではロケート平面がXY平面で、ロケート座標の初期値(0,0,0)である場合の画面例である。
又、図6の右下にX座標値、Y座標値及び高さ(H)を表示することによって、現在の座標入力操作が数値的にも確認できるようにしている。以下の図7及び図8も同様である。
ステップ110:
利用者は投影モードを変更したい場合には、マウス又はメニューなどの手段を用いて、モードをロケート平面投影モードかロケート法線投影モードかを選択する。
ステップ120:
利用者がマウスを用いて画面上の座標を入力する。
マウスカーソルを動かすことにより、図7や図8に例示したように点Mが動くとともに入力形状及び入力座標値が画面に表示されていく。
ここで画面上の座標はどんなものであっても良いが、ここでは一般的なデバイス座標系
原点: 画面左上隅
X軸: 画面左上隅から画面右方向
Y軸: 画面左上隅から画面下方向
を使うことにする。
ステップ130:
画面上の座標を指定された投影モードによって、3次元空間上の座標(干渉点 (点E))に変換する。(この変換方法は後述する。)
ステップ140:
ステップ130で求めた干渉点(点E)を新しいロケート座標として記憶する。
ステップ150:
ロケート座標が希望の座標が得られたとき終了する。又、希望の座標値が得られなければ、ステップ110に戻って希望の座標が得られるまで繰り返す。
【0014】
1.ロケート平面投影モード
ロケート平面投影モードはロケート平面に水平な方向の位置補正を行うものであり、次の手順で画面上の座標から3次元空間上の座標へ変換を行う。
ロケート平面投影モードにおける座標変換を図2のフローチャートおよび図4に基づいて説明する。
【0015】
ステップ200:
画面上の座標に対応する3次元空間上の点(点G)と視点(点A)を結ぶ3次元空間上の直線(線AG)を求める。
画面上の座標に対応する3次元空間上の座標(点G)を求めるには、画面に対応する投影面(面F)上の座標を求めればよい。
この投影面における座標値は、例えば文献「入門グラフィックス(1984年アスキー出版局発行、127−133ページ」の方法で得ることができる。
ステップ210:
ロケート平面(面D)に平行で現在のロケート座標(点B)を通る平面(面C)を求める。
ステップ220:
直線AGと面Cの干渉点(点E)を求める。
例えば、図7はロケート平面投影モードでマウスカーソルを点Mへ動かしたときの3次元座標値の入力しているところを示した画面例である。
即ち、画面上のマウスカーソルを示す点Mは、図6で設定されたロケート座標 (0,0,0) を通り、ロケート平面に平行な平面(この場合はロケート平面そのもの)上の点(10,10,0) に投影されている。これで直方体の底面の形状を決定できた。
【0016】
2.ロケート法線投影モード
ロケート法線投影モードは、ロケート平面に垂直な方向の位置補正を行うものであり、次の手順で画面上の座標から3次元空間上の座標へ変換を行う。
ロケート法線投影モードにおける座標変換を図3のフローチャートおよび図5に基づいて説明する。
【0017】
ステップ300:
画面上の座標を通る画面(ここでは投影面(面F)と一致する)に対して水平方向の線(例えば、デバイス座標系のX軸に平行な線)を決定し、その線に対応する3次元空間上の直線(線G)を求める。
ステップ310:
線Gと視点(点A)により決定される平面(面C)を求める。
ステップ320:
現在のロケート座標(点B)からロケート平面(面D)に下した垂線と面Cとの干渉点(点E)を求める。又、現在のロケート座標がロケート平面上にある場合には、このままでは直線が求められないので、ロケート座標を通りロケート平面の法線ベクトルの方向に伸びる直線と面Cとの干渉点(点E)を求めるようにする。
例えば、図8は図7のマウスカーソルをロケート垂線投影モードで点Mを上方へ動かしたときの3次元座標を入力しているところを示した画面例である。
即ち、画面上のマウスカーソルを示す点Mは、図7で設定されたロケート座標 (10,10,0) を通り、ロケート平面の法線ベクトル方向にのびる直線上の点 (10,10,10)に投影されている。これで直方体の高さを決定できた。
【0018】
以上説明したように従来技術では
・3次元空間に平面を定め画面上のマウスカーソルを平面上にマッピングすることで3次元空間座標を入力する場合には、平面上の座標しか入力できない。
・任意の3次元空間座標を入力するためには、平面を必要に応じて変更する必要がある。
このように平面を変更するには、座標の成分(X,Y,Z)のいずれかを決める必要があるが、利用者が形状を表示し、確認しながら試行錯誤を繰り返して入力するので、具体的な数字でいくらとは決めにくい。
・平面を新しくしても、前回の平面での座標値を参照し利用できなければ、新しい平面上で一から調整する必要がある。
という欠点があったが、本発明の実施例によると、
・ロケート平面投影モードでX座標,Y座標を、ロケート法線投影モードでZ座標をカバーしており、いずれも繰り返し微妙に調整することが可能となる。
・前回の座標値をロケート座標として保存できるので、それからの修正という感覚で入力できるので、微妙な調整が可能となる。
という効果が発揮される。
【0019】
【発明の効果】
以上の説明から明らかなように、請求項1に記載された発明によると、キーボードやマウスを入力手段とし、コンピュータを使用して3次元自由曲面及び3次元自由曲線の3次元座標を入力する方法において、
3次元空間座標の入力基準となるロケート座標を設定するステップと、
マウス又はメニューなどの手段を用いてモードをロケート平面投影モードかロケート法線投影モードかを選択して画面上の点の投影方法を決定するステップと、
視点と画面上の点の座標から3次元空間上の直線を決定するステップと、ロケート平面に平行で現在のロケート座標を通る平面を決定するステップと、前記直線と前記平面との干渉点を決定するステップとを備え、該干渉点を3次元空間上の座標値とするようにしたロケート平面の水平方向に対する座標値を入力するステップと、画面上の点の座標を通って画面に水平な3次元空間上の直線を決定するステップと、該直線と視点とを通る平面を決定するステップと、該平面と現在のロケ−ト座標を通りロケート平面の法線方向へ伸びる直線との干渉点を決定するステップとを備え、該干渉点を3次元空間上の座標値とするようにしたロケート平面の法線方向に対する座標値を入力するステップとを有し、いずれかの入力ステップで入力した座標値を合わせて表示することにより3次元空間上の位置を想像しながら入力するようにした画面上の点の座標から3次元空間上の点の座標値に投影するステップと、
前記画面上の点の投影された座標値を新しいロケート座標とするステップとから構成したことにより、3次元座標の入力を三面図等の空間位置を想像するのに習熟を要せず、感覚的にわかりやすい透視図のままで入力できる。
【図面の簡単な説明】
【図1】 本発明の1実施例を表すフローチャートである。
【図2】 本発明の請求項3記載のロケート平面投影モードを示すフローチャートである。
【図3】 本発明の請求項4記載のロケート法線投影モードを示すフローチャートである。
【図4】 本発明の請求項3記載のロケート平面投影モードを説明するための図である。
【図5】 本発明の請求項4記載のロケート法線投影モードを説明するための図である。
【図6】 本発明の1実施例を説明するための3次元座標入力の初期状態を示す図である。
【図7】 本発明の1実施例を説明するためのロケート平面投影モードでの3次元座標入力を示す図である。
【図8】 本発明の1実施例を説明するためのロケート法線投影モードでの3次元座標入力を示す図である。
【符号の説明】
A …… 視点、B …… 現在のロケート座標、
D …… ロケート平面、E …… 干渉点、F …… 投影面、
M …… マウスカーソルの示す点。[0001]
[Industrial application fields]
The present invention relates to a method and apparatus for inputting three-dimensional coordinates, and more particularly to a method and apparatus for inputting coordinate data of a three-dimensional free-form surface and a three-dimensional free curve using CAD / CAM.
[0002]
[Prior art]
Conventionally, three-dimensional data is input by the following method.
1. A plurality of views such as a three-view diagram viewed from different angles are displayed, and input is performed by a pointing device that designates a plane corresponding to each view and points on the plane. In this case, the user must be proficient so that the user can recognize the spatial position on the three views.
Also, since 3D coordinate input is required by 3D CAD systems, etc., the user confirms by displaying the 3D shape that has already been input and the shape of the element that is expected from the 3D coordinates to be input. However, since 3D coordinates for a newly required 3D shape have been input, it is difficult to imagine a 3D shape compared to a perspective view. Such a three-view input method requires considerable skill. It has become.
[0003]
2. A plane is set in the three-dimensional space, and the two-dimensional coordinate value at the mouse cursor position on the screen is mapped onto the plane to input the three-dimensional space coordinate.
In this case, only the coordinates on this predetermined plane can be input, so that it is necessary to change the plane as necessary in order to input arbitrary three-dimensional space coordinates.
In addition, since the relationship between the plane and the plane area corresponding to the screen is fixed, the largest rectangle (upper and lower left and right edges of the screen) that can be moved by moving the mouse on the screen and the corresponding plane in the three-dimensional space. The upper rectangle has a one-to-one correspondence, and the size of the area does not change unless the user consciously changes the relationship by adjusting the scale.
For example, if you move the viewpoint away from the plane, the area of the plane in the 3D space becomes relatively small on the screen, and even if you move the mouse cursor over the screen, it moves only within the range of the area on the plane that was defined first. Since the movement in the three-dimensional space does not change, the movement on the screen is in the range of a very small rectangle, making it feel unnatural.
Conversely, when the viewpoint is brought closer to the plane, the area of the plane in the three-dimensional space becomes relatively large on the screen and protrudes from the screen, and a point on the plane in the three-dimensional space can be input. The situation is unnatural.
As described above, in the conventional method, it is necessary for the user to input coordinates after appropriately adjusting the scale according to the positional relationship between the viewpoint and the plane.
[0004]
3. When inputting 3D space coordinates by defining a line segment or straight line in the 3D space and associating it with a straight line such as a horizontal or vertical direction on the screen, view-related items such as line-of-sight direction, distance, and scale When this parameter changes, it is necessary to adjust the movement range of the mouse cursor accordingly to fit within an appropriate amount on the screen.
In this case, since only coordinates on a straight line can be input, in order to input arbitrary three-dimensional space coordinates, it is necessary to change the straight line as necessary.
Also, since the relationship between the line segment of the screen and the corresponding line segment of the three-dimensional space is fixed, the line segment formed by moving the mouse on the screen to the maximum and the corresponding line segment of the three-dimensional space are one-to-one. It does not change unless the user consciously changes the relationship by adjusting the scale.
For example, if you move the viewpoint away from the line segment in the 3D space, the length of the line segment in the 3D space will be relatively short on the screen, and even if you move the mouse cursor over the screen, Since it moves only within the range of the line segment and the movement in the three-dimensional space does not change, the movement on the screen is in the range of a very short line segment, making it unnatural.
On the other hand, when the viewpoint is brought close to the line segment, the line segment in the three-dimensional space becomes relatively long on the screen and may exceed the screen. However, a point on the line segment in the three-dimensional space can be input. This is an unnatural situation where the point is off-screen.
As described above, in the conventional method, it is necessary for the user to input coordinates after appropriately adjusting the scale according to the positional relationship between the viewpoint and the line segment.
[0005]
[Problems to be solved by the invention]
An object of the present invention is to provide a sensory and easy-to-understand method for inputting three-dimensional coordinates such as a three-dimensional free-form surface and a three-dimensional free curve using CAD / CAM in order to solve the conventional problems as described above. The purpose is to do.
[0006]
[Means for Solving the Problems]
According to the first aspect of the present invention, in a method of inputting a three-dimensional coordinate of a three-dimensional free-form surface and a three-dimensional free-form curve using a computer using a keyboard and a mouse as input means,
A step of setting a locate coordinate as an input reference of the three- dimensional space coordinate;
Determining a projection method of a point on the screen by selecting a locate plane projection mode or a locate normal projection mode as a mode using a mouse or a menu ;
Determining a straight line in the three-dimensional space from the coordinates of the viewpoint and the point on the screen; determining a plane parallel to the locate plane and passing through the current locate coordinate; and determining an interference point between the straight line and the plane A step of inputting a coordinate value with respect to the horizontal direction of the locate plane in which the interference point is set as a coordinate value in a three-dimensional space, and a horizontal 3 on the screen through the coordinates of the point on the screen. A step of determining a straight line in the dimensional space; a step of determining a plane passing through the straight line and the viewpoint; and an interference point between the plane and a straight line passing through the current locate coordinate and extending in the normal direction of the locate plane. And a step of inputting a coordinate value with respect to the normal direction of the locate plane in which the interference point is set as a coordinate value in a three-dimensional space, and the position input in any of the input steps And projecting from the coordinates of the point on which the the screen to enter while imagining the position on the three-dimensional space to coordinate value of a point in a three-dimensional space by displaying together values,
And composed of a step of the new locating coordinates the projected coordinate value of a point on the screen, the three-dimensional coordinates have to be sensuously understandable input.
In the invention of claim 2, in a device for inputting a three-dimensional coordinate of a three-dimensional free-form surface and a three-dimensional free-form curve using a computer using a keyboard and a mouse as input means,
Means for setting a locate coordinate as an input reference of a three-dimensional space coordinate;
Means for selecting a projection method of a point on the screen by selecting a locate plane projection mode or a locate normal projection mode using means such as a mouse or a menu;
Means for determining a straight line in a three-dimensional space from the coordinates of a point of view and a point on the screen, means for determining a plane parallel to the locate plane and passing through the current locate coordinates, and determining an interference point between the straight line and the plane Means for inputting a coordinate value with respect to the horizontal direction of the locate plane in which the interference point is set as a coordinate value in a three-dimensional space, and 3 which is horizontal on the screen through the coordinates of the point on the screen. A means for determining a straight line in the dimensional space; a means for determining a plane passing through the straight line and the viewpoint; and an interference point between the plane and a straight line passing through the current location coordinates and extending in the normal direction of the locate plane. And a means for inputting a coordinate value with respect to the normal direction of the locate plane in which the interference point is a coordinate value in a three-dimensional space. By displaying the values together And means for projecting from the coordinates of a point on the screen to enter while imagining the position on dimensional space to coordinate value of a point in a three-dimensional space,
And means for setting the projected coordinate value of the point on the screen as a new locate coordinate.
[0010]
[Action]
In the present invention, first, locate coordinates that serve as an input reference for three-dimensional space coordinates are set.
Next, the projection method of the point on the screen is determined in either the horizontal or normal direction of the locate plane.
(1) When the projection method is the horizontal direction of the locate plane Determine the straight line in the three-dimensional space from the coordinates of the viewpoint and the point on the screen, determine the plane parallel to the locate plane and passing through the current locate coordinate, Determine the point of interference between the straight line and its plane.
(2) When the projection method is the normal direction of the locate plane The straight line in the three-dimensional space that is horizontal to the screen through the coordinates of the point on the screen and the plane that passes through the straight line and the viewpoint are determined, and the plane And the point of interference with the line extending in the normal direction of the current locate coordinate.
The interference point determined here is set as a new locate coordinate requested to be input. The coordinate values input by these two projection methods are displayed, and coordinate points are obtained while changing the projection method until the required coordinate values are obtained.
In this way, since the locate coordinate values obtained by the two projection methods of the horizontal direction and the vertical direction of the locate plane are displayed, it is easy to imagine the position in the three-dimensional space and input it with a perspective view that is easy to understand intuitively. can do.
Further, even if view-related parameters such as the line-of-sight direction, distance, and scale change, it is not necessary to adjust the scale of the parameters on the screen.
[0011]
【Example】
The three-dimensional coordinate input method of the present invention will be described based on the following assumptions.
1. Since the viewpoint and the projection plane viewpoint and projection plane are set in advance in a general CAD system, they are determined in advance in the present invention, and the settings can be changed as necessary.
2. Locate plane A plane that serves as a reference in carrying out the three-dimensional coordinate input method of the present invention.
In the present invention, position correction is repeatedly performed while confirming the position on the screen in order to obtain a desired three-dimensional coordinate value. When the position correction is performed, movement in the horizontal direction and movement in the vertical direction on the locate plane The user can select two directions conversationally.
3. Locate coordinates These are coordinate values that serve as a reference in carrying out the three-dimensional coordinate input method of the present invention.
In the present invention, position correction is repeatedly performed while confirming the position on the screen in order to obtain a desired three-dimensional coordinate value. The coordinate value resulting from the position correction is stored as locate coordinates, and the next position is determined. This is used as the coordinates of the base point for movement during correction.
Before executing the three-dimensional coordinate input method of the present invention, the initial values of the locate plane and the locate coordinates are determined in advance within a range of values on the locate plane.
[0012]
An embodiment of the present invention will be described in detail with reference to the drawings. FIG. 1 is a flowchart for explaining the three-dimensional coordinate input method of the present invention. FIGS. 6 to 8 show examples of inputting the shape of a rectangular parallelepiped using the present invention. When the coordinate value of the center of the bottom surface of the rectangular parallelepiped is determined by (0,0,0). It is a figure for demonstrating operation when inputting the coordinate of the vertex of an upper surface by this invention.
[0013]
Step 100:
The initial value of the locate coordinate on the locate plane determined in advance is registered, and the initial value of the mode (projection method) is set to the locate plane projection mode.
For example, in FIG. 6, a point M represents a mouse cursor on the screen and corresponds to a locate coordinate in a three-dimensional space. In this example, the locate plane is the XY plane and the initial value (0,0,0) of the locate coordinates is shown.
Further, by displaying the X coordinate value, the Y coordinate value, and the height (H) in the lower right of FIG. 6, the current coordinate input operation can be confirmed numerically. The same applies to FIGS. 7 and 8 below.
Step 110:
When the user wants to change the projection mode, the user selects a locate plane projection mode or a locate normal projection mode using means such as a mouse or a menu.
Step 120:
The user inputs coordinates on the screen using the mouse.
By moving the mouse cursor, the point M moves as illustrated in FIGS. 7 and 8, and the input shape and input coordinate values are displayed on the screen.
Here, the coordinates on the screen can be anything, but here the general device coordinate system origin: screen top left corner X axis: screen top left corner to screen right direction Y axis: screen top left corner to screen bottom direction I will use it.
Step 130:
The coordinates on the screen are converted into coordinates in the three-dimensional space (interference point (point E)) according to the designated projection mode. (This conversion method will be described later.)
Step 140:
The interference point (point E) obtained in step 130 is stored as a new locate coordinate.
Step 150:
The process ends when the desired coordinates are obtained. If the desired coordinate value is not obtained, the process returns to step 110 and is repeated until the desired coordinate is obtained.
[0014]
1. Locate plane projection mode The locate plane projection mode corrects the position in the direction horizontal to the locate plane, and converts the coordinates on the screen to the coordinates in the three-dimensional space by the following procedure.
The coordinate conversion in the locate plane projection mode will be described based on the flowchart of FIG. 2 and FIG.
[0015]
Step 200:
A straight line (line AG) in the three-dimensional space connecting the point (point G) in the three-dimensional space corresponding to the coordinates on the screen and the viewpoint (point A) is obtained.
In order to obtain the coordinates (point G) in the three-dimensional space corresponding to the coordinates on the screen, the coordinates on the projection plane (plane F) corresponding to the screen may be obtained.
The coordinate values on the projection plane can be obtained by, for example, the method of the document “Introductory Graphics” (published by ASCII Publishing Bureau in 1984, pages 127-133).
Step 210:
A plane (plane C) parallel to the locate plane (plane D) and passing through the current locate coordinate (point B) is obtained.
Step 220:
An interference point (point E) between the straight line AG and the surface C is obtained.
For example, FIG. 7 is an example of a screen showing the input of a three-dimensional coordinate value when the mouse cursor is moved to point M in the locate plane projection mode.
That is, the point M indicating the mouse cursor on the screen passes through the locating coordinates (0,0,0) set in FIG. 6 and is a point (10 in this case) on a plane parallel to the locating plane (in this case, the locating plane itself). , 10,0). With this, the shape of the bottom face of the rectangular parallelepiped has been determined.
[0016]
2. Locate normal projection mode The locate normal projection mode corrects the position in the direction perpendicular to the locate plane, and converts coordinates on the screen from coordinates on the screen in the following procedure.
The coordinate conversion in the locate normal projection mode will be described with reference to the flowchart of FIG. 3 and FIG.
[0017]
Step 300:
A horizontal line (for example, a line parallel to the X axis of the device coordinate system) is determined with respect to a screen that passes through the coordinates on the screen (here, coincides with the projection plane (plane F)) and corresponds to the line A straight line (line G) in the three-dimensional space is obtained.
Step 310:
A plane (plane C) determined by the line G and the viewpoint (point A) is obtained.
Step 320:
An interference point (point E) between the perpendicular line drawn from the current locate coordinate (point B) to the locate plane (surface D) and the surface C is obtained. Further, when the current locate coordinate is on the locate plane, a straight line cannot be obtained as it is, and therefore, an interference point (point E) between the straight line that passes through the locate coordinate and extends in the direction of the normal vector of the locate plane and the plane C. ).
For example, FIG. 8 is an example of a screen showing a state in which three-dimensional coordinates are input when the mouse cursor in FIG. 7 is moved upward in point M projection mode.
That is, the point M indicating the mouse cursor on the screen passes through the locate coordinates (10,10,0) set in FIG. 7 and is a point (10,10,10) on the straight line extending in the normal vector direction of the locate plane. ) Is projected. With this, the height of the rectangular parallelepiped was determined.
[0018]
As described above, in the related art, when a plane is set in a three-dimensional space and a mouse cursor on the screen is mapped on the plane, the coordinates on the plane can be input only.
In order to input arbitrary three-dimensional space coordinates, it is necessary to change the plane as necessary.
In order to change the plane in this way, it is necessary to determine one of the coordinate components (X, Y, Z), but the user displays the shape and repeats trial and error while confirming it. It is hard to decide how much with specific numbers.
-Even if a new plane is used, if it is not possible to refer to the coordinate values on the previous plane, it is necessary to adjust from the beginning on the new plane.
According to the embodiment of the present invention,
The X coordinate and Y coordinate are covered in the locate plane projection mode, and the Z coordinate is covered in the locate normal projection mode, and both can be finely adjusted repeatedly.
・ Since the previous coordinate value can be saved as a locate coordinate, it can be input as if it were a correction after that, so fine adjustment is possible.
The effect is demonstrated.
[0019]
【The invention's effect】
As is apparent from the above description, according to the invention described in
A step of setting a locate coordinate as an input reference of the three- dimensional space coordinate;
Determining a projection method of a point on the screen by selecting a locate plane projection mode or a locate normal projection mode as a mode using a mouse or a menu ;
Determining a straight line in the three-dimensional space from the coordinates of the viewpoint and the point on the screen; determining a plane parallel to the locate plane and passing through the current locate coordinate; and determining an interference point between the straight line and the plane A step of inputting a coordinate value with respect to the horizontal direction of the locate plane in which the interference point is set as a coordinate value in a three-dimensional space, and a horizontal 3 on the screen through the coordinates of the point on the screen. A step of determining a straight line in the dimensional space; a step of determining a plane passing through the straight line and the viewpoint; and an interference point between the plane and a straight line passing through the current locate coordinate and extending in the normal direction of the locate plane. And a step of inputting a coordinate value with respect to the normal direction of the locate plane in which the interference point is set as a coordinate value in a three-dimensional space, and the position input in any of the input steps And projecting from the coordinates of the point on which the the screen to enter while imagining the position on the three-dimensional space to coordinate value of a point in a three-dimensional space by displaying together values,
Since the projected coordinate value of the point on the screen is used as a new locate coordinate, the input of the three-dimensional coordinate does not require skill to imagine a spatial position such as a three-view drawing, and is sensory It is possible to input with a transparent view that is easy to understand.
[Brief description of the drawings]
FIG. 1 is a flowchart showing an embodiment of the present invention.
FIG. 2 is a flowchart showing a locate plane projection mode according to
FIG. 3 is a flowchart showing a locate normal projection mode according to claim 4 of the present invention;
FIG. 4 is a diagram for explaining a locate plane projection mode according to
FIG. 5 is a diagram for explaining a locate normal projection mode according to claim 4 of the present invention;
FIG. 6 is a diagram showing an initial state of three-dimensional coordinate input for explaining one embodiment of the present invention.
FIG. 7 is a diagram showing a three-dimensional coordinate input in a locate plane projection mode for explaining one embodiment of the present invention.
FIG. 8 is a diagram showing a three-dimensional coordinate input in a locate normal projection mode for explaining one embodiment of the present invention.
[Explanation of symbols]
A ... viewpoint, B ... current location coordinates,
D ... Locate plane, E ... Interference point, F ... Projection plane,
M: Point indicated by the mouse cursor.
Claims (2)
3次元空間座標の入力基準となるロケート座標を設定するステップと、
マウス又はメニューなどの手段を用いてモードをロケート平面投影モードかロケート法線投影モードかを選択して画面上の点の投影方法を決定するステップと、
視点と画面上の点の座標から3次元空間上の直線を決定するステップと、ロケート平面に平行で現在のロケート座標を通る平面を決定するステップと、前記直線と前記平面との干渉点を決定するステップとを備え、該干渉点を3次元空間上の座標値とするようにしたロケート平面の水平方向に対する座標値を入力するステップと、画面上の点の座標を通って画面に水平な3次元空間上の直線を決定するステップと、該直線と視点とを通る平面を決定するステップと、該平面と現在のロケ−ト座標を通りロケート平面の法線方向へ伸びる直線との干渉点を決定するステップとを備え、該干渉点を3次元空間上の座標値とするようにしたロケート平面の法線方向に対する座標値を入力するステップとを有し、いずれかの入力ステップで入力した座標値を合わせて表示することにより3次元空間上の位置を想像しながら入力するようにした画面上の点の座標から3次元空間上の点の座標値に投影するステップと、
前記画面上の点の投影された座標値を新しいロケート座標とするステップとからなることを特徴とする3次元座標入力方法。In a method of inputting a three-dimensional coordinate of a three-dimensional free-form surface and a three-dimensional free-form curve using a computer using a keyboard and a mouse as input means,
A step of setting a locate coordinate as an input reference of the three-dimensional space coordinate;
Determining a projection method of a point on the screen by selecting a locate plane projection mode or a locate normal projection mode as a mode using a mouse or a menu ;
Determining a straight line in the three-dimensional space from the coordinates of the viewpoint and the point on the screen; determining a plane parallel to the locate plane and passing through the current locate coordinate; and determining an interference point between the straight line and the plane A step of inputting a coordinate value with respect to the horizontal direction of the locate plane in which the interference point is set as a coordinate value in a three-dimensional space, and a horizontal 3 on the screen through the coordinates of the point on the screen. A step of determining a straight line in the dimensional space; a step of determining a plane passing through the straight line and the viewpoint; and an interference point between the plane and a straight line passing through the current locate coordinate and extending in the normal direction of the locate plane. And a step of inputting a coordinate value with respect to the normal direction of the locate plane in which the interference point is set as a coordinate value in a three-dimensional space, and the position input in any of the input steps And projecting from the coordinates of the point on which the the screen to enter while imagining the position on the three-dimensional space to coordinate value of a point in a three-dimensional space by displaying together values,
And a step of setting a projected coordinate value of a point on the screen as a new locate coordinate.
3次元空間座標の入力基準となるロケート座標を設定する手段と、
マウス又はメニューなどの手段を用いてモードをロケート平面投影モードかロケート法線投影モードかを選択して画面上の点の投影方法を決定する手段と、
視点と画面上の点の座標から3次元空間上の直線を決定する手段と、ロケート平面に平行で現在のロケート座標を通る平面を決定する手段と、前記直線と前記平面との干渉点を決定する手段とを備え、該干渉点を3次元空間上の座標値とするようにしたロケート平面の水平方向に対する座標値を入力する手段と、画面上の点の座標を通って画面に水平な3次元空間上の直線を決定する手段と、該直線と視点とを通る平面を決定する手段と、該平面と現在のロケ−ト座標を通りロケート平面の法線方向へ伸びる直線との干渉点を決定する手段とを備え、該干渉点を3次元空間上の座標値とするようにしたロケート平面の法線方向に対する座標値を入力する手段とを有し、いずれかの入力ステップで入力した座標値を合わせて表示することにより3次元空間上の位置を想像しながら入力するようにした画面上の点の座標から3次元空間上の点の座標値に投影する手段と、
前記画面上の点の投影された座標値を新しいロケート座標とする手段とからなることを特徴とする3次元座標入力装置。In an apparatus for inputting a three-dimensional coordinate of a three-dimensional free-form surface and a three-dimensional free-form curve using a computer using a keyboard and a mouse as input means,
Means for setting a locating coordinate as an input reference of three- dimensional spatial coordinates;
Means for selecting a projection method of a point on the screen by selecting a locate plane projection mode or a locate normal projection mode using means such as a mouse or a menu ;
Means for determining a straight line in a three-dimensional space from the coordinates of a point of view and a point on the screen, means for determining a plane parallel to the locate plane and passing through the current locate coordinates, and determining an interference point between the straight line and the plane Means for inputting a coordinate value with respect to the horizontal direction of the locate plane in which the interference point is set as a coordinate value in a three-dimensional space, and 3 which is horizontal on the screen through the coordinates of the point on the screen. A means for determining a straight line in the dimensional space; a means for determining a plane passing through the straight line and the viewpoint; and an interference point between the plane and a straight line passing through the current location coordinates and extending in the normal direction of the locate plane. And a means for inputting a coordinate value with respect to the normal direction of the locate plane in which the interference point is a coordinate value in a three-dimensional space. By displaying the values together And means for projecting from the coordinates of a point on the screen to enter while imagining the position on dimensional space to coordinate value of a point in a three-dimensional space,
Before Symbol 3-dimensional coordinate input device characterized by comprising a means for a new locate coordinates the projected coordinate value of a point on the screen.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP21443294A JP3676399B2 (en) | 1994-09-08 | 1994-09-08 | 3D coordinate input method and apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP21443294A JP3676399B2 (en) | 1994-09-08 | 1994-09-08 | 3D coordinate input method and apparatus |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0876921A JPH0876921A (en) | 1996-03-22 |
JP3676399B2 true JP3676399B2 (en) | 2005-07-27 |
Family
ID=16655692
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP21443294A Expired - Lifetime JP3676399B2 (en) | 1994-09-08 | 1994-09-08 | 3D coordinate input method and apparatus |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3676399B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2523130B1 (en) * | 2011-05-11 | 2024-12-25 | Dassault Systèmes | Method for designing a geometrical three-dimensional modeled object |
-
1994
- 1994-09-08 JP JP21443294A patent/JP3676399B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPH0876921A (en) | 1996-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7149668B2 (en) | Visualization of workpieces during simulation of milling processes | |
JPH0668758B2 (en) | Cursor control method and three-dimensional graphic display device | |
JP3744039B2 (en) | Perspective drawing creation support method | |
US5712965A (en) | Three-dimensional solid arranging/editing method in a computer graphic system and system | |
JP3676399B2 (en) | 3D coordinate input method and apparatus | |
KR101494805B1 (en) | System for producing three-dimensional content and method therefor | |
JP3361652B2 (en) | 3D figure arrangement input method and graphic system | |
JPH07234949A (en) | Perspective view creation support method and perspective view creation support system | |
US6848082B1 (en) | Reactor-based viewport clipping using arbitrary graphical entities | |
JPH0660164A (en) | 3D shape processing system | |
JP3451293B2 (en) | Figure transformation device | |
JPH07200875A (en) | Display position changing method for three-dimensional model | |
CN110297589B (en) | Automatic arrangement method and system for user-defined virtual key positions and virtual input device | |
JPH0488565A (en) | Projection drawing setting system for three-dimensional cad | |
JP2786098B2 (en) | Figure enlargement editing method | |
JPH07114655A (en) | Graphic processor | |
JPH07200874A (en) | Production of two-dimensional drawing for three-dimensional cad system | |
JP2571178B2 (en) | 3D graphics processor | |
JPH01206467A (en) | Rectangular parallelepiped domain designating method | |
JPS62251980A (en) | Grid display system | |
JP3486937B2 (en) | Figure transformation device | |
JPH08212390A (en) | Method and device for image processing | |
JPH10172009A (en) | 3D CG animation creation apparatus and creation method | |
JP2616132B2 (en) | Image display device | |
JPH0749965A (en) | Shape creation support method and apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040323 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040514 |
|
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: 20050426 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050428 |
|
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: 20080513 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090513 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100513 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110513 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120513 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120513 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130513 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130513 Year of fee payment: 8 |
|
EXPY | Cancellation because of completion of term |