JP2668864B2 - Cross-section drawing device - Google Patents

Cross-section drawing device

Info

Publication number
JP2668864B2
JP2668864B2 JP22738886A JP22738886A JP2668864B2 JP 2668864 B2 JP2668864 B2 JP 2668864B2 JP 22738886 A JP22738886 A JP 22738886A JP 22738886 A JP22738886 A JP 22738886A JP 2668864 B2 JP2668864 B2 JP 2668864B2
Authority
JP
Japan
Prior art keywords
value
data
interpolation
latch circuit
drawn
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
Application number
JP22738886A
Other languages
Japanese (ja)
Other versions
JPS6381584A (en
Inventor
智章 上田
和夫 西口
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.)
Daikin Industries Ltd
Original Assignee
Daikin Industries 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 Daikin Industries Ltd filed Critical Daikin Industries Ltd
Priority to JP22738886A priority Critical patent/JP2668864B2/en
Publication of JPS6381584A publication Critical patent/JPS6381584A/en
Application granted granted Critical
Publication of JP2668864B2 publication Critical patent/JP2668864B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Image Generation (AREA)

Description

【発明の詳細な説明】 <産業上の利用分野> この発明は断面図描画装置に関し、さらに詳細にいえ
ば、3次元グラフィックディスプレイ装置において3次
元図形の所望箇所を切断した状態を表示するための断面
図描画装置に関する。 <従来の技術> 従来から3次元グラフィックディスプレイ装置におい
ては、隠面処理機能、および断面処理機能が重要な役割
を果たすので、上記両機能を具場させることが必須にな
ってきている。 第4図は隠面処理機能、および断面処理機能を具備す
る3次元グラフィックディスプレイ装置の従来例を示す
ブロック図であり、図示しないホストコンピュータから
座標データが供給される座標変換プロセッサ(91)と、
座標変換プロセッサ(91)により変換が施されたデバイ
ス座標データが供給されるクリッププロセッサ(92)
と、クリッププロセッサ(92)によりクリッピングが施
されたプリミティブデータが供給される描画プロセッサ
(93)と、描画プロセッサ(93)から出力されるピクセ
ルデータが供給される描画メモリ(94)と、描画プロセ
ッサ(93)から出力されるピクセルデータが供給される
ことにより、以前に設定されている座標データとに基い
て描画メモリ(94)に書込み許可信号を供給するZバッ
ファ(95)と、描画メモリ(94)に格納されているピク
セルデータに基いて可視的表示を行なわせるモニタ(9
6)とを具備している。 したがって、ホストコンピュータから供給されてきた
座標データを座標変換プロセッサ(91)によりデバイス
座標データに変換し、ユーザが指定する領域の外にある
プリミティブデータをクリッププロセッサ(92)により
クリッピングし、描画プロセッサ(93)に供給する。そ
して、描画プロセッサ(93)においては、上記指令領域
内にあるプリミティブデータの各点をx,y,zの各方向に
補間しながらZバッファ(95)にzデータを供給すると
ともに、描画メモリ(94)に(x,y)データを供給す
る。 上記Zバッファ(95)においては、(x,y)データ毎
のz値を記憶し、ピクセルデータ(x,y,z1)と現在記憶
している(x,y,z0)とを比較し、0≦z1≦z0の状態であ
れば、(x,y,z1)を表示させるべき描画メモリ(94)に
書込み許可信号を供給し、z1を新たなz0としてセットす
る。逆に、z0<z1の場合には、書込み許可信号を出力し
ない。したがって、Zバッファ(95)を使用してz0値を
順次更新してゆくことにより、隠面処理を行なうことが
できる。 また、断面表示を行なう場合には、上記クリッププロ
セッサ(92)に断面のz値を供給しておき、x,yに関し
てクリッピングが施された各プリミティブデータを再び
クリッププロセッサ(92)に供給しながら、上記z値よ
り手前のプリミティブデータを排除するとともに、交差
する場合にはクリップし、得られたプリミティブデータ
を描画プロセッサに供給すればよく、3次元図形の断面
表示を行なうことができる。 <発明が解決しようとする問題点> 上記の構成の断面表示機能を実行する場合には、断面
との交差点を得るために中点分割法、直線方程式代入法
が使用されるのであるが、何れもソフトウェア、ハード
ウェアが複雑であり、しかも処理時間が長くなってしま
うという問題がある。即ち、中点分割法においては、収
束が遅いため結果的に処理が遅くなるのであり、直線方
程式代入法においては乗算、および除算を行なわなけれ
ばならないので、処理が複雑化するとともに、処理が遅
くなるのである。 また、クリッププロセッサ(92)に対して断面のz値
を供給しておくのであるから、平面1枚程度の切断面し
か定義することができず、折れ面等に基く断面表示は、
実際には殆ど行なうことができないという問題もある。 また、上記問題点を解消するために、予め切断平面を
デプスバッファに描画しておいて、デプスバッファに描
画された各ピクセルのz値と実際に描画すべき描画図形
の各ピクセルのz値とを比較しながら必要なピクセルの
みを描画することが考えられる。 そして、このようにすれば、切断面が平面であって
も、折れ面であっても、自由曲面であっても、簡単に表
面表示を行なうことができるという利点を有すると思わ
れる。 しかし、この場合には、切断平面を描画した後、実際
の図形を描画しなければならないのであるから、全体と
して断面図の描画速度を余り高速化することができない
のみならず、切断平面を描画するためのデプスバッファ
のプレーン数を隠面処理を行なうためのzバッファのプ
レーン数と等しくする必要があり、使用頻度が低い断面
図描画のために多プレーン数のデプスバッファを常時準
備しておく関係上、構成が複雑化し、しかもコストアッ
プになるという問題がある。 <発明の目的> この発明は上記の問題点に鑑みてなされたものであ
り、システム構成を簡素化することができるとともに、
各種の切断面に基く断面表示を高速に、かつ簡単に行な
うことができる断面図描画装置を提供することを目的と
している。 <問題点を解決するための手段> 上記の目的を達成するための、この発明の断面図描画
装置は、描画図形の直線補間演算を行なう第1の補間手
段と、切断面方程式に基いて描画図形の2端点の座標値
からそれぞれ算出された切断面のz値と描画図形の前記
2端点のz値との差分値同士を直線補間する第2の補間
手段と、第2の補間手段により得られる補間データの符
号を判別し、判別結果を判別信号として出力する判別手
段と、各ピクセル毎に、判別手段から出力される判別信
号に応じて描画図形のz値が切断面のz値を基準として
描画側であるか否かを判別し、描画図形のz値が描画側
である場合に上記第1の補間手段からの補間データを描
画メモリに書込み、描画図形のz値が描画側でない場合
に上記第1の補間手段からの補間データの描画メモリへ
の書込みを禁止する描画制御手段とを有するものであ
る。 但し、上記第2の補間手段としては、前記差分値が互
に異なる符号である場合にのみ補間演算を行なうもので
あるとともに、判別手段が、第2の補間手段が補間演算
を行なわない場合に、差分値に基いて判別信号を描画制
御手段に出力するものであることが好ましい。 また、切断面が複数であり、各切断面に対して順次描
画すべきか否かの判別を行なうものであることが好まし
い。 <作用> 以上の構成の断面図描画装置であれば、描画すべきピ
クセルデータを描画プロセッサから描画メモリに伝送
し、描画メモリの内容に基いてディスプレイ上に3次元
図形を表示する場合において、第1の補間手段により描
画図形の直線補間演算を行なう。 また、切断面方程式に基いて描画図形の端点の座標値
から算出された切断面のz値(以下、切断面の端点のz
値と略称する)と描画図形の端点のz値との差分値を第
2の補間手段により直線補間し、第2の補間手段により
得られた補間データの正負を判別手段により判別して描
画制御手段に供給する。 したがって、描画制御手段においては、各ピクセル毎
に、判別手段から出力される判別信号に基いて描画図形
のz値が切断面のz値を基準として描画側であるか否か
を判別し、描画図形のz値が描画側である場合に上記第
1の補間手段からの補間データを描画メモリに書込み、
描画図形のz値が描画側でない場合に上記第1の補間手
段からの補間データの描画メモリへの書込みを禁止し、
断面図を描画させることができる。 また、上記第2の補間手段が、切断面の端点のz値と
描画図形の端点のz値との差分値が互に異なる符号であ
る場合にのみ補間演算を行なうものであるとともに、判
別手段が、第2の補間手段が補間演算を行なわない場合
に、差分値に基いて判別信号を出力するものである場合
には、第2の補間手段による直線補間演算を減少させる
ことができる。 さらに詳細に説明すれば、例えば、切断面がax+by+
cz+d=0で表現されるものであり、描画点の座標が
(x0,y0,z0)である場合には、上記x0,y0に対応する切
断面上のz座標値zBl{=−(ax0+by0+d)/c}と上
記z0との大小関係により描画すべきであるか否か、およ
び第2の補間手段による直線補間演算を行なうべきであ
るか否かが決定される。 したがって、描画線分については、始点の座標(x1,y
1,z1)、および終点の座標(x2,y2,z2)に対応する切断
面上のz座標値zBL1{=−(ax1+by1+d)/c},zBL2
{=−(ax2+by2+d)/c}と上記z1,z2との大小関係
により、切断面と交差しているか否かを判別することが
でき、交差していない場合(第1図A,C参照)には、切
断面の何れの側に位置するか、即ち、両差分値の正負に
よって描画すべきである否かが判別され(第1図D,F参
照)、交差している場合(第1図B参照)には、切断面
の端点のz値と描画線分の端点のz値との差分値につい
て直線補間を行なって(第1図E参照)、直線補間結果
が0になる点、正になる点、および負になる点を得るこ
とができる。即ち、直線補間結果が0になる点が交差点
であり、この交差点を境界として何れかの側のみを描画
すべきであるから、上記直線補間結果の正負に基いて何
れの側を描画すべきかを判別することができる。 そして、上記判別結果、即ち、両差分値の正負、およ
び直線補間結果の正負に基いて、必要な描画線分、およ
び描画線分の必要な部分のみを描画することにより、断
面図を表示することができる。 同様に、ポリゴンについては、全ての頂点の座標に対
応する切断面上のz座標値と各頂点のz座標値とに基い
て切断面と交差しているか否かを判別することができ、
交差していない場合には、上記と同様に描画すべきであ
るか否かを判別することができる。逆に交差している場
合には、上記と同様に両端点の差分値の直線補間を行な
うことにより直線補間結果を得、直線補間結果の正負に
基いて描画すべきか否かを判別することができる。 そして、この場合には、切断面と交差していないと判
別されたポリゴンに対してz値の補間動作を省略するこ
とができる。 また、切断面が複数であり、各切断面に対して順次描
画すべきか否かの判別を行なうものである場合には、高
い自由度で断面表示を行なわせることができる。 <実施例> 以下、実施例を示す添付図面によって詳細に説明す
る。 第2図は断面図描画装置の一実施例の要部を示すブロ
ック図であり、図示しない上位プロセッサからの線分の
両端点のデータ(座標値、輝度、色、および断面表示処
理制御情報等)を入力としてx値、y値用増分値を算出
する除算器(1)と、隠面処理用のz値の増分値を算出
する除算器(2)と、断面表示制御用の切断面の端点の
z値と描画図形の端点のz値との差分値の増分値を算出
する除算器(3)と、カラーコード用の増分値を算出す
る除算器(4)とを有している。 そして、上記除算器(1)からの増分値データ、およ
び初期値データを入力とするマイナー加算器(5)、メ
ジャー加算器(6)と、両加算器(5)(6)からの累
積加算データを入力とするセレクタ(7)と、セレクタ
(7)から出力される選択データを一時的に保持するx
値用、y値用のラッチ回路回路(8)(9)と、ラッチ
回路(8)からの出力データを入力とするアドレス変換
ROM(10)と、上記ラッチ回路(9)からの出力デー
タ、およびアドレス変換ROM(10)から読出しデータを
入力とするフレームメモリアドレス用のラッチ回路(1
1)を有している。 また、上記除算器(2)からの増分値データと初期値
データを入力とする加算器(12)と、加算器(12)から
の累積加算結果を一時的に保持するラッチ回路(13)
と、ラッチ回路(13)からの出力データを入力とする隠
面処理用のラッチ回路(14)とを有している。 さらに、上記除算器(3)からの増分値データとその
初期値を入力とする加算器(15)と、加算器(15)から
の累積加算データのうち、符号データをセクショニング
フラグとして一時的に保持するラッチ回路(16)と、ラ
ッチ回路(16)からのセクショニングフラグデータ、お
よび上記ラッチ回路(8)(9)からの出力データを入
力とするラインタイプハッチングパターン用のRAM(1
7)と、RAM(17)からの読出しデータを一時的に保持す
るマスク用のラッチ回路(18)とを有している。 さらには、上記除算器(4)からの増分値データと初
期値データを入力とする加算器(19)と、加算器(19)
からの累積加算データを一時的に保持するカラーコード
用のラッチ回路(20)と、ラッチ回路(20)からの出力
データを一時的に保持するラッチ回路(21)とを有して
いる。 さらに詳細に説明すると、上記セレクタ(7)には、
x軸方向の長さとy軸方向の長さとの大小兎関係に基い
て定められるメジャー・マイナー判定用のフラグが制御
信号として供給されており、上記フラグに対応して、メ
ジャー用直線補間器(1)、或はマイナー用直線補間器
(2)からの出力データ(x値、およびy値)をラッチ
回路(8)(9)に供給する。即ち、描画されるべき直
線のx値、およびy値のうち、何れか大きい方を基準と
して直線補間を行なうことにより得られた直線補間デー
タを選択してラッチ回路(8)(9)に供給する。 そして、上記ラッチ回路(8)に一時的に保持された
x値を、アドレス変換用のROM(10)に供給することに
より、変換後のアドレスデータを読出し、フレームメモ
リアドレス用のラッチ回路(11)に一時的に保持させ
る。また、上記ラッチ回路(9)に一時的に保持された
y値も、フレームメモリアドレス用のラッチ回路(11)
に一時的に保持させる。 さらに、上記ラッチ回路(16)から出力される符号デ
ータが供給されているラインタイプハッチングパターン
格納用のRAM(17)に、上記両ラッチ回路(8)(9)
から出力されるx値、およびy値を供給することによ
り、上記x値、およびy値に対応するマスク用のフラグ
をラッチ回路(18)に一時的に保持させ、上記マスク用
のフラグにより、画素を表示すべきか否かを制御する。 さらに、上記z値用のラッチ回路(13)から出力され
るz値が隠面処理用のラッチ回路(14)に一時的に格納
され、例えば、最も手前側のz値のみが表示すべきz値
データとして選択される。但し、この選択は、図示しな
い隠面処理用zバッファにおいてなされる。 上記の構成の断面図描画装置の動作は次のとおりであ
る。 上記除算器(1)によりx値、およびy値の増分値デ
ータを得、マイナ加算器(5)、およびメジャー加算器
(6)により累積加算データを得る。そして、x方向の
長さ、およびy方向の長さの大小関係に対応させてセレ
クタ(7)により何れかの加算器からの累積加算データ
を選択し、対応するラッチ回路に一時的に保持させる。
即ち、何れか一方のラッチ回路に対して、増分値を累積
的に加算したデータを保持させるとともに、他方のラッ
チ回路に対して1ずつ増加させたデータを保持させる。
上記ラッチ回路(8)のデータはアドレス変換用のROM
(10)に供給され、ROM(10)から読出された、実際の
描画する場合に使用されるアドレスデータ、および上記
ラッチ回路(9)からのデータがフレームメモリアドレ
ス用のラッチ回路(11)に保持される。 また、上記の動作と平行して、除算器(2)からの増
分値データと初期値データを加算器(12)に供給するこ
とによりz値の累積加算値を算出し、ラッチ回路(13)
に一時的に保持させた後、隠面処理用のz値ラッチ回路
(14)に供給する。z値ラッチ回路(14)からの出力は
図示しない隠面処理用zバッファに転送され、最も手前
側のz値のみを保持する処理がなされる。 さらに、上記の動作と並行して、除算器(4)からの
増分値を加算器(19)に供給することにより、増分値を
順次累積的に加算した累積加算データを得、ラッチ回路
(20)に一時的に保持させた後、ラッチ回路(21)に保
持させる。 そして、上記全ての動作と並行させ、除算器(3)か
ら増分値データ(図形データのz値と切断面のz値との
差分値に対応する増分値データ)と初期値データを加算
器(15)に供給することにより、増分値を順次累積的に
加算した累積加算データを得、この累積データの符号を
ラッチ回路(16)に一時的に保持させ、セクショニング
フラグとしてラインタイプハッチングパターン用のRAM
(17)に供給する。上記RAM(17)には、上記ラッチ回
路(8)(9)からの画素の表示位置情報が供給されて
おり、ラッチ回路(16)から供給されるセクショニング
フラグが、描画点が切断対象でないことを示している場
合には、予めRAM(17)に格納されてあったラインパタ
ーン、或はハッチングパターンに基いて、描画データの
マスクフラグをラッチ回路(18)に供給する。 逆に、ラッチ回路(16)から供給されるセクショニン
グフラグ、描画点が切断対象であることを示している場
合には、ラッチ回路(8)(9)からの表示位置情報に
拘わらず、常にその描画データに対してはマスクする
(即ち、描画しない)ようにフラグがセットされ、ラッ
チ回路(18)に供給される。 したがって、ラッチ回路(18)に一時的に格納されて
いるマスクデータは、そのとき一時的にラッチ回路(1
1)に保持されているフレームメモリアドレスに対応す
る画素について切断対象になったか否か、また、切断対
象にならなかった場合においても、ラインパターン、或
はハッチングパターンによって描画する対象になったか
否かを判別することができる。 この時点で、マスクされない(即ち、描画する対象と
なった)場合にのみ、上記フレームメモリアドレス格納
用のラッチ回路(11)の内容、隠面処理用のラッチ回路
(14)の内容、およびカラーコード用のラッチ回路(2
1)の内容に基いて、図示しない隠面処理用バッファと
フレームメモリにおいて隠面処理がなされ、最終手的に
表示対象となるか否かの判別がなされる。 以上、要約すれば、線分を描画してゆく場合におい
て、x値、y値の補間、および隠面処理用のz値の補間
動作と同期して、図形データのz値と切断境界面のz値
との差分値の補間を行ない、隠面処理用のz値と切断境
界面のz値との大小関係を、累積加算結果の符号を示す
符号データに基いて判別し、上記判別結果に基いて、画
素単位で描画するべきか否かを判別することにより、高
速で断面図描画を行なわせることができる。 また、隠面処理用zバッファとは別に切断面のz値を
描画しておくためのデプスバッファ(以下、セクショニ
ングバッファと略称する)を必要としないので、構成を
簡素化することができる。 さらに、切断面が複数個になった場合であっても、各
切断面に対して上記動作を順次行なわせることにより、
簡単に断面図の表示を行なわせることができる。但し、
この場合には、切断面の増加に伴なって断面図を表示す
るための所要時間が長くなるが、従来例のように各切断
面をセクショニングバッファに描画して順次断面処理を
行なう場合と比較して著しく所要時間を短縮することが
できる。 尚、上記の構成の断面図描画装置は、第1図A,B,Cの
何れの場合にも適用することが可能であるが、線分をz
値が連続的に一方向のみに変化するものに限定しておい
て、この線分の両端のz値と切断境界面のz値との大小
関係を予め判別し、線分の両端における大小関係の判別
結果が同一でない場合(第1図B参照)にのみ上記の動
作を行なわせ、大小関係の判別結果が同一である場合
(第1図A,B参照)には、大小関係に対応させて、線分
全体を描画するか、或は線分全体の描画を行なわないよ
うに制御することができる。 また、カラーコードデータについては、上記除算器
(4)、および加算器(19)から構成される直線補間器
に限定されるものではなく、例えば、フォンシェーディ
ング用演算器等のカラーコード演算器を使用することが
可能である。 第3図は他の実施例を示すブロック図であり、7対の
辺補間回路(22)(23)…(28)(32)(33)…(38)
を有しているとともに、6個の直線描画回路(41)(4
2)…(46)を有しており、さらに、x値、y値用のラ
ッチ回路(51)(52)、隠面処理用のラッチ回路(5
3)、切断境界面用のラッチ回路(54)、テクスチャマ
ッピングメモリ(61)、乗算器(62)、汎用プロセッサ
(63)、I/Oインターフェース(64)、およびメモリ(6
5)を有している。 さらに詳細に説明すれば、上記7対の辺補間回路(2
2)(23)…(28)(32)(33)…(38)は、多角形の
1対の辺を直線補間するためのものであり、x値用、y
値用、z値用、図形データのz値と切断境界面のz値と
の差分値用、I値(輝度値)用、u値用、およびv値用
の補間値をそれぞれ互に同期した状態で算出する。そし
て、上記各辺補間回路は、それぞれ辺の長さに対応する
分割数で辺の長さを除算する除算回路と、上記辺の一端
の座標データに上記除算結果を累積的に加算する加算回
路とから構成されている。但し、上記u値、およびv値
はセクショニング処理とは関係がなく、テクスチャ原図
に対するものである。 上記直線描画回路(41)は、上記x値用、y値用の辺
補間回路(22)(23)(32)(33)から出力される補間
データを入力とするものであり、線分の両端のx値の差
とy値の差とを除算することにより(x/yの除算、およ
びy/xの除算を行なうことにより)、2種類の除算結果
を得る除算器(71)と、除算器(71)による除算結果の
一方が供給されるマイナ加算器(73)と、マイナ加算器
(73)による累積加算と同期して内容が1ずつ増加させ
られるメジャーカウンタ(72)とを有している。また、
上記除算器(71)は上記除算結果の他に、メジャー・マ
イナ判別フラグ(x値とy値の何れが大きいかを示す判
別フラグであり、除算結果が1以上であるか否かに基い
て生成される)を出力し、ラッチ回路(74)に供給す
る。 そして、上記メジャーカウンタ(72)、およびマイナ
加算器(73)からの出力データが供給されるセレクタ
(75)には、上記ラッチ回路(74)からメジャー・マイ
ナ判別フラグが供給され、判別フラグに対応させて、メ
ジャーカウンタ(72)、マイナ加算器(73)からの出力
データがx値用のラッチ回路(51)、y値用のラッチ回
路(52)に供給される。 上記直線描画回路(42)(43)…(46)はそれぞれ除
算器、および加算器から構成されており、表示図形用z
座標値用の直線描画回路(42)からの出力データをその
ままz値用のラッチ回路(53)に供給している。 また、表示図形用のz座標値と接続面用のz座標値と
の差分値用の直線描画回路(43)において得られた累積
加算結果の符号を示すデータ(具体的にはキャリー信
号)をzフラグ用のラッチ回路(54)に供給している。 さらに、テクスチャ原図用u座標値用、およびv座標
値用の直線描画回路(45)(46)からの出力データをテ
クスチャマッピングメモリ(61)に供給しており、テク
スチャマッピングメモリ(61)からの読出しデータ、お
よび表示図形用I値用の直線描画回路(44)からの出力
データを乗算器(62)に供給することにより色データ
(R,G,Bデータ)を得、それぞれR値用、G値用、B値
用のラッチ回路(81)(82)(83)に供給している。 上記の実施例の断面図描画装置の動作は次のとおりで
ある。 即ち、上記実施例と同様にしてx,y座標値を得るとと
もに、両z座標値の差分値を得る。そして、両z座標値
の差分値の符号に基いてzフラグをセットし、zフラグ
に基いて(切断面の何れの側に位置しているかに基い
て)ラッチ回路(51)(52)(53)(81)(82)(83)
に保持している画素情報が切断の対象となっているか否
かが判別でき、切断対象でないと判別された場合にのみ
意向の隠面処理を行なうことによって、断面図表示を行
なうことができる。 また、テクスチャマッピングを行なう必要がある場合
には、テクスチャ原図用u,v座標値用の直線描画回路(4
5)(46)からのアドレスデータに基いてテクスチャマ
ッピングメモリ(61)の該当箇所のデータを読出し、表
示図形用I値用の直線描画回路(44)からの出力データ
に基いて乗算器(62)によりシェーディング補正等を施
した後、色データとして出力することにより、表示図形
の所望領域にテクスチャ原図を投影した状態で図形の表
示を行なうことができる。 以上、要約すれば、表示図形用のz座標値と切断面用
のz座標値と差分値の補間を行ない、補間値の符号、即
ち大小関係に基いて対象画素を表示すべきか否かを判別
するのであるから、断面図表示のためのセクショニング
バッファが不要であるとともに、セクショニングバッフ
ァへの切断面の描画動作が不要である。また、表示図形
用のz座標値と切断面用のz座標値との差分値に基いて
補間を行ない、補間データの符号に基いて表示図形を描
画すべきであるか否かを判別するのであるから、z座標
値同士を比較するために加算器を使用する必要がなく、
構成を簡素化することができる。 尚、この発明は上記の実施例に限定されるものではな
く、例えば線分の両端のz座標値と切断面の対応するz
座標値との差分値の符号を判別し、或はポリゴンの全頂
点のz座標値と切断面の対応するz座標値との差分値の
符号を判別することにより、線分単位、或はポリゴン単
位で描画すべきか否かを判別することにより、処理すべ
き線分数、或はポリゴン数を予め減少させ、断面図の表
示をより一層高速化することが可能である他、この発明
の要旨を変更しない範囲内において種々の設計変更を施
すことが可能である。 <発明の効果> 以上のようにこの発明は、断面図の表示を行なわせる
ために従来必要とされていたセクショニングバッファを
不要として、構成を簡素化するとともに、コストダウン
を達成することができ、しかも、切断面をセクショニン
グバッファに描画する必要がなくなるので、断面図の表
示を高速に行なうことができるという特有の効果を奏す
る。
The present invention relates to a cross-sectional drawing device, and more specifically,
For example, in a three-dimensional graphic display device,
Section for displaying the state where the desired part of the original figure is cut
The present invention relates to a drawing apparatus. <Prior Art> Conventional three-dimensional graphic display devices
The hidden surface and cross-section processing functions are important
In order to fulfill the
Is coming. FIG. 4 has a hidden surface processing function and a cross-section processing function.
Shows a conventional example of a three-dimensional graphic display device.
FIG. 3 is a block diagram showing a configuration from a host computer not shown.
A coordinate conversion processor (91) to which coordinate data is supplied,
The device transformed by the coordinate transformation processor (91)
Clip processor to which coordinate data is supplied (92)
And clipping is performed by the clip processor (92).
Drawing processor to which the supplied primitive data is supplied
(93) and the pixel output from the drawing processor (93)
Drawing memory (94) to which the
Pixel data output from the sensor (93) is supplied.
By using the coordinate data previously set,
To supply a write enable signal to the drawing memory (94).
The picture stored in the picture file (95) and drawing memory (94).
Monitor for visual display based on cell data (9
6). Therefore, it has been supplied from the host computer
Coordinate data is converted to a device by a coordinate transformation processor (91).
Converted to coordinate data and outside the area specified by the user
Primitive data by clip processor (92)
Clip and supply to the drawing processor (93). So
Then, in the drawing processor (93), the command area
Each point of the primitive data in is in each direction of x, y, z
When z data is supplied to the Z buffer (95) while interpolating
Both supply (x, y) data to the drawing memory (94).
You. In the Z buffer (95), every (x, y) data
Memorize the z value of the pixel data (x, y, z1) and the current memory
(X, y, z0), and if 0 ≦ z1 ≦ z0,
Then, the drawing memory (94) that should display (x, y, z1)
Supply write enable signal and set z1 as new z0
You. Conversely, if z0 <z1, the write enable signal is output.
Absent. Therefore, using the Z buffer (95),
Hidden surface treatment can be performed by updating sequentially.
it can. To display a cross section,
The z value of the cross section is supplied to the essa (92), and x and y are related.
Each primitive data that has been clipped
While supplying it to the clip processor (92),
Remove primitive data before
Clipped and obtained primitive data
Can be supplied to the drawing processor.
Display can be performed. <Problems to be Solved by the Invention> When executing the cross section display function of the above configuration,
Midpoint division method, linear equation substitution method to obtain the intersection with
Are used, but both are software and hardware
Software is complicated and processing time is long.
There is a problem. That is, in the midpoint division method,
Since the bundle is slow, the processing will be slow as a result.
In the formula substitution method, multiplication and division must be performed.
Processing becomes complicated and slow.
It will be. Also, the z-value of the cross section with respect to the clip processor (92)
Since it is supplied,
Cannot be defined, and the cross-section display based on the broken surface etc.
There is also the problem that it can hardly be done in practice. In addition, in order to solve the above problems, a cutting plane is prepared in advance.
Draw in the depth buffer and then draw in the depth buffer.
Z value of each drawn pixel and drawing figure to be actually drawn
Of the required pixel while comparing with the z value of each pixel of
It is possible to draw only. And in this way, the cut surface is flat
, Whether it is a curved surface or a free-form surface,
It seems to have the advantage of being able to display a plane
It is. But in this case, after drawing the cutting plane,
Since we have to draw the shape of
And the drawing speed of the cross section cannot be increased very much.
Depth buffer for drawing the cutting plane as well
Number of planes in the z buffer for hidden surface processing.
Sections that need to be equal to the number of lanes and are rarely used
A depth buffer with a large number of planes is always used for drawing.
Due to the provision, the configuration becomes complicated and the cost is increased.
Problem. <Object of the Invention> The present invention has been made in view of the above problems.
The system configuration can be simplified and
Cross-section display based on various cut surfaces can be performed quickly and easily.
Aiming to provide a cross-section drawing device that can
doing. <Means for Solving Problems> Drawing of a sectional view of the present invention for achieving the above object
The device is a first interpolation method for performing linear interpolation calculation of a drawing figure.
Steps and coordinate values of the two end points of the drawn figure based on the cut plane equation
The z-value of the cut surface calculated from
Second interpolation for linearly interpolating the difference values from the z values of the two end points
Means and the code of the interpolation data obtained by the second interpolation means.
Discriminator that discriminates the signal and outputs the discrimination result as a discrimination signal
And the discrimination signal output from the discrimination means for each pixel.
Depending on the number, the z value of the drawing figure is based on the z value of the cut surface
It is determined whether it is the drawing side, and the z value of the drawing figure is the drawing side.
If it is, draw the interpolation data from the first interpolation means.
When writing to the image memory and the z value of the drawing figure is not on the drawing side
To the drawing memory of the interpolation data from the first interpolation means
And a drawing control means for prohibiting writing of
You. However, the difference values are mutually compatible as the second interpolation means.
The interpolation calculation is performed only when the
At the same time, the determination means and the second interpolation means perform interpolation calculation.
If not performed, the discrimination signal is drawn based on the difference value.
It is preferable to output to the control means. In addition, there are multiple cut surfaces, and each cut surface is drawn in sequence.
It is preferable to determine whether or not to draw
No. <Operation> In the case of the cross-section drawing apparatus having the above-described configuration,
Transmission of xel data from drawing processor to drawing memory
Then, based on the contents of the drawing memory, 3D is displayed on the display.
When displaying a figure, draw it with the first interpolation means.
Performs linear interpolation calculation of image figures. Also, based on the cutting plane equation, the coordinate values of the end points of the drawn figure
Z value of the cut surface calculated from (hereinafter, z of the end point of the cut surface
Value) and the z value of the end point of the drawing figure.
The linear interpolation is performed by the second interpolation means, and the second interpolation means is performed.
The positive / negative of the obtained interpolation data is discriminated by the discrimination means and drawn.
Supply to the image control means. Therefore, in the drawing control means, for each pixel
Based on the discrimination signal output from the discrimination means,
Whether the z-value of is on the drawing side with reference to the z-value of the cut surface
If the z value of the drawing figure is on the drawing side,
Write the interpolation data from the interpolation unit 1 to the drawing memory,
When the z value of the drawing figure is not on the drawing side, the first interpolation procedure described above is used.
Prohibits writing interpolation data from the column to the drawing memory,
A cross-sectional view can be drawn. Further, the second interpolation means calculates the z value of the end point of the cut surface and
The difference value from the z value of the end point of the drawn figure is different from each other.
If the interpolation calculation is performed only when
When another means does not perform interpolation calculation by the second interpolation means
If the discrimination signal is output based on the difference value,
Reduces the linear interpolation calculation by the second interpolation means.
be able to. More specifically, for example, the cut surface is ax + by +
It is expressed by cz + d = 0, and the coordinates of the drawing point are
(X0, y0, z0), the cutoff corresponding to x0, y0 above
Z coordinate value zBl {=-(ax0 + by0 + d) / c} on the cross section
Whether or not it should be drawn depending on the size relation with z0, and
And the second interpolation means should perform the linear interpolation calculation.
Whether or not Therefore, for the drawing line segment, the coordinates of the starting point (x1, y
1, z1) and the cut corresponding to the end point coordinates (x2, y2, z2)
Z coordinate value on the surface zBL1 {=-(ax1 + by1 + d) / c}, zBL2
{=-(Ax2 + by2 + d) / c} and z1, z2
Can determine whether or not it intersects the cutting plane.
Yes, if they do not intersect (see Figures 1A and 1C),
Which side of the cross section is located, that is, whether the difference value is positive or negative
Therefore, it is determined whether or not it should be drawn (see D and F in Fig. 1).
)), If they intersect (see FIG. 1B), cut surface
About the difference value between the z value of the end point of and the z value of the end point of the drawing line segment
Linear interpolation is performed (see Fig. 1E), and the linear interpolation result
To get the points where is 0, positive and negative.
Can be. That is, the point where the linear interpolation result becomes 0 is the intersection
And draw only one side with this intersection as the boundary
Should be determined based on the sign of the linear interpolation result.
It can be determined whether or not to draw that side. Then, the result of the determination, that is, whether the difference value is positive or negative, and
Required drawing line segment and
By drawing only the necessary parts of the
The floor plan can be displayed. Similarly, for polygons, the coordinates of all vertices are
Based on the corresponding z-coordinate value on the cutting plane and the z-coordinate value of each vertex
To determine whether it intersects the cutting plane,
If they do not intersect, they should be drawn as above.
It is possible to determine whether or not there is. When crossing in reverse
If this is the case, perform linear interpolation of the difference values at both end points in the same way as above.
To obtain the linear interpolation result,
Based on this, it is possible to determine whether or not to draw. In this case, it is determined that they do not intersect with the cutting plane.
Omit interpolation of z value for separated polygons
Can be. In addition, there are multiple cut surfaces, and each cut surface is drawn in sequence.
If it is to determine whether to draw
The cross section can be displayed with a high degree of freedom. <Embodiment> Hereinafter, an embodiment will be described in detail with reference to the accompanying drawings.
You. FIG. 2 is a block diagram showing a main part of an embodiment of the cross-sectional drawing device.
It is a block diagram, and a line segment from a host processor (not shown)
End point data (coordinate value, brightness, color, cross-section display
(Physical control information, etc.) as input to calculate x and y value increments
Divider (1) to calculate and the increment value of z value for hidden surface treatment
Of the divider (2) and the end point of the cut surface for controlling the cross-section display
Calculates the incremental value of the difference between the z value and the z value of the end point of the drawn figure
Calculate the increment value for color code with the divider (3)
And a divider (4). Then, the increment value data from the divider (1), and
Adder (5) that receives
Jar adder (6) and both adders (5) and (6)
A selector (7) that receives the product addition data as input, and a selector
X that temporarily holds the selection data output from (7)
Latch circuit circuits (8) and (9) for value and y value, and latch
Address conversion with the output data from the circuit (8) as input
Output data from the ROM (10) and the latch circuit (9)
And read data from the address conversion ROM (10).
Latch circuit for frame memory address to be input (1
1) have. Also, the incremental value data and the initial value from the divider (2)
Adder (12) with data as input and from adder (12)
Latch circuit (13) that temporarily holds the cumulative addition result of
And the output data from the latch circuit (13)
And a latch circuit (14) for surface processing. Further, the increment value data from the divider (3) and its
From the adder (15) that takes the initial value as an input, and the adder (15)
Section the sign data of the cumulative addition data of
A latch circuit (16) for temporarily holding a flag,
Sectioning flag data from the latch circuit (16)
And the output data from the latch circuits (8) and (9).
RAM for line type hatching pattern (1
7) and temporarily hold data read from RAM (17)
And a latch circuit for mask (18). Further, the increment value data from the divider (4) and the initial value
An adder (19) that receives the period data and an adder (19)
Color code that temporarily stores the cumulative addition data from
Latch circuit (20) and output from the latch circuit (20)
And a latch circuit (21) for temporarily holding data.
I have. More specifically, the selector (7) includes:
Based on the size relationship between the length in the x-axis direction and the length in the y-axis direction
Controlled flag for major / minor judgment
It is supplied as a signal.
Linear interpolator for jar (1) or linear interpolator for minor
Latch the output data (x value and y value) from (2)
It is supplied to the circuits (8) and (9). That is, the
The larger of the x value and the y value of the line is used as a reference.
Linear interpolation data obtained by performing linear interpolation
And supplies it to the latch circuits (8) and (9). Then, the data is temporarily stored in the latch circuit (8).
To supply the x value to the ROM (10) for address translation
Reads the converted address data from the
Hold it temporarily in the latch circuit (11) for readdressing.
You. Further, the data temporarily stored in the latch circuit (9) is provided.
Latch circuit for frame memory address (11)
To temporarily hold. In addition, the code output from the latch circuit (16) is
Line type hatching pattern to which data is supplied
The above-mentioned latch circuits (8) and (9) are stored in the storage RAM (17).
By supplying the x and y values output from
And a flag for a mask corresponding to the x value and the y value.
Is temporarily held in the latch circuit (18) for the mask
Controls whether a pixel should be displayed or not. Further, it is output from the z value latch circuit (13).
Z value temporarily stored in the latch circuit (14) for hidden surface processing
, For example, the z value that should be displayed only on the frontmost z value
Selected as data. However, this choice is not shown.
This is done in the hidden z-buffer for hidden surface processing. The operation of the sectional view drawing apparatus having the above configuration is as follows.
You. The divider (1) calculates the increment value of the x value and the y value by the divider (1).
Data, minor adder (5), and major adder
The cumulative addition data is obtained by (6). And in the x direction
Select according to the magnitude relationship between the length and the length in the y direction.
Cumulative addition data from any of the adders by the Kuta (7)
Is selected and temporarily stored in the corresponding latch circuit.
That is, the increment value is accumulated in one of the latch circuits.
While keeping the added data
In this case, the data increased by one is held in the switch circuit.
The data of the latch circuit (8) is a ROM for address conversion
The actual data supplied to (10) and read from ROM (10).
Address data used when drawing, and above
The data from the latch circuit (9) is the frame memory address.
It is held in the latch circuit (11). In addition, in parallel with the above operation, the addition from the divider (2)
Supply the divided value data and the initial value data to the adder (12).
The cumulative addition value of the z value is calculated with and the latch circuit (13)
Value latch circuit for hidden surface processing
Supply to (14). The output from the z value latch circuit (14)
Transferred to a hidden surface processing z buffer (not shown)
A process of holding only the z value on the side is performed. Further, in parallel with the above operation, the output from the divider (4)
By supplying the increment value to the adder (19), the increment value is
Latch circuit
After temporarily storing the data in (20), the data is stored in the latch circuit (21).
Hold. Then, in parallel with all the above operations, the divider (3)
From the increment value data (the z value of the figure data and the z value of the cut plane)
Add the increment value data corresponding to the difference value) and the initial value data
By incrementing the incremental value
Obtain the added cumulative addition data and set the sign of this cumulative data
Sectioning by holding the latch circuit (16) temporarily
RAM for line type hatching pattern as flag
Supply to (17). The RAM (17) contains the latch circuit
The display position information of the pixels from the paths (8) (9) is supplied.
And sectioning supplied from the latch circuit (16)
If the flag indicates that the drawing point is not to be cut
The pattern pattern that was previously stored in the RAM (17),
Pattern or drawing data based on the
The mask flag is supplied to the latch circuit (18). On the contrary, the sectioning supplied from the latch circuit (16)
Flag indicates that the drawing point is to be cut.
If the display position information from the latch circuits (8) and (9)
Regardless, always mask the drawing data
The flag is set so that
Switch (18). Therefore, it is temporarily stored in the latch circuit (18).
The mask data is temporarily stored in the latch circuit (1
It corresponds to the frame memory address held in 1).
Whether or not the target pixel was
Even if you do not become an elephant, line patterns, or
Is the target of drawing by the hatching pattern
Can be determined. At this point, it will not be masked (ie
The above frame memory address is stored only when
Of the latch circuit (11) for use, latch circuit for hidden surface processing
Content of (14) and latch circuit for color code (2
Based on the contents of 1), a hidden surface processing buffer (not shown)
Hidden surface processing is done in the frame memory, and finally
It is determined whether or not it is a display target. In summary, when drawing line segments,
Interpolate x and y values, and z values for hidden surface processing
Synchronize with operation, z value of figure data and z value of cut boundary
Interpolation of the difference value with the z value for the hidden surface processing and the cutting boundary
Indicates the sign of the cumulative addition result indicating the magnitude relationship with the z value of the interface
Discriminate based on the coded data, and based on the above discrimination result,
By determining whether to draw in prime units,
It is possible to draw a sectional view at high speed. In addition to the z buffer for hidden surface processing,
Depth buffer for drawing (Section
(Which is abbreviated as the
It can be simplified. Furthermore, even if there are multiple cut surfaces, each
By sequentially performing the above operations on the cut surface,
A sectional view can be easily displayed. However,
In this case, a cross-sectional view is displayed as the number of cut surfaces increases.
The time required for cutting is longer, but each cutting
Draw faces in the sectioning buffer for sequential cross-section processing
It can significantly reduce the time required compared to
it can. The cross-sectional drawing device having the above-mentioned configuration is shown in FIG.
Although it is possible to apply any case,
Limit the value to one that continuously changes in only one direction
The magnitude of the z value at the ends of this line segment and the z value of the cutting boundary
Determine the relationship in advance and determine the magnitude relationship at both ends of the line segment
Only when the result is not the same (see FIG. 1B)
If the result of the discrimination of the magnitude relation is the same.
(See A and B in Fig. 1)
Draw the whole line or do not draw the entire line segment
Can be controlled. For color code data, the above divider
(4) and linear interpolator composed of adder (19)
It is not limited to, for example, von Shady
It is possible to use color code calculators such as
It is possible. FIG. 3 is a block diagram showing another embodiment.
Edge interpolation circuit (22) (23) ... (28) (32) (33) ... (38)
In addition to having 6 line drawing circuits (41) (4
2) ... (46), and furthermore, x, y values
Switch circuit (51) (52), hidden surface processing latch circuit (5
3), Latch circuit for cutting interface (54), texture
Ping memory (61), multiplier (62), general-purpose processor
(63), I / O interface (64), and memory (6
5) have. More specifically, the above-described seven pairs of edge interpolation circuits (2
2) (23) ... (28) (32) (33) ... (38) are polygonal
It is for linearly interpolating a pair of sides, for x value, y
Value, z value, z value of figure data and z value of cutting boundary surface
Difference value, I value (luminance value), u value, and v value
The interpolated values of are calculated in synchronization with each other. Soshi
Thus, each side interpolation circuit corresponds to the length of each side.
A division circuit for dividing the length of the side by the number of divisions, and one end of the side
Addition times to cumulatively add the above division result to the coordinate data of
And roads. However, the above u value and v value
Has nothing to do with sectioning processing, and texture original
Is for The straight line drawing circuit (41) has sides for the x value and the y value.
Interpolation output from the interpolation circuit (22) (23) (32) (33)
It takes data as input and the difference between the x values at both ends of the line segment
And the difference between the y values (divide x / y, and
And y / x division), two types of division results
Of the division result by the divider (71) that obtains
Minor adder (73), one of which is supplied, and minor adder
The content is incremented by 1 in synchronization with the cumulative addition by (73).
It has a major counter (72). Also,
The divider (71) has a major matrix in addition to the division result.
Iner discrimination flag (a flag indicating which of the x value and the y value is larger)
Another flag, based on whether the division result is 1 or more
Generated) is supplied to the latch circuit (74).
You. And the major counter (72), and the minor
Selector to which output data from adder (73) is supplied
(75) contains the measure
The discrimination flag is supplied, and the
Output from jar counter (72) and minor adder (73)
Data latch circuit for x value (51), latch circuit for y value
Is supplied to the road (52). The above line drawing circuits (42) (43) ... (46) are excluded
Comprised of a calculator and an adder, z for display graphics
The output data from the line drawing circuit (42) for coordinate values
It is supplied as it is to the z value latch circuit (53). In addition, the z coordinate value for the display figure and the z coordinate value for the connection surface
Accumulated in the straight line drawing circuit (43) for the difference value of
Data indicating the sign of the addition result (specifically, carry signal)
No.) is supplied to the z flag latch circuit (54). In addition, for the u coordinate value for the texture original map, and for the v coordinate
Output data from the straight line drawing circuits (45) and (46) for
The texture mapping memory (61) is supplied with
Read data from the Sture Mapping Memory (61),
And output from the straight line drawing circuit (44) for I value for display figure
Color data by supplying the data to the multiplier (62)
(R, G, B data) is obtained, for R value, G value, B value, respectively
It supplies to the latch circuit (81) (82) (83) for. The operation of the cross-sectional drawing apparatus of the above embodiment is as follows.
is there. That is, if x and y coordinate values are obtained in the same manner as in the above embodiment,
At the same time, the difference value between the two z coordinate values is obtained. And both z coordinate values
Z flag is set based on the sign of the difference value of
Based on which side of the cut surface it is located
) Latch circuit (51) (52) (53) (81) (82) (83)
Whether or not the pixel information held in is subject to disconnection
Only when it is determined that the
A cross-sectional view is displayed by performing the intended hidden surface treatment.
Can be. Also, if you need to do texture mapping
Contains a straight line drawing circuit (4
5) Based on the address data from (46)
Read the data at the corresponding location in the topping memory (61) and display it.
Output data from straight line drawing circuit (44) for I-value for figure
Shading correction etc. by the multiplier (62) based on
And then output it as color data,
Of the figure with the texture original image projected onto the desired area of
You can give an indication. In summary, the z coordinate value for the display figure and the cutting plane
Interpolation of the z coordinate value and the difference value of
Determine whether to display the target pixel based on the size relationship
Sectioning for displaying cross-section views
No buffer required and sectioning buffer
It is not necessary to perform the drawing operation of the cut surface on the key. Also, display figure
The difference between the z-coordinate value for the cutting plane and the z-coordinate value for the cutting plane
Interpolate and draw the display figure based on the sign of the interpolation data.
Since it determines whether or not it should be drawn, the z coordinate
You don't have to use an adder to compare values,
The configuration can be simplified. Note that the present invention is not limited to the above embodiment.
For example, z coordinate values at both ends of the line segment and corresponding z of the cut surface
Determine the sign of the difference value from the coordinate value, or
Of the difference value between the z coordinate value of the point and the corresponding z coordinate value of the cut surface
By distinguishing the code, it can
Processing should be performed by determining whether to draw at
Reduce the number of line segments or polygons in advance and
It is possible to further speed up the display, and the present invention
Various design changes are made within the scope of not changing the gist of
It is possible. <Effects of the Invention> As described above, according to the present invention, a cross-sectional view is displayed.
The sectioning buffer previously required for
Simplifies configuration and reduces costs as unnecessary
Can be achieved, and the cut surface can be sectioned
Since there is no need to draw on the
Has the unique effect of being able to perform the indication at high speed.
You.

【図面の簡単な説明】 第1図はこの発明の断面図描画動作を概略的に説明する
図、 第2図はこの発明の断面図描画装置の一実施例の要部を
示すブロック図、 第3図は他の実施例を示すブロック図、 第4図は従来例を示すブロック図。 (1)……第1の補間手段を構成する除算器、 (3)……第2の補間手段を構成する除算器、 (5)……第1の補間手段を構成するマイナー加算器、 (6)……第1の補間手段を構成するメジヤー加算器、 (7)……第1の補間手段を構成するセレクタ、 (15)……第2の補間手段を構成する加算器、 (16)……判別手段を構成するラッチ回路、 (17)……判別手段を構成するラインタイプハッチング
パターン用RAM、 (18)……描画制御手段を構成するラッチ回路
BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a diagram for schematically explaining a sectional view drawing operation of the present invention, and FIG. 2 is a block diagram showing an essential part of an embodiment of a sectional view drawing apparatus of the present invention. FIG. 3 is a block diagram showing another embodiment, and FIG. 4 is a block diagram showing a conventional example. (1) ... a divider constituting the first interpolation means, (3) ... a divider constituting the second interpolation means, (5) ... a minor adder constituting the first interpolation means, 6) ... Medium adder constituting first interpolating means, (7) ... Selector constituting first interpolating means, (15) ... Adder constituting second interpolating means, (16) ...... Latch circuit constituting discrimination means (17) ...... Line type hatching pattern RAM constituting discrimination means (18) ...... Latch circuit constituting drawing control means

Claims (1)

(57)【特許請求の範囲】 1.描画すべきピクセルデータを描画プロセッサから描
画メモリに伝送し、描画メモリの内容に基いてディスプ
レイ上に3次元図形を表示する3次元グラフィックディ
スプレイ装置において、描画図形の直線補間演算を行な
う第1の補間手段と、切断面方程式に基いて描画図形の
2端点の座標値からそれぞれ算出された切断面のz値と
描画図形の前記2端点のz値との差分値同士を直線補間
する第2の補間手段と、第2の補間手段により得られる
補間データの符号を判別し、判別結果を判別信号として
出力する判別手段と、各ピクセル毎に、判別手段から出
力される判別信号に応じて描画図形のz値が切断面のz
値を基準として描画側であるか否かを判別し、描画図形
のz値が描画側である場合に上記第1の補間手段からの
補間データを描画メモリに書込み、描画図形のz値が描
画側でない場合に上記第1の補間手段からの補間データ
の描画メモリへの書込みを禁止する描画制御手段とを有
することを特徴とする断面図描画装置。 2.第2の補間手段が、前記差分値が互に異なる符号で
ある場合にのみ補間演算を行なうものであるとともに、
判別手段が、第2の補間手段が補間演算を行なわない場
合に、差分値に基いて判別信号を描画制御手段に出力す
るものである上記特許請求の範囲第1項記載の断面図描
画装置。 3.切断面が複数であり、各切断面に対して順次描画す
べきか否かの判別を行なうものである上記特許請求の範
囲第1項記載の断面図描画装置。
(57) [Claims] In a three-dimensional graphic display device that transmits pixel data to be drawn from a drawing processor to a drawing memory and displays a three-dimensional figure on a display based on the contents of the drawing memory, first interpolation for performing linear interpolation calculation of the drawn figure. Means and second interpolation for linearly interpolating the difference between the z value of the cut surface and the z value of the two end points of the drawn figure calculated from the coordinate values of the two end points of the drawn figure based on the cut surface equation. Means, a discrimination means for discriminating the sign of the interpolation data obtained by the second interpolating means, and outputting the discrimination result as a discrimination signal, and for each pixel, a drawing figure z value is z of the cut surface
Based on the value, it is determined whether or not it is on the drawing side, and when the z value of the drawing figure is on the drawing side, the interpolation data from the first interpolating means is written in the drawing memory, and the z value of the drawing figure is drawn. And a drawing control unit for prohibiting the writing of the interpolation data from the first interpolation unit to the drawing memory when not on the side. 2. A second interpolation means for performing an interpolation operation only when the difference values have mutually different signs,
The cross-sectional drawing apparatus according to claim 1, wherein the discriminating means outputs a discriminating signal to the drawing control means based on the difference value when the second interpolating means does not perform the interpolation calculation. 3. The cross-sectional drawing apparatus according to claim 1, wherein there are a plurality of cut surfaces, and it is determined whether or not drawing should be sequentially performed on each cut surface.
JP22738886A 1986-09-25 1986-09-25 Cross-section drawing device Expired - Lifetime JP2668864B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP22738886A JP2668864B2 (en) 1986-09-25 1986-09-25 Cross-section drawing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP22738886A JP2668864B2 (en) 1986-09-25 1986-09-25 Cross-section drawing device

Publications (2)

Publication Number Publication Date
JPS6381584A JPS6381584A (en) 1988-04-12
JP2668864B2 true JP2668864B2 (en) 1997-10-27

Family

ID=16860036

Family Applications (1)

Application Number Title Priority Date Filing Date
JP22738886A Expired - Lifetime JP2668864B2 (en) 1986-09-25 1986-09-25 Cross-section drawing device

Country Status (1)

Country Link
JP (1) JP2668864B2 (en)

Also Published As

Publication number Publication date
JPS6381584A (en) 1988-04-12

Similar Documents

Publication Publication Date Title
US5786822A (en) Method and apparatus for mapping texture on an object displayed at a varying view angle from an observer
US5877769A (en) Image processing apparatus and method
US4924414A (en) Apparatus and method for obtaining priority numbers for drawing figures forming a display figure
JPH0916806A (en) Stereoscopic image processor
US5973701A (en) Dynamic switching of texture mip-maps based on pixel depth value
KR100277803B1 (en) 3D graphic display
CA2298081C (en) Image processing apparatus and method of same
JPH07254072A (en) Texture mapping method and device therefor
US6822658B1 (en) Rendering a silhouette edge
US6346939B1 (en) View dependent layer ordering method and system
US5771046A (en) Image processing system and method including perspective transformation of three-dimensional objects utilizing clipping plane positions
KR100429092B1 (en) Graphic image processing method and apparatus
JPH09245191A (en) Transparency transformation method, its device and image processor
US7053902B1 (en) Image processing apparatus and method of processing images that stops operation of pixel processing circuits when pixel data to be processed is not needed
JP2668864B2 (en) Cross-section drawing device
JP4060375B2 (en) Spotlight characteristic forming method and image processing apparatus using the same
KR0166106B1 (en) Apparatus and method for image processing
KR100848687B1 (en) 3-dimension graphic processing apparatus and operating method thereof
US6518969B2 (en) Three dimensional graphics drawing apparatus for drawing polygons by adding an offset value to vertex data and method thereof
US6476818B1 (en) Storage circuit control device and graphic computation device
US6693634B1 (en) Reduction rate processing circuit and method with logarithmic operation and image processor employing same
JP2668863B2 (en) Cross-section drawing device
CA2261245C (en) Division circuit and graphic display processing apparatus
JP2668867B2 (en) Cross-section drawing device
KR20020050130A (en) Rendering method of rendering image on two-dimensional screen

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term