Class BeatFade
The element fades to a lower opacity while scaling down, then fades back in while
scaling up. This creates a subtle, attention-grabbing pulse that is softer than
Beat alone.
Usage:
// Default beat-fade animation
icon.animate(new BeatFade());
// Customize scale and opacity
icon.animate(new BeatFade().setScale(1.3f).setMinOpacity(0.2f));
- Since:
- 2026
- Version:
- 1.0
- Author:
- Marvin P. Warble Jr.
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionBeatFade()Constructs a BeatFade animation with default settings and speed 1 (1000ms). -
Method Summary
Modifier and TypeMethodDescriptionCreates the@keyframesdefinition for this animation.protected AnimationTimingFunctionReturns the default timing function for this animation.Returns the unique ID for this animation's keyframes style element.floatReturns the minimum opacity.floatgetScale()Returns the maximum scale factor.protected StringReturns the CSS timing function value as a string.setMinOpacity(float minOpacity) Sets the minimum opacity during the fade-out phase.setScale(float scale) Sets the maximum scale factor for the beat effect.Methods inherited from class com.oorian.css.animations.Animation
apply, getDurationMs, getStyleSheet, setDelay, setDirection, setDuration, setFillMode, setIterationCount, setSpeed
-
Constructor Details
-
BeatFade
public BeatFade()Constructs a BeatFade animation with default settings and speed 1 (1000ms).
-
-
Method Details
-
setScale
Sets the maximum scale factor for the beat effect.- Parameters:
scale- the scale factor at the peak (e.g., 1.125 for 112.5%)- Returns:
- this BeatFade for method chaining
-
getScale
public float getScale()Returns the maximum scale factor.- Returns:
- the scale factor
-
setMinOpacity
Sets the minimum opacity during the fade-out phase.- Parameters:
minOpacity- the minimum opacity (0.0 = transparent, 1.0 = opaque)- Returns:
- this BeatFade for method chaining
-
getMinOpacity
public float getMinOpacity()Returns the minimum opacity.- Returns:
- the minimum opacity value
-
getKeyFramesId
Returns the unique ID for this animation's keyframes style element.This ID is used to deduplicate keyframe injection into the page head. Subclasses with configurable keyframes (e.g., Beat with a custom scale) should return a unique ID per configuration to avoid collisions.
- Specified by:
getKeyFramesIdin classAnimation- Returns:
- the keyframes style element ID
-
createKeyFrames
Creates the@keyframesdefinition for this animation.- Specified by:
createKeyFramesin classAnimation- Returns:
- a KeyFrames object defining the animation sequence
-
getDefaultTimingFunction
Returns the default timing function for this animation.Each animation subclass provides its own default timing function. For custom cubic-bezier or steps timing, override
Animation.getTimingFunctionValue()instead.- Specified by:
getDefaultTimingFunctionin classAnimation- Returns:
- the default timing function, or null if
Animation.getTimingFunctionValue()provides a custom value
-
getTimingFunctionValue
Returns the CSS timing function value as a string.By default, delegates to
Animation.getDefaultTimingFunction(). Override this method to provide custom timing function values likecubic-bezier(...)orsteps(...)that are not represented by the enum.- Overrides:
getTimingFunctionValuein classAnimation- Returns:
- the CSS timing function value
-