Selaa lähdekoodia

5.4轮廓显示

liuqiao 2 vuotta sitten
vanhempi
säilyke
b1a6a99a92
2 muutettua tiedostoa jossa 89 lisäystä ja 47 poistoa
  1. 84 45
      src/views/index/HCFDLab/index.vue
  2. 5 2
      src/views/index/index.vue

+ 84 - 45
src/views/index/HCFDLab/index.vue

@@ -1757,10 +1757,10 @@
       </div>
           </div>
       <div slot="footer" class="dialog-footer">
-        <el-button   @click="referencevisiable((dialog.SurfaceGrid_visiable = false))"
+        <el-button   @click="dialog.SurfaceGrid_visiable = false"
           >{{ $t("HCFD.file.cancel")}}  </el-button
         >
-        <el-button type="primary" @click="bStepok();dialog.SurfaceGrid_visiable = false"
+        <el-button type="primary" @click="bStepok('','ResultImport');dialog.SurfaceGrid_visiable = false"
           >{{ $t("HCFD.file.ok")}}</el-button
         >
       </div>
@@ -1785,11 +1785,6 @@
       <el-form>
                        <el-form-item :label="$t('HCFD.results.steps') " :label-width="formLabelWidth2">
                     <el-select size="mini" v-model="vStep"  @change="vStepChange" placeholder="请选择">
-                           <el-option
-                          label="请选择"
-                          :value="0"
-                        >
-                        </el-option>
                         <el-option
                           v-for="setep in volumStep"
                           :key="setep"
@@ -1799,7 +1794,7 @@
                         </el-option>
                       </el-select>
                 </el-form-item>
-                  <el-form-item :label="$t('HCFD.results.scalar') " :label-width="formLabelWidth2">
+                  <!-- <el-form-item :label="$t('HCFD.results.scalar') " :label-width="formLabelWidth2">
                              <el-select size="mini" v-model="vSalar" placeholder="请选择">
                           <el-option
                             v-for="scalar in volumScalars"
@@ -1809,9 +1804,9 @@
                           >
                           </el-option>
                         </el-select>
-                </el-form-item>
+                </el-form-item> -->
                 
-                  <div>
+                  <!-- <div>
                     <li class="disflex lheig34 liitem">
                       <span class="span100 marb5 formLabelWidth15">{{ $t("HCFD.results.vector")}} </span>
                       <el-checkbox checked>Velocity</el-checkbox>
@@ -1832,22 +1827,22 @@
                         ></el-checkbox>
                       </el-checkbox-group>
                     </li>   
-                  </div>
+                  </div> -->
               
-                  <el-button
+                  <!-- <el-button
                      type="primary"
                     size="mini"
                    style="margin:30px 0 30px 40%"
                     @click="showVolume()"
                     >{{ $t("HCFD.results.ShowVolume")}}</el-button
-                  >
+                  > -->
       </el-form>
       </div>
       <div slot="footer" class="dialog-footer">
-        <el-button   @click="referencevisiable((dialog.VolumeGrid_visiable = false))"
+        <el-button   @click="dialog.VolumeGrid_visiable = false"
           >{{ $t("HCFD.file.cancel")}}</el-button
         >
-        <el-button type="primary" @click=" dialog.VolumeGrid_visiable = false"
+        <el-button type="primary" @click="bStepok('','ResultImport'); dialog.VolumeGrid_visiable = false"
           >{{ $t("HCFD.file.ok")}}</el-button
         >
       </div>
@@ -1872,7 +1867,7 @@
     </div> 
     <div class="Squareline  selecr">
          <el-form-item label="名称" :label-width="formLabelWidth2" >
-      <el-input  v-model="outlineobj.scalarName" autocomplete="off"></el-input>
+      <el-input  v-model="outlineobj.scalarName"  autocomplete="off"></el-input>
       </el-form-item>
          <el-form-item label="类型" :label-width="formLabelWidth2" >
       <el-input v-model="outlineobj.leixing" autocomplete="off"></el-input>
@@ -1882,9 +1877,10 @@
                   size="mini"
                   v-model="vSalar"
                   placeholder="select boundary"
+                  @change="bmScalarschange()"
                 >
                    <el-option
-                            v-for="scalar in bmScalars"
+                            v-for="scalar in outlineobj.bmScalars"
                             :key="scalar"
                             :label="scalar"
                             :value="scalar"
@@ -1897,7 +1893,7 @@
       <div class="linetext"> 标量集</div>
     </div> 
        <el-form-item label="颜色控制" :label-width="formLabelWidth2" >
-      <el-input value="" autocomplete="off"></el-input>
+      <el-input v-model="outlineobj.level"  @blur="changeblur()"  autocomplete="off"></el-input>
       </el-form-item>
       <div class="disflex lheig34 liitem">
                       <el-checkbox-group v-model="velementCheckeds" style="display:flex">
@@ -1950,19 +1946,20 @@
     </div> 
     <div class="Squareline  selecr">
          <el-form-item label="名称" :label-width="formLabelWidth2" >
-      <el-input value="PingYi" autocomplete="off"></el-input>
+      <el-input  v-model="outlineobj.scalarName" autocomplete="off"></el-input>
       </el-form-item>
          <el-form-item label="类型" :label-width="formLabelWidth2" >
-      <el-input value="PingYi" autocomplete="off"></el-input>
+      <el-input  v-model="outlineobj.leixing" autocomplete="off"></el-input>
       </el-form-item>
-            <el-form-item :label="$t('HCFD.results.scalar') " :label-width="formLabelWidth2">
+              <el-form-item :label="$t('HCFD.results.scalar') " :label-width="formLabelWidth2">
       <el-select 
                   size="mini"
                   v-model="vSalar"
                   placeholder="select boundary"
+                  @change="bmScalarschange()"
                 >
                    <el-option
-                            v-for="scalar in volumScalars"
+                            v-for="scalar in outlineobj.bmScalars"
                             :key="scalar"
                             :label="scalar"
                             :value="scalar"
@@ -1974,17 +1971,17 @@
           <div class="line">
       <div class="linetext"> 标量集</div>
     </div>  
-       <el-form-item label="水平" :label-width="formLabelWidth2" >
-      <el-input value="" autocomplete="off"></el-input>
+       <el-form-item label="颜色控制" :label-width="formLabelWidth2" >
+      <el-input v-model="outlineobj.level"  @blur="vchangeblur()"  autocomplete="off"></el-input>
       </el-form-item>
          <div class="line">
       <div class="linetext"> 范围</div>
     </div>
-    <el-form-item label="最大范围" :label-width="formLabelWidth2" >
-      <el-input value="0" autocomplete="off"></el-input>
+     <el-form-item label="最大范围" :label-width="formLabelWidth2" >
+      <el-input v-model="outlineobj.range1" autocomplete="off"></el-input>
       </el-form-item>
     <el-form-item label="最小范围" :label-width="formLabelWidth2" >
-      <el-input value="0" autocomplete="off"></el-input>
+      <el-input v-model="outlineobj.range0" autocomplete="off"></el-input>
       </el-form-item> 
   </el-form>
   <div slot="footer" class="dialog-footer">
@@ -2651,11 +2648,13 @@ export default {
   data() {
     return {
       // 云图参数
+         isVolume:"",
         outlineobj:{
        scalarName:'',
         range0:'',
         range1:'',
         leixing:'',
+        level:'1',
         bmScalars:[],
      },
       // 折线图的参数
@@ -3067,7 +3066,7 @@ export default {
       vStep: 0,
       volumStep: [],
       volumScalars: [],
-      vSalar: "p",
+      vSalar: "",
 
       isSolverEnd: false, //判断是否求解完成
       solverState: "0", //求解状态(0-未求解 1-求解中 2-求解完成)
@@ -3674,6 +3673,8 @@ setpnum(){
         let steps= res.steps.split(',');
         console.log(steps);
         this.boundaryStep=steps;
+        this.volumStep=steps;
+
             })
 
   }else{
@@ -3682,19 +3683,19 @@ setpnum(){
 
 },
 // 获取轮廓数据
-bStepok(){
-  console.log( this.project.projectId);
+bStepok(num,action){
   const params = {
         transCode: 'AFT001',
         pid:this.project.projectId,
         solverConfigId:this.solverConfigid,
-        action:"ResultImport",
+        action:action,
         paramJson:'',
         step:this.bStep,
-        scalarName:'',
-        level:'',
-        range0:'',
-        range1:'',
+        scalarName:this.outlineobj.scalarName,
+        level:num,
+        range0:this.outlineobj.range0,
+        range1:this.outlineobj.range1,
+        isVolume:this.isVolume,
         }
         request(params)
           .then((res) => { 
@@ -3702,21 +3703,57 @@ bStepok(){
           .catch((err) => {
           })
 },
+//level颜色的数据
+changeblur(){
+  console.log(1111);
+ this.bStepok(this.outlineobj.level,'ContourDisplay')
+},
+vchangeblur(){
+ this.bStepok(this.outlineobj.level,"LineDisplay")
+},
 // 获取轮廓数据
 outlinedata(){
-  sessionStorage.setItem("data",this.ytdata);
-  this.ytdata=sessionStorage.getItem("data")
+  // this.ytdata=JSON.parse(sessionStorage.getItem("data"));
   console.log(this.ytdata)
   this.outlineobj.scalarName=this.ytdata.scalarName;
+  this.vSalar=this.ytdata.scalarName;
    this.outlineobj.range0=this.ytdata.range0;
    this.outlineobj.range1=this.ytdata.range1;
   let ress=this.ytdata.scalarNames;
-  this.outlineobj.bmScalars=ress.split(",");
-  console.log(this.outlineobj.bmScalars);
-  console.log('1111')
-   let types=this.ytdata.nameTypes;
-     console.log( types.split("#"));
+if(ress==undefined){
+    Message({
+            type: "info",
+            message: "请择物面数据",
+          });
+}else{
+ this.outlineobj.bmScalars=Array.from(ress.split(","));
+  this.strnumchange(this.ytdata.nameTypes);
+}
+ 
 },
+// 字符串的裁剪
+strnumchange(val){
+    let strnum=val;
+ let num_caj=strnum.split(","); 
+ for(var i=0;i<num_caj.length;i++){
+  if(num_caj[i].includes(this.vSalar)){
+    let ster= num_caj[i];
+  let str= ster.charAt(ster.length - 1)
+      if(str=='0'){
+           this.outlineobj.leixing='point scalar';
+      }else{
+         this.outlineobj.leixing='cell scalar';
+      }
+  }
+ }
+},
+// 标量选择名称跟着边
+bmScalarschange(val){
+    this.outlineobj.scalarName=this.vSalar;
+    this.strnumchange(this.ytdata.nameTypes);
+
+},
+// 
  //模块选择
   clickgeometry(e,index,key){
   
@@ -3804,10 +3841,13 @@ this.styX.left=e.clientX+'px';
       //   case 'four4-4':
       //  break;
        case 'five-0':
+         this.isVolume='1';
          this.setpnum();
          this.dialog.SurfaceGrid_visiable = true;
        break;
        case 'five-1':
+            this.isVolume='2';
+              this.setpnum();
         this.dialog.VolumeGrid_visiable = true;
        break;
       case 'five7-0':
@@ -3815,6 +3855,7 @@ this.styX.left=e.clientX+'px';
         this.dialog.contour_visiable = true;
        break;
         case 'five7-1':
+        this.outlinedata();
         this.dialog.Line_visiable = true;
        break;
         case 'five7-2':
@@ -4107,9 +4148,7 @@ vStepChange(val){
             type: "warning",
             message: "请选择setp有效值",
           });
-  }else{
-this.Volumeshow();
-}
+  }
 },
 // 表面加载
 SurfaceChange(value){// 选择色条个数

+ 5 - 2
src/views/index/index.vue

@@ -665,14 +665,17 @@ let params = {
 
         try{
             const redata = JSON.parse(e.data);   
-            console.log(redata); 
+           
           this.$refs.TFileStream.imgtupian=true;
           this.$refs.TFileStream.fetchData(redata);
           this.$refs.monitor.container_show=false;
           // 云图的参数返回 存储
+            console.log(redata);
           if(redata.action=='ResultImport'){
-                 
                   if(redata.msgType=="contour_param"){
+                    //  console.log(3333);
+               console.log(redata);
+                   sessionStorage.setItem("data",JSON.stringify(redata));
                        this.ytdata=redata;
                   }