2015-04-12 5 views
1

Я использую org.eclipse.zest.core.viewers.GraphViewer.setLayoutAlgorithm для установки алгоритма компоновки.алгоритм алгоритма поиска zest привлекает узлы слишком близко друг к другу

Моя проблема заключается в том, что при визуализации графика узлы рисуются очень близко друг к другу и когда-то друг на друга.

есть ли способ обойти это против написания собственного алгоритма компоновки?

enter image description here

ответ

1

Это старый вопрос, но, конечно, вы можете писать новые алгоритмы компоновки для компонента zest.layout. Как видите, большинство из них простирается от AbstractLayoutAlgorithm. Также вы можете изменить существующие макеты, так как это с открытым исходным кодом. Я не знаю, какой из них вы использовали, но размер строк и столбцов для большинства макетов определяется/вычисляется в функции preLayoutAlgorithm. Итак, вы можете изменить все, как вам нравится. Возможно, вам придется протестировать шаг за шагом изменения в визуализации.

+0

благодарим вас за это MarryS. Я рассмотрю процедуры preLayoutAlgorithm. вы можете указать ссылку на этот ранее заданный вопрос, который вы упомянули. Я исследовал это довольно много, но не придумал много. – mkk700

+0

Я играл с org.eclipse.zest.layouts.dataStructures.InternalNode , который является подпрограммой для процедур preLayoutAlgorithms, и неясно, как отрегулировать позицию узла, не сохраняя привязки всех предыдущих узлов. есть ли более прямолинейный ответ, чтобы отрегулировать положение x, y узлов так, чтобы они не были слишком близки друг к другу. Я забыл упомянуть, я использую TreeLayout в представленном мной изображении. Я планирую сделать это для всех алгоритмов компоновки по умолчанию, предоставляемых zest, поскольку все они дают мне ту же проблему. Мне нужно вырезать эти узлы. – mkk700