mirror of
https://github.com/openglobus/openglobus.git
synced 2025-12-08 19:25:27 +00:00
Added a test fot get extent by tile index
This commit is contained in:
parent
7984080847
commit
c5b9e94371
@ -1,4 +1,5 @@
|
||||
import { Extent } from "../src/og/Extent";
|
||||
import * as mercator from "../src/og/mercator";
|
||||
|
||||
test("Testing Extent", () => {
|
||||
const extent = new Extent();
|
||||
@ -7,4 +8,45 @@ test("Testing Extent", () => {
|
||||
Extent.NORTH_POLE_DEG;
|
||||
Extent.SOUTH_POLE_DEG;
|
||||
expect(extent).toBeTruthy();
|
||||
|
||||
});
|
||||
|
||||
test("Testing Extent fromTile", () => {
|
||||
|
||||
function getTileX(extent) {
|
||||
return Math.round(
|
||||
Math.abs(-mercator.POLE - extent.southWest.lon) / (extent.northEast.lon - extent.southWest.lon)
|
||||
);
|
||||
}
|
||||
|
||||
function getTileY(extent) {
|
||||
return Math.round(
|
||||
Math.abs(mercator.POLE - extent.northEast.lat) / (extent.northEast.lat - extent.southWest.lat)
|
||||
);
|
||||
}
|
||||
|
||||
function doTest(x, y, z) {
|
||||
|
||||
let srcX = x,
|
||||
srcY = y,
|
||||
srcZ = z;
|
||||
|
||||
let ext = Extent.fromTile(srcX, srcY, srcZ);
|
||||
|
||||
let resX = getTileX(ext),
|
||||
resY = getTileY(ext);
|
||||
|
||||
expect(resX).toStrictEqual(srcX);
|
||||
expect(resY).toStrictEqual(srcY);
|
||||
}
|
||||
|
||||
|
||||
for (let z = 0; z < 5; z++) {
|
||||
let size = Math.pow(2, z);
|
||||
for (let x = 0; x < size; x++) {
|
||||
for (let y = 0; y < size; y++) {
|
||||
doTest(x, y, z);
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user