From b073e583c0f35d1676c8f8fc4e786925ef58123d Mon Sep 17 00:00:00 2001 From: Hsieh Chin Fan Date: Sat, 5 Oct 2024 17:00:12 +0800 Subject: feat: add menu items for map managing --- src/MenuItem.mjs | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) (limited to 'src/MenuItem.mjs') diff --git a/src/MenuItem.mjs b/src/MenuItem.mjs index dbe984f..138b317 100644 --- a/src/MenuItem.mjs +++ b/src/MenuItem.mjs @@ -343,8 +343,30 @@ export const toggleMapFocus = map => onclick: () => map.classList.toggle('focus') }) +/** + * getCoordinatesByPixels. + * + * @param {HTMLElement} map instance + * @param {Number[]} xy -- pixel of window + */ export const getCoordinatesByPixels = (map, xy) => new Item({ text: 'Get Coordinates', - onclick: () => console.log(map.renderer.unproject(xy)) + onclick: () => { + const [x, y] = map.renderer.unproject(xy) + const xyString = `[${x.toFixed(7)}, ${y.toFixed(7)}]` + navigator.clipboard.writeText(xyString) + window.alert(`${xyString} copied to clipboard`) + } + }) + +/** + * restoreCamera. + * + * @param {HTMLElement} map + */ +export const restoreCamera = map => + new Item({ + text: 'Restore Camera', + onclick: () => map.renderer.restoreCamera() }) -- cgit v1.2.3-70-g09d2