Author: kozo
Date: 2009-08-10 06:55:10 -0700 (Mon, 10 Aug 2009)
New Revision: 17755
Modified:
csplugins/trunk/soc/kozo/layer-plugin/layer-builder-plugin/src/main/java/org/cytoscape/layer/internal/MultiLayerNetworkBuilderImpl.java
csplugins/trunk/soc/kozo/layer-plugin/layer-builder-plugin/src/main/java/org/cytoscape/layer/internal/ui/LayerBuilderDialog.java
Log:
changed layer connecting loop process and phase order
(refs ticket:19)
(refs ticket:21)
Modified:
csplugins/trunk/soc/kozo/layer-plugin/layer-builder-plugin/src/main/java/org/cytoscape/layer/internal/MultiLayerNetworkBuilderImpl.java
===================================================================
---
csplugins/trunk/soc/kozo/layer-plugin/layer-builder-plugin/src/main/java/org/cytoscape/layer/internal/MultiLayerNetworkBuilderImpl.java
2009-08-10 10:08:29 UTC (rev 17754)
+++
csplugins/trunk/soc/kozo/layer-plugin/layer-builder-plugin/src/main/java/org/cytoscape/layer/internal/MultiLayerNetworkBuilderImpl.java
2009-08-10 13:55:10 UTC (rev 17755)
@@ -25,8 +25,8 @@
private static final String NETWORK_TITLE = "name";
private static final String NODE_TITLE = "name";
private static final String EDGE_TITLE = "name";
- private static final String LAYER_NUMBER = "layerNumber";
-
+ private static final String LAYER_INDEX = "layer index";
+
private Map<String, CyDataTable> netAttrMgr;
private CyNetworkManager manager;
@@ -48,32 +48,69 @@
layeredNetwork.attrs().set(NETWORK_TITLE, "Layered Network");
netAttrMgr = layeredNetwork.getCyDataTables(NODE);
-// netAttrMgr = new HashMap<String, CyDataTable>();
-
netAttrMgr.get(CyNetwork.DEFAULT_ATTRS).createColumn(LAYER_NUMBER,
String.class, false);
+
netAttrMgr.get(CyNetwork.DEFAULT_ATTRS).createColumn(LAYER_INDEX, String.class,
false);
// HashSet cumulatedNodes = new HashSet();
Map<String, CyNode> nodeMap = new HashMap<String, CyNode>();
Map<String, CyEdge> edgeMap = new HashMap<String, CyEdge>();
// Connect layers here...
- for (CyNetwork topLayer : layers) {
- for (CyNetwork bottomLayer : layers) {
- for (CyNetwork connector : connectors) {
- connect(topLayer, bottomLayer,
connector, nodeMap, edgeMap);
- }
- }
+
+ for (int i = 0; i < layers.size()-1; i++) {
+ CyNetwork topLayer = layers.get(i);
+ CyNetwork connector=connectors.get(i);
+ CyNetwork bottomLayer = layers.get(i+1);
+
+// System.out.println("-----");
+// System.out.println("topLayerIndex, bottomLayerIndex");
+// System.out.println(i);
+// System.out.println(i+1);
+// System.out.println("-----");
+
+ connect(topLayer, connector, bottomLayer, nodeMap,
edgeMap, i, i+1);
+
}
+
+// for (CyNetwork topLayer : layers) {
+// topLayerIndex = topLayerIndex + 1;
+// for (CyNetwork bottomLayer : layers) {
+// bottomLayerIndex = bottomLayerIndex + 1;
+// for (CyNetwork connector : connectors) {
+// if (topLayerIndex != bottomLayerIndex){
+// System.out.println("-----");
+//
System.out.println("topLayerIndex, bottomLayerIndex");
+//
System.out.println(topLayerIndex);
+//
System.out.println(bottomLayerIndex);
+// System.out.println("-----");
+//
+// connect(topLayer, bottomLayer,
connector, nodeMap, edgeMap, topLayerIndex, bottomLayerIndex);
+// }
+// }
+// }
+// }
nodeMap.clear();
nodeMap = null;
manager.addNetwork(layeredNetwork);
+
+// for (CyNode cyNode : layeredNetwork.getNodeList()){
+//
+// System.out.println("NODE_NAME");
+// System.out.println(cyNode.attrs().get(NODE_TITLE,
String.class));
+// System.out.println("NODE_LAYER_INDEX");
+// System.out.println(cyNode.attrs().get(LAYER_INDEX,
String.class));
+//
+// }
+
+// System.out.println("OK!");
+
return layeredNetwork;
}
private void connect(CyNetwork topLayer, CyNetwork connector,
CyNetwork bottomLayer, Map<String, CyNode> nodeMap,
- Map<String, CyEdge> edgeMap) {
+ Map<String, CyEdge> edgeMap, int topLayerIndex, int
bottomLayerIndex) {
// Connect them
// Map<String, CyNode> nodeMap = new HashMap<String, CyNode>();
@@ -82,14 +119,19 @@
for (CyNode cyNode : topLayer.getNodeList()) {
String nodeName = cyNode.attrs().get(NODE_TITLE,
String.class);
- String layerNumber = cyNode.attrs().get(LAYER_NUMBER,
String.class);
-// System.out.println(layerNumber);
-
+
if (nodeMap.containsKey(nodeName) == false) {
CyNode newNode = layeredNetwork.addNode();
newNode.attrs().set(NODE_TITLE, nodeName);
-//
newNode.attrs().getDataTable().createColumn(LAYER_NUMBER, String.class, false);
- newNode.attrs().set(LAYER_NUMBER, layerNumber);
+
+// System.out.println("NODE_TITLE");
+//
System.out.println(newNode.attrs().get(NODE_TITLE, String.class));
+
+ newNode.attrs().set(LAYER_INDEX,
Integer.toString(topLayerIndex));
+
+// System.out.println("node top layer index");
+//
System.out.println(newNode.attrs().get(LAYER_INDEX, String.class));
+
nodeMap.put(nodeName, newNode);
}
}
@@ -111,20 +153,32 @@
}
- // 2nd Phase: append nodes only included in connector
- for (CyNode cyNode : connector.getNodeList()) {
+ // 2nd Phase: append nodes only included in bottom layer
+ for (CyNode cyNode : bottomLayer.getNodeList()) {
String nodeName = cyNode.attrs().get(NODE_TITLE,
String.class);
+ System.out.println("3rd phase bottom layer node name");
+ System.out.println(nodeName);
if (nodeMap.containsKey(nodeName) == false) {
CyNode newNode = layeredNetwork.addNode();
newNode.attrs().set(NODE_TITLE, nodeName);
+
+// System.out.println("NODE_TITLE");
+// System.out.println("bottom layer node name
check");
+//
System.out.println(newNode.attrs().get(NODE_TITLE, String.class));
+
+ newNode.attrs().set(LAYER_INDEX,
Integer.toString(bottomLayerIndex));
+
+// System.out.println("node bottom layer index");
+//
System.out.println(newNode.attrs().get(LAYER_INDEX, String.class));
+
nodeMap.put(nodeName, newNode);
}
}
- for (CyEdge edge : connector.getEdgeList()) {
+ for (CyEdge edge : bottomLayer.getEdgeList()) {
String edgeName = edge.attrs().get(EDGE_TITLE,
String.class);
CyNode sourceNode = edge.getSource();
@@ -140,25 +194,21 @@
}
}
+
+ // 3rd Phase: append nodes only included in connector
+ for (CyNode cyNode : connector.getNodeList()) {
- // 3rd Phase: append nodes only included in bottom layer
- for (CyNode cyNode : bottomLayer.getNodeList()) {
-
String nodeName = cyNode.attrs().get(NODE_TITLE,
String.class);
- String layerNumber = cyNode.attrs().get(LAYER_NUMBER,
String.class);
- System.out.println(layerNumber);
if (nodeMap.containsKey(nodeName) == false) {
CyNode newNode = layeredNetwork.addNode();
newNode.attrs().set(NODE_TITLE, nodeName);
-//
newNode.attrs().getDataTable().createColumn(LAYER_NUMBER, String.class, false);
- newNode.attrs().set(LAYER_NUMBER, layerNumber);
nodeMap.put(nodeName, newNode);
}
}
- for (CyEdge edge : bottomLayer.getEdgeList()) {
+ for (CyEdge edge : connector.getEdgeList()) {
String edgeName = edge.attrs().get(EDGE_TITLE,
String.class);
CyNode sourceNode = edge.getSource();
Modified:
csplugins/trunk/soc/kozo/layer-plugin/layer-builder-plugin/src/main/java/org/cytoscape/layer/internal/ui/LayerBuilderDialog.java
===================================================================
---
csplugins/trunk/soc/kozo/layer-plugin/layer-builder-plugin/src/main/java/org/cytoscape/layer/internal/ui/LayerBuilderDialog.java
2009-08-10 10:08:29 UTC (rev 17754)
+++
csplugins/trunk/soc/kozo/layer-plugin/layer-builder-plugin/src/main/java/org/cytoscape/layer/internal/ui/LayerBuilderDialog.java
2009-08-10 13:55:10 UTC (rev 17755)
@@ -576,19 +576,7 @@
for (int i = 0; i < layeredNetworkListModel.getSize(); i++) {
CyNetwork cyNetwork = manager.getNetwork((Long)
layeredNetworkListModel.getElementAt(i));
-
- netAttrMgr = cyNetwork.getCyDataTables(NODE);
-
netAttrMgr.get(CyNetwork.DEFAULT_ATTRS).createColumn(LAYER_NUMBER,
String.class, false);
-
- for (CyNode cyNode : cyNetwork.getNodeList()) {
- cyNode.attrs().set(LAYER_NUMBER,
Integer.toString(i));
-
System.out.println(cyNode.attrs().get(LAYER_NUMBER, String.class));
- System.out.println("OK!");
- }
-
layers.add(cyNetwork);
- System.out.println("attribute append finished!");
-
}
for (int i = 0; i < layerConnectionTableModel.getRowCount();
i++) {
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"cytoscape-cvs" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/cytoscape-cvs?hl=en
-~----------~----~----~----~------~----~------~--~---