(57)【要約】【課題】  デジタルマッピング作業において、自動的に図形形状を分析して、対象図形を抽出し、所望の図式を生成する。【解決手段】  特定地図図式の図面データ内の図形形状を分析して図形をパターン分けし、対象図形を検索する対象図形検索手順と、パターン分けされた対象図形内に仮想中心線を生成する仮想中心線生成手順と、対象図形の形状に応じ、仮想中心線を利用して特定地図図式で定められた所定の補助線又は内部点を生成し対象図形内の最適な位置に配置する補助線・内部点生成手順をコンピュータに実行させる。【選択図】        図３
2006127431.tif 000002
【特許請求の範囲】
【請求項１】
地図図面上に地図図式の補助線又は内部点を生成し配置する地図図式生成システムにおいて、
図式分類情報を基に前記地図図式を生成する対象図形を前記地図図面上で特定する対象図形特定手段と、
前記対象図形に仮想中心線を生成する仮想中心線生成手段と、
前記仮想中心線に基づいて補助線又は内部点を生成し配置する補助線・内部点生成手段と
を有することを特徴とする地図図式生成システム。
【請求項２】
前記対象図形特定手段は、
前記対象図形を構成するライングループの頂点座標に基づき前記特定された対象図形を分類する
ことを特徴とする請求項１記載の地図図式生成システム。
【請求項３】
前記頂点座標は始点座標または終点座標であり、
前記対象図形は、前記ライングループを構成するラインの始点座標と終点座標が一致している場合に前記対象図形を円形状ラインとして分類される第１の分類を行い、前記始点座標と前記終点座標が一致していない場合に、前記ライングループから構成される上端線と下端線の接続端点数に基づいて分類される第２の分類を行う
ことを特徴とする請求項２記載の地図図式生成システム。
【請求項４】
前記第１の分類は、更に１つの円形状ラインで囲まれる範囲内に頂点が全て含まれているラインが存在するか判断し、存在する場合に対象図形を円形状図形として分類し、
前記第２の分類は、前記上端線と前記下端線の接続端点数が０個、１個以上の奇数、２個、４個以上の偶数の４つのパターンに対象図形を分類する
ことを特徴とする請求項３記載の地図図式生成システム。
【請求項５】
前記上端線と下端線の接続端点数が１個以上の奇数、又は４個以上の偶数のパターンであって、自動生成処理対象図形でない図形が存在すると判断された場合、前記仮想中心線生成手段は、当該図形について入力操作手段からの指示に基づいて仮想中心線を生成する
ことを特徴とする請求項４記載の地図図式生成システム。
【請求項６】
前記仮想中心線生成手段は、
前記対象図形の上端線及び下端線の始点から終点まで所定間隔で仮想頂点を生成し、前記上端線始点と前記下端線終点が一致する点を１番目の仮想頂点とし、前記１番目の仮想頂点から前記下端線の終点より２番目の仮想頂点に線分を結び、次に前記下端線終点より２番目の仮想頂点から前記上端線始点より２番目の仮想頂点に線分を結び、以後これを繰り返して前記上端線及び前記下端線の仮想頂点間を線分で結び、前記各線分の中点を結ぶことにより仮想中心線を生成する
ことを特徴とする請求項１記載の地図図式生成システム。
【請求項７】
前記線分と前記上端線又は下端線が交差する場合、前記線分の起点から前記線分の終点となった仮想頂点の次の仮想頂点へ線分を結び、以後、前記上端線及び前記下端線間の仮想頂点を交互に結んで線分を生成する
ことを特徴とする請求項６記載の地図図式生成システム。
【請求項８】
前記対象図形が人工斜面又は土堤の場合、
前記補助線・内部点生成手段は、前記上端線上の両端点の中点座標を取得し、前記中点座標から前記下端線に対して前記仮想中心線に垂直に生成した線分として第１長ケバを生成し、前記上端線上で前記中点座標から前記第１長ケバの長さだけ離れた点から前記下端線に対して前記仮想中心線に垂直に生成した線分として第２長ケバを生成し、前記上端線上の中点と、前記第１及び第２長ケバの中点を結んだ線分の中点とを結んだ線分として短ケバを生成し、上記長ケバ及び短ケバ生成処理を上端線の両端点まで繰り返す
ことを特徴とする請求項１記載の地図図式生成システム。
【請求項９】
前記対象図形が土がけ、雨裂、または急斜面の場合、
前記補助線・内部点生成手段は、前記生成された長ケバまたは短ケバの長さを変更する
ことを特徴とする請求項８記載の地図図式生成システム。
【請求項１０】
前記対象図形が岩がけの場合、
前記補助線・内部点生成手段は、前記上端線の両端点の中点である第１の中点座標を取得し、前記中点から前記上端線上で第１の所定距離離れた座標を取得し、前記中点及び前記第１の所定距離離れた点から前記下端線に向けて、前記仮想中心線に垂直かつ第２の所定長さの線分をそれぞれ生成し、前記第１の中点座標と前記第１の所定距離離れた座標との中点である第２の中点座標を取得し、前記第１の中点を上端とする垂線上で前記第１の中点から第３の距離離れた座標、及び前記第１の中点から前記第１の所定長さ離れた点を上端とする垂線上で前記第１の中点より前記第１の所定長さ離れた点から第３の所定長さ離れた座標をそれぞれ取得し、前記第１の中点から前記第３の所定長さ離れた点と前記第１の中点、前記第１の中点から前記第１の所定長さ離れた点から前記第３の所定長さ離れた点と前記第２の中点とを各々結んで線分を生成し、上記一連の処理を前記上端線の両端まで繰り返す
ことを特徴とする請求項１記載の地図図式生成システム。
【請求項１１】
前記対象図形がコンクリート被覆、ブロック被覆または石積被覆である場合、
前記補助線・内部点生成手段は、前記仮想中心線から前記上端線及び下端線方向に、前記仮想中心線に平行かつ等間隔にてオフセット線を生成し、前記上端線から前記仮想中心線に対して２つの異なる角度にて交差する平行かつ等間隔な２種類のグリッド線を生成し、前記各グリッド線が交差する座標が前記オフセット線上にある場合にはその座標を取得し、オフセット線上にない場合には前記グリッド線交差座標に最も近いオフセット線上の座標を取得し、前記取得座標に内部点を配置する
ことを特徴とする請求項１記載の地図図式生成システム。
【請求項１２】
前記対象図形が法面保護である場合、
前記補助線・内部点生成手段は、前記対象図形のライングループから中心に向けて前記対象図形と相似形なオフセット線を所定間隔にて生成し、前記ライングループ上での頂点間隔が最も長い線分の中点座標を起点として、前記対象図形のライングループ上で最も長い線分に対して２つの異なる角度にて交差する平行かつ等間隔な２種類のグリッド線を生成する
ことを特徴とする請求項１記載の地図図式生成システム。
【請求項１３】
前記対象図形が３次元空間上での位置情報を持つ場合、更に、
前記補助線の始点及び終点の高さ情報、又は前記内部点の高さ情報を算出し、補助線又は内部点の座標を補正する高度補正手段を有する
ことを特徴とする請求項１記載の地図図式生成システム。
【請求項１４】
地図図面上に地図図式の補助線又は内部点を生成し配置する地図図式生成プログラムであって、
図式分類情報を基に前記地図図式を生成する対象図形を前記地図図面上で特定する対象図形特定手順と、
前記対象図形に仮想中心線を生成する仮想中心線生成手順と、
前記仮想中心線に基づいて補助線又は内部点を生成し配置する補助線・内部点生成手順と
をコンピュータに実行させるための地図図式生成プログラム。
【請求項１５】
前記対象図形特定手順は、
前記対象図形を構成するライングループの頂点座標に基づき前記特定された対象図形を分類する
ことを特徴とする請求項１４記載の地図図式生成プログラム。
【請求項１６】
前記仮想中心線生成手順は、
前記対象図形の上端線及び下端線の始点から終点まで所定間隔で仮想頂点を生成し、前記上端線始点と前記下端線終点が一致する点を１番目の仮想頂点とし、前記１番目の仮想頂点から前記下端線の終点より２番目の仮想頂点に線分を結び、次に前記下端線終点より２番目の仮想頂点から前記上端線始点より２番目の仮想頂点に線分を結び、以後これを繰り返して前記上端線及び前記下端線の仮想頂点間を線分で結び、前記各線分の中点を結ぶことにより仮想中心線を生成する
ことを特徴とする請求項１４記載の地図図式生成プログラム。
【請求項１７】
前記対象図形が人工斜面又は土堤の場合、
前記補助線・内部点生成手順は、前記上端線上の両端点の中点座標を取得し、前記中点座標から前記下端線に対して前記仮想中心線に垂直に生成した線分として第１長ケバを生成し、前記上端線上で前記中点座標から前記第１長ケバの長さだけ離れた点から前記下端線に対して前記仮想中心線に垂直に生成した線分として第２長ケバを生成し、前記上端線上の中点と、前記第１及び第２長ケバの中点を結んだ線分の中点とを結んだ線分として短ケバを生成し、上記長ケバ及び短ケバ生成処理を上端線の両端点まで繰り返す
ことを特徴とする請求項１４記載の地図図式生成プログラム。
【請求項１８】
前記対象図形が岩がけの場合、
前記補助線・内部点生成手順は、前記上端線の両端点の中点である第１の中点座標を取得し、前記中点から前記上端線上で第１の所定距離離れた座標を取得し、前記中点及び前記第１の所定距離離れた点から前記下端線に向けて、前記仮想中心線に垂直かつ第２の所定長さの線分をそれぞれ生成し、前記第１の中点座標と前記第１の所定距離離れた座標との中点である第２の中点座標を取得し、前記第１の中点を上端とする垂線上で前記第１の中点から第３の距離離れた座標、及び前記第１の中点から前記第１の所定長さ離れた点を上端とする垂線上で前記第１の中点より前記第１の所定長さ離れた点から第３の所定長さ離れた座標をそれぞれ取得し、前記第１の中点から前記第３の所定長さ離れた点と前記第１の中点、前記第１の中点から前記第１の所定長さ離れた点から前記第３の所定長さ離れた点と前記第２の中点とを各々結んで線分を生成し、上記一連の処理を前記上端線の両端まで繰り返す
ことを特徴とする請求項１４記載の地図図式生成プログラム。
【請求項１９】
前記対象図形がコンクリート被覆、ブロック被覆または石積被覆である場合、
前記補助線・内部点生成手順は、前記仮想中心線から前記上端線及び下端線方向に、前記仮想中心線に平行かつ等間隔にてオフセット線を生成し、前記上端線から前記仮想中心線に対して２つの異なる角度にて交差する平行かつ等間隔な２種類のグリッド線を生成し、前記各グリッド線が交差する座標が前記オフセット線上にある場合にはその座標を取得し、オフセット線上にない場合には前記グリッド線交差座標に最も近いオフセット線上の座標を取得し、前記取得座標に内部点を配置する
ことを特徴とする請求項１４記載の地図図式生成プログラム。
【請求項２０】
前記対象図形が法面保護である場合、
前記補助線・内部点生成手順は、前記対象図形のライングループから中心に向けて前記対象図形と相似形なオフセット線を所定間隔にて生成し、前記ライングループ上での頂点間隔が最も長い線分の中点座標を起点として、前記対象図形のライングループ上で最も長い線分に対して２つの異なる角度にて交差する平行かつ等間隔な２種類のグリッド線を生成する
ことを特徴とする請求項１４記載の地図図式生成プログラム。
【請求項２１】
前記対象図形が３次元空間上での位置情報を持つ場合、
更に、前記補助線の始点及び終点の高さ情報、又は前記内部点の高さ情報を算出し、補助線又は内部点の座標を補正する高度補正手順を有する
ことを特徴とする請求項１４記載の地図図式生成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば公共測量作業規定（以下、「作業規定」という。）に準拠した大縮尺地図図式や国土基本図図式等、地図の図形形状に沿った地図図式を、コンピュータを使用して自動的に生成する地図図式生成システム及びプログラムに関する。
【背景技術】
【０００２】
従来、地形、地物等にかかわる地図情報をデジタル形式で測定し、電子計算機技術により、体系的に整理された数値地形図を構築するデジタルマッピング技術がある。デジタルマッピングで取り扱う地図図式には、例えば、大縮尺地図図式、国土基本図図式などがある。
【０００３】
例えば、デジタルマッピング作業において、一般的な地図や各種設計図面に使用されている複雑な形状の基準線で形成される特殊面図形が自動的に作成できる特殊面図形生成方法が特許文献１に開示されている。この特許文献１に開示された方法は、２本の任意形状の基準線の間隔長を求め、その間隔長に応じて、任意の絵柄を形成する図形パターンを拡大・縮小し、図形パターンを該２本の基準線間に隙間なく配置し、特殊面図形を生成する、というものである。これにより、配置すべき図形パターンの大きさが自動的に調整されるので、オペレータの負担が軽減する。
【特許文献１】特開２００１−２８３２３７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、大縮尺地図図式、国土基本図図式などは作業規定で定められているが、地図（地形図）の形状は多岐にわたり、複雑である。このため、オペレータは、航空写真などを見てこれらの複雑な地図形状を一つ一つ確認しながら図式（補助線や内部点といった図形）を入力している。例えば、図面上の対象図形、生成箇所、図式生成の開始点・終点をオペレータが指定しなければならず、人為的に作業を行っているのが現状である。このように、入力作業が煩雑で手間がかかっていたために地図生産コストが高くなるという問題があった。
【０００５】
また、デジタルマッピング作業において、オペレータが複雑な地図形状を確認しながら図式を入力するのは、高度な経験が必要とされていた。オペレータの主観による入力作業が行われるため、経験の違い等による差が生じ、地図の品質・精度が低くなるという問題があった。
【０００６】
特許文献１に記載されたものは、２本の任意形状の基準線間に配置する図形パターンを、用意すべき図形パターンの数だけ予め作成しておく必要があり、手間がかかっていた。また、崖崩れや土砂崩れを防止する為に、網やモルタル、コンクリート桝により崖の表面を覆うものとして法面保護があり、大縮尺地図図式（１／５００、１／１０００）では、１つの閉ループとして表現される。上記手法では、２本の任意形状の基準線間に図形パターンを配置することはできるが、法面保護などの図形については、閉領域に所定形状の内部点を自動的に配置して目的の図形を作成することができなかった。このため、上述の特許文献１に開示された技術は上述した問題点を解決できるものではなかった。
【０００７】
本発明は斯かる点に鑑みてなされたものであり、デジタルマッピング作業において、自動的に図形形状を分析して、対象図形を抽出し、所望の図式を生成することを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決して目的を達成するため、本発明は、地図図面上に補助線又は内部点を生成し配置するものであって、図式分類情報を基に地図図式を生成する対象図形を地図図面上で特定する処理と、その対象図形に仮想中心線を生成する処理と、その仮想中心線に基づいて補助線又は内部点を生成し配置する処理を有することを特徴とする。
【０００９】
斯かる本発明によると、図式分類情報を基に地図図面上に地図図式を作成する対象図形を自動的に抽出し、抽出した対象図形に対して仮想中心線を生成し、その仮想中心線を利用して補助線や内部点等を計算機にて計算し自動的に生成するので、オペレータのデジタルマッピング作業を支援することができる。
【００１０】
上述の発明において、対象図形を特定する処理では、上記対象図形を構成するライングループの頂点座標に基づき特定された対象図形を分類する。頂点座標は始点座標または終点座標であり、対象図形は、ライングループを構成するラインの始点座標と終点座標が一致している場合に対象図形を円形状ラインとして分類される第１の分類を行い、始点座標と終点座標が一致していない場合に、ライングループから構成される上端線と下端線の接続端点数に基づいて分類される第２の分類を行うことを特徴とする。
【００１１】
上述の構成によると、対象図形を特定する処理では、オペレータが目視で確認していた複雑な図形形状を、その対象図形を構成するライングループの頂点座標の形態に基づいて自動判別し、パターン分類することができる。これにより、図式生成の対象となる図形の特定が容易となる。
【００１２】
また上述の発明において、仮想中心線を生成する処理では、上記対象図形の上端線及び下端線の始点から終点まで所定間隔で仮想頂点を生成し、上端線始点と下端線終点が一致する点を１番目の仮想頂点とし、その１番目の仮想頂点から下端線の終点より２番目の仮想頂点に線分を結び、次に下端線終点より２番目の仮想頂点から上端線始点より２番目の仮想頂点に線分を結び、以後これを繰り返して上端線及び下端線の仮想頂点間を線分で結び、各線分の中点を結ぶことにより仮想中心線を生成することを特徴とする。
【００１３】
上述の構成によると、仮想中心線を生成する処理では、作業補助線として対象図形内に図形形状に即した最適な中心線を自動生成することができる。したがって、分岐図形、円形状、カーブ図形等の複雑な図形においても中心線を生成することができる。
【００１４】
また上述の発明において、補助線・内部点を生成する処理では、パターン分けした対象図形の図式に応じ、上記仮想中心線を利用して、特定地図図式で規定された、例えば人工斜面、土堤、土がけ、雨裂、急斜面、岩がけ、各被覆図形などの補助線又は内部点を生成するように構成した。
【００１５】
上述の構成によると、補助線・内部点を生成する処理では、大縮尺地図図式や国土基本図図式等に定められた補助線又は内部点を自動生成し、対象図形内の最適な箇所に配置できる。したがって、図式を高精度で自動生成することができるので、オペレータが手動で指定入力する必要をなくすことができる。
【発明の効果】
【００１６】
本発明によれば、デジタルマッピング作業において、自動的に図形形状を分析して、対象図形を抽出し、所望の図式を生成することができる。これにより、地図図式生成の自動化が実現でき、地図生産コストを低く抑えることができる。また、人間の主観によらない図式生成が可能となり、地図の品質・精度の向上を図ることができる。
【発明を実施するための最良の形態】
【００１７】
以下、本発明の一実施の形態の例について、添付図面を参照しながら説明する。
本例は、デジタルマッピング作業において、従来オペレータが手作業で入力を行っていた区分（法面や変形地等）に代わって、地図図面内を自動検索して対象図形を特定し、作図補助線として対象図形内の図形形状に即した最適な仮想中心線を生成し、この仮想中心線を基に補助線・内部点を自動的に発生させ、地図情報レベル５００，１０００（縮尺１／５００，１／１０００）に対応した大縮尺地図図式、地図情報レベル２５００（縮尺１／２５００）に対応した地図図式の自動生成を行う構成としている。
【００１８】
図１は、本例の図式自動生成処理の対象図式の一例として、人工斜面を示したものであり、Ａは補助線生成前のデータ、Ｂは補助線生成後のデータを表している。大縮尺地図図式で規定される人工斜面は、盛土部及び切土により人工的に作られた急斜面（道路、鉄道等の盛土部及び切土部、造成地の急斜面等）を表す。図１Ａの補助線生成前は、人工斜面の射影部の上端から形成される線分である上端線１、射影部の下端から形成される線分である下端線２のみが描画されている。そして、補助線を記入すると、図１Ｂに示すように上端線１及び下端線２の間の傾斜部分が、長ケバ３と短ケバ４を交互に射影幅の１／２間隔として表示され、また、長ケバ３の長さは射影幅、短ケバ４の長さは射影幅の１／２として表示される。なお、作業規定では、上端線では低い方を右に見るように頂点を取得し、下端線は高い方を右に見るように頂点を取得するよう定められている（図１Ｂ参照）。
【００１９】
本例は、このような図式の補助線、又は内部点の生成を自動的に行い、図形を生成する。なお、これらの数値は設定により変更可能である。
【００２０】
本例の自動図式生成の対象とする対象図形形状は、下記に列挙する地形図の法面と変形地とする。対象図形形状に応じて、生成させる補助線の形状や内部点の形状を変更して対応する。なお、４桁の番号はデジタルマッピング取得分類基準表によるもので、一般的に各図形を整理するために付番される。また、名称に続く補助線又は内部点の表記は、その図式を生成するのに必要な線又は点を表している。
「法面」
６１０１…人工斜面／補助線（長ケバ、短ケバ）
６１０２…土堤／補助線（長ケバ、短ケバ）
６１１１…コンクリート被覆／内部点
６１１２…ブロック被覆／内部点
６１１３…石積被覆／内部点
６１２１…法面保護（網）／内部点
６１２２…法面保護（モルタル）／内部点
６１２３…法面保護（コンクリート桝）／内部点
６１１０…被覆（１／２５００）／内部点
「変形地」
７２０１…土がけ（崩土）／補助線
７２０２…雨裂／補助線
７２０３…急斜面／補助線
７２１１…岩がけ／補助線
【００２１】
図２は、本例の実施形態による地図図式生成処理をコンピュータに行わせるためのプログラムが適用されるシステムの概要を示したものである。本システムは、コアモジュール５と、自動生成機能ＧＵＩ（Graphical User Interface）６、図形データベース７、出力結果ログ８、操作部９から構成されている。
【００２２】
コアモジュール５は、システム全体を制御するコンピュータであり、自動生成機能モジュール５ａを有している。自動生成機能モジュール５ａは、ＲＯＭ（Read Only Memory）等に書き込まれた地図図式の自動生成処理を行うプログラムに従って所定の処理を行う。地図図式生成プログラムは主に、対象図形特定部、仮想中心線生成部、補助線・内部点生成部、高度補正部、整合性処理部、処理結果生成部から構成されている。なお、コアモジュール５のコンピュータは、スタンドアロンで構成されても、またＬＡＮやインターネット等のネットワークに接続されるクライアント端末であってもよい。
【００２３】
また、自動生成機能ＧＵＩ６はＶＢ（Visual Basic）等のプログラミング言語で作成されたユーザインターフェースであり、この自動生成機能ＧＵＩ６により、オペレータはディスプレイに表示される地図や各種情報の閲覧・確認、地図編集等が行え、また、例えばマウスポインタやタッチパネル等から構成される操作部９からの入力操作が可能となっている。
【００２４】
図形データベース７は、自動生成処理された図形データを蓄積している。また、出力結果ログ８は、自動生成処理の過程で生成された地図情報、補正情報及びエラー情報などからなる外部処理データを包含している。これら、図形データや出力結果ログのデータは、ハードディスクやフラッシュメモリ等、不揮発性メモリに記録される。
【００２５】
図３は、本例の自動生成機能モジュール５ａによる図式自動生成機能の全体処理の概要を示したフローチャートである。補助線や内部点を自動生成するにあたり、図面内に存在する生成対象図形を検索し、図形の形状判別処理で生成可能な図形を抽出して図式の自動生成を行うようになっている。図３において、まず、対象図形検索ルーチンにより画面内の図形をパターン毎に分類する（ステップＳ１）。そして、パターン分けしたものが自動生成対象図形かどうかを判断する（ステップＳ２）。
【００２６】
自動生成処理対象とならない図形とは、例えば後述するパターン分けにおいてエラー図形と判断されたものなどが該当する。自動生成対象外の図形を発見した際には、当該図形を手動で選択して補助線・内部点を自動発生させる図上指定モードに移行する。図上指定モードについては、後に詳細に説明する。
【００２７】
上記判断ステップＳ２において、自動生成対象図形であると判断した場合、仮想中心線生成ルーチンにより、作図補助のための仮想中心線を生成する（ステップＳ３）。次に、補助線・内部点生成ルーチンにより、大縮尺地図図式・国土基本図図式に定められた補助線・内部点を自動生成し、対象図形内の最適な箇所に配置する（ステップＳ４）。この後、高度補正が必要かどうかを判断し（ステップＳ５）、高度補正が必要である場合、すなわち図形データが３次元情報を持っている場合にはその３次元情報を取得し、図式生成時に３次元データ化する高度補正ルーチンを行う（ステップＳ６）。
【００２８】
ステップＳ６の高度補正処理後、又は判断ステップＳ５にて高度補正処理が不要であると判断された場合、整合性処理ルーチンにより補助線・内部点の自動生成処理終了後の補正処理を行う（ステップＳ７）。そして、処理結果生成ルーチンにより、処理結果内容、エラー箇所等を、ＣＳＶ（Comma Separated Values）ファイル等のファイル形式に出力する（ステップＳ８）。抽出されたデータは、自動生成後の図面上で、エラー箇所の表示等の情報として利用される。以下、自動生成機能の各処理ルーチンの処理内容について、順次詳細に説明する。
【００２９】
まず、対象図形検索ルーチン（図３ステップＳ１）について、詳細に説明する。
自動生成対象データの形状は円状の地形や途中で分岐している地形、連続してカーブしている図形等、様々なパターンが存在しており、変則的である。対象図形検索ルーチンでは、まず、地図図式を生成・配置する対象図形を構成するラインを検索し、さらにこれらがまとまったライングループを取得する。ラインとは、２次元又は３次元空間上の頂点２つ以上からなる一つの線分であり、ライングループとは、１以上のラインから構成されるラインの集合体である。そして、取得したラインやライングループから図形形状を５つのパターンに分類することにより、自動生成が容易な対象図形を絞り込むようにしている。
【００３０】
地形には、円形状の図形や分岐する図形形状、閉図形を形成しない形状などさまざまなものが存在する。本例では検索したライングループ同士の接続関係を検査（接続端点の一致数をカウント）して、図形形状を大きく５つのパターンに分類して評価する。以下、図４〜図８を参照して本例の５つの分類について説明する。
【００３１】
図４は、端点の一致箇所が２点で構成される図形（パターン１）を示したものである。図４に示すような、「上端線１１の終点と下端線１２の始点（接続端点１３）」、「上端線１１の始点と下端線１２の終点（接続端点１４）」で接続する閉図形のパターンである。ほとんどの図形はこの２点で接続する。
【００３２】
図５は、ラインの始終点座標が一致する図形（パターン２）を示したものである。「上端線の始点と終点」、「下端線の始点と終点」が一致する図形は、１つのラインだけで閉じられており、円形状となる。これを円形状ラインと呼ぶことにする。図５では、上端線１５の始点と終点（接続端点１７）、下端線１６の始点と終点（接続端点１８）が一致して円形状となっており、前者が後者を包含している状態を表している。このように、円形状ラインの中で、他の円形状ラインを包含している場合に、これを円形状図形と呼ぶことにする。円形状図形にはペアとなる図形が存在し、これらを用いて補助線や内部点を生成する。
【００３３】
パターン３は、端点の一致箇所が「４点（または４点以上の偶数点）」、すなわち「上端線の終点と下端線の始点」が２点（または２点以上の偶数点）または「上端線の始点と下端点の終点」が２点（または２点以上の偶数点）で接続する閉図形である。この図形は接続端点数／２の値の数だけ分岐している。図６は端点の一致箇所が４である図形の例であり、上端線１９の終点と下端線２２の始点（接続端点２５）、上端線２１の終点と下端線２０の始点（接続端点２６）、上端線１９の始点と下端線２０の終点（接続端点２３）、上端線２１の始点と下端線２２の終点（接続端点２４）が接続している。
【００３４】
パターン４は、端点の一致箇所が「１点（または１点以上の奇数点）」、すなわち「上端線の終点と下端線の始点が１点（または１点以上の奇数点）、他方が２点」または「上端線の始点と下端線の終点が１点（または１点以上の奇数点）、他方が２点」で接続する形状である。接続端点が１点の場合は、もう片方の端点２点が接続せず閉じていない図形形状である。また、接続端点が３点以上の奇数の場合は、分岐した図形形状において、何れかの端点が開いた図形である。図７は接続端点が３１〜３３の３点、未接続端点が図郭線３４による分断点３５，３６の２点であるので、接続端点が３点の場合の例である。接続端点数／２の商が分岐数、その余りが開いている端点（２点で１組）の数となる。
【００３５】
図８は、端点の一致箇所が０点、つまり線分の両端点がどこにも一致しない図形（パターン５）を示したものである。図８に示すように、独立した線分３７両端の独立端点３８，３９と接続する端点がなく、閉図形を形成する相手がいないラインとなっている。この場合、エラーとして判断する。
【００３６】
図９、図１０は、それぞれ対象図形検索ルーチンの処理を示したフローチャート（その１，その２）である。
【００３７】
図９において、まず図面内で指定された対象図形を検索する（ステップＳ１１）。デジタルマッピングデータ仕様では、図面上の図形要素一つ一つに頂点の座標等の情報を記述してあるヘッダーが存在する。検索したい対象図形の図式分類コードは決まっているので、ヘッダーに記述されている図式分類コードを検索することにより、目的の図形を絞り込むことができる。そして、絞り込んだ図形のヘッダー情報から、図形の頂点座標情報を取得し配列を作成する（ステップＳ１２）。次にラインの座標調査をする座標調査ルーチンによる処理を行う（ステップＳ１３）。
【００３８】
ここで、座標調査ルーチンの処理について、図１１のフローチャートを参照して説明する。通常、図形形状は１つの上端線ラインと１つの下端線ラインで構成されるものが多いが、長い形状や途中で分岐する形状の地形の場合は複数のライン（ライングループ）で構成される場合がある。ライングループの検索は、まず、図面内に存在する対象図形のラインを検索し、線分の端点座標を取得する。次に、端点座標（ＸＹＺ座標）が一致する線分を数珠繋ぎ式に検索していき、得られた複数のラインから上端線ライングループ、下端線ライングループを取得する。
【００３９】
図１１において、まず、指定ラインの端点座標の配列を作成する（ステップＳ３１）。次に、その配列に対してＸ座標列により並び替え（ソート）を行う（ステップＳ３２）。そして、同一座標の許容値内に２つの座標レコードがある場合、これらを接続し、１つのラインとする（ステップＳ３３）。次に一致していない側の端点座標で一致する座標を検索する（ステップＳ３４）。一致した座標がある場合にはそれらをグループ化し、さらにステップＳ３５に戻って一致する座標がなくなるまで繰り返し処理を行う。
【００４０】
ステップＳ３５の処理において、一致する座標がなくなったら、最終的にグループ化されたラインの配列を作成する（ステップＳ３５）。そして、そのラインが自己交差しているかどうかを判定し（ステップＳ３６）、自己交差していなければ座標調査処理を終了する。また、自己交差している場合には、自己交差している図形（ライン）を除外（ステップＳ３７）して処理を終了する。なお、自己交差しているラインの例を図１３に示す。
【００４１】
座標調査ルーチンの処理を終了後、複数のライン（ライングループ）を取得し（ステップＳ１４）、各ラインの始点と終点の座標を検索する（ステップＳ１５）。始点と終点の座標が一致した場合は、円形状ラインを比較する円形状ライン比較ルーチンの処理を行う（ステップＳ１６）。
【００４２】
ここで、円形状ライン比較ルーチンの処理について、図１２のフローチャートを参照して説明する。予め設定した比較するラインの座標範囲と頂点座標を元に、座標が近い図形から包含判定を行い、ペア図形（ドーナツ形状）を検索する。図１２において、まず、始点と終点が一致する複数のライン（ライングループ）を呼び出し（ステップＳ４１）、続いてライン同士の交差があるかどうかを判定する（ステップＳ４２）。ライン同士が交差しているライングループの例を、図１４に示す。図１４では、２つの円状のライン４１，４２が２点で交差している。ライン同士が交差している場合にはペア図形なしとする。
【００４３】
判断ステップＳ４２でライン同士の交差がないと判断した場合、次に対象図形の種別が法面保護図形かどうかを判定する（ステップＳ４３）。法面保護図形の場合は、１つのラインだけで円形状を形成し上端と下端の区別がなく内部点を生成するので組み（ペア）となる図形は必要ないから、ペア図形なしとする。法面保護図形でない場合、円形状ラインの包含判定を行う（ステップＳ４４）。
【００４４】
円形状ラインの包含判定は、１つの円形状ライン内に他の円形状ラインの頂点が含まれるかどうか、すなわちライン内にペアとなるラインの頂点が全て含まれるかを判定する。そして、包含判定の結果より、ドーナツ形状を構成するラインの上端線と下端線を判別して（ステップＳ４５）、円形状ライン比較処理が終了する。以上でステップＳ１６の処理が終了する。
【００４５】
図９に戻りステップＳ１６の円形状ライン比較ルーチンが終了すると、上端線と下端線からなる円形状のペア図形を取得（ステップＳ１７）し、処理を終了する。
【００４６】
一方、上記判断ステップＳ１５にて各ラインの始点と終点の座標を検索した結果、不一致であった場合には、ライン終点から別のライン始点を検索し（ステップＳ１８）、円形状ではないライングループの配列を取得する（ステップＳ１９）。これらを基に、上端線ライングループと下端線ライングループを得る。
【００４７】
そして、図１０に示す対象図形検索処理（その２）において、上端線端点と下端線端点の座標が一致する点を検索する（ステップＳ２０）。
【００４８】
上端線端点と下端線端点の一致座標が２点の場合（図４参照）、通常の閉図形のペアとしてパターン１に分類する（ステップＳ２１）。
【００４９】
また、上端線端点と下端線端点の一致座標が４点の場合（図６参照）、上端線（ライングループ）が２、下端線（ライングループ）が２で構成され、途中で分岐している閉図形としてパターン３に分類する（ステップＳ２２）。パターン３は、既に述べたように端点の一致座標が４点の他、一致座標が４点以上の偶数点であればよい。
【００５０】
また、上端線端点と下端線端点の一致座標が１点の場合、片方の端点が閉じていないラインであるとしてパターン４に分類する（ステップＳ２３）。パターン４は、既に述べたように、端点の一致座標が１点の他、図７に示すように一致座標が１点以上の奇数点であればよい。
【００５１】
また、上端線端点と下端線端点の一致座標が０点の場合、閉図形を形成する相手がいないライン（パターン５）と判断し（ステップＳ２４）、この図形をエラー図形としてカウントする（ステップＳ２５）。このような手順により対象図形を５パターンに分類していく。
【００５２】
このような図形形状検索処理により、オペレータが目視で確認していた複雑な図形形状を自動判別し、パターン分類することができる。これにより、図式生成の対象となる図形の抽出が容易となる。
【００５３】
次に、仮想中心線生成ルーチン（図３ステップＳ３）について、詳細に説明する。
図面内で検索された図形は、形状がカーブしていたり、分岐しておりそのままで補助線・内部点を自動的に等間隔で生成するのは困難である。仮想中心線生成ルーチンでは、検索した対象図形に不整三角網を生成し、上下端線を結ぶ辺の中点座標を取得して、端点と中点から仮想中心線発生箇所を把握することで、最適な補助線・内部点の自動生成を補助するため仮想中心線を生成する。
【００５４】
図１５は、仮想中心線生成ルーチンの処理を示したフローチャートである。この図１５に示すフローチャートについて、図１６，１７，１８を参照しながら説明する。まず、対象図形検索ルーチンで検索された生成対象図形の上端線及び下端線の始点の頂点座標情報を取得し、始点から任意の間隔の仮想頂点からなるＮ個（Ｎは自然数）の点列を生成する（ステップＳ６１）。ここでいう仮想頂点とは、上述のラインを形成する頂点とは別物である。仮想頂点の間隔は、人工斜面の最小幅以上になるように設定し、またその数は、上端線及び下端線とも同じになるようにする。したがって、全長が短い端線の方が頂点間隔は短くなる。生成した仮想頂点は、後述する不整三角網の生成に利用する。
【００５５】
より精度よく仮想中心線を生成するためには、上記仮想頂点の間隔を等間隔とすることが好ましい。しかし、上端線あるいは下端線が極端に短い場合、仮想頂点の間隔が極端に短くなり、必要以上に多くの三角形が生成され、処理量が増えてしまう。この場合には、例えば間隔が人工斜面の最小幅になるように仮想頂点を生成し、仮想頂点の数を間引くことにより、処理量の増加を避けることが望ましい。
【００５６】
次に、不整三角網の生成について説明する。図１６は、接続端点数が４点で、生成対象図形内に上端線・下端線の組が２組ある分岐図形パターン（パターン３）の例であり、上端線１９の仮想頂点数７、下端線２０の仮想頂点数１２、上端線２１の仮想頂点数９、下端線２２の仮想頂点数６である。なお、仮想頂点には、作業規定に沿うように、上端線では低い方を右に見るように、下端線は高い方を右に見るように順次番号を付与する。そして、生成した上端線及び下端線の仮想頂点を所定のルールに従って結んでいき、不整三角網を生成する。三角網生成ルールを以下に示す。
【００５７】
＜三角網生成ルール＞
１．三角網を形成する線分は、上端線の仮想頂点同士、下端線上の仮想頂点同士では結ばれない。
２．三角網を形成する線分の始点は、上端線グループの始点と一致し、２番目の点は下端線終点から２番目の仮想頂点と一致する。３番目の点は上端線グループの２番目の仮想頂点と一致する。以後は交互に生成する。
３．三角網を形成する線分の終点は上端線の始点と同一となるが、下端線グループの二番目の仮想頂点が未使用の場合はその点を終点とする。
４．三角網を形成する線分は、対象図形を構成する上端線または下端線に交差しない。交差した場合は交差する前の仮想頂点まで三角網を生成し、次の新たな仮想頂点から対象図形に交わらないように生成する。
５．分岐パターンの場合、上端線の総延長が短いペアから三角網を生成する。
６．分岐パターンの場合、上端線から下端線の相手先が複数存在する際は上端線終点と接続している下端線頂点を採用する。
７．分岐パターンの場合、上端線始点からの生成が終了し未使用の仮想頂点が存在する場合、上端線の始点以外の一番若い番号の未使用仮想頂点を始点として下端線（未使用仮想頂点）へ三角網を生成する。
８．円形状図形の場合、上端線の始終点が一致する点を起点とし、ペアとなる下端線で最も近い仮想頂点を検索し三角網を形成していく。終点は起点から初めに結んだ仮想頂点（下端線側）とする。
９．上端線では低い方を右に見るように仮想頂点番号を取得し、下端線は高い方を右に見るように仮想頂点番号を取得するので、上端線の入力方向に向かって右側に下端線が存在する。この規則を利用し、分岐形状で上端線から下端線へ結ぶ仮想頂点の候補が２点存在した場合、右側にある仮想頂点で最も近い箇所を結ぶ。
【００５８】
上述の三角網生成ルールに従って、まず、上端線始点座標と下端線終点座標が一致する点をサーチし（ステップＳ６２）、一致した点の上端線始点座標を取得する（ステップＳ６３）とともに、その下端線終点から数えて２番目の仮想頂点をサーチする（ステップＳ６４）。そして、上端線の始点からサーチした下端線終点から数えて２番目の仮想頂点（頂点１１）までの線分を結ぶ（ステップＳ６５）。続いて、上記三角網生成ルールの項目２に沿って、上端線の始点からＮ番目の仮想頂点及び下端線の終点からＮ番目の仮想頂点まで線分を結んでいく（ステップＳ６６，Ｓ６７）。すなわち、以降、上端線始点より（ｎ−１）（２≦ｎ≦Ｎ；ｎは自然数）番目の仮想頂点から下端線終点よりｎ番目の仮想頂点に線分を結ぶまで、上端線の仮想頂点及び下端線の仮想頂点間で交互に線分を結んでいく。
【００５９】
図１６を例にすると、下端線２０終点より数えて２番目の仮想頂点（仮想頂点１１）から上端線１９の２番目の仮想頂点（仮想頂点２）までの線分、上端線１９の２番目の仮想頂点（仮想頂点２）から下端線２０終点より数えて３番目の仮想頂点（仮想頂点１０）までの線分と次々結んでいく。このように線分を結んでいくことで、不整三角網を形成する三角形が次々に作成されていく。すなわち、上端線の仮想頂点及び下端線の仮想頂点間を結ぶ各線分、上端線の隣り合う仮想頂点同士及び下端線の隣り合う仮想頂点同士を結ぶ各線分を辺とする複数の三角形を生成していく。
【００６０】
ここで、任意の上端線又は下端線と不整三角網が交差するかどうかを判定し（ステップＳ６８）、交差する場合は、交差前の仮想頂点へ線分を戻し、交差する前の線分の起点から交差する線分の起点となった仮想頂点の次の仮想頂点へ線分を結んでいく（ステップＳ６９）。このステップＳ６８及びステップＳ６９の処理については、後に図１８を参照して具体的に説明する。
【００６１】
そして、上記判断ステップＳ６８において上端線又は下端線と不整三角網が交差しない場合には、上述の方式で上端線終点まで線分を結んでいき、不整三角網を生成する（ステップＳ７０）。そして、生成した線分の中点座標を取得し（ステップＳ７１）、隣り合う中点座標同士を線分で結ぶ（ステップＳ７２）。線分を結んだ後、他の接続端点をサーチし（ステップＳ７３）、接続端点があればステップＳ６２の処理に移行して一連の処理を繰り返す。接続端点がない場合は、算出した線分の中点を結んでいって仮想中心線を生成する（ステップＳ７４）。仮想中心線を全て生成したら一連の処理を終了する。
【００６２】
次に図１６を例に、不整三角網生成手順について説明する。なお、図１６では、上端線１９と下端線２０から生成される不整三角網をＡ組、上端線２１と下端線２２，２０から生成される不整三角網をＢ組とする。
【００６３】
まず、上端線の総延長が短いＡ組から不整三角網を生成する。上端線１９の仮想頂点１を始点とし、下端線２０の仮想頂点１１を２番目の点とする。Ａ組の終点を上端線１９の仮想頂点７とし、下端線２０の仮想頂点１１から６まで使用する。上端線１９の仮想頂点１から下端線２０の２番目の仮想頂点１１を結び線分４３を、下端線２０の仮想頂点１１から上端線の仮想頂点２を結び線分４４を生成し、三角形４６を形成する。さらに、上端線１９の仮想頂点２と下端線２０の仮想頂点１０を結んで線分４５を生成して三角形４７を生成するというように、次々に三角形を形成して不整三角網を生成していく。
【００６４】
次に、Ｂ組について説明する。上端線２１の仮想頂点１を始点として仮想頂点９を終点とする。下端線２２の頂点５を２番目の点とし、分岐点２５（下端線２２の始点）まで順に線分を結び三角網を生成する。さらに、下端線２２の始点（頂点１）から上端線２１の頂点６へ線分を結び、順に上端線２１の終点（頂点９）まで線分を結んで三角網を形成していく。上端線２１の終点（頂点９）が接続端点となるが下端線２０の頂点２が未使用のため、Ｂ組の終点は下端線２０の頂点２となる。
【００６５】
次に、図１６で生成された不整三角網に基く仮想中心線の生成例を、図１７に示す。対象図形内に生成した不整三角網の各辺の中点を結んでいくと対象図形内を分断する中心線が生成される。図１７のＡ１〜Ａ１３及びＢ１〜Ｂ１８は、図１６の各頂点に対応し、それぞれＡ組の不整三角網とＢ組の不整三角網を構成する。
【００６６】
「Ａ組の場合（仮想中心線５１）」
Ａ組の不整三角網の始点Ａ１から２番目の仮想頂点Ａ２を結ぶ線分４３の中点を、仮想中心線５１の始点５１ｓとする。次に、Ａ組不整三角網の仮想頂点Ａ２から仮想頂点Ａ３を結ぶ線分４４の中点を仮想中心線５１の２番目の中点４８とする。順に、上端線１９と下端線２０を結ぶ三角形の辺の中点を結び仮想中心線５１を生成していく。Ａ組の不整三角網の最終辺は仮想頂点Ａ１２から仮想頂点Ａ１３に結ばれる線分であり、その中点が仮想中心線Ａの終点５１ｅになる。
【００６７】
「Ｂ組の場合（仮想中心線５２）」
Ｂ組の不整三角網の始点Ｂ１から２番目の仮想頂点Ｂ２を結ぶ線分の中点を仮想中心線Ｂの始点５２ｓとする。次に、Ｂ組の不整三角網の仮想頂点Ｂ２から仮想頂点Ｂ３を結ぶ線分の中点を仮想中心線５２の２番目の中点とする。順に、仮想頂点Ｂ４〜Ｂ１０（Ａ１３に相当）により生成される三角形の辺の中点を結んでいく。さらに、仮想頂点Ｂ１０〜Ｂ１８により生成される三角形の辺の中点を結んでいき、仮想頂点Ｂ１７と仮想頂点Ｂ１８を結ぶ辺の中点を終点として仮想中心線５２を生成する。
【００６８】
なお、三角網の各線分の中点を結ぶ際、中点を連続して使用してもよいし、一点おきに中点を使用するようにしてもよい。例えば、均一ピッチによる仮想頂点においては、中点を全点使用すると仮想中心線がジグザグになりすぎる傾向にあるが、この場合には一点おきに使用することにより滑らかな仮想中心線を得ることができる。
【００６９】
ここで、図１５のステップＳ６８において不整三角網が上端線・下端線に交差する際の対応について、図１８を参照しながら説明する。図１８は図形が閉じていない形状（パターン４に相当）であり、Ａは不整三角網が上端線・下端線に交差している例、Ｂは本例の対応を行った不整三角網の例を、それぞれ示す。
【００７０】
図１８Ａは、図形が閉じておらず、分岐点付近の三角形を構成する辺１４−１５で上端線２７、下端線３０と交差している。この結果、仮想頂点数が一致しなくなり、最適な仮想中心線を生成することができない。このような場合には、まず交差する前の仮想頂点まで三角網生成を行う。つまり、図１８Ｂにおいて、上端線２９の始点（仮想頂点Ａ１）から仮想頂点Ａ１４まで線分を結ぶ。そして、仮想頂点Ａ１４から仮想頂点Ａ１５までの線分は上下端線と交差するので、次の仮想頂点を仮想頂点Ａ１５ではなく、交差する前の線分の起点に戻り、一旦頂点Ａ１３とする。それから、交差する線分の起点となった仮想頂点の次の仮想頂点、仮想頂点Ａ１３から仮想頂点Ａ１５、仮想頂点Ａ１５から仮想頂点１６へと順に線分を結んで不整三角網を形成していく。結果としては、Ａ１３→Ａ１４→Ａ１３→Ａ１５→Ａ１６・・・の順番になる。
【００７１】
続いて、上端線２７の始点Ｂ１から終点Ｂ９まで、上端線及び下端線上の仮想頂点を交互に接続し、三角網を生成する。
【００７２】
また、上端線あるいは下端線に大きく向きが変化している部分がある等により、図形を構成する上端線・下端線と交差した場合にも、同様の手法により三角網を生成する。上記処理により、図形を構成する上端線・下端線と交差した場合に仮想頂点数が一致せず、最適な仮想中心線を生成することができないという問題を回避することができる。
【００７３】
図１９は、円形状図形（パターン２）の場合の不整三角網生成例を示すものである。この場合、必ずしも上端線の始点（あるいは終点）と下端線の始点（あるいは終点）が最も近い仮想頂点同士とは限らない。この為、上端線始点（あるいは終点）とペアとなる下端線の最も近い仮想頂点から三角網を生成する。
【００７４】
図１９の例の場合、上端線７８の仮想頂点６１が不整三角網生成の開始点となる。下端線７９で仮想頂点６１と最も近いのは仮想頂点６２である。後は上端線７８と下端線７９の仮想頂点を交互に結んでいき、最後は上端線７８の開始点６１に戻る。仮想頂点６１〜７６を利用して三角網を生成する。三角網の辺の中点を結ぶと仮想中心線が生成される。なお、円形状図形の場合、不整三角網が上下端線に交差してしまう図形が多い。その場合、前述の分岐点の場合の対応方法を使い、三角網生成を交差前の仮想頂点で終了し、次の仮想頂点から生成を開始する。
【００７５】
このような仮想中心線生成処理により、対象図形内に図形形状に即した最適な中心線を自動生成できる。したがって、分岐図形、円形状図形、カーブ図形等の複雑な図形においても中心線を生成することができる。
【００７６】
次に、補助線・内部点生成ルーチン（図３ステップＳ４）について、詳細に説明する。
補助線・内部点生成ルーチンでは、対象図形の形状や対象図形内に生成した仮想中心線を基に、補助線・内部点を生成する。地形形状によって補助線や内部点の形状や生成位置が異なるため、各生成対象図形に対応した処理ルーチンを実行する。
【００７７】
始めに、対象図形が人工斜面・土堤である場合の補助線の生成について説明する。人工斜面及び土堤の場合、補助線は長ケバと短ケバが交互に、射影幅の１／２間隔で表示される。上端線から下端線までの長さと、生成した仮想中心線を基に補助線を自動生成する。生成方法は仮想中心線の生成順番と同様に、上端線を起点として生成していく。長ケバは、仮想中心線には垂直に接続するが、上端線又は下端線とは必ずしも垂線の関係にならない。
【００７８】
図２０は、補助線（人工斜面、土堤）生成処理を示したフローチャートである。図２０について、図２１を参照しながら説明する。まず、図２１において、上端線８１上の始点８１ｓと終点８１ｅの中点又はその近傍の座標を取得する（ステップＳ１０１）。次いで、上端線８１上の中間点（Ａ点）を長ケバ上端として、Ａ点から仮想中心線８３へ垂線を下ろし（ステップＳ１０２）、その垂線の延長と下端線８２との交点（Ｂ点）を長ケバ下端として、長ケバ８４を生成する（ステップＳ１０３）。
【００７９】
上端線８１から下端線８２までの垂線の線分距離（長ケバ８４の長さ）を算出し（ステップＳ１０４）、上端線８１上の長ケバ上端（Ａ点）から長ケバ８４の長さ分だけ終点方向へ進んだ座標（Ｃ点）を取得する（ステップＳ１０５）。そして、取得した座標（Ｃ点）から仮想中心線８３へ垂線を下ろし（ステップＳ１０６）、垂線の延長と下端線８２との交点（Ｄ点）座標を取得し、次の長ケバ８５を生成する（ステップＳ１０７）。
【００８０】
次に短ケバ８６の生成について説明する。まず、先に生成した長ケバ８４及び次に生成した長ケバ８５各々と上端線８１との交点座標（Ａ点、Ｃ点）を取得する（ステップＳ１０８，１０９）。次に、上記２点間の中点座標（Ｇ点）を計算し、これを生成する短ケバの始点とする（ステップＳ１１０）。そして、先に取得した長ケバの中点（Ｅ点）と次に取得した長ケバの中点（Ｆ点）を計算し、これらを線分で結ぶ（ステップＳ１１１）。次に、上記線分の中点座標（Ｈ点）を計算し、これを生成する短ケバの終点とする（ステップＳ１１２）。最後に、上記短ケバ始点（Ｇ点）及び終点（Ｈ点）を線分で結び、短ケバ８６を生成する（ステップＳ１１３）。
【００８１】
上端線終点８１ｅまで補助線の繰り返し生成処理が終了したかどうかを判断し（ステップＳ１１４）、上端線終点８１ｅまでの繰り返し生成処理が終了していない場合は、ステップＳ１０４の処理に移行し、一連の補助線生成処理を繰り返す。上端線終点８１ｅまでの繰り返し生成処理が終了した場合、上端線８１上の中間点（Ａ点）を挟んで反対側（上端線始点方向）についても、同様にステップＳ１０４〜ステップＳ１１４の処理を行う（ステップＳ１１５）。最後に長ケバと短ケバが接続及び交差しないように間隔補正を行い（ステップＳ１１６）、補助線生成処理を終了する。
【００８２】
上述の上端線終点は、通常の上端線と下端線の接続端点の他、分岐点、分断点によるものなどがある。また、ステップＳ１１３において、人工斜面の急激な地形変化などによって生成した短ケバの長さが直前に生成した長ケバより長い場合、短ケバ終点を直前に生成した長ケバの半分の長さの位置とする。一方で、生成した短ケバの長さが一本目の長ケバより短い場合には、計算された位置を短ケバ終点とする。
【００８３】
図２２は、生成した補助線の例を示し、Ａは一般的な処理によるもの、Ｂは本例の処理によるものを表している。図２２Ａ，Ｂともに、図形幅、つまり上端線８７と下端線８８の間の距離が上端線始点８７ｓにかけて次第に短くなっている。図２２Ａの例では、図形幅が狭くなっていく部分においても、補助線のケバ同士の間隔が一定、例えば１：１になっている。これに対し、図２２Ａに示す本例の処理によるものは、図形幅が狭いところでは補助線の間隔も自然に狭くなるようにすることができる。但し、最小補助線長が１．０ｍｍ以上と設定されていた場合、図上１．０ｍｍ未満の補助線は生成されないので、図形幅が１．０ｍｍ未満のところは空白となる。この場合にあって、本例の処理によるものは、一般的な処理によるものよりも空白部分を少なくすることができる。
【００８４】
図２３は、図１７の対象図形内に生成した仮想中心線を利用して生成された補助線を示すものである。仮想中心線９１を利用して本例の補助線生成処理を行うことによって、複雑な形状に合わせた長ケバ９２及び短ケバ９３を生成することができる。
【００８５】
図２４は、円形状図形の場合（パターン２）の補助線生成例を示すものである。円形状図形の場合についても、上端線１０１とペアとなる下端線１０２の間に生成した仮想中心線を利用して補助線を生成する。上端線１０１の始点１０３を起点として補助線生成を開始し、上端線１０１の終点１０３まで補助線生成を行う（円周上を一周する）。
【００８６】
本例の補助線生成手法によれば、人工斜面及び土堤の他、長ケバ及び短ケバの長さを適宜変更することで、変形地の土がけ（崩土）、雨裂、急斜面に対応することができる。また、これら図式の補助線生成手法を応用することにより、岩がけの図式生成に応用することもできる。
【００８７】
岩がけの例を、図２５に示す。岩がけとは、岩石地ががけ状になっている状態をいい、頂部１０５を山型に、傾斜を示す短線１０６を頂部から最大傾斜方向に表示する。図２５及び図２６では説明の都合上、平坦に近い表示としている。例えば１／５００の大縮尺地図図式によれば、岩がけの短線１０６の間隔は４．０ｍｍ、頂部の高さ１．０ｍｍ、短線１０６の長さ５．０ｍｍと規定されている。射影部の下端は破線で表示する。
【００８８】
図２６は、本例の岩がけの図式生成の説明に用いる図である。上述同様に、上端線１０７及び下端線１０８の間に仮想中心線１０９を生成する。まず、上端線１０７上の中点付近（Ａ点）から上端線１０７上で距離４．０ｍｍ離れた座標（Ｂ点）を取得する。そして、上端線１０７上のＡ点及びＢ点から下端線１０８に向けて、仮想中心線１０９に垂直な線分を生成する。このときのＡ点及びＢ点から下ろした垂線の長さは６．０ｍｍとする。次に、Ａ点とＢ点の中点座標（Ｅ点）を取得する。また、Ａ点を上端とする垂線上でＡ点から距離１．０ｍｍ離れた座標（Ｃ点）、Ｂ点を上端とする垂線上でＢ点から距離１．０ｍｍ離れた座標（Ｄ点）をそれぞれ取得する。そして、上端線１０７上のＥ点とＣ点、及びＤ点を結ぶ。以上の一連の手順を、上端線１０７の始点及び終点まで繰り返し行うことにより、岩がけが生成される。
【００８９】
このように、上端線、下端線、そして生成した仮想中心線を利用して、岩がけの生成が可能である。作成した岩がけは、上端線と、頂部間の谷間部分（線分ＡＣ及び線分ＢＤ）が消去された状態で表示される。なお、以上述べた岩がけの生成手法は、上端線、下端線及び仮想中心線を利用した手法の一例を示したに過ぎず、この例に限られるものではない。
【００９０】
次に、対象図形がコンクリート被覆、ブロック被覆、石積被覆である場合の内部点の生成について説明する。大縮尺地図図式（１／５００、１／１０００）の被覆の内部点はブロック図形が違っているだけで、発生箇所（座標）と生成条件は同一であるため、同じルーチンで生成箇所を取得する。
【００９１】
図２７は、内部点生成処理を示したフローチャートである。図２７について、図２８，２９，３０を参照しながら説明する。図２８は、仮想中心線に対するオフセット線の生成例を示し、Ａはオフセット線発生前、Ｂはオフセット線発生後の状態を表す。図２８Ａに示すように、内部点を生成する対象図形１１０に対し、仮想中心線１１１が生成されている。この仮想中心線１１１に対し、等間隔にオフセットを取り線分を発生させる。以降の説明において、この線分をオフセット線と称する。オフセット線の間隔は初期設定で１．０ｍｍとする。この値は、設定により変更可能である。
【００９２】
図２８Ｂに示されるように、仮想中心線１１１から対象図形取得範囲（上端線、下端線）に向けオフセット線１１２を生成させていき、対象図形１１０に接続する箇所で生成を終了させる（ステップＳ１２１）。続いて、上端線から仮想中心線へ±４５度に交わる２つの線分を生成する（ステップＳ１２２）。ここで、仮想中心線に対するグリッド線の生成例を、図２９に示す。生成した仮想中心線１１１に対して入射角αの大きさが４５度の等間隔グリッド線１１３を生成していき、対象図形に対して菱形のグリッドを生成する。グリッドの間隔Ｌ１，Ｌ２は設定値によるが、例えば既定値で図上３．０ｍｍとする（１／５００の大縮尺地図図式の場合）。なお、入射角αは設定により変更できるようにしてもよい。また、２つの線分の入射角は、必ずしも一致している必要はない。
【００９３】
次に、グリッド線交点座標とオフセット線が交わる座標を取得する（ステップＳ１２３）。グリッド線１１３は、ステップＳ１２１にて生成したオフセット線上で交わるように調整されている。図２９では、仮想中心線１１１が完全な直線ではないため、オフセット線上にないグリッド線交点が存在することがある。この場合には、そこから最も近いオフセット線上に再配置しその座標を取得する（ステップＳ１２４）。そして、取得したオフセット線上のグリッド線交点座標及び再配置された交点座標に内部点を挿入する（ステップＳ１２５）。但し、交点座標を再配置する際も、内部点間の距離（設定値）が許容値内（０．１ｍｍ等）の誤差に収まるように計算する。
【００９４】
図３０は、対象図形１１０に対する内部点の配置例を示したものである。内部点１１５の位置はグリッド線交点座標とオフセット線が交わった点である。内部点１１５ａの位置は、グリッド線交点座標がオフセット線上になく、わずかに移動してオフセット線上に再配置されている。対象図形がカーブしていたり分岐していたりするとグリッドは必ずしも平行にならず、グリッド線の交点がオフセット線上にない場合が多くなる
【００９５】
対象図形がカーブしている例を、図３１に示す。図３１において、１１０ａは対象図形、１１２ａ１〜１１２ａ３及び１１２ｂ１〜１１２ｂ３はそれぞれ紙面下方の仮想中心線（図示略）に対するオフセット線であり、図形すなわち仮想中心線の曲がり具合に応じて折れ線になっている。１１３ａはオフセット線１１２ａ１，１１２ｂ１に対するグリッド線、１１３ｂはオフセット線１１２ａ２，１１２ｂ２に対するグリッド線である。図３２の例では、グリッド線交点１１３ｂ１はオフセット線上にないが、周辺の最も近いオフセット線１１２ｂ３上に交点座標が再配置され、内部点１１５ｂが挿入される。
【００９６】
このように、対象図形がカーブした図形では仮想中心線とグリッドもそれに応じてカーブしており、対象図形内に正確に所定角例えば４５度でグリッドを生成していくと、グリッド線交点は必ずしもオフセット上に存在しない。この場合でも、グリッド線交点から最も近いオフセット線上に内部点生成座標を配置することにより、カーブした図形にも対応して、内部点を配置することができる。
【００９７】
そして、ステップＳ１２５にて内部点を挿入した後、内部点同士が重ならないように間隔補正を行う（ステップＳ１２６）。例えば分岐図形やカーブ図形等でも分岐点付近などでオフセット線が重なるために、内部点が重なることがあるので、その場合は内部点のオフセット線上での再配置を行う。また、上端線又は下端線付近にある交点座標の内部点が上端線又は下端線に重なる箇所や、内部点が対象図形外にはみ出している箇所等、適切な位置にない内部点を補正し（ステップＳ１２７）、内部点生成処理を終了する。例えば図３０の例では、グリッド線交点１１６は対象図形の上端線（又は下端線）と重なるため内部点が配置されていない。
【００９８】
上述の内部点が対象図形外にはみ出している場合について、具体例を用いて説明する。図３２は、分岐パターンの場合のオフセット線生成例を示すものである。図３２の例では、対象図形１２０が分岐点１２６で分岐しており、それにともない仮想中心線１２１が仮想中心線１２１ａ、１２１ｂへと分岐している。分岐ポイント１２３ａ付近では、仮想中心線１２１から生成したオフセット線１２２が重なる。また、ポイント１２３ｂ，１２３ｃのように、対象図形の形状が急激に細くなった箇所では、オフセット線１２２が対象図形外に形成される。
【００９９】
図３３は、図３２の分岐ポイント付近の拡大図である。オフセット線１２２ａ及び１２２ｂが重なっている。内部点１２５ａ，１２５ｂのように、内部点が所定の距離内に配置された場合は、補正処理を行う。また、対象図形外に生成された内部点１２５ｃは削除する。
【０１００】
次に、対象図形が法面保護（網）、法面保護（モルタル）、法面保護（コンクリート桝）の場合の内部点生成処理について説明する。大縮尺地図図式の法面保護は、上端・下端の区別がなく１つのラインで外周（閉ループ）を形成するため、仮想中心線生成ルーチンで中心線情報を生成できない。そのため仮想中心線は利用せず対象図形の外周を基準として生成したオフセット線を利用して内部点を配置する。なお、３つの法面保護は内部点を表す図形が違っているだけで、発生箇所（座標）と生成条件は同一であるため同じルーチンで生成箇所を取得する。
【０１０１】
まず、対象図形検索ルーチンを使用し、図面内の法面保護の地形を検索して、パターン２の図形（円形状図形）をサーチする。１つのライングループで外周を形成（始点及び終点一致）した場合を通常パターン、ペアになっている場合はドーナツ形状パターンとする。
【０１０２】
図３４は、法面保護図形の例を示し、Ａは通常パターン、Ｂはドーナツ形状パターンを表している。通常パターンでは、１つのライングループ１３１で形成される図形内が内部点生成対象となる。一方、ドーナツ形状パターンは、内外判定を行い、１つのライングループ１３３の全頂点がもう１つのライングループ１３２内に含まれるドーナツ形状の図形を検索する。ドーナツ内側のライングループには内部点は生成しない。
【０１０３】
図３５は、法面保護図形内のオフセット線生成例を示すものであり、Ａは通常パターン、Ｂはドーナツ形状パターンを表す。検索された法面保護内部に等間隔でオフセットを取り、オフセット線を生成する。本例ではオフセット間隔は既定値で１．０ｍｍとする。この値は、設定により変更可能とする。オフセット線は、対象図形取得範囲（外周）から中心に向け生成させ、設定値によりこれ以上生成できない所で終了する。
【０１０４】
図３６は、法面保護図形内のグリッド生成例を示したものである。検索された法面保護図形、この例では通常パターン図形に対して頂点間隔が一番長い箇所の中点１３６の座標を取得する。そして、中点１３６を起点として対象図形１３１の外周上で最も長い線分に対し所定の入射角度、例えば４５度のグリッド線１３７を３ｍｍ間隔（設定値）で格子状に生成する。このように円形状図形の対象図形に対しては、起点から平行にグリッド（格子）を生成する。そして、対象図形内のグリッド線の交点とオフセット線が交わる点の座標を取得する。
【０１０５】
図３７は、法面保護図形内の内部点生成例を示したものである。対象図形内のグリッド線交点とオフセット線との交点座標上に、生成図式に対応する内部点を配置していく。この場合において、グリッド線交点とオフセット線が交わらないときは、仮想中心線を用いた図３１の例と同様、グリッド線交点から最も近いオフセット線上にその交点を移動して内部点を配置する。また、配置した内部点同士が重なる場合にはオフセット線上で間隔を補正して重ならないようにする。また、内部点が対象図形の外周に重なる箇所や内部点が対象図形外にはみ出している箇所を補正する。
【０１０６】
このように、仮想中心線が生成されない円形状ラインの場合、対象図形内にその外周に沿ってオフセット線を生成し、グリッド線交点とオフセット線の交わる点を内部点挿入位置とすることで、例えばカーブがあるような複雑な図形にも対応することができる。また、複雑な図形の場合には、オフセット線が図形の外周に対して必ずしも所定角（例えば４５°）とはならず、グリッド線交点とオフセット線が交わらないことがあるが、グリッド線交点から最も近いオフセット線上にその交点座標を移動して内部点を挿入することにより、内部点を適切に配置することができ、また内部点が外周に被ることもない。
【０１０７】
カーブ等の複雑な図形に関し、オフセット線を利用しない場合は、グリッド線交点により内部点が図形上に均一パターンで配置されるが外周に被る箇所は削除することになるので、その部分は間が空いたような状態になる。一方、本例のようにオフセット線を利用すると、内部点が外周に沿って生成されたオフセット線上に配置される（図３１参照）。したがって、本例と、オフセット線を利用せず単にグリッド線交点上に内部点を挿入した場合と比較すると、本例は内部点が外周に被らなくなるとともに、内部点を外周に沿った動きのある配置とすることができるので、対象図形に対して内部点を綺麗に配置できる。
【０１０８】
このような補助線・内部点生成処理により、大縮尺地図図式及び国土基本図図式に定められた補助線及び内部点を自動生成し、対象図形内の最適な箇所に配置される。したがって、図式を高精度で自動生成することができるので、オペレータが指定入力する手間を省くことができる。
【０１０９】
次に、３次元データへの応用として高度補正ルーチン（図３ステップＳ６）について、詳細に説明する。
高度補正ルーチンは、対象図形が高さの情報を持つ３次元データの場合、補助線・内部点生成後に高さ情報(Ｚ値)を計算させる処理である。補助線の場合は、上端部に接続する始点及び下端部に接続する終点の高さを補完計算する。内部点は生成時にＺ値を取得する。ただし、参照する図形自体には傾きを持たせない。この高度補正ルーチンは、補助線・内部点生成ルーチン（図３ステップＳ４）に含め、補助線・内部点生成時に高度補正が必要であれば、高さ（Ｚ情報）を自動的に計算させるようにしてもよい。
【０１１０】
図３８は、補助線生成後の図形（人工斜面）の例を示し、Ａは平面図、Ｂは斜視図（３次元）である。この例は、Ｔ字路の道路１４０の両脇に人工斜面１４１が形成された地形である。図３８Ｂの斜視図では、人工斜面１４１が立体的に表示される。
【０１１１】
図３９は、人工斜面を例にした高度補正処理の流れを示すフローチャートであり、このフローチャートについて、図４０，４１を参照しながら説明する。まず、対象図形から各頂点の三次元座標値（Ｚ座標）を取得し（ステップＳ１４１）、各頂点間の線分を３次元情報として取得する（ステップＳ１４２）。例えば、図４０において、対象図形１４２を構成する上端線及び下端線上の各頂点間の上端線分１４３、下端線分１４４，１４５，１４６を３次元情報として保持する。
【０１１２】
次に、長ケバの端点座標を上端線及び下端線の線上（Ｚ座標）に合わせる（ステップＳ１４３）。同時に、短ケバの端点座標を上端線の線上（Ｚ座標）に合わせ（ステップＳ１４４）、それぞれの接続点の３次元座標値を取得して高度補正処理を終了する。補助線・内部点生成ルーチンによる補助線発生時、上端線及び下端線に接続する補助線端点座標は、上記ステップＳ１４２で生成した頂点間線分情報により３次元座標値で求めることができる。
【０１１３】
図４１は、図４０に示した上端線分１４３（高さ１８．１８６〜１８．６８９）間に接続した補助線の高さ、及び下端線分１４４〜１４６（高さ１４．０６０〜１４．２６２）間に接続した補助線の高さを表している。例えば、長ケバ１４７について、上端線分及び下端線分とのそれぞれの交点１４７ａ，１４７ｂ、また短ケバ１４８についても上端線分との交点１４８ａが求められる。なお、短ケバ終端の３次元座標値についても求めることができる。短ケバ１４８ｂの終端座標１４８ｂは、補助線生成処理時に計算した二等分線及び短ケバの長さを用いて算出することができる。
【０１１４】
このように、端点座標を３次元座標値で取得することにより、補助線は３次元で角度を持った３Ｄラインで生成される。図４２は、補助線生成後の図形について視点を切り替えて表示した例を示し、Ａは平面図、Ｂは斜視図（３次元）である。図４２中の１４０は対象図形（人口斜面）、１４９は道路を表している。３次元地図データの場合、上から見ると通常の２次元地図と変わらないが、全ての線分が高さ情報を持つため、視点を変えて図面を表示した場合、人工斜面等の図式は傾きを持って表示される。
【０１１５】
このような高度補正処理により、３次元情報を取得し、図式生成時に３次元データ化を行うことができるので、高度な技術を必要とする３Ｄデータ編集を自動化することができる。
【０１１６】
次に、整合性処理ルーチン（図３ステップＳ７）について、詳細に説明する。
整合性処理ルーチンは、図面内で生成した補助線、内部点の整合性をチェックし自動的に補正処理を行うものである。補助線・内部点生成ルーチンにおいて生成した補助線の端点が接続している場合や交差が見つかった場合等の間隔補正、また発生した内部点同士の重なり、対象図形と内部点との重なり、又は対象図形からのはみ出し等を検査して最適位置に配置し直す処理が存在する。また、検索された生成対象のラインまたはライングループの入力方向が逆方向の場合、入力規則に則った方向へ自動変換する処理も行う。
【０１１７】
ここで、上記逆方向補正について説明する。ライングループの座標一致調査の際、ライングループの入力方向を検査し、同一対象図形上でライングループの始点と始点、終点と終点で座標が一致しているライングループは、入力方向エラーとして判別する。例えば、地形図入力には、上端線は低い方を右に、下端線は高い方を右に取得するという入力規則が存在する。上述の対象図形検索ルーチンで、入力方向が逆（接続端点で上下端線の始点と始点、終点と終点同士が一致）になったパターンが検索された際、ライン又はライングループの入力方向が正しくなるように入力方向を入れ替える。
【０１１８】
また、ラインが高さ情報（Ｚ値）を持つ場合は、以下の補正ルールを適用する。第一に、片方の接続端点より低い端点で始点同士が接続、又は片方の接続端点より高い端点で終点同士が接続している場合には、下端線の入力方向が逆になっているので、下端線の入力方向を入れ替える。第二に、片方の接続端点より高い端点で始点同士が接続、又は片方の接続端点より低い端点で終点同士が接続している場合には、上端線の入力方向が逆になっているので、上端線の入力方向を入れ替える。
【０１１９】
このような整合性処理を行うことにより、図式の自己交差、入力方向等、エラー箇所を機械的に判別し、自動補正することができる。したがって、オペレータの目視チェック、修正作業を自動化することができる。
【０１２０】
次に、処理結果生成ルーチン（図３ステップＳ８）について、詳細に説明する。
図形形状（座標等の地理的な幾何情報）と、本例の図式生成処理の過程で生成された図式生成情報（補助線の総数、内部点の総数、座標情報等）、エラー内容、補正情報数等をカウントし、ＣＳＶファイル等の外部ファイルに出力する。抽出されたデータは自動生成後の図面上で、エラー箇所の表示等の情報として利用される。
【０１２１】
図４３は、上記処理結果生成処理の概要を説明する図である。図４３において、図式生成がなされていない図式生成前図面１５１に対し、対象図形検索ルーチン、仮想中心線生成ルーチン及び補助線・内部点生成ルーチン等の図式自動生成処理１５２を行い、図式生成後図面１５３を作成する。その後、図式生成後図面１５３に対し、整合性処理ルーチンによる補正処理１５４、エラー検索１５５を行った後、座標や生成情報等を抽出した抽出データ１５６としてＣＳＶファイル形式で保存する。そして、ディスプレイ上にＣＳＶファイルの抽出データ１５６の検索ダイアログ１５７を表示する。これにより、抽出した情報をディスプレイ上のグリッドに表示し、所望する箇所を選択することによって図面上の当該箇所を表示することができる。また、検索結果を補正後図面１５８と共に不揮発性メモリ等に保存することも可能である。
【０１２２】
なお、図式自動生成処理１５２が終了後、補正処理１５４及びエラー検索１５５を実施せず、ＣＳＶファイルに変換し抽出データとする場合もある。また、補正処理１５４及びエラー検索１５５が終了後、ＣＳＶファイル等の外部ファイルに出力せずに補正後図面１５８として保存することもできる。
【０１２３】
このような処理結果生成処理によって、図形形状（座標等の地理的な幾何情報）、本例による自動処理情報（図式生成、補正、エラー情報）を抽出し、外部ファイルに蓄積させて利用することができる。したがって、ＣＡＤ（Computer Aided Design）やＧＩＳ（Geographical Information System）がなくても図式情報（座標情報）の生成、再利用が可能となる。
【０１２４】
以上、述べた本例の構成によれば、対象図形検索処理、仮想中心線生成処理、補助線・内部点生成処理、高度補正処理、整合性処理、処理結果生成処理の各処理をルーチン化することにより、統括したモジュールとしてシステムを提供することができる。例えば、本システムを、自動処理機能を利用するマンマシンインターフェースとコアモジュール（自動生成機能モジュール）との簡単な構成で実現することができる。
【０１２５】
次に、図上指定モードについて、図４４及び図４５を参照して説明する。
図上指定モードとは、オペレータが補助線・内部点を生成・配置したい対象図形を選択・指定し、図式を生成できる機能である。図式自動生成機能の全体処理フローにおいて（図３参照）、自動生成処理対象図形として判断されなかった場合、すなわちエラー図形（パターン５）のときに、図上指定モードに切り替えて手動で図形を選択する。図上で手動により図形を選択できるようにするため、自動生成機能ＧＵＩ６（図２参照）に上下端線や点列を指定できるメニューを用意しておく。
【０１２６】
また、本システムでは、図形の分岐数が多いなど形状が複雑になるにつれ、補助線や内部点の生成・配置精度が落ちるので、自動生成した図式が理想形状とならないことがある。そのため、後にオペレータが画面上で確認し、補助線や内部点の修正等の形状補正処理を手動で行わなければならないといった場合が生じる。そこで、本システムではさらに、図形を選択時に予め図形の分岐数や円形状図形の数を指定して、指定した図形について手動で始終点を指定する機能を設ける。
【０１２７】
図４４及び図４５は、それぞれ図上指定モードの全体処理（その１）（その２）を示す。図４５，４６における対象図形検索ルーチン、仮想中心線生成ルーチン、補助線・内部点生成ルーチン、高度補正ルーチン、整合性処理ルーチン、処理結果生成ルーチンは、図３に示されたものと同様の処理内容であるから、説明は省略する。
【０１２８】
図４４において、まず、人工斜面、土堤、土がけ、雨裂、急斜面、岩がけ、各被覆図形などの自動生成可能な図面の中から、オペレータが図式生成したい図形形状を選択する（ステップＳ１５１）。この際に、人工斜面などの分岐数を指定できる図形であれば、手動で始終点を指定する分岐数のしきい値を指定する。また、円形状の図形であれば、その円形状図形の数を指定するようにしてもよい。
【０１２９】
自動生成機能モジュール５ａはオペレータからの入力を受けて、選択された図形形状について対象図形検索ルーチンの処理を行い、図形のパターン分類を行う（ステップＳ１５２）。そして、パターン分類した結果に基き、自動生成処理対象図形であるかどうかを判断する（ステップＳ１５３）。自動生成処理対象図形かどうかは、エラー図形（パターン５）でないか、またはパターン１〜４に分類された図形うち、上記しきい値を超える分岐又は円を持つ図形でないかを基準に判断される。また、指定したしきい値と同じ数の分岐又は円形状の図形を手動モードの対象としてもよい。いずれにするかはメニュー画面上で選択できるようにしておく。
【０１３０】
判断ステップＳ１５３にて、自動生成処理対象図形であると判断した場合、補助線・内部点を生成するかどうか判定（ステップＳ１５４）し、補助線・内部点を自動的に生成する場合には、仮想中心線生成ルーチンへ移行する。補助線・内部点を自動的に生成しない場合、始終点指定ルーチンへ移行する。
【０１３１】
判断ステップＳ１５３にて、上記判断基準により自動生成処理対象図形ではないと判断した場合、その図形形状によって処理工程が二つに分かれる。また、図３の図式自動生成機能の全体処理フローにおいて自動生成処理対象図形ではないと判断された場合も、この処理工程に合流する。
【０１３２】
自動生成処理対象図形でない場合、その図形がパターン５のエラー図形であるときは、オペレータによる位置指定を行う始終点指定ルーチンへ直接移行する。
【０１３３】
また、自動生成処理対象図形でない場合、その図形が上記指定した条件に該当する図形であるときは、図式生成する始終点を指定するかどうかをオペレータに判断させる（ステップＳ１５５）。オペレータは、画面表示された図形を見て始終点を手動指定する図形を絞ったり、あるいは画面上で特定の図形を指定して手動による始終点指定を選択するなど、の操作が可能になる。また、図３のステップＳ２から移行してきた場合を考えると、図形を確認して、例えば分岐数はそれほど多くはないが複雑な図形なのでやはり手動で始終点を指定したい、と判断して始終点を手動指定することもできる。このように、自動で図式生成を行なう場合、ＮＯを選択してステップＳ１５４の処理へ移行し、また、オペレータの指示により始終点を指定する場合には、ＹＥＳを選択して始終点指定ルーチンへ移行する。
【０１３４】
始終点指定ルーチンは、４つの処理工程から構成されている。まず、図式生成したい図形の上端線始点を指定する（ステップＳ１５６）。続いて下端線始点を指定し（ステップＳ１５７）、さらに上端線終点を指定し（ステップＳ１５８）、最後に下端線終点を指定する（ステップＳ１５９）。そして、上端線及び下端線のそれぞれの始終点を指定したら、図４５に示す仮想中心線生成ルーチンへと移行する。
【０１３５】
仮想中心線生成ルーチンでは指定された図形を図式生成対象図形として認識し、仮想中心線が生成される（ステップＳ１６０）。続いて補助線・内部点生成ルーチン（ステップＳ１６１）、高度補正が必要かどうかの判断処理（ステップＳ１６２）、高度補正ルーチン（ステップＳ１６３）、整合性処理ルーチン（ステップＳ１６４）が行われる。これらステップＳ１６０からステップＳ１６４までの処理の流れは、図３に示したステップＳ３〜ステップＳ７と同じである。
【０１３６】
次に、整合性処理ルーチンにより検索されたエラー又は補正処理できなかった図形形状について、形状補正が必要かどうかを判断する（ステップＳ１６５）。必要でない場合、処理結果生成ルーチンの処理を行い（ステップＳ１６８）、図上指定モードを終了する。
【０１３７】
上記判断ステップＳ１６５において、形状補正が必要と判断した場合、エラー箇所の補助線・内部点を削除するかどうかをオペレータに判断させる（ステップＳ１６６）。オペレータから削除する旨の入力操作があった場合、手動による補助線・内部点削除ルーチンの処理を行う（ステップＳ１６７）
【０１３８】
補助線・内部点削除ルーチンは、自動生成処理の過程で生成された補助線・内部点や、すでに生成されている補助線・内部点を一括で削除できる機能を備える。また、削除したい形状の上端線及び／又は下端線を図面上で指定して接続している補助線・内部点を自動的に削除するマニュアルモードを用意している。
【０１３９】
ステップＳ１６７における補助線・内部点削除ルーチン終了後は、始終点指定ルーチンへ移行する。また、判断ステップＳ１６６において補助線・内部点を削除しないと判断された場合も始終点指定ルーチンへ移行する。そして、上端線及び下端線の始終点の指定を行い、一連の処理を繰り返す。
【０１４０】
この図上指定モードを用意することにより、本例の地図図式生成過程において、自動生成処理対象外の図形を検索した場合など、必要なときに手動操作による図形形状の指定が可能になる。また、複雑な形状をしている図形は図式自動生成後に繰り返し形状補正処理を行うことによって、最適な図式を生成することができる。
【０１４１】
また、予め手動で指定する図形を決めておくことにより、自動図式生成処理した後に、再度生成された形状を手動で補正する必要がない。つまり、始めから手動モードで始終点を指定することで、無駄に自動生成処理する時間のロスが省けるという効果がある。
【０１４２】
次に、本発明の他の実施の形態として、手動モードに移行するしきい値（分岐数又は円形状図形の数）を予め不揮発メモリに登録した場合について述べる。図３のフローチャートにおいて、予めしきい値となる分岐数や円形状図形の数を設定しておくと、エラー図形に加え、上記条件を満たす図形を検出したとき、図３のステップＳ２から図４４のステップＳ１５５へ移行する。オペレータは、画面上の図形を確認して、始終点を手動指定とするかどうかを選択することができる。このように、図３のフローチャートにおいて、予めしきい値を設定しておいた場合、エラー図形以外の所定の条件を満たす図形について手動での始終点指定を行なうかどうかを選択することができる。
【０１４３】
以上述べた構成によれば、自動的に地図形状の分析及び判断を行って地図形状をパターン分類し、パターン分類された図式生成対象図形を抽出し、そして、抽出した図形の仮想中心線の生成、その仮想中心線を利用した図式生成を機械的に計算し自動化したので、地図作成作業を支援することができる。
【０１４４】
また、対象図形検索ルーチンにおいて、パターン分類、及び上端線と下端線端点座標との一致数を計算する構成としたので、パターン分類及び端点座標の一致箇所の数を利用し、予め所定の条件を指定してその条件を満たす所望の図形について、手動による始終点指定を行なうことができる。したがって、指定した図形について、オペレータが希望する図式又はそれに近い理想の図形を生成することができる。
【０１４５】
なお、本発明は上述した実施の形態の例に限られるものではなく、本発明の要旨を逸脱することなくその他種々の構成を取り得ることは勿論である。
【図面の簡単な説明】
【０１４６】
【図１】補助線（人工斜面）の一例を示した図である。
【図２】本発明の一実施の形態によるシステム概念図である。
【図３】本発明の一実施の形態による自動生成機能の全体処理を示したフローチャートである。
【図４】本発明の一実施の形態による対象図形例（パターン１）を示した図である。
【図５】本発明の一実施の形態による対象図形例（パターン２）を示した図である。
【図６】本発明の一実施の形態による対象図形例（パターン３）を示した図である。
【図７】本発明の一実施の形態による対象図形例（パターン４）を示した図である。
【図８】本発明の一実施の形態による対象図形例（パターン５）を示した図である。
【図９】本発明の一実施の形態による対象図形検索処理（その１）を示したフローチャートである。
【図１０】本発明の一実施の形態による対象図形検索処理（その２）を示したフローチャートである。
【図１１】本発明の一実施の形態による座標調査処理を示したフローチャートである。
【図１２】本発明の一実施の形態による円形状ライン比較処理を示したフローチャートである。
【図１３】自己交差例を示した図である。
【図１４】ライン同士の交差例を示した図である。
【図１５】本発明の一実施の形態による仮想中心線生成処理を示したフローチャートである。
【図１６】本発明の一実施の形態による不整三角網の生成例を示した図である。
【図１７】本発明の一実施の形態による仮想中心線の生成例を示した図である。
【図１８】本発明の一実施の形態による不整三角網が上下端線に交差する際の対応例を示した図である。
【図１９】本発明の一実施の形態による円形状図形の場合の不整三角網生成例を示した図である。
【図２０】本発明の一実施の形態による補助線（人工斜面、土堤）生成処理を示したフローチャートである。
【図２１】本発明の一実施の形態による補助線生成例を示した図である。
【図２２】本発明の一実施の形態による補助線の例を示した図である。
【図２３】本発明の一実施の形態による補助線生成後の図形例を示した図である。
【図２４】本発明の一実施の形態による円形状図形の場合の補助線生成例を示した図である。
【図２５】岩がけの例を示した図である。
【図２６】本発明の一実施の形態による岩がけの図式生成の説明に供する図である。
【図２７】本発明の一実施の形態による内部点生成処理を示したフローチャートである。
【図２８】本発明の一実施の形態による仮想中心線に対するオフセット線生成例を示した図である。
【図２９】本発明の一実施の形態による仮想中心線に対するグリッドの生成例を示した図である。
【図３０】本発明の一実施の形態による内部点の配置例を示した図である。
【図３１】本発明の一実施の形態による対象図形がカーブした場合の内部点の配置例を示した図である。
【図３２】本発明の一実施の形態による分岐パターンの場合のオフセット線生成例を示した図である。
【図３３】図３２の要部の拡大図である。
【図３４】本発明の一実施の形態による法面保護図形の一例を示した図である。
【図３５】本発明の一実施の形態による法面保護図形内のオフセット線生成例を示した図である。
【図３６】本発明の一実施の形態による法面保護図形内のグリッド生成例を示した図である。
【図３７】本発明の一実施の形態による法面保護図形内の内部点生成例を示した図である。
【図３８】本発明の一実施の形態による補助線生成後の図形（人工斜面）の例を示した図である。
【図３９】本発明の一実施の形態による高度補正処理を示したフローチャートである。
【図４０】本発明の一実施の形態による高度補正処理の説明図（１）である。
【図４１】本発明の一実施の形態による高度補正処理の説明図（２）である。
【図４２】本発明の一実施の形態による補助線生成後の図形の視点を切り替えた例である。
【図４３】本発明の一実施の形態による処理結果生成処理を示したフローチャートである。
【図４４】本発明の一実施の形態による図上指定モードの全体処理（その１）を示したフローチャートである。
【図４５】本発明の一実施の形態による図上指定モードの全体処理（その２）を示したフローチャートである。
【符号の説明】
【０１４７】
１，１１，１５，１９，２１，２７，２９，７８，８１，８７，１０１，１０７…上端線、２，１２，２０，２２，２８，３０，７９，８２，８８，１０２，１０８…下端線、３，８４，８５，９２，１４５…長ケバ（補助線）、４，８６，９３，１４６…短ケバ（補助線）、５ａ…自動生成機能モジュール、６…自動生成機能ＧＵＩ、７…図形データベース、８…出力結果ログ、９…操作部、１３，１４，１７，１８，２３〜２６，３１〜３３，９５，１０３，１３１ａ…端点、３４…図郭線、３５，３６…分断点、３７，１３１〜１３３…ライン、３８，３９…独立端点、４３，４４，４５…辺、４６，４７…三角形、４８…中点、５１，５２，５３，８３，９１，１０４，１０９，１１１，１２１，１２１ａ，１２１ｂ…仮想中心線、５１ｓ，５２ｓ，５３ｓ…仮想中心線始点、５１ｅ，５２ｅ，５３ｅ…仮想中心線終点、８１ｓ，８７ｓ…上端線始点（端点）、８１ｅ…上端線終点（端点）、１１２，１２２，１２２ａ，１２２ｂ，１３４，１３５…オフセット線、１１３，１３７…グリッド線、１１５，１２５，１２５ａ，１２５ｂ，１２５ｃ，１３８…内部点、１２６…分岐点、１２６ａ…仮想中心線の分岐点、１３６…グリッド起点、Ａ１〜Ａ１３，Ｂ１〜Ｂ１８…仮想頂点、Ｌ１，Ｌ２…グリッド間隔、α…入射角
【図１】
2006127431.tif 000003
【図２】
2006127431.tif 000004
【図３】
2006127431.tif 000005
【図４】
2006127431.tif 000006
【図５】
2006127431.tif 000007
【図６】
2006127431.tif 000008
【図７】
2006127431.tif 000009
【図８】
2006127431.tif 000010
【図９】
2006127431.tif 000011
【図１０】
2006127431.tif 000012
【図１１】
2006127431.tif 000013
【図１２】
2006127431.tif 000014
【図１３】
2006127431.tif 000015
【図１４】
2006127431.tif 000016
【図１５】
2006127431.tif 000017
【図１６】
2006127431.tif 000018
【図１７】
2006127431.tif 000019
【図１８】
2006127431.tif 000020
【図１９】
2006127431.tif 000021
【図２０】
2006127431.tif 000022
【図２１】
2006127431.tif 000023
【図２２】
2006127431.tif 000024
【図２３】
2006127431.tif 000025
【図２４】
2006127431.tif 000026
【図２５】
2006127431.tif 000027
【図２６】
2006127431.tif 000028
【図２７】
2006127431.tif 000029
【図２８】
2006127431.tif 000030
【図２９】
2006127431.tif 000031
【図３０】
2006127431.tif 000032
【図３１】
2006127431.tif 000033
【図３２】
2006127431.tif 000034
【図３３】
2006127431.tif 000035
【図３４】
2006127431.tif 000036
【図３５】
2006127431.tif 000037
【図３６】
2006127431.tif 000038
【図３７】
2006127431.tif 000039
【図３８】
2006127431.tif 000040
【図３９】
2006127431.tif 000041
【図４０】
2006127431.tif 000042
【図４１】
2006127431.tif 000043
【図４２】
2006127431.tif 000044
【図４３】
2006127431.tif 000045
【図４４】
2006127431.tif 000046
【図４５】
2006127431.tif 000047