(57)【特許請求の範囲】
【請求項１】
単一もしくは複数のサーバから、ネットワークを介して複数のクライアントに向けて３次元図形データを送信し、前記複数のクライアントが受信する３次元図形送受信方法であって、
一つの３次元図形について、その使用条件に応じてそれぞれ容量の異なるデータメンバを用意しサーバに格納しておき、
前記クライアントからサーバに３次元図形の要求をするとき、その３次元図形について、満たすべき使用条件に合致し、かつ前記クライアントで未受信の一つの３次元図形データに含まれる使用条件の異なる各部分（以下、単に“データメンバ”と称する）の集合から一つを選択し、
前記クライアントからサーバに対して、前記選択した一つまたは複数の３次元図形データメンバの要求を送信し、
前記サーバにおいて、前記３次元図形データの送信順を、予め与えられたプライオリティの順にし、選択されたデータメンバのみを、またはそれに引き続いて当該３次元図形に属する他のデータメンバを要求元の前記クライアントへ続けて送信し、
前記クライアントにおいて、前記サーバより送信されてきた各３次元図形の各データメンバの受信と平行してそれらの表示と操作の処理を行う
ことを特徴とする３次元図形送受信方法。
【請求項２】
単一もしくは複数のサーバから、ネットワークを介して単一もしくは複数のクライアントに向けて３次元図形データを送信し、前記単一もしくは複数のクライアントが受信する３次元図形送受信方法であって、
一つの３次元図形について、その使用条件に応じてそれぞれ容量の異なるデータメンバを用意しサーバに格納しておき、前記クライアントからサーバに３次元図形の要求をするとき、その３次元図形について、満たすべき使用条件に合致し、かつ前記クライアントで未受信の一つの３次元図形データに含まれる使用条件の異なる各部分の集合から一つを選択し、前記クライアントからサーバに対して、前記選択した一つまたは複数の３次元図形データメンバの要求を送信し、前記サーバにおいて、選択されたデータメンバのみを、またはそれに引き続いて当該３次元図形に属する他のデータメンバを要求元の前記クライアントへ続けて送信し、前記クライアントにおいて、前記サーバより送信されてきた各３次元図形の各データメンバの受信と平行してそれらの表示と操作の処理を行い、
前記使用条件が数多くの部屋を持つ建物内の視線位置であり、前記データメンバが前記部屋の３次元図形データである
ことを特徴とする３次元図形送受信方法。
【請求項３】
単一もしくは複数のサーバから、ネットワークを介して複数のクライアントに向けて３次元図形データを送信する手順と、前記複数のクライアントが受信する手順とを有する３次元図形送受信方法の処理手順をコンピュータに実行させるためのプログラムを記録したコンピュータ読みとり可能な記録媒体であって、
一つの３次元図形について、その使用条件に応じてそれぞれ容量の異なるデータメンバを用意し前記サーバに格納しておく手順と、
前記クライアントからサーバに３次元図形の要求をするとき、その３次元図形について、満たすべき使用条件に合致し、かつ前記クライアントで未受信のデータメンバの集合から一つを選択する手順と、
前記クライアントからサーバに対して、前記選択した一つまたは複数の３次元図形データメンバの要求を送信する手順と、
前記サーバにおいて、前記３次元図形データの送信順を、予め与えられたプライオリティの順にし、選択されたデータメンバのみを、またはそれに引き続いて当該３次元図形に属する他のデータメンバを要求元の前記クライアントへ続けて送信する手順と、
前記クライアントにおいて、前記サーバより送信されてきた各３次元図形の各データメンバの受信と平行してそれらの表示と操作の処理を行う手順
をコンピュータに実行させるためのプログラムを記録したコンピュータ読みとり可能な記録媒体。
【請求項４】
単一もしくは複数のサーバから、ネットワークを介して単一もしくは複数のクライアントに向けて３次元図形データを送信する手順と、前記単一もしくは複数のクライアントが受信する手順とを有する３次元図形送受信方法の処理手順をコンピュータに実行させるためのプログラムを記録したコンピュータ読みとり可能な記録媒体であって、
数多くの部屋を持つ建物内の視線位置を使用条件とすると共に、前記部屋の３次元図形データをデータメンバとし、
一つの３次元図形について、その使用条件に応じてそれぞれ容量の異なるデータメンバを用意し前記サーバに格納しておく手順と、
前記クライアントからサーバに３次元図形の要求をするとき、その３次元図形について、満たすべき使用条件に合致し、かつ前記クライアントで未受信のデータメンバの集合から一つを選択する手順と、
前記クライアントからサーバに対して、前記選択した一つまたは複数の３次元図形データメンバの要求を送信する手順と、
前記サーバにおいて、選択されたデータメンバのみを、またはそれに引き続いて当該３次元図形に属する他のデータメンバを要求元の前記クライアントへ続けて送信する手順と、
前記クライアントにおいて、前記サーバより送信されてきた各３次元図形の各データメンバの受信と平行してそれらの表示と操作の処理を行う手順
をコンピュータに実行させるためのプログラムを記録したコンピュータ読みとり可能な記録媒体。
【請求項５】
単一もしくは複数のサーバから、ネットワークを介して複数のクライアントに向けて３次元図形データを送信する手段と、前記複数のクライアントが前記送信された３次元図形データを受信する手段を有する３次元図形送受信システムであって、
前記サーバは、
各３次元図形データが使用条件に応じてそれぞれ容量の異なる複数のデータメンバの集合であるような、単一もしくは複数の３次元図形データを記憶する手段と、
前記３次元図形データの送信順を、予め与えられたプライオリティの順にし、前記クライアントの要求するデータメンバ、または該データメンバとそれに引き続くデータメンバを、前記クライアントに送信する手段と
を有し、
前記クライアントは、
所望の使用条件でかつ未受信のデータメンバを選択する手段と、
該選択した単一もしくは複数のデータメンバの送信を前記サーバに要求する手段と、
前記サーバから送信されてきたデータメンバを受信して表示する手段と、
引き続くデータメンバの受信時にすでに受信して表示したデータの処理を同時に行える手段
とを有することを特徴とする３次元図形送受信システム。
【請求項６】
単一もしくは複数のサーバから、ネットワークを介して単一もしくは複数のクライアントに向けて３次元図形データを送信する手段と、前記単一もしくは複数のクライアントが受信する手段を有する３次元図形送受信システムであって、
前記サーバは、
各３次元図形データが使用条件に応じてそれぞれ容量の異なる複数のデータメンバの集合であるような、単一もしくは複数の３次元図形データを記憶する手段と、
前記クライアントの要求するデータメンバ、または該データメンバとそれに引き続くデータメンバを、前記クライアントに送信する手段と
を有し、
前記クライアントは、
所望の使用条件でかつ未受信のデータメンバを選択する手段と、
該選択した単一もしくは複数のデータメンバの送信を前記サーバに要求する手段と、
前記サーバから送信されてきたデータメンバを受信して表示する手段と、引き続くデータメンバの受信時にすでに受信して表示したデータの処理を同時に行える手段と
を有し、
前記使用条件が数多くの部屋を持つ建物内の視線位置であり、前記データメンバが前記部屋の３次元図形データであることを特徴とする３次元図形送受信システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、３次元図形送受信方法及び記録媒体ならびに３次元図形送受信システムに関し、特に、コンピュータならびにネットワーク装置を複数接続して構成されるコンピュータネットワークにおいて、サーバに格納されている大容量の３次元図形情報をクライアントに転送する際、クライアント側でそれらが表示・操作可能になるまでの待ち時間を減少し、かつクライアントでのそれらの表示・操作の負荷を軽減する技術に関するものである。
【０００２】
【従来の技術】
従来、３次元図形情報を作成し、配信する技術は以下のようであった。まず、サーバにおいては、クライアントに見せるための３次元図形情報を、単一のサーバ内において合成し、一括して（例えばＶＲＭＬ方式で）格納しておく。クライアントの要求があると、サーバは、そのクライアントのその３次元図形情報の使用条件にかかわらず、一括して配信する。クライアントの端末上では、サーバより配信されてきた３次元図形情報を完全に受信した後、表示処理を開始する。
【０００３】
図７に従来方式の概略構成を示す。図７において、１１は３次元図形データを持つサーバ、１２，１３，１４はそれぞれＡ，Ｂ，Ｃという名前の３次元図形データ、１５はコンピュータネットワーク、１６はクライアント、１７，１８，１９は３次元図形データＡ，Ｂ，Ｃがクライアント１６において表示・操作可能になる時刻である。
【０００４】
前記従来方式では、図７に示すように、前記クライアント１６がサーバ１１に対して３次元図形データを要求すると、データはサーバからクライアントへ要求された順に一つずつ送られる。この際、送られるデータは、データの全体がクライアントにおいて受信されて初めて表示・操作可能になる。すなわち、そのデータが大容量である場合、クライアントはその仕事を開始するまでに多大な時間待たねばならない。
【０００５】
【発明が解決しようとする課題】
このような従来技術の問題点は以下のように考えられる。
第一に、大容量の３次元図形情報を一括してクライアントに配信するので、クライアントの端末上で受信が完了し、その表示が開始され、クライアントの操作が可能になるまでに多大な時間がかかるという問題点がある。
第二に、受信した３次元図形情報は大容量であるので、クライアント端末において表示・操作をする際、その３次元図形情報の使用条件にかかわらず、多大な計算時間を要し、クライアントの作業効率を著しく低下させるという問題点がある。
【０００６】
以上に述べたように、従来の３次元図形送受信方式では、サーバの送信からクライアントが表示・操作可能になるまでに多大な時間がかかったり、クライアントが受信後、その表示・操作の効率が非常に低下する可能性がある。これは、３次元図形情報をコンピュータネットワークを通して効率よく送受信するために解決されなければならない問題である。
【０００７】
本発明の目的は、３次元図形情報をサーバから送信してクライアントで受信し表示・操作可能になるまでの待ち時間と、クライアントでの作業負荷を減少することが可能な技術を提供することにある。
【０００８】
本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述及び添付図面によって明らかにする。
【０００９】
【課題を解決するための手段】
本願において開示される発明のうち代表的なものの概要を簡単に説明すれば以下のとおりである。
【００１０】
（１）単一もしくは複数のサーバから、ネットワークを介して複数のクライアントに向けて３次元図形データを送信し、前記複数のクライアントが受信する３次元図形送受信方法であって、一つの３次元図形について、その使用条件に応じてそれぞれ容量の異なるデータメンバを用意しサーバに格納しておき、前記クライアントからサーバに３次元図形の要求をするとき、その３次元図形について、満たすべき使用条件に合致し、かつ前記クライアントで未受信の“一つの３次元図形データに含まれる使用条件の異なる各部分”（以下、単に“データメンバ”と称する）の集合から一つを選択し、前記クライアントからサーバに対して、前記選択した一つまたは複数の３次元図形データメンバの要求を送信し、前記サーバにおいて、前記３次元図形データの送信順を、予め与えられたプライオリティの順にし、選択されたデータメンバのみを、またはそれに引き続いて当該３次元図形に属する他のデータメンバを要求元の前記クライアントへ続けて送信し、前記クライアントにおいて、前記サーバより送信されてきた各３次元図形の各データメンバの受信と平行してそれらの表示と操作の処理を行うものである。
（２）単一もしくは複数のサーバから、ネットワークを介して単一もしくは複数のクライアントに向けて３次元図形データを送信し、前記単一もしくは複数のクライアントが受信する３次元図形送受信方法であって、一つの３次元図形について、その使用条件に応じてそれぞれ容量の異なるデータメンバを用意しサーバに格納しておき、前記クライアントからサーバに３次元図形の要求をするとき、その３次元図形について、満たすべき使用条件に合致し、かつ前記クライアントで未受信の一つの３次元図形データに含まれる使用条件の異なる各部分の集合から一つを選択し、前記クライアントからサーバに対して、前記選択した一つまたは複数の３次元図形データメンバの要求を送信し、前記サーバにおいて、選択されたデータメンバのみを、またはそれに引き続いて当該３次元図形に属する他のデータメンバを要求元の前記クライアントへ続けて送信し、前記クライアントにおいて、前記サーバより送信されてきた各３次元図形の各データメンバの受信と平行してそれらの表示と操作の処理を行い、前記使用条件が数多くの部屋を持つ建物内の視線位置であり、前記データメンバが前記部屋の３次元図形データである。
【００１１】
（３）単一もしくは複数のサーバから、ネットワークを介して複数のクライアントに向けて３次元図形データを送信する手順と、前記複数のクライアントが受信する手順とを有する３次元図形送受信方法の処理手順をコンピュータに実行させるためのプログラムを記録したコンピュータ読みとり可能な記録媒体であって、一つの３次元図形について、その使用条件に応じてそれぞれ容量の異なるデータメンバを用意し前記サーバに格納しておく手順と、前記クライアントからサーバに３次元図形の要求をするとき、その３次元図形について、満たすべき使用条件に合致し、かつ前記クライアントで未受信のデータメンバの集合から一つを選択する手順と、前記クライアントからサーバに対して、前記選択した一つまたは複数の３次元図形データメンバの要求を送信する手順と、前記サーバにおいて、前記３次元図形データの送信順を、予め与えられたプライオリティの順にし、選択されたデータメンバのみを、またはそれに引き続いて当該３次元図形に属する他のデータメンバを要求元の前記クライアントへ続けて送信する手順と、前記クライアントにおいて、前記サーバより送信されてきた各３次元図形の各データメンバの受信と平行してそれらの表示と操作の処理を行う手順をコンピュータに実行させるためのプログラムを記録したものである。
（４）単一もしくは複数のサーバから、ネットワークを介して単一もしくは複数のクライアントに向けて３次元図形データを送信する手順と、前記単一もしくは複数のクライアントが受信する手順とを有する３次元図形送受信方法の処理手順をコンピュータに実行させるためのプログラムを記録したコンピュータ読みとり可能な記録媒体であって、数多くの部屋を持つ建物内の視線位置を使用条件とすると共に、前記部屋の３次元図形データをデータメンバとし、一つの３次元図形について、その使用条件に応じてそれぞれ容量の異なるデータメンバを用意し前記サーバに格納しておく手順と、前記クライアントからサーバに３次元図形の要求をするとき、その３次元図形について、満たすべき使用条件に合致し、かつ前記クライアントで未受信のデータメンバの集合から一つを選択する手順と、前記クライアントからサーバに対して、前記選択した一つまたは複数の３次元図形データメンバの要求を送信する手順と、前記サーバにおいて、選択されたデータメンバのみを、またはそれに引き続いて当該３次元図形に属する他のデータメンバを要求元の前記クライアントへ続けて送信する手順と、前記クライアントにおいて、前記サーバより送信されてきた各３次元図形の各データメンバの受信と平行してそれらの表示と操作の処理を行う手順をコンピュータに実行させるためのプログラムを記録したものである。
【００１２】
（５）単一もしくは複数のサーバから、ネットワークを介して複数のクライアントに向けて３次元図形データを送信する手段と、前記複数のクライアントが前記送信された３次元図形データを受信する手段を有する３次元図形送受信システムであって、前記サーバは、各３次元図形データが使用条件に応じてそれぞれ容量の異なる複数のデータメンバの集合であるような、単一もしくは複数の３次元図形データを記憶する手段と、前記３次元図形データの送信順を、予め与えられたプライオリティの順にし、前記クライアントの要求するデータメンバ、または該データメンバとそれに引き続くデータメンバを、前記クライアントに送信する手段とを有し、前記クライアントは、所望の使用条件でかつ未受信のデータメンバを選択する手段と、該選択した単一もしくは複数のデータメンバの送信を前記サーバに要求する手段と、前記サーバから送信されてきたデータメンバを受信して表示する手段と、引き続くデータメンバの受信時にすでに受信して表示したデータの処理を同時に行える手段とを有するものである。
（６）単一もしくは複数のサーバから、ネットワークを介して単一もしくは複数のクライアントに向けて３次元図形データを送信する手段と、前記単一もしくは複数のクライアントが受信する手段を有する３次元図形送受信システムであって、前記サーバは、各３次元図形データが使用条件に応じてそれぞれ容量の異なる複数のデータメンバの集合であるような、単一もしくは複数の３次元図形データを記憶する手段と、前記クライアントの要求するデータメンバ、または該データメンバとそれに引き続くデータメンバを、前記クライアントに送信する手段とを有し、前記クライアントは、所望の使用条件でかつ未受信のデータメンバを選択する手段と、該選択した単一もしくは複数のデータメンバの送信を前記サーバに要求する手段と、前記サーバから送信されてきたデータメンバを受信して表示する手段と、引き続くデータメンバの受信時にすでに受信して表示したデータの処理を同時に行える手段とを有し、前記使用条件が数多くの部屋を持つ建物内の視線位置であり、前記データメンバが前記部屋の３次元図形データである。
【００１３】
すなわち、本発明は、一つの３次元図形情報に対して、元の３次元図形情報よりは小容量の、一つまたは複数のデータメンバをサーバに用意しておき、クライアントの要求と使用条件に応じて、これらのデータメンバを最適な順に配信し、クライアント側で受信したデータメンバを順に表示・操作可能にすることによって、３次元図形情報をサーバから送信してクライアントで受信し表示・操作可能になるまでの待ち時間と、クライアントでの作業負荷を、減少するようにしたものである。
【００１４】
このようにすることにより、コンピュータネットワークを介して大容量の３次元図形データをやりとりする際、受信側において、受信を開始してからその３次元図形データを表示・操作可能にするまでに要する時間を短縮し、受信後のそれを表示・操作する際の処理効率を向上することができる。
【００１５】
【発明の実施の形態】
以下、図面を参照して本発明の実施例を詳細に説明する。
図１（ａ）は本発明の実施形態の３次元図形送受信装置の概略構成を示す字式図、図１（ｂ）は３次元図形送受信方法を説明するための図である。
【００１６】
本実施形態において、“一つの３次元図形データに含まれる使用条件の異なる各部分”を以下、単に“データメンバ”と称する。
【００１７】
本実施形態の３次元図形送受信装置は、図１（ａ）に示すように、３次元図形データを持つサーバ２１、Ａ，Ｂ，Ｃという名前の３次元図形データの使用条件に応じたデータメンバ２２，２３，２４、コンピュータネットワーク２５、クライアント２６からなる。図１（ｂ）において、２７，２８，２９は、３次元図形データＡ，Ｂ，Ｃがクライアント２６において表示・操作可能になる時刻である。
【００１８】
本実施形態の３次元図形送受信装置の動作は、クライアント２６がサーバ２１に対して３次元図形データを要求すると、データはサーバ２１からクライアント２６へ要求された順に送られるが、この際、サーバ２１にあるデータは、クライアント２６の使用条件に適応するようデータメンバ２２，２３，２４として区分的に保持されていて、そのうちの一つが到達すれば、クライアント２６においてそのデータの表示・操作が可能になる。
【００１９】
例えば、図１（ａ）に示した例の場合、データＡに関しては、そのデータメンバであるＡ１が到達した時点でその表示・操作が可能になる。データメンバＡ１は、データＡに比較すると小さいので、その受信完了までクライアント２６が待たなければいけない時刻２７は、既存の方法（図７）の時刻１７よりは明らかに小さい。さらに、他のデータ、例えばデータＢに対しても要求がある場合、データＡの全体の受信が完了していなくても、データＡの一つのデータメンバのみが到着した時点で、データＢの受信を開始することができ、転送開始時間を繰り上げることができる。また、受信したデータメンバは小さいので、クライアント上での表示・操作の効率も従来方法に比べて向上する。
【００２０】
（実施例１）
本実施例１は、前記本実施形態の方法及び装置において、使用条件を詳細度（ＬＯＤ：Ｌｅｖｅｌ  ｏｆ  Ｄｅｔａｉｌ）にした場合の一実施例である。
【００２１】
ＬＯＤは３次元図形データの詳細度として３次元図形データ毎に定義され、コンピュータグラフィックスの世界ではよく使われる概念である（参考文献１：マーク・ペッシ著、松田、蒲地、竹内、本田、暦本、石川、宮下、原訳：「ＶＲＭＬを知る−３次元電脳空間の構築とブラウジング−」、株式会社プレンティスホール出版、１９９６）。
【００２２】
ＬＯＤが高いデータほど詳細度が高いと定義される。例えば、図２に示すように、ある一つの３次元図形データ「牛」について、そのＬＯＤ毎にデータメンバを用意しておき、表示システムにおいてその図形を表示する際の、その図形までの視点からの距離に応じてデータメンバを使い分けることは従来よく行われている（参考文献１）。図２において、（ａ）はＬＯＤの高いデータメンバ、（ｂ）はＬＯＤの中庸のデータメンバ、（ｃ）はＬＯＤの低いデータメンバの場合である。
【００２３】
例えば、その図形までの距離が大きい場合はＬＯＤの低いデータを表示し、距離が小さい場合にはＬＯＤの高いデータを表示すると、その図形の詳細部分が目立たない程遠いときには小さいデータで表示・操作の負荷を小さくし、反対に近い場合には負荷はある程度犠牲にするが詳細な表示をすることが可能になる。
【００２４】
本実施例１においては、この本来表示のためだけに考案されたＬＯＤの概念を、本発明の方法及び装置における使用条件として用いた場合について述べる。
【００２５】
サーバ２１は、クライアント２６から３次元図形データの要求があり次第、そのデータの未送信のデータメンバ２７，２８，２９のうち、ＬＯＤの低いものから順に送る。クライアント２６は、一つのデータメンバの受信を完了したら即そのデータメンバを表示・操作可能とする。ＬＯＤの低いデータメンバは容量が小さいので、クライアント２６は、詳細度（ＬＯＤ）は低いデータではあるが、従来方法よりはるかに早い段階でデータの表示・操作が可能となる。残りのＬＯＤの高いデータメンバは、クライアント２６が既受信の低いデータメンバの表示・操作を行っている間に並行してサーバ２１からクライアント２６へ転送され、やがてクライアント２６において表示・操作可能になる。
【００２６】
サーバ２１側において、各３次元図形について、あらかじめＬＯＤ毎に複数のデータを作成しておく。これらは、ＬＯＤが高いほど詳細度が高く、従ってデータとしての容量も大きい。以下、サーバ２１側の処理方法と、クライアント２６側の処理方法について順に述べる。
【００２７】
（サーバ２１側の処理方法）
サーバ２１においては、クライアントＣから、３次元図形データＤのＬＯＤに対応のデータメンバＤ（ｉ）に関する要求が到着次第、クライアントＣに対してデータメンバＤ（ｉ）の送信を開始する。
【００２８】
（クライアント２６の処理方法）
図３にクライアント２６の処理の流れを示す。クライアント２６側の処理においては、主に３つのスレッド、（ａ）データ要求受付スレッド、（ｂ）データ要求送信スレッド、（ｃ）データ表示スレッドの処理からなる。
【００２９】
（ａ）データ要求受付スレッドにおける処理
ステップ１：ユーザからのデータＤへの要求を待ち、ユーザからデータＤの要求があるか調べる（Ｓ１０１）。
ステップ２：データＤがクライアントＣ上にあるか、あるいは受付キュー（Ｑ）に登録済みか調べる（Ｓ１０２）。つまり、データＤのデータメンバが、すでにクライアントマシンに存在しているか、あるいは受付キュー（Ｑ）に入っているかどうか調べる。このどちらかであれば、ユーザからの要求待ち状態（Ｓ１０１）に戻る。
ステップ３：データＤのデータメンバが、まだクライアントマシンに存在せず、かつ受付キュー（Ｑ）にも存在していなければ、受付キュー（Ｑ）への登録処理を行う。つまり、各ｉ（ｉ＝０，１・・・Ｐ）について、受付キュー（Ｑｉ）に要求（ＣＤ（ｉ））を挿入する。受付キュー（Ｑ）は、ＬＯＤ値をインデックスとして用意される。ユーザからの要求待ち状態（Ｓ１０１）に移行する。
【００３０】
（ｂ）データ要求通信スレッドにおける処理
ステップ１：全てのキューＱ（ｉ）（ｉ＝０，１・・・Ｐ）の中に、空でないものがあるかどうか調べる（Ｓ２０１）。全て空であれば、送信要求を送る必要はない。
ステップ２：空でないものがあれば、それらのうちでＬＯＤが最も小さいものを選び、そのＬＯＤ値を（ｉ０）とする（Ｓ２０２）。
ステップ３：Ｑ（ｉ０）から要求（Ｃ，Ｄ（ｉ０））を取り出し、サーバへ送信する。つまり、クライアントＣへデータメンバＤ（ｉ０）を送信するよう要求する（Ｓ２０３）。
【００３１】
（ｃ）データ表示スレッドにおける処理
ステップ１：受信したデータメンバの中に未表示のものがあるか調べる（Ｓ２０３）。
ステップ２：未表示のデータメンバがあれば、表示・操作可能にする（Ｓ２０３）。
【００３２】
以上のような処理方法を、サーバ２１及びクライアント２６に装備することによって、本発明の使用条件がＬＯＤである場合の実施例１が実現される。
【００３３】
また、前記実施例１は、以下のような効率化も場合によっては行うことができる。データを要求する際、データメンバ全体を送信してもらうのではなく、クライアント２６からＬＯＤの最小値を指定してその値より上のＬＯＤのデータメンバのみ送ってもらうことが考えられる。こうすると、ＬＯＤの大きいデータは容量が大きいので最初に表示・操作可能になるまでの待ち時間は大きくなるが、全体の通信コストは削減することができる。
【００３４】
各ＬＯＤ対応のデータメンバを、その直前のデータメンバに対する差分のみで構成することが考えられる。こうすると、サーバ２１に持つデータ量を減らすことができる上に、通信コストも下げられ、かつ大きなＬＯＤ値のデータメンバが表示・操作可能になるまでの待ち時間も減らすことができる。
【００３５】
（実施例２）
本実施例２は、前記実施形態の方法の使用条件をＬＯＤにした場合の他の実施例である。
【００３６】
前記実施例１においては、クライアント２６側において要求するデータのキュー（Ｑ）を作成し、順序を付けてサーバ２１へ要求していた。サーバ２１においては、要求が来た順にデータを送信していた。
【００３７】
本実施例２では、サーバ２１側でもキューＱＳを作る例であって、複数のユーザから同時に要求がくるとき、キューＱＳの中のデータの送信順を予め与えられたプライオリティの順にすることができ、本発明の方法を用いた場合のサービス全体の最適化に資することができる。ここで、予め与えられたプライオリティとは、例えばデータないしそれを要求しているクライアント２６の優先度、データの大きさ、データの緊急度等である。クライアント２６での処理は実施例１に同じであるので、以下にサーバ２１での処理のみを示す。
【００３８】
（サーバ２１側の処理方法）
図４に本実施例２におけるサーバ２１の処理の流れを示す。サーバ２１においては大きく分けて、（ａ）データ要求キュー作成スレッドと（ｂ）データ送信スレッドと呼ばれる二つのスレッドが非同期に走行する。
【００３９】
（ａ）データ要求キュー作成スレッドにおける処理
このスレッドにおいては、クライアントから送られてくる、３次元図形データに対する要求をプライオリティキューに入れる作業を、ＬＯＤ対応に行う。
【００４０】
ステップ１：まず、キューＱＳ（ｉ）を初期化する（Ｓ４０１）。ここで、インデックスｉは、ＬＯＤの値に対応する。クライアント２６からデータに対する要求があるまで待つ。
ステップ２：あるクライアントＣからあるデータＤに対する要求があったか否かを判定する（Ｓ４０２）。
ステップ３：要求があったとき、データＤを構成するデータメンバの名前を、Ｄ（０），Ｄ（１），・・・，Ｄ（Ｐ）としたとき、各キューＱＳ（ｉ）に、クライアントＣからのデータＤへの要求を表すメッセージ（Ｃ，Ｄ（ｉ））を書き込む（Ｓ４０３）。書き込みが終ったらステップ２の
待ち状態に移行する。
【００４１】
（ｂ）データ送信スレッドにおける処理
ステップ１：すべてのＱＳ（ｉ）が空であるかどうか、適当な時間間隔で調べる（Ｓ５０１）。
ステップ２：空でないキューＱＳ（ｉ）が存在すると、そのようなキューのうち、予め与えられたプライオリティ最高のものをＱＳ（ｉ０）とする（Ｓ５０２）。
ステップ３：キューＱＳ（ｉ０）から、メッセージ（Ｃ，Ｄ（ｉ０））を取り出す（Ｓ５０３）。
ステップ４：データメンバＤ（ｉ０）をクライアントＣへ送信する（Ｓ５０４）。送信が終わったら、再びステップ１に述べたキューＱＳの監視状態に移行する。
【００４２】
以上のような処理方法を、サーバ２１及びクライアント２６に装備することによって、本発明の使用条件がＬＯＤである場合の実施例２が実現される。
【００４３】
（実施例３）
本実施例３は、本発明の方法の使用条件が建物内の視点位置である場合の実施例である。本実施例３は、特に、バーチャルモール（ネットワーク上の仮想的なショッピングモール）など、数多くの部屋をもつ建物の部屋から部屋へ視点が移動するような応用（ウォークスルー（Ｗａｌｋ−ｔｈｒｏｕｇｈ）と呼ばれる）において効果的である。
【００４４】
図５に示すように、いくつかの部屋に分かれた建物の３次元図形データの例を考える。このような３次元図形データをサーバ２１からコンピュータネットワークを通してクライアント２６へ提供する場合、従来方法では、建物全ての図形データをクライアント２６へ向け送信し、クライアント２６はその全てが受信されるまで表示・操作可能にはならなかった。従って、例えばバーチャルモールのような応用の場合、ユーザは、そのモールに関する全ての３次元図形データの受信を待たねばならず、多大の待ち時間を要していた。
【００４５】
図５に示す実施例３では、視点の位置は部屋Ａにあり、他の部屋の中は見ることができない。この場合、視点の移動の可能性を考えると、とりあえず部屋Ａに隣接する部屋Ｂ、部屋Ｃ、部屋Ｄのデータのみがクライアント２６の手元にあれば充分である。さらに、ドアの付き方、ユーザの視線方向を考慮すると、これらの部屋のデータの間には、例えばＣ，Ｂ，Ｄの順、という風に優先度が自然につくことが容易にわかる。
【００４６】
すなわち、本実施例３においては、各部屋の３次元図形データを、例えば一部屋毎にデータメンバとしてサーバ２１に用意しておく。クライアント２６は、そのサーバ２１にその建物の３次元図形データを要求する際、ユーザの視点位置・方向から、次に表示することになる可能性の高い部屋のデータを優先する。これらの部屋毎のデータメンバは、建物全体のデータ量に比べれば常に小さいので、クライアント２６側では従来方法よりもはるかに早い段階でウォークスルーを開始することができる。
【００４７】
サーバ２１には、建物のデータの各部屋の３次元図形データがデータメンバとして登録されているものとする。また、各部屋Ｒには、隣接する部屋へのポインタが定義されているものとする。
【００４８】
処理は、サーバ２１側の処理とクライアント２６側の処理の２つに分類することができる。以下、この２つについて順に述べる。
【００４９】
（サーバ側の処理方法）
サーバ２１においては、クライアントＣから、部屋Ｒの３次元図形データへの要求が到着次第、クライアントＣに対してデータメンバＲの送信を開始する。
【００５０】
（クライアント側の処理方法）
図６にクライアント２６の処理の流れを示す。クライアント２６側の処理においては、主に３つのスレッド、（ａ）データ要求受付スレッド、（ｂ）データ要求送信スレッド、（ｃ）データ表示スレッドである。
【００５１】
（ａ）データ要求受付スレッドにおける処理
ステップ１：クライアントＣのユーザが部屋Ｒへ移動する、という操作がクライアントＣにおいてあったかどうか調べる（Ｓ６０１）。その移動の情報を（Ｃ，Ｒ）と表現する。そのような情報がなければ、情報があるまで待つ。あったら、次のステップに進む。
ステップ２：ステップ１でクライアントＣが得たユーザの移動情報中の部屋Ｒのデータとその隣接部屋のデータメンバがクライアントＣ上に既にあるか、あるいは受付キューに入っているか調べる（Ｓ６０２）。このどちらかであれば、ステップ１に戻る。
そうでなければ（ステップ１でクライアントＣが得たユーザの移動情報中の部屋Ｒのデータとその隣接部屋のデータメンバが、クライアントＣ上に無く、かつ、受付キューにも入っていなければ）、次のステップ３に行く。
ステップ３：部屋Ｒに隣接する部屋を調べ、それらをＮ（ｉ）（ｉ＝０，・・・，ｎｒ）とする。ただしＮ（０）＝Ｒであるとする（Ｓ６０３）。
これらは、クライアントの現時点での視線方向に最も近い順に並んでいるものとする。
ステップ４：各ｉ（ｉ＝０，１，・・・，Ｐ）について、受付キューＱ（ｉ）に要求（Ｃ，Ｎ（ｉ））を挿入する（Ｓ６０３）。すなわち、空キューＱ（ｉ）に要求（Ｃ，Ｎ（ｉ））を登録し、ユーザからの移動情報待ち状態（ステップ１）に戻る。
【００５２】
（ｂ）データ要求送信スレッドにおける処理
ステップ１：全てのキューＱ（ｉ）（ｉ＝０，１，・・・，Ｐ）の中に、空でないものがあるかどうか調べる（Ｓ７０１）。全て空であれば、送信要求を送る必要はない。
ステップ２：空でないものがあれば、それらのうちでインデックスｉが最も小さいものを選び、その値を（ｉ０）とする（Ｓ７０２）。
ステップ３：Ｑ（ｉ０）から要求（Ｃ，Ｎ（ｉ０））を取り出し、サーバ２１へ送信する（Ｓ７０３）。つまり、クライアントＣへデータメンバＮ（ｉ０）を送信するよう要求する。
【００５３】
（ｃ）データ表示スレッドにおける処理
ステップ１：未表示のデータメンバＮ（ｉ）があるか調べる（Ｓ８０１）。つまり、受信したデータメンバの中に、未表示のものがあるか調べる。
ステップ２：未表示のデータメンバＮ（ｉ）があれば、データメンバＮ（ｉ）を表示・操作可能にする（Ｓ８０１）。
【００５４】
以上のような処理方法を、サーバ２１、及びクライアント２６に装備することによって、本実施形態の使用条件が建物内の視点位置である場合の実施例３が実現される。
【００５５】
本実施例３においては、クライアント２６側において、要求するデータのキュー（Ｑ）を作成し、順序を付けてサーバ２１へ要求していた。サーバ２１においては、要求が来た順にデータを送信していた。
【００５６】
前記実施例２に準じて、サーバ２１側でもキュー（Ｑ）を作るようにすると、複数のユーザ２１から同時に要求がくるとき、キュー（Ｑ）の中のデータ送信順を、予め与えられたプライオリティの順にすることができ、本発明の方法を用いた場合のサービス全体の最適化に資することができる。しかし、これは前記実施例２の記述から明らかであるので、詳細は省略する。
前記実施例に関する参考文献：マーク・ペッシ著、松田、蒲地、竹内、本田、暦本、石川、宮下、原訳：「ＶＲＭＬを知る−３次元電脳空間の構築とブラウジング−」、株式会社プレンティスホール出版、１９９６）。
【００５７】
以上、本発明者によってなされた発明を、前記実施例に基づき具体的に説明したが、本発明は、前記実施例に限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは勿論である。
【００５８】
【発明の効果】
以上、説明したように、本発明によれば、コンピュータネットワークを介して大容量の３次元図形データをやりとりする際、受信側において、受信を開始してからその３次元図形データを表示・操作可能にするまでに要する時間を短縮し、受信後のそれを表示・操作する際の処理効率を向上することができる。
【図面の簡単な説明】
【図１】本発明の実施形態の３次元図形送受信方法及び装置の概要を説明するための図である。
【図２】本実施形態のＬＯＤの違いによる３次元図形の詳細度の違いを説明するための図である。
【図３】本実施形態の実施例１のクライアント側の処理内容を説明するための図である。
【図４】本実施形態の実施例２のサーバ側の処理内容を説明するための図である。
【図５】本実施形態の実施例３のいくつかの部屋に分かれた建物の３次元図形データの例を説明するための図である。
【図６】本実施形態の実施例３のクライアント側の処理内容を説明する図である。
【図７】従来の３次元図形データ送受信方法及び装置の概要を説明するための図である。
【符号の説明】
１１，２１…３次元図形データを持つサーバ、１２，１３，１４，２２，２３，２４…Ａ，Ｂ，Ｃという名前の３次元図形データ、１５，２５…コンピュータネットワーク、１６，２６…クライアント、１７，１８，１９，２７，２８，２９…表示・操作可能になる時刻。
【図１】
0003549014.tif 000002
【図２】
0003549014.tif 000003
【図３】
0003549014.tif 000004
【図４】
0003549014.tif 000005
【図５】
0003549014.tif 000006
【図６】
0003549014.tif 000007
【図７】
0003549014.tif 000008