@Override public void visit(PointSymbolizer ps) { super.visit(ps); PointSymbolizer copy = (PointSymbolizer) pages.peek(); Unit<Length> uom = copy.getUnitOfMeasure(); Graphic copyGraphic = copy.getGraphic(); rescale(copyGraphic, uom); copy.setUnitOfMeasure(Units.PIXEL); }
if (uomNode != null) { UomOgcMapping uomMapping = UomOgcMapping.get(uomNode.getNodeValue()); symbol.setUnitOfMeasure(uomMapping.getUnit());
public void visit(PointSymbolizer ps) { PointSymbolizer copy = sf.getDefaultPointSymbolizer(); copy.setGeometry(copy(ps.getGeometry())); copy.setUnitOfMeasure(ps.getUnitOfMeasure()); copy.setGraphic(copy(ps.getGraphic())); copy.getOptions().putAll(ps.getOptions()); if (STRICT) { if (!copy.equals(ps)) { throw new IllegalStateException("Was unable to duplicate provided Graphic:" + ps); } } pages.push(copy); }
public PointSymbolizer build() { if (unset) { return null; } PointSymbolizer ps = sf.createPointSymbolizer(); ps.setGeometry(geometry); ps.setGraphic(graphic.build()); if (uom != null) { ps.setUnitOfMeasure(uom); } ps.getOptions().putAll(options); if (parent == null) { reset(); } return ps; }
@Test public void testSymbolizerUoMOther() throws Exception { PointSymbolizer p = CommonFactoryFinder.getStyleFactory().createPointSymbolizer(); FeatureTypeStyle fts = fts(p); p.setUnitOfMeasure(USCustomary.LIGHT_YEAR); StringWriter out = new StringWriter(); exception.expect(IllegalArgumentException.class); Ysld.encode(sld(fts), out); }
@Test public void testSymbolizerUoMFoot() throws Exception { PointSymbolizer p = CommonFactoryFinder.getStyleFactory().createPointSymbolizer(); FeatureTypeStyle fts = fts(p); p.setUnitOfMeasure(UomOgcMapping.FOOT.getUnit()); StringWriter out = new StringWriter(); Ysld.encode(sld(fts), out); System.out.append(out.toString()); YamlMap obj = new YamlMap(YamlUtil.getSafeYaml().load(out.toString())); YamlMap result = obj.seq("feature-styles") .map(0) .seq("rules") .map(0) .seq("symbolizers") .map(0) .map("point"); assertThat(result.str("uom"), equalTo("foot")); }
@Test public void testSymbolizerUoMPixel() throws Exception { PointSymbolizer p = CommonFactoryFinder.getStyleFactory().createPointSymbolizer(); FeatureTypeStyle fts = fts(p); p.setUnitOfMeasure(UomOgcMapping.PIXEL.getUnit()); StringWriter out = new StringWriter(); Ysld.encode(sld(fts), out); System.out.append(out.toString()); YamlMap obj = new YamlMap(YamlUtil.getSafeYaml().load(out.toString())); YamlMap result = obj.seq("feature-styles") .map(0) .seq("rules") .map(0) .seq("symbolizers") .map(0) .map("point"); assertThat(result.str("uom"), equalTo("pixel")); }
@Test public void testSymbolizerUoMMetre() throws Exception { PointSymbolizer p = CommonFactoryFinder.getStyleFactory().createPointSymbolizer(); FeatureTypeStyle fts = fts(p); p.setUnitOfMeasure(UomOgcMapping.METRE.getUnit()); StringWriter out = new StringWriter(); Ysld.encode(sld(fts), out); System.out.append(out.toString()); YamlMap obj = new YamlMap(YamlUtil.getSafeYaml().load(out.toString())); YamlMap result = obj.seq("feature-styles") .map(0) .seq("rules") .map(0) .seq("symbolizers") .map(0) .map("point"); assertThat(result.str("uom"), equalTo("metre")); }
public void testPointSymbolizerWithUOM() throws Exception { PointSymbolizer pointSymb = sf.createPointSymbolizer(); pointSymb.setUnitOfMeasure(UomOgcMapping.FOOT.getUnit()); pointSymb.accept(visitor); PointSymbolizer clone = (PointSymbolizer) visitor.getCopy(); assertCopy(pointSymb, clone); assertEqualsContract(pointSymb, clone); PointSymbolizer notEq = sf.getDefaultPointSymbolizer(); assertEqualsContract(clone, notEq, pointSymb); }
@Test public void testRescaleGraphicPointSymbolizer() { // create a graphic that needs rescaling StyleBuilder sb = new StyleBuilder(); // create a circle Mark circle = sb.createMark("circle", null, sb.createStroke(500)); Graphic g = sb.createGraphic(null, circle, null); // a point symbolizer with the specified circle PointSymbolizer ps = sb.createPointSymbolizer(g); // first see it in feet ps.setUnitOfMeasure(USCustomary.FOOT); // rescale it UomRescaleStyleVisitor visitor = new UomRescaleStyleVisitor(10); ps.accept(visitor); PointSymbolizer rps = (PointSymbolizer) visitor.getCopy(); Mark rm = (Mark) rps.getGraphic().graphicalSymbols().get(0); assertEquals(1524.0, rm.getStroke().getWidth().evaluate(null, Double.class), 0d); // now let's see the same in meters ps.setUnitOfMeasure(SI.METRE); // rescale it visitor = new UomRescaleStyleVisitor(10); ps.accept(visitor); rps = (PointSymbolizer) visitor.getCopy(); rm = (Mark) rps.getGraphic().graphicalSymbols().get(0); assertEquals(5000.0, rm.getStroke().getWidth().evaluate(null, Double.class), 0d); }
@Override public void visit(PointSymbolizer ps) { super.visit(ps); PointSymbolizer copy = (PointSymbolizer) pages.peek(); Unit<Length> uom = copy.getUnitOfMeasure(); if(uom == null || uom.equals(NonSI.PIXEL)) { return; } Graphic copyGraphic = copy.getGraphic(); rescale(copyGraphic, mapScale, uom); copy.setUnitOfMeasure(NonSI.PIXEL); }
symbol.setUnitOfMeasure(uomMapping.getUnit());
public void visit(PointSymbolizer ps) { PointSymbolizer copy = sf.getDefaultPointSymbolizer(); copy.setGeometry(copy(ps.getGeometry())); copy.setUnitOfMeasure(ps.getUnitOfMeasure()); copy.setGraphic( copy( ps.getGraphic() )); copy.getOptions().putAll(ps.getOptions()); if( STRICT ){ if( !copy.equals( ps )){ throw new IllegalStateException("Was unable to duplicate provided Graphic:"+ps ); } } pages.push(copy); }
/** * (non-Javadoc) * * @see * org.geotools.styling.visitor.DuplicatingStyleVisitor#visit(org.geotools.styling.PointSymbolizer) */ public void visit(PointSymbolizer ps) { PointSymbolizer copy = sf.getDefaultPointSymbolizer(); copy.setGeometry(copy(ps.getGeometry())); copy.setUnitOfMeasure(ps.getUnitOfMeasure()); copy.setGraphic(copy(ps.getGraphic())); copy.getOptions().putAll(ps.getOptions()); if (STRICT) { if (!copy.equals(ps)) { throw new IllegalStateException("Was unable to duplicate provided Graphic:" + ps); } } pages.push(copy); }
/** * (non-Javadoc) * * @see * org.geotools.styling.visitor.DuplicatingStyleVisitor#visit(org.geotools.styling.PointSymbolizer) */ @Override public void visit(PointSymbolizer ps) { PointSymbolizer copy = sf.getDefaultPointSymbolizer(); copy.setGeometry(copy(Point.class, ps.getGeometry())); copy.setUnitOfMeasure(ps.getUnitOfMeasure()); copy.setGraphic(copy(ps.getGraphic())); copy.getOptions().putAll(ps.getOptions()); if (STRICT && !copy.equals(ps)) { throw new IllegalStateException("Was unable to duplicate provided Graphic:" + ps); } pages.push(copy); }
/** Update symbol. */ private void updateSymbol() { if (!Controller.getInstance().isPopulating()) { StandardData standardData = getStandardData(); Expression geometryField = ExtractGeometryField.getGeometryField(fieldConfigVisitor); PointSymbolizer pointSymbolizer = (PointSymbolizer) SelectedSymbol.getInstance().getSymbolizer(); if (pointSymbolizer != null) { pointSymbolizer.setName(standardData.getName()); pointSymbolizer.setDescription(standardData.getDescription()); pointSymbolizer.setUnitOfMeasure( (standardData.getUnit() != null) ? standardData.getUnit().getUnit() : null); pointSymbolizer.setGeometry(geometryField); this.fireUpdateSymbol(); } } }