Class Animation
java.lang.Object
de.pirckheimer_gymnasium.engine_pi.actor.Actor
de.pirckheimer_gymnasium.engine_pi.actor.Animation
- All Implemented Interfaces:
FrameUpdateListener,FrameUpdateListenerRegistration,KeyStrokeListenerRegistration,MouseClickListenerRegistration,MouseScrollListenerRegistration
Eine Animation ist ein
Actor-Objekt, das aus mehreren
Frames besteht.
Frames können auf verschiedene Arten aus Bilddateien eingeladen werden:
- Animierte GIFs
- Spritesheets
- Einzelne Bilddateien
- Author:
- Michael Andonie
-
Field Summary
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddOnCompleteListener(Runnable listener) Fügt einen Listener hinzu.static AnimationcreateFromAnimatedGif(String filepath, double width, double height) static AnimationcreateFromImages(double frameDuration, double width, double height, String... filepaths) static AnimationcreateFromImagesPrefix(double frameDuration, double width, double height, String directoryPath, String prefix) Lädt alle Bilddateien mit einem bestimmten Präfix in einem bestimmten Verzeichnis in eine Animation.static AnimationcreateFromSpritesheet(double frameDuration, String filepath, int x, int y, double width, double height) Gibt die Frames dieser Animation aus.doubleGibt die Höhe der Animation in Metern aus.doublegetWidth()Gibt die Breite der Animation in Metern aus.voidonFrameUpdate(double pastTime) Diese Methode wird bei einem (angemeldeten) Objekt bei jedem Einzelbild erneut aufgerufen.voidrender(Graphics2D g, double pixelPerMeter) Zeichnet die Figur an der Position(0|0)mit der Rotation0.Methods inherited from class de.pirckheimer_gymnasium.engine_pi.actor.Actor
addCollisionListener, addCollisionListener, addCollisionListener, addMountListener, addUnmountListener, animateOpacity, animateParticle, applyForce, applyForce, applyForce, applyImpulse, applyImpulse, applyImpulse, applyRotationImpulse, applyTorque, awake, contains, createDistanceJoint, createPrismaticJoint, createRevoluteJoint, createRopeJoint, createWeldJoint, getAngularDamping, getAngularVelocity, getBodyType, getCenter, getCenterRelative, getCollisions, getColor, getComplementaryColor, getDensity, getElasticity, getFrameUpdateListeners, getFriction, getGravityScale, getKeyStrokeListeners, getLayer, getLayerPosition, getLinearDamping, getListenerBundle, getMass, getMouseClickListeners, getMouseScrollListeners, getOpacity, getPhysicsHandler, getPosition, getPositionformatted, getRotation, getVelocity, getX, getY, isGrounded, isMounted, isRotationLocked, isVisible, makeDynamic, makeKinematic, makeParticle, makeSensor, makeStatic, moveBy, moveBy, overlaps, remove, removeMountListener, removeUnmountListener, renderBasic, resetMovement, rotateBy, setAngularDamping, setAngularVelocity, setBodyType, setCenter, setCenter, setColor, setColor, setDensity, setElasticity, setFixture, setFixtures, setFixtures, setFriction, setGravityScale, setLayerPosition, setLinearDamping, setOpacity, setPhysicsHandler, setPosition, setPosition, setRotation, setRotationLocked, setVelocity, setVisible, setX, setY, sleepMethods 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.event.FrameUpdateListenerRegistration
addFrameUpdateListener, defer, delay, removeFrameUpdateListener, repeat, repeat, repeat, repeat, repeatMethods 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
-
Animation
Copy-Konstruktor, damit Vererbung genutzt werden kann.- Parameters:
animation- Animation.
-
-
Method Details
-
getFrames
Gibt die Frames dieser Animation aus.- Returns:
- Die Frames dieser Animation.
-
getWidth
Gibt die Breite der Animation in Metern aus.- Returns:
- Die Breite der Animation in Pixel.
- See Also:
-
getHeight
Gibt die Höhe der Animation in Metern aus.- Returns:
- Die Höhe der Animation in Pixel
- See Also:
-
addOnCompleteListener
Fügt einen Listener hinzu. Dierun()-Methode wird immer wieder ausgeführt, sobald der letzte Zustand der Animation abgeschlossen wurde.- Parameters:
listener- Ein Runnable, dessen run-Methode ausgeführt werden soll, sobald die Animation abgeschlossen ist (wird ausgeführt, bevor der Loop von Vorne beginnt).
-
onFrameUpdate
Description copied from interface:FrameUpdateListenerDiese Methode wird bei einem (angemeldeten) Objekt bei jedem Einzelbild erneut aufgerufen.- Specified by:
onFrameUpdatein interfaceFrameUpdateListener- Parameters:
pastTime- Die Zeit in Sekunden, die seit der letzten Aktualisierung vergangen ist.
-
render
Zeichnet die Figur an der Position(0|0)mit der Rotation0.- Specified by:
renderin classActor- Parameters:
g- DasGraphics2D-Objekt, in das gezeichnet werden soll.pixelPerMeter- Gibt an, wie viele Pixel ein Meter misst.
-
createFromSpritesheet
-
createFromImages
-
createFromImagesPrefix
@API public static Animation createFromImagesPrefix(double frameDuration, double width, double height, String directoryPath, String prefix) Lädt alle Bilddateien mit einem bestimmten Präfix in einem bestimmten Verzeichnis in eine Animation.- Parameters:
frameDuration- Die Dauer (ms), die ein Frame aktiv bleibt.directoryPath- Der Pfad zum Verzeichnis, in dem die einzuladenden Bilder liegen.prefix- Das Pfad-Präfix. Diese Funktion sucht alle Dateien mit dem gegebenen Präfix (im angegebenen Ordner) und fügt sie in aufsteigender Reihenfolge der Animation hinzu.- Returns:
- Eine Animation aus allen Dateien, die mit dem Pfadpräfix beginnen.
-
createFromAnimatedGif
-