以下、地図出力装置等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
(実施の形態1)
本実施の形態において、水上移動体用の地図表示装置において、走行履歴を出力する地図出力装置について説明する。なお、ここで、水上移動体用とは、水上で移動する移動体で用いられることである。
また、本実施の形態において、走行履歴は線で示され、予め決められた範囲は、同じ線の同じ点を構成する走行履歴を出力する地図出力装置について説明する。なお、本実施の形態において、予め決められた範囲は、地図の縮尺により変動することは好適である。
また、本実施の形態において、出力されている地図の縮尺により、走行履歴の表示態様が変更される地図出力装置について説明する。本実施の形態において、例えば、出力している地図の縮尺が小さいとき(広範囲地図の場合)、走行履歴はグリッド表示され、縮尺が大きいとき(狭範囲地図の場合)、走行履歴はライン表示される。
さらに、本実施の形態において、走行回数に応じて、線の色やグリッドの色等の表示態様が変わる地図出力装置について説明する。
図1は、本実施の形態における地図出力装置1のブロック図である。地図出力装置1は、格納部11、処理部12、および出力部13を備える。
格納部11は、地図格納部111、および走行履歴情報格納部112を備える。
処理部12は、現在位置情報取得部121、走行軌跡情報取得部122、および走行履歴情報蓄積部123を備える。
走行軌跡情報取得部122は、走行回数取得手段1221、および走行軌跡情報取得手段1222を備える。
出力部13は、地図出力部131、および走行軌跡情報出力部132を備える。
格納部11は、各種の情報を格納し得る。各種の情報とは、例えば、後述する水上地図、走行履歴情報、出発位置情報等である。出発位置情報とは、出発位置を示す位置情報である。出発位置情報は、走行の出発位置を示す情報でも良いし、ユーザが指示した位置を示す情報でも良い。また、位置情報は、通常、緯度と経度の情報を有する。ただし、位置情報は、位置を特定できれば、その形式、構造等は問わない。
地図格納部111は、水上地図を格納し得る。地図格納部111の水上地図は、予め格納されていても良いし、図示しないサーバ装置から受信されても良い。地図格納部111の水上地図は、図示しないサーバ装置から、移動体の移動に伴い、動的に受信されたものでも良い。水上地図は、水上を含む地図情報である。水上とは、海の上、湖の上、池の上などである。地図情報は、地図を構成する情報である。地図情報は、例えば、地図画像(地図図柄情報と言っても良い)、地図上に表示される1以上のオブジェクト、当該オブジェクトの種類を有する。地図情報は、例えば、KIWIフォーマットである。ただし、地図情報のフォーマット、内容等は問わない。地図情報は、例えば、地図の図柄を示す地図図柄情報と、用語と当該用語の地図上での位置を示す位置情報を有する用語情報を有する。地図図柄情報は、例えば、地図を構成するビットマップまたはベクトルデータなどである。用語とは、地図上に表記されているオブジェクト(文字列)を有する。また、位置情報は、上述したように、例えば、地図上の緯度経度を有する情報や、二次元平面上のX,Y座標値などである。また、地図情報は、好ましくは、縮尺ごとに地図図柄情報と、用語情報を有する。なお、オブジェクトとは、地図上に表示されている海の名称や島の名称や領海の名称や湖の名称や池の名称や海溝の名称などをいう。
走行履歴情報格納部112は、1以上の走行履歴情報を格納し得る。走行履歴情報とは、走行した履歴に関する情報である。走行履歴情報は、例えば、水上移動体が移動した位置情報の集合である。走行履歴情報は、例えば、水上移動体が移動した水上の領域を示す領域識別子の集合である。走行履歴情報は、例えば、水上移動体が移動した水上の領域を示す領域識別子と走行回数を示す情報との組である。
ここで、水上移動体とは、海や湖や池等の水上を走行する移動体である。水上移動体は、例えば、ウォータージェット、マリン用ジェット、水上オートバイ、ヨット、船、ジェットスキー等である。移動体は、水上移動体等、出発地点に戻る必要性がある移動体であることは好適である。
処理部12は、各種の処理を行う。各種の処理とは、例えば、後述する現在位置情報取得処理、走行軌跡情報取得処理である。また、各種の処理とは、例えば、出発位置情報取得処理、距離取得処理等である。
出発位置情報取得処理とは、出発地点を示す位置情報である出発位置情報を取得し、格納部11に蓄積する処理である。処理部12は、例えば、GPS受信機を具備し、当該GPS受信機が、出発時に、現在位置情報を取得する。この現在位置情報は、出発位置情報である。なお、現在位置情報の取得は、後述する現在位置情報取得部121が行う。また、処理部12が出発位置情報を取得するトリガーは問わない。処理部12は、例えば、地図出力装置1が搭載された移動体のエンジンがONになった際に、現在位置情報である出発位置情報を取得しても良い。また、処理部12は、例えば、ユーザの指示に応じて、現在位置情報である出発位置情報を取得しても良い。
距離取得処理とは、出発地点から現在地点までの距離に関する距離情報を取得する処理である。処理部12は、出発位置情報および現在位置情報取得部121が取得した現在位置情報を用いて、出発地点から現在地点までの距離に関する距離情報を取得する。距離情報は、通常、直線距離である。ただし、距離情報は、出発地点から通過した経路の距離であり、現在地点までの距離でも良い。
現在位置情報取得部121は、現在位置情報を連続して取得する。現在位置情報とは、現在地点を示す位置情報である。位置情報とは、位置を示す情報である。位置情報は、例えば、(緯度,経度)である。位置情報は、例えば、地図上の領域を識別する領域ID等でも良い。ここで、連続して取得することは、定期的に取得することでも良いし、不定期に取得することでも良い。現在位置情報の取得方法は問わない。また、現在位置情報取得部121が現在位置情報を取得する間隔は問わない。
走行軌跡情報取得部122は、現在位置情報取得部121が連続して取得した2以上の現在位置情報を用いて、走行軌跡情報を取得する。
走行軌跡情報とは、水上移動体の走行軌跡を示す情報である。走行軌跡情報は、例えば、軌跡線である。軌跡線とは、走行軌跡を示す線である。走行軌跡情報は、例えば、軌跡グリッドである。軌跡グリッドとは、水上移動体が走行した領域の集合である。なお、グリッドは、ここでは、通常、矩形の領域である。矩形は、通常、正方形であるが、長方形等でも良い。なお、走行軌跡情報が軌跡グリッドである場合、水上地図の少なくとも一部は、グリッド(矩形の領域)に区分けされる。
走行軌跡情報が軌跡線である場合、走行軌跡情報取得部122は、予め決められた範囲の現在位置情報は、軌跡線上の同一の点となるように、走行軌跡情報を取得することは好適である。
走行軌跡情報が軌跡グリッドである場合、走行軌跡情報取得部122は、予め決められた範囲の現在位置情報は、同一のグリッド上となるように、走行軌跡情報を取得することは好適である。
走行軌跡情報取得部122は、地図出力部131が出力している地図の縮尺に応じて異なる態様の走行軌跡情報を取得することは好適である。例えば、走行軌跡情報取得部122は、地図出力部131が出力している地図の縮尺が小さい場合、現在位置情報取得部121が連続して取得した2以上の現在位置情報を用いて、2以上のグリッド領域を有する軌跡グリッドである走行軌跡情報を取得し、地図出力部131が出力している地図の縮尺が大きい場合、現在位置情報取得部121が連続して取得した2以上の現在位置情報を用いて、軌跡線である走行軌跡情報を取得することは好適である。なお、地図の縮尺が小さいとは、広域の地図であることである。また、地図の縮尺が大きいとは、狭域の地図であることである。例えば、走行軌跡情報取得部122は、地図出力部131が出力している地図の縮尺が閾値より小さい(または閾値以下である)場合、現在位置情報取得部121が連続して取得した2以上の現在位置情報を用いて、1または2以上のグリッド領域を有する軌跡グリッドである走行軌跡情報を取得し、地図出力部131が出力している地図の縮尺が閾値より大きい(または閾値以上である)場合、現在位置情報取得部121が連続して取得した2以上の現在位置情報を用いて、軌跡線である走行軌跡情報を取得することは好適である。
走行軌跡情報取得部122は、走行履歴情報格納部112の1以上の走行履歴情報が示す走行回数に基づいて、異なる属性値を有する走行履歴情報を取得することは好適である。
走行軌跡情報取得部122は、走行履歴情報格納部112の1以上の走行履歴情報が示す走行回数に基づいて、異なる線の色の軌跡線である走行軌跡情報を取得することは好適である。
走行軌跡情報取得部122は、走行履歴情報格納部112の1以上の走行履歴情報が示す走行回数に基づいて、異なる属性値を有する軌跡グリッドである走行履歴情報を取得することは好適である。
予め決められた範囲は、地図出力部131が出力している地図の縮尺に応じて異なることは好適である。通常、地図の縮尺が小さい(または閾値以下である)とき、予め決められた範囲は広く、地図の縮尺が大きいとき、予め決められた範囲は狭い。つまり、通常、地図の縮尺が閾値より小さい(または閾値以上である)とき、予め決められた範囲は広く、地図の縮尺が閾値より大きいとき、予め決められた範囲は狭い。
走行回数取得手段1221は、走行履歴情報格納部112の1以上の走行履歴情報を用いて、走行回数を取得する。
例えば、走行履歴情報格納部112は、走行ごとに、1以上の走行履歴情報を格納している。そして、走行回数取得手段1221は、例えば、軌跡線を構成する各点に対応する範囲(領域)に含まれる走行履歴情報を有する走行の数を取得する。なお、移動体のエンジンONからOFFまでを一つの走行であるとし、走行履歴情報格納部112は、一つの走行中に取得された1以上の走行履歴情報を対応付けて格納している、とする。
例えば、走行履歴情報格納部112は、走行履歴情報と時刻情報との組の情報を1組以上格納している。そして、走行回数取得手段1221は、例えば、軌跡線を構成する各点に対応する範囲(領域)に含まれる走行履歴情報であり、予め決められた時間間隔に入らない走行履歴情報の数を取得する。
走行軌跡情報取得手段1222は、走行回数取得手段1221が取得した走行回数を視覚的に区別可能なように、走行履歴情報を構成する。走行軌跡情報取得手段1222は、例えば、走行回数取得手段1221が取得した走行回数に応じて異なる属性値を有する軌跡線を取得する。異なる属性値とは、例えば、異なる色、異なる線種等である。走行軌跡情報取得手段1222は、例えば、走行回数取得手段1221が取得した走行回数に応じて異なる属性値を有する矩形を有する軌跡グリッドを取得する。この異なる属性値とは、例えば、異なる色、異なる背景等である。
走行履歴情報蓄積部123は、現在位置情報取得部121が取得した2以上の現在位置情報に対する走行履歴情報を走行履歴情報格納部112に蓄積する。走行履歴情報は、現在位置情報と同じでも良いし、2以上の現在位置情報を集約した情報でも良い。2以上の現在位置情報を集約した情報とは、例えば、2以上の現在位置情報を含む領域を識別する情報、2以上の現在位置情報を代表する位置情報等である。
出力部13は、各種の情報を出力する。各種の情報とは、例えば、水上地図、走行軌跡情報である。ここで、出力とは、通常、ディスプレイへの表示であるが、プロジェクターを用いた投影、外部の装置(通常、表示装置)への送信、記録媒体への蓄積、他の処理装置や他のプログラムなどへの処理結果の引渡しなどを含む概念である。
地図出力部131は、水上を含む地図である水上地図を出力する。地図出力部131は、通常、地図格納部111の水上地図を出力する。
走行軌跡情報出力部132は、走行軌跡情報取得部122が取得した走行軌跡情報を水上地図上に出力する。
格納部11、地図格納部111、走行履歴情報格納部112は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
格納部11等に情報が記憶される過程は問わない。例えば、記録媒体を介して情報が格納部11等で記憶されるようになってもよく、通信回線等を介して送信された情報が格納部11等で記憶されるようになってもよく、あるいは、入力デバイスを介して入力された情報が格納部11等で記憶されるようになってもよい。
処理部12、走行軌跡情報取得部122、走行履歴情報蓄積部123、走行回数取得手段1221、走行軌跡情報取得手段1222は、通常、MPUやメモリ等から実現され得る。処理部12の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
現在位置情報取得部121は、例えば、GPS受信機により実現され得る。
出力部13、地図出力部131、走行軌跡情報出力部132は、ディスプレイやスピーカー等の出力デバイスを含むと考えても含まないと考えても良い。出力部13は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。
次に、地図出力装置1の動作の例について、図2のフローチャートを用いて説明する。
(ステップS201)地図出力部131は、地図格納部111から水上地図を取得する。
(ステップS202)地図出力部131は、ステップS201で取得した水上地図を出力する。
(ステップS203)現在位置情報取得部121は、現在位置情報を取得する。
(ステップS204)出力部13は、水上地図の現在位置情報が示す位置に、現在位置を示す目印である現在位置目印を出力する。
(ステップS205)走行履歴情報蓄積部123は、ステップS203で取得された現在位置情報を用いて、走行履歴情報を取得する。なお、走行履歴情報は、現在位置情報と同じでも良い。
(ステップS206)走行履歴情報蓄積部123は、ステップS205で取得された走行履歴情報を走行履歴情報格納部112に蓄積する。なお、走行履歴情報蓄積部123は、図示しない時計から現在時刻を取得し、当該現在時刻と走行履歴情報との組を走行履歴情報格納部112に蓄積することは好適である。
(ステップS207)走行軌跡情報取得部122は、走行軌跡情報取得処理を行う。走行軌跡情報取得処理について、図3のフローチャートを用いて説明する。
(ステップS208)走行軌跡情報出力部132は、水上地図の上に走行軌跡情報を出力する。
(ステップS209)処理部12は、出力する水上地図を変更するか否かを判断する。変更する場合はステップS210に行き、変更しない場合ステップS211に行く。なお、例えば、図示しない受付部がユーザの指示(例えば、地図の縮尺を変更する指示、別の態様の地図を出力する指示等)を受け付けることにより、処理部12は、出力する水上地図を変更すると判断する。また、例えば、現在位置の移動により、現在位置が水上地図に入らなくなる場合に、処理部12は、出力する水上地図を変更すると判断する。また、例えば、現在位置の移動により、現在位置の移動に伴い、処理部12は、出力する水上地図を変更すると判断する。その他、処理部12が出力する水上地図を変更するとの判断を行う条件は問わない。
(ステップS210)地図出力部131は、地図格納部111から、新しく出力する水上地図を取得する。ステップS202に行く。
(ステップS211)処理部12は、処理を終了するか否かを判断する。処理を終了しないと判断した場合はステップS203に戻り、処理を終了すると判断した場合は処理を終了する。なお、処理部12は、例えば、水上移動体の電源OFFの指示を受け付けることにより、処理を終了すると判断する。
次に、ステップS207の走行軌跡情報取得処理の例について、図3のフローチャートを用いて説明する。
(ステップS301)走行軌跡情報取得部122は、出力されている水上地図の縮尺の情報を取得する。
(ステップS302)走行軌跡情報取得部122は、ステップS301で取得した縮尺の情報を用いて、出力する走行軌跡情報が軌跡線か軌跡グリッドかを判断する。軌跡線の場合はステップS303に行き、軌跡グリッドの場合はステップS311に行く。なお、出力されている地図の縮尺の情報を取得する処理は公知技術であるので、詳細な説明は省略する。また、例えば、水上地図は、縮尺の情報と対応付けて、地図格納部111に格納されている。
(ステップS303)走行軌跡情報取得部122は、ステップS301で取得した縮尺の情報を用いて、線を構成する点の領域の範囲を決定する。走行軌跡情報取得部122は、例えば、縮尺の情報と対応付けて、線を構成する点の領域の範囲の情報を保持している。また、走行軌跡情報取得部122は、例えば、縮尺の情報をパラメータとして、線を構成する点の領域の範囲の情報を算出する演算式を保持している。
(ステップS304)走行軌跡情報取得部122は、カウンタiに1を代入する。
(ステップS305)走行軌跡情報取得部122は、ステップS303で取得した領域の範囲の情報を用いて、線の情報を構成するためのi番目の処理単位が存在するか否かを判断する。i番目の処理単位が存在する場合はステップS306に行き、i番目の処理単位が存在しない場合は上位処理にリターンする。なお、処理単位とは、軌跡線や軌跡グリッドを取得する単位で、通常、軌跡線(直線)の最小の長さ、またはグリッドの最小の領域である。また、通常、ステップS303で取得した領域の範囲の情報に、処理単位は対応する。
(ステップS306)走行回数取得手段1221は、i番目の処理単位に対応する走行履歴情報を走行履歴情報格納部112から取得し、当該走行履歴情報から、i番目の処理単位に対応する走行回数を取得する。
(ステップS307)走行軌跡情報取得手段1222は、ステップS306で取得された走行回数に対応する線の属性値を取得する。なお、走行軌跡情報取得手段1222は、例えば、走行回数の情報と線の1以上の属性値との対の情報を1以上格納している。
(ステップS308)走行軌跡情報取得手段1222は、i番目の処理単位に対応する今回の走行の走行履歴情報を取得する。
(ステップS309)走行軌跡情報取得手段1222は、ステップS307で取得した線の属性値を有する線であり、ステップS308で取得した走行履歴情報を用いて、軌跡線を取得する。
(ステップS310)走行軌跡情報取得部122は、カウンタiを1、インクリメントする。ステップS305に戻る。
(ステップS311)走行軌跡情報取得部122は、ステップS301で取得した縮尺の情報を用いて、一グリッドの範囲を決定する。
(ステップS312)走行軌跡情報取得部122は、カウンタiに1を代入する。
(ステップS313)走行軌跡情報取得部122は、ステップS303で取得した領域の範囲の情報を用いて、グリッドの情報を構成するためのi番目の処理単位が存在するか否かを判断する。i番目の処理単位が存在する場合はステップS314に行き、i番目の処理単位が存在しない場合は上位処理にリターンする。
(ステップS314)走行回数取得手段1221は、i番目の処理単位に対応する走行履歴情報を走行履歴情報格納部112から取得し、当該走行履歴情報から、i番目の処理単位に対応する走行回数を取得する。
(ステップS315)走行軌跡情報取得手段1222は、ステップS306で取得された走行回数に対応するグリッドの属性値を取得する。なお、走行軌跡情報取得手段1222は、例えば、走行回数の情報とグリッドの1以上の属性値との対の情報を1以上格納している。
(ステップS316)走行軌跡情報取得手段1222は、i番目の処理単位に対応する今回の走行の走行履歴情報を取得する。
(ステップS317)走行軌跡情報取得手段1222は、ステップS315で取得した属性値を有するグリッドであり、ステップS316で取得した走行履歴情報を用いて、軌跡グリッドを取得する。
(ステップS318)走行軌跡情報取得部122は、カウンタiを1、インクリメントする。ステップS313に戻る。
以下、本実施の形態における地図出力装置1の具体的な動作について説明する。
今、地図格納部111は、2以上の段階の縮尺の地図を格納している、とする。また、走行履歴情報格納部112は、図4に示す構造を有する走行履歴情報管理表を保持している、とする。走行履歴情報管理表は、「走行識別子」「走行履歴情報」「時刻情報」を有するレコードを1以上格納している。「走行識別子」は、この走行を識別する情報である。なお、走行識別子は、エンジンがONになった際に生成されるユニークな情報である。「走行履歴情報」は、ここでは、例えば、(緯度,経度)である。「時刻情報」は、ここでは、(yx/mx/dx/tx)[Xは1以上の自然数]の形式である、とする。つまり、走行履歴情報のレコードは、水上移動体が、走行識別子が示す一の走行において、時刻情報が示す時刻において、走行履歴情報が示す位置を通過したことを示す。なお、時刻情報のyx(xは1以上の自然数)は年、mxは月、dxは日、txは時刻である。
かかる状況において、以下の2つの具体例について説明する。具体例1は、出力される走行軌跡情報は軌跡線の場合である。また、具体例2は、出力される走行軌跡情報は軌跡グリッドの場合である。
(具体例1)
ユーザは、地図出力装置1を搭載している水上移動体(例えば、水上バイク)のエンジンをONにした、とする。
すると、地図出力部131は、地図格納部111から水上地図を読み出す。次に、地図出力部131は、読み出した水上地図をディスプレイに表示する。かかる表示例は、図5である。
次に、現在位置情報取得部121は、現在位置情報(x1,y1)を取得する。ここで、現在位置情報は、例えば、(緯度,経度)である、とする。そして、処理部12は、現在位置情報(x1,y1)を出発位置情報として、格納部11に蓄積する。
次に、出力部13は、水上地図の現在位置情報が示す位置に、現在位置を示す目印である現在位置目印を出力する。なお、現在位置目印は、格納部11に、予め格納されている、とする。そして、かかる出力例は、図6である。図6の601は、現在位置目印である。602は、進行方向を示す図柄である。なお、602も現在位置目印である、と考えても良い。
次に、走行履歴情報蓄積部123は、取得された現在位置情報を用いて、走行履歴情報(x1,y1)を取得する。ここで、例えば、走行履歴情報は現在位置情報である、とする。
次に、走行履歴情報蓄積部123は、この走行を識別する走行識別子「r1」を取得する。また、走行履歴情報蓄積部123は、現在時刻(y1/m1/d1/t1)を取得する。そして、走行履歴情報蓄積部123は、「走行識別子:r1,走行履歴情報:(x1,y1),時刻情報:y1/m1/d1/t1」を走行履歴情報管理表に蓄積する。
次に、走行軌跡情報取得部122は、以下のように走行軌跡情報を取得する。つまり、まず、走行軌跡情報取得部122は、出力されている水上地図の縮尺の情報(s1)を取得する。ここで、縮尺の情報(s1)は、例えば、1/3000である。
次に、走行軌跡情報取得部122は、取得した縮尺の情報(s1)を用いて、出力する走行軌跡情報が軌跡線か軌跡グリッドかを判断する。ここで、走行軌跡情報取得部122は、水上地図の縮尺が「1/5000」以下である場合は軌跡線であり、「1/5000」より大きい場合は軌跡グリッドである、と判断する、とする。つまり、水上地図の縮尺の情報は「1/3000」であるので、走行軌跡情報取得部122は、出力する走行軌跡情報が軌跡線である、と判断する。
次に、走行軌跡情報取得部122は、取得した縮尺の情報(s1)を用いて、線を構成する点の領域の範囲(例えば、100m四方)を決定する。なお、走行軌跡情報取得部122は、縮尺の情報に対応付けて、線を構成する点の領域の範囲の情報を予め保持している、とする。
次に、走行軌跡情報取得部122は、取得した領域の範囲の情報(例えば、100m四方)を用いて、線の情報を構成するための1番目の処理単位が存在する、と判断する。1番目の処理単位は、走行識別子「r1」で識別される走行において、走行履歴情報管理表に格納されている走行履歴情報であり、現在位置情報(x1,y1)が示す位置から100m四方内に存在する位置を示す走行履歴情報の集合である。なお、ここでは、1番目の処理単位に対応する走行履歴情報の集合は、(x1,y1)のみである。
次に、走行回数取得手段1221は、1番目の処理単位に対応する走行履歴情報(x1,y1)を走行履歴情報格納部112から取得する。
次に、走行回数取得手段1221は、走行履歴情報から、1番目の処理単位に対応する走行回数を取得する。ここで、走行回数取得手段1221は、走行回数「1」を取得した、とする。走行回数「1」は、この場所について、今回の走行が初めてである、ことを示す。
次に、走行軌跡情報取得手段1222は、走行回数「1」に対応する線の属性値(ここでは、線の色)「黄色」を取得する。
次に、走行軌跡情報取得手段1222は、1番目の処理単位に対応する今回の走行の走行履歴情報(x1,y1)を取得する。
次に、走行軌跡情報取得手段1222は、取得した線の色「黄色」の点を、(x1,y1)の位置に配置するための情報(軌跡線)を取得する。
次に、走行軌跡情報出力部132は、水上地図の上に走行軌跡情報(黄色の点)を出力する。
そして、以後、上述した、現在位置情報の取得、走行履歴情報の取得および蓄積、走行回数の取得、走行軌跡情報の取得および出力等の処理を繰り返し、走行識別子「r1」に対応する走行履歴情報が多数((x1,y1)から(xn,yn))蓄積された、とする。
そして、走行軌跡情報取得手段1222は、複数の各処理単位に対応する今回の走行の走行履歴情報を取得して、処理単位ごとに、軌跡線を取得する。
そして、走行軌跡情報出力部132は、水上地図の上に、走行軌跡情報取得手段1222が取得した複数の処理単位ごとの軌跡線を出力する。かかる軌跡線の出力例は、図7の701である。なお、図7の701において、すべての処理単位(走行履歴の区間)において、走行回数は「1」である、とする。
また、処理部12は、出発位置情報(x1,y1)と現在位置情報(xn,yn)との直線距離を取得する。
そして、出力部13は、取得した直線距離を出力する。直線距離の出力例は、図7の702である。
なお、走行軌跡情報取得部122は、例えば、走行回数が5回以上の領域においては、線の色が「赤」の軌跡線を取得する。
また、走行軌跡情報取得部122は、例えば、走行回数が多いほど、太い軌跡線を取得しても良い。かかる場合の出力例は図8である。図8に示すように、走行回数により、一の走行軌跡の中に、複数の種類の太さの線が存在する。
(具体例2)
ユーザは、地図出力装置1を搭載している水上移動体(例えば、水上バイク)のエンジンをONにした、とする。
次に、ユーザが、「1/10000」の縮尺の地図を出力する指示を入力した、とする。
すると、地図出力部131は、地図格納部111から水上地図を読み出す。次に、地図出力部131は、読み出した水上地図をディスプレイに表示する。かかる表示例は、図9である。図9の地図は、図5の地図より広域の地図(縮尺が小さい地図)である。
次に、現在位置情報取得部121は、現在位置情報(x1,y1)を取得する。ここで、現在位置情報は、例えば、(緯度,経度)である、とする。そして、処理部12は、現在位置情報(x1,y1)を出発位置情報として、格納部11に蓄積する。
次に、出力部13は、水上地図の現在位置情報が示す位置に、現在位置を示す目印である現在位置目印を出力する。
次に、走行履歴情報蓄積部123は、取得された現在位置情報を用いて、走行履歴情報(x1,y1)を取得する。ここで、例えば、走行履歴情報は現在位置情報である、とする。
次に、走行履歴情報蓄積部123は、この走行を識別する走行識別子「r2」を取得する。また、走行履歴情報蓄積部123は、現在時刻(y1/m1/d1/t1)を取得する。そして、走行履歴情報蓄積部123は、「走行識別子:r2,走行履歴情報:(x1,y1),時刻情報:y1/m1/d1/t1」を走行履歴情報管理表に蓄積する。
次に、走行軌跡情報取得部122は、以下のように走行軌跡情報を取得する。つまり、まず、走行軌跡情報取得部122は、出力されている水上地図の縮尺の情報(s2)を取得する。ここで、縮尺の情報(s2)は、例えば、1/10000である。
次に、走行軌跡情報取得部122は、取得した縮尺の情報(s2)を用いて、出力する走行軌跡情報が軌跡グリッドである、と判断する。ここで、走行軌跡情報取得部122は、水上地図の縮尺が「1/5000」以下である場合は軌跡線であり、「1/5000」より大きい場合は軌跡グリッドである、と判断する、とする。つまり、水上地図の縮尺の情報は「1/10000」であるので、走行軌跡情報取得部122は、出力する走行軌跡情報が軌跡グリッドである、と判断する。
次に、走行軌跡情報取得部122は、縮尺の情報「1/10000」を用いて、一グリッドの範囲(例えば、1km四方)を決定する。
次に、走行軌跡情報取得部122は、取得した領域の範囲の情報(例えば、1km四方)を用いて、線の情報を構成するための1番目の処理単位が存在する、と判断する。1番目の処理単位は、走行識別子「r2」で識別される走行において、走行履歴情報管理表に格納されている走行履歴情報であり、現在位置情報(x1,y1)が示す位置から1km四方内に存在する位置を示す走行履歴情報の集合である。なお、ここでは、1番目の処理単位に対応する走行履歴情報の集合は、(x1,y1)のみである。
次に、走行回数取得手段1221は、1番目の処理単位に対応する走行履歴情報(x1,y1)を走行履歴情報格納部112から取得する。
次に、走行回数取得手段1221は、走行履歴情報から、1番目の処理単位に対応する走行回数を取得する。ここで、走行回数取得手段1221は、走行回数「1」を取得した、とする。
次に、走行軌跡情報取得手段1222は、走行回数「1」に対応するグリッドの模様を取得する。
次に、走行軌跡情報取得手段1222は、1番目の処理単位に対応する今回の走行の走行履歴情報(x1,y1)を取得する。
次に、走行軌跡情報取得手段1222は、取得した模様の矩形(グリッド)を、(x1,y1)に対応するグリッドの位置に配置するために取得する。
次に、走行軌跡情報出力部132は、水上地図の上に当該模様のグリッドを出力する。
そして、以後、上述した、現在位置情報の取得、走行履歴情報の取得および蓄積、走行回数の取得、走行軌跡情報の取得および出力等の処理を繰り返し、走行識別子「r2」に対応する走行履歴情報が多数((x1,y1)から(xn,yn))、蓄積された、とする。
そして、走行軌跡情報取得手段1222は、複数の各処理単位に対応する今回の走行の走行履歴情報を取得して、処理単位ごとに、軌跡グリッドを取得する。
そして、走行軌跡情報出力部132は、水上地図の上に、走行軌跡情報取得手段1222が取得した複数の処理単位ごとの軌跡グリッドを出力する。かかる軌跡グリッドの出力例は、図10の1001である。1001は、グリッドの模様の密度が荒く、走行回数「1」を示している。なお、図10において、すべての処理単位(走行履歴の区間)において、走行回数は「1」である、とする。
また、処理部12は、出発位置情報(x1,y1)と現在位置情報(xn,yn)との直線距離を取得する。
そして、出力部13は、取得した直線距離を出力する。直線距離の出力例は、図10の1002である。
なお、走行軌跡情報取得部122は、例えば、走行回数が5回以上の領域においては、例えば、グリッドの模様の密度が大きくなる。かかる出力例は、図11の1101である。図11に示すように、走行回数により、一の走行軌跡の中に、複数の種類の模様のグリッドが存在する。
以上、本実施の形態によれば、水上移動体用の地図出力装置において、走行軌跡を地図上に出力できる。
また、本実施の形態によれば、水上移動体用の地図出力装置において、見やすい走行軌跡を地図上に出力できる。
また、本実施の形態によれば、水上移動体用の地図出力装置において、地図の縮尺に対応した見やすい走行軌跡を地図上に出力できる。
また、本実施の形態によれば、水上移動体用の地図出力装置において、走行回数に応じた見やすい走行軌跡を地図上に出力できる。
さらに、本実施の形態によれば、出発地点と現在地点の距離を出力できる水上移動体用の地図出力装置を提供できる。かかる機能により、ユーザは、水上移動体を用いて、水上を安心して移動できる。
なお、本実施の形態において、走行軌跡情報取得部は、走行履歴情報が示す2以上の(緯度,経度)から、単純に軌跡線を構成しても良い。
さらに、本実施の形態における処理は、ソフトウェアで実現しても良い。そして、このソフトウェアをソフトウェアダウンロード等により配布しても良い。また、このソフトウェアをCD−ROMなどの記録媒体に記録して流布しても良い。なお、このことは、本明細書における他の実施の形態においても該当する。なお、本実施の形態における地図出力装置1を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータを、水上を含む地図である水上地図を出力する地図出力部と、現在地点を示す位置情報である現在位置情報を連続して取得する現在位置情報取得部と、前記現在位置情報取得部が連続して取得した2以上の現在位置情報を用いて、水上移動体の走行軌跡を示す走行軌跡情報を取得する走行軌跡情報取得部と、前記走行軌跡情報を前記水上地図上に出力する走行軌跡情報出力部として機能させるためのプログラムである。
また、上記プログラムにおいて、前記走行軌跡情報は、走行の軌跡を示す線である軌跡線であり、前記走行軌跡情報取得部は、予め決められた範囲の現在位置情報は、軌跡線上の同一の点となるように、前記走行軌跡情報を取得するものとして、コンピュータを機能させるプログラムであることは好適である。
また、上記プログラムにおいて、前記予め決められた範囲は、前記地図出力部が出力している地図の縮尺に応じて異なるものとして、コンピュータを機能させるプログラムであることは好適である。
また、上記プログラムにおいて、前記走行軌跡情報取得部は、前記地図出力部が出力している地図の縮尺に応じて異なる態様の走行軌跡情報を取得するものとして、コンピュータを機能させるプログラムであることは好適である。
また、上記プログラムにおいて、前記走行軌跡情報取得部は、前記地図出力部が出力している地図の縮尺が小さい場合、前記現在位置情報取得部が連続して取得した2以上の現在位置情報を用いて、2以上のグリッド領域を有する軌跡グリッドである走行軌跡情報を取得し、前記地図出力部が出力している地図の縮尺が大きい場合、前記現在位置情報取得部が連続して取得した2以上の現在位置情報を用いて、軌跡線である走行軌跡情報を取得するものとして、コンピュータを機能させるプログラムであることは好適である。
また、コンピュータがアクセス可能な記録媒体は、走行した履歴に関する情報である1以上の走行履歴情報を格納し得る走行履歴情報格納部を具備し、上記プログラムにおいて、前記現在位置情報取得部が取得した2以上の現在位置情報に対する走行履歴情報を前記走行履歴情報格納部に蓄積する走行履歴情報蓄積部として、コンピュータをさらに機能させ、前記走行軌跡情報取得部は、前記走行履歴情報格納部の1以上の走行履歴情報が示す走行回数に基づいて、異なる属性値を有する走行履歴情報を取得するものとして、コンピュータを機能させるプログラムであることは好適である。
また、上記プログラムにおいて、前記走行軌跡情報取得部は、前記走行履歴情報格納部の1以上の走行履歴情報が示す走行回数に基づいて、異なる線の色の軌跡線である走行軌跡情報を取得するものとして、コンピュータを機能させるプログラムであることは好適である。
また、コンピュータがアクセス可能な記録媒体は、走行した履歴に関する情報である1以上の走行履歴情報を格納し得る走行履歴情報格納部を具備し、上記プログラムにおいて、前記現在位置情報取得部が取得した2以上の現在位置情報に対する走行履歴情報を前記走行履歴情報格納部に蓄積する走行履歴情報蓄積部として、コンピュータをさらに機能させ、前記走行軌跡情報取得部は、前記走行履歴情報格納部の1以上の走行履歴情報が示す走行回数に基づいて、異なる属性値を有する軌跡グリッドである走行履歴情報を取得するものとして、コンピュータを機能させるプログラムであることは好適である。
また、図12は、本明細書で述べたプログラムを実行して、上述した種々の実施の形態の地図出力装置等を実現するコンピュータの外観を示す。上述の実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムで実現され得る。図12は、このコンピュータシステム300の概観図であり、図13は、システム300のブロック図である。
図12において、コンピュータシステム300は、CD−ROMドライブを含むコンピュータ301と、キーボード302と、マウス303と、モニタ304とを含む。
図13において、コンピュータ301は、CD−ROMドライブ3012に加えて、MPU3013と、MPU3013、CD−ROMドライブ3012に接続されたバス3014と、ブートアッププログラム等のプログラムを記憶するためのROM3015と、MPU3013に接続され、アプリケーションプログラムの命令を一時的に記憶するとともに一時記憶空間を提供するためのRAM3016と、アプリケーションプログラム、システムプログラム、及びデータを記憶するためのハードディスク3017とを含む。ここでは、図示しないが、コンピュータ301は、さらに、LANへの接続を提供するネットワークカードを含んでも良い。
コンピュータシステム300に、上述した実施の形態の地図出力装置等の機能を実行させるプログラムは、CD−ROM3101に記憶されて、CD−ROMドライブ3012に挿入され、さらにハードディスク3017に転送されても良い。これに代えて、プログラムは、図示しないネットワークを介してコンピュータ301に送信され、ハードディスク3017に記憶されても良い。プログラムは実行の際にRAM3016にロードされる。プログラムは、CD−ROM3101またはネットワークから直接、ロードされても良い。
プログラムは、コンピュータ301に、上述した実施の形態の地図出力装置等の機能を実行させるオペレーティングシステム(OS)、またはサードパーティープログラム等は、必ずしも含まなくても良い。プログラムは、制御された態様で適切な機能(モジュール)を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいれば良い。コンピュータシステム300がどのように動作するかは周知であり、詳細な説明は省略する。
また、上記プログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
また、上記各実施の形態において、各処理は、単一の装置によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。