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.
Hi Rob: thanks, I found this bug and will patch 2.2.18. Still looking at the gini stride problem. Rob Weingruber wrote:
Hi John -Looks like I might have found another bug, this time with server-side Netcdf datathat's natively in a lat/lon grid (seems to work if non-LL grid). The method on GridCoordSys: public List getRangesFromLatLonRect(LatLonRect rect) has this snippet of code near the beginning of the method: if (isLatLon()) {minx = getMinOrMaxLon( llpt.getLongitude(), ulpt.getLongitude(), true);miny = Math.min( llpt.getLatitude(), lrpt.getLatitude());maxx = getMinOrMaxLon( urpt.getLongitude(), lrpt.getLongitude(), false);maxy = Math.min( ulpt.getLatitude(), urpt.getLatitude()); } else {...}If I try to geoGrid.subset(....) with a lat/lon bbox that is *bigger* than the data (say I zooom waaaay out, strides = 1), the above code will return, say, a minx and maxx that would extend outside of the data. That's good (i think). But then a few lines later, the followingcode will have problems:if ((xaxis instanceof CoordinateAxis1D) && (yaxis instanceof CoordinateAxis1D)) {CoordinateAxis1D xaxis1 = (CoordinateAxis1D) xaxis; CoordinateAxis1D yaxis1 = (CoordinateAxis1D) yaxis; int minxIndex = xaxis1.findCoordElementBounded(minx); int minyIndex = yaxis1.findCoordElementBounded(miny); int maxxIndex = xaxis1.findCoordElementBounded(maxx); int maxyIndex = yaxis1.findCoordElementBounded(maxy); ArrayList list = new ArrayList(); try {list.add(new Range(Math.min(minyIndex, maxyIndex), Math.max(minyIndex, maxyIndex))); list.add(new Range(Math.min(minxIndex, maxxIndex), Math.max(minxIndex, maxxIndex)));} catch (InvalidRangeException e) { e.printStackTrace(); } If the minx/maxx etc fall outside of the data, then for example, xaxis1.findCoordElementBounded(minx) might return -1, in which case the new Range(....) will throw an exception. Havent tried non-1 strides yet... Here's the url (with tunnel ;-( that I am using: http://www.rap.ucar.edu/projects/rdwx_mdss/thredds.php/dodsC/data/decIR geoGridName = "micron11" And an example data file is attached. ;-) Thanks for listening, and whatever you can do ;-)) Enjoying the conference?? ;-)
netcdf-java
archives: