Examples of HierarchicalGraph


Examples of org.gephi.graph.api.HierarchicalGraph

        calculateMinMax(graph);

        //Calculate progress units count
        int max;
        if (graphModel.isHierarchical()) {
            HierarchicalGraph hgraph = graphModel.getHierarchicalGraph();
            max = hgraph.getNodeCount() + hgraph.getEdgeCount();
        } else {
            max = graph.getNodeCount() + graph.getEdgeCount();
        }
        Progress.switchToDeterminate(progressTicket, max);
View Full Code Here

Examples of org.gephi.graph.api.HierarchicalGraph

                graphE.setAttribute("edgedefault", "directed");
            } else {
                graphE.setAttribute("edgedefault", "undirected"); // defaultValue
            }
            // we are inside the tree
            HierarchicalGraph hgraph = graphModel.getHierarchicalGraph();
            for (Node n : hgraph.getChildren(nodeParent)) {
                Element childE = createNode(document, graph, n);
                graphE.appendChild(childE);
            }
            parentE.appendChild(graphE);
        } else if (exportHierarchy && graphModel.isHierarchical()) {
            // we are on the top of the tree
            HierarchicalGraph hgraph = graphModel.getHierarchicalGraph();
            for (Node n : hgraph.getTopNodes()) {
                Element nodeE = createNode(document, hgraph, n);
                parentE.appendChild(nodeE);
            }
        } else {
            // there is no tree
View Full Code Here

Examples of org.gephi.graph.api.HierarchicalGraph

            }
        }

        //Hierarchy
        if (exportHierarchy && graphModel.isHierarchical()) {
            HierarchicalGraph hgraph = graphModel.getHierarchicalGraph();
            int childCount = hgraph.getChildrenCount(n);
            if (childCount != 0) {
                createNodes(document, nodeE, graph, n);
            }
        }
        Progress.progress(progressTicket);
View Full Code Here

Examples of org.gephi.graph.api.HierarchicalGraph

    }

    private void createEdges(Document document, Element edgesE, Graph graph) throws Exception {

        EdgeIterable it;
        HierarchicalGraph hgraph = graphModel.getHierarchicalGraph();
        if (exportHierarchy && graphModel.isHierarchical()) {
            it = hgraph.getEdgesTree();
        } else {
            it = hgraph.getEdgesAndMetaEdges();
        }
        for (Edge e : it.toArray()) {
            if (cancel) {
                break;
            }
View Full Code Here

Examples of org.gephi.graph.api.HierarchicalGraph

    public void testFlatten() {
        Node[] nodeGroup = new Node[]{nodeMap.get("Node 1"), nodeMap.get("Node 2")};
        graphGlobal.groupNodes(nodeGroup);

        GraphView newView = dhnsGlobal.newView();
        HierarchicalGraph viewGraph = dhnsGlobal.getHierarchicalGraph(newView);
        viewGraph.resetViewToTopNodes();
        viewGraph.flatten();

        dhnsGlobal.destroyView(newView);
        viewGraph = null;
        newView = null;
        System.gc();
View Full Code Here

Examples of org.gephi.graph.api.HierarchicalGraph

        Node node1 = nodeMap.get("Node 1");
        Node node2 = nodeMap.get("Node 2");
        Edge edge21 = edgeMap.get("2-1");

        GraphView newView = dhnsGlobal.newView();
        HierarchicalGraph viewGraph = dhnsGlobal.getHierarchicalGraph(newView);

        assertNotNull(node1.getNodeData().getNode(newView.getViewId()));
        assertNotNull(dhnsGlobal.getGraphStructure().getNodeFromDictionnary(node1.getId(), newView.getViewId()));
        assertNotNull(dhnsGlobal.getGraphStructure().getNodeFromDictionnary(node1.getId(), graphGlobal.getView().getViewId()));
        assertNotNull(dhnsGlobal.getGraphStructure().getEdgeFromDictionnary(edge21.getId()));

        graphGlobal.removeNode(node1);

        assertNull(node1.getNodeData().getNode(graphGlobal.getView().getViewId()));
        assertNull(node1.getNodeData().getNode(newView.getViewId()));

        assertEquals(Boolean.FALSE, graphGlobal.contains(node1));
        assertEquals(Boolean.FALSE, viewGraph.contains(node1));
        assertEquals(Boolean.FALSE, graphGlobal.contains(edge21));
        assertEquals(Boolean.FALSE, viewGraph.contains(edge21));
    }
View Full Code Here

Examples of org.gephi.graph.api.HierarchicalGraph

    }

    public void group(Partition partition) {
        NodePartition nodePartition = (NodePartition) partition;
        GraphModel graphModel = Lookup.getDefault().lookup(GraphController.class).getModel();
        HierarchicalGraph graph = graphModel.getHierarchicalGraphVisible();
        for (Part<Node> p : nodePartition.getParts()) {
            Node[] nodes = p.getObjects();
            List<Node> validNodes = new ArrayList<Node>();
            for (Node n : nodes) {
                if (graph.contains(n)) {
                    validNodes.add(n);
                }
            }
            if (!validNodes.isEmpty() && graph.getParent(validNodes.get(0)) == null) {
                float centroidX = 0;
                float centroidY = 0;
                float sizes = 0;
                float r = 0;
                float g = 0;
                float b = 0;
                int len = 0;
                for (Node n : validNodes) {
                    centroidX += n.getNodeData().x();
                    centroidY += n.getNodeData().y();
                    sizes += n.getNodeData().getSize();
                    r += n.getNodeData().r();
                    g += n.getNodeData().g();
                    b += n.getNodeData().b();
                    len++;
                }
                Node metaNode = graph.groupNodes(validNodes.toArray(new Node[0]));
                metaNode.getNodeData().setX(centroidX / len);
                metaNode.getNodeData().setY(centroidY / len);
                metaNode.getNodeData().setLabel(p.getDisplayName());
                metaNode.getNodeData().setSize(sizes / graph.getNodeCount() * 5f);
                metaNode.getNodeData().setColor(r / len, g / len, b / len);
            }
        }
    }
View Full Code Here

Examples of org.gephi.graph.api.HierarchicalGraph

    }

    public void ungroup(Partition partition) {
        NodePartition nodePartition = (NodePartition) partition;
        GraphModel graphModel = Lookup.getDefault().lookup(GraphController.class).getModel();
        HierarchicalGraph graph = graphModel.getHierarchicalGraphVisible();
        for (Part<Node> p : nodePartition.getParts()) {
            Node[] nodes = p.getObjects();
            List<Node> validNodes = new ArrayList<Node>();
            for (Node n : nodes) {
                if (graph.contains(n)) {
                    validNodes.add(n);
                }
            }
            if (!validNodes.isEmpty()) {
                Node metaNode = graph.getParent(validNodes.get(0));
                if (metaNode != null) {
                    graph.ungroupNodes(metaNode);
                }
            }
        }
    }
View Full Code Here

Examples of org.gephi.graph.api.HierarchicalGraph

        layout.setQuadTreeMaxLevel(quadTreeMaxLevel);
        layout.initAlgo();
    }

    public void goAlgo() {
        HierarchicalGraph newGraph = graphModel.getHierarchicalGraphVisible();
        if(newGraph.getView().getViewId()!=initedView) {
            setConverged(true);
            layout.endAlgo();
            endAlgo();
            return;
        }
View Full Code Here

Examples of org.gephi.graph.api.HierarchicalGraph

        }
        if (gm != null && gm != graphModel) {
            reset();
        }
        gm = graphModel;
        HierarchicalGraph graph;
        if (graphModel.isDirected()) {
            undirected = false;
            graph = graphModel.getHierarchicalDirectedGraphVisible();
        } else if (graphModel.isUndirected()) {
            undirected = true;
            graph = graphModel.getHierarchicalUndirectedGraphVisible();
        } else if (graphModel.isMixed()) {
            undirected = false;
            graph = graphModel.getHierarchicalMixedGraphVisible();
        } else {
            undirected = false;
            graph = graphModel.getHierarchicalDirectedGraphVisible();
        }

        if (dynamicModel == null) {
            DynamicController dynamicController = Lookup.getDefault().lookup(DynamicController.class);
            dynamicModel = dynamicController.getModel();
        }

        graphView = graph.getView().getViewId();

        ModelClass[] object3dClasses = engine.getModelClasses();

        graph.readLock();



        ModelClass nodeClass = object3dClasses[AbstractEngine.CLASS_NODE];
        if (nodeClass.isEnabled() && (graph.getNodeVersion() > nodeVersion || modeManager.requireModeChange())) {
            updateNodes(graph);
            nodeClass.setCacheMarker(cacheMarker);
        }

        ModelClass edgeClass = object3dClasses[AbstractEngine.CLASS_EDGE];
        if (edgeClass.isEnabled() && (graph.getEdgeVersion() > edgeVersion || modeManager.requireModeChange())) {
            updateEdges(graph);
            updateMetaEdges(graph);
            edgeClass.setCacheMarker(cacheMarker);
            if (!undirected && vizConfig.isShowArrows()) {
                object3dClasses[AbstractEngine.CLASS_ARROW].setCacheMarker(cacheMarker);
            }
        }

        ModelClass potatoClass = object3dClasses[AbstractEngine.CLASS_POTATO];
        if (potatoClass.isEnabled() && (graph.getNodeVersion() > nodeVersion || modeManager.requireModeChange())) {
            updatePotatoes(graph);
            potatoClass.setCacheMarker(cacheMarker);
        }

        nodeVersion = graph.getNodeVersion();
        edgeVersion = graph.getEdgeVersion();

        graph.readUnlock();

        engine.worldUpdated(cacheMarker);
    }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.