sceneLibraryManagement.vue 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179
  1. <!--场景库管理,包括自然驾驶、标准法规、交通事故、泛化四个场景库-->
  2. <template>
  3. <div>
  4. <toolbarTab
  5. :isConnect="true"
  6. position="top"
  7. :subPageActiveName="subPageActiveName"
  8. :toolbarItem="subPageList"
  9. @toolbarClick="toolsControl"
  10. >
  11. </toolbarTab>
  12. <natural-driving-scene
  13. v-show="subPageActiveName === 1"
  14. :roadList="roadList"
  15. :infrastructureList="infrastructureList"
  16. :trafficConditionList="trafficConditionList"
  17. :selfBehaviorList="selfBehaviorList"
  18. :targetBehaviorList="targetBehaviorList"
  19. :naturalEnvironmentList="naturalEnvironmentList"
  20. :temporaryOperationList="temporaryOperationList"
  21. >
  22. </natural-driving-scene>
  23. <standard-regulation-simulation-scene
  24. v-show="subPageActiveName === 2"
  25. :regulationTypeList="regulationTypeList"
  26. >
  27. </standard-regulation-simulation-scene>
  28. <traffic-accident-simulation-scene
  29. v-show="subPageActiveName === 3"
  30. :selfDrivingList="selfDrivingList"
  31. :targetDrivingList="targetDrivingList"
  32. :selfReactionList="selfReactionList"
  33. :conflictBehaviorList="conflictBehaviorList"
  34. :conflictTypeList="conflictTypeList"
  35. >
  36. </traffic-accident-simulation-scene>
  37. <generalization-scene
  38. v-show="subPageActiveName === 4"
  39. :scenarioRoadTypeList="scenarioRoadTypeList"
  40. ></generalization-scene>
  41. <benchmark-scenario v-show="subPageActiveName === 5">
  42. </benchmark-scenario>
  43. </div>
  44. </template>
  45. <script>
  46. import toolbarTab from '@/components/toolbar/toolbarTab'
  47. import trafficAccidentSimulationScene from './trafficAccidentSimulationScene'
  48. import naturalDrivingScene from './naturalDrivingScene'
  49. import standardRegulationSimulationScene from './standardRegulationSimulationScene'
  50. import generalizationScene from './generalizationScene'
  51. import benchmarkScenario from './benchmarkScenario.vue'
  52. export default {
  53. name: 'sceneLibraryManagement', // 场景库管理
  54. components: {
  55. toolbarTab,
  56. naturalDrivingScene,
  57. standardRegulationSimulationScene,
  58. trafficAccidentSimulationScene,
  59. generalizationScene,
  60. benchmarkScenario,
  61. },
  62. data() {
  63. return {
  64. subPageActiveName: 1,
  65. selfDrivingList: [],
  66. targetDrivingList: [],
  67. selfReactionList: [],
  68. conflictBehaviorList: [],
  69. conflictTypeList: [],
  70. roadList: [],
  71. infrastructureList: [],
  72. trafficConditionList: [],
  73. selfBehaviorList: [],
  74. targetBehaviorList: [],
  75. naturalEnvironmentList: [],
  76. temporaryOperationList: [],
  77. regulationTypeList: [],
  78. fileNameList: [],
  79. // scenarioWeatherList: [],
  80. scenarioRoadTypeList: [],
  81. }
  82. },
  83. computed: {
  84. subPageList() {
  85. return [
  86. {
  87. type: 'primary',
  88. plain: true,
  89. title: '自然驾驶场景',
  90. disabled: false,
  91. api: '',
  92. fromId: 1,
  93. },
  94. {
  95. type: 'primary',
  96. plain: true,
  97. title: '标准法规场景',
  98. disabled: false,
  99. api: '',
  100. fromId: 2,
  101. },
  102. {
  103. type: 'primary',
  104. plain: true,
  105. title: '交通事故场景',
  106. disabled: false,
  107. api: '',
  108. fromId: 3,
  109. },
  110. {
  111. type: 'primary',
  112. plain: true,
  113. title: '泛化场景模板',
  114. disabled: false,
  115. api: '',
  116. fromId: 4,
  117. },
  118. {
  119. type: 'primary',
  120. plain: true,
  121. title: '基准场景库',
  122. disabled: false,
  123. api: '',
  124. fromId: 5,
  125. },
  126. ]
  127. },
  128. },
  129. methods: {
  130. toolsControl(item) {
  131. this.subPageActiveName = item.fromId
  132. },
  133. },
  134. async mounted() {
  135. await this.$dicsListsInit({
  136. selfDrivingList: 'selfDriving',
  137. targetDrivingList: 'targetDriving',
  138. selfReactionList: 'selfReaction',
  139. conflictBehaviorList: 'conflictBehavior',
  140. conflictTypeList: 'conflictType',
  141. regulationTypeList: 'regulationType',
  142. // scenarioWeatherList: "scenarioWeather",
  143. scenarioRoadTypeList: 'scenarioRoadType',
  144. })
  145. await this.$dicsTreesInit({
  146. roadList: 'road',
  147. infrastructureList: 'infrastructure',
  148. trafficConditionList: 'trafficCondition',
  149. selfBehaviorList: 'selfBehavior',
  150. targetBehaviorList: 'targetBehavior',
  151. naturalEnvironmentList: 'naturalEnvironment',
  152. temporaryOperationList: 'temporaryOperation',
  153. })
  154. },
  155. }
  156. </script>
  157. <style scoped lang="less">
  158. .tabsBox {
  159. position: relative;
  160. overflow: hidden;
  161. .el-button {
  162. position: absolute;
  163. right: 40px;
  164. top: 45px;
  165. }
  166. }
  167. .myTabsBox {
  168. min-height: 99px;
  169. }
  170. /deep/ .el-tabs__nav .el-tabs__item {
  171. width: auto;
  172. padding: 0 10px;
  173. }
  174. </style>