(57)【特許請求の範囲】
【請求項１】
表示されるデジタル画像をレンダリングする際に使用するための元の組の階層化画像データを再順序付けするためのコンピュータにより実現される方法であって、
中間画像が表示のためにレンダリングされる前に、レンダリングされて前記中間画像を形成するように配置される複数の元の画像データの階層を含む、元の組の階層化画像データをコンピュータデバイスで取得することであって、前記元の画像データの階層のそれぞれは、階層内画像オブジェクトの順序で配置される複数の画像オブジェクトを含む、コンピュータデバイスで取得することと、
画像データ再順序付けルーチンを前記コンピュータデバイス上で実行することであって、該画像データ再順序付けルーチンは、前記元の画像データの階層の２つ以上から第１のタイプの１組の画像オブジェクトを抽出し、表示されるデジタル画像をレンダリングする際に使用するための単一の再順序付けされた画像データの階層として使用するための、１組の再順序付けされた画像データを作成し、前記再順序付けされた画像データの階層は、前記第１のタイプの前記画像オブジェクトのそれぞれが抽出された前記元の画像データの階層の識別情報の関数として、および前記第１のタイプの前記画像オブジェクトのそれぞれが抽出された前記元の画像データの階層の前記階層内画像オブジェクトの順序の関数として順序付けされる、前記第１のタイプの画像オブジェクトを含む、画像データ再順序付けルーチンを実行することと、
前記再順序付けされた画像データの階層を前記コンピュータデバイスに記憶することと、を含む、コンピュータにより実現される方法。
【請求項２】
前記複数の元の画像データの階層は、昇順と関連付けられるように受け取られ、前記画像データ再順序付けルーチンを実行することは、前記第１のタイプの前記画像オブジェクトを再順序付けすることを含み、よって、前記元の画像データの階層の特定の１つからの前記第１のタイプの前記画像オブジェクトの全てが、前記再順序付けされた画像データの階層において、前記昇順の前記元の画像データの階層のいずれかからの前記第１のタイプの前記画像オブジェクトのいずれかの前で、前記元の画像データの階層の前記特定の１つの後に位置し、また、前記元の画像データの階層の前記特定の１つからの前記第１のタイプの前記画像オブジェクトのそれぞれが、前記再順序付けされた画像データの階層において、前記昇順で、前記元の画像データの階層のいずれかの前記画像オブジェクトの全ての後で、前記元の画像データの階層の前記特定の１つの前に位置し、前記元の画像データの階層のそれぞれの前記第１のタイプの前記画像オブジェクトは、前記再順序付けされた画像データの階層において、前記元の画像データの階層のそれぞれの前記階層内画像オブジェクトの順序の逆の順序で位置する、請求項１に記載のコンピュータにより実現される方法。
【請求項３】
前記第１のタイプの前記画像オブジェクトは、地理的マップの中の道路を表す線オブジェクトである、請求項２に記載のコンピュータにより実現される方法。
【請求項４】
前記画像データ再順序付けルーチンを実行することはさらに、前記元の画像データの階層の２つ以上から第２のタイプの１組の画像オブジェクトを抽出し、第２の再順序付けされた画像データの階層として使用するためのさらなる１組の再順序付けされたデジタル画像データを作成することを含む、請求項２に記載のコンピュータにより実現される方法。
【請求項５】
前記第１のタイプの前記画像オブジェクトは、地理的マップの中の道路の内側部分を表す内側塗り潰しオブジェクトであり、第２のタイプの前記画像オブジェクトは、地理的マップの中の道路の輪郭部分を表す輪郭オブジェクトである、請求項４に記載のコンピュータにより実現される方法。
【請求項６】
メモリに記憶されるｚ値割り当てルーチンを実行することをさらに含み、該ｚ値割り当てルーチンは、元の相対的な画像オブジェクトの深さを維持するために、ｚ値を、画像オブジェクトタイプ、前記画像オブジェクトが位置した前記元の階層の識別情報、および前記階層内画像オブジェクトの順序で前記画像オブジェクトの前記元の位置の関数として、各画像オブジェクトに割り当てる、請求項５に記載のコンピュータにより実現される方法。
【請求項７】
表示されるデジタル画像をレンダリングするために、前記第１および第２の再順序付けされた画像データの階層を使用して、表示レンダリングルーチンを実行することをさらに含み、前記表示レンダリングルーチンは、前記輪郭オブジェクトの前に前記内側塗り潰しオブジェクトをレンダリングし、よって、前記内側塗り潰しオブジェクトは、前記表示の重なり領域の中の関連付けられる輪郭オブジェクトをオクルージョンする、請求項６に記載のコンピュータにより実現される方法。
【請求項８】
ディスプレイ上に画像をレンダリングする際に使用するためのデジタル画像処理システムであって、
通信ネットワークインターフェースと、
１つ以上のプロセッサと、
前記１つ以上のプロセッサに結合される１つ以上のメモリと、
前記１つ以上のメモリの少なくとも１つに記憶されるルーチンであって、前記１つ以上のプロセッサの１つで実行して、表示のためにレンダリングされるように昇順で配置される複数の元の画像データの階層を含む、元の組の階層化デジタル画像データを取得し、各元の画像データの階層は、階層内画像オブジェクトの順序で配置される、複数の異なるタイプの画像オブジェクトを含む、ルーチンと、
前記１つ以上のメモリの１つに記憶されるデジタル画像データ再順序付けルーチンであって、前記１つ以上のプロセッサの１つで実行されると、前記元の組の階層化デジタル画像データから第１のタイプの第１の組の画像オブジェクトを抽出し、１組の再順序付けされたデジタル画像データを作成し、前記１組の再順序付けされたデジタル画像データは、前記第１のタイプの画像オブジェクトを含む第１の階層を含み、前記デジタル画像データ再順序付けルーチンは、前記第１のタイプの前記画像オブジェクトを再順序付けし、よって、前記元の画像データの階層の特定の１つからの前記第１のタイプの前記画像オブジェクトの全てが、前記再順序付けされたデジタル画像データにおいて、前記昇順の前記元の画像データの階層のいずれかからの前記第１のタイプの前記画像オブジェクトのいずれかの前で、前記元の画像データの階層の前記特定の１つの後に位置し、また、前記元の画像データの階層の前記特定の１つからの前記第１のタイプの前記画像オブジェクトのそれぞれが、前記再順序付けされたデジタル画像データにおいて、前記昇順の前記元の画像データの階層のいずれかの前記画像オブジェクトの全ての後で、前記元の画像データの階層の前記特定の１つの前に位置し、前記元の画像データの階層のそれぞれの前記第１のタイプの前記画像オブジェクトは、前記再順序付けされたデジタル画像データにおいて、前記元の画像データの階層のそれぞれの前記階層内画像オブジェクトの順序の逆の順序で位置する、デジタル画像データ再順序付けルーチンと、
前記１つ以上のメモリの１つに記憶されるｚ値割り当てルーチンであって、実行されると、前記再順序付けされたデジタル画像データの中の前記画像オブジェクトの順序の関数として、ｚ値を、前記再順序付けされたデジタル画像データの中の各画像オブジェクトに割り当てる、ｚ値割り当てルーチンと、を備える、デジタル画像処理システム。
【請求項９】
通信ネットワークを介して、再順序付けされた組のデジタル画像データを受け取るように構成される、クライアントデバイスであって、表示デバイスおよび表示レンダリングルーチンを備え、該表示レンダリングルーチンは、実行されると、前記１組の再順序付けされたデジタル画像データを使用して前記表示上に画像をレンダリングする、クライアントデバイスをさらに備える、請求項８に記載のデジタル画像処理システム。
【請求項１０】
命令が記憶されたコンピュータが読み出し可能な非一時的媒体であって、
前記命令は、プロセッサおよび表示レンダリングルーチンを有する画像生成システムで使用するための、および中間画像で元の組の階層化デジタル画像データの各階層をレンダリングすることなく表示されるデジタル画像をレンダリングする際に使用するための、デジタル画像データ再順序付けルーチンを含み、
前記デジタル画像データ再順序付けルーチンは、メモリに記憶される第１のデータアクセスルーチンであって、前記プロセッサ上で実行されると、表示されるデジタル画像をレンダリングする際に使用するための中間画像がマージされる前に、レンダリングされて前記中間画像を形成するように配置される複数の元の階層を含む、元の組の階層化デジタル画像データにアクセスし、各元の階層は、階層内画像オブジェクトの順序で配置される複数の画像オブジェクトを含み、前記元の階層は、昇順で順序付けされる、第１のデータアクセスルーチンと、
１つ以上のデジタル画像データ処理ルーチンであって、前記プロセッサ上で実行されると、前記元の組の階層化デジタル画像データから第１の組の画像オブジェクトを抽出し、１組の再順序付けされたデジタル画像データを作成し、前記１組の再順序付けされたデジタル画像データは、第１のタイプの画像オブジェクトを含む第１の階層を含み、前記１つ以上のデジタル画像データ処理ルーチンは、前記第１のタイプの前記画像オブジェクトを再順序付けし、よって、前記元の階層の特定の１つからの前記第１のタイプの前記画像オブジェクトの全てが、前記１組の再順序付けされたデジタル画像データにおいて、前記昇順の前記元の階層のいずれかからの前記第１のタイプの前記画像オブジェクトのいずれかの前で、前記元の画像データの階層の前記特定の１つの後に位置し、また、前記元の階層の前記特定の１つからの前記第１のタイプの前記画像オブジェクトのそれぞれが、前記１組の再順序付けされたデジタル画像データおいて、前記昇順の元の階層のいずれかの前記画像オブジェクトの全ての後で、前記元の階層の前記特定の１つの前に位置し、前記元の階層のそれぞれの前記第１のタイプの前記画像オブジェクトは、前記１組の再順序付けされたデジタル画像データにおいて、前記元の画像データの階層の前記階層内画像オブジェクトの順序の逆の順序で位置する、１つ以上のデジタル画像データ処理ルーチンと、
前記１つ以上のメモリの１つに記憶されるｚ値割り当てルーチンであって、実行されると、前記元の組の階層化デジタル画像データ内の前記相対的な画像オブジェクトの深さの関数として、ｚ値を、前記再順序付けされたデジタル画像データの中の各画像オブジェクトに割り当てる、ｚ値割り当てルーチンと、を備える、コンピュータが読み出し可能な非一時的媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、デジタル地理的マップ表示システム等の、デジタル画像レンダリングシステムに関する。より具体的には、本開示は、実行されると、元の組の階層化デジタル画像データの各階層を個々にレンダリングすることを必要とせずに、また、中間画像を使用することなく、表示がレンダリングされるように、元の組の「階層化」デジタル画像データを再順序付けする、デジタル画像データ再順序付けルーチンに関する。
【背景技術】
【０００２】
地理的マップ、ゲーミングシステム、解剖図、吹き出し付きの漫画等のデジタル画像が、モバイル電話、カーナビゲーションシステム、ハンドヘルドＧＰＳユニット、コンピュータ、および数多くのウェブサイトを含む、多種多様なデバイスで見られ、さらに、これらの多種多様なデバイスによって表示され得る。デジタル画像は、エンドユーザの観点から、視聴および使用が容易であり、デジタル画像を作成することは、しばしば、困難でプロセッサ集中的なタスクである。任意の所与のデジタル画像表示レンダリングデバイスが所与のデジタル画像を実際に表示する速度は、そのように指示されると、必要とされるデータ処理量のため、遅くなる可能性がある。表示のレンダリング遅延は、エンドユーザの観点から、望ましくない。
【０００３】
しばしば、デジタル画像の作成は、例えば、地理的マップの一部として表示される何百万もの通りおよび交差点、ならびに他の特徴に対応する１組の生のデジタル画像データを、デジタル画像データベースに記憶することから始まる。マップデータベースに記憶される生のデジタルマップデータは、しばしば、様々なソースに由来し、各ソースは、一般的に、異なる量およびタイプの情報を提供する。例えば、第１のソースは、衛星または航空写真の一連の画像ファイルに関連するデータを有するデータベースであり得、第２のソースは、一連の地方道路に関連するデータを有するデータベースであり得、第３のソースは、一連の州道路に関連するデータを有するデータベースであり得、第４のソースは、一連の州間ハイウェイ等に関連するデータを有するデータベースであり得る、等である。従来、結果として生じる１組の階層化デジタル画像データは、複数の階層内に散在する複数の画像オブジェクトおよび画像ファイルの構成を表す。任意の所与の画像オブジェクトは、道路の輪郭または道路の内側部分等の、特定の画像オブジェクトタイプと関連付けられる。デジタル画像マップデータのこれらの個々のソースは、クライアントデバイスによって、または他のマップ表示レンダリングアプリケーションおよびハードウェアによってアクセスされる前に、コンパイルされ、デジタル画像マップデータベースに記憶され得る。
【０００４】
デジタル画像をレンダリングするよく見られる方法は、従来、ベクトル画像データと呼ばれるものを使用する。ベクトル画像データは、一般的に、ゲーミングシステムと関連付けられるもの等の、高解像度で動きの速い画像生成システムで、および特定の３次元ゲーミングシステムで使用される。概して、ベクトル画像データ（またはベクトルデータ）は、表示の一部としてレンダリングされる特定の画像オブジェクト（プリミティブとも称される）を画定するデータを含む。地理的マップを表すデジタル画像という文脈において、そのような画像オブジェクトまたはプリミティブは、例えば、個々の道路、テキストラベル、領域、テキストボックス、建物、鉄道、河川、対象点マーカー、地形特徴、自転車道、マップもしくは通りラベル等を画定し得る。
【０００５】
慣習的に、階層化デジタルマップデータは、種々の階層の全体を通して散在する、多数の画像オブジェクトのホストを含む。例えば、地理的マップの基準階層は、衛星の画像ファイルまたは地球表面の航空写真であり得る。第２の階層は、対応する内側塗り潰しオブジェクトおよび輪郭オブジェクトによって表される地方道路（すなわち、例えば、黒色の輪郭を伴う白色の内側によって表される１つまたは複数の道路）を含み得る。第３の階層は、対応する内側塗り潰しオブジェクトおよび輪郭オブジェクトによって表される州ハイウェイ（すなわち、例えば、黒色の輪郭を伴う灰色の内側によって表される１つまたは複数の道路）を含み得る。第４の階層は、対応する内側塗り潰しオブジェクトおよび輪郭オブジェクトによって表される州間ハイウェイ（すなわち、例えば、黒色の輪郭を伴う橙色の内側によって表される１つまたは複数の道路）を含み得る。任意の所与の階層内の各画像オブジェクトは、形状、色、線サイズ、アルファブレンディング値、ｚ深さ関数値等の、種々の属性を有する。レンダリングされたデジタル画像マップデータは、次いで、３次元空間関係を視覚的に描写するこれらの階層および画像オブジェクトの全てのコンパイルとして表示され得る。任意の所与の組の元の階層化デジタル画像データは、異なって形成される元の階層を有し得、例えば、元の階層の任意の組み合わせが、単一の中間画像を形成するために組み合わせられ得ることを理解されたい。
【０００６】
従来のアプリケーションにおいて、階層化デジタル画像データは、各階層を個々にレンダリングすることによって、対応するクライアントデバイスの表示上にレンダリングされる。元の階層は、最初に、中間画像にラスタライズされる。中間画像は、その後、表示をレンダリングする前にマージされる。中間画像のための追加の記憶、および中間画像をマージするために必要とされる時間は、表示のレンダリング遅延をもたらす。したがって、従来のアプリケーションを使用する階層化デジタル画像マップデータをレンダリングすることは、大きいメモリを必要とし、プロセッサ集中的であり、また、時間を浪費する。
【発明の概要】
【０００７】
表示をレンダリングする際に使用するための元の組の階層化画像データを再順序付けするためのコンピュータにより実現される方法は、中間画像が表示にレンダリングされる前に、レンダリングされて中間画像を形成するように配置される複数の元の画像データの階層を含む、元の組の階層化画像データをコンピュータデバイスで受け取ることを含む。元の画像データの階層のそれぞれは、階層内画像オブジェクトの順序で配置される、複数の画像オブジェクトを含む。本方法は、元の画像データの階層の２つ以上から第１のタイプの１組の画像オブジェクトを抽出し、表示をレンダリングする際に使用するための単一の再順序付けされた画像データの階層として使用するための、１組の再順序付けされた画像データを作成する、画像データ再順序付けルーチンをコンピュータデバイス上で実行する。再順序付けされた画像データの階層は、第１のタイプの画像オブジェクトのそれぞれが抽出された元の画像データの階層の識別情報の関数として、および第１のタイプの画像オブジェクトのそれぞれが抽出された元の画像データの階層の階層内画像オブジェクトの順序の関数として順序付けされる、第１のタイプの画像オブジェクトを含む。本方法は、次に、該再順序付けされた画像データの階層をコンピュータデバイスに記憶する。
【０００８】
別の実施態様において、表示をレンダリングする際に使用するためのデジタル画像レンダリングエンジンは、通信ネットワークインターフェースと、１つ以上のプロセッサと、プロセッサに連結される１つ以上のメモリと、プロセッサに接続される表示デバイスとを含む。通信ルーチンは、メモリの少なくとも１つに記憶され、プロセッサの１つ以上で実行して、通信ネットワークインターフェースを介して、表示にレンダリングされるように昇順で配置される複数の元の画像データの階層を含む、元の組の階層化デジタル画像データを取得する。各元の画像データの階層は、階層内画像オブジェクトの順序で配置される、複数の異なるタイプの画像オブジェクトを含む。デジタル画像データ再順序付けルーチンは、メモリの１つに記憶され、プロセッサの１つで実行されると、元の組の階層化デジタル画像データから第１のタイプの第１の組の画像オブジェクトを抽出し、１組の再順序付けされたデジタル画像データを作成する。１組の再順序付けされたデジタル画像データは、第１のタイプの画像オブジェクトを含む第１の階層を含み、デジタル画像データ再順序付けルーチンは、第１のタイプの画像オブジェクトを再順序付けし、よって、元の画像データの階層の特定の１つからの第１のタイプの画像オブジェクトの全てが、再順序付けされたデジタル画像データにおいて、昇順の元の画像データの階層のいずれかからの第１のタイプの画像オブジェクトのいずれかの前で、元の画像データの階層の特定の１つの後に位置し、また、元の画像データの階層の特定の１つからの第１のタイプの画像オブジェクトのそれぞれが、再順序付けされたデジタル画像データにおいて、昇順の元の画像データの階層のいずれかの画像オブジェクトの全ての後で、元の画像データの階層の特定の１つの前に位置し、元の画像データの階層のそれぞれの第１のタイプの画像オブジェクトは、再順序付けされたデジタル画像データにおいて、元の画像データの階層のそれぞれの階層内画像オブジェクトの順序の逆の順序で位置する。ｚ値割り当てルーチンは、メモリの１つに記憶され、実行されると、再順序付けされたデジタル画像データの中の画像オブジェクトの順序の関数として、ｚ値を、再順序付けされたデジタル画像データの中の各画像オブジェクトに割り当てる。表示レンダリングルーチンは、実行されると、１組の再順序付けされたデジタル画像データを使用して表示をレンダリングするように提供される。
【０００９】
さらに別の実施形態では、プロセッサおよび表示レンダリングルーチンを有する画像生成システムで使用するための、および中間画像で元の組の階層化デジタル画像データの各階層をレンダリングすることなく表示をレンダリングする際に使用するための、デジタル画像データ再順序付けルーチンが提供される。デジタル画像データ再順序付けルーチンは、メモリに記憶される第１のデータアクセスルーチンを含み、該第１のデータアクセスルーチンは、プロセッサ上で実行されると、表示をレンダリングする際に使用するための中間画像がマージされる前に、レンダリングされて中間画像を形成するように配置される複数の元の階層を含む、元の組の階層化デジタル画像データにアクセスする。各元の階層は、階層内画像オブジェクトの順序で配置される複数の画像オブジェクトを含み、元の階層は、昇順で順序付けされる。１つ以上のデジタル画像データ処理ルーチンが含まれ、プロセッサ上で実行されると、元の組の階層化デジタル画像データから第１の組の画像オブジェクトを抽出し、１組の再順序付けされたデジタル画像データを作成する。１組の再順序付けされたデジタル画像データは、第１のタイプの画像オブジェクトを含む第１の階層を含み、１つ以上のデジタル画像データ処理ルーチンは、第１のタイプの画像オブジェクトを再順序付けし、よって、元の階層の特定の１つからの第１のタイプの画像オブジェクトの全てが、１組の再順序付けされたデジタル画像データにおいて、昇順の元の階層のいずれかからの第１のタイプの画像オブジェクトのいずれかの前で、元の画像データの階層の特定の１つの後に位置し、また、元の階層の特定の１つからの第１のタイプの画像オブジェクトのそれぞれが、１組の再順序付けされたデジタル画像データおいて、昇順の元の階層のいずれかの画像オブジェクトの全ての後で、元の階層の特定の１つの前に位置し、元の階層のそれぞれの第１のタイプの画像オブジェクトは、１組の再順序付けされたデジタル画像データにおいて、元の画像データの階層の階層内画像オブジェクトの順序の逆の順序で位置する。ｚ値割り当てルーチンは、メモリの１つに記憶され、実行されると、元の組の階層化デジタル画像データ内の相対的な画像オブジェクトの深さの関数として、ｚ値を、再順序付けされたデジタル画像データの中の各画像オブジェクトに割り当てる。
【００１０】
この発明の概要および以下の発明を実施するための形態で説明される特徴および利点は、全てを含まない。当業者には、多数のさらなる特徴および利点が、図面、明細書、および本明細書の特許請求の範囲を考慮すれば明らかになるであろう。
【図面の簡単な説明】
【００１１】
【図１】サーバに記憶されるデジタル画像データベースと、１つ以上のデジタル画像レンダリングデバイスとの間の通信を実現する、デジタル画像システムのハイレベルブロック図である。
【図２】第１のサーバに記憶されるデジタル画像データベースと、少なくとも１つの第２のサーバに記憶されるデジタル画像データリオーガナイザと、１つ以上のデジタル画像レンダリングデバイスとの間の通信を実現する、デジタル画像生成システムのハイレベルブロック図である。
【図３】階層化デジタル画像データをレンダリングするために使用されるデジタル画像データレンダリングエンジンのハイレベルブロック図である。
【図４Ａ】図５Ａの表で表される元の組のデジタル画像データを再順序付けして、図５Ｂの表で表される再順序付けされた組の画像データを作成するように動作する例示的なルーチンまたはプロセスのフロー図である。
【図４Ｂ】同上
【図５Ａ】それぞれ、再編成される前および再編成された後のデジタル画像データの表である。
【図５Ｂ】同上
【図６Ａ】重なっていて、交差していない道路を描写する図である。
【図６Ｂ】同上
【図７Ａ】説明される表示手法を使用してレンダリングされ得る、交差している道路を描写する図である。
【図７Ｂ】同上
【図８】レンダリングされたデジタル画像データの表示を描写する図である。
【図９】同上
【発明を実施するための形態】
【００１２】
デジタル画像データ再順序付けルーチンは、元の組の階層化デジタル画像データの個々の階層から種々の画像オブジェクトを抽出して、再順序付けされた組のデジタル画像データを作成するが、元の組の階層化デジタル画像データを使用して表示をレンダリングするために必要とされる時間と比較したときに、表示にレンダリングするために必要とされる時間がより少ない。
【００１３】
元の組の階層化デジタル画像データは、階層に基づいて順序付けされ、第１のまたは最下位の階層は、対応する表示の視聴者に対して最も遠く離れた階層を表し、最後のまたは最上位の階層は、視聴者に対して最も近い階層を表す。各元の階層は、道路を表す線オブジェクト等の少なくとも第１のタイプの種々の画像オブジェクトを含む。デジタル画像データ再順序付けルーチンは、元の階層から選別し、第１の画像オブジェクトタイプに関連する少なくとも第１の階層を出力する。対応する表示レンダリングエンジンは、各元の階層を個々にレンダリングすることを必要とせずに、再順序付けされたデジタル画像データの新しい階層を使用して表示をレンダリングし、それによって、表示をレンダリングするために必要とされる時間を低減させる。再順序付けされたデジタル画像データを使用した表示のレンダリングは、表示をレンダリングする前の中間画像の使用を必要とせず、したがって、表示をレンダリングするために必要とされる時間がさらに低減される。
【００１４】
画像オブジェクトは、画像オブジェクトが抽出された元の階層の関数として、および元の階層内画像オブジェクトの順序の関数として、第２の画像オブジェクトの順序で再順序付けされる。ｚ値は、元の組の階層化デジタル画像データ内からの相対的な画像オブジェクトの深さの関数として、再順序付けされたデジタル画像データの中の各画像オブジェクトに割り当てられる。それによって、例えば、多数の元の階層を有する地理的マップを表す元の組の階層化デジタル画像データが、２つの階層に要約され得る。再順序付けされたデジタル画像データの第１の階層は、道路の輪郭を表す画像オブジェクトを含み、再順序付けされたデジタル画像データの第２の階層は、道路のそれぞれの内側部分を表す画像オブジェクトを含む。画像オブジェクトを戦略的に再順序付けし、また、ｚ値を各画像オブジェクトに等しく戦略的に割り当てることによって、表示の中で破線の輪郭で表されるトンネル、および別の場合であれば表示内で視界から覆い隠され得る画像オブジェクトの視覚的外観を提供する、透明な陸橋等の、特徴の表示が達成される。
【００１５】
各元の階層は、上の実施例にあるような道路の輪郭オブジェクトおよび対応する内側塗り潰しオブジェクト等の、種々のタイプの画像オブジェクト（すなわち、１つを超える画像オブジェクトタイプ）を含み得る。デジタル画像データ再順序付けルーチンは、元の階層から選別し、第１の画像オブジェクトタイプに関連する第１の階層、および第２の画像オブジェクトタイプに関連する第２の階層を出力する。対応する表示レンダリングエンジンは、各元の階層を個々にレンダリングすることを必要とせずに、また、中間画像を使用することなく、再順序付けされたデジタル画像データの２つの新しい階層を使用して、表示をレンダリングし、それによって、表示上の画像をレンダリングするために必要とされる時間を低減させる。
【００１６】
一実施例において、元の組の階層化デジタル画像データは、一連の道路を有する地理的マップを表し得る。この場合、道路の内側部分と関連付けられる一連の「内側塗り潰し」オブジェクト、および道路の輪郭部分と関連付けられる一連の「輪郭」オブジェクトが、元の組の階層化デジタルマップデータの種々の階層内に含まれる。プロセッサは、デジタル画像データ再順序付けルーチンを実行して、元の階層化デジタル画像データの種々の階層から内側塗り潰しオブジェクトを抽出し、デジタル画像データの第１の階層を作成する。加えて、デジタル画像データ再順序付けルーチンは、元の階層化デジタル画像データの種々の階層から輪郭オブジェクトを抽出し、デジタル画像データの第２の階層を作成する。デジタル画像データの第１および第２の階層は、コンピュータが読み出し可能な媒体に記憶され、一般的にはるかに多くの階層を含む元のデジタル画像データの外見および３次元的な状況を維持しながら、２つの階層としてレンダリングされる。２つの階層としてレンダリングされるデジタル画像データの第１および第２の階層を使用して、デジタル画像表示をレンダリングすることは、元の階層化デジタル画像データの各階層を個々にレンダリングすることによってデジタル画像表示をレンダリングすることと比較して、あまりプロセッサ集中的でなく、かつ必要とされるメモリが少ない。
【００１７】
「階層」という用語は、画像オブジェクトまたは画像ファイルが互いに対して、および対応する表示の視聴者に対して位置し得る、異なるレベル（すなわち、ｚ深さ）を表すために、デジタル画像データに関連する用語法で、一般的に使用される。個々の階層は、デジタル画像を作成するときに、積み重ねる、マージする、または画定することができる。各階層は、部分的に覆い隠すことができ、異なる階層内の画像オブジェクトの少なくとも一部分に対して、半透明的手法で、所与の階層内のオブジェクトの少なくとも一部分を隠す、または見せることを可能にする。個々の階層は、２つ以上の元の階層が単一の新しい階層を形成するように組み合わせられ得る。編集の目的で、階層によって作業することは、他の階層（複数可）を完全に未編集のままにして、所与の階層内で全体的に変更を加えることを可能にする。２つ以上の階層を組み合わせて、単一の階層を作成すると、以降の編集は、全体として単一の階層に行われる。慣習的に、１組の階層化デジタル画像データ内に含まれる各階層は、中間画像を形成するためにラスタライズされる。中間画像は、次いで、表示上にレンダリングされる前にマージされる。
【００１８】
本明細書で説明されるデジタル画像データ再順序付けルーチンは、所与の表示または画像を形成するためにレンダリングされる必要がある階層の数を低減させるために実行される。表示は、中間画像を使用することなく、再順序付けされたデジタル画像データを使用してレンダリングされる。再順序付けされたデジタル画像データに関して、「階層」という用語は、表示のためにデジタル画像データの階層をレンダリングすることとレンダリングシーケンスとの相関を反映するように維持される。任意の所与の画像オブジェクトまたは画像ファイルの深さは、もはや再順序付けされたデータの階層場所によって決定されない。再順序付けされたデジタル画像データにおいて、画像オブジェクトまたは画像ファイルが互いに対して、および対応する表示の視聴者に対して位置し得る、異なるレベル（すなわち、ｚ深さ）は、個々に割り当てられるｚ値によって決定される。
【００１９】
相対的な画像オブジェクトの深さは、任意の所与の画像オブジェクトが位置する階層に従って、元の組の階層化デジタル画像データにおいて画定される。階層番号が低いほど、視聴者の視点からより遠く離れて画像オブジェクトが現れる。ロードマップを表示するという文脈で、階層は、全般的に、他の道路の上または下を通る道路、道路の交差点、橋、およびトンネルを示す、個々の道路間の３次元的な関係を描写するために使用される。
【００２０】
以下、図１を参照すると、デジタル画像データ再順序付けルーチンを使用するように構成されるデジタル画像システム１１０は、サーバ１１４に、または例えば、中央の場所または種々の異なる離間された場所に位置する複数のサーバに記憶される、デジタル画像データベース１１２を含む。デジタル画像システム１１０はまた、複数のデジタル画像クライアントデバイス１１６、１１８、１２０、および１２２を含み、それらはそれぞれ、デジタル画像データ再順序付けルーチンおよび表示レンダリングルーチンを記憶および実行し、または表示レンダリングエンジンを備える。クライアントデバイス１１６〜１２２は、例えば有線または無線のＬＡＮ、ＭＡＮ、もしくはＷＡＮ、ＷｉＦｉ、インターネット、またはそれらの任意の組み合わせを含む、任意の有線または無線の通信ネットワーク１２５を介して、サーバ１１４に接続され得る。クライアントデバイス１１６〜１２２は、例えば、携帯電話デバイス（１１８）、ラップトップ、デスクトップ、もしくは他のタイプのコンピュータ（１１６、１２０）、または自動車ナビゲーションシステム（１２２）の構成要素等の他の画像生成システムの構成要素、等であり得る。さらに、クライアントデバイス１１６〜１２２は、電話および有線ハードウェア等の、有線に基づく通信構造、ならびに／または、例えば無線ＬＡＮおよびＷＡＮ、衛星および携帯電話通信システム等を含む無線通信ネットワーク等の、無線通信構造を使用するものを含む、公的に利用可能なまたは私有の通信ネットワーク等の任意の好適な通信システムを介して、サーバ１１４に通信可能に接続され得る。
【００２１】
デジタル画像データベース１１２は、ラスタ画像データおよびベクトル画像データを含む、任意の所望のタイプまたは種類のデジタル画像データを記憶し得る。しかしながら、本明細書で説明されるデジタル画像データ再順序付けルーチンおよび表示レンダリングルーチンは、多数の組の画像オブジェクトのそれぞれについて、一連の頂点または頂点のデータ点を画定するまたは含む、ベクトル画像データとの使用に最も適している。全般的に、ベクトルデータによって画定される画像オブジェクトのそれぞれは、それらと関連付けられる複数の頂点を有する。頂点は、各画像オブジェクトをクライアントデバイス１１６〜１２２の１つ以上の表示デバイス上にレンダリングするために使用される。一実施形態において、クライアントデバイス１１６〜１２２のそれぞれは、１つ以上のプロセッサ１３０と、１つ以上のメモリ１３２と、表示デバイス１３４と、多くの場合でのラスタライザまたはグラフィックスカード１３６とを有し、それらは、全般的に既知の手法で相互接続されて、表示レンダリングルーチンを使用して、関連付けられる表示デバイス１３４上に表示をレンダリングする、表示レンダリングエンジンを含み得る。任意の特定のクライアントデバイス１１６〜１２２のための表示デバイス１３４は、液晶ディスプレイ（ＬＣＤ）、発光ダイオード（ＬＥＤ）ディスプレイ、プラズマディスプレイ、陰極線管（ＣＲＴ）ディスプレイ、または任意の他のタイプの既知のまたは好適な電子ディスプレイ等の、任意のタイプの電子表示デバイスであり得る。
【００２２】
全般的に、図１のデジタル画像システム１１０は、ユーザが、クライアントデバイス１１６〜１２２の１つで、サーバ１１４と通信するように動作するデジタル画像アプリケーション（図１では図示せず）の実行を開始して、デジタル画像データベース１１２から１組または複数組の元の階層化デジタル画像データを取得するように動作する。所与のクライアントデバイスは、元の階層化デジタル画像データの種々の階層から画像オブジェクトを抽出するデジタル画像データ再順序付けルーチンを実行して、元の階層化デジタル画像データよりも少ない階層を有する、再順序付けされたデジタル画像データを作成する。クライアントデバイスは、次いで、再順序付けされたデジタル画像データを使用して表示をレンダリングする、表示レンダリングルーチン（図１では図示せず）を実行する。デジタル画像アプリケーションは、ユーザが、例えば、デジタル画像データベース１１２に記憶される元の階層化デジタル画像データの異なる地理的部分を見ること、特定の地理的な場所を拡大または縮小すること、表示されているデジタル画像の２次元または３次元視角を回転、スピン、または切り替えること、等を可能にする。
【００２３】
より具体的には、本明細書で説明される画像システムを使用して表示デバイス１３４上に画像をレンダリングするときに、クライアントデバイス１１６〜１２２のそれぞれは、デジタル画像データベース１１２からデジタル画像データをダウンロードし、１つ以上のデジタル画像データ再順序付けルーチンを使用してそのデータを処理する。再順序付けされたデジタル画像データは、元の階層化デジタル画像データよりも少ない階層を有し、よって、再順序付けされたデータは、あまりプロセッサ集中的でない手法で、関連付けられる表示デバイス１３４上に画像をレンダリングするために、クライアントデバイスによって使用することができる。この動作を行うデジタル画像データ再順序付けルーチンは、クライアントデバイスのメモリ１３２に記憶され、クライアントデバイスのプロセッサ１３０によって実行される。さらに、アルファ属性値割り当ておよびブレンディングルーチン、ならびにｚ深さ関数値割り当てルーチンもまた、メモリ１３２に記憶され、プロセッサ１３０上で実行されて、アルファ属性値およびｚ深さ関数値を、それぞれ、各画像オブジェクトに割り当てる。関連する実施形態において、クライアントデバイスは、再順序付けされたデジタル画像データを使用して表示をレンダリングする、表示レンダリングルーチンをクライアントデバイスプロセッサ１３０上で実行する。
【００２４】
全般的に、図２のデジタル画像システム２１０は、ユーザの観点から、図１のデジタル画像システム１１０と同様に動作する。図２のデジタル画像システム２１０において、デジタル画像データ再順序付けルーチンは、サーバ２１４、２４０、２４５のうちの１つの中のメモリ２１５、２４２、２４７に記憶され、それぞれ、プロセッサ２１３、２４１、２４６によって実行される。デジタル画像システム１１０、２１０は、ユーザの観点から、同様に動作するが、図１のデジタル画像データ再順序付けルーチンは、クライアントデバイスのメモリ１３２に記憶され、クライアントデバイスプロセッサ１３０上で実行される。階層化デジタル画像データは、図１のクライアントデバイス１１６〜１２２に通信されるが、再順序付けされたデジタル画像データは、図２のクライアントデバイス２１６〜２２２に通信される。図２で描写される２００番台の参照番号を伴う残りの要素は、図１の１００番台の参照番号を伴う対応する要素を参照して説明される要素に類似する。
【００２５】
図２のデジタル画像システム２１０内で使用されるとき、アルファ属性値割り当ておよびブレンディングルーチン、ならびに／またはｚ深さ関数値割り当てルーチンもまた、メモリ２３２に記憶され、プロセッサ２３０上で実行され、また、アルファ属性値および／またはｚ深さ関数値を各画像オブジェクトに割り当てるように動作する。あるいは、図２のデジタル画像システム２１０内で使用されるとき、アルファ属性値割り当ておよびブレンディングルーチン、ならびに／またはｚ深さ関数値割り当てルーチンは、メモリ２１３、２４１、２４６のうちのいずれか１つに記憶され得、また、プロセッサ２１５、２４２、２４７のそれぞれで実行され得、アルファ属性値およびｚ深さ関数値を各画像オブジェクトに割り当てる。
【００２６】
図３は、クライアントデバイス１１６〜１２２、２１６〜２２２のうちの１つと関連付けられるか、またはそれによって実現される、表示レンダリングエンジン３００を描写する。図１のデジタル画像システム１１０と組み合わせて使用されるとき、クライアントデバイス１１６〜１２２は、デジタル画像データ再順序付けルーチン３１４および表示レンダリングルーチン３２３の双方を実行する。図２のデジタル画像システム２１０と組み合わせて使用されるとき、クライアントデバイス２１６〜２２２は、表示レンダリングルーチン３２３だけを実行し、一方で、デジタル画像データ再順序付けルーチン３１４は、少なくとも部分的に、サーバ２１４、２４０、２４５のうちの１つで実行される。例えば画像オブジェクト抽出ルーチン３１５等の、デジタル画像データ再順序付けルーチン３１４の一部分は、サーバ２１４、２４０、２４５のうちの１つで実行され得、一方で、画像オブジェクト再順序付けルーチン３２０は、例えば、クライアントデバイス２１６〜２２２上で実行されることを理解されたい。
【００２７】
図３の表示レンダリングエンジン３００は、２つのプロセッサ３４０、３４５と、３つのメモリ３０８、３２４、３６０と、ユーザインターフェース３５５と、ラスタライザ３５０とを含む。プロセッサ３４５、メモリ３２４、およびラスタライザ３５０は、別個のグラフィックスカード上に配置される（水平線の下側に示す）。あるいは、表示レンダリングエンジンを実現するために、単一のプロセッサが使用され得る。加えて、表示レンダリングエンジン３００は、ネットワークインターフェース３０５を含む。メモリ３０８、３２４、および３６０は、揮発性および不揮発性メモリのどちらかまたは双方を含み得る。
【００２８】
通信および記憶ルーチン３０９、ならびに１つ以上のデジタル画像アプリケーション３１０は、メモリ３０８に記憶される。通信および記憶ルーチン３０９は、プロセッサ３４０上で実行されて、ネットワークインターフェース３０５を介して受け取られる、１組または複数組のデジタル画像データを獲得し、メモリ３６０に記憶する。ネットワークインターフェース３０５は、例えば有線または無線の通信ネットワークを介してサーバ１１４、２１４、２４０、２４５のうちの１つと通信するように動作する、任意のよく知られているソフトウェアおよび／またはハードウェア構成要素を含む。例えば、メモリ３６０は、バッファまたは揮発性メモリであり得る。図１で描写されるデジタル画像システム１１０において、通信および記憶ルーチン３０９は、サーバ１１４を介して、デジタル画像データベース１１２から１組または複数組の元の階層化デジタル画像データを獲得し、記憶するために実行される。図２で描写されるデジタル画像システム２１０において、通信および記憶ルーチン３０９は、サーバ２１４、２４０、２４５のうちの１つから１組または複数組の再順序付けされたデジタル画像データを獲得し、記憶するために実行され、所与のサーバ２１４、２４０、２４５は、デジタル画像データ再順序付けルーチン３１４を実行する。図３で描写されるように、デジタル画像データ再順序付けルーチン３１４は、１つ以上の画像オブジェクト抽出ルーチン３１５と、メモリ３０８に記憶される１つ以上の画像オブジェクト再順序付けルーチン３２０とを含み得る。画像オブジェクト抽出ルーチン３１５および画像オブジェクト再順序付けルーチン３２０は、組み合わせられ、メモリ３０８に記憶され、また、プロセッサ３４０上で実行され得ることを理解されたい。
【００２９】
動作において、デジタル画像アプリケーション３１０は、ユーザの開始に応じて、プロセッサ３４０上で実行して、例えばユーザ入力、グローバルポジショニングシステム（ＧＰＳ）信号、事前に記憶された論理またはプログラミング等を使用して、表示のために所望される特定の１組または複数組のデジタル画像データを決定する。デジタル画像アプリケーション３１０は、所望のデジタル画像データを取得するために、ネットワークインターフェース３０５を通して、サーバ１１４、２１４、２４０、２４５のうちの１つと通信することによって、通信および記憶ルーチン３０９を使用して、デジタル画像データベース１１２、２１２と相互作用する。要求されたデジタル画像データは、ネットワークインターフェース３０５を介して返され、メモリ３６０に記憶される。特定の例において、デジタル画像データは、データベース１１２、２１２からダウンロードされる。デジタル画像データは、表示をレンダリングするために使用される、コンパクトで、構造化された、または別様には最適化されたバージョンの最終的なベクトルデータであり得、対応するデジタル画像アプリケーション３１０は、ダウンロードされたベクトルデータを、プロセッサ３４０を使用して特定の頂点データ点に変換するように動作し得る。全般的に、デジタル画像データベース１１２、２１２に記憶されるデジタル画像データは、ベクトルデータ、および場合により、いくつかの異なる画像オブジェクトと関連付けられる１組の頂点のそれぞれについてデータを画定する、１つ以上のルックアップテーブルを含み得る。より具体的には、各画像オブジェクトのベクトルデータは、特定の画像オブジェクトを形成する１つ以上の三角形と関連付けられる複数の頂点を含み得る。
【００３０】
アルファ属性値割り当ておよびブレンディングルーチン３２１もまた、メモリ３０８に記憶され、プロセッサ３４０上で実行されて、アルファ属性値を、各画像オブジェクトに割り当て、同じタイプの画像オブジェクトの重なり部分をアルファブレンドする。同様に、ｚ深さ関数値割り当てルーチン３２２は、メモリ３０８に記憶され、プロセッサ３４０上で実行されて、デジタル画像データ再順序付けルーチンと連動して、ｚ深さ関数値を各画像オブジェクトに割り当てる。当然、アルファ属性値割り当ておよびブレンディングルーチン、ならびにｚ深さ関数値割り当てルーチンは、単一のルーチンとして、組み合わせられ、記憶され、また、実行され得る。
【００３１】
フラグメントシェーダ３３０を有するグラフィックスカードは、処理される画素毎に、ｚ値およびブレンドアルファ値を計算するために利用され得る。いくつかの組み込みグラフィックスカード上では、頂点シェーダ３２５によって作成される頂点に基づいて、ｚ値が直接計算される。組み込みＡＰＩに基づくＷｅｂＧＬは、ｚ値を計算するために利用され得る。
【００３２】
図４Ａ、図５Ａ、および図５Ｂを参照すると、表示レンダリングエンジン３００がデジタル地理的マップレンダリングデバイスとして構成される、表示レンダリングエンジン３００の具体的な実施例が記載されている。この実施例において、デジタル画像データ再順序付けおよび属性割り当てルーチン４００ａは、図５Ａで描写される１組の元の階層化デジタル画像データ５００ａを取得するために実行される。具体的には、デジタル画像データ再順序付けおよび属性割り当てルーチン４００ａは、開始ブロック４０５ａを介して開始される。次に、ブロック４１０ａで、複数の階層の間に散在する複数の輪郭オブジェクトおよび複数の内側塗り潰しオブジェクトを含む一連の道路を表す、元の階層化デジタル画像データ５００ａが獲得される。輪郭オブジェクトは、道路の輪郭部分を視覚的に表し、内側塗り潰しオブジェクトは、道路の内側部分を視覚的に表す。図５Ａの実施例の１組の元の階層化デジタル画像データ５００ａは、列５０５ａで描写されるように、元の階層１と、元の階層２と、元の階層３とを含む。元の階層１は、列５１０ａで描写されるように、３つの輪郭オブジェクトと、３つの内側塗り潰しオブジェクトとを含む。元の階層２は、列５１０ａで描写されるように、２つの輪郭オブジェクトと、２つの内側塗り潰しオブジェクトとを含む。元の階層３は、列５１０ａで描写されるように、４つの輪郭オブジェクトと、４つの内側塗り潰しオブジェクトとを含む。元の階層化デジタル画像データの個々の画像オブジェクトは、最初は、列５１５ａで描写される元の画像オブジェクトの順序に従って順序付けされる。しかしながら、元の階層化デジタル画像データが任意の数の元の階層を含み得、任意の数の画像オブジェクトタイプが各元の階層に含まれ得ること、および図５Ａの元の階層化デジタル画像データが１つの実施例に過ぎないことを理解されたい。
【００３３】
さらに図４Ａを参照すると、画像オブジェクト抽出ブロック４１５ａは、元の組の階層化デジタル画像データから内側塗り潰しオブジェクトを抽出して、図５Ｂの列５２０ｂで描写されるように、再順序付けされた階層１を作成するために実行される。画像オブジェクト抽出ブロック４１５ａはさらに、元の組の階層化デジタル画像データから輪郭オブジェクトを抽出して、図５Ｂの列５２０ｂで描写されるように、再順序付けされた階層２を作成する。画像オブジェクト再順序付けブロック４２０ａは、図５Ｂの列５１０ｂで描写されるように、抽出された内側塗り潰しオブジェクトを再順序付けするために実行される。画像オブジェクト再順序付けブロック４２０ａはさらに、図５Ｂの列５１０ｂで描写されるように、抽出された輪郭オブジェクトを再順序付けする。列５２０ｂと列５０５ａとを比較して分かるように、再順序付けされたデジタル画像データは、元の階層化デジタル画像データよりも少ない階層を有する。元の組の階層化デジタル画像データは、１つの画像オブジェクトタイプ、例えば道路を表す線オブジェクトだけしか有しなくてもよいことを理解されたい。元の組の階層化デジタル画像データは、３つ以上の画像オブジェクトタイプを含み得る。
【００３４】
図４Ａを再度参照すると、ブロック４２５ａで、ｚ値が各画像オブジェクトに割り当てられる。デジタル画像データに関連する用語において、「ｚバッファリング」は、３次元（３Ｄ）グラフィックスにおける画像オブジェクトまたは画像ファイル深さの座標の管理に関して使用される用語である。しかしながら、Ｚバッファリングは、通常ハードウェアにおいて行われ、あるときにはソフトウェアで行われる。Ｚバッファリングは、視認性の問題に対する１つの解決策を提供するが、この問題は、レンダリングされた表示のどの画像オブジェクトが見えて、どれが隠されているのかを決定することと関連付けられる問題である。画像オブジェクトが３Ｄグラフィックスカードによってレンダリングされるときに、生成される画素の深さ（ｚ座標）が、バッファ（ｚバッファまたは深さバッファ）に記憶される。このバッファは、通常、各画素について１つの要素を有する２次元アレイ（ｘ−ｙ）として配置される。別の画像オブジェクトが同じ画素でレンダリングされるとき、グラフィックスカードは、２つの深さを比較し、視聴者により近い画像オブジェクトと関連付けられる深さを選択する。次いで、選択された深さがｚバッファに保存される。最後に、ｚバッファは、グラフィックスカードが、所望の深さ知覚を正しく再現する（例えば、より近いオブジェクトがより遠いものを隠す）ことを可能にする。「Ｚ選別」は、画素深さに基づく初期画素除去である。Ｚ選別は、「隠れた」画素が除去された後に隠れ面をレンダリングするときに、能力の増加を提供する。隠れ画素除去は、ｚバッファリングの直接的な利益であり、各画素候補の深さは、その後に隠れている可能性がある、既存の幾何学形状の深さと比較される。
【００３５】
新しい表示のレンダリングの開始時に、ｚバッファは、所定の値、通常１．０に設定されるが、その理由は、この値が深さの上限（０〜１の尺度）であるからであり、視聴している円錐台を通していかなる画像オブジェクトもこの時点で存在しないことを意味する。ｚバッファを使用すると、画素は、その深さが隠れることが分かるとすぐに選別（除去）することができ、それは、いずれにせよ見えなくなる画素を照明し、テクスチャ化するといった全プロセスをスキップすることを可能にする。また、時間を浪費する画素シェーダは、全般的に、選別された画素に対して実行されない。これは、塗り潰し率、照明、テクスチャ化、または画素シェーダが制限要因である状況において、ｚ選別を良好な最適化候補にする。
【００３６】
全般的な事項として、ｚ深さ関数値は、再順序付けされたデジタル画像データにおいて、元の階層化デジタル画像データの各画像オブジェクトの相対的なｚ深さが維持されるように、各画像オブジェクトに割り当てられる。所与の画像オブジェクトの最終的なｚ値は、１）画像オブジェクトタイプ、２）画像オブジェクトが位置した元の階層、および３）画像オブジェクトの元の順序の関数である。より具体的には、元の階層化デジタル画像データの第１の階層から抽出される第１のタイプの画像オブジェクトは、それらの元の順序の関数として、最も低いｚ値が割り当てられる。次に低いｚ値は、元の階層化デジタル画像データの第１の階層から抽出される第２のタイプの画像オブジェクトに、それらの元の順序の関数として割り当てられる。このｚ値割り当てシーケンスは、元の階層化デジタル画像データの第１の階層の全ての画像オブジェクトが割り当てられるまで、元の階層化デジタル画像データの第１の階層内に含まれる各画像オブジェクトタイプについて継続される。ｚ値が、元の階層化デジタル画像データの第１の階層から抽出される各画像オブジェクトに割り当てられると、ｚ値は、元のデジタル画像データの第２の層から抽出される第１の画像オブジェクトタイプに割り当てられる。このｚ値割り当てシーケンスは、元の階層化デジタル画像データの最後の階層の最後の画像オブジェクトタイプのｚ値が割り当てられるまで継続される。
【００３７】
図５Ｂを参照すると、ｚ深さ関数値は、視聴者から最も遠い元の階層内で、視聴者から最も遠い輪郭オブジェクト（すなわち、元の画像オブジェクトの順序の輪郭オブジェクト１）から始めて、割り当てられる。ｚ深さ関数値割り当てルーチンは、視聴者に最も近い第１の元の階層内に含まれる輪郭オブジェクト（すなわち、元の画像オブジェクトの順序の輪郭オブジェクト５）まで進みながら、元の階層化デジタル画像データの第１の階層から抽出される残りの輪郭オブジェクトの割り当てを継続する。ｚ深さ関数値割り当てルーチンは、次に、視聴者から最も遠く離れた内側塗り潰しオブジェクト（すなわち、元の画像オブジェクト順序の内側塗り潰しオブジェクト２）から始めて、視聴者に最も近い第１の元の階層から抽出される内側塗り潰しオブジェクト（すなわち、元の画像オブジェクト順序の内側塗り潰しオブジェクト６）まで進みながら、第１の元の階層から抽出される内側塗り潰しオブジェクトへの値の割り当てを継続する。残りのｚ深さ関数値は、このパターンに従って輪郭オブジェクトおよび内側塗り潰しオブジェクトに割り当てられて、視聴者に最も近い元の階層まで進む。元の階層化デジタル画像データの任意の所与の階層内に含まれる同じタイプの画像オブジェクトは、元の画像オブジェクトの順序に比例して増加するｚ値とは対照的に、同じｚ値が割り当てられ得ることを理解されたい。
【００３８】
ブロック４２５ａで、ｚ深さ関数値割り当てルーチンが実行され、列５３０ｂで描写されるように、ｚ深さ関数値を、各内側塗り潰しオブジェクトおよび各輪郭オブジェクトに割り当てる。第１の元の階層の輪郭オブジェクトと関連付けられるｚ深さ関数値は、それらが視聴者の観点から最も遠く離れて表示されるという事実を反映するように、ゼロから始めて割り当てられる（すなわち、ｚ値３、２、１）。第１の元の階層の内側塗り潰しオブジェクトと関連付けられるｚ深さ関数値は、次のｚ値（すなわち、ｚ値６、５、４）が割り当てられる。第２の元の階層の輪郭オブジェクトと関連付けられるｚ深さ関数値は、次のｚ値（すなわちｚ値８、７）が割り当てられる。第２の元の階層の内側塗り潰しオブジェクトと関連付けられるｚ深さ関数値は、次のｚ値（すなわち、ｚ値１０、９）が割り当てられる。第３の元の階層の輪郭オブジェクトと関連付けられるｚ深さ関数値は、次のｚ値（すなわち、ｚ値１４、１３、１２、１１）が割り当てられる。第３の元の階層の内側塗り潰しオブジェクトと関連付けられるｚ深さ関数値は、次のｚ値（すなわち、ｚ値１８、１７、１６、１５）が割り当てられる。ブロック４１５ａ、４２０ａ、４２５ａの実行の結果として、元の組の階層化デジタル画像データ内に含まれる各画像オブジェクトの相対的な深さの関係は、ｚ深さ関数値を各画像オブジェクトに割り当てることによって、再順序付けされたデジタル画像データにおいて維持される。
【００３９】
さらに図４Ａおよび図５Ｂを参照すると、ブロック４３０ａで、アルファ属性値割り当ておよびブレンディングルーチンが実行され、列５３５ｂで描写されるように、アルファ属性値を各内側塗り潰しオブジェクトおよび各輪郭オブジェクトに割り当てる。アルファ属性値は、２つ以上の画像オブジェクトの重なり部分を視覚的に表現するために、表示をレンダリングするときに使用される。全般的に、元の組の階層化デジタル画像データに含まれる各画像オブジェクトと関連付けられるアルファ属性値は、再順序付けされたデジタル画像データにおいて維持される。アルファ属性値は、一般的に、所与の色に対応する。任意の所与のアルファ属性値は、例えば、視聴者のプリファレンスに応じて割り当てられ得ることを理解されたい。
【００４０】
デジタル画像合成は、複数のデジタル画像をデジタル的に組み立てて、一般的に印刷または表示のための、１つの最終画像を作成するプロセスである。デジタル画像合成は、光学フィルム合成のデジタル分野への発展を表す。デジタル画像データに関連する用語において、「アルファブレンディング」は、単一の出力画素値に合成される２つ以上の入力画素値の比率を制御するために、不透明度値（アルファ（「α」））が使用される場合に使用される用語である。アルファブレンディングは、図６Ｂ、図７Ｂ、図８、および図９に関して説明される所望の視覚効果を達成するために使用される。アルファブレンディングは、いくつかの数学計算の任意の１つに従って行われ得、以下の説明は、例示的な計算を示す。
前景画素ｆ
背景画素ｂ
合成画素ｃ、
および
前景画素の不透明度値α。（α＝１は、不透明な前景、α＝０は、完全に透明な前景）。
【００４１】
３つ全ての色チャネルを考慮し（すなわち、赤色−添え字ｒで示される、緑色−添え字ｇで表される、青色−添え字ｂで表される）、また、色チャネルがγ＝１の色空間で表される（すなわち、測定値が光強度に比例する）と仮定すると、結果として次のようになる。
ｃr＝αｆr＋（１−α）ｂr
ｃg＝αｆg＋（１−α）ｂg
ｃb＝αｆb＋（１−α）ｂb
【００４２】
４つの階層をアルファブレンドして、最終画像（すなわち、例えば、航空写真の上に重ね合わせられた３つの重なった道路を有する、地理的マップの一部分）を作成する場合、Ｆ＝Ａ＊（Ｂ＊（Ｃ＊Ｄ））であり、ここで、Ａ、Ｂ、Ｃ、Ｄは、部分的に透明な画像オブジェクトであり、そして、「＊」は、合成演算子（左側の階層が右側の階層の上にある）を意味する。階層Ｃだけが変化する場合は、Ｆを計算するときに階層の全てを再ブレンディングすることを回避すべきである。何らかの特別な考慮をしなければ、４つの完全な画像ブレンドを生じさせることが必要となってしまう。付加的なブレンディング等の可換的である合成演算子の場合、ブレンディング演算を再順序付けしても問題はない。この場合、Ｔ＝Ａ＊（Ｂ＊Ｄ）が１度だけ計算され、Ｔ＊Ｃがブレンドされて、単一の操作でＦを作成する。残念なことに、大部分の演算子は、可換的でない。しかしながら、多くは、結合的である。したがって、それらの順序を変えることなく、演算を再編成しても問題はない。この場合、Ｓ＝Ａ＊Ｂを１度計算し、この結果を保存することができる。結合的な演算子を有するＦを形成するために、２つの追加の合成演算を行って、新しい階層Ｃを統合する：Ｆ＝Ｓ＊（Ｃ＊Ｄ）。この式は、１つのステップで、Ｃをそれよりも下にある階層の全てと合成し、次いで、第２のステップで、それよりも上にある階層の全てを以前の結果とブレンドして、最終画像を作成することに留意されたい。
【００４３】
全ての画像の階層を規則的に変化させ、（分散レンダリング等で）合成する必要がある場合、事前計算によるいかなる利益もないときであっても、並列性を通して計算を迅速化するために、やはり合成演算子の可換性を利用することができる。再び、画像Ｆ＝Ａ＊（Ｂ＊（Ｃ＊Ｄ））を考える。この式の各合成演算は、隣に依存し、逐次計算となる。しかしながら、可換性は、Ｆ＝（Ａ＊Ｂ）＊（Ｃ＊Ｄ）を書き換えることを可能にし、互いに依存せず、並列に実行され得る、２つの演算が明確にある。全般的に、ペアワイズ合成演算のツリーは、階層の数において対数関数的である高さで導き出され得る。
【００４４】
ブレンドされる各画素値は、任意の他の画素の値に対して重み付けされ得る。例えば、３つの画像オブジェクトが重なり部分を有し、各画像オブジェクトが５０％のアルファ値を有するとき、結果として生じる表示は、背景から１２．５％の寄与、描かれた第１の画像オブジェクトから１２．５％の寄与、描かれた第２の画像オブジェクトから２５％の寄与、描かれた第３の画像オブジェクトから５０％の寄与を有することになる。
【００４５】
再度図５Ｂを参照すると、列５１５ｂの元の画像オブジェクトの順序の横に、再順序付けされた画像オブジェクトが列５２５ｂで示される。図５Ａの列５０５ａを図５Ｂの列５２０ｂと比較することによって認識することができるように、元の階層化デジタル画像データは、対応する表示をレンダリングするために、３つのドローコールが必要であるが、再順序付けされたデジタル画像データは、対応する表示をレンダリングするために、２つのドローコールだけしか必要としない。異なる画像オブジェクトタイプの数に対する階層の数の比率が高い元の階層化デジタル画像データは、必要とされる処理リソースに対して利益をもたらし、説明を簡単にするために、元の階層化デジタル画像データに３つの階層を有し、２つの異なる画像オブジェクトタイプを有する、図５Ａおよび５Ｂを選択したことを認識されたい。
【００４６】
図４Ｂは、クライアントデバイス１１６〜１２２上での実行に適している表示レンダリングルーチン４００ｂを描写する。開始ブロック４０５ｂで、表示レンダリングルーチンが開始される。次に、ブロック４１０ｂで、１組の再順序付けされたデジタル画像データが獲得される。ブロック４１５ｂで、最上位の画像オブジェクト（すなわち、視聴者に最も近い最上位）から始まって、最下位の画像オブジェクトまで進みながら、階層内画像オブジェクトが連続的にバッファリングされる。ブロック４２０ｂで、最下位の階層（すなわち、視聴者から最も離れた最下位）から始まって、再順序付けされたデジタル画像データの第１および第２の階層が連続的にバッファリングされる。ブロック４２５ｂで、各階層をレンダリングするために、個々のドローコールが行われる。
【００４７】
図５Ａおよび５Ｂの実施例に適用される、表示レンダリングルーチン４００ｂの特定の実現例では、元の組の階層化デジタル画像データから階層内オブジェクトの第１の群がバッファリングされ、よって、３つの内側塗り潰しオブジェクト（すなわち、元の画像オブジェクトの順序２、４、６）を含む第１の元の階層が、画像オブジェクトの順序６、４、２でバッファリングされ、続いて、２つの内側塗り潰しオブジェクトを含む第２の元の階層（すなわち、元の画像オブジェクトの順序８、１０）が、画像オブジェクトの順序１０、８でバッファリングされ、そして、４つの内側塗り潰しオブジェクトを含む第３の元の階層（すなわち、元の画像オブジェクトの順序１２、１４、１６、１８）が、画像オブジェクトの順序１８、１６、１４、１２でバッファリングされる。元の組の階層化デジタル画像データからの階層内オブジェクトの第２の群がバッファリングされ、よって、３つの輪郭オブジェクトを含む第１の元の階層（すなわち、元の画像オブジェクトの順序１、３、５）が、画像オブジェクトの順序５、３、１でバッファリングされ、続いて、２つの輪郭オブジェクトを含む第２の元の階層（すなわち、元の画像オブジェクトの順序７、９）が、画像オブジェクトの順序９、７でバッファリングされ、そして、４つの輪郭オブジェクトを含む第３の元の階層（すなわち、元の画像オブジェクトの順序１１、１３、１５、１７）が、画像オブジェクト順序１７、１５、１３、１１でバッファリングされる。ブロック４２５ｂで、内側塗り潰しオブジェクトを表示の上にレンダリングする第１のドローコールが行われ、その後に、輪郭オブジェクトをレンダリングする第２のドローコールが続く。
【００４８】
第１および第２のドローコールは、同じ組の画像オブジェクト属性を含み得る。しかしながら、属性のいくつかは、異なる値（すなわち、異なる線タイプ、異なる線幅、異なる色等）が割り当てられる。再度道路マップを参照すると、内側塗り潰しオブジェクトおよび輪郭オブジェクトはどちらも、視覚的に線として表される。輪郭オブジェクトの線幅属性は、内側塗り潰しオブジェクトの線幅よりも大きい。図６Ａ、６Ｂ、図７Ａ、７Ｂ、図８、および図９に関して例示されるように、内側塗り潰しオブジェクトを対応する輪郭オブジェクトの上にレンダリングすることによって、中間に第２の色を伴う第１の色の輪郭を有する所望の道路の外観が達成される。
【００４９】
例示のために、図６Ａは、領域６１０ａで第２の道路６１５ａの下を通過する、第１の道路６０５ａの地下道６００ａを描写する。第１の道路６０５ａは、輪郭６０６ａ、６０７ａを有し、第２の道路６１５ａは、輪郭６１６ａ、６１７ａを有する。領域６１０ａでは、第１の道路と第２の道路との間に、いかなるアルファブレンディングも提供されない。したがって、道路６１５ａの輪郭および内側部分は、領域６１０ａを通って連続するように描写される。
【００５０】
図６Ａと同様に、図６Ｂは、領域６１０ｂで第２の道路６１５ｂの下を通過する、第１の道路８０５ｂの地下道６００ｂを描写する。第１の道路８０５ｂは、輪郭６０６ｂ、６０７ｂを有し、第２の道路６１０ｂは、輪郭６１６ｂ、６１７ｂを有する。図６Ａの実施例とは異なり、領域６１０ｂでは、第１の道路６０５ｂと第２の道路６１５ｂとの間に、アルファブレンディングが提供される。このように、道路６０５ｂ、６１５ｂの対応する輪郭および内側部分はどちらも、領域６１０ｂにおける重なりを視覚的に示す。領域６１０ｂの色は、道路６０５ｂの内側部分の色および道路６１５ｂの内側部分の色のアルファブレンディングである。本明細書で説明されるｚ値割り当てルーチンに従って、ｚ値が個々の画像オブジェクトに割り当てられるとき、異なるタイプの画像オブジェクトが互いに重なっているときに、アルファブレンディングは使用されない。アルファブレンディングは、同じタイプの画像オブジェクトの重なりに対してだけ行われる。例えば、内側塗り潰しオブジェクトの重なり部分は、互いにアルファブレンドされるが、内側塗り潰しオブジェクトは、輪郭オブジェクトの重なり部分とはアルファブレンドされない。
【００５１】
図７Ａは、領域７１０ａでの第１の道路７０５ａの第２の道路７１５ａとの交差点７００ａを描写する。第１の道路７０５ａは、輪郭７０６ａ、７０７ａを有し、第２の道路７１０ａは、輪郭７１６ａ、７１７ａを有する。領域７１０ａでは、道路が交差しているので、第１の道路と第２の道路との間にはいかなるアルファブレンディングも提供されず、したがって、一般的に同じ色である。このように、道路７０５ａ、７１５ａの対応する輪郭および内側部分はどちらも、道路が交差することを視覚的に示す。
【００５２】
図７Ｂは、領域７１０ｂでの第１の道路７０５ｂの第２の道路７１５ｂとの交差点７００ｂを描写する。第１の道路７０５ｂは、輪郭７０６ｂ、７０７ｂを有し、第２の道路７１０ｂは、輪郭７１６ｂ、７１７ｂを有する。領域７１０ｂでは、第１の道路と第２の道路との間にアルファブレンディングが提供される。図６Ａおよび６Ｂと図７Ａおよび７Ｂとの比較によって認識できるように、アルファブレンディングは、重なっている道路の視覚的外観を向上させる。一方で、アルファブレンドは、交差する道路の視覚的外観を損なう。
【００５３】
図８は、両側に陸地８１０を有するベイエリア８０５を含む、デジタル画像表示８００を描写する。第１の内側塗り潰しオブジェクト８１５および第２の内側塗り潰しオブジェクト８２０、ならびに関連付けられる輪郭オブジェクト８１６、８１７、８２１は、ベイエリア８０５の下のトンネルを示す。領域８２５、８２６は、トンネル入口および出口を示す。第２の内側塗り潰しオブジェクト８３０および関連付けられる輪郭オブジェクト８３１、８３２は、ベイエリア８０５の上の橋を示す。第３の内側塗り潰しオブジェクト８３５および関連付けられる輪郭オブジェクト８３６、８３７は、陸地８１０上の道路を示す。図８は、他の道路と階層化され、アルファブレンドされた破線の輪郭として表されるトンネルを描写し、よって、破線の輪郭は、トンネルが水の下および他の道路の下に延在することを視覚的に示す。
【００５４】
トンネルと関連付けられる破線の輪郭オブジェクトおよび内側塗り潰しオブジェクトはどちらも、領域８２５、８２６で表示８００内に視覚的に表される。トンネルと関連付けられる破線の輪郭オブジェクトも、内側塗り潰しオブジェクトもどちらも、陸地（または水）と関連付けられる画像オブジェクト、陸上の道路と関連付けられる画像オブジェクト、または陸橋と関連付けられる画像オブジェクトのいずれによっても覆い隠されない。トンネル、陸地（または水）、陸上の道路、および陸橋と関連付けられる内側塗り潰しオブジェクトの重なり部分は、２つの内側塗り潰しオブジェクトだけが重なっているとき、３つの内側塗り潰しオブジェクトが重なっているとき、等を視覚的に反映するために、互いにアルファブレンドされる。関連付けられる内側塗り潰しオブジェクトの重なり部分の、結果として生じる色は、個々の内側塗り潰しオブジェクト部分のアルファブレンディングである。
【００５５】
元の組の階層化デジタル画像データを使用して表示をレンダリングすることは、中間画像の使用を必要とする。例えば、表示を、トンネルと関連付けられる破線の輪郭オブジェクトでレンダリングすることは、次のように進行する。１）灰色の太い完全に不透明な破線の輪郭オブジェクトを中間画像の中へレンダリングする、２）アルファブレンディングを行わずに、無色で若干細い中実の内側塗り潰しオブジェクトを中間画像の中へレンダリングする（すなわち、重なり部分において、中間画像の中の不透明な灰色の画素を完全に透明な画素と置き換え、よって、灰色が、トンネルの内側部分内に入る）、そして、３）アルファブレンディングを使用して、中間画像をそれより下にある基準マップの上へ合成する。水中にあるトンネルの中央の領域の中の画素を、レンダリングプロセスを通して追跡すると、１）画素は、水を表す青色として始まり、２）青色の背景を有する中間画像が作成され、３）破線の輪郭オブジェクトを第２の中間画像の中へレンダリングし、その結果、不透明な、破線で灰色の輪郭オブジェクトが得られ、４）無色のトンネル内側塗り潰しオブジェクトを第２の中間画像の中へレンダリングし、その結果、無色の内側塗り潰しオブジェクトおよび破線で灰色のトンネル輪郭が得られ、そして、５）２つの中間画像をアルファブレンディングで合成し、よって、破線で灰色の輪郭によって表されるトンネルとともに青色の背景が現れる。中間画像を使用することなく、トンネル輪郭オブジェクトおよび内側塗り潰しオブジェクトを背景の上へ直接レンダリングしないことで、異なる結果が生じる。このシーケンスにおける表示のレンダリングは、次のように進行する。１）画素は、水から青色で始まり、２）灰色で破線の輪郭オブジェクトをレンダリングし、画素が灰色になり、そして、３）無色で中実の内側塗り潰しオブジェクトをレンダリングし、アルファブレンディングが使用されない場合は画素が無色になり、アルファブレンディングが使用される場合は灰色のままである。トンネルの内側部分と関連付けられる画素は、青色のままである。したがって、元の組の階層化デジタル階層データを使用して表示をレンダリングするときには中間画像が必要とされる。階層のオブジェクトをレンダリングする順序が逆で、階層のオブジェクトが背景上に直接レンダリングされるときであっても、元の組の階層化デジタル画像データを使用して表示をレンダリングするときには中間画像が必要とされる。例えば、水の領域内のトンネルの内側部分内の画素を追跡すると、次のように進行する。１）画素は、青色から始まり、２）無色で中実の内側塗り潰しオブジェクトをレンダリングし、アルファブレンディングが使用されない場合は画素が無色になるか、またはアルファブレンディングが使用される場合は青色のままであり、そして、３）灰色で破線の輪郭オブジェクトをレンダリングし、画素は、灰色になる。同じように、所望の結果は、トンネルの内側部分と関連付けられる画素が青色を有することである。
【００５６】
内側塗り潰しオブジェクトが対応する輪郭オブジェクトよりも視聴者に近く、表示が再順序付けされたデジタル画像データを使用してレンダリングされるように、ｚバッファリングが利用されるとき、レンダリングシーケンスは次のように進行する。１）画素は、トンネル輪郭オブジェクトまたはトンネル内側塗り潰しオブジェクトよりも低いｚ値を有する青色から始まり、２）無色で中実の内側塗り潰しオブジェクトをレンダリングし、アルファブレンディングが使用されない場合は画素が無色になるか、またはアルファブレンディングが使用されるときには画素が青色のままであり、結果として生じる画素ｚ値は、視聴者に近づき、そして、３）灰色で破線の輪郭オブジェクトをレンダリングし、画素が灰色になる。しかしながら、破線で灰色の輪郭オブジェクトは、画素が現在有するｚ値よりも視聴者から遠く離れたｚ値を有し、したがって、いかなる変化も生じない。所望に応じて、アルファブレンディングが使用されるときに、結果として生じる画素は、青色である。したがって、対応する輪郭オブジェクトのｚ値よりも視聴者に近いｚ値を有する内側塗り潰しオブジェクトを最初にレンダリングすることによって、再順序付けされたデジタル画像データを使用して表示をレンダリングすると、所望の結果が達成される。
【００５７】
図９は、第１の内側塗り潰しオブジェクト９０５および関連付けられる輪郭オブジェクト９０６、９０７で描写されるハイウェイを有する陸地９０６を含む、デジタル画像表示９００を描写する。ハイウェイから地方道路まで延在する一連の出口ランプは、第２の内側塗り潰しオブジェクト９１０および関連付けられる輪郭オブジェクト９１１、９１２で描写される。地方道路は、第３の内側塗り潰しオブジェクト９１５、および領域９１８でハイウェイの上を渡る、関連付けられる輪郭オブジェクト９１６、９１７で描写される。少なくとも１つの実施形態において、第３の内側塗り潰しオブジェクト９１５の領域９１８および第１の内側塗り潰しオブジェクト９０５は、図６Ｂで描写されるようにアルファブレンドされる。透明度の視覚効果は、しばしば、図９で描写されるもの等の事例において望ましく、図中、領域９１８は、基準の航空写真と、基準階層の上に積み重ねられる２つの交差する道路との組み合わせである。輪郭９１６、９１７は連続的であり、輪郭９０６、９０７は断続的であり、どちらの道路が上を渡っているのかを視覚的に示す。領域９１８と関連付けられる内側塗り潰しオブジェクトは、３３．３３％の基準階層色、３３．３３％の道路９０５、および３３．３３％の道路９１５でアルファブレンドされる。領域９１８と関連付けられる内側塗り潰しオブジェクトは、代替として、５０％の基準階層色、２５％の道路９０５、および２５％の道路９１５のアルファブレンディングであり得る。いずれにしても、内側塗り潰しオブジェクトは、輪郭オブジェクトでアルファブレンドされない。
【００５８】
透明な陸橋は、再順序付けされたデジタル画像データを使用して表示をレンダリングするときに、下側にある画像オブジェクトの視界を提供するためにレンダリングされ得る。例えば、５０％不透明な白色の道路内側を有する緑色の背景、および１００％不透明な黒色の輪郭が、１００％不透明な黒色の輪郭を有する５０％不透明な黄色の道路内側の下に描写され得る。再順序付けされたデジタル画像データを使用して表示をレンダリングするときに、道路の白色の内側塗り潰しオブジェクトは、対応する輪郭オブジェクトの前にレンダリングされる。レンダリングプロセスは、次のように進行する。１）視聴者から遠く離れたｚ値を有する緑色の背景から始まり、２）内側塗り潰しオブジェクトを５０％白色の背景でレンダリングし、その結果、５０％緑色および５０％白色が得られ、視聴者に対して中間レベルであるｚ値を有し、３）白色の内側塗り潰しオブジェクトと比較したときに、視聴者に対してより遠く離れたｚ値を有する黒色の輪郭オブジェクトをレンダリングし、したがって、内側塗り潰しオブジェクト領域内で輪郭オブジェクトと関連付けられる画素は、白色のままであり、４）５０％黄色および視聴者の近くにあるｚ値を有する黄色の内側塗り潰しオブジェクトをレンダリングし、その結果、２５％緑色、２５％白色、および５０％黄色の背景が得られ、そして、５）対応する黄色の内側塗り潰しオブジェクトと関連付けられるｚ値よりも視聴者に対して遠く離れたｚ値を有する黒色の輪郭オブジェクトをレンダリングし、したがって、黄色の内側塗り潰しオブジェクトの内側部分と関連付けられる画素は、変化しないままである。再順序付けされたデジタル画像データを使用して表示をレンダリングすることは、透明な陸橋を提供するための所望の結果を達成する。
【００５９】
表示が元の組の階層化デジタル画像データを使用してレンダリングされるとき、透明な陸橋を作成するために、中間画像が必要とされる。表示レンダリングプロセスは、次のように進行する。１）太い１００％不透明な黒色の線を白色の道の輪郭の中間画像の中へレンダリングし、２）アルファブレンディングを行わずに、より細い５０％不透明な白色の線を中間画像の中へレンダリングし、重なり部分の中の黒色を白色と置き換え、３）アルファブレンディングで中間画像を背景の上へ合成して、５０％緑色の背景、および１００％黒色の輪郭を有する５０％白色の道路を得て、４）太い１００％不透明な黒色の輪郭オブジェクトを黄色の道路の輪郭と関連付けられる第２の中間画像の中へレンダリングし、５）アルファブレンディングを行わずに、より細い５０％不透明な黄色の内側塗り潰しオブジェクトを第２の中間画像の中へレンダリングし、重なり部分の中の黒色の輪郭オブジェクトを黄色と置き換え、そして、６）アルファブレンディングで第２の中間画像を背景の上へ合成して、２５％緑色の背景、２５％白色の道路、および５０％黄色の道路を得る。対応するレンダリングプロセスを通して画素を追跡すると、次のように進行する。１）背景を緑色とし、２）緑色である背景を有する中間画像を作成し、道路の内側部分を白色とし、３）白色の道路の輪郭と関連付けられる黒色の輪郭オブジェクトをレンダリングし、背景を緑色とし、道路輪郭を黒色とし、４）白色の道路内側をレンダリングし、背景を緑色とし、中間を５０％不透明の白色とし、５）背景を有する中間画像、結果として生じる道路内側部分は、５０％緑色および５０％白色であり、６）５０％緑色および５０％白色である背景を有する第２の中間画像を作成し、７）黄色の道路の輪郭と関連付けられる黒色の輪郭オブジェクトをレンダリングすると、その結果、黄色の道路について黒色の輪郭を有する５０％緑色および５０％白色となり、８）黄色の内側塗り潰しオブジェクトをレンダリングすると、その結果、５０％緑色および５０％白色の内側塗り潰しオブジェクトを有する背景を有し、５０％不透明な黄色の内側塗り潰しオブジェクトとなり、そして、９）アルファブレンディングで中間画像を合成し、その結果、２５％緑色、２５％白色、および５０％黄色である重なり部分が得られる。
【００６０】
中間画像を伴わずに元の組の階層化デジタル画像データを使用して表示をレンダリングすると、１）緑色、２）黒色、３）５０％黒色、５０％白色、４）黒色、および５）５０％黒色および５０％黄色となる。これは、透明な陸橋を有することを達成しない。画像オブジェクトレンダリングを逆にすると、同様に望ましくない結果が生じ、ｚ値が使用され、アルファブレンディングが使用される。１）緑色の背景、および視聴者から遠く離れた対応するｚ値から始まり、２）５０％黄色を加えると、結果は、５０％緑色、５０％黄色となり、結果として生じるｚ値は、視聴者により近くなり、３）対応する内側塗り潰しオブジェクトよりも視聴者から遠く離れたｚ値を有する黒色の輪郭オブジェクトをレンダリングすると、結果として、重なり部分において黒色が取り除かれ、４）黄色の内側塗り潰しオブジェクトと比較してより視聴者から遠く離れたｚ値を有する白色の道路をレンダリングすると、その結果、重なり部分において白色がオクルージョンされ、５）黄色の内側塗り潰しオブジェクトと比較したときに視聴者からより遠く離れたｚ値を有する黒色の輪郭をレンダリングすると、したがって、重なり部分において黒色の輪郭オブジェクトがオクルージョンされる。結果は、５０％緑色および５０％黄色であり、白色の内側塗り潰しオブジェクトはアルファブレンドされないが、それは望ましくない。白色の道路がオクルージョンされないように、白色の道路がより高いｚ値を割り当てられたときでも、レンダリングプロセスは、次のように進行する。１）視聴者から遠く離れたｚ値を有する緑色の背景から始まり、２）５０％黄色を加えると、その結果、５０％緑色および５０％黄色となり、結果として生じるｚ値は、視聴者により近くなり、３）より遠く離れたｚ値を有する黒色の輪郭オブジェクトをレンダリングし、よって、重なり部分において黒色の輪郭オブジェクトがオクルージョンされ、４）視聴者の近くにあるｚ値を有する白色の道路内側塗り潰しオブジェクトをレンダリングすると、その結果、２５％緑色、２５％黄色、および５０％白色であり、結果として生じるｚ値は、視聴者により近くなり、そして、５）より遠く離れたｚ値を有する黒色の輪郭オブジェクトをレンダリングし、よって、重なり部分において黒色の輪郭オブジェクトがオクルージョンされる。結果が白色である代わりに、黄色を最も強くさせることが望ましい。
【００６１】
各階層を個々にレンダリングすることなく階層化デジタル画像データをレンダリングする方法は、階層においてデータをレンダリングするという類概念にまで広がり、各階層は、所与の階層内で画像オブジェクトのアルファブレンディングを利用しない。しかしながら、個々の階層自体は、ともにアルファブレンドされる。例えば、骨格系、循環系等を有する人体の解剖図と関連付けられる１組の元の階層化デジタル画像データは、個々の階層内で最上位のオブジェクトだけが各画素においてレンダリングされる、異なる階層を有するが、階層は、互いの上にアルファブレンドされる。これは、クライアントデバイスの視聴者が、例えば、単に最上部の筋肉からその下の筋肉およびその下の別の筋肉まで見通すだけで、よって、クライアントデバイスの視聴者は、臓器まで十分に見通すことができないというのではなく、筋肉を５０％の不透明度にして後の臓器まで見通し、該臓器がどのように位置しているのかを確認することを可能にする。
【００６２】
階層は、階層内の各パスのｚ深さ値がその階層の任意の以前のパスのｚ深さ値よりも大きいが、視聴者に対して最上位の任意の階層の任意のパスのｚ深さ値未満であることを確実にすることによって、同じデータを通じて複数のパスにレンダリングされ得る。最後から最初への逆の順序でパスをレンダリングすると、所望の表示が達成される結果となる。一例として、ドロップシャドウを伴う画像オブジェクトの階層（すなわち、漫画の吹き出し）を、表示の中に描写することができる。ドロップシャドウは、最初に、関連する吹き出しに対して右下への移動を伴う透明な黒色の吹き出しをレンダリングすることによってレンダリングされる。所与の階層の陰影の全てをレンダリングした後に、吹き出し自体が、いかなるアルファブレンディングも伴わずに、所望の色および場所にレンダリングされ、よって、オクルージョンされた陰影領域が、吹き出しの対応する部分と完全に置き換えられる。この種の２つのパスレンダリングはまた、最後のパスを最初にレンダリングし、ｚ深さ関数値が本明細書で説明されるように割り当てられることを確実にし、よって、吹き出しが最初にレンダリングされ、別途陰影が描画される部分をオクルージョンすることによっても達成され得る。その後に陰影がレンダリングされるとき、該陰影は、そのような重なり領域にはレンダリングされず、陰影が最初に描画され、次いでオクルージョンされた場合と同じ外観を与える。
【００６３】
所与のデジタル画像データ再順序付けルーチンは、デジタル画像データの追加の階層（すなわち、第３の組、第４の組、・・・、等）を作成し得ることを理解されたい。例えば、元の組のデジタル画像データは、種々の階層内に配置される人体解剖図に関連する画像オブジェクトを含み得る。本開示に従うデジタル画像データ再順序付けルーチンは、実行されると、「皮膚」オブジェクトに対応するデジタル画像データの第１階層、「筋肉」オブジェクトに対応するデジタル画像データの第２の階層、「骨格」オブジェクトに対応するデジタル画像データの第３の階層、「神経」オブジェクトに対応するデジタル画像データの第４の階層、・・・、等を提供する。
【００６４】
本明細書で詳細に説明される具体的な実施例および実施形態は、本発明を実行する最良の形態の説明を提供すること、および当業者が本発明を作製し、使用することを可能にするという条件を説明文が満たすことが意図されることを理解されたい。いかなる場合も、これらの実施例および実施形態は、添付の特許請求の範囲を限定するものと解釈されるべきではない。
【図１】
0006008973.tif 000002
【図２】
0006008973.tif 000003
【図３】
0006008973.tif 000004
【図４Ａ】
0006008973.tif 000005
【図４Ｂ】
0006008973.tif 000006
【図５Ａ】
0006008973.tif 000007
【図５Ｂ】
0006008973.tif 000008
【図６Ａ】
0006008973.tif 000009
【図６Ｂ】
0006008973.tif 000010
【図７Ａ】
0006008973.tif 000011
【図７Ｂ】
0006008973.tif 000012
【図８】
0006008973.tif 000013
【図９】
0006008973.tif 000014