Browse Source

1.15改版替换图片第一天

liuqiao 7 tháng trước cách đây
mục cha
commit
ae1b5ae9d9

BIN
src/assets/flowimg/ADflow.png


BIN
src/assets/flowimg/TACS.png


BIN
src/assets/flowimg/ffd.png


BIN
src/assets/flowimg/wen.png


BIN
src/assets/flowimg/wens.png


BIN
src/assets/flowimg/x@2x.png


BIN
src/assets/flowimg/xuek0.png


BIN
src/assets/flowimg/xuek01.png


BIN
src/assets/flowimg/xuek1.png


BIN
src/assets/flowimg/xuek2.png


BIN
src/assets/flowimg/xuek3.png


BIN
src/assets/flowimg/xuek4.png


BIN
src/assets/flowimg/xuek5.png


BIN
src/assets/flowimg/xuek6.png


BIN
src/assets/flowimg/xuek7.png


BIN
src/assets/flowimg/xuek8.png


BIN
src/assets/flowimg/xuek9.png


BIN
src/assets/flowimg/xueks1.png


BIN
src/assets/flowimg/xueks2.png


BIN
src/assets/flowimg/xueks3.png


BIN
src/assets/flowimg/xueks4.png


BIN
src/assets/flowimg/xueks5.png


BIN
src/assets/flowimg/xueks6.png


BIN
src/assets/flowimg/xueks7.png


BIN
src/assets/flowimg/xueks8.png


BIN
src/assets/flowimg/xueks9.png


BIN
src/assets/img/ADflow.png


BIN
src/assets/img/ffd.png


+ 113 - 0
src/style/index.css

@@ -546,3 +546,116 @@ box-sizing: border-box;
 .youhualog{
   padding: 5px 10px;
 }
+.colortext .el-tabs__item{
+  font-family: Source Sans Pro, Source Sans Pro;
+  font-weight: 400;
+  font-size: 20px;
+  color: #333333;
+  line-height: 23px;
+  text-align: left;
+  font-style: normal;
+  text-transform: none;
+}
+.colortext .el-dialog__body{
+  padding: 0;
+}
+.el-tabs__active-bar{
+  background: #2267B1;
+}
+.colortext .el-tabs--left .el-tabs__header.is-left{
+  background: #F4F4F4;
+  height: 459px;
+}
+.colortext .el-tabs--left .el-tabs__active-bar.is-left{
+  right: auto;
+    left: 0;
+    width: 4px;
+}
+.colortext .el-tabs__item.is-active{
+  background-color: #fff;
+  border-bottom: 1px solid #eee;
+}
+.XFpdding{
+  padding: 8px;
+}
+.colortext .XFpdding ul{
+
+  overflow: hidden;
+  background-color: #eee;
+}
+ul{
+  padding: 0;
+  margin: 0;
+}
+.colortext .XFpdding ul .item{
+  padding:0 32px;
+  height: 40px;
+  line-height: 40px;
+  float: left;
+  color: #333;
+  font-size: 18px;
+}
+.colortext .XFpdding ul .item.active {
+  border-top: 2px solid #2267B1;
+  background-color: #FFF;
+  border-left: 1px solid rgba(179, 179, 179, 0.3);
+  border-right: 1px solid rgba(179, 179, 179, 0.3);
+}
+.el-tabs--left .el-tabs__item.is-left{
+  text-align: left !important;
+}
+.colortext .el-table .cell{
+  font-size: 18px !important;
+}
+.colortext  .el-table .el-table__cell{
+  padding: 0;
+}
+.colortext  .el-table thead{
+  font-weight: 400;
+  font-size: 18px;
+  color: #1A1A1A;
+  line-height: 21px;
+  text-align: left;
+  font-style: normal;
+  text-transform: none;
+  font-weight: lighter;
+}
+.colortext .classtable .el-table th .cell{
+  background: none !important;
+}
+.colortext  .el-table thead th{
+  font-weight: 500;
+}
+.colortext  .el-table tr{
+height: 30px;
+}
+.colortext  .classtable .el-table td.el-table__cell, .el-table th.el-table__cell.is-leaf, .eldesign{
+  /* background-color: rgba(238, 238, 238, 1); */
+}
+.colortext  .lefttext .el-form-item__label{
+  text-align: right !important;
+  color: #333;
+  font-size: 18px;
+}
+.colortext .el-tabs--left .el-tabs__header.is-left{
+  margin: 0;
+}
+.colortext .el-tabs--left .el-tabs__nav.is-left, .el-tabs--left .el-tabs__nav.is-right, .el-tabs--right .el-tabs__nav.is-left, .el-tabs--right .el-tabs__nav.is-right{
+width: 200px;
+}
+.colortext .el-tabs--left .el-tabs__item.is-left, .el-tabs--right .el-tabs__item.is-left {
+  justify-content: flex-start;
+}
+.colortext  .el-tabs__nav-wrap::after{
+  background-color: #fff;
+}
+.colortext  .el-form-item__label{
+  display: inline-table;
+}
+.cheinput{
+  display: flex;
+}
+.cheinput .el-form-item{
+  width: 100%;
+  padding-right: 10px;
+}

+ 1 - 1
src/style/style.css

@@ -549,4 +549,4 @@ height: 180px;
 background: #FFFFFF;
 border-radius: 0px 0px 0px 0px;
 border: 1px solid #2267B1;
-}
+}

+ 155 - 21
src/views/home.vue

@@ -375,9 +375,7 @@
               </div>
             </template>
             <div class="numberinput">
-              <!-- class="border2" -->
               <div>
-                <!-- <div class="title2">GA遗传算法</div> -->
                 <el-form-item label="优化算法" :label-width="formLabelWidth1">
                   <el-select v-model="youhua.algorithm" :suffix-icon="CaretBottom" placeholder="请选择">
                     <el-option v-for="item in yslist" :key="item.value" :label="item.label" :value="item.value">
@@ -417,16 +415,6 @@
                     </el-option>
                   </el-select>
                 </el-form-item>
-                <!-- <el-form-item label="precision:" :label-width="formLabelWidth1">
-                    <el-select   v-model="addval7" :suffix-icon="CaretBottom" placeholder="请选择">
-                            <el-option
-                              v-for="item in addlist7"
-                              :key="item.value"
-                              :label="item.label"
-                              :value="item.value">
-                            </el-option>
-                          </el-select>
-                  </el-form-item> -->
                 <el-form-item label="GPU" :label-width="formLabelWidth1">
                   <el-select v-model="youhua.gpu" :suffix-icon="CaretBottom" placeholder="请选择">
                     <el-option v-for="item in addlist8" :key="item.value" :label="item.label" :value="item.value">
@@ -1104,12 +1092,6 @@
             </template>
             <div class="numberinput lefttext">
               <el-form>
-                <!-- <el-input
-                  v-model="looktext"
-                  style="width: 460px"
-                  :rows="2"
-                  type="textarea"
-                /> -->
                 <el-image :src="getImgPath('baog.png')" fit="contain"></el-image>
               </el-form>
             </div>
@@ -1122,6 +1104,126 @@
               </div>
             </template>
           </el-dialog>
+          <!-- 气动分析Xfoil、ADflow -->
+          <el-dialog v-model="dialog.XfAD" 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="700" class="dialog_class bgcolor tianjia sel colortext">
+
+            <template #header="{ titleId, titleClass }">
+              <div class="my-header ">
+                <!-- <el-image :src="getImgPath('xuek0.png')" fit="contain"></el-image> -->
+                <h4 :id="titleId" :class="titleClass">气动分析</h4>
+              </div>
+            </template>
+            <div class="numberinput lefttext ">
+              <el-form>
+                <el-tabs tab-position="left" class="demo-tabs">
+              <el-tab-pane label="Xfoil">
+                <div class="XFpdding">
+                    <ul>
+                      <li class="item"   v-for="(tab, index) in tabslist" :key="index" :class="{ active: currentTab === index }"
+                     @click="selectTab(index)">{{tab.name  }}</li>
+                    </ul>
+                    <!-- 来流参数 v-show="currentTab=='0'"-->
+                    <div  v-show="currentTab=='0'">
+                      <div class="eldesign classtable" style="margin-top: 10px;">
+                   <el-table :data="lailiutable"  border style="width: 100%;height:400px" >
+                    <el-table-column type="index" width="70"  label="编号"/>
+                  <el-table-column prop="name" label="参数名称">
+                    <template #default="{ row }">
+                      <el-input v-model="row.name" @change="handleEdit(row)" />
+                    </template>
+                  </el-table-column>
+                  <el-table-column prop="data" label="参数值">
+                    <template #default="{ row }">
+                      <el-input v-model.number="row.data" @change="handleEdit(row)" />
+                    </template>
+                  </el-table-column>
+                 <el-table-column prop="con" label="启用" width="100">
+                    <template v-slot="scope">
+                      <el-checkbox :false-label="'-1'" :true-label="'1'" :label="false" v-model="scope.row.enable"  @change="changecheck($event,scope.row)"/>
+                    </template>
+                  </el-table-column> 
+              
+                </el-table>
+              </div>
+                    </div>
+                      <!-- 设置参数 v-show="currentTab=='2'"-->
+                      <div  v-show="currentTab=='1'">
+                        <div class="eldesign classtable" style="margin-top: 10px;" >
+                        <el-form-item label="计算完成:"  :label-width="formLabelWidth1">
+                        <el-radio-group v-model="resource">
+                          <el-radio label="0">是</el-radio>
+                          <el-radio label="1">否</el-radio>
+                        </el-radio-group> 
+                    
+                      </el-form-item>
+                        <el-form-item label="迭代次数:"  :label-width="formLabelWidth1">
+                          <el-input v-model="youhua.popsize" :step="100" :min="0" :max="1000" controls-position="right" />
+                        </el-form-item>
+                         <el-form-item label="表面求解点个数:"  :label-width="formLabelWidth1">
+                          <el-input v-model="youhua.popsize" :step="100" :min="0" :max="1000" controls-position="right" />
+                        </el-form-item>
+                        <div class="cheinput">
+                        <el-form-item label="压力分布:"  :label-width="formLabelWidth1">
+                          <el-input v-model="youhua.popsize" :step="100" :min="0" :max="1000" controls-position="right" />
+                        </el-form-item>
+                        <el-checkbox v-model="checked2" size="large" />
+                      </div>
+                      <div class="cheinput">
+                         <el-form-item label="翼型坐标:"  :label-width="formLabelWidth1">
+                          <el-input v-model="youhua.popsize" :step="100" :min="0" :max="1000" controls-position="right" />
+                     
+                        </el-form-item>
+                        <el-checkbox v-model="checked2" size="large" />
+                      </div>
+                      <div class="cheinput">
+                        <el-form-item label="力和力矩:"  :label-width="formLabelWidth1">
+                          <el-input v-model="youhua.popsize" :step="100" :min="0" :max="1000" controls-position="right" />
+                         </el-form-item>
+                         <el-checkbox v-model="checked2" size="large" />
+                      </div>
+                      </div>
+                      </div>
+                     <!-- 分析参数 v-show="currentTab=='2'"-->
+                    <div  v-show="currentTab=='2'">
+                      <div class="eldesign classtable" style="margin-top: 10px;">
+                   <el-table :data="fenxtable"  border style="width: 100%" >
+                    <el-table-column type="index" width="70"  label="编号"/>
+                  <el-table-column prop="name" label="参数名称">
+                    <template #default="{ row }">
+                      <el-input v-model="row.name" @change="handleEdit(row)" />
+                    </template>
+                  </el-table-column>
+                  <el-table-column prop="data" label="参数值">
+                    <template #default="{ row }">
+                      <el-input v-model.number="row.data" @change="handleEdit(row)" />
+                    </template>
+                  </el-table-column>
+                 <el-table-column prop="con" label="启用" width="100">
+                    <template v-slot="scope">
+                      <el-checkbox :false-label="'-1'" :true-label="'1'" :label="false" v-model="scope.row.enable"  @change="changecheck($event,scope.row)"/>
+                    </template>
+                  </el-table-column> 
+              
+                </el-table>
+              </div>
+                    </div>
+                </div>
+              </el-tab-pane>
+              <el-tab-pane label="ADflow">ADflow</el-tab-pane>
+            </el-tabs>
+              </el-form>
+            </div>
+            <template #footer>
+              <div class="dialog-footer">
+                <el-button @click="dialog.XfAD = false">取消</el-button>
+                <el-button type="primary" @click="cstok()">
+                  确定
+                </el-button>
+              </div>
+            </template>
+          </el-dialog>
           <!-- 内容区 -->
           <div class="main  mianflex">
             <!--left菜单栏  -->
@@ -1534,6 +1636,12 @@ let sctable = ref([]);
 //   val:'3',name:"约束条件",
 // }])
 //  let quval=ref('1')
+let currentTab=ref(0);
+let tabslist = ref([
+  { id: '0', name: '来流参数' },
+  { id: '1', name: '设置参数' },
+  { id: '2', name: '分析参数' },
+])
 let quxian = ref([
   { label: '设计变量', value: '设计变量' },
   { label: '约束条件', value: '约束条件' },
@@ -1746,6 +1854,7 @@ let dialog = ref({
   Xfiol: false,
   tidu:false,
   CSTt:false,
+  XfAD:true,
   enddialog: false,
   addfun: false,
   sufun: false,
@@ -1924,6 +2033,28 @@ const handleNodeClick = (data) => {
   tabactive.value = data.label;
   dialogbolen();
 }
+let lailiutable=ref([
+{
+    date: '2016-05-04',
+    name: 'Aleyna Kutzner',
+    con:-1
+  },
+  {
+    date: '2016-05-03',
+    name: 'Helen Jacobi',
+    con:1
+  }])
+  let fenxtable=ref([
+{
+    date: '2016-05-04',
+    name: '升力系数Cl',
+    con:-1
+  },
+  {
+    date: '2016-05-03',
+    name: '上表面转换点位置xtr-upper',
+    con:1
+  }])
 // cst时间
 const keydownenter=()=>{
   //cstnum.value='';
@@ -1954,7 +2085,7 @@ tableDatacst.value=tablearr;
 const cstok=()=>{
  // cstnum.value='';
   dialog.value.CSTt = false;
-  //console.log(tableDatacst.value);
+  console.log(tableDatacst.value);
 
 }
 const optimizerfalse = (val) => {
@@ -2561,7 +2692,6 @@ const getarr = (name, arrays) => {
     } else {
       att = arr;
     }
-
     const valuesWithSemiColons = att.join(',');
     name += valuesWithSemiColons + ';';
 
@@ -3042,6 +3172,10 @@ const footerShows = (evt) => {
 //   console.log('echartData changed:', newValue);
 // //  console.log(optmonitor1.value);
 // });
+// 选项卡
+const selectTab=(index)=>{
+  currentTab.value = index;
+}
 </script>
 <style lang="scss" scoped>
 .conter_flex {
@@ -3232,7 +3366,7 @@ const footerShows = (evt) => {
 }
 
 .classtable .el-table td.el-table__cell div {
-  height: 24px;
+  height: 30px;
   overflow: hidden;
 }
 

+ 44 - 21
src/views/vuetree/Sidebar.vue

@@ -66,6 +66,31 @@ const datatree = ref([
       label: '学科分析组件',
       img:'',
       children: [
+        {
+          id:'3-0',
+          label: 'CST',
+          img:'xuek0.png',
+          name:'CST'
+        },
+        {
+          id:'3-10',
+          label: 'FFD',
+          img:'ffd.png',
+          name:'FFD'
+   
+        },
+        {
+          id:'3-11',
+          label: 'ADflow',
+          img:'ADflow.png',
+          name:'ADflow'
+        },
+        {
+          id:'3-12',
+          label: 'TACS',
+          img:'TACS.png',
+          name:'TACS'
+        },
         {
           id:'3-1',
           label: 'CATIA',
@@ -73,10 +98,17 @@ const datatree = ref([
           name:'CATIA'
         },
         {
-          id:'3-0',
-          label: 'CST',
-          img:'xuek0.png',
-          name:'CST'
+          id:'3-8',
+          label: 'Python',
+          img:'xuek8.png',
+          name:'Python'
+   
+        },
+        {
+          id:'3-9',
+          label: 'Xfoil',
+          img:'xuek9.png',
+          name:'Xfoil'
         },
         {
           id:'3-2',
@@ -117,19 +149,6 @@ const datatree = ref([
           name:'Nastran'
          
         },
-        {
-          id:'3-8',
-          label: 'Python',
-          img:'xuek8.png',
-          name:'Python'
-   
-        },
-        {
-          id:'3-9',
-          label: 'Xfoil',
-          img:'xuek9.png',
-          name:'Xfoil'
-        },
       ],
     },
     {
@@ -140,21 +159,21 @@ const datatree = ref([
         {
           id:'4-1',
           label: '进化优化器',
-          img:'youh1.png',
+          img:'xuek10.png',
           name:'进化优化器'
          
         },
         {
           id:'4-2',
           label: '代理优化器',
-          img:'youh2.png',
+          img:'xuek11.png',
           name:'代理优化器'
    
         },
         {
           id:'4-3',
           label: '梯度优化器',
-          img:'youh3.png',
+          img:'xuek12.png',
           name:'梯度优化器'
         },
       ],
@@ -194,7 +213,7 @@ const datatree = ref([
   }
   }
   const getImgPath = (url) => {
-    return new URL(`../../assets/img/${url}`, import.meta.url).href
+    return new URL(`../../assets/flowimg/${url}`, import.meta.url).href
   }
   const defaultProps = {
     children: 'children',
@@ -272,4 +291,8 @@ onUnmounted(() => {
 .custom-tree1 .el-tree-node__content{
   padding-left: 0 !important;
 }
+.custom-tree1{
+  height: 554px;
+    overflow: auto;  
+}
 </style>

+ 11 - 1
src/views/vuetree/useDnD.js

@@ -18,6 +18,9 @@ import xuek9 from '@/assets/flowimg/xuek9.png'
 import xuek10 from '@/assets/flowimg/xuek10.png'
 import xuek11 from '@/assets/flowimg/xuek11.png'
 import xuek12 from '@/assets/flowimg/xuek12.png'
+import ffd from '@/assets/flowimg/ffd.png'
+import ADflow from '@/assets/flowimg/ADflow.png'
+import tacs from '@/assets/flowimg/TACS.png'
 let nid = 0;
 let id=0
 let treeobj=ref([]);
@@ -45,7 +48,14 @@ function imagefun(){
       return datas = {label:'CATIA', image:xuek1,name:'CATIA'}
     }else if(nid=='3-0'){
       return datas = {label:'CST', image:xuek0,name:'CST'}
-    } else if(nid=='3-2'){
+    }else if(nid=='3-10'){
+      return datas = {label:'FFD', image:ffd,name:'FFD'}
+    }else if(nid=='3-11'){
+      return datas = {label:'ADflow', image:ADflow,name:'ADflow'}
+    }else if(nid=='3-12'){
+      return datas = {label:'TACS', image:tacs,name:'TACS'}
+    }
+     else if(nid=='3-2'){
       return datas = {label:'Excel', image:xuek2,name:'Excel'}
     }else if(nid=='3-3'){
       return datas = {label:'Feko', image:xuek3,name:'Feko'}