public playAnimation()

in src/visual.ts [1253:1282]


    public playAnimation(delay: number = 0): void {
        let flooredStart: number = this.animationHandler.flooredPosition.index;
        this.onClearSelection();

        const currentPosition: AnimationPosition = this.animationHandler.flooredPosition;

        if (this.skipDoubleSelectionForCurrentPosition) {
            this.skipDoubleSelectionForCurrentPosition = false;

        } else if (this.checkTooltipForSelection(currentPosition)) {

            this.skipDoubleSelectionForCurrentPosition = true;
            this.handleSelection(currentPosition);
            this.continueAnimation(currentPosition);
            return;
        }

        this.showAnimationDot();
        this.animationSelection
            .transition()
            .delay(delay)
            .duration(this.animationDuration)
            .ease(easeLinear)
            .attrTween("d", (d: Series, index: number) => this.getInterpolation(d.data, flooredStart))
            .on("end", () => {
                let position: AnimationPosition = this.animationHandler.flooredPosition;
                this.handleSelection(position);
                this.continueAnimation(position);
            });
    }