説明

地図表示装置、地図表示方法、及び地図表示プログラム

【課題】スクロール時に描画物が欠けて表示されてしまうことを適切に抑制することが可能な地図表示装置を提供する。
【解決手段】地図表示装置は、例えば車載用のナビゲーション装置などに好適に適用される。具体的には、地図表示装置は、表示画面における表示領域を含む領域内の描画データを記憶し、地図のスクロールがなされた場合において、記憶された描画データを利用して表示させることが可能な再利用領域及び新規に描画すべき新規描画領域を特定して、新規描画領域の部分を新規に描画する。更に、地図表示装置は、新規に描画したことにより全体が表示されない可能性がある描画物を選別して記憶し、記憶された描画物のデータに基づいて当該描画物を再描画する。これにより、スクロール時に描画物が欠けて表示されてしまうことを適切に抑制することが可能となる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、表示部の表示画面上に地図データを表示する技術に関する。
【背景技術】
【0002】
従来から、画面のスクロールやアニメーションなどにおいては、画面内の一部分のみが変化する場合には、その一部分のみを新規に描画することによって画面描画の負担を軽減することが行われている。つまり、画面内で変化している部分のみ新規に描画を行い、画面内において変化していない部分については新規に描画を行わないことによって(即ち描画し直さないことによって)、無駄な描画を抑制することが行われている。例えば、特許文献1に、本発明に関連のある技術が記載されている。
【0003】
【特許文献1】特開平9−16156号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
しかしながら、上記したような画面内の一部分のみを新規に描画する描画方法を行った場合に、新規に描画を行う必要がある領域と新規に描画を行う必要がない領域との境界に跨る描画物が、欠けて表示されてしまう場合があった。これは、新規に描画を行うことによって、このような境界に跨る描画物が上書きされたためであると考えられる。なお、上記した特許文献1に記載された技術では、このように描画物が欠けて表示されてしまうことを適切に抑制することが困難であった。
【0005】
本発明が解決しようとする課題としては、上記のものが例として挙げられる。本発明は、スクロール時に描画物が欠けて表示されてしまうことを適切に抑制することが可能な地図表示装置、地図表示方法、及び地図表示プログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
請求項1に記載の発明は、表示画面上に地図を表示させる地図表示装置は、前記表示画面における表示領域を少なくとも含む領域内の描画データを記憶する第1の記憶手段と、前記地図のスクロールがなされた場合に、前記第1の記憶手段によって記憶された前記描画データを利用して表示させることが可能な再利用領域と、前記描画データを利用することができず、新規に描画すべき新規描画領域とを特定する領域特定手段と、前記スクロール時における表示領域内の前記新規描画領域の部分を新規に描画する第1の描画手段と、前記第1の描画手段による描画によって、全体が表示されない可能性がある描画物を選別する描画物選別手段と、前記描画物選別手段によって選別された前記描画物のデータを記憶する第2の記憶手段と、前記第2の記憶手段によって記憶された前記描画物のデータに基づいて、前記スクロール時における表示領域内の前記描画物を再描画する第2の描画手段と、を備えることを特徴とする。
【0007】
請求項7に記載の発明は、表示画面上に地図を表示させる地図表示装置において実行される地図表示方法は、前記表示画面における表示領域を少なくとも含む領域内の描画データを記憶する第1の記憶工程と、前記地図のスクロールがなされた場合に、前記第1の記憶工程によって記憶された前記描画データを利用して表示させることが可能な再利用領域と、前記描画データを利用することができず、新規に描画すべき新規描画領域とを特定する領域特定工程と、前記スクロール時における表示領域内の前記新規描画領域の部分を新規に描画する第1の描画工程と、前記第1の描画工程による描画によって、全体が表示されない可能性がある描画物を選別する描画物選別工程と、前記描画物選別工程によって選別された前記描画物のデータを記憶する第2の記憶工程と、前記第2の記憶工程によって記憶された前記描画物のデータに基づいて、前記スクロール時における表示領域内の前記描画物を再描画する第2の描画工程と、を備えることを特徴とする。
【0008】
請求項8に記載の発明は、コンピュータを備える地図表示装置において実行される地図表示プログラムは、表示画面における表示領域を少なくとも含む領域内の描画データを記憶する第1の記憶手段、地図のスクロールがなされた場合に、前記第1の記憶手段によって記憶された前記描画データを利用して表示させることが可能な再利用領域と、前記描画データを利用することができず、新規に描画すべき新規描画領域とを特定する領域特定手段、前記スクロール時における表示領域内の前記新規描画領域の部分を新規に描画する第1の描画手段、前記第1の描画手段による描画によって、全体が表示されない可能性がある描画物を選別する描画物選別手段、前記描画物選別手段によって選別された前記描画物のデータを記憶する第2の記憶手段、前記第2の記憶手段によって記憶された前記描画物のデータに基づいて、前記スクロール時における表示領域内の前記描画物を再描画する第2の描画手段、として前記コンピュータを機能させることを特徴とする。
【発明を実施するための最良の形態】
【0009】
本発明の1つの観点では、表示画面上に地図を表示させる地図表示装置は、前記表示画面における表示領域を少なくとも含む領域内の描画データを記憶する第1の記憶手段と、前記地図のスクロールがなされた場合に、前記第1の記憶手段によって記憶された前記描画データを利用して表示させることが可能な再利用領域と、前記描画データを利用することができず、新規に描画すべき新規描画領域とを特定する領域特定手段と、前記スクロール時における表示領域内の前記新規描画領域の部分を新規に描画する第1の描画手段と、前記第1の描画手段による描画によって、全体が表示されない可能性がある描画物を選別する描画物選別手段と、前記描画物選別手段によって選別された前記描画物のデータを記憶する第2の記憶手段と、前記第2の記憶手段によって記憶された前記描画物のデータに基づいて、前記スクロール時における表示領域内の前記描画物を再描画する第2の描画手段と、を備える。
【0010】
上記の地図表示装置は、例えば車載用のナビゲーション装置などに好適に適用され、表示部の表示画面上に地図を表示させる。具体的には、第1の記憶手段は、表示画面における表示領域を含む領域内の描画データを記憶し、領域特定手段は、地図のスクロールがなされた場合に、第1の記憶手段に記憶された描画データを利用して表示させることが可能な再利用領域、及び新規に描画すべき新規描画領域を特定し、第1の描画手段は、新規描画領域の部分を新規に描画する。更に、描画物選別手段は、第1の描画手段による描画によって全体が表示されない可能性がある描画物を選別し、第2の記憶手段は、選別された描画物のデータを記憶し、第2の描画手段は、第2の記憶手段に記憶された描画物のデータに基づいて当該描画物を再描画する。これにより、スクロール時に描画物が欠けて表示されてしまうことを適切に抑制することが可能となる。また、記憶された描画物のみ再描画するため、最小限の再描画により、描画物が欠けて表示されてしまうことを抑制することができる。
【0011】
上記の地図表示装置の一態様では、前記描画物選別手段は、前記再利用領域と前記新規描画領域との境界に跨る描画物を、前記全体が表示されない可能性がある描画物として選別する。これにより、再描画すべき描画物を適切に選別することができる。
【0012】
上記の地図表示装置の他の一態様では、前記領域特定手段は、前記第1の記憶手段によって前記描画データが記憶された領域のうち、前記地図のスクロールがなされた場合において前記再利用領域として特定されなかった領域を少なくとも含む開放領域を更に特定し、前記第2の記憶手段に記憶された描画物のデータにおいて、前記開放領域内に存在する描画物のデータを消去する描画物データ消去手段を備える。これにより、第2の記憶手段が用いるメモリの容量を削減することが可能となる。
【0013】
上記の地図表示装置の他の一態様では、前記第1の記憶手段は、メッシュに分割された描画領域の単位にて前記描画データを記憶し、前記再利用領域及び前記新規描画領域は、前記メッシュに分割された描画領域の単位にて規定される。これにより、効率的に、再利用領域や新規描画領域などを管理することが可能となる。
【0014】
上記の地図表示装置において好適には、前記描画物選別手段は、前記メッシュに分割された描画領域の境界に跨る描画物を、前記全体が表示されない可能性がある描画物として選別する。これにより、スクロール方向や方法によらずに、描画物が欠けて表示されてしまうことを確実に抑制することが可能となる。
【0015】
好ましくは、前記第2の記憶手段は、前記第1の記憶手段によって前記描画データが記憶される領域と同等以上の広さを有する領域内の前記描画物のデータを記憶する。つまり、第2の記憶手段は、少なくとも、第1の記憶手段によって描画データが記憶される領域内に存在する描画物のデータの記憶を行う。
【0016】
本発明の他の観点では、表示画面上に地図を表示させる地図表示装置において実行される地図表示方法は、前記表示画面における表示領域を少なくとも含む領域内の描画データを記憶する第1の記憶工程と、前記地図のスクロールがなされた場合に、前記第1の記憶工程によって記憶された前記描画データを利用して表示させることが可能な再利用領域と、前記描画データを利用することができず、新規に描画すべき新規描画領域とを特定する領域特定工程と、前記スクロール時における表示領域内の前記新規描画領域の部分を新規に描画する第1の描画工程と、前記第1の描画工程による描画によって、全体が表示されない可能性がある描画物を選別する描画物選別工程と、前記描画物選別工程によって選別された前記描画物のデータを記憶する第2の記憶工程と、前記第2の記憶工程によって記憶された前記描画物のデータに基づいて、前記スクロール時における表示領域内の前記描画物を再描画する第2の描画工程と、を備える。
【0017】
また、本発明の他の観点では、コンピュータを備える地図表示装置において実行される地図表示プログラムは、表示画面における表示領域を少なくとも含む領域内の描画データを記憶する第1の記憶手段、地図のスクロールがなされた場合に、前記第1の記憶手段によって記憶された前記描画データを利用して表示させることが可能な再利用領域と、前記描画データを利用することができず、新規に描画すべき新規描画領域とを特定する領域特定手段、前記スクロール時における表示領域内の前記新規描画領域の部分を新規に描画する第1の描画手段、前記第1の描画手段による描画によって、全体が表示されない可能性がある描画物を選別する描画物選別手段、前記描画物選別手段によって選別された前記描画物のデータを記憶する第2の記憶手段、前記第2の記憶手段によって記憶された前記描画物のデータに基づいて、前記スクロール時における表示領域内の前記描画物を再描画する第2の描画手段、として前記コンピュータを機能させる。
【0018】
上記した地図表示方法及び地図表示プログラムによっても、スクロール時に描画物が欠けて表示されてしまうことを適切に抑制することが可能となる。なお、地図表示プログラムは、記録媒体に記録した状態で好適に取り扱うことができる。
【実施例】
【0019】
以下、図面を参照して本発明の好適な実施例について説明する。なお、以下の説明は、本発明を車両用のナビゲーション装置に適用した例を示す。
【0020】
[ナビゲーション装置]
図1に、ナビゲーション装置1の構成を示す。図1に示すように、ナビゲーション装置1は、自立測位装置10、GPS受信機18、システムコントローラ20、ディスクドライブ31、データ記憶ユニット36、インタフェース37、通信装置38、表示ユニット40、音声出力ユニット50及び入力装置60を備える。
【0021】
自立測位装置10は、加速度センサ11、角速度センサ12及び距離センサ13を備える。加速度センサ11は、例えば圧電素子からなり、車両の加速度を検出し、加速度データを出力する。角速度センサ12は、例えば振動ジャイロからなり、車両の方向変換時における車両の角速度を検出し、角速度データ及び相対方位データを出力する。距離センサ13は、車両の車輪の回転に伴って発生されているパルス信号からなる車速パルスを計測する。
【0022】
GPS受信機18は、複数のGPS衛星から、測位用データを含む下り回線データを搬送する電波19を受信する。測位用データは、緯度及び経度情報等から車両の絶対的な位置を検出するために用いられる。
【0023】
システムコントローラ20は、インタフェース21、CPU(Central Processing Unit)22、ROM(Read Only Memory)23及びRAM(Random Access Memory)24を含んでおり、ナビゲーション装置1全体の制御を行う。
【0024】
インタフェース21は、加速度センサ11、角速度センサ12及び距離センサ13並びにGPS受信機18とのインタフェース動作を行う。そして、これらから、車速パルス、加速度データ、相対方位データ、角速度データ、GPS測位データ、絶対方位データ等をシステムコントローラ20に入力する。CPU22は、システムコントローラ20全体を制御する。ROM23は、システムコントローラ20を制御する制御プログラム等が格納された図示しない不揮発性メモリ等を有する。RAM24は、入力装置60を介して使用者により予め設定された経路データ等の各種データを読み出し可能に格納したり、CPU22に対してワーキングエリアを提供したりする。
【0025】
システムコントローラ20、CD−ROMドライブ又はDVD−ROMドライブなどのディスクドライブ31、データ記憶ユニット36、通信用のインタフェース37、表示ユニット40、音声出力ユニット50及び入力装置60は、バスライン30を介して相互に接続されている。
【0026】
ディスクドライブ31は、システムコントローラ20の制御の下、CD又はDVDといったディスク33から、音楽データ、映像データなどのコンテンツデータを読み出し、出力する。なお、ディスクドライブ31は、CD−ROMドライブ又はDVD−ROMドライブのうち、いずれか一方としてもよいし、CD及びDVDコンパチブルのドライブとしてもよい。データ記憶ユニット36は、例えば、HDDなどにより構成され、地図データなどのナビゲーション処理に用いられる各種データを記憶するユニットである。通信装置38は、例えば、FMチューナやビーコンレシーバ、携帯電話や専用の通信カードなどにより構成され、VICS(Vehicle Information Communication System)センタなどから配信される情報を取得する。
【0027】
表示ユニット40は、システムコントローラ20の制御の下、各種表示データをディスプレイなどの表示装置に表示する。具体的には、システムコントローラ20は、データ記憶ユニット36から地図データを読み出す。表示ユニット40は、システムコントローラ20によってデータ記憶ユニット36から読み出された地図データなどを表示画面上に表示する。表示ユニット40は、バスライン30を介してCPU22から送られる制御データに基づいて表示ユニット40全体の制御を行うグラフィックコントローラ41と、VRAM(Video RAM )等のメモリからなり即時表示可能な画像情報を一時的に記憶するバッファメモリ42と、グラフィックコントローラ41から出力される画像データに基づいて、液晶、CRT(Cathode Ray Tube)等のディスプレイ44を表示制御する表示制御部43と、ディスプレイ44とを備える。ディスプレイ44は、画像表示部として機能し、例えば対角5〜10インチ程度の液晶表示装置等からなり、車内のフロントパネル付近に装着される。
【0028】
音声出力ユニット50は、システムコントローラ20の制御の下、CD−ROMドライブ31又はDVD−ROM32、若しくはRAM24等からバスライン30を介して送られる音声デジタルデータのD/A(Digital to Analog)変換を行うD/Aコンバータ51と、D/Aコンバータ51から出力される音声アナログ信号を増幅する増幅器(AMP)52と、増幅された音声アナログ信号を音声に変換して車内に出力するスピーカ53とを備えて構成されている。
【0029】
入力装置60は、各種コマンドやデータを入力するための、キー、スイッチ、ボタン、リモコン、音声入力装置等から構成されている。入力装置60は、車内に搭載された当該車載用電子システムの本体のフロントパネルやディスプレイ44の周囲に配置される。また、ディスプレイ44がタッチパネル方式である場合には、ディスプレイ44の表示画面上に設けられたタッチパネルも入力装置60として機能する。
【0030】
なお、図1におけるCPU22などは、本発明における地図表示装置に相当する。具体的には、CPU22などは、第1の記憶手段、領域特定手段、第1の描画手段、描画物選別手段、第2の記憶手段、第2の描画手段、及び描画物データ消去手段に相当する。
【0031】
[描画方法]
以下で、本実施例に係る描画方法について具体的に説明する。
【0032】
本実施例では、基本的には、地図のスクロール時において、表示領域内で変化している領域のみ新規に描画を行い、表示領域内において変化していない領域については新規に描画を行わない描画方法を採用する。具体的には、以下の手順により、このような描画方法を実現する。まず、表示画面における表示領域を少なくとも含む領域内の描画データを記憶すると共に、スクロール時において、このような描画データを利用して表示させることが可能な再利用領域、及び描画データを利用することができず、新規に描画すべき新規描画領域を特定する。そして、表示領域内の再利用領域の部分は描画データを利用して表示させ、表示領域内の新規描画領域の部分を新規に描画する。
【0033】
更に、本実施例では、上記のように新規描画領域の部分を新規に描画することによって、全体が表示されない可能性がある描画物、言い替えると一部分が欠けて表示される可能性がある描画物を選別し、選別された描画物のデータを記憶する。そして、このようにして記憶された描画物のデータに基づいて、当該描画物を再描画する。これにより、スクロール時に描画物が欠けて表示されてしまうことを適切に抑制することが可能となる。
【0034】
次に、図2を用いて、表示領域内の一部分のみを新規に描画する描画方法について、具体的に説明する。
【0035】
図2(a)は、上記の描画方法を行う際に用いるフレームバッファを説明するための図である。図中のハッチング領域71aは、フレームバッファに記憶される描画領域を表現したものである。フレームバッファは、描画データを記憶するために用いられるバッファに相当する。フレームバッファは、例えばRAM24やバッファメモリ42などに設けられる。詳しくは、フレームバッファには、メッシュに分割された描画領域の単位にて、言い換えると格子状に分割されたユニット単位にて、描画データが記憶される。この例では、フレームバッファは、12個の描画領域にて規定される。また、後述する再利用領域及び新規描画領域も、このようなメッシュに分割された描画領域の単位にて規定される。なお、図2(a)に示す例では、フレームバッファには描画データが記憶されていない、つまりフレームバッファは開放されているものとする。以下では、フレームバッファにおいて描画データが記憶されていない領域を「開放領域」と呼ぶ。
【0036】
図2(b)は、スクロール前におけるフレームバッファ内の描画領域の状態を示している。フレームバッファ内の描画領域には、図2(b)に示すように、ハッチングで示した開放領域71b及び新規描画領域72bと、太線で囲んで示した表示領域74bとが存在する。この場合には、表示領域74bは全て新規に描画されることとなる。そのため、表示領域74bの全てが新規描画領域72bによって構成されることとなる。ここで、新規描画領域72bは、メッシュに分割された描画領域の単位で規定されるので、表示領域74bよりも一回り大きなサイズを有する。
【0037】
このような表示領域74b内の描画データは、フレームバッファに記憶される。上述したように、メッシュに分割された描画領域の単位にてフレームバッファへの記憶を行うため、表示領域74bを全て含む新規描画領域72b内における描画データがフレームバッファに記憶されることとなる。この場合、フレームバッファに描画データが記憶されない描画領域、つまりフレームバッファ内の描画領域において新規描画領域72b以外の領域は、開放領域71bとなる。
【0038】
図2(c)は、スクロール後におけるフレームバッファ内の描画領域の状態を示している。詳しくは、図2(c)は、図2(b)中の白抜き矢印SCで示す方向(即ち右下方向)にスクロールされた場合の図を示している。フレームバッファ内の描画領域には、図2(c)に示すように、ハッチングで示した開放領域71c及び新規描画領域72c並びに再利用領域73cと、太線で囲んで示した表示領域74cとが存在する。この場合、表示領域74cにおいてフレームバッファ内の描画データを利用して表示させることが可能な領域が、再利用領域73cとなる。具体的には、スクロール前においてフレームバッファに描画データが記憶されていた領域(上記の新規描画領域72bに相当する)において、スクロール後の表示領域74cと重複する領域が、再利用領域73cとなる。詳しくは、再利用領域73cは、メッシュに分割された描画領域の単位で規定されるため、このような重複する領域よりも大きなサイズを有する。表示領域74cにおける再利用領域73cの部分は、フレームバッファに記憶された描画データを利用して表示が行われる。
【0039】
一方、フレームバッファ内の描画データを利用することができず、新規に描画すべき領域が、新規描画領域72cとなる。具体的には、表示領域74cにおいて再利用領域73c以外で構成される部分が、新規描画領域72cによって構成されることとなる。新規描画領域72cは、メッシュに分割された描画領域の単位で規定されるため、表示領域74cにおいて再利用領域73c以外で構成される部分よりも大きなサイズを有する。ここで、表示領域74c内の描画データは、フレームバッファに記憶されることとなる。具体的には、メッシュに分割された描画領域の単位にてフレームバッファへの記憶を行うため、表示領域74cを含む再利用領域73c及び新規描画領域72c内における描画データがフレームバッファに記憶されることとなる。この場合、フレームバッファ内の描画領域において再利用領域73c及び新規描画領域72c以外の領域は、開放領域71cとなる。
【0040】
次に、図3を参照して、新規に描画することによって描画物の一部分が欠けて表示されてしまう現象について、具体的に説明する。
【0041】
図3(a)は、スクロール前におけるフレームバッファ内の描画領域の状態を示しており、図3(b)は、スクロール後におけるフレームバッファ内の描画領域の状態を示している。なお、図3(a)及び図3(b)は、それぞれ図2(b)及び図2(c)を拡大して示した図に相当し、地名の一例を重ねて表示している。また、図2と同一の符号を付したものは同一の意味を有するものとして、詳細な説明は省略する。
【0042】
前述したような図2(b)中の白抜き矢印SCで示す方向に地図がスクロールされた場合、図3(b)中の符号A1及び符号A2でそれぞれ示すような「川越市」及び「狭山市」の文字の一部分が欠けて表示される場合がある。このような現象は、再利用領域73cと新規描画領域72cとの境界に跨る描画物に発生し得るものと考えられる。詳しくは、再利用領域73cと新規描画領域72cとの境界に跨る描画物が、新規描画領域72cを新規に描画することにより上書きされることによって、当該描画物における新規描画領域72c内の部分が欠けて表示され得る。図3(b)に示す例では、符号A1及び符号A2で示す「川越市」及び「狭山市」の文字が、再利用領域73cと新規描画領域72cとの境界B1及び境界B2をそれぞれ跨いでいるため、一部分が欠けて表示され得ると言える。
【0043】
次に、本実施例に係る描画方法について説明する。本実施例では、上記のように一部分が欠ける可能性がある描画物(言い換えると全体が表示されない可能性がある描画物)を選別し、選別された描画物のデータを記憶する。具体的には、新規描画領域と再利用領域との境界に跨る描画物を、一部分が欠ける可能性がある描画物として選別して記憶する。この場合、選別された描画物は再描画用データに登録される。更に、本実施例では、新規描画領域と再利用領域との境界に跨る描画物だけでなく、メッシュに分割された描画領域の境界に跨る描画物も、一部分が欠ける可能性がある描画物として選別して記憶する。つまり、新規描画領域と再利用領域との境界を跨がないが、メッシュにおける境界を跨ぐ描画物も、欠けて表示される可能性がある描画物として選別して記憶する。この場合にも、選別された描画物は再描画用データに登録される。こうするのは、スクロール方向や方法によっては、このような描画物も欠けて表示される可能性があるからである。そして、本実施例では、再描画用データに登録された描画物のデータに基づいて、当該描画物を最終的に再描画する。つまり、新規描画領域を描画した後に再描画を行う。これにより、欠けた描画物の上に再び同じ描画物を描画することができ、スクロール時に描画物が欠けて表示されてしまうことを適切に抑制することが可能となる。また、記憶された描画物のみ再描画するため、最小限の再描画により、描画物が欠けて表示されてしまうことを抑制することができる。
【0044】
ここで、図4を参照して、本実施例に係る描画方法について具体的に説明する。
【0045】
図4(a)は、図3(b)と概ね同一の図を示している(つまり図2(c)を拡大して示した図に相当する)。なお、図3(b)と同一の符号を付したものは同一の意味を有するものとして、詳細な説明は省略する。前述したように図2(b)中の白抜き矢印SCで示す方向に地図がスクロールされた場合には、符号A1及び符号A2で示す「川越市」及び「狭山市」の文字が、再利用領域73cと新規描画領域72cとの境界B1及び境界B2をそれぞれ跨ぐこととなる。したがって、本実施例に係る描画方法によれば、これらの文字がその一部分が欠ける可能性がある描画物として選別されて、当該描画物のデータが再描画用データに記憶される。そして、再描画用データに登録された描画物のデータに基づいて、当該描画物が最終的に再描画される。これにより、欠けた「川越市」及び「狭山市」の文字の上に再び同じ文字を描画することができる。よって、「川越市」及び「狭山市」の文字が欠けて表示されてしまうことを適切に抑制することが可能となる。つまり、これらの文字の全体を適切に表示させることが可能となる。
【0046】
更に、図4(a)中の符号A3及び符号A4で示す「坂戸市」及び「越生町」の文字(破線で囲んで示した文字)は、再利用領域73cと新規描画領域72cとの境界を跨がないが、それぞれメッシュにおける境界B3及び境界B4を跨ぐ。したがって、本実施例に係る描画方法によれば、これらの文字もその一部分が欠ける可能性がある描画物として選別されて、当該描画物のデータが再描画用データに記憶される。このようにして記憶される描画物は、今回のスクロールでは欠けて表示されないが、今後のスクロール方向や方法(例えば、進んだり戻ったりすることを繰り返すような複雑なスクロール方法)によっては、欠けて表示される場合がある。したがって、上記のようにして描画物を予め選別して記憶しておくことにより、今後のスクロール方向や方法によらずに、欠けて表示されてしまうことを適切に抑制することが可能となる。具体的には、スクロール方向や方法によらずに、「坂戸市」及び「越生町」の文字が欠けて表示されてしまうことを適切に抑制することができる。なお、今後のスクロール方向や方法によって欠けて表示される可能性がある描画物を、このように選別して記憶しておかずに、判定処理などを別途行って特定することも可能であるが、本実施例のように予め選別して記憶しておくことにより、判定処理などを行う負担を軽減しつつ、欠けて表示されてしまうことを確実に抑制することが可能となる。
【0047】
図4(b)は、再描画を行うべき描画物のデータを記録した再描画用データ100の一例を示している。具体的には、前述した図4(a)に示すような地図のスクロールがあった場合に記憶される描画物のデータを示している。再描画用データ100は、例えばRAM24などに記憶される。また、再描画用データ100は、上記した描画データを記憶するためのフレームバッファとは異なる手順で記憶などが行われる。図4(b)に示す例では、再描画用データ100には、例えば破線105で示すように、市町村の名称と位置座標とが対応付けられたデータが記憶される。具体的には、前述した方法により選別された「川越市」、「狭山市」、「坂戸市」、及び「越生町」の名称に座標が対応付けられたデータが記憶されている。このような再描画用データ100内の描画物のデータに基づいて、当該描画物についての再描画が行われることとなる。
【0048】
なお、再描画用データには、フレームバッファに描画データが記憶される描画領域と同等以上の広さを有する領域内の描画物のデータが記憶される。つまり、再描画用データは、少なくとも、フレームバッファにおける描画領域(図4(a)などに示す例では、メッシュにて分割された12個の領域から構成される領域)内に存在する描画物のデータが記憶されるように構成されている。この場合、再描画用データに描画物を記憶させるために用いる領域を、フレームバッファにおける描画領域と同様のものに設定することに限定はされず、フレームバッファにおける描画領域よりも広い領域に設定しても良い。このような広い領域内の描画物のデータを再描画用データに記憶させた場合には、描画物を選別する処理や描画物のデータを記憶する処理を削減することが可能となる。
【0049】
また、スクロール時において開放領域が特定された場合に、この開放領域内に存在する描画物のデータを再描画用データから消去しても良い。例えば、図4(a)に示すようなスクロールが行われた場合には、開放領域71c内に存在する「越生町」のデータを、再描画用データ100(図4(b)参照)から消去することができる。このように再描画用データから描画物のデータを消去することにより、再描画用データに用いるメモリの容量を削減することが可能となる。
【0050】
更に、上記では、再描画用データに文字(市町村の名称)を描画物として記憶させる例(図4(b)参照)を示したが、これに限定はされない。このような文字の他にロゴマークなどの描画物も、新規描画領域と再利用領域との境界に跨るものやメッシュにおける境界に跨るものであれば、再描画用データに記憶させることができる。
【0051】
[描画処理]
次に、図5を参照して、本実施例に係る描画処理について説明する。図5は、本実施例に係る描画処理を示すフローチャートである。なお、この処理は、CPU22によって繰り返し実行される。具体的には、CPU22が予め用意されたプログラムを実行することにより行われる。
【0052】
まず、ステップS101では、CPU22は、地図のスクロールがなされたか否かを判定する。つまり、地図のスクロール操作が行われているか否かを判定する。例えば、CPU22は、ディスプレイ44の表示画面上に設けられたタッチパネル(入力装置60として機能する)に入力される信号などに基づいて判定を行う。スクロールがあった場合(ステップS101;Yes)、処理はステップS102に進み、スクロールがなかった場合(ステップS101;No)、処理は当該フローを抜ける。
【0053】
ステップS102では、CPU22は、新規描画領域を特定する処理を行う。つまり、CPU22は、フレームバッファに記憶されている描画データを利用することができず、新規に描画すべき新規描画領域を特定する処理を行う。具体的には、地図のスクロール方向や、フレームバッファに記憶されている描画データに対応する領域などから、新規に描画すべき新規描画領域を特定する処理を行う。以上の処理が終了すると、処理はステップS103に進む。
【0054】
ステップS103〜S106では、繰り返して処理を実行することによって、新規描画領域を新規に描画するための処理、及び再描画用データに登録すべき描画物を選別して登録するための処理を行う。まず、ステップS103では、CPU22は、各描画データを描画するための処理を行う。つまり、CPU22は、新規描画領域内の描画データを描画するための処理を行う。具体的には、CPU22は、新規描画領域に対応する地図データを読み出して、これに基づいて描画を行う。そして、処理はステップS104に進む。ステップS104では、CPU22は、新規描画領域内に描画すべき描画データが存在するか否かを判定する。ここでは、新規描画領域内の描画が終了したか否かを判定している。描画データが存在する場合には(ステップS104;Yes)、新規描画領域内の描画が終了していないため、処理はステップS105に進む。これに対して、描画データが存在しない場合には(ステップS104;No)、新規描画領域内の描画が終了しているため、処理はステップS107に進む。
【0055】
ステップS105では、CPU22は、メッシュにおける境界に跨る描画物が存在するか否かを判定する。ここでは、新規描画領域の部分を新規に描画することによって、一部分が欠けて表示される可能性がある描画物(言い換えると全体が表示されない可能性がある描画物)を選別している。具体的には、CPU22は、描画物の座標(基準点など)や、描画物のサイズ(描画物が文字であれば文字数やフォントなど)や、地図の縮尺などを考慮に入れて、メッシュにおける境界を跨ぐ描画物を選別する処理を行う。メッシュを跨ぐ描画物が存在する場合(ステップS105;Yes)、処理はステップS106に進む。ステップS106では、CPU22は、ステップS105の処理で選別された描画物を再描画用データに追加登録する処理を行う。そして、処理はステップS103に戻る。これに対して、メッシュを跨ぐ描画物が存在しない場合(ステップS105;No)、処理はステップS103に戻る。このようにステップS103〜S106の処理を繰り返して実行することによって、新規描画領域を全て描画すると共に、再描画用データに登録すべき描画物を全て登録する。
【0056】
一方、ステップS107以降の処理は、新規描画領域内の描画が終了している場合(ステップS104;No)に実行される。まず、ステップS107では、CPU22は、開放領域を特定する処理を行う。例えば、CPU22は、フレームバッファ内の描画領域において、再利用領域や新規描画領域として用いられていない領域を開放領域として特定する。そして、処理はステップS108に進む。ステップS108では、CPU22は、ステップS107で特定された開放領域内に存在する描画物のデータを、再描画用データから消去する処理を行う。そして、処理はステップS109に進む。
【0057】
ステップS109及びステップS110では、繰り返して処理を実行することによって、再描画用データ内の描画物のデータに基づいて当該描画物に対する再描画を行う。具体的には、ステップS109では、CPU22は、再描画すべき描画物が存在するか否かを判定する。この場合、CPU22は、再描画した描画物の数(再描画を未だ行っていない場合には「0」)が再描画用データの登録数未満か否かを判定する。再描画すべき描画物が存在する場合(ステップS109;Yes)、言い換えると再描画した描画物の数が再描画用データの登録数未満である場合、処理はステップS110に進む。ステップS110では、CPU22は、再描画用データ内の描画物のデータに基づいて、当該描画物を再描画する処理を行う。そして、処理はステップS109に戻る。
【0058】
一方、再描画すべき描画物が存在しない場合(ステップS109;No)、処理は当該フローを抜ける。この場合は、再描画した描画物の数が再描画用データの登録数未満ではない場合に相当する。即ち、再描画した描画物の数(再描画を行っていない場合には「0」)が再描画用データの登録数(再描画すべき描画物が存在しない場合には「0」)に一致する場合に相当する。例えば、再描画すべき描画物がそもそも存在しなかった場合や、再描画すべき全ての描画物の再描画が終了した場合である。よって、このような場合には、再描画を行わずに処理を終了する。
【0059】
上記の本実施例に係る描画処理によれば、スクロール時において、描画物が欠けて表示されてしまうことを適切に抑制することが可能となる。つまり、描画物の全体を適切に表示させることが可能となる。また、記憶された描画物のみ再描画するため、最小限の再描画により、描画物が欠けて表示されてしまうことを抑制することができる。
【0060】
以上説明したように、本実施例においては、ナビゲーション装置内のCPUは、表示画面における表示領域を少なくとも含む領域内の描画データを記憶する第1の記憶手段と、地図のスクロールがなされた場合に、第1の記憶手段によって記憶された描画データを利用して表示させることが可能な再利用領域と、描画データを利用することができず、新規に描画すべき新規描画領域とを特定する領域特定手段と、スクロール時における表示領域内の新規描画領域の部分を新規に描画する第1の描画手段と、第1の描画手段による描画によって、全体が表示されない可能性がある描画物を選別する描画物選別手段と、描画物選別手段によって選別された描画物のデータを記憶する第2の記憶手段と、第2の記憶手段によって記憶された描画物のデータに基づいて、スクロール時における表示領域内の描画物を再描画する第2の描画手段と、を備える。これにより、スクロール時において、描画物が欠けて表示されてしまうことを適切に抑制することが可能となる。
【0061】
[他の実施例]
上記した描画処理は、CPU22が予め用意されたプログラム(地図表示プログラム)を実行することによって行うことを想定しているが、この代わりに、回路などにおけるハードウェア処理によって行うこととしても良い。また、地図表示プログラムは、予めROM23に格納されていることとしても良いし、地図表示プログラムが記憶されたCDやDVDなどの記録媒体によって外部から供給され、ディスクドライブ31が読み取ったプログラムをROM23に格納するものとしても良い。
【0062】
また、上述の実施例では、地図表示装置をナビゲーション装置に適用する場合について述べたが、本発明は、これに限られず、携帯電話やPDA等に適用することができる。
【図面の簡単な説明】
【0063】
【図1】実施例に係るナビゲーション装置の概略構成を示すブロック図である。
【図2】表示領域内の一部分のみを新規に描画する描画方法を説明するための図である。
【図3】新規に描画することによって描画物の一部分が欠けて表示されてしまう現象を説明するための図である。
【図4】本実施例に係る描画方法を説明するための図である。
【図5】本実施例に係る描画処理を示すフローチャートである。
【符号の説明】
【0064】
1 ナビゲーション装置
10 自立測位装置
18 GPS受信機
20 システムコントローラ
22 CPU
24 RAM
36 データ記憶ユニット
38 通信装置
40 表示ユニット
44 ディスプレイ

【特許請求の範囲】
【請求項1】
表示画面上に地図を表示させる地図表示装置であって、
前記表示画面における表示領域を少なくとも含む領域内の描画データを記憶する第1の記憶手段と、
前記地図のスクロールがなされた場合に、前記第1の記憶手段によって記憶された前記描画データを利用して表示させることが可能な再利用領域と、前記描画データを利用することができず、新規に描画すべき新規描画領域とを特定する領域特定手段と、
前記スクロール時における表示領域内の前記新規描画領域の部分を新規に描画する第1の描画手段と、
前記第1の描画手段による描画によって、全体が表示されない可能性がある描画物を選別する描画物選別手段と、
前記描画物選別手段によって選別された前記描画物のデータを記憶する第2の記憶手段と、
前記第2の記憶手段によって記憶された前記描画物のデータに基づいて、前記スクロール時における表示領域内の前記描画物を再描画する第2の描画手段と、を備えることを特徴とする地図表示装置。
【請求項2】
前記描画物選別手段は、前記再利用領域と前記新規描画領域との境界に跨る描画物を、前記全体が表示されない可能性がある描画物として選別することを特徴とする請求項1に記載の地図表示装置。
【請求項3】
前記領域特定手段は、前記第1の記憶手段によって前記描画データが記憶された領域のうち、前記地図のスクロールがなされた場合において前記再利用領域として特定されなかった領域を少なくとも含む開放領域を更に特定し、
前記第2の記憶手段に記憶された描画物のデータにおいて、前記開放領域内に存在する描画物のデータを消去する描画物データ消去手段を備えることを特徴とする請求項1又は2に記載の地図表示装置。
【請求項4】
前記第1の記憶手段は、メッシュに分割された描画領域の単位にて前記描画データを記憶し、
前記再利用領域及び前記新規描画領域は、前記メッシュに分割された描画領域の単位にて規定されることを特徴とする請求項1乃至3のいずれか一項に記載の地図表示装置。
【請求項5】
前記描画物選別手段は、前記メッシュに分割された描画領域の境界に跨る描画物を、前記全体が表示されない可能性がある描画物として選別することを特徴とする請求項4に記載の地図表示装置。
【請求項6】
前記第2の記憶手段は、前記第1の記憶手段によって前記描画データが記憶される領域と同等以上の広さを有する領域内の前記描画物のデータを記憶することを特徴とする請求項1乃至5のいずれか一項に記載の地図表示装置。
【請求項7】
表示画面上に地図を表示させる地図表示装置において実行される地図表示方法であって、
前記表示画面における表示領域を少なくとも含む領域内の描画データを記憶する第1の記憶工程と、
前記地図のスクロールがなされた場合に、前記第1の記憶工程によって記憶された前記描画データを利用して表示させることが可能な再利用領域と、前記描画データを利用することができず、新規に描画すべき新規描画領域とを特定する領域特定工程と、
前記スクロール時における表示領域内の前記新規描画領域の部分を新規に描画する第1の描画工程と、
前記第1の描画工程による描画によって、全体が表示されない可能性がある描画物を選別する描画物選別工程と、
前記描画物選別工程によって選別された前記描画物のデータを記憶する第2の記憶工程と、
前記第2の記憶工程によって記憶された前記描画物のデータに基づいて、前記スクロール時における表示領域内の前記描画物を再描画する第2の描画工程と、を備えることを特徴とする地図表示方法。
【請求項8】
コンピュータを備える地図表示装置において実行される地図表示プログラムであって、
表示画面における表示領域を少なくとも含む領域内の描画データを記憶する第1の記憶手段、
地図のスクロールがなされた場合に、前記第1の記憶手段によって記憶された前記描画データを利用して表示させることが可能な再利用領域と、前記描画データを利用することができず、新規に描画すべき新規描画領域とを特定する領域特定手段、
前記スクロール時における表示領域内の前記新規描画領域の部分を新規に描画する第1の描画手段、
前記第1の描画手段による描画によって、全体が表示されない可能性がある描画物を選別する描画物選別手段、
前記描画物選別手段によって選別された前記描画物のデータを記憶する第2の記憶手段、
前記第2の記憶手段によって記憶された前記描画物のデータに基づいて、前記スクロール時における表示領域内の前記描画物を再描画する第2の描画手段、として前記コンピュータを機能させることを特徴とする地図表示プログラム。
【請求項9】
請求項8に記載の地図表示プログラムを記録したことを特徴とする記録媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2009−86482(P2009−86482A)
【公開日】平成21年4月23日(2009.4.23)
【国際特許分類】
【出願番号】特願2007−258355(P2007−258355)
【出願日】平成19年10月2日(2007.10.2)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.VICS
【出願人】(000005016)パイオニア株式会社 (3,620)
【Fターム(参考)】