@anov/3d 0.0.322 → 0.0.323

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/anov3d.js +8 -64
  2. package/dist/anov3d.js.map +1 -1
  3. package/dist/applicationApi.js +16 -50
  4. package/dist/applicationApi.js.map +1 -1
  5. package/dist/applicationApiType.js.map +1 -1
  6. package/dist/hooksManager.js +35 -43
  7. package/dist/hooksManager.js.map +1 -1
  8. package/dist/index.js +2 -3
  9. package/dist/index.js.map +1 -1
  10. package/dist/module/animation/motion/index.js +4 -2
  11. package/dist/module/animation/motion/index.js.map +1 -1
  12. package/dist/module/camera/index.js.map +1 -1
  13. package/dist/module/entity/area/index.js +3 -3
  14. package/dist/module/entity/area/index.js.map +1 -1
  15. package/dist/module/entity/baseEntity.js +4 -13
  16. package/dist/module/entity/baseEntity.js.map +1 -1
  17. package/dist/module/entity/batch/index.js +10 -12
  18. package/dist/module/entity/batch/index.js.map +1 -1
  19. package/dist/module/entity/flyline/index.js +3 -3
  20. package/dist/module/entity/flyline/index.js.map +1 -1
  21. package/dist/module/entity/group/index.js +4 -18
  22. package/dist/module/entity/group/index.js.map +1 -1
  23. package/dist/module/entity/heatmap/index.js +4 -16
  24. package/dist/module/entity/heatmap/index.js.map +1 -1
  25. package/dist/module/entity/index.js +12 -13
  26. package/dist/module/entity/index.js.map +1 -1
  27. package/dist/module/entity/infoPanel/index.js +2 -2
  28. package/dist/module/entity/infoPanel/index.js.map +1 -1
  29. package/dist/module/entity/light/pointLight/index.js +2 -2
  30. package/dist/module/entity/light/pointLight/index.js.map +1 -1
  31. package/dist/module/entity/mark/index.js +14 -11
  32. package/dist/module/entity/mark/index.js.map +1 -1
  33. package/dist/module/entity/model/index.js +12 -29
  34. package/dist/module/entity/model/index.js.map +1 -1
  35. package/dist/module/entity/model/load/loadFbx.js +1 -1
  36. package/dist/module/entity/model/load/loadFbx.js.map +1 -1
  37. package/dist/module/entity/model/load/loadGlb.js +11 -6
  38. package/dist/module/entity/model/load/loadGlb.js.map +1 -1
  39. package/dist/module/entity/poi/index.js +3 -3
  40. package/dist/module/entity/poi/index.js.map +1 -1
  41. package/dist/module/entity/shape/index.js +14 -16
  42. package/dist/module/entity/shape/index.js.map +1 -1
  43. package/dist/module/entity/spline/index.js +4 -4
  44. package/dist/module/entity/spline/index.js.map +1 -1
  45. package/dist/module/entity/strategy.js.map +1 -1
  46. package/dist/module/entity/traffic/realismTraffic/index.js +5 -17
  47. package/dist/module/entity/traffic/realismTraffic/index.js.map +1 -1
  48. package/dist/module/entity/traffic/streamerTraffic/index.js +4 -16
  49. package/dist/module/entity/traffic/streamerTraffic/index.js.map +1 -1
  50. package/dist/module/entity/videoPanel/index.js +3 -3
  51. package/dist/module/entity/videoPanel/index.js.map +1 -1
  52. package/dist/module/environment/index.js +4 -3
  53. package/dist/module/environment/index.js.map +1 -1
  54. package/dist/module/environment/season/index.js +1 -1
  55. package/dist/module/environment/season/index.js.map +1 -1
  56. package/dist/module/eventBus/index.js +4 -3
  57. package/dist/module/eventBus/index.js.map +1 -1
  58. package/dist/module/material/index.js +6 -5
  59. package/dist/module/material/index.js.map +1 -1
  60. package/dist/module/scene/fileParse.js +16 -21
  61. package/dist/module/scene/fileParse.js.map +1 -1
  62. package/dist/module/scene/index.js +10 -9
  63. package/dist/module/scene/index.js.map +1 -1
  64. package/dist/sdkEntry.js +32 -25
  65. package/dist/sdkEntry.js.map +1 -1
  66. package/dist/utils/messageFn.js +11 -21
  67. package/dist/utils/messageFn.js.map +1 -1
  68. package/package.json +4 -5
  69. package/dist/__mocks__/ability-mock.js +0 -124
  70. package/dist/__mocks__/ability-mock.js.map +0 -1
  71. package/dist/__mocks__/geo-3d-mock.js +0 -10
  72. package/dist/__mocks__/geo-3d-mock.js.map +0 -1
  73. package/dist/module/message/hub.js +0 -178
  74. package/dist/module/message/hub.js.map +0 -1
  75. package/dist/utils/debugTools.js +0 -364
  76. package/dist/utils/debugTools.js.map +0 -1
  77. package/dist/utils/messageTracer.js +0 -369
  78. package/dist/utils/messageTracer.js.map +0 -1
@@ -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","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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"}
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 let 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 })\n }\n\n findTubeGeometry(object) {\n if (object.type === 'Mesh' && object.geometry.type === \"TubeGeometry\") {\n return object.geometry;\n }\n\n for (let child of object.children) {\n const result = this.findTubeGeometry(child);\n if (result) 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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"}
@@ -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 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 {\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 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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"}
@@ -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(sceneControl) {
23
+ function Area() {
24
24
  _classCallCheck(this, Area);
25
- return _super.call(this, sceneControl);
25
+ return _super.apply(this, arguments);
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, this.sceneControl);
88
+ var mesh = new AreaManage(options);
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","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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"}
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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"}
@@ -5,21 +5,12 @@ 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 } from '@anov/3d-core';
8
+ import { MathUtils, use } from '@anov/3d-core';
9
9
  var BaseEntity = /*#__PURE__*/function () {
10
- function BaseEntity(sceneControl) {
10
+ function BaseEntity() {
11
11
  _classCallCheck(this, BaseEntity);
12
- _defineProperty(this, "sceneControl", void 0);
13
- this.sceneControl = sceneControl;
14
12
  }
15
-
16
- /** @deprecated 请使用 constructor(sceneControl: SceneControl) 初始化 */
17
13
  _createClass(BaseEntity, [{
18
- key: "setSceneControl",
19
- value: function setSceneControl(sceneControl) {
20
- this.sceneControl = sceneControl;
21
- }
22
- }, {
23
14
  key: "customizer",
24
15
  value: function customizer(objValue, srcValue) {
25
16
  if (Array.isArray(objValue) && srcValue) return srcValue;
@@ -39,8 +30,8 @@ var BaseEntity = /*#__PURE__*/function () {
39
30
  value: function addToScene(mesh, options) {
40
31
  var shouldAdd = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
41
32
  this.applyTransforms(mesh, options);
42
- if (shouldAdd && this.sceneControl) {
43
- var scene = this.sceneControl.context.scene;
33
+ if (shouldAdd) {
34
+ var scene = use.useScene().scene;
44
35
  if (!scene.children.includes(mesh)) scene.add(mesh);
45
36
  }
46
37
  return mesh;
@@ -1 +1 @@
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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"}
1
+ {"version":3,"names":["MathUtils","use","BaseEntity","_classCallCheck","_createClass","key","value","customizer","objValue","srcValue","Array","isArray","isSpecifiedFieldsChanged","changes","whitelist","arguments","length","undefined","PRESERVE_FIELDS","Object","keys","every","includes","addToScene","mesh","options","shouldAdd","applyTransforms","scene","useScene","children","add","_validateTransform","Error","concat","JSON","stringify","position","scale","rotation","fromArray","set","degToRad","visible","error","console","_handleTransformError","_defineProperty"],"sources":["../../../src/module/entity/baseEntity.ts"],"sourcesContent":["import type { Object3D } from '@anov/3d-core'\nimport { MathUtils, use } from '@anov/3d-core'\nimport type { Option } from './type'\n\nclass BaseEntity {\n protected static readonly PRESERVE_FIELDS = ['id', 'visible', 'position', 'scale', 'rotation']\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) {\n const scene = use.useScene().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"],"mappings":"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"}
@@ -17,7 +17,7 @@ function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) ===
17
17
  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
18
18
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
19
19
  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
20
- import { CurvePath, LineCurve3, Vector3 } from '@anov/3d-core';
20
+ import { CurvePath, LineCurve3, Vector3, use } from '@anov/3d-core';
21
21
  import { Batch as BatchManage, RoundedCornersCurve } from '@anov/3d-ability';
22
22
  import _ from 'lodash';
23
23
  import BaseEntity from "../baseEntity";
@@ -25,9 +25,9 @@ import { entityStrategy } from "../strategy";
25
25
  var Batch = /*#__PURE__*/function (_BaseEntity) {
26
26
  _inherits(Batch, _BaseEntity);
27
27
  var _super = _createSuper(Batch);
28
- function Batch(sceneControl) {
28
+ function Batch() {
29
29
  _classCallCheck(this, Batch);
30
- return _super.call(this, sceneControl);
30
+ return _super.apply(this, arguments);
31
31
  }
32
32
  _createClass(Batch, [{
33
33
  key: "registerStrategy",
@@ -45,15 +45,15 @@ var Batch = /*#__PURE__*/function (_BaseEntity) {
45
45
  throw new Error("entityType ".concat(entityType, " is not supported"));
46
46
  case 3:
47
47
  _context.next = 5;
48
- return strategyMap[entityType](this.sceneControl);
48
+ return strategyMap[entityType]();
49
49
  case 5:
50
50
  strategyClass = _context.sent;
51
- return _context.abrupt("return", new strategyClass(this.sceneControl));
51
+ return _context.abrupt("return", new strategyClass());
52
52
  case 7:
53
53
  case "end":
54
54
  return _context.stop();
55
55
  }
56
- }, _callee, this);
56
+ }, _callee);
57
57
  }));
58
58
  function registerStrategy(_x) {
59
59
  return _registerStrategy.apply(this, arguments);
@@ -64,7 +64,7 @@ var Batch = /*#__PURE__*/function (_BaseEntity) {
64
64
  key: "create",
65
65
  value: function () {
66
66
  var _create = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(json) {
67
- var mesh, scene;
67
+ var mesh, _use$useScene, scene;
68
68
  return _regeneratorRuntime().wrap(function _callee2$(_context2) {
69
69
  while (1) switch (_context2.prev = _context2.next) {
70
70
  case 0:
@@ -73,12 +73,10 @@ var Batch = /*#__PURE__*/function (_BaseEntity) {
73
73
  case 2:
74
74
  mesh = _context2.sent;
75
75
  mesh.userData.option = json;
76
- if (this.sceneControl) {
77
- scene = this.sceneControl.context.scene;
78
- scene.add(mesh);
79
- }
76
+ _use$useScene = use.useScene(), scene = _use$useScene.scene;
77
+ scene.add(mesh);
80
78
  return _context2.abrupt("return", mesh);
81
- case 6:
79
+ case 7:
82
80
  case "end":
83
81
  return _context2.stop();
84
82
  }