【问题标题】:Cytoscape how to zoom out then zoom in when animating nodes?Cytoscape在动画节点时如何缩小然后放大?
【发布时间】:2016-12-07 05:19:01
【问题描述】:

在 cytoscape 中使用动画单击时,我能够设置平移和缩放到特定节点的按钮,但效果不是很好。一旦您居中并放大到一个节点,单击以放大到另一个节点是非常不和谐的,因为您正在平移已经放大的视图。在平移时让视图缩小一点会更好,然后在平移时再放大目标节点更靠近视图的中心。

我意识到这可能是一种高级技术,但是有没有示例可以证明这种行为?

【问题讨论】:

    标签: animation cytoscape.js


    【解决方案1】:

    您可以使用 Promise 链接动画,在第一个完成后运行一个。因此,您可以执行cy.animation({ zoom: someLevelOut }).play().promise().then( () => cy.animation({ fit: nextNode }).play().promise() ) 之类的操作来缩小然后适应下一个节点。

    【讨论】:

    • 当我尝试上述方法时,我得到一个“未捕获的类型错误:globalCy.animation(...).play(...).then 不是函数(...)”。我也尝试用常规功能符号替换粗箭头符号,但错误似乎与未定义“then”有关。
    • 你需要.promise()
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多