Search in sources :

Example 1 with SequentialTransition

use of javafx.animation.SequentialTransition in project fx2048 by brunoborges.

the class GameManager method animateMergedTile.

/**
     * Animation that creates a pop effect when two tiles merge
     * by increasing the tile scale to 120% at the middle, and then going back to 100% 
     * @param tile to be animated
     * @return a sequential transition 
     */
private SequentialTransition animateMergedTile(Tile tile) {
    final ScaleTransition scale0 = new ScaleTransition(ANIMATION_MERGED_TILE, tile);
    scale0.setToX(1.2);
    scale0.setToY(1.2);
    scale0.setInterpolator(Interpolator.EASE_IN);
    final ScaleTransition scale1 = new ScaleTransition(ANIMATION_MERGED_TILE, tile);
    scale1.setToX(1.0);
    scale1.setToY(1.0);
    scale1.setInterpolator(Interpolator.EASE_OUT);
    return new SequentialTransition(scale0, scale1);
}
Also used : SequentialTransition(javafx.animation.SequentialTransition) ScaleTransition(javafx.animation.ScaleTransition)

Example 2 with SequentialTransition

use of javafx.animation.SequentialTransition in project Board-Instrumentation-Framework by intel.

the class RadialBargraphSkin method fadeBackToInteractive.

private void fadeBackToInteractive() {
    FadeTransition fadeUnitOut = new FadeTransition(Duration.millis(425), unit);
    fadeUnitOut.setFromValue(1.0);
    fadeUnitOut.setToValue(0.0);
    FadeTransition fadeValueOut = new FadeTransition(Duration.millis(425), value);
    fadeValueOut.setFromValue(1.0);
    fadeValueOut.setToValue(0.0);
    PauseTransition pause = new PauseTransition(Duration.millis(50));
    FadeTransition fadeUnitIn = new FadeTransition(Duration.millis(425), unit);
    fadeUnitIn.setFromValue(0.0);
    fadeUnitIn.setToValue(1.0);
    FadeTransition fadeValueIn = new FadeTransition(Duration.millis(425), value);
    fadeValueIn.setFromValue(0.0);
    fadeValueIn.setToValue(1.0);
    ParallelTransition parallelIn = new ParallelTransition(fadeUnitIn, fadeValueIn);
    ParallelTransition parallelOut = new ParallelTransition(fadeUnitOut, fadeValueOut);
    parallelOut.setOnFinished(event -> {
        unit.setText("Interactive");
        value.setText("");
        resizeText();
    });
    SequentialTransition sequence = new SequentialTransition(parallelOut, pause, parallelIn);
    sequence.play();
}
Also used : SequentialTransition(javafx.animation.SequentialTransition) FadeTransition(javafx.animation.FadeTransition) PauseTransition(javafx.animation.PauseTransition) ParallelTransition(javafx.animation.ParallelTransition)

Example 3 with SequentialTransition

use of javafx.animation.SequentialTransition in project Board-Instrumentation-Framework by intel.

the class HeatControlSkin method fadeBack.

private void fadeBack() {
    FadeTransition fadeInfoTextOut = new FadeTransition(Duration.millis(425), infoText);
    fadeInfoTextOut.setFromValue(1.0);
    fadeInfoTextOut.setToValue(0.0);
    FadeTransition fadeValueOut = new FadeTransition(Duration.millis(425), value);
    fadeValueOut.setFromValue(1.0);
    fadeValueOut.setToValue(0.0);
    PauseTransition pause = new PauseTransition(Duration.millis(50));
    FadeTransition fadeInfoTextIn = new FadeTransition(Duration.millis(425), infoText);
    fadeInfoTextIn.setFromValue(0.0);
    fadeInfoTextIn.setToValue(1.0);
    FadeTransition fadeValueIn = new FadeTransition(Duration.millis(425), value);
    fadeValueIn.setFromValue(0.0);
    fadeValueIn.setToValue(1.0);
    ParallelTransition parallelIn = new ParallelTransition(fadeInfoTextIn, fadeValueIn);
    ParallelTransition parallelOut = new ParallelTransition(fadeInfoTextOut, fadeValueOut);
    parallelOut.setOnFinished(event -> {
        double currentValue = (valueIndicatorRotate.getAngle() + getSkinnable().getStartAngle() - 180) / angleStep + getSkinnable().getMinValue();
        value.setText(String.format(Locale.US, "%." + getSkinnable().getDecimals() + "f", currentValue));
        value.setTranslateX((size - value.getLayoutBounds().getWidth()) * 0.5);
        if (getSkinnable().getTarget() < getSkinnable().getValue()) {
            getSkinnable().setInfoText("COOLING");
        } else if (getSkinnable().getTarget() > getSkinnable().getValue()) {
            getSkinnable().setInfoText("HEATING");
        }
        resizeText();
        drawTickMarks(ticks);
        userAction = false;
    });
    SequentialTransition sequence = new SequentialTransition(parallelOut, pause, parallelIn);
    sequence.play();
}
Also used : SequentialTransition(javafx.animation.SequentialTransition) FadeTransition(javafx.animation.FadeTransition) PauseTransition(javafx.animation.PauseTransition) ParallelTransition(javafx.animation.ParallelTransition)

Example 4 with SequentialTransition

use of javafx.animation.SequentialTransition in project Board-Instrumentation-Framework by intel.

the class GaugeSkin method fadeBackToInteractive.

private void fadeBackToInteractive() {
    FadeTransition fadeUnitOut = new FadeTransition(Duration.millis(425), unitText);
    fadeUnitOut.setFromValue(1.0);
    fadeUnitOut.setToValue(0.0);
    FadeTransition fadeValueOut = new FadeTransition(Duration.millis(425), valueText);
    fadeValueOut.setFromValue(1.0);
    fadeValueOut.setToValue(0.0);
    PauseTransition pause = new PauseTransition(Duration.millis(50));
    FadeTransition fadeUnitIn = new FadeTransition(Duration.millis(425), unitText);
    fadeUnitIn.setFromValue(0.0);
    fadeUnitIn.setToValue(1.0);
    FadeTransition fadeValueIn = new FadeTransition(Duration.millis(425), valueText);
    fadeValueIn.setFromValue(0.0);
    fadeValueIn.setToValue(1.0);
    ParallelTransition parallelIn = new ParallelTransition(fadeUnitIn, fadeValueIn);
    ParallelTransition parallelOut = new ParallelTransition(fadeUnitOut, fadeValueOut);
    parallelOut.setOnFinished(event -> {
        unitText.setText("Interactive");
        valueText.setText("");
        resizeText();
    });
    SequentialTransition sequence = new SequentialTransition(parallelOut, pause, parallelIn);
    sequence.play();
}
Also used : SequentialTransition(javafx.animation.SequentialTransition) FadeTransition(javafx.animation.FadeTransition) PauseTransition(javafx.animation.PauseTransition) ParallelTransition(javafx.animation.ParallelTransition)

Example 5 with SequentialTransition

use of javafx.animation.SequentialTransition in project tilesfx by HanSolo.

the class SmoothAreaChartTileSkin method initGraphics.

// ******************** Initialization ************************************
@Override
protected void initGraphics() {
    super.initGraphics();
    chartEventListener = e -> handleData();
    chartDataListener = c -> {
        while (c.next()) {
            if (c.wasAdded()) {
                c.getAddedSubList().forEach(addedItem -> addedItem.addChartDataEventListener(chartEventListener));
            } else if (c.wasRemoved()) {
                c.getRemoved().forEach(removedItem -> removedItem.removeChartDataEventListener(chartEventListener));
            }
        }
        handleData();
    };
    clickHandler = e -> select(e);
    endOfTransformationHandler = e -> selectorTooltip.hide();
    smoothing = tile.isSmoothing();
    titleText = new Text();
    titleText.setFill(tile.getTitleColor());
    Helper.enableNode(titleText, !tile.getTitle().isEmpty());
    fillClip = new Rectangle(0, 0, PREFERRED_WIDTH, PREFERRED_HEIGHT);
    strokeClip = new Rectangle(0, 0, PREFERRED_WIDTH, PREFERRED_HEIGHT);
    points = new ArrayList<>();
    fillPath = new Path();
    fillPath.setStroke(null);
    fillPath.setClip(fillClip);
    strokePath = new Path();
    strokePath.setFill(null);
    strokePath.setStroke(tile.getBarColor());
    strokePath.setClip(strokeClip);
    strokePath.setMouseTransparent(true);
    Helper.enableNode(fillPath, ChartType.AREA == tile.getChartType());
    canvas = new Canvas(PREFERRED_WIDTH, PREFERRED_HEIGHT);
    canvas.setMouseTransparent(true);
    ctx = canvas.getGraphicsContext2D();
    dataPointsVisible = tile.getDataPointsVisible();
    valueText = new Text(String.format(locale, formatString, ((tile.getValue() - minValue) / range * 100)));
    valueText.setFill(tile.getValueColor());
    valueText.setTextOrigin(VPos.BASELINE);
    Helper.enableNode(valueText, tile.isValueVisible());
    unitText = new Text(" " + tile.getUnit());
    unitText.setFill(tile.getUnitColor());
    unitText.setTextOrigin(VPos.BASELINE);
    Helper.enableNode(unitText, !tile.getUnit().isEmpty());
    valueUnitFlow = new TextFlow(valueText, unitText);
    valueUnitFlow.setTextAlignment(TextAlignment.RIGHT);
    selector = new Circle();
    selectorTooltip = new Tooltip("");
    selectorTooltip.setWidth(60);
    selectorTooltip.setHeight(48);
    Tooltip.install(selector, selectorTooltip);
    FadeTransition fadeIn = new FadeTransition(Duration.millis(100), selector);
    fadeIn.setFromValue(0);
    fadeIn.setToValue(1);
    FadeTransition fadeOut = new FadeTransition(Duration.millis(100), selector);
    fadeOut.setFromValue(1);
    fadeOut.setToValue(0);
    fadeInFadeOut = new SequentialTransition(fadeIn, new PauseTransition(Duration.millis(3000)), fadeOut);
    handleData();
    getPane().getChildren().addAll(titleText, fillPath, strokePath, canvas, valueUnitFlow, selector);
}
Also used : EventHandler(javafx.event.EventHandler) Path(javafx.scene.shape.Path) ClosePath(javafx.scene.shape.ClosePath) Fonts(eu.hansolo.tilesfx.fonts.Fonts) MouseEvent(javafx.scene.input.MouseEvent) CycleMethod(javafx.scene.paint.CycleMethod) LineTo(javafx.scene.shape.LineTo) ChartDataEventListener(eu.hansolo.tilesfx.events.ChartDataEventListener) EventType(eu.hansolo.tilesfx.events.TileEvent.EventType) LinearGradient(javafx.scene.paint.LinearGradient) TextFlow(javafx.scene.text.TextFlow) ArrayList(java.util.ArrayList) ChartData(eu.hansolo.tilesfx.chart.ChartData) FadeTransition(javafx.animation.FadeTransition) Helper(eu.hansolo.tilesfx.tools.Helper) ListChangeListener(javafx.collections.ListChangeListener) VPos(javafx.geometry.VPos) MoveTo(javafx.scene.shape.MoveTo) Point2D(javafx.geometry.Point2D) TextAlignment(javafx.scene.text.TextAlignment) Circle(javafx.scene.shape.Circle) Tooltip(javafx.scene.control.Tooltip) Tile(eu.hansolo.tilesfx.Tile) Color(javafx.scene.paint.Color) ChartType(eu.hansolo.tilesfx.Tile.ChartType) Stop(javafx.scene.paint.Stop) GraphicsContext(javafx.scene.canvas.GraphicsContext) Font(javafx.scene.text.Font) Canvas(javafx.scene.canvas.Canvas) PathElement(javafx.scene.shape.PathElement) Rectangle(javafx.scene.shape.Rectangle) Text(javafx.scene.text.Text) ActionEvent(javafx.event.ActionEvent) Duration(javafx.util.Duration) List(java.util.List) PauseTransition(javafx.animation.PauseTransition) TileEvent(eu.hansolo.tilesfx.events.TileEvent) SequentialTransition(javafx.animation.SequentialTransition) Optional(java.util.Optional) Point(eu.hansolo.tilesfx.tools.Point) Comparator(java.util.Comparator) Path(javafx.scene.shape.Path) ClosePath(javafx.scene.shape.ClosePath) Circle(javafx.scene.shape.Circle) SequentialTransition(javafx.animation.SequentialTransition) FadeTransition(javafx.animation.FadeTransition) Canvas(javafx.scene.canvas.Canvas) Tooltip(javafx.scene.control.Tooltip) Rectangle(javafx.scene.shape.Rectangle) Text(javafx.scene.text.Text) TextFlow(javafx.scene.text.TextFlow) PauseTransition(javafx.animation.PauseTransition)

Aggregations

SequentialTransition (javafx.animation.SequentialTransition)8 PauseTransition (javafx.animation.PauseTransition)6 FadeTransition (javafx.animation.FadeTransition)5 ParallelTransition (javafx.animation.ParallelTransition)4 Helper (eu.hansolo.tilesfx.tools.Helper)2 Point (eu.hansolo.tilesfx.tools.Point)2 ArrayList (java.util.ArrayList)2 List (java.util.List)2 ListChangeListener (javafx.collections.ListChangeListener)2 ActionEvent (javafx.event.ActionEvent)2 EventHandler (javafx.event.EventHandler)2 Point2D (javafx.geometry.Point2D)2 Tooltip (javafx.scene.control.Tooltip)2 MouseEvent (javafx.scene.input.MouseEvent)2 Color (javafx.scene.paint.Color)2 Circle (javafx.scene.shape.Circle)2 ClosePath (javafx.scene.shape.ClosePath)2 LineTo (javafx.scene.shape.LineTo)2 MoveTo (javafx.scene.shape.MoveTo)2 Path (javafx.scene.shape.Path)2