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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 14.05.2016, 23:20   #1
destra1j
Пользователь
 
Регистрация: 04.05.2016
Сообщений: 47
По умолчанию [Delphi7]Нарисовать круг по указанным пользователем координатами центра и радиусом.

Нарисовать круг по указанным пользователем координатами центра и радиусом.

В делфи я совсем зеленый новичок токо начал изучать. Как такое делается?

Последний раз редактировалось destra1j; 14.05.2016 в 23:31.
destra1j вне форума Ответить с цитированием
Старый 15.05.2016, 01:34   #2
type_Oleg
Старожил
 
Аватар для type_Oleg
 
Регистрация: 02.03.2008
Сообщений: 2,499
По умолчанию

Рисуется на чьей-нибудь канве. Можно прямо на форме.
Код:
procedure TForm1.Button1Click(Sender: TObject);
var r,x0,y0:Integer;
begin
 r:=100;     // радиус
 x0:=300;   // координата центра
 y0:=200;   // координата центра
 Canvas.Ellipse(x0-r,y0-r,x0+r,y0+r);   // если не указан компонент - хозяин канвы, значит прямо на форме
end;
type_Oleg вне форума Ответить с цитированием
Старый 15.05.2016, 12:04   #3
destra1j
Пользователь
 
Регистрация: 04.05.2016
Сообщений: 47
По умолчанию

у вас я так понял дефолтные кjординаты радиуса и центра а можно сделать так чтоб они вводились пользователем в какой-то edit?
destra1j вне форума Ответить с цитированием
Старый 15.05.2016, 13:23   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от destra1j Посмотреть сообщение
у вас я так понял дефолтные кjординаты радиуса и центра а можно сделать так чтоб они вводились пользователем в какой-то edit?
да. легко. Вот без проверки на корректность ввода:
Код:
 r:=StrToInt(EditRadius.Text);     // радиус
 x0:=StrToInt(EditCenterX.Text);   // координата центра
 y0:=StrToInt(EditCenterY.Text);   // координата центра
Serge_Bliznykov вне форума Ответить с цитированием
Старый 15.05.2016, 14:01   #5
destra1j
Пользователь
 
Регистрация: 04.05.2016
Сообщений: 47
По умолчанию

Цитата:
Рисует эллипс(окружность). Параметры x1, y1 указывают координаты верхней левой точки, а x2, y2 координаты нижней правой точки прямоугольника в который вписана окружность.
вот что в учебнике.
Расстояние между центром прямоугольника и верхней левой точкой можно ведь считать за радиус?
И как програмно прописать чтоб пользователь задавал центр?
destra1j вне форума Ответить с цитированием
Старый 15.05.2016, 14:27   #6
type_Oleg
Старожил
 
Аватар для type_Oleg
 
Регистрация: 02.03.2008
Сообщений: 2,499
По умолчанию

Цитата:
Сообщение от destra1j Посмотреть сообщение
.. И как програмно прописать чтоб пользователь задавал центр?
Так вам же в предыдущем , в #4 - все расписали.


А про центр - см. рисунок:
Изображения
Тип файла: jpg rxy.jpg (8.9 Кб, 297 просмотров)
type_Oleg вне форума Ответить с цитированием
Старый 15.05.2016, 14:31   #7
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Ну, так неинтересно!
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 15.05.2016, 15:23   #8
destra1j
Пользователь
 
Регистрация: 04.05.2016
Сообщений: 47
По умолчанию

ну тогда я не знаю как задать радиус
destra1j вне форума Ответить с цитированием
Старый 15.05.2016, 15:30   #9
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

А как координаты центра или верхней левой точки знаешь? Радиус так же, только одно число, а не два
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 15.05.2016, 15:40   #10
destra1j
Пользователь
 
Регистрация: 04.05.2016
Сообщений: 47
По умолчанию

блин а как тогда делать ее если ничего не извесно?

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

Последний раз редактировалось destra1j; 15.05.2016 в 15:53.
destra1j вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Delphi7 P.T.A. Помощь студентам 2 29.10.2013 20:10
unable to rename 'C:\ProgramFiles\Borland\Delphi7\Bi n\Delphi32.$$$' to 'C:\Program Files\Borland\Delphi7\ KazBoy Помощь студентам 1 12.04.2011 18:07
Delphi7 Анастасья Помощь студентам 2 14.12.2010 21:35
Delphi7 Veterok0587 Помощь студентам 4 07.04.2010 16:48