java中两个图像之间的碰撞检测

时间:2016-04-01 23:09:42

标签: java

我需要知道火箭何时击中流星,img2是流星而img是火箭

g.drawImage(img, posX - img.getWidth(this)/2, posY - img.getHeight(this), this);
        g.drawImage(img2,posX1 - img2.getWidth(this), posY1 - img2.getHeight(this),this);
        System.out.println(posY-img.getWidth(this));
        System.out.println(posY1);
      }
      public void colid (){
        if (posY1+img.getWidth(this)>= posY-img2.getWidth(this) ){

            System.out.println("teste");
        }

2 个答案:

答案 0 :(得分:0)

您可以为火箭或流星等每个对象创建Rectangle

并且可以使用

的Rectangle方法
doctype html
html
  head
    meta(charset='utf-8')
    title notyet
    link(href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css", rel="stylesheet", integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7", crossorigin="anonymous")
  body(id="page-top" class="index")
    //navigation
    nav(class="navbar navbar-default navbar-fixed-top")
      div(class="container")
        //brand and toggle get grouped for better mobile display
        div(class="navbar-header page-scroll")
          button(type="button" class="navbar-toggle" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1")
          a(class="navbar-brand" href="#")Home
        div(class="collapse navbar-collapse" id="bs-example-navbar-collapse-1")
          ul(class="nav navbar-nav navbar-right")
            li(class="hidden")
              a(href="#page-top")
            li(class="page-scroll")
              a(href="#")1
            li(class="page-scroll")
              a(href="#")2

所以你可以检查

//setting environment
var http = require('http');
var express = require('express');
var app = express();
var fs = require('fs');
var bodyParser = require('body-parser');
app.set('view engine', 'jade');
app.set('views','views_files');
app.locals.pretty = true;
app.use(bodyParser.urlencoded({extended: false}));

//code
app.get('/', function(req,res){
  res.render('index')
});

//listen server
app.listen(3000, function(req, res){
  console.log('we are connecting at port 3000');
});

答案 1 :(得分:0)

这应该这样做

        Rectangle r1 = new Rectangle(posX - img.getWidth(this)/2, posY - img.getHeight(this), img.getWidth(this), img.getHeight(this));
        Rectangle r2 = new Rectangle(posX1 - img2.getWidth(this), posY1 - img2.getHeight(this), img2.getWidth(this), img2.getHeight(this));

        boolean collision = r1.intersects(r2);

注意:您在第一张图像中将宽度除以2而不是第二张图像。也许它应该是它应该是但只是想让你知道它是不是。