|
@@ -195,19 +195,32 @@ func RunWaitingCluster() {
|
|
|
infra.GlobalLogger.Errorf("下载xosc文件【%v】失败,错误信息为:%v", xoscOssPath, err)
|
|
|
continue
|
|
|
}
|
|
|
- startPositionX, startPositionY, startPositionZ, startPositionH, endPositionX, endPositionY, endPositionZ, endPositionH, xodrPath, osgbPath := util.ParseXosc(xoscLocalPath)
|
|
|
+ startPositionX, startPositionY, startPositionZ, startPositionH, _, _, _, _, xodrPath, osgbPath := util.ParseXosc(xoscLocalPath)
|
|
|
firstTaskCache.Task.Scenario.ScenarioOdr = xodrPath
|
|
|
firstTaskCache.Task.Scenario.ScenarioOsgb = osgbPath
|
|
|
lastIndex := strings.LastIndex(xoscLocalPath, "/")
|
|
|
dirPath := xoscLocalPath[:lastIndex+1] // 包括最后一个 /
|
|
|
destinationCsvOssKey := dirPath + global.DestinationCsvName
|
|
|
+ var endPoints []util.DataPoint
|
|
|
if exist, _ := tempOss.IsObjectExist(destinationCsvOssKey); exist {
|
|
|
destinationCsvLocalPath := tempDir + util.NewShortUUID() + ".xosc"
|
|
|
err = tempOss.GetObjectToFile(destinationCsvOssKey, destinationCsvLocalPath)
|
|
|
- _, endPositionX, endPositionY, endPositionZ, endPositionH = util.ParseCsv(destinationCsvLocalPath)
|
|
|
+ endPoints, _ = util.ParseCsv(destinationCsvLocalPath)
|
|
|
} else {
|
|
|
-
|
|
|
+ endPositionX, endPositionY, endPositionZ, endPositionH := global.DefaultEndPositionX, global.DefaultEndPositionY, global.DefaultEndPositionZ, global.DefaultEndPositionH
|
|
|
+ tempEndPoint := util.DataPoint{X: endPositionX, Y: endPositionY, Z: endPositionZ, H: endPositionH}
|
|
|
+ endPoints = append(endPoints, tempEndPoint)
|
|
|
+ }
|
|
|
+ var endPosition string // export END_POSITION="x1,y1,z1,h1;x2,y2,z2,h2;x3,y3,z3,h3;x4,y4,z4,h4"
|
|
|
+ // 遍历生成字符串
|
|
|
+ var endPositionBuilder strings.Builder
|
|
|
+ for _, endPoint := range endPoints {
|
|
|
+ if endPositionBuilder.Len() > 0 {
|
|
|
+ endPositionBuilder.WriteByte(';')
|
|
|
+ }
|
|
|
+ endPositionBuilder.WriteString(fmt.Sprintf("%s,%s,%s,%s", endPoint.X, endPoint.Y, endPoint.Z, endPoint.H))
|
|
|
}
|
|
|
+ endPosition = endPositionBuilder.String()
|
|
|
|
|
|
// ------- 修改OGT传感器显示目标物框 -------
|
|
|
for i := range firstTaskCache.Task.Vehicle.Sensors.OGT {
|
|
@@ -317,12 +330,8 @@ func RunWaitingCluster() {
|
|
|
podString = strings.Replace(podString, "start-position-y", "\""+startPositionY+"\"", -1)
|
|
|
podString = strings.Replace(podString, "start-position-z", "\""+startPositionZ+"\"", -1)
|
|
|
podString = strings.Replace(podString, "start-position-h", "\""+startPositionH+"\"", -1)
|
|
|
- podString = strings.Replace(podString, "end-position-x", "\""+endPositionX+"\"", -1)
|
|
|
- podString = strings.Replace(podString, "end-position-y", "\""+endPositionY+"\"", -1)
|
|
|
- podString = strings.Replace(podString, "end-position-Z", "\""+endPositionZ+"\"", -1)
|
|
|
- podString = strings.Replace(podString, "end-position-H", "\""+endPositionH+"\"", -1)
|
|
|
-
|
|
|
- // --------------- 保存成文件
|
|
|
+ podString = strings.Replace(podString, "end-position", "\""+endPosition+"\"", -1)
|
|
|
+ // --------------- 保存成文件 ----------------
|
|
|
err = util.WriteFile(podString, yamlPath)
|
|
|
err = util.WriteFile(podString, yamlPathBak)
|
|
|
if err != nil {
|