Lasso (nodes)
Press "ctrl" and drag the mouse to use the lasso. Surrounded nodes will be added to the selection.
Open in a new window.
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="../build/ogma.min.js"></script>
<style>
#graph-container { top: 0; bottom: 0; left: 0; right: 0; position: absolute; margin: 0; overflow: hidden; }
</style>
</head>
<body>
<div id="graph-container"></div>
<script>
'use strict';
var ogma = new Ogma({
container: 'graph-container',
});
var lassoOptions = {
strokeWidth: 1,
bothExtremities: false,
callback: function (evt) {
console.log('lassoed\n nodes: ' + evt.nodes.getId() + '\n edges: ' + evt.edges.getId())
evt.nodes.setSelected(true);
evt.edges.setSelected(true);
}
};
ogma.events.onDragStart(function () {
if (ogma.keyboard.isKeyPressed('ctrl')) {
ogma.getSelectedEdges().setSelected(false);
ogma.getSelectedNodes().setSelected(false);
ogma.tools.lasso.enable(lassoOptions);
}
});
ogma.events.onNodesSelected(function(evt) {
console.log('selected nodes', ogma.getSelectedNodes().getId());
});
// Generate a random graph and assign it to Ogma.
ogma.generate.random({ nodes: 8, edges: 10}).then(function(g) {
ogma.setGraph(g);
ogma.view.locateGraph();
});
</script>
</body>
</html>