geotiff 3.0.4 → 3.0.5
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-browser/geotiff.js +1 -1
- package/dist-browser/geotiff.js.map +1 -1
- package/dist-module/compression/index.d.ts +3 -3
- package/dist-module/compression/index.d.ts.map +1 -1
- package/dist-module/compression/index.js +6 -6
- package/dist-module/geotiffimage.d.ts +28 -28
- package/dist-module/geotiffimage.d.ts.map +1 -1
- package/dist-module/geotiffimage.js +25 -23
- package/dist-module/geotiffimage.js.map +1 -1
- package/dist-module/imagefiledirectory.d.ts +3 -7
- package/dist-module/imagefiledirectory.d.ts.map +1 -1
- package/dist-module/imagefiledirectory.js +2 -4
- package/dist-module/imagefiledirectory.js.map +1 -1
- package/dist-module/resample.d.ts +18 -18
- package/dist-module/resample.d.ts.map +1 -1
- package/dist-module/resample.js +13 -13
- package/dist-module/rgb.d.ts +1 -1
- package/dist-module/rgb.d.ts.map +1 -1
- package/dist-module/source/blockedsource.d.ts +4 -4
- package/dist-module/source/blockedsource.d.ts.map +1 -1
- package/dist-module/source/blockedsource.js +2 -2
- package/dist-module/source/remote.d.ts +2 -2
- package/dist-module/source/remote.d.ts.map +1 -1
- package/dist-module/source/remote.js +2 -2
- package/dist-node/compression/index.d.ts +3 -3
- package/dist-node/compression/index.d.ts.map +1 -1
- package/dist-node/compression/index.js +6 -6
- package/dist-node/geotiffimage.d.ts +28 -28
- package/dist-node/geotiffimage.d.ts.map +1 -1
- package/dist-node/geotiffimage.js +25 -23
- package/dist-node/geotiffimage.js.map +1 -1
- package/dist-node/imagefiledirectory.d.ts +3 -7
- package/dist-node/imagefiledirectory.d.ts.map +1 -1
- package/dist-node/imagefiledirectory.js +2 -4
- package/dist-node/imagefiledirectory.js.map +1 -1
- package/dist-node/resample.d.ts +18 -18
- package/dist-node/resample.d.ts.map +1 -1
- package/dist-node/resample.js +13 -13
- package/dist-node/source/blockedsource.d.ts +4 -4
- package/dist-node/source/blockedsource.d.ts.map +1 -1
- package/dist-node/source/blockedsource.js +2 -2
- package/dist-node/source/remote.d.ts +2 -2
- package/dist-node/source/remote.d.ts.map +1 -1
- package/dist-node/source/remote.js +2 -2
- package/package.json +1 -1
- package/src/compression/index.js +6 -6
- package/src/geotiffimage.js +25 -23
- package/src/imagefiledirectory.js +2 -4
- package/src/resample.js +13 -13
- package/src/rgb.ts +1 -1
- package/src/source/blockedsource.js +2 -2
- package/src/source/remote.js +2 -2
package/dist-node/resample.d.ts
CHANGED
|
@@ -1,61 +1,61 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Resample the input arrays using nearest neighbor value selection.
|
|
3
|
-
* @param {import("./geotiff").TypedArray[]} valueArrays The input arrays to resample
|
|
3
|
+
* @param {import("./geotiff.js").TypedArray[]} valueArrays The input arrays to resample
|
|
4
4
|
* @param {number} inWidth The width of the input rasters
|
|
5
5
|
* @param {number} inHeight The height of the input rasters
|
|
6
6
|
* @param {number} outWidth The desired width of the output rasters
|
|
7
7
|
* @param {number} outHeight The desired height of the output rasters
|
|
8
|
-
* @returns {import("./geotiff").TypedArray[]} The resampled rasters
|
|
8
|
+
* @returns {import("./geotiff.js").TypedArray[]} The resampled rasters
|
|
9
9
|
*/
|
|
10
|
-
export function resampleNearest(valueArrays: import("./geotiff").TypedArray[], inWidth: number, inHeight: number, outWidth: number, outHeight: number): import("./geotiff").TypedArray[];
|
|
10
|
+
export function resampleNearest(valueArrays: import("./geotiff.js").TypedArray[], inWidth: number, inHeight: number, outWidth: number, outHeight: number): import("./geotiff.js").TypedArray[];
|
|
11
11
|
/**
|
|
12
12
|
* Resample the input arrays using bilinear interpolation.
|
|
13
|
-
* @param {import("./geotiff").TypedArray[]} valueArrays The input arrays to resample
|
|
13
|
+
* @param {import("./geotiff.js").TypedArray[]} valueArrays The input arrays to resample
|
|
14
14
|
* @param {number} inWidth The width of the input rasters
|
|
15
15
|
* @param {number} inHeight The height of the input rasters
|
|
16
16
|
* @param {number} outWidth The desired width of the output rasters
|
|
17
17
|
* @param {number} outHeight The desired height of the output rasters
|
|
18
|
-
* @returns {import("./geotiff").TypedArray[]} The resampled rasters
|
|
18
|
+
* @returns {import("./geotiff.js").TypedArray[]} The resampled rasters
|
|
19
19
|
*/
|
|
20
|
-
export function resampleBilinear(valueArrays: import("./geotiff").TypedArray[], inWidth: number, inHeight: number, outWidth: number, outHeight: number): import("./geotiff").TypedArray[];
|
|
20
|
+
export function resampleBilinear(valueArrays: import("./geotiff.js").TypedArray[], inWidth: number, inHeight: number, outWidth: number, outHeight: number): import("./geotiff.js").TypedArray[];
|
|
21
21
|
/**
|
|
22
22
|
* Resample the input arrays using the selected resampling method.
|
|
23
|
-
* @param {import("./geotiff").TypedArray[]} valueArrays The input arrays to resample
|
|
23
|
+
* @param {import("./geotiff.js").TypedArray[]} valueArrays The input arrays to resample
|
|
24
24
|
* @param {number} inWidth The width of the input rasters
|
|
25
25
|
* @param {number} inHeight The height of the input rasters
|
|
26
26
|
* @param {number} outWidth The desired width of the output rasters
|
|
27
27
|
* @param {number} outHeight The desired height of the output rasters
|
|
28
28
|
* @param {string} [method = 'nearest'] The desired resampling method
|
|
29
|
-
* @returns {import("./geotiff").TypedArray[]} The resampled rasters
|
|
29
|
+
* @returns {import("./geotiff.js").TypedArray[]} The resampled rasters
|
|
30
30
|
*/
|
|
31
|
-
export function resample(valueArrays: import("./geotiff").TypedArray[], inWidth: number, inHeight: number, outWidth: number, outHeight: number, method?: string): import("./geotiff").TypedArray[];
|
|
31
|
+
export function resample(valueArrays: import("./geotiff.js").TypedArray[], inWidth: number, inHeight: number, outWidth: number, outHeight: number, method?: string): import("./geotiff.js").TypedArray[];
|
|
32
32
|
/**
|
|
33
33
|
* Resample the pixel interleaved input array using nearest neighbor value selection.
|
|
34
|
-
* @param {import("./geotiff").TypedArray} valueArray The input array to resample
|
|
34
|
+
* @param {import("./geotiff.js").TypedArray} valueArray The input array to resample
|
|
35
35
|
* @param {number} inWidth The width of the input rasters
|
|
36
36
|
* @param {number} inHeight The height of the input rasters
|
|
37
37
|
* @param {number} outWidth The desired width of the output rasters
|
|
38
38
|
* @param {number} outHeight The desired height of the output rasters
|
|
39
39
|
* @param {number} samples The number of samples per pixel for pixel
|
|
40
40
|
* interleaved data
|
|
41
|
-
* @returns {import("./geotiff").TypedArray} The resampled raster
|
|
41
|
+
* @returns {import("./geotiff.js").TypedArray} The resampled raster
|
|
42
42
|
*/
|
|
43
|
-
export function resampleNearestInterleaved(valueArray: import("./geotiff").TypedArray, inWidth: number, inHeight: number, outWidth: number, outHeight: number, samples: number): import("./geotiff").TypedArray;
|
|
43
|
+
export function resampleNearestInterleaved(valueArray: import("./geotiff.js").TypedArray, inWidth: number, inHeight: number, outWidth: number, outHeight: number, samples: number): import("./geotiff.js").TypedArray;
|
|
44
44
|
/**
|
|
45
45
|
* Resample the pixel interleaved input array using bilinear interpolation.
|
|
46
|
-
* @param {import("./geotiff").TypedArray} valueArray The input array to resample
|
|
46
|
+
* @param {import("./geotiff.js").TypedArray} valueArray The input array to resample
|
|
47
47
|
* @param {number} inWidth The width of the input rasters
|
|
48
48
|
* @param {number} inHeight The height of the input rasters
|
|
49
49
|
* @param {number} outWidth The desired width of the output rasters
|
|
50
50
|
* @param {number} outHeight The desired height of the output rasters
|
|
51
51
|
* @param {number} samples The number of samples per pixel for pixel
|
|
52
52
|
* interleaved data
|
|
53
|
-
* @returns {import("./geotiff").TypedArray} The resampled raster
|
|
53
|
+
* @returns {import("./geotiff.js").TypedArray} The resampled raster
|
|
54
54
|
*/
|
|
55
|
-
export function resampleBilinearInterleaved(valueArray: import("./geotiff").TypedArray, inWidth: number, inHeight: number, outWidth: number, outHeight: number, samples: number): import("./geotiff").TypedArray;
|
|
55
|
+
export function resampleBilinearInterleaved(valueArray: import("./geotiff.js").TypedArray, inWidth: number, inHeight: number, outWidth: number, outHeight: number, samples: number): import("./geotiff.js").TypedArray;
|
|
56
56
|
/**
|
|
57
57
|
* Resample the pixel interleaved input array using the selected resampling method.
|
|
58
|
-
* @param {import("./geotiff").TypedArray} valueArray The input array to resample
|
|
58
|
+
* @param {import("./geotiff.js").TypedArray} valueArray The input array to resample
|
|
59
59
|
* @param {number} inWidth The width of the input rasters
|
|
60
60
|
* @param {number} inHeight The height of the input rasters
|
|
61
61
|
* @param {number} outWidth The desired width of the output rasters
|
|
@@ -63,7 +63,7 @@ export function resampleBilinearInterleaved(valueArray: import("./geotiff").Type
|
|
|
63
63
|
* @param {number} samples The number of samples per pixel for pixel
|
|
64
64
|
* interleaved data
|
|
65
65
|
* @param {string} [method = 'nearest'] The desired resampling method
|
|
66
|
-
* @returns {import("./geotiff").TypedArray} The resampled rasters
|
|
66
|
+
* @returns {import("./geotiff.js").TypedArray} The resampled rasters
|
|
67
67
|
*/
|
|
68
|
-
export function resampleInterleaved(valueArray: import("./geotiff").TypedArray, inWidth: number, inHeight: number, outWidth: number, outHeight: number, samples: number, method?: string): import("./geotiff").TypedArray;
|
|
68
|
+
export function resampleInterleaved(valueArray: import("./geotiff.js").TypedArray, inWidth: number, inHeight: number, outWidth: number, outHeight: number, samples: number, method?: string): import("./geotiff.js").TypedArray;
|
|
69
69
|
//# sourceMappingURL=resample.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resample.d.ts","sourceRoot":"","sources":["../dist-module/resample.js"],"names":[],"mappings":"AAYA;;;;;;;;GAQG;AACH,6CAPW,OAAO,
|
|
1
|
+
{"version":3,"file":"resample.d.ts","sourceRoot":"","sources":["../dist-module/resample.js"],"names":[],"mappings":"AAYA;;;;;;;;GAQG;AACH,6CAPW,OAAO,cAAc,EAAE,UAAU,EAAE,WACnC,MAAM,YACN,MAAM,YACN,MAAM,aACN,MAAM,GACJ,OAAO,cAAc,EAAE,UAAU,EAAE,CAiB/C;AAWD;;;;;;;;GAQG;AACH,8CAPW,OAAO,cAAc,EAAE,UAAU,EAAE,WACnC,MAAM,YACN,MAAM,YACN,MAAM,aACN,MAAM,GACJ,OAAO,cAAc,EAAE,UAAU,EAAE,CA0B/C;AACD;;;;;;;;;GASG;AACH,sCARW,OAAO,cAAc,EAAE,UAAU,EAAE,WACnC,MAAM,YACN,MAAM,YACN,MAAM,aACN,MAAM,WACN,MAAM,GACJ,OAAO,cAAc,EAAE,UAAU,EAAE,CAY/C;AACD;;;;;;;;;;GAUG;AACH,uDATW,OAAO,cAAc,EAAE,UAAU,WACjC,MAAM,YACN,MAAM,YACN,MAAM,aACN,MAAM,WACN,MAAM,GAEJ,OAAO,cAAc,EAAE,UAAU,CAiB7C;AACD;;;;;;;;;;GAUG;AACH,wDATW,OAAO,cAAc,EAAE,UAAU,WACjC,MAAM,YACN,MAAM,YACN,MAAM,aACN,MAAM,WACN,MAAM,GAEJ,OAAO,cAAc,EAAE,UAAU,CA0B7C;AACD;;;;;;;;;;;GAWG;AACH,gDAVW,OAAO,cAAc,EAAE,UAAU,WACjC,MAAM,YACN,MAAM,YACN,MAAM,aACN,MAAM,WACN,MAAM,WAEN,MAAM,GACJ,OAAO,cAAc,EAAE,UAAU,CAY7C"}
|
package/dist-node/resample.js
CHANGED
|
@@ -10,7 +10,7 @@ exports.resampleInterleaved = resampleInterleaved;
|
|
|
10
10
|
* @module resample
|
|
11
11
|
*/
|
|
12
12
|
/**
|
|
13
|
-
* @param {import("./geotiff").TypedArray} array
|
|
13
|
+
* @param {import("./geotiff.js").TypedArray} array
|
|
14
14
|
* @param {number} width
|
|
15
15
|
* @param {number} height
|
|
16
16
|
* @param {number} [samplesPerPixel=1]
|
|
@@ -20,12 +20,12 @@ function copyNewSize(array, width, height, samplesPerPixel = 1) {
|
|
|
20
20
|
}
|
|
21
21
|
/**
|
|
22
22
|
* Resample the input arrays using nearest neighbor value selection.
|
|
23
|
-
* @param {import("./geotiff").TypedArray[]} valueArrays The input arrays to resample
|
|
23
|
+
* @param {import("./geotiff.js").TypedArray[]} valueArrays The input arrays to resample
|
|
24
24
|
* @param {number} inWidth The width of the input rasters
|
|
25
25
|
* @param {number} inHeight The height of the input rasters
|
|
26
26
|
* @param {number} outWidth The desired width of the output rasters
|
|
27
27
|
* @param {number} outHeight The desired height of the output rasters
|
|
28
|
-
* @returns {import("./geotiff").TypedArray[]} The resampled rasters
|
|
28
|
+
* @returns {import("./geotiff.js").TypedArray[]} The resampled rasters
|
|
29
29
|
*/
|
|
30
30
|
function resampleNearest(valueArrays, inWidth, inHeight, outWidth, outHeight) {
|
|
31
31
|
const relX = inWidth / outWidth;
|
|
@@ -55,12 +55,12 @@ function lerp(v0, v1, t) {
|
|
|
55
55
|
}
|
|
56
56
|
/**
|
|
57
57
|
* Resample the input arrays using bilinear interpolation.
|
|
58
|
-
* @param {import("./geotiff").TypedArray[]} valueArrays The input arrays to resample
|
|
58
|
+
* @param {import("./geotiff.js").TypedArray[]} valueArrays The input arrays to resample
|
|
59
59
|
* @param {number} inWidth The width of the input rasters
|
|
60
60
|
* @param {number} inHeight The height of the input rasters
|
|
61
61
|
* @param {number} outWidth The desired width of the output rasters
|
|
62
62
|
* @param {number} outHeight The desired height of the output rasters
|
|
63
|
-
* @returns {import("./geotiff").TypedArray[]} The resampled rasters
|
|
63
|
+
* @returns {import("./geotiff.js").TypedArray[]} The resampled rasters
|
|
64
64
|
*/
|
|
65
65
|
function resampleBilinear(valueArrays, inWidth, inHeight, outWidth, outHeight) {
|
|
66
66
|
const relX = inWidth / outWidth;
|
|
@@ -89,13 +89,13 @@ function resampleBilinear(valueArrays, inWidth, inHeight, outWidth, outHeight) {
|
|
|
89
89
|
}
|
|
90
90
|
/**
|
|
91
91
|
* Resample the input arrays using the selected resampling method.
|
|
92
|
-
* @param {import("./geotiff").TypedArray[]} valueArrays The input arrays to resample
|
|
92
|
+
* @param {import("./geotiff.js").TypedArray[]} valueArrays The input arrays to resample
|
|
93
93
|
* @param {number} inWidth The width of the input rasters
|
|
94
94
|
* @param {number} inHeight The height of the input rasters
|
|
95
95
|
* @param {number} outWidth The desired width of the output rasters
|
|
96
96
|
* @param {number} outHeight The desired height of the output rasters
|
|
97
97
|
* @param {string} [method = 'nearest'] The desired resampling method
|
|
98
|
-
* @returns {import("./geotiff").TypedArray[]} The resampled rasters
|
|
98
|
+
* @returns {import("./geotiff.js").TypedArray[]} The resampled rasters
|
|
99
99
|
*/
|
|
100
100
|
function resample(valueArrays, inWidth, inHeight, outWidth, outHeight, method = 'nearest') {
|
|
101
101
|
switch (method.toLowerCase()) {
|
|
@@ -110,14 +110,14 @@ function resample(valueArrays, inWidth, inHeight, outWidth, outHeight, method =
|
|
|
110
110
|
}
|
|
111
111
|
/**
|
|
112
112
|
* Resample the pixel interleaved input array using nearest neighbor value selection.
|
|
113
|
-
* @param {import("./geotiff").TypedArray} valueArray The input array to resample
|
|
113
|
+
* @param {import("./geotiff.js").TypedArray} valueArray The input array to resample
|
|
114
114
|
* @param {number} inWidth The width of the input rasters
|
|
115
115
|
* @param {number} inHeight The height of the input rasters
|
|
116
116
|
* @param {number} outWidth The desired width of the output rasters
|
|
117
117
|
* @param {number} outHeight The desired height of the output rasters
|
|
118
118
|
* @param {number} samples The number of samples per pixel for pixel
|
|
119
119
|
* interleaved data
|
|
120
|
-
* @returns {import("./geotiff").TypedArray} The resampled raster
|
|
120
|
+
* @returns {import("./geotiff.js").TypedArray} The resampled raster
|
|
121
121
|
*/
|
|
122
122
|
function resampleNearestInterleaved(valueArray, inWidth, inHeight, outWidth, outHeight, samples) {
|
|
123
123
|
const relX = inWidth / outWidth;
|
|
@@ -137,14 +137,14 @@ function resampleNearestInterleaved(valueArray, inWidth, inHeight, outWidth, out
|
|
|
137
137
|
}
|
|
138
138
|
/**
|
|
139
139
|
* Resample the pixel interleaved input array using bilinear interpolation.
|
|
140
|
-
* @param {import("./geotiff").TypedArray} valueArray The input array to resample
|
|
140
|
+
* @param {import("./geotiff.js").TypedArray} valueArray The input array to resample
|
|
141
141
|
* @param {number} inWidth The width of the input rasters
|
|
142
142
|
* @param {number} inHeight The height of the input rasters
|
|
143
143
|
* @param {number} outWidth The desired width of the output rasters
|
|
144
144
|
* @param {number} outHeight The desired height of the output rasters
|
|
145
145
|
* @param {number} samples The number of samples per pixel for pixel
|
|
146
146
|
* interleaved data
|
|
147
|
-
* @returns {import("./geotiff").TypedArray} The resampled raster
|
|
147
|
+
* @returns {import("./geotiff.js").TypedArray} The resampled raster
|
|
148
148
|
*/
|
|
149
149
|
function resampleBilinearInterleaved(valueArray, inWidth, inHeight, outWidth, outHeight, samples) {
|
|
150
150
|
const relX = inWidth / outWidth;
|
|
@@ -173,7 +173,7 @@ function resampleBilinearInterleaved(valueArray, inWidth, inHeight, outWidth, ou
|
|
|
173
173
|
}
|
|
174
174
|
/**
|
|
175
175
|
* Resample the pixel interleaved input array using the selected resampling method.
|
|
176
|
-
* @param {import("./geotiff").TypedArray} valueArray The input array to resample
|
|
176
|
+
* @param {import("./geotiff.js").TypedArray} valueArray The input array to resample
|
|
177
177
|
* @param {number} inWidth The width of the input rasters
|
|
178
178
|
* @param {number} inHeight The height of the input rasters
|
|
179
179
|
* @param {number} outWidth The desired width of the output rasters
|
|
@@ -181,7 +181,7 @@ function resampleBilinearInterleaved(valueArray, inWidth, inHeight, outWidth, ou
|
|
|
181
181
|
* @param {number} samples The number of samples per pixel for pixel
|
|
182
182
|
* interleaved data
|
|
183
183
|
* @param {string} [method = 'nearest'] The desired resampling method
|
|
184
|
-
* @returns {import("./geotiff").TypedArray} The resampled rasters
|
|
184
|
+
* @returns {import("./geotiff.js").TypedArray} The resampled rasters
|
|
185
185
|
*/
|
|
186
186
|
function resampleInterleaved(valueArray, inWidth, inHeight, outWidth, outHeight, samples, method = 'nearest') {
|
|
187
187
|
switch (method.toLowerCase()) {
|
|
@@ -19,11 +19,11 @@ export class BlockedSource extends BaseSource {
|
|
|
19
19
|
blockIdsToFetch: Set<any>;
|
|
20
20
|
abortedBlockIds: Set<any>;
|
|
21
21
|
/**
|
|
22
|
-
* @param {import("./basesource").Slice[]} slices
|
|
22
|
+
* @param {import("./basesource.js").Slice[]} slices
|
|
23
23
|
* @param {AbortSignal} [signal]
|
|
24
24
|
* @return {Promise<ArrayBuffer[]>}
|
|
25
25
|
*/
|
|
26
|
-
fetch(slices: import("./basesource").Slice[], signal?: AbortSignal): Promise<ArrayBuffer[]>;
|
|
26
|
+
fetch(slices: import("./basesource.js").Slice[], signal?: AbortSignal): Promise<ArrayBuffer[]>;
|
|
27
27
|
/**
|
|
28
28
|
* @param {AbortSignal} [signal]
|
|
29
29
|
*/
|
|
@@ -35,11 +35,11 @@ export class BlockedSource extends BaseSource {
|
|
|
35
35
|
*/
|
|
36
36
|
groupBlocks(blockIds: Set<number>): BlockGroup[];
|
|
37
37
|
/**
|
|
38
|
-
* @param {import("./basesource").Slice[]} slices
|
|
38
|
+
* @param {import("./basesource.js").Slice[]} slices
|
|
39
39
|
* @param {Map<number, Block>} blocks
|
|
40
40
|
* @returns {ArrayBuffer[]}
|
|
41
41
|
*/
|
|
42
|
-
readSliceData(slices: import("./basesource").Slice[], blocks: Map<number, Block>): ArrayBuffer[];
|
|
42
|
+
readSliceData(slices: import("./basesource.js").Slice[], blocks: Map<number, Block>): ArrayBuffer[];
|
|
43
43
|
}
|
|
44
44
|
import { BaseSource } from './basesource.js';
|
|
45
45
|
import QuickLRU from 'quick-lru';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blockedsource.d.ts","sourceRoot":"","sources":["../../dist-module/source/blockedsource.js"],"names":[],"mappings":"AAmCA;IACI;;;;;;OAMG;IACH,oBALW,UAAU,6BAElB;QAAyB,SAAS;QACT,SAAS;KAAC,EAmBrC;IAfG,mBAAoB;IACpB,kBAA0B;IAC1B,+BAKE;IACF,iCAAiC;IACjC,eADW,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CACC;IAE9B,6BAA8B;IAE9B,0BAAgC;IAChC,0BAAgC;IAKpC;;;;OAIG;IACH,cAJW,OAAO,
|
|
1
|
+
{"version":3,"file":"blockedsource.d.ts","sourceRoot":"","sources":["../../dist-module/source/blockedsource.js"],"names":[],"mappings":"AAmCA;IACI;;;;;;OAMG;IACH,oBALW,UAAU,6BAElB;QAAyB,SAAS;QACT,SAAS;KAAC,EAmBrC;IAfG,mBAAoB;IACpB,kBAA0B;IAC1B,+BAKE;IACF,iCAAiC;IACjC,eADW,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CACC;IAE9B,6BAA8B;IAE9B,0BAAgC;IAChC,0BAAgC;IAKpC;;;;OAIG;IACH,cAJW,OAAO,iBAAiB,EAAE,KAAK,EAAE,WACjC,WAAW,GACV,OAAO,CAAC,WAAW,EAAE,CAAC,CAuEjC;IACD;;OAEG;IACH,qBAFW,WAAW,QA4CrB;IACD;;;;OAIG;IACH,sBAHW,GAAG,CAAC,MAAM,CAAC,GACT,UAAU,EAAE,CAwBxB;IACD;;;;OAIG;IACH,sBAJW,OAAO,iBAAiB,EAAE,KAAK,EAAE,UACjC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,GAChB,WAAW,EAAE,CAuCzB;CACJ;2BA9P0B,iBAAiB;qBAFvB,WAAW;AAGhC;IACI;;;;;OAKG;IACH,oBAJW,MAAM,UACN,MAAM,QACN,WAAW,EAMrB;IAHG,eAAoB;IACpB,eAAoB;IACpB,kBAAgB;IAEpB;;OAEG;IACH,WAFa,MAAM,CAIlB;CACJ;AACD;IACI;;;;;OAKG;IACH,oBAJW,MAAM,UACN,MAAM,YACN,MAAM,EAAE,EAMlB;IAHG,eAAoB;IACpB,eAAoB;IACpB,mBAAwB;CAE/B"}
|
|
@@ -69,7 +69,7 @@ class BlockedSource extends basesource_js_1.BaseSource {
|
|
|
69
69
|
return this.source.fileSize;
|
|
70
70
|
}
|
|
71
71
|
/**
|
|
72
|
-
* @param {import("./basesource").Slice[]} slices
|
|
72
|
+
* @param {import("./basesource.js").Slice[]} slices
|
|
73
73
|
* @param {AbortSignal} [signal]
|
|
74
74
|
* @return {Promise<ArrayBuffer[]>}
|
|
75
75
|
*/
|
|
@@ -218,7 +218,7 @@ class BlockedSource extends basesource_js_1.BaseSource {
|
|
|
218
218
|
return groups;
|
|
219
219
|
}
|
|
220
220
|
/**
|
|
221
|
-
* @param {import("./basesource").Slice[]} slices
|
|
221
|
+
* @param {import("./basesource.js").Slice[]} slices
|
|
222
222
|
* @param {Map<number, Block>} blocks
|
|
223
223
|
* @returns {ArrayBuffer[]}
|
|
224
224
|
*/
|
|
@@ -19,11 +19,11 @@ export function makeXHRSource(url: string, { headers, maxRanges, allowFullFile,
|
|
|
19
19
|
*/
|
|
20
20
|
export function makeHttpSource(url: string, { headers, maxRanges, allowFullFile, ...blockOptions }?: RemoteSourceOptions & BlockedSourceOptions): BaseSource;
|
|
21
21
|
/**
|
|
22
|
-
* @param {import("../geotiff").BaseClient} client
|
|
22
|
+
* @param {import("../geotiff.js").BaseClient} client
|
|
23
23
|
* @param {RemoteSourceOptions & BlockedSourceOptions} [param1]
|
|
24
24
|
* @returns {BaseSource}
|
|
25
25
|
*/
|
|
26
|
-
export function makeCustomSource(client: import("../geotiff").BaseClient, { headers, maxRanges, allowFullFile, ...blockOptions }?: RemoteSourceOptions & BlockedSourceOptions): BaseSource;
|
|
26
|
+
export function makeCustomSource(client: import("../geotiff.js").BaseClient, { headers, maxRanges, allowFullFile, ...blockOptions }?: RemoteSourceOptions & BlockedSourceOptions): BaseSource;
|
|
27
27
|
/**
|
|
28
28
|
*
|
|
29
29
|
* @param {string} url
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remote.d.ts","sourceRoot":"","sources":["../../dist-module/source/remote.js"],"names":[],"mappings":"AA6JA;;;;GAIG;AACH,qCAJW,MAAM,wEACN,mBAAmB,GAAG,oBAAoB,GAAG;IAAE,WAAW,CAAC,EAAE,kBAAkB,CAAA;CAAC,GAC9E,UAAU,CAMtB;AACD;;;;GAIG;AACH,mCAJW,MAAM,2DACN,mBAAmB,GAAG,oBAAoB,GACxC,UAAU,CAMtB;AACD;;;;GAIG;AACH,oCAJW,MAAM,2DACN,mBAAmB,GAAG,oBAAoB,GACxC,UAAU,CAMtB;AACD;;;;GAIG;AACH,yCAJW,OAAO,
|
|
1
|
+
{"version":3,"file":"remote.d.ts","sourceRoot":"","sources":["../../dist-module/source/remote.js"],"names":[],"mappings":"AA6JA;;;;GAIG;AACH,qCAJW,MAAM,wEACN,mBAAmB,GAAG,oBAAoB,GAAG;IAAE,WAAW,CAAC,EAAE,kBAAkB,CAAA;CAAC,GAC9E,UAAU,CAMtB;AACD;;;;GAIG;AACH,mCAJW,MAAM,2DACN,mBAAmB,GAAG,oBAAoB,GACxC,UAAU,CAMtB;AACD;;;;GAIG;AACH,oCAJW,MAAM,2DACN,mBAAmB,GAAG,oBAAoB,GACxC,UAAU,CAMtB;AACD;;;;GAIG;AACH,yCAJW,OAAO,eAAe,EAAE,UAAU,2DAClC,mBAAmB,GAAG,oBAAoB,GACxC,UAAU,CAKtB;AACD;;;;GAIG;AACH,sCAHW,MAAM,mCACN,mBAAmB,cAU7B;yCA3M8D,eAAe;0CAAf,eAAe;2BALnD,iBAAiB"}
|
|
@@ -14,7 +14,7 @@ const http_js_1 = require("./client/http.js");
|
|
|
14
14
|
/** @import { RemoteSourceOptions, BlockedSourceOptions } from '../geotiff.js' */
|
|
15
15
|
class RemoteSource extends basesource_js_1.BaseSource {
|
|
16
16
|
/**
|
|
17
|
-
* @param {import("../geotiff").BaseClient} client
|
|
17
|
+
* @param {import("../geotiff.js").BaseClient} client
|
|
18
18
|
* @param {RemoteSourceOptions} options
|
|
19
19
|
*/
|
|
20
20
|
constructor(client, { headers, maxRanges = 0, allowFullFile } = {}) {
|
|
@@ -193,7 +193,7 @@ function makeHttpSource(url, { headers = {}, maxRanges = 0, allowFullFile = fals
|
|
|
193
193
|
return maybeWrapInBlockedSource(source, blockOptions);
|
|
194
194
|
}
|
|
195
195
|
/**
|
|
196
|
-
* @param {import("../geotiff").BaseClient} client
|
|
196
|
+
* @param {import("../geotiff.js").BaseClient} client
|
|
197
197
|
* @param {RemoteSourceOptions & BlockedSourceOptions} [param1]
|
|
198
198
|
* @returns {BaseSource}
|
|
199
199
|
*/
|
package/package.json
CHANGED
package/src/compression/index.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
/**
|
|
4
4
|
* @typedef {Object} RegistryEntry
|
|
5
5
|
* @property {function():Promise<typeof BaseDecoder>} importFn
|
|
6
|
-
* @property {function(import("../imagefiledirectory").ImageFileDirectory):Promise<BaseDecoderParameters>} decoderParameterFn
|
|
6
|
+
* @property {function(import("../imagefiledirectory.js").ImageFileDirectory):Promise<BaseDecoderParameters>} decoderParameterFn
|
|
7
7
|
* @property {boolean} preferWorker
|
|
8
8
|
*/
|
|
9
9
|
|
|
@@ -12,7 +12,7 @@ const registry = new Map();
|
|
|
12
12
|
|
|
13
13
|
/**
|
|
14
14
|
* Default decoder parameter retrieval function
|
|
15
|
-
* @param {import("../imagefiledirectory").ImageFileDirectory} fileDirectory
|
|
15
|
+
* @param {import("../imagefiledirectory.js").ImageFileDirectory} fileDirectory
|
|
16
16
|
* @returns {Promise<BaseDecoderParameters>}
|
|
17
17
|
*/
|
|
18
18
|
async function defaultDecoderParameterFn(fileDirectory) {
|
|
@@ -37,7 +37,7 @@ async function defaultDecoderParameterFn(fileDirectory) {
|
|
|
37
37
|
* Register a decoder for a specific compression method or a range of compressions
|
|
38
38
|
* @param {(number|undefined|(number|undefined)[])} cases ids of the compression methods to register for
|
|
39
39
|
* @param {function():Promise<typeof BaseDecoder>} importFn the function to import the decoder
|
|
40
|
-
* @param {function(import("../imagefiledirectory").ImageFileDirectory):Promise<BaseDecoderParameters>} decoderParameterFn
|
|
40
|
+
* @param {function(import("../imagefiledirectory.js").ImageFileDirectory):Promise<BaseDecoderParameters>} decoderParameterFn
|
|
41
41
|
* @param {boolean} preferWorker_ Whether to prefer running the decoder in a worker
|
|
42
42
|
*/
|
|
43
43
|
export function addDecoder(cases, importFn, decoderParameterFn = defaultDecoderParameterFn, preferWorker_ = true) {
|
|
@@ -113,7 +113,7 @@ const defaultDecoderDefinitions = [
|
|
|
113
113
|
cases: 7,
|
|
114
114
|
importFn: () => import('./jpeg.js').then((m) => m.default),
|
|
115
115
|
/**
|
|
116
|
-
* @param {import("../imagefiledirectory").ImageFileDirectory} fileDirectory
|
|
116
|
+
* @param {import("../imagefiledirectory.js").ImageFileDirectory} fileDirectory
|
|
117
117
|
*/
|
|
118
118
|
decoderParameterFn: async (fileDirectory) => {
|
|
119
119
|
return {
|
|
@@ -142,7 +142,7 @@ const defaultDecoderDefinitions = [
|
|
|
142
142
|
})
|
|
143
143
|
.then((m) => m.default),
|
|
144
144
|
/**
|
|
145
|
-
* @param {import("../imagefiledirectory").ImageFileDirectory} fileDirectory
|
|
145
|
+
* @param {import("../imagefiledirectory.js").ImageFileDirectory} fileDirectory
|
|
146
146
|
*/
|
|
147
147
|
decoderParameterFn: async (fileDirectory) => {
|
|
148
148
|
return {
|
|
@@ -166,7 +166,7 @@ const defaultDecoderDefinitions = [
|
|
|
166
166
|
cases: 50001,
|
|
167
167
|
importFn: () => import('./webimage.js').then((m) => m.default),
|
|
168
168
|
/**
|
|
169
|
-
* @param {import("../imagefiledirectory").ImageFileDirectory} fileDirectory
|
|
169
|
+
* @param {import("../imagefiledirectory.js").ImageFileDirectory} fileDirectory
|
|
170
170
|
*/
|
|
171
171
|
decoderParameterFn: async (fileDirectory) => {
|
|
172
172
|
return {
|
package/src/geotiffimage.js
CHANGED
|
@@ -10,10 +10,10 @@ import { fromWhiteIsZero, fromBlackIsZero, fromPalette, fromCMYK, fromYCbCr, fro
|
|
|
10
10
|
import { getDecoder, getDecoderParameters } from './compression/index.js';
|
|
11
11
|
import { resample, resampleInterleaved } from './resample.js';
|
|
12
12
|
|
|
13
|
-
/** @import {DecoderWorker, TypedArray} from "./geotiff" */
|
|
14
|
-
/** @import {ReadRasterResult} from "./geotiff" */
|
|
15
|
-
/** @import {ReadRastersOptions} from "./geotiff" */
|
|
16
|
-
/** @import {ReadRGBOptions} from "./geotiff" */
|
|
13
|
+
/** @import {DecoderWorker, TypedArray} from "./geotiff.js" */
|
|
14
|
+
/** @import {ReadRasterResult} from "./geotiff.js" */
|
|
15
|
+
/** @import {ReadRastersOptions} from "./geotiff.js" */
|
|
16
|
+
/** @import {ReadRGBOptions} from "./geotiff.js" */
|
|
17
17
|
|
|
18
18
|
/**
|
|
19
19
|
* @param {Array<number>|TypedArray} array
|
|
@@ -195,7 +195,7 @@ function normalizeArray(inBuffer, format, planarConfiguration, samplesPerPixel,
|
|
|
195
195
|
class GeoTIFFImage {
|
|
196
196
|
/**
|
|
197
197
|
* @constructor
|
|
198
|
-
* @param {import("./imagefiledirectory").ImageFileDirectory} fileDirectory The parsed file directory
|
|
198
|
+
* @param {import("./imagefiledirectory.js").ImageFileDirectory} fileDirectory The parsed file directory
|
|
199
199
|
* @param {Boolean} littleEndian Whether the file is encoded in little or big endian
|
|
200
200
|
* @param {Boolean} cache Whether or not decoded tiles shall be cached
|
|
201
201
|
* @param {import('./source/basesource.js').BaseSource} source The datasource to read from
|
|
@@ -218,7 +218,7 @@ class GeoTIFFImage {
|
|
|
218
218
|
|
|
219
219
|
/**
|
|
220
220
|
* Returns the associated parsed file directory.
|
|
221
|
-
* @returns {import("./imagefiledirectory").ImageFileDirectory} the parsed file directory
|
|
221
|
+
* @returns {import("./imagefiledirectory.js").ImageFileDirectory} the parsed file directory
|
|
222
222
|
*/
|
|
223
223
|
getFileDirectory() {
|
|
224
224
|
return this.fileDirectory;
|
|
@@ -250,15 +250,15 @@ class GeoTIFFImage {
|
|
|
250
250
|
|
|
251
251
|
/**
|
|
252
252
|
* Returns the number of samples per pixel.
|
|
253
|
-
* @returns {
|
|
253
|
+
* @returns {number} the number of samples per pixel
|
|
254
254
|
*/
|
|
255
255
|
getSamplesPerPixel() {
|
|
256
|
-
return this.fileDirectory.
|
|
256
|
+
return this.fileDirectory.getValue('SamplesPerPixel') ?? 1;
|
|
257
257
|
}
|
|
258
258
|
|
|
259
259
|
/**
|
|
260
260
|
* Returns the width of each tile.
|
|
261
|
-
* @returns {
|
|
261
|
+
* @returns {number} the width of each tile
|
|
262
262
|
*/
|
|
263
263
|
getTileWidth() {
|
|
264
264
|
return this.isTiled ? (this.fileDirectory.getValue('TileWidth') || 0) : this.getWidth();
|
|
@@ -266,7 +266,7 @@ class GeoTIFFImage {
|
|
|
266
266
|
|
|
267
267
|
/**
|
|
268
268
|
* Returns the height of each tile.
|
|
269
|
-
* @returns {
|
|
269
|
+
* @returns {number} the height of each tile
|
|
270
270
|
*/
|
|
271
271
|
getTileHeight() {
|
|
272
272
|
if (this.isTiled) {
|
|
@@ -397,7 +397,7 @@ class GeoTIFFImage {
|
|
|
397
397
|
* @param {Number} x the strip or tile x-offset
|
|
398
398
|
* @param {Number} y the tile y-offset (0 for stripped images)
|
|
399
399
|
* @param {Number} sample the sample to get for separated samples
|
|
400
|
-
* @param {DecoderWorker|import("./geotiff").BaseDecoder} poolOrDecoder the decoder or decoder pool
|
|
400
|
+
* @param {DecoderWorker|import("./geotiff.js").BaseDecoder} poolOrDecoder the decoder or decoder pool
|
|
401
401
|
* @param {AbortSignal} [signal] An AbortSignal that may be signalled if the request is
|
|
402
402
|
* to be aborted
|
|
403
403
|
* @returns {Promise.<{x: number, y: number, sample: number, data: ArrayBufferLike}>} the decoded strip or tile
|
|
@@ -478,7 +478,7 @@ class GeoTIFFImage {
|
|
|
478
478
|
* @param {Array<number>} samples The selected samples (0-based indices)
|
|
479
479
|
* @param {TypedArray|TypedArray[]} valueArrays The array(s) to write into
|
|
480
480
|
* @param {boolean|undefined} interleave Whether or not to write in an interleaved manner
|
|
481
|
-
* @param {DecoderWorker|import("./geotiff").BaseDecoder} poolOrDecoder the decoder or decoder pool
|
|
481
|
+
* @param {DecoderWorker|import("./geotiff.js").BaseDecoder} poolOrDecoder the decoder or decoder pool
|
|
482
482
|
* @param {number} [width] the width of window to be read into
|
|
483
483
|
* @param {number} [height] the height of window to be read into
|
|
484
484
|
* @param {string} [resampleMethod] the resampling method to be used when interpolating
|
|
@@ -622,13 +622,13 @@ class GeoTIFFImage {
|
|
|
622
622
|
/**
|
|
623
623
|
* @overload
|
|
624
624
|
* @param {ReadRastersOptions & {interleave: true}} options optional parameters
|
|
625
|
-
* @returns {Promise<import("./geotiff").TypedArrayWithDimensions>} the decoded arrays as a promise
|
|
625
|
+
* @returns {Promise<import("./geotiff.js").TypedArrayWithDimensions>} the decoded arrays as a promise
|
|
626
626
|
*/
|
|
627
627
|
|
|
628
628
|
/**
|
|
629
629
|
* @overload
|
|
630
630
|
* @param {ReadRastersOptions & {interleave: false}} options optional parameters
|
|
631
|
-
* @returns {Promise<import("./geotiff").TypedArrayArrayWithDimensions>} the decoded arrays as a promise
|
|
631
|
+
* @returns {Promise<import("./geotiff.js").TypedArrayArrayWithDimensions>} the decoded arrays as a promise
|
|
632
632
|
*/
|
|
633
633
|
|
|
634
634
|
/**
|
|
@@ -640,7 +640,7 @@ class GeoTIFFImage {
|
|
|
640
640
|
/**
|
|
641
641
|
* @overload
|
|
642
642
|
* @param {ReadRastersOptions} [options={}] optional parameters
|
|
643
|
-
* @returns {Promise<import("./geotiff").TypedArrayArrayWithDimensions>} the decoded arrays as a promise
|
|
643
|
+
* @returns {Promise<import("./geotiff.js").TypedArrayArrayWithDimensions>} the decoded arrays as a promise
|
|
644
644
|
*/
|
|
645
645
|
|
|
646
646
|
/**
|
|
@@ -685,13 +685,15 @@ class GeoTIFFImage {
|
|
|
685
685
|
let valueArrays;
|
|
686
686
|
if (interleave) {
|
|
687
687
|
const { fileDirectory } = this;
|
|
688
|
-
const
|
|
689
|
-
|
|
688
|
+
const sampleFormat = fileDirectory.getValue('SampleFormat');
|
|
689
|
+
const format = sampleFormat
|
|
690
|
+
? Math.max.apply(null, Array.from(sampleFormat)) : 1;
|
|
690
691
|
if (format !== 1 && format !== 2 && format !== 3) {
|
|
691
692
|
throw new Error('Unsupported sample format for interleaved data. Must be 1, 2, or 3.');
|
|
692
693
|
}
|
|
693
|
-
const
|
|
694
|
-
|
|
694
|
+
const bitsPerSample_ = fileDirectory.getValue('BitsPerSample');
|
|
695
|
+
const bitsPerSample = bitsPerSample_
|
|
696
|
+
? Math.max.apply(null, Array.from(bitsPerSample_)) : 8;
|
|
695
697
|
valueArrays = arrayForType(format, bitsPerSample, numPixels * samples.length);
|
|
696
698
|
if (fillValue) {
|
|
697
699
|
if (Array.isArray(fillValue)) {
|
|
@@ -727,13 +729,13 @@ class GeoTIFFImage {
|
|
|
727
729
|
/**
|
|
728
730
|
* @overload
|
|
729
731
|
* @param {ReadRGBOptions & {interleave: true}} options optional parameters
|
|
730
|
-
* @returns {Promise<import("./geotiff").TypedArrayWithDimensions>} the RGB array as a Promise
|
|
732
|
+
* @returns {Promise<import("./geotiff.js").TypedArrayWithDimensions>} the RGB array as a Promise
|
|
731
733
|
*/
|
|
732
734
|
|
|
733
735
|
/**
|
|
734
736
|
* @overload
|
|
735
737
|
* @param {ReadRGBOptions & {interleave: false}} options optional parameters
|
|
736
|
-
* @returns {Promise<import("./geotiff").TypedArrayArrayWithDimensions>} the RGB array as a Promise
|
|
738
|
+
* @returns {Promise<import("./geotiff.js").TypedArrayArrayWithDimensions>} the RGB array as a Promise
|
|
737
739
|
*/
|
|
738
740
|
|
|
739
741
|
/**
|
|
@@ -745,7 +747,7 @@ class GeoTIFFImage {
|
|
|
745
747
|
/**
|
|
746
748
|
* @overload
|
|
747
749
|
* @param {ReadRGBOptions} [options={}] optional parameters
|
|
748
|
-
* @returns {Promise<import("./geotiff").TypedArrayArrayWithDimensions>} the RGB array as a Promise
|
|
750
|
+
* @returns {Promise<import("./geotiff.js").TypedArrayArrayWithDimensions>} the RGB array as a Promise
|
|
749
751
|
*/
|
|
750
752
|
|
|
751
753
|
/**
|
|
@@ -864,7 +866,7 @@ class GeoTIFFImage {
|
|
|
864
866
|
data = [red, green, blue];
|
|
865
867
|
}
|
|
866
868
|
|
|
867
|
-
const dataWithDimensions = /** @type {import("./geotiff").ReadRasterResult} */ (data);
|
|
869
|
+
const dataWithDimensions = /** @type {import("./geotiff.js").ReadRasterResult} */ (data);
|
|
868
870
|
|
|
869
871
|
dataWithDimensions.width = raster.width;
|
|
870
872
|
dataWithDimensions.height = raster.height;
|
|
@@ -294,10 +294,8 @@ export class ImageFileDirectory {
|
|
|
294
294
|
}
|
|
295
295
|
|
|
296
296
|
/**
|
|
297
|
-
* @
|
|
298
|
-
* @
|
|
299
|
-
* @returns {this is { getValue(t: T): NonNullable<import('./globals.js').TagValue<T>> }
|
|
300
|
-
* & import('./imagefiledirectory').ImageFileDirectory} whether the field exists (actualized or deferred)
|
|
297
|
+
* @param {import('./globals.js').TagName|number} tagIdentifier The field tag ID or name
|
|
298
|
+
* @returns {boolean} whether the field exists (actualized or deferred)
|
|
301
299
|
*/
|
|
302
300
|
hasTag(tagIdentifier) {
|
|
303
301
|
const tag = resolveTag(tagIdentifier);
|
package/src/resample.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
|
-
* @param {import("./geotiff").TypedArray} array
|
|
6
|
+
* @param {import("./geotiff.js").TypedArray} array
|
|
7
7
|
* @param {number} width
|
|
8
8
|
* @param {number} height
|
|
9
9
|
* @param {number} [samplesPerPixel=1]
|
|
@@ -14,12 +14,12 @@ function copyNewSize(array, width, height, samplesPerPixel = 1) {
|
|
|
14
14
|
|
|
15
15
|
/**
|
|
16
16
|
* Resample the input arrays using nearest neighbor value selection.
|
|
17
|
-
* @param {import("./geotiff").TypedArray[]} valueArrays The input arrays to resample
|
|
17
|
+
* @param {import("./geotiff.js").TypedArray[]} valueArrays The input arrays to resample
|
|
18
18
|
* @param {number} inWidth The width of the input rasters
|
|
19
19
|
* @param {number} inHeight The height of the input rasters
|
|
20
20
|
* @param {number} outWidth The desired width of the output rasters
|
|
21
21
|
* @param {number} outHeight The desired height of the output rasters
|
|
22
|
-
* @returns {import("./geotiff").TypedArray[]} The resampled rasters
|
|
22
|
+
* @returns {import("./geotiff.js").TypedArray[]} The resampled rasters
|
|
23
23
|
*/
|
|
24
24
|
export function resampleNearest(valueArrays, inWidth, inHeight, outWidth, outHeight) {
|
|
25
25
|
const relX = inWidth / outWidth;
|
|
@@ -51,12 +51,12 @@ function lerp(v0, v1, t) {
|
|
|
51
51
|
|
|
52
52
|
/**
|
|
53
53
|
* Resample the input arrays using bilinear interpolation.
|
|
54
|
-
* @param {import("./geotiff").TypedArray[]} valueArrays The input arrays to resample
|
|
54
|
+
* @param {import("./geotiff.js").TypedArray[]} valueArrays The input arrays to resample
|
|
55
55
|
* @param {number} inWidth The width of the input rasters
|
|
56
56
|
* @param {number} inHeight The height of the input rasters
|
|
57
57
|
* @param {number} outWidth The desired width of the output rasters
|
|
58
58
|
* @param {number} outHeight The desired height of the output rasters
|
|
59
|
-
* @returns {import("./geotiff").TypedArray[]} The resampled rasters
|
|
59
|
+
* @returns {import("./geotiff.js").TypedArray[]} The resampled rasters
|
|
60
60
|
*/
|
|
61
61
|
export function resampleBilinear(valueArrays, inWidth, inHeight, outWidth, outHeight) {
|
|
62
62
|
const relX = inWidth / outWidth;
|
|
@@ -96,13 +96,13 @@ export function resampleBilinear(valueArrays, inWidth, inHeight, outWidth, outHe
|
|
|
96
96
|
|
|
97
97
|
/**
|
|
98
98
|
* Resample the input arrays using the selected resampling method.
|
|
99
|
-
* @param {import("./geotiff").TypedArray[]} valueArrays The input arrays to resample
|
|
99
|
+
* @param {import("./geotiff.js").TypedArray[]} valueArrays The input arrays to resample
|
|
100
100
|
* @param {number} inWidth The width of the input rasters
|
|
101
101
|
* @param {number} inHeight The height of the input rasters
|
|
102
102
|
* @param {number} outWidth The desired width of the output rasters
|
|
103
103
|
* @param {number} outHeight The desired height of the output rasters
|
|
104
104
|
* @param {string} [method = 'nearest'] The desired resampling method
|
|
105
|
-
* @returns {import("./geotiff").TypedArray[]} The resampled rasters
|
|
105
|
+
* @returns {import("./geotiff.js").TypedArray[]} The resampled rasters
|
|
106
106
|
*/
|
|
107
107
|
export function resample(valueArrays, inWidth, inHeight, outWidth, outHeight, method = 'nearest') {
|
|
108
108
|
switch (method.toLowerCase()) {
|
|
@@ -118,14 +118,14 @@ export function resample(valueArrays, inWidth, inHeight, outWidth, outHeight, me
|
|
|
118
118
|
|
|
119
119
|
/**
|
|
120
120
|
* Resample the pixel interleaved input array using nearest neighbor value selection.
|
|
121
|
-
* @param {import("./geotiff").TypedArray} valueArray The input array to resample
|
|
121
|
+
* @param {import("./geotiff.js").TypedArray} valueArray The input array to resample
|
|
122
122
|
* @param {number} inWidth The width of the input rasters
|
|
123
123
|
* @param {number} inHeight The height of the input rasters
|
|
124
124
|
* @param {number} outWidth The desired width of the output rasters
|
|
125
125
|
* @param {number} outHeight The desired height of the output rasters
|
|
126
126
|
* @param {number} samples The number of samples per pixel for pixel
|
|
127
127
|
* interleaved data
|
|
128
|
-
* @returns {import("./geotiff").TypedArray} The resampled raster
|
|
128
|
+
* @returns {import("./geotiff.js").TypedArray} The resampled raster
|
|
129
129
|
*/
|
|
130
130
|
export function resampleNearestInterleaved(
|
|
131
131
|
valueArray, inWidth, inHeight, outWidth, outHeight, samples) {
|
|
@@ -148,14 +148,14 @@ export function resampleNearestInterleaved(
|
|
|
148
148
|
|
|
149
149
|
/**
|
|
150
150
|
* Resample the pixel interleaved input array using bilinear interpolation.
|
|
151
|
-
* @param {import("./geotiff").TypedArray} valueArray The input array to resample
|
|
151
|
+
* @param {import("./geotiff.js").TypedArray} valueArray The input array to resample
|
|
152
152
|
* @param {number} inWidth The width of the input rasters
|
|
153
153
|
* @param {number} inHeight The height of the input rasters
|
|
154
154
|
* @param {number} outWidth The desired width of the output rasters
|
|
155
155
|
* @param {number} outHeight The desired height of the output rasters
|
|
156
156
|
* @param {number} samples The number of samples per pixel for pixel
|
|
157
157
|
* interleaved data
|
|
158
|
-
* @returns {import("./geotiff").TypedArray} The resampled raster
|
|
158
|
+
* @returns {import("./geotiff.js").TypedArray} The resampled raster
|
|
159
159
|
*/
|
|
160
160
|
export function resampleBilinearInterleaved(
|
|
161
161
|
valueArray, inWidth, inHeight, outWidth, outHeight, samples) {
|
|
@@ -195,7 +195,7 @@ export function resampleBilinearInterleaved(
|
|
|
195
195
|
|
|
196
196
|
/**
|
|
197
197
|
* Resample the pixel interleaved input array using the selected resampling method.
|
|
198
|
-
* @param {import("./geotiff").TypedArray} valueArray The input array to resample
|
|
198
|
+
* @param {import("./geotiff.js").TypedArray} valueArray The input array to resample
|
|
199
199
|
* @param {number} inWidth The width of the input rasters
|
|
200
200
|
* @param {number} inHeight The height of the input rasters
|
|
201
201
|
* @param {number} outWidth The desired width of the output rasters
|
|
@@ -203,7 +203,7 @@ export function resampleBilinearInterleaved(
|
|
|
203
203
|
* @param {number} samples The number of samples per pixel for pixel
|
|
204
204
|
* interleaved data
|
|
205
205
|
* @param {string} [method = 'nearest'] The desired resampling method
|
|
206
|
-
* @returns {import("./geotiff").TypedArray} The resampled rasters
|
|
206
|
+
* @returns {import("./geotiff.js").TypedArray} The resampled rasters
|
|
207
207
|
*/
|
|
208
208
|
export function resampleInterleaved(valueArray, inWidth, inHeight, outWidth, outHeight, samples, method = 'nearest') {
|
|
209
209
|
switch (method.toLowerCase()) {
|