This updates ESLint and our shared eslint-config-openlayers to use Prettier. Most formatting changes were automatically applied with this:
npm run lint -- --fix
A few manual changes were required:
* In `examples/offscreen-canvas.js`, the `//eslint-disable-line` comment needed to be moved to the appropriate line to disable the error about the `'worker-loader!./offscreen-canvas.worker.js'` import.
* In `examples/webpack/exapmle-builder.js`, spaces could not be added after a couple `function`s for some reason. While editing this, I reworked `ExampleBuilder` to be a class.
* In `src/ol/format/WMSGetFeatureInfo.js`, the `// @ts-ignore` comment needed to be moved down one line so it applied to the `parsersNS` argument.
86 lines
1.9 KiB
JavaScript
86 lines
1.9 KiB
JavaScript
import MultiPolygon from '../../../../../src/ol/geom/MultiPolygon.js';
|
|
import {linearRingss as linearRingssCenter} from '../../../../../src/ol/geom/flat/center.js';
|
|
|
|
describe('ol.geom.flat.center', function () {
|
|
describe('ol.geom.flat.center.linearRingss', function () {
|
|
it('calculates the center of a square', function () {
|
|
const squareMultiPoly = new MultiPolygon([
|
|
[
|
|
[
|
|
[0, 0],
|
|
[0, 1],
|
|
[1, 1],
|
|
[1, 0],
|
|
[0, 0],
|
|
],
|
|
],
|
|
]);
|
|
const got = linearRingssCenter(
|
|
squareMultiPoly.flatCoordinates,
|
|
0,
|
|
squareMultiPoly.endss_,
|
|
2
|
|
);
|
|
expect(got).to.eql([0.5, 0.5]);
|
|
});
|
|
|
|
it('calculates the centers of two squares', function () {
|
|
const squareMultiPoly = new MultiPolygon([
|
|
[
|
|
[
|
|
[0, 0],
|
|
[0, 1],
|
|
[1, 1],
|
|
[1, 0],
|
|
[0, 0],
|
|
],
|
|
],
|
|
[
|
|
[
|
|
[3, 0],
|
|
[3, 1],
|
|
[4, 1],
|
|
[4, 0],
|
|
[3, 0],
|
|
],
|
|
],
|
|
]);
|
|
const got = linearRingssCenter(
|
|
squareMultiPoly.flatCoordinates,
|
|
0,
|
|
squareMultiPoly.endss_,
|
|
2
|
|
);
|
|
expect(got).to.eql([0.5, 0.5, 3.5, 0.5]);
|
|
});
|
|
|
|
it('does not care about holes', function () {
|
|
const polywithHole = new MultiPolygon([
|
|
[
|
|
[
|
|
[0, 0],
|
|
[0, 5],
|
|
[5, 5],
|
|
[5, 0],
|
|
[0, 0],
|
|
],
|
|
[
|
|
[1, 1],
|
|
[1, 4],
|
|
[4, 4],
|
|
[4, 1],
|
|
[1, 1],
|
|
],
|
|
],
|
|
]);
|
|
const got = linearRingssCenter(
|
|
polywithHole.flatCoordinates,
|
|
0,
|
|
polywithHole.endss_,
|
|
2
|
|
);
|
|
expect(got).to.eql([2.5, 2.5]);
|
|
});
|
|
});
|
|
});
|