(57)【要約】【課題】データサイズ増大によるハードディスク等保存装置のスペース効率、表示速度、転送速度および伸張速度を低下することがなく、自由曲線から生成したワイヤーフレームデータの圧縮、格納、転送、伸張の処理を施すことができるワイヤーフレームのデータ構造を提供する。【解決手段】ワイヤーフレームのデータ構造は、ｎ次元の座標を格納する座標テーブルと、ｎ次元のベクトルを格納するベクトルテーブルと、スカラ値を格納するスカラテーブルと、曲線情報を格納する曲線情報テーブルと、中心角を格納したスカラテーブルへのインデックスを格納する中心角テーブルと、分割数を格納する分割数テーブルと、ポリラインを格納するポリラインテーブルとを含み、ｎ次元空間の自由曲線から生成されたワイヤーフレームデータを格納する。【選択図】　　　　図１
2004102617.tif 000002
【特許請求の範囲】
【請求項１】
ｎ次元空間のワイヤーフレームデータを格納するデータ構造であって、ｎ次元の座標を格納する座標テーブルと、ｎ次元のベクトルを格納するベクトルテーブルと、スカラ値を格納するスカラテーブルと、曲線情報を格納する曲線情報テーブルと、中心角を格納したスカラテーブルへのインデックスを格納する中心角テーブルと、分割数を格納する分割数テーブルと、ポリラインを格納するポリラインテーブルとを含むことを特徴とするワイヤーフレームのデータ構造。
【請求項２】
ｎ次元空間のワイヤーフレームデータを格納するデータ構造であって、ｎ次元の座標を格納する座標テーブルと、ｎ次元のベクトルを格納するベクトルテーブルと、スカラ値を格納するスカラテーブルと、曲線情報を格納する曲線情報テーブルと、ｎ行ｎ列の回転行列を格納するベクトルテーブルへのインデックスを格納する回転行列テーブルと、分割数を格納する分割数テーブルと、ポリラインを格納するポリラインテーブルとを含むことを特徴とするワイヤーフレームのデータ構造。
【請求項３】
ｎ次元空間のワイヤーフレームデータを格納するデータ構造であって、ｎ次元の座標を格納する座標テーブルと、ｎ次元のベクトルを格納するベクトルテーブルと、スカラ値を格納するスカラテーブルと、曲線情報を格納する曲線情報テーブルと、分割数を格納する分割数テーブルと、ポリラインを格納するポリラインテーブルとを含むことを特徴とするワイヤーフレームのデータ構造。
【請求項４】
請求項１、２または３に記載のワイヤーフレームのデータ構造において、前記座標テーブルは、浮動小数点表現および／またはベクトル量子化圧縮がなされていることを特徴とするワイヤーフレームのデータ構造。
【請求項５】
請求項１、２または３に記載のワイヤーフレームのデータ構造において、前記曲線情報テーブルは、各曲線タイプ別の特徴線数と、この曲線タイプごとに曲線情報配列を格納することを特徴とするワイヤーフレームのデータ構造。
【請求項６】
請求項５に記載のワイヤーフレームのデータ構造において、前記曲線タイプは、直線、円弧、円とし、前記曲線情報配列は、曲線タイプが直線の場合、始点座標インデックスと終点座標インデックスを持ち、曲線タイプが円弧の場合、始点座標インデックス、終点座標インデックス、中心座標インデックス、法線ベクトルインデックスと半径インデックスを持ち、曲線タイプが円の場合、中心座標インデックス、法線ベクトルインデックスと半径インデックスを持つことを特徴とするワイヤーフレームのデータ構造。
【請求項７】
請求項１、２または３に記載のワイヤーフレームのデータ構造において、前記ポリラインテーブルは、インデックスラインストリップ形式またはインデックスラインセット形式のいずれかであることを特徴とするワイヤーフレームのデータ構造。
【請求項８】
請求項１乃至７のいずれか１に記載のワイヤーフレームのデータ構造において、ワイヤーフレームデータをコンピュータの記憶装置に保存するために用いられることを特徴とするワイヤーフレームのデータ構造。
【請求項９】
請求項１乃至７のいずれか１に記載のワイヤーフレームのデータ構造において、コンピュータから通信リンクを通して送信されることを特徴とするワイヤーフレームのデータ構造。
【請求項１０】
請求項１乃至７のいずれか１に記載のワイヤーフレームのデータ構造において、コンピュータから通信リンクを通して受信されることを特徴とするワイヤーフレームのデータ構造。
【請求項１１】
ワイヤーフレームのデータを圧縮するワイヤーフレームデータ圧縮方法において、特徴線の曲線情報を構成する座標、ベクトル、半径値をそれぞれ座標テーブル、ベクトルテーブル、スカラテーブルに保存し、それぞれのインデックスを曲線情報テーブルに保存し、円弧特徴線または円特徴線からポリラインを生成する際の中心角を前記スカラテーブルに格納して、そのインデックスを中心角テーブルに格納し、分割数を分割数テーブルに格納し、特徴線に一致しないポリラインの頂点座標を前記座標テーブルに格納して、そのインデックスをポリラインテーブルに格納することを特徴とするワイヤーフレームデータ圧縮方法。
【請求項１２】
ワイヤーフレームのデータを圧縮するワイヤーフレームデータ圧縮方法において、特徴線の曲線情報を構成する座標、ベクトル、半径値をそれぞれ座標テーブル、ベクトルテーブル、スカラテーブルに格納し、それぞれのインデックスを曲線情報テーブルに格納し、円弧特徴線または円特徴線からポリラインを生成する際のｎ行ｎ列の回転行列を列ごとのベクトルに分解し順に前記ベクトルテーブルに格納して、そのインデックスを回転行列テーブルに格納し、分割数を分割数テーブルに格納し、特徴線に一致しないポリラインの頂点座標を前記座標テーブルに格納して、そのインデックスをポリラインテーブルに格納することを特徴とするワイヤーフレームデータ圧縮方法。
【請求項１３】
ワイヤーフレームのデータを圧縮するワイヤーフレームデータ圧縮方法において、特徴線の曲線情報を構成する座標、ベクトル、半径値をそれぞれ座標テーブル、ベクトルテーブル、スカラテーブルに格納し、それぞれのインデックスを曲線情報テーブルに格納し、円弧特徴線または円特徴線からポリラインを生成する際の分割数を分割数テーブルに格納し、特徴線に一致しないポリラインの頂点座標を前記座標テーブルに格納して、そのインデックスをポリラインテーブルに格納することを特徴とするワイヤーフレームデータ圧縮方法。
【請求項１４】
コンピュータに、請求項１１、１２または１３に記載のワイヤーフレームデータ圧縮方法を実行させるためのプログラム。
【請求項１５】
請求項１４に記載のワイヤーフレームデータ圧縮プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項１６】
圧縮されたワイヤーフレームのデータを伸張するワイヤーフレームデータ伸張方法において、特徴線の曲線情報を構成する座標、ベクトルおよびスカラ値をそれぞれ座標テーブル、ベクトルテーブル、スカラテーブルから読み込み、特徴線ごとの曲線情報を曲線情報テーブルから読み込み、円弧特徴線または円特徴線からポリラインを生成する際の中心角を中心角テーブルから読み込み、分割数を分割数テーブルから読み込み、特徴線ごとに曲線情報と中心角から回転行列を計算し、読み込んだ曲線情報と分割数および計算された回転行列からポリラインを生成し、特徴線に一致しないポリラインはポリラインテーブルから読み込むことを特徴とするワイヤーフレームデータ伸張方法。
【請求項１７】
圧縮されたワイヤーフレームのデータを伸張するワイヤーフレームデータ伸張方法において、特徴線の曲線情報を構成する座標、ベクトルおよびスカラ値をそれぞれ座標テーブル、ベクトルテーブル、スカラテーブルから読み込み、特徴線ごとの曲線情報を曲線情報テーブルから読み込み、円弧特徴線または円特徴線からポリラインを生成する際のｎ行ｎ列の回転行列を回転行列テーブルから読み込み、分割数を分割数テーブルから読み込み、読み込んだ曲線情報と分割数および計算された回転行列からポリラインを生成し、特徴線に一致しないポリラインはポリラインテーブルから読み込むことを特徴とするワイヤーフレームデータ伸張方法。
【請求項１８】
圧縮されたワイヤーフレームのデータを伸張するワイヤーフレームデータ伸張方法において、特徴線の曲線情報を構成する座標、ベクトルおよびスカラ値をそれぞれ座標テーブル、ベクトルテーブル、スカラテーブルから読み込み、特徴線ごとの曲線情報を曲線情報テーブルから読み込み、分割数を分割数テーブルから読み込み、特徴線ごとに曲線情報と分割数から中心角を計算し、特徴線ごとに曲線情報と計算された中心角から回転行列を計算し、読み込んだ曲線情報と分割数および計算された回転行列からポリラインを生成し、特徴線に一致しないポリラインはポリラインテーブルから読み込むことを特徴とするワイヤーフレームデータ伸張方法。
【請求項１９】
請求項１６、１７または１８に記載のワイヤーフレームデータ伸張方法において、前記ポリラインの生成方法は、
曲線情報の曲線タイプが直線の場合、始点座標を最初の座標に、終点座標を２番目の座標とするラインセットを生成し、
曲線情報の曲線タイプが円弧の場合、始点座標を最初の座標とし、終点座標を最後の座標とし、それらの中間座標を曲線情報と回転行列から計算してラインストリップを生成し、
曲線情報の曲線タイプが円の場合、円周上の１点を最初の座標および最後の座標とし、それらの中間座標を曲線情報と回転行列から計算してラインストリップを生成することを特徴とするワイヤーフレームデータ伸張方法。
【請求項２０】
請求項１９に記載のワイヤーフレームデータ伸張方法において、前記中間座標の生成方法は、始点座標から中心座標を減ずることにより半径ベクトルを求め、回転行列と半径ベクトルを掛け合わせた後、中心座標を加える計算を（分割数―１）回繰り返すことにより以降の頂点座標を求めてラインストリップを生成することを特徴とするワイヤーフレームデータ伸張方法。
【請求項２１】
コンピュータに、請求項１６乃至２０のいずれか１に記載のワイヤーフレームデータ伸張方法を実行させるためのプログラム。
【請求項２２】
請求項２１に記載のワイヤーフレームデータ伸張プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項２３】
ｎ次元空間のワイヤーフレームのデータを圧縮および／または伸張する１つ以上のコンピュータシステムであって、各コンピュータシステムは、プロセスを実行する中央処理装置と、記憶装置と、前記記憶装置に格納された請求項１４記載のプログラムと、前記記憶装置に格納された請求項２１記載のプログラムと、前記記憶装置に格納された請求項１乃至１０のいずれか１に記載のワイヤーフレームのデータ構造を持つワイヤーフレームデータとを有することを特徴とするシステム。
【請求項２４】
請求項２３に記載のシステムにおいて、２つ以上のコンピュータシステムが通信リンクで接続されたことを特徴とするシステム。
【請求項２５】
請求項２４に記載のシステムにおいて、前記通信リンクは、インターネット、イントラネット、広域ネットワーク、ローカルエリアネットワーク、無線周波数リンク、赤外線リンクおよびシリアル通信リンクのいずれかを含むことを特徴とするシステム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ワイヤーフレームのデータ構造、ワイヤーフレームデータ圧縮方法および伸張方法、プログラム、記録媒体並びにシステムに関し、具体的には、３次元形状モデル生成装置や３次元形状モデル表示装置等に利用可能なワイヤーフレームのデータ構造、ワイヤーフレームデータ圧縮方法および伸張方法、プログラム、記録媒体並びにシステムに関し、形状計測装置や仮想現実感装置にも応用できる。
【０００２】
【従来の技術】
自由曲面および自由曲線は、３次元形状モデルを表現する手段としてＣＡＤで広く利用されている。３次元形状モデルを表示するためには、自由曲面を三角形メッシュ形式のデータに、自由曲線をワイヤーフレーム形式のデータに変換する必要がある。この変換作業には時間がかかるため、予め三角形メッシュあるいはワイヤーフレームに変換したデータを自由曲面データ、自由曲線データとともに保持することが広く行われている。
また、カタログや部品の配置が目的で、変形のできない３次元形状モデル専用ビューワも普及しはじめている。このため、自由曲面を三角形メッシュに変換した際のデータサイズを圧縮する技術の研究がさかんである（例えば、非特許文献１および非特許文献２参照）。
【０００３】
一方、上記３次元形状モデル専用ビューワでは、一般的により形状を理解するために形状の計測機能を備えており、計測機能の精度を向上させるために、平面、球面、円柱面、円錐面、直線、円弧、円などのよく使われる曲面・曲線についてはデータが軽量であることも手伝って、これらの曲面・曲線データをそのまま特徴面、特徴線としてデータ構造に追加して保持されていることが多い。
【０００４】
しかしながら、自由曲線をワイヤーフレームに変換した際のデータサイズを圧縮する技術研究はあまり行われていない。さらに、近年の通信設備の発達などにより、要求される取り扱いデータのサイズは増大しており、それに伴って、ハードディスク等の保存装置のスペース効率の低下、表示速度の低下や転送速度の低下が問題となっている。
【０００５】
【非特許文献１】
Ｔａｕｂｉｎ　Ｇ　ａｎｄ　Ｒｏｓｓｉｇｎａｃ　Ｊ，　Ｇｅｏｍｅｔｒｙ　ｃｏｍｐｒｅｓｓｉｏｎ　ｔｈｒｏｕｇｈ　ｔｏｐｏｌｏｇｉｃａｌ　ｓｕｒｇｅｒｙ，　ＡＣＭ　Ｔｒａｎｓａｃｔｉｏｎｓ　ｏｎ　Ｇｒａｐｈｉｃｓ，　Ｖｏｌ．１７，　Ｎｏ．２，１９９８．
【非特許文献２】
Ｒｏｓｓｉｇｎａｃ　Ｊ，　Ｅｄｇｅｂｒｅａｋｅｒ：Ｃｏｎｎｅｃｔｉｖｉｔｙ　ｃｏｍｐｒｅｓｓｉｏｎ　ｆｏｒ　ｔｒｉａｎｇｌｅｍｅｓｈｅｓ，　ＩＥＥＥ　Ｔｒａｎｓａｃｔｉｏｎｓ　ｏｎ　Ｖｉｓｕａｌｉｚａｔｉｏｎ　ａｎｄ　Ｃｏｍｐｕｔｅｒ　Ｇｒａｐｈｉｃｓ，　Ｖｏｌ．５，　Ｎｏ．１，１９９９．
【非特許文献３】
三浦憲二郎、　ＯｐｅｎＧＬ　３Ｄグラフィックス入門、　朝倉書店
、１９９５年
【０００６】
【発明が解決しようとする課題】
本発明は、上述のような実情を考慮してなされたものであって、データサイズ増大によるハードディスク等保存装置のスペース効率、表示速度、転送速度および伸張速度を低下することがなく、自由曲線から生成したワイヤーフレームデータの圧縮、格納、転送、伸張の処理を施すことができるワイヤーフレームのデータ構造、ワイヤーフレームデータ圧縮方法および伸張方法、プログラム、記録媒体並びにシステムを提供することを目的とする。
【０００７】
【課題を解決するための手段】
上述の課題を解決するために、本発明の請求項１のワイヤーフレームのデータ構造は、ｎ次元空間のワイヤーフレームデータを格納するデータ構造であって、ｎ次元の座標を格納する座標テーブルと、ｎ次元のベクトルを格納するベクトルテーブルと、スカラ値を格納するスカラテーブルと、曲線情報を格納する曲線情報テーブルと、中心角を格納したスカラテーブルへのインデックスを格納する中心角テーブルと、分割数を格納する分割数テーブルと、ポリラインを格納するポリラインテーブルとを含むことを特徴とする。
【０００８】
また、本発明の請求項２のワイヤーフレームのデータ構造は、ｎ次元空間のワイヤーフレームデータを格納するデータ構造であって、ｎ次元の座標を格納する座標テーブルと、ｎ次元のベクトルを格納するベクトルテーブルと、スカラ値を格納するスカラテーブルと、曲線情報を格納する曲線情報テーブルと、ｎ行ｎ列の回転行列を格納するベクトルテーブルへのインデックスを格納する回転行列テーブルと、分割数を格納する分割数テーブルと、ポリラインを格納するポリラインテーブルとを含むことを特徴とする。
【０００９】
また、本発明の請求項３のワイヤーフレームのデータ構造は、ｎ次元空間のワイヤーフレームデータを格納するデータ構造であって、ｎ次元の座標を格納する座標テーブルと、ｎ次元のベクトルを格納するベクトルテーブルと、スカラ値を格納するスカラテーブルと、曲線情報を格納する曲線情報テーブルと、分割数を格納する分割数テーブルと、ポリラインを格納するポリラインテーブルとを含むことを特徴とする。
【００１０】
また、本発明の請求項４は、請求項１、２または３に記載のワイヤーフレームのデータ構造において、前記座標テーブルは、浮動小数点表現および／またはベクトル量子化圧縮がなされていることを特徴とする。
また、本発明の請求項５は、請求項１、２または３に記載のワイヤーフレームのデータ構造において、前記曲線情報テーブルは、各曲線タイプ別の特徴線数と、この曲線タイプごとに曲線情報配列を格納することを特徴とする。
【００１１】
また、本発明の請求項６は、請求項５に記載のワイヤーフレームのデータ構造において、前記曲線タイプは、直線、円弧、円とし、前記曲線情報配列は、曲線タイプが直線の場合、始点座標インデックスと終点座標インデックスを持ち、曲線タイプが円弧の場合、始点座標インデックス、終点座標インデックス、中心座標インデックス、法線ベクトルインデックスと半径インデックスを持ち、曲線タイプが円の場合、中心座標インデックス、法線ベクトルインデックスと半径インデックスを持つことを特徴とする。
また、本発明の請求項７は、請求項１、２または３に記載のワイヤーフレームのデータ構造において、前記ポリラインテーブルは、インデックスラインストリップ形式またはインデックスラインセット形式のいずれかであることを特徴とする。
【００１２】
また、本発明の請求項８は、請求項１乃至７のいずれか１に記載のワイヤーフレームのデータ構造において、ワイヤーフレームデータをコンピュータの記憶装置に格納するために用いられることを特徴とする。
また、本発明の請求項９は、請求項１乃至７のいずれか１に記載のワイヤーフレームのデータ構造において、コンピュータから通信リンクを通して送信されることを特徴とする。
また、本発明の請求項１０は、請求項１乃至７のいずれか１に記載のワイヤーフレームのデータ構造において、コンピュータから通信リンクを通して受信されることを特徴とする。
【００１３】
また、本発明の請求項１１のワイヤーフレームデータ圧縮方法は、ワイヤーフレームのデータを圧縮するワイヤーフレームデータ圧縮方法において、特徴線の曲線情報を構成する座標、ベクトル、半径値をそれぞれ座標テーブル、ベクトルテーブル、スカラテーブルに格納し、それぞれのインデックスを曲線情報テーブルに格納し、円弧特徴線または円特徴線からポリラインを生成する際の中心角を前記スカラテーブルに格納して、そのインデックスを中心角テーブルに格納し、分割数を分割数テーブルに格納し、特徴線に一致しないポリラインの頂点座標を前記座標テーブルに格納して、そのインデックスをポリラインテーブルに格納することを特徴とする。
【００１４】
また、本発明の請求項１２のワイヤーフレームデータ圧縮方法は、ワイヤーフレームのデータを圧縮するワイヤーフレームデータ圧縮方法において、特徴線の曲線情報を構成する座標、ベクトル、半径値をそれぞれ座標テーブル、ベクトルテーブル、スカラテーブルに格納し、それぞれのインデックスを曲線情報テーブルに格納し、円弧特徴線または円特徴線からポリラインを生成する際のｎ行ｎ列の回転行列を列ごとのベクトルに分解し順に前記ベクトルテーブルに格納して、そのインデックスを回転行列テーブルに格納し、分割数を分割数テーブルに格納し、特徴線に一致しないポリラインの頂点座標を前記座標テーブルに格納して、そのインデックスをポリラインテーブルに格納することを特徴とする。
【００１５】
また、本発明の請求項１３のワイヤーフレームデータ圧縮方法は、ワイヤーフレームのデータを圧縮するワイヤーフレームデータ圧縮方法において、特徴線の曲線情報を構成する座標、ベクトル、半径値をそれぞれ座標テーブル、ベクトルテーブル、スカラテーブルに格納し、それぞれのインデックスを曲線情報テーブルに格納し、円弧特徴線または円特徴線からポリラインを生成する際の分割数を分割数テーブルに格納し、特徴線に一致しないポリラインの頂点座標を前記座標テーブルに格納して、そのインデックスをポリラインテーブルに格納することを特徴とする。
【００１６】
また、本発明の請求項１４のプログラムは、コンピュータに、請求項１１、１２または１３に記載のワイヤーフレームデータ圧縮方法を実行させるためのプログラムである。
また、本発明の請求項１５の記録媒体は、請求項１４に記載のワイヤーフレームデータ圧縮プログラムを記録したコンピュータ読み取り可能な記録媒体である。
【００１７】
また、本発明の請求項１６のワイヤーフレームデータ伸張方法は、圧縮されたワイヤーフレームのデータを伸張するワイヤーフレームデータ伸張方法において、特徴線の曲線情報を構成する座標、ベクトルおよびスカラ値をそれぞれ座標テーブル、ベクトルテーブル、スカラテーブルから読み込み、特徴線ごとの曲線情報を曲線情報テーブルから読み込み、円弧特徴線または円特徴線からポリラインを生成する際の中心角を中心角テーブルから読み込み、分割数を分割数テーブルから読み込み、特徴線ごとに曲線情報と中心角から回転行列を計算し、読み込んだ曲線情報と分割数および計算された回転行列からポリラインを生成し、特徴線に一致しないポリラインはポリラインテーブルから読み込むことを特徴とする。
【００１８】
また、本発明の請求項１７のワイヤーフレームデータ伸張方法は、圧縮されたワイヤーフレームのデータを伸張するワイヤーフレームデータ伸張方法において、特徴線の曲線情報を構成する座標、ベクトルおよびスカラ値をそれぞれ座標テーブル、ベクトルテーブル、スカラテーブルから読み込み、特徴線ごとの曲線情報を曲線情報テーブルから読み込み、円弧特徴線または円特徴線からポリラインを生成する際のｎ行ｎ列の回転行列を回転行列テーブルから読み込み、分割数を分割数テーブルから読み込み、読み込んだ曲線情報と分割数および計算された回転行列からポリラインを生成し、特徴線に一致しないポリラインはポリラインテーブルから読み込むことを特徴とする。
【００１９】
また、本発明の請求項１８のワイヤーフレームデータ伸張方法は、圧縮されたワイヤーフレームのデータを伸張するワイヤーフレームデータ伸張方法において、特徴線の曲線情報を構成する座標、ベクトルおよびスカラ値をそれぞれ座標テーブル、ベクトルテーブル、スカラテーブルから読み込み、特徴線ごとの曲線情報を曲線情報テーブルから読み込み、分割数を分割数テーブルから読み込み、特徴線ごとに曲線情報と分割数から中心角を計算し、特徴線ごとに曲線情報と計算された中心角から回転行列を計算し、読み込んだ曲線情報と分割数および計算された回転行列からポリラインを生成し、特徴線に一致しないポリラインはポリラインテーブルから読み込むことを特徴とする。
【００２０】
また、本発明の請求項１９は、請求項１６、１７または１８に記載のワイヤーフレームデータ伸張方法において、前記ポリラインの生成方法は、
曲線情報の曲線タイプが直線の場合、始点座標を最初の座標に、終点座標を２番目の座標とするラインセットを生成し、
曲線情報の曲線タイプが円弧の場合、始点座標を最初の座標とし、終点座標を最後の座標とし、それらの中間座標を曲線情報と回転行列から計算してラインストリップを生成し、
曲線情報の曲線タイプが円の場合、円周上の１点を最初の座標および最後の座標とし、それらの中間座標を曲線情報と回転行列から計算してラインストリップを生成することを特徴とする。
また、本発明の請求項２０は、請求項１９に記載のワイヤーフレームデータ伸張方法において、前記中間座標の生成方法は、始点座標から中心座標を減ずることにより半径ベクトルを求め、回転行列と半径ベクトルを掛け合わせた後、中心座標を加える計算を（分割数―１）回繰り返すことにより以降の頂点座標を求めてラインストリップを生成することを特徴とする。
また、本発明の請求項２１のプログラムは、コンピュータに、請求項１６乃至２０のいずれか１に記載のワイヤーフレームデータ伸張方法を実行させるためのプログラムである。
また、本発明の請求項２２の記録媒体は、請求項２１に記載のワイヤーフレームデータ伸張プログラムを記録したコンピュータ読み取り可能な記録媒体である。
【００２１】
また、本発明の請求項２３のシステムは、ｎ次元空間のワイヤーフレームのデータを圧縮および／または伸張する１つ以上のコンピュータシステムであって、各コンピュータシステムは、プロセスを実行する中央処理装置と、記憶装置と、前記記憶装置に格納された請求項１４記載のプログラムと、前記記憶装置に格納された請求項２１記載のプログラムと、前記記憶装置に格納された請求項１乃至１０のいずれか１に記載のワイヤーフレームのデータ構造を持つワイヤーフレームデータとを有することを特徴とする。
また、本発明の請求項２４は、請求項２３に記載のシステムにおいて、２つ以上のコンピュータシステムが通信リンクで接続されたことを特徴とする。
また、本発明の請求項２５は、請求項２４に記載のシステムにおいて、前記通信リンクは、インターネット、イントラネット、広域ネットワーク、ローカルエリアネットワーク、無線周波数リンク、赤外線リンクおよびシリアル通信リンクのいずれかを含むことを特徴とする。
【００２２】
以上の構成により、ワイヤーフレームデータの圧縮、格納、転送、伸張を行なうことができる。
ワイヤーフレームのデータ構造を使用すると、データサイズが減少し、ハードディスク等保存装置のスペース効率が向上する。
また、データサイズが減少したため、表示速度および転送速度が向上し、伸張するときに逆余弦関数を利用しないため、伸張速度が向上する。
【００２３】
【発明の実施の形態】
以下の（１）〜（５）の前提に基づき、本発明の構成および動作を説明する。（１）本発明で扱う曲線としては、直線、円弧、円があり、それぞれ次のように定義されているものとする。
直線は、始点座標と終点座標とから定義される（図２０（Ａ）参照）。
円弧は、中心座標、半径値、円弧がのる平面の法線ベクトルおよび円弧の始点座標と終点座標とで定義される（図２０（Ｂ）参照）。
また、円は、中心座標、半径値および円がのる平面の法線ベクトルとで定義される（図２０（Ｃ）参照）。
【００２４】
（２）本発明で扱うワイヤーフレームとは、ライン（線分）またはポリライン（折れ線を表す連結された線分）の集まりである。
本発明で扱うワイヤーフレームの表現形式には、ラインセット形式、インデックスラインセット形式、ラインストリップ形式、インデックスラインストリップ形式があり、前の２つの形式は、非特許文献３の第１９ページにあるＧＬ＿ＬＩＮＥＳに、後の２つの形式は、同じくＧＬ＿ＬＩＮＥ＿ＳＴＲＩＰに対応している。
インデックス付きの形式は、別途座標テーブルを配列形式で保持し、配列のインデックスを指定することで座標を表している形式である。
【００２５】
（３）本発明で扱う特徴線とは、計測用の精度向上等の用途のため、ワイヤーフレームデータに付加される、ラインまたはポリラインを生成するもととなった曲線のことである。
一般に形状を設計するためのＣＡＤシステムにおいては、曲線形状を表示するとき、曲線形状を近似したラインまたはポリラインにより表示を行う。
【００２６】
（４）本発明で扱う円または円弧の中心角とは、次のものである。
円弧および円のポリラインは、一般に等分割した円弧または円の分割点を結ぶことにより得られるものであるから、円弧の場合の中心角δは、
δ＝（２×∠（ｓ−ｃ、ｅ−ｃ））／ｄ　　　　　・・・（式１）
より計算できる。円の場合の中心角δは、
δ＝２π／ｄ　　　　　　　　　　　　　　　　　・・・（式２）
により計算できる。ここで、∠は２つのベクトルの角度を求める関数、ｓは円弧の始点座標、ｃは円弧の中心座標、ｅは円弧の終点座標、ｄは予め決められた分割数とする。
【００２７】
（５）本発明で扱う円または円弧の回転行列Ｒは、上記の（４）で説明した中心角δに対して、次に示す円または円弧の法線ベクトルｕ＝（ｕｘ、ｕｙ、ｕｚ）回りの回転行列である。
【００２８】
【数１】
2004102617.tif 000003
【００２９】
図１は、本発明の一実施形態に係る、中心角方式のｎ次元空間のワイヤーフレームのデータ構造を説明するための図である。
中心角方式のｎ次元空間のワイヤーフレームのデータ構造は、ｎ次元の座標を格納する座標テーブルと、ｎ次元のベクトルを格納するベクトルテーブルと、スカラ値を格納するスカラテーブルと、曲線情報テーブルと、中心角を格納するスカラテーブルへのインデックスが格納された中心角テーブルと、分割数が格納された分割数テーブルと、ポリラインが格納されたポリラインテーブルとから構成される。
【００３０】
図２は、本発明の一実施形態に係る、回転行列方式のｎ次元空間のワイヤーフレームのデータ構造を説明するための図である。
回転行列方式のｎ次元空間のワイヤーフレームのデータ構造は、ｎ次元の座標を格納する座標テーブルと、ｎ次元のベクトルを格納するベクトルテーブルと、スカラ値を格納するスカラテーブルと、曲線情報テーブルと、ｎ行ｎ列の回転行列を格納するベクトルテーブルへのインデックスが格納された回転行列テーブルと、分割数が格納された分割数テーブルと、ポリラインが格納されたポリラインテーブルとから構成される。
【００３１】
図３は、本発明の一実施形態に係る、分割数方式のｎ次元空間のワイヤーフレームのデータ構造を説明するための図である。
分割数方式のｎ次元空間のワイヤーフレームのデータ構造は、ｎ次元の座標を格納する座標テーブルと、曲線情報テーブルと、分割数が格納された分割数テーブルと、ポリラインが格納されたポリラインテーブルとから構成される。
【００３２】
図４は、図１、図２および図３のワイヤーフレームのデータ構造における座標テーブルのデータ構造を説明するための図である。
図４の座標テーブルは、座標の数（＝ｎｖ）と、座標０から座標ｎｖ−１の順に格納されたｎｖ個の座標で構成され、これらの座標は、それぞれ（ｘ成分、ｙ成分、ｚ成分）の３成分から構成され、各成分は浮動小数点数あるいはベクトル量子化圧縮が行われている。
【００３３】
図５は、図１、図２および図３のワイヤーフレームのデータ構造におけるベクトルテーブルのデータ構造を説明するための図である。
図５のベクトルテーブルは、ベクトルの数（＝ｎｕ）と、ベクトル０からベクトルｎｕ−１の順に格納されたｎｕ個のベクトルで構成され、これらのベクトルは、それぞれ（ｘ成分、ｙ成分、ｚ成分）の３成分で構成され、各成分は浮動小数点数あるいはベクトル量子化圧縮が行われている。
【００３４】
図６は、図１、図２および図３のワイヤーフレームのデータ構造におけるスカラテーブルのデータ構造を説明するための図である。
図６のスカラテーブルは、スカラの数（＝ｎｓ）と、スカラ０からスカラｎｓ−１の順に格納されたｎｓ個のスカラ値で構成され、各スカラ値は浮動小数点数あるいはベクトル量子化圧縮が行われている。
【００３５】
図７は、図１、図２および図３のワイヤーフレームのデータ構造における曲線情報テーブルのデータ構造を説明するための図である。
図７の曲線情報テーブルのデータ構造は、直線、円弧、円の各曲線タイプ別の特徴線数に続けて、直線、円弧、円の各曲線タイプ順に次のデータを格納している。
【００３６】
（１）直線の場合
直線ごとの始点座標インデックスおよび終点座標インデックス
（２）円弧の場合
円弧ごとの始点座標インデックス、終点座標インデックス、中心座標インデックス、法線ベクトルインデックスおよび半径インデックス
（３）円の場合
円ごとの中心座標インデックス、法線ベクトルインデックス、半径インデックス
【００３７】
ここで、始点・終点・中心の各座標インデックスは座標テーブルにデータを登録したときのインデックスを、法線ベクトルインデックスはベクトルテーブルにデータを登録したときのインデックスを、半径インデックスはスカラテーブルにデータを登録したときのインデックスをそれぞれ示している。
【００３８】
即ち、曲線情報テーブルのデータ構造のうち特徴線数は、直線数（＝ｎｌ）、円弧数（＝ｎａ）、円数（＝ｎｃ）の順で格納されている。
続けて、曲線タイプが直線の場合は、直線０から直線ｎｌ−１の順で、それぞれ始点座標インデックスおよび終点座標インデックスを格納している。
次に、曲線タイプが円弧の場合には、円弧０から円弧ｎａ−１の順で、それぞれ始点座標インデックス、終点座標インデックス、中心座標インデックス、法線ベクトルインデックスおよび半径インデックスを格納している。
最後に、曲線タイプが円の場合には、円０から円ｎｃ−１の順で、それぞれ中心座標インデックス、法線ベクトルインデックス、半径インデックスを格納している。
【００３９】
図８は、図１のワイヤーフレームのデータ構造における中心角テーブルのデータ構造を説明するための図である。
図８の中心角テーブルのデータ構造は、中心角の数（＝ｎａ）と、中心角インデックス０から中心角インデックスｎａ−１の順に格納されたｎａ個の中心角インデックスで構成され、各中心角インデックスは中心角を格納しているスカラテーブルへのインデックスである。
【００４０】
図９は、図２のワイヤーフレームのデータ構造における回転行列テーブルのデータ構造を説明するための図である。
図９の回転行列テーブルのデータ構造は、回転行列の数（＝ｎｍ）と、回転行列インデックス０から回転行列インデックスｎｍ−１の順に格納されたｎｍ個の回転行列インデックスで構成され、各回転行列インデックスは回転行列を格納したベクトルテーブルへのインデックスである。
例えば、ｎ行ｎ列の回転行列を格納する場合、ｎ列ごとのベクトルに分解し、ｎ個分連続してベクトルテーブルに格納し、回転行列テーブルへは連続して格納した最初のベクトルのインデックスだけを格納する。
【００４１】
図１０は、図１、図２、図３のワイヤーフレームのデータ構造における分割数テーブルのデータ構造を説明するための図である。
図１０の分割数テーブルのデータ構造は、分割数の数（＝ｎｄ）と、分割数０から分割数ｎｄ−１の順にｎｄ個の分割数を格納している。
【００４２】
図１１は、図１、図２、図３のワイヤーフレームのデータ構造におけるポリラインテーブルのデータ構造を説明するための図である。
図１１のポリラインテーブルのデータ構造は、ポリラインの頂点座標インデックス数（＝ｎｗ）と、ポリラインの頂点座標インデックス０から頂点座標インデックスｎｗ−１の順で格納したｎｗ個の頂点座標インデックスで構成され、ポリラインをインデックスラインセット形式またはインデックスラインストリップ形式のいずれかの形式で格納する。
インデックスラインセット形式の場合は、ポリラインの始点座標と終点座標を格納する座標テーブルへのインデックスが順に格納されている。
インデックスラインストリップ形式の場合は、ポリラインの頂点座標を格納した座標テーブルへのインデックス＋１とストリップの最後を表すデリミタ（＝０）が格納されている。
【００４３】
上述のワイヤーフレームのデータ構造を用いることで、ワイヤーフレームデータの圧縮および伸張が可能となり、データサイズが減少し、ハードディスク等保存装置のスペース効率が向上する。
以下、上述したワイヤーフレームのデータ構造をもとに、ワイヤーフレームデータ圧縮方法および伸張方法を説明する。
【００４４】
図１２は、本発明の実施形態に係る中心角方式によるワイヤーフレームデータ圧縮方法を説明するためのフローチャートである。
特徴線を表す各曲線の座標、ベクトル、半径値をそれぞれ座標テーブル、ベクトルテーブルおよびスカラテーブルに、それぞれ図１（図４、図５、図６）の形式で格納する（ステップＳ１）。
上記各テーブルへ格納する際、同時に、それぞれのインデックスを曲線情報テーブルに、図１（図７）の形式で格納する（ステップＳ２）。
ただし、図１（図７）の形式でインデックスを格納する場合、座標テーブル、ベクトルテーブルおよびスカラテーブルへ値を格納するときに、同じ値がある場合には、データをテーブルへは格納せずに、同じ値へのインデックスを格納するようにしてもよい。
すべてのポリラインを処理するための処理カウンタＩを０に初期化する（ステップ３）。ここでポリライン数をＮとする。
【００４５】
Ｉ番目のポリラインの曲線タイプを調べ（ステップＳ４）、円弧特徴線または円特徴線であれば、円弧特徴線または円特徴線からポリラインを生成する際の中心角をスカラテーブルに図１（図６）の形式で格納し、そのインデックスを中心角テーブルに図１（図８）の形式で格納し、分割数を分割数テーブルに図１（図１０）の形式で格納する（ステップＳ５）。
【００４６】
Ｉ番目のポリラインの曲線タイプが直線特徴線に一致しないポリラインの頂点座標を座標テーブルに図１（図４）の形式で格納し、そのインデックスをポリラインテーブルに図１（図１１）の形式で格納する（ステップＳ６）。
【００４７】
Ｉ番目のポリラインの曲線タイプが直線特徴線に一致した場合、およびステップＳ５とＳ６を処理した後、すべてのポリラインを処理していない場合には（ステップＳ７のＹＥＳ）、ポリラインの処理カウンタＩを１つ進めて（ステップＳ８）、ステップＳ４へ戻る。すべてのポリラインを処理した場合には（ステップＳ７のＮＯ）、圧縮処理を終了する。
以上により、ワイヤーフレームデータを圧縮することができる。
【００４８】
図１３は、本発明の実施形態に係る回転行列方式によるワイヤーフレームデータ圧縮方法を説明するためのフローチャートである。
特徴線を表す各曲線の座標、ベクトル、半径値をそれぞれ座標テーブル、ベクトルテーブルおよびスカラテーブルに、それぞれ図２（図４、図５、図６）の形式で格納する（ステップＳ１１）。
上記各テーブルへ格納する際、同時に、それぞれのインデックスを曲線情報テーブルに、図２（図７）の形式で格納する（ステップＳ１２）。
ただし、図２（図７）の形式でインデックスを格納する場合、座標テーブル、ベクトルテーブルおよびスカラテーブルへ値を格納するときに、同じ値がある場合には、データをテーブルへは格納せずに、同じ値へのインデックスを格納するようにしてもよい。
すべてのポリラインを処理するための処理カウンタＩを０に初期化する（ステップ１３）。ここでポリライン数をＮとする。
【００４９】
Ｉ番目のポリラインの曲線タイプを調べ（ステップＳ１４）、円弧特徴線または円特徴線であれば、円弧特徴線または円特徴線からポリラインを生成する際の回転行列をベクトルテーブルに図２（図５）の形式で格納し、そのインデックスを回転行列テーブルに図２（図９）の形式で格納し、分割数を分割数テーブルに図２（図１０）の形式で格納する（ステップＳ１５）。
ここで、ｎ行ｎ列の回転行列は、ｎ列ごとのベクトルに分解し、ｎ個分連続してベクトルテーブルに格納する。インデックスは連続して格納した最初のベクトルのインデックスだけを回転行列テーブルへ格納する。
【００５０】
Ｉ番目のポリラインの曲線タイプが直線特徴線に一致しないポリラインの頂点座標を座標テーブルに図２（図４）の形式で格納し、そのインデックスをポリラインテーブルに図２（図１１）の形式で格納する（ステップＳ１６）。
【００５１】
Ｉ番目のポリラインの曲線タイプが直線特徴線に一致した場合、およびステップＳ１５とＳ１６を処理した後、すべてのポリラインを処理していない場合には（ステップＳ１７のＹＥＳ）、ポリラインの処理カウンタＩを１つ進めて（ステップＳ１８）、ステップＳ１４へ戻る。すべてのポリラインを処理した場合には（ステップＳ１７のＮＯ）、圧縮処理を終了する。
以上により、ワイヤーフレームデータを圧縮することができる。
【００５２】
図１４は、本発明の実施形態に係る分割数方式によるワイヤーフレームデータ圧縮方法を説明するためのフローチャートである。
特徴線を表す各曲線の座標、ベクトル、半径値をそれぞれ座標テーブル、ベクトルテーブルおよびスカラテーブルに、それぞれ図３（図４、図５、図６）の形式で格納する（ステップＳ２１）。
上記各テーブルへ格納する際、同時に、それぞれのインデックスを曲線情報テーブルに、図３（図７）の形式で格納する（ステップＳ２２）。
ただし、図３（図７）の形式でインデックスを格納する場合、座標テーブル、ベクトルテーブルおよびスカラテーブルへ値を格納するときに、同じ値がある場合には、データをテーブルへは格納せずに、同じ値へのインデックスを格納するようにしてもよい。
すべてのポリラインを処理するための処理カウンタＩを０に初期化する（ステップ２３）。ここでポリライン数をＮとする。
【００５３】
Ｉ番目のポリラインの曲線タイプを調べ（ステップＳ２４）、円弧特徴線または円特徴線であれば、円弧特徴線または円特徴線からポリラインを生成する際の分割数を分割数テーブルに図３（図１０）の形式で格納する（ステップＳ２５）。
【００５４】
Ｉ番目のポリラインの曲線タイプが直線特徴線に一致しないポリラインの頂点座標を座標テーブルに図３（図４）の形式で格納し、そのインデックスをポリラインテーブルに図３（図１１）の形式で格納する（ステップＳ２６）。
【００５５】
Ｉ番目のポリラインの曲線タイプが直線特徴線に一致した場合、およびステップＳ２５とＳ２６を処理した後、すべてのポリラインを処理していない場合には（ステップＳ２７のＹＥＳ）、ポリラインの処理カウンタＩを１つ進めて（ステップＳ２８）、ステップＳ２４へ戻る。すべてのポリラインを処理した場合には（ステップＳ２７のＮＯ）、圧縮処理を終了する。
以上により、ワイヤーフレームデータを圧縮することができる。
【００５６】
図１５は、本発明の実施形態に係る中心角方式によるワイヤーフレームデータ伸張方法を説明するためのフローチャートである。
まず、図１の形式で格納された座標テーブル（図４）、ベクトルテーブル（図５）、スカラテーブル（図６）、曲線情報テーブル（図７）、中心角テーブル（図８）、分割数テーブル（図１０）を読み込む（ステップＳ３１）。
次に、読み込んだ曲線情報と分割数から曲線タイプが円弧の場合は前述した式１により、また、曲線タイプが円の場合は前述した式２により中心角を計算する（ステップＳ３２）。
読み込んだ曲線情報と計算した中心角から前述した式３により回転行列を計算する（ステップＳ３３）。
曲線情報、回転行列、分割数からポリラインを生成する（ステップＳ３４）。ポリラインを図１の形式のポリラインテーブル（図１１）から読み込む（ステップＳ３５）。
以上により、圧縮されたワイヤーフレームデータを伸張することができる。
【００５７】
図１６は、本発明の実施形態に係る回転行列方式によるワイヤーフレームデータ伸張方法を説明するためのフローチャートである。
まず、図２の形式で格納された座標テーブル（図４）、ベクトルテーブル（図５）、スカラテーブル（図６）、曲線情報テーブル（図７）、回転行列テーブル（図９）、分割数テーブル（図１０）を読み込む（ステップＳ４１）。
次に、曲線情報、回転行列、分割数からポリラインを生成する（ステップＳ４２）。
ポリラインを図２の形式のポリラインテーブル（図１１）から読み込む（ステップＳ４３）。
以上により、圧縮されたワイヤーフレームデータを伸張することができる。
【００５８】
図１７は、本発明の実施形態に係る分割数方式によるワイヤーフレームデータ伸張方法を説明するためのフローチャートである。
まず、図３の形式で格納された座標テーブル（図４）、ベクトルテーブル（図５）、スカラテーブル（図６）、曲線情報テーブル（図７）、分割数テーブル（図１０）を読み込む（ステップＳ５１）。
次に、読み込んだ曲線情報と分割数から曲線タイプが円弧の場合は前述した式１により、また、曲線タイプが円の場合は前述した式２により中心角を計算する（ステップＳ５２）。
次に、読み込んだ曲線情報と計算した中心角から前述した式３により回転行列を計算する（ステップＳ５３）。
曲線情報、回転行列、分割数からポリラインを生成する（ステップＳ５４）。
ポリラインを図３の形式のポリラインテーブル（図１１）から読み込む（ステップＳ５５）。
以上により、圧縮されたワイヤーフレームデータを伸張することができる。
【００５９】
図１８は、図１５（ステップＳ３４）、図１６（ステップＳ４２）および図１７（ステップＳ５４）におけるポリライン生成方法を説明するためのフローチャートである。
まず、曲線情報を参照して、曲線タイプを調べる（ステップＳ６１）。
曲線情報の曲線タイプが直線の場合、始点座標を最初の座標に、終点座標を２番目の座標とするラインセットを生成する（ステップＳ６２）。
曲線情報の曲線タイプが円弧の場合、始点座標を最初の座標とし、終点座標を最後の座標とし、それらの中間座標を曲線情報と回転行列から計算してラインストリップを生成する（ステップＳ６３）。
また、曲線情報の曲線タイプが円の場合、円周上の１点を最初の座標および最後の座標とし、それらの中間座標を曲線情報と回転行列から計算してラインストリップを生成する（ステップＳ６４）。
以上により、ポリラインを生成することができる。
【００６０】
図１９は、図１８における円弧ポリライン（ステップＳ６３）または円ポリライン（ステップＳ６４）の中間座標生成方法を説明するためのフローチャートである。
まず、始点座標ｓから中心座標ｃを減ずることにより半径ベクトルｒ（＝ｓ−ｃ）を求める（ステップＳ７１）。
分割数（ｄ）分の繰り返しをカウントするためのカウンタｉを１に初期化する（ステップＳ７２）。
【００６１】
回転行列Ｒを半径ベクトルｒに掛け、中心座標ｃを加えることにより中間座標ｍｉを逐次求めていく（ステップＳ７３）。
ｍｉ＝Ｒｉ×ｒ＋ｃ　　　（０＜ｉ＜ｄ）
カウンタｉが分割数に達しない場合は（ステップＳ７４のＹＥＳ）、カウンタｉを１つ進めて（ステップＳ７５）、ステップＳ７３へ戻る。
一方、カウンタｉが分割数に達した場合は（ステップＳ７４のＮＯ）、（分割数―１）個の中間座標点が生成されたので処理を終了する。
以上により、円弧ポリラインまたは円ポリラインの（分割数―１）個の中間座標が生成できる。
【００６２】
本発明は上述した実施形態のみに限定されたものではない。上述した実施形態を構成する圧縮方法または伸張方法の各機能をそれぞれプログラム化し、あらかじめＣＤ−ＲＯＭ等の記録媒体に書き込んでおき、コンピュータに搭載したＣＤ−ＲＯＭドライブのような媒体駆動装置にこのＣＤ−ＲＯＭ等を装着して、これらのプログラムをコンピュータのメモリあるいは記憶装置に格納し、それを実行することによっても、本発明の目的が達成されることは言うまでもない。
この場合、記録媒体から読出されたプログラム自体が上述した実施形態の機能を実現することになり、そのプログラムおよびそのプログラムを記録した記録媒体も本発明を構成することになる。
【００６３】
なお、記録媒体としては半導体媒体（例えば、ＲＯＭ、不揮発性メモリカード等）、光媒体（例えば、ＤＶＤ、ＭＯ、ＭＤ、ＣＤ−Ｒ等）、磁気媒体（例えば、磁気テープ、フレキシブルディスク等）のいずれであってもよい。
【００６４】
また、ロードしたプログラムを実行することにより上述した実施形態の機能が実現されるだけでなく、そのプログラムの指示に基づき、オペレーティングシステム等が実際の処理の一部または全部を行い、その処理によって上述した実施形態の機能が実現される場合も含まれる。
【００６５】
また、上述した実施形態の機能を実現するプログラムが、機能拡張ボードや機能拡張ユニットに備わるメモリにロードされ、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって、上述した実施形態の機能が実現される場合も含まれる。
【００６６】
さらに、上述したプログラムをサーバコンピュータの磁気ディスク等の記憶装置に格納しておき、通信網で接続された利用者のコンピュータからダウンロード等の形式で頒布する場合、このサーバコンピュータの記憶装置も本発明の記録媒体に含まれる。
【００６７】
また、上述したワイヤーフレームデータ圧縮方法を実施するための第１のコンピュータとワイヤーフレームデータ伸張方法を実施するための第２のコンピュータを通信リンクで接続し、第１のコンピュータで圧縮して得られる図１の形式で格納された圧縮データを通信リンクによって第２のコンピュータへ送る。
第２のコンピュータは、この圧縮データを受信し、伸張してワイヤーフレームを生成する。
ここで、通信リンクの例として、シリアルリンク（ＲＳ−２３２）、パラレルリンク、無線リンク、赤外線リンク、ネットワーク（ローカルエリアネットワーク、広域ネットワーク、イントラネット、インターネット）がある。
このようにすると、一方のコンピュータで作成された曲面から作成された三角メッシュデータの圧縮データを他方のコンピュータで受信して伸張することにより、表示や加工等を行うことができる。
また、上述した第１のコンピュータと第２のコンピュータを同じものとしてもよい。
【００６８】
【発明の効果】
以上説明したように本発明によれば、ワイヤーフレームデータの圧縮、格納、転送、伸張を行なうことができる。
本発明のワイヤーフレームのデータ構造を使用すると、データサイズが減少し、ハードディスク等保存装置のスペース効率が向上する。
また、データサイズが減少したため、表示速度および転送速度が向上し、伸張するときに逆余弦関数を利用しないため、伸張速度が向上する。
さらに、３次元ＣＡＤシステムに本発明のワイヤーフレームのデータ構造を使用することによって、コンパクトな３次元データを実現できる。
【図面の簡単な説明】
【図１】本発明の中心角方式のｎ次元空間のワイヤーフレームのデータ構造を説明するための図である。
【図２】本発明の回転行列方式のｎ次元空間のワイヤーフレームのデータ構造を説明するための図である。
【図３】本発明の分割数方式のｎ次元空間のワイヤーフレームのデータ構造を説明するための図である。
【図４】図１、図２および図３のワイヤーフレームのデータ構造における座標テーブルのデータ構造を説明するための図である。
【図５】図１、図２および図３のワイヤーフレームのデータ構造におけるベクトルテーブルのデータ構造を説明するための図である。
【図６】図１、図２および図３のワイヤーフレームのデータ構造におけるスカラテーブルのデータ構造を説明するための図である。
【図７】図１、図２および図３のワイヤーフレームのデータ構造における曲線情報テーブルのデータ構造を説明するための図である。
【図８】図１のワイヤーフレームのデータ構造における中心角テーブルのデータ構造を説明するための図である。
【図９】図２のワイヤーフレームのデータ構造における回転行列テーブルのデータ構造を説明するための図である。
【図１０】図１、図２、図３のワイヤーフレームのデータ構造における分割数テーブルのデータ構造を説明するための図である。
【図１１】図１、図２、図３のワイヤーフレームのデータ構造における頂点座標インデックステーブルのデータ構造を説明するための図である。
【図１２】本発明の中心角方式によるワイヤーフレームデータ圧縮方法を説明するためのフローチャートである。
【図１３】本発明の回転行列方式によるワイヤーフレームデータ圧縮方法を説明するためのフローチャートである。
【図１４】本発明の分割方式によるワイヤーフレームデータ圧縮方法を説明するためのフローチャートである。
【図１５】本発明の中心角方式によるワイヤーフレームデータ伸張方法を説明するためのフローチャートである。
【図１６】本発明の回転行列方式によるワイヤーフレームデータ伸張方法を説明するためのフローチャートである。
【図１７】本発明の分割方式によるワイヤーフレームデータ伸張方法を説明するためのフローチャートである。
【図１８】図１５、図１６および図１７におけるポリライン生成方法を説明するためのフローチャートである。
【図１９】図１８における円弧ポリラインまたは円ポリラインの中間座標生成方法を説明するためのフローチャートである。
【図２０】曲線の定義例を示す図である。
【符号の説明】
【図１】
2004102617.tif 000004
【図２】
2004102617.tif 000005
【図３】
2004102617.tif 000006
【図４】
2004102617.tif 000007
【図５】
2004102617.tif 000008
【図６】
2004102617.tif 000009
【図７】
2004102617.tif 000010
【図８】
2004102617.tif 000011
【図９】
2004102617.tif 000012
【図１０】
2004102617.tif 000013
【図１１】
2004102617.tif 000014
【図１２】
2004102617.tif 000015
【図１３】
2004102617.tif 000016
【図１４】
2004102617.tif 000017
【図１５】
2004102617.tif 000018
【図１６】
2004102617.tif 000019
【図１７】
2004102617.tif 000020
【図１８】
2004102617.tif 000021
【図１９】
2004102617.tif 000022
【図２０】
2004102617.tif 000023