Re: VisAD Tutorial now available

Hello Shin-ta,

> //data Init
>    DisplayImpl[] dpys = new DisplayImpl[2];
>     dpys[0] = new DisplayImplJ3D("display1"); // 3D window
>     dpys[1] = new DisplayImplJ2D("display2"); // 2D window
> 
> I want to get the images from these two windows and encoding these two
> inmage into GIF file.
> 
>    BufferedImage image0= dpysloc[0].getImage();
>    BufferedImage image1= dpysloc[1].getImage();
> 
> but I find out the image types are different.
> 
>          image0= dpys[0].getImage();
>          //TYPE_USHORT_565_RGB
>          image1= dpy[1].getImage();
>          //TYPE_INT_RGB
> 
> 2D image is sucessful in tranfer into Gif file, 3D image is not.
> 
> Can I get the same image type from 2D&3D windwos or change image type later?

This is a mystery.  VisAD actually extracts the BufferedImage
from Java3D in visad.java3d.VisADCanvasJ3D.postSwap(), where
the BufferedImage is constructed with TYPE_INT_RGB.

As a test, I put a:

  System.out.println(image.getType());

inside the while(true) loop in Test51.java (the Java3D
getImage() test) and got '1', which represents TYPE_INT_RGB.
[I did the same thing in Test50.java (the Java2D getImage()
test) and got '4', which represents TYPE_INT_BGR.]

So I don't know where your TYPE_USHORT_565_RGB is coming from.

However, Don Murray has been writing applications that save
Java3D displays to JPEG files, so perhaps he can give you some
advice.

Cheers,
Bill
----------------------------------------------------------
Bill Hibbard, SSEC, 1225 W. Dayton St., Madison, WI  53706
hibbard@xxxxxxxxxxxxxxxxx  608-263-4427  fax: 608-263-6738
http://www.ssec.wisc.edu/~billh/vis.html