Revision 8700 trunk/extensions/extGraph_predes/src/com/iver/cit/gvsig/graph/core/GvGraph.java
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) |
Also available in: Unified diff