import { roundNumber } from "../../utils/utils.js";
import { convertDecimalDegreeToDegreeMinutes } from "./convertDecimalDegreeToDegreeMinutes.js";
/**
* Format lat/lng to a readable string with decimal degrees
*
* @param {number} lat
* @param {number} lng
* @returns {string} formatted lat/lng
* @memberof vef.map.utils
*/
export function formatLatLng(lat, lng, mode) {
if (mode == "degreeminutes") {
const latDms = convertDecimalDegreeToDegreeMinutes(lat, true);
const readableLat = `${latDms.degree}° ${latDms.minutes}' ${latDms.seconds}" ${latDms.orientation}`;
const longDms = convertDecimalDegreeToDegreeMinutes(lng, false);
const readableLong = `${longDms.degree}° ${longDms.minutes}' ${longDms.seconds}" ${longDms.orientation}`;
return readableLat + ", " + readableLong;
} else {
lat = roundNumber(Math.abs(lat), 2, true) + ((lat < 0) ? "° S" : "° N");
lng = roundNumber(Math.abs(lng), 2, true) + ((lng < 0) ? "° W" : "° E");
return `${lat}, ${lng}`;
}
}