@anov/3d 0.0.320 → 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.
- package/dist/__mocks__/ability-mock.js +124 -0
- package/dist/__mocks__/ability-mock.js.map +1 -0
- package/dist/__mocks__/geo-3d-mock.js +10 -0
- package/dist/__mocks__/geo-3d-mock.js.map +1 -0
- package/dist/anov3d.js +64 -8
- package/dist/anov3d.js.map +1 -1
- package/dist/applicationApi.js +59 -22
- package/dist/applicationApi.js.map +1 -1
- package/dist/hooksManager.js +22 -17
- package/dist/hooksManager.js.map +1 -1
- package/dist/index.js +3 -2
- package/dist/index.js.map +1 -1
- package/dist/module/animation/motion/index.js +2 -4
- package/dist/module/animation/motion/index.js.map +1 -1
- package/dist/module/camera/index.js +1 -1
- package/dist/module/camera/index.js.map +1 -1
- package/dist/module/entity/area/index.js +3 -3
- package/dist/module/entity/area/index.js.map +1 -1
- package/dist/module/entity/baseEntity.js +13 -4
- package/dist/module/entity/baseEntity.js.map +1 -1
- package/dist/module/entity/batch/index.js +12 -10
- package/dist/module/entity/batch/index.js.map +1 -1
- package/dist/module/entity/flyline/index.js +3 -3
- package/dist/module/entity/flyline/index.js.map +1 -1
- package/dist/module/entity/group/index.js +18 -4
- package/dist/module/entity/group/index.js.map +1 -1
- package/dist/module/entity/heatmap/index.js +16 -4
- package/dist/module/entity/heatmap/index.js.map +1 -1
- package/dist/module/entity/index.js +47 -44
- package/dist/module/entity/index.js.map +1 -1
- package/dist/module/entity/infoPanel/index.js +2 -2
- package/dist/module/entity/infoPanel/index.js.map +1 -1
- package/dist/module/entity/light/pointLight/index.js +2 -2
- package/dist/module/entity/light/pointLight/index.js.map +1 -1
- package/dist/module/entity/mark/index.js +11 -14
- package/dist/module/entity/mark/index.js.map +1 -1
- package/dist/module/entity/model/index.js +29 -12
- package/dist/module/entity/model/index.js.map +1 -1
- package/dist/module/entity/model/load/loadFbx.js +2 -2
- package/dist/module/entity/model/load/loadFbx.js.map +1 -1
- package/dist/module/entity/model/load/loadGlb.js +7 -7
- package/dist/module/entity/model/load/loadGlb.js.map +1 -1
- package/dist/module/entity/poi/index.js +3 -3
- package/dist/module/entity/poi/index.js.map +1 -1
- package/dist/module/entity/shape/index.js +16 -14
- package/dist/module/entity/shape/index.js.map +1 -1
- package/dist/module/entity/spline/index.js +4 -4
- package/dist/module/entity/spline/index.js.map +1 -1
- package/dist/module/entity/strategy.js.map +1 -1
- package/dist/module/entity/traffic/realismTraffic/index.js +17 -5
- package/dist/module/entity/traffic/realismTraffic/index.js.map +1 -1
- package/dist/module/entity/traffic/streamerTraffic/index.js +16 -4
- package/dist/module/entity/traffic/streamerTraffic/index.js.map +1 -1
- package/dist/module/entity/videoPanel/index.js +3 -3
- package/dist/module/entity/videoPanel/index.js.map +1 -1
- package/dist/module/environment/index.js +3 -4
- package/dist/module/environment/index.js.map +1 -1
- package/dist/module/environment/season/index.js +1 -1
- package/dist/module/environment/season/index.js.map +1 -1
- package/dist/module/eventBus/index.js +1 -5
- package/dist/module/eventBus/index.js.map +1 -1
- package/dist/module/material/index.js +5 -6
- package/dist/module/material/index.js.map +1 -1
- package/dist/module/scene/fileParse.js +22 -17
- package/dist/module/scene/fileParse.js.map +1 -1
- package/dist/module/scene/index.js +10 -11
- package/dist/module/scene/index.js.map +1 -1
- package/dist/sdkEntry.js +25 -32
- package/dist/sdkEntry.js.map +1 -1
- package/dist/utils/debugTools.js +364 -0
- package/dist/utils/debugTools.js.map +1 -0
- package/dist/utils/index.js +1 -1
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/messageFn.js +20 -6
- package/dist/utils/messageFn.js.map +1 -1
- package/dist/utils/messageTracer.js +369 -0
- package/dist/utils/messageTracer.js.map +1 -0
- package/package.json +4 -4
package/dist/hooksManager.js
CHANGED
|
@@ -1,46 +1,51 @@
|
|
|
1
|
-
import { utils } from '@anov/3d-core';
|
|
2
1
|
import { Observable, filter } from 'rxjs';
|
|
3
2
|
/**
|
|
4
3
|
* from Mitt Event , convert mitt to Observable
|
|
5
4
|
* @param eventName
|
|
6
5
|
* @returns
|
|
7
6
|
*/
|
|
8
|
-
export var fromMittEvent = function fromMittEvent(eventName) {
|
|
7
|
+
export var fromMittEvent = function fromMittEvent(eventName, sceneControl) {
|
|
9
8
|
return new Observable(function (subscriber) {
|
|
10
9
|
var handler = function handler(data) {
|
|
11
10
|
subscriber.next(data);
|
|
12
11
|
};
|
|
13
|
-
|
|
12
|
+
sceneControl.context.emitter.on(eventName, handler);
|
|
14
13
|
return function () {
|
|
15
|
-
|
|
14
|
+
sceneControl.context.emitter.off(eventName, handler);
|
|
16
15
|
};
|
|
17
16
|
});
|
|
18
17
|
};
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
var
|
|
24
|
-
fromMittEvent('scene-completed').subscribe({
|
|
18
|
+
// fixme 这可能是一个多余的设计,正常来说 emit 和 on 就可以了,没必要加入 rxjs
|
|
19
|
+
// fixme 似乎 storeManagement 也不是必要的设计
|
|
20
|
+
var registerHooks = function registerHooks(sceneControl) {
|
|
21
|
+
var subscriptions = [];
|
|
22
|
+
var sceneCompletedSub = fromMittEvent('scene-completed', sceneControl).subscribe({
|
|
25
23
|
next: function next(scene) {
|
|
26
24
|
console.log('场景编译完成', scene);
|
|
27
25
|
}
|
|
28
26
|
});
|
|
29
|
-
|
|
30
|
-
|
|
27
|
+
subscriptions.push(sceneCompletedSub);
|
|
28
|
+
var eventFilterSub = fromMittEvent('event', sceneControl).pipe(filter(function (data) {
|
|
29
|
+
var eventBus = sceneControl.context.storeManagement.get('event-bus');
|
|
31
30
|
return eventBus && eventBus.eventMap.get(data.name) || !data.global;
|
|
32
31
|
})).subscribe({
|
|
33
32
|
next: function next(data) {
|
|
34
|
-
|
|
33
|
+
sceneControl.context.emitter.emit('message', data);
|
|
35
34
|
}
|
|
36
35
|
});
|
|
37
|
-
|
|
36
|
+
subscriptions.push(eventFilterSub);
|
|
37
|
+
var messageRoutingSub = fromMittEvent('message', sceneControl).subscribe({
|
|
38
38
|
next: function next(data) {
|
|
39
|
-
var
|
|
40
|
-
|
|
41
|
-
(_utils$storeManagemen = utils.storeManagement.get('message')) === null || _utils$storeManagemen === void 0 || _utils$storeManagemen(data);
|
|
39
|
+
var messageCallback = sceneControl.context.storeManagement.get('message');
|
|
40
|
+
messageCallback === null || messageCallback === void 0 || messageCallback(data);
|
|
42
41
|
}
|
|
43
42
|
});
|
|
43
|
+
subscriptions.push(messageRoutingSub);
|
|
44
|
+
return function () {
|
|
45
|
+
subscriptions.forEach(function (sub) {
|
|
46
|
+
return sub.unsubscribe();
|
|
47
|
+
});
|
|
48
|
+
};
|
|
44
49
|
};
|
|
45
50
|
export default registerHooks;
|
|
46
51
|
//# sourceMappingURL=hooksManager.js.map
|
package/dist/hooksManager.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["Observable","filter","fromMittEvent","eventName","sceneControl","subscriber","handler","data","next","context","emitter","on","off","registerHooks","subscriptions","sceneCompletedSub","subscribe","scene","console","log","push","eventFilterSub","pipe","eventBus","storeManagement","get","eventMap","name","global","emit","messageRoutingSub","messageCallback","forEach","sub","unsubscribe"],"sources":["../src/hooksManager.ts"],"sourcesContent":["import { type SceneControl } from '@anov/3d-core'\nimport type { Subscription } from 'rxjs'\nimport { Observable, filter } from 'rxjs'\nimport type EventBus from './module/eventBus'\n\n/**\n * from Mitt Event , convert mitt to Observable\n * @param eventName\n * @returns\n */\nexport const fromMittEvent = (eventName: string, sceneControl: SceneControl): Observable<any> => {\n return new Observable((subscriber) => {\n const handler = (data) => {\n subscriber.next(data)\n }\n\n sceneControl.context.emitter.on(eventName, handler)\n\n return () => {\n sceneControl.context.emitter.off(eventName, handler)\n }\n })\n}\n// fixme 这可能是一个多余的设计,正常来说 emit 和 on 就可以了,没必要加入 rxjs\n// fixme 似乎 storeManagement 也不是必要的设计\nconst registerHooks = (sceneControl: SceneControl): (() => void) => {\n const subscriptions: Subscription[] = []\n\n const sceneCompletedSub = fromMittEvent('scene-completed', sceneControl).subscribe({\n next: (scene) => {\n console.log('场景编译完成', scene)\n },\n })\n subscriptions.push(sceneCompletedSub)\n\n const eventFilterSub = fromMittEvent('event', sceneControl).pipe(\n filter((data) => {\n const eventBus = sceneControl.context.storeManagement.get<EventBus | undefined>('event-bus')\n return (eventBus && eventBus.eventMap.get(data.name)) || !data.global\n }),\n ).subscribe({\n next: (data: any) => {\n sceneControl.context.emitter.emit('message', data)\n },\n })\n subscriptions.push(eventFilterSub)\n\n const messageRoutingSub = fromMittEvent('message', sceneControl).subscribe({\n next: (data: any) => {\n const messageCallback = sceneControl.context.storeManagement.get<((data: any) => void) | undefined>('message')\n messageCallback?.(data)\n },\n })\n subscriptions.push(messageRoutingSub)\n\n return () => {\n subscriptions.forEach(sub => sub.unsubscribe())\n }\n}\n\nexport default registerHooks\n"],"mappings":"AAEA,SAASA,UAAU,EAAEC,MAAM,QAAQ,MAAM;AAGzC;AACA;AACA;AACA;AACA;AACA,OAAO,IAAMC,aAAa,GAAG,SAAhBA,aAAaA,CAAIC,SAAiB,EAAEC,YAA0B,EAAsB;EAC/F,OAAO,IAAIJ,UAAU,CAAC,UAACK,UAAU,EAAK;IACpC,IAAMC,OAAO,GAAG,SAAVA,OAAOA,CAAIC,IAAI,EAAK;MACxBF,UAAU,CAACG,IAAI,CAACD,IAAI,CAAC;IACvB,CAAC;IAEDH,YAAY,CAACK,OAAO,CAACC,OAAO,CAACC,EAAE,CAACR,SAAS,EAAEG,OAAO,CAAC;IAEnD,OAAO,YAAM;MACXF,YAAY,CAACK,OAAO,CAACC,OAAO,CAACE,GAAG,CAACT,SAAS,EAAEG,OAAO,CAAC;IACtD,CAAC;EACH,CAAC,CAAC;AACJ,CAAC;AACD;AACA;AACA,IAAMO,aAAa,GAAG,SAAhBA,aAAaA,CAAIT,YAA0B,EAAmB;EAClE,IAAMU,aAA6B,GAAG,EAAE;EAExC,IAAMC,iBAAiB,GAAGb,aAAa,CAAC,iBAAiB,EAAEE,YAAY,CAAC,CAACY,SAAS,CAAC;IACjFR,IAAI,EAAE,SAAAA,KAACS,KAAK,EAAK;MACfC,OAAO,CAACC,GAAG,CAAC,QAAQ,EAAEF,KAAK,CAAC;IAC9B;EACF,CAAC,CAAC;EACFH,aAAa,CAACM,IAAI,CAACL,iBAAiB,CAAC;EAErC,IAAMM,cAAc,GAAGnB,aAAa,CAAC,OAAO,EAAEE,YAAY,CAAC,CAACkB,IAAI,CAC9DrB,MAAM,CAAC,UAACM,IAAI,EAAK;IACf,IAAMgB,QAAQ,GAAGnB,YAAY,CAACK,OAAO,CAACe,eAAe,CAACC,GAAG,CAAuB,WAAW,CAAC;IAC5F,OAAQF,QAAQ,IAAIA,QAAQ,CAACG,QAAQ,CAACD,GAAG,CAAClB,IAAI,CAACoB,IAAI,CAAC,IAAK,CAACpB,IAAI,CAACqB,MAAM;EACvE,CAAC,CACH,CAAC,CAACZ,SAAS,CAAC;IACVR,IAAI,EAAE,SAAAA,KAACD,IAAS,EAAK;MACnBH,YAAY,CAACK,OAAO,CAACC,OAAO,CAACmB,IAAI,CAAC,SAAS,EAAEtB,IAAI,CAAC;IACpD;EACF,CAAC,CAAC;EACFO,aAAa,CAACM,IAAI,CAACC,cAAc,CAAC;EAElC,IAAMS,iBAAiB,GAAG5B,aAAa,CAAC,SAAS,EAAEE,YAAY,CAAC,CAACY,SAAS,CAAC;IACzER,IAAI,EAAE,SAAAA,KAACD,IAAS,EAAK;MACnB,IAAMwB,eAAe,GAAG3B,YAAY,CAACK,OAAO,CAACe,eAAe,CAACC,GAAG,CAAoC,SAAS,CAAC;MAC9GM,eAAe,aAAfA,eAAe,eAAfA,eAAe,CAAGxB,IAAI,CAAC;IACzB;EACF,CAAC,CAAC;EACFO,aAAa,CAACM,IAAI,CAACU,iBAAiB,CAAC;EAErC,OAAO,YAAM;IACXhB,aAAa,CAACkB,OAAO,CAAC,UAAAC,GAAG;MAAA,OAAIA,GAAG,CAACC,WAAW,CAAC,CAAC;IAAA,EAAC;EACjD,CAAC;AACH,CAAC;AAED,eAAerB,aAAa"}
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import packageJSON from "../package.json";
|
|
2
|
-
import registerHooks from "./hooksManager";
|
|
3
2
|
import Anov3D from "./sdkEntry";
|
|
4
3
|
export var defaultCameraParams = {
|
|
5
4
|
fov: 75,
|
|
@@ -16,7 +15,9 @@ export var defaultCameraParams = {
|
|
|
16
15
|
z: 0
|
|
17
16
|
}
|
|
18
17
|
};
|
|
19
|
-
|
|
18
|
+
|
|
19
|
+
// registerHooks()
|
|
20
|
+
|
|
20
21
|
console.log('Anov3D', packageJSON.version);
|
|
21
22
|
export { createInstance } from "./applicationApi";
|
|
22
23
|
export default Anov3D;
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["packageJSON","
|
|
1
|
+
{"version":3,"names":["packageJSON","Anov3D","defaultCameraParams","fov","near","far","position","x","y","z","lookAt","console","log","version","createInstance"],"sources":["../src/index.ts"],"sourcesContent":["import packageJSON from '../package.json'\nimport Anov3D from './sdkEntry'\n\nexport const defaultCameraParams = {\n fov: 75,\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\n// registerHooks()\n\nconsole.log('Anov3D', packageJSON.version)\n\nexport { createInstance } from './applicationApi'\nexport default Anov3D\n"],"mappings":"AAAA,OAAOA,WAAW;AAClB,OAAOC,MAAM;AAEb,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;;AAED;;AAEAE,OAAO,CAACC,GAAG,CAAC,QAAQ,EAAEZ,WAAW,CAACa,OAAO,CAAC;AAE1C,SAASC,cAAc;AACvB,eAAeb,MAAM"}
|
|
@@ -51,14 +51,12 @@ var Motion = /*#__PURE__*/function () {
|
|
|
51
51
|
path = [[x, y, z], position];
|
|
52
52
|
}
|
|
53
53
|
if (!path) throw new Error('path not exist');
|
|
54
|
-
this.animationMotion = new AnimationMotion(entity, path, _objectSpread({}, json.vars));
|
|
54
|
+
this.animationMotion = new AnimationMotion(entity, path, _objectSpread({}, json.vars), this.app.sceneControl);
|
|
55
55
|
}
|
|
56
56
|
}, {
|
|
57
57
|
key: "findTubeGeometry",
|
|
58
58
|
value: function findTubeGeometry(object) {
|
|
59
|
-
if (object.type === 'Mesh' && object.geometry.type ===
|
|
60
|
-
return object.geometry;
|
|
61
|
-
}
|
|
59
|
+
if (object.type === 'Mesh' && object.geometry.type === 'TubeGeometry') return object.geometry;
|
|
62
60
|
var _iterator = _createForOfIteratorHelper(object.children),
|
|
63
61
|
_step;
|
|
64
62
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["AnimationMotion","hybridList","Motion","app","_classCallCheck","_defineProperty","_createClass","key","value","to","json","entityId","target","_json$vars","vars","position","motionPath","entity","get","Error","concat","path","Array","isArray","_motionPath$path","map","item","line","tubeGeometry","findTubeGeometry","parameters","_entity$position","x","y","z","animationMotion","_objectSpread","object","type","geometry","_iterator","_createForOfIteratorHelper","children","_step","s","n","done","child","result","err","e","f","play","pause","restart","reverse","_delete","delete","update"],"sources":["../../../../src/module/animation/motion/index.ts"],"sourcesContent":["import { AnimationMotion } from '@anov/3d-ability'\nimport type { Mesh, TubeGeometry } from '@anov/3d-core'\nimport { hybridList } from '../../entity'\nimport type Anov3D from '../../../sdkEntry'\n\ntype Option = {\n id: string\n target: string\n vars: Partial<{\n position: [number, number, number]\n speed: number\n duration: number\n paused: boolean\n repeat: number\n yoyo: boolean\n ease: string\n motionPath: {\n path: any\n }\n }>\n}\n\nclass Motion {\n app: Anov3D\n animationMotion: AnimationMotion\n constructor(app: Anov3D) {\n this.app = app\n }\n\n to(json: Option) {\n const { target: entityId, vars: { position, motionPath } } = json\n const entity = hybridList.get(entityId)\n if (!entity)\n throw new Error(`entity ${entityId} is not exist`)\n\n let path\n if (motionPath?.path) { // 路径动画\n if (Array.isArray(motionPath.path)) {\n path = motionPath.path?.map(item => item.position)\n }\n else {\n const line = hybridList.get(motionPath.path)\n if (!line)\n throw new Error(`path ${entityId} is not exist`)\n
|
|
1
|
+
{"version":3,"names":["AnimationMotion","hybridList","Motion","app","_classCallCheck","_defineProperty","_createClass","key","value","to","json","entityId","target","_json$vars","vars","position","motionPath","entity","get","Error","concat","path","Array","isArray","_motionPath$path","map","item","line","tubeGeometry","findTubeGeometry","parameters","_entity$position","x","y","z","animationMotion","_objectSpread","sceneControl","object","type","geometry","_iterator","_createForOfIteratorHelper","children","_step","s","n","done","child","result","err","e","f","play","pause","restart","reverse","_delete","delete","update"],"sources":["../../../../src/module/animation/motion/index.ts"],"sourcesContent":["import { AnimationMotion } from '@anov/3d-ability'\nimport type { Mesh, TubeGeometry } from '@anov/3d-core'\nimport { hybridList } from '../../entity'\nimport type Anov3D from '../../../sdkEntry'\n\ntype Option = {\n id: string\n target: string\n vars: Partial<{\n position: [number, number, number]\n speed: number\n duration: number\n paused: boolean\n repeat: number\n yoyo: boolean\n ease: string\n motionPath: {\n path: any\n }\n }>\n}\n\nclass Motion {\n app: Anov3D\n animationMotion: AnimationMotion\n constructor(app: Anov3D) {\n this.app = app\n }\n\n to(json: Option) {\n const { target: entityId, vars: { position, motionPath } } = json\n const entity = hybridList.get(entityId)\n if (!entity)\n throw new Error(`entity ${entityId} is not exist`)\n\n let path\n if (motionPath?.path) { // 路径动画\n if (Array.isArray(motionPath.path)) {\n path = motionPath.path?.map(item => item.position)\n }\n else {\n const line = hybridList.get(motionPath.path)\n if (!line)\n throw new Error(`path ${entityId} is not exist`)\n const tubeGeometry = line && this.findTubeGeometry(line)\n path = tubeGeometry && tubeGeometry.parameters.path\n }\n }\n else if (position) { // 基础路径动画\n const { x, y, z } = entity.position\n path = [\n [x, y, z],\n position,\n ]\n }\n if (!path)\n throw new Error('path not exist')\n this.animationMotion = new AnimationMotion(entity, path, { ...json.vars }, this.app.sceneControl)\n }\n\n findTubeGeometry(object) {\n if (object.type === 'Mesh' && object.geometry.type === 'TubeGeometry')\n return object.geometry\n\n for (const child of object.children) {\n const result = this.findTubeGeometry(child)\n if (result)\n return result // 找到后立即返回\n }\n\n return null\n }\n\n play() {\n this.animationMotion.play()\n }\n\n pause() {\n this.animationMotion.pause()\n }\n\n restart() {\n this.animationMotion.restart()\n }\n\n reverse() {\n }\n\n delete() {\n this.animationMotion.delete()\n }\n\n update() {\n\n }\n}\n\nexport default Motion"],"mappings":"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"}
|
|
@@ -32,7 +32,7 @@ var Camera = /*#__PURE__*/function () {
|
|
|
32
32
|
this.cameraUtils = new CameraExpand(this.camera, this.controls, app.sceneControl);
|
|
33
33
|
this.cameraUtils.addEventListener('change', function () {
|
|
34
34
|
if (_this.cameraUtils.isTransitionPeriod && _this.isTrigger) {
|
|
35
|
-
sendToMessage({
|
|
35
|
+
sendToMessage(_this.app, {
|
|
36
36
|
messageType: MessageType.Event,
|
|
37
37
|
messageName: 'onCameraChanged',
|
|
38
38
|
status: EMessageStatus.Success
|
|
@@ -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","ownKeys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","apply","_objectSpread","arguments","_defineProperty","getOwnPropertyDescriptors","defineProperties","asyncGeneratorStep","gen","reject","_next","_throw","key","info","error","_asyncToGenerator","fn","self","args","err","undefined","_classCallCheck","instance","Constructor","_defineProperties","target","props","descriptor","_toPropertyKey","_createClass","protoProps","staticProps","obj","_toPrimitive","String","toPrimitive","Number","Box3","MathUtils","Vector3","PerspectiveCameraExpand","CameraExpand","StateMachine","MessageType","sendToMessage","EMessageStatus","hybridList","Camera","app","_this","camera","sceneControl","controls","cameraUtils","addEventListener","isTransitionPeriod","isTrigger","messageType","Event","messageName","status","Success","position","toArray","_focus","_callee","params","_params$isTrigger","point","entity","box","_callee$","_context","get","concat","updateMatrixWorld","setFromObject","min","x","z","max","focus","_x","setCameraMode","setCameraOption","baseParams","fov","setCameraLimitOption","_","_2","_3","pitchLimit","yawLimit","distanceLimit","minDistance","maxDistance","minPolarAngle","degToRad","maxPolarAngle","minAzimuthAngle","maxAzimuthAngle","setCameraPosition","copy","fromArray","setCameraAngle","pitch","yaw","distance","setCameraDistance","setYaw","setPitch","direction","subVectors","normalize","newPosition","clone","add","multiplyScalar","setCameraTarget","_set","_callee2","_this2","_params$fov","_params$isTrigger2","_params$target","fsm","_callee2$","_context2","init","transitions","from","to","methods","onHandleBaseOption","onHandleMode","onHandleTarget","onHandlePosition","onHandleAngle","onHandleLimit","handleBaseOption","handleMode","handleTarget","handlePosition","handleAngle","handleLimit","set","_x2","mode","distanceTo","follow","_params$pitch","_params$yaw","_params$distance","_params$relativeRotat","relativeRotation","targetObject","cancelAllFollow","cancelFollow"],"sources":["../../../src/module/camera/index.ts"],"sourcesContent":["import { Box3, MathUtils, type OrbitControls, type PerspectiveCamera, Vector3 } from '@anov/3d-core'\nimport { PerspectiveCameraExpand as CameraExpand } from '@anov/3d-ability'\nimport StateMachine from 'javascript-state-machine'\nimport { MessageType, sendToMessage } from '../../utils/messageFn'\nimport type { BaseModule } from '../../utils/abstract'\nimport { EMessageStatus } from '../../messageStatus'\nimport type Anov3D from '../../sdkEntry'\nimport { hybridList } from '../entity'\nimport type { CameraAngleParams, CameraLimitParams, CameraSetOptions, baseCameraParams } from './type'\n\ntype vector3Array = [number, number, number]\n\nclass Camera implements BaseModule {\n app: Anov3D\n private camera: PerspectiveCamera\n private controls: OrbitControls\n private cameraUtils: CameraExpand\n private target = new Vector3(0, 0, 0)\n private isTrigger = true\n\n constructor(app: Anov3D) {\n this.app = app\n this.camera = app.sceneControl.camera!\n this.controls = app.sceneControl.controls!\n this.cameraUtils = new CameraExpand(this.camera, this.controls, app.sceneControl)\n\n this.cameraUtils.addEventListener('change', () => {\n if ((this.cameraUtils.isTransitionPeriod && this.isTrigger)) {\n sendToMessage(\n {\n messageType: MessageType.Event,\n messageName: 'onCameraChanged',\n status: EMessageStatus.Success,\n },\n {\n position: this.camera.position.toArray(),\n target: this.controls.target.toArray(),\n })\n }\n })\n }\n\n /**\n * focus camera\n * @param params\n */\n async focus(params: {\n target: vector3Array | vector3Array[] | string\n pitch?: number\n yaw?: number\n distance?: number\n duration?: number\n isTrigger?: boolean\n }) {\n const { target, isTrigger = true } = params\n let point = target\n\n this.isTrigger = isTrigger\n\n if (typeof point === 'string') {\n const entity = hybridList.get(point)\n\n if (!entity)\n throw new Error(`entity ${target} not found`)\n\n entity.updateMatrixWorld()\n const box = new Box3().setFromObject(entity)\n\n point = [\n new Vector3(box.min.x, box.min.y, box.min.z).toArray(), new Vector3(box.min.x, box.min.y, box.max.z).toArray(),\n new Vector3(box.min.x, box.max.y, box.min.z).toArray(), new Vector3(box.min.x, box.max.y, box.max.z).toArray(),\n new Vector3(box.max.x, box.min.y, box.min.z).toArray(), new Vector3(box.max.x, box.min.y, box.max.z).toArray(),\n new Vector3(box.max.x, box.max.y, box.min.z).toArray(), new Vector3(box.max.x, box.max.y, box.max.z).toArray(),\n ]\n }\n\n return await this.cameraUtils.focus({\n ...params,\n target: point,\n\n })\n }\n\n /**\n * set camera mode, example:free、orbit、firstPerson\n */\n private setCameraMode() {\n // now only support orbit mode, so now do nothing\n }\n\n /**\n * set camera base option, example:fov\n */\n private setCameraOption(baseParams: baseCameraParams) {\n const { fov } = baseParams\n this.camera.fov = fov\n }\n\n /**\n * set camera limit option, example:pitchLimit、yawLimit、distanceLimit\n * @param params\n */\n private setCameraLimitOption(params: CameraLimitParams) {\n const { pitchLimit, yawLimit, distanceLimit } = params\n\n distanceLimit && (this.controls.minDistance = distanceLimit![0])\n distanceLimit && (this.controls.maxDistance = distanceLimit![1] ?? distanceLimit![0])\n\n // TODO: 不能使用控制器的相关参数控制,需要与游戏引擎保持一致\n\n pitchLimit && (this.controls.minPolarAngle = MathUtils.degToRad(pitchLimit![0]))\n pitchLimit && (this.controls.maxPolarAngle = MathUtils.degToRad(pitchLimit![1] ?? pitchLimit![0]))\n\n yawLimit && (this.controls.minAzimuthAngle = MathUtils.degToRad(yawLimit![0]))\n yawLimit && (this.controls.maxAzimuthAngle = MathUtils.degToRad(yawLimit![1] ?? yawLimit![0]))\n }\n\n /**\n * set camera position、target、distance\n */\n private setCameraPosition(position: number[]) {\n this.camera.position.copy(new Vector3().fromArray(position))\n }\n\n /**\n * set camera angle, example:pitch、yaw、distance\n * @param params\n */\n private setCameraAngle(params: CameraAngleParams) {\n const { pitch, yaw, distance } = params\n distance && this.setCameraDistance(distance)\n\n yaw !== undefined && this.cameraUtils.setYaw(yaw)\n pitch !== undefined && this.cameraUtils.setPitch(pitch)\n }\n\n private setCameraDistance(distance: number) {\n const target = this.controls.target\n const position = this.camera.position\n\n const direction = new Vector3().subVectors(position, target).normalize()\n const newPosition = target.clone().add(direction.multiplyScalar(distance))\n\n this.camera.position.copy(newPosition)\n }\n\n private setCameraTarget(target: number[] = this.target.toArray()) {\n this.controls.target.copy(new Vector3().fromArray(target))\n }\n\n /**\n * set camera\n * @param params\n */\n async set(params: CameraSetOptions) {\n const { fov = 45, isTrigger = true, target = [0, 0, 0], position, distance, pitch, yaw, pitchLimit, yawLimit, distanceLimit } = params\n this.target = new Vector3().fromArray(target)\n\n const fsm = new StateMachine({\n init: 'start',\n transitions: [\n { name: 'handleBaseOption', from: 'start', to: 'setBaseOption' },\n { name: 'handleMode', from: 'setBaseOption', to: 'setCameraMode' },\n { name: 'handleTarget', from: 'setCameraMode', to: 'setCameraTarget' },\n { name: 'handleMiddel', from: 'setCameraTarget', to: '*' },\n { name: 'handlePosition', from: '*', to: 'setCameraLimitOption' },\n { name: 'handleAngle', from: '*', to: 'setCameraLimitOption' },\n { name: 'handleLimit', from: '*' },\n ],\n methods: {\n onHandleBaseOption: () => this.setCameraOption({ fov }),\n onHandleMode: () => this.setCameraMode(),\n onHandleTarget: () => this.setCameraTarget(target),\n onHandlePosition: () => this.setCameraPosition(position),\n onHandleAngle: () => { this.setCameraAngle({ pitch, yaw, distance }) },\n onHandleLimit: () => this.setCameraLimitOption({ pitchLimit, yawLimit, distanceLimit }),\n },\n })\n\n fsm.handleBaseOption()\n fsm.handleMode()\n fsm.handleTarget()\n position ? fsm.handlePosition() : fsm.handleAngle()\n fsm.handleLimit()\n\n this.isTrigger = isTrigger\n\n return this.get()\n }\n\n /**\n * get Camera info\n * @returns\n */\n get() {\n return {\n fov: this.camera.fov,\n mode: 'orbitCamera',\n position: [this.camera.position.x, this.camera.position.y, this.camera.position.z],\n target: [this.controls.target.x, this.controls.target.y, this.controls.target.z],\n distance: this.controls.target.distanceTo(this.camera.position),\n pitch: this.cameraUtils.pitch,\n yaw: this.cameraUtils.yaw,\n }\n }\n\n /**\n * follow object\n * @param params\n */\n follow(params: {\n target: string\n pitch?: number\n yaw?: number\n distance?: number\n relativeRotation?: boolean\n }) {\n const { target, pitch = 30, yaw = 0, distance = 0, relativeRotation = false } = params\n const targetObject = hybridList.get(target)\n\n this.cameraUtils.cancelAllFollow()\n\n return this.cameraUtils.follow(\n targetObject,\n this.camera,\n {\n relativeRotation,\n pitch,\n yaw,\n distance,\n },\n )\n }\n\n /**\n * cancel follow\n */\n cancelFollow() {\n this.cameraUtils.cancelAllFollow()\n }\n}\n\nexport default Camera"],"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","ownKeys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","apply","_objectSpread","arguments","_defineProperty","getOwnPropertyDescriptors","defineProperties","asyncGeneratorStep","gen","reject","_next","_throw","key","info","error","_asyncToGenerator","fn","self","args","err","undefined","_classCallCheck","instance","Constructor","_defineProperties","target","props","descriptor","_toPropertyKey","_createClass","protoProps","staticProps","obj","_toPrimitive","String","toPrimitive","Number","Box3","MathUtils","Vector3","PerspectiveCameraExpand","CameraExpand","StateMachine","MessageType","sendToMessage","EMessageStatus","hybridList","Camera","app","_this","camera","sceneControl","controls","cameraUtils","addEventListener","isTransitionPeriod","isTrigger","messageType","Event","messageName","status","Success","position","toArray","_focus","_callee","params","_params$isTrigger","point","entity","box","_callee$","_context","get","concat","updateMatrixWorld","setFromObject","min","x","z","max","focus","_x","setCameraMode","setCameraOption","baseParams","fov","setCameraLimitOption","_","_2","_3","pitchLimit","yawLimit","distanceLimit","minDistance","maxDistance","minPolarAngle","degToRad","maxPolarAngle","minAzimuthAngle","maxAzimuthAngle","setCameraPosition","copy","fromArray","setCameraAngle","pitch","yaw","distance","setCameraDistance","setYaw","setPitch","direction","subVectors","normalize","newPosition","clone","add","multiplyScalar","setCameraTarget","_set","_callee2","_this2","_params$fov","_params$isTrigger2","_params$target","fsm","_callee2$","_context2","init","transitions","from","to","methods","onHandleBaseOption","onHandleMode","onHandleTarget","onHandlePosition","onHandleAngle","onHandleLimit","handleBaseOption","handleMode","handleTarget","handlePosition","handleAngle","handleLimit","set","_x2","mode","distanceTo","follow","_params$pitch","_params$yaw","_params$distance","_params$relativeRotat","relativeRotation","targetObject","cancelAllFollow","cancelFollow"],"sources":["../../../src/module/camera/index.ts"],"sourcesContent":["import { Box3, MathUtils, type ControlsType, type PerspectiveCamera, Vector3 } from '@anov/3d-core'\nimport { PerspectiveCameraExpand as CameraExpand } from '@anov/3d-ability'\nimport StateMachine from 'javascript-state-machine'\nimport { MessageType, sendToMessage } from '../../utils/messageFn'\nimport type { BaseModule } from '../../utils/abstract'\nimport { EMessageStatus } from '../../messageStatus'\nimport type Anov3D from '../../sdkEntry'\nimport { hybridList } from '../entity'\nimport type { CameraAngleParams, CameraLimitParams, CameraSetOptions, baseCameraParams } from './type'\n\ntype vector3Array = [number, number, number]\n\nclass Camera implements BaseModule {\n app: Anov3D\n private camera: PerspectiveCamera\n private controls: ControlsType\n private cameraUtils: CameraExpand\n private target = new Vector3(0, 0, 0)\n private isTrigger = true\n\n constructor(app: Anov3D) {\n this.app = app\n this.camera = app.sceneControl.camera!\n this.controls = app.sceneControl.controls!\n this.cameraUtils = new CameraExpand(this.camera, this.controls, app.sceneControl)\n\n this.cameraUtils.addEventListener('change', () => {\n if ((this.cameraUtils.isTransitionPeriod && this.isTrigger)) {\n sendToMessage(\n this.app,\n {\n messageType: MessageType.Event,\n messageName: 'onCameraChanged',\n status: EMessageStatus.Success,\n },\n {\n position: this.camera.position.toArray(),\n target: this.controls.target.toArray(),\n })\n }\n })\n }\n\n /**\n * focus camera\n * @param params\n */\n async focus(params: {\n target: vector3Array | vector3Array[] | string\n pitch?: number\n yaw?: number\n distance?: number\n duration?: number\n isTrigger?: boolean\n }) {\n const { target, isTrigger = true } = params\n let point = target\n\n this.isTrigger = isTrigger\n\n if (typeof point === 'string') {\n const entity = hybridList.get(point)\n\n if (!entity)\n throw new Error(`entity ${target} not found`)\n\n entity.updateMatrixWorld()\n const box = new Box3().setFromObject(entity)\n\n point = [\n new Vector3(box.min.x, box.min.y, box.min.z).toArray(), new Vector3(box.min.x, box.min.y, box.max.z).toArray(),\n new Vector3(box.min.x, box.max.y, box.min.z).toArray(), new Vector3(box.min.x, box.max.y, box.max.z).toArray(),\n new Vector3(box.max.x, box.min.y, box.min.z).toArray(), new Vector3(box.max.x, box.min.y, box.max.z).toArray(),\n new Vector3(box.max.x, box.max.y, box.min.z).toArray(), new Vector3(box.max.x, box.max.y, box.max.z).toArray(),\n ]\n }\n\n return await this.cameraUtils.focus({\n ...params,\n target: point,\n\n })\n }\n\n /**\n * set camera mode, example:free、orbit、firstPerson\n */\n private setCameraMode() {\n // now only support orbit mode, so now do nothing\n }\n\n /**\n * set camera base option, example:fov\n */\n private setCameraOption(baseParams: baseCameraParams) {\n const { fov } = baseParams\n this.camera.fov = fov\n }\n\n /**\n * set camera limit option, example:pitchLimit、yawLimit、distanceLimit\n * @param params\n */\n private setCameraLimitOption(params: CameraLimitParams) {\n const { pitchLimit, yawLimit, distanceLimit } = params\n\n distanceLimit && (this.controls.minDistance = distanceLimit![0])\n distanceLimit && (this.controls.maxDistance = distanceLimit![1] ?? distanceLimit![0])\n\n // TODO: 不能使用控制器的相关参数控制,需要与游戏引擎保持一致\n\n pitchLimit && (this.controls.minPolarAngle = MathUtils.degToRad(pitchLimit![0]))\n pitchLimit && (this.controls.maxPolarAngle = MathUtils.degToRad(pitchLimit![1] ?? pitchLimit![0]))\n\n yawLimit && (this.controls.minAzimuthAngle = MathUtils.degToRad(yawLimit![0]))\n yawLimit && (this.controls.maxAzimuthAngle = MathUtils.degToRad(yawLimit![1] ?? yawLimit![0]))\n }\n\n /**\n * set camera position、target、distance\n */\n private setCameraPosition(position: number[]) {\n this.camera.position.copy(new Vector3().fromArray(position))\n }\n\n /**\n * set camera angle, example:pitch、yaw、distance\n * @param params\n */\n private setCameraAngle(params: CameraAngleParams) {\n const { pitch, yaw, distance } = params\n distance && this.setCameraDistance(distance)\n\n yaw !== undefined && this.cameraUtils.setYaw(yaw)\n pitch !== undefined && this.cameraUtils.setPitch(pitch)\n }\n\n private setCameraDistance(distance: number) {\n const target = this.controls.target\n const position = this.camera.position\n\n const direction = new Vector3().subVectors(position, target).normalize()\n const newPosition = target.clone().add(direction.multiplyScalar(distance))\n\n this.camera.position.copy(newPosition)\n }\n\n private setCameraTarget(target: number[] = this.target.toArray()) {\n this.controls.target.copy(new Vector3().fromArray(target))\n }\n\n /**\n * set camera\n * @param params\n */\n async set(params: CameraSetOptions) {\n const { fov = 45, isTrigger = true, target = [0, 0, 0], position, distance, pitch, yaw, pitchLimit, yawLimit, distanceLimit } = params\n this.target = new Vector3().fromArray(target)\n\n const fsm = new StateMachine({\n init: 'start',\n transitions: [\n { name: 'handleBaseOption', from: 'start', to: 'setBaseOption' },\n { name: 'handleMode', from: 'setBaseOption', to: 'setCameraMode' },\n { name: 'handleTarget', from: 'setCameraMode', to: 'setCameraTarget' },\n { name: 'handleMiddel', from: 'setCameraTarget', to: '*' },\n { name: 'handlePosition', from: '*', to: 'setCameraLimitOption' },\n { name: 'handleAngle', from: '*', to: 'setCameraLimitOption' },\n { name: 'handleLimit', from: '*' },\n ],\n methods: {\n onHandleBaseOption: () => this.setCameraOption({ fov }),\n onHandleMode: () => this.setCameraMode(),\n onHandleTarget: () => this.setCameraTarget(target),\n onHandlePosition: () => this.setCameraPosition(position),\n onHandleAngle: () => { this.setCameraAngle({ pitch, yaw, distance }) },\n onHandleLimit: () => this.setCameraLimitOption({ pitchLimit, yawLimit, distanceLimit }),\n },\n })\n\n fsm.handleBaseOption()\n fsm.handleMode()\n fsm.handleTarget()\n position ? fsm.handlePosition() : fsm.handleAngle()\n fsm.handleLimit()\n\n this.isTrigger = isTrigger\n\n return this.get()\n }\n\n /**\n * get Camera info\n * @returns\n */\n get() {\n return {\n fov: this.camera.fov,\n mode: 'orbitCamera',\n position: [this.camera.position.x, this.camera.position.y, this.camera.position.z],\n target: [this.controls.target.x, this.controls.target.y, this.controls.target.z],\n distance: this.controls.target.distanceTo(this.camera.position),\n pitch: this.cameraUtils.pitch,\n yaw: this.cameraUtils.yaw,\n }\n }\n\n /**\n * follow object\n * @param params\n */\n follow(params: {\n target: string\n pitch?: number\n yaw?: number\n distance?: number\n relativeRotation?: boolean\n }) {\n const { target, pitch = 30, yaw = 0, distance = 0, relativeRotation = false } = params\n const targetObject = hybridList.get(target)\n\n this.cameraUtils.cancelAllFollow()\n\n return this.cameraUtils.follow(\n targetObject,\n this.camera,\n {\n relativeRotation,\n pitch,\n yaw,\n distance,\n },\n )\n }\n\n /**\n * cancel follow\n */\n cancelFollow() {\n this.cameraUtils.cancelAllFollow()\n }\n}\n\nexport default Camera"],"mappings":"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"}
|
|
@@ -20,9 +20,9 @@ import BaseEntity from "../baseEntity";
|
|
|
20
20
|
var Area = /*#__PURE__*/function (_BaseEntity) {
|
|
21
21
|
_inherits(Area, _BaseEntity);
|
|
22
22
|
var _super = _createSuper(Area);
|
|
23
|
-
function Area() {
|
|
23
|
+
function Area(sceneControl) {
|
|
24
24
|
_classCallCheck(this, Area);
|
|
25
|
-
return _super.
|
|
25
|
+
return _super.call(this, sceneControl);
|
|
26
26
|
}
|
|
27
27
|
_createClass(Area, [{
|
|
28
28
|
key: "create",
|
|
@@ -85,7 +85,7 @@ var Area = /*#__PURE__*/function (_BaseEntity) {
|
|
|
85
85
|
value: function _createMesh(options) {
|
|
86
86
|
// const option: AreaOption = flattenObject(options)
|
|
87
87
|
// option.path = options.path
|
|
88
|
-
var mesh = new AreaManage(options);
|
|
88
|
+
var mesh = new AreaManage(options, this.sceneControl);
|
|
89
89
|
mesh.userData.option = options;
|
|
90
90
|
return mesh;
|
|
91
91
|
}
|
|
@@ -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","_classCallCheck","instance","Constructor","_defineProperties","target","props","descriptor","_toPropertyKey","_createClass","protoProps","staticProps","_toPrimitive","String","toPrimitive","Number","_inherits","subClass","superClass","_setPrototypeOf","bind","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf","result","NewTarget","Reflect","construct","_possibleConstructorReturn","_assertThisInitialized","ReferenceError","sham","Proxy","Boolean","valueOf","Area","AreaManage","_","BaseEntity","_BaseEntity","_super","_create","_callee","json","mesh","_callee$","_context","_createMesh","userData","option","addToScene","_x","_update","_callee2","mergedOption","_callee2$","_context2","isSpecifiedFieldsChanged","mergeWith","customizer","parent","removeFromParent","update","_x2","_x3","options"],"sources":["../../../../src/module/entity/area/index.ts"],"sourcesContent":["import type { Object3D } from '@anov/3d-core'\nimport { Area as AreaManage } from '@anov/3d-ability'\nimport _ from 'lodash'\nimport BaseEntity from '../baseEntity'\nimport { flattenObject } from '../utils'\nimport type { Option } from './type'\n\ntype AreaOption = { path: {} } & any\nclass Area extends BaseEntity {\n async create(json: Option): Promise<Object3D> {\n const mesh = await this._createMesh(json)\n mesh.userData.option = json\n this.addToScene(mesh, json)\n return mesh\n }\n\n async update(mesh: Object3D, json: Option): Promise<Object3D> {\n if (this.isSpecifiedFieldsChanged(json)) {\n this.addToScene(mesh, json, false)\n return mesh\n }\n\n const option = mesh.userData.option || {}\n const mergedOption = _.mergeWith({}, option, json, this.customizer)\n mesh.parent && mesh.removeFromParent()\n return this.create(mergedOption)\n }\n\n private _createMesh(options): Object3D {\n // const option: AreaOption = flattenObject(options)\n // option.path = options.path\n const mesh = new AreaManage(options)\n mesh.userData.option = options\n return mesh\n }\n}\n\nexport default Area\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","_classCallCheck","instance","Constructor","_defineProperties","target","props","descriptor","_toPropertyKey","_createClass","protoProps","staticProps","_toPrimitive","String","toPrimitive","Number","_inherits","subClass","superClass","_setPrototypeOf","bind","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf","result","NewTarget","Reflect","construct","_possibleConstructorReturn","_assertThisInitialized","ReferenceError","sham","Proxy","Boolean","valueOf","Area","AreaManage","_","BaseEntity","_BaseEntity","_super","sceneControl","_create","_callee","json","mesh","_callee$","_context","_createMesh","userData","option","addToScene","_x","_update","_callee2","mergedOption","_callee2$","_context2","isSpecifiedFieldsChanged","mergeWith","customizer","parent","removeFromParent","update","_x2","_x3","options"],"sources":["../../../../src/module/entity/area/index.ts"],"sourcesContent":["import type { Object3D, SceneControl } from '@anov/3d-core'\nimport { Area as AreaManage } from '@anov/3d-ability'\nimport _ from 'lodash'\nimport BaseEntity from '../baseEntity'\nimport { flattenObject } from '../utils'\nimport type { Option } from './type'\n\ntype AreaOption = { path: {} } & any\nclass Area extends BaseEntity {\n constructor(sceneControl: SceneControl) {\n super(sceneControl)\n }\n\n async create(json: Option): Promise<Object3D> {\n const mesh = await this._createMesh(json)\n mesh.userData.option = json\n this.addToScene(mesh, json)\n return mesh\n }\n\n async update(mesh: Object3D, json: Option): Promise<Object3D> {\n if (this.isSpecifiedFieldsChanged(json)) {\n this.addToScene(mesh, json, false)\n return mesh\n }\n\n const option = mesh.userData.option || {}\n const mergedOption = _.mergeWith({}, option, json, this.customizer)\n mesh.parent && mesh.removeFromParent()\n return this.create(mergedOption)\n }\n\n private _createMesh(options): Object3D {\n // const option: AreaOption = flattenObject(options)\n // option.path = options.path\n const mesh = new AreaManage(options, this.sceneControl)\n mesh.userData.option = options\n return mesh\n }\n}\n\nexport default Area\n"],"mappings":"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"}
|
|
@@ -5,12 +5,21 @@ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _d
|
|
|
5
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
6
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
|
|
7
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
|
-
import { MathUtils
|
|
8
|
+
import { MathUtils } from '@anov/3d-core';
|
|
9
9
|
var BaseEntity = /*#__PURE__*/function () {
|
|
10
|
-
function BaseEntity() {
|
|
10
|
+
function BaseEntity(sceneControl) {
|
|
11
11
|
_classCallCheck(this, BaseEntity);
|
|
12
|
+
_defineProperty(this, "sceneControl", void 0);
|
|
13
|
+
this.sceneControl = sceneControl;
|
|
12
14
|
}
|
|
15
|
+
|
|
16
|
+
/** @deprecated 请使用 constructor(sceneControl: SceneControl) 初始化 */
|
|
13
17
|
_createClass(BaseEntity, [{
|
|
18
|
+
key: "setSceneControl",
|
|
19
|
+
value: function setSceneControl(sceneControl) {
|
|
20
|
+
this.sceneControl = sceneControl;
|
|
21
|
+
}
|
|
22
|
+
}, {
|
|
14
23
|
key: "customizer",
|
|
15
24
|
value: function customizer(objValue, srcValue) {
|
|
16
25
|
if (Array.isArray(objValue) && srcValue) return srcValue;
|
|
@@ -30,8 +39,8 @@ var BaseEntity = /*#__PURE__*/function () {
|
|
|
30
39
|
value: function addToScene(mesh, options) {
|
|
31
40
|
var shouldAdd = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
|
|
32
41
|
this.applyTransforms(mesh, options);
|
|
33
|
-
if (shouldAdd) {
|
|
34
|
-
var scene =
|
|
42
|
+
if (shouldAdd && this.sceneControl) {
|
|
43
|
+
var scene = this.sceneControl.context.scene;
|
|
35
44
|
if (!scene.children.includes(mesh)) scene.add(mesh);
|
|
36
45
|
}
|
|
37
46
|
return mesh;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["MathUtils","
|
|
1
|
+
{"version":3,"names":["MathUtils","BaseEntity","sceneControl","_classCallCheck","_defineProperty","_createClass","key","value","setSceneControl","customizer","objValue","srcValue","Array","isArray","isSpecifiedFieldsChanged","changes","whitelist","arguments","length","undefined","PRESERVE_FIELDS","Object","keys","every","includes","addToScene","mesh","options","shouldAdd","applyTransforms","scene","context","children","add","_validateTransform","Error","concat","JSON","stringify","position","scale","rotation","fromArray","set","degToRad","visible","error","console","_handleTransformError"],"sources":["../../../src/module/entity/baseEntity.ts"],"sourcesContent":["import type { Object3D, SceneControl } from '@anov/3d-core'\nimport type { Option } from './type'\nimport { MathUtils } from '@anov/3d-core'\n\nclass BaseEntity {\n protected static readonly PRESERVE_FIELDS = ['id', 'visible', 'position', 'scale', 'rotation']\n protected sceneControl: SceneControl\n\n constructor(sceneControl: SceneControl) {\n this.sceneControl = sceneControl\n }\n\n /** @deprecated 请使用 constructor(sceneControl: SceneControl) 初始化 */\n setSceneControl(sceneControl: SceneControl) {\n this.sceneControl = sceneControl\n }\n\n protected customizer(objValue: any, srcValue: any): any {\n if (Array.isArray(objValue) && srcValue)\n return srcValue\n }\n\n protected isSpecifiedFieldsChanged(changes: object, whitelist = BaseEntity.PRESERVE_FIELDS): boolean {\n return Object.keys(changes).every(key =>\n whitelist.includes(key),\n )\n }\n\n /** 场景添加操作 */\n protected addToScene(mesh: Object3D, options: Option, shouldAdd = true): Object3D {\n this.applyTransforms(mesh, options)\n\n if (shouldAdd && this.sceneControl) {\n const scene = this.sceneControl.context.scene\n if (!scene.children.includes(mesh))\n scene.add(mesh)\n }\n return mesh\n }\n\n /** 三维变换属性校验器 */\n private _validateTransform<T extends number[]>(value: T, length: number): T | never {\n if (!value || value.length !== length)\n throw new Error(`Invalid transform data: ${JSON.stringify(value)}`)\n\n return value\n }\n\n /** 三维对象应用器 */\n applyTransforms(mesh: Object3D, options: Option): void {\n try {\n const { position, scale, rotation } = options\n\n if (position)\n mesh.position.fromArray(this._validateTransform(position, 3))\n\n if (scale)\n mesh.scale.fromArray(this._validateTransform(scale, 3))\n\n if (rotation)\n mesh.rotation.set(MathUtils.degToRad(rotation[0]), MathUtils.degToRad(rotation[1]), MathUtils.degToRad(rotation[2]))\n // mesh.rotation.fromArray(this._validateTransform(rotation, 3))\n\n if (options.visible !== undefined)\n mesh.visible = options.visible\n }\n catch (error) {\n console.error(error, 'error')\n this._handleTransformError(error, options)\n throw error\n }\n }\n\n private _handleTransformError(error: Error, options: Option): void {\n console.error(`Transform application failed for options: ${JSON.stringify(options)}`, error)\n // 可扩展错误恢复逻辑\n }\n}\n\nexport default BaseEntity\n"],"mappings":"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"}
|