Example usage for org.apache.poi.xdgf.usermodel.shape ShapeDataAcceptor ShapeDataAcceptor

List of usage examples for org.apache.poi.xdgf.usermodel.shape ShapeDataAcceptor ShapeDataAcceptor

Introduction

In this page you can find the example usage for org.apache.poi.xdgf.usermodel.shape ShapeDataAcceptor ShapeDataAcceptor.

Prototype

ShapeDataAcceptor

Source Link

Usage

From source file:com.bbn.poi.xdgf.parsers.VisioPageParser.java

License:Apache License

protected void collectShapes() {

    pageContents.visitShapes(new ShapeVisitor() {

        @Override//w  w  w  .j  a v a2s  . c  o  m
        public org.apache.poi.xdgf.usermodel.shape.ShapeVisitorAcceptor getAcceptor() {
            return new ShapeDataAcceptor();
        };

        @Override
        public void visit(XDGFShape shape, AffineTransform globalTransform, int level) {

            ShapeData shapeData = new ShapeData(shape, globalTransform);

            if (shapeData.hasText && reassignTextNodeToParent(shape, shapeData)) {
                return;
            }

            String id = pageId + ": " + shape.getID();
            Vertex vertex = graph.addVertex(id);

            shapeData.vertex = vertex;

            // useful properties for later... 
            vertex.setProperty("label", shape.getTextAsString());
            vertex.setProperty("shapeId", shape.getID());

            vertex.setProperty("group", "");
            vertex.setProperty("groupId", "");
            vertex.setProperty("inSecondaryGroup", false);
            vertex.setProperty("is1d", shape.isShape1D());
            vertex.setProperty("name", shape.getName());
            vertex.setProperty("pageName", pageName);
            vertex.setProperty("symbolName", shape.getSymbolName());
            vertex.setProperty("type", shape.getShapeType());

            // this isn't actually accurate
            //vertex.setProperty("visible", shape.isVisible());

            // local coordinates
            vertex.setProperty("x", shapeData.getCenterX());
            vertex.setProperty("y", shapeData.getCenterY());

            helper.onCreate(shapeData, shape);

            shapesMap.put(shape.getID(), shapeData);
            shapes.add(shapeData);
        }
    });
}

From source file:com.bbn.poi.xdgf.parsers.VisioParser.java

License:Apache License

protected void processPages() {
    for (XDGFPage page : xmlDoc.getPages()) {

        System.out.println(page.getID() + " " + page.getName());

        try {/*from w  ww  .j  av  a  2 s . co m*/
            ShapeDebuggerRenderer renderer = new ShapeDebuggerRenderer();
            renderer.setDebugAcceptor(new ShapeDataAcceptor());

            VsdxToPng.renderToPngDir(page, new File("pngdir"), 2000.0 / 11.0, renderer);
        } catch (IOException e1) {
            e1.printStackTrace();
        }

        Graph graph = processPage(page);

        Util.saveToGraphml(graph, "pngdir/output.graphml");

        break;
    }
}