powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Graph Relaxing :: какие библиотеки?
36 сообщений из 36, показаны все 2 страниц
Graph Relaxing :: какие библиотеки?
    #39998136
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вопрос возможно к UI-щикам? Какие библиотеки и фреймворки делают такие штуки?

[spoiler]
YouTube Video
...
Рейтинг: 0 / 0
Graph Relaxing :: какие библиотеки?
    #39998973
kealon(Ruslan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,

тынц - смотри Molecule Viewer Example *
если найдёшь на чём это можно запустить (чё нить из древних нетскейпов поищи)
...
Рейтинг: 0 / 0
Graph Relaxing :: какие библиотеки?
    #39998974
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kealon(Ruslan), о спасибо. Уже смотрю.
...
Рейтинг: 0 / 0
Graph Relaxing :: какие библиотеки?
    #39998976
kealon(Ruslan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,

помни только, что этим исходникам лет 20 уже (хотя может это и плюс, математику тогда программисты неплохо знали)
...
Рейтинг: 0 / 0
Graph Relaxing :: какие библиотеки?
    #39998987
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне по сути нужна формула сил для притяжения отталкивания. Наверное не по закону Гука а более.... нелинейная чтоли.
...
Рейтинг: 0 / 0
Graph Relaxing :: какие библиотеки?
    #39999029
kealon(Ruslan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
Мне по сути нужна формула сил для притяжения отталкивания. Наверное не по закону Гука а более.... нелинейная чтоли.
я боюсь не так просто всё, если нормально подходить к вопросу, у нас на лабах по типу такого было - тынц
если что попроще, без особых физических закидонов - Метод Стёрмера — Верле , примитивно и эффективно
...
Рейтинг: 0 / 0
Graph Relaxing :: какие библиотеки?
    #39999048
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kealon(Ruslan)
mayton
Мне по сути нужна формула сил для притяжения отталкивания. Наверное не по закону Гука а более.... нелинейная чтоли.
я боюсь не так просто всё, если нормально подходить к вопросу, у нас на лабах по типу такого было - тынц
если что попроще, без особых физических закидонов - Метод Стёрмера — Верле , примитивно и эффективно

Фигассе букв. Руслан я - как тот король в сказке.

- Просил я только масла на завтрак мне подать.
...
Рейтинг: 0 / 0
Graph Relaxing :: какие библиотеки?
    #39999899
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Могу дать три корочки хлеба. В 1-йполовине десятилетия гже-то на хабре кто-то (я подумал, что приближённый к администрации) хвастал как прикрутил визуализацмю графа чего-там, типа тамошней "соцсети". Визуализация выглядела как подграф на сфере. Что-то аналогичное "рыбьему глазу" в фотографии. Т.е. смотришь увеличенно что нужно, остальное уплотняется к переферии сферы.
Чел-к ссылался на какую-то бабу. Большк еичего не запомнил. Возможно это ьыло JS.

А в ссылке выше вроде к пружинам не прикладывается. Не так? Насчёт нелинейности Гука можно взять корень или наоборот - степень, експоненту/логарифм... По вкусу. Или заряды отталкиваются ...
...
Рейтинг: 0 / 0
Graph Relaxing :: какие библиотеки?
    #40000025
kealon(Ruslan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
exp98,

помню эту статью, на JS библу там использовали, они построили с помощью неё графическую кластеризацию по контактам
...
Рейтинг: 0 / 0
Graph Relaxing :: какие библиотеки?
    #40000054
Фотография Критик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Graph Relaxing :: какие библиотеки?
    #40000078
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kealon(Ruslan)
mayton,

помни только, что этим исходникам лет 20 уже (хотя может это и плюс, математику тогда программисты неплохо знали)

Пока я вижу такой минус что это технология Java Applets, которая уже нигде не поддерживается.

А приложение applietviewer... упоминается в документации по семёрке.
...
Рейтинг: 0 / 0
Graph Relaxing :: какие библиотеки?
    #40000082
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не могу найти реализацию класса

Код: java
1.
2.
3.
public class Matrix3D {

}



и его методов. Я конечно могу предположить что там внутри. По смыслу очень похоже на реализацию
матриц аффинных преобразований в 3Д. И очень похоже на реализацию Vector из CardRaytracer. Ну.. смысл близок.
...
Рейтинг: 0 / 0
Graph Relaxing :: какие библиотеки?
    #40000230
kealon(Ruslan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,

тынц не сравнивал правда версии, но я думаю тож самое

на всю папку
...
Рейтинг: 0 / 0
Graph Relaxing :: какие библиотеки?
    #40000232
kealon(Ruslan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,
...
Рейтинг: 0 / 0
Graph Relaxing :: какие библиотеки?
    #40000405
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kealon(Ruslan), да спасибо. Сам Molecular viewer я запустил. Щас попробую релакс.

Делаю.

Код: sql
1.
2.
3.
export CLASSPATH=.....jdk8
export PATH=....jdk8/bin;$PATH
$ appletviewer ....



Для более новых версий апплеты уже умерли. Надо-бы придумать как их мигрировать в Swing или JavaFX.
...
Рейтинг: 0 / 0
Graph Relaxing :: какие библиотеки?
    #40000409
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Критик

Спасибо. Занятно.
...
Рейтинг: 0 / 0
Graph Relaxing :: какие библиотеки?
    #40000418
kealon(Ruslan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton

Для более новых версий апплеты уже умерли. Надо-бы придумать как их мигрировать в Swing или JavaFX.
ты всё усложняешь,
awt то работоспособна
найди простой пример окна, замени Applet на Panel, установи и показывай
...
Рейтинг: 0 / 0
Graph Relaxing :: какие библиотеки?
    #40000471
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kealon(Ruslan), в этих молекулярных просмотрщиках я не нашел алгоритма релакса. Или он как-то скрыт.
Пока я вижу просто апплет (виджет) который показывает на экране химические структуры и позволяет
их крутить мышкой. Такое 3D я умею делать. (Умел когда-то )
...
Рейтинг: 0 / 0
Graph Relaxing :: какие библиотеки?
    #40000502
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Поясню зачем этот топик.



Мои творческие эксперименты с марковской сетью привели к следующим под-задачкам.
1) Отображение графов . С этой задачей GraphViz не справился. Или он отображал что угодно но только
не то что мне надо. По сути что мне надо. Для моего разрешения монитора (Full-HD) необходимо отобразить
50_000 вершин со связями. Разумеется они все скорее всего не влезут. Будем как-то панорамировать.

Алгоритмы которые я рассматривал.

- система координат - графический файл в разрешении Full-HD
- левая система координат. Ось OX - вправо. Ось OY - вниз.
- вершины - отображаются точками или мини-сферами которые визуально видны на изображении. Ребра - отрезки. Тоже видны.
- представить вершины - как физические частицы которые обладают свойствами отталкивания.
- вершины изначально имеют случайные координаты
- вершины в состоянии покоя находятся только тогда когда на них не действуют другие вершины
или в моей алгоритмизации когда суммарные силы слишком малы. В остальных случаях
вершины двигаются до тех пор пока не займут некое сбалансированное положение.
- для предотвращения улетания вершин за границы системы координат вводится свойство оттакивания
вершин от бортиков (границ).
- формула взаимодействия вершин друг с другом должна быть простая и нелинейная. Меня привлекает
обратная зависимость вида. Для нее надо только подобрать коэффициенты.

Код: sql
1.
y = k/(x + x0) + k0


- для бортиков - аналогично. Только направление сил для вершины - во все стороны а для бортиков - ортогонально.
- рёбра изначально обладают свойством пружины. Тоесть они могут растягиваться в некоторых пределах.
Классическая формула физики где пружина сопротивляется пропорционально приложенным силам
мне подходит. Но чуть позже можно тоже поэкспериментировать с нелинейностью. Я надеюсь что нелинейность
позволит мне быстрее сбалансировать все движения частиц (вершин) и достигнуть покоя.

Я сейчас этот подбор сделать не могу. Для подобных систем нужна некая симуляция и визуализация.

Отображение планарных графов (или близких к этому) даст мне возможность просто визуально оценивать
различные свойства графов. Степени вершин. Наличие клик. Наличие изолированых вершин. Деревьев.
И циклов.

Разумеется эти задачи можно автоматизировать по другому но мне мой подход ближе. Он ориентирован на меня.

2) Оптимизация. Удаление цепочки токенов (слов тексте) или цепочки вершин в орграфе
и приведение их к 1 вершине с сохранением семантики Марковской цепи.
...
Рейтинг: 0 / 0
Graph Relaxing :: какие библиотеки?
    #40000503
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сохранение семантики. Ну как-бы объяснить. Мы должны иметь теоретическую возможность
восстановить тот-же текст на выходе что и зашел на вход.
...
Рейтинг: 0 / 0
Graph Relaxing :: какие библиотеки?
    #40000505
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Графический аппарат который у меня есть. Я знаю Awt/Swing. Немного.

И практически полный ноль в JavaFx. Но Fx меня привлекает хорошими нативными оптимизациями которые туда
были заложены изначально. В отличие от Swing где просто анти-алиазинг lines & circles возложен на java.

Я просто думаю когда речь пойдет о тысячах вершин - то надо подумать о том что сделать на чем-то более
быстром. Потяну ? Нет? ХЗ.
...
Рейтинг: 0 / 0
Graph Relaxing :: какие библиотеки?
    #40000534
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А трудности....

Чтоб посчитать (гипотетически) взаимодействие 50 тысяч частиц каждой с каждой
надо сделать некислый объем вычислений. И +там еще ребра есть.

И это не окончательный расчет а только 1 кадр до следующей итерации пока
система еще не зашла в какой-то баланс.

Вот этот баланс - это тоже некий эксперементальный зазор. Теоретически я не знаю
как его учесть. Тоже нужно как-то ... глазами чтоли наблюдать.
...
Рейтинг: 0 / 0
Graph Relaxing :: какие библиотеки?
    #40000706
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мой совет, начните проект визуалиации с малого, примерно как с ЛНТ в виде пробы. Под пробой я подразумеваю визуализировать не все 50К, а обозримое кол-во, к-рок можно без труда рассмотреть в окне, остальное в виде эскиза обозначено на периферии окна - всё равно они не в текущем фокусе внимания. А там видно будет. Поскольку готового решения бесплатно нет, а это своего рода исследование. Как известно, эксперименты сначала проводят на мышах.
...
Рейтинг: 0 / 0
Graph Relaxing :: какие библиотеки?
    #40000709
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Начну с одной частицы летающей хотя-бы по моему закону.

Ещеб UI насетапить эххх давно я не брал в руки шашек....
...
Рейтинг: 0 / 0
Graph Relaxing :: какие библиотеки?
    #40000731
kealon(Ruslan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
...
Мои творческие эксперименты с марковской сетью привели к следующим под-задачкам.
1) Отображение графов . С этой задачей GraphViz не справился.
мне кажется, прежде чем пытатся наваять своё, особенно для таких объёмов, нужно попробовать что ещё есть - тынц
...
Рейтинг: 0 / 0
Graph Relaxing :: какие библиотеки?
    #40000733
kealon(Ruslan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,

оптимизация тебе в копилку, для варианта "если расстояние больше определённого, то считать смысла нет"
предотсечка производится на основе неравенства треугольников ABC: CD > |AB - BC|
...
Рейтинг: 0 / 0
Graph Relaxing :: какие библиотеки?
    #40000867
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Чем вы их все только жмёте?
kealon(Ruslan)
...MoleculeViewer.rar....

Downloads\MoleculeViewer.rar: Unsupported archive format. Please update WinRAR to a newer version.
...
Рейтинг: 0 / 0
Graph Relaxing :: какие библиотеки?
    #40000964
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kealon(Ruslan)
mayton,

оптимизация тебе в копилку, для варианта "если расстояние больше определённого, то считать смысла нет"
предотсечка производится на основе неравенства треугольников ABC: CD > |AB - BC|

Думал об оптимизации групп частиц. Дошел до QuadTree. Интересно что сначала сам дошел
а потом прочитал про это теорию. К дереву приходишь рассуждениями когда частица имеющая
не нулевой радиус взаимодействия с другими частицами пересекает границу квадрата (или квадранта)
и тут-то и "хопа". Возникает структура QuadTree. И любой программист к этому пришел бы как к естественной
оптимизации коллизий групп частиц.
...
Рейтинг: 0 / 0
Graph Relaxing :: какие библиотеки?
    #40001105
kealon(Ruslan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
kealon(Ruslan)
mayton,

оптимизация тебе в копилку, для варианта "если расстояние больше определённого, то считать смысла нет"
предотсечка производится на основе неравенства треугольников ABC: CD > |AB - BC|

Думал об оптимизации групп частиц. Дошел до QuadTree. Интересно что сначала сам дошел
а потом прочитал про это теорию. К дереву приходишь рассуждениями когда частица имеющая
не нулевой радиус взаимодействия с другими частицами пересекает границу квадрата (или квадранта)
и тут-то и "хопа". Возникает структура QuadTree. И любой программист к этому пришел бы как к естественной
оптимизации коллизий групп частиц.
а ты считал цену поддержки этой структуры?
...
Рейтинг: 0 / 0
Graph Relaxing :: какие библиотеки?
    #40001110
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А вы не хотите здесь реализовать свою кластеризацию мэп-картой Кохонена?
...
Рейтинг: 0 / 0
Graph Relaxing :: какие библиотеки?
    #40001117
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kealon(Ruslan)
mayton
пропущено...

Думал об оптимизации групп частиц. Дошел до QuadTree. Интересно что сначала сам дошел
а потом прочитал про это теорию. К дереву приходишь рассуждениями когда частица имеющая
не нулевой радиус взаимодействия с другими частицами пересекает границу квадрата (или квадранта)
и тут-то и "хопа". Возникает структура QuadTree. И любой программист к этому пришел бы как к естественной
оптимизации коллизий групп частиц.
а ты считал цену поддержки этой структуры?

Понятия не имею как ее посчитать пока. Но принцип "разделяй и властвуй" мне кажется
верным направлением в оптимизации.
...
Рейтинг: 0 / 0
Graph Relaxing :: какие библиотеки?
    #40001118
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
exp98
А вы не хотите здесь реализовать свою кластеризацию мэп-картой Кохонена?

Не совсем понял. Мне кажется это все таки разные задачи.
...
Рейтинг: 0 / 0
Graph Relaxing :: какие библиотеки?
    #40001140
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Моё первое JavaFx приложение. Уродское. Но в нем есть обработка мыши и клавиатуры.
Дальше надо понять как рисовать примитивы.
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
package mayton.javafx;

import javafx.application.Application;
import javafx.event.EventHandler;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.scene.input.KeyEvent;
import javafx.scene.input.MouseEvent;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;

public class GraphRelaxApp extends Application {

    @Override
    public void start(Stage stage) {
        var scene = new Scene(new StackPane(), 512, 512);
        stage.setScene(scene);
        stage.setTitle("Graph Relax Application 1.0");

        EventHandler<MouseEvent> mouseHandler = event -> {
            System.out.println(event.toString());
        };

        EventHandler<KeyEvent> textHandler = event -> {
            System.out.println(event.toString());
        };

        stage.addEventHandler(MouseEvent.MOUSE_CLICKED, mouseHandler);
        stage.addEventHandler(KeyEvent.KEY_PRESSED, textHandler);
        stage.show();
    }

    public static void main(String[] args) {
        launch();
    }

}

...
Рейтинг: 0 / 0
Graph Relaxing :: какие библиотеки?
    #40001465
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Почему разные задачи? Есть граф, а есть геометрическая плоскость. Нужна раскладка на плоскости, где неврончики будут ответственны за либо кластеры, либо вершины. И в целом близко расположат близкие вещи, а далёкие -- далеко. На входе граф, на выходе геометрич координаты. Чем не Кохонен? Всё равно ведь частные производные обсчитывать, что так, что эдак.
...
Рейтинг: 0 / 0
Graph Relaxing :: какие библиотеки?
    #40001524
kealon(Ruslan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
exp98
Чем вы их все только жмёте?
kealon(Ruslan)
...MoleculeViewer.rar....

Downloads\MoleculeViewer.rar: Unsupported archive format. Please update WinRAR to a newer version.
с сайта качал последнюю версию
...
Рейтинг: 0 / 0
Graph Relaxing :: какие библиотеки?
    #40002486
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Думаю как интегрировать UI-чик и мой марковский архиватор.

Пришел к мысли ... через AMQP протокол. Графическое приложение слушает канал подписок.
По каналу транслируются некие транзакции на создание вершин и ребер. И приложение
в реальном времени отражает.
...
Рейтинг: 0 / 0
36 сообщений из 36, показаны все 2 страниц
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Graph Relaxing :: какие библиотеки?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]