if(neiNum>i){
let x1=graph.vertices[i].x;
let y1=graph.vertices[i].y;
let x2=graph.vertices[neiNum].x;
let y2=graph.vertices[neiNum].y;
line(x1,y1,x2,y2);
}
}
}
for(let j=0;j<dijkRet.path.length-1;j++){
let x1=graph.vertices[dijkRet.path[j]].x;
let y1=graph.vertices[dijkRet.path[j]].y;
let x2=graph.vertices[dijkRet.path[j+1]].x;
let y2=graph.vertices[dijkRet.path[j+1]].y;
fill(200,255,200);
stroke(200,255,200);
strokeWeight(5);
line(x1,y1,x2,y2);
}
for(let i=0;i<graph.vertices.length;i++){
stroke(100);
fill(100,255,100);
text(i,graph.vertices[i].x,graph.vertices[i].y-10);
for(let j=0;j<graph.vertices[i].edges.length;j++){
let neiNum=graph.vertices[i].edges[j].target;
if(neiNum>i){
let weit=graph.vertices[i].edges[j].weight;
let x1=graph.vertices[i].x;
let y1=graph.vertices[i].y;
let x2=graph.vertices[neiNum].x;
let y2=graph.vertices[neiNum].y;
fill(240);
text(weit,(x1+x2)/2,(y1+y2)/2);
}
}
}
noStroke(0);
text("Shortest Path from "+ startVertex+ " to " +endVertex+" :",50,350);
text("Distance: "+dijkRet.distances[endVertex],50,370);
text("[ "+dijkRet.path.join(" -> ")+" ]",50,400);
text("When you click the mouse, it will recalculate.",50,480);