JPH077456B2 - 重合度による図形の認識装置 - Google Patents
重合度による図形の認識装置Info
- Publication number
- JPH077456B2 JPH077456B2 JP63286519A JP28651988A JPH077456B2 JP H077456 B2 JPH077456 B2 JP H077456B2 JP 63286519 A JP63286519 A JP 63286519A JP 28651988 A JP28651988 A JP 28651988A JP H077456 B2 JPH077456 B2 JP H077456B2
- Authority
- JP
- Japan
- Prior art keywords
- line
- intersection
- lines
- dividing
- division
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/75—Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
- G06V10/752—Contour matching
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
- Controls And Circuits For Display Device (AREA)
Description
【発明の詳細な説明】 〔産業上の利用分野〕 この発明は、ICなどの回路パターン設計などに用いられ
るCADや、図形を出力するプロッターなどに用いられる
重合度による図形の認識装置に関する。
るCADや、図形を出力するプロッターなどに用いられる
重合度による図形の認識装置に関する。
周知のように、重合度による図形の認識装置は従来より
いくつか提案されている。これらの例として特開昭57−
14964や特開昭59−60560が挙げられる。
いくつか提案されている。これらの例として特開昭57−
14964や特開昭59−60560が挙げられる。
特開昭57−14964においては、ある図形の端点のうち他
の図形の閉ループに含まれていない端点を基点として、
図形を所定の方向にたどり、交点に達したら他の図形の
閉ループにスイッチしていく方法が開示されている。こ
のような方法においては、ある点が閉ループの内か外か
という判定や、ループを順にたどっていくという工程に
多大な時間を要する。またAND図形やOR図形を認識する
工程を別に設ける必要がある。
の図形の閉ループに含まれていない端点を基点として、
図形を所定の方向にたどり、交点に達したら他の図形の
閉ループにスイッチしていく方法が開示されている。こ
のような方法においては、ある点が閉ループの内か外か
という判定や、ループを順にたどっていくという工程に
多大な時間を要する。またAND図形やOR図形を認識する
工程を別に設ける必要がある。
また、特開昭59−60560においては、与えられた複数の
閉図形を各スリットごとに分割して、各図形平面の重合
度を認識するという装置が開示されている。このような
装置においては、各スリットの分割に従って閉図形を構
成するラインが不必要に分断され、後処理のつなぎ換え
に多大な時間を要する。
閉図形を各スリットごとに分割して、各図形平面の重合
度を認識するという装置が開示されている。このような
装置においては、各スリットの分割に従って閉図形を構
成するラインが不必要に分断され、後処理のつなぎ換え
に多大な時間を要する。
さらに円弧などのパラメトリックな部分(半径などのパ
ラメータを有する関数による図形)を含む図形に対して
は、多角形近似により直線図形に置き換えて上述のよう
な処理を行っていた。このため多角形近似のために多大
な時間を要し、また出力された図形も不正確な形になる
ことが多い。
ラメータを有する関数による図形)を含む図形に対して
は、多角形近似により直線図形に置き換えて上述のよう
な処理を行っていた。このため多角形近似のために多大
な時間を要し、また出力された図形も不正確な形になる
ことが多い。
以上のように従来の方法では、ある点が閉ループの内か
外かの判定や、ループをたどっていく処理、または構成
ラインを不要に分割し再度つなぎ直す処理などのため、
全体処理に多大な時間を要するという問題点があった。
この傾向は処理しようとする図形が複雑になればなるほ
ど増大する。
外かの判定や、ループをたどっていく処理、または構成
ラインを不要に分割し再度つなぎ直す処理などのため、
全体処理に多大な時間を要するという問題点があった。
この傾向は処理しようとする図形が複雑になればなるほ
ど増大する。
また、各重合度に対応して図形を出力する場合、別々の
工程を経なければならないという問題点もあった。
工程を経なければならないという問題点もあった。
さらに、円弧などのパラメトリックな部分を含む図形に
対して短時間で正確に重合度に応じた図形の出力などの
演算処理動作が行える装置は開発されていなかった。
対して短時間で正確に重合度に応じた図形の出力などの
演算処理動作が行える装置は開発されていなかった。
〔発明の目的〕 この発明は以上のような事情を考慮してなされたもので
あり、複雑な図形に対しても処理全体に要する時間を大
幅に短縮でき、重合度の異なる図形についてもそれらを
認識する工程を共通化し、さらにパラメトリックな部分
を含む図形の処理においても短時間で正確に演算処理が
行えるような重合度による図形の認識方法を得ることを
目的とする。
あり、複雑な図形に対しても処理全体に要する時間を大
幅に短縮でき、重合度の異なる図形についてもそれらを
認識する工程を共通化し、さらにパラメトリックな部分
を含む図形の処理においても短時間で正確に演算処理が
行えるような重合度による図形の認識方法を得ることを
目的とする。
この発明に係る重合度による図形の認識装置は、複数の
閉図形から図形の重なり態様を示す指定された重合度に
よる図形を認識するにあたって、まず複数の閉図形の構
成ラインのデータをベクトル形式で表現してリスト構造
で蓄積する(蓄積手段)。また、これら複数の図形が形
成する交点を検出する(交点検出手段)。
閉図形から図形の重なり態様を示す指定された重合度に
よる図形を認識するにあたって、まず複数の閉図形の構
成ラインのデータをベクトル形式で表現してリスト構造
で蓄積する(蓄積手段)。また、これら複数の図形が形
成する交点を検出する(交点検出手段)。
次に、分断手段によって、交点のそれぞれにつき、当該
交点において各構成ラインを分断して分断ラインとす
る。
交点において各構成ラインを分断して分断ラインとす
る。
また、この装置は、交点ごとに、当該交点への各分断ラ
インの出入方向を区別しつつ、分断ラインの位置に応じ
た順序で各分断ラインを登録するバッファメモリを備え
ている。後述する実施例における「ライトバッファ」お
よび「レフトバッファ」に相当する。
インの出入方向を区別しつつ、分断ラインの位置に応じ
た順序で各分断ラインを登録するバッファメモリを備え
ている。後述する実施例における「ライトバッファ」お
よび「レフトバッファ」に相当する。
そして、交点ごとに、当該交点に出入りする各分断ライ
ンで分割された各分割平面を当該交点をまわる方向に沿
って追跡しつつ、各分割平面に至るまでに分断ラインを
通過した数を前記出入方向を正負の符号で区別しつつカ
ウントして、そのカウント値に応じた数値フラグを各分
割平面について決定するとともに、前記バッファメモリ
中の各分断ラインに、当該分断ラインの前記出入り方向
に向かって一方の側に隣接する分割平面についての前記
数値フラグを付与する(カウント手段)。
ンで分割された各分割平面を当該交点をまわる方向に沿
って追跡しつつ、各分割平面に至るまでに分断ラインを
通過した数を前記出入方向を正負の符号で区別しつつカ
ウントして、そのカウント値に応じた数値フラグを各分
割平面について決定するとともに、前記バッファメモリ
中の各分断ラインに、当該分断ラインの前記出入り方向
に向かって一方の側に隣接する分割平面についての前記
数値フラグを付与する(カウント手段)。
この数値フラグは後述する実施例における「プライオリ
ティーフラグ」に相当し、各交点において生成された分
断ラインがどのような重合部分の輪郭に相当するライン
であるかを表現している。
ティーフラグ」に相当し、各交点において生成された分
断ラインがどのような重合部分の輪郭に相当するライン
であるかを表現している。
分断ラインはつなぎ換え手段によってつなぎ換えられる
が、それにあたっては交点のそれぞれについて前記バッ
ファメモリをアドレス順に検索し、前記出入方向が逆で
あり、かつ前記数値フラグが同一値である分断フラグの
対を発見する都、それらの対を相互に接続させる。
が、それにあたっては交点のそれぞれについて前記バッ
ファメモリをアドレス順に検索し、前記出入方向が逆で
あり、かつ前記数値フラグが同一値である分断フラグの
対を発見する都、それらの対を相互に接続させる。
このような分断およびつなぎ換えを経た後の構成ライン
の中から、所望の重合度に応じて指定されるスタートラ
インにつながった構成ラインの組合わせを抽出する(抽
出手段)。
の中から、所望の重合度に応じて指定されるスタートラ
インにつながった構成ラインの組合わせを抽出する(抽
出手段)。
そして、抽出された構成ラインの組合わせを、所望の重
合度を有する図形の認識結果として出力する(出力手
段)。
合度を有する図形の認識結果として出力する(出力手
段)。
この発明の装置は、CADやプロッタなど所定の画像処理
装置を用いた図形記録または図形表示のために使用され
る。
装置を用いた図形記録または図形表示のために使用され
る。
この発明におけるラインの分断およびつなぎ換えは、図
形の交点のみに着目して行わるので、重合度による図形
を認識する装置を簡略化する。
形の交点のみに着目して行わるので、重合度による図形
を認識する装置を簡略化する。
またラインの分断およびつなぎ換えが行われ、再構成さ
れたラインのデータはリスト構造により認識されるの
で、所望の重合度に応じたスタートラインを指定するこ
とにより、それにつながる構成ラインの組合わせで構成
された、任意の重合度に対応する図形が出力される。
れたラインのデータはリスト構造により認識されるの
で、所望の重合度に応じたスタートラインを指定するこ
とにより、それにつながる構成ラインの組合わせで構成
された、任意の重合度に対応する図形が出力される。
A.全体構成と概略構成 第2図はこの発明の一実施例を適用する図形の入出力装
置を示す概念図である。入力タブレット1上にスタイラ
スペン2などによって、処理対象となる閉図形を入力す
る。入力された閉図形は処理装置3において、後述する
論理画像処理などを施され、CRT4などの出力機器に出力
される B.準備工程 第1図はこの発明の一実施例による重合度による図形の
認識装置の準備工程を示すフローチャートである。また
第3A図はこの方法を適用する対象図形の例で、一部重な
りを有する2つの三角形△ABCと△DEFを示す図である。
置を示す概念図である。入力タブレット1上にスタイラ
スペン2などによって、処理対象となる閉図形を入力す
る。入力された閉図形は処理装置3において、後述する
論理画像処理などを施され、CRT4などの出力機器に出力
される B.準備工程 第1図はこの発明の一実施例による重合度による図形の
認識装置の準備工程を示すフローチャートである。また
第3A図はこの方法を適用する対象図形の例で、一部重な
りを有する2つの三角形△ABCと△DEFを示す図である。
まず、ステップS11に示されている閉図形の認識方法に
ついて説明する。三角形△ABCは第3B図に示すように三
角形の内部がその進行方向の左側になるような3つのラ
イン(ベクトル)AB,BC,CAに分解される。同様に三角形
△DEFはラインDE,EF,FDに分解される。これらのライン
はその始点および終点を記憶することにより認識でき
る。さらに閉図形を認識するためには、各ライン間の接
続関係を認識する必要がある。ここではリスト構造を導
入し、着目したラインの前後のラインをそれぞれ着目し
たラインのデータ内に含まれるポインタP1,P2(図示せ
ず)で指定しておく。表1は三角形△ABC,△DEFをそれ
ぞれリスト構造によりデータ構成した場合の、各データ
間の関係を示したものである。
ついて説明する。三角形△ABCは第3B図に示すように三
角形の内部がその進行方向の左側になるような3つのラ
イン(ベクトル)AB,BC,CAに分解される。同様に三角形
△DEFはラインDE,EF,FDに分解される。これらのライン
はその始点および終点を記憶することにより認識でき
る。さらに閉図形を認識するためには、各ライン間の接
続関係を認識する必要がある。ここではリスト構造を導
入し、着目したラインの前後のラインをそれぞれ着目し
たラインのデータ内に含まれるポインタP1,P2(図示せ
ず)で指定しておく。表1は三角形△ABC,△DEFをそれ
ぞれリスト構造によりデータ構成した場合の、各データ
間の関係を示したものである。
実際のデータの構造においては、ポインタP1,P2は、そ
の前後のラインの始点および終点のデータが格納されて
いるアドレスまたはファイルネームなどをそれぞれ指示
する。ここでは、それらを一括してラインの名称によっ
て代表させている。また、ラインのデータはハード構成
上ラインバッファLNB(後述する第16図参照)に格納さ
れる。なお、以下の説明において、各バッファやメモリ
等の参照符号は、第16図の構成に対応している。
の前後のラインの始点および終点のデータが格納されて
いるアドレスまたはファイルネームなどをそれぞれ指示
する。ここでは、それらを一括してラインの名称によっ
て代表させている。また、ラインのデータはハード構成
上ラインバッファLNB(後述する第16図参照)に格納さ
れる。なお、以下の説明において、各バッファやメモリ
等の参照符号は、第16図の構成に対応している。
次に、ステップS12に進み頂点を認識する。頂点は各ラ
インの始点または終点として、おのおの少なくとも一度
ずつ現れる。始点だけに着目すればすべての頂点を漏れ
なく列挙できる。さらに後で平面走査法を用いるため
に、表2に示すように頂点のx座標に関するソーティン
グを行う。なお、同じx座標を有するものはy座標につ
いてもソーティングを行う。
インの始点または終点として、おのおの少なくとも一度
ずつ現れる。始点だけに着目すればすべての頂点を漏れ
なく列挙できる。さらに後で平面走査法を用いるため
に、表2に示すように頂点のx座標に関するソーティン
グを行う。なお、同じx座標を有するものはy座標につ
いてもソーティングを行う。
このような処理はハード構成上、下記表3のような記憶
内容を持つ頂点バッファAPBを設けてその中で行えばよ
い。
内容を持つ頂点バッファAPBを設けてその中で行えばよ
い。
さらに、各頂点のうち最も左側のものから順番に平面走
査法を適用し、周知のベントレーオットマン(Bentley-
Ottmann)の交差判定により各頂点を通るスィープライ
ンSL(後述する第4図の例ではSL10〜SL50)上の各ライ
ン間の交点を求める。なおスィープラインSL上のライン
の認識はワークリストWLを設けて行う。また交点が求ま
った場合は順次交点バッファCRBに登録していく。これ
らのハード構成については後で詳述する。この際、現在
交差判定を行っているスィープランSLより、左側にある
交点については、すでに処理済みであるので登録せず、
右側にあるものだけを登録する。また交点においても頂
点と同様に、平面走査法を適用し、後述するラインの分
断とつなぎ換えとを行う。交点が交点バッファCRBに登
録された時点で次の頂点のx座標との比較を行い、それ
らのうちの最もx座標の小さいものについて、次のスイ
ープラインSLの設定を行う。
査法を適用し、周知のベントレーオットマン(Bentley-
Ottmann)の交差判定により各頂点を通るスィープライ
ンSL(後述する第4図の例ではSL10〜SL50)上の各ライ
ン間の交点を求める。なおスィープラインSL上のライン
の認識はワークリストWLを設けて行う。また交点が求ま
った場合は順次交点バッファCRBに登録していく。これ
らのハード構成については後で詳述する。この際、現在
交差判定を行っているスィープランSLより、左側にある
交点については、すでに処理済みであるので登録せず、
右側にあるものだけを登録する。また交点においても頂
点と同様に、平面走査法を適用し、後述するラインの分
断とつなぎ換えとを行う。交点が交点バッファCRBに登
録された時点で次の頂点のx座標との比較を行い、それ
らのうちの最もx座標の小さいものについて、次のスイ
ープラインSLの設定を行う。
第4図は第3B図に示す図形に対して交差判定を行った時
のようすを示す図である。
のようすを示す図である。
前述した表2に示すように、ソーティングされた頂点の
うちまず頂点BについてスイープラインSL10を設定す
る。ワークリストWL内には、ラインABおよびラインBCが
登録されている。この2つのライン間で頂点Bを除いて
交差判定を行う。交点が存在しないので、次の頂点、こ
の例では頂点D,Aに共通にスイープラインSL20を設定す
る。ワークリストWL内にはラインFD,DEおよびラインCA
が追加される。またラインABについては、始点,終点と
ともに走査されたので処理済みと見做してワークリスト
WLより削除する。以下、同様の順によりワークリストWL
へのラインの追加,削除をくり返す。なおワークリスト
WLは後述するラインの分断とつなぎ換えとにおいても用
いられ、ラインの分断などによりその内容は一部変更さ
れる。その場合の構成については後で詳述する。
うちまず頂点BについてスイープラインSL10を設定す
る。ワークリストWL内には、ラインABおよびラインBCが
登録されている。この2つのライン間で頂点Bを除いて
交差判定を行う。交点が存在しないので、次の頂点、こ
の例では頂点D,Aに共通にスイープラインSL20を設定す
る。ワークリストWL内にはラインFD,DEおよびラインCA
が追加される。またラインABについては、始点,終点と
ともに走査されたので処理済みと見做してワークリスト
WLより削除する。以下、同様の順によりワークリストWL
へのラインの追加,削除をくり返す。なおワークリスト
WLは後述するラインの分断とつなぎ換えとにおいても用
いられ、ラインの分断などによりその内容は一部変更さ
れる。その場合の構成については後で詳述する。
スイープラインSL20においてワークリストWL内にはライ
ンBC,DE,FDおよびCAが登録されている。これらのライン
はy座標について小さいものからソーティングされ、同
じy座標を有するものについては、そのラインのx−y
座標上での直線の傾きについて小さいものから順にソー
ティングされている。交点を求める際には、新たにワー
クリストWLに追加するラインDEと、その上下に隣接する
ラインとについて交差判定を行う。ラインDEについて交
差判定を行ったら、次の新たにワークリストWLに追加す
るラインFDについて、同様の交差判定を行う。このよう
にして、少なくとも現在の頂点と次の頂点との間に存在
する交点はすべて求められる。なおワークリストWL内の
ラインのソーティング順は逆(y座標の大きい方および
傾きの大きい方優先)でもよい。このようにしてライン
BCとラインDEの交点X1およびラインFDとラインCAの交点
X2が求まる。これらはスイープラインSL20より右側にあ
るので、交点バッファCRBに登録される。表4は交点バ
ッファCRBの一例を示したものであり、各交点はx座標
によってソーティングされる。
ンBC,DE,FDおよびCAが登録されている。これらのライン
はy座標について小さいものからソーティングされ、同
じy座標を有するものについては、そのラインのx−y
座標上での直線の傾きについて小さいものから順にソー
ティングされている。交点を求める際には、新たにワー
クリストWLに追加するラインDEと、その上下に隣接する
ラインとについて交差判定を行う。ラインDEについて交
差判定を行ったら、次の新たにワークリストWLに追加す
るラインFDについて、同様の交差判定を行う。このよう
にして、少なくとも現在の頂点と次の頂点との間に存在
する交点はすべて求められる。なおワークリストWL内の
ラインのソーティング順は逆(y座標の大きい方および
傾きの大きい方優先)でもよい。このようにしてライン
BCとラインDEの交点X1およびラインFDとラインCAの交点
X2が求まる。これらはスイープラインSL20より右側にあ
るので、交点バッファCRBに登録される。表4は交点バ
ッファCRBの一例を示したものであり、各交点はx座標
によってソーティングされる。
交点X2,X1は次の頂点Cよりも左側にあるので、まずス
イープラインSL21が交点X2に、次のスイープラインSL22
が交点X1の位置に設定される。この位置でのワークリス
の内容等は後述するラインの分断とつなぎ換えとに関連
して説明する。
イープラインSL21が交点X2に、次のスイープラインSL22
が交点X1の位置に設定される。この位置でのワークリス
の内容等は後述するラインの分断とつなぎ換えとに関連
して説明する。
この交点X2,X1の次に頂点CにスイープラインSL30、頂
点EにスイープラインSL40および頂点Fにスイープライ
ンSL50が設定され、最も右側の頂点Fにおいて平面走査
が終了する。これらの位置でのワークリストWLの内容に
ついても後述する。
点EにスイープラインSL40および頂点Fにスイープライ
ンSL50が設定され、最も右側の頂点Fにおいて平面走査
が終了する。これらの位置でのワークリストWLの内容に
ついても後述する。
次にステップS13におけるラインの分断,つなぎ換えに
ついて説明する。実際には平面走査により頂点,交点を
認識し、スイープラインSLを設定するたびに、ラインの
分断とつなぎ換えとを行うべきかどうかを判断する。
ついて説明する。実際には平面走査により頂点,交点を
認識し、スイープラインSLを設定するたびに、ラインの
分断とつなぎ換えとを行うべきかどうかを判断する。
まず交点X2におけるつなぎ換えについて第5図を参照し
て説明する。頂点におけるつなぎ換えについては後述す
る。交点X2において、一つ前のスイープラインSL20にお
けるワークリストWL0と現在のスイープラインSL21にお
けるワークリストWL1をワークリストWLとは別に準備す
る。ワークリストWL1は、ワークリストWL0を基にして、
交点X2で交差しているラインFDおよびラインCAの順番を
入れ換えた内容になっている。
て説明する。頂点におけるつなぎ換えについては後述す
る。交点X2において、一つ前のスイープラインSL20にお
けるワークリストWL0と現在のスイープラインSL21にお
けるワークリストWL1をワークリストWLとは別に準備す
る。ワークリストWL1は、ワークリストWL0を基にして、
交点X2で交差しているラインFDおよびラインCAの順番を
入れ換えた内容になっている。
またラインCAおよびFDを交点X2において分断し、その方
向は保ったままラインCAからラインC・X2とラインX2・
Aとを、また、ラインFDからラインF・X2とラインX2・
Dをそれぞれ形成する(これらがこの発明における「分
断ライン」に相当する)。これらのラインのうち、交点
X2より左側にあるものを用いてワークリストWL0を、右
側にあるものを用いてワークリストWL1を表5,表6のよ
うに書き換える。なおラインバッファLNBの内容もこの
分断により書き換えられる。
向は保ったままラインCAからラインC・X2とラインX2・
Aとを、また、ラインFDからラインF・X2とラインX2・
Dをそれぞれ形成する(これらがこの発明における「分
断ライン」に相当する)。これらのラインのうち、交点
X2より左側にあるものを用いてワークリストWL0を、右
側にあるものを用いてワークリストWL1を表5,表6のよ
うに書き換える。なおラインバッファLNBの内容もこの
分断により書き換えられる。
次にラインのつなぎ換えを行うためにワークリストWL0,
WL1から交点X2に関するラインX2・D,X2・A,F・X2および
C・X2を抽出し、交点より左側のものはレフトバッファ
LBに、右側のものはライトバッファRBに、順番を保った
まま登録する。レフトバッファLBおよびライトバッファ
RBは、つなぎ換えを行う時にのみ構築される。
WL1から交点X2に関するラインX2・D,X2・A,F・X2および
C・X2を抽出し、交点より左側のものはレフトバッファ
LBに、右側のものはライトバッファRBに、順番を保った
まま登録する。レフトバッファLBおよびライトバッファ
RBは、つなぎ換えを行う時にのみ構築される。
さらにプライオリティーフラグPFを次のように規定す
る。交点X2に関するラインによって分割された各平面に
対して、交点X2から見て最も下側の平面においてPF=0
とする。そして、第6A図に示すように、y軸の正方向に
進行していき、右向きまたは垂直上向きのラインを通過
した時には、その平面に対してプライオリティーフラグ
PFを1だけ増加させ、左向きまたは垂直下向きのライン
を通過した時にはプライオリティーフラグPFを1だけ減
少させる。なお垂直なラインを通過する時は右から左に
通過する。このようにして交点のまわりのラインにより
分割された各平面にプライオリティーフラグPFを付与す
る。次に各ラインの進行方向に対して左側の平面のプラ
イオリティーフラグPFをそのラインのプライオリティー
フラグPFとする。次に、以上の規定によって、レフトバ
ッファLBおよびライトバッファRB内の各ラインについ
て、プライオリティーフラグPFを付与する処理を行う。
る。交点X2に関するラインによって分割された各平面に
対して、交点X2から見て最も下側の平面においてPF=0
とする。そして、第6A図に示すように、y軸の正方向に
進行していき、右向きまたは垂直上向きのラインを通過
した時には、その平面に対してプライオリティーフラグ
PFを1だけ増加させ、左向きまたは垂直下向きのライン
を通過した時にはプライオリティーフラグPFを1だけ減
少させる。なお垂直なラインを通過する時は右から左に
通過する。このようにして交点のまわりのラインにより
分割された各平面にプライオリティーフラグPFを付与す
る。次に各ラインの進行方向に対して左側の平面のプラ
イオリティーフラグPFをそのラインのプライオリティー
フラグPFとする。次に、以上の規定によって、レフトバ
ッファLBおよびライトバッファRB内の各ラインについ
て、プライオリティーフラグPFを付与する処理を行う。
第6B図は交点X2において、各ラインにプライオリティー
フラグPFを付与した時のようすを示した図である。まず
全てのラインより見て下側に位置する領域R1においてプ
ライオリティーフラグPF=0とする。領域R1からライン
C・X2を通過した位置にある領域R2においては、ライン
C・X2が左向きなので、プライオリティーフラグPFは0
から1減少してPF=−1となる。同様に領域R3において
もPF=−1、また領域R4においてはPF=−2となる。
フラグPFを付与した時のようすを示した図である。まず
全てのラインより見て下側に位置する領域R1においてプ
ライオリティーフラグPF=0とする。領域R1からライン
C・X2を通過した位置にある領域R2においては、ライン
C・X2が左向きなので、プライオリティーフラグPFは0
から1減少してPF=−1となる。同様に領域R3において
もPF=−1、また領域R4においてはPF=−2となる。
次に各ラインに対して、その左側の領域の有するプライ
オリティーフラグPFを、そのラインのプライオリティー
フラグPFとして付与していく。つまり、ラインC・X2,X
2・DにはPF=0,ラインF・X2,X2・AにはPF=−1を付
与する。
オリティーフラグPFを、そのラインのプライオリティー
フラグPFとして付与していく。つまり、ラインC・X2,X
2・DにはPF=0,ラインF・X2,X2・AにはPF=−1を付
与する。
また交点X2が各ラインの始点または終点のいずれになる
かを判定し、各ラインに方方向フラグDFを付与する。交
点X2に入ってくるラインならDF=1、出ていくラインな
らDF=0とする。また後述するつなぎ換え処理を行った
かどうかを示す処理フラグRF(処理済ならRF=1、未処
理ならRF=0)を各ラインに付与し、下記表7,表8に示
すようにレフトバッファLB,ライトバッファRBをそれぞ
れ完成する。なお表7,表8においては第6図のラインの
接続関係との対照のために各ラインのデータを昇順に記
している。
かを判定し、各ラインに方方向フラグDFを付与する。交
点X2に入ってくるラインならDF=1、出ていくラインな
らDF=0とする。また後述するつなぎ換え処理を行った
かどうかを示す処理フラグRF(処理済ならRF=1、未処
理ならRF=0)を各ラインに付与し、下記表7,表8に示
すようにレフトバッファLB,ライトバッファRBをそれぞ
れ完成する。なお表7,表8においては第6図のラインの
接続関係との対照のために各ラインのデータを昇順に記
している。
以上のように各バッファを完成したら、交点より右側で
かつ最も下側のラインからつなぎ換え処理を行う。着目
しているラインとプライオリティーフラグPFが等しくか
つ、交点に対する向きが逆向きの(進行フラグDFが等し
くない)ラインを反時計まわりに検索し、該当するライ
ンが存在したらその2つのラインを接続する。そして次
のラインに移り、同様の動作を行う。この際いったんつ
なぎ換えの対象になったラインは処理フラグRFを1にし
ておき次回以後の検索対象外とする。
かつ最も下側のラインからつなぎ換え処理を行う。着目
しているラインとプライオリティーフラグPFが等しくか
つ、交点に対する向きが逆向きの(進行フラグDFが等し
くない)ラインを反時計まわりに検索し、該当するライ
ンが存在したらその2つのラインを接続する。そして次
のラインに移り、同様の動作を行う。この際いったんつ
なぎ換えの対象になったラインは処理フラグRFを1にし
ておき次回以後の検索対象外とする。
反時計まわりに検索するには、ライトバッファRBの最も
アドレスの小さいラインから始め、ライトバッファRB内
ではアドレスのインクリメント動作を行い、全て検索し
たらレフトバッファLB内の最アドレスの大きいラインに
移りアドレスのデクリメント動作を行えばよい。またラ
インのつなぎ換え動作によるデータの変更は、各ライン
のデータがリスト構造であるため、各ラインのポインタ
P1,P2を書き換えることによって簡単に行える。
アドレスの小さいラインから始め、ライトバッファRB内
ではアドレスのインクリメント動作を行い、全て検索し
たらレフトバッファLB内の最アドレスの大きいラインに
移りアドレスのデクリメント動作を行えばよい。またラ
インのつなぎ換え動作によるデータの変更は、各ライン
のデータがリスト構造であるため、各ラインのポインタ
P1,P2を書き換えることによって簡単に行える。
表7,表8に示す交点X2におけるレフトバッファLB,ライ
トバッファRBにおいて、ラインC・X2から上記の検索を
行った場合、ラインC・X2とラインX2・Dおよびライン
F・X2とラインX2・Aが新たに接続される。これらのラ
インの接続関係はリスト構造により記憶され、各ライン
のデータはラインバッファLNBに再格納される。同様の
処理を交点X1においても行うと、ラインDEはラインD・
X1,X1・Eに、ラインBCはラインB・X1,X1・Cに分断さ
れ、ラインD・X1とラインX1・CおよびラインB・X1と
ラインX1・Eがそれぞれ新たに接続される。
トバッファRBにおいて、ラインC・X2から上記の検索を
行った場合、ラインC・X2とラインX2・Dおよびライン
F・X2とラインX2・Aが新たに接続される。これらのラ
インの接続関係はリスト構造により記憶され、各ライン
のデータはラインバッファLNBに再格納される。同様の
処理を交点X1においても行うと、ラインDEはラインD・
X1,X1・Eに、ラインBCはラインB・X1,X1・Cに分断さ
れ、ラインD・X1とラインX1・CおよびラインB・X1と
ラインX1・Eがそれぞれ新たに接続される。
また、頂点CにおけるスイープラインSL30についてのワ
ークリストWLの内容は、これらの分断,つなぎ換えが行
われたラインのデータを用いる。頂点C,E,Fについては
ラインの分断,つなぎ換えを行わず、単にワークリスト
WL内にラインの追加,削除を行うだけである。頂点F,ス
イープラインSL50において平面走査を終了し、ラインの
再構成を完了する。
ークリストWLの内容は、これらの分断,つなぎ換えが行
われたラインのデータを用いる。頂点C,E,Fについては
ラインの分断,つなぎ換えを行わず、単にワークリスト
WL内にラインの追加,削除を行うだけである。頂点F,ス
イープラインSL50において平面走査を終了し、ラインの
再構成を完了する。
また後述する演算出力工程において用いるために、各頂
点,交点においてラインの分断,つなぎ換えを行った時
はつなぎ換え後のパターン、つなぎ換えを行わない時は
元のパターンからスタートラインを取り出し、スタート
ラインメモリSTLMに記憶しておく。
点,交点においてラインの分断,つなぎ換えを行った時
はつなぎ換え後のパターン、つなぎ換えを行わない時は
元のパターンからスタートラインを取り出し、スタート
ラインメモリSTLMに記憶しておく。
スタートライとは、後述するように、所要の図形をとり
出すための最初の構成ラインとなるものであり、第7A図
〜第7D図に示すパターンのように、その頂点を構成する
すべてのラインが頂点よりも左側にない場合において、
それらのラインのうちの右向きのものをさす。つまり、
図においては、頂点を通るスイープラインSL71,SL72,SL
73およびSL74より左側にあるラインがないので、それら
のラインの中の右向きのラインL1,L2,L3およびL4がそれ
ぞれの場合のスタートラインとなる。
出すための最初の構成ラインとなるものであり、第7A図
〜第7D図に示すパターンのように、その頂点を構成する
すべてのラインが頂点よりも左側にない場合において、
それらのラインのうちの右向きのものをさす。つまり、
図においては、頂点を通るスイープラインSL71,SL72,SL
73およびSL74より左側にあるラインがないので、それら
のラインの中の右向きのラインL1,L2,L3およびL4がそれ
ぞれの場合のスタートラインとなる。
また、あるスイープラインSLにおいて、上述したような
スタートラインが発生した場合は、以下に述べる規則に
従って各スタートラインに白黒カウンタWBを付与する。
まず、着目しているスイープラインSLにおけるワークリ
ストWL内のすべてのラインから見て、最の下側の分割さ
れた平面においてWB=0とする。次にプライオリティー
フラグPFの場合と同様にy軸の正方向に進行していく。
つまり、ワークリストWL内のラインを下から順にたどっ
ていき、右向きのラインを通過した時にはその平面に対
して白黒カウンタWBを1増加させ、左向きのラインを通
過した時には白黒カウンタWBを1減少させる。分割され
た各平面に白黒カウンタが付与されたら、各スタートラ
インの進行方向に対して左側の平面の白黒カウンタWBを
そのスタートラインの白黒カウンタWBとする。
スタートラインが発生した場合は、以下に述べる規則に
従って各スタートラインに白黒カウンタWBを付与する。
まず、着目しているスイープラインSLにおけるワークリ
ストWL内のすべてのラインから見て、最の下側の分割さ
れた平面においてWB=0とする。次にプライオリティー
フラグPFの場合と同様にy軸の正方向に進行していく。
つまり、ワークリストWL内のラインを下から順にたどっ
ていき、右向きのラインを通過した時にはその平面に対
して白黒カウンタWBを1増加させ、左向きのラインを通
過した時には白黒カウンタWBを1減少させる。分割され
た各平面に白黒カウンタが付与されたら、各スタートラ
インの進行方向に対して左側の平面の白黒カウンタWBを
そのスタートラインの白黒カウンタWBとする。
なお、スタートラインの認識は、各頂点,交点ごとに、
第7図に示すような条件を満足した時だけ行われるの
で、第1図のフローチャートには明記していない。
第7図に示すような条件を満足した時だけ行われるの
で、第1図のフローチャートには明記していない。
以上のように各点において平面走査を完了したら、新た
に構成された各ラインのデータをラインバッファLNBに
格納し、準備工程を終了する。第8図は第3A図に示す図
形に以上の工程を施して得られた最終的なパターンであ
り、ラインSTL1,STL2はそれぞれWB=1,2であるスタート
ラインを、また矢印を付した円弧は各ライン間の接続関
係を示している。
に構成された各ラインのデータをラインバッファLNBに
格納し、準備工程を終了する。第8図は第3A図に示す図
形に以上の工程を施して得られた最終的なパターンであ
り、ラインSTL1,STL2はそれぞれWB=1,2であるスタート
ラインを、また矢印を付した円弧は各ライン間の接続関
係を示している。
C.演算出力工程 第9図はこの発明の一実施例での重合度による図形の認
識方法の演算出力工程を示すフローチャートである。ス
テップS91において、前述した準備工程で再構成された
閉図形のデータをラインバッファLNBから読み出す。ま
た、次のステップS92で、スタートラインメモリSTLMか
らスタートラインを読み出す。以上の工程は準備工程で
用意されたデータを再び読み出すものである。
識方法の演算出力工程を示すフローチャートである。ス
テップS91において、前述した準備工程で再構成された
閉図形のデータをラインバッファLNBから読み出す。ま
た、次のステップS92で、スタートラインメモリSTLMか
らスタートラインを読み出す。以上の工程は準備工程で
用意されたデータを再び読み出すものである。
ステップS93において、重合度に応じたスタートライン
を指定し、対応する図形を求める。この分割された各平
面の重合度は白黒カウンタWBによって示される。OR図形
なら白黒カウンタWBが1の平面を指定すればよく、AND
図形なら白黒カウンタWBが2の平面を指定すればよい。
これらの図形の最外形線は、各出力図形の重合度に応じ
た白黒カウンタWBを有するスタートラインを指定し、そ
こから順に元のスタートラインにもどるまで各ラインを
接続していくことにより求められる。
を指定し、対応する図形を求める。この分割された各平
面の重合度は白黒カウンタWBによって示される。OR図形
なら白黒カウンタWBが1の平面を指定すればよく、AND
図形なら白黒カウンタWBが2の平面を指定すればよい。
これらの図形の最外形線は、各出力図形の重合度に応じ
た白黒カウンタWBを有するスタートラインを指定し、そ
こから順に元のスタートラインにもどるまで各ラインを
接続していくことにより求められる。
前述した第8図から、第3A図に示す三角形△ABC,△DEF
のAND図形を求める場合について説明する。まずWB=2
であるスタートラインSTL2をまず指定し、リスト構造に
よりラインL12,L22,L32とたどっていき、ラインSTL2に
もどり閉ループを形成したら、その内部がAND図形とな
る。またOR図形についてもWB=1であるラインSTL1を指
定し、ラインL11,L21,L31,L41,L51とたどっていけば同
様にして得られる。
のAND図形を求める場合について説明する。まずWB=2
であるスタートラインSTL2をまず指定し、リスト構造に
よりラインL12,L22,L32とたどっていき、ラインSTL2に
もどり閉ループを形成したら、その内部がAND図形とな
る。またOR図形についてもWB=1であるラインSTL1を指
定し、ラインL11,L21,L31,L41,L51とたどっていけば同
様にして得られる。
また、排他的OR図形なども、このようにして得られたOR
図形にAND図形の周知のヌキ動作を施せば簡単に得られ
る。
図形にAND図形の周知のヌキ動作を施せば簡単に得られ
る。
さらに、より複雑な図形において2重AND,3重AND図形を
得たい場合には、WB=3,4のスタートラインをそれぞれ
指定することにより同様にして得られる。
得たい場合には、WB=3,4のスタートラインをそれぞれ
指定することにより同様にして得られる。
ステップS94において、得られた図形をCRTやプロッター
などの出力機器に出力する。以上の工程を経て演算出力
工程を終了する。
などの出力機器に出力する。以上の工程を経て演算出力
工程を終了する。
D.応用例 次にこの発明の重合度による図形の認識装置を円弧など
のパラメトリックな図形を含む複数の閉図形に適用する
場合について説明する。
のパラメトリックな図形を含む複数の閉図形に適用する
場合について説明する。
第10図はこの発明の適用対象の一例であるパラメトリッ
ク図形を含む複数の閉図形を示す図である。三角形△AB
Cおよび円弧JKGを含む閉図形のGHJKが示されている。点
Kにおいて円弧JKGはy軸に平行なスイープラインSLk
に接し、かつ曲線の方向がx軸について逆になっている
ので点Kは変曲点となる。なお、ここでで言う「変曲
点」とは、通常の意味における変曲点(2階微係数の符
号変化点)ではなく、着目している構成ラインを所定の
方向にたどり、x方向に関して、そのラインの方向が変
化する点を指すものとする。
ク図形を含む複数の閉図形を示す図である。三角形△AB
Cおよび円弧JKGを含む閉図形のGHJKが示されている。点
Kにおいて円弧JKGはy軸に平行なスイープラインSLk
に接し、かつ曲線の方向がx軸について逆になっている
ので点Kは変曲点となる。なお、ここでで言う「変曲
点」とは、通常の意味における変曲点(2階微係数の符
号変化点)ではなく、着目している構成ラインを所定の
方向にたどり、x方向に関して、そのラインの方向が変
化する点を指すものとする。
まず前処理として、このような変曲点を求めておき、次
に隣接する頂点から仮想ラインJK,KGを第11図に示すよ
うに想定する。このような処理は平面走査を行うに際し
て、一つのラインが一スイープラインSL上で2つ以上の
y座標を持たないようにするためのものである。
に隣接する頂点から仮想ラインJK,KGを第11図に示すよ
うに想定する。このような処理は平面走査を行うに際し
て、一つのラインが一スイープラインSL上で2つ以上の
y座標を持たないようにするためのものである。
次に第1図に示す準備工程のステップS11と同様に閉図
形の入力を行う。三角形△ABCは前述した例と同様の形
で入力される。また図形GHJKは変曲点Kを求められ、第
10図,第11図に示すようにラインGH,HJおよび円弧JK,KG
に分割して入力される。また円弧JK,KGに対応する仮想
ラインJK,KGも同時に求められ入力される。
形の入力を行う。三角形△ABCは前述した例と同様の形
で入力される。また図形GHJKは変曲点Kを求められ、第
10図,第11図に示すようにラインGH,HJおよび円弧JK,KG
に分割して入力される。また円弧JK,KGに対応する仮想
ラインJK,KGも同時に求められ入力される。
次にステップS12と同様に頂点および交点を平面走査法
により認識する。第12図に示すスイープラインSLhにお
いて、ワークリストWL内にはラインHJ,GH,BC,CAが登録
されており、これらはすべて通常のラインであるので前
述した交差判定方法を用い、交点X10を認識する。ライ
ンの分断,つなぎ換えも前述した方法により同様に行
う。
により認識する。第12図に示すスイープラインSLhにお
いて、ワークリストWL内にはラインHJ,GH,BC,CAが登録
されており、これらはすべて通常のラインであるので前
述した交差判定方法を用い、交点X10を認識する。ライ
ンの分断,つなぎ換えも前述した方法により同様に行
う。
スイープラインSLgに進むと仮想ラインKGがワークリス
トWL内に登録される。仮想ラインが登録された場合は、
もとの円弧KGのデータを用いて交差判定を行う。なお他
の通常のラインの間の交差判定は、前述したとおりであ
る。
トWL内に登録される。仮想ラインが登録された場合は、
もとの円弧KGのデータを用いて交差判定を行う。なお他
の通常のラインの間の交差判定は、前述したとおりであ
る。
円弧KGとラインCAとの交点X20が求まったら、この交点
のデータを用いて、仮想ラインKGのかわりに仮想ライン
K・X20,X20・Gを登録する。
のデータを用いて、仮想ラインKGのかわりに仮想ライン
K・X20,X20・Gを登録する。
次に第13図を参照して、交点X20でのラインの分断,つ
なぎ換えを説明する。
なぎ換えを説明する。
前述した例と同様に、各ラインおよび各仮想ラインを交
点X20で分断し、プライオリティーフラグPF,方向フラグ
DF,処理フラグRFを付与する。レフトバッファLB,ライト
バッファRBは下記表9,10のようになる。
点X20で分断し、プライオリティーフラグPF,方向フラグ
DF,処理フラグRFを付与する。レフトバッファLB,ライト
バッファRBは下記表9,10のようになる。
この表9,10から前述した規則に従って(仮想)ラインの
つなぎ換えを行う。ラインG・X20と仮想ラインX20・G
および仮想ラインK・X20とラインX20・Aとがそれぞれ
新たに接続される。
つなぎ換えを行う。ラインG・X20と仮想ラインX20・G
および仮想ラインK・X20とラインX20・Aとがそれぞれ
新たに接続される。
交点X20における処理が終了したら、頂点C,J,Kにおいて
ワークリストWLに各(仮想)ラインの登録,削除を行う
だけである。以上の準備工程を終了した後の各(仮想)
ラインの接続関係を第14図に示す。
ワークリストWLに各(仮想)ラインの登録,削除を行う
だけである。以上の準備工程を終了した後の各(仮想)
ラインの接続関係を第14図に示す。
さらに演算出力工程においては、仮想ラインにより記憶
されている部分をもとのパラメトリックな図形におきか
えて第15A図,第15B図のようにそれぞれOR図形,AND図形
を出力することができる。
されている部分をもとのパラメトリックな図形におきか
えて第15A図,第15B図のようにそれぞれOR図形,AND図形
を出力することができる。
以上のようにパラメトリックな図形に対しても、その認
識のための分割を最小に抑え、交点の認識および演算出
力以外は直線図形と同様の手順よって図形の論理演算を
行うことができる。
識のための分割を最小に抑え、交点の認識および演算出
力以外は直線図形と同様の手順よって図形の論理演算を
行うことができる。
E.回路構成 以上のような処理を行う処理装置3(第2図)の回路構
成を第16図のブロック図に示す。入力ポートIPから処理
対象となる複数の閉図形がCPUに入力される。CPUは閉図
形のパターンを認識し、リスト構造を有するラインのデ
ータおよび頂点のデータをそれぞれ、ラインバッファLN
Bおよび頂点バッファAPBに入力する。また、前述した平
面走査により、現在のワークリストWL1および1つ前の
ワークリストWL0が構築され、ワークリストWL0からはレ
フトバッファLBが、ワークリストWL1からはライトバッ
ファRBが前述したラインの分断,つなぎ換えのために構
築される。この時プライオリティーフラグ用カウンタPF
Cも構築される。
成を第16図のブロック図に示す。入力ポートIPから処理
対象となる複数の閉図形がCPUに入力される。CPUは閉図
形のパターンを認識し、リスト構造を有するラインのデ
ータおよび頂点のデータをそれぞれ、ラインバッファLN
Bおよび頂点バッファAPBに入力する。また、前述した平
面走査により、現在のワークリストWL1および1つ前の
ワークリストWL0が構築され、ワークリストWL0からはレ
フトバッファLBが、ワークリストWL1からはライトバッ
ファRBが前述したラインの分断,つなぎ換えのために構
築される。この時プライオリティーフラグ用カウンタPF
Cも構築される。
平面走査を行い交点が認識された場合は交点バッファCR
Bに、またスタートラインが認識された場合はスタート
ラインメモリSTLMに入力される。前述したように図形の
演算出力工程においてスタートラインは白黒カウンタWB
Cから白黒カウンタWBを付与される。さらにこのスター
トラインをもとにして、指定された重合度に応じたライ
ンが出力ポートOPから読み出される。出力ポートOPは通
常CRT,プロッターなどの出力機器のバッファに接続され
ている。
Bに、またスタートラインが認識された場合はスタート
ラインメモリSTLMに入力される。前述したように図形の
演算出力工程においてスタートラインは白黒カウンタWB
Cから白黒カウンタWBを付与される。さらにこのスター
トラインをもとにして、指定された重合度に応じたライ
ンが出力ポートOPから読み出される。出力ポートOPは通
常CRT,プロッターなどの出力機器のバッファに接続され
ている。
F.変換例 第17A図,第17B図はラインの分断,つなぎ換えを行うべ
き頂点の例を示す図である。第17A図はラインL71,L72で
形成された頂点を別のラインL73が通過している場合、
第17B図は2以上の頂点が重なっており、それぞれのラ
インの組(L74,L75)と(L76,L77)とから形成される2
つの領域に一部重なりがある場合である。このような頂
点は、各ラインの上下関係、すなわちその頂点から出る
ラインおよびその頂点に入るラインが上下方方向にどの
ような順序で配列しているかによって認識され、前述し
たラインの分断,つなぎ換え処理の対象となる。
き頂点の例を示す図である。第17A図はラインL71,L72で
形成された頂点を別のラインL73が通過している場合、
第17B図は2以上の頂点が重なっており、それぞれのラ
インの組(L74,L75)と(L76,L77)とから形成される2
つの領域に一部重なりがある場合である。このような頂
点は、各ラインの上下関係、すなわちその頂点から出る
ラインおよびその頂点に入るラインが上下方方向にどの
ような順序で配列しているかによって認識され、前述し
たラインの分断,つなぎ換え処理の対象となる。
なお、以上の実施例においては、x方向に対して平面走
査を行う例について述べたが、y方向に対して平面走査
を行う場合についても同様の手法を適用できる。
査を行う例について述べたが、y方向に対して平面走査
を行う場合についても同様の手法を適用できる。
以上のようにこの発明によれば、入力された複数の閉図
形において、それらの閉図形の交点のみに着目してライ
ンの分断およびつなぎ換えを行うので、装置全体の構成
が簡略化され、処理全体に要する時間を大幅に短縮でき
る。
形において、それらの閉図形の交点のみに着目してライ
ンの分断およびつなぎ換えを行うので、装置全体の構成
が簡略化され、処理全体に要する時間を大幅に短縮でき
る。
また、ラインの分断およびつなぎ換え処理を施され、再
構成された閉図形のデータは、リスト構造により認識さ
れるので、任意の重合度に応じて対応する図形が出力で
き、重合度の異なる図形についても、処理のための構成
を共通化できる。
構成された閉図形のデータは、リスト構造により認識さ
れるので、任意の重合度に応じて対応する図形が出力で
き、重合度の異なる図形についても、処理のための構成
を共通化できる。
さらに、パラメトリックな部分を含む図形の処理にも適
用でき、近似ラインを少なくし、また必要に応じて元の
データを読み出すことにより、短時間で正確に図形の演
算処理が行える。また、ラインのつなぎ換えにあたって
は、各交点において生成された分断ラインにその分断ラ
インがどのような重合部分の輪郭に相当するラインであ
るかを表現する数値フラグを付与し、その数値フラグに
基づいてつなぎ換えを行っているため、2つの図形のみ
ならずそれ以上の図形が重なっている場合でも、高速か
つ自動的な重合度ごとの図形認識が可能となる。
用でき、近似ラインを少なくし、また必要に応じて元の
データを読み出すことにより、短時間で正確に図形の演
算処理が行える。また、ラインのつなぎ換えにあたって
は、各交点において生成された分断ラインにその分断ラ
インがどのような重合部分の輪郭に相当するラインであ
るかを表現する数値フラグを付与し、その数値フラグに
基づいてつなぎ換えを行っているため、2つの図形のみ
ならずそれ以上の図形が重なっている場合でも、高速か
つ自動的な重合度ごとの図形認識が可能となる。
第1図はこの発明の一実施例による重合度による図形の
認識装置の準備工程を示すフローチャート、 第2図はこの発明の一実施例にかかる装置の概略図、 第3図はこの発明を適用する対象の一例である三角形お
よび、その構成ベクトルを示す図、 第4図は第3図に示す三角形を平面走査して、交差判定
を行うようすを示す図、 第5図は交点におけるラインの分断,つなぎ換えのよう
すを示す図、 第6図はプライオリティーフラグの付与方法を示す図、 第7図はスタートラインを示す図、 第8図は第3図に示す三角形を再構成して得たたパター
ンを示す図、 第9図はこの発明の一実施例による重合度による図形の
認識装置の演算出力工程を示すフローチャート、 第10図はパラメトリック図形を含む閉図形を示す図、 第11図は第10図に示す閉図形の仮想ラインを示した図、 第12図は第11図に示す図形に平面走査を適用したようす
を示した図、 第13図は第11図に示す図形の交点におけるラインの分
断,つなぎ換えのようすを示した図、 第14図は再構成されたパラメトリック図形の例を示す
図、 第15図は第14図に示す図形から演算出力された図形を示
す図、 第16図はこの発明の実施例である装置の回路構成を示す
ブロック図、 第17図は頂点におけるつなぎ換えのようすを示す図であ
る。 1……入力タブレット、2……スタイラスペン、 3……処理装置、4……CRT、 LNB……ラインバッファ、 APB……頂点バッファ、CRB……交点バッファ、 WL……ワークリスト、 PFC……プライオリティーフラグ用カウンタ、 STLM……スタートラインメモリ、 WBC……白黒カウンタ
認識装置の準備工程を示すフローチャート、 第2図はこの発明の一実施例にかかる装置の概略図、 第3図はこの発明を適用する対象の一例である三角形お
よび、その構成ベクトルを示す図、 第4図は第3図に示す三角形を平面走査して、交差判定
を行うようすを示す図、 第5図は交点におけるラインの分断,つなぎ換えのよう
すを示す図、 第6図はプライオリティーフラグの付与方法を示す図、 第7図はスタートラインを示す図、 第8図は第3図に示す三角形を再構成して得たたパター
ンを示す図、 第9図はこの発明の一実施例による重合度による図形の
認識装置の演算出力工程を示すフローチャート、 第10図はパラメトリック図形を含む閉図形を示す図、 第11図は第10図に示す閉図形の仮想ラインを示した図、 第12図は第11図に示す図形に平面走査を適用したようす
を示した図、 第13図は第11図に示す図形の交点におけるラインの分
断,つなぎ換えのようすを示した図、 第14図は再構成されたパラメトリック図形の例を示す
図、 第15図は第14図に示す図形から演算出力された図形を示
す図、 第16図はこの発明の実施例である装置の回路構成を示す
ブロック図、 第17図は頂点におけるつなぎ換えのようすを示す図であ
る。 1……入力タブレット、2……スタイラスペン、 3……処理装置、4……CRT、 LNB……ラインバッファ、 APB……頂点バッファ、CRB……交点バッファ、 WL……ワークリスト、 PFC……プライオリティーフラグ用カウンタ、 STLM……スタートラインメモリ、 WBC……白黒カウンタ
Claims (1)
- 【請求項1】所定の画像処理装置を用いた図形記録また
は図形表示のために、複数の閉図形に対して図形の重な
り態様を示す重合度を指定することにより、前記重合度
による図形を認識する装置であって、 前記複数の閉図形の構成ラインのデータをベクトル形式
で表現してリスト構造により蓄積する蓄積手段と、 前記複数の図形が形成する交点を検出する交点検出手段
と、 前記交点のそれぞれにつき、当該交点において各構成ラ
インを分断して分断ラインとする分断手段と、 前記交点ごとに、当該交点への各分断ラインの出入方向
を区別しつつ、前記分断ラインの位置に応じた順序で前
記分断ラインを登録するバッファメモリと、 前記交点ごとに、当該交点に出入りする各分断ラインで
分割された各分割平面を当該交点をまわる方向に沿って
追跡しつつ、各分割平面に至るまでに分断ラインを通過
した数を前記出入方向を正負の符号で区別しつつカウン
トして、そのカウント値に応じた数値フラグを各分割平
面について決定するとともに、前記バッファメモリ中の
各分断ラインに、当該分断ラインの前記出入り方向に向
かって一方の側に隣接する分割平面についての前記数値
フラグを付与するカウント手段と、 前記交点のそれぞれについて前記バッファメモリをアド
レス順に検索し、前記出入方向が逆であり、かつ前記数
値フラグが同一値である分断フラグの対を発見する都
度、それらの対を相互に接続させることにより、各交点
において前記構成ラインのつなぎ換えを行うつなぎ換え
手段と、 前記分断およびつなぎ換えを経た後の前記構成ラインの
中から、所望の重合度に応じて指定されるスタートライ
ンにつながった構成ラインの組合わせを抽出する抽出手
段と、 前記抽出された構成ラインの組合わせを、前記所望の重
合度を有する図形の認識結果として出力する出力手段
と、 を備えることを特徴とする、重合度による図形の認識装
置。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63286519A JPH077456B2 (ja) | 1988-11-11 | 1988-11-11 | 重合度による図形の認識装置 |
| US07/432,424 US5179645A (en) | 1988-11-11 | 1989-11-06 | Method of recognizing overlapped graphics in each degree of overlapping thereof |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63286519A JPH077456B2 (ja) | 1988-11-11 | 1988-11-11 | 重合度による図形の認識装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH02132569A JPH02132569A (ja) | 1990-05-22 |
| JPH077456B2 true JPH077456B2 (ja) | 1995-01-30 |
Family
ID=17705460
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP63286519A Expired - Lifetime JPH077456B2 (ja) | 1988-11-11 | 1988-11-11 | 重合度による図形の認識装置 |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US5179645A (ja) |
| JP (1) | JPH077456B2 (ja) |
Families Citing this family (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4999789A (en) * | 1987-02-05 | 1991-03-12 | Hewlett-Packard Co. | Method and apparatus for trimming B-spline descriptions of patches in a high performance three dimensional graphics system |
| US5502802A (en) * | 1990-07-27 | 1996-03-26 | Ricoh Company, Ltd. | Polygonal image-drawing processor |
| JPH04280374A (ja) * | 1991-03-08 | 1992-10-06 | Hitachi Ltd | 曲面生成方法及びその装置 |
| EP0521209B1 (en) * | 1991-07-05 | 2000-03-01 | International Business Machines Corporation | Graphics processing method, apparatus and computer program |
| GB2278524B (en) * | 1993-05-28 | 1997-12-10 | Nihon Unisys Ltd | Method and apparatus for rendering visual images employing area calculation and blending of fractional pixel lists for anti-aliasing and transparency |
| US5761328A (en) * | 1995-05-22 | 1998-06-02 | Solberg Creations, Inc. | Computer automated system and method for converting source-documents bearing alphanumeric text relating to survey measurements |
| US6917877B2 (en) * | 2001-08-14 | 2005-07-12 | Navteq North America, Llc | Method for determining the intersection of polygons used to represent geographic features |
| US20030132932A1 (en) * | 2001-09-17 | 2003-07-17 | Xiangheng Yang | Method for constructing polygons used to represent geographic features |
| CN100370462C (zh) * | 2004-09-17 | 2008-02-20 | 鸿富锦精密工业(深圳)有限公司 | 图元动态消隐系统及方法 |
| US7613341B1 (en) * | 2005-04-19 | 2009-11-03 | Adobe Systems Incorporated | Gap detection in a drawing |
| CN101685544B (zh) * | 2008-09-28 | 2011-11-23 | 北大方正集团有限公司 | 一种简化复杂路径的方法及装置 |
| JP5672044B2 (ja) | 2011-02-14 | 2015-02-18 | 富士通株式会社 | 図形処理プログラム、方法及び装置 |
| JP5949203B2 (ja) | 2012-06-21 | 2016-07-06 | 富士通株式会社 | 変更プログラム、変更方法、および変更装置 |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5714964A (en) * | 1980-06-30 | 1982-01-26 | Fujitsu Ltd | Pattern processor |
| DE3688918T2 (de) * | 1985-05-24 | 1993-12-23 | Hitachi Ltd | System für geometrische Verarbeitung. |
-
1988
- 1988-11-11 JP JP63286519A patent/JPH077456B2/ja not_active Expired - Lifetime
-
1989
- 1989-11-06 US US07/432,424 patent/US5179645A/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JPH02132569A (ja) | 1990-05-22 |
| US5179645A (en) | 1993-01-12 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP0697679A2 (en) | Computerized drawing method | |
| JPH077456B2 (ja) | 重合度による図形の認識装置 | |
| JPH0251786A (ja) | 走査変換方法 | |
| JPH063606B2 (ja) | コンピュータ支援製図システム | |
| JP2001526813A (ja) | 基準ベースのパラメータ寸法決定方法及びシステム | |
| US6879872B2 (en) | Method for generating three-dimensional sheet-metal model and a computer program | |
| JP2013114655A (ja) | 画像処理装置、画像処理方法、及びコンピュータプログラム | |
| CN112100795A (zh) | 一种计算机辅助设计图纸的对比方法及装置 | |
| JPH0962850A (ja) | 線対称図形整形装置及び任意の数の対称軸の全てについて線対称な図形を生成する方法 | |
| JPH08180200A (ja) | 図形配置装置 | |
| JP2625612B2 (ja) | 画像処理方法および画像処理装置 | |
| JPH07271847A (ja) | 造成地形のモデリング方法及び装置 | |
| JPS61131171A (ja) | 図形エレメント選択装置 | |
| JP3389388B2 (ja) | 図面編集装置 | |
| JP4489468B2 (ja) | プリント基板の設計装置におけるクリアランス距離測定方法、プリント基板の設計装置におけるクリアランス距離測定装置、プログラムおよびコンピューター読み取り可能な記録媒体 | |
| JP2777628B2 (ja) | 図形処理方法及び装置 | |
| JP2912132B2 (ja) | 寸法線記入方式 | |
| JP3305395B2 (ja) | 図形分割装置 | |
| JP3251744B2 (ja) | 交点追跡法による画像生成方法 | |
| JP2544330B2 (ja) | 図面デ−タの管理方法 | |
| JPS61138375A (ja) | 図形情報処理装置 | |
| JPH0253823B2 (ja) | ||
| JP3530390B2 (ja) | 地図図形変形方法、地図図形変形装置および地図図形変形プログラムを記録した記録媒体 | |
| JP3481294B2 (ja) | 寸法線自動引出しシステム | |
| JPS6297070A (ja) | 有限要素処理装置 |