JPS6385988A - 図形表示システムにおける図形の変換方法 - Google Patents

図形表示システムにおける図形の変換方法

Info

Publication number
JPS6385988A
JPS6385988A JP62132017A JP13201787A JPS6385988A JP S6385988 A JPS6385988 A JP S6385988A JP 62132017 A JP62132017 A JP 62132017A JP 13201787 A JP13201787 A JP 13201787A JP S6385988 A JPS6385988 A JP S6385988A
Authority
JP
Japan
Prior art keywords
matrix
calculating
rows
matrices
repeating
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.)
Granted
Application number
JP62132017A
Other languages
English (en)
Other versions
JPH0776987B2 (ja
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPS6385988A publication Critical patent/JPS6385988A/ja
Publication of JPH0776987B2 publication Critical patent/JPH0776987B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/544Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation
    • G06F7/548Trigonometric functions; Co-ordinate transformations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/499Denomination or exception handling, e.g. rounding or overflow
    • G06F7/49905Exception handling
    • G06F7/4991Overflow or underflow

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 A、産業上の利用分野 本発明は情報取扱いシステムに係り、更に詳しくは、図
形表示システムにおけるデータ変換方法及びデータ変換
装置に関する。
B、従来技術 従来の図形表示システムにおけるデータ変換方法では、
例えばI B M 5080図形表示システムのマニュ
アル(マニュアル番号GA23−2012−〇)に記述
されているように、複数のマトリックスエレメント(例
えば3次間室間用の12エレメント)に対して唯一のシ
フトファクタしか存在しないような変換マトリックスの
連結を行っていた。従来の変換マトリックス計算方法で
は、マトリックスの連結の結果生じたオーバーフロー状
態を制御するような変換シフトファクタが存在していな
かった。
C0解決しようとする問題点 本発明の目的は、図形表示システムにおいて図形データ
を効率良く変換することである。
D1問題点を解決するための手段 本発明は次の各段階を含んでいる。
段階1:少なくとも1つのスケールシフトファクタ及び
複数の変換シフトファクタを備える、例えば9あるいは
12のマトリックスエレメントから成る第1マトリック
スを形成する。
段階2:第1マトリックスと同様の構造の第2マトリッ
クスを形成する。
段階3:第3マトリックスの形成のために第1及び第2
マトリックスのエレメントについて連結計算を行う。
段階4:各エレメント中の先行ゼロの数を決定すること
により第3マトリックスを正規化する。
段階5:第3マトリックスの最下位行の変換項を計算し
て第3マトリックスを完成させる。
E、実施例 本実施例の図形表示システムは座標変換のための特別な
マトリックスを用いており、前記マトリックスは例えば
4X3(4行3列)のマトリックスである。この場合、
はじめの3行は1つのスケールファクタを受は持つ9つ
の少数であり、最後の行の3つの数は整数である。
幾つかのアプリケーションでは、数個のマトリックスを
連結した結果、得られたマトリックスエレメントがオー
バーフローする。このような精密さに関する問題を解決
するため、3つの独立なシフトファクタがマトリックス
の最下位の行のために導入されている。これら3つのエ
レメントは。
マトリックスのはじめの3行とともに、新しいマトリッ
クスを構成する。
こうして得られた新しいマトリックスのシフトファクタ
に基づき、もしいずれかの変換項が16ビツトを越える
場合には、クリッピング境界が調整され、その結果、ユ
ーザのデータはオーバーフローを回避するように調整さ
れる(第4図参照)。
マトリックスのノ式 マトリックスMのエレメントはmijで表わされる。こ
のmijはi行、j列のエレメントである。
麿J「ζh IJ −/ ’)玉 変換マトリックスは次のように表わされる(ここでは3
次元マトリックスについて表わされている。2次元マト
リックスは3次元マトリックスのサブセットとして取扱
えばよい。) また、シフトファクタをsfで表わす。
はじめの9つのエレメントm 11、m12)・・・m
33は次のように表わされる少数である。
s、xxx  xxxx  xxxx  xxxxm4
1.m42.m43は次のように表わされる。この値は
2の補数形式で表わされている。
5xxx   xxxx   xxxx   xxxx
シフトファクタsfの値はOから12の範囲である。最
後の3つの項m41、m42)m43が変換項である。
座員変長 点(X、Y、Z)(、::で、X、Y、Zは整数とする
。)にマトリックスMを掛けると1次のような結果とな
る。
新しいx=(X−m11+Y−m21+Z・m31) 
・(2Sf)+m41 新しいY=(x−m12+Y−m22+Z・m32) 
・(2sf)+m42 新しいZ=(x−m13+Y−m23+z・m33) 
・(28f)+m43 ヱ上ユ1交ス1藍 2つのマトリックスM、Nが次のように表わされるとす
る。
シフトファクターsfl シフトファクターsf2 また、マトリックスQが次のようであるとする。
シフトファクターsf3 このようなときに、Q=M−Nが成立しているとすれば
、以下の各関係が成立する。
qll=mll・n 11 +m 12・n12+m1
3  ・ n13 q12=m11 ・n12+m12・n22+m13 
 ・ n32 q13=m11・n13+m12・n23+m13  
・ n33 q21=m21 ・n12+m22・n21+m23 
 ・ n31 q22=m21 ・n12+m22・n22+m23 
 ・ n32 q 23 = m 21 ・n13+m22・n23+
m23  ・ n33 q31 =m31 ・n12+m32・n21+m33
  ・ n31 q32=m31 ・n12+m32・n22+m33 
 ・ n32 q33 =m31 ・n13+m32・n23+m33
  ・ n33 sf=sfl+sf2 q41=(m41・n13+m42・n21+f2 m43・n31)(2)+ q42=(m41・n 12+m42・n22+f2 m43・n32)(2)+ q43=(m41・n13+m42・n23+f2 m43・n33)(2)+ 注:9つの項(m41・n11.m42・n21、・・
・m43・n33)の全ての先行ゼロの数がゼロより大
きいときには、シフトファクタsf3を調整しなければ
ならない。
ヱ旦1且旦ヱ上ユヱ玄ス P HI G S (Programmers Hie
rachicalInteractive Graph
ics System :プログラマー階層対話式図形
処理システム)マトリックスを次のように定義する。
シフトファクタ・・・・・・sf 変換シフトファクタ・・・・・・tlf、t2f、t3
はじめの9つのエレメントm111m12)・・・m 
33はs、xxx  xxxx  xxxx  xxx
xで表わされ。
m41、m42)m43は5xxx  xxxxxxx
x  xxxxで表わされる。
sfの値は−16から16の範囲内である。
実行を容易にするため、シフトファクタは−512(X
’ FEOO)とされティる。
tlf、t2f、t3fは3つのマトリックスエレメン
トm41、m42)m43のためのシフトファクタであ
り、変換項は次のようになる。
tlf m41(2) 2f m42(2) 3f m43 (2) tlf、t2f、t3fの値は−16から16の範囲で
ある。
崖111良 点(x、y、z)が整数で与えられたときに。
この点にマトリックスMを掛けると次のようになる。
新しいX=(X−m11+Y−m21+z・m31) 
・(2” ) +m41 1f 新しいY=(x−m12+Y−m22+Z・−m32)
 ・(2sf)+m42 2f 新しいZ= (X−m13+Y−m23+Z・m33)
 ・(2” ) +m43 3f ヱ」ΩL乙タノ」[様 次のような2つのPHIGSマトリックスM、Nが与え
られたとする。
シフトファクタ:slf 変換シフトファクタ:tlfl、t2fl、3fl シフトファクタ:s2f 変換シフトファクタ:tlf2)t2f2)t3f2 
 − このとき、Q=M−Nであるとすれば、Qは次のように
なる。
シフトファクタ:sf3 変換シフトファクタ:tlf3、t2f3、3f3 ここで、Qの各エレメントは次のようになる。
q11=m11・n12+m12・n21+m13・n
31 q12=m11・n12+m12・n22十m13・n
32 q13=m11・n13+m12・n23+m 13・
n33 q 21 = m 21・n12+m22・n21+m
23・n31 q22=m21・n12+m22・n22+m23・n
32 q23=m21・n13+m22・n23+m23・n
33 q31−m31・n13+m32・n21+m、33・
n31 q32=m31・n l 2 + m 32・n22十
m33・n32 q33=m31・n13+m32・n23+m33  
・ n33 また。
5f3=:sfl+sf2 (下記の注1参照)が成立
する。
Qの残りの3エレメントは次のようである。
q41・(2tlf3.= tlfl m41・nil・ (2)・ f2 (2)+ 2f1 m42・n21・ (2)・ f2 (2)+ 3f1 m43・n31・ (2)・ f2 (2)+ n41・(2t1f2) q42・ (2t2f3)= tlfl m41・n12・ (2)・ f2 (2)+ 2f1 m42・n22 ・ (2) ・ f2 (2)+ 3f1 m43 ・ n32・ (2) ・ f2 (2)+ 2f2 n42 ・ (2) q43傘 (2申嘲t3f3.= tlfl m41 ・n13 ・ (2) ・ f2 (2)+ 2f1 m42 ・n23 ・ (2) ・ f2 (2)十 m43・ n33・ (2t3f1) ・(2sf2)
+ 3f2 n43 ・ (2) 変換シフトファクタtlf3、t2f3、t3f3は次
のセクションで計算される(下記の注2参照)。
注1=9項の全ての先行ゼロの数がゼロより太きいとき
には、シフトファクタsf3は調整されなければならな
い。
注2:変換シフトファクタは、先行ゼロ又は先行1をか
ぞえることにより3つの32ビツト中間値q41、q4
2)q43から計算されなければならない(「マトリッ
クスエレメントの計算」のセクションを参照せよ。) 来 のマトリックスとの比 従来例; 本発明の例; シフトファクタ:5f(−16≦sf≦16)変換シフ
トファクタ: tlf、t2f、t3f(−16≦tl
f、t2f、t3f≦16)、Lu111νり但 −32768から32767の範囲内で整数が16ビツ
トの2の補数形式であるとする。このとき、次の2つの
マトリックスの連結について考える。
かつ5f=1 (16進表示) かつ5f=0 従m区 cos45=sin45=0.7071を用いると、1
6ビツト形式では、積の次のようになる。
かつ5f=0 (16進表示) これは次のように誤って計算される。
もし16ビツトを越える精度であれば、正しいM−Nは
次のようでなければならない。
で表わされるMは次の新しい形式となる。
かつ5f=1 (16進表示) tlf=o   t2f=o   t3f=0また、N
については次のようである。
で表わされるNが次の新しい形式となる。
tlf=o  t2f=o  t3f=0そして、M−
Nの積は次のようになる。
かつ5f=0 tlf=o  t2f=o  t3f=0このマトリッ
クスは次の正しい結果を表わしている。
シフトファクタの値が大きすぎたため、マトリックス連
結の結果得られたマトリックスの項がオーバーフローす
るときには、システムが図形データの数値範囲を調整す
ることとなる。
上述の例ではシステムは図形データを自動的に2で割る
ことができ、オーバーフローを避ける(第4図参照)。
大豆 IBM5080が実行のために行いられる(IBM図形
表示システム508oモデル2の操作原理が載っている
マニュアルGA23−2012−0参照)。
ラスク弐 ノ 六システム 第1図にはラスク弐図形表示システムが示されている。
このシステムは次の主要部分から成っている。
1、システムコントロールプロセッサ12)ホスト通信
インターフェース2 3、ディスプレイプロセッサ3 4、ベクトル発生器(ラスク走査器)45、ビデオ画素
メモリ5 6、システムメモリ6 まIL分IL腹 1、システムコントロールプロセッサ システムコントロールプロセッサはシステムの主要操作
を行うような汎用プロセッサである。この汎用プロセッ
サは(ライトペン及びディスプレイモニタを除く)接続
された全ての入出力装置の制御を受は持つ。
このプロセッサはディスプレイプロセッサと関連する処
理を調整する。
また、このプロセッサはホスト通信インタフェースを介
してホストコンピュータとインタフェースする。
2)ホスト通信インタフェース ホスト通信インタフェースはシステムをホストコンピュ
ータに直列にインタフェースさせる。
3、ディスプレイプロセッサ(DP) DPはシステムメモリ中の図形命令(発注)を実行し、
ディスプレイモニタ上に表われる画像を発生させる処理
に関する。DPは以下の機能を有する。
図形命令をデコードして非描画命令を実行する;即ち、
ブックキーピング及び制御を実行する。
幾何基本、即ち、線1文字、多角形等に対して変換やク
リッピング機能を実行する。
データを前処理してベクトル発生器及びビデオ画素メモ
リに与えることにより線、文字、マーク、多角形等の対
象物を準備する。
4、ベクトル発生器 ベクトル発生器はプレゼンハム(Bresenham)
の線分発生アルゴリズムをハードウェアで実行する。こ
のアルゴリズムは、ベクトルの終端が入力されると、表
示用出力としてビデオ画素メモリ内の画素を発生する。
5、ビデオ画素メモリ IKXKのプレーン8枚から成り、カラー索引う−ピル
を通して256色を同時にサポートする。
ここに記憶されている画像はモニタに表示される。
理・データフロー 第3図には図形表示システムのデータの論理的流れが示
されている。
1、アプリケーションプログラムがホスト通信インタフ
ェースプロセッサ(CIP)を通してシステムメモリに
ロードされる。
2)システムコントロールプロセッサは(要求された仕
事に依り)データを前処理し、ディスプレイプロセッサ
(DP)に割込みをかける。
3、DPはデータを処理する。
4、データはビデオ画素メモリ(VPM)に直接又はベ
クトル発生器(VG)を介して送られて表示される。
・  びクリッピング 変換及びクリッピングは属性レジスタの内容により制御
される。
ベクトル(線分)の例を次に示す。これは3段階から成
る。
1、変換 16ビツト固定数形式中のべり1〜ルの終点に関して、
マトリックスの掛け算が16ビツトのX。
y、z空間内で、(−32K、32に−1)の範囲内で
行なわれる。
2)クリッピング ベクトルの2つの終点を用い、ユーザにより特定された
クリッピングボックスにクリップする。
計算は16ビツト空間で行なわれる。
3、マツピング クリッピングボックス(3次元)あるいはクリッピング
ウィンドウ(2次元)内の内容をユーザにより特定され
たスクリーン内にマツピングする。
スクリーン座標は(0,4に−1)X (0,4に−1
)であり、IKXIKのスクリーンにマツプされる。
ディスプレイプロセッサ ディスプレイプロセッサはマイクロプログラムされたシ
ステムである。これはメモリからデータをフェッチしデ
ータをベクトル発生器を通してラスク式ディスプレイ装
置(ラスク発生器)に出力する。これは、線セグメント
の終点座標が入力されるとビデオ画素メモリ内の画像デ
ータを発生させる。
第2図にはディスプレイプロセッサの構成が示されてい
る。
1、AMD2910A等のシーケンサ112.72ビツ
ト帳の書き換え可能メモリ123.4ビットスライスA
MD2903等の16ビツトALU13 4、WTL2010等の32ビツトアキユムレータ付の
16X16マルチプライヤ14 5、高速シフタ15.これはカスタムメイドであり、1
サイクル中に32ビツトデータの算術マルチビットシフ
トを行う、これは先行ゼロ及び先行1の数を検出する。
このような先行ビットの連続数は高位16ビツトデータ
レジスタの内容に等しい。
6、クリッパ16は承諾か拒絶かを検出する。
7.4KX16のスクラッチラム17 8、インデックスアドレス方式によりマイクロコードの
次のアドレスを求めるロジック18なお、マイクロプロ
グラムはメモリ12に記憶されている。
マトリックスエレメントの − 変換項及びシフトファクタは、DP内のマルチプライヤ
14、高速シフタ15.先行ゼロ及び先行1のカウンタ
により求められる(第3図参照)。
次の計算について説明する。
し1fl q 41 = m 41・nil・ (2)・f2 (2)+ 2f1 m42・n21・ (2)・ 5f2 (2)十 3f1 m43 ・n31 ・ (2)・ sf2              tlf2(2)+
n41 ・ (2) 以下のサブルーチンの説中のカッコ内の番号は第2図中
の番号に対応している。q42)c143も同様にして
求まる。
変換項q41を計算するサブルーチンは次のようである
1、マルチプライヤ/アキュムレータ14を用いて32
ビツト数のm41・nilを計算しく図中番号4参照)
、それを2つのレジスタaH,aLにストアする(番号
3)。
2)レジスタexp aにt 1 f 1+s f 2
+1をストアする(番号3)。
3、マルチプライヤ/アキュムレータ14を用いて32
ビツト数のm42・n21を計算しく番号4)、それを
2つのレジスタbH,bLにストアする(番号3)。
4、レジスタexp bにt2fl+sf2+1をスト
アする(番号3)。(下記の注1参照)5、サブルーチ
ンADDをコールする。
6、マルチプライヤ/アキュムレータ14を用いて32
ビツト数のm43・n31を計算しく番号4)、それを
2つのレジスタbH,bLにストアする(番号3)。
7、レジスタexp bにt3fl+sf2+1をスト
アする(番号3)、(下記の注1参照)8、サブルーチ
ンADDをコールする。
9、レジスタbHにn41をストアする(番号3)lO
,レジスタbLに0をストアする(番号3)。
11、レジスタexp bにtlf2をストアする(番
号3)。
12)サブルーチンADDをコールする。
13、レジスタaHにストアされた数の先行0/1の数
をレジスタ1ead a内にストアする(番号3)。
14、aH及びaLを(1ead−1)により左ヘシフ
トする(番号6)。
15、 exp a4−exp a −(lead−1
)  ;  (番号3)。
(lead−1は1かOである。) 16、q41−+aH(番号5.3)。
17、 t l f 3−*exp a (番号5,3
)。
サブルーチン ADD 32ビツト仮数と16ビツト指数で表わされる2つの数
を加える次式の計算を行うサブルーチンは以下のようで
ある。
(aHaL)  ・ (2”Pa)+ (bHbL) 
 ・exp b サブルーチン ADD 1、レジスタaHの内容の先行ゼロ/1の数をレジスタ
1ead aにストアする(番号3)。
2)レジスタaH及びaLを(lead a−2)によ
り左ヘシフトする(番号6)。
3 、 exp a4−exp a −(lead a
−2)  (番号3)。
4、レジスタaLの内容の先行ゼロ/1の数をレジスタ
1ead bにストアする(番号3)。
5、レジスタbH及びbLを(lead b−2)によ
り左ヘシフトする(番号6)。
6 、 exp bs−exp b −(lead b
−2)  (番号3)。
(下記の注2参照) 7 、 exp a≧exp bかどうか検査する(番
号3)。
8・もしexp a≧exp bであれば、a、bH,
bLを(exp a−exp b)により右ヘシフトす
る(番号6)。
b、2つの32ビット数aH,aL及びbHlbLを加
える(番号3)。
C0結果をaHとaLにストアする(番号3)。
9、もしexp a<exp bであれば、a、aHl
aLを(exp b−exp a)により右ヘシフトす
る(番号6)。
b、2つの32ビット数aH,aL及びbHlbLを加
える(番号3)。
C0結果をaH及びaLにストアする(番号3)d 、
 exp a+exp b (番号3)。
(サブルーチンADDの終了) 最下位行のマトリックスエレメントの形式は下記のよう
である。計算後には、q41は3つのレジスタに保持さ
れる。
aH:5XXX   XXXX   XXXX   X
XXXaI、:、xxxx   xxxx   xxx
x   xxxx expa:指数 注1:マルチプレクサ/アキュムレータの出力は次の形
式である。
5xxx  xxxx  xxxx  xxxxx、x
xx  xxxx  xxxx  xxxxこれは、 5xxx  xxxx  xxxx  xxxx、xx
x  xxxx  xxxx  xxxxという形式に
調整するためである。前者の指数は後者の指数より1だ
け大きい、指数はそれゆえ1だけ増加される。
注2: (カウント数−2)はexp a=exp b
のときに加算結果がオーバーフローするのを退避するた
めに行う。
5080マトリックス7式へのマツピング5080の変
換能力を用いるためには新しいマトリックスは5080
マトリックス形式にマツプされなければならない。
シフトファクタ:sf 変換ファクタ:tlf、t2f、t3fであるとき、新
しい変数tsfは、 tsf=max (tlf、 t2f、 t3f)であ
る。
PHIGSマトリックスを5080マトリックス(エレ
メント)形式にマツプしたときには、変換マトリックス
及びクリッピング境界は共に、マトリックス連結の結果
によりオーバーフローが生じることのないように変更さ
れる。
まず初めにシフトファクタ、マトリックスの変換項及び
クリッピング境界を調整する。
このような調整後に、新しいシフトファクタSfが負で
あれば、はじめの9項(m11、m12)m 13、m
 21、m22)m23、m 31、m32)m33)
の各々には28 fが掛けられ、sfはゼロにセットさ
れる。
PHIGSマトリックスの 新しいマトリックスについて2つのアプリケーションが
ある。
1、アプリケーションプログラムで用いられるユーティ
リティ機能として。
2)PHIGS変換環境の計算に用いられるユーティリ
ティ機能として。
ユーティリティ 5080図形表示プログラム用に256の図形プログラ
ムレジスタが存在する。各レジスタは16ビツトであり
、GRn (nは0から255の整数)と名付けられて
いる。下記の形式のマトリックス連結用に5080図形
オーダが存在する。
オペコード a−アドレス b−アドレス C−アドレス これらは2つのマトリックスA、Bを連結して(A−B
)マトリックスCとする。
これら全てのマトリックスは図形用レジスタ内に配置さ
れる。
a−アドレスはAの最初のマトリックスエレメントの開
始アドレス(レジスタアドレス)である。
b−アドレスはBの最初のマトリックスエレメントの開
始アドレス(レジスタアドレス)である。
C−アドレスはCの最初のマトリックスエレメントの開
始アドレス(レジスタアドレス)である。
all    ←a−アドレスGRa a 12            GR(a+1)sf tfl tf2 a t f 3             GR(a+
15)bll    ←b−アドレスGRb b 12               GR(b+1
)sf tfl tf2 b t f 3              GR(b
+15)cll    4−c−アドレスGRcc l
 2               GR(c+1)s
f tfl tf2 c t f 3                GR
(c+15)PHIGS        の  − PHIGS15080インタフェースには以下のマトリ
ックスがある。
1、ビューマトリックス 2)グローバルマトリックス 3、ローカルマトリックス 4、正規化マトリックス はじめの3つのマトリックスは16エレメントから成る
。4つ目のマトリックスは7エレメント(シフトファク
タ、3つの変換項、及び3つの変換シフトファクタ)か
らなる、こうして入力データ列(sf、m41、m42
)m43、tfl、tf2)tf3)は次のようなマト
リックスとなる。
X’ 4000’ 、O,O,O,X’ 4000’0
、O,O,X’ 4000’ 、m41.m42゜m4
3.ff+1.tfl、tf2.tf3゜漉m虹二I− 上記4つのマトリックスのオーダ(順序)は次のようで
ある。
(正規化)(ローカル)(グローバル)(ビュー)結果
はTra−マトリックスという16のレジスタに記憶さ
れる。
更に、グローバルマトリックスとビューマトリックスと
は非常に度々は変更されない。それゆえ、(グローバル
)(ビュー)の連結はTsm−マトリックスという16
のレジスタに記憶される。
次の2つのビットが制御レジスタ内に規定される。
Tra−ビット(Tra−マトリックス内で変更が生じ
たことを示す。)及びTea+−ビット(Tetn−マ
トリックス内で変更が生じたことを示す。)が変換時間
の効率を改良する。
Tra−マトリックスは5080マトリックス形式ヘマ
ップされたマトリックスである。
PHIGSマトリックスの  のデータ・れ各PHIG
S基本図形、多線、多マーク、注釈文等用に1図形デー
タの処理前に、マトリックスが計算されなければならな
い。
マトリックス操作のデータ流れは次のようである。
1、もしTra−ビットがオフならルーチンから脱出す
る(現マトリックスは変更されない、)2)もしTra
−ビットがオンなら、Tem−ビットを検査し、Tra
−ビットをリセットする。
a、もしTea−ビットがオフなら、次のステップを飛
ばす。
b、もしTea−ビットがオンなら、グローバルとビュ
ーの2つのマトリックスを掛け、その結果をTemMa
trixに置き、Tem−ビットをリセットする。
3、正規化、ローカル、及びTem−マトリックスを掛
け、その結果をTra−マトリックス内に置く。
4、Tra−マトリックスを5080マトリックス形式
にマツプし、この際、必要があれば、クリッピング境界
とビューポートを調整する。
【図面の簡単な説明】
第1図は本発明によるデータ変換方法が適用されるラス
ク弐図形表示システムの構成を示すブロック図、 第2図は第1図のディスプレイプロセッサの構成を示す
ブロック図、 ” 第3図は前記システムにおけるデータの流れを示す
ブロック図、 第4図は大きな座標空間中での図形データについてのマ
トリックスの連結の結果を示すブロック図、 第5図は本発明のデータ変換方法における2つのマトリ
ックスの連結の計算方法を示す図、第6図はマトリック
スの連結の計算方法を簡易化して示すフロー図、 第7 (a) 、 7 (b) 、7 (c) 、7 
(d)及び7(e)図はマトリックスの連結の計算の際
におけるマトリックスの操作を示すフロー図、第8図は
第3マトリックスを形成するためのマトリックスエレメ
ントの正規化方法を示すフロー図、 第9図は変換項の計算方法を示すフロー図、第10図は
第9図の計算を行う際に用いられるADDサブルーチン
を示すブロック図である。 出願人  インターナショナル・ビジネスマシーンズ・
コーポレーション 代理人  弁理士  岡  1) 次  生(外1名) 才 2 (2) −32k                   32
に−1(11シフト)1ククかf’rlのとり一32k
                 32に一1M、N
 の客ヤ其゛方つ祇 Q雷MNと丁シ ク 5 父 C斗7th+FRかぁ) (オフ(dJ圀〜) (97(dlE)v−う〕

Claims (3)

    【特許請求の範囲】
  1. (1)複数のマトリックスエレメント、少なくとも1つ
    のスケールシフトファクタ、及び複数の変換シフトファ
    クタから成る第1マトリックスを形成する段階と、 複数のマトリックスエレメント、少なくとも1つのスケ
    ールシフトファクタ、及び複数の変換シフトファクタか
    ら成る第2マトリックスを形成する段階と、 第3マトリックスを形成するために前記第1及び第2マ
    トリックスの夫々の最初のn行に関するマトリックス連
    結を計算する段階と、 前記第3マトリックスの最初のn行を正規化する段階と
    、 前記第3マトリックスの最後の行を構成する変換項を計
    算して前記第3マトリックスを完成させる段階と、 を有することを特徴とする図形表示システムにおけるデ
    ータ変換方法。
  2. (2)特許請求の範囲第(1)記載の方法において、前
    記第1、第2及び第3マトリックスは4行3列であると
    ともに、前記マトリックス連結を計算する段階は、 第1マトリックスの第1行に第2マトリックスの第1列
    を掛け算する段階と、 その掛け算結果がオーバーフローしたか否かをテストす
    る段階と、 オーバーフローしたときには前記掛け算結果を第1定数
    で割る段階と、 前記掛け算結果をシフトすることにより前記掛け算結果
    に第2の定数を掛け、上位の予め決められた桁を前記第
    3マトリックスの第1エレメントとする段階と、 第1マトリックスの第1行に第2マトリックスの第2列
    を掛け算する段階と、 前述のオーバーフローテスト段階、オーバーフローのと
    きに第1の定数で割る段階、及びシフトする段階を繰り
    返す段階と、
  3. (3)複数のマトリックスエレメント、少なくとも1つ
    のスケールシフトファクタ、及び複数の変換シフトファ
    クタから成る第1マトリックスを形成する手段と、 複数のマトリックスエレメント、少なくとも1つのスケ
    ールシフトファクタ、及び複数の変換シフトファクタか
    ら成る第2マトリックスを形成する手段と、 第3マトリックスを形成するために前記第1及び第2マ
    トリックスの夫々の最初のn行に関するマトリックス連
    結を計算する手段と、 前記第3マトリックスの最初のn行を正規化する手段と
    、 前記第3マトリックスの最後の行を構成する変換項を計
    算して前記第3マトリックスを完成させる手段と、 を有することを特徴とする図形表示システムにおけるデ
    ータ変換装置。 得られた値の予め定められた上位桁を前記第3マトリッ
    クスの第2エレメントとする段階と、前述の段階の第1
    マトリックスの第1行と第2マトリックスの第3列につ
    いて繰り返すことにより第3マトリックスの第3エレメ
    ントを計算する段階と、 前述の段階を第1マトリックスの第2行と第2マトリッ
    クスの第1列について繰り返すことにより第3マトリッ
    クスの第4エレメントを計算する段階と、 前述の段階を第1マトリックスの第2行と第2マトリッ
    クスの第2列について繰り返すことにより第3マトリッ
    クスの第5エレメントを計算する段階と、 前述の段階を第1マトリックスの後続の行と第2マトリ
    ックスの後続の列について繰り返すことにより第3マト
    リックスの後続のエレメントを計算する段階と、 前記第1及び第2マトリックスのスケールファクタの関
    数として前記第3マトリックスのスケールファクタを計
    算する段階と、 を有することを特徴とする図形表示システムにおけるデ
    ータ変換方法。
JP62132017A 1986-09-26 1987-05-29 図形表示システムにおける図形の変換方法 Expired - Lifetime JPH0776987B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US912724 1986-09-26
US06/912,724 US4805117A (en) 1986-09-26 1986-09-26 Method for controlling concatenation of transformation matrices in a graphics display system

Publications (2)

Publication Number Publication Date
JPS6385988A true JPS6385988A (ja) 1988-04-16
JPH0776987B2 JPH0776987B2 (ja) 1995-08-16

Family

ID=25432332

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62132017A Expired - Lifetime JPH0776987B2 (ja) 1986-09-26 1987-05-29 図形表示システムにおける図形の変換方法

Country Status (4)

Country Link
US (1) US4805117A (ja)
EP (1) EP0261390B1 (ja)
JP (1) JPH0776987B2 (ja)
DE (1) DE3788260T2 (ja)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3713627A1 (de) * 1986-04-23 1987-10-29 Casio Computer Co Ltd Bildspeicherschaltung, insbesondere zur verwendung beim drehen von bilddaten
US5231696A (en) * 1987-05-14 1993-07-27 France Telecom Process and circuitry for implementing plotting of overextending curves inside a display window
US4982345A (en) * 1989-01-23 1991-01-01 International Business Machines Corporation Interactive computer graphics display system processing method for identifying an operator selected displayed object
US4970636A (en) * 1989-01-23 1990-11-13 Honeywell Inc. Memory interface controller
US7382929B2 (en) * 1989-05-22 2008-06-03 Pixel Instruments Corporation Spatial scan replication circuit
US5175808A (en) * 1989-09-12 1992-12-29 Pixar Method and apparatus for non-affine image warping
US5402530A (en) * 1991-08-20 1995-03-28 Island Graphics Corporation Method and system for color film separation preprocess using electronic object-based choking and spreading procedures including object combining operations
US5285402A (en) * 1991-11-22 1994-02-08 Intel Corporation Multiplyless discrete cosine transform
EP0569758A3 (en) * 1992-05-15 1995-03-15 Eastman Kodak Co Method and device for producing and storing three-dimensional characters and for three-dimensional typesetting.
KR0169541B1 (ko) * 1993-06-30 1999-03-20 이리마지리 쇼우이찌로 화상 처리 장치 및 그 방법 그리고 화상 처리 장치를 갖는 전자 장치
US5568600A (en) * 1994-04-15 1996-10-22 David Sarnoff Research Ctr. Method and apparatus for rotating and scaling images
US6515763B1 (en) 1998-07-31 2003-02-04 Adobe Systems Incorporated Vignette recognition and compression
US6903742B1 (en) * 1999-12-01 2005-06-07 Microsoft Corporation Method and apparatus for transforming and rendering graphical curves
US20040114785A1 (en) * 2002-12-06 2004-06-17 Cross Match Technologies, Inc. Methods for obtaining print and other hand characteristic information using a non-planar prism
US7081951B2 (en) * 2003-10-09 2006-07-25 Cross Match Technologies, Inc. Palm print scanner and methods

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4457015A (en) * 1981-12-17 1984-06-26 Ncr Corporation Matrix character preprocessing system
JPS58110255A (ja) * 1981-12-25 1983-06-30 Hitachi Ltd プリンタ制御装置
JPS60169893A (ja) * 1984-02-15 1985-09-03 シチズン時計株式会社 ビツトパタ−ン変換装置
JPS619762A (ja) * 1984-06-25 1986-01-17 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション イメ−ジ処理装置
US4637057A (en) * 1984-07-30 1987-01-13 Xerox Corporation Rotation of digital images
JPH0746391B2 (ja) * 1984-09-14 1995-05-17 株式会社日立製作所 図形シエ−デイング装置
US4658430A (en) * 1984-12-27 1987-04-14 International Business Machines Corp. System for rotating binary images

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
IBM TECHNICAL DISCLOSURE BULLETIN=1984 *

Also Published As

Publication number Publication date
JPH0776987B2 (ja) 1995-08-16
DE3788260D1 (de) 1994-01-05
EP0261390A3 (en) 1991-05-15
DE3788260T2 (de) 1994-05-19
EP0261390A2 (en) 1988-03-30
US4805117A (en) 1989-02-14
EP0261390B1 (en) 1993-11-24

Similar Documents

Publication Publication Date Title
JPS6385988A (ja) 図形表示システムにおける図形の変換方法
US4821209A (en) Data transformation and clipping in a graphics display system
US5973705A (en) Geometry pipeline implemented on a SIMD machine
Sproull et al. A clipping divider
US7890558B2 (en) Apparatus and method for precision binary numbers and numerical operations
JPH07200867A (ja) 画像生成装置
CN105303506B (zh) 一种基于html5的数据并行处理方法及系统
US4449201A (en) Geometric processing system utilizing multiple identical processors
JPH03127282A (ja) ディジタル・イメージのランド変換装置および方法
US5265210A (en) Method and apparatus for plotting pixels to approximate a straight line on a computer display device without substantial irregularities
CN112669418A (zh) 一种模型渲染的方法及装置
JPH0869538A (ja) アウトコードを用いてクリップチェックを実行する方法および装置
JPH0821087B2 (ja) 3次元陰影画像生成処理方法
US20070057972A1 (en) Method and apparatus for blending colors
US6903740B1 (en) Volumetric-based method and system for visualizing datasets
EP0410778A2 (en) Graphics processor having a floating point coprocessor
US7061494B1 (en) Method and apparatus for hardware optimization of graphics pipeline functions
JPS62159279A (ja) 文字発生装置
JPH10207694A (ja) ディジタルべき乗演算装置及びそれを用いたグラフィックスシステム
RU2058600C1 (ru) Специализированный вычислитель для устройств машинной графики
JPH0585924B2 (ja)
US20230206061A1 (en) Deep learning acceleration with mixed precision
JPH11328438A (ja) 高効率浮動小数点zバッファリングの方法および装置
US20200005501A1 (en) System and method of representing a line segment with two thin triangles
Imlay et al. Recursive Sub-Division Technique for Higher-Order Pyramid and Prism Isosurface Visualization