移动坐标远离中心点

时间:2013-06-04 11:34:27

标签: math geometry coordinates

我目前要做的是在屏幕上远离中心点展开一组点。我目前正在使用此代码(注意我已修改此代码以便更容易理解):

    #d_x - the x coordinate of the dot at its default position 
    #d_y - the y coordinate of the dot at its default position 
    #dis_x - the distance along the x grid the point is away from the centre point 
    #dis_y - the distance along the y grid the point is away from the centre point
    #zoom_level - the zoom level increased or decreased depending on the mouse wheel
z_x = (d_x + (dis_x * (1 + (zoom_level * 0.01))))
    z_y = (d_y + (dis_y * (1 + (zoom_level * 0.01))))
drawText("*",z_x,z_y,)

这个代码几乎是唯一的问题,当zoom_level为0时,点位于正确的位置但是当我增加缩放级别时,点会以错误的方向扩展而不是向外扩展远离中心点的行程相反的方式,朝着中心点行进。

有关如何解决此问题的任何建议将不胜感激。

[编辑] - 我没有说过这个但是每个点都在中心点周围的随机点上展开。

1 个答案:

答案 0 :(得分:1)

让我们的中心点有坐标(c_x,c_y)。然后(默认Zoom = 1)

z_x = c_x + (d_x - c_x) * Zoom
z_y = c_y + (d_y - c_y) * Zoom

示例:中心点(黑色)(2,2),点(蓝色)(3,3)和(0,1) zoom = 2:新点(红色)(4,4)和(-2,0) enter image description here