From d4a7e928aa381575844c88f467ee8f2c59a372fb Mon Sep 17 00:00:00 2001 From: Andreas Schildbach Date: Sun, 12 Jan 2014 19:39:07 +0100 Subject: [PATCH] Styles for Rostock. --- .../src/de/schildbach/pte/VmvProvider.java | 68 +++++++++++++++++++ 1 file changed, 68 insertions(+) diff --git a/enabler/src/de/schildbach/pte/VmvProvider.java b/enabler/src/de/schildbach/pte/VmvProvider.java index 387cab8e..1433de2f 100644 --- a/enabler/src/de/schildbach/pte/VmvProvider.java +++ b/enabler/src/de/schildbach/pte/VmvProvider.java @@ -18,10 +18,14 @@ package de.schildbach.pte; import java.io.IOException; +import java.util.HashMap; import java.util.List; +import java.util.Map; import de.schildbach.pte.dto.Location; import de.schildbach.pte.dto.LocationType; +import de.schildbach.pte.dto.Style; +import de.schildbach.pte.dto.Style.Shape; /** * @author Andreas Schildbach @@ -36,6 +40,7 @@ public class VmvProvider extends AbstractEfaProvider super(API_BASE); setUseRouteIndexAsTripId(false); + setStyles(STYLES); } public NetworkId id() @@ -57,4 +62,67 @@ public class VmvProvider extends AbstractEfaProvider { return xmlStopfinderRequest(new Location(LocationType.STATION, 0, null, constraint.toString())); } + + @Override + protected String parseLine(final String mot, final String symbol, final String name, final String longName, final String trainType, + final String trainNum, final String trainName) + { + if ("5".equals(mot)) + { + if ("0F1".equals(symbol)) + return "BF1"; + if ("0F1A".equals(symbol)) + return "BF1A"; + if ("0F2".equals(symbol)) + return "BF2"; + } + + return super.parseLine(mot, symbol, name, longName, trainType, trainNum, trainName); + } + + private static final Map STYLES = new HashMap(); + + static + { + // Rostock + STYLES.put("ddb|SS1", new Style(Shape.CIRCLE, Style.parseColor("#108449"), Style.WHITE)); + STYLES.put("ddb|SS2", new Style(Shape.CIRCLE, Style.parseColor("#66a933"), Style.WHITE)); + STYLES.put("ddb|SS3", new Style(Shape.CIRCLE, Style.parseColor("#a6d71c"), Style.WHITE)); + + STYLES.put("vvw|T1", new Style(Shape.RECT, Style.parseColor("#ed1c24"), Style.WHITE)); + STYLES.put("vvw|T2", new Style(Shape.RECT, Style.parseColor("#ca5497"), Style.WHITE)); + STYLES.put("vvw|T3", new Style(Shape.RECT, Style.parseColor("#f04145"), Style.WHITE)); + STYLES.put("vvw|T4", new Style(Shape.RECT, Style.parseColor("#c40070"), Style.WHITE)); + STYLES.put("vvw|T5", new Style(Shape.RECT, Style.parseColor("#9c1116"), Style.WHITE)); + STYLES.put("vvw|T6", new Style(Shape.RECT, Style.parseColor("#ee255c"), Style.WHITE)); + + STYLES.put("vvw|B15", new Style(Style.parseColor("#008dc6"), Style.WHITE)); + STYLES.put("vvw|B16", new Style(Style.parseColor("#1d3c85"), Style.WHITE)); + STYLES.put("vvw|B17", new Style(Style.parseColor("#5784cc"), Style.WHITE)); + STYLES.put("vvw|B18", new Style(Style.parseColor("#0887c9"), Style.WHITE)); + STYLES.put("vvw|B19", new Style(Style.parseColor("#202267"), Style.WHITE)); + STYLES.put("vvw|B19A", new Style(Style.parseColor("#80d6f7"), Style.WHITE)); + STYLES.put("vvw|B20A", new Style(Style.parseColor("#1959a6"), Style.WHITE)); + STYLES.put("vvw|B22", new Style(Style.parseColor("#3871c1"), Style.WHITE)); + STYLES.put("vvw|B23", new Style(Style.parseColor("#009ddb"), Style.WHITE)); + STYLES.put("vvw|B25", new Style(Style.parseColor("#066ba3"), Style.WHITE)); + STYLES.put("vvw|B26", new Style(Style.parseColor("#0994dc"), Style.WHITE)); + STYLES.put("vvw|B27", new Style(Style.parseColor("#6e87cd"), Style.WHITE)); + STYLES.put("vvw|B28", new Style(Style.parseColor("#4fc6f4"), Style.WHITE)); + STYLES.put("vvw|B30A", new Style(Style.parseColor("#80d6f7"), Style.WHITE)); + STYLES.put("vvw|B31", new Style(Style.parseColor("#3a9fdf"), Style.WHITE)); + STYLES.put("vvw|B33", new Style(Style.parseColor("#4081cb"), Style.WHITE)); + STYLES.put("vvw|B33A", new Style(Style.parseColor("#80d6f7"), Style.WHITE)); + STYLES.put("vvw|B35", new Style(Style.parseColor("#254aa5"), Style.WHITE)); + STYLES.put("vvw|B35A", new Style(Style.parseColor("#005e8a"), Style.WHITE)); + STYLES.put("vvw|B36", new Style(Style.parseColor("#2c6d8b"), Style.WHITE)); + STYLES.put("vvw|B37", new Style(Style.parseColor("#36aee8"), Style.WHITE)); + STYLES.put("vvw|B38", new Style(Style.parseColor("#10508c"), Style.WHITE)); + STYLES.put("vvw|B45", new Style(Style.parseColor("#6ab0cc"), Style.WHITE)); + STYLES.put("vvw|B45A", new Style(Style.parseColor("#5784cc"), Style.WHITE)); + STYLES.put("vvw|B49", new Style(Style.parseColor("#1959a6"), Style.WHITE)); + STYLES.put("vvw|BF1", new Style(Style.parseColor("#f8640e"), Style.WHITE)); + STYLES.put("vvw|BF1A", new Style(Style.parseColor("#f8640e"), Style.WHITE)); + STYLES.put("vvw|BF2", new Style(Style.parseColor("#ffaf00"), Style.WHITE)); + } }