@Override public void mouseClicked(MouseEvent e) { MultiLayerTransformer multiLayerTransformer = vv.getRenderContext().getMultiLayerTransformer(); Point2D layoutPoint = multiLayerTransformer.inverseTransform(e.getX(), e.getY()); Object node = vv.getNodeSpatial().getClosestElement(layoutPoint); if (node != null) { vv.getPickedNodeState().clear(); vv.getPickedNodeState().pick(node, true); } } });
/** * If the event occurs on a Node, pick that single Node * * @param e the event */ @SuppressWarnings("unchecked") public void mousePressed(MouseEvent e) { if (e.getModifiers() == modifiers) { VisualizationViewer<N, E> vv = (VisualizationViewer<N, E>) e.getSource(); LayoutModel<N> layoutModel = vv.getModel().getLayoutModel(); NetworkElementAccessor<N, E> pickSupport = vv.getPickSupport(); PickedState<N> pickedNodeState = vv.getPickedNodeState(); if (pickSupport != null && pickedNodeState != null) { // p is the screen point for the mouse event Point2D p = e.getPoint(); node = pickSupport.getNode(layoutModel, p.getX(), p.getY()); if (node != null) { if (pickedNodeState.isPicked(node) == false) { pickedNodeState.clear(); pickedNodeState.pick(node, true); } } } e.consume(); } }
final PickedState<N> pickedNodeState = vv.getPickedNodeState(); final PickedState<E> pickedEdgeState = vv.getPickedEdgeState();
double dy = graphPoint.getY() - graphDown.getY(); log.trace("dx, dy: {},{}", dx, dy); PickedState<N> ps = vv.getPickedNodeState();
vv.getRenderContext() .setNodeFillPaintFunction( new PickableNodePaintFunction<>(vv.getPickedNodeState(), Color.red, Color.yellow)); vv.getRenderContext().setNodeLabelFunction(Object::toString); vv.getRenderer().getNodeLabelRenderer().setPosition(Renderer.NodeLabel.Position.CNTR);
LayoutModel<String> layoutModel, Spatial<String> tree) { vv.getPickedNodeState().clear(); NetworkNodeAccessor<String> slowWay = new RadiusNetworkNodeAccessor<>(Double.MAX_VALUE); log.info("the cell for winnerTwo {} is {}", winnerTwo, tree.getContainingLeaf(winnerTwo)); log.info("the cell for the search point {},{} is {}", x, y, tree.getContainingLeafs(x, y)); vv.getPickedNodeState().pick(winnerOne, true); vv.getPickedNodeState().pick(winnerTwo, true); graph.addNode("P"); layoutModel.set("P", x, y);
LayoutModel<String> layoutModel, SpatialRTree.Nodes<String> tree) { vv.getPickedNodeState().clear(); NetworkNodeAccessor<String> slowWay = new RadiusNetworkNodeAccessor<>(Double.MAX_VALUE); log.info("the cell for winnerTwo {} is {}", winnerTwo, tree.getContainingLeaf(winnerTwo)); log.info("the cell for the search point {},{} is {}", x, y, tree.getContainingLeafs(x, y)); vv.getPickedNodeState().pick(winnerOne, true); vv.getPickedNodeState().pick(winnerTwo, true); graph.addNode("P"); layoutModel.set("P", x, y);
vv = new VisualizationViewer<>(visualizationModel, preferredSize); PickedState<String> ps = vv.getPickedNodeState(); PickedState<Number> pes = vv.getPickedEdgeState(); vv.getRenderContext()
LayoutModel<String> layoutModel, Spatial<String> tree) { vv.getPickedNodeState().clear(); NetworkNodeAccessor<String> slowWay = new RadiusNetworkNodeAccessor<>(Double.MAX_VALUE); log.info("the cell for winnerTwo {} is {}", winnerTwo, tree.getContainingLeaf(winnerTwo)); log.info("the cell for the search point {},{} is {}", x, y, tree.getContainingLeafs(x, y)); vv.getPickedNodeState().pick(winnerOne, true); vv.getPickedNodeState().pick(winnerTwo, true); graph.addNode("P"); layoutModel.set("P", x, y);
LayoutModel<String> layoutModel, SpatialQuadTree<String> tree) { vv.getPickedNodeState().clear(); NetworkNodeAccessor<String> slowWay = new RadiusNetworkNodeAccessor<>(Double.MAX_VALUE); y, tree.getContainingQuadTreeLeaf(x, y)); vv.getPickedNodeState().pick(winnerOne, true); vv.getPickedNodeState().pick(winnerTwo, true); graph.addNode("P"); layoutModel.set("P", x, y);
vv.getRenderContext() .setNodeFillPaintFunction( new PickableNodePaintFunction<>(vv.getPickedNodeState(), Color.red, Color.yellow)); .setNodeFillPaintFunction( new PickableNodePaintFunction<>( satellite.getPickedNodeState(), Color.red, Color.yellow));
double dy = graphPoint.getY() - graphDown.getY(); log.trace("dx, dy: {},{}", dx, dy); PickedState<N> ps = vv.getPickedNodeState();
/** * pick the nodes inside the rectangle created from points 'down' and 'out' (two diagonally * opposed corners of the rectangle) * * @param vv the viewer containing the layout and picked state * @param pickTarget - the shape to pick nodes in (layout coordinate system) * @param clear whether to reset existing picked state */ protected void pickContainedNodes(VisualizationViewer<N, E> vv, Shape pickTarget, boolean clear) { PickedState<N> pickedNodeState = vv.getPickedNodeState(); if (pickedNodeState != null) { if (clear) { pickedNodeState.clear(); } NetworkElementAccessor<N, E> pickSupport = vv.getPickSupport(); LayoutModel<N> layoutModel = vv.getModel().getLayoutModel(); Collection<N> picked = pickSupport.getNodes(layoutModel, pickTarget); for (N v : picked) { pickedNodeState.pick(v, true); } } }
LayoutModel<N> layoutModel = vv.getModel().getLayoutModel(); NetworkElementAccessor<N, E> pickSupport = vv.getPickSupport(); PickedState<N> pickedNodeState = vv.getPickedNodeState(); PickedState<E> pickedEdgeState = vv.getPickedEdgeState(); if (pickSupport != null && pickedNodeState != null) {
vv1.getRenderContext() .setNodeFillPaintFunction( new PickableNodePaintFunction<>(vv1.getPickedNodeState(), Color.red, Color.yellow)); vv2.getRenderContext() .setEdgeDrawPaintFunction(
vv.getRenderContext() .setNodeFillPaintFunction( new PickableNodePaintFunction<>(vv.getPickedNodeState(), Color.white, Color.yellow)); vv.getRenderContext() .setEdgeDrawPaintFunction(
new PickableNodePaintFunction<>(vv.getPickedNodeState(), Color.white, Color.yellow)); vv.getRenderContext() .setEdgeDrawPaintFunction(
vv1.getRenderContext() .setNodeFillPaintFunction( new PickableNodePaintFunction<>(vv1.getPickedNodeState(), Color.red, Color.yellow));
setPickedNodeState(master.getPickedNodeState()); setPickedEdgeState(master.getPickedEdgeState()); setNodeSpatial(new Spatial.NoOp.Node(model.getLayoutModel()));
PickedState<Integer> picked_state = vv.getPickedNodeState();