@visactor/vchart
Version:
charts lib based @visactor/VGrammar
40 lines (36 loc) • 1.89 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: !0
}), exports.sunburstExit = void 0;
const utils_1 = require("./utils"), vutils_1 = require("@visactor/vutils"), computeInnerAngleRange = mark => [ (0,
vutils_1.minInArray)(mark.map((m => 1 * m.getFinalAttribute().startAngle))), (0,
vutils_1.maxInArray)(mark.map((m => 1 * m.getFinalAttribute().endAngle))) ], sunburstExit = params => ({
channel: {
startAngle: {
from: (_d, graphic) => graphic.getFinalAttribute().startAngle,
to: (_d, graphic) => {
const {startAngle: startAngle, endAngle: endAngle} = params.animationInfo(), innerElements = (0,
utils_1.getInnerMostElements)(graphic.parent.children), range = computeInnerAngleRange(innerElements);
return (0, utils_1.computeRatio)(graphic.getFinalAttribute().startAngle, range) * (endAngle - startAngle) + startAngle;
}
},
endAngle: {
from: (_d, graphic) => graphic.getFinalAttribute().endAngle,
to: (_d, graphic) => {
const {startAngle: startAngle, endAngle: endAngle} = params.animationInfo(), innerElements = (0,
utils_1.getInnerMostElements)(graphic.parent.children), range = computeInnerAngleRange(innerElements);
return (0, utils_1.computeRatio)(graphic.getFinalAttribute().endAngle, range) * (endAngle - startAngle) + startAngle;
}
},
outerRadius: {
from: (_d, graphic) => graphic.getFinalAttribute().outerRadius,
to: () => params.animationInfo().innerRadius
},
innerRadius: {
from: (_d, graphic) => graphic.getFinalAttribute().innerRadius,
to: () => params.animationInfo().innerRadius
}
}
});
exports.sunburstExit = sunburstExit;
//# sourceMappingURL=exit.js.map