<template>
  <div class="hcfdlab">
    <div class="scal">

      <div class="toolbar-part-detail lbg_color1 ">
        <!-- 工具栏 -->
        <!-- <transformtool ref="transform" :servertype="servertype" :projectId='project.projectId'  :wstep='wstep' :bStep='bStep' :vStep='vStep'></transformtool> -->
        <el-tabs
          v-model="activeName"
          type="card"
          @tab-click="handleClick"
          class="tabsel"
        >

          <!-- <el-tab-pane label="几何建模" name="one"><geometry></geometry></el-tab-pane> -->
          <!-- 几何导入 -->
          <el-tab-pane
            label="几何导入"
            name="one"
          >
            <div class="imgzong">
              <div
                class="listitem lbg_color3 bkcolor3"
                v-for="(item,index) in geometrylist"
                :key="'one0-'+ index"
                :class="{activeOrange:active=='one0-'+ index}"
                @click="clickgeometry($event,index,'one0-'+ index)"
              >
                <div class="item2 ">
                  <el-image
                    :src="item.icon"
                    fit="cover"
                  />
                  <span>{{item.titlie}}</span>
                </div>
              </div>
            </div>
          </el-tab-pane>
          <!-- 网格划分 -->
          <el-tab-pane
            label="网格划分"
            name="twos"
          >
            <div class="imgzong">
              <div
                class="listitem lbg_color3 bkcolor3"
                v-for="(item,index) in meshlist"
                :key="'one-'+ index"
                :class="{activeOrange:active=='one-'+ index}"
                @click="clickgeometry($event,index,'one-'+ index)"
              >
                <div class="item2 ">
                  <el-image
                    :src="item.icon"
                    fit="cover"
                  />
                  <span>{{item.titlie}}</span>
                </div>
              </div>
            </div>
          </el-tab-pane>
          <!-- 通用设置 -->
          <el-tab-pane
            :label="$t('HCFD.geneal.geneal')"
            name="two"
          >
            <div class="imgzong">
              <div class="listitem lbg_color3 bkcolor3">
                <div
                  class="item1"
                  v-for="(itemcj,index) in twolist"
                  :key="'two-'+ index"
                  :class="{activeOrange:active=='two-'+ index}"
                  @click="clickgeometry($event,index,'two-'+ index)"
                >
                  <el-image
                    :src="itemcj.icon"
                    fit="cover"
                  />
                  <span>{{itemcj.titlie}}</span>
                </div>
              </div>
              <!--分析类型  -->
              <div class="listitem lbg_color3 radiocontent bkcolor3">
                <div class="item1">
                  <el-form>
                    <div class="radio_text text_color">
                      <div class="classfelx">
                        <el-tooltip
                          class="item"
                          effect="dark"
                          content="分析类型"
                          placement="bottom"
                        >
                          <el-radio
                            v-model="parameterObj.nmlParam.analysis_Type"
                            label="Steady"
                          >{{ $t("HCFD.geneal.steady") }}</el-radio>
                        </el-tooltip>
                      </div>
                      <div class="classfelx">
                        <el-tooltip
                          class="item"
                          effect="dark"
                          content="分析类型"
                          placement="bottom"
                        >
                          <el-radio
                            v-model="parameterObj.nmlParam.analysis_Type"
                            label="Unsteady"
                          >{{ $t("HCFD.geneal.unsteady") }}</el-radio>
                        </el-tooltip>
                      </div>
                    </div>
                  </el-form>
                </div>
              </div>
              <!-- 并行类型 -->
              <div class="listitem lbg_color3 radiocontent bkcolor3">
                <div class="item1">
                  <el-form>
                    <div class="radio_text text_color">
                      <el-radio-group
                        v-model="parameterObj.nmlParam.parallel_Optional"
                        @input="leixingchange($event)"
                      >
                        <div>
                          <el-tooltip
                            class="item"
                            effect="dark"
                            content="并行类型"
                            placement="bottom"
                          >
                            <el-radio label="Serial">
                              {{ $t("HCFD.geneal.serial") }}</el-radio>
                          </el-tooltip>
                        </div>
                        <div>
                          <el-tooltip
                            class="item"
                            effect="dark"
                            content="并行类型"
                            placement="bottom"
                          >
                            <el-radio label="MPI Parallel">{{
                    $t("HCFD.geneal.mpi")
                  }}</el-radio>
                          </el-tooltip>
                        </div>
                      </el-radio-group>
                    </div>
                  </el-form>
                </div>
              </div>
            </div>
          </el-tab-pane>
          <!-- 物理模型 -->
          <el-tab-pane
            :label="$t('HCFD.physics.physics')"
            name="three"
          >
            <div class="imgzong">
              <div
                class="listitem lbg_color3 bkcolor3"
                v-for="(item,index) in physicslist"
                :key="'three-'+ index"
                :class="{activeOrange:active=='three-'+ index}"
                @click="clickgeometry($event,index,'three-'+ index)"
              >
                <div class="item2 ">
                  <el-image
                    :src="item.icon"
                    fit="cover"
                  />
                  <span>{{item.titlie}}</span>
                </div>
              </div>
              <div class="listitem lbg_color3 bkcolor3">
                <div
                  class="item1"
                  v-for="(item,index) in physicslist2"
                  :key="'three2-'+ index"
                  :class="{activeOrange:active=='three2-'+ index}"
                  @click="clickgeometry($event,index,'three2-'+ index)"
                >
                  <el-image
                    :src="item.icon"
                    fit="cover"
                  />
                  <span>{{item.titlie}}</span>
                </div>
              </div>
              <div class="listitem lbg_color3 bkcolor3">
                <div
                  class="item1"
                  v-for="(item,index) in physicslist1"
                  :key="'three1-'+ index"
                  :class="{activeOrange:active=='three1-'+ index}"
                  @click="clickgeometry($event,index,'three1-'+ index)"
                >
                  <el-image
                    :src="item.icon"
                    fit="cover"
                  />
                  <span>{{item.titlie}}</span>
                </div>
              </div>
            </div>

          </el-tab-pane>
          <!-- 求解控制 -->
          <el-tab-pane
            :label="$t('HCFD.solution.solution')"
            name="four"
          >
            <div class="imgzong">
              <div
                class="listitem lbg_color3 bkcolor3"
                v-for="(item,index) in  solutionlist"
                :key="'four-'+ index"
                :class="{activeOrange:active=='four-'+ index}"
                @click="clickgeometry($event,index,'four-'+ index)"
              >
                <div class="item2 ">
                  <el-image
                    :src="item.icon"
                    fit="cover"
                  />
                  <span>{{item.titlie}}</span>
                </div>
              </div>
              <div
                class="listitem lbg_color3 bkcolor3  imgsolution"
                v-for="(item,index) in  solutionlist2"
                :key="'four2-'+ index"
                :class="{activeOrange:active=='four2-'+ index}"
                @click="clickgeometry($event,index,'four2-'+ index)"
              >
                <div class="item2 ">
                  <div class="itemimg">
                    <el-image
                      :src="item.icon"
                      fit="cover"
                    />
                  </div>
                  <span>{{item.titlie}}</span>
                </div>

              </div>
              <div
                class="listitem lbg_color3 bkcolor3  imgsolution"
                v-for="(item,index) in  solutionlist21"
                :key="'four2-1'+ index"
                :class="{activeOrange:active=='four2-1'+ index}"
                @click="clickgeometry($event,index,'four2-1'+ index)"
              >
                <div class="item2 ">
                  <el-image
                    :src="item.icon"
                    fit="cover"
                  />
                  <span>{{item.titlie}}</span>
                </div>
              </div>
              <div class="listitem lbg_color3 bkcolor3">
                <div
                  class="item1"
                  v-for="(item,index) in  solutionlist3"
                  :key="'four3-'+ index"
                  :class="{activeOrange:active=='four3-'+ index}"
                  @click="clickgeometry($event,index,'four3-'+ index)"
                >
                  <el-image
                    :src="item.icon"
                    fit="cover"
                  />
                  <span>{{item.titlie}}</span>
                </div>
              </div>
              <div
                class="listitem lbg_color3 bkcolor3  imgsolution"
                v-for="(item,index) in  runlist"
                :key="'four41'+ index"
                :class="{activeOrange:active=='four41'+ index}"
                @click="clickgeometry($event,index,'four41'+ index)"
              >
                <div class="item2 ">
                  <el-image
                    :src="item.icon"
                    fit="cover"
                  />
                  <span>{{item.titlie}}</span>
                </div>
              </div>
            </div>

          </el-tab-pane>
          <!-- 结果显示 -->
          <el-tab-pane
            :label=" $t('HCFD.results.results')"
            name="five"
          >
            <div
              class="imgzong"
              v-if="lsolverState=='2'"
            >
              <div class="listitem lbg_color3 bkcolor3">
                <div
                  class="item1 "
                  v-for="(item,index) in  resultslist"
                  :key="'five-'+ index"
                  :class="{activeOrange:active=='five-'+ index}"
                  @click="clickgeometry($event,index,'five-'+ index)"
                >
                  <el-image
                    :src="item.icon"
                    fit="cover"
                  />
                  <span>{{item.titlie}}</span>
                </div>
              </div>
              <!-- <div class="listitem lbg_color3 bkcolor3" style=" display: flex" >
               <div>
             <div class="item1 " v-for="(item,index) in plotslsit"  :key="'five1-'+ index" :class="{activeOrange:active=='five1-'+ index}" @click="clickgeometry($event,index,'five1-'+ index)"  >
                 <el-image :src="item.icon" fit="cover" />  
                   <span >{{item.titlie}}</span>
            </div>
            </div>
              <div>
            <div class="item1 " v-for="(item,index) in  plotslsit1"  :key="'five2-'+ index" :class="{activeOrange:active=='five2-'+ index}" @click="clickgeometry($event,index,'five2-'+ index)"  >
                 <el-image :src="item.icon" fit="cover" />  
                   <span >{{item.titlie}}</span>
            </div>
             </div>
              <div>
            <div class="item1 " v-for="(item,index) in  plotslsit2"  :key="'five3-'+ index" :class="{activeOrange:active=='five3-'+ index}" @click="clickgeometry($event,index,'five3-'+ index)"  >
                 <el-image :src="item.icon" fit="cover" />  
                   <span >{{item.titlie}}</span>
            </div>
             </div>
            </div> -->
              <!-- <div class="listitem lbg_color3 bkcolor3" >
             <div class="item1 " v-for="(item,index) in  samplelist"  :key="'five4-'+ index" :class="{activeOrange:active=='five4-'+ index}" @click="clickgeometry($event,index,'five4-'+ index)"  >
                 <el-image :src="item.icon" fit="cover" />  
                   <span >{{item.titlie}}</span>
            </div>
            
            </div> -->
              <!-- <div class="listitem lbg_color3 bkcolor3" style=" display: flex" >
               <div>
             <div class="item1 " v-for="(item,index) in generatelist"  :key="'five5-'+ index" :class="{activeOrange:active=='five5-'+ index}" @click="clickgeometry($event,index,'five5-'+ index)"  >
                 <el-image :src="item.icon" fit="cover" />  
                   <span >{{item.titlie}}</span>
            </div>
            </div>
              <div>
            <div class="item1 " v-for="(item,index) in  generatelist2"  :key="'five6-'+ index" :class="{activeOrange:active=='five6-'+ index}" @click="clickgeometry($event,index,'five6-'+ index)"  >
                 <el-image :src="item.icon" fit="cover" />  
                   <span >{{item.titlie}}</span>
            </div>
             </div>
           
            </div> -->
              <div
                class="listitem lbg_color3 bkcolor3"
                style=" display: flex"
              >
                <div>
                  <div
                    class="item1 "
                    v-for="(item,index) in  displaylist"
                    :key="'five7-'+ index"
                    :class="{activeOrange:active=='five7-'+ index}"
                    @click="clickgeometry($event,index,'five7-'+ index)"
                  >
                    <el-image
                      :src="item.icon"
                      fit="cover"
                    />
                    <span>{{item.titlie}}</span>
                  </div>
                </div>
                <div>
                  <div
                    class="item1 "
                    v-for="(item,index) in  displaylist2"
                    :key="'five8-'+ index"
                    :class="{activeOrange:active=='five8-'+ index}"
                    @click="clickgeometry($event,index,'five8-'+ index)"
                  >
                    <el-image
                      :src="item.icon"
                      fit="cover"
                    />
                    <span>{{item.titlie}}</span>
                  </div>
                </div>
              </div>
              <!-- <div class="listitem lbg_color3 bkcolor3" >
             <div class="item1 " v-for="(item,index) in  animationlist"  :key="'five9-'+ index" :class="{activeOrange:active=='five9-'+ index}" @click="clickgeometry($event,index,'five9-'+ index)"  >
                 <el-image :src="item.icon" fit="cover" />  
                   <span >{{item.titlie}}</span>
            </div>
            </div> -->
              <div
                class="listitem lbg_color3 bkcolor3"
                v-for="(item,index) in  animationlist"
                :key="'five9-'+ index"
                :class="{activeOrange:active=='five9-'+ index}"
                @click="clickgeometry($event,index,'five9-'+ index)"
              >
                <div class="item2 ">
                  <el-image
                    :src="item.icon"
                    fit="cover"
                  />
                  <span>{{item.titlie}}</span>
                </div>
              </div>
              <div
                class="listitem lbg_color3 bkcolor3  imgsolution"
                v-for="(item,index) in  solutionlist22"
                :key="'four44-'+ index"
                :class="{activeOrange:active=='four44-'+ index}"
                @click="clickgeometry($event,index,'four44-'+ index)"
              >
                <div class="item2 ">
                  <el-image
                    :src="item.icon"
                    fit="cover"
                  />
                  <span>{{item.titlie}}</span>
                </div>
              </div>
              <!-- <div class="listitem lbg_color3 bkcolor3" >
             <div class="item1 " v-for="(item,index) in  Cuelist"  :key="'five9-'+ index" :class="{activeOrange:active=='five10-'+ index}" @click="clickgeometry($event,index,'five10-'+ index)"  >
                 <el-image :src="item.icon" fit="cover" />  
                   <span >{{item.titlie}}</span>
            </div>
            </div> -->
            </div>

          </el-tab-pane>
          <!-- 工具 -->
          <el-tab-pane
            :label="$t('HCFD.tool.unitConversion')"
            name="six"
          >
            <div class="imgzong">
              <div
                class="item1"
                v-for="(item,index) in  unitlist "
                :key="'six-'+ index"
                :class="{activeOrange:active=='six-'+ index}"
                @click="clickgeometry($event,index,'six-'+ index)"
              >
                <el-tooltip
                  class="item"
                  effect="dark"
                  :content="item.titlie"
                  placement="bottom"
                >
                  <el-image
                    :src="item.icon"
                    fit="cover"
                  />
                </el-tooltip>
              </div>
            </div>
          </el-tab-pane>
        </el-tabs>
      </div>
    </div>
    <!-- 几何导入 -->
    <el-dialog
      v-if="active=='one0-0'"
      :visible.sync="dialog.geometry_upload"
      :close-on-click-modal="false"
      @close='activecleer()'
      class="dialog"
      :modal='false'
      custom-class='dialoglocation dialog_color'
      width="385px"
      v-draggable
      v-draggleft='[styX.left]'
    >
      <div
        slot="title"
        class=dialog_header
      >
        <el-image
          class="imge"
          :src="p22"
          fit="cover"
        />
        <span class="text-color">几何导入</span>
      </div>
      <el-form>
        <vue-uploader
          ref="geometryugrid"
          :projectId="project.projectId"
          :solverType="'hcfd'"
          :accept="'.igs,stp,sat'"
          :name="'Load File'"
          :upId="'3'"
        ></vue-uploader>
      </el-form>
      <div
        slot="footer"
        class="dialog-footer"
      >
        <el-button @click="dialog.geometry_upload = false">{{ $t("HCFD.file.cancel")}}</el-button>
        <el-button
          type="primary"
          @click="geometryup();dialog.geometry_upload = false"
        >{{ $t("HCFD.file.ok")}}</el-button>
      </div>
    </el-dialog>
    <!-- 文件上传 -->
    <el-dialog
      v-if="active=='one-0'"
      :visible.sync="dialog.upload_visiable"
      :close-on-click-modal="false"
      @close='activecleer()'
      class="dialog"
      :modal='false'
      custom-class='dialoglocation dialog_color'
      width="385px"
      v-draggable
      v-draggleft='[styX.left]'
    >
      <div
        slot="title"
        class=dialog_header
      >
        <el-image
          class="imge"
          :src="q4"
          fit="cover"
        />
        <span class="text-color">文件上传</span>
      </div>
      <el-form>
        <el-form-item label="File Type">
          <el-radio
            disabled
            v-model="project.fileType"
            label="binary"
          >{{ $t("HCFD.file.binary") }}</el-radio>
          <el-radio
            v-model="project.fileType"
            label="ascii"
          >{{ $t("HCFD.file.ascii")}}</el-radio>
        </el-form-item>
        <vue-uploader
          ref="ugrid"
          :projectId="project.projectId"
          :solverType="'hcfd'"
          :accept="'.ugrid'"
          :name="'Load Grid File'"
          :upId="'2'"
        ></vue-uploader>
      </el-form>
      <div
        slot="footer"
        class="dialog-footer"
      >
        <el-button @click="dialog.upload_visiable = false">{{ $t("HCFD.file.cancel")}}</el-button>
        <el-button
          type="primary"
          @click="runugrid();dialog.upload_visiable = false"
        >{{ $t("HCFD.file.ok")}}</el-button>
      </div>
    </el-dialog>
        <!-- 网格自动划分 -->
    <el-dialog
      v-if="active=='one-2'"
      :visible.sync="dialog.mesh_generation"
      :close-on-click-modal="false"
      @close='activecleer()'
      class="dialog"
      :modal='false'
      custom-class='dialoglocation dialog_color'
      width="385px"
      v-draggable
      v-draggleft='[styX.left]'
    >
      <div
        slot="title"
        class=dialog_header
      >
        <el-image
          class="imge"
          :src="p21"
          fit="cover"
        />
        <span class="text-color">网格自动划分</span>
      </div>
    <div class="selecr">
      <el-form>
           <el-form-item
            label="格式选择"
            :label-width="formLabelWidth5"
          >
            <el-select
              v-model="objmesh.strResultFormat"
              placeholder="请选择"
            >
              <el-option
                v-for="item in strResultFormatlist"
                :key="item.value"
                :label="item.name"
                :value="item.value"
              >
              </el-option>
            </el-select>
          </el-form-item>
          <el-form-item
            label="划分类型"
            :label-width="formLabelWidth5"
          >
            <el-select
              v-model="meshval"
              placeholder="请选择"
              @change="Partitiontype"
            >
              <el-option
                v-for="item in meshvallist"
                :key="item.value"
                :label="item.name"
                :value="item.value"
              >
              </el-option>
            </el-select>
          </el-form-item>
          <div v-if="meshval=='0'">
              <div class="radio_text text_color liangf">
              <div class="classfelx" style="text-align: center;">
                <el-radio
                      v-model="meshface"
                      label="物理尺寸模型"
                      >物理尺寸模型</el-radio>
                  </div>
                    <div class="classfelx">
                    <el-radio
                      v-model="meshface"
                      label="几何尺寸模型"
                      >几何尺寸模型</el-radio
                    >
                    </div>
            </div>
          <el-form-item
            label="面网格类型"
            :label-width="formLabelWidth5"
          >
            <el-select
              v-model="objmesh.surfParam.surfStyle"
              placeholder="请选择"
            >
              <el-option
                v-for="item in meshvallist1"
                :key="item.value"
                :label="item.name"
                :value="item.value"
              >
              </el-option>
            </el-select>
          </el-form-item>
          <el-form-item
            label="模式类型"
            :label-width="formLabelWidth5"
          >
            <el-select
              v-model="patternval"
              placeholder="请选择"
            >
              <el-option
                v-for="item in patternlist"
                :key="item.value"
                :label="item.name"
                :value="item.value"
              >
              </el-option>
            </el-select>
          </el-form-item>
             <div class="radio_text text_color liangf" v-if="patternval=='1'" style="display:none">
              <div class="classfelx" style="text-align: center;">
                <el-checkbox 
                      v-model="setface"
                      label="on"
                      >面设置大小</el-checkbox >
                  </div>
                    <div class="classfelx">
                    <el-checkbox 
                      v-model="meshbrim"
                      label="off"
                      >边设置大小</el-checkbox 
                    >
                    </div>
            </div>
             <div class='selecttype' v-if="setface==true">
              <span class="meshcalss"> <el-checkbox v-model="facecheckbox" label="局部面Id设置大小" @change="facechange"></el-checkbox></span>
                <div class="listbtn"> 
            <el-button plain class="anniu">添加</el-button>
              <el-button plain class="anniu">删除</el-button>
              <el-button plain class="anniu">插入</el-button>
            </div>
            <el-form>
              <el-table
            :data="meshtableData"
            style="width: 100%"
             border
            >
            <el-table-column
              type="index"
              width="50">
            </el-table-column>
            <el-table-column  align="center" label="ID">
              <!-- //slot-scope="scope" -->
              <template slot-scope="scope" >
                    <el-input v-model="scope.id" autocomplete="off"></el-input>
              </template>
            </el-table-column>
              <el-table-column  align="center" label="大小">
              <template slot-scope="scope">
                    <el-input v-model="scope.da" autocomplete="off"></el-input>
              </template>
            </el-table-column>
              </el-table>
            </el-form>
              </div>
                <div class='selecttype'  v-if="meshbrim==true">
              <span class="meshcalss"> <el-checkbox v-model="facecheckbox" label="局部边Id设置大小" @change="facechange"></el-checkbox></span>
                   <div class="listbtn"> 
            <el-button plain class="anniu">添加</el-button>
              <el-button plain class="anniu">删除</el-button>
              <el-button plain class="anniu">插入</el-button>
            </div>
              </div>
        <el-form-item label="最大尺寸" :label-width="formLabelWidth5">
      <el-input v-model="objmesh.surfParam.max_size" autocomplete="off"></el-input>
    </el-form-item>
      <el-form-item label="最小尺寸" :label-width="formLabelWidth5">
      <el-input v-model="objmesh.surfParam.min_size" autocomplete="off"></el-input>
    </el-form-item>
      <el-form-item label="相邻网格边比率" :label-width="formLabelWidth5">
      <el-input v-model="form.name" autocomplete="off"></el-input>
    </el-form-item>
      <el-form-item label="全局几何大小" :label-width="formLabelWidth5">
      <el-input v-model="objmesh.surfParam.global_physical_size" autocomplete="off"></el-input>
    </el-form-item>
     <div v-if="meshface=='几何尺寸模型'">
          <el-form-item label="弦误差" :label-width="formLabelWidth5">
      <el-input v-model="objmesh.surfParam1.chordal_error" autocomplete="off"></el-input>
    </el-form-item>
          <el-form-item label="逼近角度" :label-width="formLabelWidth5">
      <el-input v-model="objmesh.surfParam1.geometric_approximation_angle" autocomplete="off"></el-input>
    </el-form-item>
    </div>
       <div class='selecttype'>
              <span class="meshcalss">优化设置选择</span>
                <!-- <el-checkbox-group @change="checksetchange"> -->
             <el-checkbox v-model="objmesh.surfParam2.correct_surface_intersections" true-label="yes"  false-label="no"  @change="checksetchange"  label="纠正表面相交"></el-checkbox>
            <el-checkbox v-model="objmesh.surfParam2.optimisation" true-label="yes"  false-label="no" label="优化网络" :disabled='disabledset'></el-checkbox>
           <el-checkbox v-model="objmesh.surfParam2.remove_duplicate_cad_faces" true-label="yes"  false-label="no" label="移除重复CAD面"></el-checkbox>
          <!-- </el-checkbox-group> -->
          <el-form-item
            label="单元阶数选择:"
            :label-width="formLabelWidth5"
          >
            <el-select
              v-model="objmesh.surfParam2.element_order"
              placeholder="请选择"
            >
              <el-option
                v-for="item in elsementlist"
                :key="item.value"
                :label="item.name"
                :value="item.value"
              >
              </el-option>
            </el-select>
          </el-form-item>
             <el-form-item label="雅可比数值:" :label-width="formLabelWidth5">
          <el-input v-model="objmesh.surfParam2.scaled_jacobian_threshold_value" autocomplete="off"></el-input>
        </el-form-item>    
          </div>
          <div class='selecttype'>
              <span class="meshcalss"> <el-checkbox v-model="facecheckbox" label="面网格生成后的优化设置选择" @change="facechange"></el-checkbox></span>
                <div class="jieguo">
              <div class="jiegleft">
                <div class="radio_text text_color liangf" style="line-height: 160px;">
              <div class="classfelx" style="text-align: center;">
                <el-radio
                      v-model="cleanerParam1.use_default_settings_for"
                      label="structure"
                      :disabled="disabledface"
                      >结构</el-radio>
                  </div>
                    <div class="classfelx">
                    <el-radio
                      v-model="cleanerParam1.use_default_settings_for"
                      label="fluid"
                       :disabled="disabledface"
                      >流体</el-radio
                    >
                    </div>
                    </div>
              </div>
              <div class="jiegright">
                  <div class='selecttype' v-if="cleanerParam1.use_default_settings_for=='structure'">
                 <span class="meshcalss "> <el-checkbox    :disabled="disabledface"  label="结构使用默认值" v-model="jiegradioval" @change="jiegchange"></el-checkbox></span>
                   <el-form-item  label="重叠角度" :label-width="formLabelWidth2" >
                  <el-input v-model="cleanerParam1.overlap_angle" autocomplete="off" :disabled='jiegdisabled' ></el-input>
                </el-form-item>
                  <el-form-item label="长度阀值" :label-width="formLabelWidth2" >
                <el-input v-model="cleanerParam1.resolution_length" autocomplete="off" :disabled='jiegdisabled'></el-input>
              </el-form-item>
               </div>
                <div class='selecttype' v-else>
                 <span class="meshcalss"> <el-checkbox label="流体使用默认值" v-model="jiegradioval"></el-checkbox></span>
                   <el-form-item label="重叠角度" :label-width="formLabelWidth2 ">
                  <el-input  v-model="cleanerParam1.overlap_angle" autocomplete="off"  :disabled='jiegdisabled'></el-input>
                </el-form-item>
                  <el-form-item label="长度阀值" :label-width="formLabelWidth2" >
                <el-input v-model="cleanerParam1.resolution_length" autocomplete="off"  :disabled='jiegdisabled'></el-input>
              </el-form-item>
               </div>
              </div>
              </div>
             </div>
          
              </div>
              <div v-if="meshval=='1'">
                <el-form-item
            label="组件"
            :label-width="formLabelWidth5"
          >
            <el-select
              v-model="tetraParam1.components"
              placeholder="请选择"
            >
              <el-option
                v-for="item in tetrahedron"
                :key="item.value"
                :label="item.name"
                :value="item.value"
              >
              </el-option>
            </el-select>
          </el-form-item>
             <el-form-item label="级配" :label-width="formLabelWidth5" >
                <el-input v-model="tetraParam1.gradation" autocomplete="off"></el-input>
              </el-form-item>
              </div>
                 <div v-if="meshval=='2'">
                <el-form-item
            label="组件"
            :label-width="formLabelWidth5"
          >
                     <el-select
              v-model="hexaParam1.components"
              placeholder="请选择"
            >
              <el-option
                v-for="item in hexahedral "
                :key="item.value"
                :label="item.name"
                :value="item.value"
              >
              </el-option>
            </el-select>
               </el-form-item>
                 </div>
                     <div v-if="meshval=='3'">
                   <el-form-item
            label="网格生成"
            :label-width="formLabelWidth5"
          >
                     <el-select
              v-model="hybridParam1.element_generation"
              placeholder="请选择"
            >
              <el-option
                v-for="item in mixture"
                :key="item.value"
                :label="item.name"
                :value="item.value"
              >
              </el-option>
            </el-select>
               </el-form-item>
                <el-form-item
            label="边界层增长方向"
            :label-width="formLabelWidth5"
          >
                     <el-select
              v-model="hybridParam1.normal_direction"
              placeholder="请选择"
            >
              <el-option
                v-for="item in boundarylayer "
                :key="item.value"
                :label="item.name"
                :value="item.value"
              >
              </el-option>
            </el-select>
               </el-form-item>
                <el-form-item label="边界层层数" :label-width="formLabelWidth5" >
                <el-input v-model="hybridParam1.number_of_boundary_layers" autocomplete="off"></el-input>
              </el-form-item>
               <el-form-item label="边界层增长参数" :label-width="formLabelWidth5" >
                <el-input v-model="hybridParam1.boundary_layer_geometric_progression" autocomplete="off"></el-input>
              </el-form-item>
               <el-form-item label="初始层高度" :label-width="formLabelWidth5" >
                <el-input v-model="hybridParam1.boundary_layer_global_initial_height" autocomplete="off"></el-input>
              </el-form-item>
                 </div>
              <!-- <div class="heigeinput">
                <div class="listbtn"> 
                    <el-button plain class="anniu">写入参数文件</el-button>
                      <el-button plain class="anniu">进行网格划分</el-button>
                    </div>
              </div>  -->
      </el-form>
    </div>
      <div
        slot="footer"
        class="dialog-footer"
      >
        <el-button @click="dialog.mesh_generation = false">{{ $t("HCFD.file.cancel")}}</el-button>
        <el-button
          type="primary"
          @click="meshSplitok()"
        >网格划分</el-button>
      </div>
    </el-dialog>
    <!-- 缩放 -->
    <el-dialog
      v-if="active=='two-0'"
      :visible.sync="dialog.scale_visiable"
      :close-on-click-modal="false"
      @close='activecleer()'
      class="dialog"
      :modal='false'
      custom-class='dialoglocation dialog_color'
      width="385px"
      v-draggable
      v-draggleft=[styX.left]
    >
      <div
        slot="title"
        class=dialog_header
      >
        <el-image
          class="imge"
          :src="t1"
          fit="cover"
        />
        <span class="text-color">{{$t('HCFD.geneal.scale')}}</span>
      </div>
      <el-form>
        <el-form-item
          label="名称"
          :label-width="formLabelWidth2"
        >
          <el-input
            v-model="mcnames"
            autocomplete="off"
          ></el-input>
        </el-form-item>
        <el-form-item
          label="类型"
          :label-width="formLabelWidth2"
        >
          <el-input
            value="suofang"
            autocomplete="off"
          ></el-input>
        </el-form-item>
        <div class="line">
          <div class="linetext">相交/延长</div>
        </div>
        <el-form-item
          :label="$t('HCFD.geneal.factor')"
          :label-width="formLabelWidth2"
        >
          <el-input
            v-model="geneal.MeshTransform.Scale.Factor"
            autocomplete="off"
          ></el-input>
        </el-form-item>
      </el-form>
      <div
        slot="footer"
        class="dialog-footer"
      >
        <el-button @click="dialog.scale_visiable = false">{{ $t("HCFD.file.cancel")}}</el-button>
        <el-button
          type="primary"
          @click="hcfdparam(); dialog.scale_visiable = false"
        >{{ $t("HCFD.file.ok")}}</el-button>
      </div>
    </el-dialog>
    <!-- 翻译 -->
    <el-dialog
      v-if="active=='two-1'"
      :visible.sync="dialog.translation_visiable"
      :close-on-click-modal="false"
      @close='activecleer()'
      :modal='false'
      custom-class='dialoglocation dialog_color'
      width="385px"
      v-draggable
      v-draggleft=[styX.left]
    >
      <div
        slot="title"
        class=dialog_header
      >
        <el-image
          class="imge"
          :src="t2"
          fit="cover"
        />
        <span class="text-color">{{$t('HCFD.geneal.translation')}}</span>
      </div>
      <el-form class="div64">
        <el-form-item
          label="名称"
          :label-width="formLabelWidth2"
        >
          <el-input
            v-model="mcnames"
            autocomplete="off"
          ></el-input>
        </el-form-item>
        <el-form-item
          label="类型"
          :label-width="formLabelWidth2"
        >
          <el-input
            value="PingYi"
            autocomplete="off"
          ></el-input>
        </el-form-item>
        <div class="line">
          <div class="linetext">属性</div>
        </div>
        <div class="liitem">
          <el-form-item
            :label="$t('HCFD.geneal.distance')"
            :label-width="formLabelWidth7"
          >
            <el-input
              v-model="geneal.MeshTransform.Translation.Distance"
              autocomplete="off"
            ></el-input>
          </el-form-item>
        </div>
        <div class="liitem">
          <el-form-item
            :label="$t('HCFD.geneal.translationx')"
            :label-width="formLabelWidth7"
          >
            <el-input
              v-model="geneal.MeshTransform.Translation.X"
              autocomplete="off"
            ></el-input>
          </el-form-item>
        </div>
        <div class="liitem">
          <el-form-item
            :label=" $t('HCFD.geneal.translationy')"
            :label-width="formLabelWidth7"
          >
            <el-input
              v-model="geneal.MeshTransform.Translation.Y"
              autocomplete="off"
            ></el-input>
          </el-form-item>
        </div>
        <div class="liitem">
          <el-form-item
            :label="$t('HCFD.geneal.translationz')"
            :label-width="formLabelWidth7"
          >
            <el-input
              v-model="geneal.MeshTransform.Translation.Z"
              autocomplete="off"
            ></el-input>
          </el-form-item>
        </div>
      </el-form>
      <div
        slot="footer"
        class="dialog-footer"
      >
        <el-button @click="dialog.translation_visiable = false"> {{ $t("HCFD.file.cancel")}} </el-button>
        <el-button
          type="primary"
          @click="hcfdparam(); dialog.translation_visiable = false"
        >{{ $t("HCFD.file.ok")}}</el-button>
      </div>
    </el-dialog>
    <!-- 旋转 -->
    <el-dialog
      v-if="active=='two-2'"
      :close-on-click-modal="false"
      @close='activecleer()'
      :modal='false'
      custom-class='dialoglocation dialog_color'
      :visible.sync="dialog.rotation_visiable"
      width="385px"
      v-draggable
      v-draggleft=[styX.left]
    >
      <div
        slot="title"
        class=dialog_header
      >
        <el-image
          class="imge"
          :src="t3"
          fit="cover"
        />
        <span class="text-color">{{$t('HCFD.geneal.rotation')}}</span>
      </div>
      <el-form class="div64">
        <el-form-item
          label="名称"
          :label-width="formLabelWidth2"
        >
          <el-input
            v-model="mcnames"
            autocomplete="off"
          ></el-input>
        </el-form-item>
        <el-form-item
          label="类型"
          :label-width="formLabelWidth2"
        >
          <el-input
            value="xuanzuan"
            autocomplete="off"
          ></el-input>
        </el-form-item>
        <div class="line">
          <div class="linetext">属性</div>
        </div>
        <el-form-item
          :label="$t('HCFD.geneal.angle')"
          :label-width="formLabelWidth7"
        >
          <el-input
            v-model="geneal.MeshTransform.Rotation.Angle"
            autocomplete="off"
          ></el-input>
        </el-form-item>
        <el-form-item
          :label="$t('HCFD.geneal.rotationx')"
          :label-width="formLabelWidth7"
        >
          <el-input
            v-model="geneal.MeshTransform.Rotation.X"
            autocomplete="off"
          ></el-input>
        </el-form-item>
        <el-form-item
          :label="$t('HCFD.geneal.rotationy')"
          :label-width="formLabelWidth7"
        >
          <el-input
            v-model="geneal.MeshTransform.Rotation.Y"
            autocomplete="off"
          ></el-input>
        </el-form-item>
        <el-form-item
          :label="$t('HCFD.geneal.rotationz')"
          :label-width="formLabelWidth7"
        >
          <el-input
            v-model="geneal.MeshTransform.Rotation.Z"
            autocomplete="off"
          ></el-input>
        </el-form-item>
        <el-form-item
          :label="$t('HCFD.geneal.rotationx1')"
          :label-width="formLabelWidth7"
        >
          <el-input
            v-model="geneal.MeshTransform.Rotation.X1"
            autocomplete="off"
          ></el-input>
        </el-form-item>
        <el-form-item
          :label="$t('HCFD.geneal.rotationy1')"
          :label-width="formLabelWidth7"
        >
          <el-input
            v-model="geneal.MeshTransform.Rotation.Y1"
            autocomplete="off"
          ></el-input>
        </el-form-item>
        <el-form-item
          :label="$t('HCFD.geneal.rotationz1')"
          :label-width="formLabelWidth7"
        >
          <el-input
            v-model="geneal.MeshTransform.Rotation.Z1"
            autocomplete="off"
          ></el-input>
        </el-form-item>
      </el-form>
      <div
        slot="footer"
        class="dialog-footer"
      >
        <el-button @click="dialog.rotation_visiable = false">{{ $t("HCFD.file.cancel")}}</el-button>
        <el-button
          type="primary"
          @click="hcfdparam(); dialog.rotation_visiable = false"
        >{{ $t("HCFD.file.ok")}} </el-button>
      </div>
    </el-dialog>
    <!-- 分析类型 -->
    <!-- <el-dialog
      class="lg-y-z"
      :visible.sync="dialog.type_visiable "
      :close-on-click-modal="false"
      @close='activecleer()'
     v-if="active=='two-3'"
    :modal='false'
    custom-class='dialoglocation dialog_color'
     width="385px"
     :style="styX"
    >
     <div slot="title" class=dialog_header>
     <el-image class="imge" :src="t4" fit="cover" />
     <span class="text-color">{{$t('HCFD.geneal.analysis')}}</span>
  </div>
      <el-form>
        <div class="radio_text text_color  liangf">
          <div class="classfelx">
               <el-tooltip class="item" effect="dark" content="分析类型" placement="bottom">
                <el-radio
                  v-model="parameterObj.nmlParam.analysis_Type"
                  label="Steady"
                  >{{ $t("HCFD.geneal.steady") }}</el-radio
                >
                  </el-tooltip>
            </div>
            <div class="classfelx">
                  <el-tooltip class="item" effect="dark" content="分析类型" placement="bottom">
                <el-radio
                  v-model="parameterObj.nmlParam.analysis_Type"
                  label="Unsteady"
                  >{{ $t("HCFD.geneal.unsteady") }}</el-radio
                >
                    </el-tooltip>
              </div>
        </div>
      </el-form>
      <div slot="footer" class="dialog-footer">
        <el-button
          @click="referencevisiable((dialog.type_visiable  = false))"
          >{{ $t("HCFD.file.cancel")}} </el-button
        >
        <el-button type="primary" @click="hcfdparam(); dialog.type_visiable  = false"
          >{{ $t("HCFD.file.ok")}}</el-button
        >
      </div>
    </el-dialog> -->
    <!-- 并行类型 -->
    <el-dialog
      class="lg-y-z"
      :visible.sync="dialog.parallel_visiable "
      :close-on-click-modal="false"
      @close='activecleer()'
      :modal='false'
      custom-class='dialoglocation dialog_color'
      width="385px"
      v-draggable
      v-draggleft=[styX.left]
    >
      <div
        slot="title"
        class=dialog_header
      >
        <el-image
          class="imge"
          :src="t5"
          fit="cover"
        />
        <span class="text-color">{{$t('HCFD.geneal.parallel')}}</span>
      </div>
      <el-form>
        <div class="radio_text text_color">
          <el-form-item
            :label="$t('HCFD.geneal.number')"
            :label-width="formLabelWidth2"
            v-if="
                    parameterObj.nmlParam.parallel_Optional == 'MPI Parallel'
                  "
          >
            <el-input
              v-model="parameterObj.nmlParam.number_of_Processors"
              autocomplete="off"
            ></el-input>
          </el-form-item>
        </div>
      </el-form>
      <div
        slot="footer"
        class="dialog-footer"
      >
        <el-button @click="referencevisiable((dialog.parallel_visiable  = false))">{{ $t("HCFD.file.cancel")}} </el-button>
        <el-button
          type="primary"
          @click="hcfdparam(); dialog.parallel_visiable  = false"
        >{{ $t("HCFD.file.ok")}}</el-button>
      </div>
    </el-dialog>
    <!-- 控制方程 -->
    <el-dialog
      v-if="active=='three-0'"
      :visible.sync="dialog.equation_visiable"
      :close-on-click-modal="false"
      @close='activecleer()'
      class="dialog"
      :modal='false'
      custom-class='dialoglocation dialog_color'
      width="385px"
      v-draggable
      v-draggleft=[styX.left]
    >
      <div
        slot="title"
        class=dialog_header
      >
        <el-image
          class="imge"
          :src="w1"
          fit="cover"
        />
        <span class="text-color">{{$t('HCFD.physics.gover')}}</span>
      </div>
      <el-form>
        <el-radio-group
          v-model="parameterObj.nmlParam.eqn_type"
          size="mini"
        >
          <el-radio
            label="cal_perf_compress"
            style="display: block; padding:15px 0;"
          >{{
                    $t("HCFD.physics.compress")
                  }}</el-radio>
          <el-radio label="cal_perf_incompress">{{
                    $t("HCFD.physics.incompress")
                  }}</el-radio>
        </el-radio-group>
        <div
          class="disflex text_color"
          v-if="parameterObj.nmlParam.eqn_type=='cal_perf_incompress'"
        >
          <span class="text_color formLabelWidth8">{{ $t("HCFD.physics.artifical") }}</span>
          <el-input
            class='inpw75'
            size="mini"
            v-model="parameterObj.nmlParam.artificial_compress"
          ></el-input>
        </div>
      </el-form>
      <div
        slot="footer"
        class="dialog-footer"
      >
        <el-button @click="dialog. equation_visiable = false"> {{ $t("HCFD.file.cancel")}} </el-button>
        <el-button
          type="primary"
          @click="hcfdparam(); dialog.equation_visiable = false"
        >{{ $t("HCFD.file.ok")}} </el-button>
      </div>
    </el-dialog>
    <!-- 粘性模型 -->
    <el-dialog
      class="lg-y-z"
      :visible.sync="dialog.inviscid_visiable"
      :close-on-click-modal="false"
      @close='activecleer()'
      v-if="active=='three2-0'"
      :modal='false'
      custom-class='dialoglocation dialog_color'
      width="385px"
      heigth="385px"
      v-draggable
      v-draggleft=[styX.left]
    >
      <div
        slot="title"
        class=dialog_header
      >
        <el-image
          class="imge"
          :src="w2"
          fit="cover"
        />
        <span class="text-color">{{$t('HCFD.physics.viscous')}}</span>
      </div>
      <el-form>
        <div class="selecr">
          <el-form-item
            label="模型类型"
            :label-width="formLabelWidth5"
          >
            <el-select
              v-model="parameterObj.nmlParam.viscous_terms"
              placeholder="请选择"
            >
              <el-option
                v-for="item in selectlist1"
                :key="item.value"
                :label="item.name"
                :value="item.value"
              >
              </el-option>
            </el-select>
          </el-form-item>
          <div class="line">
            <div class="linetext">属性</div>
          </div>
          <div v-if="parameterObj.nmlParam.viscous_terms=='laminar'">
            <el-form-item
              :label="$t('HCFD.physics.molecular')"
              :label-width="formLabelWidth5"
            >
              <el-input
                v-model="parameterObj.nmlParam.prandtlnumber_molecular"
                autocomplete="off"
              ></el-input>
            </el-form-item>
          </div>
          <div v-if="parameterObj.nmlParam.viscous_terms=='turbulent'">
            <el-form-item
              label="湍流模型"
              :label-width="formLabelWidth5"
            >
              <el-select
                v-model="parameterObj.nmlParam.turb_model"
                placeholder="请选择"
              >
                <el-option
                  v-for="item in selectlist2"
                  :key="item.value"
                  :label="item.name"
                  :value="item.value"
                >
                </el-option>
              </el-select>
            </el-form-item>
            <el-form-item
              :label="$t('HCFD.physics.Molecular')"
              :label-width="formLabelWidth5"
            >
              <el-input
                v-model="parameterObj.nmlParam.prandtlnumber_molecular"
                autocomplete="off"
              ></el-input>
            </el-form-item>
            <el-form-item
              :label="$t('HCFD.physics.turbulents')"
              :label-width="formLabelWidth5"
            >
              <el-input
                v-model="Physics.Turbulent.TurbulentPrandtlNumber"
                autocomplete="off"
              ></el-input>
            </el-form-item>
          </div>
        </div>
      </el-form>
      <div
        slot="footer"
        class="dialog-footer"
      >
        <el-button @click="dialog.inviscid_visiable= false">{{ $t("HCFD.file.cancel")}} </el-button>
        <el-button
          type="primary"
          @click="hcfdparam(); dialog.inviscid_visiable = false"
        >{{ $t("HCFD.file.ok")}}</el-button>
      </div>
    </el-dialog>
    <!-- 运动网格  -->
    <el-dialog
      class="lg-y-z"
      :visible.sync="dialog.dynamic_visiable "
      :close-on-click-modal="false"
      @close='activecleer()'
      v-if="active=='three2-2'"
      :modal='false'
      custom-class='dialoglocation dialog_color'
      width="385px"
      v-draggable
      v-draggleft=[styX.left]
    >
      <div
        slot="title"
        class=dialog_header
      >
        <el-image
          class="imge"
          :src="w4"
          fit="cover"
        />
        <span class="text-color">{{$t('HCFD.physics.dynamic')}}</span>
      </div>
      <el-form>
        <div class="radio_text text_color liangf">
          <div class="classfelx">
            <el-radio
              v-model="parameterObj.nmlParam.dynamic_Mesh"
              label="on"
            >on</el-radio>
          </div>
          <div class="classfelx">
            <el-radio
              v-model="parameterObj.nmlParam.dynamic_Mesh"
              label="off"
            >off</el-radio>
          </div>

        </div>
        <div
          class="selecr"
          v-if="parameterObj.nmlParam.dynamic_Mesh=='on'"
        >
          <el-form-item
            label="运动模型"
            :label-width="formLabelWidth7"
          >
            <el-select
              v-model="ydval"
              placeholder="请选择"
            >
              <el-option
                v-for="item in ydlist"
                :key="item.value"
                :label="item.name"
                :value="item.value"
              >
              </el-option>
            </el-select>
          </el-form-item>
          <div class="line">
            <div class="linetext">定义运动体</div>
          </div>
          <el-form-item
            label="数量"
            :label-width="formLabelWidth7"
          >
            <el-input
              v-model="form.name"
              autocomplete="off"
            ></el-input>
          </el-form-item>

          <el-form-item
            label="名字"
            :label-width="formLabelWidth7"
          >
            <el-input
              v-model="form.name"
              autocomplete="off"
            ></el-input>
          </el-form-item>
          <el-form-item
            label="运动机理"
            :label-width="formLabelWidth7"
          >
            <el-select
              v-model="ydval2"
              placeholder="请选择"
            >
              <el-option
                v-for="item in ydlist2"
                :key="item.value"
                :label="item.name"
                :value="item.value"
              >
              </el-option>
            </el-select>
          </el-form-item>
          <el-form-item
            label="类型"
            :label-width="formLabelWidth7"
          >
            <el-select
              v-model="ydval3"
              placeholder="请选择"
            >
              <el-option
                v-for="item in ydlist3"
                :key="item.value"
                :label="item.name"
                :value="item.value"
              >
              </el-option>
            </el-select>
          </el-form-item>
          <div v-if="ydval2=='0'&&ydval3=='0'||ydval2=='1'&&ydval3=='0'">
            <el-form-item
              label="无量刚速率"
              :label-width="formLabelWidth7"
            >
              <el-input
                v-model="form.name"
                autocomplete="off"
              ></el-input>
            </el-form-item>

            <el-form-item
              label="无量刚速率"
              :label-width="formLabelWidth7"
            >
              <el-input
                v-model="form.name"
                autocomplete="off"
              ></el-input>
            </el-form-item>
          </div>
          <div v-if="ydval2=='1'&&ydval3=='0'||ydval2=='1'&&ydval3=='1'">
            <el-form-item
              label="相位/度"
              :label-width="formLabelWidth7"
            >
              <el-input
                v-model="form.name"
                autocomplete="off"
              ></el-input>
            </el-form-item>
            <el-form-item
              label="幅值/度"
              :label-width="formLabelWidth7"
            >
              <el-input
                v-model="form.name"
                autocomplete="off"
              ></el-input>
            </el-form-item>
          </div>
          <div v-if="ydval2=='1'&&ydval3=='0'||ydval2=='1'&&ydval3=='1'">
            <el-form-item
              label="旋转中心坐标X"
              :label-width="formLabelWidth7"
            >
              <el-input
                v-model="form.name"
                autocomplete="off"
              ></el-input>
            </el-form-item>
            <el-form-item
              label="旋转中心坐标Y"
              :label-width="formLabelWidth7"
            >
              <el-input
                v-model="form.name"
                autocomplete="off"
              ></el-input>
            </el-form-item>
            <el-form-item
              label="旋转中心坐标Z"
              :label-width="formLabelWidth7"
            >
              <el-input
                v-model="form.name"
                autocomplete="off"
              ></el-input>
            </el-form-item>
          </div>
          <el-form-item
            label="旋转轴单位矢量X分量"
            :label-width="formLabelWidth7"
          >
            <el-input
              v-model="form.name"
              autocomplete="off"
            ></el-input>
          </el-form-item>
          <el-form-item
            label="旋转轴单位矢量Y分量"
            :label-width="formLabelWidth7"
          >
            <el-input
              v-model="form.name"
              autocomplete="off"
            ></el-input>
          </el-form-item>
          <el-form-item
            label="旋转轴单位矢量Z分量"
            :label-width="formLabelWidth7"
          >
            <el-input
              v-model="form.name"
              autocomplete="off"
            ></el-input>
          </el-form-item>
          <el-form-item
            label="无量纲旋转起始时间"
            :label-width="formLabelWidth7"
          >
            <el-input
              v-model="form.name"
              autocomplete="off"
            ></el-input>
          </el-form-item>
          <el-form-item
            label="无量纲旋转持续时间"
            :label-width="formLabelWidth7"
          >
            <el-input
              v-model="form.name"
              autocomplete="off"
            ></el-input>
          </el-form-item>
          <div class="line">
            <div class="linetext">t=0时刻力矩中心</div>
          </div>
          <el-form-item
            label="X-coordinate"
            :label-width="formLabelWidth7"
          >
            <el-input
              v-model="form.name"
              autocomplete="off"
            ></el-input>
          </el-form-item>
          <el-form-item
            label="Y-coordinate"
            :label-width="formLabelWidth7"
          >
            <el-input
              v-model="form.name"
              autocomplete="off"
            ></el-input>
          </el-form-item>
          <el-form-item
            label="Z-coordinate"
            :label-width="formLabelWidth7"
          >
            <el-input
              v-model="form.name"
              autocomplete="off"
            ></el-input>
          </el-form-item>
          <el-form-item
            label="力矩中心状态"
            :label-width="formLabelWidth7"
          >
            <el-select
              v-model="ydval4"
              placeholder="请选择"
            >
              <el-option
                v-for="item in ydlist4"
                :key="item.value"
                :label="item.name"
                :value="item.value"
              >
              </el-option>
            </el-select>
          </el-form-item>
          <div class="line">
            <div class="linetext">力/力矩无量纲化</div>
          </div>
          <el-form-item
            label="无量纲参考面积"
            :label-width="formLabelWidth7"
          >
            <el-input
              v-model="form.name"
              autocomplete="off"
            ></el-input>
          </el-form-item>
          <el-form-item
            label="无量纲参考弦长"
            :label-width="formLabelWidth7"
          >
            <el-input
              v-model="form.name"
              autocomplete="off"
            ></el-input>
          </el-form-item>
          <el-form-item
            label="无量纲参考展长"
            :label-width="formLabelWidth7"
          >
            <el-input
              v-model="form.name"
              autocomplete="off"
            ></el-input>
          </el-form-item>
          <div class="line">
            <div class="linetext">有量纲物理量</div>
          </div>
          <div class="liangf">
            <div
              class="classfelx text_color"
              style="line-height: 2;"
            >
              输出运动体有量纲物理量
            </div>
            <div class="classfelx">
              <el-radio
                v-model="parameterObj.nmlParam.dynamic_Mesh"
                label="on"
              >on</el-radio>
              <el-radio
                v-model="parameterObj.nmlParam.dynamic_Mesh"
                label="off"
              >off</el-radio>

            </div>

          </div>
          <el-checkbox v-model="checked">预览网格运动</el-checkbox>
        </div>
      </el-form>
      <div
        slot="footer"
        class="dialog-footer"
      >
        <el-button @click="dialog.dynamic_visiable  = false">{{ $t("HCFD.file.cancel")}} </el-button>
        <el-button
          type="primary"
          @click="hcfdparam(); dialog.dynamic_visiable   = false"
        >{{ $t("HCFD.file.ok")}}</el-button>
      </div>
    </el-dialog>
    <!--非惯性参考条件  -->
    <el-dialog
      class="lg-y-z"
      :visible.sync="dialog.nonitertial_visiable"
      :close-on-click-modal="false"
      @close='activecleer()'
      v-if="active=='three1-1'"
      :modal='false'
      custom-class='dialoglocation dialog_color'
      width="385px"
      v-draggable
      v-draggleft=[styX.left]
    >
      <div
        slot="title"
        class=dialog_header
      >
        <el-image
          class="imge"
          :src="w6"
          fit="cover"
        />
        <span class="text-color">{{$t('HCFD.physics.nonitertial')}}</span>
      </div>
      <el-form>
        <div class="radio_text text_color liangf">
          <div class="classfelx">
            <el-radio
              v-model="parameterObj.nmlParam.noninertial_Reference_Frame"
              label="on"
            >on</el-radio>
          </div>
          <div class="classfelx">
            <el-radio
              v-model="parameterObj.nmlParam.noninertial_Reference_Frame"
              label="off"
            >off</el-radio>
          </div>
        </div>
        <div v-if="parameterObj.nmlParam.noninertial_Reference_Frame=='on'">
          <div class="line">
            <div class="linetext">旋转中心</div>
          </div>
          <el-form-item
            label="坐标X"
            :label-width="formLabelWidth2"
          >
            <el-input
              v-model="form.name"
              autocomplete="off"
            ></el-input>
          </el-form-item>
          <el-form-item
            label="坐标Y"
            :label-width="formLabelWidth2"
          >
            <el-input
              v-model="form.name"
              autocomplete="off"
            ></el-input>
          </el-form-item>
          <el-form-item
            label="坐标Z"
            :label-width="formLabelWidth2"
          >
            <el-input
              v-model="form.name"
              autocomplete="off"
            ></el-input>
          </el-form-item>
          <div class="line">
            <div class="linetext">旋转矢量</div>
          </div>
          <el-form-item
            label="X方向分量"
            :label-width="formLabelWidth2"
          >
            <el-input
              v-model="form.name"
              autocomplete="off"
            ></el-input>
          </el-form-item>
          <el-form-item
            label="Y方向分量"
            :label-width="formLabelWidth2"
          >
            <el-input
              v-model="form.name"
              autocomplete="off"
            ></el-input>
          </el-form-item>
          <el-form-item
            label="Z方向分量"
            :label-width="formLabelWidth2"
          >
            <el-input
              v-model="form.name"
              autocomplete="off"
            ></el-input>
          </el-form-item>
        </div>
      </el-form>
      <div
        slot="footer"
        class="dialog-footer"
      >
        <el-button @click="dialog.nonitertial_visiable  = false">{{ $t("HCFD.file.cancel")}} </el-button>
        <el-button
          type="primary"
          @click="hcfdparam(); dialog.nonitertial_visiable   = false"
        >{{ $t("HCFD.file.ok")}}</el-button>
      </div>
    </el-dialog>
    <!-- 通量残差构造方法 -->
    <el-dialog
      class="lg-Solution"
      :visible.sync="dialog.fluxrc_visiable"
      :close-on-click-modal="false"
      @close='activecleer()'
      v-if="active=='four-0'"
      :modal='false'
      custom-class='dialoglocation dialog_color'
      width="385px"
      v-draggable
      v-draggleft=[styX.left]
    >
      <div
        slot="title"
        class=dialog_header
      >
        <el-image
          class="imge"
          :src="q1"
          fit="cover"
        />
        <span class="text-color">{{$t('HCFD.solution.invis')}}</span>
      </div>
      <el-form class="groupradio selecr">
        <div class="line">
          <div class="linetext">属性</div>
        </div>
        <el-form-item
          label="通量残差构造方法"
          :label-width="formLabelWidth7"
        >
          <el-select
            v-model="parameterObj.nmlParam.flux_construction"
            placeholder="请选择"
          >
            <el-option
              v-for="item in qjklist"
              :key="item.value"
              :label="item.name"
              :value="item.value"
            >
            </el-option>
          </el-select>
        </el-form-item>

        <el-form-item
          label="通量雅可比构造方法"
          :label-width="formLabelWidth7"
        >
          <el-select
            v-model="parameterObj.nmlParam.flux_construction_lhs"
            placeholder="请选择"
          >
            <el-option
              v-for="item in qjklist3"
              :key="item.value"
              :label="item.name"
              :value="item.value"
            >
            </el-option>
          </el-select>
        </el-form-item>
        <el-form-item
          label="MUSCL重构格式"
          :label-width="formLabelWidth7"
        >
          <el-input
            v-model="form.name"
            autocomplete="off"
          ></el-input>
        </el-form-item>
        <el-form-item
          label="通量限制"
          :label-width="formLabelWidth7"
        >
          <el-select
            v-model="parameterObj.nmlParam.flux_limiter"
            placeholder="请选择"
          >
            <el-option
              v-for="item in qjklist2"
              :key="item.value"
              :label="item.name"
              :value="item.value"
            >
            </el-option>
          </el-select>
        </el-form-item>

        <el-form-item
          :label="$t('HCFD.solution.firstOrderNum') "
          :label-width="formLabelWidth7"
        >
          <el-input
            v-model="parameterObj.nmlParam.first_order_iterations"
            autocomplete="off"
          ></el-input>
        </el-form-item>
      </el-form>
      <div
        slot="footer"
        class="dialog-footer"
      >
        <el-button @click="referencevisiable((dialog.fluxrc_visiable = false))"> {{ $t("HCFD.file.cancel")}} </el-button>
        <el-button
          type="primary"
          @click="hcfdparam(); dialog.fluxrc_visiable = false"
        >{{ $t("HCFD.file.ok")}}</el-button>
      </div>
    </el-dialog>

    <!-- 时间格式 -->

    <el-dialog
      :visible.sync="dialog.time_visiable"
      class="lg-Solution"
      :close-on-click-modal="false"
      @close='activecleer()'
      v-if="active=='four-1'"
      :modal='false'
      custom-class='dialoglocation dialog_color'
      width="385px"
      v-draggable
      v-draggleft=[styX.left]
    >
      <div
        slot="title"
        class=dialog_header
      >
        <el-image
          class="imge"
          :src="q2"
          fit="cover"
        />
        <span class="text-color">{{$t('HCFD.solution.timeScheme')}}</span>
      </div>
      <el-form class="lg-form">
        <div class="line">
          <div class="linetext">属性</div>
        </div>
        <el-form-item
          label="时间格式"
          :label-width="formLabelWidth7"
          class="shijianges"
        >
          <el-select
            v-model="parameterObj.nmlParam.time_accuracy"
            placeholder="请选择"
          >
            <el-option
              v-for="item in tlist1"
              :key="item.value"
              :label="item.name"
              :value="item.value"
            >
            </el-option>
          </el-select>
        </el-form-item>
           <el-form-item
          :label="$t('HCFD.solution.stepping')"
          :label-width="formLabelWidth61"
          class="iemradio shijianges"
        >
          <el-radio-group v-model="parameterObj.nmlParam.pseudo_time_stepping">
            <el-radio label="off">Off</el-radio>
            <el-radio
              label="on"
              class="radiooff"
            >On</el-radio>
          </el-radio-group>
        </el-form-item>
        <li class="disflex liitem liangf">
          <span class="formLabelWidth8">{{$t('HCFD.solution.nondim')}}</span>
          <el-input v-model="parameterObj.nmlParam.time_step_nondim"></el-input>
        </li>
        <li class="disflex liitem liangf">
          <span class="formLabelWidth8">{{$t('HCFD.solution.subiterations')}}</span>
          <el-input v-model="parameterObj.nmlParam.subiterations"></el-input>
        </li>
        <li class="disflex liitem liangf">
          <span class="formLabelWidth9">{{$t('HCFD.solution.cfl')}}</span>
          <el-input v-model="parameterObj.nmlParam.schedule_iteration[0]"></el-input>
          <el-input v-model="parameterObj.nmlParam.schedule_iteration[1]"></el-input>
        </li>
        <li class="disflex liitem liangf">
          <span class="formLabelWidth9">{{$t('HCFD.solution.Schedulecfl')}}</span>
          <el-input v-model="parameterObj.nmlParam.schedule_cfl[0]"></el-input>
          <el-input v-model="parameterObj.nmlParam.schedule_cfl[1]"></el-input>
        </li>
        <li class="disflex liitem liangf">
          <span class="formLabelWidth9">{{$t('HCFD.solution.cflturb')}}</span>
          <el-input v-model="parameterObj.nmlParam.schedule_cflturb[0]"></el-input>
          <el-input v-model="parameterObj.nmlParam.schedule_cflturb[1]"></el-input>
        </li>
      </el-form>

      <div
        slot="footer"
        class="dialog-footer"
      >
        <el-button @click="referencevisiable((dialog.time_visiable = false))">{{ $t("HCFD.file.cancel")}} </el-button>
        <el-button
          type="primary"
          @click="hcfdparam(); dialog.time_visiable = false"
        >{{ $t("HCFD.file.ok")}}</el-button>
      </div>
    </el-dialog>
    <!-- 边界条件 -->
    <el-dialog
      class="dialog-block"
      :visible.sync="dialog.border_visiable"
      :close-on-click-modal="false"
      @close='activecleer()'
      v-if="active=='three2-1'"
      :modal='false'
      custom-class='dialoglocation dialog_color'
      width="384px"
      v-draggable
      v-draggleft=[styX.left]
    >
      <div
        slot="title"
        class=dialog_header
      >
        <el-image
          class="imge"
          :src="w2"
          fit="cover"
        />
        <span class="text-color">{{$t('HCFD.physics.boundary')}}</span>
      </div>
      <el-form>
        <div class="selecr">
          <div>
            <vue-uploader
              ref="mapbc"
              :projectId="project.projectId"
              :solverType="'hcfd'"
              :accept="'.mapbc,.dat'"
              :name="'Load BC File'"
              :upId="'1'"
               @changedesc="changedesc1($event)"
            ></vue-uploader>
          </div>
          <div class="desc">
            <li
              class="descitem"
              v-for="(item,index) in desclist"
              :key="index"
            >{{item.id}}--{{item.conditionsCode}}--{{item.name}}</li>
          </div>
          <el-form-item
            label=" 边界类型"
            :label-width="formLabelWidth2"
          >
            <el-select
              size="mini"
              @change="boundaryChange"
              v-model="Physics.Boundary.bquery"
              placeholder="select boundary"
            >
              <el-option
                v-for="hcfdBoundary in parameterObj.hcfdBoundarys"
                :key="hcfdBoundary.id"
                :label="hcfdBoundary.name"
                :value="hcfdBoundary.id"
              >
              </el-option>
            </el-select>
          </el-form-item>
          <el-form-item
            label=" 外流类型"
            :label-width="formLabelWidth2"
          >
            <el-select
              size="mini"
              @change="conditionsChange"
              v-model="Physics.Boundary.cquery"
              placeholder="select Conditions"
            >
              <el-option
                v-for="Condition in Physics.Boundary.Conditions"
                :key="Condition.conditionsCode"
                :label="Condition.name"
                :value="Condition.conditionsCode"
              >
              </el-option>
            </el-select>
          </el-form-item>
          <div v-if="Physics.Boundary.bquery=='WING1'">
            <el-form-item
              label=" 总压比"
              :label-width="formLabelWidth"
            >
              <el-input
                v-model="form.name"
                autocomplete="off"
              ></el-input>
            </el-form-item>
            <el-form-item
              label=" 总温比"
              :label-width="formLabelWidth"
            >
              <el-input
                v-model="form.name"
                autocomplete="off"
              ></el-input>
            </el-form-item>
            <el-form-item
              label="法向"
              :label-width="formLabelWidth"
            >
              <el-input
                v-model="form.name"
                autocomplete="off"
              ></el-input>
            </el-form-item>
            <el-form-item
              label="入流角(Alpha)"
              :label-width="formLabelWidth"
            >
              <el-input
                v-model="form.name"
                autocomplete="off"
              ></el-input>
            </el-form-item>
            <el-form-item
              label="入流角(Beta)"
              :label-width="formLabelWidth"
            >
              <el-input
                v-model="form.name"
                autocomplete="off"
              ></el-input>
            </el-form-item>
            <el-form-item
              label=" 欧拉角(Theta1)"
              :label-width="formLabelWidth"
            >
              <el-input
                v-model="form.name"
                autocomplete="off"
              ></el-input>
            </el-form-item>
            <el-form-item
              label=" 欧拉角(Theta2)"
              :label-width="formLabelWidth"
            >
              <el-input
                v-model="form.name"
                autocomplete="off"
              ></el-input>
            </el-form-item>
            <el-form-item
              label="欧拉角(Theta3)"
              :label-width="formLabelWidth"
            >
              <el-input
                v-model="form.name"
                autocomplete="off"
              ></el-input>
            </el-form-item>
          </div>
        </div>
      </el-form>
      <div
        slot="footer"
        class="dialog-footer"
      >
        <el-button @click="dialog.border_visiable = false">{{ $t("HCFD.file.cancel")}} </el-button>
        <el-button
          type="primary"
          @click="hcfdparam(); dialog.border_visiable = false"
        >{{ $t("HCFD.file.ok")}} </el-button>
      </div>
    </el-dialog>
    <!-- 参考条件 -->
    <el-dialog
      class="dialog-block"
      :visible.sync="dialog.reference_visiable"
      :close-on-click-modal="false"
      @close='activecleer()'
      v-if="active=='three1-0'"
      :modal='false'
      custom-class='dialoglocation dialog_color heightclass'
      width="385px"
      height="400px"
      v-draggable
      v-draggleft=[styX.left]
    >
      <div
        slot="title"
        class=dialog_header
      >
        <el-image
          class="imge"
          :src="w5"
          fit="cover"
        />
        <span class="text-color">{{$t('HCFD.physics.reference')}}</span>
      </div>
      <el-form class="groupradio">
        <div class="line">
          <div class="linetext">属性</div>
        </div>
        <li class="disflex liitem liangf">
          <span class="formLabelWidth8">{{ $t("HCFD.physics.machNum") }}</span>
          <el-input
            class="inpw50"
            size="mini"
            v-model="parameterObj.nmlParam.mach_number"
          ></el-input>
        </li>
        <li class=" liitem liangf">
          <span class="formLabelWidth8">{{ $t("HCFD.physics.reyNum") }}</span>
          <el-input
            class="inpw50"
            size="mini"
            v-model="parameterObj.nmlParam.reynolds_number"
          ></el-input>
        </li>

        <li class=" liitem liangf">
          <span class="formLabelWidth8">{{ $t("HCFD.physics.temperature") }}</span>
        </li>
        <li class=" liitem liangf">
          <el-radio-group
            v-model="parameterObj.nmlParam.temperature_units"
            style=" width: 100%;"
          >
            <el-radio :label="'Kelvin'">{{ $t("HCFD.physics.kelvin") }}</el-radio>
            <el-radio :label="'Rankine'">{{ $t("HCFD.physics.rankine") }}</el-radio>
          </el-radio-group>
          <el-input v-model="parameterObj.nmlParam.temperature"></el-input>
        </li>
        <li class=" liitem liangf">
          <span class="formLabelWidth8">{{ $t("HCFD.physics.attack") }}</span>
          <el-input v-model="parameterObj.nmlParam.angle_of_attack"></el-input>
        </li>
        <li class=" liitem liangf">
          <span class="formLabelWidth8">{{ $t("HCFD.physics.yaw") }} </span>
          <el-input v-model="parameterObj.nmlParam.angle_of_yaw"></el-input>
        </li>
        <li class=" liitem liangf">
          <span class="formLabelWidth8">{{ $t("HCFD.physics.area") }}</span>
          <el-input v-model="parameterObj.nmlParam.area_reference"></el-input>
        </li>
        <li class=" liitem liangf">
          <span class="formLabelWidth8">{{ $t("HCFD.physics.yaxis") }}</span>
          <el-input v-model="parameterObj.nmlParam.x_moment_length"></el-input>
        </li>
        <li class=" liitem liangf">
          <span class="formLabelWidth8">{{ $t("HCFD.physics.zaxis") }}</span>
          <el-input v-model="parameterObj.nmlParam.y_moment_length"></el-input>
        </li>
        <li class=" liitem liangf">
          <span class="formLabelWidth8">{{ $t("HCFD.physics.momentc") }}</span>
          <el-input v-model="parameterObj.nmlParam.x_moment_center"></el-input>
        </li>
        <li class=" liitem liangf">
          <span class="formLabelWidth8">{{ $t("HCFD.physics.xcoordinate") }}</span>
          <el-input v-model="parameterObj.nmlParam.x_moment_center"></el-input>
        </li>
        <li class=" liitem liangf">
          <span class="formLabelWidth8">{{ $t("HCFD.physics.ycoordinate") }}</span>
          <el-input v-model="parameterObj.nmlParam.y_moment_center"></el-input>
        </li>
        <li class=" liitem liangf">
          <span class="formLabelWidth8">{{ $t("HCFD.physics.zcoordinate") }}</span>
          <el-input v-model="parameterObj.nmlParam.z_moment_center"></el-input>
        </li>
      </el-form>
      <div
        slot="footer"
        class="dialog-footer"
      >
        <el-button @click="dialog.reference_visiable = false">{{ $t("HCFD.file.cancel")}} </el-button>
        <el-button
          type="primary"
          @click="hcfdparam(); dialog.reference_visiable = false"
        >{{ $t("HCFD.file.ok")}}</el-button>
      </div>
    </el-dialog>
    <!-- 线性方程组求解参数 -->
    <el-dialog
      class="lg-Solution"
      :visible.sync="dialog.xian_visiable"
      :close-on-click-modal="false"
      @close='activecleer()'
      v-if="active=='four2-0'"
      :modal='false'
      custom-class='dialoglocation dialog_color'
      width="385px"
      v-draggable
      v-draggleft=[styX.left]
    >
      <div
        slot="title"
        class=dialog_header
      >
        <el-image
          class="imge"
          :src="q3"
          fit="cover"
        />
        <span class="text-color">{{$t('HCFD.solution.linearSol')}}</span>
      </div>
      <el-form>
        <li class="disflex  liitem liangf ">
          <span class="formLabelWidth8">
            {{ $t("HCFD.solution.meanflow") }}
          </span>
          <el-input
            class="inpw75"
            size="mini"
            v-model="parameterObj.nmlParam.meanflow_sweeps"
          ></el-input>
        </li>
        <li class="disflex  liitem liangf ">
          <span class="formLabelWidth8">
            {{ $t("HCFD.solution.turbulence") }}
          </span>
          <el-input
            class="inpw75"
            size="mini"
            v-model="parameterObj.nmlParam.turbulence_sweeps"
          ></el-input>
        </li>
        <el-form-item
          :label="$t('HCFD.solution.gcr')"
          :label-width="formLabelWidth61"
          class="iemradio"
        >
          <el-radio-group v-model="parameterObj.nmlParam.line_implicit">
            <el-radio label="off">Off</el-radio>
            <el-radio
              label="on"
              class="radiooff"
            >On</el-radio>
          </el-radio-group>
        </el-form-item>
      </el-form>
      <div
        slot="footer"
        class="dialog-footer"
      >
        <el-button @click="referencevisiable((dialog.xian_visiable = false))">{{ $t("HCFD.file.cancel")}} </el-button>
        <el-button
          type="primary"
          @click="hcfdparam(); dialog.xian_visiable = false"
        >{{ $t("HCFD.file.ok")}} </el-button>
      </div>
    </el-dialog>
    <!-- 初始化 -->
    <el-dialog
      class="lg-y-z"
      :visible.sync="dialog.initialization_visiable "
      :close-on-click-modal="false"
      @close='activecleer()'
      v-if="active=='four2-10'"
      :modal='false'
      custom-class='dialoglocation dialog_color'
      width="385px"
      v-draggable
      v-draggleft=[styX.left]
    >
      <div
        slot="title"
        class=dialog_header
      >
        <el-image
          class="imge"
          :src="q4"
          fit="cover"
        />
        <span class="text-color">{{$t('HCFD.solution.initialization')}}</span>
      </div>
      <el-form>
        <div class="radio_text text_color liangf radiogroup ">
          <el-radio-group
            v-model="initialization"
            size="mini"
          >

            <el-radio
              label="freestreams"
              style="flex:1"
            >{{
                    $t("HCFD.solution.freestreams")
                  }}</el-radio>
            <el-radio
              label="specified"
              style="flex:1"
            >{{
                    $t("HCFD.solution.specified")
                  }}</el-radio>
          </el-radio-group>
        </div>
        <div v-if="initialization=='specified'">
          <div class="line">
            <div class="linetext">属性</div>
          </div>
          <el-form-item
            label="区域数量"
            :label-width="formLabelWidth2"
          >
            <el-input
              v-model="form.name"
              autocomplete="off"
            ></el-input>
          </el-form-item>
          <div class="selecr">
            <el-form-item
              label=" 区域类型"
              :label-width="formLabelWidth2"
            >
              <el-select
                @change="changest"
                v-model="loadval"
                placeholder="请选择"
              >
                <el-option
                  v-for="item in loadlist"
                  :key="item.value"
                  :label="item.name"
                  :value="item.value"
                >
                </el-option>
              </el-select>
            </el-form-item>
            <div v-if="loadval=='0'">
              <el-form-item
                label="顶点1"
                :label-width="formLabelWidth2"
              >
                <el-input
                  v-model="form.name"
                  autocomplete="off"
                ></el-input>
              </el-form-item>
              <el-form-item
                label="顶点2"
                :label-width="formLabelWidth2"
              >
                <el-input
                  v-model="form.name"
                  autocomplete="off"
                ></el-input>
              </el-form-item>
            </div>
            <div v-if="loadval=='1'">
              <el-form-item
                label="球心"
                :label-width="formLabelWidth2"
              >
                <el-input
                  v-model="form.name"
                  autocomplete="off"
                ></el-input>
              </el-form-item>
              <el-form-item
                label="半径"
                :label-width="formLabelWidth2"
              >
                <el-input
                  v-model="form.name"
                  autocomplete="off"
                ></el-input>
              </el-form-item>
            </div>
            <div v-if="loadval=='2'">
              <el-form-item
                label="球心"
                :label-width="formLabelWidth2"
              >
                <el-input
                  v-model="form.name"
                  autocomplete="off"
                ></el-input>
              </el-form-item>
              <el-form-item
                label="端点1"
                :label-width="formLabelWidth2"
              >
                <el-input
                  v-model="form.name"
                  autocomplete="off"
                ></el-input>
              </el-form-item>
              <el-form-item
                label="端点2"
                :label-width="formLabelWidth2"
              >
                <el-input
                  v-model="form.name"
                  autocomplete="off"
                ></el-input>
              </el-form-item>
            </div>
            <div v-if="loadval=='2'">
              <el-form-item
                label="端点1"
                :label-width="formLabelWidth2"
              >
                <el-input
                  v-model="form.name"
                  autocomplete="off"
                ></el-input>
              </el-form-item>
              <el-form-item
                label="半径1"
                :label-width="formLabelWidth2"
              >
                <el-input
                  v-model="form.name"
                  autocomplete="off"
                ></el-input>
              </el-form-item>
              <el-form-item
                label="端点2"
                :label-width="formLabelWidth2"
              >
                <el-input
                  v-model="form.name"
                  autocomplete="off"
                ></el-input>
              </el-form-item>
              <el-form-item
                label="半径2"
                :label-width="formLabelWidth2"
              >
                <el-input
                  v-model="form.name"
                  autocomplete="off"
                ></el-input>
              </el-form-item>
            </div>
          </div>
          <div class="line">
            <div class="linetext">区域变量</div>
          </div>
          <el-form-item
            label="无量纲密度"
            :label-width="formLabelWidth7"
          >
            <el-input
              v-model="form.name"
              autocomplete="off"
            ></el-input>
          </el-form-item>
          <el-form-item
            label="无量纲声速"
            :label-width="formLabelWidth7"
          >
            <el-input
              v-model="form.name"
              autocomplete="off"
            ></el-input>
          </el-form-item>
          <el-form-item
            label="X方向无量纲速度分量"
            :label-width="formLabelWidth7"
          >
            <el-input
              v-model="form.name"
              autocomplete="off"
            ></el-input>
          </el-form-item>
          <el-form-item
            label="Y方向无量纲速度分量"
            :label-width="formLabelWidth7"
          >
            <el-input
              v-model="form.name"
              autocomplete="off"
            ></el-input>
          </el-form-item>
          <el-form-item
            label="Z方向无量纲速度分量"
            :label-width="formLabelWidth7"
          >
            <el-input
              v-model="form.name"
              autocomplete="off"
            ></el-input>
          </el-form-item>
        </div>
      </el-form>
      <div
        slot="footer"
        class="dialog-footer"
      >
        <el-button @click="dialog.initialization_visiable = false">{{ $t("HCFD.file.cancel")}} </el-button>
        <el-button
          type="primary"
          @click="hcfdparam(); dialog.initialization_visiable  = false"
        >{{ $t("HCFD.file.ok")}}</el-button>
      </div>
    </el-dialog>
    <!-- 运行控制Run  Control -->

    <el-dialog
      :visible.sync="dialog.runc_visiable"
      :close-on-click-modal="false"
      @close='activecleer()'
      v-if="active=='four3-0'"
      :modal='false'
      custom-class='dialoglocation dialog_color'
      width="385px"
      v-draggable
      v-draggleft=[styX.left]
    >
      <div
        slot="title"
        class=dialog_header
      >
        <el-image
          class="imge"
          :src="q5"
          fit="cover"
        />
        <span class="text-color">{{$t('HCFD.solution.run')}}</span>
      </div>
      <el-form class="lg-form text_color">
        <el-form-item
          :label="$t('HCFD.solution.iterNum')"
          :label-width="formLabelWidth6"
        >
          <el-input
            v-model="parameterObj.nmlParam.steps"
            autocomplete="off"
          ></el-input>
        </el-form-item>
        <el-form-item
          :label="$t('HCFD.solution.stopToler')"
          :label-width="formLabelWidth6"
        >
          <el-input
            v-model="parameterObj.nmlParam.stopping_tolerance"
            autocomplete="off"
          ></el-input>
        </el-form-item>
        <el-form-item
          :label="$t('HCFD.solution.writeFreq')"
          :label-width="formLabelWidth6"
        >
          <el-input
            v-model="parameterObj.nmlParam.restart_write_freq"
            autocomplete="off"
          ></el-input>
        </el-form-item>
        <el-form-item
          :label="$t('HCFD.solution.evaluate')"
          :label-width="formLabelWidth6"
        >
          <el-input
            v-model="parameterObj.nmlParam.jacobian_eval_freq"
            autocomplete="off"
          ></el-input>
        </el-form-item>
        <el-form-item
          :label="$t('HCFD.solution.Restart')"
          :label-width="formLabelWidth6"
          class="iemradio"
        >
          <el-radio-group
            class="inpw35"
            v-model="parameterObj.nmlParam.restart_read"
          >
            <el-radio label="off">Off</el-radio>
            <el-radio label="on"  class="radiooff">On</el-radio>
          </el-radio-group>
        </el-form-item>
        <!-- <el-button type="info"  @click="hcfdparam()"> 运行</el-button> -->
      </el-form>
      <div
        slot="footer"
        class="dialog-footer"
      >
        <el-button @click="runcvisiable()"> {{ $t("HCFD.file.cancel")}} </el-button>
        <el-button
          type="primary"
          @click="Runsolve()"
        >{{ $t("HCFD.file.ok")}}</el-button>
      </div>
    </el-dialog>
    <!-- 物面输出 -->
    <el-dialog
      :visible.sync="dialog.boundaryo_visiable"
      :close-on-click-modal="false"
      @close='activecleer()'
      class="Conditions lg-out-h"
      v-if="active=='four3-1'"
      :modal='false'
      custom-class='dialoglocation dialog_color'
      width="385px"
      v-draggable
      v-draggleft=[styX.left]
    >
      <div
        slot="title"
        class=dialog_header
      >
        <el-image
          class="imge"
          :src="q6"
          fit="cover"
        />
        <span class="text-color">{{$t('HCFD.solution.bounOut')}}</span>
      </div>
      <el-form>
        <div class="selecr">
          <el-form-item
            label=" 特征"
            :label-width="formLabelWidth2"
          >
            <el-select
              @change="changest"
              v-model="objectplaneval"
              placeholder="请选择"
            >
              <el-option
                v-for="item in objectplanelist"
                :key="item.value"
                :label="item.name"
                :value="item.value"
              >
              </el-option>
            </el-select>
          </el-form-item>
        </div>
        <div v-if="objectplaneval=='0'">
          <el-form-item
            :label=" $t('HCFD.solution.outputfreq')"
            :label-width="formLabelWidth2"
          >
            <el-input
              v-model="parameterObj.nmlParam.animation_freq"
              autocomplete="off"
            ></el-input>
          </el-form-item>
        </div>
        <div v-else>
          <el-form-item
            :label=" $t('HCFD.solution.outputfreq')"
            :label-width="formLabelWidth2"
          >
            <el-input
              v-model="parameterObj.nmlParam.volume_animation_freq"
              autocomplete="off"
            ></el-input>
          </el-form-item>
        </div>
        <div class="line">
          <div class="linetext">{{ $t("HCFD.solution.Variables")}}</div>
        </div>
        <div v-if="objectplaneval=='0'">
          <el-checkbox
            :indeterminate="Solution.boundaryout.isIndeterminate"
            v-model="Solution.boundaryout.checkAll"
            @change="solutionbCheckAllChange"
          >{{ $t("HCFD.solution.all")}}</el-checkbox>
          <div class="displanblock">
            <el-checkbox v-model="parameterObj.nmlParam.a_u">
              {{ $t("HCFD.solution.Xcomponent")}}</el-checkbox>
            <el-checkbox v-model="parameterObj.nmlParam.a_v">{{ $t("HCFD.solution.Ycomponent")}}</el-checkbox>
            <el-checkbox v-model="parameterObj.nmlParam.a_w">{{ $t("HCFD.solution.Zcomponent")}}</el-checkbox>
            <el-checkbox v-model="parameterObj.nmlParam.a_p">{{ $t("HCFD.solution.Press")}}</el-checkbox>
            <el-checkbox v-model="parameterObj.nmlParam.a_cp">{{ $t("HCFD.solution.presscoefficient")}}</el-checkbox>
            <el-checkbox v-model="parameterObj.nmlParam.a_mach">{{ $t("HCFD.solution.mnumber")}}</el-checkbox>
            <el-checkbox v-model="parameterObj.nmlParam.a_vort_mag">{{ $t("HCFD.solution.magnitude")}}</el-checkbox>
            <el-checkbox v-model="parameterObj.nmlParam.a_vort_x ">{{ $t("HCFD.solution.Xvorticity")}}</el-checkbox>
            <el-checkbox v-model="parameterObj.nmlParam.a_vort_y">{{ $t("HCFD.solution.Yvorticity")}}</el-checkbox>
            <el-checkbox v-model="parameterObj.nmlParam.a_vort_z ">{{ $t("HCFD.solution.Zvorticity")}}</el-checkbox>
            <el-checkbox v-model="parameterObj.nmlParam.a_q_criterion">{{ $t("HCFD.solution.Criterion")}}</el-checkbox>
          </div>
        </div>
        <div v-else>
          <el-checkbox
            :indeterminate="Solution.volumout.isIndeterminate"
            v-model="Solution.volumout.checkAll"
            @change="solutionvCheckAllChange"
          >{{ $t("HCFD.solution.all")}}</el-checkbox>
          <div class="displanblock">
            <el-checkbox v-model="parameterObj.nmlParam.v_u">{{ $t("HCFD.solution.Xcomponent")}}</el-checkbox>
            <el-checkbox v-model="parameterObj.nmlParam.v_v ">{{ $t("HCFD.solution.Ycomponent")}}</el-checkbox>
            <el-checkbox v-model="parameterObj.nmlParam.v_w">{{ $t("HCFD.solution.Zcomponent")}}</el-checkbox>
            <el-checkbox v-model="parameterObj.nmlParam.v_p ">{{ $t("HCFD.solution.Press")}}</el-checkbox>
            <el-checkbox v-model="parameterObj.nmlParam.v_cp">{{ $t("HCFD.solution.presscoefficient")}}</el-checkbox>
            <el-checkbox v-model="parameterObj.nmlParam.v_mach">{{ $t("HCFD.solution.mnumber")}}</el-checkbox>
            <el-checkbox v-model="parameterObj.nmlParam.v_vort_mag">{{ $t("HCFD.solution.magnitude")}}</el-checkbox>
            <el-checkbox v-model="parameterObj.nmlParam.v_vort_x ">{{ $t("HCFD.solution.Xvorticity")}}</el-checkbox>
            <el-checkbox v-model="parameterObj.nmlParam.v_vort_y">{{ $t("HCFD.solution.Yvorticity")}}</el-checkbox>
            <el-checkbox v-model="parameterObj.nmlParam.v_vort_z ">{{ $t("HCFD.solution.Zvorticity")}}</el-checkbox>
            <el-checkbox v-model="parameterObj.nmlParam.v_q_criterion">{{ $t("HCFD.solution.Criterion")}}</el-checkbox>
          </div>
        </div>
      </el-form>
      <div
        slot="footer"
        class="dialog-footer"
      >
        <el-button @click="referencevisiable(dialog.boundaryo_visiable = false)">{{ $t("HCFD.file.cancel")}} </el-button>
        <el-button
          type="primary"
          @click="hcfdparam(); dialog.boundaryo_visiable = false"
        >{{ $t("HCFD.file.ok")}}</el-button>
      </div>
    </el-dialog>
    <!-- 流场输出 -->
    <el-dialog
      class="lg-y-z"
      :title="$t('HCFD.solution.specialPara')"
      :visible.sync="dialog.specialp_visiable"
      :close-on-click-modal="false"
      @close='activecleer()'
      v-if="active=='four4-0'"
      :modal='false'
      custom-class='dialoglocation dialog_color'
      width="385px"
      v-draggable
      v-draggleft=[styX.left]
    >
      <el-form>
        <el-radio-group v-model="parameterObj.nmlParam.large_angle_fix">
          <el-radio label="off">Off</el-radio>
          <el-radio label="on">On</el-radio>
        </el-radio-group>
      </el-form>
      <div
        slot="footer"
        class="dialog-footer"
      >
        <el-button @click="referencevisiable((dialog.specialp_visiable = false))">{{ $t("HCFD.file.cancel")}} </el-button>
        <el-button
          type="primary"
          @click="dialog.specialp_visiable = false"
        >{{ $t("HCFD.file.ok")}}</el-button>
      </div>
    </el-dialog>
    <el-dialog
      title="Swap Y-Z Axres"
      :visible.sync="dialog.swap_visiable"
      class="lg-y-z"
      :close-on-click-modal="false"
      @close='activecleer()'
      v-if="active=='four4-1'"
      :modal='false'
      custom-class='dialoglocation dialog_color'
      width="385px"
       
      v-draggable
      v-draggleft=[styX.left]
    >
      <el-form>
        <el-radio-group v-model="parameterObj.nmlParam.swap_yz_axes">
          <el-radio label="false">Off</el-radio>
          <el-radio label="true">On</el-radio>
        </el-radio-group>
      </el-form>
      <div
        slot="footer"
        class="dialog-footer"
      >
        <el-button @click="referencevisiable((dialog.swap_visiable = false))"> {{ $t("HCFD.file.cancel")}} </el-button>
        <el-button
          type="primary"
          @click="dialog.swap_visiable = false"
        >{{ $t("HCFD.file.ok")}}</el-button>
      </div>
    </el-dialog>
    <!-- 资源选择 -->
    <el-dialog
      :close-on-click-modal="false"
      @close='activecleer()'
      :title="$t('HCFD.solution.Resource')"
      :visible.sync="dialog.ziyuan"
      width="45%"
      class="dialog"
      custom-class='dialog_color'
    >
      <el-form>
        <el-table
          :data="ziyprojects"
          border
          :row-key="getRowKeys"
          height="250"
          row-class-name='table-color'
          ref="multipleTable"
          @selection-change="ziySelectionChange"
          @select="ziySelectionSelect"
          size="mini"
          :fit="true"
        >
          <el-table-column
            type="selection"
            label="选择"
            :reserve-selection="true"
          />
          <el-table-column
            property="id"
            label="ID"
          />
          <el-table-column
            property="resIp"
            label="资源内网IP"
          />
          <el-table-column
            property="resShortname"
            label="资源简称"
          />
        </el-table>
      </el-form>
      <div class="pagination">
        <Pagination
          :pagination-config="paginationConfig"
          @putPagination="getPagination"
        ></Pagination>
      </div>
      <div
        slot="footer"
        class="dialog-footer"
      >
        <el-button @click="dialog.ziyuan = false"> {{ $t("HCFD.file.cancel")}} </el-button>
        <el-button
          type="primary"
          @click='resourceOK()'
        >{{ $t("HCFD.file.ok")}} </el-button>
      </div>
    </el-dialog>
    <!-- 表面网格 -->
    <el-dialog
      :visible.sync="dialog.SurfaceGrid_visiable"
      class="lg-y-z"
      :close-on-click-modal="false"
      :modal-append-to-body="false"
      :append-to-body="false"
      @close='activecleer()'
      v-if="active=='five-0'"
      :modal='false'
      custom-class='dialoglocation dialog_color'
      width="385px"
       
      v-draggable
      v-draggleft=[styX.left]
    >
      <div
        slot="title"
        class=dialog_header
      >
        <el-image
          class="imge"
          :src="j1"
          fit="cover"
        />
        <span class="text-color">{{$t('HCFD.results.Surfacegrid')}}</span>
      </div>

      <div class="flexpad30">
        <div class="selecr">
          <el-form>
            <el-form-item
              :label="$t('HCFD.results.steps') "
              :label-width="formLabelWidth2"
            >
              <el-select
                size="mini"
                v-model="bStep"
                @change="bStepChange"
                placeholder="请选择"
              >
                <el-option
                  v-for="setep in boundaryStep"
                  :key="setep"
                  :label="setep"
                  :value="setep"
                >
                </el-option>
              </el-select>
            </el-form-item>
          </el-form>
        </div>
      </div>
      <div
        slot="footer"
        class="dialog-footer"
      >
        <el-button @click="dialog.SurfaceGrid_visiable = false">{{ $t("HCFD.file.cancel")}} </el-button>
        <el-button
          type="primary"
          @click="bStepok('ResultImport','','');dialog.SurfaceGrid_visiable = false"
        >{{ $t("HCFD.file.ok")}}</el-button>
      </div>
    </el-dialog>
    <!-- 流场数据 -->
    <el-dialog
      :visible.sync="dialog.VolumeGrid_visiable"
      class="lg-y-z"
      :close-on-click-modal="false"
      @close='activecleer()'
      v-if="active=='five-1'"
      :modal='false'
      custom-class='dialoglocation dialog_color'
      width="385px"
      v-draggable
      v-draggleft=[styX.left]
    >
      <div
        slot="title"
        class=dialog_header
      >
        <el-image
          class="imge"
          :src="j2"
          fit="cover"
        />
        <span class="text-color">{{$t('HCFD.results.volume')}}</span>
      </div>
      <div class="selecr">
        <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
                v-for="setep in volumStep"
                :key="setep"
                :label="setep"
                :value="setep"
              >
              </el-option>
            </el-select>
          </el-form-item>
          <!-- <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"
                            :key="scalar"
                            :label="scalar"
                            :value="scalar"
                          >
                          </el-option>
                        </el-select>
                </el-form-item> -->

          <!-- <div>
                    <li class="disflex lheig34 liitem">
                      <span class="span100 marb5 formLabelWidth15">{{ $t("HCFD.results.vector")}} </span>
                      <el-checkbox checked>Velocity</el-checkbox>
                    </li>
                         <el-form-item :label=" $t('HCFD.results.contour')" :label-width="formLabelWidth2">
                       <el-input-number v-model="Volumenum" @change="VolumenumChange" :min="1" :max="10" label="描述文字"></el-input-number>
                    </el-form-item>
                    <li class="disflex lheig34 liitem">
                      <span class="span100 marb5 formLabelWidth15">{{ $t("HCFD.results.show")}}</span>
                      <el-checkbox-group v-model="velementCheckeds" style="display:flex">
                        <el-checkbox
                          label="Mesh"
                          @change="ContourvalVolume('Mesh')"
                        ></el-checkbox>
                        <el-checkbox
                          label="Contour"
                          @change="ContourvalVolume('Contour')"
                        ></el-checkbox>
                      </el-checkbox-group>
                    </li>   
                  </div> -->

          <!-- <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="dialog.VolumeGrid_visiable = false">{{ $t("HCFD.file.cancel")}}</el-button>
        <el-button
          type="primary"
          @click="bStepok('ResultImport','',''); dialog.VolumeGrid_visiable = false"
        >{{ $t("HCFD.file.ok")}}</el-button>
      </div>
    </el-dialog>
    <!--轮廓显示  Contour Displsy-->
    <el-dialog
      :visible.sync="dialog.contour_visiable"
      v-if="active=='five7-0'"
      :modal='false'
      :close-on-click-modal="false"
      @close='activecleer()'
      custom-class='dialoglocation dialog_color'
      width="385px"
      v-draggable
      v-draggleft=[styX.left]
    >
      <div
        slot="title"
        class=dialog_header
      >
        <el-image
          class="imge"
          :src="p3"
          fit="cover"
        />
        <span class="text-color">轮廓显示</span>
      </div>
      <el-form>
        <div class="line">
          <div class="linetext">轮廓</div>
        </div>
        <div class="Squareline  selecr">
          <el-form-item
            label="名称"
            :label-width="formLabelWidth2"
          >
            <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>
          </el-form-item>
          <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 outlineobj.bmScalars"
                :key="scalar"
                :label="scalar"
                :value="scalar"
              >
              </el-option>
            </el-select>
          </el-form-item>
        </div>
        <div class="line">
          <div class="linetext"> 标量集</div>
        </div>
        <el-form-item
          label="level"
          :label-width="formLabelWidth2"
        >
          <el-input
            v-model="outlineobj.level"
            autocomplete="off"
          ></el-input>
        </el-form-item>
        <!--     @change="ContourvalVolume('Mesh')"   @change="ContourvalVolume('Contour')" -->
        <!-- <div class="disflex lheig34 liitem">
                      <el-checkbox-group v-model="velementCheckeds" style="display:flex">
                        <el-checkbox
                          label="Horizontal"
                      
                        ></el-checkbox>
                        <el-checkbox
                          label="Velocity"
                
                        ></el-checkbox>
                      </el-checkbox-group>
                    </div>   -->
        <div class="line">
          <div class="linetext"> 范围</div>
        </div>
        <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
            v-model="outlineobj.range0"
            autocomplete="off"
          ></el-input>
        </el-form-item>
      </el-form>
      <div
        slot="footer"
        class="dialog-footer"
      >
        <el-button @click="dialog.contour_visiable= false">{{ $t("HCFD.file.cancel")}}</el-button>
        <el-button
          type="primary"
          @click="changeblur();dialog.contour_visiable = false"
        >{{ $t("HCFD.file.ok")}}</el-button>
      </div>
    </el-dialog>
    <!--线条显示 Line Displsy-->
    <el-dialog
      :visible.sync="dialog.Line_visiable"
      v-if="active=='five7-1'"
      :modal='false'
      :close-on-click-modal="false"
      @close='activecleer()'
      custom-class='dialoglocation dialog_color'
      width="385px"
      v-draggable
      v-draggleft=[styX.left]
    >
      <div
        slot="title"
        class=dialog_header
      >
        <el-image
          class="imge"
          :src="p9"
          fit="cover"
        />
        <span class="text-color">线显示</span>
      </div>
      <el-form>
        <div class="line">
          <div class="linetext">线</div>
        </div>
        <div class="Squareline  selecr">
          <el-form-item
            label="名称"
            :label-width="formLabelWidth2"
          >
            <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>
          </el-form-item>
          <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 outlineobj.bmScalars"
                :key="scalar"
                :label="scalar"
                :value="scalar"
              >
              </el-option>
            </el-select>
          </el-form-item>
        </div>
        <div class="line">
          <div class="linetext"> 标量集</div>
        </div>
        <el-form-item
          label="level"
          :label-width="formLabelWidth2"
        >
          <el-input
            v-model="outlineobj.level"
            autocomplete="off"
          ></el-input>
        </el-form-item>
        <div class="line">
          <div class="linetext"> 范围</div>
        </div>
        <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
            v-model="outlineobj.range0"
            autocomplete="off"
          ></el-input>
        </el-form-item>
      </el-form>
      <div
        slot="footer"
        class="dialog-footer"
      >
        <el-button @click="dialog.Line_visiable= false">{{ $t("HCFD.file.cancel")}}</el-button>
        <el-button
          type="primary"
          @click="vchangeblur(); dialog.Line_visiable = false"
        >{{ $t("HCFD.file.ok")}}</el-button>
      </div>
    </el-dialog>
    <!--Vector 矢量  -->
    <el-dialog
      :visible.sync="dialog.Vector_visiable"
      v-if="active=='five7-2'"
      :modal='false'
      :close-on-click-modal="false"
      @close='activecleer()'
      custom-class='dialoglocation dialog_color'
      width="385px"
      v-draggable
      v-draggleft=[styX.left]
    >
      <div
        slot="title"
        class=dialog_header
      >
        <el-image
          class="imge"
          :src="p4"
          fit="cover"
        />
        <span class="text-color">矢量</span>
      </div>
      <el-form>
        <div class="line">
          <div class="linetext">矢量</div>
        </div>
        <div class="Squareline  selecr">
          <el-form-item
            label="u"
            :label-width="formLabelWidth2"
          >
            <el-select
              size="mini"
              v-model="vectorobj.dataU"
              placeholder="select boundary"
            >
              <el-option
                v-for="scalar in vectorobj.dataUarr"
                :key="scalar"
                :label="scalar"
                :value="scalar"
              >
              </el-option>
            </el-select>
          </el-form-item>
          <el-form-item
            label="v"
            :label-width="formLabelWidth2"
          >
            <el-select
              size="mini"
              v-model="vectorobj.dataV"
              placeholder="select boundary"
            >
              <el-option
                v-for="scalar in vectorobj.dataVarr"
                :key="scalar"
                :label="scalar"
                :value="scalar"
              >
              </el-option>
            </el-select>
          </el-form-item>
          <el-form-item
            label="w"
            :label-width="formLabelWidth2"
          >
            <el-select
              size="mini"
              v-model="vectorobj.dataW"
              placeholder="select boundary"
            >
              <el-option
                v-for="scalar in vectorobj.dataWarr"
                :key="scalar"
                :label="scalar"
                :value="scalar"
              >
              </el-option>
            </el-select>
          </el-form-item>
        </div>
        <div class="line">
          <div class="linetext"> 参数设置</div>
        </div>
        <el-form-item
          label="标度因子"
          :label-width="formLabelWidth2"
        >
          <el-input
            v-model="vectorobj.scaleFactor"
            autocomplete="off"
          ></el-input>
        </el-form-item>

      </el-form>
      <div
        slot="footer"
        class="dialog-footer"
      >
        <el-button @click="dialog.Vector_visiable= false">{{ $t("HCFD.file.cancel")}}</el-button>
        <el-button
          type="primary"
          @click="vectorOK(); dialog.Vector_visiable = false"
        >{{ $t("HCFD.file.ok")}}</el-button>
        <!-- <el-button type="primary" @click="dialog.Vector_visiable = false"
          >Apply</el-button
        > -->
      </div>
    </el-dialog>
    <!--Solid Surface实体表面 -->
    <el-dialog
      :visible.sync="dialog.Solid_Surface"
      v-if="active=='five8-0'"
      :modal='false'
      :close-on-click-modal="false"
      @close='activecleer()'
      custom-class='dialoglocation dialog_color'
      width="385px"
      v-draggable
      v-draggleft=[styX.left]
    >
      <div
        slot="title"
        class=dialog_header
      >
        <el-image
          class="imge"
          :src="p14"
          fit="cover"
        />
        <span class="text-color">实体表面</span>
      </div>
      <el-form :model="form">
        <div class="heigeinput">
          <el-form-item label="颜色">
            <div class="saninput titleinput"> R
              <el-input
                v-model="colorobj.R"
                autocomplete="off"
              ></el-input>G
              <el-input
                v-model="colorobj.G"
                autocomplete="off"
              ></el-input>B
              <el-input
                v-model="colorobj.B"
                autocomplete="off"
              ></el-input>
              <el-color-picker
                v-model="lineColor"
                show-alpha
                @change="colorchange()"
                :predefine="predefineColors"
              >
              </el-color-picker>
            </div>
          </el-form-item>
          <div class="yiinpu heigeinput">
            <el-form-item
              label="透明度"
              :label-width="formLabelWidth2"
            >
              <el-input
                v-model="colorobj.transparency"
                autocomplete="off"
              ></el-input>
              <span style="width:80px">值范围0~1</span>
            </el-form-item>
          </div>
          <div class="radio_text text_color liangf">
            <div
              class="classfelx"
              style="text-align: center;"
            >
              <el-radio
                v-model="colorobj.showHideState"
                label="0"
              >hide</el-radio>
            </div>
            <div class="classfelx">
              <el-radio
                v-model="colorobj.showHideState"
                label="1"
              >show</el-radio>
            </div>
          </div>
        </div>
      </el-form>
      <div
        slot="footer"
        class="dialog-footer"
      >
        <el-button @click="dialog.Solid_Surface= false">{{ $t("HCFD.file.cancel")}}</el-button>
        <el-button
          type="primary"
          @click="colorsolid();dialog.Solid_Surface= false "
        >{{ $t("HCFD.file.ok")}}</el-button>
        <!-- <el-button type="primary" @click="dialog.Solid_Surface = false"
          >Apply</el-button
        > -->
      </div>
    </el-dialog>
    <!--Slice片 -->
    <el-dialog
      :visible.sync="dialog.Slice_Surface"
      v-if="active=='five8-1'"
      :modal='false'
      :close-on-click-modal="false"
      @close='activecleer()'
      custom-class='dialoglocation dialog_color'
      width="385px"
      v-draggable
      v-draggleft=[styX.left]
    >
      <div
        slot="title"
        class=dialog_header
      >
        <el-image
          class="imge"
          :src="p15"
          fit="cover"
        />
        <span class="text-color">切片</span>
      </div>
      <el-form :model="form">
        <div class="heigeinput">
          <div class="listbtn">
            <el-button
              plain
              class="anniu"
              @click="addTab(editableTabsValue) "
            >添加</el-button>
            <el-button
              plain
              class="anniu"
              @click="updata()"
            >updata</el-button>
            <el-button
              plain
              class="anniu"
              @click="removeclear(editableTabsValue)"
            >清除</el-button>
          </div>
          <el-tabs
            v-model="editableTabsValue"
            type="card"
            closable
            @tab-remove="removeTab"
            @tab-click="handletabclick"
          >
            <el-tab-pane
              v-for="ruleForm in editableTabs"
              :key="ruleForm.index"
              :label="ruleForm.index"
              :name="ruleForm.index"
            >
              <!-- {{item.content}}:is=item.content   -->
              <Addtabs
                ref="addtabs"
                :variableNamearr1="variableNamearr"
                :ruleForm="ruleForm"
              ></Addtabs>
            </el-tab-pane>
          </el-tabs>

        </div>
      </el-form>
      <div
        slot="footer"
        class="dialog-footer"
      >
        <el-button @click="dialog.Slice_Surface= false">{{ $t("HCFD.file.cancel")}}</el-button>
        <el-button
          type="primary"
          @click=" liceOK();"
        >{{ $t("HCFD.file.ok")}}</el-button>
        <el-button
          type="primary"
          @click="dialog.Slice_Surface = false"
        >Apply</el-button>
      </div>
    </el-dialog>
    <!-- Stream流线 -->
    <el-dialog
      :visible.sync="dialog.Stream_Surface"
      v-if="active=='five8-2'"
      :modal='false'
      :close-on-click-modal="false"
      @close='activecleer()'
      custom-class='dialoglocation dialog_color'
      width="385px"
      v-draggable
      v-draggleft=[styX.left]
    >
      <div
        slot="title"
        class=dialog_header
      >
        <el-image
          class="imge"
          :src="p16"
          fit="cover"
        />
        <span class="text-color">流线</span>
      </div>
      <el-form :model="form">
        <div class="heigeinput">
          <div class='selecttype'>
            <span class="texttype">流线</span>
            <div class='selecttype'>
              <span class="texttype">矢量</span>
              <div class="selecr">
                <el-form-item
                  label="u"
                  :label-width="formLabelWidth4"
                >
                  <el-select
                    size="mini"
                    v-model="streamobj.dataU"
                    placeholder="select boundary"
                  >
                    <el-option
                      v-for="scalar in streamobj.dataUarr"
                      :key="scalar"
                      :label="scalar"
                      :value="scalar"
                    >
                    </el-option>
                  </el-select>
                </el-form-item>
                <el-form-item
                  label="v"
                  :label-width="formLabelWidth4"
                >
                  <el-select
                    size="mini"
                    v-model="streamobj.dataV"
                    placeholder="select boundary"
                  >
                    <el-option
                      v-for="scalar in streamobj.dataVarr"
                      :key="scalar"
                      :label="scalar"
                      :value="scalar"
                    >
                    </el-option>
                  </el-select>
                </el-form-item>
                <el-form-item
                  label="w"
                  :label-width="formLabelWidth4"
                >
                  <el-select
                    size="mini"
                    v-model="streamobj.dataW"
                    placeholder="select boundary"
                  >
                    <el-option
                      v-for="scalar in streamobj.dataWarr"
                      :key="scalar"
                      :label="scalar"
                      :value="scalar"
                    >
                    </el-option>
                  </el-select>
                </el-form-item>
              </div>
              <div class="listbtn">
                <el-button
                  plain
                  class="anniu"
                  @click="CreateStream()"
                >创建</el-button>
              </div>
            </div>
            <div class='selecttype'>
              <span class="texttype">seed</span>
              <div class="listbtn"> <el-button
                  plain
                  class="anniu"
                >选择</el-button></div>
              <div class="listbtn"> <el-button
                  plain
                  class="anniu"
                >删除最后一个</el-button></div>
              <div class="listbtn"> <el-button
                  plain
                  class="anniu"
                >删除全部</el-button></div>
            </div>
            <div class="selecr">
              <div class="line">
                <div class="linetext"> 方向</div>
              </div>
              <el-form-item
                label="方向"
                :label-width="formLabelWidth5"
              >
                <el-select
                  size="mini"
                  v-model="streamres.direction"
                  placeholder="select boundary"
                >
                  <el-option
                    v-for="scalar in directionlist"
                    :key="scalar"
                    :label="scalar"
                    :value="scalar"
                  >
                  </el-option>
                </el-select>
              </el-form-item>
              <div class="line">
                <div class="linetext"> 样式</div>
              </div>
              <el-form-item
                label="StreamStyle"
                :label-width="formLabelWidth5"
              >
                <el-select
                  size="mini"
                  v-model="streamres.streamstyle"
                  placeholder="select boundary"
                >
                  <el-option
                    v-for="scalar in streamstylelist"
                    :key="scalar"
                    :label="scalar"
                    :value="scalar"
                  >
                  </el-option>
                </el-select>
              </el-form-item>
              <div class="line">
                <div class="linetext"> intergration</div>
              </div>
              <el-form-item
                label="InitialStep"
                :label-width="formLabelWidth6"
              >
                <el-input
                  v-model="streamres.initialstep"
                  autocomplete="off"
                ></el-input>
              </el-form-item>
              <el-form-item
                label="MaxPropagation"
                :label-width="formLabelWidth6"
              >
                <el-input
                  v-model="streamres.maxpropagation"
                  autocomplete="off"
                ></el-input>
              </el-form-item>
              <el-form-item
                label="MinimumStep"
                :label-width="formLabelWidth6"
              >
                <el-input
                  v-model="streamres.minimumstep"
                  autocomplete="off"
                ></el-input>
              </el-form-item>
              <div class="radio_text text_color liangf">
                <div
                  class="classfelx"
                  style="text-align: center;"
                >
                  <el-checkbox
                    v-model="streamres.showstate"
                    label="show"
                  ></el-checkbox>

                </div>
                <div class="classfelx">
                  <el-checkbox
                    v-model="streamres.toolstate"
                    label="tool"
                  ></el-checkbox>

                </div>
              </div>
            </div>
          </div>

        </div>
      </el-form>
      <div
        slot="footer"
        class="dialog-footer"
      >
        <el-button @click="dialog.Stream_Surface= false">{{ $t("HCFD.file.cancel")}}</el-button>
        <el-button
          type="primary"
          @click="streamOK();dialog.Stream_Surface= false"
        >{{ $t("HCFD.file.ok")}}</el-button>

      </div>
    </el-dialog>
    <!-- an_Animation -->
    <el-dialog
      :visible.sync="dialog.an_Animation"
      :modal='false'
      :close-on-click-modal="false"
      custom-class='dialoglocation dialog_color'
      width="385px"
      v-draggable
      v-draggleft=[styX.left]
    >
      <div
        slot="title"
        class=dialog_header
      >
        <el-image
          class="imge"
          :src="p17"
          fit="cover"
        />
        <span class="text-color">动画</span>
      </div>
      <el-form :model="form">
        <div class="heigeinput">
          <div class="selecttype">
            <span class="texttype">动画</span>

            <el-form>
              <el-form-item
                :label="$t('HCFD.results.steps') "
                :label-width="formLabelWidth2"
              >
                <el-select
                  size="mini"
                  v-model="animaval"
                  @change="animationclick"
                  placeholder="请选择"
                  style="width:100%"
                >
                  <el-option
                    v-for="setep in classlist"
                    :key="setep.val"
                    :label="setep.titlie"
                    :value="setep.val"
                  >
                  </el-option>
                </el-select>
              </el-form-item>
            </el-form>
            <div class='selecttype'>
              <span class="texttype">zoom</span>
              <ul style="padding:0">
                <li>
                  <el-checkbox-group v-model="checkList">
                    <el-checkbox
                      v-for="(item,key) in animationobj.zoomarr"
                      @change="zoomList(item,key)"
                      :key="key"
                      :label="item"
                    >{{item}}</el-checkbox>
                  </el-checkbox-group>

                </li>
              </ul>
            </div>
            <div class="yiinpu loadclass">
              <el-button
                plain
                class="anniu"
                @click="loadonclick()"
              >Load</el-button>
              <el-progress
                :percentage="percentage"
                v-if="!isNaN(parseInt(percentage))"
                :stroke-width="5"
              ></el-progress>
            </div>
          </div>
          <div class="line">
            <div class="linetext">通用场景</div>
          </div>
          <el-form-item
            label="第一步"
            :label-width="formLabelWidth2"
          >
            <el-input
              v-model="animationobj.firststep"
              autocomplete="off"
            ></el-input>
          </el-form-item>
          <el-form-item
            label="最后一步"
            :label-width="formLabelWidth2"
          >
            <el-input
              v-model="animationobj.laststep"
              autocomplete="off"
            ></el-input>
          </el-form-item>
          <el-form-item
            label="当前步"
            :label-width="formLabelWidth2"
          >
            <el-input
              v-model="animationobj.currentstep"
              autocomplete="off"
            ></el-input>
          </el-form-item>
          <!-- <animation  :animationobj='animationobj'  :solverConfigid="solverConfigid"  :action="animaval"></animation> -->
          <div
            class="block1"
            style="dispaly:flex"
          >
            <div class="listbtn">
              <el-button
                plain
                class="anniu"
                @click="lowclick()"
              >low</el-button>
              <el-slider
                :max='Number(animationobj.laststep)'
                :min="Number(animationobj.firststep)"
                :step="median"
                v-model.number="value1"
                @change="sliderchange"
                style="width:50%;margin: 0 10px 0 15px;"
              ></el-slider>
              <el-button
                plain
                class="anniu"
                @click="Quickclick()"
              >Quick</el-button>
            </div>

            <div class="listbtn anbtn">
              <el-button
                plain
                class="anniu"
                @click="Startclick()"
              >Start</el-button>
              <el-button
                plain
                class="anniu"
                @click="Lastclick();signnum=false;"
              >Last</el-button>
              <el-button
                plain
                class="anniu"
                @click="Playstop()"
              >Play/stop</el-button>
              <el-button
                plain
                class="anniu"
                @click="Nextclick();signnum=false;"
              >Next</el-button>
              <el-button
                plain
                class="anniu"
                @click="Endclick();signnum=false;"
              >End</el-button>
            </div>
          </div>
          <!-- <div class="timeanmiantion">
        <ul>
        <li>Time<span>1</span></li>
        <li style="flex:2;">
             <el-form-item label="FileType" :label-width="formLabelWidth2">
      <el-select    v-model="fileTypeval" disabled  placeholder="请选择">
    <el-option
      v-for="item in fileTypeli"
      :key="item.value"
      :label="item.name"
      :value="item.value"
      >
    </el-option>
  </el-select>
 </el-form-item>
        </li>
   
        </ul>
      </div> -->

        </div>
      </el-form>
      <div
        slot="footer"
        class="dialog-footer"
      >
        <el-button @click="dialog.an_Animation= false">{{ $t("HCFD.file.cancel")}}</el-button>
        <el-button
          type="primary"
          @click="dialog.an_Animation= false"
        >{{ $t("HCFD.file.ok")}}</el-button>
        <!-- <el-button type="primary" @click="dialog.an_Animation = false"
          >Apply</el-button
        > -->
      </div>
    </el-dialog>

    <!--Curve Select曲线选择 -->
    <el-dialog
      :visible.sync="dialog.Curve_Select"
      v-if="active=='five10-0'"
      :modal='false'
      :close-on-click-modal="false"
      @close='activecleer()'
      custom-class='dialoglocation dialog_color'
      width="385px"
      v-draggable
      v-draggleft=[styX.left]
    >
      <div
        slot="title"
        class=dialog_header
      >
        <el-image
          class="imge"
          :src="p9"
          fit="cover"
        />
        <span class="text-color"> 选择</span>
      </div>
      <el-form :model="form">
        <div class="heigeinput selecr">
          <div class="line">
            <div class="linetext">结果曲线</div>
          </div>
          <el-form-item
            label="选择区域"
            :label-width="formLabelWidth2"
          >
            <el-select
              size="mini"
              v-model="vSalar"
              placeholder="select boundary"
            >
              <el-option
                v-for="scalar in volumScalars"
                :key="scalar"
                :label="scalar"
                :value="scalar"
              >
              </el-option>
            </el-select>
          </el-form-item>
          <div class="line">
            <div class="linetext">类型</div>
          </div>
          <div class="listbtn">
            <el-button
              plain
              class="anniu"
            >点</el-button>
            <el-button
              plain
              class="anniu"
            >Cells</el-button>
          </div>
          <el-form-item
            label="标量名称"
            :label-width="formLabelWidth2"
          >
            <el-select
              size="mini"
              v-model="vSalar"
              placeholder="select boundary"
            >
              <el-option
                v-for="scalar in volumScalars"
                :key="scalar"
                :label="scalar"
                :value="scalar"
              >
              </el-option>
            </el-select>
          </el-form-item>
          <div class="listbtn">
            <el-button
              plain
              class="anniu"
            >清除</el-button>
            <el-button
              plain
              class="anniu"
            >输出量</el-button>
          </div>
        </div>
      </el-form>
      <div
        slot="footer"
        class="dialog-footer"
      >
        <el-button @click="dialog.Curve_Select= false">{{ $t("HCFD.file.cancel")}}</el-button>
        <el-button
          type="primary"
          @click="dialog.Curve_Select= false"
        >{{ $t("HCFD.file.ok")}}</el-button>
        <el-button
          type="primary"
          @click="dialog.Curve_Select = false"
        >Apply</el-button>
      </div>
    </el-dialog>
    <!--Curve Disp1ay曲线
曲线选择 -->
    <!--   :modal='false'
    :close-on-click-modal="false"
    :modal-append-to-body='false'
      @close='activecleer()'
        :style="styX"
     -->
    <el-dialog
      :visible.sync="dialog.Curve_Disp1ay"
      v-if="active=='five10-1'"
      :modal='false'
      :close-on-click-modal="false"
      :modal-append-to-body='false'
      @close='activecleer()'
      v-draggable
      v-draggleft=[styX.left]
      custom-class='dialoglocation dialog_color'
      width="385px"
    >
      <div
        slot="title"
        class=dialog_header
      >
        <el-image
          class="imge"
          :src="p13"
          fit="cover"
        />
        <span class="text-color"> 选择</span>
      </div>
      <el-form :model="form">
        <div class="Squareline selecr ">
          <div class="line">
            <div class="linetext">结果曲线</div>
          </div>
        </div>
        <div class="heigeinput selecr">
          <div class='selecttype'>
            <span class="texttype">选择类型</span>
            <div class="divselect">
              <div>
                <el-radio-group
                  v-model="zobj.lineType"
                  @change="changeline()"
                >
                  <el-radio label="Point">点</el-radio>
                  <el-radio label="Line">曲线</el-radio>
                </el-radio-group>

              </div>

              <div>
                <el-form-item
                  label="点大小"
                  :label-width="formLabelWidth2"
                >
                  <el-input
                    v-model="zobj.pointvalue"
                    @blur="pointclick()"
                    autocomplete="off"
                  ></el-input>
                </el-form-item>
                <el-form-item
                  label="曲线大小"
                  :label-width="formLabelWidth2"
                >
                  <el-input
                    v-model="zobj.linevalue"
                    @blur="lineclick()"
                    autocomplete="off"
                  ></el-input>
                </el-form-item>
              </div>
            </div>
          </div>
          <div class='selecttype'>
            <span class="texttype">zoom</span>
            <div class="liangf">
              <el-form-item
                label="X_最小值"
                :label-width="formLabelWidth2"
              >
                <el-input
                  value="0"
                  autocomplete="off"
                ></el-input>
              </el-form-item>
              <el-form-item
                label="Y_最大值"
                :label-width="formLabelWidth2"
              >
                <el-input
                  value="0"
                  autocomplete="off"
                ></el-input>
              </el-form-item>
            </div>

          </div>
        </div>
      </el-form>
      <div
        slot="footer"
        class="dialog-footer"
      >
        <el-button @click="dialog.Curve_Disp1ay= false">{{ $t("HCFD.file.cancel")}}</el-button>
        <el-button
          type="primary"
          @click="lineoclick();dialog.Curve_Disp1ay= false"
        >{{ $t("HCFD.file.ok")}}</el-button>
        <el-button
          type="primary"
          @click="dialog.Curve_Disp1ay = false"
        >Apply</el-button>
      </div>
    </el-dialog>

    <!-- 单位计算开始 -->
    <el-dialog
      :visible.sync="visiable"
      v-if="active=='six-0'"
      :modal='false'
      :close-on-click-modal="false"
      @close='activecleer()'
      custom-class='dialoglocation dialog_color'
      width="385px"
      v-draggable
      v-draggleft=[styX.left]
    >
      <div
        slot="title"
        class=dialog_header
      >
        <el-image
          class="imge"
          :src="d1"
          fit="cover"
        />
        <span class="text-color">单位换算</span>
      </div>
      <el-form :model="form1">
        <el-form-item
          label="kelvin"
          :label-width="formLabelWidth1"
        >
          <el-input
            v-model="form1.kelvins"
            type="number"
            autocomplete="off"
          ></el-input>

        </el-form-item>
        <el-form-item
          label="℃"
          :label-width="formLabelWidth1"
        >
          <el-input
            v-model="form1.ssd"
            type="number"
            autocomplete="off"
          ></el-input>
        </el-form-item>
        <div>
          <el-button
            @click="dialogbtnkew"
            style="margin:10px 0 0 65px"
            size="mini"
          >摄氏度</el-button>
          <el-button
            @click="dialogbtnssd"
            size="mini"
          >开尔文</el-button>
        </div>

      </el-form>

    </el-dialog>
    <!-- Y+ Calculator -->
    <el-dialog
      :visible.sync="Yvisiable"
      :close-on-click-modal="false"
      @close='activecleer()'
      v-if="active=='six-1'"
      :modal='false'
      custom-class='dialoglocation dialog_color'
      width="385px"
      v-draggable
      v-draggleft=[styX.left]
    >
      <div
        slot="title"
        class=dialog_header
      >
        <el-image
          class="imge"
          :src="d2"
          fit="cover"
        />
        <span class="text-color">Y+值计算</span>
      </div>
      <el-form
        :model="form"
        class="gongju"
      >
        <!-- Freestream velocity流速度U∞ -->
        <el-form-item
          label="自由流速度U∞(m/s):"
          :label-width="formLabelWidth3"
        >
          <el-input
            v-model="form.u_freestream"
            autocomplete="off"
          ></el-input>
        </el-form-item>
        <!--Density 自由氣流密度ρ  -->
        <el-form-item
          label="自由氣流密度ρ(kg/m^3):"
          :label-width="formLabelWidth3"
        >
          <el-input
            v-model="form.rho"
            autocomplete="off"
          ></el-input>
        </el-form-item>

        <!-- Characteristic length 特征长度L-->
        <el-form-item
          label="特征长度L:(m):"
          :label-width="formLabelWidth3"
        >
          <el-input
            v-model="form.L"
            type="number"
            autocomplete="off"
          ></el-input>
        </el-form-item>

        <!-- Dynamic viscosity表流运动粘贴系数μ: -->
        <el-form-item
          label="表流运动粘贴系数μ(Pa·s):"
          :label-width="formLabelWidth3"
        >
          <el-input
            v-model="form.mu"
            autocomplete="off"
          ></el-input>
        </el-form-item>
        <!-- Desired Y+ value: -->
        <el-form-item
          label="Y+:"
          :label-width="formLabelWidth3"
        >
          <el-input
            v-model="form.y_plus_desired"
            type="number"
            autocomplete="off"
          ></el-input>
        </el-form-item>
        <!-- Reynolds number -->
        <h3 class="Rex">雷诺数:&nbsp;&nbsp;&nbsp;&nbsp;{{ form.Rex }}</h3>
        <!-- Estimated wall distance: -->
        <h3 class="Rex">估计墙距:&nbsp;&nbsp;&nbsp;&nbsp;{{ form.dtc }}</h3>
        <el-form-item style="margin-left: 0">
          <!-- <el-input v-model="form.lys" type="number" autocomplete="off"></el-input> -->

          <el-button
            type="primary"
            @click="dialogbtny"
            style="margin:0 0 0 55px"
          >计算</el-button>
        </el-form-item>
      </el-form>
    </el-dialog>
    <!-- r雷诺数计算 -->
    <el-dialog
      :visible.sync="llsvisiable"
      :close-on-click-modal="false"
      v-if="active=='six-2'"
      :modal='false'
      custom-class='dialoglocation dialog_color'
      width="385px"
      v-draggable
      v-draggleft=[styX.left]
    >
      <div
        slot="title"
        class=dialog_header
      >
        <el-image
          class="imge"
          :src="d3"
          fit="cover"
        />
        <span class="text-color">雷诺数计算</span>
      </div>
      <el-form
        :model="form"
        class="leiluoshu"
      >
        <el-form-item
          label="流速v(m/s):"
          :label-width="formLabelWidth3"
        >
          <el-input
            v-model="form.lls"
            autocomplete="off"
          ></el-input>
        </el-form-item>
        <el-form-item
          label="密度ρ(kg/m^3)"
          :label-width="formLabelWidth3"
        >
          <el-input
            v-model="form.lmi"
            autocomplete="off"
          ></el-input>
        </el-form-item>
        <el-form-item
          label="动力黏性系数η(Pa·s)"
          :label-width="formLabelWidth3"
        >
          <el-input
            v-model="form.ldlzxxs"
            autocomplete="off"
          ></el-input>
        </el-form-item>
        <el-form-item
          label="特征长度(内径)d(m):"
          :label-width="formLabelWidth3"
        >
          <el-input
            v-model="form.lld"
            autocomplete="off"
          ></el-input>
        </el-form-item>
        <el-form-item label="">
          <!-- <el-input v-model="form.lys" type="number" autocomplete="off"></el-input> -->
          <h3 class="Rex">雷诺数Re:{{ form.Re }}</h3>
          <el-button
            type="primary"
            style="margin:0 0 0 60px"
            @click="leinsdialogbtny"
          >计算</el-button>
        </el-form-item>
      </el-form>
    </el-dialog>
    <!-- 组件 -->
    <filesload
      ref="filesload"
      :fileurls="fileurls"
      @fileLoadeState="fileLoadeState($event)"
    ></filesload>
    <loading
      ref="loading"
      :loadObjs="loadObjs"
    ></loading>
    <!-- <hcfd-Calculator ref="Calculator"></hcfd-Calculator> -->
  </div>
</template>
<script>
// 引入组件
import geometry from "../geometry/index.vue";
import meshindex from "../meshindex/index.vue";
import t1 from "@/assets/icon/u9588.png";
import t2 from "@/assets/icon/u9616.png";
import t3 from "@/assets/icon/u9637.png";
import t4 from "@/assets/icon/u212.png";
import t5 from "@/assets/icon/u3284.png";
import w1 from "@/assets/icon/u3250.png";
import w2 from "@/assets/icon/u9700.png";
import w3 from "@/assets/icon/u9872.png";
import w4 from "@/assets/icon/u3877.png";
import w5 from "@/assets/icon/u9823.png";
import w6 from "@/assets/icon/u3742.png";
import d1 from "@/assets/icon/u10148.png";
import d2 from "@/assets/icon/u10152.png";
import d3 from "@/assets/icon/u10156.png";
import d4 from "@/assets/icon/u10160.png";
import j1 from "@/assets/icon/u10140.png";
import j2 from "@/assets/icon/u10144.png";
import q1 from "@/assets/icon/u9681.png";
import q2 from "@/assets/icon/u10115.png";
import q3 from "@/assets/icon/u9987.png";
import q4 from "@/assets/icon/u3868.png";
import q5 from "@/assets/icon/u10048.png";
import q6 from "@/assets/icon/u10068.png";
import qq from "@/assets/icon/14.png";

import p1 from "@/assets/icon/7.png";
import p2 from "@/assets/icon/zoomtowindow.png";
import p3 from "@/assets/icon/result_contour.png";
import p4 from "@/assets/icon/result_vector.png";
import p5 from "@/assets/icon/13.png";
import p6 from "@/assets/icon/14.png";
import p7 from "@/assets/icon/19.png";
import p8 from "@/assets/icon/12.png";
import p9 from "@/assets/icon/result_line.png";
import p10 from "@/assets/icon/6.png";
import p11 from "@/assets/icon/9.png";
import p12 from "@/assets/icon/2.png";
import p13 from "@/assets/icon/18.png";
import p14 from "@/assets/icon/solid_surface.png";
import p15 from "@/assets/icon/result_slice.png";
import p16 from "@/assets/icon/result_stream.png";
import p17 from "@/assets/icon/animation.png";
import p18 from "@/assets/icon/result_curve.png";
import p19 from "@/assets/hcfd_images/run.png";
import p20 from "@/assets/icon/u3313.png";
import p21 from "@/assets/icon/u854.png";
import p22 from "@/assets/icon/u237.png";

import adilog from "@/assets/hcfd_images/adilog.png";
import Pagination from "@/components/Pagination";
import { Message, MessageBox } from "element-ui";
import store from "@/store";
import UgridLoad from "./loads/UgridLoad.vue";
import VolumLoad from "./loads/VolumLoad.vue";
import { request, uploadFile } from "@/utils/request";
import vueUploader from "./fileupload.vue";
import filesload from "./filesload.vue";
import { Caegw_ProUrl } from "@/settings"; // 引入settings.js
import loading from "./loading.vue";
import transformtool from "./loads/transformtool.vue";
import echartsHFCD from "./echartsHFCD.vue";
import Addtabs from "./addtabs.vue";
import animation from "../compoents/animation.vue";
export default {
  components: {
    geometry,
    meshindex,
    vueUploader,
    animation,
    filesload,
    loading,
    UgridLoad,
    VolumLoad,
    transformtool,
    Pagination,
    echartsHFCD,
    Addtabs,
  },
  props: {
    objopp: String,
    pid: String,
    femnum: String,
    elodingfalse: {
      type: Boolean,
      default() {
        return false;
      },
    },
    ytdata: {
      type: Object,
      default() {
        return {};
      },
    },
    vectorparam: {
      type: Object,
      default() {
        return {};
      },
    },
  },

  data() {
    return {
      funbool:true,
   objmesh:{
    strResultFormat:".vtk",
    surfParam:{
        max_size:"10",
        min_size:"1",
        surfStyle:"triangle",
        global_physical_size:"1.0"
    },
    surfParam1:{
        gradation:"1",
        anisotropic_ratio:"0",
        chordal_error:"0",
        debug:"no",
        closed_geometry:"no",
        enforce_cad_edge_sizes:"1",
        force_bad_surface_element_removal:"no",
        discard_input_topology:"no",
        create_tag_on_collision:"yes"
    },
    surfParam2:{
        element_order:"linear",
        remove_duplicate_cad_faces:"yes",
        scaled_jacobian_threshold_value:"0.001",
        optimisation:"no",
        correct_surface_intersections:"yes"
    },
    cleanerParam:null,
     tetraParam:null,
    hexaParam:null,
    hybridParam:null,
    },
     cleanerParam1:{
        folding_angle:"1",
        min_hole_size:"1",
        overlap_distance:"1",
        use_default_settings_for:"structure",
        overlap_angle:"15",
        resolution_length:"5"
    },
    tetraParam1:{
        components:"outside_components",
         gradation:"1.0"
    },
    hexaParam1:{
        components:"all",
    },
    hybridParam1:{
        element_generation:"tetra_dominant",
        normal_direction:'1',
        boundary_layer_global_initial_height:'',
        boundary_layer_geometric_progression:'',
        number_of_boundary_layers:'',
    },
    
      meshtableData:[{
        id:0,
        da:1
      },{
        id:2,
        da:33
      },
      ],
      setface:false,
      meshbrim:false,
      meshface:'物理尺寸模型',
      jiegradioval:false,
      facecheckbox:true,
      disabledface:false,
      jiegdisabled:true,
       jiegradio:"结构",
      checkListset:['纠正表面相交'],
      disabledset:true,
      lowbool: false,
      Quickbool: false,
      Startbool: false,
      sign: "low",
      signnum: false,
      countnum: 100,
      numan: true,
      slidermax: Number,
      median: Number,
      checkList: [],
      // 云图参数
      Stepe: "", //步数
      isVolume: "",
      outlineobj: {
        scalarName: "",
        range0: "",
        range1: "",
        leixing: "",
        level: "10",
        bmScalars: [],
        nameTypes: "",
        scalarmax: "",
      },
      percentage: 0,
      animationType: "ContourDisplay",
      hideZones: "",
      checkList: [],
      animationobj: {
        firststep: "",
        laststep: "",
        currentstep: "",
        zoomarr: [],
      },
      colorobj: {
        R: "0",
        G: "0",
        B: "0",
        showHideState: "1",
        transparency: "1",
      },
      variableNamearr: [],
      vector: {
        u: "r",
        v: "r",
        w: "r",
      },

      vectorobj: {
        dataU: "r",
        dataV: "r",
        dataW: "r",
        dataUarr: [],
        dataVarr: [],
        dataWarr: [],
        scaleFactor: "",
      },
      streamobj: {
        dataU: "r",
        dataV: "r",
        dataW: "r",
        dataUarr: [],
        dataVarr: [],
        dataWarr: [],
      },
      // 折线图的参数
      zobj: {
        lineType: "Line",
        pointvalue: "1",
        linevalue: "1",
      },
      target: "",
      editableTabsValue: "1",
      editableTabs: [
        //   {
        //   title: '1',
        //   name: '1',
        //   ruleForm: {
        //         fw:'1',
        //         slicecheck:'Solid',
        //         sx:'',
        //         sy:'',
        //         sx:'',
        //         rx:'',
        //         yx:'',
        //         zx:'',
        //         con:'0',
        //         colorlevel:'Sectionalplane',
        //         secheck:'',
        // },
        //   },
      ],
      tabIndex: 0,

      value1: 3,
      radio: "",
      desclist: [],
      boundaryid: "",
      desc: "",
      checked: false,
      solverConfigid: "",
      mcnames: "apply1",
      formLabelWidth: "60px",
      formLabelWidth2: "73px",
      formLabelWidth4: "37px",
      formLabelWidth5: "100px",
      formLabelWidth6: "120px",
       formLabelWidth61: "134px",
      formLabelWidth7: "170px",
      formLabelWidth9: "407px",
      switchvalue: "1",
      styX: {
        left: "",
      },
      t1,
      t2,
      t3,
      t4,
      t5,
      w1,
      w2,
      w3,
      w4,
      w5,
      w6,
      d1,
      d2,
      d3,
      d4,
      j1,
      j2,
      q1,
      q2,
      q3,
      q4,
      q5,
      q6,
      qq,
      p1,
      p2,
      p3,
      p4,
      p5,
      p6,
      p7,
      p8,
      p9,
      p10,
      p11,
      p12,
      p13,
      p14,
      p15,
      p16,
      p17,
      p18,
      p19,
      p20,
      p21,
      p22,
      visibles: false,
      restime: "",
      numzhexian: "",
      newlog: "",
      luobj: {
        projectName: "",
        projectId: "",
        projectDesc: "",
      },
      // 颜色选择
      r: "",
      g: "",
      b: "",
      lineColor: "rgba(255, 69, 0, 0.68)",
      predefineColors: [
        "#ff4500",
        "#ff8c00",
        "#ffd700",
        "#90ee90",
        "#00ced1",
        "#1e90ff",
        "#c71585",
        "rgba(255, 69, 0, 0.68)",
        "rgb(255, 120, 0)",
        "hsv(51, 100, 98)",
        "hsva(120, 40, 94, 0.5)",
        "hsl(181, 100%, 37%)",
        "hsla(209, 100%, 56%, 0.73)",
        "#c7158577",
      ],
      // current:0,
      lsolverState: "2",
      footerShow: true,
      bMesh: 0,
      bContour: 1,
      vMesh: 0,
      vContour: 1,
      name: "New",
      xiugai: {},
      Surfacenum: 3,
      Volumenum: 3,
      clearobj: {
        projectId: "",
        fileType: "",
        step: Number,
      },
      servertype: "ugrid",
      tstep: Number,
      wstep: "0",
      step: "0",
      srsurl: "ugrid",
      footerval: "on",
      top: "50px",
      formLabelWidth1: "70px",
      formLabelWidth3: "180px",
      visiable: false,
      dialogFormVisible: false,
      form1: {
        ssd: "",
        kelvins: "",
        delivery: false,
        type: [],
        resource: "",
        desc: "",
      },
      sum: "",
      formLabelWidth: "120px",
      adilog: adilog,
      activeName: "twos",
      tabPosition: "bottom",
      showtrue: true,
      drawer: true,
      direction: "rtl",
      twolist: [
        { icon: t1, titlie: "缩放" },
        { icon: t2, titlie: "平移" },
        { icon: t3, titlie: "旋转" },
        // {icon:t4, titlie:'分析类型'},
        // {icon:t5, titlie:'并行类型'},
      ],
      classlist: [
        { val: "ContourDisplay", titlie: " 轮廓显示" },
        { val: "LineDisplay", titlie: "线" },
        { val: "VectorDisplay", titlie: "矢量" },
        { val: "SolidSurfaceDisplay", titlie: "实体表面" },
      ],
      animaval: "ContourDisplay",
      meshlist: [
        { icon: q4, titlie: "文件上传" },
        { icon: p20, titlie: "几何网格检测" },
        { icon: p21, titlie: "网格自动划分" },
      ],
      geometrylist: [{ icon: p22, titlie: "几何导入" }],
      physicslist: [{ icon: w1, titlie: "控制方程" }],
      physicslist2: [
        { icon: w2, titlie: "粘性模型" },
        // {icon:"icon-d-glassware", titlie:'层流'},
        // {icon:"icon-xunhuanbofang", titlie:'湍流'},
        { icon: w3, titlie: "边界条件" },
        { icon: w4, titlie: "运动网格" },
      ],
      physicslist1: [
        { icon: w5, titlie: "参考条件" },
        { icon: w6, titlie: "非惯性参考系" },
      ],
      solutionlist: [
        { icon: q1, titlie: "无粘通量方法" },
        { icon: q2, titlie: "时间推进格式" },
      ],
      solutionlist2: [{ icon: q3, titlie: "线性方程组求解参数" }],
      solutionlist21: [{ icon: q4, titlie: "初始化" }],
      solutionlist22: [{ icon: p18, titlie: "折线图" }],
      solutionlist3: [
        { icon: q5, titlie: "运行控制" },
        { icon: q6, titlie: "输出控制" },
      ],
      runlist: [{ icon: p19, titlie: "求解" }],
      solutionlist4: [
        {
          icon: "icon-xitongcanshupeizhi",
          titlie: "Advanced Option_特殊的参数",
        },
        { icon: "icon-icon", titlie: "Advanced Option_Swap Y-Z Axres" },
        { icon: "icon-yunhang", titlie: "运行" },
        { icon: "icon-quxiantu", titlie: "Monitor" },
        { icon: "icon-tuxingtuxiangchuli", titlie: "资源选择" },
      ],
      resultslist: [
        //  { icon:"icon-cankaowenjian", titlie:'下载求解结果'},
        { icon: j1, titlie: "物面数据" },
        { icon: j2, titlie: "流场数据" },
      ],
      plotslsit: [
        { icon: p1, titlie: "Model plot" },
        { icon: p2, titlie: "path plot" },
        { icon: p3, titlie: "Global variables" },
      ],
      plotslsit1: [
        { icon: p4, titlie: "Design plot" },
        { icon: p5, titlie: "Gentralized Y Plot" },
        { icon: p6, titlie: "Import" },
      ],
      plotslsit2: [
        { icon: p6, titlie: "Length Unit" },
        { icon: p7, titlie: "History rlot" },
        { icon: p6, titlie: "Import IYPlot" },
      ],
      samplelist: [{ icon: p8, titlie: "采样点" }],
      generatelist: [
        { icon: p9, titlie: "工具" },
        { icon: p10, titlie: "动画" },
        { icon: p11, titlie: "Movies" },
      ],
      generatelist2: [
        { icon: p3, titlie: "报告" },
        { icon: p4, titlie: "几何距离" },
      ],
      displaylist: [
        { icon: p3, titlie: "轮廓显示" },
        { icon: p9, titlie: "线" },
        { icon: p4, titlie: "矢量" },
      ],
      displaylist2: [
        { icon: p14, titlie: "实体表面" },
        { icon: p15, titlie: "切片" },
        { icon: p16, titlie: "流线" },
      ],
      animationlist: [{ icon: p17, titlie: "动画" }],
      Cuelist: [
        { icon: p9, titlie: "Curve Select" },
        { icon: p13, titlie: "Curve Display" },
      ],
      unitlist: [
        { icon: d1, titlie: "单位换算" },
        { icon: d2, titlie: "Y+计算器" },
        { icon: d3, titlie: "雷诺数计算" },
      ],
      selectlist1: [
        { value: "inviscid", name: "无粘" },
        { value: "laminar", name: "层流" },
        { value: "turbulent", name: "湍流" },
      ],
     strResultFormatlist:[
          { value: ".vtk", name: ".vtk" },
        { value: ".mesh", name: ".mesh" },
        { value: ".ugrid", name: ".ugrid" },
        { value: ".bdf", name: ".bdf" },
        { value: ".neu", name: ".neu" },
   
      ],
      meshval:'0',
      meshvallist:[
          { value: "0", name: "面网格" },
        { value: "1", name: "四面体网格" },
        { value: "2", name: "六面体网格" },
        { value: "3", name: "混合网格" },
      ],
         meshvallist1:[
        { value: "triangle", name: "三角形" },
        { value: "quad_dominant", name: "四边形" },
        { value: "full_quad", name: "全四边形" },
        { value: "local", name: "局部" },
      ],
       meshval1:'0',
       patternlist:[
        { value: "global", name: "global" },
        { value: "local", name: "local" },
        { value: "none", name: "none" },
      ],
       patternval:'0',
        elsementlist:[
        { value: "linear", name: "linear" },
        { value: "quadratic", name: "quadratic" },
      ],
       eleval:'0',
       tetrahedron:[
        { value: "outside_components", name: "outside_components" },
        { value: "all", name: "all" },
      ],
       hexahedral:[
        { value: "outside_components", name: "outside_components" },
        { value: "outside_skin_only", name: "outside_skin_only" },
        { value: "all", name: "all" },
      ],
         mixture:[
         { value: "tetra_dominant", name: "tetra_dominant" },
        { value: "hexa_dominant", name: "hexa_dominant" },
        { value: "extrusion_only", name: "extrusion_only" },
        { value: "cartesian_core", name: "cartesian_core" },
      ],
      mixval:'0',
      hemxval:'0',
        boundarylayer   :[
        { value: "1", name: "正" },
        { value: "-1", name: "负" },
       
      ],
      layerval:'0',
      fileTypeli: [
        { value: "timestep", name: "timestep" },
        { value: "model", name: "model" },
      ],
      fileTypeval: "timestep",
      selectlist2: [
        { value: "sa", name: "SA" },
        { value: "k-omega-sst", name: "Menter-SST" },
        { value: "sa-des", name: "SA-DES" },
        { value: "k-omega-des", name: "k-omega-DES" },
        { value: "linear-k-epsilon", name: "Linear-k-epsilon" },
        { value: "abid-k-epsilon", name: "Abid-k-epsilon" },
        { value: "menter-sst-les", name: "Menter-SST-LES" },
        { value: "Wilcox-les", name: "Wilcox-LES" },
      ],
      qjklist: [
        { value: "roe", name: "Roe" },
        { value: "vanleer", name: "vanleer" },
        { value: "hllc", name: "HLLC" },
        { value: "aufs", name: "AUFS" },
        { value: "central_diss", name: "Central_Diss" },
        { value: "dlfss", name: "LDFSS" },
        { value: "stvd", name: "STVD" },
        { value: "stvd_modified", name: "STVD_modified" },
      ],
      qjklist2: [
        { value: "none", name: "none" },
        { value: "barth", name: "barth" },
        { value: "venkat", name: "venkat" },
        { value: "minmod", name: "minmod" },
        { value: "vanleer", name: "vanleer" },
        { value: "vanalbada", name: "vanalbada" },
        { value: "smooth", name: "smooth" },
        { value: "hminmod", name: "hminmod" },
        { value: "hvanleer", name: "hvanleer" },
        { value: "hvanalbada", name: "hvanalbada" },
        { value: "hsmooth", name: "hsmooth" },
        { value: "hvenkat", name: "hvenkat" },
      ],
      qjklist3: [
        { value: "roe", name: "Roe" },
        { value: "central_difference", name: "Central_Difference" },
        { value: "hllc", name: "HLLC" },
        { value: "aufs", name: "AUFS" },
        { value: "dlfss", name: "LDFSS" },
      ],
      ydlist: [
        { value: "0", name: "刚体" },
        { value: "1", name: "变形" },
      ],
      tlist1: [
        { value: "steady", name: "定常" },
        { value: "1storder", name: "1阶差分" },
        { value: "2ndorder", name: "2阶差分" },
        { value: "2ndorderOPT", name: "最优2阶差分" },
        { value: "3rdorder", name: "4阶差分" },
        { value: "4thorderMEBDF4", name: "4阶差分" },
        { value: "4thorderESDIRK4", name: "4阶差分" },
      ],
      ydval: "0",
      ydlist2: [
        { value: "0", name: "平动" },
        { value: "1", name: "转动" },
      ],

      directionlist: ["Both", "Forward", "Backward"],
      streamstylelist: ["Line", "Ribbon", "Tube"],
      streamres: {
        direction: "Both",
        streamstyle: "Line",
        initialstep: 0.2,
        maxpropagation: 1.2,
        minimumstep: 0.3,
        showstate: true,
        toolstate: true,
      },
      ydval2: "0",
      ydlist3: [
        { value: "0", name: "匀速" },
        { value: "1", name: "正弦" },
      ],
      ydval3: "0",
      ydlist4: [
        { value: "0", name: "随体运动" },
        { value: "1", name: "空间固定" },
      ],
      ydval4: "0",
      loadlist: [
        { value: "0", name: "盒子" },
        { value: "1", name: "球" },
        { value: "2", name: "圆柱" },
        { value: "4", name: "圆锥" },
      ],
      loadval: "0",
      objectplanelist: [
        { value: "0", name: " 物面输出" },
        { value: "1", name: "流场输出" },
      ],
      objectplaneval: "0",
      active: "",
      //大对象
      ziyprojects: [],
      paginationConfig: {
        hideSinglePage: false,
        page: 1,
        size: 15,
        sizeList: [10, 15, 30, 50],
        layout: "total, sizes, prev, pager, next, jumper",
        total: 0,
      },
      getRowKeys(row) {
        return row.id;
      },
      selsectid: [],
      missType: true,
      initialization: "freestreams",
      upVisible: false,
      Yvisiable: false,
      llsvisiable: false,
      newload: true,
      runMonitor: true,
      contourLevel: 3,

      form: {
        u_freestream: "",
        rho: "",
        L: "",
        mu: "",
        y_plus_desired: "",

        dtc: "",
        md: "",
        ls: "",
        cd: "",
        Rex: "",
        Re: "",
        lys: "",
        lmi: "",
        ldlzxxs: "",
        lld: "",
        Re: "",
        dtc: "",
        lls: "",
      },
      uploadlist: [
        {
          name: "mapbc",
          percentage: 0,
        },
        {
          name: "ugrid",
          percentage: 0,
        },
      ],
      ContourSurface: false,
      adilog: adilog,
      loading: loading,
      headMenu_2Show: false,
      leftMenu_2Show: false,
      gennealShow: false,
      physicsShow: false,
      solutionShow: false,
      resultShow: false,
      Consoleshow: true,
      openshow: false,
      TaskGenealshow: false,
      TaskPhysicsshow: false,
      TaskSolutionshow: false,
      TaskSurfaceshow: false,
      TaskVolumeshow: false,
      ugridUrl: "",
      bload: null,
      websock: null,
      logs: "欢迎来到HCFD",
      islogload: true, //控制log请求（ture 发起 false 不发起）
      outline: "OutLine",
      fileNames: [],

      belementCheckeds: ["Contour"],
      boundaryStep: [],
      bStep: "0",
      boundaryScalars: [],
      hcfdSteplist: [],
      bScalar: "cp",

      velementCheckeds: ["Contour"],
      vStep: "0",
      volumStep: [],
      volumScalars: [],
      vSalar: "",

      isSolverEnd: false, //判断是否求解完成
      solverState: "0", //求解状态（0-未求解 1-求解中 2-求解完成）

      menuList: [
        {
          id: "1",
          label: "Setup",
          children: [
            {
              id: "2",
              label: "General",
            },
            {
              id: "3",
              label: "Physics",
            },
            {
              id: "4",
              label: "Solution",
            },
          ],
        },
        {
          id: "5",
          label: "Results",
          children: [
            {
              id: "6",
              label: "Monitor",
            },
            {
              id: "7",
              label: "Surface Grid",
            },
            {
              id: "8",
              label: "Volume Grid",
            },
            {
              id: "9",
              label: "Ugrid",
            },
          ],
        },
      ],
      dialog: {
        //弹出框 控制
        new_visiable: false,
        load_visiable: false,
        ziyuan: false,
        geometry_upload: false,
        upload_visiable: false,
        mesh_generation:false,
        scale_visiable: false,
        translation_visiable: false,
        rotation_visiable: false,
        type_visiable: false,
        parallel_visiable: false,
        equation_visiable: false,
        inviscid_visiable: false,
        laminar_visiable: false,
        turbulent_visiable: false,
        dynamic_visiable: false,
        nonitertial_visiable: false,
        border_visiable: false,
        reference_visiable: false,
        fluxrc_visiable: false,
        time_visiable: false,
        timeasm_visiable: false,
        xian_visiable: false,
        initialization_visiable: false,
        specified_visiable: false, //未完成
        runc_visiable: false,
        boundaryo_visiable: false,
        volumeo_visiable: false,
        specialp_visiable: false,
        swap_visiable: false,
        SurfaceGrid_visiable: false,
        VolumeGrid_visiable: false,
        contour_visiable: false,
        Line_visiable: false,
        Vector_visiable: false,
        Solid_Surface: false,
        Slice_Surface: false,
        Stream_Surface: false,
        Curve_Select: false,
        Curve_Disp1ay: false,
        an_Animation: false,
      },
      geneal: {
        //数据存储
        MeshTransform: {
          Scale: {
            Factor: 0,
          },
          Translation: {
            Distance: 0,
            X: 1,
            Y: 0,
            Z: 0,
          },
          Rotation: {
            Angle: 0,
            X: 0,
            Y: 0,
            Z: 0,
            X1: 1,
            Y1: 0,
            Z1: 0,
          },
        },
      },
      Physics: {
        Turbulent: {
          TurbulentPrandtlNumber: 0.9,
        },
        Boundary: {
          bquery: null, //hcfdBoundary 选中数据 id
          hcfdBoundaryquery: null, //hcfdBoundary 选中数据
          cquery: null,
          /* 黎曼远场边界(Farfield) 5000
           * 自由来流边界（Freestream）5050
           * 无粘壁面(Inviscous Wall) 3000
           * 粘性壁面（Viscous Wall）4000
           * X-对称平面(X-symmetry Plane)6661
           * Y-对称平面(Y-symmetry Plane ) 6662
           * Z-对称平面Z-symmetry Plane) 6663
           * 周期边界(Periodic) 6100*/
          Conditions: [
            { conditionsCode: 5000, name: "Farfield" },
            { conditionsCode: 5050, name: "Freestream" },
            { conditionsCode: 3000, name: "Inviscous Wall" },
            { conditionsCode: 4000, name: "Viscous Wall" },
            { conditionsCode: 6661, name: "X-symmetry Plane" },
            { conditionsCode: 6662, name: "Y-symmetry Plane" },
            { conditionsCode: 6663, name: "Z-symmetry Plane" },
            { conditionsCode: 6100, name: "Periodic" },
          ],
        },
      },
      Solution: {
        boundaryout: {
          checkAll: false,
          checkeds: [],
          lists: [
            "X-component of velocity",
            "Y-component of velocity",
            "Z-component of velocity",
            "Press",
            "Press coefficient",
            "Mach Number",
            "Vorticity magnitude",
            "X-component of vorticity",
            "Y-component of vorticity",
            "Z-component of vorticity",
            "Q Criterion",
          ],
          isIndeterminate: true,
        },
        volumout: {
          checkAll: false,
          checkeds: [],
          lists: [
            "X-component of velocity",
            "Y-component of velocity",
            "Z-component of velocity",
            "Press",
            "Press coefficient",
            "Mach Number",
            "Vorticity magnitude",
            "X-component of vorticity",
            "Y-component of vorticity",
            "Z-component of vorticity",
            "Q Criterion",
          ],
          isIndeterminate: true,
        },
      },
      //state -1,0 ,1
      //message
      //type 1 一般 2 下载
      state: "", //求解状态（0-为求解，1-求解成功，-1-是求解失败）
      loadObjs: [],
      loadVVisiable: false,
      loading: false,
      fileurls: [],
      project: {
        projectId: "",
        lesseeId: "",
        projectName: "",
        projectType: "hcfd",
        projectDesc: "",
        fileType: "ascii",
        solverfiles: [],
        solverVolumUrls: [],
        solverBoundaryUrls: [],
        loadfils: [],
        converge: "",
        uid: "",
      },
      projects: [],
      parameterObjclone: [],
      parameterObj: {
        hcfdBoundarys: [
          // {
          //   name: "WING1",
          //   id: 1,
          //   conditionsCode: 3000,
          // },
        ],
        nmlParam: {
          a_vort_mag: "false",
          case_title: "case_name",
          angle_of_yaw: 0,
          x_moment_center: 0,
          eqn_type: "cal_perf_incompress",
          schedule_cfl: [0, 0],
          swap_yz_axes: "false",
          v_vort_mag: "false",
          pseudo_time_stepping: "on",
          meanflow_sweeps: 15,
          a_p: "true",
          a_u: true,
          a_w: "true",
          a_v: "true",
          dynamic_Mesh: "off",
          jacobian_eval_freq: 10,
          turb_model: "menter-sst",
          grid_format: "aflr3",
          turbulence_sweeps: 10,
          mach_number: 0.5,
          y_moment_length: 1,
          area_reference: 1,
          flux_limiter: "none",
          a_cp: "true",
          viscous_terms: "turbulent",
          volume_animation_freq: 100,
          steps: 1500,
          flux_construction_lhs: "roe",
          stopping_tolerance: 2.0e-1,
          prandtlnumber_molecular: 0.72,
          restart_write_freq: 250,
          v_vort_x: "false",
          schedule_iteration: [1, 50],
          v_vort_y: "false",
          v_vort_z: "false",
          line_implicit: "off",
          temperature_units: "Rankine",
          number_of_Processors: 2,
          x_moment_length: 1,
          time_accuracy: "steady",
          angle_of_attack: 0,
          subiterations: 0,
          artificial_compress: 15,
          a_q_criterion: "false",
          schedule_cflturb: [50, 50],
          schedule: 1,
          first_order_iterations: 0,
          restart_read: "off",
          temperature: 490,
          input_version: 2.2,
          namelist_verbosity: "off",
          ignore_euler_number: "false",
          data_format: "ascii",
          v_cp: "true",
          time_step_nondim: 0,
          a_mach: "true",
          large_angle_fix: "off",
          v_p: "true",
          animation_freq: 100,
          v_mach: "true",
          project_rootname: "tf",
          v_v: "true",
          v_q_criterion: "false",
          v_u: "true",
          y_moment_center: 0,
          v_w: true,
          z_moment_center: 0,
          parallel_Optional: "Serial",
          analysis_Type: "Steady",
          noninertial_Reference_Frame: "off",
          flux_construction: "roe",
          a_vort_z: "false",
          a_vort_y: "false",
          a_vort_x: "false",
          reynolds_number: 1000000,
        },
      },

      renderer_hight: 500,
      renderer_width: 500,
      showUgridflag: false, //ugrid 是否显示过
      showSurfaceflag: false, //surface 是否显示过
      showVolumeflage: false, //Volume 是否显示过
      showMonitorflage: false, //Monitor是否显示过
    };
  },

  created() {},
  mounted() {
    this.init();
  },
  watch: {},

  //  destroyed() {
  //     this.websock.close() //离开路由之后断开websocket连接
  //   },
  methods: {
    //  折线图对线的控制
    changeline() {
      let obj = JSON.stringify(this.zobj);
      this.$parent.changelines(obj);
      if (this.zobj.ineType == "line") {
      }
    },
    lineclick() {
      let num = Number(this.zobj.linevalue);
      if (
        (num < 0 && this.zobj.lineType == "Line") ||
        (num < 10 && this.zobj.lineType == "Line")
      ) {
        this.$parent.linezhexian(this.zobj.linevalue);
      }
    },
    pointclick() {
      let num = Number(this.zobj.pointvalue);
      if (
        (num < 0 && this.zobj.pointvalue == "Point") ||
        (num < 10 && this.zobj.pointvalue == "Point")
      ) {
        this.$parent.linezhexian(this.zobj.pointvalue);
      }
    },
    geometryup() {
      //  this.$parent.startimg("init",'loaddata');
    },
    // 上传文件，加载图片
    runugrid() {
      this.$parent.startimg("init", "loaddata");
    },
    // 添加div
    addTab(targetName) {
      this.target = targetName;
      let newTabName = ++this.tabIndex + "";
      this.bStepok("SliceDisplayAdd", newTabName, "");
      this.editableTabs.push({
        index: newTabName,
        type: "line",
        variableName: "r",
        level: "10",
        normal_x: "",
        normal_y: "",
        normal_z: "",
        position_x: "1",
        position_y: "",
        position_z: "",
        scalar_value_state: false,
        solid_state: true,
        sectional_plane_state: true,
        sectional_contour_state: true,
        areaRange: "",
      });

      this.editableTabsValue = newTabName;
    },
    //add的参数
    addparam() {
      console.log(22222);
      let dataslicedisplay = JSON.parse(
        sessionStorage.getItem("dataslicedisplay")
      );
      let data = JSON.parse(dataslicedisplay);
      let that = this;
      that.variableNamearr = data.variableName.split(",");
      let arr = this.editableTabs;
      that.$nextTick(() => {
        for (var i = 0; i < arr.length; i++) {
          arr[i].position_x = data.position_x;
          arr[i].position_y = data.position_y;
          arr[i].position_z = data.position_z;
          arr[i].areaRange = data.areaRange;
          that.$refs.addtabs[i].getarrs(this.variableNamearr);
          that.$refs.addtabs[i].range.xrange = data.xrange;
          that.$refs.addtabs[i].range.yrange = data.yrange;
          that.$refs.addtabs[i].range.zrange = data.zrange;
        }
      });
    },
    updata() {
      this.bStepok("SliceDisplayUpdate", "", "");
    },
    //updata的参数
    updataparam() {
      let updateparam = JSON.parse(sessionStorage.getItem("updateparam"));
      let edarr = this.editableTabs;
      let updatadata = JSON.parse(updateparam);
      let updatarr = updatadata.update_param;

      console.log(updatarr);
      for (var i = 0; i < edarr.length; i++) {
        for (var j = 0; j < updatarr.length; j++) {
          edarr[i].normal_x = updatarr[j].normal_x;
          edarr[i].normal_y = updatarr[j].normal_y;
          edarr[i].normal_z = updatarr[j].normal_z;
          edarr[i].position_x = updatarr[j].position_x;
          edarr[i].position_y = updatarr[j].position_y;
          edarr[i].position_z = updatarr[j].position_z;
        }
      }
    },
    // 参数的编辑

    //删除新增的tab
    removeclear(val) {
      let tabs = this.editableTabs;
      let activeName = this.editableTabsValue;
      if (activeName === val) {
        tabs.forEach((tab, index) => {
          if (tab.index === val) {
            let nextTab = tabs[index + 1] || tabs[index - 1];
            if (nextTab) {
              activeName = nextTab.index;
            }
          }
        });
      }
      this.editableTabsValue = activeName;
      this.editableTabs = tabs.filter((tab) => tab.index !== val);
      this.bStepok("SliceDisplayDel", val, "");
    },
    removeTab(targetName) {
      console.log(targetName);
      let tabs = this.editableTabs;
      let activeName = this.editableTabsValue;
      if (activeName === targetName) {
        tabs.forEach((tab, index) => {
          if (tab.index === targetName) {
            let nextTab = tabs[index + 1] || tabs[index - 1];
            if (nextTab) {
              activeName = nextTab.index;
            }
          }
        });
      }
      this.editableTabsValue = activeName;
      this.editableTabs = tabs.filter((tab) => tab.index !== targetName);
      this.bStepok("SliceDisplayDel", targetName, "");
    },
    handletabclick(el) {
      console.log(el);
    },
    liceOK() {
      let paramJson = JSON.stringify(this.editableTabs);
      this.bStepok("SliceDisplayApply", "", paramJson);
      this.dialog.Slice_Surface = false;
    },
    changedesc1(val) {
      this.desclist = JSON.parse(val);
      this.parameterObj.hcfdBoundarys = this.desclist;
    },
    leixingchange(val) {
      if (val == "MPI Parallel") {
        this.dialog.parallel_visiable = true;
      } else {
        this.dialog.parallel_visiable = false;
      }
      console.log(val);
    },
    //数据加载参数配置obj
    hcfdchange(obj, solverConfigid, datas) {
      this.parameterObj = JSON.parse(obj);
      console.log(this.parameterObj);
      this.desclist = this.parameterObj.hcfdBoundarys;
      sessionStorage.setItem("res", obj);
      this.solverConfigid = solverConfigid;
      this.state = datas.state; //-1-为求解 ，0-是求解中，1-求解完成
      sessionStorage.setItem("solverConfigid", solverConfigid);
    },
    //更新参数配置
    hcfdparam() {
      const params = {
        transCode: "C00004",
        solverConfigid: this.solverConfigid,
        parameterObj: JSON.stringify(this.parameterObj),
      };
      request(params)
        .then((res) => {
          this.$parent.solverchange1(this.femnum, "1");
        })
        .catch((err) => {});
    },
    // 新版求解控制
    Runsolve() {
      this.hcfdparam();
      this.dialog.runc_visiable = false;
    },
    hcfdExe() {
      var _this = this;
      let params = {
        transCode: "C00005",
        solverConfigId: this.solverConfigid,
      };
      request(params)
        .then((res) => {
          Message({
            type: "success",
            message: res.returnMsg,
          });
        })
        .catch((err) => {
          this.$emit("exlodingfalse", false);
          setTimeout(function () {
            _this.$refs.loading.visiable = false;
          }, 4000);

          if (err.returnCode == "EB8100017") {
            MessageBox.confirm("你还未分配资源?", "提示", {
              confirmButtonText: "分配资源",
              cancelButtonText: "取消",
              type: "warning",
            })
              .then(() => {
                let errUril =
                  _this.$store.getters.proUrl +
                  "?projectId=" +
                  _this.project.projectId;
                let params2 = {
                  transCode: "A00118",
                  lesseeId: _this.$store.getters.lesseeId,
                };
                request(params2)
                  .then((res) => {
                    window.location.href =
                      errUril + "&authCode=" + res.authCode;
                  })
                  .catch((err) => {});
              })
              .catch(() => {
                _this.$refs.loading.visiable = false;
                Message({
                  type: "info",
                  message: "已取消",
                });
              });
          }
        });
    },
    reUpload() {
      this.$refs.mapbc.uploader.upload();
      this.$refs.ugrid.uploader.upload();
    },

    /**
     * 更新配置 并求解
     */
    async hcfdrun() {
      if (this.state == "1") {
        //求解状态（0-求解中，1-求解成功，-1-没有求解）
        //上次求解完成
        MessageBox.confirm("已完成计算，是否放弃上次结果重新计算？", "提示", {
          confirmButtonText: "重新计算",
          cancelButtonText: "取消",
          type: "warning",
        })
          .then(() => {
            MessageBox.close();
            this.isSolverEnd = false;
            this.hcfdExe();
            let _this = this;
            let isStop = false;
            this.$parent.funagain();
            this.$emit("exlodingfalse", true);
          })
          .catch(() => {
            Message.info("已取消！");
            MessageBox.close();
           this.$emit("exlodingfalse", false);
              this.funbool=false;
          });
      } else {
        this.$emit("exlodingfalse", true);
        this.isSolverEnd = false;
        this.hcfdExe();
        let _this = this;
        let isStop = false;
        isStop = true;
        this.$parent.funagain();
      }
    },
    // 求解的日志
    getlog() {
      let params = {
        transCode: "C00006",
        pid: this.project.projectId,
      };
      request(params)
        .then((res) => {
          let rows = res.rows;
          console.log(rows);
        })
        .catch((err) => {});
    },
    handleClick(tab, event) {},
    activecleer() {
      this.active = 11;
    },
    // 获取物面数据的步数
    setpnum() {
      let steplist = this.boundaryStep;
      let len = steplist.length;
      if (len == 0) {
        let params = {
          transCode: "AFT002",
          pid: this.project.projectId,
          solverConfigId: this.solverConfigid,
        };
        request(params).then((res) => {
          let steps = res.steps.split(",");
          this.boundaryStep = steps;
          this.hcfdSteplist = steps;
          this.volumStep = steps;
          this.slidermax = Number(this.boundaryStep.length);
          this.median =
            Number(this.hcfdSteplist[2]) - Number(this.hcfdSteplist[1]);
        });
      }
    },
    // 获取轮廓数据
    bStepok(action, index, paramJson) {
      const params = {
        transCode: "AFT001",
        pid: this.project.projectId,
        solverConfigId: this.solverConfigid,
        action: action,
        paramJson: paramJson,
        step: this.Stepe,
        scalarName: this.outlineobj.scalarName,
        level: this.outlineobj.level,
        range0: this.outlineobj.range0,
        range1: this.outlineobj.range1,
        isVolume: this.isVolume,
        dataU: this.vector.u,
        dataV: this.vector.v,
        dataW: this.vector.w,
        scaleFactor: this.vectorobj.scaleFactor,
        index: index,
        animationType: this.animationType,
        hideZones: this.hideZones,
      };
      request(params)
        .then((res) => {
          console.log(res);
        })
        .catch((err) => {});
    },
    //level颜色的数据
    changeblur() {
      this.bStepok("ContourDisplay", "", "");
    },
    vchangeblur() {
      this.bStepok("LineDisplay", "", "");
    },
    // 获取轮廓数据
    outlinedata(data) {
      let scalarrange1 = "";
      let ytdata = JSON.parse(data);
      this.outlineobj.scalarName = ytdata.scalarName;
      this.vSalar = ytdata.scalarName;
      let ress = ytdata.scalarNames;
      this.outlineobj.scalarmax = ytdata.scalarrange;
      if (ress == undefined) {
        Message({
          type: "info",
          message: "请择物面数据",
        });
      } else {
        this.outlineobj.bmScalars = Array.from(ress.split(","));
        this.outlineobj.nameTypes = ytdata.nameTypes;
        this.strnumchange(ytdata.nameTypes);
        this.outlinemax(this.vSalar);
      }
    },
    // 获取轮廓数据的最大值和最小值
    outlinemax(val) {
      let arrmax = Array.from(this.outlineobj.scalarmax.split(","));
      arrmax.forEach((item, index) => {
        let arrval = arrmax[index].split("#");
        if (arrval.includes(val)) {
          this.outlineobj.range0 = arrval[1];
          this.outlineobj.range1 = arrval[2];
        }
      });
    },
    //矢量数据
    vectordata(data) {
      //let vectorparam= JSON.parse(sessionStorage.getItem("vectorparam"));
      let vectorparam = JSON.parse(data);
      console.log(vectorparam);
      let datau = vectorparam.dataU;
      let datav = vectorparam.dataV;
      let dataw = vectorparam.dataW;
      this.vectorobj.dataUarr = datau.split(",");
      this.vectorobj.dataVarr = datav.split(",");
      this.vectorobj.dataWarr = dataw.split(",");
      this.vectorobj.scaleFactor = vectorparam.scaleFactor;
    }, // zoom
    zoomanimation(data) {
      let zoomparam = JSON.parse(data);
      this.animationobj.zoomarr = zoomparam.zonename.split(",");
      console.log(this.animationobj.zoomarr);
    },
    //拿到勾选数据
    zoomList(data, index) {
      console.log(this.checkList);
      console.log(data + index);
    },
    // 动画
    loadonclick() {
      //   console.log(this.paramJson);
      // console.log(this.animationType);
      this.hideZones = this.checkList.toString();
      this.bStepok("animation", "", "");
    },
    // 矢量的OK按钮
    vectorOK() {
      (this.vector.u = this.vectorobj.dataU),
        (this.vector.v = this.vectorobj.dataV),
        (this.vector.w = this.vectorobj.dataW),
        this.bStepok("VectorDisplay", "", "");
    },
    //stream 数据
    streamdata(data) {
      console.log(data);
      let streamparam = JSON.parse(data);
      let datau = streamparam.dataU;
      let datav = streamparam.dataV;
      let dataw = streamparam.dataW;
      this.streamobj.dataUarr = datau.split(",");
      this.streamobj.dataVarr = datav.split(",");
      this.streamobj.dataWarr = dataw.split(",");
    },
    // stream创建数据
    CreateStream() {
      this.vector.u = this.streamobj.dataU;
      this.vector.v = this.streamobj.dataV;
      this.vector.w = this.streamobj.dataW;
      if (
        this.vector.u == this.vector.v ||
        this.vector.u == this.vector.w ||
        this.vector.v == this.vector.w
      ) {
        Message({
          type: "warning",
          message: "矢量值，各不相同才能创建！",
        });
      } else {
        this.bStepok("StreamDisplayCreate", "", "");
      }
    },
    //stream提交数据
    streamOK() {
      console.log(this.streamres);
      let parae = JSON.stringify(this.streamres);
      this.bStepok("StreamDisplayApply", "", parae);
    },
    // 字符串的裁剪
    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.outlineobj.nameTypes);
      this.outlinemax(this.vSalar);
    },
    //实体的颜色的控制
    colorchange(val) {
      if (this.lineColor != null) {
        let str = this.lineColor.slice(5, -1);
        let colorstr = str.split(",");
        this.colorobj.R = colorstr[0];
        this.colorobj.G = colorstr[1];
        this.colorobj.B = colorstr[2];
        this.colorobj.transparency = colorstr[3];
        console.log(colorstr);
      }
    },
    colorsolid() {
      let r = (Number(this.colorobj.R) / 255).toFixed(4);
      let g = (Number(this.colorobj.G) / 255).toFixed(4);
      let b = (Number(this.colorobj.B) / 255).toFixed(4);
      const params = {
        transCode: "AFT001",
        pid: this.project.projectId,
        solverConfigId: this.solverConfigid,
        action: "SolidSurfaceDisplay",
        paramJson: "",
        step: this.bStep,
        scalarName: this.outlineobj.scalarName,
        level: "",
        range0: this.outlineobj.range0,
        range1: this.outlineobj.range1,
        isVolume: this.isVolume,
        dataU: this.vectorobj.dataU,
        dataV: this.vectorobj.dataV,
        dataW: this.vectorobj.dataW,
        scaleFactor: this.vectorobj.scaleFactor,
        r: r,
        g: g,
        b: b,
        transparency: this.colorobj.transparency,
        showHideState: this.colorobj.showHideState,
      };
      request(params)
        .then((res) => {
          console.log(res);
        })
        .catch((err) => {});
    },
    //

    //模块选择
    clickgeometry(e, index, key) {
      var e = e || window.Event;
      this.styX.left = e.clientX + "px";
      this.active = key;
      // document.querySelector('.el-dialog').style.left='265px';
      //  console.log(typeof this.styX.left);
      console.log(key);
      if(key=='four44-0'){
           sessionStorage.setItem('keyactive',"four44-0");
      }else{
         sessionStorage.setItem('keyactive',"");
      }
   
      // console.log(document.querySelector('.el-dialog').style.left)
      switch (key) {
        case "info1-0":
          this.name = "New";
          this.clickNew();
          break;
        case "info1-1":
          this.loadProjects();
          break;
        case "info1-2":
          this.name = "amend";
          this.clickNew();
          break;
        case "one0-0":
          this.dialog.geometry_upload = true;
          break;
        case "one-0":
          this.dialog.upload_visiable = true;
          break;
         case "one-2":
          this.dialog.mesh_generation = true;
          break;
        case "two-0":
          this.dialog.scale_visiable = true;
          break;
        case "two-1":
          this.dialog.translation_visiable = true;
          break;
        case "two-2":
          this.dialog.rotation_visiable = true;
        case "two-3":
          this.dialog.type_visiable = true;
          break;
        case "two-4":
          this.dialog.parallel_visiable = true;
          break;
        case "three-0":
          this.dialog.equation_visiable = true;
          break;
        case "three2-0":
          this.dialog.inviscid_visiable = true;
          break;
        case "three2-1":
          this.dialog.border_visiable = true;
          break;
        case "three2-2":
          this.dialog.dynamic_visiable = true;
          break;
        case "three1-0":
          this.dialog.reference_visiable = true;
          break;
        case "three1-1":
          this.dialog.nonitertial_visiable = true;
          break;
        case "four-0":
          this.dialog.fluxrc_visiable = true;
          break;
        case "four-1":
          this.dialog.time_visiable = true;
          break;
        case "four2-0":
          this.dialog.xian_visiable = true;
          break;
        case "four2-10":
          this.dialog.initialization_visiable = true;
          break;
        case "four3-0":
          this.dialog.runc_visiable = true;
          break;
        case "four3-1":
          this.dialog.boundaryo_visiable = true;
          break;
        case "four4-0":
          this.dialog.specialp_visiable = true;
          break;
        case "four4-1":
          this.dialog.swap_visiable = true;
          break;
        case "four44-0":
          this.$parent.fun();
           
          break;
        case "four410":
          this.funbool=true;
          this.hcfdrun();

          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":
          this.dialog.contour_visiable = true;
          break;
        case "five7-1":
          this.dialog.Line_visiable = true;
          break;
        case "five7-2":
          this.dialog.Vector_visiable = true;
          break;
        case "five8-0":
          this.dialog.Solid_Surface = true;
          break;
        case "five8-1":
          this.dialog.Slice_Surface = true;
          break;
        case "five8-2":
          this.dialog.Stream_Surface = true;
          break;
        case "five9-0":
          this.stepfun();
          this.value1 = Number(this.animationobj.currentstep);
          this.dialog.an_Animation = true;
          let that = this;
          setTimeout(function () {
            that.active = "five7-0";
            that.dialog.contour_visiable = true;
          }, 100);
          break;
        case "five10-0":
          this.dialog.Curve_Select = true;
          break;
        case "five10-1":
          this.dialog.Curve_Disp1ay = true;
          break;
      }
    },
    animationclick(val) {
      this.percentage = 0;
      console.log(val);
      this.animationType = val;
      switch (val) {
        case "ContourDisplay":
          this.active = "five7-0";
          this.dialog.contour_visiable = true;
          break;
        case "LineDisplay":
          this.active = "five7-1";
          this.dialog.Line_visiable = true;
          break;
        case "VectorDisplay":
          this.active = "five7-2";
          this.dialog.Vector_visiable = true;
          break;
        case "SolidSurfaceDisplay":
          this.active = "five8-0";
          this.dialog.Solid_Surface = true;
          break;
      }
    },

    //清除相关信息
    clearAll() {
      this.showUgridflag = false; //ugrid 是否显示过
      this.showSurfaceflag = false; //surface 是否显示过
      this.showVolumeflage = false; //Volume 是否显示过
      this.showMonitorflage = false;
      this.islogload = true;
      this.boundaryStep = [];
      this.logs = "";
      this.project = {
        projectId: "",
        projectName: "",
        projectType: "hcfd",
        projectDesc: "",
        fileType: "ascii",
        solverfiles: [],
        solverVolumUrls: [],
        solverBoundaryUrls: [],
        loadfils: [],
        converge: "",
      };
    },
    init() {
      this.project.projectId = this.pid; //获取url 参数
      this.project.lesseeId = this.$store.getters.lesseeId; //获取url 参数
      this.missType = true;
    },

    logtime() {
      let self = this;
      let projectId = self.project.projectId;
      if (projectId != null && projectId != "" && self.islogload) {
        self.islogload = false;
        let params = {
          transCode: "A00112",
          projectId: projectId,
          page: 0,
          count: 30,
        };
        request(params)
          .then((res) => {
            console.log(res);
            let rows = res.rows;
            self.logs = ""; //只显示最新的数据
            rows.forEach((row) => {
              self.logs = row.log + "\n" + self.logs;
              if (row.log.indexOf("Solver end") > 0) {
                self.isSolverEnd = true;
              }
            });
            self.islogload = true;
          })
          .catch((err) => {
            self.islogload = true;
          });
      }
    },

    setVolumScalars(scalars) {
      console.log(scalars);
      this.volumScalars = scalars;
    },
    // 工具栏的点击事件
    yCalchange() {
      this.Yvisiable = true;
    },
    reyCalchange() {
      this.llsvisiable = true;
    },
    atmoCalchange() {},
    // 弹框执行事件
    // 弹框执行事件
    referencevisiable() {
      this.parameterObjclone = JSON.parse(sessionStorage.getItem("res"));
      this.parameterObj.nmlParam = this.parameterObjclone.nmlParam;
    },

    timeasmvisiable() {
      this.parameterObjclone = JSON.parse(sessionStorage.getItem("res"));
      this.parameterObj.nmlParam = this.parameterObjclone.nmlParam;
      this.dialog.timeasm_visiable = false;
    },
    runcvisiable() {
      this.parameterObjclone = JSON.parse(sessionStorage.getItem("res"));
      this.parameterObj.nmlParam = this.parameterObjclone.nmlParam;
      this.dialog.runc_visiable = false;
    },
    dialogbtnkew() {
      this.form1.ssd = "";
      var kelvins = parseFloat(this.form1.kelvins);
      this.form1.ssd = this.accAdd(kelvins, 273.15);
      //  this.form.ssd = Math.floor((parseInt(this.form.kelvins) * 100) / 100)-273.15
      if (this.form1.ssd < 0) {
        this.form1.ssd = 0;
      }
    },
    accAdd(arg1, arg2) {
      var r1, r2, m;
      try {
        r1 = arg1.toString().split(".")[1].length;
      } catch (e) {
        r1 = 0;
      }
      try {
        r2 = arg2.toString().split(".")[1].length;
      } catch (e) {
        r2 = 0;
      }
      m = Math.pow(10, Math.max(r1, r2));
      return (arg1 * m - arg2 * m) / m;
    },

    dialogbtnssd() {
      this.form1.kelvins = "";
      var ssd = parseFloat(this.form1.ssd);
      this.form1.kelvins = this.accAdd(ssd, -273.15);
      //this.form.kelvins = Math.floor((parseInt(this.form.ssd) * 100) / 100) +273.15
    },
    dialogbtny() {
      let u_freestream = eval(this.form.u_freestream);
      if (u_freestream <= 0.0) {
        alert("Free stream velocity must be greater than zero");
        return;
      }

      let rho = eval(this.form.rho);
      if (rho <= 0.0) {
        alert("Density must be greater than zero");
        return;
      }
      let L = eval(this.form.L);
      if (L <= 0.0) {
        alert("Boundary layer reference length must be greater than zero");
        return;
      }
      let mu = eval(this.form.mu);
      if (mu <= 0.0) {
        alert("Dynamic viscosity must be greater than zero");
        return;
      }
      let y_plus_desired = eval(this.form.y_plus_desired);
      if (y_plus_desired <= 0.0) {
        alert("Desired y+ value must be greater than zero");
        return;
      }
      let Re = (rho * u_freestream * L) / mu;
      let C_f = 0.026 * Math.pow(Re, -(1.0 / 7.0));
      C_f = 0.0576 * Math.pow(Re, -1.0 / 5.0);
      C_f = 0.37 * Math.pow(Math.log(Re) / Math.log(10), -2.584);
      C_f = Math.pow((2 * Math.log(Re)) / Math.log(10) - 0.65, -2.3);
      let tau_w = C_f * 0.5 * rho * u_freestream * u_freestream;
      let U_f = Math.sqrt(tau_w / rho);
      let wall_distance_estimation = (y_plus_desired * mu) / (U_f * rho);
      this.form.Rex = Re.toExponential(1);
      this.form.dtc = wall_distance_estimation.toExponential(1);
    },
    leinsdialogbtny() {
      this.form.Re =
        (this.form.lmi * this.form.lls * this.form.lld) / this.form.ldlzxxs;
      // console.log(this.form.Re);
    },
    unitConversion() {
      this.$refs.Calculator.visiable = true;
    },
    taskchangGeneal() {
      this.TaskGenealshow = false;
    },
    taskchangPhysics() {
      this.TaskPhysicsshow = false;
    },
    taskchangSolution() {
      this.TaskSolutionshow = false;
    },
    taskchangSurface() {
      this.TaskSurfaceshow = false;
    },
    taskchangVolume() {
      this.TaskVolumeshow = false;
    },
    //  Contour
    showLeftMenu(emt) {
      this.leftMenu_2Show = true;
    },
    uploadRequest1(params) {
      let param = new FormData();
      param.append("transCode", "A00102");
      param.append("file", params.file);
      param.append("projectId", this.project.projectId);
      uploadFile(param)
        .then((res) => {
          this.findParam();
          this.getHCFDLoadFiles();
        })
        .catch((err) => {});
    },
    uploadRequest2(params) {
      let param = new FormData();
      param.append("transCode", "A00102");
      param.append("file", params.file);
      param.append("projectId", this.project.projectId);
      uploadFile(param)
        .then((res) => {
          this.findParam();
        })
        .catch((err) => {});
    },
    //获取上传文件
    async getHCFDLoadFiles() {
      let params = {
        transCode: "A00110",
        projectId: this.project.projectId,
      };
      await request(params)
        .then((res) => {
          this.project.loadfils = res.files;
          this.fileNames = [];
          res.files.forEach((url) => {
            let names = url.filepath.split("/");
            let name = names[names.length - 1];
            this.fileNames.push(name);
          });
        })
        .catch((err) => {});
    },
    /**
     * 更新配置 并求解
     */
    //选择step
    bStepChange(val) {
      console.log(val);
      this.Stepe = val;
      let numstepe = 0;
      if (this.Stepe == 0) {
        Message({
          type: "warning",
          message: "请选择setp有效值",
        });
      }
      this.animationobj.firststep = this.boundaryStep[0];
      this.animationobj.laststep =
        this.boundaryStep[this.boundaryStep.length - 1];
      this.animationobj.currentstep = this.bStep;
    },
    //选择step
    vStepChange(val) {
      this.Stepe = val;
      if (val == 0) {
        Message({
          type: "warning",
          message: "请选择setp有效值",
        });
      }

      this.animationobj.firststep = this.volumStep[0];
      this.animationobj.laststep = this.volumStep[this.volumStep.length - 1];
      this.animationobj.currentstep = val;
      //     for(let i=0;i<=this.boundaryStep.length-1;i++){
      //       if(this.Stepe==this.boundaryStep[i]){
      //        this.countnum= i;
      //       }
      //  }
    },
    // 表面加载
    SurfaceChange(value) {
      // 选择色条个数
      this.Surfacenum = value;
    },
    // 体积
    VolumenumChange(value) {
      // 选择色条个数
      this.Volumenum = value;
    },
    async reUpload() {
      this.$refs.mapbc.uploader.upload();
      this.$refs.ugrid.uploader.upload();
    },
    async ugridShow() {
      if (
        this.project.projectId == "" ||
        this.project.projectId == undefined ||
        this.project.projectId == null
      ) {
        Message({
          type: "error",
          message: "缺少文件，请检查修改",
        });
      } else {
        this.dialog.new_visiable = false;
        this.tstep = 0;
        this.clearserver();
        this.initWebSocket();
      }
    },
    async findParam() {
      let params = {
        transCode: "A00107",
        projectId: this.project.projectId,
      };
      await request(params)
        .then((res) => {
          this.project.projectName = res.projectName;
          this.project.uid = res.uid;
          let cjuserid = this.$route.query.cjuserid;
          sessionStorage.setItem("projectName", res.projectName);
          if (res.missionType === "3" || res.missionType === "4") {
            this.missType = false;
          } else {
            this.missType = true;
          }

          console.log(this.parameterObj);
          this.parameterObj = JSON.parse(res.parameterObj);
          sessionStorage.setItem("res", res.parameterObj);
          this.lsolverState = res.solverState;
        })
        .catch((err) => {});
    },
    //上传配置参数
    async updateParam() {
      delete this.parameterObj.nmlParam.initialization;
      let params = {
        transCode: "A00104",
        parameterObj: JSON.stringify(this.parameterObj),
        projectId: this.project.projectId,
        lesseeId: this.$store.getters.lesseeId,
      };
      //   console.log(this.parameterObj.nmlParam.a_u);
      // console.log(this.parameterObj);
      await request(params)
        .then((res) => {
          this.solverState = res.solverState;
        })
        .catch((err) => {});
    },
    loadProjects() {
      this.dialog.load_visiable = true;
      let params = {
        transCode: "A00101",
        page: 1,
        size: 1,
        projectType: "hcfd",
        lesseeId: this.$store.getters.lesseeId,
      };
      this.loading = true;
      request(params)
        .then((res) => {
          this.projects = res.rows;
          this.loading = false;
        })
        .catch((err) => {});
    },
    projectsSelectionChange(val) {
      this.clearAll();
      if (val.length == 1) {
        this.project.projectId = val[0].projectId;
        this.project.projectName = val[0].projectName;
        this.project.projectDesc = val[0].projectDesc;

        this.xiugai = val[0];
      } else if (val.length > 1) {
        this.project.projectId = val[1].projectId;
        this.project.projectName = val[1].projectName;
        this.project.projectDesc = val[1].projectDesc;
        this.xiugai = val[1];
      }
    },
    projectsSelectionSelect(selection, row) {
      if (selection.length <= 1) return;
      this.$refs.projectsTable.clearSelection();
      this.$refs.projectsTable.toggleRowSelection(row, true);
    },
    //load状态回调
    fileLoadeState(files) {
      files.forEach((file) => {
        this.loadObjs.forEach((obj) => {
          if (obj.type == 2) {
            if (obj.filename === file.name) {
              obj.percentage = file.percentage;
            }
          }
          if (obj.type == 1) {
            //  obj.message=file.message;
          }
        });
      });
    },

    boundaryChange(boundaryid) {
      this.boundaryid = boundaryid;
      this.parameterObj.hcfdBoundarys.forEach((hcfdBoundary) => {
        if (hcfdBoundary.id === boundaryid) {
          this.Physics.hcfdBoundaryquery = hcfdBoundary;
          this.Physics.Boundary.cquery = hcfdBoundary.conditionsCode;
          return;
        }
      });
    },
    conditionsChange(conditionsCode) {
      this.Physics.hcfdBoundaryquery.conditionsCode = conditionsCode;
      this.parameterObj.hcfdBoundarys.forEach((hcfdBoundary) => {
        if (hcfdBoundary.id === this.boundaryid) {
          this.Physics.hcfdBoundaryquery = hcfdBoundary;
          this.Physics.Boundary.cquery = hcfdBoundary.conditionsCode;
          return;
        }
      });
    },

    solutionbCheckAllChange(val) {
      if (val == true) {
        this.parameterObj.nmlParam.a_u = true;
        this.parameterObj.nmlParam.a_v = true;
        this.parameterObj.nmlParam.a_w = true;
        this.parameterObj.nmlParam.a_p = true;
        this.parameterObj.nmlParam.a_cp = true;
        this.parameterObj.nmlParam.a_mach = true;
        this.parameterObj.nmlParam.a_vort_mag = true;
        this.parameterObj.nmlParam.a_vort_x = true;
        this.parameterObj.nmlParam.a_vort_y = true;
        this.parameterObj.nmlParam.a_vort_z = true;
        this.parameterObj.nmlParam.a_q_criterion = true;
        this.Solution.boundaryout.isIndeterminate = false;
      } else {
        this.parameterObj.nmlParam.a_u = false;
        this.parameterObj.nmlParam.a_v = false;
        this.parameterObj.nmlParam.a_w = false;
        this.parameterObj.nmlParam.a_p = false;
        this.parameterObj.nmlParam.a_cp = false;
        this.parameterObj.nmlParam.a_mach = false;
        this.parameterObj.nmlParam.a_vort_mag = false;
        this.parameterObj.nmlParam.a_vort_x = false;
        this.parameterObj.nmlParam.a_vort_y = false;
        this.parameterObj.nmlParam.a_vort_z = false;
        this.parameterObj.nmlParam.a_q_criterion = false;
        this.Solution.boundaryout.isIndeterminate = false;
      }
    },
    solutionbCheckedCitiesChange(value) {
      let checkedCount = value.length;
      this.Solution.boundaryout.checkAll =
        checkedCount === this.Solution.boundaryout.lists.length;
      this.Solution.boundaryout.isIndeterminate =
        checkedCount > 0 &&
        checkedCount < this.Solution.boundaryout.lists.length;
      this.solutionbSetParam();
    },
    solutionbSetParam() {
      this.Solution.boundaryout.checkeds.forEach((cell) => {
        switch (cell) {
          case "X-component of velocity":
            console.log(this.parameterObj.nmlParam.a_u);
            this.parameterObj.nmlParam.a_u = true;
            break;
          case "Y-component of velocity":
            this.parameterObj.nmlParam.a_v = true;
            break;
          case "Z-component of velocity":
            this.parameterObj.nmlParam.a_w = true;
            break;
          case "Press":
            this.parameterObj.nmlParam.a_p = true;
            break;
          case "Press coefficient":
            this.parameterObj.nmlParam.a_cp = true;
            break;
          case "Mach Number":
            this.parameterObj.nmlParam.a_mach = true;
            break;
          case "Vorticity magnitude":
            this.parameterObj.nmlParam.a_vort_mag = true;
            break;
          case "X-component of vorticity":
            this.parameterObj.nmlParam.a_vort_x = true;
            break;
          case "Y-component of vorticity":
            this.parameterObj.nmlParam.a_vort_y = true;
            break;
          case "Z-component of vorticity":
            this.parameterObj.nmlParam.a_vort_z = true;
            break;
          case "Q Criterion":
            this.parameterObj.nmlParam.a_q_criterion = true;
            break;
          default:
            break;
        }
      });
    },

    solutionvCheckAllChange(val) {
      // this.Solution.volumout.checkeds = val ? this.Solution.volumout.lists : [];
      // this.Solution.volumout.isIndeterminate = false;
      // this.solutionbSetParam();
      if (val == true) {
        this.parameterObj.nmlParam.v_u = true;
        this.parameterObj.nmlParam.v_v = true;
        this.parameterObj.nmlParam.v_w = true;
        this.parameterObj.nmlParam.v_p = true;
        this.parameterObj.nmlParam.v_cp = true;
        this.parameterObj.nmlParam.v_mach = true;
        this.parameterObj.nmlParam.v_vort_mag = true;
        this.parameterObj.nmlParam.v_vort_x = true;
        this.parameterObj.nmlParam.v_vort_y = true;
        this.parameterObj.nmlParam.v_vort_z = true;
        this.parameterObj.nmlParam.v_q_criterion = true;
      } else {
        this.parameterObj.nmlParam.v_u = false;
        this.parameterObj.nmlParam.v_v = false;
        this.parameterObj.nmlParam.v_w = false;
        this.parameterObj.nmlParam.v_p = false;
        this.parameterObj.nmlParam.v_cp = false;
        this.parameterObj.nmlParam.v_mach = false;
        this.parameterObj.nmlParam.v_vort_mag = false;
        this.parameterObj.nmlParam.v_vort_x = false;
        this.parameterObj.nmlParam.v_vort_y = false;
        this.parameterObj.nmlParam.v_vort_z = false;
        this.parameterObj.nmlParam.v_q_criterion = false;
        this.Solution.volumout.isIndeterminate = false;
      }
    },
    solutionvCheckedCitiesChange(value) {
      let checkedCount = value.length;
      console.log(value);
      this.Solution.volumout.checkAll =
        checkedCount === this.Solution.volumout.lists.length;
      this.Solution.volumout.isIndeterminate =
        checkedCount > 0 && checkedCount < this.Solution.volumout.lists.length;
      this.solutionvSetParam();
    },
    solutionvSetParam() {
      this.Solution.volumout.checkeds.forEach((cell) => {
        switch (cell) {
          case "X-component of velocity":
            this.parameterObj.nmlParam.v_u = true;
            break;
          case "Y-component of velocity":
            this.parameterObj.nmlParam.v_v = true;
            break;
          case "Z-component of velocity":
            this.parameterObj.nmlParam.v_w = true;
            break;
          case "Press":
            this.parameterObj.nmlParam.v_p = true;
            break;
          case "Press coefficient":
            this.parameterObj.nmlParam.v_cp = true;
            break;
          case "Mach Number":
            this.parameterObj.nmlParam.v_mach = true;
            break;
          case "Vorticity magnitude":
            this.parameterObj.nmlParam.v_vort_mag = true;
            break;
          case "X-component of vorticity":
            this.parameterObj.nmlParam.v_vort_x = true;
            break;
          case "Y-component of vorticity":
            this.parameterObj.nmlParam.v_vort_y = true;
            break;
          case "Z-component of vorticity":
            this.parameterObj.nmlParam.v_vort_z = true;
            break;
          case "Q Criterion":
            this.parameterObj.nmlParam.v_q_criterion = true;
            break;
          default:
            break;
        }
      });
    },
    //显示 UgridLoad
    async showUgrid() {
      console.log(this.showUgridflag);
      this.$refs.monitor.hiden();
      if (!this.showUgridflag) {
        //是否显示过
        this.$refs.ugridLoad.clear();
        if (this.project.loadfils.length == 0) {
          await this.getHCFDLoadFiles();
        }
        this.project.loadfils.forEach((url) => {
          if (url.filepath.indexOf(".ugrid") > 0) {
            this.ugridUrl = url.filepath;
          }
        });

        this.$refs.ugridLoad.loadUgrid(this.ugridUrl, 1);
        this.showUgridflag = true;
      } else {
        this.$refs.ugridLoad.nhiden();
      }
    },
    //显示 Surface
    async showSurface() {
      let mesh = false;
      let contour = false;
      this.belementCheckeds.forEach((ele) => {
        if ("Mesh" == ele) {
          mesh = true;
        } else if ("Contour" == ele) {
          contour = true;
        }
      });
      this.$refs.ugridLoad.hiden();
      this.$refs.volumLoad.hiden();
      this.$refs.monitor.hiden();
      if (!this.showSurfaceflag) {
        if (this.project.solverfiles.length == 0) {
        }
        let burl;

        this.project.solverBoundaryUrls.forEach((url) => {
          if (url.indexOf(this.bStep + ".dat") > 0) {
            burl = url;
          }
        });
        if (mesh) {
          this.$refs.boundaryLoad.loadBoundary(burl, 1, this.bScalar);
        }
        if (contour) {
          this.$refs.boundaryLoad.loadBoundary(burl, 2, this.bScalar);
        }
        this.showSurfaceflag = true;
      } else {
        this.$refs.boundaryLoad.clear();
        this.$refs.boundaryLoad.nhiden();
        if (mesh) {
          this.$refs.boundaryLoad.mesh(this.bScalar);
        }
        if (contour) {
          this.$refs.volumLoad.vdivb = false;
          this.$refs.boundaryLoad.divb = true;
          this.$refs.boundaryLoad.contour(this.bScalar);
        }
      }
    },
    large() {
      this.$refs.ugridLoad.large();
      this.$refs.boundaryLoad.large();
      this.$refs.volumLoad.large();
    },
    small() {
      this.$refs.ugridLoad.small();
      this.$refs.boundaryLoad.small();
      this.$refs.volumLoad.small();
    },
    positive(axis) {
      this.$refs.ugridLoad.positive(axis);
      this.$refs.boundaryLoad.positive(axis);
      this.$refs.volumLoad.positive(axis);
    },
    negative(axis) {
      this.$refs.ugridLoad.negative(axis);
      this.$refs.boundaryLoad.negative(axis);
      this.$refs.volumLoad.negative(axis);
    },
    // 资源选择代码
    showresource() {
      this.dialog.ziyuan = true;
      this.getresource();
    },
    //获取资源代码
    getresource() {
      const loading = this.$loading({
        lock: true,
        text: "Loading",
        spinner: "el-icon-loading",
        background: "rgba(0, 0, 0, 0.7)",
      });
      setTimeout(() => {
        const params = {
          transCode: "HG00000",
          page: this.paginationConfig.page,
          count: this.paginationConfig.size,
          lesseeId: this.$store.getters.lesseeId,
        };
        request(params)
          .then((res) => {
            loading.close();
            this.ziyprojects = res.rows;
            this.paginationConfig.total = res.total;
            this.resourcelook();
          })
          .catch((err) => {
            loading.close();
          });
      }, 500);
    },
    getPagination(data) {
      this.paginationConfig = data;
      this.getresource();
    },
    //选中
    ziySelectionChange(val) {
      let id = [];
      val.map((item) => {
        id.push(item.id);
      });
      this.selsectid = id.join(",");
    },
    ziySelectionSelect(selection, row) {},
    // 日志的文本框
    footerShows(evt) {
      if (evt == "claer") {
        this.logs = "";
      } else {
        this.footerShow = !this.footerShow;
      }
    },
    //保存
    resourceOK() {
      const params = {
        transCode: "HG00002",
        otherId: this.project.projectId,
        type: "1",
        resourceIds: this.selsectid,
        lesseeId: this.$store.getters.lesseeId,
      };
      request(params)
        .then((res) => {
          Message({
            type: "success",
            message: "保存成功",
          });
          this.dialog.ziyuan = false;
        })
        .catch((err) => {});
    },
    changest(val) {},
    // 查看已经中的
    resourcelook() {
      const loading = this.$loading({
        lock: true,
        text: "Loading",
        spinner: "el-icon-loading",
        background: "rgba(0, 0, 0, 0.7)",
      });
      const params = {
        transCode: "HG00001",
        otherId: this.project.projectId,
        type: "1",
        lesseeId: this.$store.getters.lesseeId,
      };
      request(params)
        .then((res) => {
          loading.close();
          let rst = res.rows;
          console.log(res);
          this.$refs.multipleTable.clearSelection();
          if (rst.length > 0) {
            for (var i = 0; i < rst.length; i++) {
              for (let j = 0; j < this.ziyprojects.length; j++) {
                if (this.ziyprojects[j].id === rst[i].resourceId) {
                  this.$refs.multipleTable.toggleRowSelection(
                    this.ziyprojects[j],
                    true
                  );
                }
              }
            }
          } else {
          }
        })
        .catch((err) => {
          loading.close();
        });
    },
    closeOff(val) {
      if (val == "on") {
        this.Consoleshow = true;
        this.openshow = false;
      } else {
        this.Consoleshow = false;
        this.openshow = true;
      }
    },
    //动画
    // 循环步数
    Startclick() {
      let that = this;
      this.countnum = Number(this.animationobj.firststep) - this.median;
      this.value1 = Number(this.animationobj.currentstep);
      this.sign == "Start";
      this.lowbool = false;
      this.Quickbool = false;
      this.Startbool = true;
      that.signnum = true;
      that.numan = true;
      that.timesleep3(1000);
    },
    stepfun() {
      for (let i = 0; i <= this.hcfdSteplist.length - 1; i++) {
        //this.hcfdSteplist.length-1
        if (this.hcfdSteplist[i] == this.animationobj.currentstep) {
          this.countnum = i;
        }
      }
    },
    timesleep(time) {
      this.signnum = true;
      const sleep = (timeout = time) =>
        new Promise((resolve, reject) => {
          setTimeout(resolve, timeout);
        });
      let timer = async (timeout) => {
        for (let i = this.countnum; i <= this.hcfdSteplist.length - 1; i++) {
          if (this.signnum == true && this.lowbool == true) {
            await sleep(time);
            this.jiekou(this.hcfdSteplist[i]);
          } else {
            break;
          }
        }
      };
      timer(time);
    },
    timesleep2(time) {
      this.signnum = true;
      const sleep = (timeout = time) =>
        new Promise((resolve, reject) => {
          setTimeout(resolve, timeout);
        });
      let timer = async (timeout) => {
        for (let i = this.countnum; i <= this.hcfdSteplist.length - 1; i++) {
          if (this.signnum == true && this.Quickbool == true) {
            await sleep(time);
            this.jiekou(this.hcfdSteplist[i]);
          } else {
            break;
          }
        }
      };
      timer(time);
    },
    timesleep3(time) {
      this.signnum = true;
      const sleep = (timeout = time) =>
        new Promise((resolve, reject) => {
          setTimeout(resolve, timeout);
        });
      let timer = async (timeout) => {
        for (let i = this.countnum; i <= this.hcfdSteplist.length - 1; i++) {
          if (this.signnum == true && this.Startbool == true) {
            await sleep(time);
            this.jiekou(this.hcfdSteplist[i]);
          } else {
            break;
          }
        }
      };
      timer(time);
    },
    //sliderchange
    sliderchange(val) {
      this.animationobj.currentstep = val + "";
      this.value1 = val;
      this.jiekou(this.animationobj.currentstep);
    },
    //Low/2
    lowclick() {
      let that = this;
      that.sign = "Low";
      this.lowbool = true;
      this.Quickbool = false;
      this.Startbool = false;
      that.signnum = true;
      that.numan = true;
      that.timesleep(2000);

      //  }
    },
    Quickclick() {
      let that = this;
      that.sign = "Quick";
      this.lowbool = false;
      this.Quickbool = true;
      this.Startbool = false;
      that.signnum = true;
      that.numan = true;
      that.timesleep2(100);
    },
    //上一个
    Lastclick() {
      let startstep = Number(this.animationobj.firststep);
      if (this.value1 <= startstep) {
        Message({
          type: "warning",
          message: "已经是最开始一张",
        });
      } else {
        console.log(this.median);
        this.animationobj.currentstep =
          Number(this.animationobj.currentstep) - this.median;
        console.log(this.animationobj.currentstep);
        this.jiekou(this.animationobj.currentstep);
      }
    },
    // 下一个
    Nextclick() {
      let laststep = Number(this.animationobj.laststep);
      if (this.value1 >= laststep) {
        Message({
          type: "warning",
          message: "已经是最后一张",
        });
      } else {
        this.animationobj.currentstep =
          Number(this.animationobj.currentstep) + this.median;
        console.log(this.animationobj.currentstep);
        this.jiekou(this.animationobj.currentstep);
      }
    },
    // 点击一下循环，再点击一下停止备注记录长度在循环
    Playstop() {
      if (this.numan == true) {
        this.signnum = false;
        this.numan = false;
      } else {
        // this.numan=true;
        if (this.sign == "Low") {
          this.lowclick();
          this.signnum = true;
        } else if (this.sign == "Quick") {
          this.signnum = true;
          this.Quickclick();
        } else if (this.sign == "Start") {
          this.signnum = true;
          this.Startclick();
        } else {
        }
      }
    },

    // 最后一张
    Endclick() {
      this.jiekou(this.animationobj.laststep);
    },
    // 接口
    jiekou(step) {
      this.value1 = Number(step);
      let that = this;
      this.animationobj.currentstep = step + "";
      let params = {
        transCode: "AFT003", // 服务器渲染实例接口创建推流
        pid: this.project.projectId,
        solverConfigId: this.solverConfigid,
        animationType: this.animaval,
        step: this.animationobj.currentstep,
        isVolume: this.isVolume,
      };
      this.loading = true;
      request(params)
        .then((res) => {
          console.log(res);
          this.$parent.chaild(res.img);
        })
        .catch((err) => {});
    },
    // 划分类型按钮
    Partitiontype(){
     
  if(this.meshval=='1'){
      this.objmesh.tetraParam=this.tetraParam1;
      this.objmesh.hexaParam=null;
      this.objmesh.hybridParam=null;
    }else if(this.meshval=='2'){
      this.objmesh.tetraParam=null;
      this.objmesh.hexaParam=this.hexaParam1;
      this.objmesh.hybridParam=null;
    }else if(this.meshval=='3'){
      this.objmesh.tetraParam=null;
      this.objmesh.hexaParam=null;
      this.objmesh.hybridParam=this.hybridParam1;
    }else{
      this.objmesh.tetraParam=null;
      this.objmesh.hexaParam=null;
      this.objmesh.hybridParam=null;
    }
    },
    checksetchange(val){
       let correct_surface_intersections=this.objmesh.surfParam2.correct_surface_intersections;
      if(correct_surface_intersections=='yes'){
        this.disabledset=true;
      this.objmesh.surfParam2.optimisation='no';
      }else{
         this.disabledset=false;
      }
    },
   facechange(){
     let that=this;
      if(this.facecheckbox){
  
        this.disabledface=false;
          this.objmesh.cleanerParam=this.cleanerParam1;
      }else{
        this.objmesh.cleanerParam=null;
        this.disabledface=true;
      }
   },
   jiegchange(){
  
     if(this.jiegradioval==true){
       this.objmesh.cleanerParam.overlap_angle=  this.cleanerParam1.overlap_angle
       this.objmesh.cleanerParam.resolution_length= this.cleanerParam1.resolution_length
       this.jiegdisabled=false;
     }else{
       this.jiegdisabled=true;
    
     }
   },
  //上传网格划分参数接口
   meshSplitok() {
     if(this.facecheckbox==false){
       this.objmesh.cleanerParam=null
     }else{
          this.objmesh.cleanerParam=this.cleanerParam1;
     if(this.jiegradioval==true){
         this.objmesh.cleanerParam.overlap_angle=  this.cleanerParam1.overlap_angle;
       this.objmesh.cleanerParam.resolution_length= this.cleanerParam1.resolution_length;
     }else{
     this.objmesh.cleanerParam.overlap_angle= '';
       this.objmesh.cleanerParam.resolution_length= '';
     }
      }
      console.log(this.objmesh);
      const params = {
        transCode: "AFT001",
        pid: this.project.projectId,
        solverConfigId: this.solverConfigid,
        action:"meshSplit",
        paramJson:JSON.stringify(this.objmesh),
      };
      request(params)
        .then((res) => {
          console.log(res);
        })
        .catch((err) => {});
    },
  },
  watch: {
    "animationobj.currentstep"() {
      this.stepfun();
    },
    deep: true,
  },
};
</script>
<style lang="scss" >
@import "@/styles/variables.scss";
@import "@/styles/mixin.scss";
.hcfdlab {
  .el-input__inner {
    line-height: 30px;
    height: 30px;
  }
}
html,
body {
  width: 100%;
  height: 100%;
}
.el-tabs__content {
  padding: 0 5px;
}
.content {
  display: flex;
  height: 100%;
  position: relative;
  .left {
    width: 200px;
    height: 100%;
    flex-direction: column;
    padding: 15px;
    position: relative;
    height: 88vh;
  }
  .part-panel-collapse-handle {
    position: absolute;
    // right: -56px;
    left: -38px;
    top: 44%;
    width: 94px;
    height: 0;
    cursor: pointer;
    text-align: center;
    border-width: 0 20px 18px;
    line-height: 18px;
    border-style: none solid solid;
    transform: rotateZ(90deg);
    font-size: 19px;
  }
  .lbg_color3 i:before {
    transform: rotateZ(0);
  }
  .right {
    flex: 1;
    height: 100%;
    height: 78vh;
    position: relative;
  }
  .imgcontent img {
    font-size: 16px;
  }
  .slide-fade-enter-active {
    transition: all 0.3s ease;
  }
}
.tablist {
  border-bottom: 1px solid #999;
  padding: 3px 0;
}
.tablist .tabitem {
  color: #b6b6b6;
  font-size: 16px;
  padding-right: 5px;
  cursor: pointer;
  &.current {
    color: #fff;
  }
}

.imgzong {
  display: flex;
  padding-top: 4px;
  overflow: auto;
  white-space: nowrap;
  .el-image {
    width: 30px;
    vertical-align: middle;
  }
}
.imgzong::-webkit-scrollbar {
  /*滚动条整体样式*/
  width: 4px; /*高宽分别对应横竖滚动条的尺寸*/
  height: 4px;
}
.imgzong::-webkit-scrollbar-thumb {
  /*滚动条里面小方块*/
  border-radius: 5px;
  -webkit-box-shadow: inset005pxrgba(0, 0, 0, 0.2);
  background: rgba(0, 0, 0, 0.2); /*设置滚动条颜色*/
}
.imgzong::-webkit-scrollbar-track {
  /*滚动条里面轨道*/
  -webkit-box-shadow: inset005pxrgba(0, 0, 0, 0.2);
  border-radius: 0;
  // background:rgba(255,255,255,0.1);
  background: rgba(255, 255, 255, 0);
}
.item1,
.item2 {
  cursor: pointer;
}
.imgzong .item1 {
  padding-right: 4px;
  padding: 4px 4px;
}
.shu {
  padding: 4px 10px;
  color: #666;
}
.el-tabs__item {
  color: #b6b6b6;
  font-size: 16px;
}
.meshcalss{
  position: absolute;
    display: inline-block;
    top: -13px;
    left: 12%;
    margin: 0 auto;
    margin-left: -27px;
    font-size: 12px;
    padding: 3px 5px;
    background-color: #ffff;
    color:#333;
    .el-checkbox__label{
        color:#333;
    }
}
.jieguo{
  display: flex;
  .jiegleft{
    width: 35%;
    .el-radio__label{
      font-size: 12px;
    }
  } 
  .jiegright{
    width: 67%;
  }
}
.textlab {
  display: inline-block;
  vertical-align: middle;
  margin-top: -28px;
}
.anbtn {
  padding: 5px 0;
}
.anbtn1 .anniu {
  padding: 5px 9px;
}
.anbtn .anniu {
  padding: 5px 0;
}
</style>
<style lang="scss" scoped>
.el-checkbox+.el-checkbox{
  margin-left: 0;
}
.activeOrange {
  background-color: rgba(255, 255, 255, 0.3);
  border: 2px solid #fff;
  border-radius: 5px;
  box-sizing: border-box;
}
.imgzong {
  padding-top: 4px;
  .radiocontent {
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .listitem {
    width: auto;
    height: 92px;
    margin: 5px;
    padding: 2px 6px 2px 2px;

    .el-image {
      width: 18px;
      vertical-align: middle;
    }
    span {
      font-size: 14px;
    }
  }
  .item2 {
    .el-image {
      margin: 0 19px;
      width: 60px;
      vertical-align: middle;
      padding: 9px;
    }
    span {
      display: block;
      text-align: center;
    }
  }
}
</style>
<style>
.itemimg {
  display: flex;
  justify-content: center;
  padding: 8px;
}
.el-input-number__decrease,
.el-input-number__increase {
  position: absolute;
  z-index: 1;
  top: 4px;
  width: 31px;
  height: 30px;
  text-align: center;
  background: #f5f7fa;
  color: #606266;
  cursor: pointer;
  font-size: 13px;
}
.el-tabs--bottom .el-tabs__header.is-bottom {
  margin: 0;
}
.el-tabs__header {
  margin: 0;
}
.imgcontent {
  padding: 0 15px;
}
.el-tabs__item {
  height: 30px;
  line-height: 30px;
  padding: 0 8px;
  font-size: 12px;
}
.el-tabs--border-card {
  background-color: none;
}
.baoshi {
  margin-top: 4px;
  color: #b6b6b6;
}

.el-tabs--border-card > .el-tabs__header .el-tabs__item.is-active {
  background-color: #757070;
}

.el-dialog__header {
  padding: 15px 20px 10px;
}

.textselsect {
  position: absolute;
  z-index: 9;
  bottom: 1px;
  right: 7px;
  z-index: 9;
}

.dialoglocation {
  position: absolute;
  top: -15vh;
  left: 10px;
}
.el-dialog__wrapper {
  top: 15vh;
}
</style>
// 样式大全
<style lang="scss" scoped>
.qijuan {
  padding-left: 25px;
  margin-bottom: 20px;
}
.el-dialog__wrapper {
  top: 20vh;
}
/deep/.textselsect .el-input__inner {
  background-color: rgba(0, 0, 0, 0) !important;
}
.diyi i {
  font-size: 14px;
  color: #c0c4cc;
}
.tupian {
  display: flex;
  justify-content: center;
  align-items: center;
}
.red {
  color: red;
}
.dialog_header {
  align-items: center;
  display: flex;
}
.juli {
  margin-top: 15px;
  width: 100%;
}
</style>
<style lang="scss">
@import "@/styles/variables.scss";
@import "@/styles/mixin.scss";

.heigeinput {
  .el-form-item {
    margin-bottom: 5px;
  }
}
.el-dialog__body {
  padding: 10px 20px 10px 20px;
}
.line {
  width: 100%;
  height: 1px;
  background-color: #999;
  position: relative;
  margin: 30px 0;
  .linetext {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    background-color: #ffff;
    padding: 5px;
    font-size: 12px;
    top: -10px;
    font-weight: 700;
  }
}
.loadclass {
  margin-bottom: 10px;
  display: flex;
  .el-button {
    margin-right: 10px;
  }
  .el-progress {
    width: 100%;
  }
}
.ulist ul {
  display: flex;
  margin: 0;
  padding: 0;
  li {
    flex: 1;
    border: 1px solid #666;
  }
}

.liitem {
  margin-bottom: 5px;
}
.inputwithd .el-input__inner {
  width: 74px;
}
.inputtext .el-input {
  margin-top: 5px;
}
.dancentent {
  display: flex;
  justify-content: center;
  align-items: center;
}
.titleinput .el-input {
  width: 100px;
}

.itemlist {
  display: flex;
}
.listbtn {
  display: flex;
  margin-bottom: 5px;
  .anniu {
    flex: 1;
  }
  .el-checkbox {
    flex: 1;
  }
}
.anniu {
  padding: 5px 28px;
  font-size: 12px;
  margin: 0;
}
.titleinput {
  .el-row {
    padding-left: 10px;
  }
  .el-button {
    padding: 8px 28px;
    font-size: 12px;
  }
  .el-button + .el-button {
    margin: 0;
  }
}
.el-dialog__wrapper {
  z-index: 2300;
}
.tiele {
  width: 324px;
  background-color: #fff;
  position: fixed;
  top: 50%;
  left: 50%;
  z-index: 2049;
  padding: 20px;
  .heder {
    width: 100%;
    height: 40px;
    line-height: 40px;
    font-size: 14px;
    padding: 0 20px;
    border-bottom: 1px solid #eee;
  }
  .tiele_content {
    padding: 20px 20px;
    .el-checkbox {
      display: block;
    }
  }
  p {
    text-align: center;
  }
}
.el-form-item {
  margin: 0;
}
.btntext {
  text-align: center;
  background-color: #757070;
  color: #d5d5d5;
  font-size: 12px;
  padding: 4px 0;
  margin: 5px 0;
  border-radius: 5px;
}
.btnyiban {
  width: 50%;
  background-color: #757070;
  color: #d5d5d5;
}
.fangxiang .el-row {
  display: flex;
  padding-bottom: 10px;
}

.input3 {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-around;
  padding-bottom: 5px;

  .el-input {
    width: 30%;
  }
}
.yiinpu .el-form-item__content {
  display: flex;
  .el-input {
    margin-right: 5px;
  }
}

.saninput {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-around;
  .el-input {
    margin-right: 5px;
  }
  .el-form-item__label {
    text-align: left;
  }
}
// select样式

.selecr {
  font-size: 12px;
  .el-select {
    width: 100%;
      .el-checkbox__label{
        font-size:12px;
  }
  }

}
.btnringth {
  text-align: right;
}
.juli .el-input__inner {
  margin-bottom: 5px;
  width: 100%;
}
</style>
<style lang="scss" scoped>
/deep/.toolbar-part-detail {
  position: relative;
}
/deep/ .el-form-item__label {
  font-size: 12px;
  line-height: 30px;
}
/deep/.el-form-item__content {
  line-height: 30px;
  font-size: 12px;
}
/deep/ .el-input-number__decrease {
  width: 30px;
  line-height: 28px;
}
/deep/ .el-input-number__increase {
  width: 30px;
  line-height: 28px;
}
/deep/ .el-dialog__headerbtn:hover .el-dialog__close {
  color: #fff !important;
}
.el-form-item {
  margin-bottom: 5px;
}
</style>
<style lang="scss" scoped>
.selecttype {
  position: relative;
  margin: 35px 0 20px 0;
  border: 1px solid;
  padding: 15px;
  .divselect {
    display: flex;
    .el-radio {
      height: 23px;
      line-height: 23px;
    }
  }
}
.timeanmiantion {
  line-height: 30px;
  ul {
    display: flex;
    padding-left: 20px;

    li {
      flex: 1;
      span {
        padding-left: 30px;
      }
    }
  }
}
.divselect .el-avatar,
.el-cascader-panel,
.el-radio,
.el-radio--medium.is-bordered .el-radio__label,
.el-radio__label {
  font-size: 12px !important;
}
.texttype {
  position: absolute;
  display: inline-block;
  top: -13px;
  left: 50%;
  margin: 0 auto;
  margin-left: -27px;
  font-size: 12px;
  background-color: #fff;
  padding: 3px 5px;
}
.femFooter {
  height: 135px !important;
  padding: 0;
  position: relative;
}
.footerTitle {
  display: flex;
  justify-content: space-between;
  padding: 5px 20px;
  font-size: 20px;
  height: 30px !important;
  background-color: #bbb;
}
.footerTitle div {
  display: flex;
  justify-content: space-around;
  align-items: center;
}

.footerTitle p {
  margin: 0;
}
.footerTitle span {
  padding: 5px 10px;
  cursor: default;
}

/deep/.footerText .el-textarea__inner {
  width: 100%;
  height: 135px !important;
  border: 0;
  font-size: 12px;
  color: #333;
  padding: 2px;
}
/deep/.shijianges .el-form-item__label{
      text-align: left  !important;
}
.radio_text {
  line-height: 28px;
  .el-radio__label {
    color: #d5d5d5;
  }
  .disacent {
    padding: 6px 0 6px 3.125vw;
    font-size: 12px;
  }
}
.iemradio .el-radio-group {
  padding-left: 50px;
}
.radiooff {
  padding-left: 50px;
}
.el-table th,
.el-table tr {
  background-color: #535353;
}
.beij-container {
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, #ccd3e2 0%, rgba(255, 255, 255, 0) 100%);
}
.el-footer {
  padding: 0;
  height: 149px;
  overflow-y: auto;
}
.radiogroup .el-radio-group {
  display: contents;
}
.logs_title {
  background: #bfc5cb;
  padding: 10px;
  font-size: 16px;
}
.x {
  cursor: default;
  float: right;
}
.exloadbox {
  float: right;
  margin-right: 100px;
  display: flex;
}
.maxh221 {
  max-height: calc(100vh - 10px);
}
.maxh400 {
  max-height: calc(100vh - 410px);
}
body {
  position: relative;
  background-color: #eceef0;
}
.el-loading-mask {
  background: none;
}
.sblock {
  width: 100px;
  display: inline-block;
}
.groupradio .el-radio {
  display: block;
  padding: 5px;
}
.desc {
  width: 100%;
  height: 130px;
  border: 1px solid #000;
  padding: 20px;
  overflow: auto;
}
.Squareline {
  border: 1px solid;
  padding: 10px;
  //  transform: translateX(-50%);
}
.radiogroup {
  display: flex;
}
.radiogroup label {
  flex: 1;
}
.el-radio + .el-radio {
  margin-left: 0;
}
/deep/ .radiogroup .el-radio-button--mini .el-radio-button__inner {
  border-radius: 5px;
}
/deep/ .radiogroup .el-radio-button:last-child .el-radio-button__inner {
  border-radius: 4px;
}
/deep/ .heightclass {
  height: 450px;
  overflow-y: auto;
}
/deep/ .heightclass .el-dialog__header {
  position: fixed;
  z-index: 99;
  width: 385px;
}
/deep/ .heightclass .el-dialog__body {
  margin-top: 60px;
}
.displanblock .el-checkbox {
  display: block;
}
.outline {
  margin-left: 50px;
  font-size: 20px;
}
/deep/.el-dialog__wrapper {
  pointer-events: none;
}
/deep/.el-dialog {
  pointer-events: auto;
}
/deep/ .asideTag2 {
  left: auto;
  right: 10px;
  top: 21px;
  ul {
    display: flex;
    li {
      margin-left: 4px;
      width: 28px;
      height: 28px;
    }
  }
}
.asideTag {
  top: 30px;
}
/deep/ .asideTag ul {
  display: flex;
  li {
    margin-left: 4px;
    width: 28px;
    height: 28px;
  }
}
/deep/
  .el-tabs--top.el-tabs--card
  > .el-tabs__header
  .el-tabs__item:nth-child(2) {
  padding-left: 6px;
}
@media screen and (max-width: 1330px) {
  .headMenu_2 .el-col {
    transform: scale(0.8);
    transform-origin: 0 0;
  }
  .headMenu_2 {
    height: 150px !important;
  }
  .asideTag2,
  .asideTag {
    transform: scale(0.7);
    transform-origin: 0 0;
  }
}
@media screen and (max-width: 1160px) {
  .headMenu_2 .el-col {
    transform: scale(0.7);
    transform-origin: 0 0;
  }
  .asideTag2 {
    left: 91%;
  }
  .el-aside {
    width: 170px !important;
  }
  .headMenu_2 {
    height: 135px !important;
  }
}
.text {
  color: #fff;
  font-size: 14px;
  margin: 0;
}
.y {
  width: 100%;
  height: 100%;
  background-image: url("../../../assets/3d_images/y.png") center 100%;
}
.y2 {
  background-image: url("../../../assets/3d_images/y2.png");
}
body {
  font-family: "微软雅黑";
}

.classfelx {
  flex: 1;
}
.liitem .formLabelWidth8,.formLabelWidth8{
  width: 343px;
}
.liitem .formLabelWidth9 {
  width: 409px;
}
.formLabelWidth15 {
  width: 70px;
  text-align: center;
}
</style>
<style>
.imge {
  width: 25px;
  vertical-align: middle;
}
.textselsect .el-input__inner {
  background-color: rgba(255, 255, 255, 0);
}
.el-color-picker__trigger {
  height: 30px;
  width: 33px;
  padding: 3px;
}
.zoomclass {
  display: inline-block;
  width: 50%;
}
</style>
