| | |
| | | } |
| | | } |
| | | |
| | | public static void Resample(Dataset ds, String dest, int width, int height, LayerDto layer) { |
| | | public static void cutAndResample(Dataset ds, String dest, int width, int height, |
| | | LayerDto layer, boolean resample) { |
| | | Vector<String> vector = new Vector<>(); |
| | | //vector.add("-s_srs"); |
| | | //vector.add("EPSG:" + 4548); |
| | |
| | | //vector.add("" + layer.getExtension().getMaxy()); |
| | | //vector.add("-te_srs"); |
| | | //vector.add("EPSG:" + 4326); |
| | | if (resample) { |
| | | vector.add("-r"); |
| | | vector.add("bilinear"); // 双线性插值 |
| | | vector.add("-of"); |
| | | vector.add("GTiff"); |
| | | } |
| | | WarpOptions warpOptions = new WarpOptions(vector); |
| | | |
| | | Dataset destDs = gdal.Warp(dest, new Dataset[]{ds}, warpOptions); |
| | | destDs.delete(); |
| | | } |
| | | |
| | | public static void Resample(Dataset ds, Integer targetEpsg, String dest, Double destNoData, String wkt, Integer width, Integer height) { |
| | | public static void cutAndResample(Dataset ds, Integer targetEpsg, String dest, Double destNoData, String wkt, Integer width, Integer height) { |
| | | Vector<String> vector = new Vector<>(); |
| | | if (targetEpsg != null) { |
| | | //vector.add("-s_srs"); |
| | |
| | | if (null != destDs) destDs.delete(); |
| | | } |
| | | |
| | | public static void Resample2(Dataset ds, String dest, int width, int height, LayerDto layer) { |
| | | public static void coordinateTransformAndResample(Dataset ds, String dest, int width, int height, |
| | | LayerDto layer, boolean resample) { |
| | | Vector<String> vector = new Vector<>(); |
| | | vector.add("-s_srs"); |
| | | vector.add("EPSG:" + 4548); |
| | |
| | | //vector.add("" + layer.getExtension().getMaxy()); |
| | | //vector.add("-te_srs"); |
| | | //vector.add("EPSG:" + 4326); |
| | | if (resample) { |
| | | vector.add("-r"); |
| | | // vector.add("average"); |
| | | vector.add("cubic"); |
| | | vector.add("-of"); |
| | | vector.add("GTiff"); |
| | | } |
| | | WarpOptions warpOptions = new WarpOptions(vector); |
| | | |
| | | Dataset destDs = gdal.Warp(dest, new Dataset[]{ds}, warpOptions); |