(57)【特許請求の範囲】
【請求項１】
一つの対象物を多数のアングルから見たときの３次元画像の一覧を表示する３次元画像表示方法であって、
（Ａ）前記コンピュータが、水平角度の範囲と垂直角度の範囲を一定の刻み幅で分割することで、前記３次元画像を描写するときのアングルとして、水平角度と垂直角度を要素にもつ２次元配列データを生成し、前記２次元配列データに従い、前記３次元画像を表示するマトリクスの行数と列数を決定するステップ、
（Ｂ）コンピュータが、前記３次元画像のサイズおよび前記２次元配列データの行列数から、前記３次元画像をマトリクス状に表示するために必要なメモリ空間である描写領域を、前記コンピュータのメモリ内に設けるステップ、
（Ｃ）前記コンピュータが、ディスプレイに表示する領域である表示領域を前記描写領域の一部に設定するステップ、
（Ｄ）前記コンピュータが、前記表示領域に描写される前記３次元画像の前記２次元配列データを特定し、前記２次元配列データの要素として記憶されている前記水平角度と前記垂直角度を用いて、前記表示領域に含まれる前記３次元画像を優先的に描写するステップ、
（Ｅ）前記コンピュータが、前記表示領域に含まれる前記３次元画像を優先的に描写した後、前記前記表示領域に隣接する前記マトリックスの領域から順に、前記３次元画像を描写するステップ、
を備えたことを特徴とする３次元画像表示方法。
【請求項２】
請求項１に記載の３次元画像表示方法であって、
（Ｆ）前記コンピュータは、前記描写領域内における前記表示領域の位置を変更する要求を受けると、前記コンピュータは、要求に従い前記描写領域内における前記表示領域の位置を変更するステップを備え、前記（Ｆ）を実行した後、前記コンピュータは、前記（Ｄ）からの手順を実行することを特徴とする３次元画像表示方法。
【請求項３】
請求項２に記載の３次元画像表示方法であって、
前記（Ｄ）および前記（Ｅ）において、前記コンピュータは、描写が完了した前記３次元画像の前記２次元配列データに、描写の完了を示す完了フラグを付与し、前記コンピュータは、前記３次元画像を描写するときに、前記完了フラグを確認し、前記完了フラグが付与されていない前記３次元画像を描画することを特徴とする３次元画像表示方法。
【請求項４】
請求項１から請求項３のいずれか一つに記載の３次元画像表示方法であって、前記コンピュータには、３行３列の小領域に含まれる９個の前記３次元画像に対し、前記３次元画像の描写順序を示すインデックス番号を付与するアルゴリズムが定められ、前記（Ｃ）において、前記表示領域を前記描写領域内に設定すると、前記コンピュータは、前記アルゴリズムに従い、前記表示領域の中心に前記小領域を設定し、前記小領域に含まれる前記３次元画像の前記２次元配列データに前記インデックス番号を付与した後、前記インデックス番号に従い前記小領域の位置を移動させ、繰返し前記アルゴリズムを実行することで、前記３次元画像の前記２次元配列データに前記インデックス番号を付与し、前記（Ｄ）および前記（Ｅ）において、前記コンピュータは前記インデックス番号の順に前記２次元配列データを用いて前記３次元画像を描写することを特徴とする３次元画像表示方法。
【請求項５】
請求項４に記載の３次元画像表示方法であって、前記アルゴリズムは、中央、中央左、中央右、中央上、中央下、左上隅、右上隅、左下隅そして右下隅の順で前記インデックス番号を振る手順であることを特徴とする３次元画像表示方法。
【請求項６】
請求項１から請求項５のいずれか一つに記載の３次元画像表示方法であって、前記３次元画像は、前記対象物の前記３次元画像を縮小した画像であるサムネイルとすることを特徴とする３次元画像表示方法。
【請求項７】
一つの対象物を多数のアングルから見たときの３次元画像の一覧を表示する３次元画像表示装置であって、
水平角度の範囲と垂直角度の範囲を一定の刻み幅で分割することで、前記３次元画像を描写するときのアングルとして、水平角度と垂直角度を要素にもつ２次元配列データを生成し、前記３次元画像のサイズおよび前記２次元配列データの行列数から、前記３次元画像をマトリクス状に表示するために必要なメモリ空間である描写領域を、前記３次元画像表示装置のメモリ内に設ける描写領域設定手段と、
前記３次元画像表示装置に接続されたディスプレイに表示する領域である表示領域を、前記描写領域の指示された位置に設定する表示領域設定手段と、
前記２次元配列データを参照し、前記表示領域に描写される前記３次元画像の前記２次元配列データを特定し、前記２次元配列データの要素として記憶されている前記水平角度と前記垂直角度を用いて、前記表示領域に含まれる前記３次元画像を優先的に描写した後、前記表示領域に隣接する前記３次元画像から順に、前記表示領域に含まれない前記３次元画像を描写する３次元画像描写手段と、
前記表示領域に含まれる前記３次元画像の描写が完了すると、前記表示領域内のデータを前記ディスプレイに表示する前記３次元画像表示手段と、
を備えたことを特徴とする３次元画像表示方法。
【請求項８】
請求項７に記載の３次元画像表示装置であって、
前記描写領域内における前記表示領域の位置を変更する要求を受けると、前記コンピュータは、要求に従い前記描写領域内における前記表示領域の位置を変更する表示領域移動手段を備えたことを特徴とする３次元画像表示方法。
【請求項９】
請求項８に記載の３次元画像表示装置であって、
前記３次元画像描写手段は、描写が完了した前記３次元画像の前記２次元配列データに、描写の完了を示す描写済フラグを付与し、前記３次元画像描写手段は、前記３次元画像を描写するときに、前記２次元配列データに付与された前記描写済フラグを確認し、前記描写済フラグが付与されていない前記３次元画像を描写することを特徴とする３次元画像表示装置。
【請求項１０】
請求項７から請求項９のいずれか一つに記載の３次元画像表示装置であって、前記表示領域設定手段には、３行３列の小領域に含まれる９個の前記３次元画像に対し、前記３次元画像の描写順序を示すインデックス番号を付与するアルゴリズムが定められ、前記表示領域を前記描写領域内に設定すると、前記アルゴリズムに従い、前記表示領域の中心に前記小領域を設定し、前記小領域に含まれる前記３次元画像の前記２次元配列データにインデックス番号を付与した後、前記インデックス番号に従い前記小領域の位置を移動させ、繰返し前記アルゴリズムを実行することで、前記２次元配列データに前記インデックス番号を付与する手段で、前記３次元画像描写手段は、前記インデックス番号の順に前記２次元配列データを用いて前記３次元画像を描写することを特徴とする３次元画像表示装置。
【請求項１１】
請求項１０に記載の３次元画像表示装置であって、前記アルゴリズムは、中央、中央左、中央右、中央上、中央下、左上隅、右上隅、左下隅そして右下隅の順で前記インデックス番号を振る手順であることを特徴とする３次元画像表示装置。
【請求項１２】
請求項１０から請求項１１のいずれか一つに記載の３次元画像表示装置であって、前記３次元画像描写手段は、前記対象物の前記３次元画像を縮小した画像であるサムネイルを描写することを特徴とする３次元画像表示装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータ内部で制作された商品の３次元画像の表示方法、および、３次元画像を表示する装置に関する。
【背景技術】
【０００２】
従来、雑誌やカタログに掲載される商品の画像として、実際のカメラで商品を撮影した写真が利用されてきたが、コンピュータ技術の発展に伴い、コンピュータで制作された商品の３次元画像(3DCG: 3 Dimension Computer Graphics)を、商品の画像として利用するケースが増えている。
【０００３】
商品の３次元画像の制作工程では、まず、対象となる商品の仮想３次元モデルを作成するモデリング工程、光源、画角やアングルなど、３次元画像制作ソフトのカメラワークを設定するカメラワーク設定工程、設定したカメラワークに従い、３次元画像制作ソフトのカメラで商品の仮想３次元モデルを撮影したときの３次元画像を描写するレンダリング工程が、少なくとも実行される。
【０００４】
カメラワークの一つのパレメータであるアングルは、３次元画像の制作作業において重要なファクターで、同じ商品であっても、３次元画像を制作するときのアングルが異なると、消費者に与える商品の印象は大きく変わるため、３次元画像の制作者は、消費者に与える商品の印象が最もよくなるアングルを選択して設定する。
【０００５】
このように、３次元画像の制作作業において、３次元画像制作ソフトのカメラで商品の仮想３次元モデルを撮影するときのアングルは重要なファクターであるため、本出願人は、既に特許文献１において、雑誌やカタログの制作者が３次元画像制作現場等に赴かなくても、アングルやライティングなどのカメラワークのパラメータを直接的に指示することを可能とするシステムを開示している。
【特許文献１】特開2007-172558号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかし、特許文献１で開示している発明では、ディスプレイのウィンドウに表示される３次元画像のアングルをリアルタイムで自由に調整できるものの、少しずつ変えた多数のアングルから見たときの多数の３次元画像を一度に表示し、それぞれの３次元画像を見比べてアングルを決定することはできなかった。
【０００７】
少しずつ変えた多数のアングルから見たときの複数の３次元画像を一度に表示することは、容易に可能ではあるが、一つの３次元画像を描写するためには莫大な計算量を必要とするため、多数の３次元画像すべてを描写した後に３次元画像を表示すると、３次元画像が表示されるまでに莫大な時間がかかってしまい、実用性に欠ける問題がある。例えば、１５００枚の３次元画像を描写するとき、３０ｆｐｓの速度で描写すると５０秒もかかってしまう。
【０００８】
そこで、本発明は、一つの対象物（例えば、商品）を多数のアングルから見たときの３次元画像の一覧をディスプレイ表示させるときに、３次元画像が表示されるまでの時間を短縮することのできる方法および装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上述した課題を解決する第１の発明は、一つの対象物を多数のアングルから見たときの３次元画像の一覧を表示する３次元画像表示方法であって、
（Ａ）前記コンピュータが、水平角度の範囲と垂直角度の範囲を一定の刻み幅で分割することで、前記３次元画像を描写するときのアングルとして、水平角度と垂直角度を要素にもつ２次元配列データを生成し、前記２次元配列データに従い、前記３次元画像を表示するマトリクスの行数と列数を決定するステップ、
（Ｂ）コンピュータが、前記３次元画像のサイズおよび前記２次元配列データの行列数から、前記３次元画像をマトリクス状に表示するために必要なメモリ空間である描写領域を、前記コンピュータのメモリ内に設けるステップ、
（Ｃ）前記コンピュータが、ディスプレイに表示する領域である表示領域を前記描写領域の一部に設定するステップ、
（Ｄ）前記コンピュータが、前記表示領域に描写される前記３次元画像の前記２次元配列データを特定し、前記２次元配列データの要素として記憶されている前記水平角度と前記垂直角度を用いて、前記表示領域に含まれる前記３次元画像を優先的に描写するステップ、
（Ｅ）前記コンピュータが、前記表示領域に含まれる前記３次元画像を優先的に描写した後、前記前記表示領域に隣接する前記マトリックスの領域から順に、前記３次元画像を描写するステップ、
を備えたことを特徴とする。
【００１０】
第１の発明によれば、前記ディスプレイに表示する前記３次元画像が優先的に描写されるため、前記対象物（例えば、商品）を多数のアングルから見たときの前記３次元画像の一覧を前記ディスプレイ表示させるときに、３次元画像が表示されるまでの時間を短縮することができる。
【００１１】
更に、第２の発明は、第１の発明に記載の３次元画像表示方法であって、
（Ｆ）前記コンピュータは、前記描写領域内における前記表示領域の位置を変更する要求を受けると、前記コンピュータは、要求に従い前記描写領域内における前記表示領域の位置を変更するステップを備え、前記（Ｆ）を実行した後、前記コンピュータは、前記（Ｄ）からの手順を実行することを特徴とする。
【００１２】
第２の発明によれば、表示する前記３次元画像が変更されたときでも、前記ディスプレイに表示する前記３次元画像が優先的に描写できる。
【００１３】
更に、第３の発明は、第２の発明に記載の３次元画像表示方法であって、
前記（Ｄ）および前記（Ｅ）において、前記コンピュータは、描写が完了した前記３次元画像の前記２次元配列データに、描写の完了を示す完了フラグを付与し、前記コンピュータは、前記３次元画像を描写するときに、前記完了フラグを確認し、前記完了フラグが付与されていない前記３次元画像を描写することを特徴とする。
【００１４】
第３の発明によれば、前記表示領域が変更されたときに、描写が完了している前記３次元画像を再描写することを防止できる。
【００１５】
更に、第４の発明は、第１の発明から第３の発明のいずれか一つに記載の３次元画像表示方法であって、前記コンピュータには、３行３列の小領域に含まれる９個の前記３次元画像に対し、前記３次元画像の描写順序を示すインデックス番号を付与するアルゴリズムが定められ、前記（Ｃ）において、前記表示領域を前記描写領域内に設定すると、前記コンピュータは、前記アルゴリズムに従い、前記表示領域の中心に前記小領域を設定し、前記小領域に含まれる前記３次元画像の前記２次元配列データに前記インデックス番号を付与した後、前記インデックス番号に従い前記小領域の位置を移動させ、繰返し前記アルゴリズムを実行することで、前記３次元画像の前記２次元配列データに前記インデックス番号を付与し、前記（Ｄ）および前記（Ｅ）において、前記コンピュータは前記インデックス番号の順に前記２次元配列データを用いて前記３次元画像を描写することを特徴とする。
【００１６】
第４の発明によれば、前記表示領域の中心に設定された前記小領域を中心として広がるように、前記インデックス番号が振られるため、前記表示領域に含まれる前記３次元画像を優先的に描写でき、更に、前記表示領域を近傍に移動させても、速やかに前記３次元画像を表示させることができる。
【００１７】
更に、第５の発明は、第４の発明に記載の３次元画像表示方法であって、前記アルゴリズムは、中央、中央左、中央右、中央上、中央下、左上隅、右上隅、左下隅そして右下隅の順で前記インデックス番号を振る手順であることを特徴とする。
【００１８】
第５の発明によれば、前記アルゴリズムに従い前記インデックス番号を振ることで、前記小領域がｎ×ｎ（ｎは奇数）の領域に広がるように、前記３次元画像に前記インデックス番号が振られるため、前記表示領域をｎ×ｎ（ｎは奇数）の領域とすれば、前記表示領域に含まれる前記３次元画像を前記ディスプレイに表示するタイミングが取り易くなる。
【００１９】
更に、第６の発明は、第１の発明から第５の発明のいずれか一つに記載の３次元画像表示方法であって、前記３次元画像は、前記対象物の前記３次元画像を縮小した画像であるサムネイルとすることを特徴とする。
【００２０】
更に、第７の発明は、一つの対象物を多数のアングルから見たときの３次元画像の一覧を表示する３次元画像表示装置であって、
水平角度の範囲と垂直角度の範囲を一定の刻み幅で分割することで、前記３次元画像を描写するときのアングルとして、水平角度と垂直角度を要素にもつ２次元配列データを生成し、前記３次元画像のサイズおよび前記２次元配列データの行列数から、前記３次元画像をマトリクス状に表示するために必要なメモリ空間である描写領域を、前記３次元画像表示装置のメモリ内に設ける描写領域設定手段と、
前記３次元画像表示装置に接続されたディスプレイに表示する領域である表示領域を、前記描写領域の指示された位置に設定する表示領域設定手段と、
前記２次元配列データを参照し、前記表示領域に描写される前記３次元画像の前記２次元配列データを特定し、前記２次元配列データの要素として記憶されている前記水平角度と前記垂直角度を用いて、前記表示領域に含まれる前記３次元画像を優先的に描写した後、前記表示領域に隣接する前記３次元画像から順に、前記表示領域に含まれない前記３次元画像を描写する３次元画像描写手段と、
前記表示領域に含まれる前記３次元画像の描写が完了すると、前記表示領域内のデータを前記ディスプレイに表示する前記３次元画像表示手段と、
を備えたことを特徴とする。
【００２１】
更に、第８の発明は、第７の発明に記載の３次元画像表示装置であって、
前記描写領域内における前記表示領域の位置を変更する要求を受けると、前記コンピュータは、要求に従い前記描写領域内における前記表示領域の位置を変更する表示領域移動手段を備えたことを特徴とする。
【００２２】
更に、第９の発明は、第８の発明に記載の３次元画像表示装置であって、
前記３次元画像描写手段は、描写が完了した前記３次元画像の前記２次元配列データに、描写の完了を示す描写済フラグを付与し、前記３次元画像描写手段は、前記３次元画像を描写するときに、前記２次元配列データに付与された前記描写済フラグを確認し、前記描写済フラグが付与されていない前記３次元画像を描写することを特徴とする。
【００２３】
更に、第１０の発明は、第７の発明から第９の発明のいずれか一つに記載の３次元画像表示装置であって、前記表示領域設定手段には、３行３列の小領域に含まれる９個の前記３次元画像に対し、前記３次元画像の描写順序を示すインデックス番号を付与するアルゴリズムが定められ、前記表示領域を前記描写領域内に設定すると、前記アルゴリズムに従い、前記表示領域の中心に前記小領域を設定し、前記小領域に含まれる前記３次元画像の前記２次元配列データにインデックス番号を付与した後、前記インデックス番号に従い前記小領域の位置を移動させ、繰返し前記アルゴリズムを実行することで、前記２次元配列データに前記インデックス番号を付与する手段で、前記３次元画像描写手段は、前記インデックス番号の順に前記２次元配列データを用いて前記３次元画像を描写することを特徴とする。
【００２４】
更に、第１１の発明は、第１０の発明に記載の３次元画像表示装置であって、前記アルゴリズムは、中央、中央左、中央右、中央上、中央下、左上隅、右上隅、左下隅そして右下隅の順で前記インデックス番号を振る手順であることを特徴とする。
【００２５】
更に、第１２の発明は、第１０の発明から第１１の発明のいずれか一つに記載の３次元画像表示装置であって、前記３次元画像描写手段は、前記対象物の前記３次元画像を縮小した画像であるサムネイルを描写することを特徴とする。
【００２６】
上述した第７の発明から第１２の発明によれば、上述した第１の発明から第６の発明と同様の効果が得られる。
【発明の効果】
【００２７】
上述した本発明によれば、一つの対象物（例えば、商品）を多数のアングルから見たときの３次元画像の一覧をディスプレイ表示させるときに、３次元画像が表示されるまでの時間を短縮することのできる方法および装置を提供できる。
【発明を実施するための最良の形態】
【００２８】
ここから、本発明に係わる３次元画像表示装置および３次元画像表示方法について、図を参照しながら詳細に説明する。本実施形態は、カタログや雑誌などに掲載される商品（例えば、自動車）の３次元画像 (3DCG: 3 Dimension Computer Graphics)を制作する装置に、本発明を適用した形態である。
【００２９】
図１は、本実施形態に係わる３次元画像表示装置１の外観図で、図２は３次元画像表示装置１のブロック図である。図１に図示したように、３次元画像表示装置１は、ＣＰＵなどを備えたサーバで実現され、３次元画像表示装置１には、商品の３次元画像を表示するためのディスプレイ１５が接続されている。なお、図１では３次元画像表示装置１を一台のサーバであるかのように図示しているが、３次元画像表示装置１は、複数台のサーバから構成される装置であっても構わない。
【００３０】
図２に図示したように、３次元画像表示装置１の内部には、ＣＰＵ１２が実装される第１の回路１０と、Ｉ／Ｏ制御機能を有する第２の回路１１を備えている。第１の回路１０には、ＲＡＭ１３（Random Access Memory）やグラフィックコントローラ１４が接続され、ディスプレイ１５はグラフィックコントローラ１４に接続されている。第２の回路１１には、大容量の記憶装置であるハードディスク１６、キーボード１７およびマウス１８などが接続される。
【００３１】
本実施形態に係わる３次元画像表示装置１には、３次元画像の制作工程のカメラワークを設定する工程において、制作者が３次元画像のアングルを効率よく選択できるように、商品の３次元画像を縮小した画像であるサムネイルのマトリクスを表示する機能を備え、ハードディスク１６には、これから説明する機能を実現するためのコンピュータプログラムが実装される。
【００３２】
サムネイルのマトリクスをディスプレイ１５に表示させることで、３次元画像の制作者は、各々のサムネイルを見比べることができるようになり、最適なアングルを効率よく選択できるようになる。
【００３３】
図３は、アングルを説明する図である。アングルとは、仮想３次元モデルが配置される３次元空間上の一点である視点から、仮想的なカメラで商品の３次元モデルを撮影するときの角度で、アングルは、水平角度（θ）と垂直角度（φ）で一意に決定され、商品の仮想３次元モデルは平面上に配置されるため、水平角度（θ）が取り得る範囲は０°から３６０°で、垂直角度（φ）が取り得る範囲は「０°」から「９０°」になる。
【００３４】
なお、視点から原点までの距離（ｒ）は、商品の３次元画像の大きさを決定する要素になり、本実施形態において、すべてのサムネイルにおいて距離（ｒ）は固定である。
【００３５】
このように、３次元画像のアングルは、水平角度（θ）と垂直角度（φ）で一意に決定されるため、３次元画像表示装置１は、水平角度（θ）の範囲と垂直角度（φ）の範囲を所定の刻み幅で刻むことで、水平角度（θ）と垂直角度（φ）を要素にもつ２次元配列データを生成し、水平角度（θ）と垂直角度（φ）で一意に決定されるアングルを用いて描写されるサムネイルを、この２次元配列データに準じて配列することで、サムネイルのマトリクスを生成する。
【００３６】
本実施の形態では、水平角度（θ）及び垂直角度（φ）の刻み幅を「５°」とし、水平角度（θ）の最大値「３６０°」を「５°」で除算することで、水平角度（θ）に係わる２次元配列データの列数は「７３」（７３＝３６０°／５°＋１）となり、垂直角度（φ）の最大値「９０°」を「５°」で除算することで、垂直角度（φ）に係わる２次元配列データの行数は「１９」（１９＝９０°／５°＋１）となる。なお、水平角度（θ）において、０°と３６０°は同じ方向を示すが、ここでは便宜的に異なる角度としている。
【００３７】
よって、３次元画像表示装置１のディスプレイ１５に表示されるサムネイルのマトリクスの行列数は１９行７３列になり、このマトリクスで表示されるサムネイルの総数は合計１３８７個（７３×１９個）になる。
【００３８】
なお、水平角度（θ）および垂直角度（φ）の除算に利用する刻み幅は、水平角度（θ）と垂直角度（φ）で同じ刻み幅でなくてもよく、水平角度（θ）と垂直角度（φ）で異なる刻み幅を利用してもよい。
【００３９】
このように、刻み幅を「５°」とすると表示するサムネイルの総数は合計１３８７個になってしまい、合計１３８７個のサムネイルすべてを３次元画像表示装置１のディスプレイ１５に一度に表示することは不可能である。
【００４０】
そこで、３次元画像表示装置１は、１３８７個のサムネイルすべてを表示できるサイズのメモリ空間である描写領域を３次元画像表示装置１内のメモリ（ハードディスク１６或いはＲＡＭ１３）に設け、描写領域内に１３８７個のサムネイルすべてを描写し、実際のディスプレイ１５内のウィンドウには、描写領域内の一部の領域である表示領域のサムネイルのみを表示させる。
【００４１】
更に、合計１３８７個のサムネイルすべてを描写領域内に描写した後に、表示領域内のサムネイルの表示すると、ディスプレイ１５にサムネイルが表示されるまでに長時間を要するため、３次元画像表示装置１は、ディスプレイ１５内のウィンドウに表示するサムネイル、すなわち、表示領域に含まれるサムネイルの描写を優先させ、表示領域に含まれるサムネイルの描写・表示が完了した後に、表示しないサムネイルを描写する機能を備えている。
【００４２】
図４は、描写領域と表示領域を説明する図である。３次元画像表示装置１は、メモリ内に描写領域２１を設けるときは、２次元配列データの行数とサムネイル２０の縦方向のサイズに基づいて、描写領域２１の縦方向の大きさを決定し、２次元配列データの列数とサムネイル２０の横方向のサイズに基づいて、描写領域２１の横方向の長さを決定し、決定した縦横方向の大きさの描写領域２１をメモリに設定し、描写領域２１を２次元座標で管理する。
【００４３】
３次元画像表示装置１は、２次元配列データの要素をして記憶されている水平角度（θ）と垂直角度（φ）を用いてサムネイル２０を描写するとき、用いる水平角度（θ）と垂直角度（φ）が記憶されている２次元配列データの行番号および列番号から、サムネイル２０を描写する描写領域２１内の座標を演算し、演算した座標にサムネイル２０を描写する。
【００４４】
図４では、左上隅が２次元配列〔０〕〔０〕に対応するサムネイル２０で、左上隅のサムネイル２０は、水平角度（θ）が「０°」で、垂直角度（φ）が「０°」のサムネイル２０で、左上隅の一つ右のサムネイル２０は、水平角度（θ）が「５°」で、垂直角度（φ）が「０°」のサムネイル２０で、左上隅の一つ下のサムネイル２０は、水平角度（θ）が「０°」で、垂直角度（φ）が「５°」のサムネイル２０になる。
【００４５】
表示領域２２とは描写領域２１の一部の領域で、ディスプレイ１５のウィンドウ内に表示する領域である。表示領域２１のサイズは固定で、５行×５列のサムネイルが表示可能なサイズに設定される。表示領域２１の座標は可変で、３次元画像表示装置１が表示領域２１を移動させる操作を受けると、表示領域２１の座標は変更され、ディスプレイ１５に表示されるサムネイルも変更される。
【００４６】
図５は、ディスプレイ１５のウィンドウ内に表示される内容を説明する図である。表示領域２２内のデータをグラフィックコントローラ１４に送信することで、５×５のマトリクス状に配列された合計２５個のサムネイル２０が、ディスプレイ１５のウィンドウ２３内に表示される。ディスプレイ１５のウィンドウ２３内に表示されるサムネイル２０のマトリクスにおいて、同じ行のサムネイル２０のアングルは、垂直角度（φ）は同一で、水平角度（θ）がそれぞれ異なり、同じ列のサムネイル２０のアングルは、水平角度（θ）は同一で、垂直角度（φ）がそれぞれ異なる。
【００４７】
サムネイル２０に加えて、サムネイル２０を表示するウィンドウ２３には、表示領域２２を移動させるための４つのボタン２４ａ〜２４ｄが備えられている。図６は、ボタン２４ａ〜２４ｄによって表示領域２２が移動する様子を説明する図である。
【００４８】
ボタン２４ａのクリックを３次元画像表示装置１が検知すると、３次元画像表示装置１は、図３の描写領域で言えば、一つ上の行のサムネイル２０を表示するように表示領域２２の位置を移動させ（図６（ａ））、ボタン２４ｂのクリックを３次元画像表示装置１が検知すると、一つ下の行のサムネイル２０を表示するように表示領域２２の位置を移動させ（図６（ｂ））、ボタン２４ｄのクリックを３次元画像表示装置１が検知すると、一つ右の列のサムネイル２０を表示するように表示領域２２の位置を移動させ（図６（ｃ））、ボタン２４ｃのクリックを３次元画像表示装置１が検知すると、一つ左の列のサムネイル２０を表示するように表示領域２２の位置を移動させる（図６（ｄ））。
【００４９】
加えて、サムネイル２０を表示するウィンドウ２３内において、マウス１８の左ボタンをクリックした状態で、マウス１８のポインタを移動させる操作が実施されると、３次元画像表示装置１は、ディスプレイ１５上におけるポインタの移動量と方向とを描写領域２１の座標に変換し、変換した移動量と方向に基づいて表示領域２２の位置を移動させる。
【００５０】
なお、３次元画像表示装置１は、表示領域２２を移動させるとき、サムネイル２０が途中で切れて表示されることがないように、表示領域２２の位置を補正する処理を実行する。
【００５１】
上述したように、サムネイル２０が表示されている状態でポインティングデバイスが操作されると、図４の描写領域２１内における表示領域２２の位置は移動し、優先的に描写するサムネイル２０も変更される。このため、３次元画像表示装置１は、それぞれのサムネイルに、描写順序を示す連番の数字であるインデックス番号を振り、サムネイル２０の描写順序を管理する。なお、３次元画像表示装置１は、表示領域２２の位置を変更すると、インデックス番号を振り直す処理を実行し、振り直されたインデックス番号に従いサムネイル２０を描写する。
【００５２】
ここから、図７から図１６を参照しながら、インデックス番号の振り方についてより詳細に説明する。本実施の形態では、インデックス番号の振り方に特徴を持たせている。本実施の形態では、３行３列のサムネイル２０が含まれる小領域内においてインデックス番号を振るアルゴリズムを定め、このアルゴリズムを再帰的に繰返し実行することで、すべてのサムネイル２０にインデックス番号を振る。
【００５３】
このような方式によりサムネイル２０にインデックス番号を振ることで、小領域が拡大するようにインデックス番号を振ることができ、インデックス番号の順番に従い描写領域にサムネイル２０を描写することで、小領域を中心とし、上下左右方向に広がりながら、サムネイル２０は描写される。
【００５４】
更に、インデックス番号を振るときの小領域を表示領域２２の中心に設定することで、表示されるサムネイル２０が優先的に描写され、表示されるサムネイル２０の近傍から順に、表示されないサムネイル２０が描写されることになる。
【００５５】
図７は、小領域と繰返し実行されるアルゴリズムを説明する図である。本実施の形態においては、小領域２５は３行３列のサムネイルが含まれる領域で、最初にインデックス番号を振るサムネイル２０は中心のサムネイル２０で、２番目が中心の左側のサムネイル２０で、３番目が中心の右側のサムネイル２０で、４番目が中心の上側のサムネイル２０で、５番目が中心の下側のサムネイル２０で、６番目が左上隅のサムネイル２０で、７番目が右上隅のサムネイル２０で、８番目が左下隅のサムネイル２０で、９番目が右下隅のサムネイル２０である。
【００５６】
３次元画像表示装置１は、サムネイル２０にインデックス番号を振る処理を開始するとき、表示領域２２の中心のサムネイル２０が小領域２５の中心になるように、表示領域２２内に小領域２５を設定し、上述したアルゴリズムでインデックス番号を振り、インデックス番号の順番に従い、小領域２５の中心のマトリクスを移動させることで、描写領域２１内の小領域２５の位置を移動させ、描写領域２１に描写するサムネイル２０すべてにインデックス番号を振っていく。
【００５７】
図８は、サムネイル２０にインデックス番号を振る手順を説明するフロー図である。この手順は、表示領域２２の位置が変更されるごとに、３次元画像表示装置１の内部で実行される。インデックス番号を振るとき、まず、表示領域２２の中心のサムネイル２０を、小領域２５の中心のサムネイル２０に設定し、インデックス番号の開始番号ｉを「１」に設定する（Ｓ１）。
【００５８】
表示領域２２の中心に小領域２５を設定すると、開始番号ｉから順に、図を参照しながら説明したアルゴリズムに従い、小領域２５に含まれるサムネイル２０に「１」から「９」までのインデックス番号を振る（Ｓ２）。
【００５９】
次に実行される手順は、描写領域内に描写するサムネイル２０すべてにインデックス番号が振られるまで実行されるループ処理Ｌ１である。このループ処理Ｌ１で、まず、インデックス番号の開始番号ｉを一つインクリメントする（Ｓ３）。
【００６０】
インデックス番号の開始番号ｉが一つインクリメントされると、インクリメントされた開始番号ｉがインデックス番号として振られているサムネイル２０が中心になるように、小領域２５の位置を移動させる（Ｓ４）。
【００６１】
小領域２５の位置を移動させると、インクリメントされた開始番号ｉから順に、図７を参照しながら説明したアルゴリズムに従い、移動先の小領域２５に含まれるサムネイル２０にインデックス番号を振る。このとき、すでにインデックス番号が振られているサムネイル２０に対しては、インデックス番号を上書きする処理を行わず、インデックス番号が振られていないサムネイル２０についてのみ、インデックス番号が振られる。
【００６２】
移動先の小領域２５に含まれるサムネイル２０にインデックス番号を振った後、描写領域２１に描写するすべてのサムネイル２０についてインデックス番号が振られているか確認し、インデックス番号が振られていないサムネイル２０があるときは、ループ処理Ｌ１の先頭に戻る。
【００６３】
ここから、図８の手順が実行されることで、サムネイル２０にインデックス番号が振られていく様子について詳細に説明する。図９から図１６は、サムネイル２０にインデックス番号が振られていく様子を説明する図である。
【００６４】
図９は、サムネイル２０にインデックス番号が振られていく様子を説明する第１図で、図８のＳ２が実行された時点で、サムネイル２０に振られたインデックス番号を示した図である。図８のＳ２が実行されるとき、表示領域２２の中央のサムネイル２０が中心になるように小領域２５は設定され、インデックス番号の開始番号ｉは「１」に設定される。図８のＳ２が実行されるときは、すべてのサムネイル２０にインデックス番号が付与されていないため、図８のＳ２が実行されると、小領域２５に含まれる９個のサムネイル２０に「１」から「９」までのインデックス番号が振られる。
【００６５】
図１０は、サムネイル２０にインデックス番号が振られていく様子を説明する第２図で、図８のループ処理Ｌ１が最初に実行された時点で振られたインデックス番号を示した図である。図８のループ処理Ｌ１が最初に実行されるとき、インデックス番号が「２」であるサムネイル２０が中心になるように小領域２５が設定され、インデックス番号の開始番号ｉは「２」に設定される。図８のループ処理Ｌ１が最初に実行されるとき、左側の列以外のサムネイル２０には、図８のＳ２が実行されることでインデックス番号が付与されているため、左側の列以外のサムネイル２０に振られたインデックス番号は変更されることなく、左側の列のサムネイル２０に「１０」から「１２」までのインデックス番号が新たに振られる。
【００６６】
図１１は、サムネイル２０にインデックス番号が振られていく様子を説明する第３図で、図８のループ処理Ｌ１が２回繰返し実行された時点で振られたインデックス番号を示した図である。図８のループ処理Ｌ１が２回目に実行されるとき、インデックス番号が「３」であるサムネイル２０が中心になるように小領域２５が設定され、インデックス番号の開始番号ｉは「３」に設定される。図８のループ処理Ｌ１が２回目に実行されるとき、右側の列以外のサムネイル２０には、既にインデックス番号が付与されているため、右側の列以外のサムネイル２０に振られたインデックス番号は変更されることなく、右側の列のサムネイル２０に「１３」から「１５」までのインデックス番号が新たに振られる。
【００６７】
図１２は、サムネイル２０にインデックス番号が振られていく様子を説明する第４図で、図８のループ処理Ｌ１が３回繰返し実行された時点で振られたインデックス番号を示した図である。図８のループ処理Ｌ１が３回目に実行されるとき、インデックス番号が「４」であるサムネイル２０が中心になるように小領域２５が設定され、インデックス番号の開始番号ｉは「４」に設定される。図８のループ処理Ｌ１が３回目に実行されるとき、上側の列以外のサムネイル２０には、既にインデックス番号が付与されているため、上側の列以外のサムネイル２０に振られたインデックス番号は変更されることなく、上側の列のサムネイル２０に「１６」から「１８」までのインデックス番号が新たに振られる。
【００６８】
図１３は、サムネイル２０にインデックス番号が振られていく様子を説明する第５図で、図８のループ処理Ｌ１が４回繰返し実行された時点で振られたインデックス番号を示した図である。図８のループ処理Ｌ１が４回目に実行されるとき、インデックス番号が「５」であるサムネイル２０が中心になるように小領域２５が設定され、インデックス番号の開始番号ｉは「５」に設定される。図８のループ処理Ｌ１が４回目に実行されるとき、下側の列以外のサムネイル２０には、既にインデックス番号が付与されているため、下側の列以外のサムネイル２０に振られたインデックス番号は変更されることなく、下側の列のサムネイル２０に「１６」から「１８」までのインデックス番号が新たに振られる。
【００６９】
図１４は、サムネイル２０にインデックス番号が振られていく様子を説明する第６図で、図８のループ処理Ｌ１が８回繰返し実行された時点で振られているインデックス番号を示した図である。図８のループ処理Ｌ１が８回繰返し実行されることで、３×３の小領域２５を中心とした５×５の領域、すなわち、表示領域２２に含まれる２５個のサムネイル２０に「１」から「２５」までのインデックス番号が振られる。
【００７０】
図１５は、サムネイル２０にインデックス番号が振られていく様子を説明する第７図で、図８のループ処理Ｌ１が９回繰返し実行された時点で振られたインデックス番号を示した図である。図８のループ処理Ｌ１が９回目に実行されるとき、インデックス番号が「１０」であるサムネイル２０が中心になるように小領域２５が設定され、インデックス番号の開始番号ｉは「１０」に設定される。図８のループ処理Ｌ１が９回目に実行されるとき、左側の列以外のサムネイル２０には、既にインデックス番号が付与されているため、左側の列以外のサムネイル２０に振られたインデックス番号は変更されることなく、左側の列のサムネイル２０、すなわち、表示領域２２の左側に隣接した３つのサムネイル２０に「２６」から「２８」までのインデックス番号が新たに振られる。
【００７１】
図１６は、サムネイル２０にインデックス番号が振られていく様子を説明する第８図で、図８のループ処理Ｌ１が２４回繰返し実行された時点で振られたインデックス番号を示した図である。図８のループ処理Ｌ１が２４回繰り返して実行されることで、３×３の小領域２５を中心とした７×７のサムネイル２０に「１」から「４９」までのインデックス番号が振られる。
【００７２】
このように、図８で図示した手順が実行されることで、３×３の小領域２５のサイズが拡大するようにインデックス番号が振られ、インデックス番号に基づいてサムネイル２０を描写領域に描写することで、表示領域２２の中心から広がるように、サムネイル２０が描写されることになる。
【００７３】
上述したように、表示領域２２が移動されるごとに、サムネイル２０に振られるインデックス番号は変更され、同じサムネイル２０であっても描写順序も変更されるため、描写したサムネイル２０を再描写してしまうケースが発生する。
【００７４】
そこで、サムネイル２０の再描写を防ぐために、３次元画像表示装置１は、サムネイル２０に描写済フラグを設定する。そして、一つのサムネイル２０の描写が完了すると、３次元画像表示装置１は、描写が完了したサムネイル２０に、描写完了済みを示す描写済フラグを設定し、この描写済フラグが設定されているサムネイル２０に関しては、サムネイル２０の描写を実行しない処理を行う。
【００７５】
このように、３次元画像表示装置１はサムネイル２０を描写するとき、２次元配列データ、インデックス番号、描写フラグが必要となる。このため、３次元画像表示装置１は、ＲＡＭ１３内にデータテーブルを生成し、このデータテーブルを利用してこれらのデータを管理する。
【００７６】
図１７は、３次元画像表示装置１が生成するデータテーブル３を説明する図である。３次元画像表示装置１が生成するデータテーブル３は、上述した２次元配列データの要素数、すなわち、マトリクス状に表示するサムネイル２０と同じ数のレコード３０を有し、一つのレコード３０によって一つのサムネイル２０の描写が管理される。
【００７７】
データテーブル３のレコード３０の数は、水平角度（θ）および垂直角度（φ）を所定の刻み幅で除算することで決定され、決定された数のレコード３０がデータテーブル３に設けられる。本実施の形態では、刻み幅を「５°」とすることで、合計１３８７個のレコード３０がデータテーブル３に設けられる。
【００７８】
一つのレコード３０には、サムネイル２０の描写を管理するためのデータを記憶するフィールド３１ａ〜３１ｆとして、２次元配列データの列番号と行番号が記憶されるフィールド３１ａ、３１ｂと、２次元配列データの要素である垂直角度（φ）および水平角度（θ）の値が記憶されるフィールド３１ｃ、３１ｄと、サムネイル２０の描写順序を管理するためのデータであるインデックス番号が記憶されるフィールド３１ｅと、および、サムネイル２０の描写が描写済みであることを示す描写済フラグが記憶されるフィールド３１ｆとが備えられる。
【００７９】
データテーブル３にレコード３０が設けられると、それぞれのレコード３０に列番号と行番号が振られ、サムネイル２０が描写される描写領域２１上の位置は、レコード３０に記憶されている列番号と行番号によって決定される。列番号と行番号が振られると、刻み幅を利用して、列番号および行番号に対応した垂直角度（φ）および水平角度（θ）が、それぞれのレコード３０に記憶される。
【００８０】
更に、データテーブル３のレコード３０には、図７を用いて説明したアルゴリズムに従い、サムネイル２０の描写順序を示すインデックス番号がそれぞれのレコード３０に振られる。レコード３０にインデックス番号を振ることで、レコード３０に記憶されたアングルを用いて描写されるサムネイル２０にインデックス番号が付与されたことになる。
【００８１】
図７を用いて説明したアルゴリズムを、データテーブル３のレコード３０に記憶される列番号と行番号を用いて表現すると以下のようになる。小領域２５の中心のサムネイル２０の列番号と行番号を〔ｍ０、ｎ０〕と表記すると、〔ｍ０、ｎ０〕→〔ｍ０、ｎ０−１〕→〔ｍ０、ｎ０＋１〕→〔ｍ０−１、ｎ０〕→〔ｍ０＋１、ｎ０〕→〔ｍ０−１、ｎ０−１〕→〔ｍ０−１、ｎ０＋１〕→〔ｍ０＋１、ｎ０−１〕→〔ｍ０＋１、ｎ０＋１〕の順にインデックス番号が振れら、小領域２５の中心となるサムネイル２０をインデックス番号順に変更することで、この手順が再帰的に繰返し実行することで、すべてのデータテーブル３のレコード３０にインデックス番号が振られる。
【００８２】
サムネイル２０の描写が完了済みであることを示す描写済フラグは、サムネイル２０の再描写を防止するために、データテーブル３のレコード３０に設けられている。３次元画像表示装置１は、データテーブル３に設けられたレコード３０のを参照してサムネイル２０を描写する前に、レコード３０に描写済フラグが設定されているか確認し、描写済フラグが設定されたレコード３０のサムネイル２０を描写しない処理を実行する。データテーブル３が生成された時点で、すべてのレコード３０の描写済フラグは未設定で、サムネイル２０を描写すると、描写したサムネイル２０に対応するレコード３０に描写済フラグが設定される。
【００８３】
図１８は、３次元画像表示装置１が、サムネイル２０のマトリクス表示する手順を示したフロー図で、このフロー図は、本発明に係わる３次元画像表示方法の説明でもある。サムネイル２０のマトリクスを表示するために、３次元画像表示装置１は、まず、サムネイル２０を描写するときに利用するアングルを決定するアングル決定処理Ｓ１０を実行する。
【００８４】
このアングル決定処理Ｓ１０において、３次元画像表示装置１は、水平角度（θ）の範囲と垂直角度（φ）の範囲を一定の刻み幅で除算することで、水平角度（θ）と垂直角度（φ）を要素にもつ２次元配列データを生成する。
【００８５】
本実施の形態において、３次元画像表示装置１は、データテーブル３のレコード３０の数を決定した後、各々のレコード３０に列番号および行番号を付与し、刻み幅を利用して、列番号および行番号に対応した垂直角度（φ）および水平角度（θ）が、それぞれのレコード３０に記憶される。
【００８６】
３次元画像表示装置１は、水平角度（θ）と垂直角度（φ）で一意に決定されるアングルを決定すると、３次元画像表示装置１内のメモリに、サムネイル２０のマトリクスを描写するための描写領域２１を設定する描写領域設定処理Ｓ２を実行する。
【００８７】
３次元画像表示装置１は、２次元配列データの行列数から、サムネイル２０のマトリクスの行列数を特定し、サムネイル２０の縦横方向の大きさやサムネイル２０間に設ける隙間を考慮して、サムネイル２０のマトリクスを表示するための描写領域２１を、３次元画像表示装置１内のＲＡＭ１３或いはハードディスク１６に設定する。
【００８８】
３次元画像表示装置１は、描写領域２１をメモリ内に設定すると、描写領域２１内の指定された位置に表示領域２２を設定する表示領域初期設定処理Ｓ１２を実行する。表示領域初期設定処理Ｓ１２において、３次元画像表示装置１は、描写領域２１の中央に表示領域２２を設定する。
【００８９】
３次元画像表示装置１は、描写領域２１内に表示領域２２を設定すると、データテーブル３に含まれる各レコード３０に対してインデックス番号を振るインデックス処理Ｓ１３を実施する。インデックス番号を振るとき、表示領域２２の中心に設定されるサムネイル２０に対応するレコード３０のインデックス番号を「１」として、図７を用いて説明したアルゴリズムが再帰的に繰返し実行され、すべてのデータテーブル３に含まれるレコード３０にインデックス番号が振られる。
【００９０】
３次元画像表示装置１は、インデックス処理が終了すると、３次元画像表示装置１のディスプレイ１５に表示するサムネイル２０、すなわち、描写領域２１内に設定された表示領域２２に含まれるサムネイル２０を描写する表示サムネイル描写表示処理Ｓ１４を実行する。
【００９１】
本実施形態では、表示領域２２に２５個のサムネイル２０を含ませるため、「１」から「２５」までのインデックス番号が振られたレコード３０を利用して、３次元画像表示装置１のディスプレイ１５に表示するサムネイル２０を描写領域２１の所定の位置に描写する。なお、サムネイル２０を描写するとき、３次元画像表示装置１は、レコード３０に記憶された描写済フラグを確認し、描写済フラグが設定されいるときは、そのレコード３０を用いてサムネイル２０を描写しない。
【００９２】
３次元画像表示装置１のディスプレイ１５に表示するサムネイル２０の描写が完了すると、表示領域２２に含まれるサムネイル２０をディスプレイ１５に表示させるサムネイル表示処理Ｓ１５を実行する。サムネイル表示処理Ｓ１５において、３次元画像表示装置１は、描写領域の表示領域２２のデータをグラフィックコントローラＳ１４に送信し、表示領域２２に含まれるサムネイル２０をディスプレイ１５のウィンドウ２３内に表示する。
【００９３】
ディスプレイ１５のウィンドウ内にサムネイル２０を表示させると、３次元画像表示装置１は、表示領域２２以外のサムネイル２０を描写領域２１に描写する非表示サムネイル描写処理Ｓ１６を実行する。非表示サムネイル描写処理Ｓ１６で描写が開始されるサムネイル２０は、表示サムネイル描写表示処理Ｓ１６で最後に描写したサムネイル２０のインデックス番号（ここでは、「２５」）を一つインクリメントしたインデックス番号（ここでは、「２６」）が振られたレコード３０からインデックス番号順に描写される。なお、サムネイル２０を描写するとき、３次元画像表示装置１は、レコード３０に記憶された描写済フラグを確認し、描写済フラグが設定されいるときは、そのレコード３０を用いてサムネイル２０を描写しない。
【００９４】
そして、最後のインデックス番号（ここでは、「１３８７」）が振られたレコード３０を利用したサムネイル２０の描写が完了すると、非表示サムネイル描写処理Ｓ１６は終了する。
【００９５】
サムネイル２０が描写されている最中や、サムネイル２０の描写が終了した後に、ディスプレイ１５のウィンドウ２３に表示されているボタン２４ａ〜２４ｄなどが操作されるなどして、表示領域２２を移動させる操作が実行されると（Ｓ１７）、３次元画像表示装置１は、表示領域２２の描写領域内の位置を変更する表示領域移動処理Ｓ１８を実行する。
【００９６】
例えば、図５のボタン２４ｂがクリックされるごとに、３次元画像表示装置１は、小領域２５の中心となるサムネイル２０が一つ下のサムネイル２０になるように、表示領域２２を移動させる。また、図５のボタン２４ｄがクリックされるごとに、３次元画像表示装置１は、小領域２５の中心となるサムネイル２０が一つ右のサムネイル２０になるように、表示領域２２を移動させる。
【００９７】
更に、サムネイル２０を表示するウィンドウ２３内において、マウス１８の左ボタンをクリックした状態で、マウス１８のポインタを移動させる操作が実施されると、３次元画像表示装置１は、ディスプレイ１５のウィンドウ２３のサイズから、ディスプレイ１５上におけるポインタの移動量と移動方向とを割出し、表示領域２２のサイズを参照するなどして、ポインタの移動量と移動方向を描写領域２１の移動量と移動方向に変換し、変換した移動量と移動方向に基づき、表示領域２２を移動させる。
【００９８】
３次元画像表示装置１は、描写領域２１内における表示領域２２の位置を移動させると、移動先の表示領域２２の位置として保持し、インデックス処理Ｓ１３に戻る。
【００９９】
なお、この手順が実行されている間に、サムネイル２０を表示する処理を終了させるための操作が実行されると（Ｓ１９）、図１８で図示した手順は終了する。
【０１００】
図１９は、３次元画像表示装置１の機能ブロック図である。３次元画像表示装置１には、描写領域２１を設定する描写領域設定手段１０１と、描写領域２１内に表示領域２２を設定する表示領域設定手段１０２と、３次元画像としてサムネイル２０を描写する３次元画像描写手段１０３と、描写領域２１内に描写されたサムネイル２０を表示する３次元画像表示手段１０４と、データが記憶されるデータ記憶手段１０５と、それぞれの手段を制御する制御手段１００を備える。
【０１０１】
３次元画像表示装置１に備えられた描写領域設定手段１０１は、水平角度（θ）の指定範囲（φ）と垂直角度の指定範囲を一定の刻み幅で分割することで、水平角度（θ）と垂直角度（φ）を要素にもつ２次元配列データ（ここでは、データテーブル３）を生成し、データテーブル３に従い、サムネイル２０を表示するマトリクスの行数と列数を決定した後、サムネイル２０のサイズおよび２次元配列データの行列数から、サムネイル２０をマトリクス状に表示するために必要なメモリ空間である描写領域２１を、３次元画像処理装置のメモリ（ハードディスク１６やＲＡＭ１３）内に設ける手段である。
【０１０２】
３次元画像表示装置１に備えられた表示領域設定手段１０２は、描写領域２１内に表示領域２２を設定し、サムネイル２０、すなわち、データテーブル３の各レコード３０にインデックス番号を振る手段である。
【０１０３】
３次元画像表示装置１に備えられた表示領域設定手段１０２は、表示領域２２のサイズが代入される変数と、描写領域２１内における表示領域２２の位置を示す２次元座標の値が代入される変数を用いて、描写領域２１内における表示領域２２の位置とサイズを管理する。本実施の形態において、表示領域２２のサイズは固定で、５×５のサムネイル２０のマトリックスが表示可能なサイズに設定される。
【０１０４】
表示領域設定手段１０２は、サムネイル２０の描写処理を開始したとき、表示領域２２の位置は描写領域２１の中央に設定し、その後は、マウス１８等を用いて、表示領域２２を移動させる操作が実施されると、実施された操作に従い表示領域２２の位置すなわち２次元座標の値を変更する。
【０１０５】
なお、３次元画像表示装置１は、表示領域２２を移動させるとき、サムネイル２０が途中で切れて表示されることがないように、表示領域２２の位置を補正する処理を実行する。
【０１０６】
描写領域２１内に表示領域２２を設定すると、表示領域設定手段１０２は、表示領域２２の中心に設定されるサムネイル２０に対応するレコード３０のインデックス番号を「１」として、図７を用いて説明したアルゴリズムを再帰的に繰返し実行し、すべてのサムネイル２０、すなわち、データテーブル３に含まれるすべてのレコード３０にインデックス番号を振る。
【０１０７】
３次元画像としてサムネイル２０を描写する３次元画像描写手段１０３は、インデックス番号順に、レコード３０に記憶されたアングル（垂直角度および水平角度）から仮想３次元モデルを描写したときのサムネイル２０を、描写領域２１に描写する手段で、表示領域２２に含まれるすべてのサムネイル２０（ここでは、２５個のサムネイル２０）の描写が完了すると、３次元画像表示手段１０４が呼出され、表示領域２２内のサムネイル２０がディスプレイ１５に表示される。
【０１０８】
３次元画像表示装置１に備えられた３次元画像描写手段１０３は、描写するサムネイル２０のレコード３０に記憶された列番号と行番号によって、サムネイル２０を描写する描写領域２１内の座標を決定し、サムネイル２０を描写するとき、レコード３０に記憶された描写済フラグを確認し、描写済フラグが設定されいるときは、そのレコード３０を用いてサムネイル２０を描写せず、サムネイル２０を描写したときは、サムネイル２０の描写に利用したレコード３０に描写済フラグを設定する。
【０１０９】
描写領域２１内に描写されたサムネイル２０を表示する３次元画像表示手段１０４は、表示領域設定手段１０２が保持している表示領域２２に係わる変数を取得し、描写領域２１内に設定された表示領域２２のデータをグラフィックコントローラ１４に送信することで、表示領域２２に含まれるサムネイル２０をディスプレイ１５に表示する。
【０１１０】
データが記憶されるデータ記憶手段１０５は、ハードディスク１６やＲＡＭ１３を意味し、データ記憶手段１０５には、描写領域２１が設けられると共に、データテーブル３など、サムネイル２０を描写するときに利用されるデータが記憶される。
【０１１１】
３次元画像表示装置１に備えられた制御手段１００は、上述したこれらの手段を制御して、図１８で説明した手順を実行する手段である。
【０１１２】
なお、本発明は、これまで説明した実施の形態に限定されることなく、種々の変形や変更が可能である。
【０１１３】
例えば、インデックス番号を振るアルゴリズムは再帰的な処理であるため、この処理をコンピュータに実行させると、インデックス番号を振る時間がかかるため、データテーブル３のレコード３０に振り得るインデックス番号のパターン、すなわち、データテーブル３の各レコード３０のインデックス番号を「１」としたときのパターンすべてを予め容易しておき、再帰的な処理をすることなくこのパターンを用いて、データテーブル３のレコード３０にインデックス番号を振るようにしてもよい。
【０１１４】
更に、任意の箇所のアングルをより細かく変更して見比べることができるように、ディスプレイ１５のウィンドウ２３に表示されたサムネイル２０間の隙間がクリックされたとき、サムネイル２０が一列および／または一行追加されるようにするとよい。
【０１１５】
図２０は、サムネイル２０間がクリックされる操作を説明する図である。サムネイル２０の行間（点線）がクリックされると、クリックされた行間の上下のサムネイル２０の垂直角度（φ）の平均値を垂直角度（φ）とし、１行分のサムネイル２０を表示するためのレコード３０が挿入される。また、サムネイル２０の下端間の列間（一点破線）がクリックされると、クリックされた列間の上下のサムネイル２０の水平角度（θ）の平均値を水平角度（θ）とし、１列分のサムネイル２０を表示するためのレコード３０が挿入される。
【０１１６】
データテーブル３のレコード３０が挿入されると、３次元画像表示装置１は、描写領域２１のサイズを拡大し、サムネイル２０が挿入されることで位置が移動する描写領域２１内のデータを移動させる。例えば、サムネイル２０の下端間の列間（一点破線）がクリックされると、クリックされた箇所の右側に存在するデータすべてを、一列のサムネイル２０が表示される間隔だけ右側に移動させる。サムネイル２０が挿入されることで位置が移動する領域のデータを移動させると、３次元画像表示装置１は、インデックス番号を振り直しサムネイル２０の描写を開始する。
【図面の簡単な説明】
【０１１７】
【図１】本実施形態に係わる３次元画像表示装置の外観図。
【図２】３次元画像表示装置のブロック図。
【図３】アングルを説明する図。
【図４】描写領域と表示領域を説明する図。
【図５】ディスプレイのウィンドウ内に表示される内容を説明する図。
【図６】ボタンによって表示領域２２が移動する様子を説明する図。
【図７】小領域と繰返し実行されるアルゴリズムを説明する図。
【図８】サムネイルにインデックス番号を振る手順を説明するフロー図。
【図９】サムネイルにインデックス番号が振られていく様子を説明する第１図。
【図１０】サムネイルにインデックス番号が振られていく様子を説明する第２図。
【図１１】サムネイルにインデックス番号が振られていく様子を説明する第３図。
【図１２】サムネイルにインデックス番号が振られていく様子を説明する第４図。
【図１３】サムネイルにインデックス番号が振られていく様子を説明する第５図。
【図１４】サムネイルにインデックス番号が振られていく様子を説明する第６図。
【図１５】サムネイルにインデックス番号が振られていく様子を説明する第７図。
【図１６】サムネイルにインデックス番号が振られていく様子を説明する第８図。
【図１７】３次元画像表示装置が生成するデータテーブルを説明する図。
【図１８】サムネイルのマトリクスを表示する手順を示したフロー図。
【図１９】３次元画像表示装置の機能ブロック図。
【図２０】サムネイル間がクリックされる操作を説明する図。
【符号の説明】
【０１１８】
１  ３次元画像処理装置
１００  制御部
１０１  描写領域設定手段
１０２  表示領域設定手段
１０３  ３次元画像描写手段
１０４  ３次元画像表示手段
１０５  データ記憶手段
２０  サムネイル
２１  描写領域
２２  表示領域
２３  ディスプレイ内のウィンドウ
２５  小領域
３  データテーブル
【図１】
0004910957.tif 000002
【図２】
0004910957.tif 000003
【図３】
0004910957.tif 000004
【図４】
0004910957.tif 000005
【図５】
0004910957.tif 000006
【図６】
0004910957.tif 000007
【図７】
0004910957.tif 000008
【図８】
0004910957.tif 000009
【図９】
0004910957.tif 000010
【図１０】
0004910957.tif 000011
【図１１】
0004910957.tif 000012
【図１２】
0004910957.tif 000013
【図１３】
0004910957.tif 000014
【図１４】
0004910957.tif 000015
【図１５】
0004910957.tif 000016
【図１６】
0004910957.tif 000017
【図１７】
0004910957.tif 000018
【図１８】
0004910957.tif 000019
【図１９】
0004910957.tif 000020
【図２０】
0004910957.tif 000021