Colisiones en Java
Publicado por José (1 intervención) el 11/10/2008 02:09:56
antes que nada hola a todos. Bueno ahora paso a contarles que es lo que me esta pasando. Estoy haciendo un programita donde quiero que un pelota rebote con un rectangulo que también esta en moviemiento(todo lo del movimiento ya esta hecho, al igual que los rebotes con las paredes). si alguien me lo pudiese explicar o conoce alguna pagina que habla de eso agradeceria que me lo dijiera porque yo no encontre.
Mas o menos para que se hagan una idea de lo que hay hecho es: hice el
paint(Graphics g){
super(g);
dibujarRectrangulo(g);
dibujarOvalo(g);
}
y esos dos metodos, que estan en dos clases diferentes, son los encargados de dibujar las cosas con g.fillOval(...) y g.fillRect(...)
y los metodos que mueven la cosas, como el ovalo por ejemplo, es:
mover(){
if((x == 0 || x >= (v.getWidth()-20)))
dx= -dx;
if(y <= 23 || y >= (v.getHeight()-20))
dy= -dy;
Rectangle r= Rectangulos.getRec();
x+=+dx;
y+=+dy;
v.repaint();
}
donde "v" es una clase que extiende de JFrame y seria el main también.
Bueno como dije querria hacer que la pelota rebote en el rectangulo cuando corresponda y no lo traspase, como me esta sucediendo. Desde ya muchas gracias
Mas o menos para que se hagan una idea de lo que hay hecho es: hice el
paint(Graphics g){
super(g);
dibujarRectrangulo(g);
dibujarOvalo(g);
}
y esos dos metodos, que estan en dos clases diferentes, son los encargados de dibujar las cosas con g.fillOval(...) y g.fillRect(...)
y los metodos que mueven la cosas, como el ovalo por ejemplo, es:
mover(){
if((x == 0 || x >= (v.getWidth()-20)))
dx= -dx;
if(y <= 23 || y >= (v.getHeight()-20))
dy= -dy;
Rectangle r= Rectangulos.getRec();
x+=+dx;
y+=+dy;
v.repaint();
}
donde "v" es una clase que extiende de JFrame y seria el main también.
Bueno como dije querria hacer que la pelota rebote en el rectangulo cuando corresponda y no lo traspase, como me esta sucediendo. Desde ya muchas gracias
Valora esta pregunta


0