From a088987e7ab7005db1bb1da61dfc0cf420e02d78 Mon Sep 17 00:00:00 2001
From: 13693261870 <252740454@qq.com>
Date: 星期三, 13 十一月 2024 17:11:28 +0800
Subject: [PATCH] 1

---
 src/main/java/com/moon/server/helper/GdalHelper.java |   55 ++-----------------------------------------------------
 1 files changed, 2 insertions(+), 53 deletions(-)

diff --git a/src/main/java/com/moon/server/helper/GdalHelper.java b/src/main/java/com/moon/server/helper/GdalHelper.java
index 08ba1cc..4576d60 100644
--- a/src/main/java/com/moon/server/helper/GdalHelper.java
+++ b/src/main/java/com/moon/server/helper/GdalHelper.java
@@ -21,23 +21,16 @@
 import java.util.List;
 import java.util.Map;
 
-/**
- * GDAL甯姪绫�
- * @author WWW
- */
 @SuppressWarnings("ALL")
 public class GdalHelper {
     private final static Log log = LogFactory.getLog(GdalHelper.class);
 
     public static void init(String gdalPath) {
-        // 鏀寔涓枃璺緞
         gdal.SetConfigOption("GDAL_FILENAME_IS_UTF8", "YES");
-        // 灞炴�ц〃鏀寔涓枃锛欳P936
         gdal.SetConfigOption("SHAPE_ENCODING", "");
         gdal.SetConfigOption("PGEO_DRIVER_TEMPLATE", "DRIVER=Microsoft Access Driver (*.mdb, *.accdb);DBQ=%s");
         gdal.SetConfigOption("MDB_DRIVER_TEMPLATE", "DRIVER=Microsoft Access Driver (*.mdb, *.accdb);DBQ=%s");
 
-        // 閰嶇疆鐜鍙橀噺
         if (!StringHelper.isEmpty(gdalPath)) {
             gdal.SetConfigOption("GDAL_DATA", gdalPath + File.separator + "gdal-data");
             gdal.SetConfigOption("PROJ_LIB", gdalPath + File.separator + "proj7" + File.separator + "share");
@@ -50,17 +43,11 @@
             }
         }
 
-        // 娉ㄥ唽鎵�鏈夌殑椹卞姩
         gdal.AllRegister();
         ogr.RegisterAll();
         GeoHelper.initSr();
     }
 
-    /**
-     * 璇诲彇tif鏂囦欢
-     *
-     * @param fileName
-     */
     public static void readTif(String fileName) {
         // 璇诲彇褰卞儚鏁版嵁
         Dataset dataset = gdal.Open(fileName, gdalconstConstants.GA_ReadOnly);
@@ -69,32 +56,23 @@
             return;
         }
 
-        // providing various methods for a format specific driver.
         Driver driver = dataset.GetDriver();
         System.out.println("driver name: " + driver.getLongName());
 
-        // 璇诲彇褰卞儚淇℃伅
         int xSize = dataset.getRasterXSize();
         int ySzie = dataset.getRasterYSize();
         int rasterCount = dataset.getRasterCount();
         System.out.println("dataset xSize: " + xSize + ", ySzie = " + ySzie + ", rasterCount = " + rasterCount);
 
         Band band = dataset.GetRasterBand(1);
-        // the data type of the band.
         int type = band.GetRasterDataType();
         System.out.println("data type = " + type + ", " + (type == gdalconstConstants.GDT_Byte));
 
-        // Frees the native resource associated to a Dataset object and close the file.
         dataset.delete();
 
         gdal.GDALDestroyDriverManager();
     }
 
-    /**
-     * 璇诲彇shp鏂囦欢
-     *
-     * @param filePath
-     */
     public static void readShp(String filePath) {
         try {
             org.gdal.ogr.Driver driver = ogr.GetDriverByName("ESRI shapefile");
@@ -120,10 +98,8 @@
             Map<String, Object> fieldMap = new HashMap(5);
             for (int i = 0, count = featureDefn.GetFieldCount(); i < count; i++) {
                 FieldDefn fieldDefn = featureDefn.GetFieldDefn(i);
-                //寰楀埌灞炴�у瓧娈电被鍨�
                 int fieldType = fieldDefn.GetFieldType();
                 String fieldTypeName = fieldDefn.GetFieldTypeName(fieldType);
-                //寰楀埌灞炴�у瓧娈靛悕绉�
                 String fieldName = fieldDefn.GetName();
 
                 fieldMap.put(fieldTypeName, fieldName);
@@ -159,20 +135,16 @@
             dataSource = driver.Open(filePath, 0);
             int num = dataSource.GetLayerCount();
             for (int i = 0; i < num; i++) {
-                //  鑾峰彇鍥惧眰
                 Layer layer = dataSource.GetLayer(i);
-                // 琛ㄥ悕绉�
                 String strlayerName = layer.GetName();
-                // 鑾峰彇鍥惧眰瑕佹暟涓暟
                 long count = layer.GetFeatureCount();
                 if (0 != count) {
                     do {
-                        // 鑾峰彇鍥惧眰涓嬬殑瑕佺礌
                         Feature feature = layer.GetNextFeature();
                         if (null == feature) {
                             break;
                         }
-                        // 鑾峰彇杈圭晫鍧愭爣
+
                         Geometry geometry = feature.GetGeometryRef();
                         if (geometry != null) {
                             String geometryJson = geometry.ExportToJson();
@@ -192,7 +164,6 @@
                             }
                         }
                         Map map = new HashMap(5);
-                        //鑾峰彇灞炴��
                         for (int p = 0; p < feature.GetFieldCount(); p++) {
                             map.put(feature.GetFieldDefnRef(p).GetName(), getProperty(feature, p));
                         }
@@ -214,11 +185,6 @@
         }
     }
 
-    /**
-     * 璇诲彇gdb鏂囦欢
-     *
-     * @param filePath
-     */
     public static void readGdb(String filePath) {
         try {
             org.gdal.ogr.Driver driver = ogr.GetDriverByName("OpenFileGDB");
@@ -228,20 +194,16 @@
             DataSource dataSource = driver.Open(filePath, 0);
 
             for (int i = 0, count = dataSource.GetLayerCount(); i < count; i++) {
-                // 鑾峰彇鍥惧眰
                 Layer layer = dataSource.GetLayer(i);
                 System.out.println(i + "\t" + layer.GetName());
                 do {
-                    // 鑾峰彇鍥惧眰涓嬬殑瑕佺礌
                     Feature feature = layer.GetNextFeature();
                     if (null == feature) {
                         break;
                     }
-                    // 鑾峰彇鏍峰紡锛岃繖閲屾槸绌猴紝寰呯‘瀹�
+
                     System.out.println(feature.GetStyleString());
-                    // 鑾峰彇geometry锛屼篃鍙互ExportToWkb() gml绛夌瓑
                     System.out.println(feature.GetGeometryRef().ExportToWkt());
-                    // 鑾峰彇灞炴��
                     System.out.println("----------------------------------");
                     for (int p = 0; p < feature.GetFieldCount(); p++) {
                         System.out.println(feature.GetFieldDefnRef(p).GetName() + "\t" + getProperty(feature, p));
@@ -275,26 +237,13 @@
         }
     }
 
-    /**
-     * 灞炴�ц幏鍙栧櫒
-     */
     @FunctionalInterface
     private interface PropertyGetter {
-        /**
-         * 鑾峰彇灞炴��
-         *
-         * @param feature
-         * @param index
-         * @return
-         */
         Object get(Feature feature, int index);
     }
 
     private static final PropertyGetter STRING_PROPERTY_GETTER = (feature, index) -> feature.GetFieldAsString(index);
 
-    /**
-     * feature.GetFieldType(index)寰楀埌涓�涓睘鎬х被鍨嬬殑int鍊�,璇ュ�煎搴斿叿浣撶被鍨�
-     */
     private static final PropertyGetter[] PROPERTY_GETTERS = new PropertyGetter[]{
             // 0-Integer
             (feature, index) -> feature.GetFieldAsInteger(index),

--
Gitblit v1.9.3