public static BitmaskDef createBitmaskDef(Element element) { //@todo replace BitmaskDef constructor by multiple param constuctor final String name = element.getAttributeValue(DimapProductConstants.ATTRIB_NAME); String description = null; Element descElem = element.getChild(DimapProductConstants.TAG_BITMASK_DESCRIPTION); if (descElem != null) { description = descElem.getAttributeValue(DimapProductConstants.ATTRIB_VALUE).trim(); } final String expression = element.getChild(DimapProductConstants.TAG_BITMASK_EXPRESSION).getAttributeValue( DimapProductConstants.ATTRIB_VALUE).trim(); final Color color = DimapProductHelpers.createColor(element.getChild(DimapProductConstants.TAG_BITMASK_COLOR)); final String value = element.getChild(DimapProductConstants.TAG_BITMASK_TRANSPARENCY).getAttributeValue( DimapProductConstants.ATTRIB_VALUE); float transparency = 0.5F; try { transparency = Float.parseFloat(value); } catch (NumberFormatException e) { Debug.trace(e); } return new BitmaskDef(name, description, expression, color, transparency); }
private void addBitmaskDefsToProduct() { BitmaskDef bitmaskDef1 = new BitmaskDef("bitmaskDef1", "description1", "!l1_flags.INVALID", Color.BLUE, 0.75f); product.addBitmaskDef(bitmaskDef1); BitmaskDef bitmaskDef2 = new BitmaskDef("bitmaskDef2", "description2", "l1_flags.LAND", Color.GREEN, 0.5f); product.addBitmaskDef(bitmaskDef2); }
private void addBitmaskDefs(Product product) { String name = "name1"; String desc = "bitmask.description1"; String expr = "bitmask.expression1"; Color color = Color.black; float trans = 1.0F; product.addBitmaskDef(new BitmaskDef(name, desc, expr, color, trans)); name = "name2"; desc = "bitmask.description2"; expr = "bitmask.expression2"; color = Color.blue; trans = 0.75F; product.addBitmaskDef(new BitmaskDef(name, desc, expr, color, trans)); name = "name3"; desc = "bitmask.description3"; expr = "bitmask.expression3"; color = Color.green; trans = 0.2341F; product.addBitmaskDef(new BitmaskDef(name, desc, expr, color, trans)); }
/** * Creates and returns a copy of this object. * * @return a copy of this object */ public BitmaskDef createCopy() { return new BitmaskDef(getName(), getDescription(), getExpr(), getColor(), getTransparency()); }
public void testBitmaskDefExpressionsAreUpdateIfForeignNodeNameChanged() { final Product product1 = new Product("P1", "t", 1, 1); final VirtualBand p1v1 = new VirtualBand("P1V1", ProductData.TYPE_FLOAT32, 1, 1, "42"); product1.addBand(p1v1); final Product product2 = new Product("P2", "t", 1, 1); final BitmaskDef p2bd = new BitmaskDef("P2BD", "P2-Bitmask", "$1.P1V1 == 42.0", Color.RED, 0.5f); product2.addBitmaskDef(p2bd); _productManager.addProduct(product1); _productManager.addProduct(product2); p1v1.setName("TheAnswer"); assertEquals("$1.TheAnswer == 42.0", p2bd.getExpr()); }
public void testFail() { final BitmaskDef bitmaskDef = new BitmaskDef("name", "desc", "abc def ghi", Color.red, 0.5f); bitmaskDef.setModified(false); assertFalse(bitmaskDef.isModified()); assertEquals("abc def ghi", bitmaskDef.getExpr()); bitmaskDef.updateExpression("def", "BBBBBB"); assertEquals("abc BBBBBB ghi", bitmaskDef.getExpr()); assertTrue(bitmaskDef.isModified()); } }
Placemark.createPointPlacemark(GcpDescriptor.getInstance(), "GCP", "", "", new PixelPos(0, 0), null, null)); productY.addBitmaskDef(new BitmaskDef("M1", "descr", "D > 0.23", Color.RED, 0.3f)); productY.addBitmaskDef(new BitmaskDef("M2", "descr", "C < 0.23", Color.BLUE, 0.3f)); writeProduct(productX); writeProduct(productY);