@map-colonies/mc-utils 2.0.2 → 3.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.
- package/dist/geo/geoHash.d.ts +1 -1
- package/dist/geo/geoHash.d.ts.map +1 -1
- package/dist/geo/geoHash.js +93 -65
- package/dist/geo/geoHash.js.map +1 -1
- package/dist/geo/tileBatcher.d.ts +1 -1
- package/dist/geo/tileBatcher.d.ts.map +1 -1
- package/dist/geo/tileBatcher.js +142 -116
- package/dist/geo/tileBatcher.js.map +1 -1
- package/dist/geo/tileRanger.d.ts +3 -3
- package/dist/geo/tileRanger.d.ts.map +1 -1
- package/dist/geo/tileRanger.js +159 -103
- package/dist/geo/tileRanger.js.map +1 -1
- package/dist/geo/tilesGenerator.d.ts +1 -1
- package/dist/geo/tilesGenerator.d.ts.map +1 -1
- package/dist/geo/tilesGenerator.js +76 -59
- package/dist/geo/tilesGenerator.js.map +1 -1
- package/dist/utils/timeout.d.ts +2 -0
- package/dist/utils/timeout.d.ts.map +1 -0
- package/dist/utils/timeout.js +48 -0
- package/dist/utils/timeout.js.map +1 -0
- package/package.json +1 -1
package/dist/geo/geoHash.d.ts
CHANGED
|
@@ -21,5 +21,5 @@ export declare const createGeoHashGenerator: (polygon: Polygon | Feature<Polygon
|
|
|
21
21
|
* @param tileZoom target tiles zoom level
|
|
22
22
|
* @param origin target tiles grid origin location (default ll)
|
|
23
23
|
*/
|
|
24
|
-
export declare function tileGenerator(polygon: Polygon | Feature<Polygon | MultiPolygon>, tileZoom: number, origin?: TileOrigin):
|
|
24
|
+
export declare function tileGenerator(polygon: Polygon | Feature<Polygon | MultiPolygon>, tileZoom: number, origin?: TileOrigin): AsyncGenerator<ITile>;
|
|
25
25
|
//# sourceMappingURL=geoHash.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"geoHash.d.ts","sourceRoot":"","sources":["../../src/geo/geoHash.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4C,OAAO,EAAa,YAAY,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACjH,OAAO,EAAE,MAAM,EAAE,MAAM,mCAAmC,CAAC;AAE3D,OAAO,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AA+C5D;;;;GAIG;AACH,eAAO,MAAM,aAAa,YAAa,MAAM,WAK5C,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,YAAa,OAAO,GAAG,QAAQ,OAAO,GAAG,YAAY,CAAC,2BAAoC,UAAU,MAAM,CAc5I,CAAC;AAEF;;;;;GAKG;AACH,
|
|
1
|
+
{"version":3,"file":"geoHash.d.ts","sourceRoot":"","sources":["../../src/geo/geoHash.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4C,OAAO,EAAa,YAAY,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACjH,OAAO,EAAE,MAAM,EAAE,MAAM,mCAAmC,CAAC;AAE3D,OAAO,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AA+C5D;;;;GAIG;AACH,eAAO,MAAM,aAAa,YAAa,MAAM,WAK5C,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,YAAa,OAAO,GAAG,QAAQ,OAAO,GAAG,YAAY,CAAC,2BAAoC,UAAU,MAAM,CAc5I,CAAC;AAEF;;;;;GAKG;AACH,wBAAuB,aAAa,CAClC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,EAClD,QAAQ,EAAE,MAAM,EAChB,MAAM,GAAE,UAAkC,GACzC,cAAc,CAAC,KAAK,CAAC,CAmCvB"}
|
package/dist/geo/geoHash.js
CHANGED
|
@@ -49,6 +49,25 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
49
49
|
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
50
50
|
}
|
|
51
51
|
};
|
|
52
|
+
var __asyncValues = (this && this.__asyncValues) || function (o) {
|
|
53
|
+
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
|
|
54
|
+
var m = o[Symbol.asyncIterator], i;
|
|
55
|
+
return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
|
|
56
|
+
function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
|
|
57
|
+
function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
|
|
58
|
+
};
|
|
59
|
+
var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }
|
|
60
|
+
var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) {
|
|
61
|
+
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
|
|
62
|
+
var g = generator.apply(thisArg, _arguments || []), i, q = [];
|
|
63
|
+
return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
|
|
64
|
+
function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
|
|
65
|
+
function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
|
|
66
|
+
function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
|
|
67
|
+
function fulfill(value) { resume("next", value); }
|
|
68
|
+
function reject(value) { resume("throw", value); }
|
|
69
|
+
function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
|
|
70
|
+
};
|
|
52
71
|
var __values = (this && this.__values) || function(o) {
|
|
53
72
|
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
|
|
54
73
|
if (m) return m.call(o);
|
|
@@ -175,72 +194,81 @@ exports.createGeoHashGenerator = createGeoHashGenerator;
|
|
|
175
194
|
* @param origin target tiles grid origin location (default ll)
|
|
176
195
|
*/
|
|
177
196
|
function tileGenerator(polygon, tileZoom, origin) {
|
|
178
|
-
var hashGen, hashGen_1, hashGen_1_1, hash, bbox, minTile, maxTile, minX, maxX, minY, maxY, x, y, e_2_1;
|
|
179
|
-
var e_2, _a;
|
|
180
197
|
if (origin === void 0) { origin = tileOrigin_1.TileOrigin.LOWER_LEFT; }
|
|
181
|
-
return
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
return [
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
return [3 /*break*/,
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
198
|
+
return __asyncGenerator(this, arguments, function tileGenerator_1() {
|
|
199
|
+
var hashGen, hashGen_1, hashGen_1_1, hash, bbox, minTile, maxTile, minX, maxX, minY, maxY, x, y, e_2_1;
|
|
200
|
+
var e_2, _a;
|
|
201
|
+
return __generator(this, function (_b) {
|
|
202
|
+
switch (_b.label) {
|
|
203
|
+
case 0:
|
|
204
|
+
hashGen = (0, exports.createGeoHashGenerator)(polygon, tileZoom);
|
|
205
|
+
_b.label = 1;
|
|
206
|
+
case 1:
|
|
207
|
+
_b.trys.push([1, 13, 14, 19]);
|
|
208
|
+
hashGen_1 = __asyncValues(hashGen);
|
|
209
|
+
_b.label = 2;
|
|
210
|
+
case 2: return [4 /*yield*/, __await(hashGen_1.next())];
|
|
211
|
+
case 3:
|
|
212
|
+
if (!(hashGen_1_1 = _b.sent(), !hashGen_1_1.done)) return [3 /*break*/, 12];
|
|
213
|
+
hash = hashGen_1_1.value;
|
|
214
|
+
bbox = (0, exports.decodeGeoHash)(hash);
|
|
215
|
+
minTile = (0, geoConvertor_1.degreesToTile)({
|
|
216
|
+
longitude: bbox[0],
|
|
217
|
+
latitude: bbox[1],
|
|
218
|
+
}, tileZoom, origin);
|
|
219
|
+
maxTile = (0, geoConvertor_1.degreesToTile)({
|
|
220
|
+
longitude: bbox[2],
|
|
221
|
+
latitude: bbox[3],
|
|
222
|
+
}, tileZoom, origin);
|
|
223
|
+
minX = Math.min(minTile.x, maxTile.x);
|
|
224
|
+
maxX = minTile.x + maxTile.x - minX;
|
|
225
|
+
minY = Math.min(minTile.y, maxTile.y);
|
|
226
|
+
maxY = minTile.y + maxTile.y - minY;
|
|
227
|
+
x = minX;
|
|
228
|
+
_b.label = 4;
|
|
229
|
+
case 4:
|
|
230
|
+
if (!(x < maxX)) return [3 /*break*/, 11];
|
|
231
|
+
y = minY;
|
|
232
|
+
_b.label = 5;
|
|
233
|
+
case 5:
|
|
234
|
+
if (!(y < maxY)) return [3 /*break*/, 10];
|
|
235
|
+
return [4 /*yield*/, __await(Promise.resolve({
|
|
236
|
+
x: x,
|
|
237
|
+
y: y,
|
|
238
|
+
zoom: tileZoom,
|
|
239
|
+
}))];
|
|
240
|
+
case 6: return [4 /*yield*/, __await.apply(void 0, [_b.sent()])];
|
|
241
|
+
case 7: return [4 /*yield*/, _b.sent()];
|
|
242
|
+
case 8:
|
|
243
|
+
_b.sent();
|
|
244
|
+
_b.label = 9;
|
|
245
|
+
case 9:
|
|
246
|
+
y++;
|
|
247
|
+
return [3 /*break*/, 5];
|
|
248
|
+
case 10:
|
|
249
|
+
x++;
|
|
250
|
+
return [3 /*break*/, 4];
|
|
251
|
+
case 11: return [3 /*break*/, 2];
|
|
252
|
+
case 12: return [3 /*break*/, 19];
|
|
253
|
+
case 13:
|
|
254
|
+
e_2_1 = _b.sent();
|
|
255
|
+
e_2 = { error: e_2_1 };
|
|
256
|
+
return [3 /*break*/, 19];
|
|
257
|
+
case 14:
|
|
258
|
+
_b.trys.push([14, , 17, 18]);
|
|
259
|
+
if (!(hashGen_1_1 && !hashGen_1_1.done && (_a = hashGen_1.return))) return [3 /*break*/, 16];
|
|
260
|
+
return [4 /*yield*/, __await(_a.call(hashGen_1))];
|
|
261
|
+
case 15:
|
|
262
|
+
_b.sent();
|
|
263
|
+
_b.label = 16;
|
|
264
|
+
case 16: return [3 /*break*/, 18];
|
|
265
|
+
case 17:
|
|
266
|
+
if (e_2) throw e_2.error;
|
|
267
|
+
return [7 /*endfinally*/];
|
|
268
|
+
case 18: return [7 /*endfinally*/];
|
|
269
|
+
case 19: return [2 /*return*/];
|
|
270
|
+
}
|
|
271
|
+
});
|
|
244
272
|
});
|
|
245
273
|
}
|
|
246
274
|
exports.tileGenerator = tileGenerator;
|
package/dist/geo/geoHash.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"geoHash.js","sourceRoot":"","sources":["../../src/geo/geoHash.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"geoHash.js","sourceRoot":"","sources":["../../src/geo/geoHash.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,6 @@ import { ITileRange } from '../models/interfaces/geo/iTile';
|
|
|
4
4
|
* @param batchSize amount of tile per batch
|
|
5
5
|
* @param ranges iterable collection of tile ranges
|
|
6
6
|
*/
|
|
7
|
-
declare function tileBatchGenerator(batchSize: number, ranges:
|
|
7
|
+
declare function tileBatchGenerator(batchSize: number, ranges: AsyncGenerator<ITileRange>): AsyncGenerator<ITileRange[]>;
|
|
8
8
|
export { tileBatchGenerator };
|
|
9
9
|
//# sourceMappingURL=tileBatcher.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tileBatcher.d.ts","sourceRoot":"","sources":["../../src/geo/tileBatcher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"tileBatcher.d.ts","sourceRoot":"","sources":["../../src/geo/tileBatcher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAG5D;;;;GAIG;AACH,iBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC,GAAG,cAAc,CAAC,UAAU,EAAE,CAAC,CAoFtH;AAED,OAAO,EAAE,kBAAkB,EAAE,CAAC"}
|
package/dist/geo/tileBatcher.js
CHANGED
|
@@ -26,142 +26,168 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
26
26
|
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
27
27
|
}
|
|
28
28
|
};
|
|
29
|
-
var
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
throw new TypeError(
|
|
29
|
+
var __asyncValues = (this && this.__asyncValues) || function (o) {
|
|
30
|
+
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
|
|
31
|
+
var m = o[Symbol.asyncIterator], i;
|
|
32
|
+
return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
|
|
33
|
+
function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
|
|
34
|
+
function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
|
|
35
|
+
};
|
|
36
|
+
var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }
|
|
37
|
+
var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) {
|
|
38
|
+
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
|
|
39
|
+
var g = generator.apply(thisArg, _arguments || []), i, q = [];
|
|
40
|
+
return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
|
|
41
|
+
function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
|
|
42
|
+
function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
|
|
43
|
+
function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
|
|
44
|
+
function fulfill(value) { resume("next", value); }
|
|
45
|
+
function reject(value) { resume("throw", value); }
|
|
46
|
+
function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
|
|
39
47
|
};
|
|
40
48
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
41
49
|
exports.tileBatchGenerator = void 0;
|
|
50
|
+
var timeout_1 = require("../utils/timeout");
|
|
42
51
|
/**
|
|
43
52
|
* split collection of tile ranges to batches based on tile count
|
|
44
53
|
* @param batchSize amount of tile per batch
|
|
45
54
|
* @param ranges iterable collection of tile ranges
|
|
46
55
|
*/
|
|
47
56
|
function tileBatchGenerator(batchSize, ranges) {
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
maxX: reminderX + requiredForFullBatch,
|
|
78
|
-
minY: range.minY,
|
|
79
|
-
maxY: range.minY + 1,
|
|
80
|
-
zoom: range.zoom,
|
|
81
|
-
});
|
|
82
|
-
return [4 /*yield*/, targetRanges];
|
|
83
|
-
case 4:
|
|
84
|
-
_b.sent();
|
|
85
|
-
reminderX += requiredForFullBatch;
|
|
86
|
-
targetRanges = [];
|
|
87
|
-
requiredForFullBatch = batchSize;
|
|
88
|
-
return [3 /*break*/, 3];
|
|
89
|
-
case 5:
|
|
90
|
-
targetRanges.push({
|
|
91
|
-
minX: reminderX,
|
|
92
|
-
maxX: reminderX + remaining,
|
|
93
|
-
minY: range.minY,
|
|
94
|
-
maxY: range.minY + 1,
|
|
95
|
-
zoom: range.zoom,
|
|
96
|
-
});
|
|
97
|
-
range.minY++;
|
|
98
|
-
reminderX += remaining;
|
|
99
|
-
requiredForFullBatch -= remaining;
|
|
100
|
-
dy--;
|
|
101
|
-
_b.label = 6;
|
|
102
|
-
case 6:
|
|
103
|
-
requiredLines = Math.floor(requiredForFullBatch / dx);
|
|
104
|
-
yRange = Math.min(requiredLines, dy);
|
|
105
|
-
if (yRange > 0) {
|
|
57
|
+
return __asyncGenerator(this, arguments, function tileBatchGenerator_1() {
|
|
58
|
+
var targetRanges, requiredForFullBatch, ranges_1, ranges_1_1, range, dx, dy, reminderX, remaining, requiredLines, yRange, endX, e_1_1;
|
|
59
|
+
var e_1, _a;
|
|
60
|
+
return __generator(this, function (_b) {
|
|
61
|
+
switch (_b.label) {
|
|
62
|
+
case 0:
|
|
63
|
+
targetRanges = [];
|
|
64
|
+
requiredForFullBatch = batchSize;
|
|
65
|
+
_b.label = 1;
|
|
66
|
+
case 1:
|
|
67
|
+
_b.trys.push([1, 18, 19, 24]);
|
|
68
|
+
ranges_1 = __asyncValues(ranges);
|
|
69
|
+
_b.label = 2;
|
|
70
|
+
case 2: return [4 /*yield*/, __await(ranges_1.next())];
|
|
71
|
+
case 3:
|
|
72
|
+
if (!(ranges_1_1 = _b.sent(), !ranges_1_1.done)) return [3 /*break*/, 17];
|
|
73
|
+
range = ranges_1_1.value;
|
|
74
|
+
dx = range.maxX - range.minX;
|
|
75
|
+
dy = range.maxY - range.minY;
|
|
76
|
+
if (dx === 0 || dy === 0) {
|
|
77
|
+
return [3 /*break*/, 16];
|
|
78
|
+
}
|
|
79
|
+
reminderX = range.maxX;
|
|
80
|
+
_b.label = 4;
|
|
81
|
+
case 4:
|
|
82
|
+
if (!(range.minY < range.maxY)) return [3 /*break*/, 14];
|
|
83
|
+
if (!(reminderX < range.maxX)) return [3 /*break*/, 9];
|
|
84
|
+
remaining = range.maxX - reminderX;
|
|
85
|
+
if (!(remaining > requiredForFullBatch)) return [3 /*break*/, 8];
|
|
106
86
|
targetRanges.push({
|
|
107
|
-
minX:
|
|
108
|
-
maxX:
|
|
87
|
+
minX: reminderX,
|
|
88
|
+
maxX: reminderX + requiredForFullBatch,
|
|
109
89
|
minY: range.minY,
|
|
110
|
-
maxY: range.minY +
|
|
90
|
+
maxY: range.minY + 1,
|
|
111
91
|
zoom: range.zoom,
|
|
112
92
|
});
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
93
|
+
return [4 /*yield*/, __await(Promise.resolve(targetRanges))];
|
|
94
|
+
case 5: return [4 /*yield*/, __await.apply(void 0, [_b.sent()])];
|
|
95
|
+
case 6: return [4 /*yield*/, _b.sent()];
|
|
96
|
+
case 7:
|
|
97
|
+
_b.sent();
|
|
98
|
+
reminderX += requiredForFullBatch;
|
|
99
|
+
targetRanges = [];
|
|
100
|
+
requiredForFullBatch = batchSize;
|
|
101
|
+
return [3 /*break*/, 4];
|
|
102
|
+
case 8:
|
|
120
103
|
targetRanges.push({
|
|
121
|
-
minX:
|
|
122
|
-
maxX:
|
|
104
|
+
minX: reminderX,
|
|
105
|
+
maxX: reminderX + remaining,
|
|
123
106
|
minY: range.minY,
|
|
124
107
|
maxY: range.minY + 1,
|
|
125
108
|
zoom: range.zoom,
|
|
126
109
|
});
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
110
|
+
range.minY++;
|
|
111
|
+
reminderX += remaining;
|
|
112
|
+
requiredForFullBatch -= remaining;
|
|
113
|
+
dy--;
|
|
114
|
+
_b.label = 9;
|
|
115
|
+
case 9:
|
|
116
|
+
requiredLines = Math.floor(requiredForFullBatch / dx);
|
|
117
|
+
yRange = Math.min(requiredLines, dy);
|
|
118
|
+
if (yRange > 0) {
|
|
119
|
+
targetRanges.push({
|
|
120
|
+
minX: range.minX,
|
|
121
|
+
maxX: range.maxX,
|
|
122
|
+
minY: range.minY,
|
|
123
|
+
maxY: range.minY + yRange,
|
|
124
|
+
zoom: range.zoom,
|
|
125
|
+
});
|
|
126
|
+
range.minY += yRange;
|
|
127
|
+
dy -= yRange;
|
|
128
|
+
requiredForFullBatch -= yRange * dx;
|
|
130
129
|
}
|
|
131
|
-
|
|
132
|
-
|
|
130
|
+
//add partial lines beginning
|
|
131
|
+
if (requiredForFullBatch > 0 && range.minY < range.maxY) {
|
|
132
|
+
endX = Math.min(range.minX + requiredForFullBatch, range.maxX);
|
|
133
|
+
targetRanges.push({
|
|
134
|
+
minX: range.minX,
|
|
135
|
+
maxX: endX,
|
|
136
|
+
minY: range.minY,
|
|
137
|
+
maxY: range.minY + 1,
|
|
138
|
+
zoom: range.zoom,
|
|
139
|
+
});
|
|
140
|
+
requiredForFullBatch -= endX - range.minX;
|
|
141
|
+
if (endX < range.maxX) {
|
|
142
|
+
reminderX = endX;
|
|
143
|
+
}
|
|
144
|
+
else {
|
|
145
|
+
range.minY++;
|
|
146
|
+
}
|
|
133
147
|
}
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
return [4 /*yield*/,
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
148
|
+
if (!(requiredForFullBatch === 0)) return [3 /*break*/, 13];
|
|
149
|
+
return [4 /*yield*/, __await(Promise.resolve(targetRanges))];
|
|
150
|
+
case 10: return [4 /*yield*/, __await.apply(void 0, [_b.sent()])];
|
|
151
|
+
case 11: return [4 /*yield*/, _b.sent()];
|
|
152
|
+
case 12:
|
|
153
|
+
_b.sent();
|
|
154
|
+
targetRanges = [];
|
|
155
|
+
requiredForFullBatch = batchSize;
|
|
156
|
+
_b.label = 13;
|
|
157
|
+
case 13: return [3 /*break*/, 4];
|
|
158
|
+
case 14: return [4 /*yield*/, __await((0, timeout_1.timeout)(0))];
|
|
159
|
+
case 15:
|
|
160
|
+
_b.sent(); // TODO: * This is a hot fix to keep work async and handle concurrency requests while handling the task batch merging, remove this when moving to the new utils package ! *
|
|
161
|
+
_b.label = 16;
|
|
162
|
+
case 16: return [3 /*break*/, 2];
|
|
163
|
+
case 17: return [3 /*break*/, 24];
|
|
164
|
+
case 18:
|
|
165
|
+
e_1_1 = _b.sent();
|
|
166
|
+
e_1 = { error: e_1_1 };
|
|
167
|
+
return [3 /*break*/, 24];
|
|
168
|
+
case 19:
|
|
169
|
+
_b.trys.push([19, , 22, 23]);
|
|
170
|
+
if (!(ranges_1_1 && !ranges_1_1.done && (_a = ranges_1.return))) return [3 /*break*/, 21];
|
|
171
|
+
return [4 /*yield*/, __await(_a.call(ranges_1))];
|
|
172
|
+
case 20:
|
|
173
|
+
_b.sent();
|
|
174
|
+
_b.label = 21;
|
|
175
|
+
case 21: return [3 /*break*/, 23];
|
|
176
|
+
case 22:
|
|
177
|
+
if (e_1) throw e_1.error;
|
|
178
|
+
return [7 /*endfinally*/];
|
|
179
|
+
case 23: return [7 /*endfinally*/];
|
|
180
|
+
case 24:
|
|
181
|
+
if (!(targetRanges.length > 0)) return [3 /*break*/, 28];
|
|
182
|
+
return [4 /*yield*/, __await(Promise.resolve(targetRanges))];
|
|
183
|
+
case 25: return [4 /*yield*/, __await.apply(void 0, [_b.sent()])];
|
|
184
|
+
case 26: return [4 /*yield*/, _b.sent()];
|
|
185
|
+
case 27:
|
|
186
|
+
_b.sent();
|
|
187
|
+
_b.label = 28;
|
|
188
|
+
case 28: return [2 /*return*/];
|
|
189
|
+
}
|
|
190
|
+
});
|
|
165
191
|
});
|
|
166
192
|
}
|
|
167
193
|
exports.tileBatchGenerator = tileBatchGenerator;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tileBatcher.js","sourceRoot":"","sources":["../../src/geo/tileBatcher.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"tileBatcher.js","sourceRoot":"","sources":["../../src/geo/tileBatcher.ts"],"names":[],"mappings":"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"}
|
package/dist/geo/tileRanger.d.ts
CHANGED
|
@@ -18,19 +18,19 @@ export declare class TileRanger {
|
|
|
18
18
|
* @param zoom max hash zoom
|
|
19
19
|
* @returns
|
|
20
20
|
*/
|
|
21
|
-
encodeFootprint(footprint: Polygon | Feature<Polygon | MultiPolygon>, zoom: number, verbose?: boolean):
|
|
21
|
+
encodeFootprint(footprint: Polygon | Feature<Polygon | MultiPolygon>, zoom: number, verbose?: boolean): AsyncGenerator<ITileRange>;
|
|
22
22
|
/**
|
|
23
23
|
* generate tile
|
|
24
24
|
* @param bbox bbox to cover with generated tiles
|
|
25
25
|
* @param zoom target tiles zoom level
|
|
26
26
|
*/
|
|
27
|
-
generateTiles(bbox: BBox2d, zoom: number):
|
|
27
|
+
generateTiles(bbox: BBox2d, zoom: number): AsyncGenerator<ITile>;
|
|
28
28
|
/**
|
|
29
29
|
* generate tile
|
|
30
30
|
* @param footprint footprint to cover with generated tiles
|
|
31
31
|
* @param zoom target tiles zoom level
|
|
32
32
|
*/
|
|
33
|
-
generateTiles(footprint: Polygon | Feature<Polygon | MultiPolygon>, zoom: number):
|
|
33
|
+
generateTiles(footprint: Polygon | Feature<Polygon | MultiPolygon>, zoom: number): AsyncGenerator<ITile>;
|
|
34
34
|
private generateRanges;
|
|
35
35
|
/**
|
|
36
36
|
* generate tile
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tileRanger.d.ts","sourceRoot":"","sources":["../../src/geo/tileRanger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mCAAmC,CAAC;AAC3D,OAAO,EAA0D,OAAO,EAAa,YAAY,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAC/H,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAkBnE;;GAEG;AACH,qBAAa,UAAU;IACrB;;;;;OAKG;IACI,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,GAAG,UAAU;IA4BzD;;;;;OAKG;
|
|
1
|
+
{"version":3,"file":"tileRanger.d.ts","sourceRoot":"","sources":["../../src/geo/tileRanger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mCAAmC,CAAC;AAC3D,OAAO,EAA0D,OAAO,EAAa,YAAY,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAC/H,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAkBnE;;GAEG;AACH,qBAAa,UAAU;IACrB;;;;;OAKG;IACI,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,GAAG,UAAU;IA4BzD;;;;;OAKG;IACW,eAAe,CAAC,SAAS,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,UAAQ,GAAG,cAAc,CAAC,UAAU,CAAC;IAiC9I;;;;OAIG;IACI,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,cAAc,CAAC,KAAK,CAAC;IACvE;;;;OAIG;IACI,aAAa,CAAC,SAAS,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,cAAc,CAAC,KAAK,CAAC;YAchG,cAAc;IA6E7B;;;;;;OAMG;IACH,OAAO,CAAE,YAAY;IAwCrB,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAiBxC;IAEF,OAAO,CAAC,MAAM;CAKf"}
|
package/dist/geo/tileRanger.js
CHANGED
|
@@ -26,6 +26,30 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
26
26
|
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
27
27
|
}
|
|
28
28
|
};
|
|
29
|
+
var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }
|
|
30
|
+
var __asyncValues = (this && this.__asyncValues) || function (o) {
|
|
31
|
+
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
|
|
32
|
+
var m = o[Symbol.asyncIterator], i;
|
|
33
|
+
return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
|
|
34
|
+
function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
|
|
35
|
+
function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
|
|
36
|
+
};
|
|
37
|
+
var __asyncDelegator = (this && this.__asyncDelegator) || function (o) {
|
|
38
|
+
var i, p;
|
|
39
|
+
return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;
|
|
40
|
+
function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; } : f; }
|
|
41
|
+
};
|
|
42
|
+
var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) {
|
|
43
|
+
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
|
|
44
|
+
var g = generator.apply(thisArg, _arguments || []), i, q = [];
|
|
45
|
+
return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
|
|
46
|
+
function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
|
|
47
|
+
function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
|
|
48
|
+
function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
|
|
49
|
+
function fulfill(value) { resume("next", value); }
|
|
50
|
+
function reject(value) { resume("throw", value); }
|
|
51
|
+
function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
|
|
52
|
+
};
|
|
29
53
|
var __values = (this && this.__values) || function(o) {
|
|
30
54
|
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
|
|
31
55
|
if (m) return m.call(o);
|
|
@@ -114,47 +138,67 @@ var TileRanger = /** @class */ (function () {
|
|
|
114
138
|
* @returns
|
|
115
139
|
*/
|
|
116
140
|
TileRanger.prototype.encodeFootprint = function (footprint, zoom, verbose) {
|
|
117
|
-
var bbox, tileRange, intersectionParams;
|
|
118
141
|
if (verbose === void 0) { verbose = false; }
|
|
119
|
-
return
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
return [
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
142
|
+
return __asyncGenerator(this, arguments, function encodeFootprint_1() {
|
|
143
|
+
var bbox, tileRange, intersectionParams;
|
|
144
|
+
return __generator(this, function (_a) {
|
|
145
|
+
switch (_a.label) {
|
|
146
|
+
case 0:
|
|
147
|
+
////////////////////////////////
|
|
148
|
+
/// Step 1: check if the footprint is identical to its bbox
|
|
149
|
+
////////////////////////////////
|
|
150
|
+
if (verbose) {
|
|
151
|
+
console.log('encode footprint');
|
|
152
|
+
}
|
|
153
|
+
bbox = (0, turf_1.bbox)(footprint);
|
|
154
|
+
if (!this.isBbox(footprint)) return [3 /*break*/, 4];
|
|
155
|
+
tileRange = (0, bboxUtils_1.bboxToTileRange)(bbox, zoom);
|
|
156
|
+
if (verbose) {
|
|
157
|
+
console.log("footprint is identical to its bbox - return BBOX tile range zoom: ".concat(tileRange.zoom, " : X ").concat(tileRange.minX, " - ").concat(tileRange.maxX, " : Y ").concat(tileRange.minY, " - ").concat(tileRange.maxY));
|
|
158
|
+
}
|
|
159
|
+
return [4 /*yield*/, __await(Promise.resolve(tileRange))];
|
|
160
|
+
case 1: return [4 /*yield*/, __await.apply(void 0, [_a.sent()])];
|
|
161
|
+
case 2: return [4 /*yield*/, _a.sent()];
|
|
162
|
+
case 3:
|
|
163
|
+
_a.sent();
|
|
164
|
+
return [3 /*break*/, 8];
|
|
165
|
+
case 4:
|
|
166
|
+
intersectionParams = {
|
|
167
|
+
footprint: footprint,
|
|
168
|
+
maxZoom: zoom,
|
|
169
|
+
};
|
|
170
|
+
if (verbose) {
|
|
171
|
+
console.log('footprint is different from its bbox - generateRanges');
|
|
172
|
+
}
|
|
173
|
+
return [4 /*yield*/, __await(Promise.resolve(this.generateRanges(bbox, zoom, intersectionParams, this.tileFootprintIntersection, verbose)))];
|
|
174
|
+
case 5: return [5 /*yield**/, __values(__asyncDelegator.apply(void 0, [__asyncValues.apply(void 0, [_a.sent()])]))];
|
|
175
|
+
case 6: return [4 /*yield*/, __await.apply(void 0, [_a.sent()])];
|
|
176
|
+
case 7:
|
|
177
|
+
_a.sent();
|
|
178
|
+
_a.label = 8;
|
|
179
|
+
case 8: return [2 /*return*/];
|
|
180
|
+
}
|
|
181
|
+
});
|
|
152
182
|
});
|
|
153
183
|
};
|
|
154
184
|
TileRanger.prototype.generateTiles = function (area, zoom) {
|
|
155
185
|
var gen;
|
|
156
186
|
if (Array.isArray(area)) {
|
|
157
|
-
|
|
187
|
+
var tileRangeGen = function tileRangeGenerator() {
|
|
188
|
+
return __asyncGenerator(this, arguments, function tileRangeGenerator_1() {
|
|
189
|
+
return __generator(this, function (_a) {
|
|
190
|
+
switch (_a.label) {
|
|
191
|
+
case 0: return [4 /*yield*/, __await(Promise.resolve((0, bboxUtils_1.bboxToTileRange)(area, zoom)))];
|
|
192
|
+
case 1: return [4 /*yield*/, __await.apply(void 0, [_a.sent()])];
|
|
193
|
+
case 2: return [4 /*yield*/, _a.sent()];
|
|
194
|
+
case 3:
|
|
195
|
+
_a.sent();
|
|
196
|
+
return [2 /*return*/];
|
|
197
|
+
}
|
|
198
|
+
});
|
|
199
|
+
});
|
|
200
|
+
};
|
|
201
|
+
gen = tileRangeGen();
|
|
158
202
|
}
|
|
159
203
|
else {
|
|
160
204
|
gen = this.encodeFootprint(area, zoom);
|
|
@@ -162,83 +206,95 @@ var TileRanger = /** @class */ (function () {
|
|
|
162
206
|
return (0, tilesGenerator_1.tilesGenerator)(gen);
|
|
163
207
|
};
|
|
164
208
|
TileRanger.prototype.generateRanges = function (bbox, zoom, intersectionTarget, intersectionFunction, verbose) {
|
|
165
|
-
var boundingRange, bboxString, dx, dy, minXZoom, minYZoom, minZoom, minimalRange, x, y, tile, intersection, tileRange;
|
|
166
209
|
if (verbose === void 0) { verbose = false; }
|
|
167
|
-
return
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
return [
|
|
220
|
-
|
|
221
|
-
|
|
210
|
+
return __asyncGenerator(this, arguments, function generateRanges_1() {
|
|
211
|
+
var boundingRange, bboxString, dx, dy, minXZoom, minYZoom, minZoom, minimalRange, x, y, tile, intersection, tileRange;
|
|
212
|
+
return __generator(this, function (_a) {
|
|
213
|
+
switch (_a.label) {
|
|
214
|
+
case 0:
|
|
215
|
+
/////////////////////////////////////////////////////////////////////////////////////////////////
|
|
216
|
+
/// Step 3: Convert the bbox to tile range of the requested zoom
|
|
217
|
+
/////////////////////////////////////////////////////////////////////////////////////////////////
|
|
218
|
+
if (verbose) {
|
|
219
|
+
console.log('Convert the bbox to tile range of the requested zoom');
|
|
220
|
+
}
|
|
221
|
+
boundingRange = (0, bboxUtils_1.bboxToTileRange)(bbox, zoom);
|
|
222
|
+
if (verbose) {
|
|
223
|
+
bboxString = "BBOX[0]: ".concat(bbox[0], ", BBOX[1]: ").concat(bbox[1], ", BBOX[2]: ").concat(bbox[2], ", BBOX[3]: ").concat(bbox[3]);
|
|
224
|
+
console.log("".concat(bboxString, ", Zoom: ").concat(zoom, ", bounding range: minX: ").concat(boundingRange.minX, ", maxX: ").concat(boundingRange.maxX, ", minY: ").concat(boundingRange.minY, ", maxY: ").concat(boundingRange.maxY));
|
|
225
|
+
}
|
|
226
|
+
/////////////////////////////////////////////////////////////////////////////////////////////////
|
|
227
|
+
/// Step 4: Use range size to calculate zoom level where the target area is smaller then 1 tile
|
|
228
|
+
/// (use zoom zero in-case there is no such zoom, for example in global bbox).
|
|
229
|
+
/////////////////////////////////////////////////////////////////////////////////////////////////
|
|
230
|
+
// find minimal zoom where the the area can be converted by area the size of single tile to skip levels that can't have full hashes
|
|
231
|
+
if (verbose) {
|
|
232
|
+
console.log("find minimal zoom where the the area can be converted by area the size of single tile to skip levels that can't have full hashes");
|
|
233
|
+
}
|
|
234
|
+
dx = boundingRange.maxX - boundingRange.minX;
|
|
235
|
+
dy = boundingRange.maxY - boundingRange.minY;
|
|
236
|
+
minXZoom = Math.max(Math.floor(Math.log2(1 << (zoom + 1)) / dx) - 1, 0);
|
|
237
|
+
minYZoom = Math.max(Math.floor(Math.log2(1 << zoom) / dy), 0);
|
|
238
|
+
minZoom = Math.min(minXZoom, minYZoom);
|
|
239
|
+
if (verbose) {
|
|
240
|
+
console.log("MinZoom: ".concat(minZoom));
|
|
241
|
+
}
|
|
242
|
+
minimalRange = (0, bboxUtils_1.bboxToTileRange)(bbox, minZoom);
|
|
243
|
+
x = minimalRange.minX;
|
|
244
|
+
_a.label = 1;
|
|
245
|
+
case 1:
|
|
246
|
+
if (!(x < minimalRange.maxX)) return [3 /*break*/, 12];
|
|
247
|
+
y = minimalRange.minY;
|
|
248
|
+
_a.label = 2;
|
|
249
|
+
case 2:
|
|
250
|
+
if (!(y < minimalRange.maxY)) return [3 /*break*/, 11];
|
|
251
|
+
tile = { x: x, y: y, zoom: minimalRange.zoom };
|
|
252
|
+
intersection = intersectionFunction(tile, intersectionTarget);
|
|
253
|
+
if (verbose) {
|
|
254
|
+
console.log("Tile X: ".concat(tile.x, ", Y: ").concat(tile.y, " zoom ").concat(tile.zoom, ", intersection: ").concat(intersection));
|
|
255
|
+
}
|
|
256
|
+
if (!(intersection === TileIntersectionState.FULL)) return [3 /*break*/, 6];
|
|
257
|
+
tileRange = this.tileToRange(tile, zoom);
|
|
258
|
+
if (verbose) {
|
|
259
|
+
console.log("return BBOX tile range zoom: ".concat(tileRange.zoom, " : X ").concat(tileRange.minX, " - ").concat(tileRange.maxX, " : Y ").concat(tileRange.minY, " - ").concat(tileRange.maxY));
|
|
260
|
+
}
|
|
261
|
+
return [4 /*yield*/, __await(Promise.resolve(tileRange))];
|
|
262
|
+
case 3: return [4 /*yield*/, __await.apply(void 0, [_a.sent()])];
|
|
263
|
+
case 4: return [4 /*yield*/, _a.sent()];
|
|
264
|
+
case 5:
|
|
265
|
+
_a.sent();
|
|
266
|
+
return [3 /*break*/, 10];
|
|
267
|
+
case 6:
|
|
268
|
+
if (!(intersection === TileIntersectionState.PARTIAL)) return [3 /*break*/, 10];
|
|
269
|
+
return [4 /*yield*/, __await(Promise.resolve(this.optimizeHash(tile, zoom, intersectionTarget, intersectionFunction, verbose)))];
|
|
270
|
+
case 7:
|
|
222
271
|
/// if it partly covered:
|
|
223
272
|
// calculate the sub tiles contained in the current tile (in the next zoom level)
|
|
224
273
|
// for every sub tile recursively run step 6
|
|
225
274
|
//optimize partial base hashes
|
|
226
|
-
return [5 /*yield**/, __values(
|
|
227
|
-
|
|
275
|
+
return [5 /*yield**/, __values(__asyncDelegator.apply(void 0, [__asyncValues.apply(void 0, [_a.sent()])]))];
|
|
276
|
+
case 8:
|
|
228
277
|
/// if it partly covered:
|
|
229
278
|
// calculate the sub tiles contained in the current tile (in the next zoom level)
|
|
230
279
|
// for every sub tile recursively run step 6
|
|
231
280
|
//optimize partial base hashes
|
|
232
|
-
_a.sent();
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
281
|
+
return [4 /*yield*/, __await.apply(void 0, [_a.sent()])];
|
|
282
|
+
case 9:
|
|
283
|
+
/// if it partly covered:
|
|
284
|
+
// calculate the sub tiles contained in the current tile (in the next zoom level)
|
|
285
|
+
// for every sub tile recursively run step 6
|
|
286
|
+
//optimize partial base hashes
|
|
287
|
+
_a.sent();
|
|
288
|
+
_a.label = 10;
|
|
289
|
+
case 10:
|
|
290
|
+
y++;
|
|
291
|
+
return [3 /*break*/, 2];
|
|
292
|
+
case 11:
|
|
293
|
+
x++;
|
|
294
|
+
return [3 /*break*/, 1];
|
|
295
|
+
case 12: return [2 /*return*/];
|
|
296
|
+
}
|
|
297
|
+
});
|
|
242
298
|
});
|
|
243
299
|
};
|
|
244
300
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tileRanger.js","sourceRoot":"","sources":["../../src/geo/tileRanger.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"tileRanger.js","sourceRoot":"","sources":["../../src/geo/tileRanger.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { ITile, ITileRange } from '../models/interfaces/geo/iTile';
|
|
2
|
-
export declare function tilesGenerator(rangeGen:
|
|
2
|
+
export declare function tilesGenerator(rangeGen: AsyncIterable<ITileRange>): AsyncGenerator<ITile>;
|
|
3
3
|
//# sourceMappingURL=tilesGenerator.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tilesGenerator.d.ts","sourceRoot":"","sources":["../../src/geo/tilesGenerator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAEnE,
|
|
1
|
+
{"version":3,"file":"tilesGenerator.d.ts","sourceRoot":"","sources":["../../src/geo/tilesGenerator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAEnE,wBAAuB,cAAc,CAAC,QAAQ,EAAE,aAAa,CAAC,UAAU,CAAC,GAAG,cAAc,CAAC,KAAK,CAAC,CAYhG"}
|
|
@@ -26,69 +26,86 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
26
26
|
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
27
27
|
}
|
|
28
28
|
};
|
|
29
|
-
var
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
throw new TypeError(
|
|
29
|
+
var __asyncValues = (this && this.__asyncValues) || function (o) {
|
|
30
|
+
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
|
|
31
|
+
var m = o[Symbol.asyncIterator], i;
|
|
32
|
+
return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
|
|
33
|
+
function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
|
|
34
|
+
function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
|
|
35
|
+
};
|
|
36
|
+
var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }
|
|
37
|
+
var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) {
|
|
38
|
+
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
|
|
39
|
+
var g = generator.apply(thisArg, _arguments || []), i, q = [];
|
|
40
|
+
return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
|
|
41
|
+
function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
|
|
42
|
+
function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
|
|
43
|
+
function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
|
|
44
|
+
function fulfill(value) { resume("next", value); }
|
|
45
|
+
function reject(value) { resume("throw", value); }
|
|
46
|
+
function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
|
|
39
47
|
};
|
|
40
48
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
41
49
|
exports.tilesGenerator = void 0;
|
|
42
50
|
function tilesGenerator(rangeGen) {
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
51
|
+
return __asyncGenerator(this, arguments, function tilesGenerator_1() {
|
|
52
|
+
var rangeGen_1, rangeGen_1_1, range, x, y, e_1_1;
|
|
53
|
+
var e_1, _a;
|
|
54
|
+
return __generator(this, function (_b) {
|
|
55
|
+
switch (_b.label) {
|
|
56
|
+
case 0:
|
|
57
|
+
_b.trys.push([0, 12, 13, 18]);
|
|
58
|
+
rangeGen_1 = __asyncValues(rangeGen);
|
|
59
|
+
_b.label = 1;
|
|
60
|
+
case 1: return [4 /*yield*/, __await(rangeGen_1.next())];
|
|
61
|
+
case 2:
|
|
62
|
+
if (!(rangeGen_1_1 = _b.sent(), !rangeGen_1_1.done)) return [3 /*break*/, 11];
|
|
63
|
+
range = rangeGen_1_1.value;
|
|
64
|
+
x = range.minX;
|
|
65
|
+
_b.label = 3;
|
|
66
|
+
case 3:
|
|
67
|
+
if (!(x < range.maxX)) return [3 /*break*/, 10];
|
|
68
|
+
y = range.minY;
|
|
69
|
+
_b.label = 4;
|
|
70
|
+
case 4:
|
|
71
|
+
if (!(y < range.maxY)) return [3 /*break*/, 9];
|
|
72
|
+
return [4 /*yield*/, __await(Promise.resolve({
|
|
73
|
+
x: x,
|
|
74
|
+
y: y,
|
|
75
|
+
zoom: range.zoom,
|
|
76
|
+
}))];
|
|
77
|
+
case 5: return [4 /*yield*/, __await.apply(void 0, [_b.sent()])];
|
|
78
|
+
case 6: return [4 /*yield*/, _b.sent()];
|
|
79
|
+
case 7:
|
|
80
|
+
_b.sent();
|
|
81
|
+
_b.label = 8;
|
|
82
|
+
case 8:
|
|
83
|
+
y++;
|
|
84
|
+
return [3 /*break*/, 4];
|
|
85
|
+
case 9:
|
|
86
|
+
x++;
|
|
87
|
+
return [3 /*break*/, 3];
|
|
88
|
+
case 10: return [3 /*break*/, 1];
|
|
89
|
+
case 11: return [3 /*break*/, 18];
|
|
90
|
+
case 12:
|
|
91
|
+
e_1_1 = _b.sent();
|
|
92
|
+
e_1 = { error: e_1_1 };
|
|
93
|
+
return [3 /*break*/, 18];
|
|
94
|
+
case 13:
|
|
95
|
+
_b.trys.push([13, , 16, 17]);
|
|
96
|
+
if (!(rangeGen_1_1 && !rangeGen_1_1.done && (_a = rangeGen_1.return))) return [3 /*break*/, 15];
|
|
97
|
+
return [4 /*yield*/, __await(_a.call(rangeGen_1))];
|
|
98
|
+
case 14:
|
|
99
|
+
_b.sent();
|
|
100
|
+
_b.label = 15;
|
|
101
|
+
case 15: return [3 /*break*/, 17];
|
|
102
|
+
case 16:
|
|
103
|
+
if (e_1) throw e_1.error;
|
|
104
|
+
return [7 /*endfinally*/];
|
|
105
|
+
case 17: return [7 /*endfinally*/];
|
|
106
|
+
case 18: return [2 /*return*/];
|
|
107
|
+
}
|
|
108
|
+
});
|
|
92
109
|
});
|
|
93
110
|
}
|
|
94
111
|
exports.tilesGenerator = tilesGenerator;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tilesGenerator.js","sourceRoot":"","sources":["../../src/geo/tilesGenerator.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"tilesGenerator.js","sourceRoot":"","sources":["../../src/geo/tilesGenerator.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,SAAuB,cAAc,CAAC,QAAmC;;;;;;;;oBAC7C,aAAA,cAAA,QAAQ,CAAA;;;;;oBAAjB,KAAK,qBAAA,CAAA;oBACX,CAAC,GAAG,KAAK,CAAC,IAAI;;;yBAAE,CAAA,CAAC,GAAG,KAAK,CAAC,IAAI,CAAA;oBAC5B,CAAC,GAAG,KAAK,CAAC,IAAI;;;yBAAE,CAAA,CAAC,GAAG,KAAK,CAAC,IAAI,CAAA;oBAC/B,6BAAM,OAAO,CAAC,OAAO,CAAC;4BAC1B,CAAC,GAAA;4BACD,CAAC,GAAA;4BACD,IAAI,EAAE,KAAK,CAAC,IAAI;yBACjB,CAAC,GAAA;oEAJI,SAIJ;wBAJF,gCAIE;;oBAJF,SAIE,CAAC;;;oBALoC,CAAC,EAAE,CAAA;;;oBADL,CAAC,EAAE,CAAA;;;;;;;;;;;;;;;;;;;;;;;;CAU/C;AAZD,wCAYC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"timeout.d.ts","sourceRoot":"","sources":["../../src/utils/timeout.ts"],"names":[],"mappings":"AAAA,wBAAsB,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEvD"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (_) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.timeout = void 0;
|
|
40
|
+
function timeout(ms) {
|
|
41
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
42
|
+
return __generator(this, function (_a) {
|
|
43
|
+
return [2 /*return*/, new Promise(function (resolve) { return setTimeout(resolve, ms); })];
|
|
44
|
+
});
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
exports.timeout = timeout;
|
|
48
|
+
//# sourceMappingURL=timeout.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"timeout.js","sourceRoot":"","sources":["../../src/utils/timeout.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,SAAsB,OAAO,CAAC,EAAU;;;YACtC,sBAAO,IAAI,OAAO,CAAC,UAAC,OAAO,IAAK,OAAA,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,EAAvB,CAAuB,CAAC,EAAC;;;CAC1D;AAFD,0BAEC"}
|