Package j2d
Class GuiaObjeto
java.lang.Object
j2d.GuiaObjeto
Permite guiar un objeto siguiendo una trayectoria. Cada
JObjeto
tiene un GuiaObjeto asociado.
La trayectoria es un conjunto de puntos por los que debe pasar el centro del objeto.
Esta clase es parte de j2d.
-
Method Summary
Modifier and TypeMethodDescriptionvoiddirigeAPunto(Point destino, float velMx) Dirige el objeto en linea recta hacia el punto destino con la velocidad indicada.voiddirigeAPuntoEvitandoRect(Point destino, Rectangle rectObstaculo, float velMx) Hace que el objeto siga una trayectoria hacia el punto destino de forma que su colisionador esquive el obstaculo.voiddirigeAPuntoEvitandoRectSiNecesario(Point destino, Rectangle rectObstaculo, float velMx) Hace que el objeto siga una trayectoria hacia el punto destino de forma que su colisionador esquive el obstaculo.booleanRetorna si se esta siguiendo una trayectoria en este momento.voidFinaliza el seguimiento de la trayectoria.intRetorna el punto alcanzado en el ultimo ciclo.Retorna el punto destino actual de la trayectoria que esta siendo seguida por el objeto.Retorna el ultimo punto de la trayectoria que esta siendo seguida por el objeto.voidsigueTrayectoria(Point[] puntos, float velMx) Inicia el desplazamiento del objeto asociado por la trayectoria.booleanIndica si se ha alcanzado el punto final de la trayectoria en el ultimo ciclo.
-
Method Details
-
sigueTrayectoria
Inicia el desplazamiento del objeto asociado por la trayectoria.- Parameters:
puntos- trayectoria que sigue el centro del objeto.velMx- modulo de la velocidad maxima de desplazamiento por la trayectoria.
-
dirigeAPunto
Dirige el objeto en linea recta hacia el punto destino con la velocidad indicada.- Parameters:
destino- punto de destino.velMx- modulo de la velocidad maxima de desplazamiento por la trayectoria.
-
dirigeAPuntoEvitandoRect
Hace que el objeto siga una trayectoria hacia el punto destino de forma que su colisionador esquive el obstaculo. Para ser usada cuando se esta seguro de que el obstaculo esta en la trayectoria (por ejemplo despues de una colision). Si no se sabe si el obstaculo esta en la trayectoria usardirigeAPuntoEvitandoRectSiNecesario(Point, Rectangle, float).- Parameters:
destino- punto destino.rectObstaculo- area que se desea esquivar.velMx- modulo de la velocidad maxima de desplazamiento por la trayectoria.
-
dirigeAPuntoEvitandoRectSiNecesario
public void dirigeAPuntoEvitandoRectSiNecesario(Point destino, Rectangle rectObstaculo, float velMx) Hace que el objeto siga una trayectoria hacia el punto destino de forma que su colisionador esquive el obstaculo. Para ser usada si no se sabe si el obstaculo esta en la trayectoria. Si se sabe que el obstaculo esta en la trayectoria es mejor usardirigeAPuntoEvitandoRect(Point, Rectangle, float).- Parameters:
destino- punto destino.rectObstaculo- area que se desea esquivar.velMx- modulo de la velocidad maxima de desplazamiento por la trayectoria.
-
trayectoriaFinalizadaEnCiclo
public boolean trayectoriaFinalizadaEnCiclo()Indica si se ha alcanzado el punto final de la trayectoria en el ultimo ciclo.- Returns:
- si se ha alcanzado el punto final de la trayectoria en el ultimo ciclo.
-
puntoAlcanzadoEnCiclo
public int puntoAlcanzadoEnCiclo()Retorna el punto alcanzado en el ultimo ciclo.- Returns:
- el punto alcanzado en el ultimo ciclo o -1 si en el ultimo ciclo no se alcanzo ningun punto.
-
puntoDestinoActual
Retorna el punto destino actual de la trayectoria que esta siendo seguida por el objeto.- Returns:
- el punto destino actual de la trayectoria seguida por el objeto o null si no se esta siguiendo ninguna trayectoria en este momento.
-
puntoDestinoFinal
Retorna el ultimo punto de la trayectoria que esta siendo seguida por el objeto.- Returns:
- el ultimo punto de la trayectoria seguida por el objeto o null si no se esta siguiendo ninguna trayectoria en este momento.
-
finalizaSeguimiento
public void finalizaSeguimiento()Finaliza el seguimiento de la trayectoria. Si no se estaba siguiendo ninguna trayectoria, este metodo no hace nada. -
estaSiguiendoTrayectoria
public boolean estaSiguiendoTrayectoria()Retorna si se esta siguiendo una trayectoria en este momento.- Returns:
- si se esta siguiendo una trayectoria en este momento.
-