java - 如何设置BoundingRectangle位置

标签 java libgdx position bounding-box

我尝试设置边界矩形位置。

spr.getBoundingRectangle().setPosition(100,100);
Sytem.out.println(spr.getBoundingRectangle.getX() + " " + spr.getBoundingRectangle.getX());
// and the output is always 0,0(position)

我还尝试在条件== true时设置它的位置

if(justTouched == true){
     spr.getBoundingRectangle().setPosition(100,100);
    Sytem.out.println(spr.getBoundingRectangle.getX() + " " + spr.getBoundingRectangle.getX());
}// but the result is the same

最佳答案

边界 Rectangle当您调用 getBoundingRectangle() 时生成和/或更新。这意味着您没有使用 Rectangle 的 setX 或 setY 来修改 Sprite 顶点。类(class)。而是使用Sprite.setPosition(x,y);以这种方式移动 Sprite 会移动边界矩形。

还有以下方法可以更改 Sprite 的边界矩形(不要将此 setX 和 setY 与 Rectangle 类 setX 和 setY 混淆,这个方法会修改 Sprite 的顶点):

setX(x)
setY(y)
setBounds(x,y,width,height)
setSize(width,height)
translate(diffX,diffY)
translateX(diffX)
translateY(diffY)

最适合您的问题的方式如下。

spr.setPosition(100,100);
Rectangle sprBounds = spr.getBoundingRectangle();
Sytem.out.println(sprBounds.getX() + " " + sprBounds.getY());

关于java - 如何设置BoundingRectangle位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32934576/

相关文章:

java - 有没有办法使用 libgdx 一次加载整个目录?

java - 如何使用 libGDX 中的 I18NBundle 更改游戏中的语言?

Java:确定CSV文件中值的位置

css - 位置: fixed is applied?时是否可以保持父元素的宽度

java - 查找employeeID属性中具有特定值的用户

java - 在谷歌应用程序引擎上使用java将html转换为图像

Java util.Timer,如何重置?

java - 尝试使用 PowerMock 模拟静态系统类会给出 VerifyError

java - 如何在 Android 上的 AIDE 中运行基于 gradle 的 Libgdx eclipse 项目?

asp.net - Header Div位置根据Content Div编辑