我非常喜欢Vivagraph JS。话虽如此,我遇到了一个泡菜,这可能是特定于 WebGL 的。
我试图:
var graph = Viva.Graph.graph();
var layout = Viva.Graph.Layout.forceDirected(graph, {
springLength : 30,
springCoeff : 0.0003,
dragCoeff : 0.005,
gravity : -0.2,
theta: 0.8
});
var graphics = Viva.Graph.View.webglGraphics();
graphics.node( function( node )
{
node.addEventListener( 'click', function ()
{
console.log( 'clicked node: ' + node.id );
});
return Viva.Graph.View.webglSquare( 10, color );
});
var renderer = Viva.Graph.View.renderer( graph,
{
container : document.getElementById( 'graph' ),
graphics : graphics,
layout: layout
});
renderer.run();
我见过一个类似的例子,而是使用 SVG。使用 WebGL 似乎不起作用:
Uncaught TypeError: Object [object Object] has no method 'addEventListener'
如何将事件侦听器从 javascript/jquery 添加到构成节点的 webgl 粒子?
或者我应该为了我的意图和目的而完全放弃 WebGL?