@aibee/owlly 1.0.25 → 1.0.29

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 (359) hide show
  1. package/lib/external/lines/line-geometry.d.ts +9 -0
  2. package/lib/external/lines/line-geometry.js +51 -0
  3. package/lib/external/lines/line-material.d.ts +10 -0
  4. package/lib/external/lines/line-material.js +376 -0
  5. package/lib/external/lines/line-segments-2.d.ts +7 -0
  6. package/lib/external/lines/line-segments-2.js +143 -0
  7. package/lib/external/lines/line-segments-geometry.d.ts +15 -0
  8. package/lib/external/lines/line-segments-geometry.js +140 -0
  9. package/lib/external/loaders/gltf-loader.d.ts +77 -0
  10. package/lib/external/loaders/gltf-loader.js +2318 -0
  11. package/lib/external/orbit-controls.d.ts +44 -0
  12. package/lib/external/orbit-controls.js +745 -0
  13. package/lib/external/renderers/css-2d-renderer.d.ts +16 -0
  14. package/lib/external/renderers/css-2d-renderer.js +121 -0
  15. package/lib/external/renderers/css-3d-renderer.d.ts +18 -0
  16. package/lib/external/renderers/css-3d-renderer.js +138 -0
  17. package/lib/external/transform-controls.d.ts +106 -0
  18. package/lib/external/transform-controls.js +1112 -0
  19. package/lib/owlly/controller/aerial-element-controller.d.ts +65 -0
  20. package/lib/owlly/controller/aerial-element-controller.js +235 -0
  21. package/lib/owlly/controller/basic-controller.d.ts +324 -0
  22. package/lib/owlly/controller/basic-controller.js +1238 -0
  23. package/lib/owlly/controller/camera-controller.d.ts +37 -0
  24. package/lib/owlly/controller/camera-controller.js +137 -0
  25. package/lib/owlly/controller/controller.d.ts +61 -0
  26. package/lib/owlly/controller/controller.js +23 -0
  27. package/lib/owlly/controller/index.d.ts +2 -0
  28. package/lib/owlly/controller/index.js +13 -0
  29. package/lib/owlly/controller/mouse-indicator-controller.d.ts +34 -0
  30. package/lib/owlly/controller/mouse-indicator-controller.js +118 -0
  31. package/lib/owlly/controller/orbit-control.d.ts +147 -0
  32. package/lib/owlly/controller/orbit-control.js +264 -0
  33. package/lib/owlly/controller/panorama-adjust-controller.d.ts +45 -0
  34. package/lib/owlly/controller/panorama-adjust-controller.js +157 -0
  35. package/lib/owlly/controller/panorama-controller.d.ts +441 -0
  36. package/lib/owlly/controller/panorama-controller.js +1943 -0
  37. package/lib/owlly/controller/panorama-transform-controller.d.ts +66 -0
  38. package/lib/owlly/controller/panorama-transform-controller.js +136 -0
  39. package/lib/owlly/controller/plane-controller.d.ts +43 -0
  40. package/lib/owlly/controller/plane-controller.js +173 -0
  41. package/lib/owlly/controller/texture-controller.d.ts +181 -0
  42. package/lib/owlly/controller/texture-controller.js +875 -0
  43. package/lib/owlly/controller/tile-panorama-controller.d.ts +308 -0
  44. package/lib/owlly/controller/tile-panorama-controller.js +1353 -0
  45. package/lib/owlly/controller/transform-controller.d.ts +106 -0
  46. package/lib/owlly/controller/transform-controller.js +545 -0
  47. package/lib/owlly/element/bottom-nav-element.d.ts +65 -0
  48. package/lib/owlly/element/bottom-nav-element.js +257 -0
  49. package/lib/owlly/element/camera.d.ts +82 -0
  50. package/lib/owlly/element/camera.js +283 -0
  51. package/lib/owlly/element/dom-2d-element.d.ts +35 -0
  52. package/lib/owlly/element/dom-2d-element.js +48 -0
  53. package/lib/owlly/element/dom-3d-element.d.ts +27 -0
  54. package/lib/owlly/element/dom-3d-element.js +33 -0
  55. package/lib/owlly/element/dom-label-2d.d.ts +116 -0
  56. package/lib/owlly/element/dom-label-2d.js +382 -0
  57. package/lib/owlly/element/element.d.ts +53 -0
  58. package/lib/owlly/element/element.js +75 -0
  59. package/lib/owlly/element/floor-model.d.ts +83 -0
  60. package/lib/owlly/element/floor-model.js +227 -0
  61. package/lib/owlly/element/gif-kit/Gif.d.ts +96 -0
  62. package/lib/owlly/element/gif-kit/Gif.js +432 -0
  63. package/lib/owlly/element/gif-kit/GifColor.d.ts +21 -0
  64. package/lib/owlly/element/gif-kit/GifColor.js +37 -0
  65. package/lib/owlly/element/gif-kit/GifCompressedCodesToByteArrayConverter.d.ts +20 -0
  66. package/lib/owlly/element/gif-kit/GifCompressedCodesToByteArrayConverter.js +50 -0
  67. package/lib/owlly/element/gif-kit/GifFrame.d.ts +31 -0
  68. package/lib/owlly/element/gif-kit/GifFrame.js +96 -0
  69. package/lib/owlly/element/gif-kit/GifImage.d.ts +23 -0
  70. package/lib/owlly/element/gif-kit/GifImage.js +7 -0
  71. package/lib/owlly/element/gif-kit/GifParser.d.ts +17 -0
  72. package/lib/owlly/element/gif-kit/GifParser.js +196 -0
  73. package/lib/owlly/element/gif-kit/GifPresenter.d.ts +20 -0
  74. package/lib/owlly/element/gif-kit/GifPresenter.js +43 -0
  75. package/lib/owlly/element/gif-kit/GifVersion.d.ts +10 -0
  76. package/lib/owlly/element/gif-kit/GifVersion.js +12 -0
  77. package/lib/owlly/element/gltf-mesh-element.d.ts +31 -0
  78. package/lib/owlly/element/gltf-mesh-element.js +136 -0
  79. package/lib/owlly/element/index.d.ts +20 -0
  80. package/lib/owlly/element/index.js +24 -0
  81. package/lib/owlly/element/map-kit/shape.d.ts +131 -0
  82. package/lib/owlly/element/map-kit/shape.js +189 -0
  83. package/lib/owlly/element/mesh-element.d.ts +22 -0
  84. package/lib/owlly/element/mesh-element.js +63 -0
  85. package/lib/owlly/element/mesh-line-2d.d.ts +82 -0
  86. package/lib/owlly/element/mesh-line-2d.js +887 -0
  87. package/lib/owlly/element/meshline-o.d.ts +64 -0
  88. package/lib/owlly/element/meshline-o.js +678 -0
  89. package/lib/owlly/element/panorama-group.d.ts +241 -0
  90. package/lib/owlly/element/panorama-group.js +966 -0
  91. package/lib/owlly/element/panorama.d.ts +132 -0
  92. package/lib/owlly/element/panorama.js +812 -0
  93. package/lib/owlly/element/path-group.d.ts +69 -0
  94. package/lib/owlly/element/path-group.js +171 -0
  95. package/lib/owlly/element/path.d.ts +99 -0
  96. package/lib/owlly/element/path.js +531 -0
  97. package/lib/owlly/element/placeable-2d.d.ts +158 -0
  98. package/lib/owlly/element/placeable-2d.js +470 -0
  99. package/lib/owlly/element/polygon-mesh.d.ts +107 -0
  100. package/lib/owlly/element/polygon-mesh.js +307 -0
  101. package/lib/owlly/element/ring-element.d.ts +79 -0
  102. package/lib/owlly/element/ring-element.js +383 -0
  103. package/lib/owlly/element/sphere-mesh.d.ts +28 -0
  104. package/lib/owlly/element/sphere-mesh.js +69 -0
  105. package/lib/owlly/element/svg-floor-model.d.ts +22 -0
  106. package/lib/owlly/element/svg-floor-model.js +184 -0
  107. package/lib/owlly/element/svg-floors.d.ts +27 -0
  108. package/lib/owlly/element/svg-floors.js +109 -0
  109. package/lib/owlly/element/tile-panorama-group.d.ts +335 -0
  110. package/lib/owlly/element/tile-panorama-group.js +1006 -0
  111. package/lib/owlly/element/tile-panorama.d.ts +161 -0
  112. package/lib/owlly/element/tile-panorama.js +509 -0
  113. package/lib/owlly/element/tile-plane.d.ts +105 -0
  114. package/lib/owlly/element/tile-plane.js +360 -0
  115. package/lib/owlly/element/video-element.d.ts +33 -0
  116. package/lib/owlly/element/video-element.js +159 -0
  117. package/lib/owlly/geometries/ExtrudeGeometry2.d.ts +15 -0
  118. package/lib/owlly/geometries/ExtrudeGeometry2.js +210 -0
  119. package/lib/owlly/index.d.ts +13 -0
  120. package/lib/owlly/index.js +16 -0
  121. package/lib/owlly/overlay/canvas-overlay.d.ts +96 -0
  122. package/lib/owlly/overlay/canvas-overlay.js +510 -0
  123. package/lib/owlly/overlay/css-2d-overlay.d.ts +14 -0
  124. package/lib/owlly/overlay/css-2d-overlay.js +35 -0
  125. package/lib/owlly/overlay/css-3d-overlay.d.ts +16 -0
  126. package/lib/owlly/overlay/css-3d-overlay.js +36 -0
  127. package/lib/owlly/overlay/index.d.ts +6 -0
  128. package/lib/owlly/overlay/index.js +11 -0
  129. package/lib/owlly/overlay/label-overlay.d.ts +62 -0
  130. package/lib/owlly/overlay/label-overlay.js +328 -0
  131. package/lib/owlly/overlay/overlay.d.ts +14 -0
  132. package/lib/owlly/overlay/overlay.js +4 -0
  133. package/lib/owlly/overlay/path-overlay.d.ts +39 -0
  134. package/lib/owlly/overlay/path-overlay.js +124 -0
  135. package/lib/owlly/overlay/path-overlay2.d.ts +35 -0
  136. package/lib/owlly/overlay/path-overlay2.js +118 -0
  137. package/lib/owlly/overlay/poi-overlay-3d.d.ts +278 -0
  138. package/lib/owlly/overlay/poi-overlay-3d.js +1432 -0
  139. package/lib/owlly/overlay/poi-overlay.d.ts +277 -0
  140. package/lib/owlly/overlay/poi-overlay.js +1411 -0
  141. package/lib/owlly/owlly-2d/index.d.ts +28 -0
  142. package/lib/owlly/owlly-2d/index.js +92 -0
  143. package/lib/owlly/screen/index.d.ts +1 -0
  144. package/lib/owlly/screen/index.js +1 -0
  145. package/lib/owlly/screen/screen.d.ts +73 -0
  146. package/lib/owlly/screen/screen.js +236 -0
  147. package/lib/owlly/stage/externals.d.ts +19 -0
  148. package/lib/owlly/stage/externals.js +24 -0
  149. package/lib/owlly/stage/index.d.ts +4 -0
  150. package/lib/owlly/stage/index.js +6 -0
  151. package/lib/owlly/stage/owlly.d.ts +38 -0
  152. package/lib/owlly/stage/owlly.js +168 -0
  153. package/lib/owlly/stage/stage.d.ts +108 -0
  154. package/lib/owlly/stage/stage.js +234 -0
  155. package/lib/owlly/utils/alignment-utils.d.ts +20 -0
  156. package/lib/owlly/utils/alignment-utils.js +63 -0
  157. package/lib/owlly/utils/basic-calc.d.ts +18 -0
  158. package/lib/owlly/utils/basic-calc.js +129 -0
  159. package/lib/owlly/utils/basic-tools.d.ts +71 -0
  160. package/lib/owlly/utils/basic-tools.js +235 -0
  161. package/lib/owlly/utils/bvh-tree.d.ts +105 -0
  162. package/lib/owlly/utils/bvh-tree.js +539 -0
  163. package/lib/owlly/utils/camera.d.ts +37 -0
  164. package/lib/owlly/utils/camera.js +50 -0
  165. package/lib/owlly/utils/cube-texture-cache.d.ts +25 -0
  166. package/lib/owlly/utils/cube-texture-cache.js +143 -0
  167. package/lib/owlly/utils/device-utils.d.ts +18 -0
  168. package/lib/owlly/utils/device-utils.js +41 -0
  169. package/lib/owlly/utils/environment-utils.d.ts +37 -0
  170. package/lib/owlly/utils/environment-utils.js +73 -0
  171. package/lib/owlly/utils/event-hub.d.ts +50 -0
  172. package/lib/owlly/utils/event-hub.js +106 -0
  173. package/lib/owlly/utils/events.d.ts +219 -0
  174. package/lib/owlly/utils/events.js +219 -0
  175. package/lib/owlly/utils/geometry-utils.d.ts +119 -0
  176. package/lib/owlly/utils/geometry-utils.js +622 -0
  177. package/lib/owlly/utils/helper.d.ts +6 -0
  178. package/lib/owlly/utils/helper.js +24 -0
  179. package/lib/owlly/utils/index.d.ts +14 -0
  180. package/lib/owlly/utils/index.js +17 -0
  181. package/lib/owlly/utils/lru-cache.d.ts +26 -0
  182. package/lib/owlly/utils/lru-cache.js +109 -0
  183. package/lib/owlly/utils/map-utils.d.ts +7 -0
  184. package/lib/owlly/utils/map-utils.js +52 -0
  185. package/lib/owlly/utils/number-utils.d.ts +8 -0
  186. package/lib/owlly/utils/number-utils.js +72 -0
  187. package/lib/owlly/utils/panorama-model-util.d.ts +46 -0
  188. package/lib/owlly/utils/panorama-model-util.js +245 -0
  189. package/lib/owlly/utils/path-utils.d.ts +80 -0
  190. package/lib/owlly/utils/path-utils.js +728 -0
  191. package/lib/owlly/utils/svgutils.d.ts +138 -0
  192. package/lib/owlly/utils/svgutils.js +561 -0
  193. package/lib/owlly/utils/texture-cache.d.ts +29 -0
  194. package/lib/owlly/utils/texture-cache.js +115 -0
  195. package/lib/owlly/utils/tile-util.d.ts +187 -0
  196. package/lib/owlly/utils/tile-util.js +456 -0
  197. package/lib/owlly/utils/time-profiler.d.ts +21 -0
  198. package/lib/owlly/utils/time-profiler.js +48 -0
  199. package/lib/owlly/view/camera-view.d.ts +35 -0
  200. package/lib/owlly/view/camera-view.js +101 -0
  201. package/lib/owlly/view/index.d.ts +3 -0
  202. package/lib/owlly/view/index.js +5 -0
  203. package/lib/owlly/view/orthographic-view.d.ts +40 -0
  204. package/lib/owlly/view/orthographic-view.js +94 -0
  205. package/lib/owlly/view/perspective-view.d.ts +40 -0
  206. package/lib/owlly/view/perspective-view.js +95 -0
  207. package/lib/owlly/view/svg-map-view.d.ts +46 -0
  208. package/lib/owlly/view/svg-map-view.js +144 -0
  209. package/lib/owlly/view/view.d.ts +146 -0
  210. package/lib/owlly/view/view.js +317 -0
  211. package/lib/prod/owlly.esm.js +93462 -0
  212. package/lib/prod/owlly.esm.js.map +1 -0
  213. package/lib/prod/owlly.esm.min.js +54 -0
  214. package/lib/prod/owlly.iife.js +93560 -0
  215. package/lib/prod/owlly.iife.js.map +1 -0
  216. package/lib/prod/owlly.iife.min.js +69 -0
  217. package/lib/prod/owlly.miniapp.js +73845 -0
  218. package/lib/prod/owlly.miniapp.js.map +1 -0
  219. package/lib/prod/owlly.miniapp.min.js +63 -0
  220. package/lib/prod/src/external/lines/line-geometry.d.ts +9 -0
  221. package/lib/prod/src/external/lines/line-material.d.ts +10 -0
  222. package/lib/prod/src/external/lines/line-segments-2.d.ts +7 -0
  223. package/lib/prod/src/external/lines/line-segments-geometry.d.ts +15 -0
  224. package/lib/prod/src/external/loaders/gltf-loader.d.ts +77 -0
  225. package/lib/prod/src/external/orbit-controls.d.ts +44 -0
  226. package/lib/prod/src/external/renderers/css-2d-renderer.d.ts +16 -0
  227. package/lib/prod/src/external/renderers/css-3d-renderer.d.ts +18 -0
  228. package/lib/prod/src/external/transform-controls.d.ts +106 -0
  229. package/lib/prod/src/external/util/buffer-geometry-utils.d.ts +45 -0
  230. package/lib/prod/src/owlly/controller/aerial-element-controller.d.ts +65 -0
  231. package/lib/prod/src/owlly/controller/basic-controller.d.ts +324 -0
  232. package/lib/prod/src/owlly/controller/camera-controller.d.ts +37 -0
  233. package/lib/prod/src/owlly/controller/controller.d.ts +61 -0
  234. package/lib/prod/src/owlly/controller/index.d.ts +2 -0
  235. package/lib/prod/src/owlly/controller/mouse-indicator-controller.d.ts +34 -0
  236. package/lib/prod/src/owlly/controller/orbit-control.d.ts +147 -0
  237. package/lib/prod/src/owlly/controller/panorama-adjust-controller.d.ts +45 -0
  238. package/lib/prod/src/owlly/controller/panorama-controller.d.ts +441 -0
  239. package/lib/prod/src/owlly/controller/panorama-transform-controller.d.ts +66 -0
  240. package/lib/prod/src/owlly/controller/plane-controller.d.ts +43 -0
  241. package/lib/prod/src/owlly/controller/texture-controller.d.ts +183 -0
  242. package/lib/prod/src/owlly/controller/tile-panorama-controller.d.ts +308 -0
  243. package/lib/prod/src/owlly/controller/transform-controller.d.ts +106 -0
  244. package/lib/prod/src/owlly/element/bottom-nav-element.d.ts +65 -0
  245. package/lib/prod/src/owlly/element/camera.d.ts +82 -0
  246. package/lib/prod/src/owlly/element/dom-2d-element.d.ts +35 -0
  247. package/lib/prod/src/owlly/element/dom-3d-element.d.ts +27 -0
  248. package/lib/prod/src/owlly/element/dom-label-2d.d.ts +116 -0
  249. package/lib/prod/src/owlly/element/element.d.ts +53 -0
  250. package/lib/prod/src/owlly/element/floor-model.d.ts +83 -0
  251. package/lib/prod/src/owlly/element/gif-kit/Gif.d.ts +96 -0
  252. package/lib/prod/src/owlly/element/gif-kit/GifColor.d.ts +21 -0
  253. package/lib/prod/src/owlly/element/gif-kit/GifCompressedCodesToByteArrayConverter.d.ts +20 -0
  254. package/lib/prod/src/owlly/element/gif-kit/GifFrame.d.ts +31 -0
  255. package/lib/prod/src/owlly/element/gif-kit/GifImage.d.ts +23 -0
  256. package/lib/prod/src/owlly/element/gif-kit/GifParser.d.ts +17 -0
  257. package/lib/prod/src/owlly/element/gif-kit/GifPresenter.d.ts +20 -0
  258. package/lib/prod/src/owlly/element/gif-kit/GifVersion.d.ts +10 -0
  259. package/lib/prod/src/owlly/element/gltf-mesh-element.d.ts +31 -0
  260. package/lib/prod/src/owlly/element/index.d.ts +6 -0
  261. package/lib/prod/src/owlly/element/map-kit/area.d.ts +24 -0
  262. package/lib/prod/src/owlly/element/map-kit/block-set.d.ts +39 -0
  263. package/lib/prod/src/owlly/element/map-kit/block.d.ts +77 -0
  264. package/lib/prod/src/owlly/element/map-kit/index.d.ts +3 -0
  265. package/lib/prod/src/owlly/element/map-kit/shape.d.ts +131 -0
  266. package/lib/prod/src/owlly/element/mesh-element.d.ts +22 -0
  267. package/lib/prod/src/owlly/element/mesh-line-2d.d.ts +82 -0
  268. package/lib/prod/src/owlly/element/meshline-o.d.ts +64 -0
  269. package/lib/prod/src/owlly/element/panorama-group.d.ts +241 -0
  270. package/lib/prod/src/owlly/element/panorama.d.ts +132 -0
  271. package/lib/prod/src/owlly/element/path-group.d.ts +69 -0
  272. package/lib/prod/src/owlly/element/path.d.ts +99 -0
  273. package/lib/prod/src/owlly/element/placeable-2d.d.ts +158 -0
  274. package/lib/prod/src/owlly/element/polygon-mesh.d.ts +107 -0
  275. package/lib/prod/src/owlly/element/ring-element.d.ts +79 -0
  276. package/lib/prod/src/owlly/element/sphere-mesh.d.ts +28 -0
  277. package/lib/prod/src/owlly/element/svg-floor-model.d.ts +22 -0
  278. package/lib/prod/src/owlly/element/svg-floors.d.ts +27 -0
  279. package/lib/prod/src/owlly/element/tile-panorama-group.d.ts +335 -0
  280. package/lib/prod/src/owlly/element/tile-panorama.d.ts +162 -0
  281. package/lib/prod/src/owlly/element/tile-plane.d.ts +114 -0
  282. package/lib/prod/src/owlly/element/video-element.d.ts +33 -0
  283. package/lib/prod/src/owlly/geometries/ExtrudeGeometry2.d.ts +15 -0
  284. package/lib/prod/src/owlly/index.d.ts +13 -0
  285. package/lib/prod/src/owlly/overlay/canvas-overlay.d.ts +96 -0
  286. package/lib/prod/src/owlly/overlay/css-2d-overlay.d.ts +14 -0
  287. package/lib/prod/src/owlly/overlay/css-3d-overlay.d.ts +16 -0
  288. package/lib/prod/src/owlly/overlay/index.d.ts +5 -0
  289. package/lib/prod/src/owlly/overlay/label-overlay.d.ts +62 -0
  290. package/lib/prod/src/owlly/overlay/overlay.d.ts +14 -0
  291. package/lib/prod/src/owlly/overlay/path-overlay.d.ts +39 -0
  292. package/lib/prod/src/owlly/overlay/path-overlay2.d.ts +35 -0
  293. package/lib/prod/src/owlly/overlay/poi-overlay-3d.d.ts +278 -0
  294. package/lib/prod/src/owlly/overlay/poi-overlay.d.ts +277 -0
  295. package/lib/prod/src/owlly/owlly-2d/index.d.ts +28 -0
  296. package/lib/prod/src/owlly/screen/index.d.ts +1 -0
  297. package/lib/prod/src/owlly/screen/screen.d.ts +73 -0
  298. package/lib/prod/src/owlly/stage/__test__/stage.spec.d.ts +1 -0
  299. package/lib/prod/src/owlly/stage/externals.d.ts +19 -0
  300. package/lib/prod/src/owlly/stage/index.d.ts +3 -0
  301. package/lib/prod/src/owlly/stage/owlly.d.ts +38 -0
  302. package/lib/prod/src/owlly/stage/stage.d.ts +108 -0
  303. package/lib/prod/src/owlly/utils/alignment-utils.d.ts +20 -0
  304. package/lib/prod/src/owlly/utils/basic-calc.d.ts +18 -0
  305. package/lib/prod/src/owlly/utils/basic-tools.d.ts +71 -0
  306. package/lib/prod/src/owlly/utils/bvh-tree.d.ts +105 -0
  307. package/lib/prod/src/owlly/utils/camera.d.ts +37 -0
  308. package/lib/prod/src/owlly/utils/cube-texture-cache.d.ts +25 -0
  309. package/lib/prod/src/owlly/utils/device-utils.d.ts +18 -0
  310. package/lib/prod/src/owlly/utils/environment-utils.d.ts +37 -0
  311. package/lib/prod/src/owlly/utils/event-hub.d.ts +50 -0
  312. package/lib/prod/src/owlly/utils/events.d.ts +219 -0
  313. package/lib/prod/src/owlly/utils/geometry-utils.d.ts +119 -0
  314. package/lib/prod/src/owlly/utils/helper.d.ts +6 -0
  315. package/lib/prod/src/owlly/utils/index.d.ts +13 -0
  316. package/lib/prod/src/owlly/utils/lru-cache.d.ts +26 -0
  317. package/lib/prod/src/owlly/utils/map-utils.d.ts +7 -0
  318. package/lib/prod/src/owlly/utils/number-utils.d.ts +8 -0
  319. package/lib/prod/src/owlly/utils/panorama-model-util.d.ts +46 -0
  320. package/lib/prod/src/owlly/utils/path-utils.d.ts +80 -0
  321. package/lib/prod/src/owlly/utils/svgutils.d.ts +138 -0
  322. package/lib/prod/src/owlly/utils/texture-cache.d.ts +29 -0
  323. package/lib/prod/src/owlly/utils/tile-util.d.ts +187 -0
  324. package/lib/prod/src/owlly/utils/time-profiler.d.ts +21 -0
  325. package/lib/prod/src/owlly/view/__test__/perspective-view.spec.d.ts +0 -0
  326. package/lib/prod/src/owlly/view/camera-view.d.ts +35 -0
  327. package/lib/prod/src/owlly/view/index.d.ts +3 -0
  328. package/lib/prod/src/owlly/view/orthographic-view.d.ts +40 -0
  329. package/lib/prod/src/owlly/view/perspective-view.d.ts +40 -0
  330. package/lib/prod/src/owlly/view/svg-map-view.d.ts +46 -0
  331. package/lib/prod/src/owlly/view/view.d.ts +146 -0
  332. package/lib/src/owlly/controller/texture-controller.d.ts +3 -1
  333. package/lib/src/owlly/controller/texture-controller.js +16 -1
  334. package/lib/src/owlly/controller/texture-controller.js.map +1 -1
  335. package/lib/src/owlly/controller/tile-panorama-controller.js +4 -0
  336. package/lib/src/owlly/controller/tile-panorama-controller.js.map +1 -1
  337. package/lib/src/owlly/element/tile-panorama.d.ts +1 -0
  338. package/lib/src/owlly/element/tile-panorama.js +16 -3
  339. package/lib/src/owlly/element/tile-panorama.js.map +1 -1
  340. package/lib/src/owlly/element/tile-plane.d.ts +9 -0
  341. package/lib/src/owlly/element/tile-plane.js +27 -0
  342. package/lib/src/owlly/element/tile-plane.js.map +1 -1
  343. package/lib/src/owlly/overlay/poi-overlay-3d.js.map +1 -1
  344. package/lib/src/owlly/overlay/poi-overlay.js.map +1 -1
  345. package/lib/src/owlly/stage/owlly.js +7 -1
  346. package/lib/src/owlly/stage/owlly.js.map +1 -1
  347. package/lib/src/owlly/stage/stage.js +2 -0
  348. package/lib/src/owlly/stage/stage.js.map +1 -1
  349. package/lib/src/web/main.rpeng.mes.plane.js.map +1 -1
  350. package/package.json +16 -7
  351. package/src/owlly/controller/texture-controller.ts +18 -1
  352. package/src/owlly/controller/tile-panorama-controller.ts +3 -1
  353. package/src/owlly/element/tile-panorama.ts +14 -0
  354. package/src/owlly/element/tile-plane.ts +26 -0
  355. package/src/owlly/overlay/poi-overlay-3d.ts +0 -4
  356. package/src/owlly/overlay/poi-overlay.ts +0 -4
  357. package/src/owlly/stage/owlly.ts +6 -1
  358. package/src/owlly/stage/stage.ts +2 -0
  359. package/src/web/main.rpeng.mes.plane.ts +0 -6
@@ -0,0 +1,26 @@
1
+ declare class LruCache<T> {
2
+ private values;
3
+ private capacity;
4
+ private totalCost;
5
+ private costCallback?;
6
+ constructor(capacity: number, costCallback?: (value: T) => number);
7
+ get(key: string, missedCallback?: {
8
+ (key: string): T | undefined;
9
+ }): T | undefined;
10
+ /**
11
+ *
12
+ * @param key
13
+ * @param value
14
+ * @param evictCallback
15
+ * @param abortIfFull
16
+ * @returns If some other item is evicted
17
+ */
18
+ put(key: string, value: T, evictCallback?: {
19
+ (key: string, value: T): void;
20
+ }, abortIfFull?: boolean | undefined): boolean;
21
+ recycle(key: string, disposeCallback?: (key: string, value: T) => void): boolean;
22
+ clear(disposeCallback: (key: string, value: T) => void): void;
23
+ getCapacity(): number;
24
+ getTotalCost(): number;
25
+ }
26
+ export { LruCache };
@@ -0,0 +1,109 @@
1
+ // <script src="https://gist.github.com/dherges/86012049be7b1263b2e594134ff5816a.js"></script>
2
+ class LruCache {
3
+ constructor(capacity, costCallback) {
4
+ this.values = new Map();
5
+ this.capacity = capacity;
6
+ this.totalCost = 0;
7
+ this.costCallback = costCallback;
8
+ }
9
+ get(key, missedCallback) {
10
+ const hasKey = this.values.has(key);
11
+ let entry;
12
+ if (hasKey) {
13
+ // peek the entry, re-insert for LRU strategy
14
+ // console.log(`#LruCache# Hit cache with key: '${key}'`);
15
+ entry = this.values.get(key);
16
+ if (entry) {
17
+ this.values.delete(key);
18
+ this.values.set(key, entry);
19
+ }
20
+ }
21
+ else if (missedCallback) {
22
+ // console.log(`#LruCache# Miss key: '${key}', will create one`);
23
+ entry = missedCallback(key);
24
+ if (entry) {
25
+ this.put(key, entry);
26
+ }
27
+ }
28
+ return entry;
29
+ }
30
+ /**
31
+ *
32
+ * @param key
33
+ * @param value
34
+ * @param evictCallback
35
+ * @param abortIfFull
36
+ * @returns If some other item is evicted
37
+ */
38
+ put(key, value, evictCallback, abortIfFull = false) {
39
+ let ret = false;
40
+ // console.log(`#LruCache# abortIfFull=${abortIfFull}`);
41
+ if (this.totalCost >= this.capacity) {
42
+ if (abortIfFull) {
43
+ // console.log(`#LruCache# abortIfFull, return. this.totalCost=${this.totalCost}, this.capacity=${this.capacity}`);
44
+ return ret;
45
+ }
46
+ // least-recently used cache eviction strategy
47
+ const keyToDelete = this.values.keys().next().value;
48
+ const recycled = this.values.get(keyToDelete);
49
+ if (recycled) {
50
+ const recycledIncome = this.costCallback === undefined ? 1 : this.costCallback(recycled);
51
+ this.totalCost -= recycledIncome;
52
+ // console.log(`#LruCache# Cost exceeds capacity, evict entry with key'${keyToDelete}', totalCost=${this.totalCost}`);
53
+ if (evictCallback) {
54
+ // console.log('#LruCache# Will call evictCallback');
55
+ evictCallback(keyToDelete, recycled);
56
+ }
57
+ this.values.delete(keyToDelete);
58
+ }
59
+ ret = true;
60
+ }
61
+ if (this.values.has(key)) {
62
+ let cost0 = 1;
63
+ const oldValue = this.values.get(key);
64
+ if (oldValue && this.costCallback) {
65
+ cost0 = this.costCallback(oldValue);
66
+ }
67
+ const cost1 = this.costCallback === undefined ? 1 : this.costCallback(value);
68
+ this.values.set(key, value);
69
+ this.totalCost += (cost1 - cost0);
70
+ // console.log(`#LruCache# Replace entry with key'${key}', totalCost=${this.totalCost}`);
71
+ }
72
+ else {
73
+ this.values.set(key, value);
74
+ const cost = this.costCallback === undefined ? 1 : this.costCallback(value);
75
+ this.totalCost += cost;
76
+ // console.log(`#LruCache# Add new entry with key'${key}', totalCost=${this.totalCost}`);
77
+ }
78
+ return ret;
79
+ }
80
+ recycle(key, disposeCallback) {
81
+ let ret = false;
82
+ const recycled = this.values.get(key);
83
+ if (recycled) {
84
+ ret = true;
85
+ const recycledIncome = this.costCallback === undefined ? 1 : this.costCallback(recycled);
86
+ this.totalCost -= recycledIncome;
87
+ // console.log(`#LruCache# Recycle entry with key'${key}', totalCost=${this.totalCost}`);
88
+ if (disposeCallback) {
89
+ // console.log('#LruCache# Will call disposeCallback');
90
+ disposeCallback(key, recycled);
91
+ }
92
+ this.values.delete(key);
93
+ }
94
+ return ret;
95
+ }
96
+ clear(disposeCallback) {
97
+ this.values.forEach((recycled, key) => {
98
+ if (recycled) {
99
+ // console.log('#LruCache# Will call disposeCallback');
100
+ disposeCallback(key, recycled);
101
+ }
102
+ });
103
+ this.totalCost = 0;
104
+ this.values.clear();
105
+ }
106
+ getCapacity() { return this.capacity; }
107
+ getTotalCost() { return this.totalCost; }
108
+ }
109
+ export { LruCache };
@@ -0,0 +1,7 @@
1
+ import { NS_THREE } from '../stage/externals';
2
+ import { PathStep } from '../element/map-kit/shape';
3
+ /** Block 专用类, 仅用于通过 Shape 生成 THREE 可用的路径格式 @ignore */
4
+ declare class MapUtils {
5
+ static GenerateShapeFromSteps(steps: PathStep[]): NS_THREE.Shape;
6
+ }
7
+ export { MapUtils };
@@ -0,0 +1,52 @@
1
+ import { Externals } from '../stage/externals';
2
+ import { PathCommand } from '../element/map-kit/shape';
3
+ /** Block 专用类, 仅用于通过 Shape 生成 THREE 可用的路径格式 @ignore */
4
+ class MapUtils {
5
+ static GenerateShapeFromSteps(steps) {
6
+ const { THREE } = Externals.getInstance();
7
+ const holes = [];
8
+ let hole = null;
9
+ let shapeCount = 0;
10
+ const result = new THREE.Shape();
11
+ steps.forEach(({ coords, command }) => {
12
+ switch (command) {
13
+ case PathCommand.MOVE:
14
+ if (coords.length !== 1)
15
+ throw new Error(`Parse path command error. Command: ${command}`);
16
+ shapeCount += 1;
17
+ if (shapeCount > 1) {
18
+ hole = new THREE.Path();
19
+ holes.push(hole);
20
+ hole.moveTo(coords[0][0], coords[0][1]);
21
+ }
22
+ else {
23
+ result.moveTo(coords[0][0], coords[0][1]);
24
+ }
25
+ break;
26
+ case PathCommand.LINE:
27
+ if (coords.length !== 1)
28
+ throw new Error(`Parse path command error. Command: ${command}`);
29
+ if (hole && shapeCount > 1)
30
+ hole.lineTo(coords[0][0], coords[0][1]);
31
+ else
32
+ result.lineTo(coords[0][0], coords[0][1]);
33
+ break;
34
+ case PathCommand.CURVE:
35
+ if (coords.length !== 3)
36
+ throw new Error(`Parse path command error. Command: ${command}`);
37
+ if (hole && shapeCount > 1) {
38
+ hole.bezierCurveTo(coords[0][0], coords[0][1], coords[1][0], coords[1][1], coords[2][0], coords[2][1]);
39
+ }
40
+ else {
41
+ result.bezierCurveTo(coords[0][0], coords[0][1], coords[1][0], coords[1][1], coords[2][0], coords[2][1]);
42
+ }
43
+ break;
44
+ default:
45
+ break;
46
+ }
47
+ });
48
+ result.holes = holes;
49
+ return result;
50
+ }
51
+ }
52
+ export { MapUtils };
@@ -0,0 +1,8 @@
1
+ declare class NumberUtils {
2
+ static mergeRange(ranges: [number, number][], tolerance?: number): [number, number][];
3
+ static rangeSub(range: [number, number], subRanges: [number, number][], tolerance?: number): [number, number][];
4
+ static nearlyEquals(a: number, b: number, tolerance?: number): boolean;
5
+ static nearlyLess(a: number, b: number, include: boolean, tolerance?: number): boolean;
6
+ static nearlyThan(a: number, b: number, include: boolean, tolerance?: number): boolean;
7
+ }
8
+ export { NumberUtils };
@@ -0,0 +1,72 @@
1
+ class NumberUtils {
2
+ static mergeRange(ranges, tolerance = 0.0001) {
3
+ const t = [];
4
+ const s = Array.from(ranges);
5
+ s.sort((a, b) => b[0] - a[0]);
6
+ let cur = s.pop();
7
+ while (cur) {
8
+ const next = s.pop();
9
+ if (next) {
10
+ if ((next[0] >= cur[0] && next[0] <= cur[1])
11
+ || NumberUtils.nearlyEquals(next[0], cur[0], tolerance)
12
+ || NumberUtils.nearlyEquals(next[0], cur[1], tolerance)) {
13
+ cur[1] = Math.max(cur[1], next[1]);
14
+ }
15
+ else {
16
+ t.push(cur);
17
+ cur = next;
18
+ }
19
+ }
20
+ else {
21
+ t.push(cur);
22
+ cur = next;
23
+ }
24
+ }
25
+ return t;
26
+ }
27
+ static rangeSub(range, subRanges, tolerance = 0.0001) {
28
+ const [start, end] = range;
29
+ const trs = [];
30
+ let tr = [];
31
+ trs.push(tr);
32
+ tr.push(start);
33
+ // eslint-disable-next-line no-param-reassign
34
+ subRanges = NumberUtils.mergeRange(subRanges, tolerance);
35
+ for (let i = 0; i < subRanges.length; i++) {
36
+ const subRange = subRanges[i];
37
+ const [subStart, subEnd] = subRange;
38
+ if (subStart <= end) {
39
+ tr.push(subStart);
40
+ tr = [];
41
+ trs.push(tr);
42
+ }
43
+ else {
44
+ break;
45
+ }
46
+ if (subEnd <= end) {
47
+ tr.push(subEnd);
48
+ }
49
+ else {
50
+ break;
51
+ }
52
+ }
53
+ if (tr.length === 1 && tr[0] < end) {
54
+ tr.push(end);
55
+ }
56
+ // const trsResult = [] as number[][];
57
+ const trsResult = trs.filter(([v1, v2]) => v2 !== undefined && !NumberUtils.nearlyEquals(v1, v2));
58
+ return trsResult;
59
+ }
60
+ static nearlyEquals(a, b, tolerance = 0.0001) {
61
+ return Math.abs(a - b) < tolerance;
62
+ }
63
+ static nearlyLess(a, b, include, tolerance = 0.0001) {
64
+ const equals = NumberUtils.nearlyEquals(a, b, tolerance);
65
+ return (include ? equals : false) || a < b;
66
+ }
67
+ static nearlyThan(a, b, include, tolerance = 0.0001) {
68
+ const equals = NumberUtils.nearlyEquals(a, b, tolerance);
69
+ return (include ? equals : false) || a > b;
70
+ }
71
+ }
72
+ export { NumberUtils };
@@ -0,0 +1,46 @@
1
+ import { NS_THREE } from '../stage/externals';
2
+ declare class PanoramaModelUtil {
3
+ /**
4
+ * 获取模型的顶点着色器
5
+ * @ignore
6
+ */
7
+ static getModelVS(): string;
8
+ /**
9
+ * 获取穿梭的定点着色器
10
+ * @ignore
11
+ */
12
+ static getInstantTranslationVS(): string;
13
+ /**
14
+ * 获得模型片源着色器
15
+ * @ignore
16
+ * @returns {string} 片源着色器代码
17
+ */
18
+ static getModelFS(): string;
19
+ /**
20
+ * debug模型顶点着色器
21
+ * @ignore
22
+ */
23
+ static debugModelVS(): string;
24
+ /**
25
+ * debug模型片源着色器
26
+ * @ignore
27
+ */
28
+ static debugModelFS(): string;
29
+ static createModelUniforms(): {
30
+ [uniform: string]: NS_THREE.IUniform;
31
+ };
32
+ /**
33
+ * @ignore
34
+ */
35
+ static createInstantTranslationUniforms(): {
36
+ [uniform: string]: NS_THREE.IUniform;
37
+ };
38
+ /**
39
+ * 获取模型网格
40
+ * @ignore
41
+ * @param e 3d对象
42
+ * @returns
43
+ */
44
+ static getModelMeshInElement(e: NS_THREE.Object3D): NS_THREE.Mesh | undefined;
45
+ }
46
+ export { PanoramaModelUtil, };
@@ -0,0 +1,245 @@
1
+ import { Externals } from '../stage/externals';
2
+ /* eslint-disable max-len */
3
+ class PanoramaModelUtil {
4
+ /**
5
+ * 获取模型的顶点着色器
6
+ * @ignore
7
+ */
8
+ static getModelVS() {
9
+ const vertexShader = `
10
+ uniform vec3 pano0Position;
11
+ uniform mat4 pano0Matrix;
12
+ uniform vec3 pano1Position;
13
+ uniform mat4 pano1Matrix;
14
+
15
+ varying vec3 vWorldPosition0;
16
+ varying vec3 vWorldPosition1;
17
+
18
+ void main() {
19
+
20
+ vec4 worldPosition = modelMatrix * vec4(position, 1.0);
21
+
22
+ vec3 positionLocalToPanoCenter0 = worldPosition.xyz - pano0Position;
23
+ vWorldPosition0 = (vec4(positionLocalToPanoCenter0, 1.0) * pano0Matrix).xyz;
24
+ vWorldPosition0.y *= -1.0;
25
+
26
+ vec3 positionLocalToPanoCenter1 = worldPosition.xyz - pano1Position;
27
+ vWorldPosition1 = (vec4(positionLocalToPanoCenter1, 1.0) * pano1Matrix).xyz;
28
+ vWorldPosition1.y *= -1.0;
29
+
30
+ gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );
31
+ }`;
32
+ return vertexShader;
33
+ }
34
+ /**
35
+ * 获取穿梭的定点着色器
36
+ * @ignore
37
+ */
38
+ static getInstantTranslationVS() {
39
+ const vertexShader = `
40
+ uniform mat4 matrixT;
41
+
42
+ uniform vec3 pano0Position;
43
+ uniform mat4 pano0Matrix;
44
+ uniform vec3 pano1Position;
45
+ uniform mat4 pano1Matrix;
46
+
47
+ varying vec3 vWorldPosition0;
48
+ varying vec3 vWorldPosition1;
49
+
50
+ void main() {
51
+
52
+ vec4 worldPosition = modelMatrix * vec4(position, 1.0);
53
+ vec4 worldPosition0 = matrixT * worldPosition;
54
+
55
+ vec3 positionLocalToPanoCenter1 = worldPosition.xyz - pano1Position;
56
+ vWorldPosition1 = (vec4(positionLocalToPanoCenter1, 1.0) * pano1Matrix).xyz;
57
+ vWorldPosition1.y *= -1.0;
58
+
59
+ vec3 positionLocalToPanoCenter0 = worldPosition0.xyz - pano0Position;
60
+ vWorldPosition0 = (vec4(positionLocalToPanoCenter0, 1.0) * pano0Matrix).xyz;
61
+ vWorldPosition0.y *= -1.0;
62
+
63
+ gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );
64
+ }`;
65
+ return vertexShader;
66
+ }
67
+ /**
68
+ * 获得模型片源着色器
69
+ * @ignore
70
+ * @returns {string} 片源着色器代码
71
+ */
72
+ static getModelFS() {
73
+ const fragmentShader = `
74
+ uniform float weight0;
75
+ uniform float weight1;
76
+
77
+ uniform samplerCube pano0Map;
78
+
79
+ uniform samplerCube pano1Map;
80
+
81
+ varying vec3 vWorldPosition0;
82
+ varying vec3 vWorldPosition1;
83
+
84
+ void main() {
85
+ vec3 cp0 = vWorldPosition0.xyz;
86
+ vec3 cp1 = vWorldPosition1.xyz;
87
+ vec4 colorFromPano0 = textureCube( pano0Map, cp0);
88
+ vec4 colorFromPano1 = textureCube( pano1Map, cp1);
89
+
90
+ vec4 colorFromPanos;
91
+ // 'colorFromPanos = mix(colorFromPano0, colorFromPano1, progress);
92
+ colorFromPanos = colorFromPano0 * weight0 + colorFromPano1 * weight1;
93
+ gl_FragColor = vec4(colorFromPanos.rgb, 1.0);
94
+ }`;
95
+ return fragmentShader;
96
+ }
97
+ /**
98
+ * debug模型顶点着色器
99
+ * @ignore
100
+ */
101
+ static debugModelVS() {
102
+ const vertexShader = `
103
+ uniform vec2 xRange;
104
+ uniform vec2 yRange;
105
+ uniform vec2 zRange;
106
+ varying vec4 vColor;
107
+
108
+ void main() {
109
+ float x = (position.x - xRange.x) / xRange.y;
110
+ float y = (position.y - yRange.x) / yRange.y;
111
+ float z = (position.z - zRange.x) / zRange.y;
112
+ vColor = vec4(x, y, z, 1.0);
113
+ gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );
114
+ }`;
115
+ return vertexShader;
116
+ }
117
+ /**
118
+ * debug模型片源着色器
119
+ * @ignore
120
+ */
121
+ static debugModelFS() {
122
+ const fragmentShader = `
123
+ varying vec4 vColor;
124
+
125
+ void main() {
126
+ gl_FragColor = vColor;
127
+ }`;
128
+ return fragmentShader;
129
+ }
130
+ static createModelUniforms() {
131
+ const { THREE } = Externals.getInstance();
132
+ const modelUniforms = {
133
+ weight0: {
134
+ type: 'f',
135
+ value: 0,
136
+ },
137
+ weight1: {
138
+ type: 'f',
139
+ value: 0,
140
+ },
141
+ // 源全景图立方体贴图
142
+ pano0Map: {
143
+ type: 't',
144
+ value: null,
145
+ },
146
+ // 源全景图位置
147
+ pano0Position: {
148
+ type: 'v3',
149
+ value: new THREE.Vector3(),
150
+ },
151
+ // 源全景图世界变换矩阵
152
+ pano0Matrix: {
153
+ type: 'm4',
154
+ value: new THREE.Matrix4(),
155
+ },
156
+ // 目标全景图立方体贴图
157
+ pano1Map: {
158
+ type: 't',
159
+ value: null,
160
+ },
161
+ // 目标全景图位置
162
+ pano1Position: {
163
+ type: 'v3',
164
+ value: new THREE.Vector3(),
165
+ },
166
+ // 目标全景图世界变换矩阵
167
+ pano1Matrix: {
168
+ type: 'm4',
169
+ value: new THREE.Matrix4(),
170
+ },
171
+ };
172
+ return modelUniforms;
173
+ }
174
+ /**
175
+ * @ignore
176
+ */
177
+ static createInstantTranslationUniforms() {
178
+ const { THREE } = Externals.getInstance();
179
+ const modelUniforms = {
180
+ weight0: {
181
+ type: 'f',
182
+ value: 0,
183
+ },
184
+ weight1: {
185
+ type: 'f',
186
+ value: 0,
187
+ },
188
+ // 源全景图立方体贴图
189
+ pano0Map: {
190
+ type: 't',
191
+ value: null,
192
+ },
193
+ pano0Position: {
194
+ type: 'v3',
195
+ value: new THREE.Vector3(),
196
+ },
197
+ // 源全景图世界变换矩阵
198
+ pano0Matrix: {
199
+ type: 'm4',
200
+ value: new THREE.Matrix4(),
201
+ },
202
+ // 目标全景图立方体贴图
203
+ pano1Map: {
204
+ type: 't',
205
+ value: null,
206
+ },
207
+ // 目标全景图位置
208
+ pano1Position: {
209
+ type: 'v3',
210
+ value: new THREE.Vector3(),
211
+ },
212
+ // 目标全景图世界变换矩阵
213
+ pano1Matrix: {
214
+ type: 'm4',
215
+ value: new THREE.Matrix4(),
216
+ },
217
+ matrixT: {
218
+ type: 'm4',
219
+ value: new THREE.Matrix4(),
220
+ },
221
+ };
222
+ return modelUniforms;
223
+ }
224
+ /**
225
+ * 获取模型网格
226
+ * @ignore
227
+ * @param e 3d对象
228
+ * @returns
229
+ */
230
+ static getModelMeshInElement(e) {
231
+ let ret;
232
+ const { THREE } = Externals.getInstance();
233
+ if (e instanceof THREE.Mesh)
234
+ return e;
235
+ if (e) {
236
+ e.traverse((obj) => {
237
+ if (obj instanceof THREE.Mesh) {
238
+ ret = obj;
239
+ }
240
+ });
241
+ }
242
+ return ret;
243
+ }
244
+ }
245
+ export { PanoramaModelUtil, };
@@ -0,0 +1,80 @@
1
+ import { NS_THREE } from '../stage/externals';
2
+ import { FloorModel, GroundParameters } from '../element/floor-model';
3
+ declare class PathUtils {
4
+ static PathMeshOffsetZ: number;
5
+ static ArrowMeshOffsetZ: number;
6
+ static getAngle(vec0: NS_THREE.Vector2, vec1: NS_THREE.Vector2): number;
7
+ /**
8
+ * 路径简化
9
+ * @param path 路径点集数组
10
+ * @param ignoreFirst 是否在简化过程中忽略第一个点
11
+ * @param smoothingOptimization 是否针对平滑对路径进行插值
12
+ * @param simplifyDistanceThreshold 简化时路径最短保留的距离, 默认为5
13
+ * @param maximumTurningDegree 简化时三点夹角认定为转弯的最大角度,默认为150
14
+ * @param smoothingDistance 平滑时使用的转角最大距离
15
+ */
16
+ static simplify(path: {
17
+ x: number;
18
+ y: number;
19
+ }[], ignoreFirst?: boolean, smoothingOptimization?: boolean, simplifyDistanceThreshold?: number, maximumTurningDegree?: number, smoothingDistance?: number): {
20
+ x: number;
21
+ y: number;
22
+ }[];
23
+ static averageStepLength(path: [number, number][]): number;
24
+ static smoothPath(path: [number, number][], threshold?: number): [number, number][];
25
+ static smoothPathBezier(path: [number, number][], bezierLength: number, segment?: number): [number, number][];
26
+ static getRenderHeight(expression: number[], x: number, y: number): number;
27
+ static getPointHash(x: number, y: number, minX: number, minY: number, dist?: number): [number, number];
28
+ /**
29
+ * @deprecated
30
+ * @param path 路径点二维坐标数组
31
+ * @param params 其它可选参数
32
+ * @param arrowImageRatio 箭头图像的宽高比,用于生成纹理坐标
33
+ * @param arrowImageURL 箭头图像URL
34
+ * @param floorModel FloorModel对象,用于计算地面高度坐标
35
+ * @param groundParams GroundParameters对象,用于计算地面高度坐标
36
+ * @param color 路劲的颜色
37
+ * 当存在groundParams时优先用它计算,忽略floorModel
38
+ */
39
+ static generatePathMesh(path: {
40
+ x: number;
41
+ y: number;
42
+ }[], params?: {
43
+ viewDistance?: number;
44
+ gradientDistance?: number;
45
+ arrowImageRatio?: number;
46
+ arrowImageURL?: string;
47
+ floorModel?: FloorModel;
48
+ groundParams?: GroundParameters;
49
+ color?: string;
50
+ dynamicPathEnabled?: boolean;
51
+ width?: number;
52
+ }): {
53
+ mesh: NS_THREE.Mesh;
54
+ arrowMeshes: {
55
+ arrowMesh: NS_THREE.Mesh;
56
+ index: number;
57
+ }[];
58
+ newPath: [number, number][];
59
+ pointMap: Map<string, Map<string, number[][]>>;
60
+ pathMinX: number;
61
+ pathMinY: number;
62
+ progressBuffer: Float32Array;
63
+ pathDistance: number[];
64
+ };
65
+ static nearlyEqualsV2(v1: NS_THREE.Vector2, v2: NS_THREE.Vector2, tolerance?: number): boolean;
66
+ static nearlyEqualsV3(v1: NS_THREE.Vector3, v2: NS_THREE.Vector3, tolerance?: number): boolean;
67
+ static mergePathSameVectorPoint3(path: NS_THREE.Vector3[], tolerance?: number): void;
68
+ static mergePathSameVectorPoint2(path: NS_THREE.Vector2[], tolerance?: number): void;
69
+ static mergeSamePoint3(path: NS_THREE.Vector3[], tolerance?: number): void;
70
+ static mergeSamePoint2(path: NS_THREE.Vector2[], tolerance?: number): void;
71
+ static splitPathByPoints(path: NS_THREE.Vector3[], closed: boolean, points: NS_THREE.Vector3[], widths: number | number[], tolerance?: number): {
72
+ paths: NS_THREE.Vector3[][];
73
+ split: boolean;
74
+ };
75
+ static invalidPath(path: NS_THREE.Vector3[]): boolean;
76
+ static getDistances(path: NS_THREE.Vector3[]): number[];
77
+ static findPointIndexByPath(path: NS_THREE.Vector3[], point: NS_THREE.Vector3, tolerance?: number): number[];
78
+ static pointInLine(point: NS_THREE.Vector3, lineP1: NS_THREE.Vector3, lineP2: NS_THREE.Vector3, tolerance?: number): boolean;
79
+ }
80
+ export { PathUtils };