Re: Визуализация графа
От: McSeem2 США http://www.antigrain.com
Дата: 10.12.03 19:30
Оценка: 12 (1)
_>Симметричной матрицей расстояний задан полный граф, задано дерево(не знаю, нужно ли это)
_>Надо определить координаты всех вершин в трехмерном пространстве. Все расстояния должны быть максимально приближенны к исходным.

Все это сильно зависит от содержимого графа. Например, для графов с небольшой "валентностью" вершин (как это называется, в общем, когда к одной вершине присоединено весьма ограниченное количество ребер, скажем не более 3-х, 4-х), прекрасно работает стохастический метод — вершины разбрасываются случайным образом, после чего, берем случайные пары вершин и двигаем их в сторону лучшего соответствия расстоянию в матрице. Коэффициент смещения постепенно уменьшаем. Рабртает это примерно так. Вот химический скетчер http://www.antigrain.com/sketcher.zip (можкт понадобиться msvcr71.dll http://www.antigrain.com/msvcr71.zip). Рисуем некий граф в виде молекулы после чего нажимаем Ctrl-I, граф "портится". Далее нажимаем Ctrl-O — при каждом нажатии выполняется некое количество итераций по "упорядочению" графа, помему, 3000. После чего коэффициент "влияния" уменьшается.
Ctrl-U использует шаблонный beautifier, специализированный для химических структур. Он срабатывает в большинстве случаев, но не всегда.
McSeem
Я жертва цепи несчастных случайностей. Как и все мы.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.