zhangliang2 2 anni fa
parent
commit
93bbc713f2
22 ha cambiato i file con 325 aggiunte e 149 eliminazioni
  1. 4 4
      src/api/sceneLibrary.js
  2. 32 0
      src/views/modelLibrary/common/coordinateAxes.js
  3. 103 0
      src/views/modelLibrary/common/coordinateAxesRenderer.js
  4. 2 2
      src/views/page/pageMenu.vue
  5. 4 4
      src/views/personalInformation/personalInformation.vue
  6. 33 29
      src/views/sceneLibrary/components/realSceneList.vue
  7. 20 16
      src/views/sceneLibrary/naturalDrivingScenarioList.vue
  8. 6 6
      src/views/sceneLibrary/scenarioTestPackageManagementList.vue
  9. 1 1
      src/views/sceneLibrary/standardRegulationSimulationScenarioList.vue
  10. 1 1
      src/views/sceneLibrary/trafficAccidentSimulationScenarioList.vue
  11. 2 2
      src/views/systemManagement/clusteringManagement.vue
  12. 23 19
      src/views/systemManagement/sceneLibraryManagement/naturalDrivingScene.vue
  13. 15 15
      src/views/systemManagement/sceneLibraryManagement/sceneLibraryManagement.vue
  14. 1 1
      src/views/systemManagement/sceneLibraryManagement/standardRegulationSimulationScene.vue
  15. 1 1
      src/views/systemManagement/sceneLibraryManagement/trafficAccidentSimulationScene.vue
  16. 6 6
      src/views/systemManagement/scenePacketDistributionDetail.vue
  17. 18 18
      src/views/systemManagement/scenePacketListManagement/detail.vue
  18. 4 4
      src/views/systemManagement/scenePacketListManagement/index.vue
  19. 23 19
      src/views/systemManagement/scenePacketListManagement/naturalDrivingList.vue
  20. 5 0
      src/views/systemManagement/scenePacketListManagement/trafficAccidentSimulationList.vue
  21. 18 0
      src/views/systemManagement/sceneUploadList.vue
  22. 3 1
      src/views/workManagement/projectInfo.vue

+ 4 - 4
src/api/sceneLibrary.js

@@ -8,13 +8,13 @@ const fxScoringRules = basePart + '/ScoringRules/fxScoringRules'; // 分享评
 const deleteScoringRules = basePart + '/ScoringRules/deleteScoringRules'; // 删除评分规则
 const queryCsbById = basePart + '/ScoringRules/queryCsbById'; // 查询该规则是否有关联任务
 
-const queryStandardsRegulationsList = basePart + '/StandardsRegulations/queryStandardsRegulationsList'; // 标准法规仿真场景列表
+const queryStandardsRegulationsList = basePart + '/StandardsRegulations/queryStandardsRegulationsList'; // 标准法规场景列表
 const saveStandardsRegulations = basePart + '/StandardsRegulations/saveStandardsRegulations'; // 新增标准法规仿场景
 const deleteStandardsRegulations = basePart + '/StandardsRegulations/deleteStandardsRegulations'; // 删除标准法规仿场景
 
-const querySceneAccidentList = basePart + '/SceneAccident/querySceneAccidentList'; // 交通事故仿真场景列表
-const saveSceneAccident = basePart + '/SceneAccident/saveSceneAccident'; // 新增交通事故仿真场景
-const deleteSceneAccident = basePart + '/SceneAccident/deleteSceneAccident'; // 删除交通事故仿真场景
+const querySceneAccidentList = basePart + '/SceneAccident/querySceneAccidentList'; // 交通事故场景列表
+const saveSceneAccident = basePart + '/SceneAccident/saveSceneAccident'; // 新增交通事故场景
+const deleteSceneAccident = basePart + '/SceneAccident/deleteSceneAccident'; // 删除交通事故场景
 
 const querySceneNaturalList = basePart + '/SceneNatural/querySceneNaturalList'; // 自然驾驶场景列表
 const saveSceneNatural = basePart + '/SceneNatural/saveSceneNatural'; // 新增自然驾驶场景

+ 32 - 0
src/views/modelLibrary/common/coordinateAxes.js

@@ -0,0 +1,32 @@
+import * as THREE from 'three'
+
+export default class CoordinateAxes extends THREE.Object3D {
+    name = 'COORDINATE_AXES'
+    AXIS_LENGTH = 300
+    // follows right-hand coordinate system
+    AXIS_COLOR_X = 0xff0000 // red
+    AXIS_COLOR_Y = 0x00ff00 // green
+    AXIS_COLOR_Z = 0x0000ff // blue
+
+    constructor() {
+        super()
+
+        const origin = new THREE.Vector3(0, 0, 0)
+        const axisX = new THREE.Vector3(1, 0, 0)
+        const axisY = new THREE.Vector3(0, 1, 0)
+        const axisZ = new THREE.Vector3(0, 0, 1)
+
+        const arrowX = new THREE.ArrowHelper(axisX, origin, this.AXIS_LENGTH, this.AXIS_COLOR_X, this.AXIS_LENGTH / 5, this.AXIS_LENGTH / 10)
+        const arrowY = new THREE.ArrowHelper(axisY, origin, this.AXIS_LENGTH, this.AXIS_COLOR_Y, this.AXIS_LENGTH / 5, this.AXIS_LENGTH / 10)
+        const arrowZ = new THREE.ArrowHelper(axisZ, origin, this.AXIS_LENGTH, this.AXIS_COLOR_Z, this.AXIS_LENGTH / 5, this.AXIS_LENGTH / 10)
+        this.add(arrowX, arrowY, arrowZ)
+
+        // an additional box at the origin
+        const sphere = new THREE.SphereGeometry(this.AXIS_LENGTH / 20)
+        const object = new THREE.Mesh(sphere, new THREE.MeshBasicMaterial({
+            color: 0xffff00
+        }))
+        const box = new THREE.BoxHelper(object, 0xffff00)
+        this.add(box)
+    }
+}

+ 103 - 0
src/views/modelLibrary/common/coordinateAxesRenderer.js

@@ -0,0 +1,103 @@
+import * as THREE from 'three'
+import CoordinateAxes from './coordinateAxes'
+// import Renderer from '@/components/common/Renderer'
+
+/**
+ * This renderer monitors the host renderer's camera, and keeps a coordinate axes
+ * the same direction as host renderer's
+ */
+export default class CoordinateAxesRenderer {
+    hostRenderer = null
+    coordinateAxes = null
+    camera = null
+    scene = null
+    renderer = null
+    ambientLight = null
+    height = 600 // size of render area
+    width = 600
+
+    constructor(width, height, renderer) {
+        this.width = width || this.width
+        this.height = height || this.height
+        this.init()
+        // this.setHostRenderer(renderer)
+    }
+
+    init() {
+        this.initRenderer()
+        this.initScene()
+        this.animate()
+    }
+
+    initRenderer() {
+        this.renderer = new THREE.WebGLRenderer({
+            antialias: true,
+            alpha: true
+        })
+        this.renderer.setSize(this.width, this.height)
+    }
+
+    initScene() {
+        this.scene = new THREE.Scene()
+        this.scene.layer = 6
+        // this.scene.background = new THREE.Color(0xebf2f7)
+
+        this.camera = new THREE.OrthographicCamera(-1, 1, 1, -1, 0.1, 100)
+        // this.camera.position.set(1.5, 1.5, 1.5)
+        // this.camera.lookAt(0, 0, 0)
+        this.scene.add(this.camera)
+
+        this.ambientLight = new THREE.AmbientLight(0xcccccc, 1)
+        this.scene.add(this.ambientLight)
+
+        this.coordinateAxes = new CoordinateAxes()
+        this.scene.add(this.coordinateAxes)
+    }
+
+    render() {
+        if (this.renderer && this.scene && this.camera) {
+            this.update()
+            this.renderer.render(this.scene, this.camera)
+        }
+    }
+
+    animate() {
+        requestAnimationFrame(this.animate.bind(this))
+        this.render()
+    }
+
+    setHostRenderer(renderer) {
+        this.hostRenderer = renderer
+        this.update()
+    }
+
+    update() {
+        if (!this.hostRenderer || !this.hostRenderer.camera) {
+            return
+        }
+        const camera = this.hostRenderer.camera
+        if (camera) {
+            const target = new THREE.Vector3()
+            camera.getWorldDirection(target)
+            const up = camera.up
+            this.updateCameraDirection(target, up)
+        }
+    }
+
+    /**
+     * Update axes according to camera direction.
+     * Camera's direction is the only input factor for this class. It always look at the origin.
+     * @param direction
+     */
+    updateCameraDirection(direction, up) {
+        if (!this.camera || !direction) {
+            return
+        }
+        direction.normalize()
+        const distanceFactor = 200 // keep camera a little farer, so it looks better
+        const centerDelta = 0.3 // put the lookAt point to be in the first quadrant
+        this.camera.position.set(-direction.x * distanceFactor + centerDelta, -direction.y * distanceFactor + centerDelta, -direction.z * distanceFactor + centerDelta)
+        this.camera.lookAt(centerDelta, centerDelta, centerDelta) // it always looks at the origin
+        this.camera.up = up
+    }
+}

+ 2 - 2
src/views/page/pageMenu.vue

@@ -121,11 +121,11 @@
                         >
                         <el-menu-item
                             index="/standardRegulationSimulationScenarioList"
-                            >标准法规仿真场景</el-menu-item
+                            >标准法规场景</el-menu-item
                         >
                         <el-menu-item
                             index="/trafficAccidentSimulationScenarioList"
-                            >交通事故仿真场景</el-menu-item
+                            >交通事故场景</el-menu-item
                         >
                         <el-menu-item index="/scenarioTestPackageManagementList"
                             >场景测试包管理</el-menu-item

+ 4 - 4
src/views/personalInformation/personalInformation.vue

@@ -182,14 +182,14 @@
                         label: "自然驾驶场景",
                         prop: "zrCount",
                     },
-                    {
-                        label: "交通事故场景",
-                        prop: "jtCount",
-                    },
                     {
                         label: "标准法规场景",
                         prop: "bzCount",
                     },
+                    {
+                        label: "交通事故场景",
+                        prop: "jtCount",
+                    },
                     {
                         label: "泛化场景模板",
                         prop: "fhCount"

+ 33 - 29
src/views/sceneLibrary/components/realSceneList.vue

@@ -7,13 +7,13 @@
                     type="card"
                     @tab-click="pageControl"
                 >
-                    <el-tab-pane label="交通事故场景" name="1"></el-tab-pane>
-                    <el-tab-pane label="自然驾驶场景" name="2"></el-tab-pane>
-                    <el-tab-pane label="标准法规场景" name="3"></el-tab-pane>
+                    <el-tab-pane label="自然驾驶场景" name="1"></el-tab-pane>
+                    <el-tab-pane label="标准法规场景" name="2"></el-tab-pane>
+                    <el-tab-pane label="交通事故场景" name="3"></el-tab-pane>
                 </el-tabs>
             </div>
 
-            <div v-show="activeName === '1'">
+            <div v-show="activeName === '3'">
                 <search-layout>
                     <template slot="searchItem1">
                         <span class="label">场景名称</span>
@@ -144,10 +144,10 @@
                 </tableList>
             </div>
 
-            <div v-show="activeName === '2'">
+            <div v-show="activeName === '1'">
                 <search-layout>
                     <template slot="searchItem1">
-                        <span class="label">场景编号</span>
+                        <span class="label">场景名称</span>
                         <el-input
                             v-model="searchParamsB.naturalName"
                             size="small"
@@ -158,20 +158,20 @@
                         </el-input>
                     </template>
                     <template slot="searchItem2">
-                        <span class="label">道路</span>
+                        <span class="label">自车行为</span>
                         <el-cascader
-                            v-model="searchParamsB.road"
-                            :options="roadList"
+                            v-model="searchParamsB.selfBehavior"
+                            :options="selfBehaviorList"
                             :props="props"
                             clearable=""
                             size="small"
                         ></el-cascader>
                     </template>
                     <template slot="searchItem3">
-                        <span class="label">基础设施</span>
+                        <span class="label">目标行为</span>
                         <el-cascader
-                            v-model="searchParamsB.infrastructure"
-                            :options="infrastructureList"
+                            v-model="searchParamsB.targetBehavior"
+                            :options="targetBehaviorList"
                             :props="props"
                             clearable=""
                             size="small"
@@ -188,20 +188,20 @@
                         ></el-cascader>
                     </template>
                     <template slot="searchItem5">
-                        <span class="label">自车行为</span>
+                        <span class="label">道路</span>
                         <el-cascader
-                            v-model="searchParamsB.selfBehavior"
-                            :options="selfBehaviorList"
+                            v-model="searchParamsB.road"
+                            :options="roadList"
                             :props="props"
                             clearable=""
                             size="small"
                         ></el-cascader>
                     </template>
                     <template slot="searchItem6">
-                        <span class="label">目标行为</span>
+                        <span class="label">基础设施</span>
                         <el-cascader
-                            v-model="searchParamsB.targetBehavior"
-                            :options="targetBehaviorList"
+                            v-model="searchParamsB.infrastructure"
+                            :options="infrastructureList"
                             :props="props"
                             clearable=""
                             size="small"
@@ -270,7 +270,7 @@
                 </tableList>
             </div>
 
-            <div v-show="activeName === '3'">
+            <div v-show="activeName === '2'">
                 <search-layout>
                     <template slot="searchItem1">
                         <span class="label">场景名称</span>
@@ -360,9 +360,9 @@
                     checkedIdsA.length + checkedIdsB.length + checkedIdsC.length
                 }}
             </div>
-            <div>交通事故场景: {{ checkedIdsA.length }}</div>
             <div>自然驾驶场景: {{ checkedIdsB.length }}</div>
             <div>标准法规场景: {{ checkedIdsC.length }}</div>
+            <div>交通事故场景: {{ checkedIdsA.length }}</div>
         </div>
     </div>
 </template>
@@ -442,7 +442,7 @@ export default {
             selectedA: false, // 是否选中展示已选择项
             searchParamsB: {
                 //搜索参数
-                naturalName: "", // 场景编号
+                naturalName: "", // 场景名称
                 road: [], // 道路
                 infrastructure: [], // 基础设施
                 trafficCondition: [], // 交通情况
@@ -466,13 +466,9 @@ export default {
             columnsB: [
                 //表格列
                 {
-                    label: "场景编号",
+                    label: "场景名称",
                     prop: "naturalName",
                 },
-                {
-                    label: "天气",
-                    prop: "weather",
-                },
                 {
                     label: "自车行为",
                     prop: "selfBehavior",
@@ -481,6 +477,14 @@ export default {
                     label: "目标行为",
                     prop: "targetBehavior",
                 },
+                {
+                    label: "天气",
+                    prop: "weather",
+                },
+                {
+                    label: "道路类型",
+                    prop: "roadType",
+                },
             ],
             paginationB: {
                 //分页使用
@@ -563,11 +567,11 @@ export default {
         pageControl(data) {
             this.activeName = data.name;
             if (this.activeName === "1") {
-                this.doSearchA();
-            } else if (this.activeName === "2") {
                 this.doSearchB();
-            } else {
+            } else if (this.activeName === "2") {
                 this.doSearchC();
+            } else {
+                this.doSearchA();
             }
         },
         doSearchA() {

+ 20 - 16
src/views/sceneLibrary/naturalDrivingScenarioList.vue

@@ -14,20 +14,20 @@
                 </el-input>
             </template>
             <template slot="searchItem2">
-                <span class="label">道路</span>
+                <span class="label">自车行为</span>
                 <el-cascader
-                    v-model="searchParams.road"
-                    :options="roadList"
+                    v-model="searchParams.selfBehavior"
+                    :options="selfBehaviorList"
                     :props="props"
                     clearable
                     size="small"
                 ></el-cascader>
             </template>
             <template slot="searchItem3">
-                <span class="label">基础设施</span>
+                <span class="label">目标行为</span>
                 <el-cascader
-                    v-model="searchParams.infrastructure"
-                    :options="infrastructureList"
+                    v-model="searchParams.targetBehavior"
+                    :options="targetBehaviorList"
                     :props="props"
                     clearable
                     size="small"
@@ -44,20 +44,20 @@
                 ></el-cascader>
             </template>
             <template slot="searchItem5">
-                <span class="label">自车行为</span>
+                <span class="label">道路</span>
                 <el-cascader
-                    v-model="searchParams.selfBehavior"
-                    :options="selfBehaviorList"
+                    v-model="searchParams.road"
+                    :options="roadList"
                     :props="props"
                     clearable
                     size="small"
                 ></el-cascader>
             </template>
             <template slot="searchItem6">
-                <span class="label">目标行为</span>
+                <span class="label">基础设施</span>
                 <el-cascader
-                    v-model="searchParams.targetBehavior"
-                    :options="targetBehaviorList"
+                    v-model="searchParams.infrastructure"
+                    :options="infrastructureList"
                     :props="props"
                     clearable
                     size="small"
@@ -228,10 +228,6 @@ export default {
                     label: "场景名称",
                     prop: "naturalName",
                 },
-                {
-                    label: "天气",
-                    prop: "weather",
-                },
                 {
                     label: "自车行为",
                     prop: "selfBehavior",
@@ -240,6 +236,14 @@ export default {
                     label: "目标行为",
                     prop: "targetBehavior",
                 },
+                {
+                    label: "天气",
+                    prop: "weather",
+                },
+                {
+                    label: "道路类型",
+                    prop: "roadType",
+                },
                 {
                     label: "标签",
                     prop: "label",

+ 6 - 6
src/views/sceneLibrary/scenarioTestPackageManagementList.vue

@@ -2,7 +2,7 @@
     <div>
         <search-layout :needBox="true">
             <template slot="searchItem1">
-                <span class="label">指标ID</span>
+                <span class="label">测试包ID</span>
                 <el-input
                     v-model="searchParams.packageCode"
                     size="small"
@@ -14,7 +14,7 @@
                 </el-input>
             </template>
             <template slot="searchItem2">
-                <span class="label">指标名称</span>
+                <span class="label">测试包名称</span>
                 <el-input
                     v-model="searchParams.packageName"
                     size="small"
@@ -130,8 +130,8 @@ export default {
         return {
             searchParams: {
                 //搜索参数
-                packageCode: "", //指标ID
-                packageName: "", //指标名称
+                packageCode: "", //测试包ID
+                packageName: "", //测试包名称
                 yearMin: "", // 开始时间
                 yearMax: "", // 结束时间
             },
@@ -139,11 +139,11 @@ export default {
             activeName: "2",
             columns: [
                 {
-                    label: "指标ID",
+                    label: "测试包ID",
                     prop: "packageCode",
                 },
                 {
-                    label: "指标名称",
+                    label: "测试包名称",
                     prop: "packageName",
                 },
                 {

+ 1 - 1
src/views/sceneLibrary/standardRegulationSimulationScenarioList.vue

@@ -124,7 +124,7 @@ import tableList from "@/components/grid/TableList";
 import { mapState } from "vuex";
 
 export default {
-    name: "standardRegulationSimulationScenarioList", // 标准法规仿真场景
+    name: "standardRegulationSimulationScenarioList", // 标准法规场景
     components: { searchLayout, tableList },
     data() {
         return {

+ 1 - 1
src/views/sceneLibrary/trafficAccidentSimulationScenarioList.vue

@@ -186,7 +186,7 @@ import tableList from "@/components/grid/TableList";
 import { mapState } from "vuex";
 
 export default {
-    name: "trafficAccidentSimulationScenarioList", // 交通事故仿真场景
+    name: "trafficAccidentSimulationScenarioList", // 交通事故场景
     components: { searchLayout, tableList },
     data() {
         return {

+ 2 - 2
src/views/systemManagement/clusteringManagement.vue

@@ -3,7 +3,7 @@
     <div>
         <search-layout :needBox="true">
             <template slot="searchItem1">
-                <span class="label">分配账户</span>
+                <span class="label">账户名称</span>
                 <el-input
                     v-model="searchParams.userName"
                     size="small"
@@ -285,7 +285,7 @@ export default {
             }
 
             let pageMap = {
-                username: this.searchParams.username,
+                userName: this.searchParams.userName,
                 modifyTimeStart,
                 modifyTimeEnd,
                 dueTimeStart,

+ 23 - 19
src/views/systemManagement/sceneLibraryManagement/naturalDrivingScene.vue

@@ -2,7 +2,7 @@
     <div class="naturalDrivingScenarioListPanel">
         <search-layout :needBox="true">
             <template slot="searchItem1">
-                <span class="label">场景编号</span>
+                <span class="label">场景名称</span>
                 <el-input
                     v-model="searchParams.naturalName"
                     size="small"
@@ -14,20 +14,20 @@
                 </el-input>
             </template>
             <template slot="searchItem2">
-                <span class="label">道路</span>
+                <span class="label">自车行为</span>
                 <el-cascader
-                    v-model="searchParams.road"
-                    :options="roadList"
+                    v-model="searchParams.selfBehavior"
+                    :options="selfBehaviorList"
                     :props="props"
                     clearable
                     size="small"
                 ></el-cascader>
             </template>
             <template slot="searchItem3">
-                <span class="label">基础设施</span>
+                <span class="label">目标行为</span>
                 <el-cascader
-                    v-model="searchParams.infrastructure"
-                    :options="infrastructureList"
+                    v-model="searchParams.targetBehavior"
+                    :options="targetBehaviorList"
                     :props="props"
                     clearable
                     size="small"
@@ -44,20 +44,20 @@
                 ></el-cascader>
             </template>
             <template slot="searchItem5">
-                <span class="label">自车行为</span>
+                <span class="label">道路</span>
                 <el-cascader
-                    v-model="searchParams.selfBehavior"
-                    :options="selfBehaviorList"
+                    v-model="searchParams.road"
+                    :options="roadList"
                     :props="props"
                     clearable
                     size="small"
                 ></el-cascader>
             </template>
             <template slot="searchItem6">
-                <span class="label">目标行为</span>
+                <span class="label">基础设施</span>
                 <el-cascader
-                    v-model="searchParams.targetBehavior"
-                    :options="targetBehaviorList"
+                    v-model="searchParams.infrastructure"
+                    :options="infrastructureList"
                     :props="props"
                     clearable
                     size="small"
@@ -202,7 +202,7 @@ export default {
         return {
             searchParams: {
                 //搜索参数
-                naturalName: "", // 场景编号
+                naturalName: "", // 场景名称
                 road: [], // 道路
                 infrastructure: [], // 基础设施
                 trafficCondition: [], // 交通情况
@@ -237,13 +237,9 @@ export default {
             columns: [
                 //表格列
                 {
-                    label: "场景编号",
+                    label: "场景名称",
                     prop: "naturalName",
                 },
-                {
-                    label: "天气",
-                    prop: "weather",
-                },
                 {
                     label: "自车行为",
                     prop: "selfBehavior",
@@ -252,6 +248,14 @@ export default {
                     label: "目标行为",
                     prop: "targetBehavior",
                 },
+                {
+                    label: "天气",
+                    prop: "weather",
+                },
+                {
+                    label: "道路类型",
+                    prop: "roadType",
+                },
                 {
                     label: "标签",
                     prop: "label",

+ 15 - 15
src/views/systemManagement/sceneLibraryManagement/sceneLibraryManagement.vue

@@ -1,4 +1,4 @@
-<!--场景库管理,包括自然驾驶、标准法规仿真、交通事故仿真、泛化四个场景库-->
+<!--场景库管理,包括自然驾驶、标准法规、交通事故、泛化四个场景库-->
 <template>
     <div>
         <toolbarTab
@@ -9,17 +9,8 @@
             @toolbarClick="toolsControl"
         >
         </toolbarTab>
-        <traffic-accident-simulation-scene
-            v-show="subPageActiveName === 1"
-            :selfDrivingList="selfDrivingList"
-            :targetDrivingList="targetDrivingList"
-            :selfReactionList="selfReactionList"
-            :conflictBehaviorList="conflictBehaviorList"
-            :conflictTypeList="conflictTypeList"
-        >
-        </traffic-accident-simulation-scene>
         <natural-driving-scene
-            v-show="subPageActiveName === 2"
+            v-show="subPageActiveName === 1"
             :roadList="roadList"
             :infrastructureList="infrastructureList"
             :trafficConditionList="trafficConditionList"
@@ -30,10 +21,19 @@
         >
         </natural-driving-scene>
         <standard-regulation-simulation-scene
-            v-show="subPageActiveName === 3"
+            v-show="subPageActiveName === 2"
             :regulationTypeList="regulationTypeList"
         >
         </standard-regulation-simulation-scene>
+        <traffic-accident-simulation-scene
+            v-show="subPageActiveName === 3"
+            :selfDrivingList="selfDrivingList"
+            :targetDrivingList="targetDrivingList"
+            :selfReactionList="selfReactionList"
+            :conflictBehaviorList="conflictBehaviorList"
+            :conflictTypeList="conflictTypeList"
+        >
+        </traffic-accident-simulation-scene>
         <generalization-scene
             v-show="subPageActiveName === 4"
             :scenarioWeatherList="scenarioWeatherList"
@@ -83,7 +83,7 @@ export default {
                 {
                     type: "primary",
                     plain: true,
-                    title: "交通事故仿真场景",
+                    title: "自然驾驶场景",
                     disabled: false,
                     api: "",
                     fromId: 1,
@@ -91,7 +91,7 @@ export default {
                 {
                     type: "primary",
                     plain: true,
-                    title: "自然驾驶场景",
+                    title: "标准法规场景",
                     disabled: false,
                     api: "",
                     fromId: 2,
@@ -99,7 +99,7 @@ export default {
                 {
                     type: "primary",
                     plain: true,
-                    title: "标准法规仿真场景",
+                    title: "交通事故场景",
                     disabled: false,
                     api: "",
                     fromId: 3,

+ 1 - 1
src/views/systemManagement/sceneLibraryManagement/standardRegulationSimulationScene.vue

@@ -123,7 +123,7 @@ import tableList from "@/components/grid/TableList";
 import { mapState } from "vuex";
 
 export default {
-    name: "standardRegulationSimulationScenarioList", // 标准法规仿真场景
+    name: "standardRegulationSimulationScenarioList", // 标准法规场景
     components: { searchLayout, tableList },
     data() {
         return {

+ 1 - 1
src/views/systemManagement/sceneLibraryManagement/trafficAccidentSimulationScene.vue

@@ -185,7 +185,7 @@ import tableList from "@/components/grid/TableList";
 import { mapState } from "vuex";
 
 export default {
-    name: "trafficAccidentSimulationScenarioList", // 交通事故仿真场景
+    name: "trafficAccidentSimulationScenarioList", // 交通事故场景
     components: { searchLayout, tableList },
     data() {
         return {

+ 6 - 6
src/views/systemManagement/scenePacketDistributionDetail.vue

@@ -39,9 +39,9 @@
                     场景总数:
                     {{ total }}
                 </div>
-                <div class="numA">交通事故场景: {{ jtSceneNames }}</div>
                 <div class="numA">自然驾驶场景: {{ zrSceneNames }}</div>
                 <div class="numA">标准法规场景: {{ bzSceneNames }}</div>
+                <div class="numA">交通事故场景: {{ jtSceneNames }}</div>
                 <div class="num">泛化场景模板: {{ fhSceneNames }}</div>
             </div>
             <div class="right">
@@ -114,7 +114,7 @@ export default {
                 {
                     label: "场景包名称",
                     prop: "packageName",
-                    showOverflowTooltip:true
+                    showOverflowTooltip: true,
                 },
                 {
                     label: "描述",
@@ -125,14 +125,14 @@ export default {
                     label: "自然驾驶场景",
                     prop: "zrCount",
                 },
-                {
-                    label: "交通事故场景",
-                    prop: "jtCount",
-                },
                 {
                     label: "标准法规场景",
                     prop: "bzCount",
                 },
+                {
+                    label: "交通事故场景",
+                    prop: "jtCount",
+                },
                 {
                     label: "泛化场景模板",
                     prop: "fhCount",

+ 18 - 18
src/views/systemManagement/scenePacketListManagement/detail.vue

@@ -34,36 +34,24 @@
                     form.fhSceneNames.length
                 }}
             </div>
-            <div class="numA">交通事故场景: {{ form.jtSceneNames.length }}</div>
             <div class="numA">自然驾驶场景: {{ form.zrSceneNames.length }}</div>
             <div class="numA">标准法规场景: {{ form.bzSceneNames.length }}</div>
+            <div class="numA">交通事故场景: {{ form.jtSceneNames.length }}</div>
             <div class="num">泛化场景模板: {{ form.fhSceneNames.length }}</div>
         </div>
 
         <div class="myTabsBox myTabsBoxThreeTabs">
             <el-tabs v-model="activeName" type="card" @tab-click="pageControl">
-                <el-tab-pane label="交通事故场景" name="1"></el-tab-pane>
-                <el-tab-pane label="自然驾驶场景" name="2"></el-tab-pane>
-                <el-tab-pane label="标准法规场景" name="3"></el-tab-pane>
+                <el-tab-pane label="自然驾驶场景" name="1"></el-tab-pane>
+                <el-tab-pane label="标准法规场景" name="2"></el-tab-pane>
+                <el-tab-pane label="交通事故场景" name="3"></el-tab-pane>
                 <el-tab-pane label="泛化场景模板" name="4"></el-tab-pane>
             </el-tabs>
         </div>
 
         <div class="listBox">
-            <traffic-accident-simulation-list
-                v-show="activeName === '1'"
-                ref="listA"
-                :sceneType="types[0]"
-                nameType="1"
-                @selectedData="selectedData"
-                :selfDrivingList="selfDrivingList"
-                :targetDrivingList="targetDrivingList"
-                :selfReactionList="selfReactionList"
-                :conflictBehaviorList="conflictBehaviorList"
-                :conflictTypeList="conflictTypeList"
-            ></traffic-accident-simulation-list>
             <natural-driving-list
-                v-show="activeName === '2'"
+                v-show="activeName === '1'"
                 ref="listB"
                 :sceneType="types[1]"
                 nameType="2"
@@ -77,12 +65,24 @@
                 :temporaryOperationList="temporaryOperationList"
             ></natural-driving-list>
             <standard-regulation-simulation-list
-                v-show="activeName === '3'"
+                v-show="activeName === '2'"
                 ref="listC"
                 :sceneType="types[2]"
                 @selectedData="selectedData"
                 :regulationTypeList="regulationTypeList"
             ></standard-regulation-simulation-list>
+            <traffic-accident-simulation-list
+                v-show="activeName === '3'"
+                ref="listA"
+                :sceneType="types[0]"
+                nameType="1"
+                @selectedData="selectedData"
+                :selfDrivingList="selfDrivingList"
+                :targetDrivingList="targetDrivingList"
+                :selfReactionList="selfReactionList"
+                :conflictBehaviorList="conflictBehaviorList"
+                :conflictTypeList="conflictTypeList"
+            ></traffic-accident-simulation-list>
             <generalization-list
                 v-show="activeName === '4'"
                 ref="listD"

+ 4 - 4
src/views/systemManagement/scenePacketListManagement/index.vue

@@ -192,14 +192,14 @@ export default {
                     label: "自然驾驶场景",
                     prop: "zrCount",
                 },
-                {
-                    label: "交通事故场景",
-                    prop: "jtCount",
-                },
                 {
                     label: "标准法规场景",
                     prop: "bzCount",
                 },
+                {
+                    label: "交通事故场景",
+                    prop: "jtCount",
+                },
                 {
                     label: "泛化场景模板",
                     prop: "fhCount",

+ 23 - 19
src/views/systemManagement/scenePacketListManagement/naturalDrivingList.vue

@@ -2,7 +2,7 @@
     <div>
         <search-layout>
             <template slot="searchItem1">
-                <span class="label">场景编号</span>
+                <span class="label">场景名称</span>
                 <el-input
                     v-model="searchParams.naturalName"
                     size="small"
@@ -14,20 +14,20 @@
                 </el-input>
             </template>
             <template slot="searchItem2">
-                <span class="label">道路</span>
+                <span class="label">自车行为</span>
                 <el-cascader
-                    v-model="searchParams.road"
-                    :options="roadList"
+                    v-model="searchParams.selfBehavior"
+                    :options="selfBehaviorList"
                     :props="props"
                     clearable
                     size="small"
                 ></el-cascader>
             </template>
             <template slot="searchItem3">
-                <span class="label">基础设施</span>
+                <span class="label">目标行为</span>
                 <el-cascader
-                    v-model="searchParams.infrastructure"
-                    :options="infrastructureList"
+                    v-model="searchParams.targetBehavior"
+                    :options="targetBehaviorList"
                     :props="props"
                     clearable
                     size="small"
@@ -44,20 +44,20 @@
                 ></el-cascader>
             </template>
             <template slot="searchItem5">
-                <span class="label">自车行为</span>
+                <span class="label">道路</span>
                 <el-cascader
-                    v-model="searchParams.selfBehavior"
-                    :options="selfBehaviorList"
+                    v-model="searchParams.road"
+                    :options="roadList"
                     :props="props"
                     clearable
                     size="small"
                 ></el-cascader>
             </template>
             <template slot="searchItem6">
-                <span class="label">目标行为</span>
+                <span class="label">基础设施</span>
                 <el-cascader
-                    v-model="searchParams.targetBehavior"
-                    :options="targetBehaviorList"
+                    v-model="searchParams.infrastructure"
+                    :options="infrastructureList"
                     :props="props"
                     clearable
                     size="small"
@@ -123,7 +123,7 @@ export default {
         return {
             searchParams: {
                 //搜索参数
-                naturalName: "", // 场景编号
+                naturalName: "", // 场景名称
                 road: [], // 道路
                 infrastructure: [], // 基础设施
                 trafficCondition: [], // 交通情况
@@ -140,13 +140,9 @@ export default {
             columns: [
                 //表格列
                 {
-                    label: "场景编号",
+                    label: "场景名称",
                     prop: "naturalName",
                 },
-                {
-                    label: "天气",
-                    prop: "weather",
-                },
                 {
                     label: "自车行为",
                     prop: "selfBehavior",
@@ -155,6 +151,14 @@ export default {
                     label: "目标行为",
                     prop: "targetBehavior",
                 },
+                {
+                    label: "天气",
+                    prop: "weather",
+                },
+                {
+                    label: "道路类型",
+                    prop: "roadType",
+                },
             ],
             getDataWay: {
                 //加载表格数据

+ 5 - 0
src/views/systemManagement/scenePacketListManagement/trafficAccidentSimulationList.vue

@@ -19,6 +19,7 @@
                     v-model="searchParams.selfDriving"
                     multiple
                     clearable
+                    size="small"
                 >
                     <el-option
                         v-for="item in selfDrivingList"
@@ -34,6 +35,7 @@
                     v-model="searchParams.targetDriving"
                     multiple
                     clearable
+                    size="small"
                 >
                     <el-option
                         v-for="item in targetDrivingList"
@@ -49,6 +51,7 @@
                     v-model="searchParams.selfReaction"
                     multiple
                     clearable
+                    size="small"
                 >
                     <el-option
                         v-for="item in selfReactionList"
@@ -64,6 +67,7 @@
                     v-model="searchParams.conflictBehavior"
                     multiple
                     clearable
+                    size="small"
                 >
                     <el-option
                         v-for="item in conflictBehaviorList"
@@ -79,6 +83,7 @@
                     v-model="searchParams.conflictType"
                     multiple
                     clearable
+                    size="small"
                 >
                     <el-option
                         v-for="item in conflictTypeList"

+ 18 - 0
src/views/systemManagement/sceneUploadList.vue

@@ -189,6 +189,7 @@ import upload from "./components/upload";
 export default {
     name: "sceneUploadList", // 场景上传
     components: { searchLayout, tableList, upload },
+    
     data() {
         let formatSeconds = function formatSeconds(value) {
             var theTime = parseInt(value); // 秒
@@ -292,6 +293,7 @@ export default {
             file: null,
             errRocordVisible: false,
             errorMessage: "",
+            timer: null,
         };
     },
 
@@ -326,6 +328,12 @@ export default {
                 timeEnd,
             };
             this.refreshList(pageMap);
+
+            if (this.timer) clearInterval(this.timer);
+
+            this.timer = setInterval(() => {
+                if (this.$refs["table"]) this.doSearch();
+            }, 1000 * 60);
         },
         //刷新table
         refreshList(param) {
@@ -432,10 +440,20 @@ export default {
     },
 
     async mounted() {
+        if (this.timer) clearInterval(this.timer);
+
+        this.timer = setInterval(() => {
+            if (this.$refs["table"]) this.doSearch();
+        }, 1000 * 60);
+
         await this.$dicsListsInit({
             sceneTypeList: "sceneType",
         });
     },
+
+    beforeDestroy() {
+        clearInterval(this.timer);
+    },
 };
 </script>
 

+ 3 - 1
src/views/workManagement/projectInfo.vue

@@ -444,8 +444,10 @@ export default {
         $route(to, from) {
             if (to.name === "projectInfo") {
                 this.$nextTick(() => {
-                    if (this.$refs.threeShow)
+                    if (this.$refs.threeShow) {
+                        this.$refs.threeShow.initCar(this.carModel);
                         this.$refs.threeShow.showAll(this.configList);
+                    }
                 });
             }
         },