public Coverage findCoverageByAttribute(String attName, String attValue) { for (Coverage cov : coverageMap.values()) { for (Attribute att : cov.getAttributes()) if (attName.equals(att.getShortName()) && attValue.equals(att.getStringValue())) return cov; } return null; }
private void addCoverages(CoverageCollection subsetDataset, NetcdfFileWriter writer) { for (Coverage grid : subsetDataset.getCoverages()) { Variable v = writer.addVariable(null, grid.getName(), grid.getDataType(), grid.getIndependentAxisNamesOrdered()); addVariableAttributes(v, grid.getAttributes()); } }
CdmrFeatureProto.Coverage.Builder encodeGrid(Coverage grid) { CdmrFeatureProto.Coverage.Builder builder = CdmrFeatureProto.Coverage.newBuilder(); builder.setName(grid.getName()); builder.setDataType(NcStream.convertDataType(grid.getDataType())); for (Attribute att : grid.getAttributes()) builder.addAtts(NcStream.encodeAtt(att)); builder.setUnits(grid.getUnitsString()); builder.setDescription(grid.getDescription()); builder.setCoordSys(grid.getCoordSysName()); return builder; }
private Element writeGrid(Coverage grid) { Element varElem = new Element("grid"); varElem.setAttribute("name", grid.getName()); String desc = grid.getDescription() != null ? grid.getDescription() : "No description"; varElem.setAttribute("desc", desc); /* StringBuilder buff = new StringBuilder(); List dims = grid.getDimensions(); for (int i = 0; i < dims.size(); i++) { Dimension dim = (Dimension) dims.get(i); if (i > 0) buff.append(" "); if (dim.isShared()) buff.append(dim.getShortName()); else buff.append(dim.getLength()); } if (buff.length() > 0) varElem.setAttribute("shape", buff.toString()); */ DataType dt = grid.getDataType(); if (dt != null) varElem.setAttribute("type", dt.toString()); //GridCoordSystem cs = grid.getCoordinateSystem(); //varElem.setAttribute("coordSys", cs.getName()); // attributes for (ucar.nc2.Attribute att : grid.getAttributes()) { varElem.addContent(ncmlWriter.makeAttributeElement(att)); } return varElem; }