Генеалогическое дерево, как лучше сделать?
Модератор: Модераторы
Генеалогическое дерево, как лучше сделать?
Всем привет,
думаю написать генеалогическое дерево, и думаю как это лучше всего сделать. Какой компонент для этого взять? Есть у кого идеи?
СУ
думаю написать генеалогическое дерево, и думаю как это лучше всего сделать. Какой компонент для этого взять? Есть у кого идеи?
СУ
Для этого язык ПРОЛОГ существует.
В любом учебнике по нему чуть не самый первый пример это генеалогическое древо.
На ПАСКАЛЕ тоже можно, только немного заморочно.
В любом учебнике по нему чуть не самый первый пример это генеалогическое древо.
На ПАСКАЛЕ тоже можно, только немного заморочно.
McLion писал(а):думаю написать генеалогическое дерево, и думаю как это лучше всего сделать. Какой компонент для этого взять? Есть у кого идеи?
правильнее визуализировать в векторах, красиво получится.
можно на выходе получить SVG
http://wiki.lazarus.freepascal.org/Graphics_libraries
BGRABitmap fpvectorial aggpas - могут показать.
- Лекс Айрин
- долгожитель
- Сообщения: 5723
- Зарегистрирован: 19.02.2013 16:54:51
- Откуда: Волгоград
- Контактная информация:
serbod писал(а):TTreeView =)
Не подходит. Имхо, лучше использовать TLvlGraphControl из пакета LazControlDesign. Ну или рисовать руками в рантайме.
Да... не все так просто оказывается... походу я перебрал...
- Ichthyander
- энтузиаст
- Сообщения: 701
- Зарегистрирован: 04.04.2007 08:32:43
- Откуда: Астрахань
- Контактная информация:
Давненько баловался для себя. Использовал TTreeView кажется ) + импорт и экспорт и правка карточек. Хотел даже экспорт в GEDCOM сделать
- Лекс Айрин
- долгожитель
- Сообщения: 5723
- Зарегистрирован: 19.02.2013 16:54:51
- Откуда: Волгоград
- Контактная информация:
Ichthyander, TTreeView, позволит сделать только самое простое генеалогическое древо. Допустим, дети и (одновременно) родители какого-нибудь чела уже в пролете.
Так что тут нужен инструмент отображения графов. В лазарусе такой один. Хотя и в рантайме все это отображать не очень тяжело... только муторно. Возможно, что такой инструмент есть у Zub-а.
Так что тут нужен инструмент отображения графов. В лазарусе такой один. Хотя и в рантайме все это отображать не очень тяжело... только муторно. Возможно, что такой инструмент есть у Zub-а.
- Ichthyander
- энтузиаст
- Сообщения: 701
- Зарегистрирован: 04.04.2007 08:32:43
- Откуда: Астрахань
- Контактная информация:
Лекс Айрин писал(а):Ichthyander, TTreeView, позволит сделать только самое простое генеалогическое древо. Допустим, дети и (одновременно) родители какого-нибудь чела уже в пролете.
Так что тут нужен инструмент отображения графов. В лазарусе такой один. Хотя и в рантайме все это отображать не очень тяжело... только муторно. Возможно, что такой инструмент есть у Zub-а.
Так я понимаю это. В "базе" хранится вся вся структура и ветви, а при отображении в TTreeView либо нисходящая ветка от выбранной персоны, либо восходящая. Были мысли в свое время сделать это в HTML для отображения во встроенном браузере.
- Лекс Айрин
- долгожитель
- Сообщения: 5723
- Зарегистрирован: 19.02.2013 16:54:51
- Откуда: Волгоград
- Контактная информация:
Ichthyander, есть еще и боковые ветви (сводные братья/сестры/племянницы). Как их учитывать?
- Ichthyander
- энтузиаст
- Сообщения: 701
- Зарегистрирован: 04.04.2007 08:32:43
- Откуда: Астрахань
- Контактная информация:
Лекс Айрин писал(а):Ichthyander, есть еще и боковые ветви (сводные братья/сестры/племянницы). Как их учитывать?
Ну я же сказал при отображении в TTreeView - никак. TTreeView поможет отобразить только восходящие и нисходящие (иерархические) деревья
- Лекс Айрин
- долгожитель
- Сообщения: 5723
- Зарегистрирован: 19.02.2013 16:54:51
- Откуда: Волгоград
- Контактная информация:
вот по этому TTreeView я и считаю не подходящим.
