JPH08297737A - 任意図形クリッピング方法および装置 - Google Patents

任意図形クリッピング方法および装置

Info

Publication number
JPH08297737A
JPH08297737A JP8087760A JP8776096A JPH08297737A JP H08297737 A JPH08297737 A JP H08297737A JP 8087760 A JP8087760 A JP 8087760A JP 8776096 A JP8776096 A JP 8776096A JP H08297737 A JPH08297737 A JP H08297737A
Authority
JP
Japan
Prior art keywords
clipping
rectangular
buffer
path
arbitrary
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.)
Pending
Application number
JP8087760A
Other languages
English (en)
Inventor
D Katz Barry
バリー・ディー・カーツ
J Kreibaum Steven
スティーブン・ジェイ・クライボーン
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.)
HP Inc
Original Assignee
Hewlett Packard Co
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hewlett Packard Co filed Critical Hewlett Packard Co
Publication of JPH08297737A publication Critical patent/JPH08297737A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/30Clipping

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Computer Graphics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Generation (AREA)
  • Image Processing (AREA)

Abstract

(57)【要約】 【課題】高速に、しかもメモリ使用量が比較的少なくて
済む(低コスト)、非矩形多角形に対してオブジェクト
をクリップする方法と装置を提供する。 【解決手段】オリジナルのページに対して非矩形クリッ
ピングパス(CP)が定義される(901)。次に、非
矩形クリッピングパスの境界領域の幅と高さに正確に同
じになるモザイクバッファ20と呼ばれる矩形の境界が
作成される(902)。CP用のあらゆるオブジェクト
は高速矩形クリッピング処理を用いてモザイクバッファ
(MB)に対してクリップされる(903、904)。
すべてのオブジェクトが非矩形クリッピングパスに対し
てクリップされた後、モザイクバッファがパターンバッ
ファ(PB)に変換される(905)。最後に、PBの
内容がオリジナルのクリッピングパスに対してクリップ
される(906)。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はコンピュータグラフィッ
クスシステムに関し、より詳細には任意の形状の多角形
をクリップする方法に関する。任意の形状の多角形のク
リッピングは任意の形状の多角形によって区切られた領
域の外側にあるオブジェクトの各部を除去する処理であ
る。
【0002】
【従来の技術】グラフィックプリンタを含むコンピュー
タグラフィックスシステムはワールド座標系内でピクチ
ャを定義する。これは、ユーザーが適宜選択する任意の
デカルト座標系でも定義できる。ワールド座標内で定義
されるピクチャはグラフィックシステムにとって装置座
標にマッピングされる。装置座標とはたとえばコンピュ
ータスクリーンや印刷されるページである。通常、グラ
フィックシステムは、ユーザーがピクチャ定義のどの領
域を表示するか、またそれを表示装置のどこに表示すべ
きかを指定させることができる。1つの領域だけを選択
して表示することもできるし、またいくつかの領域を選
択することもできる。かかる領域は別々の表示位置に表
示することができる。またあるいは1つの領域をそれよ
り大きい領域への小さな挿入部分とすることもできる。
この変換処理には、選択された領域を変形しスケーリン
グする動作とかかる領域の外側のピクチャ部分を削除す
る動作が含まれる。これらの動作はウィンドウイングお
よびクリッピングと呼ばれる。
【0003】ワールド座標内で指定された矩形の領域は
ウィンドウと呼ばれる。ウィンドウがマッピングされる
表示装置上の矩形領域はビューポートと呼ばれる。ビュ
ーポートの位置を変えることによって、オブジェクトを
出力装置の異なる位置に表示することができる。また、
ビューポートの大きさを変化させることによって、オブ
ジェクトの大きさや比率(proprtion)を変化させること
ができる。異なる大きさのウィンドウをビューポート上
に連続してマッピングするとズーミング効果を得ること
ができる。ウィンドウを小さくしていくことによって、
ユーザーはシーンの一部を拡大して大きなウィンドウで
は表示されない細部を見ることができる。同様に、ウィ
ンドウを徐々に大きくすることによってシーンの一部分
を縮小していき全体像を見ることができる。固定された
大きさのウィンドウをより大きなピクチャを横切るよう
に移動させることにパン効果が得られる。
【0004】ウィンドウをビューポートにマッピングす
ると、そのウィンドウ内のピクチャ部分だけが表示され
る。そのウィンドウの外にあるものはすべて放棄され
る。指定された境界線の外側に定義されたピクチャのす
べての部分を除去する手順をクリッピングと呼ぶ。
【0005】クリッピング手順は線クリッピング法か多
角形クリッピング法のいずれかに分類される。線クリッ
ピング法は全体がウィンドウ境界内に入っている線と全
部あるいは一部をクリップすべき線を判定する。部分的
にクリップすべき線については、ウィンドウ境界との交
差点を計算しなければならない。ピクチャには無数の線
分が含まれるため、クリッピング処理はできるだけ効率
的に行なわなければならない。かかる線クリッピング法
の1つがCohenとSutherlandによって開発された。ま
た、他の線クリッピング法がLiangとBarskyによって開
発された。これらの線クリッピング法はいずれもコンピ
ュータグラフィックスの分野では周知である。
【0006】LiangとBarskyの開発した他のクリッピン
グ技術では、エッジを助変数方程式で表わすことによっ
てクリッピングを行なう。この表示法を用いると、入力
多角形の特定のエッジの出力多角形に対する対応が数値
化される。Communication ofthe ACM、26、11、868-877
(1983年11月)のYou-Dong LiangとBrian A. Barskyの
“An Analysis and Algorithm for Polygon Clipping"
を参照されたい。LiangとBarskyの処理の利点は任意の
形状のウィンドウを助変数線方程式(parametricline eq
uation)を用いてウィンドウの境界とクリップすべき領
域の境界の両方を記述することができることである。
【0007】
【発明が解決しようとする課題】上述したように、当該
技術分野では矩形クリッピングパス(矩形のクリッピン
グ対象)に対する多数のクリッピング法が知られてい
る。かかるクリッピング法のいくつかは任意形状多角形
クリッピングパス(任意形状多角形のクリッピング対
象)に対するクリッピングにも適用することができる。
しかし、任意形状多角形クリッピングパスが用いられる
と、クリッピング法のスループットは大幅に低下する。
特に、レーザープリンタ等のリアルタイムクリッピング
を必要とするアプリケーションでは、クリッピングは割
り当てられた時間内で完了しなければならず、いかにク
リッピング法のスループットを向上させるかが問題とな
る。
【0008】本発明では、以上のような問題点を解決す
るために、高速に、しかもメモリ使用量が比較的少なく
て済む(低コスト)、非矩形多角形に対してオブジェク
トをクリップする方法と装置を提供することを目的とす
る。
【0009】
【課題を解決するための手段】本発明は非矩形多角形に
対してオブジェクトをクリップする方法と装置に関す
る。本発明では、まずモザイクバッファとも呼ばれる矩
形バッファを定義する。この矩形バッファは非矩形多角
形の最大高さと最大幅に等しい高さと幅を有する。次
に、高速矩形クリッピング法を用いてこの矩形バッファ
に対してオブジェクトがクリップされる。クリッピング
が完了すると、矩形バッファはパターンバッファに変換
される。最後に、このパターンバッファが任意クリッピ
ング法を用いて非矩形多角形に対してクリップされる。
【0010】
【実施例】本発明はここに説明する具体的実施例には限
定されない。上述したように、当該技術分野では矩形ク
リッピングパスに対する多数のクリッピング法が知られ
ている。かかるクリッピング法のいくつかは任意形状多
角形クリッピングパスに対するクリッピングにも適用す
ることができる。しかし、任意形状多角形クリッピング
パスが用いられると、クリッピング法のスループットは
大幅に低下する。かかるスループットの影響を受けない
アプリケーションもあるが、悪影響を受けるアプリケー
ションもある。特に、レーザープリンタ等のリアルタイ
ムクリッピングを必要とするアプリケーションでは、ク
リッピングは割り当てられた時間内で完了しなければな
らない。以下の説明ではレーザープリンタの特定のアプ
リケーションに焦点を当てることによって、かかるリア
ルタイムクリッピングにおける制約はより明確に理解さ
れるであろう。
【0011】電子写真式プリンタとも呼ばれる今日のレ
ーザープリンタでは、媒体が移動し始めるとレーザーに
は画像データが連続的に供給されねばならない。レーザ
ーが適切なタイミングでデータを受け取れるようにする
ためにはさまざまな方法が用いられる。簡単な方法とし
ては、レーザープリンタのフォーマッティングシステム
に充分な処理能力を持たせてすべての計算をレーザーが
媒体に印刷を行なうより速く行なうことができるように
する方法がある。しかし、ページが複雑になってプロセ
ッサがレーザーに連続的なデータストリームを供給でき
ない場合、このページをプリンタのメモリに事前にレン
ダリングし、その後メモリからレーザーに直接読み出さ
なければならない。かかる事前処理によってかなりの量
のメモリが消費される。ページが多数の任意クリッピン
グパスを含んでいる場合、プロセッサの負荷が大きくな
り過ぎ、メモリへのこのページの事前レンダリングが必
要になることがある。
【0012】周知のクリッピング法を用いて、矩形クリ
ッピングパスに対するオブジェクトのクリッピングを、
任意形状クリッピングパスに対するクリッピングよりは
るかに高速に行なうことができる。したがって、任意形
状クリッピングパスの数を制限することが有益である。
しかし、かかる制限を設けることは実用的ではなく、ま
た好ましくもない。本発明ではこれに基づいて任意クリ
ッピングパス法を用いなければならない数を減少させ
る。
【0013】すなわち、本発明の実施例ではモザイクバ
ッファと呼ばれる矩形クリッピング領域が定義される。
後続の着信オブジェクトはすべてこの矩形バッファに対
してクリップされる。モザイクバッファは矩形であるた
め、より効率的な矩形クリッピング法を用いることがで
きる。すべての着信オブジェクトがモザイクバッファに
対してクリッピングされると、モザイクバッファの内容
がオリジナルの任意クリッピングパスに対してクリップ
される。したがって、この任意クリッピングルーチン
は、モザイクバッファ内の複数のオブジェクトのそれぞ
れに対して実行されるのではなく1回だけ実行される。
より高速な任意クリッピングについては、ラスタ演算任
意クリッピング法を用いてモザイクバッファに内容がオ
リジナルのクリッピングパスに対してクリップされる。
【0014】以上の原理に基づいて次に本発明の実施例
を詳細に説明する。図1にはページ10と任意パス11
を示す。本発明以前には、ページ10上の任意パス11
にレンダリングすべきそれぞれのオブジェクトは任意パ
スクリッピング法を用いて任意パス11に対してクリッ
ピングされる。しかし、以下の説明から当業者には任意
クリッピング法の実行回数が1回に低減されることが理
解されるであろう。
【0015】図2に示すように、本実施例の最初のステ
ップは矩形のバッファ(ここではモザイクバッファ20
と呼ぶ)を定義することである。モザイクバッファ20
は任意パス11を完全に包含するものでなければならな
い。次に、図3に示すように、テキスト31、円30等
のオブジェクトがモザイクバッファ20にクリップされ
る。モザイクバッファ20は矩形であるため、効率的な
矩形クリッピング法が用いられる。任意パス11に対し
て指定されたすべてのオブジェクトがモザイクバッファ
20にクリップされると、モザイクバッファは図4に示
すようにパターン40に変換される。
【0016】使用される矩形クリッピング法に応じて、
それぞれのオブジェクトはモザイクバッファ20へのク
リッピングにさいしてラスタ化される。モザイクバッフ
ァ20をパターン40に変換する処理によって、矩形ク
リッピング中にラスタ化されなかったあらゆるオブジェ
クトがラスタ化され、これによってパターン40はラス
タ(すなわちビットマップ)情報のみを含む。モザイク
バッファ20がすべてのラスタ情報を含む場合、パター
ン40への変換は単なる名前の変更である。次に、図5
に示すように、パターン40が任意パス11に対してク
リップされる。このクリッピングの結果を図6に示す。
【0017】任意クリッピングパス11に対するパター
ン40のクリッピングはいくつかの方法で実行すること
ができる。本実施例では次に説明するラスタ演算法が用
いられる。一代替実施例では、上述したような周知の任
意クリッピング法の1つを用いてこの任意クリッピング
を行なうことができる。ラスタ演算任意クリッピング法
(ここではROPと称する)は大きな性能上の利点を有
するが、メモリの消費量が大きいという欠点がある。上
述した任意クリッピング法ではROP法におけるメモリ
消費の問題は発生しない。しかし、かかる任意クリッピ
ング法はなかりの計算資源を必要とする。
【0018】図7にはROP任意クリッピング法の一実
施例を示す。ここでは、任意パス71に対してパターン
70がクリップされる。クリッピング動作を実行する前
に、任意パス71に充填パターン72が入れられる。こ
れら3つの入力がROP機械73によって処理されて最
終出力60が生成される。
【0019】ROP機械73は任意パス71内のパター
ン70と充填パターン72に対するビットマップ入力に
基づいてクリッピングを実行する。ビットマップ領域に
おけるこの演算条件によってROP処理はメモリを大き
く消費するものとなっている。
【0020】図8には図7に示すROP機械73によっ
て実行される実際のROP処理をより詳細に示す。ま
ず、パターン70は充填された任意パス81とビットご
とに論理和される。充填された任意パス81は図8には
その外形を円で示している。この想像上の外形線は図8
の理解を助けるために加えたものである。この論理演算
の結果を要素82に示す。次に、要素82とオリジナル
のパターン70との排他的論理和が取られる。この論理
演算の出力が最終的なクリップされたオブジェクト74
となる。当業者には、論理和と排他的論理和の演算はハ
ードウエアとソフトウエアのいずれにおいても効率的に
実行しうることは明らかである。したがって、ROPク
リッピング演算をハードウエアで実行することによっ
て、ROPクリッピング演算は比較的短い時間でほとん
ど処理パワーを用いることなく実行される。
【0021】図1に示すオリジナルの任意パス11がペ
ージ10に比較して大きい場合、上述したROP法のメ
モリ条件がメモリ資源を越えてしまう。このような条件
下では、当該分野で周知のより計算量の大きい任意クリ
ッピング法を用いなければならない。どのクリッピング
を用いるべきかを決めるかかる判断は処理の早い段階で
行なわれなければならない。図4に関連して、モザイク
バッファ20からパターン40への変換はモザイクバッ
ファ20をビットマップパターン40にラスタ化するこ
とによって行なわれると述べた。しかし、ROP法の代
わりに任意クリッピング法を用いる場合、このラスタ化
は不要である。したがって、パターン40はラスタ情報
だけではなくベクトル、ラスタ、およびフォント情報を
含む。上述したように、図5において、任意クリッピン
グ法が実行され、パターン40が任意パス11に対して
クリップされて図6に示すような結果が得られる。
【0022】次に、図9を参照して本実施例の論理フロ
ーを示す。図1に示すようなオリジナルのページ10に
対して非矩形クリッピングパス(CP)が定義される
(901)。当業者には、非矩形クリッピングパスは多
数の資源に源を発することができることは明らかであろ
う。しかし、プリンタの例でさらに説明すると、プリン
タに取り付けられたシステムがこの非矩形クリッピング
パスを定義し、その定義をプリンタに伝える。
【0023】次に、図2においてモザイクバッファ20
と呼ばれる矩形の境界が作成される(902)。このモ
ザイクバッファの寸法は非矩形クリッピングパスの境界
領域の幅と高さに正確に同じになるように定義される。
CP用のあらゆるオブジェクトは高速矩形クリッピング
処理を用いてモザイクバッファ(MB)に対してクリッ
プされる(903、904)。すべてのオブジェクトが
非矩形クリッピングパスに対してクリップされた後、モ
ザイクバッファがパターンバッファ(PB)に変換され
る(905)。どの高速矩形クリッピング処理(90
3)を用いるかによってMBからPBへの変換にどのよ
うな演算を行なうべきかが決まる。たとえば、高速矩形
クリッピング処理(903)からベクトル情報が出力さ
れる場合、MBはPBにラスタ化しなければならない。
あるいは高速矩形クリッピング処理(903)がクリッ
ピング処理の一部としてラスタ化された出力を生成する
ことがある。この場合、MBからPBへの変換はPBを
MBから複製することにほかならない。当業者には他の
可能性が存在することは明らかであろう。
【0024】最後に、PBの内容がオリジナルのクリッ
ピングパスに対してクリップされる(906)。この任
意クリッピング処理はさまざまな方法で実行することが
できるが、図9ではROP法が用いられている。ROP
法を示す簡略化したフローチャートを図11に示す。ま
ず、非矩形クリッピングパスに充填パターンが充填され
(1101)、ビットマップ表示に変換される。ビット
演算においては、このパターンバッファと充填された非
矩形クリッピングパスとの論理和がとられる(110
2)。最後に、1102の結果とオリジナルのパターン
バッファとの排他的論理和がとられ、所望の出力が生成
される。
【0025】図10を参照して、別の実施例の論理フロ
ーを説明する。図9に示すフローチャートと同様に、ま
ず非矩形クリッピングパス(CP)が定義される(10
01)。次に、図2でモザイクバッファ20と呼ばれる
矩形の境界が作成される(1002)。CP用のあらゆ
るオブジェクトは高速矩形クリッピング処理を用いてモ
ザイクバッファ(MB)に対してクリップされる(10
03、1004)。すべてのオブジェクトが非矩形クリ
ッピングパスに対してクリップされた後、モザイクバッ
ファがパターンバッファに変換される(1005)。本
実施例では任意クリッピング処理が用いられ、したがっ
て、MBからPBへの変換中にあらゆるベクトル情報を
保持することが望ましい。したがって、MBの内容が単
純にPBに移動される。最後に、PBの内容がオリジナ
ルの非矩形クリッピングパスに対してクリップされる
(1006)。
【0026】図12にはプリンタあるいはグラフィック
スシステムのブロック図を示す。中央演算処理装置(C
PU)2000がバスシステムによってRAM 200
2、ROM 2003、出力2004、入出力(I/
O)2005、および他の周辺装置2001に接続され
ている。通常動作では、CPU 2000はI/O 2
005を介してコマンドとデータを受け取る。I/O
2005を介して受け取った情報に基づいて、CPU
2000はROM 2003あるいはRAM 2002
に格納された各種のプログラムを実行する。出力200
4は陰極線管(CRT)等のような表示装置とすること
もでき、また次に説明するようにプリンタとすることも
できる。
【0027】図12で示すシステムで本発明を実行しよ
うとする場合、まず非矩形クリッピングパスがI/O
2005を介してCPU 2000に転送される。次
に、この非矩形クリッピングパスはRAM 2002に
格納される。次に、CPU 2000はROM 200
3に格納された命令にしたがってモザイクバッファを定
義し、このモザイクバッファもまたRAM 2002に
格納される。後続のあらゆるオブジェクト(これにはテ
キスト、ベクトル、およびラスタ図形が含まれうる)は
I/O 2005を介してCPU 2000に送られ
る。CPU 2000はそれぞれのオブジェクトをモザ
イクバッファに対してクリップする。最後に、CPU
2000はI/O 2005を介して、新たなクリッピ
ングパスを定義すべきことあるいはすべてのオブジェク
トが送出されたことを示すコマンドを受け取る。
【0028】CPU 2000がこの非矩形クリッピン
グパスのためのすべてのオブジェクトをクリップした
後、本発明によればモザイクバッファがパターンバッフ
ァに変換される。次に、CPU 2000はこのパター
ンバッファをオリジナルの非矩形クリッピングパスに対
してクリップし、その結果をRAM 2002に格納す
る。かかるクリッピングはROPハードウエア2006
で実行することもできるし、また他の任意クリッピング
法で実行することもできる。
【0029】ROPハードウエア2006を使用するた
めに、CPU 2000はパターンバッファ、充填バッ
ファ、および被矩形クリッピングパスをROPハードウ
エア2006に転送する。ROPハードウエア2006
の出力は出力2004あるいはRAM 2002に送ら
れる。任意クリッピング法を用いる場合、CPU 20
00は必要な命令を実行してその任意クリッピング法を
実行する。
【0030】CPU 2000は本発明には不必要な追
加の格納スペースや他の周辺装置を必要とすることがあ
る。かかる追加の周辺装置は図12には簡単に周辺装置
2001として示されている。
【0031】本発明の実施例を電子写真式プリンタとの
関連において説明したが、本発明は他の種類のグラフィ
ックシステムにも適用することができる。かかるシステ
ムとしてはコンピュータシステム、撮像システムがあ
る。
【0032】以上、本発明の実施例について詳述した
が、以下、本発明の各実施態様の例を示す。 (実施態様1).ある高さと幅を有する任意クリッピン
グパス(11)に対してオブジェクト(30、31)を
クリップする方法であって、前記の任意クリッピングパ
ス(11)の高さと幅に等しい高さと幅を有する矩形バ
ッファ(20)を定義するステップ(902、100
2)、前記のオブジェクト(30、31)を前記の矩形
バッファ(20)に対して矩形クリッピングするステッ
プ(903、1003)、および前記の矩形バッファ
(20)を前記の任意クリッピングパス(11)に対し
て任意クリッピングするステップ(906、1006)
を有する方法。 (実施態様2).前記のクリッピングステップ(90
3、1003)は矩形クリッピング法によって実行され
る請求項1に記載の方法。 (実施態様3).前記の任意クリッピングステップ(9
06、1006)はラスタ演算法(1006)によって
実行される請求項1に記載の方法。 (実施態様4).前記のラスタ演算法(1006)は、
前記の任意クリッピングパス(11)に充填パターン
(81)を充填するステップ(1101)、前記の矩形
バッファ(70)と前記の充填(81)された任意クリ
ッピングパターン(11)の論理和を求める論理演算を
実行して中間結果(82)を生成するステップ(110
2)、および前記の中間結果と前記の矩形バッファ(1
0)の排他的論理和を求める論理演算を実行するステッ
プ(1103)を有する請求項3に記載の方法。 (実施態様5).ある最大高さと最大幅を有す非矩形多
角形(11)に対してオブジェクト(30、31)をク
リップする方法であって、前記の非矩形多角形(11)
の最大高さに等しい高さと前記の非矩形多角形(11)
の最大幅に等しい幅を有する矩形バッファ(20)を定
義するステップ(902、1002)、まず、前記のオ
ブジェクト(30、31)を前記の矩形バッファ(2
0)に対してクリップするステップ(903、100
3)、前記の矩形バッファ(20)をパターンバッファ
(40)に変換するステップ(905、1005)、お
よび前記のパターンバッファ(40)を前記の非矩形多
角形(11)に対して再度クリップするステップ(90
6、1006)を有する方法。 (実施態様6).前記の変換ステップ(905、100
5)では前記の矩形バッファ(20)が前記のパターン
バッファ(40)内のビットマップ表示に変換される請
求項5に記載の方法。 (実施態様7).前記の第2のクリッピングステップ
(906、1006)はラスタ演算法(1006)によ
って実行される請求項6に記載の方法。 (実施態様8).前記のラスタ演算法(1006)は、
前記の任意クリッピングパス(11)に充填パターン
(81)を充填するステップ(1101)、前記のパタ
ーンバッファ(40)と前記の充填された任意クリッピ
ングパターン(11)の論理和を求める論理演算を実行
して中間結果(82)を生成するステップ(110
2)、および前記の中間結果と前記のパターンバッファ
(40)の排他的論理和を求める論理演算を実行するス
テップ(1103)を有する請求項7に記載の方法。 (実施態様9).複数のオブジェクト(30、31)を
非矩形多角形(11)からクリップする装置であって、
メモリ(2002、2003)、前記のメモリ(200
2、2003)に格納された一連の命令を実行する、前
記のメモリ(2002、2003)に接続されたプロセ
ッサ(2000)、前記の非矩形多角形(11)を包含
する前記の矩形バッファ(20)を定義する手段(90
2、1002)、前記の複数のオブジェクト(30、3
1)を前記の矩形バッファ(20)に対して矩形クリッ
ピングする手段であって、前記のクリップされた複数の
オブジェクトは前記のプロセッサ(2000)によって
前記のメモリ(2002)に格納される手段(903、
1003)、前記の矩形バッファ(20)をパターンバ
ッファ(40)に変換する手段であって、前記のパター
ンバッファ(40)はメモリ(2002)に格納される
手段(905、1005)、および前記のパターンバッ
ファ40を前記の非矩形多角形(11)に対してクリッ
プする(906、1005)手段(2006)を有する
装置。 (実施態様10).前記の複数のオブジェクト(30、
31)を表示するための、前記のプロセッサ(200
0)に接続された表示手段(2004)を有し、前記の
プロセッサ(2000)は前記のクリップされたパター
ンバッファを前記のメモリ(2002)から前記の表示
手段(2004)に転送する請求項9に記載の装置。
【0033】
【発明の効果】以上のように、本発明を用いると、高速
に、しかもメモリ使用量が比較的少なくて済む(低コス
ト)、非矩形多角形に対してオブジェクトをクリップす
る方法と装置を提供することができる。
【図面の簡単な説明】
【図1】ページ10と任意パス11を示す図である。
【図2】モザイクバッファ20と任意パス11の関係を
示す図である。
【図3】モザイクバッファ20への矩形のクリッピング
の結果を示す図である。
【図4】モザイクバッファ20からパターン40への変
換を示す図である。
【図5】任意パス11に対するパターン40のクリッピ
ングを示す図である。
【図6】図5で実行されたクリッピングの結果を示す図
である。
【図7】ROP機械への入力を示す概略図である。
【図8】図7で用いる任意クリッピングのラスタ演算法
を示す概略図である。
【図9】本発明の実施例を示すフローチャートである。
【図10】本発明の代替実施例を示すフローチャートで
ある。
【図11】図7で用いた任意クリッピングのラスタ演算
法(ROP)を示すフローチャートである
【図12】本発明にしたがって用いるプリンタあるいは
図形表示システムのブロック図である。
【符号の説明】
10:ページ 11:任意パス 20:モザイクバッファ 30:円 31:テキスト 40:パターン 60:最終出力 70:パターン 71:任意パス 72:充填パターン 73:ROP機械 81:任意パス 82:要素 74:オブジェクト 901:非矩形クリッピングパスの定義 902:モザイクバッファの作成 903、904:高速矩形クリッピング 905:モザイクバッファからパターンバッファへの変
換 906:パターンバッファのクリッピング 1101:非矩形クリッピングパスへの充填パターンの
充填 1102:パターンバッファと充填された非矩形クリッ
ピングパスとの論理和 1001:非矩形クリッピングパスの定義 1002:モザイクバッファの作成 1003、1004:高速矩形クリッピング処理 1005:モザイクバッファからパターンバッファへの
変換 1006:パターンバッファのクリッピング 2000:中央演算処理装置(CPU) 2001:他の周辺装置 2002:RAM 2003:ROM 2004:出力 2005:入出力(I/O) 2006:ROPハードウエア

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】ある高さと幅を有する任意クリッピングパ
    スに対してオブジェクトをクリップする方法であって、 前記の任意クリッピングパスの高さと幅に等しい高さと
    幅を有する矩形バッファを定義するステップ、 前記のオブジェクトを前記の矩形バッファに対して矩形
    クリッピングするステップ、および前記の矩形バッファ
    を前記の任意クリッピングパスに対して任意クリッピン
    グするステップを有する方法。
JP8087760A 1995-04-12 1996-04-10 任意図形クリッピング方法および装置 Pending JPH08297737A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US422,188 1989-10-16
US08/422,188 US5966136A (en) 1995-04-12 1995-04-12 Efficient method for clipping numerous objects against an arbitrary clipping path

Publications (1)

Publication Number Publication Date
JPH08297737A true JPH08297737A (ja) 1996-11-12

Family

ID=23673763

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8087760A Pending JPH08297737A (ja) 1995-04-12 1996-04-10 任意図形クリッピング方法および装置

Country Status (2)

Country Link
US (1) US5966136A (ja)
JP (1) JPH08297737A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006078906A (ja) * 2004-09-10 2006-03-23 Ricoh Co Ltd ベルト搬送装置および画像形成装置

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6108675A (en) * 1998-01-22 2000-08-22 International Business Machines Corporation Positioning of transmitted document pages in receiving display station windows for maximum visibility of information on pages
US6593937B2 (en) 1998-06-18 2003-07-15 Sony Corporation Method of and apparatus for handling high bandwidth on-screen-display graphics data over a distributed IEEE 1394 network utilizing an isochronous data transmission format
EP1088448B1 (en) 1998-06-18 2003-01-15 Sony Electronics Inc. A method of and apparatus for partitioning, scaling and displaying video and/or graphics across several display devices
US6377276B1 (en) * 1998-06-18 2002-04-23 Sony Corporation Bitmap animation of on-screen-display graphics over a distributed network and a clipping region having a visible window
US6380946B1 (en) * 1999-02-09 2002-04-30 Intel Corporation Enhancing hardware clipping for bit-packed fonts
US6734987B1 (en) * 1999-08-24 2004-05-11 Hewlett-Packard Development Company, L.P. Printer driver for generating a reduced printer description file
EP1223762A1 (fr) * 2000-12-28 2002-07-17 Koninklijke Philips Electronics N.V. Composition d'une image
US7126578B1 (en) * 2001-05-17 2006-10-24 Adobe Systems Incorporated Combining raster and vector data in the presence of transparency
AU2002301567B2 (en) * 2001-10-19 2004-04-08 Canon Kabushiki Kaisha A Method of Generating Clip Paths for Graphic Objects
JP2003162728A (ja) * 2001-11-26 2003-06-06 Ricoh Co Ltd 画像処理装置及び画像出力装置
US7280250B2 (en) * 2002-09-27 2007-10-09 Texas Instruments Incorporated Method and apparatus for rendering large patterns in a small memory printer
JP4087678B2 (ja) * 2002-10-10 2008-05-21 株式会社ザナヴィ・インフォマティクス 地図データ送信方法
US20050195220A1 (en) * 2004-02-13 2005-09-08 Canon Kabushiki Kaisha Compositing with clip-to-self functionality without using a shape channel
US7685528B2 (en) * 2005-06-08 2010-03-23 Keeley Thomas M Programming toolkit with aligning clipper windows for use in the development of knowledge enhanced electronic programs
US20070035668A1 (en) * 2005-08-11 2007-02-15 Sony Corporation Method of routing an audio/video signal from a television's internal tuner to a remote device
JP6218643B2 (ja) * 2014-03-03 2017-10-25 キヤノン株式会社 画像処理装置、画像処理方法及びプログラム
US10026204B2 (en) 2015-01-27 2018-07-17 Splunk Inc. Efficient point-in-polygon indexing technique for processing queries over geographic data sets
US9836874B2 (en) * 2015-01-27 2017-12-05 Splunk Inc. Efficient polygon-clipping technique to reduce data transfer requirements for a viewport
US9607414B2 (en) 2015-01-27 2017-03-28 Splunk Inc. Three-dimensional point-in-polygon operation to facilitate displaying three-dimensional structures
US9916326B2 (en) 2015-01-27 2018-03-13 Splunk, Inc. Efficient point-in-polygon indexing technique for facilitating geofencing operations

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5509115A (en) * 1990-08-08 1996-04-16 Peerless Systems Corporation Method and apparatus for displaying a page with graphics information on a continuous synchronous raster output device
JPH0797413B2 (ja) * 1991-05-16 1995-10-18 インターナショナル・ビジネス・マシーンズ・コーポレイション グラフィックス・システムにおけるピック方法および装置
US5201011A (en) * 1991-11-19 1993-04-06 Xerox Corporation Method and apparatus for image hand markup detection using morphological techniques
US5307451A (en) * 1992-05-12 1994-04-26 Apple Computer, Inc. Method and apparatus for generating and manipulating graphical data for display on a computer output device
US5487145A (en) * 1993-07-09 1996-01-23 Taligent, Inc. Method and apparatus for compositing display items which minimizes locked drawing areas

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006078906A (ja) * 2004-09-10 2006-03-23 Ricoh Co Ltd ベルト搬送装置および画像形成装置
JP4663282B2 (ja) * 2004-09-10 2011-04-06 株式会社リコー ベルト搬送装置および画像形成装置

Also Published As

Publication number Publication date
US5966136A (en) 1999-10-12

Similar Documents

Publication Publication Date Title
JPH08297737A (ja) 任意図形クリッピング方法および装置
EP1787260B1 (en) Cache efficient rasterization of graphics data
JP4071196B2 (ja) ゾーン・レンダリング用の自動メモリ管理
US4648045A (en) High speed memory and processor system for raster display
US4982345A (en) Interactive computer graphics display system processing method for identifying an operator selected displayed object
JP4076502B2 (ja) ゾーン・レンダリングのための効率的なグラフィックス状態管理
US20040075654A1 (en) 3-D digital image processor and method for visibility processing for use in the same
JP5596938B2 (ja) 画像処理装置、画像処理方法、及びプログラム
JPH10105361A (ja) オブジェクト指定方法及びシステム
US6052128A (en) Method and apparatus for clipping convex polygons on single instruction multiple data computers
US6005588A (en) System and method for rapidly displaying text in a graphical user interface
US7928984B1 (en) Efficient data packaging for rendering bézier curves on a GPU
US6894695B2 (en) Apparatus and method for acceleration of 2D vector graphics using 3D graphics hardware
US8068106B1 (en) Rendering cubic Bézier curves as quadratic curves using a GPU
KR20040072695A (ko) 에빅션 억제 방법, 프리미티브를 포함하는 장면을묘사하는 장치 및 머신 판독가능 매체
US20210134037A1 (en) Graphic Object Modifications
JPH0660172A (ja) 画像の可変拡大方法及びその装置
US5590260A (en) Method and apparatus for optimizing the display of fonts in a data processing system
US7081903B2 (en) Efficient movement of fragment stamp
US6950108B2 (en) Bandwidth reduction for rendering using vertex data
US6731303B1 (en) Hardware perspective correction of pixel coordinates and texture coordinates
US20030122850A1 (en) Method and apparatus for determining bins to be updated for polygons, including triangles
US12026809B2 (en) Systems for generating anti-aliased vector objects
US5771371A (en) Method and apparatus for optimizing the display of forms in a data processing system
JP2007122188A (ja) 画像形成装置及び画像処理方法、並びにプログラム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060714

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060721

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20061215