mirror of
https://github.com/netbymatt/ws4kp.git
synced 2026-04-17 09:09:30 -07:00
radar expanded, to do fix number of tiles
This commit is contained in:
@@ -1,4 +1,6 @@
|
||||
import { TILE_SIZE, TILE_FULL_SIZE } from './radar-constants.mjs';
|
||||
import {
|
||||
TILE_SIZE, TILE_FULL_SIZE, RADAR_OFFSET, RADAR_SHIFT,
|
||||
} from './radar-constants.mjs';
|
||||
|
||||
// limit a value to within a range
|
||||
const coerce = (low, value, high) => Math.max(Math.min(value, high), low);
|
||||
@@ -9,16 +11,16 @@ const getXYFromLatitudeLongitudeMap = (pos) => {
|
||||
// 589 466 -122.3615246 47.63177832
|
||||
// 5288 3638 -80.18297384 25.77018996
|
||||
|
||||
// map position is calculated as a regresion from the above values (=/- a manual adjustment factor)
|
||||
// map position is calculated as a regresion from the above values (+/- a manual adjustment factor) and shifting for enhanced views
|
||||
// then shifted by half of the tile size (to center the map)
|
||||
// then they are limited to values between 0 and the width or height of the map
|
||||
const y = coerce(0, (-145.095 * pos.latitude + 7377.117) - 27 - (TILE_SIZE.y / 2), TILE_FULL_SIZE.y - (TILE_SIZE.y));
|
||||
const x = coerce(0, (111.407 * pos.longitude + 14220.972) + 4 - (TILE_SIZE.x / 2), TILE_FULL_SIZE.x - (TILE_SIZE.x));
|
||||
const y = coerce(0, (-145.095 * pos.latitude + 7377.117) - 27 - (TILE_SIZE.y / 2) - RADAR_SHIFT().y, TILE_FULL_SIZE.y - (TILE_SIZE.y));
|
||||
const x = coerce(0, (111.407 * pos.longitude + 14220.972) + 4 - (TILE_SIZE.x / 2) - RADAR_SHIFT().x, TILE_FULL_SIZE.x - (TILE_SIZE.x));
|
||||
|
||||
return { x, y };
|
||||
};
|
||||
|
||||
const getXYFromLatitudeLongitudeDoppler = (pos, offsetX, offsetY) => {
|
||||
const getXYFromLatitudeLongitudeDoppler = (pos) => {
|
||||
const imgHeight = 6000;
|
||||
const imgWidth = 2800;
|
||||
|
||||
@@ -26,8 +28,8 @@ const getXYFromLatitudeLongitudeDoppler = (pos, offsetX, offsetY) => {
|
||||
// then shifted by half of the tile size (to center the map)
|
||||
// then they are limited to values between 0 and the width or height of the map
|
||||
|
||||
const y = coerce(0, (51 - pos.latitude) * 61.4481 - offsetY, imgHeight);
|
||||
const x = coerce(0, ((-129.138 - pos.longitude) * 42.1768) * -1 - offsetX, imgWidth);
|
||||
const y = coerce(0, (51 - pos.latitude) * 61.4481 - RADAR_OFFSET().y, imgHeight);
|
||||
const x = coerce(0, ((-129.138 - pos.longitude) * 42.1768) * -1 - RADAR_OFFSET().x, imgWidth);
|
||||
|
||||
return { x: x * 2, y: y * 2 };
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user