(57)【特許請求の範囲】
【請求項１】
仮想マップにおけるタイルマップを更新するための方法であって、
第１のエリアにおいて、仮想オブジェクトが位置している中央エリアを決定するステップと、
前記第１のエリアは、前記仮想オブジェクトが位置している仮想マップにロードされるタイルマップを含む当該仮想マップのエリアであり、
前記仮想オブジェクトが移動したかを判定するステップと、
前記仮想オブジェクトが予め定めた所定のプリセット時間を超える期間、前記中央エリア外にあると判定してから、前記仮想オブジェクトの位置の前記中央エリアに対する距離パラメータを決定し、
前記距離パラメータおよび前記第１のエリアに基づいて、前記第１のエリアと第２のエリアとによって共有されていないタイルマップのローディング状態を更新するステップとを含み、
前記第２のエリアは、前記距離パラメータに基づいて決定されるエリアであって、前記第１のエリアと大きさと形状が同一のエリアである、
方法。
【請求項２】
前記中央エリアにおけるいずれかのタイルマップと前記仮想オブジェクトとの間における、前記仮想マップの座標系におけるx軸方向の最大距離はX1（X1は、第１の予め定めた正の整数）未満であり、
前記中央エリアにおけるいずれかのタイルマップと前記仮想オブジェクトとの間における、前記仮想マップの座標系におけるy軸方向の最大距離はY1（Y1は、第２の予め定めた正の整数）未満であり、
１つのタイルマップの長さは、前記仮想マップの座標系におけるx軸方向の長さの単位として用いられ、
１つのタイルマップの幅は、前記仮想マップの座標系におけるy軸方向の長さの単位として用いられる、
請求項１に記載の方法。
【請求項３】
前記距離パラメータを決定するステップは、
前記仮想オブジェクトが前記中央エリアの右にある前記中央エリアに隣接しているタイルマップに移動すると、前記距離パラメータが(1, 0)であると決定するステップ、または、
前記仮想オブジェクトが前記中央エリアの右上にある前記中央エリアに隣接しているタイルマップに移動すると、前記距離パラメータが(1, 1)であると決定するステップ、または、
前記仮想オブジェクトが前記中央エリアの真上にある前記中央エリアに隣接しているタイルマップに移動すると、前記距離パラメータが(0, 1)であると決定するステップ、または、
前記仮想オブジェクトが前記中央エリアの左上にある前記中央エリアに隣接しているタイルマップに移動すると、前記距離パラメータが(-1, 1)であると決定するステップ、または、
前記仮想オブジェクトが前記中央エリアの左にある前記中央エリアに隣接しているタイルマップに移動すると、前記距離パラメータが(-1, 0)であると決定するステップ、または、
前記仮想オブジェクトが前記中央エリアの左下にある前記中央エリアに隣接しているタイルマップに移動すると、前記距離パラメータが(-1, -1)であると決定するステップ、または、
前記仮想オブジェクトが前記中央エリアの真下にある前記中央エリアに隣接しているタイルマップに移動すると、前記距離パラメータが(0, -1)であると決定するステップ、または、
前記仮想オブジェクトが前記中央エリアの右下にある前記中央エリアに隣接しているタイルマップに移動すると、前記距離パラメータが(1, -1)であると決定するステップを含み、
前記タイルマップは、矩形エリアであり、前記距離パラメータ(a, b)は、前記中央エリアがタイルマップをa個ほど前記右にタイルマップをb個ほど上に移動することを示しており、aおよびbは、整数である、
請求項１または２に記載の方法。
【請求項４】
前記第１のエリアと第２のエリアとによって共有されていないタイルマップのローディング状態を更新するステップは、
前記仮想マップのうち、除去されるタイルマップの第１のグループを決定するステップと、
前記仮想マップのうち、ロードされるタイルマップの第２のグループを決定するステップと、
前記第１のグループと前記第２のグループに基づいて前記タイルマップのローディング状態を更新するステップと、を含む、
請求項１から３のいずれか一項に記載の方法。
【請求項５】
前記距離パラメータを決定するステップと、前記ローディング状態を更新するステップの前に、
緯度と経度に基づいて前記仮想マップにおける前記仮想オブジェクトの対応するマップ座標を決定するステップをさらに有し、
前記仮想マップは、二次元電子マップもしくは三次元電子マップと、前記二次元電子マップもしくは前記三次元電子マップにおけるオブジェクトに対応する仮想オブジェクトに基づいて生成される、
請求項１から４のいずれか一項に記載の方法。
【請求項６】
前記タイルマップのローディング状態に基づいて、前記第1のエリアに含まれていない少なくとも１つのタイルマップを前記第２のエリアにロードするステップと、
前記第２のエリアから前記第１のエリアに含まれている少なくとも１つのタイルマップを除去するステップと、を有する、
請求項１から５のいずれか一項に記載の方法。
【請求項７】
コンピュータに仮想マップにおけるタイルマップを更新させるための動作であって、
第１のエリアにおいて、仮想オブジェクトが位置している中央エリアを決定するステップと、
前記第１のエリアは、前記仮想オブジェクトが位置している仮想マップにロードされるタイルマップを含む当該仮想マップのエリアであり、
前記仮想オブジェクトが移動したかを判定するステップと、
前記仮想オブジェクトが予め定めた所定のプリセット時間を超える期間、前記中央エリア外にあると判定してから、前記仮想オブジェクトの位置の前記中央エリアに対する距離パラメータを決定し、
前記距離パラメータおよび前記第１のエリアに基づいて、前記第１のエリアと第２のエリアとによって共有されていないタイルマップのローディング状態を更新するステップとを含む動作を実行させるためのプログラムであって、
前記第２のエリアは、前記距離パラメータに基づいて決定されるエリアであって、前記第１のエリアと大きさと形状が同一のエリアである、
プログラムを記憶したコンピュータ読み取り可能な記憶媒体。
【請求項８】
前記中央エリアにおけるいずれかのタイルマップと前記仮想オブジェクトとの間における、前記仮想マップの座標系におけるx軸方向の最大距離はX1（X1は、第１の予め定めた正の整数）未満であり、
前記中央エリアにおけるいずれかのタイルマップと前記仮想オブジェクトとの間における、前記仮想マップの座標系におけるy軸方向の最大距離はY1（Y1は、第２の予め定めた正の整数）未満であり、
１つのタイルマップの長さは、前記仮想マップの座標系におけるx軸方向の長さの単位として用いられ、
１つのタイルマップの幅は、前記仮想マップの座標系におけるy軸方向の長さの単位として用いられる、
請求項７に記載のコンピュータ読み取り可能な記憶媒体。
【請求項９】
前記距離パラメータを決定するステップは、
前記仮想オブジェクトが前記中央エリアの右にある前記中央エリアに隣接しているタイルマップに移動すると、前記距離パラメータが(1, 0)であると決定するステップ、または、
前記仮想オブジェクトが前記中央エリアの右上にある前記中央エリアに隣接しているタイルマップに移動すると、前記距離パラメータが(1, 1)であると決定するステップ、または、
前記仮想オブジェクトが前記中央エリアの真上にある前記中央エリアに隣接しているタイルマップに移動すると、前記距離パラメータが(0, 1)であると決定するステップ、または、
前記仮想オブジェクトが前記中央エリアの左上にある前記中央エリアに隣接しているタイルマップに移動すると、前記距離パラメータが(-1, 1)であると決定するステップ、または、
前記仮想オブジェクトが前記中央エリアの左にある前記中央エリアに隣接しているタイルマップに移動すると、前記距離パラメータが(-1, 0)であると決定するステップ、または、
前記仮想オブジェクトが前記中央エリアの左下にある前記中央エリアに隣接しているタイルマップに移動すると、前記距離パラメータが(-1, -1)であると決定するステップ、または、
前記仮想オブジェクトが前記中央エリアの真下にある前記中央エリアに隣接しているタイルマップに移動すると、前記距離パラメータが(0, -1)であると決定するステップ、または、
前記仮想オブジェクトが前記中央エリアの右下にある前記中央エリアに隣接しているタイルマップに移動すると、前記距離パラメータが(1, -1)であると決定するステップを含み、
前記タイルマップは、矩形エリアであり、前記距離パラメータ(a, b)は、前記中央エリアがタイルマップをa個ほど前記右にタイルマップをb個ほど上に移動することを示しており、aおよびbは、整数である、
請求項７または８に記載のコンピュータ読み取り可能な記憶媒体。
【請求項１０】
前記第１のエリアと第２のエリアとによって共有されていないタイルマップのローディング状態を更新するステップは、
前記仮想マップのうち、除去されるタイルマップの第１のグループを決定するステップと、
前記仮想マップのうち、ロードされるタイルマップの第２のグループを決定するステップと、
前記第１のグループと前記第２のグループに基づいて前記タイルマップのローディング状態を更新するステップと、を含む、
請求項７から９のいずれか一項に記載のコンピュータ読み取り可能な記憶媒体。
【請求項１１】
前記動作は、前記距離パラメータを決定するステップと、前記ローディング状態を更新するステップの前に、
緯度と経度に基づいて前記仮想マップにおける前記仮想オブジェクトの対応するマップ座標を決定するステップをさらに有し、
前記仮想マップは、二次元電子マップもしくは三次元電子マップと、前記二次元電子マップもしくは前記三次元電子マップにおけるオブジェクトに対応する仮想オブジェクトに基づいて生成される、
請求項７から１０のいずれか一項に記載のコンピュータ読み取り可能な記憶媒体。
【請求項１２】
前記動作は、前記タイルマップのローディング状態に基づいて、前記第１のエリアに含まれていない少なくとも１つのタイルマップを前記第２のエリアにロードするステップと、
前記第２のエリアから前記第１のエリアに含まれている少なくとも１つのタイルマップを除去するステップと、を有する、
請求項７から１１のいずれか一項に記載のコンピュータ読み取り可能な記憶媒体。
【請求項１３】
１以上のコンピュータと、
前記１以上のコンピュータと相互に結合し、コンピュータ読み取り可能な１以上の指令を記憶した媒体を有するメモリデバイスと、を備えるコンピュータシステムであって、
前記１以上のコンピュータにより実行される動作であって、
前記動作は、
第１のエリアにおいて、仮想オブジェクトが位置している中央エリアを決定するステップと、
前記第１のエリアは、前記仮想オブジェクトが位置している仮想マップにロードされるタイルマップを含む当該仮想マップのエリアであり、
前記仮想オブジェクトが移動したかを判定するステップと、
前記仮想オブジェクトが予め定めた所定のプリセット時間を超える期間、前記中央エリア外にあると判定してから、前記仮想オブジェクトの位置の前記中央エリアに対する距離パラメータを決定し、
前記距離パラメータおよび前記第１のエリアに基づいて、前記第１のエリアと第２のエリアとによって共有されていないタイルマップのローディング状態を更新するステップとを含み、
前記第２のエリアは、前記距離パラメータに基づいて決定されるエリアであって、前記第１のエリアと大きさと形状が同一のエリアである、
コンピュータシステム。
【請求項１４】
前記中央エリアにおけるいずれかのタイルマップと前記仮想オブジェクトとの間における、前記仮想マップの座標系におけるx軸方向の最大距離はX1（X1は、第１の予め定めた正の整数）未満であり、
前記中央エリアにおけるいずれかのタイルマップと前記仮想オブジェクトとの間における、前記仮想マップの座標系におけるy軸方向の最大距離はY1（Y1は、第２の予め定めた正の整数）未満であり、
１つのタイルマップの長さは、前記仮想マップの座標系におけるx軸方向の長さの単位として用いられ、
１つのタイルマップの幅は、前記仮想マップの座標系におけるy軸方向の長さの単位として用いられる、
請求項１３に記載のコンピュータシステム。
【請求項１５】
前記距離パラメータを決定するステップは、
前記仮想オブジェクトが前記中央エリアの右にある前記中央エリアに隣接しているタイルマップに移動すると、前記距離パラメータが(1, 0)であると決定するステップ、または、
前記仮想オブジェクトが前記中央エリアの右上にある前記中央エリアに隣接しているタイルマップに移動すると、前記距離パラメータが(1, 1)であると決定するステップ、または、
前記仮想オブジェクトが前記中央エリアの真上にある前記中央エリアに隣接しているタイルマップに移動すると、前記距離パラメータが(0, 1)であると決定するステップ、または、
前記仮想オブジェクトが前記中央エリアの左上にある前記中央エリアに隣接しているタイルマップに移動すると、前記距離パラメータが(-1, 1)であると決定するステップ、または、
前記仮想オブジェクトが前記中央エリアの左にある前記中央エリアに隣接しているタイルマップに移動すると、前記距離パラメータが(-1, 0)であると決定するステップ、または、
前記仮想オブジェクトが前記中央エリアの左下にある前記中央エリアに隣接しているタイルマップに移動すると、前記距離パラメータが(-1, -1)であると決定するステップ、または、
前記仮想オブジェクトが前記中央エリアの真下にある前記中央エリアに隣接しているタイルマップに移動すると、前記距離パラメータが(0, -1)であると決定するステップ、または、
前記仮想オブジェクトが前記中央エリアの右下にある前記中央エリアに隣接しているタイルマップに移動すると、前記距離パラメータが(1, -1)であると決定するステップを含み、
前記タイルマップは、矩形エリアであり、前記距離パラメータ(a, b)は、前記中央エリアがタイルマップをa個ほど前記右にタイルマップをb個ほど上に移動することを示しており、aおよびbは、整数である、
請求項１３または１４に記載のコンピュータシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、画像処理の分野に関し、詳細には、仮想マップにおけるタイルマップを生成および更新するための方法および装置に関する。
【背景技術】
【０００２】
マップにおける大量のデータにより、マップは、クライアントにおけるマップローディング速度を保証しつつサーバ負荷を低減するために、スライシング、すなわち、タイルマップ技術によって、部分的にロードされる必要がある。
【０００３】
Baidu MapまたはAuto Navi Mapなどの実世界マップが仮想アプリケーションにおいて仮想マップを生成するために使用される場合には、実世界マップが大きなサイズを有していることが理由で、実世界マップに基づいて生成される仮想マップも非常に大きなものとなり、仮想マップにおけるすべてのタイルマップが同時にロードされると、仮想アプリケーションのパフォーマンスおよびメモリに大きな負荷がかかり、結果として、仮想マップの表示効率の低下が生じることになる。
【０００４】
どのようにして仮想マップの表示効率を改善するかが、本出願の実施形態において対処する必要がある技術的問題となっている。
【発明の概要】
【課題を解決するための手段】
【０００５】
上記の技術的問題を軽減するために、本出願の実施形態は以下のように実施される。
【０００６】
第1の態様に従って、仮想マップにおけるタイルマップを更新するための方法を提供している。方法は、第1のエリアにおいて、仮想オブジェクトが位置している中央エリアを決定するステップであって、第1のエリアは、仮想オブジェクトが位置している仮想マップにロードされるタイルマップを含むエリアマップであり、中央エリアの境界は、第1のエリアに位置しており、仮想マップのタイルマップ座標系におけるx軸方向の、中央エリア内の任意のタイルマップと仮想オブジェクトとの間における、最大距離が、X1未満であり、タイルマップ座標系におけるy軸方向の、中央エリア内の任意のタイルマップと仮想オブジェクトとの間における、最大距離が、Y1未満であり、1つのタイルマップの長さが、タイルマップ座標系におけるx軸上の単位として使用され、1つのタイルマップの幅が、タイルマップ座標系におけるy軸上の単位として使用され、X1およびY1は、所定の正の整数である、ステップと、仮想オブジェクトが中央エリア外へと移動してから、距離パラメータを決定し、距離パラメータおよび第1のエリアに基づいて、第1のエリアと第2のエリアとによって共有されていないタイルマップのローディング状態を更新するステップであって、距離パラメータは、タイルマップ座標系におけるx軸方向およびy軸方向の、中央エリアに対する仮想オブジェクトが位置している、タイルマップの相対距離を示しており、第2のエリアは、距離パラメータに基づいて第1のエリアを移動した後に決定されるマップエリアである、ステップとを含む。
【０００７】
第2の態様に従って、仮想マップにおけるタイルマップを生成するための方法を提供している。方法は、実世界電子マップと仮想マップとの間の拡大縮小関係に基づいて、仮想マップのマップエリアを決定するステップと、マップエリアを複数の同サイズのタイルエリアに分割するステップと、実世界電子マップにおけるタイルエリアに対応するエリアマップに基づいて、各タイルエリアに対する画像処理を行って、タイルエリアのタイルマップを生成するステップであって、画像処理は、レンダリング処理を含む、ステップとを含む。
【０００８】
第3の態様に従って、決定ユニットと更新ユニットとを含む、仮想マップを描画するための装置を提供している。決定ユニットは、第1のエリアにおいて、仮想オブジェクトが位置している中央エリアを決定し、第1のエリアは、仮想オブジェクトが位置している仮想マップにロードされるタイルマップを含むエリアマップであり、中央エリアの境界は、第1のエリアに位置しており、仮想マップのタイルマップ座標系におけるx軸方向の、中央エリア内の任意のタイルマップと仮想オブジェクトとの間における、最大距離が、X1未満であり、タイルマップ座標系におけるy軸方向の、中央エリア内の任意のタイルマップと仮想オブジェクトとの間における、最大距離が、Y1未満であり、1つのタイルマップの長さが、タイルマップ座標系におけるx軸上の単位として使用され、1つのタイルマップの幅が、タイルマップ座標系におけるy軸上の単位として使用され、X1およびY1は、所定の正の整数である。決定ユニットはさらに、仮想オブジェクトが中央エリア外へと移動してから、距離パラメータを決定し、距離パラメータは、タイルマップ座標系におけるx軸方向およびy軸方向の、中央エリアに対する仮想オブジェクトが位置している、タイルマップの相対距離を示す。更新ユニットは、距離パラメータおよび第1のエリアに基づいて、第1のエリアと第2のエリアとによって共有されていないタイルマップのローディング状態を更新し、第2のエリアは、距離パラメータに基づいて第1のエリアを移動した後に決定されるマップエリアである。
【０００９】
第4の態様に従って、仮想マップを描画するための装置を提供しており、装置は、実世界電子マップと仮想マップとの間の拡大縮小関係に基づいて、仮想マップのマップエリアを決定するように構成される、決定ユニットと、マップエリアを複数の同サイズのタイルエリアに分割するように構成される、エリア分割ユニットと、実世界電子マップにおけるタイルエリアに対応するエリアマップに基づいて、各タイルエリアに対する画像処理を行って、タイルエリアのタイルマップを生成するように構成される、画像処理ユニットであって、画像処理は、レンダリング処理を含む、画像処理ユニットとを含む。
【００１０】
本出願の実施形態においては、仮想オブジェクトが位置している中央エリア外へと仮想オブジェクトが移動してから、ローディング状態を更新する必要があるタイルマップが、中央エリアに対する仮想オブジェクトが移動したタイルマップの距離パラメータおよび現時点ロードされているタイルマップに基づいて決定されることが、本出願の実施形態において提供した技術的ソリューションから理解できよう。したがって、不必要なタイルマップをローディングすることを軽減してタイルマップ間のシームレスな接続を実施することができ、仮想マップを表示する効率および経験効果をある程度改善している。
【００１１】
本出願の実施形態におけるまたは既存の技術における技術的ソリューションをより明確に説明するために、実施形態または既存の技術を説明するのに必要となる添付の図面を以下に簡単に説明している。以下の説明における添付の図面が本出願のいくつかの実施形態を示しているに過ぎず、当業者が創造的努力無しにこれらの添付の図面から他の図面をさらに導出し得ることは明らかであろう。
【図面の簡単な説明】
【００１２】
【図１】本出願の実施形態による、仮想マップにおけるタイルマップを生成するための方法を図示しているフローチャートである。
【図２】本出願の実施形態による、エリア分割を図示している概略図およびタイルマップの座標である。
【図３】本出願の実施形態による、仮想マップにおけるタイルマップを生成するための方法を図示している概略図である。
【図４】本出願の実施形態による、仮想マップにおけるタイルマップを更新するための方法を図示している概略図である。
【図５】本出願の実施形態による、タイルマップ座標系における仮想マップにおけるタイルマップを図示している概略図である。
【図６】本出願の実施形態による、仮想マップにおけるいくつかのタイルマップの座標を図示している概略図である。
【図７】本出願の実施形態による、仮想マップにおける座標と実世界電子マップにおける緯度および経度との間のマッピング関係を図示している概略図である。
【図８】本出願の例示的な実施形態による、電子デバイスを図示している概略構造図である。
【図９】本出願の実施形態による、仮想マップを描画するための装置を図示している概略構造図である。
【図１０】本出願の別の実施形態による、仮想マップを描画するための装置を図示している概略構造図である。
【発明を実施するための形態】
【００１３】
当業者に本出願における技術的ソリューションをより良く理解してもらうべく、本出願の実施形態における添付の図面を参照して本出願の実施形態における技術的ソリューションを以下に明確かつ包括的に説明している。説明した実施形態が本出願の実施形態のすべてではなく一部に過ぎないことは明白であろう。創造的努力無しで本出願の実施形態に基づいて当業者によって得られるすべての他の実施形態は、本出願の保護範囲に含まれるものとする。
【００１４】
図1は、本出願の実施形態による、仮想マップにおけるタイルマップを生成するための方法を図示しているフローチャートである。図1中の方法は、仮想マップにおけるタイルマップを生成するための装置によって行われる。特定の適用においては、仮想マップにおけるタイルマップを生成するための装置は、仮想マップのグラフィックエンジン、例えば、2Dグラフィックエンジン、3Dグラフィックエンジン、または別の仮想マップ描画ツールであり得る。実施形態は、本出願に限定されない。特に、仮想マップは、2Dマップまたは3Dマップであり得る。図1中の方法は、以下のステップを含み得る。
【００１５】
S110. 実世界電子マップと仮想マップとの間の拡大縮小関係に基づいて、仮想マップのマップエリアを決定する。
【００１６】
本出願の実施形態における実世界電子マップは実世界環境に基づいて描画されるBaidu MapまたはAuto Navi Mapなどの電子マップであることを理解されたい。
【００１７】
本出願の実施形態における仮想マップは仮想アプリケーションにおける仮想マップなどのマップであることを理解されたい。
【００１８】
本出願の実施形態においては、仮想マップのサイズが実世界電子マップと仮想マップとの間の拡大縮小関係に基づいて決定され得ることを理解されたい。
【００１９】
例えば、実世界電子マップと仮想マップとの間の関係は2:1に事前に決定される。この場合には、実世界電子マップの長さと幅とは、仮想マップのサイズを決定するために、独立して半分に縮められ得る。
【００２０】
S120. マップエリアを複数の同サイズのタイルエリアに分割する。
【００２１】
特に、マップエリアを複数の同サイズのタイルエリアに分割し得る。
【００２２】
好ましくは、タイルエリアは、例えば、10cm×10cm、5cm×5cm、および4cm×2cmといった、矩形であり得る。タイルエリアの長さと幅とは必ずしも等しくないことを理解されたい。当然のことながら、タイルエリアの長さおよび幅は互いに等しいことが好ましい。
【００２３】
当然のことながら、タイルエリアはあるいは別の形状であり得る、例えば、タイルエリアは菱形または正六角形であり得ることを理解されたい。この場合には、仮想マップのエッジは、直線ですらなくてもよい。
【００２４】
S130. タイルエリアのタイルマップを生成するために、実世界電子マップにおけるタイルエリアに対応するエリアマップに基づいた各タイルエリアに対する画像処理を含む演算を行う。
【００２５】
画像処理演算は、レンダリング処理を含む。
【００２６】
例えば、実世界電子マップが大学の構内に基づいて生成された電子マップであると仮定する。この場合には、大学に対応する電子マップにおけるタイルエリアに対応するエリアマップに基づいて仮想マップにおける各タイルエリアに対してレンダリング処理が行われ、タイルエリアのタイルマップが生成され得る。
【００２７】
当然のことながら、レンダリング処理以外の他の画像処理演算が電子マップに基づいて仮想マップに対して行われ得ることを理解されたい。実施形態は、本出願に限定されない。
【００２８】
本出願の実施形態においては、仮想マップのエリアは、実世界電子マップに基づいて決定され、仮想マップは、複数の同サイズのタイルエリアに分割され、レンダリング処理が、実世界電子マップにおけるタイルエリアの対応するエリアマップに基づいてタイルエリアに対して行われ、その結果、仮想マップのタイルマップを実世界電子マップに基づいて高速に生成することができ、それによって、仮想マップを生成する効率を改善している。
【００２９】
必要に応じて、本出願の実施形態においては、ステップS130が、次の通り、すなわち、タイルエリアのサイズおよび第1のタイルエリアのインデックスに基づいて、実世界電子マップにおける複数の同サイズのタイルエリアのうちの第1のタイルエリアに対応する第1の実世界エリアマップを決定するステップと、第1の実世界エリアマップに基づいて、第1のタイルエリアに対する画像処理を行って、第1のタイルエリアに対応する第1のタイルマップを取得するステップとで実施される。
【００３０】
各タイルエリアのインデックスは、タイルエリアの位置に関連している。特に、例えば、タイルエリアのインデックスは、タイルエリア内の指定の位置の点の座標であり得る。例えば、タイルエリアが矩形である場合には、座標は、タイルエリアの中心座標、タイルエリアの左下の頂点座標、タイルエリアの左上の頂点座標、タイルエリアの右上の頂点座標、タイルエリアの右下の頂点座標などであり得る。あるいは、インデックスは、タイルエリアの番号などであり得る。
【００３１】
当然のことながら、ステップS130の前に、方法は、タイルエリアの位置に基づいて、タイルエリアのインデックスを作成するステップをさらに含むことを理解されたい。
【００３２】
本出願の実施形態における方法を、図2および図3を参照してさらに説明している。
【００３３】
本出願の実施形態においては、仮想マップを実世界電子マップに基づいて生成する必要がある場合には、仮想マップのエリアサイズは、実世界電子マップと仮想マップとの間の拡大縮小関係に基づいて決定され得る。特に、仮想マップが3D仮想マップである場合には、3D仮想マップのサイズは一般的に変化しないため、実世界電子マップに対する3D仮想マップの拡大縮小比は一般的に一定値である。
【００３４】
仮想マップエリアが実世界電子マップおよび拡大縮小関係に基づいて決定された後に、仮想マップは複数の同サイズの矩形エリアに分割され得る。各矩形エリアは1つのタイルマップのサイズを有しており、1つの矩形エリアを1つのタイルエリアと称し得る。図2は、本出願の実施形態による、エリア分割を図示している概略図およびタイルマップの座標である。図2に示したエリア全体が実世界電子マップに基づいて決定される仮想マップエリア全体であると仮定する。図2に示しているように、仮想マップを複数の同サイズのタイルエリアに分割し得る。加えて、インデックスが、タイルエリアの位置に基づいて各タイルエリアのために作成され得る。例えば、座標またはシーケンス番号は、タイルエリアのインデックスを表すために使用され得る。図2に示した実施形態においては、1つのタイルエリアの長さは水平座標にとっての寸法の単位として使用され、1つのタイルエリアの幅は垂直座標にとっての寸法の単位として使用される。
【００３５】
タイルエリア分割が完了しインデックスが作成された後に、レンダリング処理を含む画像処理が、タイルマップを取得するために実世界電子マップに基づいて行われ得る。図3は、本出願の実施形態による、仮想マップにおけるタイルマップを生成するための方法を図示している概略図である。図3に示しているように、レイヤ初期化をタイルエリアに対してまず行う必要がある。特に、実世界電子マップに対応する仮想マップエリアは拡大縮小レベルに基づいて決定することができ、その後、仮想マップエリアはタイルエリアに分割される。加えて、レイヤ初期化をタイルエリアに対して行う場合には、通常は、例えば道をどの色にするかおよびビルを表示するかどうかといった、タイルエリア内のレイヤスタイルが初期化され得る。タイルエリアを識別およびローディングすることを容易にするために、タイルエリアはさらにインデックスが付けられ得る。
【００３６】
タイルエリア上のレイヤ初期化が完了した後に、実世界電子マップにおけるタイルエリアに対応する実世界エリアが、タイルエリアのインデックスおよびサイズに基づいて計算され得る。図2に示しているように、タイルエリアは2次元平面上に隣接するように配置され、タイルエリアのすべてが同一のサイズを有する。各タイルエリアの2次元座標は、タイルエリアのインデックスに基づいて決定され得る(または、タイルエリアのインデックスは、2次元座標である)。その後、各タイルエリアによってカバーされる矩形エリアの緯度および経度が、タイルエリアのサイズに基づいて決定され得る。換言すれば、実世界電子マップにおけるタイルエリアに対応する実世界エリアを決定し得る。
【００３７】
実世界電子マップにおけるタイルエリアに対応する実世界エリアを取得した後に、タイルエリア内のレイヤは、実世界エリアマップに基づいて処理され得る。例えば、サードパーティのマップAPI(Google Mapなど)を呼び出して、実世界エリアマップに基づいてタイルエリア内のマップ画像をレンダリングし得る。最終的に、画像が記憶され、タイルマップが得られる。タイルエリアのインデックスは、タイルマップのインデックスとして使用され得る。
【００３８】
当然のことながら、タイルエリアはあるいは別の形状であり得る、例えば、タイルエリアは菱形または正六角形であり得ることを理解されたい。形状が変化すると、タイルエリアのインデックスおよびサイズに基づいて実世界マップエリアを計算するためのアルゴリズムがそれに応じて変化する。
【００３９】
図4は、本出願の実施形態による、仮想マップにおけるタイルマップを更新するための方法を図示しているフローチャートである。図4中の方法は、仮想マップ描画装置によって行われる。特定の適用においては、仮想マップ描画装置は、例えば、2Dグラフィックエンジン、3Dグラフィックエンジン、または別の仮想マップ描画ツールといった、グラフィックエンジンであり得る。実施形態は、本出願に限定されない。本出願の実施形態における仮想マップは、3D仮想マップもしくは2D仮想マップなどの仮想マップ、または仮想アプリケーションにおける別のマップなどであり得ることを理解されたい。図4中の方法は、以下のステップを含み得る。
【００４０】
S410. 第1のエリアにおいて、仮想オブジェクトが位置している中央エリアを決定する。
【００４１】
第1のエリアは、仮想オブジェクトが位置している仮想マップにロードされるタイルマップを含むエリアマップである。中央エリアの境界は、第1のエリアに位置している。仮想マップのタイルマップ座標系におけるx軸方向の、中央エリア内の任意のタイルマップと仮想オブジェクトとの間における、最大距離が、X1未満である。タイルマップ座標系におけるy軸方向の、中央エリア内の任意のタイルマップと仮想オブジェクトとの間における、最大距離が、Y1未満である。1つのタイルマップの長さが、タイルマップ座標系におけるx軸上の単位として使用され、1つのタイルマップの幅が、タイルマップ座標系におけるy軸上の単位として使用され、X1およびY1は、所定の正の整数である。
【００４２】
仮想オブジェクトの特定の形式は本出願の実施形態に限定されないことを理解されたい。3Dゲームを説明のための例として使用する。例えば、仮想オブジェクトは、3Dゲーム内のキャラクタまたはキャラクタが運転する車両であり得る。
【００４３】
すべてのタイルマップが本出願の実施形態においては同一のサイズを有することを理解されたい。
【００４４】
本出願の実施形態においては、ロードされた第1のエリアが仮想オブジェクトの視野をカバーしなくてはならないことを理解されたい。換言すれば、仮想オブジェクトの視野に入るすべてのタイルマップがロードされなくてはならない。本出願の実施形態においては、第1のエリアは、仮想オブジェクトの視野に入るタイルマップを少なくとも含む。当然のことながら、第1のエリアが仮想オブジェクトの視野よりも広くなり得ることを理解されたい。
【００４５】
本出願の実施形態においては、1つのタイルマップの長さがタイルマップ座標系におけるx軸上の単位として使用され、1つのタイルマップの幅がタイルマップ座標系におけるy軸上の単位として使用されることを理解されたい。図5は、本出願の実施形態による、タイルマップ座標系における仮想マップにおけるタイルマップを図示している概略図である。図5に示しているように、各矩形エリアがタイルマップである。タイルマップの長さが、タイルマップ座標系におけるx軸(x-axis)上の単位として使用され、タイルマップの幅が、タイルマップ座標系におけるy軸(y-axis)上の単位として使用される。
【００４６】
加えて、位置座標は、あるいは、タイルマップのインデックスとして使用され得る。例えば、図5に示したタイルマップ座標系においては、タイルマップの左下の頂点座標は、タイルマップのインデックスとして使用される。
【００４７】
S420. 仮想オブジェクトが中央エリア外へと移動してから、距離パラメータを決定し、距離パラメータおよび第1のエリアに基づいて、第1のエリアと第2のエリアとによって共有されていないタイルマップのローディング状態を更新する。
【００４８】
距離パラメータは、タイルマップ座標系におけるx軸方向およびy軸方向の、中央エリアに対する仮想オブジェクトが位置している、タイルマップの相対距離を示しており、第2のエリアは、距離パラメータに基づいて第1のエリアを移動した後に決定されるマップエリアである。
【００４９】
第2のエリアは距離パラメータに基づいて第1のエリアを移動した後に決定されるマップエリアであることを理解されたい。したがって、第1のエリアと第2のエリアとは、同一の形状および同一のサイズを有する。例えば、図2では、第1のエリアが(2, 0)および(1, 1)を含む矩形エリアであり、第1のエリアがタイルマップを1個ほど右に移動することを距離パラメータが示していることを想定している。この場合には、第2のエリアは、(2, 1)および(1, 2)を含み、第1のエリアのものと同一の形状およびサイズを有する、矩形エリアである。
【００５０】
第1のエリアと第2のエリアとによって共有されていないタイルマップが第1のエリアのみまたは第2のエリアのみのいずれかに存在するタイルマップであることを理解されたい。
【００５１】
本出願の実施形態においては、仮想オブジェクトが位置している中央エリア外へと仮想オブジェクトが移動してから、仮想オブジェクトがあるタイルマップに移動することになり、中央エリアに対するタイルマップの距離パラメータが決定される。その後、ローディング状態を更新する必要があるタイルマップが、タイルマップの距離パラメータおよび現時点ロードされているタイルマップに基づいて決定される。したがって、不必要なタイルマップをローディングすることを軽減してタイルマップ間のシームレスな接続を実施することができ、仮想マップを表示する効率および経験効果をある程度改善している。
【００５２】
必要に応じて、ある実施形態においては、ステップS420において距離パラメータを決定するステップは、次の方法で、すなわち、仮想オブジェクトが中央エリアの右にある中央エリアに隣接しているタイルマップに移動すると、距離パラメータが(1, 0)であると決定するステップ、または、仮想オブジェクトが中央エリアの右上にある中央エリアに隣接しているタイルマップに移動すると、距離パラメータが(1, 1)であると決定するステップ、または、仮想オブジェクトが中央エリアの真上にある中央エリアに隣接しているタイルマップに移動すると、距離パラメータが(0, 1)であると決定するステップ、または、仮想オブジェクトが中央エリアの左上にある中央エリアに隣接しているタイルマップに移動すると、距離パラメータが(-1, 1)であると決定するステップ、または、仮想オブジェクトが中央エリアの左にある中央エリアに隣接しているタイルマップに移動すると、距離パラメータが(-1, 0)であると決定するステップ、または、仮想オブジェクトが中央エリアの左下にある中央エリアに隣接しているタイルマップに移動すると、距離パラメータが(-1, -1)であると決定するステップ、または、仮想オブジェクトが中央エリアの真下にある中央エリアに隣接しているタイルマップに移動すると、距離パラメータが(0, -1)であると決定するステップ、または、仮想オブジェクトが中央エリアの右下にある中央エリアに隣接しているタイルマップに移動すると、距離パラメータが(1, -1)であると決定するステップで特に実施され得るし、タイルマップ座標系において、右方向は、水平座標にとっての正の方向であり、上方向は、垂直座標にとっての正の方向である。
【００５３】
本出願の実施形態においては、距離パラメータ(a, b)は、中央エリアがタイルマップをa個ほど右にタイルマップをb個ほど上に移動することを示しており、aおよびbは、整数であることを理解されたい。aまたはbの値が負数である場合には、中央エリアが反対方向に移動することを示す、または、aまたはbの値が0である場合には、中央エリアが移動していないことを示す。
【００５４】
必要に応じて、別の実施形態においては、ステップS420において距離パラメータを決定するステップは、次の方法で、すなわち、第2の中央エリアを決定するステップであって、仮想オブジェクトが中央エリア外へと移動した後では、第2の中央エリア内の任意のタイルマップと仮想オブジェクトが位置しているタイルマップとの間における、仮想マップのタイルマップ座標系におけるx軸方向の、最大距離が、X1未満であり、第2の中央エリア内のタイルマップと仮想オブジェクトが位置しているタイルマップとの間における、仮想マップのタイルマップ座標系におけるy軸方向の、最大距離が、Y1未満である、ステップと、タイルマップ座標系におけるx軸方向およびy軸方向の中央エリアに対する第2の中央エリアの相対距離が距離パラメータであると決定するステップとで特に実施され得る。
【００５５】
必要に応じて、ある実施形態として、ステップ420が、具体的に実現される：仮想オブジェクトが中央エリア外へと移動してから、持続時間がプリセット時間を超過した後、距離パラメータを決定し、距離パラメータおよび第1のエリアに基づいて、第1のエリアと第2のエリアとによって共有されていないタイルマップのローディング状態を更新する。
【００５６】
本出願の実施形態においては、仮想オブジェクトが、中央エリアから移動することを通じプリセット時間を超過した後、タイルマップを再更新する。従って、仮想オブジェクトが短時間で境界に面するエリア間を移動してタイルマップの頻繁な更新を避けることができる。
【００５７】
必要に応じて、ある実施形態においては、ステップ420では、第1のエリアと第2のエリアとによって共有されていないタイルマップのローディング状態を更新するステップが、次の通り、すなわち、第1のエリア内のタイルマップと比較して第2のエリア内の追加されたタイルマップをローディングし、第1のエリア内のタイルマップと比較して第2のエリア内の削減されたタイルマップを除去するステップで特に実施される。
【００５８】
本出願の実施形態においては、表示する必要がないタイルマップは除去され、表示する必要があるタイルマップはロードされ、その結果、タイルマップをローディングする効率を増大することができ、タイルマップ間のシームレスな接続が実施され、仮想マップを表示する効率および経験効果をある程度改善している。
【００５９】
必要に応じて、ある実施形態においては、ステップ420では、距離パラメータおよび第1のエリアに基づいて、第1のエリアと第2のエリアとによって共有されていないタイルマップのローディング状態を更新するステップが、次の通り、すなわち、距離パラメータおよび第1のエリア内のタイルマップのインデックスに基づいて、更新される必要があるタイルマップのインデックスを決定するステップと、更新される必要があるタイルマップのインデックスに基づいて、仮想マップにおける仮想オブジェクトのタイルマップのローディング状態を更新するステップで実施される。
【００６０】
好ましくは、X1はY1に等しい。さらに、X1の値は、1、2、3、4、5などであり得る。
【００６１】
必要に応じて、第1のエリア内の任意のタイルマップと仮想オブジェクトが位置しているタイルマップとの間における、x軸方向の、最大距離が、第1の単位長さのX2倍未満であり、第1のエリア内のタイルマップと仮想オブジェクトが位置しているタイルマップとの間における、y軸方向の、最大距離が、第2の単位長さのY2倍未満であり、X2およびY2は、正の整数であり、X1<X2であり、Y1<Y2である。好ましくは、第1のエリアおよび中央エリアは矩形である。さらに、Y2=Y1+1であり、X2=X1+1である。この場合には、新規矩形エリアは、タイルマップを1個ほど上方および下方ならびに左および右に中央エリアの周辺を独立して拡張することによって生成され、その新規矩形エリアが第1のエリアである。
【００６２】
例えば、X1およびY1の値が1である場合には、X2およびY2の値は2である。この場合には、仮想オブジェクトのためにロードされるタイルマップは、9個の矩形からなるグリッドマップであり、仮想オブジェクトは、9個の矩形からなるグリッドマップの中央に常に位置する。
【００６３】
別の例では、X1およびY1の値が2である場合には、X2およびY2の値は3である。この場合には、仮想オブジェクトのためにロードされるタイルマップは、16個の矩形からなるグリッドマップであり、仮想オブジェクトは、16個の矩形からなるグリッドマップの中央にある4つのタイルマップ上に常に位置する。
【００６４】
別の例では、X1およびY1の値が3である場合には、X2およびY2の値は4である。この場合には、仮想オブジェクトのためにロードされるタイルマップは、25個の矩形からなるグリッドマップであり、仮想オブジェクトは、25個の矩形からなるグリッドマップの中央にある9つのタイルマップ上に常に位置する。
【００６５】
必要に応じて、ある実施形態においては、ステップS420の前に、方法は、実世界環境における仮想オブジェクトに対応する実世界オブジェクトの緯度および経度に基づいて、仮想マップにおける仮想オブジェクトの対応するマップ座標を決定するステップであって、仮想マップは、実世界電子マップに基づいて生成される、ステップをさらに含む。
【００６６】
例えば、グローバル電子マップがゲーム内の仮想マップとして使用されると仮定する。この場合には、北京の天安門広場でゲームにログインすると、ユーザは、39°54'27'' N, 116°23'17'' Eに位置している。この場合には、ユーザは、実世界電子マップにおける位置(39°54'27'' N, 116°23'17'' E)に対応する仮想マップにおける位置にゲーム内では位置している。
【００６７】
仮想マップにおける仮想オブジェクトの対応するマップ座標を実世界環境における仮想オブジェクトに対応する実世界オブジェクトの緯度および経度に基づいて決定した後に、仮想アプリケーションにおける仮想オブジェクトの初期位置が決定され得るし、仮想オブジェクトが現在の中央エリア外へと移動しているかどうかがさらに決定され得る。
【００６８】
必要に応じて、ある実施形態においては、ステップS420の前に、方法は、実世界環境における仮想オブジェクトに対応する実世界オブジェクトの移動方向および移動距離に基づいて仮想マップにおける仮想オブジェクトの対応する移動方向および移動距離を決定するステップであって、仮想マップは、実世界電子マップに基づいて生成される、ステップをさらに含む。
【００６９】
例えば、グローバル電子マップがゲーム内の仮想マップとして使用され、現時点、ユーザが北京の39°54'27'' N, 116°23'17'' Eの天安門広場にいて、仮想マップにおける対応する座標位置が(x0, y0)であるとさらに仮定する。ユーザが50キロメートルほど西に移動し、仮想マップにおける1キロメートルに対応する距離が1cmであり、仮想マップの方向が次のように上が北、下が南、左が西、そして右が東であると仮定する。この場合には、仮想オブジェクトの位置は座標(x0, y0)が仮想マップにおいて50cmほど左に移動した後に得られる位置であると、ユーザは決定し得る。
【００７０】
仮想オブジェクトが現在の中央エリア外へと移動しているかどうかを決定するために、移動後の位置が、仮想マップにおける仮想オブジェクトの現在位置、移動距離、および移動方向に基づいて、決定され得る。
【００７１】
特定の実施形態を参照して本出願の実施形態における方法を以下にさらに説明している。
【００７２】
図6は、本出願の実施形態による、仮想マップにおけるいくつかのタイルマップの座標を図示している概略図である。図6では、プレーヤキャラクタによってロードされるタイルマップは、灰色部分の9個の矩形からなるグリッドマップである。図6に示した実施形態においては、仮想マップにおけるタイルマップの2次元座標は、タイルマップのインデックスとして使用される。仮想マップにおけるタイルマップの2次元座標は、タイルマップの中心座標、タイルマップの頂点の座標、タイルマップにおける固定位置の座標などであり得る。
【００７３】
図6に示したシナリオにおいては、図4に示した実施形態におけるX1およびY1の値が1である場合には、X2およびY2の値は2である。この場合には、仮想オブジェクトの第1のエリアは、タイルマップ(1, 1)、(1, 2)、(1, 3)、(2, 1)、(2, 2)、(2, 3)、(3, 1)、(3, 2)、および(3, 3)を含み、仮想オブジェクトの中央エリアは、タイルマップ(2, 2)を含む。仮想オブジェクトが中央エリア内で移動している場合には、タイルマップは更新する必要がなく、仮想オブジェクトが中央エリア外へと移動した場合には、タイルマップを更新する必要があることを理解されたい。
【００７４】
図6中の矢印Aが示しているように、仮想オブジェクトが中央エリア、すなわち、タイルマップ(2, 2)からタイルマップ(2, 3)に移動すると、距離パラメータは(0, 1)であると決定され得る。この場合には、仮想オブジェクトのためにロードされる必要があるタイルマップの座標は、(1, 2)、(1, 3)、(1, 4)、(2, 2)、(2, 3)、(2, 4)、(3, 2)、(3, 3)、および(3, 4)である。換言すれば、タイルマップ(1, 1)、(1, 2)、(1, 3)、(2, 1)、(2, 2)、(2, 3)、(3, 1)、(3, 2)、および(3, 3)とタイルマップ(1, 2)、(1, 3)、(1, 4)、(2, 2)、(2, 3)、(2, 4)、(3, 2)、(3, 3)、および(3, 4)とによって共有されていないタイルマップのローディング状態を更新する必要がある。換言すれば、ローディング状態を更新する必要があるタイルマップの座標インデックスは、(1, 1)、(2, 1)、(3, 1)、(1, 4)、(2, 4)、および(3, 4)である。タイルマップ(1, 1)、(2, 1)、および(3, 1)は除去される必要があり、タイルマップ(1, 4)、(2, 4)、および(3, 4)はロードされる必要がある。
【００７５】
図6中の矢印Bが示しているように、仮想オブジェクトがタイルマップ(2, 2)からタイルマップ(3, 1)に移動すると、距離パラメータは(1, -1)であると決定され得る。この場合には、仮想オブジェクトのためにロードされる必要があるタイルマップの座標は、(2, 0)、(2, 1)、(2, 2)、(3, 0)、(3, 1)、(3, 2)、(4, 0)、(4, 1)、および(4, 2)である。換言すれば、タイルマップ(2, 0)、(2, 1)、(2, 2)、(3, 0)、(3, 1)、(3, 2)、(4, 0)、(4, 1)、および(4, 2)とタイルマップ(1, 1)、(1, 2)、(1, 3)、(2, 1)、(2, 2)、(2, 3)、(3, 1)、(3, 2)、および(3, 3)とによって共有されていないタイルマップのローディング状態を更新する必要がある。換言すれば、タイルマップ(2, 0)、(3, 0)、(4, 0)、(4, 1)、(4, 2)、(1, 1)、(1, 2)、(1, 3)、(2, 3)、および(3, 3)のローディング状態を更新する必要がある。具体的には、タイルマップ(1, 1)、(1, 2)、(1, 3)、(2, 3)、および(3, 3)は除去される必要があり、タイルマップ(2, 0)、(3, 0)、(4, 0)、(4, 1)、および(4, 2)はロードされる必要がある。
【００７６】
当然のことながら、仮想オブジェクトは代わりにタイルマップ(2, 2)から9個の矩形からなるグリッドマップにおける他の6つの方向に移動し得ることを理解されたい。仮想オブジェクトの移動距離パラメータは、図4に示した実施形態における距離パラメータによって示される。簡潔にするために、本出願の実施形態においては詳細を省略している。
【００７７】
加えて、所定の時間が頻繁な切り替えによる頻繁なマップリフレッシュ処理を軽減するためにさらに設定され得ることを理解されたい。仮想オブジェクトが、所定の時間の間、中央エリア外へと移動してから、タイルマップは更新される。このように、頻繁なマップ切り替えによる頻繁なリフレッシュ処理を軽減することができ、ユーザエクスペリエンスを改善している。
【００７８】
当然のことながら、他のインデックスが実世界適用においてはタイルマップのインデックスとして代わりに使用され得ることを理解されたい。例えば、数値インデックスは、座標に基づいて決定される。特に、例えば、タイルマップの座標が(x0, y0)である場合には、タイルマップの数値インデックスは、a*x0+b*y0である。
【００７９】
加えて、仮想オブジェクトの中央エリアは2つ以上のタイルマップを含み得ることを理解されたい。例えば、X1およびY1の値が2である場合には、X2およびY2の値は3である。中央エリアは4つのタイルマップを含み、ロードする必要があるタイルマップは16個の矩形からなるグリッドマップを構成する。9個の矩形からなるグリッドマップと同様に、16個の矩形からなるグリッドマップにおいては、中央エリア以外のエリアも、右、右上、真上、左上、左、左下、真下、および右下といった8つの方向にそれぞれ対応する8つのエリアに分割され得る。16個の矩形からなるグリッドマップにおける移動距離パラメータを計算するための方法は、9個の矩形からなるグリッドマップにおけるものと同様である。
【００８０】
加えて、y軸方向において中央エリアに含まれるタイルマップの数量は、x軸方向において中央エリアに含まれるタイルマップの数量と等しくなくてもよい。例えば、X1の値は1であり、Y1の値は2であり、X2およびY2の値は3である。
【００８１】
加えて、第1のエリアが仮想オブジェクトの中央エリアを含み、中央エリアが第1のエリアのエッジ上に存在しない限り、仮想オブジェクトのためにロードされるタイルマップを含む第1のエリアの形状も本出願の実施形態に限定されない。好ましくは、第1のエリアおよび中央エリアは矩形である。
【００８２】
例えば、図6に示したタイルマップにおいては、第1のエリアは、灰色部分の9個の矩形からなるグリッドマップと、タイルマップ(4, 0)、(4, 1)、(4, 2)、(4, 3)、および(4, 4)を含むエリアとを含み得る。
【００８３】
更新される必要があるエリアを決定するために、距離パラメータに基づいて第1のエリアを移動した後に得られる第2のエリアと第1のエリアを比較し、第1のエリアと第2のエリアとによって共有されていないエリア内のタイルマップのローディング状態を更新することだけが必要になる。
【００８４】
望ましいソリューションにおいては、第1のエリアは、中央エリアをすべての方向にタイルマップを1個ほど拡張することによって得られるエリアである。
【００８５】
加えて、本出願の実施形態における方法においては、関連付けの関係が実世界環境におけるユーザの位置情報と仮想マップにおける仮想オブジェクトの位置情報との間にさらに確立され得ることを理解されたい。
【００８６】
特定の例においては、仮想マップが実世界電子マップに基づいて生成され得るし、その後、仮想マップにおける仮想オブジェクトの対応するマップ座標が実世界環境における仮想オブジェクトに対応する実世界オブジェクトの緯度および経度に基づいて決定され得る。実世界電子マップに基づいて生成される仮想マップが実世界環境における緯度および経度に対応することを理解されたい。
【００８７】
例えば、仮想マップは3Dゲームマップであり、仮想オブジェクトが3Dゲーム内のゲームキャラクタであり、マップの原点が実世界電子マップにおける緯度および経度に対応する、すなわち、(0, 0)が緯度および経度(O-lat、O-lng)に対応すると仮定する。図7に示しているように、3Dグラフィックエンジンにおけるタイルマップの長さおよび幅がそれぞれwおよびhであり、タイルマップによって実際にカバーされている緯度および経度がそれぞれd-latおよびd-lngであると仮定する。図7は、本出願の実施形態による、仮想マップにおける座標と実世界電子マップにおける緯度および経度との間のマッピング関係を図示している概略図である。
【００８８】
実世界環境におけるユーザの現在の緯度および経度が(x, y)である場合には、ユーザに対応するゲームキャラクタが位置しているタイルマップの座標インデックスは以下の通りである。
【００８９】
【数１】
0006921199.tif 000002
【００９０】
さらに、3Dグラフィックエンジンにおけるゲームキャラクタの座標(z軸は無視する)は以下の通りのものを得ることができる。
【００９１】
【数２】
0006921199.tif 000003
【００９２】
それに対応するように、実世界環境におけるユーザの緯度および経度も、3Dグラフィックエンジンにおけるゲームキャラクタの座標に基づいて、計算され得る。
【００９３】
加えて、本出願の実施形態における方法においては、実世界環境におけるユーザのアクションはさらに仮想オブジェクトのアクションと関連付けられ得ることを理解されたい。
【００９４】
特定の例においては、実世界環境における仮想オブジェクトに対応する実世界オブジェクトのアクションパラメータに基づいて、仮想マップにおける仮想オブジェクトの対応するアクションパラメータが決定され得るし、仮想オブジェクトが操作され得る。特に、アクションパラメータは、ユーザの手、足、頭、または体などの一部の動きに関連しているパラメータであり得る。例えば、実世界環境における腕を振る距離、腕を振る速度、足を上げる角度、足を上げる方向、およびユーザの足を上げる速度が、センサを使用してキャプチャされ得る。当然のことながら、センサはまた、ユーザの移動距離、移動方向、および移動速度などといった、比較的シンプルなデータを収集するために使用され得る。
【００９５】
当然のことながら、緯度および経度に基づいて仮想マップにおける座標を決定するための方法と実世界環境におけるアクションパラメータに基づいて仮想マップにおける仮想オブジェクトのアクションパラメータを決定するための方法とが同一の実施に適用され得ることを理解されたい。仮想オブジェクトとユーザとが、緯度および経度データならびにユーザのアクションパラメータデータに基づいて良好な整合性を維持しており、ユーザの仮想経験をよりリアルなものとしている。
【００９６】
図8は、本出願の例示的な実施形態による、電子デバイスを図示している概略構造図である。図8を参照すれば、ハードウェアに関しては、電子デバイスは、プロセッサ、内部バス、ネットワークインターフェース、メモリ、および不揮発性メモリを含み、当然のことながら、他のサービスによって必要とされるハードウェアをさらに含み得る。プロセッサは実行するために不揮発性メモリからメモリへと対応するコンピュータプログラムを読み出し、ユーザインターフェースロック解除装置が論理的に形成される。当然のことながら、ソフトウェアの実施形態に加えて、本出願は、別の実施形態、例えば、ロジックデバイスまたはハードウェアとソフトウェアとの組合せを除外するものではない。すなわち、以下の処理プロシージャの実行の主体は、各論理ユニットに限定されず、ハードウェアまたはロジックデバイスでもあり得る。
【００９７】
図9は、本出願の実施形態による、仮想マップを描画するための装置900を図示している概略構造図である。図9を参照すれば、ソフトウェアの実施形態において、仮想マップを描画するための装置900は、決定ユニット901および更新ユニット902を含み得る。
【００９８】
決定ユニット901は、第1のエリアにおいて、仮想オブジェクトが位置している中央エリアを決定し、第1のエリアは、仮想オブジェクトが位置している仮想マップにロードされるタイルマップを含むエリアマップであり、中央エリアの境界は、第1のエリアに位置しており、仮想マップのタイルマップ座標系におけるx軸方向の、中央エリア内の任意のタイルマップと仮想オブジェクトとの間における、最大距離が、X1未満であり、タイルマップ座標系におけるy軸方向の、中央エリア内の任意のタイルマップと仮想オブジェクトとの間における、最大距離が、Y1未満であり、1つのタイルマップの長さが、タイルマップ座標系におけるx軸上の単位として使用され、1つのタイルマップの幅が、タイルマップ座標系におけるy軸上の単位として使用され、X1およびY1は、所定の正の整数である。
【００９９】
決定ユニット901はさらに、仮想オブジェクトが中央エリア外へと移動してから、距離パラメータを決定し、距離パラメータは、タイルマップ座標系におけるx軸方向およびy軸方向の、中央エリアに対する仮想オブジェクトが位置している、タイルマップの相対距離を示す。
【０１００】
更新ユニット902は、距離パラメータおよび第1のエリアに基づいて、第1のエリアと第2のエリアとによって共有されていないタイルマップのローディング状態を更新し、第2のエリアは、距離パラメータに基づいて第1のエリアを移動した後に決定されるマップエリアである。
【０１０１】
本出願の実施形態においては、仮想オブジェクトが位置している中央エリア外へと仮想オブジェクトが移動してから、仮想オブジェクトは、タイルマップに移動し、中央エリアに対するタイルマップの距離パラメータが決定される。その後、ローディング状態を更新する必要があるタイルマップが、タイルマップの距離パラメータおよび現時点ロードされているタイルマップに基づいて決定される。したがって、不必要なタイルマップをローディングすることを軽減してタイルマップ間のシームレスな接続を実施することができ、仮想マップを表示する効率および経験効果をある程度改善している。
【０１０２】
必要に応じて、決定ユニット901は、仮想オブジェクトが中央エリアの右にある中央エリアに隣接しているタイルマップに移動すると、距離パラメータが(1, 0)であると決定する、または、仮想オブジェクトが中央エリアの右上にある中央エリアに隣接しているタイルマップに移動すると、距離パラメータが(1, 1)であると決定する、または、仮想オブジェクトが中央エリアの真上にある中央エリアに隣接しているタイルマップに移動すると、距離パラメータが(0, 1)であると決定する、または、仮想オブジェクトが中央エリアの左上にある中央エリアに隣接しているタイルマップに移動すると、距離パラメータが(-1, 1)であると決定する、または、仮想オブジェクトが中央エリアの左にある中央エリアに隣接しているタイルマップに移動すると、距離パラメータが(-1, 0)であると決定する、または、仮想オブジェクトが中央エリアの左下にある中央エリアに隣接しているタイルマップに移動すると、距離パラメータが(-1, -1)であると決定する、または、仮想オブジェクトが中央エリアの真下にある中央エリアに隣接しているタイルマップに移動すると、距離パラメータが(0, -1)であると決定する、または、仮想オブジェクトが中央エリアの右下にある中央エリアに隣接しているタイルマップに移動すると、距離パラメータが(1, -1)であると決定するように特に構成され、距離パラメータ(a, b)は、中央エリアがタイルマップをa個ほど右にタイルマップをb個ほど上に移動することを示しており、aおよびbは、整数である。
【０１０３】
本出願の実施形態においては、距離パラメータ(a, b)は、中央エリアがタイルマップをa個ほど右にタイルマップをb個ほど上に移動することを示しており、aおよびbは、整数であることを理解されたい。aまたはbの値が負数である場合には、中央エリアが反対方向に移動することを示す、または、aまたはbの値が0である場合には、中央エリアが移動していないことを示す。
【０１０４】
必要に応じて、更新ユニット902は、プリセット時間を超過した時間期間の間、仮想オブジェクトが中央エリア外へと移動してから、距離パラメータを決定し、距離パラメータおよび第1のエリアに基づいて、第1のエリアと第2のエリアとによって共有されていないタイルマップのローディング状態を更新するように特に構成される。
【０１０５】
必要に応じて、更新ユニット902は、第1のエリア内のタイルマップと比較して第2のエリア内の追加されたタイルマップをローディングし、第1のエリア内のタイルマップと比較して第2のエリア内の削減されたタイルマップを除去するように特に構成される。
【０１０６】
必要に応じて、更新ユニット902は、距離パラメータおよび第1のエリア内のタイルマップのインデックスに基づいて、更新される必要があるタイルマップのインデックスを決定し、更新される必要があるタイルマップのインデックスに基づいて、仮想マップにおける仮想オブジェクトのタイルマップのローディング状態を更新するように特に構成される。
【０１０７】
好ましくは、X1はY1に等しい。さらに、X1の値は、1、2、3、4、または5である。
【０１０８】
必要に応じて、第1のエリア内の任意のタイルマップと仮想オブジェクトが位置しているタイルマップとの間における、x軸方向の、最大距離が、第1の単位長さのX2倍未満であり、第1のエリア内のタイルマップと仮想オブジェクトが位置しているタイルマップとの間における、y軸方向の、最大距離が、第2の単位長さのY2倍未満であり、X2およびY2は、正の整数であり、X1<X2であり、Y1<Y2である。好ましくは、第1のエリアおよび中央エリアは矩形である。さらに、Y2=Y1+1であり、X2=X1+1である。この場合には、新規矩形エリアは、タイルマップを1個ほど上方および下方ならびに左および右に中央エリアの周辺を独立して拡張することによって生成され、その新規矩形エリアが第1のエリアである。
【０１０９】
必要に応じて、決定ユニット901はさらに、実世界環境における仮想オブジェクトに対応する実世界オブジェクトの緯度および経度に基づいて、仮想マップにおける仮想オブジェクトの対応するマップ座標を決定し、仮想マップは、実世界電子マップに基づいて生成される。
【０１１０】
必要に応じて、決定ユニット901はさらに、仮想マップにおける仮想オブジェクトの対応するアクションパラメータを決定し、実世界環境における仮想オブジェクトに対応する実世界オブジェクトのアクションパラメータに基づいて、仮想オブジェクトを操作する。
【０１１１】
仮想マップを描画するための装置900は、図4中の方法をさらに行い、図4および図6に示した実施形態において仮想マップを描画するための装置、グラフィックエンジンなどの機能を実施し得る。簡潔にするために、本出願の実施形態においては詳細を省略している。
【０１１２】
図10は、本出願の実施形態による、仮想マップを描画するための装置1000を図示している概略構造図である。図10を参照すれば、ソフトウェアの実施形態において、仮想マップを描画するための装置1000は、決定ユニット1001、エリア分割ユニット1002、および画像処理ユニット1003を含み得る。
【０１１３】
決定ユニット1001は、実世界電子マップと仮想マップとの間の拡大縮小関係に基づいて、仮想マップのマップエリアを決定するように構成される。
【０１１４】
エリア分割ユニット1002は、マップエリアを複数の同サイズのタイルエリアに分割するように構成される。
【０１１５】
画像処理ユニット1003は、実世界電子マップにおけるタイルエリアに対応するエリアマップに基づいて、各タイルエリアに対する画像処理を行って、タイルエリアのタイルマップを生成するように構成され、画像処理は、レンダリング処理を含む。
【０１１６】
本出願の実施形態においては、仮想マップのエリアは、実世界電子マップに基づいて決定され、仮想マップは、複数の同サイズのタイルエリアに分割され、レンダリング処理が、実世界電子マップにおけるタイルエリアの対応するエリアマップに基づいてタイルエリアに対して行われ、その結果、仮想マップのタイルマップを実世界電子マップに基づいて高速に生成することができ、それによって、仮想マップを生成する効率を改善している。
【０１１７】
必要に応じて、決定ユニット1001はさらに、タイルエリアのサイズおよび第1のタイルエリアのインデックスに基づいて、実世界電子マップにおける複数の同サイズのタイルエリアのうちの第1のタイルエリアに対応する第1の実世界エリアマップを決定し、画像処理ユニット1003はさらに、第1の実世界エリアマップに基づいて、第1のタイルエリアに対する画像処理を行って、第1のタイルエリアに対応する第1のタイルマップを取得する。
【０１１８】
当然のことながら、エリア分割ユニット1002は複数の同サイズのタイルエリアにおいて各タイルエリアのためのインデックスをさらに作成し得ることを理解されたい。
【０１１９】
仮想マップを描画するための装置1000は、図1中の方法をさらに行い、図1および図2に示した実施形態において仮想マップを描画するための装置、グラフィックエンジンなどの機能を実施し得る。簡潔にするために、本出願の実施形態においては詳細を省略している。
【０１２０】
1990年代においては、技術的改善がハードウェア改善(例えば、ダイオード、トランジスタ、またはスイッチなどの回路構造に対する改善)であるかソフトウェア改善(方法の手順に対する改善)であるかは明確に区別し得た。しかしながら、技術が進歩するにつれて、多くの方法の手順に対する今日の改善は、ハードウェア回路構造に対する直接的な改善として扱うことができるようになった。設計者は、通常、改善した方法の手順をハードウェア回路にプログラムして、対応するハードウェア回路構造を得る。したがって、方法の手順をハードウェアエンティティモジュールを使用して改善し得る。例えば、プログラマブルロジックデバイス(PLD)(例えば、フィールドプログラマブルゲートアレイ(FPGA))がそのような集積回路であり、PLDの論理機能がデバイスプログラミングによりユーザによって決定される。設計者は、チップ製造業者に特定用途向け集積回路チップを設計および製造するように要求することなく、プログラミングを行い、デジタルシステムをPLDに「統合」する。加えて、今日では、集積チップを手動で製造する代わりに、このタイプのプログラミングは、「ロジックコンパイラ」というソフトウェアを使用してほとんどが実施される。プログラミングは、プログラムを開発するためおよび書くために使用されるソフトウェアコンパイラと同様である。元のコードをコンパイルのために特定のプログラミング言語で書く必要がある。そのような言語をハードウェア記述言語(HDL)と称する。Advanced Boolean Expression Language(ABEL)、Altera Hardware Description Language(AHDL)、Confluence、Cornell University Programming Language(CUPL)、HDCal、Java(登録商標) Hardware Description Language(JHDL)、Lava、Lola、MyHDL、PALASM、およびRuby Hardware Description Language(RHDL)などの多くのHDLが存在する。超高速集積回路ハードウェア記述言語(VHDL)およびVerilogがもっとも一般的に使用されている。ひとたび方法の手順がいくつかの説明したハード
ウェア記述言語を使用して論理的にプログラムされ集積回路にプログラムされると論理的な方法の手順を実施するハードウェア回路を容易に得ることができることも当業者は理解すべきである。
【０１２１】
コントローラは、任意の適切な方法を使用して実装され得る。例えば、コントローラは、マイクロプロセッサもしくはプロセッサであり得るし、またはマイクロプロセッサもしくはプロセッサ、ロジックゲート、スイッチ、特定用途向け集積回路(ASIC)、プログラマブルロジックコントローラ、または内蔵マイクロプロセッサが実行することができるコンピュータ可読プログラムコード(ソフトウェアまたはファームウェアなど)を記憶するコンピュータ可読媒体であり得る。コントローラの例としては、ARC625D、Atmel AT91SAM、Microchip PIC18F26K20、およびSilicone Labs C8051F320といったマイクロプロセッサを含むがこれらに限定されない。メモリコントローラはまた、メモリの制御ロジックの一部として実装され得る。当業者も知っての通り、コンピュータ可読プログラムコードを使用してコントローラを実装することに加えて、コントローラがロジックゲート、スイッチ、特定用途向け集積回路、プログラマブルロジックコントローラ、および内蔵マイクロコントローラの形式で同一の機能を実装することができるように、ロジックプログラミングを方法のステップに対して行うことができる。したがって、コントローラは、ハードウェアコンポーネントとみなされ得るし、コントローラにおける様々な機能を実施するように構成された装置も、ハードウェアコンポーネントにおける構造とみなされ得る。または、様々な機能を実施するように構成された装置は、方法を実施するソフトウェアモジュールおよびハードウェアコンポーネントにおける構造の両方とみなされ得る。
【０１２２】
上記の実施形態において示したシステム、装置、モジュール、またはユニットは、コンピュータチップまたはエンティティを使用して実装され得る、または、ある機能を有する製品を使用して実装され得る。典型的な実施デバイスがコンピュータである。コンピュータは、例えば、パーソナルコンピュータ、ラップトップコンピュータ、セルラ電話、カメラ電話、スマートフォン、携帯情報端末、メディアプレーヤ、ナビゲーションデバイス、電子メールデバイス、ゲームコンソール、タブレットコンピュータ、もしくはウェアラブルデバイス、またはこれらのデバイスの任意の組合せであり得る。
【０１２３】
説明を簡潔にするために、機能を様々なユニットに分割することによって上記の装置を説明している。当然のことながら、本出願を実施する際には、各ユニットの機能は、ソフトウェアおよび/またはハードウェアの1つまたは複数の要素において実施され得る。
【０１２４】
本発明の実施形態が方法、システム、またはコンピュータプログラム製品として提供され得ることを当業者は理解されたい。したがって、本発明は、ハードウェアのみの実施形態、ソフトウェアのみの実施形態、またはソフトウェアとハードウェアとの組合せを用いた実施形態の形式を使用し得る。さらに、本発明は、コンピュータ使用可能プログラムコードを含む(ディスクメモリ、CD-ROM、光学メモリなどを含むがこれらに限定されない)1つまたは複数のコンピュータ使用可能記憶媒体上で実施されるコンピュータプログラム製品の形式を使用し得る。
【０１２５】
本発明は、本発明の実施形態による、方法、デバイス(システム)、およびコンピュータプログラム製品のフローチャートおよび/またはブロック図を参照して説明している。コンピュータプログラム命令がフローチャートおよび/またはブロック図中の各プロセスおよび/または各ブロックならびにフローチャートおよび/またはブロック図中のプロセスおよび/またはブロックの組合せを実施するために使用され得ることを理解されたい。これらのコンピュータプログラム命令は、コンピュータまたは別のプログラマブルデータ処理デバイスのプロセッサによって実行された命令がフローチャート中の1つまたは複数のフローにおけるおよび/またはブロック図中の1つまたは複数のブロックにおける特定の機能を実施するための装置を生成するように、汎用コンピュータ、専用コンピュータ、内蔵プロセッサ、または別のプログラマブルデータ処理デバイスのプロセッサに提供され、機構を生成し得る。
【０１２６】
このようなコンピュータプログラム命令は、コンピュータ可読メモリに記憶されている命令が命令装置を含むアーチファクトを生成するように、コンピュータまたは別のプログラマブルデータ処理デバイスが特定の方法で動作するように命令し得るコンピュータ可読メモリに記憶され得る。命令装置は、フローチャート中の1つまたは複数のフローにおけるおよび/またはブロック図中の1つまたは複数のブロックにおける特定の機能を実施する。
【０１２７】
このようなコンピュータプログラム命令は、コンピュータまたは別のプログラマブルデータ処理デバイスにロードされ得るし、その結果、一連の動作およびステップがコンピュータまたは別のプログラマブルデバイス上で行われ、それによって、コンピュータ実施処理を生成している。したがって、コンピュータまたは別のプログラマブルデバイス上で実行される命令は、フローチャート中の1つまたは複数のフローにおけるおよび/またはブロック図中の1つまたは複数のブロックにおける特定の機能を実施するためのステップを提供する。
【０１２８】
典型的な設定においては、コンピューティングデバイスは、1つまたは複数のプロセッサ(CPU)、1つまたは複数の入力/出力インターフェース、1つまたは複数のネットワークインターフェース、および1つまたは複数のメモリを含む。
【０１２９】
メモリは、例えば、リードオンリーメモリ(ROM)またはフラッシュメモリ(フラッシュRAM)などといった、コンピュータ可読媒体に存在する、非持続性メモリ、ランダムアクセスメモリ(RAM)、不揮発性メモリ、および/または他の形式を含み得る。メモリは、コンピュータ可読媒体の一例である。
【０１３０】
コンピュータ可読媒体は、任意の方法または技術を使用する情報ストレージを実装し得る、持続性、非持続性、ムーバブル、および非ムーバブル媒体を含む。情報は、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータであり得る。コンピュータ記憶媒体は、位相変化ランダムアクセスメモリ(PRAM)、スタティックランダムアクセスメモリ(SRAM)、ダイナミックランダムアクセスメモリ(DRAM)、別のタイプのランダムアクセスメモリ(RAM)、リードオンリーメモリ、電気的消去可能プログラマブルリードオンリーメモリ(EEPROM)、フラッシュメモリ、もしくは別のメモリ技術と、コンパクトディスクリードオンリーメモリ(CD-ROM)、デジタル多用途ディスク(DVD)、もしくは別の光学ストレージと、カセット、カセット磁気ディスクストレージ、もしくは別の磁気ストレージデバイスと、または任意の他の非伝送媒体とを含むがこれらに限定されない。コンピュータ記憶媒体は、コンピューティングデバイスによってアクセスされ得る情報を記憶するように構成され得る。本明細書における定義に基づけば、コンピュータ可読媒体は、例えば、変調データ信号およびキャリアといった、一時的媒体(transitory media)を含まない。
【０１３１】
「含む」、「備える」といった用語、またはそれらの任意の他の類型は、非排他的な包含をカバーすることを意図しており、その結果、多くの要素を含むプロセス、方法、物品、もしくはデバイスが、これらの要素だけでなく、明示的に記載していない他の要素も含む、または、そのようなプロセス、方法、物品、もしくはデバイスに本来備わっている要素をさらに含むことをさらに留意されたい。「・・・を含む」で終わる要素は、さらなる制約がない状態で、要素を含むプロセス、方法、物品、またはデバイスにおける追加の同一要素の存在を除外することはしない。
【０１３２】
本出願の実施形態が方法、システム、またはコンピュータプログラム製品として提供され得ることを当業者は理解されたい。したがって、本開示は、ハードウェアのみの実施形態、ソフトウェアのみの実施形態、またはソフトウェアとハードウェアとの組合せを用いた実施形態の形式を使用し得る。加えて、本出願は、コンピュータ使用可能プログラムコードを含む1つまたは複数のコンピュータ使用可能記憶媒体(ディスクメモリ、CD-ROM、光学メモリなどを含むがこれらに限定されない)上で実施されるコンピュータプログラム製品の形式を使用し得る。
【０１３３】
本出願は、例えば、プログラムモジュールといった、コンピュータによって実行されるコンピュータ実行可能命令の一般的な状況において説明することができる。一般的に、プログラムモジュールは、特定のタスクを実行するまたは特定の抽象データタイプを実施する、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。本出願はまた、分散コンピューティング環境において実施することができる。分散コンピューティング環境においては、タスクは、通信ネットワークを介して接続されたリモート処理デバイスによって行われる。分散コンピューティング環境においては、プログラムモジュールは、ストレージデバイスを含むローカルコンピュータ記憶媒体およびリモートコンピュータ記憶媒体の両方に位置し得る。
【０１３４】
本明細書における実施形態は、漸進的方法で説明している。実施形態における同一または同様の部分については、その実施形態を参照されたい。各実施形態は、他の実施形態とは異なる部分に焦点を置いている。特に、システム実施形態は、方法の実施形態と基本的に同様であるため、したがって、簡潔に説明している。関連する部分については、方法の実施形態における関連する説明を参照されたい。
【０１３５】
上記の説明は、本出願の実施形態であり、本出願を限定することは意図していない。当業者のために、本出願は様々な修正および変更を有し得る。本出願の精神および原理においてなされた任意の修正、均等物との置換、改良などは、本出願における特許請求の範囲の範囲に含まれるものとする。
【符号の説明】
【０１３６】
901  決定ユニット
902  更新ユニット
1001  決定ユニット
1002  エリア分割ユニット
1003  画像処理ユニット
【図１】
0006921199.tif 000004
【図２】
0006921199.tif 000005
【図３】
0006921199.tif 000006
【図４】
0006921199.tif 000007
【図５】
0006921199.tif 000008
【図６】
0006921199.tif 000009
【図７】
0006921199.tif 000010
【図８】
0006921199.tif 000011
【図９】
0006921199.tif 000012
【図１０】
0006921199.tif 000013