public void visit(RasterSymbolizer raster) { RasterSymbolizer copy = sf.createRasterSymbolizer(); copy.setChannelSelection(copy(raster.getChannelSelection())); copy.setColorMap(copy(raster.getColorMap())); copy.setContrastEnhancement(copy(raster.getContrastEnhancement())); copy.setGeometry(copy(raster.getGeometry())); copy.setUnitOfMeasure(raster.getUnitOfMeasure()); copy.setImageOutline(copy(raster.getImageOutline())); copy.setOpacity(copy(raster.getOpacity())); copy.setOverlapBehavior(raster.getOverlapBehavior()); copy.setShadedRelief(copy(raster.getShadedRelief())); if (STRICT && !copy.equals(raster)) { throw new IllegalStateException("Was unable to duplicate provided raster:" + raster); } pages.push(copy); }
rs.setOverlapBehavior((OverlapBehavior) node.getChildValue("OverlapBehavior"));
public void testRasterSymbolizerWithOverlapBehavior() throws Exception { RasterSymbolizer rasterSymb1 = sf.createRasterSymbolizer(); rasterSymb1.setOverlapBehavior(OverlapBehavior.AVERAGE); rasterSymb1.accept(visitor); RasterSymbolizer clone1 = (RasterSymbolizer) visitor.getCopy(); assertEquals(clone1.getOverlapBehavior(), rasterSymb1.getOverlapBehavior()); // Try literal expression RasterSymbolizer rasterSymbLiteral = sf.createRasterSymbolizer(); rasterSymbLiteral.setOverlap(ff.literal(OverlapBehavior.EARLIEST_ON_TOP.toString())); rasterSymbLiteral.accept(visitor); RasterSymbolizer cloneLiteral = (RasterSymbolizer) visitor.getCopy(); assertEquals(cloneLiteral.getOverlapBehavior(), rasterSymbLiteral.getOverlapBehavior()); assertEquals(cloneLiteral.getOverlap(), rasterSymbLiteral.getOverlap()); // Try with invalid expression string RasterSymbolizer rasterSymb3 = sf.createRasterSymbolizer(); try { rasterSymb3.setOverlap(ff.literal("invalid string")); } catch (IllegalArgumentException e) { // Expected result } catch (Exception e) { fail(); } // Compare rastersymbolizer overlap behaviour RasterSymbolizer notEq = sf.createRasterSymbolizer(); assertFalse(Utilities.equals(notEq.getOverlapBehavior(), rasterSymb1.getOverlapBehavior())); }
vendorOptionRasterFactory.updateSymbol(rasterSymbolizer); rasterSymbolizer.setOverlapBehavior(overlapBehavior); SelectedSymbol.getInstance().replaceSymbolizer(rasterSymbolizer);
rs.setOverlapBehavior((OverlapBehavior) node.getChildValue("OverlapBehavior"));