JP2902820B2 - 図形のクリッピング方法 - Google Patents

図形のクリッピング方法

Info

Publication number
JP2902820B2
JP2902820B2 JP3205804A JP20580491A JP2902820B2 JP 2902820 B2 JP2902820 B2 JP 2902820B2 JP 3205804 A JP3205804 A JP 3205804A JP 20580491 A JP20580491 A JP 20580491A JP 2902820 B2 JP2902820 B2 JP 2902820B2
Authority
JP
Japan
Prior art keywords
bounding box
path
clip
common
sides
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 - Fee Related
Application number
JP3205804A
Other languages
English (en)
Other versions
JPH0546778A (ja
Inventor
博照 土屋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba TEC Corp
Original Assignee
Toshiba TEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba TEC Corp filed Critical Toshiba TEC Corp
Priority to JP3205804A priority Critical patent/JP2902820B2/ja
Publication of JPH0546778A publication Critical patent/JPH0546778A/ja
Application granted granted Critical
Publication of JP2902820B2 publication Critical patent/JP2902820B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Image Processing (AREA)
  • Digital Computer Display Output (AREA)
  • Image Generation (AREA)
  • Controls And Circuits For Display Device (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、描画経路からクリップ
経路に含まれる部分を切出す図形のクリッピング方
関する。
【0002】
【従来の技術】画像処理における図形のクリッピング方
は、図形に対してリスト構造を持つ辺データリストを
作成し、先頭の辺データのアドレスをバケットにセット
するようになっている。すなわち、バケットには辺デー
タを格納するメモリのアドレスが格納され、これにより
辺データを求めることができる。また辺データのアドレ
スが格納されていない部分にはNULLを代入しておく。バ
ケットには辺のyの最小値でエントリし、すでにそこに
辺が存在する場合にはリンク情報によってデータを連鎖
させる。
【0003】辺データは図9に示すように、傾きm、始
点座標xS,yS、終点座標xE,yE、方向フラグ(上方向
は+1、下方向は−1)、経路フラグ(描画フラグは
1,クリップフラグは−1)、リンクしている辺情報の
ポインタで構成されている。
【0004】そして特開平1−154293号公報にお
いては、バケットを順にサーチして、バケットから辺デ
ータを取出し、辺同士の交差処理をし、交差する場合に
は交点で辺を分割して新しい辺として辺データリストに
入れ、この交差処理をバケットの終了まで繰り返す。次
に再びバケットを最初からサーチし、注目するバケット
にリンクしている辺データをアクティブテーブルに入れ
る。このアクティブテーブルにエントリされた辺を順に
注目辺として、その注目辺が描画経路かクリッピング経
路かの判定、制御規則方式の判定と処理、注目辺が実際
に描画する辺として有効か否かの判定を順次行う。そし
て再びアクティブテーブルにエントリされた辺を順に注
目辺として有効辺の始りか終りかの判定をして実際に描
画する辺を求めて台形を切出し描画していた。
【0005】しかしこのように辺が交差する場合に交点
で新しい辺を作成したのでは辺データ作成処理が無駄に
なる問題があった。またバケットのサーチ、アクティブ
テーブルのサーチの重複が発生し、クリッピング経路か
ら外れる描画経路の制御規則方式の判定と処理、有効か
否かの判定、有効辺の始りか終りかの判定など無駄な処
理が発生し、この結果クリッピング処理に時間が掛かる
問題があった。
【0006】そこで本発明者は、先に、辺が交差する場
合においても新たな辺の作成処理を行う必要が無く、ま
たバケットのサーチ、アクティブテーブルのサーチの重
複やクリッピング経路から外れる描画経路の制御規則方
式の判定と処理、有効か否かの判定、有効辺の始りか終
りかの判定など無駄な処理が発生することがなくクリッ
ピング処理の高速化を図ることができる図形のクリッピ
ング方を開発し、特願平3−46959号として出願
した。
【0007】この先願のものは図10に示すように描画
経路1からクリップ経路2に含まれる部分を切出す場合
に、描画経路1及びクリップ経路2の全ての辺について
図9に示す辺データを作成し、バケット3に辺データの
ポインタを登録し、Y座標の小さい方から順に辺を取出
していき、交点処理をして図形の頂点、交点を通るスキ
ャンラインによって台形分割して切出しを行うことにな
る。
【0008】
【発明が解決しようとする課題】しかしこのようにクリ
ップ経路2と描画経路1の一部が重なり合っている場合
においても描画経路1及びクリップ経路2の全ての辺に
ついて辺データを作成し、交点処理、台形分割を行うた
め、このような場合におけるクリッピング処理の高速化
を図るには不十分であった。
【0009】そこで本発明は、クリップ経路と描画経路
の一部が重なり合っている場合におけるクリッピング処
理の高速化を十分に図ることができる図形のクリッピン
グ方を提供しようとするものである。
【0010】
【課題を解決するための手段と作用】請求項1対応の発
明は、描画経路からクリップ経路に含まれる部分を切出
す図形のクリッピング方において、描画経路及びクリ
ップ経路を囲む方形の最小の境界ボックスをそれぞれに
ついて求め、その各境界ボックスの重複する部分を共通
境界ボックスとし、描画経路及びクリップ経路の各辺に
ついて共通境界ボックスの各辺に対して外部か内部かあ
るいは交差するかを判定し、辺が外部に位置するときに
はその辺を排除するか共通境界ボックス上の辺に置き換
えるかし、辺が内部に位置するときにはその辺をそのま
ま使用し、また辺が交差するときにはその辺の外部に位
置する部分を共通境界ボックス上の辺に置き換えると共
に内部に位置する部分をそのまま使用し、最終的に得ら
れた辺から各頂点から出ている辺の始点、終点、傾き等
からなる辺データを作成し、この辺データに基づいて描
画経路からクリップ経路に含まれる部分を切出すことに
ある。
【0011】請求項2対応の発明は、描画経路及びクリ
ップ経路を囲む方形の最小の境界ボックスをそれぞれに
ついて求め、その各境界ボックスの重複する部分を共通
境界ボックスとし、そのとき共通境界ボックスの4つの
辺がそれぞれ描画経路及びクリップ経路の境界ボックス
のいずれかから得られたものかを記憶し、描画経路及び
クリップ経路の各辺について共通境界ボックスの各辺に
対して外部か内部かあるいは交差するかを判定し、この
とき描画経路の各辺については共通境界ボックスの4つ
の各辺のうちクリップ経路の境界ボックスから得られた
辺についてのみ判定を行うと共にクリップ経路の各辺に
ついては共通境界ボックスの4つの各辺のうち描画経路
の境界ボックスから得られた辺についてのみ判定を行
い、辺が外部に位置するときにはその辺を排除するか
通境界ボックス上の辺に置き換えるかし、辺が内部に位
置するときにはその辺をそのまま使用し、また辺が交差
するときにはその辺の外部に位置する部分を共通境界ボ
ックス上の辺に置き換えると共に内部に位置する部分を
そのまま使用し、最終的に得られた辺から各頂点から出
ている辺の始点、終点、傾き等からなる辺データを作成
し、この辺データに基づいて描画経路からクリップ経路
に含まれる部分を切出すことにある。
【0012】
【実施例】以下、本発明の実施例を図面を参照して説明
する。図1における11は描画経路、12はこの描画経
路11と一部重なり合ったクリップ経路である。
【0013】この描画経路11からクリップ経路12に
含まれる部分を切出すには図3に示す処理を行うように
なっている。すなわち、ステップS1 にて描画経路11
とクリップ経路12の共通バウンディングボックスを求
め、続いてステップS2 にて描画経路11とクリップ経
路12の各辺について共通バウンディングボックスの内
部か、外部か、交差するかを判定し辺データを作成す
る。そしてステップS3にて切出した図形を台形分割し
塗り潰す。
【0014】ステップS1 の処理を詳細に示すと、図4
に示すように、まずステップS11にて描画経路11の各
辺f0〜f6を順次取出し、これらの辺を最小限に囲む描画
経路11のバウンディングボックス13の座標(Fhx,
Fhy)、(Flx,Fly)を求める。
【0015】続いてステップS12にてクリップ経路12
の各辺c0〜c3を順次取出し、これらの辺を最小限に囲む
クリップ経路12のバウンディングボックス14の座標
(Chx,Chy)、(Clx,Cly)を求める。以上の結果
により描画経路11のバウンディングボックス13とク
リップ経路12のバウンディングボックス14が重なり
合うか否かをチェックする。
【0016】そして重なり合っていればステップS13に
て重なり合った部分(図中斜線部分)を共通バウンディ
ングボックス15とし、その四方向の境界各々について
バウンディングボックス13,14の何れのバウンディ
ングボックスから得られたかを記憶する。具体的には共
通バウンディングボックス15の上の境界Y=Chyはク
リップ経路のバウンディングボックス14から、下の境
界Y=Flyは描画経路のバウンディングボックス13か
ら、左の境界X=Clxはクリップ経路のバウンディング
ボックス14から、右の境界X=Fhxは描画経路のバウ
ンディングボックス13から得られたことを記憶する。
【0017】ステップS2 の処理を詳細に示すと、図5
に示すように、まずステップS21にてクリップ経路12
の各辺c0〜c3が共通バウンディングボックス15の内
部、外部、交差するのを判定して辺データを作成する。
【0018】この処理は具体的には図6〜図8に示すよ
うに行われる。まずステップS100にてクリップ辺c0
を取出す。続いてステップS101 にて上境界はクリッピ
ングのバウンディングボックスのそれと一致するかをチ
ェックする。そして上境界がクリップ経路12のバウン
ディングボックスと一致すれば、続いてステップS102
にて下境界はクリッピングのバウンディングボックスの
それと一致するかをチェックする。
【0019】また上境界がクリップ経路12のバウンデ
ィングボックスと一致しなければ、続いてステップS10
3 にて取出した辺が上境界から外れるか否かをチェック
する。そしてもし外れていれば図8の丸Aへ移行する。
また外れていなければ、続いてステップS104 にて取出
した辺が上境界と交差するかをチェックする。そして交
差していなければステップS102 へ移行する。また交差
していれば続いてステップS105 にて内部に入る部分を
新しい辺とする。そしてステップS102 へ移行する。
【0020】ステップS102 にて下境界がクリップ経路
12のバウンディングボックスと一致すれば、続いて図
7のステップS106 に移行しこのステップS106 にて左
境界はクリッピングのバウンディングボックスのそれと
一致するかをチェックする。
【0021】また下境界がクリップ経路12のバウンデ
ィングボックスと一致しなければ、続いてステップS10
7 にて取出した辺が下境界から外れるか否かをチェック
する。そしてもし外れていれば図8の丸Aへ移行する。
また外れていなければ、続いてステップS108 にて取出
した辺が下境界と交差するかをチェックする。そして交
差していなければステップS106 へ移行する。また交差
していれば続いてステップS109 にて内部に入る部分を
新しい辺とする。そしてステップS106 へ移行する。
【0022】ステップS106 にて左境界がクリップ経路
12のバウンディングボックスと一致すれば、続いて図
8のステップS110 に移行しこのステップS110 にて右
境界はクリッピングのバウンディングボックスのそれと
一致するかをチェックする。
【0023】また左境界がクリップ経路12のバウンデ
ィングボックスと一致しなければ、続いてステップS11
1 にて取出した辺が左境界から外れるか否かをチェック
する。そしてもし外れていれば左境界上の辺に変換して
ステップS110 に移行する。また外れていなければ、続
いてステップS112にて取出した辺が左境界と交差する
かをチェックする。そして交差していなければステップ
S110 へ移行する。また交差していれば続いてステップ
S113 にて外部になる部分を左境界上に変換して辺デー
タを作成し、内部に入る部分を新しい辺とする。そして
ステップS110へ移行する。ステップS110 にて右境界
がクリップ経路12のバウンディングボックスと一致す
れば、続いてステップS114 にて辺データを作成する。
【0024】また右境界がクリップ経路12のバウンデ
ィングボックスと一致しなければ、続いてステップS11
5 にて取出した辺が右境界から外れるか否かをチェック
する。そしてもし外れていれば右境界上の辺に変換して
ステップS114 に移行する。また外れていなければ、続
いてステップS116にて取出した辺が右境界と交差する
かをチェックする。そして交差していなければステップ
S114 へ移行する。また交差していれば続いてステップ
S117 にて外部になる部分を右境界上に変換して辺デー
タを作成し、内部に入る部分を新しい辺とする。そして
ステップS114へ移行する。
【0025】ステップS114 の辺データ作成が終了する
とクリップ辺が終了したか否かをチェックし、終了して
いなければ図6の丸Cに戻って次のクリップ辺について
同様の処理を行う。また全てのクリップ辺について終了
するとこの一連の処理は終了する。このような構成の本
実施例においては、ステップS21の処理によりクリップ
辺c0 〜c3 についてそれぞれ辺データの作成処理を行
う。
【0026】これは先ず、クリップ辺c0 を取出す。そ
して上境界についてはクリップ経路12のバウンディン
グと一致するのでステップS101 からステップS102 へ
移行する。また下境界は描画経路11から得られたもの
で一致しないのでステップS102 からステップS107 に
移行する。クリップ辺c0 は下境界から外れないのでさ
らにステップS108 へ移行する。クリップ辺c0 は下境
界と交差しないので、ステップS106 に移行する。そし
て左境界はクリップ経路12から得られたもので一致す
るのでステップS110 に移行する。
【0027】クリップ辺c0 は右境界から外れるのでス
テップS115で「Yes」となり図2に示すようにクリッ
プ辺c0 のx座標を右境界x=Fhxとしたものを新たな
辺c0 とする。そしてこれに基づいて辺データを作成す
る。
【0028】次にクリップ辺c1 を取出す。そして上境
界及び左境界はクリップ経路12から作成したものであ
り、またクリップ辺c1 は下境界よりも上に位置してい
るので、ステップS101 、ステップS102 、ステップS
107 、ステップS108 、ステップS106 、ステップS11
0 、ステップS115 、ステップS116 と進む。そしてこ
のクリップ辺c1 は描画経路11のバウンディングボッ
クスである右境界と交差するので、ステップS117 にて
図2に示すように右境界との交点でクリップ辺c1 を2
つの辺に分割し、内部の部分を新たな辺c1 とし、外部
の部分をx=Chxとした辺c1 ′として辺データを作成
する。
【0029】次にクリップ辺c2 を取出す。このクリッ
プ辺c2 は描画経路11のバウンディングボックスであ
る下境界と交差するので、ステップS101 、ステップS
102、ステップS107 、ステップS108 、ステップS109
と進み、このステップS109 にて図2に示すように内
部に入る部分のみを新たな辺c2 とする。そして辺デー
タを作成する。次にクリップ辺c3 を取出す。このクリ
ップ辺c3はすべて下境界よりも外部にあるのでこの辺
データは下境界の辺データに変換される。こうして全て
のクリップ辺c0 〜c3 について辺データの作成処理が
終了する。次にステップS22により描画辺f0 〜f6に
ついて辺データの作成処理を行う。この処理はステップ
S21のクリップ辺のときと同様の処理が行われる。
【0030】その結果図2に示すように、描画辺f0 ,
f1 ,f6 は共通バウンディングボックス15から外
れ、描画辺f2 ,f3は左境界に一致した辺として辺デ
ータが作成され、描画辺f4 ,f5は共通バウンディン
グボックス15の内部に位置する辺の部分に置き換えら
れて辺データが作成される。
【0031】以上の処理によりクリップ経路12と描画
経路11についての辺データの作成が終了すると、最後
にステップS3 にて台形分割し塗り潰しが行われる。こ
れは先願と同様にバケットに辺データのポインタを登録
し、Y座標の小さい方から順に辺を取出していき、交点
処理をして図形の頂点、交点を通るスキャンラインによ
って台形分割して切出しを行う。こうして最終的には図
2に斜線で示す部分が切出されることになる。
【0032】このように描画経路11とクリップ経路1
2のバウンディングボックス13,14を形成し、それ
からさらに共通バウンデングボックス15を形成し、そ
の共通バウンデングボックス15から外れる不要な辺は
排除、或いは単純な辺、すなわち共通バウンデングボッ
クスの境界辺に変換することにより、不要な交点処理や
台形分割を省略することができ、クリッピング処理の高
速化を十分に図ることができる。
【0033】
【発明の効果】以上詳述したように本発明によれば、ク
リップ経路と描画経路の一部が重なり合っている場合に
おけるクリッピング処理の高速化を十分に図ることがで
きる図形のクリッピング方を提供できるものである。
【図面の簡単な説明】
【図1】本発明の実施例における描画経路、描画経路の
バウンディングボックス、クリップ経路、クリップ経路
のバウンディングボックス、共通バウンディングボック
スを説明するための図。
【図2】同実施例における共通バウンディングボックス
の辺変換を説明するための図。
【図3】同実施例における基本処理を示す流れ図。
【図4】図3におけるステップS1 の詳細な処理を示す
流れ図。
【図5】図3におけるステップS2 の詳細な処理を示す
流れ図。
【図6】図5におけるステップS21の具体的処理を示す
流れ図。
【図7】図5におけるステップS21の具体的処理を示す
流れ図。
【図8】図3におけるステップS21の具体的処理を示す
流れ図。
【図9】辺データの構成を示す図。
【図10】先願例を説明するための図。
【符号の説明】
11…描画経路、12…クリップ経路、13…描画経路
のバウンディングボックス、クリップ経路のバウンディ
ングボックス、15…共通バウンディングボックス。

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】 描画経路からクリップ経路に含まれる部
    分を切出す図形のクリッピング方において、描画経路
    及びクリップ経路を囲む方形の最小の境界ボックスをそ
    れぞれについて求め、その各境界ボックスの重複する部
    分を共通境界ボックスとし、前記描画経路及びクリップ
    経路の各辺について前記共通境界ボックスの各辺に対し
    て外部か内部かあるいは交差するかを判定し、辺が外部
    に位置するときにはその辺を排除するか共通境界ボック
    ス上の辺に置き換えるかし、辺が内部に位置するときに
    はその辺をそのまま使用し、また辺が交差するときには
    その辺の外部に位置する部分を共通境界ボックス上の
    に置き換えると共に内部に位置する部分をそのまま使用
    し、最終的に得られた辺から各頂点から出ている辺の始
    点、終点、傾き等からなる辺データを作成し、この辺デ
    ータに基づいて描画経路からクリップ経路に含まれる部
    分を切出すことを特徴とする図形のクリッピング方
  2. 【請求項2】 描画経路からクリップ経路に含まれる部
    分を切出す図形のクリッピング方において、描画経路
    及びクリップ経路を囲む方形の最小の境界ボックスをそ
    れぞれについて求め、その各境界ボックスの重複する部
    分を共通境界ボックスとし、そのとき共通境界ボックス
    の4つの辺がそれぞれ描画経路及びクリップ経路の境界
    ボックスのいずれかから得られたものかを記憶し、前記
    描画経路及びクリップ経路の各辺について前記共通境界
    ボックスの各辺に対して外部か内部かあるいは交差する
    かを判定し、このとき描画経路の各辺については前記共
    通境界ボックスの4つの各辺のうちクリップ経路の境界
    ボックスから得られた辺についてのみ判定を行うと共に
    クリップ経路の各辺については前記共通境界ボックスの
    4つの各辺のうち描画経路の境界ボックスから得られた
    辺についてのみ判定を行い、辺が外部に位置するときに
    はその辺を排除するか共通境界ボックス上の辺に置き換
    えるかし、辺が内部に位置するときにはその辺をそのま
    ま使用し、また辺が交差するときにはその辺の外部に位
    置する部分を共通境界ボックス上の辺に置き換えると共
    に内部に位置する部分をそのまま使用し、最終的に得ら
    れた辺から各頂点から出ている辺の始点、終点、傾き等
    からなる辺データを作成し、この辺データに基づいて描
    画経路からクリップ経路に含まれる部分を切出すことを
    特徴とする図形のクリッピング方
JP3205804A 1991-08-16 1991-08-16 図形のクリッピング方法 Expired - Fee Related JP2902820B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3205804A JP2902820B2 (ja) 1991-08-16 1991-08-16 図形のクリッピング方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3205804A JP2902820B2 (ja) 1991-08-16 1991-08-16 図形のクリッピング方法

Publications (2)

Publication Number Publication Date
JPH0546778A JPH0546778A (ja) 1993-02-26
JP2902820B2 true JP2902820B2 (ja) 1999-06-07

Family

ID=16512965

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3205804A Expired - Fee Related JP2902820B2 (ja) 1991-08-16 1991-08-16 図形のクリッピング方法

Country Status (1)

Country Link
JP (1) JP2902820B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4370438B2 (ja) 2007-06-27 2009-11-25 Necシステムテクノロジー株式会社 ベクター画像描画装置、ベクター画像描画方法およびプログラム
JP5157656B2 (ja) 2008-06-05 2013-03-06 富士通株式会社 梱包体および電子機器収納体

Also Published As

Publication number Publication date
JPH0546778A (ja) 1993-02-26

Similar Documents

Publication Publication Date Title
US5808616A (en) Shape modeling method and apparatus utilizing ordered parts lists for designating a part to be edited in a view
KR102554126B1 (ko) 차량 궤적 계획 방법, 장치, 컴퓨터 장치, 컴퓨터 저장 매체
JP3574202B2 (ja) 図形入出力装置
CN118051571A (zh) 一种围墙类地理信息数据处理方法和装置
JP2902820B2 (ja) 図形のクリッピング方法
WO2024148997A1 (zh) 一种思维导图生成方法、装置及存储介质
JPH077456B2 (ja) 重合度による図形の認識装置
CN112802151B (zh) 一种墙线绘制方法、电子设备、存储介质
JPH0778254A (ja) 図形閉領域抽出方法
JP3389388B2 (ja) 図面編集装置
JPS61245280A (ja) 論理回路図の自動配線方法
JP2629759B2 (ja) 数値制御加工用データ生成方法
CN117421089B (zh) 一种台阶类地理信息要素处理方法和装置
CN114924680B (zh) 基于web前端可视化界面的港口无人驾驶地图生成方法
JPH07287750A (ja) 地図を表す線分データから道路領域を認識する方法
JP2902799B2 (ja) 図形のクリッピング方法
JPH06337929A (ja) 図面管理方法および装置
JP2005222555A (ja) 解析方法及び装置
JP3423775B2 (ja) 図形編集出図装置
JPH04195683A (ja) 図形処理方式
JPH06282593A (ja) 引出線作成方法
JPH07104876B2 (ja) 設計支援方法及び設計支援装置
JP3358433B2 (ja) 対話型図面認識処理方法
EP0213670A2 (en) Computer aided design system
JPH04117579A (ja) ハッチング領域抽出方法

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees