annotate artifacts/src/main/java/org/dive4elements/river/artifacts/map/PrintMap.java @ 5863:4897a58c8746

River artifacts: Added new copyright headers.
author Sascha L. Teichmann <teichmann@intevation.de>
date Sun, 28 Apr 2013 14:40:59 +0200
parents 5aa05a7a34b7
children af13ceeba52a
rev   line source
5863
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
1 /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
2 * Software engineering by Intevation GmbH
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
3 *
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
4 * This file is Free Software under the GNU AGPL (>=v3)
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
5 * and comes with ABSOLUTELY NO WARRANTY! Check out the
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
6 * documentation coming with Dive4Elements River for details.
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
7 */
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
8
5831
bd047b71ab37 Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents: 3087
diff changeset
9 package org.dive4elements.river.artifacts.map;
2328
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
10
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
11 import java.awt.Color;
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
12 import java.awt.Rectangle;
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
13
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
14 import java.io.File;
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
15 import java.io.IOException;
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
16
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
17 import java.awt.Graphics2D;
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
18 import java.awt.image.BufferedImage;
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
19
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
20 import java.util.List;
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
21
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
22 import java.net.URL;
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
23 import java.net.MalformedURLException;
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
24
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
25 import javax.imageio.ImageIO;
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
26
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
27
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
28 import org.geotools.data.ows.Layer;
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
29 import org.geotools.data.ows.WMSCapabilities;
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
30 import org.geotools.data.wms.WebMapServer;
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
31 import org.geotools.geometry.jts.ReferencedEnvelope;
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
32 import org.geotools.map.MapContext;
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
33 import org.geotools.map.WMSMapLayer;
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
34 import org.geotools.ows.ServiceException;
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
35 import org.geotools.renderer.lite.StreamingRenderer;
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
36 import org.geotools.renderer.GTRenderer;
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
37
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
38
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
39 public class PrintMap {
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
40
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
41 public static final String DEFAULT_WMS = "http://map1.naturschutz.rlp.de/service_lanis/mod_wms/wms_getmap.php?mapfile=group_gdide&REQUEST=GetCapabilities&SERVICE=WMS";
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
42 public static final String DEFAULT_OUTFILE = "~/map.jpeg";
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
43
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
44 public static final String MAPSERVER = System.getProperty("wms", DEFAULT_WMS);
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
45 public static final String MAP_IMAGE = System.getProperty("outfile", DEFAULT_OUTFILE);
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
46
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
47
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
48 public static void main(String[] args) {
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
49 System.out.println("-> start PrintMap");
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
50 System.out.println(" -> Print layers of WMS: " + MAPSERVER);
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
51
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
52 try {
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
53 WebMapServer server = getMapserver();
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
54 WMSMapLayer[] wmsLayer = getWMSLayers(server);
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
55
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
56 MapContext mapcontent = new MapContext( wmsLayer );
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
57 mapcontent.setTitle(" NEW MAP CONTENT TITLE ");
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
58
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
59 printMap(mapcontent);
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
60 }
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
61 catch (Exception e) {
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
62 e.printStackTrace();
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
63 }
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
64
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
65 System.out.println("-> finished PrintMap");
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
66 }
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
67
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
68
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
69 public static void printMap(MapContext map) throws Exception {
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
70 int imageWidth = 600;
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
71
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
72 GTRenderer renderer = new StreamingRenderer();
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
73 renderer.setContext(map);
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
74
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
75 Rectangle imageBounds = null;
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
76 ReferencedEnvelope mapBounds = null;
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
77
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
78 try {
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
79 mapBounds = map.getLayerBounds();
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
80 double heightToWidth = mapBounds.getSpan(1) / mapBounds.getSpan(0);
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
81 imageBounds = new Rectangle(
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
82 0, 0,
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
83 imageWidth,
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
84 (int) Math.round(imageWidth * heightToWidth));
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
85
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
86 }
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
87 catch (Exception e) {
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
88 // failed to access map layers
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
89 throw new RuntimeException(e);
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
90 }
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
91
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
92 BufferedImage image = new BufferedImage(imageBounds.width, imageBounds.height, BufferedImage.TYPE_INT_RGB);
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
93 Graphics2D gr = image.createGraphics();
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
94 gr.setPaint(Color.WHITE);
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
95 gr.fill(imageBounds);
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
96
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
97 try {
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
98 renderer.paint(gr, imageBounds, mapBounds);
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
99 File fileToSave = new File(MAP_IMAGE);
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
100 ImageIO.write(image, "jpeg", fileToSave);
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
101 }
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
102 catch (IOException e) {
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
103 throw new RuntimeException(e);
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
104 }
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
105 }
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
106
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
107
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
108 public static WebMapServer getMapserver() throws MalformedURLException, IOException, ServiceException {
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
109 return new WebMapServer(getServerUrl());
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
110 }
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
111
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
112
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
113 public static URL getServerUrl() throws MalformedURLException {
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
114 return new URL(MAPSERVER);
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
115 }
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
116
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
117
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
118 public static WMSMapLayer[] getWMSLayers(WebMapServer server) {
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
119 if (server == null) {
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
120 System.out.println("WebMapServer == null");
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
121 throw new RuntimeException("WebMapServer == null");
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
122 }
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
123
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
124 WMSCapabilities capabilities = server.getCapabilities();
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
125
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
126 List<Layer> layers = capabilities.getLayerList();
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
127 WMSMapLayer[] wmslayers = new WMSMapLayer[layers.size()];
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
128
3087
4a76da133144 Removed repeated x.size() calls from for loops.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3083
diff changeset
129 for (int i = 0, L = layers.size(); i < L; i++) {
2328
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
130 Layer l = layers.get(i);
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
131
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
132 System.out.println(" -> add layer: " + l);
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
133 wmslayers[i] = new WMSMapLayer(server, l);
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
134 }
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
135
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
136 return wmslayers;
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
137 }
0cc0e232fa35 Added standalone demo application that prints all layers of a WMS to file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
138 }
3083
4bd3d8bbb60c Added missing vim lines.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2328
diff changeset
139 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org