JP3845137B2 - 基準線周りのポリゴンレコード自動作成方法および基準線周りのポリゴンレコード自動作成装置 - Google Patents
基準線周りのポリゴンレコード自動作成方法および基準線周りのポリゴンレコード自動作成装置 Download PDFInfo
- Publication number
- JP3845137B2 JP3845137B2 JP35258795A JP35258795A JP3845137B2 JP 3845137 B2 JP3845137 B2 JP 3845137B2 JP 35258795 A JP35258795 A JP 35258795A JP 35258795 A JP35258795 A JP 35258795A JP 3845137 B2 JP3845137 B2 JP 3845137B2
- Authority
- JP
- Japan
- Prior art keywords
- polygon
- line
- data
- record
- reference line
- 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
Images
Landscapes
- Instructional Devices (AREA)
- Processing Or Creating Images (AREA)
Description
【産業上の利用分野】
【課題を解決するための手段】
本発明は、基準線周りのポリゴンレコード自動作成方法およびそのための装置に関し、特に隣同士の特徴点間の線単位からなる基準線ならびに当該基準線の線部分からの第1の距離(例えば図1のw)および当該基準線の端点(特徴点)からの第2の距離(例えば図1のk)の各入力データに基づいて、当該基準線を取り囲む形のポリゴンを施設管理図,地形図,設計図などの各種図面上に表示するためのポリゴンレコードを自動的に求め、さらには複数のポリゴンの一部が重なっているときにはその重なり部分のポリゴン構成線を除いた状態のポリゴンレコードを自動的に求めるものである。
【0002】
なお、本明細書では説明の便宜上、各種図面の一例として、ガス、水道、電気などの公益事業者が工事区域を示すときの対象図面である縮尺1/500の道路台帳図を用いている。
【0003】
一般に、道路台帳図などに例えば工事区域の範囲を明示しようとするときには、当該範囲の目安となる基準線を指示した後でこれを取り囲んだ形のポリゴンを作成しているが、この場合、見栄えがよいポリゴンを効率的に作成することが望ましく、本発明はこのような要請に応えるものである。
【0004】
【従来の技術】
図19は、道路台帳図における管路(ガス管や水道管など)や、基準線およびそれに基づくポリゴンなどの概要を示す説明図であり、21は道路境界線、22は道路に埋設されたガス管や水道管などの管路表示線、23は工事区域の範囲を明示するために指示された基準線、24はこの元線に基づいて作成されたポリゴン、25および26はポリゴン構成線をそれぞれ示し、またA点〜E点はポリゴン構成線25の特徴点、A′点〜E′点はポリゴン構成線26の特徴点をそれぞれ示している。
【0005】
図20は、一般的な、コンピュータを用いて道路台帳図などの上に例えば工事区域を明示するときに用いるハードウェアの概要を示す説明図であり、31はホストコンピュータ、32は地図デ−タ、ポリゴンデータや設備デ−タ(例えば管路についての公共企業者入力データ)などを格納する大容量のディスク外部記憶装置、33はアプリケーションプログラムの格納領域34やワ−ク領域35を持つ記憶装置、36は図面番号等などの各種デ−タを入力するための操作部、37は各種データの入力状態や作成図面の内容等を確認するための表示部、38はポリゴン構成線25、26の各特徴点などを入力するためのディジタイザ、39は手作業により元線およびポリゴン構成線が記入された道路台帳図(入力用下図)、40はメニュー、41はポインティグデバイス、42は作成図面等を出力するためのプロッタをそれぞれ示している。
【0006】
ここで、例えば工事区域を明示した道路台帳図などの図面を作成するには、基準線23に対応のポリゴン構成線25、26を入力用下図39に書き込んでからディジタイザ29に貼りつけた上で、当該ポリゴン構成線25、26の各特徴点(A点〜E点およびA′点〜E′点)をポインティグデバイス41のカーソル操作により入力している。
【0007】
ポリゴン構成線25、26を示すポリゴンデータは、その特徴点ごとの入力データを連結した形のベクトルデータとしてディスク外部記憶装置32に格納され、利用側からのプリント指示に基づいてプロッタ42はポリゴン構成線25、26を書き込んだ図面を出力する。
【0008】
【発明が解決しようとする課題】
このように、従来の、入力用下図に例えば工事区域を示すポリゴン構成線を書き込んでからその特徴点を入力することによりポリゴン記入済図面を自動作成する方式では、もともと手作業で書き込んだポリゴン構成線をデ−タ化の対象としているため、意図している形状のポリゴンを簡単な作業で見栄え良く自動作成することが難しいという問題点があった。
【0009】
そこで、本発明では、ポリゴン作成用の基準線を入力した上で、この基準線の両側に所定長だけ離れたポリゴン構成線を自動作成していくことにより、作成者側の作業負担を軽減しつつ、見栄えのよいポリゴン記入済図面を作成することを目的とする。
【0010】
【課題を解決するための手段】
図1は本発明の基本構成図である。
図において、
1は、基準線およびその対応ポリゴンを示す図であり、
・点線(a−b−c)は、線単位(a−b、b−c)が連続した基準線
・a〜cの各点は、基準線を特定している特徴点
・太線(A−B−C−C′−B′−A′−A)は、基準線に基づいて自動作成したポリゴン構成線
・A〜C′の各点は、ポリゴン構成線を特定している特徴点
・wは、基準線の線単位(a−b、b−c)からポリゴン構成線(平行線部分)までの距離
・kは、基準線の各端点からポリゴン構成線(A′ーA、CーC′の部分)までの距離
・L1 およびL1 ′は、線単位(a−b)からwだけ離れた平行線
・L2 およびL2 ′は、線単位(b−c)からwだけ離れた平行線
・Bは、L1 とL2 との交点
・B′は、L1 ′とL2 ′との交点
をそれぞれ示している。
2は、記憶手段であり、基準線とポリゴン構成線との間の距離を指定するw,kやポリゴンレコードなどを保持している。
3は、入力手段であり、基準線(a−b−c)の位置デ−タ、wの値、kの値などを入力(変更)するためのものである。
4は、ポリゴン作成手段であり、入力手段3で指示された基準線(a−b−c)を取り囲む形のポリゴン構成線(A−B−C−C′−B′−A′−A)を自動作成している。
【0011】
ここで、ポリゴン構成線の特徴点A,A′,C,C′(基準線の端点a,cの対応点)の特定用デ−タとしては、特徴点(交点)B,B′から特徴点A,A′,C,C′端点までの長さを用いてもよい。
【0012】
k,wの値や基準線の特徴点の位置データがポリゴン作成処理プログラム中であらかじめ記述されている場合には、これらの値を変更するときに入力手段3が用いられる。
【0013】
ポリゴン作成手段4における処理手順は次のようになっている。
▲1▼基準線の線単位(a−b),(b−c)それぞれの両側にwだけ離れた平行線L1 ,L1 ′,L2 ,L2 ′を設定するとともに、L1 とL2 との交点BおよびL1 ′とL2 ′との交点B′を算出する。
▲2▼kの値などを用いて、L1 およびL1 ′上に、基準線の特徴点aに対応の端点AおよびA′を設定し、またL2 およびL2 ′上に、基準線の特徴点cに対応の端点CおよびC′を設定する。
▲3▼ポリゴン構成線(A−B−C−C′−B′−A′−A)を示すポリゴンレコードを形成する。
【0014】
本発明は、このように、例えば工事区域などを示すポリゴンを図面上に記入するに際し、担当者は当該ポリゴンの基準線の位置データおよび上記w,kの各距離データを入力するだけでよく、ポリゴン構成線はこの入力データに基づいて自動作成されるようにしたものである。
【0015】
図2(a) は、図1に対応の基準線レコードを示す説明図であり、a,b,cの各特徴点の三つの位置デ−タがこの並び順で入力されている。
なお、デ−タ番号1の領域の3番目の要素に入っている「1」は基準線の始点を示すフラグであり、また「2」は基準線の終点を示すフラグである。
【0016】
図2(b) は、図1に対応のポリゴンレコードを示す説明図であり、ポリゴン構成線のA,B,C,C′,B′,A′,Aの各特徴点の七つの位置データがこの並び順で設定されている。
【0017】
なお、ポリゴンレコードにおける各位置データの連結順序はポリゴン構成線上での時計方向または半時計方向のいずれかに設定されており、図示の場合は時計方向である。
【0018】
なお、ポリゴンレコードのヘッダ領域には表示属性情報が設定されており、利用者は自動作成したポリゴンをどのような形で表示するか、例えば、
・ポリゴン内部を特定の色で塗る
・ポリゴン内部に斜線を入れる
などの表示形態を、入力手段3から指示することができる。
【0019】
図3は、複数のポリゴンが重なったときの統合ポリゴンの概念を示すもので、11は第1の基準線(a−b−c)、12は第2の基準線(d−e)、13は特徴点B1らの半直線、14は特徴点B′からの半直線をそれぞれ示している。
【0020】
この場合、基準線11に対応のポリゴン構成線(A−B−C−C′−B′−A′−A)と基準線12に対応のポリゴン構成線(D−E−E′−D′−D)とを個々に求めてから、これらの内で他のポリゴンに入り込んでいる線部分を除いた形の統合ポリゴン構成線(A−B−F−E−E′−G−C−C′−H−D′−A′−D−Aからなる太線部分)を作成している。
【0021】
なお、点Fは線部分BCとDEとの交点、点Gは線部分BCとD′E′との交点、点Hは線部分B′C′とD′E′との交点であり、また、特徴点Dは線部分AA′とDEとの交点、特徴点A′は線部分A′B′とDD′との交点にもなっいる。
【0022】
この統合ポリゴン構成線(太線部分)を作成する際には、
・ポリゴン構成線それぞれの各特徴点の中で他のポリゴンの内部に位置しているもの(図示の場合は特徴点B′)を求め、
・異なるポリゴン構成線の線部分同士の交点(図示の場合はA′,D,F,GおよびHの各点)を求め、
・一方のポリゴン構成線の任意の外点(または交点)、例えばAからその線上の各特徴点B,C・・を並び順にしたがって追っていき、その途中に交点Fがある場合には他のポリゴン構成線の対応交点Fからその線上の各特徴点E,E′・・を並び順にしたがって追っていくといったことを開始点Aまで繰り返すことになる。(具体的な処理手順は図12および図13を参照)。
【0023】
なお、ポリゴン構成線の各特徴点が前記内点であるかどうかの判定は、その特徴点から任意の方向に半直線13、14・・・を引いてそれと他のポリゴン構成線との交点の個数を求めることより行なわれ、
・当該個数が0または偶数のとき(Bの場合)は他のポリゴンの外点となり、
・当該個数が奇数のとき(B′の場合)は他のポリゴンの内点となる。
【0024】
本発明はこのように任意の複数個数のポリゴンを統合する場合に適用できるものであるが、本明細書では、説明の便宜上、2個のポリゴンを統合する場合を例にとって説明する。また、以下の説明では必要に応じて、基準線11に対応のポリゴンレコードおよびポリゴン構成線を第1の・・・と記載し、基準線12に対応のポリゴンレコードおよびポリゴン構成線を第2の・・・と記載する。
【0025】
本発明の基準線周りのポリゴンレコード自動作成方法およびそのための装置としての基本的構成は、
(1)隣同士の特徴点間の線単位からなる基準線、当該基準線とその両側にこれと平行な態様で作成される第1のポリゴン構成線との間の第1の距離および、当該基準線の端点である特徴点とこれの外側に当該特徴点の当該線単位に対応した当該第1のポリゴン構成線同士を連結する態様で作成される第2のポリゴン構成線との間の第2の距離、の各ポリゴン作成用データが入力手段から入力されて記憶手段に保持され、ポリゴン作成手段が、当該記憶手段の当該各ポリゴン作成用データに基づいて、当該基準線から当該第1の距離相当分および当該第2の距離相当分だけともに離間した態様で当該基準線を取り囲む形のポリゴンレコードを自動生成するに際し、
前記ポリゴン作成手段が、
前記基準線の特徴点データおよび前記第1の距離データを用いることにより、前記線単位の各々の両側に前記第1のポリゴン構成線の基となる平行線を求め、
前記平行線を示すデータを用いることにより、前記基準線の端点を除いた前記特徴点のそれぞれにつながっている前記線単位に対応する当該平行線同士の第1の交点を求め、
前記基準線の特徴点データ,前記平行線を示すデータおよび前記第2の距離データを用いることにより、前記端点としての前記特徴点に対する一対の前記平行線上の、当該特徴点からこれに垂線を下ろしたときの第2の交点部分よりも前記第2の距離相当分だけ前記外側の方向に離間した位置に、前記第2のポリゴン構成線との連結部となる特徴端点を設定し、
前記第1の交点を示すデータおよび前記特徴端点を示すデータを用いることにより、前記第1の交点および前記特徴端点を前記基準線上の前記特徴点の並び順にしたがって位置データの形で連結した前記ポリゴンレコードを生成する、
(2)上記(1)において、
前記ポリゴン作成手段が、
前記生成後の複数のポリゴンレコードの前記位置データを用いることにより、
前記位置データで特定されるポリゴン特徴点のそれぞれが前記ポリゴンレコードに基づく他のポリゴンの内側に位置しているかどうかを調べてその内外フラグを当該位置データに追加し、
任意の前記ポリゴンレコードに基づく隣同士の前記ポリゴン特徴点間の線部分ごとにそれが他の前記ポリゴンレコードに基づく同様の線部分のそれぞれと交差しているかどうかを調べ、交差している場合には、その交点の位置データ及び交差フラグからなる新データを前記ポリゴンレコードの各対応部分に追加し、
これらの追加処理後のポリゴンレコードそれぞれのデータ群に対し、任意の当該ポリゴンレコードの内側フラグがたっていない部分の位置データを順番に連結していき、その途中で交差フラグがたっている場合には他の当該ポリゴンレコードの対応部分から同様の処理を実行することを繰り返して前記複数のポリゴンレコードの統合ポリゴンレコードを生成する、
ことである。
【0026】
【発明の実施の形態】
図4〜図18を参照して本発明の実施の形態を説明する。なお、本発明をサポートするハードウェアは図20と同様のものである。
図4および図5は、ポリゴンレコード生成のための処理手順を示す説明図でありその内容は次のようになっている。
【0027】
(11)以下の変数や定数を設定して、次のステップに進む。
・基準線とポリゴン構成線との間隔を示すk、w(図1参照)
・基準線レコードのデータ番号を示す変数i
・基準線上の特徴点の総数N
・ポリゴンレコード中の位置データを示す(X,Y)
(12)「1→i」として、次のステップに進む。
(13)「i<N」であるかどうかを判断し、「YES 」の場合は次のステップに進み、「NO」の場合はステップ(23)に進む。
(14)基準線レコードのデータ番号iの特徴点およびデータ番号(i+1)の特徴点の位置データをワーク領域35から呼び出して、次のステップに進む。
(15)これらの位置データに基づいて、iの特徴点から(i+1)の特徴点に向かう線単位を表す式を算出し、次のステップに進む。
(16)当該線単位の両側にwだけ離れた形で設定される平行線fL ( x,y ) =0およびfR ( x,y ) =0を算出して、次のステップに進む。なお、fL ( x,y ) =0は線単位の左側の平行線を示し、fR ( x,y ) =0は線単位の右側の平行線を示している。
(17)「i=1」であるかどうかを判断し、「YES 」の場合は次のステップに進み、「NO」の場合はステップ(21)に進む。
(18)基準線レコードのデータ番号1の特徴点よりfL ( x,y ) =0の平行線に垂線を下したときの交点からステップ(15)の前記線単位とは逆方向にkだけ離れた当該平行線上の点を算出し、この算出値を( X1,Y1 )に保持して、次のステップに進む。
(19)基準線レコードのデータ番号1の特徴点よりfR ( x,y ) =0の平行線に垂線を下したときの交点からステップ(15)の前記線単位とは逆方向にkだけ離れた当該平行線上の点を算出し、この算出値を (X2N, Y2N)に保持して、次のステップに進む。
(20)以下の処理を実行して、ステップ(13)に戻る。
・「i+1」→i
・「fL ( x,y ) = 0」→「fL ′( x,y ) =0」
・「fR ( x,y ) = 0」→「fR ′( x,y ) =0」
(21)fL ( x,y ) =0およびfL ′( x,y ) =0の解を(Xi,Yi )として保持して、次のステップに進む。
(22)fR ( x,y ) =0およびfR ′( x,y ) =0との解を(Xm,Ym )として保持して、次のステップに進む。なお、「m=2N+1−i」である。
(23)基準線レコードのデータ番号Nの特徴点の位置データをワーク領域35から呼び出して次のステップに進む。
(24)基準線レコードのデータ番号Nの特徴点よりfL ′( x,y ) =0の平行線に垂線を下したときの交点からステップ(15)の前記線単位の方向にkだけ離れた当該平行線上の点を算出し、この算出値を( XN,YN )に保持して、次のステップに進む。
(25)基準線レコードのデータ番号Nの特徴点よりfR ′( x,y ) =0の平行線に垂線を下したときの交点からステップ(15)の前記線単位の方向にkだけ離れた当該平行線上の点を算出し、この算出値を (XN+1,YN +1)に保持して、次のステップに進む。
(26) (X2N+1, Y2N+1)として(X1,Y1 )を保持して、ポリゴンレコード生成の一連の処理を終了する。
【0028】
なお、以上の処理におけるfL ( x,y ) = 0およびfR ( x,y ) = 0の算出法や、ステップ(21)および(22)での計算対象となる平行線同士の傾きの差が少なくてその解が求まらないときの処理などは特開平7−200860号公報で開示している。
【0029】
図6は、統合ポリゴンレコード生成の処理手順(概要)を示す説明図でありその内容は次のようになっている。
(31)統合対象のポリゴンレコードをワーク領域から呼び出す。
(32)ポリゴンレコードのデータにより特定されるポリゴン特徴点のそれぞれが当該ポリゴンレコードに基づく他のポリゴンの内側に位置しているかどうかを調べてその対応フラグ(IN,OUT)を当該データに追加する。
(33)任意のポリゴンレコードに基づく隣同士の前ポリゴン特徴点間の線部分ごとにそれが他のポリゴンレコードに基づく当該線部分のそれぞれと交差しているかどうかを調べ、交差している場合には、その交点の位置データ及び交差フラグからなる新データをポリゴンレコードの各対応部分に追加する。
(34)追加処理後のポリゴンレコードそれぞれのデータ群に対し、任意の当該ポリゴンレコードの、内側の対応フラグが立っていないデータから順番に保持していき、この保持データに交差フラグが立っている場合には他の当該ポリゴンレコードの対応部分から同様の処理を行なうといったことを繰り返すことによって、統合ポリゴンレコードを生成する。
【0030】
図7〜図9は、図6のステップ(32)で用いられる内外対応フラグ追加用ルーチンを示す説明図でありその内容は次のようになっている。
(41)以下の変数や定数を設定して、次のステップに進む。
・第1のポリゴンレコードのデータ数 (特徴点数+1)を示すP
・第1のポリゴンレコードのデータ番号を示す変数j
・第2のポリゴンレコードのデータ数(特徴点数+1)を示すT
・第2のポリゴンレコードのデータ番号を示す変数t
・交点の総数を示す変数g
(42)「1→j」として、次のステップに進む。
(43)「j<P」であるかどうかを判断し、「YES 」の場合は次のステップに進み、「NO」の場合はステップ(54)に進む。ここで、「NO」となるのは、第1のポリゴンレコードの各データへの対応フラグ(IN,OUT)の設定が終了したときである。
(44)以下の処理を実行して、次のステップに進む。
・「0→g」
・「1→t」
(45)第1のポリゴンレコードのデータ番号jの特徴点から始まる半直線を設定して(図3参照)、次のステップに進む。
(46)「t<T」であるかどうかを判断し、「YES 」の場合は次のステップに進み、「NO」の場合はステップ(55)に進む。ここで、「NO」となるのは、前のステップで設定した半直線と第2のポリゴンレコードに対応のポリゴン構成線の線部分すべてとの交差の有無についての算出が終了したときである。
(47)当該半直線が、第2のポリゴンレコードのデータ番号kの特徴点およびデータ番号(k+1)の特徴点間を結ぶ線分と交差するかどうかを判断し、「YES 」の場合は次のステップに進み、「NO」の場合はステップ(49)に進む。
(48)「g+1→g」として、次のステップに進む。
(49)「t+1→t」として、ステップ(46)に戻る。
(50)gの値は「0」または偶数であるかどうかを判断し、「YES 」の場合は次のステップに進み、「NO」の場合はステップ(52)に進む。
(51)第1のポリゴンレコードのデータ番号jのデータに外点フラグ(OUT)を追加して、ステップ(53)に進む。
(52)第1のポリゴンレコードのデータ番号jのデータに内点フラグ(IN)を追加して次のステップに進む。
(53)「j+1→j」として、ステップ(43)に戻る。
【0031】
以上の処理で第1のポリゴンレコードの各データ部分に対応フラグが設定されることになり、これに続いて第2のポリゴンレコードの各データ部分への対応フラグの設定処理に移行する。
【0032】
(54)「1→t」として、次のステップに進む。
(55)「t<T」であるかどうかを判断し、「YES 」の場合は次のステップに進み、「NO」の場合は一連の処理を終了する。
(56)以下の処理を実行して、次のステップに進む。
・「0→g」
・「1→t」
(57)第2のポリゴンデータのデータ番号tの特徴点から始まる半直線を設定して、次のステップに進む。
(58)「j<P」であるかどうかを判断し、「YES 」の場合は次のステップに進み、「NO」の場合はステップ(62)に進む。
(59)当該半直線が、第1のポリゴンレコードのデータ番号jの特徴点およびデータ番号(j+1)の特徴点間を結ぶ線分と交差するかどうかを判断し、「YES 」の場合は次のステップに進み、「NO」の場合はステップ(61)に進む。
(60)「g+1→g」として、次のステップに進む。
(61)「j+1→j」として、ステップ(58)に戻る。
(62)gの値は「0」または偶数であるかどうかを判断し、「YES 」の場合は次のステップに進み、「NO」の場合はステップ(64)に進む。
(63)第2のポリゴンレコードのデータ番号tのデータに外点フラグ(OUT)を追加してステップ(65)に進む。
(64)第2のポリゴンレコードのデータ番号tのデータに内点フラグ(IN)を追加して次のステップに進む。
(65)「t+1→t」として、ステップ(55)に戻る。
【0033】
なお、ステップ(47)および(59)の判断において、半直線の始点が他方のポリゴン構成線の判定対象の線部分と重なっているような場合、例えば図3の始点Dが線部分D′Dの上に位置している場合は交差しないものとし、当該始点のデータ部分には「IN」の対応フラグを立てている。
【0034】
図10および図11は、図6のステップ(33)で用いられる新データ追加用ルーチンを示す説明図でありその内容は次のようになっている。
(71)以下の変数や定数を設定して、次のステップに進む。
・第1のポリゴンレコードのデータ数 (特徴点数+1)を示すP
・第1のポリゴンレコードのデータ番号を示す変数j
・第2のポリゴンレコードのデータ数(特徴点数+1)を示すT
・第2のポリゴンレコードのデータ番号を示す変数t
(72)「1→j」として、次のステップに進む。
(73)「j<P」であるかどうかを判断し、「YES 」の場合は次のステップに進み、「NO」の場合はステップ(88)に進む。
(74)第1のポリゴンレコードのデータ番号jの特徴点と、データ番号(j+1)の特徴点とを結ぶ線部分Lを表す式を求め、次のステップに進む。
(75)「1→t」として、次のステップに進む。
(76)「t<T」であるかどうかを判断し、「YES 」の場合は次のステップに進み、「NO」の場合はステップ(87)に進む。
(77)第2のポリゴンレコードのデータ番号tの特徴点と、データ番号(t+1)の特徴点とを結ぶ線部分L′を表す式を求め、次のステップに進む。
(78)線部分のLとL′は交差しているかどうかを判断し、「YES 」の場合は次のステップに進み、「NO」の場合はステップ(86)に進む。
(79)線部分のLとL′との交点を求めて、次のステップに進む。
(80)当該交点の位置データおよび交点フラグ(CROSS)からなる新データを、第1のポリゴンレコードのデータ番号jとデータ番号(j+1)との間にデータ番号なし(NULL)の状態でリンクして、次のステップに進む。
(81)当該データ番号の間にリンクされている新データは複数であるかどうかを判断し、「YES 」の場合は次のステップに進み、「NO」の場合はステップ(86)に進む。ここで、「YES 」となるのは、例えば図3の線部分BCのデータ部分に交点Fおよび交点Gの新データがリンクされた場合である。
(82)当該新データのそれぞれを、対応する交点とデータ番号jの特徴点との距離が短い順に再リンクして、次のステップに進む。
(83)当該交点の位置データおよび交点フラグ(CROSS)からなる新データを、第2のポリゴンレコードのデータ番号tとデータ番号(t+1)との間にデータ番号なし(NULL)の状態でリンクして、次のステップに進む。
(84)当該データ番号の間にリンクされている新データは複数であるかどうかを判断し、「YES 」の場合は次のステップに進み、「NO」の場合はステップ(86)に進む。
(85)当該新データのそれぞれを、対応する交点とデータ番号tの特徴点との距離が短い順に再リンクして、次のステップに進む。
(86)「t+1→t」として、ステップ(76)に戻る。
(87)「j+1→j」として、ステップ(73)に戻る。
(88)第1および第2のポリゴンレコードそれぞれの、各データのデータ番号をその並び順にしたがって再付与するとともに、データ数を更新して一連の処理を終了する。
【0035】
以上の新データ追加用ルーチンにおいては、第1のポリゴン構成線の線部分ごとにそれが第2のポリゴン構成線の線部分のそれぞれと交差するかどうかを調べ、交差するときにはその新データを第1のポリゴンレコードの対応部分にリンクする〔ステップ(80)参照〕とともに、この新データを第2のポリゴンレコードの対応部分にリンクしている〔ステップ(83)参照〕。
【0036】
ステップ(78)の「交差するかどうか」の判断に際してはその対象となる線部分の端点での重なりを含める、すなわち図3の線部分A′Aは線部分DEと点(特徴点)Dで交差するものとしている。
【0037】
この交点Dの新データを第1のポリゴンレコードの線部分A′Aのデータ部分に追加するのは当然であるが、第2のポリゴンレコードの線部分DEのデータ部分については新データを追加する形はとらずに特徴点Dに交差フラグ「CROSS」を立てるようにしている。なお、特徴点Dにすでに設定されている外点フラグ「OUT」を併存させるかどうかは任意である。
【0038】
図12および図13は、図6のステップ(34)で用いられるポリゴン統合用ルーチンを示す説明図でありその内容は次のようになっている。
(91)以下の変数や定数を設定して、次のステップに進む。
・ステップ(88)実行後の、第1のポリゴンレコードのデータ数V(図14参照)
・第1のポリゴンレコードのデータ番号を示す変数m
・ステップ(88)実行後の、第2のポリゴンレコードのデータ数W(図15参照)
・第2のポリゴンレコードのデータ番号を示す変数n
・統合ポリゴンレコードのデータ番号を示す変数p
・統合ポリゴンレコードの位置データZ
(92)以下の処理を実行して、次のステップに進む。
・「1→m」
・「1→p」として、次のステップに進む。
(93)「m<V」であるかどうかを判断し、「YES 」の場合は次のステップに進み、「NO」の場合は一連の処理を終了する。
(94)第1のポリゴンレコードのデータ番号mの位置データをZ(p) として、次のステップに進む。
(95)「p+1→p」として、次のステップに進む。
(96)第1のポリゴンレコードのデータ番号mのフラグに「CROSS」が立っているかどうかを判断し、「YES 」の場合はステップ(98)に進み、「NO」の場合は次のステップに進む。
(97)「m+1→m」として、ステップ(93)に戻る。
(98)第2のポリゴンレコードの中からステップ(94)の位置データと合致するデータを探し、その次のデータ番号をnとして、次のステップに進む。
(99)「n<W」であるかどうかを判断し、「YES 」の場合は次のステップに進み、「NO」の場合はステップ(97)に戻る。
(100) 第2のポリゴンレコードのデータ番号nのフラグに「IN」が立っているかどうかを判断し、「YES 」の場合はステップ(97)に戻り、「NO」の場合は次のステップに進む。
(101) 第2のポリゴンレコードのデータ番号nの位置データをZ(p) として、次のステップに進む。
(102) 「p+1→p」として、次のステップに進む。
(103) 第2のポリゴンレコードのデータ番号nのフラグに「CROSS」が立っているかどうかを判断し、「YES 」の場合はステップ(105) に進み、「NO」の場合は次のステップに進む。
(104) 「n+1→n」として、ステップ(101) に戻る。
(105) 第1のポリゴンレコードの中から当該データ番号nの位置データと合致するデータを探し、そのデータ番号をmとして、ステップ(97)に戻る。
【0039】
ステップ(99)は、第2のポリゴン構成線のデータ番号nのデータが存在しない場合に対処するためであり、例えば図3における統合ポリゴン(位置データ)の連結をA−B−・・・・・・H−D′−Dと行ない、続いて第1のポリゴン構成線の交点Dからこれに対応の第2のポリゴン構成線の特徴点Dを探してステップ(98)のデータ番号nを求めたときにはこのステップ(99)の判断が「NO」となって第1のポリゴン構成線に対する処理が継続され、次の特徴点(始点)Aの位置データが統合ポリゴンに連結されることになる。(図14〜図16参照)。
【0040】
以上のポリゴン統合用ルーチンにおいては、第1のポリゴンレコードのデータ番号1の対応点(特徴点または交点)からデータ番号順にその位置データを順に連結し、交差フラグ「CROSS」が立っているデータのとき〔ステップ(96)参照〕には第2のポリゴンレコードの対応データからデータ番号順にその位置データを順に連結している。
【0041】
そして、第1のポリゴンレコード中の交差フラグによって第2のポリゴンレコードに対応のいわば外側線部分へと移行した統合ポリゴン構成線は必ず第1のポリゴン構成線と交差し、その後は再び第1のポリゴンレコードに対応の外側線部分に戻るといったことを、第1のポリゴンレコードのデータ番号1の対応点に行き着くまで繰り返している。
【0042】
なお、このポリゴン統合処理の場合、第1のポリゴンレコードのデータ番号1のデータ部分に「IN」のフラグが立っていない、すなわちこの対応点が他のポリゴンの内部に位置していないことが前提となっている。
【0043】
したがって、ポリゴン作成手段4は、最初に選択した第1のポリゴンレコードがこの条件を満たしていないと判断したとき、
・第1のポリゴンレコードの再選択
・最初に選択した第1のポリゴンレコードのデータ番号1のデータ部分の変更
などの処理を実行する。
【0044】
図14および図15は、図3の第1のポリゴンレコードの変化の様子を示す説明図であり、
・図7〜図9の処理によって特徴点Bのデータ部分に「OUT」のフラグが、また他の各特徴点のデータ部分には「IN」のフラグがそれぞれ立ち、
・図10〜図11の処理によってF,G,Hの3個の交点の対応データがそれぞれ追加され、特徴点かつ交点のA′のデータ部分に交差フラグが立ち、
・図10のステップ(88)の実行によってデータ数を更新し、交点F,Gの対応データの連結順を逆にしている
などの特徴がみられる。
【0045】
図16および図17は、図3の第2のポリゴンレコードの変化の様子を示す説明図であり、
・図7〜図9の処理によって特徴点すべてのデータ部分に「OUT」のフラグが立ち、
・図10〜図11の処理によってF,G,H,A′の4個の交点の対応データがそれぞれ追加され、特徴点かつ交点のDのデータ部分に交差フラグが立ち、
・図10のステップ(88)の実行によってデータ数を更新し、交点G,Hの対応データの連結順を逆にしている
などの特徴がみられる。
【0046】
図18は、図3の統合ポリゴンレコードを示す説明図であり、
当該統合ポリゴンレコードは、
・第1のポリゴンレコードのデータ番号1〜3、5〜7、10および11の各位置データ(8個)
・第2のポリゴンレコードのデータ番号3〜5、7および8の各位置データ(5個)
の計13個の位置データからなっている。
【0047】
以上の説明ではポリゴンレコードとしてその生成時点のデータ数が5個や7個といったものを便宜的に用いているが、実際の施設管理図、地形図、設計図などの各種図面の中で表示するときのポリゴンレコードのデータ数は例えば 500個〜 600個である。
【0048】
また、統合ポリゴンレコードのヘッダ部分にポリゴン内部の表示属性情報を付加して用いることができるのは勿論のことであり、統合対象ポリゴンのそれぞれが指定する表示属性情報が異なる場合には所定の優先順位にしたがって処理することになる。
【0049】
本発明は、このように、各種図面上における基準線および上記w,kの距離データを指示すれば、この基準線を取り囲む形のポリゴンレコードを自動生成し、また、複数のポリゴンレコードに対応の各ポリゴン構成線の中で他のポリゴン内部に入り込んでいる部分を除いた形の統合ポリゴンレコードを自動生成し、さらにはポリゴン内部の表示態様をポリゴンレコードや統合ポリゴンレコードで指示するようにしているため、作成者側の作業負担を軽減しつつ、見栄えのよいポリゴン記入済図面を作成することができる。
【図面の簡単な説明】
【図1】本発明の、基本構成図である。
【図2】図1の、基準線レコードおよびポリゴンレコードを示す説明図である。
【図3】本発明の、複数のポリゴンが重なったときの統合ポリゴンの概念を示す説明図である。
【図4】本発明の、ポリゴンレコード生成のための処理手順を示す説明図(その1)である。
【図5】本発明の、ポリゴンレコード生成のための処理手順を示す説明図(その2)である。
【図6】本発明の、統合ポリゴンレコード生成のための処理手順(概要)を示す説明図である。
【図7】図6の、ステップ(32)で用いられる内外対応フラグ追加用ルーチンを示す説明図(その1)である。
【図8】図6の、ステップ(32)で用いられる内外対応フラグ追加用ルーチンを示す説明図(その2)である。
【図9】図6の、ステップ(32)で用いられる内外対応フラグ追加用ルーチンを示す説明図(その3)である。
【図10】図6の、ステップ(33)で用いられる新データ追加用ルーチンを示す説明図(その1)である。
【図11】図6の、ステップ(33)で用いられる新データ追加用ルーチンを示す説明図(その2)である。
【図12】図6の、ステップ(34)で用いられるポリゴン統合用ルーチンを示す説明図(その1)である。
【図13】図6の、ステップ(34)で用いられるポリゴン統合用ルーチンを示す説明図(その2)である。
【図14】図3の、第1のポリゴンレコードの変化を示す説明図(その1)である。
【図15】図3の、第1のポリゴンレコードの変化を示す説明図(その2)である。
【図16】図3の、第2のポリゴンレコードの変化を示す説明図(その1)である。
【図17】図3の、第2のポリゴンレコードの変化を示す説明図(その2)である。
【図18】図3の、統合ポリゴンレコードを示す説明図である。
【図19】一般的な、道路台帳図における管路(ガス管や水道管など)や、基準線およびそれに基づくポリゴンなどの概要を示す説明図である。
【図20】一般的な、コンピュータを用いて道路台帳図などの上に例えば工事区域を明示するときに用いるハードウェアの概要を示す説明図である。
【符号の説明】
図1において、
1・・・基準線および対応ポリゴンを示す図
2・・・記憶手段
3・・・入力手段
4・・・ポリゴン作成手段
w・・・基準線(a−b−c)とポリゴン構成線(A−B−C−C′−B′−A′−A)との距離
k・・・基準線の端点a,cとポリゴン構成線の線部分A′A,CC′との距離
Claims (8)
- 隣同士の特徴点間の線単位からなる基準線、当該基準線とその両側にこれと平行な態様で作成される第1のポリゴン構成線との間の第1の距離および、当該基準線の端点である特徴点とこれの外側に当該特徴点の当該線単位に対応した当該第1のポリゴン構成線同士を連結する態様で作成される第2のポリゴン構成線との間の第2の距離、の各ポリゴン作成用データが入力手段から入力されて記憶手段に保持され、ポリゴン作成手段が、当該記憶手段の当該各ポリゴン作成用データに基づいて、当該基準線から当該第1の距離相当分および当該第2の距離相当分だけともに離間した態様で当該基準線を取り囲む形のポリゴンレコードを生成するポリゴンレコード自動作成方法であって、
前記ポリゴン作成手段は、
前記基準線の特徴点データおよび前記第1の距離データを用いることにより、前記線単位の各々の両側に前記第1のポリゴン構成線の基となる平行線を求め、
前記平行線を示すデータを用いることにより、前記基準線の端点を除いた前記特徴点のそれぞれにつながっている前記線単位に対応する当該平行線同士の第1の交点を求め、
前記基準線の特徴点データ,前記平行線を示すデータおよび前記第2の距離データを用いることにより、前記端点としての前記特徴点に対する一対の前記平行線上の、当該特徴点からこれに垂線を下ろしたときの第2の交点部分よりも前記第2の距離相当分だけ前記外側の方向に離間した位置に、前記第2のポリゴン構成線との連結部となる特徴端点を設定し、
前記第1の交点を示すデータおよび前記特徴端点を示すデータを用いることにより、前記第1の交点および前記特徴端点を前記基準線上の前記特徴点の並び順にしたがって位置データの形で連結した前記ポリゴンレコードを生成する、
ことを特徴とする基準線周りのポリゴンレコード自動作成方法。 - 前記ポリゴン作成手段は、
前記生成後の複数のポリゴンレコードの前記位置データを用いることにより、
前記位置データで特定されるポリゴン特徴点のそれぞれが前記ポリゴンレコードに基づく他のポリゴンの内側に位置しているかどうかを調べてその内外フラグを当該位置データに追加し、
任意の前記ポリゴンレコードに基づく隣同士の前記ポリゴン特徴点間の線部分ごとにそれが他の前記ポリゴンレコードに基づく同様の線部分のそれぞれと交差しているかどうかを調べ、交差している場合には、その交点の位置データ及び交差フラグからなる新データを前記ポリゴンレコードの各対応部分に追加し、
これらの追加処理後のポリゴンレコードそれぞれのデータ群に対し、任意の当該ポリゴンレコードの内側フラグがたっていない部分の位置データを順番に連結していき、その途中で交差フラグがたっている場合には他の当該ポリゴンレコードの対応部分から同様の処理を実行することを繰り返して前記複数のポリゴンレコードの統合ポリゴンレコードを生成する、
ことを特徴とする請求項1記載の基準線周りのポリゴンレコード自動作成方法。 - 前記ポリゴンレコードは、それに対応するポリゴン内部の表示属性情報を付加したものである、
ことを特徴とする請求項1記載の基準線周りのポリゴンレコード自動作成方法。 - 前記統合ポリゴンレコードは、それに対応するポリゴン内部の表示属性情報を付加したものである、
ことを特徴とする請求項2記載の基準線周りのポリゴンレコード自動作成方法。 - 隣同士の特徴点間の線単位からなる基準線、当該基準線とその両側にこれと平行な態様で作成される第1のポリゴン構成線との間の第1の距離および、当該基準線の端点である特徴点とこれの外側に当該特徴点の当該線単位に対応した当該第1のポリゴン構成線を連結する態様で作成される第2のポリゴン構成線との間の第2の距離、の各ポリゴン作成用データを入力するための入力手段と、
入力された前記各ポリゴン作成用データを保持する記憶手段と、
前記基準線から前記第1の距離相当分および前記第2の距離相当分だけともに離間した態様で当該基準線を取り囲む形のポリゴンレコードを、前記記憶手段の前記各ポリゴン作成用データに基づいて生成するポリゴン作成手段と、を備えたポリゴンレコード自動作成装置であって、
前記ポリゴン作成手段は、
前記基準線の特徴点データおよび前記第1の距離データを用いることにより、前記線単位の各々の両側に前記第1のポリゴン構成線の基となる平行線を求め、
前記平行線を示すデータを用いることにより、前記基準線の端点を除いた前記特徴点のそれぞれにつながっている前記線単位に対応する当該平行線同士の第1の交点を求め、
前記基準線の特徴点データ,前記平行線を示すデータおよび前記第2の距離データを用いることにより、前記端点としての前記特徴点に対する一対の前記平行線上の、当該特徴点からこれに垂線を下ろしたときの第2の交点部分よりも前記第2の距離相当分だけ前記外側の方向に離間した位置に、前記第2のポリゴン構成線との連結部となる特徴端点を設定し、
前記第1の交点を示すデータおよび前記特徴端点を示すデータを用いることにより、前記第1の交点および前記特徴端点を前記基準線上の前記特徴点の並び順にしたがって位置データの形で連結した前記ポリゴンレコードを生成する、
ことを特徴とする基準線周りのポリゴンレコード自動作成装置。 - 前記ポリゴン作成手段は、
前記生成後の複数のポリゴンレコードの前記位置データを用いることにより、
前記位置データで特定されるポリゴン特徴点のそれぞれが前記ポリゴンレコードに基づく他のポリゴンの内側に位置しているかどうかを調べてその内外フラグを当該位置データに追加し、
任意の前記ポリゴンレコードに基づく隣同士の前記ポリゴン特徴点間の線部分ごとにそれが他の前記ポリゴンレコードに基づく同様の線部分のそれぞれと交差しているかどうかを調べ、交差している場合には、その交点の位置データ及び交差フラグからなる新データを前記ポリゴンレコードの各対応部分に追加し、
これらの追加処理後のポリゴンレコードそれぞれのデータ群に対し、任意の当該ポリゴンレコードの内側フラグがたっていない部分の位置データを順番に連結していき、その途中で交差フラグがたっている場合には他の当該ポリゴンレコードの対応部分から同様の処理を実行することを繰り返して前記複数のポリゴンレコードの統合ポリゴンレコードを生成する、
ことを特徴とする請求項5記載の基準線周りのポリゴンレコード自動作成装置。 - 前記ポリゴン作成手段は、
前記ポリゴンレコードに、それの対応するポリゴン内部の表示属性情報を付加する機能を有している、
ことを特徴とする請求項5記載の基準線周りのポリゴンレコード自動作成装置。 - 前記ポリゴン作成手段は、
前記統合ポリゴンレコードに、それの対応するポリゴン内部の表示属性情報を付加する機能を有している、
ことを特徴とする請求項6記載の基準線周りのポリゴンレコード自動作成装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP35258795A JP3845137B2 (ja) | 1995-12-28 | 1995-12-28 | 基準線周りのポリゴンレコード自動作成方法および基準線周りのポリゴンレコード自動作成装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP35258795A JP3845137B2 (ja) | 1995-12-28 | 1995-12-28 | 基準線周りのポリゴンレコード自動作成方法および基準線周りのポリゴンレコード自動作成装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH09185700A JPH09185700A (ja) | 1997-07-15 |
JP3845137B2 true JP3845137B2 (ja) | 2006-11-15 |
Family
ID=18425072
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP35258795A Expired - Lifetime JP3845137B2 (ja) | 1995-12-28 | 1995-12-28 | 基準線周りのポリゴンレコード自動作成方法および基準線周りのポリゴンレコード自動作成装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3845137B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3510515B2 (ja) * | 1999-02-15 | 2004-03-29 | 大日本スクリーン製造株式会社 | 塗りつぶし処理装置、方法およびその処理のために用いられるコンピュータプログラムを記録した記録媒体 |
JP2004348708A (ja) * | 2003-04-30 | 2004-12-09 | Hitachi Eng Co Ltd | 地図情報システム用ポリゴン生成方法及びその装置 |
-
1995
- 1995-12-28 JP JP35258795A patent/JP3845137B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPH09185700A (ja) | 1997-07-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7984371B2 (en) | Method and system for the graphical modeling of data and calculations of a spreadsheet | |
JP2753085B2 (ja) | 形状モデリング方法及びその装置 | |
JPH04337843A (ja) | プログラム動作表示方法 | |
EP0621545A2 (en) | Computer-aided design and production system for component arrangement and pipe routing | |
JP4044971B2 (ja) | イメージ情報を用いた検索方法 | |
EP0905655B1 (en) | Map editing apparatus enabling simplified editing through provision of user-selectable automatic editing functions | |
JPH0785249B2 (ja) | 設計支援装置 | |
EP1875395A2 (en) | Hybrid 3d path router | |
JPH0552986B2 (ja) | ||
JPH01124060A (ja) | ネツトワーク図作成装置 | |
EP0517036A2 (en) | A development supporting system for fuzzy inference device and the scheme by which this system operates | |
JP2904673B2 (ja) | 画像作成装置 | |
JP3845137B2 (ja) | 基準線周りのポリゴンレコード自動作成方法および基準線周りのポリゴンレコード自動作成装置 | |
JP6028703B2 (ja) | グラフ生成装置、グラフ生成方法及びグラフ生成プログラム | |
JPH08147353A (ja) | 出力方法 | |
Encarnaçao et al. | PRADIS: an advanced programming system for 3-D-display | |
JPH1011480A (ja) | 図面検査方法および図面検査装置 | |
JPS60163162A (ja) | 3次元連接体の形状定義方法 | |
JPH10222689A (ja) | 図形表示方法及び装置及び図形表示プログラムを格納した記憶媒体 | |
JP2666303B2 (ja) | 図形表示装置 | |
JP3312233B2 (ja) | 図面管理装置 | |
JP2002149725A (ja) | 3次元展開データ作成装置及び3次元展開データ作成方法 | |
JPH06282593A (ja) | 引出線作成方法 | |
JPH0973476A (ja) | 三次元形状情報入力装置 | |
JP3168117B2 (ja) | 3次元形状モデル処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060104 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060302 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060509 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060706 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20060815 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060818 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090825 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100825 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110825 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110825 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120825 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120825 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130825 Year of fee payment: 7 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |