@visactor/vrender-components
Version:
components library for dp visualization
27 lines (23 loc) • 1.32 kB
JavaScript
import { getSegmentLineGraphics, graphicFadeIn } from "./common";
import { array } from "@visactor/vutils";
import { commitUpdateAnimationTarget } from "../../animation/static-truth";
export function commonLineClipIn(line, label, duration, delay, easing) {
const startSymbolDuration = .1 * duration, lineDuration = .7 * duration, endSymbolDuration = .1 * duration, labelDuration = .1 * duration;
graphicFadeIn(line.startSymbol, delay, startSymbolDuration, easing);
const lines = getSegmentLineGraphics(line);
lines.forEach((line => commitUpdateAnimationTarget(line, {
clipRange: 1
}, {
clipRange: 0
}))), lines.forEach(((l, index) => {
const stepDuration = lineDuration / lines.length;
l.animate().wait(delay + startSymbolDuration + index * stepDuration).to({
clipRange: 1
}, stepDuration, easing);
})), graphicFadeIn(line.endSymbol, delay + startSymbolDuration + lineDuration, endSymbolDuration, easing),
array(label).forEach((labelNode => {
const delayTime = delay + startSymbolDuration + lineDuration + endSymbolDuration;
graphicFadeIn(labelNode.getTextShape(), delayTime, labelDuration, easing), graphicFadeIn(labelNode.getBgRect(), delayTime, labelDuration, easing);
}));
}
//# sourceMappingURL=clip-in.js.map