2015-08-03 111 views
0

我正在尋找使用多點幾何體來保存地圖上不同點的功能,但我需要將它們繞一個點旋轉。Openlayers 3旋轉多點幾何體

Openlayers 3是否有任何功能可以讓我採用多點並圍繞其中一個點旋轉它?

ol.coordinates.rotate()存在但不執行我需要的操作。

這是庫的一部分還是實現者的三角函數?

回答

0

我結束了創建multiplie ol.geom.Point對象,並使用下面的函數圍繞給定的點旋轉他們: -

rotateGeometry = function(pointLongitude, pointLatitude, originLongitude, originLatitude, angle) { 
    angle = angle * Math.PI/180.0; 
    return [Math.cos(angle) * (pointX - originX) - Math.sin(angle) * (pointY - originY) + originX, Math.sin(angle) * (pointX - originX) + Math.cos(angle) * (pointY - originY) + originY]; 
} 

在我的座標奏效餵養。對此的擴展可能是爲它提供多點幾何,帶有指定的軸點,並一次性使用此功能旋轉其周圍的所有其他幾何圖形。

哦,我不得不反向角度發送正確旋轉,但這可能是我的實現。

評論歡迎。