fl-web-component 2.0.1 → 2.0.3

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.
@@ -251,13 +251,6 @@ module.exports = function (it) {
251
251
 
252
252
  /***/ }),
253
253
 
254
- /***/ "06b3":
255
- /***/ (function(module, exports, __webpack_require__) {
256
-
257
- // extracted by mini-css-extract-plugin
258
-
259
- /***/ }),
260
-
261
254
  /***/ "06f8":
262
255
  /***/ (function(module, exports, __webpack_require__) {
263
256
 
@@ -13547,6 +13540,13 @@ module.exports = {
13547
13540
 
13548
13541
  /***/ }),
13549
13542
 
13543
+ /***/ "3ff7":
13544
+ /***/ (function(module, exports, __webpack_require__) {
13545
+
13546
+ // extracted by mini-css-extract-plugin
13547
+
13548
+ /***/ }),
13549
+
13550
13550
  /***/ "4010":
13551
13551
  /***/ (function(module, exports, __webpack_require__) {
13552
13552
 
@@ -17278,17 +17278,6 @@ Factory_1.Factory.backCompat(Node, {
17278
17278
  getRotationDeg: 'getRotation'
17279
17279
  });
17280
17280
 
17281
- /***/ }),
17282
-
17283
- /***/ "49c8":
17284
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
17285
-
17286
- "use strict";
17287
- /* 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_e9e0ba24_prod_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("06b3");
17288
- /* 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_e9e0ba24_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_e9e0ba24_prod_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0__);
17289
- /* unused harmony reexport * */
17290
-
17291
-
17292
17281
  /***/ }),
17293
17282
 
17294
17283
  /***/ "4b26":
@@ -30016,6 +30005,13 @@ root._=_;}}).call(undefined);
30016
30005
 
30017
30006
  /***/ }),
30018
30007
 
30008
+ /***/ "589f":
30009
+ /***/ (function(module, exports, __webpack_require__) {
30010
+
30011
+ // extracted by mini-css-extract-plugin
30012
+
30013
+ /***/ }),
30014
+
30019
30015
  /***/ "5924":
30020
30016
  /***/ (function(module, exports, __webpack_require__) {
30021
30017
 
@@ -56470,7 +56466,7 @@ module.exports = document && document.documentElement;
56470
56466
  /***/ "9224":
56471
56467
  /***/ (function(module) {
56472
56468
 
56473
- module.exports = JSON.parse("{\"name\":\"fl-web-component\",\"version\":\"2.0.1\",\"scripts\":{\"postinstall\":\"patch-package\",\"tip1\":\"仅调试本组件不涉及业务组件,请执行dev\",\"dev\":\"vue-cli-service serve\",\"lint\":\"eslint \\\"{src,packages}/**/*.{vue,js}\\\" --fix\",\"prettier\":\"prettier --write \\\"packages/**/*.{js,css,less,scss,vue,html}\\\"\",\"=\":\"=============================================================\",\"tip2\":\"同时调试本组件与业务组件,请执行watch\",\"watch\":\"vue-cli-service build --watch --mode production --target lib --name fl-web-component --formats commonjs ./src/main.js\",\"build\":\"npm run lint && vue-cli-service build --target lib --name fl-web-component --formats commonjs ./src/main.js\",\"build:test\":\"vue-cli-service build --target lib --name fl-web-component --formats commonjs ./src/main.js\",\"publish:base\":\"npm run build && npm publish --registry https://registry.npmjs.org/\",\"publish:beta:base\":\"npm run build && npm publish --tag beta --registry https://registry.npmjs.org/\",\"==\":\"=============================================================\",\"tip3\":\"发版注意: 【测试版执行publish:beta】【修改bug执行publish:fix】【新增功能执行publish:feat】【新特性执行publish:perf】\",\"publish:beta\":\"npm version prerelease --preid=beta && npm run publish:beta:base\",\"publish:fix\":\"npm version patch && npm run publish:base\",\"publish:feat\":\"npm version minor && npm run publish:base\",\"publish:perf\":\"npm version major && npm run publish:base\"},\"files\":[\"dist\",\"packages\",\"src\"],\"main\":\"dist/fl-web-component.common.js\",\"dependencies\":{\"3d-tiles-renderer\":\"^0.4.14\",\"camera-controls\":\"2.9.0\",\"core-js\":\"^3.42.0\",\"dxf-parser\":\"^1.1.2\",\"element-ui\":\"2.15.14\",\"fflate\":\"^0.8.2\",\"html2canvas\":\"^1.4.1\",\"jspdf\":\"^3.0.1\",\"konva\":\"^9.3.12\",\"lodash\":\"^4.17.21\",\"meshline\":\"^3.3.1\",\"regenerator-runtime\":\"^0.14.1\",\"svg-pan-zoom\":\"^3.6.2\",\"three\":\"^0.176.0\",\"three.path\":\"^1.0.1\",\"vue\":\"^2.6.11\"},\"devDependencies\":{\"@babel/core\":\"^7.12.16\",\"@babel/plugin-proposal-nullish-coalescing-operator\":\"^7.18.6\",\"@babel/plugin-proposal-optional-chaining\":\"^7.21.0\",\"@babel/preset-env\":\"^7.0.0\",\"@babel/runtime-corejs3\":\"^7.27.1\",\"@vue/cli-plugin-babel\":\"~4.4.0\",\"@vue/cli-plugin-eslint\":\"~4.4.0\",\"@vue/cli-service\":\"~4.4.0\",\"babel-eslint\":\"^10.1.0\",\"babel-loader\":\"^8.0.0\",\"copy-webpack-plugin\":\"^4.0.1\",\"eslint\":\"^6.7.2\",\"eslint-config-prettier\":\"^6.15.0\",\"eslint-plugin-prettier\":\"^3.4.1\",\"eslint-plugin-vue\":\"^6.2.2\",\"patch-package\":\"^6.4.7\",\"prettier\":\"^2.8.8\",\"sass\":\"1.32.13\",\"sass-loader\":\"10.1.1\",\"vue-template-compiler\":\"^2.6.11\",\"worker-loader\":\"^3.0.8\"},\"browserslist\":[\"> 1%\",\"last 2 versions\"]}");
56469
+ module.exports = JSON.parse("{\"name\":\"fl-web-component\",\"version\":\"2.0.3\",\"scripts\":{\"postinstall\":\"patch-package\",\"tip1\":\"仅调试本组件不涉及业务组件,请执行dev\",\"dev\":\"vue-cli-service serve\",\"lint\":\"eslint \\\"{src,packages}/**/*.{vue,js}\\\" --fix\",\"prettier\":\"prettier --write \\\"packages/**/*.{js,css,less,scss,vue,html}\\\"\",\"=\":\"=============================================================\",\"tip2\":\"同时调试本组件与业务组件,请执行watch\",\"watch\":\"vue-cli-service build --watch --mode production --target lib --name fl-web-component --formats commonjs ./src/main.js\",\"build\":\"npm run lint && vue-cli-service build --target lib --name fl-web-component --formats commonjs ./src/main.js\",\"build:test\":\"vue-cli-service build --target lib --name fl-web-component --formats commonjs ./src/main.js\",\"publish:base\":\"npm run build && npm publish --registry https://registry.npmjs.org/\",\"publish:beta:base\":\"npm run build && npm publish --tag beta --registry https://registry.npmjs.org/\",\"==\":\"=============================================================\",\"tip3\":\"发版注意: 【测试版执行publish:beta】【修改bug执行publish:fix】【新增功能执行publish:feat】【新特性执行publish:perf】\",\"publish:beta\":\"npm version prerelease --preid=beta && npm run publish:beta:base\",\"publish:fix\":\"npm version patch && npm run publish:base\",\"publish:feat\":\"npm version minor && npm run publish:base\",\"publish:perf\":\"npm version major && npm run publish:base\"},\"files\":[\"dist\",\"packages\",\"src\"],\"main\":\"dist/fl-web-component.common.js\",\"dependencies\":{\"3d-tiles-renderer\":\"^0.4.14\",\"camera-controls\":\"2.9.0\",\"core-js\":\"^3.42.0\",\"dxf-parser\":\"^1.1.2\",\"element-ui\":\"2.15.14\",\"fflate\":\"^0.8.2\",\"html2canvas\":\"^1.4.1\",\"jspdf\":\"^3.0.1\",\"konva\":\"^9.3.12\",\"lodash\":\"^4.17.21\",\"meshline\":\"^3.3.1\",\"regenerator-runtime\":\"^0.14.1\",\"svg-pan-zoom\":\"^3.6.2\",\"three\":\"^0.176.0\",\"three.path\":\"^1.0.1\",\"vue\":\"^2.6.11\"},\"devDependencies\":{\"@babel/core\":\"^7.12.16\",\"@babel/plugin-proposal-nullish-coalescing-operator\":\"^7.18.6\",\"@babel/plugin-proposal-optional-chaining\":\"^7.21.0\",\"@babel/preset-env\":\"^7.0.0\",\"@babel/runtime-corejs3\":\"^7.27.1\",\"@vue/cli-plugin-babel\":\"~4.4.0\",\"@vue/cli-plugin-eslint\":\"~4.4.0\",\"@vue/cli-service\":\"~4.4.0\",\"babel-eslint\":\"^10.1.0\",\"babel-loader\":\"^8.0.0\",\"copy-webpack-plugin\":\"^4.0.1\",\"eslint\":\"^6.7.2\",\"eslint-config-prettier\":\"^6.15.0\",\"eslint-plugin-prettier\":\"^3.4.1\",\"eslint-plugin-vue\":\"^6.2.2\",\"patch-package\":\"^6.4.7\",\"prettier\":\"^2.8.8\",\"sass\":\"1.32.13\",\"sass-loader\":\"10.1.1\",\"vue-template-compiler\":\"^2.6.11\",\"worker-loader\":\"^3.0.8\"},\"browserslist\":[\"> 1%\",\"last 2 versions\"]}");
56474
56470
 
56475
56471
  /***/ }),
56476
56472
 
@@ -59217,6 +59213,17 @@ var ExecutionEnvironment = {
59217
59213
  };
59218
59214
  module.exports = ExecutionEnvironment;
59219
59215
 
59216
+ /***/ }),
59217
+
59218
+ /***/ "a4b9":
59219
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
59220
+
59221
+ "use strict";
59222
+ /* 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_4b02d5a5_prod_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("589f");
59223
+ /* 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_4b02d5a5_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_4b02d5a5_prod_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0__);
59224
+ /* unused harmony reexport * */
59225
+
59226
+
59220
59227
  /***/ }),
59221
59228
 
59222
59229
  /***/ "a742":
@@ -59659,6 +59666,17 @@ var Enhance = function Enhance(imageData) {
59659
59666
  exports.Enhance = Enhance;
59660
59667
  Factory_1.Factory.addGetterSetter(Node_1.Node, 'enhance', 0, (0, Validators_1.getNumberValidator)(), Factory_1.Factory.afterSetFilter);
59661
59668
 
59669
+ /***/ }),
59670
+
59671
+ /***/ "bd66":
59672
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
59673
+
59674
+ "use strict";
59675
+ /* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_2_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_1_id_4b02d5a5_prod_lang_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("3ff7");
59676
+ /* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_2_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_1_id_4b02d5a5_prod_lang_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_2_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_1_id_4b02d5a5_prod_lang_css__WEBPACK_IMPORTED_MODULE_0__);
59677
+ /* unused harmony reexport * */
59678
+
59679
+
59662
59680
  /***/ }),
59663
59681
 
59664
59682
  /***/ "bdee":
@@ -75420,13 +75438,6 @@ if (Global_1.Konva.isBrowser) {
75420
75438
 
75421
75439
  /***/ }),
75422
75440
 
75423
- /***/ "ecd0":
75424
- /***/ (function(module, exports, __webpack_require__) {
75425
-
75426
- // extracted by mini-css-extract-plugin
75427
-
75428
- /***/ }),
75429
-
75430
75441
  /***/ "ecd6":
75431
75442
  /***/ (function(module, exports, __webpack_require__) {
75432
75443
 
@@ -76049,17 +76060,6 @@ var global = module.exports = typeof window != 'undefined' && window.Math == Mat
76049
76060
  : Function('return this')();
76050
76061
  if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef
76051
76062
 
76052
- /***/ }),
76053
-
76054
- /***/ "f097":
76055
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
76056
-
76057
- "use strict";
76058
- /* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_2_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_1_id_e9e0ba24_prod_lang_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("ecd0");
76059
- /* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_2_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_1_id_e9e0ba24_prod_lang_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_2_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_1_id_e9e0ba24_prod_lang_css__WEBPACK_IMPORTED_MODULE_0__);
76060
- /* unused harmony reexport * */
76061
-
76062
-
76063
76063
  /***/ }),
76064
76064
 
76065
76065
  /***/ "f0b4":
@@ -78611,8 +78611,8 @@ if (typeof window !== 'undefined') {
78611
78611
  // Indicate to webpack that this file can be concatenated
78612
78612
  /* harmony default export */ var setPublicPath = (null);
78613
78613
 
78614
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"6e4c5ba0-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=e9e0ba24&scoped=true
78615
- var com_graphicsvue_type_template_id_e9e0ba24_scoped_true_render = function render() {
78614
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"2fafb909-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=4b02d5a5&scoped=true
78615
+ var com_graphicsvue_type_template_id_4b02d5a5_scoped_true_render = function render() {
78616
78616
  var _vm = this,
78617
78617
  _c = _vm._self._c;
78618
78618
  return _c('div', {
@@ -78623,7 +78623,7 @@ var com_graphicsvue_type_template_id_e9e0ba24_scoped_true_render = function rend
78623
78623
  };
78624
78624
  var staticRenderFns = [];
78625
78625
 
78626
- // CONCATENATED MODULE: ./packages/components/com-graphics/index.vue?vue&type=template&id=e9e0ba24&scoped=true
78626
+ // CONCATENATED MODULE: ./packages/components/com-graphics/index.vue?vue&type=template&id=4b02d5a5&scoped=true
78627
78627
 
78628
78628
  // CONCATENATED MODULE: ./node_modules/camera-controls/dist/camera-controls.module.js
78629
78629
  function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
@@ -106823,306 +106823,6 @@ function generateNode(mesh) {
106823
106823
  return nodes;
106824
106824
  }
106825
106825
 
106826
- // CONCATENATED MODULE: ./node_modules/three/examples/jsm/loaders/FontLoader.js
106827
- function FontLoader_typeof(o) { "@babel/helpers - typeof"; return FontLoader_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, FontLoader_typeof(o); }
106828
- function FontLoader_toConsumableArray(r) { return FontLoader_arrayWithoutHoles(r) || FontLoader_iterableToArray(r) || FontLoader_unsupportedIterableToArray(r) || FontLoader_nonIterableSpread(); }
106829
- function FontLoader_nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
106830
- function FontLoader_unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return FontLoader_arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? FontLoader_arrayLikeToArray(r, a) : void 0; } }
106831
- function FontLoader_iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
106832
- function FontLoader_arrayWithoutHoles(r) { if (Array.isArray(r)) return FontLoader_arrayLikeToArray(r); }
106833
- function FontLoader_arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
106834
- function FontLoader_classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
106835
- function FontLoader_defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, FontLoader_toPropertyKey(o.key), o); } }
106836
- function FontLoader_createClass(e, r, t) { return r && FontLoader_defineProperties(e.prototype, r), t && FontLoader_defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
106837
- function FontLoader_toPropertyKey(t) { var i = FontLoader_toPrimitive(t, "string"); return "symbol" == FontLoader_typeof(i) ? i : i + ""; }
106838
- function FontLoader_toPrimitive(t, r) { if ("object" != FontLoader_typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != FontLoader_typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
106839
- function FontLoader_callSuper(t, o, e) { return o = FontLoader_getPrototypeOf(o), FontLoader_possibleConstructorReturn(t, FontLoader_isNativeReflectConstruct() ? Reflect.construct(o, e || [], FontLoader_getPrototypeOf(t).constructor) : o.apply(t, e)); }
106840
- function FontLoader_possibleConstructorReturn(t, e) { if (e && ("object" == FontLoader_typeof(e) || "function" == typeof e)) return e; if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined"); return FontLoader_assertThisInitialized(t); }
106841
- function FontLoader_assertThisInitialized(e) { if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return e; }
106842
- function FontLoader_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (FontLoader_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
106843
- function FontLoader_getPrototypeOf(t) { return FontLoader_getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) { return t.__proto__ || Object.getPrototypeOf(t); }, FontLoader_getPrototypeOf(t); }
106844
- function FontLoader_inherits(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), Object.defineProperty(t, "prototype", { writable: !1 }), e && FontLoader_setPrototypeOf(t, e); }
106845
- function FontLoader_setPrototypeOf(t, e) { return FontLoader_setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, FontLoader_setPrototypeOf(t, e); }
106846
-
106847
-
106848
- /**
106849
- * A loader for loading fonts.
106850
- *
106851
- * You can convert fonts online using [facetype.js]{@link https://gero3.github.io/facetype.js/}.
106852
- *
106853
- * ```js
106854
- * const loader = new FontLoader();
106855
- * const font = await loader.loadAsync( 'fonts/helvetiker_regular.typeface.json' );
106856
- * ```
106857
- *
106858
- * @augments Loader
106859
- * @three_import import { FontLoader } from 'three/addons/loaders/FontLoader.js';
106860
- */
106861
- var FontLoader_FontLoader = /*#__PURE__*/function (_Loader) {
106862
- /**
106863
- * Constructs a new font loader.
106864
- *
106865
- * @param {LoadingManager} [manager] - The loading manager.
106866
- */
106867
- function FontLoader(manager) {
106868
- FontLoader_classCallCheck(this, FontLoader);
106869
- return FontLoader_callSuper(this, FontLoader, [manager]);
106870
- }
106871
-
106872
- /**
106873
- * Starts loading from the given URL and passes the loaded font
106874
- * to the `onLoad()` callback.
106875
- *
106876
- * @param {string} url - The path/URL of the file to be loaded. This can also be a data URI.
106877
- * @param {function(Font)} onLoad - Executed when the loading process has been finished.
106878
- * @param {onProgressCallback} onProgress - Executed while the loading is in progress.
106879
- * @param {onErrorCallback} onError - Executed when errors occur.
106880
- */
106881
- FontLoader_inherits(FontLoader, _Loader);
106882
- return FontLoader_createClass(FontLoader, [{
106883
- key: "load",
106884
- value: function load(url, onLoad, onProgress, onError) {
106885
- var scope = this;
106886
- var loader = new FileLoader(this.manager);
106887
- loader.setPath(this.path);
106888
- loader.setRequestHeader(this.requestHeader);
106889
- loader.setWithCredentials(this.withCredentials);
106890
- loader.load(url, function (text) {
106891
- var font = scope.parse(JSON.parse(text));
106892
- if (onLoad) onLoad(font);
106893
- }, onProgress, onError);
106894
- }
106895
-
106896
- /**
106897
- * Parses the given font data and returns the resulting font.
106898
- *
106899
- * @param {Object} json - The raw font data as a JSON object.
106900
- * @return {Font} The font.
106901
- */
106902
- }, {
106903
- key: "parse",
106904
- value: function parse(json) {
106905
- return new Font(json);
106906
- }
106907
- }]);
106908
- }(Loader);
106909
- /**
106910
- * Class representing a font.
106911
- */
106912
- var Font = /*#__PURE__*/function () {
106913
- /**
106914
- * Constructs a new font.
106915
- *
106916
- * @param {Object} data - The font data as JSON.
106917
- */
106918
- function Font(data) {
106919
- FontLoader_classCallCheck(this, Font);
106920
- /**
106921
- * This flag can be used for type testing.
106922
- *
106923
- * @type {boolean}
106924
- * @readonly
106925
- * @default true
106926
- */
106927
- this.isFont = true;
106928
- this.type = 'Font';
106929
-
106930
- /**
106931
- * The font data as JSON.
106932
- *
106933
- * @type {Object}
106934
- */
106935
- this.data = data;
106936
- }
106937
-
106938
- /**
106939
- * Generates geometry shapes from the given text and size. The result of this method
106940
- * should be used with {@link ShapeGeometry} to generate the actual geometry data.
106941
- *
106942
- * @param {string} text - The text.
106943
- * @param {number} [size=100] - The text size.
106944
- * @return {Array<Shape>} An array of shapes representing the text.
106945
- */
106946
- return FontLoader_createClass(Font, [{
106947
- key: "generateShapes",
106948
- value: function generateShapes(text) {
106949
- var size = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 100;
106950
- var shapes = [];
106951
- var paths = createPaths(text, size, this.data);
106952
- for (var p = 0, pl = paths.length; p < pl; p++) {
106953
- shapes.push.apply(shapes, FontLoader_toConsumableArray(paths[p].toShapes()));
106954
- }
106955
- return shapes;
106956
- }
106957
- }]);
106958
- }();
106959
- function createPaths(text, size, data) {
106960
- var chars = Array.from(text);
106961
- var scale = size / data.resolution;
106962
- var line_height = (data.boundingBox.yMax - data.boundingBox.yMin + data.underlineThickness) * scale;
106963
- var paths = [];
106964
- var offsetX = 0,
106965
- offsetY = 0;
106966
- for (var i = 0; i < chars.length; i++) {
106967
- var char = chars[i];
106968
- if (char === '\n') {
106969
- offsetX = 0;
106970
- offsetY -= line_height;
106971
- } else {
106972
- var ret = createPath(char, scale, offsetX, offsetY, data);
106973
- offsetX += ret.offsetX;
106974
- paths.push(ret.path);
106975
- }
106976
- }
106977
- return paths;
106978
- }
106979
- function createPath(char, scale, offsetX, offsetY, data) {
106980
- var glyph = data.glyphs[char] || data.glyphs['?'];
106981
- if (!glyph) {
106982
- console.error('THREE.Font: character "' + char + '" does not exists in font family ' + data.familyName + '.');
106983
- return;
106984
- }
106985
- var path = new ShapePath();
106986
- var x, y, cpx, cpy, cpx1, cpy1, cpx2, cpy2;
106987
- if (glyph.o) {
106988
- var outline = glyph._cachedOutline || (glyph._cachedOutline = glyph.o.split(' '));
106989
- for (var i = 0, l = outline.length; i < l;) {
106990
- var action = outline[i++];
106991
- switch (action) {
106992
- case 'm':
106993
- // moveTo
106994
-
106995
- x = outline[i++] * scale + offsetX;
106996
- y = outline[i++] * scale + offsetY;
106997
- path.moveTo(x, y);
106998
- break;
106999
- case 'l':
107000
- // lineTo
107001
-
107002
- x = outline[i++] * scale + offsetX;
107003
- y = outline[i++] * scale + offsetY;
107004
- path.lineTo(x, y);
107005
- break;
107006
- case 'q':
107007
- // quadraticCurveTo
107008
-
107009
- cpx = outline[i++] * scale + offsetX;
107010
- cpy = outline[i++] * scale + offsetY;
107011
- cpx1 = outline[i++] * scale + offsetX;
107012
- cpy1 = outline[i++] * scale + offsetY;
107013
- path.quadraticCurveTo(cpx1, cpy1, cpx, cpy);
107014
- break;
107015
- case 'b':
107016
- // bezierCurveTo
107017
-
107018
- cpx = outline[i++] * scale + offsetX;
107019
- cpy = outline[i++] * scale + offsetY;
107020
- cpx1 = outline[i++] * scale + offsetX;
107021
- cpy1 = outline[i++] * scale + offsetY;
107022
- cpx2 = outline[i++] * scale + offsetX;
107023
- cpy2 = outline[i++] * scale + offsetY;
107024
- path.bezierCurveTo(cpx1, cpy1, cpx2, cpy2, cpx, cpy);
107025
- break;
107026
- }
107027
- }
107028
- }
107029
- return {
107030
- offsetX: glyph.ha * scale,
107031
- path: path
107032
- };
107033
- }
107034
-
107035
- // CONCATENATED MODULE: ./node_modules/three/examples/jsm/geometries/TextGeometry.js
107036
- function TextGeometry_typeof(o) { "@babel/helpers - typeof"; return TextGeometry_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, TextGeometry_typeof(o); }
107037
- function TextGeometry_defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, TextGeometry_toPropertyKey(o.key), o); } }
107038
- function TextGeometry_createClass(e, r, t) { return r && TextGeometry_defineProperties(e.prototype, r), t && TextGeometry_defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
107039
- function TextGeometry_toPropertyKey(t) { var i = TextGeometry_toPrimitive(t, "string"); return "symbol" == TextGeometry_typeof(i) ? i : i + ""; }
107040
- function TextGeometry_toPrimitive(t, r) { if ("object" != TextGeometry_typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != TextGeometry_typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
107041
- function TextGeometry_classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
107042
- function TextGeometry_callSuper(t, o, e) { return o = TextGeometry_getPrototypeOf(o), TextGeometry_possibleConstructorReturn(t, TextGeometry_isNativeReflectConstruct() ? Reflect.construct(o, e || [], TextGeometry_getPrototypeOf(t).constructor) : o.apply(t, e)); }
107043
- function TextGeometry_possibleConstructorReturn(t, e) { if (e && ("object" == TextGeometry_typeof(e) || "function" == typeof e)) return e; if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined"); return TextGeometry_assertThisInitialized(t); }
107044
- function TextGeometry_assertThisInitialized(e) { if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return e; }
107045
- function TextGeometry_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (TextGeometry_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
107046
- function TextGeometry_getPrototypeOf(t) { return TextGeometry_getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) { return t.__proto__ || Object.getPrototypeOf(t); }, TextGeometry_getPrototypeOf(t); }
107047
- function TextGeometry_inherits(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), Object.defineProperty(t, "prototype", { writable: !1 }), e && TextGeometry_setPrototypeOf(t, e); }
107048
- function TextGeometry_setPrototypeOf(t, e) { return TextGeometry_setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, TextGeometry_setPrototypeOf(t, e); }
107049
-
107050
-
107051
- /**
107052
- * A class for generating text as a single geometry. It is constructed by providing a string of text, and a set of
107053
- * parameters consisting of a loaded font and extrude settings.
107054
- *
107055
- * See the {@link FontLoader} page for additional details.
107056
- *
107057
- * `TextGeometry` uses [typeface.json]{@link http://gero3.github.io/facetype.js/} generated fonts.
107058
- * Some existing fonts can be found located in `/examples/fonts`.
107059
- *
107060
- * ```js
107061
- * const loader = new FontLoader();
107062
- * const font = await loader.loadAsync( 'fonts/helvetiker_regular.typeface.json' );
107063
- * const geometry = new TextGeometry( 'Hello three.js!', {
107064
- * font: font,
107065
- * size: 80,
107066
- * depth: 5,
107067
- * curveSegments: 12
107068
- * } );
107069
- * ```
107070
- *
107071
- * @augments ExtrudeGeometry
107072
- * @three_import import { TextGeometry } from 'three/addons/geometries/TextGeometry.js';
107073
- */
107074
- var TextGeometry = /*#__PURE__*/function (_ExtrudeGeometry) {
107075
- /**
107076
- * Constructs a new text geometry.
107077
- *
107078
- * @param {string} text - The text that should be transformed into a geometry.
107079
- * @param {TextGeometry~Options} [parameters] - The text settings.
107080
- */
107081
- function TextGeometry(text) {
107082
- var _this;
107083
- var parameters = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
107084
- TextGeometry_classCallCheck(this, TextGeometry);
107085
- var font = parameters.font;
107086
- if (font === undefined) {
107087
- _this = TextGeometry_callSuper(this, TextGeometry); // generate default extrude geometry
107088
- } else {
107089
- var shapes = font.generateShapes(text, parameters.size);
107090
-
107091
- // defaults
107092
-
107093
- if (parameters.depth === undefined) parameters.depth = 50;
107094
- if (parameters.bevelThickness === undefined) parameters.bevelThickness = 10;
107095
- if (parameters.bevelSize === undefined) parameters.bevelSize = 8;
107096
- if (parameters.bevelEnabled === undefined) parameters.bevelEnabled = false;
107097
- _this = TextGeometry_callSuper(this, TextGeometry, [shapes, parameters]);
107098
- }
107099
- _this.type = 'TextGeometry';
107100
- return TextGeometry_assertThisInitialized(_this);
107101
- }
107102
- TextGeometry_inherits(TextGeometry, _ExtrudeGeometry);
107103
- return TextGeometry_createClass(TextGeometry);
107104
- }(ExtrudeGeometry);
107105
- /**
107106
- * Represents the `options` type of the geometry's constructor.
107107
- *
107108
- * @typedef {Object} TextGeometry~Options
107109
- * @property {Font} [font] - The font.
107110
- * @property {number} [size=100] - The text size.
107111
- * @property {number} [depth=50] - Depth to extrude the shape.
107112
- * @property {number} [curveSegments=12] - Number of points on the curves.
107113
- * @property {number} [steps=1] - Number of points used for subdividing segments along the depth of the extruded spline.
107114
- * @property {boolean} [bevelEnabled=false] - Whether to beveling to the shape or not.
107115
- * @property {number} [bevelThickness=10] - How deep into the original shape the bevel goes.
107116
- * @property {number} [bevelSize=8] - Distance from the shape outline that the bevel extends.
107117
- * @property {number} [bevelOffset=0] - Distance from the shape outline that the bevel starts.
107118
- * @property {number} [bevelSegments=3] - Number of bevel layers.
107119
- * @property {?Curve} [extrudePath=null] - A 3D spline path along which the shape should be extruded. Bevels not supported for path extrusion.
107120
- * @property {Object} [UVGenerator] - An object that provides UV generator functions for custom UV generation.
107121
- **/
107122
-
107123
- // EXTERNAL MODULE: ./node_modules/three/examples/fonts/helvetiker_regular.typeface.json
107124
- var helvetiker_regular_typeface = __webpack_require__("7e1b");
107125
-
107126
106826
  // CONCATENATED MODULE: ./node_modules/three/build/three.module.js
107127
106827
  function three_module_regenerator(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var e,t,r="function"==typeof Symbol?Symbol:{},n=r.iterator||"@@iterator",o=r.toStringTag||"@@toStringTag";function i(r,n,o,i){var c=n&&n.prototype instanceof Generator?n:Generator,u=Object.create(c.prototype);return three_module_regeneratorDefine2(u,"_invoke",function(r,n,o){var i,c,u,f=0,p=o||[],y=!1,G={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function d(t,r){return i=t,c=0,u=e,G.n=r,a;}};function d(r,n){for(c=r,u=n,t=0;!y&&f&&!o&&t<p.length;t++){var o,i=p[t],d=G.p,l=i[2];r>3?(o=l===n)&&(u=i[(c=i[4])?5:(c=3,3)],i[4]=i[5]=e):i[0]<=d&&((o=r<2&&d<i[1])?(c=0,G.v=n,G.n=i[1]):d<l&&(o=r<3||i[0]>n||n>l)&&(i[4]=r,i[5]=n,G.n=l,c=0));}if(o||r>1)return a;throw y=!0,n;}return function(o,p,l){if(f>1)throw TypeError("Generator is already running");for(y&&1===p&&d(p,l),c=p,u=l;(t=c<2?e:u)||!y;){i||(c?c<3?(c>1&&(G.n=-1),d(c,u)):G.n=u:G.v=u);try{if(f=2,i){if(c||(o="next"),t=i[o]){if(!(t=t.call(i,u)))throw TypeError("iterator result is not an object");if(!t.done)return t;u=t.value,c<2&&(c=0);}else 1===c&&(t=i.return)&&t.call(i),c<2&&(u=TypeError("The iterator does not provide a '"+o+"' method"),c=1);i=e;}else if((t=(y=G.n<0)?u:r.call(n,G))!==a)break;}catch(t){i=e,c=1,u=t;}finally{f=1;}}return{value:t,done:y};};}(r,o,i),!0),u;}var a={};function Generator(){}function GeneratorFunction(){}function GeneratorFunctionPrototype(){}t=Object.getPrototypeOf;var c=[][n]?t(t([][n]())):(three_module_regeneratorDefine2(t={},n,function(){return this;}),t),u=GeneratorFunctionPrototype.prototype=Generator.prototype=Object.create(c);function f(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,GeneratorFunctionPrototype):(e.__proto__=GeneratorFunctionPrototype,three_module_regeneratorDefine2(e,o,"GeneratorFunction")),e.prototype=Object.create(u),e;}return GeneratorFunction.prototype=GeneratorFunctionPrototype,three_module_regeneratorDefine2(u,"constructor",GeneratorFunctionPrototype),three_module_regeneratorDefine2(GeneratorFunctionPrototype,"constructor",GeneratorFunction),GeneratorFunction.displayName="GeneratorFunction",three_module_regeneratorDefine2(GeneratorFunctionPrototype,o,"GeneratorFunction"),three_module_regeneratorDefine2(u),three_module_regeneratorDefine2(u,o,"Generator"),three_module_regeneratorDefine2(u,n,function(){return this;}),three_module_regeneratorDefine2(u,"toString",function(){return"[object Generator]";}),(three_module_regenerator=function _regenerator(){return{w:i,m:f};})();}function three_module_regeneratorDefine2(e,r,n,t){var i=Object.defineProperty;try{i({},"",{});}catch(e){i=0;}three_module_regeneratorDefine2=function _regeneratorDefine(e,r,n,t){function o(r,n){three_module_regeneratorDefine2(e,r,function(e){return this._invoke(r,n,e);});}r?i?i(e,r,{value:n,enumerable:!t,configurable:!t,writable:!t}):e[r]=n:(o("next",0),o("throw",1),o("return",2));},three_module_regeneratorDefine2(e,r,n,t);}function three_module_asyncGeneratorStep(n,t,e,r,o,a,c){try{var i=n[a](c),u=i.value;}catch(n){return void e(n);}i.done?t(u):Promise.resolve(u).then(r,o);}function three_module_asyncToGenerator(n){return function(){var t=this,e=arguments;return new Promise(function(r,o){var a=n.apply(t,e);function _next(n){three_module_asyncGeneratorStep(a,r,o,_next,_throw,"next",n);}function _throw(n){three_module_asyncGeneratorStep(a,r,o,_next,_throw,"throw",n);}_next(void 0);});};}function three_module_callSuper(t,o,e){return o=three_module_getPrototypeOf(o),three_module_possibleConstructorReturn(t,three_module_isNativeReflectConstruct()?Reflect.construct(o,e||[],three_module_getPrototypeOf(t).constructor):o.apply(t,e));}function three_module_possibleConstructorReturn(t,e){if(e&&("object"==three_module_typeof(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return three_module_assertThisInitialized(t);}function three_module_assertThisInitialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e;}function three_module_isNativeReflectConstruct(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}));}catch(t){}return(three_module_isNativeReflectConstruct=function _isNativeReflectConstruct(){return!!t;})();}function three_module_getPrototypeOf(t){return three_module_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t);},three_module_getPrototypeOf(t);}function three_module_inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&three_module_setPrototypeOf(t,e);}function three_module_setPrototypeOf(t,e){return three_module_setPrototypeOf=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t;},three_module_setPrototypeOf(t,e);}function three_module_defineProperty(e,r,t){return(r=three_module_toPropertyKey(r))in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e;}function three_module_createForOfIteratorHelper(r,e){var t="undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(!t){if(Array.isArray(r)||(t=three_module_unsupportedIterableToArray(r))||e&&r&&"number"==typeof r.length){t&&(r=t);var _n=0,F=function F(){};return{s:F,n:function n(){return _n>=r.length?{done:!0}:{done:!1,value:r[_n++]};},e:function e(r){throw r;},f:F};}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}var o,a=!0,u=!1;return{s:function s(){t=t.call(r);},n:function n(){var r=t.next();return a=r.done,r;},e:function e(r){u=!0,o=r;},f:function f(){try{a||null==t.return||t.return();}finally{if(u)throw o;}}};}function three_module_unsupportedIterableToArray(r,a){if(r){if("string"==typeof r)return three_module_arrayLikeToArray(r,a);var t={}.toString.call(r).slice(8,-1);return"Object"===t&&r.constructor&&(t=r.constructor.name),"Map"===t||"Set"===t?Array.from(r):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?three_module_arrayLikeToArray(r,a):void 0;}}function three_module_arrayLikeToArray(r,a){(null==a||a>r.length)&&(a=r.length);for(var e=0,n=Array(a);e<a;e++)n[e]=r[e];return n;}function three_module_typeof(o){"@babel/helpers - typeof";return three_module_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(o){return typeof o;}:function(o){return o&&"function"==typeof Symbol&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o;},three_module_typeof(o);}function three_module_classCallCheck(a,n){if(!(a instanceof n))throw new TypeError("Cannot call a class as a function");}function three_module_defineProperties(e,r){for(var t=0;t<r.length;t++){var o=r[t];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,three_module_toPropertyKey(o.key),o);}}function three_module_createClass(e,r,t){return r&&three_module_defineProperties(e.prototype,r),t&&three_module_defineProperties(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e;}function three_module_toPropertyKey(t){var i=three_module_toPrimitive(t,"string");return"symbol"==three_module_typeof(i)?i:i+"";}function three_module_toPrimitive(t,r){if("object"!=three_module_typeof(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var i=e.call(t,r||"default");if("object"!=three_module_typeof(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.");}return("string"===r?String:Number)(t);}/**
107128
106828
  * @license
@@ -108402,6 +108102,306 @@ warnOnce('WebGLRenderer: copyTextureToTexture3D function has been deprecated. Us
108402
108102
  * @type {SRGBColorSpace|LinearSRGBColorSpace}
108403
108103
  * @default SRGBColorSpace
108404
108104
  */},{key:"outputColorSpace",get:function get(){return this._outputColorSpace;},set:function set(colorSpace){this._outputColorSpace=colorSpace;var gl=this.getContext();gl.drawingBufferColorSpace=ColorManagement._getDrawingBufferColorSpace(colorSpace);gl.unpackColorSpace=ColorManagement._getUnpackColorSpace();}}]);}();
108105
+ // CONCATENATED MODULE: ./node_modules/three/examples/jsm/loaders/FontLoader.js
108106
+ function FontLoader_typeof(o) { "@babel/helpers - typeof"; return FontLoader_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, FontLoader_typeof(o); }
108107
+ function FontLoader_toConsumableArray(r) { return FontLoader_arrayWithoutHoles(r) || FontLoader_iterableToArray(r) || FontLoader_unsupportedIterableToArray(r) || FontLoader_nonIterableSpread(); }
108108
+ function FontLoader_nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
108109
+ function FontLoader_unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return FontLoader_arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? FontLoader_arrayLikeToArray(r, a) : void 0; } }
108110
+ function FontLoader_iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
108111
+ function FontLoader_arrayWithoutHoles(r) { if (Array.isArray(r)) return FontLoader_arrayLikeToArray(r); }
108112
+ function FontLoader_arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
108113
+ function FontLoader_classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
108114
+ function FontLoader_defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, FontLoader_toPropertyKey(o.key), o); } }
108115
+ function FontLoader_createClass(e, r, t) { return r && FontLoader_defineProperties(e.prototype, r), t && FontLoader_defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
108116
+ function FontLoader_toPropertyKey(t) { var i = FontLoader_toPrimitive(t, "string"); return "symbol" == FontLoader_typeof(i) ? i : i + ""; }
108117
+ function FontLoader_toPrimitive(t, r) { if ("object" != FontLoader_typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != FontLoader_typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
108118
+ function FontLoader_callSuper(t, o, e) { return o = FontLoader_getPrototypeOf(o), FontLoader_possibleConstructorReturn(t, FontLoader_isNativeReflectConstruct() ? Reflect.construct(o, e || [], FontLoader_getPrototypeOf(t).constructor) : o.apply(t, e)); }
108119
+ function FontLoader_possibleConstructorReturn(t, e) { if (e && ("object" == FontLoader_typeof(e) || "function" == typeof e)) return e; if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined"); return FontLoader_assertThisInitialized(t); }
108120
+ function FontLoader_assertThisInitialized(e) { if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return e; }
108121
+ function FontLoader_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (FontLoader_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
108122
+ function FontLoader_getPrototypeOf(t) { return FontLoader_getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) { return t.__proto__ || Object.getPrototypeOf(t); }, FontLoader_getPrototypeOf(t); }
108123
+ function FontLoader_inherits(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), Object.defineProperty(t, "prototype", { writable: !1 }), e && FontLoader_setPrototypeOf(t, e); }
108124
+ function FontLoader_setPrototypeOf(t, e) { return FontLoader_setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, FontLoader_setPrototypeOf(t, e); }
108125
+
108126
+
108127
+ /**
108128
+ * A loader for loading fonts.
108129
+ *
108130
+ * You can convert fonts online using [facetype.js]{@link https://gero3.github.io/facetype.js/}.
108131
+ *
108132
+ * ```js
108133
+ * const loader = new FontLoader();
108134
+ * const font = await loader.loadAsync( 'fonts/helvetiker_regular.typeface.json' );
108135
+ * ```
108136
+ *
108137
+ * @augments Loader
108138
+ * @three_import import { FontLoader } from 'three/addons/loaders/FontLoader.js';
108139
+ */
108140
+ var FontLoader_FontLoader = /*#__PURE__*/function (_Loader) {
108141
+ /**
108142
+ * Constructs a new font loader.
108143
+ *
108144
+ * @param {LoadingManager} [manager] - The loading manager.
108145
+ */
108146
+ function FontLoader(manager) {
108147
+ FontLoader_classCallCheck(this, FontLoader);
108148
+ return FontLoader_callSuper(this, FontLoader, [manager]);
108149
+ }
108150
+
108151
+ /**
108152
+ * Starts loading from the given URL and passes the loaded font
108153
+ * to the `onLoad()` callback.
108154
+ *
108155
+ * @param {string} url - The path/URL of the file to be loaded. This can also be a data URI.
108156
+ * @param {function(Font)} onLoad - Executed when the loading process has been finished.
108157
+ * @param {onProgressCallback} onProgress - Executed while the loading is in progress.
108158
+ * @param {onErrorCallback} onError - Executed when errors occur.
108159
+ */
108160
+ FontLoader_inherits(FontLoader, _Loader);
108161
+ return FontLoader_createClass(FontLoader, [{
108162
+ key: "load",
108163
+ value: function load(url, onLoad, onProgress, onError) {
108164
+ var scope = this;
108165
+ var loader = new FileLoader(this.manager);
108166
+ loader.setPath(this.path);
108167
+ loader.setRequestHeader(this.requestHeader);
108168
+ loader.setWithCredentials(this.withCredentials);
108169
+ loader.load(url, function (text) {
108170
+ var font = scope.parse(JSON.parse(text));
108171
+ if (onLoad) onLoad(font);
108172
+ }, onProgress, onError);
108173
+ }
108174
+
108175
+ /**
108176
+ * Parses the given font data and returns the resulting font.
108177
+ *
108178
+ * @param {Object} json - The raw font data as a JSON object.
108179
+ * @return {Font} The font.
108180
+ */
108181
+ }, {
108182
+ key: "parse",
108183
+ value: function parse(json) {
108184
+ return new Font(json);
108185
+ }
108186
+ }]);
108187
+ }(Loader);
108188
+ /**
108189
+ * Class representing a font.
108190
+ */
108191
+ var Font = /*#__PURE__*/function () {
108192
+ /**
108193
+ * Constructs a new font.
108194
+ *
108195
+ * @param {Object} data - The font data as JSON.
108196
+ */
108197
+ function Font(data) {
108198
+ FontLoader_classCallCheck(this, Font);
108199
+ /**
108200
+ * This flag can be used for type testing.
108201
+ *
108202
+ * @type {boolean}
108203
+ * @readonly
108204
+ * @default true
108205
+ */
108206
+ this.isFont = true;
108207
+ this.type = 'Font';
108208
+
108209
+ /**
108210
+ * The font data as JSON.
108211
+ *
108212
+ * @type {Object}
108213
+ */
108214
+ this.data = data;
108215
+ }
108216
+
108217
+ /**
108218
+ * Generates geometry shapes from the given text and size. The result of this method
108219
+ * should be used with {@link ShapeGeometry} to generate the actual geometry data.
108220
+ *
108221
+ * @param {string} text - The text.
108222
+ * @param {number} [size=100] - The text size.
108223
+ * @return {Array<Shape>} An array of shapes representing the text.
108224
+ */
108225
+ return FontLoader_createClass(Font, [{
108226
+ key: "generateShapes",
108227
+ value: function generateShapes(text) {
108228
+ var size = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 100;
108229
+ var shapes = [];
108230
+ var paths = createPaths(text, size, this.data);
108231
+ for (var p = 0, pl = paths.length; p < pl; p++) {
108232
+ shapes.push.apply(shapes, FontLoader_toConsumableArray(paths[p].toShapes()));
108233
+ }
108234
+ return shapes;
108235
+ }
108236
+ }]);
108237
+ }();
108238
+ function createPaths(text, size, data) {
108239
+ var chars = Array.from(text);
108240
+ var scale = size / data.resolution;
108241
+ var line_height = (data.boundingBox.yMax - data.boundingBox.yMin + data.underlineThickness) * scale;
108242
+ var paths = [];
108243
+ var offsetX = 0,
108244
+ offsetY = 0;
108245
+ for (var i = 0; i < chars.length; i++) {
108246
+ var char = chars[i];
108247
+ if (char === '\n') {
108248
+ offsetX = 0;
108249
+ offsetY -= line_height;
108250
+ } else {
108251
+ var ret = createPath(char, scale, offsetX, offsetY, data);
108252
+ offsetX += ret.offsetX;
108253
+ paths.push(ret.path);
108254
+ }
108255
+ }
108256
+ return paths;
108257
+ }
108258
+ function createPath(char, scale, offsetX, offsetY, data) {
108259
+ var glyph = data.glyphs[char] || data.glyphs['?'];
108260
+ if (!glyph) {
108261
+ console.error('THREE.Font: character "' + char + '" does not exists in font family ' + data.familyName + '.');
108262
+ return;
108263
+ }
108264
+ var path = new ShapePath();
108265
+ var x, y, cpx, cpy, cpx1, cpy1, cpx2, cpy2;
108266
+ if (glyph.o) {
108267
+ var outline = glyph._cachedOutline || (glyph._cachedOutline = glyph.o.split(' '));
108268
+ for (var i = 0, l = outline.length; i < l;) {
108269
+ var action = outline[i++];
108270
+ switch (action) {
108271
+ case 'm':
108272
+ // moveTo
108273
+
108274
+ x = outline[i++] * scale + offsetX;
108275
+ y = outline[i++] * scale + offsetY;
108276
+ path.moveTo(x, y);
108277
+ break;
108278
+ case 'l':
108279
+ // lineTo
108280
+
108281
+ x = outline[i++] * scale + offsetX;
108282
+ y = outline[i++] * scale + offsetY;
108283
+ path.lineTo(x, y);
108284
+ break;
108285
+ case 'q':
108286
+ // quadraticCurveTo
108287
+
108288
+ cpx = outline[i++] * scale + offsetX;
108289
+ cpy = outline[i++] * scale + offsetY;
108290
+ cpx1 = outline[i++] * scale + offsetX;
108291
+ cpy1 = outline[i++] * scale + offsetY;
108292
+ path.quadraticCurveTo(cpx1, cpy1, cpx, cpy);
108293
+ break;
108294
+ case 'b':
108295
+ // bezierCurveTo
108296
+
108297
+ cpx = outline[i++] * scale + offsetX;
108298
+ cpy = outline[i++] * scale + offsetY;
108299
+ cpx1 = outline[i++] * scale + offsetX;
108300
+ cpy1 = outline[i++] * scale + offsetY;
108301
+ cpx2 = outline[i++] * scale + offsetX;
108302
+ cpy2 = outline[i++] * scale + offsetY;
108303
+ path.bezierCurveTo(cpx1, cpy1, cpx2, cpy2, cpx, cpy);
108304
+ break;
108305
+ }
108306
+ }
108307
+ }
108308
+ return {
108309
+ offsetX: glyph.ha * scale,
108310
+ path: path
108311
+ };
108312
+ }
108313
+
108314
+ // CONCATENATED MODULE: ./node_modules/three/examples/jsm/geometries/TextGeometry.js
108315
+ function TextGeometry_typeof(o) { "@babel/helpers - typeof"; return TextGeometry_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, TextGeometry_typeof(o); }
108316
+ function TextGeometry_defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, TextGeometry_toPropertyKey(o.key), o); } }
108317
+ function TextGeometry_createClass(e, r, t) { return r && TextGeometry_defineProperties(e.prototype, r), t && TextGeometry_defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
108318
+ function TextGeometry_toPropertyKey(t) { var i = TextGeometry_toPrimitive(t, "string"); return "symbol" == TextGeometry_typeof(i) ? i : i + ""; }
108319
+ function TextGeometry_toPrimitive(t, r) { if ("object" != TextGeometry_typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != TextGeometry_typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
108320
+ function TextGeometry_classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
108321
+ function TextGeometry_callSuper(t, o, e) { return o = TextGeometry_getPrototypeOf(o), TextGeometry_possibleConstructorReturn(t, TextGeometry_isNativeReflectConstruct() ? Reflect.construct(o, e || [], TextGeometry_getPrototypeOf(t).constructor) : o.apply(t, e)); }
108322
+ function TextGeometry_possibleConstructorReturn(t, e) { if (e && ("object" == TextGeometry_typeof(e) || "function" == typeof e)) return e; if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined"); return TextGeometry_assertThisInitialized(t); }
108323
+ function TextGeometry_assertThisInitialized(e) { if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return e; }
108324
+ function TextGeometry_isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (TextGeometry_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
108325
+ function TextGeometry_getPrototypeOf(t) { return TextGeometry_getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) { return t.__proto__ || Object.getPrototypeOf(t); }, TextGeometry_getPrototypeOf(t); }
108326
+ function TextGeometry_inherits(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), Object.defineProperty(t, "prototype", { writable: !1 }), e && TextGeometry_setPrototypeOf(t, e); }
108327
+ function TextGeometry_setPrototypeOf(t, e) { return TextGeometry_setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, TextGeometry_setPrototypeOf(t, e); }
108328
+
108329
+
108330
+ /**
108331
+ * A class for generating text as a single geometry. It is constructed by providing a string of text, and a set of
108332
+ * parameters consisting of a loaded font and extrude settings.
108333
+ *
108334
+ * See the {@link FontLoader} page for additional details.
108335
+ *
108336
+ * `TextGeometry` uses [typeface.json]{@link http://gero3.github.io/facetype.js/} generated fonts.
108337
+ * Some existing fonts can be found located in `/examples/fonts`.
108338
+ *
108339
+ * ```js
108340
+ * const loader = new FontLoader();
108341
+ * const font = await loader.loadAsync( 'fonts/helvetiker_regular.typeface.json' );
108342
+ * const geometry = new TextGeometry( 'Hello three.js!', {
108343
+ * font: font,
108344
+ * size: 80,
108345
+ * depth: 5,
108346
+ * curveSegments: 12
108347
+ * } );
108348
+ * ```
108349
+ *
108350
+ * @augments ExtrudeGeometry
108351
+ * @three_import import { TextGeometry } from 'three/addons/geometries/TextGeometry.js';
108352
+ */
108353
+ var TextGeometry = /*#__PURE__*/function (_ExtrudeGeometry) {
108354
+ /**
108355
+ * Constructs a new text geometry.
108356
+ *
108357
+ * @param {string} text - The text that should be transformed into a geometry.
108358
+ * @param {TextGeometry~Options} [parameters] - The text settings.
108359
+ */
108360
+ function TextGeometry(text) {
108361
+ var _this;
108362
+ var parameters = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
108363
+ TextGeometry_classCallCheck(this, TextGeometry);
108364
+ var font = parameters.font;
108365
+ if (font === undefined) {
108366
+ _this = TextGeometry_callSuper(this, TextGeometry); // generate default extrude geometry
108367
+ } else {
108368
+ var shapes = font.generateShapes(text, parameters.size);
108369
+
108370
+ // defaults
108371
+
108372
+ if (parameters.depth === undefined) parameters.depth = 50;
108373
+ if (parameters.bevelThickness === undefined) parameters.bevelThickness = 10;
108374
+ if (parameters.bevelSize === undefined) parameters.bevelSize = 8;
108375
+ if (parameters.bevelEnabled === undefined) parameters.bevelEnabled = false;
108376
+ _this = TextGeometry_callSuper(this, TextGeometry, [shapes, parameters]);
108377
+ }
108378
+ _this.type = 'TextGeometry';
108379
+ return TextGeometry_assertThisInitialized(_this);
108380
+ }
108381
+ TextGeometry_inherits(TextGeometry, _ExtrudeGeometry);
108382
+ return TextGeometry_createClass(TextGeometry);
108383
+ }(ExtrudeGeometry);
108384
+ /**
108385
+ * Represents the `options` type of the geometry's constructor.
108386
+ *
108387
+ * @typedef {Object} TextGeometry~Options
108388
+ * @property {Font} [font] - The font.
108389
+ * @property {number} [size=100] - The text size.
108390
+ * @property {number} [depth=50] - Depth to extrude the shape.
108391
+ * @property {number} [curveSegments=12] - Number of points on the curves.
108392
+ * @property {number} [steps=1] - Number of points used for subdividing segments along the depth of the extruded spline.
108393
+ * @property {boolean} [bevelEnabled=false] - Whether to beveling to the shape or not.
108394
+ * @property {number} [bevelThickness=10] - How deep into the original shape the bevel goes.
108395
+ * @property {number} [bevelSize=8] - Distance from the shape outline that the bevel extends.
108396
+ * @property {number} [bevelOffset=0] - Distance from the shape outline that the bevel starts.
108397
+ * @property {number} [bevelSegments=3] - Number of bevel layers.
108398
+ * @property {?Curve} [extrudePath=null] - A 3D spline path along which the shape should be extruded. Bevels not supported for path extrusion.
108399
+ * @property {Object} [UVGenerator] - An object that provides UV generator functions for custom UV generation.
108400
+ **/
108401
+
108402
+ // EXTERNAL MODULE: ./node_modules/three/examples/fonts/helvetiker_regular.typeface.json
108403
+ var helvetiker_regular_typeface = __webpack_require__("7e1b");
108404
+
108405
108405
  // CONCATENATED MODULE: ./node_modules/meshline/dist/index.js
108406
108406
  function dist_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
108407
108407
  function dist_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? dist_ownKeys(Object(t), !0).forEach(function (r) { dist_defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : dist_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
@@ -109115,6 +109115,10 @@ function requestInstancedMapping(instances, drawObjs) {
109115
109115
  });
109116
109116
  });
109117
109117
  }
109118
+ function getInstanceNormalSign(matrix) {
109119
+ if (!matrix || typeof matrix.determinant !== 'function') return 1;
109120
+ return matrix.determinant() < 0 ? -1 : 1;
109121
+ }
109118
109122
 
109119
109123
  /**
109120
109124
  * 重置处理状态,用于新的批量加载会话
@@ -109472,6 +109476,10 @@ function setInstanceMatricesAndColors(model, drawObj, mesh, meshName, customColo
109472
109476
  }
109473
109477
  m4.multiplyMatrices(meshMatrix, geomMatrix);
109474
109478
  model.setMatrixAt(index, m4);
109479
+ var _normalSignAttr = model.geometry && model.geometry.getAttribute('instanceNormalSign');
109480
+ if (_normalSignAttr && _normalSignAttr.array && index < _normalSignAttr.array.length) {
109481
+ _normalSignAttr.array[index] = getInstanceNormalSign(m4);
109482
+ }
109475
109483
  var copyMatrix = new Matrix4().copy(m4);
109476
109484
  model.userData.copyMatrix = copyMatrix;
109477
109485
  var temp = model.userData.instancesMap.get(item.instanceId);
@@ -109489,6 +109497,10 @@ function setInstanceMatricesAndColors(model, drawObj, mesh, meshName, customColo
109489
109497
  if (model.instanceColor) {
109490
109498
  model.instanceColor.needsUpdate = true;
109491
109499
  }
109500
+ var normalSignAttr = model.geometry && model.geometry.getAttribute('instanceNormalSign');
109501
+ if (normalSignAttr) {
109502
+ normalSignAttr.needsUpdate = true;
109503
+ }
109492
109504
  if (Array.isArray(instances)) {
109493
109505
  var capacity = model.instanceMatrix && typeof model.instanceMatrix.count === 'number' ? model.instanceMatrix.count : model.count;
109494
109506
  model.count = Math.min(instances.length, capacity);
@@ -109546,6 +109558,11 @@ function appendInstanceToInstancedMesh(model, drawObj, mesh, instance, customCol
109546
109558
  m4.multiplyMatrices(meshMatrix, geomMatrix);
109547
109559
  model.setMatrixAt(currentCount, m4);
109548
109560
  if (model.instanceMatrix) model.instanceMatrix.needsUpdate = true;
109561
+ var normalSignAttr = model.geometry && model.geometry.getAttribute('instanceNormalSign');
109562
+ if (normalSignAttr && normalSignAttr.array && currentCount < normalSignAttr.array.length) {
109563
+ normalSignAttr.array[currentCount] = getInstanceNormalSign(m4);
109564
+ normalSignAttr.needsUpdate = true;
109565
+ }
109549
109566
  var copyMatrix = new Matrix4().copy(m4);
109550
109567
  model.userData.copyMatrix = copyMatrix;
109551
109568
  var instanceProps = {
@@ -109900,14 +109917,21 @@ function draw3Dmodel(geom, instanceName, instanceCount, nColor, nOpacity) {
109900
109917
  }));
109901
109918
  var activeInstanceCount = Math.max(0, Math.min(instanceCount, typeof options.activeInstanceCount === 'number' ? options.activeInstanceCount : instanceCount));
109902
109919
  var opacities = new Float32Array(instanceCount);
109920
+ var instanceNormalSigns = new Float32Array(instanceCount);
109903
109921
  for (var i = 0; i < instanceCount; i++) {
109904
109922
  opacities[i] = opacity;
109923
+ instanceNormalSigns[i] = 1;
109905
109924
  }
109906
109925
  geometry.setAttribute('opacity', new InstancedBufferAttribute(opacities, 1));
109926
+ geometry.setAttribute('instanceNormalSign', new InstancedBufferAttribute(instanceNormalSigns, 1));
109907
109927
  if (!customMaterial) {
109908
109928
  material.onBeforeCompile = function (shader) {
109909
- shader.vertexShader = "\n in float opacity; // \u5B9E\u4F8B\u900F\u660E\u5EA6\u5C5E\u6027\n out float vAlpha;\n ".concat(shader.vertexShader, "\n ").replace('#include <begin_vertex>', "\n #include <begin_vertex>\n vAlpha = opacity; // \u4F20\u9012\u900F\u660E\u5EA6\u5230\u7247\u6BB5\u7740\u8272\u5668\n ");
109910
- shader.fragmentShader = "\n in float vAlpha;\n ".concat(shader.fragmentShader, "\n ").replace('#include <alphatest_fragment>', "\n #include <alphatest_fragment>\n diffuseColor.a *= vAlpha; // \u5E94\u7528\u5B9E\u4F8B\u900F\u660E\u5EA6\n ");
109929
+ var normalFragmentBegin = ShaderChunk.normal_fragment_begin.replace('float faceDirection = gl_FrontFacing ? 1.0 : - 1.0;', 'float faceDirection = (gl_FrontFacing ? 1.0 : - 1.0) * vInstanceNormalSign;');
109930
+ shader.vertexShader = "\n attribute float opacity; // \u5B9E\u4F8B\u900F\u660E\u5EA6\u5C5E\u6027\n attribute float instanceNormalSign; // \u955C\u50CF\u77E9\u9635\u6CD5\u7EBF\u4FEE\u6B63\n varying float vAlpha;\n varying float vInstanceNormalSign;\n ".concat(shader.vertexShader, "\n ").replace('#include <begin_vertex>', "\n #include <begin_vertex>\n vAlpha = opacity; // \u4F20\u9012\u900F\u660E\u5EA6\u5230\u7247\u6BB5\u7740\u8272\u5668\n vInstanceNormalSign = instanceNormalSign;\n ");
109931
+ shader.fragmentShader = "\n varying float vAlpha;\n varying float vInstanceNormalSign;\n ".concat(shader.fragmentShader, "\n ").replace('#include <normal_fragment_begin>', normalFragmentBegin).replace('#include <alphatest_fragment>', "\n #include <alphatest_fragment>\n diffuseColor.a *= vAlpha; // \u5E94\u7528\u5B9E\u4F8B\u900F\u660E\u5EA6\n ");
109932
+ };
109933
+ material.customProgramCacheKey = function () {
109934
+ return 'instance-opacity-normal-sign-v2';
109911
109935
  };
109912
109936
  }
109913
109937
 
@@ -115204,7 +115228,7 @@ var isDebug = false || false === true;
115204
115228
  if (this.noObserver && this.noObserver.sceneBoxes) {
115205
115229
  this.noObserver.sceneBoxes.clear();
115206
115230
  }
115207
- sceneBoundingBox = new this.THREE.Box3();
115231
+ this.updateGlobalSceneBoundingBox();
115208
115232
  return;
115209
115233
  }
115210
115234
  if (isAdd && boundingBox) {
@@ -115219,16 +115243,56 @@ var isDebug = false || false === true;
115219
115243
  } else {
115220
115244
  this.noObserver.sceneBoxes.delete(documentId);
115221
115245
  }
115222
- var boxes = Array.from(this.noObserver.sceneBoxes.values());
115246
+ this.updateGlobalSceneBoundingBox();
115247
+ },
115248
+ updateGlobalSceneBoundingBox: function updateGlobalSceneBoundingBox() {
115249
+ var state = this.noObserver || {};
115250
+ var occScene = state.occlusionState && state.occlusionState._occScene;
115251
+
115252
+ // 优先使用由 boxIndex 构建出的离屏全场景,作为整体居中与 home 的统一范围
115253
+ if (occScene && occScene.children && occScene.children.length > 0) {
115254
+ var occBox = new this.THREE.Box3().setFromObject(occScene);
115255
+ if (!occBox.isEmpty()) {
115256
+ sceneBoundingBox = occBox;
115257
+ return sceneBoundingBox;
115258
+ }
115259
+ }
115260
+
115261
+ // 离屏场景尚未完成时,回退到 boxIndex 联合包围盒,确保每次 add boxIndex 都能更新全场景范围
115262
+ if (this._boxIndex && this._boxIndex.size > 0) {
115263
+ var minX = Infinity,
115264
+ minY = Infinity,
115265
+ minZ = Infinity;
115266
+ var maxX = -Infinity,
115267
+ maxY = -Infinity,
115268
+ maxZ = -Infinity;
115269
+ this._boxIndex.forEach(function (box) {
115270
+ if (!box || !box.isBox3 || box.isEmpty()) return;
115271
+ var mn = box.min;
115272
+ var mx = box.max;
115273
+ if (mn.x < minX) minX = mn.x;
115274
+ if (mn.y < minY) minY = mn.y;
115275
+ if (mn.z < minZ) minZ = mn.z;
115276
+ if (mx.x > maxX) maxX = mx.x;
115277
+ if (mx.y > maxY) maxY = mx.y;
115278
+ if (mx.z > maxZ) maxZ = mx.z;
115279
+ });
115280
+ if (Number.isFinite(minX) && Number.isFinite(minY) && Number.isFinite(minZ) && Number.isFinite(maxX) && Number.isFinite(maxY) && Number.isFinite(maxZ)) {
115281
+ sceneBoundingBox = new this.THREE.Box3(new this.THREE.Vector3(minX, minY, minZ), new this.THREE.Vector3(maxX, maxY, maxZ));
115282
+ return sceneBoundingBox;
115283
+ }
115284
+ }
115285
+ var boxes = Array.from(state.sceneBoxes && state.sceneBoxes.values() || []);
115223
115286
  if (boxes.length > 0) {
115224
115287
  var firstBox = boxes[0].clone();
115225
115288
  for (var i = 1; i < boxes.length; i++) {
115226
115289
  firstBox.union(boxes[i]);
115227
115290
  }
115228
115291
  sceneBoundingBox = firstBox;
115229
- } else {
115230
- sceneBoundingBox = new this.THREE.Box3();
115292
+ return sceneBoundingBox;
115231
115293
  }
115294
+ sceneBoundingBox = new this.THREE.Box3();
115295
+ return sceneBoundingBox;
115232
115296
  },
115233
115297
  setBoxIndex: function setBoxIndex(boxJson, documentId) {
115234
115298
  var _this3 = this;
@@ -115345,6 +115409,7 @@ var isDebug = false || false === true;
115345
115409
  var _this4 = this;
115346
115410
  if (!this._boxIndex || this._boxIndex.size === 0) {
115347
115411
  this._octree = null;
115412
+ this.updateGlobalSceneBoundingBox();
115348
115413
  return;
115349
115414
  }
115350
115415
  var minX = Infinity,
@@ -115365,6 +115430,7 @@ var isDebug = false || false === true;
115365
115430
  if (mx.z > maxZ) maxZ = mx.z;
115366
115431
  });
115367
115432
  var rootBox = new this.THREE.Box3(new this.THREE.Vector3(minX, minY, minZ), new this.THREE.Vector3(maxX, maxY, maxZ));
115433
+ sceneBoundingBox = rootBox.clone();
115368
115434
  this._octreeMaxItems = 64;
115369
115435
  this._octreeMaxDepth = 12;
115370
115436
  this._octree = {
@@ -115376,6 +115442,7 @@ var isDebug = false || false === true;
115376
115442
  this._boxIndex.forEach(function (box, id) {
115377
115443
  _this4._octreeInsert(_this4._octree, String(id), box);
115378
115444
  });
115445
+ this.updateGlobalSceneBoundingBox();
115379
115446
  },
115380
115447
  _octreeSubdivide: function _octreeSubdivide(node) {
115381
115448
  var min = node.box.min;
@@ -116380,7 +116447,7 @@ var isDebug = false || false === true;
116380
116447
  com_graphicsvue_type_script_lang_js_renderer.clear(true, true, false);
116381
116448
  com_graphicsvue_type_script_lang_js_camera.updateMatrixWorld(true);
116382
116449
  com_graphicsvue_type_script_lang_js_renderer.render(state._occScene, com_graphicsvue_type_script_lang_js_camera);
116383
- sceneBoundingBox = new _this6.THREE.Box3().setFromObject(state._occScene);
116450
+ _this6.updateGlobalSceneBoundingBox();
116384
116451
  // const t1 = performance.now();
116385
116452
  // 从响应式对象读取 previewEnabled
116386
116453
  _this6.$emit('updateBoundingBox');
@@ -119846,11 +119913,11 @@ var isDebug = false || false === true;
119846
119913
  });
119847
119914
  // CONCATENATED MODULE: ./packages/components/com-graphics/index.vue?vue&type=script&lang=js
119848
119915
  /* harmony default export */ var components_com_graphicsvue_type_script_lang_js = (com_graphicsvue_type_script_lang_js);
119849
- // EXTERNAL MODULE: ./packages/components/com-graphics/index.vue?vue&type=style&index=0&id=e9e0ba24&prod&lang=scss&scoped=true
119850
- var com_graphicsvue_type_style_index_0_id_e9e0ba24_prod_lang_scss_scoped_true = __webpack_require__("49c8");
119916
+ // EXTERNAL MODULE: ./packages/components/com-graphics/index.vue?vue&type=style&index=0&id=4b02d5a5&prod&lang=scss&scoped=true
119917
+ var com_graphicsvue_type_style_index_0_id_4b02d5a5_prod_lang_scss_scoped_true = __webpack_require__("a4b9");
119851
119918
 
119852
- // EXTERNAL MODULE: ./packages/components/com-graphics/index.vue?vue&type=style&index=1&id=e9e0ba24&prod&lang=css
119853
- var com_graphicsvue_type_style_index_1_id_e9e0ba24_prod_lang_css = __webpack_require__("f097");
119919
+ // EXTERNAL MODULE: ./packages/components/com-graphics/index.vue?vue&type=style&index=1&id=4b02d5a5&prod&lang=css
119920
+ var com_graphicsvue_type_style_index_1_id_4b02d5a5_prod_lang_css = __webpack_require__("bd66");
119854
119921
 
119855
119922
  // CONCATENATED MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
119856
119923
  /* globals __VUE_SSR_CONTEXT__ */
@@ -119962,17 +120029,17 @@ function normalizeComponent(
119962
120029
 
119963
120030
  var component = normalizeComponent(
119964
120031
  components_com_graphicsvue_type_script_lang_js,
119965
- com_graphicsvue_type_template_id_e9e0ba24_scoped_true_render,
120032
+ com_graphicsvue_type_template_id_4b02d5a5_scoped_true_render,
119966
120033
  staticRenderFns,
119967
120034
  false,
119968
120035
  null,
119969
- "e9e0ba24",
120036
+ "4b02d5a5",
119970
120037
  null
119971
120038
 
119972
120039
  )
119973
120040
 
119974
120041
  /* harmony default export */ var com_graphics = (component.exports);
119975
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"6e4c5ba0-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=58f9d282&scoped=true
120042
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"2fafb909-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=58f9d282&scoped=true
119976
120043
  var com_flcanvasvue_type_template_id_58f9d282_scoped_true_render = function render() {
119977
120044
  var _vm = this,
119978
120045
  _c = _vm._self._c;
@@ -123759,7 +123826,7 @@ var com_flcanvas_component = normalizeComponent(
123759
123826
  )
123760
123827
 
123761
123828
  /* harmony default export */ var com_flcanvas = (com_flcanvas_component.exports);
123762
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"6e4c5ba0-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./packages/components/com-graphics/per-control.vue?vue&type=template&id=f547d5c6&scoped=true
123829
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"2fafb909-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./packages/components/com-graphics/per-control.vue?vue&type=template&id=f547d5c6&scoped=true
123763
123830
  var per_controlvue_type_template_id_f547d5c6_scoped_true_render = function render() {
123764
123831
  var _vm = this,
123765
123832
  _c = _vm._self._c;
@@ -123867,7 +123934,7 @@ var per_control_component = normalizeComponent(
123867
123934
  )
123868
123935
 
123869
123936
  /* harmony default export */ var per_control = (per_control_component.exports);
123870
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"6e4c5ba0-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./packages/components/com-graphics/pid.vue?vue&type=template&id=2572c0e2&scoped=true
123937
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"2fafb909-vue-loader-template"}!./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./packages/components/com-graphics/pid.vue?vue&type=template&id=2572c0e2&scoped=true
123871
123938
  var pidvue_type_template_id_2572c0e2_scoped_true_render = function render() {
123872
123939
  var _vm = this,
123873
123940
  _c = _vm._self._c;
@@ -123914,7 +123981,7 @@ var browserify_default = /*#__PURE__*/__webpack_require__.n(browserify);
123914
123981
  var html2canvas = __webpack_require__("c0e9");
123915
123982
  var html2canvas_default = /*#__PURE__*/__webpack_require__.n(html2canvas);
123916
123983
 
123917
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"6e4c5ba0-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/component/ann-tool.vue?vue&type=template&id=4b17bce0&scoped=true
123984
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"2fafb909-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/component/ann-tool.vue?vue&type=template&id=4b17bce0&scoped=true
123918
123985
  var ann_toolvue_type_template_id_4b17bce0_scoped_true_render = function render() {
123919
123986
  var _vm = this,
123920
123987
  _c = _vm._self._c;
@@ -124885,7 +124952,7 @@ var pid_component = normalizeComponent(
124885
124952
  )
124886
124953
 
124887
124954
  /* harmony default export */ var pid = (pid_component.exports);
124888
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"6e4c5ba0-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-tiles/index.vue?vue&type=template&id=717610b8&scoped=true
124955
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"2fafb909-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-tiles/index.vue?vue&type=template&id=717610b8&scoped=true
124889
124956
  var com_tilesvue_type_template_id_717610b8_scoped_true_render = function render() {
124890
124957
  var _vm = this,
124891
124958
  _c = _vm._self._c;