|
@@ -1,5 +1,5 @@
|
|
<template>
|
|
<template>
|
|
- <el-form :model="form" label-width="auto" style="max-width: 600px">
|
|
|
|
|
|
+ <el-form :model="form" label-width="auto" style="max-width: 700px">
|
|
<!-- <el-form-item label="发布终点 :">-->
|
|
<!-- <el-form-item label="发布终点 :">-->
|
|
<!-- <el-button type="primary" @click="onSubmit">默认终点</el-button>-->
|
|
<!-- <el-button type="primary" @click="onSubmit">默认终点</el-button>-->
|
|
<!-- <el-button type="primary" @click="onSubmit">自定义终点</el-button>-->
|
|
<!-- <el-button type="primary" @click="onSubmit">自定义终点</el-button>-->
|
|
@@ -20,14 +20,19 @@
|
|
<el-radio-group v-model="form.origin" @change="originChange">
|
|
<el-radio-group v-model="form.origin" @change="originChange">
|
|
<el-radio :value="true">默认起点</el-radio>
|
|
<el-radio :value="true">默认起点</el-radio>
|
|
<el-radio :value="false">自定义起点</el-radio>
|
|
<el-radio :value="false">自定义起点</el-radio>
|
|
- <span >自定义起点</span>
|
|
|
|
</el-radio-group>
|
|
</el-radio-group>
|
|
|
|
+ <span v-show="form.origin==false" @click="startDialogVisible=true" style="margin-left: 20px; font-size: 14px; color: gray; cursor: pointer">
|
|
|
|
+ 当前值:X: {{startForm.X}} Y: {{startForm.Y}} Z: {{startForm.Z}} R: {{startForm.R}} P: {{startForm.P}} H: {{startForm.H}}
|
|
|
|
+ </span>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="终点设置 :" v-if="!form.isRandom">
|
|
<el-form-item label="终点设置 :" v-if="!form.isRandom">
|
|
<el-radio-group v-model="form.destination" @change="destinationChange">
|
|
<el-radio-group v-model="form.destination" @change="destinationChange">
|
|
<el-radio :value="true">默认终点</el-radio>
|
|
<el-radio :value="true">默认终点</el-radio>
|
|
<el-radio :value="false">自定义终点</el-radio>
|
|
<el-radio :value="false">自定义终点</el-radio>
|
|
</el-radio-group>
|
|
</el-radio-group>
|
|
|
|
+ <span v-show="form.destination==false" @click="endDialogVisible=true" style="margin-left: 20px; font-size: 14px; color: gray; cursor: pointer">
|
|
|
|
+ 当前值:X: {{endForm.X}} Y: {{endForm.Y}} Z: {{endForm.Z}} R: {{endForm.R}} P: {{endForm.P}} H: {{endForm.H}}
|
|
|
|
+ </span>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="加载默认障碍物:">
|
|
<el-form-item label="加载默认障碍物:">
|
|
<el-radio-group v-model="form.resource">
|
|
<el-radio-group v-model="form.resource">
|
|
@@ -49,22 +54,22 @@
|
|
<template #footer>
|
|
<template #footer>
|
|
<div class="dialog-footer">
|
|
<div class="dialog-footer">
|
|
<el-form :model="startForm" label-width="auto">
|
|
<el-form :model="startForm" label-width="auto">
|
|
- <el-form-item style="margin-bottom: 10px" label="位置 X :">
|
|
|
|
|
|
+ <el-form-item style="margin-bottom: 10px" label="位置 X :" required>
|
|
<el-input v-model="startForm.X" />
|
|
<el-input v-model="startForm.X" />
|
|
</el-form-item>
|
|
</el-form-item>
|
|
- <el-form-item style="margin-bottom: 10px" label="位置 Y :">
|
|
|
|
|
|
+ <el-form-item style="margin-bottom: 10px" label="位置 Y :" required>
|
|
<el-input v-model="startForm.Y" />
|
|
<el-input v-model="startForm.Y" />
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item style="margin-bottom: 10px" label="位置 Z :">
|
|
<el-form-item style="margin-bottom: 10px" label="位置 Z :">
|
|
- <el-input v-model="startForm.Z" />
|
|
|
|
|
|
+ <el-input v-model="startForm.Z" disabled/>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item style="margin-bottom: 10px" label="角度 R :">
|
|
<el-form-item style="margin-bottom: 10px" label="角度 R :">
|
|
- <el-input v-model="startForm.R" />
|
|
|
|
|
|
+ <el-input v-model="startForm.R" disabled/>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item style="margin-bottom: 10px" label="角度 P :">
|
|
<el-form-item style="margin-bottom: 10px" label="角度 P :">
|
|
- <el-input v-model="startForm.P" />
|
|
|
|
|
|
+ <el-input v-model="startForm.P" disabled/>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
- <el-form-item style="margin-bottom: 10px" label="角度 H :">
|
|
|
|
|
|
+ <el-form-item style="margin-bottom: 10px" label="角度 H :" required>
|
|
<el-input v-model="startForm.H" />
|
|
<el-input v-model="startForm.H" />
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</el-form>
|
|
</el-form>
|
|
@@ -89,13 +94,13 @@
|
|
<el-input v-model="endForm.Y" />
|
|
<el-input v-model="endForm.Y" />
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item style="margin-bottom: 10px" label="位置 Z :">
|
|
<el-form-item style="margin-bottom: 10px" label="位置 Z :">
|
|
- <el-input v-model="endForm.Z" />
|
|
|
|
|
|
+ <el-input v-model="endForm.Z" disabled/>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item style="margin-bottom: 10px" label="角度 R :">
|
|
<el-form-item style="margin-bottom: 10px" label="角度 R :">
|
|
- <el-input v-model="endForm.R" />
|
|
|
|
|
|
+ <el-input v-model="endForm.R" disabled/>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item style="margin-bottom: 10px" label="角度 P :">
|
|
<el-form-item style="margin-bottom: 10px" label="角度 P :">
|
|
- <el-input v-model="endForm.P" />
|
|
|
|
|
|
+ <el-input v-model="endForm.P" disabled/>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item style="margin-bottom: 10px" label="角度 H :">
|
|
<el-form-item style="margin-bottom: 10px" label="角度 H :">
|
|
<el-input v-model="endForm.H" />
|
|
<el-input v-model="endForm.H" />
|
|
@@ -106,7 +111,8 @@
|
|
</template>
|
|
</template>
|
|
</el-dialog>
|
|
</el-dialog>
|
|
|
|
|
|
- <el-button style="margin-left: 10px;" type="primary" @click="goToMain">更换设置并执行</el-button>
|
|
|
|
|
|
+<!-- <el-button style="margin-left: 10px;" type="primary" @click="goToMain">更换设置并执行</el-button>-->
|
|
|
|
+<!-- <el-button style="margin-left: 10px;" type="primary" @click="goToAlgorithmEval">算法评价</el-button>-->
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label=" ">
|
|
<el-form-item label=" ">
|
|
<el-button type="primary" @click="goToAlgorithmEval">算法评价</el-button>
|
|
<el-button type="primary" @click="goToAlgorithmEval">算法评价</el-button>
|
|
@@ -124,10 +130,11 @@ import {reactive} from 'vue'
|
|
import {ref} from 'vue'
|
|
import {ref} from 'vue'
|
|
import {ElMessageBox} from 'element-plus'
|
|
import {ElMessageBox} from 'element-plus'
|
|
import {ElTable, ElLoading, ElMessage} from "element-plus";
|
|
import {ElTable, ElLoading, ElMessage} from "element-plus";
|
|
-
|
|
|
|
|
|
+import {getCurrentInstance} from "vue";
|
|
|
|
|
|
const startDialogVisible = ref(false)
|
|
const startDialogVisible = ref(false)
|
|
const endDialogVisible = ref(false)
|
|
const endDialogVisible = ref(false)
|
|
|
|
+const {proxy} = getCurrentInstance();
|
|
|
|
|
|
const handleClose = (done: () => void) => {
|
|
const handleClose = (done: () => void) => {
|
|
done()
|
|
done()
|
|
@@ -152,19 +159,19 @@ const form = reactive({
|
|
const startForm = reactive({
|
|
const startForm = reactive({
|
|
X: '',
|
|
X: '',
|
|
Y: '',
|
|
Y: '',
|
|
- Z: '',
|
|
|
|
- R: '',
|
|
|
|
- P: '',
|
|
|
|
- H: '',
|
|
|
|
|
|
+ Z: '0',
|
|
|
|
+ R: '0',
|
|
|
|
+ P: '0',
|
|
|
|
+ H: '0',
|
|
})
|
|
})
|
|
|
|
|
|
const endForm = reactive({
|
|
const endForm = reactive({
|
|
X: '',
|
|
X: '',
|
|
Y: '',
|
|
Y: '',
|
|
- Z: '',
|
|
|
|
- R: '',
|
|
|
|
- P: '',
|
|
|
|
- H: '',
|
|
|
|
|
|
+ Z: '0',
|
|
|
|
+ R: '0',
|
|
|
|
+ P: '0',
|
|
|
|
+ H: '0',
|
|
})
|
|
})
|
|
|
|
|
|
const originChange = (value: string) => {
|
|
const originChange = (value: string) => {
|
|
@@ -184,7 +191,7 @@ const onSubmit = () => {
|
|
}
|
|
}
|
|
const router = useRouter();
|
|
const router = useRouter();
|
|
|
|
|
|
-const runSimulation = () => {
|
|
|
|
|
|
+const runSimulation = async () => {
|
|
// 是否加载默认障碍物
|
|
// 是否加载默认障碍物
|
|
let obstacle_flag = form.resource
|
|
let obstacle_flag = form.resource
|
|
let default_start_flag = form.origin
|
|
let default_start_flag = form.origin
|
|
@@ -194,21 +201,33 @@ const runSimulation = () => {
|
|
|
|
|
|
console.log("end_point=" + end_point)
|
|
console.log("end_point=" + end_point)
|
|
// 开启仿真测试
|
|
// 开启仿真测试
|
|
- window.electronAPI.runSimulation(obstacle_flag, default_start_flag, default_end_flag, start_point, end_point)
|
|
|
|
|
|
+ const result = await window.electronAPI.runSimulation(obstacle_flag, default_start_flag, default_end_flag, start_point, end_point)
|
|
// 监听脚本执行状态
|
|
// 监听脚本执行状态
|
|
- window.electronAPI.onRunSimulationResponse( (event, result) => {
|
|
|
|
- if (result.success) { // 脚本执行成功
|
|
|
|
- console.log('Script execution completed successfully.')
|
|
|
|
- ElMessage.success("仿真测试成功!");
|
|
|
|
- } else { // 脚本执行过程中发生错误
|
|
|
|
- console.error('Script execution failed.');
|
|
|
|
- ElMessage.error("仿真测试错误!");
|
|
|
|
- }
|
|
|
|
- })
|
|
|
|
|
|
+ // window.electronAPI.onRunSimulationResponse( (event, result) => {
|
|
|
|
+ // if (result.success) { // 脚本执行成功
|
|
|
|
+ // console.log('Script execution completed successfully.')
|
|
|
|
+ // // ElMessage.success("仿真测试成功!");
|
|
|
|
+ // ElMessage.closeAll()
|
|
|
|
+ // proxy.$message.success("仿真测试成功!");
|
|
|
|
+ // } else { // 脚本执行过程中发生错误
|
|
|
|
+ // console.error('Script execution failed.');
|
|
|
|
+ // proxy.$message.error("仿真测试错误!");
|
|
|
|
+ // }
|
|
|
|
+ // })
|
|
|
|
+ if (result.success) { // 脚本执行成功
|
|
|
|
+ console.log('Script execution completed successfully.')
|
|
|
|
+ // ElMessage.success("仿真测试成功!");
|
|
|
|
+ ElMessage.closeAll()
|
|
|
|
+ proxy.$message.success("仿真测试成功!");
|
|
|
|
+ } else { // 脚本执行过程中发生错误
|
|
|
|
+ console.error('Script execution failed.');
|
|
|
|
+ proxy.$message.error("仿真测试错误!");
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
const goToMain = () => {
|
|
const goToMain = () => {
|
|
- router.push('/')
|
|
|
|
|
|
+ // router.push('/')
|
|
|
|
+ router.back()
|
|
}
|
|
}
|
|
|
|
|
|
const goToAlgorithmEval = () => {
|
|
const goToAlgorithmEval = () => {
|