/** * Retrieve linestring width from symbolizer if available. * * @param symbolizer Line symbolizer information. * @return width of linestring, or NOTFOUND */ public static int lineWidth(LineSymbolizer symbolizer) { if (symbolizer == null) { return NOTFOUND; } Stroke stroke = symbolizer.getStroke(); return width(stroke); }
Color fill = SLD.polyFill(polySymb); int width = SLD.width(SLD.stroke(polySymb)); if (width == SLD.NOTFOUND) width = 1; LineSymbolizer lineSymbolizer = (LineSymbolizer) symb; Color c = SLD.color(lineSymbolizer); int w = SLD.width(lineSymbolizer); if (c != null && w > 0) { g.setColor(c); int width = SLD.width(SLD.stroke(pointSymbolizer));
/** * We should have a test case for the expected default values so we can be sure of correct SLD * rendering. */ public void testDefaults() { Stroke stroke = sf.getDefaultStroke(); assertEquals("default stroke width is one", 1, SLD.width(stroke)); assertEquals("default stroke color is black", Color.BLACK, SLD.color(stroke)); } /** See http://jira.codehaus.org/browse/UDIG-1374 */
/** See http://jira.codehaus.org/browse/UDIG-1374 */ public void testStroke() { Stroke stroke = sf.createStroke(ff.literal("#FF0000"), ff.literal("3")); assertEquals("width", 3, SLD.width(stroke)); assertEquals("color", Color.RED, SLD.color(stroke)); stroke = sf.createStroke(ff.literal("#FF0000"), ff.literal("3.0")); assertEquals("width", 3, SLD.width(stroke)); }
@Test public void testLineWithDashedline() throws Exception { // <UserStyle> // <Title>SLD Cook Book: Dashed line</Title> // <FeatureTypeStyle> // <Rule> // <LineSymbolizer> // <Stroke> // <CssParameter name="stroke">#0000FF</CssParameter> // <CssParameter name="stroke-width">3</CssParameter> // <CssParameter name="stroke-dasharray">5 2</CssParameter> // </Stroke> // </LineSymbolizer> // </Rule> // </FeatureTypeStyle> // </UserStyle> Style style = parse("line", "dashed-line.sld"); LineSymbolizer line = SLD.lineSymbolizer(style); assertEquals(Color.blue, SLD.color(line)); assertEquals(3, SLD.width(line)); assertEquals(5f, SLD.lineDash(line)[0], 0.1); assertEquals(2f, SLD.lineDash(line)[1], 0.1); }
assertEquals(color("0000CC"), SLD.color(poly.getFill())); assertEquals(color("000000"), SLD.color(poly.getStroke())); assertEquals(7, SLD.width(poly.getStroke())); assertEquals(color("0000CC"), SLD.color(poly.getFill())); assertEquals(color("000000"), SLD.color(poly.getStroke())); assertEquals(4, SLD.width(poly.getStroke())); assertEquals(color("0000CC"), SLD.color(poly.getFill())); assertEquals(color("000000"), SLD.color(poly.getStroke())); assertEquals(1, SLD.width(poly.getStroke()));
@Test public void testPolygonWithStroke() throws Exception { // <UserStyle> // <Title>SLD Cook Book: Simple polygon with stroke</Title> // <FeatureTypeStyle> // <Rule> // <PolygonSymbolizer> // <Fill> // <CssParameter name="fill">#000080</CssParameter> // </Fill> // <Stroke> // <CssParameter name="stroke">#FFFFFF</CssParameter> // <CssParameter name="stroke-width">2</CssParameter> // </Stroke> // </PolygonSymbolizer> // </Rule> // </FeatureTypeStyle> // </UserStyle> Style style = parse("poly", "stroke.sld"); PolygonSymbolizer poly = SLD.polySymbolizer(style); assertEquals(color("000080"), SLD.color(poly.getFill())); assertEquals(color("FFFFFF"), SLD.color(poly.getStroke())); assertEquals(2, SLD.width(poly.getStroke())); }
@Test public void testPolygonWithTransparent() throws Exception { // <UserStyle> // <Title>SLD Cook Book: Transparent polygon</Title> // <FeatureTypeStyle> // <Rule> // <PolygonSymbolizer> // <Fill> // <CssParameter name="fill">#000080</CssParameter> // <CssParameter name="fill-opacity">0.5</CssParameter> // </Fill> // <Stroke> // <CssParameter name="stroke">#FFFFFF</CssParameter> // <CssParameter name="stroke-width">2</CssParameter> // </Stroke> // </PolygonSymbolizer> // </Rule> // </FeatureTypeStyle> // </UserStyle> Style style = parse("poly", "transparent.sld"); PolygonSymbolizer poly = SLD.polySymbolizer(style); assertEquals(color("000080"), SLD.color(poly.getFill())); assertEquals(0.5, SLD.opacity(poly.getFill()), 0.1); assertEquals(color("FFFFFF"), SLD.color(poly.getStroke())); assertEquals(2, SLD.width(poly.getStroke())); }
assertEquals(color("40FF40"), SLD.color(poly.getFill())); assertEquals(color("FFFFFF"), SLD.color(poly.getStroke())); assertEquals(2, SLD.width(poly.getStroke()));
assertEquals(Color.red, SLD.color(mark.getFill())); assertEquals(Color.black, SLD.color(mark.getStroke())); assertEquals(2, SLD.width(mark.getStroke()));
assertEquals(0.2, SLD.opacity(SLD.fill(point)), 0.1); assertEquals(Color.black, SLD.color(SLD.stroke(point))); assertEquals(2, SLD.width(SLD.stroke(point))); assertEquals(12, SLD.pointSize(point));
assertEquals(1, SLD.width(mark.getStroke()));
assertEquals(color("40FF40"), SLD.color(poly.getFill())); assertEquals(color("FFFFFF"), SLD.color(poly.getStroke())); assertEquals(2, SLD.width(poly.getStroke()));
assertEquals(color("666666"), SLD.color(mark.getFill())); assertEquals(color("333333"), SLD.color(mark.getStroke())); assertEquals(1, SLD.width(mark.getStroke()));
assertEquals(color("40FF40"), SLD.color(poly.getFill())); assertEquals(color("FFFFFF"), SLD.color(poly.getStroke())); assertEquals(2, SLD.width(poly.getStroke()));