|
@@ -39,6 +39,10 @@
|
|
|
<span>{{ f4ce }}</span>
|
|
|
<el-select v-model="f4ce" class="no-border headersele" :suffix-icon="CaretBottom">
|
|
|
<el-option v-for="item in optiongroup1" :key="item.value" :label="item.label" :value="item.value">
|
|
|
+ <div style="display: flex; align-items: center;">
|
|
|
+ <img :src="getflowImgPath(item.img)" style="width: 20px; height: 20px; margin-right: 10px;" />
|
|
|
+ <span>{{ item.label }}</span>
|
|
|
+ </div>
|
|
|
</el-option>
|
|
|
</el-select>
|
|
|
</div>
|
|
@@ -46,10 +50,12 @@
|
|
|
<el-image :src="getImgPath('tow2.png')" fit="cover" />
|
|
|
<span>{{ modelban }}</span>
|
|
|
<el-select v-model="modelban" class="no-border headersele" :suffix-icon="CaretBottom">
|
|
|
- <el-option-group v-for="group in optiongroup" :key="group.label" :label="group.label">
|
|
|
- <el-option v-for="item in group.options" :key="item.value" :label="item.label"
|
|
|
- :value="item.value" />
|
|
|
- </el-option-group>
|
|
|
+ <el-option v-for="item in optiongroup" :key="item.value" :label="item.label" :value="item.value">
|
|
|
+ <div style="display: flex; align-items: center;">
|
|
|
+ <img :src="getflowImgPath(item.img)" style="width: 20px; height: 20px; margin-right: 10px;" />
|
|
|
+ <span>{{ item.label }}</span>
|
|
|
+ </div>
|
|
|
+ </el-option>
|
|
|
</el-select>
|
|
|
</div>
|
|
|
<div class="item2 margr" @click="clickgeometry($event, index, 'Role-' + '2', undmodel)">
|
|
@@ -753,7 +759,7 @@
|
|
|
</div>
|
|
|
</template>
|
|
|
<div>
|
|
|
- <ListSE @update="handleUpdate"/>
|
|
|
+ <ListSE :isList="true" @update="handleUpdate"/>
|
|
|
<!-- <el-form>
|
|
|
<el-form-item label="设计集:" >
|
|
|
<el-select v-model="listval" :suffix-icon="CaretBottom" placeholder="请选择">
|
|
@@ -774,7 +780,7 @@
|
|
|
<div class="dialog-footer">
|
|
|
|
|
|
<el-button @click="dialog.listdialog = false">取消</el-button>
|
|
|
- <el-button type="primary" @click="dialog.listdialog = false">
|
|
|
+ <el-button type="primary" @click="selectshujuto();dialog.listdialog = false">
|
|
|
确定
|
|
|
</el-button>
|
|
|
</div>
|
|
@@ -791,7 +797,7 @@
|
|
|
</div>
|
|
|
</template>
|
|
|
<div>
|
|
|
- <ListSE @update="handleUpdate"/>
|
|
|
+ <ListSE :isList="false" @update="handleUpdate"/>
|
|
|
</div>
|
|
|
<template #footer>
|
|
|
<div class="dialog-footer">
|
|
@@ -814,7 +820,7 @@
|
|
|
</div>
|
|
|
</template>
|
|
|
<div>
|
|
|
- <ListSE @update="handleUpdate"/>
|
|
|
+ <ListSE :isList="false" @update="handleUpdate"/>
|
|
|
</div>
|
|
|
<template #footer>
|
|
|
<div class="dialog-footer">
|
|
@@ -1140,7 +1146,7 @@
|
|
|
|
|
|
<template #header="{ titleId, titleClass }">
|
|
|
<div class="my-header ">
|
|
|
- <el-image :src="getImgPath('t2.png')" fit="contain"></el-image>
|
|
|
+ <!-- <el-image :src="getImgPath('t2.png')" fit="contain"></el-image> -->
|
|
|
<h4 :id="titleId" :class="titleClass">优化算法:</h4>
|
|
|
</div>
|
|
|
</template>
|
|
@@ -1263,6 +1269,33 @@
|
|
|
</div>
|
|
|
</template>
|
|
|
</el-dialog>
|
|
|
+ <!-- MathFunc -->
|
|
|
+ <el-dialog v-model="dialog.MathFuncdialog" align-center :modal="false" :close-on-click-modal="false"
|
|
|
+ :append-to-body="true" draggable :fullscreen="false" :modal-append-to-body="false" modal-class="summary-dlg"
|
|
|
+ :before-close="handleClose" width="500" class="dialog_class bgcolor colortext tianjia sel">
|
|
|
+
|
|
|
+ <template #header="{ titleId, titleClass }">
|
|
|
+ <div class="my-header ">
|
|
|
+ <!-- <el-image :src="getImgPath('xuek0.png')" fit="contain"></el-image> -->
|
|
|
+ <h4 :id="titleId" :class="titleClass">MathFunc</h4>
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ <MathFunc ref="MathFuncref" @selectTab="MathFunctabchange"/>
|
|
|
+ <template #footer>
|
|
|
+ <div style="display: flex;justify-content: space-between;">
|
|
|
+ <div>
|
|
|
+ <el-button v-show="MathFuncxinjian">新建</el-button>
|
|
|
+ </div>
|
|
|
+ <div class="dialog-footer">
|
|
|
+ <el-button @click="dialog.MathFuncdialog = false">取消</el-button>
|
|
|
+ <el-button type="primary" @click="; dialog.MathFuncdialog = false">
|
|
|
+ 确定
|
|
|
+ </el-button>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ </template>
|
|
|
+ </el-dialog>
|
|
|
<!-- FSI -->
|
|
|
<el-dialog v-model="dialog.fsidialog" align-center :modal="false" :close-on-click-modal="false"
|
|
|
:append-to-body="true" draggable :fullscreen="false" :modal-append-to-body="false" modal-class="summary-dlg"
|
|
@@ -1308,7 +1341,7 @@
|
|
|
<!--left菜单栏 -->
|
|
|
<Sidebar ref="Sidebarref" />
|
|
|
<!-- 放图形 -->
|
|
|
- <div class="main_container">
|
|
|
+ <div class="right_container">
|
|
|
<div class="main_model">
|
|
|
<div class="jindutiao" v-show="progressshow">
|
|
|
<span style="width: 150px;">运行进度</span>
|
|
@@ -1656,6 +1689,7 @@ import ffds from './titlecomponent/ffds.vue'
|
|
|
import cloudsecond from "./titlecomponent/Cloudsecond.vue";
|
|
|
import FSI from './titlecomponent/FSI.vue'
|
|
|
import Flight from './titlecomponent/Flight.vue'
|
|
|
+import MathFunc from './titlecomponent/MathFunc.vue'
|
|
|
import ListSE from "./titlecomponent/ListSE.vue";
|
|
|
import TACS from "./titlecomponent/TACS.vue";
|
|
|
|
|
@@ -1693,11 +1727,12 @@ let Doptimizeref=ref();
|
|
|
let Toptimizeref=ref();
|
|
|
let Fsiref=ref();
|
|
|
let Flightref=ref();
|
|
|
+let MathFuncref=ref();
|
|
|
let f4ce = ref("优化问题组件");
|
|
|
let modelban = ref("学科分析组件");
|
|
|
let undmodel=ref('优化器组件');
|
|
|
let optiongroup1 = ref([
|
|
|
- { label: '优化问题', value: '优化问题' }
|
|
|
+ { label: '优化问题', value: '优化问题',img:'wen.png' }
|
|
|
])
|
|
|
let options4 = ref([
|
|
|
{ label: '进化优化器', value: '进化优化器', icon:xuek10 },
|
|
@@ -2116,6 +2151,7 @@ let dialog = ref({
|
|
|
guanli: false,
|
|
|
optgroup:false,
|
|
|
Pythonshow:false,
|
|
|
+ MathFuncdialog:false,
|
|
|
listdialog:false,
|
|
|
scatterdialog:false,
|
|
|
echartLinedialog:false,
|
|
@@ -2143,39 +2179,23 @@ let tasklist = ref([
|
|
|
{ label: '噪声', value: '噪声' },
|
|
|
])
|
|
|
|
|
|
-const optiongroup = [
|
|
|
- {
|
|
|
- label: '大飞机',
|
|
|
- options: [
|
|
|
- {
|
|
|
- value: '气动优化',
|
|
|
- label: '气动优化',
|
|
|
- },
|
|
|
- {
|
|
|
- value: '气弹优化',
|
|
|
- label: '气弹优化',
|
|
|
- },
|
|
|
- ],
|
|
|
- },
|
|
|
- {
|
|
|
- label: '直升机',
|
|
|
- options: [
|
|
|
- {
|
|
|
- value: '气动优化1',
|
|
|
- label: '气动优化',
|
|
|
- },
|
|
|
- {
|
|
|
- value: '气弹优化2',
|
|
|
- label: '气弹优化',
|
|
|
- },
|
|
|
- {
|
|
|
- value: '气动噪声优化',
|
|
|
- label: '气动噪声优化',
|
|
|
- },
|
|
|
-
|
|
|
- ],
|
|
|
- },
|
|
|
-]
|
|
|
+const optiongroup = ref([
|
|
|
+ { label: 'CST', value: 'CST', img:'xuek0.png' },
|
|
|
+ { label: 'FFD', value: 'FFD', img:'ffd.png' },
|
|
|
+ { label: 'Xfoil', value: 'Xfoil', img:'xuek9.png' },
|
|
|
+ { label: 'ADflow', value: 'ADflow', img:'ADflow.png' },
|
|
|
+ { label: 'TACS', value: 'TACS', img:'TACS.png' },
|
|
|
+ { label: 'CATIA', value: 'CATIA', img:'xuek1.png' },
|
|
|
+ { label: 'Python', value: 'Python', img:'xuek8.png' },
|
|
|
+ { label: 'Excel', value: 'Excel', img:'xuek2.png' },
|
|
|
+ { label: 'Feko', value: 'Feko', img:'xuek3.png' },
|
|
|
+ { label: 'Fluent', value: 'Fluent', img:'xuek4.png' },
|
|
|
+ { label: 'HCFD', value: 'HCFD', img:'xuek5.png' },
|
|
|
+ { label: 'Matlab', value: 'Matlab', img:'xuek6.png' },
|
|
|
+ { label: 'Nastran', value: 'Nastran', img:'xuek7.png' },
|
|
|
+ { label: 'FUM to FEM', value: 'FSI', img:'fsi.png' },
|
|
|
+ { label: 'Flight', value: 'Flight', img:'flight.png' },
|
|
|
+])
|
|
|
const eloptimize = ref([])
|
|
|
const tableData = ref([])
|
|
|
const designtable = ref([])
|
|
@@ -2212,6 +2232,10 @@ let num = ref(1)
|
|
|
const getImgPath = (url) => {
|
|
|
return new URL(`../assets/img/${url}`, import.meta.url).href
|
|
|
}
|
|
|
+const getflowImgPath = (url) => {
|
|
|
+ return new URL(`../assets/flowimg/${url}`, import.meta.url).href
|
|
|
+}
|
|
|
+
|
|
|
onMounted(() => {
|
|
|
//console.log( Sidebarref.value.datatree);
|
|
|
|
|
@@ -2426,6 +2450,8 @@ const optimizerfalse = (val) => {
|
|
|
}else if(name == 'Flight'){
|
|
|
dialog.value.flightdialog = true;
|
|
|
|
|
|
+ }else if(name == 'MathFunc'){
|
|
|
+ dialog.value.MathFuncdialog = true;
|
|
|
}
|
|
|
else {
|
|
|
dialog.value.optimizer = false;
|
|
@@ -2437,6 +2463,7 @@ const optimizerfalse = (val) => {
|
|
|
dialog.value.XfAD = false;
|
|
|
dialog.value.cstffd = false;
|
|
|
dialog.value.Pythonshow = false;
|
|
|
+ dialog.value.MathFuncdialog = false;
|
|
|
dialog.value.fsidialog = false;
|
|
|
dialog.value.flightdialog = false;
|
|
|
}
|
|
@@ -2619,6 +2646,18 @@ const handleEditorChange = (value) => {
|
|
|
console.log('Editor content changed in parent component:', value);
|
|
|
};
|
|
|
|
|
|
+let MathFuncxinjian = ref('ture')
|
|
|
+const MathFunctabchange = (val) => {
|
|
|
+ // console.log('MathFunctabchange:',val);
|
|
|
+ if(val == '1'){
|
|
|
+ MathFuncxinjian.value = false;
|
|
|
+ }else{
|
|
|
+ MathFuncxinjian.value = true;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
// 模块选择
|
|
|
const clickgeometry = (e, index, key, name) => {
|
|
|
// console.log(key);
|
|
@@ -2706,6 +2745,9 @@ const dialogbolen = () => {
|
|
|
case "列表":
|
|
|
echatsfunc();
|
|
|
dialog.value.listdialog = true;
|
|
|
+ nextTick(() => {
|
|
|
+ initListSe();
|
|
|
+ });
|
|
|
break;
|
|
|
case "面积图":
|
|
|
echatsfunc();
|
|
@@ -2937,7 +2979,7 @@ const runok = () => {
|
|
|
})
|
|
|
})
|
|
|
.catch((err) => {
|
|
|
- ElMessage.error(err.returnMsg)
|
|
|
+ ElMessage.error('运行失败')
|
|
|
})
|
|
|
}
|
|
|
const tableKey = ref(0);
|
|
@@ -3096,10 +3138,6 @@ const curveLine4 = () => {
|
|
|
}
|
|
|
console.log("表格数据:", datatotabledata.value);
|
|
|
console.log("表头数据:", datatotableheader.value);
|
|
|
- // emitter.emit('update:datatotableheader', datatotableheader.value);
|
|
|
- // emitter.emit('update:datatotabledata', datatotabledata.value);
|
|
|
- // scatterref.value.getshuju(datatotableheader.value,datatotabledata.value);
|
|
|
- // echartLineref.value.getshuju(datatotableheader.value,datatotabledata.value);
|
|
|
})
|
|
|
.catch((err) => {
|
|
|
ElMessage.error(err.returnMsg)
|
|
@@ -3197,6 +3235,8 @@ const selectshujuto = () => {
|
|
|
scatterref.value.selectshuju(listcbval.value,listcbval2.value,datatotableheader.value,datatotabledata.value);
|
|
|
}else if(tabactive.value === '折线图'){
|
|
|
echartLineref.value.selectshuju(listcbval.value,listcbval2.value,datatotableheader.value,datatotabledata.value);
|
|
|
+ }else if(tabactive.value === '列表'){
|
|
|
+ tablelistref.value.selectshuju(listcbval2.value)
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -4418,7 +4458,7 @@ const lbjkheaderCellClassName = ({ columnIndex }) => {
|
|
|
font-family: 'Microsoft YaHei';
|
|
|
font-size: 16px;
|
|
|
color: rgba(51, 51, 51, 1);
|
|
|
- line-height: 24px;
|
|
|
+ /* line-height: 24px; */
|
|
|
text-align: left;
|
|
|
font-style: normal;
|
|
|
text-transform: none;
|
|
@@ -4441,7 +4481,7 @@ color: rgba(51, 51, 51, 0.8);
|
|
|
}
|
|
|
|
|
|
.custom-tree1>.el-tree-node>.el-tree-node__content>div img {
|
|
|
- display: none;
|
|
|
+ /* display: none; */
|
|
|
/* 隐藏一级节点复选框 */
|
|
|
}
|
|
|
|
|
@@ -4577,7 +4617,7 @@ color: #2267B1;
|
|
|
|
|
|
.classtable .el-table th .cell {
|
|
|
/* background: #fff; */
|
|
|
- /* line-height: 31px; */
|
|
|
+ line-height: 31px;
|
|
|
}
|
|
|
|
|
|
.classtable .el-table td.el-table__cell, .classtable .el-table th.el-table__cell{
|