【问题标题】:Cytoscape.js how to manually stop layout processingCytoscape.js 如何手动停止布局处理
【发布时间】:2014-02-18 12:38:28
【问题描述】:

我正在使用带有乔木布局的 cytoscape.js。有没有办法手动停止布局渲染?在文档中,我看到了一个“layoutstop”事件,但没有办法真正停止布局。

谢谢

【问题讨论】:

    标签: cytoscape.js arbor.js


    【解决方案1】:

    如果有人感兴趣,这就是我解决问题的方法:我只是在 stableEnergy 函数中放置了一个全局 stop_layout 变量。丑陋但有效。耶!

    var stop_layout = false;
    layout_params = {
      name: 'arbor',
      stableEnergy: function(energy){
        var e = energy; 
        return (e.max <= 0.5) || (e.mean <= 0.3) || stop_layout;
      }
    };
    
    // Then change the stop_layout value when you want to run or stop layout processing
    

    【讨论】:

      【解决方案2】:

      layoutstop 是表示布局已停止运行的事件。 Arbor 包含一个 maxSimulationTime 选项,因此您可以提前停止布局:http://cytoscape.github.io/cytoscape.js/#layouts/arbor

      【讨论】:

      • 那么有没有办法手动停止布局?对于大图,如果用户在认为不需要继续布局时可以单击按钮停止布局,那就太好了。
      • 不,目前没有。它会影响的唯一布局是乔木(仅连续布局),无论如何都会在maxSimulationTime 处被切断。如果你为你的图表类型适当地设置了maxSimulationTime,你不应该需要这样一个按钮——最好是自动的而不是要求用户手动完成。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多