我从下面的帖子中获得了代码
Google Maps API rotate Rectangle
在X - > Y或Y - > X方向上旋转多边形的工作非常精细。请参见下图。
我为我的英语道歉以解释这个问题。我对此表示感谢。
答案 0 :(得分:1)
以下示例演示了如何轮换polygon。 从矩形对象创建多边形并将其显示在地图上而不是矩形。 旋转多边形。
检查有关代码段的SO文档的调查结果
小提琴 - https://jsfiddle.net/vo0yzp2t/1/
function rotatePolygon(polygon,angle) {
var map = polygon.getMap();
var prj = map.getProjection();
var origin = prj.fromLatLngToPoint(polygon.getPath().getAt(0)); //rotate around first point
var coords = polygon.getPath().getArray().map(function(latLng){
var point = prj.fromLatLngToPoint(latLng);
var rotatedLatLng = prj.fromPointToLatLng(rotatePoint(point,origin,angle));
return {lat: rotatedLatLng.lat(), lng: rotatedLatLng.lng()};
});
polygon.setPath(coords);
}
您还可以参考When I rotate a rectangle, it's no longer rectangular。