ol 6.9.1-dev.1639406634449 → 6.9.1-dev.1639419836640
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/math.d.ts +31 -0
- package/math.d.ts.map +1 -1
- package/math.js +40 -0
- package/math.js.map +1 -1
- package/package.json +1 -1
- package/source/ImageWMS.d.ts.map +1 -1
- package/source/ImageWMS.js +14 -8
- package/source/ImageWMS.js.map +1 -1
- package/src/math.js +44 -0
- package/src/source/ImageWMS.js +25 -10
- package/util.js +1 -1
package/math.d.ts
CHANGED
|
@@ -70,6 +70,37 @@ export function modulo(a: number, b: number): number;
|
|
|
70
70
|
* @return {number} Interpolated value.
|
|
71
71
|
*/
|
|
72
72
|
export function lerp(a: number, b: number, x: number): number;
|
|
73
|
+
/**
|
|
74
|
+
* Returns a number with a limited number of decimal digits.
|
|
75
|
+
* @param {number} n The input number.
|
|
76
|
+
* @param {number} decimals The maximum number of decimal digits.
|
|
77
|
+
* @return {number} The input number with a limited number of decimal digits.
|
|
78
|
+
*/
|
|
79
|
+
export function toFixed(n: number, decimals: number): number;
|
|
80
|
+
/**
|
|
81
|
+
* Rounds a number to the nearest integer value considering only the given number
|
|
82
|
+
* of decimal digits (with rounding on the final digit).
|
|
83
|
+
* @param {number} n The input number.
|
|
84
|
+
* @param {number} decimals The maximum number of decimal digits.
|
|
85
|
+
* @return {number} The nearest integer.
|
|
86
|
+
*/
|
|
87
|
+
export function round(n: number, decimals: number): number;
|
|
88
|
+
/**
|
|
89
|
+
* Rounds a number to the next smaller integer considering only the given number
|
|
90
|
+
* of decimal digits (with rounding on the final digit).
|
|
91
|
+
* @param {number} n The input number.
|
|
92
|
+
* @param {number} decimals The maximum number of decimal digits.
|
|
93
|
+
* @return {number} The next smaller integer.
|
|
94
|
+
*/
|
|
95
|
+
export function floor(n: number, decimals: number): number;
|
|
96
|
+
/**
|
|
97
|
+
* Rounds a number to the next bigger integer considering only the given number
|
|
98
|
+
* of decimal digits (with rounding on the final digit).
|
|
99
|
+
* @param {number} n The input number.
|
|
100
|
+
* @param {number} decimals The maximum number of decimal digits.
|
|
101
|
+
* @return {number} The next bigger integer.
|
|
102
|
+
*/
|
|
103
|
+
export function ceil(n: number, decimals: number): number;
|
|
73
104
|
/**
|
|
74
105
|
* Return the hyperbolic cosine of a given number. The method will use the
|
|
75
106
|
* native `Math.cosh` function if it is available, otherwise the hyperbolic
|
package/math.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"math.d.ts","sourceRoot":"","sources":["src/math.js"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;;;;GAOG;AACH,uEAEC;AAqDD;;;;;;;;;;GAUG;AACH,qHAcC;AAED;;;;;;;GAOG;AACH,wFAIC;AAED;;;;;;GAMG;AACH,6DA8CC;AAED;;;;;GAKG;AACH,0DAEC;AAED;;;;;GAKG;AACH,0DAEC;AAED;;;;;;GAMG;AACH,qDAGC;AAED;;;;;;;GAOG;AACH,8DAEC;
|
|
1
|
+
{"version":3,"file":"math.d.ts","sourceRoot":"","sources":["src/math.js"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;;;;GAOG;AACH,uEAEC;AAqDD;;;;;;;;;;GAUG;AACH,qHAcC;AAED;;;;;;;GAOG;AACH,wFAIC;AAED;;;;;;GAMG;AACH,6DA8CC;AAED;;;;;GAKG;AACH,0DAEC;AAED;;;;;GAKG;AACH,0DAEC;AAED;;;;;;GAMG;AACH,qDAGC;AAED;;;;;;;GAOG;AACH,8DAEC;AAED;;;;;GAKG;AACH,6DAGC;AAED;;;;;;GAMG;AACH,2DAEC;AAED;;;;;;GAMG;AACH,2DAEC;AAED;;;;;;GAMG;AACH,0DAEC;AAzOD;;;;;;;;GAQG;AACH,yCAeK;AAEL;;;;;;;;GAQG;AACH,yCAcK"}
|
package/math.js
CHANGED
|
@@ -193,4 +193,44 @@ export function modulo(a, b) {
|
|
|
193
193
|
export function lerp(a, b, x) {
|
|
194
194
|
return a + x * (b - a);
|
|
195
195
|
}
|
|
196
|
+
/**
|
|
197
|
+
* Returns a number with a limited number of decimal digits.
|
|
198
|
+
* @param {number} n The input number.
|
|
199
|
+
* @param {number} decimals The maximum number of decimal digits.
|
|
200
|
+
* @return {number} The input number with a limited number of decimal digits.
|
|
201
|
+
*/
|
|
202
|
+
export function toFixed(n, decimals) {
|
|
203
|
+
var factor = Math.pow(10, decimals);
|
|
204
|
+
return Math.round(n * factor) / factor;
|
|
205
|
+
}
|
|
206
|
+
/**
|
|
207
|
+
* Rounds a number to the nearest integer value considering only the given number
|
|
208
|
+
* of decimal digits (with rounding on the final digit).
|
|
209
|
+
* @param {number} n The input number.
|
|
210
|
+
* @param {number} decimals The maximum number of decimal digits.
|
|
211
|
+
* @return {number} The nearest integer.
|
|
212
|
+
*/
|
|
213
|
+
export function round(n, decimals) {
|
|
214
|
+
return Math.round(toFixed(n, decimals));
|
|
215
|
+
}
|
|
216
|
+
/**
|
|
217
|
+
* Rounds a number to the next smaller integer considering only the given number
|
|
218
|
+
* of decimal digits (with rounding on the final digit).
|
|
219
|
+
* @param {number} n The input number.
|
|
220
|
+
* @param {number} decimals The maximum number of decimal digits.
|
|
221
|
+
* @return {number} The next smaller integer.
|
|
222
|
+
*/
|
|
223
|
+
export function floor(n, decimals) {
|
|
224
|
+
return Math.floor(toFixed(n, decimals));
|
|
225
|
+
}
|
|
226
|
+
/**
|
|
227
|
+
* Rounds a number to the next bigger integer considering only the given number
|
|
228
|
+
* of decimal digits (with rounding on the final digit).
|
|
229
|
+
* @param {number} n The input number.
|
|
230
|
+
* @param {number} decimals The maximum number of decimal digits.
|
|
231
|
+
* @return {number} The next bigger integer.
|
|
232
|
+
*/
|
|
233
|
+
export function ceil(n, decimals) {
|
|
234
|
+
return Math.ceil(toFixed(n, decimals));
|
|
235
|
+
}
|
|
196
236
|
//# sourceMappingURL=math.js.map
|
package/math.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"math.js","sourceRoot":"","sources":["src/math.js"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"math.js","sourceRoot":"","sources":["src/math.js"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/source/ImageWMS.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ImageWMS.d.ts","sourceRoot":"","sources":["../src/source/ImageWMS.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"ImageWMS.d.ts","sourceRoot":"","sources":["../src/source/ImageWMS.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqCA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH;;;;;;GAMG;AACH;IACE;;OAEG;IACH,+CAmFC;IAzEC;;;OAGG;IACH,qBACgE;IAEhE;;;OAGG;IACH,aAAuB;IAEvB;;;OAGG;IACH,2BAG8B;IAE9B;;;OAGG;IACH,gBAAmC;IAEnC;;;OAGG;IACH,aAAgB;IAGhB;;;OAGG;IACH,oBAGG;IAEH;;;OAGG;IACH,eAAgE;IAEhE;;;OAGG;IACH,eAAkB;IAElB;;;OAGG;IACH,mBAAwB;IAExB;;;OAGG;IACH,0BAA0B;IAE1B;;;OAGG;IACH,eAA+D;IAGjE;;;;;;;;;;;;;OAaG;IACH,uKA8CC;IAED;;;;;;;;;;;;;OAaG;IACH,gFAgCC;IAED;;;;;OAKG;IACH,iBAEC;IAED;;;;;;OAMG;IACH,8IAuFC;IAED;;;;OAIG;IACH,mEAEC;IAED;;;;;;;;OAQG;IACH,uBA6CC;IAED;;;;OAIG;IACH,6BAEC;IAED;;;;OAIG;IACH,0FAIC;IAED;;;;OAIG;IACH,sCAMC;IAED;;;;OAIG;IACH,gCAKC;IAED;;OAEG;IACH,mBAGC;CACF"}
|
package/source/ImageWMS.js
CHANGED
|
@@ -25,9 +25,15 @@ import { appendParams } from '../uri.js';
|
|
|
25
25
|
import { assert } from '../asserts.js';
|
|
26
26
|
import { assign } from '../obj.js';
|
|
27
27
|
import { calculateSourceResolution } from '../reproj.js';
|
|
28
|
+
import { ceil, floor, round } from '../math.js';
|
|
28
29
|
import { compareVersions } from '../string.js';
|
|
29
30
|
import { containsExtent, getCenter, getForViewAndSize, getHeight, getWidth, } from '../extent.js';
|
|
30
31
|
import { get as getProjection, transform } from '../proj.js';
|
|
32
|
+
/**
|
|
33
|
+
* Number of decimal digits to consider in integer values when rounding.
|
|
34
|
+
* @type {number}
|
|
35
|
+
*/
|
|
36
|
+
var DECIMALS = 4;
|
|
31
37
|
/**
|
|
32
38
|
* @const
|
|
33
39
|
* @type {import("../size.js").Size}
|
|
@@ -175,8 +181,8 @@ var ImageWMS = /** @class */ (function (_super) {
|
|
|
175
181
|
'QUERY_LAYERS': this.params_['LAYERS'],
|
|
176
182
|
};
|
|
177
183
|
assign(baseParams, this.params_, params);
|
|
178
|
-
var x =
|
|
179
|
-
var y =
|
|
184
|
+
var x = floor((coordinate[0] - extent[0]) / resolution, DECIMALS);
|
|
185
|
+
var y = floor((extent[3] - coordinate[1]) / resolution, DECIMALS);
|
|
180
186
|
baseParams[this.v13_ ? 'I' : 'X'] = x;
|
|
181
187
|
baseParams[this.v13_ ? 'J' : 'Y'] = y;
|
|
182
188
|
return this.getRequestUrl_(extent, GETFEATUREINFO_IMAGE_SIZE, 1, sourceProjectionObj || projectionObj, baseParams);
|
|
@@ -249,14 +255,14 @@ var ImageWMS = /** @class */ (function (_super) {
|
|
|
249
255
|
}
|
|
250
256
|
var imageResolution = resolution / pixelRatio;
|
|
251
257
|
var center = getCenter(extent);
|
|
252
|
-
var viewWidth =
|
|
253
|
-
var viewHeight =
|
|
258
|
+
var viewWidth = ceil(getWidth(extent) / imageResolution, DECIMALS);
|
|
259
|
+
var viewHeight = ceil(getHeight(extent) / imageResolution, DECIMALS);
|
|
254
260
|
var viewExtent = getForViewAndSize(center, imageResolution, 0, [
|
|
255
261
|
viewWidth,
|
|
256
262
|
viewHeight,
|
|
257
263
|
]);
|
|
258
|
-
var requestWidth =
|
|
259
|
-
var requestHeight =
|
|
264
|
+
var requestWidth = ceil((this.ratio_ * getWidth(extent)) / imageResolution, DECIMALS);
|
|
265
|
+
var requestHeight = ceil((this.ratio_ * getHeight(extent)) / imageResolution, DECIMALS);
|
|
260
266
|
var requestExtent = getForViewAndSize(center, imageResolution, 0, [
|
|
261
267
|
requestWidth,
|
|
262
268
|
requestHeight,
|
|
@@ -277,8 +283,8 @@ var ImageWMS = /** @class */ (function (_super) {
|
|
|
277
283
|
'TRANSPARENT': true,
|
|
278
284
|
};
|
|
279
285
|
assign(params, this.params_);
|
|
280
|
-
this.imageSize_[0] =
|
|
281
|
-
this.imageSize_[1] =
|
|
286
|
+
this.imageSize_[0] = round(getWidth(requestExtent) / imageResolution, DECIMALS);
|
|
287
|
+
this.imageSize_[1] = round(getHeight(requestExtent) / imageResolution, DECIMALS);
|
|
282
288
|
var url = this.getRequestUrl_(requestExtent, this.imageSize_, pixelRatio, projection, params);
|
|
283
289
|
this.image_ = new ImageWrapper(requestExtent, resolution, pixelRatio, url, this.crossOrigin_, this.imageLoadFunction_);
|
|
284
290
|
this.renderedRevision_ = this.getRevision();
|
package/source/ImageWMS.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ImageWMS.js","sourceRoot":"","sources":["../src/source/ImageWMS.js"],"names":[],"mappings":"AAAA;;GAEG;;;;;;;;;;;;;;;;AAEH,OAAO,EAAC,mBAAmB,EAAC,MAAM,aAAa,CAAC;AAEhD,OAAO,SAAS,MAAM,wBAAwB,CAAC;AAC/C,OAAO,WAAW,EAAE,EAAC,wBAAwB,EAAC,MAAM,YAAY,CAAC;AACjE,OAAO,YAAY,MAAM,aAAa,CAAC;AACvC,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAC,YAAY,EAAC,MAAM,WAAW,CAAC;AACvC,OAAO,EAAC,MAAM,EAAC,MAAM,eAAe,CAAC;AACrC,OAAO,EAAC,MAAM,EAAC,MAAM,WAAW,CAAC;AACjC,OAAO,EAAC,yBAAyB,EAAC,MAAM,cAAc,CAAC;AACvD,OAAO,EAAC,eAAe,EAAC,MAAM,cAAc,CAAC;AAC7C,OAAO,EACL,cAAc,EACd,SAAS,EACT,iBAAiB,EACjB,SAAS,EACT,QAAQ,GACT,MAAM,cAAc,CAAC;AACtB,OAAO,EAAC,GAAG,IAAI,aAAa,EAAE,SAAS,EAAC,MAAM,YAAY,CAAC;AAE3D;;;GAGG;AACH,IAAM,yBAAyB,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;AAE7C;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH;;;;;;GAMG;AACH;IAAuB,4BAAW;IAChC;;OAEG;IACH,kBAAY,WAAW;QAAvB,iBAmFC;QAlFC,IAAM,OAAO,GAAG,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;QAE/C,QAAA,kBAAM;YACJ,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,cAAc,EAAE,OAAO,CAAC,cAAc;YACtC,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,WAAW,EAAE,OAAO,CAAC,WAAW;SACjC,CAAC,SAAC;QAEH;;;WAGG;QACH,KAAI,CAAC,YAAY;YACf,OAAO,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC;QAEjE;;;WAGG;QACH,KAAI,CAAC,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC;QAExB;;;WAGG;QACH,KAAI,CAAC,kBAAkB;YACrB,OAAO,CAAC,iBAAiB,KAAK,SAAS;gBACrC,CAAC,CAAC,OAAO,CAAC,iBAAiB;gBAC3B,CAAC,CAAC,wBAAwB,CAAC;QAE/B;;;WAGG;QACH,KAAI,CAAC,OAAO,GAAG,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC;QAEpC;;;WAGG;QACH,KAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,KAAI,CAAC,UAAU,EAAE,CAAC;QAElB;;;WAGG;QACH,KAAI,CAAC,WAAW;YACd,6DAA6D,CAAC,CAC5D,OAAO,CAAC,UAAU,CACnB,CAAC;QAEJ;;;WAGG;QACH,KAAI,CAAC,MAAM,GAAG,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;QAEjE;;;WAGG;QACH,KAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QAEnB;;;WAGG;QACH,KAAI,CAAC,UAAU,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAEzB;;;WAGG;QACH,KAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC;QAE3B;;;WAGG;QACH,KAAI,CAAC,MAAM,GAAG,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC;;IAClE,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,oCAAiB,GAAjB,UAAkB,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM;QAC1D,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE;YAC3B,OAAO,SAAS,CAAC;SAClB;QACD,IAAM,aAAa,GAAG,aAAa,CAAC,UAAU,CAAC,CAAC;QAChD,IAAM,mBAAmB,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QAEjD,IAAI,mBAAmB,IAAI,mBAAmB,KAAK,aAAa,EAAE;YAChE,UAAU,GAAG,yBAAyB,CACpC,mBAAmB,EACnB,aAAa,EACb,UAAU,EACV,UAAU,CACX,CAAC;YACF,UAAU,GAAG,SAAS,CAAC,UAAU,EAAE,aAAa,EAAE,mBAAmB,CAAC,CAAC;SACxE;QAED,IAAM,MAAM,GAAG,iBAAiB,CAC9B,UAAU,EACV,UAAU,EACV,CAAC,EACD,yBAAyB,CAC1B,CAAC;QAEF,IAAM,UAAU,GAAG;YACjB,SAAS,EAAE,KAAK;YAChB,SAAS,EAAE,mBAAmB;YAC9B,SAAS,EAAE,gBAAgB;YAC3B,QAAQ,EAAE,WAAW;YACrB,aAAa,EAAE,IAAI;YACnB,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;SACvC,CAAC;QACF,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAEzC,IAAM,CAAC,GAAG,
|
|
1
|
+
{"version":3,"file":"ImageWMS.js","sourceRoot":"","sources":["../src/source/ImageWMS.js"],"names":[],"mappings":"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"}
|
package/src/math.js
CHANGED
|
@@ -204,3 +204,47 @@ export function modulo(a, b) {
|
|
|
204
204
|
export function lerp(a, b, x) {
|
|
205
205
|
return a + x * (b - a);
|
|
206
206
|
}
|
|
207
|
+
|
|
208
|
+
/**
|
|
209
|
+
* Returns a number with a limited number of decimal digits.
|
|
210
|
+
* @param {number} n The input number.
|
|
211
|
+
* @param {number} decimals The maximum number of decimal digits.
|
|
212
|
+
* @return {number} The input number with a limited number of decimal digits.
|
|
213
|
+
*/
|
|
214
|
+
export function toFixed(n, decimals) {
|
|
215
|
+
const factor = Math.pow(10, decimals);
|
|
216
|
+
return Math.round(n * factor) / factor;
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
/**
|
|
220
|
+
* Rounds a number to the nearest integer value considering only the given number
|
|
221
|
+
* of decimal digits (with rounding on the final digit).
|
|
222
|
+
* @param {number} n The input number.
|
|
223
|
+
* @param {number} decimals The maximum number of decimal digits.
|
|
224
|
+
* @return {number} The nearest integer.
|
|
225
|
+
*/
|
|
226
|
+
export function round(n, decimals) {
|
|
227
|
+
return Math.round(toFixed(n, decimals));
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
/**
|
|
231
|
+
* Rounds a number to the next smaller integer considering only the given number
|
|
232
|
+
* of decimal digits (with rounding on the final digit).
|
|
233
|
+
* @param {number} n The input number.
|
|
234
|
+
* @param {number} decimals The maximum number of decimal digits.
|
|
235
|
+
* @return {number} The next smaller integer.
|
|
236
|
+
*/
|
|
237
|
+
export function floor(n, decimals) {
|
|
238
|
+
return Math.floor(toFixed(n, decimals));
|
|
239
|
+
}
|
|
240
|
+
|
|
241
|
+
/**
|
|
242
|
+
* Rounds a number to the next bigger integer considering only the given number
|
|
243
|
+
* of decimal digits (with rounding on the final digit).
|
|
244
|
+
* @param {number} n The input number.
|
|
245
|
+
* @param {number} decimals The maximum number of decimal digits.
|
|
246
|
+
* @return {number} The next bigger integer.
|
|
247
|
+
*/
|
|
248
|
+
export function ceil(n, decimals) {
|
|
249
|
+
return Math.ceil(toFixed(n, decimals));
|
|
250
|
+
}
|
package/src/source/ImageWMS.js
CHANGED
|
@@ -12,6 +12,7 @@ import {appendParams} from '../uri.js';
|
|
|
12
12
|
import {assert} from '../asserts.js';
|
|
13
13
|
import {assign} from '../obj.js';
|
|
14
14
|
import {calculateSourceResolution} from '../reproj.js';
|
|
15
|
+
import {ceil, floor, round} from '../math.js';
|
|
15
16
|
import {compareVersions} from '../string.js';
|
|
16
17
|
import {
|
|
17
18
|
containsExtent,
|
|
@@ -22,6 +23,12 @@ import {
|
|
|
22
23
|
} from '../extent.js';
|
|
23
24
|
import {get as getProjection, transform} from '../proj.js';
|
|
24
25
|
|
|
26
|
+
/**
|
|
27
|
+
* Number of decimal digits to consider in integer values when rounding.
|
|
28
|
+
* @type {number}
|
|
29
|
+
*/
|
|
30
|
+
const DECIMALS = 4;
|
|
31
|
+
|
|
25
32
|
/**
|
|
26
33
|
* @const
|
|
27
34
|
* @type {import("../size.js").Size}
|
|
@@ -197,8 +204,8 @@ class ImageWMS extends ImageSource {
|
|
|
197
204
|
};
|
|
198
205
|
assign(baseParams, this.params_, params);
|
|
199
206
|
|
|
200
|
-
const x =
|
|
201
|
-
const y =
|
|
207
|
+
const x = floor((coordinate[0] - extent[0]) / resolution, DECIMALS);
|
|
208
|
+
const y = floor((extent[3] - coordinate[1]) / resolution, DECIMALS);
|
|
202
209
|
baseParams[this.v13_ ? 'I' : 'X'] = x;
|
|
203
210
|
baseParams[this.v13_ ? 'J' : 'Y'] = y;
|
|
204
211
|
|
|
@@ -290,17 +297,19 @@ class ImageWMS extends ImageSource {
|
|
|
290
297
|
const imageResolution = resolution / pixelRatio;
|
|
291
298
|
|
|
292
299
|
const center = getCenter(extent);
|
|
293
|
-
const viewWidth =
|
|
294
|
-
const viewHeight =
|
|
300
|
+
const viewWidth = ceil(getWidth(extent) / imageResolution, DECIMALS);
|
|
301
|
+
const viewHeight = ceil(getHeight(extent) / imageResolution, DECIMALS);
|
|
295
302
|
const viewExtent = getForViewAndSize(center, imageResolution, 0, [
|
|
296
303
|
viewWidth,
|
|
297
304
|
viewHeight,
|
|
298
305
|
]);
|
|
299
|
-
const requestWidth =
|
|
300
|
-
(this.ratio_ * getWidth(extent)) / imageResolution
|
|
306
|
+
const requestWidth = ceil(
|
|
307
|
+
(this.ratio_ * getWidth(extent)) / imageResolution,
|
|
308
|
+
DECIMALS
|
|
301
309
|
);
|
|
302
|
-
const requestHeight =
|
|
303
|
-
(this.ratio_ * getHeight(extent)) / imageResolution
|
|
310
|
+
const requestHeight = ceil(
|
|
311
|
+
(this.ratio_ * getHeight(extent)) / imageResolution,
|
|
312
|
+
DECIMALS
|
|
304
313
|
);
|
|
305
314
|
const requestExtent = getForViewAndSize(center, imageResolution, 0, [
|
|
306
315
|
requestWidth,
|
|
@@ -327,8 +336,14 @@ class ImageWMS extends ImageSource {
|
|
|
327
336
|
};
|
|
328
337
|
assign(params, this.params_);
|
|
329
338
|
|
|
330
|
-
this.imageSize_[0] =
|
|
331
|
-
|
|
339
|
+
this.imageSize_[0] = round(
|
|
340
|
+
getWidth(requestExtent) / imageResolution,
|
|
341
|
+
DECIMALS
|
|
342
|
+
);
|
|
343
|
+
this.imageSize_[1] = round(
|
|
344
|
+
getHeight(requestExtent) / imageResolution,
|
|
345
|
+
DECIMALS
|
|
346
|
+
);
|
|
332
347
|
|
|
333
348
|
const url = this.getRequestUrl_(
|
|
334
349
|
requestExtent,
|
package/util.js
CHANGED