> The problem exists in my plugin code. It's copied from > ucar.unidata.data.profiler.AddeProfilerDataSource. > Can you fix the problem and send me the corrected source code? Howard, I have a fix for this bug, and see the attached file. I am not sure if you need to set these two apis to public, I think if you overwrite the getObs() api, and getObs is private, so you only need to have them protected, and this is what I did, let me know if you have issues with it. Yuan > > Would you make recastProfilerSingleStationData and > recastProfilerMultiStationData methods as public static in > ucar.unidata.data.profiler.AddeProfilerDataSource? > > Thank you, > Howard > > recastProfilerMultiStationData method at AddeProfilerDataSource: > > In the loop, the first timestamp is added to timesList, but obFFsList is > not added because dirspd is null. So always, obFFsList contains one less > than timesList (Last timestamp is execluded). > The number of timestamp is decided by obFFsList. > > Here is part of source code: > > List<DateTime> timesList = new ArrayList<DateTime>(); > List<RealTuple> dsList = new ArrayList<RealTuple>(); > List<FlatField> obFFsList = new ArrayList<FlatField>(); > RealTuple dirspd = null; > > for (int i = 0; i < indexSet.getLength(); i++) { > > if (thisobsdatetime.equals(cdatetime)) { > // check altitude of this ob > ... do something ... > } else { > // have read a new time. > // finalize previous time's group (all z-> dir spd groups) > // but only if you are dealing with a "timecount" to save > if (timecount % obInt == 0) { > // first make sure have processed some data; > // (is not very first item in list) > > if (dirspd != null) { > ... do something ... > obFFsList.add(onetimeFF); > } > } // if final time is at right time interval > > // if this group time counter is at the right interval > if (timecount % obInt == 0) { > ... do something ... > timesList.add(dateTime); > } > } > } > > > > On 5/21/2010 1:42 PM, Unidata IDV Support wrote: > >> The last timestamp is excluded with 3D View. > >> > > > > Howard, > > I check the display control "ProfilerMultiStationControl", and the > > time steps from the fieldImpl is correct, so you need to check the > > datasource where this fieldImpl is generated to make sure all the time step > > being counted. > > > > > > Yuan > >> > >> - Install the attached plugin > >> - "Observations" --> "ATEC Data" from Data Chooser > >> - Select "ATEC Wind Profiler" From Observation Data > >> - Select "6 most recent" from time option > >> - Click Add Source button > >> - Pick all stations > >> - Select "3D View" > >> - Click Create Display button > >> - Check the timestamps > >> > >> - Back to "Field Selector" > >> - Right mouse click from "https://dpg-..." > >> - Click Properties > >> - Copy Name > >> - Open Web Browser like FireFox > >> - Paste the copied URL > >> - Download the profiler data and check the timestamps > >> OR > >> - Back to "Field Selector" > >> - Select "NEHIGH" after expanding "Profiler winds" > >> - Select Time/Height Display > >> - Click Create Display > >> - Compare the "display panel" for "NEHIGH" and the the timestamps in Map > >> View > >> ===> Map View shows one less (the latest timestamp is missing at the Map > >> View > >> > >> > > > > > > Ticket Details > > =================== > > Ticket ID: ILQ-577350 > > Department: Support IDV > > Priority: Normal > > Status: Open > > Ticket Details =================== Ticket ID: ILQ-577350 Department: Support IDV Priority: Normal Status: Closed
Attachment:
AddeProfilerDataSource.java
Description: Binary data