@anov/3d-ability 0.0.148 → 0.0.150

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.
@@ -333,7 +333,7 @@ var Poi = /*#__PURE__*/function (_ObjectLayer) {
333
333
  // camera && this._mesh.quaternion.copy(camera.quaternion)
334
334
  // this._mesh.rotation.y = camera.rotation.y
335
335
 
336
- lookAtOnYAxis(this._mesh, camera.position);
336
+ lookAtOnYAxis(this._mesh.parent, camera.position);
337
337
  }
338
338
 
339
339
  /// <summary>
@@ -347,11 +347,9 @@ var Poi = /*#__PURE__*/function (_ObjectLayer) {
347
347
  // Make the signboard face the camera
348
348
  // this._mesh.lookAt(camera.position);
349
349
  // 计算相机和物体之间的距离
350
- console.log('updateScale ');
351
- var distance = camera === null || camera === void 0 ? void 0 : camera.position.distanceTo(this._mesh.position);
350
+ var distance = camera === null || camera === void 0 ? void 0 : camera.position.distanceTo(this._mesh.parent.position);
352
351
  if (distance >= MAX_DISTANCE) return;
353
352
  var scale = distance / 20 || 1;
354
- console.log('scale:', scale);
355
353
  this._mesh.scale.set(scale, scale, scale);
356
354
  }
357
355
  }, {
@@ -360,7 +358,6 @@ var Poi = /*#__PURE__*/function (_ObjectLayer) {
360
358
  var _this3 = this,
361
359
  _scene$orbitControls;
362
360
  var updateTransform = function updateTransform() {
363
- console.log('come in:', _this3._facingCamera, _this3._autoScale);
364
361
  var _use$useScene3 = use.useScene(),
365
362
  camera = _use$useScene3.camera;
366
363
  // 普通 POI:依旧使用面向相机和距离缩放
@@ -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","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","minLen","_arrayLikeToArray","toString","Array","from","test","len","arr2","isArray","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","_inherits","subClass","superClass","_setPrototypeOf","bind","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf","result","NewTarget","Reflect","construct","_possibleConstructorReturn","_assertThisInitialized","ReferenceError","sham","Proxy","Boolean","valueOf","obj","_toPrimitive","String","toPrimitive","Number","Box3","Group","Vector3","use","_","ObjectLayer","lookAtOnYAxis","StrategyManage","LinkStrategy","ParticleStrategy","TitleStrategy","InfoPanel","DEFAULT_OPTION","style","facingCamera","autoScale","text","visible","fontSize","color","fontWeight","offset","bgUrl","uri","model","particle","STYLE_DATA","poi_border_01","poi_ellipse_01","MAX_DISTANCE","Poi","_ObjectLayer","_super","option","_this","param","mergeWith","cloneDeep","arrayMergeCustomizer","content","_style","_text","_model","_particle","_autoScale","_facingCamera","_content","init","initCard","get","_mesh","set","newValue","destroy","_disposeCallbacks","remove","_init","_callee2","_this$text","_this2","_this$_linkMesh","group","_STYLE_DATA$this$styl","titleStyle","linkStyle","particleStyle","strategies","loadTasks","_callee2$","_context2","_titleMesh","strategy","config","condition","_linkMesh","_particleMesh","entries","_ref","_ref2","map","_ref4","_callee","_ref3","_ref5","_ref5$","ClassRef","_callee$","_context","ready","add","_x","all","calculateLayout","setupBoundingBox","updateWorldMatrix","setupAnimation","createProxy","addEventListeners","panel","_panel","_this$_linkMesh2","_this$_linkMesh3","_this$_particleMesh","titleSize","getBoxSize","height","linkSize","baseY","linkHeight","linkVSpace","vspace","position","setY","mesh","_Box3$setFromObject","setFromObject","max","min","width","x","box","size","center","getSize","getCenter","bottomCenter","z","children","sub","updateViewDirection","_use$useScene","useScene","camera","updateScale","_use$useScene2","console","log","distance","distanceTo","scale","_this3","_scene$orbitControls","updateTransform","_use$useScene3","updateFacing","updateDynamicScale","scene","callback","orbitControls","addEventListener","_scene$orbitControls2","removeEventListener","cancelFrame","useframe"],"sources":["../../../src/business/Poi/index.ts"],"sourcesContent":["import { Box3, Group, Vector3, use } from '@anov/3d-core'\nimport type { Mesh, Object3D } from '@anov/3d-core'\nimport _ from 'lodash'\nimport ObjectLayer from '../Base/ObjectLayer'\nimport { lookAtOnYAxis } from './tools'\nimport type { IPoi, ModelOption, Option, ParticleOption, TextOption } from './types'\nimport { StrategyManage as LinkStrategy } from './link'\nimport { StrategyManage as ParticleStrategy } from './particle'\nimport { StrategyManage as TitleStrategy } from './title'\nimport InfoPanel from './panel'\n\nconst DEFAULT_OPTION = {\n style: 'poi_border_01',\n facingCamera: true,\n autoScale: true,\n text: {\n visible: true,\n value: '标题文字',\n fontSize: 16,\n color: '#ffffff',\n fontWeight: 'normal',\n offset: [0, 0],\n bgUrl: '',\n uri: '',\n },\n model: {\n visible: true,\n uri: '',\n color: '#2C8AFF',\n },\n particle: {\n visible: true,\n uri: '',\n color: '#FFFFFF',\n },\n}\n\nconst STYLE_DATA = {\n poi_border_01: ['border', 'pyramid', 'circle'],\n poi_ellipse_01: ['ellipse', 'cylinder', 'circle'],\n}\n\nconst MAX_DISTANCE = 500\n\nclass Poi extends ObjectLayer implements IPoi {\n private _mesh!: Group\n private _titleMesh: Mesh & any\n private _linkMesh: Mesh | Group & any\n private _particleMesh: Mesh & any\n private _panel?: InfoPanel\n private _disposeCallbacks: Function[] = []\n\n private _style: string\n private _autoScale: boolean\n private _facingCamera: boolean\n private _text: TextOption\n private _model: ModelOption\n private _particle: ParticleOption\n private _content: TextOption\n type = 'Group'\n\n constructor(option: Option) {\n super()\n\n const param = _.mergeWith(\n _.cloneDeep(DEFAULT_OPTION),\n option,\n this.arrayMergeCustomizer,\n )\n const { style, text, model, particle, autoScale, facingCamera, content } = param\n this._style = style\n this._text = text\n this._model = model\n this._particle = particle\n this._autoScale = autoScale\n this._facingCamera = facingCamera\n this._content = content\n switch (this.style) {\n case 'poi_border_01':\n case 'poi_ellipse_01':\n case 'poi_custom':\n this.init()\n break\n case 'poi_card_01':\n this.initCard(param)\n break\n }\n }\n\n get content(): TextOption {\n return this._content\n }\n\n get mesh() {\n return this._mesh\n }\n\n get style(): string {\n return this._style\n }\n\n get autoScale(): boolean {\n return this._autoScale\n }\n\n set autoScale(newValue: boolean) {\n this._autoScale = newValue\n }\n\n get facingCamera(): boolean {\n return this._facingCamera\n }\n\n set facingCamera(newValue: boolean) {\n this._facingCamera = newValue\n }\n\n get text(): TextOption {\n return this._text\n }\n\n get model(): ModelOption {\n return this._model\n }\n\n get particle(): ParticleOption {\n return this._particle\n }\n\n // 销毁\n destroy() {\n this._disposeCallbacks.forEach(fn => fn())\n this._disposeCallbacks = []\n this.remove(this._mesh)\n }\n\n private async init() {\n const group = new Group()\n const [titleStyle, linkStyle, particleStyle] = STYLE_DATA[this.style]\n\n // 仅加载需要的资源\n const strategies = {\n _titleMesh: { strategy: TitleStrategy[titleStyle], config: this.text, condition: this.text?.visible !== false },\n _linkMesh: { strategy: LinkStrategy[linkStyle], config: this.model, condition: !this.model || this.model.visible !== false },\n _particleMesh: { strategy: ParticleStrategy[particleStyle], config: this.particle, condition: !this.particle || this.particle.visible !== false },\n }\n\n // 过滤掉不需要加载的组件,并发加载\n const loadTasks = Object.entries(strategies)\n .filter(([, { condition }]) => condition)\n .map(async ([key, { strategy, config }]) => {\n if (!strategy)\n return\n const ClassRef = await strategy()\n this[key] = new ClassRef({ ...config })\n await this[key].ready\n group.add(this[key])\n })\n\n // 等待所有组件加载完成\n await Promise.all(loadTasks)\n\n this._mesh = group\n // 布局计算\n this.calculateLayout()\n // 边界盒处理\n this.setupBoundingBox(group)\n // 统一更新矩阵\n group.updateWorldMatrix(true, true)\n // 动画和事件\n this._linkMesh?.setupAnimation()\n this.add(group)\n\n // 代理\n this._text = this.createProxy(this._text, this._titleMesh)\n this._model = this.createProxy(this._model, this._linkMesh)\n this._particle = this.createProxy(this._particle, this._particleMesh)\n\n this.addEventListeners()\n }\n\n /** 初始化卡片样式 */\n private initCard(param) {\n const group = new Group()\n this._mesh = group\n const panel = new InfoPanel(param)\n this._panel = panel\n group.add(panel)\n // CSS3D 信息面板默认不随距离缩放,保持屏幕像素尺寸稳定\n this._autoScale = false\n this.add(group)\n this.addEventListeners()\n }\n\n /** 布局计算 */\n private calculateLayout() {\n const titleSize = this._titleMesh ? this.getBoxSize(this._titleMesh) : { height: 0 }\n const linkSize = this._linkMesh ? this.getBoxSize(this._linkMesh) : { height: 0 }\n\n // 计算基础 Y 轴偏移\n let baseY = -titleSize.height / 2\n const linkHeight = linkSize.height\n const linkVSpace = this._linkMesh?.vspace?.[0] || 0\n\n baseY -= linkVSpace\n this._linkMesh?.position.setY(baseY - linkHeight / 2)\n this._particleMesh?.position.setY(baseY - linkHeight)\n }\n\n private getBoxSize(mesh) {\n // mesh.updateWorldMatrix(true, true)\n const { max, min } = new Box3().setFromObject(mesh)\n return { width: max.x - min.x, height: max.y - min.y }\n }\n\n private setupBoundingBox(mesh: Object3D) {\n // 计算Group的边界盒\n const box = new Box3().setFromObject(mesh)\n const size = new Vector3()\n const center = new Vector3()\n box.getSize(size)\n box.getCenter(center)\n\n // 计算底部中心位置\n const bottomCenter = new Vector3(center.x, box.min.y, center.z)\n // 平移所有Mesh,使底部中心对齐到控制点\n mesh.children.forEach((mesh) => {\n mesh.position.sub(bottomCenter)\n })\n }\n\n private updateViewDirection() {\n const { camera } = use.useScene()\n // camera && this._mesh.quaternion.copy(camera.quaternion)\n // this._mesh.rotation.y = camera.rotation.y\n\n lookAtOnYAxis(this._mesh, camera.position)\n }\n\n /// <summary>\n /// 按照距离缩放,距离越远,缩放越大\n /// </summary>\n private updateScale() {\n const { camera } = use.useScene()\n // Make the signboard face the camera\n // this._mesh.lookAt(camera.position);\n // 计算相机和物体之间的距离\n console.log('updateScale ')\n const distance = camera?.position.distanceTo(this._mesh.position)\n if (distance >= MAX_DISTANCE)\n return\n\n const scale = distance / 20 || 1\n console.log('scale:', scale)\n this._mesh.scale.set(scale, scale, scale)\n }\n\n private addEventListeners() {\n const updateTransform = () => {\n console.log('come in:', this._facingCamera, this._autoScale)\n const { camera } = use.useScene()\n // 普通 POI:依旧使用面向相机和距离缩放\n this._facingCamera !== false && this.updateViewDirection()\n this._autoScale === true && this.updateScale()\n // CSS3D 面板:使用动态像素→米缩放,并处理面板面向相机\n if (this._panel && camera) {\n this._panel.updateFacing(camera)\n this._panel.updateDynamicScale(camera)\n }\n }\n\n const scene = use.useScene()\n const callback = () => updateTransform()\n updateTransform()\n scene.orbitControls?.addEventListener('change', callback)\n this._disposeCallbacks.push(() => {\n scene.orbitControls?.removeEventListener('change', callback)\n })\n\n // 每帧跟随更新,确保场景缩放/组变换也能驱动面板更新\n const cancelFrame = use.useframe(() => {\n updateTransform()\n })\n this._disposeCallbacks.push(() => cancelFrame())\n }\n}\n\nexport { Poi }\n"],"mappings":";+CACA,qJAAAA,mBAAA,YAAAA,oBAAA,WAAAC,CAAA,SAAAC,CAAA,EAAAD,CAAA,OAAAE,CAAA,GAAAC,MAAA,CAAAC,SAAA,EAAAC,CAAA,GAAAH,CAAA,CAAAI,cAAA,EAAAC,CAAA,GAAAJ,MAAA,CAAAK,cAAA,cAAAP,CAAA,EAAAD,CAAA,EAAAE,CAAA,IAAAD,CAAA,CAAAD,CAAA,IAAAE,CAAA,CAAAO,KAAA,KAAAC,CAAA,wBAAAC,MAAA,GAAAA,MAAA,OAAAC,CAAA,GAAAF,CAAA,CAAAG,QAAA,kBAAAC,CAAA,GAAAJ,CAAA,CAAAK,aAAA,uBAAAC,CAAA,GAAAN,CAAA,CAAAO,WAAA,8BAAAC,OAAAjB,CAAA,EAAAD,CAAA,EAAAE,CAAA,WAAAC,MAAA,CAAAK,cAAA,CAAAP,CAAA,EAAAD,CAAA,IAAAS,KAAA,EAAAP,CAAA,EAAAiB,UAAA,MAAAC,YAAA,MAAAC,QAAA,SAAApB,CAAA,CAAAD,CAAA,WAAAkB,MAAA,mBAAAjB,CAAA,IAAAiB,MAAA,YAAAA,OAAAjB,CAAA,EAAAD,CAAA,EAAAE,CAAA,WAAAD,CAAA,CAAAD,CAAA,IAAAE,CAAA,gBAAAoB,KAAArB,CAAA,EAAAD,CAAA,EAAAE,CAAA,EAAAG,CAAA,QAAAK,CAAA,GAAAV,CAAA,IAAAA,CAAA,CAAAI,SAAA,YAAAmB,SAAA,GAAAvB,CAAA,GAAAuB,SAAA,EAAAX,CAAA,GAAAT,MAAA,CAAAqB,MAAA,CAAAd,CAAA,CAAAN,SAAA,GAAAU,CAAA,OAAAW,OAAA,CAAApB,CAAA,gBAAAE,CAAA,CAAAK,CAAA,eAAAH,KAAA,EAAAiB,gBAAA,CAAAzB,CAAA,EAAAC,CAAA,EAAAY,CAAA,MAAAF,CAAA,aAAAe,SAAA1B,CAAA,EAAAD,CAAA,EAAAE,CAAA,mBAAA0B,IAAA,YAAAC,GAAA,EAAA5B,CAAA,CAAA6B,IAAA,CAAA9B,CAAA,EAAAE,CAAA,cAAAD,CAAA,aAAA2B,IAAA,WAAAC,GAAA,EAAA5B,CAAA,QAAAD,CAAA,CAAAsB,IAAA,GAAAA,IAAA,MAAAS,CAAA,qBAAAC,CAAA,qBAAAC,CAAA,gBAAAC,CAAA,gBAAAC,CAAA,gBAAAZ,UAAA,cAAAa,kBAAA,cAAAC,2BAAA,SAAAC,CAAA,OAAApB,MAAA,CAAAoB,CAAA,EAAA1B,CAAA,qCAAA2B,CAAA,GAAApC,MAAA,CAAAqC,cAAA,EAAAC,CAAA,GAAAF,CAAA,IAAAA,CAAA,CAAAA,CAAA,CAAAG,MAAA,QAAAD,CAAA,IAAAA,CAAA,KAAAvC,CAAA,IAAAG,CAAA,CAAAyB,IAAA,CAAAW,CAAA,EAAA7B,CAAA,MAAA0B,CAAA,GAAAG,CAAA,OAAAE,CAAA,GAAAN,0BAAA,CAAAjC,SAAA,GAAAmB,SAAA,CAAAnB,SAAA,GAAAD,MAAA,CAAAqB,MAAA,CAAAc,CAAA,YAAAM,sBAAA3C,CAAA,gCAAA4C,OAAA,WAAA7C,CAAA,IAAAkB,MAAA,CAAAjB,CAAA,EAAAD,CAAA,YAAAC,CAAA,gBAAA6C,OAAA,CAAA9C,CAAA,EAAAC,CAAA,sBAAA8C,cAAA9C,CAAA,EAAAD,CAAA,aAAAgD,OAAA9C,CAAA,EAAAK,CAAA,EAAAG,CAAA,EAAAE,CAAA,QAAAE,CAAA,GAAAa,QAAA,CAAA1B,CAAA,CAAAC,CAAA,GAAAD,CAAA,EAAAM,CAAA,mBAAAO,CAAA,CAAAc,IAAA,QAAAZ,CAAA,GAAAF,CAAA,CAAAe,GAAA,EAAAE,CAAA,GAAAf,CAAA,CAAAP,KAAA,SAAAsB,CAAA,gBAAAkB,OAAA,CAAAlB,CAAA,KAAA1B,CAAA,CAAAyB,IAAA,CAAAC,CAAA,eAAA/B,CAAA,CAAAkD,OAAA,CAAAnB,CAAA,CAAAoB,OAAA,EAAAC,IAAA,WAAAnD,CAAA,IAAA+C,MAAA,SAAA/C,CAAA,EAAAS,CAAA,EAAAE,CAAA,gBAAAX,CAAA,IAAA+C,MAAA,UAAA/C,CAAA,EAAAS,CAAA,EAAAE,CAAA,QAAAZ,CAAA,CAAAkD,OAAA,CAAAnB,CAAA,EAAAqB,IAAA,WAAAnD,CAAA,IAAAe,CAAA,CAAAP,KAAA,GAAAR,CAAA,EAAAS,CAAA,CAAAM,CAAA,gBAAAf,CAAA,WAAA+C,MAAA,UAAA/C,CAAA,EAAAS,CAAA,EAAAE,CAAA,SAAAA,CAAA,CAAAE,CAAA,CAAAe,GAAA,SAAA3B,CAAA,EAAAK,CAAA,oBAAAE,KAAA,WAAAA,MAAAR,CAAA,EAAAI,CAAA,aAAAgD,2BAAA,eAAArD,CAAA,WAAAA,CAAA,EAAAE,CAAA,IAAA8C,MAAA,CAAA/C,CAAA,EAAAI,CAAA,EAAAL,CAAA,EAAAE,CAAA,gBAAAA,CAAA,GAAAA,CAAA,GAAAA,CAAA,CAAAkD,IAAA,CAAAC,0BAAA,EAAAA,0BAAA,IAAAA,0BAAA,qBAAA3B,iBAAA1B,CAAA,EAAAE,CAAA,EAAAG,CAAA,QAAAE,CAAA,GAAAwB,CAAA,mBAAArB,CAAA,EAAAE,CAAA,QAAAL,CAAA,KAAA0B,CAAA,YAAAqB,KAAA,sCAAA/C,CAAA,KAAA2B,CAAA,oBAAAxB,CAAA,QAAAE,CAAA,WAAAH,KAAA,EAAAR,CAAA,EAAAsD,IAAA,eAAAlD,CAAA,CAAAmD,MAAA,GAAA9C,CAAA,EAAAL,CAAA,CAAAwB,GAAA,GAAAjB,CAAA,UAAAE,CAAA,GAAAT,CAAA,CAAAoD,QAAA,MAAA3C,CAAA,QAAAE,CAAA,GAAA0C,mBAAA,CAAA5C,CAAA,EAAAT,CAAA,OAAAW,CAAA,QAAAA,CAAA,KAAAmB,CAAA,mBAAAnB,CAAA,qBAAAX,CAAA,CAAAmD,MAAA,EAAAnD,CAAA,CAAAsD,IAAA,GAAAtD,CAAA,CAAAuD,KAAA,GAAAvD,CAAA,CAAAwB,GAAA,sBAAAxB,CAAA,CAAAmD,MAAA,QAAAjD,CAAA,KAAAwB,CAAA,QAAAxB,CAAA,GAAA2B,CAAA,EAAA7B,CAAA,CAAAwB,GAAA,EAAAxB,CAAA,CAAAwD,iBAAA,CAAAxD,CAAA,CAAAwB,GAAA,uBAAAxB,CAAA,CAAAmD,MAAA,IAAAnD,CAAA,CAAAyD,MAAA,WAAAzD,CAAA,CAAAwB,GAAA,GAAAtB,CAAA,GAAA0B,CAAA,MAAAK,CAAA,GAAAX,QAAA,CAAA3B,CAAA,EAAAE,CAAA,EAAAG,CAAA,oBAAAiC,CAAA,CAAAV,IAAA,QAAArB,CAAA,GAAAF,CAAA,CAAAkD,IAAA,GAAArB,CAAA,GAAAF,CAAA,EAAAM,CAAA,CAAAT,GAAA,KAAAM,CAAA,qBAAA1B,KAAA,EAAA6B,CAAA,CAAAT,GAAA,EAAA0B,IAAA,EAAAlD,CAAA,CAAAkD,IAAA,kBAAAjB,CAAA,CAAAV,IAAA,KAAArB,CAAA,GAAA2B,CAAA,EAAA7B,CAAA,CAAAmD,MAAA,YAAAnD,CAAA,CAAAwB,GAAA,GAAAS,CAAA,CAAAT,GAAA,mBAAA6B,oBAAA1D,CAAA,EAAAE,CAAA,QAAAG,CAAA,GAAAH,CAAA,CAAAsD,MAAA,EAAAjD,CAAA,GAAAP,CAAA,CAAAa,QAAA,CAAAR,CAAA,OAAAE,CAAA,KAAAN,CAAA,SAAAC,CAAA,CAAAuD,QAAA,qBAAApD,CAAA,IAAAL,CAAA,CAAAa,QAAA,CAAAkD,MAAA,KAAA7D,CAAA,CAAAsD,MAAA,aAAAtD,CAAA,CAAA2B,GAAA,GAAA5B,CAAA,EAAAyD,mBAAA,CAAA1D,CAAA,EAAAE,CAAA,eAAAA,CAAA,CAAAsD,MAAA,kBAAAnD,CAAA,KAAAH,CAAA,CAAAsD,MAAA,YAAAtD,CAAA,CAAA2B,GAAA,OAAAmC,SAAA,uCAAA3D,CAAA,iBAAA8B,CAAA,MAAAzB,CAAA,GAAAiB,QAAA,CAAApB,CAAA,EAAAP,CAAA,CAAAa,QAAA,EAAAX,CAAA,CAAA2B,GAAA,mBAAAnB,CAAA,CAAAkB,IAAA,SAAA1B,CAAA,CAAAsD,MAAA,YAAAtD,CAAA,CAAA2B,GAAA,GAAAnB,CAAA,CAAAmB,GAAA,EAAA3B,CAAA,CAAAuD,QAAA,SAAAtB,CAAA,MAAAvB,CAAA,GAAAF,CAAA,CAAAmB,GAAA,SAAAjB,CAAA,GAAAA,CAAA,CAAA2C,IAAA,IAAArD,CAAA,CAAAF,CAAA,CAAAiE,UAAA,IAAArD,CAAA,CAAAH,KAAA,EAAAP,CAAA,CAAAgE,IAAA,GAAAlE,CAAA,CAAAmE,OAAA,eAAAjE,CAAA,CAAAsD,MAAA,KAAAtD,CAAA,CAAAsD,MAAA,WAAAtD,CAAA,CAAA2B,GAAA,GAAA5B,CAAA,GAAAC,CAAA,CAAAuD,QAAA,SAAAtB,CAAA,IAAAvB,CAAA,IAAAV,CAAA,CAAAsD,MAAA,YAAAtD,CAAA,CAAA2B,GAAA,OAAAmC,SAAA,sCAAA9D,CAAA,CAAAuD,QAAA,SAAAtB,CAAA,cAAAiC,aAAAnE,CAAA,QAAAD,CAAA,KAAAqE,MAAA,EAAApE,CAAA,YAAAA,CAAA,KAAAD,CAAA,CAAAsE,QAAA,GAAArE,CAAA,WAAAA,CAAA,KAAAD,CAAA,CAAAuE,UAAA,GAAAtE,CAAA,KAAAD,CAAA,CAAAwE,QAAA,GAAAvE,CAAA,WAAAwE,UAAA,CAAAC,IAAA,CAAA1E,CAAA,cAAA2E,cAAA1E,CAAA,QAAAD,CAAA,GAAAC,CAAA,CAAA2E,UAAA,QAAA5E,CAAA,CAAA4B,IAAA,oBAAA5B,CAAA,CAAA6B,GAAA,EAAA5B,CAAA,CAAA2E,UAAA,GAAA5E,CAAA,aAAAyB,QAAAxB,CAAA,SAAAwE,UAAA,MAAAJ,MAAA,aAAApE,CAAA,CAAA4C,OAAA,CAAAuB,YAAA,cAAAS,KAAA,iBAAAnC,OAAA1C,CAAA,QAAAA,CAAA,WAAAA,CAAA,QAAAE,CAAA,GAAAF,CAAA,CAAAY,CAAA,OAAAV,CAAA,SAAAA,CAAA,CAAA4B,IAAA,CAAA9B,CAAA,4BAAAA,CAAA,CAAAkE,IAAA,SAAAlE,CAAA,OAAA8E,KAAA,CAAA9E,CAAA,CAAA+E,MAAA,SAAAxE,CAAA,OAAAG,CAAA,YAAAwD,KAAA,aAAA3D,CAAA,GAAAP,CAAA,CAAA+E,MAAA,OAAA1E,CAAA,CAAAyB,IAAA,CAAA9B,CAAA,EAAAO,CAAA,UAAA2D,IAAA,CAAAzD,KAAA,GAAAT,CAAA,CAAAO,CAAA,GAAA2D,IAAA,CAAAX,IAAA,OAAAW,IAAA,SAAAA,IAAA,CAAAzD,KAAA,GAAAR,CAAA,EAAAiE,IAAA,CAAAX,IAAA,OAAAW,IAAA,YAAAxD,CAAA,CAAAwD,IAAA,GAAAxD,CAAA,gBAAAsD,SAAA,CAAAf,OAAA,CAAAjD,CAAA,kCAAAoC,iBAAA,CAAAhC,SAAA,GAAAiC,0BAAA,EAAA9B,CAAA,CAAAoC,CAAA,mBAAAlC,KAAA,EAAA4B,0BAAA,EAAAjB,YAAA,SAAAb,CAAA,CAAA8B,0BAAA,mBAAA5B,KAAA,EAAA2B,iBAAA,EAAAhB,YAAA,SAAAgB,iBAAA,CAAA4C,WAAA,GAAA9D,MAAA,CAAAmB,0BAAA,EAAArB,CAAA,wBAAAhB,CAAA,CAAAiF,mBAAA,aAAAhF,CAAA,QAAAD,CAAA,wBAAAC,CAAA,IAAAA,CAAA,CAAAiF,WAAA,WAAAlF,CAAA,KAAAA,CAAA,KAAAoC,iBAAA,6BAAApC,CAAA,CAAAgF,WAAA,IAAAhF,CAAA,CAAAmF,IAAA,OAAAnF,CAAA,CAAAoF,IAAA,aAAAnF,CAAA,WAAAE,MAAA,CAAAkF,cAAA,GAAAlF,MAAA,CAAAkF,cAAA,CAAApF,CAAA,EAAAoC,0BAAA,KAAApC,CAAA,CAAAqF,SAAA,GAAAjD,0BAAA,EAAAnB,MAAA,CAAAjB,CAAA,EAAAe,CAAA,yBAAAf,CAAA,CAAAG,SAAA,GAAAD,MAAA,CAAAqB,MAAA,CAAAmB,CAAA,GAAA1C,CAAA,KAAAD,CAAA,CAAAuF,KAAA,aAAAtF,CAAA,aAAAkD,OAAA,EAAAlD,CAAA,OAAA2C,qBAAA,CAAAG,aAAA,CAAA3C,SAAA,GAAAc,MAAA,CAAA6B,aAAA,CAAA3C,SAAA,EAAAU,CAAA,iCAAAd,CAAA,CAAA+C,aAAA,GAAAA,aAAA,EAAA/C,CAAA,CAAAwF,KAAA,aAAAvF,CAAA,EAAAC,CAAA,EAAAG,CAAA,EAAAE,CAAA,EAAAG,CAAA,eAAAA,CAAA,KAAAA,CAAA,GAAA+E,OAAA,OAAA7E,CAAA,OAAAmC,aAAA,CAAAzB,IAAA,CAAArB,CAAA,EAAAC,CAAA,EAAAG,CAAA,EAAAE,CAAA,GAAAG,CAAA,UAAAV,CAAA,CAAAiF,mBAAA,CAAA/E,CAAA,IAAAU,CAAA,GAAAA,CAAA,CAAAsD,IAAA,GAAAd,IAAA,WAAAnD,CAAA,WAAAA,CAAA,CAAAsD,IAAA,GAAAtD,CAAA,CAAAQ,KAAA,GAAAG,CAAA,CAAAsD,IAAA,WAAAtB,qBAAA,CAAAD,CAAA,GAAAzB,MAAA,CAAAyB,CAAA,EAAA3B,CAAA,gBAAAE,MAAA,CAAAyB,CAAA,EAAA/B,CAAA,iCAAAM,MAAA,CAAAyB,CAAA,6DAAA3C,CAAA,CAAA0F,IAAA,aAAAzF,CAAA,QAAAD,CAAA,GAAAG,MAAA,CAAAF,CAAA,GAAAC,CAAA,gBAAAG,CAAA,IAAAL,CAAA,EAAAE,CAAA,CAAAwE,IAAA,CAAArE,CAAA,UAAAH,CAAA,CAAAyF,OAAA,aAAAzB,KAAA,WAAAhE,CAAA,CAAA6E,MAAA,SAAA9E,CAAA,GAAAC,CAAA,CAAA0F,GAAA,QAAA3F,CAAA,IAAAD,CAAA,SAAAkE,IAAA,CAAAzD,KAAA,GAAAR,CAAA,EAAAiE,IAAA,CAAAX,IAAA,OAAAW,IAAA,WAAAA,IAAA,CAAAX,IAAA,OAAAW,IAAA,QAAAlE,CAAA,CAAA0C,MAAA,GAAAA,MAAA,EAAAjB,OAAA,CAAArB,SAAA,KAAA8E,WAAA,EAAAzD,OAAA,EAAAoD,KAAA,WAAAA,MAAA7E,CAAA,aAAA6F,IAAA,WAAA3B,IAAA,WAAAP,IAAA,QAAAC,KAAA,GAAA3D,CAAA,OAAAsD,IAAA,YAAAE,QAAA,cAAAD,MAAA,gBAAA3B,GAAA,GAAA5B,CAAA,OAAAwE,UAAA,CAAA5B,OAAA,CAAA8B,aAAA,IAAA3E,CAAA,WAAAE,CAAA,kBAAAA,CAAA,CAAA4F,MAAA,OAAAzF,CAAA,CAAAyB,IAAA,OAAA5B,CAAA,MAAA4E,KAAA,EAAA5E,CAAA,CAAA6F,KAAA,cAAA7F,CAAA,IAAAD,CAAA,MAAA+F,IAAA,WAAAA,KAAA,SAAAzC,IAAA,WAAAtD,CAAA,QAAAwE,UAAA,IAAAG,UAAA,kBAAA3E,CAAA,CAAA2B,IAAA,QAAA3B,CAAA,CAAA4B,GAAA,cAAAoE,IAAA,KAAApC,iBAAA,WAAAA,kBAAA7D,CAAA,aAAAuD,IAAA,QAAAvD,CAAA,MAAAE,CAAA,kBAAAgG,OAAA7F,CAAA,EAAAE,CAAA,WAAAK,CAAA,CAAAgB,IAAA,YAAAhB,CAAA,CAAAiB,GAAA,GAAA7B,CAAA,EAAAE,CAAA,CAAAgE,IAAA,GAAA7D,CAAA,EAAAE,CAAA,KAAAL,CAAA,CAAAsD,MAAA,WAAAtD,CAAA,CAAA2B,GAAA,GAAA5B,CAAA,KAAAM,CAAA,aAAAA,CAAA,QAAAkE,UAAA,CAAAM,MAAA,MAAAxE,CAAA,SAAAA,CAAA,QAAAG,CAAA,QAAA+D,UAAA,CAAAlE,CAAA,GAAAK,CAAA,GAAAF,CAAA,CAAAkE,UAAA,iBAAAlE,CAAA,CAAA2D,MAAA,SAAA6B,MAAA,aAAAxF,CAAA,CAAA2D,MAAA,SAAAwB,IAAA,QAAA/E,CAAA,GAAAT,CAAA,CAAAyB,IAAA,CAAApB,CAAA,eAAAM,CAAA,GAAAX,CAAA,CAAAyB,IAAA,CAAApB,CAAA,qBAAAI,CAAA,IAAAE,CAAA,aAAA6E,IAAA,GAAAnF,CAAA,CAAA4D,QAAA,SAAA4B,MAAA,CAAAxF,CAAA,CAAA4D,QAAA,gBAAAuB,IAAA,GAAAnF,CAAA,CAAA6D,UAAA,SAAA2B,MAAA,CAAAxF,CAAA,CAAA6D,UAAA,cAAAzD,CAAA,aAAA+E,IAAA,GAAAnF,CAAA,CAAA4D,QAAA,SAAA4B,MAAA,CAAAxF,CAAA,CAAA4D,QAAA,qBAAAtD,CAAA,YAAAsC,KAAA,qDAAAuC,IAAA,GAAAnF,CAAA,CAAA6D,UAAA,SAAA2B,MAAA,CAAAxF,CAAA,CAAA6D,UAAA,YAAAT,MAAA,WAAAA,OAAA7D,CAAA,EAAAD,CAAA,aAAAE,CAAA,QAAAuE,UAAA,CAAAM,MAAA,MAAA7E,CAAA,SAAAA,CAAA,QAAAK,CAAA,QAAAkE,UAAA,CAAAvE,CAAA,OAAAK,CAAA,CAAA8D,MAAA,SAAAwB,IAAA,IAAAxF,CAAA,CAAAyB,IAAA,CAAAvB,CAAA,wBAAAsF,IAAA,GAAAtF,CAAA,CAAAgE,UAAA,QAAA7D,CAAA,GAAAH,CAAA,aAAAG,CAAA,iBAAAT,CAAA,mBAAAA,CAAA,KAAAS,CAAA,CAAA2D,MAAA,IAAArE,CAAA,IAAAA,CAAA,IAAAU,CAAA,CAAA6D,UAAA,KAAA7D,CAAA,cAAAE,CAAA,GAAAF,CAAA,GAAAA,CAAA,CAAAkE,UAAA,cAAAhE,CAAA,CAAAgB,IAAA,GAAA3B,CAAA,EAAAW,CAAA,CAAAiB,GAAA,GAAA7B,CAAA,EAAAU,CAAA,SAAA8C,MAAA,gBAAAU,IAAA,GAAAxD,CAAA,CAAA6D,UAAA,EAAApC,CAAA,SAAAgE,QAAA,CAAAvF,CAAA,MAAAuF,QAAA,WAAAA,SAAAlG,CAAA,EAAAD,CAAA,oBAAAC,CAAA,CAAA2B,IAAA,QAAA3B,CAAA,CAAA4B,GAAA,qBAAA5B,CAAA,CAAA2B,IAAA,mBAAA3B,CAAA,CAAA2B,IAAA,QAAAsC,IAAA,GAAAjE,CAAA,CAAA4B,GAAA,gBAAA5B,CAAA,CAAA2B,IAAA,SAAAqE,IAAA,QAAApE,GAAA,GAAA5B,CAAA,CAAA4B,GAAA,OAAA2B,MAAA,kBAAAU,IAAA,yBAAAjE,CAAA,CAAA2B,IAAA,IAAA5B,CAAA,UAAAkE,IAAA,GAAAlE,CAAA,GAAAmC,CAAA,KAAAiE,MAAA,WAAAA,OAAAnG,CAAA,aAAAD,CAAA,QAAAyE,UAAA,CAAAM,MAAA,MAAA/E,CAAA,SAAAA,CAAA,QAAAE,CAAA,QAAAuE,UAAA,CAAAzE,CAAA,OAAAE,CAAA,CAAAqE,UAAA,KAAAtE,CAAA,cAAAkG,QAAA,CAAAjG,CAAA,CAAA0E,UAAA,EAAA1E,CAAA,CAAAsE,QAAA,GAAAG,aAAA,CAAAzE,CAAA,GAAAiC,CAAA,OAAAkE,KAAA,WAAAC,OAAArG,CAAA,aAAAD,CAAA,QAAAyE,UAAA,CAAAM,MAAA,MAAA/E,CAAA,SAAAA,CAAA,QAAAE,CAAA,QAAAuE,UAAA,CAAAzE,CAAA,OAAAE,CAAA,CAAAmE,MAAA,KAAApE,CAAA,QAAAI,CAAA,GAAAH,CAAA,CAAA0E,UAAA,kBAAAvE,CAAA,CAAAuB,IAAA,QAAArB,CAAA,GAAAF,CAAA,CAAAwB,GAAA,EAAA8C,aAAA,CAAAzE,CAAA,YAAAK,CAAA,gBAAA+C,KAAA,8BAAAiD,aAAA,WAAAA,cAAAvG,CAAA,EAAAE,CAAA,EAAAG,CAAA,gBAAAoD,QAAA,KAAA5C,QAAA,EAAA6B,MAAA,CAAA1C,CAAA,GAAAiE,UAAA,EAAA/D,CAAA,EAAAiE,OAAA,EAAA9D,CAAA,oBAAAmD,MAAA,UAAA3B,GAAA,GAAA5B,CAAA,GAAAkC,CAAA,OAAAnC,CAAA;AAAA,SAAAwG,QAAAxG,CAAA,EAAAE,CAAA,QAAAD,CAAA,GAAAE,MAAA,CAAAuF,IAAA,CAAA1F,CAAA,OAAAG,MAAA,CAAAsG,qBAAA,QAAAlG,CAAA,GAAAJ,MAAA,CAAAsG,qBAAA,CAAAzG,CAAA,GAAAE,CAAA,KAAAK,CAAA,GAAAA,CAAA,CAAAmG,MAAA,WAAAxG,CAAA,WAAAC,MAAA,CAAAwG,wBAAA,CAAA3G,CAAA,EAAAE,CAAA,EAAAiB,UAAA,OAAAlB,CAAA,CAAAyE,IAAA,CAAAkC,KAAA,CAAA3G,CAAA,EAAAM,CAAA,YAAAN,CAAA;AAAA,SAAA4G,cAAA7G,CAAA,aAAAE,CAAA,MAAAA,CAAA,GAAA4G,SAAA,CAAA/B,MAAA,EAAA7E,CAAA,UAAAD,CAAA,WAAA6G,SAAA,CAAA5G,CAAA,IAAA4G,SAAA,CAAA5G,CAAA,QAAAA,CAAA,OAAAsG,OAAA,CAAArG,MAAA,CAAAF,CAAA,OAAA4C,OAAA,WAAA3C,CAAA,IAAA6G,eAAA,CAAA/G,CAAA,EAAAE,CAAA,EAAAD,CAAA,CAAAC,CAAA,SAAAC,MAAA,CAAA6G,yBAAA,GAAA7G,MAAA,CAAA8G,gBAAA,CAAAjH,CAAA,EAAAG,MAAA,CAAA6G,yBAAA,CAAA/G,CAAA,KAAAuG,OAAA,CAAArG,MAAA,CAAAF,CAAA,GAAA4C,OAAA,WAAA3C,CAAA,IAAAC,MAAA,CAAAK,cAAA,CAAAR,CAAA,EAAAE,CAAA,EAAAC,MAAA,CAAAwG,wBAAA,CAAA1G,CAAA,EAAAC,CAAA,iBAAAF,CAAA;AAAA,SAAAkH,eAAAC,GAAA,EAAAzG,CAAA,WAAA0G,eAAA,CAAAD,GAAA,KAAAE,qBAAA,CAAAF,GAAA,EAAAzG,CAAA,KAAA4G,2BAAA,CAAAH,GAAA,EAAAzG,CAAA,KAAA6G,gBAAA;AAAA,SAAAA,iBAAA,cAAAvD,SAAA;AAAA,SAAAsD,4BAAA/G,CAAA,EAAAiH,MAAA,SAAAjH,CAAA,qBAAAA,CAAA,sBAAAkH,iBAAA,CAAAlH,CAAA,EAAAiH,MAAA,OAAAnH,CAAA,GAAAF,MAAA,CAAAC,SAAA,CAAAsH,QAAA,CAAA5F,IAAA,CAAAvB,CAAA,EAAAwF,KAAA,aAAA1F,CAAA,iBAAAE,CAAA,CAAA2E,WAAA,EAAA7E,CAAA,GAAAE,CAAA,CAAA2E,WAAA,CAAAC,IAAA,MAAA9E,CAAA,cAAAA,CAAA,mBAAAsH,KAAA,CAAAC,IAAA,CAAArH,CAAA,OAAAF,CAAA,+DAAAwH,IAAA,CAAAxH,CAAA,UAAAoH,iBAAA,CAAAlH,CAAA,EAAAiH,MAAA;AAAA,SAAAC,kBAAAN,GAAA,EAAAW,GAAA,QAAAA,GAAA,YAAAA,GAAA,GAAAX,GAAA,CAAApC,MAAA,EAAA+C,GAAA,GAAAX,GAAA,CAAApC,MAAA,WAAArE,CAAA,MAAAqH,IAAA,OAAAJ,KAAA,CAAAG,GAAA,GAAApH,CAAA,GAAAoH,GAAA,EAAApH,CAAA,IAAAqH,IAAA,CAAArH,CAAA,IAAAyG,GAAA,CAAAzG,CAAA,UAAAqH,IAAA;AAAA,SAAAV,sBAAAnH,CAAA,EAAA8B,CAAA,QAAA/B,CAAA,WAAAC,CAAA,gCAAAS,MAAA,IAAAT,CAAA,CAAAS,MAAA,CAAAE,QAAA,KAAAX,CAAA,4BAAAD,CAAA,QAAAD,CAAA,EAAAK,CAAA,EAAAK,CAAA,EAAAM,CAAA,EAAAJ,CAAA,OAAAqB,CAAA,OAAA1B,CAAA,iBAAAG,CAAA,IAAAT,CAAA,GAAAA,CAAA,CAAA6B,IAAA,CAAA5B,CAAA,GAAAgE,IAAA,QAAAlC,CAAA,QAAA7B,MAAA,CAAAF,CAAA,MAAAA,CAAA,UAAAgC,CAAA,uBAAAA,CAAA,IAAAjC,CAAA,GAAAU,CAAA,CAAAoB,IAAA,CAAA7B,CAAA,GAAAsD,IAAA,MAAA3C,CAAA,CAAA8D,IAAA,CAAA1E,CAAA,CAAAS,KAAA,GAAAG,CAAA,CAAAmE,MAAA,KAAA/C,CAAA,GAAAC,CAAA,iBAAA/B,CAAA,IAAAK,CAAA,OAAAF,CAAA,GAAAH,CAAA,yBAAA+B,CAAA,YAAAhC,CAAA,CAAA8D,MAAA,KAAA/C,CAAA,GAAAf,CAAA,CAAA8D,MAAA,IAAA5D,MAAA,CAAAa,CAAA,MAAAA,CAAA,2BAAAT,CAAA,QAAAF,CAAA,aAAAO,CAAA;AAAA,SAAAwG,gBAAAD,GAAA,QAAAQ,KAAA,CAAAK,OAAA,CAAAb,GAAA,UAAAA,GAAA;AAAA,SAAAc,mBAAAC,GAAA,EAAAhF,OAAA,EAAAiF,MAAA,EAAAC,KAAA,EAAAC,MAAA,EAAAC,GAAA,EAAAzG,GAAA,cAAA0G,IAAA,GAAAL,GAAA,CAAAI,GAAA,EAAAzG,GAAA,OAAApB,KAAA,GAAA8H,IAAA,CAAA9H,KAAA,WAAA+H,KAAA,IAAAL,MAAA,CAAAK,KAAA,iBAAAD,IAAA,CAAAhF,IAAA,IAAAL,OAAA,CAAAzC,KAAA,YAAAgF,OAAA,CAAAvC,OAAA,CAAAzC,KAAA,EAAA2C,IAAA,CAAAgF,KAAA,EAAAC,MAAA;AAAA,SAAAI,kBAAAC,EAAA,6BAAAC,IAAA,SAAAC,IAAA,GAAA9B,SAAA,aAAArB,OAAA,WAAAvC,OAAA,EAAAiF,MAAA,QAAAD,GAAA,GAAAQ,EAAA,CAAA9B,KAAA,CAAA+B,IAAA,EAAAC,IAAA,YAAAR,MAAA3H,KAAA,IAAAwH,kBAAA,CAAAC,GAAA,EAAAhF,OAAA,EAAAiF,MAAA,EAAAC,KAAA,EAAAC,MAAA,UAAA5H,KAAA,cAAA4H,OAAAQ,GAAA,IAAAZ,kBAAA,CAAAC,GAAA,EAAAhF,OAAA,EAAAiF,MAAA,EAAAC,KAAA,EAAAC,MAAA,WAAAQ,GAAA,KAAAT,KAAA,CAAAU,SAAA;AAAA,SAAAC,gBAAAC,QAAA,EAAAC,WAAA,UAAAD,QAAA,YAAAC,WAAA,eAAAjF,SAAA;AAAA,SAAAkF,kBAAAC,MAAA,EAAAC,KAAA,aAAA1I,CAAA,MAAAA,CAAA,GAAA0I,KAAA,CAAArE,MAAA,EAAArE,CAAA,UAAA2I,UAAA,GAAAD,KAAA,CAAA1I,CAAA,GAAA2I,UAAA,CAAAlI,UAAA,GAAAkI,UAAA,CAAAlI,UAAA,WAAAkI,UAAA,CAAAjI,YAAA,wBAAAiI,UAAA,EAAAA,UAAA,CAAAhI,QAAA,SAAAlB,MAAA,CAAAK,cAAA,CAAA2I,MAAA,EAAAG,cAAA,CAAAD,UAAA,CAAAf,GAAA,GAAAe,UAAA;AAAA,SAAAE,aAAAN,WAAA,EAAAO,UAAA,EAAAC,WAAA,QAAAD,UAAA,EAAAN,iBAAA,CAAAD,WAAA,CAAA7I,SAAA,EAAAoJ,UAAA,OAAAC,WAAA,EAAAP,iBAAA,CAAAD,WAAA,EAAAQ,WAAA,GAAAtJ,MAAA,CAAAK,cAAA,CAAAyI,WAAA,iBAAA5H,QAAA,mBAAA4H,WAAA;AAAA,SAAAS,UAAAC,QAAA,EAAAC,UAAA,eAAAA,UAAA,mBAAAA,UAAA,uBAAA5F,SAAA,0DAAA2F,QAAA,CAAAvJ,SAAA,GAAAD,MAAA,CAAAqB,MAAA,CAAAoI,UAAA,IAAAA,UAAA,CAAAxJ,SAAA,IAAA8E,WAAA,IAAAzE,KAAA,EAAAkJ,QAAA,EAAAtI,QAAA,QAAAD,YAAA,aAAAjB,MAAA,CAAAK,cAAA,CAAAmJ,QAAA,iBAAAtI,QAAA,gBAAAuI,UAAA,EAAAC,eAAA,CAAAF,QAAA,EAAAC,UAAA;AAAA,SAAAC,gBAAAtJ,CAAA,EAAA+B,CAAA,IAAAuH,eAAA,GAAA1J,MAAA,CAAAkF,cAAA,GAAAlF,MAAA,CAAAkF,cAAA,CAAAyE,IAAA,cAAAD,gBAAAtJ,CAAA,EAAA+B,CAAA,IAAA/B,CAAA,CAAA+E,SAAA,GAAAhD,CAAA,SAAA/B,CAAA,YAAAsJ,eAAA,CAAAtJ,CAAA,EAAA+B,CAAA;AAAA,SAAAyH,aAAAC,OAAA,QAAAC,yBAAA,GAAAC,yBAAA,oBAAAC,qBAAA,QAAAC,KAAA,GAAAC,eAAA,CAAAL,OAAA,GAAAM,MAAA,MAAAL,yBAAA,QAAAM,SAAA,GAAAF,eAAA,OAAAnF,WAAA,EAAAoF,MAAA,GAAAE,OAAA,CAAAC,SAAA,CAAAL,KAAA,EAAAtD,SAAA,EAAAyD,SAAA,YAAAD,MAAA,GAAAF,KAAA,CAAAxD,KAAA,OAAAE,SAAA,YAAA4D,0BAAA,OAAAJ,MAAA;AAAA,SAAAI,2BAAA/B,IAAA,EAAA7G,IAAA,QAAAA,IAAA,KAAAmB,OAAA,CAAAnB,IAAA,yBAAAA,IAAA,2BAAAA,IAAA,aAAAA,IAAA,yBAAAkC,SAAA,uEAAA2G,sBAAA,CAAAhC,IAAA;AAAA,SAAAgC,uBAAAhC,IAAA,QAAAA,IAAA,yBAAAiC,cAAA,wEAAAjC,IAAA;AAAA,SAAAuB,0BAAA,eAAAM,OAAA,qBAAAA,OAAA,CAAAC,SAAA,oBAAAD,OAAA,CAAAC,SAAA,CAAAI,IAAA,2BAAAC,KAAA,oCAAAC,OAAA,CAAA3K,SAAA,CAAA4K,OAAA,CAAAlJ,IAAA,CAAA0I,OAAA,CAAAC,SAAA,CAAAM,OAAA,8CAAA/K,CAAA;AAAA,SAAAqK,gBAAA9J,CAAA,IAAA8J,eAAA,GAAAlK,MAAA,CAAAkF,cAAA,GAAAlF,MAAA,CAAAqC,cAAA,CAAAsH,IAAA,cAAAO,gBAAA9J,CAAA,WAAAA,CAAA,CAAA+E,SAAA,IAAAnF,MAAA,CAAAqC,cAAA,CAAAjC,CAAA,aAAA8J,eAAA,CAAA9J,CAAA;AAAA,SAAAwG,gBAAAkE,GAAA,EAAA3C,GAAA,EAAA7H,KAAA,IAAA6H,GAAA,GAAAgB,cAAA,CAAAhB,GAAA,OAAAA,GAAA,IAAA2C,GAAA,IAAA9K,MAAA,CAAAK,cAAA,CAAAyK,GAAA,EAAA3C,GAAA,IAAA7H,KAAA,EAAAA,KAAA,EAAAU,UAAA,QAAAC,YAAA,QAAAC,QAAA,oBAAA4J,GAAA,CAAA3C,GAAA,IAAA7H,KAAA,WAAAwK,GAAA;AAAA,SAAA3B,eAAArJ,CAAA,QAAAS,CAAA,GAAAwK,YAAA,CAAAjL,CAAA,gCAAAgD,OAAA,CAAAvC,CAAA,IAAAA,CAAA,GAAAyK,MAAA,CAAAzK,CAAA;AAAA,SAAAwK,aAAAjL,CAAA,EAAAC,CAAA,oBAAA+C,OAAA,CAAAhD,CAAA,MAAAA,CAAA,SAAAA,CAAA,MAAAD,CAAA,GAAAC,CAAA,CAAAU,MAAA,CAAAyK,WAAA,kBAAApL,CAAA,QAAAU,CAAA,GAAAV,CAAA,CAAA8B,IAAA,CAAA7B,CAAA,EAAAC,CAAA,gCAAA+C,OAAA,CAAAvC,CAAA,UAAAA,CAAA,YAAAsD,SAAA,yEAAA9D,CAAA,GAAAiL,MAAA,GAAAE,MAAA,EAAApL,CAAA;AADA,SAASqL,IAAI,EAAEC,KAAK,EAAEC,OAAO,EAAEC,GAAG,QAAQ,eAAe;AAEzD,OAAOC,CAAC,MAAM,QAAQ;AACtB,OAAOC,WAAW;AAClB,SAASC,aAAa;AAEtB,SAASC,cAAc,IAAIC,YAAY;AACvC,SAASD,cAAc,IAAIE,gBAAgB;AAC3C,SAASF,cAAc,IAAIG,aAAa;AACxC,OAAOC,SAAS;AAEhB,IAAMC,cAAc,GAAG;EACrBC,KAAK,EAAE,eAAe;EACtBC,YAAY,EAAE,IAAI;EAClBC,SAAS,EAAE,IAAI;EACfC,IAAI,EAAE;IACJC,OAAO,EAAE,IAAI;IACb9L,KAAK,EAAE,MAAM;IACb+L,QAAQ,EAAE,EAAE;IACZC,KAAK,EAAE,SAAS;IAChBC,UAAU,EAAE,QAAQ;IACpBC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IACdC,KAAK,EAAE,EAAE;IACTC,GAAG,EAAE;EACP,CAAC;EACDC,KAAK,EAAE;IACLP,OAAO,EAAE,IAAI;IACbM,GAAG,EAAE,EAAE;IACPJ,KAAK,EAAE;EACT,CAAC;EACDM,QAAQ,EAAE;IACRR,OAAO,EAAE,IAAI;IACbM,GAAG,EAAE,EAAE;IACPJ,KAAK,EAAE;EACT;AACF,CAAC;AAED,IAAMO,UAAU,GAAG;EACjBC,aAAa,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC;EAC9CC,cAAc,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ;AAClD,CAAC;AAED,IAAMC,YAAY,GAAG,GAAG;AAAA,IAElBC,GAAG,0BAAAC,YAAA;EAAA3D,SAAA,CAAA0D,GAAA,EAAAC,YAAA;EAAA,IAAAC,MAAA,GAAAvD,YAAA,CAAAqD,GAAA;EAiBP,SAAAA,IAAYG,MAAc,EAAE;IAAA,IAAAC,KAAA;IAAAzE,eAAA,OAAAqE,GAAA;IAC1BI,KAAA,GAAAF,MAAA,CAAAxL,IAAA;IAAOiF,eAAA,CAAA4D,sBAAA,CAAA6C,KAAA;IAAAzG,eAAA,CAAA4D,sBAAA,CAAA6C,KAAA;IAAAzG,eAAA,CAAA4D,sBAAA,CAAA6C,KAAA;IAAAzG,eAAA,CAAA4D,sBAAA,CAAA6C,KAAA;IAAAzG,eAAA,CAAA4D,sBAAA,CAAA6C,KAAA;IAAAzG,eAAA,CAAA4D,sBAAA,CAAA6C,KAAA,wBAZ+B,EAAE;IAAAzG,eAAA,CAAA4D,sBAAA,CAAA6C,KAAA;IAAAzG,eAAA,CAAA4D,sBAAA,CAAA6C,KAAA;IAAAzG,eAAA,CAAA4D,sBAAA,CAAA6C,KAAA;IAAAzG,eAAA,CAAA4D,sBAAA,CAAA6C,KAAA;IAAAzG,eAAA,CAAA4D,sBAAA,CAAA6C,KAAA;IAAAzG,eAAA,CAAA4D,sBAAA,CAAA6C,KAAA;IAAAzG,eAAA,CAAA4D,sBAAA,CAAA6C,KAAA;IAAAzG,eAAA,CAAA4D,sBAAA,CAAA6C,KAAA,WASnC,OAAO;IAKZ,IAAMC,KAAK,GAAG/B,CAAC,CAACgC,SAAS,CACvBhC,CAAC,CAACiC,SAAS,CAACzB,cAAc,CAAC,EAC3BqB,MAAM,EACNC,KAAA,CAAKI,oBACP,CAAC;IACD,IAAQzB,KAAK,GAA8DsB,KAAK,CAAxEtB,KAAK;MAAEG,IAAI,GAAwDmB,KAAK,CAAjEnB,IAAI;MAAEQ,KAAK,GAAiDW,KAAK,CAA3DX,KAAK;MAAEC,QAAQ,GAAuCU,KAAK,CAApDV,QAAQ;MAAEV,SAAS,GAA4BoB,KAAK,CAA1CpB,SAAS;MAAED,YAAY,GAAcqB,KAAK,CAA/BrB,YAAY;MAAEyB,OAAO,GAAKJ,KAAK,CAAjBI,OAAO;IACtEL,KAAA,CAAKM,MAAM,GAAG3B,KAAK;IACnBqB,KAAA,CAAKO,KAAK,GAAGzB,IAAI;IACjBkB,KAAA,CAAKQ,MAAM,GAAGlB,KAAK;IACnBU,KAAA,CAAKS,SAAS,GAAGlB,QAAQ;IACzBS,KAAA,CAAKU,UAAU,GAAG7B,SAAS;IAC3BmB,KAAA,CAAKW,aAAa,GAAG/B,YAAY;IACjCoB,KAAA,CAAKY,QAAQ,GAAGP,OAAO;IACvB,QAAQL,KAAA,CAAKrB,KAAK;MAChB,KAAK,eAAe;MACpB,KAAK,gBAAgB;MACrB,KAAK,YAAY;QACfqB,KAAA,CAAKa,IAAI,CAAC,CAAC;QACX;MACF,KAAK,aAAa;QAChBb,KAAA,CAAKc,QAAQ,CAACb,KAAK,CAAC;QACpB;IACJ;IAAC,OAAAD,KAAA;EACH;EAACjE,YAAA,CAAA6D,GAAA;IAAA9E,GAAA;IAAAiG,GAAA,EAED,SAAAA,IAAA,EAA0B;MACxB,OAAO,IAAI,CAACH,QAAQ;IACtB;EAAC;IAAA9F,GAAA;IAAAiG,GAAA,EAED,SAAAA,IAAA,EAAW;MACT,OAAO,IAAI,CAACC,KAAK;IACnB;EAAC;IAAAlG,GAAA;IAAAiG,GAAA,EAED,SAAAA,IAAA,EAAoB;MAClB,OAAO,IAAI,CAACT,MAAM;IACpB;EAAC;IAAAxF,GAAA;IAAAiG,GAAA,EAED,SAAAA,IAAA,EAAyB;MACvB,OAAO,IAAI,CAACL,UAAU;IACxB,CAAC;IAAAO,GAAA,EAED,SAAAA,IAAcC,QAAiB,EAAE;MAC/B,IAAI,CAACR,UAAU,GAAGQ,QAAQ;IAC5B;EAAC;IAAApG,GAAA;IAAAiG,GAAA,EAED,SAAAA,IAAA,EAA4B;MAC1B,OAAO,IAAI,CAACJ,aAAa;IAC3B,CAAC;IAAAM,GAAA,EAED,SAAAA,IAAiBC,QAAiB,EAAE;MAClC,IAAI,CAACP,aAAa,GAAGO,QAAQ;IAC/B;EAAC;IAAApG,GAAA;IAAAiG,GAAA,EAED,SAAAA,IAAA,EAAuB;MACrB,OAAO,IAAI,CAACR,KAAK;IACnB;EAAC;IAAAzF,GAAA;IAAAiG,GAAA,EAED,SAAAA,IAAA,EAAyB;MACvB,OAAO,IAAI,CAACP,MAAM;IACpB;EAAC;IAAA1F,GAAA;IAAAiG,GAAA,EAED,SAAAA,IAAA,EAA+B;MAC7B,OAAO,IAAI,CAACN,SAAS;IACvB;;IAEA;EAAA;IAAA3F,GAAA;IAAA7H,KAAA,EACA,SAAAkO,QAAA,EAAU;MACR,IAAI,CAACC,iBAAiB,CAAC/L,OAAO,CAAC,UAAA6F,EAAE;QAAA,OAAIA,EAAE,CAAC,CAAC;MAAA,EAAC;MAC1C,IAAI,CAACkG,iBAAiB,GAAG,EAAE;MAC3B,IAAI,CAACC,MAAM,CAAC,IAAI,CAACL,KAAK,CAAC;IACzB;EAAC;IAAAlG,GAAA;IAAA7H,KAAA;MAAA,IAAAqO,KAAA,GAAArG,iBAAA,eAAA1I,mBAAA,GAAAqF,IAAA,CAED,SAAA2J,SAAA;QAAA,IAAAC,UAAA;UAAAC,MAAA;UAAAC,eAAA;QAAA,IAAAC,KAAA,EAAAC,qBAAA,EAAAC,UAAA,EAAAC,SAAA,EAAAC,aAAA,EAAAC,UAAA,EAAAC,SAAA;QAAA,OAAA1P,mBAAA,GAAAuB,IAAA,UAAAoO,UAAAC,SAAA;UAAA,kBAAAA,SAAA,CAAA9J,IAAA,GAAA8J,SAAA,CAAAzL,IAAA;YAAA;cACQiL,KAAK,GAAG,IAAI5D,KAAK,CAAC,CAAC;cAAA6D,qBAAA,GAAAlI,cAAA,CACsB8F,UAAU,CAAC,IAAI,CAACb,KAAK,CAAC,MAA9DkD,UAAU,GAAAD,qBAAA,KAAEE,SAAS,GAAAF,qBAAA,KAAEG,aAAa,GAAAH,qBAAA,KAE3C;cACMI,UAAU,GAAG;gBACjBI,UAAU,EAAE;kBAAEC,QAAQ,EAAE7D,aAAa,CAACqD,UAAU,CAAC;kBAAES,MAAM,EAAE,IAAI,CAACxD,IAAI;kBAAEyD,SAAS,EAAE,EAAAf,UAAA,OAAI,CAAC1C,IAAI,cAAA0C,UAAA,uBAATA,UAAA,CAAWzC,OAAO,MAAK;gBAAM,CAAC;gBAC/GyD,SAAS,EAAE;kBAAEH,QAAQ,EAAE/D,YAAY,CAACwD,SAAS,CAAC;kBAAEQ,MAAM,EAAE,IAAI,CAAChD,KAAK;kBAAEiD,SAAS,EAAE,CAAC,IAAI,CAACjD,KAAK,IAAI,IAAI,CAACA,KAAK,CAACP,OAAO,KAAK;gBAAM,CAAC;gBAC5H0D,aAAa,EAAE;kBAAEJ,QAAQ,EAAE9D,gBAAgB,CAACwD,aAAa,CAAC;kBAAEO,MAAM,EAAE,IAAI,CAAC/C,QAAQ;kBAAEgD,SAAS,EAAE,CAAC,IAAI,CAAChD,QAAQ,IAAI,IAAI,CAACA,QAAQ,CAACR,OAAO,KAAK;gBAAM;cAClJ,CAAC,EAED;cACMkD,SAAS,GAAGtP,MAAM,CAAC+P,OAAO,CAACV,UAAU,CAAC,CACzC9I,MAAM,CAAC,UAAAyJ,IAAA;gBAAA,IAAAC,KAAA,GAAAlJ,cAAA,CAAAiJ,IAAA;kBAAMJ,SAAS,GAAAK,KAAA,IAATL,SAAS;gBAAA,OAAQA,SAAS;cAAA,EAAC,CACxCM,GAAG;gBAAA,IAAAC,KAAA,GAAA7H,iBAAA,eAAA1I,mBAAA,GAAAqF,IAAA,CAAC,SAAAmL,QAAAC,KAAA;kBAAA,IAAAC,KAAA,EAAAnI,GAAA,EAAAoI,MAAA,EAAAb,QAAA,EAAAC,MAAA,EAAAa,QAAA;kBAAA,OAAA5Q,mBAAA,GAAAuB,IAAA,UAAAsP,SAAAC,QAAA;oBAAA,kBAAAA,QAAA,CAAAhL,IAAA,GAAAgL,QAAA,CAAA3M,IAAA;sBAAA;wBAAAuM,KAAA,GAAAvJ,cAAA,CAAAsJ,KAAA,MAAQlI,GAAG,GAAAmI,KAAA,KAAAC,MAAA,GAAAD,KAAA,KAAIZ,QAAQ,GAAAa,MAAA,CAARb,QAAQ,EAAEC,MAAM,GAAAY,MAAA,CAANZ,MAAM;wBAAA,IAC7BD,QAAQ;0BAAAgB,QAAA,CAAA3M,IAAA;0BAAA;wBAAA;wBAAA,OAAA2M,QAAA,CAAA/M,MAAA;sBAAA;wBAAA+M,QAAA,CAAA3M,IAAA;wBAAA,OAEU2L,QAAQ,CAAC,CAAC;sBAAA;wBAA3Bc,QAAQ,GAAAE,QAAA,CAAAlN,IAAA;wBACdsL,MAAI,CAAC3G,GAAG,CAAC,GAAG,IAAIqI,QAAQ,CAAA9J,aAAA,KAAMiJ,MAAM,CAAE,CAAC;wBAAAe,QAAA,CAAA3M,IAAA;wBAAA,OACjC+K,MAAI,CAAC3G,GAAG,CAAC,CAACwI,KAAK;sBAAA;wBACrB3B,KAAK,CAAC4B,GAAG,CAAC9B,MAAI,CAAC3G,GAAG,CAAC,CAAC;sBAAA;sBAAA;wBAAA,OAAAuI,QAAA,CAAA7K,IAAA;oBAAA;kBAAA,GAAAuK,OAAA;gBAAA,CACrB;gBAAA,iBAAAS,EAAA;kBAAA,OAAAV,KAAA,CAAA1J,KAAA,OAAAE,SAAA;gBAAA;cAAA,IAAC,EAEJ;cAAA6I,SAAA,CAAAzL,IAAA;cAAA,OACMuB,OAAO,CAACwL,GAAG,CAACxB,SAAS,CAAC;YAAA;cAE5B,IAAI,CAACjB,KAAK,GAAGW,KAAK;cAClB;cACA,IAAI,CAAC+B,eAAe,CAAC,CAAC;cACtB;cACA,IAAI,CAACC,gBAAgB,CAAChC,KAAK,CAAC;cAC5B;cACAA,KAAK,CAACiC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC;cACnC;cACA,CAAAlC,eAAA,OAAI,CAACc,SAAS,cAAAd,eAAA,eAAdA,eAAA,CAAgBmC,cAAc,CAAC,CAAC;cAChC,IAAI,CAACN,GAAG,CAAC5B,KAAK,CAAC;;cAEf;cACA,IAAI,CAACpB,KAAK,GAAG,IAAI,CAACuD,WAAW,CAAC,IAAI,CAACvD,KAAK,EAAE,IAAI,CAAC6B,UAAU,CAAC;cAC1D,IAAI,CAAC5B,MAAM,GAAG,IAAI,CAACsD,WAAW,CAAC,IAAI,CAACtD,MAAM,EAAE,IAAI,CAACgC,SAAS,CAAC;cAC3D,IAAI,CAAC/B,SAAS,GAAG,IAAI,CAACqD,WAAW,CAAC,IAAI,CAACrD,SAAS,EAAE,IAAI,CAACgC,aAAa,CAAC;cAErE,IAAI,CAACsB,iBAAiB,CAAC,CAAC;YAAA;YAAA;cAAA,OAAA5B,SAAA,CAAA3J,IAAA;UAAA;QAAA,GAAA+I,QAAA;MAAA,CACzB;MAAA,SAAAV,KAAA;QAAA,OAAAS,KAAA,CAAAlI,KAAA,OAAAE,SAAA;MAAA;MAAA,OAAAuH,IAAA;IAAA,IAED;EAAA;IAAA/F,GAAA;IAAA7H,KAAA,EACA,SAAA6N,SAAiBb,KAAK,EAAE;MACtB,IAAM0B,KAAK,GAAG,IAAI5D,KAAK,CAAC,CAAC;MACzB,IAAI,CAACiD,KAAK,GAAGW,KAAK;MAClB,IAAMqC,KAAK,GAAG,IAAIvF,SAAS,CAACwB,KAAK,CAAC;MAClC,IAAI,CAACgE,MAAM,GAAGD,KAAK;MACnBrC,KAAK,CAAC4B,GAAG,CAACS,KAAK,CAAC;MAChB;MACA,IAAI,CAACtD,UAAU,GAAG,KAAK;MACvB,IAAI,CAAC6C,GAAG,CAAC5B,KAAK,CAAC;MACf,IAAI,CAACoC,iBAAiB,CAAC,CAAC;IAC1B;;IAEA;EAAA;IAAAjJ,GAAA;IAAA7H,KAAA,EACA,SAAAyQ,gBAAA,EAA0B;MAAA,IAAAQ,gBAAA,EAAAC,gBAAA,EAAAC,mBAAA;MACxB,IAAMC,SAAS,GAAG,IAAI,CAACjC,UAAU,GAAG,IAAI,CAACkC,UAAU,CAAC,IAAI,CAAClC,UAAU,CAAC,GAAG;QAAEmC,MAAM,EAAE;MAAE,CAAC;MACpF,IAAMC,QAAQ,GAAG,IAAI,CAAChC,SAAS,GAAG,IAAI,CAAC8B,UAAU,CAAC,IAAI,CAAC9B,SAAS,CAAC,GAAG;QAAE+B,MAAM,EAAE;MAAE,CAAC;;MAEjF;MACA,IAAIE,KAAK,GAAG,CAACJ,SAAS,CAACE,MAAM,GAAG,CAAC;MACjC,IAAMG,UAAU,GAAGF,QAAQ,CAACD,MAAM;MAClC,IAAMI,UAAU,GAAG,EAAAT,gBAAA,OAAI,CAAC1B,SAAS,cAAA0B,gBAAA,gBAAAA,gBAAA,GAAdA,gBAAA,CAAgBU,MAAM,cAAAV,gBAAA,uBAAtBA,gBAAA,CAAyB,CAAC,CAAC,KAAI,CAAC;MAEnDO,KAAK,IAAIE,UAAU;MACnB,CAAAR,gBAAA,OAAI,CAAC3B,SAAS,cAAA2B,gBAAA,eAAdA,gBAAA,CAAgBU,QAAQ,CAACC,IAAI,CAACL,KAAK,GAAGC,UAAU,GAAG,CAAC,CAAC;MACrD,CAAAN,mBAAA,OAAI,CAAC3B,aAAa,cAAA2B,mBAAA,eAAlBA,mBAAA,CAAoBS,QAAQ,CAACC,IAAI,CAACL,KAAK,GAAGC,UAAU,CAAC;IACvD;EAAC;IAAA5J,GAAA;IAAA7H,KAAA,EAED,SAAAqR,WAAmBS,IAAI,EAAE;MACvB;MACA,IAAAC,mBAAA,GAAqB,IAAIlH,IAAI,CAAC,CAAC,CAACmH,aAAa,CAACF,IAAI,CAAC;QAA3CG,GAAG,GAAAF,mBAAA,CAAHE,GAAG;QAAEC,GAAG,GAAAH,mBAAA,CAAHG,GAAG;MAChB,OAAO;QAAEC,KAAK,EAAEF,GAAG,CAACG,CAAC,GAAGF,GAAG,CAACE,CAAC;QAAEd,MAAM,EAAEW,GAAG,CAACvQ,CAAC,GAAGwQ,GAAG,CAACxQ;MAAE,CAAC;IACxD;EAAC;IAAAmG,GAAA;IAAA7H,KAAA,EAED,SAAA0Q,iBAAyBoB,IAAc,EAAE;MACvC;MACA,IAAMO,GAAG,GAAG,IAAIxH,IAAI,CAAC,CAAC,CAACmH,aAAa,CAACF,IAAI,CAAC;MAC1C,IAAMQ,IAAI,GAAG,IAAIvH,OAAO,CAAC,CAAC;MAC1B,IAAMwH,MAAM,GAAG,IAAIxH,OAAO,CAAC,CAAC;MAC5BsH,GAAG,CAACG,OAAO,CAACF,IAAI,CAAC;MACjBD,GAAG,CAACI,SAAS,CAACF,MAAM,CAAC;;MAErB;MACA,IAAMG,YAAY,GAAG,IAAI3H,OAAO,CAACwH,MAAM,CAACH,CAAC,EAAEC,GAAG,CAACH,GAAG,CAACxQ,CAAC,EAAE6Q,MAAM,CAACI,CAAC,CAAC;MAC/D;MACAb,IAAI,CAACc,QAAQ,CAACxQ,OAAO,CAAC,UAAC0P,IAAI,EAAK;QAC9BA,IAAI,CAACF,QAAQ,CAACiB,GAAG,CAACH,YAAY,CAAC;MACjC,CAAC,CAAC;IACJ;EAAC;IAAA7K,GAAA;IAAA7H,KAAA,EAED,SAAA8S,oBAAA,EAA8B;MAC5B,IAAAC,aAAA,GAAmB/H,GAAG,CAACgI,QAAQ,CAAC,CAAC;QAAzBC,MAAM,GAAAF,aAAA,CAANE,MAAM;MACd;MACA;;MAEA9H,aAAa,CAAC,IAAI,CAAC4C,KAAK,EAAEkF,MAAM,CAACrB,QAAQ,CAAC;IAC5C;;IAEA;IACA;IACA;EAAA;IAAA/J,GAAA;IAAA7H,KAAA,EACA,SAAAkT,YAAA,EAAsB;MACpB,IAAAC,cAAA,GAAmBnI,GAAG,CAACgI,QAAQ,CAAC,CAAC;QAAzBC,MAAM,GAAAE,cAAA,CAANF,MAAM;MACd;MACA;MACA;MACAG,OAAO,CAACC,GAAG,CAAC,cAAc,CAAC;MAC3B,IAAMC,QAAQ,GAAGL,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAErB,QAAQ,CAAC2B,UAAU,CAAC,IAAI,CAACxF,KAAK,CAAC6D,QAAQ,CAAC;MACjE,IAAI0B,QAAQ,IAAI5G,YAAY,EAC1B;MAEF,IAAM8G,KAAK,GAAGF,QAAQ,GAAG,EAAE,IAAI,CAAC;MAChCF,OAAO,CAACC,GAAG,CAAC,QAAQ,EAAEG,KAAK,CAAC;MAC5B,IAAI,CAACzF,KAAK,CAACyF,KAAK,CAACxF,GAAG,CAACwF,KAAK,EAAEA,KAAK,EAAEA,KAAK,CAAC;IAC3C;EAAC;IAAA3L,GAAA;IAAA7H,KAAA,EAED,SAAA8Q,kBAAA,EAA4B;MAAA,IAAA2C,MAAA;QAAAC,oBAAA;MAC1B,IAAMC,eAAe,GAAG,SAAlBA,eAAeA,CAAA,EAAS;QAC5BP,OAAO,CAACC,GAAG,CAAC,UAAU,EAAEI,MAAI,CAAC/F,aAAa,EAAE+F,MAAI,CAAChG,UAAU,CAAC;QAC5D,IAAAmG,cAAA,GAAmB5I,GAAG,CAACgI,QAAQ,CAAC,CAAC;UAAzBC,MAAM,GAAAW,cAAA,CAANX,MAAM;QACd;QACAQ,MAAI,CAAC/F,aAAa,KAAK,KAAK,IAAI+F,MAAI,CAACX,mBAAmB,CAAC,CAAC;QAC1DW,MAAI,CAAChG,UAAU,KAAK,IAAI,IAAIgG,MAAI,CAACP,WAAW,CAAC,CAAC;QAC9C;QACA,IAAIO,MAAI,CAACzC,MAAM,IAAIiC,MAAM,EAAE;UACzBQ,MAAI,CAACzC,MAAM,CAAC6C,YAAY,CAACZ,MAAM,CAAC;UAChCQ,MAAI,CAACzC,MAAM,CAAC8C,kBAAkB,CAACb,MAAM,CAAC;QACxC;MACF,CAAC;MAED,IAAMc,KAAK,GAAG/I,GAAG,CAACgI,QAAQ,CAAC,CAAC;MAC5B,IAAMgB,QAAQ,GAAG,SAAXA,QAAQA,CAAA;QAAA,OAASL,eAAe,CAAC,CAAC;MAAA;MACxCA,eAAe,CAAC,CAAC;MACjB,CAAAD,oBAAA,GAAAK,KAAK,CAACE,aAAa,cAAAP,oBAAA,eAAnBA,oBAAA,CAAqBQ,gBAAgB,CAAC,QAAQ,EAAEF,QAAQ,CAAC;MACzD,IAAI,CAAC7F,iBAAiB,CAAClK,IAAI,CAAC,YAAM;QAAA,IAAAkQ,qBAAA;QAChC,CAAAA,qBAAA,GAAAJ,KAAK,CAACE,aAAa,cAAAE,qBAAA,eAAnBA,qBAAA,CAAqBC,mBAAmB,CAAC,QAAQ,EAAEJ,QAAQ,CAAC;MAC9D,CAAC,CAAC;;MAEF;MACA,IAAMK,WAAW,GAAGrJ,GAAG,CAACsJ,QAAQ,CAAC,YAAM;QACrCX,eAAe,CAAC,CAAC;MACnB,CAAC,CAAC;MACF,IAAI,CAACxF,iBAAiB,CAAClK,IAAI,CAAC;QAAA,OAAMoQ,WAAW,CAAC,CAAC;MAAA,EAAC;IAClD;EAAC;EAAA,OAAA1H,GAAA;AAAA,EAhPezB,WAAW;AAmP7B,SAASyB,GAAG"}
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","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","minLen","_arrayLikeToArray","toString","Array","from","test","len","arr2","isArray","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","_inherits","subClass","superClass","_setPrototypeOf","bind","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf","result","NewTarget","Reflect","construct","_possibleConstructorReturn","_assertThisInitialized","ReferenceError","sham","Proxy","Boolean","valueOf","obj","_toPrimitive","String","toPrimitive","Number","Box3","Group","Vector3","use","_","ObjectLayer","lookAtOnYAxis","StrategyManage","LinkStrategy","ParticleStrategy","TitleStrategy","InfoPanel","DEFAULT_OPTION","style","facingCamera","autoScale","text","visible","fontSize","color","fontWeight","offset","bgUrl","uri","model","particle","STYLE_DATA","poi_border_01","poi_ellipse_01","MAX_DISTANCE","Poi","_ObjectLayer","_super","option","_this","param","mergeWith","cloneDeep","arrayMergeCustomizer","content","_style","_text","_model","_particle","_autoScale","_facingCamera","_content","init","initCard","get","_mesh","set","newValue","destroy","_disposeCallbacks","remove","_init","_callee2","_this$text","_this2","_this$_linkMesh","group","_STYLE_DATA$this$styl","titleStyle","linkStyle","particleStyle","strategies","loadTasks","_callee2$","_context2","_titleMesh","strategy","config","condition","_linkMesh","_particleMesh","entries","_ref","_ref2","map","_ref4","_callee","_ref3","_ref5","_ref5$","ClassRef","_callee$","_context","ready","add","_x","all","calculateLayout","setupBoundingBox","updateWorldMatrix","setupAnimation","createProxy","addEventListeners","panel","_panel","_this$_linkMesh2","_this$_linkMesh3","_this$_particleMesh","titleSize","getBoxSize","height","linkSize","baseY","linkHeight","linkVSpace","vspace","position","setY","mesh","_Box3$setFromObject","setFromObject","max","min","width","x","box","size","center","getSize","getCenter","bottomCenter","z","children","sub","updateViewDirection","_use$useScene","useScene","camera","parent","updateScale","_use$useScene2","distance","distanceTo","scale","_this3","_scene$orbitControls","updateTransform","_use$useScene3","updateFacing","updateDynamicScale","scene","callback","orbitControls","addEventListener","_scene$orbitControls2","removeEventListener","cancelFrame","useframe"],"sources":["../../../src/business/Poi/index.ts"],"sourcesContent":["import { Box3, Group, Vector3, use } from '@anov/3d-core'\nimport type { Mesh, Object3D } from '@anov/3d-core'\nimport _ from 'lodash'\nimport ObjectLayer from '../Base/ObjectLayer'\nimport { lookAtOnYAxis } from './tools'\nimport type { IPoi, ModelOption, Option, ParticleOption, TextOption } from './types'\nimport { StrategyManage as LinkStrategy } from './link'\nimport { StrategyManage as ParticleStrategy } from './particle'\nimport { StrategyManage as TitleStrategy } from './title'\nimport InfoPanel from './panel'\n\nconst DEFAULT_OPTION = {\n style: 'poi_border_01',\n facingCamera: true,\n autoScale: true,\n text: {\n visible: true,\n value: '标题文字',\n fontSize: 16,\n color: '#ffffff',\n fontWeight: 'normal',\n offset: [0, 0],\n bgUrl: '',\n uri: '',\n },\n model: {\n visible: true,\n uri: '',\n color: '#2C8AFF',\n },\n particle: {\n visible: true,\n uri: '',\n color: '#FFFFFF',\n },\n}\n\nconst STYLE_DATA = {\n poi_border_01: ['border', 'pyramid', 'circle'],\n poi_ellipse_01: ['ellipse', 'cylinder', 'circle'],\n}\n\nconst MAX_DISTANCE = 500\n\nclass Poi extends ObjectLayer implements IPoi {\n private _mesh!: Group\n private _titleMesh: Mesh & any\n private _linkMesh: Mesh | Group & any\n private _particleMesh: Mesh & any\n private _panel?: InfoPanel\n private _disposeCallbacks: Function[] = []\n\n private _style: string\n private _autoScale: boolean\n private _facingCamera: boolean\n private _text: TextOption\n private _model: ModelOption\n private _particle: ParticleOption\n private _content: TextOption\n type = 'Group'\n\n constructor(option: Option) {\n super()\n\n const param = _.mergeWith(\n _.cloneDeep(DEFAULT_OPTION),\n option,\n this.arrayMergeCustomizer,\n )\n const { style, text, model, particle, autoScale, facingCamera, content } = param\n this._style = style\n this._text = text\n this._model = model\n this._particle = particle\n this._autoScale = autoScale\n this._facingCamera = facingCamera\n this._content = content\n switch (this.style) {\n case 'poi_border_01':\n case 'poi_ellipse_01':\n case 'poi_custom':\n this.init()\n break\n case 'poi_card_01':\n this.initCard(param)\n break\n }\n }\n\n get content(): TextOption {\n return this._content\n }\n\n get mesh() {\n return this._mesh\n }\n\n get style(): string {\n return this._style\n }\n\n get autoScale(): boolean {\n return this._autoScale\n }\n\n set autoScale(newValue: boolean) {\n this._autoScale = newValue\n }\n\n get facingCamera(): boolean {\n return this._facingCamera\n }\n\n set facingCamera(newValue: boolean) {\n this._facingCamera = newValue\n }\n\n get text(): TextOption {\n return this._text\n }\n\n get model(): ModelOption {\n return this._model\n }\n\n get particle(): ParticleOption {\n return this._particle\n }\n\n // 销毁\n destroy() {\n this._disposeCallbacks.forEach(fn => fn())\n this._disposeCallbacks = []\n this.remove(this._mesh)\n }\n\n private async init() {\n const group = new Group()\n const [titleStyle, linkStyle, particleStyle] = STYLE_DATA[this.style]\n\n // 仅加载需要的资源\n const strategies = {\n _titleMesh: { strategy: TitleStrategy[titleStyle], config: this.text, condition: this.text?.visible !== false },\n _linkMesh: { strategy: LinkStrategy[linkStyle], config: this.model, condition: !this.model || this.model.visible !== false },\n _particleMesh: { strategy: ParticleStrategy[particleStyle], config: this.particle, condition: !this.particle || this.particle.visible !== false },\n }\n\n // 过滤掉不需要加载的组件,并发加载\n const loadTasks = Object.entries(strategies)\n .filter(([, { condition }]) => condition)\n .map(async ([key, { strategy, config }]) => {\n if (!strategy)\n return\n const ClassRef = await strategy()\n this[key] = new ClassRef({ ...config })\n await this[key].ready\n group.add(this[key])\n })\n\n // 等待所有组件加载完成\n await Promise.all(loadTasks)\n\n this._mesh = group\n // 布局计算\n this.calculateLayout()\n // 边界盒处理\n this.setupBoundingBox(group)\n // 统一更新矩阵\n group.updateWorldMatrix(true, true)\n // 动画和事件\n this._linkMesh?.setupAnimation()\n this.add(group)\n\n // 代理\n this._text = this.createProxy(this._text, this._titleMesh)\n this._model = this.createProxy(this._model, this._linkMesh)\n this._particle = this.createProxy(this._particle, this._particleMesh)\n\n this.addEventListeners()\n }\n\n /** 初始化卡片样式 */\n private initCard(param) {\n const group = new Group()\n this._mesh = group\n const panel = new InfoPanel(param)\n this._panel = panel\n group.add(panel)\n // CSS3D 信息面板默认不随距离缩放,保持屏幕像素尺寸稳定\n this._autoScale = false\n this.add(group)\n this.addEventListeners()\n }\n\n /** 布局计算 */\n private calculateLayout() {\n const titleSize = this._titleMesh ? this.getBoxSize(this._titleMesh) : { height: 0 }\n const linkSize = this._linkMesh ? this.getBoxSize(this._linkMesh) : { height: 0 }\n\n // 计算基础 Y 轴偏移\n let baseY = -titleSize.height / 2\n const linkHeight = linkSize.height\n const linkVSpace = this._linkMesh?.vspace?.[0] || 0\n\n baseY -= linkVSpace\n this._linkMesh?.position.setY(baseY - linkHeight / 2)\n this._particleMesh?.position.setY(baseY - linkHeight)\n }\n\n private getBoxSize(mesh) {\n // mesh.updateWorldMatrix(true, true)\n const { max, min } = new Box3().setFromObject(mesh)\n return { width: max.x - min.x, height: max.y - min.y }\n }\n\n private setupBoundingBox(mesh: Object3D) {\n // 计算Group的边界盒\n const box = new Box3().setFromObject(mesh)\n const size = new Vector3()\n const center = new Vector3()\n box.getSize(size)\n box.getCenter(center)\n\n // 计算底部中心位置\n const bottomCenter = new Vector3(center.x, box.min.y, center.z)\n // 平移所有Mesh,使底部中心对齐到控制点\n mesh.children.forEach((mesh) => {\n mesh.position.sub(bottomCenter)\n })\n }\n\n private updateViewDirection() {\n const { camera } = use.useScene()\n // camera && this._mesh.quaternion.copy(camera.quaternion)\n // this._mesh.rotation.y = camera.rotation.y\n\n lookAtOnYAxis(this._mesh.parent, camera.position)\n }\n\n /// <summary>\n /// 按照距离缩放,距离越远,缩放越大\n /// </summary>\n private updateScale() {\n const { camera } = use.useScene()\n // Make the signboard face the camera\n // this._mesh.lookAt(camera.position);\n // 计算相机和物体之间的距离\n const distance = camera?.position.distanceTo(this._mesh.parent.position)\n if (distance >= MAX_DISTANCE)\n return\n\n const scale = distance / 20 || 1\n this._mesh.scale.set(scale, scale, scale)\n }\n\n private addEventListeners() {\n const updateTransform = () => {\n const { camera } = use.useScene()\n // 普通 POI:依旧使用面向相机和距离缩放\n this._facingCamera !== false && this.updateViewDirection()\n this._autoScale === true && this.updateScale()\n // CSS3D 面板:使用动态像素→米缩放,并处理面板面向相机\n if (this._panel && camera) {\n this._panel.updateFacing(camera)\n this._panel.updateDynamicScale(camera)\n }\n }\n\n const scene = use.useScene()\n const callback = () => updateTransform()\n updateTransform()\n scene.orbitControls?.addEventListener('change', callback)\n this._disposeCallbacks.push(() => {\n scene.orbitControls?.removeEventListener('change', callback)\n })\n\n // 每帧跟随更新,确保场景缩放/组变换也能驱动面板更新\n const cancelFrame = use.useframe(() => {\n updateTransform()\n })\n this._disposeCallbacks.push(() => cancelFrame())\n }\n}\n\nexport { Poi }\n"],"mappings":"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"}
@@ -3,7 +3,7 @@
3
3
  * @param v 任意字符串
4
4
  * @returns 'left' | 'center' | 'right'
5
5
  */
6
- declare function clampAlign(v: any): "center" | "left" | "right";
6
+ declare function clampAlign(v: any): "left" | "right" | "center";
7
7
  /**
8
8
  * 将任意字重值规范化为 'normal' 或 'bold'。
9
9
  * @param v 任意字符串
@@ -28,7 +28,6 @@ export var createTextCanvas = function createTextCanvas(option) {
28
28
  };
29
29
  };
30
30
  export var lookAtOnYAxis = function lookAtOnYAxis(mesh, targetPosition) {
31
- console.log('lookAtOnYAxis ');
32
31
  if (!mesh || !targetPosition || !mesh.position || !mesh.rotation) return;
33
32
  var direction = new Vector3().subVectors(targetPosition, mesh.position);
34
33
  direction.y = 0;
@@ -36,7 +35,6 @@ export var lookAtOnYAxis = function lookAtOnYAxis(mesh, targetPosition) {
36
35
  // 修正水平朝向计算:绕 Y 轴朝向相机
37
36
  // 标准做法:yaw = atan2(dx, dz)
38
37
  var yaw = Math.atan2(direction.x, direction.z);
39
- console.log('lookAtOnYAxis :', yaw);
40
38
  mesh.rotation.y = yaw;
41
39
  };
42
40
  //# sourceMappingURL=tools.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["CanvasTexture","Vector3","createTextCanvas","option","_ref","text","value","fontSize","color","fontWeight","pixelRatio","tempCanvas","document","createElement","ctx","getContext","font","concat","textWidth","Math","ceil","measureText","width","textHeight","canvas","height","context","fillStyle","textAlign","textBaseline","fillText","texture","lookAtOnYAxis","mesh","targetPosition","console","log","position","rotation","direction","subVectors","y","normalize","yaw","atan2","x","z"],"sources":["../../../src/business/Poi/tools.ts"],"sourcesContent":["import { CanvasTexture, Vector3 } from '@anov/3d-core'\n\nexport interface TextOption {\n value?: string\n fontSize?: number\n color?: string\n fontWeight?: string\n}\n// 获取文字的canvas\nexport const createTextCanvas = (option: TextOption) => {\n const { value: text, fontSize, color, fontWeight } = option || {}\n\n const pixelRatio = 1// window.devicePixelRatio || 1\n const tempCanvas = document.createElement('canvas')\n const ctx = tempCanvas.getContext('2d')!\n ctx.font = `${fontWeight} ${fontSize * pixelRatio}px Arial`\n\n const textWidth = Math.ceil(ctx.measureText(text).width)\n const textHeight = Math.ceil(fontSize * pixelRatio * 1.1)\n\n const canvas = document.createElement('canvas')\n canvas.width = textWidth\n canvas.height = textHeight\n const context = canvas.getContext('2d')!\n context.fillStyle = color\n context.font = ctx.font\n context.textAlign = 'center'\n context.textBaseline = 'middle'\n context.fillText(text, textWidth / 2, textHeight / 2)\n\n return { width: textWidth, height: textHeight, texture: new CanvasTexture(canvas) }\n}\n\nexport const lookAtOnYAxis = (mesh, targetPosition) => {\n console.log('lookAtOnYAxis ')\n if (!mesh || !targetPosition || !mesh.position || !mesh.rotation)\n return\n const direction = new Vector3().subVectors(targetPosition, mesh.position)\n direction.y = 0\n direction.normalize()\n // 修正水平朝向计算:绕 Y 轴朝向相机\n // 标准做法:yaw = atan2(dx, dz)\n const yaw = Math.atan2(direction.x, direction.z)\n console.log('lookAtOnYAxis :', yaw)\n mesh.rotation.y = yaw\n}\n"],"mappings":"AAAA,SAASA,aAAa,EAAEC,OAAO,QAAQ,eAAe;AAQtD;AACA,OAAO,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAIC,MAAkB,EAAK;EACtD,IAAAC,IAAA,GAAqDD,MAAM,IAAI,CAAC,CAAC;IAAlDE,IAAI,GAAAD,IAAA,CAAXE,KAAK;IAAQC,QAAQ,GAAAH,IAAA,CAARG,QAAQ;IAAEC,KAAK,GAAAJ,IAAA,CAALI,KAAK;IAAEC,UAAU,GAAAL,IAAA,CAAVK,UAAU;EAEhD,IAAMC,UAAU,GAAG,CAAC;EACpB,IAAMC,UAAU,GAAGC,QAAQ,CAACC,aAAa,CAAC,QAAQ,CAAC;EACnD,IAAMC,GAAG,GAAGH,UAAU,CAACI,UAAU,CAAC,IAAI,CAAE;EACxCD,GAAG,CAACE,IAAI,MAAAC,MAAA,CAAMR,UAAU,OAAAQ,MAAA,CAAIV,QAAQ,GAAGG,UAAU,aAAU;EAE3D,IAAMQ,SAAS,GAAGC,IAAI,CAACC,IAAI,CAACN,GAAG,CAACO,WAAW,CAAChB,IAAI,CAAC,CAACiB,KAAK,CAAC;EACxD,IAAMC,UAAU,GAAGJ,IAAI,CAACC,IAAI,CAACb,QAAQ,GAAGG,UAAU,GAAG,GAAG,CAAC;EAEzD,IAAMc,MAAM,GAAGZ,QAAQ,CAACC,aAAa,CAAC,QAAQ,CAAC;EAC/CW,MAAM,CAACF,KAAK,GAAGJ,SAAS;EACxBM,MAAM,CAACC,MAAM,GAAGF,UAAU;EAC1B,IAAMG,OAAO,GAAGF,MAAM,CAACT,UAAU,CAAC,IAAI,CAAE;EACxCW,OAAO,CAACC,SAAS,GAAGnB,KAAK;EACzBkB,OAAO,CAACV,IAAI,GAAGF,GAAG,CAACE,IAAI;EACvBU,OAAO,CAACE,SAAS,GAAG,QAAQ;EAC5BF,OAAO,CAACG,YAAY,GAAG,QAAQ;EAC/BH,OAAO,CAACI,QAAQ,CAACzB,IAAI,EAAEa,SAAS,GAAG,CAAC,EAAEK,UAAU,GAAG,CAAC,CAAC;EAErD,OAAO;IAAED,KAAK,EAAEJ,SAAS;IAAEO,MAAM,EAAEF,UAAU;IAAEQ,OAAO,EAAE,IAAI/B,aAAa,CAACwB,MAAM;EAAE,CAAC;AACrF,CAAC;AAED,OAAO,IAAMQ,aAAa,GAAG,SAAhBA,aAAaA,CAAIC,IAAI,EAAEC,cAAc,EAAK;EACrDC,OAAO,CAACC,GAAG,CAAC,gBAAgB,CAAC;EAC7B,IAAI,CAACH,IAAI,IAAI,CAACC,cAAc,IAAI,CAACD,IAAI,CAACI,QAAQ,IAAI,CAACJ,IAAI,CAACK,QAAQ,EAC9D;EACF,IAAMC,SAAS,GAAG,IAAItC,OAAO,CAAC,CAAC,CAACuC,UAAU,CAACN,cAAc,EAAED,IAAI,CAACI,QAAQ,CAAC;EACzEE,SAAS,CAACE,CAAC,GAAG,CAAC;EACfF,SAAS,CAACG,SAAS,CAAC,CAAC;EACrB;EACA;EACA,IAAMC,GAAG,GAAGxB,IAAI,CAACyB,KAAK,CAACL,SAAS,CAACM,CAAC,EAAEN,SAAS,CAACO,CAAC,CAAC;EAChDX,OAAO,CAACC,GAAG,CAAC,iBAAiB,EAAEO,GAAG,CAAC;EACnCV,IAAI,CAACK,QAAQ,CAACG,CAAC,GAAGE,GAAG;AACvB,CAAC"}
1
+ {"version":3,"names":["CanvasTexture","Vector3","createTextCanvas","option","_ref","text","value","fontSize","color","fontWeight","pixelRatio","tempCanvas","document","createElement","ctx","getContext","font","concat","textWidth","Math","ceil","measureText","width","textHeight","canvas","height","context","fillStyle","textAlign","textBaseline","fillText","texture","lookAtOnYAxis","mesh","targetPosition","position","rotation","direction","subVectors","y","normalize","yaw","atan2","x","z"],"sources":["../../../src/business/Poi/tools.ts"],"sourcesContent":["import { CanvasTexture, Vector3 } from '@anov/3d-core'\n\nexport interface TextOption {\n value?: string\n fontSize?: number\n color?: string\n fontWeight?: string\n}\n// 获取文字的canvas\nexport const createTextCanvas = (option: TextOption) => {\n const { value: text, fontSize, color, fontWeight } = option || {}\n\n const pixelRatio = 1// window.devicePixelRatio || 1\n const tempCanvas = document.createElement('canvas')\n const ctx = tempCanvas.getContext('2d')!\n ctx.font = `${fontWeight} ${fontSize * pixelRatio}px Arial`\n\n const textWidth = Math.ceil(ctx.measureText(text).width)\n const textHeight = Math.ceil(fontSize * pixelRatio * 1.1)\n\n const canvas = document.createElement('canvas')\n canvas.width = textWidth\n canvas.height = textHeight\n const context = canvas.getContext('2d')!\n context.fillStyle = color\n context.font = ctx.font\n context.textAlign = 'center'\n context.textBaseline = 'middle'\n context.fillText(text, textWidth / 2, textHeight / 2)\n\n return { width: textWidth, height: textHeight, texture: new CanvasTexture(canvas) }\n}\n\nexport const lookAtOnYAxis = (mesh, targetPosition) => {\n if (!mesh || !targetPosition || !mesh.position || !mesh.rotation)\n return\n const direction = new Vector3().subVectors(targetPosition, mesh.position)\n direction.y = 0\n direction.normalize()\n // 修正水平朝向计算:绕 Y 轴朝向相机\n // 标准做法:yaw = atan2(dx, dz)\n const yaw = Math.atan2(direction.x, direction.z)\n mesh.rotation.y = yaw\n}\n"],"mappings":"AAAA,SAASA,aAAa,EAAEC,OAAO,QAAQ,eAAe;AAQtD;AACA,OAAO,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAIC,MAAkB,EAAK;EACtD,IAAAC,IAAA,GAAqDD,MAAM,IAAI,CAAC,CAAC;IAAlDE,IAAI,GAAAD,IAAA,CAAXE,KAAK;IAAQC,QAAQ,GAAAH,IAAA,CAARG,QAAQ;IAAEC,KAAK,GAAAJ,IAAA,CAALI,KAAK;IAAEC,UAAU,GAAAL,IAAA,CAAVK,UAAU;EAEhD,IAAMC,UAAU,GAAG,CAAC;EACpB,IAAMC,UAAU,GAAGC,QAAQ,CAACC,aAAa,CAAC,QAAQ,CAAC;EACnD,IAAMC,GAAG,GAAGH,UAAU,CAACI,UAAU,CAAC,IAAI,CAAE;EACxCD,GAAG,CAACE,IAAI,MAAAC,MAAA,CAAMR,UAAU,OAAAQ,MAAA,CAAIV,QAAQ,GAAGG,UAAU,aAAU;EAE3D,IAAMQ,SAAS,GAAGC,IAAI,CAACC,IAAI,CAACN,GAAG,CAACO,WAAW,CAAChB,IAAI,CAAC,CAACiB,KAAK,CAAC;EACxD,IAAMC,UAAU,GAAGJ,IAAI,CAACC,IAAI,CAACb,QAAQ,GAAGG,UAAU,GAAG,GAAG,CAAC;EAEzD,IAAMc,MAAM,GAAGZ,QAAQ,CAACC,aAAa,CAAC,QAAQ,CAAC;EAC/CW,MAAM,CAACF,KAAK,GAAGJ,SAAS;EACxBM,MAAM,CAACC,MAAM,GAAGF,UAAU;EAC1B,IAAMG,OAAO,GAAGF,MAAM,CAACT,UAAU,CAAC,IAAI,CAAE;EACxCW,OAAO,CAACC,SAAS,GAAGnB,KAAK;EACzBkB,OAAO,CAACV,IAAI,GAAGF,GAAG,CAACE,IAAI;EACvBU,OAAO,CAACE,SAAS,GAAG,QAAQ;EAC5BF,OAAO,CAACG,YAAY,GAAG,QAAQ;EAC/BH,OAAO,CAACI,QAAQ,CAACzB,IAAI,EAAEa,SAAS,GAAG,CAAC,EAAEK,UAAU,GAAG,CAAC,CAAC;EAErD,OAAO;IAAED,KAAK,EAAEJ,SAAS;IAAEO,MAAM,EAAEF,UAAU;IAAEQ,OAAO,EAAE,IAAI/B,aAAa,CAACwB,MAAM;EAAE,CAAC;AACrF,CAAC;AAED,OAAO,IAAMQ,aAAa,GAAG,SAAhBA,aAAaA,CAAIC,IAAI,EAAEC,cAAc,EAAK;EACrD,IAAI,CAACD,IAAI,IAAI,CAACC,cAAc,IAAI,CAACD,IAAI,CAACE,QAAQ,IAAI,CAACF,IAAI,CAACG,QAAQ,EAC9D;EACF,IAAMC,SAAS,GAAG,IAAIpC,OAAO,CAAC,CAAC,CAACqC,UAAU,CAACJ,cAAc,EAAED,IAAI,CAACE,QAAQ,CAAC;EACzEE,SAAS,CAACE,CAAC,GAAG,CAAC;EACfF,SAAS,CAACG,SAAS,CAAC,CAAC;EACrB;EACA;EACA,IAAMC,GAAG,GAAGtB,IAAI,CAACuB,KAAK,CAACL,SAAS,CAACM,CAAC,EAAEN,SAAS,CAACO,CAAC,CAAC;EAChDX,IAAI,CAACG,QAAQ,CAACG,CAAC,GAAGE,GAAG;AACvB,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { Object3D } from '@anov/3d-core';
2
+ export declare class ColorSky extends Object3D {
3
+ private _color;
4
+ private _alpha;
5
+ get color(): string | number;
6
+ get alpha(): number;
7
+ set color(color: string | number);
8
+ set alpha(alpha: number);
9
+ apply(color: string | number, alpha: number): void;
10
+ setColor(color: string | number): void;
11
+ setAlpha(alpha: number): void;
12
+ }
@@ -0,0 +1,75 @@
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
3
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
4
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
5
+ function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
6
+ function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
7
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
8
+ function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
9
+ function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
10
+ 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; } }
11
+ function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
12
+ 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; }
13
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
14
+ 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); }
15
+ import { use, Object3D, Color } from '@anov/3d-core';
16
+ export var ColorSky = /*#__PURE__*/function (_Object3D) {
17
+ _inherits(ColorSky, _Object3D);
18
+ var _super = _createSuper(ColorSky);
19
+ function ColorSky() {
20
+ var _this;
21
+ _classCallCheck(this, ColorSky);
22
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
23
+ args[_key] = arguments[_key];
24
+ }
25
+ _this = _super.call.apply(_super, [this].concat(args));
26
+ _defineProperty(_assertThisInitialized(_this), "_color", 0x87ceeb);
27
+ _defineProperty(_assertThisInitialized(_this), "_alpha", 1);
28
+ return _this;
29
+ }
30
+ _createClass(ColorSky, [{
31
+ key: "color",
32
+ get: function get() {
33
+ return this._color;
34
+ },
35
+ set: function set(color) {
36
+ this.setColor(color);
37
+ }
38
+ }, {
39
+ key: "alpha",
40
+ get: function get() {
41
+ return this._alpha;
42
+ },
43
+ set: function set(alpha) {
44
+ this.setAlpha(alpha);
45
+ }
46
+ }, {
47
+ key: "apply",
48
+ value: function apply(color, alpha) {
49
+ var _use$useScene = use.useScene(),
50
+ scene = _use$useScene.scene,
51
+ renderer = _use$useScene.renderer;
52
+ this._color = color;
53
+ this._alpha = alpha;
54
+ if (alpha >= 1) {
55
+ scene.background = new Color(color);
56
+ renderer.setClearAlpha(1);
57
+ } else {
58
+ scene.background = null;
59
+ renderer.setClearColor(new Color(color), alpha);
60
+ }
61
+ }
62
+ }, {
63
+ key: "setColor",
64
+ value: function setColor(color) {
65
+ this.apply(color, this._alpha);
66
+ }
67
+ }, {
68
+ key: "setAlpha",
69
+ value: function setAlpha(alpha) {
70
+ this.apply(this._color, alpha);
71
+ }
72
+ }]);
73
+ return ColorSky;
74
+ }(Object3D);
75
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["use","Object3D","Color","ColorSky","_Object3D","_inherits","_super","_createSuper","_this","_classCallCheck","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty","_assertThisInitialized","_createClass","key","get","_color","set","color","setColor","_alpha","alpha","setAlpha","value","_use$useScene","useScene","scene","renderer","background","setClearAlpha","setClearColor"],"sources":["../../../../src/core/WeatherSystem/color/index.ts"],"sourcesContent":["import { use, Object3D, Color } from '@anov/3d-core'\nexport class ColorSky extends Object3D {\n private _color: string | number = 0x87ceeb\n private _alpha = 1\n\n get color() {\n return this._color\n }\n\n get alpha() {\n return this._alpha\n }\n\n set color(color: string | number) {\n this.setColor(color)\n }\n set alpha(alpha: number) {\n this.setAlpha(alpha)\n }\n\n apply(color: string | number, alpha: number) {\n const { scene, renderer } = use.useScene()\n\n this._color = color\n this._alpha = alpha\n\n if (alpha >= 1) {\n scene.background = new Color(color)\n renderer.setClearAlpha(1)\n }\n else {\n scene.background = null\n renderer.setClearColor(new Color(color), alpha)\n }\n }\n\n setColor(color: string | number) {\n this.apply(color, this._alpha)\n }\n\n setAlpha(alpha: number) {\n this.apply(this._color, alpha)\n }\n}\n"],"mappings":";;;;;;;;;;;;;;AAAA,SAAUA,GAAG,EAAEC,QAAQ,EAAEC,KAAK,QAAQ,eAAe;AACrD,WAAaC,QAAQ,0BAAAC,SAAA;EAAAC,SAAA,CAAAF,QAAA,EAAAC,SAAA;EAAA,IAAAE,MAAA,GAAAC,YAAA,CAAAJ,QAAA;EAAA,SAAAA,SAAA;IAAA,IAAAK,KAAA;IAAAC,eAAA,OAAAN,QAAA;IAAA,SAAAO,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAC,IAAA,OAAAC,KAAA,CAAAJ,IAAA,GAAAK,IAAA,MAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA;MAAAF,IAAA,CAAAE,IAAA,IAAAJ,SAAA,CAAAI,IAAA;IAAA;IAAAP,KAAA,GAAAF,MAAA,CAAAU,IAAA,CAAAC,KAAA,CAAAX,MAAA,SAAAY,MAAA,CAAAL,IAAA;IAAAM,eAAA,CAAAC,sBAAA,CAAAZ,KAAA,aACe,QAAQ;IAAAW,eAAA,CAAAC,sBAAA,CAAAZ,KAAA,aACzB,CAAC;IAAA,OAAAA,KAAA;EAAA;EAAAa,YAAA,CAAAlB,QAAA;IAAAmB,GAAA;IAAAC,GAAA,EAElB,SAAAA,IAAA,EAAY;MACV,OAAO,IAAI,CAACC,MAAM;IACpB,CAAC;IAAAC,GAAA,EAMD,SAAAA,IAAUC,KAAsB,EAAE;MAChC,IAAI,CAACC,QAAQ,CAACD,KAAK,CAAC;IACtB;EAAC;IAAAJ,GAAA;IAAAC,GAAA,EAND,SAAAA,IAAA,EAAY;MACV,OAAO,IAAI,CAACK,MAAM;IACpB,CAAC;IAAAH,GAAA,EAKD,SAAAA,IAAUI,KAAa,EAAE;MACvB,IAAI,CAACC,QAAQ,CAACD,KAAK,CAAC;IACtB;EAAC;IAAAP,GAAA;IAAAS,KAAA,EAED,SAAAd,MAAMS,KAAsB,EAAEG,KAAa,EAAE;MAC3C,IAAAG,aAAA,GAA4BhC,GAAG,CAACiC,QAAQ,CAAC,CAAC;QAAlCC,KAAK,GAAAF,aAAA,CAALE,KAAK;QAAEC,QAAQ,GAAAH,aAAA,CAARG,QAAQ;MAEvB,IAAI,CAACX,MAAM,GAAGE,KAAK;MACnB,IAAI,CAACE,MAAM,GAAGC,KAAK;MAEnB,IAAIA,KAAK,IAAI,CAAC,EAAE;QACdK,KAAK,CAACE,UAAU,GAAG,IAAIlC,KAAK,CAACwB,KAAK,CAAC;QACnCS,QAAQ,CAACE,aAAa,CAAC,CAAC,CAAC;MAC3B,CAAC,MACI;QACHH,KAAK,CAACE,UAAU,GAAG,IAAI;QACvBD,QAAQ,CAACG,aAAa,CAAC,IAAIpC,KAAK,CAACwB,KAAK,CAAC,EAAEG,KAAK,CAAC;MACjD;IACF;EAAC;IAAAP,GAAA;IAAAS,KAAA,EAED,SAAAJ,SAASD,KAAsB,EAAE;MAC/B,IAAI,CAACT,KAAK,CAACS,KAAK,EAAE,IAAI,CAACE,MAAM,CAAC;IAChC;EAAC;IAAAN,GAAA;IAAAS,KAAA,EAED,SAAAD,SAASD,KAAa,EAAE;MACtB,IAAI,CAACZ,KAAK,CAAC,IAAI,CAACO,MAAM,EAAEK,KAAK,CAAC;IAChC;EAAC;EAAA,OAAA1B,QAAA;AAAA,EAzC2BF,QAAQ"}
@@ -1,10 +1,12 @@
1
- import { Object3D } from '@anov/3d-core';
2
- import { BaseController, SkyMode, ColorOptions } from '../types';
3
- export declare class ColorModeController implements BaseController {
4
- private options;
1
+ import { IColorController, SkyMode, ColorOptions } from '../types';
2
+ import { ColorSky } from '../color/index';
3
+ export declare class ColorController implements IColorController {
4
+ private options?;
5
5
  readonly mode: SkyMode;
6
- object?: Object3D;
7
- constructor(options: ColorOptions);
6
+ object?: ColorSky;
7
+ constructor(options?: ColorOptions);
8
+ set color(color: number | string);
9
+ set alpha(alpha: number);
8
10
  enter(): void;
9
11
  exit(): void;
10
12
  update(options: ColorOptions): void;
@@ -7,22 +7,34 @@ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _d
7
7
  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; }
8
8
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
9
9
  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); }
10
- import { use, Color } from '@anov/3d-core';
10
+ import { use } from '@anov/3d-core';
11
+ import { ColorSky } from "../color/index";
11
12
  var defaultOptions = {
12
- mode: 'color',
13
13
  color: 0x87ceeb,
14
14
  // color: '#87ceeb',
15
15
  alpha: 0.5
16
16
  };
17
- export var ColorModeController = /*#__PURE__*/function () {
18
- function ColorModeController(options) {
19
- _classCallCheck(this, ColorModeController);
17
+ export var ColorController = /*#__PURE__*/function () {
18
+ function ColorController(options) {
19
+ _classCallCheck(this, ColorController);
20
20
  _defineProperty(this, "mode", 'color');
21
21
  _defineProperty(this, "object", void 0);
22
22
  this.options = options;
23
- this.options = _objectSpread(_objectSpread({}, defaultOptions), options);
23
+ this.object = new ColorSky();
24
24
  }
25
- _createClass(ColorModeController, [{
25
+ _createClass(ColorController, [{
26
+ key: "color",
27
+ set: function set(color) {
28
+ var _this$object;
29
+ (_this$object = this.object) === null || _this$object === void 0 || _this$object.setColor(color);
30
+ }
31
+ }, {
32
+ key: "alpha",
33
+ set: function set(alpha) {
34
+ var _this$object2;
35
+ (_this$object2 = this.object) === null || _this$object2 === void 0 || _this$object2.setAlpha(alpha);
36
+ }
37
+ }, {
26
38
  key: "enter",
27
39
  value: function enter() {
28
40
  this.apply();
@@ -43,24 +55,18 @@ export var ColorModeController = /*#__PURE__*/function () {
43
55
  }, {
44
56
  key: "apply",
45
57
  value: function apply() {
46
- var _use$useScene2 = use.useScene(),
47
- scene = _use$useScene2.scene,
48
- renderer = _use$useScene2.renderer;
49
58
  var _this$options = this.options,
50
59
  color = _this$options.color,
51
- _this$options$alpha = _this$options.alpha,
52
- alpha = _this$options$alpha === void 0 ? 1 : _this$options$alpha;
53
- if (alpha >= 1) {
54
- // 不透明 → scene.background
55
- scene.background = new Color(color);
56
- renderer.setClearAlpha(1);
57
- } else {
58
- // 透明 → renderer 控制
59
- scene.background = null;
60
- renderer.setClearColor(new Color(color), alpha);
61
- }
60
+ alpha = _this$options.alpha;
61
+ this.object.apply(color, alpha);
62
62
  }
63
+ // setColor(color: number | string) {
64
+ // this.object?.setColor(color)
65
+ // }
66
+ // setAlpha(alpha: number) {
67
+ // this.object?.setAlpha(alpha)
68
+ // }
63
69
  }]);
64
- return ColorModeController;
70
+ return ColorController;
65
71
  }();
66
72
  //# sourceMappingURL=ColorController.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["use","Color","defaultOptions","mode","color","alpha","ColorModeController","options","_classCallCheck","_defineProperty","_objectSpread","_createClass","key","value","enter","apply","exit","_use$useScene","useScene","scene","background","update","_use$useScene2","renderer","_this$options","_this$options$alpha","setClearAlpha","setClearColor"],"sources":["../../../../src/core/WeatherSystem/controller/ColorController.ts"],"sourcesContent":["import { use, Object3D, Color } from '@anov/3d-core'\nimport {BaseController,SkyMode, ColorOptions} from '../types'\n\nconst defaultOptions: ColorOptions = {\n mode: 'color',\n color: 0x87ceeb,\n// color: '#87ceeb',\n alpha: 0.5,\n}\nexport class ColorModeController implements BaseController {\n readonly mode: SkyMode = 'color'\n object?: Object3D\n\n constructor(private options: ColorOptions) {\n this.options = { ...defaultOptions, ...options }\n }\n\n enter() {\n this.apply()\n }\n\n exit() {\n const { scene } = use.useScene()\n scene.background = null\n }\n\n update(options: ColorOptions) {\n this.options = { ...this.options, ...options }\n this.apply()\n }\n private apply() {\n const { scene, renderer } = use.useScene()\n const { color, alpha = 1 } = this.options\n\n if (alpha >= 1) {\n // 不透明 → scene.background\n scene.background = new Color(color!)\n renderer.setClearAlpha(1)\n }\n else {\n // 透明 renderer 控制\n scene.background = null\n renderer.setClearColor(new Color(color!), alpha)\n }\n }\n}\n"],"mappings":";;;;;;;;;AAAA,SAAUA,GAAG,EAAYC,KAAK,QAAQ,eAAe;AAGrD,IAAMC,cAA4B,GAAG;EACjCC,IAAI,EAAE,OAAO;EACfC,KAAK,EAAE,QAAQ;EACjB;EACEC,KAAK,EAAE;AACT,CAAC;AACD,WAAaC,mBAAmB;EAI9B,SAAAA,oBAAoBC,OAAqB,EAAE;IAAAC,eAAA,OAAAF,mBAAA;IAAAG,eAAA,eAHlB,OAAO;IAAAA,eAAA;IAAA,KAGZF,OAAqB,GAArBA,OAAqB;IACvC,IAAI,CAACA,OAAO,GAAAG,aAAA,CAAAA,aAAA,KAAQR,cAAc,GAAKK,OAAO,CAAE;EAClD;EAACI,YAAA,CAAAL,mBAAA;IAAAM,GAAA;IAAAC,KAAA,EAED,SAAAC,MAAA,EAAQ;MACN,IAAI,CAACC,KAAK,CAAC,CAAC;IACd;EAAC;IAAAH,GAAA;IAAAC,KAAA,EAED,SAAAG,KAAA,EAAO;MACL,IAAAC,aAAA,GAAkBjB,GAAG,CAACkB,QAAQ,CAAC,CAAC;QAAxBC,KAAK,GAAAF,aAAA,CAALE,KAAK;MACbA,KAAK,CAACC,UAAU,GAAG,IAAI;IACzB;EAAC;IAAAR,GAAA;IAAAC,KAAA,EAED,SAAAQ,OAAOd,OAAqB,EAAE;MAC5B,IAAI,CAACA,OAAO,GAAAG,aAAA,CAAAA,aAAA,KAAQ,IAAI,CAACH,OAAO,GAAKA,OAAO,CAAE;MAC9C,IAAI,CAACQ,KAAK,CAAC,CAAC;IACd;EAAC;IAAAH,GAAA;IAAAC,KAAA,EACA,SAAAE,MAAA,EAAgB;MACf,IAAAO,cAAA,GAA4BtB,GAAG,CAACkB,QAAQ,CAAC,CAAC;QAAlCC,KAAK,GAAAG,cAAA,CAALH,KAAK;QAAEI,QAAQ,GAAAD,cAAA,CAARC,QAAQ;MACvB,IAAAC,aAAA,GAA6B,IAAI,CAACjB,OAAO;QAAjCH,KAAK,GAAAoB,aAAA,CAALpB,KAAK;QAAAqB,mBAAA,GAAAD,aAAA,CAAEnB,KAAK;QAALA,KAAK,GAAAoB,mBAAA,cAAG,CAAC,GAAAA,mBAAA;MAExB,IAAIpB,KAAK,IAAI,CAAC,EAAE;QACZ;QACAc,KAAK,CAACC,UAAU,GAAG,IAAInB,KAAK,CAACG,KAAM,CAAC;QACpCmB,QAAQ,CAACG,aAAa,CAAC,CAAC,CAAC;MAC7B,CAAC,MACI;QACD;QACAP,KAAK,CAACC,UAAU,GAAG,IAAI;QACvBG,QAAQ,CAACI,aAAa,CAAC,IAAI1B,KAAK,CAACG,KAAM,CAAC,EAAEC,KAAK,CAAC;MACpD;IACF;EAAC;EAAA,OAAAC,mBAAA;AAAA"}
1
+ {"version":3,"names":["use","ColorSky","defaultOptions","color","alpha","ColorController","options","_classCallCheck","_defineProperty","object","_createClass","key","set","_this$object","setColor","_this$object2","setAlpha","value","enter","apply","exit","_use$useScene","useScene","scene","background","update","_objectSpread","_this$options"],"sources":["../../../../src/core/WeatherSystem/controller/ColorController.ts"],"sourcesContent":["import { use, Object3D, Color } from '@anov/3d-core'\nimport {IColorController,SkyMode, ColorOptions} from '../types'\nimport {ColorSky} from '../color/index'\n\nconst defaultOptions: ColorOptions = {\n color: 0x87ceeb,\n// color: '#87ceeb',\n alpha: 0.5,\n}\nexport class ColorController implements IColorController {\n readonly mode: SkyMode = 'color'\n object?: ColorSky\n\n constructor(private options?: ColorOptions) {\n this.object = new ColorSky()\n }\n\n set color(color: number | string) {\n this.object?.setColor(color)\n }\n set alpha(alpha: number) {\n this.object?.setAlpha(alpha)\n }\n enter() {\n this.apply()\n }\n\n exit() {\n const { scene } = use.useScene()\n scene.background = null\n }\n\n update(options: ColorOptions) {\n this.options = { ...this.options, ...options }\n this.apply()\n }\n private apply() {\n const {color, alpha} = this.options\n this.object.apply(color, alpha)\n }\n // setColor(color: number | string) {\n // this.object?.setColor(color)\n // }\n // setAlpha(alpha: number) {\n // this.object?.setAlpha(alpha)\n // }\n}\n"],"mappings":";;;;;;;;;AAAA,SAAUA,GAAG,QAAyB,eAAe;AAErD,SAAQC,QAAQ;AAEhB,IAAMC,cAA4B,GAAG;EACnCC,KAAK,EAAE,QAAQ;EACjB;EACEC,KAAK,EAAE;AACT,CAAC;AACD,WAAaC,eAAe;EAI1B,SAAAA,gBAAoBC,OAAsB,EAAE;IAAAC,eAAA,OAAAF,eAAA;IAAAG,eAAA,eAHnB,OAAO;IAAAA,eAAA;IAAA,KAGZF,OAAsB,GAAtBA,OAAsB;IACxC,IAAI,CAACG,MAAM,GAAG,IAAIR,QAAQ,CAAC,CAAC;EAC9B;EAACS,YAAA,CAAAL,eAAA;IAAAM,GAAA;IAAAC,GAAA,EAED,SAAAA,IAAUT,KAAsB,EAAE;MAAA,IAAAU,YAAA;MAChC,CAAAA,YAAA,OAAI,CAACJ,MAAM,cAAAI,YAAA,eAAXA,YAAA,CAAaC,QAAQ,CAACX,KAAK,CAAC;IAC9B;EAAC;IAAAQ,GAAA;IAAAC,GAAA,EACD,SAAAA,IAAUR,KAAa,EAAE;MAAA,IAAAW,aAAA;MACvB,CAAAA,aAAA,OAAI,CAACN,MAAM,cAAAM,aAAA,eAAXA,aAAA,CAAaC,QAAQ,CAACZ,KAAK,CAAC;IAC9B;EAAC;IAAAO,GAAA;IAAAM,KAAA,EACD,SAAAC,MAAA,EAAQ;MACN,IAAI,CAACC,KAAK,CAAC,CAAC;IACd;EAAC;IAAAR,GAAA;IAAAM,KAAA,EAED,SAAAG,KAAA,EAAO;MACL,IAAAC,aAAA,GAAkBrB,GAAG,CAACsB,QAAQ,CAAC,CAAC;QAAxBC,KAAK,GAAAF,aAAA,CAALE,KAAK;MACbA,KAAK,CAACC,UAAU,GAAG,IAAI;IACzB;EAAC;IAAAb,GAAA;IAAAM,KAAA,EAED,SAAAQ,OAAOnB,OAAqB,EAAE;MAC5B,IAAI,CAACA,OAAO,GAAAoB,aAAA,CAAAA,aAAA,KAAQ,IAAI,CAACpB,OAAO,GAAKA,OAAO,CAAE;MAC9C,IAAI,CAACa,KAAK,CAAC,CAAC;IACd;EAAC;IAAAR,GAAA;IAAAM,KAAA,EACD,SAAAE,MAAA,EAAgB;MACd,IAAAQ,aAAA,GAAuB,IAAI,CAACrB,OAAO;QAA5BH,KAAK,GAAAwB,aAAA,CAALxB,KAAK;QAAEC,KAAK,GAAAuB,aAAA,CAALvB,KAAK;MACnB,IAAI,CAACK,MAAM,CAACU,KAAK,CAAChB,KAAK,EAAEC,KAAK,CAAC;IACjC;IACA;IACA;IACA;IACA;IACA;IACA;EAAA;EAAA,OAAAC,eAAA;AAAA"}
@@ -1,14 +1,14 @@
1
- import { BaseController, SkyMode, HDROptions, SupportsHDRPath, SupportsRotate, SupportsIntensity } from '../types';
1
+ import { IHDRController, SkyMode, HDROptions } from '../types';
2
2
  import { HDRSky } from '../hdr';
3
- export declare class HDRModeController implements BaseController, SupportsHDRPath, SupportsRotate, SupportsIntensity {
3
+ export declare class HDRController implements IHDRController {
4
4
  private options;
5
5
  readonly mode: SkyMode;
6
6
  object: HDRSky;
7
7
  constructor(options: HDROptions);
8
+ set rotate(rotate: number);
9
+ set intensity(intensity: number);
10
+ set path(path: string);
8
11
  enter(): void;
9
12
  exit(): void;
10
13
  update(options: HDROptions): Promise<void>;
11
- setHDRPath(path: string): Promise<void>;
12
- setRotate(rotate: number): void;
13
- setIntensity(intensity: number): void;
14
14
  }