月球大数据地理空间分析展示平台-【后端】-月球后台服务
13693261870
2023-09-11 2b9379e1e4a55e637dc370d9881d7bb9bb0793da
src/main/java/com/moon/server/service/data/RasterAnalysisService.java
@@ -134,7 +134,7 @@
        // double rotationX = transform[2]; double rotationY = transform[4]
        double minX = transform[0], pixelWidth = transform[1], maxY = transform[3], pixelHeight = transform[5];
        double[] bounds = new double[6];
        double[] bounds = new double[4];
        polyline.GetEnvelope(bounds);
        double startX = bounds[0], endX = bounds[1], startY = bounds[2], endY = bounds[3];
@@ -169,13 +169,13 @@
        double[] transform = ds.GetGeoTransform();
        // double rotationX = transform[2]; double rotationY = transform[4]
        double minX = transform[0], pixelWidth = transform[1], maxY = transform[3], pixelHeight = transform[5];
        double[] env = new double[6];
        double[] env = new double[4];
        polygon.GetEnvelope(env);
        int xMinPixel = (int) Math.floor((env[0] - minX) / pixelWidth);
        int yMinPixel = (int) Math.floor((maxY - env[3]) / Math.abs(pixelHeight));
        int yMinPixel = (int) Math.floor((maxY - env[2]) / Math.abs(pixelHeight));
        int xMaxPixel = (int) Math.floor((env[1] - minX) / pixelWidth);
        int yMaxPixel = (int) Math.floor((maxY - env[2]) / Math.abs(pixelHeight));
        int yMaxPixel = (int) Math.floor((maxY - env[3]) / Math.abs(pixelHeight));
        int bandCount = ds.getRasterCount();
        int geoWidth = Math.abs(xMaxPixel - xMinPixel);