(57)【特許請求の範囲】
【請求項１】
地図データを取得する地図データ取得部と、
前記地図データ取得部で取得された地図データに基づき、地球を緯度経度で分割した単位で正規化されたパーセルに対し、前記地球を任意視点から描画した場合の地図の表示中心の緯度に基づいて、パーセルの縦横比率を算出するパーセル縦横比率算出部と、
前記パーセル縦横比率算出部で算出されたパーセルの縦横比率に基づき地球オブジェクトと平面地図との中間地図を描画するためのポリゴンを生成するポリゴン生成部と、
前記ポリゴン生成部で生成されたポリゴンに基づき中間地図を描画する描画部
とを備えた地図描画装置。
【請求項２】
地図データを取得する地図データ取得部と、
前記地図データ取得部で取得された地図データに基づき、地球を緯度経度で分割した単位で正規化されたパーセルに対し、前記地球を任意視点から描画した場合の地図と平面地図の差異を最小にできるパーセルの縦横比率を算出するパーセル縦横比率算出部と、
前記パーセル縦横比率算出部で算出されたパーセルの縦横比率に基づき地球オブジェクトと平面地図との中間地図を描画するためのポリゴンを生成するポリゴン生成部と、
前記ポリゴン生成部で生成されたポリゴンに基づき中間地図を描画する描画部
とを備えた地図描画装置。
【請求項３】
前記ポリゴン生成部は、
地球オブジェクトを構成するポリゴンの頂点座標を算出する球体ポリゴン座標算出部と、
平面地図を構成するポリゴンの頂点座標を算出する平面ポリゴン座標算出部と、
前記球体ポリゴン座標算出部からの頂点座標と前記平面ポリゴン座標算出部からの頂点座標に基づいて、地球オブジェクトと平面地図との中間地図を構成するポリゴンの頂点座標であるポリゴン座標を算出し、中間地図を描画するためのポリゴンとして出力する中間ポリゴン座標算出部
とを備えたことを特徴とする請求項１または請求項２記載の地図描画装置。
【請求項４】
透視投影と平行投影を連続的に変化させながら縮尺変更を可能とする視点位置を表す視点位置パラメータを算出する視点位置算出部を備え、
前記描画部は、前記ポリゴン生成部からのポリゴンと、前記視点位置算出部からの視点位置パラメータを用いて、地球オブジェクトと平面地図の中間地図を描画する
ことを特徴とする請求項１または請求項２記載の地図描画装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、球体オブジェクトとベクター地図を用いて描画する平面地図との間を遷移させながら地図を描画する地図描画装置に関する。
【背景技術】
【０００２】
従来、球体である地球を平面に投影して地図を作成するための様々な方法が知られている。しかし、地球を平面に投影した場合、地球と平面上の地図の間に誤差が発生するという問題がある。例えば、我々が最も良く目にする地図のベースとなっているメルカトル図法の場合、高緯度の地域が歪んだ地図として表現される。【０００３】
ところで、近年のカーナビゲーションシステムでは、地球全体が見えるような広域縮尺の地図として球体の地球を表示し、それ以外の縮尺ではベクター地図を用いて描画した平面地図を表示する機能が求められている。しかし、上述したように、地球と平面地図の間には誤差が存在するため、縮尺変更に伴って両者を切り替える際、地図の見た目が大きく変わってしまいユーザに違和感を与えるという問題がある。【０００４】
このような問題を解決するために、例えば特許文献１は、ポリゴンで構成された地球オブジェクトと、地球を平射円筒図法により平面に投影した平面地図との間を、アニメーションにより遷移させる技術を開示している。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−５９０９９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述した特許文献１には、ポリゴンで構成された地球オブジェクトと、地球を平射円筒図法により平面に投影した地図との間を遷移させる技術については開示されているものの、ベクター地図を用いて描画する平面地図との間を遷移させる技術については言及されていない。したがって、特許文献１に開示された技術では、カーナビゲーションシステムで求められている機能を実現することはできない。【０００７】
この発明は、このような問題を解決するためになされたものであり、ポリゴンで構成された地球オブジェクトと、ベクター地図を用いて描画する平面地図との間を違和感なく遷移させることができる地図描画装置を提供することを課題とする。
【課題を解決するための手段】
【０００８】
この発明に係る地図描画装置は、地図データを取得する地図データ取得部と、地図データ取得部で取得された地図データに基づき、地球を緯度経度で分割した単位で正規化されたパーセルに対し、前記地球を任意視点から描画した場合の地図の表示中心の緯度に基づいて、パーセルの縦横比率を算出するパーセル縦横比率算出部と、パーセル縦横比率算出部で算出されたパーセルの縦横比率に基づき地球オブジェクトと平面地図との中間地図を描画するためのポリゴンを生成するポリゴン生成部と、ポリゴン生成部で生成されたポリゴンに基づき中間地図を描画する描画部を備えている。
【発明の効果】
【０００９】
この発明に係る地図描画装置によれば、ポリゴンで構成された地球オブジェクトと、ベクター地図を用いて描画する平面地図との間の遷移は、地球と平面地図の差異を最小にできる中間地図を介在させて行われるので、地球オブジェクトと平面地図との間を違和感なく遷移させることができる。
【図面の簡単な説明】
【００１０】
【図１】この発明の実施の形態１に係る地図描画装置の構成を示すブロック図である。
【図２】この発明の実施の形態１に係る地図描画装置で使用される地球を緯度経度で分割した地図とパーセルに分割された地図との違いを説明するための図である。
【図３】この発明の実施の形態１に係る地図描画装置で使用される地球オブジェクトを構成するポリゴンの頂点座標系を説明するための図である。
【図４】この発明の実施の形態１に係る地図描画装置で使用される地球オブジェクトを構成するポリゴンの頂点座標の求め方を説明するための図である。
【図５】この発明の実施の形態１に係る地図描画装置においてポリゴンにマッピングするテクスチャ座標を説明するための図である。
【図６】この発明の実施の形態１に係る地図描画装置で使用される平面地図を構成するポリゴンの頂点の座標系を説明するための図である。
【図７】この発明の実施の形態１に係る地図描画装置における中間ポリゴン座標算出部の動作を説明するためのフローチャートである。
【図８】この発明の実施の形態１に係る地図描画装置で使用される平面地図を構成するポリゴンの頂点座標の補正方法を説明するための図である。
【図９】この発明の実施の形態１に係る地図描画装置において、無限遠からの透視投影が平行投影と同様の描画結果となることを説明するための図である。
【図１０】この発明の実施の形態１に係る地図描画装置における表示範囲、視対象距離および画角の関係を示す図である。
【図１１】この発明の実施の形態１に係る地図描画装置で行われる視点の移動方法を説明するための図である。
【図１２】この発明の実施の形態１に係る地図描画装置で行われる縮尺変更方法を説明するための図である。
【発明を実施するための形態】
【００１１】
以下、この発明の実施の形態を、図面を参照しながら詳細に説明する。
実施の形態１．
図１は、この発明の実施の形態１に係る地図描画装置の構成を示すブロック図である。この地図描画装置は、地図データベース１、制御部２、地図データ取得部３、パーセル縦横比率算出部４、ポリゴン生成部５、視点位置算出部９および描画部１０を備えている。また、上記ポリゴン生成部５は、球体ポリゴン座標算出部６、平面ポリゴン座標算出部７および中間ポリゴン座標算出部８を備えている。
【００１２】
地図データベース１は、地図データを記憶している。この地図データベース１に記憶されている地図データは、地図データ取得部３によって読み出される。
【００１３】
制御部２は、外部からの入力に応じて、描画範囲や表示縮尺といった地図描画に必要なパラメータを決定する。この制御部２で決定されたパラメータは、地図データ取得部３に送られる。
【００１４】
地図データ取得部３は、制御部２から送られてきたパラメータによって示される必要な地図データを地図データベース１から取得する。この地図データ取得部３によって取得された地図データは、パーセル縦横比率算出部４およびポリゴン生成部５に送られる。
【００１５】
パーセル縦横比率算出部４は、地図データ取得部３から送られてきた地図データに基づき基準とするパーセル、具体的には、球体オブジェクトを任意視点から描画した場合の地図と平面地図の差異を最小にできるパーセルの縦横比率を算出する。このパーセル縦横比率算出部４によって算出されたパーセル縦横比率は、ポリゴン生成部５に送られる。
【００１６】
ポリゴン生成部５は、地図データ取得部３から送られてきた地図データおよびパーセル縦横比率算出部４から送られてきたパーセル縦横比率に基づいて、地図描画用のポリゴンを生成し、描画部１０に送る。このポリゴン生成部５は、球体ポリゴン座標算出部６、平面ポリゴン座標算出部７、中間ポリゴン座標算出部８を備えている。
【００１７】
球体ポリゴン座標算出部６は、地球オブジェクトを構成するポリゴンの頂点座標を算出し、中間ポリゴン座標算出部８に送る。平面ポリゴン座標算出部７は、平面地図を構成するポリゴンの頂点座標を算出し、中間ポリゴン座標算出部８に送る。
【００１８】
中間ポリゴン座標算出部８は、球体ポリゴン座標算出部６から送られてきた頂点座標と平面ポリゴン座標算出部７から送られてきた頂点座標とに基づいて、地球オブジェクトと平面地図との中間地図を構成するポリゴンの頂点座標（「ポリゴン座標」という）を算出する。この中間ポリゴン座標算出部８で算出されたポリゴン座標は、中間地図を描画するためのポリゴンとして視点位置算出部９および描画部１０に送られる。
【００１９】
視点位置算出部９は、ポリゴン生成部５から送られてきたポリゴンに基づき、遷移中の中間地図を描画する際の視点位置を表す視点位置パラメータを算出し、描画部１０に送る。
【００２０】
描画部１０は、ポリゴン生成部５から送られてきた中間地図を構成するポリゴンと視点位置算出部９から送られてきた視点位置パラメータを用いて、地球オブジェクトと平面地図の中間地図を描画する。
【００２１】
次に、上記のように構成される実施の形態１に係る地図描画装置の動作を説明する。まず、制御部２は、外部からの入力に応じて描画範囲や表示縮尺などといった地図描画に必要なパラメータを決定し、地図データ取得部３に送る。
【００２２】
制御部２からパラメータを受け取った地図データ取得部３は、そのパラメータに従って、必要な地図データを地図データベース１から取得し、パーセル縦横比率算出部４およびポリゴン生成部５に送る。なお、地図データベース１から取得される地図データは、地球オブジェクトを構成するポリゴンにマッピングするための画像データおよび平面地図を描画するためのベクター地図を記述したベクターデータなどを含むものとする。また、平面地図を描画するためのベクター地図はパーセルと呼ばれる矩形に分割されているものとする。
【００２３】
地図データ取得部３から地図データを受け取ったパーセル縦横比率算出部４は、その地図データに基づき、球体オブジェクトから遷移させる平面地図、すなわち、ベクター地図を用いて描画する平面地図のパーセル縦横比率を算出し、ポリゴン生成部５に送る。
【００２４】
ここで、パーセルに分割されたベクター地図を用いて平面地図を描画する方法を説明する。パーセルに分割された地図データは、図２（ａ）に示すような地球を緯度経度で分割した地図（縦横の比率が異なる地図）を、図２（ｂ）に示すように、分割された地図単位で正規化したもの（縦横の比率が等しくなるようにした地図（以下、「パーセル地図」という）である。そのため、全てのパーセル地図において縦横の比率が等しい。すなわち、図２（ｂ）に示すＡ’とＢ’のように、異なる地点においてもパーセルの縦横比率が等しい。
【００２５】
しかし、地球を緯度経度で分割した地図の場合、地球が球状であることから、緯度が異なると地図の縦横比率は異なる。すなわち、図２（ａ）に示すＡとＢのように、緯度が異なる地点においては、分割された地図の縦横比率が異なる。そのため、パーセル地図をそのまま描画した場合、基準となる緯度から離れるほど実際の地図との間に歪みが発生してしまう。そのため、パーセルの縦横比率を補正して描画する必要がある。
【００２６】
ただし、個々のパーセルに対して異なる縦横比率を設定した場合はパーセル境界部分が不連続となってしまうため、代表地点の縦横比率を求め、その値を使用する。描画対象画面のピクセル座標をＷとした場合、パーセル地図の座標からの変換は下記（１）式で表すことができる。
0005921753.tif 000002
ここで、ｗｉｎ＿ａｂｓ＿ｒａｔｉｏはピクセル座標と絶対正規化座標の比率、ｘｙｒａｔｉｏは代表地点のパーセル縦横比、Ｐはパーセル座標、ＰａｒｃｅｌＬＢはパーセルの左下の絶対正規化座標、ｄｉｓｐＣｅｎｔｅｒＡｂｓは絶対正規化座標での表示中心、ｄｉｓｐＣｅｎｔｅｒＷｉｎはピクセル座標での表示中心である。
【００２７】
パーセル縦横比率算出部４では、ここで使用する縦横比率が算出される。このパーセル縦横比率は代表地点の緯度ｌａｔから以下の（２）式で求めることができる。この代表地点としては、現在の表示中心を使用することにより、球体オブジェクトを任意視点から描画した場合の地図と平面地図の差異を最小にできる。
0005921753.tif 000003
【００２８】
地図データ取得部３から地図データを受け取るとともに、パーセル縦横比率算出部４からパーセル縦横比率を受け取ったポリゴン生成部５は、これら地図データおよびパーセル縦横比率に基づいて、地図描画用のポリゴンを生成する。具体的な動作は以下のようになる。
【００２９】
まず、ポリゴン生成部５の球体ポリゴン座標算出部６は、地球オブジェクトを構成するポリゴンの頂点座標を算出する。地球オブジェクトを構成するポリゴンの座標系は、図３に示すように、地球の中心を原点Ｏとし、北緯０度・東経９０度と北緯０度・西経９０度とを結ぶ軸をｘ軸、２極（北極と南極）を結ぶ軸をｙ軸、北緯０度・東経０度から北緯０度・東経１８０度を結ぶ軸をｚ軸と設定し、大きさを半径１とする。そして、ポリゴンの頂点は緯線と経線の交点とし、経線３６０度をｄｅｇｘ度で分割した数をｓｌｉｃｅｓ、緯線１８０度をｄｅｇｙ度で分割した数をｓｔａｃｋｓとし、ｓｌｉｃｅｓの起点を西経１８０度、ｓｔａｃｋｓの起点を南緯９０度とすると、地球オブジェクトを構成するポリゴンの頂点Ｓ（ｓｘ，ｓｙ，ｓｚ）は下記（３）式で求めることができる。
0005921753.tif 000004
ここで、ｎは、図４（ａ）に示すように、緯線を南緯９０度から北緯９０度に向かって等分割した位置のインデックス、ｍは、図４（ｂ）に示すように、経線を西経１８０度から東経１８０度に向かって等分割した位置のインデックスである。
【００３０】
また、各ポリゴンの頂点のテクスチャ座標（ｕ，ｖ）は、図５に示すテクスチャ画像の左下が南緯９０度、西経１８０度、右上が北緯９０度、東経１８０であるとすると、テクスチャ座標系は左下が（０．０，０．０）、右上が（１．０，１．０）であることから、下記（４）式で求めることができる。
0005921753.tif 000005
【００３１】
一方、ポリゴン生成部５の平面ポリゴン座標算出部７は、平面地図を構成するポリゴンの頂点座標を算出する。平面地図を構成するポリゴンの座標系は、図６に示すように、北緯０度・東経０度を原点とし、北緯０度・東経０度と、北緯０度・東経１８０度を結ぶ軸をｘ軸、北緯０度・東経０度と、北緯９０度・東経０度を結ぶ軸をｙ軸とし、このＸＹ平面はｚ＝１に存在するものとする。このとき、平面を構成するポリゴンの頂点座標Ｐ（ｐｘ，ｐｙ，ｐｚ）は下記（５）式で求めることができる。
0005921753.tif 000006
【００３２】
このようにして地球オブジェクトを構成するポリゴンの頂点座標および平面地図を構成するポリゴンの頂点座標が算出されると、次いで、ポリゴン生成部５の中間ポリゴン座標算出部８は、球体ポリゴン座標算出部６からの頂点座標と平面ポリゴン座標算出部７からの頂点座標とに基づいて、地球オブジェクトと平面地図の中間地図を構成するポリゴン座標を算出する。この処理を図７に示すフローチャートを参照しながら説明する。
【００３３】
まず、平面地図を構成するポリゴンの頂点座標がパーセル縦横比率で補正される（ステップＳＴ１１）。上記（５）式に示すように、平面地図を構成するポリゴンの頂点は、Ｘ方向とＹ方向の比率が等しい。そのため、中間ポリゴン座標算出部８は、パーセル縦横比率算出部４から渡されたパーセル縦横比率を用いて、下記（６）式により補正した頂点座標Ｐ’（ｐｘ’，ｐｙ’，ｐｚ’）を求める。
0005921753.tif 000007
【００３４】
次いで、平面地図を構成するポリゴンの頂点座標が、原点が表示中心となるように補正される（ステップＳＴ１２）。このとき、中間ポリゴン座標算出部８は、図８に示すように、ｘ座標が補正後の中心から±（１８０×ｘｙｒａｔｉｏ）度の範囲を超えるものについては、下記（７）式により±（１８０×ｘｙｒａｔｉｏ）度の範囲内におさまるように補正する。これにより、元の平面地図の境界付近を表示する場合であっても、地図が途切れず表示されるようになる。
0005921753.tif 000008
【００３５】
次いで、補正した平面地図が、視線と地球オブジェクトの交点における接平面上に補正される（ステップＳＴ１３）。平面地図が地球オブジェクトの（０，０，ｚ）上における接平面、すなわち経度緯度それぞれ０度の位置を視点とした場合の接平面であることから、視線と地球オブジェクトの交点における接平面は、表示中心における経度緯度の値で平面地図を回転させることにより求めることができる。回転後の接平面を構成する頂点Ｐ’’（ｐｘ’’，ｐｙ’’，ｐｚ’’）は、下記（８）式で求めることができる。
0005921753.tif 000009
【００３６】
その後、地球オブジェクトと接平面上における平面地図の中間地図が生成される（ステップＳＴ１４）。この中間地図を生成するために、中間ポリゴン座標算出部８は、まず、地球オブジェクトを構成するポリゴンの頂点と、接平面上における平面地図を構成するポリゴンの頂点の差分値Ｄ（ｄｘ，ｄｙ，ｄｚ）を下記（９）式で求める。
0005921753.tif 000010
【００３７】
次いで、中間ポリゴン座標算出部８は、求めた差分値を遷移中の時刻ｔに応じて地球オブジェクトを構成するポリゴンの頂点座標に加算することによって、中間地図のポリゴンの頂点座標を求める。遷移時間をＴとしたとき、中間地図のポリゴンの頂点座標Ｍ（ｍｘ，ｍｙ，ｍｚ）は下記（１０）式で求めることもできる。
0005921753.tif 000011
【００３８】
一方、視点位置算出部９は、ポリゴン生成部５からのポリゴンに基づき、遷移中の中間地図を描画する際の視点位置を表す視点位置パラメータを算出し、描画部１０に送る。地球オブジェクトは３次元の地図であるため透視投影、平面地図は２次元の地図であるため平行投影で描画することが望ましい。そのため、遷移中は投影方法を徐々に変化させる必要がある。そこで、図９に示すように、無限遠からの透視投影は平行投影とほぼ同様の見た目を実現できることを利用して、透視投影と平行投影の滑らかな遷移を実現する。まず、図１０に示すように、表示範囲をＷ、視対象距離をＬ、画角をθとした場合、これらの関係は下記（１１）式で表すことができる。
0005921753.tif 000012
【００３９】
ここで、図１１に示す視点１から視点２に時間Ｔをかけて移動する場合、単位時間あたりの画角変化Δθは下記（１２）式で表すことができる。また、時刻ｔにおける視対象距離Ｌは下記（１３）式で求めることができる。
0005921753.tif 000013
0005921753.tif 000014
【００４０】
透視投影での見た目を平行投影に近づけるには、図９に示すように画角を０に近づければよい。すなわち、透視投影から平行投影に滑らかに遷移するためには、視対象距離を大きくしながら、表示範囲を維持したまま画角を０に近づけていけばよい。そして、最後に平行投影に切り替えることにより、透視投影と平行投影を滑らかに遷移させることが可能となる。また、この遷移時に縮尺変更を行うためには、画角または視対象距離を変化させる必要がある。ここでは画角を変化させる場合を例にとって説明する。図１２に示すように、縮尺変更を行う、すなわち表示範囲をＷ０からＷ１に変更するためには、画角をθ０’からθ１’に変化させる必要がある。そのため、時刻ｔにおける表示範囲Ｗは下記（１４）式で求めることができる。
0005921753.tif 000015
【００４１】
これより、縮尺変更を組み合わせた場合の視対象距離Ｌは（１３）式と（１４）式の合成により、下記（１５）式で求めることができる。
0005921753.tif 000016
【００４２】
以上の処理の後に、ポリゴン生成部５からのポリゴン座標によって示される中間地図を構成するポリゴンと、視点位置算出部９で求められた視点位置パラメータを受け取った描画部１０は、これら中間地図を構成するポリゴンと視点位置パラメータを用いて３次元描画を行う。これにより、地球オブジェクトと平面地図の遷移過程の中間地図を描画することができる。
【００４３】
以上説明したように、実施の形態１に係る地図描画装置によれば、パーセル縦横比率算出部４とポリゴン生成部５を備え、球体オブジェクトを任意視点から描画した場合の地図と平面地図の差異を最小にできる縦横比率を用いて、地球オブジェクトと平面地図の中間地図を生成するようにしたので、地球オブジェクトと平面地図との間を違和感なく遷移させることができる。また、視点位置算出部９を更に備え、投影方法を連続的に変化させながら縮尺変更を可能とする視点位置を表す視点位置パラメータを求め、この視点位置パラメータを用いて中間地図を生成するようにしたので、縮尺変更を行いながら地球オブジェクトと平面地図との間の遷移を違和感なく行うことが可能になる。
【００４４】
なお、本願発明はその発明の範囲内において、実施の形態の任意の構成要素の変形、もしくは実施の形態の任意の構成要素の省略が可能である。
【産業上の利用可能性】
【００４５】
この発明は、ポリゴンで構成された地球オブジェクトとベクター地図を用いて描画する平面地図との間を遷移させることができるので、地球と平面地図の間の誤差を小さくすることができる。その結果、縮尺変更に伴って両者を切り替える際、地図の見た目が大きく変わることがないのでユーザに違和感を与えることもなく、カーナビゲーションシステムまたは携帯機器などで行われる地図表示に好適である。
【符号の説明】
【００４６】
１  地図データベース、２  制御部、３  地図データ取得部、４  パーセル縦横比率算出部、５  ポリゴン生成部、６  球体ポリゴン座標算出部、７  平面ポリゴン座標算出部、８  中間ポリゴン座標算出部、９  視点位置算出部、１０  描画部。
【図１】
0005921753.tif 000017
【図２】
0005921753.tif 000018
【図３】
0005921753.tif 000019
【図４】
0005921753.tif 000020
【図５】
0005921753.tif 000021
【図６】
0005921753.tif 000022
【図７】
0005921753.tif 000023
【図８】
0005921753.tif 000024
【図９】
0005921753.tif 000025
【図１０】
0005921753.tif 000026
【図１１】
0005921753.tif 000027
【図１２】
0005921753.tif 000028