NOTICE: This version of the NSF Unidata web site (archive.unidata.ucar.edu) is no longer being updated.
Current content can be found at unidata.ucar.edu.

To learn about what's going on, see About the Archive Site.

Re: Weird display problem

  • To: Tennessee James Leeuwenburg <tjl@xxxxxxxxxx>
  • Subject: Re: Weird display problem
  • From: Bill Hibbard <billh@xxxxxxxxxxxxx>
  • Date: Wed, 17 Sep 2003 04:31:18 -0500 (CDT)
Thanks for the detail. Here's a couple things to try:

1. When you add the model "SST-GLOBAL", call:

  display.reAutoScale();

before you call display.addReference().

2. If that doesn't fix the problem, then call the
setContourInterval() method of the ContourControl for your
ScalarMap SST-GLOBAL-ST--SFC -> DisplayIsoContour sometime
after you've passed the ScalarMap to display.addMap().

Let us know if this fixes the problem.

Cheers,
Bill

On 17 Sep 2003, Tennessee James Leeuwenburg wrote:

> Thanks for your help guys! Good suggestions, but here is a more
> blow-by-blow description of the problem. It will address some of the
> issues of ScalarMaps, exactly what is being done etc.
>
> ===================================================
>
> Stage One : Add Model "GASP". This is made up of layers "1000" "850" and
> "200". Printing all the ScalarMaps from the display shows :
>
> map 0 is ScalarMap: Latitude -> DisplayYAxis
> map 1 is ScalarMap: Longitude -> DisplayXAxis
> map 2 is ScalarMap: Time -> DisplayAnimation
> map 3 is ScalarMap: GridLinesLayer_0__lat_text(Text)
>  -> DisplayText
> map 4 is ScalarMap: GridLinesLayer_0__lon_text(Text)
>  -> DisplayText
> map 5 is ScalarMap: GASP-T--1000 -> DisplayIsoContour
> map 6 is ScalarMap: GASP-T---850 -> DisplayIsoContour
> map 7 is ScalarMap: GASP-T---200 -> DisplayIsoContour
>
>
> I can then toggle on any / all of these layers to show data.
>
> ===================================================
>
> Then, I add the model "SST-GLOBAL" This has the layer "SFC". Adding this
> layer and toggling the data on has the effect of causing the text
> "please wait" to be displayed temporarily in the display. The data does
> not appear.
>
> map 0 is ScalarMap: Latitude -> DisplayYAxis
> map 1 is ScalarMap: Longitude -> DisplayXAxis
> map 2 is ScalarMap: Time -> DisplayAnimation
> map 3 is ScalarMap: GridLinesLayer_0__lat_text(Text) -> DisplayText
> map 4 is ScalarMap: GridLinesLayer_0__lon_text(Text) -> DisplayText
> map 5 is ScalarMap: GASP-T--1000 -> DisplayIsoContour
> map 6 is ScalarMap: GASP-T---850 -> DisplayIsoContour
> map 7 is ScalarMap: GASP-T---200 -> DisplayIsoContour
> map 8 is ScalarMap: SST-GLOBAL-ST--SFC -> DisplayIsoContour
>
> I can still toggle any/all of the GASP layers
>
> ===================================================
>
> Then, I remove the model "GASP". In my app, this means :
>
> *Removing the model from the various GUI controls
> *Removing the data reference from the display
> *Removing the data reference from the animation manager
>
> With no further toggling, the data for "SST-GLOBAL" now renders to the
> screen.
>
> map 0 is ScalarMap: Latitude -> DisplayYAxis
> map 1 is ScalarMap: Longitude -> DisplayXAxis
> map 2 is ScalarMap: Time -> DisplayAnimation
> map 3 is ScalarMap: GridLinesLayer_0__lat_text(Text) -> DisplayText
> map 4 is ScalarMap: GridLinesLayer_0__lon_text(Text) -> DisplayText
> map 5 is ScalarMap: GASP-T--1000 -> DisplayIsoContour
> map 6 is ScalarMap: GASP-T---850 -> DisplayIsoContour
> map 7 is ScalarMap: GASP-T---200 -> DisplayIsoContour
> map 8 is ScalarMap: SST-GLOBAL-ST--SFC -> DisplayIsoContour
>
> As you can see, the GASP ScalarMaps are still present, it's just the
> data that is gone.
>
> ====================================================
>
>
> > There is quite a bit of detail in the DataRenderer tutorial.
>
> Thanks, I'll go read that carefully.
>
> > Are the new layers stuck in the toggled on or toggled off
> > state?
>
> They're not so much stuck, as toggling isn't having an effect. The
> layers from one model are working as normal, and the layers from the
> other won't display data even after toggling.
>
> > If you can toggle any layers on and off then there is no
> > deadlock, since all DataRenderer.doAction() methods are
> > invoked in a single loop (at about lines 1684-1699 of
> > DisplayImpl.java).
>
> Then there's no deadlock, because I can still toggle the layers that are
> still 'healthy' so to speak.
>
> > One thing to seriously consider is whether the ScalarMaps
> > from the first models are interfering with the rendering
> > of data from later models. If the later models seem to be
> > stuck off, this could be the explanation. There is no
> > segregation of ScalarMaps by model (as you say, VisAD is
> > unaware of your models) - all ScalarMaps apply to all
> > linked DataReferences.
>
> As in the example above, the ScalarMaps are never getting removed, so
> any effect they are having should persist even after removing the model.
>
> > Let us know if you have more questions or manage to figure
> > this out.
>
> Thanks for your help - it's certainly appreciated!
>
> Also, I am running :
> Linux (Redhat 9)
> Java 1.4.2
> Java3D 1.3 (For linux/OpenGL, by Blackdown)
>
> But we've seen the problem under Windows also...
>
>
> Cheers,
> -T
>
>


  • 2003 messages navigation, sorted by:
    1. Thread
    2. Subject
    3. Author
    4. Date
    5. ↑ Table Of Contents
  • Search the visad archives: