public final class KeyFrame
extends java.lang.Object
Timeline
.
The developer controls the interpolation of a set of variables for the
interval between successive key frames by providing a target value and an
Interpolator
associated with each variable. The variables are
interpolated such that they will reach their target value at the specified
time. An onFinished
function is invoked on each KeyFrame
if one
is provided. A KeyFrame
can optionally have a name
, which
will result in a cuepoint that is automatically added to the Timeline
.
Timeline
,
KeyValue
,
Interpolator
Modifier and Type | Field and Description |
---|---|
private static java.lang.String |
DEFAULT_NAME |
private static <any> |
DEFAULT_ON_FINISHED |
private java.lang.String |
name |
private <any> |
onFinished |
private Duration |
time |
private java.util.Set<KeyValue> |
values |
Constructor and Description |
---|
KeyFrame(Duration time,
<any> onFinished,
KeyValue... values)
Constructor of
KeyFrame |
KeyFrame(Duration time,
KeyValue... values)
Constructor of
KeyFrame |
KeyFrame(Duration time,
java.lang.String name,
<any> onFinished,
java.util.Collection<KeyValue> values)
Constructor of
KeyFrame |
KeyFrame(Duration time,
java.lang.String name,
<any> onFinished,
KeyValue... values)
Constructor of
KeyFrame |
KeyFrame(Duration time,
java.lang.String name,
KeyValue... values)
Constructor of
KeyFrame |
Modifier and Type | Method and Description |
---|---|
boolean |
equals(java.lang.Object obj)
Indicates whether some other object is "equal to" this one.
|
java.lang.String |
getName()
Returns the
name of this KeyFrame . |
<any> |
getOnFinished()
Returns the
onFinished event handler of this KeyFrame . |
Duration |
getTime()
Returns the time offset of this
KeyFrame . |
java.util.Set<KeyValue> |
getValues()
Returns an immutable
Set of KeyValue instances. |
int |
hashCode()
Returns a hash code for this
KeyFrame object. |
java.lang.String |
toString()
Returns a string representation of this
KeyFrame object. |
private static final <any> DEFAULT_ON_FINISHED
private static final java.lang.String DEFAULT_NAME
private final Duration time
private final java.util.Set<KeyValue> values
private final <any> onFinished
private final java.lang.String name
public KeyFrame(Duration time, java.lang.String name, <any> onFinished, java.util.Collection<KeyValue> values)
KeyFrame
If a passed in KeyValue
is null
or a duplicate, it will
be ignored.
public KeyFrame(Duration time, java.lang.String name, <any> onFinished, KeyValue... values)
KeyFrame
If a passed in KeyValue
is null
or a duplicate, it will
be ignored.
public KeyFrame(Duration time, <any> onFinished, KeyValue... values)
KeyFrame
public KeyFrame(Duration time, java.lang.String name, KeyValue... values)
KeyFrame
public Duration getTime()
KeyFrame
.
The returned javafx.util.Duration
defines the time offset within
a single cycle of a Timeline
at which the KeyValues
will be set and at which the onFinished
function
variable will be called.
The time
of a KeyFrame
has to be greater than or equal to
javafx.util.Duration#ZERO
and it cannot be
javafx.util.Duration#UNKNOWN
.
Note: While the unit of time
is a millisecond, the granularity
depends on the underlying operating system and will in general be larger.
For example animations on desktop systems usually run with a maximum of
60fps which gives a granularity of ~17 ms.
public java.util.Set<KeyValue> getValues()
Set
of KeyValue
instances.
A KeyValue
defines a target and the desired value that should be
interpolated at the specified time of this KeyFrame
.Set
of KeyValue
instancespublic <any> getOnFinished()
onFinished
event handler of this KeyFrame
.
The onFinished
event handler is a function that is called when
the elapsed time on a cycle passes the specified time of this
KeyFrame
. The onFinished
function variable will be called
if the elapsed time passes the indicated value, even if it never equaled
the time value exactly.onFinished
event handlerpublic java.lang.String getName()
name
of this KeyFrame
.
If a named KeyFrame
is added to a Timeline
, a cuepoint
with the name
and the time
of the KeyFrame
will
be added automatically. If the KeyFrame
is removed, the cuepoint
will also be removed.name
public java.lang.String toString()
KeyFrame
object.toString
in class java.lang.Object
public int hashCode()
KeyFrame
object.hashCode
in class java.lang.Object
public boolean equals(java.lang.Object obj)
KeyFrames
are considered equal, if their time
, onFinished
, and values
are equal.equals
in class java.lang.Object
true
if this is the same as obj, otherwise false