我想将精灵的P2体力更新为等于给定方向的常数值。使用极坐标,这很容易:我只是将幅度和方向设置为我想要的。但是,对于相位器点,直接设置点坐标(Phaser.Point#set)的唯一功能似乎只支持笛卡尔坐标。
有没有一种简单的方法可以将Phaser点设置为一组极坐标,而无需自己从极坐标转换为笛卡尔坐标?
答案 0 :(得分:0)
鉴于此任务不幸缺少构造函数,请使用setMagnitude()和rotate()的组合。作为一方,我建议编写一个实用程序方法为您执行此操作,因此每次要使用极坐标实例化Point时,只需要(单个)简单调用。
function pointFromPolar(r, t, degrees) {
return new Phaser.Point(1,0).setMagnitude(r).rotate(0,0,t,degrees);
}
r
是幅度,t
是弧度角。如果degrees
为真,t
实际上是度数。