This archive contains answers to questions sent to Unidata support through mid-2025. Note that the archive is no longer being updated. We provide the archive for reference; many of the answers presented here remain technically correct, even if somewhat outdated. For the most up-to-date information on the use of NSF Unidata software and data services, please consult the Software Documentation first.
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