(57)【特許請求の範囲】
【請求項１】
表示された地図に対して与えられたスクロール操作のスクロール速度を検知するスクロール速度検知部と、
前記スクロール操作のスクロール方向を検知するスクロール方向検知部と、
表示矩形の地図上の位置を取得する表示矩形監視部と、
前記表示矩形の地図上の位置から先読み描画するか否かを決める先読み描画開始判定部と、
前記スクロール速度及び前記スクロール方向から先読み描画サイズを決定する先読み描画サイズ算出部と、
前記スクロール方向、前記先読み描画サイズ及び表示矩形位置から先読み描画領域を決定する先読み描画領域算出部と、
前記先読み描画領域の地図データを読み込む地図データ読込み部と、
読み込んだ地図データを裏描画メモリに描画する地図描画部と、
前記裏描画メモリを表描画メモリに切り替えるメモリ切り替え部と、
切り替えた表描画メモリから前記表示矩形の地図に対応する矩形を切り出す矩形切り出し部と、
前記切り出した矩形を表示する表示部を備えた地図スクロール装置。
【請求項２】
先読み描画開始判定部は、所定の先読み描画開始判定領域から表示矩形が逸脱したか否かによって判定することを特徴とする請求項１記載の地図スクロール装置。
【請求項３】
先読み描画サイズ算出部は、スクロール方向とスクロール速度に対応して予め決められた先読み描画サイズを示す先読み描画サイズテーブルを参照して先読み描画サイズを決定することを特徴とする請求項１記載の地図スクロール装置。
【請求項４】
先読み描画領域算出部は、スクロール方向、先読み描画サイズ及び表示矩形位置から、前記スクロール方向以外の領域に対して当該スクロール方向の領域が大きい先読み描画領域を算出することを特徴とする請求項１記載の地図スクロール装置。
【請求項５】
メモリ切り替え部は、先読み描画完了時に裏描画メモリと表描画メモリを切り替えることを特徴とする請求項１記載の地図スクロール装置。
【請求項６】
表示された地図に対して与えられたスクロール操作のスクロール速度を検知するスクロール速度検知部と、
前記スクロール操作のスクロール方向を検知するスクロール方向検知部と、
表示矩形の地図上の位置を取得する表示矩形監視部と、
前記表示矩形の地図上の位置から先読み描画するか否かを決める先読み描画開始判定部と、
前記スクロール速度及び前記スクロール方向から先読みオフセットを決定する先読みオフセット算出部と、
前記スクロール速度及び前記スクロール方向から先読み描画サイズを決定する先読み描画サイズ算出部と、
前記スクロール方向、前記先読みオフセット、前記表示矩形位置及び前記先読み描画サイズから先読み描画領域を決定する先読み描画領域算出部と、
前記先読み描画領域の地図データを読み込む地図データ読込み部と、
読み込んだ地図データを裏描画メモリに描画する地図描画部と、
前記表示矩形位置が前記先読み描画領域に包含されているか否かを判定する先読み包含判定部と、
前記裏描画メモリを表描画メモリに切り替えるメモリ切り替え部と、
切り替えた表描画メモリから前記表示矩形の地図に対応する矩形を切り出す矩形切り出し部と、
前記切り出した矩形を表示する表示部を備えた地図スクロール装置。
【請求項７】
先読みオフセット算出部は、スクロール速度及びスクロール方向に対応して予め決められた先読みオフセットの値を示す先読みオフセットテーブルを参照し、先読みオフセットの値を決定することを特徴とする請求項６記載の地図スクロール装置。
【請求項８】
先読み包含判定部は、表示矩形が先読み描画領域に完全包含されているか否かを判定することを特徴とする請求項６記載の地図スクロール装置。
【請求項９】
メモリ切り替え部は、先読み包含判定部にて完全包含されると判断されたときのみ表描画メモリと裏描画メモリを切り替えることを特徴とする請求項６記載の地図スクロール装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、表示される地図をスクロールする際、白地図の出現を防止することのできる地図スクロール装置に関するものである。
【背景技術】
【０００２】
従来の地図表示デバイスにおける地図スクロール装置は、表示矩形より大きい判定領域をスクロールにより表示矩形が超えた場合、スクロール方向に先読みしてデータ読み込み及び描画することによって、滑らかなスクロールを実現していた（例えば、特許文献１参照）。詳細には、表示している箇所から右にスクロールし、表示矩形が先読み判定領域を超えると、先読み描画用メモリ領域に右方向にあるデータだけを読み込み描画する。そうすることで、高速にスクロールする場合にも表示矩形が描画済み領域からはみ出ないようにし、表示矩形が未描画領域に行くことで生じる白地図問題を回避していた。なお、白地図とは部分的に地図が欠けて見える現象のことである。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平０９−１６１５６号公報
【０００４】
しかしながら、上記従来の地図スクロール装置は、先読みする地図データが多い場合、先読み描画処理負荷が高く、表示矩形がスクロールにより先読み領域に達したときに描画が完了しておらず、結果的に白地図が発生するという問題点があった。
この発明は上記のような問題点を解決するためになされたもので、スクロール速度とスクロール方向とに応じて先読み描画領域、描画位置を適応的に変更することで、描画負荷低減かつ描画高速化を実現し、白地図発生を防ぐことを目的とする。
【発明の概要】
【０００５】
この発明に係る地図スクロール装置は、スクロール速度とスクロール方向に基づいて先読み描画領域を決定するようにしたので、描画負荷を低減して描画高速化を実現し、白地図発生を防ぐことができる。
【図面の簡単な説明】
【０００６】
【図１】この発明の実施の形態１の地図スクロール装置を示す構成図である。
【図２】この発明の実施の形態１の地図スクロール装置の動作を示すフローチャートである。
【図３】この発明の実施の形態１の地図スクロール装置の表描画メモリに描画されている地図の内容と、表示矩形、及び先読み描画開始判定領域の位置関係を示す説明図である。
【図４】この発明の実施の形態１の地図スクロール装置の表示矩形が先読み描画開始判定領域から逸脱したかを判定する動作の説明図である。
【図５】この発明の実施の形態１の地図スクロール装置の先読み描画サイズテーブルの説明図である。
【図６】この発明の実施の形態１の地図スクロール装置のスクロール方向毎の表描画メモリまたは裏描画メモリと先読み描画サイズとの関係を示す説明図である。
【図７】この発明の実施の形態１の地図スクロール装置の水平スクロール時の先読み描画位置と地図上の表示矩形位置と先読み描画開始判定領域との関係を示す説明図である。
【図８】この発明の実施の形態１の地図スクロール装置の垂直スクロール時の先読み描画位置を示す説明図である。
【図９】この発明の実施の形態１の地図スクロール装置の斜めスクロール時の先読み描画位置を示す説明図である。
【図１０】この発明の実施の形態１の地図スクロール装置の裏描画メモリへの地図データの描画領域を示す説明図である。
【図１１】この発明の実施の形態１の地図スクロール装置の先読み描画開始時と先読み描画完了時の表描画メモリと裏描画メモリとの関係を示す説明図である。
【図１２】この発明の実施の形態２の地図スクロール装置を示す構成図である。
【図１３】この発明の実施の形態２の地図スクロール装置の動作を示すフローチャートである。
【図１４】この発明の実施の形態２の地図スクロール装置の先読みオフセットテーブルを示す説明図である。
【図１５】この発明の実施の形態２の地図スクロール装置の先読みオフセットと先読み描画位置の関係を示す説明図である。
【図１６】この発明の実施の形態２の地図スクロール装置の垂直スクロール時の先読み描画位置を示す説明図である。
【図１７】この発明の実施の形態２の地図スクロール装置の斜めスクロール時の先読み描画位置を示す説明図である。
【図１８】この発明の実施の形態２の地図スクロール装置の表示矩形が先読み描画領域に完全包含されているかを判定する場合の説明図である。
【図１９】この発明の実施の形態２の地図スクロール装置の先読み描画完了時と表示矩形完全包含時における表描画メモリと裏描画メモリとの切り替えを示す説明図である。
【発明を実施するための形態】
【０００７】
以下、この発明をより詳細に説明するために、この発明を実施するための形態について、添付の図面に従って説明する。
実施の形態１．
図１は、本実施の形態による地図スクロール装置の構成図である。
図１において、スクロール入力部１は、地図スクロール動作を受け付けるタッチパネルもしくはリモコンなどの方向キー入力部である。スクロール速度検知部２は、スクロール入力部１より入力されたスクロール操作に基づきスクロール速度を判断する手段である。スクロール方向検知部３は、スクロール入力部１より入力されたスクロール操作に基づきスクロール方向を判断する手段である。表示矩形監視部４は、表示している画面の地図上の位置を監視する手段である。先読み描画開始判定部５は、表示矩形位置と先読み描画開始判定領域を比較し先読みするか否かを判定する手段である。先読み描画サイズ算出部６は、検知されたスクロール速度及びスクロール方向から先読みして地図描画するサイズを決定する手段である。先読み描画領域算出部７は、算出した描画サイズと表示矩形位置から先読み描画領域を決定する手段である。地図データ読込み部８は、決定された先読み描画領域に該当する地図データを地図データベース９より読込む手段である。地図データベース９は、表示する地図を格納するデータベースである。地図描画部１０は、読み込んだ地図データを裏描画メモリ１１に書き込む手段である。メモリ切り替え部１３は、裏描画メモリ１１への描画が完了すると表描画メモリ１２と裏描画メモリ１１を切り替える手段である。矩形切り出し部１４は、表描画メモリ１２内から表示矩形と同サイズの領域を切り出す手段である。表示部１５は、液晶などの地図表示部であり、矩形切り出し部１４で切り出された領域を表示する手段である。
【０００８】
次に、実施の形態１の動作を図２のフローチャートに基づいて説明する。
この実施の形態では、地図座標は横軸ｘ右方向が正、縦軸ｙ上方向が正であり、表示部１５の表示矩形サイズは４００×２００であり、表描画メモリ１２及び裏描画メモリ１１のサイズはともに８００×４００であり、先読み描画開始判定領域は６００×３００であり、スクロール速度は速度１〜速度４の４段階（速度１が最も遅く、速度４が最も速い）であるとする。尚、表描画メモリ１２及び裏描画メモリ１１はＶＲＡＭ上のメモリ領域である。また、表描画メモリ１２は既に描画完了済みとし、表描画メモリ１２に描画されている地図の内容と、表示矩形、及び先読み描画開始判定領域は図３の位置関係となっているとする。尚、図３において、３００ａが地図上の表示矩形位置を、３００ｂが先読み描画開始判定領域を、３００ｃが表描画メモリ１２に描画されている地図の位置をそれぞれ示している。
【０００９】
先ず、ユーザのスクロール操作をスクロール操作入力部１によって取得する（ステップＳＴ１）。スクロール操作はタッチパネルによるもの、もしくはリモコンによるキー操作が一般的である。次にスクロール速度検知部２にて、スクロール入力を元にスクロール速度を検知する（ステップＳＴ２）。タッチパネルの場合、タッチしている箇所と画面中心からの距離で速度判定し、距離が大きいほど速度を大きくする。リモコンキー入力であれば、リモコン方向キーの押下時間により速度判定し、押下時間が長いほど速度を大きくする。スクロール速度検知が終わると、スクロール方向検知部３にてスクロール方向検知を行う（ステップＳＴ３）。タッチパネルの場合、画面中心からタッチしている箇所までの方向がスクロール方向となる。リモコンキー入力であれば、押しているリモコンの方向がスクロール方向となる（一般に８方向入力リモコンが多い）。
【００１０】
次に、表示矩形監視部４にて、表示矩形の地図上の位置を取得する（ステップＳＴ４）。表示矩形位置とは、表示矩形の４頂点の地図ｘｙ座標である。次に、先読み描画開始判定部５にて、表示矩形位置と先読み描画開始判定領域とを比較し、先読み描画開始判定を行う（ステップＳＴ５）。詳細には、図４に示す通りスクロールによって表示矩形が先読み描画開始判定領域から逸脱したかを判定し、逸脱したならば先読み描画開始と判断する（ステップＳＴ６）。尚、図４において、４００ａがスクロール前の位置、４００ｂがスクロール後の位置を示し、４００ｃは先読み描画開始判定領域をはみ出た部分を示している。また、表示矩形の先読み描画開始判定領域逸脱は以下の式１で判定でき、真ならば逸脱、偽ならば非逸脱となる。ただし、ｄｉｓｐ＿ｌ，ｄｉｓｐ＿ｒ，ｄｉｓｐ＿ｂ，ｄｉｓｐ＿ｔは表示矩形の左端ｘ座標、右端ｘ座標、下端ｙ座標、上端ｙ座標であり、ｔｈｒｅｓ＿ｌ，ｔｈｒｅｓ＿ｒ，ｔｈｒｅｓ＿ｂ，ｔｈｒｅｓ＿ｔは先読み描画開始判定領域の左端ｘ座標、右端ｘ座標、下端ｙ座標、上端ｙ座標である。
（ｄｉｓｐ＿ｌ≦ｔｈｒｅｓ＿ｌ）∪（ｔｈｒｅｓ＿ｒ≦ｄｉｓｐ＿ｒ）∪（ｄｉｓｐ＿ｂ≦ｔｈｒｅｓ＿ｂ）∪（ｔｈｒｅｓ＿ｔ≦ｄｉｓｐ＿ｔ）      （式１）
【００１１】
ステップＳＴ６の先読み描画開始判定の結果、先読み描画を開始しない場合は、再度ステップＳＴ２のスクロール速度検知からやり直す。一方、先読み描画開始であった場合は、先読み描画サイズ算出部６において先読み描画サイズを算出する（ステップＳＴ７）。先読み描画サイズは、スクロール速度検知部２でのスクロール速度とスクロール方向検知部３でのスクロール方向に依存して決定する。詳細には、先読み描画サイズテーブルにより決定し、スクロール速度が４段階の場合には、図５のような先読み描画サイズテーブルを用いる。スクロール速度が大きい場合、スクロール方向以外に方向変化する確率は低い傾向にあるため、先読み描画サイズテーブル設定ではスクロール速度が大きいほどスクロール方向以外の描画領域を狭めるようにすることが重要である。例えば、水平にスクロールする場合は、描画領域の上下を描画領域から削除し、垂直にスクロールする場合は、描画領域の左右を描画領域から削除する。また斜め方向にスクロールする場合は両方向の描画領域を削除するが、両方向ともに方向変化する可能性があるので垂直及び水平スクロールの中間程度の狭め量とする。また、必ず表描画メモリ１２及び裏描画メモリ１１のサイズ以下に設定する（図６参照）。尚、図６において、（ａ）が水平スクロール時、（ｂ）が垂直スクロール時、（ｃ）が斜めスクロール時を示している。また、６００ａが元の先読み描画サイズ、６００ｂが新たな先読み描画サイズを示している。
【００１２】
先読み描画サイズ算出部６において、先読み描画サイズを決定すると、先読み描画領域算出部７にて地図上の先読み描画領域を計算する（ステップＳＴ８）。先読み描画領域算出は、先読み描画サイズと表示矩形位置、およびスクロール方向を用いて行う。水平スクロールの場合、表示矩形と先読み描画領域の中心のｙ座標が同じになるようにし、両矩形のスクロール方向の逆側の辺間隔が２０ピクセルになるように配置する。同時に先読み描画が完了した際に設定される先読み描画開始判定領域も算出する。先読み描画開始判定領域は、表示矩形の４辺と先読み描画領域の４辺との中間に位置するような４辺で構成される（図７参照）。尚、図７は水平スクロール時の先読み描画位置を示し、（ａ）が右スクロール時、（ｂ）が左スクロール時を示している。また、７００ａが地図上の表示矩形位置、７００ｂが先読み描画領域、７００ｃが先読み描画完了したときに有効になる先読み描画開始判定領域を示している。更に、垂直スクロール、斜めスクロールの場合にも同様に先読み描画領域、および先読み描画開始判定領域を決定する（図８、９参照）。尚、図８において、（ａ）が下スクロール時、（ｂ）が上スクロール時を示している。また、図９において、（ａ）が左上スクロール時、（ｂ）が左下スクロール時、（ｃ）が右上スクロール時、（ｄ）が右下スクロール時を示している。尚、表示矩形と先読み描画領域の間隔は必ずしも２０ピクセルである必要はなく、なるべく両辺が近くなるような数十ピクセル程度でもよい。
【００１３】
先読み描画領域を算出後、地図データ読込み部８にて、先読み描画領域に該当する地図データを地図データベース９より取得する（ステップＳＴ９）。取得した地図データを地図描画部１０に渡し、地図描画部１０では裏描画メモリ１１へ描画する（ステップＳＴ１０）。ここで、取得した地図データはスクロール速度、方向に応じてサイズが異なるが、必ず裏描画メモリ１１の左上から地図データを描画する（図１０参照）。尚、図１０において、（ａ）が水平スクロール時、（ｂ）が垂直スクロール時、（ｃ）が斜めスクロール時を示している。また、１０００ａが裏描画メモリ１１の領域、１０００ｂが地図データを描画する領域を示している。
【００１４】
裏描画メモリ１１への描画が完了すると、メモリ切り替え部１３にて表描画メモリ１２と裏描画メモリ１１を入れ替える（ステップＳＴ１１）。すると、先読み描画された裏描画メモリ１１が新たな表描画メモリ１２となり、矩形切り出し部１４によって表示矩形位置に該当する地図上の矩形を表示部１５に表示する（ステップＳＴ１２、ＳＴ１３）。例えば、図１１の通り右スクロールする場合、先読み描画開始時に裏描画メモリ１１にスクロール方向、速度に応じた先読み描画領域分の地図を描画し、描画完了すると裏描画メモリ１１と表描画メモリ１２が切り替わる。すると、表示矩形が右に移動している最中に、スクロール方向に大きく地図が描かれた新たな表描画メモリ１２に更新されるため、表示矩形が未描画領域にはみ出ることを防ぐ。尚、図１１において、（ａ）が先読み描画開始時、（ｂ）が先読み描画完了時を示している。また、１１００ａが表示矩形、１１００ｂが先読み描画開始判定領域、１１００ｃが裏描画メモリ１１に描画する領域を示している。
【００１５】
以上のように、実施の形態１では、スクロール方向、スクロール速度に応じて、不必要な描画領域を削除し描画負荷を下げているようにしているので、地図描画量が多いときにも先読み描画を高速に行うことができる。またスクロール方向に大きく描画領域をとっているので、描画領域からの表示矩形の逸脱を防止し、白地図を低減できる。
【００１６】
以上のように、実施の形態１の地図スクロール装置によれば、表示された地図に対して与えられたスクロール操作のスクロール速度を検知するスクロール速度検知部と、スクロール操作のスクロール方向を検知するスクロール方向検知部と、表示矩形の地図上の位置を取得する表示矩形監視部と、表示矩形の地図上の位置から先読み描画するか否かを決める先読み描画開始判定部と、スクロール速度及びスクロール方向から先読み描画サイズを決定する先読み描画サイズ算出部と、スクロール方向、先読み描画サイズ及び表示矩形位置から先読み描画領域を決定する先読み描画領域算出部と、先読み描画領域の地図データを読み込む地図データ読込み部と、読み込んだ地図データを裏描画メモリに描画する地図描画部と、裏描画メモリを表描画メモリに切り替えるメモリ切り替え部と、切り替えた表描画メモリから表示矩形の地図に対応する矩形を切り出す矩形切り出し部と、切り出した矩形を表示する表示部を備えたので、白地図発生を防止できると共に、描画負荷を低減できるため描画を高速化することができる。
【００１７】
また、実施の形態１の地図スクロール装置によれば、先読み描画開始判定部は、所定の先読み描画開始判定領域から表示矩形が逸脱したか否かによって判定するようにしたので、確実に先読み描画の開始判定を行うことができる。
【００１８】
また、実施の形態１の地図スクロール装置によれば、先読み描画サイズ算出部は、スクロール方向とスクロール速度に対応して予め決められた先読み描画サイズを示す先読み描画サイズテーブルを参照して先読み描画サイズを決定するようにしたので、より的確な先読み描画サイズを決定することができる。
【００１９】
また、実施の形態１の地図スクロール装置によれば、先読み描画領域算出部は、スクロール方向、先読み描画サイズ及び表示矩形位置から、前記スクロール方向以外の領域に対して当該スクロール方向の領域が大きい先読み描画領域を算出するようにしたので、より白地図の発生を低減させることができる。
【００２０】
また、実施の形態１の地図スクロール装置によれば、メモリ切り替え部は、先読み描画完了時に裏描画メモリと表描画メモリを切り替えるようにしたので、確実に白地図の発生を防止することができる。
【００２１】
実施の形態２．
以上の実施の形態１では、スクロール方向、スクロール速度に応じて先読み描画領域を最適化するようにしたものであるが、次にスクロール速度が非常に大きく実施の形態１の手法では先読み描画領域から表示矩形が逸脱してしまうような場合にも白地図出現を低減することができる例を実施の形態２として次に説明する。
【００２２】
図１２は、実施の形態２の地図スクロール装置の構成図であり、以下、この図１２に基づいて説明する。
図１２において、先読みオフセット算出部１６は、スクロール速度検知部２で検知したスクロール速度と、スクロール方向検知部３で検知したスクロール方向から先読み描画位置を決定するための先読みオフセットを決定する手段である。また、先読み描画領域算出部７ａは、先読み描画サイズ算出部６で決定した描画サイズと、先読みオフセット算出部１６で算出した先読みオフセットと、表示矩形監視部４で取得した表示矩形位置から先読み描画領域を決定するよう構成されている。更に、先読み包含判定部１７は、表示矩形監視部４で取得した表示矩形位置に基づいて、先読み描画領域に表示矩形が完全包含されているか否かを判定する手段である。また、メモリ切り替え部１３ａは、先読み包含判定部１７にて表示矩形が先読み描画領域に完全包含されたと判断したときに表描画メモリ１２と裏描画メモリ１１を切り替えるよう構成されている。これ以外の構成は、図１に示した実施の形態１と同様であるため、対応する部分に同一符号を付してその説明を省略する。
【００２３】
次に、実施の形態２の動作について図１３のフローチャートを用いて説明する。
実施の形態２では、実施の形態１と同様に、地図座標は横軸ｘ右方向が正、縦軸ｙ上方向が正であり、表示部１５の表示矩形サイズは４００×２００であり、表描画メモリ１２及び裏描画メモリ１１のサイズは共に８００×４００であり、先読み描画開始判定領域は６００×３００であり、スクロール速度は速度１〜速度４の４段階であるとする。尚、表描画メモリ１２及び裏描画メモリ１１はＶＲＡＭ上のメモリ領域である。また、表描画メモリ１２は既に描画完了済みとし、表描画メモリ１２に描画されている地図の内容と、表示矩形、及び先読み描画開始判定領域は図３の位置関係となっているとする。
【００２４】
本実施の形態では、ステップＳＴ７の先読み描画サイズ算出まで実施の形態１と全く同様の処理を行うため、先読み描画サイズ算出までの説明を省く。先読み描画サイズ算出後、先読みオフセット算出部１６において先読みオフセットを算出する（ステップＳＴ２０）。先読みオフセットは、図１４のような予め設定された先読みオフセットテーブルを用いて、スクロール速度、スクロール方向を入力として決定する。尚、先読みオフセットテーブルは表示矩形サイズや実際のスクロール速度（１フレームに何ピクセル進むか）などの地図表示仕様から決定するものであり、システム作成者が適当な値を設定する。
【００２５】
次に、先読み描画領域算出部７ａにおいて、先読み描画領域を算出する（ステップＳＴ８ａ）。先読み描画領域算出は、先読み描画サイズ、先読みオフセット、表示矩形位置、およびスクロール方向を用いて行う。水平スクロールの場合、実施の形態１と同様に表示矩形と先読み描画領域の中心のｙ座標が同じになるようにし、両矩形のスクロール方向の逆側の辺間隔が２０ピクセルになるように配置するが、新たに先読みオフセット分を進行方向にずらす。同時に先読み描画が完了した際に設定される先読み描画開始判定領域も算出するが、これも実施の形態１と同様に決定したものを先読みオフセット分ずらす（図１５参照）。尚、図１５は水平スクロール時の先読み描画位置を示し、（ａ）は右スクロール時、（ｂ）は左スクロール時を示している。また、１５００ａは地図上の表示矩形位置、１５００ｂは先読み描画領域、１５００ｃは先読み描画した裏描画メモリ１１が表描画メモリ１２と入れ替えられるときに有効になる先読み開始判定領域を示している。垂直スクロール、斜めスクロールの場合にも同様に先読み描画領域、および先読み描画開始判定領域を決定する（図１６、１７参照）。尚、図１６において（ａ）は下スクロール時、（ｂ）は上スクロール時を示している。また、図１７において、（ａ）は左上スクロール時、（ｂ）は左下スクロール時、（ｃ）は右上スクロール時、（ｄ）は右下スクロール時を示している。尚、表示矩形と先読みオフセットなしの場合の先読み描画領域の間隔は必ずしも２０ピクセルである必要はなく、なるべく両辺が近くなるような数十ピクセル程度でもよい。
【００２６】
先読み描画領域を算出後、地図データ読込み部８にて、先読み描画領域に該当する地図データを地図データベース９より取得する（ステップＳＴ９）。取得した地図データを地図描画部１０に渡し、地図描画部１０では裏描画メモリ１１へ描画する（ステップＳＴ１０）。ここで、取得した地図データはスクロール速度、方向に応じてサイズが異なるが、必ず裏描画メモリ１１の左上から地図データを描画する（図１０参照）。裏描画メモリ１１への描画が完了すると、先読み包含判定部１７にて、表示矩形が先読み描画領域に完全包含されているかを判定する（ステップＳＴ２１，ＳＴ２２）。先読みオフセット付きの先読み描画領域は、描画完了時に表示矩形を完全包含しているとは限らない。そのため、描画完了時に裏描画メモリ１１を即座に表描画メモリ１２と入れ替えて表示部へ切り取り表示すると白地図が出現する可能性がある。例えば、図１８の状況で右スクロールする場合、先読み描画開始時に表示矩形が先読み描画領域に完全包含されていない。ここで、先読み描画が完了した場合に右スクロールにより先読み描画領域に表示矩形が完全包含されていないと、表示矩形の左の一部分が先読み描画した表描画メモリ１２からはみ出してしまう。すると結果的に、切り出して表示部１５に表示した際に白地図として出現してしまう。これを防ぐために、先読み包含判定部１７において、表示矩形が先読み描画領域に完全包含されているか判定し、ステップＳＴ２２において、完全包含されていれば、メモリ切り替え部１３ａにて表描画メモリ１２と裏描画メモリ１１を切り替える（ステップＳＴ１１）。そのとき、先読み描画開始判定領域も先読み描画領域算出部７ａで算出したものに切り替える（図１９参照）。完全包含されていなければ切り替えを行わない。そして矩形切り出し部１４にて表描画メモリ１２から表示矩形に該当する領域を表示部１５に表示する（ステップＳＴ１２，ＳＴ１３）ことで、白地図を出現させることなく地図を表示することができる。
【００２７】
尚、図１８において、（ａ）は先読み描画開始時、（ｂ）は先読み描画完了時に即座に切り替える場合を示している。また、図１９において、（ａ）は先読み描画開始時、（ｂ）は表示矩形完全包含時を示している。更に、図１８および図１９において、１８００ａ，１９００ａは表示矩形、１８００ｂ，１９００ｂは先読み描画開始判定領域、１８００ｃ，１９００ｃは裏描画メモリ１１に描画する領域を示している。
【００２８】
以上のように、実施の形態２では、スクロール方向、スクロール速度に応じて、先読みオフセット分だけ先読み描画領域をずらして先読み描画するので、スクロール速度が速い場合にも先読み描画完了時に先読み描画領域から表示矩形が逸脱することを防げるので白地図を低減できる。
【００２９】
以上のように、実施の形態２の地図スクロール装置によれば、表示された地図に対して与えられたスクロール操作のスクロール速度を検知するスクロール速度検知部と、スクロール操作のスクロール方向を検知するスクロール方向検知部と、表示矩形の地図上の位置を取得する表示矩形監視部と、表示矩形の地図上の位置から先読み描画するか否かを決める先読み描画開始判定部と、スクロール速度及びスクロール方向から先読みオフセットを決定する先読みオフセット算出部と、スクロール速度及びスクロール方向から先読み描画サイズを決定する先読み描画サイズ算出部と、スクロール方向、先読みオフセット、表示矩形位置及び先読み描画サイズから先読み描画領域を決定する先読み描画領域算出部と、先読み描画領域の地図データを読み込む地図データ読込み部と、読み込んだ地図データを裏描画メモリに描画する地図描画部と、表示矩形位置が先読み描画領域に包含されているか否かを判定する先読み包含判定部と、裏描画メモリを表描画メモリに切り替えるメモリ切り替え部と、切り替えた表描画メモリから表示矩形の地図に対応する矩形を切り出す矩形切り出し部と、切り出した矩形を表示する表示部を備えたので、スクロール速度が速い場合でも白地図の発生を低減することができる。
【００３０】
また、実施の形態２の地図スクロール装置によれば、先読みオフセット算出部は、スクロール速度及びスクロール方向に対応して予め決められた先読みオフセットの値を示す先読みオフセットテーブルを参照し、先読みオフセットの値を決定するようにしたので、的確な先読みオフセットの値が得られ、その結果、より確実に先読み描画サイズを決定することができる。
【００３１】
また、実施の形態２の地図スクロール装置によれば、先読み包含判定部は、表示矩形が先読み描画領域に完全包含されているか否かを判定するようにしたので、白地図を出現させることなく地図を表示することができる。
【００３２】
また、実施の形態２の地図スクロール装置によれば、メモリ切り替え部は、先読み包含判定部にて完全包含されると判断されたときのみ表描画メモリと裏描画メモリを切り替えるようにしたので、確実に白地図の発生を防止することができる。
【産業上の利用可能性】
【００３３】
以上のように、この発明に係る地図スクロール装置は、表示矩形より大きい判定領域をスクロールにより表示矩形が超えた場合、スクロール方向に先読みしてデータ読み込み及び描画することによって、滑らかなスクロールを実現するものであり、地図表示デバイスにおける地図スクロールを行うのに適している。
【図１】
0005535306.tif 000002
【図２】
0005535306.tif 000003
【図３】
0005535306.tif 000004
【図４】
0005535306.tif 000005
【図５】
0005535306.tif 000006
【図６】
0005535306.tif 000007
【図７】
0005535306.tif 000008
【図８】
0005535306.tif 000009
【図９】
0005535306.tif 000010
【図１０】
0005535306.tif 000011
【図１１】
0005535306.tif 000012
【図１２】
0005535306.tif 000013
【図１３】
0005535306.tif 000014
【図１４】
0005535306.tif 000015
【図１５】
0005535306.tif 000016
【図１６】
0005535306.tif 000017
【図１７】
0005535306.tif 000018
【図１８】
0005535306.tif 000019
【図１９】
0005535306.tif 000020