From 811912ce055e85d49bfc6b8050f9388c4e1db48d Mon Sep 17 00:00:00 2001 From: Piotr Gawron <piotr.gawron@uni.lu> Date: Wed, 28 Jun 2017 15:26:51 +0200 Subject: [PATCH] many semantic zoom levels are created when requested --- .../services/impl/ProjectService.java | 25 ++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/service/src/main/java/lcsb/mapviewer/services/impl/ProjectService.java b/service/src/main/java/lcsb/mapviewer/services/impl/ProjectService.java index 0b95943a44..ae8fcff5f1 100644 --- a/service/src/main/java/lcsb/mapviewer/services/impl/ProjectService.java +++ b/service/src/main/java/lcsb/mapviewer/services/impl/ProjectService.java @@ -758,6 +758,18 @@ public class ProjectService implements IProjectService { topLayout.setHierarchicalView(buildInLayout.isNested()); model.addLayout(0, topLayout); int submodelId = 1; + List<Layout> semanticLevelOverlays = new ArrayList<>(); + if (buildInLayout.equals(BuildInLayout.SEMANTIC)) { + for (int i = 0; i <= model.getZoomLevels(); i++) { + String directory = params.getProjectDir() + "/" + buildInLayout.getDirectorySuffix() + "-" + i + "-" + model.getId() + "/"; + Layout semanticOverlay = new Layout(buildInLayout.getTitle() + "-" + i, directory, true); + semanticOverlay.setStatus(LayoutStatus.NA); + semanticOverlay.setProgress(0.0); + semanticOverlay.setHierarchicalView(buildInLayout.isNested()); + semanticLevelOverlays.add(semanticOverlay); + model.addLayout(1, semanticOverlay); + } + } for (ModelSubmodelConnection connection : model.getSubmodelConnections()) { Layout layout = new Layout(buildInLayout.getTitle(), params.getProjectDir() + "/" + buildInLayout.getDirectorySuffix() + submodelId + "/", true); layout.setStatus(LayoutStatus.NA); @@ -765,10 +777,21 @@ public class ProjectService implements IProjectService { layout.setHierarchicalView(buildInLayout.isNested()); layout.setParentLayout(topLayout); connection.getSubmodel().addLayout(0, layout); - submodelId++; connection.getSubmodel().setZoomLevels(generator.computeZoomLevels(connection.getSubmodel().getModel())); connection.getSubmodel().setTileSize(MapGenerator.TILE_SIZE); + if (buildInLayout.equals(BuildInLayout.SEMANTIC)) { + for (int i = 0; i <= model.getZoomLevels(); i++) { + String directory = params.getProjectDir() + "/" + buildInLayout.getDirectorySuffix() + "-" + i + "-" + submodelId + "/"; + Layout semanticOverlay = new Layout(buildInLayout.getTitle() + "-" + i, directory, true); + semanticOverlay.setStatus(LayoutStatus.NA); + semanticOverlay.setProgress(0.0); + semanticOverlay.setHierarchicalView(buildInLayout.isNested()); + semanticOverlay.setParentLayout(semanticLevelOverlays.get(i)); + connection.getSubmodel().addLayout(1, semanticOverlay); + } + } + submodelId++; } } -- GitLab