yuchuli 2 years ago
parent
commit
7c91943322

+ 2 - 0
src/common/common/xodr/OpenDrive/OpenDriveXmlWriter.cpp

@@ -2067,6 +2067,8 @@ bool OpenDriveXmlWriter::WriteSignal(TiXmlElement *node, Signal * pSignal)
     nodeSignal->SetDoubleAttribute("height",pSignal->Getheight());
     nodeSignal->SetDoubleAttribute("width",pSignal->Getwidth());
 
+
+    //Not Right, but maybe code in plan,use.
 //    signal_laneValidity * psignal_lanevalidity = pSignal->GetlaneValidity();
 //    if(psignal_lanevalidity != 0)
 //    {

+ 7 - 2
src/tool/map_lanetoxodr/ui/trafficlightlanevaliditydialog.cpp

@@ -10,7 +10,9 @@ TrafficLightlaneValidityDialog::TrafficLightlaneValidityDialog(Signal * pSignal,
     ui->setupUi(this);
     mpSignal = pSignal;
 
-    signal_laneValidity * psignal_laneValidity = mpSignal->GetlaneValidity();
+    signal_laneValidity * psignal_laneValidity = 0;
+    if(pSignal->GetlaneValidityCount()>0)
+        psignal_laneValidity = &pSignal->GetlaneValidityVector()->at(0);
 
     if(psignal_laneValidity != 0)
     {
@@ -36,5 +38,8 @@ void TrafficLightlaneValidityDialog::on_pushButton_clicked()
     int fromLane = ui->lineEdit_fromLane->text().toInt();
     int toLane = ui->lineEdit_toLane->text().toInt();
 
-    mpSignal->SetlaneValidity(fromLane,toLane);
+    mpSignal->GetlaneValidityVector()->clear();
+    mpSignal->GetlaneValidityVector()->push_back(signal_laneValidity(fromLane,toLane));
+
+ //   mpSignal->SetlaneValidity(fromLane,toLane);
 }