diff flys-artifacts/src/main/java/de/intevation/flys/utils/ThemeUtil.java @ 1793:1636686070f7

Initial commit to support styles in maps. flys-artifacts/trunk@3116 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Fri, 28 Oct 2011 14:42:24 +0000
parents 741ba9e34c7d
children 5364b86a0880
line wrap: on
line diff
--- a/flys-artifacts/src/main/java/de/intevation/flys/utils/ThemeUtil.java	Fri Oct 28 13:48:02 2011 +0000
+++ b/flys-artifacts/src/main/java/de/intevation/flys/utils/ThemeUtil.java	Fri Oct 28 14:42:24 2011 +0000
@@ -9,6 +9,9 @@
 
 import de.intevation.artifacts.common.utils.XMLUtils;
 
+import de.intevation.flys.artifacts.model.MapserverStyle;
+import de.intevation.flys.artifacts.model.MapserverStyle.Clazz;
+
 
 /**
  * Utility to deal with themes and their representations.
@@ -284,13 +287,33 @@
     }
 
 
+    public static String getLineColorString(Document theme) {
+        return XMLUtils.xpathString(theme, XPATH_LINE_COLOR, null);
+    }
+
+
     /**
      * Gets color from color field.
      * @param theme    the theme document.
      * @return color.
      */
     public static Color parseLineColorField(Document theme) {
-        String color = XMLUtils.xpathString(theme, XPATH_LINE_COLOR, null);
-        return parseRGB(color);
+        return parseRGB(getLineColorString(theme));
+    }
+
+
+    public static String createMapserverStyle(Document theme) {
+        String linecolor = getLineColorString(theme);
+        int    linewidth = parseLineWidth(theme);
+
+        MapserverStyle ms = new MapserverStyle();
+
+        Clazz c = new Clazz(" ");
+        c.setOutlineColor(linecolor);
+        c.setSize(linewidth);
+
+        ms.addClazz(c);
+
+        return ms.toString();
     }
 }

http://dive4elements.wald.intevation.org