| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Object Pascal: кроссплатформенные технологии > Графы в Паскале |
| Автор: freeda 4.11.2004, 19:54 |
| Граф неориентированный, задается матрицей смежностей или матрицей инциденций, может содержать петли help plzzz |
| Автор: Zero 4.11.2004, 20:53 | ||
| Простейшая из программ... Вот например приобразование матриц инцендентности в матрицу смежности и наоборот...
Freeda, если будут какие-то непонятки, то пиши... |
| Автор: Medved 5.11.2004, 00:55 |
| Модератор: Название темы должно отражать ее суть! |
| Автор: freeda 5.11.2004, 20:37 |
| Zero спасибки конечно но мне нужно именно нарисовать граф, ну там все эти ребра, вершины, а преобразование я вроде как сделала напиши pls как это сделать |
| Автор: Zero 5.11.2004, 21:08 |
| Извини Freeda, но если ты имеешь ввиду нарисовать в графическом виде, то чтобы это сделать, то там впринципе работа не настолько сложно реализуемая, насколько творческая, и чтобы это сделать там нужно много времени, или покрайней мере я так сразу немогу тебе быстро что-нибудь предложить... И кстати где такое тебе задали рисовать его в графическом виде, ведь его даже на системе программировани Delphi, чтобы нарисовать надо немало времени потратить, а на паскале, вообще врядли такое могли задать, может тебе лучше переспросить у прподователя задание поточнее, потому что рисовать граф на паскале это просто смешно, представь даже если там будет 100 вершин... Кстати когда мне в том году задавли сделать граф, с которым нужно провести преобразования и т.п., то всегда имелось ввиду, что представление его осуществляется с помощью матриц, которые ты написала... |
| Автор: freeda 6.11.2004, 13:50 | ||
Вообщем мне сказали, что вершины нужно располагать примерно так:
тогда это будут круги радиуса 5, расположенные в вершинах правильного многоугольника (x,y,r-центр и радиус описанной окружности). вот. Останется ребра и петли нарисовать. Хотя конечно для 100 вершин это не очень красиво получится А задали мне это в универе, можно и на Delphi, но я там плохо ориентируюсь пока, поэтому и приходится на паскале... |
| Автор: Zero 6.11.2004, 16:46 | ||||||||
Ну тогда, вот тебе пример для рисования ребер
где x1,y1,x2,y2 ─ координаты 1-ой и 2-ой точек, между которыми будет линия А петли можно, нарисовать в виде элепса
где x1,y1 ─ координаты, v ─ кол-во пикселей вырезаных из эллипса (в твоём случае 0), alpha ─ это угол на сколько он будет нарисован (в твоём случае 360), w,h ─ ширена и высота соответственно.
Все говорят, я там плохо ориентируюсь, я и сам примерно пол года назад, думал что мне вообще не дано научится на нём програамировать, но а когда взял книжку и прочитал её (причём не всю), то оказалось, что там всё легко, ну покрайней мере, если знать паскаль... Там впринцепе всё однотипно, только вывод происходит не на экран с задаными координатами, а в тот объект который ты сама сделаешь... А нарисовать граф там уж куда легче, чем на этом глюченом паскале... |