JPS6336481A - イメ−ジのウインド−イング方法 - Google Patents
イメ−ジのウインド−イング方法Info
- Publication number
- JPS6336481A JPS6336481A JP61176865A JP17686586A JPS6336481A JP S6336481 A JPS6336481 A JP S6336481A JP 61176865 A JP61176865 A JP 61176865A JP 17686586 A JP17686586 A JP 17686586A JP S6336481 A JPS6336481 A JP S6336481A
- Authority
- JP
- Japan
- Prior art keywords
- box
- window
- image
- data
- master
- 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
Links
- 238000000034 method Methods 0.000 claims description 24
- 230000001174 ascending effect Effects 0.000 claims 1
- 230000006870 function Effects 0.000 description 35
- 238000004364 calculation method Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 230000009466 transformation Effects 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000000844 transformation Methods 0.000 description 2
- 239000013598 vector Substances 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000035484 reaction time Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
- G06T15/40—Hidden part removal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/06—Ray-tracing
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/14—Display of multiple viewports
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Computer Hardware Design (AREA)
- Image Generation (AREA)
- Processing Or Creating Images (AREA)
- Digital Computer Display Output (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
A、産業上の利用分野
本発明はコンピュータ・グラフィックスにおいてイメー
ジ・データを処理するための方法に関するものであり、
更に詳しくいえば、グラフィック表示データを高速にウ
ィンドー表示するための技法に関するものである。
ジ・データを処理するための方法に関するものであり、
更に詳しくいえば、グラフィック表示データを高速にウ
ィンドー表示するための技法に関するものである。
B、従来の技術
設計業務にグラフィック・ソフトウェア・プロ、ダラム
を適用する分野では、大意のデータを高速で処理すると
いう要求が増大している。プログラム設計者にとって主
要な関心事のうちの重要なものは、wt奈者に与えられ
るべきデータを、wt祭者が行った表示要求の変更に適
応するよう高速でウィンドー表示し得る方法であった。
を適用する分野では、大意のデータを高速で処理すると
いう要求が増大している。プログラム設計者にとって主
要な関心事のうちの重要なものは、wt奈者に与えられ
るべきデータを、wt祭者が行った表示要求の変更に適
応するよう高速でウィンドー表示し得る方法であった。
代表的なものとして、階層的データ構造でサブイメージ
を保持するグラフィック表示装置が知られている。その
階層的データ構造がデータ・ツリーの形である場合、ベ
クトル、文字のインスタンス或いは文字及び非符号化イ
メージのストリング又はアレーのような原始的イメージ
はそのツリー構造のリーフ即ち葉の部分に置かれ、位置
及び色のような属性はそのツリー構造条件にわたって置
かれる。
を保持するグラフィック表示装置が知られている。その
階層的データ構造がデータ・ツリーの形である場合、ベ
クトル、文字のインスタンス或いは文字及び非符号化イ
メージのストリング又はアレーのような原始的イメージ
はそのツリー構造のリーフ即ち葉の部分に置かれ、位置
及び色のような属性はそのツリー構造条件にわたって置
かれる。
現在では、1つの大きな完全なデータ・イメージを表わ
すデータ・ウィンドーを1つのシート上に置くことによ
って動作するようなグラフィック・システムが設計され
ている。イメージ全体のうちのそのウィンドー内の部分
がスクリーン上の観察部分に与えられる。しかし、イメ
ージの変更を生じさせるためにウィンドーが動的に動か
される場合、新しいイメージをコンパイルするにはその
データ構造全体が詳しく考察されなければならない。
すデータ・ウィンドーを1つのシート上に置くことによ
って動作するようなグラフィック・システムが設計され
ている。イメージ全体のうちのそのウィンドー内の部分
がスクリーン上の観察部分に与えられる。しかし、イメ
ージの変更を生じさせるためにウィンドーが動的に動か
される場合、新しいイメージをコンパイルするにはその
データ構造全体が詳しく考察されなければならない。
従って、イメージの変更は大量のデータをサーチする必
要を生じ、その結果大量のデータ記憶装置及び処理の非
能率性等に結びつく遅い反応時間という処理問題を生ず
ることになる。
要を生じ、その結果大量のデータ記憶装置及び処理の非
能率性等に結びつく遅い反応時間という処理問題を生ず
ることになる。
イメージ変更データをアセンブルするための1つの方法
は、どの原始イメージがクリップされそして表示される
べきかを決定するためにデータ構造全体を処理するもの
であった。しかし、観察者の要求する情報はイメージ・
データのうちのわずかな部分であることが普通なので、
この方法は非常に時間を浪費し、非能率的でありそして
大量のメモリを無駄使いするものである。
は、どの原始イメージがクリップされそして表示される
べきかを決定するためにデータ構造全体を処理するもの
であった。しかし、観察者の要求する情報はイメージ・
データのうちのわずかな部分であることが普通なので、
この方法は非常に時間を浪費し、非能率的でありそして
大量のメモリを無駄使いするものである。
観察者の要求する情報をアセンブルするためのもう1つ
の方法では、完全なデータ・イメージがまず1ラインず
つ表示フォーマットに変換されていた。どのラインが使
用者にとって可視的でありそしてどれがクリップ可能で
あるかを特定するために、すべてのラインがスクリーン
座標に変換される。更に、この方法は、非可視ラインを
座標により分類する必要があるので、見ることを意図さ
れてないデータに対しても不要な変換が行われる。
の方法では、完全なデータ・イメージがまず1ラインず
つ表示フォーマットに変換されていた。どのラインが使
用者にとって可視的でありそしてどれがクリップ可能で
あるかを特定するために、すべてのラインがスクリーン
座標に変換される。更に、この方法は、非可視ラインを
座標により分類する必要があるので、見ることを意図さ
れてないデータに対しても不要な変換が行われる。
上記のプロセスに組込まれそしてインスタンス変換とし
て知られている1つの関連技法は1979年にマグロ−
・ヒル社が発行したニューマン(Newman)及びス
プロール(Sproull)著の「対話形コンピュータ
・グラフィックスの原理」に開示されたボクシング(b
oxing)と呼ばれる可視テストである。この方法で
は、データ・サブイメージのセットに対する可視の範囲
が保持される。その可視の範囲はそれらサブイメージの
セットにおけるグラフィック原始イメージに対して作ら
れた境界ボックスによって決定される。そこで、境界ボ
ックスはそのボックスをウィンドー特性と比較すること
及び不必要なデータをクリップ・アウトすることによっ
て表示されるべきデータを定義することができる。しか
し、この方法は、プログラマによる境界ボックスの極め
て正確な仕様を必要とし、回転又は同様のイメージ変換
が要求された情報の一部分となり得る場合には極めて困
難な作業となる。この方法は精々境界ボックスに総体的
に接近させるだけであり5なお大量の不必要なデータを
変換しそして記憶する必要がある。
て知られている1つの関連技法は1979年にマグロ−
・ヒル社が発行したニューマン(Newman)及びス
プロール(Sproull)著の「対話形コンピュータ
・グラフィックスの原理」に開示されたボクシング(b
oxing)と呼ばれる可視テストである。この方法で
は、データ・サブイメージのセットに対する可視の範囲
が保持される。その可視の範囲はそれらサブイメージの
セットにおけるグラフィック原始イメージに対して作ら
れた境界ボックスによって決定される。そこで、境界ボ
ックスはそのボックスをウィンドー特性と比較すること
及び不必要なデータをクリップ・アウトすることによっ
て表示されるべきデータを定義することができる。しか
し、この方法は、プログラマによる境界ボックスの極め
て正確な仕様を必要とし、回転又は同様のイメージ変換
が要求された情報の一部分となり得る場合には極めて困
難な作業となる。この方法は精々境界ボックスに総体的
に接近させるだけであり5なお大量の不必要なデータを
変換しそして記憶する必要がある。
C6発明が解決しようとする問題点
従って、本発明の目的は、コンピュータ・グラフィック
スにおける表示情報を効果的に処理して高速にウィンド
ー表示するための方法を提供することである。
スにおける表示情報を効果的に処理して高速にウィンド
ー表示するための方法を提供することである。
本発明のもう1つの目的は、速いレスポンス時間で達成
し得る情報をウィンドー表示するための方法を提供する
ことである。
し得る情報をウィンドー表示するための方法を提供する
ことである。
本発明の更にもう1つの目的は、他の既知のグラフィッ
ク・データ処理技法と互換性があり且つ総合可能な高速
のウィンドー表示を行うための方法を提供することであ
る。
ク・データ処理技法と互換性があり且つ総合可能な高速
のウィンドー表示を行うための方法を提供することであ
る。
D0問題点を解決するための手段
1つの完全なデータ・イメージ即ちシートを多数の小さ
い領域ボックスに分割することによって情報のウィンド
ー表示を容易にするための方法が得られる。この場合、
グラフィック原始イメージは階層的ツリー構造の予め計
算されたデータ・ビットとして置かれる。その原始イメ
ージ(例えば、ベクトル、文字のインスタンス等)はそ
のツリー構造におけるリーフであり、位置及びカラーの
ような属性がそのデータ構造全体にわたって置かれても
よい。更に、サマリとよばれる少数ビットのデータがそ
のツリーのノードに保持される。そのサマリは低レベル
のブランチ即ち枝のサマリをORした結果である。更に
、そのシートに対するマスタ・ボックスを定義すること
によって、スクリーンでユーザに表示されたデータはそ
のマスタ・ボックスより小さい又はそれに等しいウィン
ドーによって設定される。
い領域ボックスに分割することによって情報のウィンド
ー表示を容易にするための方法が得られる。この場合、
グラフィック原始イメージは階層的ツリー構造の予め計
算されたデータ・ビットとして置かれる。その原始イメ
ージ(例えば、ベクトル、文字のインスタンス等)はそ
のツリー構造におけるリーフであり、位置及びカラーの
ような属性がそのデータ構造全体にわたって置かれても
よい。更に、サマリとよばれる少数ビットのデータがそ
のツリーのノードに保持される。そのサマリは低レベル
のブランチ即ち枝のサマリをORした結果である。更に
、そのシートに対するマスタ・ボックスを定義すること
によって、スクリーンでユーザに表示されたデータはそ
のマスタ・ボックスより小さい又はそれに等しいウィン
ドーによって設定される。
ユーザがスクリーンをパンする時、ウインドー・ボック
スはシートに関して及びマスタ・ボックスに関して動か
される。ウィンドーがマスタ・ボックス内にある限り、
階層的データ・ツリーはそのツリー内でボックスに対し
トラバースされ、そしてフレーム・バッファはリフレッ
シュされる。ウィンドーがマスタ・ボックスの外にとび
出すと、新しいマスタ・ボックスが作られなければなら
ない。これに続いて新しいサマリが各ノードで計算され
、どのボックスが表示されるべきグラフィック・データ
を持っているかを表わす。そこで、グラフィック・デー
タを含むノードはイメージ・データの範囲を定義するよ
う処理される。このイメージ範囲のデータは新しいマス
タ・ボックスにクリップされ、新しいボックスを定義す
る。そこで新しいボックスはウィンドーにクリップされ
、グラフィック原始イメージはそのイメージを観察者に
表示する。
スはシートに関して及びマスタ・ボックスに関して動か
される。ウィンドーがマスタ・ボックス内にある限り、
階層的データ・ツリーはそのツリー内でボックスに対し
トラバースされ、そしてフレーム・バッファはリフレッ
シュされる。ウィンドーがマスタ・ボックスの外にとび
出すと、新しいマスタ・ボックスが作られなければなら
ない。これに続いて新しいサマリが各ノードで計算され
、どのボックスが表示されるべきグラフィック・データ
を持っているかを表わす。そこで、グラフィック・デー
タを含むノードはイメージ・データの範囲を定義するよ
う処理される。このイメージ範囲のデータは新しいマス
タ・ボックスにクリップされ、新しいボックスを定義す
る。そこで新しいボックスはウィンドーにクリップされ
、グラフィック原始イメージはそのイメージを観察者に
表示する。
E、実施例
第1図はこのシステムの各コンポーネントの関係を示す
。シート1は緑の原始イメージ又は領域の原始イメージ
によって与えられるイメージ・データを含む大きな領域
である。領域の原始イメージは2つの座標の対及び画素
データとして指定されるイメージ・データ、テキスト又
は肖像でよい。
。シート1は緑の原始イメージ又は領域の原始イメージ
によって与えられるイメージ・データを含む大きな領域
である。領域の原始イメージは2つの座標の対及び画素
データとして指定されるイメージ・データ、テキスト又
は肖像でよい。
ウィンドー3はユーザが現在見ているスクリーン上の領
域を表わす。このウィンドー情報はグラフィック・ター
ミナルにおける表示窓に表示される。
域を表わす。このウィンドー情報はグラフィック・ター
ミナルにおける表示窓に表示される。
マスタ・ボックス5はウィンドー3よりも大きい又は等
しい領域である。ユーザがマスタ・ボックス5内に留ま
っている間、ウィンドー表示はトラバースと呼ばれる1
つの機能によって管理される。
しい領域である。ユーザがマスタ・ボックス5内に留ま
っている間、ウィンドー表示はトラバースと呼ばれる1
つの機能によって管理される。
ユーザがマスタ・ボックス5を横切る時、サマリの計算
を含む特別の計算が生じ、ウィンドーが移動しようとす
る方向に変位した新しいマスタ・ボックスが設定される
。ウィンドー、マスタ・ボックス及びシートはすべてボ
ックス寸法の倍数である。シートは多数の小ボックスを
含むものでよい。
を含む特別の計算が生じ、ウィンドーが移動しようとす
る方向に変位した新しいマスタ・ボックスが設定される
。ウィンドー、マスタ・ボックス及びシートはすべてボ
ックス寸法の倍数である。シートは多数の小ボックスを
含むものでよい。
この説明では、ウィンドー3は1つのボックスの寸法で
あり、マスタ・ボックス5は16個のボックスより成る
。
あり、マスタ・ボックス5は16個のボックスより成る
。
5つの基本的機能は、ここで開示される高速ウィンドー
表示方法を構成する。ウィンドーと呼ばれるプログラム
がこのシステムでは2つの処理を管理する。それら処理
の1つはトラバースであり。
表示方法を構成する。ウィンドーと呼ばれるプログラム
がこのシステムでは2つの処理を管理する。それら処理
の1つはトラバースであり。
それは−組のグラフィック原始イメージをリーフの部分
に含むツリー構造をサーチするものである。
に含むツリー構造をサーチするものである。
ノードはイメージをサブ・イメージにグループ分けする
。トラバース中、スクリーンはマスタ・ボックス内のウ
ィンドー表示を反映するよう更新される。
。トラバース中、スクリーンはマスタ・ボックス内のウ
ィンドー表示を反映するよう更新される。
ウィンドー処理により制御されるもう1つの処理はウィ
ンドーがマスタ・ボックスを横切った時にいつも必要と
されるサマリの計算である。サマリはノードに取付けら
れたビットのマトリクスである。1つのノードのサマリ
はマスタ・ボックスにおけるどのボックスがそのボック
ス内に示されるべきグラフインク・データを有するかを
表わす。
ンドーがマスタ・ボックスを横切った時にいつも必要と
されるサマリの計算である。サマリはノードに取付けら
れたビットのマトリクスである。1つのノードのサマリ
はマスタ・ボックスにおけるどのボックスがそのボック
ス内に示されるべきグラフインク・データを有するかを
表わす。
第2−4図は4×4マスタ・ボックスに対するサマリで
ある。そのサマリにおける各ビットは第2−3図に示さ
れるように1つの線の一部分がそのボツクスを通ること
を表わす。そのツリーにおける各ノードに対し、それと
関連するサマリはグラフィック・データがすべてマスタ
・ボックスを通ることを表わす。表示タスクを完成する
2つの他の機能は、サマリを計算するサマリ計算とウィ
ンドーにより定義されたスクリーン上に1つのライン又
は領域の原始イメージをクリップしそして表示するクリ
ップ表示である。
ある。そのサマリにおける各ビットは第2−3図に示さ
れるように1つの線の一部分がそのボツクスを通ること
を表わす。そのツリーにおける各ノードに対し、それと
関連するサマリはグラフィック・データがすべてマスタ
・ボックスを通ることを表わす。表示タスクを完成する
2つの他の機能は、サマリを計算するサマリ計算とウィ
ンドーにより定義されたスクリーン上に1つのライン又
は領域の原始イメージをクリップしそして表示するクリ
ップ表示である。
ウィンドーと呼ばれるプログラムが第3図に示される。
図示のように、そのプログラムはウィンドー表示を続け
るか或いはユーザがウィンドー表示を停止するまでホワ
イル(While)ステートメン1−によってループ内
をサーチし続ける。そこで、ウィンドーがマスタ・ボッ
クス内にあるかどうかを決定するテスI−が行われ、そ
れはトラバース機能を実行させてそしてウィンドー・プ
ログラムをループし続けさせる。ウィンドーがマスタ・
ボックス内にない場合(即ち、それがマスタ・ボックス
を通過した場合)、サマリ計算機能が実行され、然る後
、トラバース機能が実行される。
るか或いはユーザがウィンドー表示を停止するまでホワ
イル(While)ステートメン1−によってループ内
をサーチし続ける。そこで、ウィンドーがマスタ・ボッ
クス内にあるかどうかを決定するテスI−が行われ、そ
れはトラバース機能を実行させてそしてウィンドー・プ
ログラムをループし続けさせる。ウィンドーがマスタ・
ボックス内にない場合(即ち、それがマスタ・ボックス
を通過した場合)、サマリ計算機能が実行され、然る後
、トラバース機能が実行される。
トラバース機能は第4図にのように配置された第4−1
図及び第4−2図に示される。その機能はnブツシュ機
能を使ってルート・ノードをスタックすることにより始
まり、そして1つのループに入る。このループの一番上
では、1つのノードがポツプ・オフされ、そして3つの
ケースのうちの1つが得られる。そのノードは(1)エ
ンプティ(空)であるか、(2)リーフであるか、又は
(3)サブ・ノードを有する。ケース1では、そのノー
ドがエンプティであると、その機能はトラバースが完了
するため終了する。ケース2では、そのノードがリーフ
・ノードであると、2つの可変数即ちウィンドー・サマ
リとよばれるサマリとマスク可変数とによって決定され
る2つの状況の1つが存在する。
図及び第4−2図に示される。その機能はnブツシュ機
能を使ってルート・ノードをスタックすることにより始
まり、そして1つのループに入る。このループの一番上
では、1つのノードがポツプ・オフされ、そして3つの
ケースのうちの1つが得られる。そのノードは(1)エ
ンプティ(空)であるか、(2)リーフであるか、又は
(3)サブ・ノードを有する。ケース1では、そのノー
ドがエンプティであると、その機能はトラバースが完了
するため終了する。ケース2では、そのノードがリーフ
・ノードであると、2つの可変数即ちウィンドー・サマ
リとよばれるサマリとマスク可変数とによって決定され
る2つの状況の1つが存在する。
ウィンドー・サマリの例が第2−1図及び第2−2図に
示される。それらはマスタ・ボックス内のウィンドー及
び対応するウィンドー・サマリを示す。ウィンドー・サ
マリは、そのウィンドーマスタ・ボックス上のどこにあ
るかを1でもって表わすサマリである。第2−3図及び
第2−4図は既に説明したものであるが、それらは1つ
の線が通っているマスタ・ボックス及び4X4のアレー
で置かれた1及び0のマトリクスによりその線がどこに
あるかを表わすサマリを示す。従って、サマリとウィン
ドー・サマリとの類似性が直接にわかるであろう。
示される。それらはマスタ・ボックス内のウィンドー及
び対応するウィンドー・サマリを示す。ウィンドー・サ
マリは、そのウィンドーマスタ・ボックス上のどこにあ
るかを1でもって表わすサマリである。第2−3図及び
第2−4図は既に説明したものであるが、それらは1つ
の線が通っているマスタ・ボックス及び4X4のアレー
で置かれた1及び0のマトリクスによりその線がどこに
あるかを表わすサマリを示す。従って、サマリとウィン
ドー・サマリとの類似性が直接にわかるであろう。
上記2つの場合、ウィンドー・サマリとANDされたサ
マリがゼロ(ウィンドー内にグラフィック原始イメージ
がない)ならば、サブノードはスキップされ、制御はル
ープの一番上に戻ってそのスタック上の次のノードで開
始する。そうでない場合、クリップ表示機能が実行され
、線を引くか或いは1つの領域を描き、制御はそのルー
プの一番上に戻される。
マリがゼロ(ウィンドー内にグラフィック原始イメージ
がない)ならば、サブノードはスキップされ、制御はル
ープの一番上に戻ってそのスタック上の次のノードで開
始する。そうでない場合、クリップ表示機能が実行され
、線を引くか或いは1つの領域を描き、制御はそのルー
プの一番上に戻される。
第3のケースはノードがサブ・ノードを持つ時である。
ウィンドー・サマリとANDされたサマリがゼロでない
かどうかを決めるためのテストが行われる。それがゼロ
でない場合、それはノードの下のイメージ部分がウィン
ドー内にあることを表わす。従って、そのノードの下の
サブノードはすべてブツシュ・サブノードと呼ばれる機
能によってスタック上にブツシュされる。
かどうかを決めるためのテストが行われる。それがゼロ
でない場合、それはノードの下のイメージ部分がウィン
ドー内にあることを表わす。従って、そのノードの下の
サブノードはすべてブツシュ・サブノードと呼ばれる機
能によってスタック上にブツシュされる。
従って、トラバース機能はクリップ及び表示を必要とす
るグラフィック原始イメージを含むリーフを捜すために
グラフィック・ツリー構造をサーチする。表示が必要で
あることをサマリが示す場合、サブ・ノードが処理され
る。表示が行われるべきないことをサマリが示す場合、
そのノードのサブノードはスキップされる。
るグラフィック原始イメージを含むリーフを捜すために
グラフィック・ツリー構造をサーチする。表示が必要で
あることをサマリが示す場合、サブ・ノードが処理され
る。表示が行われるべきないことをサマリが示す場合、
そのノードのサブノードはスキップされる。
ウィンドーがマスタ・ボックスを通過する時、第5図に
示されたサマリ計算機能が実行される。
示されたサマリ計算機能が実行される。
この機能はノードを含むツリー・データ構造及び各ノー
ドと関連したサマリをアクセスする。その動作では2つ
の作業スタックが使用される。1つのスタックはノード
(n)を含み、もう1つのスタックはサマリ(s)を含
んでいる。この機能の第1ステートメントでは、ルート
・ノード即ちnブツシュ(ルート)及びゼロのサマリ即
ちSブツシュ(0)がそのツリーにおけるノードのトラ
バ−スを始めるようにスタックされる。そこで、ホワイ
ル・ステートメントでもってループに入り、ノード及び
サマリがポツプされる。4つのケースのうちの1つが得
られる。
ドと関連したサマリをアクセスする。その動作では2つ
の作業スタックが使用される。1つのスタックはノード
(n)を含み、もう1つのスタックはサマリ(s)を含
んでいる。この機能の第1ステートメントでは、ルート
・ノード即ちnブツシュ(ルート)及びゼロのサマリ即
ちSブツシュ(0)がそのツリーにおけるノードのトラ
バ−スを始めるようにスタックされる。そこで、ホワイ
ル・ステートメントでもってループに入り、ノード及び
サマリがポツプされる。4つのケースのうちの1つが得
られる。
ケース1では、ノード・スタックが空である場合、プロ
セスは完了し、機能は第3@のウィンドー機能に戻る。
セスは完了し、機能は第3@のウィンドー機能に戻る。
ケース2では、ノードがリーフである場合、そのリーフ
に対する新しいサマリの計算が行われ、そしてそれはス
タック上の前のサマリとORされる。これは、シブリン
グ・ノードがサマリ値を次の上位のシブリングへそして
最終的にはペアレント・ノードへ送るようにするための
機構である。
に対する新しいサマリの計算が行われ、そしてそれはス
タック上の前のサマリとORされる。これは、シブリン
グ・ノードがサマリ値を次の上位のシブリングへそして
最終的にはペアレント・ノードへ送るようにするための
機構である。
リーフ・ノードを処理するためのステートメントは、A
SUMと名づけられたサマリがポツプされそしてSUM
MARYと呼ばれる新しいサマリがそのノードに対して
計算されることを示す。(サマリ計算機能に関しては第
6図参照)。そこで、ASUMとORされたサマリ(X
S)はスタック上にブツシュされ、そしてプログラム・
サイクルはループの一番上に戻る。これの理由は1つの
サマリ値がサマリのためのスタック上に置かれるためで
あり(それはシブリング間のサマリをORするために使
用される)、そしてそのツリー構造内に(ウィンドー表
示のために)も置かれる。
SUMと名づけられたサマリがポツプされそしてSUM
MARYと呼ばれる新しいサマリがそのノードに対して
計算されることを示す。(サマリ計算機能に関しては第
6図参照)。そこで、ASUMとORされたサマリ(X
S)はスタック上にブツシュされ、そしてプログラム・
サイクルはループの一番上に戻る。これの理由は1つの
サマリ値がサマリのためのスタック上に置かれるためで
あり(それはシブリング間のサマリをORするために使
用される)、そしてそのツリー構造内に(ウィンドー表
示のために)も置かれる。
第3のケースはツリーが下方にリーフへそして上方にル
ートへトラバースされるプロセスを管理する。上方への
トラバース中、サマリのORが行われる。そのoR動作
のビットはリーフ・ノードにおいて生じそしてツリーを
上方へ伝播する。使用される機構は、1つのノードが最
初にそのスタック上に置かれる時、それは新しいノード
であると考えられそして新しいノードとして処理される
時、古いノードとなるものである。その後、そのノード
が古いノードとして処理される時、サマリのORがツリ
ー上で生ずる。
ートへトラバースされるプロセスを管理する。上方への
トラバース中、サマリのORが行われる。そのoR動作
のビットはリーフ・ノードにおいて生じそしてツリーを
上方へ伝播する。使用される機構は、1つのノードが最
初にそのスタック上に置かれる時、それは新しいノード
であると考えられそして新しいノードとして処理される
時、古いノードとなるものである。その後、そのノード
が古いノードとして処理される時、サマリのORがツリ
ー上で生ずる。
ケース3では、nがポツプされたけれども、それはスタ
ック上でブツシュされ、ノードのシブリングすべてがブ
ツシュ・サブ・ノード機能によってそのスタック上に置
かれ、サブ・ノードを新しいサブ・ノードにセットする
。″サブ・ノードに対するブツシュ・ゼロ・サマリ″機
能はそれらサブ・ノートに対するゼロのサマリをスタッ
クする。
ック上でブツシュされ、ノードのシブリングすべてがブ
ツシュ・サブ・ノード機能によってそのスタック上に置
かれ、サブ・ノードを新しいサブ・ノードにセットする
。″サブ・ノードに対するブツシュ・ゼロ・サマリ″機
能はそれらサブ・ノートに対するゼロのサマリをスタッ
クする。
最終的には、そのノードの属性が古いノードとなるよう
にセットされそして制御がそのループの一番上に戻る。
にセットされそして制御がそのループの一番上に戻る。
ケース4では、古いノードがツリーのトラバースを表わ
す。スタックからASUMをそして前のポツプからサマ
リを得ると、その2つがORされてサマリ・スタック上
に置かれそしてそのノードに対するスタックからのサマ
リ値がツリー構造に挿入され、制御がそのループの一番
上に戻る。
す。スタックからASUMをそして前のポツプからサマ
リを得ると、その2つがORされてサマリ・スタック上
に置かれそしてそのノードに対するスタックからのサマ
リ値がツリー構造に挿入され、制御がそのループの一番
上に戻る。
第6図は1つのリーフ・ノードに対してのみサマリを計
算する′″サマリ計計算機機能示すものである。まず、
ツリー構造から可変数を得るゲット・ボックス機能によ
ってXボックスがセットされる(又はマスタ・ボックス
にクリップしたことを示す)。Xボックスはスクリーン
上に書かれるべき1つの線又は領域に対する範囲(2つ
の座標の対)を含む。
算する′″サマリ計計算機機能示すものである。まず、
ツリー構造から可変数を得るゲット・ボックス機能によ
ってXボックスがセットされる(又はマスタ・ボックス
にクリップしたことを示す)。Xボックスはスクリーン
上に書かれるべき1つの線又は領域に対する範囲(2つ
の座標の対)を含む。
そこで、″クリップ″機能がXボックスをマスタ・ボッ
クスと比較し、Xボックスをマスタ・ボックスにクリッ
プして新ボックスと呼ばれる新しいボックスを作る。次
に、新しいボックスがマスタ・ボックス内にあるかどう
かをイン・ボックス機能が決める。それがない場合、そ
れのサマリはゼロにセットされ、そして残りのステート
メントはスキップされる。新ボックスがマスタ・ボック
ス内にある場合、リーフ・ノードが線又は領域の原始イ
メージであるかどうかを次のテストが決める。そのノー
ドが線である場合、パ線に対するサマリ計算″機能がそ
の新ボックスに対しその線により交差されるボックスを
決定する。リーフ・ノードの原始イメージが領域の原始
イメージである場合、″領域に対するサマリ計算″と呼
ばれる機能が表示されるべき領域の全体又は一部分によ
りカバーされるその新ボックス内のボックス全部をしら
べる。
クスと比較し、Xボックスをマスタ・ボックスにクリッ
プして新ボックスと呼ばれる新しいボックスを作る。次
に、新しいボックスがマスタ・ボックス内にあるかどう
かをイン・ボックス機能が決める。それがない場合、そ
れのサマリはゼロにセットされ、そして残りのステート
メントはスキップされる。新ボックスがマスタ・ボック
ス内にある場合、リーフ・ノードが線又は領域の原始イ
メージであるかどうかを次のテストが決める。そのノー
ドが線である場合、パ線に対するサマリ計算″機能がそ
の新ボックスに対しその線により交差されるボックスを
決定する。リーフ・ノードの原始イメージが領域の原始
イメージである場合、″領域に対するサマリ計算″と呼
ばれる機能が表示されるべき領域の全体又は一部分によ
りカバーされるその新ボックス内のボックス全部をしら
べる。
最後の機能は″クリップ表示″である。これは、線又は
領域の原始イメージがスクリーン上に描がれるべき時に
いつでも呼び出されそしてスクリーン上の実際の表示の
前にクリップが行われなければならない。第8−1図は
スクリーン上に存在するマスタ・ボックスを通る線を示
す。第8−1図におけるXボックスはその線の範囲を示
し、第8−2図における新ボックスはその線の範囲にク
リップされたボックスである。結局、第8−3図におけ
るサマリは新しいボックスを使って計算され。
領域の原始イメージがスクリーン上に描がれるべき時に
いつでも呼び出されそしてスクリーン上の実際の表示の
前にクリップが行われなければならない。第8−1図は
スクリーン上に存在するマスタ・ボックスを通る線を示
す。第8−1図におけるXボックスはその線の範囲を示
し、第8−2図における新ボックスはその線の範囲にク
リップされたボックスである。結局、第8−3図におけ
るサマリは新しいボックスを使って計算され。
そのサマリにおけるボックスのうちの4つがそれらを通
る1つの線を有することを決定する。
る1つの線を有することを決定する。
第7図はクリップ表示機能を示す。第7図における最初
の2つの機能はサマリ計算において使用されたものと同
じである。線又は領域の原始イメージの範囲の座標が得
られそしてXボックス内に14かれる。しかし、この機
能によって、Xボックスがウインドー・ボックスにクリ
ップされる。表示されるべきイメージをアセンブルする
ために、線又は領域を描くためのグラフィック原始イメ
ージがリーフ・ノードのタイプに従って呼びだされる。
の2つの機能はサマリ計算において使用されたものと同
じである。線又は領域の原始イメージの範囲の座標が得
られそしてXボックス内に14かれる。しかし、この機
能によって、Xボックスがウインドー・ボックスにクリ
ップされる。表示されるべきイメージをアセンブルする
ために、線又は領域を描くためのグラフィック原始イメ
ージがリーフ・ノードのタイプに従って呼びだされる。
第1図はシート、ボックス、マスタ・ボックス及びウィ
ンドーの間の関係を示す図、第2−1図及び第2−2図
はウィンドーに対するサマリを示す図、第2−3図及び
第2−4図は4X4マスタ・ボックスと1つの線とを示
す図、第3図はウィンドー機能に対する流れ図、第4図
は第4−1図及び第4−2図の配置を示す図、第4−1
図及び第4−2図はトラバース機能に対する流れ図、第
5図は第5−1図及び第5−2図の配置を示す図、第5
−1図及び第5−2図は計算・サマリ機能に対する流れ
図、第6図は計算・サマリ機能に対する流れ図、第7図
はクリップ・レンダ機能に対する流れ図、第8−1図乃
至第8−3図は1つの線イメージがスクリーン上に存在
するマスタ・ボックスを通る状態を示す図である。 第1図 第2−1図 第2−2図 第2−3図 第2−4図 第6図 箪7図
ンドーの間の関係を示す図、第2−1図及び第2−2図
はウィンドーに対するサマリを示す図、第2−3図及び
第2−4図は4X4マスタ・ボックスと1つの線とを示
す図、第3図はウィンドー機能に対する流れ図、第4図
は第4−1図及び第4−2図の配置を示す図、第4−1
図及び第4−2図はトラバース機能に対する流れ図、第
5図は第5−1図及び第5−2図の配置を示す図、第5
−1図及び第5−2図は計算・サマリ機能に対する流れ
図、第6図は計算・サマリ機能に対する流れ図、第7図
はクリップ・レンダ機能に対する流れ図、第8−1図乃
至第8−3図は1つの線イメージがスクリーン上に存在
するマスタ・ボックスを通る状態を示す図である。 第1図 第2−1図 第2−2図 第2−3図 第2−4図 第6図 箪7図
Claims (1)
- 【特許請求の範囲】 データ・イメージを複数の小領域のボックスに分割し且
つ予め計算されたデータ・ビットの階層的ツリーのリー
フ部分に原始イメージを配置し、前記ツリーのリーフの
サマリを逓昇順にORした結果を表わす少数のデータ・
ビットを前記ツリーのノードに保持し、 1つのボックスよりも大きいか又は等しい1つのマスタ
・ボックスを形成し、 前記マスタ・ボックスのデータのサイズより小さいか又
は等しいデータ容量のウインドーを、前記ウインドーが
スクリーン上に表示される前記データ・イメージの領域
を表わすよう設定し、前記ウインドーが前記マスタ・ボ
ックス内にあるよう前記マスタ・ボックスに対する関係
で前記ウインドーを位置づけ、 前記マスタ・ボックス内の小さいボックスに関して前記
ツリーのノードにおける少数のデータ・ビットを計算し
、 前記マスタ・ボックス内の小さいボックスに対して前記
ツリーをトラバースし、 完全なイメージの範囲を計算し、前記マスタ・ボックス
にイメージをクリップし、 前記マスタ・ボックス内のイメージの範囲を計算し且つ
前記ウインドー・ボックスのサイズにイメージをクリッ
プし、 観察者にイメージを表示するよう原始イメージを呼び出
す ことを特徴とするデータ・イメージをウインドー表示す
る方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US762348 | 1985-08-02 | ||
US06/762,348 US4731606A (en) | 1985-08-02 | 1985-08-02 | Method for rapid windowing of display information in computer graphics |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS6336481A true JPS6336481A (ja) | 1988-02-17 |
JPH0740307B2 JPH0740307B2 (ja) | 1995-05-01 |
Family
ID=25064788
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP61176865A Expired - Lifetime JPH0740307B2 (ja) | 1985-08-02 | 1986-07-29 | イメ−ジのウインド−イング方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US4731606A (ja) |
EP (1) | EP0210554B1 (ja) |
JP (1) | JPH0740307B2 (ja) |
DE (1) | DE3685065D1 (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0700665A1 (en) | 1994-09-12 | 1996-03-13 | Olympus Optical Co., Ltd. | Surgical microscope unit |
US7283296B2 (en) | 2004-01-13 | 2007-10-16 | Olympus Corporation | Surgical microscope |
JP2011134326A (ja) * | 2009-12-22 | 2011-07-07 | Intel Corp | プログラム可能カリングユニットのコンパイル |
US8038108B2 (en) | 2008-05-15 | 2011-10-18 | Olympus Medical Systems Corp. | Supporting apparatus for medical instrument |
WO2012014944A1 (ja) | 2010-07-29 | 2012-02-02 | オリンパスメディカルシステムズ株式会社 | 医療器具保持装置 |
Families Citing this family (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62145369A (ja) * | 1985-12-20 | 1987-06-29 | Hitachi Ltd | 図形デ−タの検索方法 |
JP2541539B2 (ja) * | 1987-02-13 | 1996-10-09 | 日本電気株式会社 | 図形処理装置 |
US5251322A (en) * | 1987-08-13 | 1993-10-05 | Digital Equipment Corporation | Method of operating a computer graphics system including asynchronously traversing its nodes |
US5097411A (en) * | 1987-08-13 | 1992-03-17 | Digital Equipment Corporation | Graphics workstation for creating graphics data structure which are stored retrieved and displayed by a graphics subsystem for competing programs |
US4928247A (en) * | 1987-08-13 | 1990-05-22 | Digital Equipment Corporation | Method and apparatus for the continuous and asynchronous traversal and processing of graphics data structures |
US4904994A (en) * | 1987-09-08 | 1990-02-27 | Auto-Trol Technology Corporation | Apparatus and method for identifying next matrices for vector drawing |
US4939671A (en) * | 1987-09-08 | 1990-07-03 | Auto-Trol Technology Corporation | Method and system for line drawing with next matrix feature |
US5030117A (en) * | 1987-09-25 | 1991-07-09 | Delorme David M | Digital global map generating system |
US4972319A (en) * | 1987-09-25 | 1990-11-20 | Delorme David M | Electronic global map generating system |
US5121478A (en) * | 1988-09-08 | 1992-06-09 | Xerox Corporation | Window system with independently replaceable window functionality |
GB8828342D0 (en) * | 1988-12-05 | 1989-01-05 | Rediffusion Simulation Ltd | Image generator |
US5079545A (en) * | 1989-01-13 | 1992-01-07 | Sun Microsystems, Inc. | Apparatus and method for processing graphical information to minimize page crossings and eliminate processing of information outside a predetermined clip window |
GB2227147B (en) * | 1989-01-13 | 1994-04-13 | Sun Microsystems Inc | Hardware implementation of clipping and inter-coordinate comparison logic |
US5297240A (en) * | 1989-01-13 | 1994-03-22 | Sun Microsystems, Inc. | Hardware implementation of clipping and intercoordinate comparison logic |
US5060170A (en) * | 1989-08-09 | 1991-10-22 | International Business Machines Corp. | Space allocation and positioning method for screen display regions in a variable windowing system |
US5428554A (en) * | 1992-09-03 | 1995-06-27 | International Business Machines Corporation | Hierarchical graph analysis method and apparatus |
US5500933A (en) * | 1993-04-28 | 1996-03-19 | Canon Information Systems, Inc. | Display system which displays motion video objects combined with other visual objects |
US5459482A (en) * | 1993-06-24 | 1995-10-17 | Motorola, Inc. | Facsimile communication with an active addressing display device |
US5548703A (en) * | 1993-11-30 | 1996-08-20 | International Business Machines Corporation | Navigation within a compound graphical object in a graphical user interface |
US6226636B1 (en) * | 1998-11-20 | 2001-05-01 | Philips Electronics North America Corp. | System for retrieving images using a database |
US6389417B1 (en) * | 1999-06-29 | 2002-05-14 | Samsung Electronics Co., Ltd. | Method and apparatus for searching a digital image |
US6954218B2 (en) * | 2000-10-30 | 2005-10-11 | Microsoft Corporation | Method and apparatus for high-performance rendering and hit-testing of a window tree |
JP4370438B2 (ja) * | 2007-06-27 | 2009-11-25 | Necシステムテクノロジー株式会社 | ベクター画像描画装置、ベクター画像描画方法およびプログラム |
EP2297692A4 (en) | 2008-07-03 | 2015-04-15 | Blackberry Ltd | METHOD AND SYSTEM FOR QUICKLY CLIPING POLYGONES |
CA2729234C (en) | 2008-07-03 | 2014-01-07 | Research In Motion Limited | Method and system for fast clipping of line segments |
EP2338153B1 (en) * | 2008-10-20 | 2016-08-17 | BlackBerry Limited | Method and system for anti-aliasing clipped polygons and polylines |
US8471867B2 (en) * | 2009-10-16 | 2013-06-25 | Research In Motion Limited | Method and system for anti-aliasing clipped polygons and polylines |
KR20140142863A (ko) * | 2013-06-05 | 2014-12-15 | 한국전자통신연구원 | 그래픽 편집기 제공 장치 및 그 방법 |
USD749109S1 (en) * | 2013-09-03 | 2016-02-09 | Samsung Electronics Co., Ltd. | Display screen or portion thereof with graphical user interface |
USD749610S1 (en) * | 2013-09-03 | 2016-02-16 | Samsung Electronics Co., Ltd. | Display screen or portion thereof with graphical user interface |
US10026204B2 (en) | 2015-01-27 | 2018-07-17 | Splunk Inc. | Efficient point-in-polygon indexing technique for processing queries over geographic data sets |
US9836874B2 (en) * | 2015-01-27 | 2017-12-05 | Splunk Inc. | Efficient polygon-clipping technique to reduce data transfer requirements for a viewport |
US9916326B2 (en) | 2015-01-27 | 2018-03-13 | Splunk, Inc. | Efficient point-in-polygon indexing technique for facilitating geofencing operations |
US9607414B2 (en) | 2015-01-27 | 2017-03-28 | Splunk Inc. | Three-dimensional point-in-polygon operation to facilitate displaying three-dimensional structures |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US31200A (en) * | 1861-01-22 | I H S White | Newspaper-file | |
US3497760A (en) * | 1968-06-10 | 1970-02-24 | Sperry Rand Corp | Logical expansion circuitry for display systems |
US3602702A (en) * | 1969-05-19 | 1971-08-31 | Univ Utah | Electronically generated perspective images |
US3816726A (en) * | 1972-10-16 | 1974-06-11 | Evans & Sutherland Computer Co | Computer graphics clipping system for polygons |
US4491836A (en) * | 1980-02-29 | 1985-01-01 | Calma Company | Graphics display system and method including two-dimensional cache |
US4550315A (en) * | 1983-11-03 | 1985-10-29 | Burroughs Corporation | System for electronically displaying multiple images on a CRT screen such that some images are more prominent than others |
US4613946A (en) * | 1984-06-07 | 1986-09-23 | Forman Ernest H | Method and apparatus for generating hierarchical displays |
-
1985
- 1985-08-02 US US06/762,348 patent/US4731606A/en not_active Expired - Fee Related
-
1986
- 1986-07-18 DE DE8686109874T patent/DE3685065D1/de not_active Expired - Fee Related
- 1986-07-18 EP EP86109874A patent/EP0210554B1/en not_active Expired - Lifetime
- 1986-07-29 JP JP61176865A patent/JPH0740307B2/ja not_active Expired - Lifetime
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0700665A1 (en) | 1994-09-12 | 1996-03-13 | Olympus Optical Co., Ltd. | Surgical microscope unit |
US7283296B2 (en) | 2004-01-13 | 2007-10-16 | Olympus Corporation | Surgical microscope |
US8038108B2 (en) | 2008-05-15 | 2011-10-18 | Olympus Medical Systems Corp. | Supporting apparatus for medical instrument |
JP2011134326A (ja) * | 2009-12-22 | 2011-07-07 | Intel Corp | プログラム可能カリングユニットのコンパイル |
WO2012014944A1 (ja) | 2010-07-29 | 2012-02-02 | オリンパスメディカルシステムズ株式会社 | 医療器具保持装置 |
Also Published As
Publication number | Publication date |
---|---|
US4731606A (en) | 1988-03-15 |
DE3685065D1 (de) | 1992-06-04 |
EP0210554B1 (en) | 1992-04-29 |
EP0210554A3 (en) | 1990-01-31 |
JPH0740307B2 (ja) | 1995-05-01 |
EP0210554A2 (en) | 1987-02-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS6336481A (ja) | イメ−ジのウインド−イング方法 | |
US6487565B1 (en) | Updating animated images represented by scene graphs | |
US7535475B2 (en) | Virtual view tree | |
US6085202A (en) | Method and system for producing a table image having focus and context regions | |
US5056045A (en) | Geometric processing system | |
US20090037841A1 (en) | System And Method For Dynamic Space Management Of A Display Space | |
EP0607130B1 (en) | Image position interpretation in a graphics system | |
JPH09120465A (ja) | 3d映像を効率よくレンダリングする方法および装置 | |
US5182797A (en) | Multi-processor graphics display system for displaying hierarchical data structures | |
WO1993007583A1 (en) | Graphics output system with bounded updating | |
EP0607131B1 (en) | graphics output system and method | |
US4967376A (en) | Method for displaying characters and/or figures in a computer graphics and apparatus thereof | |
US5696918A (en) | Method of managing marker entities within a document data stream | |
WO1998033127A1 (en) | Document markup language and system and method for generating and displaying documents therein | |
JPH0812668B2 (ja) | 手書き校正方法 | |
EP0644500B1 (en) | Method and system for producing a table image having focus and context areas showing direct and indirect data representations | |
CA2128578C (en) | Method and system for producing a table image having focus and context areas showing direct and indirect data representations | |
EP0425172A2 (en) | Graphics display system | |
Levy | Vax station: A general-purpose raster graphics architecture | |
Myers | Interactive computer graphics and PHIGS | |
Pester | Visualization Tools for 2D and 3D Finite Element Programs-User's Manual | |
JP3395372B2 (ja) | 表処理装置 | |
Mena-Quintero et al. | The {GNOME} Canvas: A Generic Engine for Structured Graphics | |
JPS58146982A (ja) | 文書編集装置 | |
JPH04101277A (ja) | 図形出力制御方式 |