JS計算三個坐標點的夾角


先計算兩個線段的弧度 再乘以180/π 得到兩個點到中間點的夾角角度

function getAngle(pointA, pointB, pointC) {
        const ABX = pointA.longitude - pointB.longitude; const ABY = pointA.latitude - pointB.latitude; const CBX = pointC.longitude - pointB.longitude; const CBY = pointC.latitude - pointB.latitude; const AB_MUL_CB = ABX * CBX + ABY * CBY; const DIST_AB = Math.sqrt(ABX*ABX+ABY*ABY) const DIST_CB = Math.sqrt(CBX*CBX+CBY*CBY) const cosValue = AB_MUL_CB/(DIST_AB*DIST_CB); return Math.acos(cosValue)*180/Math.PI;  } //90度 console.log(getAngle({longitude:116.379817,latitude:39.930138},{longitude:116.3805,latitude:39.91333},{longitude:116.398035,latitude:39.913856}))


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM