2014-11-15 1 views
0

Я пытаюсь сделать перетаскивание, но в конечном итоге перетащить сам граф. Я не вижу никаких настроек, которые могут изменить действие перетаскивания.sigma.js: есть ли способ перетащить несколько узлов?

Есть ли способ перетащить несколько узлов одновременно?

ответ

-1

здесь вы идете, плагин, который я сделал для выбора нескольких узлов путем перетаскивания, выбирая их

https://gist.github.com/deanshub/2ee8d3aee5f325c8c4aa

вы должны добавить файл, предоставленную вашим HTML следующим образом: (или использовать что-то вроде Webpack)

<script src="sigma.plugins.nodesSelection.js"></script> 

Для использования плагина вам необходимо активировать его и дать обратный вызов

sigma.plugins.activateMouseEvents(s,function(err, selectedNodes){ 
    console.log(selectedNodes); 
}); 
+0

В случае, если кто-то еще хочет достичь этого в 2017 году или за его пределами, мне удалось заставить этот плагин работать, но только с помощью рендеринга «холст». Если вы используете текущий sigma.js, вы будете использовать WebGL по умолчанию, поэтому вам нужно явно запустить граф с помощью холста (https://github.com/jacomyal/sigma.js/wiki/Renderers#the-default-renderer). Последующие действия, если вы используете парсер json, как я, вам нужно использовать синтаксис «update», а не «create» (внизу https://github.com/jacomyal/sigma.js/tree/master /plugins/sigma.parsers.json) –

0

Да, смотрите следующий пример: https://github.com/Linkurious/linkurious.js/wiki/How-to-select-and-drag-multiple-nodes

с этим плагином: https://github.com/Linkurious/linkurious.js/tree/linkurious-version/plugins/sigma.plugins.dragNodes

Linkurious.js обеспечивает плагины высокого уровня для Sigma.js. Он бесплатный для проектов с открытым исходным кодом.

Отказ от ответственности: Я работаю на Linkular SAS.