JPH03667B2 - - Google Patents
Info
- Publication number
- JPH03667B2 JPH03667B2 JP61140392A JP14039286A JPH03667B2 JP H03667 B2 JPH03667 B2 JP H03667B2 JP 61140392 A JP61140392 A JP 61140392A JP 14039286 A JP14039286 A JP 14039286A JP H03667 B2 JPH03667 B2 JP H03667B2
- Authority
- JP
- Japan
- Prior art keywords
- line
- matrix
- points
- ray
- coordinates
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—Three-dimensional [3D] image rendering
- G06T15/10—Geometric effects
- G06T15/40—Hidden part removal
- G06T15/405—Hidden part removal using Z-buffer
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Geometry (AREA)
- Computer Graphics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Generation (AREA)
- Exposure And Positioning Against Photoresist Photosensitive Materials (AREA)
Description
A 産業上の利用分野
本発明は3次元表面の2次元像を表わす表面線
図を表示手段において表示する方法に関する。 B 従来技術 アイ・ビー・エム・テクニカル・デイスクロジ
ヤ・ブリテン(IBM Technical Disclosure
Bulletin)Vol.21,No.4、1978年9月号の第1715
及び1716頁には、コンピユータ制御により3次元
物体の像を表示する際に、奥行き及び方向の感じ
がでるように2つの線の交差点付近で一方の線を
部分的に消去したり、隠線を完全に消去したりす
ることが開示されている。 アイ・イー・イ・イー・コンピユータ・グラフ
イツクス・アプリケーシヨン(IEEE Computer
Graphics Appl.)Vol.4,No.6、1984年6月号の
第11乃至23頁には、3次元像の処理において3角
形を利用して隠れた面を消去するアンゴリズムが
開示されている。 C 発明が解決しようとする問題点 従来技術は、3次元表面の2次元像を表わす表
面線図に関して隠線を消去するためには適してい
ないし、又、複雑である。 D 問題点を解決するための手段 本発明は、3次元表面の2次元像を表わす表面
線図を表示する際に隠線を消去することのできる
表示方法を意図しており、概略的に言つて次のス
テツプイ乃至ニとり成る。 (イ) 3次元表面の選択された複数の点のX,Y,
Z座標を第1のマトリツクスとして記憶する。 (ロ) 同一のY座標を有する複数の点を通る線をX
線とし、同一のX座標を有する複数の点を通る
線をY線とし、且つ隣り合う2つのX線によつ
て区分されるY線の部分をY線部分として定義
し、X線及びY線部分を交互に引く(表示す
る)ための動作順序に合わせて第1のマトリツ
クス内の座標を配列し直して第2のマトリツク
スとする。 (ハ) Z軸及びY軸の回りの回転による座標変換操
作によつて第2のマトリツクス内の座標を変換
し第3のマトリツクスとする。 (ニ) 第3のマトリツクスを用いて表示手段におい
てX線を引く動作とY線部分を引く動作とを交
互に行い、その際に、最初のX線と相次ぐX線
との間に規定する禁止領域では線引きを禁止す
る。 E 実施例 第3図は3次元表面の2次元像を表わす表面線
図の1例である。この図は本発明に従つて描かれ
たものであり、全ての隠線が消去されているの
で、見る者に対して3次元的印象与える。 第2図はX軸、Y軸、Z軸と共に表面線図の別
の例を示している。この場合、隠線が全て表示さ
れているので、3次元的印象は弱められている。 第1図は第2図の表面線図中の隠線を本発明に
従つて全て消去したものを示している。X軸に平
行な線をX線と称し、Y軸に平行な線をY線と称
する。 複数のX線は線X1,X3…Xnとして示され
ており、複数のY線は線Y1,Y2…Ynとして
示されている。この図の場合、n=20である。複
数のX線は各Y線をn−1個の部分に区分してい
る。例えば、第1のY線Y1は、部分△Y11,
△Y12,…△Y1nに区分されており、第2の
Y線Y2は、部分△Y21,△Y22…△Y2n
に区分されている。同様に、最後のY線Ynは部
分△Yn1,△Yn2…△Ynnに区分されている。
これらの部分をY線部分と称する。 第1図の表面線図を表示するための本発明の実
施例は次の動作シーケンスから成る。 (1) X線とY線との全ての交点のX,Y,Z座標
をマトリツクスに記憶する。 (2) Z軸を中心とする所定角度αの座標回転によ
りマトリツクス内のデータを修正する。 (3) マトリツクス内の修正済のデータを、X軸を
中心とする所定角度βの座標回転により更に修
正する。 (4) マトリツクス内の修正済のデータを用いて第
1のY線Y1を引く。 (5) マトリツクス内の修正済のデータを用いて第
1のX線X1を引く。 (6) Y線部分△Y21,△Y31…△Yn1を引
く。 (7) 線X2を引く。 (8) 線X1を下位境界線として定義し、線X2を
上位境界線として定義する。上位境界線と下位
境界線との間の領域を禁止領域として定義す
る。禁止領域は、その中で線を引くことを禁止
する領域である。 (9) Y線分△Y22,△Y32…△Yn2を引く。 (10) X線X3を引き、このX3によつて上位境界
線を修正する。 (11) 前述の様に複数のY線部分を引く動作及び
X線を引く動作を交互に行う。その際、新たに
引くX線によつて上位境界線、ひいては禁止領
域を修正する。 第4図及び第5図は25個の点から成る表面線図
であつて、隠線を消去したものと隠線を含むもの
とを示している。第5図において、第1のX線は
点A1乃至5を通る線である。同様に第2のX線
は点B1乃至B5を通り、第3のX線は点C1乃
至C5を通り、第4のX線は点D1乃至D5を通
り、第5のX線は点E1乃至E5を通る。 又、第1のY線は点A1,B1,C1,D1,
E1を通り、第2のY線は点A2,B2,C2,
D2,E2を通り他のY線も図示のとおりであ
る。点B2−B3間のX線部分と点C2−C3間
のX線部分との交点はC23で示され、点B4−
B5間のX線部分と点C4−C5間のX線部分と
の交点はC45で示されている。 第5図における複数の点の座標は本文末尾に第
1表として記載したZマトリツクスの示されてい
る。例えば、第5図中の点A1の座標はX=4,
Y=1,Z=10であり、点A2の座標はX=5,
Y=1,Z=10である。 次に、Zマトリツクス中の座標を第2表に示す
様に線引き動作順序に従つて配列し直す。第2表
において、動作コード0は、関連する座標によつ
て指定された点について動作を行わないことを示
す。一方、動作コード101は前の点から関連す
る座標によつて指定された点まで線を引くことを
示す。 第2表の行1乃至5の内容は前述の様にA1か
らB1,C1,D1,E1を通るY線を引くこと
を示し、行6の内容は線を引くとなくE1からA
1へ戻ることを示している。 行7乃至10の内容はA1乃至A5をつなぐ第
1のX線を引く動作を示す。行11乃至18の内
容はA2−B2間、A3−B3間、A4−B4間
及びA5−B5間のY線部分を順次引く動作を示
す。行19乃至23の内容はB1乃至B5をつな
ぐ第2のX線を引く動作を示す。残りの行の内容
は、同様にX線部分を引く動作とX線を引く動作
とを交互に行うことを示している。 但し、第2表のマトリツクスの作成の際には、
動作順序が定められるだけで、実際の線引き動作
は行われない。 次に、方位の変換のために、下記の式に従つて
第2表における座標を変換して第3表を得る。 新X=0.833(X−3) 新Y=0.833Y 新Z=0.0938Z 次に、Z軸の回りの回転により第3表の座標を
変換する。第4表はZ軸の回りの角度α=15゜の
回転により変換を行つた結果の座標を表わしてい
る。 更に、X軸の回りの回転により第4表の座標を
変換摺る。第5表はX軸の回りの角度β=65゜の
回転により変換を行つた結果の座標を表わしてい
る。 次に、3次元表面の2次元像を得るためにX−
Y平面への投影により座標を変換する。この変換
は、単に第5表における全てのZ座標を除去する
だけでよい。 最後の操作は下記の式に従つて原点移動及び大
きさ変換を行うことである。 新X=MX+XO 新Y=MY+YO これらの式においてXO及びYOX及びY方向に
おける原点の移動距離を表わし、Mは倍率を表わ
す。この様な操作を必要とする理由は、表面図を
表示手段の座標系に合わせるためである。第6表
は第5表の座標値についてXO=1312.3,YO=
370.0,M=414.6として変換を行つた結果を表わ
している。但し、小数点以下の数値は4捨5入し
てある。 第6表は第5図の表面線図を表示装置において
描くために用いられる最後のマトリツクスを表わ
している。但し、第5図の表面線図は全ての隠線
(破線で図示されている)を含んでいる。第6図
及び第7図に関連して説明する技法を用いて全て
の隠線を除去することにより第4図の表面線図が
得られる。 第6図に示す様に先ずA1,B1,C1,D
1,E1を通る第1のY線を引き、続いてA1,
A2,A3,A4,A5を通る第1のX線を引
く。そして、U1,U2,E1,D1,C1,B
1,A1,A2,A3,A4,A5,U3,U4
を通る上位境界線を定める。同様に、L1,L
2,E1,D1,C1,B1,A1,A2,A
3,A4,A5,L3,L4を通る下位境界線を
定める。なお、上位境界線における点U1,U
2,U3,U4は表示装置の座標系において十分
に低い座標値を有するように選定し、下位境界線
における点L2,L2,L3,L4は十分に高い
座標値を有する様に選定する。 第6表のマトリツクスの行1乃至10によつて
示される動作を終了した段階においては、上位境
界線と下位境界線とはE1からA5まで互いに重
なつている。次に行11乃至18の動作を終了す
るとき、上位境界線をU1,U2,E1,D1,
C1,B1,A1,A2′,B2,A2,A3′,
B3,A3,A4′,B4,A4,A5′,B5,
A5,U3,U4を通るように修正する。なお、
第6図におけるA2′,A3′,A4′,A5′は実
際にはA2,A3,A4,A5と一致しているも
のであるが、説明の便宜上異なつた位置に示して
ある。この様に上位境界線はY線部分に応じたス
パイクを有する。行19乃至23の動作の終了段
階において、上位境界線を第7図に示されている
ように、U1,U2,E1,D1,C1,B1,
B2,B3,B4,B5,A5,U3,U4を通
る様に修正する。下位境界線は不変である。こう
して上位境界線と下位境界線との間の領域、即ち
A1,B1,B2,B3,B4,B5,A5,A
4,A3,A2,A1をつなぐ線によつて囲まれ
た領域を禁止領域として設定する。(禁止領域情
報を記憶手段によつて記憶しておく)禁止領域は
動作の進行につれて次第に拡大する。 次に、第6表、ひいては第2表の行25の動作
について考察すると、これは第5図B2からC2
までの線を引くものである。この線は禁止領域内
に入つていないので、引くことができる。次の行
26はC2からB3へのジヤンプを指示してい
る。行27はB3はC3へ線を引く動作を示して
いる。第5図から分かる様に、この線は禁止領域
内に存在するので、破線で示してある。即ち、こ
の線は穏線であり、実際には表示されてないので
ある。 行29の動作に関係するB4−C4間の線も隠
線である。行30の動作に関係するB5−C5間
の線は禁止領域内に入つていないので、引くこと
ができる。 行33乃至36に従つて次のX線を引く動作の
終了時に、上位境界線はC1とB5との間でC
2,C23,B3,B4,C45,C5を通る様
に修正される。C23,C45はそれぞれ2つの
線の交点を表わしている。第5図から分かる様
に、C2−C3間の線については、C2からC2
3までの部分だけを引き、C23からC3までの
部分を消去する。同様に、C4−C5間の線につ
いては、C4からC45までの部分を消去し、C
45からC5までの部分だけを引く。 C23−C3間及びC4−C45間に存在する
様な部分的隠線を消去するための技法は次のとお
りである。 先ず、一般的に2点間に線を引くことは、非常
に短い線分を順次引くための複数の歩進的動作ス
テツプによつて達成される。例えばC1−C2間
において数百個の歩進的動作ステツプが必要であ
る。そして、各ステツプ毎に引くべき線分が禁止
領域内に入つているか否かどうかの判断を行う。
C1からC3へ向かう線を引く場合C2−C23
間では、各ステツプ毎に禁止領域外にあることが
確認されるが、C23を越えると、禁止領域内に
あることが検出される。 第8図は、B2からC2へ向かう線を引く動作
とC2からC3へ向かう線を引く動作を詳しく説
明するための図である。B2−C3間の線とX軸
とが成す角度aが図示の如く45゜より大きい場合、
線は、長さsでX軸に直角な複数の線分10のつ
ながりとして描かれる。一方、C2−C3間の線
の様に、線とX軸とが成す角度bが図示の如く
45゜より小さい場合には、線は、長さrでX軸に
平行な複数の線分11のつながりとして描かれ
る。この様な動作はAPLプログラム言語によつ
て容易に記述することができる。 前述の第4表及び第5表に関する座標変換のた
めの回転角度α及びβは任意に選定可能である。
Z軸の回りの回転角度αが45゜より大きい場合に
は、X座標とY座標に関する線引き動作の規則を
交換する必要がある。即ち、動作順序は次の様に
なる。 (1)第1のX線を引く。 (2)第1のY線を引く。 (3)第1群のX線部分を引く。 (4)第2のY線を引く。 (5)第2群のX線部分を引く。 以下同様。 又、90゜を越す回転角度を用いたり、正方向の
みならず負方向の回転も可能であるが、それに応
じて動作順序を変えることが必要である。 更に、前述のC23,C45等の交点の座標を
考慮に入れてマトリツクスを修正することによつ
て、歩数的動作ステツプを用いることなく線を引
くことも可能である。この様な修正操作は、上位
境界線を修正するとき行うことが望ましい。 本発明は、例えばキーボード及びベクトル表示
型デイスプレイを有し、コンピユータに接続され
て動作するワークステーシヨンにおいて良好に実
施可能である。コンピユータにおけるプログラム
は、3次元表面に関する座標データをキーボード
から受け入れ、それに基いて表面線図デイスプレ
イ画面上に表示するための制御を行うように構成
される。 F 発明の効果 本発明によれば、3次元表面を2次元像として
表わす表面線図を表示する際に、簡単に隠線を消
去することができる。
図を表示手段において表示する方法に関する。 B 従来技術 アイ・ビー・エム・テクニカル・デイスクロジ
ヤ・ブリテン(IBM Technical Disclosure
Bulletin)Vol.21,No.4、1978年9月号の第1715
及び1716頁には、コンピユータ制御により3次元
物体の像を表示する際に、奥行き及び方向の感じ
がでるように2つの線の交差点付近で一方の線を
部分的に消去したり、隠線を完全に消去したりす
ることが開示されている。 アイ・イー・イ・イー・コンピユータ・グラフ
イツクス・アプリケーシヨン(IEEE Computer
Graphics Appl.)Vol.4,No.6、1984年6月号の
第11乃至23頁には、3次元像の処理において3角
形を利用して隠れた面を消去するアンゴリズムが
開示されている。 C 発明が解決しようとする問題点 従来技術は、3次元表面の2次元像を表わす表
面線図に関して隠線を消去するためには適してい
ないし、又、複雑である。 D 問題点を解決するための手段 本発明は、3次元表面の2次元像を表わす表面
線図を表示する際に隠線を消去することのできる
表示方法を意図しており、概略的に言つて次のス
テツプイ乃至ニとり成る。 (イ) 3次元表面の選択された複数の点のX,Y,
Z座標を第1のマトリツクスとして記憶する。 (ロ) 同一のY座標を有する複数の点を通る線をX
線とし、同一のX座標を有する複数の点を通る
線をY線とし、且つ隣り合う2つのX線によつ
て区分されるY線の部分をY線部分として定義
し、X線及びY線部分を交互に引く(表示す
る)ための動作順序に合わせて第1のマトリツ
クス内の座標を配列し直して第2のマトリツク
スとする。 (ハ) Z軸及びY軸の回りの回転による座標変換操
作によつて第2のマトリツクス内の座標を変換
し第3のマトリツクスとする。 (ニ) 第3のマトリツクスを用いて表示手段におい
てX線を引く動作とY線部分を引く動作とを交
互に行い、その際に、最初のX線と相次ぐX線
との間に規定する禁止領域では線引きを禁止す
る。 E 実施例 第3図は3次元表面の2次元像を表わす表面線
図の1例である。この図は本発明に従つて描かれ
たものであり、全ての隠線が消去されているの
で、見る者に対して3次元的印象与える。 第2図はX軸、Y軸、Z軸と共に表面線図の別
の例を示している。この場合、隠線が全て表示さ
れているので、3次元的印象は弱められている。 第1図は第2図の表面線図中の隠線を本発明に
従つて全て消去したものを示している。X軸に平
行な線をX線と称し、Y軸に平行な線をY線と称
する。 複数のX線は線X1,X3…Xnとして示され
ており、複数のY線は線Y1,Y2…Ynとして
示されている。この図の場合、n=20である。複
数のX線は各Y線をn−1個の部分に区分してい
る。例えば、第1のY線Y1は、部分△Y11,
△Y12,…△Y1nに区分されており、第2の
Y線Y2は、部分△Y21,△Y22…△Y2n
に区分されている。同様に、最後のY線Ynは部
分△Yn1,△Yn2…△Ynnに区分されている。
これらの部分をY線部分と称する。 第1図の表面線図を表示するための本発明の実
施例は次の動作シーケンスから成る。 (1) X線とY線との全ての交点のX,Y,Z座標
をマトリツクスに記憶する。 (2) Z軸を中心とする所定角度αの座標回転によ
りマトリツクス内のデータを修正する。 (3) マトリツクス内の修正済のデータを、X軸を
中心とする所定角度βの座標回転により更に修
正する。 (4) マトリツクス内の修正済のデータを用いて第
1のY線Y1を引く。 (5) マトリツクス内の修正済のデータを用いて第
1のX線X1を引く。 (6) Y線部分△Y21,△Y31…△Yn1を引
く。 (7) 線X2を引く。 (8) 線X1を下位境界線として定義し、線X2を
上位境界線として定義する。上位境界線と下位
境界線との間の領域を禁止領域として定義す
る。禁止領域は、その中で線を引くことを禁止
する領域である。 (9) Y線分△Y22,△Y32…△Yn2を引く。 (10) X線X3を引き、このX3によつて上位境界
線を修正する。 (11) 前述の様に複数のY線部分を引く動作及び
X線を引く動作を交互に行う。その際、新たに
引くX線によつて上位境界線、ひいては禁止領
域を修正する。 第4図及び第5図は25個の点から成る表面線図
であつて、隠線を消去したものと隠線を含むもの
とを示している。第5図において、第1のX線は
点A1乃至5を通る線である。同様に第2のX線
は点B1乃至B5を通り、第3のX線は点C1乃
至C5を通り、第4のX線は点D1乃至D5を通
り、第5のX線は点E1乃至E5を通る。 又、第1のY線は点A1,B1,C1,D1,
E1を通り、第2のY線は点A2,B2,C2,
D2,E2を通り他のY線も図示のとおりであ
る。点B2−B3間のX線部分と点C2−C3間
のX線部分との交点はC23で示され、点B4−
B5間のX線部分と点C4−C5間のX線部分と
の交点はC45で示されている。 第5図における複数の点の座標は本文末尾に第
1表として記載したZマトリツクスの示されてい
る。例えば、第5図中の点A1の座標はX=4,
Y=1,Z=10であり、点A2の座標はX=5,
Y=1,Z=10である。 次に、Zマトリツクス中の座標を第2表に示す
様に線引き動作順序に従つて配列し直す。第2表
において、動作コード0は、関連する座標によつ
て指定された点について動作を行わないことを示
す。一方、動作コード101は前の点から関連す
る座標によつて指定された点まで線を引くことを
示す。 第2表の行1乃至5の内容は前述の様にA1か
らB1,C1,D1,E1を通るY線を引くこと
を示し、行6の内容は線を引くとなくE1からA
1へ戻ることを示している。 行7乃至10の内容はA1乃至A5をつなぐ第
1のX線を引く動作を示す。行11乃至18の内
容はA2−B2間、A3−B3間、A4−B4間
及びA5−B5間のY線部分を順次引く動作を示
す。行19乃至23の内容はB1乃至B5をつな
ぐ第2のX線を引く動作を示す。残りの行の内容
は、同様にX線部分を引く動作とX線を引く動作
とを交互に行うことを示している。 但し、第2表のマトリツクスの作成の際には、
動作順序が定められるだけで、実際の線引き動作
は行われない。 次に、方位の変換のために、下記の式に従つて
第2表における座標を変換して第3表を得る。 新X=0.833(X−3) 新Y=0.833Y 新Z=0.0938Z 次に、Z軸の回りの回転により第3表の座標を
変換する。第4表はZ軸の回りの角度α=15゜の
回転により変換を行つた結果の座標を表わしてい
る。 更に、X軸の回りの回転により第4表の座標を
変換摺る。第5表はX軸の回りの角度β=65゜の
回転により変換を行つた結果の座標を表わしてい
る。 次に、3次元表面の2次元像を得るためにX−
Y平面への投影により座標を変換する。この変換
は、単に第5表における全てのZ座標を除去する
だけでよい。 最後の操作は下記の式に従つて原点移動及び大
きさ変換を行うことである。 新X=MX+XO 新Y=MY+YO これらの式においてXO及びYOX及びY方向に
おける原点の移動距離を表わし、Mは倍率を表わ
す。この様な操作を必要とする理由は、表面図を
表示手段の座標系に合わせるためである。第6表
は第5表の座標値についてXO=1312.3,YO=
370.0,M=414.6として変換を行つた結果を表わ
している。但し、小数点以下の数値は4捨5入し
てある。 第6表は第5図の表面線図を表示装置において
描くために用いられる最後のマトリツクスを表わ
している。但し、第5図の表面線図は全ての隠線
(破線で図示されている)を含んでいる。第6図
及び第7図に関連して説明する技法を用いて全て
の隠線を除去することにより第4図の表面線図が
得られる。 第6図に示す様に先ずA1,B1,C1,D
1,E1を通る第1のY線を引き、続いてA1,
A2,A3,A4,A5を通る第1のX線を引
く。そして、U1,U2,E1,D1,C1,B
1,A1,A2,A3,A4,A5,U3,U4
を通る上位境界線を定める。同様に、L1,L
2,E1,D1,C1,B1,A1,A2,A
3,A4,A5,L3,L4を通る下位境界線を
定める。なお、上位境界線における点U1,U
2,U3,U4は表示装置の座標系において十分
に低い座標値を有するように選定し、下位境界線
における点L2,L2,L3,L4は十分に高い
座標値を有する様に選定する。 第6表のマトリツクスの行1乃至10によつて
示される動作を終了した段階においては、上位境
界線と下位境界線とはE1からA5まで互いに重
なつている。次に行11乃至18の動作を終了す
るとき、上位境界線をU1,U2,E1,D1,
C1,B1,A1,A2′,B2,A2,A3′,
B3,A3,A4′,B4,A4,A5′,B5,
A5,U3,U4を通るように修正する。なお、
第6図におけるA2′,A3′,A4′,A5′は実
際にはA2,A3,A4,A5と一致しているも
のであるが、説明の便宜上異なつた位置に示して
ある。この様に上位境界線はY線部分に応じたス
パイクを有する。行19乃至23の動作の終了段
階において、上位境界線を第7図に示されている
ように、U1,U2,E1,D1,C1,B1,
B2,B3,B4,B5,A5,U3,U4を通
る様に修正する。下位境界線は不変である。こう
して上位境界線と下位境界線との間の領域、即ち
A1,B1,B2,B3,B4,B5,A5,A
4,A3,A2,A1をつなぐ線によつて囲まれ
た領域を禁止領域として設定する。(禁止領域情
報を記憶手段によつて記憶しておく)禁止領域は
動作の進行につれて次第に拡大する。 次に、第6表、ひいては第2表の行25の動作
について考察すると、これは第5図B2からC2
までの線を引くものである。この線は禁止領域内
に入つていないので、引くことができる。次の行
26はC2からB3へのジヤンプを指示してい
る。行27はB3はC3へ線を引く動作を示して
いる。第5図から分かる様に、この線は禁止領域
内に存在するので、破線で示してある。即ち、こ
の線は穏線であり、実際には表示されてないので
ある。 行29の動作に関係するB4−C4間の線も隠
線である。行30の動作に関係するB5−C5間
の線は禁止領域内に入つていないので、引くこと
ができる。 行33乃至36に従つて次のX線を引く動作の
終了時に、上位境界線はC1とB5との間でC
2,C23,B3,B4,C45,C5を通る様
に修正される。C23,C45はそれぞれ2つの
線の交点を表わしている。第5図から分かる様
に、C2−C3間の線については、C2からC2
3までの部分だけを引き、C23からC3までの
部分を消去する。同様に、C4−C5間の線につ
いては、C4からC45までの部分を消去し、C
45からC5までの部分だけを引く。 C23−C3間及びC4−C45間に存在する
様な部分的隠線を消去するための技法は次のとお
りである。 先ず、一般的に2点間に線を引くことは、非常
に短い線分を順次引くための複数の歩進的動作ス
テツプによつて達成される。例えばC1−C2間
において数百個の歩進的動作ステツプが必要であ
る。そして、各ステツプ毎に引くべき線分が禁止
領域内に入つているか否かどうかの判断を行う。
C1からC3へ向かう線を引く場合C2−C23
間では、各ステツプ毎に禁止領域外にあることが
確認されるが、C23を越えると、禁止領域内に
あることが検出される。 第8図は、B2からC2へ向かう線を引く動作
とC2からC3へ向かう線を引く動作を詳しく説
明するための図である。B2−C3間の線とX軸
とが成す角度aが図示の如く45゜より大きい場合、
線は、長さsでX軸に直角な複数の線分10のつ
ながりとして描かれる。一方、C2−C3間の線
の様に、線とX軸とが成す角度bが図示の如く
45゜より小さい場合には、線は、長さrでX軸に
平行な複数の線分11のつながりとして描かれ
る。この様な動作はAPLプログラム言語によつ
て容易に記述することができる。 前述の第4表及び第5表に関する座標変換のた
めの回転角度α及びβは任意に選定可能である。
Z軸の回りの回転角度αが45゜より大きい場合に
は、X座標とY座標に関する線引き動作の規則を
交換する必要がある。即ち、動作順序は次の様に
なる。 (1)第1のX線を引く。 (2)第1のY線を引く。 (3)第1群のX線部分を引く。 (4)第2のY線を引く。 (5)第2群のX線部分を引く。 以下同様。 又、90゜を越す回転角度を用いたり、正方向の
みならず負方向の回転も可能であるが、それに応
じて動作順序を変えることが必要である。 更に、前述のC23,C45等の交点の座標を
考慮に入れてマトリツクスを修正することによつ
て、歩数的動作ステツプを用いることなく線を引
くことも可能である。この様な修正操作は、上位
境界線を修正するとき行うことが望ましい。 本発明は、例えばキーボード及びベクトル表示
型デイスプレイを有し、コンピユータに接続され
て動作するワークステーシヨンにおいて良好に実
施可能である。コンピユータにおけるプログラム
は、3次元表面に関する座標データをキーボード
から受け入れ、それに基いて表面線図デイスプレ
イ画面上に表示するための制御を行うように構成
される。 F 発明の効果 本発明によれば、3次元表面を2次元像として
表わす表面線図を表示する際に、簡単に隠線を消
去することができる。
【表】
【表】
【表】
【表】
【表】
【表】
【表】
【表】
【表】
【表】
【表】
【表】
第1図は本発明に従つて隠線を消去した表面線
図を座標軸と共に示す図、第2図は第1図の表面
線図に隠線を加えたものを示す図、第3図は本発
明に従つて隠線を消去した別の表面線図の例を示
す図、第4図は25個の点を有する表面線図であつ
て本発明に従つて隠線を消去したものを示す図、
第5図は第4図の表面線図に破線で隠線を加えた
ものを示す図、第6図及び第7図は第5図の表面
線図の1部と共に上位境界線及び下位境界線を示
す図、第8図は歩進的動作ステツプにより引かれ
る線を示す図である。 X1乃至Xn:X線、Y1乃至Yn:Y線、△Y
11乃至△Y1n、△Y21乃至△Y2n、△
Yn1乃至△Ynn:Y線部分。
図を座標軸と共に示す図、第2図は第1図の表面
線図に隠線を加えたものを示す図、第3図は本発
明に従つて隠線を消去した別の表面線図の例を示
す図、第4図は25個の点を有する表面線図であつ
て本発明に従つて隠線を消去したものを示す図、
第5図は第4図の表面線図に破線で隠線を加えた
ものを示す図、第6図及び第7図は第5図の表面
線図の1部と共に上位境界線及び下位境界線を示
す図、第8図は歩進的動作ステツプにより引かれ
る線を示す図である。 X1乃至Xn:X線、Y1乃至Yn:Y線、△Y
11乃至△Y1n、△Y21乃至△Y2n、△
Yn1乃至△Ynn:Y線部分。
Claims (1)
- 【特許請求の範囲】 1 隠線を消去した状態で3次元表面の2次元像
を表わす表面線図を表示するための下記ステツプ
イ乃至ニより成る表面線図表示方法: (イ) X軸、Y軸、Z軸を有する座標系における3
次元表面の選択された複数の点のX,Y,Z座
標を第1のマトリツクスとして記憶手段に記憶
し、 (ロ) 同一のY座標を有する複数の点を通る線をX
線とし、同一のX座標を有する複数の点を通る
線をY線とし、且つ隣り合う2つのX線によつ
て区分されるY線の部分をY線部分として定義
した状態において、Y座標の大きさに関する所
定の順序で相次ぐX線を引く動作とこの相次ぐ
X線を引く動作間でY線部分を引く動作とを含
む動作順序に適合する様に上記第1のマトリツ
クス内の複数の点の座標を配列し直して第2の
マトリツクスとし、 (ハ) 上記Z軸の回りの任意の角度の回転及び上記
X軸の回りの任意の角度の回転による座標変換
操作によつて上記第2マトリツクス内の複数の
点の座標を変換して第3のマトリツクスとし、 (ニ) 上記第3のマトリツクスを用いて表示手段に
おいて上記X線を引く動作とY線部分を引く動
作とを交互に行い、その際、最初のX線と相次
ぐX線とによつてそれらの間に定められる領域
を禁止領域として指定する禁止領域情報を更新
しつつ記憶手段に記憶しておき、該禁止領域情
報に従つて、上記禁止領域内での線引きを禁止
する。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| SE8503392A SE445154B (sv) | 1985-07-08 | 1985-07-08 | Metod for att avlegsna dolda linjer |
| SE8503392-6 | 1985-07-08 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS6210776A JPS6210776A (ja) | 1987-01-19 |
| JPH03667B2 true JPH03667B2 (ja) | 1991-01-08 |
Family
ID=20360859
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP61140392A Granted JPS6210776A (ja) | 1985-07-08 | 1986-06-18 | 表面線図表示方法 |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US4847789A (ja) |
| EP (1) | EP0208149B1 (ja) |
| JP (1) | JPS6210776A (ja) |
| DE (1) | DE3678345D1 (ja) |
| SE (1) | SE445154B (ja) |
Families Citing this family (22)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP0513474A1 (en) * | 1986-09-11 | 1992-11-19 | Hughes Aircraft Company | Digital visual and sensor simulation system for generating realistic scenes |
| JPH0831139B2 (ja) * | 1987-09-29 | 1996-03-27 | ファナック株式会社 | 形状の陰線処理方法 |
| FR2635393B1 (fr) * | 1988-08-10 | 1990-10-19 | Thomson Csf | Procede d'elimination des faces cachees, pour la synthese d'une image filaire tridimensionnelle |
| JP2824342B2 (ja) * | 1991-03-29 | 1998-11-11 | 富士通株式会社 | イメージ高速描画装置 |
| US5359704A (en) * | 1991-10-30 | 1994-10-25 | International Business Machines Corporation | Method for selecting silhouette and visible edges in wire frame images in a computer graphics display system |
| GB2270243B (en) * | 1992-08-26 | 1996-02-28 | Namco Ltd | Image synthesizing system |
| TW241196B (ja) * | 1993-01-15 | 1995-02-21 | Du Pont | |
| US5574835A (en) * | 1993-04-06 | 1996-11-12 | Silicon Engines, Inc. | Bounding box and projections detection of hidden polygons in three-dimensional spatial databases |
| US5542032A (en) * | 1993-10-04 | 1996-07-30 | Loral Federal Systems Company | Fast display of images of three-dimensional surfaces without aliasing |
| US6111583A (en) * | 1997-09-29 | 2000-08-29 | Skyline Software Systems Ltd. | Apparatus and method for three-dimensional terrain rendering |
| GB9722766D0 (en) | 1997-10-28 | 1997-12-24 | British Telecomm | Portable computers |
| US6771264B1 (en) * | 1998-08-20 | 2004-08-03 | Apple Computer, Inc. | Method and apparatus for performing tangent space lighting and bump mapping in a deferred shading graphics processor |
| AU5688199A (en) | 1998-08-20 | 2000-03-14 | Raycer, Inc. | System, apparatus and method for spatially sorting image data in a three-dimensional graphics pipeline |
| US20030158786A1 (en) * | 1999-02-26 | 2003-08-21 | Skyline Software Systems, Inc. | Sending three-dimensional images over a network |
| JP3804328B2 (ja) * | 1999-03-02 | 2006-08-02 | 株式会社セガ | 画像処理装置及び画像処理方法 |
| US7599044B2 (en) | 2005-06-23 | 2009-10-06 | Apple Inc. | Method and apparatus for remotely detecting presence |
| US7242169B2 (en) * | 2005-03-01 | 2007-07-10 | Apple Inc. | Method and apparatus for voltage compensation for parasitic impedance |
| US7577930B2 (en) | 2005-06-23 | 2009-08-18 | Apple Inc. | Method and apparatus for analyzing integrated circuit operations |
| US9298311B2 (en) * | 2005-06-23 | 2016-03-29 | Apple Inc. | Trackpad sensitivity compensation |
| US7433191B2 (en) * | 2005-09-30 | 2008-10-07 | Apple Inc. | Thermal contact arrangement |
| US7598711B2 (en) * | 2005-11-23 | 2009-10-06 | Apple Inc. | Power source switchover apparatus and method |
| CN101479770B (zh) * | 2006-07-07 | 2013-03-06 | 艾利森电话股份有限公司 | 简化矢量图像的装置和方法 |
Family Cites Families (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE151274C (ja) * | ||||
| US3671729A (en) * | 1971-03-10 | 1972-06-20 | Us Air Force | Obscuration delineation circuitry |
| US4181953A (en) * | 1978-02-17 | 1980-01-01 | The Singer Company | Face vertex correction for real-time simulation of a polygon face object system |
| US4222048A (en) * | 1978-06-02 | 1980-09-09 | The Boeing Company | Three dimension graphic generator for displays with hidden lines |
| US4412296A (en) * | 1981-06-10 | 1983-10-25 | Smiths Industries, Inc. | Graphics clipping circuit |
| EP0112942B1 (en) * | 1982-12-30 | 1987-03-11 | International Business Machines Corporation | Graphics display system and method |
| US4594673A (en) * | 1983-06-28 | 1986-06-10 | Gti Corporation | Hidden surface processor |
| US4583185A (en) * | 1983-10-28 | 1986-04-15 | General Electric Company | Incremental terrain image generation |
| DE3403678A1 (de) * | 1984-02-03 | 1985-08-08 | Dr. Johannes Heidenhain Gmbh, 8225 Traunreut | Verfahren zum darstellen von gegenstaenden |
-
1985
- 1985-07-08 SE SE8503392A patent/SE445154B/sv not_active IP Right Cessation
-
1986
- 1986-06-06 DE DE8686107739T patent/DE3678345D1/de not_active Expired - Lifetime
- 1986-06-06 EP EP86107739A patent/EP0208149B1/en not_active Expired
- 1986-06-18 JP JP61140392A patent/JPS6210776A/ja active Granted
- 1986-07-07 US US06/882,315 patent/US4847789A/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| EP0208149B1 (en) | 1991-03-27 |
| SE445154B (sv) | 1986-06-02 |
| US4847789A (en) | 1989-07-11 |
| EP0208149A1 (en) | 1987-01-14 |
| SE8503392D0 (sv) | 1985-07-08 |
| DE3678345D1 (de) | 1991-05-02 |
| JPS6210776A (ja) | 1987-01-19 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH03667B2 (ja) | ||
| US6330003B1 (en) | Transformable graphical regions | |
| JPH0251786A (ja) | 走査変換方法 | |
| EP0607136B1 (en) | Graphics output system with bounded updating | |
| US5745667A (en) | 3d graphics apparatus using texture images with displacement information | |
| EP0344686B1 (en) | Clipping process and processor | |
| US6166741A (en) | Graphics segment organization in a graphics system | |
| JPH05135154A (ja) | 3次元ウインドウを用いたグラフイツクデータ処理システム | |
| US20040169655A1 (en) | Active region determination for line generation in regionalized rasterizer displays | |
| EP0268038B1 (en) | Graphics processing system | |
| JP3054545B2 (ja) | 文字図形編集方法及び装置 | |
| JPH0519194B2 (ja) | ||
| JPH0830666A (ja) | 文字列配置方法及びその装置 | |
| JP2642374B2 (ja) | 図形クリツピング方法 | |
| Gal | Hidden Feature Removal and Display of Intersecting Objects in UNIGRAFIX | |
| JP3071495B2 (ja) | 物体モデル編集装置 | |
| JP3092241B2 (ja) | 立体形状の設計方法及び表示方法 | |
| JPH02122378A (ja) | 画像操作方法 | |
| JPH07262353A (ja) | 線画の訂正方法 | |
| JPH0752466B2 (ja) | ラスターオペレーション装置およびその方法 | |
| JPH0492974A (ja) | 自動寸法表示装置 | |
| JPS62145370A (ja) | 自動設計における寸法線配置方式 | |
| JPH01154294A (ja) | 多角形の描画方式 | |
| JPH06176130A (ja) | 対話式ポリゴン選択装置 | |
| JPS6340979A (ja) | 隠線処理方式 |