Class BallThrowDemo
java.lang.Object
de.pirckheimer_gymnasium.engine_pi.Scene
de.pirckheimer_gymnasium.engine_pi_demos.BallThrowDemo
- All Implemented Interfaces:
ActorAdder,CollisionListener<Actor>,FrameUpdateListenerRegistration,KeyStrokeListener,KeyStrokeListenerRegistration,MouseClickListenerRegistration,MouseScrollListenerRegistration
Eine einfache Demonstration der Engine-Physik durch eine
Ball-Wurf-Simulation. Es wird ein Ball (durch Wirkung eines Impulses)
geworfen.
Nutzung der Simulation
Die Simulation kann gesteuert werden durch:
- S-Key: Startet Simulation
- R-Key: Setzt Simulation zurück
- Die Keyn Z und U ändern den Zoom auf die Umgebung (rudimentär implementiert)
- D-Key: Toggelt den Debug-Modus (zeigt das Pixel-Raster)
Anpassung der Parameter
Die Simulation arbeitet mit einigen physikalischen Parametern, die sich ändern lassen. Folgende Parameter sind als Konstanten im Code definiert und können im angepasst werden:
DURCHMESSER: Der Durchmesser des Circlees (hat keinen Einfluss auf die Masse.HOEHE_UEBER_BODEN: Abstand zwischen dem untersten Punkt des Balls und dem BodenMASSE: Masse des BallsIMPULS: Impuls, der auf den Ball angewandt wird.WINKEL: Winkel, in dem der Impuls auf den Ball angewandt wird. 0° = parallel zum Boden, 90° = gerade nach oben
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic voidvoidWird bei jeder Kollision zwischen mit diesem Interface angemeldetenActor-Objekten aufgerufen.voidWird bei jedem Tastendruck ausgeführt.Methods inherited from class de.pirckheimer_gymnasium.engine_pi.Scene
add, addLayer, getBackgroundColor, getCamera, getFrameUpdateListeners, getGravity, getKeyStrokeListeners, getMainLayer, getMouseClickListeners, getMousePosition, getMouseScrollListeners, getScene, getVisibleArea, getWorldHandler, invokeFrameUpdateListeners, isPhysicsPaused, remove, removeLayer, render, setBackgroundColor, setBackgroundColor, setGravity, setGravity, setGravityOfEarth, setPhysicsPaused, stepMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface de.pirckheimer_gymnasium.engine_pi.actor.ActorAdder
addCircle, addCircle, addCircle, addCircle, addCircle, addHexagon, addHexagon, addHexagon, addHexagon, addHexagon, addImage, addImage, addPentagon, addPentagon, addPentagon, addRectangle, addRectangle, addRectangle, addRegularPolygon, addRegularPolygon, addRegularPolygon, addRegularPolygon, addText, addText, addText, addText, addTriangle, addTriangle, addTriangle, addTriangle, addTriangleMethods inherited from interface de.pirckheimer_gymnasium.engine_pi.event.CollisionListener
onCollisionEndMethods inherited from interface de.pirckheimer_gymnasium.engine_pi.event.FrameUpdateListenerRegistration
addFrameUpdateListener, defer, delay, removeFrameUpdateListener, repeat, repeat, repeat, repeat, repeatMethods inherited from interface de.pirckheimer_gymnasium.engine_pi.event.KeyStrokeListener
onKeyUpMethods inherited from interface de.pirckheimer_gymnasium.engine_pi.event.KeyStrokeListenerRegistration
addKeyStrokeListener, removeKeyStrokeListenerMethods inherited from interface de.pirckheimer_gymnasium.engine_pi.event.MouseClickListenerRegistration
addMouseClickListener, removeMouseClickListenerMethods inherited from interface de.pirckheimer_gymnasium.engine_pi.event.MouseScrollListenerRegistration
addMouseScrollListener, removeMouseScrollListener
-
Constructor Details
-
BallThrowDemo
public BallThrowDemo()
-
-
Method Details
-
onKeyDown
Wird bei jedem Tastendruck ausgeführt.- Specified by:
onKeyDownin interfaceKeyStrokeListener- Parameters:
e- KeyEvent
-
onCollision
Wird bei jeder Kollision zwischen mit diesem Interface angemeldetenActor-Objekten aufgerufen.- Specified by:
onCollisionin interfaceCollisionListener<Actor>
-
main
-