Revision 8700
trunk/extensions/extGraph_predes/src/com/iver/cit/gvsig/graph/core/Network.java | ||
---|---|---|
564 | 564 |
|
565 | 565 |
GvFlag flag = new GvFlag(x, y); |
566 | 566 |
flag.setIdArc(idArc); |
567 |
EdgePair edgePair = graph.getEdgesByIdArc(idArc); |
|
567 | 568 |
flag.setDirec(GvFlag.BOTH_DIRECTIONS); |
568 | 569 |
|
569 | 570 |
flag.setPct(percentAlong(idArc, x, y)); |
trunk/extensions/extGraph_predes/src/com/iver/cit/gvsig/graph/core/GvGraph.java | ||
---|---|---|
43 | 43 |
import java.util.ArrayList; |
44 | 44 |
import java.util.Arrays; |
45 | 45 |
import java.util.Collection; |
46 |
import java.util.Hashtable; |
|
46 | 47 |
|
47 | 48 |
import edu.uci.ics.jung.utils.Pair; |
48 | 49 |
|
49 | 50 |
public class GvGraph implements IGraph { |
50 | 51 |
private ArrayList nodes; |
51 | 52 |
private ArrayList edges; |
52 |
private ArrayList indexArcsEdges;
|
|
53 |
private Hashtable indexArcsEdges;
|
|
53 | 54 |
|
54 | 55 |
public GvGraph() |
55 | 56 |
{ |
56 | 57 |
nodes = new ArrayList(); |
57 | 58 |
edges = new ArrayList(); |
58 |
indexArcsEdges = new ArrayList();
|
|
59 |
indexArcsEdges = new Hashtable();
|
|
59 | 60 |
} |
60 | 61 |
|
61 | 62 |
public GvGraph(int numArcs, int numEdges, int numNodes) { |
62 | 63 |
nodes = new ArrayList(numNodes); |
63 | 64 |
edges = new ArrayList(numEdges); |
64 |
indexArcsEdges = new ArrayList(numArcs);
|
|
65 |
indexArcsEdges = new Hashtable(numArcs);
|
|
65 | 66 |
} |
66 | 67 |
|
67 | 68 |
public GvNode getNodeByID(int idNode) { |
... | ... | |
82 | 83 |
|
83 | 84 |
public EdgePair getEdgesByIdArc(int idArc) { |
84 | 85 |
if (idArc < indexArcsEdges.size()) |
85 |
return (EdgePair) indexArcsEdges.get(idArc);
|
|
86 |
return (EdgePair) indexArcsEdges.get(new Integer(idArc));
|
|
86 | 87 |
return null; |
87 | 88 |
} |
88 | 89 |
|
... | ... | |
95 | 96 |
|
96 | 97 |
} |
97 | 98 |
|
98 |
public void addEdgePair(EdgePair edgePair) { |
|
99 |
public void addEdgePair(int idArc, EdgePair edgePair) {
|
|
99 | 100 |
// assert(indexArcsEdges.size() == edgePair.idArc); |
100 |
indexArcsEdges.add(edgePair);
|
|
101 |
indexArcsEdges.put(new Integer(idArc), edgePair);
|
|
101 | 102 |
} |
102 | 103 |
|
103 | 104 |
/* (non-Javadoc) |
trunk/extensions/extGraph_predes/src/com/iver/cit/gvsig/graph/core/loaders/NetworkRedLoader.java | ||
---|---|---|
136 | 136 |
if (edgePair == null) |
137 | 137 |
{ |
138 | 138 |
edgePair = new EdgePair(); |
139 |
g.addEdgePair(edgePair); |
|
139 |
g.addEdgePair(edge.getIdArc(), edgePair);
|
|
140 | 140 |
} |
141 | 141 |
if (edge.getDirec() == 1) |
142 | 142 |
edgePair.setIdEdge(i); |
trunk/extensions/extGraph_predes/src/com/iver/cit/gvsig/graph/core/IGraph.java | ||
---|---|---|
58 | 58 |
|
59 | 59 |
public void addEdge(GvEdge edge); |
60 | 60 |
public void addNode(GvNode node); |
61 |
public void addEdgePair(EdgePair edgePair); |
|
61 |
public void addEdgePair(int arcId, EdgePair edgePair);
|
|
62 | 62 |
public void removeEdge(int idEdge); |
63 | 63 |
public void removeNode(int idNode); |
64 | 64 |
} |
trunk/extensions/extGraph_predes/src/com/iver/cit/gvsig/graph/solvers/Route.java | ||
---|---|---|
79 | 79 |
values[1] = ValueFactory.createValue(weight); |
80 | 80 |
values[2] = ValueFactory.createValue(length); |
81 | 81 |
values[3] = ValueFactory.createValue(text); |
82 |
// System.out.println("A?ado text= " + text);
|
|
82 |
System.out.println("A?ado text= " + idArc + ": " + text);
|
|
83 | 83 |
DefaultFeature feat = new DefaultFeature(geom, values, featureList.size() + ""); |
84 | 84 |
featureList.add(feat); |
85 | 85 |
return feat; |
Also available in: Unified diff