fl-web-component 1.3.15 → 1.3.16
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 +5 -1
- package/dist/fl-web-component.common.js +123 -114
- 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-graphics/index.vue +17 -1
- package/src/utils/flgltf-parser.js +4 -2
- package/src/utils/instance-parser.js +76 -67
package/README.md
CHANGED
|
@@ -1194,6 +1194,13 @@ Factory_1.Factory.addGetterSetter(Layer, 'hitGraphEnabled', true, (0, Validators
|
|
|
1194
1194
|
|
|
1195
1195
|
/***/ }),
|
|
1196
1196
|
|
|
1197
|
+
/***/ "101a":
|
|
1198
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
1199
|
+
|
|
1200
|
+
// extracted by mini-css-extract-plugin
|
|
1201
|
+
|
|
1202
|
+
/***/ }),
|
|
1203
|
+
|
|
1197
1204
|
/***/ "122f":
|
|
1198
1205
|
/***/ (function(module, exports, __webpack_require__) {
|
|
1199
1206
|
|
|
@@ -1218,17 +1225,6 @@ var Threshold = function Threshold(imageData) {
|
|
|
1218
1225
|
exports.Threshold = Threshold;
|
|
1219
1226
|
Factory_1.Factory.addGetterSetter(Node_1.Node, 'threshold', 0.5, (0, Validators_1.getNumberValidator)(), Factory_1.Factory.afterSetFilter);
|
|
1220
1227
|
|
|
1221
|
-
/***/ }),
|
|
1222
|
-
|
|
1223
|
-
/***/ "12cc":
|
|
1224
|
-
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
1225
|
-
|
|
1226
|
-
"use strict";
|
|
1227
|
-
/* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_dist_cjs_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_id_0390b048_prod_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("2b3e");
|
|
1228
|
-
/* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_dist_cjs_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_id_0390b048_prod_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_dist_cjs_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_id_0390b048_prod_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0__);
|
|
1229
|
-
/* unused harmony reexport * */
|
|
1230
|
-
|
|
1231
|
-
|
|
1232
1228
|
/***/ }),
|
|
1233
1229
|
|
|
1234
1230
|
/***/ "1bd8":
|
|
@@ -2665,13 +2661,6 @@ Factory_1.Factory.addGetterSetter(TextPath, 'kerningFunc', undefined);
|
|
|
2665
2661
|
|
|
2666
2662
|
/***/ }),
|
|
2667
2663
|
|
|
2668
|
-
/***/ "2b3e":
|
|
2669
|
-
/***/ (function(module, exports, __webpack_require__) {
|
|
2670
|
-
|
|
2671
|
-
// extracted by mini-css-extract-plugin
|
|
2672
|
-
|
|
2673
|
-
/***/ }),
|
|
2674
|
-
|
|
2675
2664
|
/***/ "2fb2":
|
|
2676
2665
|
/***/ (function(module, exports, __webpack_require__) {
|
|
2677
2666
|
|
|
@@ -5894,6 +5883,17 @@ Factory_1.Factory.addGetterSetter(Text, 'letterSpacing', 0, (0, Validators_1.get
|
|
|
5894
5883
|
Factory_1.Factory.addGetterSetter(Text, 'text', '', (0, Validators_1.getStringValidator)());
|
|
5895
5884
|
Factory_1.Factory.addGetterSetter(Text, 'textDecoration', '');
|
|
5896
5885
|
|
|
5886
|
+
/***/ }),
|
|
5887
|
+
|
|
5888
|
+
/***/ "596c":
|
|
5889
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
5890
|
+
|
|
5891
|
+
"use strict";
|
|
5892
|
+
/* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_2_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_1_id_c496e868_prod_lang_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("101a");
|
|
5893
|
+
/* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_2_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_1_id_c496e868_prod_lang_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_2_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_1_id_c496e868_prod_lang_css__WEBPACK_IMPORTED_MODULE_0__);
|
|
5894
|
+
/* unused harmony reexport * */
|
|
5895
|
+
|
|
5896
|
+
|
|
5897
5897
|
/***/ }),
|
|
5898
5898
|
|
|
5899
5899
|
/***/ "5c7d":
|
|
@@ -22284,7 +22284,7 @@ Factory_1.Factory.addGetterSetter(Node_1.Node, 'blue', 0, Validators_1.RGBCompon
|
|
|
22284
22284
|
/***/ "9224":
|
|
22285
22285
|
/***/ (function(module) {
|
|
22286
22286
|
|
|
22287
|
-
module.exports = JSON.parse("{\"name\":\"fl-web-component\",\"version\":\"1.3.
|
|
22287
|
+
module.exports = JSON.parse("{\"name\":\"fl-web-component\",\"version\":\"1.3.16\",\"scripts\":{\"tip1\":\"仅调试本组件不涉及业务组件,请执行dev\",\"dev\":\"vue-cli-service serve\",\"lint\":\"eslint \\\"{src,packages}/**/*.{vue,js}\\\" --fix\",\"prettier\":\"prettier --write \\\"packages/**/*.{js,css,less,scss,vue,html}\\\"\",\"=\":\"=============================================================\",\"tip2\":\"同时调试本组件与业务组件,请执行watch\",\"watch\":\"vue-cli-service build --watch --mode production --target lib --name fl-web-component --formats commonjs ./src/main.js\",\"build\":\"npm run lint && vue-cli-service build --target lib --name fl-web-component --formats commonjs ./src/main.js\",\"build:test\":\"vue-cli-service build --target lib --name fl-web-component --formats commonjs ./src/main.js\",\"publish:base\":\"npm run build && npm publish --registry https://registry.npmjs.org/\",\"==\":\"=============================================================\",\"tip3\":\"发版注意: 【修改bug执行publish:fix】【新增功能执行publish:feat】【新特性执行publish:perf】\",\"publish:fix\":\"npm version patch && npm run publish:base\",\"publish:feat\":\"npm version minor && npm run publish:base\",\"publish:perf\":\"npm version major && npm run publish:base\"},\"files\":[\"dist\",\"packages\",\"src\",\"patches\"],\"main\":\"dist/fl-web-component.common.js\",\"dependencies\":{\"camera-controls\":\"2.9.0\",\"core-js\":\"^3.42.0\",\"dxf-parser\":\"^1.1.2\",\"element-ui\":\"2.15.14\",\"html2canvas\":\"^1.4.1\",\"jspdf\":\"^3.0.1\",\"konva\":\"^9.3.14\",\"lodash\":\"^4.17.21\",\"meshline\":\"^3.3.1\",\"regenerator-runtime\":\"^0.14.1\",\"svg-pan-zoom\":\"^3.6.2\",\"three\":\"^0.176.0\",\"three.path\":\"^1.0.1\",\"vue\":\"^2.6.11\"},\"devDependencies\":{\"@babel/core\":\"^7.12.16\",\"@babel/preset-env\":\"^7.0.0\",\"@babel/runtime-corejs3\":\"^7.27.1\",\"@vue/cli-plugin-babel\":\"~4.4.0\",\"@vue/cli-plugin-eslint\":\"~4.4.0\",\"@vue/cli-service\":\"~4.4.0\",\"babel-eslint\":\"^10.1.0\",\"babel-loader\":\"^8.0.0\",\"copy-webpack-plugin\":\"^4.0.1\",\"eslint\":\"^6.7.2\",\"eslint-plugin-vue\":\"^6.2.2\",\"patch-package\":\"^6.4.7\",\"sass\":\"1.32.13\",\"sass-loader\":\"10.1.1\",\"vue-template-compiler\":\"^2.6.11\"},\"eslintConfig\":{\"root\":true,\"env\":{\"node\":true},\"extends\":[\"plugin:vue/essential\",\"eslint:recommended\"],\"parserOptions\":{\"parser\":\"babel-eslint\"},\"rules\":{}},\"browserslist\":[\"> 1%\",\"last 2 versions\",\"not dead\"]}");
|
|
22288
22288
|
|
|
22289
22289
|
/***/ }),
|
|
22290
22290
|
|
|
@@ -26485,13 +26485,6 @@ if (Global_1.Konva.isBrowser) {
|
|
|
26485
26485
|
|
|
26486
26486
|
/***/ }),
|
|
26487
26487
|
|
|
26488
|
-
/***/ "e043":
|
|
26489
|
-
/***/ (function(module, exports, __webpack_require__) {
|
|
26490
|
-
|
|
26491
|
-
// extracted by mini-css-extract-plugin
|
|
26492
|
-
|
|
26493
|
-
/***/ }),
|
|
26494
|
-
|
|
26495
26488
|
/***/ "e0ed":
|
|
26496
26489
|
/***/ (function(module, exports, __webpack_require__) {
|
|
26497
26490
|
|
|
@@ -26832,17 +26825,6 @@ Factory_1.Factory.addGetterSetter(Node_1.Node, 'embossWhiteLevel', 0.5, (0, Vali
|
|
|
26832
26825
|
Factory_1.Factory.addGetterSetter(Node_1.Node, 'embossDirection', 'top-left', undefined, Factory_1.Factory.afterSetFilter);
|
|
26833
26826
|
Factory_1.Factory.addGetterSetter(Node_1.Node, 'embossBlend', false, undefined, Factory_1.Factory.afterSetFilter);
|
|
26834
26827
|
|
|
26835
|
-
/***/ }),
|
|
26836
|
-
|
|
26837
|
-
/***/ "e731":
|
|
26838
|
-
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
26839
|
-
|
|
26840
|
-
"use strict";
|
|
26841
|
-
/* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_2_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_1_id_0390b048_prod_lang_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("e043");
|
|
26842
|
-
/* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_2_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_1_id_0390b048_prod_lang_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_2_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_1_id_0390b048_prod_lang_css__WEBPACK_IMPORTED_MODULE_0__);
|
|
26843
|
-
/* unused harmony reexport * */
|
|
26844
|
-
|
|
26845
|
-
|
|
26846
26828
|
/***/ }),
|
|
26847
26829
|
|
|
26848
26830
|
/***/ "ea61":
|
|
@@ -28262,6 +28244,17 @@ Animation.animations = [];
|
|
|
28262
28244
|
Animation.animIdCounter = 0;
|
|
28263
28245
|
Animation.animRunning = false;
|
|
28264
28246
|
|
|
28247
|
+
/***/ }),
|
|
28248
|
+
|
|
28249
|
+
/***/ "f046":
|
|
28250
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
28251
|
+
|
|
28252
|
+
"use strict";
|
|
28253
|
+
/* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_dist_cjs_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_id_c496e868_prod_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("f494");
|
|
28254
|
+
/* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_dist_cjs_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_id_c496e868_prod_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_dist_cjs_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_id_c496e868_prod_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0__);
|
|
28255
|
+
/* unused harmony reexport * */
|
|
28256
|
+
|
|
28257
|
+
|
|
28265
28258
|
/***/ }),
|
|
28266
28259
|
|
|
28267
28260
|
/***/ "f0b4":
|
|
@@ -28447,6 +28440,13 @@ Group.prototype.nodeType = 'Group';
|
|
|
28447
28440
|
|
|
28448
28441
|
/***/ }),
|
|
28449
28442
|
|
|
28443
|
+
/***/ "f494":
|
|
28444
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
28445
|
+
|
|
28446
|
+
// extracted by mini-css-extract-plugin
|
|
28447
|
+
|
|
28448
|
+
/***/ }),
|
|
28449
|
+
|
|
28450
28450
|
/***/ "f655":
|
|
28451
28451
|
/***/ (function(module, exports, __webpack_require__) {
|
|
28452
28452
|
|
|
@@ -29274,8 +29274,8 @@ if (typeof window !== 'undefined') {
|
|
|
29274
29274
|
// Indicate to webpack that this file can be concatenated
|
|
29275
29275
|
/* harmony default export */ var setPublicPath = (null);
|
|
29276
29276
|
|
|
29277
|
-
// CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"
|
|
29278
|
-
var
|
|
29277
|
+
// CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7bffa45c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./packages/components/com-graphics/index.vue?vue&type=template&id=c496e868&scoped=true
|
|
29278
|
+
var com_graphicsvue_type_template_id_c496e868_scoped_true_render = function render() {
|
|
29279
29279
|
var _vm = this,
|
|
29280
29280
|
_c = _vm._self._c;
|
|
29281
29281
|
return _c('div', {
|
|
@@ -29286,7 +29286,7 @@ var com_graphicsvue_type_template_id_0390b048_scoped_true_render = function rend
|
|
|
29286
29286
|
};
|
|
29287
29287
|
var staticRenderFns = [];
|
|
29288
29288
|
|
|
29289
|
-
// CONCATENATED MODULE: ./packages/components/com-graphics/index.vue?vue&type=template&id=
|
|
29289
|
+
// CONCATENATED MODULE: ./packages/components/com-graphics/index.vue?vue&type=template&id=c496e868&scoped=true
|
|
29290
29290
|
|
|
29291
29291
|
// CONCATENATED MODULE: ./node_modules/camera-controls/dist/camera-controls.module.js
|
|
29292
29292
|
function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
|
|
@@ -57204,7 +57204,8 @@ function parseData(input) {
|
|
|
57204
57204
|
// 默认值
|
|
57205
57205
|
linewidth: (material === null || material === void 0 ? void 0 : material.linewidth) !== undefined ? material === null || material === void 0 ? void 0 : material.linewidth : 1,
|
|
57206
57206
|
// 默认值
|
|
57207
|
-
visible: (material === null || material === void 0 ? void 0 : material.visible) === false ? false : true
|
|
57207
|
+
visible: (material === null || material === void 0 ? void 0 : material.visible) === false ? false : true,
|
|
57208
|
+
transparent: material === null || material === void 0 ? void 0 : material.transp
|
|
57208
57209
|
};
|
|
57209
57210
|
var identity = new Matrix4().identity();
|
|
57210
57211
|
geomList.push({
|
|
@@ -57285,7 +57286,8 @@ function parseNode(node) {
|
|
|
57285
57286
|
}
|
|
57286
57287
|
});
|
|
57287
57288
|
if (isRoot) {
|
|
57288
|
-
|
|
57289
|
+
// 根节点父ID应为空字符串
|
|
57290
|
+
var processed = processInstance(instance, '', instanceMap);
|
|
57289
57291
|
rootInstances.push(processed);
|
|
57290
57292
|
}
|
|
57291
57293
|
});
|
|
@@ -59542,14 +59544,16 @@ function handleInstancedMeshModel(modelGroup, instances, drawObjs, type, scene,
|
|
|
59542
59544
|
var targetGroup, instancedMeshIndex, drawObjectName;
|
|
59543
59545
|
var drawObjInstance = drawObjMapInstance[instances[_i].drawObject];
|
|
59544
59546
|
if (((_drawObjInstance$MapM = drawObjInstance.MapMesh) === null || _drawObjInstance$MapM === void 0 ? void 0 : _drawObjInstance$MapM.length) > 0) {
|
|
59547
|
+
// 确保始终使用当前实例的 drawObject 设置分组名
|
|
59548
|
+
drawObjectName = instances[_i].drawObject;
|
|
59545
59549
|
drawObjInstance.MapInstance.forEach(function (instance, index) {
|
|
59546
59550
|
if (instance.instanceId == instances[_i].instanceId) {
|
|
59547
59551
|
instancedMeshIndex = index;
|
|
59548
|
-
drawObjectName = instances[_i].drawObject;
|
|
59549
59552
|
}
|
|
59550
59553
|
});
|
|
59554
|
+
// 在 modelGroup 中查找,避免因尚未加入 scene 而重复创建
|
|
59551
59555
|
if (drawObjectName) {
|
|
59552
|
-
targetGroup =
|
|
59556
|
+
targetGroup = modelGroup.getObjectByName(drawObjectName);
|
|
59553
59557
|
}
|
|
59554
59558
|
if (!targetGroup) {
|
|
59555
59559
|
var _drawObj$MapMesh;
|
|
@@ -59576,42 +59580,44 @@ function handleInstancedMeshModel(modelGroup, instances, drawObjs, type, scene,
|
|
|
59576
59580
|
model.userData[_key] = meshNameConfig[_key];
|
|
59577
59581
|
meshName += ':' + meshNameConfig[_key];
|
|
59578
59582
|
}
|
|
59583
|
+
// 一次性为该 drawObject 的所有实例设置矩阵与颜色
|
|
59579
59584
|
drawObj.MapInstance.forEach(function (item, index) {
|
|
59580
|
-
|
|
59581
|
-
|
|
59582
|
-
|
|
59583
|
-
|
|
59584
|
-
|
|
59585
|
-
|
|
59586
|
-
|
|
59587
|
-
|
|
59588
|
-
|
|
59589
|
-
|
|
59590
|
-
|
|
59591
|
-
|
|
59592
|
-
|
|
59593
|
-
|
|
59594
|
-
|
|
59595
|
-
|
|
59596
|
-
|
|
59597
|
-
|
|
59598
|
-
|
|
59599
|
-
|
|
59600
|
-
|
|
59601
|
-
|
|
59602
|
-
geomMatrix.multiply(alignMatrix).multiply(positionMatrix);
|
|
59603
|
-
}
|
|
59604
|
-
m4.multiplyMatrices(meshMatrix, geomMatrix);
|
|
59605
|
-
model.setMatrixAt(index, m4);
|
|
59606
|
-
var copyMatrix = new Matrix4().copy(m4);
|
|
59607
|
-
model.userData.copyMatrix = copyMatrix;
|
|
59585
|
+
var _item$matrix;
|
|
59586
|
+
model.userData.instanceIndex = index;
|
|
59587
|
+
model.userData.instanceId = item.instanceId;
|
|
59588
|
+
model.userData.primId = mesh.prmid;
|
|
59589
|
+
model.name = meshName !== '' ? item.instanceId + meshName : item.instanceId;
|
|
59590
|
+
var matrixVal = (_item$matrix = item.matrix) === null || _item$matrix === void 0 ? void 0 : _item$matrix.val;
|
|
59591
|
+
if (matrixVal) {
|
|
59592
|
+
var m4 = new Matrix4();
|
|
59593
|
+
var meshMatrix = new Matrix4();
|
|
59594
|
+
var geomMatrix = new Matrix4();
|
|
59595
|
+
// m4.setPosition(new THREE.Vector3(9999999, 9999999, 9999999)); // TODO 临时隐藏方案
|
|
59596
|
+
meshMatrix.elements = item.matrix.val;
|
|
59597
|
+
geomMatrix.elements = mesh.matrix.val;
|
|
59598
|
+
|
|
59599
|
+
// 处理文本居中对齐
|
|
59600
|
+
var points = mesh.points,
|
|
59601
|
+
alignType = mesh.alignType;
|
|
59602
|
+
if (isTextType(mesh.type)) {
|
|
59603
|
+
var positionMatrix = new Matrix4();
|
|
59604
|
+
var alignMatrix = createAlignedText(alignType, model.geometry);
|
|
59605
|
+
positionMatrix.identity().makeTranslation(points[0], points[1], points[2]);
|
|
59606
|
+
geomMatrix.multiply(alignMatrix).multiply(positionMatrix);
|
|
59608
59607
|
}
|
|
59609
|
-
|
|
59610
|
-
|
|
59611
|
-
var
|
|
59612
|
-
model.
|
|
59608
|
+
m4.multiplyMatrices(meshMatrix, geomMatrix);
|
|
59609
|
+
model.setMatrixAt(index, m4);
|
|
59610
|
+
var copyMatrix = new Matrix4().copy(m4);
|
|
59611
|
+
model.userData.copyMatrix = copyMatrix;
|
|
59613
59612
|
}
|
|
59613
|
+
// 需要先设置全部实例颜色,否则后续设置颜色无效
|
|
59614
|
+
var color = mesh.prop.color;
|
|
59615
|
+
var meshColor = customColor ? new Color(customColor) : new Color("rgb(".concat(color[0], ", ").concat(color[1], ", ").concat(color[2], ")"));
|
|
59616
|
+
model.setColorAt(index, meshColor);
|
|
59614
59617
|
});
|
|
59618
|
+
// 标记实例属性更新
|
|
59619
|
+
if (model.instanceMatrix) model.instanceMatrix.needsUpdate = true;
|
|
59620
|
+
if (model.instanceColor) model.instanceColor.needsUpdate = true;
|
|
59615
59621
|
// model.instanceColor.needsUpdate = true;
|
|
59616
59622
|
group.add(model);
|
|
59617
59623
|
});
|
|
@@ -59790,7 +59796,8 @@ function draw3Dmodel(geom, instanceName, instanceCount, nColor, nOpacity) {
|
|
|
59790
59796
|
var normal = new Float32Array(normals);
|
|
59791
59797
|
geometry.setAttribute('normal', new BufferAttribute(normal, 3));
|
|
59792
59798
|
}
|
|
59793
|
-
var color = prop.color
|
|
59799
|
+
var color = prop.color,
|
|
59800
|
+
transparent = prop.transparent;
|
|
59794
59801
|
var material, mesh, colors, opacity;
|
|
59795
59802
|
if (Array.isArray(color) && color.length) {
|
|
59796
59803
|
colors = color;
|
|
@@ -59803,6 +59810,11 @@ function draw3Dmodel(geom, instanceName, instanceCount, nColor, nOpacity) {
|
|
|
59803
59810
|
opacity = 1;
|
|
59804
59811
|
}
|
|
59805
59812
|
|
|
59813
|
+
// 处理transparent透明度
|
|
59814
|
+
if (transparent) {
|
|
59815
|
+
opacity = 1 - transparent;
|
|
59816
|
+
}
|
|
59817
|
+
|
|
59806
59818
|
// 使用自定义材质或创建标准材质(默认参数配置)
|
|
59807
59819
|
var materialOptions = {
|
|
59808
59820
|
userData: {
|
|
@@ -59832,34 +59844,15 @@ function draw3Dmodel(geom, instanceName, instanceCount, nColor, nOpacity) {
|
|
|
59832
59844
|
geometry.setAttribute('opacity', new InstancedBufferAttribute(opacities, 1));
|
|
59833
59845
|
|
|
59834
59846
|
// 自定义着色器逻辑
|
|
59835
|
-
|
|
59836
|
-
|
|
59837
|
-
|
|
59838
|
-
|
|
59839
|
-
|
|
59840
|
-
|
|
59841
|
-
|
|
59842
|
-
|
|
59843
|
-
|
|
59844
|
-
// `
|
|
59845
|
-
// #include <begin_vertex>
|
|
59846
|
-
// vAlpha = opacity; // 传递透明度到片段着色器
|
|
59847
|
-
// `
|
|
59848
|
-
// );
|
|
59849
|
-
|
|
59850
|
-
// // 修改片段着色器
|
|
59851
|
-
// shader.fragmentShader = `
|
|
59852
|
-
// in float vAlpha;
|
|
59853
|
-
// ${shader.fragmentShader}
|
|
59854
|
-
// `.replace(
|
|
59855
|
-
// '#include <alphatest_fragment>',
|
|
59856
|
-
// `
|
|
59857
|
-
// #include <alphatest_fragment>
|
|
59858
|
-
// diffuseColor.a *= vAlpha; // 应用实例透明度
|
|
59859
|
-
// `
|
|
59860
|
-
// );
|
|
59861
|
-
// };
|
|
59862
|
-
// }
|
|
59847
|
+
if (!customMaterial) {
|
|
59848
|
+
material.onBeforeCompile = function (shader) {
|
|
59849
|
+
// 添加顶点着色器输入
|
|
59850
|
+
shader.vertexShader = "\n in float opacity; // \u5B9E\u4F8B\u900F\u660E\u5EA6\u5C5E\u6027\n out float vAlpha;\n ".concat(shader.vertexShader, "\n ").replace('#include <begin_vertex>', "\n #include <begin_vertex>\n vAlpha = opacity; // \u4F20\u9012\u900F\u660E\u5EA6\u5230\u7247\u6BB5\u7740\u8272\u5668\n ");
|
|
59851
|
+
|
|
59852
|
+
// 修改片段着色器
|
|
59853
|
+
shader.fragmentShader = "\n in float vAlpha;\n ".concat(shader.fragmentShader, "\n ").replace('#include <alphatest_fragment>', "\n #include <alphatest_fragment>\n diffuseColor.a *= vAlpha; // \u5E94\u7528\u5B9E\u4F8B\u900F\u660E\u5EA6\n ");
|
|
59854
|
+
};
|
|
59855
|
+
}
|
|
59863
59856
|
mesh = new InstancedMesh(geometry, material, instanceCount);
|
|
59864
59857
|
var visible = prop.visible;
|
|
59865
59858
|
mesh.visible = visible;
|
|
@@ -61413,6 +61406,7 @@ var guiParams = {
|
|
|
61413
61406
|
var _this = this;
|
|
61414
61407
|
var color = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
|
|
61415
61408
|
var meshNameConfig = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
61409
|
+
var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
|
|
61416
61410
|
if (Object.keys(data).length === 0) {
|
|
61417
61411
|
return;
|
|
61418
61412
|
}
|
|
@@ -61462,6 +61456,9 @@ var guiParams = {
|
|
|
61462
61456
|
this.$emit('modelLoaded');
|
|
61463
61457
|
// cameraControls.saveState();
|
|
61464
61458
|
}
|
|
61459
|
+
|
|
61460
|
+
// 动态设置视角滚轮的距离
|
|
61461
|
+
this.setCameraConfig();
|
|
61465
61462
|
},
|
|
61466
61463
|
// 获取mesh的中心点
|
|
61467
61464
|
getMeshCenterAndVolume: function getMeshCenterAndVolume(mesh) {
|
|
@@ -62659,16 +62656,28 @@ var guiParams = {
|
|
|
62659
62656
|
right = btn.right;
|
|
62660
62657
|
left && (cameraControls.mouseButtons.left = ACTION_ENUM[left]);
|
|
62661
62658
|
right && (cameraControls.mouseButtons.right = ACTION_ENUM[right]);
|
|
62659
|
+
},
|
|
62660
|
+
// 动态设置视角滚轮的距离
|
|
62661
|
+
setCameraConfig: function setCameraConfig() {
|
|
62662
|
+
var box3 = new this.THREE.Box3().setFromObject(com_graphicsvue_type_script_lang_js_scene);
|
|
62663
|
+
var size = new this.THREE.Vector3();
|
|
62664
|
+
box3.getSize(size);
|
|
62665
|
+
var maxBorder = Math.max(size.x, size.y, size.z);
|
|
62666
|
+
cameraControls.camera.far = maxBorder * 50; // 设置相机的远裁剪面
|
|
62667
|
+
|
|
62668
|
+
cameraControls.minDistance = maxBorder * 0.05; // 动态设置视角滚轮的距离
|
|
62669
|
+
|
|
62670
|
+
com_graphicsvue_type_script_lang_js_camera.updateProjectionMatrix();
|
|
62662
62671
|
}
|
|
62663
62672
|
}
|
|
62664
62673
|
});
|
|
62665
62674
|
// CONCATENATED MODULE: ./packages/components/com-graphics/index.vue?vue&type=script&lang=js
|
|
62666
62675
|
/* harmony default export */ var components_com_graphicsvue_type_script_lang_js = (com_graphicsvue_type_script_lang_js);
|
|
62667
|
-
// EXTERNAL MODULE: ./packages/components/com-graphics/index.vue?vue&type=style&index=0&id=
|
|
62668
|
-
var
|
|
62676
|
+
// EXTERNAL MODULE: ./packages/components/com-graphics/index.vue?vue&type=style&index=0&id=c496e868&prod&lang=scss&scoped=true
|
|
62677
|
+
var com_graphicsvue_type_style_index_0_id_c496e868_prod_lang_scss_scoped_true = __webpack_require__("f046");
|
|
62669
62678
|
|
|
62670
|
-
// EXTERNAL MODULE: ./packages/components/com-graphics/index.vue?vue&type=style&index=1&id=
|
|
62671
|
-
var
|
|
62679
|
+
// EXTERNAL MODULE: ./packages/components/com-graphics/index.vue?vue&type=style&index=1&id=c496e868&prod&lang=css
|
|
62680
|
+
var com_graphicsvue_type_style_index_1_id_c496e868_prod_lang_css = __webpack_require__("596c");
|
|
62672
62681
|
|
|
62673
62682
|
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
|
|
62674
62683
|
/* globals __VUE_SSR_CONTEXT__ */
|
|
@@ -62780,17 +62789,17 @@ function normalizeComponent(
|
|
|
62780
62789
|
|
|
62781
62790
|
var component = normalizeComponent(
|
|
62782
62791
|
components_com_graphicsvue_type_script_lang_js,
|
|
62783
|
-
|
|
62792
|
+
com_graphicsvue_type_template_id_c496e868_scoped_true_render,
|
|
62784
62793
|
staticRenderFns,
|
|
62785
62794
|
false,
|
|
62786
62795
|
null,
|
|
62787
|
-
"
|
|
62796
|
+
"c496e868",
|
|
62788
62797
|
null
|
|
62789
62798
|
|
|
62790
62799
|
)
|
|
62791
62800
|
|
|
62792
62801
|
/* harmony default export */ var com_graphics = (component.exports);
|
|
62793
|
-
// CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"
|
|
62802
|
+
// CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7bffa45c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./packages/components/com-flcanvas/index.vue?vue&type=template&id=1b43deb6&scoped=true
|
|
62794
62803
|
var com_flcanvasvue_type_template_id_1b43deb6_scoped_true_render = function render() {
|
|
62795
62804
|
var _vm = this,
|
|
62796
62805
|
_c = _vm._self._c;
|
|
@@ -65900,7 +65909,7 @@ var com_flcanvas_component = normalizeComponent(
|
|
|
65900
65909
|
)
|
|
65901
65910
|
|
|
65902
65911
|
/* harmony default export */ var com_flcanvas = (com_flcanvas_component.exports);
|
|
65903
|
-
// CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"
|
|
65912
|
+
// CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7bffa45c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./packages/components/com-graphics/per-control.vue?vue&type=template&id=f547d5c6&scoped=true
|
|
65904
65913
|
var per_controlvue_type_template_id_f547d5c6_scoped_true_render = function render() {
|
|
65905
65914
|
var _vm = this,
|
|
65906
65915
|
_c = _vm._self._c;
|
|
@@ -66008,7 +66017,7 @@ var per_control_component = normalizeComponent(
|
|
|
66008
66017
|
)
|
|
66009
66018
|
|
|
66010
66019
|
/* harmony default export */ var per_control = (per_control_component.exports);
|
|
66011
|
-
// CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"
|
|
66020
|
+
// CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7bffa45c-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./packages/components/com-graphics/pid.vue?vue&type=template&id=0ec35ee4&scoped=true
|
|
66012
66021
|
var pidvue_type_template_id_0ec35ee4_scoped_true_render = function render() {
|
|
66013
66022
|
var _vm = this,
|
|
66014
66023
|
_c = _vm._self._c;
|