java无法获取Rect。相交(rec,rec2)工作
由于某种原因,我的程序无法通过Rect.intersects(re,hitcore)
。如果我使用System.out.println()re.flattenToString()
,我看到两个矩形相交,但它不会return true
我也尝试过使用re.intersect(hitcore)
,但仍然没有。帮忙
import 安卓.graphics.Rect;
public class Enemy {
public Rect re, hitCore;
private boolean hit = false;
public Enemy() {
re = new Rect(0, 0, 0, 0);
hitCore = new Rect(0, 0, 0, 0);
}
public void update() {
re.set(centerX + leftX, centerY + topY, rightX, botY); // these are set by another class
hitCore.set(ship.getCenterX() + 3, ship.getCenterY() + 10, 93, 20);
//System.out.println(re.flattenToString() + " rect1");
//System.out.println(hitCore.flattenToString() + " rect2");
checkHit(hitCore);
}
private void checkHit(Rect hitCore) {
if (Rect.intersects(hitCore, re)) {
hit = true;
}
}
}
# 1 楼答案
我想出来了。我用x,y和宽度,高度来设置矩形。实际参数是左上角坐标和右下角坐标