@aibee/owlly 1.0.25

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 (500) hide show
  1. package/README.external.md +75 -0
  2. package/README.md +28 -0
  3. package/lib/src/external/lines/line-geometry.d.ts +9 -0
  4. package/lib/src/external/lines/line-geometry.js +52 -0
  5. package/lib/src/external/lines/line-geometry.js.map +1 -0
  6. package/lib/src/external/lines/line-material.d.ts +10 -0
  7. package/lib/src/external/lines/line-material.js +377 -0
  8. package/lib/src/external/lines/line-material.js.map +1 -0
  9. package/lib/src/external/lines/line-segments-2.d.ts +7 -0
  10. package/lib/src/external/lines/line-segments-2.js +144 -0
  11. package/lib/src/external/lines/line-segments-2.js.map +1 -0
  12. package/lib/src/external/lines/line-segments-geometry.d.ts +15 -0
  13. package/lib/src/external/lines/line-segments-geometry.js +141 -0
  14. package/lib/src/external/lines/line-segments-geometry.js.map +1 -0
  15. package/lib/src/external/loaders/gltf-loader.d.ts +77 -0
  16. package/lib/src/external/loaders/gltf-loader.js +2319 -0
  17. package/lib/src/external/loaders/gltf-loader.js.map +1 -0
  18. package/lib/src/external/orbit-controls.d.ts +44 -0
  19. package/lib/src/external/orbit-controls.js +746 -0
  20. package/lib/src/external/orbit-controls.js.map +1 -0
  21. package/lib/src/external/renderers/css-2d-renderer.d.ts +16 -0
  22. package/lib/src/external/renderers/css-2d-renderer.js +122 -0
  23. package/lib/src/external/renderers/css-2d-renderer.js.map +1 -0
  24. package/lib/src/external/renderers/css-3d-renderer.d.ts +18 -0
  25. package/lib/src/external/renderers/css-3d-renderer.js +139 -0
  26. package/lib/src/external/renderers/css-3d-renderer.js.map +1 -0
  27. package/lib/src/external/transform-controls.d.ts +106 -0
  28. package/lib/src/external/transform-controls.js +1113 -0
  29. package/lib/src/external/transform-controls.js.map +1 -0
  30. package/lib/src/external/util/buffer-geometry-utils.d.ts +45 -0
  31. package/lib/src/external/util/buffer-geometry-utils.js +569 -0
  32. package/lib/src/external/util/buffer-geometry-utils.js.map +1 -0
  33. package/lib/src/owlly/controller/aerial-element-controller.d.ts +65 -0
  34. package/lib/src/owlly/controller/aerial-element-controller.js +236 -0
  35. package/lib/src/owlly/controller/aerial-element-controller.js.map +1 -0
  36. package/lib/src/owlly/controller/basic-controller.d.ts +324 -0
  37. package/lib/src/owlly/controller/basic-controller.js +1239 -0
  38. package/lib/src/owlly/controller/basic-controller.js.map +1 -0
  39. package/lib/src/owlly/controller/camera-controller.d.ts +37 -0
  40. package/lib/src/owlly/controller/camera-controller.js +138 -0
  41. package/lib/src/owlly/controller/camera-controller.js.map +1 -0
  42. package/lib/src/owlly/controller/controller.d.ts +61 -0
  43. package/lib/src/owlly/controller/controller.js +24 -0
  44. package/lib/src/owlly/controller/controller.js.map +1 -0
  45. package/lib/src/owlly/controller/index.d.ts +2 -0
  46. package/lib/src/owlly/controller/index.js +14 -0
  47. package/lib/src/owlly/controller/index.js.map +1 -0
  48. package/lib/src/owlly/controller/mouse-indicator-controller.d.ts +34 -0
  49. package/lib/src/owlly/controller/mouse-indicator-controller.js +119 -0
  50. package/lib/src/owlly/controller/mouse-indicator-controller.js.map +1 -0
  51. package/lib/src/owlly/controller/orbit-control.d.ts +147 -0
  52. package/lib/src/owlly/controller/orbit-control.js +265 -0
  53. package/lib/src/owlly/controller/orbit-control.js.map +1 -0
  54. package/lib/src/owlly/controller/panorama-adjust-controller.d.ts +45 -0
  55. package/lib/src/owlly/controller/panorama-adjust-controller.js +158 -0
  56. package/lib/src/owlly/controller/panorama-adjust-controller.js.map +1 -0
  57. package/lib/src/owlly/controller/panorama-controller.d.ts +441 -0
  58. package/lib/src/owlly/controller/panorama-controller.js +1944 -0
  59. package/lib/src/owlly/controller/panorama-controller.js.map +1 -0
  60. package/lib/src/owlly/controller/panorama-transform-controller.d.ts +66 -0
  61. package/lib/src/owlly/controller/panorama-transform-controller.js +137 -0
  62. package/lib/src/owlly/controller/panorama-transform-controller.js.map +1 -0
  63. package/lib/src/owlly/controller/plane-controller.d.ts +43 -0
  64. package/lib/src/owlly/controller/plane-controller.js +174 -0
  65. package/lib/src/owlly/controller/plane-controller.js.map +1 -0
  66. package/lib/src/owlly/controller/texture-controller.d.ts +181 -0
  67. package/lib/src/owlly/controller/texture-controller.js +876 -0
  68. package/lib/src/owlly/controller/texture-controller.js.map +1 -0
  69. package/lib/src/owlly/controller/tile-panorama-controller.d.ts +308 -0
  70. package/lib/src/owlly/controller/tile-panorama-controller.js +1354 -0
  71. package/lib/src/owlly/controller/tile-panorama-controller.js.map +1 -0
  72. package/lib/src/owlly/controller/transform-controller.d.ts +106 -0
  73. package/lib/src/owlly/controller/transform-controller.js +546 -0
  74. package/lib/src/owlly/controller/transform-controller.js.map +1 -0
  75. package/lib/src/owlly/element/bottom-nav-element.d.ts +65 -0
  76. package/lib/src/owlly/element/bottom-nav-element.js +258 -0
  77. package/lib/src/owlly/element/bottom-nav-element.js.map +1 -0
  78. package/lib/src/owlly/element/camera.d.ts +82 -0
  79. package/lib/src/owlly/element/camera.js +284 -0
  80. package/lib/src/owlly/element/camera.js.map +1 -0
  81. package/lib/src/owlly/element/dom-2d-element.d.ts +35 -0
  82. package/lib/src/owlly/element/dom-2d-element.js +49 -0
  83. package/lib/src/owlly/element/dom-2d-element.js.map +1 -0
  84. package/lib/src/owlly/element/dom-3d-element.d.ts +27 -0
  85. package/lib/src/owlly/element/dom-3d-element.js +34 -0
  86. package/lib/src/owlly/element/dom-3d-element.js.map +1 -0
  87. package/lib/src/owlly/element/dom-label-2d.d.ts +116 -0
  88. package/lib/src/owlly/element/dom-label-2d.js +383 -0
  89. package/lib/src/owlly/element/dom-label-2d.js.map +1 -0
  90. package/lib/src/owlly/element/element.d.ts +53 -0
  91. package/lib/src/owlly/element/element.js +76 -0
  92. package/lib/src/owlly/element/element.js.map +1 -0
  93. package/lib/src/owlly/element/floor-model.d.ts +83 -0
  94. package/lib/src/owlly/element/floor-model.js +228 -0
  95. package/lib/src/owlly/element/floor-model.js.map +1 -0
  96. package/lib/src/owlly/element/gif-kit/Gif.d.ts +96 -0
  97. package/lib/src/owlly/element/gif-kit/Gif.js +433 -0
  98. package/lib/src/owlly/element/gif-kit/Gif.js.map +1 -0
  99. package/lib/src/owlly/element/gif-kit/GifColor.d.ts +21 -0
  100. package/lib/src/owlly/element/gif-kit/GifColor.js +38 -0
  101. package/lib/src/owlly/element/gif-kit/GifColor.js.map +1 -0
  102. package/lib/src/owlly/element/gif-kit/GifCompressedCodesToByteArrayConverter.d.ts +20 -0
  103. package/lib/src/owlly/element/gif-kit/GifCompressedCodesToByteArrayConverter.js +51 -0
  104. package/lib/src/owlly/element/gif-kit/GifCompressedCodesToByteArrayConverter.js.map +1 -0
  105. package/lib/src/owlly/element/gif-kit/GifFrame.d.ts +31 -0
  106. package/lib/src/owlly/element/gif-kit/GifFrame.js +97 -0
  107. package/lib/src/owlly/element/gif-kit/GifFrame.js.map +1 -0
  108. package/lib/src/owlly/element/gif-kit/GifImage.d.ts +23 -0
  109. package/lib/src/owlly/element/gif-kit/GifImage.js +8 -0
  110. package/lib/src/owlly/element/gif-kit/GifImage.js.map +1 -0
  111. package/lib/src/owlly/element/gif-kit/GifParser.d.ts +17 -0
  112. package/lib/src/owlly/element/gif-kit/GifParser.js +197 -0
  113. package/lib/src/owlly/element/gif-kit/GifParser.js.map +1 -0
  114. package/lib/src/owlly/element/gif-kit/GifPresenter.d.ts +20 -0
  115. package/lib/src/owlly/element/gif-kit/GifPresenter.js +44 -0
  116. package/lib/src/owlly/element/gif-kit/GifPresenter.js.map +1 -0
  117. package/lib/src/owlly/element/gif-kit/GifVersion.d.ts +10 -0
  118. package/lib/src/owlly/element/gif-kit/GifVersion.js +13 -0
  119. package/lib/src/owlly/element/gif-kit/GifVersion.js.map +1 -0
  120. package/lib/src/owlly/element/gltf-mesh-element.d.ts +31 -0
  121. package/lib/src/owlly/element/gltf-mesh-element.js +137 -0
  122. package/lib/src/owlly/element/gltf-mesh-element.js.map +1 -0
  123. package/lib/src/owlly/element/index.d.ts +20 -0
  124. package/lib/src/owlly/element/index.js +25 -0
  125. package/lib/src/owlly/element/index.js.map +1 -0
  126. package/lib/src/owlly/element/map-kit/area.d.ts +24 -0
  127. package/lib/src/owlly/element/map-kit/area.js +218 -0
  128. package/lib/src/owlly/element/map-kit/area.js.map +1 -0
  129. package/lib/src/owlly/element/map-kit/block-set.d.ts +39 -0
  130. package/lib/src/owlly/element/map-kit/block-set.js +91 -0
  131. package/lib/src/owlly/element/map-kit/block-set.js.map +1 -0
  132. package/lib/src/owlly/element/map-kit/block.d.ts +77 -0
  133. package/lib/src/owlly/element/map-kit/block.js +339 -0
  134. package/lib/src/owlly/element/map-kit/block.js.map +1 -0
  135. package/lib/src/owlly/element/map-kit/index.d.ts +4 -0
  136. package/lib/src/owlly/element/map-kit/index.js +7 -0
  137. package/lib/src/owlly/element/map-kit/index.js.map +1 -0
  138. package/lib/src/owlly/element/map-kit/shape.d.ts +131 -0
  139. package/lib/src/owlly/element/map-kit/shape.js +190 -0
  140. package/lib/src/owlly/element/map-kit/shape.js.map +1 -0
  141. package/lib/src/owlly/element/mesh-element.d.ts +22 -0
  142. package/lib/src/owlly/element/mesh-element.js +64 -0
  143. package/lib/src/owlly/element/mesh-element.js.map +1 -0
  144. package/lib/src/owlly/element/mesh-line-2d.d.ts +82 -0
  145. package/lib/src/owlly/element/mesh-line-2d.js +888 -0
  146. package/lib/src/owlly/element/mesh-line-2d.js.map +1 -0
  147. package/lib/src/owlly/element/meshline-o.d.ts +64 -0
  148. package/lib/src/owlly/element/meshline-o.js +679 -0
  149. package/lib/src/owlly/element/meshline-o.js.map +1 -0
  150. package/lib/src/owlly/element/panorama-group.d.ts +241 -0
  151. package/lib/src/owlly/element/panorama-group.js +967 -0
  152. package/lib/src/owlly/element/panorama-group.js.map +1 -0
  153. package/lib/src/owlly/element/panorama.d.ts +132 -0
  154. package/lib/src/owlly/element/panorama.js +813 -0
  155. package/lib/src/owlly/element/panorama.js.map +1 -0
  156. package/lib/src/owlly/element/path-group.d.ts +69 -0
  157. package/lib/src/owlly/element/path-group.js +172 -0
  158. package/lib/src/owlly/element/path-group.js.map +1 -0
  159. package/lib/src/owlly/element/path.d.ts +99 -0
  160. package/lib/src/owlly/element/path.js +532 -0
  161. package/lib/src/owlly/element/path.js.map +1 -0
  162. package/lib/src/owlly/element/placeable-2d.d.ts +158 -0
  163. package/lib/src/owlly/element/placeable-2d.js +471 -0
  164. package/lib/src/owlly/element/placeable-2d.js.map +1 -0
  165. package/lib/src/owlly/element/polygon-mesh.d.ts +107 -0
  166. package/lib/src/owlly/element/polygon-mesh.js +308 -0
  167. package/lib/src/owlly/element/polygon-mesh.js.map +1 -0
  168. package/lib/src/owlly/element/ring-element.d.ts +79 -0
  169. package/lib/src/owlly/element/ring-element.js +384 -0
  170. package/lib/src/owlly/element/ring-element.js.map +1 -0
  171. package/lib/src/owlly/element/sphere-mesh.d.ts +28 -0
  172. package/lib/src/owlly/element/sphere-mesh.js +70 -0
  173. package/lib/src/owlly/element/sphere-mesh.js.map +1 -0
  174. package/lib/src/owlly/element/svg-floor-model.d.ts +22 -0
  175. package/lib/src/owlly/element/svg-floor-model.js +185 -0
  176. package/lib/src/owlly/element/svg-floor-model.js.map +1 -0
  177. package/lib/src/owlly/element/svg-floors.d.ts +27 -0
  178. package/lib/src/owlly/element/svg-floors.js +110 -0
  179. package/lib/src/owlly/element/svg-floors.js.map +1 -0
  180. package/lib/src/owlly/element/tile-panorama-group.d.ts +335 -0
  181. package/lib/src/owlly/element/tile-panorama-group.js +1007 -0
  182. package/lib/src/owlly/element/tile-panorama-group.js.map +1 -0
  183. package/lib/src/owlly/element/tile-panorama.d.ts +161 -0
  184. package/lib/src/owlly/element/tile-panorama.js +511 -0
  185. package/lib/src/owlly/element/tile-panorama.js.map +1 -0
  186. package/lib/src/owlly/element/tile-plane.d.ts +105 -0
  187. package/lib/src/owlly/element/tile-plane.js +361 -0
  188. package/lib/src/owlly/element/tile-plane.js.map +1 -0
  189. package/lib/src/owlly/element/video-element.d.ts +33 -0
  190. package/lib/src/owlly/element/video-element.js +160 -0
  191. package/lib/src/owlly/element/video-element.js.map +1 -0
  192. package/lib/src/owlly/geometries/ExtrudeGeometry2.d.ts +15 -0
  193. package/lib/src/owlly/geometries/ExtrudeGeometry2.js +211 -0
  194. package/lib/src/owlly/geometries/ExtrudeGeometry2.js.map +1 -0
  195. package/lib/src/owlly/index.d.ts +13 -0
  196. package/lib/src/owlly/index.js +17 -0
  197. package/lib/src/owlly/index.js.map +1 -0
  198. package/lib/src/owlly/overlay/canvas-overlay.d.ts +96 -0
  199. package/lib/src/owlly/overlay/canvas-overlay.js +511 -0
  200. package/lib/src/owlly/overlay/canvas-overlay.js.map +1 -0
  201. package/lib/src/owlly/overlay/css-2d-overlay.d.ts +14 -0
  202. package/lib/src/owlly/overlay/css-2d-overlay.js +36 -0
  203. package/lib/src/owlly/overlay/css-2d-overlay.js.map +1 -0
  204. package/lib/src/owlly/overlay/css-3d-overlay.d.ts +16 -0
  205. package/lib/src/owlly/overlay/css-3d-overlay.js +37 -0
  206. package/lib/src/owlly/overlay/css-3d-overlay.js.map +1 -0
  207. package/lib/src/owlly/overlay/index.d.ts +6 -0
  208. package/lib/src/owlly/overlay/index.js +12 -0
  209. package/lib/src/owlly/overlay/index.js.map +1 -0
  210. package/lib/src/owlly/overlay/label-overlay.d.ts +62 -0
  211. package/lib/src/owlly/overlay/label-overlay.js +329 -0
  212. package/lib/src/owlly/overlay/label-overlay.js.map +1 -0
  213. package/lib/src/owlly/overlay/overlay.d.ts +14 -0
  214. package/lib/src/owlly/overlay/overlay.js +5 -0
  215. package/lib/src/owlly/overlay/overlay.js.map +1 -0
  216. package/lib/src/owlly/overlay/path-overlay.d.ts +39 -0
  217. package/lib/src/owlly/overlay/path-overlay.js +125 -0
  218. package/lib/src/owlly/overlay/path-overlay.js.map +1 -0
  219. package/lib/src/owlly/overlay/path-overlay2.d.ts +35 -0
  220. package/lib/src/owlly/overlay/path-overlay2.js +119 -0
  221. package/lib/src/owlly/overlay/path-overlay2.js.map +1 -0
  222. package/lib/src/owlly/overlay/poi-overlay-3d.d.ts +278 -0
  223. package/lib/src/owlly/overlay/poi-overlay-3d.js +1433 -0
  224. package/lib/src/owlly/overlay/poi-overlay-3d.js.map +1 -0
  225. package/lib/src/owlly/overlay/poi-overlay.d.ts +277 -0
  226. package/lib/src/owlly/overlay/poi-overlay.js +1412 -0
  227. package/lib/src/owlly/overlay/poi-overlay.js.map +1 -0
  228. package/lib/src/owlly/owlly-2d/index.d.ts +28 -0
  229. package/lib/src/owlly/owlly-2d/index.js +93 -0
  230. package/lib/src/owlly/owlly-2d/index.js.map +1 -0
  231. package/lib/src/owlly/screen/index.d.ts +1 -0
  232. package/lib/src/owlly/screen/index.js +2 -0
  233. package/lib/src/owlly/screen/index.js.map +1 -0
  234. package/lib/src/owlly/screen/screen.d.ts +73 -0
  235. package/lib/src/owlly/screen/screen.js +237 -0
  236. package/lib/src/owlly/screen/screen.js.map +1 -0
  237. package/lib/src/owlly/stage/__test__/stage.spec.d.ts +1 -0
  238. package/lib/src/owlly/stage/__test__/stage.spec.js +15 -0
  239. package/lib/src/owlly/stage/__test__/stage.spec.js.map +1 -0
  240. package/lib/src/owlly/stage/externals.d.ts +19 -0
  241. package/lib/src/owlly/stage/externals.js +25 -0
  242. package/lib/src/owlly/stage/externals.js.map +1 -0
  243. package/lib/src/owlly/stage/index.d.ts +4 -0
  244. package/lib/src/owlly/stage/index.js +7 -0
  245. package/lib/src/owlly/stage/index.js.map +1 -0
  246. package/lib/src/owlly/stage/owlly.d.ts +38 -0
  247. package/lib/src/owlly/stage/owlly.js +168 -0
  248. package/lib/src/owlly/stage/owlly.js.map +1 -0
  249. package/lib/src/owlly/stage/stage.d.ts +108 -0
  250. package/lib/src/owlly/stage/stage.js +235 -0
  251. package/lib/src/owlly/stage/stage.js.map +1 -0
  252. package/lib/src/owlly/utils/alignment-utils.d.ts +20 -0
  253. package/lib/src/owlly/utils/alignment-utils.js +64 -0
  254. package/lib/src/owlly/utils/alignment-utils.js.map +1 -0
  255. package/lib/src/owlly/utils/basic-calc.d.ts +18 -0
  256. package/lib/src/owlly/utils/basic-calc.js +130 -0
  257. package/lib/src/owlly/utils/basic-calc.js.map +1 -0
  258. package/lib/src/owlly/utils/basic-tools.d.ts +71 -0
  259. package/lib/src/owlly/utils/basic-tools.js +236 -0
  260. package/lib/src/owlly/utils/basic-tools.js.map +1 -0
  261. package/lib/src/owlly/utils/bvh-tree.d.ts +105 -0
  262. package/lib/src/owlly/utils/bvh-tree.js +540 -0
  263. package/lib/src/owlly/utils/bvh-tree.js.map +1 -0
  264. package/lib/src/owlly/utils/camera.d.ts +37 -0
  265. package/lib/src/owlly/utils/camera.js +51 -0
  266. package/lib/src/owlly/utils/camera.js.map +1 -0
  267. package/lib/src/owlly/utils/cube-texture-cache.d.ts +25 -0
  268. package/lib/src/owlly/utils/cube-texture-cache.js +144 -0
  269. package/lib/src/owlly/utils/cube-texture-cache.js.map +1 -0
  270. package/lib/src/owlly/utils/device-utils.d.ts +18 -0
  271. package/lib/src/owlly/utils/device-utils.js +42 -0
  272. package/lib/src/owlly/utils/device-utils.js.map +1 -0
  273. package/lib/src/owlly/utils/environment-utils.d.ts +37 -0
  274. package/lib/src/owlly/utils/environment-utils.js +74 -0
  275. package/lib/src/owlly/utils/environment-utils.js.map +1 -0
  276. package/lib/src/owlly/utils/event-hub.d.ts +50 -0
  277. package/lib/src/owlly/utils/event-hub.js +107 -0
  278. package/lib/src/owlly/utils/event-hub.js.map +1 -0
  279. package/lib/src/owlly/utils/events.d.ts +219 -0
  280. package/lib/src/owlly/utils/events.js +220 -0
  281. package/lib/src/owlly/utils/events.js.map +1 -0
  282. package/lib/src/owlly/utils/geometry-utils.d.ts +119 -0
  283. package/lib/src/owlly/utils/geometry-utils.js +623 -0
  284. package/lib/src/owlly/utils/geometry-utils.js.map +1 -0
  285. package/lib/src/owlly/utils/helper.d.ts +6 -0
  286. package/lib/src/owlly/utils/helper.js +25 -0
  287. package/lib/src/owlly/utils/helper.js.map +1 -0
  288. package/lib/src/owlly/utils/index.d.ts +14 -0
  289. package/lib/src/owlly/utils/index.js +18 -0
  290. package/lib/src/owlly/utils/index.js.map +1 -0
  291. package/lib/src/owlly/utils/lru-cache.d.ts +26 -0
  292. package/lib/src/owlly/utils/lru-cache.js +110 -0
  293. package/lib/src/owlly/utils/lru-cache.js.map +1 -0
  294. package/lib/src/owlly/utils/map-utils.d.ts +7 -0
  295. package/lib/src/owlly/utils/map-utils.js +53 -0
  296. package/lib/src/owlly/utils/map-utils.js.map +1 -0
  297. package/lib/src/owlly/utils/number-utils.d.ts +8 -0
  298. package/lib/src/owlly/utils/number-utils.js +73 -0
  299. package/lib/src/owlly/utils/number-utils.js.map +1 -0
  300. package/lib/src/owlly/utils/panorama-model-util.d.ts +46 -0
  301. package/lib/src/owlly/utils/panorama-model-util.js +246 -0
  302. package/lib/src/owlly/utils/panorama-model-util.js.map +1 -0
  303. package/lib/src/owlly/utils/path-utils.d.ts +80 -0
  304. package/lib/src/owlly/utils/path-utils.js +729 -0
  305. package/lib/src/owlly/utils/path-utils.js.map +1 -0
  306. package/lib/src/owlly/utils/svgutils.d.ts +138 -0
  307. package/lib/src/owlly/utils/svgutils.js +562 -0
  308. package/lib/src/owlly/utils/svgutils.js.map +1 -0
  309. package/lib/src/owlly/utils/texture-cache.d.ts +29 -0
  310. package/lib/src/owlly/utils/texture-cache.js +116 -0
  311. package/lib/src/owlly/utils/texture-cache.js.map +1 -0
  312. package/lib/src/owlly/utils/tile-util.d.ts +187 -0
  313. package/lib/src/owlly/utils/tile-util.js +457 -0
  314. package/lib/src/owlly/utils/tile-util.js.map +1 -0
  315. package/lib/src/owlly/utils/time-profiler.d.ts +21 -0
  316. package/lib/src/owlly/utils/time-profiler.js +49 -0
  317. package/lib/src/owlly/utils/time-profiler.js.map +1 -0
  318. package/lib/src/owlly/view/__test__/perspective-view.spec.d.ts +0 -0
  319. package/lib/src/owlly/view/__test__/perspective-view.spec.js +22 -0
  320. package/lib/src/owlly/view/__test__/perspective-view.spec.js.map +1 -0
  321. package/lib/src/owlly/view/camera-view.d.ts +35 -0
  322. package/lib/src/owlly/view/camera-view.js +102 -0
  323. package/lib/src/owlly/view/camera-view.js.map +1 -0
  324. package/lib/src/owlly/view/index.d.ts +3 -0
  325. package/lib/src/owlly/view/index.js +6 -0
  326. package/lib/src/owlly/view/index.js.map +1 -0
  327. package/lib/src/owlly/view/orthographic-view.d.ts +40 -0
  328. package/lib/src/owlly/view/orthographic-view.js +95 -0
  329. package/lib/src/owlly/view/orthographic-view.js.map +1 -0
  330. package/lib/src/owlly/view/perspective-view.d.ts +40 -0
  331. package/lib/src/owlly/view/perspective-view.js +96 -0
  332. package/lib/src/owlly/view/perspective-view.js.map +1 -0
  333. package/lib/src/owlly/view/svg-map-view.d.ts +46 -0
  334. package/lib/src/owlly/view/svg-map-view.js +145 -0
  335. package/lib/src/owlly/view/svg-map-view.js.map +1 -0
  336. package/lib/src/owlly/view/view.d.ts +146 -0
  337. package/lib/src/owlly/view/view.js +318 -0
  338. package/lib/src/owlly/view/view.js.map +1 -0
  339. package/lib/src/web/main.centroid.d.ts +0 -0
  340. package/lib/src/web/main.centroid.js +74 -0
  341. package/lib/src/web/main.centroid.js.map +1 -0
  342. package/lib/src/web/main.hyma.meshline2d.d.ts +1 -0
  343. package/lib/src/web/main.hyma.meshline2d.js +76 -0
  344. package/lib/src/web/main.hyma.meshline2d.js.map +1 -0
  345. package/lib/src/web/main.jyfang.sample.d.ts +0 -0
  346. package/lib/src/web/main.jyfang.sample.js +122 -0
  347. package/lib/src/web/main.jyfang.sample.js.map +1 -0
  348. package/lib/src/web/main.rpeng.extrude.d.ts +1 -0
  349. package/lib/src/web/main.rpeng.extrude.js +180 -0
  350. package/lib/src/web/main.rpeng.extrude.js.map +1 -0
  351. package/lib/src/web/main.rpeng.mes.plane.d.ts +1 -0
  352. package/lib/src/web/main.rpeng.mes.plane.js +135 -0
  353. package/lib/src/web/main.rpeng.mes.plane.js.map +1 -0
  354. package/lib/src/web/main.rpeng.sample.d.ts +0 -0
  355. package/lib/src/web/main.rpeng.sample.js +318 -0
  356. package/lib/src/web/main.rpeng.sample.js.map +1 -0
  357. package/lib/src/web/main.rpeng.vr.d.ts +1 -0
  358. package/lib/src/web/main.rpeng.vr.js +141 -0
  359. package/lib/src/web/main.rpeng.vr.js.map +1 -0
  360. package/lib/src/web/main.sample.d.ts +1 -0
  361. package/lib/src/web/main.sample.js +52 -0
  362. package/lib/src/web/main.sample.js.map +1 -0
  363. package/lib/src/web/quattree.hyma.d.ts +0 -0
  364. package/lib/src/web/quattree.hyma.js +150 -0
  365. package/lib/src/web/quattree.hyma.js.map +1 -0
  366. package/lib/src/web/sensor-vr-plugin.d.ts +0 -0
  367. package/lib/src/web/sensor-vr-plugin.js +166 -0
  368. package/lib/src/web/sensor-vr-plugin.js.map +1 -0
  369. package/package.json +142 -0
  370. package/src/@types/SceneUtils.d.ts +9 -0
  371. package/src/@types/chaikin-smooth.d.ts +5 -0
  372. package/src/@types/global.d.ts +3 -0
  373. package/src/@types/snapsvg.d.ts +11 -0
  374. package/src/@types/svgson.d.ts +30 -0
  375. package/src/assets/favicon.ico +0 -0
  376. package/src/external/lines/line-geometry.ts +70 -0
  377. package/src/external/lines/line-material.ts +453 -0
  378. package/src/external/lines/line-segments-2.ts +194 -0
  379. package/src/external/lines/line-segments-geometry.ts +197 -0
  380. package/src/external/loaders/gltf-loader.ts +3004 -0
  381. package/src/external/orbit-controls.ts +1070 -0
  382. package/src/external/renderers/css-2d-renderer.ts +185 -0
  383. package/src/external/renderers/css-3d-renderer.ts +245 -0
  384. package/src/external/transform-controls.ts +1532 -0
  385. package/src/external/util/buffer-geometry-utils.ts +783 -0
  386. package/src/owlly/controller/aerial-element-controller.ts +277 -0
  387. package/src/owlly/controller/basic-controller.ts +1509 -0
  388. package/src/owlly/controller/camera-controller.ts +155 -0
  389. package/src/owlly/controller/controller.ts +76 -0
  390. package/src/owlly/controller/index.ts +15 -0
  391. package/src/owlly/controller/mouse-indicator-controller.ts +157 -0
  392. package/src/owlly/controller/orbit-control.ts +310 -0
  393. package/src/owlly/controller/panorama-adjust-controller.ts +183 -0
  394. package/src/owlly/controller/panorama-controller.ts +2234 -0
  395. package/src/owlly/controller/panorama-transform-controller.ts +151 -0
  396. package/src/owlly/controller/plane-controller.ts +222 -0
  397. package/src/owlly/controller/texture-controller.ts +949 -0
  398. package/src/owlly/controller/tile-panorama-controller.ts +1633 -0
  399. package/src/owlly/controller/transform-controller.ts +684 -0
  400. package/src/owlly/element/bottom-nav-element.ts +352 -0
  401. package/src/owlly/element/camera.ts +389 -0
  402. package/src/owlly/element/dom-2d-element.ts +88 -0
  403. package/src/owlly/element/dom-3d-element.ts +87 -0
  404. package/src/owlly/element/dom-label-2d.ts +497 -0
  405. package/src/owlly/element/element.ts +117 -0
  406. package/src/owlly/element/floor-model.ts +290 -0
  407. package/src/owlly/element/gif-kit/Gif.ts +509 -0
  408. package/src/owlly/element/gif-kit/GifColor.ts +44 -0
  409. package/src/owlly/element/gif-kit/GifCompressedCodesToByteArrayConverter.ts +56 -0
  410. package/src/owlly/element/gif-kit/GifFrame.ts +207 -0
  411. package/src/owlly/element/gif-kit/GifImage.ts +26 -0
  412. package/src/owlly/element/gif-kit/GifParser.ts +254 -0
  413. package/src/owlly/element/gif-kit/GifPresenter.ts +46 -0
  414. package/src/owlly/element/gif-kit/GifVersion.ts +12 -0
  415. package/src/owlly/element/gltf-mesh-element.ts +184 -0
  416. package/src/owlly/element/index.ts +25 -0
  417. package/src/owlly/element/map-kit/area.ts +232 -0
  418. package/src/owlly/element/map-kit/block-set.ts +102 -0
  419. package/src/owlly/element/map-kit/block.ts +417 -0
  420. package/src/owlly/element/map-kit/index.ts +6 -0
  421. package/src/owlly/element/map-kit/shape.ts +285 -0
  422. package/src/owlly/element/mesh-element.ts +94 -0
  423. package/src/owlly/element/mesh-line-2d.ts +1032 -0
  424. package/src/owlly/element/meshline-o.ts +802 -0
  425. package/src/owlly/element/panorama-group.ts +1250 -0
  426. package/src/owlly/element/panorama.ts +1044 -0
  427. package/src/owlly/element/path-group.ts +212 -0
  428. package/src/owlly/element/path.ts +727 -0
  429. package/src/owlly/element/placeable-2d.ts +627 -0
  430. package/src/owlly/element/polygon-mesh.ts +344 -0
  431. package/src/owlly/element/ring-element.ts +517 -0
  432. package/src/owlly/element/sphere-mesh.ts +96 -0
  433. package/src/owlly/element/svg-floor-model.ts +200 -0
  434. package/src/owlly/element/svg-floors.ts +121 -0
  435. package/src/owlly/element/tile-panorama-group.ts +1314 -0
  436. package/src/owlly/element/tile-panorama.ts +636 -0
  437. package/src/owlly/element/tile-plane.ts +430 -0
  438. package/src/owlly/element/video-element.ts +190 -0
  439. package/src/owlly/geometries/ExtrudeGeometry2.ts +255 -0
  440. package/src/owlly/index.ts +19 -0
  441. package/src/owlly/overlay/canvas-overlay.ts +642 -0
  442. package/src/owlly/overlay/css-2d-overlay.ts +48 -0
  443. package/src/owlly/overlay/css-3d-overlay.ts +50 -0
  444. package/src/owlly/overlay/index.ts +11 -0
  445. package/src/owlly/overlay/label-overlay.ts +419 -0
  446. package/src/owlly/overlay/overlay.ts +17 -0
  447. package/src/owlly/overlay/path-overlay.ts +170 -0
  448. package/src/owlly/overlay/path-overlay2.ts +149 -0
  449. package/src/owlly/overlay/poi-overlay-3d.ts +1759 -0
  450. package/src/owlly/overlay/poi-overlay.ts +1739 -0
  451. package/src/owlly/owlly-2d/index.ts +108 -0
  452. package/src/owlly/screen/index.ts +1 -0
  453. package/src/owlly/screen/screen.ts +323 -0
  454. package/src/owlly/stage/__test__/stage.spec.ts +15 -0
  455. package/src/owlly/stage/externals.ts +45 -0
  456. package/src/owlly/stage/index.ts +12 -0
  457. package/src/owlly/stage/owlly.ts +223 -0
  458. package/src/owlly/stage/stage.ts +274 -0
  459. package/src/owlly/utils/alignment-utils.ts +84 -0
  460. package/src/owlly/utils/basic-calc.ts +141 -0
  461. package/src/owlly/utils/basic-tools.ts +286 -0
  462. package/src/owlly/utils/bvh-tree.ts +695 -0
  463. package/src/owlly/utils/camera.ts +72 -0
  464. package/src/owlly/utils/cube-texture-cache.ts +155 -0
  465. package/src/owlly/utils/device-utils.ts +53 -0
  466. package/src/owlly/utils/environment-utils.ts +81 -0
  467. package/src/owlly/utils/event-hub.ts +120 -0
  468. package/src/owlly/utils/events.ts +266 -0
  469. package/src/owlly/utils/geometry-utils.ts +749 -0
  470. package/src/owlly/utils/helper.ts +33 -0
  471. package/src/owlly/utils/index.ts +17 -0
  472. package/src/owlly/utils/lru-cache.ts +126 -0
  473. package/src/owlly/utils/map-utils.ts +55 -0
  474. package/src/owlly/utils/number-utils.ts +75 -0
  475. package/src/owlly/utils/panorama-model-util.ts +255 -0
  476. package/src/owlly/utils/path-utils.ts +837 -0
  477. package/src/owlly/utils/svgutils.ts +732 -0
  478. package/src/owlly/utils/texture-cache.ts +132 -0
  479. package/src/owlly/utils/tile-util.ts +563 -0
  480. package/src/owlly/utils/time-profiler.ts +57 -0
  481. package/src/owlly/view/__test__/perspective-view.spec.ts +23 -0
  482. package/src/owlly/view/camera-view.ts +114 -0
  483. package/src/owlly/view/index.ts +5 -0
  484. package/src/owlly/view/orthographic-view.ts +124 -0
  485. package/src/owlly/view/perspective-view.ts +125 -0
  486. package/src/owlly/view/svg-map-view.ts +187 -0
  487. package/src/owlly/view/view.ts +409 -0
  488. package/src/public/js/jsmpeg.min.js +3129 -0
  489. package/src/web/index.html +52 -0
  490. package/src/web/main.centroid.ts +85 -0
  491. package/src/web/main.hyma.meshline2d.ts +84 -0
  492. package/src/web/main.jyfang.sample.ts +139 -0
  493. package/src/web/main.rpeng.extrude.ts +194 -0
  494. package/src/web/main.rpeng.mes.plane.ts +161 -0
  495. package/src/web/main.rpeng.sample.ts +345 -0
  496. package/src/web/main.rpeng.vr.ts +159 -0
  497. package/src/web/main.sample.ts +59 -0
  498. package/src/web/quattree.hyma.ts +163 -0
  499. package/src/web/sensor-vr-plugin.ts +201 -0
  500. package/src/web/testPixel.png +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"meshline-o.js","sourceRoot":"","sources":["../../../../src/owlly/element/meshline-o.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,241 @@
1
+ import { NS_THREE } from '../stage/externals';
2
+ import { Element, ElementFrameContext } from './element';
3
+ import { Panorama, PanoramaViewConfiguration } from './panorama';
4
+ import { View } from '../view/view';
5
+ import { GroundParameters } from './floor-model';
6
+ /** 全景点位显示模式
7
+ * 点位的显示/隐藏状态通过[setIndicatorVisibility]方法设置,
8
+ * 但是最终是否显示、以何外观显示,则是结合PanoramaGroup在当前View的显示模式来决定
9
+ * @param AlwaysHide 不论显示/隐藏的设置如何,都不显示
10
+ * @param AlwaysShow 不论显示/隐藏的设置如何,都不显示。该模式主要用于俯视全局视图用
11
+ * @param Editing 编辑模式,隐藏/显示状态的点位用不同的外观显示
12
+ * @param Show 按显示/隐葳的状态设置决定是否显示
13
+ */
14
+ declare enum IndicatorDisplayMode {
15
+ AlwaysHide = 0,
16
+ AlwaysShow = 1,
17
+ Editing = 2,
18
+ Show = 3
19
+ }
20
+ /**
21
+ * 全景图组显示状态配置
22
+ */
23
+ interface PanoramaGroupViewConfiguration {
24
+ targetView: View;
25
+ hidden?: boolean;
26
+ /** 可视范围半径,会根据此数值来决定预加载哪些全景图以及显示哪些点位 */
27
+ visibleRadius?: number;
28
+ /** 全景点位显示模式 */
29
+ indicatorDisplayMode?: IndicatorDisplayMode;
30
+ /** 是否显示模型包围盒,用于全景漫游时 */
31
+ showBoundBox?: boolean;
32
+ }
33
+ interface PanoramaData {
34
+ pid: number;
35
+ seqID: number;
36
+ textureURLs: string[];
37
+ neighbourPanoramaIDs: number[];
38
+ highTextureURLs?: string[];
39
+ useLowTextureURLsOnly?: boolean;
40
+ tiledTextureURLRoot?: string;
41
+ position?: NS_THREE.Vector3;
42
+ quaternion?: NS_THREE.Quaternion;
43
+ legacyMode?: boolean;
44
+ }
45
+ /**
46
+ * 全景图组
47
+ * @noInheritDoc
48
+ */
49
+ declare class PanoramaGroup extends Element {
50
+ private initialized;
51
+ private needUpdate;
52
+ modelElement: NS_THREE.Object3D | null;
53
+ private groundParams?;
54
+ boundBox: NS_THREE.Mesh | null;
55
+ currentPanoramaID: number;
56
+ panoramaDatas: Map<number, PanoramaData>;
57
+ private panoramaMap;
58
+ private indicatorMeshPrototype;
59
+ private indicatorMaterials;
60
+ private indicatorShaderUniforms;
61
+ private invisibleIndicatorShaderUniforms;
62
+ private indicatorMap;
63
+ private inSightIndicators;
64
+ private indicatorVisibilityMap;
65
+ private indicatorHiddenMap;
66
+ private indicatorPositionMap;
67
+ private indicatorImageURL;
68
+ private indicatorWidth;
69
+ private indicatorHeight;
70
+ private panoramaCreatingTasks;
71
+ group: NS_THREE.Group;
72
+ private viewConfigurations;
73
+ private eventListeners;
74
+ maxWorldDistance: number;
75
+ static DefaultVisibleRadius: number;
76
+ static IndicatorRadius: number;
77
+ static IndicatorOffsetZ: number;
78
+ private globalScale;
79
+ /**
80
+ * @param modelElement 模型对象,通常应该是FloorModel
81
+ * @param groundParams 地面参数对象,若有则在计算地面高度时忽略modelElement,优先使用它
82
+ * @param indicatorImageURL 显示状态全景点地面标识的图片URL
83
+ * @param invisibleIndicatorImageURL 编辑模式下隐藏状态全景点地面标识的图片URL
84
+ * @param indicatorWidth 全景点地面标识宽度
85
+ * @param indicatorHeight 全景点地面标识高度
86
+ * @example
87
+ * ``` typescript
88
+ * panoMgr = new PanoramaGroup(panoramaDataList, 2, {
89
+ * floorModel,
90
+ * groundParams,
91
+ * });
92
+ * stage.bindElement(panoMgr);
93
+ */
94
+ constructor(panoramaDataList: PanoramaData[], options: {
95
+ modelElement?: NS_THREE.Object3D;
96
+ groundParams?: GroundParameters;
97
+ indicatorImageURL?: string;
98
+ invisibleIndicatorImageURL?: string;
99
+ indicatorWidth?: number;
100
+ indicatorHeight?: number;
101
+ indicatorPositionMap?: Map<number, NS_THREE.Vector3>;
102
+ globalScale?: number;
103
+ }, initializeAllPanoramas?: boolean);
104
+ dispose(exceptForCubeTextureOfPID?: number): void;
105
+ /**
106
+ * @ignore
107
+ */
108
+ update(): ElementFrameContext;
109
+ /**
110
+ * 绑定模型Element对象(用于创建天空包围盒供全景切换时使用)
111
+ * @param modelElement 模型Element对象
112
+ */
113
+ bindModelElement(modelElement?: NS_THREE.Object3D): void;
114
+ static getBoundBox(rootObj: NS_THREE.Object3D | null): NS_THREE.Mesh | null;
115
+ private getModelBoundBox;
116
+ setBoundBoxAppearance(material: NS_THREE.Material): void;
117
+ private setBoundBoxVisible;
118
+ /**
119
+ * 加载指定全景图并加入场景(显示要通过PanoramaController)
120
+ * @param panorama 要加载的全景图
121
+ */
122
+ presentPanorama(panorama: Panorama, hdTiles: number[][], ldTiles: number[][]): Promise<void>;
123
+ /**
124
+ * 加载指定PID的全景图并加入场景(显示要通过PanoramaController)
125
+ * @param pid 要加载的全景图ID
126
+ */
127
+ presentPanoramaOfPID(pid: number, hdTiles: number[][], ldTiles: number[][]): Promise<void>;
128
+ /**
129
+ * 获取一组全景点的立方体贴图,若没命中则异步加载
130
+ * @param pids 全景点ID数组
131
+ * @param waitForReadyCount 指定函数必须在pids中的前多少个全景点立方体贴图获取到以后才能返回
132
+ * 比如在即将显示一个全景点时,指定必须等指定全景点的立方体贴图获取到后才能返回,而其周围全景点可以同时预加载但不用等
133
+ */
134
+ preloadCubeTexturesOfPIDs(pids: number[], waitForReadyCount: number): Promise<NS_THREE.CubeTexture[]>;
135
+ private visibleRadiusOfView;
136
+ private allPanoramas;
137
+ getAllPanoramas(): Promise<(Panorama | undefined)[]>;
138
+ panoramaIDsAround(centerPID: number, view?: View): number[] | null;
139
+ /**
140
+ * 设置当前位于的全景点位。将加载指定全景点并预加载其相邻全景点
141
+ * @param {number} currentPID 全景点位ID
142
+ */
143
+ presentPanoramaAround(currentPID: number, hdTiles: number[][], ldTiles: number[][], view?: View): Promise<void>;
144
+ /** @ignore */
145
+ private getPIDPositionMap;
146
+ getIndicatorPosition(pid: number): NS_THREE.Vector3 | undefined;
147
+ /**
148
+ * 显示指定全景点位标签
149
+ * @param pidPositionMap 从PID映射到全景点位位置的Map
150
+ */
151
+ presentPanoramaIndicators(pidPositionMap: Map<number, NS_THREE.Vector3>): void;
152
+ updateIndicatorsPositions(): Promise<void>;
153
+ /**
154
+ * 显示指定全景点及其相邻全景点上的标签
155
+ * @param pid “中心”全景点ID,一般指摄像机当前所在的全景点PID
156
+ */
157
+ presentPanoramaIndicatorsAround(pid: number, view?: View): Promise<void>;
158
+ getIndicatorVisibility(pid: number): boolean;
159
+ /**
160
+ * 设置指定全景点位的显示/隐藏状态
161
+ * @param visibility 显示/隐藏状态
162
+ * @param pid 可选,可以是全景图点位PID数组,也可以是单个PID,
163
+ * 若不设置则应用到本PanoramaGroup的所有全景点位上
164
+ */
165
+ setIndicatorVisibility(visibility: boolean, pid?: number | number[]): void;
166
+ setIndicatorHidden(hidden: boolean, pid?: number | number[]): void;
167
+ /**
168
+ * 与全景点标志作相交测试
169
+ * 若有任一个全景点标志与射线相交则返回最近一个的相应PID
170
+ * 若没有则返回-1
171
+ * @param rayOrigin 射线起点
172
+ * @param rayDirection 射线方向
173
+ */
174
+ intersectIndicators(rayOrigin: NS_THREE.Vector3, rayDirection: NS_THREE.Vector3): number;
175
+ intersectIndicatorsOnScreen(screenPosition: NS_THREE.Vector2, radius: number, { screenWidth, screenHeight }: {
176
+ screenWidth: number;
177
+ screenHeight: number;
178
+ }, camera: NS_THREE.Camera): number;
179
+ /**
180
+ * 添加全景点
181
+ * @param {Panorama} pano 全景图对象
182
+ */
183
+ putPanorama(pano: Panorama): void;
184
+ /**
185
+ * 指定预构建全景对象的顺序策略
186
+ * @param preInitStrategy 多义参数,表示具体的创建顺序
187
+ * 当为'all'时,直接按构造函数中panoramaDataList的顺序创建全部全景对象
188
+ * 当为一个整数值时,表示一个全景PID,将按全景点邻接关系以广度优先搜索的顺序创建全景对象
189
+ * 当为一个整数数组时,以数组指定的PID顺序依次创建
190
+ */
191
+ initializePanoramasIfNecessary(preInitStrategy: 'all' | number | number[]): Promise<(Panorama | undefined)[]>;
192
+ /**
193
+ * 获得指定ID的全景点对象
194
+ * @param pid 全景点ID
195
+ */
196
+ getPanoramaByPID(pid: number): Promise<Panorama | undefined>;
197
+ /**
198
+ * 立刻获得指定ID的全景点对象
199
+ * @param pid 全景点ID
200
+ */
201
+ getPanoramaByPIDInstant(pid: number): Panorama | null;
202
+ /**
203
+ * @ignore
204
+ * @param rayDirection
205
+ */
206
+ getNeghbourPanoClosestToRay(rayDirection: NS_THREE.Vector3): number;
207
+ updateIndicatorGeometry(): void;
208
+ /**
209
+ * 改变地面全景点标识的尺寸
210
+ * @param width 宽度
211
+ * @param height 高度
212
+ */
213
+ setIndicatorSize(width: number, height: number): void;
214
+ setIndicatorImageURL(url: string): void;
215
+ /**
216
+ * 查询当前设置的地面全景点标识尺寸
217
+ * @returns number数组,依次是width, height
218
+ */
219
+ getIndicatorSize(): number[];
220
+ setIndicatorMeshPrototype(mesh: NS_THREE.Mesh): void;
221
+ /**
222
+ * 设定全景点位标签的原型对象,每个全景点位的标签会以该原型对象为母本clone出来
223
+ * @param prototypeObject 点位标签原型Object3D对象
224
+ * @param mode 点位的展示模式
225
+ * @param visibility 点位的显隐状态设置
226
+ */
227
+ setIndicatorMaterial(material: NS_THREE.Material, mode: IndicatorDisplayMode, visibility: boolean): void;
228
+ getIndicatorMaterial(mode: IndicatorDisplayMode, visibility: boolean): NS_THREE.Material | undefined;
229
+ /**
230
+ * 配置全景图组在不同view中的显示状态
231
+ * @param configuration 全景图组配置,见[[PanoramaGroupViewConfiguration]]
232
+ */
233
+ addGroupViewConfiguration(configuration: PanoramaGroupViewConfiguration): void;
234
+ /**
235
+ * 配置组中所有全景图在不同view中的显示状态
236
+ * @param configuration 全景图显示配置
237
+ */
238
+ addViewConfiguration(configuration: PanoramaViewConfiguration): Promise<void>;
239
+ setMaxWorldDistance(distance: number): void;
240
+ }
241
+ export { PanoramaGroup, IndicatorDisplayMode, PanoramaGroupViewConfiguration, PanoramaData, };