NuclearDispersionSystem/ant-design-vue-jeecg/node_modules/@antv/g2/lib/animate/animation/zoom.js
2023-09-14 14:47:11 +08:00

71 lines
2.2 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.zoomOut = exports.zoomIn = void 0;
var tslib_1 = require("tslib");
var matrix_util_1 = require("@antv/matrix-util");
var util_1 = require("@antv/util");
function doShapeZoom(shape, animateCfg, type) {
if (shape.isGroup()) {
util_1.each(shape.getChildren(), function (child) {
doShapeZoom(child, animateCfg, type);
});
}
else {
var bbox = shape.getBBox();
var x = (bbox.minX + bbox.maxX) / 2;
var y = (bbox.minY + bbox.maxY) / 2;
shape.applyToMatrix([x, y, 1]);
if (type === 'zoomIn') {
// 放大
var matrix = matrix_util_1.ext.transform(shape.getMatrix(), [
['t', -x, -y],
['s', 0.01, 0.01],
['t', x, y],
]);
shape.setMatrix(matrix);
shape.animate({
matrix: matrix_util_1.ext.transform(shape.getMatrix(), [
['t', -x, -y],
['s', 100, 100],
['t', x, y],
]),
}, animateCfg);
}
else {
shape.animate({
matrix: matrix_util_1.ext.transform(shape.getMatrix(), [
['t', -x, -y],
['s', 0.01, 0.01],
['t', x, y],
]),
}, tslib_1.__assign(tslib_1.__assign({}, animateCfg), { callback: function () {
shape.remove(true);
} }));
}
}
}
/**
* @ignore
* 单个 shape 动画
* shape 以自身中心点逐渐放大的进入动画
* @param shape 参与动画的图形元素
* @param animateCfg 动画配置
* @param cfg 额外信息
*/
function zoomIn(shape, animateCfg, cfg) {
doShapeZoom(shape, animateCfg, 'zoomIn');
}
exports.zoomIn = zoomIn;
/**
* @ignore
* 单个 shape 动画
* 消失动画shape 以自身为中心点的逐渐缩小
* @param shape 参与动画的图形元素
* @param animateCfg 动画配置
* @param cfg 额外信息
*/
function zoomOut(shape, animateCfg, cfg) {
doShapeZoom(shape, animateCfg, 'zoomOut');
}
exports.zoomOut = zoomOut;
//# sourceMappingURL=zoom.js.map