gpt4 book ai didi

iphone - 绕中心点旋转物体

转载 作者:搜寻专家 更新时间:2023-11-01 09:17:06 25 4
gpt4 key购买 nike

我正在尝试围绕一个中心点绕一个物体运行,就像太阳和我们的行星一样。但是我一点运气都没有。任何帮助都会很棒。谢谢。我在 luna 中写作,我不认为这里有一个类别,但这可能只是通用代码。但如果放错了地方,我深表歉意。

local function animate(event)

local rads = degrees * (Math.PI / 180);
ballOne.x = 20 * Math.cos(rad);
ballOne.y = 20 * Math.sin(rad);
degrees = degrees + 1

end

Runtime:addEventListener("enterFrame", animate)

最佳答案

您可以尝试 20.0 和 180.0 强制它们为 float ,否则您的计算可能最终是整数,这将无法正常工作,否则一切似乎都很好。

我还建议为此进行一两次单元测试。如果你传入 0、90、180 和 260,你应该得到偶数(+/- 20,0 或 0,20)。这将帮助您调整它并让您相信结果。

-- 编辑--写了一个常规版本的程序,因为我不认识你的很多代码。发现 rad vs rads 有问题(在评论中提到)。这是您的算法的常规转储:

float degrees=0.0
float rads = degrees * (Math.PI / 180.0);
float x = 20.0 * Math.cos(rads);
float y = 20.0 * Math.sin(rads);
degrees = degrees + 1
println x
println y

这行得通。我所说的单元测试的意思是,你可以设置一些东西,用“0.0”度调用你的方法,并确保输出的 x 为 20.0,y 为 0.0,然后用 90 调用它,你应该得到 0,20(实际上你可能会得到一个轻微的浮点错误,只需测试一下 x 是否小于 .001 或其他东西)

如果您使用 google 批准的框架来开发这些应用程序,我 100% 肯定会有一些“官方”方法来进行单元测试,我强烈建议您研究一下,尤其是动态语言单元测试可以是绝对关键的。

单元测试最重要的部分之一是您可以在开发环境中通过一次触摸来运行它们。这可确保无论您添加什么代码,以前可以正常工作的所有内容仍然可以正常工作。它可以让您有信心去重构现有代码,而不必担心破坏您甚至不知道交互的东西。

大多数使用动态语言的人都认为单元测试是绝对必要的,即使在静态类型语言中,随着项目规模的增长,单元测试也非常重要。

关于iphone - 绕中心点旋转物体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3859793/

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