Skip to content

Commit 5b0f9ce

Browse files
committed
Website updates
1 parent ded18b7 commit 5b0f9ce

15 files changed

+54
-25
lines changed

dist/en/main/examples/common.js

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/en/main/examples/common.js.map

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/en/main/examples/offscreen-canvas.worker.worker.js

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/en/main/examples/offscreen-canvas.worker.worker.js.map

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/en/main/ol/dist/ol.d.ts

+2
Original file line numberDiff line numberDiff line change
@@ -941,6 +941,7 @@ declare namespace ol {
941941
export { _ol_transform$composeCssTransform as composeCssTransform };
942942
export { _ol_transform$create as create };
943943
export { _ol_transform$determinant as determinant };
944+
export { _ol_transform$equivalent as equivalent };
944945
export { _ol_transform$invert as invert };
945946
export { _ol_transform$makeInverse as makeInverse };
946947
export { _ol_transform$makeScale as makeScale };
@@ -1763,6 +1764,7 @@ import { compose as _ol_transform$compose } from '../../ol/transform.js';
17631764
import { composeCssTransform as _ol_transform$composeCssTransform } from '../../ol/transform.js';
17641765
import { create as _ol_transform$create } from '../../ol/transform.js';
17651766
import { determinant as _ol_transform$determinant } from '../../ol/transform.js';
1767+
import { equivalent as _ol_transform$equivalent } from '../../ol/transform.js';
17661768
import { invert as _ol_transform$invert } from '../../ol/transform.js';
17671769
import { makeInverse as _ol_transform$makeInverse } from '../../ol/transform.js';
17681770
import { makeScale as _ol_transform$makeScale } from '../../ol/transform.js';

dist/en/main/ol/dist/ol.d.ts.map

+1-1
Large diffs are not rendered by default.

dist/en/main/ol/dist/ol.js

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/en/main/ol/dist/ol.js.map

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/en/main/ol/renderer/canvas/Layer.d.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ declare class CanvasLayerRenderer<LayerType extends import("../../layer/Layer.js
7373
/**
7474
* Get a rendering container from an existing target, if compatible.
7575
* @param {HTMLElement} target Potential render target.
76-
* @param {string} transform CSS Transform.
76+
* @param {string} transform CSS transform matrix.
7777
* @param {string} [backgroundColor] Background color.
7878
*/
7979
useContainer(target: HTMLElement, transform: string, backgroundColor?: string): void;

dist/en/main/ol/renderer/canvas/Layer.d.ts.map

+1-1
Original file line numberDiff line numberDiff line change

dist/en/main/ol/renderer/canvas/Layer.js

+3-2
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ import {
1919
apply as applyTransform,
2020
compose as composeTransform,
2121
create as createTransform,
22+
equivalent,
2223
makeInverse,
2324
toString as toTransformString,
2425
} from '../../transform.js';
@@ -150,7 +151,7 @@ class CanvasLayerRenderer extends LayerRenderer {
150151
/**
151152
* Get a rendering container from an existing target, if compatible.
152153
* @param {HTMLElement} target Potential render target.
153-
* @param {string} transform CSS Transform.
154+
* @param {string} transform CSS transform matrix.
154155
* @param {string} [backgroundColor] Background color.
155156
*/
156157
useContainer(target, transform, backgroundColor) {
@@ -172,7 +173,7 @@ class CanvasLayerRenderer extends LayerRenderer {
172173
context = canvas.getContext('2d');
173174
}
174175
}
175-
if (context && context.canvas.style.transform === transform) {
176+
if (context && equivalent(context.canvas.style.transform, transform)) {
176177
// Container of the previous layer renderer can be used.
177178
this.container = target;
178179
this.context = context;

dist/en/main/ol/transform.d.ts

+8-1
Original file line numberDiff line numberDiff line change
@@ -127,12 +127,19 @@ export function makeInverse(target: Transform, source: Transform): Transform;
127127
*/
128128
export function determinant(mat: Transform): number;
129129
/**
130-
* A rounded string version of the transform. This can be used
130+
* A matrix string version of the transform. This can be used
131131
* for CSS transforms.
132132
* @param {!Transform} mat Matrix.
133133
* @return {string} The transform as a string.
134134
*/
135135
export function toString(mat: Transform): string;
136+
/**
137+
* Compare two matrices for equality.
138+
* @param {!string} cssTransform1 A CSS transform matrix string.
139+
* @param {!string} cssTransform2 A CSS transform matrix string.
140+
* @return {boolean} The two matrices are equal.
141+
*/
142+
export function equivalent(cssTransform1: string, cssTransform2: string): boolean;
136143
/**
137144
* An array representing an affine 2d transformation for use with
138145
* {@link module :ol/transform} functions. The array has 6 elements.

dist/en/main/ol/transform.d.ts.map

+1-1
Original file line numberDiff line numberDiff line change

dist/en/main/ol/transform.js

+30-11
Original file line numberDiff line numberDiff line change
@@ -267,23 +267,42 @@ export function determinant(mat) {
267267
/**
268268
* @type {Array}
269269
*/
270-
const matrixPrecision = [1e6, 1e6, 1e6, 1e6, 2, 2];
270+
const matrixPrecision = [1e5, 1e5, 1e5, 1e5, 2, 2];
271271

272272
/**
273-
* A rounded string version of the transform. This can be used
273+
* A matrix string version of the transform. This can be used
274274
* for CSS transforms.
275275
* @param {!Transform} mat Matrix.
276276
* @return {string} The transform as a string.
277277
*/
278278
export function toString(mat) {
279-
const transformString =
280-
'matrix(' +
281-
mat
282-
.map(
283-
(value, i) =>
284-
Math.round(value * matrixPrecision[i]) / matrixPrecision[i],
285-
)
286-
.join(', ') +
287-
')';
279+
const transformString = 'matrix(' + mat.join(', ') + ')';
288280
return transformString;
289281
}
282+
283+
/**
284+
* Create a transform from a CSS transform matrix string.
285+
* @param {string} cssTransform The CSS string to parse.
286+
* @return {!Transform} The transform.
287+
*/
288+
function fromString(cssTransform) {
289+
const values = cssTransform.substring(7, cssTransform.length - 1).split(',');
290+
return values.map(parseFloat);
291+
}
292+
293+
/**
294+
* Compare two matrices for equality.
295+
* @param {!string} cssTransform1 A CSS transform matrix string.
296+
* @param {!string} cssTransform2 A CSS transform matrix string.
297+
* @return {boolean} The two matrices are equal.
298+
*/
299+
export function equivalent(cssTransform1, cssTransform2) {
300+
const mat1 = fromString(cssTransform1);
301+
const mat2 = fromString(cssTransform2);
302+
for (let i = 0; i < 6; ++i) {
303+
if (Math.round((mat1[i] - mat2[i]) * matrixPrecision[i]) !== 0) {
304+
return false;
305+
}
306+
}
307+
return true;
308+
}

dist/main.js

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)