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.
@@ -1202,13 +1202,6 @@ Factory_1.Factory.addGetterSetter(Arrow, 'pointerAtBeginning', false);
1202
1202
  Factory_1.Factory.addGetterSetter(Arrow, 'pointerAtEnding', true);
1203
1203
 
1204
1204
 
1205
- /***/ }),
1206
-
1207
- /***/ "1c33":
1208
- /***/ (function(module, exports, __webpack_require__) {
1209
-
1210
- // extracted by mini-css-extract-plugin
1211
-
1212
1205
  /***/ }),
1213
1206
 
1214
1207
  /***/ "1c49":
@@ -2712,6 +2705,13 @@ Factory_1.Factory.addGetterSetter(TextPath, 'textDecoration', '');
2712
2705
  Factory_1.Factory.addGetterSetter(TextPath, 'kerningFunc', undefined);
2713
2706
 
2714
2707
 
2708
+ /***/ }),
2709
+
2710
+ /***/ "2d3b":
2711
+ /***/ (function(module, exports, __webpack_require__) {
2712
+
2713
+ // extracted by mini-css-extract-plugin
2714
+
2715
2715
  /***/ }),
2716
2716
 
2717
2717
  /***/ "2fb2":
@@ -2854,6 +2854,13 @@ Factory_1.Factory.addGetterSetter(Ellipse, 'radiusX', 0, (0, Validators_1.getNum
2854
2854
  Factory_1.Factory.addGetterSetter(Ellipse, 'radiusY', 0, (0, Validators_1.getNumberValidator)());
2855
2855
 
2856
2856
 
2857
+ /***/ }),
2858
+
2859
+ /***/ "3846":
2860
+ /***/ (function(module, exports) {
2861
+
2862
+ module.exports = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAHWlUWHRTb2Z0d2FyZQAAAAAAQWRvYmUgSW1hZ2VSZWFkeQatApcAAAMjaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/PiA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjYtYzE0OCA3OS4xNjQwMzYsIDIwMTkvMDgvMTMtMDE6MDY6NTcgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCAyMS4wIChXaW5kb3dzKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDozQTZEQkVBMjIxRjcxMUVEOTlGOEMyREEyQzFENDlGNiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDozQTZEQkVBMzIxRjcxMUVEOTlGOEMyREEyQzFENDlGNiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjNBNkRCRUEwMjFGNzExRUQ5OUY4QzJEQTJDMUQ0OUY2IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjNBNkRCRUExMjFGNzExRUQ5OUY4QzJEQTJDMUQ0OUY2Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5k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"
2863
+
2857
2864
  /***/ }),
2858
2865
 
2859
2866
  /***/ "3c96":
@@ -11174,12 +11181,12 @@ module.exports = toPropertyKey, module.exports.__esModule = true, module.exports
11174
11181
 
11175
11182
  /***/ }),
11176
11183
 
11177
- /***/ "a470":
11184
+ /***/ "b003":
11178
11185
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
11179
11186
 
11180
11187
  "use strict";
11181
- /* 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");
11182
- /* 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__);
11188
+ /* 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");
11189
+ /* 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__);
11183
11190
  /* unused harmony reexport * */
11184
11191
 
11185
11192
 
@@ -16109,19 +16116,19 @@ if (typeof window !== 'undefined') {
16109
16116
  // Indicate to webpack that this file can be concatenated
16110
16117
  /* harmony default export */ var setPublicPath = (null);
16111
16118
 
16112
- // 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
16113
- var com_graphicsvue_type_template_id_5b13dc9d_scoped_true_render = function render() {
16119
+ // 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
16120
+ var com_graphicsvue_type_template_id_dd89824e_scoped_true_render = function render() {
16114
16121
  var _vm = this,
16115
16122
  _c = _vm._self._c;
16116
16123
  return _c('div', {
16117
16124
  attrs: {
16118
- "id": "instructions"
16125
+ "id": "fl-model"
16119
16126
  }
16120
16127
  });
16121
16128
  };
16122
16129
  var staticRenderFns = [];
16123
16130
 
16124
- // CONCATENATED MODULE: ./packages/components/com-graphics/index.vue?vue&type=template&id=5b13dc9d&scoped=true
16131
+ // CONCATENATED MODULE: ./packages/components/com-graphics/index.vue?vue&type=template&id=dd89824e&scoped=true
16125
16132
 
16126
16133
  // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/slicedToArray.js
16127
16134
  var slicedToArray = __webpack_require__("278c");
@@ -41219,70 +41226,66 @@ var drawObjMapInstance = {};
41219
41226
  * @param {Object} instance - 实例对象,包含绘制对象ID和实例ID等数据
41220
41227
  * @param {Array} drawObjs - 绘制对象数组,包含几何数据
41221
41228
  */
41222
- function handleInstancedMeshModel(instances, drawObjs, type, scene, customColor) {
41229
+ function handleInstancedMeshModel(instances, drawObjs, type, scene, customColor, meshNameConfig) {
41223
41230
  // 第一阶段:构建实例映射表
41224
41231
  var modelGroup = new three_core_Group();
41225
41232
  for (var i = 0; i < instances.length; i++) {
41226
41233
  formatInstancedMap(instances[i], drawObjs);
41227
41234
  }
41228
- console.log('drawObjMapInstance', drawObjMapInstance);
41229
41235
  // 第二阶段:遍历所有实例进行处理
41230
41236
  var _loop = function _loop(_i) {
41231
41237
  var targetGroup, instancedMeshIndex, drawObjectName;
41232
- // for (let drawObjectId in drawObjMapInstance) {
41233
- // const drawObj = drawObjMapInstance[drawObjectId];
41234
- // drawObj.MapInstance.forEach((instance, index) => {
41235
- // if (instance.instanceId == instances[i].instanceId) {
41236
- // instancedMeshIndex = index;
41237
- // drawObjectName = drawObjectId;
41238
- // }
41239
- // });
41240
- // }
41241
-
41242
41238
  var drawObjInstance = drawObjMapInstance[instances[_i].drawObject];
41243
- drawObjInstance.MapInstance.forEach(function (instance, index) {
41244
- if (instance.instanceId == instances[_i].instanceId) {
41245
- instancedMeshIndex = index;
41246
- drawObjectName = instances[_i].drawObject;
41239
+ if (drawObjInstance.MapMesh.length > 0) {
41240
+ drawObjInstance.MapInstance.forEach(function (instance, index) {
41241
+ if (instance.instanceId == instances[_i].instanceId) {
41242
+ instancedMeshIndex = index;
41243
+ drawObjectName = instances[_i].drawObject;
41244
+ }
41245
+ });
41246
+ if (drawObjectName) {
41247
+ targetGroup = scene.getObjectByName(drawObjectName);
41247
41248
  }
41248
- });
41249
- if (drawObjectName) {
41250
- targetGroup = scene.getObjectByName(drawObjectName);
41251
- }
41252
- if (!targetGroup) {
41253
- var _drawObj$MapMesh;
41254
- var drawObj = drawObjMapInstance[instances[_i].drawObject];
41255
- var group = new three_core_Group();
41256
- group.name = instances[_i].drawObject;
41257
- group.userData.isInstancedMeshGroup = true;
41258
- var instanceCount = drawObj.MapInstance.length;
41259
- (_drawObj$MapMesh = drawObj.MapMesh) === null || _drawObj$MapMesh === void 0 ? void 0 : _drawObj$MapMesh.forEach(function (mesh) {
41260
- var model = instance_parser_drawModel(mesh, group.name, instanceCount, customColor);
41261
- if (!model) {
41262
- return;
41263
- }
41264
- drawObj.MapInstance.forEach(function (instance, index) {
41265
- if (instance.instanceId == instances[_i].instanceId) {
41266
- var _instance$matrix;
41267
- model.userData.instanceIndex = index;
41268
- model.name = instances[_i].instanceId;
41269
- var matrixVal = (_instance$matrix = instance.matrix) === null || _instance$matrix === void 0 ? void 0 : _instance$matrix.val;
41270
- if (matrixVal) {
41271
- var m4 = new three_core_Matrix4();
41272
- // m4.setPosition(new THREE.Vector3(9999999, 9999999, 9999999)); // TODO 临时隐藏方案
41273
- m4.elements = instance.matrix.val;
41274
- model.setMatrixAt(index, m4);
41275
- }
41276
- // 需要先设置全部实例颜色,否则后续设置颜色无效
41277
- var color = mesh.prop.color;
41278
- var meshColor = customColor ? new three_core_Color(customColor) : new three_core_Color("rgb(".concat(color[0], ", ").concat(color[1], ", ").concat(color[2], ")"));
41279
- model.setColorAt(index, meshColor);
41249
+ if (!targetGroup) {
41250
+ var _drawObj$MapMesh;
41251
+ var drawObj = drawObjMapInstance[instances[_i].drawObject];
41252
+ var group = new three_core_Group();
41253
+ group.name = instances[_i].drawObject;
41254
+ group.userData.isInstancedMeshGroup = true;
41255
+ var instanceCount = drawObj.MapInstance.length;
41256
+ (_drawObj$MapMesh = drawObj.MapMesh) === null || _drawObj$MapMesh === void 0 ? void 0 : _drawObj$MapMesh.forEach(function (mesh) {
41257
+ var model = instance_parser_drawModel(mesh, group.name, instanceCount, customColor);
41258
+ if (!model) {
41259
+ return;
41280
41260
  }
41261
+ var meshName = '';
41262
+ for (var key in meshNameConfig) {
41263
+ model.userData[key] = meshNameConfig[key];
41264
+ meshName += ':' + meshNameConfig[key];
41265
+ }
41266
+ drawObj.MapInstance.forEach(function (instance, index) {
41267
+ if (instance.instanceId == instances[_i].instanceId) {
41268
+ var _instance$matrix;
41269
+ model.userData.instanceIndex = index;
41270
+ model.name = meshName !== '' ? instances[_i].instanceId + meshName : instances[_i].instanceId;
41271
+ var matrixVal = (_instance$matrix = instance.matrix) === null || _instance$matrix === void 0 ? void 0 : _instance$matrix.val;
41272
+ if (matrixVal) {
41273
+ var m4 = new three_core_Matrix4();
41274
+ // m4.setPosition(new THREE.Vector3(9999999, 9999999, 9999999)); // TODO 临时隐藏方案
41275
+ m4.elements = instance.matrix.val;
41276
+ model.setMatrixAt(index, m4);
41277
+ }
41278
+ // 需要先设置全部实例颜色,否则后续设置颜色无效
41279
+ var color = mesh.prop.color;
41280
+ var meshColor = customColor ? new three_core_Color(customColor) : new three_core_Color("rgb(".concat(color[0], ", ").concat(color[1], ", ").concat(color[2], ")"));
41281
+ model.setColorAt(index, meshColor);
41282
+ }
41283
+ });
41284
+ // model.instanceColor.needsUpdate = true;
41285
+ group.add(model);
41281
41286
  });
41282
- // model.instanceColor.needsUpdate = true;
41283
- group.add(model);
41284
- });
41285
- modelGroup.add(group);
41287
+ modelGroup.add(group);
41288
+ }
41286
41289
  }
41287
41290
  };
41288
41291
  for (var _i = 0; _i < instances.length; _i++) {
@@ -41680,7 +41683,12 @@ var clippingPlanes = [];
41680
41683
  var removeSpeed = 200,
41681
41684
  upSpeed = 200; //控制器移动速度 , //控制跳起时的速度
41682
41685
  var com_graphicsvue_type_script_lang_js_modelGroup;
41683
-
41686
+ var roamConfig = {
41687
+ loop: false,
41688
+ speed: 0,
41689
+ // 最大值为3
41690
+ name: ''
41691
+ };
41684
41692
  // 绘制对象映射实例表
41685
41693
  var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
41686
41694
 
@@ -41705,10 +41713,7 @@ var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
41705
41713
  },
41706
41714
  data: function data() {
41707
41715
  return {
41708
- roamConfig: {
41709
- loop: false,
41710
- speed: 0 // 最大值为3
41711
- }
41716
+ arrowImg: __webpack_require__("3846")
41712
41717
  };
41713
41718
  },
41714
41719
  created: function created() {
@@ -41720,7 +41725,7 @@ var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
41720
41725
  com_graphicsvue_type_script_lang_js_mouse = new this.THREE.Vector2();
41721
41726
  },
41722
41727
  mounted: function mounted() {
41723
- instructions = document.getElementById('instructions');
41728
+ instructions = document.getElementById('fl-model');
41724
41729
  this.initRender();
41725
41730
  this.initScene();
41726
41731
  this.initCamera();
@@ -41792,9 +41797,11 @@ var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
41792
41797
  /*
41793
41798
  参数:data 模型数据
41794
41799
  color: '' 初始化模型的颜色 在业务方 有这个需求
41800
+ meshNameConfig: {}
41795
41801
  */
41796
41802
  drawModel: function drawModel(data) {
41797
41803
  var color = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
41804
+ var meshNameConfig = arguments.length > 2 ? arguments[2] : undefined;
41798
41805
  if (Object.keys(data).length === 0) {
41799
41806
  return;
41800
41807
  }
@@ -41802,7 +41809,7 @@ var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
41802
41809
  instances = _parseData.instances,
41803
41810
  drawObjs = _parseData.drawObjs;
41804
41811
  if (instances.length > 0) {
41805
- com_graphicsvue_type_script_lang_js_modelGroup = handleInstancedMeshModel(instances, drawObjs, '', com_graphicsvue_type_script_lang_js_scene, color);
41812
+ com_graphicsvue_type_script_lang_js_modelGroup = handleInstancedMeshModel(instances, drawObjs, '', com_graphicsvue_type_script_lang_js_scene, color, meshNameConfig);
41806
41813
  com_graphicsvue_type_script_lang_js_scene.add(com_graphicsvue_type_script_lang_js_modelGroup);
41807
41814
  // this.compileShader();
41808
41815
  // cameraControls.fitToSphere(scene, true); // TODO 待处理,先用 setModelCenter 进行定位
@@ -41958,6 +41965,11 @@ var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
41958
41965
  obj.material.opacity = ele.attr[key];
41959
41966
  obj.material.transparent = true;
41960
41967
  break;
41968
+ case 'position':
41969
+ targetObj.forEach(function (children) {
41970
+ children.position.set(ele.attr[key].x, ele.attr[key].y, ele.attr[key].z);
41971
+ });
41972
+ break;
41961
41973
  }
41962
41974
  };
41963
41975
  for (var key in ele.attr) {
@@ -42096,6 +42108,40 @@ var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
42096
42108
  }
42097
42109
  });
42098
42110
  },
42111
+ // 删除场景中所有的实体
42112
+ removeAll: function removeAll() {
42113
+ var _this3 = this;
42114
+ if (com_graphicsvue_type_script_lang_js_scene) {
42115
+ com_graphicsvue_type_script_lang_js_scene.traverse(function (item) {
42116
+ item.material && item.material.dispose();
42117
+ item.geometry && item.geometry.dispose();
42118
+ if (item instanceof _this3.THREE.Mesh) {
42119
+ item.clear();
42120
+ }
42121
+ com_graphicsvue_type_script_lang_js_scene.remove(item);
42122
+ });
42123
+ com_graphicsvue_type_script_lang_js_scene.clear();
42124
+ }
42125
+ },
42126
+ // 销毁场景 释放内存
42127
+ destroyScene: function destroyScene() {
42128
+ cancelAnimationFrame(animateId);
42129
+ if (com_graphicsvue_type_script_lang_js_scene) {
42130
+ com_graphicsvue_type_script_lang_js_scene.traverse(function (child) {
42131
+ child.material && child.material.dispose();
42132
+ child.geometry && child.geometry.dispose();
42133
+ child = null;
42134
+ });
42135
+ com_graphicsvue_type_script_lang_js_scene.clear();
42136
+ com_graphicsvue_type_script_lang_js_scene = null;
42137
+ }
42138
+ com_graphicsvue_type_script_lang_js_renderer.forceContextLoss();
42139
+ com_graphicsvue_type_script_lang_js_renderer.dispose();
42140
+ com_graphicsvue_type_script_lang_js_camera = null;
42141
+ cameraControls = null;
42142
+ com_graphicsvue_type_script_lang_js_renderer.domElement = null;
42143
+ com_graphicsvue_type_script_lang_js_renderer = null;
42144
+ },
42099
42145
  // 绘制曲线
42100
42146
  /*
42101
42147
  参数声明:Object
@@ -42106,11 +42152,11 @@ var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
42106
42152
  }
42107
42153
  */
42108
42154
  drawCurve: function drawCurve(params) {
42109
- var _this3 = this;
42155
+ var _this4 = this;
42110
42156
  this.removeObjectByName(params.name);
42111
42157
  var route = [];
42112
42158
  params.path.forEach(function (element) {
42113
- route.push(new _this3.THREE.Vector3(element.x, element.y, element.z));
42159
+ route.push(new _this4.THREE.Vector3(element.x, element.y, element.z));
42114
42160
  });
42115
42161
  if (route.length > 1) {
42116
42162
  com_graphicsvue_type_script_lang_js_curve = new this.THREE.CatmullRomCurve3(route);
@@ -42126,12 +42172,19 @@ var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
42126
42172
  }
42127
42173
  },
42128
42174
  // 绘制贴图曲线
42175
+ /*
42176
+ 参数声明:Object
42177
+ {
42178
+ path: [{x:0, y: 0, z: 0}], 坐标点信息
42179
+ name: '', // 线条的名字, 用来清除时使用的
42180
+ }
42181
+ */
42129
42182
  drawTextureCurve: function drawTextureCurve(params) {
42130
- var _this4 = this;
42183
+ var _this5 = this;
42131
42184
  this.removeObjectByName(params.name);
42132
42185
  var route = [];
42133
42186
  params.path.forEach(function (element) {
42134
- route.push(new _this4.THREE.Vector3(element.x, element.y, element.z));
42187
+ route.push(new _this5.THREE.Vector3(element.x, element.y, element.z));
42135
42188
  });
42136
42189
  // 画曲线
42137
42190
  if (route.length > 1) {
@@ -42139,7 +42192,7 @@ var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
42139
42192
  com_graphicsvue_type_script_lang_js_curve = new this.THREE.CatmullRomCurve3(route, false, 'catmullrom', 0);
42140
42193
  var geometry = new this.THREE.TubeGeometry(com_graphicsvue_type_script_lang_js_curve, 5000, 0.5, 4);
42141
42194
  //加载纹理
42142
- lineTexture = new this.THREE.TextureLoader().load('/static/arrow/arrow-right.png');
42195
+ lineTexture = new this.THREE.TextureLoader().load(this.arrowImg);
42143
42196
  lineTexture.wrapS = this.THREE.RepeatWrapping;
42144
42197
  lineTexture.wrapT = this.THREE.RepeatWrapping;
42145
42198
  lineTexture.repeat.set(20, 1); //水平重复20次
@@ -42154,8 +42207,10 @@ var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
42154
42207
  var line = new this.THREE.Line(geometry, material);
42155
42208
  line.name = params.name;
42156
42209
  com_graphicsvue_type_script_lang_js_scene.add(line);
42210
+ clock = new this.THREE.Clock();
42157
42211
  }
42158
42212
  },
42213
+ //
42159
42214
  // 开启漫游
42160
42215
  /*
42161
42216
  参数为Object
@@ -42166,31 +42221,38 @@ var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
42166
42221
  */
42167
42222
  startRoam: function startRoam(params) {
42168
42223
  progress = 0;
42169
- this.roamConfig = Object.assign({}, {
42224
+ roamConfig = {
42170
42225
  loop: params.loop,
42171
- speed: params.speed,
42172
- roamName: params.name
42173
- });
42226
+ speed: params.speed
42227
+ };
42174
42228
  this.drawTextureCurve({
42175
42229
  name: params.name,
42176
42230
  path: params.path
42177
42231
  });
42232
+ roaming = true;
42178
42233
  clock = new this.THREE.Clock();
42179
42234
  },
42180
- // 暂停漫游
42181
- pauseRoaming: function pauseRoaming() {
42182
- this.$set(this.roamConfig, 'speed', 0);
42235
+ // 更新漫游的配置
42236
+ /*
42237
+ 参数为Object
42238
+ */
42239
+ updateRoamConfig: function updateRoamConfig(params) {
42240
+ for (var key in params) {
42241
+ roamConfig[key] = key === 'speed' ? params[key] / 300 : params[key];
42242
+ }
42183
42243
  },
42184
42244
  // 结束/退出漫游
42185
42245
  endRoam: function endRoam() {
42186
42246
  roaming = false;
42187
42247
  progress = 0;
42188
- this.removeObjectByName(this.roamConfig.roamName);
42189
- this.roamConfig = Object.assign({}, {
42248
+ this.removeObjectByName(this.roamConfig.name);
42249
+ roamConfig = {
42190
42250
  loop: false,
42191
42251
  speed: 0,
42192
- roamName: ''
42193
- });
42252
+ name: ''
42253
+ };
42254
+ roaming = false;
42255
+ lineTexture = null;
42194
42256
  },
42195
42257
  // 相机跟随轨道
42196
42258
  cameraTrack: function cameraTrack() {
@@ -42207,16 +42269,16 @@ var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
42207
42269
  com_graphicsvue_type_script_lang_js_camera.lookAt(pointBox.x, pointBox.y + 5, pointBox.z);
42208
42270
  cameraControls.setPosition(point.x, point.y + 5, point.z, false);
42209
42271
  cameraControls.setTarget(pointBox.x, pointBox.y + 5, pointBox.z, false);
42210
- progress += this.roamConfig.speed / 300;
42272
+ progress += roamConfig.speed / 300;
42211
42273
  } else {
42212
42274
  // 循环漫游
42213
- if (this.roamConfig.loop) {
42275
+ if (roamConfig.loop) {
42214
42276
  progress = 0;
42215
42277
  }
42216
42278
  }
42217
42279
  } else {
42218
42280
  lineTexture = null;
42219
- this.roamConfig.progress = 0;
42281
+ progress = 0;
42220
42282
  }
42221
42283
  },
42222
42284
  // 全局整体炸开
@@ -42224,13 +42286,13 @@ var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
42224
42286
  * 参数val: 爆炸的值
42225
42287
  */
42226
42288
  globalBomb: function globalBomb(val) {
42227
- var _this5 = this;
42289
+ var _this6 = this;
42228
42290
  if (com_graphicsvue_type_script_lang_js_scene.children.length === 0) return;
42229
42291
  for (var i = 0; i < com_graphicsvue_type_script_lang_js_scene.children.length; i++) {
42230
42292
  com_graphicsvue_type_script_lang_js_scene.children[i].traverse(function (item) {
42231
42293
  if (!item.isMesh || !item.worldDir) return;
42232
42294
  // 爆炸公式
42233
- _this5.computedBomb(item, val);
42295
+ _this6.computedBomb(item, val);
42234
42296
  });
42235
42297
  }
42236
42298
  this.timeRender();
@@ -42329,7 +42391,7 @@ var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
42329
42391
  },
42330
42392
  // 页面是否锁定
42331
42393
  initPointerLock: function initPointerLock() {
42332
- var _this6 = this;
42394
+ var _this7 = this;
42333
42395
  this.home();
42334
42396
  setTimeout(function () {
42335
42397
  pointControls = new PointerLockControls_PointerLockControls(com_graphicsvue_type_script_lang_js_camera, com_graphicsvue_type_script_lang_js_renderer.domElement);
@@ -42337,10 +42399,10 @@ var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
42337
42399
  // 锁定
42338
42400
  pointControls.addEventListener('lock', function () {
42339
42401
  cameraControls.enabled = false;
42340
- window.addEventListener('keydown', _this6.onKeyDown, false);
42341
- window.addEventListener('keyup', _this6.onKeyUp, false);
42342
- com_graphicsvue_type_script_lang_js_renderer.domElement.removeEventListener('mouseup', _this6.mouseClick, false);
42343
- com_graphicsvue_type_script_lang_js_renderer.domElement.removeEventListener('mousedown', _this6.mouseDown, false);
42402
+ window.addEventListener('keydown', _this7.onKeyDown, false);
42403
+ window.addEventListener('keyup', _this7.onKeyUp, false);
42404
+ com_graphicsvue_type_script_lang_js_renderer.domElement.removeEventListener('mouseup', _this7.mouseClick, false);
42405
+ com_graphicsvue_type_script_lang_js_renderer.domElement.removeEventListener('mousedown', _this7.mouseDown, false);
42344
42406
  });
42345
42407
  // 解锁
42346
42408
  pointControls.addEventListener('unlock', function () {
@@ -42350,10 +42412,10 @@ var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
42350
42412
  cameraControls.reset(true);
42351
42413
  cameraControls.update(0);
42352
42414
  setTimeout(function () {
42353
- window.removeEventListener('keydown', _this6.onKeyDown);
42354
- window.removeEventListener('keyup', _this6.onKeyUp);
42355
- com_graphicsvue_type_script_lang_js_renderer.domElement.addEventListener('mouseup', _this6.mouseClick, false);
42356
- com_graphicsvue_type_script_lang_js_renderer.domElement.addEventListener('mousedown', _this6.mouseDown, false);
42415
+ window.removeEventListener('keydown', _this7.onKeyDown);
42416
+ window.removeEventListener('keyup', _this7.onKeyUp);
42417
+ com_graphicsvue_type_script_lang_js_renderer.domElement.addEventListener('mouseup', _this7.mouseClick, false);
42418
+ com_graphicsvue_type_script_lang_js_renderer.domElement.addEventListener('mousedown', _this7.mouseDown, false);
42357
42419
  // this.timeRender()
42358
42420
  }, 0);
42359
42421
  });
@@ -42576,7 +42638,7 @@ var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
42576
42638
  },
42577
42639
  // 还原操作 将修改过的实体进行恢复
42578
42640
  restore: function restore() {
42579
- var _this7 = this;
42641
+ var _this8 = this;
42580
42642
  com_graphicsvue_type_script_lang_js_scene.traverse(function (item) {
42581
42643
  if (item.isMesh) {
42582
42644
  item.material.opacity = 1.0;
@@ -42599,7 +42661,7 @@ var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
42599
42661
  item.userData.translateMatrixInvert = null;
42600
42662
  }
42601
42663
  if (item.userData.combineMatrixInvert) {
42602
- _this7.rotateMesh(item, {
42664
+ _this8.rotateMesh(item, {
42603
42665
  x: 0,
42604
42666
  y: 0,
42605
42667
  z: 0
@@ -42623,8 +42685,8 @@ var com_graphicsvue_type_script_lang_js_drawObjMapInstance = {};
42623
42685
  });
42624
42686
  // CONCATENATED MODULE: ./packages/components/com-graphics/index.vue?vue&type=script&lang=js
42625
42687
  /* harmony default export */ var components_com_graphicsvue_type_script_lang_js = (com_graphicsvue_type_script_lang_js);
42626
- // EXTERNAL MODULE: ./packages/components/com-graphics/index.vue?vue&type=style&index=0&id=5b13dc9d&prod&lang=scss&scoped=true
42627
- var com_graphicsvue_type_style_index_0_id_5b13dc9d_prod_lang_scss_scoped_true = __webpack_require__("a470");
42688
+ // EXTERNAL MODULE: ./packages/components/com-graphics/index.vue?vue&type=style&index=0&id=dd89824e&prod&lang=scss&scoped=true
42689
+ var com_graphicsvue_type_style_index_0_id_dd89824e_prod_lang_scss_scoped_true = __webpack_require__("b003");
42628
42690
 
42629
42691
  // CONCATENATED MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
42630
42692
  /* globals __VUE_SSR_CONTEXT__ */
@@ -42735,17 +42797,17 @@ function normalizeComponent(
42735
42797
 
42736
42798
  var component = normalizeComponent(
42737
42799
  components_com_graphicsvue_type_script_lang_js,
42738
- com_graphicsvue_type_template_id_5b13dc9d_scoped_true_render,
42800
+ com_graphicsvue_type_template_id_dd89824e_scoped_true_render,
42739
42801
  staticRenderFns,
42740
42802
  false,
42741
42803
  null,
42742
- "5b13dc9d",
42804
+ "dd89824e",
42743
42805
  null
42744
42806
 
42745
42807
  )
42746
42808
 
42747
42809
  /* harmony default export */ var com_graphics = (component.exports);
42748
- // 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
42810
+ // 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
42749
42811
  var com_flcanvasvue_type_template_id_83d38700_scoped_true_render = function render() {
42750
42812
  var _vm = this,
42751
42813
  _c = _vm._self._c;
@@ -1 +1 @@
1
- #instructions[data-v-5b13dc9d],#konva-container[data-v-83d38700]{width:100%;height:100%;cursor:pointer}#konva-container[data-v-83d38700]{z-index:3;overflow:hidden}
1
+ #fl-model[data-v-dd89824e],#konva-container[data-v-83d38700]{width:100%;height:100%;cursor:pointer}#konva-container[data-v-83d38700]{z-index:3;overflow:hidden}