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
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
* Register a decoder for a specific compression method or a range of compressions
|
|
3
3
|
* @param {(number|undefined|(number|undefined)[])} cases ids of the compression methods to register for
|
|
4
4
|
* @param {function():Promise<typeof BaseDecoder>} importFn the function to import the decoder
|
|
5
|
-
* @param {function(import("../imagefiledirectory").ImageFileDirectory):Promise<BaseDecoderParameters>} decoderParameterFn
|
|
5
|
+
* @param {function(import("../imagefiledirectory.js").ImageFileDirectory):Promise<BaseDecoderParameters>} decoderParameterFn
|
|
6
6
|
* @param {boolean} preferWorker_ Whether to prefer running the decoder in a worker
|
|
7
7
|
*/
|
|
8
|
-
export function addDecoder(cases: (number | undefined | (number | undefined)[]), importFn: () => Promise<typeof BaseDecoder>, decoderParameterFn?: (arg0: import("../imagefiledirectory").ImageFileDirectory) => Promise<BaseDecoderParameters>, preferWorker_?: boolean): void;
|
|
8
|
+
export function addDecoder(cases: (number | undefined | (number | undefined)[]), importFn: () => Promise<typeof BaseDecoder>, decoderParameterFn?: (arg0: import("../imagefiledirectory.js").ImageFileDirectory) => Promise<BaseDecoderParameters>, preferWorker_?: boolean): void;
|
|
9
9
|
/**
|
|
10
10
|
* Get the required decoder parameters for a specific compression method
|
|
11
11
|
* @param {number|undefined} compression
|
|
@@ -27,7 +27,7 @@ export function getDecoder(compression: number, decoderParameters: BaseDecoderPa
|
|
|
27
27
|
export function preferWorker(compression: number | undefined): boolean;
|
|
28
28
|
export type RegistryEntry = {
|
|
29
29
|
importFn: () => Promise<typeof BaseDecoder>;
|
|
30
|
-
decoderParameterFn: (arg0: import("../imagefiledirectory").ImageFileDirectory) => Promise<BaseDecoderParameters>;
|
|
30
|
+
decoderParameterFn: (arg0: import("../imagefiledirectory.js").ImageFileDirectory) => Promise<BaseDecoderParameters>;
|
|
31
31
|
preferWorker: boolean;
|
|
32
32
|
};
|
|
33
33
|
import type BaseDecoder from "./basedecoder.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/compression/index.js"],"names":[],"mappings":"AAmCA;;;;;;GAMG;AACH,kCALW,CAAC,MAAM,GAAC,SAAS,GAAC,CAAC,MAAM,GAAC,SAAS,CAAC,EAAE,CAAC,YACvC,MAAW,OAAO,CAAC,kBAAkB,CAAC,uBACtC,CAAS,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/compression/index.js"],"names":[],"mappings":"AAmCA;;;;;;GAMG;AACH,kCALW,CAAC,MAAM,GAAC,SAAS,GAAC,CAAC,MAAM,GAAC,SAAS,CAAC,EAAE,CAAC,YACvC,MAAW,OAAO,CAAC,kBAAkB,CAAC,uBACtC,CAAS,IAAqD,EAArD,OAAO,0BAA0B,EAAE,kBAAkB,KAAE,OAAO,CAAC,qBAAqB,CAAC,kBAC9F,OAAO,QASjB;AAED;;;;GAIG;AACH,kDAHW,MAAM,GAAC,SAAS,iBAChB,OAAO,0BAA0B,EAAE,kBAAkB,kCAQ/D;AAED;;;;;GAKG;AACH,wCAJW,MAAM,qBACN,qBAAqB,GACnB,OAAO,CAAC,OAAO,kBAAkB,EAAE,OAAO,CAAC,CASvD;AAED;;;;GAIG;AACH,0CAHW,MAAM,GAAC,SAAS,GACd,OAAO,CAOnB;;cArFa,MAAW,OAAO,CAAC,kBAAkB,CAAC;wBACtC,CAAS,IAAqD,EAArD,OAAO,0BAA0B,EAAE,kBAAkB,KAAE,OAAO,CAAC,qBAAqB,CAAC;kBAC9F,OAAO;;6BANiC,kBAAkB;2CAAlB,kBAAkB"}
|
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* @typedef {Object} RegistryEntry
|
|
4
4
|
* @property {function():Promise<typeof BaseDecoder>} importFn
|
|
5
|
-
* @property {function(import("../imagefiledirectory").ImageFileDirectory):Promise<BaseDecoderParameters>} decoderParameterFn
|
|
5
|
+
* @property {function(import("../imagefiledirectory.js").ImageFileDirectory):Promise<BaseDecoderParameters>} decoderParameterFn
|
|
6
6
|
* @property {boolean} preferWorker
|
|
7
7
|
*/
|
|
8
8
|
/** @type {Map<number | undefined, RegistryEntry>} */
|
|
9
9
|
const registry = new Map();
|
|
10
10
|
/**
|
|
11
11
|
* Default decoder parameter retrieval function
|
|
12
|
-
* @param {import("../imagefiledirectory").ImageFileDirectory} fileDirectory
|
|
12
|
+
* @param {import("../imagefiledirectory.js").ImageFileDirectory} fileDirectory
|
|
13
13
|
* @returns {Promise<BaseDecoderParameters>}
|
|
14
14
|
*/
|
|
15
15
|
async function defaultDecoderParameterFn(fileDirectory) {
|
|
@@ -31,7 +31,7 @@ async function defaultDecoderParameterFn(fileDirectory) {
|
|
|
31
31
|
* Register a decoder for a specific compression method or a range of compressions
|
|
32
32
|
* @param {(number|undefined|(number|undefined)[])} cases ids of the compression methods to register for
|
|
33
33
|
* @param {function():Promise<typeof BaseDecoder>} importFn the function to import the decoder
|
|
34
|
-
* @param {function(import("../imagefiledirectory").ImageFileDirectory):Promise<BaseDecoderParameters>} decoderParameterFn
|
|
34
|
+
* @param {function(import("../imagefiledirectory.js").ImageFileDirectory):Promise<BaseDecoderParameters>} decoderParameterFn
|
|
35
35
|
* @param {boolean} preferWorker_ Whether to prefer running the decoder in a worker
|
|
36
36
|
*/
|
|
37
37
|
export function addDecoder(cases, importFn, decoderParameterFn = defaultDecoderParameterFn, preferWorker_ = true) {
|
|
@@ -103,7 +103,7 @@ const defaultDecoderDefinitions = [
|
|
|
103
103
|
cases: 7,
|
|
104
104
|
importFn: () => import('./jpeg.js').then((m) => m.default),
|
|
105
105
|
/**
|
|
106
|
-
* @param {import("../imagefiledirectory").ImageFileDirectory} fileDirectory
|
|
106
|
+
* @param {import("../imagefiledirectory.js").ImageFileDirectory} fileDirectory
|
|
107
107
|
*/
|
|
108
108
|
decoderParameterFn: async (fileDirectory) => {
|
|
109
109
|
return {
|
|
@@ -132,7 +132,7 @@ const defaultDecoderDefinitions = [
|
|
|
132
132
|
})
|
|
133
133
|
.then((m) => m.default),
|
|
134
134
|
/**
|
|
135
|
-
* @param {import("../imagefiledirectory").ImageFileDirectory} fileDirectory
|
|
135
|
+
* @param {import("../imagefiledirectory.js").ImageFileDirectory} fileDirectory
|
|
136
136
|
*/
|
|
137
137
|
decoderParameterFn: async (fileDirectory) => {
|
|
138
138
|
return {
|
|
@@ -156,7 +156,7 @@ const defaultDecoderDefinitions = [
|
|
|
156
156
|
cases: 50001,
|
|
157
157
|
importFn: () => import('./webimage.js').then((m) => m.default),
|
|
158
158
|
/**
|
|
159
|
-
* @param {import("../imagefiledirectory").ImageFileDirectory} fileDirectory
|
|
159
|
+
* @param {import("../imagefiledirectory.js").ImageFileDirectory} fileDirectory
|
|
160
160
|
*/
|
|
161
161
|
decoderParameterFn: async (fileDirectory) => {
|
|
162
162
|
return {
|
|
@@ -5,13 +5,13 @@ export default GeoTIFFImage;
|
|
|
5
5
|
declare class GeoTIFFImage {
|
|
6
6
|
/**
|
|
7
7
|
* @constructor
|
|
8
|
-
* @param {import("./imagefiledirectory").ImageFileDirectory} fileDirectory The parsed file directory
|
|
8
|
+
* @param {import("./imagefiledirectory.js").ImageFileDirectory} fileDirectory The parsed file directory
|
|
9
9
|
* @param {Boolean} littleEndian Whether the file is encoded in little or big endian
|
|
10
10
|
* @param {Boolean} cache Whether or not decoded tiles shall be cached
|
|
11
11
|
* @param {import('./source/basesource.js').BaseSource} source The datasource to read from
|
|
12
12
|
*/
|
|
13
|
-
constructor(fileDirectory: import("./imagefiledirectory").ImageFileDirectory, littleEndian: boolean, cache: boolean, source: import("./source/basesource.js").BaseSource);
|
|
14
|
-
fileDirectory: import("./imagefiledirectory").ImageFileDirectory;
|
|
13
|
+
constructor(fileDirectory: import("./imagefiledirectory.js").ImageFileDirectory, littleEndian: boolean, cache: boolean, source: import("./source/basesource.js").BaseSource);
|
|
14
|
+
fileDirectory: import("./imagefiledirectory.js").ImageFileDirectory;
|
|
15
15
|
littleEndian: boolean;
|
|
16
16
|
/** @type {Array<Promise<ArrayBufferLike>>|null} */
|
|
17
17
|
tiles: Array<Promise<ArrayBufferLike>> | null;
|
|
@@ -21,9 +21,9 @@ declare class GeoTIFFImage {
|
|
|
21
21
|
source: import("./source/basesource.js").BaseSource;
|
|
22
22
|
/**
|
|
23
23
|
* Returns the associated parsed file directory.
|
|
24
|
-
* @returns {import("./imagefiledirectory").ImageFileDirectory} the parsed file directory
|
|
24
|
+
* @returns {import("./imagefiledirectory.js").ImageFileDirectory} the parsed file directory
|
|
25
25
|
*/
|
|
26
|
-
getFileDirectory(): import("./imagefiledirectory").ImageFileDirectory;
|
|
26
|
+
getFileDirectory(): import("./imagefiledirectory.js").ImageFileDirectory;
|
|
27
27
|
/**
|
|
28
28
|
* Returns the associated parsed geo keys.
|
|
29
29
|
* @returns {Partial<Record<import('./globals.js').GeoKeyName, *>>|null} the parsed geo keys
|
|
@@ -41,17 +41,17 @@ declare class GeoTIFFImage {
|
|
|
41
41
|
getHeight(): number;
|
|
42
42
|
/**
|
|
43
43
|
* Returns the number of samples per pixel.
|
|
44
|
-
* @returns {
|
|
44
|
+
* @returns {number} the number of samples per pixel
|
|
45
45
|
*/
|
|
46
46
|
getSamplesPerPixel(): number;
|
|
47
47
|
/**
|
|
48
48
|
* Returns the width of each tile.
|
|
49
|
-
* @returns {
|
|
49
|
+
* @returns {number} the width of each tile
|
|
50
50
|
*/
|
|
51
51
|
getTileWidth(): number;
|
|
52
52
|
/**
|
|
53
53
|
* Returns the height of each tile.
|
|
54
|
-
* @returns {
|
|
54
|
+
* @returns {number} the height of each tile
|
|
55
55
|
*/
|
|
56
56
|
getTileHeight(): number;
|
|
57
57
|
getBlockWidth(): number;
|
|
@@ -89,12 +89,12 @@ declare class GeoTIFFImage {
|
|
|
89
89
|
* @param {Number} x the strip or tile x-offset
|
|
90
90
|
* @param {Number} y the tile y-offset (0 for stripped images)
|
|
91
91
|
* @param {Number} sample the sample to get for separated samples
|
|
92
|
-
* @param {DecoderWorker|import("./geotiff").BaseDecoder} poolOrDecoder the decoder or decoder pool
|
|
92
|
+
* @param {DecoderWorker|import("./geotiff.js").BaseDecoder} poolOrDecoder the decoder or decoder pool
|
|
93
93
|
* @param {AbortSignal} [signal] An AbortSignal that may be signalled if the request is
|
|
94
94
|
* to be aborted
|
|
95
95
|
* @returns {Promise.<{x: number, y: number, sample: number, data: ArrayBufferLike}>} the decoded strip or tile
|
|
96
96
|
*/
|
|
97
|
-
getTileOrStrip(x: number, y: number, sample: number, poolOrDecoder: DecoderWorker | import("./geotiff").BaseDecoder, signal?: AbortSignal): Promise<{
|
|
97
|
+
getTileOrStrip(x: number, y: number, sample: number, poolOrDecoder: DecoderWorker | import("./geotiff.js").BaseDecoder, signal?: AbortSignal): Promise<{
|
|
98
98
|
x: number;
|
|
99
99
|
y: number;
|
|
100
100
|
sample: number;
|
|
@@ -107,7 +107,7 @@ declare class GeoTIFFImage {
|
|
|
107
107
|
* @param {Array<number>} samples The selected samples (0-based indices)
|
|
108
108
|
* @param {TypedArray|TypedArray[]} valueArrays The array(s) to write into
|
|
109
109
|
* @param {boolean|undefined} interleave Whether or not to write in an interleaved manner
|
|
110
|
-
* @param {DecoderWorker|import("./geotiff").BaseDecoder} poolOrDecoder the decoder or decoder pool
|
|
110
|
+
* @param {DecoderWorker|import("./geotiff.js").BaseDecoder} poolOrDecoder the decoder or decoder pool
|
|
111
111
|
* @param {number} [width] the width of window to be read into
|
|
112
112
|
* @param {number} [height] the height of window to be read into
|
|
113
113
|
* @param {string} [resampleMethod] the resampling method to be used when interpolating
|
|
@@ -119,19 +119,19 @@ declare class GeoTIFFImage {
|
|
|
119
119
|
/**
|
|
120
120
|
* @overload
|
|
121
121
|
* @param {ReadRastersOptions & {interleave: true}} options optional parameters
|
|
122
|
-
* @returns {Promise<import("./geotiff").TypedArrayWithDimensions>} the decoded arrays as a promise
|
|
122
|
+
* @returns {Promise<import("./geotiff.js").TypedArrayWithDimensions>} the decoded arrays as a promise
|
|
123
123
|
*/
|
|
124
124
|
readRasters(options: ReadRastersOptions & {
|
|
125
125
|
interleave: true;
|
|
126
|
-
}): Promise<import("./geotiff").TypedArrayWithDimensions>;
|
|
126
|
+
}): Promise<import("./geotiff.js").TypedArrayWithDimensions>;
|
|
127
127
|
/**
|
|
128
128
|
* @overload
|
|
129
129
|
* @param {ReadRastersOptions & {interleave: false}} options optional parameters
|
|
130
|
-
* @returns {Promise<import("./geotiff").TypedArrayArrayWithDimensions>} the decoded arrays as a promise
|
|
130
|
+
* @returns {Promise<import("./geotiff.js").TypedArrayArrayWithDimensions>} the decoded arrays as a promise
|
|
131
131
|
*/
|
|
132
132
|
readRasters(options: ReadRastersOptions & {
|
|
133
133
|
interleave: false;
|
|
134
|
-
}): Promise<import("./geotiff").TypedArrayArrayWithDimensions>;
|
|
134
|
+
}): Promise<import("./geotiff.js").TypedArrayArrayWithDimensions>;
|
|
135
135
|
/**
|
|
136
136
|
* @overload
|
|
137
137
|
* @param {ReadRastersOptions & {interleave: boolean}} options optional parameters
|
|
@@ -143,25 +143,25 @@ declare class GeoTIFFImage {
|
|
|
143
143
|
/**
|
|
144
144
|
* @overload
|
|
145
145
|
* @param {ReadRastersOptions} [options={}] optional parameters
|
|
146
|
-
* @returns {Promise<import("./geotiff").TypedArrayArrayWithDimensions>} the decoded arrays as a promise
|
|
146
|
+
* @returns {Promise<import("./geotiff.js").TypedArrayArrayWithDimensions>} the decoded arrays as a promise
|
|
147
147
|
*/
|
|
148
|
-
readRasters(options?: ReadRastersOptions | undefined): Promise<import("./geotiff").TypedArrayArrayWithDimensions>;
|
|
148
|
+
readRasters(options?: ReadRastersOptions | undefined): Promise<import("./geotiff.js").TypedArrayArrayWithDimensions>;
|
|
149
149
|
/**
|
|
150
150
|
* @overload
|
|
151
151
|
* @param {ReadRGBOptions & {interleave: true}} options optional parameters
|
|
152
|
-
* @returns {Promise<import("./geotiff").TypedArrayWithDimensions>} the RGB array as a Promise
|
|
152
|
+
* @returns {Promise<import("./geotiff.js").TypedArrayWithDimensions>} the RGB array as a Promise
|
|
153
153
|
*/
|
|
154
154
|
readRGB(options: ReadRGBOptions & {
|
|
155
155
|
interleave: true;
|
|
156
|
-
}): Promise<import("./geotiff").TypedArrayWithDimensions>;
|
|
156
|
+
}): Promise<import("./geotiff.js").TypedArrayWithDimensions>;
|
|
157
157
|
/**
|
|
158
158
|
* @overload
|
|
159
159
|
* @param {ReadRGBOptions & {interleave: false}} options optional parameters
|
|
160
|
-
* @returns {Promise<import("./geotiff").TypedArrayArrayWithDimensions>} the RGB array as a Promise
|
|
160
|
+
* @returns {Promise<import("./geotiff.js").TypedArrayArrayWithDimensions>} the RGB array as a Promise
|
|
161
161
|
*/
|
|
162
162
|
readRGB(options: ReadRGBOptions & {
|
|
163
163
|
interleave: false;
|
|
164
|
-
}): Promise<import("./geotiff").TypedArrayArrayWithDimensions>;
|
|
164
|
+
}): Promise<import("./geotiff.js").TypedArrayArrayWithDimensions>;
|
|
165
165
|
/**
|
|
166
166
|
* @overload
|
|
167
167
|
* @param {ReadRGBOptions & {interleave: boolean}} options optional parameters
|
|
@@ -173,9 +173,9 @@ declare class GeoTIFFImage {
|
|
|
173
173
|
/**
|
|
174
174
|
* @overload
|
|
175
175
|
* @param {ReadRGBOptions} [options={}] optional parameters
|
|
176
|
-
* @returns {Promise<import("./geotiff").TypedArrayArrayWithDimensions>} the RGB array as a Promise
|
|
176
|
+
* @returns {Promise<import("./geotiff.js").TypedArrayArrayWithDimensions>} the RGB array as a Promise
|
|
177
177
|
*/
|
|
178
|
-
readRGB(options?: ReadRGBOptions | undefined): Promise<import("./geotiff").TypedArrayArrayWithDimensions>;
|
|
178
|
+
readRGB(options?: ReadRGBOptions | undefined): Promise<import("./geotiff.js").TypedArrayArrayWithDimensions>;
|
|
179
179
|
/**
|
|
180
180
|
* Returns an array of tiepoints.
|
|
181
181
|
* @returns {Promise<Array<{i: number, j: number, k: number, x: number, y: number, z: number}>>} the tiepoints
|
|
@@ -233,9 +233,9 @@ declare class GeoTIFFImage {
|
|
|
233
233
|
*/
|
|
234
234
|
getBoundingBox(tilegrid?: boolean): Array<number>;
|
|
235
235
|
}
|
|
236
|
-
import type { TypedArray } from "./geotiff";
|
|
237
|
-
import type { DecoderWorker } from "./geotiff";
|
|
238
|
-
import type { ReadRastersOptions } from "./geotiff";
|
|
239
|
-
import type { ReadRasterResult } from "./geotiff";
|
|
240
|
-
import type { ReadRGBOptions } from "./geotiff";
|
|
236
|
+
import type { TypedArray } from "./geotiff.js";
|
|
237
|
+
import type { DecoderWorker } from "./geotiff.js";
|
|
238
|
+
import type { ReadRastersOptions } from "./geotiff.js";
|
|
239
|
+
import type { ReadRasterResult } from "./geotiff.js";
|
|
240
|
+
import type { ReadRGBOptions } from "./geotiff.js";
|
|
241
241
|
//# sourceMappingURL=geotiffimage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"geotiffimage.d.ts","sourceRoot":"","sources":["../src/geotiffimage.js"],"names":[],"mappings":";AA+LA;;GAEG;AACH;IACE;;;;;;OAMG;IACH,2BALW,OAAO,
|
|
1
|
+
{"version":3,"file":"geotiffimage.d.ts","sourceRoot":"","sources":["../src/geotiffimage.js"],"names":[],"mappings":"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"}
|
|
@@ -8,10 +8,10 @@ import { photometricInterpretations, ExtraSamplesValues } from './globals.js';
|
|
|
8
8
|
import { fromWhiteIsZero, fromBlackIsZero, fromPalette, fromCMYK, fromYCbCr, fromCIELab } from './rgb.js';
|
|
9
9
|
import { getDecoder, getDecoderParameters } from './compression/index.js';
|
|
10
10
|
import { resample, resampleInterleaved } from './resample.js';
|
|
11
|
-
/** @import {DecoderWorker, TypedArray} from "./geotiff" */
|
|
12
|
-
/** @import {ReadRasterResult} from "./geotiff" */
|
|
13
|
-
/** @import {ReadRastersOptions} from "./geotiff" */
|
|
14
|
-
/** @import {ReadRGBOptions} from "./geotiff" */
|
|
11
|
+
/** @import {DecoderWorker, TypedArray} from "./geotiff.js" */
|
|
12
|
+
/** @import {ReadRasterResult} from "./geotiff.js" */
|
|
13
|
+
/** @import {ReadRastersOptions} from "./geotiff.js" */
|
|
14
|
+
/** @import {ReadRGBOptions} from "./geotiff.js" */
|
|
15
15
|
/**
|
|
16
16
|
* @param {Array<number>|TypedArray} array
|
|
17
17
|
* @param {number} start
|
|
@@ -190,7 +190,7 @@ function normalizeArray(inBuffer, format, planarConfiguration, samplesPerPixel,
|
|
|
190
190
|
class GeoTIFFImage {
|
|
191
191
|
/**
|
|
192
192
|
* @constructor
|
|
193
|
-
* @param {import("./imagefiledirectory").ImageFileDirectory} fileDirectory The parsed file directory
|
|
193
|
+
* @param {import("./imagefiledirectory.js").ImageFileDirectory} fileDirectory The parsed file directory
|
|
194
194
|
* @param {Boolean} littleEndian Whether the file is encoded in little or big endian
|
|
195
195
|
* @param {Boolean} cache Whether or not decoded tiles shall be cached
|
|
196
196
|
* @param {import('./source/basesource.js').BaseSource} source The datasource to read from
|
|
@@ -211,7 +211,7 @@ class GeoTIFFImage {
|
|
|
211
211
|
}
|
|
212
212
|
/**
|
|
213
213
|
* Returns the associated parsed file directory.
|
|
214
|
-
* @returns {import("./imagefiledirectory").ImageFileDirectory} the parsed file directory
|
|
214
|
+
* @returns {import("./imagefiledirectory.js").ImageFileDirectory} the parsed file directory
|
|
215
215
|
*/
|
|
216
216
|
getFileDirectory() {
|
|
217
217
|
return this.fileDirectory;
|
|
@@ -239,21 +239,21 @@ class GeoTIFFImage {
|
|
|
239
239
|
}
|
|
240
240
|
/**
|
|
241
241
|
* Returns the number of samples per pixel.
|
|
242
|
-
* @returns {
|
|
242
|
+
* @returns {number} the number of samples per pixel
|
|
243
243
|
*/
|
|
244
244
|
getSamplesPerPixel() {
|
|
245
|
-
return this.fileDirectory.
|
|
245
|
+
return this.fileDirectory.getValue('SamplesPerPixel') ?? 1;
|
|
246
246
|
}
|
|
247
247
|
/**
|
|
248
248
|
* Returns the width of each tile.
|
|
249
|
-
* @returns {
|
|
249
|
+
* @returns {number} the width of each tile
|
|
250
250
|
*/
|
|
251
251
|
getTileWidth() {
|
|
252
252
|
return this.isTiled ? (this.fileDirectory.getValue('TileWidth') || 0) : this.getWidth();
|
|
253
253
|
}
|
|
254
254
|
/**
|
|
255
255
|
* Returns the height of each tile.
|
|
256
|
-
* @returns {
|
|
256
|
+
* @returns {number} the height of each tile
|
|
257
257
|
*/
|
|
258
258
|
getTileHeight() {
|
|
259
259
|
if (this.isTiled) {
|
|
@@ -379,7 +379,7 @@ class GeoTIFFImage {
|
|
|
379
379
|
* @param {Number} x the strip or tile x-offset
|
|
380
380
|
* @param {Number} y the tile y-offset (0 for stripped images)
|
|
381
381
|
* @param {Number} sample the sample to get for separated samples
|
|
382
|
-
* @param {DecoderWorker|import("./geotiff").BaseDecoder} poolOrDecoder the decoder or decoder pool
|
|
382
|
+
* @param {DecoderWorker|import("./geotiff.js").BaseDecoder} poolOrDecoder the decoder or decoder pool
|
|
383
383
|
* @param {AbortSignal} [signal] An AbortSignal that may be signalled if the request is
|
|
384
384
|
* to be aborted
|
|
385
385
|
* @returns {Promise.<{x: number, y: number, sample: number, data: ArrayBufferLike}>} the decoded strip or tile
|
|
@@ -448,7 +448,7 @@ class GeoTIFFImage {
|
|
|
448
448
|
* @param {Array<number>} samples The selected samples (0-based indices)
|
|
449
449
|
* @param {TypedArray|TypedArray[]} valueArrays The array(s) to write into
|
|
450
450
|
* @param {boolean|undefined} interleave Whether or not to write in an interleaved manner
|
|
451
|
-
* @param {DecoderWorker|import("./geotiff").BaseDecoder} poolOrDecoder the decoder or decoder pool
|
|
451
|
+
* @param {DecoderWorker|import("./geotiff.js").BaseDecoder} poolOrDecoder the decoder or decoder pool
|
|
452
452
|
* @param {number} [width] the width of window to be read into
|
|
453
453
|
* @param {number} [height] the height of window to be read into
|
|
454
454
|
* @param {string} [resampleMethod] the resampling method to be used when interpolating
|
|
@@ -562,12 +562,12 @@ class GeoTIFFImage {
|
|
|
562
562
|
/**
|
|
563
563
|
* @overload
|
|
564
564
|
* @param {ReadRastersOptions & {interleave: true}} options optional parameters
|
|
565
|
-
* @returns {Promise<import("./geotiff").TypedArrayWithDimensions>} the decoded arrays as a promise
|
|
565
|
+
* @returns {Promise<import("./geotiff.js").TypedArrayWithDimensions>} the decoded arrays as a promise
|
|
566
566
|
*/
|
|
567
567
|
/**
|
|
568
568
|
* @overload
|
|
569
569
|
* @param {ReadRastersOptions & {interleave: false}} options optional parameters
|
|
570
|
-
* @returns {Promise<import("./geotiff").TypedArrayArrayWithDimensions>} the decoded arrays as a promise
|
|
570
|
+
* @returns {Promise<import("./geotiff.js").TypedArrayArrayWithDimensions>} the decoded arrays as a promise
|
|
571
571
|
*/
|
|
572
572
|
/**
|
|
573
573
|
* @overload
|
|
@@ -577,7 +577,7 @@ class GeoTIFFImage {
|
|
|
577
577
|
/**
|
|
578
578
|
* @overload
|
|
579
579
|
* @param {ReadRastersOptions} [options={}] optional parameters
|
|
580
|
-
* @returns {Promise<import("./geotiff").TypedArrayArrayWithDimensions>} the decoded arrays as a promise
|
|
580
|
+
* @returns {Promise<import("./geotiff.js").TypedArrayArrayWithDimensions>} the decoded arrays as a promise
|
|
581
581
|
*/
|
|
582
582
|
/**
|
|
583
583
|
* Reads raster data from the image. This function reads all selected samples
|
|
@@ -616,13 +616,15 @@ class GeoTIFFImage {
|
|
|
616
616
|
let valueArrays;
|
|
617
617
|
if (interleave) {
|
|
618
618
|
const { fileDirectory } = this;
|
|
619
|
-
const
|
|
620
|
-
|
|
619
|
+
const sampleFormat = fileDirectory.getValue('SampleFormat');
|
|
620
|
+
const format = sampleFormat
|
|
621
|
+
? Math.max.apply(null, Array.from(sampleFormat)) : 1;
|
|
621
622
|
if (format !== 1 && format !== 2 && format !== 3) {
|
|
622
623
|
throw new Error('Unsupported sample format for interleaved data. Must be 1, 2, or 3.');
|
|
623
624
|
}
|
|
624
|
-
const
|
|
625
|
-
|
|
625
|
+
const bitsPerSample_ = fileDirectory.getValue('BitsPerSample');
|
|
626
|
+
const bitsPerSample = bitsPerSample_
|
|
627
|
+
? Math.max.apply(null, Array.from(bitsPerSample_)) : 8;
|
|
626
628
|
valueArrays = arrayForType(format, bitsPerSample, numPixels * samples.length);
|
|
627
629
|
if (fillValue) {
|
|
628
630
|
if (Array.isArray(fillValue)) {
|
|
@@ -655,12 +657,12 @@ class GeoTIFFImage {
|
|
|
655
657
|
/**
|
|
656
658
|
* @overload
|
|
657
659
|
* @param {ReadRGBOptions & {interleave: true}} options optional parameters
|
|
658
|
-
* @returns {Promise<import("./geotiff").TypedArrayWithDimensions>} the RGB array as a Promise
|
|
660
|
+
* @returns {Promise<import("./geotiff.js").TypedArrayWithDimensions>} the RGB array as a Promise
|
|
659
661
|
*/
|
|
660
662
|
/**
|
|
661
663
|
* @overload
|
|
662
664
|
* @param {ReadRGBOptions & {interleave: false}} options optional parameters
|
|
663
|
-
* @returns {Promise<import("./geotiff").TypedArrayArrayWithDimensions>} the RGB array as a Promise
|
|
665
|
+
* @returns {Promise<import("./geotiff.js").TypedArrayArrayWithDimensions>} the RGB array as a Promise
|
|
664
666
|
*/
|
|
665
667
|
/**
|
|
666
668
|
* @overload
|
|
@@ -670,7 +672,7 @@ class GeoTIFFImage {
|
|
|
670
672
|
/**
|
|
671
673
|
* @overload
|
|
672
674
|
* @param {ReadRGBOptions} [options={}] optional parameters
|
|
673
|
-
* @returns {Promise<import("./geotiff").TypedArrayArrayWithDimensions>} the RGB array as a Promise
|
|
675
|
+
* @returns {Promise<import("./geotiff.js").TypedArrayArrayWithDimensions>} the RGB array as a Promise
|
|
674
676
|
*/
|
|
675
677
|
/**
|
|
676
678
|
* Reads raster data from the image as RGB.
|
|
@@ -779,7 +781,7 @@ class GeoTIFFImage {
|
|
|
779
781
|
}
|
|
780
782
|
data = [red, green, blue];
|
|
781
783
|
}
|
|
782
|
-
const dataWithDimensions = /** @type {import("./geotiff").ReadRasterResult} */ (data);
|
|
784
|
+
const dataWithDimensions = /** @type {import("./geotiff.js").ReadRasterResult} */ (data);
|
|
783
785
|
dataWithDimensions.width = raster.width;
|
|
784
786
|
dataWithDimensions.height = raster.height;
|
|
785
787
|
return dataWithDimensions;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"geotiffimage.js","sourceRoot":"","sources":["../src/geotiffimage.js"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"geotiffimage.js","sourceRoot":"","sources":["../src/geotiffimage.js"],"names":[],"mappings":"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"}
|
|
@@ -15,14 +15,10 @@ export class ImageFileDirectory {
|
|
|
15
15
|
deferredArrays: Map<string | number, DeferredArray>;
|
|
16
16
|
nextIFDByteOffset: number;
|
|
17
17
|
/**
|
|
18
|
-
* @
|
|
19
|
-
* @
|
|
20
|
-
* @returns {this is { getValue(t: T): NonNullable<import('./globals.js').TagValue<T>> }
|
|
21
|
-
* & import('./imagefiledirectory').ImageFileDirectory} whether the field exists (actualized or deferred)
|
|
18
|
+
* @param {import('./globals.js').TagName|number} tagIdentifier The field tag ID or name
|
|
19
|
+
* @returns {boolean} whether the field exists (actualized or deferred)
|
|
22
20
|
*/
|
|
23
|
-
hasTag
|
|
24
|
-
getValue(t: T): NonNullable<import("./globals.js").TagValue<T>>;
|
|
25
|
-
} & import("./imagefiledirectory").ImageFileDirectory;
|
|
21
|
+
hasTag(tagIdentifier: import("./globals.js").TagName | number): boolean;
|
|
26
22
|
/**
|
|
27
23
|
* Synchronously retrieves the value for a given tag. If it is deferred, an error is thrown.
|
|
28
24
|
* @template {import('./globals.js').EagerTagName | import('./globals.js').EagerTag} [T=any]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"imagefiledirectory.d.ts","sourceRoot":"","sources":["../src/imagefiledirectory.js"],"names":[],"mappings":"AAqRA;IACE;;;;;;;;OAQG;IACH,8BAPW,GAAG,CAAC,MAAM,GAAC,MAAM,EAAE,MAAM,GAAC,MAAM,GAAC,KAAK,CAAC,MAAM,GAAC,MAAM,CAAC,CAAC,kBAEtD,GAAG,CAAC,MAAM,GAAC,MAAM,WAAW,kBAC5B,GAAG,CAAC,MAAM,GAAC,MAAM,EAAE,aAAa,CAAC,qBAEjC,MAAM,EAQhB;IALC,8EAAwC;IACxC,+CAAoC;IACpC,2CAA4C;IAC5C,oDAAoC;IACpC,0BAA0C;IAG5C
|
|
1
|
+
{"version":3,"file":"imagefiledirectory.d.ts","sourceRoot":"","sources":["../src/imagefiledirectory.js"],"names":[],"mappings":"AAqRA;IACE;;;;;;;;OAQG;IACH,8BAPW,GAAG,CAAC,MAAM,GAAC,MAAM,EAAE,MAAM,GAAC,MAAM,GAAC,KAAK,CAAC,MAAM,GAAC,MAAM,CAAC,CAAC,kBAEtD,GAAG,CAAC,MAAM,GAAC,MAAM,WAAW,kBAC5B,GAAG,CAAC,MAAM,GAAC,MAAM,EAAE,aAAa,CAAC,qBAEjC,MAAM,EAQhB;IALC,8EAAwC;IACxC,+CAAoC;IACpC,2CAA4C;IAC5C,oDAAoC;IACpC,0BAA0C;IAG5C;;;OAGG;IACH,sBAHW,OAAO,cAAc,EAAE,OAAO,GAAC,MAAM,GACnC,OAAO,CAKnB;IAED;;;;;;;;OAQG;IACH,SAPsF,CAAC,SAAzE,OAAO,cAAc,EAAE,YAAY,GAAG,OAAO,cAAc,EAAE,QAAS,uBACzE,CAAC,GACC,CAAC,SAAS,OAAO,cAAc,EAAE,OAAO,GAAG,CAAC,OAAO,cAAc,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,GAAG,GAAG,CAqB7G;IAED;;;;;;OAMG;IACH,UAL+C,CAAC,SAAnC,OAAQ,cAAc,EAAE,OAAQ,uBAClC,CAAC,GAAC,MAAM,GACN,OAAO,CAAC,CAAC,SAAS,OAAO,cAAc,EAAE,OAAO,GAAG,CAAC,OAAO,cAAc,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,GAAG,GAAG,CAAC,CAoCtH;IAED;;;;;OAKG;IACH,gCAJW,MAAM,GAAC,MAAM,SACb,MAAM,GACJ,OAAO,CAAC,MAAM,GAAC,MAAM,GAAC,MAAM,GAAC,SAAS,CAAC,CAiBnD;IAED;;;;;;;OAOG;IACH,wBAJa,OAAO,CAAC,MAAM,CAAC,OAAO,cAAc,EAAE,UAAU,EAAE,GAAC,CAAC,CAAC,GAAC,IAAI,CAqCtE;IAED,oCASC;CACF;AAED;;GAEG;AACH;IACE;;;;;;;OAOG;IACH,oBAPW,OAAO,wBAAwB,EAAE,UAAU,gBAC3C,OAAO,WACP,OAAO,UACP,OAAO,EASjB;IAJC,oDAAoB;IACpB,sBAAgC;IAChC,iBAAsB;IACtB,eAAkB;IAGpB;;;;;OAKG;IACH,iBAJW,MAAM,WACN,MAAM,GACJ,OAAO,CAAC,SAAS,CAAC,CAiB9B;IAED;;;;;;;OAOG;IACH,6BAHW,MAAM,GACJ,OAAO,CAAC,kBAAkB,CAAC,CA+HvC;CACF;AA/cD;;;;GAIG;AACH;IACE;;;;;;;OAOG;IACH,oBANW,OAAO,wBAAwB,EAAE,UAAU,eAC3C,MAAM,gBACN,OAAO,aACP,OAAO,cAAc,EAAE,SAAS,UAChC,MAAM,EAahB;IAVC,oDAAoB;IACpB,oBAA8B;IAC9B,sBAAgC;IAChC,4CAA0B;IAC1B,eAAoB;IACpB,mDAAiD;IACjD,iBAA2C;IAC3C,oCAAuD;IACvD,kCAAmC;IACnC,gSAA4B;IAG9B;;;;OAIG;IACH,WAFa,OAAO,CAAC,OAAO,cAAc,EAAE,UAAU,GAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAkCpE;IAED;;;;;;;OAOG;IACH,WAJW,MAAM,GACJ,OAAO,CAAC,MAAM,GAAC,MAAM,CAAC,CAuClC;CACF;sBAnRqB,gBAAgB"}
|
|
@@ -243,10 +243,8 @@ export class ImageFileDirectory {
|
|
|
243
243
|
this.nextIFDByteOffset = nextIFDByteOffset;
|
|
244
244
|
}
|
|
245
245
|
/**
|
|
246
|
-
* @
|
|
247
|
-
* @
|
|
248
|
-
* @returns {this is { getValue(t: T): NonNullable<import('./globals.js').TagValue<T>> }
|
|
249
|
-
* & import('./imagefiledirectory').ImageFileDirectory} whether the field exists (actualized or deferred)
|
|
246
|
+
* @param {import('./globals.js').TagName|number} tagIdentifier The field tag ID or name
|
|
247
|
+
* @returns {boolean} whether the field exists (actualized or deferred)
|
|
250
248
|
*/
|
|
251
249
|
hasTag(tagIdentifier) {
|
|
252
250
|
const tag = resolveTag(tagIdentifier);
|