Page 292 - The Definitive Guide to Building Java Robots
P. 292
Preston_5564C07.fm Page 273 Monday, September 26, 2005 5:38 AM
CHAPTER 7 ■ NAVIGATION 273
public void addVertex(Vertex v) {
vertices.add(v);
}
public void addAllVertices(ArrayList v) {
vertices = v;
}
public int getDist(Vertex start, Vertex end) {
int[][] adj = getAdj();
int size = vertices.size();
int w = 0;
for (int i = 0; i < size; i++) {
Vertex vi = (Vertex) vertices.get(i);
for (int j = 0; j < size; j++) {
Vertex vj = (Vertex) vertices.get(j);
if (vi.equals(start) && vj.equals(end)) {
w = adj[i][j];
}
}
}
return w;
}
public void setShortDistance(Vertex v, int dist) {
unsettled.remove(v);
distances.put(v, new Integer(dist));
unsettled.add(v);
}
public void setPred(Vertex a, Vertex b ){
oldVertex.put(a,b);
}
public Vertex getPred(Vertex a) {
return (Vertex)oldVertex.get(a);
}
public int getShortDistance(Vertex v) {
Integer d = (Integer) distances.get(v);
if (d == null) {
return Integer.MAX_VALUE;
} else {
return d.intValue();
}
}

