@maplibre/mlt 0.0.1-alpha.7 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (256) hide show
  1. package/dist/{encodings → decoding}/decodingUtils.js +18 -33
  2. package/dist/decoding/decodingUtils.js.map +1 -0
  3. package/dist/decoding/decodingUtils.spec.d.ts +1 -0
  4. package/dist/decoding/decodingUtils.spec.js +125 -0
  5. package/dist/decoding/decodingUtils.spec.js.map +1 -0
  6. package/dist/{encodings → decoding}/fsstDecoder.js +1 -4
  7. package/dist/decoding/fsstDecoder.js.map +1 -0
  8. package/dist/decoding/fsstDecoder.spec.d.ts +1 -0
  9. package/dist/decoding/fsstDecoder.spec.js +36 -0
  10. package/dist/decoding/fsstDecoder.spec.js.map +1 -0
  11. package/dist/{encodings → decoding}/geometryDecoder.js +83 -101
  12. package/dist/decoding/geometryDecoder.js.map +1 -0
  13. package/dist/decoding/geometryDecoder.spec.d.ts +1 -0
  14. package/dist/decoding/geometryDecoder.spec.js +5 -0
  15. package/dist/decoding/geometryDecoder.spec.js.map +1 -0
  16. package/dist/decoding/geometryScaling.js +2 -0
  17. package/dist/decoding/geometryScaling.js.map +1 -0
  18. package/dist/{encodings → decoding}/intWrapper.js +2 -4
  19. package/dist/decoding/intWrapper.js.map +1 -0
  20. package/dist/{encodings → decoding}/integerDecodingUtils.d.ts +13 -0
  21. package/dist/{encodings → decoding}/integerDecodingUtils.js +127 -130
  22. package/dist/decoding/integerDecodingUtils.js.map +1 -0
  23. package/dist/decoding/integerDecodingUtils.spec.d.ts +1 -0
  24. package/dist/decoding/integerDecodingUtils.spec.js +194 -0
  25. package/dist/decoding/integerDecodingUtils.spec.js.map +1 -0
  26. package/dist/{encodings → decoding}/integerStreamDecoder.d.ts +1 -1
  27. package/dist/decoding/integerStreamDecoder.js +263 -0
  28. package/dist/decoding/integerStreamDecoder.js.map +1 -0
  29. package/dist/decoding/integerStreamDecoder.spec.d.ts +1 -0
  30. package/dist/decoding/integerStreamDecoder.spec.js +125 -0
  31. package/dist/decoding/integerStreamDecoder.spec.js.map +1 -0
  32. package/dist/{encodings → decoding}/propertyDecoder.d.ts +1 -1
  33. package/dist/decoding/propertyDecoder.js +140 -0
  34. package/dist/decoding/propertyDecoder.js.map +1 -0
  35. package/dist/decoding/propertyDecoder.spec.d.ts +1 -0
  36. package/dist/decoding/propertyDecoder.spec.js +682 -0
  37. package/dist/decoding/propertyDecoder.spec.js.map +1 -0
  38. package/dist/{encodings → decoding}/stringDecoder.d.ts +1 -1
  39. package/dist/decoding/stringDecoder.js +142 -0
  40. package/dist/decoding/stringDecoder.js.map +1 -0
  41. package/dist/decoding/stringDecoder.spec.d.ts +1 -0
  42. package/dist/decoding/stringDecoder.spec.js +311 -0
  43. package/dist/decoding/stringDecoder.spec.js.map +1 -0
  44. package/dist/index.d.ts +5 -4
  45. package/dist/index.js +5 -18
  46. package/dist/index.js.map +1 -1
  47. package/dist/metadata/tile/dictionaryType.js +2 -5
  48. package/dist/metadata/tile/dictionaryType.js.map +1 -1
  49. package/dist/metadata/tile/lengthType.js +2 -5
  50. package/dist/metadata/tile/lengthType.js.map +1 -1
  51. package/dist/metadata/tile/logicalLevelTechnique.js +2 -5
  52. package/dist/metadata/tile/logicalLevelTechnique.js.map +1 -1
  53. package/dist/metadata/tile/logicalStreamType.d.ts +3 -3
  54. package/dist/metadata/tile/logicalStreamType.js +4 -5
  55. package/dist/metadata/tile/logicalStreamType.js.map +1 -1
  56. package/dist/metadata/tile/mortonEncodedStreamMetadata.d.ts +6 -6
  57. package/dist/metadata/tile/mortonEncodedStreamMetadata.js +8 -10
  58. package/dist/metadata/tile/mortonEncodedStreamMetadata.js.map +1 -1
  59. package/dist/metadata/tile/offsetType.js +2 -5
  60. package/dist/metadata/tile/offsetType.js.map +1 -1
  61. package/dist/metadata/tile/physicalLevelTechnique.js +2 -5
  62. package/dist/metadata/tile/physicalLevelTechnique.js.map +1 -1
  63. package/dist/metadata/tile/physicalStreamType.js +2 -5
  64. package/dist/metadata/tile/physicalStreamType.js.map +1 -1
  65. package/dist/metadata/tile/rleEncodedStreamMetadata.d.ts +10 -6
  66. package/dist/metadata/tile/rleEncodedStreamMetadata.js +14 -10
  67. package/dist/metadata/tile/rleEncodedStreamMetadata.js.map +1 -1
  68. package/dist/metadata/tile/scalarType.js +2 -5
  69. package/dist/metadata/tile/scalarType.js.map +1 -1
  70. package/dist/metadata/tile/streamMetadata.d.ts +11 -5
  71. package/dist/metadata/tile/streamMetadata.js +35 -24
  72. package/dist/metadata/tile/streamMetadata.js.map +1 -1
  73. package/dist/metadata/tile/streamMetadataDecoder.d.ts +2 -2
  74. package/dist/metadata/tile/streamMetadataDecoder.js +13 -17
  75. package/dist/metadata/tile/streamMetadataDecoder.js.map +1 -1
  76. package/dist/metadata/tileset/embeddedTilesetMetadataDecoder.d.ts +2 -2
  77. package/dist/metadata/tileset/embeddedTilesetMetadataDecoder.js +40 -32
  78. package/dist/metadata/tileset/embeddedTilesetMetadataDecoder.js.map +1 -1
  79. package/dist/metadata/tileset/tilesetMetadata.d.ts +80 -0
  80. package/dist/metadata/tileset/tilesetMetadata.js +29 -0
  81. package/dist/metadata/tileset/tilesetMetadata.js.map +1 -0
  82. package/dist/metadata/tileset/typeMap.d.ts +1 -1
  83. package/dist/metadata/tileset/typeMap.js +63 -59
  84. package/dist/metadata/tileset/typeMap.js.map +1 -1
  85. package/dist/mltDecoder.d.ts +1 -1
  86. package/dist/mltDecoder.js +58 -64
  87. package/dist/mltDecoder.js.map +1 -1
  88. package/dist/mltDecoder.spec.d.ts +1 -0
  89. package/dist/mltDecoder.spec.js +152 -0
  90. package/dist/mltDecoder.spec.js.map +1 -0
  91. package/dist/mltMetadata.js +4 -7
  92. package/dist/mltMetadata.js.map +1 -1
  93. package/dist/vector/constant/intConstVector.d.ts +0 -13
  94. package/dist/vector/constant/intConstVector.js +2 -81
  95. package/dist/vector/constant/intConstVector.js.map +1 -1
  96. package/dist/vector/constant/longConstVector.d.ts +0 -13
  97. package/dist/vector/constant/longConstVector.js +2 -79
  98. package/dist/vector/constant/longConstVector.js.map +1 -1
  99. package/dist/vector/dictionary/stringDictionaryVector.d.ts +0 -14
  100. package/dist/vector/dictionary/stringDictionaryVector.js +6 -167
  101. package/dist/vector/dictionary/stringDictionaryVector.js.map +1 -1
  102. package/dist/vector/featureTable.d.ts +4 -0
  103. package/dist/vector/featureTable.js +48 -12
  104. package/dist/vector/featureTable.js.map +1 -1
  105. package/dist/vector/fixedSizeVector.js +2 -9
  106. package/dist/vector/fixedSizeVector.js.map +1 -1
  107. package/dist/vector/flat/bitVector.js +3 -4
  108. package/dist/vector/flat/bitVector.js.map +1 -1
  109. package/dist/vector/flat/booleanFlatVector.d.ts +0 -13
  110. package/dist/vector/flat/booleanFlatVector.js +3 -46
  111. package/dist/vector/flat/booleanFlatVector.js.map +1 -1
  112. package/dist/vector/flat/doubleFlatVector.d.ts +0 -13
  113. package/dist/vector/flat/doubleFlatVector.js +2 -101
  114. package/dist/vector/flat/doubleFlatVector.js.map +1 -1
  115. package/dist/vector/flat/floatFlatVector.d.ts +0 -13
  116. package/dist/vector/flat/floatFlatVector.js +2 -101
  117. package/dist/vector/flat/floatFlatVector.js.map +1 -1
  118. package/dist/vector/flat/floatFlatVector.spec.d.ts +1 -0
  119. package/dist/vector/flat/floatFlatVector.spec.js +14 -0
  120. package/dist/vector/flat/floatFlatVector.spec.js.map +1 -0
  121. package/dist/vector/flat/intFlatVector.d.ts +0 -13
  122. package/dist/vector/flat/intFlatVector.js +2 -115
  123. package/dist/vector/flat/intFlatVector.js.map +1 -1
  124. package/dist/vector/flat/intFlatVector.spec.d.ts +1 -0
  125. package/dist/vector/flat/intFlatVector.spec.js +15 -0
  126. package/dist/vector/flat/intFlatVector.spec.js.map +1 -0
  127. package/dist/vector/flat/longFlatVector.d.ts +0 -13
  128. package/dist/vector/flat/longFlatVector.js +2 -116
  129. package/dist/vector/flat/longFlatVector.js.map +1 -1
  130. package/dist/vector/flat/longFlatVector.spec.d.ts +1 -0
  131. package/dist/vector/flat/longFlatVector.spec.js +14 -0
  132. package/dist/vector/flat/longFlatVector.spec.js.map +1 -0
  133. package/dist/vector/flat/stringFlatVector.d.ts +0 -13
  134. package/dist/vector/flat/stringFlatVector.js +5 -155
  135. package/dist/vector/flat/stringFlatVector.js.map +1 -1
  136. package/dist/vector/fsst-dictionary/stringFsstDictionaryVector.d.ts +0 -13
  137. package/dist/vector/fsst-dictionary/stringFsstDictionaryVector.js +14 -51
  138. package/dist/vector/fsst-dictionary/stringFsstDictionaryVector.js.map +1 -1
  139. package/dist/vector/fsst-dictionary/stringFsstDictionaryVector.spec.d.ts +1 -0
  140. package/dist/vector/fsst-dictionary/stringFsstDictionaryVector.spec.js +28 -0
  141. package/dist/vector/fsst-dictionary/stringFsstDictionaryVector.spec.js.map +1 -0
  142. package/dist/vector/geometry/constGeometryVector.d.ts +0 -4
  143. package/dist/vector/geometry/constGeometryVector.js +9 -30
  144. package/dist/vector/geometry/constGeometryVector.js.map +1 -1
  145. package/dist/vector/geometry/constGpuVector.d.ts +0 -4
  146. package/dist/vector/geometry/constGpuVector.js +4 -25
  147. package/dist/vector/geometry/constGpuVector.js.map +1 -1
  148. package/dist/vector/geometry/flatGeometryVector.d.ts +0 -4
  149. package/dist/vector/geometry/flatGeometryVector.js +8 -36
  150. package/dist/vector/geometry/flatGeometryVector.js.map +1 -1
  151. package/dist/vector/geometry/flatGpuVector.d.ts +0 -4
  152. package/dist/vector/geometry/flatGpuVector.js +3 -29
  153. package/dist/vector/geometry/flatGpuVector.js.map +1 -1
  154. package/dist/vector/geometry/geometryType.js +4 -7
  155. package/dist/vector/geometry/geometryType.js.map +1 -1
  156. package/dist/vector/geometry/geometryVector.d.ts +8 -7
  157. package/dist/vector/geometry/geometryVector.js +13 -14
  158. package/dist/vector/geometry/geometryVector.js.map +1 -1
  159. package/dist/vector/geometry/geometryVectorConverter.d.ts +2 -2
  160. package/dist/vector/geometry/geometryVectorConverter.js +38 -41
  161. package/dist/vector/geometry/geometryVectorConverter.js.map +1 -1
  162. package/dist/vector/geometry/gpuVector.d.ts +8 -7
  163. package/dist/vector/geometry/gpuVector.js +97 -13
  164. package/dist/vector/geometry/gpuVector.js.map +1 -1
  165. package/dist/vector/geometry/spaceFillingCurve.js +10 -5
  166. package/dist/vector/geometry/spaceFillingCurve.js.map +1 -1
  167. package/dist/vector/geometry/topologyVector.js +4 -4
  168. package/dist/vector/geometry/topologyVector.js.map +1 -1
  169. package/dist/vector/geometry/vertexBufferType.js +2 -5
  170. package/dist/vector/geometry/vertexBufferType.js.map +1 -1
  171. package/dist/vector/geometry/zOrderCurve.d.ts +1 -1
  172. package/dist/vector/geometry/zOrderCurve.js +3 -9
  173. package/dist/vector/geometry/zOrderCurve.js.map +1 -1
  174. package/dist/vector/geometry/zOrderCurve.spec.d.ts +1 -0
  175. package/dist/vector/geometry/zOrderCurve.spec.js +14 -0
  176. package/dist/vector/geometry/zOrderCurve.spec.js.map +1 -0
  177. package/dist/vector/intVector.js +1 -2
  178. package/dist/vector/sequence/intSequenceVector.d.ts +0 -13
  179. package/dist/vector/sequence/intSequenceVector.js +2 -64
  180. package/dist/vector/sequence/intSequenceVector.js.map +1 -1
  181. package/dist/vector/sequence/longSequenceVector.d.ts +0 -13
  182. package/dist/vector/sequence/longSequenceVector.js +2 -49
  183. package/dist/vector/sequence/longSequenceVector.js.map +1 -1
  184. package/dist/vector/sequence/longSequenceVektor.spec.d.ts +1 -0
  185. package/dist/vector/sequence/longSequenceVektor.spec.js +11 -0
  186. package/dist/vector/sequence/longSequenceVektor.spec.js.map +1 -0
  187. package/dist/vector/sequence/sequenceVector.js +3 -9
  188. package/dist/vector/sequence/sequenceVector.js.map +1 -1
  189. package/dist/vector/variableSizeVector.js +3 -9
  190. package/dist/vector/variableSizeVector.js.map +1 -1
  191. package/dist/vector/vector.d.ts +0 -17
  192. package/dist/vector/vector.js +6 -49
  193. package/dist/vector/vector.js.map +1 -1
  194. package/dist/vector/vectorType.js +2 -5
  195. package/dist/vector/vectorType.js.map +1 -1
  196. package/package.json +10 -31
  197. package/dist/encodings/decodingUtils.js.map +0 -1
  198. package/dist/encodings/doubleDecoder.d.ts +0 -4
  199. package/dist/encodings/doubleDecoder.js +0 -22
  200. package/dist/encodings/doubleDecoder.js.map +0 -1
  201. package/dist/encodings/fastpfor/bitpacking.d.ts +0 -51
  202. package/dist/encodings/fastpfor/bitpacking.js +0 -4444
  203. package/dist/encodings/fastpfor/bitpacking.js.map +0 -1
  204. package/dist/encodings/fastpfor/codec.d.ts +0 -19
  205. package/dist/encodings/fastpfor/codec.js +0 -3
  206. package/dist/encodings/fastpfor/codec.js.map +0 -1
  207. package/dist/encodings/fastpfor/fastpfor.d.ts +0 -38
  208. package/dist/encodings/fastpfor/fastpfor.js +0 -123
  209. package/dist/encodings/fastpfor/fastpfor.js.map +0 -1
  210. package/dist/encodings/fastpfor/index.d.ts +0 -20
  211. package/dist/encodings/fastpfor/index.js +0 -47
  212. package/dist/encodings/fastpfor/index.js.map +0 -1
  213. package/dist/encodings/fastpfor/util.d.ts +0 -2
  214. package/dist/encodings/fastpfor/util.js +0 -16
  215. package/dist/encodings/fastpfor/util.js.map +0 -1
  216. package/dist/encodings/fastpfor/varint.d.ts +0 -18
  217. package/dist/encodings/fastpfor/varint.js +0 -125
  218. package/dist/encodings/fastpfor/varint.js.map +0 -1
  219. package/dist/encodings/fsstDecoder.js.map +0 -1
  220. package/dist/encodings/geometryDecoder.js.map +0 -1
  221. package/dist/encodings/geometryScaling.js +0 -3
  222. package/dist/encodings/geometryScaling.js.map +0 -1
  223. package/dist/encodings/intWrapper.js.map +0 -1
  224. package/dist/encodings/integerDecodingUtils.js.map +0 -1
  225. package/dist/encodings/integerStreamDecoder.js +0 -254
  226. package/dist/encodings/integerStreamDecoder.js.map +0 -1
  227. package/dist/encodings/propertyDecoder.js +0 -146
  228. package/dist/encodings/propertyDecoder.js.map +0 -1
  229. package/dist/encodings/stringDecoder.js +0 -147
  230. package/dist/encodings/stringDecoder.js.map +0 -1
  231. package/dist/metadata/tileset/tilesetMetadata.g.d.ts +0 -418
  232. package/dist/metadata/tileset/tilesetMetadata.g.js +0 -476
  233. package/dist/metadata/tileset/tilesetMetadata.g.js.map +0 -1
  234. package/dist/vector/filter/constSelectionVector.d.ts +0 -0
  235. package/dist/vector/filter/constSelectionVector.js +0 -1
  236. package/dist/vector/filter/constSelectionVector.js.map +0 -1
  237. package/dist/vector/filter/flatSelectionVector.d.ts +0 -16
  238. package/dist/vector/filter/flatSelectionVector.js +0 -42
  239. package/dist/vector/filter/flatSelectionVector.js.map +0 -1
  240. package/dist/vector/filter/selectionVector.d.ts +0 -8
  241. package/dist/vector/filter/selectionVector.js +0 -3
  242. package/dist/vector/filter/selectionVector.js.map +0 -1
  243. package/dist/vector/filter/selectionVectorUtils.d.ts +0 -7
  244. package/dist/vector/filter/selectionVectorUtils.js +0 -44
  245. package/dist/vector/filter/selectionVectorUtils.js.map +0 -1
  246. package/dist/vector/filter/sequenceSelectionVector.d.ts +0 -0
  247. package/dist/vector/filter/sequenceSelectionVector.js +0 -1
  248. package/dist/vector/filter/sequenceSelectionVector.js.map +0 -1
  249. package/dist/vector/geometry/point.d.ts +0 -195
  250. package/dist/vector/geometry/point.js +0 -283
  251. package/dist/vector/geometry/point.js.map +0 -1
  252. /package/dist/{encodings → decoding}/decodingUtils.d.ts +0 -0
  253. /package/dist/{encodings → decoding}/fsstDecoder.d.ts +0 -0
  254. /package/dist/{encodings → decoding}/geometryDecoder.d.ts +0 -0
  255. /package/dist/{encodings → decoding}/geometryScaling.d.ts +0 -0
  256. /package/dist/{encodings → decoding}/intWrapper.d.ts +0 -0
@@ -1,25 +1,19 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.decodeGeometryColumn = decodeGeometryColumn;
7
- const streamMetadataDecoder_1 = require("../metadata/tile/streamMetadataDecoder");
8
- const integerStreamDecoder_1 = __importDefault(require("./integerStreamDecoder"));
9
- const vectorType_1 = require("../vector/vectorType");
10
- const physicalStreamType_1 = require("../metadata/tile/physicalStreamType");
11
- const lengthType_1 = require("../metadata/tile/lengthType");
12
- const dictionaryType_1 = require("../metadata/tile/dictionaryType");
13
- const topologyVector_1 = __importDefault(require("../vector/geometry/topologyVector"));
14
- const constGeometryVector_1 = require("../vector/geometry/constGeometryVector");
15
- const flatGeometryVector_1 = require("../vector/geometry/flatGeometryVector");
16
- const offsetType_1 = require("../metadata/tile/offsetType");
17
- const constGpuVector_1 = require("../vector/geometry/constGpuVector");
18
- const flatGpuVector_1 = require("../vector/geometry/flatGpuVector");
1
+ import { StreamMetadataDecoder } from "../metadata/tile/streamMetadataDecoder";
2
+ import IntegerStreamDecoder from "./integerStreamDecoder";
3
+ import { VectorType } from "../vector/vectorType";
4
+ import { PhysicalStreamType } from "../metadata/tile/physicalStreamType";
5
+ import { LengthType } from "../metadata/tile/lengthType";
6
+ import { DictionaryType } from "../metadata/tile/dictionaryType";
7
+ import TopologyVector from "../vector/geometry/topologyVector";
8
+ import { ConstGeometryVector } from "../vector/geometry/constGeometryVector";
9
+ import { FlatGeometryVector } from "../vector/geometry/flatGeometryVector";
10
+ import { OffsetType } from "../metadata/tile/offsetType";
11
+ import { ConstGpuVector } from "../vector/geometry/constGpuVector";
12
+ import { FlatGpuVector } from "../vector/geometry/flatGpuVector";
19
13
  // TODO: get rid of numFeatures parameter
20
- function decodeGeometryColumn(tile, numStreams, offset, numFeatures, scalingData) {
21
- const geometryTypeMetadata = streamMetadataDecoder_1.StreamMetadataDecoder.decode(tile, offset);
22
- const geometryTypesVectorType = integerStreamDecoder_1.default.getVectorType(geometryTypeMetadata, numFeatures);
14
+ export function decodeGeometryColumn(tile, numStreams, offset, numFeatures, scalingData) {
15
+ const geometryTypeMetadata = StreamMetadataDecoder.decode(tile, offset);
16
+ const geometryTypesVectorType = IntegerStreamDecoder.getVectorType(geometryTypeMetadata, numFeatures, tile, offset);
23
17
  let geometryOffsets = null;
24
18
  let partOffsets = null;
25
19
  let ringOffsets = null;
@@ -30,54 +24,49 @@ function decodeGeometryColumn(tile, numStreams, offset, numFeatures, scalingData
30
24
  // in one FeatureTable?
31
25
  let triangleOffsets = null;
32
26
  let indexBuffer = null;
33
- if (geometryTypesVectorType === vectorType_1.VectorType.CONST) {
27
+ if (geometryTypesVectorType === VectorType.CONST) {
34
28
  /* All geometries in the colum have the same geometry type */
35
- const geometryType = integerStreamDecoder_1.default.decodeConstIntStream(tile, offset, geometryTypeMetadata, false);
29
+ const geometryType = IntegerStreamDecoder.decodeConstIntStream(tile, offset, geometryTypeMetadata, false);
36
30
  for (let i = 0; i < numStreams - 1; i++) {
37
- const geometryStreamMetadata = streamMetadataDecoder_1.StreamMetadataDecoder.decode(tile, offset);
31
+ const geometryStreamMetadata = StreamMetadataDecoder.decode(tile, offset);
38
32
  switch (geometryStreamMetadata.physicalStreamType) {
39
- case physicalStreamType_1.PhysicalStreamType.LENGTH:
33
+ case PhysicalStreamType.LENGTH:
40
34
  switch (geometryStreamMetadata.logicalStreamType.lengthType) {
41
- case lengthType_1.LengthType.GEOMETRIES:
42
- geometryOffsets = integerStreamDecoder_1.default.decodeLengthStreamToOffsetBuffer(tile, offset, geometryStreamMetadata);
35
+ case LengthType.GEOMETRIES:
36
+ geometryOffsets = IntegerStreamDecoder.decodeLengthStreamToOffsetBuffer(tile, offset, geometryStreamMetadata);
43
37
  break;
44
- case lengthType_1.LengthType.PARTS:
45
- partOffsets =
46
- integerStreamDecoder_1.default.decodeLengthStreamToOffsetBuffer(tile, offset, geometryStreamMetadata);
38
+ case LengthType.PARTS:
39
+ partOffsets = IntegerStreamDecoder.decodeLengthStreamToOffsetBuffer(tile, offset, geometryStreamMetadata);
47
40
  break;
48
- case lengthType_1.LengthType.RINGS:
49
- ringOffsets =
50
- integerStreamDecoder_1.default.decodeLengthStreamToOffsetBuffer(tile, offset, geometryStreamMetadata);
41
+ case LengthType.RINGS:
42
+ ringOffsets = IntegerStreamDecoder.decodeLengthStreamToOffsetBuffer(tile, offset, geometryStreamMetadata);
51
43
  break;
52
- case lengthType_1.LengthType.TRIANGLES:
53
- triangleOffsets = integerStreamDecoder_1.default.decodeLengthStreamToOffsetBuffer(tile, offset, geometryStreamMetadata);
44
+ case LengthType.TRIANGLES:
45
+ triangleOffsets = IntegerStreamDecoder.decodeLengthStreamToOffsetBuffer(tile, offset, geometryStreamMetadata);
54
46
  }
55
47
  break;
56
- case physicalStreamType_1.PhysicalStreamType.OFFSET: {
48
+ case PhysicalStreamType.OFFSET: {
57
49
  switch (geometryStreamMetadata.logicalStreamType.offsetType) {
58
- case offsetType_1.OffsetType.VERTEX:
59
- vertexOffsets =
60
- integerStreamDecoder_1.default.decodeIntStream(tile, offset, geometryStreamMetadata, false);
50
+ case OffsetType.VERTEX:
51
+ vertexOffsets = IntegerStreamDecoder.decodeIntStream(tile, offset, geometryStreamMetadata, false);
61
52
  break;
62
- case offsetType_1.OffsetType.INDEX:
63
- indexBuffer =
64
- integerStreamDecoder_1.default.decodeIntStream(tile, offset, geometryStreamMetadata, false);
53
+ case OffsetType.INDEX:
54
+ indexBuffer = IntegerStreamDecoder.decodeIntStream(tile, offset, geometryStreamMetadata, false);
65
55
  break;
66
56
  }
67
57
  break;
68
58
  }
69
- case physicalStreamType_1.PhysicalStreamType.DATA: {
70
- if (dictionaryType_1.DictionaryType.VERTEX === geometryStreamMetadata.logicalStreamType.dictionaryType) {
71
- vertexBuffer =
72
- integerStreamDecoder_1.default.decodeIntStream(tile, offset, geometryStreamMetadata, true, scalingData);
59
+ case PhysicalStreamType.DATA: {
60
+ if (DictionaryType.VERTEX === geometryStreamMetadata.logicalStreamType.dictionaryType) {
61
+ vertexBuffer = IntegerStreamDecoder.decodeIntStream(tile, offset, geometryStreamMetadata, true, scalingData);
73
62
  }
74
63
  else {
75
64
  const mortonMetadata = geometryStreamMetadata;
76
65
  mortonSettings = {
77
66
  numBits: mortonMetadata.numBits(),
78
- coordinateShift: mortonMetadata.coordinateShift()
67
+ coordinateShift: mortonMetadata.coordinateShift(),
79
68
  };
80
- vertexBuffer = integerStreamDecoder_1.default.decodeIntStream(tile, offset, geometryStreamMetadata, false, scalingData);
69
+ vertexBuffer = IntegerStreamDecoder.decodeIntStream(tile, offset, geometryStreamMetadata, false, scalingData);
81
70
  }
82
71
  break;
83
72
  }
@@ -86,71 +75,66 @@ function decodeGeometryColumn(tile, numStreams, offset, numFeatures, scalingData
86
75
  if (indexBuffer !== null) {
87
76
  if (geometryOffsets != null || partOffsets != null) {
88
77
  /* Case when the indices of a Polygon outline are encoded in the tile */
89
- const topologyVector = new topologyVector_1.default(geometryOffsets, partOffsets, ringOffsets);
90
- return constGpuVector_1.ConstGpuVector.create(numFeatures, geometryType, triangleOffsets, indexBuffer, vertexBuffer, topologyVector);
78
+ const topologyVector = new TopologyVector(geometryOffsets, partOffsets, ringOffsets);
79
+ return ConstGpuVector.create(numFeatures, geometryType, triangleOffsets, indexBuffer, vertexBuffer, topologyVector);
91
80
  }
92
81
  /* Case when the no Polygon outlines are encoded in the tile */
93
- return constGpuVector_1.ConstGpuVector.create(numFeatures, geometryType, triangleOffsets, indexBuffer, vertexBuffer);
82
+ return ConstGpuVector.create(numFeatures, geometryType, triangleOffsets, indexBuffer, vertexBuffer);
94
83
  }
95
- return mortonSettings === null ?
96
- /* Currently only 2D coordinates (Vec2) are implemented in the encoder */
97
- constGeometryVector_1.ConstGeometryVector.create(numFeatures, geometryType, new topologyVector_1.default(geometryOffsets, partOffsets, ringOffsets), vertexOffsets, vertexBuffer) :
98
- constGeometryVector_1.ConstGeometryVector.createMortonEncoded(numFeatures, geometryType, new topologyVector_1.default(geometryOffsets, partOffsets, ringOffsets), vertexOffsets, vertexBuffer, mortonSettings);
84
+ return mortonSettings === null
85
+ ? /* Currently only 2D coordinates (Vec2) are implemented in the encoder */
86
+ ConstGeometryVector.create(numFeatures, geometryType, new TopologyVector(geometryOffsets, partOffsets, ringOffsets), vertexOffsets, vertexBuffer)
87
+ : ConstGeometryVector.createMortonEncoded(numFeatures, geometryType, new TopologyVector(geometryOffsets, partOffsets, ringOffsets), vertexOffsets, vertexBuffer, mortonSettings);
99
88
  }
100
89
  /* Different geometry types are mixed in the geometry column */
101
- const geometryTypeVector = integerStreamDecoder_1.default.decodeIntStream(tile, offset, geometryTypeMetadata, false);
90
+ const geometryTypeVector = IntegerStreamDecoder.decodeIntStream(tile, offset, geometryTypeMetadata, false);
102
91
  for (let i = 0; i < numStreams - 1; i++) {
103
- const geometryStreamMetadata = streamMetadataDecoder_1.StreamMetadataDecoder.decode(tile, offset);
92
+ const geometryStreamMetadata = StreamMetadataDecoder.decode(tile, offset);
104
93
  switch (geometryStreamMetadata.physicalStreamType) {
105
- case physicalStreamType_1.PhysicalStreamType.LENGTH:
94
+ case PhysicalStreamType.LENGTH:
106
95
  switch (geometryStreamMetadata.logicalStreamType.lengthType) {
107
- case lengthType_1.LengthType.GEOMETRIES:
108
- geometryOffsets =
109
- integerStreamDecoder_1.default.decodeIntStream(tile, offset, geometryStreamMetadata, false);
96
+ case LengthType.GEOMETRIES:
97
+ geometryOffsets = IntegerStreamDecoder.decodeIntStream(tile, offset, geometryStreamMetadata, false);
110
98
  break;
111
- case lengthType_1.LengthType.PARTS:
112
- partOffsets =
113
- integerStreamDecoder_1.default.decodeIntStream(tile, offset, geometryStreamMetadata, false);
99
+ case LengthType.PARTS:
100
+ partOffsets = IntegerStreamDecoder.decodeIntStream(tile, offset, geometryStreamMetadata, false);
114
101
  break;
115
- case lengthType_1.LengthType.RINGS:
116
- ringOffsets =
117
- integerStreamDecoder_1.default.decodeIntStream(tile, offset, geometryStreamMetadata, false);
102
+ case LengthType.RINGS:
103
+ ringOffsets = IntegerStreamDecoder.decodeIntStream(tile, offset, geometryStreamMetadata, false);
118
104
  break;
119
- case lengthType_1.LengthType.TRIANGLES:
120
- triangleOffsets = integerStreamDecoder_1.default.decodeLengthStreamToOffsetBuffer(tile, offset, geometryStreamMetadata);
105
+ case LengthType.TRIANGLES:
106
+ triangleOffsets = IntegerStreamDecoder.decodeLengthStreamToOffsetBuffer(tile, offset, geometryStreamMetadata);
121
107
  }
122
108
  break;
123
- case physicalStreamType_1.PhysicalStreamType.OFFSET:
109
+ case PhysicalStreamType.OFFSET:
124
110
  switch (geometryStreamMetadata.logicalStreamType.offsetType) {
125
- case offsetType_1.OffsetType.VERTEX:
126
- vertexOffsets =
127
- integerStreamDecoder_1.default.decodeIntStream(tile, offset, geometryStreamMetadata, false);
111
+ case OffsetType.VERTEX:
112
+ vertexOffsets = IntegerStreamDecoder.decodeIntStream(tile, offset, geometryStreamMetadata, false);
128
113
  break;
129
- case offsetType_1.OffsetType.INDEX:
130
- indexBuffer =
131
- integerStreamDecoder_1.default.decodeIntStream(tile, offset, geometryStreamMetadata, false);
114
+ case OffsetType.INDEX:
115
+ indexBuffer = IntegerStreamDecoder.decodeIntStream(tile, offset, geometryStreamMetadata, false);
132
116
  break;
133
117
  }
134
118
  break;
135
- case physicalStreamType_1.PhysicalStreamType.DATA:
136
- if (dictionaryType_1.DictionaryType.VERTEX === geometryStreamMetadata.logicalStreamType.dictionaryType) {
137
- vertexBuffer =
138
- integerStreamDecoder_1.default.decodeIntStream(tile, offset, geometryStreamMetadata, true, scalingData);
119
+ case PhysicalStreamType.DATA:
120
+ if (DictionaryType.VERTEX === geometryStreamMetadata.logicalStreamType.dictionaryType) {
121
+ vertexBuffer = IntegerStreamDecoder.decodeIntStream(tile, offset, geometryStreamMetadata, true, scalingData);
139
122
  }
140
123
  else {
141
124
  const mortonMetadata = geometryStreamMetadata;
142
- mortonSettings = { numBits: mortonMetadata.numBits(),
143
- coordinateShift: mortonMetadata.coordinateShift() };
144
- vertexBuffer =
145
- integerStreamDecoder_1.default.decodeIntStream(tile, offset, geometryStreamMetadata, false, scalingData);
125
+ mortonSettings = {
126
+ numBits: mortonMetadata.numBits(),
127
+ coordinateShift: mortonMetadata.coordinateShift(),
128
+ };
129
+ vertexBuffer = IntegerStreamDecoder.decodeIntStream(tile, offset, geometryStreamMetadata, false, scalingData);
146
130
  }
147
131
  break;
148
132
  }
149
133
  }
150
134
  if (indexBuffer !== null && partOffsets === null) {
151
135
  /* Case when the indices of a Polygon outline are not encoded in the data so no
152
- * topology data are present in the tile */
153
- return flatGpuVector_1.FlatGpuVector.create(geometryTypeVector, triangleOffsets, indexBuffer, vertexBuffer);
136
+ * topology data are present in the tile */
137
+ return FlatGpuVector.create(geometryTypeVector, triangleOffsets, indexBuffer, vertexBuffer);
154
138
  }
155
139
  // TODO: refactor the following instructions -> decode in one pass for performance reasons
156
140
  /* Calculate the offsets from the length buffer for util access */
@@ -161,8 +145,7 @@ function decodeGeometryColumn(tile, numStreams, offset, numFeatures, scalingData
161
145
  ringOffsets = decodeLevel2LengthStream(geometryTypeVector, geometryOffsets, partOffsets, ringOffsets);
162
146
  }
163
147
  else if (partOffsets !== null) {
164
- partOffsets =
165
- decodeLevel1WithoutRingBufferLengthStream(geometryTypeVector, geometryOffsets, partOffsets);
148
+ partOffsets = decodeLevel1WithoutRingBufferLengthStream(geometryTypeVector, geometryOffsets, partOffsets);
166
149
  }
167
150
  }
168
151
  else if (partOffsets !== null && ringOffsets !== null) {
@@ -174,11 +157,11 @@ function decodeGeometryColumn(tile, numStreams, offset, numFeatures, scalingData
174
157
  }
175
158
  if (indexBuffer !== null) {
176
159
  /* Case when the indices of a Polygon outline are encoded in the tile */
177
- return flatGpuVector_1.FlatGpuVector.create(geometryTypeVector, triangleOffsets, indexBuffer, vertexBuffer, new topologyVector_1.default(geometryOffsets, partOffsets, ringOffsets));
160
+ return FlatGpuVector.create(geometryTypeVector, triangleOffsets, indexBuffer, vertexBuffer, new TopologyVector(geometryOffsets, partOffsets, ringOffsets));
178
161
  }
179
- return mortonSettings === null ? /* Currently only 2D coordinates (Vec2) are implemented in the encoder */
180
- flatGeometryVector_1.FlatGeometryVector.create(geometryTypeVector, new topologyVector_1.default(geometryOffsets, partOffsets, ringOffsets), vertexOffsets, vertexBuffer)
181
- : flatGeometryVector_1.FlatGeometryVector.createMortonEncoded(geometryTypeVector, new topologyVector_1.default(geometryOffsets, partOffsets, ringOffsets), vertexOffsets, vertexBuffer, mortonSettings);
162
+ return mortonSettings === null /* Currently only 2D coordinates (Vec2) are implemented in the encoder */
163
+ ? FlatGeometryVector.create(geometryTypeVector, new TopologyVector(geometryOffsets, partOffsets, ringOffsets), vertexOffsets, vertexBuffer)
164
+ : FlatGeometryVector.createMortonEncoded(geometryTypeVector, new TopologyVector(geometryOffsets, partOffsets, ringOffsets), vertexOffsets, vertexBuffer, mortonSettings);
182
165
  }
183
166
  /*
184
167
  * Handle the parsing of the different topology length buffers separate not generic to reduce the
@@ -195,8 +178,8 @@ function decodeRootLengthStream(geometryTypes, rootLengthStream, bufferId) {
195
178
  * BufferId: 1 PartOffsets -> Polygon
196
179
  * BufferId: 0 PartOffsets, RingOffsets -> LineString
197
180
  * */
198
- previousOffset = rootBufferOffsets[i + 1] = previousOffset + (geometryTypes[i] > bufferId
199
- ? rootLengthStream[rootLengthCounter++] : 1);
181
+ previousOffset = rootBufferOffsets[i + 1] =
182
+ previousOffset + (geometryTypes[i] > bufferId ? rootLengthStream[rootLengthCounter++] : 1);
200
183
  }
201
184
  return rootBufferOffsets;
202
185
  }
@@ -209,8 +192,9 @@ function decodeLevel1LengthStream(geometryTypes, rootOffsetBuffer, level1LengthB
209
192
  for (let i = 0; i < geometryTypes.length; i++) {
210
193
  const geometryType = geometryTypes[i];
211
194
  const numGeometries = rootOffsetBuffer[i + 1] - rootOffsetBuffer[i];
212
- if (geometryType === 5 || geometryType === 2 || (isLineStringPresent &&
213
- (geometryType === 4 || geometryType === 1))) {
195
+ if (geometryType === 5 ||
196
+ geometryType === 2 ||
197
+ (isLineStringPresent && (geometryType === 4 || geometryType === 1))) {
214
198
  /* For MultiPolygon, Polygon and in some cases for MultiLineString and LineString
215
199
  * a value in the level1LengthBuffer exists */
216
200
  for (let j = 0; j < numGeometries; j++) {
@@ -270,13 +254,11 @@ function decodeLevel2LengthStream(geometryTypes, rootOffsetBuffer, level1OffsetB
270
254
  /* For MultiPolygon, MultiLineString, Polygon and LineString a value in level2LengthBuffer
271
255
  * exists */
272
256
  for (let j = 0; j < numGeometries; j++) {
273
- const numParts = level1OffsetBuffer[level1OffsetBufferCounter]
274
- - level1OffsetBuffer[level1OffsetBufferCounter - 1];
257
+ const numParts = level1OffsetBuffer[level1OffsetBufferCounter] - level1OffsetBuffer[level1OffsetBufferCounter - 1];
275
258
  level1OffsetBufferCounter++;
276
259
  for (let k = 0; k < numParts; k++) {
277
- previousOffset =
278
- level2BufferOffsets[level2OffsetBufferCounter++] =
279
- previousOffset + level2LengthBuffer[level2LengthBufferCounter++];
260
+ previousOffset = level2BufferOffsets[level2OffsetBufferCounter++] =
261
+ previousOffset + level2LengthBuffer[level2LengthBufferCounter++];
280
262
  }
281
263
  }
282
264
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"geometryDecoder.js","sourceRoot":"","sources":["../../src/decoding/geometryDecoder.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,5 @@
1
+ import { describe, it } from "vitest";
2
+ describe("decodeGeometryColumn", () => {
3
+ it("should decode mixed LineString, Polygon, MultiLineString and MultiPolygon geometry", async () => { });
4
+ });
5
+ //# sourceMappingURL=geometryDecoder.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"geometryDecoder.spec.js","sourceRoot":"","sources":["../../src/decoding/geometryDecoder.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAEtC,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;IAClC,EAAE,CAAC,oFAAoF,EAAE,KAAK,IAAI,EAAE,GAAE,CAAC,CAAC,CAAC;AAC7G,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=geometryScaling.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"geometryScaling.js","sourceRoot":"","sources":["../../src/decoding/geometryScaling.ts"],"names":[],"mappings":""}
@@ -1,7 +1,6 @@
1
- "use strict";
2
1
  // Ported from https://github.com/lemire/JavaFastPFOR/blob/master/src/main/java/me/lemire/integercompression/IntWrapper.java
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- class IntWrapper {
2
+ export default class IntWrapper {
3
+ value;
5
4
  constructor(value) {
6
5
  this.value = value;
7
6
  }
@@ -18,5 +17,4 @@ class IntWrapper {
18
17
  this.value += v;
19
18
  }
20
19
  }
21
- exports.default = IntWrapper;
22
20
  //# sourceMappingURL=intWrapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"intWrapper.js","sourceRoot":"","sources":["../../src/decoding/intWrapper.ts"],"names":[],"mappings":"AAAA,4HAA4H;AAE5H,MAAM,CAAC,OAAO,OAAO,UAAU;IACP;IAApB,YAAoB,KAAa;QAAb,UAAK,GAAL,KAAK,CAAQ;IAAG,CAAC;IAE9B,GAAG;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACtB,CAAC;IAEM,GAAG,CAAC,CAAS;QAChB,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;IACnB,CAAC;IAEM,SAAS;QACZ,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC;IACxB,CAAC;IAEM,GAAG,CAAC,CAAS;QAChB,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC;IACpB,CAAC;CACJ"}
@@ -38,6 +38,19 @@ export declare function padWithZerosInt64(bitVector: BitVector, data: BigInt64Ar
38
38
  export declare function padZigZagWithZerosInt64(bitVector: BitVector, data: BigInt64Array): BigInt64Array;
39
39
  export declare function decodeNullableRle(data: Int32Array, streamMetadata: StreamMetadata, isSigned: boolean, bitVector: BitVector): Int32Array;
40
40
  export declare function decodeNullableRleInt64(data: BigInt64Array, streamMetadata: StreamMetadata, isSigned: boolean, bitVector: BitVector): BigInt64Array;
41
+ /**
42
+ * Decode Delta-RLE with multiple runs by fully reconstructing values.
43
+ *
44
+ * @param data RLE encoded data: [run1, run2, ..., value1, value2, ...]
45
+ * @param numRuns Number of runs in the RLE encoding
46
+ * @param numValues Total number of values to reconstruct
47
+ * @returns Reconstructed values with deltas applied
48
+ */
49
+ export declare function decodeDeltaRle(data: Int32Array, numRuns: number, numValues: number): Int32Array;
50
+ /**
51
+ * Decode Delta-RLE with multiple runs for 64-bit integers.
52
+ */
53
+ export declare function decodeDeltaRleInt64(data: BigInt64Array, numRuns: number, numValues: number): BigInt64Array;
41
54
  export declare function decodeUnsignedConstRle(data: Int32Array): number;
42
55
  export declare function decodeZigZagConstRle(data: Int32Array): number;
43
56
  export declare function decodeZigZagSequenceRle(data: Int32Array): [baseValue: number, delta: number];