|
@@ -171,10 +171,10 @@ xodrdijkstra::xodrdijkstra(OpenDrive * pxodr)
|
|
|
{
|
|
|
fseclen = px->GetRoadLength() - px->GetLaneSection(j)->GetS();
|
|
|
}
|
|
|
-// if((px->GetRoadId() == "10076")||(px->GetRoadId() == "10114"))
|
|
|
-// {
|
|
|
-// int axy = 1;
|
|
|
-// }
|
|
|
+ if((px->GetRoadId() == "10098")||(px->GetRoadId() == "10113")||(px->GetRoadId() == "10074"))
|
|
|
+ {
|
|
|
+ int axy = 1;
|
|
|
+ }
|
|
|
roadedge xroad(atoi(px->GetRoadId().data()),atoi(px->GetRoadJunction().data()),fseclen,2,j,px);
|
|
|
|
|
|
// roadedge xroad(atoi(px->GetRoadId().data()),atoi(px->GetRoadJunction().data()),px->GetRoadLength(),2,j,px);
|
|
@@ -1063,15 +1063,15 @@ inline double xodrdijkstra::getedgedis(int vs, int vd)
|
|
|
std::vector<roadedge > * proadedge = &mroadedge;
|
|
|
double dis = std::numeric_limits<double>::max();
|
|
|
|
|
|
- for(i=0;i<mvectorvertexedge[vs].mvectorroadedge.size();i++)
|
|
|
- {
|
|
|
- if((vs == mvectorvertexedge[vs].mvectorroadedge[i]->mvertexstart)&&(vd == mvectorvertexedge[vs].mvectorroadedge[i]->mvertexend))
|
|
|
- {
|
|
|
- dis = mroadedge[i].mlen;
|
|
|
- return dis;
|
|
|
- }
|
|
|
- }
|
|
|
- return dis;
|
|
|
+// for(i=0;i<mvectorvertexedge[vs].mvectorroadedge.size();i++)
|
|
|
+// {
|
|
|
+// if((vs == mvectorvertexedge[vs].mvectorroadedge[i]->mvertexstart)&&(vd == mvectorvertexedge[vs].mvectorroadedge[i]->mvertexend))
|
|
|
+// {
|
|
|
+// dis = mroadedge[i].mlen;
|
|
|
+// return dis;
|
|
|
+// }
|
|
|
+// }
|
|
|
+// return dis;
|
|
|
|
|
|
for(i=0;i<mroadedge.size();i++)
|
|
|
{
|
|
@@ -1251,6 +1251,8 @@ std::vector<int> xodrdijkstra::getpath(int srcroadid, int nsrclr, int dstroadid,
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ qDebug("innner path distance is %f ",getpathlength(rtnpath));
|
|
|
+
|
|
|
std::vector<int> rtnpath2;
|
|
|
|
|
|
rtnpath2.push_back(srcedge);
|
|
@@ -1260,8 +1262,8 @@ std::vector<int> xodrdijkstra::getpath(int srcroadid, int nsrclr, int dstroadid,
|
|
|
{
|
|
|
givlog->debug("%d %d %d %d",i,mroadedge[rtnpath[rtnpath.size()-1-i]].mroadid,mroadedge[rtnpath[rtnpath.size()-1-i]].mnleftright,
|
|
|
mroadedge[rtnpath[rtnpath.size()-1-i]].mnsectionid);
|
|
|
-// qDebug("%d %d %d %d",i,mroadedge[rtnpath[rtnpath.size()-1-i]].mroadid,mroadedge[rtnpath[rtnpath.size()-1-i]].mnleftright,
|
|
|
-// mroadedge[rtnpath[rtnpath.size()-1-i]].mnsectionid);
|
|
|
+// qDebug("%d %d %d %f",i,mroadedge[rtnpath[rtnpath.size()-1-i]].mroadid,mroadedge[rtnpath[rtnpath.size()-1-i]].mnleftright,
|
|
|
+// mroadedge[rtnpath[rtnpath.size()-1-i]].mlen);
|
|
|
rtnpath2.push_back(rtnpath[rtnpath.size()-1-i]);
|
|
|
}
|
|
|
|