VisAD library update

Tom Rink rink at ssec.wisc.edu
Wed Jan 31 06:05:29 MST 2007


Hi Lizhi,

We'll look into this.

Tom

Wang Lizhi wrote:

>Hi, Don Murray,
>
>The following two JPG file is the streamline with the previous version(stream-1.jpg) and the new version(stream-2.jpg).
>
>     FlowControl cFlow = (FlowControl)streamUMap.getControl();
>     cFlow.setStreamlineDensity( 1.0 );
>     cFlow.setStepFactor( 0.5 );
>The stream-1.jpg is what I want, but I have no idea about the stream-2.jpg
>
>When I run the following code, there is something wrong. I paste the code and errors:
>
>/////############### code begin ################//
>
>import java.util.*;
>
>import java.awt.BorderLayout;
>import java.awt.Container;
>import java.awt.Color;
>import java.awt.Dimension;
>import java.awt.event.*;
>
>import javax.swing.*;
>import javax.swing.event.*;
>import visad.*;
>import visad.util.*;
>import visad.java2d.DisplayImplJ2D;
>import visad.java3d.DisplayImplJ3D;
>import visad.java3d.DefaultRendererJ3D;
>import java.rmi.RemoteException;
>
>public class GEam3DView extends JTabbedPane
>{
>   public GEam3DView() throws RemoteException, VisADException
>   {
>      super();
>
>      setupComponent();
>   }
>
>   private void setupComponent()
>   {
>      JPanel p = new JPanel();
>      p.setLayout( new BorderLayout() );
>      add( "3D", p );
>
>      try
>      {
>         DisplayImpl display = new DisplayImplJ3D( "3D" );
>         p.add( display.getComponent(), BorderLayout.CENTER );
>
>         RealType x = RealType.getRealType( "X" );
>         RealType y = RealType.getRealType( "Y" );
>         RealType z = RealType.getRealType( "Z" );
>         RealType pixel = RealType.getRealType( "pixel" );
>
>         ScalarMap xMap3D = new ScalarMap( x, Display.XAxis );
>         ScalarMap yMap3D = new ScalarMap( y, Display.YAxis );
>         ScalarMap zMap3D = new ScalarMap( z, Display.ZAxis );
>         ScalarMap pixMap3D = new ScalarMap( pixel, Display.RGB );
>         ScalarMap areaMap3D = new ScalarMap( pixel, Display.IsoContour );
>
>         RealTupleType xyz_domain = new RealTupleType( z, y, x );
>
>         visad.Set xyz_domain_set = new Linear3DSet( xyz_domain,
>                -1000, -800, 3, 0, 1000, 20, 0, 1500, 30 );
>
>         FunctionType xyz_func_pixel = new FunctionType(
>                xyz_domain, pixel );
>
>         FlatField xyz_pixel_ff = new FlatField( xyz_func_pixel, xyz_domain_set );
>//         xyz_pixel_ff.setSamples(
>         DataReferenceImpl xyz_pixel_ref
>                new DataReferenceImpl( "xyz_pixel" );
>         display.addReference( xyz_pixel_ref );
>         xyz_pixel_ref.setData( xyz_pixel_ff );
>
>         display.addMap( xMap3D );
>         display.addMap( yMap3D );
>         display.addMap( zMap3D );
>         display.addMap( pixMap3D );
>         display.addMap( areaMap3D );
>      }
>      catch( RemoteException re ) { }
>      catch( VisADException v5de ) { }
>   }
>
>   public static void main( String[] argv )
>   {
>      try
>      {
>         JFrame f = new JFrame();
>         f.add( new GEam3DView() );
>         f.setSize( 400, 400 );
>         f.setVisible( true );
>      }
>      catch( java.rmi.RemoteException re ) { }
>      catch( visad.VisADException ve ) { }
>   }
>}
>/////// end of the code //////////////////////
>
>errors as following:
>
>java.lang.ArrayIndexOutOfBoundsException: 0 >= 0
> at java.util.Vector.elementAt(Vector.java:427)
> at visad.java3d.ShadowFunctionOrSetTypeJ3D.doTransform(ShadowFunctionOrSetTypeJ3D.java:124)
> at visad.java3d.DefaultRendererJ3D.doTransform(DefaultRendererJ3D.java:133)
> at visad.java3d.RendererJ3D.doAction(RendererJ3D.java:181)
> at visad.DisplayImpl.doAction(DisplayImpl.java:1709)
> at visad.ActionImpl.run(ActionImpl.java:364)
> at visad.util.ThreadPool$ThreadMinnow.run(ThreadPool.java:95)
>
>
>thanks
>
>lizhi
>
>
>
>----- Original Message ----- 
>From: "Don Murray" <dmurray at unidata.ucar.edu>
>To: "Wang Lizhi" <wlz at tea.ac.cn>
>Cc: "Tom Whittaker" <tomw at ssec.wisc.edu>; <visad at unidata.ucar.edu>
>Sent: Tuesday, January 30, 2007 10:34 PM
>Subject: Re: VisAD library update
>
>
>  
>
>>Hi-
>>
>>Wang Lizhi wrote:
>>
>>    
>>
>>>  When I use the updated version, my application do not display correctly
>>>
>>>  Firstly, the Stream is very strange when I use
>>>        streamUMap = new ScalarMap( ux, Display.Flow1X );
>>>        streamVMap = new ScalarMap( vy, Display.Flow1Y );
>>>      
>>>
>>The streamline code was revamped to be more "realistic" so it
>>will look different than the previous version.  When you say
>>"strange" does that mean different or inaccurate?  If the latter,
>>can you provide a screen shot with the old visad.jar and the new one?
>>
>>    
>>
>>>  Secondly,  some error message is displayed as following:
>>>     java.lang.ArrayIndexOutOfBoundsException: 0 >= 0
>>>         at java.util.Vector.elementAt( Vector.java:427 )
>>>         at visad.java3d.ShadowFunctionOrSetTypeJ3D.doTransform( ShadowFunctionOrSetTypeJ3D.java:124 )
>>>         at visad.java3d.DefaultRendererJ3D.doTransform( defaultRendererJ3D.java:133 )
>>>         at visad.java3d.RednererJ3D.doAction( RendererJ3D.java:181 )
>>>         at visad.DisplayImpl.doAction( DisplayImpl.java:1709 )
>>>         at visad.ActionImpl.run( ActionImpl.java:364 )
>>>         at visad.util.ThreadPool$ThreadMinnow.run( ThreadPool.java:95 )
>>>    Can I get some idea where I can deal with the error?
>>>      
>>>
>>Can you provide some code which produces this problem?  What is
>>the data type of the field?
>>
>>Don Murray
>>*************************************************************
>>Don Murray                               UCAR Unidata Program
>>dmurray at unidata.ucar.edu                        P.O. Box 3000
>>(303) 497-8628                              Boulder, CO 80307
>>http://www.unidata.ucar.edu/staff/donm
>>*************************************************************
>>
>>
>>==============================================================================
>>To unsubscribe visad, visit:
>>http://www.unidata.ucar.edu/mailing-list-delete-form.html
>>==============================================================================
>>
>>
>> ------------------------------------------------------------------------
>>
>>
>> ------------------------------------------------------------------------
>>


==============================================================================
To unsubscribe visad, visit:
http://www.unidata.ucar.edu/mailing-list-delete-form.html
==============================================================================



More information about the visad mailing list