(57)【要約】【課題】  一つ又は複数の近傍の特定点の標高に依存して格子点の標高を補正する。【解決手段】  プログラム４０内の探索部４１が二つの異なる標高の等高線点列間に位置する傾斜地格子点について、当該一対の等高線点列上にある複数の近傍点を検出し、標高計算部４２がこれらの近傍点の位置と標高に基づいて当該傾斜地格子点の標高を決定する。補正標高決定部４３が、一対の等高線点列間に位置する少なくとも一つの傾斜地特定点が近傍に存在し、当該一対の等高線点列間に位置する補正対象傾斜地格子点について、前記傾斜地特定点の近傍に位置すべき、当該補正対象傾斜地格子点に対応する格子点対応点の標高を決定し、当該格子点対応点の標高と当該格子点対応点と当該補正対象傾斜地格子点との間の位置関係とに依存して、当該補正対象傾斜地格子点の補正された標高を決定する。【選択図】図１
2005173681.tif 000002
【特許請求の範囲】
【請求項１】
２次元等高線地図内の複数の等高線のそれぞれを点列で表す等高線点列データと、当該地図内に位置する、それぞれ位置と標高があらかじめ決定された複数の特定点の位置と標高を表す特定点データと、当該地図を分割して得られる複数のメッシュのいずれかの頂点である複数の格子点のそれぞれの位置を表す格子点データとから、前記複数の格子点のそれぞれの位置での標高を表す標高データを生成可能なプログラムであって、
前記複数の格子点のうちのそれぞれ二つの異なる標高の等高線点列間に位置する複数の傾斜地格子点の各々について、当該傾斜地格子点が間に位置する一対の等高線点列を少なくとも含む複数の等高線点列上にある複数の近傍点を、前記等高線点列データと前記格子点データとに基づいて検出する傾斜地格子点用の近傍点検出ステップと、
前記複数の特定点のうちのそれぞれ二つの異なる標高の等高線点列間に位置する複数の傾斜地特定点の各々について、当該傾斜地特定点が間に位置する一対の等高線点列を少なくとも含む複数の等高線点列上にある複数の近傍点を、前記等高線点列データと前記特定点データとに基づいて検出する傾斜地特定点用の近傍点検出ステップと、
前記複数の傾斜地格子点のうち、一対の等高線点列の間に位置する少なくとも一つの傾斜地特定点が近傍に存在し、当該一対の等高線点列の間に位置し、当該少なくとも一つの傾斜地特定点の標高に依存するように補正された標高を決定されるべき、当該少なくとも一つの傾斜地特定点を補正元傾斜地特定点とする補正対象傾斜地格子点に関して、当該補正対象傾斜地格子点に対して傾斜地格子点用の前記近傍点検出ステップで検出された複数の近傍点と当該補正対象傾斜地格子点とを結ぶ第１種の線上における当該補正対象傾斜地格子点の位置を表す位置情報を検出する位置情報検出ステップと、
前記補正元特定点に対して前記傾斜地特定点用の近傍点検出ステップで検出された前記複数の近傍点と当該補正元傾斜地特定点とを結ぶ第２種の線上の、前記補正対象格子点に対して検出された前記位置情報に対応する位置情報を有する、前記補正対象格子点に対応する前記第２種の線上の点である格子点対応点における標高を、前記補正元特定点に対して前記傾斜地特定点用の近傍点検出ステップで検出された前記複数の近傍点のそれぞれの標高と前記第２種の線上の位置と、当該補正元傾斜地特定点の標高と前記第２種の線上の位置と、当該格子点対応点の前記第２種の線上の位置とに基づいて決定する格子点対応点標高決定ステップと、
前記補正対象傾斜地格子点に対して前記傾斜地格子点用の近傍点検出ステップで検出された前記複数の近傍点のそれぞれの標高と前記第１種の線上の位置と、当該補正対象格子点の前記第１種の線上の位置と、前記格子点対応点標高決定ステップで決定された、当該補正対象格子点に対応する前記第２種の線上の前記格子点対応点の前記標高と、当該格子点対応点と前記補正対象格子点との間の前記地図上の位置関係とに依存して、当該補正対象格子点の補正された標高を決定する補正標高決定ステップと、
をコンピュータに実行させることを特徴とする標高データを生成可能なプログラム。
【請求項２】
前記補正標高決定ステップは、
前記補正対象傾斜地格子点に対して前記傾斜地格子点用の近傍点検出ステップで検出された前記複数の近傍点のそれぞれの標高と前記第１種の線上の位置と、当該補正対象格子点の前記第１種の線上の位置とに依存して、前記補正対象格子点に対する補正前の標高を決定する補正前格子点標高決定ステップと、
当該決定された補正前の標高と、前記格子点対応点標高決定ステップで決定された、当該補正対象格子点に対応する前記第２種の線上の前記格子点対応点の前記標高と、当該格子点対応点と前記補正対象格子点との間の前記地図上の前記位置関係とに依存して、当該補正対象格子点に対して決定された前記補正前の標高を補正する標高補正ステップと、
を含むことを特徴とする請求項１に記載の標高データを生成可能なプログラム。
【請求項３】
前記補正前格子点標高決定ステップは、
前記前記第１種の線上の点における標高を表す前記補正対象傾斜地格子点用の標高計算式を、当該補正対象傾斜地格子点に対して前記傾斜地格子点用の近傍点検出ステップで検出された前記複数の近傍点のそれぞれの標高と前記第１種の線上の位置とに依存して決定する補正対象傾斜地格子点用の標高計算式決定ステップと、
前記補正対象傾斜地格子点における前記標高を、当該決定された補正対象傾斜地格子点用の標高計算式と前記第１種の線上の前記補正対象傾斜地格子点の位置とに基づいて計算する格子点標高計算ステップと、
を含むことを特徴とする請求項２に記載の標高データを生成可能なプログラム。
【請求項４】
前記格子点対応点標高決定ステップは、
前記前記第２種の線上の点における標高を表す前記補正元特定点用の標高計算式を、前記補正元特定点に対して前記傾斜地特定点用の近傍点検出ステップで検出された前記複数の近傍点のそれぞれの標高と前記第２種の線上の位置と、当該補正元傾斜地特定点の標高と前記第２種の線上の位置とに基づいて決定する特定点用の標高計算式決定ステップと、
前記格子点対応点における標高を、当該決定された前記補正元特定点用の標高計算式と前記第２種の線上の前記格子点対応点の位置とに基づいて計算する格子点対応点標高計算ステップと、
を含むことを特徴とする請求項１から３の一つに記載の標高データを生成可能なプログラム。
【請求項５】
いずれかの傾斜地格子点に対して補正元特定点となる複数の傾斜地特定点がある場合には、前記格子点対応点標高決定ステップは、当該複数の補正元傾斜地特定点のそれぞれに関して実行され、それにより、当該複数の補正元傾斜地特定点の一つにそれぞれ対応して前記補正対象格子点に対応する複数の格子点対応点の標高が決定され、
前記補正標高決定ステップは、前記補正対象傾斜地格子点に対して前記傾斜地格子点用の近傍点検出ステップで検出された前記複数の近傍点のそれぞれの標高と前記第１種の線上の位置と、当該補正対象格子点の前記第１種の線上の位置と、前記複数の補正元傾斜地特定点の各々に対して前記格子点対応点標高決定ステップで決定された、当該補正対象格子点に対応する前記複数の補正元傾斜地特定点の各々に関連する前記第２種の線の上の前記格子点対応点の前記標高と、前記複数の補正元傾斜地格子点に対応する複数の格子点対応点の各々と前記補正対象格子点との間の前記地図上の位置関係とに依存して、当該補正対象格子点の補正された標高を決定する、
ことを特徴とする請求項１から４の一つに記載の標高データを生成可能なプログラム。
【請求項６】
前記位置関係は、前記格子点対応点と前記補正対象格子点との間の前記地図上での距離である、ことを特徴とする請求項１から５の一つに記載の標高データを生成可能なプログラム。
【請求項７】
前記傾斜地格子点用の近傍点検出ステップで各傾斜地格子点に対して検出される前記複数の近傍点は、当該傾斜地格子点から見て最急方位に位置し当該傾斜地格子点から見て互いに逆方向に位置し、それぞれ等高線点列上に位置する一対の最急方位点と、当該一対の最急方位点の一方に対して当該傾斜地格子点とは逆方向に位置し、当該一方の最急方位点からみて最急方位にあり、それぞれ当該一方の最急方位点が位置する等高線点列とは異なる標高の等高線点列上に位置する一対の２次最急方位点を含み、
前記傾斜地特定点用の近傍点検出ステップで各傾斜地特定点に対して検出される前記複数の近傍点は、当該傾斜地特定点から見て最急方位に位置し当該傾斜地特定点から見て互いに逆方向に位置し、それぞれ等高線点列上に位置する一対の最急方位点と、当該一対の最急方位点の一方に対して当該傾斜地特定点とは逆方向に位置し、当該一方の最急方位点からみて最急方位にあり、それぞれ当該一方の最急方位点が位置する等高線点列とは異なる標高の等高線点列上に位置する一対の２次最急方位点を含む、
ことを特徴とする１から６の一つに記載の標高データを生成可能なプログラム。
【請求項８】
２次元等高線地図内の複数の等高線のそれぞれを点列で表す等高線点列データと、当該地図内に位置する、それぞれ位置と標高があらかじめ決定された複数の特定点の位置と標高を表す特定点データと、当該地図を分割して得られる複数のメッシュのいずれかの頂点である複数の格子点のそれぞれの位置を表す格子点データとから、前記複数の格子点のそれぞれの位置での標高を表す標高データを生成可能なプログラムであって、
前記複数の格子点のうち、単一の等高線点列により実質的に囲まれている格子点である複数の平地格子点の各々に対して当該単一の等高線点列とその外側の他の少なくとも一つの等高線点列を含む複数の標高が異なる等高線点列上に位置する、当該平地格子点の複数の近傍点を検出する平地格子点用の近傍点検出ステップと、
前記複数の特定点のうち、単一の等高線点列により実質的に囲まれている特定点である少なくとも一つの平地特定点に対して当該単一の等高線点列とその外側の他の少なくとも一つの等高線点列を含む複数の標高が異なる等高線点列上に位置する、当該平地特定点の複数の近傍点を検出する平地特定点用の近傍点検出ステップと、
前記少なくとも一つの特定点の近傍に位置し、当該特定点を実質的に囲む単一の等高線点列により実質的に囲まれている平地格子点を補正対象平地格子点として検出する補正対象検出ステップと、
前記少なくとも一つの平地特定点に対して検出された前記複数の近傍点と当該平地特定点を結ぶ点列に対応する、３次元の地形上の第１の点列のそれぞれの点の３次元の位置と、前記検出された補正対象平地格子点に対して検出された前記複数の近傍点を含む点列に対応する、当該地形上の第２の点列のそれぞれの点の３次元の位置とに依存して、前記検出された補正対象平地格子点の標高として、当該平地特定点の標高により補正された標高を決定する補正標高決定ステップと、
をコンピュータに実行させることを特徴とする標高データを生成可能なプログラム。
【請求項９】
前記平地格子点用の近傍点検出ステップは、前記検出された補正対象平地格子点に対する前記複数の近傍点として、当該補正対象平地格子点の近傍にあり前記単一の等高線点列上に位置し当該平地格子点から見て第１の方向に位置する近傍点及び当該単一の等高線点列上の外側にある近傍の等高線点列上に位置する当該近傍点の近傍点とを含む一組の近傍点と、当該平地格子点の近傍にあり前記単一の等高線点列上に位置し当該平地格子点から見て前記第１の方向とは逆の第２の方向に位置する他の近傍点及び当該単一の等高線点列上の外側にある他の近傍の等高線点列上に位置する当該他の近傍点の近傍点とを含む他の一組の近傍点のうち、前記単一の等高線点列上の近傍点が前記平地特定点から見て遠方に位置する一組の近傍点を少なくとも検出し、
前記平地特定点用の近傍点検出ステップは、前記少なくとも一つの平地特定点に対する前記複数の近傍点として、当該平地特定点の近傍にあり前記単一の等高線点列上に位置し、当該平地特定点から見て第３の方向に位置する近傍点及び当該単一の等高線点列上の外側にある近傍の等高線点列上に位置する当該近傍点の近傍点とを含む一組の近傍点と、当該平地特定点の近傍にあり前記単一の等高線点列上に位置し当該平地特定点から見て前記第３の方向とは逆の第４の方向に位置する他の近傍点及び当該単一の等高線点列上の外側にある他の近傍の等高線点列上に位置する当該他の近傍点の近傍点とを含む他の一組の近傍点のうち、前記単一の等高線点列上の近傍点が前記平地格子点から見て遠方に位置する一組の近傍点を少なくとも検出する、
ことを特徴とする請求項８に記載の標高データを生成可能なプログラム。
【請求項１０】
前記補正標高決定ステップは、
前記補正対象平地格子点について検出された前記少なくとも一組の近傍点のそれぞれの位置と標高と、前記補正対象平地格子点の位置と、前記近傍の平地特定点の位置と標高と、当該近傍の平地特定点について検出された前記少なくとも一組の近傍点のそれぞれの位置と標高とに依存して、当該補正対象平地格子点について検出された前記少なくとも一組の近傍点と、前記補正対象平地格子点と、前記近傍の平地特定点と、当該近傍の平地特定点について検出された前記少なくとも一組の近傍点とを結ぶ折れ線上の点における標高を計算するための平地格子点用の標高計算式を決定する平地格子点用補正標高計算式の決定ステップと、
当該決定された平地格子点用補正標高計算式と前記補正対象平地格子点の位置とに基づいて、当該補正対象平地格子点についての前記補正された標高を計算する補正標高決定ステップと、
を含むことを特徴とする請求項９に記載の標高データを生成可能なプログラム。
【請求項１１】
前記補正対象平地格子点に対して検出された前記一組の近傍点に含まれた前記第１の方向に位置する近傍点と、前記補正対象平地格子点に対して検出された前記他の一組の近傍点に含まれた前記第３の方向に位置する他の近傍点のうちの一方は、前記単一の等高線点列上に位置し当該補正対象平地格子点の最急方位に位置する点であり、他方は、当該単一の等高線点列上に位置し当該補正対象平地格子点から見て当該最急方位点とは正反対の方向に位置する点であり、
前記補正対象平地格子点に対して検出された前記一組の近傍点に含まれた前記近傍点の前記近傍点は、前記単一の等高線点列上の外側にある前記近傍の等高線点列上に位置し前記一組の近傍点に含まれた前記近傍点の最急方位点であり、
前記補正対象平地格子点に対して検出された前記他の一組の近傍点に含まれた前記他の近傍点の前記近傍点は、前記単一の等高線点列上の外側にある前記他の近傍の等高線点列上に位置し前記他の一組の近傍点に含まれた当該他の近傍点の最急方位点である、
ことを特徴とする請求項９又は１０に記載の標高データを生成可能なプログラム。
【請求項１２】
２次元等高線地図内の複数の等高線のそれぞれを点列で表す等高線点列データと、当該地図内に位置する、それぞれ位置と標高があらかじめ決定された複数の特定点の位置と標高を表す特定点データと、当該地図を分割して得られる複数のメッシュのいずれかの頂点である複数の格子点のそれぞれの位置を表す格子点データとから、前記複数の格子点のそれぞれの位置での標高を表す標高データを生成する標高データ生成方法であって、
前記複数の格子点のうちのそれぞれ二つの異なる標高の等高線点列間に位置する複数の傾斜地格子点の各々について、当該傾斜地格子点が間に位置する一対の等高線点列を少なくとも含む複数の等高線点列上にある複数の近傍点を、前記等高線点列データと前記格子点データとに基づいて検出する傾斜地格子点用の近傍点検出ステップと、
前記複数の特定点のうちのそれぞれ二つの異なる標高の等高線点列間に位置する複数の傾斜地特定点の各々について、当該傾斜地特定点が間に位置する一対の等高線点列を少なくとも含む複数の等高線点列上にある複数の近傍点を、前記等高線点列データと前記特定点データとに基づいて検出する傾斜地特定点用の近傍点検出ステップと、
前記複数の傾斜地格子点のうち、一対の等高線点列の間に位置する少なくとも一つの傾斜地特定点が近傍に存在し、当該一対の等高線点列の間に位置し、当該少なくとも一つの傾斜地特定点の標高に依存するように補正された標高を決定されるべき、当該少なくとも一つの傾斜地特定点を補正元傾斜地特定点とする補正対象傾斜地格子点に関して、当該補正対象傾斜地格子点に対して傾斜地格子点用の前記近傍点検出ステップで検出された複数の近傍点と当該補正対象傾斜地格子点とを結ぶ第１種の線上における当該補正対象傾斜地格子点の位置を表す位置情報を検出する位置情報検出ステップと、
前記補正元特定点に対して前記傾斜地特定点用の近傍点検出ステップで検出された前記複数の近傍点と当該補正元傾斜地特定点とを結ぶ第２種の線上の、前記補正対象格子点に対して検出された前記位置情報に対応する位置情報を有する、前記補正対象格子点に対応する前記第２種の線上の点である格子点対応点における標高を、前記補正元特定点に対して前記傾斜地特定点用の近傍点検出ステップで検出された前記複数の近傍点のそれぞれの標高と前記第２種の線上の位置と、当該補正元傾斜地特定点の標高と前記第２種の線上の位置と、当該格子点対応点の前記第２種の線上の位置とに基づいて決定する格子点対応点標高決定ステップと、
前記補正対象傾斜地格子点に対して前記傾斜地格子点用の近傍点検出ステップで検出された前記複数の近傍点のそれぞれの標高と前記第１種の線上の位置と、当該補正対象格子点の前記第１種の線上の位置と、前記格子点対応点標高決定ステップで決定された、当該補正対象格子点に対応する前記第２種の線上の前記格子点対応点の前記標高と、当該格子点対応点と前記補正対象格子点との間の前記地図上の位置関係とに依存して、当該補正対象格子点の補正された標高を決定する補正標高決定ステップと、
を含むことを特徴とする標高データ生成方法。
【請求項１３】
２次元等高線地図内の複数の等高線のそれぞれを点列で表す等高線点列データと、当該地図内に位置する、それぞれ位置と標高があらかじめ決定された複数の特定点の位置と標高を表す特定点データと、当該地図を分割して得られる複数のメッシュのいずれかの頂点である複数の格子点のそれぞれの位置を表す格子点データとから、前記複数の格子点のそれぞれの位置での標高を表す標高データを生成する標高データ生成方法であって、
前記複数の格子点のうち、単一の等高線点列により実質的に囲まれている格子点である複数の平地格子点の各々に対して当該単一の等高線点列とその外側の他の少なくとも一つの等高線点列を含む複数の標高が異なる等高線点列上に位置する、当該平地格子点の複数の近傍点を検出する平地格子点用の近傍点検出ステップと、
前記複数の特定点のうち、単一の等高線点列により実質的に囲まれている特定点である少なくとも一つの平地特定点に対して当該単一の等高線点列とその外側の他の少なくとも一つの等高線点列を含む複数の標高が異なる等高線点列上に位置する、当該平地特定点の複数の近傍点を検出する平地特定点用の近傍点検出ステップと、
前記少なくとも一つの特定点の近傍に位置し、当該特定点を実質的に囲む単一の等高線点列により実質的に囲まれている平地格子点を補正対象平地格子点として検出する補正対象検出ステップと、
前記少なくとも一つの平地特定点に対して検出された前記複数の近傍点と当該平地特定点を結ぶ点列に対応する、３次元の地形上の第１の点列のそれぞれの点の３次元の位置と、前記検出された補正対象平地格子点に対して検出された前記複数の近傍点を含む点列に対応する、当該地形上の第２の点列のそれぞれの点の３次元の位置とに依存して、前記検出された補正対象平地格子点の標高として、当該平地特定点の標高により補正された標高を決定する補正標高決定ステップと、
を含むことを特徴とする標高データ生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の等高線の他に、三角点あるいは基準点のような位置と標高が特定された複数の特定点が定められている等高線地図に関する、当該複数の等高線点列を表す等高線点列データと当該複数の特定点を表す特定点データとから、それぞれ当該地図を区切って得られる複数のメッシュのいずれかの頂点である複数の格子点での標高を表す標高データを生成可能な標高データを生成可能なプログラム及び標高データ生成方法に関する。
【背景技術】
【０００２】
等高線を主に記載した等高線地図から等高線を表すデータである等高線点列データが生成される。このような等高線点列データの生成方法はそれ自体公知である。等高線点列データは、ベクトル化と呼ばれる処理により等高線地図上に曲線で表された等高線の各々を多数の連結した折れ線で近似し、得られた折れ線上の多数の点を等高線の始点から終点に向けて並べ、そのように並べられた点列を構成する各点の２次元位置と標高を表す点列データである。等高線を表す等高線地図を多数のメッシュに分割し、各メッシュの頂点である格子点の座標と標高を表す標高データが、上記多数の等高線に対する等高線点列データから生成される。等高線地図からの等高線点列データの生成は、通常は標高データの生成とは別に実行される。以下では、等高線上の点と言う場合は、等高線点列データが表す点列のうちのいずれかの点を指すものとする。更に、等高線点列データで表される隣接する１対の点を結ぶ線分上の点も、等高線点列に含まれる点と言う場合もある。
【０００３】
従来の等高線点列データから標高データを生成するときには、標高を求めたい格子点の周囲の等高線の状況から、等高線点列付近の地形を何らかの方法で推定し、その格子点の標高を算出する。このときの推定方法には、地形の断面で標高補間を考える線形補間や曲線補間、より詳しく三次元で地形を推定する曲面補間等がある。線形補間を使って標高データを生成する方法の例は、例えば特許文献１に記載されている。曲面補間の例は、例えば特許文献２に示されている。線形補間は計算が簡単であるが、高度が直線的に変化するものと仮定しているため、実際の地形とはやや異なった結果が得られてしまうことが多い。曲線補間や曲面補間は、線形補間に比べてより現実に即して標高を推定でき、滑らかに変化する標高データを生成することができる。
【０００４】
曲線補間法の具体例もいろいろ提案されており、例えば最急方位法は下記の非特許文献１に記載されている。最急方位法は、着目する格子点を通る最急方位に沿った等高線断面に対して多項式補間を適用する方法である。この方法は、補間区間の端点の勾配を隣接する区間の勾配と一致させることによって滑らかな補間を行うことができ、地形が隆起あるいは逆に陥没している部分にも適用できるという特徴がある。下記の非特許文献１では、山の斜面などの傾斜地にある格子点については、その格子点の両側にある一対の等高線点列上の最急方位点と、それぞれの等高線点列に対して格子点とは反対側において隣接する他の近傍の一対の等高線点列上に位置し、それぞれ上記一対の最急方位点の一方に対して最急方位に位置する一対の２次最急方位点を検出し、これらの２対の点の位置と標高を利用して当該格子点の標高を決定するという傾斜地処理が開示されている。山頂のような一つの閉じた等高線点列内に位置する格子点については、当該格子点からみて複数の方位に位置する複数の近傍点と、その等高線点列の外側（低い側）に位置する他の等高線点列上に位置し、それぞれ上記複数の近傍点に最も近接している同数の２次近傍点とに対して２次曲面の回帰分析を適用して当該格子点の標高を決定する平面処理が開示されている。
【特許文献１】特開平４−２９３０７８号公報
【特許文献２】特開平９−５０５３８号公報
【非特許文献１】プリマ他１，「高精度のＤＥＭを生成するためのアルゴリズムの開発」，写真測量とリモートセンシング，２００１年，第４０巻，第５号，ｐ．５２−６２
【発明の開示】
【発明が解決しようとする課題】
【０００５】
従来技術では等高線地図に対する等高線点列データに基づいて格子点の標高データを決定している。しかし、地図上には等高線点列のみでは標高を正確に決めにくいいくつかの場所がある。例えば、傾斜地に位置する格子点については、その格子点の両側に位置する一対の等高線点列の間の距離が場所により大きく変化しているところでは、等高線断面の形状が場所により大きく変化するので、最急方位点の位置により格子点に対して決定される標高は、等高線の間隔の変化が場所によりあまり大きく変化しない場所に比べて正確さに欠ける恐れがある。あるいは、山の頂上の格子点のように、閉じた等高線点列により囲まれている格子点の場合、従来技術で決定される当該格子点の標高は、実際の山頂の標高とかなりずれることが起こりうる。
【０００６】
一方、等高線地図には一般に等高線の他に三角点、基準点等のような位置と標高があらかじめ測定された特定点が含まれている。しかし、従来技術で等高線地図データから等高線データを生成するときには、これらの特定点の位置と標高を示す特定点データは利用されていない。このため、これらの特定点の近傍の格子点の標高が、これらの特定点の標高からみて矛盾するかあるいは大きく違いすぎる値になることがある。特に、上に述べたように、等高線のみでは標高を正確に決めにくい場所にある格子点については、その近傍に特定点があると、その格子点に対して決定される標高が、当該近傍の特定点の標高とかなりずれた不自然な値になることがある。
【０００７】
したがって、特定点の近傍の格子点の標高を決定するときには、等高線点列データとともに特定点データを使用して特定点の標高を反映するようにその格子点の標高を決定することが望ましい。
一方、三角点、基準点という特定点の位置は、特定の官庁によりあらかじめ決定され、各特定点の標高も測定され公表されている。したがって、上に述べたような、等高線点列データのみからでは標高を正確に決めにくい場所に特定点がない場合があり得る。そのような場合、等高線地図作成業者が、そのような、等高線点列データのみでは格子点の標高を正確に決定しにくい場所の中のいくつかの地点（以下、補助点と呼ぶことにする）の位置と標高を、例えばＧＰＳ（全地球位置検出システム）を用いて測定し、三角点データ、基準点データと同様に、補助点の位置と標高を表す補助点データを、地図データ生成企業等の地図データを供給する企業が生成して、地図データを利用する企業、例えば、標高データを生成して利用あるいは販売する企業あるいは標高データを生成可能なプログラムを開発、販売する企業、あるいはそのプログラムを利用する企業等が利用できるようにすることも考えられる。以下では、このような補助点データが生成され、利用可能になっているときには、当該補助点も特定点の一種と考え、特定点データには補助点データが含まれると考えることにする。
【０００８】
このように補助点データが利用可能になると、各格子点については、近傍に特定点が存在しない場合と、近傍に一つの特定点が存在する場合以外に、近傍に複数の特定点が存在する場合が発生する可能性がある。近傍に複数の特定点が存在する場合の例は、例えば、三角点又は基準点の一方が近傍に存在する格子点の近傍に更に補助点が設けられた場合、あるいは、ある特定の領域に複数の補助点が設けられた結果、同じ格子点の近傍に複数の補助点が存在するようになる場合が考えられる。
【０００９】
格子点の近傍に特定点がある場合でも、その格子点が異なる標高の一対の等高線点列の間にある格子点（傾斜地格子点）である場合と、単一の等高線列により実質的に囲まれている格子点（平地格子点）である場合では、その近傍にある特定点の標高を反映するようにその格子点の標高を決定する方法が異なると推測される。更に、近傍に一つの傾斜地特定点がある傾斜地格子点（以下、非重複領域内の格子点と呼ぶことがある）と、近傍に複数の傾斜地特定点がある格子点（以下、重複領域内の傾斜地格子点と呼ぶことがある）では、近傍の一つ又は二つの傾斜地特定点の標高により、当該重複領域内の傾斜地格子点の標高を補正する方法は異なると推測される。
【００１０】
傾斜地格子点については、近傍に位置する特定点の数に関しては上記３つの場合が発生する可能性があるが、山頂のような単一の等高線により実質的に囲まれている平地にある平地格子点については、近傍に特定点が存在しない場合と存在する場合とが発生する可能性があるが、複数の特定点が同じ格子点の近傍に位置する場合は少ない可能性がある。
【００１１】
したがって、本発明の一つの目的は、傾斜地格子点の近傍に少なくとも一つの傾斜地特定点が存在する場合に、当該傾斜地格子点の標高として、その特定点の標高により補正された標高を表す標高データを生成可能にする、標高データを生成可能なプログラム及び標高データ生成方法を提供することである。
【００１２】
本発明の他の目的は、一つの等高線点列により実質的に囲まれた平地格子点の近傍に同じ等高線点列により実質的に囲まれた平地特定点が存在する場合に、当該平地格子点の標高として、その平地特定点の標高と、当該一つの等高線点列を含む複数の近傍の等高線点列上にある平地格子点の複数の近傍点の標高とにより補正された標高を表す標高データを生成可能なプログラム及び標高データ生成方法を提供することである。
【課題を解決するための手段】
【００１３】
本発明による望ましい態様のいくつかは以下のとおりである。請求項１に記載の標高データを生成可能なプログラムは、２次元等高線地図内の複数の等高線のそれぞれを点列で表す等高線点列データと、当該地図内に位置するそれぞれ位置と標高があらかじめ決定された複数の特定点の位置と標高を表す特定点データと、当該地図を分割して得られる複数のメッシュのいずれかの頂点である複数の格子点のそれぞれの位置を表す格子点データとから前記複数の格子点のそれぞれの位置での標高を表す標高データを生成可能なプログラムである。
更に、当該プログラムは、前記複数の格子点のうちのそれぞれ二つの異なる標高の等高線点列間に位置する複数の傾斜地格子点の各々について、当該傾斜地格子点が間に位置する一対の等高線点列を少なくとも含む複数の等高線点列上にある複数の近傍点を、前記等高線点列データと前記格子点データとに基づいて検出する傾斜地格子点用の近傍点検出ステップと、前記複数の特定点のうちのそれぞれ二つの異なる標高の等高線点列間に位置する複数の傾斜地特定点の各々について、当該傾斜地特定点が間に位置する一対の等高線点列を少なくとも含む複数の等高線点列上にある複数の近傍点を、前記等高線点列データと前記特定点データとに基づいて検出する傾斜地特定点用の近傍点検出ステップと、前記複数の特定点のうちのそれぞれ二つの異なる標高の等高線点列間に位置する複数の傾斜地特定点の各々について、当該傾斜地特定点が間に位置する一対の等高線点列を少なくとも含む複数の等高線点列上にある複数の近傍点を、前記等高線点列データと前記特定点データとに基づいて検出する傾斜地特定点用の近傍点検出ステップと、前記複数の傾斜地格子点のうち、一対の等高線点列の間に位置する少なくとも一つの傾斜地特定点が近傍に存在し、当該一対の等高線点列の間に位置し、当該少なくとも一つの傾斜地特定点の標高に依存するように補正された標高を決定されるべき、当該少なくとも一つの傾斜地特定点を補正元傾斜地特定点とする補正対象傾斜地格子点に関して、当該補正対象傾斜地格子点に対して傾斜地格子点用の前記近傍点検出ステップで検出された複数の近傍点と当該補正対象傾斜地格子点とを結ぶ第１種の線上における当該補正対象傾斜地格子点の位置を表す位置情報を検出する位置情報検出ステップと、前記補正元特定点に対して前記傾斜地特定点用の近傍点検出ステップで検出された前記複数の近傍点と当該補正元傾斜地特定点とを結ぶ第２種の線上の、前記補正対象格子点に対して検出された前記位置情報に対応する位置情報を有する、前記補正対象格子点に対応する前記第２種の線上の点である格子点対応点における標高を、前記補正元特定点に対して前記傾斜地特定点用の近傍点検出ステップで検出された前記複数の近傍点のそれぞれの標高と前記第２種の線上の位置と、当該補正元傾斜地特定点の標高と前記第２種の線上の位置と、当該格子点対応点の前記第２種の線上の位置とに基づいて決定する格子点対応点標高決定ステップと、前記補正対象傾斜地格子点に対して前記傾斜地格子点用の近傍点検出ステップで検出された前記複数の近傍点のそれぞれの標高と前記第１種の線上の位置と、当該補正対象格子点の前記第１種の線上の位置と、前記格子点対応点標高決定ステップで決定された、当該補正対象格子点に対応する前記第２種の線上の前記格子点対応点の前記標高と、当該格子点対応点と前記補正対象格子点との間の前記地図上の位置関係とに依存して、当該補正対象格子点の補正された標高を決定する補正標高決定ステップと、をコンピュータに実行させるものである。
【００１４】
これにより、傾斜地格子点の近傍に傾斜地特定点が少なくとも一つある場合、当該傾斜地特定点の近傍にある複数の等高線点列上にある複数の近傍点の標高と位置以外に、当該傾斜地特定点の標高をも反映した、当該傾斜地格子点の補正された標高を決定できる。
【００１５】
より具体的には、請求項２に記載の標高データを生成可能なプログラムでは、前記補正標高決定ステップは、前記補正対象傾斜地格子点に対して前記傾斜地格子点用の近傍点検出ステップで検出された前記複数の近傍点のそれぞれの標高と前記第１種の線上の位置と、当該補正対象格子点の前記第１種の線上の位置とに依存して、前記補正対象格子点に対する補正前の標高を決定する格子点標高決定ステップと、当該決定された補正前の標高と、前記格子点対応点標高決定ステップで決定された、当該補正対象格子点に対応する前記第２種の線上の前記格子点対応点の前記標高と、当該格子点対応点と前記補正対象格子点との間の前記位置関係とに依存して、当該補正対象格子点に対して決定された前記補正前の標高を補正する標高補正ステップと、を含む。
これにより、傾斜地格子点の近傍に少なくとも一つの傾斜地特定点がある場合、当該傾斜地特定点の近傍にある複数の等高線点列上にある複数の近傍点の標高と位置とに基づいて、当該傾斜地格子点の補正前の標高を決定し、その後当該近傍の傾斜地特定点の近傍にある格子点対応点の標高と、当該格子点と当該傾斜地格子点との間の位置関係とを用いて、当該傾斜地格子点の当該補正前の標高を補正することができる。
【００１６】
請求項３に記載の標高データを生成可能なプログラムの他の望ましい態様では、前記格子点標高決定ステップは、前記前記第１種の線上の点における標高を表す前記補正対象傾斜地格子点用の標高計算式を、当該補正対象傾斜地格子点に対して前記傾斜地格子点用の近傍点検出ステップで検出された前記複数の近傍点のそれぞれの標高と前記第１種の線上の位置とに依存して決定する補正対象傾斜地格子点用の標高計算式決定ステップと、前記補正対象傾斜地格子点における前記標高を、当該決定された補正対象傾斜地格子点用の標高計算式と前記第１種の線上の前記補正対象傾斜地格子点の位置とに基づいて計算する格子点標高計算ステップと、を含む。
これにより、傾斜地格子点の近傍に少なくとも一つの傾斜地特定点がある場合、当該傾斜地特定点の近傍にある複数の等高線点列上にある複数の近傍点の標高と位置とに基づいて、当該傾斜地格子点の補正前の標高を決定し、その後当該近傍の傾斜地特定点の近傍にある格子点対応点の標高と、当該格子点と当該傾斜地格子点との間の位置関係とを用いて、当該傾斜地格子点の当該補正前の標高を補正することができる。
【００１７】
請求項４に記載の標高データを生成可能なプログラムの他の望ましい態様では、前記格子点対応点標高決定ステップは、前記前記第２種の線上の点における標高を表す前記補正元特定点用の標高計算式を、前記補正元特定点に対して前記傾斜地特定点用の近傍点検出ステップで検出された前記複数の近傍点のそれぞれの標高と前記第２種の線上の位置と、当該補正元傾斜地特定点の標高と前記第２種の線上の位置とに基づいて決定する特定点用の標高計算式決定ステップと、前記格子点対応点における標高を、当該決定された前記補正元特定点用の標高計算式と前記第２種の線上の前記格子点対応点の位置とに基づいて計算する格子点対応点標高計算ステップと、を含む。
これにより、格子点対応点の標高を比較的簡単に決定することができる。
【００１８】
請求項５に記載の標高データを生成可能なプログラムの他の望ましい態様では、いずれかの傾斜地格子点に対して補正元特定点となる複数の傾斜地特定点がある場合には、前記格子点対応点標高決定ステップは、当該複数の補正元傾斜地特定点のそれぞれに関して実行され、それにより、当該複数の補正元傾斜地特定点の一つにそれぞれ対応して、前記補正対象格子点に対応する複数の格子点対応点の標高が決定され、前記補正標高決定ステップは、前記補正対象傾斜地格子点に対して前記傾斜地格子点用の近傍点検出ステップで検出された前記複数の近傍点のそれぞれの標高と前記第１種の線上の位置と、当該補正対象格子点の前記第１種の線上の位置と、前記複数の補正元傾斜地特定点の各々に対して前記格子点対応点標高決定ステップで決定された、当該補正対象格子点に対応する前記複数の補正元傾斜地特定点の各々に関連する前記第２種の線の上の前記格子点対応点の前記標高と、前記複数の補正元傾斜地格子点に対応する複数の格子点対応点の各々と前記補正対象格子点との間の前記地図上の位置関係とに依存して、当該補正対象格子点の補正された標高を決定する。
これにより、傾斜地格子点の近傍に複数の傾斜地特定点がある場合、当該傾斜地特定点の近傍にある複数の等高線点列上にある複数の近傍点の標高と位置以外にも、当該複数の傾斜地特定点のそれぞれの標高を反映するように、当該傾斜地格子点の補正された標高を決定できる。
【００１９】
より具体的には、請求項６に記載のように、前記位置関係は、前記格子点対応点と前記補正対象格子点との間の前記地図上での距離である。これにより、距離という簡単な位置関係を用いて、格子点対応点の標高が、補正対象格子点の標高に及ぼす影響を変更することが可能になる。例えば、格子点対応点と補正対象格子点との間の距離が小さくなるほど、補正対象格子点の標高に対する格子点対応点の標高の影響を大きくなるように、すなわち、補正対象格子点の標高が、格子点対応点の標高に近づくようにすることができる。
【００２０】
更に望ましくは、請求項７に記載の標高データを生成可能なプログラムでは、前記傾斜地格子点用の近傍点検出ステップで各傾斜地格子点に対して検出される前記複数の近傍点は、当該傾斜地格子点から見て最急方位に位置し当該傾斜地格子点から見て互いに逆方向に位置し、それぞれ等高線点列上に位置する一対の最急方位点と、当該一対の最急方位点の一方に対して当該傾斜地格子点とは逆方向に位置し、当該一方の最急方位点からみて最急方位にあり、それぞれ当該一方の最急方位点が位置する等高線点列とは異なる標高の等高線点列上に位置する一対の２次最急方位点を含み、前記傾斜地特定点用の近傍点検出ステップで各傾斜地特定点に対して検出される前記複数の近傍点は、当該傾斜地特定点から見て最急方位に位置し当該傾斜地特定点から見て互いに逆方向に位置し、それぞれ等高線点列上に位置する一対の最急方位点と、当該一対の最急方位点の一方に対して当該傾斜地特定点とは逆方向に位置し、当該一方の最急方位点からみて最急方位にあり、それぞれ当該一方の最急方位点が位置する等高線点列とは異なる標高の等高線点列上に位置する一対の２次最急方位点を含む。
これにより、等高線断面曲線をより精度よく近似する曲線を使用可能になり、格子点の補正された標高をより精度よく決定することが可能になる。  
【００２１】
請求項８に記載のプログラムは、２次元等高線地図内の複数の等高線のそれぞれを点列で表す等高線点列データと、当該地図内に位置するそれぞれ位置と標高があらかじめ決定された複数の特定点の位置と標高を表す特定点データと、当該地図を分割して得られる複数のメッシュのいずれかの頂点である複数の格子点のそれぞれの位置を表す格子点データとから前記複数の格子点のそれぞれの位置での標高を表す標高データを生成可能なプログラムである。
更に、当該プログラムは、前記複数の格子点のうち、単一の等高線点列により実質的に囲まれている格子点である複数の平地格子点の各々に対して当該単一の等高線点列とその外側の他の少なくとも一つの等高線点列を含む複数の標高が異なる等高線点列上に位置する、当該平地格子点の複数の近傍点を検出する平地格子点用の近傍点検出ステップと、
前記複数の特定点のうち、単一の等高線点列により実質的に囲まれている特定点である少なくとも一つの平地特定点に対して当該単一の等高線点列とその外側の他の少なくとも一つの等高線点列を含む複数の標高が異なる等高線点列上に位置する、当該平地特定点の複数の近傍点を検出する平地特定点用の近傍点検出ステップと、前記少なくとも一つの特定点の近傍に位置し、当該特定点を実質的に囲む単一の等高線点列により実質的に囲まれている平地格子点を補正対象平地格子点として検出する補正対象検出ステップと、前記少なくとも一つの平地特定点に対して検出された前記複数の近傍点と当該平地特定点を結ぶ点列に対応する、３次元の地形上の第１の点列のそれぞれの点の３次元の位置と、前記検出された補正対象平地格子点に対して検出された前記複数の近傍点を含む点列に対応する、当該地形上の第２の点列のそれぞれの点の３次元の位置とに依存して、前記検出された補正対象平地格子点の標高として、当該平地特定点の標高により補正された標高を決定する補正標高決定ステップと、をコンピュータに実行させるものである。
【００２２】
これにより、単一の等高線点列により実質的に囲まれた平地格子点の近傍に同じ等高線点列により実質的に囲まれた平地特定点が存在する場合に、当該平地特定点に対して検出された複数の近傍点と当該平地特定点を結ぶ点列に対応する、３次元の地形上の第１の点列のそれぞれの点の３次元の位置と、前記検出された補正対象平地格子点に対して検出された複数の近傍点を含む点列に対応する、当該地形上の第２の点列のそれぞれの点の３次元の位置とを反映するように、補正対象平地格子点の標高を決定することが可能になる。
【００２３】
更に具体的には、請求項９に記載の標高データを生成可能なプログラムでは、前記平地格子点用の近傍点検出ステップは、前記検出された補正対象平地格子点に対する前記複数の近傍点として、当該補正対象平地格子点の近傍にあり前記単一の等高線点列上に位置し当該平地格子点から見て第１の方向に位置する近傍点及び当該単一の等高線点列上の外側にある近傍の等高線点列上に位置する当該近傍点の近傍点とを含む一組の近傍点と、当該平地格子点の近傍にあり前記単一の等高線点列上に位置し当該平地格子点から見て前記第１の方向とは逆の第２の方向に位置する他の近傍点及び当該単一の等高線点列上の外側にある他の近傍の等高線点列上に位置する当該他の近傍点の近傍点とを含む他の一組の近傍点のうち、前記単一の等高線点列上の近傍点が前記平地特定点から見て遠方に位置する一組の近傍点を少なくとも検出し、前記平地特定点用の近傍点検出ステップは、前記少なくとも一つの平地特定点に対する前記複数の近傍点として、当該平地特定点の近傍にあり前記単一の等高線点列上に位置し、当該平地特定点から見て第３の方向に位置する近傍点及び当該単一の等高線点列上の外側にある近傍の等高線点列上に位置する当該近傍点の近傍点とを含む一組の近傍点と、当該平地特定点の近傍にあり前記単一の等高線点列上に位置し当該平地特定点から見て前記第３の方向とは逆の第４の方向に位置する他の近傍点及び当該単一の等高線点列上の外側にある他の近傍の等高線点列上に位置する当該他の近傍点の近傍点とを含む他の一組の近傍点のうち、前記単一の等高線点列上の近傍点が前記平地格子点から見て遠方に位置する一組の近傍点を少なくとも検出する。
これにより、補正対象平地格子点の複数の近傍点と補正元平地特定点の複数の近傍点とを比較的簡単に決定することができる。
【００２４】
更に具体的には、請求項１０に記載の標高データを生成可能なプログラムでは、前記補正標高決定ステップは、前記補正対象平地格子点について検出された前記少なくとも一組の近傍点のそれぞれの位置と標高と、前記補正対象平地格子点の位置と、前記近傍の平地特定点の位置と標高と、当該近傍の平地特定点について検出された前記少なくとも一組の近傍点のそれぞれの位置と標高とに依存して、当該補正対象平地格子点について検出された前記少なくとも一組の近傍点と、前記補正対象平地格子点と、前記近傍の平地特定点と、当該近傍の平地特定点について検出された前記少なくとも一組の近傍点とを結ぶ折れ線上の点における標高を計算するための平地格子点用の標高計算式を決定する平地格子点用補正標高計算式の決定ステップと、当該決定された平地格子点用補正標高計算式と前記補正対象平地格子点の位置とに基づいて、当該補正対象平地格子点についての前記補正された標高を計算する補正標高決定ステップと、を含む。
これにより、補正対象平地格子点についての補正元の平地特定点の標高により補正された標高を、当該補正対象平地格子点に対して検出された複数の近傍点と、当該補正元の平地特定点に対して検出された複数の近傍点とに基づいて、比較的簡単な計算により計算できる。
【００２５】
更に具体的には、請求項１１に記載の標高データを生成可能なプログラムでは、前記補正対象平地格子点に対して検出された前記一組の近傍点に含まれた前記第１の方向に位置する近傍点と、前記補正対象平地格子点に対して検出された前記他の一組の近傍点に含まれた前記第３の方向に位置する他の近傍点のうちの一方は、前記単一の等高線点列上に位置し当該補正対象平地格子点の最急方位に位置する点であり、他方は、当該単一の等高線点列上に位置し当該補正対象平地格子点から見て当該最急方位点とは正反対の方向に位置する点であり、前記補正対象平地格子点に対して検出された前記一組の近傍点に含まれた前記近傍点の前記近傍点は、前記単一の等高線点列上の外側にある前記近傍の等高線点列上に位置し前記一組の近傍点に含まれた前記近傍点の最急方位点であり、前記補正対象平地格子点に対して検出された前記他の一組の近傍点に含まれた前記他の近傍点の前記近傍点は、前記単一の等高線点列上の外側にある前記他の近傍の等高線点列上に位置し前記他の一組の近傍点に含まれた当該他の近傍点の最急方位点である。
これにより、補正対象平地格子点の複数の近傍点と補正元平地格子点の複数の近傍点を最急方位法を利用して決定するので、平地格子点の補正された標高をより精度よく決定することが可能になる。
【００２６】
請求項１２に記載の標高データ生成方法は、２次元等高線地図内の複数の等高線のそれぞれを点列で表す等高線点列データと、当該地図内に位置するそれぞれ位置と標高があらかじめ決定された複数の特定点の位置と標高を表す特定点データと、当該地図を分割して得られる複数のメッシュのいずれかの頂点である複数の格子点のそれぞれの位置を表す格子点データとから前記複数の格子点のそれぞれの位置での標高を表す標高データを生成する標高データ生成方法である。
更に、本方法は、前記複数の格子点のうちのそれぞれ二つの異なる標高の等高線点列間に位置する複数の傾斜地格子点の各々について、当該傾斜地格子点が間に位置する一対の等高線点列を少なくとも含む複数の等高線点列上にある複数の近傍点を、前記等高線点列データと前記格子点データとに基づいて検出する傾斜地格子点用の近傍点検出ステップと、前記複数の特定点のうちのそれぞれ二つの異なる標高の等高線点列間に位置する複数の傾斜地特定点の各々について、当該傾斜地特定点が間に位置する一対の等高線点列を少なくとも含む複数の等高線点列上にある複数の近傍点を、前記等高線点列データと前記特定点データとに基づいて検出する傾斜地特定点用の近傍点検出ステップと、前記複数の特定点のうちのそれぞれ二つの異なる標高の等高線点列間に位置する複数の傾斜地特定点の各々について、当該傾斜地特定点が間に位置する一対の等高線点列を少なくとも含む複数の等高線点列上にある複数の近傍点を、前記等高線点列データと前記特定点データとに基づいて検出する傾斜地特定点用の近傍点検出ステップと、前記複数の傾斜地格子点のうち、一対の等高線点列の間に位置する少なくとも一つの傾斜地特定点が近傍に存在し、当該一対の等高線点列の間に位置し、当該少なくとも一つの傾斜地特定点の標高に依存するように補正された標高を決定されるべき、当該少なくとも一つの傾斜地特定点を補正元傾斜地特定点とする補正対象傾斜地格子点に関して、当該補正対象傾斜地格子点に対して傾斜地格子点用の前記近傍点検出ステップで検出された複数の近傍点と当該補正対象傾斜地格子点とを結ぶ第１種の線上における当該補正対象傾斜地格子点の位置を表す位置情報を検出する位置情報検出ステップと、前記補正元特定点に対して前記傾斜地特定点用の近傍点検出ステップで検出された前記複数の近傍点と当該補正元傾斜地特定点とを結ぶ第２種の線上の、前記補正対象格子点に対して検出された前記位置情報に対応する位置情報を有する、前記補正対象格子点に対応する前記第２種の線上の点である格子点対応点における標高を、前記補正元特定点に対して前記傾斜地特定点用の近傍点検出ステップで検出された前記複数の近傍点のそれぞれの標高と前記第２種の線上の位置と、当該補正元傾斜地特定点の標高と前記第２種の線上の位置と、当該格子点対応点の前記第２種の線上の位置とに基づいて決定する格子点対応点標高決定ステップと、前記補正対象傾斜地格子点に対して前記傾斜地格子点用の近傍点検出ステップで検出された前記複数の近傍点のそれぞれの標高と前記第１種の線上の位置と、当該補正対象格子点の前記第１種の線上の位置と、前記格子点対応点標高決定ステップで決定された、当該補正対象格子点に対応する前記第２種の線上の前記格子点対応点の前記標高と、当該格子点対応点と前記補正対象格子点との間の前記地図上の位置関係とに依存して、当該補正対象格子点の補正された標高を決定する補正標高決定ステップと、を含むものである。
【００２７】
請求項１３に記載の標高データ生成方法は、２次元等高線地図内の複数の等高線のそれぞれを点列で表す等高線点列データと、当該地図内に位置するそれぞれ位置と標高があらかじめ決定された複数の特定点の位置と標高を表す特定点データと、当該地図を分割して得られる複数のメッシュのいずれかの頂点である複数の格子点のそれぞれの位置を表す格子点データとから前記複数の格子点のそれぞれの位置での標高を表す標高データを生成する標高データ生成方法である。
更に、本方法は、前記複数の格子点のうち、単一の等高線点列により実質的に囲まれている格子点である複数の平地格子点の各々に対して当該単一の等高線点列とその外側の他の少なくとも一つの等高線点列を含む複数の標高が異なる等高線点列上に位置する、当該平地格子点の複数の近傍点を検出する平地格子点用の近傍点検出ステップと、前記複数の特定点のうち、単一の等高線点列により実質的に囲まれている特定点である少なくとも一つの平地特定点に対して当該単一の等高線点列とその外側の他の少なくとも一つの等高線点列を含む複数の標高が異なる等高線点列上に位置する、当該平地特定点の複数の近傍点を検出する平地特定点用の近傍点検出ステップと、前記少なくとも一つの特定点の近傍に位置し、当該特定点を実質的に囲む単一の等高線点列により実質的に囲まれている平地格子点を補正対象平地格子点として検出する補正対象検出ステップと、前記少なくとも一つの平地特定点に対して検出された前記複数の近傍点と当該平地特定点を結ぶ点列に対応する、３次元の地形上の第１の点列のそれぞれの点の３次元の位置と、前記検出された補正対象平地格子点に対して検出された前記複数の近傍点を含む点列に対応する、当該地形上の第２の点列のそれぞれの点の３次元の位置とに依存して、前記検出された補正対象平地格子点の標高として、当該平地特定点の標高により補正された標高を決定する補正標高決定ステップと、を含むものである。
【発明の効果】
【００２８】
したがって、本発明の望ましい態様によれば、傾斜地格子点の近傍に位置し、当該傾斜地格子点が間に位置する一対の等高線点列の間に位置する一つ又は複数の傾斜地特定点の標高を反映するように、当該傾斜地格子点の標高を決定することが可能になる。
【００２９】
本発明の他の望ましい態様によれば、単一の等高線点列により実質的に囲まれた平地格子点の近傍に同じ等高線点列により実質的に囲まれた平地特定点が存在する場合に、当該平地特定点に対して検出された複数の近傍点と当該平地特定点を結ぶ点列に対応する、３次元の地形上の第１の点列のそれぞれの点の３次元の位置と、前記検出された補正対象平地格子点に対して検出された複数の近傍点を含む点列に対応する、当該地形上の第２の点列のそれぞれの点の３次元の位置とを反映するように、補正対象平地格子点の標高を決定することが可能になる。
【発明を実施するための最良の形態】
【００３０】
以下、本発明に係る標高データを生成可能なプログラム及び標高データ生成方法の実施形態の一つについて図面を参照して説明する。
図１は、本発明に係る標高データ生成装置の一つの実施形態の概略ブロック図である。１は、等高線及び特定点記号を含む２次元地図画像に含まれた複数の等高線のそれぞれを点列で表す等高線点列データとそれぞれの特定点の位置と標高を表す特定点データとから、それぞれ当該地図を分割して得られる複数のメッシュのうちのいずれかのメッシュの頂点である複数の格子点のそれぞれの標高を示す標高データを生成する標高データ生成装置である。本生成装置１は、例えばパソコンあるいはワークステーションにより実現される処理装置１０、メインメモリとして使用されるＲＡＭ（図示せず）及び磁気ディスク記憶装置のような補助記憶装置（図示せず）とを含む記憶装置２０、入出力装置３０とを備えている。入出力装置３０は、キーボード及びマウス等のポインティングデバイスを含む入力装置３１、ＣＲＴディスプレイ装置等の表示装置３２、プリンタ３３を備えている。記憶装置２０にデータを記憶させるときに、記憶装置２０に含まれた図示していないＲＡＭと補助記憶装置のいずれに当該データを記憶させるかは、当該データ毎にあらかじめ定められている。
【００３１】
処理装置１０には、標高データを生成可能なプログラム４０が組み込まれている。標高データを生成可能なプログラム４０は、格子点用最急方位探索部４１、標高計算部４２及び補正標高決定部４３という処理部からなり、等高線点列データと特定点データとから格子点の位置と標高を示す標高データを生成する。処理装置１０は、標高データを生成可能なプログラム４０内のそれぞれの処理部が実行されたときに、格子点用の最急方位を探索する機能ブロック、標高を計算する機能ブロック及び格子点の補正された標高を決定する機能ブロックという複数の機能ブロックとして動作する。したがって、処理装置１０には、プログラム４０のこれらの処理部により、対応する機能ブロックが実現されていることになる。したがって、格子点用最急方位探索部４１、標高計算部４２及び補正標高決定部４３は、本発明に係る標高データ生成装置の一つの実施の形態を実現することになる。
【００３２】
標高データを生成可能なプログラム４０は、本発明に係る標高データを生成可能なプログラムの一つの実施の形態を実現するものであり、記録媒体に記録してあるいはネットワークを介して記憶装置２０に記憶され処理装置１０で実行される。標高データを生成可能なプログラム４０は、記録媒体に記録されて又はネットワークを介して販売可能である。処理装置１０が標高データを生成可能なプログラム４０を実行して標高データを生成する手順は、本発明に係る標高データ生成方法の一つの実施の形態を実現する。
【００３３】
記憶装置２０には、等高線点列データ２１、格子点データ２２、三角点データ２３Ａ、基準点データ２３Ｂ、補助点データ２３Ｃがあらかじめ記憶されている。以下では、三角点データ２３Ａ、基準点データ２３Ｂ、補助点データ２３Ｃをまとめて特定点データ２３と呼ぶ。本発明の実施の態様によっては、三角点データ２３Ａ、基準点データ２３Ｂ、補助点データ２３Ｃの全ては存在しなくてもよく、三角点データ２３Ａのみ存在する場合、基準点データ２３Ｂのみ存在するの場合、補助点データ２３Ｃのみ存在する場合あるいはこれらの二つが存在する場合でもよい。等高線点列データ２１、格子点データ２２、特定点データ２３を用いて、格子点用周辺点データリスト２４、格子点用最急方位データ２５、特定点用周辺点データリスト２６、特定点用最急方位データ２７、近傍格子点データ２８Ａ、近傍特定点データ２８Ｂ、標高データ２９が生成される。
【００３４】
等高線点列データ２１は、等高線地図内の複数の等高線のそれぞれを折れ線で近似して、それぞれの折れ線上に位置する複数の点列及び当該等高線の標高を表す標高値からなるデータである。格子点データ２２は、等高線地図データを複数のメッシュに分割したときのそれぞれのメッシュの頂点である複数の格子点の２次元座標（ｘ、ｙ）を示すデータである。三角点データ２３Ａ、基準点データ２３Ｂ又は補助点データ２３Ｃは、それぞれ等高線地図上にある三角点、基準点又は補助点等の特定点の２次元座標（ｘ、ｙ）と標高を表すデータである。なお、三角点、基準点、補助点等の特定点が地図上に記載されていなくて、これらの点のデータを含む電子ファイルが別に利用可能になっていてもよい。本実施の形態では等高線点列データ２１は、等高線地図から既に生成され記憶装置２０に記憶されていると仮定している。三角点データ２３Ａ、基準点データ２３Ｂ、補助点データ２３Ｃは等高線地図から生成されてあるいは等高線地図とは別に生成され、記憶装置２０に記憶されているものとする。
【００３５】
図２は、特定点を有するいくつかの等高線地図の例を示す図である。同図（ａ）は、一つの傾斜地特定点を有する等高線地図画像の例を示し、この例では、点Ｉは、順に標高が低くなる複数の等高線Ｃ１〜Ｃ５を含む傾斜地にあり、それらの等高線のうちの一対の標高が異なる等高線Ｃ２とＣ３の間にある傾斜地特定点の例であり、点Ｒは、一対の等高線間に位置する傾斜地格子点の例であり、当該傾斜地格子点Ｒは、図では、傾斜地特定点Ｉが間に位置する一対の等高線Ｃ２とＣ３の間に位置し、傾斜地格子点Ｒは、傾斜地特定点Ｉの近傍にあり、特定点Ｉから見て後に説明する補正適用範囲内に位置する。この場合、後に説明するように、傾斜地格子点Ｒの標高は、傾斜地特定点Ｉの標高により後に説明する方法で補正される。以下、このように近傍の特定点の標高により標高が補正される格子点をその特定点の補正対象格子点と呼ぶことがあり、補正に使用される特定点Ｉを格子点Ｒの補正元特定点と呼ぶことがある。図２（ａ）では、格子点Ｒを補正対象格子点とする他の補正元特定点は存在しないと仮定する。この格子点Ｒのように、補正元特定点の数が１個であるとき、当該補正対象格子点は非重複領域内にあると言うことがあり、当該格子点を非重複領域内格子点と呼ぶことがある。特定点Ｉは、三角点又は基準点又は補助点のいずれでもよい。
【００３６】
同図（ｂ）は、二つの傾斜地特定点を有する他の等高線地図画像の例を示し、この例では、順に標高が低くなる複数の等高線Ｃ６〜Ｃ１０を含む傾斜地において、一対の標高が異なる等高線Ｃ７とＣ８の間の間隔が図の中央部分で大きく広がっている。点ＩａとＩｂは、両方とも同じ一対の等高線Ｃ７とＣ８の間に位置する傾斜地特定点の例である。点Ｒは同じ一対の等高線Ｃ７とＣ８の間に位置し、これらの二つの特定点Ｉａ、Ｉｂのそれぞれから補正対象範囲内にあり、したがってこれら二つの特定点の両方の補正対象格子点である。この図では格子点Ｒに対する補正元特定点は他には存在しないと仮定している。ここに示した格子点Ｒのように、２つの特定点の補正対象格子点であるが、それらの特定点以外に補正元特定点が存在しない場合、当該補正対象格子点は２重重複領域内にあると言うことがあり、当該格子点を２重重複領域内格子点と呼ぶことがある。特定点Ｉａ、Ｉｂは、例えば、一方が三角点又は基準点、他方が補助点であるか、あるいは両方が補助点であってもよい。
【００３７】
同図（ｃ）は、順に標高が低くなる複数の等高線Ｃ１１〜Ｃ１４を含む傾斜地において、等高線Ｃ１２とＣ１３の間の間隔が、同図（ｂ）と同じく、図の中央部分で大きく広がっていて、点Ｉａ、Ｉｂ、Ｉｃがいずれも同じ一対の等高線Ｃ１２とＣ１３の間に位置する特定点の例を示す。図において、点Ｒは同じ一対の等高線Ｃ１２とＣ１３の間に位置し、これらの三つの特定点Ｉａ、Ｉｂ、Ｉｃのいずれもの補正対象範囲内にあり、したがって、これらの３つの特定点の補正対象格子点である。ここに示した格子点Ｒのように、３つの特定点の補正対象格子点であるが、他に補正元特定点が存在しない場合、当該補正対象格子点は３重重複領域内にあると言うことがあり、当該格子点を３重重複領域内格子点と呼ぶことがある。なお、本実施の形態では、傾斜地特定点を補正元特定点とする補正対象格子点の補正元特定点数の最大値は３であるとするが、その最大値は２でもよく、３より大きな値でもよい。また、非重複領域内格子点以外の格子点をまとめて重複領域内格子点と呼ぶことがある。特定点Ｉａ、Ｉｂ、Ｉｃは、例えば一つが三角点又は基準点、他の二つが補助点であるか、あるいは三つとも補助点であってもよい。
【００３８】
同図（ｄ）は、例えば山頂付近を示す等高線地図画像の例を示し、図では、順に標高が低くなる等高線Ｃ１５〜Ｃ１８のうち、等高線Ｃ１５が閉じた等高線である例を示し、山頂付近はこの等高線Ｃ１５の標高に近い平地と考えられる場合であり、点Ｉは閉じた等高線Ｃ１５により囲まれている特定点（平地特定点）の例であり、点Ｒは、同じ等高線Ｃ１５により囲まれている格子点（平地格子点）の例である。平地格子点Ｒと平地特定点は同じ等高線特定点Ｉの近傍に位置する補正対象平地格子点の一つを例示している。なお、等高線１５は、完全に閉じた等高線点列であるが、格子点Ｒ、特定点Ｉは等高線により完全に取り囲まれていなくても実質的に取り囲まれていれば、平地格子点あるいは平地特定点として扱われる。ここで、実質的に取り囲まれているとは、後に説明するように、これらの点のいろいろな方位にある周辺の点を検出したときに、それらの周辺の点が同じ等高線上にあればよく、その等高線の一部が閉じていないくてもよい。
【００３９】
図１に戻り、標高データを生成可能なプログラム４０は、まず、各格子点の標高を計算するのに使用するために、当該格子点の近傍にあり等高線上に位置する複数の近傍点を検出し、検出された複数の近傍点の位置と標高を用いて補間により当該格子点の標高を決定するようになっている。本実施の形態では、格子点の複数の近傍点を最急方位法により検出するようになっている。具体的には、標高データを生成可能なプログラム４０は、起動されると、まず、格子点用最急方位探索部４１を実行する。
【００４０】
本発明に係る標高データ生成装置１は、各格子点について複数の近傍点を検出する際に、傾斜地格子点については、当該傾斜地格子点がその間に位置する一対の等高線点列を少なくとも含む複数の等高線点列上にある複数の近傍点を前記等高線点列データと前記格子点データとに基づいて検出する。各平地格子点については、それを実質的に取り囲む単一の等高線点列とその外側の他の少なくとも一つの等高線点列を含む複数の標高が異なる等高線点列上に位置する、当該平地格子点の複数の近傍点を検出する。
【００４１】
より具体的には、格子点用最急方位探索部４１は、各格子点について周囲の等高線の状況を調べ、各格子点について、等高線点列データ上に位置し、最も傾斜が急な方向にある複数の近傍の点を、当該格子点の近傍点として検出する。更に具体的には、格子点用最急方位探索部４１は、各格子点について、その点から見て最も傾斜が急な方向にあり、かつ、等高線点列データ上にある１対の互いに逆方向にある点（以下、最急方位点と呼ぶことがある）ｐ１、ｐ２の座標と標高を検出し、それぞれの最急方位点に対して同様に最も傾斜が急な方向にあり、かつ等高線上にある、元の格子点から見て遠方にある点（以下、２次最急方位点と呼ぶことがある）ｑ１、ｑ２の位置と標高を検出する。
【００４２】
更に、格子点用最急方位探索部４１は、以上の検出結果に基づいて当該格子点の属性を決定する。属性は、格子点の種別を表す属性であり、本実施の形態では、格子点の位置の種別を表す属性が使用される。具体的には、傾斜地点と平地点という属性が使用される。格子点用最急方位探索部４１は処理結果として格子点用最急方位データ２５を生成し、記憶装置２０に記憶する。
【００４３】
図３は、複数の格子点に対して生成される格子点用最急方位データ２５の例を示す図である。このデータの一つの行が一つの格子点に対応するものであり、各行には、対応する格子点の座標２５０、属性２５１、最急方位ｐ１座標２５２、ｐ１標高２５３、最急方位ｐ２座標２５４、ｐ２標高２５５、２次最急方位ｑ１座標２５６、ｑ１標高２５７、２次最急方位ｑ２座標２５８、ｑ２標高２５９を含むように構成される。
【００４４】
図４は、格子点用最急方位探索部４１の処理の一例の概略フローチャートである。格子点用最急方位探索部４１の処理は、非特許文献１に記載された最急方位法による処理とほぼ同じ原理に基づいて、各格子点に関して、その属性、その格子点の最急方位点ｐ１及びｐ２の座標と標高並びに２次最急方位点ｑ１及びｑ２の座標と標高を検出するようになっている。最急方位法は、注目する格子点を通る最急方位に沿った等高線断面に対して多項式補間を適用して、当該格子点の標高を決定するものである。まず、図３に例示したデータ構造を有する格子点用最急方位データ２５の記憶領域を記憶装置２０内に確保し、格子点座標２５０に、記憶装置２０にあらかじめ記憶されている格子点データ２２（図１）を記憶させる（ステップＳ４１１）。その後、属性が決定されていない格子点の中の１つを選ぶ（ステップＳ４１２）。以下、その格子点を選択格子点と呼ぶ。
【００４５】
つぎに選択格子点の周囲の状況を調べるために、選択格子点から複数の方位、例えば１６方位に線分を延ばし、それぞれが等高線点列と最初に交わる点を周辺点として調べる。ここで得られた１６個の周辺点の座標と標高を、選択格子点に対する格子点用周辺点データリスト２４（図１）として、その選択格子点を識別する情報、例えば、選択格子点の座標と組にして記憶装置２０内に記憶する（ステップＳ４１３）。このように、格子点用周辺点データリスト２４は、各格子点に対して、その格子点が選択されたときに生成される。
【００４６】
つぎに、それらの周辺点の標高が全て同一か否かを判断する（ステップＳ４１４）。その結果、周辺点の標高の少なくとも一つが他と異なると判断されたときには、選択格子点の周辺は傾斜地であると考えられ、選択格子点の属性を傾斜地と決定し、格子点用最急方位データ２５内の選択格子点に対する属性２５１として傾斜地点を表す属性を格納する（ステップＳ４１５Ａ）。以下ではこの属性の格子点を傾斜地点あるいは傾斜地格子点と呼ぶことがある。更に、上記１６個の周辺点のうちで、選択格子点に最も近くに位置する、等高線点列上の点を最急方位点ｐ１として検出する。更に、上記１６個の周辺点のうちで、点ｐ１が位置する等高線点列とは標高が異なる他の等高線点列上にあり、選択選択格子点に最も近い他の点を他の最急方位点ｐ２として検出し、点ｐ１とｐ２のそれぞれの座標と標高を格子点用最急方位データ２５内に、選択格子点に対する最急方位ｐ１座標２５２、ｐ１標高２５３、最急方位ｐ２座標２５４、ｐ２標高２５５として格納する（ステップＳ４１５Ｂ）。
【００４７】
更に、最急方位点ｐ１から複数の方位（例えば１６方位）に線分を延ばしてそれぞれがいずれかの等高線と最初に交わる点を周辺点として検出し、検出された１６個の周辺点の内で、最急方位点ｐ１から見て選択格子点とは逆方向にあり、かつ最急方位点ｐ１に最も近い点を２次最急方位点ｑ１として検出する。ここで、逆方向とは、最急方位点ｐ１と選択格子点を結ぶ線分に対して垂直な一対の方位の両側のうち、選択格子点が含まれない側を向く方位のことである。同様に、最急方位点ｐ２から複数の方位（例えば１６方位）に線分を延ばしてそれぞれがいずれかの等高線と最初に交わる点を周辺点として検出し、検出された１６個の周辺点の内で、最急方位点ｐ２から見て選択格子点とは逆方向にあり、かつ最急方位点ｐ２に最も近い点を２次最急方位点ｑ２として検出する。
【００４８】
検出された２次最急方位点ｑ１、ｑ２のそれぞれの座標と標高を、格子点用最急方位データ２５内に、選択格子点に対する２次最急方位ｑ１座標２５６、ｑ１標高２５７、２次最急方位ｑ２座標２５８、ｑ２標高２５９として格納する（ステップＳ４１５Ｃ）。この選択格子点では、点ｐ１とｑ１を結ぶ経路が、選択格子点の、それぞれが位置する等高線点列に対する最急経路となり、点ｐ２とｑ２を結ぶ経路が、選択格子点の、それぞれが位置する等高線点列に対する最急経路となる。選択された傾斜地格子点に関する処理はこれで終了し、処理はステップＳ４１７に移る。
【００４９】
図５は、選択格子点と等高線点列との間の異なる関係を示す図である。同図（ａ）は、図２（ａ）に示された等高線地図における、傾斜地にある格子点Ｒに対する、最急方位点ｐ１、ｐ２及び２次最急方位点ｑ１、ｑ２の例を示すものである。この図の場合、最急方位点ｐ１、ｐ２はそれぞれ等高線Ｃ２、Ｃ３上にあり、２次最急方位点ｑ１、ｑ２はそれぞれ等高線Ｃ１、Ｃ４上にある。符号１８１は、点列ｑ２、ｐ２、Ｒ、ｐ１、ｑ１を結ぶ折れ線を示す。その折れ線１８１は、後に説明するように、格子点Ｒの標高を決定するに使用される。
【００５０】
図４に戻り、ステップＳ４１４での判定の結果、選択格子点に対して検出された１６個の周辺点の標高が全て一致すると判断されたときには、選択格子点は、単一の閉じた等高線点列により実質的に囲まれていると考えることができ、選択格子点の属性を平地点と決定し、格子点用最急方位データ２５内の選択格子点に対する属性２５１として平地点を表す属性を格納する（ステップＳ４１６Ａ）。以下ではこの属性の格子点を平地点あるいは平地格子点と呼ぶことがある。その格子点は平地にあるとしても、その等高線点列の標高を有する完全に平坦な地面上に位置する場合よりも、その等高線点列で囲まれた領域内でも緩やかに標高が変化する曲面上に位置するのが普通である。そこで、その選択格子点の標高をより正確に計算するためのデータとして、選択格子点の近傍に位置する複数の近傍点を検出する。
【００５１】
具体的には、上記１６個の周辺点のうちで、選択格子点に最も近い点を最急方位点ｐ１として検出し、選択格子点から見てその最急方位点ｐ１とは正反対の方位にある周辺点を他の最急方位点ｐ２として検出し、これらをいずれも選択格子点に対する最急方位点とし、それらの点ｐ１、ｐ２のそれぞれの座標と標高を、格子点用最急方位データ２５（図３）内の上記選択格子点に対する最急方位ｐ１座標２５２、ｐ１標高２５３、最急方位ｐ２座標２５４、ｐ２標高２５５に記憶させる（ステップＳ４１６Ｂ）。
【００５２】
更に、ステップＳ４１５Ｃと同様に、最急方位点ｐ１から複数の方位（例えば１６方位）に線分を延ばしてそれぞれがいずれかの等高線と最初に交わる点を周辺点として検出し、検出された１６個の周辺点の内で、最急方位点ｐ１から見て選択格子点とは逆方向にあり、かつ最急方位点ｐ１に最も近い、等高線上の点を２次最急方位点ｑ１として検出する。同様に、最急方位点ｐ２についても、２次最急方位点ｑ２を検出する。検出された２次最急方位点ｑ１、ｑ２のそれぞれの座標と標高を、格子点用最急方位データ２５内に、選択格子点に対する２次最急方位ｑ１座標２５６、ｑ１標高２５７、２次最急方位ｑ２座標２５８、ｑ２標高２５９として格納する（ステップＳ４１６Ｃ）。
【００５３】
図５（ｂ）は、図２（ｄ）の等高線地図の場合における、平地にある格子点Ｒに対する、最急方位点ｐ１、ｐ２及び２次最急方位点ｑ１、ｑ２の例を示すものである。この図の場合、最急方位点ｐ１、ｐ２はともに等高線Ｃ１５上にあり、互いに正反対の方向にある。２次最急方位点ｑ１、ｑ２はともに等高線Ｃ１６上にある。符号１９１は、点列ｑ２、ｐ２、Ｒ、ｐ１、ｑ１を結ぶ折れ線を示す。その折れ線１９１は、後に説明するように、格子点Ｒの標高を決定するに使用される。
【００５４】
なお、前述の非特許文献１では、ステップＳ４１４で述べたような、選択格子点から見て１６個の方位における等高線上にある近傍点の標高が全て同じであると判断された格子点については、すぐに平地点とは判断しないで保留格子点と判断し、当該保留格子点に隣接する周囲の格子点の中に、当該保留格子点と当該隣接する格子点との両方が同じ等高線に囲まれ、かつ、傾斜地格子点であるような 隣接する格子点があるか否かを判定し、そのような隣接格子点がある場合には、保留格子点を傾斜地格子点と判断し、そのような隣接格子点がない場合には、その保留格子点を平地格子点と判断している。
【００５５】
しかし、本実施の形態では、簡単化のためにステップＳ４１４（図４）の判定により、選択格子点が平地であるか否かを判定するものとする。もちろん選択格子点が平地格子点であるか否かの判定を非特許文献１に記載のものあるいは他のものに変更してもよい。なお、ステップＳ４１４で選択格子点が平地にあると判断された場合には、通常は、最急方位点ｐ１、ｐ２は同じ閉じた等高線上に位置し、したがって、最急方位点ｐ１、ｐ２の標高は同じである。なお、図５（ｂ）にあるように、対応する２次最急方位点ｑ１、ｑ２も一般には隣接する同じ等高線上にあり、したがって、２次最急方位点ｑ１、ｑ２の標高は同じである。しかし、場合によっては２次最急方位点ｑ１、ｑ２は互いに異なる等高線上にあってもよく、その場合には２次最急方位点ｑ１、ｑ２の標高は異なる。
【００５６】
図４に戻り、選択された平地格子点に関する処理は、ステップＳ４１６Ｃの実行により終了し、処理はステップＳ４１７に移る。ステップＳ４１７では、未処理の格子点があるか否かが判断され、未処理の格子点があるときには、処理はステップＳ４１１に戻り、未処理の格子点がないときには、格子点用最急方位探索部４１の処理は終了する。
【００５７】
図１に戻り、標高データを生成可能なプログラム４０は、格子点用最急方位探索部４１の処理が終了すると、各格子点について、当該格子点の近傍に位置する、等高線上にある複数の近傍点の位置と標高に基づいて、当該格子点の標高を決定する。より具体的には、標高データを生成可能なプログラム４０は、各格子点の標高の決定のために標高計算部４２を実行する。本実施の形態では、標高計算部４２は格子点用最急方位探索部４１により生成された格子点用最急方位データ２５に基づいて各格子点の標高を決定する。
【００５８】
図６は、標高計算部４２の処理の一例の概略フローチャートである。まず、属性が傾斜地点であり標高が決定されていない傾斜地格子点を選択する（ステップＳ４２１）。この選択は、格子点用最急方位データ２５に属性が傾斜地点とされている格子点であって、標高データ２９（図１）内の同じ座標を有する格子点に対して標高が記憶されていない格子点を検出することにより行うことができる。
【００５９】
その後、選択された傾斜地格子点に対して決定された最急方位点ｐ１、ｐ２、２次最急方位点ｑ１、ｑ２に関するデータに基づいて、当該格子点の標高を計算するための傾斜地格子点用の標高計算式を決定し（ステップＳ４２２）、決定された標高計算式を用いて、当該傾斜地格子点の標高を決定し、決定した標高を標高データ２９（図１）内にその格子点の標高として記憶する（ステップＳ４２３）。これらのステップＳ４２２、Ｓ４２３の処理の詳細は後に説明する。その後、属性が傾斜地点であり標高が決定されていない傾斜地格子点がまだあるか否かを判別し（ステップＳ４２４）、あればステップＳ４２１に戻り、以上の処理を繰り返す。なければ、ステップＳ４２５に移る。
【００６０】
ステップＳ４２５では、属性が平地点であり、標高が決定されていない平地格子点を選択する。その後、選択された平地格子点に対して決定された最急方位点ｐ１、ｐ２、２次最急方位点ｑ１、ｑ２に関するデータに基づいて、当該格子点の標高を計算するための平地格子点用の標高計算式を決定し（ステップＳ４２６）、決定された標高計算式を用いて、当該平地格子点の標高を決定し、決定した標高を標高データ２９（図１）内にその格子点の標高として記憶する（ステップＳ４２７）。これらのステップＳ４２６、Ｓ４２７の処理の詳細は後に説明する。その後、属性が平地点であり標高が決定されていない平地格子点がまだあるか否かを判別し（ステップＳ４２８）、あればステップＳ４２５に戻り、以上の処理を繰り返す。なければ、標高計算部４２の処理が終了する。
【００６１】
図７は、図６のステップＳ４２２での傾斜地格子点用の標高計算式の決定例とステップＳ４２３での傾斜地格子点の標高の計算例を説明するための図である。図６のステップＳ４２２とＳ４２３の処理の対象となる傾斜地格子点Ｒとその格子点Ｒに対して検出された近傍のいくつかの点ｑ２、ｐ２、ｐ１、ｑ１の例は、図５（ａ）に示したとおりである。図７（ａ）において、横軸は、当該選択格子点Ｒに対して検出された等高線地図上の近傍点ｑ２、ｐ２、Ｒ、ｐ１、ｑ１を結ぶ折れ線１８１（図５）をそれぞれの点の間の距離を維持しながら並べた直線上の座標Ｓを表す。座標Ｓq2、Ｓp2、Ｓp1、Ｓq1は、それぞれ上記折れ線１８１上の点ｑ２、ｐ２、ｐ１、ｑ１に対応する上記対応する直線上の座標を表し、座標Ｓｒは、傾斜地格子点Ｒに対する上記直線上の座標を表す。上記直線（横軸）の座標の原点は任意の点に決めてよい。点ｑ２、ｐ２、ｐ１、ｑ１に対する座標Ｓq2、Ｓp2、Ｓp1、Ｓq1は、隣接する点間の距離と原点の位置とにより決定される。同様に、座標Ｓｒも、点ｑ１とｐ１間の距離及び点ｐ１とＲ間の距離若しくは点ｑ２とｐ２間の距離及び点ｐ２とＲ間の距離と、原点の位置とにより決定することができる。なお、図５（ａ）等では、格子点Ｒ、近傍点ｐ１、ｑ１、ｑ２、ｐ２は、等高線地図という平面上に位置する点であるが、図７（ａ）等のように、標高を計算する方法を説明する図においては、これらの近傍点に対応する、３次元空間内に位置する点も同じ記号で図示している。また、以下では、この直線上の座標（例えばＳｒ）を簡単化のために上記折れ線１８１上の対応する点（今の例では格子点Ｒ）の座標と呼ぶことがある。また、簡単化のために、横軸上のある座標の点の名称としてその座標を使用することがある。例えば座標Ｓq1の点を単に点Ｓq1と呼ぶことがある。また、折れ線１８１上の点（例えば点Ｒ）に対する横軸上の座標（例えばＳｒ）を、折れ線１８１上のその点（Ｒ）の座標と呼ぶことがある。
【００６２】
符号Ｌ１、Ｌ21、Ｌ22、Ｌ３はそれぞれ点Ｓp1とＳq1の間の距離、点ＳｒとＳp1の間の距離、点Ｓp2とＳｒの間の距離、点Ｓq2とＳp2の間の距離を表す。縦軸は標高を表し、符号ｈp1、ｈp2、ｈq1、ｈq2はそれぞれ、点ｐ１、ｐ２、ｑ１、ｑ２における標高を表し、これらの標高は、それぞれの点を通過する等高線の標高として等高線点列データ２１により与えられていて、既に選択格子点に対応して格子点用最急方位データ２５内に記憶されている。Ｈ１、Ｈ２、Ｈ３はそれぞれ、点ｑ１とｐ１間の標高差、点ｐ１、ｐ２間の標高差、点ｐ２とｑ２間の標高差を表す。
【００６３】
同図（ｂ）は、格子点Ｒの標高を補間により算出するための計算式の例として使用する、上記折れ線１８１上の座標Ｓの３次元の関数ｆｒ(Ｓ)を示す。この関数が傾斜地格子点用標高計算式として使用される。同図（ｃ）は、上記関数ｆｒ(Ｓ)を決定するための条件を示す図である。符号５１、５２はそれぞれ点ｐ１、ｐ２における標高が点ｐ１、ｐ２における等高線の標高ｈp1、ｈp2であることを示し、α、βは後述の平均勾配を示す。
【００６４】
１次差分法により上記３次元の関数を決定するときには、上記α、βは符号５５、５６により与えられる。符号５５は点ｐ２、ｑ１の間の平均勾配αを表し、符号５６は点ｑ２、ｐ１の間の平均勾配αを表し、符号５３は点ｐ１における関数ｆｒ(Ｓ)の微係数（勾配）が上記平均勾配αに等しいことを示し、符号５４は点ｐ２における関数ｆｒ(Ｓ)の微分係数（勾配）が上記平均勾配βに等しいことを示す。これらの６つの条件により、同図（ｂ）に示す３次元関数の係数ａ、ｂ、ｃ、ｄを決定できる。この決定を行う処理の中で、その決定に先立って点ｑ１、ｐ１、Ｒ、ｐ２、ｑ２の、折れ線１８１上の座標をそれらの点の間の距離と原点の位置に基づいて決定する必要があることは言うまでもない。こうして、３次元関数の係数ａ、ｂ、ｃ、ｄを決定することで、傾斜地格子点用標高計算式ｆｒ(Ｓ)を決定できたことになる。
【００６５】
図６のステップＳ４２２では、以上の考えにより図７（ｂ）に示す傾斜地格子点用標高計算式ｆｒ(Ｓ）が決定され、同図のステップＳ４２３では、上記決定された計算式ｆｒ(Ｓ）において、格子点Ｒに対応する横軸上の座標Ｓｒを入力して関数値ｆｒ(Ｓｒ）が格子点Ｒにおける標高として計算され、標高データ２９（図１）内に当該選択格子点の標高として記憶される。なお、以上では、傾斜地格子点用標高計算式ｆｒ(Ｓ）の決定と、傾斜地格子点Ｒにおける標高値ｆｒ(Ｓｒ）の計算とを別のステップとして説明したが、これらは一つの式を用いて行うことも可能である。すなわち、図７（ｅ）に示す標高値ｆｒ(Ｓｒ）の計算式として、その中の係数ａ、ｂ、ｃ、ｄに代えてそれぞれの係数を計算する式を代入した式を使用すれば、係数ａ、ｂ、ｃ、ｄは別に計算されず標高ｆｒ(Ｓｒ）の計算式の計算の途中で計算される。そのように計算した場合でも、本発明に関しては、傾斜地格子点用の標高計算式の決定と、傾斜地格子点Ｒにおける標高値ｆｒ(Ｓｒ）の計算とを行っていることには変わりはない。このことは後に述べる他の傾斜地格子点の標高の計算あるいはその補正あるいは傾斜地格子点の近傍の格子点対応点の標高の計算等の場合についても言えることである。
【００６６】
以上のようにして、標高計算部４２は、選択格子点Ｒが傾斜地点であるとき、近傍点であるｐ１、ｐ２、ｑ１、ｑ２の位置と標高と、選択格子点Ｒの位置とに基づいて、当該選択格子点の標高を決定する。すなわち、近傍点であるｐ１、ｐ２、ｑ１、ｑ２の位置と選択格子点Ｒの位置とに基づいて、近傍点ｐ１、ｐ２、ｑ１、ｑ２の標高を補間して当該選択格子点の標高を決定する。このように、本実施の形態では、傾斜地格子点Ｒを通る等高線断面曲線を近似する線分として曲線を使用して、その格子点の標高を補間により算出する。更に、最急方位法では、上記曲線として、格子点Ｒを通る最急方位に沿った等高線断面曲線を近似する、例えば図７（ｂ）に示す曲線を使用する。
【００６７】
図８は、図６のステップＳ４２６での平地格子点用の標高計算式の決定例とステップＳ４２７での平地格子点の標高の計算例を説明するための図である。ステップＳ４２６とＳ４２７の処理の対象となる平地格子点Ｒとその格子点Ｒに対して検出された近傍のいくつかの点ｑ２、ｐ２、ｐ１、ｑ１の例は、図５（ｂ）に示したとおりである。図８（ａ）において、横軸は、当該選択格子点Ｒに対して検出された等高線地図上の点ｑ２、ｐ２、ｐ１、ｑ１を結ぶ折れ線１９１（図５（ｂ））をそれぞれの点の間の距離を維持しながら並べた直線上の座標Ｓを表す。座標Ｓq2、Ｓp2、Ｓp1、Ｓq1は、それぞれ上記折れ線１９１上の点ｑ２、ｐ２、ｐ１、ｑ１に対応する上記直線上の座標を表し、座標Ｓｒは、平地格子点である選択格子点Ｒに対する上記直線上の座標を表す。上記直線（横軸）の座標の原点は任意の点に決めてよい。
【００６８】
符号Ｌ１、Ｌ21、Ｌ22、Ｌ３はそれぞれ点Ｓp1とＳq1の間の距離、点Ｓｒと点Ｓpとの間の距離、点Ｓp2とＳｒの間の距離、点Ｓq2とＳp2の間の距離を表す。縦軸は標高を表し、ｈp1、ｈp2、ｈq1、ｈq2はそれぞれ、点ｐ１、ｐ２、ｑ１、ｑ２における標高を表し、これらの標高は、それぞれの点を通過する等高線の標高として等高線点列データ２１により与えられていて、既に選択格子点に対応して格子点用最急方位データ２５内に記憶されている。ただし、平地格子点Ｒについては、既に述べたように、通常は、最急方位点ｐ１、ｐ２は閉じた一つの等高線上にあるので、それらに対する標高ｈp1、ｈp2は図に示すように同一であると仮定している。更に対応する２次最急方位点もその等高線に隣接する同一の等高線上にある場合が多いので、それらに対する標高ｈq1、ｈq2は図に示すように同一であると仮定している。
【００６９】
同図（ｂ）は、平地格子点Ｒの標高を補間により算出するための平地点用標高計算式の一例として、上記折れ線１９１上の座標Ｓの２次関数である関数ｆｒ(Ｓ)を示す。符号５７ａの式が示すように、関数ｆｒ(Ｓ）は、上記折れ線１９１上の座標Ｓの２次関数である二つの関数ｆ１(Ｓ)、ｆ２(Ｓ)の平均値である。関数ｆ１(Ｓ)とｆ２(Ｓ)は、それぞれ符号５７ｂと５７ｃが示すように２次関数である。同図（ａ）には、関数ｆ１(Ｓ)の一例である曲線１０１、関数ｆ２(Ｓ) の一例である曲線１０２及びそれらの平均値である関数ｆｒ(Ｓ）の曲線１００の例を示している。
【００７０】
同図（ａ）に示されるように、関数ｆ１(Ｓ)は、点ｑ１、ｐ１、ｐ２を通過する曲線を表す関数であり、この関数は、選択格子点Ｒを通過し等高線地図の一つの断面を表す等高線断面曲線のうち、主に選択格子点Ｒの図の右側の部分を近似する関数である。関数ｆ１(Ｓ)の係数ａ１、ｂ１、ｃ１は符号５８に示されるように、点ｐ２、ｐ１、ｑ１に対応する標高を有する３次元地形上の点を通過するという条件を満たすように決定される。関数ｆ２(Ｓ)は点ｑ２、ｐ２、ｐ１を通過する曲線を表す関数であり、この関数は、選択格子点Ｒを通過し等高線地図の一つの断面を表す等高線断面曲線のうち、主に選択格子点Ｒの図の左側の部分を近似する関数である。関数ｆ２(Ｓ)の係数ａ２、ｂ２、ｃ２は、符号５９に示されるように、点ｑ２、ｐ２、ｐ１に対応する標高を有する３次元地形上の点を通過するという条件を満たすように決定される。関数ｆｒ(Ｓ）として、これらの二つの関数の平均値を使用することにより、関数ｆｒ(Ｓ）は、点ｐ２、ｐ１、ｑ１、ｑ２を通過し、選択格子点Ｒの図の左右のいずれにおいても等高線地図の一つの断面を表す等高線断面曲線を滑らかに近似する曲線とすることができる。図６のステップＳ４２６では、このように平地格子点用標高計算式として図８（ｂ）の関数ｆｒ(Ｓ)が決定される。図６のステップＳ４２７での平地格子点の標高の計算は、この関数ｆｒ(Ｓ）の変数Ｓとして選択格子点Ｒの座標Ｓｒを入力して関数値ｆｒ(Ｓｒ)を計算することにより行われる。
【００７１】
以上のようにして、標高計算部４２は、選択格子点Ｒが平地点であるとき、近傍点であるｐ１、ｐ２、ｑ１、ｑ２の座標と標高と、選択格子点Ｒの座標とに基づいて、当該選択格子点の標高を決定する。すなわち、近傍点であるｐ１、ｐ２、ｑ１、ｑ２の位置と選択格子点Ｒの位置とに基づいて、近傍点ｐ１、ｐ２、ｑ１、ｑ２の標高を補間して当該選択格子点の標高を決定する。このように、本実施の形態では、平地格子点Ｒを通る等高線断面曲線を近似する線分として曲線を使用し、その平地格子点の標高を補間により算出する。更に、最急方位法では、上記曲線として、平地格子点Ｒを通る最急方位に沿った等高線断面曲線を近似する曲線を使用する。本実施の形態では、その曲線としては、例えば図８（ａ）に示す曲線が使用される。
【００７２】
図１に戻り、標高データ生成装置１は、複数の等高線と三角点、基準点あるいは補助点のような複数の特定点を含む２次元等高線地図に含まれた前記複数の等高線のそれぞれを点列で表す等高線点列データと前記複数の特定点のそれぞれの座標と標高を表す特定点データから、それぞれ当該地図を分割して得られる複数のメッシュの頂点である複数の格子点のそれぞれの標高として、それぞれの格子点の近傍の特定点の標高により補正された標高を決定可能になっている。より具体的には、標高データを生成可能なプログラム４０は、標高計算部４２により決定された標高のうち、各特定点の近傍の格子点の標高を補正するために補正標高決定部４３を実行可能になっている。
【００７３】
図１に戻ると、補正標高決定部４３は、一例として、特定点用最急方位探索部４４と、近傍格子点特定点検出部４５と、未処理特定点選択部４６と、傾斜地格子点用の補正標高決定部４７と、平地格子点用の補正標高決定部４８とにより構成することができる。近傍格子点特定点検出部４５には、後に説明するように近傍格子点特定点登録部４９０が含まれている。傾斜地格子点用の補正標高決定部４７には、傾斜地格子点用の非重複補正標高決定部５００、傾斜地格子点用の２重補正標高決定部５１０、傾斜地格子点用の３重補正標高決定部５２０が含まれている。
【００７４】
本実施の形態では、傾斜地にある格子点の近傍に複数の特定点が存在する場合に、これらの処理部を使用して、それらの特定点の標高と近傍の等高線上の複数の点の標高を使用して当該格子点の標高を補正した標高データを生成することが可能である。また、一つの等高線点列に囲まれた平地にある格子点の近傍に特定点が存在する場合に、その特定点の標高と、近傍の複数の等高線上の点の標高を使用して当該格子点の標高を補正した標高データを生成できる。
【００７５】
図９は、補正標高決定部４３の処理の一例の概略フローチャートである。補正標高決定部４３は、起動されると、まず特定点用最急方位探索部４４を実行する。特定点用最急方位探索部４４は、格子点用最急方位探索部４１と同様に、三角点データ２３Ａ、基準点データ２３Ｂ、補助点データ２３Ｃのような特定点データ２３で示される複数の特定点の各々について、その属性と最急方位点ｐ１、ｐ２と２次最急方位点ｑ１、ｑ２とを決定してそれらのデータを含む特定点用最急方位データ２７を生成する。
【００７６】
図１０は、複数の特定点に対して生成される特定点用最急方位データ２７の例を示す図である。特定点用最急方位データ２７は格子点用最急方位データ２５と同様なデータであり、このデータの一つの行が一つの特定点に対応するものであり、各行に、対応する特定点の座標２７０、属性２７１、その特定点に対する最急方位ｐ１座標２７２、ｐ１標高２７３、最急方位ｐ２座標２７４、ｐ２標高２７５、２次最急方位ｑ１座標２７６、ｑ１標高２７７、２次最急方位ｑ２座標２７８、ｑ２標高２７９を含むように構成される。
【００７７】
図９に戻り、特定点用最急方位探索部４４の処理は、格子点用最急方位探索部４１と同様である。特定点用最急方位探索部４４は、上記特定点用最急方位データ２７を格納する領域を記憶装置２０内に確保し、特定点データが示す特定点の座標を上記特定点用最急方位データ２７内の座標２７０として格納し、その後、格子点用最急方位探索部４１と同様に、各特定点に対する特定点用周辺点データリスト２６を利用して各特定点の属性と最急方位点ｐ１、ｐ２、２次最急方位点ｑ１、ｑ２を検出して、上記特定点用最急方位データ２７内に、属性２７１、最急方位ｐ１座標２７２、ｐ１標高２７３、最急方位ｐ２座標２７４、ｐ２標高２７５、２次最急方位ｑ１座標２７６、ｑ１標高２７７、２次最急方位ｑ２座標２７８、ｑ２標高２７９を格納する。
【００７８】
図９に戻り、補正標高決定部４３は、その後、近傍格子点特定点検出部４５を実行する。近傍格子点特定点検出部４５は、近傍格子点データ２８Ａと近傍特定点データ２８Ｂを生成する。近傍格子点データ２８Ａは、各特定点の近傍に位置する補正対象格子点に関する情報を含むデータであり、近傍特定点データ２８Ｂは、当該特定点の近傍にあり当該特定点による標高の補正の対象となる補正対象格子点に対する補正元特定点に関する情報を含むデータである。
【００７９】
図１１は、近傍格子点データ２８Ａと近傍特定点データ２８Ｂの例を示す。同図（ａ）は、近傍格子点データ２８Ａの例を示し、近傍格子点データ２８Ａの各行は、一つの特定点に対応し、その特定点の座標２８１と、その特定点の近傍にある一つ又は補正対象格子点の全てに対して標高の補正が完了したことを示す補正完了フラグ２８２と、当該特定点の近傍にある、当該特定点による補正の対象となる一つ又は複数の補正対象格子点の総数２８３と、それらの補正対象格子点の各々について、その座標２８４とその格子点に対する標高の補正の完了を示す補正完了フラグ２８５との組を複数組記憶可能になっている。
【００８０】
ここで、各特定点による補正対象格子点は、所定の条件を満たす近傍の格子点である。すなわち、当該特定点の補正対象格子点は、当該特定点からの距離が、利用者があらかじめ指定した補正適用範囲内にあり、かつ、当該特定点が標高が異なる一対の等高線点列間に位置する傾斜地特定点の場合には、当該補正対象格子点も当該一対の等高線点列の間に位置し、当該特定点が閉じた等高線点列により囲まれた平地にある平地特定点の場合には、当該補正対象格子点も当該特定点を取り囲む当該等高線内に位置することである。各特定点について複数の近傍の格子点が補正対象となりうるので、近傍格子点データ２８Ａ内には、複数の格子点の各々について座標２８４と補正完了フラグ２８５が記憶されるようになっている。特定点に対する補正完了フラグ２８２と補正対象格子点に対する補正完了フラグ２８５の初期状態はリセット状態であり、補正対象格子点数２８３の初期値は０でる。
【００８１】
なお、補正対象格子点を、このように特定点からの距離だけでなく、特定点と周辺の等高線との関係と同じ関係を当該周辺の等高線に対して有する格子点に限定するのは、特定点から所定の距離内に位置する近傍の格子点であっても、特定点と周辺の等高線との位置関係と異なる位置関係にある格子点については、特定点の標高の当該格子点の標高への影響を推測することが難しいからである。逆に、特定点と周囲の等高線との関係が同じ関係にある格子点については、特定点の標高を反映するように特定点を通過する等高線断面曲線を近似する線分を決定でき、その線分を用いて当該近傍の格子点を通過する等高線断面曲線を近似する線分も変更することができるので当該格子点の標高を補正することが可能となるからである。
【００８２】
図１１（ｂ）は、近傍特定点データ２８Ｂの例を示し、このデータ２８Ｂの各行は、いずれかの特定点の補正対象となる、上記近傍格子点データ２８Ａに座標が登録されている補正対象格子点の一つに対応する。各行には、その格子点の座標２８６と、当該格子点を補正対象とする補正対象元特定点の総数２８７と、それらの特定点の各々の座標２８８とを記憶可能になっている。同一の格子点が一つ又は複数の特定点の補正対象になる場合があるので、近傍特定点データ２８Ｂには、各補正対象格子点の補正元特定点の総数２８７とそれぞれの座標２８８が記憶される。総数２８７の初期値は０である。
【００８３】
図１２は、近傍格子点特定点検出部４５の処理の一例の概略フローチャートである。近傍格子点特定点検出部４５は、起動されると、まず特定点の補正適用範囲を示す補正適用範囲データを利用者に入力させる（ステップＳ４５１）。補正適用範囲データは、補正適用範囲が特定点を中心とする円形の範囲とする場合には、その半径を示すものでもよく、補正適用範囲が特定点を囲む正方形領域であるときには、その一辺の長さ又はその半分を示すものでもよい。なお、半径あるいは一辺の長さあるいはその半分の長さの代わりに、その半径あるいは一辺の長さあるいはその半分の長さに含まれる格子点数を示すものでもよい。つぎに近傍格子点特定点検出部４５でまだ処理されていない未処理の特定点の一つを特定点用最急方位データ２７から選択する（ステップＳ４５２）。以下では、この選択された特定点を、近傍格子点特定点検出部４５の処理の説明の間、選択特定点と呼ぶことがある。
【００８４】
つぎに、当該選択特定点の属性が傾斜地点か平地点かを判断し（ステップＳ４５３）、当該属性が傾斜地である場合には、補正対象となる傾斜地格子点の検出を試みる（ステップＳ４５４）。補正対象傾斜地格子点は、当該選択特定点から見て上記指定された補正適用範囲内にあり、当該選択特定点の両側に位置する一対の最も近い等高線点列（すなわち、当該選択特定点の最急方位点ｐ１、ｐ２がそれぞれ位置する一対の等高線点列）の間にあるという条件を満たすものである。一方、ステップＳ４５３において、選択特定点が平地点であると判断されたときには、処理はステップＳ４５５に移り、そこでは補正対象となる平地格子点の検出を試みる。補正対象平地格子点は、当該選択特定点の上記補正適用範囲内にあり、当該選択特定点を実質的に取り囲む等高線点列により実質的に取り囲まれているという条件を満たす平地格子点である。なお、ステップＳ４５４、Ｓ４５５のいずれにおいても、複数の補正対象格子点がある場合にはそれらを全て検出する。
【００８５】
ステップＳ４５４又はステップＳ４５５のいずれかを実行した後に、ステップＳ４５６において、ステップＳ４５４又はＳ４５５での検出が成功したか否かが判断され、検出が成功したときには、近傍格子点特定点登録部４９０が実行され、当該選択特定点とそれに対する補正対象格子点に関する情報が、後に説明するようにして近傍格子点データ２８Ａと近傍特定点データ２８Ｂに登録される。
【００８６】
図１３は、近傍格子点特定点登録部４９０の処理の一例の概略フローチャートである。まず、近傍格子点データ２８Ａ（図１０（ａ））内に、選択特定点の座標２８１と、その特定点に対応して、検出された補正対象格子点の座標２８４を格納し、対応する補正対象格子点数２８３を１だけ増大する（ステップＳ４９１）。更に、近傍特定点データ２８Ｂ（図１０（ｂ））に関しては、その検出された補正対象格子点の座標がそこに既に格納されているか否かが判断される（ステップＳ４９２）。本実施の態様では、図２（ｂ）又は（ｃ）に例示したように一つの格子点が複数の特定点の補正対象格子点になりうると仮定している。したがって、他の特定点の処理により当該格子点の座標が近傍特定点データ２８Ｂに既に登録されている可能性がある。そこでステップＳ４９２の判断が実行される。
【００８７】
ステップＳ４９２の判断の結果、当該格子点の座標が近傍特定点データ２８Ｂ内に登録されていないと判断されたときには、近傍特定点データ２８Ｂ内に、当該格子点の座標を補正対象格子点座標２８６として登録し、その格子点に対応して、当該特定点の座標を補正元特定点座標２８８として登録し、補正元特定点数２８７の総数を１だけ増大する（ステップＳ４９３）。もしステップＳ４９２において、当該格子点の座標が既に近傍特定点データ２８Ｂに登録されていると判断された場合には、近傍特定点データ２８Ｂ内に、その登録された補正対象格子点の座標２８６に対応して、当該特定点の座標を補正元特定点座標２８８として登録し、更に対応する補正元特定点数２８７を１だけ増大する（ステップＳ４９４）。
【００８８】
その後、ステップＳ４９５において、他に検出された補正対象格子点があるか否かが判断される。近傍格子点特定点検出部４５のステップＳ４５４又はＳ４５５（図１２）で複数の格子点が検出されている場合、他の補正対象格子点が検出されていることになる。この場合には、処理はステップＳ４９６に進む。同じ特定点に対して他の補正対象格子点が検出されている場合には、近傍格子点データ２８Ａには既に当該特定点の座標が登録されている。したがって、ステップＳ４９６では、当該特定点の座標２８１に対応して、当該他の格子点の座標を補正対象格子点の座標２８４として近傍格子点データ２８Ａに追加して登録し、対応する補正対象格子点数２８３を１だけ増大する。
【００８９】
その後ステップＳ４９２及びステップＳ４９３又はＳ４９４の一方が同様に実行される。以上の処理が他の検出された全ての補正対象格子点に対して繰り返されると、ステップＳ４９５の判断により、他の補正対象格子点がもはや検出されていないと判断され、近傍格子点特定点登録部４９０の処理が終了し、処理は近傍格子点特定点検出部４５（図１２）に戻る。なお、近傍格子点特定点検出部４５のステップＳ４５４又はＳ４５５で１個の補正対象格子点しか検出されていない場合も、ステップＳ４９５による判断においては、他の補正対象格子点は検出されていないと判断されるので、近傍格子点特定点登録部４９０の処理は終了し、処理は近傍格子点特定点検出部４５（図１２）に戻る。
【００９０】
図１２に戻り、近傍格子点特定点登録部４９０の処理が終了したときには、近傍格子点特定点検出部４５では、近傍格子点特定点検出部４５の処理がまだ実行されていないという意味での未処理の特定点があるか否かを特定点用最急方位データ２７に基づいて判断し（ステップＳ４５７）、ある場合には、処理はステップＳ４５２に移り、そのような未処理の特定点の一つがステップＳ４５２で検出され、ステップＳ４５３、Ｓ４５４、Ｓ４５５、近傍格子点特定点登録部４９０が繰り返される。その後、未処理の特定点がなくなったとステップＳ４５７で判断されたときに、近傍格子点特定点検出部４５の処理は終了する。
【００９１】
こうして、近傍格子点データ２８Ａ（図１１（ａ））には、特定点用最急方位データ２７に格納された複数の特定点のうち、近傍に補正対象格子点がある複数の補正元特定点の各々について、その座標２８１と、それぞれの補正対象格子点の座標２８４とが記憶される。いずれかの特定点の近傍に補正対象格子点が複数個ある場合には、それぞれの補正対象格子点の座標２８４が記憶される。近傍の補正対象格子点の総数２８３も記憶される。各補正対象格子点座標２８４に対応して記憶される補正完了フラグ２８５は最初はリセットされたままである。一方、近傍特定点データ２８Ｂ（図１１（ｂ））には、近傍格子点データ２８Ａに格納された補正対象格子点の座標の各々に対応して、その座標２８６と、その補正対象格子点に対する補正元特定点の座標２８８とが記憶される。その補正対象格子点の近傍にその格子点を補正対象格子とする特定点が複数個ある場合には、それぞれの特定点の座標が補正元特定点座標２８８として記憶され、補正元特定点数２８７もその総数だけ増大される。
【００９２】
近傍格子点特定点検出部４５（図１２）の処理が終了すると、処理は補正標高決定部４３（図９）に戻る。図９に戻ると、補正標高決定部４３では、未処理特定点選択部４６が実行される。ここでは、標高補正処理がまだ実行されていないという意味で未処理の特定点の選択が試みられる（ステップＳ４６1）。選択の対象となる特定点は、近傍格子点データ２８Ａ（図１１（ａ））に座標２８１が登録された多数の特定点のうち、補正完了フラグ２８２がリセットされた状態にある特定点である。ステップＳ４６２において、選択が成功して一つの未処理の特定点が選択されたと判断された場合（以下ではステップＳ４６１で選択された特定点を、補正標高決定部４３における処理に関する説明において選択特定点と呼ぶことがある）、つぎに特定点用最急方位データ２７に登録された選択特定点の属性を判別する（ステップＳ４６３）。属性が傾斜地点であるときには、傾斜地格子点用の補正標高決定部４７を呼び出し、属性が平地点であるときには、平地格子点用の補正標高決定部４８を呼び出す。
【００９３】
図１４は、傾斜地格子点用の補正標高決定部４７の処理の一例の概略フローチャートである。傾斜地格子点用の補正標高決定部４７は、補正標高決定部４３から呼び出されると、まず、選択特定点の一つの補正対象格子点を選択する（ステップＳ４７１）。すなわち、近傍格子点データ２８Ａ内に当該選択特定点の座標２８１に対応して座標２８４が記憶されたいずれか一つの補正対象格子点であって、対応して記憶される補正完了フラグ２８５がセットされていない格子点を選択する。この格子点を、傾斜地格子点用の補正標高決定部４７の処理の説明に関して選択補正対象格子点と呼ぶことがある。つぎに、選択された補正対象格子点に対する補正元特定点の数を判別する（ステップＳ４７２）。すなわち、近傍特定点データ２８Ｂ（図１１（ｂ））内に、その選択された補正対象格子点の座標２８６に対応して記憶された補正元特定点数２８７の値を判別する。
【００９４】
もし補正元特定点数２８７の値が１の場合、選択補正対象格子点は非重複領域内の傾斜地格子点であり、このような補正対象格子点に対しては、傾斜地格子点用の非重複補正標高決定部５００が実行される。補正元特定点数２８７の値が２の場合、選択補正対象格子点は２重重複領域内の傾斜地格子点であり、このような選択補正対象格子点に対して傾斜地格子点用の２重補正標高決定部５１０が実行される。補正元特定点数２８７の値が３の場合、選択補正対象格子点は３重重複領域内の傾斜地格子点であり、傾斜地格子点用の３重補正標高決定部５２０が実行される。以下において、傾斜地格子点用の非重複補正標高決定部５００、傾斜地格子点用の２重補正標高決定部５１０、傾斜地格子点用の３重補正標高決定部５２０の処理を説明する。
【００９５】
図１５は、傾斜地格子点用の非重複補正標高決定部５００の処理の一例の概略フローチャートである。非重複補正標高決定部５００は、まず、傾斜地特定点用の標高計算式を決定する（ステップＳ５０１）。本実施の形態では、補正元特定点を通過する等高線断面曲線を近似する傾斜地特定点用の標高計算式が決定される。この計算式の決定方法は後に説明する。つぎに、上記のようにして得られた計算式から、補正対象格子点の補正された後の標高を計算するための非重複領域内の傾斜地格子点に対する傾斜地格子点用の標高補正式を決定する（ステップＳ５０２）。この決定方法も後に説明する。得られた標高補正式に基づいて、補正対象格子点の補正された標高を計算して標高データ２９に記憶された当該格子点の標高を更新する（ステップＳ５０３）。
【００９６】
図１６は、図１５のステップＳ５０１、５０２、５０３におけるそれぞれ傾斜地特定点用の標高計算式の決定、補正対象格子点に対する標高補正式の決定及び当該補正対象格子の補正後の標高の計算の手順を説明するための図である。図１６（ａ）は、図２（ａ）の等高線図の例において、傾斜地特定点Ｉの補正対象格子点である非重複領域内の傾斜地格子点Ｒの補正後の標高の計算に使用される、それらの傾斜地特定点Ｉと傾斜地格子点Ｒの近傍の点を示す図である。
【００９７】
傾斜地特定点Ｉの近傍にある点ＢとＣは、特定点用最急方位探索部４４により傾斜地特定点Ｉに対して決定された二つの最急方位点を例示し、点ＡとＤは、同様にそれぞれの最急方位点に対して決定された二つの２次最急方位点を例示している。格子点Ｒの周辺にある点ｐ１とｐ２は、それぞれ格子点用最急方位探索部４１により補正対象の傾斜地格子点Ｒに対して決定された二つの最急方位点の例であり、点ｑ１とｑ２は、当該格子点Ｒに対して同様に決定された二つの２次最急方位点の例である。格子点Ｒに関する近傍点ｐ１、ｐ２、ｑ１、ｑ２及び折れ線１８１は、図５（ｂ）の等高線図に例示されたものと同じである。
【００９８】
まず、図１５のステップＳ５０１における傾斜地特定点用の標高計算式の決定は、例えば以下のようにしてなされる。図１６（ｂ）において、横軸は、図１６（ａ）に示された等高線地図上で、点Ａ、Ｂ、Ｃ、Ｄを結ぶ折れ線１７１をそれぞれの点の間の距離を維持しながら並べた直線上の座標Ｓを表す。以下では、この直線上の点の座標を簡単化のために上記折れ線１７１上の対応する点の座標と呼ぶことがある。上記直線上の点Ｓａ、Ｓｂ、Ｓｃ、Ｓｄは、それぞれ上記折れ線１７１上の点Ａ、Ｂ、Ｃ、Ｄに対応する横軸上の座標を表し、Ｓｉは、特定点Ｉに対する上記折れ線１７１上の座標を表す。横軸の座標の原点は原理的には任意の点に決めてよいが、後に述べる周辺の格子点の標高を補正するときのために、点Ｓｂから点Ｓｃに至る部分に対して座標Ｓの値が０から１となるように、横軸の座標を正規化しておくのがよい。
【００９９】
符号Ｌ１、Ｌ21、Ｌ22、Ｌ３は、それぞれ点Ｓｃと点Ｓｄとの間の距離、点Ｓｉと点Ｓｃとの間の距離、点Ｓｂと点Ｓｉとの間の距離、点Ｓａと点Ｓｂとの間の距離を表す。縦軸は標高を表し、ｈａ、ｈｂ、ｈｃ、ｈｄはそれぞれ点Ａ、Ｂ、Ｃ、Ｄにおける標高を表し、これらの標高は、それぞれの点を通過する等高線の標高として等高線点列データ２１により与えられている。ｈｉは、特定点Ｉの標高であり、この標高は特定点データにより与えられている。Ｈ１、Ｈ21、Ｈ22、Ｈ３はそれぞれ、点ＤとＣ間の標高差、点ＣとＩ間の標高差、点ＩとＢ間の標高差、点ＢとＡ間の標高差を表す。符号Ｉｒと座標Ｓｒとは後に説明する。
【０１００】
上記折れ線１７１上の点における標高を表す傾斜地特定点用の標高計算式として使用する関数ｆｉ(Ｓ)の一例は、同図（ｃ）の符号６０に示すように、同図（ｂ）の横軸上の座標ＳｂからＳｉに対して有効な関数ｆi1(Ｓ)と、横軸上の座標ＳｉからＳｃに対して有効な関数ｆi2(Ｓ)との組により与えられる。いずれの関数も、図７（ｂ）に例示されたのと同じく、上記折れ線１７１上の座標、すなわち、折れ線１７１に対する図１６（ｂ）の横軸上の座標Ｓの３次元の関数である。同図（ｄ）は、上記関数ｆi1(Ｓ)、ｆi2(Ｓ)を決定するための条件を示す図である。符号６１、６２は、それぞれ点Ｂ、Ｉにおける関数値ｆi1(Ｓｂ)、ｆi1(Ｓｉ)が点Ｂ、Ｉにおける等高線の標高ｈｂ、ｈｉであることを示し、符号６３、６４は、関数ｆi1の点Ｂ、Ｉにおける微分係数（勾配）があらかじめ指定された値β、γであることを示す。符号６５、６６は、それぞれ点Ｉ、Ｃにおける関数値ｆi2(Ｓｉ)、ｆi2(Ｓｃ)が点Ｉ、Ｃにおける等高線の標高ｈｉ、ｈｃであることを示し、符号６７、６８は、関数ｆi2の点Ｉ、Ｃにおける微分係数（勾配）があらかじめ指定された値γ、αであることを示す。
【０１０１】
１次差分法により上記３次元の関数ｆi1、ｆi2を決定するときには、上記α、β、γは、符号６９、７０、７１により与えられる。符号６９は点Ｉと点Ｄの間の平均勾配αを表し、符号７０は点Ａと点Ｉの間の平均勾配βを表し、符号７１は点Ｂと点Ｃの間の平均勾配γを示す。符号６３は点Ｂにおける関数ｆi1(Ｓ)の勾配が上記平均勾配βに等しいことを示し、符号６４は点Ｉにおける関数ｆi1(Ｓ)の勾配が上記平均勾配γに等しいことを示し、符号６７は点Ｉにおける関数ｆi2(Ｓ)の勾配が上記平均勾配γに等しいことを示し、符号６８は点Ｃにおける関数ｆi2(Ｓ)の勾配が上記平均勾配αに等しいことを示す。これらの条件により、関数ｆi1(Ｓ)、ｆi2(Ｓ)という二つの３次元関数のそれぞれの係数ａ、ｂ、ｃ、ｄが決定される。こうして関数ｆi1(Ｓ)、ｆi2(Ｓ)が決定され、傾斜地特定点用の標高計算式ｆｉ(Ｓ)も決定される。このように、本実施の形態では、傾斜地特定点用の標高計算式ｆｉ(Ｓ)も最急方位法を使用して決定され、この標高計算式ｆｉ(Ｓ)は、特定点Ｉを通過する等高線断面曲線をよく近似するものである。以上のようにして、図１５のステップＳ５０１における傾斜地特定点用の標高計算式の決定がなされる。
【０１０２】
図１５のステップＳ５０２における傾斜地格子点用標高補正式の決定は、例えば以下のようにして実行することができる。特定点Ｉの標高により補正した後の格子点Ｒを通る折れ線１８１（図１６）上の点における標高を表す傾斜地格子点用標高補正式として、例えば図１６（ｅ）内に符号７２で示す式１で定義される関数ｆｍ(Ｓ)を用いることができる。式１において、ｆｒ(Ｓ)は、図５（ａ）に示した、補正対象格子点Ｒと点ｐ１、ｐ２を結ぶ折れ線１８１上の点における標高を与える傾斜地格子点用の標高計算式として、図６のステップＳ４２２で決定され、図７（ｂ）に例示されたものであるが、図６とは異なり、その折れ線１８１を直線に延ばしたときのその直線上での点ｐ１から点ｐ２に至る部分の座標Ｓが０〜１となるように、当該直線上の座標Ｓが正規化されているものである。この関数ｆｒ(Ｓ)は、格子点Ｒを通過する等高線断面曲線を近似する関数である。
【０１０３】
関数ｆｉ(Ｓ)は、図１５のステップＳ５０１で決定された、特定点Ｉを通る折れ線１７１上の点における標高をその点の座標Ｓの関数として与える傾斜特定点用の標高計算式であり、図１６（ｃ）の符号６０で示されたものである。前述のように、この折れ線１７１上でも、座標Ｓは、図１６（ａ）に示された特定点Ｉに対する最急方位点Ｂから特定点Ｉを経由して他の最急方位点Ｃに至る折れ線部分上で値０から１となるように定められている。したがって、関数値ｆｍ(Ｓ)は、傾斜地格子点用の標高計算式ｆｒ(Ｓ)と傾斜特定点用の標高計算式ｆｉ(Ｓ)とをそれぞれ重みωと（1−ω）を付けて加算したものである。
【０１０４】
折れ線１７１上の座標Ｓと折れ線１８１上の座標Ｓが同じ一対の等高線Ｃ３とＣ２上の点ＢとＣ及び点ｐ１とｐ２の間で０から１の範囲になるように正規化されているので、特定点Ｉを通る折れ線１７１に沿って見たときの等高線Ｃ２とＣ３間の距離が格子点Ｒを通る折れ線１８１に沿って見たときの等高線Ｃ２とＣ３間の距離と異なっていても、特定点Ｉを通る折れ線１７１上の座標Ｓの点と上記一対の等高線に対する位置関係は、格子点Ｒを通る折れ線１８１の同じ座標Ｓの点と上記一対の等高線に対する位置関係とほぼ同じになると考えられるので、特定点Ｉを通る折れ線１７１上の座標Ｓの点の標高が、折れ線１７１上の同じ座標Ｓの点の標高に最も強く影響すると考えることができる。したがって、傾斜特定点用の標高計算式ｆｉ(Ｓ)でもって、傾斜格子点用の標高計算式ｆｒ(Ｓ)を補正して、傾斜格子点用の補正後の標高計算式ｆｍ(Ｓ)を決定することが望ましいと考えられる。
【０１０５】
式１で使用されている重みωには、同図（ｅ）の符号７３で示す式２に示すように、距離Ｄと最大距離Ｄmaxとの比が使用されている。距離Ｄは、特定点Ｉを通る折れ線１７１上の座標Ｓの点と、格子点Ｒを通る折れ線１８１の同じ座標Ｓの点の間の距離である。最大距離Ｄmaxは、図１２で示した近傍格子点特定点検出部４５のステップＳ４５１でユーザに指定させた補正適用範囲データで示される、補正対象格子点となりうる格子点までの最大距離である。距離の計算の起点は、後に説明する、格子点を通る折れ線上の格子点の座標Ｓｒと同じ座標Ｓｒを有する、特定点を通る後に説明する折れ線上にある点（格子点対応点）である。したがって、最大距離Ｄmaxは、特定点を通る折れ線上にある格子点対応点から補正対象格子点となりうる格子点までの最大距離である。したがって、最大距離を計算する起点は、補正対象格子点の座標Ｓｒに依存して変化するので、補正対象格子点毎に異なることになる。しかし、そのような最大距離の起点に代えて、近似的に、特定点Ｉを最大距離の計算の起点に使用してもよい。この場合は、最大距離は、特定点から補正対象格子点となりうる格子点までの最大距離となり、最大距離の計算の起点は、補正対象格子点の位置に依存しない。本実施の形態では、特に断らない限り、そのように最大距離Ｄmaxについては、特定点Ｉからの最大距離を使用する。しかし、後に説明するように、最大距離Ｄmaxとして、特定点を通る折れ線上にある格子点対応点から補正対象格子点となりうる格子点までの最大距離を使用するのが望ましい。なお、補正対象範囲が矩形のような場合には、最大距離Ｄmaxが特定点と補正対象格子点を結ぶ方向により異なる。以上のようにして、図１５のステップＳ５０２における傾斜特定点用標高計算式の決定が実行される。
【０１０６】
図１５のステップＳ５０３における補正対象格子点の標高の補正は例えば以下のようにして実行される。まず、補正後の格子点Ｒの標高として、上記関数ｆｍ(Ｓ)の、座標Ｓが格子点Ｒの座標Ｓｒのときの計算する。この補正後の標高ｆｍ(Ｓｒ)は、関数値ｆｒ(Ｓｒ)と関数値ｆｉ(Ｓｒ)とを重みωと（１−ω）を用いて加算したものとなる。ここで関数値ｆｒ(Ｓｒ)は格子点Ｒの補正前の標高値であり、既に計算されて標高データーた２９内に格納されているので、利用することができる。関数値ｆｉ(Ｓｒ)は、特定点Ｉを通る折れ線１７１上の座標Ｓが、格子点を通る折れ線１８１上における格子点の座標Ｓｒと同じである点（以下、格子点対応点と呼ぶことがある）Ｉｒにおける関数ｆｉ(Ｓ)が示す標高である。
【０１０７】
本発明では、一般的には、補正対象格子点Ｒの補正後の標高は、補正対象格子点Ｒに対応する格子点対応点Ｉｒの標高ｆｉ(Ｓｒ)と、補正対象格子点Ｒと格子点対応点Ｉｒとの間の位置関係と、補正対象格子点Ｒに対して既に検出された複数の近傍点ｐ１，ｑ１、ｐ２、ｑ２の標高とそれぞれの折れ線１８１上の位置と、補正対象格子点Ｒの折れ線１８１上の位置とに基づいて決定する。
【０１０８】
今仮定しているように、補正対象格子点Ｒの補正前の標高値ｆｒ(Ｓｒ)が、補正対象格子点Ｒの複数の近傍点ｐ１，ｑ１、ｐ２、ｑ２の標高とそれぞれの折れ線１８１上の位置と、補正対象格子点Ｒの折れ線１８１上の位置とに基づいて既に計算されている場合には、補正対象格子点Ｒの補正後の標高は、補正対象格子点Ｒに対応する格子点対応点Ｉｒの標高ｆｉ(Ｓｒ)と、補正対象格子点Ｒに対して既に決定された補正前の標高ｆｒ(Ｓｒ)と、補正対象格子点Ｒと格子点対応点Ｉｒとの間の位置関係とに依存して決定される。一般的には、式１における重みωと（１−ω）は、補正対象格子点Ｒと格子点対応点Ｉｒとの間の位置関係に依存して決定される。式１では、位置関係の例として補正対象格子点Ｒと格子点対応点Ｉｒとの間の距離Ｄが使用され、上記の二つの重みが、式２に示すようにその距離Ｄと最大距離Dmaxとの比により決定されている。ステップＳ５０３（図１５）で補正後の標高値を計算する際には、距離Ｄを計算する必要があることはいうまでもない。その計算は、補正対象格子点Ｒと対応する格子点対応点Ｉｒのそれぞれの地図上の２次元座標値を判別して、それらの座標値により行えばよい。
【０１０９】
図１６（ａ）又は（ｂ）においては、格子点対応点Ｉｒは特定点Ｉと点Ｂの間に位置しているが、特定点Ｉと点Ｃの間に位置する場合もある。更に、点Ｉｒが特定点Ｉと一致する場合もある。このとき、重みωは、格子点Ｒと特定点Ｉの間の距離と最大距離Ｄmaxとの比となる。こうして、格子点Ｒの補正後の標高は、補正前の標高ｆｒ(Ｓｒ)と格子点対応点Ｉｒにおける標高ｆｉ(Ｓｒ)とを重みを付けて加算したものとして計算される。
【０１１０】
なお、格子点Ｒの補正後の標高計算の簡単化のために、距離Ｄには特定点Ｉから格子点Ｒまでの距離を近似値として使用することも考えられ、その場合には、格子点Ｒの補正後の標高を計算するのに必要な計算量が少なくて済むと考えられるが、距離Ｄとして上記のように格子点Ｒと、それと同じ座標Ｓｒを有する格子点対応点Ｉｒとの間の距離を使用するほうがより正確に特定点Ｉの標高を反映するように格子点Ｒの標高を補正することができる。
【０１１１】
そのことは、特に補正対象格子点Ｒが折れ線１７１上に来たときを考えると明確である。この場合には、格子点対応点Ｉｒは補正対象点Ｒそのものとなる。補正対象点Ｒと格子点対応点Ｉｒとが一致したときには、補正対象格子点Ｒの標高は、折れ線１７１上の格子点対応点Ｉｒの標高と一致すべきである。距離Ｄとして補正対象格子点Ｒと格子点対応点Ｉｒとの間の距離を使用すると、今の場合には距離Ｄは０となる。このとき、式２（図１６（ｅ））における重みωは０となり、式１により、補正対象格子点Ｒの補正後の標高ｆｍ(Ｓｒ)は、折れ線１７１上の点の標高を与える関数ｆｉ(Ｓ)と一致することになる。したがって、距離Ｄとして補正対象格子点Ｒと格子点対応点Ｉｒとの間の距離を使用すると、式１による補正後の標高ｆｍ(Ｓｒ)は、補正対象格子点Ｒが折れ線１７１上に来たときでも正しことが分かる。逆に、距離Ｄとして補正対象格子点Ｒと補正元特定点Ｉとの間の距離を用いると、補正対象格子点Ｒが折れ線１７１上に来たときでも、補正対象格子点Ｒが補正元特定点Ｉと一致しない限り、距離Ｄは０とはならず、その場合には、式１により与えられる補正後の標高ｆｍ(Ｓｒ)は、折れ線１７１上の点の標高を与える関数ｆｉ(Ｓ)と一致しない。したがって、距離Ｄとして補正対象格子点Ｒと格子点対応点Ｉｒとの間の距離を使用するほうが正確な標高を得ることができることが分かる。
【０１１２】
同じ理由により、最大距離Ｄmaxも、格子点対応点Ｉから補正対象格子点となりうる格子点までの距離を使用することが望ましい。したがって、同じ特定点に関しても、格子点毎に格子点対応点Ｉが異なるので、特定点の近傍の格子点が最大距離Ｄmax以内にあるか否かを判断するときには、格子点毎に格子点対応点Ｉを決定して、その点からの距離が最大距離Ｄmax以内であるか否かを判断する必要がある。しかし、距離Ｄとして、補正対象格子点Ｒから格子点対応点Ｉｒまでの距離を使用する場合でも、計算の簡単化のために、最大距離Ｄmaxには、特定点Ｉから補正対象格子点となりうる格子点までの距離を近似値として使用することは可能である。最大距離Ｄmaxは、補正範囲を示す数値であるので、若干の誤差があっても、補正後の標高の計算値に及ぼす誤差の影響は、距離Ｄの誤差が及ぼす影響よりも小さいと考えられるからである。なお、既に説明した近傍格子点特定点検出部４５（図１２）では最大距離Ｄmaxとして特定点Ｉから補正対象格子点となりうる格子点までの距離を使用した。しかし、近傍格子点特定点検出部４５でも、最大距離Ｄmaxとして、格子点対応点Ｉから補正対象格子点となりうる格子点までの距離を使用することが望ましいことは言うまでもない。更に、最大距離Ｄmaxが、特定点と補正対象格子点を結ぶ方向により変わる場合には、その方向に依存して変わる値を使用することが望ましい。このことは、近傍格子点特定点検出部４５で最大距離Ｄmaxを使用する場合も同様である。ただし、最大距離Ｄmaxが特定点と補正対象格子点を結ぶ方向により変わる場合でも、その方向に依らないで同じ値を近似的に最大距離Ｄmaxとして使用することも可能ではある。例えば、最大距離Ｄmaxが方向により変わる場合でも、その最大距離が取りうる最大値を、方向に依らないで最大距離Ｄmaxとして使用することはできる。
【０１１３】
格子点Ｒの補正後の標高として上記のように二つの関数値ｆｒ(Ｓｒ)とｆｉ(Ｓｒ)とを用いてｆｍ（Ｓｒ）を計算するのは、両方の関数の座標Ｓが同じ一対の等高線Ｃ２とＣ３上の点ｐ２とｐ２の間で０から１の範囲になるように、両方の関数について正規化されているので、特定点Ｉにおける等高線Ｃ２とＣ３間の距離が、格子点Ｒにおけるこれらの等高線Ｃ２とＣ３間の距離と異なっていても、格子点Ｒに対応する格子点対応点Ｉｒでの標高が格子点Ｒの標高に最も大きく影響すると考えられる。このことは、格子点Ｒが格子点対応点Ｉｒに近づくほど、その標高は格子点対応点Ｉｒの標高に近づくべきであることからも分かる。したがって、格子点対応点Ｉｒの標高でもって格子点Ｒの標高を補正することにより、特定点Ｉの標高を格子点Ｒの標高の補正に適切に使用したことになる。図１５のステップＳ５０３では、こうして格子点Ｉｒの補正後の標高値を計算すると、計算された補正後の標高を用いて、標高データ２９内に既に記憶された当該格子点Ｒの標高を更新する。こうして、格子点Ｒについて補正された標高値の決定が終了する。
【０１１４】
なお、この式１によれば、Ｄ＝０のときには、既に述べたように、ｆｍ(Ｓｒ)は、特定点Ｉを通過する折れ線１７１上の点の標高を与える関数ｆｉ(Ｓ)の、格子点対応点Ｉｒの座標における標高ｆｉ(Ｓｒ)と一致する。Ｄ＝Ｄmaxのときには、ｆｍ(Ｓｒ)は、格子点Ｒを通る折れ線１８１上の点の標高を与える関数ｆｒ(Ｓ)の格子点Ｒの座標Ｓｒにおける値ｆｒ(Ｓｒ）と等しくなり、この値は格子点Ｒの標高であるので、格子点Ｒの標高は補正されないことが分かる。Ｄ＝Ｄmax/２のときには、ｆｍ(Ｓｒ)は、（ｆｉ(Ｓｒ)＋ｆｒ(Ｓｒ)）/２となる。したがって、格子点Ｒから特定点Ｉを通過する折れ線１７１上の同じ座標Ｓｒの格子点対応点Ｉｒまでの距離の増大に応じて、特定点Ｉの標高の影響が減少することが分かる。図１５のステップＳ５０３における格子点Ｒの標高の補正が以上のようにして行われる。
【０１１５】
図１５に戻り、傾斜地格子点用の非重複補正標高決定部５００は、ステップＳ５０３での格子点Ｒの標高の補正が終了すると、近傍格子点データ２８Ａ（図１１（ａ））内の、選択特定点の座標２８１に対応して記憶された選択格子点の座標２８４に対応して記憶される補正完了フラグ２８５をセットする（ステップＳ５０４）。こうして、選択特定点に対する前記選択補正対象格子点の座標２８６に対応して近傍特定点データ２８Ｂ（図１１（ｂ））内に記憶された補正元特定点数２８７が１であると判断された場合における傾斜地格子点用の非重複補正標高決定部５００の処理が終了し、処理は、傾斜地格子点用の補正標高決定部４７（図１４）に戻る。
【０１１６】
図１４において、もしステップＳ４７２で、選択特定点に対する前記選択補正対象格子点の座標２８６に対応して近傍特定点データ２８Ｂ内に記憶された補正元特定点数２８７が２であると判断された場合には、傾斜地格子点用の２重補正標高決定部５１０が実行される。この２重補正標高決定部５１０の処理の説明の前に、この処理に使用される、２重重複領域内傾斜地格子点の近傍のいくつかの点を説明する。上記補正元特定点数２８７が２であることは、選択特定点に対して選択された補正対象格子点Ｒに対する補正元特定点とし、当該選択特定点と他の一つの特定点があることを意味する。
【０１１７】
図１７は、２重重複領域内傾斜地格子点に対する標高の補正を説明するための図である。同図（ａ）は、選択特定点の補正対象格子点である２重重複領域内格子点の補正後の標高の計算に使用される、それらの点の近傍の点を示す等高線図の例を示す図である。すなわち、図２（ｃ）の等高線図の例において、二つの特定点Ｉａ、Ｉｂの補正対象格子点である２重重複領域内の傾斜地格子点Ｒの補正後の標高の計算に使用される、それらの点の近傍の点が示されている。
【０１１８】
図１７（ａ）において、図２（ｂ）と同様に、格子点Ｒは、標高が順に低下する等高線Ｃ６〜Ｃ１０のうちの一対の等高線Ｃ７とＣ８の間に位置し、２つの特定点ＩａとＩｂとが同じ一対の等高線Ｃ７とＣ８の間に位置し、格子点Ｒは、２つの特定点Ｉａ、Ｉｂのそれぞれの補正対象範囲内に位置すると仮定する。格子点Ｒは、２重重複補正対象傾斜地格子点の例であり、点Ｉａ、Ｉｂは、それぞれ選択特定点と他の補正元特定点の例である。このような選択補正対象格子点Ｒに対しては、それらの特定点Ｉａ、Ｉｂの座標は、近傍特定点データ２８Ｂ（図１１（ｂ））内に、当該選択補正対象格子点Ｒの座標２８６に対応して二つの補正元特定点座標２８８として記憶されている。記憶されているそれらの２つの補正元特定点座標２８８のうちの一つが選択特定点の座標と一致し、他方が他の補正元特定点の座標である。
【０１１９】
図１７（ａ）において、選択特定点Ｉａの近傍にある点Ａａ、Ｂａ、Ｃａ、Ｄａ、特定点Ｉｂの近傍にある点Ａｂ、Ｂｂ、Ｃｂ、Ｄｂは、図１６（ａ）における点Ａ、Ｂ、Ｃ、Ｄと同じく、特定点Ｉａ又はＩｂに関する最急方位点又は２次最急方位点であり、ｐ１、ｐ２、ｑ１、ｑ２は、格子点Ｒに関する最急方位点又は２次最急方位点の例である。符号１７２は、点Ａａ、Ｂａ、Ｉａ、Ｃａ、Ｄａを結ぶ折れ線である。符号１７３は、点Ａｂ、Ｂｂ、Ｉｂ、Ｃｂ、Ｄｂを結ぶ折れ線である。符号１８２は、点ｑ１、ｐ１、Ｒ、ｐ２、ｑ２を結ぶ折れ線である。図１６（ａ）における折れ線１７１と同様に、折れ線１７２上の点ＢａからＣａまでの部分の座標Ｓの値が０から１となるように、折れ線１７２上の座標Ｓが正規化され、同様に、折れ線１７３上の点ＢｂからＣｂまでの部分の座標Ｓの値が０から１となるように、折れ線１７３上の座標Ｓが正規化され、図１６（ａ）における折れ線１８１と同様に、折れ線１８２上の点ｐ１からｐ２までの部分の座標Ｓの値が０から１となるように、折れ線１８２上の座標Ｓが正規化されている。折れ線１７２上の点Ｉarと折れ線１７３上の点Ｉbrは、図１６（ａ）の折れ線１７１上の点Ｉｒと同様に、格子点Ｒの、折れ線１８２上の座標Ｓｒと同じ座標を有する、格子点Ｒに対応する格子点対応点である。
【０１２０】
図１８は、傾斜地格子点用の２重補正標高決定部５１０の処理の一例の概略フローチャートである。まず、ステップＳ５１１においては、選択格子点の標高の補正に関与する二つの特定点Ｉａ、Ｉｂのそれぞれに対する傾斜地特定点用の標高計算式が決定される。これらの計算式の決定は、傾斜地格子点用の非重複補正標高決定部５００のステップＳ５０１における、図１６（ａ）内の特定点Ｉに対する傾斜地特定点用の標高計算式の決定と全く同様に行われる。特定点Ｉａ、Ｉｂに対して得られる傾斜地特定点用の標高計算式をｆia(Ｓ)、ｆib(Ｓ)とすると、それぞれは、図１６（ｃ）と同様に、それぞれ特定点Ｉａ、Ｉｂにおける折れ線１７２、１７３上の座標Ｓia、Ｓibを境にして異なる関数で表される二つの部分からなり、図１６（ｄ）における条件と同様な条件をそれぞれ折れ線１７２、１７３上の点に関して満たすように決定される。
【０１２１】
ステップＳ５１２においては、２重重複領域内傾斜地格子点Ｒに対する補正された標高を与える標高補正式として、例えば、図１７（ｂ）の式３により定義される関数ｆｍ(Ｓ)を決定する。ｆｍ(Ｓ)は、関数ｆｒ(Ｓ)、ｆia(Ｓ)、ｆib(Ｓ)をそれぞれ重み（１−ωａ―ωｂ）、ωａ、ωｂを付けて加算したものである。重みωａ、ωｂは、式１（図１６）に関連して説明したように、一般的には、補正対象格子点Ｒと対応する格子点対応点Ｉraとの間の位置関係及び補正対象格子点Ｒと対応する格子点対応点Ｉrbとの間の位置関係を使用して決定すればよい。式３の場合には、式１の場合と同じく、補正対象格子点Ｒと対応する格子点対応点Ｉraとの間の位置関係にはそれらの点の間の距離Ｄａが使用され、補正対象格子点Ｒと対応する格子点対応点Ｉrbとの間の位置関係にはそれらの点の間の距離Ｄｂが使用され、重みωａ、ωｂは、図１７（ｂ）に示す式４ａ、４ｂに示すように距離Ｄａ、Ｄｂ、Ｄmaxに依存して決定されている。ここで、ｆｒ(Ｓ)は、式１の場合と同じであり、図５（ａ）に示された補正対象格子点Ｒと点ｐ１、ｐ２を結ぶ折れ線１８２上の座標Ｓの点における標高を与える傾斜地格子点用の標高計算式として、図６のステップＳ４２２で決定され、図7（ｂ）に例示されたものであるが、点ｐ１、ｐ２を結ぶ部分の座標が０〜１となるように、当該直線の座標が正規化されているものである。
【０１２２】
関数ｆia(Ｓ)とｆia(Ｓ)は、図１６（ｃ）に示した式６０で定義される関数ｆｉ(Ｓ)と同様に、それぞれ特定点Ｉａ、Ｉｂを通る折れ線１７２、１７３上の座標Ｓの点に対する標高を与える、傾斜地特定点用の標高計算式である。距離Ｄａ、Ｄｂは、格子点Ｒを通過する折れ線１８２上の座標Ｓの点からそれぞれ特定点Ｉａ、Ｉｂを通る折れ線１７２、１７３上の同じ座標Ｓの点にそれぞれ至る距離である。式３は、書き替えると図１７（ｂ）に示す式３ａになる。Ｄmaxは、図１６（ｅ）で示した式１におけるものと同じである。なお、この式３によればＤａ＝０又はＤｂ＝０のときは、関数値ｆｍ(Ｓ)は、特定点Ｉａ又はＩｂを通過する折れ線１７１又は１７２上の点の標高を与える関数ｆia(Ｓ)又はｆib(Ｓ)に等しくなる。
【０１２３】
図１８に戻り、ステップＳ５１３においては、補正対象格子点Ｒの標高が、例えば以下のようにして補正される。まず、補正後の格子点Ｒの標高を、図１７（ｂ）に示した式３又は式３ａで定義される上記関数ｆｍ(Ｓ)の、座標Ｓが格子点Ｒの座標Ｓｒのときの値ｆｍ（Ｓｒ）により計算する。こうして、格子点Ｒの補正後の標高は、格子点Ｒの補正前の標高ｆｒ(Ｓｒ)と、格子点対応点Ｉar、Ｉbrの標高ｆia(Ｓｒ)、ｆib(Ｓｒ)と、距離Ｄａ、Ｄｂ、Ｄmaxに依存して決定される。つぎに、格子点Ｒについてのこの補正後の標高を用いて、標高データ２９（図１）内に既に記憶された当該格子点Ｒの標高を更新する。傾斜地格子点用の２重補正標高決定部５１０は、ステップＳ５１３での格子点Ｒの標高の補正が終了すると、近傍格子点データ２８Ａ内の、選択特定点Ｉａの座標２８１に対応して記憶された選択格子点の座標２８４に対応して記憶される補正完了フラグ２８５をセットし、他の補正元特定点Ｉｂの座標２８１に対応して記憶された同じ選択格子点の座標２８４に対応して記憶される補正完了フラグ２８５をセットする（ステップＳ５１４）。こうして、選択特定点に対する前記選択補正対象格子点の座標２８６に対応して近傍特定点データ２８Ｂ内に記憶された補正元特定点数２８７が２であると判断された場合における傾斜地格子点用の２重補正標高決定部５１０の処理が終了し、処理は傾斜地格子点用の補正標高決定部４７（図１４）に戻る。
【０１２４】
図１４において、もしステップＳ４７２で、選択特定点に対する前記選択補正対象格子点の座標２８６に対応して近傍特定点データ２８Ｂ内に記憶された補正元特定点数２８７が３であると判断された場合には、傾斜地格子点用の３重補正標高決定部５２０が実行される。この３重補正標高決定部５２０の処理の説明の前に、この処理に使用される、３重重複領域内傾斜地格子点の近傍のいくつかの点を説明する。上記補正元特定点数２８７が３であることは、選択特定点に対して選択された補正対象格子点Ｒに対する補正元特定点とし、当該選択特定点と他の二つの特定点があることを意味する。
【０１２５】
図１９は、３重重複領域内傾斜地格子点に対する標高の補正を説明するための図である。同図（ａ）は、選択特定点の補正対象格子点である３重重複領域内格子点の補正後の標高の計算に使用される、それらの点の近傍の点を示す等高線図の例を示す図である。すなわち、図２（ｃ）の等高線図の例において、選択特定点の補正対象格子点である３重重複領域内格子点の補正後の標高の計算に使用される、それらの点の近傍点が示されている。
【０１２６】
図１９（ａ）において、図２（ｃ）と同様に、格子点Ｒは、標高が順に低下する等高線Ｃ１１〜Ｃ１４のうちの一対の等高線Ｃ１２とＣ１３の間に位置し、３つの特定点Ｉａ、ＩｂとＩｃとが同じ一対の等高線Ｃ１２とＣ１３の間に位置し、格子点Ｒは、３つの特定点Ｉａ、Ｉｂ、Ｉｃのそれぞれの補正対象範囲内に位置すると仮定する。格子点Ｒは、３重重複補正対象傾斜地格子点の例であり、点Ｉａ、Ｉｂ、Ｉｃは、それぞれ選択特定点Ｉａと他の二つの補正元特定点の例である。それらの特定点Ｉａ、ＩｂとＩｃの座標は、近傍特定点データ２８Ｂ内に、選択補正対象格子点Ｒの座標２８６に対応して３つの補正元特定点座標２８８として記憶されている。記憶されているそれらの３つの補正元特定点座標２８８のうちの一つが選択特定点の座標と一致し、他の二つが当該他の二つの補正元特定点の座標を与える。
【０１２７】
選択特定点Ｉａの近傍にある点Ａａ、Ｂａ、Ｃａ、Ｄａ、特定点Ｉｂの近傍にある点Ａｂ、Ｂｂ、Ｃｂ、Ｄｂ、特定点Ｉｃの近傍にある点Ａｃ、Ｂｃ、Ｃｃ、Ｄｃは、図１６（ａ）における点Ａ、Ｂ、Ｃ、Ｄと同じく、それぞれ特定点Ｉａ、Ｉｂ又はＩｃに関する最急方位点又は２次最急方位点であり、格子点Ｒの近傍の点ｐ１、ｐ２、ｑ１、ｑ２は、格子点Ｒに関する最急方位点又は２次最急方位点の例である。符号１７４、１７５、１７６、１８３は、点列Ａａ、Ｂａ、Ｉａ、Ｃａ、Ｄａ、点列Ａｂ、Ｂｂ、Ｉｂ、Ｃｂ、Ｄｂ、点列Ａｃ、Ｂｃ、Ｉｃ、Ｃｃ、Ｄｃ、点列ｑ１、ｐ１、Ｒ、ｐ２、ｑ２をそれぞれ結ぶ折れ線である。各折れ線上の座標Ｓは、図１６（ａ）における折れ線１７１又は１８１と同様に正規化されている。折れ線１７４上の点Ｉar、折れ線１７５上の点Ｉbr、折れ線１７６上の点Ｉcrは、図１６（ａ）の折れ線１７１上の点Ｉｒと同様に、格子点Ｒの、折れ線１８３上の座標Ｓｒと同じ座標を有する、格子点Ｒに対応する格子点対応点である。
【０１２８】
図２０は、傾斜地格子点用の３重補正標高決定部５２０の処理の一例の概略フローチャートである。まず、ステップＳ５２１においては、選択格子点の標高の補正に関与する３つの特定点Ｉａ、Ｉｂ、Ｉｃのそれぞれに対する傾斜地特定点用の標高計算式が決定される。これらの計算式の決定は、傾斜地格子点用の非重複補正標高決定部５００のステップＳ５０１における、図１６（ａ）内の特定点Ｉに対する傾斜地特定点用の標高計算式の決定と全く同様に行われる。特定点Ｉａ、Ｉｂ、Ｉｃに対して得られる標高計算式をｆia(Ｓ)、ｆib(Ｓ)、ｆic(Ｓ)とする。
【０１２９】
ステップＳ５２２においては、３重重複領域内傾斜地格子点Ｒに対する補正された標高を与える標高補正式として、例えば、図１９（ｂ）の式５により定義される関数ｆｍ(Ｓ)を決定する。ここで、ｆｒ(Ｓ)は、図５（ａ）の補正対象格子点Ｒと点ｐ１、ｐ２を結ぶ折れ線１８２上の点における標高を与える傾斜地格子点用の標高計算式として標高計算部４２（図６）のステップＳ４２２で決定され、図７（ｂ）に例を示したものであり、折れ線１８３を直線に延ばしたときのその直線上での点ｐ１から点ｐ２に至る部分の座標が０〜１となるように、当該直線上の座標が正規化されているものである。符号Ｄａ、Ｄｂ、Ｄｃは、格子点Ｒを通る折れ線上の座標Ｓの点から折れ線１７４、１７５、１７６上の同じ座標Ｓの点にそれぞれ至る距離である。Ｄmaxは、図１６（ｅ）で示した式１におけるものと同じである。
【０１３０】
式５から分かるように、関数ｆｍ(Ｓ)は、格子点Ｒに対する標高計算式ｆｒ(Ｓ)と、特定点Ｉａ、Ｉｂ、Ｉｃに対して得られる標高計算式ｆia(Ｓ)、ｆib(Ｓ)、ｆic(Ｓ)とをそれぞれ重み（１−ｗａ―ｗｂ―ｗｃ）、ｗａ、ｗｂ、ｗｃを付けて加算したものである。重みｗａ、ｗｂ、ｗｃは、式１（図１６（ｅ））と式３（図１７（ｂ））に関連して説明したように、一般的には、補正対象格子点Ｒと対応する格子点対応点Ｉraとの間の位置関係、補正対象格子点Ｒと対応する格子点対応点Ｉrbとの間の位置関係及び補正対象格子点Ｒと対応する格子点対応点Ｉrcとの間の位置関係を使用して決定すればよい。式５の場合には、式１、３の場合と同じく、補正対象格子点Ｒと対応する格子点対応点Ｉra、Ｉrb、Ｉrcのそれぞれとの間の位置関係にはそれらの点の間の距離Ｄａ、Ｄｂ、Ｄｃが使用され、重みωａ、ωｂ、ｗｃは、図１９（ｂ）に示す式６ａ、６ｂ、６ｃにより与えられるものであり、距離Ｄａ、Ｄｂ、Ｄｃ、Ｄmaxに依存して決定されている。
【０１３１】
重みｗａ、ｗｂ、ｗｃは、いずれも対応する格子点に関する距離Ｄａ、Ｄｂ、Ｄｃが０のときには、１となり、Ｄｍａｘのときには０となる。更に、Ｄａ＝Ｄｂ＝Ｄｃ＝Ｄのときには、式５は、非重複領域用標高補正式である式１（図１６（ｂ））と等しくなる。更に、Ｄａ＝Ｄｂ＝Ｄｃ＝Ｄ＝０のときには、重みｗａ、ｗｂ、ｗｃの値は、式６ａ〜６ｃでは決定できないが、式２においてＤ＝０としたときの値０を取ると考えればよく、そのように考えると、式５の標高補正式ｆｍ（Ｓ）は、ｆｉ（Ｓ）と一致することになる。
【０１３２】
図２０に戻り、ステップＳ５２３においては、補正対象格子点Ｒの標高が補正される。まず、補正後の格子点Ｒの標高を、式３の上記関数ｆｍ(Ｓ)の、座標Ｓが格子点Ｒの座標Ｓｒのときの値ｆｍ（Ｓｒ）により計算する。こうして、格子点Ｒの補正後の標高は、格子点Ｒの補正前の標高ｆｒ(Ｓｒ)と、格子点対応点Ｉar、Ｉbr、Ｉcrの標高ｆia(Ｓｒ)、ｆib(Ｓｒ)、ｆic(Ｓｒ)と、距離Ｄａ、Ｄｂ、Ｄｃ、Ｄmaxに依存して決定される。つぎに、格子点Ｒについてのこの補正後の標高を用いて、標高データ２９（図１）内に既に記憶された当該格子点Ｒの標高を更新する。
【０１３３】
図２０に戻り、傾斜地格子点用の３重補正標高決定部５２０は、ステップＳ５２３での格子点Ｒの標高の補正が終了すると、近傍格子点データ２８Ａ内の、選択特定点Ｉａの座標２８１に対応して記憶された選択格子点の座標２８４に対応して記憶される補正完了フラグ２８５をセットし、他の二つの補正元特定点ＩｂとＩｃの各々の座標２８１に対応して記憶された同じ選択格子点の座標２８４に対応して記憶される補正完了フラグ２８５をセットする（ステップＳ５２４）。こうして、選択特定点に対する前記選択補正対象格子点の座標２８６に対応して近傍特定点データ２８Ｂ内に記憶された補正元特定点数２８７が３であると判断された場合における傾斜地格子点用の３重補正標高決定部５２０の処理が終了し、処理は傾斜地格子点用の補正標高決定部４７（図１４）に戻る。
【０１３４】
図１４において、傾斜地格子点用の非重複補正標高決定部５００、傾斜地格子点用の２重補正標高決定部５１０、傾斜地格子点用の３重補正標高決定部５２０のいずれかの処理が終了すると、傾斜地格子点用の補正標高決定部４７は、ステップＳ４７３において、標高の補正に関与した特定点の補正対象格子点の全てに対する標高の補正が完了したか否かを判断する。この判断は、近傍格子点データ２８Ａ（図１１（ａ））内に当該特定点の座標２８１に対応して記憶された補正対象格子点座標２８４の各々に対して記憶された補正完了フラグが全てセットされているか否かにより判断される。
【０１３５】
例えば、ステップＳ４７３の実行の前に傾斜地格子点用の非重複補正標高決定部５００が実行されたときには、ステップＳ４７３では、特定点Ｉ（図１６（ａ））について、上記判断が実行される。すなわち、近傍格子点データ２８Ａ内に特定点Ｉの座標２８１（図（ａ））に対応して一つの補正対象格子点座標２８４が記憶されているときには、当該補正対象格子点座標２８４に対応して記憶される補正完了フラグがセットされているか否かにより上記判断が行われる。今の場合には、このフラグはセットされているので、特定点Ｉの補正対象格子点の全てに対する標高の補正が完了したと判断される。
【０１３６】
しかし、近傍格子点データ２８Ａ内に特定点Ｉの座標２８１に対応して複数の補正対象格子点座標２８４が記憶されているときには、今の仮定では、当該複数の座標のうち、傾斜地格子点用の非重複補正標高決定部５００により標高が補正された補正対象格子点の座標２８４に対応して記憶される補正完了フラグがセットされているが、他の座標２８４に対応して記憶される補正完了フラグが全てセットされているかを判断する必要がある。
【０１３７】
あるいは、ステップＳ４７３の実行の前に傾斜地格子点用の２重補正標高決定部５１０が実行されたときには、ステップＳ４７３では、特定点ＩａとＩｂ（図１７（ａ））の各々について、上記判断が同様に実行される。あるいは、ステップＳ４７３の実行の前に傾斜地格子点用の３重補正標高決定部５２０が実行されたときには、ステップＳ４７３では、特定点Ｉａ、Ｉｂ、Ｉｃ（図１９（ａ））の各々について、上記判断が同様に実行される。
【０１３８】
ステップＳ４７３での判断により、標高の補正に関与した特定点の各々について、その特定点の補正対象格子点の全てに対して標高の補正が完了したと判断されたときには、近傍格子点データ２８Ａ内に、当該特定点の座標２８１に対応して記憶される補正完了フラグ２８２がセットされる（ステップＳ４７４）。標高の補正に関与した特定点の全てに関してステップＳ４７３を実行し、補正対象格子点に対する標高の補正が全て完了した特定点があるときには、その特定点に対する補正完了フラグをセットするステップＳ４７４を実行した後に、あるいは、標高の補正に関与した特定点の全てに関してステップＳ４７３を実行したが、補正対象格子点に対する標高の補正が全て完了した特定点がないときには、ステップＳ４７４を実行しないで、ステップＳ４７５において、当該選択特定点に対する、標高補正処理を施していない補正対象格子点があるか否かを判断する（ステップＳ４７５）。
【０１３９】
この判断は、近傍格子点データ２８Ａ内に、当該選択特定点の座標２８１に対応して記憶された補正対象格子点数２８３の値から、当該選択特定点に関して標高補正処理を施した補正対象格子点の数、今の場合には１を引いた後の値が０より大きいか否かにより判断できる。仮に、補正対象格子点数２８３の値が１より大きいときには、当該選択特定点に対応してまだ処理していない他の補正対象格子点の座標２８４が記憶されていることになる。この場合には、処理は、ステップＳ４７１に戻り、そこでは、当該選択特定点に対応する他の補正対象格子点を選択する。すなわち、近傍格子点データ２８Ａに当該選択特定点の座標２８１に対応して記憶された他の補正対象格子点の座標２８４を読み出す。この格子点についてもステップＳ４７２と非重複補正標高決定部５００、２重補正標高決定部５１０、３重補正標高決定部５２０のいずれかの処理が実行される。以下、選択特定点に関する未処理の補正対象格子点がなくなるまで以上の処理が繰り返される。その後、ステップＳ４７５により、選択特定点に関する未処理の補正対象格子点がなくなったと判断されたときには、傾斜地格子点用の補正標高決定部４７の処理が終了し、処理は、補正標高決定部４３（図９）に戻る。
【０１４０】
図９において、補正標高決定部４３では、傾斜地格子点用の補正標高決定部４７の処理が終了した後は、標高補正処理を実行していない特定点の選択を試みる（ステップＳ４６１）。更にステップＳ４６２において、選択が成功したか否かが判断され、成功と判断されたときには、ステップＳ４６３以降の処理が実行される。もしステップＳ４６３において、選択された特定点の属性が平地であると判断されたときには、平地格子点用の補正標高決定部４８が実行される。
【０１４１】
平地格子点用の補正標高決定部４８の処理の説明の前に、当該平地格子点用の補正標高決定部４８による平地格子点の標高が平地特定点の標高により補正されるための条件と補正に使用される、平地格子点の近傍点と特定点の近傍点を説明する。平地格子点用の補正標高決定部４８で標高が補正される格子点は、単一の等高線点列により実質的に囲まれている平地格子点であり、同じ単一の等高線点列により実質的に囲まれている平地特定点がその近傍にあり、かつ、当該平地格子点が当該平地特定点の補正対象範囲内にある必要がある。当該平地特定点の標高の補正のために使用される複数の近傍点は、当該単一の等高線点列とその外側の他の少なくとも一つの等高線点列を含む複数の標高が異なる等高線点列上に位置する、当該平地格子点の複数の近傍点と、当該単一の等高線点列とその外側の他の少なくとも一つの等高線点列を含む複数の標高が異なる等高線点列上に位置する、当該平地特定点の複数の近傍点である。
【０１４２】
図２１は、選択特定点が平地点である場合に実行されるその近傍の平地格子点の標高の補正を説明する図である。同図（ａ）において、図２（ｄ）及び図５（ｂ）と同じく、等高線Ｃ１５〜Ｃ１８がある等高線地図上において、点Ｒは閉じた等高線Ｃ１５により囲まれている平地格子点とする。点Ｉは格子点Ｒが含まれている等高線Ｃ１５内にあり、格子点Ｒから補正対象範囲内にある、格子点Ｒに対する補正元の平地特定点とする。本実施の形態では、簡単化のために、平地格子点に対する補正元特定点の総数は最大１個とするが、複数の補正元特定点を有する重複領域内の平地格子点が存在する場合でも、先に２重重複領域内又は３重重複領域内にある傾斜地格子点に対して説明した標高補正方法を以下に述べる平地格子点の標高補正方法に適用すれば、その重複領域内の平地格子点の標高を容易に補正可能である。
【０１４３】
平地格子点Ｒの補正後の標高を決定するには、平地格子点Ｒを実質的に取り囲む一つの等高線とその外側の少なくとも一つの等高線を含む複数の等高線上にある、平地格子点Ｒの複数の近傍点、平地特定点Ｉ及び平地特定点Ｉを実質的に取り囲む上記単一の一つの等高線とその外側の少なくとも一つの等高線を含む複数の等高線上にある、当該平地特定点Ｉの複数の近傍点のそれぞれに対応する３次元の地形上の一群の点が位置する曲面上の、平地格子点Ｒに対応する点の標高を算出して、平地格子点の補正後の標高とすることが望ましいと考えられる。
【０１４４】
それを実現するための本発明による一つの方法は、平地格子点Ｒの複数の近傍点、平地特定点Ｉ及び平地特定点Ｉの複数の近傍点のそれぞれに対応する３次元の地形上の一群の点が位置する、等高線Ｃ１５、Ｃ１６を含む曲面を、これらの点に対応する３次元地形上の位置に依存して決定し、その後、当該曲面上の平地格子点Ｒに対応する点の標高を算出して、平地格子点の補正後の標高とすることである。その方法は当業者により容易に実現可能であるので、その方法の詳細説明は省略する。本実施の形態では、そのような曲面を決定しないで、近似的にそのような曲面上のそれらの一群の点を滑らかに結ぶ曲線を決定し、当該曲線上における格子点Ｒに対応する点の標高を決定可能にする方法を説明する。すなわち、補正元の平地特定点Ｉに対する前記複数の近傍点と、当該平地特定点を結ぶ点列に対応する、３次元の地形上の第１の点列のそれぞれの点の３次元の位置と、補正対象平地格子点Ｒに対する前記複数の近傍点を含む点列に対応する、当該地形上の第２の点列のそれぞれの点の３次元の位置とに依存して補正対象平地格子点の標高として平地特定点の標高により補正された標高を決定可能にする。
【０１４５】
点ｐ１とｑ１は格子点Ｒからみて第１の方向にある一組の近傍点の例であり、点ｐ１は格子点Ｒを取り囲む等高線Ｃ１５上にある格子点Ｒの近傍点の例であり、点ｑ１は等高線Ｃ１５の外側の等高線Ｃ１６上にある、近傍点ｐ１の近傍点の例である。点ｐ２とｑ２は格子点Ｒからみて第１の方向とは逆の第２の方向にある他の一組の近傍点の例であり、点ｐ２は格子点Ｒを取り囲む等高線Ｃ１５上にある格子点Ｒの他の近傍点の例であり、点ｑ２は等高線Ｃ１５の外側の等高線Ｃ１６上にある、他の近傍点ｐ２の近傍点の例である。点ＦとＨは特定点Ｉから見て第３の方向とは逆の第４の方向にある他の一組の近傍点の例であり、点Ｆは特定点Ｉを取り囲む等高線Ｃ１５上にある特定点Ｉの他の近傍点の例であり、点Ｈは等高線Ｃ１５の外側の等高線Ｃ１６上にある、他の近傍点Ｆの近傍点の例である。
【０１４６】
より具体的には、点ｐ１、ｑ１として、格子点Ｒに対する一組の最急方位点と２次最急方位点を使用することができ、点ｐ２、ｑ２として、格子点Ｒに対する他の一組の最急方位点と２次最急方位点を使用することができる。同様に、点Ｅ、Ｇとして、特定点Ｉに対する一組の最急方位点と２次最急方位点を使用することができ、点Ｆ、Ｈとして、特定点Ｉに対する他の一組の最急方位点と２次最急方位点を使用することができる。
【０１４７】
補正対象平地格子点Ｒに対する一組の近傍点及び補正元平地特定点Ｉに対する一組の近傍点として、最急傾斜法の考えによりそれらの近傍点を選ぶと、傾斜地格子点の複数の近傍点を最急傾斜法の考えにより選択した場合と同様に、補正対象平地格子点Ｒを取り囲む等高線点列上の最も近い近傍点と、当該最も近い近傍点に最も近い、当該取り囲む等高線点列に隣接する等高線点列上の近傍点とからなる一組の近傍点を選択することになる。補正元平地特定点Ｉに対する一組の近傍点についても同じである。このような一組の近傍点の間の部分は最短距離で隔てられた点であり、それらの点が位置する地面は傾斜がほぼ一様で、途中で地面が上ったり下ったりしない場合が多いと考えられる。したがって、補正対象平地格子点と補正元平地特定点について、それぞれに最も短い部分の断面上に位置すると考えられる一組の近傍点を用いると、補正対象平地格子点とその近傍点が通る地面の形状は、凸がひとつだけの傾斜曲線で表されると考えられる場合が多い。補正元平地特定点とその近傍点が通る地面の形状についても同様である。したがって、これらの点を結ぶ線上の標高を用いて地形の断面を表す曲線を近似し、補正元平地格子点の補正後の標高を決定すると、誤差が少ないことが期待される。
【０１４８】
逆に、補正対象平地格子点Ｒに対して最も近い点以外の近傍点を使用し、補正元平地特定点Ｉに対しても最も近い点以外の近傍点を使用した場合には、それらの点を結ぶ折れ線上の地形の断面の曲線がより長いものになり、そのような部分では実際の断面曲線はふたつ山のある曲線などとなりくねくねした曲線になる可能性が出てくる。そのような地形に対しては、補正元平地格子点の補正後の標高を決定することが難しくなると懸念される。
【０１４９】
格子点Ｒの標高の補正には、格子点Ｒに関する上記二組の近傍点のうちの少なくとも一組の近傍点と、特定点Ｉに関する上記二組の近傍点のうちの少なくとも一組の近傍点とが使用される。例えば、格子点Ｒに関する上記二組の近傍点のうち、上記取り囲む単一の等高線点列Ｃ１５上の近傍点が前記平地特定点Ｉから見て遠方に位置する一組の近傍点（今の例では、点ｐ１、ｑ１とする）と、特定点Ｉに関する二組の近傍点のうち、上記取り囲む単一の等高線点列Ｃ１５上の近傍点が前記平地格子点Ｒから見て遠方に位置する一組の近傍点（今の例では、点ＥとＧとする）とを使用できる。
【０１５０】
このように、上記取り囲む単一の等高線点列Ｃ１５上の近傍点が前記平地特定点Ｉから見て遠方に位置する、格子点Ｒに関する一組の近傍点と、上記取り囲む単一の等高線点列Ｃ１５上の近傍点が前記平地格子点Ｒから見て遠方に位置する、特定点Ｉに関する一組の近傍点とを選択するのは、このように選択した二組の近傍点が閉じた等高線Ｃ１５を横断する位置になりやすく、そのような点列のほうが、閉じた等高線Ｃ１５により取り囲まれた平地の等高線断面曲線を反映しやすいと考えられるからである。
【０１５１】
より具体的には、平地特定点Ｉに対して選択された一組の近傍点ＥとＧと、当該平地特え定点Ｉとを結ぶ点列に対応する、３次元の地形上の第１の点列のそれぞれの点の３次元の位置と、平地格子点Ｒに対して選択された一組の近傍点ｐ１とにｑ１を含む点列に対応する、当該地形上の第２の点列のそれぞれの点の３次元の位置とに依存して、平地格子点Ｒの標高として、当該平地特定点Ｉの標高により補正された標高を決定可能にする。例えば、平地格子点Ｒの上記一組の近傍点と、平地特定点Ｉと、平地特定点Ｉの上記一組の近傍点とを結ぶ３次元の地形上の曲線として、上記のいろいろな点と平地格子点Ｒ点とを結ぶ折れ線１８４を構成する点列に対応する、３次元地形上の点列を通過する曲線を決定し、その曲線上における、格子点Ｒに対応する点の標高を計算するための、平地格子点用の標高計算式を決定する。
【０１５２】
図２１（ｂ）は、等高線地図上の折れ線１８４上の点列に対応する、３次元地形上の点列を通過する曲線の決定方法を説明するための図である。同図において、横軸は、補正元特定点Ｉに関する点Ｇ、Ｅと、補正元特定点Ｉと、補正対象格子点Ｒと、その点に関する点ｐ１、ｑ１を結ぶ折れ線１８４を、それらの点の間の距離を維持したまま直線に並べたときの当該直線上の点の座標を示す。６つの点Ｇ、Ｅ、Ｉ、Ｒ、ｐ１、ｑ１の上記直線上の座標ＳをそれぞれＳｇ、Ｓｅ、Ｓｉ、Ｓｒ、Ｓp1、Ｓq1とする。格子点Ｒ以外の５つの点Ｇ、Ｅ、Ｉ、ｐ１、ｑ１の標高がｈｇ、ｈｅ、ｈｉ、ｈp1、ｈp2であり、曲線１１０は、上記５つの点を結んだ曲線を表す関数ｆｍ(Ｓ)である。なお、図に示すように、標高値ｈｐ１とｈｅは同じである。また、図では、今の例にしたがい、標高ｈｇとｈq1が等しくしているが、これらの標高は互いに異なっていてもよい。標高ｈｅとｈp1についても同様に異なってもよい。関数ｆｍ(Ｓ)を、格子点Ｒの標高を補正する平地格子点用の標高補正式として使用する。
【０１５３】
曲線ｆｍ(Ｓ)としては、例えば、同図（ｃ）にで示すように、直線上の座標Ｓの４次式である式７を使用することができる。この曲線が満たすべき条件が、同図（ｄ）に示されている。すなわち、条件７４は、座標ＳがＧ点の座標Ｓｇのとき曲線ｆｍ（Ｓ）の値ｆｍ(Ｓｇ)が点Ｇの標高ｈｇであることを示す。同様に、条件７５から７８は、それぞれ座標Ｓｅ、Ｓｉ、Ｓp1、Ｓq1での関数ｆｍ（Ｓ）の値が、それぞれ標高ｈｅ、ｈｓ、ｈp1、ｈq1であるということを指定する。このようにして関数ｆｍ(Ｓ)が決定されると、格子点Ｒの座標Ｓｒにおけるその関数値ｆｍ(Ｓｒ)が、格子点の補正後の標高を与えることになる。
【０１５４】
図２２は、平地格子点用の補正標高決定部４８の処理の一例の概略フローチャートである。まず、ステップＳ４８１において、補正対象格子点Ｒに関する一対の最急方位点ｐ１、ｐ２のうち補正元特定点Ｉから最も遠い点とその点に対応する、二つの２次最急方位点ｑ１、ｑ２の一つを選択する。今の例では、点ｐ１とｑ１が選択されるとする。つぎに、ステップＳ４８２において、補正元特定点Ｉに関する一対の最急方位点Ｅ、Ｆのうち補正対象格子点Ｒから最も遠くに位置する点と、その点に対応する、二つの２次最急方位点Ｇ、Ｈのうちの一つを選択する。今の例では、点ＥとＧが選択されるとする。
【０１５５】
ステップＳ４８３において、以上のようにして選択された４つの点の位置と標高と、特定点Ｉの位置と標高と、格子点Ｒの位置とに基づいて、補正対象格子点Ｒに対する補正後の標高を表す標高補正式として、式７に示すｆｍ(Ｓ)（図２１（ｃ））を決定する。その方法は図２１を参照して既に説明したとおりである。
【０１５６】
図２２において、平地格子点用の補正標高決定部４８は、ステップＳ４８４において、決定された関数ｆｍ(Ｓ)の、格子点Ｒの座標Ｓｒにおける値ｆｍ(Ｓｒ)を、格子点Ｒの補正後の標高として決定し、標高データ２９（図１）内の当該格子点に関するデータを決定された値でもって更新する。以上の処理により、補正対象格子点Ｒに対する標高の補正は完了するので、ステップＳ４８５において、近傍格子点データ２８Ａ（図１１（ａ））内の、補正元特定点の座標２８１として記憶された特定点Ｉの座標に対応して記憶された補正対象格子点Ｒの座標２８４に対応して記憶される補正完了フラグ２８５をセットする。
【０１５７】
つぎに、ステップＳ４８６において、補正元特定点Ｉに関する補正対象格子点の全てに対する標高の補正が完了したか否かを判断する。この判断は、傾斜地特定点に関する補正の完了の判断（図１４のステップＳ４７３）に関して記載した判断と同様に、近傍格子点データ２８Ａ（図１１（ａ））内の、当該補正元特定点Ｉの座標２８１に対応して記憶された一つ又は複数の補正対象格子点の座標２８４に対応して記憶される一つ又は複数の補正完了フラグ２８５が全てセットされているか否かにより行うことができる。上記ステップＳ４８６において補正元特定点Ｉに対する補正対象格子点の全てに対する標高の補正が完了したと判断されたときには、ステップＳ４８７において、近傍格子点データ２８Ａ（図１１（ａ））内の、当該補正元特定点Ｉの座標２８１に対応して記憶された補正完了フラグ２８２をセットする。こうして、平地格子点用の補正標高決定部４８の処理が終わり、処理は図９に戻る。上記ステップＳ４８６において補正元特定点Ｉに対する補正対象格子点の全てに対する標高の補正が完了したと判断されなかったときには、ステップＳ４８７は実行されずに平地格子点用の補正標高決定部４８の処理が終わり、処理は補正標高決定部４３（図９）に戻る。
【０１５８】
図９に戻り、補正標高決定部４３では、処理はステップＳ４６１以降を繰り返し、もしステップＳ４６２で、標高補正処理が終了していない特定点の選択が不成功と判断されたときには、補正標高決定部４３の処理が終了し、以上のようにして標高データを生成可能なプログラム４０の実行が終了する。
【０１５９】
以上に記載した実施の形態からも明らかなように、本発明によれば、近傍に標高があらかじめ決定された特定点がある格子点について、その標高を特定点の標高を用いて補正することが可能になり、特定点の標高を使用しない場合よりもより正確な標高を得ることができる。しかも、格子点の近傍に一つの特定点がある場合だけでなく、複数の特定点がある場合でも、それらの標高を使用して格子点の標高を補正できる。しかも、近傍の特定点の数が一個、２個、３個のいずれの場合でも、格子点の近傍の複数の等高線上の複数の近傍点の位置と標高を利用して、近傍の地形の断面形状を近似的に反映するように、補正後の標高を決定するので、標高をより正確な値に補正することが可能になる。しかも、特定点の近傍の格子点が傾斜地にある場合だけでなく、一つの等高線点列により実質的に囲まれている平地にある平地格子点の場合でも、その等高線とそれ以外の他の少なくとも一つの等高線上の複数の近傍点の位置と標高を利用して、その格子点の近傍の地形の曲面を近似的に反映するように、その格子点の標高を補正するので、より正確な標高値への補正が可能になる。
【０１６０】
本発明は、以上の実施の形態に限定されるものではなく、発明の要旨を変更しない範囲内において変更、修正してもよいことは言うまでもない。例えば、上記実施の形態では、平地格子点の標高の補正時に、当該格子点を実質的に取り囲む単一の等高線と他の近傍の等高線上にある複数の近傍の点を使用して、当該格子点の近傍の地形上に位置する曲線を近似する曲線を決定し、その曲線上の、格子点位置での標高を補正後の標高とした。この際、格子点と近傍の特定点のいずれについて、異なる方向にある二組の近傍点のうちの一組の近傍点のみを使用して当該格子点の標高を補正した。すなわち、図２１において、格子点Ｒについては、一組の近傍点ｐ１、ｑ１と他の一組の近傍点ｐ２、ｑ２の中から、各組の格子点に近い方の点ｐ１とｐ２について特定点Ｉより遠方にある点ｐ１を含む一組の点ｐ１、ｑ１を選択した。特定点Ｉについては、一組の近傍点Ｅ、Ｆと他の一組の近傍点Ｇ、Ｈの中から、近い方の点ＥとＦのうち格子点Ｒより遠方にある点Ｅを含む一組の点Ｅ、Ｇを選択した。選択された二組の近傍点と格子点、特定点を結ぶ点列ｑ１、ｐ１、Ｒ、Ｉ、Ｅ、Ｇのうち格子点Ｒ以外の点の位置と標高と、格子点の位置とに基づいて、これらの点列に対応する、３次元地形上の曲線を決定し、当該曲線上の、格子点Ｒの位置に対応する点の標高を格子点Ｒの標高として決定した。これにより一つの曲線を決定するだけで、格子点Ｒの標高を決定できるので、比較的簡単に標高を決定することができた。
【０１６１】
しかし、他の曲線を使用してもよい。例えば、上記の選択されなかった他の二組の近傍点、すなわち、ｐ２、ｑ２、Ｆ、Ｈを用い、点列ｑ２、ｐ２、Ｒ、Ｉ、Ｆ、Ｈに対して、既に記載した実施の形態と同様に、３次元地形上の曲線を決定し、この曲線上の、格子点Ｒに対応する点の標高を格子点Ｒの補正後の標高としてもよい。あるいは、実施の形態で使用された曲線を用いて決定された格子点の補正後の標高と、上に記載した曲線を用いて決定した格子点の補正後の標高との平均値を、格子点の補正後の標高としてもよい。
【０１６２】
あるいは、上記実施の形態では、標高計算部４２により全ての格子点の標高を、近傍に特定点があるか否かに依らないで計算し、その後、補正標高決定部４３が、標高の補正を要する格子点を検出して、補正後の標高を決定したが、順序を逆にして、補正標高決定部４３で最初に特定点の標高により標高の補正を要する格子点について補正後の標高を決定し、その後に、標高計算部４２が、標高を計算されていない残りの格子点について、補正を要しないときの計算式にしたがい標高を計算するようにしてもよい。補正を要するときの計算式には、先に記載した実施の形態と同じく、標高を決定すべき格子点が傾斜地格子点か平地格子点かを判断し、傾斜地格子点のときには、非重複領域内傾斜地格子点か、２重重複領域内傾斜地格子点か、３重重複領域内傾斜地格子点かにより異なる計算式を用いればよい。
【０１６３】
あるいは標高計算部４２により複数の格子点を順次選択し、選択された格子点について、その標高を計算する前に、当該格子点が近傍の特定点により標高補正を要する格子点であるか否かを判別し、当該格子点が近傍の特定点により標高補正を要する格子点でないときには、補正を要しないときの計算式により標高を計算し、当該格子点が近傍の特定点により標高補正を要する格子点であるときには、補正を要するときの計算式により補正後の標高を計算するようにしてもよい。補正を要するときの計算式には、先に記載した実施の形態と同じく、標高を決定すべき格子点が傾斜地格子点か平地格子点かを判断し、傾斜地格子点のときには、非重複領域内傾斜地格子点か、２重重複領域内傾斜地格子点か、３重重複領域内傾斜地格子点かにより異なる計算式を用いればよい。このような方法では、標高計算部４２と補正標高決定部４３の処理が混じって実行されることになる。
【０１６４】
また、格子点の近傍に複数の格子点がある場合にそれらの特定点の標高でもって格子点の標高を補正するにあたり、図１１（ａ）と（ｂ）にそれぞれ示したような、近傍格子点データ２８Ａと近傍特定点データ２８Ｂとを使用したが、これらのデータを使用する場合、近傍に特定点がない格子点については、何の情報がそれらのデータには登録されないので、それらのデータの総容量は少なくて済む。しかし、これらのデータに代えて他の構造のデータを使用してもよいことは言うまでもない。
【０１６５】
例えば、このような二つのデータを使用しないで、各格子点に対応して、近傍に補正元得点の有無と、近傍に特定点がある場合にはその総数とそれぞれの特定点の座標を記憶した近傍特定点データを使用してもよい。このデータを用いる場合は、複数の格子点を順次選択し、選択された格子点に対して近傍に特定点がある場合には、その格子点に対応して上記近傍特定点データに記憶された特定点座標を利用して、近傍にある特定点を特定し、その特定点の標高を特定点データから読み出し、格子点の標高の補正に使用することができる。このような近傍特定点データを使用する場合は、全ての格子点に対して、特定点の有無を記憶するようにしなければならないので、本実施の形態の場合と比べると、必要なデータの総量は増える可能性がある。しかし、全ての格子点について順次同じ判断をして行けばよいので、処理時間が短くなり、プログラムの構造も簡単になる可能性がある。
【０１６６】
また上記実施の形態では、格子点の標高を決定するために格子点の近傍の等高線上に位置する複数の近傍点を最急方位法により決定したが、他の方法を使用して近傍の点を決定してもよい。例えば、傾斜地格子点については、近傍の点として、当該格子点の上下に位置する一対の等高線のそれぞれの上にあり、当該格子点からそれぞれ最も近い一対の点を検出し、当該一対の近傍点を結ぶ直線を、格子点近傍の等高線断面曲線を近似する直線として使用してもよい。特定点の近傍の等高線断面曲線を近似する曲線についても、その代わり同様な直線を使用してもよい。このような直線を用いると計算が簡単である。しかし、本実施の形態で示したように、格子点あるいは特定点の近傍の等高線断面を表す曲線として、複数の組の最急方位点を使用して、それらの間を結ぶ曲線を使用すると、等高線断面曲線をより精度よく近似することができ、得られる標高データあるいは補正後の標高データは、直線を使用する場合よりも精度が高いことが期待される。
【図面の簡単な説明】
【０１６７】
【図１】本発明に係る標高データ生成装置の一つの実施形態の概略ブロック図である。
【図２】等高線地図画像データのいくつかの例を示す図である。
【図３】格子点用最急方位データの例を示す図である。
【図４】格子点用最急方位探索部の処理の一例の概略フローチャートである。
【図５】選択格子点と等高線点列との間の異なる関係を示す図である。
【図６】標高計算部の処理の一例の概略フローチャートである。
【図７】傾斜地格子点用の標高計算式の決定例と傾斜地格子点の標高の計算例を説明するための図である。
【図８】平地格子点用の標高計算式の決定例と平地格子点の標高の計算例を説明するための図である。
【図９】補正標高決定部の処理の一例の概略フローチャートである。
【図１０】特定点用最急方位データの例を示す図である。
【図１１】近傍格子点データと近傍特定点データの例を示す。（ａ）は近傍特定点データの例を示し、（ｂ）は近傍格子点データの例を示す。
【図１２】近傍格子点特定点検出部の処理の一例の概略フローチャートである。
【図１３】近傍格子点特定点登録部の処理の一例の概略フローチャートである。
【図１４】傾斜地格子点用の補正標高決定部の処理の一例の概略フローチャートである。
【図１５】傾斜地格子点用の非重複補正標高決定部の処理の一例の概略フローチャートである。
【図１６】図１５における傾斜地特定点用の標高計算式の決定方法と傾斜地格子点用標高補正式の決定方法を説明するための図である。
【図１７】２重重複領域内傾斜地格子点に対する標高の補正を説明するための図である。
【図１８】傾斜地格子点用の２重補正標高決定部の処理の一例の概略フローチャートである。
【図１９】３重重複領域内傾斜地格子点に対する標高の補正を説明するための図である。
【図２０】傾斜地格子点用の３重補正標高決定部５２０の処理の一例の概略フローチャートである。
【図２１】平地格子点に対する標高の補正を説明するための図である。
【図２２】平地格子点用の補正標高決定部の処理の一例の概略フローチャートである。
【符号の説明】
【０１６８】
ｐ１、ｐ２…格子点に対する最急方位点、ｑ１、ｑ２…格子点に対する２次最急方位点、Ｂ、Ｃ…傾斜地特定点に対する最急方位点、Ａ、Ｄ…傾斜地特定点に対する２次最急方位点、Ｅ、Ｆ…平地特定点に対する最急方位点、Ｇ、Ｈ…平地特定点に対する２次最急方位点、Ｒ…格子点、Ｉ、Ｉａ、Ｉｂ、Ｉｃ…三角点、基準点又は補助点等の特定点、Ｉｒ、Ｉar、Ｉbr、Ｉcr…特定点Ｉ、Ｉａ、Ｉｂ、Ｉｃをそれぞれ通過する折れ線上における格子点対応点。
【図１】
2005173681.tif 000003
【図２】
2005173681.tif 000004
【図３】
2005173681.tif 000005
【図４】
2005173681.tif 000006
【図５】
2005173681.tif 000007
【図６】
2005173681.tif 000008
【図７】
2005173681.tif 000009
【図８】
2005173681.tif 000010
【図９】
2005173681.tif 000011
【図１０】
2005173681.tif 000012
【図１１】
2005173681.tif 000013
【図１２】
2005173681.tif 000014
【図１３】
2005173681.tif 000015
【図１４】
2005173681.tif 000016
【図１５】
2005173681.tif 000017
【図１６】
2005173681.tif 000018
【図１７】
2005173681.tif 000019
【図１８】
2005173681.tif 000020
【図１９】
2005173681.tif 000021
【図２０】
2005173681.tif 000022
【図２１】
2005173681.tif 000023
【図２２】
2005173681.tif 000024
【手続補正書】
【提出日】平成16年6月22日(2004.6.22)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
２次元等高線地図内の複数の等高線のそれぞれを点列で表す、記憶装置にあらかじめ記憶された等高線点列データと、当該地図内に位置する、それぞれ位置と標高があらかじめ決定された複数の特定点の位置と標高を表す、前記記憶装置にあらかじめ記憶された特定点データと、当該地図を分割して得られる複数のメッシュのいずれかの頂点である複数の格子点のそれぞれの位置を表す、前記記憶装置にあらかじめ記憶された格子点データとから、前記複数の格子点のそれぞれの位置での標高を表す標高データを生成可能なプログラムであって、
前記複数の格子点のうちのそれぞれ二つの異なる標高の等高線点列間に位置する複数の傾斜地格子点の各々について、当該傾斜地格子点が間に位置する一対の等高線点列を少なくとも含む複数の等高線点列上にある複数の近傍点を、前記等高線点列データと前記格子点データとに基づいて検出する傾斜地格子点用の近傍点検出ステップと、
前記複数の特定点のうちのそれぞれ二つの異なる標高の等高線点列間に位置する複数の傾斜地特定点の各々について、当該傾斜地特定点が間に位置する一対の等高線点列を少なくとも含む複数の等高線点列上にある複数の近傍点を、前記等高線点列データと前記特定点データとに基づいて検出する傾斜地特定点用の近傍点検出ステップと、
前記複数の傾斜地格子点のうち、一対の等高線点列の間に位置する少なくとも一つの傾斜地特定点が近傍に存在し、当該一対の等高線点列の間に位置し、当該少なくとも一つの傾斜地特定点の標高に依存するように補正された標高を決定されるべき、当該少なくとも一つの傾斜地特定点を補正元傾斜地特定点とする補正対象傾斜地格子点に関して、当該補正対象傾斜地格子点に対して傾斜地格子点用の前記近傍点検出ステップで検出された複数の近傍点と当該補正対象傾斜地格子点とを結ぶ第１種の線上における当該補正対象傾斜地格子点の位置を表す位置情報を検出する位置情報検出ステップと、
前記補正元特定点に対して前記傾斜地特定点用の近傍点検出ステップで検出された前記複数の近傍点と当該補正元傾斜地特定点とを結ぶ第２種の線上の、前記補正対象格子点に対して検出された前記位置情報に対応する位置情報を有する、前記補正対象格子点に対応する前記第２種の線上の点である格子点対応点における標高を、前記補正元特定点に対して前記傾斜地特定点用の近傍点検出ステップで検出された前記複数の近傍点のそれぞれの標高と前記第２種の線上の位置と、当該補正元傾斜地特定点の標高と前記第２種の線上の位置と、当該格子点対応点の前記第２種の線上の位置とに基づいて決定する格子点対応点標高決定ステップと、
前記補正対象傾斜地格子点に対して前記傾斜地格子点用の近傍点検出ステップで検出された前記複数の近傍点のそれぞれの標高と前記第１種の線上の位置と、当該補正対象格子点の前記第１種の線上の位置と、前記格子点対応点標高決定ステップで決定された、当該補正対象格子点に対応する前記第２種の線上の前記格子点対応点の前記標高と、当該格子点対応点と前記補正対象格子点との間の前記地図上の位置関係とに依存して、当該補正対象格子点の補正された標高を決定する補正標高決定ステップと、
をコンピュータに実行させることを特徴とする標高データを生成可能なプログラム。
【請求項２】
前記補正標高決定ステップは、
前記補正対象傾斜地格子点に対して前記傾斜地格子点用の近傍点検出ステップで検出された前記複数の近傍点のそれぞれの標高と前記第１種の線上の位置と、当該補正対象格子点の前記第１種の線上の位置とに依存して、前記補正対象格子点に対する補正前の標高を決定する補正前格子点標高決定ステップと、
当該決定された補正前の標高と、前記格子点対応点標高決定ステップで決定された、当該補正対象格子点に対応する前記第２種の線上の前記格子点対応点の前記標高と、当該格子点対応点と前記補正対象格子点との間の前記地図上の前記位置関係とに依存して、当該補正対象格子点に対して決定された前記補正前の標高を補正する標高補正ステップと、
を含むことを特徴とする請求項１に記載の標高データを生成可能なプログラム。
【請求項３】
いずれかの傾斜地格子点に対して補正元特定点となる複数の傾斜地特定点がある場合には、前記格子点対応点標高決定ステップは、当該複数の補正元傾斜地特定点のそれぞれに関して実行され、それにより、当該複数の補正元傾斜地特定点の一つにそれぞれ対応して前記補正対象格子点に対応する複数の格子点対応点の標高が決定され、
前記補正標高決定ステップは、前記補正対象傾斜地格子点に対して前記傾斜地格子点用の近傍点検出ステップで検出された前記複数の近傍点のそれぞれの標高と前記第１種の線上の位置と、当該補正対象格子点の前記第１種の線上の位置と、前記複数の補正元傾斜地特定点の各々に対して前記格子点対応点標高決定ステップで決定された、当該補正対象格子点に対応する前記複数の補正元傾斜地特定点の各々に関連する前記第２種の線の上の前記格子点対応点の前記標高と、前記複数の補正元傾斜地格子点に対応する複数の格子点対応点の各々と前記補正対象格子点との間の前記地図上の位置関係とに依存して、当該補正対象格子点の補正された標高を決定する、
ことを特徴とする請求項１又は２に記載の標高データを生成可能なプログラム。
【請求項４】
２次元等高線地図内の複数の等高線のそれぞれを点列で表す、記憶装置にあらかじめ記憶された等高線点列データと、当該地図内に位置する、それぞれ位置と標高があらかじめ決定された複数の特定点の位置と標高を表す、前記記憶装置にあらかじめ記憶された特定点データと、当該地図を分割して得られる複数のメッシュのいずれかの頂点である複数の格子点のそれぞれの位置を表す、前記記憶装置にあらかじめ記憶された格子点データとから、前記複数の格子点のそれぞれの位置での標高を表す標高データを生成可能なプログラムであって、
前記複数の格子点のうち、単一の等高線点列により実質的に囲まれている格子点である複数の平地格子点の各々に対して当該単一の等高線点列とその外側の他の少なくとも一つの等高線点列を含む複数の標高が異なる等高線点列上に位置する、当該平地格子点の複数の近傍点を、前記等高線点列データと前記格子点データとに基づいて検出する平地格子点用の近傍点検出ステップと、
前記複数の特定点のうち、単一の等高線点列により実質的に囲まれている特定点である少なくとも一つの平地特定点に対して当該単一の等高線点列とその外側の他の少なくとも一つの等高線点列を含む複数の標高が異なる等高線点列上に位置する、当該平地特定点の複数の近傍点を、前記等高線点列データと前記特定点データとに基づいて検出する平地特定点用の近傍点検出ステップと、
前記少なくとも一つの特定点の近傍に位置し、当該特定点を実質的に囲む単一の等高線点列により実質的に囲まれている平地格子点を補正対象平地格子点として検出する補正対象検出ステップと、
前記少なくとも一つの平地特定点に対して検出された前記複数の近傍点と当該平地特定点を結ぶ点列に対応する、３次元の地形上の第１の点列のそれぞれの点の３次元の位置と、前記検出された補正対象平地格子点に対して検出された前記複数の近傍点を含む点列に対応する、当該地形上の第２の点列のそれぞれの点の３次元の位置とに依存して、前記検出された補正対象平地格子点の標高として、当該平地特定点の標高により補正された標高を決定する補正標高決定ステップと、
をコンピュータに実行させることを特徴とする標高データを生成可能なプログラム。
【請求項５】
前記平地格子点用の近傍点検出ステップは、前記検出された補正対象平地格子点に対する前記複数の近傍点として、当該補正対象平地格子点の近傍にあり前記単一の等高線点列上に位置し当該平地格子点から見て第１の方向に位置する近傍点及び当該単一の等高線点列上の外側にある近傍の等高線点列上に位置する当該近傍点の近傍点とを含む一組の近傍点と、当該平地格子点の近傍にあり前記単一の等高線点列上に位置し当該平地格子点から見て前記第１の方向とは逆の第２の方向に位置する他の近傍点及び当該単一の等高線点列上の外側にある他の近傍の等高線点列上に位置する当該他の近傍点の近傍点とを含む他の一組の近傍点のうち、前記単一の等高線点列上の近傍点が前記平地特定点から見て遠方に位置する一組の近傍点を少なくとも検出し、
前記平地特定点用の近傍点検出ステップは、前記少なくとも一つの平地特定点に対する前記複数の近傍点として、当該平地特定点の近傍にあり前記単一の等高線点列上に位置し、当該平地特定点から見て第３の方向に位置する近傍点及び当該単一の等高線点列上の外側にある近傍の等高線点列上に位置する当該近傍点の近傍点とを含む一組の近傍点と、当該平地特定点の近傍にあり前記単一の等高線点列上に位置し当該平地特定点から見て前記第３の方向とは逆の第４の方向に位置する他の近傍点及び当該単一の等高線点列上の外側にある他の近傍の等高線点列上に位置する当該他の近傍点の近傍点とを含む他の一組の近傍点のうち、前記単一の等高線点列上の近傍点が前記平地格子点から見て遠方に位置する一組の近傍点を少なくとも検出する、
ことを特徴とする請求項４に記載の標高データを生成可能なプログラム。
【請求項６】
２次元等高線地図内の複数の等高線のそれぞれを点列で表す、記憶装置にあらかじめ記憶された等高線点列データと、当該地図内に位置する、それぞれ位置と標高があらかじめ決定された複数の特定点の位置と標高を表す、前記記憶装置にあらかじめ記憶された特定点データと、当該地図を分割して得られる複数のメッシュのいずれかの頂点である複数の格子点のそれぞれの位置を表す、前記記憶装置にあらかじめ記憶された格子点データとから、前記複数の格子点のそれぞれの位置での標高を表す標高データを生成するための、処理装置により実行される標高データ生成方法であって、
前記複数の格子点のうちのそれぞれ二つの異なる標高の等高線点列間に位置する複数の傾斜地格子点の各々について、当該傾斜地格子点が間に位置する一対の等高線点列を少なくとも含む複数の等高線点列上にある複数の近傍点を、前記等高線点列データと前記格子点データとに基づいて検出する傾斜地格子点用の近傍点検出ステップと、
前記複数の特定点のうちのそれぞれ二つの異なる標高の等高線点列間に位置する複数の傾斜地特定点の各々について、当該傾斜地特定点が間に位置する一対の等高線点列を少なくとも含む複数の等高線点列上にある複数の近傍点を、前記等高線点列データと前記特定点データとに基づいて検出する傾斜地特定点用の近傍点検出ステップと、
前記複数の傾斜地格子点のうち、一対の等高線点列の間に位置する少なくとも一つの傾斜地特定点が近傍に存在し、当該一対の等高線点列の間に位置し、当該少なくとも一つの傾斜地特定点の標高に依存するように補正された標高を決定されるべき、当該少なくとも一つの傾斜地特定点を補正元傾斜地特定点とする補正対象傾斜地格子点に関して、当該補正対象傾斜地格子点に対して傾斜地格子点用の前記近傍点検出ステップで検出された複数の近傍点と当該補正対象傾斜地格子点とを結ぶ第１種の線上における当該補正対象傾斜地格子点の位置を表す位置情報を検出する位置情報検出ステップと、
前記補正元特定点に対して前記傾斜地特定点用の近傍点検出ステップで検出された前記複数の近傍点と当該補正元傾斜地特定点とを結ぶ第２種の線上の、前記補正対象格子点に対して検出された前記位置情報に対応する位置情報を有する、前記補正対象格子点に対応する前記第２種の線上の点である格子点対応点における標高を、前記補正元特定点に対して前記傾斜地特定点用の近傍点検出ステップで検出された前記複数の近傍点のそれぞれの標高と前記第２種の線上の位置と、当該補正元傾斜地特定点の標高と前記第２種の線上の位置と、当該格子点対応点の前記第２種の線上の位置とに基づいて決定する格子点対応点標高決定ステップと、
前記補正対象傾斜地格子点に対して前記傾斜地格子点用の近傍点検出ステップで検出された前記複数の近傍点のそれぞれの標高と前記第１種の線上の位置と、当該補正対象格子点の前記第１種の線上の位置と、前記格子点対応点標高決定ステップで決定された、当該補正対象格子点に対応する前記第２種の線上の前記格子点対応点の前記標高と、当該格子点対応点と前記補正対象格子点との間の前記地図上の位置関係とに依存して、当該補正対象格子点の補正された標高を決定する補正標高決定ステップと、
を含むことを特徴とする標高データ生成方法。
【請求項７】
いずれかの傾斜地格子点に対して補正元特定点となる複数の傾斜地特定点がある場合には、前記格子点対応点標高決定ステップは、当該複数の補正元傾斜地特定点のそれぞれに関して実行され、それにより、当該複数の補正元傾斜地特定点の一つにそれぞれ対応して前記補正対象格子点に対応する複数の格子点対応点の標高が決定され、
前記補正標高決定ステップは、前記補正対象傾斜地格子点に対して前記傾斜地格子点用の近傍点検出ステップで検出された前記複数の近傍点のそれぞれの標高と前記第１種の線上の位置と、当該補正対象格子点の前記第１種の線上の位置と、前記複数の補正元傾斜地特定点の各々に対して前記格子点対応点標高決定ステップで決定された、当該補正対象格子点に対応する前記複数の補正元傾斜地特定点の各々に関連する前記第２種の線の上の前記格子点対応点の前記標高と、前記複数の補正元傾斜地格子点に対応する複数の格子点対応点の各々と前記補正対象格子点との間の前記地図上の位置関係とに依存して、当該補正対象格子点の補正された標高を決定する、
ことを特徴とする請求項６に記載の標高データ生成方法。
【請求項８】
２次元等高線地図内の複数の等高線のそれぞれを点列で表す、記憶装置にあらかじめ記憶された等高線点列データと、当該地図内に位置する、それぞれ位置と標高があらかじめ決定された複数の特定点の位置と標高を表す、前記記憶装置にあらかじめ記憶された特定点データと、当該地図を分割して得られる複数のメッシュのいずれかの頂点である複数の格子点のそれぞれの位置を表す、前記記憶装置にあらかじめ記憶された格子点データとから、前記複数の格子点のそれぞれの位置での標高を表す標高データを生成するための、処理装置により実行される標高データ生成方法であって、
前記複数の格子点のうち、単一の等高線点列により実質的に囲まれている格子点である複数の平地格子点の各々に対して当該単一の等高線点列とその外側の他の少なくとも一つの等高線点列を含む複数の標高が異なる等高線点列上に位置する、当該平地格子点の複数の近傍点を、前記等高線点列データと前記格子点データとに基づいて検出する平地格子点用の近傍点検出ステップと、
前記複数の特定点のうち、単一の等高線点列により実質的に囲まれている特定点である少なくとも一つの平地特定点に対して当該単一の等高線点列とその外側の他の少なくとも一つの等高線点列を含む複数の標高が異なる等高線点列上に位置する、当該平地特定点の複数の近傍点を、前記等高線点列データと前記特定点データとに基づいて検出する平地特定点用の近傍点検出ステップと、
前記少なくとも一つの特定点の近傍に位置し、当該特定点を実質的に囲む単一の等高線点列により実質的に囲まれている平地格子点を補正対象平地格子点として検出する補正対象検出ステップと、
前記少なくとも一つの平地特定点に対して検出された前記複数の近傍点と当該平地特定点を結ぶ点列に対応する、３次元の地形上の第１の点列のそれぞれの点の３次元の位置と、前記検出された補正対象平地格子点に対して検出された前記複数の近傍点を含む点列に対応する、当該地形上の第２の点列のそれぞれの点の３次元の位置とに依存して、前記検出された補正対象平地格子点の標高として、当該平地特定点の標高により補正された標高を決定する補正標高決定ステップと、
を含むことを特徴とする標高データ生成方法。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００１３
【補正方法】変更
【補正の内容】
【００１３】
本発明による望ましい態様のいくつかは以下のとおりである。請求項１に記載の標高データを生成可能なプログラムは、２次元等高線地図内の複数の等高線のそれぞれを点列で表す、記憶装置にあらかじめ記憶された等高線点列データと、当該地図内に位置するそれぞれ位置と標高があらかじめ決定された複数の特定点の位置と標高を表す、前記記憶装置にあらかじめ記憶された特定点データと、当該地図を分割して得られる複数のメッシュのいずれかの頂点である複数の格子点のそれぞれの位置を表す、前記記憶装置にあらかじめ記憶された格子点データとから前記複数の格子点のそれぞれの位置での標高を表す標高データを生成可能なプログラムである。
更に、当該プログラムは、前記複数の格子点のうちのそれぞれ二つの異なる標高の等高線点列間に位置する複数の傾斜地格子点の各々について、当該傾斜地格子点が間に位置する一対の等高線点列を少なくとも含む複数の等高線点列上にある複数の近傍点を、前記等高線点列データと前記格子点データとに基づいて検出する傾斜地格子点用の近傍点検出ステップと、前記複数の特定点のうちのそれぞれ二つの異なる標高の等高線点列間に位置する複数の傾斜地特定点の各々について、当該傾斜地特定点が間に位置する一対の等高線点列を少なくとも含む複数の等高線点列上にある複数の近傍点を、前記等高線点列データと前記特定点データとに基づいて検出する傾斜地特定点用の近傍点検出ステップと、前記複数の特定点のうちのそれぞれ二つの異なる標高の等高線点列間に位置する複数の傾斜地特定点の各々について、当該傾斜地特定点が間に位置する一対の等高線点列を少なくとも含む複数の等高線点列上にある複数の近傍点を、前記等高線点列データと前記特定点データとに基づいて検出する傾斜地特定点用の近傍点検出ステップと、前記複数の傾斜地格子点のうち、一対の等高線点列の間に位置する少なくとも一つの傾斜地特定点が近傍に存在し、当該一対の等高線点列の間に位置し、当該少なくとも一つの傾斜地特定点の標高に依存するように補正された標高を決定されるべき、当該少なくとも一つの傾斜地特定点を補正元傾斜地特定点とする補正対象傾斜地格子点に関して、当該補正対象傾斜地格子点に対して傾斜地格子点用の前記近傍点検出ステップで検出された複数の近傍点と当該補正対象傾斜地格子点とを結ぶ第１種の線上における当該補正対象傾斜地格子点の位置を表す位置情報を検出する位置情報検出ステップと、前記補正元特定点に対して前記傾斜地特定点用の近傍点検出ステップで検出された前記複数の近傍点と当該補正元傾斜地特定点とを結ぶ第２種の線上の、前記補正対象格子点に対して検出された前記位置情報に対応する位置情報を有する、前記補正対象格子点に対応する前記第２種の線上の点である格子点対応点における標高を、前記補正元特定点に対して前記傾斜地特定点用の近傍点検出ステップで検出された前記複数の近傍点のそれぞれの標高と前記第２種の線上の位置と、当該補正元傾斜地特定点の標高と前記第２種の線上の位置と、当該格子点対応点の前記第２種の線上の位置とに基づいて決定する格子点対応点標高決定ステップと、前記補正対象傾斜地格子点に対して前記傾斜地格子点用の近傍点検出ステップで検出された前記複数の近傍点のそれぞれの標高と前記第１種の線上の位置と、当該補正対象格子点の前記第１種の線上の位置と、前記格子点対応点標高決定ステップで決定された、当該補正対象格子点に対応する前記第２種の線上の前記格子点対応点の前記標高と、当該格子点対応点と前記補正対象格子点との間の前記地図上の位置関係とに依存して、当該補正対象格子点の補正された標高を決定する補正標高決定ステップと、をコンピュータに実行させるものである。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００１６
【補正方法】削除
【補正の内容】
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００１７
【補正方法】削除
【補正の内容】
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００１８
【補正方法】変更
【補正の内容】
【００１８】
請求項３に記載の標高データを生成可能なプログラムの他の望ましい態様では、いずれかの傾斜地格子点に対して補正元特定点となる複数の傾斜地特定点がある場合には、前記格子点対応点標高決定ステップは、当該複数の補正元傾斜地特定点のそれぞれに関して実行され、それにより、当該複数の補正元傾斜地特定点の一つにそれぞれ対応して、前記補正対象格子点に対応する複数の格子点対応点の標高が決定され、前記補正標高決定ステップは、前記補正対象傾斜地格子点に対して前記傾斜地格子点用の近傍点検出ステップで検出された前記複数の近傍点のそれぞれの標高と前記第１種の線上の位置と、当該補正対象格子点の前記第１種の線上の位置と、前記複数の補正元傾斜地特定点の各々に対して前記格子点対応点標高決定ステップで決定された、当該補正対象格子点に対応する前記複数の補正元傾斜地特定点の各々に関連する前記第２種の線の上の前記格子点対応点の前記標高と、前記複数の補正元傾斜地格子点に対応する複数の格子点対応点の各々と前記補正対象格子点との間の前記地図上の位置関係とに依存して、当該補正対象格子点の補正された標高を決定する。
これにより、傾斜地格子点の近傍に複数の傾斜地特定点がある場合、当該傾斜地特定点の近傍にある複数の等高線点列上にある複数の近傍点の標高と位置以外にも、当該複数の傾斜地特定点のそれぞれの標高を反映するように、当該傾斜地格子点の補正された標高を決定できる。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００１９
【補正方法】削除
【補正の内容】
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００２０
【補正方法】削除
【補正の内容】
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００２１
【補正方法】変更
【補正の内容】
【００２１】
請求項４に記載のプログラムは、２次元等高線地図内の複数の等高線のそれぞれを点列で表す、記憶装置にあらかじめ記憶された等高線点列データと、当該地図内に位置するそれぞれ位置と標高があらかじめ決定された複数の特定点の位置と標高を表す、前記記憶装置にあらかじめ記憶された特定点データと、当該地図を分割して得られる複数のメッシュのいずれかの頂点である複数の格子点のそれぞれの位置を表す、前記記憶装置にあらかじめ記憶された格子点データとから前記複数の格子点のそれぞれの位置での標高を表す標高データを生成可能なプログラムである。
更に、当該プログラムは、前記複数の格子点のうち、単一の等高線点列により実質的に囲まれている格子点である複数の平地格子点の各々に対して当該単一の等高線点列とその外側の他の少なくとも一つの等高線点列を含む複数の標高が異なる等高線点列上に位置する、当該平地格子点の複数の近傍点を、前記等高線点列データと前記格子点データとに基づいて検出する平地格子点用の近傍点検出ステップと、前記複数の特定点のうち、単一の等高線点列により実質的に囲まれている特定点である少なくとも一つの平地特定点に対して当該単一の等高線点列とその外側の他の少なくとも一つの等高線点列を含む複数の標高が異なる等高線点列上に位置する、当該平地特定点の複数の近傍点を、前記等高線点列データと前記特定点データとに基づいて検出する平地特定点用の近傍点検出ステップと、前記少なくとも一つの特定点の近傍に位置し、当該特定点を実質的に囲む単一の等高線点列により実質的に囲まれている平地格子点を補正対象平地格子点として検出する補正対象検出ステップと、前記少なくとも一つの平地特定点に対して検出された前記複数の近傍点と当該平地特定点を結ぶ点列に対応する、３次元の地形上の第１の点列のそれぞれの点の３次元の位置と、前記検出された補正対象平地格子点に対して検出された前記複数の近傍点を含む点列に対応する、当該地形上の第２の点列のそれぞれの点の３次元の位置とに依存して、前記検出された補正対象平地格子点の標高として、当該平地特定点の標高により補正された標高を決定する補正標高決定ステップと、をコンピュータに実行させるものである。
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】００２３
【補正方法】変更
【補正の内容】
【００２３】
更に具体的には、請求項５に記載の標高データを生成可能なプログラムでは、前記平地格子点用の近傍点検出ステップは、前記検出された補正対象平地格子点に対する前記複数の近傍点として、当該補正対象平地格子点の近傍にあり前記単一の等高線点列上に位置し当該平地格子点から見て第１の方向に位置する近傍点及び当該単一の等高線点列上の外側にある近傍の等高線点列上に位置する当該近傍点の近傍点とを含む一組の近傍点と、当該平地格子点の近傍にあり前記単一の等高線点列上に位置し当該平地格子点から見て前記第１の方向とは逆の第２の方向に位置する他の近傍点及び当該単一の等高線点列上の外側にある他の近傍の等高線点列上に位置する当該他の近傍点の近傍点とを含む他の一組の近傍点のうち、前記単一の等高線点列上の近傍点が前記平地特定点から見て遠方に位置する一組の近傍点を少なくとも検出し、前記平地特定点用の近傍点検出ステップは、前記少なくとも一つの平地特定点に対する前記複数の近傍点として、当該平地特定点の近傍にあり前記単一の等高線点列上に位置し、当該平地特定点から見て第３の方向に位置する近傍点及び当該単一の等高線点列上の外側にある近傍の等高線点列上に位置する当該近傍点の近傍点とを含む一組の近傍点と、当該平地特定点の近傍にあり前記単一の等高線点列上に位置し当該平地特定点から見て前記第３の方向とは逆の第４の方向に位置する他の近傍点及び当該単一の等高線点列上の外側にある他の近傍の等高線点列上に位置する当該他の近傍点の近傍点とを含む他の一組の近傍点のうち、前記単一の等高線点列上の近傍点が前記平地格子点から見て遠方に位置する一組の近傍点を少なくとも検出する。
これにより、補正対象平地格子点の複数の近傍点と補正元平地特定点の複数の近傍点とを比較的簡単に決定することができる。
【手続補正１０】
【補正対象書類名】明細書
【補正対象項目名】００２４
【補正方法】削除
【補正の内容】
【手続補正１１】
【補正対象書類名】明細書
【補正対象項目名】００２５
【補正方法】削除
【補正の内容】
【手続補正１２】
【補正対象書類名】明細書
【補正対象項目名】００２６
【補正方法】変更
【補正の内容】
【００２６】
請求項６に記載の標高データ生成方法は、２次元等高線地図内の複数の等高線のそれぞれを点列で表す、記憶装置にあらかじめ記憶された等高線点列データと、当該地図内に位置するそれぞれ位置と標高があらかじめ決定された複数の特定点の位置と標高を表す、前記記憶装置にあらかじめ記憶された特定点データと、当該地図を分割して得られる複数のメッシュのいずれかの頂点である複数の格子点のそれぞれの位置を表す、前記記憶装置にあらかじめ記憶された格子点データとから前記複数の格子点のそれぞれの位置での標高を表す標高データを生成するための、処理装置により実行される標高データ生成方法である。
更に、本方法は、前記複数の格子点のうちのそれぞれ二つの異なる標高の等高線点列間に位置する複数の傾斜地格子点の各々について、当該傾斜地格子点が間に位置する一対の等高線点列を少なくとも含む複数の等高線点列上にある複数の近傍点を、前記等高線点列データと前記格子点データとに基づいて検出する傾斜地格子点用の近傍点検出ステップと、前記複数の特定点のうちのそれぞれ二つの異なる標高の等高線点列間に位置する複数の傾斜地特定点の各々について、当該傾斜地特定点が間に位置する一対の等高線点列を少なくとも含む複数の等高線点列上にある複数の近傍点を、前記等高線点列データと前記特定点データとに基づいて検出する傾斜地特定点用の近傍点検出ステップと、前記複数の特定点のうちのそれぞれ二つの異なる標高の等高線点列間に位置する複数の傾斜地特定点の各々について、当該傾斜地特定点が間に位置する一対の等高線点列を少なくとも含む複数の等高線点列上にある複数の近傍点を、前記等高線点列データと前記特定点データとに基づいて検出する傾斜地特定点用の近傍点検出ステップと、前記複数の傾斜地格子点のうち、一対の等高線点列の間に位置する少なくとも一つの傾斜地特定点が近傍に存在し、当該一対の等高線点列の間に位置し、当該少なくとも一つの傾斜地特定点の標高に依存するように補正された標高を決定されるべき、当該少なくとも一つの傾斜地特定点を補正元傾斜地特定点とする補正対象傾斜地格子点に関して、当該補正対象傾斜地格子点に対して傾斜地格子点用の前記近傍点検出ステップで検出された複数の近傍点と当該補正対象傾斜地格子点とを結ぶ第１種の線上における当該補正対象傾斜地格子点の位置を表す位置情報を検出する位置情報検出ステップと、前記補正元特定点に対して前記傾斜地特定点用の近傍点検出ステップで検出された前記複数の近傍点と当該補正元傾斜地特定点とを結ぶ第２種の線上の、前記補正対象格子点に対して検出された前記位置情報に対応する位置情報を有する、前記補正対象格子点に対応する前記第２種の線上の点である格子点対応点における標高を、前記補正元特定点に対して前記傾斜地特定点用の近傍点検出ステップで検出された前記複数の近傍点のそれぞれの標高と前記第２種の線上の位置と、当該補正元傾斜地特定点の標高と前記第２種の線上の位置と、当該格子点対応点の前記第２種の線上の位置とに基づいて決定する格子点対応点標高決定ステップと、前記補正対象傾斜地格子点に対して前記傾斜地格子点用の近傍点検出ステップで検出された前記複数の近傍点のそれぞれの標高と前記第１種の線上の位置と、当該補正対象格子点の前記第１種の線上の位置と、前記格子点対応点標高決定ステップで決定された、当該補正対象格子点に対応する前記第２種の線上の前記格子点対応点の前記標高と、当該格子点対応点と前記補正対象格子点との間の前記地図上の位置関係とに依存して、当該補正対象格子点の補正された標高を決定する補正標高決定ステップと、を含むものである。
更に、請求項７に記載の標高データ生成方法は、請求項６において、いずれかの傾斜地格子点に対して補正元特定点となる複数の傾斜地特定点がある場合には、前記格子点対応点標高決定ステップは、当該複数の補正元傾斜地特定点のそれぞれに関して実行され、それにより、当該複数の補正元傾斜地特定点の一つにそれぞれ対応して前記補正対象格子点に対応する複数の格子点対応点の標高が決定され、前記補正標高決定ステップは、前記補正対象傾斜地格子点に対して前記傾斜地格子点用の近傍点検出ステップで検出された前記複数の近傍点のそれぞれの標高と前記第１種の線上の位置と、当該補正対象格子点の前記第１種の線上の位置と、前記複数の補正元傾斜地特定点の各々に対して前記格子点対応点標高決定ステップで決定された、当該補正対象格子点に対応する前記複数の補正元傾斜地特定点の各々に関連する前記第２種の線の上の前記格子点対応点の前記標高と、前記複数の補正元傾斜地格子点に対応する複数の格子点対応点の各々と前記補正対象格子点との間の前記地図上の位置関係とに依存して、当該補正対象格子点の補正された標高を決定する、ものである。
これにより、傾斜地格子点の近傍に複数の傾斜地特定点がある場合、当該傾斜地特定点の近傍にある複数の等高線点列上にある複数の近傍点の標高と位置以外にも、当該複数の傾斜地特定点のそれぞれの標高を反映するように、当該傾斜地格子点の補正された標高を決定できる。
【手続補正１３】
【補正対象書類名】明細書
【補正対象項目名】００２７
【補正方法】変更
【補正の内容】
【００２７】
請求項８に記載の標高データ生成方法は、２次元等高線地図内の複数の等高線のそれぞれを点列で表す、記憶装置にあらかじめ記憶された等高線点列データと、当該地図内に位置するそれぞれ位置と標高があらかじめ決定された複数の特定点の位置と標高を表す、前記記憶装置にあらかじめ記憶された特定点データと、当該地図を分割して得られる複数のメッシュのいずれかの頂点である複数の格子点のそれぞれの位置を表す、前記記憶装置にあらかじめ記憶された格子点データとから前記複数の格子点のそれぞれの位置での標高を表す標高データを生成するための、処理装置により実行される標高データ生成方法である。
更に、本方法は、前記複数の格子点のうち、単一の等高線点列により実質的に囲まれている格子点である複数の平地格子点の各々に対して当該単一の等高線点列とその外側の他の少なくとも一つの等高線点列を含む複数の標高が異なる等高線点列上に位置する、当該平地格子点の複数の近傍点を、前記等高線点列データと前記格子点データとに基づいて検出する平地格子点用の近傍点検出ステップと、前記複数の特定点のうち、単一の等高線点列により実質的に囲まれている特定点である少なくとも一つの平地特定点に対して当該単一の等高線点列とその外側の他の少なくとも一つの等高線点列を含む複数の標高が異なる等高線点列上に位置する、当該平地特定点の複数の近傍点を検出する、前記等高線点列データと前記特定点データとに基づいて平地特定点用の近傍点検出ステップと、前記少なくとも一つの特定点の近傍に位置し、当該特定点を実質的に囲む単一の等高線点列により実質的に囲まれている平地格子点を補正対象平地格子点として検出する補正対象検出ステップと、前記少なくとも一つの平地特定点に対して検出された前記複数の近傍点と当該平地特定点を結ぶ点列に対応する、３次元の地形上の第１の点列のそれぞれの点の３次元の位置と、前記検出された補正対象平地格子点に対して検出された前記複数の近傍点を含む点列に対応する、当該地形上の第２の点列のそれぞれの点の３次元の位置とに依存して、前記検出された補正対象平地格子点の標高として、当該平地特定点の標高により補正された標高を決定する補正標高決定ステップと、を含むものである。
【手続補正１４】
【補正対象書類名】明細書
【補正対象項目名】００４１
【補正方法】変更
【補正の内容】
【００４１】
より具体的には、格子点用最急方位探索部４１は、各格子点について周囲の等高線の状況を調べ、各格子点について、等高線点列上に位置し、最も傾斜が急な方向にある複数の近傍の点を、当該格子点の近傍点として検出する。更に具体的には、格子点用最急方位探索部４１は、各格子点について、その点から見て最も傾斜が急な方向にあり、かつ、等高線点列上にある１対の互いに逆方向にある点（以下、最急方位点と呼ぶことがある）ｐ１、ｐ２の座標と標高を検出し、それぞれの最急方位点に対して同様に最も傾斜が急な方向にあり、かつ等高線上にある、元の格子点から見て遠方にある点（以下、２次最急方位点と呼ぶことがある）ｑ１、ｑ２の位置と標高を検出する。
【手続補正１５】
【補正対象書類名】明細書
【補正対象項目名】０１０６
【補正方法】変更
【補正の内容】
【０１０６】
図１５のステップＳ５０３における補正対象格子点の標高の補正は例えば以下のようにして実行される。まず、補正後の格子点Ｒの標高として、上記関数ｆｍ(Ｓ)の、座標Ｓが格子点Ｒの座標Ｓｒのときの計算する。この補正後の標高ｆｍ(Ｓｒ)は、関数値ｆｒ(Ｓｒ)と関数値ｆｉ(Ｓｒ)とを重みωと（１−ω）を用いて加算したものとなる。ここで関数値ｆｒ(Ｓｒ)は格子点Ｒの補正前の標高値であり、既に計算されて標高データ２９内に格納されているので、利用することができる。関数値ｆｉ(Ｓｒ)は、特定点Ｉを通る折れ線１７１上の座標Ｓが、格子点を通る折れ線１８１上における格子点の座標Ｓｒと同じである点（以下、格子点対応点と呼ぶことがある）Ｉｒにおける関数ｆｉ(Ｓ)が示す標高である。
【手続補正１６】
【補正対象書類名】明細書
【補正対象項目名】０１５１
【補正方法】変更
【補正の内容】
【０１５１】
より具体的には、平地特定点Ｉに対して選択された一組の近傍点ＥとＧと、当該平地特定点Ｉとを結ぶ点列に対応する、３次元の地形上の第１の点列のそれぞれの点の３次元の位置と、平地格子点Ｒに対して選択された一組の近傍点ｐ１とにｑ１を含む点列に対応する、当該地形上の第２の点列のそれぞれの点の３次元の位置とに依存して、平地格子点Ｒの標高として、当該平地特定点Ｉの標高により補正された標高を決定可能にする。例えば、平地格子点Ｒの上記一組の近傍点と、平地特定点Ｉと、平地特定点Ｉの上記一組の近傍点とを結ぶ３次元の地形上の曲線として、上記のいろいろな点と平地格子点Ｒ点とを結ぶ折れ線１８４を構成する点列に対応する、３次元地形上の点列を通過する曲線を決定し、その曲線上における、格子点Ｒに対応する点の標高を計算するための、平地格子点用の標高計算式を決定する。