我正在开发一个操作GIS数据的程序,但是对于这个精确的问题,我试图在左下角旋转一个由4个点组成的矩形。我有1个元组来描述左下角:
x, y=40000,40000
我还有一个长度x,一个长度y,x_displacement
,和{
x_displacement=100
y_displacement=100
x = 40000
y = 40000
x1 = x
y1 = y + a.y_displacement
x2 = x + a.x_displacement
y2 = y + a.y_displacement
x3 = x + a.x_displacement
y3 = y
#describes the other 4 corners of the rectangle
Coord是一个包含x和y值的类。coords
是一个Coord类项的列表。在
我怀疑我做错了一些相对微不足道的事情,但我已经在这个问题上纠结了一段时间。 此代码生成一个新的矩形,该矩形要么变形,要么有负角,而不是按需要稍微左旋转角。 我在这里看到了很多关于旋转矩形的帖子,但是没有一个是直接复制的,因为它们不处理负角度。如果有人指点我会很感激的!在
正如一些评论者提到的,你是围绕(0,0)点旋转,而不是左下角。在构建坐标时,我们可以:
下面给出了一个使用普通列表而不是Coord对象的示例,但我确信这说明了这一点。在
作为一个额外的好处,这应该适用于相对于(0,0)定义的任何一组点,而不管它们是否形成任何合理的多边形。在
相关问题 更多 >
编程相关推荐