diff --git a/src/Tools/proj.js b/src/Tools/proj.js index 90d6b24..2de7d9d 100644 --- a/src/Tools/proj.js +++ b/src/Tools/proj.js @@ -1021,18 +1021,26 @@ class Proj { function tenToThePowerOfN(n) { return Math.pow(10, n); } + let isF = false + if(degrees<0) { + isF = true + } + degrees = Math.abs(degrees) let d = Math.floor(degrees); // 获取整度 let pow1 = tenToThePowerOfN(getDecimalPlaces(degrees)) let x = Math.floor((degrees - d) * pow1 * 60) / pow1; // 获取秒(3600分之一度) let m = Math.floor(x); + if(isF) { + d = -d + } let pow = tenToThePowerOfN(getDecimalPlaces(x)) let s = Math.floor((x - m) * pow) / pow * 60; // 获取秒(3600分之一度) if (isDM) { - return d + "°" + Number(x.toFixed(4)) + "'"; // 返回度分格式 + return d + "°" + (Math.floor(x * 10000) / 10000) + "'"; // 返回度分格式 } else { - return d + "°" + m + "'" + s.toFixed(2) + '"'; // 返回度分秒格式 + return d + "°" + m + "'" + Math.floor(s * 100) / 100 + '"'; // 返回度分秒格式 } }