@loaders.gl/tiles 5.0.0-alpha.12 → 5.0.0-alpha.13

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 (716) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +18 -72
  3. package/dist/dist.dev.js +6979 -42928
  4. package/dist/dist.min.js +3 -22
  5. package/dist/image-set.d.ts +1 -1
  6. package/dist/image-set.d.ts.map +1 -1
  7. package/dist/index.cjs +2847 -8781
  8. package/dist/index.cjs.map +3 -4
  9. package/dist/index.d.ts +4 -45
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.js +3 -27
  12. package/dist/index.js.map +1 -1
  13. package/dist/mlt/bundled.d.ts +3 -0
  14. package/dist/mlt/bundled.d.ts.map +1 -0
  15. package/dist/mlt/bundled.js +5 -0
  16. package/dist/mlt/bundled.js.map +1 -0
  17. package/dist/mlt/index.cjs +3701 -0
  18. package/dist/mlt/index.cjs.map +6 -0
  19. package/dist/mlt/index.d.ts +10 -0
  20. package/dist/mlt/index.d.ts.map +1 -0
  21. package/dist/mlt/index.js +12 -0
  22. package/dist/mlt/index.js.map +1 -0
  23. package/dist/mlt/lib/encode-mlt-geometry.d.ts +6 -0
  24. package/dist/mlt/lib/encode-mlt-geometry.d.ts.map +1 -0
  25. package/dist/mlt/lib/encode-mlt-geometry.js +150 -0
  26. package/dist/mlt/lib/encode-mlt-geometry.js.map +1 -0
  27. package/dist/mlt/lib/encode-mlt-streams.d.ts +13 -0
  28. package/dist/mlt/lib/encode-mlt-streams.d.ts.map +1 -0
  29. package/dist/mlt/lib/encode-mlt-streams.js +57 -0
  30. package/dist/mlt/lib/encode-mlt-streams.js.map +1 -0
  31. package/dist/mlt/lib/encode-mlt.d.ts +6 -0
  32. package/dist/mlt/lib/encode-mlt.d.ts.map +1 -0
  33. package/dist/mlt/lib/encode-mlt.js +174 -0
  34. package/dist/mlt/lib/encode-mlt.js.map +1 -0
  35. package/dist/mlt/lib/parse-mlt.d.ts +11 -0
  36. package/dist/mlt/lib/parse-mlt.d.ts.map +1 -0
  37. package/dist/mlt/lib/parse-mlt.js +675 -0
  38. package/dist/mlt/lib/parse-mlt.js.map +1 -0
  39. package/dist/mlt/mlt-format.d.ts +14 -0
  40. package/dist/mlt/mlt-format.d.ts.map +1 -0
  41. package/dist/mlt/mlt-format.js +17 -0
  42. package/dist/mlt/mlt-format.js.map +1 -0
  43. package/dist/mlt/mlt-loader-with-parser.d.ts +91 -0
  44. package/dist/mlt/mlt-loader-with-parser.d.ts.map +1 -0
  45. package/dist/mlt/mlt-loader-with-parser.js +29 -0
  46. package/dist/mlt/mlt-loader-with-parser.js.map +1 -0
  47. package/dist/mlt/mlt-loader.d.ts +115 -0
  48. package/dist/mlt/mlt-loader.d.ts.map +1 -0
  49. package/dist/mlt/mlt-loader.js +38 -0
  50. package/dist/mlt/mlt-loader.js.map +1 -0
  51. package/dist/mlt/mlt-source-loader.d.ts +82 -0
  52. package/dist/mlt/mlt-source-loader.d.ts.map +1 -0
  53. package/dist/mlt/mlt-source-loader.js +179 -0
  54. package/dist/mlt/mlt-source-loader.js.map +1 -0
  55. package/dist/mlt/mlt-writer.d.ts +45 -0
  56. package/dist/mlt/mlt-writer.d.ts.map +1 -0
  57. package/dist/mlt/mlt-writer.js +21 -0
  58. package/dist/mlt/mlt-writer.js.map +1 -0
  59. package/dist/mlt/unbundled.d.ts +3 -0
  60. package/dist/mlt/unbundled.d.ts.map +1 -0
  61. package/dist/mlt/unbundled.js +5 -0
  62. package/dist/mlt/unbundled.js.map +1 -0
  63. package/dist/mvt/arrow-table-tile-source-loader-types.d.ts +36 -0
  64. package/dist/mvt/arrow-table-tile-source-loader-types.d.ts.map +1 -0
  65. package/dist/mvt/arrow-table-tile-source-loader-types.js +36 -0
  66. package/dist/mvt/arrow-table-tile-source-loader-types.js.map +1 -0
  67. package/dist/mvt/arrow-table-tile-source-loader.cjs +6343 -0
  68. package/dist/mvt/arrow-table-tile-source-loader.cjs.map +6 -0
  69. package/dist/mvt/arrow-table-tile-source-loader.d.ts +69 -0
  70. package/dist/mvt/arrow-table-tile-source-loader.d.ts.map +1 -0
  71. package/dist/mvt/arrow-table-tile-source-loader.js +216 -0
  72. package/dist/mvt/arrow-table-tile-source-loader.js.map +1 -0
  73. package/dist/mvt/arrow-table-tile-source-types.d.ts +21 -0
  74. package/dist/mvt/arrow-table-tile-source-types.d.ts.map +1 -0
  75. package/dist/mvt/arrow-table-tile-source-types.js +6 -0
  76. package/dist/mvt/arrow-table-tile-source-types.js.map +1 -0
  77. package/dist/mvt/bundled.d.ts +6 -0
  78. package/dist/mvt/bundled.d.ts.map +1 -0
  79. package/dist/mvt/bundled.js +7 -0
  80. package/dist/mvt/bundled.js.map +1 -0
  81. package/dist/mvt/dist.dev.js +46689 -0
  82. package/dist/mvt/dist.min.js +94 -0
  83. package/dist/mvt/index.cjs +10095 -0
  84. package/dist/mvt/index.cjs.map +6 -0
  85. package/dist/mvt/index.d.ts +28 -0
  86. package/dist/mvt/index.d.ts.map +1 -0
  87. package/dist/mvt/index.js +27 -0
  88. package/dist/mvt/index.js.map +1 -0
  89. package/dist/mvt/lib/encode-mvt-arrow.d.ts +6 -0
  90. package/dist/mvt/lib/encode-mvt-arrow.d.ts.map +1 -0
  91. package/dist/mvt/lib/encode-mvt-arrow.js +225 -0
  92. package/dist/mvt/lib/encode-mvt-arrow.js.map +1 -0
  93. package/dist/mvt/lib/encode-mvt.d.ts +30 -0
  94. package/dist/mvt/lib/encode-mvt.d.ts.map +1 -0
  95. package/dist/mvt/lib/encode-mvt.js +20 -0
  96. package/dist/mvt/lib/encode-mvt.js.map +1 -0
  97. package/dist/mvt/lib/get-schemas-from-tilejson.d.ts +4 -0
  98. package/dist/mvt/lib/get-schemas-from-tilejson.d.ts.map +1 -0
  99. package/dist/mvt/lib/get-schemas-from-tilejson.js +56 -0
  100. package/dist/mvt/lib/get-schemas-from-tilejson.js.map +1 -0
  101. package/dist/mvt/lib/is-longitude-latitude-crs.d.ts +3 -0
  102. package/dist/mvt/lib/is-longitude-latitude-crs.d.ts.map +1 -0
  103. package/dist/mvt/lib/is-longitude-latitude-crs.js +13 -0
  104. package/dist/mvt/lib/is-longitude-latitude-crs.js.map +1 -0
  105. package/dist/mvt/lib/mapbox-vt-pbf/geojson-wrapper.d.ts +25 -0
  106. package/dist/mvt/lib/mapbox-vt-pbf/geojson-wrapper.d.ts.map +1 -0
  107. package/dist/mvt/lib/mapbox-vt-pbf/geojson-wrapper.js +73 -0
  108. package/dist/mvt/lib/mapbox-vt-pbf/geojson-wrapper.js.map +1 -0
  109. package/dist/mvt/lib/mapbox-vt-pbf/to-vector-tile.d.ts +52 -0
  110. package/dist/mvt/lib/mapbox-vt-pbf/to-vector-tile.d.ts.map +1 -0
  111. package/dist/mvt/lib/mapbox-vt-pbf/to-vector-tile.js +165 -0
  112. package/dist/mvt/lib/mapbox-vt-pbf/to-vector-tile.js.map +1 -0
  113. package/dist/mvt/lib/mvt-pbf/mvt-constants.d.ts +116 -0
  114. package/dist/mvt/lib/mvt-pbf/mvt-constants.d.ts.map +1 -0
  115. package/dist/mvt/lib/mvt-pbf/mvt-constants.js +127 -0
  116. package/dist/mvt/lib/mvt-pbf/mvt-constants.js.map +1 -0
  117. package/dist/mvt/lib/mvt-pbf/mvt-types.d.ts +17 -0
  118. package/dist/mvt/lib/mvt-pbf/mvt-types.d.ts.map +1 -0
  119. package/dist/mvt/lib/mvt-pbf/mvt-types.js +5 -0
  120. package/dist/mvt/lib/mvt-pbf/mvt-types.js.map +1 -0
  121. package/dist/mvt/lib/mvt-pbf/parse-geometry-from-pbf.d.ts +77 -0
  122. package/dist/mvt/lib/mvt-pbf/parse-geometry-from-pbf.d.ts.map +1 -0
  123. package/dist/mvt/lib/mvt-pbf/parse-geometry-from-pbf.js +235 -0
  124. package/dist/mvt/lib/mvt-pbf/parse-geometry-from-pbf.js.map +1 -0
  125. package/dist/mvt/lib/mvt-pbf/parse-mvt-from-pbf.d.ts +25 -0
  126. package/dist/mvt/lib/mvt-pbf/parse-mvt-from-pbf.d.ts.map +1 -0
  127. package/dist/mvt/lib/mvt-pbf/parse-mvt-from-pbf.js +263 -0
  128. package/dist/mvt/lib/mvt-pbf/parse-mvt-from-pbf.js.map +1 -0
  129. package/dist/mvt/lib/mvt-pbf/write-mvt-to-pbf.d.ts +4 -0
  130. package/dist/mvt/lib/mvt-pbf/write-mvt-to-pbf.d.ts.map +1 -0
  131. package/dist/mvt/lib/mvt-pbf/write-mvt-to-pbf.js +134 -0
  132. package/dist/mvt/lib/mvt-pbf/write-mvt-to-pbf.js.map +1 -0
  133. package/dist/mvt/lib/mvt-worker-transport.d.ts +15 -0
  134. package/dist/mvt/lib/mvt-worker-transport.d.ts.map +1 -0
  135. package/dist/mvt/lib/mvt-worker-transport.js +54 -0
  136. package/dist/mvt/lib/mvt-worker-transport.js.map +1 -0
  137. package/dist/mvt/lib/parse-mvt-geojson.d.ts +6 -0
  138. package/dist/mvt/lib/parse-mvt-geojson.d.ts.map +1 -0
  139. package/dist/mvt/lib/parse-mvt-geojson.js +48 -0
  140. package/dist/mvt/lib/parse-mvt-geojson.js.map +1 -0
  141. package/dist/mvt/lib/parse-mvt.d.ts +14 -0
  142. package/dist/mvt/lib/parse-mvt.d.ts.map +1 -0
  143. package/dist/mvt/lib/parse-mvt.js +105 -0
  144. package/dist/mvt/lib/parse-mvt.js.map +1 -0
  145. package/dist/mvt/lib/parse-tilejson.d.ts +74 -0
  146. package/dist/mvt/lib/parse-tilejson.d.ts.map +1 -0
  147. package/dist/mvt/lib/parse-tilejson.js +267 -0
  148. package/dist/mvt/lib/parse-tilejson.js.map +1 -0
  149. package/dist/mvt/lib/resolve-table-tile-parameters.d.ts +4 -0
  150. package/dist/mvt/lib/resolve-table-tile-parameters.d.ts.map +1 -0
  151. package/dist/mvt/lib/resolve-table-tile-parameters.js +16 -0
  152. package/dist/mvt/lib/resolve-table-tile-parameters.js.map +1 -0
  153. package/dist/mvt/lib/types.d.ts +88 -0
  154. package/dist/mvt/lib/types.d.ts.map +1 -0
  155. package/dist/mvt/lib/types.js.map +1 -0
  156. package/dist/mvt/lib/utils/geometry-utils.d.ts +83 -0
  157. package/dist/mvt/lib/utils/geometry-utils.d.ts.map +1 -0
  158. package/dist/mvt/lib/utils/geometry-utils.js +211 -0
  159. package/dist/mvt/lib/utils/geometry-utils.js.map +1 -0
  160. package/dist/mvt/lib/vector-tile/vector-tile-feature.d.ts +72 -0
  161. package/dist/mvt/lib/vector-tile/vector-tile-feature.d.ts.map +1 -0
  162. package/dist/mvt/lib/vector-tile/vector-tile-feature.js +350 -0
  163. package/dist/mvt/lib/vector-tile/vector-tile-feature.js.map +1 -0
  164. package/dist/mvt/lib/vector-tile/vector-tile-layer.d.ts +29 -0
  165. package/dist/mvt/lib/vector-tile/vector-tile-layer.d.ts.map +1 -0
  166. package/dist/mvt/lib/vector-tile/vector-tile-layer.js +108 -0
  167. package/dist/mvt/lib/vector-tile/vector-tile-layer.js.map +1 -0
  168. package/dist/mvt/lib/vector-tile/vector-tile.d.ts +9 -0
  169. package/dist/mvt/lib/vector-tile/vector-tile.d.ts.map +1 -0
  170. package/dist/mvt/lib/vector-tile/vector-tile.js +28 -0
  171. package/dist/mvt/lib/vector-tile/vector-tile.js.map +1 -0
  172. package/dist/mvt/lib/vector-tiler/arrow-tile.d.ts +6 -0
  173. package/dist/mvt/lib/vector-tiler/arrow-tile.d.ts.map +1 -0
  174. package/dist/mvt/lib/vector-tiler/arrow-tile.js +84 -0
  175. package/dist/mvt/lib/vector-tiler/arrow-tile.js.map +1 -0
  176. package/dist/mvt/lib/vector-tiler/features/clip-features.d.ts +16 -0
  177. package/dist/mvt/lib/vector-tiler/features/clip-features.d.ts.map +1 -0
  178. package/dist/mvt/lib/vector-tiler/features/clip-features.js +211 -0
  179. package/dist/mvt/lib/vector-tiler/features/clip-features.js.map +1 -0
  180. package/dist/mvt/lib/vector-tiler/features/convert-feature.d.ts +18 -0
  181. package/dist/mvt/lib/vector-tiler/features/convert-feature.d.ts.map +1 -0
  182. package/dist/mvt/lib/vector-tiler/features/convert-feature.js +161 -0
  183. package/dist/mvt/lib/vector-tiler/features/convert-feature.js.map +1 -0
  184. package/dist/mvt/lib/vector-tiler/features/proto-feature.d.ts +30 -0
  185. package/dist/mvt/lib/vector-tiler/features/proto-feature.d.ts.map +1 -0
  186. package/dist/mvt/lib/vector-tiler/features/proto-feature.js +53 -0
  187. package/dist/mvt/lib/vector-tiler/features/proto-feature.js.map +1 -0
  188. package/dist/mvt/lib/vector-tiler/features/simplify-path.d.ts +10 -0
  189. package/dist/mvt/lib/vector-tiler/features/simplify-path.d.ts.map +1 -0
  190. package/dist/mvt/lib/vector-tiler/features/simplify-path.js +67 -0
  191. package/dist/mvt/lib/vector-tiler/features/simplify-path.js.map +1 -0
  192. package/dist/mvt/lib/vector-tiler/features/wrap-features.d.ts +17 -0
  193. package/dist/mvt/lib/vector-tiler/features/wrap-features.d.ts.map +1 -0
  194. package/dist/mvt/lib/vector-tiler/features/wrap-features.js +95 -0
  195. package/dist/mvt/lib/vector-tiler/features/wrap-features.js.map +1 -0
  196. package/dist/mvt/lib/vector-tiler/proto-tile.d.ts +40 -0
  197. package/dist/mvt/lib/vector-tiler/proto-tile.d.ts.map +1 -0
  198. package/dist/mvt/lib/vector-tiler/proto-tile.js +139 -0
  199. package/dist/mvt/lib/vector-tiler/proto-tile.js.map +1 -0
  200. package/dist/mvt/lib/vector-tiler/tile-to-geojson.d.ts +12 -0
  201. package/dist/mvt/lib/vector-tiler/tile-to-geojson.d.ts.map +1 -0
  202. package/dist/mvt/lib/vector-tiler/tile-to-geojson.js +81 -0
  203. package/dist/mvt/lib/vector-tiler/tile-to-geojson.js.map +1 -0
  204. package/dist/mvt/lib/vector-tiler/transform-tile.d.ts +7 -0
  205. package/dist/mvt/lib/vector-tiler/transform-tile.d.ts.map +1 -0
  206. package/dist/mvt/lib/vector-tiler/transform-tile.js +42 -0
  207. package/dist/mvt/lib/vector-tiler/transform-tile.js.map +1 -0
  208. package/dist/mvt/map-style-format.d.ts +13 -0
  209. package/dist/mvt/map-style-format.d.ts.map +1 -0
  210. package/dist/mvt/map-style-format.js +16 -0
  211. package/dist/mvt/map-style-format.js.map +1 -0
  212. package/dist/mvt/map-style-loader-with-parser.d.ts +26 -0
  213. package/dist/mvt/map-style-loader-with-parser.d.ts.map +1 -0
  214. package/dist/mvt/map-style-loader-with-parser.js +38 -0
  215. package/dist/mvt/map-style-loader-with-parser.js.map +1 -0
  216. package/dist/mvt/map-style-loader.d.ts +44 -0
  217. package/dist/mvt/map-style-loader.d.ts.map +1 -0
  218. package/dist/mvt/map-style-loader.js +25 -0
  219. package/dist/mvt/map-style-loader.js.map +1 -0
  220. package/dist/mvt/map-style-schema.d.ts +58 -0
  221. package/dist/mvt/map-style-schema.d.ts.map +1 -0
  222. package/dist/mvt/map-style-schema.js +47 -0
  223. package/dist/mvt/map-style-schema.js.map +1 -0
  224. package/dist/mvt/map-style.d.ts +110 -0
  225. package/dist/mvt/map-style.d.ts.map +1 -0
  226. package/dist/mvt/map-style.js +90 -0
  227. package/dist/mvt/map-style.js.map +1 -0
  228. package/dist/mvt/mvt-format.d.ts +14 -0
  229. package/dist/mvt/mvt-format.d.ts.map +1 -0
  230. package/dist/mvt/mvt-format.js +23 -0
  231. package/dist/mvt/mvt-format.js.map +1 -0
  232. package/dist/mvt/mvt-geojson-loader-types.d.ts +82 -0
  233. package/dist/mvt/mvt-geojson-loader-types.d.ts.map +1 -0
  234. package/dist/mvt/mvt-geojson-loader-types.js +34 -0
  235. package/dist/mvt/mvt-geojson-loader-types.js.map +1 -0
  236. package/dist/mvt/mvt-geojson-loader.cjs +1366 -0
  237. package/dist/mvt/mvt-geojson-loader.cjs.map +6 -0
  238. package/dist/mvt/mvt-geojson-loader.d.ts +32 -0
  239. package/dist/mvt/mvt-geojson-loader.d.ts.map +1 -0
  240. package/dist/mvt/mvt-geojson-loader.js +13 -0
  241. package/dist/mvt/mvt-geojson-loader.js.map +1 -0
  242. package/dist/mvt/mvt-loader-with-parser.d.ts +105 -0
  243. package/dist/mvt/mvt-loader-with-parser.d.ts.map +1 -0
  244. package/dist/mvt/mvt-loader-with-parser.js +21 -0
  245. package/dist/mvt/mvt-loader-with-parser.js.map +1 -0
  246. package/dist/mvt/mvt-loader.d.ts +129 -0
  247. package/dist/mvt/mvt-loader.d.ts.map +1 -0
  248. package/dist/mvt/mvt-loader.js +40 -0
  249. package/dist/mvt/mvt-loader.js.map +1 -0
  250. package/dist/mvt/mvt-source-loader.d.ts +102 -0
  251. package/dist/mvt/mvt-source-loader.d.ts.map +1 -0
  252. package/dist/mvt/mvt-source-loader.js +275 -0
  253. package/dist/mvt/mvt-source-loader.js.map +1 -0
  254. package/dist/mvt/mvt-writer.d.ts +28 -0
  255. package/dist/mvt/mvt-writer.d.ts.map +1 -0
  256. package/dist/mvt/mvt-writer.js +32 -0
  257. package/dist/mvt/mvt-writer.js.map +1 -0
  258. package/dist/mvt/table-tile-source-loader.d.ts +169 -0
  259. package/dist/mvt/table-tile-source-loader.d.ts.map +1 -0
  260. package/dist/mvt/table-tile-source-loader.js +478 -0
  261. package/dist/mvt/table-tile-source-loader.js.map +1 -0
  262. package/dist/mvt/tilejson-format.d.ts +13 -0
  263. package/dist/mvt/tilejson-format.d.ts.map +1 -0
  264. package/dist/mvt/tilejson-format.js +16 -0
  265. package/dist/mvt/tilejson-format.js.map +1 -0
  266. package/dist/mvt/tilejson-loader-with-parser.d.ts +13 -0
  267. package/dist/mvt/tilejson-loader-with-parser.d.ts.map +1 -0
  268. package/dist/mvt/tilejson-loader-with-parser.js +25 -0
  269. package/dist/mvt/tilejson-loader-with-parser.js.map +1 -0
  270. package/dist/mvt/tilejson-loader.d.ts +56 -0
  271. package/dist/mvt/tilejson-loader.d.ts.map +1 -0
  272. package/dist/mvt/tilejson-loader.js +28 -0
  273. package/dist/mvt/tilejson-loader.js.map +1 -0
  274. package/dist/mvt/tilejson-zod-schema.cjs +79 -0
  275. package/dist/mvt/tilejson-zod-schema.cjs.map +6 -0
  276. package/dist/mvt/tilejson-zod-schema.d.ts +218 -0
  277. package/dist/mvt/tilejson-zod-schema.d.ts.map +1 -0
  278. package/dist/mvt/tilejson-zod-schema.js +68 -0
  279. package/dist/mvt/tilejson-zod-schema.js.map +1 -0
  280. package/dist/mvt/tilejson.schema.json +197 -0
  281. package/dist/mvt/unbundled.d.ts +8 -0
  282. package/dist/mvt/unbundled.d.ts.map +1 -0
  283. package/dist/mvt/unbundled.js +8 -0
  284. package/dist/mvt/unbundled.js.map +1 -0
  285. package/dist/mvt/workers/mvt-worker-node.d.ts +2 -0
  286. package/dist/mvt/workers/mvt-worker-node.d.ts.map +1 -0
  287. package/dist/mvt/workers/mvt-worker-node.js +8 -0
  288. package/dist/mvt/workers/mvt-worker-node.js.map +1 -0
  289. package/dist/mvt/workers/mvt-worker.d.ts +2 -0
  290. package/dist/mvt/workers/mvt-worker.d.ts.map +1 -0
  291. package/dist/mvt/workers/mvt-worker.js +7 -0
  292. package/dist/mvt/workers/mvt-worker.js.map +1 -0
  293. package/dist/mvt-worker-node.js +72460 -0
  294. package/dist/mvt-worker-node.js.map +7 -0
  295. package/dist/mvt-worker.js +21239 -0
  296. package/dist/pmtiles/bundled.d.ts +3 -0
  297. package/dist/pmtiles/bundled.d.ts.map +1 -0
  298. package/dist/pmtiles/bundled.js +5 -0
  299. package/dist/pmtiles/bundled.js.map +1 -0
  300. package/dist/pmtiles/dist.dev.js +50530 -0
  301. package/dist/pmtiles/dist.min.js +94 -0
  302. package/dist/pmtiles/geoarrow.cjs +6718 -0
  303. package/dist/pmtiles/geoarrow.cjs.map +6 -0
  304. package/dist/pmtiles/geoarrow.d.ts +30 -0
  305. package/dist/pmtiles/geoarrow.d.ts.map +1 -0
  306. package/dist/pmtiles/geoarrow.js +143 -0
  307. package/dist/pmtiles/geoarrow.js.map +1 -0
  308. package/dist/pmtiles/index.cjs +8011 -0
  309. package/dist/pmtiles/index.cjs.map +6 -0
  310. package/dist/pmtiles/index.d.ts +14 -0
  311. package/dist/pmtiles/index.d.ts.map +1 -0
  312. package/dist/pmtiles/index.js +10 -0
  313. package/dist/pmtiles/index.js.map +1 -0
  314. package/dist/pmtiles/lib/blob-source.d.ts +14 -0
  315. package/dist/pmtiles/lib/blob-source.d.ts.map +1 -0
  316. package/dist/pmtiles/lib/blob-source.js +32 -0
  317. package/dist/pmtiles/lib/blob-source.js.map +1 -0
  318. package/dist/pmtiles/lib/encode-pmtiles.d.ts +8 -0
  319. package/dist/pmtiles/lib/encode-pmtiles.d.ts.map +1 -0
  320. package/dist/pmtiles/lib/encode-pmtiles.js +268 -0
  321. package/dist/pmtiles/lib/encode-pmtiles.js.map +1 -0
  322. package/dist/pmtiles/lib/parse-pmtiles.d.ts +52 -0
  323. package/dist/pmtiles/lib/parse-pmtiles.d.ts.map +1 -0
  324. package/dist/pmtiles/lib/parse-pmtiles.js +95 -0
  325. package/dist/pmtiles/lib/parse-pmtiles.js.map +1 -0
  326. package/dist/pmtiles/lib/range-request-source.d.ts +24 -0
  327. package/dist/pmtiles/lib/range-request-source.d.ts.map +1 -0
  328. package/dist/pmtiles/lib/range-request-source.js +45 -0
  329. package/dist/pmtiles/lib/range-request-source.js.map +1 -0
  330. package/dist/pmtiles/lib/version.d.ts +2 -0
  331. package/dist/pmtiles/lib/version.d.ts.map +1 -0
  332. package/dist/pmtiles/lib/version.js +8 -0
  333. package/dist/pmtiles/lib/version.js.map +1 -0
  334. package/dist/pmtiles/pmtiles-format.d.ts +14 -0
  335. package/dist/pmtiles/pmtiles-format.d.ts.map +1 -0
  336. package/dist/pmtiles/pmtiles-format.js +17 -0
  337. package/dist/pmtiles/pmtiles-format.js.map +1 -0
  338. package/dist/pmtiles/pmtiles-loader-with-parser.d.ts +30 -0
  339. package/dist/pmtiles/pmtiles-loader-with-parser.d.ts.map +1 -0
  340. package/dist/pmtiles/pmtiles-loader-with-parser.js +41 -0
  341. package/dist/pmtiles/pmtiles-loader-with-parser.js.map +1 -0
  342. package/dist/pmtiles/pmtiles-loader.d.ts +41 -0
  343. package/dist/pmtiles/pmtiles-loader.d.ts.map +1 -0
  344. package/dist/pmtiles/pmtiles-loader.js +20 -0
  345. package/dist/pmtiles/pmtiles-loader.js.map +1 -0
  346. package/dist/pmtiles/pmtiles-source-loader.d.ts +85 -0
  347. package/dist/pmtiles/pmtiles-source-loader.d.ts.map +1 -0
  348. package/dist/pmtiles/pmtiles-source-loader.js +239 -0
  349. package/dist/pmtiles/pmtiles-source-loader.js.map +1 -0
  350. package/dist/pmtiles/pmtiles-writer-types.d.ts +39 -0
  351. package/dist/pmtiles/pmtiles-writer-types.d.ts.map +1 -0
  352. package/dist/{point-cloud-tile-source-types.js → pmtiles/pmtiles-writer-types.js} +1 -1
  353. package/dist/pmtiles/pmtiles-writer-types.js.map +1 -0
  354. package/dist/pmtiles/pmtiles-writer.d.ts +22 -0
  355. package/dist/pmtiles/pmtiles-writer.d.ts.map +1 -0
  356. package/dist/pmtiles/pmtiles-writer.js +15 -0
  357. package/dist/pmtiles/pmtiles-writer.js.map +1 -0
  358. package/dist/pmtiles/raster.cjs +1183 -0
  359. package/dist/pmtiles/raster.cjs.map +6 -0
  360. package/dist/pmtiles/raster.d.ts +30 -0
  361. package/dist/pmtiles/raster.d.ts.map +1 -0
  362. package/dist/pmtiles/raster.js +212 -0
  363. package/dist/pmtiles/raster.js.map +1 -0
  364. package/dist/pmtiles/source-info.d.ts +25 -0
  365. package/dist/pmtiles/source-info.d.ts.map +1 -0
  366. package/dist/{types.js → pmtiles/source-info.js} +1 -1
  367. package/dist/pmtiles/source-info.js.map +1 -0
  368. package/dist/pmtiles/unbundled.d.ts +3 -0
  369. package/dist/pmtiles/unbundled.d.ts.map +1 -0
  370. package/dist/pmtiles/unbundled.js +5 -0
  371. package/dist/pmtiles/unbundled.js.map +1 -0
  372. package/dist/raster-set.d.ts +1 -1
  373. package/dist/raster-set.d.ts.map +1 -1
  374. package/dist/raster-set.js +1 -1
  375. package/dist/raster-set.js.map +1 -1
  376. package/dist/tile-matrix.cjs +81 -0
  377. package/dist/tile-matrix.cjs.map +6 -0
  378. package/dist/tile-matrix.d.ts +52 -0
  379. package/dist/tile-matrix.d.ts.map +1 -0
  380. package/dist/tile-matrix.js +75 -0
  381. package/dist/tile-matrix.js.map +1 -0
  382. package/dist/tileset-2d/tile-2d-header.d.ts +2 -2
  383. package/dist/tileset-2d/tile-2d-header.d.ts.map +1 -1
  384. package/dist/tileset-2d/tile-2d-header.js +11 -11
  385. package/dist/tileset-2d/tile-2d-header.js.map +1 -1
  386. package/dist/tileset-2d/tileset-2d.d.ts +19 -10
  387. package/dist/tileset-2d/tileset-2d.d.ts.map +1 -1
  388. package/dist/tileset-2d/tileset-2d.js +69 -15
  389. package/dist/tileset-2d/tileset-2d.js.map +1 -1
  390. package/package.json +101 -25
  391. package/src/image-set.ts +1 -1
  392. package/src/index.ts +8 -128
  393. package/src/mlt/bundled.ts +9 -0
  394. package/src/mlt/index.ts +18 -0
  395. package/src/mlt/lib/encode-mlt-geometry.ts +162 -0
  396. package/src/mlt/lib/encode-mlt-streams.ts +66 -0
  397. package/src/mlt/lib/encode-mlt.ts +215 -0
  398. package/src/mlt/lib/parse-mlt.ts +906 -0
  399. package/src/mlt/libs/mlt-decoder.cjs +4552 -0
  400. package/src/mlt/mlt-format.ts +19 -0
  401. package/src/mlt/mlt-loader-with-parser.ts +57 -0
  402. package/src/mlt/mlt-loader.ts +64 -0
  403. package/src/mlt/mlt-source-loader.ts +266 -0
  404. package/src/mlt/mlt-writer.ts +47 -0
  405. package/src/mlt/unbundled.ts +6 -0
  406. package/src/mvt/arrow-table-tile-source-loader-types.ts +55 -0
  407. package/src/mvt/arrow-table-tile-source-loader.ts +307 -0
  408. package/src/mvt/arrow-table-tile-source-types.ts +32 -0
  409. package/src/mvt/bundled.ts +14 -0
  410. package/src/mvt/index.ts +67 -0
  411. package/src/mvt/lib/encode-mvt-arrow.ts +273 -0
  412. package/src/mvt/lib/encode-mvt.ts +46 -0
  413. package/src/mvt/lib/get-schemas-from-tilejson.ts +64 -0
  414. package/src/mvt/lib/is-longitude-latitude-crs.ts +15 -0
  415. package/src/mvt/lib/mapbox-vt-pbf/geojson-to-vt.ts.disabled +76 -0
  416. package/src/mvt/lib/mapbox-vt-pbf/geojson-wrapper.ts +89 -0
  417. package/src/mvt/lib/mapbox-vt-pbf/to-vector-tile.ts +230 -0
  418. package/src/mvt/lib/mvt-pbf/mvt-constants.ts +135 -0
  419. package/src/mvt/lib/mvt-pbf/mvt-types.ts +22 -0
  420. package/src/mvt/lib/mvt-pbf/parse-geometry-from-pbf.ts +285 -0
  421. package/src/mvt/lib/mvt-pbf/parse-mvt-from-pbf.ts +310 -0
  422. package/src/mvt/lib/mvt-pbf/write-mvt-to-pbf.ts +162 -0
  423. package/src/mvt/lib/mvt-worker-transport.ts +74 -0
  424. package/src/mvt/lib/parse-mvt-geojson.ts +65 -0
  425. package/src/mvt/lib/parse-mvt.ts +145 -0
  426. package/src/mvt/lib/parse-tilejson.ts +397 -0
  427. package/src/mvt/lib/resolve-table-tile-parameters.ts +23 -0
  428. package/src/mvt/lib/types.ts +90 -0
  429. package/src/mvt/lib/utils/geometry-utils.ts +238 -0
  430. package/src/mvt/lib/vector-tile/LICENSE.txt +31 -0
  431. package/src/mvt/lib/vector-tile/vector-tile-feature.ts +430 -0
  432. package/src/mvt/lib/vector-tile/vector-tile-layer.ts +130 -0
  433. package/src/mvt/lib/vector-tile/vector-tile.ts +32 -0
  434. package/src/mvt/lib/vector-tiler/LICENSE +19 -0
  435. package/src/mvt/lib/vector-tiler/arrow-tile.ts +93 -0
  436. package/src/mvt/lib/vector-tiler/features/clip-features.ts +250 -0
  437. package/src/mvt/lib/vector-tiler/features/convert-feature.ts +213 -0
  438. package/src/mvt/lib/vector-tiler/features/proto-feature.ts +104 -0
  439. package/src/mvt/lib/vector-tiler/features/simplify-path.ts +84 -0
  440. package/src/mvt/lib/vector-tiler/features/wrap-features.ts +125 -0
  441. package/src/mvt/lib/vector-tiler/proto-tile.ts +217 -0
  442. package/src/mvt/lib/vector-tiler/tile-to-geojson.ts +104 -0
  443. package/src/mvt/lib/vector-tiler/transform-tile.ts +57 -0
  444. package/src/mvt/map-style-format.ts +18 -0
  445. package/src/mvt/map-style-loader-with-parser.ts +62 -0
  446. package/src/mvt/map-style-loader.ts +31 -0
  447. package/src/mvt/map-style-schema.ts +53 -0
  448. package/src/mvt/map-style.ts +218 -0
  449. package/src/mvt/mvt-format.ts +25 -0
  450. package/src/mvt/mvt-geojson-loader-types.ts +60 -0
  451. package/src/mvt/mvt-geojson-loader.ts +20 -0
  452. package/src/mvt/mvt-loader-with-parser.ts +53 -0
  453. package/src/mvt/mvt-loader.ts +73 -0
  454. package/src/mvt/mvt-source-loader.ts +410 -0
  455. package/src/mvt/mvt-writer.ts +35 -0
  456. package/src/mvt/table-tile-source-loader.ts +672 -0
  457. package/src/mvt/tilejson-format.ts +18 -0
  458. package/src/mvt/tilejson-loader-with-parser.ts +38 -0
  459. package/src/mvt/tilejson-loader.ts +42 -0
  460. package/src/mvt/tilejson-zod-schema.ts +199 -0
  461. package/src/mvt/unbundled.ts +13 -0
  462. package/src/mvt/workers/mvt-worker-node.ts +9 -0
  463. package/src/mvt/workers/mvt-worker.ts +8 -0
  464. package/src/pmtiles/bundled.ts +6 -0
  465. package/src/pmtiles/geoarrow.ts +188 -0
  466. package/src/pmtiles/index.ts +27 -0
  467. package/src/pmtiles/lib/blob-source.ts +41 -0
  468. package/src/pmtiles/lib/encode-pmtiles.ts +322 -0
  469. package/src/pmtiles/lib/parse-pmtiles.ts +180 -0
  470. package/src/pmtiles/lib/range-request-source.ts +60 -0
  471. package/src/pmtiles/lib/version.ts +8 -0
  472. package/src/pmtiles/pmtiles-format.ts +19 -0
  473. package/src/pmtiles/pmtiles-loader-with-parser.ts +60 -0
  474. package/src/pmtiles/pmtiles-loader.ts +30 -0
  475. package/src/pmtiles/pmtiles-source-loader.ts +346 -0
  476. package/src/pmtiles/pmtiles-writer-types.ts +45 -0
  477. package/src/pmtiles/pmtiles-writer.ts +26 -0
  478. package/src/pmtiles/raster.ts +289 -0
  479. package/src/pmtiles/source-info.ts +25 -0
  480. package/src/pmtiles/unbundled.ts +6 -0
  481. package/src/raster-set.ts +2 -2
  482. package/src/tile-matrix.ts +138 -0
  483. package/src/tileset-2d/tile-2d-header.ts +14 -13
  484. package/src/tileset-2d/tileset-2d.ts +81 -19
  485. package/dist/constants.d.ts +0 -38
  486. package/dist/constants.d.ts.map +0 -1
  487. package/dist/constants.js +0 -39
  488. package/dist/constants.js.map +0 -1
  489. package/dist/point-cloud/point-cloud-tile.d.ts +0 -47
  490. package/dist/point-cloud/point-cloud-tile.d.ts.map +0 -1
  491. package/dist/point-cloud/point-cloud-tile.js +0 -70
  492. package/dist/point-cloud/point-cloud-tile.js.map +0 -1
  493. package/dist/point-cloud/point-cloud-tileset.d.ts +0 -135
  494. package/dist/point-cloud/point-cloud-tileset.d.ts.map +0 -1
  495. package/dist/point-cloud/point-cloud-tileset.js +0 -549
  496. package/dist/point-cloud/point-cloud-tileset.js.map +0 -1
  497. package/dist/point-cloud/types.d.ts +0 -81
  498. package/dist/point-cloud/types.d.ts.map +0 -1
  499. package/dist/point-cloud/types.js.map +0 -1
  500. package/dist/point-cloud-tile-source-loader-types.d.ts +0 -31
  501. package/dist/point-cloud-tile-source-loader-types.d.ts.map +0 -1
  502. package/dist/point-cloud-tile-source-loader-types.js +0 -34
  503. package/dist/point-cloud-tile-source-loader-types.js.map +0 -1
  504. package/dist/point-cloud-tile-source-loader.cjs +0 -81
  505. package/dist/point-cloud-tile-source-loader.cjs.map +0 -7
  506. package/dist/point-cloud-tile-source-loader.d.ts +0 -27
  507. package/dist/point-cloud-tile-source-loader.d.ts.map +0 -1
  508. package/dist/point-cloud-tile-source-loader.js +0 -17
  509. package/dist/point-cloud-tile-source-loader.js.map +0 -1
  510. package/dist/point-cloud-tile-source-types.d.ts +0 -15
  511. package/dist/point-cloud-tile-source-types.d.ts.map +0 -1
  512. package/dist/point-cloud-tile-source-types.js.map +0 -1
  513. package/dist/point-cloud-tile-source.cjs +0 -105
  514. package/dist/point-cloud-tile-source.cjs.map +0 -7
  515. package/dist/point-cloud-tile-source.d.ts +0 -36
  516. package/dist/point-cloud-tile-source.d.ts.map +0 -1
  517. package/dist/point-cloud-tile-source.js +0 -84
  518. package/dist/point-cloud-tile-source.js.map +0 -1
  519. package/dist/spatial/format-spatial-reference.d.ts +0 -68
  520. package/dist/spatial/format-spatial-reference.d.ts.map +0 -1
  521. package/dist/spatial/format-spatial-reference.js +0 -291
  522. package/dist/spatial/format-spatial-reference.js.map +0 -1
  523. package/dist/spatial/get-spatial-coordinate-frame.d.ts +0 -20
  524. package/dist/spatial/get-spatial-coordinate-frame.d.ts.map +0 -1
  525. package/dist/spatial/get-spatial-coordinate-frame.js +0 -139
  526. package/dist/spatial/get-spatial-coordinate-frame.js.map +0 -1
  527. package/dist/spatial/i3s-elevation.d.ts +0 -20
  528. package/dist/spatial/i3s-elevation.d.ts.map +0 -1
  529. package/dist/spatial/i3s-elevation.js +0 -90
  530. package/dist/spatial/i3s-elevation.js.map +0 -1
  531. package/dist/spatial/i3s-spatial-transformer.d.ts +0 -205
  532. package/dist/spatial/i3s-spatial-transformer.d.ts.map +0 -1
  533. package/dist/spatial/i3s-spatial-transformer.js +0 -731
  534. package/dist/spatial/i3s-spatial-transformer.js.map +0 -1
  535. package/dist/spatial/normalize-crs-identifier.d.ts +0 -15
  536. package/dist/spatial/normalize-crs-identifier.d.ts.map +0 -1
  537. package/dist/spatial/normalize-crs-identifier.js +0 -22
  538. package/dist/spatial/normalize-crs-identifier.js.map +0 -1
  539. package/dist/spatial/spatial-coordinate-transformer.d.ts +0 -54
  540. package/dist/spatial/spatial-coordinate-transformer.d.ts.map +0 -1
  541. package/dist/spatial/spatial-coordinate-transformer.js +0 -311
  542. package/dist/spatial/spatial-coordinate-transformer.js.map +0 -1
  543. package/dist/spatial/spatial-resource-registry.d.ts +0 -47
  544. package/dist/spatial/spatial-resource-registry.d.ts.map +0 -1
  545. package/dist/spatial/spatial-resource-registry.js +0 -76
  546. package/dist/spatial/spatial-resource-registry.js.map +0 -1
  547. package/dist/spatial/spatial-types.d.ts +0 -190
  548. package/dist/spatial/spatial-types.d.ts.map +0 -1
  549. package/dist/spatial/spatial-types.js +0 -192
  550. package/dist/spatial/spatial-types.js.map +0 -1
  551. package/dist/spatial/tiles-3d-spatial-transformer.d.ts +0 -32
  552. package/dist/spatial/tiles-3d-spatial-transformer.d.ts.map +0 -1
  553. package/dist/spatial/tiles-3d-spatial-transformer.js +0 -163
  554. package/dist/spatial/tiles-3d-spatial-transformer.js.map +0 -1
  555. package/dist/tileset-3d/common/indexed-archive-tileset-source.d.ts +0 -60
  556. package/dist/tileset-3d/common/indexed-archive-tileset-source.d.ts.map +0 -1
  557. package/dist/tileset-3d/common/indexed-archive-tileset-source.js +0 -130
  558. package/dist/tileset-3d/common/indexed-archive-tileset-source.js.map +0 -1
  559. package/dist/tileset-3d/common/tile-3d-contracts.d.ts +0 -63
  560. package/dist/tileset-3d/common/tile-3d-contracts.d.ts.map +0 -1
  561. package/dist/tileset-3d/common/tile-3d-contracts.js +0 -51
  562. package/dist/tileset-3d/common/tile-3d-contracts.js.map +0 -1
  563. package/dist/tileset-3d/common/tile-3d.d.ts +0 -410
  564. package/dist/tileset-3d/common/tile-3d.d.ts.map +0 -1
  565. package/dist/tileset-3d/common/tile-3d.js +0 -1056
  566. package/dist/tileset-3d/common/tile-3d.js.map +0 -1
  567. package/dist/tileset-3d/common/tileset-3d.d.ts +0 -369
  568. package/dist/tileset-3d/common/tileset-3d.d.ts.map +0 -1
  569. package/dist/tileset-3d/common/tileset-3d.js +0 -879
  570. package/dist/tileset-3d/common/tileset-3d.js.map +0 -1
  571. package/dist/tileset-3d/common/tileset-cache.d.ts +0 -29
  572. package/dist/tileset-3d/common/tileset-cache.d.ts.map +0 -1
  573. package/dist/tileset-3d/common/tileset-cache.js +0 -82
  574. package/dist/tileset-3d/common/tileset-cache.js.map +0 -1
  575. package/dist/tileset-3d/common/tileset-content-traversal.d.ts +0 -37
  576. package/dist/tileset-3d/common/tileset-content-traversal.d.ts.map +0 -1
  577. package/dist/tileset-3d/common/tileset-content-traversal.js +0 -80
  578. package/dist/tileset-3d/common/tileset-content-traversal.js.map +0 -1
  579. package/dist/tileset-3d/common/tileset-observability.d.ts +0 -60
  580. package/dist/tileset-3d/common/tileset-observability.d.ts.map +0 -1
  581. package/dist/tileset-3d/common/tileset-observability.js +0 -39
  582. package/dist/tileset-3d/common/tileset-observability.js.map +0 -1
  583. package/dist/tileset-3d/common/tileset-source.d.ts +0 -228
  584. package/dist/tileset-3d/common/tileset-source.d.ts.map +0 -1
  585. package/dist/tileset-3d/common/tileset-source.js +0 -17
  586. package/dist/tileset-3d/common/tileset-source.js.map +0 -1
  587. package/dist/tileset-3d/common/tileset-traverser.d.ts +0 -88
  588. package/dist/tileset-3d/common/tileset-traverser.d.ts.map +0 -1
  589. package/dist/tileset-3d/common/tileset-traverser.js +0 -341
  590. package/dist/tileset-3d/common/tileset-traverser.js.map +0 -1
  591. package/dist/tileset-3d/format-3d-tiles/implicit-tiling.d.ts +0 -182
  592. package/dist/tileset-3d/format-3d-tiles/implicit-tiling.d.ts.map +0 -1
  593. package/dist/tileset-3d/format-3d-tiles/implicit-tiling.js +0 -678
  594. package/dist/tileset-3d/format-3d-tiles/implicit-tiling.js.map +0 -1
  595. package/dist/tileset-3d/format-3d-tiles/tiles-3d-source.d.ts +0 -221
  596. package/dist/tileset-3d/format-3d-tiles/tiles-3d-source.d.ts.map +0 -1
  597. package/dist/tileset-3d/format-3d-tiles/tiles-3d-source.js +0 -770
  598. package/dist/tileset-3d/format-3d-tiles/tiles-3d-source.js.map +0 -1
  599. package/dist/tileset-3d/format-3d-tiles/tileset-3d-traverser.d.ts +0 -111
  600. package/dist/tileset-3d/format-3d-tiles/tileset-3d-traverser.d.ts.map +0 -1
  601. package/dist/tileset-3d/format-3d-tiles/tileset-3d-traverser.js +0 -339
  602. package/dist/tileset-3d/format-3d-tiles/tileset-3d-traverser.js.map +0 -1
  603. package/dist/tileset-3d/format-i3s/i3s-pending-tiles-register.d.ts +0 -27
  604. package/dist/tileset-3d/format-i3s/i3s-pending-tiles-register.d.ts.map +0 -1
  605. package/dist/tileset-3d/format-i3s/i3s-pending-tiles-register.js +0 -45
  606. package/dist/tileset-3d/format-i3s/i3s-pending-tiles-register.js.map +0 -1
  607. package/dist/tileset-3d/format-i3s/i3s-source.d.ts +0 -116
  608. package/dist/tileset-3d/format-i3s/i3s-source.d.ts.map +0 -1
  609. package/dist/tileset-3d/format-i3s/i3s-source.js +0 -450
  610. package/dist/tileset-3d/format-i3s/i3s-source.js.map +0 -1
  611. package/dist/tileset-3d/format-i3s/i3s-tile-manager.d.ts +0 -34
  612. package/dist/tileset-3d/format-i3s/i3s-tile-manager.d.ts.map +0 -1
  613. package/dist/tileset-3d/format-i3s/i3s-tile-manager.js +0 -81
  614. package/dist/tileset-3d/format-i3s/i3s-tile-manager.js.map +0 -1
  615. package/dist/tileset-3d/format-i3s/i3s-tileset-traverser.d.ts +0 -25
  616. package/dist/tileset-3d/format-i3s/i3s-tileset-traverser.d.ts.map +0 -1
  617. package/dist/tileset-3d/format-i3s/i3s-tileset-traverser.js +0 -84
  618. package/dist/tileset-3d/format-i3s/i3s-tileset-traverser.js.map +0 -1
  619. package/dist/tileset-3d/helpers/3d-tiles-options.d.ts +0 -5
  620. package/dist/tileset-3d/helpers/3d-tiles-options.d.ts.map +0 -1
  621. package/dist/tileset-3d/helpers/3d-tiles-options.js +0 -9
  622. package/dist/tileset-3d/helpers/3d-tiles-options.js.map +0 -1
  623. package/dist/tileset-3d/helpers/bounding-volume.d.ts +0 -23
  624. package/dist/tileset-3d/helpers/bounding-volume.d.ts.map +0 -1
  625. package/dist/tileset-3d/helpers/bounding-volume.js +0 -236
  626. package/dist/tileset-3d/helpers/bounding-volume.js.map +0 -1
  627. package/dist/tileset-3d/helpers/frame-state.d.ts +0 -93
  628. package/dist/tileset-3d/helpers/frame-state.d.ts.map +0 -1
  629. package/dist/tileset-3d/helpers/frame-state.js +0 -211
  630. package/dist/tileset-3d/helpers/frame-state.js.map +0 -1
  631. package/dist/tileset-3d/helpers/i3s-lod.d.ts +0 -20
  632. package/dist/tileset-3d/helpers/i3s-lod.d.ts.map +0 -1
  633. package/dist/tileset-3d/helpers/i3s-lod.js +0 -95
  634. package/dist/tileset-3d/helpers/i3s-lod.js.map +0 -1
  635. package/dist/tileset-3d/helpers/s2-bounding-volume.d.ts +0 -17
  636. package/dist/tileset-3d/helpers/s2-bounding-volume.d.ts.map +0 -1
  637. package/dist/tileset-3d/helpers/s2-bounding-volume.js +0 -17
  638. package/dist/tileset-3d/helpers/s2-bounding-volume.js.map +0 -1
  639. package/dist/tileset-3d/helpers/tiles-3d-lod.d.ts +0 -72
  640. package/dist/tileset-3d/helpers/tiles-3d-lod.d.ts.map +0 -1
  641. package/dist/tileset-3d/helpers/tiles-3d-lod.js +0 -257
  642. package/dist/tileset-3d/helpers/tiles-3d-lod.js.map +0 -1
  643. package/dist/tileset-3d/helpers/tiles-3d-request-priority.d.ts +0 -134
  644. package/dist/tileset-3d/helpers/tiles-3d-request-priority.d.ts.map +0 -1
  645. package/dist/tileset-3d/helpers/tiles-3d-request-priority.js +0 -179
  646. package/dist/tileset-3d/helpers/tiles-3d-request-priority.js.map +0 -1
  647. package/dist/tileset-3d/helpers/transform-utils.d.ts +0 -3
  648. package/dist/tileset-3d/helpers/transform-utils.d.ts.map +0 -1
  649. package/dist/tileset-3d/helpers/transform-utils.js +0 -86
  650. package/dist/tileset-3d/helpers/transform-utils.js.map +0 -1
  651. package/dist/tileset-3d/helpers/zoom.d.ts +0 -46
  652. package/dist/tileset-3d/helpers/zoom.d.ts.map +0 -1
  653. package/dist/tileset-3d/helpers/zoom.js +0 -86
  654. package/dist/tileset-3d/helpers/zoom.js.map +0 -1
  655. package/dist/types.d.ts +0 -48
  656. package/dist/types.d.ts.map +0 -1
  657. package/dist/types.js.map +0 -1
  658. package/dist/utils/doubly-linked-list-node.d.ts +0 -11
  659. package/dist/utils/doubly-linked-list-node.d.ts.map +0 -1
  660. package/dist/utils/doubly-linked-list-node.js +0 -20
  661. package/dist/utils/doubly-linked-list-node.js.map +0 -1
  662. package/dist/utils/doubly-linked-list.d.ts +0 -30
  663. package/dist/utils/doubly-linked-list.d.ts.map +0 -1
  664. package/dist/utils/doubly-linked-list.js +0 -93
  665. package/dist/utils/doubly-linked-list.js.map +0 -1
  666. package/dist/utils/managed-array.d.ts +0 -85
  667. package/dist/utils/managed-array.d.ts.map +0 -1
  668. package/dist/utils/managed-array.js +0 -152
  669. package/dist/utils/managed-array.js.map +0 -1
  670. package/src/constants.ts +0 -59
  671. package/src/point-cloud/point-cloud-tile.ts +0 -80
  672. package/src/point-cloud/point-cloud-tileset.ts +0 -767
  673. package/src/point-cloud/types.ts +0 -99
  674. package/src/point-cloud-tile-source-loader-types.ts +0 -53
  675. package/src/point-cloud-tile-source-loader.ts +0 -32
  676. package/src/point-cloud-tile-source-types.ts +0 -20
  677. package/src/point-cloud-tile-source.ts +0 -112
  678. package/src/spatial/format-spatial-reference.ts +0 -385
  679. package/src/spatial/get-spatial-coordinate-frame.ts +0 -169
  680. package/src/spatial/i3s-elevation.ts +0 -96
  681. package/src/spatial/i3s-spatial-transformer.ts +0 -1021
  682. package/src/spatial/normalize-crs-identifier.ts +0 -26
  683. package/src/spatial/spatial-coordinate-transformer.ts +0 -397
  684. package/src/spatial/spatial-resource-registry.ts +0 -90
  685. package/src/spatial/spatial-types.ts +0 -422
  686. package/src/spatial/tiles-3d-spatial-transformer.ts +0 -194
  687. package/src/tileset-3d/common/indexed-archive-tileset-source.ts +0 -205
  688. package/src/tileset-3d/common/tile-3d-contracts.ts +0 -115
  689. package/src/tileset-3d/common/tile-3d.ts +0 -1310
  690. package/src/tileset-3d/common/tileset-3d.ts +0 -1210
  691. package/src/tileset-3d/common/tileset-cache.ts +0 -111
  692. package/src/tileset-3d/common/tileset-content-traversal.ts +0 -114
  693. package/src/tileset-3d/common/tileset-observability.ts +0 -100
  694. package/src/tileset-3d/common/tileset-source.ts +0 -284
  695. package/src/tileset-3d/common/tileset-traverser.ts +0 -416
  696. package/src/tileset-3d/format-3d-tiles/implicit-tiling.ts +0 -1056
  697. package/src/tileset-3d/format-3d-tiles/tiles-3d-source.ts +0 -1025
  698. package/src/tileset-3d/format-3d-tiles/tileset-3d-traverser.ts +0 -391
  699. package/src/tileset-3d/format-i3s/i3s-pending-tiles-register.ts +0 -48
  700. package/src/tileset-3d/format-i3s/i3s-source.ts +0 -557
  701. package/src/tileset-3d/format-i3s/i3s-tile-manager.ts +0 -105
  702. package/src/tileset-3d/format-i3s/i3s-tileset-traverser.ts +0 -102
  703. package/src/tileset-3d/helpers/3d-tiles-options.ts +0 -11
  704. package/src/tileset-3d/helpers/bounding-volume.ts +0 -281
  705. package/src/tileset-3d/helpers/frame-state.ts +0 -322
  706. package/src/tileset-3d/helpers/i3s-lod.ts +0 -109
  707. package/src/tileset-3d/helpers/s2-bounding-volume.ts +0 -32
  708. package/src/tileset-3d/helpers/tiles-3d-lod.ts +0 -370
  709. package/src/tileset-3d/helpers/tiles-3d-request-priority.ts +0 -301
  710. package/src/tileset-3d/helpers/transform-utils.ts +0 -109
  711. package/src/tileset-3d/helpers/zoom.ts +0 -120
  712. package/src/types.ts +0 -54
  713. package/src/utils/doubly-linked-list-node.ts +0 -22
  714. package/src/utils/doubly-linked-list.ts +0 -105
  715. package/src/utils/managed-array.ts +0 -174
  716. /package/dist/{point-cloud → mvt/lib}/types.js +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"i3s-spatial-transformer.js","sourceRoot":"","sources":["../../src/spatial/i3s-spatial-transformer.ts"],"names":[],"mappings":"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"}
@@ -1,15 +0,0 @@
1
- /** Compact identifier for conventional WGS84 longitude/latitude coordinates. */
2
- export declare const WGS84_GEOGRAPHIC_CRS = "EPSG:4326";
3
- /** Compact identifier for WGS84 Earth-centered, Earth-fixed coordinates. */
4
- export declare const WGS84_GEOCENTRIC_CRS = "EPSG:4978";
5
- /**
6
- * Normalizes common OGC URL and URN CRS spellings to compact authority identifiers.
7
- *
8
- * This intentionally performs syntax normalization only. Authority lookup and semantic
9
- * equivalence remain outside the scope of `@math.gl/crs` and the tiles runtime.
10
- *
11
- * @param identifier - Serialized CRS identifier.
12
- * @returns Uppercase compact identifier when an OGC spelling is recognized.
13
- */
14
- export declare function normalizeCrsIdentifier(identifier: string): string;
15
- //# sourceMappingURL=normalize-crs-identifier.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"normalize-crs-identifier.d.ts","sourceRoot":"","sources":["../../src/spatial/normalize-crs-identifier.ts"],"names":[],"mappings":"AAIA,gFAAgF;AAChF,eAAO,MAAM,oBAAoB,cAAc,CAAC;AAEhD,4EAA4E;AAC5E,eAAO,MAAM,oBAAoB,cAAc,CAAC;AAEhD;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAMjE"}
@@ -1,22 +0,0 @@
1
- // loaders.gl
2
- // SPDX-License-Identifier: MIT
3
- // Copyright (c) vis.gl contributors
4
- /** Compact identifier for conventional WGS84 longitude/latitude coordinates. */
5
- export const WGS84_GEOGRAPHIC_CRS = 'EPSG:4326';
6
- /** Compact identifier for WGS84 Earth-centered, Earth-fixed coordinates. */
7
- export const WGS84_GEOCENTRIC_CRS = 'EPSG:4978';
8
- /**
9
- * Normalizes common OGC URL and URN CRS spellings to compact authority identifiers.
10
- *
11
- * This intentionally performs syntax normalization only. Authority lookup and semantic
12
- * equivalence remain outside the scope of `@math.gl/crs` and the tiles runtime.
13
- *
14
- * @param identifier - Serialized CRS identifier.
15
- * @returns Uppercase compact identifier when an OGC spelling is recognized.
16
- */
17
- export function normalizeCrsIdentifier(identifier) {
18
- const normalizedIdentifier = identifier.trim().toUpperCase();
19
- const ogcMatch = normalizedIdentifier.match(/(?:\/DEF\/CRS\/|URN:OGC:DEF:CRS:)([A-Z0-9_-]+)(?:\/|::)(?:[^/:]*[/:])?([A-Z0-9_.-]+)$/);
20
- return ogcMatch ? `${ogcMatch[1]}:${ogcMatch[2]}` : normalizedIdentifier;
21
- }
22
- //# sourceMappingURL=normalize-crs-identifier.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"normalize-crs-identifier.js","sourceRoot":"","sources":["../../src/spatial/normalize-crs-identifier.ts"],"names":[],"mappings":"AAAA,aAAa;AACb,+BAA+B;AAC/B,oCAAoC;AAEpC,gFAAgF;AAChF,MAAM,CAAC,MAAM,oBAAoB,GAAG,WAAW,CAAC;AAEhD,4EAA4E;AAC5E,MAAM,CAAC,MAAM,oBAAoB,GAAG,WAAW,CAAC;AAEhD;;;;;;;;GAQG;AACH,MAAM,UAAU,sBAAsB,CAAC,UAAkB;IACvD,MAAM,oBAAoB,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC7D,MAAM,QAAQ,GAAG,oBAAoB,CAAC,KAAK,CACzC,uFAAuF,CACxF,CAAC;IACF,OAAO,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,oBAAoB,CAAC;AAC3E,CAAC"}
@@ -1,54 +0,0 @@
1
- import type { TilesetSpatialOptions, TilesetSpatialReference } from "./spatial-types.js";
2
- export { getSpatialCoordinateFrame } from "./get-spatial-coordinate-frame.js";
3
- /**
4
- * Deterministic coordinate transformer used by 3D tile format adapters.
5
- *
6
- * The transformer uses conventional `[x, y, z]` array order at its boundary. Format adapters are
7
- * responsible for mapping authority-axis order into their documented wire order. Requested
8
- * transformations fail when required definitions or geoid resources are unavailable.
9
- */
10
- export declare class SpatialCoordinateTransformer {
11
- /** Normalized spatial metadata describing this transformation. */
12
- readonly spatialReference: TilesetSpatialReference;
13
- /** Projection from the source CRS directly to the requested horizontal target CRS. */
14
- private readonly horizontalProjection?;
15
- /** Reusable packed xyz projection for horizontal-only coordinate batches. */
16
- private readonly horizontalProjectionBuffer?;
17
- /** Projection from the source CRS to geographic longitude, latitude, and ellipsoidal height. */
18
- private readonly geographicProjection?;
19
- /** Projection from adjusted geographic coordinates to the requested output CRS. */
20
- private readonly heightOutputProjection?;
21
- /** Whether source coordinates use the WGS84 geocentric frame handled by math.gl. */
22
- private readonly sourceIsGeocentric;
23
- /** Whether output coordinates use the WGS84 geocentric frame handled by math.gl. */
24
- private readonly outputIsGeocentric;
25
- /** Whether source coordinates already use conventional WGS84 longitude/latitude order. */
26
- private readonly sourceIsGeographic;
27
- /** Whether output coordinates use conventional WGS84 longitude/latitude order. */
28
- private readonly outputIsGeographic;
29
- /** Geoid model used to convert between ellipsoidal and orthometric heights. */
30
- private readonly geoid?;
31
- /**
32
- * Creates a coordinate transformer.
33
- *
34
- * @param spatialReference - Format-discovered and option-normalized spatial metadata.
35
- * @param options - Application options containing an optional geoid model.
36
- */
37
- constructor(spatialReference: TilesetSpatialReference, options?: TilesetSpatialOptions);
38
- /**
39
- * Transforms one `[x, y, z?]` coordinate while retaining additional components.
40
- *
41
- * @param coordinate - Source coordinate in the format adapter's normalized `x/y/z` order.
42
- * @returns A new transformed coordinate array.
43
- */
44
- transformPosition(coordinate: readonly number[]): number[];
45
- /** Transform packed xyz positions into owned Float64 storage, batching finite horizontal transforms. */
46
- transformPositions(positions: ArrayLike<number>): Float64Array;
47
- /** Transform packed xyz normals using a local finite-difference tangent approximation. */
48
- transformNormals(normals: ArrayLike<number>, positions: ArrayLike<number>): Float32Array;
49
- /** Convert one source coordinate to conventional WGS84 longitude, latitude, and height. */
50
- private toGeographic;
51
- /** Convert one conventional WGS84 geographic coordinate to the selected output CRS. */
52
- private fromGeographic;
53
- }
54
- //# sourceMappingURL=spatial-coordinate-transformer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"spatial-coordinate-transformer.d.ts","sourceRoot":"","sources":["../../src/spatial/spatial-coordinate-transformer.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAEV,qBAAqB,EACrB,uBAAuB,EAExB,2BAAwB;AACzB,OAAO,EAAC,yBAAyB,EAAC,0CAAuC;AAEzE;;;;;;GAMG;AACH,qBAAa,4BAA4B;IACvC,kEAAkE;IAClE,QAAQ,CAAC,gBAAgB,EAAE,uBAAuB,CAAC;IAEnD,sFAAsF;IACtF,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAa;IAEnD,6EAA6E;IAC7E,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAAC,CAAmB;IAE/D,gGAAgG;IAChG,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAa;IAEnD,mFAAmF;IACnF,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAa;IAErD,oFAAoF;IACpF,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAU;IAE7C,oFAAoF;IACpF,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAU;IAE7C,0FAA0F;IAC1F,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAU;IAE7C,kFAAkF;IAClF,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAU;IAE7C,+EAA+E;IAC/E,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAQ;IAE/B;;;;;OAKG;gBACS,gBAAgB,EAAE,uBAAuB,EAAE,OAAO,GAAE,qBAA0B;IA8D1F;;;;;OAKG;IACH,iBAAiB,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,EAAE;IAoC1D,wGAAwG;IACxG,kBAAkB,CAAC,SAAS,EAAE,SAAS,CAAC,MAAM,CAAC,GAAG,YAAY;IA4B9D,0FAA0F;IAC1F,gBAAgB,CAAC,OAAO,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC,MAAM,CAAC,GAAG,YAAY;IAiCxF,2FAA2F;IAC3F,OAAO,CAAC,YAAY;IAUpB,uFAAuF;IACvF,OAAO,CAAC,cAAc;CASvB"}
@@ -1,311 +0,0 @@
1
- // loaders.gl
2
- // SPDX-License-Identifier: MIT
3
- // Copyright (c) vis.gl contributors
4
- import { Vector3 } from '@math.gl/core';
5
- import { Ellipsoid } from '@math.gl/geospatial';
6
- import { ProjectionBuffer } from '@math.gl/projection/bulk';
7
- import { getGeoidModel, getSpatialProjectionEngine } from "./spatial-resource-registry.js";
8
- import { normalizeCrsIdentifier, WGS84_GEOCENTRIC_CRS, WGS84_GEOGRAPHIC_CRS } from "./normalize-crs-identifier.js";
9
- export { getSpatialCoordinateFrame } from "./get-spatial-coordinate-frame.js";
10
- /**
11
- * Deterministic coordinate transformer used by 3D tile format adapters.
12
- *
13
- * The transformer uses conventional `[x, y, z]` array order at its boundary. Format adapters are
14
- * responsible for mapping authority-axis order into their documented wire order. Requested
15
- * transformations fail when required definitions or geoid resources are unavailable.
16
- */
17
- export class SpatialCoordinateTransformer {
18
- /** Normalized spatial metadata describing this transformation. */
19
- spatialReference;
20
- /** Projection from the source CRS directly to the requested horizontal target CRS. */
21
- horizontalProjection;
22
- /** Reusable packed xyz projection for horizontal-only coordinate batches. */
23
- horizontalProjectionBuffer;
24
- /** Projection from the source CRS to geographic longitude, latitude, and ellipsoidal height. */
25
- geographicProjection;
26
- /** Projection from adjusted geographic coordinates to the requested output CRS. */
27
- heightOutputProjection;
28
- /** Whether source coordinates use the WGS84 geocentric frame handled by math.gl. */
29
- sourceIsGeocentric;
30
- /** Whether output coordinates use the WGS84 geocentric frame handled by math.gl. */
31
- outputIsGeocentric;
32
- /** Whether source coordinates already use conventional WGS84 longitude/latitude order. */
33
- sourceIsGeographic;
34
- /** Whether output coordinates use conventional WGS84 longitude/latitude order. */
35
- outputIsGeographic;
36
- /** Geoid model used to convert between ellipsoidal and orthometric heights. */
37
- geoid;
38
- /**
39
- * Creates a coordinate transformer.
40
- *
41
- * @param spatialReference - Format-discovered and option-normalized spatial metadata.
42
- * @param options - Application options containing an optional geoid model.
43
- */
44
- constructor(spatialReference, options = {}) {
45
- this.spatialReference = spatialReference;
46
- const projectionEngine = getSpatialProjectionEngine();
47
- validateTransformRequest(spatialReference);
48
- const outputCrs = spatialReference.targetCrs || spatialReference.sourceCrs;
49
- this.sourceIsGeocentric = isWgs84Geocentric(spatialReference.sourceCrs);
50
- this.outputIsGeocentric = isWgs84Geocentric(outputCrs);
51
- this.sourceIsGeographic = isWgs84Geographic(spatialReference.sourceCrs);
52
- this.outputIsGeographic = isWgs84Geographic(outputCrs);
53
- if (spatialReference.sourceCrs &&
54
- spatialReference.targetCrs &&
55
- !this.sourceIsGeocentric &&
56
- !this.outputIsGeocentric) {
57
- this.horizontalProjection = projectionEngine.createProjection({
58
- from: getHorizontalProjectionDefinition(spatialReference.sourceCrs),
59
- to: getHorizontalProjectionDefinition(spatialReference.targetCrs),
60
- enforceAxis: false
61
- });
62
- if (!requiresHeightTransformation(spatialReference)) {
63
- this.horizontalProjectionBuffer = new ProjectionBuffer({
64
- projection: this.horizontalProjection,
65
- dimension: 3
66
- });
67
- }
68
- }
69
- if (requiresHeightTransformation(spatialReference) ||
70
- this.sourceIsGeocentric ||
71
- this.outputIsGeocentric) {
72
- if (!this.sourceIsGeographic && !this.sourceIsGeocentric) {
73
- this.geographicProjection = projectionEngine.createProjection({
74
- from: getHorizontalProjectionDefinition(spatialReference.sourceCrs),
75
- to: WGS84_GEOGRAPHIC_CRS,
76
- enforceAxis: false
77
- });
78
- }
79
- if (!this.outputIsGeographic && !this.outputIsGeocentric) {
80
- this.heightOutputProjection = projectionEngine.createProjection({
81
- from: WGS84_GEOGRAPHIC_CRS,
82
- to: getHorizontalProjectionDefinition(outputCrs),
83
- enforceAxis: false
84
- });
85
- }
86
- }
87
- if (requiresHeightTransformation(spatialReference)) {
88
- this.geoid = resolveGeoid(options.geoidModel);
89
- if (!this.geoid) {
90
- const modelName = typeof options.geoidModel === 'string' ? ` "${options.geoidModel}"` : '';
91
- throw new Error(`Height conversion requires a registered geoid model${modelName}; ` +
92
- 'call registerGeoidModel() or pass a parsed Geoid instance');
93
- }
94
- }
95
- }
96
- /**
97
- * Transforms one `[x, y, z?]` coordinate while retaining additional components.
98
- *
99
- * @param coordinate - Source coordinate in the format adapter's normalized `x/y/z` order.
100
- * @returns A new transformed coordinate array.
101
- */
102
- transformPosition(coordinate) {
103
- if (coordinate.length < 2) {
104
- throw new Error('A spatial coordinate must contain at least x and y components');
105
- }
106
- const result = [...coordinate];
107
- if (requiresHeightTransformation(this.spatialReference) ||
108
- this.sourceIsGeocentric ||
109
- this.outputIsGeocentric) {
110
- if (result.length < 3 || !Number.isFinite(result[2])) {
111
- throw new Error('Three-dimensional CRS conversion requires a finite z coordinate');
112
- }
113
- const geographic = this.toGeographic(result);
114
- if (requiresHeightTransformation(this.spatialReference)) {
115
- const geoidUndulation = this.geoid.getHeight(geographic[1], geographic[0]);
116
- geographic[2] = transformHeight(geographic[2], geoidUndulation, this.spatialReference.heightReference, this.spatialReference.targetHeightReference);
117
- }
118
- const projected = this.fromGeographic(geographic);
119
- result.splice(0, projected.length, ...projected);
120
- return result;
121
- }
122
- if (this.horizontalProjection) {
123
- const projected = this.horizontalProjection.projectSync(result.slice(0, 3));
124
- result.splice(0, projected.length, ...projected);
125
- }
126
- return result;
127
- }
128
- /** Transform packed xyz positions into owned Float64 storage, batching finite horizontal transforms. */
129
- transformPositions(positions) {
130
- if (positions.length % 3 !== 0) {
131
- throw new Error('Packed spatial positions must contain a multiple of three components');
132
- }
133
- const transformedPositions = new Float64Array(positions.length);
134
- if (this.horizontalProjectionBuffer) {
135
- transformedPositions.set(positions);
136
- // The bulk API rejects nonfinite ordinates; preserve scalar behavior for those inputs.
137
- if (transformedPositions.every(Number.isFinite)) {
138
- return this.horizontalProjectionBuffer.projectFlatTo(transformedPositions, transformedPositions);
139
- }
140
- }
141
- for (let index = 0; index < positions.length; index += 3) {
142
- const transformed = this.transformPosition([
143
- Number(positions[index]),
144
- Number(positions[index + 1]),
145
- Number(positions[index + 2])
146
- ]);
147
- transformedPositions[index] = transformed[0];
148
- transformedPositions[index + 1] = transformed[1];
149
- transformedPositions[index + 2] = transformed[2];
150
- }
151
- return transformedPositions;
152
- }
153
- /** Transform packed xyz normals using a local finite-difference tangent approximation. */
154
- transformNormals(normals, positions) {
155
- if (normals.length !== positions.length || normals.length % 3 !== 0) {
156
- throw new Error('Spatial normals and positions must have matching xyz component counts');
157
- }
158
- const transformedNormals = new Float32Array(normals.length);
159
- const epsilon = 1e-5;
160
- for (let index = 0; index < normals.length; index += 3) {
161
- const position = [
162
- Number(positions[index]),
163
- Number(positions[index + 1]),
164
- Number(positions[index + 2])
165
- ];
166
- const normal = [
167
- Number(normals[index]),
168
- Number(normals[index + 1]),
169
- Number(normals[index + 2])
170
- ];
171
- const jacobian = getFiniteDifferenceJacobian(this, position, epsilon);
172
- const transformedNormal = inverseTransposeMultiply(jacobian, normal);
173
- const length = Math.hypot(...transformedNormal);
174
- if (length > 0 && Number.isFinite(length)) {
175
- transformedNormals[index] = transformedNormal[0] / length;
176
- transformedNormals[index + 1] = transformedNormal[1] / length;
177
- transformedNormals[index + 2] = transformedNormal[2] / length;
178
- }
179
- else {
180
- transformedNormals[index] = normal[0];
181
- transformedNormals[index + 1] = normal[1];
182
- transformedNormals[index + 2] = normal[2];
183
- }
184
- }
185
- return transformedNormals;
186
- }
187
- /** Convert one source coordinate to conventional WGS84 longitude, latitude, and height. */
188
- toGeographic(coordinate) {
189
- if (this.sourceIsGeocentric) {
190
- return Array.from(Ellipsoid.WGS84.cartesianToCartographic(new Vector3(coordinate)));
191
- }
192
- if (this.sourceIsGeographic) {
193
- return coordinate.slice(0, 3);
194
- }
195
- return this.geographicProjection.projectSync(coordinate.slice(0, 3));
196
- }
197
- /** Convert one conventional WGS84 geographic coordinate to the selected output CRS. */
198
- fromGeographic(coordinate) {
199
- if (this.outputIsGeocentric) {
200
- return Array.from(Ellipsoid.WGS84.cartographicToCartesian(new Vector3(coordinate)));
201
- }
202
- if (this.outputIsGeographic) {
203
- return coordinate.slice(0, 3);
204
- }
205
- return this.heightOutputProjection.projectSync(coordinate.slice(0, 3));
206
- }
207
- }
208
- function getFiniteDifferenceJacobian(transformer, position, epsilon) {
209
- const columns = [];
210
- for (let axis = 0; axis < 3; axis++) {
211
- const plus = position.slice();
212
- const minus = position.slice();
213
- plus[axis] += epsilon;
214
- minus[axis] -= epsilon;
215
- const plusPosition = transformer.transformPosition(plus);
216
- const minusPosition = transformer.transformPosition(minus);
217
- columns.push([
218
- (plusPosition[0] - minusPosition[0]) / (2 * epsilon),
219
- (plusPosition[1] - minusPosition[1]) / (2 * epsilon),
220
- (plusPosition[2] - minusPosition[2]) / (2 * epsilon)
221
- ]);
222
- }
223
- return columns;
224
- }
225
- function inverseTransposeMultiply(jacobianColumns, vector) {
226
- const [a, b, c] = jacobianColumns;
227
- const determinant = a[0] * (b[1] * c[2] - b[2] * c[1]) -
228
- b[0] * (a[1] * c[2] - a[2] * c[1]) +
229
- c[0] * (a[1] * b[2] - a[2] * b[1]);
230
- if (!Number.isFinite(determinant) || Math.abs(determinant) < 1e-15) {
231
- return vector;
232
- }
233
- const inverseTranspose = [
234
- [b[1] * c[2] - b[2] * c[1], a[2] * c[1] - a[1] * c[2], a[1] * b[2] - a[2] * b[1]],
235
- [b[2] * c[0] - b[0] * c[2], a[0] * c[2] - a[2] * c[0], a[2] * b[0] - a[0] * b[2]],
236
- [b[0] * c[1] - b[1] * c[0], a[1] * c[0] - a[0] * c[1], a[0] * b[1] - a[1] * b[0]]
237
- ];
238
- return inverseTranspose.map(row => (row[0] * vector[0] + row[1] * vector[1] + row[2] * vector[2]) / determinant);
239
- }
240
- /** Select the horizontal CRS while height conversion is handled separately. */
241
- function getHorizontalProjectionDefinition(definition) {
242
- if (!definition) {
243
- throw new Error('Cannot construct a projection because the CRS is unknown');
244
- }
245
- if (typeof definition !== 'string' && definition.type === 'CompoundCRS') {
246
- const horizontalComponents = definition.components.filter(component => component.type !== 'VerticalCRS');
247
- if (horizontalComponents.length !== 1) {
248
- throw new Error('CompoundCRS requires exactly one horizontal component');
249
- }
250
- return getHorizontalProjectionDefinition(horizontalComponents[0]);
251
- }
252
- return definition;
253
- }
254
- /** Validate that all requested operations can be represented by the current runtime. */
255
- function validateTransformRequest(spatialReference) {
256
- if (spatialReference.outputCoordinates === 'local-enu') {
257
- throw new Error('local-enu output requires a dataset-derived local origin and must be created by a tileset source');
258
- }
259
- if (spatialReference.outputCoordinates === 'target-crs' && !spatialReference.targetCrs) {
260
- throw new Error('target-crs output requires targetCrs');
261
- }
262
- if (!spatialReference.sourceCrs && spatialReference.status === 'unresolved') {
263
- throw new Error('Cannot transform coordinates because the source CRS is unknown');
264
- }
265
- if (requiresHeightTransformation(spatialReference) &&
266
- spatialReference.heightReference === 'unknown') {
267
- throw new Error('Cannot convert heights because the source height reference is unknown');
268
- }
269
- if (spatialReference.coordinateFrame === 'geocentric' &&
270
- !isWgs84Geocentric(spatialReference.sourceCrs)) {
271
- throw new Error('Only EPSG:4978 geocentric coordinates are supported by the current spatial transformer');
272
- }
273
- if (spatialReference.status === 'unresolved') {
274
- throw new Error('The requested spatial output cannot be resolved from the available metadata');
275
- }
276
- }
277
- /** Return whether a CRS definition identifies the WGS84 geocentric frame. */
278
- function isWgs84Geocentric(definition) {
279
- return (typeof definition === 'string' && normalizeCrsIdentifier(definition) === WGS84_GEOCENTRIC_CRS);
280
- }
281
- /** Return whether a CRS definition uses conventional WGS84 longitude/latitude coordinates. */
282
- function isWgs84Geographic(definition) {
283
- if (typeof definition !== 'string') {
284
- return false;
285
- }
286
- const identifier = normalizeCrsIdentifier(definition);
287
- return (identifier === WGS84_GEOGRAPHIC_CRS || identifier === 'EPSG:4979' || identifier === 'OGC:CRS84');
288
- }
289
- /** Return whether source and target height interpretations differ. */
290
- function requiresHeightTransformation(spatialReference) {
291
- const target = spatialReference.targetHeightReference;
292
- return target !== 'native' && target !== spatialReference.heightReference;
293
- }
294
- /** Resolve an inline or registered geoid model. */
295
- function resolveGeoid(model) {
296
- return typeof model === 'string' ? getGeoidModel(model) : model;
297
- }
298
- /** Apply the GeographicLib geoid undulation convention, h = H + N. */
299
- function transformHeight(height, geoidUndulation, source, target) {
300
- if (source === target || target === 'native') {
301
- return height;
302
- }
303
- if (source === 'orthometric' && target === 'ellipsoidal') {
304
- return height + geoidUndulation;
305
- }
306
- if (source === 'ellipsoidal' && target === 'orthometric') {
307
- return height - geoidUndulation;
308
- }
309
- throw new Error(`Unsupported height conversion from ${source} to ${target}`);
310
- }
311
- //# sourceMappingURL=spatial-coordinate-transformer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"spatial-coordinate-transformer.js","sourceRoot":"","sources":["../../src/spatial/spatial-coordinate-transformer.ts"],"names":[],"mappings":"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"}
@@ -1,47 +0,0 @@
1
- import { Geoid } from '@math.gl/geoid';
2
- import type { ProjectionEngine } from '@math.gl/projection';
3
- import type { ReadonlyCRSDefinition } from '@math.gl/crs';
4
- /** Returns the projection engine containing application-registered spatial resources. */
5
- export declare function getSpatialProjectionEngine(): ProjectionEngine;
6
- /**
7
- * Registers an application-supplied CRS alias for deterministic coordinate transformations.
8
- *
9
- * loaders.gl never downloads registry definitions implicitly.
10
- *
11
- * @param name - Identifier used by dataset metadata or application options.
12
- * @param definition - CRS definition understood by `@math.gl/projection`.
13
- */
14
- export declare function registerSpatialCrs(name: string, definition: ReadonlyCRSDefinition): void;
15
- /**
16
- * Registers an NTv2 datum grid used by a previously or subsequently registered CRS definition.
17
- *
18
- * @param name - Grid name referenced by the Proj4 definition.
19
- * @param data - Complete NTv2 grid bytes.
20
- */
21
- export declare function registerSpatialDatumGrid(name: string, data: ArrayBuffer): void;
22
- /**
23
- * Registers an already parsed geoid model.
24
- *
25
- * @param name - Stable application-local model name.
26
- * @param geoid - Parsed `@math.gl/geoid` model.
27
- */
28
- export declare function registerGeoidModel(name: string, geoid: Geoid): void;
29
- /**
30
- * Parses and registers a GeographicLib PGM geoid model.
31
- *
32
- * @param name - Stable application-local model name.
33
- * @param data - Complete PGM model bytes.
34
- * @param options - Interpolation options forwarded to `@math.gl/geoid`.
35
- * @returns The parsed and registered geoid model.
36
- */
37
- export declare function registerGeoidModelFromPgm(name: string, data: Uint8Array, options?: {
38
- cubic?: boolean;
39
- }): Geoid;
40
- /**
41
- * Returns a registered geoid model without initiating network access.
42
- *
43
- * @param name - Application-local model name.
44
- * @returns Registered model, or `undefined` when the application has not supplied it.
45
- */
46
- export declare function getGeoidModel(name: string): Geoid | undefined;
47
- //# sourceMappingURL=spatial-resource-registry.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"spatial-resource-registry.d.ts","sourceRoot":"","sources":["../../src/spatial/spatial-resource-registry.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,KAAK,EAAW,MAAM,gBAAgB,CAAC;AAE/C,OAAO,KAAK,EAAY,gBAAgB,EAAC,MAAM,qBAAqB,CAAC;AACrE,OAAO,KAAK,EAAC,qBAAqB,EAAC,MAAM,cAAc,CAAC;AAOxD,yFAAyF;AACzF,wBAAgB,0BAA0B,IAAI,gBAAgB,CAE7D;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,qBAAqB,GAAG,IAAI,CAIxF;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,IAAI,CAI9E;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI,CAGnE;AAED;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,UAAU,EAChB,OAAO,GAAE;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAM,GAC9B,KAAK,CAIP;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS,CAE7D"}
@@ -1,76 +0,0 @@
1
- // loaders.gl
2
- // SPDX-License-Identifier: MIT
3
- // Copyright (c) vis.gl contributors
4
- import { parsePGM } from '@math.gl/geoid';
5
- import { FullProjectionEngine, parseNTv2Grid } from '@math.gl/projection';
6
- const geoidModels = new Map();
7
- const projectionAliases = {};
8
- const datumGrids = {};
9
- let spatialProjectionEngine = new FullProjectionEngine();
10
- /** Returns the projection engine containing application-registered spatial resources. */
11
- export function getSpatialProjectionEngine() {
12
- return spatialProjectionEngine;
13
- }
14
- /**
15
- * Registers an application-supplied CRS alias for deterministic coordinate transformations.
16
- *
17
- * loaders.gl never downloads registry definitions implicitly.
18
- *
19
- * @param name - Identifier used by dataset metadata or application options.
20
- * @param definition - CRS definition understood by `@math.gl/projection`.
21
- */
22
- export function registerSpatialCrs(name, definition) {
23
- validateResourceName(name, 'CRS');
24
- projectionAliases[name] = definition;
25
- spatialProjectionEngine = new FullProjectionEngine({ aliases: projectionAliases, datumGrids });
26
- }
27
- /**
28
- * Registers an NTv2 datum grid used by a previously or subsequently registered CRS definition.
29
- *
30
- * @param name - Grid name referenced by the Proj4 definition.
31
- * @param data - Complete NTv2 grid bytes.
32
- */
33
- export function registerSpatialDatumGrid(name, data) {
34
- validateResourceName(name, 'datum grid');
35
- datumGrids[name] = parseNTv2Grid(data);
36
- spatialProjectionEngine = new FullProjectionEngine({ aliases: projectionAliases, datumGrids });
37
- }
38
- /**
39
- * Registers an already parsed geoid model.
40
- *
41
- * @param name - Stable application-local model name.
42
- * @param geoid - Parsed `@math.gl/geoid` model.
43
- */
44
- export function registerGeoidModel(name, geoid) {
45
- validateResourceName(name, 'geoid model');
46
- geoidModels.set(name, geoid);
47
- }
48
- /**
49
- * Parses and registers a GeographicLib PGM geoid model.
50
- *
51
- * @param name - Stable application-local model name.
52
- * @param data - Complete PGM model bytes.
53
- * @param options - Interpolation options forwarded to `@math.gl/geoid`.
54
- * @returns The parsed and registered geoid model.
55
- */
56
- export function registerGeoidModelFromPgm(name, data, options = {}) {
57
- const geoid = parsePGM(data, options);
58
- registerGeoidModel(name, geoid);
59
- return geoid;
60
- }
61
- /**
62
- * Returns a registered geoid model without initiating network access.
63
- *
64
- * @param name - Application-local model name.
65
- * @returns Registered model, or `undefined` when the application has not supplied it.
66
- */
67
- export function getGeoidModel(name) {
68
- return geoidModels.get(name);
69
- }
70
- /** Validate a caller-controlled spatial resource name. */
71
- function validateResourceName(name, resourceType) {
72
- if (!name.trim()) {
73
- throw new Error(`${resourceType} name must not be empty`);
74
- }
75
- }
76
- //# sourceMappingURL=spatial-resource-registry.js.map