m4-w-fast 1.1.2 → 1.2.0

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 (298) hide show
  1. package/README.md +6 -0
  2. package/dist/index.cjs +1 -1
  3. package/dist/index.d.ts +1 -1
  4. package/dist/index.js +1 -1
  5. package/dist/index.mjs +1 -1
  6. package/dist/intersect.worker.js +2 -2
  7. package/dist/isoBands.worker.js +1 -1
  8. package/dist/m4-w-fast.umd.js +1 -1
  9. package/dist/raster-leaflet/index.cjs +2 -0
  10. package/dist/raster-leaflet/index.d.ts +5 -0
  11. package/dist/raster-leaflet/index.js +1 -0
  12. package/dist/raster-leaflet/index.mjs +2 -0
  13. package/dist/raster-leaflet/m4-w-raster-leaflet.umd.js +2 -0
  14. package/dist/raster-mars3d/cesiumRasterPlaneRenderer.d.ts +28 -0
  15. package/dist/raster-mars3d/cesiumRasterPlaneRenderer.js +1 -0
  16. package/dist/raster-mars3d/cesiumRasterTextureAdapter.d.ts +14 -0
  17. package/dist/raster-mars3d/cesiumRasterTextureAdapter.js +1 -0
  18. package/dist/raster-mars3d/index.cjs +2 -0
  19. package/dist/raster-mars3d/index.d.ts +6 -0
  20. package/dist/raster-mars3d/index.js +1 -0
  21. package/dist/raster-mars3d/index.mjs +2 -0
  22. package/dist/raster-mars3d/m4-w-raster-mars3d.umd.js +2 -0
  23. package/dist/raster-mars3d/mars3dRasterImageryProvider.d.ts +30 -0
  24. package/dist/raster-mars3d/mars3dRasterImageryProvider.js +1 -0
  25. package/dist/raster-mars3d/mars3dRasterPlaneLayer.d.ts +3 -0
  26. package/dist/raster-mars3d/mars3dRasterPlaneLayer.js +1 -0
  27. package/dist/raster-mars3d/rasterPlaneCesiumTypes.d.ts +95 -0
  28. package/dist/raster-mars3d/rasterPlaneCesiumTypes.js +1 -0
  29. package/dist/raster-mars3d/rasterPlaneGeometry.d.ts +5 -0
  30. package/dist/raster-mars3d/rasterPlaneGeometry.js +1 -0
  31. package/dist/raster-mars3d/rasterPlaneGridChunks.d.ts +4 -0
  32. package/dist/raster-mars3d/rasterPlaneGridChunks.js +1 -0
  33. package/dist/raster-mars3d/rasterPlaneMaterial.d.ts +21 -0
  34. package/dist/raster-mars3d/rasterPlaneMaterial.js +1 -0
  35. package/dist/raster-mars3d/rasterPlaneTypes.d.ts +33 -0
  36. package/dist/raster-mars3d/rasterPlaneTypes.js +1 -0
  37. package/dist/raster-mars3d/types.d.ts +30 -0
  38. package/dist/raster-mars3d/types.js +1 -0
  39. package/dist/raster-overlay/color.d.ts +1 -1
  40. package/dist/raster-overlay/color.js +1 -1
  41. package/dist/raster-overlay/core.d.ts +1 -1
  42. package/dist/raster-overlay/core.js +1 -1
  43. package/dist/raster-overlay/index.cjs +2 -2
  44. package/dist/raster-overlay/index.d.ts +5 -2
  45. package/dist/raster-overlay/index.js +1 -1
  46. package/dist/raster-overlay/index.mjs +2 -2
  47. package/dist/raster-overlay/leaflet-renderers/createRenderer.d.ts +3 -7
  48. package/dist/raster-overlay/leaflet-renderers/createRenderer.js +1 -1
  49. package/dist/raster-overlay/leaflet-renderers/renderer.d.ts +1 -59
  50. package/dist/raster-overlay/leafletLayer.d.ts +4 -0
  51. package/dist/raster-overlay/leafletLayer.js +1 -1
  52. package/dist/raster-overlay/leafletTypes.d.ts +21 -0
  53. package/dist/raster-overlay/leafletTypes.js +1 -0
  54. package/dist/raster-overlay/m4-w-raster-overlay.umd.js +2 -2
  55. package/dist/raster-overlay/query.d.ts +1 -1
  56. package/dist/raster-overlay/query.js +1 -1
  57. package/dist/raster-overlay/rasterTypes.d.ts +73 -0
  58. package/dist/raster-overlay/rasterTypes.js +1 -0
  59. package/dist/raster-overlay/rendering/createRasterRenderer.d.ts +4 -0
  60. package/dist/raster-overlay/rendering/createRasterRenderer.js +1 -0
  61. package/dist/raster-overlay/rendering/index.d.ts +5 -0
  62. package/dist/raster-overlay/rendering/index.js +1 -0
  63. package/dist/raster-overlay/rendering/rasterRenderState.d.ts +27 -0
  64. package/dist/raster-overlay/rendering/rasterRenderState.js +1 -0
  65. package/dist/raster-overlay/rendering/renderer.d.ts +15 -0
  66. package/dist/raster-overlay/rendering/renderer.js +1 -0
  67. package/dist/raster-overlay/rendering/webgl2RasterRenderer.d.ts +34 -0
  68. package/dist/raster-overlay/rendering/webgl2RasterRenderer.js +1 -0
  69. package/dist/raster-overlay/rendering/webgpuRasterRenderer.d.ts +42 -0
  70. package/dist/raster-overlay/rendering/webgpuRasterRenderer.js +1 -0
  71. package/dist/raster-overlay/types.d.ts +2 -235
  72. package/dist/raster-rendering/index.cjs +2 -0
  73. package/dist/raster-rendering/index.d.ts +8 -0
  74. package/dist/raster-rendering/index.js +1 -0
  75. package/dist/raster-rendering/index.mjs +2 -0
  76. package/dist/raster-rendering/m4-w-raster-rendering.umd.js +2 -0
  77. package/dist/raster-rendering/types.d.ts +13 -0
  78. package/dist/raster-rendering/types.js +1 -0
  79. package/dist/raster-rendering/webgpuRasterTileRenderer.d.ts +29 -0
  80. package/dist/raster-rendering/webgpuRasterTileRenderer.js +1 -0
  81. package/dist/readFile.d.ts +2 -2
  82. package/dist/readFile.js +1 -1
  83. package/dist/rendering/index.d.ts +6 -0
  84. package/dist/rendering/index.js +1 -0
  85. package/dist/rendering/renderer.d.ts +35 -0
  86. package/dist/rendering/renderer.js +1 -0
  87. package/dist/rendering/types.d.ts +20 -0
  88. package/dist/rendering/types.js +1 -0
  89. package/dist/rendering/webgl2/baseWebgl2Renderer.d.ts +37 -0
  90. package/dist/rendering/webgl2/baseWebgl2Renderer.js +1 -0
  91. package/dist/rendering/webgl2/index.d.ts +4 -0
  92. package/dist/rendering/webgl2/index.js +1 -0
  93. package/dist/rendering/webgl2/types.d.ts +24 -0
  94. package/dist/rendering/webgl2/types.js +1 -0
  95. package/dist/rendering/webgl2/webgl2CoverageResources.d.ts +29 -0
  96. package/dist/rendering/webgl2/webgl2CoverageResources.js +1 -0
  97. package/dist/rendering/webgl2/webgl2VisualizationResources.d.ts +33 -0
  98. package/dist/rendering/webgl2/webgl2VisualizationResources.js +1 -0
  99. package/dist/rendering/webgpu/baseWebgpuRenderer.d.ts +181 -0
  100. package/dist/rendering/webgpu/baseWebgpuRenderer.js +1 -0
  101. package/dist/rendering/webgpu/index.d.ts +3 -0
  102. package/dist/rendering/webgpu/index.js +1 -0
  103. package/dist/rendering/webgpu/types.d.ts +33 -0
  104. package/dist/rendering/webgpu/types.js +1 -0
  105. package/dist/rendering/webgpu/visualizationParams.d.ts +25 -0
  106. package/dist/rendering/webgpu/visualizationParams.js +1 -0
  107. package/dist/rendering/webgpu/visualizationResources.d.ts +50 -0
  108. package/dist/rendering/webgpu/visualizationResources.js +1 -0
  109. package/dist/rendering/webgpu/webgpuCoverageResources.d.ts +36 -0
  110. package/dist/rendering/webgpu/webgpuCoverageResources.js +1 -0
  111. package/dist/road-overlay/coordinateTransform.js +1 -1
  112. package/dist/road-overlay/index.cjs +2 -2
  113. package/dist/road-overlay/index.d.ts +3 -1
  114. package/dist/road-overlay/index.js +1 -1
  115. package/dist/road-overlay/index.mjs +2 -2
  116. package/dist/road-overlay/leaflet-renderers/createRenderer.d.ts +3 -7
  117. package/dist/road-overlay/leaflet-renderers/createRenderer.js +1 -1
  118. package/dist/road-overlay/leaflet-renderers/renderer.d.ts +1 -82
  119. package/dist/road-overlay/leafletLayer.d.ts +2 -0
  120. package/dist/road-overlay/leafletLayer.js +1 -1
  121. package/dist/road-overlay/m4-w-road-overlay.umd.js +2 -2
  122. package/dist/road-overlay/options.d.ts +5 -1
  123. package/dist/road-overlay/options.js +1 -1
  124. package/dist/road-overlay/rendering/index.d.ts +4 -0
  125. package/dist/road-overlay/rendering/index.js +1 -0
  126. package/dist/road-overlay/rendering/renderer.d.ts +54 -0
  127. package/dist/road-overlay/rendering/renderer.js +1 -0
  128. package/dist/road-overlay/rendering/roadRenderState.d.ts +137 -0
  129. package/dist/road-overlay/rendering/roadRenderState.js +1 -0
  130. package/dist/road-overlay/rendering/webgl2RoadRenderer.d.ts +38 -0
  131. package/dist/road-overlay/rendering/webgl2RoadRenderer.js +1 -0
  132. package/dist/road-overlay/rendering/webgpuRoadRenderer.d.ts +134 -0
  133. package/dist/road-overlay/rendering/webgpuRoadRenderer.js +1 -0
  134. package/dist/road-overlay/roadData.d.ts +3 -2
  135. package/dist/road-overlay/roadData.js +1 -1
  136. package/dist/road-overlay/roadGeometry.d.ts +2 -2
  137. package/dist/road-overlay/roadGeometry.js +1 -1
  138. package/dist/road-overlay/roadMesh.d.ts +7 -5
  139. package/dist/road-overlay/roadMesh.js +1 -1
  140. package/dist/road-overlay/types.d.ts +10 -2
  141. package/dist/shared/coordinate-shader/webgl2/index.d.ts +3 -0
  142. package/dist/shared/coordinate-shader/webgl2/index.js +1 -0
  143. package/dist/shared/coordinate-shader/webgpu/index.d.ts +5 -0
  144. package/dist/shared/coordinate-shader/webgpu/index.js +1 -0
  145. package/dist/shared/coverage/index.d.ts +1 -0
  146. package/dist/shared/coverage/index.js +1 -0
  147. package/dist/shared/coverage/types.d.ts +8 -0
  148. package/dist/shared/coverage/types.js +1 -0
  149. package/dist/shared/map/index.d.ts +2 -0
  150. package/dist/shared/map/index.js +1 -0
  151. package/dist/shared/map/leaflet.d.ts +7 -0
  152. package/dist/shared/map/leaflet.js +1 -0
  153. package/dist/shared/map/types.d.ts +19 -0
  154. package/dist/shared/map/types.js +1 -0
  155. package/dist/shared/polygon/contains.d.ts +3 -0
  156. package/dist/shared/polygon/contains.js +1 -0
  157. package/dist/shared/polygon/index.d.ts +3 -0
  158. package/dist/shared/polygon/index.js +1 -0
  159. package/dist/shared/polygon/polygonMesh.d.ts +3 -0
  160. package/dist/shared/polygon/polygonMesh.js +1 -0
  161. package/dist/shared/polygon/types.d.ts +11 -0
  162. package/dist/shared/polygon/types.js +1 -0
  163. package/dist/shared/shader/assemble.d.ts +5 -0
  164. package/dist/shared/shader/assemble.js +1 -0
  165. package/dist/shared/visualization/index.d.ts +2 -0
  166. package/dist/shared/visualization/index.js +1 -0
  167. package/dist/shared/visualization/shader/webgl2/index.d.ts +1 -0
  168. package/dist/shared/visualization/shader/webgl2/index.js +1 -0
  169. package/dist/shared/visualization/shader/webgpu/index.d.ts +10 -0
  170. package/dist/shared/visualization/shader/webgpu/index.js +1 -0
  171. package/dist/shared/visualization/types.d.ts +68 -0
  172. package/dist/shared/visualization/types.js +1 -0
  173. package/dist/shared/visualization/utils.d.ts +46 -0
  174. package/dist/shared/visualization/utils.js +1 -0
  175. package/dist/volume-mars3d/createMars3dVolumeScene.d.ts +3 -0
  176. package/dist/volume-mars3d/createMars3dVolumeScene.js +1 -0
  177. package/dist/volume-mars3d/index.cjs +1 -0
  178. package/dist/volume-mars3d/index.d.ts +2 -0
  179. package/dist/volume-mars3d/index.js +1 -0
  180. package/dist/volume-mars3d/index.mjs +1 -0
  181. package/dist/volume-mars3d/m4-w-volume-mars3d.umd.js +1 -0
  182. package/dist/volume-mars3d/mars3dCanvasCompensation.d.ts +22 -0
  183. package/dist/volume-mars3d/mars3dCanvasCompensation.js +1 -0
  184. package/dist/volume-mars3d/mars3dRaymarchShader.d.ts +1 -0
  185. package/dist/volume-mars3d/mars3dRaymarchShader.js +1 -0
  186. package/dist/volume-mars3d/mars3dVolumeLayer.d.ts +2 -0
  187. package/dist/volume-mars3d/mars3dVolumeLayer.js +1 -0
  188. package/dist/volume-mars3d/mars3dVolumeRenderer.d.ts +56 -0
  189. package/dist/volume-mars3d/mars3dVolumeRenderer.js +1 -0
  190. package/dist/volume-mars3d/volumeMars3dTypes.d.ts +85 -0
  191. package/dist/volume-mars3d/volumeMars3dTypes.js +1 -0
  192. package/dist/volume-mars3d-native/index.cjs +1 -0
  193. package/dist/volume-mars3d-native/index.d.ts +4 -0
  194. package/dist/volume-mars3d-native/index.js +1 -0
  195. package/dist/volume-mars3d-native/index.mjs +1 -0
  196. package/dist/volume-mars3d-native/liveUpdateScheduler.d.ts +10 -0
  197. package/dist/volume-mars3d-native/liveUpdateScheduler.js +1 -0
  198. package/dist/volume-mars3d-native/m4-w-volume-mars3d-native.umd.js +1 -0
  199. package/dist/volume-mars3d-native/mars3dNativeSliceLayer.d.ts +2 -0
  200. package/dist/volume-mars3d-native/mars3dNativeSliceLayer.js +1 -0
  201. package/dist/volume-mars3d-native/mars3dNativeSliceRenderer.d.ts +56 -0
  202. package/dist/volume-mars3d-native/mars3dNativeSliceRenderer.js +1 -0
  203. package/dist/volume-mars3d-native/mars3dNativeVolumeLayer.d.ts +2 -0
  204. package/dist/volume-mars3d-native/mars3dNativeVolumeLayer.js +1 -0
  205. package/dist/volume-mars3d-native/mars3dNativeVolumeRenderer.d.ts +34 -0
  206. package/dist/volume-mars3d-native/mars3dNativeVolumeRenderer.js +1 -0
  207. package/dist/volume-mars3d-native/nativeAxisSliceRenderer.d.ts +40 -0
  208. package/dist/volume-mars3d-native/nativeAxisSliceRenderer.js +1 -0
  209. package/dist/volume-mars3d-native/nativeSliceAtlas.d.ts +50 -0
  210. package/dist/volume-mars3d-native/nativeSliceAtlas.js +1 -0
  211. package/dist/volume-mars3d-native/nativeSliceRuntimeTypes.d.ts +17 -0
  212. package/dist/volume-mars3d-native/nativeSliceRuntimeTypes.js +1 -0
  213. package/dist/volume-mars3d-native/nativeTypes.d.ts +174 -0
  214. package/dist/volume-mars3d-native/nativeTypes.js +1 -0
  215. package/dist/volume-mars3d-native/nativeVoxelProvider.d.ts +6 -0
  216. package/dist/volume-mars3d-native/nativeVoxelProvider.js +1 -0
  217. package/dist/volume-mars3d-native/nativeVoxelShader.d.ts +2 -0
  218. package/dist/volume-mars3d-native/nativeVoxelShader.js +1 -0
  219. package/dist/volume-mars3d-native/voxelData.d.ts +9 -0
  220. package/dist/volume-mars3d-native/voxelData.js +1 -0
  221. package/dist/volume-scene/brickLayout.d.ts +75 -0
  222. package/dist/volume-scene/brickLayout.js +1 -0
  223. package/dist/volume-scene/brickResidency.d.ts +54 -0
  224. package/dist/volume-scene/brickResidency.js +1 -0
  225. package/dist/volume-scene/camera.d.ts +22 -0
  226. package/dist/volume-scene/camera.js +1 -0
  227. package/dist/volume-scene/cameraTypes.d.ts +37 -0
  228. package/dist/volume-scene/cameraTypes.js +1 -0
  229. package/dist/volume-scene/createVolumeScene.d.ts +4 -0
  230. package/dist/volume-scene/createVolumeScene.js +1 -0
  231. package/dist/volume-scene/geographicTypes.d.ts +16 -0
  232. package/dist/volume-scene/geographicTypes.js +1 -0
  233. package/dist/volume-scene/geographicVolume.d.ts +4 -0
  234. package/dist/volume-scene/geographicVolume.js +1 -0
  235. package/dist/volume-scene/inMemoryVolumeSource.d.ts +3 -0
  236. package/dist/volume-scene/inMemoryVolumeSource.js +1 -0
  237. package/dist/volume-scene/index.cjs +1 -0
  238. package/dist/volume-scene/index.d.ts +12 -0
  239. package/dist/volume-scene/index.js +1 -0
  240. package/dist/volume-scene/index.mjs +1 -0
  241. package/dist/volume-scene/m4-w-volume-scene.umd.js +1 -0
  242. package/dist/volume-scene/matrix.d.ts +11 -0
  243. package/dist/volume-scene/matrix.js +1 -0
  244. package/dist/volume-scene/profileTypes.d.ts +20 -0
  245. package/dist/volume-scene/profileTypes.js +1 -0
  246. package/dist/volume-scene/rendering/webgpu/index.d.ts +2 -0
  247. package/dist/volume-scene/rendering/webgpu/index.js +1 -0
  248. package/dist/volume-scene/rendering/webgpu/webgpuBrickAtlas.d.ts +59 -0
  249. package/dist/volume-scene/rendering/webgpu/webgpuBrickAtlas.js +1 -0
  250. package/dist/volume-scene/rendering/webgpu/webgpuSceneAttachments.d.ts +11 -0
  251. package/dist/volume-scene/rendering/webgpu/webgpuSceneAttachments.js +1 -0
  252. package/dist/volume-scene/rendering/webgpu/webgpuSceneMeshResources.d.ts +12 -0
  253. package/dist/volume-scene/rendering/webgpu/webgpuSceneMeshResources.js +1 -0
  254. package/dist/volume-scene/rendering/webgpu/webgpuSliceResources.d.ts +21 -0
  255. package/dist/volume-scene/rendering/webgpu/webgpuSliceResources.js +1 -0
  256. package/dist/volume-scene/rendering/webgpu/webgpuTransferResources.d.ts +16 -0
  257. package/dist/volume-scene/rendering/webgpu/webgpuTransferResources.js +1 -0
  258. package/dist/volume-scene/rendering/webgpu/webgpuVolumeSceneRenderer.d.ts +126 -0
  259. package/dist/volume-scene/rendering/webgpu/webgpuVolumeSceneRenderer.js +1 -0
  260. package/dist/volume-scene/rendering/webgpu/webgpuVolumeTypes.d.ts +108 -0
  261. package/dist/volume-scene/rendering/webgpu/webgpuVolumeTypes.js +1 -0
  262. package/dist/volume-scene/routeProfileMesh.d.ts +7 -0
  263. package/dist/volume-scene/routeProfileMesh.js +1 -0
  264. package/dist/volume-scene/sceneTypes.d.ts +136 -0
  265. package/dist/volume-scene/sceneTypes.js +1 -0
  266. package/dist/volume-scene/sliceInteractionController.d.ts +27 -0
  267. package/dist/volume-scene/sliceInteractionController.js +1 -0
  268. package/dist/volume-scene/sliceMarkerOverlay.d.ts +28 -0
  269. package/dist/volume-scene/sliceMarkerOverlay.js +1 -0
  270. package/dist/volume-scene/sliceState.d.ts +34 -0
  271. package/dist/volume-scene/sliceState.js +1 -0
  272. package/dist/volume-scene/sliceTypes.d.ts +52 -0
  273. package/dist/volume-scene/sliceTypes.js +1 -0
  274. package/dist/volume-scene/sourceTypes.d.ts +47 -0
  275. package/dist/volume-scene/sourceTypes.js +1 -0
  276. package/dist/volume-scene/transferTypes.d.ts +12 -0
  277. package/dist/volume-scene/transferTypes.js +1 -0
  278. package/dist/volume-scene/volumeBrickData.d.ts +3 -0
  279. package/dist/volume-scene/volumeBrickData.js +1 -0
  280. package/dist/volume-scene/volumeScene.d.ts +103 -0
  281. package/dist/volume-scene/volumeScene.js +1 -0
  282. package/dist/volume-scene/volumeTransfer.d.ts +8 -0
  283. package/dist/volume-scene/volumeTransfer.js +1 -0
  284. package/dist/volume-scene/volumeValidation.d.ts +27 -0
  285. package/dist/volume-scene/volumeValidation.js +1 -0
  286. package/package.json +6 -3
  287. package/dist/raster-overlay/leaflet-renderers/cpuRenderer.d.ts +0 -0
  288. package/dist/raster-overlay/leaflet-renderers/cpuRenderer.js +0 -1
  289. package/dist/raster-overlay/leaflet-renderers/rasterRendererUtils.d.ts +0 -52
  290. package/dist/raster-overlay/leaflet-renderers/rasterRendererUtils.js +0 -1
  291. package/dist/raster-overlay/leaflet-renderers/webgl2Renderer.d.ts +0 -111
  292. package/dist/raster-overlay/leaflet-renderers/webgl2Renderer.js +0 -1
  293. package/dist/raster-overlay/leaflet-renderers/webglRenderer.d.ts +0 -0
  294. package/dist/raster-overlay/leaflet-renderers/webglRenderer.js +0 -1
  295. package/dist/raster-overlay/leaflet-renderers/webgpuRenderer.d.ts +0 -114
  296. package/dist/raster-overlay/leaflet-renderers/webgpuRenderer.js +0 -1
  297. package/dist/road-overlay/leaflet-renderers/webgpuRenderer.d.ts +0 -55
  298. package/dist/road-overlay/leaflet-renderers/webgpuRenderer.js +0 -1
@@ -0,0 +1,22 @@
1
+ import type { IVolumeCameraMatrices, IVolumeCameraOptions, IVolumeCameraState, VolumeProjection } from './cameraTypes';
2
+ export declare class VolumeCamera {
3
+ private cameraState;
4
+ private aspect;
5
+ private readonly rotateSpeed;
6
+ private readonly panSpeed;
7
+ private readonly zoomSpeed;
8
+ private readonly minimumDistance;
9
+ private readonly maximumDistance;
10
+ private readonly minimumPitch;
11
+ private readonly maximumPitch;
12
+ constructor(options?: IVolumeCameraOptions);
13
+ get state(): IVolumeCameraState;
14
+ get matrices(): IVolumeCameraMatrices;
15
+ setState(state: IVolumeCameraState): void;
16
+ setAspect(aspect: number): void;
17
+ setProjectionType(type: VolumeProjection['type']): void;
18
+ orbit(deltaX: number, deltaY: number): void;
19
+ pan(deltaX: number, deltaY: number, viewportHeight: number): void;
20
+ dolly(delta: number): void;
21
+ private createProjectionMatrix;
22
+ }
@@ -0,0 +1 @@
1
+ const _0x5ab5aa=_0x57d4;function _0x5d9d(){const _0xdc5e88=['2ObeQtj','minimumPitchDegrees','atan2','sin','matrices','1435580wyNlQU','asin','42jNxfAn','POSITIVE_INFINITY','setState','tan','相机裁剪距离必须满足\x200\x20<=\x20near\x20<\x20far。','84110DYgzPY','4hvkOXV','fovYDegrees','aspect','exp','orbit','near','position','far','rotateSpeed','projection','53454oUhhhv','275JrYKvC','cos','226555GWnYYF','maximumPitch','cameraState','orthographic','dolly','9CqARhs','minimumDistance','maximumPitchDegrees','maximumDistance','hypot','2436568UvTRWB','zoomSpeed','min','255279JawmdH','perspective','createProjectionMatrix','state','type','panSpeed','4358784RQypnd','height','max','透视相机参数无效。','target'];_0x5d9d=function(){return _0xdc5e88;};return _0x5d9d();}function _0x57d4(_0x83908d,_0x59e3dc){const _0x5d9dd9=_0x5d9d();return _0x57d4=function(_0x57d470,_0x330572){_0x57d470=_0x57d470-0x1f0;let _0x33be42=_0x5d9dd9[_0x57d470];return _0x33be42;},_0x57d4(_0x83908d,_0x59e3dc);}(function(_0x2059d8,_0x2c55b7){const _0x393a55=_0x57d4,_0x483717=_0x2059d8();while(!![]){try{const _0x3be4f4=-parseInt(_0x393a55(0x211))/0x1*(parseInt(_0x393a55(0x21c))/0x2)+parseInt(_0x393a55(0x201))/0x3*(parseInt(_0x393a55(0x1f7))/0x4)+-parseInt(_0x393a55(0x221))/0x5+-parseInt(_0x393a55(0x1f1))/0x6*(-parseInt(_0x393a55(0x204))/0x7)+-parseInt(_0x393a55(0x20e))/0x8*(-parseInt(_0x393a55(0x209))/0x9)+-parseInt(_0x393a55(0x1f6))/0xa*(parseInt(_0x393a55(0x202))/0xb)+parseInt(_0x393a55(0x217))/0xc;if(_0x3be4f4===_0x2c55b7)break;else _0x483717['push'](_0x483717['shift']());}catch(_0x2bbe43){_0x483717['push'](_0x483717['shift']());}}}(_0x5d9d,0x26f12));import{createLookAtMatrix,createOrthographicMatrix,createPerspectiveMatrix,invertMatrix,multiplyMatrices}from'./matrix';const DEFAULT_POSITION=[0x0,0x1,0x2],DEFAULT_TARGET=[0x0,0x0,0x0],DEFAULT_UP=[0x0,0x1,0x0],DEFAULT_PROJECTION={'type':'perspective','fovYDegrees':0x2d,'near':0.01,'far':0x2710},DEGREE_TO_RADIAN=Math['PI']/0xb4,cloneVector=_0x22ca94=>[_0x22ca94[0x0],_0x22ca94[0x1],_0x22ca94[0x2]],cloneProjection=_0x48b325=>_0x48b325[_0x5ab5aa(0x215)]==='perspective'?{..._0x48b325}:{..._0x48b325},cloneState=_0xf7a409=>({'position':cloneVector(_0xf7a409[_0x5ab5aa(0x1fd)]),'target':cloneVector(_0xf7a409[_0x5ab5aa(0x21b)]),'up':cloneVector(_0xf7a409['up']),'projection':cloneProjection(_0xf7a409[_0x5ab5aa(0x200)])}),subtractVector=(_0x23488b,_0x6578c6)=>[_0x23488b[0x0]-_0x6578c6[0x0],_0x23488b[0x1]-_0x6578c6[0x1],_0x23488b[0x2]-_0x6578c6[0x2]],addVector=(_0x111871,_0x952d56)=>[_0x111871[0x0]+_0x952d56[0x0],_0x111871[0x1]+_0x952d56[0x1],_0x111871[0x2]+_0x952d56[0x2]],scaleVector=(_0x231d18,_0x1e337b)=>[_0x231d18[0x0]*_0x1e337b,_0x231d18[0x1]*_0x1e337b,_0x231d18[0x2]*_0x1e337b],crossVector=(_0x1215d6,_0x74d474)=>[_0x1215d6[0x1]*_0x74d474[0x2]-_0x1215d6[0x2]*_0x74d474[0x1],_0x1215d6[0x2]*_0x74d474[0x0]-_0x1215d6[0x0]*_0x74d474[0x2],_0x1215d6[0x0]*_0x74d474[0x1]-_0x1215d6[0x1]*_0x74d474[0x0]],normalizeVector=_0x143385=>{const _0x3b2864=Math['hypot'](_0x143385[0x0],_0x143385[0x1],_0x143385[0x2]);if(_0x3b2864===0x0)return[0x0,0x0,0x0];return scaleVector(_0x143385,0x1/_0x3b2864);},clamp=(_0x27b2d5,_0x53f97b,_0x39effd)=>Math[_0x5ab5aa(0x210)](_0x39effd,Math[_0x5ab5aa(0x219)](_0x53f97b,_0x27b2d5)),validateProjection=_0x168842=>{const _0x413c43=_0x5ab5aa;if(!(_0x168842[_0x413c43(0x1fc)]>=0x0&&_0x168842[_0x413c43(0x1fe)]>_0x168842[_0x413c43(0x1fc)]))throw new Error(_0x413c43(0x1f5));if(_0x168842[_0x413c43(0x215)]==='perspective'&&!(_0x168842['near']>0x0&&_0x168842[_0x413c43(0x1f8)]>0x0&&_0x168842[_0x413c43(0x1f8)]<0xb4))throw new Error(_0x413c43(0x21a));if(_0x168842[_0x413c43(0x215)]==='orthographic'&&!(_0x168842[_0x413c43(0x218)]>0x0))throw new Error('正交相机高度必须大于\x200。');},resolveInitialState=_0x29ea5e=>{const _0x26ce65=_0x5ab5aa,_0x1488a1={'position':_0x29ea5e['state']?.['position']?cloneVector(_0x29ea5e[_0x26ce65(0x214)][_0x26ce65(0x1fd)]):cloneVector(DEFAULT_POSITION),'target':_0x29ea5e['state']?.['target']?cloneVector(_0x29ea5e['state'][_0x26ce65(0x21b)]):cloneVector(DEFAULT_TARGET),'up':_0x29ea5e['state']?.['up']?cloneVector(_0x29ea5e[_0x26ce65(0x214)]['up']):cloneVector(DEFAULT_UP),'projection':_0x29ea5e[_0x26ce65(0x214)]?.[_0x26ce65(0x200)]?cloneProjection(_0x29ea5e[_0x26ce65(0x214)][_0x26ce65(0x200)]):cloneProjection(DEFAULT_PROJECTION)};return validateProjection(_0x1488a1[_0x26ce65(0x200)]),_0x1488a1;};export class VolumeCamera{['cameraState'];[_0x5ab5aa(0x1f9)];[_0x5ab5aa(0x1ff)];[_0x5ab5aa(0x216)];[_0x5ab5aa(0x20f)];[_0x5ab5aa(0x20a)];[_0x5ab5aa(0x20c)];['minimumPitch'];[_0x5ab5aa(0x205)];constructor(_0x4cafd9={}){const _0x370b31=_0x5ab5aa;this[_0x370b31(0x206)]=resolveInitialState(_0x4cafd9),this['aspect']=_0x4cafd9[_0x370b31(0x1f9)]??0x1,this[_0x370b31(0x1ff)]=_0x4cafd9[_0x370b31(0x1ff)]??0.005,this[_0x370b31(0x216)]=_0x4cafd9['panSpeed']??0x1,this['zoomSpeed']=_0x4cafd9['zoomSpeed']??0.0015,this[_0x370b31(0x20a)]=_0x4cafd9['minimumDistance']??0.001,this['maximumDistance']=_0x4cafd9[_0x370b31(0x20c)]??Number[_0x370b31(0x1f2)],this['minimumPitch']=(_0x4cafd9[_0x370b31(0x21d)]??-0x59)*DEGREE_TO_RADIAN,this['maximumPitch']=(_0x4cafd9[_0x370b31(0x20b)]??0x59)*DEGREE_TO_RADIAN;if(!(this['aspect']>0x0))throw new Error('相机宽高比必须大于\x200。');}get[_0x5ab5aa(0x214)](){const _0x4c341c=_0x5ab5aa;return cloneState(this[_0x4c341c(0x206)]);}get[_0x5ab5aa(0x220)](){const _0x48e8b0=_0x5ab5aa,_0x300b13=createLookAtMatrix(this[_0x48e8b0(0x206)][_0x48e8b0(0x1fd)],this[_0x48e8b0(0x206)]['target'],this[_0x48e8b0(0x206)]['up']),_0x1187ea=this[_0x48e8b0(0x213)](),_0x1ffc5e=multiplyMatrices(_0x1187ea,_0x300b13);return{'view':_0x300b13,'projection':_0x1187ea,'viewProjection':_0x1ffc5e,'inverseViewProjection':invertMatrix(_0x1ffc5e)};}[_0x5ab5aa(0x1f3)](_0x4fbf95){const _0xb49b22=_0x5ab5aa;validateProjection(_0x4fbf95[_0xb49b22(0x200)]),this['cameraState']=cloneState(_0x4fbf95);}['setAspect'](_0x41c58e){const _0x3939ae=_0x5ab5aa;if(!(_0x41c58e>0x0)||!Number['isFinite'](_0x41c58e))throw new Error('相机宽高比必须是大于\x200\x20的有限数。');this[_0x3939ae(0x1f9)]=_0x41c58e;}['setProjectionType'](_0x359508){const _0x135b27=_0x5ab5aa;if(_0x359508===this[_0x135b27(0x206)][_0x135b27(0x200)][_0x135b27(0x215)])return;const _0x1922da=Math['hypot'](...subtractVector(this['cameraState']['position'],this[_0x135b27(0x206)][_0x135b27(0x21b)]));if(_0x359508==='orthographic'){const _0x4a7eef=this[_0x135b27(0x206)][_0x135b27(0x200)],_0x480aa0=_0x4a7eef[_0x135b27(0x215)]==='perspective'?_0x4a7eef['fovYDegrees']*DEGREE_TO_RADIAN:0x2d*DEGREE_TO_RADIAN;this[_0x135b27(0x206)][_0x135b27(0x200)]={'type':_0x359508,'height':0x2*_0x1922da*Math['tan'](_0x480aa0/0x2),'near':_0x4a7eef['near'],'far':_0x4a7eef[_0x135b27(0x1fe)]};return;}const _0x4c4237=this[_0x135b27(0x206)][_0x135b27(0x200)],_0x4995b8=0x2d,_0x4042d8=_0x4c4237[_0x135b27(0x215)]===_0x135b27(0x207)?_0x4c4237[_0x135b27(0x218)]/(0x2*Math[_0x135b27(0x1f4)](_0x4995b8*DEGREE_TO_RADIAN/0x2)):_0x1922da,_0x4d457c=normalizeVector(subtractVector(this[_0x135b27(0x206)][_0x135b27(0x1fd)],this['cameraState']['target']));this[_0x135b27(0x206)]['position']=addVector(this[_0x135b27(0x206)][_0x135b27(0x21b)],scaleVector(_0x4d457c,_0x4042d8)),this[_0x135b27(0x206)]['projection']={'type':_0x359508,'fovYDegrees':_0x4995b8,'near':_0x4c4237[_0x135b27(0x1fc)],'far':_0x4c4237[_0x135b27(0x1fe)]};}[_0x5ab5aa(0x1fb)](_0x23e25d,_0x12a8be){const _0x502d98=_0x5ab5aa,_0x2c77a1=subtractVector(this[_0x502d98(0x206)]['position'],this[_0x502d98(0x206)][_0x502d98(0x21b)]),_0x56dbb5=Math[_0x502d98(0x20d)](..._0x2c77a1);if(_0x56dbb5===0x0)return;const _0x3dd47a=Math[_0x502d98(0x21e)](_0x2c77a1[0x0],_0x2c77a1[0x2])-_0x23e25d*this[_0x502d98(0x1ff)],_0x119e1a=clamp(Math[_0x502d98(0x1f0)](_0x2c77a1[0x1]/_0x56dbb5)+_0x12a8be*this[_0x502d98(0x1ff)],this['minimumPitch'],this[_0x502d98(0x205)]),_0x306c4b=Math[_0x502d98(0x203)](_0x119e1a)*_0x56dbb5;this[_0x502d98(0x206)][_0x502d98(0x1fd)]=addVector(this[_0x502d98(0x206)]['target'],[Math[_0x502d98(0x21f)](_0x3dd47a)*_0x306c4b,Math[_0x502d98(0x21f)](_0x119e1a)*_0x56dbb5,Math[_0x502d98(0x203)](_0x3dd47a)*_0x306c4b]);}['pan'](_0x25ff6f,_0x29373e,_0x20e767){const _0xa131e5=_0x5ab5aa;if(!(_0x20e767>0x0))return;const _0x5b1ca7=normalizeVector(subtractVector(this['cameraState'][_0xa131e5(0x21b)],this[_0xa131e5(0x206)][_0xa131e5(0x1fd)])),_0x5e37f0=normalizeVector(crossVector(_0x5b1ca7,this[_0xa131e5(0x206)]['up'])),_0x167ad2=normalizeVector(crossVector(_0x5e37f0,_0x5b1ca7)),_0x1a530d=Math[_0xa131e5(0x20d)](...subtractVector(this[_0xa131e5(0x206)][_0xa131e5(0x1fd)],this[_0xa131e5(0x206)][_0xa131e5(0x21b)])),_0xa035f2=this[_0xa131e5(0x206)][_0xa131e5(0x200)]['type']===_0xa131e5(0x207)?this[_0xa131e5(0x206)]['projection'][_0xa131e5(0x218)]:0x2*_0x1a530d*Math['tan'](this[_0xa131e5(0x206)]['projection']['fovYDegrees']*DEGREE_TO_RADIAN/0x2),_0x48de72=_0xa035f2/_0x20e767*this[_0xa131e5(0x216)],_0x438715=addVector(scaleVector(_0x5e37f0,-_0x25ff6f*_0x48de72),scaleVector(_0x167ad2,_0x29373e*_0x48de72));this[_0xa131e5(0x206)][_0xa131e5(0x1fd)]=addVector(this[_0xa131e5(0x206)][_0xa131e5(0x1fd)],_0x438715),this[_0xa131e5(0x206)][_0xa131e5(0x21b)]=addVector(this['cameraState'][_0xa131e5(0x21b)],_0x438715);}[_0x5ab5aa(0x208)](_0x43751c){const _0x141ad5=_0x5ab5aa,_0x32f5da=Math[_0x141ad5(0x1fa)](_0x43751c*this['zoomSpeed']);if(this['cameraState'][_0x141ad5(0x200)][_0x141ad5(0x215)]===_0x141ad5(0x207)){this[_0x141ad5(0x206)][_0x141ad5(0x200)]={...this['cameraState'][_0x141ad5(0x200)],'height':Math[_0x141ad5(0x219)](this[_0x141ad5(0x20a)],this[_0x141ad5(0x206)][_0x141ad5(0x200)][_0x141ad5(0x218)]*_0x32f5da)};return;}const _0x9659c7=subtractVector(this[_0x141ad5(0x206)]['position'],this[_0x141ad5(0x206)][_0x141ad5(0x21b)]),_0x437288=clamp(Math[_0x141ad5(0x20d)](..._0x9659c7)*_0x32f5da,this['minimumDistance'],this[_0x141ad5(0x20c)]);this[_0x141ad5(0x206)][_0x141ad5(0x1fd)]=addVector(this[_0x141ad5(0x206)][_0x141ad5(0x21b)],scaleVector(normalizeVector(_0x9659c7),_0x437288));}[_0x5ab5aa(0x213)](){const _0x1c8f45=_0x5ab5aa,_0x4fb677=this[_0x1c8f45(0x206)][_0x1c8f45(0x200)];return _0x4fb677[_0x1c8f45(0x215)]===_0x1c8f45(0x212)?createPerspectiveMatrix(_0x4fb677[_0x1c8f45(0x1f8)]*DEGREE_TO_RADIAN,this['aspect'],_0x4fb677['near'],_0x4fb677[_0x1c8f45(0x1fe)]):createOrthographicMatrix(_0x4fb677[_0x1c8f45(0x218)],this[_0x1c8f45(0x1f9)],_0x4fb677[_0x1c8f45(0x1fc)],_0x4fb677[_0x1c8f45(0x1fe)]);}}
@@ -0,0 +1,37 @@
1
+ export type VolumeVector3 = readonly [number, number, number];
2
+ export interface IVolumePerspectiveProjection {
3
+ type: 'perspective';
4
+ fovYDegrees: number;
5
+ near: number;
6
+ far: number;
7
+ }
8
+ export interface IVolumeOrthographicProjection {
9
+ type: 'orthographic';
10
+ height: number;
11
+ near: number;
12
+ far: number;
13
+ }
14
+ export type VolumeProjection = IVolumePerspectiveProjection | IVolumeOrthographicProjection;
15
+ export interface IVolumeCameraState {
16
+ position: VolumeVector3;
17
+ target: VolumeVector3;
18
+ up: VolumeVector3;
19
+ projection: VolumeProjection;
20
+ }
21
+ export interface IVolumeCameraOptions {
22
+ state?: Partial<IVolumeCameraState>;
23
+ aspect?: number;
24
+ rotateSpeed?: number;
25
+ panSpeed?: number;
26
+ zoomSpeed?: number;
27
+ minimumDistance?: number;
28
+ maximumDistance?: number;
29
+ minimumPitchDegrees?: number;
30
+ maximumPitchDegrees?: number;
31
+ }
32
+ export interface IVolumeCameraMatrices {
33
+ view: Float32Array<ArrayBuffer>;
34
+ projection: Float32Array<ArrayBuffer>;
35
+ viewProjection: Float32Array<ArrayBuffer>;
36
+ inverseViewProjection: Float32Array<ArrayBuffer>;
37
+ }
@@ -0,0 +1 @@
1
+ export{};
@@ -0,0 +1,4 @@
1
+ import type { IVolumeScene, IVolumeSceneOptions } from './sceneTypes';
2
+ /** Create a standalone native WebGPU volume scene. */
3
+ /** 创建独立的原生 WebGPU 体积场景。 */
4
+ export declare const createVolumeScene: (options: IVolumeSceneOptions) => Promise<IVolumeScene>;
@@ -0,0 +1 @@
1
+ function _0x65ac(_0x292211,_0x206c48){const _0x41bfe0=_0x41bf();return _0x65ac=function(_0x65ac28,_0x93bb1){_0x65ac28=_0x65ac28-0x19e;let _0x59e296=_0x41bfe0[_0x65ac28];return _0x59e296;},_0x65ac(_0x292211,_0x206c48);}const _0x531360=_0x65ac;(function(_0xb72269,_0x36e452){const _0x577845=_0x65ac,_0x39c7c3=_0xb72269();while(!![]){try{const _0xba9453=parseInt(_0x577845(0x1a5))/0x1*(parseInt(_0x577845(0x1a4))/0x2)+parseInt(_0x577845(0x1a3))/0x3*(parseInt(_0x577845(0x1a8))/0x4)+parseInt(_0x577845(0x1a1))/0x5*(-parseInt(_0x577845(0x1a0))/0x6)+parseInt(_0x577845(0x1aa))/0x7*(-parseInt(_0x577845(0x19f))/0x8)+parseInt(_0x577845(0x1a6))/0x9*(-parseInt(_0x577845(0x1a2))/0xa)+-parseInt(_0x577845(0x1ab))/0xb*(parseInt(_0x577845(0x19e))/0xc)+parseInt(_0x577845(0x1a9))/0xd;if(_0xba9453===_0x36e452)break;else _0x39c7c3['push'](_0x39c7c3['shift']());}catch(_0x4204c9){_0x39c7c3['push'](_0x39c7c3['shift']());}}}(_0x41bf,0x97756));function _0x41bf(){const _0x5cee2a=['77CfLImk','1025832OXjiSt','1438616bGDCQs','6481290VTIYsu','5GawjuQ','90IMVOXJ','331161YMynrk','1290646JfOIcy','1HncmXy','1136007imbDiq','create','36VpHiUr','30363749CviSCv','21vZPrHd'];_0x41bf=function(){return _0x5cee2a;};return _0x41bf();}import{VolumeScene}from'./volumeScene';export const createVolumeScene=_0x334e2a=>VolumeScene[_0x531360(0x1a7)](_0x334e2a);
@@ -0,0 +1,16 @@
1
+ export type VolumeCoordinateSystem = 'cartesian' | 'geographic-wgs84';
2
+ export interface IWebgpuGeographicTransform {
3
+ mode: 'wgs84';
4
+ centerEcefScaled: readonly [number, number, number];
5
+ semiMajorAxisScaled: number;
6
+ semiMinorAxisScaled: number;
7
+ longitudeRadians: readonly [number, number];
8
+ latitudeRadians: readonly [number, number];
9
+ heightScaled: readonly [number, number];
10
+ }
11
+ export interface IGeographicVolumeLayout {
12
+ centerEcef: readonly [number, number, number];
13
+ normalizationMeters: number;
14
+ proxyModelMatrix: readonly number[];
15
+ transform: IWebgpuGeographicTransform;
16
+ }
@@ -0,0 +1 @@
1
+ export{};
@@ -0,0 +1,4 @@
1
+ import type { IGeographicVolumeLayout } from './geographicTypes';
2
+ import type { IVolumeMetadata } from './sourceTypes';
3
+ export declare const createGeographicVolumeLayout: (metadata: IVolumeMetadata, verticalScale?: number) => IGeographicVolumeLayout;
4
+ export declare const ecefToGeographicVolumeLocal: (ecef: readonly [number, number, number], layout: IGeographicVolumeLayout) => readonly [number, number, number];
@@ -0,0 +1 @@
1
+ function _0x4b38(_0x408b8e,_0x4054cf){const _0x4351aa=_0x4351();return _0x4b38=function(_0x4b38f1,_0x21e58e){_0x4b38f1=_0x4b38f1-0x1bf;let _0x140a02=_0x4351aa[_0x4b38f1];return _0x140a02;},_0x4b38(_0x408b8e,_0x4054cf);}const _0x496277=_0x4b38;(function(_0x559c71,_0x44e49a){const _0x51885a=_0x4b38,_0x2fc9f0=_0x559c71();while(!![]){try{const _0x1fefb8=-parseInt(_0x51885a(0x1c4))/0x1*(parseInt(_0x51885a(0x1ce))/0x2)+-parseInt(_0x51885a(0x1d0))/0x3*(parseInt(_0x51885a(0x1dc))/0x4)+parseInt(_0x51885a(0x1c6))/0x5+parseInt(_0x51885a(0x1e3))/0x6*(-parseInt(_0x51885a(0x1c1))/0x7)+parseInt(_0x51885a(0x1e0))/0x8*(-parseInt(_0x51885a(0x1de))/0x9)+parseInt(_0x51885a(0x1c8))/0xa*(-parseInt(_0x51885a(0x1c0))/0xb)+parseInt(_0x51885a(0x1c5))/0xc*(parseInt(_0x51885a(0x1c7))/0xd);if(_0x1fefb8===_0x44e49a)break;else _0x2fc9f0['push'](_0x2fc9f0['shift']());}catch(_0x482a7f){_0x2fc9f0['push'](_0x2fc9f0['shift']());}}}(_0x4351,0x6f69a));const WGS84_SEMI_MAJOR_AXIS_METERS=0x615299,WGS84_FLATTENING=0x1/298.257223563,WGS84_SEMI_MINOR_AXIS_METERS=WGS84_SEMI_MAJOR_AXIS_METERS*(0x1-WGS84_FLATTENING),WGS84_FIRST_ECCENTRICITY_SQUARED=0x1-WGS84_SEMI_MINOR_AXIS_METERS**0x2/WGS84_SEMI_MAJOR_AXIS_METERS**0x2,SAMPLE_SEGMENT_COUNT=0x8,degreesToRadians=_0x3cca0d=>_0x3cca0d*Math['PI']/0xb4,geodeticToEcef=(_0x724a72,_0x5bfa90,_0x556799)=>{const _0x4e3bdb=_0x4b38,_0x162547=Math['sin'](_0x5bfa90),_0x41d6db=Math[_0x4e3bdb(0x1bf)](_0x5bfa90),_0x483f5f=Math[_0x4e3bdb(0x1d7)](_0x724a72),_0x146520=Math[_0x4e3bdb(0x1bf)](_0x724a72),_0x45730d=WGS84_SEMI_MAJOR_AXIS_METERS/Math[_0x4e3bdb(0x1cc)](0x1-WGS84_FIRST_ECCENTRICITY_SQUARED*_0x162547*_0x162547);return[(_0x45730d+_0x556799)*_0x41d6db*_0x146520,(_0x45730d+_0x556799)*_0x41d6db*_0x483f5f,(_0x45730d*(0x1-WGS84_FIRST_ECCENTRICITY_SQUARED)+_0x556799)*_0x162547];},validateAxisSpan=(_0x3506d4,_0x24a465,_0xb6ac6a)=>{const _0x33b563=_0x4b38;if(!Number['isFinite'](_0x3506d4)||!Number[_0x33b563(0x1cb)](_0x24a465)||_0x3506d4===_0x24a465)throw new Error(_0xb6ac6a+_0x33b563(0x1ca)+_0xb6ac6a+_0x33b563(0x1d1));};export const createGeographicVolumeLayout=(_0x1d80b9,_0x2c9146=0x1)=>{const _0x5c6da5=_0x4b38,_0x466ad1=degreesToRadians(_0x1d80b9[_0x5c6da5(0x1db)][_0x5c6da5(0x1c3)]),_0x321afd=degreesToRadians(_0x1d80b9[_0x5c6da5(0x1db)][_0x5c6da5(0x1dd)]),_0x32f443=degreesToRadians(_0x1d80b9[_0x5c6da5(0x1e2)][_0x5c6da5(0x1c3)]),_0x4ac18b=degreesToRadians(_0x1d80b9[_0x5c6da5(0x1e2)][_0x5c6da5(0x1dd)]);validateAxisSpan(_0x466ad1,_0x321afd,_0x5c6da5(0x1da)),validateAxisSpan(_0x32f443,_0x4ac18b,'Latitude\x20/\x20纬度');const _0x37aea0=_0x1d80b9[_0x5c6da5(0x1e1)][_0x5c6da5(0x1c3)],_0x3e5107=_0x1d80b9[_0x5c6da5(0x1e1)][_0x5c6da5(0x1dd)];validateAxisSpan(_0x37aea0,_0x3e5107,_0x5c6da5(0x1d5));if(!(_0x2c9146>0x0)||!Number[_0x5c6da5(0x1cb)](_0x2c9146))throw new Error('verticalScale\x20must\x20be\x20a\x20positive\x20finite\x20value.\x20verticalScale\x20必须是大于\x200\x20的有限数。');const _0x119edb=_0x37aea0+(_0x3e5107-_0x37aea0)*_0x2c9146,_0x496d10=(_0x466ad1+_0x321afd)/0x2,_0x35283f=(_0x32f443+_0x4ac18b)/0x2,_0x39d938=geodeticToEcef(_0x496d10,_0x35283f,0x0),_0x5bf211=Math['abs'](_0x321afd-_0x466ad1)*WGS84_SEMI_MAJOR_AXIS_METERS*Math[_0x5c6da5(0x1cf)](0.01,Math[_0x5c6da5(0x1bf)](_0x35283f)),_0x7c481=Math[_0x5c6da5(0x1d2)](_0x4ac18b-_0x32f443)*WGS84_SEMI_MAJOR_AXIS_METERS,_0x5da572=Math['max'](_0x5bf211,_0x7c481);if(!(_0x5da572>0x0)||!Number[_0x5c6da5(0x1cb)](_0x5da572))throw new Error(_0x5c6da5(0x1df));const _0x3b8bce=[Number[_0x5c6da5(0x1d4)],Number[_0x5c6da5(0x1d4)],Number[_0x5c6da5(0x1d4)]],_0xc0a5ce=[Number['NEGATIVE_INFINITY'],Number[_0x5c6da5(0x1c9)],Number[_0x5c6da5(0x1c9)]];for(let _0x32e7b0=0x0;_0x32e7b0<=SAMPLE_SEGMENT_COUNT;_0x32e7b0+=0x1){const _0x1852a6=_0x32f443+(_0x4ac18b-_0x32f443)*_0x32e7b0/SAMPLE_SEGMENT_COUNT;for(let _0x9b39b0=0x0;_0x9b39b0<=SAMPLE_SEGMENT_COUNT;_0x9b39b0+=0x1){const _0x5e5606=_0x466ad1+(_0x321afd-_0x466ad1)*_0x9b39b0/SAMPLE_SEGMENT_COUNT;for(const _0x580f36 of[_0x37aea0,_0x119edb]){const _0x62a6df=geodeticToEcef(_0x5e5606,_0x1852a6,_0x580f36);for(let _0x9fdc61=0x0;_0x9fdc61<0x3;_0x9fdc61+=0x1){const _0x1db90a=(_0x62a6df[_0x9fdc61]-_0x39d938[_0x9fdc61])/_0x5da572;_0x3b8bce[_0x9fdc61]=Math[_0x5c6da5(0x1d9)](_0x3b8bce[_0x9fdc61],_0x1db90a),_0xc0a5ce[_0x9fdc61]=Math[_0x5c6da5(0x1cf)](_0xc0a5ce[_0x9fdc61],_0x1db90a);}}}}const _0x152ca6=_0xc0a5ce[_0x5c6da5(0x1cd)]((_0x88e0f,_0x1e7c4f)=>_0x88e0f-_0x3b8bce[_0x1e7c4f]);if(_0x152ca6[_0x5c6da5(0x1c2)](_0x5cbded=>!(_0x5cbded>0x0)||!Number[_0x5c6da5(0x1cb)](_0x5cbded)))throw new Error(_0x5c6da5(0x1d6));return{'centerEcef':_0x39d938,'normalizationMeters':_0x5da572,'proxyModelMatrix':[_0x152ca6[0x0],0x0,0x0,0x0,0x0,_0x152ca6[0x1],0x0,0x0,0x0,0x0,_0x152ca6[0x2],0x0,_0x3b8bce[0x0],_0x3b8bce[0x1],_0x3b8bce[0x2],0x1],'transform':{'mode':_0x5c6da5(0x1d8),'centerEcefScaled':[_0x39d938[0x0]/_0x5da572,_0x39d938[0x1]/_0x5da572,_0x39d938[0x2]/_0x5da572],'semiMajorAxisScaled':WGS84_SEMI_MAJOR_AXIS_METERS/_0x5da572,'semiMinorAxisScaled':WGS84_SEMI_MINOR_AXIS_METERS/_0x5da572,'longitudeRadians':[_0x466ad1,_0x321afd],'latitudeRadians':[_0x32f443,_0x4ac18b],'heightScaled':[_0x37aea0/_0x5da572,_0x119edb/_0x5da572]}};};export const ecefToGeographicVolumeLocal=(_0x545f56,_0x2ce80b)=>[(_0x545f56[0x0]-_0x2ce80b['centerEcef'][0x0])/_0x2ce80b['normalizationMeters'],(_0x545f56[0x1]-_0x2ce80b['centerEcef'][0x1])/_0x2ce80b['normalizationMeters'],(_0x545f56[0x2]-_0x2ce80b[_0x496277(0x1d3)][0x2])/_0x2ce80b['normalizationMeters']];function _0x4351(){const _0x284a32=['isFinite','sqrt','map','534146vQkIFb','max','162891BgAlNX','\x20轴必须包含两个不同的有限端点。','abs','centerEcef','POSITIVE_INFINITY','Height\x20/\x20高度','Geographic\x20volume\x20proxy\x20bounds\x20are\x20invalid.\x20地理体积代理范围无效。','sin','wgs84','min','Longitude\x20/\x20经度','xAxis','52PGWglN','end','483993DnvVFB','Geographic\x20volume\x20normalization\x20must\x20be\x20a\x20positive\x20finite\x20distance.\x20地理体积归一化尺度必须是正有限距离。','112LwFzJA','yAxis','zAxis','54534XkGBHB','cos','55ERiLAa','469rbHpBb','some','start','1LQIjop','16001556zCnHGv','2104550TXapZY','26MnWSeI','593430MzMfgl','NEGATIVE_INFINITY','\x20axis\x20must\x20contain\x20two\x20different\x20finite\x20endpoints.\x20'];_0x4351=function(){return _0x284a32;};return _0x4351();}
@@ -0,0 +1,3 @@
1
+ import type { IInMemoryVolumeData, IVolumeSource } from './sourceTypes';
2
+ /** Create an IVolumeSource over a complete x-fastest Float32 array. 使用完整 X 最快 Float32 数组创建体积数据源。 */
3
+ export declare const createInMemoryVolumeSource: (data: IInMemoryVolumeData) => IVolumeSource;
@@ -0,0 +1 @@
1
+ function _0x4be6(){const _0x5d6ec9=['78oZyttj','12569319OlfoMT','zAxis','AbortError','.\x20体积数据长度与维度不匹配。','Volume\x20chunk\x20request\x20was\x20aborted.\x20体积块请求已取消。','values','9462048IOLBVO',',\x20size=','\x20range\x20is\x20invalid:\x20start=','yAxis','24lIKfXb','869575wxWXNG','\x20范围无效。','485EIbYIm','32320pmrvpq','.\x20体积\x20timeIndex\x20越界。','set','levelCount','levelStart','isInteger','sourceY',',\x20count=','sourceYStart','5180681nyHxXQ','xAxis','timeCount','55210WTMSUl','level','2110023AqObBK','count','length','4IkxncF','sourceYCount','xCount','10SLfzBR','xStart'];_0x4be6=function(){return _0x5d6ec9;};return _0x4be6();}function _0x31ad(_0x462ccb,_0x5879f5){const _0x4be6b6=_0x4be6();return _0x31ad=function(_0x31ad5f,_0x1274fb){_0x31ad5f=_0x31ad5f-0xee;let _0x59feca=_0x4be6b6[_0x31ad5f];return _0x59feca;},_0x31ad(_0x462ccb,_0x5879f5);}(function(_0x44516b,_0x15bab2){const _0x3b3e10=_0x31ad,_0x3e86f5=_0x44516b();while(!![]){try{const _0x4660bb=parseInt(_0x3b3e10(0xf3))/0x1*(parseInt(_0x3b3e10(0xee))/0x2)+parseInt(_0x3b3e10(0xf0))/0x3+-parseInt(_0x3b3e10(0x107))/0x4*(parseInt(_0x3b3e10(0x106))/0x5)+parseInt(_0x3b3e10(0xf8))/0x6*(parseInt(_0x3b3e10(0x104))/0x7)+-parseInt(_0x3b3e10(0xff))/0x8+parseInt(_0x3b3e10(0xf9))/0x9*(parseInt(_0x3b3e10(0xf6))/0xa)+parseInt(_0x3b3e10(0x110))/0xb*(-parseInt(_0x3b3e10(0x103))/0xc);if(_0x4660bb===_0x15bab2)break;else _0x3e86f5['push'](_0x3e86f5['shift']());}catch(_0x5b3abc){_0x3e86f5['push'](_0x3e86f5['shift']());}}}(_0x4be6,0xdfd53));import{validateVolumeMetadata}from'./volumeValidation';const validateIndexRange=(_0x2254b2,_0x5e6541,_0x307403,_0xd7aa07)=>{const _0x39e9b8=_0x31ad;if(!Number['isInteger'](_0x2254b2)||!Number[_0x39e9b8(0x10c)](_0x5e6541)||_0x2254b2<0x0||_0x5e6541<=0x0||_0x2254b2+_0x5e6541>_0x307403)throw new Error(_0xd7aa07+_0x39e9b8(0x101)+_0x2254b2+_0x39e9b8(0x10e)+_0x5e6541+_0x39e9b8(0x100)+_0x307403+'.\x20'+_0xd7aa07+_0x39e9b8(0x105));},validateRange=(_0x4ca8d4,_0x4e7d22)=>{const _0xbfb963=_0x31ad;validateIndexRange(_0x4e7d22[_0xbfb963(0xf7)],_0x4e7d22[_0xbfb963(0xf5)],_0x4ca8d4[_0xbfb963(0x111)][_0xbfb963(0xf1)],'X'),validateIndexRange(_0x4e7d22[_0xbfb963(0x10b)],_0x4e7d22[_0xbfb963(0x10a)],_0x4ca8d4[_0xbfb963(0x102)][_0xbfb963(0xf1)],_0xbfb963(0xef)),validateIndexRange(_0x4e7d22[_0xbfb963(0x10f)],_0x4e7d22[_0xbfb963(0xf4)],_0x4ca8d4[_0xbfb963(0xfa)][_0xbfb963(0xf1)],_0xbfb963(0x10d));},validateData=_0x2a0a23=>{const _0x2dbb70=_0x31ad;validateVolumeMetadata(_0x2a0a23);const _0x5348ad=_0x2a0a23[_0x2dbb70(0x111)]['count']*_0x2a0a23[_0x2dbb70(0x102)][_0x2dbb70(0xf1)]*_0x2a0a23[_0x2dbb70(0xfa)][_0x2dbb70(0xf1)]*_0x2a0a23[_0x2dbb70(0x112)];if(_0x2a0a23[_0x2dbb70(0xfe)][_0x2dbb70(0xf2)]!==_0x5348ad)throw new Error('Volume\x20requires\x20'+_0x5348ad+'\x20values\x20but\x20received\x20'+_0x2a0a23['values'][_0x2dbb70(0xf2)]+_0x2dbb70(0xfc));};export const createInMemoryVolumeSource=_0x558c57=>{validateData(_0x558c57);const {values:_0x1b82e0,..._0x32cdb0}=_0x558c57;return{'metadata':_0x32cdb0,'readChunk'(_0x24260c,_0xd435d6,_0x5e81d4){const _0x10e3a3=_0x31ad;if(_0x5e81d4?.['aborted'])throw new DOMException(_0x10e3a3(0xfd),_0x10e3a3(0xfb));if(!Number['isInteger'](_0x24260c)||_0x24260c<0x0||_0x24260c>=_0x558c57['timeCount'])throw new Error('Volume\x20timeIndex\x20is\x20out\x20of\x20range:\x20'+_0x24260c+_0x10e3a3(0x108));validateRange(_0x558c57,_0xd435d6);const _0x5f001e=new Float32Array(_0xd435d6[_0x10e3a3(0xf5)]*_0xd435d6['levelCount']*_0xd435d6[_0x10e3a3(0xf4)]),_0xed1163=_0x558c57[_0x10e3a3(0x111)][_0x10e3a3(0xf1)],_0x24910e=_0x558c57[_0x10e3a3(0x102)][_0x10e3a3(0xf1)],_0x4a42d8=_0x558c57[_0x10e3a3(0xfa)][_0x10e3a3(0xf1)],_0x1ca58b=_0x24260c*_0xed1163*_0x24910e*_0x4a42d8;for(let _0x10c725=0x0;_0x10c725<_0xd435d6['sourceYCount'];_0x10c725+=0x1){for(let _0x5563c4=0x0;_0x5563c4<_0xd435d6['levelCount'];_0x5563c4+=0x1){const _0x233f65=_0x1ca58b+(((_0xd435d6['sourceYStart']+_0x10c725)*_0x24910e+_0xd435d6[_0x10e3a3(0x10b)]+_0x5563c4)*_0xed1163+_0xd435d6['xStart']),_0x2f446d=(_0x10c725*_0xd435d6[_0x10e3a3(0x10a)]+_0x5563c4)*_0xd435d6[_0x10e3a3(0xf5)];_0x5f001e[_0x10e3a3(0x109)](_0x1b82e0['subarray'](_0x233f65,_0x233f65+_0xd435d6[_0x10e3a3(0xf5)]),_0x2f446d);}}return{'timeIndex':_0x24260c,'range':{..._0xd435d6},'width':_0xd435d6[_0x10e3a3(0xf5)],'height':_0xd435d6[_0x10e3a3(0x10a)],'depth':_0xd435d6[_0x10e3a3(0xf4)],'values':_0x5f001e};}};};