2011-11-23 61 views
0

我有2幅圖像,圖像A和圖像B.我想知道圖像A移動到B併發生碰撞時,如何檢測此圖像?兩幅圖像之間的碰撞檢測

這是我的代碼:

case MotionEvent.ACTION_MOVE: 
    builder.append("move, "); 
    if (mode == DRAG) 
    { 
     matrix.set(savedMatrix); 
     // create the transformation in the matrix of points 
     matrix.postTranslate(event.getX() - start.x, event.getY() - start.y); 

     builder.setLength(0); 
     builder.append(event.getX()); 
     builder.append("x , y "); 
     builder.append(event.getY()); 
     text = builder.toString(); 

     Log.d("TouchTest", text); 
     txtimage = (TextView)findViewById(R.id.txt); 
     txtimage.setText(text); 

     float aX = event.getX(); 
     float aY = event.getY(); 

     String a = Float.toString(aX); 
     String b = Float.toString(aY); 

     if (image.getWidth()/2 == image2.getWidth()/2 && 
      image.getHeight()/2 == image2.getHeight()/2) 
     { 
      Toast.makeText(Multi_touchActivity.this, "collision", 
          Toast.LENGTH_SHORT).show(); 
     }     
    } 

回答

3

你可以使用Rect相交的方法來檢查它們是否確實重疊(衝突)。

0

在大多數基於java的圖形引擎中都有一種命中測試方法,儘管你必須弄清楚這個代碼庫叫做什麼 - 在你的圖形庫上搜索命中測試