Cytoscape.js - 突出显示所选节点的所有路径

时间:2018-03-21 15:34:23

标签: javascript highlight cytoscape

在这里,我尝试突出显示所选节点的所有路径,但它不适用于bfs算法,我可以解决这个问题吗?

我想突出显示所选节点的所有路径和节点。

enter image description here

        cy.on('click', 'node', function (event) {
        var target = event.target;
        var bfs = cy.elements().bfs(target, function(){}, true);
        var i = 0;
        var highlightNextEle = function(){
            if( i < bfs.path.length ){
                bfs.path[i].addClass('highlighted');

                console.log(bfs.path[i]);
                i++;
                setTimeout(highlightNextEle, 50);
            }
        };
        highlightNextEle();
        });

1 个答案:

答案 0 :(得分:0)

我找到了解决方案:没有任何算法

event.target.successors() - 这就是我需要的全部

        cy.on('click', 'node', function (event) {
        var connectedEdges = event.target.successors()
        var i = 0;

        var highlightNextEle = function(){
            if( i < connectedEdges.length ){
                connectedEdges[i].addClass('highlighted');
                i++;
                highlightNextEle();
            }
        };
        highlightNextEle();
    });

enter image description here