Browse Source

change tool_xodrobj. fix mnfac calculation when road lenth error.

yuchuli 3 years ago
parent
commit
72cb6c4255
1 changed files with 9 additions and 5 deletions
  1. 9 5
      src/tool/tool_xodrobj/mainwindow.cpp

+ 9 - 5
src/tool/tool_xodrobj/mainwindow.cpp

@@ -109,11 +109,15 @@ static int getmnfac(OpenDrive & mxodr,double & fmovex,double & fmovey)
         }
 
         double x,y,hdg;
-        pRoad->GetGeometryCoords(pRoad->GetRoadLength()-0.1,x,y,hdg);
-        if(x>fxmax)fxmax = x;
-        if(x<fxmin)fxmin = x;
-        if(y>fymax)fymax = y;
-        if(y<fymin)fymin = y;
+
+        int nco = pRoad->GetGeometryCoords(pRoad->GetRoadLength()-0.1,x,y,hdg);
+        if(nco >= 0)
+        {
+            if(x>fxmax)fxmax = x;
+            if(x<fxmin)fxmin = x;
+            if(y>fymax)fymax = y;
+            if(y<fymin)fymin = y;
+        }
     }
 
     if(bHaveRealRoad == false)