fl-web-component 1.0.7 → 1.0.9

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.
@@ -1211,13 +1211,6 @@ Factory_1.Factory.addGetterSetter(Arrow, 'pointerAtBeginning', false);
1211
1211
  Factory_1.Factory.addGetterSetter(Arrow, 'pointerAtEnding', true);
1212
1212
 
1213
1213
 
1214
- /***/ }),
1215
-
1216
- /***/ "1c33":
1217
- /***/ (function(module, exports, __webpack_require__) {
1218
-
1219
- // extracted by mini-css-extract-plugin
1220
-
1221
1214
  /***/ }),
1222
1215
 
1223
1216
  /***/ "1c49":
@@ -2721,6 +2714,13 @@ Factory_1.Factory.addGetterSetter(TextPath, 'textDecoration', '');
2721
2714
  Factory_1.Factory.addGetterSetter(TextPath, 'kerningFunc', undefined);
2722
2715
 
2723
2716
 
2717
+ /***/ }),
2718
+
2719
+ /***/ "2d3b":
2720
+ /***/ (function(module, exports, __webpack_require__) {
2721
+
2722
+ // extracted by mini-css-extract-plugin
2723
+
2724
2724
  /***/ }),
2725
2725
 
2726
2726
  /***/ "2fb2":
@@ -2863,6 +2863,13 @@ Factory_1.Factory.addGetterSetter(Ellipse, 'radiusX', 0, (0, Validators_1.getNum
2863
2863
  Factory_1.Factory.addGetterSetter(Ellipse, 'radiusY', 0, (0, Validators_1.getNumberValidator)());
2864
2864
 
2865
2865
 
2866
+ /***/ }),
2867
+
2868
+ /***/ "3846":
2869
+ /***/ (function(module, exports) {
2870
+
2871
+ module.exports = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAHWlUWHRTb2Z0d2FyZQAAAAAAQWRvYmUgSW1hZ2VSZWFkeQatApcAAAMjaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/PiA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjYtYzE0OCA3OS4xNjQwMzYsIDIwMTkvMDgvMTMtMDE6MDY6NTcgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCAyMS4wIChXaW5kb3dzKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDozQTZEQkVBMjIxRjcxMUVEOTlGOEMyREEyQzFENDlGNiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDozQTZEQkVBMzIxRjcxMUVEOTlGOEMyREEyQzFENDlGNiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjNBNkRCRUEwMjFGNzExRUQ5OUY4QzJEQTJDMUQ0OUY2IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjNBNkRCRUExMjFGNzExRUQ5OUY4QzJEQTJDMUQ0OUY2Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+4creZwAABhhJREFUSIldV0uIHFUUPfe9etVV/Zv0JH6SGTQuwiQTMSqO+EEQURF04U7EjYiCuBGjbhQFXYgrEcSFC1H3sxIRf5EERchSFM0kIRqZwQwzmu6Z7q6uz6vrou6dKiwo+tX73M+55953m1ZWE4PqYQABAAcgB1AAiGW+lLkAAAHIABhZzwBEAGYyDmUPiQwvY5YXEEGQhbJxoGwcDAC0RfFMBLVFMcn5RAwuAVgAqfyqUzrvVbl6UIrVubxGLG/JmpM5lv3txt52wwkjxipqgSjkxlkAYFWs1tsGVEaEzmRzD8CcCJ6KoaG8pXjTl7VcFLVkrAoD2Vco1EaU5iKwkEOQb4UtRBXHDoD5BvwsZ1gM3EEdNn31KQGYpscsELVFwVCEXdM45ERpLGOgiq+R+Uzm9gMYAZiI0V1UcVfCJuqxkqnbgCZCzQGFNEKDmSLEyli9LsWQCDV/VH4ge9D0OBSrShl3UMU0BMNTCccWXYFyAqBjPMZskDChJ5578boUo8rGN8QpAKBAlAeomW0ERvWArGdfGopNgdA7GADX2QIpCI48WrBgJrQkLKXAnIgjyuhc1noKdY6aWJoqFkCXGNbm7P9eds8MF81DR05nb7amnOct8kWIuT/udm/t2yh/OvRL8UnWoWuY9lKsJzJKVCzPxLmWhiMQWKeoUqEtllZQMywY0zzG9cP9ZvnifeHbS9+n70W75Wh00C6PD9ilq9fZpXDKkwMX/Zdpl+ZBmKBieht1mqliNYxoZTWJxYquKHRicQ8AUYkoSJk2bnXPX745eGKwVZ5fOpW+F054PFq0x8890DqZObSOncne33+p+GLWMwdAKAFsoM75XdT5PQbAtLKa9BowdwAMBJI+gAiEOVPAuoR5/Tb39J+3BI8NtsoLS6eyd6NR+c/wBnvH7w+Gr2SOouXT2bvzf/jvZj3qg7AtChWBQmI+A1DQymoSSvBjIZd63pV3DoTIFJh3E766fnvw1J8n3GPzm/7ckTP5B/Go3Bou2OO/PRy+7gMKjp3K3pjb8N9kXRqAsSmKJqJ4KIjOaGU10XztC9ULVAWgJwYdAnAQBEMeQTwqr2zc4h6/eKd7cu7f8vKRM9lHnW3+a3KArv310dY7aUjRsdPZa/vW/Xd5TP5/7L4qhqBZQDLUl4ERuJ2mGwMUFCjziPrJPrqWAES7PDQeCVvmZM4e8o6iVgEfZDxjgkF9weSoyqjeBYlWEv0NhY2ZWNkBkDNhx80YYPCF+8OXtxbtiYW14vRNZ/OPbcazzWPu4XP3uufihCfHv05faO3w5bRLA2JcEVbrdZqKU6GmE4R1bdT3cApgzISBm/G/AOYv3h+e3FqwJxbW/A+HK6XjzaPukXP3uufiGafHv85ei0b8V9qjmBhTkVOgLqHaUHDQgDhu5FwosMDmGPqQepfuCl/cXjC3Lq4V3994Nv+UGO7KcvDo+Xvcs3HCk+Vv0jejEV9Ie9QHY1e81FCypJc2BFZbHW179sokAE+M3BbsL62EL20vmtsX1oqvbjybf0iMzs5Bc/T8PeGzUcLj5W/TV+MRb6Y92gfGTkOWhmwonPGKgnYIRjZ1UXciUyY4HxAP1v2PQcHjhZ+Lz7yjfhkgcgmvL6wVnw8u+zPRkC/MujRPjH8kZCHqu3qK+tqditdGK5eVTX2BXAnXA6FtM2ZbYJy36HBpMQCQGA/jUh75ALYIqUW8Vw4L+U0AbKPuxzSXGVKrtWoFqMtaLO8EDOMddb2r2h5iXAVQsgFnMRkAjip49crLBdqJfDtBU6/fGRo9V4I6b7XBm6Bu/LSlyVGVQeVEIGeVrV7WVZFvzEN+98ilSV2gfhLU7FZ4lDRKPoeamLsNb/V20/67EB3a/uYKtbYlthEfRlU8jMAP2aNh0DT0qMiYou6Zx6irlfbXaOxnhVr/Kahgi4pkepP0URcCJZDCTOKtb4RE4dcwOfnWZrIA4NVjRt3iBqjj60R5R6yeoe4ak0Z4tLvUOq+oFI15LU57/yS0J9Kqor1Rs8TtoL4uFX4lj5bDiQjW9oZlXYkFVdpUrI/GQJVmYkyToYqKcmEvbv/7VkVlY7z3/Acev8pOdpGW/AAAAABJRU5ErkJggg=="
2872
+
2866
2873
  /***/ }),
2867
2874
 
2868
2875
  /***/ "3c96":
@@ -11183,12 +11190,12 @@ module.exports = toPropertyKey, module.exports.__esModule = true, module.exports
11183
11190
 
11184
11191
  /***/ }),
11185
11192
 
11186
- /***/ "a470":
11193
+ /***/ "b003":
11187
11194
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
11188
11195
 
11189
11196
  "use strict";
11190
- /* 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_5b13dc9d_prod_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("1c33");
11191
- /* 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_5b13dc9d_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_5b13dc9d_prod_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0__);
11197
+ /* 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_dd89824e_prod_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("2d3b");
11198
+ /* 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_dd89824e_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_dd89824e_prod_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0__);
11192
11199
  /* unused harmony reexport * */
11193
11200
 
11194
11201
 
@@ -16118,19 +16125,19 @@ if (typeof window !== 'undefined') {
16118
16125
  // Indicate to webpack that this file can be concatenated
16119
16126
  /* harmony default export */ var setPublicPath = (null);
16120
16127
 
16121
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"fc389ef8-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=5b13dc9d&scoped=true
16122
- var com_graphicsvue_type_template_id_5b13dc9d_scoped_true_render = function render() {
16128
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"433047de-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=dd89824e&scoped=true
16129
+ var com_graphicsvue_type_template_id_dd89824e_scoped_true_render = function render() {
16123
16130
  var _vm = this,
16124
16131
  _c = _vm._self._c;
16125
16132
  return _c('div', {
16126
16133
  attrs: {
16127
- "id": "instructions"
16134
+ "id": "fl-model"
16128
16135
  }
16129
16136
  });
16130
16137
  };
16131
16138
  var staticRenderFns = [];
16132
16139
 
16133
- // CONCATENATED MODULE: ./packages/components/com-graphics/index.vue?vue&type=template&id=5b13dc9d&scoped=true
16140
+ // CONCATENATED MODULE: ./packages/components/com-graphics/index.vue?vue&type=template&id=dd89824e&scoped=true
16134
16141
 
16135
16142
  // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/slicedToArray.js
16136
16143
  var slicedToArray = __webpack_require__("278c");
@@ -41228,70 +41235,66 @@ var drawObjMapInstance = {};
41228
41235
  * @param {Object} instance - 实例对象,包含绘制对象ID和实例ID等数据
41229
41236
  * @param {Array} drawObjs - 绘制对象数组,包含几何数据
41230
41237
  */
41231
- function handleInstancedMeshModel(instances, drawObjs, type, scene, customColor) {
41238
+ function handleInstancedMeshModel(instances, drawObjs, type, scene, customColor, meshNameConfig) {
41232
41239
  // 第一阶段:构建实例映射表
41233
41240
  var modelGroup = new three_core_Group();
41234
41241
  for (var i = 0; i < instances.length; i++) {
41235
41242
  formatInstancedMap(instances[i], drawObjs);
41236
41243
  }
41237
- console.log('drawObjMapInstance', drawObjMapInstance);
41238
41244
  // 第二阶段:遍历所有实例进行处理
41239
41245
  var _loop = function _loop(_i) {
41240
41246
  var targetGroup, instancedMeshIndex, drawObjectName;
41241
- // for (let drawObjectId in drawObjMapInstance) {
41242
- // const drawObj = drawObjMapInstance[drawObjectId];
41243
- // drawObj.MapInstance.forEach((instance, index) => {
41244
- // if (instance.instanceId == instances[i].instanceId) {
41245
- // instancedMeshIndex = index;
41246
- // drawObjectName = drawObjectId;
41247
- // }
41248
- // });
41249
- // }
41250
-
41251
41247
  var drawObjInstance = drawObjMapInstance[instances[_i].drawObject];
41252
- drawObjInstance.MapInstance.forEach(function (instance, index) {
41253
- if (instance.instanceId == instances[_i].instanceId) {
41254
- instancedMeshIndex = index;
41255
- drawObjectName = instances[_i].drawObject;
41248
+ if (drawObjInstance.MapMesh.length > 0) {
41249
+ drawObjInstance.MapInstance.forEach(function (instance, index) {
41250
+ if (instance.instanceId == instances[_i].instanceId) {
41251
+ instancedMeshIndex = index;
41252
+ drawObjectName = instances[_i].drawObject;
41253
+ }
41254
+ });
41255
+ if (drawObjectName) {
41256
+ targetGroup = scene.getObjectByName(drawObjectName);
41256
41257
  }
41257
- });
41258
- if (drawObjectName) {
41259
- targetGroup = scene.getObjectByName(drawObjectName);
41260
- }
41261
- if (!targetGroup) {
41262
- var _drawObj$MapMesh;
41263
- var drawObj = drawObjMapInstance[instances[_i].drawObject];
41264
- var group = new three_core_Group();
41265
- group.name = instances[_i].drawObject;
41266
- group.userData.isInstancedMeshGroup = true;
41267
- var instanceCount = drawObj.MapInstance.length;
41268
- (_drawObj$MapMesh = drawObj.MapMesh) === null || _drawObj$MapMesh === void 0 ? void 0 : _drawObj$MapMesh.forEach(function (mesh) {
41269
- var model = instance_parser_drawModel(mesh, group.name, instanceCount, customColor);
41270
- if (!model) {
41271
- return;
41272
- }
41273
- drawObj.MapInstance.forEach(function (instance, index) {
41274
- if (instance.instanceId == instances[_i].instanceId) {
41275
- var _instance$matrix;
41276
- model.userData.instanceIndex = index;
41277
- model.name = instances[_i].instanceId;
41278
- var matrixVal = (_instance$matrix = instance.matrix) === null || _instance$matrix === void 0 ? void 0 : _instance$matrix.val;
41279
- if (matrixVal) {
41280
- var m4 = new three_core_Matrix4();
41281
- // m4.setPosition(new THREE.Vector3(9999999, 9999999, 9999999)); // TODO 临时隐藏方案
41282
- m4.elements = instance.matrix.val;
41283
- model.setMatrixAt(index, m4);
41284
- }
41285
- // 需要先设置全部实例颜色,否则后续设置颜色无效
41286
- var color = mesh.prop.color;
41287
- var meshColor = customColor ? new three_core_Color(customColor) : new three_core_Color("rgb(".concat(color[0], ", ").concat(color[1], ", ").concat(color[2], ")"));
41288
- model.setColorAt(index, meshColor);
41258
+ if (!targetGroup) {
41259
+ var _drawObj$MapMesh;
41260
+ var drawObj = drawObjMapInstance[instances[_i].drawObject];
41261
+ var group = new three_core_Group();
41262
+ group.name = instances[_i].drawObject;
41263
+ group.userData.isInstancedMeshGroup = true;
41264
+ var instanceCount = drawObj.MapInstance.length;
41265
+ (_drawObj$MapMesh = drawObj.MapMesh) === null || _drawObj$MapMesh === void 0 ? void 0 : _drawObj$MapMesh.forEach(function (mesh) {
41266
+ var model = instance_parser_drawModel(mesh, group.name, instanceCount, customColor);
41267
+ if (!model) {
41268
+ return;
41289
41269
  }
41270
+ var meshName = '';
41271
+ for (var key in meshNameConfig) {
41272
+ model.userData[key] = meshNameConfig[key];
41273
+ meshName += ':' + meshNameConfig[key];
41274
+ }
41275
+ drawObj.MapInstance.forEach(function (instance, index) {
41276
+ if (instance.instanceId == instances[_i].instanceId) {
41277
+ var _instance$matrix;
41278
+ model.userData.instanceIndex = index;
41279
+ model.name = meshName !== '' ? instances[_i].instanceId + meshName : instances[_i].instanceId;
41280
+ var matrixVal = (_instance$matrix = instance.matrix) === null || _instance$matrix === void 0 ? void 0 : _instance$matrix.val;
41281
+ if (matrixVal) {
41282
+ var m4 = new three_core_Matrix4();
41283
+ // m4.setPosition(new THREE.Vector3(9999999, 9999999, 9999999)); // TODO 临时隐藏方案
41284
+ m4.elements = instance.matrix.val;
41285
+ model.setMatrixAt(index, m4);
41286
+ }
41287
+ // 需要先设置全部实例颜色,否则后续设置颜色无效
41288
+ var color = mesh.prop.color;
41289
+ var meshColor = customColor ? new three_core_Color(customColor) : new three_core_Color("rgb(".concat(color[0], ", ").concat(color[1], ", ").concat(color[2], ")"));
41290
+ model.setColorAt(index, meshColor);
41291
+ }
41292
+ });
41293
+ // model.instanceColor.needsUpdate = true;
41294
+ group.add(model);
41290
41295
  });
41291
- // model.instanceColor.needsUpdate = true;
41292
- group.add(model);
41293
- });
41294
- modelGroup.add(group);
41296
+ modelGroup.add(group);
41297
+ }
41295
41298
  }
41296
41299
  };
41297
41300
  for (var _i = 0; _i < instances.length; _i++) {
@@ -41689,7 +41692,12 @@ var clippingPlanes = [];
41689
41692
  var removeSpeed = 200,
41690
41693
  upSpeed = 200; //控制器移动速度 , //控制跳起时的速度
41691
41694
  var com_graphicsvue_type_script_lang_js_modelGroup;
41692
-
41695
+ var roamConfig = {
41696
+ loop: false,
41697
+ speed: 0,
41698
+ // 最大值为3
41699
+ name: ''
41700
+ };
41693
41701
  // 绘制对象映射实例表
41694
41702
  var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
41695
41703
 
@@ -41714,10 +41722,7 @@ var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
41714
41722
  },
41715
41723
  data: function data() {
41716
41724
  return {
41717
- roamConfig: {
41718
- loop: false,
41719
- speed: 0 // 最大值为3
41720
- }
41725
+ arrowImg: __webpack_require__("3846")
41721
41726
  };
41722
41727
  },
41723
41728
  created: function created() {
@@ -41729,7 +41734,7 @@ var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
41729
41734
  com_graphicsvue_type_script_lang_js_mouse = new this.THREE.Vector2();
41730
41735
  },
41731
41736
  mounted: function mounted() {
41732
- instructions = document.getElementById('instructions');
41737
+ instructions = document.getElementById('fl-model');
41733
41738
  this.initRender();
41734
41739
  this.initScene();
41735
41740
  this.initCamera();
@@ -41801,9 +41806,11 @@ var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
41801
41806
  /*
41802
41807
  参数:data 模型数据
41803
41808
  color: '' 初始化模型的颜色 在业务方 有这个需求
41809
+ meshNameConfig: {}
41804
41810
  */
41805
41811
  drawModel: function drawModel(data) {
41806
41812
  var color = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
41813
+ var meshNameConfig = arguments.length > 2 ? arguments[2] : undefined;
41807
41814
  if (Object.keys(data).length === 0) {
41808
41815
  return;
41809
41816
  }
@@ -41811,7 +41818,7 @@ var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
41811
41818
  instances = _parseData.instances,
41812
41819
  drawObjs = _parseData.drawObjs;
41813
41820
  if (instances.length > 0) {
41814
- com_graphicsvue_type_script_lang_js_modelGroup = handleInstancedMeshModel(instances, drawObjs, '', com_graphicsvue_type_script_lang_js_scene, color);
41821
+ com_graphicsvue_type_script_lang_js_modelGroup = handleInstancedMeshModel(instances, drawObjs, '', com_graphicsvue_type_script_lang_js_scene, color, meshNameConfig);
41815
41822
  com_graphicsvue_type_script_lang_js_scene.add(com_graphicsvue_type_script_lang_js_modelGroup);
41816
41823
  // this.compileShader();
41817
41824
  // cameraControls.fitToSphere(scene, true); // TODO 待处理,先用 setModelCenter 进行定位
@@ -41967,6 +41974,11 @@ var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
41967
41974
  obj.material.opacity = ele.attr[key];
41968
41975
  obj.material.transparent = true;
41969
41976
  break;
41977
+ case 'position':
41978
+ targetObj.forEach(function (children) {
41979
+ children.position.set(ele.attr[key].x, ele.attr[key].y, ele.attr[key].z);
41980
+ });
41981
+ break;
41970
41982
  }
41971
41983
  };
41972
41984
  for (var key in ele.attr) {
@@ -42105,6 +42117,40 @@ var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
42105
42117
  }
42106
42118
  });
42107
42119
  },
42120
+ // 删除场景中所有的实体
42121
+ removeAll: function removeAll() {
42122
+ var _this3 = this;
42123
+ if (com_graphicsvue_type_script_lang_js_scene) {
42124
+ com_graphicsvue_type_script_lang_js_scene.traverse(function (item) {
42125
+ item.material && item.material.dispose();
42126
+ item.geometry && item.geometry.dispose();
42127
+ if (item instanceof _this3.THREE.Mesh) {
42128
+ item.clear();
42129
+ }
42130
+ com_graphicsvue_type_script_lang_js_scene.remove(item);
42131
+ });
42132
+ com_graphicsvue_type_script_lang_js_scene.clear();
42133
+ }
42134
+ },
42135
+ // 销毁场景 释放内存
42136
+ destroyScene: function destroyScene() {
42137
+ cancelAnimationFrame(animateId);
42138
+ if (com_graphicsvue_type_script_lang_js_scene) {
42139
+ com_graphicsvue_type_script_lang_js_scene.traverse(function (child) {
42140
+ child.material && child.material.dispose();
42141
+ child.geometry && child.geometry.dispose();
42142
+ child = null;
42143
+ });
42144
+ com_graphicsvue_type_script_lang_js_scene.clear();
42145
+ com_graphicsvue_type_script_lang_js_scene = null;
42146
+ }
42147
+ com_graphicsvue_type_script_lang_js_renderer.forceContextLoss();
42148
+ com_graphicsvue_type_script_lang_js_renderer.dispose();
42149
+ com_graphicsvue_type_script_lang_js_camera = null;
42150
+ cameraControls = null;
42151
+ com_graphicsvue_type_script_lang_js_renderer.domElement = null;
42152
+ com_graphicsvue_type_script_lang_js_renderer = null;
42153
+ },
42108
42154
  // 绘制曲线
42109
42155
  /*
42110
42156
  参数声明:Object
@@ -42115,11 +42161,11 @@ var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
42115
42161
  }
42116
42162
  */
42117
42163
  drawCurve: function drawCurve(params) {
42118
- var _this3 = this;
42164
+ var _this4 = this;
42119
42165
  this.removeObjectByName(params.name);
42120
42166
  var route = [];
42121
42167
  params.path.forEach(function (element) {
42122
- route.push(new _this3.THREE.Vector3(element.x, element.y, element.z));
42168
+ route.push(new _this4.THREE.Vector3(element.x, element.y, element.z));
42123
42169
  });
42124
42170
  if (route.length > 1) {
42125
42171
  com_graphicsvue_type_script_lang_js_curve = new this.THREE.CatmullRomCurve3(route);
@@ -42135,12 +42181,19 @@ var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
42135
42181
  }
42136
42182
  },
42137
42183
  // 绘制贴图曲线
42184
+ /*
42185
+ 参数声明:Object
42186
+ {
42187
+ path: [{x:0, y: 0, z: 0}], 坐标点信息
42188
+ name: '', // 线条的名字, 用来清除时使用的
42189
+ }
42190
+ */
42138
42191
  drawTextureCurve: function drawTextureCurve(params) {
42139
- var _this4 = this;
42192
+ var _this5 = this;
42140
42193
  this.removeObjectByName(params.name);
42141
42194
  var route = [];
42142
42195
  params.path.forEach(function (element) {
42143
- route.push(new _this4.THREE.Vector3(element.x, element.y, element.z));
42196
+ route.push(new _this5.THREE.Vector3(element.x, element.y, element.z));
42144
42197
  });
42145
42198
  // 画曲线
42146
42199
  if (route.length > 1) {
@@ -42148,7 +42201,7 @@ var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
42148
42201
  com_graphicsvue_type_script_lang_js_curve = new this.THREE.CatmullRomCurve3(route, false, 'catmullrom', 0);
42149
42202
  var geometry = new this.THREE.TubeGeometry(com_graphicsvue_type_script_lang_js_curve, 5000, 0.5, 4);
42150
42203
  //加载纹理
42151
- lineTexture = new this.THREE.TextureLoader().load('/static/arrow/arrow-right.png');
42204
+ lineTexture = new this.THREE.TextureLoader().load(this.arrowImg);
42152
42205
  lineTexture.wrapS = this.THREE.RepeatWrapping;
42153
42206
  lineTexture.wrapT = this.THREE.RepeatWrapping;
42154
42207
  lineTexture.repeat.set(20, 1); //水平重复20次
@@ -42163,8 +42216,10 @@ var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
42163
42216
  var line = new this.THREE.Line(geometry, material);
42164
42217
  line.name = params.name;
42165
42218
  com_graphicsvue_type_script_lang_js_scene.add(line);
42219
+ clock = new this.THREE.Clock();
42166
42220
  }
42167
42221
  },
42222
+ //
42168
42223
  // 开启漫游
42169
42224
  /*
42170
42225
  参数为Object
@@ -42175,31 +42230,38 @@ var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
42175
42230
  */
42176
42231
  startRoam: function startRoam(params) {
42177
42232
  progress = 0;
42178
- this.roamConfig = Object.assign({}, {
42233
+ roamConfig = {
42179
42234
  loop: params.loop,
42180
- speed: params.speed,
42181
- roamName: params.name
42182
- });
42235
+ speed: params.speed
42236
+ };
42183
42237
  this.drawTextureCurve({
42184
42238
  name: params.name,
42185
42239
  path: params.path
42186
42240
  });
42241
+ roaming = true;
42187
42242
  clock = new this.THREE.Clock();
42188
42243
  },
42189
- // 暂停漫游
42190
- pauseRoaming: function pauseRoaming() {
42191
- this.$set(this.roamConfig, 'speed', 0);
42244
+ // 更新漫游的配置
42245
+ /*
42246
+ 参数为Object
42247
+ */
42248
+ updateRoamConfig: function updateRoamConfig(params) {
42249
+ for (var key in params) {
42250
+ roamConfig[key] = key === 'speed' ? params[key] / 300 : params[key];
42251
+ }
42192
42252
  },
42193
42253
  // 结束/退出漫游
42194
42254
  endRoam: function endRoam() {
42195
42255
  roaming = false;
42196
42256
  progress = 0;
42197
- this.removeObjectByName(this.roamConfig.roamName);
42198
- this.roamConfig = Object.assign({}, {
42257
+ this.removeObjectByName(this.roamConfig.name);
42258
+ roamConfig = {
42199
42259
  loop: false,
42200
42260
  speed: 0,
42201
- roamName: ''
42202
- });
42261
+ name: ''
42262
+ };
42263
+ roaming = false;
42264
+ lineTexture = null;
42203
42265
  },
42204
42266
  // 相机跟随轨道
42205
42267
  cameraTrack: function cameraTrack() {
@@ -42216,16 +42278,16 @@ var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
42216
42278
  com_graphicsvue_type_script_lang_js_camera.lookAt(pointBox.x, pointBox.y + 5, pointBox.z);
42217
42279
  cameraControls.setPosition(point.x, point.y + 5, point.z, false);
42218
42280
  cameraControls.setTarget(pointBox.x, pointBox.y + 5, pointBox.z, false);
42219
- progress += this.roamConfig.speed / 300;
42281
+ progress += roamConfig.speed / 300;
42220
42282
  } else {
42221
42283
  // 循环漫游
42222
- if (this.roamConfig.loop) {
42284
+ if (roamConfig.loop) {
42223
42285
  progress = 0;
42224
42286
  }
42225
42287
  }
42226
42288
  } else {
42227
42289
  lineTexture = null;
42228
- this.roamConfig.progress = 0;
42290
+ progress = 0;
42229
42291
  }
42230
42292
  },
42231
42293
  // 全局整体炸开
@@ -42233,13 +42295,13 @@ var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
42233
42295
  * 参数val: 爆炸的值
42234
42296
  */
42235
42297
  globalBomb: function globalBomb(val) {
42236
- var _this5 = this;
42298
+ var _this6 = this;
42237
42299
  if (com_graphicsvue_type_script_lang_js_scene.children.length === 0) return;
42238
42300
  for (var i = 0; i < com_graphicsvue_type_script_lang_js_scene.children.length; i++) {
42239
42301
  com_graphicsvue_type_script_lang_js_scene.children[i].traverse(function (item) {
42240
42302
  if (!item.isMesh || !item.worldDir) return;
42241
42303
  // 爆炸公式
42242
- _this5.computedBomb(item, val);
42304
+ _this6.computedBomb(item, val);
42243
42305
  });
42244
42306
  }
42245
42307
  this.timeRender();
@@ -42338,7 +42400,7 @@ var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
42338
42400
  },
42339
42401
  // 页面是否锁定
42340
42402
  initPointerLock: function initPointerLock() {
42341
- var _this6 = this;
42403
+ var _this7 = this;
42342
42404
  this.home();
42343
42405
  setTimeout(function () {
42344
42406
  pointControls = new PointerLockControls_PointerLockControls(com_graphicsvue_type_script_lang_js_camera, com_graphicsvue_type_script_lang_js_renderer.domElement);
@@ -42346,10 +42408,10 @@ var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
42346
42408
  // 锁定
42347
42409
  pointControls.addEventListener('lock', function () {
42348
42410
  cameraControls.enabled = false;
42349
- window.addEventListener('keydown', _this6.onKeyDown, false);
42350
- window.addEventListener('keyup', _this6.onKeyUp, false);
42351
- com_graphicsvue_type_script_lang_js_renderer.domElement.removeEventListener('mouseup', _this6.mouseClick, false);
42352
- com_graphicsvue_type_script_lang_js_renderer.domElement.removeEventListener('mousedown', _this6.mouseDown, false);
42411
+ window.addEventListener('keydown', _this7.onKeyDown, false);
42412
+ window.addEventListener('keyup', _this7.onKeyUp, false);
42413
+ com_graphicsvue_type_script_lang_js_renderer.domElement.removeEventListener('mouseup', _this7.mouseClick, false);
42414
+ com_graphicsvue_type_script_lang_js_renderer.domElement.removeEventListener('mousedown', _this7.mouseDown, false);
42353
42415
  });
42354
42416
  // 解锁
42355
42417
  pointControls.addEventListener('unlock', function () {
@@ -42359,10 +42421,10 @@ var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
42359
42421
  cameraControls.reset(true);
42360
42422
  cameraControls.update(0);
42361
42423
  setTimeout(function () {
42362
- window.removeEventListener('keydown', _this6.onKeyDown);
42363
- window.removeEventListener('keyup', _this6.onKeyUp);
42364
- com_graphicsvue_type_script_lang_js_renderer.domElement.addEventListener('mouseup', _this6.mouseClick, false);
42365
- com_graphicsvue_type_script_lang_js_renderer.domElement.addEventListener('mousedown', _this6.mouseDown, false);
42424
+ window.removeEventListener('keydown', _this7.onKeyDown);
42425
+ window.removeEventListener('keyup', _this7.onKeyUp);
42426
+ com_graphicsvue_type_script_lang_js_renderer.domElement.addEventListener('mouseup', _this7.mouseClick, false);
42427
+ com_graphicsvue_type_script_lang_js_renderer.domElement.addEventListener('mousedown', _this7.mouseDown, false);
42366
42428
  // this.timeRender()
42367
42429
  }, 0);
42368
42430
  });
@@ -42585,7 +42647,7 @@ var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
42585
42647
  },
42586
42648
  // 还原操作 将修改过的实体进行恢复
42587
42649
  restore: function restore() {
42588
- var _this7 = this;
42650
+ var _this8 = this;
42589
42651
  com_graphicsvue_type_script_lang_js_scene.traverse(function (item) {
42590
42652
  if (item.isMesh) {
42591
42653
  item.material.opacity = 1.0;
@@ -42608,7 +42670,7 @@ var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
42608
42670
  item.userData.translateMatrixInvert = null;
42609
42671
  }
42610
42672
  if (item.userData.combineMatrixInvert) {
42611
- _this7.rotateMesh(item, {
42673
+ _this8.rotateMesh(item, {
42612
42674
  x: 0,
42613
42675
  y: 0,
42614
42676
  z: 0
@@ -42632,8 +42694,8 @@ var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
42632
42694
  });
42633
42695
  // CONCATENATED MODULE: ./packages/components/com-graphics/index.vue?vue&type=script&lang=js
42634
42696
  /* harmony default export */ var components_com_graphicsvue_type_script_lang_js = (com_graphicsvue_type_script_lang_js);
42635
- // EXTERNAL MODULE: ./packages/components/com-graphics/index.vue?vue&type=style&index=0&id=5b13dc9d&prod&lang=scss&scoped=true
42636
- var com_graphicsvue_type_style_index_0_id_5b13dc9d_prod_lang_scss_scoped_true = __webpack_require__("a470");
42697
+ // EXTERNAL MODULE: ./packages/components/com-graphics/index.vue?vue&type=style&index=0&id=dd89824e&prod&lang=scss&scoped=true
42698
+ var com_graphicsvue_type_style_index_0_id_dd89824e_prod_lang_scss_scoped_true = __webpack_require__("b003");
42637
42699
 
42638
42700
  // CONCATENATED MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
42639
42701
  /* globals __VUE_SSR_CONTEXT__ */
@@ -42744,17 +42806,17 @@ function normalizeComponent(
42744
42806
 
42745
42807
  var component = normalizeComponent(
42746
42808
  components_com_graphicsvue_type_script_lang_js,
42747
- com_graphicsvue_type_template_id_5b13dc9d_scoped_true_render,
42809
+ com_graphicsvue_type_template_id_dd89824e_scoped_true_render,
42748
42810
  staticRenderFns,
42749
42811
  false,
42750
42812
  null,
42751
- "5b13dc9d",
42813
+ "dd89824e",
42752
42814
  null
42753
42815
 
42754
42816
  )
42755
42817
 
42756
42818
  /* harmony default export */ var com_graphics = (component.exports);
42757
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"fc389ef8-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=83d38700&scoped=true
42819
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"433047de-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=83d38700&scoped=true
42758
42820
  var com_flcanvasvue_type_template_id_83d38700_scoped_true_render = function render() {
42759
42821
  var _vm = this,
42760
42822
  _c = _vm._self._c;