以下、本発明による地図情報補正装置について、実施の形態を用いて説明する。なお、以下の実施の形態において、同じ符号を付した構成要素及びステップは同一または相当するものであり、再度の説明を省略することがある。
(実施の形態1)
本発明の実施の形態1による地図情報補正装置について、図面を参照しながら説明する。本実施の形態による地図情報補正装置は、地図情報から得られる面積と、地図情報とは別途、管理されている面積とに不整合が存在する場合に、その不整合を解消するものである。
図1は、本実施の形態による地図情報補正装置1の構成を示すブロック図である。本実施の形態による地図情報補正装置1は、地図情報記憶部11と、面積情報記憶部12と、面積算出部13と、判断部14と、補正部15と、出力部16とを備える。
地図情報記憶部11では、図形情報と、縮尺情報とを有する地図情報が記憶される。図形情報は、1以上の領域の各頂点の位置を少なくとも示す情報(例えば、頂点の座標の情報等)である。図形情報は、頂点の位置を示す情報以外の情報を含んでいてもよい。例えば、頂点と頂点とをむすぶ辺(この辺は、例えば、直線でもよく、曲線でもよい)を示す情報を含んでいてもよい。この図形情報は、例えば、公図等の地図を光学的機器により読み取ることによりデジタル化し、その後に、手動によって地図上の領域の頂点の位置の座標値を入力することにより、あるいは、自動的に地図上の領域の頂点の位置の座標値を検出することにより生成されたデータである。光学的機器とは、例えば、デジタルスチルカメラや、スキャナ等である。なお、地図を光学的機器により読み取った場合に、読み取り後の地図の画像データを、紙媒体等の地図と正確に一致させるために、画像補正を行ってもよい。したがって、その地図の画像データは、例えば、上記特許文献1の技術を用いて作成されたデータであってもよい。また、手動によって頂点の位置の座標値を入力する場合には、例えば、ユーザがモニタ上に表示された地図の画像の頂点の位置をマウスポインタ等で指定していくことによって、その座標値が入力されてもよい。また、自動的に頂点の位置の座標値を検出する場合には、領域の境界線の検出を行い、2以上の境界線が交わる位置を検出することによって、頂点の座標値を検出してもよい。これらの処理は公知であり、詳細な説明を省略する。また、結果として図形情報を構成することができるのであれば、上述した以外の方法を用いて図形情報を構成してもよい。例えば、紙媒体の地図上に透明な方眼紙等を重ねることによって、各頂点の座標値を、ユーザがキーボード等を操作することによって入力してもよい。
縮尺情報は、縮尺を示す情報である。この縮尺は、図形情報に対応する地図の縮尺である。図形情報に対応する地図とは、図形情報によって示される情報の取得が行われたもとになる地図のことである。なお、図形情報を作成する際に、地図の縮尺を変更している場合には、縮尺情報は、その変更を考慮したものである。例えば、図形情報を作成する際に、地図の縮尺を倍にしている場合には、縮尺情報は、もとの地図の縮尺の倍の縮尺となる。この縮尺情報は、例えば、ユーザが手入力したものであってもよく、あるいは、光学的機器によって読み取られた地図の画像データ上に表示されている縮尺を示す情報を文字認識してテキスト化することによって取得したものであってもよい。縮尺情報は、例えば、「1/25000」や、「二万五千分の一」等の情報である。
地図情報に図形情報と、縮尺情報以外の情報が含まれていてもよい。例えば、地図情報は、図形情報の示す1以上の頂点の移動に関する制限を示す情報である制限情報をさらに有していてもよい。例えば、後述する補正部15が領域の頂点の位置を移動させる場合に、頂点を移動させてはならない領域が存在する場合(例えば、領域の横が河川や海であって、そちらに拡張することはできない場合など)には、この制限情報によって移動させてはならない領域を指定するようにしてもよい。この制限情報は、例えば、頂点が移動できない領域を示す情報であってもよく、頂点が移動できる領域を示す情報であってもよい。また、この制限情報は、頂点が移動できる領域や移動できない領域を、点で示す情報であってもよく、線(直線でも曲線でもよい)で示す情報であってもよく、面で示す情報であってもよい。また、例えば、地図情報は、地図の画像データ(ラスタデータでもよく、そのラスタデータがベクタ化されたベクタデータであってもよい)そのものをさらに有していてもよい。
地図情報記憶部11に地図情報が記憶される過程は問わない。例えば、記録媒体を介して地図情報が地図情報記憶部11で記憶されるようになってもよく、通信回線等を介して送信された地図情報が地図情報記憶部11で記憶されるようになってもよく、あるいは、入力デバイスを介して入力された地図情報が地図情報記憶部11で記憶されるようになってもよい。地図情報記憶部11での記憶は、RAM等における一時的な記憶でもよく、あるいは、長期的な記憶でもよい。地図情報記憶部11は、所定の記録媒体(例えば、半導体メモリや磁気ディスク、光ディスクなど)によって実現されうる。
面積情報記憶部12では、1以上の領域の面積を示す情報である面積情報が記憶される。この面積情報は、地図情報と別途、管理されているものである。地図情報と別途、管理されるとは、地図情報が取得された地図以外の情報から得られたものである、という意味である。この面積情報は、例えば、公簿や地券、地積測量図等から得られるものである。したがって、面積情報は、例えば、公簿によって示される面積の情報であってもよく、地券によって示される面積の情報であってもよく、実測によって得られる面積の情報であってもよい。公簿や地券、地積測量図が電子化されている場合には、面積情報は、公簿や地券、地積測量図のそのものの情報であってもよい。また、面積情報は、例えば、ユーザが公簿や地券、地積測量図等を参照して、キーボード等を操作することによって入力した情報であってもよい。また、面積情報の示す面積と、地図情報の有する図形情報の示す頂点によって構成される領域とは、対応付けられていることが好適である。すなわち、面積情報が2以上の面積を示す場合に、図形情報の示す頂点によって構成される領域の面積が、面積情報の示すどの面積に対応しているのかが分かることが好適である。そのために、例えば、図形情報と、面積情報との両方に領域を識別する情報が含まれており、その領域を識別する情報を介して、両者の対応付けが行われていてもよい。より具体的には、図形情報において、領域識別情報と、その領域識別情報で識別される領域の頂点の座標とが対応付けられており、面積情報において、領域識別情報と、その領域識別情報で識別される領域の面積とが対応付けられていてもよい。
なお、「領域識別情報と、面積とを対応付ける」とは、領域識別情報と面積の一方の情報から、他方の情報を取得できればよいという意味である。したがって、面積情報は、領域識別情報と面積とを組として含む情報を有してもよく、領域識別情報と面積とをリンク付ける情報であってもよい。後者の場合には、面積情報は、例えば、領域識別情報と面積の格納されている位置を示すポインタやアドレスとを対応付ける情報であってもよい。本実施の形態では、前者の場合について説明する。また、領域識別情報と面積とは、直接対応付けられていなくてもよい。例えば、領域識別情報に、第3の情報が対応しており、その第3の情報に面積が対応していてもよい。他の情報が対応付けられている場合にも同様であるとする。
面積情報記憶部12に面積情報が記憶される過程は問わない。例えば、記録媒体を介して面積情報が面積情報記憶部12で記憶されるようになってもよく、通信回線等を介して送信された面積情報が面積情報記憶部12で記憶されるようになってもよく、あるいは、入力デバイスを介して入力された面積情報が面積情報記憶部12で記憶されるようになってもよい。面積情報記憶部12での記憶は、RAM等における一時的な記憶でもよく、あるいは、長期的な記憶でもよい。面積情報記憶部12は、所定の記録媒体(例えば、半導体メモリや磁気ディスク、光ディスクなど)によって実現されうる。
面積算出部13は、図形情報によって示される領域の面積を算出する。例えば、多角形の頂点の座標が図形情報によって示される場合には、面積算出部13は、その図形情報を用いて、その多角形の面積を算出する。例えば、面積算出部13は、その多角形を複数の三角形に分割し、その分割した三角形の各面積を算出して合計することによって、その多角形の面積を算出してもよい。三角形の面積を算出する際には、例えば、ヘロンの公式等を用いてもよい。また、図形情報によって、頂点と頂点をむすぶ辺を示す情報も示され、その辺が直線でない場合には、その辺を示す情報も用いて面積を算出してもよい。曲線の辺を有する場合には、例えば、面積算出部13は、求めたい面積の領域を複数の多角形に細分化し、その複数の多角形のそれぞれについて面積を算出して合計することによって、求めたい面積を算出してもよい。また、面積算出部13は、座標面積計算を用いることによって面積を算出してもよい。また、面積算出部13は、積分を行うことによって面積を算出してもよい。なお、領域の面積を算出する際には、面積算出部13は、縮尺情報を用いて領域の面積を算出するものとする。面積算出部13は、例えば、縮尺情報を用いて図形情報の示す辺の長さ等を現実の距離(実空間での距離)に換算し、その換算後の距離を用いて領域の面積を算出してもよく、図形情報の示す辺の長さ等を用いて、図形情報によって示される領域そのものの面積(地図上での面積)を算出し、その後に、その面積を現実の土地の面積(実空間での面積)に換算してもよい。したがって、図形情報によって示される領域とは、図形情報によって示される領域に対応する現実の領域(実空間での領域)であってもよい。なお、領域の輪郭が決まっている場合に、その領域の面積を算出する方法は公知であり、その説明を省略する。
判断部14は、面積算出部13が算出した領域の面積と、その領域に対応する面積情報の示す面積とが一致するかどうか判断する。判断部14は、ある領域について、面積算出部13が算出した領域の面積を面積算出部13から受け取り、また、その領域に対応する面積を面積情報記憶部12から読み出す。そして、両者を比較して、両者が一致するかどうか判断する。なお、「一致する」とは、厳密に一致することであってもよく、多少の誤差の存在する場合を含んでいてもよい。後者の場合には、例えば、誤差のしきい値(面積の許容誤差)が設定されており、判断部14は、判断の対象となった2個の面積の差が、設定されているしきい値よりも小さいのであれば、両者が一致すると判断してもよい。このしきい値は、例えば、図示しない記録媒体において記憶されていてもよく、あるいは、判断の際に生成されてもよい。後者の場合としては、例えば、判断の対象となる面積の一方にある係数(例えば、0.0001など)を掛けた値をしきい値として用いてもよい。
補正部15は、判断部14によって両面積が一致しないと判断された場合に、両面積が一致するように地図情報を補正する。この場合の「一致する」も、前述の説明と同様に、厳密に一致することであってもよく、多少の誤差の存在する場合を含んでいてもよい。補正部15は、両面積が一致するように地図情報を補正する際に、図形情報を補正してもよく、あるいは、縮尺情報を補正してもよい。以下、この2つに場合分けして説明する。なお、地図情報を補正するとは、補正後の図形情報や、補正後の縮尺情報を生成することであってもよい。
[図形情報の補正]
補正部15が図形情報を補正する際には、補正部15は、図形情報の示す各頂点のそれぞれの角の二等分線上に補正後の各頂点を移動させてもよい。このようにすることで、移動後の頂点によって形成される領域、すなわち、補正後の領域の形状が補正前の領域の形状と類似する可能性を高くすることができ、補正によって領域の形状が大きく変化することを回避することができうる。その結果、例えば、補正後の領域に対応する図形を見たユーザが、違和感を持つ可能性を低減させることができうる。この補正によって面積を増加させる場合には、補正部15は、例えば、各頂点を、もとの領域から外側に向かうように二等分線上を移動させてもよく、そうでなくてもよい。また、この補正によって面積を減少させる場合には、補正部15は、例えば、各頂点を、もとの領域の内側に向かうように二等分線上を移動させてもよく、そうでなくてもよい。
補正部15は、補正前の頂点から補正後の頂点までの距離が各頂点について等しくなるように各頂点を移動させてもよく、そうでなくてもよい。前者の場合には、各頂点を移動させることによって、領域を均等に外側あるいは内側に、拡張あるいは縮小させることができるため、補正前の領域の形状と、補正後の領域の形状とが似たものとなりうる。
また、補正部15は、補正前の頂点間の辺と、補正後の頂点間の辺とが平行となるように各頂点を移動させてもよく、そうでなくてもよい。前者の場合には、変更前の領域と、変更後の領域について、各辺が平行となる。地図では、道路の両側の境界線のように、平行性を保つことが好ましいこともある。したがって、このように各辺が平行となるように補正を行うことによって、そのような平行性を保つことができ、また、例えば、補正後の領域に対応する図形を見たユーザが、違和感を持つ可能性を低減させることができうる。
なお、補正部15が移動させようとする一の頂点について制限情報による制限が存在する場合には、補正部15は、制限情報の示す制限の範囲において一の頂点を移動させる。「制限情報の示す制限の範囲において」とは、制限情報の示す制限によって許容される範囲において、と言う意味である。例えば、ある頂点が河川に接しており、その河川との境界線上のみを移動できることが制限情報によって示される場合には、補正部15は、その頂点を河川との境界線上でのみ移動させる。この場合には、例えば、前述のように、補正前の頂点から補正後の頂点までの距離が各頂点について等しくなるように補正を行う場合であっても、その頂点については、そのようになってもよく、ならなくてもよい。また、例えば、前述のように、補正前の頂点間の辺と、補正後の頂点間の辺とが平行となるように補正を行う場合であっても、その頂点から延びる辺については、そのようになってもよく、ならなくてもよい。
また、補正部15が図形情報を補正する方法は、これらの方法に限定されるものではなく、その他の方法によって図形情報を補正してもよいことは言うまでもない。
[縮尺情報の補正]
補正部15が縮尺情報を補正する際には、補正部15は、面積算出部13が算出した領域の面積と、その領域に対応する面積情報の示す面積とが一致するように、縮尺情報を補正する。例えば、面積算出部13が算出した領域の面積(実空間での面積)が「SQ001」であり、面積情報の示す領域の面積(実空間での面積)が「SQ002」である場合には、補正部15による補正後の縮尺は次のようになりうる。
補正後の縮尺=補正前の縮尺×(SQ001/SQ002)1/2
出力部16は、補正部15による補正後の情報を出力する。補正後の情報とは、例えば、補正部15が図形情報を補正した場合には、補正後の図形情報となり、補正部15が縮尺情報を補正した場合には、補正後の縮尺情報となる。また、補正後の情報は、例えば、補正部15が補正を行った図形情報と、補正部15が補正を行っていない縮尺情報とを有する地図情報であってもよく、補正部15が補正を行っていない図形情報と、補正部15が補正を行った縮尺情報とを有する地図情報であってもよい。
ここで、この出力は、例えば、表示デバイス(例えば、CRTや液晶ディスプレイなど)への表示でもよく、所定の機器への通信回線を介した送信でもよく、プリンタによる印刷でもよく、記録媒体への蓄積でもよく、他の構成要素への引き渡しでもよい。出力部16が補正後の情報を蓄積する場合には、例えば、地図情報記憶部11への蓄積であってもよい。その場合に、例えば、図形情報や縮尺情報が上書きで蓄積されてもよく、あるいは、補正前の図形情報等と、補正後の図形情報等とが対応付けられて蓄積されてもよい。なお、出力部16は、出力を行うデバイス(例えば、表示デバイスやプリンタなど)を含んでもよく、あるいは含まなくてもよい。また、出力部16は、ハードウェアによって実現されてもよく、あるいは、それらのデバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
地図情報記憶部11と、面積情報記憶部12とは、同一の記録媒体によって実現されてもよく、あるいは、別々の記録媒体によって実現されてもよい。前者の場合には、地図情報を記憶している領域が地図情報記憶部11となり、面積情報を記憶している領域が面積情報記憶部12となる。
次に、本実施の形態による地図情報補正装置1の動作について、図2のフローチャートを用いて説明する。
(ステップS101)面積算出部13は、カウンタiを1に設定する。
(ステップS102)面積算出部13は、地図情報記憶部11を参照し、i番目の領域の面積を算出する。本実施の形態では、この面積は実空間での面積であるとする。
(ステップS103)判断部14は、面積情報記憶部12を参照し、i番目の領域に対応する面積情報を読み出す。
(ステップS104)判断部14は、ステップS102で面積算出部13が算出した面積と、ステップS103で面積情報記憶部12から読み出した面積とが一致するかどうか判断する。そして、一致する場合には、ステップS107に進み、一致しない場合には、ステップS105に進む。
(ステップS105)補正部15は、i番目の領域に対応する地図情報を補正することによって、両面積が一致するようにする。この処理の際に、面積算出部13による面積の算出や、判断部14による判断等が行われてもよい。前述のように、補正部15は、地図情報の有する図形情報を補正してもよく、あるいは、縮尺情報を補正してもよい。本実施の形態では、補正部15は、地図情報の有する図形情報を補正する場合について説明する。その補正の処理の詳細については、図3のフローチャートを用いて後述する。
(ステップS106)出力部16は、補正部15が補正した補正後の情報を出力する。
(ステップS107)面積算出部13は、カウンタiを1だけインクリメントする。
(ステップS108)面積算出部13は、地図情報記憶部11を参照し、i番目の領域が存在するかどうか判断する。そして、存在する場合には、ステップS102に戻り、存在しない場合には、地図情報を補正する一連の処理は終了となる。
図3は、図2のフローチャートにおける補正の処理(ステップS105)の詳細の一例を示すフローチャートである。この図3のフローチャートでは、領域の頂点を時計回り、あるいは、反時計回りにP1,P2,…と示す場合について説明する。
(ステップS201)補正部15は、nをi番目の領域の頂点の数に設定する。
(ステップS202)補正部15は、カウンタjを1に設定する。
(ステップS203)補正部15は、頂点Pjの角の二等分線である直線PjIjを算出する。Ijは、頂点Pjの角の二等分線上の点(Pjとは異なる点)である。Ijの位置の算出方法の一例については後述する。
(ステップS204)補正部15は、頂点Pjの補正後の頂点である頂点TPjの位置を決定する。ここでは、頂点P1と頂点TP1との距離(この距離を「補正量C」とする)があらかじめ設定されており、補正部15は、頂点P1からCだけ離れた位置であって、ステップS203で算出した直線P1I1上の位置であるTP1の位置を決定する。初期状態では、C=εに設定されているものとする。εは、微少な量であるとする。カウンタjが1でない値の場合であって、補正前の頂点から補正後の頂点までの距離が各頂点について等しくなる場合には、補正部15は、頂点PjからCだけ離れた位置であって、ステップS203で算出した直線PjIj上の位置であるTPjの位置を決定する。一方、カウンタjが1でない値の場合であって、補正前の頂点間の辺と、補正後の頂点間の辺とが平行になる場合には、補正部15は、ステップS203で算出した直線PjIj上の位置であるTPjの位置であって、辺P(j−1)Pjと、辺TP(j−1)TPjが平行となる位置を決定する。
TPjの位置を決定するとは、例えば、TPjの座標を図示しない記録媒体に蓄積することであってもよい。なお、面積算出部13が算出した面積の方が、面積情報の示す面積よりも大きい場合には、TPjは、頂点Pj等で形成される領域の内側に存在することとなる。一方、面積算出部13が算出した面積の方が、面積情報の示す面積よりも小さい場合には、TPjは、頂点Pj等で形成される領域の外側に存在することになる。
(ステップS205)補正部15は、カウンタjの値がnと等しいかどうか判断する。そして、等しい場合には、すべての頂点について補正の処理が終了したことになるため、ステップS207に進み、そうでない場合には、まだ補正を行っていない頂点が残っているため、ステップS206に進む。
(ステップS206)補正部15は、カウンタjを1だけインクリメントする。そして、ステップS203に戻る。
(ステップS207)面積算出部13は、補正後の各頂点TP1,TP2,…,TPnで形成される領域の面積を算出する。
(ステップS208)判断部14は、補正後の領域の面積と、面積情報の示す面積とが一致するかどうか判断する。そして、一致する場合には、図2のフローチャートに戻り、一致しない場合には、ステップS209に進む。図2のフローチャートに戻る場合には、最後に算出されたTP1,TP2,…,TPnの位置が、補正後の頂点の位置となる。
(ステップS209)補正部15は、補正量Cを再設定して、ステップS202に戻る。この再設定の際に、補正部15は、補正量Cにεを加算することによって、補正量Cを更新する(C←C+εとする)。
なお、図3のフローチャートでは、補正量Cをεずつ変化させる場合について説明したが、そうでなくてもよい。例えば、二分探索のアルゴリズムを用いて補正量Cの値を求めてもよい。具体的には、はじめにある程度大きな補正量Cを設定し、その補正量Cが目標値(算出した面積と面積情報の示す面積が等しくなる補正量Cの値)よりも大きい場合(面積を拡張する際には、算出した面積が面積情報の示す面積より大きい場合である。面積を縮小する際には、算出した面積が面積情報の示す面積より小さい場合である)には、補正量Cが小さくなるまで、その補正量Cを半分にすることを繰り返す。一方、その補正量Cが目標値よりも小さい場合(面積を拡張する際には、算出した面積が面積情報の示す面積より小さい場合である。面積を縮小する際には、算出した面積が面積情報の示す面積より大きい場合である)には、補正量Cが大きくなるまで、その補正量Cを倍にする。また、新たな補正量Cは、それまでの探索で得られた、目標値よりも大きい補正量Cの最小値と、目標値よりも小さい補正量Cの最大値との真ん中に設定する。例えば、カウンタj=mでの補正量Cが大きく、カウンタj=m+1での補正量Cが小さい場合には、あるいは、カウンタj=mでの補正量Cが小さく、カウンタj=m+1での補正量Cが大きい場合には、カウンタj=m+2での補正量Cは、カウンタj=mでの補正量と、カウンタj=m+1での補正量との真ん中の値に設定する。このように、二分探索を用いて補正量Cの値を探索することにより、より早く最適な補正量Cを見つけることができうる。
また、図3のフローチャートでは、補正量を変化させながら、補正後の領域を探索する場合について説明したが、領域が矩形等の簡易な形状に限定されている場合には、面積情報の示す面積を用いて、図形情報の示す各頂点をどれだけ移動させればよいかを算出し、その算出した値を用いて図形情報の補正を行うようにしてもよい。
また、図3のフローチャートのステップS203において、頂点Pjと、その頂点から延びる多角形の2辺とによって形成される三角形の内心を算出し、その内心と、頂点Pjとをむすぶ直線を算出することによって、直線PjIjを算出してもよい。この場合には、その内心がIjであってもよい。
次に、本実施の形態による地図情報補正装置1の動作について、具体例を用いて説明する。
この具体例において、地図情報記憶部11では、図4で示される地図情報が記憶されているものとする。この地図情報には、縮尺情報と、領域IDと、図形情報と、制限情報とが含まれる。領域を識別する情報である領域IDと、図形情報と、制限情報とは、互いに対応付けられている。例えば、領域ID「A101」で識別される領域(この領域を「領域A101」と呼ぶこともある。他の領域についても同様である)の図形情報は、P1(x1,x2)等で示されている。したがって、領域A101は、4個の頂点P1(x1,y1)、P2(x2,y2)、P3(x3,y3)、P4(x4,y4)で囲まれる四角形である。領域A101については制限情報が設定されていないが、領域A102については、制限情報が設定されており、頂点P2,P3の移動範囲が制限されている。
また、この具体例において、面積情報記憶部12では、図5で示される面積情報が記憶されているものとする。この面積情報では、領域IDと、面積とが対応付けられている。例えば、領域A101の面積は「SQ01」である。
図6は、図4の地図情報で示される2個の領域を示す画像である。この具体例では、図6で示されるように、P1から順番に時計回りで領域の頂点が指定されているものとする。また、図6において、領域A102の頂点P2,P3については、それ以上右側に移動することができないため、図4の地図情報で示されるように、制限情報が設定されている。
ここで、角の二等分線を算出する方法について簡単に説明する。図7で示されるように、線分PA、PBによって形成される頂点Pの角の二等分線を算出する場合について説明する。まず、線分PB上に任意の点Qを設定する。次に、線分PA上に、線分PQの長さと、線分PRの長さとが等しくなるように点Rを設定する。その後、始点が点P、終点が点RとなるベクトルPRを求める。そして、そのベクトルPRの始点を点Qとした場合における、そのベクトルPRの終点の位置を点Iとする。すると、点Pと点Iをむすぶ直線が、頂点Pの角を二等分する直線となる。したがって、このようにして直線PIの式を求めることによって、頂点Pの角を二等分する直線の式を算出することができる。
なお、角の二等分線を算出する方法は、図7を用いた説明に限定されるものではなく、その他の方法を用いてもよいことは言うまでもない。例えば、図7において、点P,点A,点Bの座標値が分かっていれば、頂点Pの角度を算出することができる。そして、その算出した角度の半分が、頂点Pの角の二等分線と、線分PA,あるいは線分PBとのなす角となる。したがって、その算出した頂点Pの半分の角度を用いることによって、頂点Pの角の二等分線の式を算出することができる。
また、多角形の面積を三角形に分割して算出する方法について簡単に説明する。図8は、五角形P1P2P3P4P5を示す図である。図8で示されるように、五角形は、頂点P1を一つの頂点とする3個の三角形、すなわち、三角形P1P2P3,三角形P1P3P4、三角形P1P4P5に分けることができる。そして、各頂点の座標が分かっているのであれば、各頂点間の距離を算出することができ、その距離をヘロンの公式に代入することによって、各三角形の面積を算出することができる。その算出した各三角形の面積を合計することによって、五角形P1P2P3P4P5の面積を求めることができる。このように、多角形P1P2…Pnの面積は、その多角形を三角形P1P2P3、三角形P1P3P4、三角形P1P4P5、…、三角形P1P(n−1)Pnに分けて、その各三角形の面積を算出して合計することによって求めることができる。なお、前述のように、これ以外の方法によって領域の面積を求めてもよいことは言うまでもない。また、実空間での面積を算出する場合には、縮尺情報を用いて各頂点間の距離を実空間での距離に換算した後に、各三角形の面積を算出すればよい。
次に、地図情報が補正される具体的な処理について説明する。まずユーザが、マウスやキーボード等の入力デバイスを操作することによって、地図情報補正装置1に対して地図情報の補正を開始する旨の指示を入力したとする。その指示は、地図情報補正装置1で受け付けられ、地図情報を補正する一連の処理が開始される。そして、面積算出部13は、図4の1番目のレコードで示される領域A101の図形情報を用いて、各頂点間の地図上での長さを算出する。また、面積算出部13は、縮尺情報1/600の逆数を各長さにかけることによって、実空間での頂点間の距離を算出する。その後、前述のようにして各三角形の面積をヘロンの公式を用いて算出し、それぞれを加算することによって、地図情報によって示される領域A101の面積を算出する(ステップS101,S102)。そのようにして算出された面積がSQ101であるとする。面積算出部13は、その算出した面積SQ101と、領域A101の領域ID「A101」とを判断部14に渡す。
すると、判断部14は、領域ID「A101」を検索キーとして面積情報を検索し、ヒットしたレコードから面積SQ01を読み出す(ステップS103)。そして、判断部14は、面積算出部13から受け取った面積SQ101と、読み出した面積SQ01とを比較する。この場合には、面積SQ01の方が大きく、両者が一致しなかったとする(ステップS104)。すると、判断部14は、領域A101の領域ID「A101」と、面積情報の示す面積の方が大きかった旨とを補正部15に渡す。
補正部15は、図形情報を補正する処理を開始する(ステップS105)。具体的には、補正部15は、領域ID「A101」に対応する図形情報を参照し、頂点数が4個であるので、nを4に設定する(ステップS201)。そして、前述のようにして、頂点P1の角の二等分線P1I1の式を算出する(ステップS202,S203)。また、補正部15は、図示しない記録媒体であらかじめ記憶されている補正量C=εを読み出して、P1とTP1との距離がεになるように、直線P1I1上に移動後の頂点TP1を決定し、その頂点TP1の座標を図示しない記録媒体において一時的に記憶する(ステップS204)。なお、この場合には、面積情報の示す面積の方が大きかったため、移動後の頂点TP1は、領域A101の外側に設定されることになる。図9は、そのようにして設定された移動後の頂点TP1を示す図である。これと同様に、他の頂点P2,P3,P4についても同様に、移動後の頂点を決定する(ステップS205,S206,S203,S204)。頂点TP1〜TP4の決定が行われると、補正部15は、図示しない経路によって面積算出部13に頂点TP1〜TP4の各座標と、面積を算出する旨の指示とを渡す。すると、面積算出部13は、頂点TP1〜TP4で形成される領域の面積を算出する(ステップS207)。そして、判断部14は、以前に面積情報記憶部12から読み出した面積SQ01と、新たに算出された面積とを比較する。この場合もまだ、面積情報の示す面積の方が大きく、両者が一致しなかったとする(ステップS208)。
すると、補正部15は、補正量Cを2εに更新し(ステップS209)、新たな移動後の各頂点TP1〜TP4の決定する処理を行う(ステップS202〜S206)。そして、前述の場合と同様に、面積算出部13による面積の算出と、判断部14による判断とが行われる(ステップS207,S208)。この場合には、判断部14によって、両面積が一致すると判断されたとする。すると、補正部15は、領域ID「A101」と、補正後の各頂点TP1〜TP4の座標とを出力部16に渡す。出力部16は、それらの情報を受け取ると地図情報記憶部11にアクセスし、領域ID「A101」に対応する図形情報の各頂点の座標を、補正部15から受け取った移動後の各頂点TP1〜TP4の座標に上書きで変更する(ステップS106)。その結果、地図情報が図10で示されるように更新される。図11は、補正前の領域A101と、補正後の領域A101とを示す図である。図11で示されるように、各頂点の位置が移動され、領域A101の面積が拡張されることによって、地図情報の示す領域A101の面積と、面積情報の示す領域A101の面積とが一致するようになっている。
この後、領域A102等についても、領域の補正等が適宜、行われることになる(ステップS107,S108,S102〜S106)。その処理の詳細については省略する。なお、領域A102の場合には、制限情報が設定されているため、その制限情報の示す制限の範囲内で、頂点P2,P3が移動されることになる。その具体的な移動方法としては、例えば、領域A101の場合と同様に、制限情報が存在しないとして各頂点を移動させた後に、制限情報を満足するように頂点TP2,TP3のみを再度移動させるようにしてもよい。より具体的には、領域A101の場合と同様に、図12で示される矢印(1)で示されるように、制限情報が存在しないとして各頂点P1〜P4を移動させる。その後に、x座標が「x102」を超えているため、制限情報の示す制限を満たさない2個の頂点TP2,TP3については、制限を満たすように再度、移動させてもよい。例えば、図12で示される矢印(2)で示されるように、TP2,TP3を移動させてもよい。その移動の際には、図12で示される矢印(2)のように、制限を満たす最小の範囲での移動であってもよく、あるいは、それ以上の移動であってもよい。また、矢印(2)の移動前の領域(頂点TP1、TP2、TP3、TP4で形成される矩形の領域)の各辺上を、移動対象となる頂点TP2,TP3を移動させるようにしてもよく、そうでなくてもよい。
なお、図4の制限情報は、P2,P3についての制限情報であるが、その制限は、移動後の頂点TP2,TP3についても同様の制限となるものである。また、制限情報の示す制限の範囲内で頂点を移動させる別の具体的な方法としては、制限情報の存在する頂点について角の二等分線上を移動させた場合に、制限を満たさなくなるのであれば、はじめから制限情報を満たすように頂点を移動させる方法がありうる。例えば、図12において、P2,P3を直接、矢印(2)での移動後のTP2,TP3の位置に移動させてもよい。その際に、補正前の頂点から補正後の頂点までの距離が各頂点について等しくなるように各頂点を移動させる旨の規則が定められている場合には、その規則にしたがうようにすべての頂点(例えば、図12でのTP2,TP3を含む)を移動させてもよく、あるいは、制限情報に応じて不規則な移動を行う頂点(例えば、図12でのTP2,TP3)については、そのような制限を課さなくてもよい。補正前の頂点間の辺と、補正後の頂点間の辺とが平行となるように各頂点を移動させる旨の規則が定められている場合には、その規則に従うようにすべての頂点(例えば、図12でのTP2,TP3を含む)を移動させてもよく、あるいは、制限情報に応じて不規則な移動を行う頂点(例えば、図12でのTP2,TP3)については、そのような制限を課さなくてもよい。このように、移動対象となる頂点の少なくとも一つに対して制限情報による制限が課されている場合には、各頂点の移動方法については、各種の態様がありうる。
また、この具体例では、図形情報について補正が行われる場合について説明したが、前述のように、縮尺情報を補正することによって、図形情報の示す領域の面積と、面積情報の示す面積との整合をとるようにしてもよい。その場合について、簡単に説明する。なお、判断部14による判断が行われるまでの処理(ステップS101〜S104)は、上記具体例と同様であり、その説明を省略する。判断部14によって、両面積が一致しないと判断されると、補正部15は、補正後の縮尺を次のように算出する(ステップS105)。
補正後の縮尺=(1/600)×(SQ101/SQ01)1/2
この具体例では、その補正後の縮尺が1/700であったとする。すると、出力部16は、その補正後の縮尺で縮尺情報を上書きする(ステップS106)。その結果、地図情報が図13で示されるように更新されることになる。なお、縮尺情報を補正する場合には、図2のフローチャートで示されるように、複数の領域ごとに補正を行わなくてもよい。一つの領域について補正を行うだけであってもよい。したがって、ステップS104でYesと判断された後と、ステップS106の処理の後に、一連の処理が終了となってもよい。そのような場合に、1番目の領域の面積を用いて縮尺情報を補正してもよく、その他の領域の面積を用いて縮尺情報を補正してもよい。また、例えば、複数の領域の面積を用いて補正後の縮尺情報を算出し、その平均値である最終的な補正後の縮尺情報を算出してもよい。
なお、本実施の形態では、補正前の頂点と、補正後の頂点を容易に区別できるように補正前の頂点をP1等で示し、補正後の頂点をTP1等で示す場合について説明したが、両頂点を同じ記号で示してもよい。
また、この具体例では、地図情報に制限情報が存在する場合について説明したが、地図情報に制限情報が存在しなくてもよい。
また、この具体例では、頂点のみを移動させる場合について説明したが、図形情報によって頂点の位置と、頂点間の辺の位置や形状とが示される場合には、頂点の位置の移動にともなって、その頂点間の辺を移動させると共に、その辺を変形させてもよい。例えば、移動後の頂点間の距離が、移動前の頂点間の距離よりも狭くなる場合には、その頂点間の辺を縮小させて、移動後の頂点間におさまるようにしてもよい。移動後の頂点間の距離が、移動前の頂点間の距離よりも広くなる場合には、逆にその頂点間の辺を拡大させて、移動後の頂点間におさまるようにしてもよい。その辺の縮小や拡大では、変形後の形状と変形前の形状とが相似となるように縮小や拡大を行ってもよく、そうでなくてもよい。
以上のように、本実施の形態による地図情報補正装置1によれば、地図情報から得られる面積と、地図情報とは別途、管理されている面積とに不整合が存在する場合に、地図情報の図形情報を補正したり、縮尺情報を補正したりすることによって、両者の不整合を解消することができうる。その結果、例えば、地図情報が公簿や地券、地積測量図等の情報と整合するように補正することができうる。
なお、本実施の形態では、面積算出部13が図形情報の示す領域の実際の面積(実空間での面積)を算出し、判断部14が、その算出された面積と、面積情報の示す実空間での面積とを比較する場合について説明したが、そうでなくてもよい。例えば、面積算出部13は、図形情報の示す領域の地図上での面積(地図空間での面積)を算出し、判断部14は、その算出された面積と、面積情報の示す実空間での面積を地図上での面積に変換した面積とを比較してもよい。
(実施の形態2)
本発明の実施の形態2による地図情報補正装置について、図面を参照しながら説明する。本実施の形態による地図情報補正装置は、地図情報から得られる距離と、地図情報とは別途、管理されている距離とに不整合が存在する場合に、その不整合を解消するものである。
図14は、本実施の形態による地図情報補正装置2の構成を示すブロック図である。本実施の形態による地図情報補正装置2は、地図情報記憶部11と、距離情報記憶部21と、距離算出部22と、判断部23と、補正部24と、出力部25とを備える。地図情報記憶部11は、実施の形態1と同様のものであり、その説明を省略する。なお、本実施の形態において地図情報記憶部11で記憶される地図情報は、1以上の辺を少なくとも示す図形情報と、縮尺情報とを有する地図情報であるとする。その辺は、直線であってもよく、曲線であってもよい。その辺は、例えば、両端の頂点の位置の座標によって示されてもよく、あるいは、その辺に含まれる複数の点の座標によって示されてもよい。前者の場合に、両端の頂点の間は、直線でむすばれてもよく、曲線でむすばれてもよい。曲線でむすばれる場合には、その曲線を示す関数等が図形情報に含まれていてもよい。
距離情報記憶部21では、1以上の辺の距離を示す情報である距離情報が記憶される。この距離情報は、1以上の辺の距離を示す情報である以外は、実施の形態1で説明した面積情報と同様のものである。例えば、この距離情報は、地積測量図等から得られるものであってもよい。また、この距離情報の示す距離は、例えば、畝順帳や野帳によって示される距離の情報であってもよく、実測によって得られる距離の情報であってもよい。また、距離情報の示す距離と、地図情報の有する図形情報の示す辺とは、対応付けられていることが好適である。すなわち、距離情報が2以上の辺を示す場合に、図形情報の示す辺の距離が、距離情報の示すどの距離に対応しているのかが分かることが好適である。そのために、例えば、図形情報と、距離情報との両方に辺を識別する情報が含まれており、その辺を識別する情報を介して、両者の対応付けが行われていてもよい。
距離情報記憶部21に距離情報が記憶される過程は問わない。例えば、記録媒体を介して距離情報が距離情報記憶部21で記憶されるようになってもよく、通信回線等を介して送信された距離情報が距離情報記憶部21で記憶されるようになってもよく、あるいは、入力デバイスを介して入力された距離情報が距離情報記憶部21で記憶されるようになってもよい。距離情報記憶部21での記憶は、RAM等における一時的な記憶でもよく、あるいは、長期的な記憶でもよい。距離情報記憶部21は、所定の記録媒体(例えば、半導体メモリや磁気ディスク、光ディスクなど)によって実現されうる。
距離算出部22は、図形情報によって示される辺の距離を算出する。例えば、図形情報の示す2個の頂点によって直線の辺が示される場合に、距離算出部22は、2頂点間の距離をピタゴラスの定理や座標差計算等を用いて算出することによって、辺の距離を算出してもよい。また、例えば、図形情報によって曲線の辺が示される場合に、距離算出部22は、その辺を複数の直線の辺に細分化し、その複数の直線の辺のそれぞれについて距離を算出して合計することによって、求めたい距離を算出してもよい。なお、辺の距離を算出する際には、距離算出部22は、縮尺情報を用いて辺の距離を算出するものとする。距離算出部22は、例えば、縮尺情報を用いて図形情報の示す辺の長さを現実の距離(実空間での距離)に換算してもよい。なお、辺の距離を算出する方法は公知であり、その説明を省略する。
判断部23は、距離算出部22が算出した辺の距離と、その辺に対応する距離情報の示す距離とが一致するかどうか判断する。判断部23は、ある辺について、距離算出部22が算出した辺の距離を距離算出部22から受け取り、また、その辺に対応する距離を距離情報記憶部21から読み出す。そして、両者を比較して、両者が一致するかどうか判断する。なお、実施の形態1での判断部14と同様に、「一致する」とは、厳密に一致することであってもよく、多少の誤差(公差)の存在する場合を含んでいてもよい。
補正部24は、判断部23によって両距離が一致しないと判断された場合に、両距離が一致するように縮尺情報を補正する。例えば、距離算出部22が算出した辺の距離(実空間での距離)が「L001」であり、距離情報の示す辺の距離(実空間での距離)が「L002」である場合には、補正部24は、補正後による補正後の縮尺は次のようになりうる。
補正後の縮尺=補正前の縮尺×(L001/L002)
出力部25は、補正部24による補正後の情報を出力する。補正後の情報とは、例えば、補正後の縮尺情報であってもよく、その補正後の縮尺情報を含む地図情報であってもよい。
ここで、この出力は、例えば、表示デバイス(例えば、CRTや液晶ディスプレイなど)への表示でもよく、所定の機器への通信回線を介した送信でもよく、プリンタによる印刷でもよく、記録媒体への蓄積でもよく、他の構成要素への引き渡しでもよい。出力部25が補正後の情報を蓄積する場合には、例えば、地図情報記憶部11への蓄積であってもよい。その場合に、縮尺情報が上書きで蓄積されてもよく、あるいは、補正前の縮尺情報と、補正後の縮尺情報とが対応付けられて蓄積されてもよい。なお、出力部25は、出力を行うデバイス(例えば、表示デバイスやプリンタなど)を含んでもよく、あるいは含まなくてもよい。また、出力部16は、ハードウェアによって実現されてもよく、あるいは、それらのデバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
地図情報記憶部11と、距離情報記憶部21とは、同一の記録媒体によって実現されてもよく、あるいは、別々の記録媒体によって実現されてもよい。前者の場合には、地図情報を記憶している領域が地図情報記憶部11となり、距離情報を記憶している領域が距離情報記憶部21となる。
次に、本実施の形態による地図情報補正装置2の動作について、図15のフローチャートを用いて説明する。
(ステップS301)距離算出部22は、地図情報記憶部11を参照し、1番目の辺の距離を算出する。本実施の形態では、この距離は実空間での距離であるとする。
(ステップS302)判断部23は、距離情報記憶部21を参照し、1番目の辺に対応する距離情報を読み出す。
(ステップS303)判断部23は、ステップS301で距離算出部22が算出した距離と、ステップS302で距離情報記憶部21から読み出した距離とが一致するかどうか判断する。そして、一致する場合には、縮尺情報の補正の必要はないため、一連の処理は終了となり、一致しない場合には、ステップS304に進む。
(ステップS304)補正部24は、地図情報の有する縮尺情報を補正することによって、両距離が一致するようにする。
(ステップS305)出力部25は、補正部24が補正した補正後の情報を出力する。そして、地図情報を補正する一連の処理は終了となる。
このフローチャートでは、1番目の辺の距離を用いて縮尺情報を補正する場合について説明したが、そうでなくてもよい。例えば、他の辺の距離を用いて縮尺情報を補正してもよく、あるいは、複数の辺の距離を用いて補正後の縮尺情報を算出し、その平均値である最終的な補正後の縮尺情報を算出してもよい。
次に、本実施の形態による地図情報補正装置2の動作について、具体例を用いて説明する。
この具体例において、地図情報記憶部11では、図16で示される地図情報が記憶されているものとする。この地図情報には、縮尺情報と、辺IDと、図形情報とが含まれる。領域IDが辺IDに代わった以外は、実施の形態1の具体例での地図情報と同様であり、その詳細な説明を省略する。なお、図形情報は、辺の両端P1,P2の座標を示す情報であり、辺の両端の間は、直線でむすばれるものとする。
また、この具体例において、距離情報記憶部21では、図17で示される距離情報が記憶されているものとする。この距離情報では、辺IDと、距離とが対応付けられている。例えば、辺ID「SI101」で識別される辺(この辺のことを辺SI101と呼ぶこともある。他の辺についても同様である)の距離は「L01」である。
まず、ユーザがマウスやキーボード等の入力デバイスを操作することによって、地図情報補正装置2に対して地図情報の補正を開始する旨の指示を入力したとする。その指示は、地図情報補正装置2で受け付けられ、地図情報を補正する一連の処理が開始される。そして、距離算出部22は、図16の1番目のレコードで示される辺SI101の図形情報を用いて、辺の距離を算出する(ステップS301)。そのようにして算出された距離がL101であるとする。距離算出部22は、その算出した距離L101と、辺SI101の辺ID「SI101」とを判断部23に渡す。
すると、判断部23は、辺ID「SI101」を検索キーとして距離情報を検索し、ヒットしたレコードから距離「L01」を読み出す(ステップS302)。そして、判断部23は、距離算出部22から受け取った距離L101と、読み出した距離L01とを比較する。この場合には、両者が一致しなかったとする(ステップS303)。すると、判断部23は、辺ID「SI101」と、距離が一致しなかった旨とを補正部24に渡す。
補正部24は、補正後の縮尺を次のように算出する(ステップS304)。
補正後の縮尺=補正前の縮尺×(L101/L01)
この具体例では、その補正後の縮尺が1/500であったとする。すると、出力部25は、その補正後の縮尺で縮尺情報を上書きする(ステップS305)。その結果、地図情報が図18で示されるように更新されることになる。
以上のように、本実施の形態による地図情報補正装置2によれば、地図情報から得られる距離と、地図情報とは別途、管理されている距離とに不整合が存在する場合に、地図情報の縮尺情報を補正することによって、両者の不整合を解消することができうる。その結果、例えば、地図情報が畝順帳や野帳、地積測量図等の情報と整合するように補正することができうる。
なお、本実施の形態では、地図情報から得られる距離と、距離情報の示す距離とに不整合が存在する際に、縮尺情報を補正する場合について説明したが、実施の形態1の場合と同様に、図形情報を補正するようにしてもよい。例えば、図形情報の示す辺を延ばしたり、縮めたりすることによって、地図情報から得られる距離と、距離情報の示す距離とが一致するようにしてもよい。その場合に、補正部24は、辺の長さを縮める場合には、補正前の辺の一部分を補正後の辺としてもよい。また、補正部24は、辺の長さを延ばす場合であって、補正前の辺が直線である場合には、その直線性が保たれるように辺の長さを延ばしてもよく、補正前の辺に繰り返しパターンが存在する場合(例えば、波形のパターンやジグザグのパターンが存在する場合など)には、その繰り返しパターンが保たれるように辺の長さを延ばしてもよい。また、辺の長さを延ばす場合に、辺の一端のみを延ばしてもよく、辺の両端を延ばしてもよい。辺の両端を延ばす場合には、均等に延ばしてもよく、そうでなくてもよい。
また、本実施の形態では、距離算出部22が図形情報の示す領域の実際の距離(実空間での距離)を算出し、判断部23が、その算出された距離と、距離情報の示す実空間での距離とを比較する場合について説明したが、そうでなくてもよい。例えば、距離算出部22は、図形情報の示す領域の地図上での距離(地図空間での距離)を算出し、判断部23は、その算出された距離と、距離情報の示す実空間での距離を地図上での距離に変換した距離とを比較してもよい。
また、上記各実施の形態において、面積情報や距離情報は、公簿や地券、地積測量図、畝順帳、野帳から得られた以外の情報であってもよい。例えば、面積情報や距離情報は、実際に測量して得られた情報そのものであってもよい。また、上記各実施の形態において、面積や距離の単位は、比較や面積の算出等の過程において適宜、換算されてもよい。例えば、面積や距離について、尺貫法の単位と、アールやヘクタール、平方メートル、メートル等とが換算されてもよい。
また、上記各実施の形態において、地図情報が説明した以外の方法によって補正されてもよいことは言うまでもない。例えば、各頂点の角の二等分線上以外の位置に補正後の頂点が移動されてもよい。
また、上記各実施の形態では、地図情報補正装置1,2がスタンドアロンである場合について説明したが、地図情報補正装置1,2は、スタンドアロンの装置であってもよく、サーバ・クライアントシステムにおけるサーバ装置であってもよい。後者の場合には、出力部は、例えば、通信回線を介して情報を出力することになる。
また、上記各実施の形態において、各処理または各機能は、単一の装置または単一のシステムによって集中処理されることによって実現されてもよく、あるいは、複数の装置または複数のシステムによって分散処理されることによって実現されてもよい。
また、上記各実施の形態において、各構成要素が実行する処理に関係する情報、例えば、各構成要素が受け付けたり、取得したり、選択したり、生成したり、送信したり、受信したりした情報や、各構成要素が処理で用いるしきい値や数式、アドレス等の情報等は、上記説明で明記していない場合であっても、図示しない記録媒体において、一時的に、あるいは長期にわたって保持されていてもよい。また、その図示しない記録媒体への情報の蓄積を、各構成要素、あるいは、図示しない蓄積部が行ってもよい。また、その図示しない記録媒体からの情報の読み出しを、各構成要素、あるいは、図示しない読み出し部が行ってもよい。
また、上記各実施の形態において、各構成要素等で用いられる情報、例えば、各構成要素が処理で用いるしきい値やアドレス、各種の設定値等の情報がユーザによって変更されてもよい場合には、上記説明で明記していない場合であっても、ユーザが適宜、それらの情報を変更できるようにしてもよく、あるいは、そうでなくてもよい。それらの情報をユーザが変更可能な場合には、その変更は、例えば、ユーザからの変更指示を受け付ける図示しない受付部と、その変更指示に応じて情報を変更する図示しない変更部とによって実現されてもよい。その図示しない受付部による変更指示の受け付けは、例えば、入力デバイスからの受け付けでもよく、通信回線を介して送信された情報の受信でもよく、所定の記録媒体から読み出された情報の受け付けでもよい。
また、上記各実施の形態において、地図情報補正装置1,2に含まれる2以上の構成要素が通信デバイスや入力デバイス等を有する場合に、2以上の構成要素が物理的に単一のデバイスを有してもよく、あるいは、別々のデバイスを有してもよい。
また、上記各実施の形態において、各構成要素は専用のハードウェアにより構成されてもよく、あるいは、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをCPU等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。なお、上記実施の形態における地図情報補正装置1を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータを、1以上の領域の各頂点の位置を少なくとも示す図形情報と、縮尺を示す情報である縮尺情報とを有する地図情報が記憶される地図情報記憶部で記憶されている地図情報に含まれる図形情報によって示される領域の面積を算出する面積算出部と、前記面積算出部が算出した領域の面積と、当該領域に対応する、前記1以上の領域の面積を示す情報である面積情報が記憶される面積情報記憶部で記憶されている面積情報の示す面積とが一致するかどうか判断する判断部と、前記判断部によって両面積が一致しないと判断された場合に、前記両面積が一致するように前記地図情報を補正する補正部と、前記補正部による補正後の情報を出力する出力部として機能させるためのものである。
また、上記実施の形態における地図情報補正装置2を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータを、1以上の辺を少なくとも示す図形情報と、縮尺を示す情報である縮尺情報とを有する地図情報が記憶される地図情報記憶部で記憶されている地図情報に含まれる図形情報によって示される辺の距離を算出する距離算出部と、前記距離算出部が算出した辺の距離と、当該辺に対応する、前記1以上の辺の距離を示す情報である距離情報が記憶される距離情報記憶部で記憶されている距離情報の示す距離とが一致するかどうか判断する判断部と、前記判断部によって両距離が一致しないと判断された場合に、前記両距離が一致するように前記縮尺情報を補正する補正部と、前記補正部による補正後の情報を出力する出力部として機能させるためのものである。
なお、上記プログラムにおいて、上記プログラムが実現する機能には、ハードウェアでしか実現できない機能は含まれない。例えば、情報を出力する出力部などにおけるモデムやインターフェースカードなどのハードウェアでしか実現できない機能は、上記プログラムが実現する機能には少なくとも含まれない。
また、このプログラムは、サーバなどからダウンロードされることによって実行されてもよく、所定の記録媒体(例えば、CD−ROMなどの光ディスクや磁気ディスク、半導体メモリなど)に記録されたプログラムが読み出されることによって実行されてもよい。また、このプログラムは、プログラムプロダクトを構成するプログラムとして用いられてもよい。
また、このプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
図19は、上記プログラムを実行して、上記実施の形態による地図情報補正装置1,2を実現するコンピュータの外観の一例を示す模式図である。上記実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムによって実現されうる。
図19において、コンピュータシステム900は、CD−ROM(Compact Disk Read Only Memory)ドライブ905、FD(Floppy(登録商標) Disk)ドライブ906を含むコンピュータ901と、キーボード902と、マウス903と、モニタ904とを備える。
図20は、コンピュータシステム900の内部構成を示す図である。図20において、コンピュータ901は、CD−ROMドライブ905、FDドライブ906に加えて、MPU(Micro Processing Unit)911と、ブートアッププログラム等のプログラムを記憶するためのROM912と、MPU911に接続され、アプリケーションプログラムの命令を一時的に記憶すると共に、一時記憶空間を提供するRAM(Random Access Memory)913と、アプリケーションプログラム、システムプログラム、及びデータを記憶するハードディスク914と、MPU911、ROM912等を相互に接続するバス915とを備える。なお、コンピュータ901は、LANへの接続を提供する図示しないネットワークカードを含んでいてもよい。
コンピュータシステム900に、上記実施の形態による地図情報補正装置1,2の機能を実行させるプログラムは、CD−ROM921、またはFD922に記憶されて、CD−ROMドライブ905、またはFDドライブ906に挿入され、ハードディスク914に転送されてもよい。これに代えて、そのプログラムは、図示しないネットワークを介してコンピュータ901に送信され、ハードディスク914に記憶されてもよい。プログラムは実行の際にRAM913にロードされる。なお、プログラムは、CD−ROM921やFD922、またはネットワークから直接、ロードされてもよい。
プログラムは、コンピュータ901に、上記実施の形態による地図情報補正装置1,2の機能を実行させるオペレーティングシステム(OS)、またはサードパーティプログラム等を必ずしも含んでいなくてもよい。プログラムは、制御された態様で適切な機能(モジュール)を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいてもよい。コンピュータシステム900がどのように動作するのかについては周知であり、詳細な説明は省略する。
また、本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。