説明

図面情報の品質評価方法

【課題】クリアランスを考慮した全件自動検査を可能にすること。
【解決手段】(1)「図形1の交点P1間の部分図形PD」と「図形2のクリアランス境界CB」との交差判定を行い、表Aを作成し、(2)表Aで「交差なし」と判定されたものについて、「図形1の交点P1間の部分図形PDを拡張した拡張部分図形EPD」と「図形2のクリアランス境界CB」との交差判定を行い、表Bを作成し、(3)表Aと表Bとから表Cを作成し、それぞれの交差が「クリアランスを超えた交差」かどうかを判定し、図形1から見た判定結果を得、(4)図形1と図形2とを入れ換えて上記(1)〜(3)を繰り返し、図形2から見た判定結果を得、(5)「図形1から見た判定結果」と「図形2から見た判定結果」の両方で「クリアランスを超えた交差」と判定された交差のみを、最終的に「クリアランスを超えた交差」と判定する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、地理空間情報等図面情報の品質評価方法に関する。
【背景技術】
【0002】
JSGI(Japanese Standards for Geographic Information(地理情報標準)に基づく、地理空間情報の論理一貫性位相の「ねじれ(交差)」品質評価検査の実施は、クリアランスと呼ばれる許容誤差を認めているが、従来システムでは、完全交差(クリアランスを考慮しない)による全件検査、もしくは目視による検査が実施されており、クリアランスを考慮した全件自動検査は困難であった。なお、先行技術文献として非特許文献1がある。
【先行技術文献】
【非特許文献】
【0003】
【非特許文献1】渡邉孝三・岡部篤行・中村秀至(2008):GISデータの位相検査の交差判定ツールの開発とその適用による有効性の検討.「GIS−理論と応用」16(1).59−68
【発明の開示】
【発明が解決しようとする課題】
【0004】
本発明は、上記の点にかんがみ、地理空間情報のみに限定されず広く図面情報に適用可能であって、クリアランスを考慮した全件自動検査を可能にする図面情報の品質評価方法を提供することを目的とする。
【発明の概要】
【課題を解決するための手段】
【0005】
本発明の図面情報の品質評価方法は、
図形1と図形2とからなる図面情報をコンピュータからなる検査装置に入力し、該検査装置において、品質評価検査を行って検査結果データを出力する図面情報の品質評価方法であって、少なくとも下記工程(a)〜(c)を実行し、
(a)クリアランスを考慮せずに、図形1と図形2の交差判定を行い、交点Pを求める
(b)「図形1の交点P1間の部分図形PD」と「図形2のクリアランス境界CB」との交差判定を行う
(c)前記工程(b)で「交差なし」と判定されたものについて、「図形1の交点P1間の部分図形PDを拡張した拡張部分図形EPD」と「図形2のクリアランス境界CB」との交差判定を行う
前記工程(b)及び(c)は、それぞれ、下記工程(g-1)〜(g-4)及び(g-5-a)又は(g-5-b)
(g-1)前記工程(b)の場合、図形1の交点P1から前(始点PST寄り)の交点P1(前の交点P1が無い場合は始点PST)までの部分図形PDbと、図形1の交点P1から次(終点PEN寄り)の交点P1(次の交点P1が無い場合は終点PEN)までの部分図形PDaとを設定し、一方、前記工程(c)の場合、図形1の交点P1から始点PSTまでの拡張部分図形EPDb、又は、図形1の交点P1から終点PENまでの拡張部分図形EPDaを設定する
(g-2)図形2を構成する線分群のうち、図形1の交点P1のある線分BLについてのクリアランス境界CBbを設定する
(g-3)前記工程(b)の場合、部分図形PDbとクリアランス境界CBbとの交差判定、及び、部分図形PDaとクリアランス境界CBbとの交差判定を行い、一方、前記工程(c)の場合、拡張部分図形EPDbとクリアランス境界CBbとの交差判定、又は、拡張部分図形EPDaとクリアランス境界CBbとの交差判定を行う
(g-4)「交差あり」か否かを判定する
(g-5-a)「交差なし」の場合、「交差なし」と判定する
(g-5-b)一方、「交差あり」の場合、所定の第1条件が成立するか否かを判定し、
前記第1条件が成立しない場合、「交差あり」と判定し、
一方、前記第1条件が成立する場合、所定の第2条件が成立するか否かを判定し、
前記第2条件が成立しない場合、次の隣接線分NNLがあるか否かを判定し、
前記次の隣接線分NNLがない場合、「交差あり」と判定し、一方、前記次の隣接線分NLLがある場合、前記次の隣接線分NNLで前記第1条件が成立するか否かの判定に戻り、
一方、前記第2条件が成立する場合、所定の第3条件が成立するか否かを判定し、
前記第3条件が成立しない場合、「交差あり」と判定し、
一方、前記第3条件が成立する場合、隣接線分NLのクリアランス境界CB(CBn)を使用した交差判定を行う
からなり、
前記第1条件は、「図形Aが判定円C内を通過すること」、前記第2条件は、「最初の交点Pfが線分(現在の線分)BLに隣接する隣接線分NLのクリアランス境界CBn内にあること」、前記第3条件は、「図形Bが判定円C内を通過すること」であり、前記「図形A」とは、前記部分図形PD又は前記拡張部分図形EPDの始点Psから、前記部分図形PD又は前記拡張部分図形EPDとクリアランス境界CBとの最初の交点Pfまでの図形をいい、前記「判定円C」とは、隣接線分NLの線分BL側の端点Peを中心とする半径クリアランスの円をいい、前記「図形B」とは、前記部分図形PD又は前記拡張部分図形EPDにおいて、前記図形Aと前記隣接線分NLのクリアランス境界CBnとの最後の交点Plから最初の交点Pfまでの図形をいう(但し、最後の交点Plがない場合、図形Bは図形Aと同じになる。)
ことを特徴とする。
【0006】
本発明の図面情報の品質評価方法によると、検査装置(コンピュータ)上で「クリアランスを超えた交差」かどうかの判定が正しく行われるようになり、地理空間情報の品質評価を自動で行い、クリアランスを考慮した全件検査が可能となる。
【図面の簡単な説明】
【0007】
【図1】本発明の一実施形態に係る図面情報の品質評価方法を実施するシステムの構成図である。
【図2】品質評価方法の内容を示すフローチャートである。
【図3】交点Pの求め方を示す説明図である。
【図4】同じく、交点Pの求め方を示す説明図である。
【図5】図形及び線分のクリアランス境界の説明図である。
【図6】クリアランス境界の求め方を示す
【図7】図形と線分のクリアランス境界との交差判定の説明図である。
【図8】線分と円弧の交差判定の説明図である。
【図9】交点がクリアランス境界内にあるかどうかの判定方法の説明図である。
【図10】図形が円内を通過するかどうかの判定方法の説明図である。
【図11】線分と円の交差判定の説明図である。
【図12】円周上の点が円弧上にあるかどうかの判定方法の説明図である。
【図13】図2図示ステップS2の具体的内容を示すフローチャートである。
【図14】図形1と図形2との交差判定を具体的に説明するための図形図である。
【図15】図14図示の図形に対する交差判定方法を説明するための説明図である。
【図16】同じく、図14図示の図形に対する交差判定方法を説明するための説明図である。
【図17】同じく、図14図示の図形に対する交差判定方法を説明するための説明図である。
【図18】同じく、図14図示の図形に対する交差判定方法を説明するための説明図である。
【図19】同じく、図14図示の図形に対する交差判定方法を説明するための説明図である。
【図20】同じく、図14図示の図形に対する交差判定方法を説明するための説明図である。
【図21】図14図示の図形に対する交差判定方法により得られた表Aの構成図である。
【図22】「交差なし」と判定される図形例の構成図である。
【図23】図形Aが判定円C内を通過しない図形例の構成図である。
【図24】次の隣接線分NNLで再度条件判定を行うかどうかの判定方法を説明するための図形例の構成図である。
【図25】同じく、次の隣接線分NNLで再度条件判定を行うかどうかの判定方法を説明するための図形例の構成図である。
【図26】隣接線分NLのクリアランス境界CBnを使用した交差判定を継続するかどうかの判定方法を説明するための図形例の構成図である。
【図27】変更後の部分図形PDの説明図である。
【図28】図形と線分のクリアランス境界との交差判定の具体例を示す図である。
【図29】同じく、図形と線分のクリアランス境界との交差判定の具体例を示す図であり、前半部分の説明図である。
【図30】図29に続く後半部分の説明図である。
【図31】交差判定の結果が「端側と交差」になった場合の説明図である。
【図32】同じく、交差判定の結果が「端側と交差」になった場合の説明図である。
【図33】同じく、交差判定の結果が「端側と交差」になった場合の説明図である。
【図34】同じく、交差判定の結果が「端側と交差」になった場合の説明図である。
【図35】同じく、交差判定の結果が「端側と交差」になった場合の説明図である。
【図36】同じく、交差判定の結果が「端側と交差」になった場合の説明図である。
【図37】表Bの作成方法の説明図である。
【図38】同じく、表Bの作成方法の説明図である。
【図39】始点側と終点側の両方で隣接線分のクリアランス境界との交差判定を行う場合の判定方法の説明図である。
【図40】同じく、始点側と終点側の両方で隣接線分のクリアランス境界との交差判定を行う場合の判定方法の説明図である。
【図41】同じく、始点側と終点側の両方で隣接線分のクリアランス境界との交差判定を行う場合の判定方法の説明図である。
【図42】同じく、始点側と終点側の両方で隣接線分のクリアランス境界との交差判定を行う場合の判定方法の説明図である。
【図43】同じく、始点側と終点側の両方で隣接線分のクリアランス境界との交差判定を行う場合の判定方法の説明図である。
【図44】同じく、始点側と終点側の両方で隣接線分のクリアランス境界との交差判定を行う場合の判定方法の説明図である。
【図45】同じく、始点側と終点側の両方で隣接線分のクリアランス境界との交差判定を行う場合の判定方法の説明図である。
【図46】同じく、始点側と終点側の両方で隣接線分のクリアランス境界との交差判定を行う場合の判定方法の説明図である。
【図47】同じく始点側と終点側の両方で隣接線分のクリアランス境界との交差判定を行う場合の判定方法の説明図である。
【図48】図形の具体例による交差判定結果を示す図である。
【図49】同じく、図形の具体例による交差判定結果を示す図である。
【図50】同じく、図形の具体例による交差判定結果を示す図である。
【図51】同じく、図形の具体例による交差判定結果を示す図である。
【図52】同じく、図形の具体例による交差判定結果を示す図である。
【図53】同じく、図形の具体例による交差判定結果を示す図である。
【図54】同じく、図形の具体例による交差判定結果を示す図である。
【図55】表Cの内容から最終的に「クリアランスを超えた交差」かどうかを判定する方法についての説明図である。
【図56】図形1から見た判定結果と図形2から見た判定結果から最終的に交差判定を行う方法についての説明図である。
【図57】本実施形態の効果を説明するための説明図である。
【図58】同じく本実施形態の効果を説明するための説明図である。
【図59】同じく本実施形態の効果を説明するための説明図である。
【図60】同じく本実施形態の効果を説明するための説明図である。
【図61】同じく本実施形態の効果を説明するための説明図である。
【図62】同じく本実施形態の効果を説明するための説明図である。
【発明を実施するための形態】
【0008】
図1は、本発明の一実施形態に係る図面情報の品質評価方法を実施するシステムの構成を示し、コンピュータからなる検査装置1は、地理空間情報を入力し、入力した地理空間情報に対して品質評価検査を行って、検査結果データを出力する。
【0009】
検査装置1は、地理空間情報が図形1と図形2とからなる地理空間情報である場合、品質評価検査を図2に示す手順で行う。なお、以下の説明は、数学座標系を使用している。
【0010】
図2において、まず、クリアランスを考慮せずに、図形1と図形2の交差判定を行い、交点Pを求める(ステップS1)。
【0011】
次に、「図形1の交点P1間の部分図形PD」と「図形2のクリアランス境界CB」との交差判定を行い、表Aを作成する(ステップS2)。
【0012】
次に、ステップS2で「交差なし」と判定されたものについて、「図形1の交点P1間の部分図形PDを拡張した拡張部分図形EPD」と「図形2のクリアランス境界CB」との交差判定を行い、表Bを作成する(ステップS3)。
【0013】
次に、表Aと表Bとから表Cを作成し、それぞれの交差が「クリアランスを超えた交差」かどうかを判定し、図形1から見た判定結果を得る(ステップS4)。
【0014】
次に、図形1と図形2とを入れ換えてステップS2〜S4を繰り返し、図形2から見た判定結果を得る(ステップS5)。
【0015】
最後に、「図形1から見た判定結果」と「図形2から見た判定結果」の両方で「クリアランスを超えた交差」と判定された交差のみを、最終的に「クリアランスを超えた交差」と判定する(ステップS6)。
【0016】
以下、ステップS1〜S6の具体的内容を順に説明する。
【0017】
A. ステップS1
ステップS1では、クリアランスを考慮せずに、図形1と図形2との交差判定を行い、交点Pを求める(図14参照。図14に示すP1が交点Pである。なお、図14に示すCBは、図形2のクリアランス境界である。)。
【0018】
図3に示すように、図形1がm個の線分1−1、1−2、…、1−mからなり、また、図形2がn個の線分2−1、2−2、…、2−nからなる場合、図形1の線分1−1と図形2の各線分2−1、2−2、…、2−nとの交差判定、図形1の線分1−2と図形2の各線分2−1、2−2、…、2−nとの交差判定、…、図形1の線分1−mと図形2の各線分2−1、2−2、…、2−nとの交差判定を行い、交点Pを求める。
【0019】
交点Pを求めるに当たっては、図4に示すように、図形1の線分Aの端点を(x1,y1)、(x2,y2)とし、図形2の線分Bの端点を(x3,y3)、(x4,y4)とした場合、最初に、2点(x1,y1)、(x2,y2)を通る直線と2点(x3,y3)、(x4,y4)を通る直線との交点(x,y)を求める。そして、求めた交点(x,y)が、線分A上にあり、かつ、線分B上にあるとき、線分Aと線分Bが交点(x,y)で交差すると判定する。
【0020】
B. ステップS2
ステップS2では、「図形1の交点P1間の部分図形PD」と「図形2のクリアランス境界CB」との交差判定を行い、表Aを作成する。
【0021】
a) 図形1の交点P1間の部分図形PD
図形1の交点P1間の部分図形PDは、基本的には、例えば図15(B)に太線で示すように、図形1において始点側の交点P1(P1b)と終点側の交点P1(P1a)との間の図形であるが、後述するように、交点P1から前の交点までの図形、及び、交点P1から次の交点までの図形により構成される。
【0022】
b) クリアランス境界CB
クリアランス境界CBとは、図形又は線分からの距離がクリアランス以内となる領域(クリアランス領域)の境界線であり、図形のクリアランス境界CBは、図5(A)に示すように、図形を取り囲む閉ループ線で表され、線分のクリアランス境界CBは、図5(B)に示すように、線分を取り囲む閉ループ線で表される。
【0023】
そして、図形のクリアランス境界CBは、図5(A)に示すように、図形の始点から終点に向かう方向を基準として、始点側の端側、左側、右側及び終点側の端側により構成され、また、線分のクリアランス境界CBは、図5(B)に示すように、線分の始点から終点に向かう方向を基準として、始点側の端側、左側、右側及び終点側の端側により構成される。
【0024】
線分のクリアランス境界CBを求めるに当たっては、図6に示すように、線分の始点(x1,y1)及び終点(x2,y2)を線分(x1,y1)―(x2,y2)に対して垂直方向へcl(クリアランス)だけ移動した点A(xa,ya)、点B(xb,yb)、点C(xc,yc)、点D(xd,yd)を求め、点Aと点Bとを結んだ線分と、点Cと点Dとを結んだ線分と、終点(x2,y2)を中心点とし、半径がclで、点Bで始まり点Cで終わる右回りの円弧と、始点(x1,y1)を中心点とし、半径がclで、点Dで始まり点Aで終わる右回りの円弧とにより構成する。
【0025】
c) 「図形」と「線分のクリアランス境界」との交差判定
「図形」と「線分のクリアランス境界」との交差判定は、図形を構成する線分とクリアランス境界の構成要素ごとに、全ての組合せで交差判定を行う。例えば、図7に示すように、図形がm個の線分1−1、1−2、…、1−mで構成され、線分のクリアランス境界が線分2−1、2−2及び円弧2−1、2−2で構成される場合、線分1−1と線分2−1との交差判定、線分1−1と線分2−2との交差判定、線分1−1と円弧2−1との交差判定、線分1−1と円弧2−2との交差判定、線分1−2と線分2−1との交差判定、線分1−2と線分2−2との交差判定、線分1−2と円弧2−1との交差判定、線分1−2と円弧2−2との交差判定、…、線分1−mと線分2−1との交差判定、線分1−mと線分2−2との交差判定、線分1−mと円弧2−1との交差判定、線分1−mと円弧2−2との交差判定を行う。
【0026】
線分と円弧との交差判定は、図8に示すように、線分の端点を(x1,y1)、(x2,y2)とし、円弧の中心点を(xc,yc)、半径をr、開始角をθ1、終了角をθ2とした場合、2点(x1,y1)、(x2,y2)を通る直線と、中心点(xc,yc)、半径rの円との交点(x,y)を求める。そして、交点(x,y)が線分上にあり、かつ、円弧上にあれば、線分と円弧が交点(x,y)で交差すると判定する。
【0027】
円周上の点が円弧上にあるかどうかの判定は、図12に示すように、円周上の点を(x,y)とし、円弧の中心点を(xc,yc)、半径をr、開始角をθ1、終了角をθ2とし、点(xc,yc)から点(x,y)への方向角θ3を求め、θ3がθ1とθ2との間にあるときに、点が円弧上にあると判定する。
【0028】
d) ステップS2の具体的内容(図13)
次に、ステップS2の具体的内容を図13に基づいて説明する。
【0029】
d-1.
まず、図形1の交点P1から前(始点寄り)の交点(前の交点が無い場合は始点)までの部分図形PDbと、図形1の交点P1から次(終点寄り)の交点(次の交点が無い場合は終点)までの部分図形PDaとを設定する(ステップS21)。
【0030】
例えば図14に示す図形1及び図形2の場合、図15(A)、(B)に示すように、交点P1bについての部分図形PDb及び部分図形PDaは、それぞれ、交点P1bから始点PSTまでの太線で表した図形、及び、交点P1bから次の交点P1aまでの太線で表した図形となり、また、図16(A)、(B)に示すように、交点P1aについての部分図形PDb及び部分図形PDaは、それぞれ、交点P1aから交点P1bまでの太線で表した図形、及び、交点P1aから終点PENまでの太線で表した図形となる。
【0031】
d-2.
次に、図形2を構成する線分群のうち、図形1の交点P1のある線分BLについてのクリアランス境界CB(CBb)を設定する(ステップS22)。
【0032】
例えば図14に示す図形1及び図形2の場合、図15(A)、(B)に示すように、交点P1bのある線分BLについてのクリアランス境界CBbは、破線で表した図形となり、また、図16(A)、(B)に示すように、交点P1aのある線分BLについてのクリアランス境界CBbは、破線で表した図形となる。
【0033】
d-3.
次に、部分図形PDbとクリアランス境界CBbとの交差判定、及び、部分図形PDaとクリアランス境界CBbとの交差判定を行う(ステップS23)。
【0034】
例えば図14に示す図形1及び図形2の場合、図15(A)に示すように、交点P1bについての部分図形PDbは、クリアランス境界CBbの右側と交差すると判定し、図15(B)に示すように、交点P1bについての部分図形PDaは、クリアランス境界CBbの左側と交差すると判定し、また、図16(A)に示すように、交点P1aについての部分図形PDbは、クリアランス境界CBbの左側と交差すると判定し、図16(B)に示すように、交点P1aについての部分図形PDaは、クリアランス境界CBbの右側と交差すると判定する。
【0035】
d-4.
次に、「交差あり」か否かを判定する(ステップS24)。
【0036】
d-4-a.
「交差なし」の場合、「交差なし」と判定する(ステップS25)。
【0037】
例えば図22に示す図形1及び図形2の場合、部分図形PDは線分BLのクリアランス境界CBb内にあるため、ステップS24の判定結果は「NO」となり、「交差なし」と判定され(ステップS25)、表Aが作成される。
【0038】
d-4-b.
一方、「交差あり」の場合、隣接線分NLのクリアランス境界CB(CBn)を使用した交差判定を継続するか否かを判定する(ステップS26)。
【0039】
例えば図14に示す図形1及び図形2の場合、上述したように、交点P1bについての部分図形PDb及び部分図形PDaのいずれも「交差あり」となり、また、交点P1aについての部分図形PDb及び部分図形PDaのいずれも「交差あり」となるため、隣接線分NLのクリアランス境界CBnを使用した交差判定を継続するか否かを判定することになる。
【0040】
この隣接線分NLのクリアランス境界CBnを使用した交差判定を継続する条件として3つの条件(第1条件、第2条件、第3条件)がある。第1条件は、「図形Aが判定円C内を通過すること(ステップS26a)」である。第2条件は、「最初の交点Pfが隣接線分NLのクリアランス境界CBn内にあること(ステップS26b)」である。第3条件は、「図形Bが判定円C内を通過すること(ステップS26c)」である。第1条件の判定ステップS26aの判定結果、第2条件の判定ステップS26bの判定結果及び第3条件の判定ステップS26cの判定結果が全て「YES」の場合のみ、隣接線分NLのクリアランス境界CBnを使用した交差判定を継続する。第1条件の判定ステップS26aの判定結果は「YES」であっても第2条件の判定ステップS26bの判定結果が「NO」である場合、次の隣接線分NNLがあるか否かを判定し(ステップS26d)、ステップS26dの判定結果が「YES」の場合、ステップS26aへ移行し、次の隣接線分NNLで再度条件判定を行う。
【0041】
点(x,y)がクリアランス境界内にあるかどうかの判定は、図9に示すように、点(x,y)から2点(x1,y1)、(x2,y2)を通る直線へ下ろした垂線の足(xf,yf)を求めた上で、点(x,y)から線分までの距離dを求める。そして、d≦clのとき、点(x,y)がクリアランス境界内にあると判定する。
【0042】
図形が円内を通過するかどうかの判定は、図形を構成する線分ごとに円との交差判定を行い、円と交差する線分が存在したら円内を通過すると判定する。例えば、図10に示すように、図形がm個の線分で構成されている場合、線分1と円の交差判定、線分2と円の交差判定、…、線分mと円の交差判定を行う。
【0043】
線分と円の交差判定は、図11に示すように、線分の端点をそれぞれ(x1,y1)、(x2,y2)とし、円の中心点を(xc,yc)、半径をrとし、2点(x1,y1)、(x2,y2)を通る直線と円との交点(xa,ya)、(xb,yb)を求める。そして、交点(xa,ya)、(xb,yb)のどちらか一方でも線分上にあれば、線分と円とが交差すると判定する。
【0044】
(第1条件)
第1条件は、上記のように、「図形Aが判定円C内を通過すること」である。
【0045】
・図形A
図形Aとは、部分図形PDの始点Psから、部分図形PDとクリアランス境界CBとの最初の交点Pfまでの図形をいう。
【0046】
例えば図14に示す図形1及び図形2の場合、交点P1bについての部分図形PDb及び線分BLのクリアランス境界CBbは図17(A)に示すようになるため、部分図形PDbにおける図形Aは図17(B)に示すようになる。また、交点P1bについての部分図形PDa及び線分BLのクリアランス境界CBbは図18(A)に示すようになるため、部分図形PDaにおける図形Aは図18(B)に示すようになる。また、交点P1aについての部分図形PDb及び線分BLのクリアランス境界CBbは図19(A)に示すようになるため、部分図形PDbにおける図形Aは図19(B)に示すようになる。また、交点P1aについての部分図形PDa及び線分BLのクリアランス境界CBbは図20(A)に示すようになるため、部分図形PDaにおける図形Aは図20(B)に示すようになる。
【0047】
・判定円C
判定円Cとは、線分(現在の線分)BLに隣接する隣接線分NLの線分BL側の端点Peを中心とする半径クリアランスの円をいう。
【0048】
例えば図14に示す図形1及び図形2の場合、交点P1bについての現在の線分BL、隣接線分NL及び隣接線分NLのクリアランス境界CBnは図17及び図18に示すようになるため、判定円Cは図17及び図18に示すようになる。また、交点P1aについての現在の線分BL、隣接線分NL及び隣接線分NLのクリアランス境界CBnは図19及び図20に示すようになるため、判定円Cは図19及び図20に示すようになる。
【0049】
・第1条件の判定結果(第1条件が成立しない場合)
図14に示す図形1及び図形2の場合、交点P1bについての図形A、及び、交点P1aについての図形Aは、図17(B)、図18(B)、図19(B)及び図20(B)に示すように、いずれも判定円Cを通過していないため、第1条件は成立しないことになり、判定ステップS26aの判定結果は「NO」となり、隣接線分NLのクリアランス境界CBnを使用した交差判定を継続せず、「交差あり」と判定し(ステップS27)、表Aを作成することになる。
【0050】
したがって、図14に示す図形1及び図形2の場合、ステップS2において表Aが作成されることになり、表Aは、図21に示す内容となる。図21において、表Aの第1行目には、「図形1の交点P1bから始点PSTまでの部分図形PDb」と「図形2のクリアランス境界CBb」との交差判定の結果が書き込まれ、表Aの第2行目には、図形1の交点P1bが書き込まれ、表Aの第3行目には、「図形1の交点P1bから次の交点P1aまでの部分図形PDa」と「図形2のクリアランス境界CBb」との交差判定の結果が書き込まれ、表Aの第4行目には、「図形1の交点P1aから前の交点P1bまでの部分図形PDb」と「図形2のクリアランス境界CBb」との交差判定の結果が書き込まれ、表Aの第5行目には、図形1の交点P1aが書き込まれ、表Aの第6行目には、「図形1の交点P1aから終点PENまでの部分図形PDa」と「図形2のクリアランス境界CBb」との交差判定の結果が書き込まれ、この結果、表Aの第1行目、第3行目には、それぞれ、「右側と交差」、「左側と交差」が書き込まれ、第4行目、第6行目には、それぞれ、「左側と交差」、「右側と交差」が書き込まれる。
【0051】
また、図23に示す図形1及び図形2の場合、図形Aが判定円C内を通過しないため、表Aに、「交差あり(左側と交差)」と書き込まれる。
【0052】
・第1条件の判定結果(第1条件が成立する場合)
図形1及び図形2が図24に示す場合、図形1の部分図形PDにおける図形Aは判定円C内を通過することになるため、ステップS26aの判定結果は「YES」となり、次に、第2条件が成立するか否かが判定される(ステップS26b)。
【0053】
(第2条件)
第2条件は、上記のように、「最初の交点Pfが隣接線分NLのクリアランス境界CBn内にあること」である。
【0054】
・第2条件の判定結果(第2条件が成立しない場合)
図24に示す図形1及び図形2の場合、最初の交点Pfは、隣接線分NLのクリアランス境界CBnの外にあるため、第2条件は成立しないことになる。
【0055】
第2条件が成立しない場合、次の隣接線分NNLがあるか否か判定する(ステップS26d)。
【0056】
・次の隣接線分NNLがない場合
次の隣接線分NNLがない場合、「交差あり」と判定し(ステップS27)、表Aを作成する。図24の例の場合、隣接線分NNLがないことから、「交差あり(左側と交差)」と判定し(ステップS27)、表Aを作成することになる。
【0057】
・次の隣接線分NNLがある場合
次の隣接線分NNLがある場合、ステップS26aへ移行し、図形Aが判定円C(このときの判定円Cは、次の隣接線分NNLの、隣接線分NL寄りの端点Pst、を中心とする円Cnとなる。)を通過するか否かを判定する。
【0058】
図25に示す図形1及び図形2の場合、次の隣接線分NNLがあることから、図形Aが判定円Cn内を通過かするか否か判定され(ステップS26a)、この判定結果は「NO」となり、「交差あり(左側と交差)」と判定され(ステップS27)、表Aが作成されることになる。
【0059】
・第2条件の判定結果(第2条件が成立する場合)
図26に示す図形1及び図形2の場合、最初の交点Pfは、隣接線分NLのクリアランス境界CBn内にあることから、ステップS26bの判定結果は「YES」となり、次に、第3条件が成立するか否かが判定される(ステップS26c)。
【0060】
(第3条件)
第3条件は、上記のように、「図形Bが判定円C内を通過すること」である。
【0061】
・図形B
図形Bとは、部分図形PDにおいて、図形Aと隣接線分NLのクリアランス境界CBnとの最後の交点Plから最初の交点Pfまでの図形をいう。但し、最後の交点Plがない場合、図形Bは図形Aと同じになる。
【0062】
例えば図26(A)に示す図形1及び図形2の場合、最初の交点Pf及び最後の交点Plは図26(A)に示すようになるため、図形Bは、図26(B)に示すようになる。
【0063】
・第3条件の判定結果(第3条件が成立しない場合)
例えば図28に示す図形1及び図形2の場合、図28(B)に示すように、図形Bが判定円C内を通過しないため、ステップS26cの判定結果は「NO」となり、「交差あり(左側と交差)」と判定し(ステップS27)、表Aを作成する。
【0064】
・第3条件の判定結果(第3条件が成立する場合)
例えば図26に示す図形1及び図形2の場合、図26(B)に示すように、図形Bが判定円C内を通過するため、ステップS26cの判定結果は「YES」となり、次に、隣接線分NLのクリアランス境界CBnを使用した交差判定を継続する(ステップS28)。
【0065】
<隣接線分NLのクリアランス境界CBnを使用した交差判定>
隣接線分NLのクリアランス境界CBnを使用した交差判定においては、図形Aが隣接線分NLのクリアランス境界CBn内にある場合を除き、部分図形PDの変更を行う。変更後の部分図形PDの始点は、変更前の部分図形PDの始点Psから最初の交点Pfまでの部分と、隣接線分NLのクリアランス境界CBnと、の最後の交点Plになる。
【0066】
例えば図26(A)に示す図形1及び図形2の場合、図27(A)に示すように、変更前の部分図形PDにおいて、部分図形PDの始点Psから最初の交点Pfまでの部分は図27(A)において太線で示すものとなり、変更後の部分図形PDは、図27(B)において太線で示す図形となる。図27(B)に示す部分図形PDの場合、現在の線分BL(元の隣接線分NL)のクリアランス境界CBb(元のクリアランス境界CBn)内にあるため、表Aに「交差なし」と書き込まれる。
【0067】
e) 「部分図形」と「線分のクリアランス境界」との交差判定の具体例
・図28に示す図形1及び図形2の場合、図28(A)に示すように、部分図形PDが線分BLのクリアランス境界CBbと交差しており、図形Aが判定円C内を通過しており、最初の交点Pfが隣接線分NLのクリアランス境界CBn内にあり、図28(B)に示すように、図形Bが判定円C内を通過しないため、表Aに「交差あり(左側と交差)」と書き込まれる。
【0068】
・図29に示す図形1及び図形2の場合、図29に示すように、部分図形PDが線分BLのクリアランス境界CBbと交差しており、図形Aが判定円C内を通過しており、最初の交点Pfが隣接線分NLのクリアランス境界CBn内にないため、次の隣接線分NNLを使用して再度条件判定が行われ、再度の条件判定において、図30(A)に示すように、図形Aが次の隣接線分NNLの判定円Cn内を通過しており、最初の交点Pfが次の隣接線分NNLのクリアランス境界CBnn内にあり、図30(B)に示すように、図形Bが判定円Cn内を通過するため、次の隣接線分NNLを使用して交差判定を継続する。次の隣接線分NNLを使用した交差判定においては、更新後の部分図形PDとして、更新前の部分図形PDのうち最後の交点Plを始点とする図形が使用され、この更新後の部分図形PDは次の隣接線分NNLのクリアランス境界CBnn内にあるため、表Aに「交差なし」と書き込まれる。
【0069】
f) 交差判定の結果が「端側と交差」になった場合
図31に示すように、図形2の最初の線分のクリアランス境界の始点側の端側、又は、最後の線分のクリアランス境界の終点側の端側と交差しているときには、その端側は、図形のクリアランス境界の端側と一致するので、図形のクリアランス境界の端側と交差していることになり、交差判定の結果は、「端側と交差」になる。
【0070】
図32に示すように、図形2の線分のクリアランス境界の上記以外の端側と交差しているときには、その端側は、図形のクリアランス境界の左側又は右側の一部分であり、図形のクリアランス境界の左側又は右側と交差していることになるので、どちら側と交差しているかの判定を行う。点が直線に対してどちら側にあるかの判定は、図35に示すように、点(x3,y3)が2点(x1,y1)、(x2,y2)を通る直線のどちら側にあるか判定する。この判定にあたっては、座標法により、三角形(x1,y1)、(x2,y2)、(x3,y3)の面積Sを計算する(2S=(y2−y1)(x3−x1)−(x2−x1)(y3−y1))。座標法では、面積の符号が、図36(A)に示すように、三角形が右回りのときには正になり、図36(B)に示すように、三角形が左回りのときは負になるので、面積が正のときは、「点は直線の右側にある」と判定し、面積が負のときは、「点は直線の左側にある」と判定する。
【0071】
図33に示すように、点(x3,y3)が2点(x1,y1)、(x2,y2)を通る直線の(進行方向に対して)左側にあるときには、線分のクリアランス境界の端側と交差して外に出たならば、図形のクリアランス境界の右側と交差して外に出たことになるので、交差判定の結果は、「右側と交差」になる。
【0072】
図34に示すように、点(x3,y3)が2点(x1,y1)、(x2,y2)を通る直線の(進行方向に対して)右側にあるときには、線分のクリアランス境界の端側と交差して外に出たならば、図形のクリアランス境界の左側と交差して外に出たことになるので、交差判定の結果は、「左側と交差」になる。
【0073】
C. ステップS3
ステップS3では、ステップS2で「交差なし」と判定されたものについて、「図形1の交点P1間の部分図形PDを拡張した拡張部分図形EPD」と「図形2のクリアランス境界CB」との交差判定を行い、表Bを作成する。
【0074】
a) 拡張部分図形EPD
例えば図37(A)に示す図形1及び図形2の場合、表Aは、図37(B)に示すようになり、第3行目及び第4行目の判定結果は「交差なし」となる。
【0075】
このような場合、表Bを作成する。表Bを作成するに当たっては、拡張部分図形EPDが使用され、上述した表Aを作成する手順と同様な手順により、拡張部分図形EPDとクリアランス境界CBとの交差判定を行い、表Bを作成する。
【0076】
図37(A)に示す図形1及び図形2の場合、図38(A)に示すように、交点P1bについての拡張部分図形EPDaは、交点P1bから終点PENまでの部分図形となり、交点P1aについての拡張部分図形EPDbは、交点P1aから始点PSTまでの部分図形となり、判定結果である表Bは、図38(C)に示すようになる。
【0077】
<具体例(図39〜図47)>
図39に示す図形1及び図形2の場合、部分図形PDと現在の線分BLのクリアランス境界CBbとの交差判定の結果は、図39に示すように、「左側と交差」になる。
【0078】
このため、まず、始点方向の隣接線分NLsのクリアランス境界CBnsとの交差判定を継続するか否かを判定することになる。
【0079】
図40に示すように、図形Aは判定円C内を通過しており、また、最初の交点Pfは始点方向の隣接線分NLsのクリアランス境界CBns内にあり、また、図形Aとクリアランス境界CBnsとの交点がないため、図形Bは図形Aと同じになり、図形Bは判定円C内を通過しているため、上記の第1条件、第2条件、第3条件の全てが成立している。
【0080】
このため、隣接線分NLsのクリアランス境界CBnsを使用した交差判定を継続することになる。
【0081】
この隣接線分NLsのクリアランス境界CBnsを使用した交差判定においては、図形Aがクリアランス境界CBns内にあるため、部分図形PDの変更は行わず、図41に示すように、上述したクリアランス境界CBbとの交差判定に使用された部分図形PDと同じ部分図形が使用される。
【0082】
この交差判定の結果は、図41に示すように、「(始点側の)端側と交差」になる。
【0083】
このため、次の隣接線分NNLのクリアランス境界CBnnとの交差判定を継続するか否かを判定することになる。
【0084】
図42に示すように、図形Aは判定円C内を通過しており、また、最初の交点Pfは次の隣接線分NNLのクリアランス境界CBnn内にあり、また、図形Bは、図43に示すように、判定円C内を通過しているため、上記の第1条件、第2条件、第3条件の全てが成立している。
【0085】
このため、次の隣接線分NNLのクリアランス境界CBnnを使用した交差判定を継続することになる。
【0086】
この次の隣接線分NNLのクリアランス境界CBnnを使用した交差判定においては、部分図形PDが変更され、図44に示す部分図形PDが使用される。
【0087】
この交差判定の結果は、図44に示すように、「左側と交差」になる。そして、次の次の隣接線分がないため、始点方向の隣接線分NLsのクリアランス境界CBnsとの交差判定の結果は、「左側と交差」ということになる。
【0088】
次に、終点方向の隣接線分NLeのクリアランス境界CBneとの交差判定を継続するか否かを判定することになる。
【0089】
図45に示すように、図形Aは判定円C内を通過しており、また、最初の交点Pfは終点方向の隣接線分NLeのクリアランス境界CBne内にあり、また、図形Aとクリアランス境界CBneとの交点がないため、図形Bは図形Aと同じになり、図形Bは判定円C内を通過しているため、上記の第1条件、第2条件、第3条件の全てが成立している。
【0090】
このため、隣接線分NLeのクリアランス境界CBneを使用した交差判定を継続することになる。
【0091】
この隣接線分NLeのクリアランス境界CBneを使用した交差判定においては、図形Aがクリアランス境界CBne内にあるため、部分図形PDの変更は行わず、図46に示すように、上述したクリアランス境界CBbとの交差判定に使用された部分図形PDと同じ部分図形が使用される。
【0092】
この交差判定の結果は、図46に示すように、「交差なし」になる。
【0093】
したがって、始点方向の隣接線分NLs側の交差判定の結果は「左側と交差」になり、終点方向の隣接線分NLe側の交差判定の結果は「交差なし」になる。
【0094】
このように始点方向と終点方向とで交差判定の結果が一致せず、いずれか一方の判定結果に「交差なし」がある場合、交差判定の結果は「交差なし」とされ、表Aに「交差なし」を書き込む。
【0095】
次に、拡張部分図形EPDを使用して、上述した部分図形PDを使用した交差判定と同様に交差判定を行う。
【0096】
この交差判定においては、始点方向の判定結果は、部分図形PDを使用した交差判定と同じく「左側と交差」になり、一方、終点方向の判定結果は、図47に示すように、「右側と交差」になる。
【0097】
このような場合、交差判定の結果は「両側と交差」とし、表Bに「両側と交差」を書き込む。
【0098】
なお、図示しないが、図形1がループ状の図形の場合、始点が存在しないので、一周して元の交点までの部分図形を拡張部分図形EPDとして使用する。
【0099】
D. ステップS4
ステップS4では、表Aと表Bから表Cを作成し、それぞれの交差が「クリアランスを超えた交差」かどうか判定し、図形1から見た判定結果を得る。
【0100】
(具体例その1(図48))
図48(A)に示す図形1及び図形2の場合、表A及び表Bは図48(B)に示すようになる。すなわち、表Aの第3行目及び第4行目では「交差なし」の判定結果となっているのに対し、表Bでは「右側と交差」、「(始点)の端側と交差」となっている。
【0101】
このような場合、表Aにおいて交点PAの次の行の判定結果が「交差なし」のときに、表Bにおける同じ行の判定結果及び次の交点PBの次の行の判定結果が「同じ側で交差」(「左側と交差」、「右側と交差」又は「端側と交差」)のときには、変更条件が成立しているとし、表Cの判定結果を「交差なし」とする。
【0102】
同様に、表Aにおいて交点PBの前の行の判定結果が「交差なし」のときに、表Bにおける同じ行の判定結果及び前の交点PAの前の行の判定結果が「同じ側で交差」(「左側と交差」、「右側と交差」又は「端側と交差」)のときには、表Cの判定結果を「交差なし」とする。
【0103】
(具体例その2(図49))
図49(A)に示す図形1及び図形2の場合、表A及び表Bは図49(B)に示すようになる。すなわち、表Aの第3行目、第4行目、第6行目及び第7行目では「交差なし」の判定結果となっているのに対し、表Bでは「左側と交差」、「右側と交差」、「左側と交差」、「右側と交差」となっている。
【0104】
したがって、上記変更条件が成立しているため、表Cにおいては、上記各行に「交差なし」が書き込まれる。
【0105】
(具体例その3(図50))
図50(A)に示す図形1及び図形2の場合、表A及び表Bは図50(B)に示すようになる。すなわち、表Aの第3行目及び第4行目では「交差なし」の判定結果になっているのに対し、表Bでは「左側と交差」、「左側と交差」となっている。
【0106】
したがって、上記変更条件が成立していない。このような場合、表Cには、表Bと同じ内容が書き込まれる。
【0107】
(具体例その4(図51))
図51(A)に示す図形1及び図形2の場合、表A及び表Bは図51(B)に示すようになる。すなわち、表Aの第3行目及び第4行目では「交差なし」の判定結果になっているのに対し、表Bでは「両側と交差」、「右側と交差」となっている。
【0108】
このように、「両側と交差」と「右側(左側)と交差」の組合せのときは、「同じ側で交差」とみなす。
【0109】
このため、上記変更条件が成立することなり、表Cには、「交差なし」が書き込まれる。
【0110】
(具体例その5(図52))
図52(A)に示す図形1及び図形2の場合、表A及び表Bは図52(B)に示すようになる。表Bにおいて、第3行目及び第4行目の判定結果は、それぞれ「交差なし」及び「左側と交差」となっている。このように、表Bにおいて、交点PA、PBに挟まれた2つの判定結果のどちらか一方でも「交差なし」となっている場合、表Cの判定結果は「交差なし」に変更する。
【0111】
(具体例その6(図53))
図53(A)に示す図形1及び図形2の場合、表A及び表Bは図53(B)に示すようになる。交点PA、PBに挟まれた2つの行で、表Aの判定結果が片方だけ「交差なし」で、表Bの判定結果が「左側と交差」と「右側と交差」の組合せになっている場合、表Cでは、共に「交差なし」に変更する。
【0112】
(具体例その7(図54))
図54(A)に示す図形1及び図形2の場合、表A及び表Bは図54(B)に示すようになる。
【0113】
表Cには、図55(A)に示すように、各交点PA、PBごとに最終的な判定結果が書き込まれる。
【0114】
表Cの中で、図55(B)に示すように、交点Pの上下の行の判定結果が「左側と交差」、「右側と交差」の組合せのときに、その交点Pで「クリアランスを超えて交差した」と判定し、また、図55(C)に示すように、それ以外の組合せのときは「交差なし」と判定する。
【0115】
表Cにおいて、交点PAと交点PBとで挟まれた2つの行には、「交差なし」が書き込まれる。「クリアランスを超えて交差した」かどうかの判定時には、表C中の「交差なし」は無視して考えるため、表C中の「交差なし」を削除すると、図54(C)に示すようになる。
【0116】
E. ステップS5
ステップS5では、図形1と図形2を入れ換えてステップS2〜S4を繰り返し、図形2から見た判定結果を得る。
【0117】
F. ステップS6
ステップS6では、「図形1から見た判定結果」と「図形2から見た判定結果」の両方で「クリアランスを超えた交差」と判定された交差のみを、最終的に「クリアランスを超えた交差」と判定する。
【0118】
図56(A)、(C)に示す図形1及び図形2の場合、図形1から見た判定結果は図56(B)に示すようになり、「クリアランスを超えた交差」と判定されるが、図形2から見た判定結果は図56(D)に示すようになり、「交差なし」と判定される。このため、最終的に「交差なし」と判定される。
【0119】
以上説明したように、本実施形態に係る図面情報の品質評価方法は、
図形1と図形2とからなる地理空間情報(図面情報)をコンピュータからなる検査装置1に入力し、検査装置1において、品質評価検査を行って検査結果データを出力する地理空間情報(図面情報)の品質評価方法であって、工程(a)〜(c)
(a)クリアランスを考慮せずに、図形1と図形2の交差判定を行い、交点Pを求める
(b)「図形1の交点P1間の部分図形PD」と「図形2のクリアランス境界CB」との交差判定を行う
(c)工程(b)で「交差なし」と判定されたものについて、「図形1の交点P1間の部分図形PDを拡張した拡張部分図形EPD」と「図形2のクリアランス境界CB」との交差判定を行う
を実行し、
工程(b)及び(c)は、それぞれ、工程(g-1)〜(g-4)及び(g-5-a)又は(g-5-b)
(g-1)工程(b)の場合、図形1の交点P1から前(始点PST寄り)の交点P1(前の交点P1が無い場合は始点PST)までの部分図形PDbと、図形1の交点P1から次(終点PEN寄り)の交点P1(次の交点P1が無い場合は終点PEN)までの部分図形PDaとを設定し、一方、工程(c)の場合、図形1の交点P1から始点PSTまでの拡張部分図形EPDb、又は、図形1の交点P1から終点PENまでの拡張部分図形EPDaを設定する
(g-2)図形2を構成する線分群のうち、図形1の交点P1のある線分BLについてのクリアランス境界CBbを設定する
(g-3)工程(b)の場合、部分図形PDbとクリアランス境界CBbとの交差判定、及び、部分図形PDaとクリアランス境界CBbとの交差判定を行い、一方、工程(c)の場合、拡張部分図形EPDbとクリアランス境界CBbとの交差判定、又は、拡張部分図形EPDaとクリアランス境界CBbとの交差判定を行う
(g-4)「交差あり」か否かを判定する
(g-5-a)「交差なし」の場合、「交差なし」と判定する
(g-5-b)一方、「交差あり」の場合、所定の第1条件が成立するか否かを判定し、
第1条件が成立しない場合、「交差あり」と判定し、
一方、第1条件が成立する場合、所定の第2条件が成立するか否かを判定し、
第2条件が成立しない場合、次の隣接線分NNLがあるか否かを判定し、
次の隣接線分NNLがない場合、「交差あり」と判定し、一方、次の隣接線分NLLがある場合、次の隣接線分NNLで第1条件が成立するか否かの判定に戻り、
一方、第2条件が成立する場合、所定の第3条件が成立するか否かを判定し、
第3条件が成立しない場合、「交差あり」と判定し、
一方、第3条件が成立する場合、隣接線分NLのクリアランス境界CB(CBn)を使用した交差判定を行う
からなり、
第1条件は、「図形Aが判定円C内を通過すること」、第2条件は、「最初の交点Pfが線分(現在の線分)BLに隣接する隣接線分NLのクリアランス境界CBn内にあること」、第3条件は、「図形Bが判定円C内を通過すること」であり、「図形A」とは、部分図形PD又は拡張部分図形EPDの始点Psから、部分図形PD又は拡張部分図形EPDとクリアランス境界CBとの最初の交点Pfまでの図形をいい、「判定円C」とは、隣接線分NLの線分BL側の端点Peを中心とする半径クリアランスの円をいい、「図形B」とは、部分図形PD又は拡張部分図形EPDにおいて、図形Aと隣接線分NLのクリアランス境界CBnとの最後の交点Plから最初の交点Pfまでの図形をいう(但し、最後の交点Plがない場合、図形Bは図形Aと同じになる。)。
【0120】
そして、工程(b)の交差判定により表Aが作成され、工程(c)の交差判定により表Bが作成され、
表A及び表Bには、それぞれ、各交点P1が書き込まれ、各交点P1の上の行に、交点P1についての部分図形PDb又は拡張部分図形EPDbとクリアランス境界CBとの交差判定の判定結果が書き込まれ、各交点P1の下の行に、交点P1についての部分図形PDa又は拡張部分図形EPDaとクリアランス境界CBとの交差判定の判定結果が書き込まれる。
【0121】
そして、工程(a)〜(c)の実行後、工程(d)〜(f)
(d)表Aと表Bとから表Cを作成し、それぞれの交差が「クリアランスを超えた交差」かどうかを判定し、図形1から見た判定結果を得る
(e)図形1と図形2とを入れ換えて工程(b)〜(d)を繰り返し、図形2から見た判定結果を得る
(f)「図形1から見た判定結果」と「図形2から見た判定結果」の両方で「クリアランスを超えた交差」と判定された交差のみを、最終的に「クリアランスを超えた交差」と判定する
を実行する。
【0122】
本実施形態によると、下記の効果が奏される。
【0123】
本実施形態のように線分のクリアランス境界を使用して表A及び表Bを作成する代わりに、図57(A)に示すように、図形のクリアランス境界を使用して表A及び表Bを作成する場合、表A及び表Bは図57(B)に示すようになり、最終的に「交差なし」と判定されるが、図58(A)に示すように、線分のクリアランス境界を使用して表A及び表Bを作成する場合、表A及び表Bは図58(B)に示すようになり、最終的に交点PAとPBでそれぞれ「クリアランスを超えて交差する」と正しく判定されるようになる。
【0124】
また、図59(A)に示す図形の場合、表Aは図59(B)に示すようになり、一方、図60(A)に示す図形の場合、表Aは図60(B)に示すようになり、表Aは互いに一致した内容となる。しかし、図59(B)と図60(B)の表Bの内容は一致していないため、表Bの内容を参照することにより正しい判定を行うことができるようになる。
【0125】
また、図61(A)に示す図形の場合、表Bは図61(B)に示すようになり、一方、図62(A)に示す図形の場合、表Bは図62(B)に示すようになり、表Bは互いに一致した内容となる。しかし、図61(B)と図62(B)の表Aの内容は一致していないため、表Aの内容を参照することにより正しい判定を行うことができるようになる。
【0126】
また、本実施形態では、工程(d)において、
1) 表Aにおいて、交点P1の下の行に「交差なし」が書き込まれており、かつ、表Bにおいて、交点P1の下の行と次の交点P1の下の行とに「同じ側で交差」(「左側と交差」、「右側と交差」又は「端側と交差」)が書き込まれているとき、表Bの内容を変更して表Cに「交差なし」と書き込み、
表Aにおいて、交点P1の上の行に「交差なし」が書き込まれており、かつ、表Bにおいて、交点P1の上の行と前の交点P1の上の行とに「同じ側で交差」(「左側と交差」、「右側と交差」又は「端側と交差」)が書き込まれているとき、表Bの内容を変更して表Cに「交差なし」と書き込み、
2) 表Aにおいて、交点P1の上の行に「交差なし」が書き込まれており、かつ、表Bにおいて、交点P1の上の行と前の交点P1の上の行とに、「両側と交差」と「右側(左側)と交差」の組合せが書き込まれているとき、「同じ側で交差」とみなし、また、
表Aにおいて、交点P1の下の行に「交差なし」が書き込まれており、かつ、表Bにおいて、交点P1の下の行と次の交点P1の下の行とに、「両側と交差」と「右側(左側)と交差」の組合せが書き込まれているとき、「同じ側で交差」とみなし、
3) 表Bにおいて、交点P1の下の行と次の交点P1の上の行のどちらか一方でも「交差なし」となっている場合、表Bの内容を変更して表Cに「交差なし」と書き込み、
4) 表Aにおいて、交点P1の下の行と次の交点P1の上の行の片方だけ「交差なし」であり、かつ、表Bにおいて、前記交点P1の下の行と前記次の交点P1の上の行が「左側と交差」と「右側と交差」の組合せになっている場合、表Bの内容を変更して表Cに「交差なし」と書き込み、
5) 表Cにおいて、交点Pの上下の行が「左側と交差」、「右側と交差」の組合せのときに、その交点Pで「クリアランスを超えて交差した」と判定し、それ以外の組合せのときは「交差なし」と判定する
ようにしたため、複雑な図形や複雑に交差している場合でも、正しく判定することが可能になる。
【0127】
したがって、本実施形態によると、検査装置(コンピュータ)上で「クリアランスを超えた交差」かどうかの判定が正しく行われるようになり、地理空間情報(図面情報)の品質評価を自動で行い、クリアランスを考慮した全件検査が可能となる。
【符号の説明】
【0128】
1 検査装置(コンピュータ)

【特許請求の範囲】
【請求項1】
図形1と図形2とからなる図面情報をコンピュータからなる検査装置に入力し、該検査装置において、品質評価検査を行って検査結果データを出力する図面情報の品質評価方法であって、少なくとも下記工程(a)〜(c)を実行し、
(a)クリアランスを考慮せずに、図形1と図形2の交差判定を行い、交点Pを求める
(b)「図形1の交点P1間の部分図形PD」と「図形2のクリアランス境界CB」との交差判定を行う
(c)前記工程(b)で「交差なし」と判定されたものについて、「図形1の交点P1間の部分図形PDを拡張した拡張部分図形EPD」と「図形2のクリアランス境界CB」との交差判定を行う
前記工程(b)及び(c)は、それぞれ、下記工程(g-1)〜(g-4)及び(g-5-a)又は(g-5-b)
(g-1)前記工程(b)の場合、図形1の交点P1から前(始点PST寄り)の交点P1(前の交点P1が無い場合は始点PST)までの部分図形PDbと、図形1の交点P1から次(終点PEN寄り)の交点P1(次の交点P1が無い場合は終点PEN)までの部分図形PDaとを設定し、一方、前記工程(c)の場合、図形1の交点P1から始点PSTまでの拡張部分図形EPDb、又は、図形1の交点P1から終点PENまでの拡張部分図形EPDaを設定する
(g-2)図形2を構成する線分群のうち、図形1の交点P1のある線分BLについてのクリアランス境界CBbを設定する
(g-3)前記工程(b)の場合、部分図形PDbとクリアランス境界CBbとの交差判定、及び、部分図形PDaとクリアランス境界CBbとの交差判定を行い、一方、前記工程(c)の場合、拡張部分図形EPDbとクリアランス境界CBbとの交差判定、又は、拡張部分図形EPDaとクリアランス境界CBbとの交差判定を行う
(g-4)「交差あり」か否かを判定する
(g-5-a)「交差なし」の場合、「交差なし」と判定する
(g-5-b)一方、「交差あり」の場合、所定の第1条件が成立するか否かを判定し、
前記第1条件が成立しない場合、「交差あり」と判定し、
一方、前記第1条件が成立する場合、所定の第2条件が成立するか否かを判定し、
前記第2条件が成立しない場合、次の隣接線分NNLがあるか否かを判定し、
前記次の隣接線分NNLがない場合、「交差あり」と判定し、一方、前記次の隣接線分NLLがある場合、前記次の隣接線分NNLで前記第1条件が成立するか否かの判定に戻り、
一方、前記第2条件が成立する場合、所定の第3条件が成立するか否かを判定し、
前記第3条件が成立しない場合、「交差あり」と判定し、
一方、前記第3条件が成立する場合、隣接線分NLのクリアランス境界CB(CBn)を使用した交差判定を行う
からなり、
前記第1条件は、「図形Aが判定円C内を通過すること」、前記第2条件は、「最初の交点Pfが線分(現在の線分)BLに隣接する隣接線分NLのクリアランス境界CBn内にあること」、前記第3条件は、「図形Bが判定円C内を通過すること」であり、前記「図形A」とは、前記部分図形PD又は前記拡張部分図形EPDの始点Psから、前記部分図形PD又は前記拡張部分図形EPDとクリアランス境界CBとの最初の交点Pfまでの図形をいい、前記「判定円C」とは、隣接線分NLの線分BL側の端点Peを中心とする半径クリアランスの円をいい、前記「図形B」とは、前記部分図形PD又は前記拡張部分図形EPDにおいて、前記図形Aと前記隣接線分NLのクリアランス境界CBnとの最後の交点Plから最初の交点Pfまでの図形をいう(但し、最後の交点Plがない場合、図形Bは図形Aと同じになる。)
ことを特徴とする図面情報の品質評価方法。
【請求項2】
前記工程(b)の交差判定により表Aが作成され、前記工程(c)の交差判定により表Bが作成され、
前記表A及び前記表Bには、それぞれ、各交点P1が書き込まれ、各交点P1の上の行に、交点P1についての部分図形PDb又は拡張部分図形EPDbとクリアランス境界CBとの交差判定の判定結果が書き込まれ、各交点P1の下の行に、交点P1についての部分図形PDa又は拡張部分図形EPDaとクリアランス境界CBとの交差判定の判定結果が書き込まれる
ことを特徴とする請求項1に記載の図面情報の品質評価方法。
【請求項3】
前記工程(a)〜(c)の実行後、下記工程(d)〜(f)を実行する
(d)前記表Aと前記表Bとから表Cを作成し、それぞれの交差が「クリアランスを超えた交差」かどうかを判定し、図形1から見た判定結果を得る
(e)図形1と図形2とを入れ換えて前記工程(b)〜(d)を繰り返し、図形2から見た判定結果を得る
(f)「図形1から見た判定結果」と「図形2から見た判定結果」の両方で「クリアランスを超えた交差」と判定された交差のみを、最終的に「クリアランスを超えた交差」と判定する
ことを特徴とする請求項2に記載の図面情報の品質評価方法。
【請求項4】
前記工程(d)において、
前記表Aにおいて、交点P1の下の行に「交差なし」が書き込まれており、かつ、前記表Bにおいて、交点P1の下の行と次の交点P1の下の行とに「同じ側で交差」(「左側と交差」、「右側と交差」又は「端側と交差」)が書き込まれているとき、前記表Bの内容を変更して前記表Cに「交差なし」と書き込み、
前記表Aにおいて、交点P1の上の行に「交差なし」が書き込まれており、かつ、前記表Bにおいて、交点P1の上の行と前の交点P1の上の行とに「同じ側で交差」(「左側と交差」、「右側と交差」又は「端側と交差」)が書き込まれているとき、前記表Bの内容を変更して前記表Cに「交差なし」と書き込む
ことを特徴とする請求項3に記載の図面情報の品質評価方法。
【請求項5】
前記表Aにおいて、交点P1の上の行に「交差なし」が書き込まれており、かつ、前記表Bにおいて、交点P1の上の行と前の交点P1の上の行とに、「両側と交差」と「右側(左側)と交差」の組合せが書き込まれているとき、「同じ側で交差」とみなし、また、
前記表Aにおいて、交点P1の下の行に「交差なし」が書き込まれており、かつ、前記表Bにおいて、交点P1の下の行と次の交点P1の下の行とに、「両側と交差」と「右側(左側)と交差」の組合せが書き込まれているとき、「同じ側で交差」とみなす
ことを特徴とする請求項4に記載の図面情報の品質評価方法。
【請求項6】
前記表Bにおいて、交点P1の下の行と次の交点P1の上の行のどちらか一方でも「交差なし」となっている場合、前記表Bの内容を変更して前記表Cに「交差なし」と書き込む
ことを特徴とする請求項5に記載の図面情報の品質評価方法。
【請求項7】
前記表Aにおいて、交点P1の下の行と次の交点P1の上の行の片方だけ「交差なし」であり、かつ、前記表Bにおいて、前記交点P1の下の行と前記次の交点P1の上の行が「左側と交差」と「右側と交差」の組合せになっている場合、前記表Bの内容を変更して前記表Cに「交差なし」と書き込む
ことを特徴とする請求項6に記載の図面情報の品質評価方法。
【請求項8】
前記表Cにおいて、交点Pの上下の行が「左側と交差」、「右側と交差」の組合せのときに、その交点Pで「クリアランスを超えて交差した」と判定し、それ以外の組合せのときは「交差なし」と判定する
ことを特徴とする請求項7に記載の図面情報の品質評価方法。
【請求項9】
前記表Cにおいて、「交差なし」の行が存在したとき、「交差なし」の行を削除した前記表Cにおいて、複数の連続する交点の上下の行が「左側と交差」、「右側と交差」の組合せのとき、この複数の連続する交点が1つの交差区間を形成し、その交差区間で「クリアランスを超えて交差した」と判定する
ことを特徴とする請求項8に記載の図面情報の品質評価方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate

【図30】
image rotate

【図31】
image rotate

【図32】
image rotate

【図33】
image rotate

【図34】
image rotate

【図35】
image rotate

【図36】
image rotate

【図37】
image rotate

【図38】
image rotate

【図39】
image rotate

【図40】
image rotate

【図41】
image rotate

【図42】
image rotate

【図43】
image rotate

【図44】
image rotate

【図45】
image rotate

【図46】
image rotate

【図47】
image rotate

【図48】
image rotate

【図49】
image rotate

【図50】
image rotate

【図51】
image rotate

【図52】
image rotate

【図53】
image rotate

【図54】
image rotate

【図55】
image rotate

【図56】
image rotate

【図57】
image rotate

【図58】
image rotate

【図59】
image rotate

【図60】
image rotate

【図61】
image rotate

【図62】
image rotate


【公開番号】特開2011−170558(P2011−170558A)
【公開日】平成23年9月1日(2011.9.1)
【国際特許分類】
【出願番号】特願2010−32907(P2010−32907)
【出願日】平成22年2月17日(2010.2.17)
【出願人】(593154436)アイサンテクノロジー株式会社 (1)
【Fターム(参考)】