如何解决围绕中心点旋转2d矩形仅返回两个正确的点!为什么?
我在wgs84中有4个坐标:
north=39.92911484169648
south=39.88787873513176
east=16.60177886077772
west=16.57366683077252
通过组合它们,我可以获得矩形(NW,NE,SW,SE)的形状和上述矩形的中心
39.90849678841412 16.587723359360467
我在stackoverflow上遵循了几个答案,将矩形转换为零,围绕中心逆时针旋转点70度,然后转换回原始坐标(全部在python中)。
def rotate(origin,point,angle):
"""
Rotate a point counterclockwise by a given angle around a given origin.
The angle should be given in radians.
"""
ox,oy = origin
px,py = point
qx = ox + cos(angle) * (px - ox) - sin(angle) * (py - oy)
qy = oy + sin(angle) * (px - ox) + cos(angle) * (py - oy)
return qx,qy
当我打印回旋转的点时,由于某种原因,我只能正确地获得NE和SW。我不明白原因。我附加了一个图像以使其更清晰,其中白色矩形是由初始值构成的,红色是由旋转坐标构成的,而绿色是预期的结果。
非常感谢
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。