public MyLocation(EarthLocation from) { this.lat = from.getLatitude(); this.lon = from.getLongitude(); this.alt = Double.isNaN(from.getAltitude()) ? 0.0 : from.getAltitude(); }
public void writeRecord(PointObsDatatype pobs, StructureData sdata) throws IOException { if (debug) System.out.println("pobs= " + pobs); ucar.unidata.geoloc.EarthLocation loc = pobs.getLocation(); int count = writeCoordinates(loc.getLatitude(), loc.getLongitude(), loc.getAltitude(), pobs.getObservationTimeAsDate()); for (int i = count; i < recordVars.size(); i++) { Variable v = recordVars.get(i); if (debug) System.out.println(" var= " + v.getShortName()); //assert v.hasCachedData(); ?? v.setCachedData( sdata.getArray(v.getShortName()), false); } ncfileOut.writeRecordData(recordVars); }
public void writeRecord(PointObsDatatype pobs, StructureData sdata) throws IOException { if (debug) System.out.println("pobs= " + pobs); ucar.unidata.geoloc.EarthLocation loc = pobs.getLocation(); int count = writeCoordinates(loc.getLatitude(), loc.getLongitude(), loc.getAltitude(), pobs.getObservationTimeAsDate()); for (int i = count; i < recordVars.size(); i++) { Variable v = recordVars.get(i); if (debug) System.out.println(" var= " + v.getShortName()); //assert v.hasCachedData(); ?? v.setCachedData( sdata.getArray(v.getShortName()), false); } ncfileOut.writeRecordData(recordVars); }
public void writeRecord(PointFeature pf, StructureData sdata) throws IOException { if (debug) System.out.println("PointFeature= " + pf); EarthLocation loc = pf.getLocation(); int count = writeCoordinates(loc.getLatitude(), loc.getLongitude(), loc.getAltitude(), pf.getObservationTimeAsDate()); for (int i = count; i < recordVars.size(); i++) { Variable v = recordVars.get(i); v.setCachedData(sdata.getArray(v.getShortName()), false); } ncfileOut.writeRecordData(recordVars); }
public void writeRecord(PointObsDatatype pobs, StructureData sdata) throws IOException { if (debug) System.out.println("pobs= " + pobs); ucar.unidata.geoloc.EarthLocation loc = pobs.getLocation(); int count = writeCoordinates(loc.getLatitude(), loc.getLongitude(), loc.getAltitude(), pobs.getObservationTimeAsDate()); for (int i = count; i < recordVars.size(); i++) { Variable v = recordVars.get(i); if (debug) System.out.println(" var= " + v.getShortName()); //assert v.hasCachedData(); ?? v.setCachedData( sdata.getArray(v.getShortName()), false); } ncfileOut.writeRecordData(recordVars); }
public void writeRecord(PointFeature pf, StructureData sdata) throws IOException { if (debug) System.out.println("PointFeature= " + pf); EarthLocation loc = pf.getLocation(); int count = writeCoordinates(loc.getLatitude(), loc.getLongitude(), loc.getAltitude(), pf.getObservationTimeAsDate()); for (int i = count; i < recordVars.size(); i++) { Variable v = recordVars.get(i); v.setCachedData(sdata.getArray(v.getShortName()), false); } ncfileOut.writeRecordData(recordVars); }
public void writeRecord(PointFeature pf, StructureData sdata) throws IOException { if (debug) System.out.println("PointFeature= " + pf); EarthLocation loc = pf.getLocation(); int count = writeCoordinates(loc.getLatitude(), loc.getLongitude(), loc.getAltitude(), pf.getObservationTimeAsCalendarDate().toDate()); for (int i = count; i < recordVars.size(); i++) { Variable v = recordVars.get(i); v.setCachedData(sdata.getArray(v.getShortName()), false); } ncfileOut.writeRecordData(recordVars); }
public static boolean equals(EarthLocation loc1, EarthLocation loc2) { if (loc1 == loc2) { return true; } else if (loc1 == null || loc2 == null) { return false; } if (!loc1.getLatLon().nearlyEquals(loc2.getLatLon(), 1.0e-8)) { return false; } else if (!Misc.nearlyEquals(loc1.getAltitude(), loc2.getAltitude(), 1.0e-8)) { return false; } else if (!Objects.deepEquals(loc1.isMissing(), loc2.isMissing())) { return false; } return true; }
public void writeObsData(PointFeature pf) throws IOException { StructureDataScalar coords = new StructureDataScalar("Coords"); coords.addMember(altitudeCoordinateName, null, null, DataType.DOUBLE, false, pf.getLocation().getAltitude()); StructureDataComposite sdall = new StructureDataComposite(); sdall.add(coords); // coords first so it takes precedence sdall.add(pf.getFeatureData()); obsRecno = super.writeStructureData(obsRecno, record, sdall, dataMap); }
public void writeObsData(PointFeature pf) throws IOException { StructureDataScalar coords = new StructureDataScalar("Coords"); if (useAlt) coords.addMember(altitudeCoordinateName, null, null, DataType.DOUBLE, false, pf.getLocation().getAltitude()); StructureDataComposite sdall = new StructureDataComposite(); sdall.add(coords); // coords first so it takes precedence sdall.add(pf.getFeatureData()); obsRecno = super.writeStructureData(obsRecno, record, sdall, dataMap); }
public void writeObsData(PointFeature pf) throws IOException { StructureDataScalar coords = new StructureDataScalar("Coords"); if (useAlt) coords.addMember(altitudeCoordinateName, null, null, DataType.DOUBLE, pf.getLocation().getAltitude()); StructureDataComposite sdall = new StructureDataComposite(); sdall.add(coords); // coords first so it takes precedence sdall.add(pf.getFeatureData()); obsRecno = super.writeStructureData(obsRecno, record, sdall, dataMap); }
public void writeObsData(PointFeature pf) throws IOException { StructureDataScalar coords = new StructureDataScalar("Coords"); if (useAlt) coords.addMember(altitudeCoordinateName, null, null, DataType.DOUBLE, pf.getLocation().getAltitude()); StructureDataComposite sdall = new StructureDataComposite(); sdall.add(coords); // coords first so it takes precedence sdall.add(pf.getFeatureData()); obsRecno = super.writeStructureData(obsRecno, record, sdall, dataMap); }
public void writeObsData(PointFeature pf) throws IOException { StructureDataScalar coords = new StructureDataScalar("Coords"); if (useAlt) coords.addMember(altitudeCoordinateName, null, null, DataType.DOUBLE, false, pf.getLocation().getAltitude()); StructureDataComposite sdall = new StructureDataComposite(); sdall.add(coords); // coords first so it takes precedence sdall.add(pf.getFeatureData()); obsRecno = super.writeStructureData(obsRecno, record, sdall, dataMap); }
public void writeObsData(PointFeature pf) throws IOException { StructureDataScalar coords = new StructureDataScalar("Coords"); coords.addMember(altitudeCoordinateName, null, null, DataType.DOUBLE, pf.getLocation().getAltitude()); StructureDataComposite sdall = new StructureDataComposite(); sdall.add(coords); // coords first so it takes precedence sdall.add(pf.getFeatureData()); obsRecno = super.writeStructureData(obsRecno, record, sdall, dataMap); }
public void writeRecord(double timeCoordValue, CalendarDate obsDate, EarthLocation loc, StructureData sdata) throws IOException { trackBB(loc.getLatLon(), obsDate); StructureDataScalar coords = new StructureDataScalar("Coords"); coords.addMember(timeName, null, null, DataType.DOUBLE, false, timeCoordValue); coords.addMember(latName, null, null, DataType.DOUBLE, false, loc.getLatitude()); coords.addMember(lonName, null, null, DataType.DOUBLE, false, loc.getLongitude()); if (altUnits != null) coords.addMember(altName, null, null, DataType.DOUBLE, false, loc.getAltitude()); StructureDataComposite sdall = new StructureDataComposite(); sdall.add(coords); // coords first so it takes precedence sdall.add(sdata); obsRecno = super.writeStructureData(obsRecno, record, sdall, dataMap); }
public void writeRecord(double timeCoordValue, CalendarDate obsDate, EarthLocation loc, StructureData sdata) throws IOException { trackBB(loc.getLatLon(), obsDate); StructureDataScalar coords = new StructureDataScalar("Coords"); coords.addMember(timeName, null, null, DataType.DOUBLE, timeCoordValue); coords.addMember(latName, null, null, DataType.DOUBLE, loc.getLatitude()); coords.addMember(lonName, null, null, DataType.DOUBLE, loc.getLongitude()); if (altUnits != null) coords.addMember(altName, null, null, DataType.DOUBLE, loc.getAltitude()); StructureDataComposite sdall = new StructureDataComposite(); sdall.add(coords); // coords first so it takes precedence sdall.add(sdata); obsRecno = super.writeStructureData(obsRecno, record, sdall, dataMap); }
public void writeObsData(PointFeature pf) throws IOException { EarthLocation loc = pf.getLocation(); trackBB(loc.getLatLon(), timeUnit.makeCalendarDate(pf.getObservationTime())); StructureDataScalar coords = new StructureDataScalar("Coords"); coords.addMember(timeName, null, null, DataType.DOUBLE, false, pf.getObservationTime()); coords.addMember(latName, null, null, DataType.DOUBLE, false, loc.getLatitude()); coords.addMember(lonName, null, null, DataType.DOUBLE, false, loc.getLongitude()); if (altUnits != null) coords.addMember(altName, null, null, DataType.DOUBLE, false, loc.getAltitude()); StructureDataComposite sdall = new StructureDataComposite(); sdall.add(coords); // coords first so it takes precedence sdall.add(pf.getFeatureData()); obsRecno = super.writeStructureData(obsRecno, record, sdall, dataMap); }
public void writeObsData(PointFeature pf) throws IOException { EarthLocation loc = pf.getLocation(); trackBB(loc.getLatLon(), timeUnit.makeCalendarDate(pf.getObservationTime())); StructureDataScalar coords = new StructureDataScalar("Coords"); coords.addMember(timeName, null, null, DataType.DOUBLE, pf.getObservationTime()); coords.addMember(latName, null, null, DataType.DOUBLE, loc.getLatitude()); coords.addMember(lonName, null, null, DataType.DOUBLE, loc.getLongitude()); if (altUnits != null) coords.addMember(altName, null, null, DataType.DOUBLE, loc.getAltitude()); StructureDataComposite sdall = new StructureDataComposite(); sdall.add(coords); // coords first so it takes precedence sdall.add(pf.getFeatureData()); obsRecno = super.writeStructureData(obsRecno, record, sdall, dataMap); }
private static void testRadialVariable(RadialDatasetSweep.RadialVariable rv) throws IOException { //ucar.nc2.dt.radial.RadialCoordSys rcsys = rv.getRadialCoordSys(); //assert rcsys != null; int nsweep = rv.getNumSweeps(); if (nsweep != 1) { } Sweep sw = rv.getSweep(0); int nrays = sw.getRadialNumber(); sw.readData(); for (int i = 0; i < nrays; i++) { sw.getGateNumber(); sw.readData(i); sw.getAzimuth(i); sw.getElevation(i); sw.getTime(i); sw.getRangeToFirstGate(); sw.getBeamWidth(); sw.getGateSize(); sw.getOrigin(i).getLatitude(); sw.getOrigin(i).getLongitude(); sw.getOrigin(i).getAltitude(); } }
@Test public void testSweeps() throws IOException { try (RadialDatasetSweep ds = testData()) { RadialDatasetSweep.RadialVariable var = (RadialDatasetSweep.RadialVariable) ds.getDataVariable("DBZ"); Assert.assertEquals(9, var.getNumSweeps()); Assert.assertEquals(22.526699, var.getSweep(0).getOrigin(0).getLatitude(), 1e-6); Assert.assertEquals(120.43350219726, var.getSweep(0).getOrigin(0).getLongitude(), 1e-6); Assert.assertEquals(45, var.getSweep(0).getOrigin(0).getAltitude(), 1e-5); Assert.assertEquals(0.379, var.getSweep(0).getElevation(0), 1e-6); final int firstRads = 483; Assert.assertEquals(firstRads, var.getSweep(0).getRadialNumber()); Assert.assertEquals(0.5109, var.getSweep(0).getElevation(firstRads - 1), 1e-6); Assert.assertEquals(0.9998, var.getSweep(1).getElevation(1), 1e-6); } }