Search in sources :

Example 1 with GraphicGraph

use of org.graphstream.ui.graphicGraph.GraphicGraph in project gs-ui-javafx by graphstream.

the class FxViewer method init.

/**
 * Initialise the viewer.
 *
 * @param graph
 *            The graphic graph.
 * @param ppipe
 *            The source of events from another thread or machine (null if
 *            source != null).
 * @param source
 *            The source of events from this thread (null if ppipe != null).
 */
public void init(GraphicGraph graph, ProxyPipe ppipe, Source source) {
    super.graph = graph;
    super.pumpPipe = ppipe;
    super.sourceInSameThread = source;
    this.timeline = new Timeline(new KeyFrame(Duration.millis(delay), actionEvent -> actionPerformed()));
    assert ((ppipe != null && source == null) || (ppipe == null && source != null));
    if (pumpPipe != null)
        pumpPipe.addSink(graph);
    if (sourceInSameThread != null) {
        if (source instanceof Graph)
            replayGraph((Graph) source);
        sourceInSameThread.addSink(graph);
    }
    // timer.setCoalesce(true);
    // timer.setRepeats(true);
    // timer.start();
    timeline.setCycleCount(Timeline.INDEFINITE);
    timeline.play();
}
Also used : Timeline(javafx.animation.Timeline) Graph(org.graphstream.graph.Graph) GraphicGraph(org.graphstream.ui.graphicGraph.GraphicGraph) KeyFrame(javafx.animation.KeyFrame)

Example 2 with GraphicGraph

use of org.graphstream.ui.graphicGraph.GraphicGraph in project gs-ui-javafx by graphstream.

the class DefaultCamera method allGraphicElementsIn.

@Override
public Collection<GraphicElement> allGraphicElementsIn(GraphicGraph graph, EnumSet<InteractiveElement> types, double x1, double y1, double x2, double y2) {
    List<GraphicElement> elts = new ArrayList<GraphicElement>();
    Stream nodeStream = null;
    Stream edgeStream = null;
    Stream spriteStream = null;
    if (types.contains(InteractiveElement.NODE)) {
        nodeStream = graph.nodes().filter(n -> isNodeIn((GraphicNode) n, x1, y1, x2, y2));
    } else {
        nodeStream = Stream.empty();
    }
    if (types.contains(InteractiveElement.EDGE)) {
        edgeStream = graph.edges().filter(e -> isEdgeIn((GraphicEdge) e, x1, y1, x2, y2));
    } else {
        edgeStream = Stream.empty();
    }
    if (types.contains(InteractiveElement.SPRITE)) {
        spriteStream = graph.sprites().filter(e -> isSpriteIn((GraphicSprite) e, x1, y1, x2, y2));
    } else {
        spriteStream = Stream.empty();
    }
    Stream<GraphicElement> s = Stream.concat(nodeStream, Stream.concat(edgeStream, spriteStream));
    return s.collect(Collectors.toList());
}
Also used : Arrays(java.util.Arrays) Affine(javafx.scene.transform.Affine) Point2(org.graphstream.ui.geom.Point2) Point3(org.graphstream.ui.geom.Point3) GraphicElement(org.graphstream.ui.graphicGraph.GraphicElement) Camera(org.graphstream.ui.view.camera.Camera) NonInvertibleTransformException(javafx.scene.transform.NonInvertibleTransformException) ArrayList(java.util.ArrayList) Level(java.util.logging.Level) HashSet(java.util.HashSet) GraphMetrics(org.graphstream.ui.view.util.GraphMetrics) InteractiveElement(org.graphstream.ui.view.util.InteractiveElement) Point2D(javafx.geometry.Point2D) EnumSet(java.util.EnumSet) GraphicGraph(org.graphstream.ui.graphicGraph.GraphicGraph) GraphicNode(org.graphstream.ui.graphicGraph.GraphicNode) Units(org.graphstream.ui.graphicGraph.stylesheet.StyleConstants.Units) GraphicEdge(org.graphstream.ui.graphicGraph.GraphicEdge) Edge(org.graphstream.graph.Edge) Node(org.graphstream.graph.Node) GraphicsContext(javafx.scene.canvas.GraphicsContext) Collection(java.util.Collection) Logger(java.util.logging.Logger) Collectors(java.util.stream.Collectors) StyleConstants(org.graphstream.ui.graphicGraph.stylesheet.StyleConstants) List(java.util.List) GraphicSprite(org.graphstream.ui.graphicGraph.GraphicSprite) Values(org.graphstream.ui.graphicGraph.stylesheet.Values) Stream(java.util.stream.Stream) Vector2(org.graphstream.ui.geom.Vector2) Optional(java.util.Optional) Selector(org.graphstream.ui.graphicGraph.stylesheet.Selector) Style(org.graphstream.ui.graphicGraph.stylesheet.Style) GraphicElement(org.graphstream.ui.graphicGraph.GraphicElement) ArrayList(java.util.ArrayList) Stream(java.util.stream.Stream)

Aggregations

GraphicGraph (org.graphstream.ui.graphicGraph.GraphicGraph)2 ArrayList (java.util.ArrayList)1 Arrays (java.util.Arrays)1 Collection (java.util.Collection)1 EnumSet (java.util.EnumSet)1 HashSet (java.util.HashSet)1 List (java.util.List)1 Optional (java.util.Optional)1 Level (java.util.logging.Level)1 Logger (java.util.logging.Logger)1 Collectors (java.util.stream.Collectors)1 Stream (java.util.stream.Stream)1 KeyFrame (javafx.animation.KeyFrame)1 Timeline (javafx.animation.Timeline)1 Point2D (javafx.geometry.Point2D)1 GraphicsContext (javafx.scene.canvas.GraphicsContext)1 Affine (javafx.scene.transform.Affine)1 NonInvertibleTransformException (javafx.scene.transform.NonInvertibleTransformException)1 Edge (org.graphstream.graph.Edge)1 Graph (org.graphstream.graph.Graph)1