地図表示装置および地図表示方法
【課題】基準点との位置関係の把握が容易であり、かつ、操作が簡単な地図表示装置を提供する。
【解決手段】地図画像表示装置において、ユーザからスクロール操作の入力があった際に、拡大率を保ったままスクロール操作を行ってしまうと基準点が画面内(または画面内の所定領域)から外れてしまうときは、基準点が画面内に表示されるように入力されたスクロール操作と連動してズームアウト操作を実行する。また、スクロール操作と連動して地図画像を傾けるチルト操作を行って基準点が画面内に表示されるようにしても良い。また、ズームアウト操作とチルト操作の両方を行って基準点が画面内に表示されるようにすることも好ましい。この場合、現在地(画面中心)と基準点の地図上での距離が近い間はチルト角を徐々に大きくし、この距離が所定距離に達した後はチルト角を一定に保ったままズームアウト操作を行うことが好ましい。
【解決手段】地図画像表示装置において、ユーザからスクロール操作の入力があった際に、拡大率を保ったままスクロール操作を行ってしまうと基準点が画面内(または画面内の所定領域)から外れてしまうときは、基準点が画面内に表示されるように入力されたスクロール操作と連動してズームアウト操作を実行する。また、スクロール操作と連動して地図画像を傾けるチルト操作を行って基準点が画面内に表示されるようにしても良い。また、ズームアウト操作とチルト操作の両方を行って基準点が画面内に表示されるようにすることも好ましい。この場合、現在地(画面中心)と基準点の地図上での距離が近い間はチルト角を徐々に大きくし、この距離が所定距離に達した後はチルト角を一定に保ったままズームアウト操作を行うことが好ましい。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、地図表示装置および地図表示方法に関する。
【背景技術】
【0002】
近年、地図データの配信サービスが普及しており、コンピュータ上で地図ナビゲーションを利用する機会が増えている。地図はディスプレイの表示領域であるビューポートに比べて広大であるため、ビューポート外の情報を得るためには、スクロールやズームなどの操作を組み合わせて行う必要がある。
【0003】
地図のスクロールは、ドラッグ動作や、方向移動アイコンのクリック動作や、カーソルキーの押下動作によって行われることが一般的である。また、地図のズーム(ズームインおよびズームアウト)は、マウスホイール操作、画面上のスライダーバー操作によって行われることが一般的である(特許文献1)。
【0004】
スクロール(パン)およびズームは、地図を上空から俯瞰するカメラの水平方向の制御(パン=スクロール)と鉛直方向の制御(ズーム)といったカメラ操作と捉えることができる。このようなカメラ操作には、パンとズーム以外に、カメラの上下の傾きを制御するチルト操作もある。チルト操作をドキュメントのナビゲーションに適用する技術も知られている(非特許文献1)。チルトにより、パンやズームの操作なしに遠くの領域にあるコンテンツを表示させることが可能となる。
【0005】
また、スクロールにズームを連動させる手法が提案されている(非特許文献2)。この手法では、スクロール速度と画面スケールの積が一定となるように制御し、高速にスクロールすると自動的にズームアウト処理がなされる。この手法により、画面が不鮮明になることを防ぐと同時に、大局を把握しやすいビューポートを得ることができる。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2000−341681号公報
【非特許文献】
【0007】
【非特許文献1】Guiard, Y., Chapuis, O., Du, Y., and Beaudouin-Lafon, M.: Allowing camera tilts for document navigation in the standard GUI: a discussion and an experiment, Proc. AVI '06, pp.241-244, 2006.
【非特許文献2】Igarashi, T. and Hinckley, K.: Speed-dependent automatic zooming for browsing large documents, Proc. UIST '00, pp. 139-148, 2000.
【発明の概要】
【発明が解決しようとする課題】
【0008】
スクロールやズーム、チルトなどの操作を独立して行って目的とするビューポートを得る手法は、複数の操作を頻繁に切り替えながら行う必要がある。
【0009】
このような操作をそれぞれ独立して行う場合、それらの操作を繰り返すうちにスクロール動作中やズーム動作中に現在地を見失うおそれがある。特にズーム動作を行う場合に、ズーム前後の対応関係を把握が困難な場合がある。そのため、たとえば出発地を常にビューポート内に収めたまま、目的地を探索したり目的地までの道順を把握したりしようとする場合に、ユーザの意に反して出発地を画面外に出してしまうという認知的問題を生じる
可能性がある。
【0010】
また、個々の操作自体は単純であっても、それらを頻繁に切り替える必要があるので、操作が煩雑でユーザにとって負担となる。近年、特に携帯デバイスなどで指やスタイラスを用いた直接指示の環境が普及しているが、このような環境では主な操作はドラッグによるスクロール操作となり、ズーム操作はスライダーバーやズームボタンによって行うことが多いため、スクロールとズームの切替がスムーズではなく複雑な動作が要求される。
【0011】
非特許文献2では複数のカメラ操作を連動して行うため操作の簡単化が図られ、また、高速スクロール時の不鮮明化を防ぐことができる。ただし、この技術は基準点との相対的な位置関係の把握を容易とするものではない。
【0012】
本発明はこのような問題点を考慮してなされたものであり、その目的は、基準点との位置関係の把握が容易であり、かつ、操作が簡単な地図表示技術を提供することにある。
【課題を解決するための手段】
【0013】
上記目的を達成するために本発明では、以下の手段または処理によって地図の表示を行う。
【0014】
本発明に係る地図表示装置は、地図画像を表示する表示手段と、地図中の任意の点を基準点として設定する設定手段と、ユーザからスクロール操作の指示を受け付ける入力手段と、スクロール操作の指示が入力された際に、基準点が表示領域内に収まるように、入力されたスクロール操作と連動して地図の拡大率を変更するズーム操作または地図の傾きを変更するチルト操作またはこれら両方の操作を行う制御手段と、を備える。
【0015】
基準点の設定は任意の手法によって実現可能である。たとえば、表示されている地図画像の一部をユーザが選択することで、その地点を基準点として設定可能である。また、緯度経度情報、住所、地名など基準点を特定するための情報を受け付けることで基準点を設定可能である。設定される基準点は一つに限られず、複数個の基準点が設定されても良い。
【0016】
スクロール操作の指示も任意の手法を採用可能である。たとえば、マウスやタッチスクリーンなどの入力装置によるドラッグ処理、スクロール指示アイコンのクリック(選択)処理、キーボードやボタンなどの押下処理などを、スクロール操作を指示する動作とすることができる。
【0017】
制御手段は、上述のように基準点が表示領域内に収まるように、入力されたスクロール操作と連動してズーム操作やチルト操作を行う。ユーザから入力されたスクロール処理によって基準点が表示領域外に出てしまう場合には、ユーザからの入力がなくても制御手段がズーム操作やチルト操作を行う。なお、基準点が表示領域内に収まっていればよいので、基準点が表示領域内の部分領域からはずれるようなスクロール操作の入力があった場合に、ズームやチルト操作を連動して行う構成としても良い。
【0018】
ここで、ズーム操作は表示手段に表示される地図画像の拡大率(縮尺)を変更する操作のことである。ビューポートに描画される画像を、地図を仮想的なカメラで撮影した際に得られる映像と考えた場合に、そのカメラの拡大率を変える操作、または、拡大率を保ったまま鉛直方向の位置を移動させる操作と捉えることができる。ズーム操作には、ズームアウト(縮小)とズームイン(拡大)が含まれる。
【0019】
また、チルト操作は表示手段に表示される地図画像の傾きを変更する操作である。地図
描画を仮想的なカメラによる映像と考える場合、そのカメラの傾きを変化させる処理と捉えることができる。チルト角を大きくすると、ズームやスクロールをしなくても、カメラの撮影方向にある遠くのオブジェクトまで表示される。
【0020】
本発明に係る地図表示装置では基準点が常に表示領域内に収まるようにズーム操作やチルト操作が行われるため、ユーザは、現在表示されている位置と基準点との相対的な位置関係を常に把握できる。その際にユーザが行う動作はスクロール操作の指示のみであり、基準点を表示領域内に収めるためのズーム操作やチルト操作は連動して自動的に行われる。したがって、簡単で分かりやすい操作が実現される。
【0021】
ズーム操作によって基準点が表示領域内に収まるようにするには、以下のような手法を採用することができる。すなわち、本発明における制御手段は、表示領域中に所定の領域を設定しておき、入力されたスクロール操作のみを行った場合に、基準点がこの所定領域から外れた位置に表示されることになるときは、入力されたスクロール操作と合わせてズームアウト操作を行って、基準点が所定領域内に表示されるようにすることが好ましい。
【0022】
これにより、ユーザはスクロール操作の入力を行うだけで、基準点が表示領域内の所定領域内に常に表示されるように、ズーム処理が自動的に行われることになる。なお、所定領域の形状は任意であって良いが、たとえば中心が表示領域の中心と一致した円とすることができる。
【0023】
また、チルト操作によって基準点が表示領域内に収まるようにするには、以下のような手法を採用することができる。すなわち、本発明における制御手段は、入力されたスクロール操作を行った後の基準点と表示領域の中心点との地図上での距離に応じたチルト角を付けるチルト操作を、入力されたスクロール操作と合わせて行うことが好ましい。チルト角は、基準点と表示領域中心点との地図上での距離に応じて徐々に大きくすることが好ましい。
【0024】
これにより、ユーザはスクロール操作の入力を行うだけで、基準点が常に表示領域内に表示されるようにチルト操作が連動して行われる。
【0025】
ここで、上記のチルト操作によって基準点を表示領域内に収める場合に、必要なチルト角が所定の傾斜角よりも大きくなる場合には、チルト角はこの所定の傾斜角に保ったままでズームアウト操作によって基準点が表示領域内に収まるようにすることが好ましい。
【0026】
チルト角が大きくなると地図画像の変形も大きくなるため、ユーザが地図画像を認識しにくくなるという問題がある。そこで、チルト角が所定の傾斜角よりも大きくなる場合は、それ以上のチルト操作は行わずにズームアウト操作で対応することで、ユーザは位置関係を容易に把握可能である。
【0027】
なお、本発明は、上記手段の少なくとも一部を有する地図表示装置として捉えることができる。また、本発明は、上記処理の少なくとも一部を含む地図表示方法、またはその方法を実行するプログラムとして捉えることもできる。上記手段および処理の各々は可能な限り互いに組み合わせて本発明を構成することができる。
【発明の効果】
【0028】
本発明によれば、基準点との位置関係の把握が容易であり、かつ、操作が簡単な地図表示が実現される。
【図面の簡単な説明】
【0029】
【図1】図1は、第1および第2実施形態に係る地図表示装置の機能ブロックを示す図である。
【図2】図2は、地図のスクロール操作を説明する図である。
【図3】図3は、地図のズーム操作を説明する図である。
【図4】図4は、第1の実施形態において基準点が常に表示される画面領域を説明する図である。
【図5】図5(a)(b)は、第1の実施形態における地図画像表示処理を模式的に説明する図である。
【図6】図6は、第1の実施形態における地図画像表示処理の流れを示すフローチャートである。
【図7】図7(a)〜(c)は、第1の実施形態における地図画像表示処理の動作例を示す図である。
【図8】図8(a)〜(d)は、地図のチルト操作を説明する図である。
【図9】図9(a)〜(c)は、第2の実施形態における地図画像表示処理を模式的に説明する図である。
【図10】図10は、第2の実施形態における地図画像表示処理の流れを示すフローチャートである。
【図11】図11(a)〜(c)は、第2の実施形態における地図画像表示処理の動作例を示す図である。
【図12】図12(a)(b)は、第2の実施形態における地図画像表示処理の変形例を模式的に説明する図である。
【図13】図13(a)(b)は、第2の実施形態における地図画像表示処理の変形例を模式的に説明する図である。
【図14】図14は、第3の実施形態に係る地図画像表示システムの構成を示す図である。
【発明を実施するための形態】
【0030】
以下に図面を参照して、この発明の好適な実施の形態を例示的に詳しく説明する。
(第1の実施形態)
〈構成〉
図1は本実施形態に係る地図表示装置の機能ブロックを示す図である。地図表示装置は、ユーザからの指示を入力する入力部1、地図データを格納する地図データ格納部2、地図データから表示すべき地図画像を作成する地図画像作成部3,作成された地図画像を表示するための表示部4から構成される。
【0031】
入力部1には、たとえば、マウス、キーボード、トラックボール、タッチパネルやタッチパッドのような入力装置を採用することができる。また、表示部4には、たとえば、液晶ディスプレイ、CRTディスプレイなどの表示装置を採用することができる。本実施形態では、液晶パネルと位置入力装置が組み合わされたタッチパネル(タッチスクリーン)を採用する。このタッチパネルへの入力には、電磁誘導方式のペンデバイスが用いられる。ユーザがペンデバイスでドラッグ操作をすることで、ドラッグ距離と同じだけ地図の表示がスクロールされる。また、地図中の任意の点をダブルクリックすることで、その点が基準点(後述)として設定される。
【0032】
地図データ格納部2に格納される地図データは、2次元の地図データであっても3次元の地図データであっても良い。地図画像作成部3は、地図データに基づいて地図画像を作成する。具体的には、地図画像作成部3は、地図上のどの領域を表示するか、どの程度の拡大率(縮尺)で表示するか、どの程度の傾き(チルト角)で表示するかなどを決定し、それにしたがって地図画像を作成する。地図画像作成部3は、コンピュータのCPUがメモリに格納されたプログラムを実行することによって実現される。なお、地図画像作成部
3は、複数のコンピュータが連携することで実現されても良いし、専用のハードウェア回路によって実現されても良い。
【0033】
〈ビューポート作成〉
地図画像(ビューポート)の作成は、地図(地図データ)を3次元空間内の仮想的なカメラで撮影する処理と考えることができる。つまり、地図のスクロール操作は地図を上空から俯瞰するカメラの水平方向の制御(パン操作)と捉えることができ、地図のズーム操作はカメラの鉛直方向の制御(ズーム操作)と捉えることができる。
【0034】
図2は、スクロール操作をカメラのメタファで説明する図である。拡大率を一定に保ったまま表示する地図の位置を変更するスクロール操作は、図2(a)に示すようにカメラの高さを保ったまま水平方向に移動させるパン操作として扱える。カメラが位置21にあるときの地図画像を図2(b)に示し、カメラが位置22にあるときの地図画像を図2(c)に示す。このように画面上で地図を左に動かすスクロール操作は、カメラを右方向に動かすパン操作と捉えることができる。なお、仮想的なカメラのパン操作は、地図のスクロール操作の比喩的な説明であるため、以下本明細書では、地図のスクロール操作とカメラのパン操作を同義として扱う。
【0035】
図3は、ズーム操作をカメラのメタファで説明する図である。表示位置を変えずに拡大率(縮尺)を変更するズーム操作は、図3(a)に示すようにカメラの水平位置を保ったまま高さ方向に移動させるズーム操作として扱える。カメラが位置31にあるときの地図画像を図3(b)に示し、カメラがより高い位置32にあるときの地図画像を図3(c)に示す。カメラの鉛直方向距離を変えることで、拡大率(縮尺)が変わり、カメラの高さが高いほど拡大率は小さくなる(縮尺が大きくなる)。このように画面上で地図の拡大率(縮尺)を変えるズーム操作は、カメラを鉛直方向に移動させるズーム操作と捉えることができる。なお、仮想的なカメラのズーム操作は、地図のズーム操作の比喩的な説明であるため、以下本明細書では、地図のズーム操作と仮想的なカメラのズーム操作を同義として扱う。
【0036】
〈地図画像作成処理〉
以下、図4〜図6を参照して、本実施形態における地図表示処理について説明する。地図画像作成部3は、ユーザからスクロール操作が指示された場合に、設定された基準点が常に画面上に表示されるようにズーム操作を自動で行う。たとえば図4に示すように、基準点Oは、ディスプレイの表示領域41の中心Pから半径Rの円領域42内に常に表示されるように地図画像が作成される。ここで、中心Pと基準点Oの距離rや、円領域42の半径Rは画面上での距離である。半径Rを表示領域41の短辺の約半分とすることで、円領域42を大きく取ることができる。
【0037】
図5は、基準点Oが円領域42内に常に表示されるような地図画像表示方法を模式的に説明する図である。図5(a)(b)はともに、カメラの水平位置とズーム処理の関係を示す図である。図5(a)は縦軸にカメラの鉛直高さを示しており、図5(b)は縦軸に拡大率を示している。ここで、カメラの水平位置は基準点Oと画面中心Pとの間の地図上の距離を指す。図5(a)(b)に示すように、OP間の距離が小さい場合、すなわち、拡大率を保ったままスクロール操作のみを行っても基準点Oが円領域42内に表示される場合は、入力されたスクロール操作のみを行いズーム操作を行わない。逆に、OP間の距離が大きくなり拡大率を保ったままスクロール操作のみを行うと基準点Oが円領域42から外れてしまう場合には、ズームアウト操作を連動して行うことで基準点Oを円領域42内に収める。なお、ズームアウト処理が行われるようになる水平距離Lは、初期の拡大率M0における画面上での長さRに相当する地図上での距離である。
【0038】
図6は、本実施形態における地図画像表示処理の流れを示すフローチャートである。図6にしたがって、本実施形態における地図画像作成処理の詳細について説明する。
【0039】
まず、基準点Oが設定される(S101)。これは、入力部1を介してユーザに基準点を設定させることで行っても良い。また、基準点としてあらかじめ定められた地点を採用しても良い。以下、基準点Oは、現在表示されている地図画像中に表示されているものとして説明する。
【0040】
次に、ユーザからスクロール操作の入力を受け付ける(S102)。スクロール操作の入力は、ペンデバイスによるドラッグ動作によって行われる。ドラッグ操作の移動方向と移動距離が入力として地図画像作成部3に入力される。
【0041】
地図画像作成部3は、入力されたスクロール操作(ドラッグ操作)にしたがって、現在の拡大率を一定に保ったままスクロール操作を行った仮定とした場合の、基準点Oと画面中心Pとの画面上での距離rを算出する(S103)。なお、この段階では画面上の地図は変更されない。そして、この距離rと円領域42の半径Rとの比較を行う(S104)。
【0042】
距離rが半径R以下である場合(S104−NO)は、入力されたスクロール操作を行っても基準点Oが円領域42の内部に表示される。したがって、地図画像作成部3は、入力されたスクロール操作のみを行って(S106)、地図画像を作成し表示する(S107)。
【0043】
一方、距離rが半径Rよりも大きい場合(S104−YES)は、入力されたスクロール操作のみを行うと基準点Oが円領域42の外部に表示されることになる。そこで、地図画像作成部3は、拡大率を現在の値のR/r(<1)倍にするズームアウト操作(S105)をスクロール操作(S106)と連動して行う。そして、地図画像を作成し表示する(S107)。なお、ズームアウト操作は画面中心Pを基点とした処理であり、ズームアウト前後で画面中心Pに表示される地点は変わらない。
【0044】
〈動作例〉
図7を参照しつつ本実施形態における地図画像表示の動作を具体的に説明する。図7(a)は、地図表示の初期状態であり、基準点Oが画面中心Pに表示されている。この時の拡大率をM0とする。この状態から、ユーザが基準点Oを左上に徐々に動かすようなスクロール操作を入力する場合を考える。まず、画面上での移動距離が小さい間は図7(b)に示すように、拡大率が一定のままスクロール操作が行われる。なお、図中の円領域71は画面中心Pを中心とする半径Rの円である。この円領域71は地図画像中には実際には表示されない。さらに地図をスクロールして画面上での移動距離が大きくなった場合には、スクロール操作に連動してズームアウト操作を行う。ここでは、拡大率をR/r倍として画面上でのOP間の距離が半径Rと等しくなるようにしているのでズームアウト操作を伴う場合は、基準点Oは円領域71の円周上に表示される。
【0045】
〈作用/効果〉
本実施形態の地図表示装置によれば、スクロール操作の入力がされた場合に、基準点が常に画面上に表示されるようにズームアウト処理が自動的に連動して行われる。したがって、ユーザは基準点との相対的な位置関係を把握しながら地図上での探索や道順の把握などを行うことができる。また、ユーザはスクロール操作のみの入力をすれば良く、従来のようにスクロール操作とズーム操作とを切り替えながら行う必要がなくなるため、操作が簡単になる。
【0046】
本実施形態に地図表示装置は、目的地までの経路検索を実施し経路案内図を表示する経路案内システムに好ましく適用できる。探索経路を把握するためには、出発地点を常に画面に表示しながら経路を辿れることが好ましい。このような場合に、出発地点を基準点として設定することで、ユーザはズーム操作を意識することなく、出発地との相対的な位置関係の情報を得ることができ、操作の簡単化と同時に認知的負荷が軽減される。
【0047】
〈変形例〉
上記の処理では、基準点Oが常に画面に表示されるようにするために、基準点Oと画面中心Pとの画面上の距離に着目してズーム処理を連動して行うか否かを決定している。しかし、基準点Oを画面上に常に表示する制御は、その他どのような具体的処理によって実現しても構わない。たとえば、基準点Oと画面中心Pとの間の地図上での距離が所定の閾値以下の場合はスクロール操作のみを行い、この距離が所定の閾値よりも大きい場合はスクロール操作に連動してズームアウト操作を行っても良い。ここで、閾値となる距離を、初期の拡大率(縮尺)における長さRに相当する地図上での長さとし、拡大率を基準点Oと画面中心Pの画面上での距離が一定となる拡大率とすれば、上記で説明した実施形態と同じ地図表示が行われる。
【0048】
上記の説明では、基準点Oが画面中心Pを中心とする円領域42内に常に表示されるような地図制御を行っているが、基準点Oが表示される領域はこれに限定されない。たとえば、円領域42の中心は必ずしも画面中心でなくても良い。この場合、基準点Oと円領域42の中心の画面上で距離が一定となるようにズームアウト操作を行う。この際、円領域の中心を基点としてズームアウトしても良く、その他の点(画面中心や基準点Oなど)を基点としてズームアウトしても良い。また、基準点Oが表示される領域は、円領域以外に矩形領域など任意の形状とすることができる。入力されたスクロール操作のみを行った場合に基準点Oが領域外に出てしまう際に、どのようなズームアウト操作をすれば基準点Oが領域内に表示されるようになるかは容易に算出可能である。
【0049】
また、上記の説明では、ズームアウト時の拡大率をR/r倍として基準点Oが円領域42の円周上に表示されるようにしているが、より大きくズームアウトしても良い。つまり、拡大率をR/rより小さくしても良い。この場合、ズームアウト発生時に基準点Oは円領域42の円周上ではなく内部に表示されることになる。
【0050】
また、本実施形態では、基準点Oが画面中心から遠ざかるようなスクロール操作を行った場合の動作を規定するだけで有り、基準点Oを画面中心に近づけるようなスクロール操作を行った場合の動作は任意に決定して良い。すなわち、拡大率を保ったままスクロール操作のみを行っても良いし(この場合、基準点Oは円領域42の円周上から中心Pに近づいた位置に表示される)、スクロール操作と連動してズームイン処理を行って基準点Oと画面中心Pとの画面上での距離が一定となるようにしても構わない(この場合、基準点Oは常に円領域42の円周上に表示される)。
【0051】
また、本実施形態では基準点が1つの場合を例に説明したが、基準点を1つに限る必要はない。基準点はユーザからの入力により設定可能であり、2つ以上設定可能としても良い。基準点が複数個設定されている場合も、全ての基準点を画面内に表示するための拡大率は、画面中心Pと各基準点との距離の関係から容易に求めることができる。
【0052】
(第2の実施形態)
本実施形態では、スクロール操作と連動して、ズームアウト操作だけでなくチルト操作も行って基準点が画面上に表示されるように制御する。本実施形態に係る地図表示装置の基本的な構成は第1の実施形態と同様であるため、重複する部分の説明は省略し、異なる部分を主に説明する。
【0053】
〈チルト操作〉
チルト操作は、画面に表示される地図画像の傾きを変更する操作である。図8は、チルト操作をカメラのメタファで説明する図である。地図画像の傾きを変更する操作は、図8(a)に示すように仮想的なカメラの上下方向の傾きを操作(チルト操作)する制御と捉えることができる。なお、本実施形態におけるチルト操作では、画面中心の点が移動しないような制御を行う。したがって、より正確には図8(b)に示すように、カメラを地面に射影した点を中心にカメラと地図(地面)を相対的に回転させる操作と表現すべきであるが、ここではこのような制御をチルト操作と呼ぶ。
【0054】
図8(c)はチルトなし(チルト角0度)の場合の地図画像を示し、図8(d)はチルト有りの場合の地図画像を示す。図8(d)では画面上方をチルトの向きとしている。図8(c)(d)に示すように、チルト操作を行うことで、スクロールやズームを行うことなく遠くの領域にあるオブジェクトを表示できる。
【0055】
〈地図画像作成処理〉
以下、図9,10を参照して、本実施形態における地図画像表示処理について説明する。図9は、本実施形態における地図画像表示処理を模式的に説明する図である。図9(a)は仮想的なカメラの水平位置と鉛直高さおよびチルト角を示す図である。図9(b)(c)は、仮想的なカメラの水平位置に対するチルト角および拡大率(縮尺)をそれぞれ示す図である。ここで、カメラの水平位置は基準点Oと画面中心Pとの間の地図上の距離を指す。図に示すように、OP間の距離が小さい場合はスクロール操作(OP間距離の増大)に伴って、チルト角を徐々に大きくする。そして、OP間距離が所定の閾値L(チルト角がθMAXとなる距離)よりも大きくなる場合は、チルト角はθMAXで固定したままズームアウト操作を行う。なお、閾値Lおよび最大チルト角θMAXは、基準点Oが表示領域(ビューポート)内に常に収まるような値としてあらかじめ定められた値である。
【0056】
図10は、本実施形態における地図画像表示処理の流れを示すフローチャートである。図10にしたがって、本実施形態における地図画像表示処理の詳細について説明する。
【0057】
まず、基準点Oが設定される(S201)。そして、ユーザからスクロール操作の入力を受け付ける(S202)。ここまでの処理は第1の実施形態と同様である。
【0058】
地図画像作成部3は、入力されたスクロール操作を行った後の基準点Oと画面中心Pとの間の地図上の距離dを算出する(S203)。なお、この段階では画面上の地図は変更されない。そして、この距離dと所定の閾値Lとの比較を行う。距離dが閾値L以下の場合(S204−YES)は、チルト角をθ=θMAX×d/Lとするチルト操作(S205)をスクロール操作(S207)と連動して行う。この際、ズーム操作は行わず拡大率M0のままとしている。そして、地図画像を作成し表示する(S208)。
【0059】
一方、距離dが閾値Lよりも大きい場合は(S203−NO)は、チルト操作だけで基準点を表示領域内に収めようとするとチルト角θを最大チルト角θMAX以上にする必要が出てくる。そこで、チルト角θはθMAXとして、拡大率をM=M0×L/dとするズームアウト操作(S206)をスクロール操作(S207)と連動して行う。そして、地図画像を作成し表示する(S208)。
【0060】
〈動作例〉
図11を参照しつつ本実施形態における地図画像表示の動作を具体的に説明する。図11(a)は地図表示の初期状態であり、基準点Oが画面中心Pに表示されている。この時の拡大率をM0、チルト角を0度である。なお、円1101は地図上で基準点Oを中心と
する半径Lの円を示している。この円1101は実際に地図画像としては表示する必要はない。
【0061】
この状態でユーザが基準点Oを左上に動かすようなスクロール操作を入力すると、地図上での移動距離が閾値Lよりも小さい間は、スクロール操作に連動して、地図を傾けるチルト操作が行われる。チルトの向きは画面中心Pから基準点Oに向かう向きと一致させている。このチルト操作により、奥行き方向(P→O方向)をより遠くまでビューポート内に収めることができる。
【0062】
そして、距離dが閾値Lよりも大きくなった場合は、チルト角θはθMAXに固定し、拡大率をM0×L/dとするズームアウト操作が、スクロール操作に連動して行われる。このズームアウト操作により、スクロール操作が行われても基準点Oが画面上に表示される。
【0063】
〈作用/効果〉
本実施形態の地図表示装置によれば、スクロール操作の入力がされた場合に、基準点が常に画面上に表示されるようにチルト処理およびズームアウト処理が自動的に連動して行われる。したがって、第1の実施形態と同様の効果を得ることができる。
【0064】
チルト操作によって基準点を画面内に収める手法によると、特に基準点と画面中心との距離が小さい場合に、両者の相対的な位置関係の把握が容易となる。一方、チルト角を大きくすると地図の歪みが大きくなり見づらくなってしまう。そこで、チルト角に最大チルト角の制限を設け、最大チルト角にしても基準点を画面内に収められない場合はズームアウトで対応する。これにより、基準点と現在位置が近い場合にも遠い場合にも、これらの相対的な位置関係を容易に把握可能となる。
【0065】
〈変形例〉
チルト操作とズームアウト操作の組み合わせは上記の方法に限られず、種々の方法を採用可能である。たとえば、図12に示すように、基準点と画面中心との距離が、チルト操作もズームアウト操作もしなくても基準点をビューポート内に表示可能な距離L1以内の場合は、入力されたスクロール操作のみを行う。その後は、チルト操作のみで基準点をビューポート内に収めることが可能な距離L2以内であれば、チルト操作のみで基準点をビューポート内に収める。そして、基準点と画面中心の距離がL2以上となりチルト角が最大チルト角に達した後は、ズームアウト操作で対応しても良い。
【0066】
また、チルト操作とズームアウト操作はそれぞれ独立して行う必要はなく、両方を連動して行っても良い。たとえば、図13に示すように、基準点と画面中心の距離が閾値Lよりも大きくなる場合は、ズームアウト操作を行うとともに、チルト角を徐々に少なくするようにしても良い。これにより、ズームアウトにしたがって鉛直方向視点の地図画像が得られるので、変形が少ない地図画像が得られる。
【0067】
また、上記のように基準点と画面中心の距離に線形にチルト角を決定する手法も例示にすぎない。たとえば、線形ではなく非線形な関係であっても構わない。また、本実施形態においても第1の実施形態と同様に、画面内の所定の領域(たとえば円領域42(図4))内に基準点を収めるように制御しても良い。この場合、スクロール操作をした後に基準点を所定領域内に表示するために必要なチルト角を採用すればよい。このチルト角は距離の関数としてあらかじめ記憶しておいても良いし、必要が生じるたびに計算して求めても良い。そして、基準点を所定領域内に表示するために必要なチルト角が最大チルト角よりも大きくなる場合には、最大チルト角のままズームアウトして基準点を所定領域内に収めるために必要なズームアウト率を算出すれば、上記と同様の制御が実現できる。
【0068】
また、スクロール方向によっては上記のチルト操作を行うと見づらい画像が得られる場合がある。たとえば、基準点を画面下方向に移動させるスクロール操作を行うときに、基準点の移動方向をチルト方向とすると、おかしなカメラアングルの地図画像が得られ認識が困難となる。したがって、下方向にスクロールする場合には、チルト動作を含めずに、ズーム操作との連動により基準点を画面内に収めるように制御しても良い。すなわち、スクロール方向に応じて、基準点を画面内に収めるための制御を切り替えることも好ましい。
【0069】
また、本実施形態ではチルト操作として画面中心に表示される地点が変わらないようなチルト操作(図8(b))を採用したが、画面中心に表示される地点が移動するようなチルト操作を採用しても構わない。すなわち、仮想的なカメラを地面に射影した点を中心にカメラと地図(地面)を相対回転させる(図8(b))のではなく、仮想的なカメラの位置を中心にカメラと地図(地面)を相対回転させる操作(図8(a))を採用しても構わない。この場合は、基準点と画面中心との距離に応じてチルト操作やズーム操作を行うのではなく、基準点と仮想的なカメラの水平位置(現在位置という)との距離に応じてチルト操作やズーム操作を行えばよい。
【0070】
また、本実施形態では基準点が1つの場合を例に説明したが、基準点を1つに限る必要はない。基準点はユーザからの入力により設定可能であり、2つ以上設定可能としても良い。たとえば、基準点が複数個設定されている場合も、全ての基準点が画面内に表示するための拡大率やチルト角の算出は、画面中心Pと各基準点との距離の関係から容易に求めることができる。
【0071】
(第3の実施形態)
上記第1および第2の実施形態では、地図画像表示装置を1台のコンピュータで構成する場合を例に挙げて説明したが、本発明はネットワークを介して接続された複数のコンピュータから構成される地図画像表示システムとしてもよい。
【0072】
たとえば、図14に示すように、インターネットなどのネットワークを介して、クライアントPC1401が地図配信サーバ1402と接続されており、クライアントPC1401が地図配信サーバ1402から地図画像または地図を表示するために必要な情報を取得する構成としても構わない。クライアントPC1401では、地図画像が表示されるとともに、ユーザからスクロール操作の入力を受け付ける。入力されたスクロール操作は、地図配信サーバ1402にそのまま、または、形式を変えて送信される。地図配信サーバ1402は、地図データベース1403から地図データを得るとともに、上記第1および第2の実施形態と同様にしてスクロール操作と連動してズームアウト操作やチルト操作を行って地図画像を作成し、クライアントPC1401へ送信する。
【0073】
なお、地図配信サーバ1402で地図画像の作成まで行わず、元の地図データとズームアウト操作やチルト操作の情報(拡大率やチルト角)をクライアントPC1401へ送信し、地図画像自体の作成はクライアントPC1401側で行っても良い。
【符号の説明】
【0074】
1 入力部
2 地図データ格納部
3 地図画像作成部
4 表示部
【技術分野】
【0001】
本発明は、地図表示装置および地図表示方法に関する。
【背景技術】
【0002】
近年、地図データの配信サービスが普及しており、コンピュータ上で地図ナビゲーションを利用する機会が増えている。地図はディスプレイの表示領域であるビューポートに比べて広大であるため、ビューポート外の情報を得るためには、スクロールやズームなどの操作を組み合わせて行う必要がある。
【0003】
地図のスクロールは、ドラッグ動作や、方向移動アイコンのクリック動作や、カーソルキーの押下動作によって行われることが一般的である。また、地図のズーム(ズームインおよびズームアウト)は、マウスホイール操作、画面上のスライダーバー操作によって行われることが一般的である(特許文献1)。
【0004】
スクロール(パン)およびズームは、地図を上空から俯瞰するカメラの水平方向の制御(パン=スクロール)と鉛直方向の制御(ズーム)といったカメラ操作と捉えることができる。このようなカメラ操作には、パンとズーム以外に、カメラの上下の傾きを制御するチルト操作もある。チルト操作をドキュメントのナビゲーションに適用する技術も知られている(非特許文献1)。チルトにより、パンやズームの操作なしに遠くの領域にあるコンテンツを表示させることが可能となる。
【0005】
また、スクロールにズームを連動させる手法が提案されている(非特許文献2)。この手法では、スクロール速度と画面スケールの積が一定となるように制御し、高速にスクロールすると自動的にズームアウト処理がなされる。この手法により、画面が不鮮明になることを防ぐと同時に、大局を把握しやすいビューポートを得ることができる。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2000−341681号公報
【非特許文献】
【0007】
【非特許文献1】Guiard, Y., Chapuis, O., Du, Y., and Beaudouin-Lafon, M.: Allowing camera tilts for document navigation in the standard GUI: a discussion and an experiment, Proc. AVI '06, pp.241-244, 2006.
【非特許文献2】Igarashi, T. and Hinckley, K.: Speed-dependent automatic zooming for browsing large documents, Proc. UIST '00, pp. 139-148, 2000.
【発明の概要】
【発明が解決しようとする課題】
【0008】
スクロールやズーム、チルトなどの操作を独立して行って目的とするビューポートを得る手法は、複数の操作を頻繁に切り替えながら行う必要がある。
【0009】
このような操作をそれぞれ独立して行う場合、それらの操作を繰り返すうちにスクロール動作中やズーム動作中に現在地を見失うおそれがある。特にズーム動作を行う場合に、ズーム前後の対応関係を把握が困難な場合がある。そのため、たとえば出発地を常にビューポート内に収めたまま、目的地を探索したり目的地までの道順を把握したりしようとする場合に、ユーザの意に反して出発地を画面外に出してしまうという認知的問題を生じる
可能性がある。
【0010】
また、個々の操作自体は単純であっても、それらを頻繁に切り替える必要があるので、操作が煩雑でユーザにとって負担となる。近年、特に携帯デバイスなどで指やスタイラスを用いた直接指示の環境が普及しているが、このような環境では主な操作はドラッグによるスクロール操作となり、ズーム操作はスライダーバーやズームボタンによって行うことが多いため、スクロールとズームの切替がスムーズではなく複雑な動作が要求される。
【0011】
非特許文献2では複数のカメラ操作を連動して行うため操作の簡単化が図られ、また、高速スクロール時の不鮮明化を防ぐことができる。ただし、この技術は基準点との相対的な位置関係の把握を容易とするものではない。
【0012】
本発明はこのような問題点を考慮してなされたものであり、その目的は、基準点との位置関係の把握が容易であり、かつ、操作が簡単な地図表示技術を提供することにある。
【課題を解決するための手段】
【0013】
上記目的を達成するために本発明では、以下の手段または処理によって地図の表示を行う。
【0014】
本発明に係る地図表示装置は、地図画像を表示する表示手段と、地図中の任意の点を基準点として設定する設定手段と、ユーザからスクロール操作の指示を受け付ける入力手段と、スクロール操作の指示が入力された際に、基準点が表示領域内に収まるように、入力されたスクロール操作と連動して地図の拡大率を変更するズーム操作または地図の傾きを変更するチルト操作またはこれら両方の操作を行う制御手段と、を備える。
【0015】
基準点の設定は任意の手法によって実現可能である。たとえば、表示されている地図画像の一部をユーザが選択することで、その地点を基準点として設定可能である。また、緯度経度情報、住所、地名など基準点を特定するための情報を受け付けることで基準点を設定可能である。設定される基準点は一つに限られず、複数個の基準点が設定されても良い。
【0016】
スクロール操作の指示も任意の手法を採用可能である。たとえば、マウスやタッチスクリーンなどの入力装置によるドラッグ処理、スクロール指示アイコンのクリック(選択)処理、キーボードやボタンなどの押下処理などを、スクロール操作を指示する動作とすることができる。
【0017】
制御手段は、上述のように基準点が表示領域内に収まるように、入力されたスクロール操作と連動してズーム操作やチルト操作を行う。ユーザから入力されたスクロール処理によって基準点が表示領域外に出てしまう場合には、ユーザからの入力がなくても制御手段がズーム操作やチルト操作を行う。なお、基準点が表示領域内に収まっていればよいので、基準点が表示領域内の部分領域からはずれるようなスクロール操作の入力があった場合に、ズームやチルト操作を連動して行う構成としても良い。
【0018】
ここで、ズーム操作は表示手段に表示される地図画像の拡大率(縮尺)を変更する操作のことである。ビューポートに描画される画像を、地図を仮想的なカメラで撮影した際に得られる映像と考えた場合に、そのカメラの拡大率を変える操作、または、拡大率を保ったまま鉛直方向の位置を移動させる操作と捉えることができる。ズーム操作には、ズームアウト(縮小)とズームイン(拡大)が含まれる。
【0019】
また、チルト操作は表示手段に表示される地図画像の傾きを変更する操作である。地図
描画を仮想的なカメラによる映像と考える場合、そのカメラの傾きを変化させる処理と捉えることができる。チルト角を大きくすると、ズームやスクロールをしなくても、カメラの撮影方向にある遠くのオブジェクトまで表示される。
【0020】
本発明に係る地図表示装置では基準点が常に表示領域内に収まるようにズーム操作やチルト操作が行われるため、ユーザは、現在表示されている位置と基準点との相対的な位置関係を常に把握できる。その際にユーザが行う動作はスクロール操作の指示のみであり、基準点を表示領域内に収めるためのズーム操作やチルト操作は連動して自動的に行われる。したがって、簡単で分かりやすい操作が実現される。
【0021】
ズーム操作によって基準点が表示領域内に収まるようにするには、以下のような手法を採用することができる。すなわち、本発明における制御手段は、表示領域中に所定の領域を設定しておき、入力されたスクロール操作のみを行った場合に、基準点がこの所定領域から外れた位置に表示されることになるときは、入力されたスクロール操作と合わせてズームアウト操作を行って、基準点が所定領域内に表示されるようにすることが好ましい。
【0022】
これにより、ユーザはスクロール操作の入力を行うだけで、基準点が表示領域内の所定領域内に常に表示されるように、ズーム処理が自動的に行われることになる。なお、所定領域の形状は任意であって良いが、たとえば中心が表示領域の中心と一致した円とすることができる。
【0023】
また、チルト操作によって基準点が表示領域内に収まるようにするには、以下のような手法を採用することができる。すなわち、本発明における制御手段は、入力されたスクロール操作を行った後の基準点と表示領域の中心点との地図上での距離に応じたチルト角を付けるチルト操作を、入力されたスクロール操作と合わせて行うことが好ましい。チルト角は、基準点と表示領域中心点との地図上での距離に応じて徐々に大きくすることが好ましい。
【0024】
これにより、ユーザはスクロール操作の入力を行うだけで、基準点が常に表示領域内に表示されるようにチルト操作が連動して行われる。
【0025】
ここで、上記のチルト操作によって基準点を表示領域内に収める場合に、必要なチルト角が所定の傾斜角よりも大きくなる場合には、チルト角はこの所定の傾斜角に保ったままでズームアウト操作によって基準点が表示領域内に収まるようにすることが好ましい。
【0026】
チルト角が大きくなると地図画像の変形も大きくなるため、ユーザが地図画像を認識しにくくなるという問題がある。そこで、チルト角が所定の傾斜角よりも大きくなる場合は、それ以上のチルト操作は行わずにズームアウト操作で対応することで、ユーザは位置関係を容易に把握可能である。
【0027】
なお、本発明は、上記手段の少なくとも一部を有する地図表示装置として捉えることができる。また、本発明は、上記処理の少なくとも一部を含む地図表示方法、またはその方法を実行するプログラムとして捉えることもできる。上記手段および処理の各々は可能な限り互いに組み合わせて本発明を構成することができる。
【発明の効果】
【0028】
本発明によれば、基準点との位置関係の把握が容易であり、かつ、操作が簡単な地図表示が実現される。
【図面の簡単な説明】
【0029】
【図1】図1は、第1および第2実施形態に係る地図表示装置の機能ブロックを示す図である。
【図2】図2は、地図のスクロール操作を説明する図である。
【図3】図3は、地図のズーム操作を説明する図である。
【図4】図4は、第1の実施形態において基準点が常に表示される画面領域を説明する図である。
【図5】図5(a)(b)は、第1の実施形態における地図画像表示処理を模式的に説明する図である。
【図6】図6は、第1の実施形態における地図画像表示処理の流れを示すフローチャートである。
【図7】図7(a)〜(c)は、第1の実施形態における地図画像表示処理の動作例を示す図である。
【図8】図8(a)〜(d)は、地図のチルト操作を説明する図である。
【図9】図9(a)〜(c)は、第2の実施形態における地図画像表示処理を模式的に説明する図である。
【図10】図10は、第2の実施形態における地図画像表示処理の流れを示すフローチャートである。
【図11】図11(a)〜(c)は、第2の実施形態における地図画像表示処理の動作例を示す図である。
【図12】図12(a)(b)は、第2の実施形態における地図画像表示処理の変形例を模式的に説明する図である。
【図13】図13(a)(b)は、第2の実施形態における地図画像表示処理の変形例を模式的に説明する図である。
【図14】図14は、第3の実施形態に係る地図画像表示システムの構成を示す図である。
【発明を実施するための形態】
【0030】
以下に図面を参照して、この発明の好適な実施の形態を例示的に詳しく説明する。
(第1の実施形態)
〈構成〉
図1は本実施形態に係る地図表示装置の機能ブロックを示す図である。地図表示装置は、ユーザからの指示を入力する入力部1、地図データを格納する地図データ格納部2、地図データから表示すべき地図画像を作成する地図画像作成部3,作成された地図画像を表示するための表示部4から構成される。
【0031】
入力部1には、たとえば、マウス、キーボード、トラックボール、タッチパネルやタッチパッドのような入力装置を採用することができる。また、表示部4には、たとえば、液晶ディスプレイ、CRTディスプレイなどの表示装置を採用することができる。本実施形態では、液晶パネルと位置入力装置が組み合わされたタッチパネル(タッチスクリーン)を採用する。このタッチパネルへの入力には、電磁誘導方式のペンデバイスが用いられる。ユーザがペンデバイスでドラッグ操作をすることで、ドラッグ距離と同じだけ地図の表示がスクロールされる。また、地図中の任意の点をダブルクリックすることで、その点が基準点(後述)として設定される。
【0032】
地図データ格納部2に格納される地図データは、2次元の地図データであっても3次元の地図データであっても良い。地図画像作成部3は、地図データに基づいて地図画像を作成する。具体的には、地図画像作成部3は、地図上のどの領域を表示するか、どの程度の拡大率(縮尺)で表示するか、どの程度の傾き(チルト角)で表示するかなどを決定し、それにしたがって地図画像を作成する。地図画像作成部3は、コンピュータのCPUがメモリに格納されたプログラムを実行することによって実現される。なお、地図画像作成部
3は、複数のコンピュータが連携することで実現されても良いし、専用のハードウェア回路によって実現されても良い。
【0033】
〈ビューポート作成〉
地図画像(ビューポート)の作成は、地図(地図データ)を3次元空間内の仮想的なカメラで撮影する処理と考えることができる。つまり、地図のスクロール操作は地図を上空から俯瞰するカメラの水平方向の制御(パン操作)と捉えることができ、地図のズーム操作はカメラの鉛直方向の制御(ズーム操作)と捉えることができる。
【0034】
図2は、スクロール操作をカメラのメタファで説明する図である。拡大率を一定に保ったまま表示する地図の位置を変更するスクロール操作は、図2(a)に示すようにカメラの高さを保ったまま水平方向に移動させるパン操作として扱える。カメラが位置21にあるときの地図画像を図2(b)に示し、カメラが位置22にあるときの地図画像を図2(c)に示す。このように画面上で地図を左に動かすスクロール操作は、カメラを右方向に動かすパン操作と捉えることができる。なお、仮想的なカメラのパン操作は、地図のスクロール操作の比喩的な説明であるため、以下本明細書では、地図のスクロール操作とカメラのパン操作を同義として扱う。
【0035】
図3は、ズーム操作をカメラのメタファで説明する図である。表示位置を変えずに拡大率(縮尺)を変更するズーム操作は、図3(a)に示すようにカメラの水平位置を保ったまま高さ方向に移動させるズーム操作として扱える。カメラが位置31にあるときの地図画像を図3(b)に示し、カメラがより高い位置32にあるときの地図画像を図3(c)に示す。カメラの鉛直方向距離を変えることで、拡大率(縮尺)が変わり、カメラの高さが高いほど拡大率は小さくなる(縮尺が大きくなる)。このように画面上で地図の拡大率(縮尺)を変えるズーム操作は、カメラを鉛直方向に移動させるズーム操作と捉えることができる。なお、仮想的なカメラのズーム操作は、地図のズーム操作の比喩的な説明であるため、以下本明細書では、地図のズーム操作と仮想的なカメラのズーム操作を同義として扱う。
【0036】
〈地図画像作成処理〉
以下、図4〜図6を参照して、本実施形態における地図表示処理について説明する。地図画像作成部3は、ユーザからスクロール操作が指示された場合に、設定された基準点が常に画面上に表示されるようにズーム操作を自動で行う。たとえば図4に示すように、基準点Oは、ディスプレイの表示領域41の中心Pから半径Rの円領域42内に常に表示されるように地図画像が作成される。ここで、中心Pと基準点Oの距離rや、円領域42の半径Rは画面上での距離である。半径Rを表示領域41の短辺の約半分とすることで、円領域42を大きく取ることができる。
【0037】
図5は、基準点Oが円領域42内に常に表示されるような地図画像表示方法を模式的に説明する図である。図5(a)(b)はともに、カメラの水平位置とズーム処理の関係を示す図である。図5(a)は縦軸にカメラの鉛直高さを示しており、図5(b)は縦軸に拡大率を示している。ここで、カメラの水平位置は基準点Oと画面中心Pとの間の地図上の距離を指す。図5(a)(b)に示すように、OP間の距離が小さい場合、すなわち、拡大率を保ったままスクロール操作のみを行っても基準点Oが円領域42内に表示される場合は、入力されたスクロール操作のみを行いズーム操作を行わない。逆に、OP間の距離が大きくなり拡大率を保ったままスクロール操作のみを行うと基準点Oが円領域42から外れてしまう場合には、ズームアウト操作を連動して行うことで基準点Oを円領域42内に収める。なお、ズームアウト処理が行われるようになる水平距離Lは、初期の拡大率M0における画面上での長さRに相当する地図上での距離である。
【0038】
図6は、本実施形態における地図画像表示処理の流れを示すフローチャートである。図6にしたがって、本実施形態における地図画像作成処理の詳細について説明する。
【0039】
まず、基準点Oが設定される(S101)。これは、入力部1を介してユーザに基準点を設定させることで行っても良い。また、基準点としてあらかじめ定められた地点を採用しても良い。以下、基準点Oは、現在表示されている地図画像中に表示されているものとして説明する。
【0040】
次に、ユーザからスクロール操作の入力を受け付ける(S102)。スクロール操作の入力は、ペンデバイスによるドラッグ動作によって行われる。ドラッグ操作の移動方向と移動距離が入力として地図画像作成部3に入力される。
【0041】
地図画像作成部3は、入力されたスクロール操作(ドラッグ操作)にしたがって、現在の拡大率を一定に保ったままスクロール操作を行った仮定とした場合の、基準点Oと画面中心Pとの画面上での距離rを算出する(S103)。なお、この段階では画面上の地図は変更されない。そして、この距離rと円領域42の半径Rとの比較を行う(S104)。
【0042】
距離rが半径R以下である場合(S104−NO)は、入力されたスクロール操作を行っても基準点Oが円領域42の内部に表示される。したがって、地図画像作成部3は、入力されたスクロール操作のみを行って(S106)、地図画像を作成し表示する(S107)。
【0043】
一方、距離rが半径Rよりも大きい場合(S104−YES)は、入力されたスクロール操作のみを行うと基準点Oが円領域42の外部に表示されることになる。そこで、地図画像作成部3は、拡大率を現在の値のR/r(<1)倍にするズームアウト操作(S105)をスクロール操作(S106)と連動して行う。そして、地図画像を作成し表示する(S107)。なお、ズームアウト操作は画面中心Pを基点とした処理であり、ズームアウト前後で画面中心Pに表示される地点は変わらない。
【0044】
〈動作例〉
図7を参照しつつ本実施形態における地図画像表示の動作を具体的に説明する。図7(a)は、地図表示の初期状態であり、基準点Oが画面中心Pに表示されている。この時の拡大率をM0とする。この状態から、ユーザが基準点Oを左上に徐々に動かすようなスクロール操作を入力する場合を考える。まず、画面上での移動距離が小さい間は図7(b)に示すように、拡大率が一定のままスクロール操作が行われる。なお、図中の円領域71は画面中心Pを中心とする半径Rの円である。この円領域71は地図画像中には実際には表示されない。さらに地図をスクロールして画面上での移動距離が大きくなった場合には、スクロール操作に連動してズームアウト操作を行う。ここでは、拡大率をR/r倍として画面上でのOP間の距離が半径Rと等しくなるようにしているのでズームアウト操作を伴う場合は、基準点Oは円領域71の円周上に表示される。
【0045】
〈作用/効果〉
本実施形態の地図表示装置によれば、スクロール操作の入力がされた場合に、基準点が常に画面上に表示されるようにズームアウト処理が自動的に連動して行われる。したがって、ユーザは基準点との相対的な位置関係を把握しながら地図上での探索や道順の把握などを行うことができる。また、ユーザはスクロール操作のみの入力をすれば良く、従来のようにスクロール操作とズーム操作とを切り替えながら行う必要がなくなるため、操作が簡単になる。
【0046】
本実施形態に地図表示装置は、目的地までの経路検索を実施し経路案内図を表示する経路案内システムに好ましく適用できる。探索経路を把握するためには、出発地点を常に画面に表示しながら経路を辿れることが好ましい。このような場合に、出発地点を基準点として設定することで、ユーザはズーム操作を意識することなく、出発地との相対的な位置関係の情報を得ることができ、操作の簡単化と同時に認知的負荷が軽減される。
【0047】
〈変形例〉
上記の処理では、基準点Oが常に画面に表示されるようにするために、基準点Oと画面中心Pとの画面上の距離に着目してズーム処理を連動して行うか否かを決定している。しかし、基準点Oを画面上に常に表示する制御は、その他どのような具体的処理によって実現しても構わない。たとえば、基準点Oと画面中心Pとの間の地図上での距離が所定の閾値以下の場合はスクロール操作のみを行い、この距離が所定の閾値よりも大きい場合はスクロール操作に連動してズームアウト操作を行っても良い。ここで、閾値となる距離を、初期の拡大率(縮尺)における長さRに相当する地図上での長さとし、拡大率を基準点Oと画面中心Pの画面上での距離が一定となる拡大率とすれば、上記で説明した実施形態と同じ地図表示が行われる。
【0048】
上記の説明では、基準点Oが画面中心Pを中心とする円領域42内に常に表示されるような地図制御を行っているが、基準点Oが表示される領域はこれに限定されない。たとえば、円領域42の中心は必ずしも画面中心でなくても良い。この場合、基準点Oと円領域42の中心の画面上で距離が一定となるようにズームアウト操作を行う。この際、円領域の中心を基点としてズームアウトしても良く、その他の点(画面中心や基準点Oなど)を基点としてズームアウトしても良い。また、基準点Oが表示される領域は、円領域以外に矩形領域など任意の形状とすることができる。入力されたスクロール操作のみを行った場合に基準点Oが領域外に出てしまう際に、どのようなズームアウト操作をすれば基準点Oが領域内に表示されるようになるかは容易に算出可能である。
【0049】
また、上記の説明では、ズームアウト時の拡大率をR/r倍として基準点Oが円領域42の円周上に表示されるようにしているが、より大きくズームアウトしても良い。つまり、拡大率をR/rより小さくしても良い。この場合、ズームアウト発生時に基準点Oは円領域42の円周上ではなく内部に表示されることになる。
【0050】
また、本実施形態では、基準点Oが画面中心から遠ざかるようなスクロール操作を行った場合の動作を規定するだけで有り、基準点Oを画面中心に近づけるようなスクロール操作を行った場合の動作は任意に決定して良い。すなわち、拡大率を保ったままスクロール操作のみを行っても良いし(この場合、基準点Oは円領域42の円周上から中心Pに近づいた位置に表示される)、スクロール操作と連動してズームイン処理を行って基準点Oと画面中心Pとの画面上での距離が一定となるようにしても構わない(この場合、基準点Oは常に円領域42の円周上に表示される)。
【0051】
また、本実施形態では基準点が1つの場合を例に説明したが、基準点を1つに限る必要はない。基準点はユーザからの入力により設定可能であり、2つ以上設定可能としても良い。基準点が複数個設定されている場合も、全ての基準点を画面内に表示するための拡大率は、画面中心Pと各基準点との距離の関係から容易に求めることができる。
【0052】
(第2の実施形態)
本実施形態では、スクロール操作と連動して、ズームアウト操作だけでなくチルト操作も行って基準点が画面上に表示されるように制御する。本実施形態に係る地図表示装置の基本的な構成は第1の実施形態と同様であるため、重複する部分の説明は省略し、異なる部分を主に説明する。
【0053】
〈チルト操作〉
チルト操作は、画面に表示される地図画像の傾きを変更する操作である。図8は、チルト操作をカメラのメタファで説明する図である。地図画像の傾きを変更する操作は、図8(a)に示すように仮想的なカメラの上下方向の傾きを操作(チルト操作)する制御と捉えることができる。なお、本実施形態におけるチルト操作では、画面中心の点が移動しないような制御を行う。したがって、より正確には図8(b)に示すように、カメラを地面に射影した点を中心にカメラと地図(地面)を相対的に回転させる操作と表現すべきであるが、ここではこのような制御をチルト操作と呼ぶ。
【0054】
図8(c)はチルトなし(チルト角0度)の場合の地図画像を示し、図8(d)はチルト有りの場合の地図画像を示す。図8(d)では画面上方をチルトの向きとしている。図8(c)(d)に示すように、チルト操作を行うことで、スクロールやズームを行うことなく遠くの領域にあるオブジェクトを表示できる。
【0055】
〈地図画像作成処理〉
以下、図9,10を参照して、本実施形態における地図画像表示処理について説明する。図9は、本実施形態における地図画像表示処理を模式的に説明する図である。図9(a)は仮想的なカメラの水平位置と鉛直高さおよびチルト角を示す図である。図9(b)(c)は、仮想的なカメラの水平位置に対するチルト角および拡大率(縮尺)をそれぞれ示す図である。ここで、カメラの水平位置は基準点Oと画面中心Pとの間の地図上の距離を指す。図に示すように、OP間の距離が小さい場合はスクロール操作(OP間距離の増大)に伴って、チルト角を徐々に大きくする。そして、OP間距離が所定の閾値L(チルト角がθMAXとなる距離)よりも大きくなる場合は、チルト角はθMAXで固定したままズームアウト操作を行う。なお、閾値Lおよび最大チルト角θMAXは、基準点Oが表示領域(ビューポート)内に常に収まるような値としてあらかじめ定められた値である。
【0056】
図10は、本実施形態における地図画像表示処理の流れを示すフローチャートである。図10にしたがって、本実施形態における地図画像表示処理の詳細について説明する。
【0057】
まず、基準点Oが設定される(S201)。そして、ユーザからスクロール操作の入力を受け付ける(S202)。ここまでの処理は第1の実施形態と同様である。
【0058】
地図画像作成部3は、入力されたスクロール操作を行った後の基準点Oと画面中心Pとの間の地図上の距離dを算出する(S203)。なお、この段階では画面上の地図は変更されない。そして、この距離dと所定の閾値Lとの比較を行う。距離dが閾値L以下の場合(S204−YES)は、チルト角をθ=θMAX×d/Lとするチルト操作(S205)をスクロール操作(S207)と連動して行う。この際、ズーム操作は行わず拡大率M0のままとしている。そして、地図画像を作成し表示する(S208)。
【0059】
一方、距離dが閾値Lよりも大きい場合は(S203−NO)は、チルト操作だけで基準点を表示領域内に収めようとするとチルト角θを最大チルト角θMAX以上にする必要が出てくる。そこで、チルト角θはθMAXとして、拡大率をM=M0×L/dとするズームアウト操作(S206)をスクロール操作(S207)と連動して行う。そして、地図画像を作成し表示する(S208)。
【0060】
〈動作例〉
図11を参照しつつ本実施形態における地図画像表示の動作を具体的に説明する。図11(a)は地図表示の初期状態であり、基準点Oが画面中心Pに表示されている。この時の拡大率をM0、チルト角を0度である。なお、円1101は地図上で基準点Oを中心と
する半径Lの円を示している。この円1101は実際に地図画像としては表示する必要はない。
【0061】
この状態でユーザが基準点Oを左上に動かすようなスクロール操作を入力すると、地図上での移動距離が閾値Lよりも小さい間は、スクロール操作に連動して、地図を傾けるチルト操作が行われる。チルトの向きは画面中心Pから基準点Oに向かう向きと一致させている。このチルト操作により、奥行き方向(P→O方向)をより遠くまでビューポート内に収めることができる。
【0062】
そして、距離dが閾値Lよりも大きくなった場合は、チルト角θはθMAXに固定し、拡大率をM0×L/dとするズームアウト操作が、スクロール操作に連動して行われる。このズームアウト操作により、スクロール操作が行われても基準点Oが画面上に表示される。
【0063】
〈作用/効果〉
本実施形態の地図表示装置によれば、スクロール操作の入力がされた場合に、基準点が常に画面上に表示されるようにチルト処理およびズームアウト処理が自動的に連動して行われる。したがって、第1の実施形態と同様の効果を得ることができる。
【0064】
チルト操作によって基準点を画面内に収める手法によると、特に基準点と画面中心との距離が小さい場合に、両者の相対的な位置関係の把握が容易となる。一方、チルト角を大きくすると地図の歪みが大きくなり見づらくなってしまう。そこで、チルト角に最大チルト角の制限を設け、最大チルト角にしても基準点を画面内に収められない場合はズームアウトで対応する。これにより、基準点と現在位置が近い場合にも遠い場合にも、これらの相対的な位置関係を容易に把握可能となる。
【0065】
〈変形例〉
チルト操作とズームアウト操作の組み合わせは上記の方法に限られず、種々の方法を採用可能である。たとえば、図12に示すように、基準点と画面中心との距離が、チルト操作もズームアウト操作もしなくても基準点をビューポート内に表示可能な距離L1以内の場合は、入力されたスクロール操作のみを行う。その後は、チルト操作のみで基準点をビューポート内に収めることが可能な距離L2以内であれば、チルト操作のみで基準点をビューポート内に収める。そして、基準点と画面中心の距離がL2以上となりチルト角が最大チルト角に達した後は、ズームアウト操作で対応しても良い。
【0066】
また、チルト操作とズームアウト操作はそれぞれ独立して行う必要はなく、両方を連動して行っても良い。たとえば、図13に示すように、基準点と画面中心の距離が閾値Lよりも大きくなる場合は、ズームアウト操作を行うとともに、チルト角を徐々に少なくするようにしても良い。これにより、ズームアウトにしたがって鉛直方向視点の地図画像が得られるので、変形が少ない地図画像が得られる。
【0067】
また、上記のように基準点と画面中心の距離に線形にチルト角を決定する手法も例示にすぎない。たとえば、線形ではなく非線形な関係であっても構わない。また、本実施形態においても第1の実施形態と同様に、画面内の所定の領域(たとえば円領域42(図4))内に基準点を収めるように制御しても良い。この場合、スクロール操作をした後に基準点を所定領域内に表示するために必要なチルト角を採用すればよい。このチルト角は距離の関数としてあらかじめ記憶しておいても良いし、必要が生じるたびに計算して求めても良い。そして、基準点を所定領域内に表示するために必要なチルト角が最大チルト角よりも大きくなる場合には、最大チルト角のままズームアウトして基準点を所定領域内に収めるために必要なズームアウト率を算出すれば、上記と同様の制御が実現できる。
【0068】
また、スクロール方向によっては上記のチルト操作を行うと見づらい画像が得られる場合がある。たとえば、基準点を画面下方向に移動させるスクロール操作を行うときに、基準点の移動方向をチルト方向とすると、おかしなカメラアングルの地図画像が得られ認識が困難となる。したがって、下方向にスクロールする場合には、チルト動作を含めずに、ズーム操作との連動により基準点を画面内に収めるように制御しても良い。すなわち、スクロール方向に応じて、基準点を画面内に収めるための制御を切り替えることも好ましい。
【0069】
また、本実施形態ではチルト操作として画面中心に表示される地点が変わらないようなチルト操作(図8(b))を採用したが、画面中心に表示される地点が移動するようなチルト操作を採用しても構わない。すなわち、仮想的なカメラを地面に射影した点を中心にカメラと地図(地面)を相対回転させる(図8(b))のではなく、仮想的なカメラの位置を中心にカメラと地図(地面)を相対回転させる操作(図8(a))を採用しても構わない。この場合は、基準点と画面中心との距離に応じてチルト操作やズーム操作を行うのではなく、基準点と仮想的なカメラの水平位置(現在位置という)との距離に応じてチルト操作やズーム操作を行えばよい。
【0070】
また、本実施形態では基準点が1つの場合を例に説明したが、基準点を1つに限る必要はない。基準点はユーザからの入力により設定可能であり、2つ以上設定可能としても良い。たとえば、基準点が複数個設定されている場合も、全ての基準点が画面内に表示するための拡大率やチルト角の算出は、画面中心Pと各基準点との距離の関係から容易に求めることができる。
【0071】
(第3の実施形態)
上記第1および第2の実施形態では、地図画像表示装置を1台のコンピュータで構成する場合を例に挙げて説明したが、本発明はネットワークを介して接続された複数のコンピュータから構成される地図画像表示システムとしてもよい。
【0072】
たとえば、図14に示すように、インターネットなどのネットワークを介して、クライアントPC1401が地図配信サーバ1402と接続されており、クライアントPC1401が地図配信サーバ1402から地図画像または地図を表示するために必要な情報を取得する構成としても構わない。クライアントPC1401では、地図画像が表示されるとともに、ユーザからスクロール操作の入力を受け付ける。入力されたスクロール操作は、地図配信サーバ1402にそのまま、または、形式を変えて送信される。地図配信サーバ1402は、地図データベース1403から地図データを得るとともに、上記第1および第2の実施形態と同様にしてスクロール操作と連動してズームアウト操作やチルト操作を行って地図画像を作成し、クライアントPC1401へ送信する。
【0073】
なお、地図配信サーバ1402で地図画像の作成まで行わず、元の地図データとズームアウト操作やチルト操作の情報(拡大率やチルト角)をクライアントPC1401へ送信し、地図画像自体の作成はクライアントPC1401側で行っても良い。
【符号の説明】
【0074】
1 入力部
2 地図データ格納部
3 地図画像作成部
4 表示部
【特許請求の範囲】
【請求項1】
地図画像を表示する表示手段と、
地図中の任意の点を基準点として設定する設定手段と、
ユーザからスクロール操作の指示を受け付ける入力手段と、
スクロール操作の指示が入力された際に、前記基準点が表示領域内に収まるように、入力されたスクロール操作と連動して、地図の拡大率を変更するズーム操作または地図の傾きを変更するチルト操作またはこれら両方の操作を行う制御手段と、
を備える地図表示装置。
【請求項2】
請求項1に記載の地図表示装置において、
前記制御手段は、入力されたスクロール操作のみを行った場合に前記基準点が表示領域中の所定領域から外れた位置に表示されることになるときは、入力されたスクロール操作と合わせてズームアウト操作を行って、前記基準点が前記所定領域内に表示されるようにする
ことを特徴とする地図表示装置。
【請求項3】
請求項1に記載の地図表示装置であって、
前記制御手段は、入力されたスクロール操作を行った後の前記基準点と表示領域の中心点との地図上での距離に応じたチルト角を付けるチルト操作を、入力されたスクロール操作と合わせて行う
ことを特徴とする地図表示装置。
【請求項4】
請求項3に記載の地図表示装置であって、
前記制御手段は、チルト角が所定の閾値に達した場合は、それ以上のチルト操作は行わずに、前記基準点と表示領域の中心点との表示領域上での距離を一定にするズームアウト操作を入力されたスクロール操作と連動して行う
ことを特徴とする地図表示装置。
【請求項5】
ユーザからスクロール操作の指示を受け付ける入力手段を備える地図表示装置における地図表示方法であって、
地図中の任意の点を基準点として設定する設定工程と、
ユーザからスクロール操作の指示を受け付ける入力工程と、
スクロール操作の指示が入力された際に、前記基準点が表示領域内に収まるように、入力されたスクロール操作と連動して、地図の拡大率を変更するズーム操作または地図の傾きを変更するチルト操作またはこれら両方の操作を行う制御工程と、
を含むことを特徴とする地図表示方法。
【請求項6】
ユーザからスクロール操作の指示を受け付ける入力手段を備えるコンピュータに、
地図中の任意の点を基準点として設定する設定工程と、
ユーザからスクロール操作の指示を受け付ける入力工程と、
スクロール操作の指示が入力された際に、前記基準点が表示領域内に収まるように、入力されたスクロール操作と連動して、地図の拡大率を変更するズーム操作または地図の傾きを変更するチルト操作またはこれら両方の操作を行う制御工程と、
を実行させることを特徴とするプログラム。
【請求項1】
地図画像を表示する表示手段と、
地図中の任意の点を基準点として設定する設定手段と、
ユーザからスクロール操作の指示を受け付ける入力手段と、
スクロール操作の指示が入力された際に、前記基準点が表示領域内に収まるように、入力されたスクロール操作と連動して、地図の拡大率を変更するズーム操作または地図の傾きを変更するチルト操作またはこれら両方の操作を行う制御手段と、
を備える地図表示装置。
【請求項2】
請求項1に記載の地図表示装置において、
前記制御手段は、入力されたスクロール操作のみを行った場合に前記基準点が表示領域中の所定領域から外れた位置に表示されることになるときは、入力されたスクロール操作と合わせてズームアウト操作を行って、前記基準点が前記所定領域内に表示されるようにする
ことを特徴とする地図表示装置。
【請求項3】
請求項1に記載の地図表示装置であって、
前記制御手段は、入力されたスクロール操作を行った後の前記基準点と表示領域の中心点との地図上での距離に応じたチルト角を付けるチルト操作を、入力されたスクロール操作と合わせて行う
ことを特徴とする地図表示装置。
【請求項4】
請求項3に記載の地図表示装置であって、
前記制御手段は、チルト角が所定の閾値に達した場合は、それ以上のチルト操作は行わずに、前記基準点と表示領域の中心点との表示領域上での距離を一定にするズームアウト操作を入力されたスクロール操作と連動して行う
ことを特徴とする地図表示装置。
【請求項5】
ユーザからスクロール操作の指示を受け付ける入力手段を備える地図表示装置における地図表示方法であって、
地図中の任意の点を基準点として設定する設定工程と、
ユーザからスクロール操作の指示を受け付ける入力工程と、
スクロール操作の指示が入力された際に、前記基準点が表示領域内に収まるように、入力されたスクロール操作と連動して、地図の拡大率を変更するズーム操作または地図の傾きを変更するチルト操作またはこれら両方の操作を行う制御工程と、
を含むことを特徴とする地図表示方法。
【請求項6】
ユーザからスクロール操作の指示を受け付ける入力手段を備えるコンピュータに、
地図中の任意の点を基準点として設定する設定工程と、
ユーザからスクロール操作の指示を受け付ける入力工程と、
スクロール操作の指示が入力された際に、前記基準点が表示領域内に収まるように、入力されたスクロール操作と連動して、地図の拡大率を変更するズーム操作または地図の傾きを変更するチルト操作またはこれら両方の操作を行う制御工程と、
を実行させることを特徴とするプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【公開番号】特開2010−204379(P2010−204379A)
【公開日】平成22年9月16日(2010.9.16)
【国際特許分類】
【出願番号】特願2009−49675(P2009−49675)
【出願日】平成21年3月3日(2009.3.3)
【出願人】(502087460)株式会社トヨタIT開発センター (232)
【出願人】(000003207)トヨタ自動車株式会社 (59,920)
【出願人】(509062077)
【出願人】(500223707)
【Fターム(参考)】
【公開日】平成22年9月16日(2010.9.16)
【国際特許分類】
【出願日】平成21年3月3日(2009.3.3)
【出願人】(502087460)株式会社トヨタIT開発センター (232)
【出願人】(000003207)トヨタ自動車株式会社 (59,920)
【出願人】(509062077)
【出願人】(500223707)
【Fターム(参考)】
[ Back to top ]