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.
- package/dist/fl-web-component.common.js +172 -110
- package/dist/fl-web-component.css +1 -1
- package/dist/fl-web-component.umd.js +172 -110
- package/dist/fl-web-component.umd.min.js +3 -3
- package/package.json +3 -2
- package/packages/components/com-graphics/index.vue +84 -34
- package/src/assets/arrow-right.png +0 -0
- package/src/utils/instance-parser.js +51 -54
- package/src/utils/mock.js +1 -1
|
@@ -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
|
-
/***/ "
|
|
11184
|
+
/***/ "b003":
|
|
11178
11185
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
11179
11186
|
|
|
11180
11187
|
"use strict";
|
|
11181
|
-
/* harmony import */ var
|
|
11182
|
-
/* harmony import */ var
|
|
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":"
|
|
16113
|
-
var
|
|
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": "
|
|
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=
|
|
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.
|
|
41244
|
-
|
|
41245
|
-
|
|
41246
|
-
|
|
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
|
-
|
|
41250
|
-
|
|
41251
|
-
|
|
41252
|
-
|
|
41253
|
-
|
|
41254
|
-
|
|
41255
|
-
|
|
41256
|
-
|
|
41257
|
-
|
|
41258
|
-
|
|
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
|
-
|
|
41283
|
-
|
|
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
|
-
|
|
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('
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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(
|
|
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
|
-
|
|
42224
|
+
roamConfig = {
|
|
42170
42225
|
loop: params.loop,
|
|
42171
|
-
speed: params.speed
|
|
42172
|
-
|
|
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
|
-
|
|
42182
|
-
|
|
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.
|
|
42189
|
-
|
|
42248
|
+
this.removeObjectByName(this.roamConfig.name);
|
|
42249
|
+
roamConfig = {
|
|
42190
42250
|
loop: false,
|
|
42191
42251
|
speed: 0,
|
|
42192
|
-
|
|
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 +=
|
|
42272
|
+
progress += roamConfig.speed / 300;
|
|
42211
42273
|
} else {
|
|
42212
42274
|
// 循环漫游
|
|
42213
|
-
if (
|
|
42275
|
+
if (roamConfig.loop) {
|
|
42214
42276
|
progress = 0;
|
|
42215
42277
|
}
|
|
42216
42278
|
}
|
|
42217
42279
|
} else {
|
|
42218
42280
|
lineTexture = null;
|
|
42219
|
-
|
|
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
|
|
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
|
-
|
|
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
|
|
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',
|
|
42341
|
-
window.addEventListener('keyup',
|
|
42342
|
-
com_graphicsvue_type_script_lang_js_renderer.domElement.removeEventListener('mouseup',
|
|
42343
|
-
com_graphicsvue_type_script_lang_js_renderer.domElement.removeEventListener('mousedown',
|
|
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',
|
|
42354
|
-
window.removeEventListener('keyup',
|
|
42355
|
-
com_graphicsvue_type_script_lang_js_renderer.domElement.addEventListener('mouseup',
|
|
42356
|
-
com_graphicsvue_type_script_lang_js_renderer.domElement.addEventListener('mousedown',
|
|
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
|
|
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
|
-
|
|
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=
|
|
42627
|
-
var
|
|
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
|
-
|
|
42800
|
+
com_graphicsvue_type_template_id_dd89824e_scoped_true_render,
|
|
42739
42801
|
staticRenderFns,
|
|
42740
42802
|
false,
|
|
42741
42803
|
null,
|
|
42742
|
-
"
|
|
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":"
|
|
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
|
-
#
|
|
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}
|