@basemaps/cli 6.46.0 → 7.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 (184) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/README.md +10 -108
  3. package/build/cli/config/action.bundle.d.ts.map +1 -1
  4. package/build/cli/config/action.bundle.js +2 -4
  5. package/build/cli/config/action.bundle.js.map +1 -1
  6. package/build/cli/config/action.import.d.ts +3 -3
  7. package/build/cli/config/action.import.d.ts.map +1 -1
  8. package/build/cli/config/action.import.js.map +1 -1
  9. package/build/cli/index.d.ts.map +1 -1
  10. package/build/cli/index.js +4 -13
  11. package/build/cli/index.js.map +1 -1
  12. package/build/cli/overview/action.create.overview.d.ts +2 -0
  13. package/build/cli/overview/action.create.overview.d.ts.map +1 -1
  14. package/build/cli/overview/action.create.overview.js +5 -1
  15. package/build/cli/overview/action.create.overview.js.map +1 -1
  16. package/build/cli/util.d.ts +1 -6
  17. package/build/cli/util.d.ts.map +1 -1
  18. package/build/cli/util.js +19 -27
  19. package/build/cli/util.js.map +1 -1
  20. package/build/cog/builder.d.ts +1 -1
  21. package/build/cog/builder.d.ts.map +1 -1
  22. package/build/cog/builder.js +1 -1
  23. package/build/cog/builder.js.map +1 -1
  24. package/build/cog/cutline.d.ts +1 -1
  25. package/build/cog/cutline.d.ts.map +1 -1
  26. package/build/cog/cutline.js +1 -1
  27. package/build/cog/cutline.js.map +1 -1
  28. package/package.json +10 -15
  29. package/build/cli/base.cli.d.ts +0 -1
  30. package/build/cli/base.cli.d.ts.map +0 -1
  31. package/build/cli/base.cli.js +0 -2
  32. package/build/cli/base.cli.js.map +0 -1
  33. package/build/cli/cogify/__tests__/batch.job.test.d.ts +0 -2
  34. package/build/cli/cogify/__tests__/batch.job.test.d.ts.map +0 -1
  35. package/build/cli/cogify/__tests__/batch.job.test.js +0 -92
  36. package/build/cli/cogify/__tests__/batch.job.test.js.map +0 -1
  37. package/build/cli/cogify/__tests__/semver.test.d.ts +0 -2
  38. package/build/cli/cogify/__tests__/semver.test.d.ts.map +0 -1
  39. package/build/cli/cogify/__tests__/semver.test.js +0 -62
  40. package/build/cli/cogify/__tests__/semver.test.js.map +0 -1
  41. package/build/cli/cogify/action.cog.d.ts +0 -20
  42. package/build/cli/cogify/action.cog.d.ts.map +0 -1
  43. package/build/cli/cogify/action.cog.js +0 -198
  44. package/build/cli/cogify/action.cog.js.map +0 -1
  45. package/build/cli/cogify/action.job.d.ts +0 -28
  46. package/build/cli/cogify/action.job.d.ts.map +0 -1
  47. package/build/cli/cogify/action.job.js +0 -176
  48. package/build/cli/cogify/action.job.js.map +0 -1
  49. package/build/cli/cogify/action.make.cog.d.ts +0 -23
  50. package/build/cli/cogify/action.make.cog.d.ts.map +0 -1
  51. package/build/cli/cogify/action.make.cog.js +0 -218
  52. package/build/cli/cogify/action.make.cog.js.map +0 -1
  53. package/build/cli/cogify/action.make.cog.pr.d.ts +0 -25
  54. package/build/cli/cogify/action.make.cog.pr.d.ts.map +0 -1
  55. package/build/cli/cogify/action.make.cog.pr.js +0 -96
  56. package/build/cli/cogify/action.make.cog.pr.js.map +0 -1
  57. package/build/cli/cogify/batch.job.d.ts +0 -40
  58. package/build/cli/cogify/batch.job.d.ts.map +0 -1
  59. package/build/cli/cogify/batch.job.js +0 -205
  60. package/build/cli/cogify/batch.job.js.map +0 -1
  61. package/build/cli/cogify/cutline.d.ts +0 -5
  62. package/build/cli/cogify/cutline.d.ts.map +0 -1
  63. package/build/cli/cogify/cutline.js +0 -33
  64. package/build/cli/cogify/cutline.js.map +0 -1
  65. package/build/cli/cogify/semver.util.d.ts +0 -24
  66. package/build/cli/cogify/semver.util.d.ts.map +0 -1
  67. package/build/cli/cogify/semver.util.js +0 -56
  68. package/build/cli/cogify/semver.util.js.map +0 -1
  69. package/build/cli/config/action.cog.mapsheet.d.ts +0 -12
  70. package/build/cli/config/action.cog.mapsheet.d.ts.map +0 -1
  71. package/build/cli/config/action.cog.mapsheet.js +0 -107
  72. package/build/cli/config/action.cog.mapsheet.js.map +0 -1
  73. package/build/cli/github/github.d.ts +0 -49
  74. package/build/cli/github/github.d.ts.map +0 -1
  75. package/build/cli/github/github.js +0 -107
  76. package/build/cli/github/github.js.map +0 -1
  77. package/build/cli/github/make.cog.pr.d.ts +0 -42
  78. package/build/cli/github/make.cog.pr.d.ts.map +0 -1
  79. package/build/cli/github/make.cog.pr.js +0 -173
  80. package/build/cli/github/make.cog.pr.js.map +0 -1
  81. package/build/cli/sprites/action.sprites.d.ts +0 -11
  82. package/build/cli/sprites/action.sprites.d.ts.map +0 -1
  83. package/build/cli/sprites/action.sprites.js +0 -42
  84. package/build/cli/sprites/action.sprites.js.map +0 -1
  85. package/build/cog/__tests__/builder.test.d.ts +0 -2
  86. package/build/cog/__tests__/builder.test.d.ts.map +0 -1
  87. package/build/cog/__tests__/builder.test.js +0 -81
  88. package/build/cog/__tests__/builder.test.js.map +0 -1
  89. package/build/cog/__tests__/cog.stac.job.test.d.ts +0 -2
  90. package/build/cog/__tests__/cog.stac.job.test.d.ts.map +0 -1
  91. package/build/cog/__tests__/cog.stac.job.test.js +0 -319
  92. package/build/cog/__tests__/cog.stac.job.test.js.map +0 -1
  93. package/build/cog/__tests__/cog.test.d.ts +0 -2
  94. package/build/cog/__tests__/cog.test.d.ts.map +0 -1
  95. package/build/cog/__tests__/cog.test.js +0 -91
  96. package/build/cog/__tests__/cog.test.js.map +0 -1
  97. package/build/cog/__tests__/cog.vrt.test.d.ts +0 -2
  98. package/build/cog/__tests__/cog.vrt.test.d.ts.map +0 -1
  99. package/build/cog/__tests__/cog.vrt.test.js +0 -229
  100. package/build/cog/__tests__/cog.vrt.test.js.map +0 -1
  101. package/build/cog/__tests__/cutline.test.d.ts +0 -2
  102. package/build/cog/__tests__/cutline.test.d.ts.map +0 -1
  103. package/build/cog/__tests__/cutline.test.js +0 -300
  104. package/build/cog/__tests__/cutline.test.js.map +0 -1
  105. package/build/cog/__tests__/projection.loader.test.d.ts +0 -2
  106. package/build/cog/__tests__/projection.loader.test.d.ts.map +0 -1
  107. package/build/cog/__tests__/projection.loader.test.js +0 -27
  108. package/build/cog/__tests__/projection.loader.test.js.map +0 -1
  109. package/build/cog/__tests__/source.tiff.testhelper.d.ts +0 -8
  110. package/build/cog/__tests__/source.tiff.testhelper.d.ts.map +0 -1
  111. package/build/cog/__tests__/source.tiff.testhelper.js +0 -41
  112. package/build/cog/__tests__/source.tiff.testhelper.js.map +0 -1
  113. package/build/cog/cog.d.ts +0 -22
  114. package/build/cog/cog.d.ts.map +0 -1
  115. package/build/cog/cog.js +0 -72
  116. package/build/cog/cog.js.map +0 -1
  117. package/build/cog/cog.stac.job.d.ts +0 -106
  118. package/build/cog/cog.stac.job.d.ts.map +0 -1
  119. package/build/cog/cog.stac.job.js +0 -257
  120. package/build/cog/cog.stac.job.js.map +0 -1
  121. package/build/cog/cog.vrt.d.ts +0 -18
  122. package/build/cog/cog.vrt.d.ts.map +0 -1
  123. package/build/cog/cog.vrt.js +0 -102
  124. package/build/cog/cog.vrt.js.map +0 -1
  125. package/build/cog/constants.d.ts +0 -5
  126. package/build/cog/constants.d.ts.map +0 -1
  127. package/build/cog/constants.js +0 -5
  128. package/build/cog/constants.js.map +0 -1
  129. package/build/cog/job.factory.d.ts +0 -10
  130. package/build/cog/job.factory.d.ts.map +0 -1
  131. package/build/cog/job.factory.js +0 -92
  132. package/build/cog/job.factory.js.map +0 -1
  133. package/build/cog/projection.loader.d.ts +0 -13
  134. package/build/cog/projection.loader.d.ts.map +0 -1
  135. package/build/cog/projection.loader.js +0 -27
  136. package/build/cog/projection.loader.js.map +0 -1
  137. package/build/cog/stac.d.ts +0 -32
  138. package/build/cog/stac.d.ts.map +0 -1
  139. package/build/cog/stac.js +0 -3
  140. package/build/cog/stac.js.map +0 -1
  141. package/build/cog/types.d.ts +0 -83
  142. package/build/cog/types.d.ts.map +0 -1
  143. package/build/cog/types.js +0 -2
  144. package/build/cog/types.js.map +0 -1
  145. package/build/gdal/__tests__/gdal.progress.test.d.ts +0 -2
  146. package/build/gdal/__tests__/gdal.progress.test.d.ts.map +0 -1
  147. package/build/gdal/__tests__/gdal.progress.test.js +0 -22
  148. package/build/gdal/__tests__/gdal.progress.test.js.map +0 -1
  149. package/build/gdal/__tests__/gdal.test.d.ts +0 -2
  150. package/build/gdal/__tests__/gdal.test.d.ts.map +0 -1
  151. package/build/gdal/__tests__/gdal.test.js +0 -52
  152. package/build/gdal/__tests__/gdal.test.js.map +0 -1
  153. package/build/gdal/gdal.cog.d.ts +0 -42
  154. package/build/gdal/gdal.cog.d.ts.map +0 -1
  155. package/build/gdal/gdal.cog.js +0 -108
  156. package/build/gdal/gdal.cog.js.map +0 -1
  157. package/build/gdal/gdal.command.d.ts +0 -44
  158. package/build/gdal/gdal.command.d.ts.map +0 -1
  159. package/build/gdal/gdal.command.js +0 -87
  160. package/build/gdal/gdal.command.js.map +0 -1
  161. package/build/gdal/gdal.config.d.ts +0 -51
  162. package/build/gdal/gdal.config.d.ts.map +0 -1
  163. package/build/gdal/gdal.config.js +0 -23
  164. package/build/gdal/gdal.config.js.map +0 -1
  165. package/build/gdal/gdal.d.ts +0 -19
  166. package/build/gdal/gdal.d.ts.map +0 -1
  167. package/build/gdal/gdal.docker.d.ts +0 -18
  168. package/build/gdal/gdal.docker.d.ts.map +0 -1
  169. package/build/gdal/gdal.docker.js +0 -82
  170. package/build/gdal/gdal.docker.js.map +0 -1
  171. package/build/gdal/gdal.js +0 -28
  172. package/build/gdal/gdal.js.map +0 -1
  173. package/build/gdal/gdal.local.d.ts +0 -10
  174. package/build/gdal/gdal.local.d.ts.map +0 -1
  175. package/build/gdal/gdal.local.js +0 -22
  176. package/build/gdal/gdal.local.js.map +0 -1
  177. package/build/gdal/gdal.progress.d.ts +0 -16
  178. package/build/gdal/gdal.progress.d.ts.map +0 -1
  179. package/build/gdal/gdal.progress.js +0 -50
  180. package/build/gdal/gdal.progress.js.map +0 -1
  181. package/build/index.d.ts +0 -6
  182. package/build/index.d.ts.map +0 -1
  183. package/build/index.js +0 -6
  184. package/build/index.js.map +0 -1
@@ -1,229 +0,0 @@
1
- import { EpsgCode, GoogleTms, Nztm2000Tms } from '@basemaps/geo';
2
- import { fsa, LogConfig } from '@basemaps/shared';
3
- import { qkToName } from '@basemaps/geo/build/proj/__tests__/test.util.js';
4
- import { round } from '@basemaps/test/build/rounding.js';
5
- import o from 'ospec';
6
- import path from 'path';
7
- import url from 'url';
8
- import { Gdal } from '../../gdal/gdal.js';
9
- import { CogVrt } from '../cog.vrt.js';
10
- import { Cutline } from '../cutline.js';
11
- import { SourceTiffTestHelper } from './source.tiff.testhelper.js';
12
- const __dirname = path.dirname(url.fileURLToPath(import.meta.url));
13
- o.spec('cog.vrt', () => {
14
- const tmpFolder = '/tmp/my-tmp-folder';
15
- const job = SourceTiffTestHelper.makeCogJob();
16
- const logger = LogConfig.get();
17
- LogConfig.disable();
18
- const testDir = `${__dirname}/../../../__test.assets__`;
19
- const sourceBounds = SourceTiffTestHelper.tiffNztmBounds(testDir);
20
- const [tif1, tif2] = sourceBounds;
21
- const [tif1Path, tif2Path] = sourceBounds.map(({ name }) => name);
22
- let cutTiffArgs = [];
23
- let runSpy = o.spy();
24
- const origFileOperatorWriteJson = fsa.writeJson;
25
- const { create } = Gdal;
26
- let gdal;
27
- o.after(() => {
28
- fsa.writeJson = origFileOperatorWriteJson;
29
- Gdal.create = create;
30
- });
31
- o.beforeEach(() => {
32
- runSpy = o.spy();
33
- job.output.tileMatrix = GoogleTms.identifier;
34
- job.source.epsg = EpsgCode.Nztm2000;
35
- job.source.gsd = 20;
36
- gdal = { run: runSpy };
37
- Gdal.create = () => gdal;
38
- job.source.files = [tif1, tif2];
39
- cutTiffArgs = [];
40
- fsa.writeJson = ((...args) => {
41
- cutTiffArgs.push(args);
42
- });
43
- job.output.cutline = undefined;
44
- });
45
- o('1 crosses, 1 outside', async () => {
46
- const cutline = new Cutline(GoogleTms, await Cutline.loadCutline(testDir + '/kapiti.geojson'));
47
- const cl2 = new Cutline(GoogleTms, await Cutline.loadCutline(testDir + '/mana.geojson'));
48
- cutline.clipPoly.push(...cl2.clipPoly);
49
- const vrt = await CogVrt.buildVrt(tmpFolder, job, cutline, qkToName('31133322'), logger);
50
- o(job.source.files).deepEquals([tif1, tif2]);
51
- o(cutline.clipPoly.length).equals(2);
52
- o(vrt).equals('/tmp/my-tmp-folder/cog.vrt');
53
- });
54
- o('not within tile', async () => {
55
- const cutline = new Cutline(GoogleTms, await Cutline.loadCutline(testDir + '/kapiti.geojson'));
56
- const vrt = await CogVrt.buildVrt(tmpFolder, job, cutline, qkToName('3131110001'), logger);
57
- o(cutTiffArgs.length).equals(0);
58
- o(vrt).equals(null);
59
- o(runSpy.callCount).equals(0);
60
- });
61
- o('no cutline same projection', async () => {
62
- const vrt = await CogVrt.buildVrt(tmpFolder, job, new Cutline(GoogleTms), qkToName('31'), logger);
63
- o(job.source.files).deepEquals([tif1, tif2]);
64
- o(cutTiffArgs.length).equals(0);
65
- o(vrt).equals('/tmp/my-tmp-folder/cog.vrt');
66
- o(runSpy.callCount).equals(2);
67
- o(runSpy.args[0]).equals('gdalwarp');
68
- });
69
- o('no cutline diff projection', async () => {
70
- job.output.tileMatrix = Nztm2000Tms.identifier; //EpsgCode.Nztm2000;
71
- const vrt = await CogVrt.buildVrt(tmpFolder, job, new Cutline(GoogleTms), qkToName('31'), logger);
72
- o(job.source.files).deepEquals([tif1, tif2]);
73
- o(cutTiffArgs.length).equals(0);
74
- o(vrt).equals('/tmp/my-tmp-folder/cog.vrt');
75
- o(runSpy.callCount).equals(2);
76
- o(runSpy.args[0]).equals('gdalwarp');
77
- });
78
- o('fully within same projection', async () => {
79
- const cutline = new Cutline(GoogleTms, await Cutline.loadCutline(testDir + '/kapiti.geojson'), -100);
80
- const name = qkToName('311333222321113310');
81
- const vrt = await CogVrt.buildVrt(tmpFolder, job, cutline, name, logger);
82
- o(vrt).equals('/tmp/my-tmp-folder/cog.vrt');
83
- o(cutTiffArgs.length).equals(0);
84
- o(runSpy.callCount).equals(2);
85
- o(runSpy.args[0]).equals('gdalwarp');
86
- });
87
- o('intersected cutline', async () => {
88
- const cutline = new Cutline(GoogleTms, await Cutline.loadCutline(testDir + '/kapiti.geojson'), 20);
89
- job.output.cutline = { blend: 20, href: 'cutline.json' };
90
- const name = qkToName('311333222321113');
91
- const vrt = await CogVrt.buildVrt(tmpFolder, job, cutline, name, logger);
92
- o(vrt).equals('/tmp/my-tmp-folder/cog.vrt');
93
- o(cutTiffArgs.length).equals(1);
94
- o(cutTiffArgs[0][1]).deepEquals(cutline.toGeoJson());
95
- o(round(cutTiffArgs[0], 6)).deepEquals([
96
- '/tmp/my-tmp-folder/cutline.geojson',
97
- {
98
- type: 'FeatureCollection',
99
- features: [
100
- {
101
- type: 'Feature',
102
- geometry: {
103
- type: 'MultiPolygon',
104
- coordinates: [
105
- [
106
- [
107
- [19466418.186171, -4995093.077172],
108
- [19467156.308979, -4996108.09485],
109
- [19467854.290313, -4996091.668391],
110
- [19468645.309917, -4995755.689377],
111
- [19469463.193363, -4995206.362781],
112
- [19470215.804402, -4994433.114642],
113
- [19470856.681731, -4993478.14574],
114
- [19471932.55678, -4992600.063654],
115
- [19473538.532795, -4990108.677214],
116
- [19474243.881356, -4988798.711151],
117
- [19474243.881356, -4986828.162353],
118
- [19472131.837905, -4986828.162353],
119
- [19472109.508239, -4986926.945548],
120
- [19470978.43787, -4989417.445436],
121
- [19468800.977534, -4991497.540469],
122
- [19467511.856865, -4993217.174782],
123
- [19466418.186171, -4995093.077172],
124
- ],
125
- ],
126
- ],
127
- },
128
- properties: {},
129
- },
130
- ],
131
- crs: { type: 'name', properties: { name: 'urn:ogc:def:crs:EPSG::3857' } },
132
- },
133
- ]);
134
- });
135
- o('1 surrounded with s3 files', async () => {
136
- const mount = o.spy();
137
- const setCredentials = o.spy();
138
- gdal.mount = mount;
139
- gdal.setCredentials = setCredentials;
140
- const vtif1 = '/vsis3' + tif1Path;
141
- const vtif2 = '/vsis3' + tif2Path;
142
- job.source.location = { type: 's3', path: 's3://foo/bar', roleArn: 'a:role:string' };
143
- job.source.files = job.source.files.map((o) => {
144
- o = Object.assign({}, o);
145
- o.name = 's3:/' + o.name;
146
- return o;
147
- });
148
- job.output.cutline = { blend: 10, href: 'cutline.json' };
149
- const cutline = new Cutline(GoogleTms, await Cutline.loadCutline(testDir + '/mana.geojson'));
150
- const vrt = await CogVrt.buildVrt(tmpFolder, job, cutline, qkToName('3131110001'), logger);
151
- o(vrt).equals('/tmp/my-tmp-folder/cog.vrt');
152
- o(cutTiffArgs.length).equals(1);
153
- o(cutTiffArgs[0][0]).equals(tmpFolder + '/cutline.geojson');
154
- o(cutline.clipPoly.length).equals(1);
155
- const geo = cutline.toGeoJson();
156
- o(geo.type).equals('FeatureCollection');
157
- const coordinates = geo.features[0].geometry.coordinates;
158
- if (geo.type === 'FeatureCollection') {
159
- o(geo.features).deepEquals([
160
- {
161
- type: 'Feature',
162
- properties: {},
163
- geometry: {
164
- type: 'MultiPolygon',
165
- coordinates,
166
- },
167
- },
168
- ]);
169
- }
170
- o(round(coordinates, 5)).deepEquals([
171
- [
172
- [
173
- [19455446.57501, -5025689.98761],
174
- [19455543.12619, -5026720.78623],
175
- [19457346.41188, -5024885.32147],
176
- [19456570.81047, -5023799.46087],
177
- [19456560.03196, -5023796.37227],
178
- [19456551.09434, -5023782.48917],
179
- [19456540.68564, -5023777.32429],
180
- [19456531.22726, -5023778.34575],
181
- [19456524.31633, -5023783.03837],
182
- [19456521.12157, -5023788.06858],
183
- [19456521.62607, -5023792.6091],
184
- [19456528.41956, -5023802.39913],
185
- [19456528.99998, -5023810.66149],
186
- [19456513.95059, -5023820.48595],
187
- [19456497.91736, -5023822.46951],
188
- [19456431.41331, -5023815.14488],
189
- [19456325.95579, -5024324.4265],
190
- [19455446.57501, -5025689.98761],
191
- ],
192
- ],
193
- ]);
194
- o(runSpy.callCount).equals(2);
195
- o(mount.calls.map((c) => c.args[0])).deepEquals([tmpFolder, ...job.source.files.map((c) => c.name)]);
196
- o(setCredentials.calls.map((c) => c.args[0].service.config.params.RoleArn)).deepEquals(['a:role:string']);
197
- o(round(runSpy.calls[0].args)).deepEquals([
198
- 'gdalbuildvrt',
199
- ['-hidenodata', '-allow_projection_difference', '-addalpha', '/tmp/my-tmp-folder/source.vrt', vtif1, vtif2],
200
- logger,
201
- ]);
202
- o(round(runSpy.args)).deepEquals([
203
- 'gdalwarp',
204
- [
205
- '-of',
206
- 'VRT',
207
- '-multi',
208
- '-wo',
209
- 'NUM_THREADS=ALL_CPUS',
210
- '-s_srs',
211
- 'EPSG:2193',
212
- '-t_srs',
213
- 'EPSG:3857',
214
- '-tr',
215
- '0.75',
216
- '0.75',
217
- '-tap',
218
- '-cutline',
219
- '/tmp/my-tmp-folder/cutline.geojson',
220
- '-cblend',
221
- '10',
222
- '/tmp/my-tmp-folder/source.vrt',
223
- '/tmp/my-tmp-folder/cog.vrt',
224
- ],
225
- logger,
226
- ]);
227
- });
228
- });
229
- //# sourceMappingURL=cog.vrt.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cog.vrt.test.js","sourceRoot":"","sources":["../../../src/cog/__tests__/cog.vrt.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=cutline.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cutline.test.d.ts","sourceRoot":"","sources":["../../../src/cog/__tests__/cutline.test.ts"],"names":[],"mappings":""}
@@ -1,300 +0,0 @@
1
- import { Bounds, EpsgCode, GoogleTms, Nztm2000Tms } from '@basemaps/geo';
2
- import { qkToName } from '@basemaps/geo/build/proj/__tests__/test.util.js';
3
- import { round } from '@basemaps/test/build/rounding.js';
4
- import o from 'ospec';
5
- import path from 'path';
6
- import url from 'url';
7
- import { AlignedLevel } from '../constants.js';
8
- import { Cutline, polyContainsBounds } from '../cutline.js';
9
- import { SourceTiffTestHelper } from './source.tiff.testhelper.js';
10
- const __dirname = path.dirname(url.fileURLToPath(import.meta.url));
11
- o.spec('cutline', () => {
12
- o.specTimeout(1000);
13
- const testDir = `${__dirname}/../../../__test.assets__`;
14
- o.spec('filterSourcesForName', () => {
15
- o('fully within same projection', async () => {
16
- // convert poly to GoogleTms
17
- const cutpoly = new Cutline(GoogleTms, await Cutline.loadCutline(testDir + '/kapiti.geojson')).toGeoJson();
18
- const cutline = new Cutline(GoogleTms, cutpoly, -100);
19
- const name = qkToName('311333222321113310');
20
- const job = SourceTiffTestHelper.makeCogJob();
21
- job.output.tileMatrix = GoogleTms.identifier;
22
- job.source.epsg = EpsgCode.Nztm2000;
23
- const sourceBounds = SourceTiffTestHelper.tiffNztmBounds(testDir);
24
- const [tif1, tif2] = sourceBounds;
25
- job.source.files = [tif1, tif2];
26
- o(cutline.filterSourcesForName(name, job)).deepEquals([tif2.name]);
27
- });
28
- });
29
- o('polyContainsBounds', () => {
30
- const polys = [
31
- [
32
- [
33
- [-4, 2],
34
- [-2, 1],
35
- [-4, -1],
36
- [1, -5],
37
- [2, -5],
38
- [2, -2],
39
- [4, -5],
40
- [6, -2],
41
- [2, 0],
42
- [6, 3],
43
- [2, 7],
44
- [0, 3],
45
- [-4, 6],
46
- [-4, 10],
47
- [10, 10],
48
- [10, -10],
49
- [-10, -10],
50
- [-4, 2],
51
- ],
52
- ],
53
- [
54
- [
55
- [2, 3],
56
- [3, 3],
57
- [3, 5],
58
- [2, 5],
59
- [2, 3],
60
- ],
61
- ],
62
- ];
63
- o(polyContainsBounds(polys, Bounds.fromBbox([-6, -6, -3, -3]))).equals(true);
64
- o(polyContainsBounds(polys, Bounds.fromBbox([-3, -4, 4, 4]))).equals(false);
65
- o(polyContainsBounds(polys, Bounds.fromBbox([6, -8, 5, 5]))).equals(false);
66
- });
67
- o('loadCutline', async () => {
68
- const cutline = new Cutline(GoogleTms, await Cutline.loadCutline(testDir + '/mana.geojson'));
69
- const geojson = round(cutline.toGeoJson());
70
- o(geojson).deepEquals({
71
- type: 'FeatureCollection',
72
- features: [
73
- {
74
- type: 'Feature',
75
- geometry: {
76
- type: 'MultiPolygon',
77
- coordinates: [
78
- [
79
- [
80
- [19456570.81047118, -5023799.46086743],
81
- [19457346.41188008, -5024885.32147075],
82
- [19455543.1261867, -5026720.78623442],
83
- [19455446.57500747, -5025689.98761053],
84
- [19456325.95579277, -5024324.4264959],
85
- [19456431.41331051, -5023815.14487631],
86
- [19456497.91735541, -5023822.4695137],
87
- [19456513.95059036, -5023820.4859541],
88
- [19456528.99998363, -5023810.66149213],
89
- [19456528.41956381, -5023802.3991344],
90
- [19456521.62606925, -5023792.60909871],
91
- [19456521.12156931, -5023788.06857522],
92
- [19456524.31632738, -5023783.03836819],
93
- [19456531.227264, -5023778.34574544],
94
- [19456540.68563587, -5023777.32428773],
95
- [19456551.09434221, -5023782.4891701],
96
- [19456560.03196148, -5023796.37226942],
97
- [19456570.81047118, -5023799.46086743],
98
- ],
99
- ],
100
- [
101
- [
102
- [19430214.06028324, -5008476.23288268],
103
- [19429858.86076585, -5008966.74650194],
104
- [19430484.68848696, -5009778.63111311],
105
- [19430907.54505528, -5009085.14634107],
106
- [19430214.06028324, -5008476.23288268],
107
- ],
108
- ],
109
- ],
110
- },
111
- properties: {},
112
- },
113
- ],
114
- crs: {
115
- type: 'name',
116
- properties: { name: 'urn:ogc:def:crs:EPSG::3857' },
117
- },
118
- });
119
- });
120
- o('findCovering', async () => {
121
- const cutline = new Cutline(GoogleTms, await Cutline.loadCutline(testDir + '/mana.geojson'));
122
- const bounds = SourceTiffTestHelper.tiffNztmBounds();
123
- o(cutline.clipPoly.length).equals(2);
124
- cutline.findCovering({ projection: EpsgCode.Nztm2000, bounds, resZoom: 15 });
125
- o(cutline.srcPoly.length).equals(1);
126
- });
127
- o.spec('optimize', async () => {
128
- const bounds = SourceTiffTestHelper.tiffNztmBounds();
129
- o('full-extent 3857', () => {
130
- const cutline = new Cutline(GoogleTms);
131
- const covering = cutline.optimizeCovering({
132
- projection: EpsgCode.Google,
133
- bounds: [{ ...GoogleTms.extent, name: 'gebco' }],
134
- resZoom: 5,
135
- }, 4);
136
- o(round(covering, 4)).deepEquals([
137
- {
138
- name: '1-0-0',
139
- x: -20037508.3428,
140
- y: 0,
141
- width: 20037508.3428,
142
- height: 20037508.3428,
143
- },
144
- {
145
- name: '1-0-1',
146
- x: -20037508.3428,
147
- y: -20037508.3428,
148
- width: 20037508.3428,
149
- height: 20037508.3428,
150
- },
151
- {
152
- name: '1-1-0',
153
- x: -0,
154
- y: 0,
155
- width: 20037508.3428,
156
- height: 20037508.3428,
157
- },
158
- {
159
- name: '1-1-1',
160
- x: -0,
161
- y: -20037508.3428,
162
- width: 20037508.3428,
163
- height: 20037508.3428,
164
- },
165
- ]);
166
- });
167
- o('nztm', () => {
168
- const cutline = new Cutline(Nztm2000Tms);
169
- const covering = cutline.optimizeCovering({
170
- projection: EpsgCode.Nztm2000,
171
- bounds,
172
- resZoom: 7 + AlignedLevel,
173
- });
174
- o(covering[4]).deepEquals({
175
- name: '7-153-253',
176
- x: 1741760,
177
- y: 5448320,
178
- width: 17920,
179
- height: 17920,
180
- });
181
- o(covering.map((c) => c.name)).deepEquals([
182
- '7-152-252',
183
- '7-152-253',
184
- '7-152-254',
185
- '7-153-252',
186
- '7-153-253',
187
- '7-153-254',
188
- '7-154-252',
189
- '7-154-253',
190
- '7-154-254',
191
- '7-155-252',
192
- '7-155-253',
193
- '8-387-635',
194
- ]);
195
- });
196
- o('source polygon is smoothed', async () => {
197
- const tiff1 = {
198
- name: '/path/to/tiff1.tiff',
199
- x: 1759315.9336568,
200
- y: 5476120.089572778,
201
- width: 2577.636033663526,
202
- height: 2275.3233966259286,
203
- };
204
- const tiff2 = {
205
- name: '/path/to/tiff2.tiff',
206
- x: 1759268.0010635862,
207
- y: 5473899.771969615,
208
- width: 2576.894309356343,
209
- height: 2275.3359155077487,
210
- };
211
- const bounds = [tiff1, tiff2];
212
- const cutline = new Cutline(GoogleTms, await Cutline.loadCutline(testDir + '/kapiti.geojson'), 500);
213
- const covering = cutline.optimizeCovering({
214
- projection: EpsgCode.Nztm2000,
215
- bounds,
216
- resZoom: 22,
217
- }, 8);
218
- o(round(cutline.clipPoly, 4)[0][0]).deepEquals([
219
- [19468576.3516, -4993284.6176],
220
- [19471093.8032, -4993284.6176],
221
- [19471932.5568, -4992600.0637],
222
- [19472095.7462, -4992346.9043],
223
- [19472095.7462, -4987199.9524],
224
- [19471985.5211, -4987199.9524],
225
- [19470978.4379, -4989417.4454],
226
- [19468800.9775, -4991497.5405],
227
- [19468576.3516, -4991797.1824],
228
- [19468576.3516, -4993284.6176],
229
- ]);
230
- o(covering.map((c) => c.name)).deepEquals([
231
- '14-16151-10232',
232
- '14-16151-10233',
233
- '14-16152-10231',
234
- '14-16152-10232',
235
- '14-16152-10233',
236
- '18-258444-163695',
237
- ]);
238
- });
239
- o('boundary part inland, part coastal', async () => {
240
- const cutline = new Cutline(GoogleTms, await Cutline.loadCutline(testDir + '/kapiti.geojson'), 500);
241
- const bounds = [
242
- {
243
- name: 'tiff1',
244
- x: 1759315.9336568,
245
- y: 5476120.089572778,
246
- width: 2577.636033663526,
247
- height: 2275.3233966259286,
248
- },
249
- ];
250
- const covering = cutline.optimizeCovering({
251
- projection: EpsgCode.Nztm2000,
252
- bounds,
253
- resZoom: 22,
254
- }, 8);
255
- o(round(cutline.clipPoly, 4)[0][0]).deepEquals([
256
- [19470011.8243, -4990340.8368],
257
- [19472095.7007, -4990340.8368],
258
- [19472095.7007, -4987199.9524],
259
- [19471985.5211, -4987199.9524],
260
- [19470978.4379, -4989417.4454],
261
- [19470011.8243, -4990340.8368],
262
- ]);
263
- o(covering.map((c) => c.name)).deepEquals([
264
- '14-16152-10231',
265
- '15-32304-20464',
266
- '15-32305-20464',
267
- '18-258444-163695',
268
- ]);
269
- });
270
- o('low res', () => {
271
- const cutline = new Cutline(GoogleTms);
272
- const covering = cutline.optimizeCovering({
273
- projection: EpsgCode.Nztm2000,
274
- bounds,
275
- resZoom: 13,
276
- }, 9);
277
- o(covering.length).equals(covering.length);
278
- o(covering.map((c) => c.name)).deepEquals(['8-252-159', '8-252-160']);
279
- });
280
- o('hi res', () => {
281
- const covering2 = new Cutline(GoogleTms).optimizeCovering({
282
- projection: EpsgCode.Nztm2000,
283
- bounds,
284
- resZoom: 18,
285
- }, 8);
286
- o(covering2.length).equals(covering2.length);
287
- o(covering2.map((c) => c.name)).deepEquals([
288
- '10-1008-639',
289
- '10-1008-640',
290
- '10-1009-639',
291
- '10-1009-640',
292
- '11-2020-1279',
293
- '11-2020-1280',
294
- '12-4040-2557',
295
- '12-4040-2562',
296
- ]);
297
- });
298
- });
299
- });
300
- //# sourceMappingURL=cutline.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cutline.test.js","sourceRoot":"","sources":["../../../src/cog/__tests__/cutline.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=projection.loader.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"projection.loader.test.d.ts","sourceRoot":"","sources":["../../../src/cog/__tests__/projection.loader.test.ts"],"names":[],"mappings":""}
@@ -1,27 +0,0 @@
1
- import o from 'ospec';
2
- import { ProjectionLoader } from '../projection.loader.js';
3
- import sinon from 'sinon';
4
- import { Nztm2000 } from '@basemaps/geo/build/proj/nztm2000.js';
5
- import { Epsg } from '@basemaps/geo';
6
- import { Projection } from '@basemaps/geo';
7
- o.spec('ProjectionLoader', () => {
8
- const sandbox = sinon.createSandbox();
9
- o.afterEach(() => sandbox.restore());
10
- o('should not load if already loaded', async () => {
11
- const fetchStub = sandbox.stub(ProjectionLoader, '_fetch');
12
- const res = await ProjectionLoader.load(2193);
13
- o(fetchStub.callCount).equals(0);
14
- o(res.code).equals(2193);
15
- });
16
- o('should fetch data from the internet', async () => {
17
- const fetchStub = sandbox
18
- .stub(ProjectionLoader, '_fetch')
19
- .resolves({ ok: true, text: () => Promise.resolve(Nztm2000) });
20
- const res = await ProjectionLoader.load(3790);
21
- o(fetchStub.callCount).equals(1);
22
- o(res.code).equals(3790);
23
- o(Epsg.get(3790)).equals(res);
24
- o(Projection.get(3790).epsg).equals(res);
25
- });
26
- });
27
- //# sourceMappingURL=projection.loader.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"projection.loader.test.js","sourceRoot":"","sources":["../../../src/cog/__tests__/projection.loader.test.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,OAAO,CAAC;AACtB,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,QAAQ,EAAE,MAAM,sCAAsC,CAAC;AAChE,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,CAAC,CAAC,IAAI,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAC9B,MAAM,OAAO,GAAG,KAAK,CAAC,aAAa,EAAE,CAAC;IACtC,CAAC,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IACrC,CAAC,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;QAChD,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;QAC3D,MAAM,GAAG,GAAG,MAAM,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9C,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACjC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC,CAAC,CAAC;IAEH,CAAC,CAAC,qCAAqC,EAAE,KAAK,IAAI,EAAE;QAClD,MAAM,SAAS,GAAG,OAAO;aACtB,IAAI,CAAC,gBAAgB,EAAE,QAAQ,CAAC;aAChC,QAAQ,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAS,CAAC,CAAC;QACxE,MAAM,GAAG,GAAG,MAAM,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE9C,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAEjC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACzB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC9B,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,8 +0,0 @@
1
- import { NamedBounds } from '@basemaps/geo';
2
- import { CogStacJob } from '../cog.stac.job.js';
3
- export declare const SourceTiffTestHelper: {
4
- makeCogJob(): CogStacJob;
5
- tiffNztmBounds(path?: string): NamedBounds[];
6
- namedBoundsToPaths(bounds: NamedBounds[]): string[];
7
- };
8
- //# sourceMappingURL=source.tiff.testhelper.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"source.tiff.testhelper.d.ts","sourceRoot":"","sources":["../../../src/cog/__tests__/source.tiff.testhelper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,WAAW,EAAa,MAAM,eAAe,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAGhD,eAAO,MAAM,oBAAoB;kBACjB,UAAU;mCAgBW,WAAW,EAAE;+BAmBrB,WAAW,EAAE,GAAG,MAAM,EAAE;CAGpD,CAAC"}