JP2002373346A - 図形編集システム - Google Patents

図形編集システム

Info

Publication number
JP2002373346A
JP2002373346A JP2002119372A JP2002119372A JP2002373346A JP 2002373346 A JP2002373346 A JP 2002373346A JP 2002119372 A JP2002119372 A JP 2002119372A JP 2002119372 A JP2002119372 A JP 2002119372A JP 2002373346 A JP2002373346 A JP 2002373346A
Authority
JP
Japan
Prior art keywords
link
graphic
elements
block
constraint
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2002119372A
Other languages
English (en)
Other versions
JP3634323B2 (ja
Inventor
Jonathan L Gay
エル. ゲイ ジョナサン
Robert B Tatsumi
ビー. タツミ ロバート
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.)
Adobe Inc
Original Assignee
Adobe Systems Inc
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=25418476&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=JP2002373346(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Adobe Systems Inc filed Critical Adobe Systems Inc
Publication of JP2002373346A publication Critical patent/JP2002373346A/ja
Application granted granted Critical
Publication of JP3634323B2 publication Critical patent/JP3634323B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S715/00Data processing: presentation processing of document, operator interface processing, and screen saver display processing
    • Y10S715/961Operator interface with visual structure or function dictated by intended use

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • User Interface Of Digital Computer (AREA)
  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)

Abstract

(57)【要約】 【課題】 図形環境において図形要素間の空間関係を指
定するのに用いる図形応用プログラム(20)を開示す
る。 【解決手段】 この図形応用プログラムは、アプリケー
ションシェル(30)を介してオペレーティングシステ
ム(24)と対話するユーザインタフェース(28)を
含む。ユーザインタフェースとオペレーティングシステ
ムの間には、文書エンジン(32)、図形エンジン(3
4)、および制約エンジン(36)が結合されている。
この図形応用プログラムは、オペレーティングシステム
を介して、例えばパーソナルコンピュータなどに収容さ
れているCPU(22)上で実行される。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、一般にコンピュータ作
図プログラムに関し、さらに詳しくは、表示および/ま
たは印刷される図形要素間の図形位置合せおよび分布基
準を指定するシステムおよび方法に関する。
【0002】
【従来の技術】現在利用可能な多くのデスクトップパブ
リッシングやその他のコンピュータプログラムは、利用
者が文書内で図形要素を描いたり操作することができる
ようになっている。情報提供者が広範囲に及ぶしばしば
詳細な事実や数字、その他の概念を伝えようとするとき
に、組織的図表や、データ表、棒グラフ、その他の図形
的補助手段を利用することが増え続けているので、図形
要素を作図および操作する能力はますます重要になって
きた。図形要素を作図および操作する能力を備えている
現在利用可能なプログラムの例として、シリコン・ビー
チ・ソフトウェア社のSuperPaint (R)、クラ
リス社のMacDrawTM、デネバ社のCanva
TM、およびアルダス社のPageMaker (R)など
がある。
【0003】作図および操作機能を有するプログラムの
利用者の主な目的は、図形要素をできるだけ効率的に入
力、操作、および提示(スクリーン上に、または出力装
置を介して)することである。現在利用可能なプログラ
ムは一般に、図形要素を相互に対して正確に位置合せし
たり、間隔を置いて配置することを可能にする位置合せ
機能を含む。しかし、位置合せコマンドが実行された後
で、利用者が図形要素を合せ位置から自由に移動するこ
とができる。図形要素の位置合せや間隔配置を編集中に
維持したければ、それを確実にするために、利用者が位
置合せコマンドを絶えず適用する必要があるので、編集
作業中にかなりの不利益をもたらす。そこで、図形要素
間の永続的関係を設定し、文書を印刷する前に図形要素
やその他の要素をさらに編集したり修正しても、選択さ
れた図形要素を位置合せおよび間隔配置した状態に維持
する方法があれば、有利である。
【0004】
【発明の概要】本発明は、図形環境で要素の空間関係を
指定する方法である。この方法は、(a)分布フレーム
を作成する段階と、(b)分布フレームによって連結さ
れる1組の要素を指定する段階と、(c)その組の要素
と分布フレームの間の空間関係を決定する位置合せおよ
び分布の基準を選択する段階とを含む。この方法によ
り、各要素間に指定された空間関係が要素の修正および
編集作業中も維持される。本発明の別の態様に従って、
位置合せおよび分布基準の選択方法は、さらに、縦軸に
沿った要素の組の空間関係を選択する段階と、横軸に沿
った要素の組の空間関係を選択する段階とを含む。
【0005】本発明のさらに別の態様に従って、この方
法はさらに、その組の要素に適合するように分布フレー
ムの大きさを決める、サイズ変更オプションを選択する
段階を含む。選択できる他のサイズ変更オプションとし
て、分布フレームに適合するようにその組の中の要素の
大きさを決定する機能がある。サイズ変更オプション
は、縦横どちらの方向にも実現することができる。さら
にスペーシング基準を要素間に指定することができる。
本発明の別の特徴は、分布フレーム内の要素の順序をフ
レーム内で並べ変えることができないようにロックでき
ることである。
【0006】本発明のさらに別の態様に従って、図形要
素間の制約を解く方法は、(a)制約によって対として
結合される要素間のリンクを生成する段階と、(b)制
約が現在満たされていないリンクのリストを作成する段
階と、(c)この汚染リスト内の各リンクに、制約が最
初に解かれるリンクを示す優先順位を割り当てる段階
と、(d)リンクに取り付けられる図形要素の1つの属
性を変更することによって、優先順位が最も高いリンク
に接続された図形要素の中の1つの要素の属性を変更す
ることによって、そのリンクに関連する制約を解く段階
とを含む。
【0007】
【実施例】本発明の上述の特徴および利点は、添付の図
面を参照しながら、以下の詳細な説明を読むことによっ
て、いっそうよく理解されるようになるであろう。図形
要素間の位置合せおよび分布基準を指定する、図形応用
プログラム20を、概略的に図1に示す。この図形応用
プログラム20は、オペレーティングシステム24によ
って制御される中央処理装置(CPU)22で実行され
る。CPUには記憶装置26が接続されており、これは
一般に、例えばランダムアクセスメモリ(RAM)、読
出し専用メモリ(ROM)、およびハードドライブやフ
ロッピー(登録商標)ディスクや磁気テープなどの磁気
記憶媒体から成る。図形応用プログラム20の利点およ
び機能性は様々な種類のコンピュータで実現することが
できるので、CPU22は、パーソナルコンピュータ、
マイクロコンピュータ、あるいはメインフレーム(1名
以上の利用者を持つ)の内部に収容することができる。
この説明を不必要に複雑にするのを避けるために、明細
書および図面では、一般にパソコンおよびそのオペレー
ティングシステムを取り上げる。これに関して、本発明
に従って作成された図形応用プログラムは、例えばマッ
キントッシュTM、IBMTM、およびIBM互換性のパー
ソナルコンピュータで実行することができる。IMBお
よびIBM互換性パーソナルコンピュータを使用する場
合、オペレーティングシステム24は、マイクロソフト
・ウィンドウズ(登録商標)などのウィンドウ環境を利
用することができる。
【0008】図形応用プログラム20は、アプリケーシ
ョンシェル30を介してオペレーティングシステム24
と対話するユーザインタフェース28を含む。ユーザイ
ンタフェース28とオペレーティングシステム24の間
には、文書エンジン32、図形エンジン34、および制
約エンジン36が結合されている。「エンジン」という
ソフトウェアプログラムは通常、データをどのように管
理および操作するかを決定するプログラム部分と定義さ
れる。文書エンジン32は、文書内の全ての図形要素の
リストが含まれる表示リストを管理する。また、図形エ
ンジン34は、各図形要素の1組の「値」を含む要素デ
ータベースを保管し、絶えず更新する。図形要素の値
は、形状、大きさ、色などの属性を決定する。本明細書
および請求の範囲全体を通じて、「図形要素」という用
語は、図形応用プログラムによって操作することのでき
る表示オブジェクトおよびその他のオブジェクト、例え
ば非印刷オブジェクトを指すために使用する。図形エン
ジン34は、文書エンジンの要素データベース内に保存
された値を利用して、ブラウン管またはその他の出力装
置に図形要素を描画または表示する。文書エンジン32
および図形エンジン34は、当業界で周知の技術を用い
て実現することができるので、これらのエンジンの詳細
は、ここでは説明しない。
【0009】図2は、図形応用プログラム20を用いて
作成することができる図形要素の幾つかの部分集合を示
す。矩形38、円40、線42、および分布フレーム4
4が含まれる。矩形、円、および線は全て印刷可能な表
示オブジェクトである。分布フレーム44は印刷不能な
図形要素であり、形状として望ましくは矩形の境界によ
って囲まれる領域から成る。分布フレームは、利用者が
文書を編集するときにだけ表示され、文書を出力装置に
送信するときには表示されないので、非印刷図形要素と
みなされる。分布フレーム内に配置された図形要素は、
そのフレームに設定された位置合わせおよび分布基準に
よって支配される。
【0010】再び図1を参照すると、制約エンジン36
は「リンク」を利用して、図形要素間の空間関係、つま
り制約条件を指定する。図形要素間の空間関係は様々な
形を取ることができ、ユーザインタフェースを介して利
用者がこれを指定する。リンクは一般的に利用者には見
えないが、図形要素の間のメッセージキャリアとして機
能する。しかし、図形要素間に設定されたリンクを利用
者が完全に理解し制御することができるように、リンク
は表示したり印刷することができる。リンクは図形要素
間の永続性を提供し、リンクによって2つの図形要素に
課せられた制約関係は、要素の編集中もずっと維持され
なければならない。
【0011】図3は、図形応用プログラムで利用可能な
様々なリンクの中から、4つの代表例的リンクの部分集
合を示す。この部分集合は、左から右の順に、分布リン
ク46、位置合せリンク48、サイズリンク50、およ
び間隔維持リンク52を含む。位置合せリンク48は、
2つの図形要素を相互に対してどのように位置合せする
かを指定する。例えば、2つの要素の中心が垂直方向に
整列するように、位置合せリンクを用いることができ
る。サイズリンク50は、1つの図形要素のサイズが変
化すると、リンクされた図形要素がそれにならうよう
に、サイズ関係を設定するために使用することができ
る。間隔維持リンク52は、2つの図形要素間に特定の
距離を維持するように要求する制約条件であるが、この
間隔距離以外では、要素は相互に対し自由に移動するこ
とができる。
【0012】図4ないし図7は、図形応用プログラム2
0の制約機能の幾つかを示す、文書内の例示的3要素空
間配列を表わす。最初に、N個の要素を1つに結合する
ために必要なリンクの最小数が一般にN−1であるが、
常にそれにより多い数のリンクを利用することができ、
それによって対の図形要素の間に追加の制約関係が付加
されることを、認識しなければならない。
【0013】図4では、1組の3つの図形要素(三角形
58、矩形60、および長円形62)を、3つのリンク
56a、56b、および56cで指定された空間関係を
介して1つに結合している。各リンク56は、図形要素
の間に伸長する破線の矩形および線で表わされる。リン
ク56aは、三角形58と矩形60の中心が垂直方向に
整列し続けることを要求する制約によって、これらの図
形要素を結合する。したがって、文書の編集作業中に、
三角形58を水平方向に移動すると、矩形60がその後
を追って移動し、逆の場合も同じである。しかし、どち
らかの図形要素が垂直方向に移動しても、中心は縦軸に
沿って整列し続けるので、他方の要素に影響は無い。リ
ンク56bおよび56cは、矩形60を長円形62に結
合する。リンク56bによって提供される制約は、矩形
および長円形の境界を成すフレームの底部を相互に整列
しつづけるというものである。リンク56cによって課
せられる制約条件は、長円形62の高さを矩形60の高
さと同一に維持するというものである。
【0014】図5ないし図7は、図4のリンクによって
設定された制約条件を満足する要素54の空間構成を示
す。図5を参照すると、(a)三角形58と矩形60の
中心が、線l1で示すように整列しており、(b)矩形
と長円形62のそれぞれの境界を成すフレームの底部
が、線l2で示すように整列しており、(c)長円形の
高さh1と矩形の高さが同一であるということで、リン
ク56の制約条件が全部満たされていることが分かる。
【0015】図6では、利用者による2つの変更を想定
している。第1に、矩形60の高さがh1からh2へ増加
した。リンク56cによって課せられる制約の結果、長
円形62の高さはその増加を「追跡」し、したがってこ
れもh2になる。第2に、利用者は三角形58を、線I3
で示すように、矩形から離れるように移動させた。この
移動は、垂直方向の制約条件には影響しないので、この
移動は他の図形要素に対し影響しない。
【0016】図7は、2つの図形要素58および62
が、他の要素に影響しないように移動した場合を示す。
第1に、三角形58は矩形60の下から矩形の上の位置
へ移動した。第2に、長円形62の形状が、長円形の短
軸(軸a1)であったものを短軸が長軸になるように水
平方向に伸長することによって変化した。長円形の高さ
h1は、リンク56cを単方向リンク(後述)であると
想定して、リンク56cによって作成された禁止条件の
ために維持される。
【0017】図5ないし図7で指定された変化全体を通
じて、図形要素の位置合せは、編集作業中もリンク56
によって、(従前の作図プログラムのように)位置合せ
コマンドを絶えず適用することを必要とせずに、維持さ
れる。つまり、例示したそれぞれの変更は一般的な従来
の作図プログラムでも利用可能であるが、変更を実施す
るために必要なプロセスはずっと複雑である。例えば、
図6で行ったように、矩形60の高さを上の方向に伸長
し、長円形62の長さを対応する方法で変更させるだけ
ではなく、第1に図形要素の1つまたは残りを所望の高
さに設定しなければならず、第2に非設定要素を同じ高
さに設定しなければならず、第3に、2つの要素の底が
まだ整列していることを確保するために、再位置合せコ
マンドを実行しなければならない。同様に、要素の対を
相互に近づけるかあるいは遠ざけるように移動する場合
でも、例えば、最初に(a)距離を変更する段階と、次
に(b)図形要素を再位置合せする段階のように、2段
階以上が必要になる。当業者には容易に理解されるよう
に、文書に追加の図形要素が付加されると、編集機能を
実行するために必要な段階の数および再位置合せコマン
ドの回数はますます増えていく。
【0018】デスクトップパブリッシングや図3には示
さなかったその他の図形関係タスクで利用者を補助する
ために利用することのできる、その他の多数の制約条件
が、本発明によって提供される。より多くの便利な制約
条件をメニュー項目として組み込むことが望ましい。本
発明の実際の実施例では、本発明による多数の制約関係
を、図8に示すリンクプルダウンメニュー66に実現し
た。
【0019】本発明を理解する補助として、選択された
メニュー項目について簡単に説明する。フレーム68の
位置合せコマンドは、利用者によって位置合せされた2
つの図形要素の空間関係に基づいて、位置合せオプショ
ンを提供する、図形応用プログラムの1つの機能であ
る。位置合せの1例として、第2図形要素の内部に配置
した第1図形要素を、第2図形要素で中心位置合せする
場合を考える。オプション70の自動位置合せ機能は、
作図および編集作業中に、図形要素を「すばやく動かし
て」、利用者の所望する知覚される位置合せ状態にする
ように、図形応用プログラムに指示する。例えば、利用
者が1つの図形要素の辺縁を別の図形要素の辺縁と垂直
に近い方向に整列するように移動させた場合、図形応用
プログラムは、辺縁がプログラムされた許容差の範囲内
である限り、自動的に辺縁を垂直に整列させる。位置合
せ維持コマンド71は、図形要素の間のリンクを形成す
るために、自動位置合せ機能により位置合せされたオブ
ジェクトを利用者に「ロック」させ、それによって編集
中も維持される永続的制約関係を形成する。
【0020】リンク消去コマンド72は、設定されたリ
ンクを除去する手段を提供する。整合コマンド73は、
例えば要素の幅、高さ、サイズ、またはテキストを一致
させることによって、2つ以上の図形要素の間にリンク
を設定する方法である。リンク表示コマンド74は、1
組の図形要素の間に形成されたリンクを利用者に見せ、
その上で編集させるコマンドである。図9(後述)は、
図4ないし図7に示した図形要素の組にこのコマンドを
実行したときに、利用者が実際に見る表示画面を示す。
【0021】図9では、図4ないし図7の三角形58、
矩形60、および長円形62をそれぞれアイコン76、
78、および80で表す。リンク56aは、中心が縦方
向に整列した2つの方形を含むアイコンで表す。リンク
56bのアイコンは、それぞれの底縁部に沿って整列し
た2つの方形を含む。リンク56cのアイコンは、2つ
の図形要素の間に「数値」関係が存在し、1つの要素の
サイズがもう1つの要素のサイズに影響するかあるいは
これを支配することを、利用者に表示する。このよう
に、図形応用プログラムは簡潔な方法(アイコンの使
用)により、図形要素間に設定されたリンクと対話す
る。さらに、マウスを使用すると、リンクの属性を変更
するには、単にリンクを選択(つまりダブルクリック)
して対話ボックス(図示せず)を呼び出し、新しい制約
基準を入力するだけでよい。別な方法として、適切なキ
ーボードコマンドを使用することもできる。
【0022】図形応用プログラムの各リンクは、単方向
リンクまたは双方向リンクのいずれかである。単方向リ
ンクは、リンクに接続された第1「主」要素の値または
位置の編集が、リンクに接続された第2「従」要素の値
または位置をそれぞれ支配するように、2つの図形要素
の間の制約を設定する。したがって、リンクされた属性
(制約)に影響を及ぼす主要素が変化すると、従要素も
変化する。リンクされた属性に影響するような方法で、
従要素を変化しようとすることは禁止される。単方向リ
ンクの一例は、図4に示したリンク56cである。リン
ク56cは、第1要素(矩形60)が第2要素(長円形
62)の高さを支配するように要求する。したがって、
編集作業中に、矩形60の高さが利用者によって変更さ
れると、長円形62の高さはその変更に追随する。しか
し、長円形62の高さを変更する試みは、制約によって
阻止される。
【0023】双方向リンクとは、2つの要素の空間関係
が相互に依存し合うリンクである。つまり、関係のある
要素のどちらかが変化すると、もう一方の要素がその変
化を反映するように変化する。要素の相互依存性は、リ
ンクによって設定される特定の制約に基づく。図4で
は、リンク56aおよび56bが関係する図形要素のど
ちらからも独立しているので、これらのリンクは両方と
も、双方向リンクの例である。リンク56aについて考
えると、要素の中心を整列するという制約を満足するた
めに、三角形が水平方向に移動すると矩形60も同方向
に移動し、逆の場合も同じである。反対に、三角形58
を垂直方向に移動しても、三角形58の垂直移動は要素
の中心の位置合わせに影響を及ぼさないので、矩形60
の位置は変わらない。つまり、垂直方向には制約が存在
せず、水平方向のみに存在する。
【0024】以上の説明は、対になった図形要素間のリ
ンク設定についてであった。大グループの図形要素を要
素−リンク−要素レベルで相互接続することができる
が、グループ内の各リンクを個別に編集しなければなら
ない場合、このレベルでリンクされた要素グループに複
数の変更を行うことは大きな負担でなる。これを避ける
ために、図形応用プログラム20は、単独の非印刷図形
要素の特徴を変更することによって、多数の図形要素の
空間関係を操作することのできるユーザインタフェース
ツールを含む。この図形要素が分布フレームであり、こ
れを図2に関連させながら簡単に説明する。
【0025】分布フレームは、図形要素の位置合せおよ
び分布が分布フレームによって制御されるように、フレ
ーム内の図形要素をリンクするために使用することので
きる矩形の領域を定義し、これにより、利用者は要素−
リンク−要素レベルの図形要素を取り扱う必要が無くな
る。分布フレームのサイズは利用者によって選択され、
また、いつでも編集することができる。フレームを先に
形成し、その後で図形要素をそれに追加するか、あるい
は既存の図形要素を取り囲むようにフレームを形成する
ことができる。分布フレームを1組の図形要素の周囲に
形成する場合には、フレームに指定された位置合せおよ
び分布関係を満足するように、要素はフレーム内でその
現在の位置にできるだけ近くに配置する。
【0026】図10は、分布フレーム内に取り囲まれた
図形要素の空間基準を設定するために使用される、図形
応用プログラムの実際の実施例における位置合せ/分布
フレーム(ADF)対話ボックス84である。ADF対
話ボックス84は、図形応用プログラムで利用可能な、
例示的「位置合せ」および「分布」関係を示す。位置合
せ(Align)とは、1組の要素をどのように配列または
順序付けるかを指定する1組の要素間の図形関係を表
す。分布(Distribute)とは、1組の要素を最終的に間
隔を置いて配置するように指定する1組の要素間の図形
関係を表す。
【0027】ADF対話ボックス84には、分布フレー
ム内の図形要素間の空間関係を指定するために、8つの
水平基準がある。これらの基準は、水平空白アイコン8
5、上列の水平位置合わせアイコン86、および下列の
水平分布アイコン87を含むアイコンによって示され
る。さらに、垂直空白アイコン88、1列の垂直位置合
せアイコン89、および1列の垂直分布アイコン90を
含む8個の垂直基準もある。ADF対話ボックス内のプ
レビューボックス91は、位置合せおよび分布の選択の
効果を示す。表1に、ADF対話ボックス84内にある
アイコンの説明を提示する。
【0028】
【表1】
【0029】また、ADF対話ボックスには、垂直サイ
ズ変更オプション92および水平サイズ変更オプション
93も含まれる。各サイズ変更オプション92および9
3は、相互に排他的な3つのオプション、つまり(1)
無変更(その方向のサイズ変更を希望しない)、(2)
オブジェクト(図形要素)に適合するためのフレームサ
イズ変更機能、および(3)フレームに適合するための
オブジェクトサイズ変更機能がある。どのサイズ変更オ
プションでも、間隔を均一にするために、フレーム内の
図形要素間の間隔距離を入力することができる。サイズ
変更オプションは、多くの観点から便利である。例え
ば、利用者は図形要素を配置する領域を予め設定してお
く場合がしばしばある。この場合、利用者は分布フレー
ムをその事前設定領域に等しくなるように調整してお
き、オブジェクトサイズ変更コマンドを用いて、図形要
素をその領域に満たすことができる。ADF対話ボック
ス84にはまた、順序付けロックオプション94が含ま
れ、これが起動すると、図形要素の順序変更ができなく
なる。
【0030】図11ないし図13は、本発明に係る分布
フレーム96を用いて作成された棒グラフを示す。分布
フレームには、1月から6月までの期間の異なる月をそ
れぞれ表す6つの矩形要素97が含まれる。図11で
は、オブジェクトに適合するためのフレームサイズ変更
オプション(水平方向)が選択され、図形要素間に所定
の間隔、例えば、(4分の1インチ)が設けてられてい
る。
【0031】空間関係基準の場合と同様に、サイズ変更
オプションは、文書編集作業中もそれが維持され、図形
要素や分布フレームが自動的に調整されるという点で、
永続的である。図12は、この概念を示している。特
に、図12では、5月および6月が削除されている。こ
れに応答して、図形応用プログラムは、残りの図形要素
だけを取り囲むように、分布フレーム96を自動的にサ
イズ変更した。図13では、利用者が、最初は図11の
分布フレーム96の状態から、今度だけフレームに適合
するためのオブジェクトサイズ変更オプション(水平方
向)を選択した場合を想定している。その後、5月と6
月を再び削除する。その結果、図形応用プログラムは、
分布フレームを(水平方向に)満たすように、自動的に
矩形要素97のサイズを変更する。事前に決定された図
形要素間の間隔は変化しないことに注目されたい。
【0032】分布フレームは多数の内在的な特徴を有し
ており、それがこれを図形環境で極めて有利なものにす
る。分布フレームの1つの特徴は、利用者が図形要素間
の位置合せ/分布関係を変更することが非常に簡単であ
るということである。例えば、ある実施例では、分布フ
レーム上で(マウスを用いて)ダブルクリックするだけ
で、図10に示すADF対話ボックスが表示され、空間
関係を定義し直すオプションが提示される。また、分布
フレームを移動またはサイズ変更すると、フレーム内の
全ての要素が、分布フレームに対する要素の関係を維持
するように、移動またはサイズ変更する。分布フレーム
の別の特徴は、利用者が、フレーム上の1つのオブジェ
クトでクリックし、新しい位置へそれをドラッグするだ
けで、図形要素の分布順序を高速で変更することができ
ることである。ドラッグされた要素の新しい位置のため
に場所を明けるために、全ての要素が再配列される。こ
の機能は、順序ロックオプションを選択することによっ
て、作動不能にすることができる。
【0033】再び図1を参照すると、制約エンジン36
は、文書内で様々なリンクおよび/または分布フレーム
を設定し、操作することによって、図形要素間の空間関
係を解く手段を提供する。図形応用プログラム20で使
用される制約エンジンは、オブジェクト指向プログラミ
ング言語を用いて実現することが望ましい。オブジェク
ト指向プログラミング言語は、オブジェクトクラスを効
率的に定義し、これらのオブジェクトを使用して、アプ
リケーションの開発・実行・保守の効率を改善すること
ができる。1つの実施例では、制約エンジンは多数のC
++クラスから成るが、他のプログラミング言語を使用し
て制約エンジンを実現することもできる。
【0034】制約エンジンを構成するオブジェクトのク
ラスは主として3種類ある。これらは、表2の最上部に
リストされており、(1)ソルバクラス、(2)リンク
クラス、および(3)図形要素クラスを含む。各クラス
は、クラス属性および制約エンジンの残りのクラスと対
話するために用いられる方法を含む。表2に、各クラス
の属性および方法を、対応するクラスの見出しの下にリ
ストする。
【0035】
【表2】
【0036】以上の説明を理解するための一助として、
表2の用語に関し、次のように定義する。
【0037】汚染リスト: 制約を満足していない全て
のリンクのリスト。図形要素を追加、削除、移動、また
はその他の方法で編集するたびに、汚染リストが作成さ
れる。図14を参照のこと。
【0038】優先順位リスト: 汚染リスト内で最初に
満足させるべきリンクをソルバに示す4つのリスト(リ
スト1−4)の集合。リスト1のリンクは優先順位が最
も高く、最初に解決すべきである。リスト4のリンク
は、リスト1−3に解決すべき残りのリンクが無くなっ
た後で初めて解決すべきである。
【0039】単方向リンク: 特定の図形要素を変化さ
せるために、リンクによって課せられる制約を必ず解決
しなければならないリンク。例えばA→Bリンクは、制
約を満足させるために、必ずノードBを変化させる。
【0040】双方向リンク: リンクによって課せられ
る制約を満足するために、どちらかのノードを変化させ
ればよいリンク。
【0041】ソースノード:図形応用プログラム内でリ
ンク解決によって変更された図形要素とは異なり、利用
者の編集操作によって変更された図形要素。
【0042】現在の距離: どのリンクを最初に解決す
べきかを決定するのに役立つ、解決法で使用される変
数。
【0043】解決(Solve): (a)どのリンクを解
決する必要があるかを決定し、(b)解決方向を決定
し、かつ(c)リンク解決法を呼び出す方法。
【0044】フラグ: 各リンクは、リンク方向を決定
するために用いられるソースAおよびソースBと表示さ
れたフラグを各端部に有する。リンクを汚染リストに追
加する原因がA(B)の図形要素にある場合に、ソース
A(B)フラグがセットされる。
【0045】リンク方向: 制約を満足させるために、
リンクに接続されたどちらの図形要素を変化させること
ができるかを指定する。
【0046】解決方向: リンクの制約を指定するため
に、どちらの図形要素を変化させるべきかを指定する。
この方向は、解決法(Solve method)によって設定され
る。
【0047】リンク解決: 汚染リスト上のリンクに接
続された図形要素の1つを、リンクに結合された制約が
満たされるように変化させる方法。
【0048】リンク汚染設定: リンクを汚染リストに
追加する方法。この方法は、リンクの属性を編集すると
きに呼び出される。
【0049】要素距離: ソースノードを基点とする図
形要素の距離。
【0050】値設定: 値設定は2つの機能を有する。
第1に、これは図形要素の属性の値を変更する方向であ
る。第2に、これは編集された図形要素に結合されたリ
ンクを汚染リストに追加する要素汚染設定法を呼び出
す。
【0051】値獲得: 図形要素の属性の値を見つける
方法である。設定(Set)法および獲得(Get)法は、リ
ンク解決法が図形要素の内部に対して有する唯一のアク
セスである。分離により、応用プログラムは図形要素の
実現を制約エンジンから隠蔽することができる。
【0052】要素汚染設定: 図形要素が編集された結
果、その図形要素に結合されたリンクによって課せられ
る制約が有効でなくなったことを示す方法。
【0053】図形応用プログラムは、文書内の図形要素
に対して行われた変更を連続的に検査し識別する大域ル
ーチンである。一般に、大域ルーチンの流れは次の通り
である。(a)図形要素に対し編集が行われ、その中で
要素汚染設定が呼び出され、それにより、編集された図
形要素に連結されたリンクが汚染リストに追加される。
(b)解決法(Solve method)が呼び出される。(c)
解決(Solve)によって実現した変化および解決によっ
て呼び出された方法を反映するように、スクリーンが更
新される。
【0054】制約エンジンによって使用されるデータ構
造を図14に示す。4つの図形要素100がリンク10
2によって1つに結合されている状態が示されている。
一番右側の図形要素100aは何らかの点で利用者によ
って、例えば図形要素を移動するか大きさを変更するこ
とによって編集されることが想定されている。編集の結
果、リンク102aおよび102bが要素汚染設定法に
よって汚染リスト104に追加される。リンクが汚染リ
ストに追加された後、大域ルーチンによってソルバクラ
ス106の解決法が呼び出される。図形応用プログラム
の解決法サブルーチンについては流れ図(図15)に図
示し、以下で説明する。
【0055】ブロック110で、汚染リストおよび優先
順位リストが空か否かを決定するために試験が行われ
る。リストが空ならば、解決法サブルーチンを通過する
必要はない。その結果、ブロック112で現在の距離の
変数がゼロに設定され、サブルーチンは終了する。汚染
リストおよび優先順位リストが空でなければ、サブルー
チンはブロック114へ進み、現在の距離が増分され
る。ブロック115で、汚染リストが空か否かを決定す
る試験が行われる。空でなければ、ブロック118,1
20および122によって形成されるループが開始され
る。ループは(a)汚染リスト内のリンクに4つの優先
順位リストの1つに割り当て、(b)リンクに解決方向
を割り当て(図16)、その後(c)割り当てられたリ
ンクを汚染リストから除去する。リンクは、表2に示し
た定義に従って、優先順位リストに割り当てられる。単
方向リンクは常にリスト1に割り当てられる。双方向リ
ンクは、リンクに結合された2つの図形要素の要素の距
離に基づいて、残りの3つのリストに割り当てられる。
要素の距離は、利用者によって編集された図形要素であ
るソースノードを基点にして測定される。汚染リストの
全てのリンクが4つの優先順位リストの1つに配置され
るまで、試験ブロック116およびブロック118−1
22から成るループ内でパスが行われる。その結果、汚
染リストは空になる。
【0056】ループ内を必要な回数のパスが行われた
後、ブロック126で、現在の優先順位リストが空か否
かを決定する試験が行われる。空でなければ、ブロック
130でリンク解決サブルーチンにパスが行われる。リ
ンク解決サブルーチンについては図17に示し、以下で
説明する。リンク解決サブルーチンを通過した後、ブロ
ック132で、解決法プログラムが制約を解決するのに
時間が掛りすぎるか否かを決定する試験が行われる。ブ
ロック132は、制約が非可解である場合や、あるいは
解がおそらく数画素ずれており、単に解くのに時間が掛
りすぎる場合があるので、ブロック132が含まれてい
る。割り当てられた時間が過ぎると、プログラムはブロ
ック128に戻る。割り当てられた時間が切れると、優
先順位リスト内に残ったリンクは、ブロック134の汚
染リストに戻される。次に、ブロック136で現在の距
離がゼロに設定される。そのあと、プログラムは解決法
サブルーチンを終了する。
【0057】図16は、解決法サブルーチンの割当て解
決方向部(ブロック120)について詳細に示す。ブロ
ック140で、リンクが単方向リンクか否かを決定する
試験が行われる。リンクが単方向リンクであるならば、
ブロック142でそのリンクの方向に解決方向が設定さ
れ、プログラムはブロック122へ移動する(図1
5)。単方向リンクでなければ、リンクのソースAを設
定し、ソースBを設定しないか否かの決定が行われる
(ブロック144)。ソースAが設定され、ソースBが
設定されなければ、ブロック146で解決方向はA→B
と設定され、プログラムはブロック122へ移動する。
そうでなければ、ソースBを設定し、ソースAを設定し
ないか否かの決定が行われる。ソースBが設定され、ソ
ースAが設定されなければ、ブロック150で解決方向
はB→Aと設定され、プログラムはブロック122へ移
動する。そうでなければ、ブロック152で、一方の図
形要素の要素距離が他方より低いか否かを決定する試験
が行われる。決定が肯定的ならば、ブロック154で、
要素距離が低い方の図形要素から要素距離が高い方の図
形要素へ向かう解決方向が設定される(つまり、ソース
ノードから遠い方の図形要素が変化する)。次に、プロ
グラムはブロック122へ移動する。両方の図形要素の
距離が等しい場合は、ブロック156で無作為解決方向
が選択され、プログラムはブロック122へ移動する。
【0058】図17は、図15に示す解決法サブルーチ
ンのリンク解決部を示す流れ図である。リンク解決は、
リンクのソースAまたはリンクのソースBの図形オブジ
ェクトのいずれかの値を、そのリンクによって指定され
る制約が満足されるように、変化させる。解決法サブル
ーチンは、各リンクの解決方向を、リンクによって課せ
られる制約を満足させるために2つの図形要素のうちの
どちらを変化させるべきかを示すリンク解決のパラメー
タとして提供する。ブロック180で、値獲得手続きは
リンクのソースAの図形要素の値を検索する。ブロック
182で、値獲得手続きは、リンクのソースBの図形要
素の値を検索する。ブロック184で、ソースAの図形
要素の値をソースBの図形要素の値と比較することによ
って、リンクによって課せられた制約が満足されるか否
かを決定する試験が行われる。制約が満足されると、リ
ンク解決が終了し、プログラムはブロック132へ移動
する(図15)。制約が満足されなければ、リンク解決
はブロック186へ進む。ブロック186で、解決方向
がA→Bか否かを決定する試験が行われる。解決方向が
A→Bでなければ(つまり方向がB→A)ならば、ブロ
ック188でソースAの図形要素の値が、制約およびプ
ログラムの目的に照らして、ソースBの図形要素の値に
基づいて設定される。解決方向がA→Bならば、ブロッ
ク190で、ソースBの図形要素の値が、ソースAの図
形要素の値に基づいて設定される。解決方向が設定され
た後、プログラムは解決法サブルーチンのブロック13
2(図15)へ移動する。
【0059】図18は、図形応用プログラムの汚染設定
法を実行するのに適したサブルーチンを示す流れ図であ
る。ブロック192で、編集された図形要素に連結され
たリンクが汚染リストに追加される。ブロック194
で、各接続リンクに関連するソースフラッグ(つまりA
またはB)が設定される。ブロック196で、要素距離
が設定されたか否かを決定する試験が行われる。要素距
離が設定された場合には、サブルーチンは終了する。こ
れは、リンクに接続された図形要素がすでに、ソースノ
ードから要素距離を指定されていることを示す。要素距
離が設定されていなければ、要素距離が現在の距離に等
しい値に設定され(ブロック198)、サブルーチンは
終了する。
【0060】図19は、分布フレームに接続されたリン
クを解決するためのサブルーチンを示す。この方法は、
分布フレームが作成または変更されるたびに呼び出され
る。この方法は、大域ルーチンから、あるいは解決法サ
ブルーチンからも呼び出すことができるが、この呼出し
については図15に示されていない。ブロック200で
は、編集された図形要素、例えば新規に追加された要素
または修正された図形要素が、分布フレーム要素位置リ
スト(フレーム位置リスト)内にあるか否かを決定する
試験が行われる。編集された図形要素がフレーム位置リ
ストになければ、プログラムはブロック204へ進む。
図形要素がフレーム位置リストにある場合は、図形要素
の値がそのリストによって指定される位置と一致するか
否かを決定する試験が行われる。値と位置が一致すれ
ば、サブルーチンは終了する。一致しなければ、プログ
ラムはブロック204へ進む。
【0061】ブロック204で、分布フレームに接続さ
れた各図形要素を含めることによって、新しいフレーム
位置リストが形成される。次に、ブロック206で、分
布フレームに設定された基準に基づいて、図形要素が配
列される。次に、ブロック208で、位置リスト内の各
図形要素の値が設定される。こうして、各図形要素が適
切な位置に配置され、位置リストによって指定された大
きさを持つ。これで、このサブルーチンは終了する。
【0062】図20に、図19をさらに詳しく示す。分
布フレーム内の図形要素の配列の基礎となる概念は、一
般に図10および表1に示す垂直および水平方向の位置
合わせおよび分布基準に由来する。配列の一般規則とし
て、図形要素の位置は、要素の元の位置からの移動が最
小限となるように選択される。
【0063】図20は、水平軸上の図形要素の配列を取
り扱う階層ブロック図である。理解されるように、垂直
方向の要素配列も同様である。配列ブロック210から
下に伸びているのは、それぞれブロック212およびブ
ロック214の分布オプションおよび位置合せオプショ
ンである。要素の分布は2つのカテゴリーつまり(a)
ブロック216に示すような大きさによる分布、および
(b)ブロック218に示すように図形要素の辺縁によ
る分布に分割される。大きさによる分布は、個々の要素
の大きさに関係なく、図形要素を均等間隔に配置する。
ブロック218の図形要素の辺縁は、3つの属性つまり
要素の左縁(ブロック220)、要素の中心(ブロック
222)および要素の右縁(ブロック226)に従って
位置合せすることができる。
【0064】大きさおよび辺縁による分布配列の他に、
サイズ変更オプションを図形要素配列に影響するように
選択することもできる。これらはブロック228に示さ
れており、ブロック230にはサイズ無変更オプション
が含まれ、ブロック232には要素に適合するようにフ
レームのサイズを変更するオプションが含まれ、ブロッ
ク234にはフレームに適合するように要素のサイズを
変更するオプションが含まれる。利用者が、フレームに
含まれる要素に適合するようにフレームのサイズを変更
するオプションを選択すると、分布フレームの幅が、ブ
ロック236に示すように、要素の幅と各図形要素間の
所望の間隔の総和に等しくなる。フレームに適合するよ
うに要素のサイズを変更するオプションを選択すると、
各要素の幅は、(フレームの幅を要素の数で割った値)
から各要素間の間隔を引いた値に等しく設定される。ブ
ロック218の辺縁の左側、中央、および右側の分岐
は、ブロック228−238に記述したものと同じサイ
ズ変更オプションを含む。
【0065】位置合せブロック214もまた、それぞれ
ブロック240、343、および244に左側、中央、
および右側の位置合せオプションを含む。位置合せ分岐
のサイズ変更オプションは、ブロック246に示されて
いる。これらはまた、ブロック248のサイズ無変更オ
プション、ブロック250の要素に適合するようにフレ
ームのサイズを変更するオプション、およびブロック2
52のフレームに適合するように要素のサイズを変更す
るオプションをも含む。要素に適合するようにフレーム
のサイズを変更する場合、フレーム幅は、ブロック25
4に示すように、最も幅の広い要素の幅に等しくなるよ
うに設定される。フレームに適合するように要素のサイ
ズを変更する場合には、全てのオブジェクトの幅は、ブ
ロック256に示すように、フレームの幅に等しくなる
ように設定される。このように、図20は一般に、AD
F対話ツールで設定された基準に基づいて、図形要素を
配列するために使用できる流れを示している。
【0066】図21は、以上の説明と関連して制約エン
ジンの動作を説明するために使用される1組の3つの図
形要素270、272、および274のブロック図であ
る。図形要素270は、要素272にソースAを持ち要
素274にソースBを持つリンクL1によって、図形要
素272に結合されている。リンクL1は、符号278
で示すように双方向リンクと仮定する。単方向リンクL
2は、図形要素272を図形要素274と結合する。リ
ンクの方向は、矢印282で示すように、図形要素27
2の方向に向かっている。第3のリンクL3も図形要素
272と274を結合する。リンクL3は、ソースAが
図形要素272に連結され、ソースBが図形要素274
に連結された双方向リンクである(符号292で示すよ
うに)。
【0067】この例は、図15ないし図18に示した流
れ図に関連している。先に述べた通り、この図形応用プ
ログラムは、文書内の図形要素に行われる変更を絶えず
検査し、識別することのできる大域ルーチンを含む。こ
れに関連して、図21では、図形要素270が編集され
たと仮定する。この大域ルーチンは、次の段階を実行す
る。つまり、(1)利用者が図形要素を変更したことを
知覚し、要素汚染設定を呼び出し(図18)、(2)制
約エンジン内で解決法サブルーチンの呼出しを行い、
(3)スクリーンを更新し、それによって、文書に行わ
れた修正を表示する。この例では、解決法のブロック1
26(図15)の直後にスナップショットが行われ、
(a)4つの優先順位リストに1つにあるリンクの解決
方向を示し、(b)それがどの優先順位リストに入って
いるかを示し、(c)可変現在距離の値を示す。これら
のスナップショットを、表3に示す。
【0068】
【表3】
【0069】要素汚染設定手続きを呼出した後、そのル
ーチンのブロック192および194で、リンクL1が
汚染リストに追加され、リンクL1のソースAが設定さ
れる。次に、解決法が呼び出され、ブロック114で現
在の距離が1に設定され、リンクL1が優先順位リスト
L2に追加され、ブロック120でリンクL1の解決方
向がA→Bに設定される。これにより、表3のスナップ
ショット1に見られるデータが生じる。
【0070】ブロック128では、リンク解決法が呼び
出され、リンクL1の制約が満たされるか否かを見るた
めに、図形要素270と図形要素272が比較される。
リンクL1の制約が満足されないと仮定した場合、ブロ
ック190で値設定法が呼び出され、図形要素272が
図形要素270の値に基づいて設定される。その後、ブ
ロック192で値設定法が要素汚染設定を呼び出し、リ
ンクL1およびリンクL3が汚染リストに追加され、図
形要素272(どちらの場合もA)に連結されたソース
フラッグが設定される。次に、制御は解決法に戻り、ブ
ロック110にループバックする。ループ116−12
2において、リンクL2はリスト1に割り当てられ、解
決方向B→Aが設定される。またこのループでは、リン
クL3がリスト2に追加され、その解決方向はA→Bに
設定される。ブロック126で、現在のリストはリスト
1に設定される。表3のスナップショット2は、優先順
位リストに存在するリンクの現状を示す。
【0071】ブロック130でリンク解決ルーチンが呼
び出され、図形要素272と274の間の制約がブロッ
ク184で試験される。制約が満たされていない場合、
要素274の値はブロック188で要素272の値に等
しくなるように設定される。値設定法が再び要素汚染設
定を呼び出し、図形要素272が変更されたので、これ
はリンクL1を汚染リストに追加する。制御は解決法に
戻り、現在の距離は3に増分され、リンクL1がリスト
4に追加される。さらに、ブロック120で、リンクL
1に対しB→Aの解決方向が設定される。ブロック12
6では、リスト2が空でない最も優先順の高いリストで
あるので、現在のリストがリスト2に設定される。この
例の現在の状態を、表3のスナップショット3に示す。
【0072】この時点で、現在のリスト(リスト2)は
空でなく、ブロック130でリンク解決が呼び出され
る。リンク解決法のブロック184で、図形要素272
を図形要素274と比較することによって、リンクL3
の制約が満足されているか否かが決定される。制約が満
足されていない場合、図形要素274の値は、要素27
2の値に基づいて変更される。その後、要素汚染設定が
呼び出され、リンクL2が汚染リストに追加される。次
に、制御はブロック128に戻され、これはブロック1
10に分岐する。現在の距離はブロック114で4に増
分され、ブロック116−122でリンクL2がリスト
1に追加される。次に、ブロック126で現在のリスト
はリスト1に設定される。当該変数の現在の状態は、表
3のスナップショット4に示す。ブロック130でリン
ク解決が呼び出される。
【0073】リンク解決ルーチンにおいて、この例で
は、制約が満足され、制御が解決法に戻されたと仮定す
る。この時点で汚染リスト内にはリンクが無いので、リ
ンクL1はまだリスト4であり、したがってプログラム
はブロック114に続き、現在の距離が5に増分され
る。流れはブロック126に続き、現在のリストがリス
ト4に設定される。この時点で、スナップショット5
は、解決方向、優先順位リストおよび現在の距離の現在
の状態を示す。プログラムはブロック130に続き、リ
ンク解決法が呼び出される。ブロック184で、図形要
素272の値が図形要素270の値と比較される。この
時点で、リンクL1の制約が満足され、制御が解決法へ
戻されたと仮定する。解決法はブロック110へループ
バックし、汚染リストおよび優先順位リストは空にな
る。したがってプログラムはブロック112へ続き、こ
こで現在の距離がゼロに設定され、プログラムは終了す
る。
【0074】制約エンジンは、制約を解決するために非
常に効率的な手段である。一般に他の技術で用いられる
制約ソルバは、様々な値で指定された制約を参照するこ
とによって、制約の順序付けを予め計画するプランニン
グ段階を含んでいる。したがって、制約の評価順序を設
定するのはプリプランニング段階である。それとは対照
的に、本発明の制約エンジンは、優先順位リスト、要素
距離値、およびリンク方向を使用して基本的に制約を解
決しながら「計画」を立てていく方式である。制約エン
ジンはまた、制約問題の増分解や部分解を提供するとい
う利点もある。増分的解決は、汚染リストを実現する方
法で提供することができ、また解決法をいつでも停止す
ることによって、制約問題の部分解決を提供することが
できる。解決法を始動または停止するために、セットア
ップ時間やクリーンアップ時間のオーバヘッドは不用で
ある。解決法が解を見つけるのに時間がかかりすぎる場
合、あるいは解が無い場合には、利用者に部分解決を提
示するという意味で、部分解決が得られる。制約エンジ
ンのさらに別の利点は、図形要素の内部が制約から隠蔽
されるということである。これは、図形要素の内部への
唯一のアクセスが値設定法および値獲得法を用いるため
である。最後に、解決法による制約への唯一のアクセス
がリンク解決法を用いるという意味で、制約の内部は隠
蔽される。これにより、制約の実現が非常に柔軟にな
る。
【0075】本発明の好適実施例を図に照らしながら説
明したが、本発明の精神および請求の範囲から逸脱する
ことなく、様々な変化例を作成できることは理解されよ
う。
【図面の簡単な説明】
【図1】 本発明に従って作成された図形応用プログラ
ムのブロック図である。
【図2】 典型的な図形要素例を示す階層図である。
【図3】 本開示全体を通じてリンクと称する、代表的
な制約例を示す階層図である。
【図4】 1組の図形要素に課すことのできる制約例を
示す絵解き図である。
【図5】 図4の図形要素に課せられた制約の結果起き
ることを示す絵解き図である。
【図6】 図4の図形要素に課せられた制約の結果起き
ることを示す絵解き図である。
【図7】 図4の図形要素に課せられた制約の結果起き
ることを示す絵解き図である。
【図8】 本発明に従って実現することのできる典型的
制約機能例を示すリンクプルダウンメニューの画面表示
図である。
【図9】 図4に示した制約関係を有するリンク走査機
能の画面表示図である。
【図10】 本発明に従って図形オブジェクト間に制約
関係を形成するために使用することのできる位置合せ/
分布フレーム対話ツールの画面表示図である。
【図11】 本発明に従って分布フレームを利用して作
成および編集することのできる一連の棒グラフの画面表
示図である。
【図12】 本発明に従って分布フレームを利用して作
成および編集することのできる一連の棒グラフの画面表
示図である。
【図13】 本発明に従って分布フレームを利用して作
成および編集することのできる一連の棒グラフの画面表
示図である。
【図14】 図形要素が編集された後の汚染リストへの
リンクの追加を示す制約エンジンによって使用されるデ
ータ構造の説明図である。
【図15】 本発明に従って制約条件を解くルーチンの
流れ図である。
【図16】 特定のリンクの解決方向を決定するルーチ
ンの流れ図である。
【図17】 リンクの制約条件を満足するために、リン
クに結合された2つの図形要素のうち、どちらの要素を
修正するべきかを決定するルーチンの流れ図である。
【図18】 汚染リストに図形要素を付加するルーチン
の流れ図である。
【図19】 分布フレームに結合されたリンクを解決す
るルーチンの流れ図である。
【図20】 分布フレームに連結された図形要素を配列
するために使用されるデータ流を示す階層図である。
【図21】 制約エンジンの動作を説明するときに用い
られる1組の図形要素のブロック図である。
【符号の説明】
20図形応用プログラム 22中央処理装置(CPU) 24オペレーティングシステム 28ユーザインタフェース 30アプリケーションシェル 32文書エンジン 34図形エンジン 36制約エンジン 44分布フレーム 46分布リンク 48位置合せリンク 50サイズリンク 52間隔維持リンク 100図形要素 102リンク 104汚染リスト 106ソルバ
─────────────────────────────────────────────────────
【手続補正書】
【提出日】平成14年5月21日(2002.5.2
1)
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】特許請求の範囲
【補正方法】変更
【補正内容】
【特許請求の範囲】
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ロバート ビー. タツミ アメリカ合衆国, 92064 カリフォルニ ア州, ポウエイ, ツラ レーン 12314 Fターム(参考) 5B050 BA07 BA16 BA18 CA07 EA13 EA19 FA02 FA09 FA13

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 図形編集システムにおいて、 ユーザからの入力を受け取る入力装置、 処理中の文書を表示する出力装置、 前記文書中に表示される図形要素の表示状態を制約する
    制約エンジン、 前記制約エンジンに基づいて図形編集操作を制御する中
    央処理装置、 前記中央処理装置に接続されている記憶装置、を有して
    おり、 前記制約エンジンは編集期間中に前記出力装置上に表示
    されている前記文書内に存在する一対の図形要素間にリ
    ンクの形態で予め設定されている少なくとも一つの制約
    条件を常に維持し、前記制約条件と異なる条件の下では
    前記一対の図形要素を互いに独立的に編集することを許
    容することを特徴とする図形編集システム。
  2. 【請求項2】 請求項1において、前記リンクが、分布
    リンクと、位置合わせリンクと、サイズリンクと、間隔
    維持リンクとを包含していることを特徴とする図形編集
    システム。
  3. 【請求項3】 請求項1又は2において、前記リンク
    が、単方向リンクか又は双方向リンクかのいずれかに設
    定されていることを特徴とする図形編集システム。
  4. 【請求項4】 請求項3において、前記単方向リンク
    は、前記リンクで接続されている一対の図形要素の一方
    を主要素に設定すると共に他方を従要素に設定し、前記
    主要素が変化するとそれに従って前記従要素も変化する
    が、前記従要素は前記リンクに設定されている制約条件
    に違反して変化することが阻止されることを特徴とする
    図形編集システム。
  5. 【請求項5】 請求項3において、前記双方向リンク
    は、前記リンクで接続されている一対の図形要素のいず
    れか一方が変化すると他方の図形要素がその変化を反映
    するように変化することを特徴とする図形編集システ
    ム。
  6. 【請求項6】 請求項1乃至5の内のいずれか1項にお
    いて、前記リンクを選択的に前記出力装置上に表示させ
    ることが可能であることを特徴とする図形編集システ
    ム。
JP2002119372A 1992-06-23 2002-04-22 図形編集システム Expired - Lifetime JP3634323B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/904,059 1992-06-23
US07/904,059 US5437008A (en) 1992-06-23 1992-06-23 Method of establishing constraints and links in a distribution frame between graphical elements and resolving the constaints

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP5151798A Division JPH0696180A (ja) 1992-06-23 1993-06-23 要素間の関係を維持する方法

Publications (2)

Publication Number Publication Date
JP2002373346A true JP2002373346A (ja) 2002-12-26
JP3634323B2 JP3634323B2 (ja) 2005-03-30

Family

ID=25418476

Family Applications (2)

Application Number Title Priority Date Filing Date
JP5151798A Pending JPH0696180A (ja) 1992-06-23 1993-06-23 要素間の関係を維持する方法
JP2002119372A Expired - Lifetime JP3634323B2 (ja) 1992-06-23 2002-04-22 図形編集システム

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP5151798A Pending JPH0696180A (ja) 1992-06-23 1993-06-23 要素間の関係を維持する方法

Country Status (6)

Country Link
US (3) US5437008A (ja)
EP (1) EP0576178B1 (ja)
JP (2) JPH0696180A (ja)
AU (1) AU4013193A (ja)
CA (1) CA2098163A1 (ja)
DE (1) DE69332731T2 (ja)

Families Citing this family (106)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5519606A (en) * 1992-01-21 1996-05-21 Starfish Software, Inc. System and methods for appointment reconciliation
US5437008A (en) * 1992-06-23 1995-07-25 Adobe Systems Incorporated Method of establishing constraints and links in a distribution frame between graphical elements and resolving the constaints
US5951300A (en) * 1997-03-10 1999-09-14 Health Hero Network Online system and method for providing composite entertainment and health information
SG48974A1 (en) * 1993-02-08 1998-05-18 Serge Favre Computer aided design and manufacturing system
JP3332476B2 (ja) * 1993-06-21 2002-10-07 キヤノン株式会社 図形修正方法及びそれを実施する情報処理装置
US5485568A (en) * 1993-10-08 1996-01-16 Xerox Corporation Structured image (Sl) format for describing complex color raster images
US5990888A (en) * 1994-03-22 1999-11-23 International Business Machines Corporation Method and system for manipulating graphical objects
US5734761A (en) * 1994-06-30 1998-03-31 Xerox Corporation Editing scanned document images using simple interpretations
US5546520A (en) * 1994-09-30 1996-08-13 International Business Machines Corporation Method, system, and memory for reshaping the frame edges of a window around information displayed in the window
US5682468A (en) * 1995-01-23 1997-10-28 Intergraph Corporation OLE for design and modeling
US5671378A (en) * 1995-03-31 1997-09-23 International Business Machines Corporation Method and system for sizing of graphical user interface objects for localization
US5692184A (en) * 1995-05-09 1997-11-25 Intergraph Corporation Object relationship management system
US5771342A (en) * 1995-06-05 1998-06-23 Saltire Software Method and apparatus for dynamically displaying consistently dimensioned two-dimensional drawings
NL1000701C2 (nl) * 1995-06-30 1996-12-31 Oce Nederland Bv Inrichting en werkwijze voor het extraheren van artikelen uit een document.
JP3109421B2 (ja) * 1995-09-08 2000-11-13 富士ゼロックス株式会社 図表処理装置
US6081277A (en) * 1995-09-28 2000-06-27 Sony Corporation Apparatus and method for controlling image display
TW331612B (en) * 1996-03-05 1998-05-11 Soft Future Design Kk Data processing apparatus and register address translation method.
US5751283A (en) * 1996-07-17 1998-05-12 Microsoft Corporation Resizing a window and an object on a display screen
US6061067A (en) * 1996-08-02 2000-05-09 Autodesk, Inc. Applying modifiers to objects based on the types of the objects
US6215502B1 (en) * 1996-10-28 2001-04-10 Cks Partners Method and apparatus for automatically reconfiguring graphical objects relative to new graphical layouts
US6157380A (en) * 1996-11-05 2000-12-05 International Business Machines Corporation Generic mechanism to create opendoc parts from workplace shell objects
US6304272B1 (en) * 1996-12-10 2001-10-16 Micrografx, Inc. Graphics system and method having objects conformed to a template
US6144974A (en) * 1996-12-13 2000-11-07 Adobe Systems Incorporated Automated layout of content in a page framework
US5999186A (en) * 1997-05-23 1999-12-07 3-Design L.L.C. Reference based parametric dimensioning method and system
US6236407B1 (en) * 1997-07-10 2001-05-22 Bruce Leban Method for creating graphical images
US6035305A (en) * 1997-08-29 2000-03-07 The Boeing Company Computer-based method of structuring product configuration information and configuring a product
US6774899B1 (en) * 1997-09-18 2004-08-10 Mitsubishi Electric Research Laboratories, Inc. Drawing graphs using user selectable visual oragnization features and/or other user controlled constraints
JPH11154240A (ja) 1997-11-20 1999-06-08 Nintendo Co Ltd 取込み画像を用いて画像を作成するための画像作成装置
US6435969B1 (en) 1998-11-03 2002-08-20 Nintendo Co., Ltd. Portable game machine having image capture, manipulation and incorporation
US6295056B1 (en) * 1998-12-03 2001-09-25 International Business Machines Modulating the dimensions of environmentally related and proportionally sized displayed objects to conform selected object dimensions to limitations of a defined display space
JP3556501B2 (ja) * 1999-01-14 2004-08-18 株式会社山武 図面作成装置
US6549199B1 (en) 1999-03-19 2003-04-15 Corel Inc. System and method for adjusting a graphical object
US6480203B1 (en) 1999-03-19 2002-11-12 Corel Inc. System and method for processing an event of a graphical object
US6469716B1 (en) 1999-03-19 2002-10-22 Corel Inc. System and method for processing data for a graphical object
US6469715B1 (en) 1999-03-19 2002-10-22 Corel Inc. System and method for controlling the operation of a graphical object using a project
WO2000063844A1 (en) * 1999-04-20 2000-10-26 Koninklijke Philips Electronics N.V. A method and apparatus for interactively constructing relational geometric objects
US7233326B1 (en) * 1999-04-29 2007-06-19 Autodesk, Inc. Three dimensional modeling and animation system using master objects and modifiers
US6369829B1 (en) * 1999-09-02 2002-04-09 Autodesk, Inc. Constructive systems for objects in a computer-implemented graphics system
US6380951B1 (en) 1999-10-01 2002-04-30 Global Graphics Software Limited Prepress workflow method and program
US6483524B1 (en) 1999-10-01 2002-11-19 Global Graphics Software Limited Prepress workflow method using raster image processor
US6624908B1 (en) 1999-10-01 2003-09-23 Global Graphics Software Limited Method for arranging a prepress workflow
US8132097B2 (en) * 1999-10-15 2012-03-06 Saepio Technologies, Inc. Computer-implemented system for creating a publication and method thereof
US6931591B1 (en) * 1999-10-15 2005-08-16 Saepio Technologies, Inc. Publishing layout wizard
US6826727B1 (en) 1999-11-24 2004-11-30 Bitstream Inc. Apparatus, methods, programming for automatically laying out documents
US7266762B1 (en) 2000-03-10 2007-09-04 International Business Machines Corporation Method and system for distributed autonomous maintenance of bidirectional hyperlink metadata on the web and similar hypermedia repository
US7771482B1 (en) * 2000-05-09 2010-08-10 Ben-Zion Karmon Method for tissue expansion and regeneration using bioresorbable inflatable devices
US7076412B1 (en) * 2000-05-12 2006-07-11 Autodesk, Inc. Method and apparatus for storing and selectively retrieving dimensions of geometry pieces of a mechanical design
US6894686B2 (en) 2000-05-16 2005-05-17 Nintendo Co., Ltd. System and method for automatically editing captured images for inclusion into 3D video game play
JP2002042126A (ja) 2000-05-19 2002-02-08 Sony Computer Entertainment Inc 表示制御プログラムが記憶された記憶媒体、エンタテインメント装置および表示制御プログラム
US6686935B1 (en) * 2000-05-24 2004-02-03 International Business Machines Corporation Method and apparatus for object kerning
US7093196B1 (en) * 2000-06-10 2006-08-15 Oracle International Corporation Method and apparatus for aligning items relatively within an electronic document
US6993708B1 (en) * 2000-07-27 2006-01-31 Robert B Gillig System for automated generation and assembly of specifications documents in CADD environments
US20020111969A1 (en) * 2000-09-28 2002-08-15 Halstead Robert H. System and method for processing graphical objects for layout using an elastic difference operation
US6919890B2 (en) * 2000-09-28 2005-07-19 Curl Corporation Grid and table layout using elastics
US7181699B2 (en) * 2001-06-13 2007-02-20 Microsoft Corporation Dynamic resizing of dialogs
US6950993B2 (en) * 2001-08-02 2005-09-27 Microsoft Corporation System and method for automatic and dynamic layout of resizable dialog type windows
US7068271B2 (en) * 2001-09-05 2006-06-27 Autodesk, Inc. Assembly patterns by feature association
US6907573B2 (en) 2001-09-28 2005-06-14 Autodesk, Inc. Intelligent constraint definitions for assembly part mating
US6928618B2 (en) * 2001-10-23 2005-08-09 Autodesk, Inc. Intelligent drag of assembly components
US20030163786A1 (en) * 2002-02-25 2003-08-28 Harold Shields Image presentation system
US7339597B1 (en) 2002-06-21 2008-03-04 Adobe Systems Incorporated Creating and manipulating related vector objects in an image
US7027071B2 (en) * 2002-07-02 2006-04-11 Hewlett-Packard Development Company, L.P. Selecting elements from an electronic document
US20040221265A1 (en) * 2003-02-07 2004-11-04 Smart Technologies Inc. Connected and overlapped shapes enhancements
US20080143725A1 (en) 2004-02-09 2008-06-19 Smart Technologies Inc. Connected and overlapped shapes enhancements
US20040207607A1 (en) * 2003-04-15 2004-10-21 Will Specks Operating element having an integrated display element, and a method for command output using an operating element
US7360157B1 (en) 2003-09-19 2008-04-15 Microsoft Corporation Aligning content in an electronic document
DE10352341A1 (de) * 2003-11-06 2005-11-03 Mediacare Gmbh & Co. Kg Verfahren zur Veränderung der Abmessungen eines elektronisch gespeicherten Bildes
JP4241410B2 (ja) * 2004-01-30 2009-03-18 キヤノン株式会社 レイアウト調整方法および装置およびレイアウト調整プログラム
JP4250540B2 (ja) * 2004-01-30 2009-04-08 キヤノン株式会社 レイアウト調整方法および装置およびレイアウト調整プログラム
JP4110105B2 (ja) * 2004-01-30 2008-07-02 キヤノン株式会社 文書処理装置及び文書処理方法及び文書処理プログラム
JP4165888B2 (ja) * 2004-01-30 2008-10-15 キヤノン株式会社 レイアウト制御方法、レイアウト制御装置及びレイアウト制御プログラム
US7359902B2 (en) * 2004-04-30 2008-04-15 Microsoft Corporation Method and apparatus for maintaining relationships between parts in a package
US8661332B2 (en) 2004-04-30 2014-02-25 Microsoft Corporation Method and apparatus for document processing
US7383500B2 (en) 2004-04-30 2008-06-03 Microsoft Corporation Methods and systems for building packages that contain pre-paginated documents
US7755786B2 (en) 2004-05-03 2010-07-13 Microsoft Corporation Systems and methods for support of various processing capabilities
US8363232B2 (en) 2004-05-03 2013-01-29 Microsoft Corporation Strategies for simultaneous peripheral operations on-line using hierarchically structured job information
US7580948B2 (en) * 2004-05-03 2009-08-25 Microsoft Corporation Spooling strategies using structured job information
US7519899B2 (en) * 2004-05-03 2009-04-14 Microsoft Corporation Planar mapping of graphical elements
US20050246384A1 (en) * 2004-05-03 2005-11-03 Microsoft Corporation Systems and methods for passing data between filters
US7607141B2 (en) * 2004-05-03 2009-10-20 Microsoft Corporation Systems and methods for support of various processing capabilities
US7634775B2 (en) 2004-05-03 2009-12-15 Microsoft Corporation Sharing of downloaded resources
US8243317B2 (en) 2004-05-03 2012-08-14 Microsoft Corporation Hierarchical arrangement for spooling job data
JP4047308B2 (ja) * 2004-08-06 2008-02-13 キヤノン株式会社 レイアウト処理方法、情報処理装置及びコンピュータプログラム
JP4095592B2 (ja) * 2004-08-06 2008-06-04 キヤノン株式会社 情報処理装置、情報処理方法ならびにプログラム
US7889361B2 (en) * 2004-10-15 2011-02-15 Electronics For Imaging, Inc. Methods and apparatus for adaptive imposition templates
US7584111B2 (en) * 2004-11-19 2009-09-01 Microsoft Corporation Time polynomial Arrow-Debreu market equilibrium
JP4393444B2 (ja) * 2005-11-02 2010-01-06 キヤノン株式会社 情報処理方法およびその装置
US20070157160A1 (en) * 2005-12-30 2007-07-05 Udo Arend Auto-zoomable snippets in multiple snippet windows
US8694953B2 (en) * 2006-08-14 2014-04-08 Payman Khodabandehloo Tool and methodology for enterprise software applications
JP2008129729A (ja) * 2006-11-17 2008-06-05 Olympus Corp 情報処理装置、及び制御プログラム
US8015581B2 (en) * 2007-01-05 2011-09-06 Verizon Patent And Licensing Inc. Resource data configuration for media content access systems and methods
US8345043B2 (en) 2007-04-13 2013-01-01 Autodesk, Inc. Solving networks of geometric constraints
US7853887B2 (en) 2007-06-26 2010-12-14 Adobe Systems Incorporated Detection and preview of graphical elements within a graphic
US20090066697A1 (en) * 2007-09-11 2009-03-12 Vistaprint Technologies Limited Caricature tool
US9324168B2 (en) * 2008-01-31 2016-04-26 Microsoft Technology Licensing, Llc Constraint-based correction of shape positions in a diagram
KR101232623B1 (ko) * 2010-12-07 2013-02-13 삼성메디슨 주식회사 사용자 메뉴의 편집기능을 구현하는 방법
JP5673264B2 (ja) * 2011-03-18 2015-02-18 富士通株式会社 図形描画プログラム、図形描画装置
US10467714B2 (en) 2013-03-15 2019-11-05 Stevenson Systems, Inc. Interactive building stacking plan user interface
US20150160838A1 (en) * 2013-12-06 2015-06-11 Takeshi SHIRABE Method and apparatus for automatic graphic editing with map-dependent constraints
US9854258B2 (en) * 2014-01-06 2017-12-26 Disney Enterprises, Inc. Video quality through compression-aware graphics layout
WO2016064555A1 (en) * 2014-10-22 2016-04-28 Stevenson Systems, Inc. Interactive building stacking plan user interface
USD829697S1 (en) * 2014-12-30 2018-10-02 Sony Corporation Wireless communication device
US11106339B2 (en) * 2017-09-19 2021-08-31 Adobe Inc. Designing and resizing graphical user interfaces
US11269501B2 (en) 2019-11-13 2022-03-08 Figma, Inc. System and method for implementing design system to provide preview of constraint conflicts
US11733973B2 (en) 2020-09-16 2023-08-22 Figma, Inc. Interactive graphic design system to enable creation and use of variant component sets for interactive objects
US11966572B2 (en) 2021-11-16 2024-04-23 Figma, Inc. Commenting feature for graphic design systems

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4974174A (en) * 1987-08-24 1990-11-27 Wang Laboratories, Inc. Alignment method for positioning textual and graphic objects
US5371845A (en) * 1990-04-27 1994-12-06 Ashlar, Inc. Technique for providing improved user feedback in an interactive drawing system
US5123087A (en) * 1990-04-27 1992-06-16 Ashlar, Inc. Geometric inference engine
US5333254A (en) * 1991-10-02 1994-07-26 Xerox Corporation Methods of centering nodes in a hierarchical display
US5437008A (en) * 1992-06-23 1995-07-25 Adobe Systems Incorporated Method of establishing constraints and links in a distribution frame between graphical elements and resolving the constaints

Also Published As

Publication number Publication date
US5437008A (en) 1995-07-25
DE69332731D1 (de) 2003-04-10
US5745122A (en) 1998-04-28
US5577189A (en) 1996-11-19
AU4013193A (en) 1994-01-06
CA2098163A1 (en) 1993-12-24
EP0576178A2 (en) 1993-12-29
EP0576178A3 (en) 1995-01-25
EP0576178B1 (en) 2003-03-05
JP3634323B2 (ja) 2005-03-30
DE69332731T2 (de) 2003-12-18
JPH0696180A (ja) 1994-04-08

Similar Documents

Publication Publication Date Title
JP3634323B2 (ja) 図形編集システム
US5675753A (en) Method and system for presenting an electronic user-interface specification
US5689665A (en) Apparatus and method for displaying windows
JP4095558B2 (ja) 文書処理装置及び文書処理方法及びコンピュータプログラム
AU2003237867B8 (en) System for hosting graphical layout/presentation objects
JP2741826B2 (ja) 協働的コンピュータ・ベース・システムおよび操作する方法
US7117452B1 (en) System and method for customizing workspace
US5999945A (en) Method for organizing files associated with a job ticket used in a network printing system
EP0989522B1 (en) Structured image (SI) format for describing complex colour raster images
US6836878B1 (en) Visual programming from a tree structure
US20020023111A1 (en) Draw-based editor for web pages
US20080022196A1 (en) Method and apparatus for implementing web pages having smart tables
AU2004202329A1 (en) Framework for creating modular web applications
US6311196B1 (en) Method and apparatus for implementing web pages having master borders
US10410318B2 (en) Inferring diagram structure through implicit shape relationships
CA2337344A1 (en) Method and apparatus for interacting with a source code control system
JPH0719294B2 (ja) コンピユ−タを用いてグラフを作成する方法
JP2003308145A (ja) グラフィックユーザーインタフェースの変更方法及びこのための記録媒体
US7071934B1 (en) Method and apparatus for visually-oriented navigation of compared object versions
US20020054155A1 (en) Data module design system
JPH05233185A (ja) ユーザ・インタフェース制御方式
JPH05313845A (ja) グラフィカルユーザインタフェース管理方式
JPH10171755A (ja) 業務システム
Cisco Objective View Editor
Cisco Objective View Editor

Legal Events

Date Code Title Description
A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20031125

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040218

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040413

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20040630

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20040705

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041013

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: 20041124

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20041222

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: 20090107

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20100107

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110107

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110107

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20120107

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20120107

Year of fee payment: 7

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: R3D02

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

Free format text: PAYMENT UNTIL: 20130107

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20130107

Year of fee payment: 8

EXPY Cancellation because of completion of term