diff --git a/docker-compose.yml b/docker-compose.yml index 4366e3df..55baaddd 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -3,7 +3,8 @@ version: '2.1' services: server: build: pav-server + mem_limit: 512m + ports: + - "9000:8080" environment: - SPRING_PROFILES_ACTIVE=local - ports: - - "9000:8080" \ No newline at end of file diff --git a/pav-server/src/main/java/com/palnet/biz/config/InitRunner.java b/pav-server/src/main/java/com/palnet/biz/config/InitRunner.java index a1b28a23..a35fa82d 100644 --- a/pav-server/src/main/java/com/palnet/biz/config/InitRunner.java +++ b/pav-server/src/main/java/com/palnet/biz/config/InitRunner.java @@ -15,7 +15,7 @@ public class InitRunner implements ApplicationRunner { log.info("===== InitRunner run ====="); // DEM(Digital Elevation Model load try { - DigitalElevationModelUtils.getInstance(); + DigitalElevationModelUtils demUtils = DigitalElevationModelUtils.getInstance(); } catch (Exception e) { log.warn("===== InitRunner run error[DigitalElevationModelUtils] : {}", e.getMessage()); } diff --git a/pav-server/src/main/java/com/palnet/comn/utils/DigitalElevationModelUtils.java b/pav-server/src/main/java/com/palnet/comn/utils/DigitalElevationModelUtils.java index 63fab323..7561f115 100644 --- a/pav-server/src/main/java/com/palnet/comn/utils/DigitalElevationModelUtils.java +++ b/pav-server/src/main/java/com/palnet/comn/utils/DigitalElevationModelUtils.java @@ -5,7 +5,6 @@ import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; import lombok.extern.slf4j.Slf4j; -import org.apache.commons.io.FileUtils; import org.geotools.coverage.grid.GridCoordinates2D; import org.geotools.coverage.grid.GridCoverage2D; import org.geotools.coverage.grid.GridGeometry2D; @@ -23,8 +22,6 @@ import org.springframework.core.io.support.PathMatchingResourcePatternResolver; import org.springframework.core.io.support.ResourcePatternResolver; import java.awt.image.Raster; -import java.io.File; -import java.io.IOException; import java.util.ArrayList; import java.util.List; @@ -32,6 +29,7 @@ import java.util.List; public class DigitalElevationModelUtils { private final String CLASS_PATH = "map/dem"; private List dems; +// private List private DigitalElevationModelUtils() { // 초기화 @@ -54,27 +52,23 @@ public class DigitalElevationModelUtils { List demList = new ArrayList<>(); // 클래스 경로 내의 디렉토리 내의 모든 파일을 검색합니다. try { - Resource[] resources = resolver.getResources("classpath:" + CLASS_PATH + "/dem_*.tif"); + Resource[] resources = resolver.getResources("classpath:" + CLASS_PATH + "/dem_korea_012.tif"); for (Resource resource : resources) { - + log.info("load file name : {}", resource.getFilename()); if (!resource.exists()) { log.info("this is not file : {}", resource.getFilename()); continue; } - File file = File.createTempFile("dem", ".tif"); - FileUtils.copyInputStreamToFile(resource.getInputStream(), file); - - log.info(">>> file : {}", file); - log.info(">>> file : {}", file.exists()); - log.info(">>> file : {}", file.isFile()); - - AbstractGridFormat format = GridFormatFinder.findFormat(file); - GridCoverage2DReader reader = format.getReader(file); + AbstractGridFormat format = GridFormatFinder.findFormat(resource.getInputStream()); + GridCoverage2DReader reader = format.getReader(resource.getInputStream()); GridCoverage2D coverage = reader.read(null); Raster raster = coverage.getRenderedImage().getData(); + log.info(">>> coverage : {}", coverage); + log.info(">>> raster : {}", raster); + demList.add(DigitalElevationModel.builder() .coverage(coverage) .raster(raster) @@ -83,8 +77,11 @@ public class DigitalElevationModelUtils { } } catch (Exception e) { log.warn("dem load error : {}", e.getMessage()); + log.error("", e); } +// log.info(">>> demList size : {}", demList); log.info(">>> demList size : {}", demList.size()); + this.dems = demList; } @@ -101,6 +98,7 @@ public class DigitalElevationModelUtils { for (DigitalElevationModel dem : this.dems) { Raster raster = dem.getRaster(); +// if(raster == null) raster = dem.getCoverage().getRenderedImage().getData(); GridGeometry2D gridGeometry = dem.getCoverage().getGridGeometry(); GridCoordinates2D posGrid = null; diff --git a/pav-server/src/main/resources/map/dem/dem_korea_010.tif b/pav-server/src/main/resources/map/dem/dem_korea_010.tif new file mode 100644 index 00000000..1dc05a68 Binary files /dev/null and b/pav-server/src/main/resources/map/dem/dem_korea_010.tif differ diff --git a/pav-server/src/main/resources/map/dem/dem_korea_011.tif b/pav-server/src/main/resources/map/dem/dem_korea_011.tif new file mode 100644 index 00000000..072a2477 Binary files /dev/null and b/pav-server/src/main/resources/map/dem/dem_korea_011.tif differ diff --git a/pav-server/src/main/resources/map/dem/dem_korea_012.tif b/pav-server/src/main/resources/map/dem/dem_korea_012.tif new file mode 100644 index 00000000..3b938499 Binary files /dev/null and b/pav-server/src/main/resources/map/dem/dem_korea_012.tif differ