public static void assertPath(final MultiPathDefinition pathDefinition) { assertEquals("M150 0 L75 200 L225 200 Z", pathDefinition.getPath()); assertEquals("p1", pathDefinition.getId()); assertEquals(1d, pathDefinition.getAlpha(), 0d); assertEquals(0d, pathDefinition.getX(), 0d); assertEquals(0d, pathDefinition.getY(), 0d); final TransformDefinition transformDefinition = pathDefinition.getTransformDefinition(); assertTransformDef(transformDefinition, 0.25d, 0.25d, 10d, 10d); final StyleDefinition styleDefinition = pathDefinition.getStyleDefinition(); assertStyleDef(styleDefinition, 1d, "#ff0000", 1d, "#0000ff", 1d, 2d); }
@Test public void testGenerate() throws Exception { final MultiPathDefinition definition = new MultiPathDefinition(ID, PATH); definition.setX(X); definition.setY(Y); definition.setAlpha(ALPHA); definition.setStyleDefinition(new StyleDefinitionImpl.Builder() .setAlpha(ALPHA) .setFillColor(FILL_COLOR) .setStrokeDashArray(STROKE_DASHARRAY) .build()); definition.setTransformDefinition(new TransformDefinitionImpl(VBOX_WIDTH, VBOX_HEIGHT, VBOX_MIN_X,
@Override public StringBuffer doGenerate(final MultiPathDefinition input) throws GeneratorException { final Map<String, Object> root = new HashMap<String, Object>(); root.put("className", MultiPath.class.getName()); root.put("pathInstanceId", SVGViewFactoryGenerator.getStaticFieldValidId(input.getId())); // Generate the code using the given template. try { return writeTemplate(root); } catch (final GenerationException e) { throw new GeneratorException(e); } }
@Override public MultiPathDefinition doTranslate(final Element pathElement, final SVGTranslatorContext context) throws TranslatorException { final String id = getId(pathElement); String path = pathElement.getAttribute(PATH); failIfEmpty(PATH, path); context.addStaticStringMember(id, path); return new MultiPathDefinition(id, path); }