Foros del Web » Programación para mayores de 30 ;) » Java »

hacer un circulo que no sea un cuadrado...

Estas en el tema de hacer un circulo que no sea un cuadrado... en el foro de Java en Foros del Web. muy buenas, quiero poder hacer un cirulo en java, he usado el codigo fillOval pero me encuentro con que aunque se vea un circulo en ...
  #1 (permalink)  
Antiguo 27/11/2014, 10:34
dr4
 
Fecha de Ingreso: noviembre-2014
Mensajes: 28
Antigüedad: 10 años, 1 mes
Puntos: 0
hacer un circulo que no sea un cuadrado...

muy buenas, quiero poder hacer un cirulo en java, he usado el codigo fillOval pero me encuentro con que aunque se vea un circulo en realidad es un cuadrado, las esquinas de ese cuadrado(que son invisibles) cuentan a la hora de hacer colisiones y demás (si pongo dos pelotas y chocan en diagonal se ve claramente como cuenta como colision aunque aún haya distancia entre ellas). me gustaría saber como hacer un circulo completo, si alguien me ayuda estaré muy agradecido
  #2 (permalink)  
Antiguo 02/12/2014, 01:09
 
Fecha de Ingreso: febrero-2005
Mensajes: 39
Antigüedad: 19 años, 10 meses
Puntos: 1
Respuesta: hacer un circulo que no sea un cuadrado...

Hazte una función de colisión tu mismo, la distancia entre el centro de dos circunferencias es raiz((x1-x2)^2+(y1-y2)^2) por tanto:

Si una esta en el punto (0,0) con radio 2 y la otra en el 2,2 con radio 1.
raiz((0-2)^2+(0-2)^2)=raiz(4+4)=raiz(8)=2,82

Como la distancia entre los centros es más pequeña que la suma de los radios (2+1=3) están en colisión.

Si cambiamos el radio de la primera por 1 nos quedaría la suma de los radios 1+1=2, y en este caso no estarían en colisión.

Espero que te sirva.

Saludos,
  #3 (permalink)  
Antiguo 12/12/2014, 06:41
dr4
 
Fecha de Ingreso: noviembre-2014
Mensajes: 28
Antigüedad: 10 años, 1 mes
Puntos: 0
Respuesta: hacer un circulo que no sea un cuadrado...

perdona por tardar en contestar, estuve unos días fuera por trabajo.

muchas gracias por la aclaración, efectivamente así puedo crear mi propia colisión entre circulos, lo que no sé ahora es como crear una colisión entre una forma circular y un rectángulo, porqué un cuadrado tiene la misma distancia entre el centro y cada uno de sus lados pero un rectángulo no. :(

Etiquetas: circulo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:09.