(57)【特許請求の範囲】
【請求項１】
２点間の複数の経路を表示するための経路表示情報を作成する情報処理装置であって、
経路ごとに通過順のノードを含む経路情報を取得する取得手段と、
２つの経路の分岐点で所定方向に分岐する経路を決定する経路決定手段と、
前記経路決定手段が決定した経路のノードのうち、前記経路決定手段が決定した経路と前記所定方向に分岐しない経路との重複範囲のノードをまとめてオフセットさせるオフセット手段と、
経路ごとに各ノードのオフセット量が設定された前記経路表示情報を作成する作成手段と、を有する情報処理装置。
【請求項２】
前記経路決定手段は、２つ以上の経路が重複する重複範囲から全ての組み合わせで２つの経路を取り出して、前記所定方向に分岐する経路のポイントを大きくする処理を行い、
前記オフセット手段は、前記ポイントが大きい経路のノードほど大きくオフセットさせる請求項１に記載の情報処理装置。
【請求項３】
前記オフセット手段は、前記重複範囲から全ての組み合わせで２つの経路を取り出し、前記２つの経路の個別重複範囲を決定し、
前記２つの経路のうち前記ポイントが大きい方の経路の前記個別重複範囲かつ前記重複範囲のノードのオフセット値を大きくする処理を全ての組み合わせで行い、
前記オフセット値に応じて各経路の前記個別重複範囲かつ前記重複範囲のノードをオフセットさせる請求項２に記載の情報処理装置。
【請求項４】
前記作成手段は、前記オフセット値、及び、前記オフセット値を有するノードにおける経路のなす角に応じてノードごとに前記オフセット量を算出することを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記オフセット手段は、前記個別重複範囲の直前又は前記個別重複範囲の直後の１つのノードのみで前記２つの経路のノードが重複する場合、前記１つのノードを追加重複範囲に決定し、前記個別重複範囲かつ前記重複範囲のノードに加え前記追加重複範囲のノードをオフセットさせることを特徴とする請求項３に記載の情報処理装置。
【請求項６】
前記経路決定手段は、分岐点で分岐する２つの経路から、分岐点と分岐する前のノードを結ぶ第一ベクトル、分岐点と一方の経路のノードを結ぶ第二ベクトル、及び、分岐点と他方の経路のノードを結ぶ第三ベクトルを作成し、
前記第二ベクトルと前記第一ベクトル、前記第三ベクトルと前記第一ベクトル、及び、前記第三ベクトルと前記第二ベクトルの外積を算出することで前記所定方向に分岐する経路を決定する請求項１〜５のいずれか１項に記載の情報処理装置。
【請求項７】
２点間の複数の経路を表示するための経路表示情報を情報処理装置が製造する表示情報製造方法であって、
取得手段が、経路ごとに通過順のノードを含む経路情報を取得するステップと、
経路決定手段が、２つの経路の分岐点で所定方向に分岐する経路を決定するステップと、
オフセット手段が、  前記経路決定手段が決定した経路のノードのうち、前記経路決定手段が決定した経路と前記所定方向に分岐しない経路との重複範囲のノードをまとめてオフセットさせるステップと、
作成手段が、経路ごとに各ノードのオフセット量が設定された経路表示情報を作成するステップと、を有する表示情報製造方法。
【請求項８】
２点間の複数の経路を表示するための経路表示情報を作成する情報処理装置を、
経路ごとに通過順のノードを含む経路情報を取得する取得手段と、
２つの経路の分岐点で所定方向に分岐する経路を決定する経路決定手段と、
前記経路決定手段が決定した経路のノードのうち、前記経路決定手段が決定した経路と前記所定方向に分岐しない経路との重複範囲のノードをまとめてオフセットさせるオフセット手段と、
経路ごとに各ノードのオフセット量が設定された前記経路表示情報を作成する作成手段、として機能させるためのプログラム。
【請求項９】
経路ごとに通過順のノードを含む経路情報を取得する取得手段と、
２つの経路の分岐点で所定方向に分岐する経路を決定する経路決定手段と、
前記経路決定手段が決定した経路のノードのうち、前記経路決定手段が決定した経路と前記所定方向に分岐しない経路との重複範囲のノードをまとめてオフセットさせるオフセット手段と、
経路ごとに各ノードのオフセット量が設定された経路表示情報を作成する作成手段と、を有する情報処理装置と、ネットワークを介して通信可能な情報端末のみを、
前記経路表示情報を受信する受信手段と、
前記受信手段が受信した前記経路表示情報を表示装置に表示させる表示処理手段、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、表示情報製造方法、プログラム及びユーザインタフェースに関する。
【背景技術】
【０００２】
ナビゲーション装置はＰＯＩ（Point  Of  Interest）周辺の地図を縮尺や範囲を変えてディスプレイなどに表示することができる装置として使用されている。また、ナビゲーション装置は２つのＰＯＩ間の経路を検索し地図に重ねて表示することもでき、経路案内などにも使用されている。ＰＯＩとして例えば現在地と目的地が挙げられ、ナビゲーション装置は現在地から目的地までの経路を検索して表示する。
【０００３】
２つのＰＯＩ間の経路は１つとは限らず、いくつかの経路を検索することが可能であることが多い。ナビゲーション装置は、移動距離や移動時間が短い経路を優先したり、道幅や右左折の回数などに基づく移動のしやすさ優先したりして複数の経路を検索しユーザに提示する。ユーザは複数の経路から所望の経路を選択して、ナビゲーション装置による案内を受けることができる。
【０００４】
しかしながら、ナビゲーション装置が複数の経路を地図に描画すると、経路の一部が重なってしまう場合がある。複数の経路は描画順に応じて上書きされるので、重複部分の経路は一本の経路として表示されユーザにとって視認性が良好であるとは言えなかった。
【０００５】
そこで、複数の経路の視認性を向上させる技術が考案されている（例えば、特許文献１参照。）。特許文献１には、複数の経路の一部分がそれぞれ同一の道路を重複して通っている場合に、元の形状を維持したままで各経路の全体を互いにシフトして表示するナビゲーション装置が開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００６−１１３４６０号公報（図２１）
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１に開示されたナビゲーション装置では、ノード単位で経路のシフト量を算出するため計算負荷が高いという問題がある。具体的には、経路の先頭から順に分岐点を探し分岐の手前のノードをシフトさせる。シフトにより前回の分岐点よりも手前で別の分岐が生じる場合があるため、別の分岐の手前のノードをシフトさせる。このような処理を繰り返すため、一度、分離された経路が再度重複する場合があり、この場合は同じノードに対し複数回のシフト処理が必要になってしまう。
【０００８】
本発明は、上記課題に鑑み、複数の経路の視認性を向上させることが可能な情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記課題に鑑み、本発明は、２点間の複数の経路を表示するための経路表示情報を作成する情報処理装置であって、経路ごとに通過順のノードを含む経路情報を取得する取得手段と、２つの経路の分岐点で所定方向に分岐する経路を決定する経路決定手段と、前記経路決定手段が決定した経路のノードのうち、前記経路決定手段が決定した経路と前記所定方向に分岐しない経路との重複範囲のノードをまとめてオフセットさせるオフセット手段と、経路ごとに各ノードのオフセット量が設定された前記経路表示情報を作成する作成手段と、を有する情報処理装置を提供する。
【発明の効果】
【００１０】
複数の経路の視認性を向上させることが可能な情報処理装置を提供することができる。
【図面の簡単な説明】
【００１１】
【図１】経路表示システムによる経路表示方法の概略を説明する図の一例である。
【図２】経路表示システムのシステム構成図の一例である。
【図３】サーバ及び端末のハードウェア構成図の一例である。
【図４】経路表示システムが備える各機能を図示した機能ブロック図の一例である。
【図５】ナビ画面作成部の機能構成を説明する図の一例である。
【図６】順序判定を模式的に説明するための図である。
【図７】ナビ画面作成部の全体的な動作を示すフローチャート図の一例である。
【図８】オフセット判定処理の手順を示すフローチャート図の一例である。
【図９】順序判定処理の手順を示すフローチャート図の一例である。
【図１０】重複度チェックの手順を示すフローチャート図の一例である。
【図１１】オフセット処理を説明するための３つの経路Ａ〜Ｃを示す図の一例である。
【図１２】図１０のステップ３３、３４の処理を説明する図の一例である。
【図１３】オフセット量について説明する図の一例である。
【図１４】端末の表示装置に表示されるナビ画面の一例を示す図である。
【発明を実施するための形態】
【００１２】
以下、本発明を実施するための形態について図面を参照しながら説明する。
【００１３】
＜経路表示システムの概略＞
図１は、本実施形態の経路表示システムによる経路表示方法の概略を説明する図の一例である。図１（ａ）はノード１〜３で重複した３つの経路を示す。経路表示システムは、分岐点（ノード３）で相対的に右方向に分岐する経路ほど大きくなる順序ポイントを各経路に付与する。このため、経路表示システムは全ての組み合わせで経路Ａ〜Ｃから２つの経路を取り出し、相対的に右方向に分岐する経路の順序ポイントを１つずつ大きくする。
・経路ＡとＢの比較では、経路Ａの順序ポイントが１つ大きくなる。
・経路ＡとＣの比較では、経路Ａの順序ポイントがさらに１つ大きくなる。
・経路ＢとＣの比較では、経路Ｂの順序ポイントが１つ大きくなる。
【００１４】
したがって、図１（ｂ）に示すように経路Ａの順序ポイントは"２"、経路Ｂの順序ポイントは"１"、経路Ｃの順序ポイントは"０"となる。
【００１５】
次に、図１（ｃ）に示すように、経路表示システムは、経路Ａ〜Ｃから２つずつを全ての組み合わせで取り出し、２つの経路の重複範囲を決定し、順序ポイントの高いものほど大きくオフセットする。
・経路Ａはノード１〜３で経路Ｂ，Ｃと重複しているので、順序ポイント"２"に応じて経路Ａのノード１〜３が２つ分オフセットされる。
・経路Ｂはノード１〜３で経路Ｃと重複しているので、順序ポイント"１"に応じて経路Ｂのノード１〜３が１つ分オフセットされる。
・経路Ａはノード１〜３で経路Ｂ，Ｃと重複しているが、順序ポイント"０"なのでオフセットされない。
【００１６】
このように本実施形態の経路表示システムは、分岐点に着目し分岐よりも前の重複範囲のオフセット量を総当たりで決定しておくので、各経路の他の経路との重複範囲を一度にまとめてオフセットすることができる。すなわち、重複しているかどうかをノードごとに判定し重複していればオフセットする方法のように過去にオフセットしたノードを再度オフセットすることが必要になることがない。
【００１７】
＜システム構成例＞
図２（ａ）は、本実施例にかかる経路表示システム１００のシステム構成図の一例である。経路表示システム１００は、ネットワーク３４を介して通信可能に接続されたサーバ３１及び端末３５を有している。ネットワーク３４は、例えば、ＬＡＮ、広域範囲の複数のＬＡＮが接続されたＷＡＮ、及び、インターネットなどである。ネットワーク３４は有線のみ又は無線のみで構築されていてもよいし、有線と無線とで構築されていてもよい。また、ネットワーク３４にはアクセスポイントなどの基地局３２が接続されており、端末３５は無線で基地局３２にアクセスすることでネットワーク３４に接続する。端末３５は携帯電話網や無線ＬＡＮなどの主に無線で構築される通信網を介して基地局３２と通信する。
【００１８】
サーバ３１は、端末３５に対し、ナビゲーションに関するサービス・機能を提供する。例えば、端末３５から現在位置の位置情報と目的地を取得して経路を検索し、後述する経路情報と電子地図やメニューなどの各種アイコンを含むナビ画面を端末３５に送信する。
【００１９】
ネットワーク３４には符号３５にて示す端末１〜Ｎが接続され得る。端末１〜Ｎを区別せずに説明する場合は端末３５と称する。例えば、端末１を自分であるユーザが使用し、端末２〜Ｎを相手が使用する。
【００２０】
図２（ｂ）に示す用に、端末３５は、汎用的な情報処理端末３５１である場合とナビゲーション専用端末３５２の場合がある。ナビゲーション専用端末３５２はＰＮＤ（Portable  Navigation  Device）とも呼ばれる。なお、本実施例の端末３５は、情報処理端末３５１又はナビゲーション専用端末３５２以外でもよい。
【００２１】
情報処理端末３５１としての端末３５は、例えば、スマートフォン、タブレット端末、携帯電話、ＰＤＡ（Personal  Digital  Assistant）、ノートＰＣ、及び、ウェアラブルＰＣ（例えば、腕時計型、サングラス型など）などである。情報処理端末３５１はこれらに限定されるものではなく、ナビ画面の表示や経路案内に適切な装置であればよい。これらの装置は、普段は情報処理端末として利用されるが、ナビゲーションのためのアプリケーションソフトウェアを実行すると、ナビゲーション専用端末３５２と同様、経路検索及び経路案内等を行う。
【００２２】
また、端末３５は、汎用的な情報処理端末３５１とナビゲーション専用端末３５２のどちらの場合でも、車載された状態と携帯可能な状態の切り替えが可能であってもよい。
【００２３】
端末３５の動作態様には大きく２つある。１つは、端末３５が例えば専用のアプリケーションソフトウェアやＷｅｂブラウザを起動してサーバ３１と通信し、経路案内に関する情報を受信して表示するクライアント型の動作態様である。もう１つは、原則的に地図の描画などの処理を端末内で完結し、地図データの取得など必要な場合にのみサーバ３１と通信するアプリケーション型の動作端末である。本実施例では、クライアント型を例に説明するが、アプリケーション型に対しても本実施例の経路表示を好適に適用できる。
【００２４】
なお、ユーザは２台の端末３５を用いて、経路表示システム１００を利用してもよい。例えば、ノートＰＣなどの端末３５でドライブポータルサイトにアクセスして、出発地から目的地までの経路を事前に検索しておく。ドライブポータルサイトは、運転者（ドライバ）のための情報サービスサイトである。検索された経路はドライブポータルサイトに登録しておき、任意のタイミングでスマートフォンなどの端末３５から登録されている経路情報をダウンロードする。このような使い方により、ユーザは予め経路を事前に検索しておくことができ、出発前の端末３５の操作を少なくできる。
【００２５】
＜ハードウェア構成＞
図３は、サーバ３１及び端末３５のハードウェア構成図の一例である。サーバ３１及び端末３５は情報処理装置の機能を有している。図３（ａ）に示すように、サーバ３１は、ハードウェア構成として、ＣＰＵ（Central  Processing  Unit）２１１、ＲＯＭ（Read  Only  Memory）２１５、ＲＡＭ（Random  Access  Memory）２１６、補助記憶装置２１７、入力装置２１２、表示装置２１３、及び、通信装置２１４を有する。
【００２６】
また、図３（ｂ）に示すように、端末３５は、ハードウェア構成として、ＣＰＵ２１１、ＲＯＭ２１５、ＲＡＭ２１６、補助記憶装置２１７、入力装置２１２、表示装置２１３、通信装置２１４、音声入出力装置２１８、及び、ＧＰＳ受信装置２１９を有する。
【００２７】
ＣＰＵ２１１は、各種プログラムの実行や演算処理を行う。ＲＯＭ２１５には、起動時に必要なプログラムなどが記憶されている。ＲＡＭ２１６は、ＣＰＵ２１１での処理を一時的に記憶したり、データを記憶したりする作業エリアである。補助記憶装置２１７は、各種データ及びプログラム２１０１、２１０２を格納する不揮発性のメモリである。入力装置２１２は、例えばキーボードやマウスである。表示装置２１３は、ディスプレイやプロジェクタ、ＨＵＤ（Ｈｅａｄ  Ｕｐ  Ｄｉｓｐｌａｙ）であり、例えば、ナビ画面等が表示される。通信装置２１４は、基地局３２を介してネットワーク３４に接続しサーバ３１等との通信を行う。音声入出力装置２１８は、音声の入出力を行う装置であり、例えば、ナビゲーションの音声ガイダンスが出力される。ＧＰＳ受信装置２１９は、ＧＰＳ衛星の電波を受信して現在位置を算出するＧＮＳＳ（Global  Navigation  Satellite  System）の一例である。
【００２８】
なお、端末３５の入力装置２１２は、キーボードやマウスに代え又はこれらに加えて、画面に対する接触位置（タッチ座標）を検知可能なタッチパネルにより実現されうる。また、入力装置２１２は、音声入出力装置２１８が入力させた音声を認識する音声認識装置としての機能を有していてもよい。
【００２９】
サーバ３１又は端末３５の補助記憶装置２１７に記憶されているプログラム２１０１，２１０２は、ＵＳＢメモリなどの記憶媒体に記憶された状態で配布される。あるいは、プログラムを配布する配信サーバから端末３５がダウンロードすることで配布される。端末３５のプログラム２１０２は、経路案内に専用のアプリケーションソフトウェアでもよいし、ブラウザソフトウェアでもよい。また、実行形式で配布されてもインストール用の形式で配布されてもよい。
【００３０】
なお、サーバ３１にはクラウドコンピューティングが適用されていることが好ましい。クラウドコンピューティングの物理的な構成に厳密な定義はないが、情報処理装置を構成するＣＰＵ、ＲＡＭ、ストレージなどのリソースが負荷に応じて動的に接続・切断されることで情報処理装置の構成や設置場所が柔軟に変更されてよい。また、クラウドコンピューティングでは、サーバ３１が仮想化されることが一般的である。一台の情報処理装置が仮想化によって複数のサーバ３１としての機能を提供することや、複数の情報処理装置が仮想化によって一台のサーバ３１としての機能を提供することができる。
【００３１】
したがって、図示したサーバ３１のハードウェア構成は、１つの筐体に収納されていたり一まとまりの装置として備えられていたりする必要はなく、サーバ３１が備えていることが好ましいハード的な要素を示す。なお、サーバ３１がクラウドコンピューティングとしてではなく単独の情報処理装置により提供されることも可能である。
【００３２】
＜経路表示システムの機能構成例＞
図４は、本実施例の経路表示システム１００が備える各機能を図示した機能ブロック図の一例である。
【００３３】
<<サーバの機能構成>>
サーバ３１は、サーバ送受信部４１、経路検索部４２、ナビ画面作成部４３、及び、記憶・読出処理部４９を有している。これらの各機能は図３（ａ）に示したＣＰＵ２１１がプログラム２１０１を実行してサーバ３１のハードウェアと協働することで実現される機能又は手段である。これらの機能の一部又は全てがＩＣなどのハードウェア回路により実現されてもよい。
【００３４】
また、サーバ３１は、図３（ａ）に示した補助記憶装置２１７、ＲＯＭ２１５又はＲＡＭ２１６により構築される記憶部４９０を有している。記憶部４９０には、地図ＤＢ４９１、道路ネットワークＤＢ４９２、及び、歩行者ネットワークＤＢ４９３が構築されている。これらの各ＤＢは、サーバ３１が直接有していなくてもよく、サーバ３１がアクセス可能なネットワーク３４上の任意の場所にあればよい。
【００３５】
まず、各データベースについて説明する。
【００３６】
地図ＤＢ４９１は、電子地図を描画するための地図データを記憶している。電子地図に表示される情報には、都道府県などの区画、緑地や河川、道路や鉄道、記号や注記など多くの表示対象があるため、性質の似たものに分類し各分類ごとに描画できるようになっている。それぞれに分類された表示対象又は表示対象が描画された状態をレイヤーといい、電子地図はいくつかのレイヤーを重ねることで描画される。各レイヤーの地図データは、ベクトルデータ又はラスターデータのうち表示対象に適したフォーマットで記述されている。また、地図データは経度・緯度などが既知のメッシュ状に区切られており、１つ以上のメッシュを結合してナビ画面が作成される。ベクトルデータの場合は、緯度・経度でポイント、ポリライン、ポリゴンの位置が定められている。また、ラスターデータの場合は緯度・経度に対応づけて縮尺に応じたデータが用意されている。
【００３７】
【表１】
0006574650.tif 000002
【００３８】
表１は道路ネットワークＤＢの構成を模式的に示す。道路ネットワークＤＢ４９２は、車両が通行可能な道路の構造を表すデータであって、表１（ａ）のノードテーブルと表１（ｂ）のリンクテーブルとを有している。ノードテーブルには、ノードを識別するためのノードＩＤとノードの座標（緯度・経度）が登録されている。ノードとは道路網表現上の結節点である。ノードは例えば交差点、分岐点、合流点、屈曲点などである。
【００３９】
また、リンクテーブルにはリンクを識別するためのリンクＩＤ、リンクの始点ノード、リンクの終点ノード、道路種別などが登録されている。この他、幅員、リンク長などが登録されてよい。リンクとはノードとノードを結ぶ道路をいい、リンクはノード同士を結ぶ線分となる。道路種別は、例えば一般道、高速道路、専用道路、私道などである。ノードＩＤが分かればノードに繋がっているリンクがリンクテーブルから判明するので、ノードテーブルとリンクテーブルを相互に参照することで道路を検索できる。
【００４０】
歩行者ネットワークＤＢ４９３は、ノードテーブルとリンクテーブルとを有する点で道路ネットワークＤＢ４９２と同様である。ただし、歩行者ネットワークＤＢ４９３には、歩行者が通行可能な道（歩道、横断歩道、歩道橋、地下道、通り抜け可能な通路など）のリンクと、リンクの始点と終点のノード等が登録されている。
【００４１】
（サーバ３１の機能について）
続いて、サーバ３１が有する機能について説明する。サーバ送受信部４１は、図３（ａ）のＣＰＵ２１１及び通信装置２１４等により実現され、端末３５からナビゲーションに関する種々の要求を受け付ける。この要求は、例えば、目的地までの検索要求、ナビ画面の更新要求（拡大・縮小、表示範囲の変更など）がある。これらの要求は、ナビ画面作成部４３及び経路検索部４２に振り分けられる。また、サーバ送受信部４１は経路情報やナビ画面を端末３５に送信する。
【００４２】
経路検索部４２は、図３（ａ）のＣＰＵ２１１等により実現され、検索要求に対し道路ネットワークＤＢ４９２又は歩行者ネットワークＤＢ４９３の少なくとも一方を用いて経路を検索し経路情報を作成する。経路検索には、リンク長や幅員、渋滞状況をコストに換算して、出発地から目的地までのコストの合計が最も少なくなる経路を選ぶダイクストラ法が知られている。なお、ダイクストラ法以外の検索方法が用いられてもよい。
【００４３】
【表２】
0006574650.tif 000003
【００４４】
表２は経路情報を模式的に示す。経路情報は経路ＩＤにより識別され、２点間（例えば出発地と目的地）の経路のリンクを示すリンクＩＤが順番に登録されている構造となっている。また、各リンクには案内ポイントと呼ばれる進路の指示情報（進路変更するノード、通過するノード、進路変更を案内する位置）が含まれる場合がある。なお、リンクＩＤでなくノードＩＤが登録されていてもよい。いずれの場合も各経路のノードの通過順が登録されていることになる。
【００４５】
端末３５からサーバ３１への検索要求に複数の経路を検索する旨及びそのための検索オプションが含まれる場合がある。車が走行する経路の場合、検索オプションは、例えば有料道路の使用の有無、右折回数の少ない経路を優先するか否か、又は、幅員が広い経路を優先するか否かなどである。経路検索部４２は、これら検索オプションに応じてリンクのコストを変更することでし、ユーザが望む複数の経路を検索する。経路検索部４２は、検索して得られた２点間の経路情報をナビ画面作成部４３及びサーバ送受信部４１に送出する。本実施形態では、複数の経路情報がナビ画面作成部４３及びサーバ送受信部４１に送出される。
【００４６】
ナビ画面作成部４３は、図３（ａ）のＣＰＵ２１１等により実現され、２点を包含する領域を含み、経路及び２点（例えば出発地及び目的地）が強調表示されたナビ画面を作成する。なお、ナビ画面は経路を含めＧＩＦやＪｐｅｇなどの画像データとして作成される場合と、画像データとしての電子地図とプログラムコードとして記述された経路情報とに分けて作成される場合がある。
【００４７】
後者の場合、経路の描画は端末３５が行う。サーバ３１のナビ画面作成部４３は経路を描画するためのプログラムコードを生成して端末３５に送信し、端末３５がプログラムコードを実行することでナビ画面に経路を描画できる。このようなプログラムコードとしてはJavascript（登録商標）が知られている。
【００４８】
サーバ３１又は端末３５のいずれで経路が描画されても、本実施形態のナビ画面作成部４３は複数の経路の視認性が低下しないように複数の経路を描画する。詳細は後述される。
【００４９】
ナビ画面はさらに、ユーザの現在位置を表示してもよい。また、ユーザが移動を開始すると、ナビ画面作成部４３は案内に適した縮尺のナビ画面を作成する。また、端末３５から更新要求を取得すると、ナビ画面作成部４３は要求された縮尺や表示範囲に応じてナビ画面を作成する。サーバ送受信部４１はこのようにして作成された経路情報とナビ画面を端末３５に送信する。
【００５０】
<<端末の機能構成>>
続いて端末３５の機能又は手段について説明する。端末３５は、端末送受信部５１、操作受付部５２、位置検出部５３、経路案内部５４、及び、ナビ画面表示部５５を有している。これらは、図３（ｂ）に示したＣＰＵ２１１がプログラム２１０２を実行して端末３５のハードウェアと協働することで実現される機能又は手段である。これらの機能の一部又は全てがＩＣなどのハードウェア回路により実現されてもよい。
【００５１】
端末送受信部５１は、図３（ｂ）のＣＰＵ２１１及び通信装置２１４等により実現され、サーバ３１に検索要求及び更新要求を送信したり、サーバ３１からナビ画面や経路情報を受信したりする。
【００５２】
操作受付部５２は、図３（ｂ）のＣＰＵ２１１及び入力装置２１２等により実現され、ユーザから、経路検索のための２点や検索方法の入力、拡大・縮尺の指示、及び、表示範囲変更などの指示を受け付ける。
【００５３】
位置検出部５３は、図３（ｂ）のＣＰＵ２１１及びＧＰＳ受信装置２１９等により実現され、定期的に及びユーザの操作に応じて現在位置を検出する。検出した現在位置は端末送受信部５１からサーバ３１に送信される。
【００５４】
経路案内部５４は、図３（ｂ）のＣＰＵ２１１等により実現され、サーバ３１から取得した経路情報と現在位置とに基づいて、経路案内を行う。すなわち、ユーザの現在位置が経路情報に含まれる進路変更すべき位置に到達すると、曲がり角などを指示する音声データを音声入出力装置２１８に出力させる。なお、音声データはサーバ３１から送信されてもよいし、端末３５が案内用のテキストデータに基づいて音声合成をおこなって作成してもよい。
【００５５】
ナビ画面表示部５５は、図３（ｂ）のＣＰＵ２１１等により実現され、サーバ３１から受信したナビ画面を表示装置２１３に表示する。また、位置検出部５３が検出した現在位置を経路上に補正して（ルートマッチングして）、ユーザの現在位置としてナビ画面に合成する。経路情報が検索されていない状態では、道路や道などユーザが存在するはずのリンク上に現在位置を補正するマップマッチングを行う。なお、ルートマッチング又はマップマッチングはサーバ３１が行ってもよい。
【００５６】
＜ナビ画面作成部の機能＞
図５は、ナビ画面作成部４３の機能構成を説明する図の一例である。ナビ画面作成部４３は、オフセット制御部６１、オフセット判定部６２、順序判定部６３、重複度チェック部６４、及び、経路シフト部６５を有している。
【００５７】
オフセット制御部６１は、複数の経路が生成された場合に行われる各経路のオフセット処理の全体を制御する。オフセット判定部６２は順序判定部６３、重複度チェック部６４、及び、経路シフト部６５を呼び出す。
【００５８】
順序判定部６３は、２つの経路の分岐点に着目して右に分岐する経路の順序ポイントを大きくする。重複度チェック部６４は、２つの経路のうち順序ポイントが大きい方の経路の重複範囲のノードのオフセット階数を大きくする。
【００５９】
経路シフト部６５は、ノードにおける経路のなす角φ及び重複度チェック部６４が決定したオフセット階数に応じてオフセット量を決定する。これらの機能の詳細は後述される。
【００６０】
<<順序判定>>
まず、順序判定部６３による順序判定について説明しておく。順序判定とは分岐点において２つの経路のどちらが相対的に右に分岐するかを判定することをいう。本実施形態では以下のように外積を用いて右に分岐する経路を判定する。
【００６１】
図６は順序判定を模式的に説明するための図である。図６（ａ）に示すように、経路Ａと経路Ｂが検索され、経路Ａはノード１〜４を通過し、経路Ｂはノード１，２，３，５を通過する。したがって、ノード１〜３で経路ＡとＢが重複している。ノード３で経路ＡとＢが分岐しているため、ノード３を起点とするベクトルを考える。説明の便宜上、ノード２，ノード３、ノード４、ノード５の座標は以下であるとする。
ノード２：（Ｘ２，Ｙ２）
ノード３：（Ｘ３，Ｙ３）
ノード４：（Ｘ４，Ｙ４）
ノード５：（Ｘ５，Ｙ５）
また、図６（ｂ）に示すように、ノード３→ノード２のベクトルをａベクトル、ノード３→ノード４のベクトルをｂベクトル、ノード３→ノード５のベクトルをｃベクトルとする。ａベクトル、ｂベクトル、ｃベクトルは、ノードの座標を用いて以下のように表すことができる。
ベクトルａ：（Ｘ２−Ｘ３，Ｙ２−Ｙ３）
ベクトルｂ：（Ｘ４−Ｘ３，Ｙ４−Ｙ３）
ベクトルｃ：（Ｘ５−Ｘ３，Ｙ５−Ｙ３）
ベクトルｂがベクトルｃよりも右側に分岐する場合とは、ベクトルｃがベクトルａの右側かつベクトルｂの左側にあればよい。まず、図６（ｃ）の場合を考える。図６（ｃ）では斜線部の領域６０１にベクトルｃがあればよい。図６（ｃ）ではベクトルｂとベクトルａのなす角θ１が１８０度未満である（ベクトルｂとベクトルａの外積がゼロより大きい）。図６（ｃ）でベクトルｃが領域６０１にあるためには、ベクトルｃとベクトルａのなす角θ２も１８０度未満である必要がある。また、ベクトルｃは領域６０１にあるので、ベクトルｃとベクトルｂのなす角θ３は１８０度超である。
【００６２】
したがって、以下が成立する場合にベクトルｂが領域６０１にあること（ベクトルｂがベクトルｃよりも右に分岐すること）が判定できる。
【００６３】
【数１】
0006574650.tif 000004
【００６４】
すなわち、ベクトルａとベクトルｂの外積が０より大きい場合、ベクトルｃとベクトルａの外積が０より大きく、かつ、ベクトルｃとベクトルｂの外積が０より小さい場合に、ベクトルｂがベクトルｃよりも右に分岐する。
【００６５】
次に、図６（ｄ）の場合を考える。図６（ｄ）ではベクトルａとベクトルｂのなす角θ１が１８０度以上である（ベクトルｂとベクトルａの外積がゼロより小さい）。図６（ｄ）でベクトルｃが領域６０１にあるためには、１つの状況としてベクトルｃとベクトルａのなす角θ２が１８０度未満の場合が挙げられる（ベクトルｃ１で示す）。この場合、ベクトルｃ１とベクトルａのなす角θ３は１８０度未満である。また、別の状況として、ベクトルｃとベクトルａのなす角θ３が１８０度以上の場合が挙げられる（ベクトルｃ２で示す）。この場合、ベクトルｃ２とベクトルｂのなす角θ３は１８０度超である。
【００６６】
したがって、以下が成立する場合にベクトルｂが領域６０１にあること（ベクトルｂがベクトルｃよりも右に分岐すること）が判定できる。
【００６７】
【数２】
0006574650.tif 000005
【００６８】
すなわち、ベクトルａとベクトルｂの外積が０より小さい場合、ベクトルｃとベクトルａの外積が０より大きい、又は、ベクトルｃとベクトルｂの外積が０より小さい場合に、ベクトルｂがベクトルｃよりも右に分岐する。
【００６９】
なお、外積は以下のようにして算出される。簡単のため、ベクトルＸの成分を（ｘ１，ｙ１）、ベクトルＹの成分を（ｘ２、ｙ２）とする。
Ｘ×Ｙ＝ｘ１ｙ２−ｙ１ｘ２
したがって、順序判定部６３は２つの経路の分岐点で外積を計算し、正負を判定することで右に分岐する経路を判定できる。
【００７０】
右に分岐する経路を判定するために、ベクトルａとベクトルｂのなす角、ベクトルａとベクトルｃのなす角をそれぞれ算出して比較する方法が検討される。なす角を求める方法として内積を求めｃｏｓの逆関数を求める方法がある。しかし、ｃｏｓの逆関数は計算負荷が高くなる。また、なす角を求める方法として、２つのベクトルからそれぞれ直線の方程式を求めｔａｎθ＝（ｍ＋ｎ）／（１＋ｍｎ）からなす角を求める方法がある（ｍ、ｎは直線の傾き）。しかしこの場合もｔａｎの逆関数を求める必要がある。
【００７１】
これに対し、外積を使用する本実施形態の方法では単純な積和演算で右に分岐する経路を判定できる。なお、本実施形態においても内積や直線の方程式から２つの経路のうち右に分岐する経路を求めてよい。
【００７２】
＜動作手順＞
以下、図７〜１０を用いて経路のオフセット処理の手順を説明する。図１１は、オフセット処理を説明するための３つの経路Ａ〜Ｃを示し、適宜参照して説明される。
【００７３】
まず、オフセット処理とは、各経路のノードごとにオフセット階数（オフセット量）を決定する処理である。表３にオフセット階数（オフセット量）の一例を示す。なお、表３は経路表示情報の一例である。
【００７４】
【表３】
0006574650.tif 000006
【００７５】
経路Ａを構成するノードは９、２、３、４、１０、経路Ｂを構成するノードは１〜８、経路Ｃを構成するノードは１１、３、４、５、６、１２である。オフセット処理により各経路のノードごとにオフセット階数が決定される。オフセット階数は、それぞれのノードにおいて経路をオフセットする段階を示す整数である。例えば、経路Ａのノード３，４は２段階オフセットされ、経路Ｃは全くオフセットされない（オフセット階数がゼロ）。以下では、このオフセット階数の求め方を説明する。また、オフセット量はオフセット階数に基づいたオフセットの量である。オフセット量については図１３にて説明される。
【００７６】
図７は、ナビ画面作成部４３の全体的な動作を示すフローチャート図の一例である。
Ｓ１：オフセット制御部６１は、図１１（ａ）の３つの経路Ａ〜Ｃのうち１つの任意に選択し、経路の先頭からノードを１つ選択する。
【００７７】
Ｓ２：オフセット制御部６１は、ステップＳ１で選んだノードのオフセット階数が決定済みかどうかを判定する。ステップＳ２の判定がＹｅｓの場合、処理はステップＳ５に進む。
【００７８】
Ｓ３：ステップＳ２の判定がＮｏの場合、オフセット制御部６１は、ステップＳ１で選んだノードと隣接したノードを他の経路も連続して通過しているか否かを判定する。この判定により、２つの経路が重複しているかどうかを判定される。例えば、経路Ａのノード９は重複がなく、ノード２は重複していると判定される。
【００７９】
Ｓ４：ステップＳ３の判定がＹｅｓの場合、オフセット判定部６２がオフセット判定処理を行う。詳細は図８にて説明される。
【００８０】
Ｓ５：オフセット制御部６１は次のノードがあるか否かを判定する。ステップＳ５の判定がＹｅｓの場合、処理はステップＳ２に戻る。
【００８１】
Ｓ６：次のノードがない場合、オフセット制御部６１は次の経路があるか否かを判定する。次の経路がある場合、処理はステップＳ１に戻る。
【００８２】
Ｓ７：次の経路がない場合、経路シフト部６５が経路配列にオフセット量を合成する。すなわち、表２の経路情報で経路が通過するノードが求められているが、このノードの座標のまま経路の描画を行うと経路が重複してしまうので、経路ごとにノードとオフセット量を紐づけることで経路配列にオフセット量を合成する。
【００８３】
Ｓ８：ステップＳ３の判定がＮｏの場合、着目しているノードは他の経路と重複していないので、オフセット制御部６１は着目しているノードのオフセット階数をゼロに設定する。
【００８４】
<<オフセット判定処理>>
図８は、オフセット判定処理の手順を示すフローチャート図の一例である。
【００８５】
Ｓ１１：オフセット判定部６２は図７のステップＳ３で重複していると判定された２つの経路の重複範囲を求める。図１１（ａ）では経路Ａが経路Ｂとノード２，３で重複していると判定されるため、経路Ａと経路Ｂの重複範囲を決定する。図１１（ａ）から明らかなようにノード２〜４で経路Ａ，Ｂが重複している。
【００８６】
Ｓ１２：次に、オフセット判定部６２はステップＳ１１で決定した重複範囲に他の経路も重複しているかどうかを確認する。図１１（ａ）では経路Ｃがノード３，４で重複している。
【００８７】
Ｓ１３：次に、順序判定部６３は順序判定処理を行う。詳細は図９にて説明される。
【００８８】
Ｓ１４：次に、重複度チェック部６４は重複度チェックを行う。詳細は図１０にて説明される。
【００８９】
Ｓ１５：経路シフト部６５は各ノードのオフセット階数と分岐点における経路のなす角φに応じてオフセット量を求め、表３に示したようにオフセット量を登録する。また、ノードにおける経路のなす角の2等分線の方向を各ノードの移動方向に決定する。詳細は図１３にて説明される。
【００９０】
<<順序判定処理>>
図９は、順序判定処理の手順を示すフローチャート図の一例である。
【００９１】
Ｓ２１：順序判定部６３は、図８のステップＳ１２で確認した重複している経路から２つの経路を選択する。すなわち、経路Ａ〜Ｃのうち２つの経路を選択する。全ての組み合わせで２つの経路が選択されるため、選択の順番は任意である。
【００９２】
Ｓ２２：順序判定部６３は、分岐点において上述した外積を演算することで２つの経路のうち、右に分岐する経路を判定する。経路Ａと経路Ｂを例にすると、経路Ａと経路Ｂはノード４で分岐しており、経路Ａの方が経路Ｂよりも右に分岐している。
【００９３】
Ｓ２３：順序判定部６３は、右に分岐する方の経路の順序ポイントを１つ大きくする。順序ポイントは相対的に右に分岐すると判定されるごとに１つ大きくなり、最終的に順序ポイントが大きいものほど下方向に大きくオフセットされる。
【００９４】
Ｓ２４：順序判定部６３は、全ての組み合わせで２つの経路を選択した否かを判定する。ステップＳ２４の判定がＮｏの場合、処理はステップＳ２１に戻る。
【００９５】
以上により、１回目の処理では経路Ａの順序ポイントが"１"となる。
【００９６】
次に、ステップＳ２１に戻り、例えば、経路Ａと経路Ｃが選択されたとする。経路Ａと経路Ｃはノード４で分岐しており、経路Ａの方が経路Ｃよりも右に分岐している。したがって、２回目の処理では経路Ａの順序ポイントが"２"となる。
【００９７】
次に、ステップＳ２１に戻ると、経路Ｂと経路Ｃが選択される。経路Ｂと経路Ｃはノード６で分岐しており、経路Ｂの方が経路Ｃよりも右に分岐している。したがって、３回目の処理では経路Ｂの順序ポイントが"１"となる。また、経路Ｃの順序ポイントは"０"である。以上をまとめると順序ポイントは以下のようになる。
経路Ａの順序ポイント…"２"
経路Ｂの順序ポイント…"１"
経路Ｃの順序ポイント…"０"
<<各ノードの重複度チェック>>
図１０は、重複度チェックの手順を示すフローチャート図の一例である。
【００９８】
Ｓ３１：重複度チェック部６４は、図８のステップＳ１２で確認した重複している経路から２つの経路を選択する。ここでも全ての組み合わせで２つの経路が選択されるため、選択の順番は任意である。
【００９９】
Ｓ３２：重複度チェック部６４は２つの経路の個別の重複範囲（以下、個別重複範囲という）を求める。例えば、経路Ａと経路Ｂの個別重複範囲はノード２〜４である。
【０１００】
Ｓ３３：次に、重複度チェック部６４は重複範囲直前の１ノードのみが互いに重複しているか否かを判定する。この判定は、例えば図１１の経路Ｃのノード１１から処理を開始した場合に必要になる。経路Ｃのノード１１から処理を開始すると、ノード３，４で経路Ａ又はＢと重複している。経路Ｃと経路Ａが選択された状態で、重複範囲がノード２〜４、個別重複範囲が３，４だとすると、ノード３，４はオフセット階数が決定されるが、重複範囲直前のノード２は経路Ａと重複していてもオフセットされないおそれがある。そこで、ステップＳ３５−１に示すように、重複範囲かつ個別重複範囲のノード３，４だけでなくノード２を追加重複範囲とする。
【０１０１】
Ｓ３５−１：ステップＳ３３の判定がＹｅｓの場合、重複度チェック部６４は重複範囲直前の１ノードのみを追加重複範囲とする。追加重複範囲とは個別重複範囲に追加されるノードである。
【０１０２】
Ｓ３４：次に、重複度チェック部６４は重複範囲直後の１ノードのみが互いに重複しているか否かを判定する。この判定については図１２にて説明される。図１１（ａ）の経路Ａ〜ＣではステップＳ３４でＹｅｓとなる関係は生じない。
【０１０３】
Ｓ３５−２：ステップＳ３４の判定がＹｅｓの場合、重複度チェック部６４は重複範囲直後の１ノードを追加重複範囲とする。
【０１０４】
Ｓ３６：重複度チェック部６４は順序ポイントがより大きい経路のノードのオフセット階数を「重複範囲にある個別重複範囲」＋「追加重複範囲」にわたって１つ大きくする。経路Ａ、Ｂを例にすると、経路Ａの方が順序ポイントが大きい。経路Ａ，Ｂの個別重複範囲はノード２〜４、経路Ａ，Ｂの重複範囲はノード２〜４（図８のステップＳ１１）である。また、追加重複範囲はない。したがって、経路Ａのノード２〜４のオフセット階数が"１"になる。また、経路Ｂのノード２〜４のオフセット階数はゼロである。
【０１０５】
次に処理がステップＳ３１に戻り、例えば、経路Ａと経路Ｃが選択されたものとする。経路Ａの方が順序ポイントが大きい。また、経路Ａと経路Ｃの個別重複範囲はノード３，４であるが、経路Ａ，Ｂの重複範囲はノード２〜４である。また、追加重複範囲はない。したがって、経路Ａのノード３、４のオフセット階数がプラス１される。したがって、経路Ａのオフセット階数は以下のようになる。また、経路Ｃのノード３，４のオフセット階数はゼロである。
経路Ａ：  ノード２…１、ノード３…２、ノード４…２
次に、ステップＳ３１に戻ると、経路Ｂと経路Ｃが選択される。経路Ｂの方が順序ポイントが大きい。また、経路Ｂと経路Ｃの個別重複範囲はノード３〜６であるが、経路Ａ，Ｂの重複範囲はノード２〜４である。また、追加重複範囲はない。したがって、経路Ｂのノード３、４のオフセット階数が"１"になる。また、経路Ｃのノード３、４のオフセット階数はゼロである。
【０１０６】
したがって、経路Ａの１回目のループが終了すると、図１１（ｂ）の状態のオフセット階数が得られる。
【０１０７】
<<オフセット処理の２回目以降のループ>>
図１０が終了すると処理は図８のステップＳ１５に戻る。この後、処理は図７のステップＳ５に戻る。
【０１０８】
経路Ａについて図７のステップＳ５から処理を再開すると、経路Ａではノード９，ノード２〜４までオフセット階数が設定されている。このため、オフセット制御部６１は経路Ａのノード１０について他の経路と重複がないと判定し（Ｓ３）、経路Ａの処理は終了する。
【０１０９】
次に、オフセット制御部６１は経路Ｂのオフセット処理を開始する。まず、経路Ｂのノード１について他の経路と重複がないと判定し（Ｓ３）、経路Ｂのノード１にゼロのオフセット階数を設定する。経路Ｂのノード２〜４にはオフセット階数が設定されている。このため、オフセット制御部６１は経路Ｂのノード５から処理を開始する。経路Ｂのノード５はノード５，６で経路Ｃと重複している。したがって、図７〜図１０の処理により、経路Ｂのノード５，６のオフセット階数を"１"に設定する。経路Ｃのノード５，６のオフセット階数は"０"になる。また、経路Ｂのノード７，８については、他の経路と重複がないと判定し（Ｓ３）、経路Ｂのノード７，８にゼロのオフセット階数を設定する。
【０１１０】
次に、オフセット制御部６１は経路Ｃのオフセット処理を開始する。まず、経路Ｃのノード１１について他の経路と重複がないと判定し（Ｓ３）、経路Ｃのノード１１にゼロのオフセット階数を設定する。経路Ｃのノード３〜６にはゼロのオフセット階数が設定されている。このため、オフセット制御部６１は経路Ｃのノード１２について図７の処理を行い、他の経路と重複がないと判定し（Ｓ３）、経路Ｃのノード１２にゼロのオフセット階数を設定する。
【０１１１】
以上のようにしてナビ画面作成部４３は全ての経路の全てのノードについてオフセット階数を設定することができる。すなわち、表３に示したように各経路のノードごとにオフセット階数が決定される。
【０１１２】
図１１（ｃ）は各ノードのオフセット階数を模式的に示す図の一例である。経路Ａ〜Ｃがそれぞれノードごとに決定されたオフセット階数に相当するだけ下方向に（進行方向に対し右方向に）オフセットされている。このようにオフセットすることで、３つの経路Ａ〜Ｃが重複しなくなるため、端末３５は視認性のよいナビ画面を表示できる。
【０１１３】
＜図１０のステップ３４、Ｓ３５−２について＞
図１２は図１０のステップ３４、Ｓ３５−２の処理を説明する図の一例である。図１２（ａ）では経路Ａと経路Ｂがノード２，３で重複し、経路Ａと経路Ｃがノード２，３で重複し、経路Ｂと経路Ｃがノード２，３、４で重複している。したがって、経路Ａに着目するとノード２，３が重複範囲となる。
【０１１４】
経路Ａに着目して図７〜図１０の処理を行えば、ノード２，３が重複範囲となり、ノード２，３のオフセット階数が決定される。この状態が図１２（ｂ）である。
【０１１５】
次に処理がノード４から再開されるが、ノード４以降では２つのノードが連続して重複していない（図７のステップＳ３）。したがって、ノード４で経路Ｂと経路Ｃが重複したままとなってしまう。
【０１１６】
そこで、図１０の各ノードの重複度チェックで、経路ＢとＣが選択されている際に、図１０のステップＳ３４に示すように重複範囲（ノード２，３）直後の１ノード（ノード４）のみが互いに重複している場合、ノード４を追加重複範囲とする。そして、重複範囲内（ノード２，３）にある経路ＢとＣの個別重複範囲（ノード２〜４）に加え、追加重複範囲（ノード４）のオフセット階数を＋１する。これにより、ノード４をオフセットさせることができる。したがって、図１２（ｃ）のオフセット結果が得られる。
【０１１７】
＜オフセット量について＞
経路の描画線を重複させないため、ナビ画面作成部４３は経路の描画線の太さ（以下、線分太さｄｗという）だけノードをオフセットすればよい。
【０１１８】
しかしながらオフセットされるノードで経路がなす角φを有する場合、経路の線分太さだけオフセットするとオフセット量が足りなくなる。
【０１１９】
図１３を用いてオフセット量について説明する。図１３（ａ）では経路がノードＸでなす角φを有している。この場合、ノードＸを線分太さｄｗだけオフセットしても経路の描画線に垂直な方向の移動量は線分太さｄｗに満たない。これは、経路がノードＸでなす角φを有しているためであり、このことは経路のなす角φに応じて適切な値だけオフセットする必要があることを意味している。
【０１２０】
具体的には、図１３（ｂ）に示すように、経路に垂直な方向の移動量が線分太さｄｗになるように１経路分のオフセット量ΔＳを決定する。
【０１２１】
１経路分のオフセット量ΔＳ＝線分太さｄｗ／ｓｉｎ（φ／２）
このようにしてノードの１経路分のオフセット量ΔＳを決定することで、経路のなす角φに依存せず、経路の描画線を線分太さｄｗだけオフセットすることができる。なお、なす角φは分岐点を中心に分岐点の手前のノードと後のノードのなす角として測定される。したがって、分岐しない経路（直線の経路）ではなす角φは１８０度となる。例えば１００個のノードで互いに経路が重複していても、なす角φはノードことに異なりうる（同じ場合もある）。経路シフト部６５はノードごとになす角φの２等分線方向（図１３のＳの方向）を移動方向に決定する。
【０１２２】
オフセット階数がノードによって異なるので、最終的なオフセット量Ｓは１経路分のオフセット量ΔＳにオフセット階数が乗じられた値となる。例えば、表３の経路Ａのノード３のオフセット量Ｓは１経路分のオフセット量ΔＳ×２である。
【０１２３】
なお、なす角φは順序判定の際の外積において説明したように、２つのベクトルの内積又は２つの直線の方程式から求められる。例えば、内積の場合、分岐点の手前のリンクをベクトルａ、分岐点の後のリンクをベクトルｂとして、ａｂ＝ａｂｃｏｓφから算出される。あるいは、ｔａｎφ＝（ｍ＋ｎ）／（１＋ｍｎ）から算出される。
【０１２４】
＜ユーザインタフェースの例＞
以上のようにして算出されたオフセット量でサーバ３１がナビ画面に経路を描画して端末３５に送信するか、サーバ３１が送信したナビ画面及び経路情報を端末３５が受信して、端末３５がナビ画面に経路を描画する。
【０１２５】
図１４は、端末３５の表示装置２１３に表示されるナビ画面を示す図である。図１４（ａ）は比較のために示された重複が解消されていないナビ画面である。図１４（ａ）では現在地から目的地まで３つの経路が表示されているが、オフセットされていないためユーザは経路が３つあることを確認しにくい。
【０１２６】
これに対し、図１４（ｂ）は本実施形態のナビ画面作成部４３が作成したナビ画面を示す。現在地から３つの経路を確認できる。また、右に分岐する経路ほど重複範囲のオフセット量が大きいので、分岐点で経路が交差する（右側の経路が左の経路を跨ぐ又は隠れる）ことも生じない。
【０１２７】
＜その他の好適な適用例＞
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
【０１２８】
本実施例では説明の便宜上、右方向に分岐する経路を決定し該経路ほど下方向にオフセットしたが、左方向に分岐する経路を決定し該経路ほど上方向にオフセットしてもよい。または、地図の表示がヘディングアップ（進行方向が常に上向きになる）である場合などでは、左右方向にオフセットしてもよい。
【０１２９】
また、本実施形態ではサーバ３１が経路情報を作成し、端末３５が経路情報を表示したが、サーバ３１が経路情報を表示してもよい。すなわち、スタンドアローンの情報処理装置が経路情報を作成してかつ表示することもできる。
【０１３０】
また、端末３５がナビ画面作成部４３と経路検索部４２の機能を有することもできる。この場合、端末３５は、地図ＤＢ４９１、道路ネットワークＤＢ４９２、及び、歩行者ネットワークＤＢ４９３にアクセスできるものとする。
【０１３１】
また、図４などの構成例は、サーバ３１による処理の理解を容易にするために、主な機能に応じて分割したものである。処理単位の分割の仕方や名称によって本願発明が制限されることはない。サーバ３１の処理は、処理内容に応じてさらに多くの処理単位に分割することもできる。また、１つの処理単位がさらに多くの処理を含むように分割することもできる。
【０１３２】
また、図４では一台のサーバ３１を図示したが、サーバ３１が複数台、存在してもよい。また、一台のサーバ３１が有する機能が複数のサーバに分散して配置されてもよい。
【０１３３】
なお、オフセット階数はオフセット値の一例であり、ベクトルａは第一ベクトルの一例であり、ベクトルｂは第二ベクトルの一例であり、ベクトルｃは第三ベクトルの一例である。図６の経路Ａは一方の経路の一例であり、経路Ｂは他方の経路の一例である。経路シフト部６５は作成手段の一例であり、経路検索部４２は取得手段の一例であり、端末送受信部５１は受信手段の一例であり、順序判定部６３は経路決定手段の一例であり、重複度チェック部６４はオフセット手段の一例である。ナビ画面表示部５５は表示処理手段の一例である。右方向は所定方向の一例であり、ナビ画面作成部４３が行うナビ画面の作成方法（製造）は表示情報製造方法の一例である。端末３５は情報端末の一例である。
【符号の説明】
【０１３４】
３１        サーバ
３５        端末
４３        ナビ画面作成部
６１        オフセット制御部
６２        オフセット判定部
６３        順序判定部
６４        重複度チェック部
６５        経路シフト部
１００      位置表示システム
【図１】
0006574650.tif 000007
【図２】
0006574650.tif 000008
【図３】
0006574650.tif 000009
【図４】
0006574650.tif 000010
【図５】
0006574650.tif 000011
【図６】
0006574650.tif 000012
【図７】
0006574650.tif 000013
【図８】
0006574650.tif 000014
【図９】
0006574650.tif 000015
【図１０】
0006574650.tif 000016
【図１１】
0006574650.tif 000017
【図１２】
0006574650.tif 000018
【図１３】
0006574650.tif 000019
【図１４】
0006574650.tif 000020