Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.04.2009, 21:23   #1
HoLToFF
Пользователь
 
Регистрация: 22.03.2009
Сообщений: 58
По умолчанию Отображение графа. [Delphi]

Доброго времени суток, нужна помощь в реализации изображения графа в среде разработки Delphi, граф можно задать матрицей смежности. Основная проблема заключается в том, чтобы именно красиво отобразить граф: нарисовать дуги и вершины.
HoLToFF вне форума Ответить с цитированием
Старый 25.04.2009, 21:25   #2
HoLToFF
Пользователь
 
Регистрация: 22.03.2009
Сообщений: 58
По умолчанию

Имеется идея:
Построить окружность, разбить её на n частей, где n количество вершин графа, и соединить эти вершины дугами. Проблема только в том, как это реализовать.
HoLToFF вне форума Ответить с цитированием
Старый 25.04.2009, 21:41   #3
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Вот вам пример.
На форму киньте TImage (растяните, чтобы напоминало квадрат) и кнопку.
Обработчик кнопки:
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
cntrx,cntry : integer;
R,rm : integer;
n,i : integer;
x,y : integer;
begin
Image1.Canvas.Brush.color := clWhite;
Image1.Canvas.FillRect(Canvas.ClipRect);
cntrx := round(Image1.Width/2);
cntry := round(Image1.Height/2);
R := round(cntrx/1.5);
rm := 10;
Image1.Canvas.Ellipse(cntrx-R,cntry-R,cntrx+R,cntry+R);

n := 8;
for i:=1 to n do
 begin
 x := round(cntrx+R*cos(i*2*pi/n));
 y := round(cntry+R*sin(i*2*pi/n));
 Image1.Canvas.Ellipse(x-rm,y-rm,x+rm,y+rm);

 end;

end;
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 25.04.2009, 21:54   #4
HoLToFF
Пользователь
 
Регистрация: 22.03.2009
Сообщений: 58
По умолчанию

Изумительно! То, что нужно, спасибо
HoLToFF вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обход графа в ширину. ZhooZhik Помощь студентам 1 06.04.2009 08:35
Некорректное отображение 3d объекта, экспортированного в Delphi Bellataminal Помощь студентам 3 16.02.2009 09:34
Отображение скрытых файлов и папок и отображение розширения всех файлов beegl Общие вопросы Delphi 10 14.12.2008 22:02
Отображение графика в Delphi Desc Помощь студентам 9 12.05.2008 11:28
Отображение символов в Delphi Airou Компоненты Delphi 1 18.04.2008 00:26