JointJS:在 x 和 y 中进行转换的最佳方法?

JointJS: the best method for doing a transition in both x and y?

我正在将元素的运动动画化到所需的新点,但我无法计算出正确的语法来将两个值传递给转换函数。我现在有一个解决方法:

packet.transition('position/y', linkInfo.end.y, {
    delay: animationDelay,
    duration: animationDuration
});

packet.transition('position/x', linkInfo.end.x, {
    delay: animationDelay,
    duration: animationDuration
});

这似乎不太令人满意,因为我知道必须有更好的方法。我花了太长时间仔细研究文档和教程,但正确的方法仍然没有穿透我厚实的头骨。有好心人可以帮忙吗?

非常感谢!

你有没有试过这样的事情:

packet.transition('position', {x: linkInfo.end.y, y: linkInfo.end.y}, {
    delay: animationDelay,
    duration: animationDuration
});

这是我最终使用的代码。我的问题是不理解插值类型。

var linkInfo = {
    start: {
        x: startX,
        y: startY
    },
    end: {
        x: endX,
        y: endY         
    },
    source: sourceCell,
    target: targetCell
};


packet.position(linkInfo.start.x, linkInfo.start.y);

graph.addCell(packet);

packet.transition('position', linkInfo.end, { 
    delay: animationDelay, 
    duration: animationDuration, 
    valueFunction: joint.util.interpolate.object
});