Java 通过libGDX中的控制棒(触摸板)旋转播放器

Java 通过libGDX中的控制棒(触摸板)旋转播放器,java,android,math,libgdx,Java,Android,Math,Libgdx,在我的libGDX项目中,我想用触摸板在屏幕上移动一个播放器。这已经奏效了。 现在我想让玩家的脸朝着他移动的方向旋转。 我已经用这段代码试过了,但我并没有真正起作用 double degree; degree = Math.tan(touchpad.getKnobPercentX()/touchpad.getKnobPercentY()); playerSprite.setRotation((float) degree); 我希望你能帮助我,在我问这个问题之前,我已经在谷歌上搜索了大约1个

在我的libGDX项目中,我想用触摸板在屏幕上移动一个播放器。这已经奏效了。 现在我想让玩家的脸朝着他移动的方向旋转。 我已经用这段代码试过了,但我并没有真正起作用

double degree;

degree = Math.tan(touchpad.getKnobPercentX()/touchpad.getKnobPercentY());

playerSprite.setRotation((float) degree);

我希望你能帮助我,在我问这个问题之前,我已经在谷歌上搜索了大约1个小时,所以不要告诉我去谷歌

您可能希望使用atany/x函数或更好的atan2y,x函数来获取角度。检查文档,您可以从中获得以弧度为单位的结果,并期望输入以度为单位

tan将以弧度表示的角度转换为切线值,即角度的坡度

phi=atany/x是弧棕褐色,几个世纪前写为argy/x=tanphi。对于相反的角度,它会给出相同的结果,因此必须对右象限进行校正

phi=atan2y,x已经执行该校正