protected CoverageAsFeatureDatasetPoint(FeatureType featureType) { super(featureType); CoverageAsStationFeatureCollection fc = new CoverageAsStationFeatureCollection(gcd.getName() + " AsStationFeatureCollection", dateUnit, null); setPointFeatureCollection(fc); List<VariableSimpleIF> dataVars = new ArrayList<>(); for (VarData vd : varData) { // String name, String desc, String units, DataType dt VariableSimpleIF simple = VariableSimpleImpl.makeScalar(vd.cov.getName(), vd.cov.getDescription(), vd.cov.getUnitsString(), vd.cov.getDataType()); dataVars.add(simple); } this.dataVariables = dataVars; } }
public Coverage(Coverage from, CoverageCoordSys coordSysSubset) { this.name = from.getName(); this.dataType = from.getDataType(); this.atts = from.atts; this.units = from.getUnitsString(); this.description = from.getDescription(); this.coordSysName = (coordSysSubset != null) ? coordSysSubset.getName() : from.coordSysName; this.reader = from.reader; this.user = from.user; }
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; }
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; }