@math.gl/geospatial 5.0.0-beta.1 → 5.0.0-beta.2

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 (90) hide show
  1. package/dist/crs/crs-identifier.d.ts +23 -0
  2. package/dist/crs/crs-identifier.d.ts.map +1 -0
  3. package/dist/crs/crs-identifier.js +74 -0
  4. package/dist/crs/crs-identifier.js.map +1 -0
  5. package/dist/crs/index.cjs +48 -0
  6. package/dist/crs/index.cjs.map +2 -2
  7. package/dist/crs/index.d.ts +1 -0
  8. package/dist/crs/index.d.ts.map +1 -1
  9. package/dist/crs/index.js +1 -0
  10. package/dist/crs/index.js.map +1 -1
  11. package/dist/discontinuous/cap-map.d.ts.map +1 -1
  12. package/dist/discontinuous/cap-map.js +197 -13
  13. package/dist/discontinuous/cap-map.js.map +1 -1
  14. package/dist/discontinuous/elastic/geometry.d.ts +1 -1
  15. package/dist/discontinuous/elastic/geometry.d.ts.map +1 -1
  16. package/dist/discontinuous/elastic/geometry.js +7 -7
  17. package/dist/discontinuous/elastic/geometry.js.map +1 -1
  18. package/dist/discontinuous/elastic/map.d.ts.map +1 -1
  19. package/dist/discontinuous/elastic/map.js +263 -23
  20. package/dist/discontinuous/elastic/map.js.map +1 -1
  21. package/dist/discontinuous/elastic/source-arc.d.ts +10 -0
  22. package/dist/discontinuous/elastic/source-arc.d.ts.map +1 -0
  23. package/dist/discontinuous/elastic/source-arc.js +111 -0
  24. package/dist/discontinuous/elastic/source-arc.js.map +1 -0
  25. package/dist/discontinuous/global-polygons.d.ts +1 -1
  26. package/dist/discontinuous/global-polygons.d.ts.map +1 -1
  27. package/dist/discontinuous/global-polygons.js +49 -1
  28. package/dist/discontinuous/global-polygons.js.map +1 -1
  29. package/dist/discontinuous/map-engine.d.ts +9 -0
  30. package/dist/discontinuous/map-engine.d.ts.map +1 -1
  31. package/dist/discontinuous/map-layout.d.ts +21 -0
  32. package/dist/discontinuous/map-layout.d.ts.map +1 -1
  33. package/dist/discontinuous/map-layout.js +116 -1
  34. package/dist/discontinuous/map-layout.js.map +1 -1
  35. package/dist/discontinuous/map-transition.d.ts.map +1 -1
  36. package/dist/discontinuous/map-transition.js +66 -3
  37. package/dist/discontinuous/map-transition.js.map +1 -1
  38. package/dist/discontinuous/mercator-map.d.ts +2 -2
  39. package/dist/discontinuous/mercator-map.d.ts.map +1 -1
  40. package/dist/discontinuous/mercator-map.js +123 -11
  41. package/dist/discontinuous/mercator-map.js.map +1 -1
  42. package/dist/discontinuous/polygon-constraints.d.ts +16 -0
  43. package/dist/discontinuous/polygon-constraints.d.ts.map +1 -0
  44. package/dist/discontinuous/polygon-constraints.js +157 -0
  45. package/dist/discontinuous/polygon-constraints.js.map +1 -0
  46. package/dist/discontinuous/prepare-features.d.ts +27 -0
  47. package/dist/discontinuous/prepare-features.d.ts.map +1 -1
  48. package/dist/discontinuous/prepare-features.js +106 -5
  49. package/dist/discontinuous/prepare-features.js.map +1 -1
  50. package/dist/discontinuous/rotated-map.d.ts +9 -0
  51. package/dist/discontinuous/rotated-map.d.ts.map +1 -1
  52. package/dist/discontinuous/source-arc.d.ts +4 -0
  53. package/dist/discontinuous/source-arc.d.ts.map +1 -0
  54. package/dist/discontinuous/source-arc.js +23 -0
  55. package/dist/discontinuous/source-arc.js.map +1 -0
  56. package/dist/discontinuous/world-kernels.d.ts +1 -1
  57. package/dist/discontinuous.cjs +1047 -75
  58. package/dist/discontinuous.cjs.map +3 -3
  59. package/dist/index.cjs +48 -0
  60. package/dist/index.cjs.map +2 -2
  61. package/dist/index.d.ts +1 -1
  62. package/dist/index.d.ts.map +1 -1
  63. package/dist/index.js +1 -1
  64. package/dist/index.js.map +1 -1
  65. package/dist/turf.cjs +69 -5
  66. package/dist/turf.cjs.map +2 -2
  67. package/dist/turf.d.ts +9 -0
  68. package/dist/turf.d.ts.map +1 -1
  69. package/dist/turf.js +67 -0
  70. package/dist/turf.js.map +1 -1
  71. package/dist/workers/index.cjs +1075 -79
  72. package/dist/workers/index.cjs.map +3 -3
  73. package/dist/workers/operations.cjs +1049 -77
  74. package/dist/workers/operations.cjs.map +3 -3
  75. package/package.json +5 -5
  76. package/src/crs/crs-identifier.ts +86 -0
  77. package/src/crs/index.ts +1 -0
  78. package/src/discontinuous/cap-map.ts +248 -19
  79. package/src/discontinuous/elastic/geometry.ts +18 -7
  80. package/src/discontinuous/elastic/map.ts +334 -30
  81. package/src/discontinuous/elastic/source-arc.ts +129 -0
  82. package/src/discontinuous/global-polygons.ts +56 -2
  83. package/src/discontinuous/map-layout.ts +165 -2
  84. package/src/discontinuous/map-transition.ts +67 -3
  85. package/src/discontinuous/mercator-map.ts +151 -12
  86. package/src/discontinuous/polygon-constraints.ts +184 -0
  87. package/src/discontinuous/prepare-features.ts +154 -6
  88. package/src/discontinuous/source-arc.ts +31 -0
  89. package/src/index.ts +1 -0
  90. package/src/turf.ts +86 -0
@@ -167,6 +167,10 @@ export class DiscontinuousMap {
167
167
  for (let i = 1; i < points.length; i++)
168
168
  validateArc(points[i - 1], points[i]);
169
169
  const results = [];
170
+ const cumulative = options.pathDistances ? [0] : undefined;
171
+ if (cumulative)
172
+ for (let i = 1; i < points.length; i++)
173
+ cumulative.push(cumulative[i - 1] + angle(points[i - 1], points[i]));
170
174
  for (const r of this.compiled) {
171
175
  let current = null;
172
176
  for (let i = 1; i < points.length; i++) {
@@ -175,6 +179,22 @@ export class DiscontinuousMap {
175
179
  current = null;
176
180
  continue;
177
181
  }
182
+ const reason = (p, endpoint, isEndpoint) => {
183
+ if (isEndpoint && angle(p, endpoint) < 1e-12)
184
+ return 'source-endpoint';
185
+ const kinds = r.normals
186
+ .map((normal, edge) => Math.abs(dot(normal, p)) < 1e-9
187
+ ? this.seams.find(s => s.regions.some((id, i) => id === r.definition.id && s.edges[i] === edge))?.kind
188
+ : undefined)
189
+ .filter(Boolean);
190
+ return kinds.includes('boundary')
191
+ ? 'coverage-boundary'
192
+ : kinds.includes('cut')
193
+ ? 'chart-cut'
194
+ : kinds.includes('join')
195
+ ? 'continuous-chart-join'
196
+ : 'coverage-boundary';
197
+ };
178
198
  const sampled = this.sample(r, clipped[0], clipped[1], settings);
179
199
  if (sampled.length < 2)
180
200
  continue;
@@ -182,6 +202,10 @@ export class DiscontinuousMap {
182
202
  angle(geographic(current.sourceCoordinates[current.sourceCoordinates.length - 1]), clipped[0]) > EPS ||
183
203
  !this.sameProjectedPoint(current.coordinates[current.coordinates.length - 1], this.project(r, sampled[0]))) {
184
204
  current = { regionId: r.definition.id, coordinates: [], sourceCoordinates: [] };
205
+ if (options.pathProvenance)
206
+ current.provenance = { segments: [], parameters: [], vertices: [], angularDistances: [] };
207
+ if (current.provenance && options.pathBoundaries)
208
+ current.provenance.startReason = reason(clipped[0], points[0], i === 1);
185
209
  results.push(current);
186
210
  }
187
211
  else
@@ -189,7 +213,18 @@ export class DiscontinuousMap {
189
213
  for (const p of sampled) {
190
214
  current.coordinates.push(this.project(r, p));
191
215
  current.sourceCoordinates.push(coordinates(p));
216
+ if (current.provenance) {
217
+ const length = angle(points[i - 1], points[i]);
218
+ const t = length ? Math.min(1, Math.max(0, angle(points[i - 1], p) / length)) : 0;
219
+ current.provenance.segments.push(i - 1);
220
+ current.provenance.parameters.push(t);
221
+ current.provenance.vertices.push(angle(points[i - 1], p) < 1e-12 ? i - 1 : angle(points[i], p) < 1e-12 ? i : 0xffffffff);
222
+ if (cumulative)
223
+ current.provenance.angularDistances.push(cumulative[i - 1] + t * length);
224
+ }
192
225
  }
226
+ if (current.provenance && options.pathBoundaries)
227
+ current.provenance.endReason = reason(clipped[1], points[points.length - 1], i === points.length - 1);
193
228
  // Even an excursion returning to the same seam point starts a new part.
194
229
  if (!this.contains(r, points[i]))
195
230
  current = null;
@@ -308,26 +343,106 @@ export class DiscontinuousMap {
308
343
  coordinates: [],
309
344
  sourceCoordinates: []
310
345
  };
346
+ if (options.polygonEdgeProvenance)
347
+ output.edgeProvenance = [];
311
348
  polygon.forEach((ring, index) => {
312
349
  const sphere = ring.map(p => unit(add(center, add(scale(x, p[0]), scale(y, p[1])))));
313
350
  const points = [];
351
+ const edges = [];
352
+ const classify = (a, b) => {
353
+ // Directional pole copies can differ in floating-point coordinates
354
+ // while describing the same source direction. Their zero-length
355
+ // connector is computational, never an original boundary.
356
+ if (angle(a, b) < 64 * Number.EPSILON)
357
+ return {
358
+ kind: 'continuous-chart-join',
359
+ ring: 0xffffffff,
360
+ segment: 0xffffffff,
361
+ t0: 0,
362
+ t1: 0
363
+ };
364
+ // Attribute the boolean boundary in the source clipping chart, before
365
+ // projection/resampling. Original constraints win on coincident cuts.
366
+ const candidates = [];
367
+ vectors.forEach((source, ring) => source.forEach((u, segment) => {
368
+ const v = source[(segment + 1) % source.length], length = angle(u, v);
369
+ if (length > 1e-12 &&
370
+ [a, b].every(p => Math.abs(dot(unit(cross(u, v)), p)) < 1e-12 &&
371
+ Math.abs(angle(u, p) + angle(p, v) - length) < 1e-10))
372
+ candidates.push({ ring, segment });
373
+ }));
374
+ if (candidates.length > 1)
375
+ throw new Error('Ambiguous polygon boundary provenance');
376
+ if (candidates.length) {
377
+ const { ring, segment } = candidates[0], source = vectors[ring], u = source[segment], length = angle(u, source[(segment + 1) % source.length]);
378
+ return {
379
+ kind: 'source-boundary',
380
+ ring,
381
+ segment,
382
+ t0: Math.min(1, angle(u, a) / length),
383
+ t1: Math.min(1, angle(u, b) / length)
384
+ };
385
+ }
386
+ const kinds = r.normals
387
+ .map((n, edge) => [a, b].every(p => Math.abs(dot(n, p)) < 1e-9)
388
+ ? this.seams.find(s => s.regions.some((id, i) => id === r.definition.id && s.edges[i] === edge))?.kind
389
+ : undefined)
390
+ .filter(Boolean);
391
+ if (!kinds.length)
392
+ throw new Error('Unknown polygon clipping constraint');
393
+ return {
394
+ kind: kinds.includes('boundary')
395
+ ? 'coverage-boundary'
396
+ : kinds.includes('cut')
397
+ ? 'chart-cut'
398
+ : 'continuous-chart-join',
399
+ ring: 0xffffffff,
400
+ segment: 0xffffffff,
401
+ t0: 0,
402
+ t1: 0
403
+ };
404
+ };
314
405
  for (let i = 1; i < sphere.length; i++) {
406
+ const origin = options.polygonEdgeProvenance &&
407
+ !sphere[i - 1].every((value, k) => value === sphere[i][k])
408
+ ? classify(sphere[i - 1], sphere[i])
409
+ : undefined;
315
410
  const sampled = this.sample(r, sphere[i - 1], sphere[i], settings);
316
411
  for (const point of sampled) {
317
412
  const previous = points[points.length - 1];
318
- if (!previous || !point.every((value, k) => value === previous[k]))
413
+ if (!previous || !point.every((value, k) => value === previous[k])) {
414
+ if (previous && origin) {
415
+ const edge = { ...origin };
416
+ if (edge.kind === 'source-boundary') {
417
+ const source = vectors[edge.ring], u = source[edge.segment], length = angle(u, source[(edge.segment + 1) % source.length]);
418
+ edge.t0 = Math.min(1, angle(u, previous) / length);
419
+ edge.t1 = Math.min(1, angle(u, point) / length);
420
+ }
421
+ edges.push(edge);
422
+ }
319
423
  points.push(point);
424
+ }
320
425
  }
321
426
  }
322
427
  if (points.length < 3)
323
428
  return;
324
429
  if (points[points.length - 1].every((value, k) => value === points[0][k]))
325
430
  points.pop();
431
+ if (options.polygonEdgeProvenance && edges.length < points.length)
432
+ edges.push(classify(points[points.length - 1], points[0]));
326
433
  points.push(points[0]);
327
434
  const xy = points.map(p => this.project(r, p));
328
435
  if (ringOrientation(xy) > 0 !== (index === 0)) {
329
436
  xy.reverse();
330
437
  points.reverse();
438
+ edges.reverse();
439
+ for (const e of edges)
440
+ [e.t0, e.t1] = [e.t1, e.t0];
441
+ }
442
+ if (output.edgeProvenance) {
443
+ if (edges.length !== points.length - 1)
444
+ throw new Error('Mismatched polygon edge provenance');
445
+ output.edgeProvenance.push(edges);
331
446
  }
332
447
  output.coordinates.push(xy);
333
448
  output.sourceCoordinates.push(points.map(coordinates));
@@ -1 +1 @@
1
- {"version":3,"file":"map-layout.js","sourceRoot":"","sources":["../../src/discontinuous/map-layout.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"map-layout.js","sourceRoot":"","sources":["../../src/discontinuous/map-layout.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"map-transition.d.ts","sourceRoot":"","sources":["../../src/discontinuous/map-transition.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,SAAS,EAAE,aAAa,EAAC,wBAAqB;AAC3D,OAAO,KAAK,EAAC,kBAAkB,EAAE,kBAAkB,EAAY,wBAAqB;AAIpF,MAAM,MAAM,oBAAoB,GAAG;IAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,WAAW,CAAA;CAAC,CAAC;AAChF,MAAM,MAAM,iBAAiB,GAAG,QAAQ,CAAC;IACvC,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iBAAiB,EAAE,SAAS,CAAC,SAAS,kBAAkB,EAAE,CAAC,EAAE,CAAC;IAC9D,IAAI,EAAE,SAAS,CAAC,SAAS,kBAAkB,EAAE,CAAC,EAAE,CAAC;IACjD,EAAE,EAAE,SAAS,CAAC,SAAS,kBAAkB,EAAE,CAAC,EAAE,CAAC;CAChD,CAAC,CAAC;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,aAAa,EAAE,EAAE,CAAC;IAC/B,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF;iFACiF;AACjF,qBAAa,qBAAqB;IAI9B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,GAAG,WAAW;IACzC,OAAO,CAAC,MAAM;IAJhB,QAAQ,CAAC,KAAK,EAAE,SAAS,iBAAiB,EAAE,CAAC;gBAE3C,KAAK,EAAE,iBAAiB,EAAE,EACjB,QAAQ,EAAE,QAAQ,GAAG,WAAW,EACjC,MAAM,EAAE,MAAM;IAaxB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,kBAAkB,EAAE;CAuC/C;AAED,8EAA8E;AAC9E,qBAAa,aAAa;IAItB,QAAQ,CAAC,MAAM,EAAE,SAAS;IAC1B,QAAQ,CAAC,MAAM,EAAE,SAAS;IAJ5B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,GAAG,WAAW,CAAC;IAC1C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;gBAEb,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,SAAS,EAC1B,OAAO,GAAE,oBAAyB;IAgBpC,YAAY,CAAC,QAAQ,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI;IAsBhF,OAAO,KAAK,WAAW,GAEtB;IACD,WAAW,CACT,IAAI,EAAE,SAAS,kBAAkB,EAAE,EACnC,OAAO,CAAC,EAAE,kBAAkB,GAC3B,qBAAqB;IA+CxB,cAAc,CACZ,KAAK,EAAE,SAAS,CAAC,SAAS,kBAAkB,EAAE,CAAC,EAAE,EACjD,OAAO,CAAC,EAAE,kBAAkB,GAC3B,qBAAqB;CA0DzB"}
1
+ {"version":3,"file":"map-transition.d.ts","sourceRoot":"","sources":["../../src/discontinuous/map-transition.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,SAAS,EAAE,aAAa,EAAC,wBAAqB;AAC3D,OAAO,KAAK,EAAC,kBAAkB,EAAE,kBAAkB,EAAY,wBAAqB;AAqEpF,MAAM,MAAM,oBAAoB,GAAG;IAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,WAAW,CAAA;CAAC,CAAC;AAChF,MAAM,MAAM,iBAAiB,GAAG,QAAQ,CAAC;IACvC,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iBAAiB,EAAE,SAAS,CAAC,SAAS,kBAAkB,EAAE,CAAC,EAAE,CAAC;IAC9D,IAAI,EAAE,SAAS,CAAC,SAAS,kBAAkB,EAAE,CAAC,EAAE,CAAC;IACjD,EAAE,EAAE,SAAS,CAAC,SAAS,kBAAkB,EAAE,CAAC,EAAE,CAAC;CAChD,CAAC,CAAC;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,aAAa,EAAE,EAAE,CAAC;IAC/B,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF;iFACiF;AACjF,qBAAa,qBAAqB;IAI9B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,GAAG,WAAW;IACzC,OAAO,CAAC,MAAM;IAJhB,QAAQ,CAAC,KAAK,EAAE,SAAS,iBAAiB,EAAE,CAAC;gBAE3C,KAAK,EAAE,iBAAiB,EAAE,EACjB,QAAQ,EAAE,QAAQ,GAAG,WAAW,EACjC,MAAM,EAAE,MAAM;IAaxB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,kBAAkB,EAAE;CAuC/C;AAED,8EAA8E;AAC9E,qBAAa,aAAa;IAItB,QAAQ,CAAC,MAAM,EAAE,SAAS;IAC1B,QAAQ,CAAC,MAAM,EAAE,SAAS;IAJ5B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,GAAG,WAAW,CAAC;IAC1C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;gBAEb,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,SAAS,EAC1B,OAAO,GAAE,oBAAyB;IAgBpC,YAAY,CAAC,QAAQ,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI;IAsBhF,OAAO,KAAK,WAAW,GAEtB;IACD,WAAW,CACT,IAAI,EAAE,SAAS,kBAAkB,EAAE,EACnC,OAAO,CAAC,EAAE,kBAAkB,GAC3B,qBAAqB;IA+CxB,cAAc,CACZ,KAAK,EAAE,SAAS,CAAC,SAAS,kBAAkB,EAAE,CAAC,EAAE,EACjD,OAAO,CAAC,EAAE,kBAAkB,GAC3B,qBAAqB;CA0DzB"}
@@ -4,6 +4,70 @@
4
4
  import polygonClipping from 'polygon-clipping';
5
5
  import { geographic } from "./math.js";
6
6
  import { rectangle } from "./elastic/geometry.js";
7
+ // Qualified default world formulas with finite coverage and no interior cuts.
8
+ // Keep this explicit: a newly registered kernel is not automatically qualified.
9
+ // Bertin and Sinu-Mollweide need rotated-chart coverage fixes; Gringorten has
10
+ // interior cuts. Singular or folded formulas and parameter overrides remain
11
+ // conservative until their endpoint coverage and correspondence are qualified.
12
+ const directWorldProjections = new Set([
13
+ 'gilbert',
14
+ 'aitoff',
15
+ 'august',
16
+ 'baker',
17
+ 'boggs',
18
+ 'bromley',
19
+ 'collignon',
20
+ 'craster',
21
+ 'eckert1',
22
+ 'eckert2',
23
+ 'eckert3',
24
+ 'eckert4',
25
+ 'eckert5',
26
+ 'eckert6',
27
+ 'fahey',
28
+ 'foucaut',
29
+ 'ginzburg4',
30
+ 'ginzburg5',
31
+ 'ginzburg6',
32
+ 'ginzburg8',
33
+ 'ginzburg9',
34
+ 'homolosine',
35
+ 'kavrayskiy7',
36
+ 'larrivee',
37
+ 'laskowski',
38
+ 'miller',
39
+ 'mollweide',
40
+ 'mt-flat-polar-parabolic',
41
+ 'mt-flat-polar-quartic',
42
+ 'mt-flat-polar-sinusoidal',
43
+ 'natural-earth2',
44
+ 'nell-hammer',
45
+ 'patterson',
46
+ 'robinson',
47
+ 'sinusoidal',
48
+ 'times',
49
+ 'van-der-grinten',
50
+ 'van-der-grinten2',
51
+ 'van-der-grinten3',
52
+ 'van-der-grinten4',
53
+ 'wagner4',
54
+ 'wagner6',
55
+ 'winkel3',
56
+ 'bonne',
57
+ 'bottomley',
58
+ 'cylindrical-equal-area',
59
+ 'cylindrical-stereographic',
60
+ 'foucaut-sinusoidal',
61
+ 'hammer',
62
+ 'hill',
63
+ 'hufnagel',
64
+ 'hyperelliptical',
65
+ 'lagrange',
66
+ 'loximuthal',
67
+ 'wagner7',
68
+ 'quartic-authalic',
69
+ 'wagner'
70
+ ]);
7
71
  /** Prepared geographic correspondence. Construct once, evaluate cheaply per frame.
8
72
  * Direct morphs preserve cuts, but can overlap or fold at intermediate times. */
9
73
  export class MapTransitionGeometry {
@@ -263,9 +327,8 @@ function fullCoverage(map) {
263
327
  completeSections && !overlaps && polygonClipping.difference(world, ...domains).length === 0;
264
328
  }
265
329
  else if (d.type === 'world') {
266
- // Deliberately bounded to global formulas with finite poles. Other kernels,
267
- // custom charts and regional maps retain the conservative globe route.
268
- covered = ['sinusoidal', 'mollweide', 'robinson'].includes(d.projection);
330
+ covered =
331
+ directWorldProjections.has(d.projection) && Object.keys(d.parameters ?? {}).length === 0;
269
332
  }
270
333
  coverageCache.set(map, covered);
271
334
  return covered;
@@ -1 +1 @@
1
- {"version":3,"file":"map-transition.js","sourceRoot":"","sources":["../../src/discontinuous/map-transition.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"map-transition.js","sourceRoot":"","sources":["../../src/discontinuous/map-transition.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- import polygonClipping from 'polygon-clipping';
2
1
  import { DiscontinuousMap, type GeographicPosition, type MapLine, type MapSamplingOptions } from "./map-layout.js";
3
2
  import { type Vector } from "./math.js";
4
3
  /** Spherical Mercator, clipped to a finite latitude band after seam splitting. */
@@ -16,9 +15,10 @@ export declare class MercatorMap extends DiscontinuousMap {
16
15
  private source;
17
16
  projectLine(line: readonly GeographicPosition[], options?: MapSamplingOptions): MapLine[];
18
17
  projectPolygon(rings: readonly (readonly GeographicPosition[])[], options?: MapSamplingOptions): {
18
+ edgeProvenance?: import("./map-layout").MapPolygonEdge[][];
19
19
  regionId: string;
20
- coordinates: polygonClipping.Polygon;
21
20
  sourceCoordinates: [number, number][][];
21
+ coordinates: import("./math").Position[][];
22
22
  }[];
23
23
  }
24
24
  //# sourceMappingURL=mercator-map.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mercator-map.d.ts","sourceRoot":"","sources":["../../src/discontinuous/mercator-map.ts"],"names":[],"mappings":"AAIA,OAAO,eAAe,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EACL,gBAAgB,EAChB,KAAK,kBAAkB,EACvB,KAAK,OAAO,EAEZ,KAAK,kBAAkB,EACxB,wBAAqB;AACtB,OAAO,EAAkB,KAAK,MAAM,EAAC,kBAAe;AAEpD,kFAAkF;AAClF,qBAAa,WAAY,SAAQ,gBAAgB;IAI7C,QAAQ,CAAC,MAAM;IACf,QAAQ,CAAC,eAAe;IAJ1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;gBAEnB,MAAM,SAAI,EACV,eAAe,SAAI,EAC5B,WAAW,SAAmB;cAiDb,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM;IAKpE,qBAAqB,IAAI,OAAO;IAGhC,WAAW,CAAC,CAAC,EAAE,kBAAkB;IAIjC,YAAY,CAAC,CAAC,EAAE,kBAAkB,EAAE,EAAE,CAAC,EAAE,MAAM;IAI/C,cAAc,CAAC,CAAC,EAAE,kBAAkB,EAAE,EAAE,CAAC,EAAE,MAAM;IAK1D,OAAO,CAAC,MAAM;IAML,WAAW,CAClB,IAAI,EAAE,SAAS,kBAAkB,EAAE,EACnC,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,EAAE;IAoCH,cAAc,CACrB,KAAK,EAAE,SAAS,CAAC,SAAS,kBAAkB,EAAE,CAAC,EAAE,EACjD,OAAO,CAAC,EAAE,kBAAkB;;;;;CAqB/B"}
1
+ {"version":3,"file":"mercator-map.d.ts","sourceRoot":"","sources":["../../src/discontinuous/mercator-map.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,gBAAgB,EAChB,KAAK,kBAAkB,EACvB,KAAK,OAAO,EAEZ,KAAK,kBAAkB,EACxB,wBAAqB;AACtB,OAAO,EAA4C,KAAK,MAAM,EAAC,kBAAe;AAE9E,kFAAkF;AAClF,qBAAa,WAAY,SAAQ,gBAAgB;IAI7C,QAAQ,CAAC,MAAM;IACf,QAAQ,CAAC,eAAe;IAJ1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;gBAEnB,MAAM,SAAI,EACV,eAAe,SAAI,EAC5B,WAAW,SAAmB;cAiDb,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM;IAKpE,qBAAqB,IAAI,OAAO;IAGhC,WAAW,CAAC,CAAC,EAAE,kBAAkB;IAIjC,YAAY,CAAC,CAAC,EAAE,kBAAkB,EAAE,EAAE,CAAC,EAAE,MAAM;IAI/C,cAAc,CAAC,CAAC,EAAE,kBAAkB,EAAE,EAAE,CAAC,EAAE,MAAM;IAK1D,OAAO,CAAC,MAAM;IAML,WAAW,CAClB,IAAI,EAAE,SAAS,kBAAkB,EAAE,EACnC,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,EAAE;IAqGH,cAAc,CACrB,KAAK,EAAE,SAAS,CAAC,SAAS,kBAAkB,EAAE,CAAC,EAAE,EACjD,OAAO,CAAC,EAAE,kBAAkB;;;;;;CA6F/B"}