2016-08-05 24 views
1

我目前的代码需要在笛卡尔坐标系统上的X和Y位置并移动一个点。在Unity C中设置一个X位置和一个角度的点#

但是,我希望能够完成同样的动作,只有一个X位置和一个(Y)角度。

例如,如果代码取入(2,2),它将成功从(0,0,0)移动到(2,2,0)。我倾向于进入(2,45°)并将点移动到合适的位置。

现在我有一个想法,要做到这一点,我必须首先沿着X轴移动点。然后将它围绕(0,0,0)旋转45度,但是完成第二部分的过程已证明很难做,而且由于我缺乏正确的数学术语知识而难以进行研究。

任何援助将非常欢迎!

在此先感谢!

回答

1

你只需要处理直角三角形,你的任务是找到一个给定的角度和另一面的另一面。使用角度的cos和sin和x坐标来找到未知的边。 sin(角度)= y /矢量,cos(角度)= x /矢量。然后你可以用x,y来设定你的观点。

+0

太棒了!非常感谢你的解释。只是为了确保我是一个100%追随者,当你写“... y/vector)”时,你指的是points transform.position(Vector3)的y值吗?或者是明确地将y除以值? – VanDroid

+0

这里介绍的矢量变量用来找到已知x(在你的例子中为2)和角度(在你的例子中为45°)的y坐标,一旦你找到使用cos公式的矢量,你用sin替换vector并且得到y。设置你的新点位置,注意,当你找到y的前一个点+ y的y时(以你的例子为0 + 2) – Roman

+0

哦!我想我明白了,因为我有x作为已知值。我的Y点我会用公式y = 45°/ cos(2)? – VanDroid

相关问题