Search in sources :

Example 36 with CyEdge

use of org.cytoscape.model.CyEdge in project cytoscape-impl by cytoscape.

the class NewNetworkCommandTask method getNodes.

/**
 * Returns the selected nodes plus all nodes that connect the selected edges
 */
@Override
Set<CyNode> getNodes(final CyNetwork net) {
    if (nodes == null) {
        nodes = new HashSet<CyNode>(nodeList.getValue());
        if (edgeList != null && edgeList.getValue() != null) {
            final Collection<CyEdge> selectedEdges = edgeList.getValue();
            for (final CyEdge e : selectedEdges) {
                nodes.add(e.getSource());
                nodes.add(e.getTarget());
            }
        }
    }
    return nodes;
}
Also used : CyNode(org.cytoscape.model.CyNode) CyEdge(org.cytoscape.model.CyEdge)

Example 37 with CyEdge

use of org.cytoscape.model.CyEdge in project cytoscape-impl by cytoscape.

the class NewNetworkSelectedNodesEdgesTask method getNodes.

/**
 * Returns the selected nodes plus all nodes that connect the selected edges
 */
@Override
Set<CyNode> getNodes(final CyNetwork net) {
    if (nodes == null) {
        nodes = new HashSet<>(CyTableUtil.getNodesInState(net, CyNetwork.SELECTED, true));
        final Collection<CyEdge> selectedEdges = getEdges(net);
        for (final CyEdge e : selectedEdges) {
            nodes.add(e.getSource());
            nodes.add(e.getTarget());
        }
    }
    return nodes;
}
Also used : CyEdge(org.cytoscape.model.CyEdge)

Example 38 with CyEdge

use of org.cytoscape.model.CyEdge in project cytoscape-impl by cytoscape.

the class AbstractPropertyTask method getPropertyValue.

public Object getPropertyValue(CyNetwork network, CyIdentifiable target, VisualProperty vp) {
    CyNetworkView networkView = getViewForNetwork(network);
    Class<? extends CyIdentifiable> vpTargetType = vp.getTargetDataType();
    if (target instanceof CyNetwork) {
        if (vpTargetType != CyNetwork.class)
            throw new RuntimeException("Property '" + vp.getDisplayName() + "' not available for networks");
        return networkView.getVisualProperty(vp);
    } else if (target instanceof CyNode) {
        if (vpTargetType != CyNode.class)
            throw new RuntimeException("Property '" + vp.getDisplayName() + "' not available for nodes");
        View<CyNode> nodeView = networkView.getNodeView((CyNode) target);
        return nodeView.getVisualProperty(vp);
    } else if (target instanceof CyEdge) {
        if (vpTargetType != CyEdge.class)
            throw new RuntimeException("Property '" + vp.getDisplayName() + "' not available for edges");
        View<CyEdge> edgeView = networkView.getEdgeView((CyEdge) target);
        return edgeView.getVisualProperty(vp);
    }
    return null;
}
Also used : CyNetwork(org.cytoscape.model.CyNetwork) CyNode(org.cytoscape.model.CyNode) CyNetworkView(org.cytoscape.view.model.CyNetworkView) View(org.cytoscape.view.model.View) CyNetworkView(org.cytoscape.view.model.CyNetworkView) CyEdge(org.cytoscape.model.CyEdge)

Example 39 with CyEdge

use of org.cytoscape.model.CyEdge in project cytoscape-impl by cytoscape.

the class GetEdgePropertiesTask method run.

@Override
public void run(final TaskMonitor taskMonitor) {
    edgePropertiesMap = new HashMap<CyEdge, Map<String, VisualPropertyObjectTuple>>();
    CyNetwork network = edgeTunable.getNetwork();
    if (propertyList == null || propertyList.length() == 0) {
        taskMonitor.showMessage(TaskMonitor.Level.ERROR, "Property list must be specified");
        return;
    }
    // Get the list of properties
    String[] props = propertyList.split(",");
    for (CyEdge edge : edgeTunable.getEdgeList()) {
        taskMonitor.showMessage(TaskMonitor.Level.INFO, "   Edge property values for edge " + DataUtils.getEdgeName(network.getDefaultEdgeTable(), edge) + ":");
        Map<String, VisualPropertyObjectTuple> propertyMap = new HashMap<String, VisualPropertyObjectTuple>();
        for (String property : props) {
            try {
                VisualProperty vp = getProperty(network, edge, property.trim());
                Object value = getPropertyValue(network, edge, vp);
                if (value != null) {
                    taskMonitor.showMessage(TaskMonitor.Level.INFO, "        " + vp.getDisplayName() + "=" + value.toString());
                    propertyMap.put(vp.getIdString(), new VisualPropertyObjectTuple(vp, value));
                }
            } catch (Exception e) {
                taskMonitor.showMessage(TaskMonitor.Level.ERROR, e.getMessage());
                return;
            }
        }
        edgePropertiesMap.put(edge, propertyMap);
    }
}
Also used : HashMap(java.util.HashMap) VisualProperty(org.cytoscape.view.model.VisualProperty) CyNetwork(org.cytoscape.model.CyNetwork) CyEdge(org.cytoscape.model.CyEdge) HashMap(java.util.HashMap) Map(java.util.Map)

Example 40 with CyEdge

use of org.cytoscape.model.CyEdge in project cytoscape-impl by cytoscape.

the class InvertSelectedEdgesTask method run.

@Override
public void run(final TaskMonitor tm) {
    tm.setTitle("Invert Edge Selection");
    tm.setProgress(0.0);
    final Collection<CyNetworkView> views = networkViewManager.getNetworkViews(network);
    CyNetworkView view = null;
    if (views.size() != 0)
        view = views.iterator().next();
    undoSupport.postEdit(new SelectionEdit(eventHelper, "Invert Selected Edges", network, view, SelectionEdit.SelectionFilter.EDGES_ONLY));
    tm.setStatusMessage("Inverting Edge Selection...");
    tm.setProgress(0.2);
    for (final CyEdge e : network.getEdgeList()) {
        if (network.getRow(e).get(CyNetwork.SELECTED, Boolean.class))
            network.getRow(e).set(CyNetwork.SELECTED, false);
        else
            network.getRow(e).set(CyNetwork.SELECTED, true);
    }
    tm.setStatusMessage("Updating View...");
    tm.setProgress(0.6);
    eventHelper.flushPayloadEvents();
    tm.setProgress(0.8);
    updateView();
    tm.setProgress(1.0);
}
Also used : CyNetworkView(org.cytoscape.view.model.CyNetworkView) CyEdge(org.cytoscape.model.CyEdge)

Aggregations

CyEdge (org.cytoscape.model.CyEdge)302 CyNode (org.cytoscape.model.CyNode)231 CyNetwork (org.cytoscape.model.CyNetwork)103 ArrayList (java.util.ArrayList)77 Test (org.junit.Test)71 CyNetworkView (org.cytoscape.view.model.CyNetworkView)55 HashSet (java.util.HashSet)42 CyRow (org.cytoscape.model.CyRow)41 CyIdentifiable (org.cytoscape.model.CyIdentifiable)29 HashMap (java.util.HashMap)26 CySubNetwork (org.cytoscape.model.subnetwork.CySubNetwork)25 CyTable (org.cytoscape.model.CyTable)21 DummyCyEdge (org.cytoscape.model.DummyCyEdge)21 VisualStyle (org.cytoscape.view.vizmap.VisualStyle)18 DummyCyNode (org.cytoscape.model.DummyCyNode)17 View (org.cytoscape.view.model.View)16 List (java.util.List)13 CyEventHelper (org.cytoscape.event.CyEventHelper)12 CyGroup (org.cytoscape.group.CyGroup)12 VisualMappingManager (org.cytoscape.view.vizmap.VisualMappingManager)12