本文へ

 

図面情報の品質評価方法(特許第4950313号)

要約

【課題】
クリアランスを考慮した全件自動検査を可能にすること。

【解決手段】
(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から見た判定結果」の両方で「クリアランスを超えた交差」と判定された交差のみを、最終的に「クリアランスを超えた交差」と判定する。

【発明の詳細な説明】

【技術分野】

【0 0 0 1 】
本発明は、地理空間情報等図面情報の品質評価方法に関する。


【背景技術】

【0 0 0 2 】
J S G I ( Japanese Standards for Geographic Information( 地理情報標準) に基づく、地理空間情報の論理一貫性位相の「ねじれ( 交差) 」品質評価検査の実施は、クリアランスと呼ばれる許容誤差を認めているが、従来システムでは、完全交差( クリアランスを考慮しない) による全件検査、もしくは目視による検査が実施されており、クリアランスを考慮した全件自動検査は困難であった。なお、先行技術文献として非特許文献1 がある。


【先行技術文献】

【非特許文献】

【0 0 0 3 】

【非特許文献1 】渡邉孝三・岡部篤行・中村秀至( 2 0 0 8 ) : G I S データの位相検査の交差判定ツールの開発とその適用による有効性の検討. 「G I S - 理論と応用」1 6 (1 ) . 5 9 - 6 8


【発明の開示】

【発明が解決しようとする課題】

【0 0 0 4 】
本発明は、上記の点にかんがみ、地理空間情報のみに限定されず広く図面情報に適用可能であって、クリアランスを考慮した全件自動検査を可能にする図面情報の品質評価方法を提供することを目的とする。


【発明の概要】

【課題を解決するための手段】

【0 0 0 5 】
本発明の図面情報の品質評価方法は、 図形1 と図形2 とからなる図面情報をコンピュータからなる検査装置に入力し、該検査装置において、品質評価検査を行って検査結果データを出力する図面情報の品質評価方法であって、少なくとも下記工程(a)〜 (c)を実行し、

 (a)クリアランスを考慮せずに、図形1 と図形2 の交差判定を行い、交点P を求める

 (b)「図形1 の交点P 1 間の部分図形P D 」と「図形2 のクリアランス境界C B 」との交差判定を行う 

 (c)前記工程(b)で「交差なし」と判定されたものについて、「図形1 の交点P 1 間の部分図形P D を拡張した拡張部分図形E P D 」と「図形2 のクリアランス境界C B 」との交差判定を行う 

前記工程(b)及び(c)は、それぞれ、下記工程(g-1)〜 (g-4)及び(g-5-a)又は(g-5-b) 

(g-1)前記工程(b)の場合、図形1 の交点P 1 から前( 始点P S T 寄り) の交点P 1 ( 前の交点P 1 が無い場合は始点P S T ) までの部分図形P D b と、図形1 の交点P 1 から次( 終点P E N 寄り) の交点P 1 ( 次の交点P 1 が無い場合は終点P E N ) までの部分図形P D a とを設定し、一方、前記工程(c)の場合、図形1 の交点P 1 から始点P S T までの拡張部分図形E P D b 、又は、図形1 の交点P 1 から終点P E N までの拡張部分図形E P D a を設定する

(g-2)図形2 を構成する線分群のうち、図形1 の交点P 1 のある線分B L についてのクリアランス境界C B b を設定する 

(g-3)前記工程(b)の場合、部分図形P D b とクリアランス境界C B b との交差判定、及び、部分図形P D a とクリアランス境界C B b との交差判定を行い、一方、前記工程(c)の場合、拡張部分図形E P D b とクリアランス境界C B b との交差判定、又は、拡張部分図形E P D a とクリアランス境界C B b との交差判定を行う 

(g-4)「交差あり」か否かを判定する 

(g-5-a)「交差なし」の場合、「交差なし」と判定する 

(g-5-b)一方、「交差あり」の場合、所定の第1 条件が成立するか否かを判定し、 前記第1 条件が成立しない場合、「交差あり」と判定し、 一方、前記第1 条件が成立する場合、所定の第2 条件が成立するか否かを判定し、 前記第2 条件が成立しない場合、次の隣接線分N N L があるか否かを判定し、 前記次の隣接線分N N L がない場合、「交差あり」と判定し、一方、前記次の隣接線分N L L がある場合、前記次の隣接線分N N L で前記第1 条件が成立するか否かの判定に戻り、 一方、前記第2 条件が成立する場合、所定の第3 条件が成立するか否かを判定し、 前記第3 条件が成立しない場合、「交差あり」と判定し、 一方、前記第3 条件が成立する場合、隣接線分N L のクリアランス境界C B ( C B n )を使用した交差判定を行う からなり、 前記第1 条件は、「図形A が判定円C 内を通過すること」、前記第2 条件は、「最初の交点P f が線分( 現在の線分) B L に隣接する隣接線分N L のクリアランス境界C B n 内にあること」、前記第3 条件は、「図形B が判定円C 内を通過すること」であり、前記「図形A 」とは、前記部分図形P D 又は前記拡張部分図形E P D の始点P s から、前記部分図形P D 又は前記拡張部分図形E P D とクリアランス境界C B との最初の交点P f までの図形をいい、前記「判定円C 」とは、隣接線分N L の線分B L 側の端点P e を中心とする半径クリアランスの円をいい、前記「図形B 」とは、前記部分図形P D 又は前記拡張部分図形E P D において、前記図形A と前記隣接線分N L のクリアランス境界C B n との最後の交点P l から最初の交点P f までの図形をいう( 但し、最後の交点P l がない場合、図形B は図形A と同じになる。) ことを特徴とする。


【0 0 0 6 】
本発明の図面情報の品質評価方法によると、検査装置( コンピュータ) 上で「クリアランスを超えた交差」かどうかの判定が正しく行われるようになり、地理空間情報の品質評価を自動で行い、クリアランスを考慮した全件検査が可能となる。


【図面の簡単な説明】

【0 0 0 7 】

図1本発明の一実施形態に係る図面情報の品質評価方法を実施するシステムの構成図である。
図2品質評価方法の内容を示すフローチャートである。
図3交点P の求め方を示す説明図である。
図4同じく、交点P の求め方を示す説明図である。
図5図形及び線分のクリアランス境界の説明図である。
図6クリアランス境界の求め方を示す
図7図形と線分のクリアランス境界との交差判定の説明図である。
図8線分と円弧の交差判定の説明図である。
図9交点がクリアランス境界内にあるかどうかの判定方法の説明図である。
図1 0 図形が円内を通過するかどうかの判定方法の説明図である。
図1 1線分と円の交差判定の説明図である。
図1 2円周上の点が円弧上にあるかどうかの判定方法の説明図である。
図1 3図2 図示ステップS 2 の具体的内容を示すフローチャートである。
図1 4図形1 と図形2 との交差判定を具体的に説明するための図形図である。
図1 5図1 4 図示の図形に対する交差判定方法を説明するための説明図である。
図1 6同じく、図1 4図示の図形に対する交差判定方法を説明するための説明図である。
図1 7同じく、図1 4図示の図形に対する交差判定方法を説明するための説明図である。
図1 8同じく、図1 4図示の図形に対する交差判定方法を説明するための説明図である。
図1 9同じく、図1 4図示の図形に対する交差判定方法を説明するための説明図である。
図2 0同じく、図1 4 図示の図形に対する交差判定方法を説明するための説明図である。
図2 1図1 4図示の図形に対する交差判定方法により得られた表A の構成図である。
図2 2「交差なし」と判定される図形例の構成図である。
図2 3図形A が判定円C 内を通過しない図形例の構成図である。
図2 4次の隣接線分N N L で再度条件判定を行うかどうかの判定方法を説明するための図形例の構成図である。
図2 5同じく、次の隣接線分N N L で再度条件判定を行うかどうかの判定方法を説明するための図形例の構成図である。
図2 6隣接線分N L のクリアランス境界C B n を使用した交差判定を継続するかどうかの判定方法を説明するための図形例の構成図である。
図2 7変更後の部分図形P D の説明図である。
図2 8図形と線分のクリアランス境界との交差判定の具体例を示す図である。
図2 9同じく、図形と線分のクリアランス境界との交差判定の具体例を示す図であり、前半部分の説明図である。
図3 0 図2 9 に続く後半部分の説明図である。
図3 1交差判定の結果が「端側と交差」になった場合の説明図である。
図3 2同じく、交差判定の結果が「端側と交差」になった場合の説明図である。
図3 3同じく、交差判定の結果が「端側と交差」になった場合の説明図である。
図3 4同じく、交差判定の結果が「端側と交差」になった場合の説明図である。
図3 5同じく、交差判定の結果が「端側と交差」になった場合の説明図である。
図3 6同じく、交差判定の結果が「端側と交差」になった場合の説明図である。
図3 7表B の作成方法の説明図である。
図3 8同じく、表B の作成方法の説明図である。
図3 9始点側と終点側の両方で隣接線分のクリアランス境界との交差判定を行う場合の判定方法の説明図である。
図4 0同じく、始点側と終点側の両方で隣接線分のクリアランス境界との交差判定を行う場合の判定方法の説明図である。
図4 1同じく、始点側と終点側の両方で隣接線分のクリアランス境界との交差判定を行う場合の判定方法の説明図である。
図4 2同じく、始点側と終点側の両方で隣接線分のクリアランス境界との交差判定を行う場合の判定方法の説明図である。
図4 3同じく、始点側と終点側の両方で隣接線分のクリアランス境界との交差判定を行う場合の判定方法の説明図である。
図4 4同じく、始点側と終点側の両方で隣接線分のクリアランス境界との交差判定を行う場合の判定方法の説明図である。
図4 5同じく、始点側と終点側の両方で隣接線分のクリアランス境界との交差判定を行う場合の判定方法の説明図である。
図4 6同じく、始点側と終点側の両方で隣接線分のクリアランス境界との交差判定を行う場合の判定方法の説明図である。
図4 7同じく始点側と終点側の両方で隣接線分のクリアランス境界との交差判定を行う場合の判定方法の説明図である。
図4 8図形の具体例による交差判定結果を示す図である。
図4 9同じく、図形の具体例による交差判定結果を示す図である。
図5 0同じく、図形の具体例による交差判定結果を示す図である。
図5 1同じく、図形の具体例による交差判定結果を示す図である。
図5 2同じく、図形の具体例による交差判定結果を示す図である。
図5 3同じく、図形の具体例による交差判定結果を示す図である。
図5 4同じく、図形の具体例による交差判定結果を示す図である。
図5 5表C の内容から最終的に「クリアランスを超えた交差」かどうかを判定する方法についての説明図である。
図5 6図形1 から見た判定結果と図形2 から見た判定結果から最終的に交差判定を行う方法についての説明図である。
図5 7本実施形態の効果を説明するための説明図である。
図5 8同じく本実施形態の効果を説明するための説明図である。
図5 9同じく本実施形態の効果を説明するための説明図である。
図6 0同じく本実施形態の効果を説明するための説明図である。
図6 1同じく本実施形態の効果を説明するための説明図である。
図6 2同じく本実施形態の効果を説明するための説明図である。


【発明を実施するための形態】

【0 0 0 8 】
図1 は、本発明の一実施形態に係る図面情報の品質評価方法を実施するシステムの構成を示し、コンピュータからなる検査装置1 は、地理空間情報を入力し、入力した地理空間情報に対して品質評価検査を行って、検査結果データを出力する。


【0 0 0 9 】
検査装置1 は、地理空間情報が図形1 と図形2 とからなる地理空間情報である場合、品質評価検査を図2 に示す手順で行う。なお、以下の説明は、数学座標系を使用している。


【0 0 1 0 】
図2 において、まず、クリアランスを考慮せずに、図形1 と図形2 の交差判定を行い、交点P を求める( ステップS 1 ) 。


【0 0 1 1 】
次に、「図形1 の交点P 1 間の部分図形P D 」と「図形2 のクリアランス境界C B 」との交差判定を行い、表A を作成する( ステップS 2 ) 。


【0 0 1 2 】
次に、ステップS 2 で「交差なし」と判定されたものについて、「図形1 の交点P 1 間の部分図形P D を拡張した拡張部分図形E P D 」と「図形2 のクリアランス境界C B 」との交差判定を行い、表B を作成する( ステップS 3 ) 。


【0 0 1 3 】
次に、表A と表B とから表C を作成し、それぞれの交差が「クリアランスを超えた交差」かどうかを判定し、図形1 から見た判定結果を得る( ステップS 4 ) 。


【0 0 1 4 】
次に、図形1 と図形2 とを入れ換えてステップS 2 〜 S 4 を繰り返し、図形2 から見た判定結果を得る( ステップS 5 ) 。


【0 0 1 5 】
最後に、「図形1 から見た判定結果」と「図形2 から見た判定結果」の両方で「クリアランスを超えた交差」と判定された交差のみを、最終的に「クリアランスを超えた交差」と判定する( ステップS 6 ) 。


【0 0 1 6 】
以下、ステップS 1 〜 S 6 の具体的内容を順に説明する。


【0 0 1 7 】
A .  ステップS 1 ステップS 1 では、クリアランスを考慮せずに、図形1 と図形2 との交差判定を行い、交点P を求める( 図1 4 参照。図1 4 に示すP 1 が交点P である。なお、図1 4 に示すCB は、図形2 のクリアランス境界である。) 。


【0 0 1 8 】
図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 を求める。


【0 0 1 9 】
交点P を求めるに当たっては、図4 に示すように、図形1 の線分A の端点を( x 1 , y1 ) 、( x 2 , y 2 ) とし、図形2 の線分B の端点を( x 3 , y 3 ) 、( x 4 , y 4 ) とした場合、最初に、2 点( x 1 , y 1 ) 、( x 2 , y 2 ) を通る直線と2 点( x 3 , y 3) 、( x 4 , y 4 ) を通る直線との交点( x , y ) を求める。そして、求めた交点( x ,y ) が、線分A 上にあり、かつ、線分B 上にあるとき、線分A と線分B が交点( x , y )で交差すると判定する。


【0 0 2 0 】
B .  ステップS 2 ステップS 2 では、「図形1 の交点P 1 間の部分図形P D 」と「図形2 のクリアランス境界C B 」との交差判定を行い、表A を作成する。


【0 0 2 1 】
 a) 図形1 の交点P 1 間の部分図形P D 

図形1 の交点P 1 間の部分図形P D は、基本的には、例えば図1 5 ( B ) に太線で示すように、図形1 において始点側の交点P 1 ( P 1b) と終点側の交点P 1 ( P 1a) との間の図形であるが、後述するように、交点P 1 から前の交点までの図形、及び、交点P 1 から次の交点までの図形により構成される。


【0 0 2 2 】
 b) クリアランス境界C B 

クリアランス境界C B とは、図形又は線分からの距離がクリアランス以内となる領域(クリアランス領域) の境界線であり、図形のクリアランス境界C B は、図5 ( A ) に示すように、図形を取り囲む閉ループ線で表され、線分のクリアランス境界C B は、図5 ( B) に示すように、線分を取り囲む閉ループ線で表される。


【0 0 2 3 】
そして、図形のクリアランス境界C B は、図5 ( A ) に示すように、図形の始点から終点に向かう方向を基準として、始点側の端側、左側、右側及び終点側の端側により構成され、また、線分のクリアランス境界C B は、図5 ( B ) に示すように、線分の始点から終点に向かう方向を基準として、始点側の端側、左側、右側及び終点側の端側により構成される。


【0 0 2 4 】
線分のクリアランス境界C B を求めるに当たっては、図6 に示すように、線分の始点(x 1 , y 1 ) 及び終点( x 2 , y 2 ) を線分( x 1 , y 1 ) ― ( x 2 , y 2 ) に対して垂直方向へc l ( クリアランス) だけ移動した点A ( x a , y a ) 、点B ( x b , y b ) 、点C ( x c , y c ) 、点D ( x d , y d ) を求め、点A と点B とを結んだ線分と、点C と点D とを結んだ線分と、終点( x 2 , y 2 ) を中心点とし、半径がc l で、点B で始まり点C で終わる右回りの円弧と、始点( x 1 , y 1 ) を中心点とし、半径がc l で、点D で始まり点A で終わる右回りの円弧とにより構成する。


【0 0 2 5 】
 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 との交差判定を行う。


【0 0 2 6 】
線分と円弧との交差判定は、図8 に示すように、線分の端点を( x 1 , y 1 ) 、( x 2, y 2 ) とし、円弧の中心点を( x c , y c ) 、半径をr 、開始角をθ 1 、終了角をθ 2とした場合、2 点( x 1 , y 1 ) 、( x 2 , y 2 ) を通る直線と、中心点( x c , y c )、半径r の円との交点( x , y ) を求める。そして、交点( x , y ) が線分上にあり、かつ、円弧上にあれば、線分と円弧が交点( x , y ) で交差すると判定する。


【0 0 2 7 】
円周上の点が円弧上にあるかどうかの判定は、図1 図2 に示すように、円周上の点を( x, y ) とし、円弧の中心点を( x c , y c ) 、半径をr 、開始角をθ 1 、終了角をθ 2 とし、点( x c , y c ) から点( x , y ) への方向角θ 3 を求め、θ 3 がθ 1 とθ 2 との間にあるときに、点が円弧上にあると判定する。


【0 0 2 8 】
 d) ステップS 2 の具体的内容( 図1 3 ) 

次に、ステップS 2 の具体的内容を図1 3 に基づいて説明する。


【0 0 2 9 】
  d-1.
まず、図形1 の交点P 1 から前( 始点寄り) の交点( 前の交点が無い場合は始点) までの部分図形P D b と、図形1 の交点P 1 から次( 終点寄り) の交点( 次の交点が無い場合は終点) までの部分図形P D a とを設定する( ステップS 2 1 ) 。


【0 0 3 0 】
例えば図1 4 に示す図形1 及び図形2 の場合、図1 5 ( A ) 、( B ) に示すように、交点P 1 b についての部分図形P D b 及び部分図形P D a は、それぞれ、交点P 1 b から始点P S T までの太線で表した図形、及び、交点P 1 b から次の交点P 1 a までの太線で表した図形となり、また、図1 6 ( A ) 、( B ) に示すように、交点P 1 a についての部分図形P D b 及び部分図形P D a は、それぞれ、交点P 1 a から交点P 1 b までの太線で表した図形、及び、交点P 1 a から終点P E N までの太線で表した図形となる。


【0 0 3 1 】
  d-2. 
次に、図形2 を構成する線分群のうち、図形1 の交点P 1 のある線分B L についてのクリアランス境界C B ( C B b ) を設定する( ステップS 2 2 ) 。


【0 0 3 2 】
例えば図1 4 に示す図形1 及び図形2 の場合、図1 5 ( A ) 、( B ) に示すように、交点P 1 b のある線分B L についてのクリアランス境界C B b は、破線で表した図形となり、また、図1 6 ( A ) 、( B ) に示すように、交点P 1 a のある線分B L についてのクリアランス境界C B b は、破線で表した図形となる。


【0 0 3 3 】
  d-3. 
次に、部分図形P D b とクリアランス境界C B b との交差判定、及び、部分図形P D aとクリアランス境界C B b との交差判定を行う( ステップS 2 3 ) 。


【0 0 3 4 】
例えば図1 4 に示す図形1 及び図形2 の場合、図1 5 ( A ) に示すように、交点P 1 bについての部分図形P D b は、クリアランス境界C B b の右側と交差すると判定し、図15 ( B ) に示すように、交点P 1 b についての部分図形P D a は、クリアランス境界C Bb の左側と交差すると判定し、また、図1 6 ( A ) に示すように、交点P 1 a についての部分図形P D b は、クリアランス境界C B b の左側と交差すると判定し、図1 6 ( B ) に示すように、交点P 1 a についての部分図形P D a は、クリアランス境界C B b の右側と交差すると判定する。


【0 0 3 5 】
  d-4. 
次に、「交差あり」か否かを判定する( ステップS 2 4 ) 。


【0 0 3 6 】
   d-4-a.
「交差なし」の場合、「交差なし」と判定する( ステップS 2 5 ) 。


【0 0 3 7 】
例えば図2 2 に示す図形1 及び図形2 の場合、部分図形P D は線分B L のクリアランス境界C B b 内にあるため、ステップS 2 4 の判定結果は「N O 」となり、「交差なし」と判定され( ステップS 2 5 ) 、表A が作成される。


【0 0 3 8 】
   d-4-b.
一方、「交差あり」の場合、隣接線分N L のクリアランス境界C B ( C B n ) を使用した交差判定を継続するか否かを判定する( ステップS 2 6 ) 。


【0 0 3 9 】
例えば図1 4 に示す図形1 及び図形2 の場合、上述したように、交点P 1 b についての部分図形P D b 及び部分図形P D a のいずれも「交差あり」となり、また、交点P 1 a についての部分図形P D b 及び部分図形P D a のいずれも「交差あり」となるため、隣接線分N L のクリアランス境界C B n を使用した交差判定を継続するか否かを判定することになる。


【0 0 4 0 】
この隣接線分N L のクリアランス境界C B n を使用した交差判定を継続する条件として3 つの条件( 第1 条件、第2 条件、第3 条件) がある。第1 条件は、「図形A が判定円C内を通過すること( ステップS 2 6 a ) 」である。第2 条件は、「最初の交点P f が隣接線分N L のクリアランス境界C B n 内にあること( ステップS 2 6 b ) 」である。第3 条件は、「図形B が判定円C 内を通過すること( ステップS 2 6 c ) 」である。第1 条件の判定ステップS 2 6 a の判定結果、第2 条件の判定ステップS 2 6 b の判定結果及び第3条件の判定ステップS 2 6 c の判定結果が全て「Y E S 」の場合のみ、隣接線分N L のクリアランス境界C B n を使用した交差判定を継続する。第1 条件の判定ステップS 2 6 aの判定結果は「Y E S 」であっても第2 条件の判定ステップS 2 6 b の判定結果が「N O」である場合、次の隣接線分N N L があるか否かを判定し( ステップS 2 6 d ) 、ステップS 2 6 d の判定結果が「Y E S 」の場合、ステップS 2 6 a へ移行し、次の隣接線分NN L で再度条件判定を行う。


【0 0 4 1 】
点( x , y ) がクリアランス境界内にあるかどうかの判定は、図9 に示すように、点(x , y ) から2 点( x 1 , y 1 ) 、( x 2 , y 2 ) を通る直線へ下ろした垂線の足( x f, y f ) を求めた上で、点( x , y ) から線分までの距離d を求める。そして、d ≦ c lのとき、点( x , y ) がクリアランス境界内にあると判定する。


【0 0 4 2 】
図形が円内を通過するかどうかの判定は、図形を構成する線分ごとに円との交差判定を行い、円と交差する線分が存在したら円内を通過すると判定する。例えば、図1 0 に示すように、図形がm 個の線分で構成されている場合、線分1 と円の交差判定、線分2 と円の交差判定、… 、線分m と円の交差判定を行う。


【0 0 4 3 】
線分と円の交差判定は、図1 1 に示すように、線分の端点をそれぞれ( x 1 , y 1 ) 、( x 2 , y 2 ) とし、円の中心点を( x c , y c ) 、半径をr とし、2 点( x 1 , y 1 )、( x 2 , y 2 ) を通る直線と円との交点( x a , y a ) 、( x b , y b ) を求める。そして、交点( x a , y a ) 、( x b , y b ) のどちらか一方でも線分上にあれば、線分と円とが交差すると判定する。


【0 0 4 4 】
 ( 第1 条件) 
第1 条件は、上記のように、「図形A が判定円C 内を通過すること」である。


【0 0 4 5 】
  ・図形A
図形A とは、部分図形P D の始点P s から、部分図形P D とクリアランス境界C B との最初の交点P f までの図形をいう。


【0 0 4 6 】
例えば図1 4 に示す図形1 及び図形2 の場合、交点P 1 b についての部分図形P D b 及び線分B L のクリアランス境界C B b は図1 7 ( A ) に示すようになるため、部分図形PD b における図形A は図1 7 ( B ) に示すようになる。また、交点P 1 b についての部分図形P D a 及び線分B L のクリアランス境界C B b は図1 8 ( A ) に示すようになるため、部分図形P D a における図形A は図1 8 ( B ) に示すようになる。また、交点P 1 a についての部分図形P D b 及び線分B L のクリアランス境界C B b は図1 9 ( A ) に示すようになるため、部分図形P D b における図形A は図1 9 ( B ) に示すようになる。また、交点P 1 a についての部分図形P D a 及び線分B L のクリアランス境界C B b は図2 0 (A ) に示すようになるため、部分図形P D a における図形A は図2 0 ( B ) に示すようになる。


【0 0 4 7 】
  ・判定円C 
判定円C とは、線分( 現在の線分) B L に隣接する隣接線分N L の線分B L 側の端点Pe を中心とする半径クリアランスの円をいう。


【0 0 4 8 】
例えば図1 4 に示す図形1 及び図形2 の場合、交点P 1 b についての現在の線分B L 、隣接線分N L 及び隣接線分N L のクリアランス境界C B n は図17 及び図18 に示すようになるため、判定円C は図17 及び図18 に示すようになる。また、交点P 1 a についての現在の線分B L 、隣接線分N L 及び隣接線分N L のクリアランス境界C B n は図19 及び図20 に示すようになるため、判定円C は図1 9 及び図2 0 に示すようになる。


【0 0 4 9 】
  ・第1 条件の判定結果( 第1 条件が成立しない場合)
 図14 に示す図形1 及び図形2 の場合、交点P 1 b についての図形A 、及び、交点P 1a についての図形A は、図17 ( B ) 、図18 ( B ) 、図19 ( B ) 及び図図20 ( B ) に示すように、いずれも判定円C を通過していないため、第1 条件は成立しないことになり、判定ステップS 2 6 a の判定結果は「N O 」となり、隣接線分N L のクリアランス境界C B n を使用した交差判定を継続せず、「交差あり」と判定し( ステップS 2 7 ) 、表Aを作成することになる。


【0 0 5 0 】
したがって、図14 に示す図形1 及び図形2 の場合、ステップS 2 において表A が作成されることになり、表A は、図21 に示す内容となる。図21 において、表A の第1 行目には、「図形1 の交点P 1 b から始点P S T までの部分図形P D b 」と「図形2 のクリアランス境界C B b 」との交差判定の結果が書き込まれ、表A の第2 行目には、図形1 の交点P 1 b が書き込まれ、表A の第3 行目には、「図形1 の交点P 1 b から次の交点P 1 a までの部分図形P D a 」と「図形2 のクリアランス境界C B b 」との交差判定の結果が書き込まれ、表A の第4 行目には、「図形1 の交点P 1 a から前の交点P 1 b までの部分図形P D b 」と「図形2 のクリアランス境界C B b 」との交差判定の結果が書き込まれ、表Aの第5 行目には、図形1 の交点P 1 a が書き込まれ、表A の第6 行目には、「図形1 の交点P 1 a から終点P E N までの部分図形P D a 」と「図形2 のクリアランス境界C B b 」との交差判定の結果が書き込まれ、この結果、表A の第1 行目、第3 行目には、それぞれ、「右側と交差」、「左側と交差」が書き込まれ、第4 行目、第6 行目には、それぞれ、「左側と交差」、「右側と交差」が書き込まれる。


【0 0 5 1 】
また、図23 に示す図形1 及び図形2 の場合、図形A が判定円C 内を通過しないため、表A に、「交差あり( 左側と交差) 」と書き込まれる。


【0 0 5 2 】
  ・第1 条件の判定結果( 第1 条件が成立する場合)
図形1 及び図形2 が図24 に示す場合、図形1 の部分図形P D における図形A は判定円C 内を通過することになるため、ステップS 2 6 a の判定結果は「Y E S 」となり、次に、第2 条件が成立するか否かが判定される( ステップS 2 6 b ) 。


【0 0 5 3 】
 ( 第2 条件) 
第2 条件は、上記のように、「最初の交点P f が隣接線分N L のクリアランス境界C Bn 内にあること」である。


【0 0 5 4 】
  ・第2 条件の判定結果( 第2 条件が成立しない場合)
図24 に示す図形1 及び図形2 の場合、最初の交点P f は、隣接線分N L のクリアランス境界C B n の外にあるため、第2 条件は成立しないことになる。


【0 0 5 5 】
第2 条件が成立しない場合、次の隣接線分N N L があるか否か判定する( ステップS 26 d ) 。


【0 0 5 6 】
    ・次の隣接線分N N L がない場合
 次の隣接線分N N L がない場合、「交差あり」と判定し( ステップS 2 7 ) 、表A を作成する。図24 の例の場合、隣接線分N N L がないことから、「交差あり( 左側と交差)」と判定し( ステップS 2 7 ) 、表A を作成することになる。


【0 0 5 7 】
    ・次の隣接線分N N L がある場合
 次の隣接線分N N L がある場合、ステップS 2 6 a へ移行し、図形A が判定円C ( このときの判定円C は、次の隣接線分N N L の、隣接線分N L 寄りの端点P s t 、を中心とする円C n となる。) を通過するか否かを判定する。


【0 0 5 8 】
図25 に示す図形1 及び図形2 の場合、次の隣接線分N N L があることから、図形A が判定円C n 内を通過かするか否か判定され( ステップS 2 6 a ) 、この判定結果は「N O」となり、「交差あり( 左側と交差) 」と判定され( ステップS 2 7 ) 、表A が作成されることになる。


【0 0 5 9 】
  ・第2 条件の判定結果( 第2 条件が成立する場合)
 図26 に示す図形1 及び図形2 の場合、最初の交点P f は、隣接線分N L のクリアランス境界C B n 内にあることから、ステップS 2 6 b の判定結果は「Y E S 」となり、次に、第3 条件が成立するか否かが判定される( ステップS 2 6 c ) 。


【0 0 6 0 】
 ( 第3 条件)
 第3 条件は、上記のように、「図形B が判定円C 内を通過すること」である。


【0 0 6 1 】
  ・図形B 
 図形B とは、部分図形P D において、図形A と隣接線分N L のクリアランス境界C B nとの最後の交点P l から最初の交点P f までの図形をいう。但し、最後の交点P l がない場合、図形B は図形A と同じになる。


【0 0 6 2 】
例えば図26 ( A ) に示す図形1 及び図形2 の場合、最初の交点P f 及び最後の交点Pl は図26 ( A ) に示すようになるため、図形B は、図26 ( B ) に示すようになる。


【0 0 6 3 】
  ・第3 条件の判定結果( 第3 条件が成立しない場合)
 例えば図28 に示す図形1 及び図形2 の場合、図28 ( B ) に示すように、図形B が判定円C 内を通過しないため、ステップS 2 6 c の判定結果は「N O 」となり、「交差あり( 左側と交差) 」と判定し( ステップS 2 7 ) 、表A を作成する。


【0 0 6 4 】
  ・第3 条件の判定結果( 第3 条件が成立する場合)
 例えば図26 に示す図形1 及び図形2 の場合、図26 ( B ) に示すように、図形B が判定円C 内を通過するため、ステップS 2 6 c の判定結果は「Y E S 」となり、次に、隣接線分N L のクリアランス境界C B n を使用した交差判定を継続する( ステップS 2 8 ) 。


【0 0 6 5 】
< 隣接線分N L のクリアランス境界C B n を使用した交差判定> 
隣接線分N L のクリアランス境界C B n を使用した交差判定においては、図形A が隣接線分N L のクリアランス境界C B n 内にある場合を除き、部分図形P D の変更を行う。変更後の部分図形P D の始点は、変更前の部分図形P D の始点P s から最初の交点P f までの部分と、隣接線分N L のクリアランス境界C B n と、の最後の交点P l になる。


【0 0 6 6 】
例えば図26 ( A ) に示す図形1 及び図形2 の場合、図27 ( A ) に示すように、変更前の部分図形P D において、部分図形P D の始点P s から最初の交点P f までの部分は図27 ( A ) において太線で示すものとなり、変更後の部分図形P D は、図27 ( B ) において太線で示す図形となる。図27 ( B ) に示す部分図形P D の場合、現在の線分B L (元の隣接線分N L ) のクリアランス境界C B b ( 元のクリアランス境界C B n ) 内にあるため、表A に「交差なし」と書き込まれる。


【0 0 6 7 】
 e ) 「部分図形」と「線分のクリアランス境界」との交差判定の具体例 

  ・図28 に示す図形1 及び図形2 の場合、図28 ( A ) に示すように、部分図形PD が線分B L のクリアランス境界C B b と交差しており、図形A が判定円C 内を通過しており、最初の交点P f が隣接線分N L のクリアランス境界C B n 内にあり、図28 ( B )に示すように、図形B が判定円C 内を通過しないため、表A に「交差あり( 左側と交差)」と書き込まれる。


【0 0 6 8 】
  ・図29 に示す図形1 及び図形2 の場合、図29 に示すように、部分図形P D が線分B L のクリアランス境界C B b と交差しており、図形A が判定円C 内を通過しており、最初の交点P f が隣接線分N L のクリアランス境界C B n 内にないため、次の隣接線分NN L を使用して再度条件判定が行われ、再度の条件判定において、図30 ( A ) に示すように、図形A が次の隣接線分N N L の判定円C n 内を通過しており、最初の交点P f が次の隣接線分N N L のクリアランス境界C B n n 内にあり、図30 ( B ) に示すように、図形B が判定円C n 内を通過するため、次の隣接線分N N L を使用して交差判定を継続する。次の隣接線分N N L を使用した交差判定においては、更新後の部分図形P D として、更新前の部分図形P D のうち最後の交点P l を始点とする図形が使用され、この更新後の部分図形P D は次の隣接線分N N L のクリアランス境界C B n n 内にあるため、表A に「交差なし」と書き込まれる。


【0 0 6 9 】
 f) 交差判定の結果が「端側と交差」になった場合
 図31 に示すように、図形2 の最初の線分のクリアランス境界の始点側の端側、又は、最後の線分のクリアランス境界の終点側の端側と交差しているときには、その端側は、図形のクリアランス境界の端側と一致するので、図形のクリアランス境界の端側と交差していることになり、交差判定の結果は、「端側と交差」になる。


【0 0 7 0 】
図32 に示すように、図形2 の線分のクリアランス境界の上記以外の端側と交差しているときには、その端側は、図形のクリアランス境界の左側又は右側の一部分であり、図形のクリアランス境界の左側又は右側と交差していることになるので、どちら側と交差しているかの判定を行う。点が直線に対してどちら側にあるかの判定は、図35 に示すように、点( x 3 , y 3 ) が2 点( x 1 , y 1 ) 、( x 2 , y 2 ) を通る直線のどちら側にあるか判定する。この判定にあたっては、座標法により、三角形( x 1 , y 1 ) 、( x 2 , y2 ) 、( x 3 , y 3 ) の面積S を計算する( 2 S = ( y 2 - y 1 ) ( x 3 - x 1 ) - ( x2 - x 1 ) ( y 3 - y 1 ) ) 。座標法では、面積の符号が、図36 ( A ) に示すように、三角形が右回りのときには正になり、図36 ( B ) に示すように、三角形が左回りのときは負になるので、面積が正のときは、「点は直線の右側にある」と判定し、面積が負のときは、「点は直線の左側にある」と判定する。


【0 0 7 1 】
図33 に示すように、点( x 3 , y 3 ) が2 点( x 1 , y 1 ) 、( x 2 , y 2 ) を通る直線の( 進行方向に対して) 左側にあるときには、線分のクリアランス境界の端側と交差して外に出たならば、図形のクリアランス境界の右側と交差して外に出たことになるので、交差判定の結果は、「右側と交差」になる。


【0 0 7 2 】
図34 に示すように、点( x 3 , y 3 ) が2 点( x 1 , y 1 ) 、( x 2 , y 2 ) を通る直線の( 進行方向に対して) 右側にあるときには、線分のクリアランス境界の端側と交差して外に出たならば、図形のクリアランス境界の左側と交差して外に出たことになるので、交差判定の結果は、「左側と交差」になる。


【0 0 7 3 】
C .  ステップS 3
 ステップS 3 では、ステップS 2 で「交差なし」と判定されたものについて、「図形1の交点P 1 間の部分図形P D を拡張した拡張部分図形E P D 」と「図形2 のクリアランス境界C B 」との交差判定を行い、表B を作成する。


【0 0 7 4 】
 a) 拡張部分図形E P D
 例えば図37 ( A ) に示す図形1 及び図形2 の場合、表A は、図37 ( B ) に示すようになり、第3 行目及び第4 行目の判定結果は「交差なし」となる。


【0 0 7 5 】
このような場合、表B を作成する。表B を作成するに当たっては、拡張部分図形E P Dが使用され、上述した表A を作成する手順と同様な手順により、拡張部分図形E P D とクリアランス境界C B との交差判定を行い、表B を作成する。


【0 0 7 6 】
図37 ( A ) に示す図形1 及び図形2 の場合、図38 ( A ) に示すように、交点P 1 bについての拡張部分図形E P D a は、交点P 1 b から終点P E N までの部分図形となり、交点P 1 a についての拡張部分図形E P D b は、交点P 1 a から始点P S T までの部分図形となり、判定結果である表B は、図38 ( C ) に示すようになる。


【0 0 7 7 】
< 具体例( 図3 9 〜 図4 7 ) >
図39 に示す図形1 及び図形2 の場合、部分図形P D と現在の線分B L のクリアランス境界C B b との交差判定の結果は、図39 に示すように、「左側と交差」になる。


【0 0 7 8 】
このため、まず、始点方向の隣接線分N L s のクリアランス境界C B n s との交差判定を継続するか否かを判定することになる。


【0 0 7 9 】
図40 に示すように、図形A は判定円C 内を通過しており、また、最初の交点P f は始点方向の隣接線分N L s のクリアランス境界C B n s 内にあり、また、図形A とクリアランス境界C B n s との交点がないため、図形B は図形A と同じになり、図形B は判定円C内を通過しているため、上記の第1 条件、第2 条件、第3 条件の全てが成立している。


【0 0 8 0 】
このため、隣接線分N L s のクリアランス境界C B n s を使用した交差判定を継続することになる。


【0 0 8 1 】
この隣接線分N L s のクリアランス境界C B n s を使用した交差判定においては、図形A がクリアランス境界C B n s 内にあるため、部分図形P D の変更は行わず、図41 に示すように、上述したクリアランス境界C B b との交差判定に使用された部分図形P D と同じ部分図形が使用される。


【0 0 8 2 】
この交差判定の結果は、図42 に示すように、「( 始点側の) 端側と交差」になる。


【0 0 8 3 】
このため、次の隣接線分N N L のクリアランス境界C B n n との交差判定を継続するか否かを判定することになる。


【0 0 8 4 】
図42 に示すように、図形A は判定円C 内を通過しており、また、最初の交点P f は次の隣接線分N N L のクリアランス境界C B n n 内にあり、また、図形B は、図43 に示すように、判定円C 内を通過しているため、上記の第1 条件、第2 条件、第3 条件の全てが成立している。


【0 0 8 5 】
このため、次の隣接線分N N L のクリアランス境界C B n n を使用した交差判定を継続することになる。


【0 0 8 6 】
この次の隣接線分N N L のクリアランス境界C B n n を使用した交差判定においては、部分図形P D が変更され、図44 に示す部分図形P D が使用される。


【0 0 8 7 】
この交差判定の結果は、図44 に示すように、「左側と交差」になる。そして、次の次の隣接線分がないため、始点方向の隣接線分N L s のクリアランス境界C B n s との交差判定の結果は、「左側と交差」ということになる。


【0 0 8 8 】
次に、終点方向の隣接線分N L e のクリアランス境界C B n e との交差判定を継続するか否かを判定することになる。


【0 0 8 9 】
図45 に示すように、図形A は判定円C 内を通過しており、また、最初の交点P f は終点方向の隣接線分N L e のクリアランス境界C B n e 内にあり、また、図形A とクリアランス境界C B n e との交点がないため、図形B は図形A と同じになり、図形B は判定円C内を通過しているため、上記の第1 条件、第2 条件、第3 条件の全てが成立している。


【0 0 9 0 】
このため、隣接線分N L e のクリアランス境界C B n e を使用した交差判定を継続することになる。


【0 0 9 1 】
この隣接線分N L e のクリアランス境界C B n e を使用した交差判定においては、図形A がクリアランス境界C B n e 内にあるため、部分図形P D の変更は行わず、図46 に示すように、上述したクリアランス境界C B b との交差判定に使用された部分図形P D と同じ部分図形が使用される。

 

【0 0 9 2 】
この交差判定の結果は、図46 に示すように、「交差なし」になる。


【0 0 9 3 】
したがって、始点方向の隣接線分N L s 側の交差判定の結果は「左側と交差」になり、終点方向の隣接線分N L e 側の交差判定の結果は「交差なし」になる。


【0 0 9 4 】
このように始点方向と終点方向とで交差判定の結果が一致せず、いずれか一方の判定結果に「交差なし」がある場合、交差判定の結果は「交差なし」とされ、表A に「交差なし」を書き込む。


【0 0 9 5 】
次に、拡張部分図形E P D を使用して、上述した部分図形P D を使用した交差判定と同様に交差判定を行う。


【0 0 9 6 】
この交差判定においては、始点方向の判定結果は、部分図形P D を使用した交差判定と同じく「左側と交差」になり、一方、終点方向の判定結果は、図47 に示すように、「右側と交差」になる。


【0 0 9 7 】
このような場合、交差判定の結果は「両側と交差」とし、表B に「両側と交差」を書き込む。


【0 0 9 8 】
なお、図示しないが、図形1 がループ状の図形の場合、始点が存在しないので、一周して元の交点までの部分図形を拡張部分図形E P D として使用する。


【0 0 9 9 】
D .  ステップS 4

 ステップS 4 では、表A と表B から表C を作成し、それぞれの交差が「クリアランスを超えた交差」かどうか判定し、図形1 から見た判定結果を得る。


【0 1 0 0 】
( 具体例その1 ( 図48 ) )
図4 8 ( A ) に示す図形1 及び図形2 の場合、表A 及び表B 図48 ( B ) に示すようになる。すなわち、表A の第3 行目及び第4 行目では「交差なし」の判定結果となっているのに対し、表B では「右側と交差」、「( 始点) の端側と交差」となっている。


【0 1 0 1 】
このような場合、表A において交点P A の次の行の判定結果が「交差なし」のときに、表B における同じ行の判定結果及び次の交点P B の次の行の判定結果が「同じ側で交差」( 「左側と交差」、「右側と交差」又は「端側と交差」) のときには、変更条件が成立しているとし、表C の判定結果を「交差なし」とする。


【0 1 0 2 】
同様に、表A において交点P B の前の行の判定結果が「交差なし」のときに、表B における同じ行の判定結果及び前の交点P A の前の行の判定結果が「同じ側で交差」( 「左側と交差」、「右側と交差」又は「端側と交差」) のときには、表C の判定結果を「交差なし」とする。


【0 1 0 3 】
( 具体例その2 ( 図49 ) )
 図49 ( A ) に示す図形1 及び図形2 の場合、表A 及び表B は図49 ( B ) に示すようになる。すなわち、表A の第3 行目、第4 行目、第6 行目及び第7 行目では「交差なし」の判定結果となっているのに対し、表B では「左側と交差」、「右側と交差」、「左側と交差」、「右側と交差」となっている。


【0 1 0 4 】
したがって、上記変更条件が成立しているため、表C においては、上記各行に「交差なし」が書き込まれる。


【0 1 0 5 】
( 具体例その3 ( 図50 ) )
図50 0 ( A ) に示す図形1 及び図形2 の場合、表A 及び表B は図50 ( B ) に示すようになる。すなわち、表A の第3 行目及び第4 行目では「交差なし」の判定結果になっているのに対し、表B では「左側と交差」、「左側と交差」となっている。


【0 1 0 6 】
したがって、上記変更条件が成立していない。このような場合、表C には、表B と同じ内容が書き込まれる。


【0 1 0 7 】
( 具体例その4 ( 図51 ) )
 図51 ( A ) に示す図形1 及び図形2 の場合、表A 及び表B は図51 ( B ) に示すようになる。すなわち、表A の第3 行目及び第4 行目では「交差なし」の判定結果になっているのに対し、表B では「両側と交差」、「右側と交差」となっている。


【0 1 0 8 】
このように、「両側と交差」と「右側( 左側) と交差」の組合せのときは、「同じ側で交差」とみなす。


【0 1 0 9 】
このため、上記変更条件が成立することなり、表C には、「交差なし」が書き込まれる。


【0 1 1 0 】
( 具体例その5 ( 図52 ) )
 図52 ( A ) に示す図形1 及び図形2 の場合、表A 及び表B は図52 ( B ) に示すようになる。表B において、第3 行目及び第4 行目の判定結果は、それぞれ「交差なし」及び「左側と交差」となっている。このように、表B において、交点P A 、P B に挟まれた2 つの判定結果のどちらか一方でも「交差なし」となっている場合、表C の判定結果は「交差なし」に変更する。


【0 1 1 1 】
( 具体例その6 ( 図53 ) ) 
図53 ( A ) に示す図形1 及び図形2 の場合、表A 及び表B は図53 ( B ) に示すようになる。交点P A 、P B に挟まれた2 つの行で、表A の判定結果が片方だけ「交差なし」で、表B の判定結果が「左側と交差」と「右側と交差」の組合せになっている場合、表C では、共に「交差なし」に変更する。


【0 1 1 2 】
( 具体例その7 ( 図54 ) )
 図54 ( A ) に示す図形1 及び図形2 の場合、表A 及び表B は図54 ( B ) に示すようになる。


【0 1 1 3 】
表C には、図55 ( A ) に示すように、各交点P A 、P B ごとに最終的な判定結果が書き込まれる。


【0 1 1 4 】
表C の中で、図55 ( B ) に示すように、交点P の上下の行の判定結果が「左側と交差」、「右側と交差」の組合せのときに、その交点P で「クリアランスを超えて交差した」と判定し、また、図55 ( C ) に示すように、それ以外の組合せのときは「交差なし」と判定する。


【0 1 1 5 】
表C において、交点P A と交点P B とで挟まれた2 つの行には、「交差なし」が書き込まれる。「クリアランスを超えて交差した」かどうかの判定時には、表C 中の「交差なし」は無視して考えるため、表C 中の「交差なし」を削除すると、図54 ( C ) に示すようになる。


【0 1 1 6 】
E .  ステップS 5
 ステップS 5 では、図形1 と図形2 を入れ換えてステップS 2 〜 S 4 を繰り返し、図形2 から見た判定結果を得る。


【0 1 1 7 】
F .  ステップS 6
 ステップS 6 では、「図形1 から見た判定結果」と「図形2 から見た判定結果」の両方で「クリアランスを超えた交差」と判定された交差のみを、最終的に「クリアランスを超えた交差」と判定する。


【0 1 1 8 】
図56 ( A ) 、( C ) に示す図形1 及び図形2 の場合、図形1 から見た判定結果は図56 ( B ) に示すようになり、「クリアランスを超えた交差」と判定されるが、図形2 から見た判定結果は図56 ( D ) に示すようになり、「交差なし」と判定される。このため、最終的に「交差なし」と判定される。


【0 1 1 9 】
以上説明したように、本実施形態に係る図面情報の品質評価方法は、 図形1 と図形2 とからなる地理空間情報( 図面情報) をコンピュータからなる検査装置1 に入力し、検査装置1 において、品質評価検査を行って検査結果データを出力する地理空間情報( 図面情報) の品質評価方法であって、工程(a)〜 (c)

 (a)クリアランスを考慮せずに、図形1 と図形2 の交差判定を行い、交点P を求める

 (b)「図形1 の交点P 1 間の部分図形P D 」と「図形2 のクリアランス境界C B 」との交差判定を行う

 (c)工程(b)で「交差なし」と判定されたものについて、「図形1 の交点P 1 間の部分図形P D を拡張した拡張部分図形E P D 」と「図形2 のクリアランス境界C B 」との交差判定を行う 

を実行し、 工程(b)及び(c)は、それぞれ、工程(g-1)〜 (g-4)及び(g-5-a)又は(g-5-b)

 (g-1)工程(b)の場合、図形1 の交点P 1 から前( 始点P S T 寄り) の交点P 1 ( 前の交点P 1 が無い場合は始点P S T ) までの部分図形P D b と、図形1 の交点P 1 から次( 終点PE N 寄り) の交点P 1 ( 次の交点P 1 が無い場合は終点P E N ) までの部分図形P D a とを設定し、一方、工程(c)の場合、図形1 の交点P 1 から始点P S T までの拡張部分図形E P Db 、又は、図形1 の交点P 1 から終点P E N までの拡張部分図形E P D a を設定する

 (g-2)図形2 を構成する線分群のうち、図形1 の交点P 1 のある線分B L についてのクリアランス境界C B b を設定する

 (g-3)工程(b)の場合、部分図形P D b とクリアランス境界C B b との交差判定、及び、部分図形P D a とクリアランス境界C B b との交差判定を行い、一方、工程(c)の場合、拡張部分図形E P D b とクリアランス境界C B b との交差判定、又は、拡張部分図形E PD a とクリアランス境界C B b との交差判定を行う

 (g-4)「交差あり」か否かを判定する

 (g-5-a)「交差なし」の場合、「交差なし」と判定する

 (g-5-b)一方、「交差あり」の場合、所定の第1 条件が成立するか否かを判定し、 第1 条件が成立しない場合、「交差あり」と判定し、 一方、第1 条件が成立する場合、所定の第2 条件が成立するか否かを判定し、 第2 条件が成立しない場合、次の隣接線分N N L があるか否かを判定し、 次の隣接線分N N L がない場合、「交差あり」と判定し、一方、次の隣接線分N L L がある場合、次の隣接線分N N L で第1 条件が成立するか否かの判定に戻り、 一方、第2 条件が成立する場合、所定の第3 条件が成立するか否かを判定し、 第3 条件が成立しない場合、「交差あり」と判定し、 一方、第3 条件が成立する場合、隣接線分N L のクリアランス境界C B ( C B n ) を使用した交差判定を行う からなり、 第1 条件は、「図形A が判定円C 内を通過すること」、第2 条件は、「最初の交点P fが線分( 現在の線分) B L に隣接する隣接線分N L のクリアランス境界C B n 内にあること」、第3 条件は、「図形B が判定円C 内を通過すること」であり、「図形A 」とは、部分図形P D 又は拡張部分図形E P D の始点P s から、部分図形P D 又は拡張部分図形E PD とクリアランス境界C B との最初の交点P f までの図形をいい、「判定円C 」とは、隣接線分N L の線分B L 側の端点P e を中心とする半径クリアランスの円をいい、「図形B」とは、部分図形P D 又は拡張部分図形E P D において、図形A と隣接線分N L のクリアランス境界C B n との最後の交点P l から最初の交点P f までの図形をいう( 但し、最後の交点P l がない場合、図形B は図形A と同じになる。) 。


【0 1 2 0 】
そして、工程(b)の交差判定により表A が作成され、工程(c)の交差判定により表B が作成され、 表A 及び表B には、それぞれ、各交点P 1 が書き込まれ、各交点P 1 の上の行に、交点P 1 についての部分図形P D b 又は拡張部分図形E P D b とクリアランス境界C B との交差判定の判定結果が書き込まれ、各交点P 1 の下の行に、交点P 1 についての部分図形PD a 又は拡張部分図形E P D a とクリアランス境界C B との交差判定の判定結果が書き込まれる。


【0 1 2 1 】
そして、工程(a)〜 (c)の実行後、工程(d)〜 (f)

 (d)表A と表B とから表C を作成し、それぞれの交差が「クリアランスを超えた交差」かどうかを判定し、図形1 から見た判定結果を得る

 (e)図形1 と図形2 とを入れ換えて工程(b)〜 (d)を繰り返し、図形2 から見た判定結果を得る

 (f)「図形1 から見た判定結果」と「図形2 から見た判定結果」の両方で「クリアランスを超えた交差」と判定された交差のみを、最終的に「クリアランスを超えた交差」と判定する を実行する。


【0 1 2 2 】
本実施形態によると、下記の効果が奏される。


【0 1 2 3 】
本実施形態のように線分のクリアランス境界を使用して表A 及び表B を作成する代わりに、図57 ( A ) に示すように、図形のクリアランス境界を使用して表A 及び表B を作成する場合、表A 及び表B は図57 ( B ) に示すようになり、最終的に「交差なし」と判定されるが、図58 ( A ) に示すように、線分のクリアランス境界を使用して表A 及び表Bを作成する場合、表A 及び表B は図58 ( B ) に示すようになり、最終的に交点P A とP Bでそれぞれ「クリアランスを超えて交差する」と正しく判定されるようになる。


【0 1 2 4 】
また、図59 ( A ) に示す図形の場合、表A は図59 ( B ) に示すようになり、一方、図60 ( A ) に示す図形の場合、表A は図60 ( B ) に示すようになり、表A は互いに一致した内容となる。しかし、図59 ( B ) と図60 ( B ) の表B の内容は一致していないため、表B の内容を参照することにより正しい判定を行うことができるようになる。


【0 1 2 5 】
また、図61 ( A ) に示す図形の場合、表B は図61 ( B ) に示すようになり、一方、図62 ( A ) に示す図形の場合、表B は図62 ( B ) に示すようになり、表B は互いに一致した内容となる。しかし、図61 ( B ) と図62 ( B ) の表A の内容は一致していないため、表A の内容を参照することにより正しい判定を行うことができるようになる。


【0 1 2 6 】
また、本実施形態では、工程(d)において、

 1) 表A において、交点P 1 の下の行に「交差なし」が書き込まれており、かつ、表Bにおいて、交点P 1 の下の行と次の交点P 1 の下の行とに「同じ側で交差」( 「左側と交差」、「右側と交差」又は「端側と交差」) が書き込まれているとき、表B の内容を変更して表C に「交差なし」と書き込み、 表A において、交点P 1 の上の行に「交差なし」が書き込まれており、かつ、表B において、交点P 1 の上の行と前の交点P 1 の上の行とに「同じ側で交差」( 「左側と交差」、「右側と交差」又は「端側と交差」) が書き込まれているとき、表B の内容を変更して表C に「交差なし」と書き込み、

 2) 表A において、交点P 1 の上の行に「交差なし」が書き込まれており、かつ、表Bにおいて、交点P 1 の上の行と前の交点P 1 の上の行とに、「両側と交差」と「右側( 左側) と交差」の組合せが書き込まれているとき、「同じ側で交差」とみなし、また、 表A において、交点P 1 の下の行に「交差なし」が書き込まれており、かつ、表B において、交点P 1 の下の行と次の交点P 1 の下の行とに、「両側と交差」と「右側( 左側)と交差」の組合せが書き込まれているとき、「同じ側で交差」とみなし、

 3) 表B において、交点P 1 の下の行と次の交点P 1 の上の行のどちらか一方でも「交差なし」となっている場合、表B の内容を変更して表C に「交差なし」と書き込み、

 4) 表A において、交点P 1 の下の行と次の交点P 1 の上の行の片方だけ「交差なし」であり、かつ、表B において、前記交点P 1 の下の行と前記次の交点P 1 の上の行が「左側と交差」と「右側と交差」の組合せになっている場合、表B の内容を変更して表C に「交差なし」と書き込み、

 5) 表C において、交点P の上下の行が「左側と交差」、「右側と交差」の組合せのときに、その交点P で「クリアランスを超えて交差した」と判定し、それ以外の組合せのときは「交差なし」と判定する ようにしたため、複雑な図形や複雑に交差している場合でも、正しく判定することが可能になる。


【0 1 2 7 】
したがって、本実施形態によると、検査装置( コンピュータ) 上で「クリアランスを超えた交差」かどうかの判定が正しく行われるようになり、地理空間情報( 図面情報) の品質評価を自動で行い、クリアランスを考慮した全件検査が可能となる。