@anov/3d 0.0.319 → 0.0.321

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.
Files changed (78) hide show
  1. package/dist/__mocks__/ability-mock.js +124 -0
  2. package/dist/__mocks__/ability-mock.js.map +1 -0
  3. package/dist/__mocks__/geo-3d-mock.js +10 -0
  4. package/dist/__mocks__/geo-3d-mock.js.map +1 -0
  5. package/dist/anov3d.js +67 -11
  6. package/dist/anov3d.js.map +1 -1
  7. package/dist/applicationApi.js +59 -22
  8. package/dist/applicationApi.js.map +1 -1
  9. package/dist/hooksManager.js +22 -17
  10. package/dist/hooksManager.js.map +1 -1
  11. package/dist/index.js +3 -2
  12. package/dist/index.js.map +1 -1
  13. package/dist/module/animation/motion/index.js +2 -4
  14. package/dist/module/animation/motion/index.js.map +1 -1
  15. package/dist/module/camera/index.js +1 -1
  16. package/dist/module/camera/index.js.map +1 -1
  17. package/dist/module/entity/area/index.js +3 -3
  18. package/dist/module/entity/area/index.js.map +1 -1
  19. package/dist/module/entity/baseEntity.js +13 -4
  20. package/dist/module/entity/baseEntity.js.map +1 -1
  21. package/dist/module/entity/batch/index.js +12 -10
  22. package/dist/module/entity/batch/index.js.map +1 -1
  23. package/dist/module/entity/flyline/index.js +3 -3
  24. package/dist/module/entity/flyline/index.js.map +1 -1
  25. package/dist/module/entity/group/index.js +18 -4
  26. package/dist/module/entity/group/index.js.map +1 -1
  27. package/dist/module/entity/heatmap/index.js +16 -4
  28. package/dist/module/entity/heatmap/index.js.map +1 -1
  29. package/dist/module/entity/index.js +47 -44
  30. package/dist/module/entity/index.js.map +1 -1
  31. package/dist/module/entity/infoPanel/index.js +2 -2
  32. package/dist/module/entity/infoPanel/index.js.map +1 -1
  33. package/dist/module/entity/light/pointLight/index.js +2 -2
  34. package/dist/module/entity/light/pointLight/index.js.map +1 -1
  35. package/dist/module/entity/mark/index.js +11 -14
  36. package/dist/module/entity/mark/index.js.map +1 -1
  37. package/dist/module/entity/model/index.js +29 -12
  38. package/dist/module/entity/model/index.js.map +1 -1
  39. package/dist/module/entity/model/load/loadFbx.js +2 -2
  40. package/dist/module/entity/model/load/loadFbx.js.map +1 -1
  41. package/dist/module/entity/model/load/loadGlb.js +7 -7
  42. package/dist/module/entity/model/load/loadGlb.js.map +1 -1
  43. package/dist/module/entity/poi/index.js +3 -3
  44. package/dist/module/entity/poi/index.js.map +1 -1
  45. package/dist/module/entity/shape/index.js +16 -14
  46. package/dist/module/entity/shape/index.js.map +1 -1
  47. package/dist/module/entity/spline/index.js +4 -4
  48. package/dist/module/entity/spline/index.js.map +1 -1
  49. package/dist/module/entity/strategy.js.map +1 -1
  50. package/dist/module/entity/traffic/realismTraffic/index.js +17 -5
  51. package/dist/module/entity/traffic/realismTraffic/index.js.map +1 -1
  52. package/dist/module/entity/traffic/streamerTraffic/index.js +16 -4
  53. package/dist/module/entity/traffic/streamerTraffic/index.js.map +1 -1
  54. package/dist/module/entity/videoPanel/index.js +3 -3
  55. package/dist/module/entity/videoPanel/index.js.map +1 -1
  56. package/dist/module/environment/index.js +3 -4
  57. package/dist/module/environment/index.js.map +1 -1
  58. package/dist/module/environment/season/index.js +1 -1
  59. package/dist/module/environment/season/index.js.map +1 -1
  60. package/dist/module/eventBus/index.js +1 -5
  61. package/dist/module/eventBus/index.js.map +1 -1
  62. package/dist/module/material/index.js +5 -6
  63. package/dist/module/material/index.js.map +1 -1
  64. package/dist/module/scene/fileParse.js +22 -17
  65. package/dist/module/scene/fileParse.js.map +1 -1
  66. package/dist/module/scene/index.js +10 -11
  67. package/dist/module/scene/index.js.map +1 -1
  68. package/dist/sdkEntry.js +25 -32
  69. package/dist/sdkEntry.js.map +1 -1
  70. package/dist/utils/debugTools.js +364 -0
  71. package/dist/utils/debugTools.js.map +1 -0
  72. package/dist/utils/index.js +1 -1
  73. package/dist/utils/index.js.map +1 -1
  74. package/dist/utils/messageFn.js +20 -6
  75. package/dist/utils/messageFn.js.map +1 -1
  76. package/dist/utils/messageTracer.js +369 -0
  77. package/dist/utils/messageTracer.js.map +1 -0
  78. package/package.json +4 -4
@@ -0,0 +1,124 @@
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _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; }, _typeof(o); }
2
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
3
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
4
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
5
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
6
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
7
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
8
+ // Mock for @anov/3d-ability
9
+ export var WeatherSystem = /*#__PURE__*/function () {
10
+ function WeatherSystem() {
11
+ _classCallCheck(this, WeatherSystem);
12
+ _defineProperty(this, "isObject3D", true);
13
+ }
14
+ _createClass(WeatherSystem, [{
15
+ key: "add",
16
+ value: function add() {}
17
+ }, {
18
+ key: "remove",
19
+ value: function remove() {}
20
+ }, {
21
+ key: "removeFromParent",
22
+ value: function removeFromParent() {}
23
+ }, {
24
+ key: "setTime",
25
+ value: function setTime() {}
26
+ }, {
27
+ key: "setWeather",
28
+ value: function setWeather() {}
29
+ }, {
30
+ key: "addEventListener",
31
+ value: function addEventListener() {}
32
+ }, {
33
+ key: "removeEventListener",
34
+ value: function removeEventListener() {}
35
+ }, {
36
+ key: "dispatchEvent",
37
+ value: function dispatchEvent() {}
38
+ }]);
39
+ return WeatherSystem;
40
+ }();
41
+ export var PerspectiveCameraExpand = /*#__PURE__*/function () {
42
+ function PerspectiveCameraExpand() {
43
+ _classCallCheck(this, PerspectiveCameraExpand);
44
+ _defineProperty(this, "isTransitionPeriod", false);
45
+ _defineProperty(this, "pitch", 0);
46
+ _defineProperty(this, "yaw", 0);
47
+ }
48
+ _createClass(PerspectiveCameraExpand, [{
49
+ key: "addEventListener",
50
+ value: function addEventListener() {}
51
+ }, {
52
+ key: "removeEventListener",
53
+ value: function removeEventListener() {}
54
+ }, {
55
+ key: "dispatchEvent",
56
+ value: function dispatchEvent() {}
57
+ }, {
58
+ key: "focus",
59
+ value: function focus() {
60
+ return Promise.resolve();
61
+ }
62
+ }, {
63
+ key: "setYaw",
64
+ value: function setYaw() {}
65
+ }, {
66
+ key: "setPitch",
67
+ value: function setPitch() {}
68
+ }, {
69
+ key: "cancelAllFollow",
70
+ value: function cancelAllFollow() {}
71
+ }, {
72
+ key: "follow",
73
+ value: function follow() {}
74
+ }]);
75
+ return PerspectiveCameraExpand;
76
+ }();
77
+ export var MaterialSwitchSystem = /*#__PURE__*/function () {
78
+ function MaterialSwitchSystem() {
79
+ _classCallCheck(this, MaterialSwitchSystem);
80
+ _defineProperty(this, "isObject3D", true);
81
+ _defineProperty(this, "isApi", true);
82
+ }
83
+ _createClass(MaterialSwitchSystem, [{
84
+ key: "add",
85
+ value: function add() {}
86
+ }, {
87
+ key: "remove",
88
+ value: function remove() {}
89
+ }, {
90
+ key: "removeFromParent",
91
+ value: function removeFromParent() {}
92
+ }, {
93
+ key: "addEventListener",
94
+ value: function addEventListener() {}
95
+ }, {
96
+ key: "removeEventListener",
97
+ value: function removeEventListener() {}
98
+ }, {
99
+ key: "dispatchEvent",
100
+ value: function dispatchEvent() {}
101
+ }, {
102
+ key: "addObject",
103
+ value: function addObject() {}
104
+ }, {
105
+ key: "removeObject",
106
+ value: function removeObject() {}
107
+ }]);
108
+ return MaterialSwitchSystem;
109
+ }();
110
+ export var initPostEffects = function initPostEffects() {
111
+ return {
112
+ composer: {
113
+ render: function render() {}
114
+ },
115
+ clean: function clean() {}
116
+ };
117
+ };
118
+ export var createHighSelectedTool = function createHighSelectedTool() {
119
+ return function () {};
120
+ };
121
+ export var Water = /*#__PURE__*/_createClass(function Water() {
122
+ _classCallCheck(this, Water);
123
+ });
124
+ //# sourceMappingURL=ability-mock.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["WeatherSystem","_classCallCheck","_defineProperty","_createClass","key","value","add","remove","removeFromParent","setTime","setWeather","addEventListener","removeEventListener","dispatchEvent","PerspectiveCameraExpand","focus","Promise","resolve","setYaw","setPitch","cancelAllFollow","follow","MaterialSwitchSystem","addObject","removeObject","initPostEffects","composer","render","clean","createHighSelectedTool","Water"],"sources":["../../src/__mocks__/ability-mock.ts"],"sourcesContent":["// Mock for @anov/3d-ability\nexport class WeatherSystem {\n isObject3D = true\n add() {}\n remove() {}\n removeFromParent() {}\n setTime() {}\n setWeather() {}\n addEventListener() {}\n removeEventListener() {}\n dispatchEvent() {}\n}\n\nexport class PerspectiveCameraExpand {\n isTransitionPeriod = false\n pitch = 0\n yaw = 0\n constructor() {}\n addEventListener() {}\n removeEventListener() {}\n dispatchEvent() {}\n focus() { return Promise.resolve() }\n setYaw() {}\n setPitch() {}\n cancelAllFollow() {}\n follow() {}\n}\n\nexport class MaterialSwitchSystem {\n isObject3D = true\n isApi = true\n add() {}\n remove() {}\n removeFromParent() {}\n addEventListener() {}\n removeEventListener() {}\n dispatchEvent() {}\n addObject() {}\n removeObject() {}\n}\n\nexport const initPostEffects = () => ({\n composer: { render: () => {} },\n clean: () => {},\n})\n\nexport const createHighSelectedTool = () => () => {}\n\nexport const Water = class {}\n"],"mappings":";;;;;;;AAAA;AACA,WAAaA,aAAa;EAAA,SAAAA,cAAA;IAAAC,eAAA,OAAAD,aAAA;IAAAE,eAAA,qBACX,IAAI;EAAA;EAAAC,YAAA,CAAAH,aAAA;IAAAI,GAAA;IAAAC,KAAA,EACjB,SAAAC,IAAA,EAAM,CAAC;EAAC;IAAAF,GAAA;IAAAC,KAAA,EACR,SAAAE,OAAA,EAAS,CAAC;EAAC;IAAAH,GAAA;IAAAC,KAAA,EACX,SAAAG,iBAAA,EAAmB,CAAC;EAAC;IAAAJ,GAAA;IAAAC,KAAA,EACrB,SAAAI,QAAA,EAAU,CAAC;EAAC;IAAAL,GAAA;IAAAC,KAAA,EACZ,SAAAK,WAAA,EAAa,CAAC;EAAC;IAAAN,GAAA;IAAAC,KAAA,EACf,SAAAM,iBAAA,EAAmB,CAAC;EAAC;IAAAP,GAAA;IAAAC,KAAA,EACrB,SAAAO,oBAAA,EAAsB,CAAC;EAAC;IAAAR,GAAA;IAAAC,KAAA,EACxB,SAAAQ,cAAA,EAAgB,CAAC;EAAC;EAAA,OAAAb,aAAA;AAAA;AAGpB,WAAac,uBAAuB;EAIlC,SAAAA,wBAAA,EAAc;IAAAb,eAAA,OAAAa,uBAAA;IAAAZ,eAAA,6BAHO,KAAK;IAAAA,eAAA,gBAClB,CAAC;IAAAA,eAAA,cACH,CAAC;EACQ;EAACC,YAAA,CAAAW,uBAAA;IAAAV,GAAA;IAAAC,KAAA,EAChB,SAAAM,iBAAA,EAAmB,CAAC;EAAC;IAAAP,GAAA;IAAAC,KAAA,EACrB,SAAAO,oBAAA,EAAsB,CAAC;EAAC;IAAAR,GAAA;IAAAC,KAAA,EACxB,SAAAQ,cAAA,EAAgB,CAAC;EAAC;IAAAT,GAAA;IAAAC,KAAA,EAClB,SAAAU,MAAA,EAAQ;MAAE,OAAOC,OAAO,CAACC,OAAO,CAAC,CAAC;IAAC;EAAC;IAAAb,GAAA;IAAAC,KAAA,EACpC,SAAAa,OAAA,EAAS,CAAC;EAAC;IAAAd,GAAA;IAAAC,KAAA,EACX,SAAAc,SAAA,EAAW,CAAC;EAAC;IAAAf,GAAA;IAAAC,KAAA,EACb,SAAAe,gBAAA,EAAkB,CAAC;EAAC;IAAAhB,GAAA;IAAAC,KAAA,EACpB,SAAAgB,OAAA,EAAS,CAAC;EAAC;EAAA,OAAAP,uBAAA;AAAA;AAGb,WAAaQ,oBAAoB;EAAA,SAAAA,qBAAA;IAAArB,eAAA,OAAAqB,oBAAA;IAAApB,eAAA,qBAClB,IAAI;IAAAA,eAAA,gBACT,IAAI;EAAA;EAAAC,YAAA,CAAAmB,oBAAA;IAAAlB,GAAA;IAAAC,KAAA,EACZ,SAAAC,IAAA,EAAM,CAAC;EAAC;IAAAF,GAAA;IAAAC,KAAA,EACR,SAAAE,OAAA,EAAS,CAAC;EAAC;IAAAH,GAAA;IAAAC,KAAA,EACX,SAAAG,iBAAA,EAAmB,CAAC;EAAC;IAAAJ,GAAA;IAAAC,KAAA,EACrB,SAAAM,iBAAA,EAAmB,CAAC;EAAC;IAAAP,GAAA;IAAAC,KAAA,EACrB,SAAAO,oBAAA,EAAsB,CAAC;EAAC;IAAAR,GAAA;IAAAC,KAAA,EACxB,SAAAQ,cAAA,EAAgB,CAAC;EAAC;IAAAT,GAAA;IAAAC,KAAA,EAClB,SAAAkB,UAAA,EAAY,CAAC;EAAC;IAAAnB,GAAA;IAAAC,KAAA,EACd,SAAAmB,aAAA,EAAe,CAAC;EAAC;EAAA,OAAAF,oBAAA;AAAA;AAGnB,OAAO,IAAMG,eAAe,GAAG,SAAlBA,eAAeA,CAAA;EAAA,OAAU;IACpCC,QAAQ,EAAE;MAAEC,MAAM,EAAE,SAAAA,OAAA,EAAM,CAAC;IAAE,CAAC;IAC9BC,KAAK,EAAE,SAAAA,MAAA,EAAM,CAAC;EAChB,CAAC;AAAA,CAAC;AAEF,OAAO,IAAMC,sBAAsB,GAAG,SAAzBA,sBAAsBA,CAAA;EAAA,OAAS,YAAM,CAAC,CAAC;AAAA;AAEpD,OAAO,IAAMC,KAAK,gBAAA3B,YAAA,UAAA2B,MAAA;EAAA7B,eAAA,OAAA6B,KAAA;AAAA,EAAW"}
@@ -0,0 +1,10 @@
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _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; }, _typeof(o); }
2
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
3
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
4
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
5
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
6
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
7
+ export var Map = /*#__PURE__*/_createClass(function Map() {
8
+ _classCallCheck(this, Map);
9
+ });
10
+ //# sourceMappingURL=geo-3d-mock.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Map","_createClass","_classCallCheck"],"sources":["../../src/__mocks__/geo-3d-mock.ts"],"sourcesContent":["export class Map {}\n"],"mappings":";;;;;;AAAA,WAAaA,GAAG,gBAAAC,YAAA,UAAAD,IAAA;EAAAE,eAAA,OAAAF,GAAA;AAAA"}
package/dist/anov3d.js CHANGED
@@ -10,11 +10,27 @@ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _d
10
10
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
11
11
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
12
12
  function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
13
- import { MathUtils, SceneControl, Vector3, utils } from '@anov/3d-core';
13
+ import { MathUtils, SceneControl, Vector3 } from '@anov/3d-core';
14
14
  import { initPostEffects } from '@anov/3d-ability';
15
15
  import EventBus from "./module/eventBus";
16
16
  import { object2Vector3 } from "./utils/index";
17
- import { defaultCameraParams } from "./index";
17
+ // import registerHooks from './hooksManager'
18
+
19
+ export var defaultCameraParams = {
20
+ fov: 60,
21
+ near: 0.1,
22
+ far: 1000000,
23
+ position: {
24
+ x: 0,
25
+ y: 100,
26
+ z: 200
27
+ },
28
+ lookAt: {
29
+ x: 0,
30
+ y: 0,
31
+ z: 0
32
+ }
33
+ };
18
34
  var Anov3D = /*#__PURE__*/function () {
19
35
  function Anov3D(opts) {
20
36
  var _camera$limit;
@@ -23,6 +39,7 @@ var Anov3D = /*#__PURE__*/function () {
23
39
  _defineProperty(this, "opts", void 0);
24
40
  _defineProperty(this, "sceneControl", void 0);
25
41
  _defineProperty(this, "eventBus", void 0);
42
+ _defineProperty(this, "cleanupHooks", void 0);
26
43
  this.opts = opts;
27
44
 
28
45
  // 获取默认和传入的相机参数
@@ -30,7 +47,9 @@ var Anov3D = /*#__PURE__*/function () {
30
47
  camera = _opts$camera === void 0 ? {} : _opts$camera,
31
48
  _opts$container = opts.container,
32
49
  clientWidth = _opts$container.clientWidth,
33
- clientHeight = _opts$container.clientHeight;
50
+ clientHeight = _opts$container.clientHeight,
51
+ _opts$decoderPath = opts.decoderPath,
52
+ decoderPath = _opts$decoderPath === void 0 ? '/draco/' : _opts$decoderPath;
34
53
  var defaultPosition = defaultCameraParams.position,
35
54
  defaultRest = _objectWithoutProperties(defaultCameraParams, _excluded);
36
55
 
@@ -49,7 +68,8 @@ var Anov3D = /*#__PURE__*/function () {
49
68
  });
50
69
  // const orbitControls = this.getOrbitControls(cameraParams.limit) // 控制器参数
51
70
  var orbitControls = {
52
- limit: cameraParams.limit
71
+ limit: cameraParams.limit,
72
+ target: cameraParams.target || [0, 0, 0]
53
73
  }; // 控制器参数
54
74
  var scene = new SceneControl({
55
75
  defCameraOps: _objectSpread(_objectSpread({}, cameraParams), {}, {
@@ -64,20 +84,49 @@ var Anov3D = /*#__PURE__*/function () {
64
84
  css3DRenderer: true,
65
85
  ambientLight: true
66
86
  });
87
+ scene.context.storeManagement.set('decoderPath', decoderPath);
67
88
  scene.render(opts.container);
68
- // scene.controls.target.copy(object2Vector3(defaultCameraParams.lookAt))
69
- scene.controls.target.copy(new Vector3().fromArray(cameraParams.target || [0, 0, 0]));
89
+ initPostEffects(scene.scene, scene.renderer, scene.camera, undefined, scene);
90
+ scene.context.emitter.emit('scene-completed', scene);
91
+ // scene.controls.target!.copy(new Vector3().fromArray(cameraParams.target! || [0, 0, 0]))
70
92
  // this.logInfo(scene)
71
- initPostEffects(scene.scene, scene.renderer, scene.camera);
72
- utils.emitter.emit('scene-completed', scene);
73
93
 
74
- // 不考虑 tree-shaking
75
94
  this.sceneControl = scene;
76
95
  this.eventBus = new EventBus(this);
77
- utils.storeManagement.set('event-bus', this.eventBus);
78
- utils.emitter.emit('instantiation-completed', this);
96
+ scene.context.storeManagement.set('event-bus', this.eventBus);
97
+
98
+ // this.cleanupHooks = registerHooks(scene)
79
99
  }
80
100
  _createClass(Anov3D, [{
101
+ key: "storeManagement",
102
+ get: function get() {
103
+ return this.sceneControl.context.storeManagement;
104
+ }
105
+ }, {
106
+ key: "on",
107
+ value: function on() {
108
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
109
+ args[_key] = arguments[_key];
110
+ }
111
+ this.sceneControl.context.emitter.on.apply(this.sceneControl.context.emitter, args);
112
+ }
113
+ }, {
114
+ key: "off",
115
+ value: function off() {
116
+ for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
117
+ args[_key2] = arguments[_key2];
118
+ }
119
+ this.sceneControl.context.emitter.off.apply(this.sceneControl.context.emitter, args);
120
+ }
121
+ }, {
122
+ key: "emit",
123
+ value: function emit() {
124
+ for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
125
+ args[_key3] = arguments[_key3];
126
+ }
127
+ this.sceneControl.context.emitter.emit.apply(this.sceneControl.context.emitter, args);
128
+ }
129
+ }, {
81
130
  key: "logInfo",
82
131
  value: function logInfo(scene) {
83
132
  var TEX_SLOTS = ['map', 'normalMap', 'roughnessMap', 'metalnessMap', 'aoMap', 'emissiveMap', 'alphaMap', 'lightMap'];
@@ -132,6 +181,13 @@ var Anov3D = /*#__PURE__*/function () {
132
181
  }
133
182
  return orbitControls;
134
183
  }
184
+ }, {
185
+ key: "destroy",
186
+ value: function destroy() {
187
+ var _this$cleanupHooks, _this$sceneControl;
188
+ (_this$cleanupHooks = this.cleanupHooks) === null || _this$cleanupHooks === void 0 || _this$cleanupHooks.call(this);
189
+ (_this$sceneControl = this.sceneControl) === null || _this$sceneControl === void 0 || _this$sceneControl.destroy();
190
+ }
135
191
  }]);
136
192
  return Anov3D;
137
193
  }();
@@ -1 +1 @@
1
- {"version":3,"names":["MathUtils","SceneControl","Vector3","utils","initPostEffects","EventBus","object2Vector3","defaultCameraParams","Anov3D","opts","_camera$limit","_classCallCheck","_defineProperty","_opts$camera","camera","_opts$container","container","clientWidth","clientHeight","defaultPosition","position","defaultRest","_objectWithoutProperties","_excluded","limit","pitch","min","max","Math","cameraParams","_objectSpread","fromArray","orbitControls","scene","defCameraOps","aspect","rendererOps","shadowMap","reset","css2DRenderer","css3DRenderer","ambientLight","render","controls","target","copy","renderer","emitter","emit","sceneControl","eventBus","storeManagement","set","_createClass","key","value","logInfo","TEX_SLOTS","setInterval","uuids","Set","totalMB","traverse","obj","isMesh","mesh","mats","Array","isArray","material","forEach","mat","slot","tex","has","uuid","add","img","image","width","height","console","table","size","info","memory","textures","geometries","calls","triangles","toFixed","getOrbitControls","params","yaw","distance","length","minPolarAngle","degToRad","maxPolarAngle","minAzimuthAngle","maxAzimuthAngle","minDistance","maxDistance"],"sources":["../src/anov3d.ts"],"sourcesContent":["import type { MeshStandardMaterial, TextureSlot } from '@anov/3d-core'\nimport { MathUtils, Mesh, SceneControl, Vector3, utils } from '@anov/3d-core'\nimport { initPostEffects } from '@anov/3d-ability'\nimport EventBus from './module/eventBus'\nimport { object2Vector3 } from './utils/index'\nimport type { InitOptions } from './applicationApiType'\nimport { defaultCameraParams } from './index'\n\ntype Anov3DOptions = {\n container: HTMLElement\n camera?: InitOptions['camera']\n}\n\nclass Anov3D {\n zoomRatio = 1\n opts: Anov3DOptions\n sceneControl: SceneControl\n eventBus: EventBus\n\n constructor(opts: Anov3DOptions) {\n this.opts = opts\n\n // 获取默认和传入的相机参数\n const { camera = {}, container: { clientWidth, clientHeight } } = opts\n const { position: defaultPosition, ...defaultRest } = defaultCameraParams\n\n // 俯仰角转换,SCC取值范围是-90-90,转换到0-180\n if (camera.limit?.pitch) {\n const { pitch } = camera.limit\n const min = 90 - pitch[0]\n const max = 90 - pitch[1]\n camera.limit.pitch = [Math.min(min, max), Math.max(min, max)]\n }\n // 初始化相机参数\n const cameraParams = {\n limit: {},\n ...defaultRest,\n ...camera,\n position: camera.position ? new Vector3().fromArray(camera.position) : object2Vector3(defaultPosition),\n }\n // const orbitControls = this.getOrbitControls(cameraParams.limit) // 控制器参数\n const orbitControls = { limit: cameraParams.limit } // 控制器参数\n const scene = new SceneControl({\n defCameraOps: {\n ...cameraParams,\n aspect: clientWidth / clientHeight,\n },\n rendererOps: {\n shadowMap: true,\n },\n orbitControls,\n reset: true,\n css2DRenderer: true,\n css3DRenderer: true,\n ambientLight: true,\n })\n scene.render(opts.container)\n // scene.controls.target.copy(object2Vector3(defaultCameraParams.lookAt))\n scene.controls.target!.copy(new Vector3().fromArray(cameraParams.target! || [0, 0, 0]))\n // this.logInfo(scene)\n initPostEffects(scene.scene, scene.renderer, scene.camera)\n\n utils.emitter.emit('scene-completed', scene)\n\n // 不考虑 tree-shaking\n this.sceneControl = scene\n this.eventBus = new EventBus(this as any)\n\n utils.storeManagement.set('event-bus', this.eventBus)\n utils.emitter.emit('instantiation-completed', this)\n }\n\n logInfo(scene) {\n const TEX_SLOTS: TextureSlot[] = [\n 'map', 'normalMap', 'roughnessMap', 'metalnessMap',\n 'aoMap', 'emissiveMap', 'alphaMap', 'lightMap',\n ]\n setInterval(() => {\n const renderer = scene.renderer\n const uuids = new Set<string>()\n let totalMB = 0\n scene.scene.traverse((obj) => {\n if (!(obj as any).isMesh)\n return\n const mesh = obj\n const mats = Array.isArray(mesh.material) ? mesh.material : [mesh.material]\n mats.forEach((mat) => {\n TEX_SLOTS.forEach((slot) => {\n const tex = (mat as MeshStandardMaterial)[slot] as Texture | null\n if (!tex)\n return\n if (!uuids.has(tex.uuid)) {\n uuids.add(tex.uuid)\n const img = tex.image as HTMLImageElement | null\n if (img)\n totalMB += (img.width * img.height * 4) / 1024 / 1024\n }\n })\n })\n })\n\n console.table({\n '场景纹理数': uuids.size,\n '渲染器纹理数': renderer.info.memory.textures,\n '几何体数量': renderer.info.memory.geometries,\n '渲染调用次数': renderer.info.render.calls,\n '三角面数': renderer.info.render.triangles,\n '估算显存(MB)': totalMB.toFixed(0),\n })\n }, 5000)\n }\n\n getOrbitControls(params: { pitch?: number[]\n yaw?: number[]\n distance?: number[] }) {\n const { pitch, yaw, distance } = params\n const orbitControls: any = {}\n if (pitch?.length > 1) {\n orbitControls.minPolarAngle = MathUtils.degToRad(pitch[0])\n orbitControls.maxPolarAngle = MathUtils.degToRad(pitch[1])\n }\n if (yaw?.length > 1) {\n orbitControls.minAzimuthAngle = MathUtils.degToRad(yaw[0])\n orbitControls.maxAzimuthAngle = MathUtils.degToRad(yaw[1])\n }\n if (distance?.length > 1) {\n orbitControls.minDistance = distance[0]\n orbitControls.maxDistance = distance[1]\n }\n return orbitControls\n }\n}\n\nexport default Anov3D"],"mappings":"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"}
1
+ {"version":3,"names":["MathUtils","SceneControl","Vector3","initPostEffects","EventBus","object2Vector3","defaultCameraParams","fov","near","far","position","x","y","z","lookAt","Anov3D","opts","_camera$limit","_classCallCheck","_defineProperty","_opts$camera","camera","_opts$container","container","clientWidth","clientHeight","_opts$decoderPath","decoderPath","defaultPosition","defaultRest","_objectWithoutProperties","_excluded","limit","pitch","min","max","Math","cameraParams","_objectSpread","fromArray","orbitControls","target","scene","defCameraOps","aspect","rendererOps","shadowMap","reset","css2DRenderer","css3DRenderer","ambientLight","context","storeManagement","set","render","renderer","undefined","emitter","emit","sceneControl","eventBus","_createClass","key","get","value","on","_len","arguments","length","args","Array","_key","apply","off","_len2","_key2","_len3","_key3","logInfo","TEX_SLOTS","setInterval","uuids","Set","totalMB","traverse","obj","isMesh","mesh","mats","isArray","material","forEach","mat","slot","tex","has","uuid","add","img","image","width","height","console","table","size","info","memory","textures","geometries","calls","triangles","toFixed","getOrbitControls","params","yaw","distance","minPolarAngle","degToRad","maxPolarAngle","minAzimuthAngle","maxAzimuthAngle","minDistance","maxDistance","destroy","_this$cleanupHooks","_this$sceneControl","cleanupHooks","call"],"sources":["../src/anov3d.ts"],"sourcesContent":["import type { MeshStandardMaterial, Texture } from '@anov/3d-core'\nimport { MathUtils, SceneControl, Vector3 } from '@anov/3d-core'\nimport { initPostEffects } from '@anov/3d-ability'\nimport EventBus from './module/eventBus'\nimport { object2Vector3 } from './utils/index'\nimport type { InitOptions } from './applicationApiType'\n\n// import registerHooks from './hooksManager'\n\nexport const defaultCameraParams = {\n fov: 60,\n near: 0.1,\n far: 1000000,\n position: { x: 0, y: 100, z: 200 },\n lookAt: { x: 0, y: 0, z: 0 },\n}\n\nexport type Anov3DOptions = {\n container: HTMLElement\n camera?: InitOptions['camera']\n decoderPath?: string\n}\n\nclass Anov3D {\n zoomRatio = 1\n opts: Anov3DOptions\n sceneControl: SceneControl\n eventBus: EventBus\n private cleanupHooks: () => void\n\n constructor(opts: Anov3DOptions) {\n this.opts = opts\n\n // 获取默认和传入的相机参数\n const { camera = {}, container: { clientWidth, clientHeight }, decoderPath = '/draco/' } = opts\n const { position: defaultPosition, ...defaultRest } = defaultCameraParams\n\n // 俯仰角转换,SCC取值范围是-90-90,转换到0-180\n if (camera.limit?.pitch) {\n const { pitch } = camera.limit\n const min = 90 - pitch[0]\n const max = 90 - pitch[1]\n camera.limit.pitch = [Math.min(min, max), Math.max(min, max)]\n }\n // 初始化相机参数\n const cameraParams = {\n limit: {},\n ...defaultRest,\n ...camera,\n position: camera.position ? new Vector3().fromArray(camera.position) : object2Vector3(defaultPosition),\n }\n // const orbitControls = this.getOrbitControls(cameraParams.limit) // 控制器参数\n const orbitControls = { limit: cameraParams.limit, target: cameraParams.target || [0, 0, 0] } // 控制器参数\n const scene = new SceneControl({\n defCameraOps: {\n ...cameraParams,\n aspect: clientWidth / clientHeight,\n },\n rendererOps: {\n shadowMap: true,\n },\n orbitControls,\n reset: true,\n css2DRenderer: true,\n css3DRenderer: true,\n ambientLight: true,\n })\n\n scene.context.storeManagement.set('decoderPath', decoderPath)\n\n scene.render(opts.container)\n\n initPostEffects(scene.scene, scene.renderer, scene.camera, undefined, scene)\n scene.context.emitter.emit('scene-completed', scene)\n // scene.controls.target!.copy(new Vector3().fromArray(cameraParams.target! || [0, 0, 0]))\n // this.logInfo(scene)\n\n this.sceneControl = scene\n this.eventBus = new EventBus(this as any)\n\n scene.context.storeManagement.set('event-bus', this.eventBus)\n\n // this.cleanupHooks = registerHooks(scene)\n }\n\n get storeManagement() {\n return this.sceneControl.context.storeManagement\n }\n\n on(...args: any[]) {\n this.sceneControl.context.emitter.on.apply(this.sceneControl.context.emitter, args)\n }\n\n off(...args: any[]) {\n this.sceneControl.context.emitter.off.apply(this.sceneControl.context.emitter, args)\n }\n\n emit(...args: any[]) {\n this.sceneControl.context.emitter.emit.apply(this.sceneControl.context.emitter, args)\n }\n\n logInfo(scene) {\n const TEX_SLOTS: string[] = [\n 'map', 'normalMap', 'roughnessMap', 'metalnessMap',\n 'aoMap', 'emissiveMap', 'alphaMap', 'lightMap',\n ]\n setInterval(() => {\n const renderer = scene.renderer\n const uuids = new Set<string>()\n let totalMB = 0\n scene.scene.traverse((obj) => {\n if (!(obj as any).isMesh)\n return\n const mesh = obj\n const mats = Array.isArray(mesh.material) ? mesh.material : [mesh.material]\n mats.forEach((mat) => {\n TEX_SLOTS.forEach((slot) => {\n const tex = (mat as MeshStandardMaterial)[slot] as Texture | null\n if (!tex)\n return\n if (!uuids.has(tex.uuid)) {\n uuids.add(tex.uuid)\n const img = tex.image as HTMLImageElement | null\n if (img)\n totalMB += (img.width * img.height * 4) / 1024 / 1024\n }\n })\n })\n })\n\n console.table({\n '场景纹理数': uuids.size,\n '渲染器纹理数': renderer.info.memory.textures,\n '几何体数量': renderer.info.memory.geometries,\n '渲染调用次数': renderer.info.render.calls,\n '三角面数': renderer.info.render.triangles,\n '估算显存(MB)': totalMB.toFixed(0),\n })\n }, 5000)\n }\n\n getOrbitControls(params: { pitch?: number[]\n yaw?: number[]\n distance?: number[] }) {\n const { pitch, yaw, distance } = params\n const orbitControls: any = {}\n if (pitch?.length > 1) {\n orbitControls.minPolarAngle = MathUtils.degToRad(pitch[0])\n orbitControls.maxPolarAngle = MathUtils.degToRad(pitch[1])\n }\n if (yaw?.length > 1) {\n orbitControls.minAzimuthAngle = MathUtils.degToRad(yaw[0])\n orbitControls.maxAzimuthAngle = MathUtils.degToRad(yaw[1])\n }\n if (distance?.length > 1) {\n orbitControls.minDistance = distance[0]\n orbitControls.maxDistance = distance[1]\n }\n return orbitControls\n }\n\n destroy() {\n this.cleanupHooks?.()\n this.sceneControl?.destroy()\n }\n}\n\nexport default Anov3D\n"],"mappings":";;;;;;;;;;;;AACA,SAASA,SAAS,EAAEC,YAAY,EAAEC,OAAO,QAAQ,eAAe;AAChE,SAASC,eAAe,QAAQ,kBAAkB;AAClD,OAAOC,QAAQ;AACf,SAASC,cAAc;AAGvB;;AAEA,OAAO,IAAMC,mBAAmB,GAAG;EACjCC,GAAG,EAAE,EAAE;EACPC,IAAI,EAAE,GAAG;EACTC,GAAG,EAAE,OAAO;EACZC,QAAQ,EAAE;IAAEC,CAAC,EAAE,CAAC;IAAEC,CAAC,EAAE,GAAG;IAAEC,CAAC,EAAE;EAAI,CAAC;EAClCC,MAAM,EAAE;IAAEH,CAAC,EAAE,CAAC;IAAEC,CAAC,EAAE,CAAC;IAAEC,CAAC,EAAE;EAAE;AAC7B,CAAC;AAAA,IAQKE,MAAM;EAOV,SAAAA,OAAYC,IAAmB,EAAE;IAAA,IAAAC,aAAA;IAAAC,eAAA,OAAAH,MAAA;IAAAI,eAAA,oBANrB,CAAC;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAOX,IAAI,CAACH,IAAI,GAAGA,IAAI;;IAEhB;IACA,IAAAI,YAAA,GAA2FJ,IAAI,CAAvFK,MAAM;MAANA,MAAM,GAAAD,YAAA,cAAG,CAAC,CAAC,GAAAA,YAAA;MAAAE,eAAA,GAAwEN,IAAI,CAA1EO,SAAS;MAAIC,WAAW,GAAAF,eAAA,CAAXE,WAAW;MAAEC,YAAY,GAAAH,eAAA,CAAZG,YAAY;MAAAC,iBAAA,GAAgCV,IAAI,CAAhCW,WAAW;MAAXA,WAAW,GAAAD,iBAAA,cAAG,SAAS,GAAAA,iBAAA;IACtF,IAAkBE,eAAe,GAAqBtB,mBAAmB,CAAjEI,QAAQ;MAAsBmB,WAAW,GAAAC,wBAAA,CAAKxB,mBAAmB,EAAAyB,SAAA;;IAEzE;IACA,KAAAd,aAAA,GAAII,MAAM,CAACW,KAAK,cAAAf,aAAA,eAAZA,aAAA,CAAcgB,KAAK,EAAE;MACvB,IAAQA,KAAK,GAAKZ,MAAM,CAACW,KAAK,CAAtBC,KAAK;MACb,IAAMC,GAAG,GAAG,EAAE,GAAGD,KAAK,CAAC,CAAC,CAAC;MACzB,IAAME,GAAG,GAAG,EAAE,GAAGF,KAAK,CAAC,CAAC,CAAC;MACzBZ,MAAM,CAACW,KAAK,CAACC,KAAK,GAAG,CAACG,IAAI,CAACF,GAAG,CAACA,GAAG,EAAEC,GAAG,CAAC,EAAEC,IAAI,CAACD,GAAG,CAACD,GAAG,EAAEC,GAAG,CAAC,CAAC;IAC/D;IACA;IACA,IAAME,YAAY,GAAAC,aAAA,CAAAA,aAAA,CAAAA,aAAA;MAChBN,KAAK,EAAE,CAAC;IAAC,GACNH,WAAW,GACXR,MAAM;MACTX,QAAQ,EAAEW,MAAM,CAACX,QAAQ,GAAG,IAAIR,OAAO,CAAC,CAAC,CAACqC,SAAS,CAAClB,MAAM,CAACX,QAAQ,CAAC,GAAGL,cAAc,CAACuB,eAAe;IAAC,EACvG;IACD;IACA,IAAMY,aAAa,GAAG;MAAER,KAAK,EAAEK,YAAY,CAACL,KAAK;MAAES,MAAM,EAAEJ,YAAY,CAACI,MAAM,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IAAE,CAAC,EAAC;IAC9F,IAAMC,KAAK,GAAG,IAAIzC,YAAY,CAAC;MAC7B0C,YAAY,EAAAL,aAAA,CAAAA,aAAA,KACPD,YAAY;QACfO,MAAM,EAAEpB,WAAW,GAAGC;MAAY,EACnC;MACDoB,WAAW,EAAE;QACXC,SAAS,EAAE;MACb,CAAC;MACDN,aAAa,EAAbA,aAAa;MACbO,KAAK,EAAE,IAAI;MACXC,aAAa,EAAE,IAAI;MACnBC,aAAa,EAAE,IAAI;MACnBC,YAAY,EAAE;IAChB,CAAC,CAAC;IAEFR,KAAK,CAACS,OAAO,CAACC,eAAe,CAACC,GAAG,CAAC,aAAa,EAAE1B,WAAW,CAAC;IAE7De,KAAK,CAACY,MAAM,CAACtC,IAAI,CAACO,SAAS,CAAC;IAE5BpB,eAAe,CAACuC,KAAK,CAACA,KAAK,EAAEA,KAAK,CAACa,QAAQ,EAAEb,KAAK,CAACrB,MAAM,EAAEmC,SAAS,EAAEd,KAAK,CAAC;IAC5EA,KAAK,CAACS,OAAO,CAACM,OAAO,CAACC,IAAI,CAAC,iBAAiB,EAAEhB,KAAK,CAAC;IACpD;IACA;;IAEA,IAAI,CAACiB,YAAY,GAAGjB,KAAK;IACzB,IAAI,CAACkB,QAAQ,GAAG,IAAIxD,QAAQ,CAAC,IAAW,CAAC;IAEzCsC,KAAK,CAACS,OAAO,CAACC,eAAe,CAACC,GAAG,CAAC,WAAW,EAAE,IAAI,CAACO,QAAQ,CAAC;;IAE7D;EACF;EAACC,YAAA,CAAA9C,MAAA;IAAA+C,GAAA;IAAAC,GAAA,EAED,SAAAA,IAAA,EAAsB;MACpB,OAAO,IAAI,CAACJ,YAAY,CAACR,OAAO,CAACC,eAAe;IAClD;EAAC;IAAAU,GAAA;IAAAE,KAAA,EAED,SAAAC,GAAA,EAAmB;MAAA,SAAAC,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAAbC,IAAI,OAAAC,KAAA,CAAAJ,IAAA,GAAAK,IAAA,MAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA;QAAJF,IAAI,CAAAE,IAAA,IAAAJ,SAAA,CAAAI,IAAA;MAAA;MACR,IAAI,CAACZ,YAAY,CAACR,OAAO,CAACM,OAAO,CAACQ,EAAE,CAACO,KAAK,CAAC,IAAI,CAACb,YAAY,CAACR,OAAO,CAACM,OAAO,EAAEY,IAAI,CAAC;IACrF;EAAC;IAAAP,GAAA;IAAAE,KAAA,EAED,SAAAS,IAAA,EAAoB;MAAA,SAAAC,KAAA,GAAAP,SAAA,CAAAC,MAAA,EAAbC,IAAI,OAAAC,KAAA,CAAAI,KAAA,GAAAC,KAAA,MAAAA,KAAA,GAAAD,KAAA,EAAAC,KAAA;QAAJN,IAAI,CAAAM,KAAA,IAAAR,SAAA,CAAAQ,KAAA;MAAA;MACT,IAAI,CAAChB,YAAY,CAACR,OAAO,CAACM,OAAO,CAACgB,GAAG,CAACD,KAAK,CAAC,IAAI,CAACb,YAAY,CAACR,OAAO,CAACM,OAAO,EAAEY,IAAI,CAAC;IACtF;EAAC;IAAAP,GAAA;IAAAE,KAAA,EAED,SAAAN,KAAA,EAAqB;MAAA,SAAAkB,KAAA,GAAAT,SAAA,CAAAC,MAAA,EAAbC,IAAI,OAAAC,KAAA,CAAAM,KAAA,GAAAC,KAAA,MAAAA,KAAA,GAAAD,KAAA,EAAAC,KAAA;QAAJR,IAAI,CAAAQ,KAAA,IAAAV,SAAA,CAAAU,KAAA;MAAA;MACV,IAAI,CAAClB,YAAY,CAACR,OAAO,CAACM,OAAO,CAACC,IAAI,CAACc,KAAK,CAAC,IAAI,CAACb,YAAY,CAACR,OAAO,CAACM,OAAO,EAAEY,IAAI,CAAC;IACvF;EAAC;IAAAP,GAAA;IAAAE,KAAA,EAED,SAAAc,QAAQpC,KAAK,EAAE;MACb,IAAMqC,SAAmB,GAAG,CAC1B,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,cAAc,EAClD,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,UAAU,CAC/C;MACDC,WAAW,CAAC,YAAM;QAChB,IAAMzB,QAAQ,GAAGb,KAAK,CAACa,QAAQ;QAC/B,IAAM0B,KAAK,GAAG,IAAIC,GAAG,CAAS,CAAC;QAC/B,IAAIC,OAAO,GAAG,CAAC;QACfzC,KAAK,CAACA,KAAK,CAAC0C,QAAQ,CAAC,UAACC,GAAG,EAAK;UAC5B,IAAI,CAAEA,GAAG,CAASC,MAAM,EACtB;UACF,IAAMC,IAAI,GAAGF,GAAG;UAChB,IAAMG,IAAI,GAAGlB,KAAK,CAACmB,OAAO,CAACF,IAAI,CAACG,QAAQ,CAAC,GAAGH,IAAI,CAACG,QAAQ,GAAG,CAACH,IAAI,CAACG,QAAQ,CAAC;UAC3EF,IAAI,CAACG,OAAO,CAAC,UAACC,GAAG,EAAK;YACpBb,SAAS,CAACY,OAAO,CAAC,UAACE,IAAI,EAAK;cAC1B,IAAMC,GAAG,GAAIF,GAAG,CAA0BC,IAAI,CAAmB;cACjE,IAAI,CAACC,GAAG,EACN;cACF,IAAI,CAACb,KAAK,CAACc,GAAG,CAACD,GAAG,CAACE,IAAI,CAAC,EAAE;gBACxBf,KAAK,CAACgB,GAAG,CAACH,GAAG,CAACE,IAAI,CAAC;gBACnB,IAAME,GAAG,GAAGJ,GAAG,CAACK,KAAgC;gBAChD,IAAID,GAAG,EACLf,OAAO,IAAKe,GAAG,CAACE,KAAK,GAAGF,GAAG,CAACG,MAAM,GAAG,CAAC,GAAI,IAAI,GAAG,IAAI;cACzD;YACF,CAAC,CAAC;UACJ,CAAC,CAAC;QACJ,CAAC,CAAC;QAEFC,OAAO,CAACC,KAAK,CAAC;UACZ,OAAO,EAAEtB,KAAK,CAACuB,IAAI;UACnB,QAAQ,EAAEjD,QAAQ,CAACkD,IAAI,CAACC,MAAM,CAACC,QAAQ;UACvC,OAAO,EAAEpD,QAAQ,CAACkD,IAAI,CAACC,MAAM,CAACE,UAAU;UACxC,QAAQ,EAAErD,QAAQ,CAACkD,IAAI,CAACnD,MAAM,CAACuD,KAAK;UACpC,MAAM,EAAEtD,QAAQ,CAACkD,IAAI,CAACnD,MAAM,CAACwD,SAAS;UACtC,UAAU,EAAE3B,OAAO,CAAC4B,OAAO,CAAC,CAAC;QAC/B,CAAC,CAAC;MACJ,CAAC,EAAE,IAAI,CAAC;IACV;EAAC;IAAAjD,GAAA;IAAAE,KAAA,EAED,SAAAgD,iBAAiBC,MAEM,EAAE;MACvB,IAAQhF,KAAK,GAAoBgF,MAAM,CAA/BhF,KAAK;QAAEiF,GAAG,GAAeD,MAAM,CAAxBC,GAAG;QAAEC,QAAQ,GAAKF,MAAM,CAAnBE,QAAQ;MAC5B,IAAM3E,aAAkB,GAAG,CAAC,CAAC;MAC7B,IAAI,CAAAP,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEmC,MAAM,IAAG,CAAC,EAAE;QACrB5B,aAAa,CAAC4E,aAAa,GAAGpH,SAAS,CAACqH,QAAQ,CAACpF,KAAK,CAAC,CAAC,CAAC,CAAC;QAC1DO,aAAa,CAAC8E,aAAa,GAAGtH,SAAS,CAACqH,QAAQ,CAACpF,KAAK,CAAC,CAAC,CAAC,CAAC;MAC5D;MACA,IAAI,CAAAiF,GAAG,aAAHA,GAAG,uBAAHA,GAAG,CAAE9C,MAAM,IAAG,CAAC,EAAE;QACnB5B,aAAa,CAAC+E,eAAe,GAAGvH,SAAS,CAACqH,QAAQ,CAACH,GAAG,CAAC,CAAC,CAAC,CAAC;QAC1D1E,aAAa,CAACgF,eAAe,GAAGxH,SAAS,CAACqH,QAAQ,CAACH,GAAG,CAAC,CAAC,CAAC,CAAC;MAC5D;MACA,IAAI,CAAAC,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAE/C,MAAM,IAAG,CAAC,EAAE;QACxB5B,aAAa,CAACiF,WAAW,GAAGN,QAAQ,CAAC,CAAC,CAAC;QACvC3E,aAAa,CAACkF,WAAW,GAAGP,QAAQ,CAAC,CAAC,CAAC;MACzC;MACA,OAAO3E,aAAa;IACtB;EAAC;IAAAsB,GAAA;IAAAE,KAAA,EAED,SAAA2D,QAAA,EAAU;MAAA,IAAAC,kBAAA,EAAAC,kBAAA;MACR,CAAAD,kBAAA,OAAI,CAACE,YAAY,cAAAF,kBAAA,eAAjBA,kBAAA,CAAAG,IAAA,KAAoB,CAAC;MACrB,CAAAF,kBAAA,OAAI,CAAClE,YAAY,cAAAkE,kBAAA,eAAjBA,kBAAA,CAAmBF,OAAO,CAAC,CAAC;IAC9B;EAAC;EAAA,OAAA5G,MAAA;AAAA;AAGH,eAAeA,MAAM"}
@@ -10,25 +10,21 @@ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _d
10
10
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
11
11
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
12
12
  function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
13
- import { utils } from '@anov/3d-core';
14
13
  import { getFnByFnkey } from "./utils/index";
15
14
  import { MessageType, sendToMessage } from "./utils/messageFn";
16
15
  import { EMessageStatus } from "./messageStatus";
17
- import Anov3D from "./index";
18
- var storeManagement = utils.storeManagement;
16
+ import Anov3D from "./sdkEntry";
19
17
  var Application = /*#__PURE__*/function () {
20
18
  function Application(opts) {
21
19
  _classCallCheck(this, Application);
22
20
  _defineProperty(this, "container", void 0);
23
21
  _defineProperty(this, "iEngine", void 0);
22
+ _defineProperty(this, "decoderPath", void 0);
24
23
  this.container = opts.el;
25
- utils.storeManagement.set('decoderPath', opts.decoderPath || '/draco/');
26
- sendToMessage({
27
- messageType: MessageType.Api,
28
- messageName: 'engineReady',
29
- status: EMessageStatus.Success
30
- });
24
+ this.decoderPath = opts.decoderPath || '/draco/';
31
25
  }
26
+
27
+ // fixme: 为什么要单独 init,为什么不直接在 constructor 中初始化
32
28
  _createClass(Application, [{
33
29
  key: "init",
34
30
  value: function init(params, id) {
@@ -43,19 +39,25 @@ var Application = /*#__PURE__*/function () {
43
39
  };
44
40
  var anov3D = new Anov3D({
45
41
  container: this.container,
46
- camera: _objectSpread({}, cameraParams)
42
+ camera: _objectSpread({}, cameraParams),
43
+ decoderPath: this.decoderPath
47
44
  });
48
45
  this.iEngine = anov3D;
49
46
  this.iEngine.zoomRatio = (_set$zoomRatio = set === null || set === void 0 ? void 0 : set.zoomRatio) !== null && _set$zoomRatio !== void 0 ? _set$zoomRatio : 1;
50
- storeManagement.set('container', this.container);
51
- sendToMessage({
47
+ this.iEngine.sceneControl.context.storeManagement.set('container', this.container);
48
+ sendToMessage(this.iEngine, {
49
+ messageType: MessageType.Api,
50
+ messageName: 'engineReady',
51
+ status: EMessageStatus.Success
52
+ });
53
+ sendToMessage(this.iEngine, {
52
54
  messageType: MessageType.Api,
53
55
  messageName: 'core.init',
54
56
  status: EMessageStatus.Success,
55
57
  id: id
56
58
  });
57
59
  } catch (error) {
58
- sendToMessage({
60
+ sendToMessage(this.iEngine, {
59
61
  messageType: MessageType.Api,
60
62
  messageName: 'core.init',
61
63
  status: EMessageStatus.EventHandleFailed,
@@ -64,6 +66,13 @@ var Application = /*#__PURE__*/function () {
64
66
  console.error(error);
65
67
  }
66
68
  }
69
+
70
+ // 暴露 storeManagement
71
+ }, {
72
+ key: "storeManagement",
73
+ get: function get() {
74
+ return this.iEngine.storeManagement;
75
+ }
67
76
  }, {
68
77
  key: "initScene",
69
78
  value: function () {
@@ -85,12 +94,13 @@ var Application = /*#__PURE__*/function () {
85
94
  });
86
95
  anov3D = new Anov3D({
87
96
  container: this.container,
88
- camera: cameraNode
97
+ camera: cameraNode,
98
+ decoderPath: this.decoderPath
89
99
  });
90
100
  this.iEngine = anov3D;
91
- storeManagement.set('container', this.container);
101
+ this.iEngine.sceneControl.context.storeManagement.set('container', this.container);
92
102
  } catch (error) {
93
- sendToMessage({
103
+ sendToMessage(this.iEngine, {
94
104
  messageType: MessageType.Api,
95
105
  messageName: 'scene.init',
96
106
  status: EMessageStatus.EventHandleFailed
@@ -110,18 +120,25 @@ var Application = /*#__PURE__*/function () {
110
120
  }, {
111
121
  key: "sendMessage",
112
122
  value: function sendMessage(req) {
123
+ var _this = this;
113
124
  // core.init 遗留逻辑
114
125
  if (req.name === 'Core.init' || req.name === 'core.init') {
115
126
  this.init(req.params, req.id);
116
127
  return;
117
128
  }
118
- if (req.name === 'scene.init') this.initScene(req.params);
119
- if (!this.iEngine) throw new Error('please init first!');
129
+ if (req.name === 'scene.init') {
130
+ this.initScene(req.params);
131
+ // return // fixme: 我没有理解,为什么不返回,而是继续执行后续的任务
132
+ }
133
+ if (!this.iEngine) {
134
+ var error = new Error('please init first!');
135
+ throw error;
136
+ }
120
137
  var fn = getFnByFnkey(this.iEngine, req.name, req.id);
121
138
  try {
122
139
  var res = fn(req.params);
123
140
  Promise.resolve(res).then(function (res) {
124
- sendToMessage({
141
+ sendToMessage(_this.iEngine, {
125
142
  messageType: MessageType.Api,
126
143
  messageName: req.name,
127
144
  status: EMessageStatus.Success,
@@ -129,8 +146,7 @@ var Application = /*#__PURE__*/function () {
129
146
  }, res);
130
147
  });
131
148
  } catch (error) {
132
- console.error(error);
133
- sendToMessage({
149
+ sendToMessage(this.iEngine, {
134
150
  messageType: MessageType.Api,
135
151
  messageName: req.name,
136
152
  status: EMessageStatus.EventHandleFailed,
@@ -143,7 +159,28 @@ var Application = /*#__PURE__*/function () {
143
159
  }, {
144
160
  key: "receiveMessage",
145
161
  value: function receiveMessage(eventName, cb) {
146
- utils.storeManagement.set(eventName, cb);
162
+ var _this2 = this;
163
+ if (this.iEngine) {
164
+ this.iEngine.sceneControl.context.storeManagement.set(eventName, cb);
165
+ return;
166
+ }
167
+
168
+ // 未初始化时,将事件和回调函数存储在队列中
169
+ var queue = [];
170
+ queue.push({
171
+ eventName: eventName,
172
+ cb: cb
173
+ });
174
+ var checkEngine = function checkEngine() {
175
+ if (_this2.iEngine) {
176
+ queue.forEach(function (item) {
177
+ _this2.iEngine.sceneControl.context.storeManagement.set(item.eventName, item.cb);
178
+ });
179
+ } else {
180
+ requestAnimationFrame(checkEngine);
181
+ }
182
+ };
183
+ requestAnimationFrame(checkEngine);
147
184
  }
148
185
  }]);
149
186
  return Application;
@@ -1 +1 @@
1
- {"version":3,"names":["_regeneratorRuntime","e","t","r","Object","prototype","n","hasOwnProperty","o","defineProperty","value","i","Symbol","a","iterator","c","asyncIterator","u","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","type","arg","call","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","p","d","getPrototypeOf","v","values","g","defineIteratorMethods","forEach","_invoke","AsyncIterator","invoke","_typeof","resolve","__await","then","callInvokeWithMethodAndArg","Error","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","return","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","isNaN","length","displayName","isGeneratorFunction","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","keys","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","catch","_catch","delegateYield","asyncGeneratorStep","gen","reject","_next","_throw","key","info","error","_asyncToGenerator","fn","self","args","arguments","apply","err","undefined","ownKeys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","_objectSpread","_defineProperty","getOwnPropertyDescriptors","defineProperties","_classCallCheck","instance","Constructor","_defineProperties","target","props","descriptor","_toPropertyKey","_createClass","protoProps","staticProps","obj","_toPrimitive","String","toPrimitive","Number","utils","getFnByFnkey","MessageType","sendToMessage","EMessageStatus","Anov3D","storeManagement","Application","opts","container","el","set","decoderPath","messageType","Api","messageName","status","Success","init","params","id","_set$zoomRatio","_ref","_ref$camera","camera","cameraParams","position","anov3D","iEngine","zoomRatio","EventHandleFailed","console","_initScene","_callee","_scc$nodes","scc","cameraNode","_callee$","_context","innerHTML","sceneControl","destroy","nodes","find","node","initScene","_x","sendMessage","req","res","failMessage","message","receiveMessage","eventName","cb","createInstance"],"sources":["../src/applicationApi.ts"],"sourcesContent":["import { utils } from '@anov/3d-core'\nimport { getFnByFnkey } from './utils/index'\nimport { MessageType, sendToMessage } from './utils/messageFn'\nimport { EMessageStatus } from './messageStatus'\nimport type { InitOptions } from './applicationApiType'\nimport FileParse from './module/scene/fileParse'\nimport Anov3D, { defaultCameraParams } from './index'\n\nconst { storeManagement } = utils\n\ntype ApplicationOptions = {\n el: HTMLElement\n decoderPath?: string\n}\n\nclass Application {\n container: HTMLElement\n iEngine: Anov3D\n\n constructor(opts: ApplicationOptions) {\n this.container = opts.el\n\n utils.storeManagement.set('decoderPath', opts.decoderPath || '/draco/')\n\n sendToMessage({\n messageType: MessageType.Api,\n messageName: 'engineReady',\n status: EMessageStatus.Success,\n })\n }\n\n private init(params: InitOptions, id: string) {\n try {\n const { camera = {}, set } = params || {}\n\n const cameraParams = {\n position: camera.position,\n }\n\n const anov3D = new Anov3D({\n container: this.container,\n camera: {\n ...cameraParams,\n },\n })\n\n this.iEngine = anov3D\n this.iEngine.zoomRatio = set?.zoomRatio ?? 1\n\n storeManagement.set('container', this.container)\n\n sendToMessage({\n messageType: MessageType.Api,\n messageName: 'core.init',\n status: EMessageStatus.Success,\n id,\n })\n }\n\n catch (error) {\n sendToMessage({\n messageType: MessageType.Api,\n messageName: 'core.init',\n status: EMessageStatus.EventHandleFailed,\n id,\n })\n console.error(error)\n }\n }\n\n private async initScene(params: any) {\n try {\n const { scc } = params\n if (this.iEngine) { // todo: 兼容场景切换操作,后续需要处理多场景切换、多场景实例等问题\n this.container.innerHTML = ''\n this.iEngine.sceneControl.destroy()\n }\n // 相机参数\n const cameraNode = scc?.nodes?.find(node => node.type === 'camera')\n const anov3D = new Anov3D({\n container: this.container,\n camera: cameraNode,\n })\n this.iEngine = anov3D\n\n storeManagement.set('container', this.container)\n }\n catch (error) {\n sendToMessage({\n messageType: MessageType.Api,\n messageName: 'scene.init',\n status: EMessageStatus.EventHandleFailed,\n })\n }\n }\n\n sendMessage(req: { name: string; id: string; params: any }) {\n // core.init 遗留逻辑\n if (req.name === 'Core.init' || req.name === 'core.init') {\n this.init(req.params, req.id)\n return\n }\n if (req.name === 'scene.init')\n this.initScene(req.params)\n\n if (!this.iEngine)\n throw new Error('please init first!')\n\n const fn = getFnByFnkey(this.iEngine, req.name, req.id) as any\n\n try {\n const res = fn(req.params)\n Promise.resolve(res).then((res) => {\n sendToMessage({\n messageType: MessageType.Api,\n messageName: req.name,\n status: EMessageStatus.Success,\n id: req.id,\n }, res)\n })\n }\n catch (error: any) {\n console.error(error)\n sendToMessage({\n messageType: MessageType.Api,\n messageName: req.name,\n status: EMessageStatus.EventHandleFailed,\n id: req.id,\n }, {\n failMessage: error.message,\n })\n }\n }\n\n receiveMessage(eventName: string, cb: (params: any) => void) {\n utils.storeManagement.set(eventName, cb)\n }\n}\n\n/**\n * create an instance of Application\n * @returns\n */\nexport const createInstance = (opts: ApplicationOptions): Application => {\n return new Application(opts)\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_regeneratorRuntime","e","t","r","Object","prototype","n","hasOwnProperty","o","defineProperty","value","i","Symbol","a","iterator","c","asyncIterator","u","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","type","arg","call","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","p","d","getPrototypeOf","v","values","g","defineIteratorMethods","forEach","_invoke","AsyncIterator","invoke","_typeof","resolve","__await","then","callInvokeWithMethodAndArg","Error","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","return","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","isNaN","length","displayName","isGeneratorFunction","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","keys","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","catch","_catch","delegateYield","asyncGeneratorStep","gen","reject","_next","_throw","key","info","error","_asyncToGenerator","fn","self","args","arguments","apply","err","undefined","ownKeys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","_objectSpread","_defineProperty","getOwnPropertyDescriptors","defineProperties","_classCallCheck","instance","Constructor","_defineProperties","target","props","descriptor","_toPropertyKey","_createClass","protoProps","staticProps","obj","_toPrimitive","String","toPrimitive","Number","getFnByFnkey","MessageType","sendToMessage","EMessageStatus","Anov3D","Application","opts","container","el","decoderPath","init","params","id","_set$zoomRatio","_ref","_ref$camera","camera","set","cameraParams","position","anov3D","iEngine","zoomRatio","sceneControl","context","storeManagement","messageType","Api","messageName","status","Success","EventHandleFailed","console","get","_initScene","_callee","_scc$nodes","scc","cameraNode","_callee$","_context","innerHTML","destroy","nodes","find","node","initScene","_x","sendMessage","req","_this","res","failMessage","message","receiveMessage","eventName","cb","_this2","queue","checkEngine","item","requestAnimationFrame","createInstance"],"sources":["../src/applicationApi.ts"],"sourcesContent":["import { getFnByFnkey } from './utils/index'\nimport { MessageType, sendToMessage } from './utils/messageFn'\nimport { EMessageStatus } from './messageStatus'\nimport type { InitOptions } from './applicationApiType'\nimport Anov3D from './sdkEntry'\n\ntype ApplicationOptions = {\n el: HTMLElement\n decoderPath?: string\n}\n\nclass Application {\n container: HTMLElement\n iEngine: Anov3D\n decoderPath: string\n\n constructor(opts: ApplicationOptions) {\n this.container = opts.el\n this.decoderPath = opts.decoderPath || '/draco/'\n }\n\n // fixme: 为什么要单独 init,为什么不直接在 constructor 中初始化\n private init(params: InitOptions, id: string) {\n try {\n const { camera = {}, set } = params || {}\n\n const cameraParams = {\n position: camera.position,\n }\n\n const anov3D = new Anov3D({\n container: this.container,\n camera: {\n ...cameraParams,\n },\n decoderPath: this.decoderPath,\n })\n\n this.iEngine = anov3D\n this.iEngine.zoomRatio = set?.zoomRatio ?? 1\n\n this.iEngine.sceneControl.context.storeManagement.set('container', this.container)\n\n sendToMessage(this.iEngine, {\n messageType: MessageType.Api,\n messageName: 'engineReady',\n status: EMessageStatus.Success,\n })\n\n sendToMessage(this.iEngine, {\n messageType: MessageType.Api,\n messageName: 'core.init',\n status: EMessageStatus.Success,\n id,\n })\n }\n\n catch (error) {\n sendToMessage(this.iEngine, {\n messageType: MessageType.Api,\n messageName: 'core.init',\n status: EMessageStatus.EventHandleFailed,\n id,\n })\n console.error(error)\n }\n }\n\n // 暴露 storeManagement\n get storeManagement() {\n return this.iEngine.storeManagement\n }\n\n private async initScene(params: any) {\n try {\n const { scc } = params\n if (this.iEngine) { // todo: 兼容场景切换操作,后续需要处理多场景切换、多场景实例等问题\n this.container.innerHTML = ''\n this.iEngine.sceneControl.destroy()\n }\n // 相机参数\n const cameraNode = scc?.nodes?.find(node => node.type === 'camera')\n const anov3D = new Anov3D({\n container: this.container,\n camera: cameraNode,\n decoderPath: this.decoderPath,\n })\n this.iEngine = anov3D\n\n this.iEngine.sceneControl.context.storeManagement.set('container', this.container)\n }\n catch (error) {\n sendToMessage(this.iEngine, {\n messageType: MessageType.Api,\n messageName: 'scene.init',\n status: EMessageStatus.EventHandleFailed,\n })\n }\n }\n\n sendMessage(req: { name: string; id: string; params: any }) {\n // core.init 遗留逻辑\n if (req.name === 'Core.init' || req.name === 'core.init') {\n this.init(req.params, req.id)\n return\n }\n if (req.name === 'scene.init') {\n this.initScene(req.params)\n // return // fixme: 我没有理解,为什么不返回,而是继续执行后续的任务\n }\n\n if (!this.iEngine) {\n const error = new Error('please init first!')\n throw error\n }\n\n const fn = getFnByFnkey(this.iEngine, req.name, req.id) as any\n\n try {\n const res = fn(req.params)\n Promise.resolve(res).then((res) => {\n sendToMessage(this.iEngine, {\n messageType: MessageType.Api,\n messageName: req.name,\n status: EMessageStatus.Success,\n id: req.id,\n }, res)\n })\n }\n catch (error: any) {\n sendToMessage(this.iEngine, {\n messageType: MessageType.Api,\n messageName: req.name,\n status: EMessageStatus.EventHandleFailed,\n id: req.id,\n }, {\n failMessage: error.message,\n })\n }\n }\n\n receiveMessage(eventName: string, cb: (params: any) => void) {\n if (this.iEngine) {\n this.iEngine.sceneControl.context.storeManagement.set(eventName, cb)\n return\n }\n\n // 未初始化时,将事件和回调函数存储在队列中\n const queue: { eventName: string; cb: (params: any) => void }[] = []\n queue.push({\n eventName,\n cb,\n })\n\n const checkEngine = () => {\n if (this.iEngine) {\n queue.forEach((item) => {\n this.iEngine.sceneControl.context.storeManagement.set(item.eventName, item.cb)\n })\n }\n else {\n requestAnimationFrame(checkEngine)\n }\n }\n requestAnimationFrame(checkEngine)\n }\n}\n\n/**\n * create an instance of Application\n * @returns\n */\nexport const createInstance = (opts: ApplicationOptions): Application => {\n return new Application(opts)\n}\n"],"mappings":"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"}