|
@@ -2102,7 +2102,7 @@
|
|
|
:style="styX"
|
|
|
>
|
|
|
<div slot="title" class=dialog_header>
|
|
|
- <el-image class="imge" :src="p4" fit="cover" />
|
|
|
+ <el-image class="imge" :src="p9" fit="cover" />
|
|
|
<span class="text-color">Solid Surface</span>
|
|
|
</div>
|
|
|
<el-form :model="form">
|
|
@@ -2128,13 +2128,13 @@
|
|
|
<div class="radio_text text_color liangf">
|
|
|
<div class="classfelx" style="text-align: center;">
|
|
|
<el-radio
|
|
|
- v-model="parameterObj.nmlParam.noninertial_Reference_Frame"
|
|
|
+ v-model="radio"
|
|
|
label="on"
|
|
|
>hide</el-radio>
|
|
|
</div>
|
|
|
<div class="classfelx">
|
|
|
<el-radio
|
|
|
- v-model="parameterObj.nmlParam.noninertial_Reference_Frame"
|
|
|
+ v-model="radio"
|
|
|
label="off"
|
|
|
>show</el-radio
|
|
|
>
|
|
@@ -2154,6 +2154,218 @@
|
|
|
>
|
|
|
</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"
|
|
|
+ :style="styX"
|
|
|
+ >
|
|
|
+ <div slot="title" class=dialog_header>
|
|
|
+ <el-image class="imge" :src="p12" 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() ">添加</el-button>
|
|
|
+ <el-button plain class="anniu" @click="moveTab() ">清除</el-button>
|
|
|
+ </div>
|
|
|
+ <el-tabs v-model="editableTabsValue" type="card" closable @tab-remove="removeTab">
|
|
|
+ <el-tab-pane
|
|
|
+ v-for="item in editableTabs"
|
|
|
+ :key="item.name"
|
|
|
+ :label="item.title"
|
|
|
+ :name="item.name"
|
|
|
+ >
|
|
|
+ {{item.content}}
|
|
|
+ </el-tab-pane>
|
|
|
+</el-tabs>
|
|
|
+ <div class='selecttype'>
|
|
|
+ <span class="texttype">片</span>
|
|
|
+ <el-form-item label="面积_范围" :label-width="formLabelWidth2" >
|
|
|
+ <el-input v-model="slice.fw" autocomplete="off"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <div class="disflex lheig34 liitem">
|
|
|
+ <el-checkbox-group v-model="slice.slicecheck" style="display:flex">
|
|
|
+ <el-checkbox
|
|
|
+ label="Solid"
|
|
|
+ @change="ContourvalVolume()"
|
|
|
+ ></el-checkbox>
|
|
|
+ <el-checkbox
|
|
|
+ label="Sectional plane"
|
|
|
+ @change="ContourvalVolume()"
|
|
|
+ ></el-checkbox>
|
|
|
+ </el-checkbox-group>
|
|
|
+ </div>
|
|
|
+ <div class="line">
|
|
|
+ <div class="linetext">正常值</div>
|
|
|
+ </div>
|
|
|
+ <el-form-item label="X" :label-width="formLabelWidth4" >
|
|
|
+ <el-input v-model="slice.sx" autocomplete="off"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="Y" :label-width="formLabelWidth4" >
|
|
|
+ <el-input v-model="slice.sy" autocomplete="off"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="Z" :label-width="formLabelWidth4" >
|
|
|
+ <el-input v-model="slice.sz" autocomplete="off"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <div class="line">
|
|
|
+ <div class="linetext">位置</div>
|
|
|
+ </div>
|
|
|
+ <div class="yiinpu heigeinput">
|
|
|
+ <el-form-item label="X" :label-width="formLabelWidth4">
|
|
|
+ <el-input v-model="slice.xr" autocomplete="off"></el-input>
|
|
|
+ <span style="width:120px">Xrange:(0,0)</span>
|
|
|
+ </el-form-item>
|
|
|
+ </div>
|
|
|
+ <div class="yiinpu heigeinput">
|
|
|
+ <el-form-item label="Y" :label-width="formLabelWidth4">
|
|
|
+ <el-input v-model="slice.yr" autocomplete="off"></el-input>
|
|
|
+ <span style="width:120px">Yrange:(0,0)</span>
|
|
|
+ </el-form-item>
|
|
|
+ </div>
|
|
|
+ <div class="yiinpu heigeinput">
|
|
|
+ <el-form-item label="Z" :label-width="formLabelWidth4">
|
|
|
+ <el-input v-model="slice.zr" autocomplete="off"></el-input>
|
|
|
+ <span style="width:120px">Zrange:(0,0)</span>
|
|
|
+ </el-form-item>
|
|
|
+ </div>
|
|
|
+ <div class="line">
|
|
|
+ <div class="linetext">位置</div>
|
|
|
+ </div>
|
|
|
+ <el-form-item label="类型" :label-width="formLabelWidth2">
|
|
|
+ <el-select v-model="slice.con" placeholder="请选择">
|
|
|
+ <el-option
|
|
|
+ v-for="item in conlist"
|
|
|
+ :key="item.value"
|
|
|
+ :label="item.name"
|
|
|
+ :value="item.value"
|
|
|
+ >
|
|
|
+ </el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="变量名" :label-width="formLabelWidth2">
|
|
|
+ <el-select v-model="slice.con" placeholder="请选择">
|
|
|
+ <el-option
|
|
|
+ v-for="item in conlist"
|
|
|
+ :key="item.value"
|
|
|
+ :label="item.name"
|
|
|
+ :value="item.value"
|
|
|
+ >
|
|
|
+ </el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="颜色数量" :label-width="formLabelWidth2">
|
|
|
+ <el-input-number v-model="slice.colorlevel" controls-position="right" :min="1" :max="10"></el-input-number>
|
|
|
+ </el-form-item>
|
|
|
+ <div class="disflex lheig34 liitem">
|
|
|
+ <el-checkbox-group v-model="slice.secheck" style="display:flex">
|
|
|
+ <el-checkbox
|
|
|
+ label="Sectionalplane"
|
|
|
+ ></el-checkbox>
|
|
|
+ <el-checkbox
|
|
|
+ label="Scalarvalue"
|
|
|
+ ></el-checkbox>
|
|
|
+ </el-checkbox-group>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ </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="dialog.Slice_Surface= false"
|
|
|
+ >{{ $t("HCFD.file.ok")}}</el-button
|
|
|
+ >
|
|
|
+ <el-button type="primary" @click="dialog.Slice_Surface = false"
|
|
|
+ >Apply</el-button
|
|
|
+ >
|
|
|
+ </div>
|
|
|
+</el-dialog>
|
|
|
+<!-- an_Animation -->
|
|
|
+ <el-dialog :visible.sync="dialog.an_Animation"
|
|
|
+ v-if="active=='five9-0'"
|
|
|
+ :modal='false'
|
|
|
+ :close-on-click-modal="false"
|
|
|
+ @close='activecleer()'
|
|
|
+ custom-class='dialoglocation dialog_color'
|
|
|
+ width="385px"
|
|
|
+ :style="styX"
|
|
|
+ >
|
|
|
+ <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">
|
|
|
+ <div class="line">
|
|
|
+ <div class="linetext">动画</div>
|
|
|
+ </div>
|
|
|
+ <el-form-item label="第一步" :label-width="formLabelWidth2" >
|
|
|
+ <el-input value="PingYi" 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>
|
|
|
+ <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="block1" style="dispaly:flex">
|
|
|
+ <div class="listbtn">
|
|
|
+ <el-button plain class="anniu">点</el-button>
|
|
|
+ <el-slider v-model="value1" style="width:50%"></el-slider>
|
|
|
+ <el-button plain class="anniu">Cells</el-button>
|
|
|
+ </div>
|
|
|
+ <div class="listbtn">
|
|
|
+ <el-button plain class="anniu">Start</el-button>
|
|
|
+ <el-button plain class="anniu">Last</el-button>
|
|
|
+ <el-button plain class="anniu">Play/stop</el-button>
|
|
|
+
|
|
|
+ </div>
|
|
|
+ <div class="listbtn">
|
|
|
+ <el-button plain class="anniu">Next</el-button>
|
|
|
+ <el-button plain class="anniu">End</el-button>
|
|
|
+ </div>
|
|
|
+ <el-form-item label="T_区间" :label-width="formLabelWidth2" >
|
|
|
+ <el-input value="PingYi" autocomplete="off"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <div class="qijuan">正确的范围:(0~50)</div>
|
|
|
+ <div class="listbtn">
|
|
|
+ <el-button plain class="anniu">Edit</el-button>
|
|
|
+ <el-button plain class="anniu">Apply</el-button>
|
|
|
+
|
|
|
+ </div>
|
|
|
+ <div class='selecttype'>
|
|
|
+ <span class="texttype">zoom</span>
|
|
|
+ </div>
|
|
|
+ <!-- <span class="demonstration">Low</span>
|
|
|
+ <el-slider v-model="value1"></el-slider>
|
|
|
+ <span class="demonstration">Quick</span> -->
|
|
|
+ </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'"
|
|
@@ -2253,13 +2465,38 @@
|
|
|
<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 v-model="radio" label="1">点</el-radio>
|
|
|
+ <el-radio v-model="radio" label="2">曲线</el-radio>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <div>
|
|
|
+ <el-form-item label="点大小" :label-width="formLabelWidth2" >
|
|
|
+ <el-input value="PingYi" 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>
|
|
|
+ </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">
|
|
@@ -2274,6 +2511,7 @@
|
|
|
>
|
|
|
</div>
|
|
|
</el-dialog>
|
|
|
+
|
|
|
<!-- 单位计算开始 -->
|
|
|
<el-dialog :visible.sync="visiable"
|
|
|
v-if="active=='six-0'"
|
|
@@ -2496,6 +2734,34 @@ export default {
|
|
|
|
|
|
data() {
|
|
|
return {
|
|
|
+ slice:{
|
|
|
+ fw:'1',
|
|
|
+ slicecheck:'Solid',
|
|
|
+ sx:'',
|
|
|
+ sy:'',
|
|
|
+ sx:'',
|
|
|
+ rx:'',
|
|
|
+ yx:'',
|
|
|
+ zx:'',
|
|
|
+ con:'0',
|
|
|
+ colorlevel:'Sectionalplane',
|
|
|
+ secheck:'',
|
|
|
+ },
|
|
|
+ editableTabsValue: '2',
|
|
|
+ editableTabs: [{
|
|
|
+ title: '1',
|
|
|
+ name: '1',
|
|
|
+ content: 'Tab 1 content'
|
|
|
+ }, {
|
|
|
+ title: '2',
|
|
|
+ name: '2',
|
|
|
+ content: 'Tab 2 content'
|
|
|
+ }],
|
|
|
+ tabIndex: 2,
|
|
|
+
|
|
|
+
|
|
|
+ value1: 0,
|
|
|
+ radio:'',
|
|
|
desclist:[],
|
|
|
boundaryid:'',
|
|
|
desc:'' ,
|
|
@@ -2675,11 +2941,11 @@ export default {
|
|
|
],
|
|
|
displaylist2:[
|
|
|
{ icon:p9, titlie:'Solid Surface'},
|
|
|
- { icon:p12, titlie:'Slice'},
|
|
|
+ { icon:p12, titlie:'片'},
|
|
|
{ icon:p13, titlie:'Stream'},
|
|
|
],
|
|
|
animationlist:[
|
|
|
- { icon:p9, titlie:'Solid Surface'},
|
|
|
+ { icon:p9, titlie:'动画'},
|
|
|
],
|
|
|
Cuelist:[
|
|
|
{ icon:p9, titlie:'Curve Select'},
|
|
@@ -2913,7 +3179,11 @@ export default {
|
|
|
],
|
|
|
},
|
|
|
],
|
|
|
-
|
|
|
+ conlist:[
|
|
|
+ {value:'0', name: "line" },
|
|
|
+ {value:'1', name: "Contour"},
|
|
|
+ ],
|
|
|
+ con:'0',
|
|
|
dialog: {
|
|
|
//弹出框 控制
|
|
|
new_visiable: false,
|
|
@@ -2950,8 +3220,10 @@ export default {
|
|
|
Line_visiable:false,
|
|
|
Vector_visiable:false,
|
|
|
Solid_Surface:false,
|
|
|
+ Slice_Surface:false,
|
|
|
Curve_Select:false,
|
|
|
Curve_Disp1ay:false,
|
|
|
+ an_Animation:false,
|
|
|
},
|
|
|
geneal: {
|
|
|
//数据存储
|
|
@@ -3172,6 +3444,50 @@ export default {
|
|
|
// this.websock.close() //离开路由之后断开websocket连接
|
|
|
// },
|
|
|
methods:{
|
|
|
+ // 添加div
|
|
|
+ addTab(targetName) {
|
|
|
+ let newTabName = ++this.tabIndex + '';
|
|
|
+ this.editableTabs.push({
|
|
|
+ title:newTabName,
|
|
|
+ name: newTabName,
|
|
|
+ slice:{
|
|
|
+ fw:'2',
|
|
|
+ slicecheck:'Solid',
|
|
|
+ sx:'',
|
|
|
+ sy:'',
|
|
|
+ sx:'',
|
|
|
+ rx:'',
|
|
|
+ yx:'',
|
|
|
+ zx:'',
|
|
|
+ con:'0',
|
|
|
+ colorlevel:'Sectionalplane',
|
|
|
+ secheck:'',
|
|
|
+ },
|
|
|
+ });
|
|
|
+ this.editableTabsValue = newTabName;
|
|
|
+ },
|
|
|
+ removeTab(targetName) {
|
|
|
+ let tabs = this.editableTabs;
|
|
|
+ let activeName = this.editableTabsValue;
|
|
|
+ if (activeName === targetName) {
|
|
|
+ tabs.forEach((tab, index) => {
|
|
|
+ if (tab.name === targetName) {
|
|
|
+ let nextTab = tabs[index + 1] || tabs[index - 1];
|
|
|
+ if (nextTab) {
|
|
|
+ activeName = nextTab.name;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+ this.editableTabsValue = activeName;
|
|
|
+ this.editableTabs = tabs.filter(tab => tab.name !== targetName);
|
|
|
+ },
|
|
|
+ //删除新增的tab
|
|
|
+moveTab(targetName){
|
|
|
+ let tabs = this.editableTabs;
|
|
|
+ tabs.pop();
|
|
|
+},
|
|
|
changedesc1(val){
|
|
|
this.desclist=JSON.parse(val);
|
|
|
this.parameterObj.hcfdBoundarys= this.desclist;
|
|
@@ -3465,6 +3781,12 @@ this.styX.left=e.clientX+'px';
|
|
|
break;
|
|
|
case 'five8-0':
|
|
|
this.dialog.Solid_Surface = true;
|
|
|
+ break;
|
|
|
+ case 'five8-1':
|
|
|
+ this.dialog.Slice_Surface= true;
|
|
|
+ break;
|
|
|
+ case 'five9-0':
|
|
|
+ this.dialog.an_Animation = true;
|
|
|
break;
|
|
|
case 'five10-0':
|
|
|
this.dialog.Curve_Select = true;
|
|
@@ -4537,6 +4859,10 @@ html,body{
|
|
|
</style>
|
|
|
// 样式大全
|
|
|
<style lang="scss" scoped>
|
|
|
+.qijuan{
|
|
|
+ padding-left: 25px;
|
|
|
+ margin-bottom: 20px;
|
|
|
+}
|
|
|
.el-dialog__wrapper{
|
|
|
top: 20vh;
|
|
|
}
|
|
@@ -4784,6 +5110,34 @@ display:flex;
|
|
|
}
|
|
|
</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;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+}
|
|
|
+.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;
|