Package ch.swingfx.timer
Class AnimationTimer
java.lang.Object
ch.swingfx.timer.AnimationTimer
Class for simple animation. Example:
AnimationTimer at = new AnimationTimer(FrameRate.FPS_25);
at.setDuration(2500); // 2500 milliseconds
at.setAnimationTarget(new AnimationTarget() {
public void event(AnimationTimer timer, float fraction) {
// between begin and end.
// fraction represents the time passed (0f = 0%, 1f = 100%)
}
public void begin(AnimationTimer timer) {
// start of the animation
}
public void end(AnimationTimer timer) {
// end of the animation
}
});
at.start();
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interfaceUsed withAnimationTimer.setAnimationTarget().
Implement this interface to receive events from theAnimationTimerstatic enumFrame rates for theAnimationTimer
Note: These frame rates are approximations.private classHandles the calculation of the time that has elapsed since the start and sends it to theAnimationTimer.AnimationTarget -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate longStores the start time of the animation so we can calculate the fractionprivate AnimationTimer.AnimationTargetAnimation events get sent to this targetprivate longDuration of the animation in millisecondsprivate final TimerThe timer for the animation -
Constructor Summary
ConstructorsConstructorDescriptionCreates anAnimationTimerwith a default frame rate of 25Creates anAnimationTimerwith an specified frame rate -
Method Summary
Modifier and TypeMethodDescriptionvoidSet the animation targetvoidsetDuration(long duration) Set the duration of the animationvoidstart()Start the animationvoidstop()End the animation before duration has passed
-
Field Details
-
fTimer
The timer for the animation -
fAnimationTarget
Animation events get sent to this target -
fAnimationStartTime
private long fAnimationStartTimeStores the start time of the animation so we can calculate the fraction -
fDuration
private long fDurationDuration of the animation in milliseconds
-
-
Constructor Details
-
AnimationTimer
public AnimationTimer()Creates anAnimationTimerwith a default frame rate of 25 -
AnimationTimer
Creates anAnimationTimerwith an specified frame rate- Parameters:
fps-AnimationTimer.FrameRatewe want to use for thisAnimationTimer
-
-
Method Details
-
setDuration
public void setDuration(long duration) Set the duration of the animation- Parameters:
duration- the duration of the animation
-
start
public void start()Start the animation -
stop
public void stop()End the animation before duration has passed -
setAnimationTarget
Set the animation target- Parameters:
target- the animation target
-