Use blocked scoped variables

In addition to using const and let, this also upgrades our linter config and removes lint (mostly whitespace).
This commit is contained in:
Tim Schaub
2018-01-11 23:32:36 -07:00
parent 0bf2b04dee
commit ad62739a6e
684 changed files with 18120 additions and 18184 deletions
+4 -4
View File
@@ -5,12 +5,12 @@ describe('ol.geom.flat.area', function() {
describe('ol.geom.flat.area.linearRing', function() {
it('calculates the area of a triangle', function() {
var area = _ol_geom_flat_area_.linearRing([0, 0, 0.5, 1, 1, 0], 0, 6, 2);
const area = _ol_geom_flat_area_.linearRing([0, 0, 0.5, 1, 1, 0], 0, 6, 2);
expect(area).to.be(0.5);
});
it('calculates the area of a unit square', function() {
var area =
const area =
_ol_geom_flat_area_.linearRing([0, 0, 0, 1, 1, 1, 1, 0], 0, 8, 2);
expect(area).to.be(1);
});
@@ -20,8 +20,8 @@ describe('ol.geom.flat.area', function() {
describe('ol.geom.flat.area.linearRings', function() {
it('calculates the area with holes', function() {
var area = _ol_geom_flat_area_.linearRings(
[0, 0, 0, 3, 3, 3, 3, 0, 1, 1, 2, 1, 2, 2, 1, 2], 0, [8, 16], 2);
const area = _ol_geom_flat_area_.linearRings(
[0, 0, 0, 3, 3, 3, 3, 0, 1, 1, 2, 1, 2, 2, 1, 2], 0, [8, 16], 2);
expect(area).to.be(8);
});
+18 -18
View File
@@ -7,20 +7,20 @@ describe('ol.geom.flat.center', function() {
describe('ol.geom.flat.center.linearRingss', function() {
it('calculates the center of a square', function() {
var squareMultiPoly = new MultiPolygon([[
const squareMultiPoly = new MultiPolygon([[
[[0, 0], [0, 1], [1, 1], [1, 0], [0, 0]]
]]);
var got = _ol_geom_flat_center_.linearRingss(
squareMultiPoly.flatCoordinates,
0,
squareMultiPoly.endss_,
2
const got = _ol_geom_flat_center_.linearRingss(
squareMultiPoly.flatCoordinates,
0,
squareMultiPoly.endss_,
2
);
expect(got).to.eql([0.5, 0.5]);
});
it('calculates the centers of two squares', function() {
var squareMultiPoly = new MultiPolygon([
const squareMultiPoly = new MultiPolygon([
[
[[0, 0], [0, 1], [1, 1], [1, 0], [0, 0]]
],
@@ -28,25 +28,25 @@ describe('ol.geom.flat.center', function() {
[[3, 0], [3, 1], [4, 1], [4, 0], [3, 0]]
]
]);
var got = _ol_geom_flat_center_.linearRingss(
squareMultiPoly.flatCoordinates,
0,
squareMultiPoly.endss_,
2
const got = _ol_geom_flat_center_.linearRingss(
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() {
var polywithHole = new MultiPolygon([[
const polywithHole = new MultiPolygon([[
[[0, 0], [0, 5], [5, 5], [5, 0], [0, 0]],
[[1, 1], [1, 4], [4, 4], [4, 1], [1, 1]]
]]);
var got = _ol_geom_flat_center_.linearRingss(
polywithHole.flatCoordinates,
0,
polywithHole.endss_,
2
const got = _ol_geom_flat_center_.linearRingss(
polywithHole.flatCoordinates,
0,
polywithHole.endss_,
2
);
expect(got).to.eql([2.5, 2.5]);
});
+36 -36
View File
@@ -5,13 +5,13 @@ describe('ol.geom.flat.closest', function() {
describe('with simple data', function() {
var flatCoordinates = [0, 0, 1, 0, 3, 0, 5, 0, 6, 0, 8, 0, 11, 0];
const flatCoordinates = [0, 0, 1, 0, 3, 0, 5, 0, 6, 0, 8, 0, 11, 0];
describe('ol.geom.flat.closest.getMaxSquaredDelta', function() {
it('returns the expected value in simple cases', function() {
expect(_ol_geom_flat_closest_.getMaxSquaredDelta(
flatCoordinates, 0, flatCoordinates.length, 2, 0)).to.be(9);
flatCoordinates, 0, flatCoordinates.length, 2, 0)).to.be(9);
});
});
@@ -19,25 +19,25 @@ describe('ol.geom.flat.closest', function() {
describe('ol.geom.flat.closest.getClosestPoint', function() {
it('returns the expected value', function() {
var maxDelta = Math.sqrt(_ol_geom_flat_closest_.getMaxSquaredDelta(
flatCoordinates, 0, flatCoordinates.length, 2, 0));
const maxDelta = Math.sqrt(_ol_geom_flat_closest_.getMaxSquaredDelta(
flatCoordinates, 0, flatCoordinates.length, 2, 0));
expect(maxDelta).to.be(3);
var closestPoint = [NaN, NaN];
const closestPoint = [NaN, NaN];
expect(_ol_geom_flat_closest_.getClosestPoint(
flatCoordinates, 0, flatCoordinates.length, 2,
maxDelta, false, 0, 0, closestPoint, Infinity)).to.be(0);
flatCoordinates, 0, flatCoordinates.length, 2,
maxDelta, false, 0, 0, closestPoint, Infinity)).to.be(0);
expect(closestPoint).to.eql([0, 0]);
expect(_ol_geom_flat_closest_.getClosestPoint(
flatCoordinates, 0, flatCoordinates.length, 2,
maxDelta, false, 4, 1, closestPoint, Infinity)).to.be(1);
flatCoordinates, 0, flatCoordinates.length, 2,
maxDelta, false, 4, 1, closestPoint, Infinity)).to.be(1);
expect(closestPoint).to.eql([4, 0]);
expect(_ol_geom_flat_closest_.getClosestPoint(
flatCoordinates, 0, flatCoordinates.length, 2,
maxDelta, false, 5, 2, closestPoint, Infinity)).to.be(4);
flatCoordinates, 0, flatCoordinates.length, 2,
maxDelta, false, 5, 2, closestPoint, Infinity)).to.be(4);
expect(closestPoint).to.eql([5, 0]);
expect(_ol_geom_flat_closest_.getClosestPoint(
flatCoordinates, 0, flatCoordinates.length, 2,
maxDelta, false, 10, 100, closestPoint, Infinity)).to.be(10000);
flatCoordinates, 0, flatCoordinates.length, 2,
maxDelta, false, 10, 100, closestPoint, Infinity)).to.be(10000);
expect(closestPoint).to.eql([10, 0]);
});
@@ -47,7 +47,7 @@ describe('ol.geom.flat.closest', function() {
describe('with real data', function() {
var flatCoordinates = [
const flatCoordinates = [
224.55, 250.15, 226.91, 244.19, 233.31, 241.45, 234.98, 236.06,
244.21, 232.76, 262.59, 215.31, 267.76, 213.81, 273.57, 201.84,
273.12, 192.16, 277.62, 189.03, 280.36, 181.41, 286.51, 177.74,
@@ -79,8 +79,8 @@ describe('ol.geom.flat.closest', function() {
it('returns the expected value', function() {
expect(_ol_geom_flat_closest_.getMaxSquaredDelta(
flatCoordinates, 0, flatCoordinates.length, 2, 0)).
to.roughlyEqual(1389.1058, 1e-9);
flatCoordinates, 0, flatCoordinates.length, 2, 0)).
to.roughlyEqual(1389.1058, 1e-9);
});
});
@@ -88,24 +88,24 @@ describe('ol.geom.flat.closest', function() {
describe('ol.geom.flat.closest.getClosestPoint', function() {
it('returns the expected value', function() {
var maxDelta = Math.sqrt(_ol_geom_flat_closest_.getMaxSquaredDelta(
flatCoordinates, 0, flatCoordinates.length, 2, 0));
const maxDelta = Math.sqrt(_ol_geom_flat_closest_.getMaxSquaredDelta(
flatCoordinates, 0, flatCoordinates.length, 2, 0));
expect(maxDelta).to.roughlyEqual(Math.sqrt(1389.1058), 1e-9);
var closestPoint = [NaN, NaN];
const closestPoint = [NaN, NaN];
expect(_ol_geom_flat_closest_.getClosestPoint(
flatCoordinates, 0, flatCoordinates.length, 2,
maxDelta, false, 0, 0, closestPoint, Infinity)).
to.roughlyEqual(110902.405, 1e-9);
flatCoordinates, 0, flatCoordinates.length, 2,
maxDelta, false, 0, 0, closestPoint, Infinity)).
to.roughlyEqual(110902.405, 1e-9);
expect(closestPoint).to.eql([292.41, 159.37]);
expect(_ol_geom_flat_closest_.getClosestPoint(
flatCoordinates, 0, flatCoordinates.length, 2,
maxDelta, false, 500, 500, closestPoint, Infinity)).
to.roughlyEqual(106407.905, 1e-9);
flatCoordinates, 0, flatCoordinates.length, 2,
maxDelta, false, 500, 500, closestPoint, Infinity)).
to.roughlyEqual(106407.905, 1e-9);
expect(closestPoint).to.eql([671.55, 222.55]);
expect(_ol_geom_flat_closest_.getClosestPoint(
flatCoordinates, 0, flatCoordinates.length, 2,
maxDelta, false, 1000, 500, closestPoint, Infinity)).
to.roughlyEqual(18229.4425, 1e-9);
flatCoordinates, 0, flatCoordinates.length, 2,
maxDelta, false, 1000, 500, closestPoint, Infinity)).
to.roughlyEqual(18229.4425, 1e-9);
expect(closestPoint).to.eql([866.36, 480.77]);
});
@@ -115,20 +115,20 @@ describe('ol.geom.flat.closest', function() {
describe('with multi-dimensional data', function() {
var flatCoordinates = [0, 0, 10, -10, 2, 2, 30, -20];
var stride = 4;
const flatCoordinates = [0, 0, 10, -10, 2, 2, 30, -20];
const stride = 4;
describe('ol.geom.flat.closest.getClosestPoint', function() {
it('interpolates M coordinates', function() {
var maxDelta = Math.sqrt(_ol_geom_flat_closest_.getMaxSquaredDelta(
flatCoordinates, 0, flatCoordinates.length, stride, 0));
const maxDelta = Math.sqrt(_ol_geom_flat_closest_.getMaxSquaredDelta(
flatCoordinates, 0, flatCoordinates.length, stride, 0));
expect(maxDelta).to.roughlyEqual(Math.sqrt(8), 1e-9);
var closestPoint = [NaN, NaN];
const closestPoint = [NaN, NaN];
expect(_ol_geom_flat_closest_.getClosestPoint(
flatCoordinates, 0, flatCoordinates.length, stride,
maxDelta, false, 1, 1, closestPoint, Infinity)).
to.roughlyEqual(0, 1e-9);
flatCoordinates, 0, flatCoordinates.length, stride,
maxDelta, false, 1, 1, closestPoint, Infinity)).
to.roughlyEqual(0, 1e-9);
expect(closestPoint).to.have.length(stride);
expect(closestPoint[0]).to.be(1);
expect(closestPoint[1]).to.be(1);
+7 -7
View File
@@ -5,34 +5,34 @@ describe('ol.geom.flat.contains', function() {
describe('with simple data', function() {
var flatCoordinatesSimple = [0, 0, 1, 0, 1, 1, 0, 1];
var flatCoordinatesNonSimple = [0, 0, 4, 0, 4, 3, 1, 3, 1, 2, 3, 2, 3, 1, 2, 1, 2, 4, 0, 4];
const flatCoordinatesSimple = [0, 0, 1, 0, 1, 1, 0, 1];
const flatCoordinatesNonSimple = [0, 0, 4, 0, 4, 3, 1, 3, 1, 2, 3, 2, 3, 1, 2, 1, 2, 4, 0, 4];
describe('ol.geom.flat.contains.linearRingContainsXY', function() {
it('returns true for point inside a simple polygon', function() {
expect(_ol_geom_flat_contains_.linearRingContainsXY(
flatCoordinatesSimple, 0, flatCoordinatesSimple.length, 2, 0.5, 0.5)).to.be(true);
flatCoordinatesSimple, 0, flatCoordinatesSimple.length, 2, 0.5, 0.5)).to.be(true);
});
it('returns false for point outside a simple polygon', function() {
expect(_ol_geom_flat_contains_.linearRingContainsXY(
flatCoordinatesSimple, 0, flatCoordinatesSimple.length, 2, 1.5, 1.5)).to.be(false);
flatCoordinatesSimple, 0, flatCoordinatesSimple.length, 2, 1.5, 1.5)).to.be(false);
});
it('returns true for point inside a non-simple polygon', function() {
expect(_ol_geom_flat_contains_.linearRingContainsXY(
flatCoordinatesNonSimple, 0, flatCoordinatesNonSimple.length, 2, 1, 1)).to.be(true);
flatCoordinatesNonSimple, 0, flatCoordinatesNonSimple.length, 2, 1, 1)).to.be(true);
});
it('returns true for point inside an overlap of a non-simple polygon', function() {
expect(_ol_geom_flat_contains_.linearRingContainsXY(
flatCoordinatesNonSimple, 0, flatCoordinatesNonSimple.length, 2, 1.5, 2.5)).to.be(true);
flatCoordinatesNonSimple, 0, flatCoordinatesNonSimple.length, 2, 1.5, 2.5)).to.be(true);
});
it('returns false for a point inside a hole of a non-simple polygon', function() {
expect(_ol_geom_flat_contains_.linearRingContainsXY(
flatCoordinatesNonSimple, 0, flatCoordinatesNonSimple.length, 2, 2.5, 1.5)).to.be(false);
flatCoordinatesNonSimple, 0, flatCoordinatesNonSimple.length, 2, 2.5, 1.5)).to.be(false);
});
});
+6 -6
View File
@@ -5,14 +5,14 @@ describe('ol.geom.flat.deflate', function() {
describe('ol.geom.flat.deflate.coordinates', function() {
var flatCoordinates;
let flatCoordinates;
beforeEach(function() {
flatCoordinates = [];
});
it('flattens coordinates', function() {
var offset = _ol_geom_flat_deflate_.coordinates(
flatCoordinates, 0, [[1, 2], [3, 4]], 2);
const offset = _ol_geom_flat_deflate_.coordinates(
flatCoordinates, 0, [[1, 2], [3, 4]], 2);
expect(offset).to.be(4);
expect(flatCoordinates).to.eql([1, 2, 3, 4]);
});
@@ -21,14 +21,14 @@ describe('ol.geom.flat.deflate', function() {
describe('ol.geom.flat.deflate.coordinatess', function() {
var flatCoordinates;
let flatCoordinates;
beforeEach(function() {
flatCoordinates = [];
});
it('flattens arrays of coordinates', function() {
var ends = _ol_geom_flat_deflate_.coordinatess(flatCoordinates, 0,
[[[1, 2], [3, 4]], [[5, 6], [7, 8]]], 2);
const ends = _ol_geom_flat_deflate_.coordinatess(flatCoordinates, 0,
[[[1, 2], [3, 4]], [[5, 6], [7, 8]]], 2);
expect(ends).to.eql([4, 8]);
expect(flatCoordinates).to.eql([1, 2, 3, 4, 5, 6, 7, 8]);
});
+12 -12
View File
@@ -6,31 +6,31 @@ describe('ol.geom.flat.flip', function() {
describe('ol.geom.flat.flip.flipXY', function() {
it('can flip XY coordinates', function() {
var flatCoordinates = _ol_geom_flat_flip_.flipXY([1, 2, 3, 4], 0, 4, 2);
const flatCoordinates = _ol_geom_flat_flip_.flipXY([1, 2, 3, 4], 0, 4, 2);
expect(flatCoordinates).to.eql([2, 1, 4, 3]);
});
it('can flip XY coordinates while preserving other dimensions', function() {
var flatCoordinates = _ol_geom_flat_flip_.flipXY(
[1, 2, 3, 4, 5, 6, 7, 8], 0, 8, 4);
const flatCoordinates = _ol_geom_flat_flip_.flipXY(
[1, 2, 3, 4, 5, 6, 7, 8], 0, 8, 4);
expect(flatCoordinates).to.eql([2, 1, 3, 4, 6, 5, 7, 8]);
});
it('can flip XY coordinates in place', function() {
var flatCoordinates = [1, 2, 3, 4];
const flatCoordinates = [1, 2, 3, 4];
expect(_ol_geom_flat_flip_.flipXY(
flatCoordinates, 0, 4, 2, flatCoordinates)).to.be(flatCoordinates);
flatCoordinates, 0, 4, 2, flatCoordinates)).to.be(flatCoordinates);
expect(flatCoordinates).to.eql([2, 1, 4, 3]);
});
it('can flip XY coordinates in place while preserving other dimensions',
function() {
var flatCoordinates = [1, 2, 3, 4, 5, 6, 7, 8, 9];
expect(_ol_geom_flat_flip_.flipXY(
flatCoordinates, 0, 9, 3, flatCoordinates)).
to.be(flatCoordinates);
expect(flatCoordinates).to.eql([2, 1, 3, 5, 4, 6, 8, 7, 9]);
});
function() {
const flatCoordinates = [1, 2, 3, 4, 5, 6, 7, 8, 9];
expect(_ol_geom_flat_flip_.flipXY(
flatCoordinates, 0, 9, 3, flatCoordinates)).
to.be(flatCoordinates);
expect(flatCoordinates).to.eql([2, 1, 3, 5, 4, 6, 8, 7, 9]);
});
});
+3 -3
View File
@@ -6,7 +6,7 @@ describe('ol.geom.flat.inflate', function() {
describe('ol.geom.flat.inflate.coordinates', function() {
it('inflates coordinates', function() {
var coordinates = _ol_geom_flat_inflate_.coordinates([1, 2, 3, 4], 0, 4, 2);
const coordinates = _ol_geom_flat_inflate_.coordinates([1, 2, 3, 4], 0, 4, 2);
expect(coordinates).to.eql([[1, 2], [3, 4]]);
});
@@ -15,8 +15,8 @@ describe('ol.geom.flat.inflate', function() {
describe('ol.geom.flat.inflate.coordinatess', function() {
it('inflates arrays of coordinates', function() {
var coordinatess = _ol_geom_flat_inflate_.coordinatess(
[1, 2, 3, 4, 5, 6, 7, 8], 0, [4, 8], 2);
const coordinatess = _ol_geom_flat_inflate_.coordinatess(
[1, 2, 3, 4, 5, 6, 7, 8], 0, [4, 8], 2);
expect(coordinatess).to.eql([[[1, 2], [3, 4]], [[5, 6], [7, 8]]]);
});
+34 -34
View File
@@ -6,15 +6,15 @@ describe('ol.geom.flat.interpolate', function() {
describe('ol.geom.flat.interpolate.lineString', function() {
it('returns the expected value for single points', function() {
var flatCoordinates = [0, 1];
var point =
const flatCoordinates = [0, 1];
const point =
_ol_geom_flat_interpolate_.lineString(flatCoordinates, 0, 2, 2, 0.5);
expect(point).to.eql([0, 1]);
});
it('returns the expected value for simple line segments', function() {
var flatCoordinates = [0, 1, 2, 3];
var point =
const flatCoordinates = [0, 1, 2, 3];
const point =
_ol_geom_flat_interpolate_.lineString(flatCoordinates, 0, 4, 2, 0.5);
expect(point).to.eql([1, 2]);
});
@@ -22,58 +22,58 @@ describe('ol.geom.flat.interpolate', function() {
it('returns the expected value when the mid point is an existing ' +
'coordinate',
function() {
var flatCoordinates = [0, 1, 2, 3, 4, 5];
var point = _ol_geom_flat_interpolate_.lineString(
flatCoordinates, 0, 6, 2, 0.5);
const flatCoordinates = [0, 1, 2, 3, 4, 5];
const point = _ol_geom_flat_interpolate_.lineString(
flatCoordinates, 0, 6, 2, 0.5);
expect(point).to.eql([2, 3]);
});
xit('also when vertices are repeated', function() {
var flatCoordinates = [0, 1, 2, 3, 2, 3, 4, 5];
var point = _ol_geom_flat_interpolate_.lineString(
flatCoordinates, 0, 6, 2, 0.5);
const flatCoordinates = [0, 1, 2, 3, 2, 3, 4, 5];
const point = _ol_geom_flat_interpolate_.lineString(
flatCoordinates, 0, 6, 2, 0.5);
expect(point).to.eql([2, 3]);
});
it('returns the expected value when the midpoint falls halfway between ' +
'two existing coordinates',
function() {
var flatCoordinates = [0, 1, 2, 3, 4, 5, 6, 7];
var point = _ol_geom_flat_interpolate_.lineString(
flatCoordinates, 0, 8, 2, 0.5);
const flatCoordinates = [0, 1, 2, 3, 4, 5, 6, 7];
const point = _ol_geom_flat_interpolate_.lineString(
flatCoordinates, 0, 8, 2, 0.5);
expect(point).to.eql([3, 4]);
});
xit('also when vertices are repeated', function() {
var flatCoordinates = [0, 1, 2, 3, 2, 3, 4, 5, 6, 7];
var point = _ol_geom_flat_interpolate_.lineString(
flatCoordinates, 0, 8, 2, 0.5);
const flatCoordinates = [0, 1, 2, 3, 2, 3, 4, 5, 6, 7];
const point = _ol_geom_flat_interpolate_.lineString(
flatCoordinates, 0, 8, 2, 0.5);
expect(point).to.eql([3, 4]);
});
it('returns the expected value when the coordinates are not evenly spaced',
function() {
var flatCoordinates = [0, 1, 2, 3, 6, 7];
var point = _ol_geom_flat_interpolate_.lineString(
flatCoordinates, 0, 6, 2, 0.5);
expect(point).to.eql([3, 4]);
});
function() {
const flatCoordinates = [0, 1, 2, 3, 6, 7];
const point = _ol_geom_flat_interpolate_.lineString(
flatCoordinates, 0, 6, 2, 0.5);
expect(point).to.eql([3, 4]);
});
xit('also when vertices are repeated',
function() {
var flatCoordinates = [0, 1, 2, 3, 2, 3, 6, 7];
var point = _ol_geom_flat_interpolate_.lineString(
flatCoordinates, 0, 6, 2, 0.5);
expect(point).to.eql([3, 4]);
});
function() {
const flatCoordinates = [0, 1, 2, 3, 2, 3, 6, 7];
const point = _ol_geom_flat_interpolate_.lineString(
flatCoordinates, 0, 6, 2, 0.5);
expect(point).to.eql([3, 4]);
});
it('returns the expected value when using opt_dest',
function() {
var flatCoordinates = [0, 1, 2, 3, 6, 7];
var point = _ol_geom_flat_interpolate_.lineString(
flatCoordinates, 0, 6, 2, 0.5, [0, 0]);
expect(point).to.eql([3, 4]);
});
function() {
const flatCoordinates = [0, 1, 2, 3, 6, 7];
const point = _ol_geom_flat_interpolate_.lineString(
flatCoordinates, 0, 6, 2, 0.5, [0, 0]);
expect(point).to.eql([3, 4]);
});
});
+33 -33
View File
@@ -4,69 +4,69 @@ import _ol_geom_flat_intersectsextent_ from '../../../../../src/ol/geom/flat/int
describe('ol.geom.flat.intersectsextent', function() {
describe('ol.geom.flat.intersectsextent.lineString', function() {
var flatCoordinates;
let flatCoordinates;
beforeEach(function() {
flatCoordinates = [0, 0, 1, 1, 2, 2];
});
describe('linestring envelope does not intersect the extent', function() {
it('returns false', function() {
var extent = [3, 3, 4, 4];
var r = _ol_geom_flat_intersectsextent_.lineString(
flatCoordinates, 0, flatCoordinates.length, 2, extent);
const extent = [3, 3, 4, 4];
const r = _ol_geom_flat_intersectsextent_.lineString(
flatCoordinates, 0, flatCoordinates.length, 2, extent);
expect(r).to.be(false);
});
});
describe('linestring envelope within the extent', function() {
it('returns true', function() {
var extent = [-1, -1, 3, 3];
var r = _ol_geom_flat_intersectsextent_.lineString(
flatCoordinates, 0, flatCoordinates.length, 2, extent);
const extent = [-1, -1, 3, 3];
const r = _ol_geom_flat_intersectsextent_.lineString(
flatCoordinates, 0, flatCoordinates.length, 2, extent);
expect(r).to.be(true);
});
});
describe('linestring envelope bisected by an edge of the extent',
function() {
it('returns true', function() {
var extent = [-0.1, 0.1, 2.1, 0.1];
var r = _ol_geom_flat_intersectsextent_.lineString(
flatCoordinates, 0, flatCoordinates.length, 2, extent);
expect(r).to.be(true);
});
function() {
it('returns true', function() {
const extent = [-0.1, 0.1, 2.1, 0.1];
const r = _ol_geom_flat_intersectsextent_.lineString(
flatCoordinates, 0, flatCoordinates.length, 2, extent);
expect(r).to.be(true);
});
});
describe('a segment intersects the extent', function() {
it('returns true', function() {
var extent = [-0.5, -0.5, 0.5, 0.5];
var r = _ol_geom_flat_intersectsextent_.lineString(
flatCoordinates, 0, flatCoordinates.length, 2, extent);
const extent = [-0.5, -0.5, 0.5, 0.5];
const r = _ol_geom_flat_intersectsextent_.lineString(
flatCoordinates, 0, flatCoordinates.length, 2, extent);
expect(r).to.be(true);
});
});
describe('no segments intersect the extent', function() {
it('returns false', function() {
var extent = [0.5, 1.5, 1, 1.75];
var r = _ol_geom_flat_intersectsextent_.lineString(
flatCoordinates, 0, flatCoordinates.length, 2, extent);
const extent = [0.5, 1.5, 1, 1.75];
const r = _ol_geom_flat_intersectsextent_.lineString(
flatCoordinates, 0, flatCoordinates.length, 2, extent);
expect(r).to.be(false);
});
it('returns false', function() {
var extent = [1, 0.25, 1.5, 0.5];
var r = _ol_geom_flat_intersectsextent_.lineString(
flatCoordinates, 0, flatCoordinates.length, 2, extent);
const extent = [1, 0.25, 1.5, 0.5];
const r = _ol_geom_flat_intersectsextent_.lineString(
flatCoordinates, 0, flatCoordinates.length, 2, extent);
expect(r).to.be(false);
});
});
});
describe('ol.geom.flat.intersectsextent.linearRing', function() {
var flatCoordinates;
let flatCoordinates;
beforeEach(function() {
flatCoordinates = [0, 0, 1, 1, 2, 0, 1, -1, 0, 0];
});
describe('boundary intersects the extent', function() {
it('returns true', function() {
var extent = [1.5, 0.0, 2.5, 1.0];
var r = _ol_geom_flat_intersectsextent_.linearRing(
flatCoordinates, 0, flatCoordinates.length, 2, extent);
const extent = [1.5, 0.0, 2.5, 1.0];
const r = _ol_geom_flat_intersectsextent_.linearRing(
flatCoordinates, 0, flatCoordinates.length, 2, extent);
expect(r).to.be(true);
});
});
@@ -74,17 +74,17 @@ describe('ol.geom.flat.intersectsextent', function() {
'contain a corner of the extent',
function() {
it('returns false', function() {
var extent = [2.0, 0.5, 3, 1.5];
var r = _ol_geom_flat_intersectsextent_.linearRing(
flatCoordinates, 0, flatCoordinates.length, 2, extent);
const extent = [2.0, 0.5, 3, 1.5];
const r = _ol_geom_flat_intersectsextent_.linearRing(
flatCoordinates, 0, flatCoordinates.length, 2, extent);
expect(r).to.be(false);
});
});
describe('ring contains the extent', function() {
it('returns true', function() {
var extent = [0.75, -0.25, 1.25, 0.25];
var r = _ol_geom_flat_intersectsextent_.linearRing(
flatCoordinates, 0, flatCoordinates.length, 2, extent);
const extent = [0.75, -0.25, 1.25, 0.25];
const r = _ol_geom_flat_intersectsextent_.linearRing(
flatCoordinates, 0, flatCoordinates.length, 2, extent);
expect(r).to.be(true);
});
});
+40 -40
View File
@@ -6,60 +6,60 @@ describe('ol.geom.flat.length', function() {
describe('ol.geom.flat.length.lineString', function() {
describe('stride = 2', function() {
var flatCoords = [0, 0, 1, 0, 1, 1, 0, 1];
var stride = 2;
const flatCoords = [0, 0, 1, 0, 1, 1, 0, 1];
const stride = 2;
it('calculates the total length of a lineString', function() {
var offset = 0;
var end = 8;
var expected = 3;
var got = _ol_geom_flat_length_.lineString(flatCoords, offset, end, stride);
const offset = 0;
const end = 8;
const expected = 3;
const got = _ol_geom_flat_length_.lineString(flatCoords, offset, end, stride);
expect(got).to.be(expected);
});
it('calculates a partwise length of a lineString (offset)', function() {
var offset = 2;
var end = 8;
var expected = 2;
var got = _ol_geom_flat_length_.lineString(flatCoords, offset, end, stride);
const offset = 2;
const end = 8;
const expected = 2;
const got = _ol_geom_flat_length_.lineString(flatCoords, offset, end, stride);
expect(got).to.be(expected);
});
it('calculates a partwise length of a lineString (end)', function() {
var offset = 0;
var end = 4;
var expected = 1;
var got = _ol_geom_flat_length_.lineString(flatCoords, offset, end, stride);
const offset = 0;
const end = 4;
const expected = 1;
const got = _ol_geom_flat_length_.lineString(flatCoords, offset, end, stride);
expect(got).to.be(expected);
});
});
describe('stride = 3', function() {
var flatCoords = [0, 0, 42, 1, 0, 42, 1, 1, 42, 0, 1, 42];
var stride = 3;
const flatCoords = [0, 0, 42, 1, 0, 42, 1, 1, 42, 0, 1, 42];
const stride = 3;
it('calculates the total length of a lineString', function() {
var offset = 0;
var end = 12;
var expected = 3;
var got = _ol_geom_flat_length_.lineString(flatCoords, offset, end, stride);
const offset = 0;
const end = 12;
const expected = 3;
const got = _ol_geom_flat_length_.lineString(flatCoords, offset, end, stride);
expect(got).to.be(expected);
});
it('calculates a partwise length of a lineString (offset)', function() {
var offset = 3;
var end = 12;
var expected = 2;
var got = _ol_geom_flat_length_.lineString(flatCoords, offset, end, stride);
const offset = 3;
const end = 12;
const expected = 2;
const got = _ol_geom_flat_length_.lineString(flatCoords, offset, end, stride);
expect(got).to.be(expected);
});
it('calculates a partwise length of a lineString (end)', function() {
var offset = 0;
var end = 6;
var expected = 1;
var got = _ol_geom_flat_length_.lineString(flatCoords, offset, end, stride);
const offset = 0;
const end = 6;
const expected = 1;
const got = _ol_geom_flat_length_.lineString(flatCoords, offset, end, stride);
expect(got).to.be(expected);
});
@@ -69,22 +69,22 @@ describe('ol.geom.flat.length', function() {
describe('ol.geom.flat.length.linearRing', function() {
it('calculates the total length of a simple linearRing', function() {
var flatCoords = [0, 0, 1, 0, 1, 1, 0, 1];
var stride = 2;
var offset = 0;
var end = 8;
var expected = 4;
var got = _ol_geom_flat_length_.linearRing(flatCoords, offset, end, stride);
const flatCoords = [0, 0, 1, 0, 1, 1, 0, 1];
const stride = 2;
const offset = 0;
const end = 8;
const expected = 4;
const got = _ol_geom_flat_length_.linearRing(flatCoords, offset, end, stride);
expect(got).to.be(expected);
});
it('calculates the total length of a figure-8 linearRing', function() {
var flatCoords = [0, 0, 1, 0, 1, 1, 0, 1, 0, -1, -1, -1, -1, 0];
var stride = 2;
var offset = 0;
var end = 14;
var expected = 8;
var got = _ol_geom_flat_length_.linearRing(flatCoords, offset, end, stride);
const flatCoords = [0, 0, 1, 0, 1, 1, 0, 1, 0, -1, -1, -1, -1, 0];
const stride = 2;
const offset = 0;
const end = 14;
const expected = 8;
const got = _ol_geom_flat_length_.linearRing(flatCoords, offset, end, stride);
expect(got).to.be(expected);
});
+30 -30
View File
@@ -6,35 +6,35 @@ describe('ol.geom.flat.orient', function() {
describe('ol.geom.flat.orient.linearRingIsClockwise()', function() {
it('identifies clockwise rings', function() {
var flatCoordinates = [0, 1, 1, 4, 4, 3, 3, 0];
var isClockwise = _ol_geom_flat_orient_.linearRingIsClockwise(
flatCoordinates, 0, flatCoordinates.length, 2);
const flatCoordinates = [0, 1, 1, 4, 4, 3, 3, 0];
const isClockwise = _ol_geom_flat_orient_.linearRingIsClockwise(
flatCoordinates, 0, flatCoordinates.length, 2);
expect(isClockwise).to.be(true);
});
it('identifies anti-clockwise rings', function() {
var flatCoordinates = [2, 2, 3, 2, 3, 3, 2, 3];
var isClockwise = _ol_geom_flat_orient_.linearRingIsClockwise(
flatCoordinates, 0, flatCoordinates.length, 2);
const flatCoordinates = [2, 2, 3, 2, 3, 3, 2, 3];
const isClockwise = _ol_geom_flat_orient_.linearRingIsClockwise(
flatCoordinates, 0, flatCoordinates.length, 2);
expect(isClockwise).to.be(false);
});
});
describe('ol.geom.flat.orient.linearRingsAreOriented()', function() {
var oriented = _ol_geom_flat_orient_.linearRingsAreOriented;
const oriented = _ol_geom_flat_orient_.linearRingsAreOriented;
var rightCoords = [
const rightCoords = [
-180, -90, 180, -90, 180, 90, -180, 90, -180, -90,
-100, -45, -100, 45, 100, 45, 100, -45, -100, -45
];
var leftCoords = [
const leftCoords = [
-180, -90, -180, 90, 180, 90, 180, -90, -180, -90,
-100, -45, 100, -45, 100, 45, -100, 45, -100, -45
];
var ends = [10, 20];
const ends = [10, 20];
it('checks for left-hand orientation by default', function() {
expect(oriented(rightCoords, 0, ends, 2)).to.be(false);
@@ -49,23 +49,23 @@ describe('ol.geom.flat.orient', function() {
});
describe('ol.geom.flat.orient.linearRingssAreOriented()', function() {
var oriented = _ol_geom_flat_orient_.linearRingssAreOriented;
const oriented = _ol_geom_flat_orient_.linearRingssAreOriented;
var rightCoords = [
const rightCoords = [
-180, -90, 180, -90, 180, 90, -180, 90, -180, -90,
-100, -45, -100, 45, 100, 45, 100, -45, -100, -45,
-180, -90, 180, -90, 180, 90, -180, 90, -180, -90,
-100, -45, -100, 45, 100, 45, 100, -45, -100, -45
];
var leftCoords = [
const leftCoords = [
-180, -90, -180, 90, 180, 90, 180, -90, -180, -90,
-100, -45, 100, -45, 100, 45, -100, 45, -100, -45,
-180, -90, -180, 90, 180, 90, 180, -90, -180, -90,
-100, -45, 100, -45, 100, 45, -100, 45, -100, -45
];
var ends = [[10, 20], [30, 40]];
const ends = [[10, 20], [30, 40]];
it('checks for left-hand orientation by default', function() {
expect(oriented(rightCoords, 0, ends, 2)).to.be(false);
@@ -80,36 +80,36 @@ describe('ol.geom.flat.orient', function() {
});
describe('ol.geom.flat.orient.orientLinearRings()', function() {
var orient = _ol_geom_flat_orient_.orientLinearRings;
const orient = _ol_geom_flat_orient_.orientLinearRings;
var rightCoords = [
const rightCoords = [
-180, -90, 180, -90, 180, 90, -180, 90, -180, -90,
-100, -45, -100, 45, 100, 45, 100, -45, -100, -45
];
var leftCoords = [
const leftCoords = [
-180, -90, -180, 90, 180, 90, 180, -90, -180, -90,
-100, -45, 100, -45, 100, 45, -100, 45, -100, -45
];
var ends = [10, 20];
const ends = [10, 20];
it('orients using the left-hand rule by default', function() {
var rightClone = rightCoords.slice();
const rightClone = rightCoords.slice();
orient(rightClone, 0, ends, 2);
expect(rightClone).to.eql(leftCoords);
var leftClone = leftCoords.slice();
const leftClone = leftCoords.slice();
orient(leftClone, 0, ends, 2);
expect(leftClone).to.eql(leftCoords);
});
it('can orient using the right-hand rule', function() {
var rightClone = rightCoords.slice();
const rightClone = rightCoords.slice();
orient(rightClone, 0, ends, 2, true);
expect(rightClone).to.eql(rightCoords);
var leftClone = leftCoords.slice();
const leftClone = leftCoords.slice();
orient(leftClone, 0, ends, 2, true);
expect(leftClone).to.eql(rightCoords);
});
@@ -117,40 +117,40 @@ describe('ol.geom.flat.orient', function() {
});
describe('ol.geom.flat.orient.orientLinearRingss()', function() {
var orient = _ol_geom_flat_orient_.orientLinearRingss;
const orient = _ol_geom_flat_orient_.orientLinearRingss;
var rightCoords = [
const rightCoords = [
-180, -90, 180, -90, 180, 90, -180, 90, -180, -90,
-100, -45, -100, 45, 100, 45, 100, -45, -100, -45,
-180, -90, 180, -90, 180, 90, -180, 90, -180, -90,
-100, -45, -100, 45, 100, 45, 100, -45, -100, -45
];
var leftCoords = [
const leftCoords = [
-180, -90, -180, 90, 180, 90, 180, -90, -180, -90,
-100, -45, 100, -45, 100, 45, -100, 45, -100, -45,
-180, -90, -180, 90, 180, 90, 180, -90, -180, -90,
-100, -45, 100, -45, 100, 45, -100, 45, -100, -45
];
var ends = [[10, 20], [30, 40]];
const ends = [[10, 20], [30, 40]];
it('orients using the left-hand rule by default', function() {
var rightClone = rightCoords.slice();
const rightClone = rightCoords.slice();
orient(rightClone, 0, ends, 2);
expect(rightClone).to.eql(leftCoords);
var leftClone = leftCoords.slice();
const leftClone = leftCoords.slice();
orient(leftClone, 0, ends, 2);
expect(leftClone).to.eql(leftCoords);
});
it('can orient using the right-hand rule', function() {
var rightClone = rightCoords.slice();
const rightClone = rightCoords.slice();
orient(rightClone, 0, ends, 2, true);
expect(rightClone).to.eql(rightCoords);
var leftClone = leftCoords.slice();
const leftClone = leftCoords.slice();
orient(leftClone, 0, ends, 2, true);
expect(leftClone).to.eql(rightCoords);
});
+31 -31
View File
@@ -8,37 +8,37 @@ describe('ol.geom.flat.reverse', function() {
describe('with a stride of 2', function() {
it('can reverse empty flat coordinates', function() {
var flatCoordinates = [];
const flatCoordinates = [];
_ol_geom_flat_reverse_.coordinates(
flatCoordinates, 0, flatCoordinates.length, 2);
flatCoordinates, 0, flatCoordinates.length, 2);
expect(flatCoordinates).to.be.empty();
});
it('can reverse one flat coordinates', function() {
var flatCoordinates = [1, 2];
const flatCoordinates = [1, 2];
_ol_geom_flat_reverse_.coordinates(
flatCoordinates, 0, flatCoordinates.length, 2);
flatCoordinates, 0, flatCoordinates.length, 2);
expect(flatCoordinates).to.eql([1, 2]);
});
it('can reverse two flat coordinates', function() {
var flatCoordinates = [1, 2, 3, 4];
const flatCoordinates = [1, 2, 3, 4];
_ol_geom_flat_reverse_.coordinates(
flatCoordinates, 0, flatCoordinates.length, 2);
flatCoordinates, 0, flatCoordinates.length, 2);
expect(flatCoordinates).to.eql([3, 4, 1, 2]);
});
it('can reverse three flat coordinates', function() {
var flatCoordinates = [1, 2, 3, 4, 5, 6];
const flatCoordinates = [1, 2, 3, 4, 5, 6];
_ol_geom_flat_reverse_.coordinates(
flatCoordinates, 0, flatCoordinates.length, 2);
flatCoordinates, 0, flatCoordinates.length, 2);
expect(flatCoordinates).to.eql([5, 6, 3, 4, 1, 2]);
});
it('can reverse four flat coordinates', function() {
var flatCoordinates = [1, 2, 3, 4, 5, 6, 7, 8];
const flatCoordinates = [1, 2, 3, 4, 5, 6, 7, 8];
_ol_geom_flat_reverse_.coordinates(
flatCoordinates, 0, flatCoordinates.length, 2);
flatCoordinates, 0, flatCoordinates.length, 2);
expect(flatCoordinates).to.eql([7, 8, 5, 6, 3, 4, 1, 2]);
});
@@ -47,37 +47,37 @@ describe('ol.geom.flat.reverse', function() {
describe('with a stride of 3', function() {
it('can reverse empty flat coordinates', function() {
var flatCoordinates = [];
const flatCoordinates = [];
_ol_geom_flat_reverse_.coordinates(
flatCoordinates, 0, flatCoordinates.length, 3);
flatCoordinates, 0, flatCoordinates.length, 3);
expect(flatCoordinates).to.be.empty();
});
it('can reverse one flat coordinates', function() {
var flatCoordinates = [1, 2, 3];
const flatCoordinates = [1, 2, 3];
_ol_geom_flat_reverse_.coordinates(
flatCoordinates, 0, flatCoordinates.length, 3);
flatCoordinates, 0, flatCoordinates.length, 3);
expect(flatCoordinates).to.eql([1, 2, 3]);
});
it('can reverse two flat coordinates', function() {
var flatCoordinates = [1, 2, 3, 4, 5, 6];
const flatCoordinates = [1, 2, 3, 4, 5, 6];
_ol_geom_flat_reverse_.coordinates(
flatCoordinates, 0, flatCoordinates.length, 3);
flatCoordinates, 0, flatCoordinates.length, 3);
expect(flatCoordinates).to.eql([4, 5, 6, 1, 2, 3]);
});
it('can reverse three flat coordinates', function() {
var flatCoordinates = [1, 2, 3, 4, 5, 6, 7, 8, 9];
const flatCoordinates = [1, 2, 3, 4, 5, 6, 7, 8, 9];
_ol_geom_flat_reverse_.coordinates(
flatCoordinates, 0, flatCoordinates.length, 3);
flatCoordinates, 0, flatCoordinates.length, 3);
expect(flatCoordinates).to.eql([7, 8, 9, 4, 5, 6, 1, 2, 3]);
});
it('can reverse four flat coordinates', function() {
var flatCoordinates = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12];
const flatCoordinates = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12];
_ol_geom_flat_reverse_.coordinates(
flatCoordinates, 0, flatCoordinates.length, 3);
flatCoordinates, 0, flatCoordinates.length, 3);
expect(flatCoordinates).to.eql([10, 11, 12, 7, 8, 9, 4, 5, 6, 1, 2, 3]);
});
@@ -86,40 +86,40 @@ describe('ol.geom.flat.reverse', function() {
describe('with a stride of 4', function() {
it('can reverse empty flat coordinates', function() {
var flatCoordinates = [];
const flatCoordinates = [];
_ol_geom_flat_reverse_.coordinates(
flatCoordinates, 0, flatCoordinates.length, 4);
flatCoordinates, 0, flatCoordinates.length, 4);
expect(flatCoordinates).to.be.empty();
});
it('can reverse one flat coordinates', function() {
var flatCoordinates = [1, 2, 3, 4];
const flatCoordinates = [1, 2, 3, 4];
_ol_geom_flat_reverse_.coordinates(
flatCoordinates, 0, flatCoordinates.length, 4);
flatCoordinates, 0, flatCoordinates.length, 4);
expect(flatCoordinates).to.eql([1, 2, 3, 4]);
});
it('can reverse two flat coordinates', function() {
var flatCoordinates = [1, 2, 3, 4, 5, 6, 7, 8];
const flatCoordinates = [1, 2, 3, 4, 5, 6, 7, 8];
_ol_geom_flat_reverse_.coordinates(
flatCoordinates, 0, flatCoordinates.length, 4);
flatCoordinates, 0, flatCoordinates.length, 4);
expect(flatCoordinates).to.eql([5, 6, 7, 8, 1, 2, 3, 4]);
});
it('can reverse three flat coordinates', function() {
var flatCoordinates = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12];
const flatCoordinates = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12];
_ol_geom_flat_reverse_.coordinates(
flatCoordinates, 0, flatCoordinates.length, 4);
flatCoordinates, 0, flatCoordinates.length, 4);
expect(flatCoordinates).to.eql([9, 10, 11, 12, 5, 6, 7, 8, 1, 2, 3, 4]);
});
it('can reverse four flat coordinates', function() {
var flatCoordinates =
const flatCoordinates =
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16];
_ol_geom_flat_reverse_.coordinates(
flatCoordinates, 0, flatCoordinates.length, 4);
flatCoordinates, 0, flatCoordinates.length, 4);
expect(flatCoordinates).to.eql(
[13, 14, 15, 16, 9, 10, 11, 12, 5, 6, 7, 8, 1, 2, 3, 4]);
[13, 14, 15, 16, 9, 10, 11, 12, 5, 6, 7, 8, 1, 2, 3, 4]);
});
});
+9 -9
View File
@@ -4,7 +4,7 @@ import _ol_geom_flat_segments_ from '../../../../../src/ol/geom/flat/segments.js
describe('ol.geom.flat.segments', function() {
describe('ol.geom.flat.segments.forEach', function() {
var flatCoordinates, offset, end, stride;
let flatCoordinates, offset, end, stride;
beforeEach(function() {
flatCoordinates = [0, 0, 1, 1, 2, 2, 3, 3];
offset = 0;
@@ -13,12 +13,12 @@ describe('ol.geom.flat.segments', function() {
});
describe('callback returns undefined', function() {
it('executes the callback for each segment', function() {
var args = [];
var spy = sinon.spy(function(point1, point2) {
const args = [];
const spy = sinon.spy(function(point1, point2) {
args.push([point1[0], point1[1], point2[0], point2[1]]);
});
var ret = _ol_geom_flat_segments_.forEach(
flatCoordinates, offset, end, stride, spy);
const ret = _ol_geom_flat_segments_.forEach(
flatCoordinates, offset, end, stride, spy);
expect(spy.callCount).to.be(3);
expect(args[0][0]).to.be(0);
expect(args[0][1]).to.be(0);
@@ -37,13 +37,13 @@ describe('ol.geom.flat.segments', function() {
});
describe('callback returns true', function() {
it('executes the callback for the first segment', function() {
var args = [];
var spy = sinon.spy(function(point1, point2) {
const args = [];
const spy = sinon.spy(function(point1, point2) {
args.push([point1[0], point1[1], point2[0], point2[1]]);
return true;
});
var ret = _ol_geom_flat_segments_.forEach(
flatCoordinates, offset, end, stride, spy);
const ret = _ol_geom_flat_segments_.forEach(
flatCoordinates, offset, end, stride, spy);
expect(spy.callCount).to.be(1);
expect(args[0][0]).to.be(0);
expect(args[0][1]).to.be(0);
+66 -66
View File
@@ -3,7 +3,7 @@ import _ol_geom_flat_simplify_ from '../../../../../src/ol/geom/flat/simplify.js
describe('ol.geom.flat.simplify', function() {
var flatCoordinates = [
const flatCoordinates = [
224.55, 250.15, 226.91, 244.19, 233.31, 241.45, 234.98, 236.06,
244.21, 232.76, 262.59, 215.31, 267.76, 213.81, 273.57, 201.84,
273.12, 192.16, 277.62, 189.03, 280.36, 181.41, 286.51, 177.74,
@@ -31,7 +31,7 @@ describe('ol.geom.flat.simplify', function() {
847.16, 458.44, 851.38, 462.79, 853.97, 471.15, 866.36, 480.77
];
var simplifiedRadiallyFlatCoordinates = [
const simplifiedRadiallyFlatCoordinates = [
224.55, 250.15, 226.91, 244.19, 233.31, 241.45, 234.98, 236.06,
244.21, 232.76, 262.59, 215.31, 267.76, 213.81, 273.57, 201.84,
273.12, 192.16, 277.62, 189.03, 280.36, 181.41, 286.51, 177.74,
@@ -57,7 +57,7 @@ describe('ol.geom.flat.simplify', function() {
851.38, 462.79, 853.97, 471.15, 866.36, 480.77
];
var simplifiedFlatCoordinates = [
const simplifiedFlatCoordinates = [
224.55, 250.15, 267.76, 213.81, 296.91, 155.64, 330.33, 137.57,
409.52, 141.14, 439.60, 119.74, 486.51, 106.75, 529.57, 127.86,
539.27, 147.24, 617.74, 159.86, 629.55, 194.60, 671.55, 222.55,
@@ -69,7 +69,7 @@ describe('ol.geom.flat.simplify', function() {
866.36, 480.77
];
var simplifiedHighQualityFlatCoordinates = [
const simplifiedHighQualityFlatCoordinates = [
224.55, 250.15, 267.76, 213.81, 296.91, 155.64, 330.33, 137.57,
409.52, 141.14, 439.60, 119.74, 486.51, 106.75, 529.57, 127.86,
539.27, 147.24, 617.74, 159.86, 629.55, 194.60, 671.55, 222.55,
@@ -85,28 +85,28 @@ describe('ol.geom.flat.simplify', function() {
it('works with empty line strings', function() {
expect(_ol_geom_flat_simplify_.lineString([], 0, 0, 2, 1, true)).to.
eql([]);
eql([]);
expect(_ol_geom_flat_simplify_.lineString([], 0, 0, 2, 1, false)).to.
eql([]);
eql([]);
});
it('works with a line string with a single point', function() {
expect(_ol_geom_flat_simplify_.lineString([1, 2], 0, 2, 2, 1, true)).to.
eql([1, 2]);
eql([1, 2]);
expect(_ol_geom_flat_simplify_.lineString([1, 2], 0, 2, 2, 1, false)).to.
eql([1, 2]);
eql([1, 2]);
});
it('returns the expected result with low quality', function() {
var result = _ol_geom_flat_simplify_.lineString(
flatCoordinates, 0, flatCoordinates.length, 2, 25, false);
const result = _ol_geom_flat_simplify_.lineString(
flatCoordinates, 0, flatCoordinates.length, 2, 25, false);
expect(result.length).to.be(simplifiedFlatCoordinates.length);
expect(result).to.eql(simplifiedFlatCoordinates);
});
it('returns the expected result with high quality', function() {
var result = _ol_geom_flat_simplify_.lineString(
flatCoordinates, 0, flatCoordinates.length, 2, 25, true);
const result = _ol_geom_flat_simplify_.lineString(
flatCoordinates, 0, flatCoordinates.length, 2, 25, true);
expect(result.length).to.be(simplifiedHighQualityFlatCoordinates.length);
expect(result).to.eql(simplifiedHighQualityFlatCoordinates);
});
@@ -115,71 +115,71 @@ describe('ol.geom.flat.simplify', function() {
describe('ol.geom.flat.simplify.radialDistance', function() {
var dest;
let dest;
beforeEach(function() {
dest = [];
});
it('works with empty line strings', function() {
expect(_ol_geom_flat_simplify_.radialDistance(
[], 0, 0, 2, 1, dest, 0)).to.be(0);
[], 0, 0, 2, 1, dest, 0)).to.be(0);
expect(dest).to.eql([]);
});
it('works with a line string with a single point', function() {
expect(_ol_geom_flat_simplify_.radialDistance(
[1, 2], 0, 2, 2, 1, dest, 0)).to.be(2);
[1, 2], 0, 2, 2, 1, dest, 0)).to.be(2);
expect(dest).to.eql([1, 2]);
});
it('works with a line string with two points', function() {
expect(_ol_geom_flat_simplify_.radialDistance(
[1, 2, 3, 4], 0, 4, 2, 1, dest, 0)).to.be(4);
[1, 2, 3, 4], 0, 4, 2, 1, dest, 0)).to.be(4);
expect(dest).to.eql([1, 2, 3, 4]);
});
it('works when the points are widely spaced', function() {
expect(_ol_geom_flat_simplify_.radialDistance(
[0, 0, 1, 0, 2, 0, 3, 0], 0, 8, 2, 0.5, dest, 0)).to.be(8);
[0, 0, 1, 0, 2, 0, 3, 0], 0, 8, 2, 0.5, dest, 0)).to.be(8);
expect(dest).to.eql([0, 0, 1, 0, 2, 0, 3, 0]);
});
it('works when the spacing matches the tolerance', function() {
expect(_ol_geom_flat_simplify_.radialDistance(
[0, 0, 1, 0, 2, 0, 3, 0], 0, 8, 2, 1, dest, 0)).to.be(6);
[0, 0, 1, 0, 2, 0, 3, 0], 0, 8, 2, 1, dest, 0)).to.be(6);
expect(dest).to.eql([0, 0, 2, 0, 3, 0]);
});
it('works when the points are closely spaced', function() {
expect(_ol_geom_flat_simplify_.radialDistance(
[0, 0, 1, 0, 2, 0, 3, 0], 0, 8, 2, 1.5, dest, 0)).to.be(6);
[0, 0, 1, 0, 2, 0, 3, 0], 0, 8, 2, 1.5, dest, 0)).to.be(6);
expect(dest).to.eql([0, 0, 2, 0, 3, 0]);
});
it('works when the line oscillates with widely spaced points', function() {
expect(_ol_geom_flat_simplify_.radialDistance(
[0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1], 0, 12, 2, 1, dest, 0)).
to.be(12);
[0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1], 0, 12, 2, 1, dest, 0)).
to.be(12);
expect(dest).to.eql([0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1]);
});
it('works when the line oscillates with closely spaced points', function() {
expect(_ol_geom_flat_simplify_.radialDistance(
[0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1], 0, 12, 2, 2, dest, 0)).to.be(4);
[0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1], 0, 12, 2, 2, dest, 0)).to.be(4);
expect(dest).to.eql([0, 0, 1, 1]);
});
it('works when the line oscillates within the tolerance', function() {
expect(_ol_geom_flat_simplify_.radialDistance(
[0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0], 0, 14, 2, 2, dest, 0)).
to.be(2);
[0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0], 0, 14, 2, 2, dest, 0)).
to.be(2);
expect(dest).to.eql([0, 0]);
});
it('works with real data', function() {
expect(_ol_geom_flat_simplify_.radialDistance(
flatCoordinates, 0, flatCoordinates.length, 2, 25, dest, 0)).
to.be(simplifiedRadiallyFlatCoordinates.length);
flatCoordinates, 0, flatCoordinates.length, 2, 25, dest, 0)).
to.be(simplifiedRadiallyFlatCoordinates.length);
expect(dest).to.eql(simplifiedRadiallyFlatCoordinates);
});
@@ -187,101 +187,101 @@ describe('ol.geom.flat.simplify', function() {
describe('ol.geom.flat.simplify.douglasPeucker', function() {
var dest;
let dest;
beforeEach(function() {
dest = [];
});
it('works with empty line strings', function() {
expect(_ol_geom_flat_simplify_.douglasPeucker(
[], 0, 0, 2, 1, dest, 0)).to.be(0);
[], 0, 0, 2, 1, dest, 0)).to.be(0);
expect(dest).to.eql([]);
});
it('works with a line string with a single point', function() {
expect(_ol_geom_flat_simplify_.douglasPeucker(
[1, 2], 0, 2, 2, 1, dest, 0)).to.be(2);
[1, 2], 0, 2, 2, 1, dest, 0)).to.be(2);
expect(dest).to.eql([1, 2]);
});
it('works with a line string with two points', function() {
expect(_ol_geom_flat_simplify_.douglasPeucker(
[1, 2, 3, 4], 0, 4, 2, 1, dest, 0)).to.be(4);
[1, 2, 3, 4], 0, 4, 2, 1, dest, 0)).to.be(4);
expect(dest).to.eql([1, 2, 3, 4]);
});
it('works when the points are widely spaced', function() {
expect(_ol_geom_flat_simplify_.douglasPeucker(
[0, 0, 1, 0, 2, 0, 3, 0], 0, 8, 2, 0.5, dest, 0)).to.be(4);
[0, 0, 1, 0, 2, 0, 3, 0], 0, 8, 2, 0.5, dest, 0)).to.be(4);
expect(dest).to.eql([0, 0, 3, 0]);
});
it('works when the spacing matches the tolerance', function() {
expect(_ol_geom_flat_simplify_.douglasPeucker(
[0, 0, 1, 0, 2, 0, 3, 0], 0, 8, 2, 1, dest, 0)).to.be(4);
[0, 0, 1, 0, 2, 0, 3, 0], 0, 8, 2, 1, dest, 0)).to.be(4);
expect(dest).to.eql([0, 0, 3, 0]);
});
it('works when the points are closely spaced', function() {
expect(_ol_geom_flat_simplify_.douglasPeucker(
[0, 0, 1, 0, 2, 0, 3, 0], 0, 8, 2, 1.5, dest, 0)).to.be(4);
[0, 0, 1, 0, 2, 0, 3, 0], 0, 8, 2, 1.5, dest, 0)).to.be(4);
expect(dest).to.eql([0, 0, 3, 0]);
});
it('does not elimnate points outside the tolerance', function() {
expect(_ol_geom_flat_simplify_.douglasPeucker(
[0, 0, 1, 1, 2, 0], 0, 6, 2, 0.5, dest, 0)).to.be(6);
[0, 0, 1, 1, 2, 0], 0, 6, 2, 0.5, dest, 0)).to.be(6);
expect(dest).to.eql([0, 0, 1, 1, 2, 0]);
});
it('does eliminate points within the tolerance', function() {
expect(_ol_geom_flat_simplify_.douglasPeucker(
[0, 0, 1, 1, 2, 0], 0, 6, 2, 2, dest, 0)).to.be(4);
[0, 0, 1, 1, 2, 0], 0, 6, 2, 2, dest, 0)).to.be(4);
expect(dest).to.eql([0, 0, 2, 0]);
});
it('does not eliminate multiple points outside the tolerance', function() {
expect(_ol_geom_flat_simplify_.douglasPeucker(
[0, 0, 1, 1, 1, -1, 2, 0], 0, 8, 2, 0.5, dest, 0)).to.be(8);
[0, 0, 1, 1, 1, -1, 2, 0], 0, 8, 2, 0.5, dest, 0)).to.be(8);
expect(dest).to.eql([0, 0, 1, 1, 1, -1, 2, 0]);
});
it('does eliminate multiple points within the tolerance', function() {
expect(_ol_geom_flat_simplify_.douglasPeucker(
[0, 0, 1, 1, 1, -1, 2, 0], 0, 8, 2, 2, dest, 0)).to.be(4);
[0, 0, 1, 1, 1, -1, 2, 0], 0, 8, 2, 2, dest, 0)).to.be(4);
expect(dest).to.eql([0, 0, 2, 0]);
});
it('works when the line oscillates with widely spaced points', function() {
expect(_ol_geom_flat_simplify_.douglasPeucker(
[0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1], 0, 12, 2, 1, dest, 0)).to.be(4);
[0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1], 0, 12, 2, 1, dest, 0)).to.be(4);
expect(dest).to.eql([0, 0, 1, 1]);
});
it('works when the line oscillates with closely spaced points', function() {
expect(_ol_geom_flat_simplify_.douglasPeucker(
[0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1], 0, 12, 2, 2, dest, 0)).
to.be(4);
[0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1], 0, 12, 2, 2, dest, 0)).
to.be(4);
expect(dest).to.eql([0, 0, 1, 1]);
});
it('works when the line oscillates within the tolerance', function() {
expect(_ol_geom_flat_simplify_.douglasPeucker(
[0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0], 0, 14, 2, 2, dest, 0)).
to.be(4);
[0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0], 0, 14, 2, 2, dest, 0)).
to.be(4);
expect(dest).to.eql([0, 0, 0, 0]);
});
it('works on small triangles', function() {
expect(_ol_geom_flat_simplify_.douglasPeucker(
[3, 0, 4, 1, 5, 2, 5, 0], 0, 8, 2, 1, dest, 0)).to.be(6);
[3, 0, 4, 1, 5, 2, 5, 0], 0, 8, 2, 1, dest, 0)).to.be(6);
expect(dest).to.eql([3, 0, 5, 2, 5, 0]);
});
it('is the same as high quality simplification', function() {
expect(_ol_geom_flat_simplify_.douglasPeucker(
flatCoordinates, 0, flatCoordinates.length, 2, 25, dest, 0)).
to.be(simplifiedHighQualityFlatCoordinates.length);
flatCoordinates, 0, flatCoordinates.length, 2, 25, dest, 0)).
to.be(simplifiedHighQualityFlatCoordinates.length);
expect(dest).to.eql(simplifiedHighQualityFlatCoordinates);
});
@@ -290,63 +290,63 @@ describe('ol.geom.flat.simplify', function() {
describe('ol.geom.flat.simplify.quantize', function() {
it('handles empty coordinates', function() {
var simplifiedFlatCoordinates = [];
const simplifiedFlatCoordinates = [];
expect(_ol_geom_flat_simplify_.quantize(
[], 0, 0, 2, 2, simplifiedFlatCoordinates, 0)).to.be(0);
[], 0, 0, 2, 2, simplifiedFlatCoordinates, 0)).to.be(0);
expect(simplifiedFlatCoordinates).to.be.empty();
});
it('expands points to a zero-length line', function() {
var simplifiedFlatCoordinates = [];
const simplifiedFlatCoordinates = [];
expect(_ol_geom_flat_simplify_.quantize(
[0, 0, 0, 0], 0, 4, 2, 2, simplifiedFlatCoordinates, 0)).to.be(4);
[0, 0, 0, 0], 0, 4, 2, 2, simplifiedFlatCoordinates, 0)).to.be(4);
expect(simplifiedFlatCoordinates).to.eql([0, 0, 0, 0]);
});
it('snaps near-by points to the same value', function() {
var simplifiedFlatCoordinates = [];
const simplifiedFlatCoordinates = [];
expect(_ol_geom_flat_simplify_.quantize(
[0.1, 0, 0, 0.1], 0, 4, 2, 2, simplifiedFlatCoordinates, 0)).to.be(4);
[0.1, 0, 0, 0.1], 0, 4, 2, 2, simplifiedFlatCoordinates, 0)).to.be(4);
expect(simplifiedFlatCoordinates).to.eql([0, 0, 0, 0]);
});
it('eliminates duplicate snapped points', function() {
var simplifiedFlatCoordinates = [];
const simplifiedFlatCoordinates = [];
expect(_ol_geom_flat_simplify_.quantize(
[0.1, 0, 2, 0, 2.1, 0, 2, 0.1, 1.9, 0, 2, -0.1], 0, 12, 2, 2,
simplifiedFlatCoordinates, 0)).to.be(4);
[0.1, 0, 2, 0, 2.1, 0, 2, 0.1, 1.9, 0, 2, -0.1], 0, 12, 2, 2,
simplifiedFlatCoordinates, 0)).to.be(4);
expect(simplifiedFlatCoordinates).to.eql([0, 0, 2, 0]);
});
it('eliminates horizontal colinear points', function() {
var simplifiedFlatCoordinates = [];
const simplifiedFlatCoordinates = [];
expect(_ol_geom_flat_simplify_.quantize(
[0, 0, 2, 0, 4, 0, 6, 0], 0, 8, 2, 2,
simplifiedFlatCoordinates, 0)).to.be(4);
[0, 0, 2, 0, 4, 0, 6, 0], 0, 8, 2, 2,
simplifiedFlatCoordinates, 0)).to.be(4);
expect(simplifiedFlatCoordinates).to.eql([0, 0, 6, 0]);
});
it('eliminates vertical colinear points', function() {
var simplifiedFlatCoordinates = [];
const simplifiedFlatCoordinates = [];
expect(_ol_geom_flat_simplify_.quantize(
[0, 0, 0, -2, 0, -4, 0, -6], 0, 8, 2, 2,
simplifiedFlatCoordinates, 0)).to.be(4);
[0, 0, 0, -2, 0, -4, 0, -6], 0, 8, 2, 2,
simplifiedFlatCoordinates, 0)).to.be(4);
expect(simplifiedFlatCoordinates).to.eql([0, 0, 0, -6]);
});
it('eliminates diagonal colinear points', function() {
var simplifiedFlatCoordinates = [];
const simplifiedFlatCoordinates = [];
expect(_ol_geom_flat_simplify_.quantize(
[0, 0, 2, -2, 4, -4, 6, -6], 0, 8, 2, 2,
simplifiedFlatCoordinates, 0)).to.be(4);
[0, 0, 2, -2, 4, -4, 6, -6], 0, 8, 2, 2,
simplifiedFlatCoordinates, 0)).to.be(4);
expect(simplifiedFlatCoordinates).to.eql([0, 0, 6, -6]);
});
it('handles switchbacks', function() {
var simplifiedFlatCoordinates = [];
const simplifiedFlatCoordinates = [];
expect(_ol_geom_flat_simplify_.quantize(
[0, 0, 2, 0, 0, 0, 4, 0], 0, 8, 2, 2,
simplifiedFlatCoordinates, 0)).to.be(8);
[0, 0, 2, 0, 0, 0, 4, 0], 0, 8, 2, 2,
simplifiedFlatCoordinates, 0)).to.be(8);
expect(simplifiedFlatCoordinates).to.eql([0, 0, 2, 0, 0, 0, 4, 0]);
});
+12 -12
View File
@@ -6,48 +6,48 @@ describe('ol.geom.flat.straightchunk', function() {
describe('ol.geom.flat.straightchunk.lineString', function() {
describe('single segment with stride == 3', function() {
var flatCoords = [0, 0, 42, 1, 1, 42];
var stride = 3;
const flatCoords = [0, 0, 42, 1, 1, 42];
const stride = 3;
it('returns whole line with angle delta', function() {
var got = _ol_geom_flat_straightchunk_.lineString(Math.PI / 4, flatCoords, 0, 6, stride);
const got = _ol_geom_flat_straightchunk_.lineString(Math.PI / 4, flatCoords, 0, 6, stride);
expect(got).to.eql([0, 6]);
});
it('returns whole line with zero angle delta', function() {
var got = _ol_geom_flat_straightchunk_.lineString(0, flatCoords, 0, 6, stride);
const got = _ol_geom_flat_straightchunk_.lineString(0, flatCoords, 0, 6, stride);
expect(got).to.eql([0, 6]);
});
});
describe('short line string', function() {
var flatCoords = [0, 0, 1, 0, 1, 1, 0, 1];
var stride = 2;
const flatCoords = [0, 0, 1, 0, 1, 1, 0, 1];
const stride = 2;
it('returns whole line if straight enough', function() {
var got = _ol_geom_flat_straightchunk_.lineString(Math.PI, flatCoords, 0, 8, stride);
const got = _ol_geom_flat_straightchunk_.lineString(Math.PI, flatCoords, 0, 8, stride);
expect(got).to.eql([0, 8]);
});
it('returns first matching chunk if all chunk lengths are the same', function() {
var got = _ol_geom_flat_straightchunk_.lineString(Math.PI / 4, flatCoords, 0, 8, stride);
const got = _ol_geom_flat_straightchunk_.lineString(Math.PI / 4, flatCoords, 0, 8, stride);
expect(got).to.eql([0, 4]);
});
});
describe('longer line string', function() {
var flatCoords = [0, 0, 1, 0, 1, 1, 0, 1, 0, -1, -1, -1, -1, 0, -1, 2, -2, 4];
var stride = 2;
const flatCoords = [0, 0, 1, 0, 1, 1, 0, 1, 0, -1, -1, -1, -1, 0, -1, 2, -2, 4];
const stride = 2;
it('returns stright chunk from within the linestring', function() {
var got = _ol_geom_flat_straightchunk_.lineString(0, flatCoords, 0, 18, stride);
const got = _ol_geom_flat_straightchunk_.lineString(0, flatCoords, 0, 18, stride);
expect(got).to.eql([10, 16]);
});
it('returns long chunk at the end if angle and length within threshold', function() {
var got = _ol_geom_flat_straightchunk_.lineString(Math.PI / 4, flatCoords, 0, 18, stride);
const got = _ol_geom_flat_straightchunk_.lineString(Math.PI / 4, flatCoords, 0, 18, stride);
expect(got).to.eql([10, 18]);
});
+47 -47
View File
@@ -3,74 +3,74 @@ import _ol_geom_flat_length_ from '../../../../../src/ol/geom/flat/length.js';
describe('textpath', function() {
var horizontal = [0, 0, 100, 0];
var vertical = [0, 0, 0, 100];
var diagonal = [0, 0, 100, 100];
var reverse = [100, 0, 0, 100];
var angled = [0, 0, 100, 100, 200, 0];
var reverseangled = [151, 17, 163, 22, 159, 30, 150, 30, 143, 24, 151, 17];
const horizontal = [0, 0, 100, 0];
const vertical = [0, 0, 0, 100];
const diagonal = [0, 0, 100, 100];
const reverse = [100, 0, 0, 100];
const angled = [0, 0, 100, 100, 200, 0];
const reverseangled = [151, 17, 163, 22, 159, 30, 150, 30, 143, 24, 151, 17];
function measure(text) {
return 10 * text.length;
}
it('center-aligns text on a horizontal line', function() {
var startM = 50 - 15;
var instructions = _ol_geom_flat_textpath_.lineString(
horizontal, 0, horizontal.length, 2, 'foo', measure, startM, Infinity);
const startM = 50 - 15;
const instructions = _ol_geom_flat_textpath_.lineString(
horizontal, 0, horizontal.length, 2, 'foo', measure, startM, Infinity);
expect(instructions).to.eql([[40, 0, 5, 0, 'foo']]);
});
it('left-aligns text on a horizontal line', function() {
var instructions = _ol_geom_flat_textpath_.lineString(
horizontal, 0, horizontal.length, 2, 'foo', measure, 0, Infinity);
const instructions = _ol_geom_flat_textpath_.lineString(
horizontal, 0, horizontal.length, 2, 'foo', measure, 0, Infinity);
expect(instructions).to.eql([[5, 0, 5, 0, 'foo']]);
});
it('right-aligns text on a horizontal line', function() {
var startM = 100 - 30;
var instructions = _ol_geom_flat_textpath_.lineString(
horizontal, 0, horizontal.length, 2, 'foo', measure, startM, Infinity);
const startM = 100 - 30;
const instructions = _ol_geom_flat_textpath_.lineString(
horizontal, 0, horizontal.length, 2, 'foo', measure, startM, Infinity);
expect(instructions).to.eql([[75, 0, 5, 0, 'foo']]);
});
it('draws text on a vertical line', function() {
var startM = 50 - 15;
var instructions = _ol_geom_flat_textpath_.lineString(
vertical, 0, vertical.length, 2, 'foo', measure, startM, Infinity);
var a = 90 * Math.PI / 180;
const startM = 50 - 15;
const instructions = _ol_geom_flat_textpath_.lineString(
vertical, 0, vertical.length, 2, 'foo', measure, startM, Infinity);
const a = 90 * Math.PI / 180;
expect(instructions).to.eql([[0, 40, 5, a, 'foo']]);
});
it('draws text on a diagonal line', function() {
var startM = Math.sqrt(2) * 50 - 15;
var instructions = _ol_geom_flat_textpath_.lineString(
diagonal, 0, diagonal.length, 2, 'foo', measure, startM, Infinity);
const startM = Math.sqrt(2) * 50 - 15;
const instructions = _ol_geom_flat_textpath_.lineString(
diagonal, 0, diagonal.length, 2, 'foo', measure, startM, Infinity);
expect(instructions[0][3]).to.be(45 * Math.PI / 180);
expect(instructions.length).to.be(1);
});
it('draws reverse text on a diagonal line', function() {
var startM = Math.sqrt(2) * 50 - 15;
var instructions = _ol_geom_flat_textpath_.lineString(
reverse, 0, reverse.length, 2, 'foo', measure, startM, Infinity);
const startM = Math.sqrt(2) * 50 - 15;
const instructions = _ol_geom_flat_textpath_.lineString(
reverse, 0, reverse.length, 2, 'foo', measure, startM, Infinity);
expect(instructions[0][3]).to.be(-45 * Math.PI / 180);
expect(instructions.length).to.be(1);
});
it('renders long text with extrapolation', function() {
var startM = 50 - 75;
var instructions = _ol_geom_flat_textpath_.lineString(
horizontal, 0, horizontal.length, 2, 'foo-foo-foo-foo', measure, startM, Infinity);
const startM = 50 - 75;
const instructions = _ol_geom_flat_textpath_.lineString(
horizontal, 0, horizontal.length, 2, 'foo-foo-foo-foo', measure, startM, Infinity);
expect(instructions[0]).to.eql([-20, 0, 5, 0, 'foo-foo-foo-foo']);
expect(instructions.length).to.be(1);
});
it('renders angled text', function() {
var length = _ol_geom_flat_length_.lineString(angled, 0, angled.length, 2);
var startM = length / 2 - 15;
var instructions = _ol_geom_flat_textpath_.lineString(
angled, 0, angled.length, 2, 'foo', measure, startM, Infinity);
const length = _ol_geom_flat_length_.lineString(angled, 0, angled.length, 2);
const startM = length / 2 - 15;
const instructions = _ol_geom_flat_textpath_.lineString(
angled, 0, angled.length, 2, 'foo', measure, startM, Infinity);
expect(instructions[0][3]).to.eql(45 * Math.PI / 180);
expect(instructions[0][4]).to.be('fo');
expect(instructions[1][3]).to.eql(-45 * Math.PI / 180);
@@ -78,35 +78,35 @@ describe('textpath', function() {
});
it('respects maxAngle', function() {
var length = _ol_geom_flat_length_.lineString(angled, 0, angled.length, 2);
var startM = length / 2 - 15;
var instructions = _ol_geom_flat_textpath_.lineString(
angled, 0, angled.length, 2, 'foo', measure, startM, Math.PI / 4);
const length = _ol_geom_flat_length_.lineString(angled, 0, angled.length, 2);
const startM = length / 2 - 15;
const instructions = _ol_geom_flat_textpath_.lineString(
angled, 0, angled.length, 2, 'foo', measure, startM, Math.PI / 4);
expect(instructions).to.be(null);
});
it('uses the smallest angle for maxAngleDelta', function() {
var length = _ol_geom_flat_length_.lineString(reverseangled, 0, reverseangled.length, 2);
var startM = length / 2 - 15;
var instructions = _ol_geom_flat_textpath_.lineString(
reverseangled, 0, reverseangled.length, 2, 'foo', measure, startM, Math.PI);
const length = _ol_geom_flat_length_.lineString(reverseangled, 0, reverseangled.length, 2);
const startM = length / 2 - 15;
const instructions = _ol_geom_flat_textpath_.lineString(
reverseangled, 0, reverseangled.length, 2, 'foo', measure, startM, Math.PI);
expect(instructions).to.not.be(undefined);
});
it('respects the offset option', function() {
var length = _ol_geom_flat_length_.lineString(angled, 2, angled.length, 2);
var startM = length / 2 - 15;
var instructions = _ol_geom_flat_textpath_.lineString(
angled, 2, angled.length, 2, 'foo', measure, startM, Infinity);
const length = _ol_geom_flat_length_.lineString(angled, 2, angled.length, 2);
const startM = length / 2 - 15;
const instructions = _ol_geom_flat_textpath_.lineString(
angled, 2, angled.length, 2, 'foo', measure, startM, Infinity);
expect(instructions[0][3]).to.be(-45 * Math.PI / 180);
expect(instructions.length).to.be(1);
});
it('respects the end option', function() {
var length = _ol_geom_flat_length_.lineString(angled, 0, 4, 2);
var startM = length / 2 - 15;
var instructions = _ol_geom_flat_textpath_.lineString(
angled, 0, 4, 2, 'foo', measure, startM, Infinity);
const length = _ol_geom_flat_length_.lineString(angled, 0, 4, 2);
const startM = length / 2 - 15;
const instructions = _ol_geom_flat_textpath_.lineString(
angled, 0, 4, 2, 'foo', measure, startM, Infinity);
expect(instructions[0][3]).to.be(45 * Math.PI / 180);
expect(instructions.length).to.be(1);
});
@@ -5,20 +5,20 @@ describe('ol.geom.flat.topology', function() {
describe('ol.geom.flat.topology.lineStringIsClosed', function() {
it('identifies closed lines aka boundaries', function() {
var flatCoordinates = [0, 0, 3, 0, 0, 3, 0, 0];
var isClosed = _ol_geom_flat_topology_.lineStringIsClosed(flatCoordinates, 0, flatCoordinates.length, 2);
const flatCoordinates = [0, 0, 3, 0, 0, 3, 0, 0];
const isClosed = _ol_geom_flat_topology_.lineStringIsClosed(flatCoordinates, 0, flatCoordinates.length, 2);
expect(isClosed).to.be(true);
});
it('identifies regular linestrings', function() {
var flatCoordinates = [0, 0, 3, 0, 0, 3, 5, 2];
var isClosed = _ol_geom_flat_topology_.lineStringIsClosed(flatCoordinates, 0, flatCoordinates.length, 2);
const flatCoordinates = [0, 0, 3, 0, 0, 3, 5, 2];
const isClosed = _ol_geom_flat_topology_.lineStringIsClosed(flatCoordinates, 0, flatCoordinates.length, 2);
expect(isClosed).to.be(false);
});
it('identifies degenerate boundaries', function() {
var flatCoordinates = [0, 0, 3, 0, 0, 0];
var isClosed = _ol_geom_flat_topology_.lineStringIsClosed(flatCoordinates, 0, flatCoordinates.length, 2);
let flatCoordinates = [0, 0, 3, 0, 0, 0];
let isClosed = _ol_geom_flat_topology_.lineStringIsClosed(flatCoordinates, 0, flatCoordinates.length, 2);
expect(isClosed).to.be(false);
flatCoordinates = [0, 0, 1, 1, 3, 3, 5, 5, 0, 0];
+16 -16
View File
@@ -9,7 +9,7 @@ describe('ol.geom.flat.transform', function() {
it('transforms a Simple Geometry to 2D', function() {
var multiPolygonGeometry = new MultiPolygon([
const multiPolygonGeometry = new MultiPolygon([
[[[-80.736061, 28.788576000000006, 0],
[-80.763557, 28.821799999999996, 0],
[-80.817406, 28.895123999999996, 0],
@@ -26,13 +26,13 @@ describe('ol.geom.flat.transform', function() {
[-82.128838, 26.693342, 0],
[-82.102127, 26.585724, 0]]]
]).transform('EPSG:4326', 'EPSG:3857');
var transform = [
const transform = [
0.0004088332670837288, 0,
0, -0.0004088332670837288,
4480.991370439071, 1529.5752568707105
];
var pixelCoordinates = SimpleGeometry.transform2D(
multiPolygonGeometry, transform, []);
const pixelCoordinates = SimpleGeometry.transform2D(
multiPolygonGeometry, transform, []);
expect(pixelCoordinates[0]).to.roughlyEqual(806.6035275946265, 1e-9);
expect(pixelCoordinates[1]).to.roughlyEqual(160.48916296287916, 1e-9);
expect(pixelCoordinates[2]).to.roughlyEqual(805.3521540835154, 1e-9);
@@ -69,15 +69,15 @@ describe('ol.geom.flat.transform', function() {
describe('ol.geom.flat.transform.translate', function() {
it('translates the coordinates array', function() {
var multiPolygon = new MultiPolygon([
const multiPolygon = new MultiPolygon([
[[[0, 0, 2], [0, 1, 2], [1, 1, 2], [1, 0, 2], [0, 0, 2]]],
[[[2, 2, 3], [2, 3, 3], [3, 3, 3], [3, 2, 3], [2, 2, 3]]]]);
var flatCoordinates = multiPolygon.getFlatCoordinates();
var deltaX = 1;
var deltaY = 2;
const flatCoordinates = multiPolygon.getFlatCoordinates();
const deltaX = 1;
const deltaY = 2;
_ol_geom_flat_transform_.translate(flatCoordinates, 0,
flatCoordinates.length, multiPolygon.getStride(),
deltaX, deltaY, flatCoordinates);
flatCoordinates.length, multiPolygon.getStride(),
deltaX, deltaY, flatCoordinates);
expect(flatCoordinates).to.eql([
1, 2, 2, 1, 3, 2, 2, 3, 2, 2, 2, 2, 1, 2, 2,
3, 4, 3, 3, 5, 3, 4, 5, 3, 4, 4, 3, 3, 4, 3]);
@@ -86,15 +86,15 @@ describe('ol.geom.flat.transform', function() {
describe('ol.geom.flat.transform.rotate', function() {
it('rotates the coordinates array', function() {
var multiPolygon = new MultiPolygon([
const multiPolygon = new MultiPolygon([
[[[0, 0, 2], [0, 1, 2], [1, 1, 2], [1, 0, 2], [0, 0, 2]]],
[[[2, 2, 3], [2, 3, 3], [3, 3, 3], [3, 2, 3], [2, 2, 3]]]]);
var flatCoordinates = multiPolygon.getFlatCoordinates();
var angle = Math.PI / 2;
var anchor = [0, 1];
const flatCoordinates = multiPolygon.getFlatCoordinates();
const angle = Math.PI / 2;
const anchor = [0, 1];
_ol_geom_flat_transform_.rotate(flatCoordinates, 0,
flatCoordinates.length, multiPolygon.getStride(),
angle, anchor, flatCoordinates);
flatCoordinates.length, multiPolygon.getStride(),
angle, anchor, flatCoordinates);
expect(flatCoordinates[0]).to.roughlyEqual(1, 1e-9);
expect(flatCoordinates[1]).to.roughlyEqual(1, 1e-9);
expect(flatCoordinates[2]).to.roughlyEqual(2, 1e-9);