fl-web-component 2.0.0-beta.6 → 2.0.0-beta.8
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.
- package/README.md +30 -1
- package/dist/fl-web-component.common.js +121 -61
- package/dist/fl-web-component.common.js.map +1 -1
- package/dist/fl-web-component.css +1 -1
- package/package.json +1 -1
- package/packages/components/com-flcanvas/components/entityFormatting.js +62 -10
- package/packages/components/com-graphics/index.vue +13 -2
- package/src/utils/flgltf-parser.js +245 -245
|
@@ -1 +1 @@
|
|
|
1
|
-
@charset "UTF-8";#fl-model[data-v-1241ca06]{width:100%;height:100%;cursor:pointer}[data-v-1241ca06] .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-1241ca06] .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-1241ca06] .circle-tag{width:10px;height:10px;margin-top:5px;border-radius:50%;background-color:#ff5000}[data-v-1241ca06] .measure-label-font{word-break:break-all}[data-v-1241ca06] .mark-label-img{padding-top:5px;width:20px;height:20px}.loading-overlay[data-v-1241ca06]{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-1241ca06]{opacity:1;visibility:visible}.loading-content[data-v-1241ca06]{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-1241ca06]{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #409eff;border-radius:50%;-webkit-animation:spin-1241ca06 1s linear infinite;animation:spin-1241ca06 1s linear infinite;margin:0 auto 20px}@-webkit-keyframes spin-1241ca06{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes spin-1241ca06{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.loading-text[data-v-1241ca06]{font-size:16px;font-weight:500;color:#333;margin-bottom:20px}.loading-progress-bar[data-v-1241ca06]{width:100%;height:8px;background-color:#f0f0f0;border-radius:4px;overflow:hidden;margin-bottom:15px}.loading-progress-fill[data-v-1241ca06]{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-1241ca06]{font-size:12px;color:#666;line-height:1.5}.lil-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-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-gui .controller{border-bottom:1px solid #f1f3f4!important;background:transparent!important}.lil-gui .controller:last-child{border-bottom:none!important}.lil-gui .controller .name{color:#495057!important;font-weight:500!important;font-size:12px!important}.lil-gui .controller .widget{background:#f8f9fa!important;border:1px solid #ced4da!important;border-radius:4px!important;color:#495057!important}.lil-gui .controller .widget:focus,.lil-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-gui .controller .widget:focus{outline:none!important}.lil-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-gui .controller.number .fill{border-right:solid #008de9}.lil-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-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-gui .controller .option{background:#fff!important;color:#495057!important;border-bottom:1px solid #f1f3f4!important}.lil-gui .controller .option:hover{background:#f8f9fa!important}.lil-gui .controller .option:last-child{border-bottom:none!important}.lil-gui input:active{background:#e6eff4}.lil-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-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-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-gui .controller.number .slider,.lil-gui .controller.number .slider:hover{background-color:#e6eff4}.lil-gui input,.lil-gui input:hover,.lil-gui input[type=number]:focus,.lil-gui input[type=text]:focus{background:#e6eff4}.lil-gui .controller>.name{min-width:25px}.lil-gui .controller.number input{color:#2e3136}.lil-gui .controller.number .slider:active{background-color:#e6eff4}.lil-gui .folder>.title{background:linear-gradient(135deg,#f1f3f4,#e9ecef)!important;color:#495057!important;border-bottom:1px solid #dee2e6!important}.lil-gui .folder>.title:before{color:#6c757d!important}.lil-gui .folder.closed>.children{display:none!important}#konva-container[data-v-459d4d3b]{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-5f081c10]{position:relative;width:100%;height:100%;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden}.classification_title[data-v-5f081c10]{margin:0 0 10px 0;color:#fff;font-size:14px;cursor:default}.toolbar[data-v-5f081c10]{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-5f081c10],.text_toolbar[data-v-5f081c10]{float:left;width:32px;height:32px;padding:0!important;background-repeat:no-repeat;background-size:24px;background-position:50%}.icon_active[data-v-5f081c10],.icon_toolbar[data-v-5f081c10]:hover,.text_toolbar[data-v-5f081c10]:hover{background-color:#eee}[data-v-5f081c10].icon_color .el-color-picker__trigger{height:24px;margin-top:4px;width:24px!important}[data-v-5f081c10].el-color-picker--medium,[data-v-5f081c10].el-color-picker--medium .el-color-picker__trigger{width:24px!important;height:24px!important}.canvas_container[data-v-5f081c10]{position:relative;width:100%;height:100%;overflow:auto;-webkit-box-sizing:border-box;box-sizing:border-box}.canvas_container canvas[data-v-5f081c10]{position:absolute;left:0}.canvas_container #ctx_front[data-v-5f081c10]{z-index:5;background-color:transparent}.canvas_container #ctx_back[data-v-5f081c10]{z-index:3}.canvas_container #ctx_base[data-v-5f081c10]{z-index:1}#text[data-v-5f081c10]{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-5f081c10]:hover{border:1px dashed #53a8ff}#svg-component[data-v-6e1600cc],#svg-tigger[data-v-6e1600cc]{cursor:pointer;height:100%;width:100%;position:relative}#toolbar-show[data-v-6e1600cc]{z-index:20;position:absolute;top:0;left:0;background:#fff}#three-box[data-v-5504c19e],#toolbar-show[data-v-6e1600cc]{width:100%;height:100%;overflow:hidden}
|
|
1
|
+
@charset "UTF-8";#fl-model[data-v-5e18bf7c]{width:100%;height:100%;cursor:pointer}[data-v-5e18bf7c] .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-5e18bf7c] .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-5e18bf7c] .circle-tag{width:10px;height:10px;margin-top:5px;border-radius:50%;background-color:#ff5000}[data-v-5e18bf7c] .measure-label-font{word-break:break-all}[data-v-5e18bf7c] .mark-label-img{padding-top:5px;width:20px;height:20px}.loading-overlay[data-v-5e18bf7c]{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-5e18bf7c]{opacity:1;visibility:visible}.loading-content[data-v-5e18bf7c]{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-5e18bf7c]{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #409eff;border-radius:50%;-webkit-animation:spin-5e18bf7c 1s linear infinite;animation:spin-5e18bf7c 1s linear infinite;margin:0 auto 20px}@-webkit-keyframes spin-5e18bf7c{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes spin-5e18bf7c{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.loading-text[data-v-5e18bf7c]{font-size:16px;font-weight:500;color:#333;margin-bottom:20px}.loading-progress-bar[data-v-5e18bf7c]{width:100%;height:8px;background-color:#f0f0f0;border-radius:4px;overflow:hidden;margin-bottom:15px}.loading-progress-fill[data-v-5e18bf7c]{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-5e18bf7c]{font-size:12px;color:#666;line-height:1.5}.lil-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-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-gui .controller{border-bottom:1px solid #f1f3f4!important;background:transparent!important}.lil-gui .controller:last-child{border-bottom:none!important}.lil-gui .controller .name{color:#495057!important;font-weight:500!important;font-size:12px!important}.lil-gui .controller .widget{background:#f8f9fa!important;border:1px solid #ced4da!important;border-radius:4px!important;color:#495057!important}.lil-gui .controller .widget:focus,.lil-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-gui .controller .widget:focus{outline:none!important}.lil-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-gui .controller.number .fill{border-right:solid #008de9}.lil-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-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-gui .controller .option{background:#fff!important;color:#495057!important;border-bottom:1px solid #f1f3f4!important}.lil-gui .controller .option:hover{background:#f8f9fa!important}.lil-gui .controller .option:last-child{border-bottom:none!important}.lil-gui input:active{background:#e6eff4}.lil-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-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-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-gui .controller.number .slider,.lil-gui .controller.number .slider:hover{background-color:#e6eff4}.lil-gui input,.lil-gui input:hover,.lil-gui input[type=number]:focus,.lil-gui input[type=text]:focus{background:#e6eff4}.lil-gui .controller>.name{min-width:25px}.lil-gui .controller.number input{color:#2e3136}.lil-gui .controller.number .slider:active{background-color:#e6eff4}.lil-gui .folder>.title{background:linear-gradient(135deg,#f1f3f4,#e9ecef)!important;color:#495057!important;border-bottom:1px solid #dee2e6!important}.lil-gui .folder>.title:before{color:#6c757d!important}.lil-gui .folder.closed>.children{display:none!important}#konva-container[data-v-459d4d3b]{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-5f081c10]{position:relative;width:100%;height:100%;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden}.classification_title[data-v-5f081c10]{margin:0 0 10px 0;color:#fff;font-size:14px;cursor:default}.toolbar[data-v-5f081c10]{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-5f081c10],.text_toolbar[data-v-5f081c10]{float:left;width:32px;height:32px;padding:0!important;background-repeat:no-repeat;background-size:24px;background-position:50%}.icon_active[data-v-5f081c10],.icon_toolbar[data-v-5f081c10]:hover,.text_toolbar[data-v-5f081c10]:hover{background-color:#eee}[data-v-5f081c10].icon_color .el-color-picker__trigger{height:24px;margin-top:4px;width:24px!important}[data-v-5f081c10].el-color-picker--medium,[data-v-5f081c10].el-color-picker--medium .el-color-picker__trigger{width:24px!important;height:24px!important}.canvas_container[data-v-5f081c10]{position:relative;width:100%;height:100%;overflow:auto;-webkit-box-sizing:border-box;box-sizing:border-box}.canvas_container canvas[data-v-5f081c10]{position:absolute;left:0}.canvas_container #ctx_front[data-v-5f081c10]{z-index:5;background-color:transparent}.canvas_container #ctx_back[data-v-5f081c10]{z-index:3}.canvas_container #ctx_base[data-v-5f081c10]{z-index:1}#text[data-v-5f081c10]{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-5f081c10]:hover{border:1px dashed #53a8ff}#svg-component[data-v-6e1600cc],#svg-tigger[data-v-6e1600cc]{cursor:pointer;height:100%;width:100%;position:relative}#toolbar-show[data-v-6e1600cc]{z-index:20;position:absolute;top:0;left:0;background:#fff}#three-box[data-v-5504c19e],#toolbar-show[data-v-6e1600cc]{width:100%;height:100%;overflow:hidden}
|
package/package.json
CHANGED
|
@@ -365,7 +365,6 @@ function drawLine(recordDxf, entity, group, key, configParams) {
|
|
|
365
365
|
// group.add(line);
|
|
366
366
|
}
|
|
367
367
|
function drawText(recordDxf, entity, group, key, configParams) {
|
|
368
|
-
|
|
369
368
|
let color=entity.color;
|
|
370
369
|
let rgb=decimalToRGBHex(color);
|
|
371
370
|
console.log(rgb);
|
|
@@ -400,6 +399,17 @@ function drawText(recordDxf, entity, group, key, configParams) {
|
|
|
400
399
|
stroke: hex,
|
|
401
400
|
strokeWidth:0.1,
|
|
402
401
|
});
|
|
402
|
+
let width=dim.getTextWidth()
|
|
403
|
+
//let clientRect=dim.getClientRect()
|
|
404
|
+
//let clientWidth=clientRect.width;
|
|
405
|
+
|
|
406
|
+
if(entity.halign){
|
|
407
|
+
if(entity.halign==1){
|
|
408
|
+
dim.attrs.x= dim.attrs.x-(width/2);
|
|
409
|
+
}
|
|
410
|
+
}
|
|
411
|
+
|
|
412
|
+
|
|
403
413
|
if (entity.rotation) {
|
|
404
414
|
if(entity.rotation==90||parseInt(entity.rotation)==90||parseInt(entity.rotation)==89||parseInt(entity.rotation)==450) {
|
|
405
415
|
dim.attrs.x = parseFloat(x) - fontSize;
|
|
@@ -414,8 +424,59 @@ function drawText(recordDxf, entity, group, key, configParams) {
|
|
|
414
424
|
if(entity.rotation==360||parseFloat(entity.rotation)==360){
|
|
415
425
|
dim.attrs.y= -parseFloat(y) - fontSize;
|
|
416
426
|
}
|
|
427
|
+
if(parseInt(entity.rotation)==30||parseInt(entity.rotation)==29) {
|
|
428
|
+
//dim.attrs.x= parseFloat(x) -200;
|
|
429
|
+
|
|
430
|
+
//console.log("rect");
|
|
431
|
+
//console.log(rect);
|
|
432
|
+
dim.attrs.y= -parseFloat(y) - fontSize*0.85;
|
|
433
|
+
dim.attrs.x = parseFloat(x) - fontSize*0.85;
|
|
434
|
+
if(text.length>9){
|
|
435
|
+
let width=dim.getTextWidth()
|
|
436
|
+
//let clientRect=dim.getClientRect()
|
|
437
|
+
//let clientWidth=clientRect.width;
|
|
438
|
+
dim.attrs.y= -parseFloat(y) +fontSize;
|
|
439
|
+
if(entity.halign){
|
|
440
|
+
if(entity.halign==1){
|
|
441
|
+
dim.attrs.x= dim.attrs.x-(width/2);
|
|
442
|
+
}
|
|
443
|
+
|
|
444
|
+
}
|
|
445
|
+
if (entity.valign === 3) { // Middle
|
|
446
|
+
dim.attrs.x= dim.attrs.x+1;
|
|
447
|
+
dim.attrs.y = -parseFloat(y) +fontSize*1.8 ;
|
|
448
|
+
}
|
|
449
|
+
}else{
|
|
450
|
+
if (entity.valign === 3) { // Middle
|
|
451
|
+
dim.attrs.x= dim.attrs.x+1;
|
|
452
|
+
dim.attrs.y = -parseFloat(y) ;
|
|
453
|
+
}
|
|
454
|
+
}
|
|
455
|
+
}
|
|
456
|
+
if(parseInt(entity.rotation)==330||parseInt(entity.rotation)==329) {
|
|
457
|
+
//dim.attrs.x= parseFloat(x) -200;
|
|
458
|
+
|
|
459
|
+
//console.log("rect");
|
|
460
|
+
//console.log(rect);
|
|
461
|
+
dim.attrs.y= -parseFloat(y) -fontSize;
|
|
462
|
+
dim.attrs.x = parseFloat(x) +0.5;
|
|
463
|
+
}
|
|
464
|
+
if(parseInt(entity.rotation)==60||parseInt(entity.rotation)==60) {
|
|
465
|
+
//dim.attrs.x= parseFloat(x) -200;
|
|
466
|
+
|
|
467
|
+
//console.log("rect");
|
|
468
|
+
//console.log(rect);
|
|
469
|
+
dim.attrs.y= -parseFloat(y) ;
|
|
470
|
+
dim.attrs.x = parseFloat(x) -fontSize;
|
|
471
|
+
}
|
|
472
|
+
|
|
473
|
+
|
|
474
|
+
// dim.attrs.y= -parseFloat(y)+ fontSize*0.8;
|
|
475
|
+
|
|
417
476
|
dim.attrs.rotation = 360-entity.rotation ;
|
|
477
|
+
|
|
418
478
|
}else{
|
|
479
|
+
|
|
419
480
|
// 支持 DXF 垂直对齐(valign),仅在未旋转时按插入点对齐
|
|
420
481
|
if (entity.valign === 2) { // Middle
|
|
421
482
|
dim.attrs.y = -parseFloat(y) - fontSize / 2;
|
|
@@ -429,16 +490,7 @@ function drawText(recordDxf, entity, group, key, configParams) {
|
|
|
429
490
|
dim.attrs.fontSize =(fontSize+0.35)* entity.xScale;
|
|
430
491
|
}
|
|
431
492
|
|
|
432
|
-
let width=dim.getTextWidth()
|
|
433
|
-
//let clientRect=dim.getClientRect()
|
|
434
|
-
//let clientWidth=clientRect.width;
|
|
435
493
|
|
|
436
|
-
if(entity.halign){
|
|
437
|
-
if(entity.halign==1){
|
|
438
|
-
dim.attrs.x= dim.attrs.x-(width*1.15/2);
|
|
439
|
-
|
|
440
|
-
}
|
|
441
|
-
}
|
|
442
494
|
|
|
443
495
|
//dim.attrs.x= dim.attrs.x-parseFloat(2);
|
|
444
496
|
group.push({
|
|
@@ -2294,7 +2294,9 @@ export default {
|
|
|
2294
2294
|
|
|
2295
2295
|
/**
|
|
2296
2296
|
* 初始化流式加载器(别名 init)
|
|
2297
|
-
* @param {Object} config -
|
|
2297
|
+
* @param {Object} config - 配置项
|
|
2298
|
+
* @param {Object} config.modelApi - 模型API接口
|
|
2299
|
+
* @param {string} [config.projectId] - 项目ID
|
|
2298
2300
|
*/
|
|
2299
2301
|
init(config = {}) {
|
|
2300
2302
|
this.initStreamLoader(config.modelApi, config);
|
|
@@ -2304,6 +2306,7 @@ export default {
|
|
|
2304
2306
|
* 初始化流式加载器
|
|
2305
2307
|
* @param {Object} modelApi - 模型API接口
|
|
2306
2308
|
* @param {Object} config - 其他配置
|
|
2309
|
+
* @param {string} [config.projectId] - 项目ID
|
|
2307
2310
|
*/
|
|
2308
2311
|
initStreamLoader(modelApi, config = {}) {
|
|
2309
2312
|
const { projectId, ...restConfig } = config || {};
|
|
@@ -3124,6 +3127,7 @@ export default {
|
|
|
3124
3127
|
* }
|
|
3125
3128
|
*/
|
|
3126
3129
|
updateProperty(list) {
|
|
3130
|
+
let isUpdate = false;
|
|
3127
3131
|
for (let index = 0; index < list.length; index++) {
|
|
3128
3132
|
let ele = list[index];
|
|
3129
3133
|
let type = ele.type || 'mesh';
|
|
@@ -3164,6 +3168,9 @@ export default {
|
|
|
3164
3168
|
});
|
|
3165
3169
|
break;
|
|
3166
3170
|
case 'visible':
|
|
3171
|
+
if (isUpdate == false) {
|
|
3172
|
+
isUpdate = true;
|
|
3173
|
+
}
|
|
3167
3174
|
if (this._boxIndex && this._boxIndex.has(instanceId)) {
|
|
3168
3175
|
const boxData = this._boxIndex.get(instanceId);
|
|
3169
3176
|
if (boxData && boxData.userData) {
|
|
@@ -3233,6 +3240,10 @@ export default {
|
|
|
3233
3240
|
}
|
|
3234
3241
|
// obj.material.needsUpdate = true;
|
|
3235
3242
|
}
|
|
3243
|
+
// 只有可见性改变时才需要更新八叉树
|
|
3244
|
+
if (this._boxIndex && isUpdate) {
|
|
3245
|
+
this.buildOctreeFromBoxIndex();
|
|
3246
|
+
}
|
|
3236
3247
|
},
|
|
3237
3248
|
showOutlinePass(instanceId) {
|
|
3238
3249
|
let targetObj = this.getObjectByName(instanceId);
|
|
@@ -5395,7 +5406,7 @@ export default {
|
|
|
5395
5406
|
totalBatches: loadingState.totalBatches,
|
|
5396
5407
|
});
|
|
5397
5408
|
|
|
5398
|
-
if(isDebug){
|
|
5409
|
+
if (isDebug) {
|
|
5399
5410
|
var axesHelper = new this.THREE.AxesHelper(10000);
|
|
5400
5411
|
scene.add(axesHelper);
|
|
5401
5412
|
}
|