[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[IDV #AUV-614403]: Track control and Animation



Hi Maswood,
Sorry, your support request got lost in a long list of requests.
Are you still having problems with the trackcontrol?

Jeff

> 
> I am trying to draw different kinds of display and/or animation .According
> to your previous suggestions, I did experiment with
> ucar.unidata.idv.control.TrackControl.java ,
> ucar.visad.display.TrackDisplayable and related java files.
> 
> 
> And it seems that all the methods to draw the tracks , are called within the
> "init()" method of TrackControl.java.
> As of my understanding that to modify the track display, we do not need any
> kind of animation yet the method  "getAnimation();" is called inside  the
> init() method of ucar.unidata.idv.control.TrackControl.java . Could you
> please tell me what is necessity of this function here as I failed to
> comprehend after debugging several times.
> 
> And I am  wondering how and where to use "addReference" or any other method
> in TrackControl.java inside the init() method to add multiple display when
> the track is drawn  and also where the variables [latitude, longitude , etc
> which are read from .csv/track files] are stored  in the TrackControl.java ,
> so that we can manipulate or create different data structure, datareference
> using those variables and then add other forms display here when the main
> track is drawn.
> 
> 
> As there is not animation involved here, it seems that only creating data
> structure and/or manipualting data and then add those data reference here
> would create multiple track or other form of display.
> 
> 
> And which java files/where it need to be modified if we would like to create
> animation i.e. according to time - > the display would change.
> 
> 
> Thank you in advance for any kind of hints or suggestion.
> 
> Maswood
> 
> 
> 
> address@hidden> wrote:
> 
> > Hi Maswood-
> >
> > > I have a problem of displaying turtle track and I would like to
> > > modify/augment/extend the code of IDV.
> > >
> > > Here is the screen shot displayed by IDV. This is a turtle track .
> > >
> > > So I'd like to visualize transparency in this track and modify the width
> > of
> > > the track based on other  variables.
> >
> > You can map a parameter to alpha, but not to line width.  LineWidth is a
> > VisAD ConstantMap only and is a single value.
> >
> > > As the IDV is build on top of Visad and most of the displayed function is
> > > inherited from visad , I
> > > was thinking of changing the code of visad.
> > >
> > > There is a section in visad about how to implement transparency using an
> > > Alpha Map section in "4.6: Transparency "
> > >
> > > http://www.ssec.wisc.edu/~billh/tutorial/s4/Section4.html<http://www.ssec.wisc.edu/%7Ebillh/tutorial/s4/Section4.html>
> > >
> > > In this example when the height is high, the object is less
> > > transparent(opaque).
> > >
> > > where I'd like to display that when time frame is earlier, the track
> > would
> > > be less transparent.
> > > the more recent the times, the track would be more transparent.
> > >
> > > The problem is its : not clear  where and how IDV uses "Visad display
> > > function" to plot or visualizes the track
> > > and which class/function  need be to modified for that.
> >
> > The IDV wraps a lot of the VisAD ScalarMap functionality in the
> > DisplayMaster/Displayable classes in ucar.visad.display.  A DisplayableData
> > object wraps a DataReference and the ScalarMaps/ConstantMaps applicable to
> > the data in the DataReference.  The DisplayMaster is a wrapper for the VisAD
> > DisplayImpl.  There is some information in the IDV Workshop materials:
> >
> >
> > http://www.unidata.ucar.edu/software/IDV/docs/workshop/dev/data/VisADDisplayModel.html
> >
> > One way to do what you want without changing any code is the following:
> >
> > - Load in your track.
> > - Select the Formulas Data Source and then the Grids->One value colored by
> > another formula and select the Plan View->Color-Filled Contour Plan View
> > display and click Create Display.
> > - When the Field Selector pops up, select the parameter you want to display
> > for the "Data field" and the Track->Basic->Time field for the "Color field"
> > and click OK.  That will plot the data colored by time.
> > - Now, for that display, select the Edit->Color Table->Edit Color Table
> > menu to bring up the color table editor.  In the editor:
> >  - Click the Transparency radio button and set a desired transparency for
> > the old time data.
> >  - in the color bar, click on the left side of the bar to set the
> > transparency for the low time value.
> >  - then right click on the color bar and select the Edit
> > Colors->Transparency->Interpolate->Right menu from the popup menu to
> > interpolate the transparency from the low to high values.
> >
> > That will display your track with older times more transparent than newer
> > times.
> >
> > I know that's not intuitive, but it does provide the right combination of
> > ScalarMaps to get the job done.
> >
> > However, if you want to use a track control and the associated features it
> > provides (e.g. animation), then you would need to modify/subclass the
> > ucar.unidata.idv.control.TrackControl and/or
> > ucar.visad.display.TrackDisplayable to set the color table based on the
> > shown times.
> >
> > > Any kind of suggestion would be greatly helpful and appreciated.
> >
> > Don Murray
> >
> >
> 
> 


Ticket Details
===================
Ticket ID: AUV-614403
Department: Support IDV
Priority: Critical
Status: Closed


NOTE: All email exchanges with Unidata User Support are recorded in the Unidata inquiry tracking system and then made publicly available through the web. If you do not want to have your interactions made available in this way, you must let us know in each email you send to us.