fl-web-component 2.1.1-beta.4 → 2.1.1-beta.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- @charset "UTF-8";.fl-model-containor[data-v-3517cf88]{width:100%;height:100%;position:relative;cursor:pointer}[data-v-3517cf88] .tips-label{width:60px;color:#000;font:12px Helvetica;margin-top:-3em;padding:5px;text-align:center;vertical-align:middle;background-color:khaki}[data-v-3517cf88] .measure-label{max-width:100px;margin-top:-1em;border:10px;border-radius:5px;padding:3px 10px;cursor:pointer;color:#009bea;background-color:#f4f4f4;-webkit-box-shadow:0 1px 3px 1px rgba(0,0,0,.25);box-shadow:0 1px 3px 1px rgba(0,0,0,.25)}[data-v-3517cf88] .circle-tag{width:10px;height:10px;margin-top:5px;border-radius:50%;background-color:#ff5000}[data-v-3517cf88] .measure-label-font{word-break:break-all}[data-v-3517cf88] .mark-label-img{padding-top:5px;width:20px;height:20px}.loading-overlay[data-v-3517cf88]{position:absolute;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.7);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;z-index:1000;opacity:0;visibility:hidden;-webkit-transition:opacity .3s ease,visibility .3s ease;transition:opacity .3s ease,visibility .3s ease}.loading-overlay--visible[data-v-3517cf88]{opacity:1;visibility:visible}.loading-content[data-v-3517cf88]{background:#fff;border-radius:12px;padding:30px;text-align:center;-webkit-box-shadow:0 8px 32px rgba(0,0,0,.3);box-shadow:0 8px 32px rgba(0,0,0,.3);min-width:300px;max-width:400px}.loading-spinner[data-v-3517cf88]{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #409eff;border-radius:50%;-webkit-animation:spin-3517cf88 1s linear infinite;animation:spin-3517cf88 1s linear infinite;margin:0 auto 20px}@-webkit-keyframes spin-3517cf88{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes spin-3517cf88{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.loading-text[data-v-3517cf88]{font-size:16px;font-weight:500;color:#333;margin-bottom:20px}.loading-this.progress-bar[data-v-3517cf88]{width:100%;height:8px;background-color:#f0f0f0;border-radius:4px;overflow:hidden;margin-bottom:15px}.loading-this.progress-fill[data-v-3517cf88]{height:100%;background:-webkit-gradient(linear,left top,right top,from(#409eff),to(#67c23a));background:linear-gradient(90deg,#409eff,#67c23a);border-radius:4px;-webkit-transition:width .3s ease;transition:width .3s ease}.loading-details[data-v-3517cf88]{font-size:12px;color:#666;line-height:1.5}.lil-this.gui{background:hsla(0,0%,100%,.95)!important;border:1px solid #e0e0e0!important;border-radius:8px!important;-webkit-box-shadow:0 4px 12px rgba(0,0,0,.15)!important;box-shadow:0 4px 12px rgba(0,0,0,.15)!important;backdrop-filter:blur(10px)!important;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif!important}.lil-this.gui .title{background:linear-gradient(135deg,#f8f9fa,#e9ecef)!important;color:#495057!important;border-bottom:1px solid #dee2e6!important;font-weight:600!important;padding:0 12px!important;border-radius:8px 8px 0 0!important}.lil-this.gui .controller{border-bottom:1px solid #f1f3f4!important;background:transparent!important}.lil-this.gui .controller:last-child{border-bottom:none!important}.lil-this.gui .controller .name{color:#495057!important;font-weight:500!important;font-size:12px!important}.lil-this.gui .controller .widget{background:#f8f9fa!important;border:1px solid #ced4da!important;border-radius:4px!important;color:#495057!important}.lil-this.gui .controller .widget:focus,.lil-this.gui .controller .widget:hover{border-color:#80bdff!important;-webkit-box-shadow:0 0 0 2px rgba(0,123,255,.25)!important;box-shadow:0 0 0 2px rgba(0,123,255,.25)!important}.lil-this.gui .controller .widget:focus{outline:none!important}.lil-this.gui .controller input[type=range]{background:#e9ecef!important;height:4px!important;-webkit-appearance:none!important;-moz-appearance:none!important;appearance:none!important;border-radius:2px!important}.lil-this.gui .controller.number .fill{border-right:solid #008de9}.lil-this.gui .controller input[type=range]::-webkit-slider-thumb{background:#007bff!important;border:2px solid #fff!important;-webkit-box-shadow:0 2px 4px rgba(0,0,0,.2)!important;box-shadow:0 2px 4px rgba(0,0,0,.2)!important;width:16px!important;height:16px!important;border-radius:50%!important;-webkit-appearance:none!important;appearance:none!important;cursor:pointer!important}.lil-this.gui .controller input[type=range]::-moz-range-thumb{background:#007bff!important;border:2px solid #fff!important;box-shadow:0 2px 4px rgba(0,0,0,.2)!important;width:16px!important;height:16px!important;border-radius:50%!important;cursor:pointer!important}.lil-this.gui .controller .option{background:#fff!important;color:#495057!important;border-bottom:1px solid #f1f3f4!important}.lil-this.gui .controller .option:hover{background:#f8f9fa!important}.lil-this.gui .controller .option:last-child{border-bottom:none!important}.lil-this.gui input:active{background:#e6eff4}.lil-this.gui .controller button{background:linear-gradient(135deg,#007bff,#0056b3)!important;color:#fff!important;border:none!important;border-radius:4px!important;font-weight:500!important;-webkit-transition:all .2s ease!important;transition:all .2s ease!important}.lil-this.gui .controller button:hover{background:linear-gradient(135deg,#0056b3,#004085)!important;-webkit-transform:translateY(-1px)!important;transform:translateY(-1px)!important;-webkit-box-shadow:0 4px 8px rgba(0,123,255,.3)!important;box-shadow:0 4px 8px rgba(0,123,255,.3)!important}.lil-this.gui .controller .color{border:2px solid #fff!important;border-radius:4px!important;-webkit-box-shadow:0 2px 4px rgba(0,0,0,.1)!important;box-shadow:0 2px 4px rgba(0,0,0,.1)!important}.lil-this.gui .controller.number .slider,.lil-this.gui .controller.number .slider:hover{background-color:#e6eff4}.lil-this.gui input,.lil-this.gui input:hover,.lil-this.gui input[type=number]:focus,.lil-this.gui input[type=text]:focus{background:#e6eff4}.lil-this.gui .controller>.name{min-width:25px}.lil-this.gui .controller.number input{color:#2e3136}.lil-this.gui .controller.number .slider:active{background-color:#e6eff4}.lil-this.gui .folder>.title{background:linear-gradient(135deg,#f1f3f4,#e9ecef)!important;color:#495057!important;border-bottom:1px solid #dee2e6!important}.lil-this.gui .folder>.title:before{color:#6c757d!important}.lil-this.gui .folder.closed>.children{display:none!important}#konva-container[data-v-0f76e7f4]{z-index:3;width:100%;height:100%;cursor:pointer;overflow:hidden}span[data-v-f547d5c6]{font-weight:bolder}.text[data-v-f547d5c6]{margin-top:20px}.line[data-v-f547d5c6]{border-bottom:1px solid #dcdfe6;margin:20px 0}.center[data-v-f547d5c6]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.center .cen span[data-v-f547d5c6],.center .top span[data-v-f547d5c6]{color:"#53a8ff";display:inline-block;width:30px;height:30px;text-align:center;line-height:30px;border:1px solid;padding:5px;margin-bottom:10px;background-color:#e9f3ff}.center .cen span[data-v-f547d5c6]{margin:10px}.button[data-v-f547d5c6]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:end;margin-top:20px}@font-face{font-family:iconfont;src:url(//at.alicdn.com/t/font_3226805_qqvo3ag3r8.woff2?t=1646635700216) format("woff2"),url(//at.alicdn.com/t/font_3226805_qqvo3ag3r8.woff?t=1646635700216) format("woff"),url(//at.alicdn.com/t/font_3226805_qqvo3ag3r8.ttf?t=1646635700216) format("truetype")}.iconfont[data-v-f547d5c6]{font-family:iconfont!important;font-size:50px;font-style:normal;color:"#53a8ff";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon-shubiao[data-v-f547d5c6]:before{content:""}.main_body[data-v-4b17bce0]{position:relative;width:100%;height:100%;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden}.classification_title[data-v-4b17bce0]{margin:0 0 10px 0;color:#fff;font-size:14px;cursor:default}.toolbar[data-v-4b17bce0]{z-index:10;position:absolute;width:520px;padding:8px 16px;border-radius:6px;-webkit-box-shadow:0 2px 10px 0 rgba(6,29,44,.25);box-shadow:0 2px 10px 0 rgba(6,29,44,.25);background-color:#fff;top:10px;left:50%;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-transform:translateX(-50%);transform:translateX(-50%);display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-pack:distribute;justify-content:space-around}.icon_toolbar[data-v-4b17bce0],.text_toolbar[data-v-4b17bce0]{float:left;width:32px;height:32px;padding:0!important;background-repeat:no-repeat;background-size:24px;background-position:50%}.icon_active[data-v-4b17bce0],.icon_toolbar[data-v-4b17bce0]:hover,.text_toolbar[data-v-4b17bce0]:hover{background-color:#eee}[data-v-4b17bce0].icon_color .el-color-picker__trigger{height:24px;margin-top:4px;width:24px!important}[data-v-4b17bce0].el-color-picker--medium,[data-v-4b17bce0].el-color-picker--medium .el-color-picker__trigger{width:24px!important;height:24px!important}.canvas_container[data-v-4b17bce0]{position:relative;width:100%;height:100%;overflow:auto;-webkit-box-sizing:border-box;box-sizing:border-box}.canvas_container canvas[data-v-4b17bce0]{position:absolute;left:0}.canvas_container #ctx_front[data-v-4b17bce0]{z-index:5;background-color:transparent}.canvas_container #ctx_back[data-v-4b17bce0]{z-index:3}.canvas_container #ctx_base[data-v-4b17bce0]{z-index:1}#text[data-v-4b17bce0]{position:absolute;z-index:-1;resize:none;outline:none;border:1px dashed #9c9c9c;overflow:hidden;background:transparent;line-height:30px;display:none}#text[data-v-4b17bce0]:hover{border:1px dashed #53a8ff}#svg-component[data-v-2572c0e2],#svg-tigger[data-v-2572c0e2]{cursor:pointer;height:100%;width:100%;position:relative}#toolbar-show[data-v-2572c0e2]{z-index:20;position:absolute;width:100%;height:100%;top:0;left:0;overflow:hidden;background:#fff}
1
+ @charset "UTF-8";.fl-model-containor[data-v-7f8842df]{width:100%;height:100%;position:relative;cursor:pointer}[data-v-7f8842df] .tips-label{width:60px;color:#000;font:12px Helvetica;margin-top:-3em;padding:5px;text-align:center;vertical-align:middle;background-color:khaki}[data-v-7f8842df] .measure-label{max-width:100px;margin-top:-1em;border:10px;border-radius:5px;padding:3px 10px;cursor:pointer;color:#009bea;background-color:#f4f4f4;-webkit-box-shadow:0 1px 3px 1px rgba(0,0,0,.25);box-shadow:0 1px 3px 1px rgba(0,0,0,.25)}[data-v-7f8842df] .circle-tag{width:10px;height:10px;margin-top:5px;border-radius:50%;background-color:#ff5000}[data-v-7f8842df] .measure-label-font{word-break:break-all}[data-v-7f8842df] .mark-label-img{padding-top:5px;width:20px;height:20px}.loading-overlay[data-v-7f8842df]{position:absolute;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.7);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;z-index:1000;opacity:0;visibility:hidden;-webkit-transition:opacity .3s ease,visibility .3s ease;transition:opacity .3s ease,visibility .3s ease}.loading-overlay--visible[data-v-7f8842df]{opacity:1;visibility:visible}.loading-content[data-v-7f8842df]{background:#fff;border-radius:12px;padding:30px;text-align:center;-webkit-box-shadow:0 8px 32px rgba(0,0,0,.3);box-shadow:0 8px 32px rgba(0,0,0,.3);min-width:300px;max-width:400px}.loading-spinner[data-v-7f8842df]{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #409eff;border-radius:50%;-webkit-animation:spin-7f8842df 1s linear infinite;animation:spin-7f8842df 1s linear infinite;margin:0 auto 20px}@-webkit-keyframes spin-7f8842df{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes spin-7f8842df{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.loading-text[data-v-7f8842df]{font-size:16px;font-weight:500;color:#333;margin-bottom:20px}.loading-this.progress-bar[data-v-7f8842df]{width:100%;height:8px;background-color:#f0f0f0;border-radius:4px;overflow:hidden;margin-bottom:15px}.loading-this.progress-fill[data-v-7f8842df]{height:100%;background:-webkit-gradient(linear,left top,right top,from(#409eff),to(#67c23a));background:linear-gradient(90deg,#409eff,#67c23a);border-radius:4px;-webkit-transition:width .3s ease;transition:width .3s ease}.loading-details[data-v-7f8842df]{font-size:12px;color:#666;line-height:1.5}.lil-this.gui{background:hsla(0,0%,100%,.95)!important;border:1px solid #e0e0e0!important;border-radius:8px!important;-webkit-box-shadow:0 4px 12px rgba(0,0,0,.15)!important;box-shadow:0 4px 12px rgba(0,0,0,.15)!important;backdrop-filter:blur(10px)!important;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif!important}.lil-this.gui .title{background:linear-gradient(135deg,#f8f9fa,#e9ecef)!important;color:#495057!important;border-bottom:1px solid #dee2e6!important;font-weight:600!important;padding:0 12px!important;border-radius:8px 8px 0 0!important}.lil-this.gui .controller{border-bottom:1px solid #f1f3f4!important;background:transparent!important}.lil-this.gui .controller:last-child{border-bottom:none!important}.lil-this.gui .controller .name{color:#495057!important;font-weight:500!important;font-size:12px!important}.lil-this.gui .controller .widget{background:#f8f9fa!important;border:1px solid #ced4da!important;border-radius:4px!important;color:#495057!important}.lil-this.gui .controller .widget:focus,.lil-this.gui .controller .widget:hover{border-color:#80bdff!important;-webkit-box-shadow:0 0 0 2px rgba(0,123,255,.25)!important;box-shadow:0 0 0 2px rgba(0,123,255,.25)!important}.lil-this.gui .controller .widget:focus{outline:none!important}.lil-this.gui .controller input[type=range]{background:#e9ecef!important;height:4px!important;-webkit-appearance:none!important;-moz-appearance:none!important;appearance:none!important;border-radius:2px!important}.lil-this.gui .controller.number .fill{border-right:solid #008de9}.lil-this.gui .controller input[type=range]::-webkit-slider-thumb{background:#007bff!important;border:2px solid #fff!important;-webkit-box-shadow:0 2px 4px rgba(0,0,0,.2)!important;box-shadow:0 2px 4px rgba(0,0,0,.2)!important;width:16px!important;height:16px!important;border-radius:50%!important;-webkit-appearance:none!important;appearance:none!important;cursor:pointer!important}.lil-this.gui .controller input[type=range]::-moz-range-thumb{background:#007bff!important;border:2px solid #fff!important;box-shadow:0 2px 4px rgba(0,0,0,.2)!important;width:16px!important;height:16px!important;border-radius:50%!important;cursor:pointer!important}.lil-this.gui .controller .option{background:#fff!important;color:#495057!important;border-bottom:1px solid #f1f3f4!important}.lil-this.gui .controller .option:hover{background:#f8f9fa!important}.lil-this.gui .controller .option:last-child{border-bottom:none!important}.lil-this.gui input:active{background:#e6eff4}.lil-this.gui .controller button{background:linear-gradient(135deg,#007bff,#0056b3)!important;color:#fff!important;border:none!important;border-radius:4px!important;font-weight:500!important;-webkit-transition:all .2s ease!important;transition:all .2s ease!important}.lil-this.gui .controller button:hover{background:linear-gradient(135deg,#0056b3,#004085)!important;-webkit-transform:translateY(-1px)!important;transform:translateY(-1px)!important;-webkit-box-shadow:0 4px 8px rgba(0,123,255,.3)!important;box-shadow:0 4px 8px rgba(0,123,255,.3)!important}.lil-this.gui .controller .color{border:2px solid #fff!important;border-radius:4px!important;-webkit-box-shadow:0 2px 4px rgba(0,0,0,.1)!important;box-shadow:0 2px 4px rgba(0,0,0,.1)!important}.lil-this.gui .controller.number .slider,.lil-this.gui .controller.number .slider:hover{background-color:#e6eff4}.lil-this.gui input,.lil-this.gui input:hover,.lil-this.gui input[type=number]:focus,.lil-this.gui input[type=text]:focus{background:#e6eff4}.lil-this.gui .controller>.name{min-width:25px}.lil-this.gui .controller.number input{color:#2e3136}.lil-this.gui .controller.number .slider:active{background-color:#e6eff4}.lil-this.gui .folder>.title{background:linear-gradient(135deg,#f1f3f4,#e9ecef)!important;color:#495057!important;border-bottom:1px solid #dee2e6!important}.lil-this.gui .folder>.title:before{color:#6c757d!important}.lil-this.gui .folder.closed>.children{display:none!important}#konva-container[data-v-cb260cfc]{z-index:3;width:100%;height:100%;cursor:pointer;overflow:hidden}span[data-v-f547d5c6]{font-weight:bolder}.text[data-v-f547d5c6]{margin-top:20px}.line[data-v-f547d5c6]{border-bottom:1px solid #dcdfe6;margin:20px 0}.center[data-v-f547d5c6]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.center .cen span[data-v-f547d5c6],.center .top span[data-v-f547d5c6]{color:"#53a8ff";display:inline-block;width:30px;height:30px;text-align:center;line-height:30px;border:1px solid;padding:5px;margin-bottom:10px;background-color:#e9f3ff}.center .cen span[data-v-f547d5c6]{margin:10px}.button[data-v-f547d5c6]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:end;margin-top:20px}@font-face{font-family:iconfont;src:url(//at.alicdn.com/t/font_3226805_qqvo3ag3r8.woff2?t=1646635700216) format("woff2"),url(//at.alicdn.com/t/font_3226805_qqvo3ag3r8.woff?t=1646635700216) format("woff"),url(//at.alicdn.com/t/font_3226805_qqvo3ag3r8.ttf?t=1646635700216) format("truetype")}.iconfont[data-v-f547d5c6]{font-family:iconfont!important;font-size:50px;font-style:normal;color:"#53a8ff";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon-shubiao[data-v-f547d5c6]:before{content:""}.main_body[data-v-4b17bce0]{position:relative;width:100%;height:100%;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden}.classification_title[data-v-4b17bce0]{margin:0 0 10px 0;color:#fff;font-size:14px;cursor:default}.toolbar[data-v-4b17bce0]{z-index:10;position:absolute;width:520px;padding:8px 16px;border-radius:6px;-webkit-box-shadow:0 2px 10px 0 rgba(6,29,44,.25);box-shadow:0 2px 10px 0 rgba(6,29,44,.25);background-color:#fff;top:10px;left:50%;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-transform:translateX(-50%);transform:translateX(-50%);display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-pack:distribute;justify-content:space-around}.icon_toolbar[data-v-4b17bce0],.text_toolbar[data-v-4b17bce0]{float:left;width:32px;height:32px;padding:0!important;background-repeat:no-repeat;background-size:24px;background-position:50%}.icon_active[data-v-4b17bce0],.icon_toolbar[data-v-4b17bce0]:hover,.text_toolbar[data-v-4b17bce0]:hover{background-color:#eee}[data-v-4b17bce0].icon_color .el-color-picker__trigger{height:24px;margin-top:4px;width:24px!important}[data-v-4b17bce0].el-color-picker--medium,[data-v-4b17bce0].el-color-picker--medium .el-color-picker__trigger{width:24px!important;height:24px!important}.canvas_container[data-v-4b17bce0]{position:relative;width:100%;height:100%;overflow:auto;-webkit-box-sizing:border-box;box-sizing:border-box}.canvas_container canvas[data-v-4b17bce0]{position:absolute;left:0}.canvas_container #ctx_front[data-v-4b17bce0]{z-index:5;background-color:transparent}.canvas_container #ctx_back[data-v-4b17bce0]{z-index:3}.canvas_container #ctx_base[data-v-4b17bce0]{z-index:1}#text[data-v-4b17bce0]{position:absolute;z-index:-1;resize:none;outline:none;border:1px dashed #9c9c9c;overflow:hidden;background:transparent;line-height:30px;display:none}#text[data-v-4b17bce0]:hover{border:1px dashed #53a8ff}#svg-component[data-v-2572c0e2],#svg-tigger[data-v-2572c0e2]{cursor:pointer;height:100%;width:100%;position:relative}#toolbar-show[data-v-2572c0e2]{z-index:20;position:absolute;width:100%;height:100%;top:0;left:0;overflow:hidden;background:#fff}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fl-web-component",
3
- "version": "2.1.1-beta.4",
3
+ "version": "2.1.1-beta.6",
4
4
  "scripts": {
5
5
  "postinstall": "patch-package",
6
6
  "tip1": "仅调试本组件不涉及业务组件,请执行dev",
@@ -33,7 +33,6 @@ function decimalToRGBHex(decimalValue) {
33
33
  };
34
34
  }
35
35
  export function handleFn(functionName, recordDxf, entity, group, key, configParams, konvaLayer) {
36
- console.log(functionName);
37
36
 
38
37
  switch (functionName) {
39
38
  case 'LINE':
@@ -198,7 +197,7 @@ function mtextContentAndFormattingToTextAndStyle(textAndControlChars, entity, co
198
197
  function drawArc(recordDxf, entity, group, key, configParams) {
199
198
  let color = entity.color;
200
199
  let rgb = decimalToRGBHex(color);
201
- console.log(rgb);
200
+
202
201
  let hex = rgb.hex;
203
202
  let startAngle, endAngle;
204
203
  if (entity.type === 'CIRCLE') {
@@ -265,8 +264,7 @@ function drawEllpse(recordDxf, entity, group, key, configParams) {
265
264
  parseFloat(entity.majorAxisEndPoint.y),
266
265
  parseFloat(entity.majorAxisEndPoint.x)
267
266
  );
268
- console.log(entity.startAngle);
269
- console.log(entity.endAngle);
267
+
270
268
  let curve = new THREE.EllipseCurve(
271
269
  parseFloat(entity.center.x),
272
270
  parseFloat(entity.center.y),
@@ -316,7 +314,7 @@ function drawEllpse(recordDxf, entity, group, key, configParams) {
316
314
  function drawLine(recordDxf, entity, group, key, configParams) {
317
315
  let color = entity.color;
318
316
  let rgb = decimalToRGBHex(color);
319
- console.log(rgb);
317
+
320
318
  let hex = rgb.hex;
321
319
  let x1 = entity.vertices[0].x;
322
320
  let y1 = entity.vertices[0].y;
@@ -364,7 +362,7 @@ function drawLine(recordDxf, entity, group, key, configParams) {
364
362
  function drawText(recordDxf, entity, group, key, configParams) {
365
363
  let color = entity.color;
366
364
  let rgb = decimalToRGBHex(color);
367
- console.log(rgb);
365
+
368
366
  let hex = rgb.hex;
369
367
 
370
368
  if (hex == '#FFFFFF') {
@@ -466,13 +464,13 @@ function drawText(recordDxf, entity, group, key, configParams) {
466
464
  }
467
465
 
468
466
  function drawHatch(recordDxf, entity, group, key, configParams) {
469
- console.log('hatch');
467
+
470
468
  }
471
469
 
472
470
  function drawLwLine(recordDxf, entity, group, key, configParams) {
473
471
  let color = entity.color;
474
472
  let rgb = decimalToRGBHex(color);
475
- console.log(rgb);
473
+
476
474
  let hex = rgb.hex;
477
475
 
478
476
  if (hex == '#FFFFFF') {
@@ -35,11 +35,17 @@ function downloadPDF(base64, fileName) {
35
35
  URL.revokeObjectURL(url); // 释放URL对象
36
36
  }
37
37
  import Konva from 'konva';
38
- import { Vector2 } from "three";
38
+ import { Vector2 } from 'three';
39
39
  import DxfParser from 'dxf-parser';
40
40
  import DxfParser2 from '@/utils/dxf-parser/DxfParser';
41
41
  import jsPDF from 'jspdf';
42
- import { formatEntity, handleFn, centering, _GenerateArcVertices, _GenerateBulgeVertices } from './components/entityFormatting';
42
+ import {
43
+ formatEntity,
44
+ handleFn,
45
+ centering,
46
+ _GenerateArcVertices,
47
+ _GenerateBulgeVertices,
48
+ } from './components/entityFormatting';
43
49
  export default {
44
50
  name: 'Fl2dcanvas',
45
51
  components: {},
@@ -72,8 +78,8 @@ export default {
72
78
  this.konvaStage._resizeDOM();
73
79
  }
74
80
  });
75
-
76
81
  this.$nextTick(() => {
82
+ console.log(this.$refs.svgDraw.clientHeight)
77
83
  this.konvaStage = new Konva.Stage({
78
84
  className: 'stage',
79
85
  container: 'konva-container',
@@ -94,7 +100,6 @@ export default {
94
100
  var scaleBy = 1.1;
95
101
  //初始化缩放方法
96
102
  this.konvaStage.on('wheel', e => {
97
- console.log(e);
98
103
  e.evt.preventDefault();
99
104
  var oldScale = this.konvaStage.scaleX();
100
105
  var pointer = this.konvaStage.getPointerPosition();
@@ -156,27 +161,42 @@ export default {
156
161
 
157
162
  */
158
163
 
159
- const { scale, x, y } = this.calculateScaleAndPosition(
160
- this.bounds,
161
- this.konvaStage.width(),
162
- this.konvaStage.height(),
163
- 0.05 // 5% 边距
164
- );
164
+ // const { scale, x, y } = this.calculateScaleAndPosition(
165
+ // this.bounds,
166
+ // this.konvaStage.width(),
167
+ // this.konvaStage.height(),
168
+ // 0.05 // 5% 边距
169
+ // );
165
170
 
166
- this.konvaStage.position({ x: x, y: y });
167
- this.konvaStage.scale({ x: scale, y: scale });
171
+ // this.konvaStage.position({ x: x, y: y });
172
+ // this.konvaStage.scale({ x: scale, y: scale });
168
173
 
169
- this.konvaStage.batchDraw();
174
+ // this.konvaStage.batchDraw();
175
+ this.centerDraw();
170
176
  });
171
177
  this.konvaStage.on('click', e => {
172
178
  let target = this.konvaStage.mouseClickEndShape;
173
- this.$emit('leftClick', target ? target.attrs : null)
179
+ this.$emit('leftClick', target ? target.attrs : null);
174
180
  });
175
181
  });
176
182
  },
177
183
  //销毁方法
178
184
 
179
185
  methods: {
186
+ // 图纸居中展示
187
+ centerDraw() {
188
+ const { scale, x, y } = this.calculateScaleAndPosition(
189
+ this.bounds,
190
+ this.konvaStage.width(),
191
+ this.konvaStage.height(),
192
+ 0.05 // 5% 边距
193
+ );
194
+
195
+ this.konvaStage.position({ x: x, y: y });
196
+ this.konvaStage.scale({ x: scale, y: scale });
197
+
198
+ this.konvaStage.batchDraw();
199
+ },
180
200
  calculateScaleAndPosition(contentBounds, stageWidth, stageHeight, padding = 0.1) {
181
201
  // 1. 计算内容的实际宽高
182
202
  const contentWidth = contentBounds.maxX - contentBounds.minX;
@@ -219,7 +239,6 @@ export default {
219
239
 
220
240
  return { scale, x, y };
221
241
  },
222
-
223
242
  updateBounds(v) {
224
243
  if (this.bounds === null) {
225
244
  this.bounds = { minX: v.x, maxX: v.x, minY: v.y, maxY: v.y };
@@ -274,14 +293,11 @@ export default {
274
293
  for (let i = 0; i < hatchEntitys.length; i++) {
275
294
  let entity = hatchEntitys[i];
276
295
  let layerConfig = this.recordLayerConfig[entity.layer];
277
- let configParams =
278
- layerConfig && Object.keys(layerConfig).length > 0
279
- ? layerConfig
280
- : null;
281
- let color = configParams ? configParams.color : "#000";
296
+ let configParams = layerConfig && Object.keys(layerConfig).length > 0 ? layerConfig : null;
297
+ let color = configParams ? configParams.color : '#000';
282
298
  let visible = configParams ? configParams.visible : true;
283
- let name = entity.layer.replace(/\s*/g, "");
284
- if (entity.type == "HATCH") {
299
+ let name = entity.layer.replace(/\s*/g, '');
300
+ if (entity.type == 'HATCH') {
285
301
  let boundaryLoops = entity.boundaryLoops;
286
302
  for (let j = 0; j < boundaryLoops.length; j++) {
287
303
  let list = [];
@@ -298,10 +314,7 @@ export default {
298
314
  );
299
315
  const axisRatio = entity.radius;
300
316
  const yR = xR * axisRatio;
301
- const rotation = Math.atan2(
302
- majorAxisEndPoint.y,
303
- majorAxisEndPoint.x
304
- );
317
+ const rotation = Math.atan2(majorAxisEndPoint.y, majorAxisEndPoint.x);
305
318
 
306
319
  const arcVertices = _GenerateArcVertices({
307
320
  vertices: [],
@@ -330,10 +343,8 @@ export default {
330
343
  list.push(arcVertices[i].x);
331
344
  list.push(-parseFloat(arcVertices[i].y));
332
345
  }
333
-
334
346
  }
335
347
  if (entity.type == 1) {
336
-
337
348
  list.push(entity.start.x);
338
349
  list.push(-parseFloat(entity.start.y));
339
350
  list.push(entity.end.x);
@@ -350,7 +361,7 @@ export default {
350
361
  stroke: color,
351
362
  customColor: color,
352
363
  visible: visible,
353
- shapeType: 'hatch'
364
+ shapeType: 'hatch',
354
365
  });
355
366
  this.konvaLayer.add(line);
356
367
  }
@@ -359,20 +370,14 @@ export default {
359
370
  let loop = boundaryLoops[0];
360
371
  if (loop.type == 7) {
361
372
  let vertices = [];
362
- for (
363
- let vtxIdx = 0;
364
- vtxIdx < loop.polyline.vertices.length;
365
- vtxIdx++
366
- ) {
373
+ for (let vtxIdx = 0; vtxIdx < loop.polyline.vertices.length; vtxIdx++) {
367
374
  const vtx = loop.polyline.vertices[vtxIdx];
368
375
  if ((vtx.bulge ?? 0) == 0) {
369
376
  vertices.push(new Vector2(vtx.x, vtx.y));
370
377
  } else {
371
378
  const prevVtx =
372
379
  loop.polyline.vertices[
373
- vtxIdx == 0
374
- ? loop.polyline.vertices.length - 1
375
- : vtxIdx - 1
380
+ vtxIdx == 0 ? loop.polyline.vertices.length - 1 : vtxIdx - 1
376
381
  ];
377
382
  if ((prevVtx.bulge ?? 0) == 0) {
378
383
  /* Start vertex is not produced by _GenerateBulgeVertices(). */
@@ -380,16 +385,9 @@ export default {
380
385
  }
381
386
  const nextVtx =
382
387
  loop.polyline.vertices[
383
- vtxIdx == loop.polyline.vertices.length - 1
384
- ? 0
385
- : vtxIdx + 1
388
+ vtxIdx == loop.polyline.vertices.length - 1 ? 0 : vtxIdx + 1
386
389
  ];
387
- vertices = _GenerateBulgeVertices(
388
- [],
389
- vtx,
390
- nextVtx,
391
- vtx.bulge
392
- );
390
+ vertices = _GenerateBulgeVertices([], vtx, nextVtx, vtx.bulge);
393
391
  }
394
392
  }
395
393
  let list = [];
@@ -408,7 +406,7 @@ export default {
408
406
  stroke: color,
409
407
  customColor: color,
410
408
  visible: visible,
411
- shapeType: 'hatch'
409
+ shapeType: 'hatch',
412
410
  });
413
411
  this.konvaLayer.add(line);
414
412
  }
@@ -447,7 +445,6 @@ export default {
447
445
  }
448
446
 
449
447
  if (group[0].stroke == undefined) {
450
- console.log(group);
451
448
  group[0].stroke = '#000';
452
449
  }
453
450
  let customShape = new Konva.Shape({
@@ -558,6 +555,7 @@ export default {
558
555
  this.activedSvgPan.x = x;
559
556
  this.activedSvgPan.y = x;
560
557
  setTimeout(() => {
558
+ this.centerDraw();
561
559
  this.$emit('loaded');
562
560
  }, 100);
563
561
  },
@@ -670,9 +668,6 @@ export default {
670
668
  }
671
669
  }
672
670
 
673
- console.log('bounds1');
674
- console.log(_this.bounds1);
675
-
676
671
  for (let key in entities) {
677
672
  if (entities[key]) {
678
673
  let group = [];
@@ -702,7 +697,6 @@ export default {
702
697
  }
703
698
 
704
699
  if (group[0].stroke == undefined) {
705
- console.log(group);
706
700
  group[0].stroke = '#000';
707
701
  }
708
702
 
@@ -774,8 +768,6 @@ export default {
774
768
  this.konvaStage.height(),
775
769
  0.05 // 5% 边距
776
770
  );
777
- console.log('test1:');
778
- console.log(this.bounds1);
779
771
 
780
772
  _this.bounds1 = null;
781
773
 
@@ -822,32 +814,38 @@ export default {
822
814
  // 更改图纸的色系 区分明暗两种 darkness 暗色系 bright 明亮
823
815
  setColorScheme(colorType) {
824
816
  // const backgroundColor = colorType === "darkness" ? "#000" : "transparent";
825
- const color = colorType === "darkness" ? "#fff" : "#000";
817
+ const color = colorType === 'darkness' ? '#fff' : '#000';
826
818
  // konvaStage.container().style.background = backgroundColor;
827
- this.konvaLayer.children.forEach((item) => {
819
+ this.konvaLayer.children.forEach(item => {
828
820
  this.traverseLayer(item, color);
829
821
  });
830
822
  },
831
-
823
+
832
824
  traverseLayer(obj, color) {
833
825
  if (!obj.attrs.isGroup) {
834
826
  if (color === '#fff') {
835
- let setColor = (obj.attrs.customColor === '#000' || obj.attrs.customColor === '#000000'|| obj.attrs.customColor === 'rgb(0, 0, 0)' || obj.attrs.customColor === 'rgba(0, 0, 0, 1)') ? color : obj.attrs.customColor
827
+ let setColor =
828
+ obj.attrs.customColor === '#000' ||
829
+ obj.attrs.customColor === '#000000' ||
830
+ obj.attrs.customColor === 'rgb(0, 0, 0)' ||
831
+ obj.attrs.customColor === 'rgba(0, 0, 0, 1)'
832
+ ? color
833
+ : obj.attrs.customColor;
836
834
  if (obj.attrs.shapeType === 'hatch' || obj.attrs.shapeType === 'text') {
837
835
  obj.setFill(setColor);
838
836
  }
839
837
  obj.setStroke(setColor);
840
- obj.attrs.oldCustomColor = obj.attrs.customColor
841
- obj.attrs.customColor = setColor
838
+ obj.attrs.oldCustomColor = obj.attrs.customColor;
839
+ obj.attrs.customColor = setColor;
842
840
  } else {
843
- obj.attrs.customColor = obj.attrs.oldCustomColor
841
+ obj.attrs.customColor = obj.attrs.oldCustomColor;
844
842
  if (obj.attrs.shapeType === 'hatch' || obj.attrs.shapeType === 'text') {
845
843
  obj.setFill(obj.attrs.customColor);
846
844
  }
847
845
  obj.setStroke(obj.attrs.customColor);
848
846
  }
849
847
  } else {
850
- obj.children.forEach((item) => {
848
+ obj.children.forEach(item => {
851
849
  this.traverseLayer(item, color);
852
850
  });
853
851
  }
@@ -855,7 +853,7 @@ export default {
855
853
  },
856
854
  beforeDestroy() {
857
855
  this.clearCache();
858
- }
856
+ },
859
857
  };
860
858
  </script>
861
859
  <style lang="scss" scoped>