(57)【要約】【課題】  ワイヤーシェーディング同時表示において、それぞれ十分な表示品質を保ちながらも、コンパクトなデータサイズを実現するｎ次元形状モデル格納・表示装置を提供する。【解決手段】  ｎ次元空間の形状モデルを格納するときは、ポリラインの頂点座標をポリライン頂点座標テーブルに格納し、三角形メッシュの頂点座標のうちメッシュ境界上にある頂点座標の場合は、該頂点座標にそれぞれ最も近いポリラインの頂点座標に置き換えて、三角形メッシュを三角形メッシュ頂点座標テーブルに格納し、ポリラインそれぞれに対応したポリラインの分割数をポリライン分割数テーブルに格納し、ポリラインそれぞれに対応したメッシュ境界の分割数をメッシュ境界分割数テーブルに格納する。ｎ次元形状モデルを表示するときには、三角メッシュを表示した後、ポリライン分割をメッシュ境界の分割数に合わせてポリラインを表示する。【選択図】        図７
2005056083.tif 000002
【特許請求の範囲】
【請求項１】
ｎ次元空間の形状モデルを表すポリラインおよび三角形メッシュを格納するｎ次元形状モデル格納装置において、前記ポリラインの頂点座標と前記三角形メッシュの頂点座標のうちメッシュ境界上にない頂点座標を前記頂点座標テーブルに格納する頂点座標格納手段と、前記ポリラインの頂点座標を、該頂点座標を格納した前記頂点座標テーブルへのインデックスに置き換えて、該ポリラインをポリラインインデックステーブルに格納するポリラインテーブル格納手段と、前記三角形メッシュの頂点座標のうちメッシュ境界上にない頂点座標の場合は、該頂点座標を格納した前記頂点座標テーブルへのインデックスに置き換え、メッシュ境界上にある頂点座標の場合は、該頂点座標にそれぞれ最も近い前記ポリラインの頂点座標の前記頂点座標テーブルへのインデックスに置き換えて、該三角形メッシュを三角形メッシュインデックステーブルに格納する三角形メッシュテーブル格納手段と、前記ポリラインそれぞれに対応したポリラインの分割数をポリライン分割数テーブルに格納するポリライン分割数テーブル格納手段と、前記ポリラインそれぞれに対応したメッシュ境界の分割数をメッシュ境界分割数テーブルに格納するメッシュ境界分割数テーブル格納手段を備え、ｎ次元形状モデルを表すポリラインと三角形メッシュを格納するようにしたことを特徴とするｎ次元形状モデル格納装置。
【請求項２】
ｎ次元空間の形状モデルを表すポリラインおよび三角形メッシュを格納するｎ次元形状モデル格納方法において、前記ポリラインの頂点座標を頂点座標テーブルに格納し、前記ポリラインの頂点座標を、該頂点座標を格納した前記頂点座標テーブルへのインデックスに置き換えて、該ポリラインをポリラインインデックステーブルに格納し、前記三角形メッシュの頂点座標のうちメッシュ境界上にない頂点座標を前記頂点座標テーブルに格納し、前記三角形メッシュの頂点座標のうちメッシュ境界上にない頂点座標の場合は、該頂点座標を格納した前記頂点座標テーブルへのインデックスに置き換え、メッシュ境界上にある頂点座標の場合は、該頂点座標にそれぞれ最も近い前記ポリラインの頂点座標の前記頂点座標テーブルへのインデックスに置き換えて、該三角形メッシュを三角形メッシュインデックステーブルに格納し、前記ポリラインそれぞれに対応したポリラインの分割数をポリライン分割数テーブルに格納し、前記ポリラインそれぞれに対応したメッシュ境界の分割数をメッシュ境界分割数テーブルに格納して、ｎ次元形状モデルを表すポリラインと三角形メッシュを格納するようにしたことを特徴とするｎ次元形状モデル格納方法。
【請求項３】
ｎ次元空間の形状モデルを表すポリラインおよび三角形メッシュを表示するｎ次元形状モデル表示装置において、前記三角形メッシュを格納する三角形メッシュインデックステーブルから取り出した三角メッシュごとに、該三角メッシュの頂点を示すインデックスを、頂点座標テーブルを参照して頂点座標に置き換えて三角メッシュを表示する手段と、前記ポリラインを格納するポリラインインデックステーブルから取り出したラインごとに、該ポリラインに対応したポリラインの分割数（Ｎｗとする）をポリライン分割数テーブルから取り出し、前記ポリラインに対応したメッシュ境界の分割数（Ｎｍとする）をメッシュ境界分割数テーブルから取り出して、ｉ×Ｎｍ（このｉは、０≦ｉ≦Ｎｗの範囲内の整数とする）の値がＮｗの倍数または倍数に最も近い値となるようなｉを決定し、前記取り出したラインの頂点のうちｉ番目のインデックスだけを選択し、選択されたインデックスを、頂点座標テーブルを参照して頂点座標に置き換えてポリラインを表示する手段とを備え、ｎ次元形状モデルを表すポリラインと三角形メッシュを表示するようにしたことを特徴とするｎ次元形状モデル表示装置。
【請求項４】
ｎ次元空間の形状モデルを表すポリラインおよび三角形メッシュを表示装置へ表示するｎ次元形状モデル表示方法において、前記三角形メッシュを格納する三角形メッシュインデックステーブルから取り出した三角メッシュごとに、該三角メッシュの頂点を示すインデックスを、頂点座標テーブルを参照して頂点座標に置き換えて三角メッシュを表示し、前記ポリラインを格納するポリラインインデックステーブルから取り出したラインごとに、該ポリラインに対応したポリラインの分割数（Ｎｗとする）をポリライン分割数テーブルから取り出し、前記ポリラインに対応したメッシュ境界の分割数（Ｎｍとする）をメッシュ境界分割数テーブルから取り出して、ｉ×Ｎｍ（このｉは、０≦ｉ≦Ｎｗの範囲内の整数とする）の値がＮｗの倍数または倍数に最も近い値となるようなｉを決定し、前記取り出したラインの頂点のうちｉ番目のインデックスだけを選択し、選択されたインデックスを、頂点座標テーブルを参照して頂点座標に置き換えてポリラインを表示することにより、ｎ次元形状モデルを表すポリラインと三角形メッシュを表示するようにしたことを特徴とするｎ次元形状モデル表示方法。
【請求項５】
ｎ次元空間の形状モデルを表すポリラインおよび三角形メッシュを格納するデータ構造であって、前記ポリラインおよび前記三角形メッシュの頂点座標を格納する頂点座標テーブルと、前記三角形メッシュを格納する三角形メッシュインデックステーブルと、前記ポリラインを格納するポリラインインデックステーブルと、前記ポリラインそれぞれに対応したポリラインの分割数を格納するポリライン分割数テーブルと、前記ポリラインそれぞれに対応したメッシュ境界の分割数を格納するメッシュ境界分割数テーブルと、からなることを特徴とするｎ次元形状モデルのデータ構造。
【請求項６】
請求項１〜５において、前記頂点座標テーブルは、浮動小数点表現および／またはベクトル量子化圧縮がなされていることを特徴とするｎ次元形状モデル。
【請求項７】
請求項１〜５において、前記三角形メッシュインデックステーブルは、インデックス三角形セット形式、インデックス三角形ストリップ形式またはインデックス三角形ファン形式のいずれかであることを特徴とするｎ次元形状モデル。
【請求項８】
請求項１〜５において、前記ポリラインインデックステーブルは、インデックスラインストリップ形式またはインデックスラインセット形式のいずれかであることを特徴とするｎ次元形状モデル。
【請求項９】
ｎ次元空間の形状モデルを表すポリラインおよび三角形メッシュを格納するｎ次元形状モデル格納装置において、前記ポリラインの頂点座標をポリライン頂点座標テーブルに格納するポリライン頂点座標テーブル格納手段と、前記三角形メッシュの頂点座標のうちメッシュ境界上にある頂点座標の場合は、該頂点座標にそれぞれ最も近い前記ポリラインの頂点座標に置き換えて、該三角形メッシュを三角形メッシュ頂点座標テーブルに格納する三角形メッシュ頂点座標テーブル格納手段と、前記ポリラインそれぞれに対応したポリラインの分割数をポリライン分割数テーブルに格納するポリライン分割数テーブル格納手段と、前記ポリラインそれぞれに対応したメッシュ境界の分割数をメッシュ境界分割数テーブルに格納するメッシュ境界分割数テーブル格納手段を備え、ｎ次元形状モデルを表すポリラインと三角形メッシュを格納するようにしたことを特徴とするｎ次元形状モデル格納装置。
【請求項１０】
ｎ次元空間の形状モデルを表すポリラインおよび三角形メッシュを格納するｎ次元形状モデル格納方法において、前記ポリラインの頂点座標をポリライン頂点座標テーブルに格納し、前記三角形メッシュの頂点座標のうちメッシュ境界上にある頂点座標の場合は、該頂点座標にそれぞれ最も近い前記ポリラインの頂点座標に置き換えて、該三角形メッシュを三角形メッシュ頂点座標テーブルに格納し、前記ポリラインそれぞれに対応したポリラインの分割数をポリライン分割数テーブルに格納し、前記ポリラインそれぞれに対応したメッシュ境界の分割数をメッシュ境界分割数テーブルに格納して、ｎ次元形状モデルを表すポリラインと三角形メッシュを格納するようにしたことを特徴とするｎ次元形状モデル格納方法。
【請求項１１】
ｎ次元空間の形状モデルを表すポリラインおよび三角形メッシュを表示するｎ次元形状モデル表示装置において、前記三角形メッシュを格納する三角形メッシュ頂点座標テーブルから取り出した三角メッシュごとに三角メッシュを表示する手段と、前記ポリラインを格納するポリライン頂点座標テーブルから取り出したラインごとに、該ポリラインに対応したポリラインの分割数（Ｎｗとする）をポリライン分割数テーブルから取り出し、前記ポリラインに対応したメッシュ境界の分割数（Ｎｍとする）をメッシュ境界分割数テーブルから取り出して、ｉ×Ｎｍ（このｉは、０≦ｉ≦Ｎｗの範囲内の整数とする）の値がＮｗの倍数または倍数に最も近い値となるようなｉを決定し、前記取り出したラインの頂点のうちｉ番目の頂点座標だけを選択してポリラインを表示する手段とを備え、ｎ次元形状モデルを表すポリラインと三角形メッシュを表示するようにしたことを特徴とするｎ次元形状モデル表示装置。
【請求項１２】
ｎ次元空間の形状モデルを表すポリラインおよび三角形メッシュを表示装置へ表示するｎ次元形状モデル表示方法において、前記三角形メッシュを格納する三角形メッシュ頂点座標テーブルから取り出した三角メッシュごとに三角メッシュを表示し、前記ポリラインを格納するポリライン頂点座標テーブルから取り出したラインごとに、該ポリラインに対応したポリラインの分割数（Ｎｗとする）をポリライン分割数テーブルから取り出し、前記ポリラインに対応したメッシュ境界の分割数（Ｎｍとする）をメッシュ境界分割数テーブルから取り出して、ｉ×Ｎｍ（このｉは、０≦ｉ≦Ｎｗの範囲内の整数とする）の値がＮｗの倍数または倍数に最も近い値となるようなｉを決定し、前記取り出したラインの頂点のうちｉ番目の頂点座標だけを選択してポリラインを表示することにより、ｎ次元形状モデルを表すポリラインと三角形メッシュを表示するようにしたことを特徴とするｎ次元形状モデル表示方法。
【請求項１３】
ｎ次元空間の形状モデルを表すポリラインおよび三角形メッシュを格納するデータ構造であって、前記三角形メッシュの頂点座標を格納する三角形メッシュ頂点座標テーブルと、前記ポリラインの頂点座標を表すポリライン頂点座標テーブルと、前記ポリラインそれぞれに対応したポリラインの分割数を格納するポリライン分割数テーブルと、前記ポリラインそれぞれに対応したメッシュ境界の分割数を格納するメッシュ境界分割数テーブルとからなることを特徴とするｎ次元形状モデルのデータ構造。
【請求項１４】
請求項９〜１３において、前記三角形メッシュ頂点座標テーブルおよび前記ポリライン頂点座標テーブルの頂点座標は、浮動小数点表現および／またはベクトル量子化圧縮がなされていることを特徴とするｎ次元形状モデル。
【請求項１５】
請求項９〜１３において、前記三角形メッシュ頂点座標テーブルは、三角形セット形式、三角形ストリップ形式または三角形ファン形式のいずれかであることを特徴とするｎ次元形状モデル。
【請求項１６】
請求項９〜１３において、前記ポリライン頂点座標テーブルは、ラインストリップ形式またはラインセット形式のいずれかであることを特徴とするｎ次元形状モデル。
【請求項１７】
ｎ次元空間の形状モデルを処理するｎ次元形状モデル処理システムにおいて、請求項１または９に記載のｎ次元形状モデル格納装置と、請求項３または１１に記載のｎ次元形状モデル表示装置を備え、前記ｎ次元形状モデル格納装置は、格納された形状データを送信し、前記ｎ次元形状モデル表示装置は、該形状データを受信して表示するようにしたことを特徴とするｎ次元形状モデル処理システム。
【請求項１８】
コンピュータに、請求項１または９に記載のｎ次元形状モデル格納装置、請求項３または１１に記載のｎ次元形状モデル表示装置、または、請求項１７に記載のｎ次元形状モデル処理システムの機能を実行させるためのプログラム。
【請求項１９】
請求項１８に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、三角形メッシュとポリラインとで３次元形状モデルを表現する技術に関し、特に形状計測装置や仮想現実感装置に好適なｎ次元形状モデル格納装置、ｎ次元形状モデル格納方法、ｎ次元形状モデル表示装置、ｎ次元形状モデル表示方法、ｎ次元形状モデルのデータ構造、ｎ次元形状モデル処理システム、プログラム、記録媒体に関する。
【背景技術】
【０００２】
３次元形状モデルを表示するためのデータ形式としては、図１２（Ａ）〜図１２（Ｅ）に示すものがある。これらのうち、（Ａ）は個々の独立した線分（ラインセット形式という）、（Ｂ）は連結した線分（ラインストリップ形式という）、（Ｃ）は個々の独立した三角形（三角形セット形式）、（Ｄ）は連結した三角形（三角形ストリップ形式）、（Ｅ）は三角形を扇のように連結したもの（三角形ファン形式）であり、（Ａ）および（Ｂ）はポリライン、（Ｃ）〜（Ｅ）は三角形メッシュと呼ばれる。
これらのポリラインおよび三角形メッシュは、代表的な表示方法である、三角形メッシュを用いて表示するシェーディング表示（図１３（Ａ）参照）、ポリラインを用いて表示するワイヤーフレーム表示（図１３（Ｂ）参照）および三角形メッシュとポリラインを用いて表示するワイヤーシェーディング同時表示（図１３（Ｃ）参照）に用いられる。これらの形式のデータは、ＰＣ上の標準的な表示用ライブラリＯｐｅｎＧＬやＤｉｒｅｃｔＸでサポートされている。
これらのポリラインおよび三角メッシュで表現されるｎ（２乃至４）次元形状のデータをサーバに保管し、ネットワークを介してこれを多数の端末から参照したり、転送するような場合、データ量が多いと転送時間が多くかかるなどの問題点があった。
そのため、特許文献１の複数の線分で構成されるベクトルデータを保管、表示するベクトルデータ保管・表示装置では、互いに連接された複数の線分からなるポリライン又はポリゴンを構成するベクトルデータを、ポリライン又はポリゴンが有する複数の頂点の座標によって保管するベクトルデータ保管部と、該ベクトルデータ保管部に保管されたデータのうち表示に必要な範囲のデータを検索するベクトル検索手段と、該ベクトル検索手段によって検索された複数の頂点の座標からポリライン又はポリゴンを構成する各線分の始点、終点の座標を求める線分情報取得手段と、該線分情報取得手段により求められた各線分の始点、終点の座標に基づいてベクトルデータを表示するベクトルデータ表示部とを備えるようにして、少ない情報量の保管情報からポリライン又はポリゴンを構成するベクトルデータを生成しこれを表示することが可能となる。さらに、少ない情報量のためネットワークにより伝送されるデータ量を削減できる。
【特許文献１】特開２０００−２７６５７９公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
一般的に、３次元ＣＡＤなどの３次元モデルを作成したり表示するには、モデルの表面は面と呼ばれる領域に分割され、領域の境界は稜線により区切られ（図１４参照）、三角形メッシュのデータを面毎に管理し、ポリラインを稜線ごとに管理することにより、表示を行うことが行われている。この稜線ごとのポリラインの分割数を、隣接する面から見たときにメッシュ境界分割数と呼ぶ。
このような面や稜線を表示する上で、一般的に、三角形メッシュよりポリラインの方が、分割数を多めに設定される。これは、同一の分割数でもポリラインを用いたワイヤーフレーム表示すると粗さが目立ちやすく、三角形メッシュを用いたシェーディング表示では粗さが目立ちにくいためである。この三角形メッシュとポリラインの分割数の違いに起因して、以下のような問題が発生する。
（１）分割数をポリラインに一致させた場合、データサイズが大きくなる。
これは、見かけ上、必要以上に三角形メッシュを細かく分割して保持するためである。
（２）分割数を三角形メッシュに一致させた場合、ワイヤーフレーム表示の見かけが悪くなる。
（３）三角形メッシュとポリラインの分割数を一致させないと、ワイヤーシェーディング同時表示において、分割数の違いから、不一致が発生し、特に細部を拡大した際に不一致が目立つ。
上述した特許文献１でも、三角形メッシュとポリラインの分割数の違いについて考慮していないため、これらの問題点に対してなお解決されていない。
本発明は、上記の実情を考慮してなされたもので、シェーディング表示、ワイヤーフレーム表示、ワイヤーシェーディング同時表示において、それぞれ十分な表示品質を保ちながらも、コンパクトなデータサイズを実現するｎ次元形状モデル格納装置、ｎ次元形状モデル格納方法、ｎ次元形状モデル表示装置、ｎ次元形状モデル表示方法、ｎ次元形状モデルのデータ構造、ｎ次元形状モデル処理システム、プログラム、記録媒体を提供することを目的とする。
【課題を解決するための手段】
【０００４】
上記の課題を解決するために、本発明の請求項１のｎ次元形状モデル格納装置は、ｎ次元空間の形状モデルを表すポリラインおよび三角形メッシュを格納するｎ次元形状モデル格納装置において、前記ポリラインの頂点座標と前記三角形メッシュの頂点座標のうちメッシュ境界上にない頂点座標を前記頂点座標テーブルに格納する頂点座標格納手段と、前記ポリラインの頂点座標を、該頂点座標を格納した前記頂点座標テーブルへのインデックスに置き換えて、該ポリラインをポリラインインデックステーブルに格納するポリラインテーブル格納手段と、前記三角形メッシュの頂点座標のうちメッシュ境界上にない頂点座標の場合は、該頂点座標を格納した前記頂点座標テーブルへのインデックスに置き換え、メッシュ境界上にある頂点座標の場合は、該頂点座標にそれぞれ最も近い前記ポリラインの頂点座標の前記頂点座標テーブルへのインデックスに置き換えて、該三角形メッシュを三角形メッシュインデックステーブルに格納する三角形メッシュテーブル格納手段と、前記ポリラインそれぞれに対応したポリラインの分割数をポリライン分割数テーブルに格納するポリライン分割数テーブル格納手段と、前記ポリラインそれぞれに対応したメッシュ境界の分割数をメッシュ境界分割数テーブルに格納するメッシュ境界分割数テーブル格納手段を備え、ｎ次元形状モデルを表すポリラインと三角形メッシュを格納するようにしたことを特徴とする。
【０００５】
また、本発明の請求項２のｎ次元形状モデル格納方法は、ｎ次元空間の形状モデルを表すポリラインおよび三角形メッシュを格納するｎ次元形状モデル格納方法において、前記ポリラインの頂点座標を頂点座標テーブルに格納し、前記ポリラインの頂点座標を、該頂点座標を格納した前記頂点座標テーブルへのインデックスに置き換えて、該ポリラインをポリラインインデックステーブルに格納し、前記三角形メッシュの頂点座標のうちメッシュ境界上にない頂点座標を前記頂点座標テーブルに格納し、前記三角形メッシュの頂点座標のうちメッシュ境界上にない頂点座標の場合は、該頂点座標を格納した前記頂点座標テーブルへのインデックスに置き換え、メッシュ境界上にある頂点座標の場合は、該頂点座標にそれぞれ最も近い前記ポリラインの頂点座標の前記頂点座標テーブルへのインデックスに置き換えて、該三角形メッシュを三角形メッシュインデックステーブルに格納し、前記ポリラインそれぞれに対応したポリラインの分割数をポリライン分割数テーブルに格納し、前記ポリラインそれぞれに対応したメッシュ境界の分割数をメッシュ境界分割数テーブルに格納して、ｎ次元形状モデルを表すポリラインと三角形メッシュを格納するようにしたことを特徴とする。
また、本発明の請求項３のｎ次元形状モデル表示装置は、ｎ次元空間の形状モデルを表すポリラインおよび三角形メッシュを表示するｎ次元形状モデル表示装置において、前記三角形メッシュを格納する三角形メッシュインデックステーブルから取り出した三角メッシュごとに、該三角メッシュの頂点を示すインデックスを、頂点座標テーブルを参照して頂点座標に置き換えて三角メッシュを表示する手段と、前記ポリラインを格納するポリラインインデックステーブルから取り出したラインごとに、該ポリラインに対応したポリラインの分割数（Ｎｗとする）をポリライン分割数テーブルから取り出し、前記ポリラインに対応したメッシュ境界の分割数（Ｎｍとする）をメッシュ境界分割数テーブルから取り出して、ｉ×Ｎｍ（このｉは、０≦ｉ≦Ｎｗの範囲内の整数とする）の値がＮｗの倍数または倍数に最も近い値となるようなｉを決定し、前記取り出したラインの頂点のうちｉ番目のインデックスだけを選択し、選択されたインデックスを、頂点座標テーブルを参照して頂点座標に置き換えてポリラインを表示する手段とを備え、ｎ次元形状モデルを表すポリラインと三角形メッシュを表示するようにしたことを特徴とする。
【０００６】
また、本発明の請求項４のｎ次元形状モデル表示方法は、ｎ次元空間の形状モデルを表すポリラインおよび三角形メッシュを表示装置へ表示するｎ次元形状モデル表示方法において、前記三角形メッシュを格納する三角形メッシュインデックステーブルから取り出した三角メッシュごとに、該三角メッシュの頂点を示すインデックスを、頂点座標テーブルを参照して頂点座標に置き換えて三角メッシュを表示し、前記ポリラインを格納するポリラインインデックステーブルから取り出したラインごとに、該ポリラインに対応したポリラインの分割数（Ｎｗとする）をポリライン分割数テーブルから取り出し、前記ポリラインに対応したメッシュ境界の分割数（Ｎｍとする）をメッシュ境界分割数テーブルから取り出して、ｉ×Ｎｍ（このｉは、０≦ｉ≦Ｎｗの範囲内の整数とする）の値がＮｗの倍数または倍数に最も近い値となるようなｉを決定し、前記取り出したラインの頂点のうちｉ番目のインデックスだけを選択し、選択されたインデックスを、頂点座標テーブルを参照して頂点座標に置き換えてポリラインを表示することにより、ｎ次元形状モデルを表すポリラインと三角形メッシュを表示するようにしたことを特徴とする。
また、本発明の請求項５のｎ次元形状モデルのデータ構造は、ｎ次元空間の形状モデルを表すポリラインおよび三角形メッシュを格納するデータ構造であって、前記ポリラインおよび前記三角形メッシュの頂点座標を格納する頂点座標テーブルと、前記三角形メッシュを格納する三角形メッシュインデックステーブルと、前記ポリラインを格納するポリラインインデックステーブルと、前記ポリラインそれぞれに対応したポリラインの分割数を格納するポリライン分割数テーブルと、前記ポリラインそれぞれに対応したメッシュ境界の分割数を格納するメッシュ境界分割数テーブルと、からなることを特徴とする。
【０００７】
また、本発明の請求項６は、請求項１に記載のｎ次元形状モデル格納装置、請求項２に記載のｎ次元形状モデル格納方法、請求項３に記載のｎ次元形状モデル表示装置、請求項３に記載のｎ次元形状モデル表示方法または請求項５に記載のｎ次元形状モデルのデータ構造において、前記頂点座標テーブルは、浮動小数点表現および／またはベクトル量子化圧縮がなされていることを特徴とする。
また、本発明の請求項７は、請求項１に記載のｎ次元形状モデル格納装置、請求項２に記載のｎ次元形状モデル格納方法、請求項３に記載のｎ次元形状モデル表示装置、請求項３に記載のｎ次元形状モデル表示方法または請求項５に記載のｎ次元形状モデルのデータ構造において、前記三角形メッシュインデックステーブルは、インデックス三角形セット形式、インデックス三角形ストリップ形式またはインデックス三角形ファン形式のいずれかであることを特徴とする。
また、本発明の請求項８は、請求項１に記載のｎ次元形状モデル格納装置、請求項２に記載のｎ次元形状モデル格納方法、請求項３に記載のｎ次元形状モデル表示装置、請求項３に記載のｎ次元形状モデル表示方法または請求項５に記載のｎ次元形状モデルのデータ構造において、前記ポリラインインデックステーブルは、インデックスラインストリップ形式またはインデックスラインセット形式のいずれかであることを特徴とする。
また、本発明の請求項９のｎ次元形状モデル格納装置は、ｎ次元空間の形状モデルを表すポリラインおよび三角形メッシュを格納するｎ次元形状モデル格納装置において、前記ポリラインの頂点座標をポリライン頂点座標テーブルに格納するポリライン頂点座標テーブル格納手段と、前記三角形メッシュの頂点座標のうちメッシュ境界上にある頂点座標の場合は、該頂点座標にそれぞれ最も近い前記ポリラインの頂点座標に置き換えて、該三角形メッシュを三角形メッシュ頂点座標テーブルに格納する三角形メッシュ頂点座標テーブル格納手段と、前記ポリラインそれぞれに対応したポリラインの分割数をポリライン分割数テーブルに格納するポリライン分割数テーブル格納手段と、前記ポリラインそれぞれに対応したメッシュ境界の分割数をメッシュ境界分割数テーブルに格納するメッシュ境界分割数テーブル格納手段を備え、ｎ次元形状モデルを表すポリラインと三角形メッシュを格納するようにしたことを特徴とする。
【０００８】
また、本発明の請求項１０のｎ次元形状モデル格納方法は、ｎ次元空間の形状モデルを表すポリラインおよび三角形メッシュを格納するｎ次元形状モデル格納方法において、前記ポリラインの頂点座標をポリライン頂点座標テーブルに格納し、前記三角形メッシュの頂点座標のうちメッシュ境界上にある頂点座標の場合は、該頂点座標にそれぞれ最も近い前記ポリラインの頂点座標に置き換えて、該三角形メッシュを三角形メッシュ頂点座標テーブルに格納し、前記ポリラインそれぞれに対応したポリラインの分割数をポリライン分割数テーブルに格納し、前記ポリラインそれぞれに対応したメッシュ境界の分割数をメッシュ境界分割数テーブルに格納して、ｎ次元形状モデルを表すポリラインと三角形メッシュを格納するようにしたことを特徴とする。
また、本発明の請求項１１のｎ次元形状モデル表示装置は、ｎ次元空間の形状モデルを表すポリラインおよび三角形メッシュを表示するｎ次元形状モデル表示装置において、前記三角形メッシュを格納する三角形メッシュ頂点座標テーブルから取り出した三角メッシュごとに三角メッシュを表示する手段と、前記ポリラインを格納するポリライン頂点座標テーブルから取り出したラインごとに、該ポリラインに対応したポリラインの分割数（Ｎｗとする）をポリライン分割数テーブルから取り出し、前記ポリラインに対応したメッシュ境界の分割数（Ｎｍとする）をメッシュ境界分割数テーブルから取り出して、ｉ×Ｎｍ（このｉは、０≦ｉ≦Ｎｗの範囲内の整数とする）の値がＮｗの倍数または倍数に最も近い値となるようなｉを決定し、前記取り出したラインの頂点のうちｉ番目の頂点座標だけを選択してポリラインを表示する手段とを備え、ｎ次元形状モデルを表すポリラインと三角形メッシュを表示するようにしたことを特徴とする。
【０００９】
また、本発明の請求項１２のｎ次元形状モデル表示方法は、ｎ次元空間の形状モデルを表すポリラインおよび三角形メッシュを表示装置へ表示するｎ次元形状モデル表示方法において、前記三角形メッシュを格納する三角形メッシュ頂点座標テーブルから取り出した三角メッシュごとに三角メッシュを表示し、前記ポリラインを格納するポリライン頂点座標テーブルから取り出したラインごとに、該ポリラインに対応したポリラインの分割数（Ｎｗとする）をポリライン分割数テーブルから取り出し、前記ポリラインに対応したメッシュ境界の分割数（Ｎｍとする）をメッシュ境界分割数テーブルから取り出して、ｉ×Ｎｍ（このｉは、０≦ｉ≦Ｎｗの範囲内の整数とする）の値がＮｗの倍数または倍数に最も近い値となるようなｉを決定し、前記取り出したラインの頂点のうちｉ番目の頂点座標だけを選択してポリラインを表示することにより、ｎ次元形状モデルを表すポリラインと三角形メッシュを表示するようにしたことを特徴とする。
また、本発明の請求項１３のｎ次元形状モデルのデータ構造は、ｎ次元空間の形状モデルを表すポリラインおよび三角形メッシュを格納するデータ構造であって、前記三角形メッシュの頂点座標を格納する三角形メッシュ頂点座標テーブルと、前記ポリラインの頂点座標を表すポリライン頂点座標テーブルと、前記ポリラインそれぞれに対応したポリラインの分割数を格納するポリライン分割数テーブルと、前記ポリラインそれぞれに対応したメッシュ境界の分割数を格納するメッシュ境界分割数テーブルとからなることを特徴とする。
また、本発明の請求項１４は、請求項９に記載のｎ次元形状モデル格納装置、請求項１０に記載のｎ次元形状モデル格納方法、請求項１１に記載のｎ次元形状モデル表示装置、請求項１２に記載のｎ次元形状モデル表示方法または請求項１３に記載のｎ次元形状モデルのデータ構造において、前記三角形メッシュ頂点座標テーブルおよび前記ポリライン頂点座標テーブルの頂点座標は、浮動小数点表現および／またはベクトル量子化圧縮がなされていることを特徴とする。
【００１０】
また、本発明の請求項１５は、請求項９に記載のｎ次元形状モデル格納装置、請求項１０に記載のｎ次元形状モデル格納方法、請求項１１に記載のｎ次元形状モデル表示装置、請求項１２に記載のｎ次元形状モデル表示方法または請求項１３に記載のｎ次元形状モデルのデータ構造において、前記三角形メッシュ頂点座標テーブルは、三角形セット形式、三角形ストリップ形式または三角形ファン形式のいずれかであることを特徴とする。
また、本発明の請求項１６は、請求項９に記載のｎ次元形状モデル格納装置、請求項１０に記載のｎ次元形状モデル格納方法、請求項１１に記載のｎ次元形状モデル表示装置、請求項１２に記載のｎ次元形状モデル表示方法または請求項１３に記載のｎ次元形状モデルのデータ構造において、前記ポリライン頂点座標テーブルは、ラインストリップ形式またはラインセット形式のいずれかであることを特徴とする。
また、本発明の請求項１７のｎ次元形状モデル処理システムは、ｎ次元空間の形状モデルを処理するｎ次元形状モデル処理システムにおいて、請求項１または９に記載のｎ次元形状モデル格納装置と、請求項３または１１に記載のｎ次元形状モデル表示装置を備え、前記ｎ次元形状モデル格納装置は、格納された形状データを送信し、前記ｎ次元形状モデル表示装置は、該形状データを受信して表示するようにしたことを特徴とする。
また、本発明の請求項１８のプログラムは、コンピュータに、請求項１または９に記載のｎ次元形状モデル格納装置、請求項３または１１に記載のｎ次元形状モデル表示装置、または、請求項１７に記載のｎ次元形状モデル処理システムの機能を実行させるためのプログラムである。
また、本発明の請求項１９の記録媒体は、請求項１８に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体である。
【発明の効果】
【００１１】
本発明によれば、ｎ次元形状モデルを三角形メッシュとポリラインで表した場合、三角形メッシュの分割数とポリラインの分割数を独立して保持するようにしたことにより、三角形メッシュの分割数をポリラインに一致させる必要がないので、データサイズが大きくならない。
また、ワイヤーフレーム表示の見かけが悪くならない。
また、三角形メッシュの分割数とポリラインの分割数を独立して保持していても、表示する際には三角形メッシュとポリラインの分割数を一致させることができるので、ワイヤーシェーディング同時表示において、分割数の違いからの不一致は発生しない。
また、本発明を３次元ＣＡＤシステムなどに実現することによって、コンパクトで見かけのよい３次元形状データを実現することができる。
【発明を実施するための最良の形態】
【００１２】
以下、図面を参照して本発明の好適な実施形態について説明する。
＜実施形態１＞
（１）データ構造
図１は、本発明のｎ次元（２乃至４次元）形状モデルをポリラインと三角形メッシュで表した場合の形状データを格納するためのデータ構造を示している。
ｎ次元のポリラインと三角形メッシュを格納するためのデータ構造は、ｎ次元空間の頂点座標を表す頂点座標テーブル１と、三角形メッシュを表す三角形メッシュインデックステーブル２と、ポリラインを表すポリラインインデックステーブル３と、ポリライン分割数テーブル４と、メッシュ境界分割数テーブル５から構成される。
頂点座標テーブル１には、頂点座標の数（＝Ｎｃ）とＮｃ個の頂点座標が格納され、Ｎｃ個の頂点座標は頂点座標０から頂点座標（Ｎｃ−１）の順に格納されている。また、これらの頂点座標は、それぞれ（ｘ成分、ｙ成分、ｚ成分）の３成分から構成され、各成分は浮動小数点あるいはベクトル量子化圧縮が行われる。
三角形メッシュインデックステーブル２のデータ構造には、三角形メッシュインデックス数（＝Ｎｔ）と、所定の曲面群を表す複数の三角形メッシュを、三角形セット形式、三角形ストリップ形式または三角形ファン形式のいずれかの形式で格納する。
三角形セット形式は、各三角形メッシュの３つの頂点を順次並べて格納しており、この３つの頂点の座標は頂点座標テーブルに格納された座標値へのインデックスを用いて表現される。
三角形ストリップ形式は、各三角形メッシュをストリップ形式で表現して順次並べて格納し、この頂点の座標は頂点座標テーブルに格納された座標値へのインデックスを用いて表現される。また、ストリップ形式は、一つのストリップ形式のデータの区切りを、頂点座標の並びの最後にデリミタを挿入して表現する。
【００１３】
三角形ファン形式は、各三角形メッシュをファン形式で表現して順次並べて格納し、この頂点座標は頂点座標テーブルに格納された座標値へのインデックスを用いて表現される。また、ファン形式は、一つのファン形式のデータの区切りを、頂点座標の並びの最後にデリミタを挿入して表現する。
ポリラインインデックステーブル３のデータ構造には、ポリラインインデックス数（＝Ｎｐ）と、面の境界稜線（メッシュ境界）を表す複数のポリラインをラインセット形式またはラインストリップ形式のいずれかの形式で格納する。
ラインセット形式は、線分の始点座標、終点座標を格納している頂点座標テーブルに格納された座標値へのインデックスが順に格納される。
ラインストリップ形式は、各ポリラインをストリップ形式で表現して順次並べて格納し、この頂点座標は頂点座標テーブルに格納された座標値へのインデックスを用いて表現される。また、ストリップ形式は、一つのストリップ形式のデータの区切りを、頂点座標の並びの最後にデリミタを挿入して表現する。
ポリライン分割数テーブル４のデータ構造には、境界数（＝Ｎｄ）と各稜線を表すポリラインごとの分割数を格納している。
メッシュ境界分割数テーブル５のデータ構造には、境界数（＝Ｎｂ）と各メッシュ境界を表す稜線ごとの分割数を格納している。
このポリライン分割数テーブル４とメッシュ境界分割数テーブル５とは、同じ稜線に対して、ポリライン側から見たときの分割数と、面を表す三角形メッシュ側から見たときの稜線分割数である。
また、ポリラインインデックステーブル３から取り出された各ポリラインの順序と、各分割数テーブルの各エントリとは対応している。
【００１４】
（２）ポリラインと三角形メッシュデータの格納：
次に、本実施形態１で示したデータ構造（図１）を用いて、所定のｎ次元形状を表すポリラインと三角形メッシュを格納する方法について説明する。
はじめに、ｎ次元形状を表す三角形メッシュやポリラインのデータは、すでにｎ次元形状処理装置のようなシステムによってデータベース化（形状ＤＢ）されているものとする。従って、面は、三角形セット形式、三角形ストリップ形式または三角形ファン形式のいずれかで表現された三角形メッシュで作成されており、メッシュ境界がどの稜線であるかまたその分割数がいくつであるか等はその形状ＤＢには格納されているものとする。
また、同様に、ポリラインに対しても、ラインセット形式またはラインストリップ形式のいずれかで表現されており、どの稜線と対応しているか、また、その分割数がいくつであるか等はその形状ＤＢには格納されているものとする。
図２は、実施形態１のデータ構造で格納するためのｎ次元形状モデル格納装置の構成を示すブロック図である。同図において、２０は頂点座標テーブル生成手段、３０は三角メッシュテーブル生成手段、４０はポリラインテーブル生成手段、５０はポリライン分割数テーブル生成手段、６０はメッシュ境界分割数テーブル生成手段、７０は生成したテーブル（頂点座標テーブル、三角形メッシュインデックステーブル、ポリラインインデックステーブル、ポリライン分割数テーブル、メッシュ境界分割数テーブル）を格納するデータ格納手段、１０は格納装置を制御する制御手段である。なお、請求項において、頂点座標テーブル格納手段とは頂点座標テーブル生成手段２０およびデータ格納手段７０を意味し、三角形メッシュテーブル格納手段とは三角形メッシュテーブル生成手段３０およびデータ格納手段７０を意味し、ポリラインテーブル格納手段とはポリラインテーブル生成手段４０およびデータ格納手段７０を意味し、ポリライン分割数テーブル格納手段とはポリライン分割数テーブル生成手段５０およびデータ格納手段７０を意味し、メッシュ境界分割数テーブル格納手段とはメッシュ境界分割数テーブル生成手段６０およびデータ格納手段７０を意味する。
【００１５】
図３は、形状ＤＢの中の指定された形状データ（ｎ次元のポリラインと三角形メッシュで表現されている。）を図１のデータ構造の形式で格納する手順を示すフローチャートである。
まず、頂点座標テーブル生成手段２０により、形状ＤＢの中の指定された形状の中のすべてのポリラインに対して、ポリラインを構成するｎ次元空間の頂点座標を頂点座標テーブルに格納し、格納した頂点数（Ｎｃ）を更新する（ステップＳ１）。
次に、ポリラインテーブル生成手段４０により形状ＤＢの中の指定された形状の中のすべてのポリラインに対して、各ポリラインの頂点座標を頂点座標テーブルへのインデックスに変換して、各ポリラインを順次ラインセット形式またはラインストリップ形式でポリラインインデックステーブルに格納し、格納したインデックス数をポリラインインデックス数（Ｎｐ）として更新する（ステップＳ２）。
更に、頂点座標テーブル生成手段２０により、形状ＤＢの中の指定された形状の中のすべての三角形メッシュで用いるｎ次元空間の頂点座標のうち、メッシュ境界上にない頂点座標を頂点座標テーブルに格納し、頂点数Ｎｃを更新する（ステップＳ３）。
【００１６】
次に、三角形メッシュテーブル生成手段３０により、形状ＤＢの中の指定された形状の中のすべての三角形メッシュで用いるｎ次元空間の頂点座標のうち、メッシュ境界上にない頂点座標については、頂点座標テーブルに格納された座標値へのインデックスを取り出し、また、メッシュ境界上にある頂点座標については最も近いポリライン上の始点座標または終点座標への（頂点座標テーブルの）インデックスに置き換え、各三角形メッシュを三角形セット形式、三角形ストリップ形式または三角形ファン形式のいずれかの形式で三角形メッシュインデックステーブルに格納し、格納したインデックス数を三角形メッシュインデックス数（Ｎｔ）として更新する（ステップＳ４）。
以上のように、メッシュ境界上にある三角形メッシュの頂点座標をポリライン上の頂点と一致させることによって、表示したときの三角形メッシュの稜線とポリラインが表示する稜線との隙間をなくすことができる。
ポリライン分割数テーブル生成手段５０により、形状ＤＢの中の指定された形状の中のすべてのポリラインに対して、ポリラインインデックステーブルに格納した順序でポリラインごとの分割数をポリライン分割数テーブルに格納し、ポリラインの数を境界数（Ｎｄ）として更新する（ステップＳ５）。
メッシュ境界分割数テーブル生成手段６０により、形状ＤＢの中の指定された形状の中のすべての三角形メッシュ境界の稜線に対して、ポリラインインデックステーブルにポリラインを格納した順序でメッシュ境界ごとの分割数を三角メッシュ境界分割数テーブルに格納し、メッシュ境界の数を境界数（Ｎｂ）として更新する（ステップＳ６）。
以上のように、ｎ次元形状を表す三角メッシュやポリラインのデータを作成することによって、三角形メッシュの分割数とポリラインの分割数を独立して保持することが可能になり、三角形メッシュの分割数をポリラインに一致させる必要がないので、データサイズが大きくならない。
【００１７】
（３）ｎ次元のポリラインと三角形メッシュデータの表示
図４は、実施形態１のデータ構造で格納された形状データを表示するｎ次元形状モデル表示装置の構成を示すブロック図である。同図において、ｎ次元形状モデル表示装置は、三角メッシュ表示手段１１０、ポリライン表示手段１２０、形状モデルデータ（頂点座標テーブル、三角形メッシュインデックステーブル、ポリラインインデックステーブル、ポリライン分割数テーブル、メッシュ境界分割数テーブル）を保持するデータ保持手段１３０と、これらの表示手段を制御する制御手段１００とから構成される。
図５は、本実施形態１のｎ次元形状モデル格納装置で格納された形状データ（ｎ次元のポリラインと三角形メッシュデータで表された）を表示するときの処理手順を示すフローチャートである。
三角メッシュ表示手段１１０により三角形メッシュインデックステーブルと頂点座標テーブルを用いて三角形メッシュを表示する（ステップＳ１１）。
・三角形メッシュの頂点座標がセット形式で格納されている場合：
三角形メッシュインデックステーブルから３つのインデックスを取り出して、これらのインデックスが示す頂点座標テーブルの頂点座標を取り出して、三角形メッシュを表示する。これをＮｃ／３個の三角形メッシュについて繰り返す。
・三角形メッシュの頂点座標が三角形ストリップ形式で格納されている場合：
三角形メッシュインデックステーブルからデリミタまでを取り出して、ストリップ形式で格納されているインデックスを、頂点座標テーブルを参照して頂点座標へ変換してから、三角形メッシュを表示する。これをインデックステーブルの最後まで繰り返す。
・三角形メッシュの頂点座標が三角形ファン形式で格納されている場合：
三角形メッシュインデックステーブルからデリミタまでを取り出して、ファン形式で格納されているインデックスを、頂点座標テーブルを参照して頂点座標へ変換してから、三角形メッシュを表示する。これをインデックステーブルの最後まで繰り返す。
ポリライン表示手段１２０により、ポリラインインデックステーブル、頂点座標テーブル、ポリライン分割数テーブルおよびメッシュ境界分割数テーブルを用いてポリラインを表示する（ステップＳ１２）。
【００１８】
まず、ポリラインインデックステーブルから格納形式に従って１ラインずつ取り出す。
・ポリラインがラインセット形式で格納されている場合：
ポリラインインデックステーブルで、２つのインデックスを取り出し、そのうちの終点座標へのインデックスが、次の２つのインデックスのうち始点座標へのインデックスと異なるところを探して、１ライン分のポリラインとし、このインデックスを抜き出す。
・ポリラインがラインストリップ形式で格納されている場合：
ポリラインインデックステーブルで、デリミタまでを１ライン分のポリラインとし、このインデックスを抜き出す。
この抜き出した１ラインが何番目のライン抜き出しかをカウントしておく。いま、ｋ番目と仮定する。
次に、ポリライン分割数テーブルのｋ番目の分割数Ｎｗｋと、メッシュ境界分割数テーブルのｋ番目の分割数Ｎｍｋとを取り出す。
次に、ｉ×Ｎｍｋ（０≦ｉ≦Ｎｗｋ）の値がＮｗｋの倍数またはＮｗｋの倍数に最も近い値となるｉを求める。ここで、０番目（ｉ＝０）はポリラインの始点を表し、Ｎｗｋ番目（ｉ＝Ｎｗｋ）はポリラインの終点を表すものとするので、ｉの値の個数は、必ず２個乃至それ以上の個数がある。
さらに、先に取り出した１ライン分のポリラインの頂点を表すインデックスのうち、ここで求めたｉ番目のインデックスを選んで、頂点座標テーブルを参照して頂点座標に変換し、ポリラインを表示する。
以上のことを、ポリラインインデックステーブルに登録されているポリラインの本数分繰り返す。
【００１９】
＜実施形態２＞
（１）データ構造
図６は、本発明のｎ次元（２乃至４次元）形状モデルをポリラインと三角形メッシュで表した場合の形状データを格納するためのデータ構造を示している。
ｎ次元のポリラインと三角形メッシュを格納するためのデータ構造は、三角形メッシュを表す三角形メッシュ頂点座標テーブル６と、ポリラインを表すポリライン頂点座標テーブル７と、ポリライン分割数テーブル８と、メッシュ境界分割数テーブル９から構成される。
三角形メッシュ頂点座標テーブル６のデータ構造には、三角形メッシュの座標数（＝Ｎｔ）と、所定の曲面を表す複数の三角形メッシュを、三角形セット形式、三角形ストリップ形式または三角形ファン形式のいずれかの形式で格納する。
三角形セット形式は、各三角形メッシュの３つの頂点を順次並べて格納する。
三角形ストリップ形式は、各三角形メッシュをストリップ形式で表現して順次並べて格納する。また、ストリップ形式は、一つのストリップ形式のデータの区切りを、頂点座標の並びの最後にデリミタを挿入して表現する。
三角形ファン形式は、各三角形メッシュをファン形式で表現して順次並べて格納する。また、ファン形式は、一つのファン形式のデータの区切りを、頂点座標の並びの最後にデリミタを挿入して表現する。
さらに、三角形メッシュを表す頂点座標がメッシュ境界上にない場合は、そのまま頂点座標とするが、メッシュ境界上の頂点座標の場合には、それぞれ最も近いポリラインの頂点座標を探し、その頂点座標値に置き換えるようにして、三角形メッシュ頂点座標テーブルに格納する。
ここで格納される頂点の座標は、それぞれ（ｘ成分、ｙ成分、ｚ成分）の３成分から構成され、各成分は浮動小数点あるいはベクトル量子化圧縮が行われている。
【００２０】
ポリライン頂点座標テーブル７のデータ構造には、ポリライン座標数（＝Ｎｐ）と、面の境界稜線（メッシュ境界）を表す複数のポリラインをラインセット形式またはラインストリップ形式のいずれかの形式で格納する。
ラインセット形式は、線分の始点座標、終点座標を順次格納する。
ラインストリップ形式は、各ポリラインをストリップ形式で表現して順次並べて格納する。また、ストリップ形式は、一つのストリップ形式のデータの区切りを、頂点座標の並びの最後にデリミタを挿入して表現する。
ここで格納される頂点の座標は、それぞれ（ｘ成分、ｙ成分、ｚ成分）の３成分から構成され、各成分は浮動小数点あるいはベクトル量子化圧縮が行われている。
ポリライン分割数テーブル８のデータ構造には、境界数（＝Ｎｄ）と各稜線を表すポリラインごとの分割数を格納している。
メッシュ境界分割数テーブル９のデータ構造には、境界数（＝Ｎｂ）と各メッシュ境界を表す稜線ごとの分割数を格納している。
このポリライン分割数テーブル８とメッシュ境界分割数テーブル９とは、同じ稜線に対して、ポリライン側から見たときの分割数と、面を表す三角形メッシュ側から見たときの稜線分割数である。
また、ポリライン頂点座標テーブル７から取り出された各ポリラインの順序と、各分割数テーブルの各エントリとは対応している。
【００２１】
（２）ポリラインと三角形メッシュデータの格納：
次に、本実施形態２で示したデータ構造（図６）を用いて、所定のｎ次元形状を表すポリラインと三角形メッシュを格納する方法について説明する。
実施形態１と同様に、ｎ次元形状を表す三角形メッシュやポリラインのデータは、すでにｎ次元形状処理装置のようなシステムによってデータベース化（形状ＤＢ）されているものとする。
図７は、実施形態２のデータ構造で格納された形状データを生成し、かつ格納するｎ次元形状モデル格納装置の構成を示すブロック図である。同図において、ｎ次元形状モデル格納装置は、三角メッシュ頂点座標テーブル生成手段２１０、ポリライン頂点座標テーブル生成手段２２０、ポリライン分割数テーブル生成手段２３０、メッシュ境界分割数テーブル生成手段２４０、生成したテーブル（三角形メッシュ頂点座標テーブル、ポリライン頂点座標テーブルと、ポリライン分割数テーブル、メッシュ境界分割数テーブル）を格納するデータ格納手段２５０と、これらの表示手段を制御する制御手段２００とから構成される。なお、請求項において、三角形メッシュ頂点座標テーブル格納手段とは三角形メッシュ頂点座標テーブル生成手段２１０およびデータ格納手段２５０を意味し、ポリライン頂点座標テーブル格納手段とはポリライン頂点座標テーブル生成手段２２０およびデータ格納手段２５０を意味し、ポリライン分割数テーブル格納手段とはポリライン分割数テーブル生成手段２３０およびデータ格納手段２５０を意味し、メッシュ境界分割数テーブル格納手段とはメッシュ境界分割数テーブル生成手段２４０およびデータ格納手段２５０を意味する。
【００２２】
図８は、形状ＤＢの中の指定された形状データ（ｎ次元のポリラインと三角形メッシュで表現されている。）を図６のデータ構造の形式で格納する手順を示すフローチャートである。
ポリライン頂点座標テーブル生成手段２２０より、に形状ＤＢの中の指定された形状の中のすべてのポリラインに対して、順次ラインセット形式またはストリップ形式でポリライン頂点座標テーブルに格納し、座標数（Ｎｐ）を更新する（ステップＳ２１）。
三角メッシュ頂点座標テーブル生成手段２１０により、形状ＤＢの中の指定された形状の中のすべての三角形メッシュで用いるｎ次元空間の頂点座標のうち、境界上にない頂点座標についてはそのままとし、また、境界上にある頂点座標については最も近いポリライン上の始点座標または終点座標に置き換え、各三角形メッシュを三角形セット形式、三角形ストリップ形式または三角形ファン形式のいずれかの形式で三角形メッシュ頂点座標テーブルに格納し、座標数（Ｎｔ）を更新する（ステップＳ２２）。
以上のように、メッシュ境界上にある三角形メッシュの頂点座標をポリライン上の頂点と一致させることによって、表示したときの三角形メッシュの稜線とポリラインが表示する稜線との隙間をなくすことができる。
【００２３】
ポリライン分割数テーブル生成手段２３０により、形状ＤＢの中の指定された形状の中のすべてのポリラインに対して、ポリライン頂点座標テーブルに格納した順序でポリラインごとの分割数をポリライン分割数テーブルに格納し、ポリラインの数を境界数（Ｎｄ）として更新する（ステップＳ２３）。
メッシュ境界分割数テーブル生成手段２４０により、形状ＤＢの中の指定された形状の中のすべての三角形メッシュ境界の稜線に対して、ポリライン頂点座標テーブルにポリラインを格納した順序でメッシュ境界ごとの分割数を三角メッシュ境界分割数テーブルに格納し、メッシュ境界の数を境界数（Ｎｂ）として更新する（ステップＳ２４）。
以上のように、ｎ次元形状を表す三角メッシュやポリラインのデータを作成することによって、三角形メッシュの分割数とポリラインの分割数を独立して保持することが可能になり、三角形メッシュの分割数をポリラインに一致させる必要がないので、データサイズが大きくならない。
【００２４】
（３）ポリラインと三角形メッシュデータの表示
図９は、本実施形態２のデータ構造で格納された形状データを表示するｎ次元形状モデル表示装置の構成を示すブロック図である。同図において、ｎ次元形状モデル表示装置は、三角メッシュ表示手段３１０、ポリライン表示手段３２０、形状モデルデータ（三角形メッシュ頂点座標テーブル、ポリライン頂点座標テーブルと、ポリライン分割数テーブル、メッシュ境界分割数テーブル）を保持するデータ保持手段３３０と、これらの表示手段を制御する制御手段３００とから構成される。
図１０は、本実施形態２のｎ次元形状モデル格納装置で格納された形状（ｎ次元のポリラインと三角形メッシュデータで表された）を表示するときの処理手順を示すフローチャートである。
三角形メッシュ頂点座標テーブルを用いて三角形メッシュを表示する（ステップＳ３１）。ステップＳ３１で三角メッシュ表示手段３１０を構成する。
・三角形メッシュの頂点座標がセット形式で格納されている場合：
三角形メッシュ頂点座標テーブルから３つの頂点座標を取り出して、三角形メッシュを表示する。これをＮｔ／３個の三角形メッシュについて繰り返す。
・三角形メッシュの頂点座標がストリップ形式で格納されている場合：
三角形メッシュ頂点座標テーブルからデリミタまでを取り出して、ストリップ形式で三角形メッシュを表示する。これを三角形メッシュ頂点座標テーブルの最後まで繰り返す。
・三角形メッシュの頂点座標がファン形式で格納されている場合：
三角形メッシュ頂点座標テーブルからデリミタまでを取り出して、ファン形式で三角形メッシュを表示する。これを三角形メッシュ頂点座標テーブルの最後まで繰り返す。
ポリライン頂点座標テーブル、ポリライン分割数テーブルおよびメッシュ境界分割数テーブルを用いてポリラインを表示する（ステップＳ３２）。ステップＳ３２でポリライン表示手段３２０を構成する。
【００２５】
まず、ポリライン頂点座標テーブルから格納形式に従って１ラインずつ取り出す。
・ポリラインがラインセット形式で格納されている場合：
ポリライン頂点座標テーブルで、２つの頂点座標を取り出し、そのうちの終点座標が、次の２つの頂点座標のうちの始点座標と異なるところを探し、１ライン分のポリラインとして抜き出す。
・ポリラインがラインストリップ形式で格納されている場合：
ポリライン頂点座標テーブルで、デリミタまでを１ライン分のポリラインとして抜き出す。
この抜き出した１ラインが何番目のライン抜き出しかをカウントしておく。いま、ｋ番目と仮定する。
次に、ポリライン分割数テーブルのｋ番目の分割数Ｎｗｋと、メッシュ境界分割数テーブルのｋ番目の分割数Ｎｍｋとを取り出す。
次に、ｉ×Ｎｍｋ（０≦ｉ≦Ｎｗｋ）の値がＮｗｋの倍数またはＮｗｋの倍数に最も近い値となるｉを求める。ここで、０番目（ｉ＝０）はポリラインの始点を表し、Ｎｗｋ番目（ｉ＝Ｎｗｋ）はポリラインの終点を表すものとするので、ｉの値の個数は、必ず２個乃至それ以上の個数がある。
さらに、先に取り出した１ライン分のポリラインの頂点座標のうち、ここで求めたｉ番目の頂点座標を選んで、ポリラインを表示する。
以上のことを、ポリライン頂点座標テーブルに登録されているポリラインの本数分繰り返す。
【００２６】
＜実施形態３＞
また、上述したｎ次元形状モデル格納装置を実施するための第１のコンピュータとｎ次元形状モデル表示装置を実施するための第２のコンピュータを通信リンクで接続し、第１のコンピュータで図１または図６の形式でデータ格納手段に格納された形状データを通信リンクによって第２のコンピュータへ送る。
第２のコンピュータでは、この形状データを受信し、ｎ次元形状モデルをディスプレイ等の表示装置へ表示することができる（図１１参照）。
ここで、通信リンクの例として、シリアルリンク（ＲＳ−２３２）、パラレルリンク、無線リンク、赤外線リンク、ネットワーク（ローカルエリアネットワーク、広域ネットワーク、イントラネット、インターネット）がある。
また、上述の第１のコンピュータと第２のコンピュータとを同じコンピュータとしてもよい。
【００２７】
＜実施形態４＞
本発明は、上述した実施形態のみに限定されたものではない。上述した実施形態の機能をそれぞれプログラム化し、あらかじめＣＤ−ＲＯＭ等の記録媒体に書き込んでおき、コンピュータに搭載したＣＤ−ＲＯＭドライブのような媒体駆動装置にこのＣＤ−ＲＯＭ等を装着して、これらのプログラムをコンピュータのメモリあるいは記憶装置に格納し、それを実行することによっても、本発明の目的が達成されることは言うまでもない。
この場合、記録媒体から読出されたプログラム自体が上述した実施形態を実現することになり、そのプログラムおよびそのプログラムを記録した記録媒体も本発明を構成することになる。
なお、記録媒体としては半導体媒体（例えば、ＲＯＭ、不揮発性メモリカード等）、光媒体（例えば、ＤＶＤ、ＭＯ、ＭＤ、ＣＤ−Ｒ等）、磁気媒体（例えば、磁気テープ、フレキシブルディスク等）のいずれであってもよい。
また、ロードしたプログラムを実行することにより上述した実施形態が実現されるだけでなく、そのプログラムの指示に基づき、オペレーティングシステム等が実際の処理の一部または全部を行い、その処理によって上述した実施形態が実現される場合も含まれる。
さらに、上述したプログラムをサーバコンピュータの磁気ディスク等の記憶装置に格納しておき、通信網で接続された利用者のコンピュータからダウンロード等の形式で頒布する場合、このサーバコンピュータの記憶装置も本発明の記録媒体に含まれる。
また、上述したプログラムをサーバコンピュータの磁気ディスク等の記憶装置に格納しておき、通信網で接続された利用者のコンピュータから実行指示受信して、当該プログラムを実行し、その結果を利用者のコンピュータへ返信するようなＡＳＰによる利用を提供する場合、このサーバコンピュータの記憶装置およびそのプログラムも本発明に含まれる。
尚、本発明は上述した実施形態に限定されることなく、本発明の要旨を逸脱しない範囲内で各種の変形、修正が可能であるのは勿論である。
【図面の簡単な説明】
【００２８】
【図１】ｎ次元形状モデルをポリラインと三角形メッシュで表したときのデータ構造を示す図。
【図２】本発明のｎ次元形状モデル格納装置の構成を示すブロック図。
【図３】ポリラインと三角形メッシュで表わされたｎ次元形状モデルデータを図１のデータ構造を使って格納する手順を示すフローチャート。
【図４】図１のデータ構造で格納された形状データを表示するｎ次元形状モデル表示装置の構成を示すブロック図。
【図５】図１のデータ構造で格納された形状データを表示装置へ表示するときの処理手順を示すフローチャート。
【図６】ｎ次元のポリラインと三角形メッシュを表す他のデータ構造を示す図。
【図７】本発明のｎ次元形状モデル格納装置の他の構成を示すブロック図。
【図８】ポリラインと三角形メッシュで表わされたｎ次元形状モデルデータを図６のデータ構造を使って格納する手順を示すフローチャート。
【図９】図６のデータ構造で格納された形状データを表示するｎ次元形状モデル表示装置の構成を示すブロック図。
【図１０】図６のデータ構造で格納された形状データを表示装置へ表示するときの処理手順を示すフローチャート。
【図１１】本発明のｎ次元形状モデル処理システムの構成を示すブロック図。
【図１２】ｎ次元形状モデルを表示するためのデータ形式であるポリラインと三角形メッシュの表示例を示す図。
【図１３】ポリラインや三角形メッシュを用いる代表的な表示方法であるシェーディング表示、ワイヤーフレーム表示およびワイヤーシェーディング表示の表示例を示す図。
【図１４】ポリライン、三角メッシュおよびメッシュ境界の関係を説明するための図。
【符号の説明】
【００２９】
１０  制御手段、２０  頂点座標テーブル生成手段、３０  三角メッシュテーブル生成手段、４０  ポリラインテーブル生成手段、５０  ポリライン分割数テーブル生成手段、６０  メッシュ境界分割数テーブル生成手段、７０  データ格納手段、１００  制御手段、１１０  三角メッシュ表示手段、１２０  ポリライン表示手段、１３０  データ保持手段、２００  制御手段、２１０  三角メッシュ頂点座標テーブル生成手段、２２０  ポリライン頂点座標テーブル生成手段、２３０  ポリライン分割数テーブル生成手段、２４０  メッシュ境界分割数テーブル生成手段、２５０  データ格納手段、３００  制御手段、３１０  三角メッシュ表示手段、３２０  ポリライン表示手段、３３０  データ保持手段
【図１】
2005056083.tif 000003
【図２】
2005056083.tif 000004
【図３】
2005056083.tif 000005
【図４】
2005056083.tif 000006
【図５】
2005056083.tif 000007
【図６】
2005056083.tif 000008
【図７】
2005056083.tif 000009
【図８】
2005056083.tif 000010
【図９】
2005056083.tif 000011
【図１０】
2005056083.tif 000012
【図１１】
2005056083.tif 000013
【図１２】
2005056083.tif 000014
【図１３】
2005056083.tif 000015
【図１４】
2005056083.tif 000016