(57)【要約】【課題】  画像に映っていない画像をメモリ内に確保することなく、２次元の拡大、縮小、平行移動する描画における計算処理量を削減する。【解決手段】  本発明は、ユーザの空間内の移動に合わせて、メモリ上に格納して画面に表示するコンテンツ情報を常時一定に保つことを目的とするため、２次元の地図全体を複数のブロックに分割して、コンテンツ情報をブロックに関連付け、画面に映っている２次元の地図ブロックを検出し、メモリにロードするコンテンツ情報を決定し、ユーザの移動操作に応じメモリから開放するコンテンツ情報を決定し、新しいコンテンツ情報をロードする。【選択図】  図１
2006127118.tif 000002
【特許請求の範囲】
【請求項１】
コンテンツを表す画像を２次元の地図上に配置して画面に表示し、該２次元平面の拡大、縮小、平行移動するコンテンツ管理型描画装置における、描画方法において、
入力された２次元の地図を同一の大きさの複数のブロックに分割し、予め設定されているコンテンツ情報関連付けルールに基づいて、それぞれのブロックに該コンテンツ情報記憶手段から取得したコンテンツ情報を関連付けてブロック情報記憶手段に格納するブロック分割ステップと、
表示手段に表示されている地図のブロックのブロックＩＤに基づいて、該ブロックに隣接するブロックに関する情報を前記ブロック情報記憶手段から取得して描画情報記憶手段に格納する描画情報取得ステップと、
前記２次元の地図を表示した画面上で、ユーザから入力された移動操作情報に基づいて、前記描画情報記憶手段に、コンテンツ情報を追加、または、削除するコンテンツ情報追加・開放ステップと、
前記コンテンツ情報追加・開放ステップにより、コンテンツ情報が追加または、削除された前記描画情報記憶手段のコンテンツ情報を２次元の地図上に表示する表示ステップと、
を行うことを特徴とするコンテンツ管理型描画方法。
【請求項２】
前記コンテンツ情報追加・開放ステップにおいて、
現在画面に表示しているブロックの周囲に位置するブロックから、前記ユーザが入力した移動操作ベクトルと同じ方向に位置するブロックを検出し、検出したブロック内に含まれるコンテンツ情報と、該ブロックに隣接するブロックに含まれるコンテンツ情報を前記描画情報記憶手段に追加する請求項１記載のコンテンツ管理型描画方法。
【請求項３】
前記コンテンツ情報追加・開放ステップにおいて、
現在画面に表示されているブロックの周囲に位置するブロックから、前記ユーザが入力した移動操作ベクトルと逆方向に位置するブロックを検出し、検出したブロックに含まれるコンテンツ情報と、該ブロックに隣接するブロックに含まれるコンテンツ情報を前記描画情報記憶手段から削除する請求項１記載のコンテンツ管理型描画方法。
【請求項４】
前記ブロック分割ステップにおいて、
前記コンテンツ情報関連付けルールを用いて、コンテンツを配置した際のすべてのコンテンツを含む最大矩形を算出し、
算出した前記最大矩形を予め設定したコンテンツの数に関するパラメータと前記コンテンツ情報記憶手段に格納されている全コンテンツの総数に基づいて分割し、
分割されたブロックに含まれるコンテンツの数が所定の条件以下であれば、再分割ルールに基づいて、ブロックの大きさを縮小し、該ブロック内に含まれるコンテンツ数が該条件を満たすまで再分割する請求項１記載のコンテンツ管理型描画方法。
【請求項５】
前記再分割ルールが、現在ブロックに含まれるコンテンツ数と設定したパラメータのコンテンツ数の割合が予め設定された条件以下であれば、現在ブロックに含まれるコンテンツ数と設定したパラメータのコンテンツ数の割合に応じてブロックを縮小して再分割し、設定された条件以上であれば、該ブロック内に含まれるコンテンツの中でブロックの左上の頂点から最も遠い点に合わせてブロックを縮小する請求項４記載のコンテンツ管理型描画方法。
【請求項６】
コンテンツを表す画像を２次元の地図上に配置して画面に表示し、該２次元平面の拡大、縮小、平行移動するコンテンツ管理型描画装置であって、
入力された２次元の地図を同一の大きさの複数のブロックに分割し、予め設定されているコンテンツ情報関連付けルールに基づいて、それぞれのブロックに該コンテンツ情報記憶手段から取得したコンテンツ情報を関連付けてブロック情報記憶手段に格納するブロック分割手段と、
表示手段に表示されている地図のブロックのブロックＩＤに基づいて、該ブロックに隣接するブロックに関する情報を前記ブロック情報記憶手段から取得して描画情報記憶手段に格納する描画情報取得手段と、
前記２次元の地図を表示した画面上で、ユーザから入力された移動操作情報に基づいて、前記描画情報記憶手段に、コンテンツ情報を追加、または、削除するコンテンツ情報追加・開放手段と、
前記コンテンツ情報追加・開放手段によりコンテンツ情報が追加または、削除された前記描画情報記憶手段のコンテンツ情報を、表示手段の２次元の地図上に表示する表示制御手段と、
を有することを特徴とするコンテンツ管理型描画装置。
【請求項７】
前記コンテンツ情報追加・開放手段は、
現在画面に表示しているブロックの周囲に位置するブロックから、前記ユーザが入力した移動操作ベクトルと同じ方向に位置するブロックを検出し、検出したブロック内に含まれるコンテンツ情報と、該ブロックに隣接するブロックに含まれるコンテンツ情報を前記描画情報記憶手段に追加する追加手段を含む請求項６記載のコンテンツ管理型描画装置。
【請求項８】
前記コンテンツ情報追加・開放手段は、
現在画面に表示されているブロックの周囲に位置するブロックから、前記ユーザが入力した移動操作ベクトルと逆方向に位置するブロックを検出し、検出したブロックに含まれるコンテンツ情報と、該ブロックに隣接するブロックに含まれるコンテンツ情報を前記描画情報記憶手段から削除する削除手段を含む請求項６記載のコンテンツ管理型描画装置。
【請求項９】
前記コンテンツ管理手段は、
コンテンツ情報関連付けルールを用いて、コンテンツを配置した際のすべてのコンテンツを含む最大矩形を算出する最大矩形算出手段と、
算出した前記最大矩形を予め設定したコンテンツの数に関するパラメータと前記コンテンツ情報記憶手段に格納されている全コンテンツの総数に基づいて分割する最大矩形分割手段と、
分割されたブロックに含まれるコンテンツの数が所定の条件以下であれば、再分割ルールに基づいて、ブロックの大きさを縮小し、該ブロック内に含まれるコンテンツ数が該条件を満たすまで再分割する再分割手段と、を含む請求項６記載のコンテンツ管理型描画装置。
【請求項１０】
前記再分割手段は、
前記再分割ルールが、現在ブロックに含まれるコンテンツ数と設定したパラメータのコンテンツ数の割合が予め設定された条件以下であれば、現在ブロックに含まれるコンテンツ数と設定したパラメータのコンテンツ数の割合に応じてブロックを縮小して再分割し、設定された条件以上であれば、該ブロック内に含まれるコンテンツの中でブロックの左上の頂点から最も遠い点に合わせてブロックを縮小する手段を含む請求項９記載のコンテンツ管理型描画装置。
【請求項１１】
コンテンツを表す画像を２次元の地図上に配置して画面に表示し、該２次元平面の拡大、縮小、平行移動するコンテンツ管理型描画プログラムであって、
前記請求項１乃至５記載のコンテンツ管理型描画方法を実現するための処理をコンピュータに実行させることを特徴とするコンテンツ管理型描画プログラム。
【請求項１２】
コンテンツを表す画像を２次元の地図上に配置して画面に表示し、該２次元平面の拡大、縮小、平行移動するコンテンツ管理型描画プログラムを格納した記憶媒体であって、
前記請求項１乃至５記載のコンテンツ管理型描画方法を実現するための処理をコンピュータに実行させるプログラムを格納したことを特徴とするコンテンツ管理型描画プログラムを格納した記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンテンツ管理型描画方法及び装置及びプログラム及びプログラムを格納した記憶媒体に係り、特に、２次元の地図上にコンテンツを表す画像を配置して画面に表示し、その２次元の地図の拡大、縮小、平行移動における描画の計算処理量を軽減するためのコンテンツ管理型描画方法及び装置及びプログラム及びプログラムを格納した記憶媒体に関する。
【背景技術】
【０００２】
これまで、２次元の地図上にコンテンツを表す画像を複数配置して表示するシステムとしてアソシアガイドが提案されている。このアソシアガイドでは、配置した画像が全て１画面に表示するため２次元の地図を縮小しユーザに提示している。ユーザは、１画面に表示された画像の配置を見て、地図上で興味のある場所を拡大、上限左右の平行移動をすることができる。ここで、地図の拡大、上下左右の操作においては、配置している画像の位置を動的に変化させている。
【０００３】
上記の地図、地図上の画像に対して拡大、縮小、上下左右の平行移動した全体の画像をユーザに動的に提示することにより、アソシアガイドでは、ユーザに２次元の地図上でアズームイン、ズームアウトやパンを提供している（例えば、特許文献１参照）。
【特許文献１】特開２００３−７６７１８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
アソシアガイドでは、２次元の地図の拡大、上下左右の平行移動を実現するために、コンテンツを表す全ての画像に対して、画像の実体、画像の配置座標、その他のコンテンツに対する情報をメモリ上に確保しており、２次元の地図の操作毎に全ての画像に対して拡大、縮小、上下左右の平行移動処理を行っている。それにより、２次元の地図を拡大した場合など、画面に映っていない画像までもメモリ内に確保し、平行移動においても画面に映っていない画像の座標計算処理を行っている。そのため、２次元の地図上に配置する画像数を大きくなると、地図の拡大、縮小、上下左右の平行移動での計算処理が多くなる問題がある。
【０００５】
本発明は、上記の点に鑑みなされたもので、画像に映っていない画像をメモリ内に確保することなく、コンテンツを表す画像を２次元の地図上に配置して画面に表示し、その２次元の拡大、縮小、平行移動する描画における計算処理量を削減することが可能なコンテンツ管理型描画方法及び装置及びプログラム及びプログラムを格納した記憶媒体を提供することを目的とする。
【課題を解決するための手段】
【０００６】
図１は、本発明の原理を説明するための図である。
【０００７】
本発明（請求項１）は、コンテンツを表す画像を２次元の地図上に配置して画面に表示し、該２次元平面の拡大、縮小、平行移動するコンテンツ管理型描画装置における、描画方法において、
入力された２次元の地図を同一の大きさの複数のブロックに分割し、予め設定されているコンテンツ情報関連付けルールに基づいて、それぞれのブロックに該コンテンツ情報記憶手段から取得したコンテンツ情報を関連付けてブロック情報記憶手段に格納するブロック分割ステップ（ステップ１）と、
表示手段に表示されている地図のブロックのブロックＩＤに基づいて、該ブロックに隣接するブロックに関する情報をブロック情報記憶手段から取得して描画情報記憶手段に格納する描画情報取得ステップ（ステップ２）と、
２次元の地図を表示した画面上で、ユーザから入力された移動操作情報に基づいて、該描画情報記憶手段に、コンテンツ情報を追加、または、削除するコンテンツ情報追加・開放ステップ（ステップ３）と、
コンテンツ情報追加・開放ステップにより、コンテンツ情報が追加または、削除された描画情報記憶手段のコンテンツ情報を２次元の地図上に表示する表示ステップ（ステップ４）と、を行う。
【０００８】
本発明（請求項２）は、コンテンツ情報追加・開放ステップ（ステップ３）において、
現在画面に表示しているブロックの周囲に位置するブロックから、ユーザが入力した移動操作ベクトルと同じ方向に位置するブロックを検出し、検出したブロック内に含まれるコンテンツ情報と、該ブロックに隣接するブロックに含まれるコンテンツ情報を描画情報記憶手段に追加する。
【０００９】
本発明（請求項３）は、コンテンツ情報追加・開放ステップ（ステップ３）において、
現在画面に表示されているブロックの周囲に位置するブロックから、ユーザが入力した移動操作ベクトルと逆方向に位置するブロックを検出し、検出したブロックに含まれるコンテンツ情報と、該ブロックに隣接するブロックに含まれるコンテンツ情報を描画情報記憶手段から削除する。
【００１０】
本発明（請求項４）は、ブロック分割ステップ（ステップ１）において、
コンテンツ情報関連付けルールを用いて、コンテンツを配置した際のすべてのコンテンツを含む最大矩形を算出し、
算出した最大矩形を予め設定したコンテンツの数に関するパラメータとコンテンツ情報記憶手段に格納されている全コンテンツの総数に基づいて分割し、
分割されたブロックに含まれるコンテンツの数が所定の条件以下であれば、再分割ルールに基づいて、ブロックの大きさを縮小し、該ブロック内に含まれるコンテンツ数が該条件を満たすまで再分割する。
【００１１】
また、本発明（請求項５）は、再分割ルールが、現在ブロックに含まれるコンテンツ数と設定したパラメータのコンテンツ数の割合が予め設定された条件以下であれば、現在ブロックに含まれるコンテンツ数と設定したパラメータのコンテンツ数の割合に応じてブロックを縮小して再分割し、設定された条件以上であれば、該ブロック内に含まれるコンテンツの中でブロックの左上の頂点から最も遠い点に合わせてブロックを縮小する。
【００１２】
図２は、本発明の原理構成図である。
【００１３】
本発明（請求項６）は、コンテンツを表す画像を２次元の地図上に配置して画面に表示し、該２次元平面の拡大、縮小、平行移動するコンテンツ管理型描画装置であって、
入力された２次元の地図を同一の大きさの複数のブロックに分割し、予め設定されているコンテンツ情報関連付けルールに基づいて、それぞれのブロックに該コンテンツ情報記憶手段１１から取得したコンテンツ情報を関連付けてブロック情報記憶手段１０に格納するブロック分割手段２０と、
表示手段３に表示されている地図のブロックのブロックＩＤに基づいて、該ブロックに隣接するブロックに関する情報をブロック情報記憶手段１０から取得して描画情報記憶手段９に格納する描画情報取得手段３０と、
２次元の地図を表示した画面上で、ユーザから入力手段より入力された移動操作情報に基づいて、描画情報記憶手段９に、コンテンツ情報を追加、または、削除するコンテンツ情報追加・開放手段４０と、
コンテンツ情報追加・開放手段４０により、コンテンツ情報が追加または、削除された描画情報記憶手段９のコンテンツ情報を表示手段３の２次元の地図上に表示する表示制御手段５０と、を有する。
【００１４】
本発明（請求項７）は、コンテンツ情報追加・開放手段４０において、
現在画面に表示しているブロックの周囲に位置するブロックから、ユーザが入力した移動操作ベクトルと同じ方向に位置するブロックを検出し、検出したブロック内に含まれるコンテンツ情報と、該ブロックに隣接するブロックに含まれるコンテンツ情報を描画情報記憶手段９に追加する追加手段を含む。
【００１５】
また、本発明（請求項８）は、コンテンツ情報追加・開放手段４０において、
現在画面に表示されているブロックの周囲に位置するブロックから、ユーザが入力した移動操作ベクトルと逆方向に位置するブロックを検出し、検出したブロックに含まれるコンテンツ情報と、該ブロックに隣接するブロックに含まれるコンテンツ情報を描画情報記憶手段９から削除する削除手段を含む。
【００１６】
また、本発明（請求項９）は、コンテンツ管理手段２０において、
コンテンツ情報関連付けルールを用いて、コンテンツを配置した際のすべてのコンテンツを含む最大矩形を算出する最大矩形算出手段と、
算出した最大矩形を予め設定したコンテンツの数に関するパラメータとコンテンツ情報記憶手段に格納されている全コンテンツの総数に基づいて分割する最大矩形分割手段と、
分割されたブロックに含まれるコンテンツの数が所定の条件以下であれば、再分割ルールに基づいて、ブロックの大きさを縮小し、該ブロック内に含まれるコンテンツ数が該条件を満たすまで再分割する再分割手段と、を含む。
【００１７】
また、本発明は、再分割手段において、再分割ルールが、現在ブロックに含まれるコンテンツ数と設定したパラメータのコンテンツ数の割合が予め設定された条件以下であれば、現在ブロックに含まれるコンテンツ数と設定したパラメータのコンテンツ数の割合に応じてブロックを縮小して再分割し、設定された条件以上であれば、該ブロック内に含まれるコンテンツの中でブロックの左上の頂点から最も遠い点に合わせてブロックを縮小する手段を含む。
【００１８】
本発明（請求項１１）は、コンテンツを表す画像を２次元の地図上に配置して画面に表示し、該２次元平面の拡大、縮小、平行移動するコンテンツ管理型描画プログラムであって、請求項１乃至５記載のコンテンツ管理型描画方法を実現するための処理をコンピュータに実行させる。
【００１９】
本発明（請求項１２）は、コンテンツを表す画像を２次元の地図上に配置して画面に表示し、該２次元平面の拡大、縮小、平行移動するコンテンツ管理型描画プログラムを格納した記憶媒体であって、請求項１乃至５記載のコンテンツ管理型描画方法を実現するための処理をコンピュータに実行させるプログラムを格納した記憶媒体である。
【発明の効果】
【００２０】
上記のように、本発明では、２次元の地図全体を複数のブロックに分割して、分割したブロック毎にコンテンツ情報を関連付けて管理し、記憶手段（メモリ）にロードするコンテンツ情報を、ユーザの画面に表示している地図が属するブロックに応じて、その周りのブロックに含まれるコンテンツ情報をメモリにロードする。また、地図の拡大、縮小、上下左右の平行移動に応じてロード対象とするブロックを決定し、そのブロックとその周りのブロックに含まれるコンテンツ情報のみをメモリにロードしている。
【００２１】
これまでの、常に地図全体に含まれる全てのコンテンツ情報をメモリにロードした空間移動におけるメモリ使用量が、本発明により、空間移動におけるメモリ使用量が予め設定した一定のメモリ使用量に抑えることができる。そのため、描画における計算処理量を大きく改善できる。
【発明を実施するための最良の形態】
【００２２】
以下、図面と共に本発明の実施の形態を説明する。
【００２３】
本発明は、ユーザの空間内の移動に合わせて、メモリ上に格納して画面に表示するコンテンツ情報を常時一定に保つことを目的とするため、２次元の地図全体を複数のブロックに分割して、コンテンツ情報をブロックに関連付け、画面に映っている２次元の地図ブロックを検出し、メモリにロードするコンテンツ情報を決定し、ユーザの移動操作に応じメモリから開放するコンテンツ情報を決定し、新しいコンテンツ情報をロードするものである。
【００２４】
ここでコンテンツ管理型描画装置のうち、２次元の地図全体を複数のブロックに分割して、コンテンツ情報をブロックに関連付けるブロック分割手段を、図３を用いて説明する。
【００２５】
図３は、本発明の一実施の形態におけるコンテンツ管理型描画装置のブロック分割手段の構成を示す。
【００２６】
図３に示すブロック分割手段は、初期分割制御部５、地図分割制御部６、クラスタリング生成部７、ブロック情報記憶部１０、コンテンツ情報記憶部１１から構成される。
【００２７】
図４は、本発明の一実施の形態におけるブロック分割手段の動作のフローチャートである。
【００２８】
ステップ１０１）  まず、初めに、メモリ（図示せず）内に確保する最大のコンテンツ数Ｎｍａｘを設定する。また、分割する１ブロックの縦横比を図５に示すように、Ｙ軸方向のブロックの長さ比Ｐａ、Ｘ軸方向のブロックの長さ比Ｐｂとメモリにする。ここで、Ｐａ，Ｐｂは、ブロックの縦の長さに対する横の長さの割合など、パーセンテージでも構わない。また、Ｎｍａｘとブロック内に含まれるコンテンツ数の割合に応じて再分割方法を決定するため、その閾値となる収束発散係数Ｈをメモリに設定する。なお、当該初期設定処理は、入力装置（図示せず）からユーザにより入力されるものとする。
【００２９】
ステップ１０２）  初期分割制御部５がコンテンツ情報記憶部１１にアクセスし、全てのコンテンツ情報から２次元の地図上での座標であるＸ座標、Ｙ座標に対し、Ｘ座標の最大の座標Ｘｍａｘ、最小の座標Ｘｍｉｎ、Ｙ座標の最大Ｙｍａｘ，最小の座標Ｙｍｉｎを求め、２次元の地図上の全てのコンテンツを包含する矩形を決定する。
【００３０】
ステップ１０３）  本発明では、ユーザに表示している地図が属するブロックを中心として、そのブロックに隣接する図６のような左上隣接ブロック、真上隣接ブロック、右上隣接ブロック、真右隣接ブロック、右下隣接ブロック、真下隣接ブロック、左下隣接ブロック、真左隣接ブロックに関連付けられたコンテンツ情報をメモリにロードする。そのため、１ブロックに含まれるコンテンツ情報は（Ｎｍａｘ／９）／Ｎ以下でなければならない。そのため、当該ステップ１０２において、初期分割制御部５が、１ブロックに関連付けるコンテンツ数Ｎｍａｘ／９を算出し、コンテンツの総和であるＮｓｕｍを用いてＮｓｕｍ／（Ｎｍａｘ／９）の値で小数点以下を切り上げした値をＶとし、Ｖをステップ１０１で求めた矩形の初期分割数とする。
【００３１】
ステップ１０４）  初期分割制御部５がステップ１０３で算出したＶを基に、ステップ１０２で決定した矩形を分割する１ブロックの大きさを求める。ここで、
縦の分割数×横の分割数＝Ｖ
（矩形の縦の長さ／１ブロックの縦の長さ）×（矩形の横の長さ／１ブロックの横の長さ）＝Ｖ
となるため、ブロックの縦と横の長さ比Ｐａ，Ｐｂに掛け合わせて、ブロックの縦横の長さを決定する変数ｃ（ｃ＞０）とし、下記の式を解いてｃの値を求める。
【００３２】
１ブロックの縦の長さ  Ｔａ＝Ｐａ×ｃ
１ブロックの横の長さ  Ｔｂ＝Ｐｂ×ｃ
{│（Ｘｍａｘ−Ｘｍｉｎ）│／Ｔａ}×{│(Ｙｍａｘ−Ｙｍｉｎ)│}／Ｔｂ＝Ｖ
上記の式からｃを求めた後、１つのブロックの縦の大きさＴａ、１ブロックの横の大きさＴｂを求めて、分割するブロックの大きさを決定する。また、矩形を全て包含するブロック集合を生成するため、│（Ｘｍａｘ―Ｘｍｉｎ）│／Ｔａの小数点を切り上げしたものをステップ１０２で求めた矩形において、縦に並ぶブロックの総数を分割数Ｖａ、│(Ｙｍａｘ−Ｙｍｉｎ)│／Ｔｂの小数点を切り上げしたものを矩形の横に並ぶブロックの総数を分割数Ｖｂとし、Ｔａ，Ｔｂ，Ｖａ，Ｖｂ，Ｘｍａｘ，Ｘｍｉｎ，Ｙｍａｘ，Ｙｍｉｎを地図分割制御部６に出力する。
【００３３】
ステップ１０５）  地図分割制御部６が、Ｔａ，Ｔｂ，Ｖａ，Ｖｂ矩形の縦の長さ│Ｘｍａｘ−Ｘｍｉｎ│、矩形の横の長さ│Ｙｍａｘ−Ｙｍｉｎ│をもとに矩形を図７に示すように、ブロックが矩形の全てを包含するように矩形を分割する。分割した後、Ｔａ，Ｔｂ，Ｖａ，Ｖｂの矩形の縦の長さ│Ｘｍａｘ−Ｘｍｉｎ│、矩形の横の長さ│Ｙｍａｘ−Ｙｍｉｎ│と、各ブロックにＩＤを付与し、各ブロックの左上の座標をブロック情報記憶部１０に格納する。
【００３４】
ステップ１０６）  クラスタリング生成部７が、コンテンツ情報記憶部１１、ブロック情報記憶部１０にアクセスし、ブロック情報記憶部１０内の各ブロックに対して、ブロック内に含まれるコンテンツの数を集計し、最もコンテンツを多く含むブロックのコンテンツ数をＮとする。ここで、Ｎが（Ｎｍａｘ／９）／Ｎより大きければステップ１０７に移行し、(Ｎｍａｘ／９)／Ｎ以下であればステップ１０８に移行する。
【００３５】
ステップ１０７）  ステップ１０６のＮｍａｘを用いて、（Ｎｍａｘ／９）／Ｎが収束係数Ｈ未満であれば、
Ｔａ’＝(Ｎｍａｘ／９)／Ｎ×Ｔａ
Ｔｂ’＝（Ｎｍａｘ／９）Ｎ×Ｔｂ
Ｖａ’＝│Ｘｍａｘ−Ｘｍｉｎ│／Ｔａ’
Ｖｂ’＝│Ｙｍａｘ−Ｙｍｉｎ│／Ｔｂ’
を計算し、Ｖａ’，Ｖｂ’の小数点以下を切り上げて、ブロック情報記憶部１０内のＴａ，Ｔｂ，Ｖａ，Ｖｂの値をＴａ’，Ｔｂ’，Ｖａ’，Ｖｂ’に更新する。更新後にステップ１０５に移行する。もし、(Ｎｍａｘ／９)／Ｎが収束係数Ｈ以上であれば、最もコンテンツ数を多く含むブロックの左上の座標から、そのブロック内に含まれる全てのコンテンツとの距離を計算し、最も距離の遠いコンテンツとブロックの左上の座標を用いて、
Ｌｘ＝Ｔａ−│ブロック左上Ｘ座標−コンテンツのＸ座標│
Ｌｙ＝Ｔｂ−│ブロック左上Ｙ座標−コンテンツのＹ座標│
を算出し、Ｌｘ×Ｐａ／ＰｂとＬｙを比較し、Ｌｘ×Ｐａ／Ｐｂの方が大きければＬに合わせてブロックを縮小するため、
Ｔｂ’＝Ｔｂ−Ｌｙ
Ｔａ’＝Ｐａ／Ｐｂ×Ｔｂ’
Ｖａ’＝│(Ｘｍａｘ−Ｘｍｉｎ)│Ｔａ’
Ｖｂ’＝│(Ｙｍａｘ−Ｙｍｉｎ)│Ｔｂ’
として、Ｖａ’，Ｖｂ’小数点以下を切り上げて、ブロック情報記憶部１０内のＴａ，Ｔｂ，Ｖａ，Ｖｂの値をＴａ’，Ｔｂ’，Ｖａ’，Ｖｂ’に更新する。図８にＬｙに合わせてブロックを縮小した例を示す。更新後にステップ１０５に移行する。もし、Ｌｘ×Ｐａ／Ｐｂの方が小さければＬｘに合わせてブロックを縮小するため、
Ｔａ’＝Ｔａ−Ｌｘ
Ｔｂ’＝Ｐｂ／Ｐａ×Ｔａ’
Ｖａ’＝│(Ｘｍａｘ−Ｘｍｉｎ)│Ｔａ’
Ｖｂ’＝│(Ｙｍａｘ−Ｙｍｉｎ)│Ｔｂ’
として、Ｖａ’，Ｖｂ’の小数点以下を切り上げて、ブロック情報記憶部１０内のＴａ，Ｔｂ，Ｖａ，Ｖｂの値をＴａ’，Ｔｂ’，Ｖａ’，Ｖｂ’に更新する。図９に、Ｌｙに合わせてブロックを縮小した例を示す。更新後にステップ１０５に移行する。
【００３６】
ステップ１０８）  クラスタリング生成部７が、コンテンツ情報記憶部１１、ブロック情報記憶部１０にアクセスし、各ブロックの左上の座標と、ブロックに含まれる全てのコンテンツのコンテンツＩＤのリストをブロック情報記憶部１０内に格納する。また、各ブロックに対して、図６を用いてそのブロックが隣接する左上隣接ブロック、真上隣接ブロック、右上隣接ブロック、真右隣接ブロック、右下隣接ブロック、真下隣接ブロック、左下隣接ブロック、真左隣接ブロックのブロックＩＤをブロック情報記憶部１０に格納する。
【００３７】
次に、メモリ（後述する描画情報記憶部）にロードするコンテンツ情報を、ユーザの画面に表示されている地図の位置に応じて決定する。そこで、画面に映っている地図ブロックを検出し、メモリにロードするコンテンツ情報を決定する描画情報取得手段について説明する。
【００３８】
図１０は、本発明の一実施の形態における描画情報取得手段の構成を示す。
【００３９】
同図に示す描画情報取得手段は、地図表示部３、描画処理制御部４、描画情報記憶部９、ブロック情報記憶部１０、コンテンツ情報記憶部１１から構成される。
【００４０】
上記の描画情報取得手段の動作を説明する。
【００４１】
図１１は、本発明の一実施の形態における描画情報取得手段の動作のフローチャートである。
【００４２】
ステップ２０１）  地図表示部３に表示されている地図の画面内中央の地図座標を，描画情報制御部４に出力する。描画処理制御部４は、ブロック情報記憶部１０にアクセスし、地図表示部３から出力された画面内中央の地図上の座標を元に、その座標を含まれるブロックのブロックＩＤを検出する。
【００４３】
ステップ２０２）  描画処理制御部４が、ブロック情報記憶部１０にアクセスし、ステップ２０１で検出したブロックＩＤが隣接する左上隣接ブロックＩＤ、真上隣接ブロックＩＤ、右上隣接ブロックＩＤ、真右隣接ブロックＩＤ、右下隣接ブロックＩＤ、真下隣接ブロックＩＤ、左下隣接ブロックＩＤ、真左隣接ブロックＩＤをブロック情報記憶部１０から抽出し、前述の９個のブロックＩＤに対応するコンテンツのコンテンツＩＤを元に、コンテンツ情報記憶部１１にアクセスし、該当するコンテンツのコンテンツタイトル、代表画像、ＵＲＬ、Ｘ座標、Ｙ座標を描画情報記憶部９に格納する。
【００４４】
ステップ２０３）  描画処理制御部４が描画情報記憶部９にある全てのコンテンツのＸ座標、Ｙ座標に代表画像とタイトルを地図表示部３へ出力し、地図表示部３にコンテンツ情報を表示する。
【００４５】
次に、本発明では、地図の拡大、縮小、上下左右の平行移動の操作において、メモリ（前述の描画情報記憶部９）上にロードするコンテンツ情報を常に一定に保つため、移動操作に応じて動的にメモリ内のコンテンツ情報を開放、追加を行う。そこで、以下に、ユーザの移動操作に応じてメモリから開放するコンテンツ情報を決定し、新しいコンテンツ情報を、描画情報記憶部にロードするコンテンツ情報開放・追加手段について図１０を用いて説明する。
【００４６】
図１２は、本発明の一実施の形態におけるコンテンツ情報追加・開放手段の動作のフローチャートである。
【００４７】
ステップ３０１）  地図表示部３に表示されている地図の画面内中央の地図座標と、ユーザが入力した移動方向ベクトルを、描画処理制御部４に出力する。描画処理制御部４は、ブロック情報記憶部１０にアクセスし、画面内中央の地図座標が含まれるブロックＩＤを抽出し、移動方向ベクトルを図１３に示す移動方向決定図を用いて移動方向ベクトルの向きが属する領域番号を決定する。
【００４８】
ステップ３０２）  描画処理制御部４がステップ３０１で検出したブロックＩＤと領域番号に対し、図１４に示すメモリ開放表に従って領域番号から開放するブロックを決定し、ブロックＩＤの隣接ブロックにおいて開放ブロックに含まれるコンテンツ情報を描画情報記憶部９から削除する。なお、ここでは、メモリ開放表は、領域番号とメモリ開放ブロックから構成され、予め描画処理制御部４のメモリ（図示せず）に格納されているものとするが、記憶手段に予め格納されていてもよい。
【００４９】
ステップ３０３）  描画処理制御部４がステップ３０１で検出したブロックＩＤと領域番号に対し、図１５のメモリ追加表に従って、領域番号から追加するブロックを決定し、ブロックＩＤの隣接ブロックにおいて追加ブロックに含まれるコンテンツ情報をコンテンツ情報記憶部１１にアクセスして描画情報記憶部９に追加する。
【００５０】
ステップ３０４）  描画処理制御部４がコンテンツ情報記憶部１１に追加したコンテンツ情報を地図表示部３に出力し、地図表示部３は当該コンテンツ情報を表示する。
【実施例】
【００５１】
以下、本発明の実施例を図面と共に説明する。
【００５２】
図１６は、本発明の一実施例のコンテンツ管理型描画装置の構成を示す。
【００５３】
同図において、図３、図１０と同一構成部分については、同一符号を付す。
【００５４】
図１６に示すコンテンツ管理型描画装置は、移動操作入力部１、概観地図表示部２、地図表示部３、描画処理制御部４、初期分割制御部５、地図分割記憶部６、クラスタリング生成部７、概観地図情報記憶部８、描画情報記憶部９、ブロック情報記憶部１０、コンテンツ情報記憶部１１から構成される。
【００５５】
以下に示す実施例では、メモリ（図示せず）内に確保する最大のコンテンツ数Ｎｍａｘを「２００」、分割する１ブロックのＹ軸方向のブロックの長さの割合Ｐａを「４」、Ｘ軸方向のブロックの長さの割合Ｐｂを「５」、また、収束発散係数Ｈを「０．９５」とする。
【００５６】
（１）  まず、初めに、ブロック分割手段として、初期分割制御部５が、コンテンツ情報記憶部１１にアクセスし、全てのコンテンツを包含する矩形の大きさを求める。ここで、コンテンツ情報記憶部１１には、１つのコンテンツ情報として、図１７に示すような、コンテンツ情報項目名として、コンテンツＩＤ、コンテンツタイトル、代表画像、空間Ｘ座標、空間Ｙ座標から構成される情報が格納されており、このコンテンツ情報が複数格納されている。本実施例では、コンテンツ情報記憶部１１にこれらのコンテンツ情報が９０００個格納されているものとする。これらの９０００個のコンテンツ情報から空間Ｘ座標、空間Ｙ座標における座標の最大値Ｘｍａｘ，Ｙｍａｘと最小値Ｘｍｉｎ，Ｙｍｉｎを算出する。ここで、初期分割制御部５が算出した結果が、
・Ｘｍａｘ＝１００
・Ｘｍｉｎ＝０
・Ｙｍａｘ＝１００
・Ｙｍｉｎ＝０
であるものとする。次に、コンテンツ数Ｎｍａｘの「２００」を用いて、１ブロックに関連付ける数を算出する。
【００５７】
Ｎｍａｘ／９＝２００／９＝２２．２２
上記から１ブロックに関連付ける数を２２個とする。
【００５８】
次に、コンテンツの総数Ｎｓｕｍである「９０００」を用いて、矩形の初期の分割数Ｖを計算する。
【００５９】
Ｎｓｕｍ／（１ブロックに関連付ける数）＝９０００／２２＝４０９．１
上記の値から小数点以下を切り上げて「４１０」を矩形の初期の分割数Ｖとする。
【００６０】
（２）  次に、初期分割制御部５は、上記で算出した初期の分割数Ｖを元に、前の矩形を分割する１ブロックの大きさを求める。ここで、ｃ(ｃ＞０)を分割変数とし、１ブロックの縦の長さＴａと１ブロックの横の長さＴｂを
Ｔａ＝Ｐａ×ｃ＝４ｃ
Ｔｂ＝Ｐｂ×ｃ＝５ｃ
とする。そのため、
縦の分割数×横の分割数＝Ｖ
(矩形の縦の長さ／１ブロックの縦の長さ)×（矩形の横の長さ／１ブロックの横の長さ）＝Ｖ
{│(Ｘｍａｘ−Ｘｍｉｎ)│／Ｔａ}×{│(Ｙｍａｘ−Ｙｍｉｎ)│／Ｔｂ}＝Ｖ
から、
{│（１００−０)│／４ｃ}×{│(１００−０)│}／５ｃ＝４１０
(１００／４ｃ)×（１００／５ｃ）＝４１０
１００００／２０ｃ２＝４１０
５００ｃ２＝４１０
ｃ２＝０．８２
ｃ＝０．９１
ｃを「０．９１」とする。このｃとＸｍａｘ、Ｘｍｉｎ、Ｙｍａｘ、Ｙｍｉｎとを用いてＴａ、Ｔｂ、Ｖａ、Ｖｂを求める。
【００６１】
Ｔａ＝Ｐａ×ｃ＝４ｃ＝４×０．９１＝３．６４
Ｔｂ＝Ｐｂ×ｃ＝５ｃ＝５×０．９１＝４．５５
Ｖａ＝│(Ｘｍａｘ−Ｘｍｉｎ)│／Ｔａ＝│（１００−０）｜／３．６４＝２７．４７
Ｖｂ＝│(Ｙｍａｘ−Ｙｍｉｎ)│／Ｔｂ＝│（１００−０)｜／４．５５＝２１．９８
これらのＴａ、Ｔｂ、Ｖａの小数点以下を切り上げた「２８」、Ｖｂの小数点以下を切り上げた「２２」、Ｘｍａｘ、Ｘｍｉｎ、Ｙｍａｘ、Ｙｍｉｎを地図分割制御部６に出力する。
【００６２】
（３）  地図分割制御部６が、初期分割制御部５から出力結果を受信するとＴａ、Ｔｂ、Ｖａ、Ｖｂ、矩形の縦の長さ│Ｘｍａｘ−Ｘｍｉｎ│、矩形の横の長さ│Ｙｍａｘ−Ｙｍｉｎ│を元に矩形を分割する。分割した図を図１８に示す。また、それぞれのブロックに一意的なＩＤを付与し、図１８に示しているブロックＩＤ（Ｂ１−００１など）と、各ブロックの左上の座標をブロック情報記憶部１０に格納する。このブロックＩＤとブロックの左上の座標をブロック情報記憶部１０に格納した例を図１９に示す。
【００６３】
（４）  次に、クラスタリング生成部７は、ブロック情報記憶部１０内に格納したブロックに含まれるコンテンツの数を算出する。ブロックに含まれるコンテンツの数を算出するには、ブロック情報記憶部１０にアクセスして当該記憶部１０内の先頭のブロックの左上Ｘ座標、左上Ｙ座標を抽出し、コンテンツ情報記憶部１１にアクセスして全てのコンテンツの空間Ｘ座標、空間Ｙ座標に対し、
１）ブロックの左上Ｘ座標≦コンテンツの空間Ｘ座標＜ブロックの左上Ｘ座標＋Ｔｂ
２）ブロックの左上Ｙ座標≦コンテンツの空間Ｙ座標＜ブロックの左上Ｙ座標＋Ｔａ
上記の１）、２）を両方満たすコンテンツの数を算出する。算出したら、ブロック情報記憶部１０にコンテンツの数を格納する。これらの計算をブロック情報記憶部１０内にある全てのブロックに対して行う。その結果を図２０に示す。
【００６４】
（５）  クラスタリング生成部７は、ブロック情報記憶部１０に格納した各ブロックに含まれるコンテンツの数が１ブロックに関連付けるコンテンツ数の最大値であるＮｍａｘ／９＝２２以上のブロックがあるかどうか調べる。現在は、図２０に示すように最大値「４４」があるため、（Ｎｍａｘ／９）／Ｎの値を算出して収束係数Ｈと比較する。
【００６５】
（Ｎｍａｘ／９）／Ｎ−２２／４４＝０．５
上記から収束係数Ｈである「０．９５」よりも小さいため、下記の
Ｔａ’＝（Ｎｍａｘ／９）／Ｎ×Ｔａ
Ｔｂ’＝（Ｎｍａｘ／９）／Ｎ×Ｔｂ
Ｖａ’＝│（Ｘｍａｘ−Ｘｍｉｎ）│／Ｔａ’ 
Ｖｂ’＝│（Ｙｍａｘ−Ｙｍｉｎ）│／Ｔｂ’ 
を計算する。
【００６６】
Ｔａ’＝（Ｎｍａｘ／９）／Ｎ×Ｔａ＝０．５×３．６４＝１．８２
Ｔｂ’＝（Ｎｍａｘ／９）／Ｎ×Ｔｂ＝０．５×４．５５＝２．２７５
Ｖａ’＝│（Ｘｍａｘ−Ｘｍｉｎ）│／Ｔａ’ ＝１００／１．８２＝５４．９ 
Ｖｂ’＝│（Ｙｍａｘ−Ｙｍｉｎ）│／Ｔｂ’ ＝１００／２．２７５＝４３．９
これらのＴａ’、Ｔｂ’、Ｖａ’、Ｖｂ’の小数点以下を切り上げた「５５」、Ｖｂ’の小数点以下を切り上げた「４４」をそれぞれＴａ、Ｔｂ、Ｖａ、Ｖｂとして用い、再分割を行う。
【００６７】
Ｔａ、Ｔｂ、Ｖａ、Ｖｂとして用いて分割した例を図２１に示す。また、それぞれのブロックに新たな一意的なＩＤを付与し、ブロックＩＤと、各ブロックの左上の座標をブロック情報記憶部１０に格納する。また、ブロックに含まれるコンテンツの数を算出するには、ブロック情報記憶部１０にアクセスして当該記憶部１０内の先頭のブロックの左上Ｘ座標、左上Ｙ座標を抽出し、コンテンツ情報記憶部１１にアクセスしてコンテンツの空間Ｘ座標、空間Ｙ座標に対し、
１）ブロックの左上Ｘ座標≦コンテンツの空間Ｘ座標＜ブロックの左上Ｘ座標＋Ｔｂ
２）ブロックの左上Ｙ座標≦コンテンツの空間Ｙ座標＜ブロックの左上Ｙ座標＋Ｔａ
上記の１）、２）を満たすコンテンツの数を算出する。算出したら、ブロック情報記憶部１０にコンテンツの数を格納する。これらの計算をブロック情報記憶部１０内にある全てのブロックに対して行う。その結果を図２２に示す。
【００６８】
（６）  クラスタリング生成部７は、ブロック情報記憶部１０に格納した各ブロックに含まれるコンテンツの数が１ブロックに関連付けるコンテンツ数の最大値であるＮｍａｘ／９＝２２以上のブロックがあるかどうかを調べる。現在は、図２２から最大値「２３」があるため、（Ｎｍａｘ／９）／Ｎの値を算出して収束係数Ｈと比較する。
【００６９】
（Ｎｍａｘ／９）／Ｎ＝２２／２３＝０．９５６
（７）  上記から収束係数Ｈである０．９５よりも大きいため、そのブロック内に含まれる全てのコンテンツとの距離を計算し、最も距離の遠いコンテンツを抽出する。ここで、ブロック内に含まれるコンテンツの数が最も多いブロックＩＤが「Ｂ２６−００１」において、含まれるコンテンツの中から抽出した最も距離の遠いコンテンツの空間Ｘ座標と空間Ｙ座標がそれぞれ「２．１」「４７」とする。この時、ブロックＩＤが「Ｂ２６−００１」の左上Ｘ座標が「０」、左上Ｙ座標が「４５．５」であるため、Ｌｘ，Ｌｙは、
Ｌｘ＝Ｔｂ−│ブロック左上Ｘ座標−コンテンツのＸ座標│
＝２．２７５−│０−２．１│
＝２．２７５−２．１
＝０．１７５
Ｌｙ＝Ｔａ−│ブロック左上Ｙ座標−コンテンツのＹ座標│
＝１．８２−│４５．５−４７│
＝１．８２−１．５
＝０・３２
となる。このＬｘ、Ｌｙを用いてＬｘ×Ｐａ／ＰｂとＬｙを比較する。
【００７０】
Ｌｘ×Ｐａ／Ｐｂ＝０．１７５×４・５＝０．１４
（８）  上記からＬｘ×Ｐａ／Ｐｂ＜Ｌｙとなり、Ｌｘに合わせてブロックを縮小する。
【００７１】
Ｔａ’＝Ｔａ−Ｌｘ＝１．８２−０．１７５＝１．６４５
Ｔｂ’＝Ｐｂ／Ｐａ×Ｔａ’＝５／４×１．６４５＝２．０５６
Ｖａ’＝│（Ｘｍａｘ−Ｘｍｉｎ）│／Ｔａ’＝１００／１．６４５＝６０．７９
Ｖｂ’＝│（Ｙｍａｘ−Ｙｍｉｎ）│／Ｔｂ’＝１００／２．０５６＝４８．６３
（９）  これらのＴａ’、Ｔｂ’、Ｖａ’の小数点以下を切り上げした「６１」、の小数点以下を切り上げした「４９」をそれぞれＴａ、Ｔｂ、Ｖａ、Ｖｂとして用い、再分割を行う。これらのＴａ、Ｔｂ、Ｖａ、Ｖｂを用いて矩形を分割し、それぞれのブロックに新たな一意的なＩＤを付与し、ブロックＩＤと、各ブロックの左上の座標をブロック情報記憶部１０に格納する。また、ブロック情報記憶部１０内に格納したブロックに含まれるコンテンツの数を算出する。その結果を図２３に示す。
【００７２】
（１０）  図２３から、各ブロックに含まれるコンテンツの数が全てＮｍａｘ／９＝２２以下になったため、コンテンツ情報記憶部１１にアクセスし、ブロックに含まれる全てのコンテンツのコンテンツＩＤのリストをブロック情報記憶部１０に格納する。また、各ブロックに対して図６の隣接ブロック図を用いて、そのブロックが隣接する左隣接ブロック、真上隣接ブロック、右上隣接ブロック、真右隣接ブロック、右下隣接ブロック、真下隣接ブロック、左下隣接ブロック、真左隣接ブロックのＩＤをブロック情報記憶部１０に格納する。格納した例を図２４に示す。なお、図６に示すような隣接ブロック図はクラスタリング生成部７内のメモリに格納する、または、外部の記憶手段に保持しておいてもよい。
【００７３】
次に、ユーザの移動操作に応じた、描画情報記憶部９に対するコンテンツ情報の追加・削除及び表示制御方法の実施例を説明する。
【００７４】
概観地図表示部２は、概観地図情報記憶部８から取得した地図をユーザの画面に表示する。この地図は、予め作成され、概観地図情報記憶部８に格納されており、背景とその背景上に配置するコンテンツ情報記憶部１１内に格納されているコンテンツの代表画像をそれぞれの空間Ｘ座標、空間Ｙ座標に配置して合成した１枚の地図である。その地図を図２５に示す。
【００７５】
図２５には、地図上に移動コントローラを表示している。ユーザは、この移動コントローラを用いて、地図画像を平行方向、拡大、縮小できる。また、この移動コントローラは常に画面に表示されているものとする。ユーザが移動コントローラ内のａに示す上向きの矢印をクリックすると、移動操作入力部１がクリック動作を検出し、クリックした時間だけ概観地図表示部２に表示している地図を拡大させる。ｂに示す下向きの矢印をクリックすると、移動操作入力部１がクリック動作を検出し、クリックした時間だけ概観地図表示部２に表示している地図を縮小させる。また、ｃの円内にある中心をクリックし、クリックしたまま円内でクリック先を動かすと、移動操作入力部１がクリック動作を検出し、最初にクリックした点を始点、クリックしたまま移動させた点を終点とする矢印の方向に、概観地図表示部２に表示している地図を平行移動させる。
【００７６】
ここで、ユーザが移動コントローラ内のａを用いて地図の拡大を繰り返し、図２６に示す画面内に表示されている地図の４つの点（Ｘ１，Ｙ１），（Ｘ２，Ｙ２），（Ｘ３，Ｙ３），（Ｘ４，Ｙ４））がこれまでに算出した地図を分割するブロックの縦の大きさＴａ、横の大きさＴｂに対し、
│Ｙ１−Ｙ２│＜Ｔａ  かつ  │Ｘ１−Ｘ２│＜Ｔｂ
を満たすと、移動操作入力部１は地図表示部３に表示する地図を切り替える。その際に、図２６に示す画面の中央が示す地図上の座標を地図表示部３から描画処理制御部４に出力する。このときの座標が（０．５，４６）だったとする。
【００７７】
描画処理制御部４が地図表示部３から座標を受け取ると、ブロック情報記憶部１０にアクセスし、受信した座標が含まれるブロックのブロックＩＤを検索する。このときの検索条件は、
ブロックの左上Ｘ座標≦受信したＸ座標＜ブロックの左上Ｘ座標＋Ｔｂ
かつ
ブロックの左上Ｙ座標≦受信したＹ座標＜ブロックの左上Ｙ座標＋Ｔｂ
を満たすブロックＩＤを検索する。本実施例では、ブロック情報記憶部１０に格納されている図２７に示す情報から、条件を満たすブロックＩＤが「Ｂ３０−００１」のブロックが抽出される。
【００７８】
このブロックＩＤが「Ｂ３０−００１」のブロック情報記憶部１０から、左上隣接ブロックＩＤ、真上隣接ブロックＩＤ、右上隣接ブロックＩＤ、真右隣接ブロックＩＤ、右下隣接ブロックＩＤ、真下隣接ブロックＩＤ、左下隣接ブロックＩＤ、真左隣接ブロックＩＤを抽出する。このブロックＩＤが「Ｂ３０−００１」に含まれるコンテンツと、前述で抽出した８個の隣接するブロックＩＤを、ブロック情報記憶部１０から検索して、それらに含まれるコンテンツをコンテンツ情報記憶部１１から抽出し、コンテンツの属するブロックＩＤ，コンテンツＩＤ、コンテンツタイトル、代表画像、ＵＲＬ，空間Ｘ座標、空間Ｙ座標を、描画情報記憶部９に格納する。
【００７９】
この描画情報記憶部９内に格納したコンテンツの属するブロックＩＤとコンテンツ情報の例を図２８に示す。また、前述のブロックＩＤが「Ｂ３０−００１」のブロック情報記憶部１０内の情報と、隣接する８個のブロックの情報を描画情報記憶部９に格納する。この描画情報記憶部９に格納したブロックの情報の例を図２９に示す。図３０にユーザに表示している画面と地図上のブロックの関係を示す。図３０では、実線で囲まれた矩形が地図上でユーザに表示している地図であり、点線で示した矩形が地図上のブロックの領域を示している。なお、この点線は、画面には表示されない。
【００８０】
描画処理制御部４が前述のコンテンツの属するブロックＩＤとコンテンツ情報、ブロック情報を描画情報記憶部９に格納すると、描画処理制御部４は、描画情報記憶部９にあるすべてのコンテンツの空間Ｘ座標、空間Ｙ座標、代表画像、コンテンツタイトルを地図表示部３に出力し、地図表示部３にコンテンツ情報を表示する。
【００８１】
ユーザが移動コントローラを用いて上下左右移動を行うと、移動操作入力部１が画面上での移動方向ベクトルを地図表示部３に出力する。このときの移動方向ベクトルは、図３１に示すような方向であるものとし、移動方向ベクトルを（１，０）で出力する。地図表示部３は、その移動方向ベクトルを描画処理制御部４に出力する。
【００８２】
描画処理制御部４は、移動方向ベクトルを受信すると、図１３を用いて移動方向がどの領域に属するかを決定し、図１４に示すメモリ開放表から開放するメモリを決定する。本実施例では、移動方向ベクトル（１，０）が図１３の「ａ」に該当するため、現在画面中央の点が属するブロックＩＤが「Ｂ３０−００１」のブロックの、右下隣接ブロック、真下隣接ブロック、左下隣接ブロックを開放する。この時、開放対象となるのは、右下隣接ブロックがＮＵＬＬのため、「Ｂ３１−００１」「Ｂ３１−００２」のブロックＩＤのブロックとなる。開放する際には、描画処理制御部４が描画情報記憶部９内のコンテンツ情報から、ブロックＩＤが「Ｂ３１−００１」「Ｂ３１−００２」のコンテンツ情報を削除する。
【００８３】
次に、描画情報記憶部９内のブロック情報から、ブロックＩＤが「Ｂ３１−００１」、「Ｂ３１−００２」のブロック情報を開放する。
【００８４】
次に、描画情報記憶部９に新しいコンテンツ情報とブロック情報を追加する。追加する際には、移動方向ベクトル（１，０）が図１３の「ａ」に該当するため、図１５に示すメモリ追加表から現在画面中央の点が属するブロックＩＤが「Ｂ３０−０１１」のブロックの真上隣接ブロックであるブロックＩＤが「Ｂ２９−００１」のブロックを追加対象とし、ブロックＩＤが「Ｂ２９−００１」のブロックに含まれるコンテンツと、ブロックＩＤが「Ｂ２９−００１」に隣接するすべてのブロックに含まれるコンテンツ情報を描画情報記憶部９内のコンテンツ情報に追加する。また、ブロックＩＤが「Ｂ２９−００１」のブロックに隣接するすべてのブロック情報を描画情報記憶部９内のブロック情報に追加する。
【００８５】
描画情報記憶部９にコンテンツ情報、ブロック情報を追加した後、描画処理制御部４が追加したコンテンツ情報を地図表示部３に出力し、地図表示部３がコンテンツ情報を表示する。
【００８６】
上述のように、移動操作入力部１から出力される移動方向ベクトルに応じて図１３を用いて移動方向を決定し、その決定した方向から図１４のメモリ開放表、図１５のメモリ追加表を用いて現在画面に表示しているブロックの隣接ブロックから描画情報記憶部９のコンテンツ情報、ブロック情報の開放、追加対象を決定して更新する。
【００８７】
さらに、以下では、図１２に示した、ユーザの移動操作に応じたコンテンツ情報のメモリ管理方法を簡易化した、画面に表示しているブロックに応じたコンテンツ情報のメモリ管理方法の実施例について説明する。
【００８８】
地図表示部３において、画面中央の点が属するブロックＩＤが変わった場合に、地図表示部３から変更後のブロックＩＤを描画情報記憶部４に出力する。本実施例では、ブロックＩＤ「Ｂ３０−００１」から「Ｂ２９−００１」に変わったものとし、「Ｂ２９−００１」を描画情報記憶部４に出力した例を示す。
【００８９】
描画情報記憶部４は、ブロックＩＤとして「Ｂ２９−００１」を受信すると、ブロックＩｄとして「Ｂ２９−００１」に含まれるコンテンツと、ブロックＩＤが「Ｂ２９−００１」に隣接するすべてのブロックに含まれるコンテンツ情報を描画情報記憶部９内のコンテンツ情報に追加する。また、ブロックＩＤが「Ｂ２９−００１」のブロックに隣接するすべてのブロック情報を描画情報記憶部９内のブロック情報に追加する。
【００９０】
描画情報記憶部９にコンテンツ情報、ブロック情報を追加した後、描画処理制御部４が、追加したコンテンツ情報を地図表示部３に出力し、地図表示部３がコンテンツ情報を表示する。
【００９１】
上述のように、ユーザの移動操作に応じたコンテンツ情報のメモリ管理方法を簡易化した、画面に表示しているブロックに応じたコンテンツ情報のメモリ管理方法では、ユーザの移動操作により、画面に表示しているブロックが変更されると、変更跡のブロックとそのブロックに隣接するすべてのコンテンツ情報を描画情報記憶部９のコンテンツ情報、ブロック情報に新たに更新する。
【００９２】
なお、上記のコンテンツ管理型描画装置の処理をプログラムとして構築し、描画装置として利用されるコンピュータにインストールする、または、ネットワークを介して流通させることが可能である。
【００９３】
また、構築されたプログラムを描画装置として利用されるコンピュータに接続されるハードディスク装置や、フレキシブルディスク、ＣＤ−ＲＯＭ等の可搬記憶媒体に格納し、コンピュータにインストールすることも可能である。
【００９４】
なお、本発明は、上記の実施の形態及び実施例に限定されることなく、特許請求の範囲内において種々変更・応用が可能である。
【産業上の利用可能性】
【００９５】
本発明は、コンテンツ情報を２次元画面上に表示する技術に適用可能である。
【図面の簡単な説明】
【００９６】
【図１】本発明の原理を説明するための図である。
【図２】本発明の原理構成図である。
【図３】本発明の一実施の形態におけるコンテンツ管理型描画装置のブロック分割手段の構成図である。
【図４】本発明の一実施の形態におけるブロック分割手段の動作のフローチャートである。
【図５】本発明の一実施の形態における１ブロックの縦横の比を示す図である。
【図６】本発明の一実施の形態における隣接ブロック図である。
【図７】本発明の一実施の形態における矩形分割を示す図である。
【図８】本発明の一実施の形態におけるブロックの縮小１（Ｌｘ×Ｐａ／Ｐｂ＞Ｌｙ）を示す図である。
【図９】本発明の一実施の形態におけるブロックの縮小１（Ｌｘ×Ｐａ／Ｐｂ＜Ｌｙ）を示す図である。
【図１０】本発明の一実施の形態におけるコンテンツ管理型描画装置の描画情報取得手段の構成図である。
【図１１】本発明の一実施の形態における描画情報取得手段の動作のフローチャートである。
【図１２】本発明の一実施の形態におけるコンテンツ情報開放・追加の動作のフローチャートである。
【図１３】本発明の一実施の形態における移動方向決定図である。
【図１４】本発明の一実施の形態における描画処理制御部が用いるメモリ開放表の例である。
【図１５】本発明の一実施の形態における描画処理制御部が用いるメモリ追加表の例である。
【図１６】本発明の一実施例のコンテンツ管理型描画装置の構成図である。
【図１７】本発明の一実施例のコンテンツ情報記憶部のコンテンツ情報の例である。
【図１８】本発明の一実施例の地図分割図である。
【図１９】本発明の一実施例の地図分割部により格納されたブロック情報記憶部のデータ例である。
【図２０】本発明の一実施例のクラスタリング生成部により格納されたブロック情報記憶部のデータ例である。
【図２１】本発明の一実施例のクラスタリング生成部により地図分割した例である。
【図２２】本発明の一実施例のクラスタリング生成部により格納されたブロック情報記憶部のデータ例（その１）である。
【図２３】本発明の一実施例のクラスタリング生成部により格納されたブロック情報記憶部のデータ例（その２）である。
【図２４】本発明の一実施例の隣接ブロックのブロックＩＤが書き込まれたブロック情報記憶部のデータ例である。
【図２５】本発明の一実施例の表示された概観地図の例である。
【図２６】本発明の一実施例の画面上の地図である。
【図２７】本発明の一実施例の描画処理制御部により参照されるブロック情報記憶部のデータ例である。
【図２８】本発明の一実施例の描画情報記憶部のコンテンツ情報である。
【図２９】本発明の一実施例の描画情報記憶部内のブロック情報である。
【図３０】本発明の一実施例のユーザに表示している画面と地図上のブロックの関係を示す図である。
【図３１】本発明の一実施例の画面上での移動方向ベクトルを示す図である。
【符号の説明】
【００９７】
１  移動操作入力部
２  概観地図表示部
３  地図表示部、表示手段
４  描画処理制御部
５  初期分割制御部
６  地図分割制御部
７  クラスタリング生成部
８  概観地図情報記憶部
９  描画情報記憶部
１０  ブロック情報記憶部、ブロック情報記憶手段
１１  コンテンツ情報記憶部、コンテンツ情報記憶手段
２０  ブロック分割手段
３０  描画情報取得手段
４０  コンテンツ情報追加・開放手段
５０  表示制御部
６０  入力手段
【図１】
2006127118.tif 000003
【図２】
2006127118.tif 000004
【図３】
2006127118.tif 000005
【図４】
2006127118.tif 000006
【図５】
2006127118.tif 000007
【図６】
2006127118.tif 000008
【図７】
2006127118.tif 000009
【図８】
2006127118.tif 000010
【図９】
2006127118.tif 000011
【図１０】
2006127118.tif 000012
【図１１】
2006127118.tif 000013
【図１２】
2006127118.tif 000014
【図１３】
2006127118.tif 000015
【図１４】
2006127118.tif 000016
【図１５】
2006127118.tif 000017
【図１６】
2006127118.tif 000018
【図１７】
2006127118.tif 000019
【図１８】
2006127118.tif 000020
【図１９】
2006127118.tif 000021
【図２０】
2006127118.tif 000022
【図２１】
2006127118.tif 000023
【図２２】
2006127118.tif 000024
【図２３】
2006127118.tif 000025
【図２４】
2006127118.tif 000026
【図２５】
2006127118.tif 000027
【図２６】
2006127118.tif 000028
【図２７】
2006127118.tif 000029
【図２８】
2006127118.tif 000030
【図２９】
2006127118.tif 000031
【図３０】
2006127118.tif 000032
【図３１】
2006127118.tif 000033