gpt4 book ai didi

python 将一个点逆时针旋转一个角度

转载 作者:太空宇宙 更新时间:2023-11-03 16:50:13 24 4
gpt4 key购买 nike

我有这个方法可以逆时针旋转一个点。

def rotate(self, rad):
self.x = math.cos(rad)*self.x - math.sin(rad)*self.y
self.y = math.sin(rad)*self.x + math.cos(rad)*self.y

但是当我传递一个点来旋转时,只有 x 坐标被正确旋转。例如,我尝试将点 (0,25) 旋转 π/3 。我应该得到(-22,13),因为我正在四舍五入答案。相反,我得到了 (-22,-6)。

最佳答案

这里的问题是,您保存了 self.x 的新值,并使用相同的值作为计算 self.y 的输入

试试这个:

def rotate(self, rad):
x = math.cos(rad)*self.x - math.sin(rad)*self.y
self.y = math.sin(rad)*self.x + math.cos(rad)*self.y
self.x = x

关于python 将一个点逆时针旋转一个角度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35905550/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com