liuqiao пре 3 година
родитељ
комит
87d0d3cccb
4 измењених фајлова са 396 додато и 14 уклоњено
  1. 5 0
      package-lock.json
  2. 1 0
      package.json
  3. 23 0
      public/static/black.css
  4. 367 14
      src/views/index/geometry/index.vue

+ 5 - 0
package-lock.json

@@ -5165,6 +5165,11 @@
       "integrity": "sha512-7vmuyh5+kuUyJKePhQfRQBhXV5Ce+RnaeeQArKu1EAMpL3WbgMt5WG6uQZpEVvYSSsxMXRKOewtDk9RaTKXRlA==",
       "dev": true
     },
+    "el-color-picker": {
+      "version": "1.1.0",
+      "resolved": "https://registry.npmjs.org/el-color-picker/-/el-color-picker-1.1.0.tgz",
+      "integrity": "sha512-A0RUYzv18Lfa/VDDsmSHv5JkJRS3lw6FyrAfgLfgeEwCxqXIPAPJgFnpk4YHyVBVt6Ie8NIJFA8kMRnO3MTJyw=="
+    },
     "electron-to-chromium": {
       "version": "1.3.557",
       "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.557.tgz",

+ 1 - 0
package.json

@@ -20,6 +20,7 @@
     "axios": "0.18.1",
     "browser-md5-file": "^1.1.1",
     "echarts": "^4.9.0",
+    "el-color-picker": "^1.1.0",
     "element-ui": "2.13.0",
     "exports-loader": "^1.1.0",
     "highcharts": "^8.2.2",

+ 23 - 0
public/static/black.css

@@ -71,4 +71,27 @@ background-color: #757070;
     transform: scale(1.3);
     background-color: rgba(255, 255, 255, 0.3);
     
+    }
+    /* dialog其他没有设置颜色 */
+    .dialog_color{
+      background-color: #535353;
+    }
+    .dialog_color .el-input__inner{
+      
+      color: #fff;
+      background-color: #6d6d6d;
+      border: none;
+    }
+    .dialog_color .el-form-item__label{
+      color: #d5d5d5;
+    }
+    .dialog_color .el-radio__label,.el-checkbox__label{
+      color: #d5d5d5;
+    }
+    .dialog_color .el-button {
+      color: #d5d5d5;
+      background-color: #6d6d6d;
+    }
+    .text_color{
+      color: #d5d5d5;
     }

+ 367 - 14
src/views/index/geometry/index.vue

@@ -63,7 +63,7 @@
   <el-checkbox v-model="checked" class="baoshi"> 栅格</el-checkbox>
                  <el-checkbox v-model="checked1" class="baoshi"> 坐标系</el-checkbox>
             <span class="shu">|</span>
-            <div class="item1"  v-for="(itemcj,index) in cjlist"  :key="'info1-'+ index" @click="clickgeometry(index)">
+            <div class="item1"  v-for="(itemcj,index) in cjlist"  :key="'info1-'+ index" :class="{activeOrange:active==index}" @click="clickgeometry(index)">
                 <el-tooltip class="item" effect="dark" :content="itemcj.titlie" placement="bottom">
                     <svg class="icon" aria-hidden="true">
                     <use :xlink:href="`#${itemcj.icon}`" />
@@ -72,7 +72,7 @@
             </el-tooltip>
             </div>
             <span class="shu">|</span>
-                <div class="item1"  v-for="(itemcj,index) in czlist"  :key="'info2-'+ index"  @click="operationclick(index)">
+                <div class="item1"  v-for="(itemcj,index) in czlist"  :key="'info2-'+ index"    @click="operationclick(index)">
                 <el-tooltip class="item" effect="dark" :content="itemcj.titlie" placement="bottom">
                     <el-image :src="itemcj.img" fit="cover" /> 
             </el-tooltip>
@@ -90,7 +90,8 @@
   title="重新编号"
   :visible.sync="dialog.dialogVisible"
    :modal='false'
-  custom-class='dialoglocation'
+  custom-class='dialoglocation dialog_color'
+
   :close-on-click-modal='false'
   width="20%">
   <div slot="title" class=dialog_header>
@@ -166,9 +167,10 @@
 
         <!--几何点  -->
  <el-dialog
+ v-if="activeobj.tabindex=='0'"
   :visible.sync="dialog.dialogVisible2"
   :modal='false'
-  custom-class='dialoglocation'
+  custom-class='dialoglocation dialog_color'
   :close-on-click-modal='false'
   width="385px">
 
@@ -243,9 +245,10 @@
 </el-dialog>
 <!-- 实体 -->
 <el-dialog
+v-if="activeobj.tabindex=='1'"
   :visible.sync="dialog.dialogVisible3"
   :modal='false'
-  custom-class='dialoglocation'
+  custom-class='dialoglocation dialog_color'
   :close-on-click-modal='false'
   width="385px">
   <div slot="title" class=dialog_header>
@@ -358,9 +361,10 @@
 </el-dialog>
 <!-- 曲线 -->
 <el-dialog
+v-if="activeobj.tabindex=='3'"
    :visible.sync="dialog.dialogcurve"
   :modal='false'
-  custom-class='dialoglocation'
+  custom-class='dialoglocation dialog_color'
   :close-on-click-modal='false'
   width="385px">
   <div slot="title" class=dialog_header>
@@ -685,9 +689,10 @@
 </el-dialog>
 <!-- 实体 -->
 <el-dialog
+v-if="activeobj.tabindex=='4'"
   :visible.sync="dialog.piece"
   :modal='false'
-  custom-class='dialoglocation'
+  custom-class='dialoglocation dialog_color'
   :close-on-click-modal='false'
   width="385px">
   <div slot="title" class=dialog_header>
@@ -807,9 +812,10 @@
 </el-dialog>
 <!-- 曲面 -->
 <el-dialog
+v-if="activeobj.tabindex=='5'"
   :visible.sync="dialog.dialogsurface"
   :modal='false'
-  custom-class='dialoglocation'
+  custom-class='dialoglocation dialog_color'
   :close-on-click-modal='false'
   width="385px">
   <div slot="title" class=dialog_header>
@@ -990,9 +996,10 @@
 </el-dialog>
 <!-- 线体 -->
 <el-dialog
+v-if="activeobj.tabindex=='6'"
   :visible.sync="dialog.dialogline"
   :modal='false'
-  custom-class='dialoglocation'
+  custom-class='dialoglocation dialog_color'
   :close-on-click-modal='false'
   width="385px">
   <div slot="title" class=dialog_header>
@@ -1062,9 +1069,10 @@
 <!-- 操作 -->
 <!-- 关联 -->
 <el-dialog
+v-if="activeobj.czindex=='0'"
   :visible.sync="dialog.dialorelevance"
   :modal='false'
-  custom-class='dialoglocation'
+  custom-class='dialoglocation dialog_color'
   :close-on-click-modal='false'
   width="385px">
   <div slot="title" class=dialog_header>
@@ -1176,13 +1184,327 @@
     <el-button type="primary" @click="dialog.setdialog = false">OK</el-button>
   </span>
 </el-dialog>
-<!-- 复制 -->
+<!-- 特征消除 -->
+<el-dialog
+ v-if="activeobj.czindex=='1'"
+  :visible.sync="dialog.dialogremove"
+  :modal='false'
+  custom-class='dialoglocation dialog_color'
+   width="385px"
+  :close-on-click-modal='false'>
+  <div slot="title" class=dialog_header>
+     <el-image :src="cj" fit="cover" />
+     <span>消除特征</span>
+  </div>
+     <div class="selecr">
+     <el-form>
+    <el-form-item label=" 特征" :label-width="formLabelWidth2">
+      <el-select  @change="changest" v-model="kval"  placeholder="请选择">
+    <el-option
+      v-for="item in konglist"
+      :key="item.value"
+      :label="item.name"
+      :value="item.value"
+      >
+    </el-option>
+  </el-select>
+    </el-form-item>
+    <div v-if="kval=='0'">
+    <div class="yiinpu heigeinput">
+    <el-form-item label="探测出的孔/凹槽" :label-width="formLabelWidth6">
+      <el-input v-model="form.name" autocomplete="off"></el-input>
+         <el-button plain class="anniu">清除</el-button>
+    </el-form-item>
+ </div>
+    <div class="line">
+      <div class="linetext">探测</div>
+    </div> 
+    <div class="heigeinput" >
+     <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 class="dan  dancentent">  
+            <div class="yiinpu " style="text-align: center;" >
+         <el-button plain class="anniu">寻找</el-button>
+    </div>
+         </div>
+         </div>
+             <div v-if="kval=='1'">
+    <div class="yiinpu heigeinput">
+    <el-form-item label="探测出的倒圆角/桥接曲面" >
+      <el-input v-model="form.name" autocomplete="off"></el-input>
+         <el-button plain class="anniu">清除</el-button>
+    </el-form-item>
+ </div>
+    <div class="line">
+      <div class="linetext">探测</div>
+    </div> 
+    <div class="heigeinput" >
+     <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 class="dan  dancentent">  
+            <div class="yiinpu " style="text-align: center;" >
+         <el-button plain class="anniu">寻找</el-button>
+    </div>
+         </div>
+         </div>
+             <div v-if="kval=='2'">
+    <div class="yiinpu heigeinput">
+    <el-form-item label="探测出的倒角" :label-width="formLabelWidth6">
+      <el-input v-model="form.name" autocomplete="off"></el-input>
+         <el-button plain class="anniu">清除</el-button>
+    </el-form-item>
+ </div>
+    <div class="line">
+      <div class="linetext">探测</div>
+    </div> 
+    <div class="heigeinput" >
+     <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 class="dan  dancentent">  
+            <div class="yiinpu " style="text-align: center;" >
+         <el-button plain class="anniu">寻找</el-button>
+    </div>
+         </div>
+         </div>
+             <div v-if="kval=='3'">
+    <div class="yiinpu heigeinput">
+    <el-form-item label="探测出的小面" :label-width="formLabelWidth6">
+      <el-input v-model="form.name" autocomplete="off"></el-input>
+         <el-button plain class="anniu">清除</el-button>
+    </el-form-item>
+ </div>
+    <div class="line">
+      <div class="linetext">探测</div>
+    </div> 
+    <div class="heigeinput" >
+     <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 class="dan  dancentent">  
+            <div class="yiinpu " style="text-align: center;" >
+         <el-button plain class="anniu">寻找</el-button>
+    </div>
+         </div>
+         </div>
+             <div v-if="kval=='4'">
+    <div class="yiinpu heigeinput">
+    <el-form-item label="探测出的小体" :label-width="formLabelWidth6">
+      <el-input v-model="form.name" autocomplete="off"></el-input>
+         <el-button plain class="anniu">清除</el-button>
+    </el-form-item>
+ </div>
+    <div class="line">
+      <div class="linetext">探测</div>
+    </div> 
+    <div class="heigeinput" >
+     <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 class="dan  dancentent">  
+            <div class="yiinpu " style="text-align: center;" >
+         <el-button plain class="anniu">寻找</el-button>
+    </div>
+         </div>
+         </div>
+       <div v-if="kval=='5'">
+    <div class="btntext">寻找缺陷</div>
+         </div>
+         <!-- <div class="line">
+      <div class="linetext">修改</div>
+    </div>  -->
+   </el-form>
+     </div>
+  <span slot="footer" class="dialog-footer">
+    <el-button @click="dialog.dialogremove = false">取 消</el-button>
+    <el-button type="primary" @click="dialog.dialogremove = false">OK</el-button>
+  </span>
+</el-dialog>
+<!-- 相交 -->
+<el-dialog
+  :visible.sync="dialog.dialogintersect"
+  v-if="activeobj.czindex=='2'"
+  :modal='false'
+  custom-class='dialoglocation dialog_color'
+   width="385px"
+  :close-on-click-modal='false'
+ >
+  <div slot="title" class=dialog_header>
+     <el-image :src="cj" fit="cover" />
+     <span>相交</span>
+  </div>
+     <div class="selecr">
+     <el-form>
+    <div class="heigeinput">
+     <el-form-item label="容差" :label-width="formLabelWidth2">
+      <el-input v-model="form.name" autocomplete="off"></el-input>
+    </el-form-item>
+    <div>
+      <el-checkbox label="全局"></el-checkbox>
+    <el-checkbox label="剪裁 1"></el-checkbox>
+    <el-checkbox label="剪裁 2"></el-checkbox>
+    </div>
+        <div class="btntext">曲线/曲线</div>
+        <div class="btntext">曲线→曲面</div>
+        <div class="btntext">曲面→曲面</div>
+    </div>
+     <div class="line">
+      <div class="linetext">剪裁</div>
+    </div> 
+     <div class="btntext">剪裁出轮廓线</div>
+        <div class="btntext">剪裁出圆廓线</div>
+        <div class="btntext">剪裁出盒廓线</div>
+          <div class="line">
+      <div class="linetext">相交/延长</div>
+    </div> 
+    <div class="btntext">延长曲线</div>
+   </el-form>
+     </div>
+  <span slot="footer" class="dialog-footer">
+    <el-button @click="dialog.dialogintersect = false">取 消</el-button>
+    <el-button type="primary" @click="dialog.dialogintersect = false">OK</el-button>
+  </span>
+</el-dialog>
+<!-- 实体运算 -->
+<el-dialog
+  :visible.sync="dialog.dialogentity"
+  v-if="activeobj.czindex=='3'"
+  :modal='false'
+  custom-class='dialoglocation dialog_color'
+   width="385px"
+  :close-on-click-modal='false'
+ >
+  <div slot="title" class=dialog_header>
+     <el-image :src="cj" fit="cover" />
+     <span>实体运算</span>
+  </div>
+     <div class="selecr ">
+     <el-form>
+         <div class="btntext">重新命名实体</div>
+          <div class="line">
+      <div class="linetext">颜色</div>
+    </div> 
+      <div class="listbtn"> 
+         <span class="anniu text_color" >实体</span>
+        <el-color-picker v-model="color">颜色选择</el-color-picker>
+         <el-button plain class="anniu">清空</el-button>
+      </div> 
+       <div class="listbtn" style="margin: 5px 0;"> 
+         <span class="anniu text_color" >实体面</span>
+        <el-color-picker v-model="color">颜色选择</el-color-picker>
+         <el-button plain class="anniu">清空</el-button>
+      </div> 
+       <div class="listbtn"> 
+         <span class="anniu text_color" >实体边</span>
+        <el-color-picker v-model="color">颜色选择</el-color-picker>
+         <el-button plain class="anniu">清空</el-button>
+      </div> 
+       <div class="line">
+      <div class="linetext">布尔运算</div>
+    </div> 
+        <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 class="line">
+      <div class="linetext">倒圆角</div>
+    </div> 
+      <div class="heigeinput">
+     <el-form-item label="半径" :label-width="formLabelWidth4">
+      <el-input v-model="form.name" autocomplete="off"></el-input>
+    </el-form-item>
+    </div>
+    <div  class="listbtn">
+      <div class="anniu">
+            <el-checkbox v-model="checked">滚动</el-checkbox>
+      </div>
+        <el-button plain class="anniu">边</el-button>
+    </div>
+       <div class="line">
+      <div class="linetext">倒圆角</div>
+    </div> 
+    <div class="heigeinput">
+     <el-form-item label="距离" :label-width="formLabelWidth4">
+      <el-input v-model="form.name" autocomplete="off"></el-input>
+    </el-form-item>
+    </div>
+    <div  class="listbtn">
+      <div class="anniu">
+            <el-checkbox v-model="checked">滚动</el-checkbox>
+      </div>
+        <el-button plain class="anniu">边</el-button>
+    </div>
+    <div class="line">
+      <div class="linetext">转换</div>
+    </div> 
+      <div class="btntext">实体面到曲面</div>
+      <div class="btntext">实体边到曲线</div>
+      <div class="btntext">实体顶点到几何点</div>
+      <div class="btntext">裁剪曲面到实体面</div>
+      <div class="line">
+      <div class="linetext">特殊</div> 
+    </div> 
+     <div class="listbtn"> 
+        <el-button plain class="anniu">分离</el-button>
+        <el-button plain class="anniu">旋转实体面</el-button>
+      </div>
+       <div class="listbtn"> 
+        <el-button plain class="anniu">扩展实体面</el-button>
+        <el-button plain class="anniu">分割实体面</el-button>
+      </div>
+       <div class="listbtn"> 
+        <el-button plain class="anniu">检查对象</el-button>
+        <el-button plain class="anniu">检查日志</el-button>
+      </div>
+       <div class="listbtn"> 
+        <el-button plain class="anniu">检查实体面</el-button>
+        <el-button plain class="anniu">检查实体边</el-button>
+      </div>
+        <div class="listbtn"> 
+       <el-button plain class="anniu">清除对象</el-button>
+      </div> 
+   </el-form>
+     </div>
+  <span slot="footer" class="dialog-footer">
+    <el-button @click="dialog.dialogentity = false">取 消</el-button>
+    <el-button type="primary" @click="dialog.dialogentity = false">OK</el-button>
+  </span>
+</el-dialog>
+<!--  -->
 <el-dialog
   :visible.sync="dialog.dialog"
-  width="20%">
+  v-if="activeobj.czindex=='4'"
+  :modal='false'
+  custom-class='dialoglocation dialog_color'
+   width="385px"
+  :close-on-click-modal='false'
+ >
   <div slot="title" class=dialog_header>
      <el-image :src="cj" fit="cover" />
-     <span>关联</span>
+     <span>实体运算</span>
   </div>
      <div class="selecr">
      <el-form>
@@ -1229,10 +1551,13 @@ import cz15 from '@/assets/icon/u233.png'
 import cz16 from '@/assets/icon/u236.png'
 import bj1 from '@/assets/icon/u237.png'
 import bj2 from '@/assets/icon/u238.png'
+ import elColorPicker from 'el-color-picker'
 
 export default {
+   components:{elColorPicker},
   data(){
       return{
+          color: "#e0e0e0",
           checked:'',
           checked1:'',
           dialog:{
@@ -1244,9 +1569,12 @@ export default {
              piece:false,
              dialogsurface:false,
              dialogline:false,
+             dialogremove:false,
             //  操作弹框
             dialorelevance:false,
             setdialog:false,
+            dialogintersect:false,
+            dialogentity:false,
           },
          
           i:'1',
@@ -1330,6 +1658,21 @@ export default {
             {value:'1',name:'牛顿法'},
            ],
            tyval:"0",
+           konglist:[
+            {value:'0',name:'孔/凹槽'},
+            {value:'1',name:'倒圆角/桥接曲面'},
+            {value:'2',name:'倒角'},
+            {value:'3',name:'小面'},
+            {value:'4',name:'小体'},
+            {value:'5',name:'缺陷'},
+           ],
+            kval:"0",
+           active:'',
+           activeobj:{
+                  tabindex:'',
+                  czindex:'',
+           },
+      
            // 边界条件
        //  几何基础
         jic,
@@ -1395,6 +1738,7 @@ export default {
             {img:cz14, titlie:'旋转'},   
             { img:cz15, titlie:'对称'},
             {img:cz16, titlie:'扫略'}, 
+              { img:bj1, titlie:'新建'},
         ],
           bjlist:[
            { img:bj1, titlie:'新建'},
@@ -1441,6 +1785,7 @@ methods:{
   },
   //模块选择
   clickgeometry(index){
+   this.activeobj.tabindex=index;
   switch(index){
     case 0:
       this.dialog.dialogVisible2=true;
@@ -1467,15 +1812,19 @@ methods:{
   },
   //操作
   operationclick(index){
+    this.activeobj.czindex=index;
  switch(index){
     case 0:
       this.dialog.dialorelevance=true;
       break;
     case 1:
+      this.dialog.dialogremove=true;
       break; 
     case 2:
+      this.dialog.dialogintersect=true;
       break;
     case 3:
+       this.dialog.dialogentity=true;
       break;
       case 4:
        break;
@@ -1549,7 +1898,7 @@ line-height: 25px;
   height: 1px;
   background-color: #999;
   position: relative;
-  margin: 20px 0;
+  margin: 30px 0;
   .linetext{
     position: absolute;
     left: 50%;
@@ -1583,6 +1932,7 @@ line-height: 25px;
   }
   .listbtn{
   display: flex;
+  margin-bottom: 5px;
   .anniu{
     flex: 1;
   }
@@ -1664,6 +2014,9 @@ display:flex;
     }
     
   }
+  .activeOrange{
+    background-color:rgba($color: #fff, $alpha: 0.3);
+  }
   .liangf{
     display: flex;
   }