3.2 JavaからVRMLをコントロールする。(1)EAIについて |
||
![]() |
EAIを利用したJavaアプレットの作成には、「Cosmo Player」、それに付属するクラスライブラリ(ファイル名"Npcosmop.zip")が必要である。
また、JavaアプレットとCosmoPlayerとの接続を確立する際に、ネットスケープが提供している「LiveConnect」用の、クラスライブラリも必要としている。 Nscosmp.zipのパスは、「c:\Program Files\Netscape\Commnicator\Program\Plugins」に入ってある。(jarファイルという場合もある。それはその入ってるパスはzipと同じだが、その時のファイル名は”npcosmop21.jar”です)
これだけでは難しいと思う。例を挙げてみよう。 クラス名 x = new クラス名();しかし、このnew演算子によって生成されるのは、あくまでもJavaの世界におけるオブジェクトであり、VRMLの世界でのオブジェクトではない。だが、JavaアプレットとVRMLとを連携させるためには、オブジェクトをVRMLの領域に生成する必要がある。Javaの領域に生成しても意味はないのである。 そこで、用いられるのはEAIが提供するクラスは、VRMLの世界に新たなオブジェクトを生成するための役割、もしくはVRMLの世界にすでに存在するオブジェクトのいわばインターフェースの役割を果たすことになる。 Node SometingNew = new Node(”Cone”);ではなく、 Node[] SomethingNew =というようにする。これは、VRMLの世界にConeノードを生成するように依頼をする。(ここでは createVrmlFromString)そして、新しく生成されたオブジェクト(=Coneノード)をJavaプログラムの中へ示し、このオブジェクトへの具体的なインターフェースを実現しているのが、JavaプログラミングにおけるNodeのインスタンス=「SometingNew」である。 やっぱり難しいっておっしゃる方には朗報です。要するにクラスはオブジェクトへのインターフェースであると考えていいというのである。 現段階では、ここまででしか表現することしかできません。
参考文献‐月間Java World3月号、5月号 瀬川健児著
|