JP3640982B2 - Machine operation method - Google Patents

Machine operation method Download PDF

Info

Publication number
JP3640982B2
JP3640982B2 JP16095494A JP16095494A JP3640982B2 JP 3640982 B2 JP3640982 B2 JP 3640982B2 JP 16095494 A JP16095494 A JP 16095494A JP 16095494 A JP16095494 A JP 16095494A JP 3640982 B2 JP3640982 B2 JP 3640982B2
Authority
JP
Japan
Prior art keywords
image
display
data
vor
data structure
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
JP16095494A
Other languages
Japanese (ja)
Other versions
JPH0778243A (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.)
Xerox Corp
Original Assignee
Xerox 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
Priority claimed from US08/096,200 external-priority patent/US5596690A/en
Priority claimed from US08/096,521 external-priority patent/US5652851A/en
Application filed by Xerox Corp filed Critical Xerox Corp
Publication of JPH0778243A publication Critical patent/JPH0778243A/en
Application granted granted Critical
Publication of JP3640982B2 publication Critical patent/JP3640982B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)
  • Controls And Circuits For Display Device (AREA)

Description

【0001】
【産業上の利用分野】
本発明は、一般に、画像をディスプレイするためのディスプレイを有するプロセッサ制御機械を操作する方法、及びこの方法によって操作されるプロセッサ制御機械に係り、特に、第1の画像が生成されたモデルデータストラクチュア上で操作し且つ第2の画像が生成されようとする画像の関連部分を識別するためのディスプレイされた出力生成領域を使用することによって、第1のディスプレイされた画像内に提供される画像ディスプレイ機能と関わりのある第2の画像を生成することに関する。
【0002】
【従来の技術】
コンピュータのようなプロセッサ制御機械の頻繁で且つ激しい使用は、機械に接続されたディスプレイデバイスへの画像の形態での情報の提示である。文字、単語、及びテキストだけでなくグラフィックスのような他のディスプレイ機能を含んでいてもよい画像は、画像を定義する画像定義データストラクチュアから直接ディスプレイデバイスのディスプレイエリア内に生成される。ここで、画像定義データストラクチュアは一般に機械のメモリ領域内に記憶される。ラスタ画像として知られる一つのタイプの画像フォーマットは一般に「画素(ピクセル)」と呼ばれる個々の画像位置からなる。本明細書中で説明される画像は、例えば、ディジタルビデオ画像の場合におけるように、(システムオペレータ又はユーザから見ると静止しているような外見を有する)静止画像又はアニメーション画像であってもよい。
【0003】
画像定義データストラクチュアだけが、データが表示する画像の情報内容について比較的に限定されたデータを担持する。しかしながら、多くの画像に関しては、画像定義データストラクチュアは、それ自体が、人間によって、又は機械のプロセッサによって実行されるアプリケーションプログラムのようなソフトウェア操作によって、理解されることが可能である情報又はデータを含む他のデータストラクチュアから発生する。このようなデータストラクチュアは、本明細書中において、「情報モデルデータストラクチュア」又は「モデルデータストラクチュア」と呼ばれ、且つ画像定義データストラクチュアとは区別されている。
【0004】
情報モデルデータストラクチュアの一例は、フォトリアリスティック(写真的リアリズムを有する)シーンのようなグラフィックス画像が生成されるモデルである。「シーン記述」とも呼ばれるこのモデルは、3次元シーンにおける構成要素の形状、オブジェクト及び光源を定義する基本要素、カラー及び表面テクスチャのような基本要素(primitives)のディスプレイされた外見特性、並びにオブジェクト基本要素がどのようにして位置され且つそのシーンに一緒にフィット(適合)されるかを示す結合性の関連の記述を含む。
【0005】
情報モデルデータストラクチュアの他の例は、テキスト、フォーマッティング命令、及びフォーマットされた原稿(文書)を生成するために必要とされる他のデータを含むワードプロセッシング又は他の文書操作アプリケーションによって使用される文書データストラクチュア又は文書モデルである。アプリケーション命令が実行されるプロセッサ制御機械のオペレータ又はユーザによるページ上又は文書中でのテキスト及びそのフォーマットとの対話を許容するため、ワードプロセッシングプログラムのようなアプリケーションは、ディスプレイ(装置)のディスプレイエリア内のページ又は文書の画像をディスプレイするために文書データストラクチュア(モデル)から画像定義データストラクチュアを生成する。
【0006】
モデルデータストラクチュアから生成された画像は本明細書中の本発明を説明するために重要な少なくとも一つの類似性を有する。即ち各画像は機械のオペレータ又はユーザに対してモデルデータストラクチュアのビューを提供する。ビューの内容は、一般に「アプリケーション」と呼ばれるプロセッサ制御操作において定義される機能によって設定され、このプロセッサ制御操作はモデルデータストラクチュアから画像を生成する。実際に、アプリケーションによって生成される画像は、モデルデータストラクチュア内のデータと情報へ視覚的アクセスを提供する。
【0007】
いくつかの現存するシステムにおいて、システムユーザは、アプリケーションによって定義される他の機能を介してモデルデータストラクチュア内のデータと情報へアクセスしてもよいし、またいくつかのケースにおいては、これらを操作してもよい。これは、原画像において現在見ることができるディスプレイ機能によって示されないデータと情報へアクセスし、且つ恐らくは影響を与えたり又は操作したりする能力をシステムのユーザへ提供する。
【0008】
例えば、いくつかのコンピュータ支援設計システムにおいては、ユーザのコマンドによって、部分アセンブリのフロントビュー(正面図)(第1の画像)を含む画像がシステムディスプレイデバイスのディスプレイエリア内にディスプレイされ、且つユーザは、部分アセンブリのサイドビュー(側面図)(第2の画像)即ち部分アセンブリの一部を、ディスプレイエリアの個別部分内の第1の画像と同時にディスプレイさせてもよい。第2の画像は、両画像のビューイング及び検査、並びに両画像との対話を許容するため、ディスプレイエリアの片側においてディスプレイされてもよい。
【0009】
モデルの複数ビュー(視点表示)が現存のシステム内に提供される時、原画像と、第2の画像に対する入力の内容の仕様と、第2の画像のディスプレイ内の位置の空間的な関係を視覚化するのは容易ではない。入力の仕様が第1の画像に直接的に関連していることもあるが(即ちユーザが第1の画像内の領域を指摘したり又は選択することができる時)、これは、例えば、ユーザが第2の画像を指定するためにコマンドをタイプしなければならないケースに必ずしも結びつかない。さらに、一旦選択が指定されると、ユーザは第2の画像の位置に対して全く制御を失うか、又は個別のステップでそれ(第2の画像の位置)を再び位置付けなければならない。従って、第2の画像が、第1の画像とそのモデルとに、どのように空間的に関連しているかを理解することは難しくなる可能性がある。第1の画像内の直接の選択を第2の画像の空間的な位置へリンクすることはこれらの関係をより明瞭にすることができる。このことは、そのモデルが複雑であり、多くの異なる方法で見ることが可能である時、特に重要である。複雑なモデル又は関連するモデルのセットを支援するシステムがより一般的になっているので、この問題はもっと重大となってきている。
【0010】
第1の画像部分選択と第2の画像ディスプレイ位置の両方に対する同時制御をユーザへ提供することの例は、画像の拡大率のソフトウェア実行である。米国特許番号第4,800,379 号は、画像の画素のカラー内容を示すディジタルデータによって定義される画像をディスプレイするための方法及び装置を開示しており、この画像は、モニタを画像選択輪郭線エリアの境界内の中心に位置するようにディスプレイさせるための装置のインジケータアセンブリからの「拡大」信号に応答し、且つ画像の拡大された部分は画像選択輪郭線エリアの境界内にある。従って、画像の拡大された部分は、輪郭線エリア内の拡大された部分の下にある画像の部分が抑制されることによって、画像全体の空間的なコンテクスト内で見ることができる。
【0011】
「ディジタル画像プロセッシングソフトウェアの制御に対する写真フィルタ比喩的表現("Photographic Filter Metaphor for Control of Digital Image Processing Software" )」と題された欧州特許番号第0 544 509 号は、第1の画像の空間的コンテクストにおける第2の画像のディスプレイの他の例を開示している。欧州特許番号第 0 544 509号は、ディスプレイデバイス上に画像をディスプレイし、画像の一部へオーバーレイするためのフィルタを選択し、画像を変更前に目に映ったままの状態に保存している間、上記フィルタによってオーバーレイされた画像の部分をディスプレイするために変更し、変更された画像のフィルタリング部分をディスプレイし、且つ変更前に目に映った通りの画像を検索するための方法と対話型ユーザインタフェースを開示している。
【0012】
画像画素データストラクチュア上で単独で行われる操作は、画像値の操作に厳密に制限される第1の画像のバージョン及びビューを提供する。そこで、画素拡大装置の一般的なソフトウェア実行は二つの画像の同時ディスプレイを発生するために幾つかの所望される機能を提供するが、第1の画像の画像画素データストラクチュアから直接導出された第2の画像へ使用可能な情報内容の範囲は、画素値の操作のみから得られる第1の画像のバージョンとビューに必ず限定される。第1の画像の情報モデルデータストラクチュアから第1の画像に関する情報が使用可能である時、画像(画素)拡大を生成するために画像画素データストラクチュア上で操作するために使用される方法は、第1の画像の他のビューを提供するために情報モデルデータストラクチュア上の操作へ転送することは不可能であり、これによって、このような方法は情報モデルデータストラクチュアの他のビューへのアクセスに使用するには操作不可能である。
【0013】
【発明が解決しようとする課題】
本発明は、画像が生成されたモデルデータストラクチュア内のデータ及び情報へのアクセスを提供し、そのアクセスを原画像の空間的コンテクスト内へ提供することの重要性を認識する。このモデル内のデータ及び情報の性質に依存して、本発明は、視覚、聴覚、触覚、及び嗅覚の出力を含むあらゆる適切な人間の知覚形態においてこのようなアクセスを提供できる。
【0014】
さらに、多用途に使用するために、本発明は、例えば、グラフィックユーザインタフェース機能のタイプ又はその拡張したもの(エンハンスメント)として操作する場合におけるように、ヒューマンユーザによる入力と対話するように使用されることができる。或いは、本発明はソフトウェアプログラム制御下で完全に自動化された方法として実行されてもよく、例えば、他のアプリケーションプログラムから又はプロセッサ制御機械において同時に実行されるオペレーティングシステムからのような信号源からモデルデータストラクチュアにおけるデータ及び情報へのアクセスを示す人間が知覚できる出力をリクエスト(要求)する信号を受け取る。或いは、ユーザから又は他の信号源からの信号の組合せはモデルデータストラクチュア内のデータ及び情報へのアクセスを示す人間が知覚できる出力を要求するために使用されることができる。
【0015】
【課題を解決するための手段】
本発明によれば、画像ディスプレイリクエストを指示する信号を発生するための信号源と、人間が知覚できる出力を生成するために出力利用デバイスと接続された出力サーキットリと、データを記憶するためのメモリと、前記信号源から前記信号を受け取るために接続され、人間が知覚できる出力を定義するデータを前記出力サーキットリへ提供するために接続され、且つ前記メモリ内に記憶されたデータにアクセスするために接続されたプロセッサと、を含むプロセッサ制御機械を操作する方法が提供されている。この機械の出力利用デバイスは画像を表示するためのディスプレイエリアを有するディスプレイを含み、且つこのディスプレイエリアは前記ディスプレイエリアの表示画像位置内にディスプレイされる第1の画像を有する。前記第1の画像は、これ以降「第1のディスプレイ機能」と呼ばれる少なくとも一つの知覚可能ディスプレイ機能を含む。プロセッサ制御機械のメモリ内に記憶されたデータはプロセッサが実行する命令を実行する命令データと第1の画像が生成される第1の画像モデルデータストラクチュアを含む。前記第1の画像モデルデータストラクチュアはこれ以降、「第1の画像データ項目」と呼ばれるデータ項目を含む。前記第1の画像データ項目は第1の画像内に第1のディスプレイ機能によって表示され、且つ前記第1のディスプレイ機能は前記第1の画像モデルデータストラクチュア内の第1の画像データ項目へマップされ得るか、又は前記第1の画像モデルデータストラクチュア内の第1の画像データ項目を示す。
【0016】
この方法によれば、プロセッサは、最初に、前記第1のディスプレイ機能を含む第1の画像の一部、又は「第1の画像セグメント」の表示画像位置と同じ広がりを有するディスプレイエリア内の表示ビューイング位置内に出力生成領域を提供するためにディスプレイリクエストを示す信号源からリクエスト信号データを受け取る。次いで、プロセッサは、第1の画像モデルデータストラクチュアから第1の画像データ項目を用いて人間が知覚できる出力を定義する信号データを生成し、且つ出力サーキトリに対して人間が知覚できる出力を示すように、出力信号データを提供することによって、リクエスト信号データに応答し、出力利用デバイスが第1の画像がディスプレイエリア内にディスプレイされているのと同時に出力信号データに応答して人間が知覚できる出力を示す。このように、この方法は、信号源からのディスプレイリクエストに応答して第1の画像モデルデータストラクチュア内の第1の画像データ項目を用いて生成された人間が知覚できる出力を提供し、これによって第1の画像セグメント内の第1のディスプレイ機能に関連する情報へのアクセスを提供することの知覚を機械ユーザへ提供する。
【0017】
画像が生成されるモデルデータストラクチュア内のデータと情報へ視覚的なアクセスを提供する場合において、本発明の方法と機械は、入力として第1の画像の一部を選択すること及び第1の画像の適切な空間的コンテクスト内に視覚的出力のディスプレイを位置付けることの両方を同時に制御することをユーザへ提供しないような、モデルデータストラクチュアの第2のビューを提供する現存のシステムにおける欠点を認識している。従って、本発明の方法及び装置は、第2の画像が要求され、それと同時に第1の画像の空間的なコンテクストに同一出力操作領域内に第2の画像のディスプレイを提供するように、原画像の一部を選択するため、出力操作領域を使用する。(これ以降、用語「第1の画像」は用語「原」画像と交換可能に使用される。)第1の画像の空間的コンテクストにおける第2の画像のこのようなディスプレイは、第2の画像の情報内容に依存するかもしれないが、第1の画像の情報内容を拡張(強調)するか、前記第1の画像内のビューから現在は隠されている情報を露呈するか、又はユーザを混乱させているように見える第1の画像内に現在ディスプレイされているビュー情報を隠すこともある。この方法が対話型の方法として実行される時、ユーザは、第2の画像の内容と位置の両方を決定するため、視覚的出力の場合においては、「ビューイング操作」領域と呼ばれる出力生成領域のディスプレイ位置を指定するだけでよいことが理解されよう。
【0018】
従って、本発明の他の態様によれば、出力生成領域がビューイング操作領域であり、且つ出力サーキットリへ送られる人間が知覚できる出力がディスプレイデバイス上でディスプレイするために第2の画像を定義する画像定義データであるプロセッサ制御機械操作方法が提供されている。第2の画像は、ビューイング操作領域のサイズ及び形状の大きさとほぼ同一のサイズ及び形状の大きさを有する。第2の画像は、第1の画像がディスプレイエリア内にディスプレイされているのとほぼ同時にビューイング操作領域内に提供され、これによって第1の画像セグメントの現在画像位置と同じ広がりを有するディスプレイエリア内の表示ビューイング位置内のビューイング操作領域内に第2の画像の表示は、ディスプレイエリア内の第1の画像と置換することになる。
【0019】
モデルデータストラクチュアの第2のビューを示す現存の方法に対する本発明の方法の他の有効な利点は、ビューイング操作領域内に第2の画像のフォーカスを示しながら、第1の画像のグローバルなコンテクスト(全域内容)を保持し且つ提供する能力である。
【0020】
本発明は、プロセッサと通信する入力サーキトリと接続されたユーザ入力デバイスを介して機械ユーザによってビューイング操作領域のディスプレイが生成されるように要求するディスプレイリクエスト信号をさらに提供する。機械ユーザによるディスプレイリクエストは、ディスプレイエリア内の第1の位置から、ディスプレイエリア内の第1のディスプレイ機能を含む第1の画像セグメントと同じ広がりを有する現在のビューイング位置へビューイング操作領域を移動する機械ユーザによる移動動作を示す移動信号を含む。
【0021】
本発明のこの態様において、第2の画像を生成するためにユーザによって必要とされる対話の量を減少するために、第2の画像を生成するために第1の画像の情報モデルデータストラクチュア上で実行される操作は移動可能なビューイング操作領域と対応している。この移動可能なビューイング操作領域の位置は、第2の画像が所望される第1の画像の一部を定義するが、操作される情報モデルデータストラクチュアの一部を必ず定義するわけではない。操作自体の入力の必要条件が、操作されようとする情報モデルデータストラクチュアの一部を定義するのである。操作の選択可能で移動可能なディスプレイ領域への結合及び出力画像の定義の移動可能なディスプレイ領域の位置への結合は、選択された第2の画像をディスプレイ上に生成するためにユーザが取らなければならない工程(ステップ)数を減らし、これによって、所望される第2の画像を生成するため、直覚的であり且つ使用が簡単なインタフェースをユーザに提供することになる。このインタフェースは、第1の画像の異なる部分へ移動した時に所望されるビューを生成するためにユーザが要求するさらなる対話を行わずに、移動可能なビューイング操作領域内に第1の画像の所望されるビューを示す、ユーザにとっての「レンズ」又は「フィルタ」の外見を取ってもよい。
【0022】
請求項1に係る本発明は、画像ディスプレイリクエストを示す信号を発生するための信号源と、画像を表示するためにディスプレイエリアを有するディスプレイと、前記信号源から前記信号を受け取るために接続され且つ画像を定義するデータを前記ディスプレイに提供するために接続されているプロセッサと、データを記憶するためのメモリと、を含む機械操作方法であって、前記メモリに記憶されたデータが前記プロセッサが実行する命令を指示する命令データを含み、且つ前記プロセッサが前記メモリ内に記憶されたデータへアクセスするためにさらに接続されており、前記ディスプレイのディスプレイエリア内の表示画像位置に第1の画像を表示するために前記プロセッサを操作するステップであって、前記第1の画像が第1のディスプレイ機能を含み、前記第1の画像が前記機械の前記メモリ内に記憶された第1の画像モデルデータストラクチュアを用いて生成され、且つ前記第1のディスプレイ機能が前記第1の画像モデルデータストラクチュア内に含まれた第1のデータ項目を表すことよりなるステップと、ビューイング操作領域(VOR)を含む第1のビューイング操作領域画像を前記ディスプレイエリア内に表示するために前記プロセッサを操作するステップと、前記VOR内に第2の画像を表示するためにディスプレイリクエストを示す前記信号源からリクエスト信号データを受け取るために前記プロセッサを操作するステップと、前記第1の画像の第1の画像セグメントの表示画像位置と同じ広がりを有する現在のビューイング位置内に位置された前記VORを含む第2のビューイング操作領域画像を提供し、前記第1の画像セグメントが前記第1のディスプレイ機能を含み、前記第1の画像モデルデータストラクチュアから前記第1のデータ項目を用いて前記VOR内にディスプレイするために第2の画像を定義する画像定義データを生成し、前記第2の画像が前記VORのサイズと形状の大きさとぼぼ同一のサイズと形状の大きさを有しており、且つ前記第1の画像が前記ディスプレイエリア内にディスプレイされているのとほぼ同時に前記第2の画像を前記VOR内に提供することによって、前記ディスプレイリクエストを示す前記リクエスト信号データに応答するために前記プロセッサを操作するステップと、を備える機械操作方法である。
【0023】
請求項2に係る本発明は、前記VORが前記VOR内にディスプレイするために前記第2の画像を定義する前記画像定義データへ前記第1の画像モデルデータストラクチュアをマップするために前記VORと対応するビューイング操作を有し、且つ前記第2の画像を定義する前記画像定義データを生成するステップが前記ビューイング操作に従って前記第2の画像を生成することよりなる請求項1に記載の方法である。
【0024】
請求項3に係る本発明は、前記第1の画像を生成するために使用される前記第1の画像モデルデータストラクチュアがオブジェクトモデルデータストラクチュアであり、前記第1の画像モデルデータストラクチュアが前記第1の画像セグメント内の第1のディスプレイオブジェクトによって表される第1のオブジェクトデータ項目を含み、オブジェクト座標データ項目が前記第1の画像内に第1のディスプレイオブジェクトの現在オブジェクト位置を示し、及び前記オブジェクト座標データ項目が前記第1のオブジェクトデータ項目を示し、且つ前記VORと対応する前記ビューイング操作が、前記第1の画像モデルデータストラクチュアから、前記ディスプレイエリア内の前記VORの表示ビューイング位置と前記オブジェクト座標データ項目を用いて前記第1の画像セグメント内に含まれた前記第1のディスプレイオブジェクトによって示される前記第1のオブジェクトデータ項目を入手し、且つ前記第1のオブジェクト項目を前記ビューイング操作に従って第2の画像を定義する前記画像定義データへマップすることよりなる請求項2に記載の方法である。
【0025】
請求項4に係る本発明は、前記メモリ内に記憶された前記データがアプリケーション操作を定義する命令データをさらに含み、前記アプリケーション操作が前記第1の画像モデルデータストラクチュアからの前記第1のディスプレイオブジェクトを含む前記第1の画像を生成することが可能であり、且つ前記VORと対応する前記ビューイング操作が、前記第1の画像モデルデータストラクチュアから第2のモデルデータストラクチュアを生成し、前記第2のモデルデータストラクチュアが前記第1の画像モデルデータストラクチュアから複写された複写された第1のオブジェクトデータ項目を含み、前記第2のモデルデータストラクチュアから前記複写された第1のオブジェクトデータ項目を入手し、変更された属性値を生成するために前記複写された第1のオブジェクトデータ項目によって示される属性値を変更し、前記ディスプレイエリア内の前記VORの表示ビューイング位置から第2の画像のサイズ及び位置データを入手し、前記第2の画像のサイズ及び位置データが前記第2の画像に関するサイズ及び位置情報を示し、前記第2の画像サイズ及び位置データと、前記第2の画像を定義する前記画像定義データを生成するために前記変更された属性値を示す前記複写された第1のオブジェクトデータ項目を有する前記第2のモデルデータストラクチュアと、を用いて前記アプリケーション操作を実行するために前記プロセッサを操作することよりなる請求項4に記載の方法である。
【0026】
請求項5に係る本発明は、前記信号源は機械ユーザの動作を示す信号を生成するためのユーザ入力デバイスであり、且つ前記ユーザ入力デバイスから受け取られた前記リクエスト信号データが、前記VORを、前記第1の画像セグメントと同じ広がりを有する前記ディスプレイエリア内の表示ビューイング位置へ移動する前記機械ユーザによる移動動作を示すことよりなる請求項1に記載の方法である。
【0027】
【実施例】
以下に定義される用語はこの明細書中及び請求項において示されている意味を有する。
【0028】
本明細書中において用語「データ」は、情報を表すか又は情報を有する物理的信号を称する。用語「データ」は、物理的形態で存在するデータを含み、且つ一時的又は記憶されるていか若しくは転送されているデータを含む。例えば、データは、電磁的もしくは他の転送された信号として、又は電子的、磁気的、若しくは他の形態で記憶される信号として存在することができる。
【0029】
「データの項目」又は「データ項目」はプロセッサがアクセスできるか、そうでない場合、このプロセッサがユニット(単位)として操作できる量のデータである。データは結合して「データストラクチュア」を形成することができる。「データストラクチュア」は相互に関連するデータのあらゆる結合である。データストラクチュアは他のデータストラクチュアを含んでいてもよい。
【0030】
「プロセッサ制御機械」又は「プロセッサ」はデータを処理することができるあらゆる装置、構成要素、又はシステムであり、且つ一つかそれより多くの中央処理装置又は他の処理構成要素(構成要素)を含んでいてもよい。
【0031】
プロセッサは演算(操作)を実行する時にデータを「使用」し、この時の操作の結果はそのデータの値に依存する。「命令」は、プロセッサがそれ自体の操作を決定するために使用することができるデータの項目である。プロセッサはこのプロセッサがその操作を決定するために命令を使用する時に一組の命令を「実行」する。
【0032】
データの項目は、この項目が、物、事、又は特徴の存在や発生に依存するか、或いは物、事、又は特徴の計測(測度)に依存する値を有する時、物、事、又は特徴を「示す」。さらに、データの第2の項目がデータの第1の項目から得ることができる時、データの第2の項目がデータの第1の項目を用いてアクセス可能であり得る時、データの第2の項目がデータの第1の項目を復号化することによって得ることができる時、又はデータの第1の項目がデータの第2の項目の識別子であり得る時、データの第1の項目はデータの第2の項目を「示す」。例えば、データの第1の項目がディスプレイデバイスのディスプレイエリア内に画像ディスプレイ機能の位置情報を示し且つ位置情報がデータストラクチュア内で第2のデータ項目を得るためにプロセッサによって使用されてもよい時、データの第1の項目がデータの第2の項目を示す。
【0033】
「画像」は光のパターンである。画像は、文字、ワード、テキスト、及びグラフィックスのような他の機能も含んでいてもよい。画像は、各セグメント自体が画像である画像「セグメント(部分)」へ分割されてもよい。画像のセグメントは全体画像に至るあらゆるサイズであってもよく且つ全体画像を含んでもよい。「画像出力デバイス」は画像を定義する出力を提供することができるデバイスである。「ディスプレイ」又は「ディスプレイデバイス」は可視の、人間の目で見ることができる形態で情報を提供する画像出力デバイスである。ディスプレイは、例えば、陰極線管と、発光、光反射、又は光吸収素子のアレイ(配列)と、用紙又は他の媒体上にマークを示すデバイス又はストラクチュア(構造体)と、画像を可視形態で定義することが可能なあらゆる他のデバイス又はストラクチュアと、を含んでいてもよい。ディスプレイ上に「画像を提供する」ことは、ビュアー(見る人)が画像を知覚することができるようにディスプレイを操作することである。「ディスプレイエリア」は画像が表示されるディスプレイの部分又は画像を受け取る媒体である。
【0034】
データは、データが画像をディスプレイ上に表示することなどによって画像を直接生成するために充分な情報を有する時、画像を「定義」する。画像を定義するデータは、本明細書中では「画像定義」又は「画像定義データ」と呼ばれる。例えば、2次元アレイは画像の全て又はあらゆる部分をも定義することができる画像定義であり、一般に「画像画素データ」又は「画像画素データストラクチュア」と呼ばれ、且つこのアレイ内のデータの各項目は画像位置のカラーを表示する「画素値」と呼ばれる値を提供する。
【0035】
用語「ディスプレイ機能」は、プロセッサ制御機械又はディスプレイシステムにおけるディスプレイによって生成されるあらゆる人間の知覚に関連する。「ディスプレイオブジェクト」はコヒーレントな(首尾一貫した)ユニティ(単一体)として知覚できるディスプレイ機能である。「形状(shape )」は区別できる輪郭を有するディスプレイオブジェクトである。例えば、円形ディスプレイオブジェクトは形状である。境界付けされたエリア(area:領域)を有する形状は「領域(region)」と呼ばれてもよい。画像は、この画像の表示がその機能又はオブジェクトの知覚を生成することができる場合、ディスプレイ機能又はオブジェクトを「含む」。同様に、ディスプレイオブジェクトは、このディスプレイオブジェクトの表示が、ディスプレイ機能の知覚を生成することができる場合、ディスプレイ機能を「含む」。
【0036】
本明細書中において「出力生成領域」とも呼ばれる「ビューイング操作領域」は、任意の形状の境界付けされたエリアを有する領域である。このビューイング操作領域は、少なくとも一つの区別できる輪郭と少なくとも一つの境界付けされたエリアを有するコヒーレントユニティとして知覚できるディスプレイ機能である。区別できる輪郭は、第2の画像が生成されない第1の画像の残りの部分から、第2の画像が生成される第1の画像の部分又はセグメントを、定義し且つ区別する。このビューイング操作領域は、位相的に複雑な境界を有していてもよく、従って、固定した又は所定の形状である必要がなく、又はそれがコヒーレントで区別できる境界付けされたエリアとして知覚可能である限り、明示的に描画された境界(へり)を有する必要もない。
【0037】
ディスプレイ機能がデータの本体内のデータの一つ又はそれより多くの項目にマップされ得る時、ディスプレイ機能はデータの本体を「表示する」か、又は他の方法を述べると、ディスプレイ機能がマップされ得るデータの一つの項目又は複数の項目を「示す」。例えば、画像内でソリッド(中実)ブラック線として知覚されるディスプレイオブジェクトは、一つの操作がこの線のカラー及びソリッドネス(中実性)を生成するために使用するモデルデータストラクチュア内にデータの一つ又はそれより多くの項目を示してもよい。
【0038】
ディスプレイ機能又はオブジェクトへのデータの一つ又はそれより多くの項目のマッピングは、ディスプレイシステム内のプロセッサによってアクセス可能であり且つ実行可能な一組の命令(命令データ項目)を意味すべく本明細書中に用いられる「操作」によって実行され、且つデータの一つ又はそれより多くの項目(操作の入力)と画像内のディスプレイ機能又はオブジェクト(操作の出力)のマッピングの関係又は機能(関数)を定義する。操作は、操作が画像内にディスプレイ機能又はオブジェクトを定義するデータを持たずに開始された時、画像内にディスプレイ機能又はオブジェクトを「生成」し、且つこの操作を実行することによって画像内にディスプレイ機能又はオブジェクトを定義するデータが得られる。
【0039】
本発明の方法は「モデルベースの操作」である。モデルベースの操作は画像を出力として定義する画像定義データを生成するため、入力として「モデルデータ」を使用する。例えば、画像画素データ項目以外のデータ項目のような画像定義データ以外のデータ項目は、「情報モデルデータ項目」又は「モデルデータ」である。モデルベースの操作は、モデルデータストラクチュア内の一つ又はそれより多くのモデルデータ項目を、この操作によって生成された画像内に含まれるディスプレイ機能へマップする。
【0040】
相互に関連するモデルデータ項目のコンビネーション(組合せ)は、本明細書中では、「モデルデータストラクチュア」、「情報モデルデータストラクチュア」、又は「第1の画像モデルデータストラクチュア」と呼ばれる。本発明を本明細書中に説明するため、画像を生成するために一つの操作が使用する全てのモデルデータ項目が、このモデルデータストラクチュアの一部として含まれると考えられる。さらに、モデルデータストラクチュアは、システムのメモリのほぼ連続した部分内に物理的に位置したデータ項目の組合せに限定はされないが、メモリ内に区々に位置し且つこの操作を実行する時にプロセッサによってアクセス可能な個々のモデルデータ項目を含んでいてもよい。さらに、モデルデータと操作の間の対話、及びモデルデータストラクチュアの部分であると考えられるデータの性質、量、及び資源は、それ自体が相当変化してもよいモデルベースの操作の機能的能力に応じて変化する。
【0041】
本発明の方法は、この方法が、第2の画像を定義する画像定義データを生成するために第1の画像が生成されたモデルデータストラクチュアを使用する時、現存の第1の画像上で「操作する」。第1の画像を生成したこのモデルベースの操作は「アプリケーション」と呼ばれる。
【0042】
このモデルデータストラクチュアは、画像を生成するためにこのアプリケーションによって直接使用されないデータ項目を含んでいてもよいが、これはこのアプリケーション又は他のモデルベース操作によって知られており且つアクセス可能であったりする。さらに、モデルデータストラクチュアは、画像を生成するために使用されている間、画像を生成するために使用されないしまたこのモデルデータストラクチュア内に含まれない一つ又はそれより多くの他のデータ項目を示すデータ項目を含んでいてもよい。例えば、画像内のディスプレイオブジェクトによって示されるモデルデータストラクチュア内のデータ項目が、画像内に表示されないディスプレイオブジェクトに関する特性又は詳細な情報を有する第2のモデルデータ項目を示してもよい。この第2のモデルデータ項目はモデルデタストラクチュア内に含まれてもよいし、又はこのモデルデータストラクチュアとリンクされた異なるデータストラクチュア内に含まれてもよい。
【0043】
本発明は種々のプロセッサ制御機械を操作し、各々の機械は図1に示されている共通の構成要素(コンポーネント)、特性、及び構成を有する。図1における機械100は画像ディスプレイリクエストを示す信号を生成するための信号ソース150を含む。信号ソース150は本発明の方法によって必要とされるタイプの信号を生成するあらゆる信号生成源を含んでいてもよい。このようなソースは、ユーザによって発生される信号を生成する人間のユーザによって制御可能な多様な入力デバイスを含み、このような信号を生成するために機械100と接続される他のデバイスを含んでいてもよく、且つ遠隔又は局所的電子通信ネットワーク並びに赤外線及び無線接続を介してなどの有線又は無線通信ファシリティによって接続されるデバイスを含む。信号ソース150は、ディジタルコンピュータのオペレーティングシステム又はこのディジタルコンピュータによって実行される他のアプリケーションなどの機械100によって実行される操作を含んでいてもよい。プロセッサ140は信号ソース150から信号を受け取るために接続されている。
【0044】
機械100はデータを記憶するためにメモリ110を含む。プロセッサ140はメモリ110内に記憶されるデータへアクセスし且つメモリ110内に記憶するためのデータを提供するために接続される。メモリ110は、プロセッサが実行する命令を指示する命令データを記憶し、且つ本発明の方法による機械100を操作するための命令を指示する命令データを含む。
【0045】
プロセッサ140は、ディスプレイデバイス170上のディスプレイエリア180内に表示するために第1の画像182を定義するデータを提供するために出力サーキットリ160とも接続されている。ここで使用されているように、全てのサーキットリの構成要素に関して、サーキットリの二つの構成要素のいづれも、データをこの構成要素の一つから他の構成要素へ転送することができるサーキットリの組合せが存在する時に「接続」される。プロセッサ140は、本発明の方法によって生成される人間が知覚できる出力を定義するデータを提供するため、出力サーキットリ160とさらに接続されて、出力利用デバイス172上で提示する。
【0046】
ユーザ入力デバイスからの信号は、操作に対する「要求(リクエスト)」及び要求された操作を識別する情報を含んでいてもよく、一つ又は複数の信号は操作を実行させようとする機械ユーザによって一つ又はそれより多くの動作を指示する。操作は、受け取られた信号が有効な操作に対する有効な要求を指示し且つ操作を実行させる時、リクエストに「応答」してその機械によって実行される。単一の完全なリクエストを示す信号は、有効な操作のための有効なリクエストを示し、且つ操作を実行させるのに必要なユーザによって示される任意の数の動作の組合せを含んでいてもよい。
【0047】
複数の入力デバイスは、動作を示すために機械ユーザによって使用される、例えば、キーボード又はポインティングデバイスを含んでいてもよい。好適なポインティングデバイスは、これらに限定はされないが、マウス、スタイラス若しくはペン、トラックボール、又はディスプレイデバイス170のタッチセンシティブ(感応)面と接触するユーザの指を含む。ユーザ動作を示す信号は、ディスプレイエリア180内でユーザが見ることができるディスプレイオブジェクトの選択又は移動を示す信号、操作がプロセッサ140によって実行されるようにするリクエストを示す信号、及びディスプレイエリア180内でディスプレイするためにプロセッサが画像を表示することになる信号を含んでいてもよい。
【0048】
機械100の物理的ハードウェア構成要素が接続される実際の方法は変化してもよいし、且ついくつか又は全ての構成要素間でハード配線の物理的接続や遠隔又は局所的な通信ネットワーク並びに赤外線及び無線接続などのような有線又は無線の通信設備を介した接続を含んでいてもよい。機械100の物理的サイズの範囲は、例えば、電子ホワイトボードアプリケーションなどに好適な非常に大きなディスプレイデバイス170を含む機械から、かなり小型のデスクトップ、ラップトップ、及びポケットサイズ又はより小型のディスプレイデバイスを含む機械まで大きく変化してもよい。本発明はこの物理的サイズの範囲内の全ての機械上で操作可能であるように意図されている。
【0049】
本発明によって一つの画像が生成され得る一つのタイプのモデルデータストラクチュアは「オブジェクト」を記述するデータ項目の集合から成っていてもよい。「オブジェクト」は、アプリケーション定義域の意味論的態様を示す(例えば、ワードプロセッサにおける文字、単語、及び段落、描写システムにおけるストローク、プロジェクト管理システムその他における一時的イベント(事象)及び依存等)。一般に、データストラクチュア内の「オブジェクト記述データ項目」がそれ自体一組のオブジェクトの特性を記述する他のデータ項目から成っている。特定のオブジェクトに関して、これらの特性は、画像を生成したアプリケーションによって使用されるアプリケーション特定属性に加えて、ディスプレイされた時にオブジェクトがどのように知覚されるかを決定するオブジェクトの位置的及び可視の属性を示してもよい。一般に、各オブジェクトはその特性と共に、ポインタ又は識別子によって独自にアドレスすることが可能であり且つこれによってオブジェクトはそれらの記述において互いに言及し合うことができる。オブジェクト又はそれらの特性は他のオブジェクト同士の間の関係又は制約を記述してもよい。オブジェクトベースのモデルデータストラクチュア内のデータ項目に関して使用される時、用語「ディスプレイ機能属性データ項目」はオブジェクト特性を言及する。
【0050】
本発明の方法は、データストラクチュア内でデータのビュー(表示)を生成するためにモデルデータストラクチュア上で操作する。所望される各異なるタイプのビューは、特定のセットの操作がこのモデルデータストラクチュア上で実行されるのを要求する。モデルデータストラクチュア上で実行される一組の操作は、これ以降、「ビューイング操作」と呼ばれる。各区別的なビューイング操作がそれ自体のビューイング操作領域と「対応」されることができ、これによって第1の画像セグメントと同じ広がりを有する特定のビューイング操作領域のディスプレイが、プロセッサ140をして、操作の対応するセットによりこのモデルデータストラクチュアを用いて第2の画像を生成させ且つビューイング操作領域内に第2の画像を提供させる。
【0051】
本発明の方法は、グラフィカルなユーザインタフェースシステム環境において動作するグラフィカル・オブジェクト・エディタ・アプリケーション・ソフトウェア・プログラムの機能性と協働する、一組の対話型ユーザ制御機能即ちビューイング操作として実行された。
【0052】
各ビューイング操作は、上記に記述されているモデルデータストラクチュア860に類似する構造的特性を有する、これ以降、グラフィカルエディタデータストラクチュアと呼ばれるグラフィカルオブジェクトエディタのオブジェクトベースのモデルデータストラクチュア上で操作する。方法又はビューイング操作400と指定されるこれらのビューイング操作の内の一つの実行が以下に詳しく説明されている。このプログラミング環境のストラクチュアは、これらの機能的構成要素がグラフィカルユーザインタフェース環境をサポートする広範囲の機械と共通していると理解した上で、図2の簡単化された機能的ブロック図によって説明されている。
【0053】
例示された実施例は、Cedar (シーダ)プログラミング言語を用い、且つSunOS(商標登録) −コンパチブルオペレーティングシステム上で実行するゼロックスの所有権を主張できる研究ソフトウェア環境のCedar (シーダ)プログラミング環境へ書き込まれたリサーチソフトウェアプロトタイプアプリケーションとしてサンマイクロシステム・スパーク・ステーション(Sun Microsystem SPARKstation)コンピュータ10上で実行された。Cedar (シーダ)プログラミング環境は、ディスプレイのディスプレイエリア内の複数のワークスペース又は「ウインドウズ」にディスプレイするために画像を供給且つ管理するため、及び機械のユーザによって操作されるように少なくとも一つのポインティングデバイスとインタフェースするため、ソフトウェア機能を含むグラフィックユーザインタフェース環境のためにアプリケーションサポートを提供する。ユーザは、まずグラフィックユーザインタフェースへ、次にこのインタフェースを介して各ウインドウ内で操作する各ソフトウェアアプリケーションへ、オペレーショナル(操作可能)コマンドを伝えるためにポインティングデバイスを使用する。
【0054】
図示されている実践は、MMM(マルチデバイス・マルチユーザ・マルチエディタ)として知られている編集環境のフレームワーク内でも動作する。MMMはCedar (シーダ)プログラミング環境内の単一ウインドウとして動作し、且つグラフィックエディタアプリケーションを含む複数のアプリケーションがこのMMMウインドウ内でサブウインドウとして実行することを可能とする。MMMは、マウス又はトラックボールのような複数の入力デバイスからの事象を得て、どのデバイスがどの事象を生成したかを追跡し、且つ全ての事象を単一な待ち行列へ配置する。MMMは、各事象を順番にデキュー(待ち行列リストから外すこと)し、且つその事象がどのアプリケーションへ送られるべきかを決定する。MMMアプリケーションはそれらがどのようにスクリーン上で入れ子式に配列されるかを示す階層内に配列される。各事象は、事象をその子のアプリケーションの内の一つへ渡すルートアプリケーションへ渡され、且つこの子のアプリケーションの内の一つはその事象を順にツリーの下方へ渡す。マウス事象は、一般に、そのスクリーン領域がマウス座標を含む最も深くネスティング(入れ子式に配列)されたアプリケーションへ送られる。しかしながら、特定のアプリケーションにおいてユーザがオブジェクトをドラッグ(画像を押さえて移動する)操作又はリサイズ(サイズ変更)している時、全てのマウス座標は、ドラッギング又はリサイジングが完了するまでそのアプリケーションへ進む。キーボード事象は現在選択されているアプリケーションへ進む。MMM環境についての追加の情報は、1991年、ニューヨーク、ACM のユーザインタフェースソフトウェア及びテクノロジに関するACM、SIGグラフのシンポジウムの議事録(1991年11月11〜13日のヒルトンヘッドSC)のEric A. Bier and Steve Freeman著の"MMM:A User Interface Architecture for Shared Editors on a Single Screen" (79〜86ページ)に見られる。
【0055】
図2においてシーダ環境118の基本的構造(ストラクチュア)は、階層的層内に配列された構成要素の集合であり、且つより下位のレベルのモジュールが通常のシーダ言語手続きとして呼出し可能なより上位のレベル即ち「クライアント」プログラムへ直接使用可能である良好に統合された対話型環境をサポートする。さらに、より上位レベルのシーダ構成要素は手続きの値をパラメータとしてより下位レベルのサービス手続きへ供給することができ、且つこのより下位レベルのサービス手続きはまた、必要な時に上位レベルの構成要素と通信するためにこの上位レベルの構成要素を後から呼び出すことができる。
【0056】
シーダ環境118は、このアプリケーションコンテクスト(文脈)を一つ又はそれより多くのディスプレイスクリーンの複数の異なる部分へ物理的に分割することによって、プロセッサ140(図1)によって制御される異なるアプリケーションコンテクストを制御する。シーダプログラミング環境におけるGargoyle(ガーゴイル)グラフィックスエディタ120のようなアプリケーションプログラムは環境の「クライアント」と呼ばれる。シーダ環境は、以降、「ウインドウマネジャ112」と呼ばれる上位レベルのソフトウェアウインドウ管理システム112を含み、この「ウインドウマネジャ112」は、機械上で実行するアプリケーションクライアントプログラムのために必要なウインドウ管理制御を提供する。
【0057】
ビューイング操作ソフトウェア400は、本発明の方法によってビューイング操作を定義し且つ実行するために、及び第2の画像を生成するようにGargoyle(ガーゴイル)グラフィックスエディタ120によって使用されるグラフィックエディタデータストラクチュアと対話するためにソフトウェア命令を有する。ビューイング操作ソフトウェア400は、Gargoyleグラフィックスエディタ120の機能部分と協働的に対話し、且つGargoyleグラフィックスエディタ120と同様にウインドウマネジャ112のクライアントである。各アプリケーションクライアントは、Gargoyleグラフィックスエディタ120の操作を実行し、且つユーザからのリクエスト信号に応答してディスプレイ170上のウインドウ211内にビューイング操作領域186を生成し且つ描画することからなるビューイング操作400を実行するために、入力サーキットリ152から受け取られた信号をプロセッサ140(図1)の制御を指示するために一連のユーザ入力信号へ変換することによって、ウインドウマネジャ112を介して、データをユーザ対話デバイス154及びディスプレイ170と交換する。
【0058】
図示されている実施例において、方法400(ビューイング操作)は個別のアプリケーションとして実行され、且つMMMエディタはアプリケーション120と方法400の間のあらゆる対話を処理する。しかしながら、図3に示されているように、本発明の方法は、集合的エンティティ122としてグラフィックユーザインタフェース環境118内でウインドウ管理システム112と対話するアプリケーション120に対する機能的エンハンスメントとして実行されてもよい。方法400は、パーソナルコンピュータ、完全機能付両面複写機、出版社関係装置、及び画像再生装置(複写機)を含むプロセッサ並びにディスプレイを有するコンピュータワークステーションや他のタイプの機械へ現在使用可能なあらゆる多様なグラフィックユーザインタフェースにおいて操作するため、この様に実行されてもよい。
【0059】
図4は、ビューイング操作400が操作する第1の画像210を示す。第1の画像210はディスプレイオブジェクト212、214、216、及び218を含む。これらのディスプレイオブジェクトは前から後へオーバーラップする順に配列され且つ内部を塗り潰すカラーを有する外観を呈しており、これによってこれらのオブジェクトは不透明となり、最前の三角形218が三角形216の一部を隠し、三角形216もまた三角形214の一部を隠し、且つ三角形214も同様にする。図5は、ディスプレイ180内のウインドウ211内の画像210を示す。グラフィックオブジェクトエディタ120はエディタのユーザが画像210内のディスプレイオブジェクトを選択し且つ操作するのを可能とする。グラフィックオブジェクトエディタ120は、プログラム定義されたウインドウ又は他のディスプレイ媒体に相対するそのx−y座標、スペース内のそのオリエンテーション、その大きさ、及びその形状を画像内のオブジェクト毎に含むグラフィックエディタデータストラクチュアを使用する。
【0060】
図6は、図2のビューイング操作400として指定された本発明の操作の方法の図示された実施例からなる動作を示す。図示されている実施例におけるビューイング操作400は、VOR(ビューイング操作領域)186の境界内にあるオブジェクトの全てのエッジを現す操作を実行し、且つ実際にVOR186の境界内のモデルデータストラクチュア内のオブジェクト毎にオブジェクトが不透明になるか否かを制御するディスプレイ機能属性データ項目を変更する。
【0061】
第1の画像210を含むウインドウとビューイング操作領域は、「選択可能ユニット」としてそれぞれ作用する。選択可能ユニットは、選択されることができる境界付けされたディスプレイ領域として知覚されるディスプレイ機能である。用語「選択(select)」が、選択可能ユニットに関して使用される時、選択可能ユニットを独自に示すユーザによるアクション(動作)を意味する。
【0062】
図5は点線で境界付けされた円形領域としてVOR186の初期の位置を示す。図6のボックス404において、ユーザは、第1の画像210の第1の画像セグメント(部分)と同じ広がりを有するディスプレイ領域180内の現在のビューイング位置内にVOR186を位置付けるために第1の画像210を含む選択可能ユニットVOR186及びウインドウ211のいづれかと対話する。2次元のディスプレイエリア180内のVOR186は、実施例に示されている第1の画像210の画像平面とは異なる画像平面内にあるような外観を有し、且つ2.5次元の画像ディスプレイエリア180の外観を生成する。図8においては、この概念が示されており、且つヒューマンユーザの視点220からは二つの画像平面189及び188を有するディスプレイエリア180を示している。ユーザ対話は、第1の画像210を含むウインドウ211又はビューイング操作領域ウインドウ186へトラッキング(検索)シンボル又はカーソル181を移動するために機械のポインティングデバイスを使用し、且つマウスボタンを押したりするようないくつかの従来の方法で、このカーソルをいづれかの選択されたユニットへアタッチする(付ける)ことを備える。
【0063】
図8に関しては、一旦カーソルが選択されたユニットへアタッチされると、ユーザは、画像平面188内の第1の画像210を含むウインドウ211を画像平面189内のVOR186の「下へ」移動するか、又は画像平面189内のVOR186を画像平面188内の第1の画像210の一部の「上へ」移動する。ユーザ対話の結果として、画像平面188内の各画像位置185は画像平面189内の画像位置187と対応するので、VOR186は第1の画像210の第1の画像部分と同じ広がりを有するように位置される。図5においては、点線187が第1の画像210の部分(セグメント)の上の位置へのVOR186の移動を示す。ユーザの対話によってリクエスト信号の発生が得られ、このリクエスト信号は画像210の第1の画像部分と同じ広がりを有するディスプレイエリア180内の現在のビューイング位置内のVOR186のディスプレイを要求する。リクエスト信号はディスプレイアリア180内のVOR186のx−yディスプレイ座標の位置を含み且つウインドウマネジャー112と共にディスプレイプロセッシングを制御するビューイング操作400へパスされる。
【0064】
ユーザの操作アクションに応答して、図6のボックス410内の方法400は、ボックス420において、グラフィックエディタデータストラクチュアを用いて第2の画像を定義する画像定義データを生成し、且つボックス460においては、第1の画像210がウインドウ211内に定義されるのと同時に、ディスプレイエリア180内のVOR186内にディスプレイするために出力ディスプレイサーキットリ160へ第2の画像を定義する画像定義データを提供する。
【0065】
図7は、ボックス420を備えるアクションをより詳細に示す。例示されている実施例に関して、ボックス424における方法400は変更された第2の画像を生成するために必要とされる新しい属性値を得る。方法400は、他の複数のオブジェクトに関して各々のオブジェクトの前から後ろへの向きとは無関係に第1の画像部分内に位置する全てのオブジェクトの輪郭を示す。従って、方法400は、オブジェクトが画像内に塗り潰しカラーを有するか否かを制御するディスプレイ機能属性データ項目を変更し、且つ塗り潰しカラーを有するオブジェクトを塗り潰しカラーを全く持たないオブジェクトへ変更する。
【0066】
方法400は次いでボックス428においてグラフィックエディタデータストラクチュアを同一の第2のモデルデータストラクチュアへ複写し、次いでボックス430、434、オブジェクト438においては、複写されたデータストラクチュアから各オブジェクトデータ項目を得て、オブジェクトの塗り潰しカラーを制御するディスプレイ機能属性データ項目を位置させ、且つその項目を塗り潰しカラーを全く持たないオブジェクトを示す新しい属性値と置換する。方法400のこの部分は、グラフィックエディタデータストラクチュアをその引数として取るグラフィックオブジェクトエディタアプリケーション120からの現存の手続き、及びモデルデータストラクチュア上で操作を実行するために一つ又はそれより多くの手続きに対するポインタ、を使用することによって実行される。要するに、ビューイング操作400は、複写されたモデルデータストラクチュアを引数として使用するアプリケーション手続き、及びデータストラクチュア内の塗り潰しカラーを「塗り潰さないカラー」へ変更するための手続きへのポインタを呼び出し、且つグラフィックオブジェクトエディタアプリケーション120内の呼び出された手続きは、指定された変更手続きを用いて複写されたモデルデータストラクチュアに変更を加える。
【0067】
方法400は次いでボックス440において複写され且つ変更されたデータストラクチュアを用いて第2の画像を定義する画像定義データを生成する。従って第2の画像は第1の画像全体の変更されたバージョンである。ビューイング操作400は、第2の画像のサイズ及び位置を決定するため、ボックス444においてVOR186のサイズ及び位置を決定する。ビューイング操作400は、第2の画像のサイズ及び位置を決定するため、アプリケーション120が第1の画像210を定義する画像定義データを生成するポイントでグラフィックオブジェクトエディタアプリケーション120へ制御を転送する。例示された実施例におけるグラフィックオブジェクトエディタの場合において、これは、複写され且つ変更されたモデルデータストラクチュアを用いて第2の画像を画素データストラクチュアへ描写し且つそれをVORのサイズ及び位置にクリッピングすることを含む。第2の画像データは次いで、第1の画像210がウインドウ211内に再描写されるのとほぼ同時にVOR186内に表示するためにディスプレイへ提供される。
【0068】
図5はVOR186内の第2の画像を示す。第2の画像はVOR186内の三角形214の完全な輪郭を示す。第2の画像はさらにVOR186の境界内にある三角形216の完全な輪郭の部分も示す。三角形216の輪郭の残り部分はVOR186の境界の外側に隠れたままである。図5の方法400の結果から見ることができるように、第2の画像が、相対的に僅かに知覚される変更を除く第1の画像部分にほぼ類似している時、ユーザの知覚システムは、第1の画像の内容を、第1の画像の空間的コンテクストにおける第2の画像の内容と調和させる。VORは次いでユーザにはほぼ透明に見える外観を有する。
【0069】
VOR186との引き続くユーザ対話において、ユーザは、異なる第2の画像のディスプレイのために第1の画像210に対するその現在のビューイング位置から新しいビューイング位置へVOR186を移動してもよく、ここで異なる第2の画像は新しいビューイング位置におけるVOR186の「下」に位置する新しい第1の画像部分の変更されたビューを示す。改良されたプロセッシング効率に関して、第1の画像210内のオブジェクトが塗り潰しカラーを持たないように複写されたグラフィックエディタデータストラクチュアが一旦変更されると、複写され且つ変更されたモデルは、VOR186が画像210の異なる部分の上を移動する時に使用するためにメモリ内にキャッシュ記憶されることができる。VOR186がこのように移動される時、方法400は、メモリから複写され且つ変更されたモデルを検索し、VOR186によって定義された新しいクリッピング領域を決定し、且つ前もって変更された複写されたモデルデータストラクチュアと新しいクリッピング領域定義を用いて第2の画像を生成するためにアプリケーション120を呼び出す。
【0070】
方法400は、キャッシュ変更された複写をインバリデート(無効に)するモデルが何時変更されたかを検出する。ユーザがビューイング操作領域(VOR)を最後に移動した時に生成されたキャッシュ複写モデルが、ビューイング操作領域の次の操作においてグラフィックエディタデータストラクチュアの現在状態をもはや示さない場合、方法400はモデルを再び複写し、第2の画像を生成するためにモデル上で操作を実行し、且つ前もってキャッシュ記憶された複写されたモデルを新しく複写されたモデルと置換しなければならない。
【0071】
図9は、矩形212と三角形214の部分上の新しい位置へ移動されたVOR186を示す。VOR186の前の位置は点線の境界を有する円形の領域として示されている。図5で見ることができた三角形214の境界線の部分は、VOR186が一旦取り去られたら、図9ではもう見えなくなるのが理解されよう。その新しい位置において、VOR186は、矩形212の境界全体と、図4に示されている原稿画像210において全く不可視だった三角形219と、を有する第2の画像を示す。
【0072】
例示されている実施例において、方法400は、VOR186が第1の画像210の第1の画像部分と同じ広がりを有するように位置する時はいつでもユーザのリクエスト信号に応答する。図示されている実施は、従って、「ドラッグアンドドロップ」動作を実行するためにポインティングデバイスを用いる多くのグラフィックユーザインタフェースにおいて慣例であるようにマウスボタンをリリースすることによってのように、ディスプレイエリア180内のVORの最終位置を表示するユーザからの信号の受け取りには依存しない。ユーザが第1の画像上のどこかへVORを移動する(又はVORの下へ第1の画像を移動する)場合、この方法はユーザの信号に応答し且つVOR内にディスプレイするための第2の画像を生成する。
【0073】
本発明は、デリート(削除)又は「フィルタリング」動作としても動作してもよく、即ち第1の画像の一部内でディテールが減少するのを示すために選択クリテリア(規準)を用いることによって第1の画像部分からディスプレイオブジェクトを除去したり又はフィルタリングしたりする。
【0074】
選択クリテリアを用いる時、これらはデータストラクチュア内で全く整合しない。オブジェクトが全く選択されない時、一つの実践は、第1の画像部分内のディスプレイオブジェクトによって表示されたオブジェクトデータ項目によって表示されたディスプレイ機能属性データ項目に対する現在の属性値を使用することであり、且つディスプレイオブジェクトは従って、変更されなかったように見える。従って、本発明は、第1の画像部分とほぼ一致する第2の画像を生成し、且つVOR186内の第2の画像を表示する。方法80によって操作される機械のシステムユーザにとって、VORは「透明」であるように見えて、オブジェクトがこの選択規準と整合しない時は単に第1の画像を不変のまま示すにすぎない。この操作は「ヌル」又は「アイデンティティ(一致)」操作又は変換と呼ばれる。
【0075】
本発明は、第1の画像部分に含まれる全てのディスプレイオブジェクト上で操作するので、第1の画像内のディスプレイオブジェクトは、VOR186の境界のディスプレイ位置の内側と外側の両方にあるディスプレイ位置と同じ広がりを有するディスプレイエリア180内にディスプレイ位置を有していてもよい。本発明は、変更されたディスプレイ機能を有するVOR186の境界内にあるディスプレイオブジェクトの部分が示されるが、VOR186の境界の外側にある第1の画像内のディスプレイオブジェクトの残りの部分が変更されないディスプレイ機能を有するのが示されるように実行される。これは、VOR186の外側にある三角形216の一部がオーバーラップ(重畳)する三角形によってまだ隠されている図5に見ることができる。
【0076】
本発明の方法によってこの様に操作する多くの画像に対して、ビューイング操作領域は、比喩的に言えば、ユーザにとって一種の光学レンズ即ち一種のモデルデータストラクチュアフィルタとして機能するように見えると理解される。ビューイング操作領域境界を横切って第2の画像へ移送された第1の画像のコンテクストによって提供された視覚的類似性が、第2の画像のVOR内の表示と結合して、変更されたディスプレイ機能を有する選択された第1のディスプレイオブジェクトを示しながら、モデルデータストラクチュア内で情報についてのフィルタリング操作を実行する光学的レンズの外観を提供する。
【0077】
例示されている実施例において、VORはサブウインドウ内で実行され且つ従来のウインドウ操作技術を用いて他のサブウインドウと同様に操作され得る。例えば、VORはユーザによって再度サイズ決定されるか、そうでない場合はあらゆる従来の方法において移動される。マウスクリックは選択されないVORを選択し且つ選択されたVORを再選択するために使用され得る。
【0078】
図10は本発明の方法が操作しようとする他のシステム環境を示している。オペレーティングシステム132とウインドウ管理システム130を含むオペレーティングシステム環境128は、グラフィックユーザインターフェースを支援する従来の又は標準的なオペレーティングシステム環境である。オペレーティングシステム環境128の例は、これらの限定はされないが、アップルコンピュータ(Apple Computer)、マイクロソフト(Microsoft )、フューレットパッカード(Hewlett Packard )、サンマイクロシステム(Sun Microsystems)、アイビーエム(IBM)、ネクスト(Next)、ディジタルエキップメント社(Digital Equipment Corporaion)、及びユニックスシステム研究所(Unix Systems Laboratories )によって提供されるパーソナルコンピュータ、ワークステーション、及びメインフレームコンピュータオペレーティングシステムを含んでいてもよい。本発明の方法は、例えば、Xウインドウシステム(商標登録)(マサチューセッツ工科大学の登録商標)のような工業規格ソフトウェアユーザインタフェースプラットフォームもウインドウマネジャー130として提供されるオペレーティングシステム環境128において操作することを目的とする。
【0079】
マルチウインドウ、マルチアプリケーション環境において、各アプリケーションは、そのそれぞれのウインドウに結果をディスプレイするためにウインドウ管理システム130と対話する。各アプリケーションはその各ディスプレイウインドウ内で「実行」又は「ラン」するように命令される。ウインドウ管理システム130はユーザ入力信号を受け取り、それらを適切なアプリケーションへ向け、且つ適切なウインドウ内で画像のディスプレイを制御する。アプリケーションの内の特定の一つを機能的にエンハンスメントすることの実行の代わりに、図10は、環境128内で実行される他のアプリケーションから独立して、個別のアプリケーションとして実行される方法又はビューイング操作480として指定される本発明の方法の機能性を示す。
【0080】
図10はビューイング操作/ウインドウ管理システムインタフェース500(Viewing Operation/Window Management System Interface 500)(以後「ウインドウ・マネジャ・インタフェース500」と呼ばれる)も示す。ウインドウマネジャインタフェース500はウインドウマネジャ130内に含まれないが方法480がアプリケーション120、124、及び126のいづれかと対話するために必要とされるウインドウ管理機能性を有する方法480の実行のソフトウェア構成要素である。ウインドウマネジャインタフェース500は、環境128内で実行されるアプリケーション毎の識別、メモリ位置、及びモデルデータストラクチュアに関するアプリケーション識別情報と含む。環境128内の方法480の開始はウインドウマネジャインタフェース500を開始させ、このウインドウマネジャインタフェース500は環境128内で実行される各アプリケーションのためにデータストラクチュアを最初に組立て、引き続いてこのデータストラクチュアを更新させたままにしておく。ウインドウマネジャインタフェース500はビューイング操作480とアプリケーションの間を通信し、且つウインドウマネジャ130と実行しているアプリケーションの間にこれらの通信を渡す。この実行において、ビューイング操作領域はビューイング操作480が実行し、且つユーザが他のウインドウによってと同様にそれと対話するウインドウである。
【0081】
ウインドウマネジャインタフェース500はまたビューイング操作480と対応するVOR186の位置を探索する。複数のビューイング操作が環境128内で実行された時、ウインドウマネジャインタフェース500は、各対応するVORの位置をトラッキング(探索)し、且つ一つのVORの位置の変更が他のビューイング操作がリペイント(再着色)するのを必要とし、そのため、それと対応するVOR内に新しい第2の画像を生成することもあるので、各実行中のビューイング操作へ何時ディスプレイエリア180内の位置を変更したかを知らせる。ウインドウマネジャインタフェース500は、それ自体がディスプレイエリア180内にウインドウを提供するために実行されてもよい。ウインドウマネジャインタフェース500の機能性がウインドウマネジャ130の供給側によってウインドウマネジャ130ヘ直接組み込まれてもよいことを知ることは重要である。
【0082】
図10はまた、ビューイング操作及び/又はアプリケーションインタフェース502、504、及び506を示す。これらのインタフェースの各々は、方法480が、ユーザがアプリケーションのウインドウ内のアプリケーションによって生成された画像の上にVOR186を移動する時、アプリケーションのターミノロジ内のアプリケーションによって、ウインドウマネジャインタフェース500を介して通信してもよいように、環境128内で実行されるアプリケーションのために提供されなければならないソフトウェア構成要素である。アプリケーションが実行のためにオープンされ、且つその画像に対してウインドウが作成された時、ウインドウマネジャインタフェース500がアプリケーション識別情報データストラクチュアを更新できるように、アプリケーションはウインドウマネジャインタフェース500へそのことを通知しなければならない。
【0083】
一般的なウインドウシステム環境において、ウインドウがディスプレイエリア内で移動したり又はリサイズされる時は必ず、ウインドウマネジャ130はその移動されたりリサイズされたウインドウによって影響を受ける全てのウインドウを識別し、且つ各影響されたアプリケーションへ影響を受けたアプリケーションのウインドウの部分に対するウインドウ内にその対応する画像をリペイントするように命令する。本発明の場合において、全ての影響されたウインドウをリペイントすることが、VORと同じひおがりを有するディスプレイエリアのあらゆる部分がウインドウ上の操作によって影響を受けた時、ビューイング操作480と対応するVOR186内に画像をリペイントすることを含む。ビューイング操作領域(VOR)がオープンウインドウ内の画像の部分と同じ広がりを有するように位置された時、VOR186をリペイントすることよって、第2の画像を生成するためのビューイング操作が生じる。図10に示されるマルチウインドウ、マルチアプリケーション環境128内の実行は、このように、ウインドウマネジャインタフェース500が、その識別を提供し、且つビューイング操作480に対応する選択されたVOR186がそのアプリケーションウインドウ上で移動する時、特定のウインドウ内で画像を生成したアプリケーションのモデルデータストラクチュアへアクセスするためにするために問い合わせされることを要求する。
【0084】
【発明の効果】
本発明は、画像が生成されたモデルデータストラクチュア内のデータ及び情報へのアクセスを提供する。
【図面の簡単な説明】
【図1】本発明の方法が操作してもよい代表的なプロセッサ制御機械を示す図である。
【図2】本発明の方法を示す実施例のシステム構成要素間の対話を示すブロック図である。
【図3】本発明の方法の他の実行を示す図2のブロックの変形を示す図である。
【図4】本発明の方法を示す実施例によって操作される第1の画像を示す図である。
【図5】図6及び図7のフローチャートにおいて示されている実施例の方法によって生成される第2の画像を示すディスプレイスクリーンを示す図である。
【図6】例示される実施例の方法の作用を示すフローチャートである。
【図7】例示される実施例の方法の作用を示すフローチャートである。
【図8】例示される実施例において実行されるディスプレイエリアの二つの画像平面を示す図である。
【図9】図6及び図7のフローチャートにおいて例示される実施例の方法によって生成される他の第2の画像を示すディスプレイスクリーンを示す図である。
【図10】複数のウインドウ、即ちウインドウ管理環境において独立したアプリケーションとして操作する本発明の方法の他の実施例のシステム構成要素を示すブロック図である。
【符号の説明】
100 機械
140 プロセッサ
150 信号ソース
160 出力サーキットリ
170 ディスプレイデバイス
172 出力利用デバイス
180 ディスプレイエリア
182 第1の画像
[0001]
[Industrial application fields]
The present invention relates generally to a method of operating a processor-controlled machine having a display for displaying an image, and to a processor-controlled machine operated by this method, in particular on a model data structure on which a first image is generated. An image display function provided in the first displayed image by using the displayed output generation area to identify the relevant part of the image that is to be operated on and the second image is to be generated And generating a second image related to the.
[0002]
[Prior art]
A frequent and intense use of processor-controlled machines such as computers is the presentation of information in the form of images to display devices connected to the machine. Images that may include other display functions such as graphics as well as characters, words, and text are generated directly from the image definition data structure that defines the image into the display area of the display device. Here, the image definition data structure is generally stored in the memory area of the machine. One type of image format, known as a raster image, consists of individual image locations, commonly referred to as “pixels”. The images described herein may be still images or animated images (having a look that is stationary when viewed from a system operator or user), as in the case of digital video images, for example. .
[0003]
Only the image definition data structure carries data that is relatively limited in terms of the information content of the image that the data displays. However, for many images, the image definition data structure contains information or data that can itself be understood by a human being or by a software operation such as an application program executed by a machine processor. Generated from other data structures including. Such data structures are referred to herein as “information model data structures” or “model data structures” and are distinguished from image definition data structures.
[0004]
An example of an information model data structure is a model in which a graphics image such as a photorealistic (with photographic realism) scene is generated. This model, also called “scene description”, is the shape of the components in the 3D scene, the basic elements that define objects and light sources, the displayed appearance characteristics of primitives such as color and surface texture, and the object base Includes a connectivity description that describes how the elements are located and fit together in the scene.
[0005]
Other examples of information model data structures are documents used by word processing or other document manipulation applications that include text, formatting instructions, and other data needed to generate a formatted manuscript (document). Data structure or document model. In order to allow interaction with text and its format on a page or in a document by an operator or user of a processor-controlled machine on which application instructions are executed, applications such as word processing programs are within the display area of the display (device). An image definition data structure is generated from the document data structure (model) to display an image of the current page or document.
[0006]
Images generated from the model data structure have at least one similarity that is important to illustrate the invention herein. That is, each image provides a view of the model data structure to the machine operator or user. The content of the view is set by functions defined in a processor control operation, commonly referred to as an “application”, which generates an image from the model data structure. In fact, the images generated by the application provide visual access to the data and information in the model data structure.
[0007]
In some existing systems, system users may access data and information in the model data structure through other functions defined by the application, and in some cases, manipulate them. May be. This provides the user of the system with the ability to access and possibly influence or manipulate data and information not shown by the display functions currently visible in the original image.
[0008]
For example, in some computer-aided design systems, a user command causes an image including a front view (front view) (first image) of a subassembly to be displayed in the display area of the system display device, and the user The side view of the partial assembly (side view) (second image), ie a part of the partial assembly, may be displayed simultaneously with the first image in a separate part of the display area. The second image may be displayed on one side of the display area to allow viewing and examination of both images and interaction with both images.
[0009]
When multiple views (viewpoint displays) of a model are provided in an existing system, the spatial relationship between the original image, the specification of the input content for the second image, and the position of the second image in the display It is not easy to visualize. The specification of the input may be directly related to the first image (ie when the user can point out or select a region in the first image), for example, the user Does not necessarily lead to the case where a command has to be typed to specify a second image. Furthermore, once a selection is specified, the user either has no control over the position of the second image, or must reposition it (second image position) in a separate step. Therefore, it can be difficult to understand how the second image is spatially related to the first image and its model. Linking the direct selection in the first image to the spatial location of the second image can make these relationships clearer. This is especially important when the model is complex and can be viewed in many different ways. This problem has become more serious as systems supporting complex models or sets of related models have become more common.
[0010]
An example of providing the user with simultaneous control over both the first image portion selection and the second image display position is a software implementation of image magnification. U.S. Pat.No. 4,800,379 discloses a method and apparatus for displaying an image defined by digital data indicating the color content of a pixel of the image, the image being displayed on the boundary of an image selection contour area. In response to an “enlargement” signal from the indicator assembly of the device for display centered within, the enlarged portion of the image is within the boundaries of the image selection contour area. Thus, the magnified portion of the image can be seen in the spatial context of the entire image by suppressing the portion of the image below the magnified portion in the contour area.
[0011]
European Patent No. 0 544 509 entitled "Photographic Filter Metaphor for Control of Digital Image Processing Software" is the spatial context of the first image. Discloses another example of the display of the second image. European Patent No. 0 544 509 displays an image on a display device, selects a filter to overlay on a portion of the image, and stores the image as it is visible before modification A method and interactive for displaying a portion of the image overlaid by the filter while changing, displaying the filtered portion of the changed image, and retrieving the image as seen before the change A user interface is disclosed.
[0012]
Operations performed alone on the image pixel data structure provide a version and view of the first image that is strictly limited to image value operations. Thus, the general software implementation of the pixel magnifier provides several desired functions to generate a simultaneous display of two images, but the first derived directly from the image pixel data structure of the first image. The range of information content that can be used for the second image is necessarily limited to the version and view of the first image obtained only from the manipulation of pixel values. The method used to operate on the image pixel data structure to generate an image (pixel) magnification when information about the first image is available from the information model data structure of the first image is It is impossible to transfer to an operation on the information model data structure to provide another view of one image, so that such a method can be used to access other views of the information model data structure. It is impossible to operate.
[0013]
[Problems to be solved by the invention]
The present invention recognizes the importance of providing access to data and information within the model data structure from which the image was generated and providing that access within the spatial context of the original image. Depending on the nature of the data and information in this model, the present invention can provide such access in any suitable human perceptual form, including visual, auditory, tactile, and olfactory outputs.
[0014]
Furthermore, for versatile use, the invention is used to interact with input by a human user, for example when operating as a type of graphic user interface function or an extension thereof (enhancement). be able to. Alternatively, the present invention may be implemented as a fully automated method under software program control, such as model data from a signal source such as from another application program or from an operating system running concurrently on a processor controlled machine. A signal is received that requests a human perceptible output indicating access to data and information in the structure. Alternatively, a combination of signals from the user or from other signal sources can be used to request a human perceptible output indicating access to data and information in the model data structure.
[0015]
[Means for Solving the Problems]
In accordance with the present invention, a signal source for generating a signal indicating an image display request, an output circuit connected to an output utilization device for generating a human perceptible output, and for storing data Connected to a memory and to receive the signal from the signal source, connected to provide data defining a human perceptible output to the output circuitry, and to access data stored in the memory There is provided a method of operating a processor controlled machine including a processor connected to the computer. The output utilization device of the machine includes a display having a display area for displaying an image, and the display area has a first image displayed in a display image position of the display area. The first image includes at least one perceptible display function, hereinafter referred to as a “first display function”. The data stored in the memory of the processor controlled machine includes instruction data for executing instructions executed by the processor and a first image model data structure for generating a first image. The first image model data structure will subsequently include a data item called “first image data item”. The first image data item is displayed in a first image by a first display function, and the first display function is mapped to a first image data item in the first image model data structure. Obtain or indicate a first image data item in the first image model data structure.
[0016]
According to this method, the processor initially displays a part of the first image including the first display function, or a display in a display area having the same extent as the display image position of the “first image segment”. Request signal data is received from a signal source indicating a display request to provide an output generation area within the viewing location. The processor then generates signal data defining a human perceptible output using the first image data item from the first image model data structure and presents the human perceptible output to the output circuit. Providing output signal data in response to the request signal data, and an output utilizing device capable of being perceived by a human in response to the output signal data at the same time as the first image is displayed in the display area. Indicates. Thus, the method provides a human perceptible output generated using the first image data item in the first image model data structure in response to a display request from the signal source, thereby Providing the machine user with a perception of providing access to information related to the first display function in the first image segment.
[0017]
In providing visual access to data and information in the model data structure from which the image is generated, the method and machine of the present invention selects a portion of the first image as input and the first image. Recognize shortcomings in existing systems that provide a second view of the model data structure that does not provide the user with simultaneous control of both positioning the display of visual output within the appropriate spatial context of ing. Accordingly, the method and apparatus of the present invention provides an original image so that a second image is required and at the same time a spatial context of the first image provides a display of the second image in the same output operating area. The output operation area is used to select a part of. (From now on, the term “first image” is used interchangeably with the term “original” image.) Such a display of the second image in the spatial context of the first image is represented by the second image. The information content of the first image may be expanded (emphasized), information currently hidden from view in the first image may be exposed, or the user may be The currently displayed view information may be hidden in the first image that appears to be confused. When this method is implemented as an interactive method, the user determines both the content and position of the second image, and in the case of visual output, an output generation region called the “viewing operation” region. It will be understood that it is only necessary to specify the display position of the.
[0018]
Thus, according to another aspect of the invention, the output generation area is a viewing operation area and the human perceptible output sent to the output circuitry defines a second image for display on the display device. There is provided a processor-controlled machine operating method that is image definition data. The second image has substantially the same size and size as the size and shape of the viewing operation area. The second image is provided in the viewing operation area at approximately the same time as the first image is displayed in the display area, thereby having the same extent as the current image position of the first image segment. The display of the second image in the viewing operation area in the display viewing position in the display area replaces the first image in the display area.
[0019]
Another useful advantage of the method of the present invention over the existing method of presenting a second view of the model data structure is that the global context of the first image is shown while showing the focus of the second image in the viewing operation area. Ability to hold and provide (full content).
[0020]
The present invention further provides a display request signal requesting that a display of the viewing operation area be generated by a machine user via a user input device connected to an input circuit in communication with the processor. A display request by the machine user moves the viewing operation area from the first position in the display area to the current viewing position having the same extent as the first image segment that includes the first display function in the display area. A movement signal indicating a movement operation by a machine user.
[0021]
In this aspect of the invention, on the information model data structure of the first image to generate the second image to reduce the amount of interaction required by the user to generate the second image. The operation executed in is associated with a movable viewing operation area. The position of the movable viewing operation area defines a part of the first image for which the second image is desired, but does not necessarily define a part of the information model data structure to be operated. The input requirements of the operation itself define a part of the information model data structure that is to be operated. Coupling the operation to a selectable and movable display area and the output image definition to the position of the movable display area must be taken by the user to generate the selected second image on the display. It reduces the number of steps that must be performed, thereby providing the user with an intuitive and easy-to-use interface to produce the desired second image. This interface allows the desired image of the first image within the movable viewing operation area without any further interaction required by the user to generate the desired view when moving to a different portion of the first image. It may take the appearance of a “lens” or “filter” for the user, showing the view being viewed.
[0022]
The invention according to claim 1 is connected to receive a signal from a signal source for generating a signal indicative of an image display request, a display having a display area for displaying an image, and A machine operating method comprising: a processor connected to provide data defining an image to the display; and a memory for storing data, wherein the data stored in the memory is executed by the processor Instruction data indicating instructions to be performed, and the processor is further connected to access data stored in the memory, and displays a first image at a display image position in a display area of the display Operating the processor to perform the first image on a first display. Including a play function, wherein the first image is generated using a first image model data structure stored in the memory of the machine, and the first display function is the first image model data structure. Operating the processor to display in the display area a first viewing operation region image including a step comprising representing a first data item contained within the display operation region (VOR) Operating the processor to receive request signal data from the signal source indicating a display request to display a second image in the VOR; and a first image segment of the first image The VO located within the current viewing position having the same spread as the display image position of A first viewing operation area image, wherein the first image segment includes the first display function and the first data item from the first image model data structure is used for the VOR. Generating image definition data defining a second image for display within the second image, wherein the second image has substantially the same size and shape size as the VOR size and shape; And providing the second image in the VOR at about the same time as the first image is displayed in the display area to respond to the request signal data indicative of the display request. And a step of operating the processor.
[0023]
The present invention according to claim 2 corresponds to the VOR for mapping the first image model data structure to the image definition data defining the second image for the VOR to display in the VOR. The method of claim 1, wherein generating the image definition data having a viewing operation and defining the second image comprises generating the second image according to the viewing operation. is there.
[0024]
According to a third aspect of the present invention, the first image model data structure used for generating the first image is an object model data structure, and the first image model data structure is the first image model data structure. Including a first object data item represented by a first display object in the image segment, the object coordinate data item indicating a current object position of the first display object in the first image, and the object A coordinate data item indicates the first object data item and the viewing operation corresponding to the VOR is from the first image model data structure and the display viewing position of the VOR in the display area and the Object coordinate data Use an eye to obtain the first object data item indicated by the first display object included in the first image segment, and to make the first object item a second according to the viewing operation. 3. The method of claim 2, comprising mapping to the image definition data defining a second image.
[0025]
The present invention according to claim 4 wherein the data stored in the memory further comprises instruction data defining an application operation, the application operation being the first display object from the first image model data structure. And the viewing operation corresponding to the VOR generates a second model data structure from the first image model data structure, and the second image data structure includes the second image data structure. A model data structure including a copied first object data item copied from the first image model data structure, and obtaining the copied first object data item from the second model data structure. Before, to generate the modified attribute value Change the attribute value indicated by the copied first object data item, obtain the size and position data of the second image from the display viewing position of the VOR in the display area, and Size and position data indicate size and position information about the second image, the second image size and position data and the modified to generate the image definition data defining the second image 5. The method of claim 4, comprising operating the processor to perform the application operation using the second model data structure having the copied first object data item indicating an attribute value. Is the method.
[0026]
According to a fifth aspect of the present invention, the signal source is a user input device for generating a signal indicating the operation of a machine user, and the request signal data received from the user input device is the VOR, The method according to claim 1, further comprising showing a movement action by the machine user moving to a display viewing position within the display area that is coextensive with the first image segment.
[0027]
【Example】
The terms defined below have the meanings indicated in this specification and in the claims.
[0028]
As used herein, the term “data” refers to a physical signal that represents or has information. The term “data” includes data that exists in physical form and includes data that is temporary or stored or transferred. For example, the data can exist as an electromagnetic or other transferred signal or as a signal stored electronically, magnetically, or in other forms.
[0029]
A “data item” or “data item” is the amount of data that a processor can access or otherwise manipulate as a unit. Data can be combined to form a “data structure”. A “data structure” is any combination of interrelated data. The data structure may include other data structures.
[0030]
A “processor control machine” or “processor” is any device, component, or system that can process data and includes one or more central processing units or other processing components (components). You may go out.
[0031]
The processor “uses” data when performing an operation (operation), and the result of the operation at this time depends on the value of the data. An “instruction” is an item of data that a processor can use to determine its own operation. A processor “executes” a set of instructions when the processor uses the instructions to determine its operation.
[0032]
An item of data is a thing, thing, or feature when this item has a value that depends on the presence or occurrence of the thing, thing, or feature, or has a value that depends on a measure of the thing, thing, or feature "Show". Further, when the second item of data can be obtained from the first item of data, the second item of data can be accessible using the first item of data, and the second item of data. When the item can be obtained by decrypting the first item of data, or when the first item of data can be the identifier of the second item of data, the first item of data is “Show” the second item. For example, when the first item of data indicates position information of the image display function in the display area of the display device and the position information may be used by the processor to obtain a second data item in the data structure, The first item of data indicates the second item of data.
[0033]
An “image” is a light pattern. The image may also include other functions such as letters, words, text, and graphics. The image may be divided into images “segments (parts)” where each segment itself is an image. The segment of the image may be any size leading up to the entire image and may include the entire image. An “image output device” is a device that can provide an output that defines an image. A “display” or “display device” is an image output device that provides information in a form visible to the human eye. A display defines, for example, a cathode ray tube, an array of light-emitting, light-reflecting, or light-absorbing elements, a device or structure that shows marks on paper or other media, and an image in a visible form And any other device or structure capable of doing so. “Providing an image” on the display means manipulating the display so that a viewer can perceive the image. A “display area” is a portion of a display on which an image is displayed or a medium that receives the image.
[0034]
Data “defines” an image when the data has sufficient information to directly generate the image, such as by displaying the image on a display. Data defining an image is referred to herein as “image definition” or “image definition data”. For example, a two-dimensional array is an image definition that can define all or any part of an image, commonly referred to as “image pixel data” or “image pixel data structure”, and each item of data in this array. Provides a value called "pixel value" that displays the color of the image location.
[0035]
The term “display function” relates to any human perception generated by a display in a processor controlled machine or display system. A “display object” is a display function that can be perceived as a coherent (coherent) unity. A “shape” is a display object with a distinct outline. For example, a circular display object is a shape. A shape having a bounded area may be called a “region”. An image “includes” a display function or object if the display of this image can generate a perception of that function or object. Similarly, a display object “includes” a display function if the display object's display can generate a perception of the display function.
[0036]
A “viewing operation area”, which is also referred to as an “output generation area” in the present specification, is an area having a bounded area of an arbitrary shape. The viewing operation area is a display function that can be perceived as coherent unity having at least one distinguishable contour and at least one bounded area. The distinguishable contour defines and distinguishes the portion or segment of the first image from which the second image is generated from the remaining portion of the first image from which the second image is not generated. This viewing operation area may have topologically complex boundaries, so it does not need to be a fixed or predetermined shape, or it can be perceived as a bounded area that is coherent and distinguishable As long as it is not necessary to have explicitly drawn boundaries (edges).
[0037]
When a display function can be mapped to one or more items of data in the body of data, the display function "displays" the body of data, or otherwise, the display function is mapped “Show” one item or multiple items of data to be obtained. For example, a display object that is perceived as a solid (solid) black line in an image may have a data object in the model data structure that one operation uses to generate the color and solidness of that line. One or more items may be indicated.
[0038]
The mapping of one or more items of data to display functions or objects herein is intended to mean a set of instructions (instruction data items) that are accessible and executable by a processor in the display system. The relationship or function (function) of the mapping of one or more items of data (operation inputs) and display functions or objects (operation outputs) in the image, performed by "operations" used in Define. An operation “displays” a display function or object in the image and performs the operation when the operation is initiated without having data defining the display function or object in the image. Data defining the function or object is obtained.
[0039]
The method of the present invention is a “model-based operation”. Model-based operations use “model data” as input to generate image definition data that defines an image as an output. For example, a data item other than the image definition data such as a data item other than the image pixel data item is an “information model data item” or “model data”. Model-based operations map one or more model data items in the model data structure to display functions included in the images generated by this operation.
[0040]
A combination (combination) of interrelated model data items is referred to herein as a “model data structure”, an “information model data structure”, or a “first image model data structure”. For purposes of describing the present invention herein, all model data items used by a single operation to generate an image are considered to be included as part of this model data structure. Further, the model data structure is not limited to a combination of data items physically located in a substantially contiguous portion of the system's memory, but is located in memory and accessed by the processor when performing this operation. Possible individual model data items may be included. In addition, the interaction between model data and operations, and the nature, amount, and resources of the data that are considered part of the model data structure are in itself a functional capability of model-based operations that may vary considerably. Will change accordingly.
[0041]
The method of the present invention, when the method uses the model data structure from which the first image was generated to generate image definition data that defines the second image, “on the existing first image, Manipulate". This model-based operation that generated the first image is called an “application”.
[0042]
This model data structure may contain data items that are not directly used by this application to generate images, which may be known and accessible by this application or other model-based operations . Furthermore, while the model data structure is used to generate an image, it is used to generate one or more other data items that are not used to generate the image and are not included in the model data structure. The data item shown may be included. For example, the data item in the model data structure indicated by the display object in the image may indicate a second model data item that has characteristics or detailed information about the display object that is not displayed in the image. This second model data item may be included in the model data structure or may be included in a different data structure linked to this model data structure.
[0043]
The present invention operates various processor-controlled machines, each having the common components, characteristics, and configurations shown in FIG. Machine 100 in FIG. 1 includes a signal source 150 for generating a signal indicative of an image display request. Signal source 150 may include any signal source that produces the type of signal required by the method of the present invention. Such sources include a variety of input devices that can be controlled by a human user that generates signals generated by the user, and includes other devices that are connected to the machine 100 to generate such signals. And devices connected by wired or wireless communication facilities such as via remote or local electronic communication networks and infrared and wireless connections. Signal source 150 may include operations performed by machine 100, such as a digital computer operating system or other applications executed by the digital computer. The processor 140 is connected to receive a signal from the signal source 150.
[0044]
Machine 100 includes a memory 110 for storing data. The processor 140 is connected to access data stored in the memory 110 and provide data for storage in the memory 110. The memory 110 stores instruction data indicating instructions to be executed by the processor and includes instruction data indicating instructions for operating the machine 100 according to the method of the present invention.
[0045]
The processor 140 is also connected to an output circuit 160 for providing data defining the first image 182 for display in the display area 180 on the display device 170. As used herein, for all circuit components, either of the two components of the circuit will be able to transfer data from one of the components to the other. Is “connected” when a combination of The processor 140 is further connected to the output circuitry 160 for presentation on the output utilization device 172 to provide data defining human perceptible output generated by the method of the present invention.
[0046]
The signal from the user input device may include a “request” for the operation and information identifying the requested operation, and one or more signals may be assigned by the machine user attempting to perform the operation. Direct one or more actions. An operation is performed by the machine in response to a request when the received signal indicates a valid request for a valid operation and causes the operation to be performed. A signal indicating a single complete request indicates a valid request for a valid operation and may include any number of action combinations indicated by the user necessary to cause the operation to be performed.
[0047]
The plurality of input devices may include, for example, a keyboard or pointing device used by the machine user to indicate the operation. Suitable pointing devices include, but are not limited to, a mouse, a stylus or pen, a trackball, or a user's finger that contacts the touch-sensitive surface of the display device 170. Signals indicating user actions include signals indicating selection or movement of display objects that the user can view within display area 180, signals indicating requests to cause operations to be performed by processor 140, and within display area 180. It may include a signal that the processor will display an image for display.
[0048]
The actual way in which the physical hardware components of the machine 100 are connected may vary, and the hard wiring physical connection or remote or local communication network and infrared between some or all components And a connection via a wired or wireless communication facility such as a wireless connection. The physical size range of the machine 100 includes fairly small desktops, laptops, and pocket-sized or smaller display devices, for example, from machines that include very large display devices 170 suitable for electronic whiteboard applications and the like. The machine may vary greatly. The present invention is intended to be operable on all machines within this physical size range.
[0049]
One type of model data structure from which an image can be generated according to the present invention may consist of a collection of data items that describe an “object”. “Object” refers to the semantic aspects of the application domain (eg, characters, words and paragraphs in a word processor, strokes in a rendering system, temporary events and dependencies in a project management system, etc.). In general, an “object description data item” in a data structure consists of other data items that themselves describe the characteristics of a set of objects. For a particular object, these characteristics are the application specific attributes used by the application that generated the image, as well as the positional and visible attributes of the object that determine how the object is perceived when displayed. May be indicated. In general, each object, along with its properties, can be uniquely addressed by a pointer or identifier, and this allows objects to refer to each other in their descriptions. Objects or their characteristics may describe relationships or constraints between other objects. When used with respect to data items in an object-based model data structure, the term “display function attribute data item” refers to an object characteristic.
[0050]
The method of the present invention operates on a model data structure to generate a view of the data within the data structure. Each different type of view desired requires a particular set of operations to be performed on this model data structure. The set of operations performed on the model data structure is hereinafter referred to as “viewing operations”. Each distinct viewing operation can be “corresponded” to its own viewing operation region, whereby a display of a particular viewing operation region having the same extent as the first image segment is The model data structure is then used to generate a second image with a corresponding set of operations and to provide the second image within the viewing operation region.
[0051]
The method of the present invention was implemented as a set of interactive user control functions or viewing operations that cooperate with the functionality of a graphical object editor application software program operating in a graphical user interface system environment. .
[0052]
Each viewing operation operates on a graphical object editor object-based model data structure, hereinafter referred to as a graphical editor data structure, having structural characteristics similar to the model data structure 860 described above. The execution of one of these viewing operations, designated as method or viewing operation 400, is described in detail below. The architecture of this programming environment is illustrated by the simplified functional block diagram of FIG. 2 with the understanding that these functional components are common to a wide range of machines that support a graphical user interface environment. Yes.
[0053]
The illustrated embodiment is written in the Cedar programming environment, a research software environment that uses the Cedar programming language and can claim ownership of Xerox running on a SunOS ™ compatible operating system. The research software prototype application was run on a Sun Microsystem SPARKstation computer 10. The Cedar programming environment includes at least one pointing device for providing and managing images for display in a plurality of workspaces or “windows” within the display area of the display, and to be operated by a machine user. Provides application support for graphic user interface environments including software functions. A user uses a pointing device to convey operational commands first to a graphic user interface and then to each software application operating in each window via this interface.
[0054]
The illustrated practice also works within the framework of the editing environment known as MMM (Multi-Device Multi-User Multi-Editor). The MMM operates as a single window within the Cedar programming environment and allows multiple applications, including graphic editor applications, to run as subwindows within this MMM window. The MMM takes events from multiple input devices such as mice or trackballs, tracks which devices have generated which events, and places all events in a single queue. The MMM dequeues each event in turn (dequeues it) and determines which application the event should be sent to. MMM applications are arranged in a hierarchy that shows how they are nested on the screen. Each event is passed to the root application that passes the event to one of its child applications, and one of the child applications in turn passes the event down the tree. Mouse events are typically sent to the deepest nested application whose screen area contains the mouse coordinates. However, when a user is dragging (moving while holding an image) or resizing (resizing) an object in a particular application, all mouse coordinates will proceed to that application until dragging or resizing is complete. The keyboard event goes to the currently selected application. Additional information about the MMM environment can be found in Eric A. Bier, 1991, New York, ACM on User Interface Software and Technology, Minutes of the SIG Graph Symposium (Hilton Head SC, November 11-13, 1991) and Steve Freeman's "MMM: A User Interface Architecture for Shared Editors on a Single Screen" (pages 79-86).
[0055]
In FIG. 2, the basic structure of the seeder environment 118 is a collection of components arranged in a hierarchical layer, and the higher level modules that lower level modules can call as normal seeder language procedures. Supports a well-integrated interactive environment that can be used directly to level or "client" programs. In addition, higher level seeder components can supply procedure values as parameters to lower level service procedures, and these lower level service procedures can also communicate with higher level components when needed. This higher level component can be called later to do this.
[0056]
The seeder environment 118 controls the different application contexts controlled by the processor 140 (FIG. 1) by physically dividing this application context into a plurality of different parts of one or more display screens. To do. Application programs such as the Gargoyle graphics editor 120 in a seeder programming environment are referred to as the environment's “client”. The seeder environment includes a higher level software window management system 112, hereinafter referred to as “window manager 112”, which provides the window management control necessary for application client programs executing on the machine. To do.
[0057]
The viewing operation software 400 is a graphic editor data structure used by the Gargoyle graphics editor 120 to define and perform viewing operations according to the method of the present invention and to generate a second image. Have software instructions to interact with. The viewing operation software 400 interacts cooperatively with the functional parts of the Gargoyle graphics editor 120 and is a client of the window manager 112, similar to the Gargoyle graphics editor 120. Each application client performs an operation of the Gargoyle graphics editor 120 and generates and displays a viewing operation area 186 in the window 211 on the display 170 in response to a request signal from the user. To perform operation 400, data is received via window manager 112 by converting the signal received from input circuitry 152 into a series of user input signals to direct control of processor 140 (FIG. 1). Are exchanged for user interaction device 154 and display 170.
[0058]
In the illustrated embodiment, the method 400 (viewing operation) is performed as a separate application, and the MMM editor handles any interaction between the application 120 and the method 400. However, as shown in FIG. 3, the method of the present invention may be implemented as a functional enhancement to an application 120 that interacts with the window management system 112 within the graphical user interface environment 118 as a collective entity 122. The method 400 can be any variety currently available for computer workstations and other types of machines having a processor and display, including personal computers, full-function duplex copiers, publisher related equipment, and image reproduction equipment (copiers). May be performed in this manner to operate in a graphical user interface.
[0059]
FIG. 4 shows a first image 210 that is manipulated by the viewing operation 400. The first image 210 includes display objects 212, 214, 216, and 218. These display objects are arranged in an overlapping order from front to back and have an appearance with a color that fills the interior, which makes them opaque and the front triangle 218 hides part of the triangle 216. , Triangle 216 also hides part of triangle 214 and so does triangle 214. FIG. 5 shows an image 210 in a window 211 in the display 180. The graphic object editor 120 allows the editor user to select and manipulate display objects in the image 210. Graphic object editor 120 is a graphic editor data structure that includes its xy coordinates relative to a program-defined window or other display medium, its orientation in space, its size, and its shape for each object in the image. Is used.
[0060]
FIG. 6 illustrates operations comprising the illustrated embodiment of the method of operation of the present invention designated as the viewing operation 400 of FIG. The viewing operation 400 in the illustrated embodiment performs an operation that reveals all edges of an object that is within the boundaries of the VOR (viewing operation region) 186 and is actually within the model data structure within the boundaries of the VOR 186. The display function attribute data item for controlling whether or not the object becomes opaque is changed for each object.
[0061]
The window including the first image 210 and the viewing operation area act as “selectable units”, respectively. A selectable unit is a display function that is perceived as a bounded display area that can be selected. When the term “select” is used with respect to a selectable unit, it means an action by the user that uniquely indicates the selectable unit.
[0062]
FIG. 5 shows the initial position of VOR 186 as a circular area bounded by a dotted line. In box 404 of FIG. 6, the user selects the first image to position VOR 186 within the current viewing position within display area 180 that is coextensive with the first image segment (portion) of first image 210. It interacts with either the selectable unit VOR 186 including 210 and the window 211. The VOR 186 in the two-dimensional display area 180 has an appearance that is in an image plane different from the image plane of the first image 210 shown in the embodiment, and a 2.5-dimensional image display area. 180 appearances are generated. In FIG. 8, this concept is illustrated, and a display area 180 having two image planes 189 and 188 from a human user viewpoint 220 is shown. The user interaction may use a mechanical pointing device to move the tracking (search) symbol or cursor 181 to the window 211 or viewing operation area window 186 containing the first image 210 and press a mouse button. In some conventional ways, including attaching this cursor to any selected unit.
[0063]
With respect to FIG. 8, once the cursor is attached to the selected unit, does the user move the window 211 containing the first image 210 in the image plane 188 "down" the VOR 186 in the image plane 189? Or move VOR 186 in image plane 189 “up” a portion of first image 210 in image plane 188. As a result of the user interaction, each image position 185 in the image plane 188 corresponds to an image position 187 in the image plane 189 so that the VOR 186 is positioned to be coextensive with the first image portion of the first image 210. Is done. In FIG. 5, dotted line 187 indicates the movement of VOR 186 to a position above a portion (segment) of first image 210. User interaction results in the generation of a request signal that requests the display of VOR 186 within the current viewing location within display area 180 that is coextensive with the first image portion of image 210. The request signal is passed to a viewing operation 400 that includes the position of the XY display coordinates of VOR 186 in display area 180 and controls display processing with window manager 112.
[0064]
In response to the user action, the method 400 in box 410 of FIG. 6 generates image definition data defining a second image using the graphic editor data structure in box 420 and in box 460. At the same time that the first image 210 is defined in the window 211, it provides image definition data defining the second image to the output display circuitry 160 for display in the VOR 186 in the display area 180.
[0065]
FIG. 7 shows the action comprising the box 420 in more detail. For the illustrated embodiment, the method 400 in box 424 obtains a new attribute value needed to generate a modified second image. The method 400 shows the contours of all objects located in the first image portion regardless of the front-to-back orientation of each object with respect to other objects. Accordingly, the method 400 changes a display function attribute data item that controls whether an object has a fill color in the image, and changes an object that has a fill color to an object that has no fill color.
[0066]
Method 400 then copies the graphic editor data structure to the same second model data structure in box 428, and then in box 430, 434, object 438, obtains each object data item from the copied data structure, Position a display function attribute data item that controls the fill color of and replace the item with a new attribute value that indicates an object that has no fill color. This part of the method 400 includes an existing procedure from the graphic object editor application 120 that takes a graphic editor data structure as its argument, and pointers to one or more procedures to perform operations on the model data structure, Is performed by using In short, the viewing operation 400 calls a pointer to an application procedure that uses the copied model data structure as an argument, and a procedure for changing the fill color in the data structure to an “unfilled color”, and a graphic object. The called procedure in the editor application 120 modifies the copied model data structure using the specified modification procedure.
[0067]
The method 400 then generates image definition data that defines the second image using the data structure copied and modified in box 440. Therefore, the second image is a modified version of the entire first image. The viewing operation 400 determines the size and position of the VOR 186 in box 444 to determine the size and position of the second image. The viewing operation 400 transfers control to the graphic object editor application 120 at a point where the application 120 generates image definition data that defines the first image 210 to determine the size and position of the second image. In the case of the graphic object editor in the illustrated embodiment, this uses the copied and modified model data structure to render the second image into the pixel data structure and clip it to the size and position of the VOR. Including that. The second image data is then provided to the display for display in the VOR 186 at approximately the same time as the first image 210 is redrawn in the window 211.
[0068]
FIG. 5 shows a second image in VOR 186. The second image shows the complete outline of the triangle 214 in VOR 186. The second image also shows the full outline portion of the triangle 216 within the boundaries of VOR 186. The rest of the outline of the triangle 216 remains hidden outside the VOR 186 boundary. As can be seen from the results of the method 400 of FIG. 5, when the second image is substantially similar to the first image portion except for relatively perceptible changes, the user's perception system is , Reconcile the content of the first image with the content of the second image in the spatial context of the first image. The VOR then has an appearance that appears nearly transparent to the user.
[0069]
In subsequent user interaction with the VOR 186, the user may move the VOR 186 from its current viewing position relative to the first image 210 to a new viewing position for display of a different second image, where different The second image shows a modified view of the new first image portion located “below” VOR 186 at the new viewing position. For improved processing efficiency, once the copied graphic editor data structure is changed so that the objects in the first image 210 do not have a fill color, the copied and changed model is the VOR 186 image 210. Can be cached in memory for use when moving over different parts of the memory. When the VOR 186 is moved in this manner, the method 400 retrieves the copied and modified model from memory, determines a new clipping region defined by the VOR 186, and the previously modified copied model data structure. And call the application 120 to generate a second image using the new clipping region definition.
[0070]
The method 400 detects when the model that invalidates the cached copy has changed. If the cached copy model that was generated when the user last moved the viewing operation area (VOR) no longer indicates the current state of the graphic editor data structure in the next operation of the viewing operation area, the method 400 displays the model. It must be copied again, perform operations on the model to generate a second image, and replace the previously cached copied model with the newly copied model.
[0071]
FIG. 9 shows VOR 186 moved to a new location on the portion of rectangle 212 and triangle 214. The position in front of VOR 186 is shown as a circular area with a dotted border. It will be appreciated that the portion of the border of triangle 214 that can be seen in FIG. 5 is no longer visible in FIG. 9 once VOR 186 has been removed. In its new position, VOR 186 shows a second image having the entire border of rectangle 212 and a triangle 219 that was totally invisible in the original image 210 shown in FIG.
[0072]
In the illustrated embodiment, the method 400 responds to a user request signal whenever the VOR 186 is positioned to be coextensive with the first image portion of the first image 210. The illustrated implementation is therefore within the display area 180, such as by releasing a mouse button as is customary in many graphic user interfaces that use a pointing device to perform a "drag and drop" operation. It does not depend on receiving a signal from the user indicating the final position of the VOR. If the user moves the VOR somewhere on the first image (or moves the first image below the VOR), the method responds to the user's signal and displays a second for display in the VOR. Generate an image of
[0073]
The present invention may also operate as a delete or “filtering” operation, i.e., by using selection criteria to indicate that detail is reduced within a portion of the first image. The display object is removed from or filtered from the image portion.
[0074]
When using selection criteria, these do not match at all in the data structure. When no object is selected, one practice is to use the current attribute value for the display function attribute data item displayed by the object data item displayed by the display object in the first image portion, and The display object therefore appears to have not changed. Accordingly, the present invention generates a second image that substantially matches the first image portion and displays the second image in VOR 186. To the system user of the machine operated by the method 80, the VOR appears to be “transparent” and merely shows the first image unchanged when the object does not match this selection criterion. This operation is called a “null” or “identity” operation or transformation.
[0075]
Since the present invention operates on all display objects contained in the first image portion, the display objects in the first image are the same as the display positions that are both inside and outside the display position of the VOR 186 boundary. You may have a display position in the display area 180 which has a breadth. The present invention shows the portion of the display object that is within the boundary of the VOR 186 having a modified display function, but the remaining portion of the display object in the first image that is outside the boundary of the VOR 186 is unchanged. Is performed as shown. This can be seen in FIG. 5 where a portion of the triangle 216 outside the VOR 186 is still hidden by the overlapping triangle.
[0076]
For many images that are manipulated in this way by the method of the present invention, the viewing manipulation region is figuratively understood to appear to function as a kind of optical lens or kind of model data structure filter for the user. Is done. The visual similarity provided by the context of the first image transferred across the viewing operation area boundary to the second image is combined with the display in the VOR of the second image to change the display. It provides the appearance of an optical lens that performs a filtering operation on information within the model data structure, while showing a selected first display object with functionality.
[0077]
In the illustrated embodiment, VOR is performed within a subwindow and can be manipulated like other subwindows using conventional windowing techniques. For example, the VOR is resized by the user or otherwise moved in any conventional manner. A mouse click can be used to select an unselected VOR and reselect the selected VOR.
[0078]
FIG. 10 illustrates another system environment in which the method of the present invention may operate. Operating system environment 128, including operating system 132 and window management system 130, is a conventional or standard operating system environment that supports a graphical user interface. Examples of operating system environment 128 include, but are not limited to, Apple Computer, Microsoft, Microsoft, Hewlett Packard, Sun Microsystems, IBM, IBM, It may include personal computers, workstations, and mainframe computer operating systems provided by Next), Digital Equipment Corporaion, and Unix Systems Laboratories. The method of the present invention is intended to operate in an operating system environment 128 in which an industry standard software user interface platform such as, for example, the X Window System (registered trademark) (registered trademark of the Massachusetts Institute of Technology) is also provided as the window manager 130. And
[0079]
In a multi-window, multi-application environment, each application interacts with the window management system 130 to display the results in its respective window. Each application is instructed to “run” or “run” within its respective display window. Window management system 130 receives user input signals, directs them to the appropriate application, and controls the display of images within the appropriate window. Instead of performing functional enhancement of a particular one of the applications, FIG. 10 illustrates a method or view that is executed as a separate application, independent of other applications executing in the environment 128. FIG. 4 illustrates the functionality of the method of the present invention designated as ingest operation 480.
[0080]
FIG. 10 also shows a viewing operation / window management system interface 500 (hereinafter referred to as “window manager interface 500”). The window manager interface 500 is a software component of execution of the method 480 that is not included in the window manager 130 but has the window management functionality required for the method 480 to interact with any of the applications 120, 124, and 126. is there. Window manager interface 500 includes application identification information regarding identification, memory location, and model data structure for each application executed within environment 128. Initiation of method 480 in environment 128 causes window manager interface 500 to be started, which first assembles the data structure for each application executed in environment 128 and subsequently updates this data structure. Leave it alone. The window manager interface 500 communicates between the viewing operation 480 and the application, and passes these communications between the window manager 130 and the executing application. In this execution, the viewing operation area is the window that the viewing operation 480 executes and the user interacts with as well as by other windows.
[0081]
The window manager interface 500 also searches for the location of the VOR 186 corresponding to the viewing operation 480. When multiple viewing operations are performed in the environment 128, the window manager interface 500 tracks the position of each corresponding VOR, and changing the position of one VOR repaints the other viewing operations. (Re-coloring), so a new second image may be generated in the corresponding VOR, so when you changed the position in the display area 180 for each active viewing operation To inform. Window manager interface 500 may itself be implemented to provide a window in display area 180. It is important to know that the functionality of the window manager interface 500 may be incorporated directly into the window manager 130 by the supply side of the window manager 130.
[0082]
FIG. 10 also shows viewing operations and / or application interfaces 502, 504, and 506. Each of these interfaces is communicated via the window manager interface 500 by the application in the application's terminology when the method 480 moves the VOR 186 over an image generated by the application in the application's window. As such, it is a software component that must be provided for applications running within the environment 128. When the application is opened for execution and a window is created for the image, the application informs the window manager interface 500 so that the window manager interface 500 can update the application identification data structure. There must be.
[0083]
In a typical window system environment, whenever a window is moved or resized within the display area, the window manager 130 identifies all windows affected by the moved or resized window, and each Instruct the affected application to repaint its corresponding image in the window for the portion of the affected application's window. In the case of the present invention, repainting all affected windows corresponds to the viewing operation 480 when any part of the display area that has the same weight as the VOR is affected by the operation on the window. Including repainting the image in VOR 186. When the viewing operation area (VOR) is positioned to be coextensive with the portion of the image in the open window, repainting VOR 186 results in a viewing operation to generate a second image. Execution within the multi-window, multi-application environment 128 shown in FIG. 10 is thus the window manager interface 500 providing its identification, and the selected VOR 186 corresponding to the viewing operation 480 is on the application window. When moving in, requires that you be queried to gain access to the model data structure of the application that generated the image in a particular window.
[0084]
【The invention's effect】
The present invention provides access to data and information within the model data structure from which the image was generated.
[Brief description of the drawings]
FIG. 1 illustrates an exemplary processor controlled machine that the method of the present invention may operate.
FIG. 2 is a block diagram illustrating interaction between system components of an embodiment illustrating the method of the present invention.
FIG. 3 shows a variation of the block of FIG. 2 illustrating another implementation of the method of the present invention.
FIG. 4 shows a first image manipulated by an embodiment illustrating the method of the present invention.
5 shows a display screen showing a second image generated by the method of the embodiment shown in the flow charts of FIGS. 6 and 7. FIG.
FIG. 6 is a flowchart illustrating the operation of the method of the illustrated embodiment.
FIG. 7 is a flowchart illustrating the operation of the method of the illustrated embodiment.
FIG. 8 shows two image planes of the display area implemented in the illustrated embodiment.
9 shows a display screen showing another second image generated by the method of the embodiment illustrated in the flowcharts of FIGS. 6 and 7. FIG.
FIG. 10 is a block diagram illustrating system components of another embodiment of the method of the present invention operating as multiple applications, ie, independent applications in a window management environment.
[Explanation of symbols]
100 machines
140 processor
150 signal source
160 Output circuit
170 Display device
172 Output device
180 display area
182 First image

Claims (5)

画像ディスプレイリクエストを示す信号を発生するための信号源と、
画像を表示するためのディスプレイエリアを有するディスプレイと、
前記信号源から前記信号を受け取るために接続され、且つ画像を定義するデータを前記ディスプレイに提供するために接続されているプロセッサと、
データを記憶するためのメモリと、
を含む機械操作方法であって、
前記メモリに記憶されたデータが前記プロセッサが実行する命令を示す命令データを含み、且つ前記プロセッサが前記メモリ内に記憶されたデータへアクセスするためにさらに接続されており、
前記ディスプレイのディスプレイエリア内の表示画像位置に第1の画像を表示するために前記プロセッサを操作するステップであって、前記第1の画像が第1のディスプレイ機能を含み、前記第1の画像が前記機械の前記メモリ内に記憶された第1の画像モデルデータストラクチュアを用いて生成され、且つ前記第1のディスプレイ機能が前記第1の画像モデルデータストラクチュア内に含まれた第1のデータ項目を表すことよりなるステップと、
任意の形状のビューイング操作領域(VOR)を含む第1のビューイング操作領域画像を前記ディスプレイエリア内に表示するために前記プロセッサを操作するステップと、
前記VOR内に第2の画像を表示するためにディスプレイリクエストを示す前記信号源からリクエスト信号データを受け取るために前記プロセッサを操作するステップと、
前記第1の画像の第1の画像セグメントの表示画像位置と同じ広がりを有する現在のビューイング位置内に位置された前記VORを含む第2のビューイング操作領域画像を提供し、
前記第1の画像セグメントが前記第1のディスプレイ機能を含み、前記第1の画像モデルデータストラクチュアから前記第1のデータ項目を用いて前記VOR内にディスプレイするために第2の画像を定義する画像定義データを生成し、
前記第2の画像が前記VORのサイズと形状の大きさとぼぼ同一のサイズと形状の大きさを有しており、且つ前記第1の画像が前記ディスプレイエリア内にディスプレイされているのとほぼ同時に前記第2の画像を前記VOR内に提供することによって、
前記ディスプレイリクエストを示す前記リクエスト信号データに応答するために前記プロセッサを操作するステップと、
を備える機械操作方法。
A signal source for generating a signal indicating an image display request;
A display having a display area for displaying an image;
A processor connected to receive the signal from the signal source and connected to provide data defining the image to the display;
A memory for storing data;
A machine operation method comprising:
The data stored in the memory includes instruction data indicative of instructions to be executed by the processor, and the processor is further connected to access data stored in the memory;
Operating the processor to display a first image at a display image position within a display area of the display, the first image including a first display function, wherein the first image is A first data item generated using a first image model data structure stored in the memory of the machine and wherein the first display function is included in the first image model data structure. A step consisting of representing,
Operating the processor to display a first viewing operation area image including a viewing operation area (VOR) of any shape within the display area;
Operating the processor to receive request signal data from the signal source indicating a display request to display a second image in the VOR;
Providing a second viewing operation region image including the VOR located within a current viewing position having the same extent as a display image position of a first image segment of the first image;
The first image segment includes the first display function and defines a second image for display in the VOR using the first data item from the first image model data structure Generate definition data,
The second image has substantially the same size and shape size as the VOR size and shape, and at the same time as the first image is displayed in the display area. By providing the second image in the VOR,
Operating the processor to respond to the request signal data indicative of the display request;
A machine operating method comprising:
前記VORが前記VOR内にディスプレイするために前記第2の画像を定義する前記画像定義データへ前記第1の画像モデルデータストラクチュアをマップするために前記VORと対応するビューイング操作を有し、且つ前記第2の画像を定義する前記画像定義データを生成するステップが前記ビューイング操作に従って前記第2の画像を生成する
ことよりなる請求項1に記載の方法。
The VOR has a viewing operation corresponding to the VOR to map the first image model data structure to the image definition data defining the second image for display in the VOR; and The method of claim 1, wherein generating the image definition data defining the second image comprises generating the second image according to the viewing operation.
前記第1の画像を生成するために使用される前記第1の画像モデルデータストラクチュアがオブジェクトモデルデータストラクチュアであり、前記第1の画像モデルデータストラクチュアが前記第1の画像セグメント内の第1のディスプレイオブジェクトによって表される第1のオブジェクトデータ項目を含み、オブジェクト座標データ項目が前記第1の画像内に第1のディスプレイオブジェクトの現在オブジェクト位置を示し、及び前記オブジェクト座標データ項目が前記第1のオブジェクトデータ項目を示し、且つ
前記VORと対応する前記ビューイング操作が、前記第1の画像モデルデータストラクチュアから、前記ディスプレイエリア内の前記VORの表示ビューイング位置と前記オブジェクト座標データ項目を用いて前記第1の画像セグメント内に含まれた前記第1のディスプレイオブジェクトによって表示される前記第1のオブジェクトデータ項目を入手し、且つ前記第1のオブジェクト項目を前記ビューイング操作に従って第2の画像を定義する前記画像定義データへマップする
ことよりなる請求項2に記載の方法。
The first image model data structure used to generate the first image is an object model data structure, and the first image model data structure is a first display in the first image segment. A first object data item represented by the object, wherein the object coordinate data item indicates a current object position of the first display object in the first image, and the object coordinate data item is the first object. The viewing operation that indicates a data item and that corresponds to the VOR uses the display viewing position of the VOR in the display area and the object coordinate data item from the first image model data structure. Picture of 1 Obtaining the first object data item displayed by the first display object contained in an image segment and defining the first object item as a second image according to the viewing operation; The method of claim 2 comprising mapping to definition data.
前記メモリ内に記憶された前記データがアプリケーション操作を定義する命令データをさらに含み、前記アプリケーション操作が前記第1の画像モデルデータストラクチュアからの前記第1のディスプレイオブジェクトを含む前記第1の画像を生成することが可能であり、且つ
前記VORと対応する前記ビューイング操作が、
前記第1の画像モデルデータストラクチュアから第2のモデルデータストラクチュアを生成し、前記第2のモデルデータストラクチュアが前記第1の画像モデルデータストラクチュアから複写された複写された第1のオブジェクトデータ項目を含み、
前記第2のモデルデータストラクチュアから前記複写された第1のオブジェクトデータ項目を入手し、
変更された属性値を生成するために前記複写された第1のオブジェクトデータ項目によって示される属性値を変更し、
前記ディスプレイエリア内の前記VORの表示ビューイング位置から第2の画像のサイズ及び位置データを入手し、前記第2の画像のサイズ及び位置データが前記第2の画像に関するサイズ及び位置情報を示し、
前記第2の画像サイズ及び位置データと、前記第2の画像を定義する前記画像定義データを生成するために前記変更された属性値を示す前記複写された第1のオブジェクトデータ項目を有する前記第2のモデルデータストラクチュアと、
を用いて前記アプリケーション操作を実行するために前記プロセッサを操作する
ことよりなる請求項に記載の方法。
The data stored in the memory further includes instruction data defining an application operation, and the application operation generates the first image including the first display object from the first image model data structure. And the viewing operation corresponding to the VOR is
Generating a second model data structure from the first image model data structure, the second model data structure including a copied first object data item copied from the first image model data structure; ,
Obtaining the copied first object data item from the second model data structure;
Changing the attribute value indicated by the copied first object data item to generate a changed attribute value;
Obtaining a second image size and position data from a display viewing position of the VOR in the display area, wherein the second image size and position data indicates size and position information relating to the second image;
The second image size and position data, and the copied first object data item indicating the changed attribute value to generate the image definition data defining the second image. Two model data structures,
4. The method of claim 3 , comprising operating the processor to perform the application operation using.
前記信号源は機械ユーザの動作を示す信号を生成するためのユーザ入力デバイスであり、且つ
前記ユーザ入力デバイスから受け取られた前記リクエスト信号データが、前記VORを、前記第1の画像セグメントと同じ広がりを有する前記ディスプレイエリア内の表示ビューイング位置へ移動する前記機械ユーザによる移動動作を示すことよりなる請求項1に記載の方法。
The signal source is a user input device for generating a signal indicative of machine user operation, and the request signal data received from the user input device causes the VOR to be coextensive with the first image segment. The method according to claim 1, further comprising: indicating a movement action by the machine user moving to a display viewing position in the display area having:
JP16095494A 1993-07-21 1994-07-13 Machine operation method Expired - Lifetime JP3640982B2 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US08/096,200 US5596690A (en) 1993-07-21 1993-07-21 Method and apparatus for operating on an object-based model data structure to produce a second image in the spatial context of a first image
US096521 1993-07-21
US08/096,521 US5652851A (en) 1993-07-21 1993-07-21 User interface technique for producing a second image in the spatial context of a first image using a model-based operation
US096200 1993-07-21

Publications (2)

Publication Number Publication Date
JPH0778243A JPH0778243A (en) 1995-03-20
JP3640982B2 true JP3640982B2 (en) 2005-04-20

Family

ID=26791416

Family Applications (1)

Application Number Title Priority Date Filing Date
JP16095494A Expired - Lifetime JP3640982B2 (en) 1993-07-21 1994-07-13 Machine operation method

Country Status (1)

Country Link
JP (1) JP3640982B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6396962B1 (en) * 1999-01-29 2002-05-28 Sony Corporation System and method for providing zooming video

Also Published As

Publication number Publication date
JPH0778243A (en) 1995-03-20

Similar Documents

Publication Publication Date Title
EP0636971B1 (en) Method and apparatus for producing a composite second image in the spatial context of a first image
EP0635808B1 (en) Method and apparatus for operating on the model data structure on an image to produce human perceptible output in the context of the image
CA2124604C (en) Method and apparatus for operating on an object-based model data structure to produce a second image in the spatial context of a first image
US5467441A (en) Method for operating on objects in a first image using an object-based model data structure to produce a second contextual image having added, replaced or deleted objects
US5729704A (en) User-directed method for operating on an object-based model data structure through a second contextual image
US5818455A (en) Method and apparatus for operating on the model data structure of an image to produce human perceptible output using a viewing operation region having explicit multiple regions
US5544301A (en) Object-oriented view layout system
US5689628A (en) Coupling a display object to a viewpoint in a navigable workspace
US5973702A (en) Oriented view system having a common window manager for defining application window areas in a screen buffer and application specific view objects for writing into the screen buffer
JP3598303B2 (en) Method of selectively displaying and activating overlapping display objects on a display, and computer system
US6822662B1 (en) User selected display of two-dimensional window in three dimensions on a computer screen
US5341466A (en) Fractal computer user centerface with zooming capability
US5710896A (en) Object-oriented graphic system with extensible damage repair and drawing constraints
US5621434A (en) Cursor manipulation system and method
US5465363A (en) Wrapper system for enabling a non-multitasking application to access shared resources in a multitasking environment
US20020033849A1 (en) Graphical user interface
KR20060105422A (en) Compositing desktop window manager
JPH10507853A (en) Object oriented system for servicing windows
US5737559A (en) Object-oriented view hierarchy framework
US5615326A (en) Object-oriented viewing framework having view grouping
CN101421761A (en) Visual and scene graph interfaces
US5524199A (en) Object-oriented view system with background processing of update request
US5524200A (en) Object-oriented non-rectilinear viewing framework
US6734855B2 (en) Image editing system and method, image processing system and method, and recording media therefor
US5995984A (en) Apparatus and method for zoom-in entry of an element in a table

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040824

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041124

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20050118

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050120

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080128

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090128

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090128

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100128

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110128

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110128

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120128

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130128

Year of fee payment: 8

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term