Лидеры рейтинга

ID: 226425

Konstantin Shvetski

Мастер-Эксперт

947

Россия, Северодвинск


ID: 259041

Алексеев Владимир Николаевич

Мастер-Эксперт

512

Россия, пос. Теплоозёрск, ЕАО


ID: 401284

Михаил Александров

Академик

354

Россия, Санкт-Петербург


ID: 137394

Megaloman

Мастер-Эксперт

312

Беларусь, Гомель


ID: 400669

epimkin

Профессионал

191


ID: 400484

solowey

Профессор

71


ID: 401888

puporev

Профессор

53

Россия, Пермский край


8.1.6

02.01.2021

JS: 2.2.2
CSS: 4.2.0
jQuery: 3.5.1


 

Создание программ на языках Pascal, Delphi и Lazarus.

Администратор раздела: Зенченко Константин Николаевич (Старший модератор)


Зенченко Константин Николаевич
Статус: Старший модератор
Рейтинг: 269
Gluck
Статус: 6-й класс
Рейтинг: 263
puporev
Статус: Профессор
Рейтинг: 53
 

Перейти к консультации №:
 

Консультация онлайн # 199857
Раздел: • Pascal / Delphi / Lazarus
Автор вопроса: QWERUIO (Посетитель)
Дата: 13.12.2020, 05:34
Поступило ответов: 1

Здравствуйте, уважаемые эксперты! Прошу вас ответить на следующий вопрос: У меня есть программа, которая рисует круг и мне с его помощью нужно нарисовать пятиконечную звезду(это пятиугольник, в котором соединены внутренние точки) с бликом(просто в середине звезды должен быть маленький круг)? Как это написать?

Приложение:

Состояние: Консультация закрыта

Ответ # 280487 от puporev (Профессор)

Здравствуйте, QWERUIO!
Пример рисования пятиконечной звезды.

procedure TForm1.FormPaint(Sender: TObject);
var p:array[1..12] of TPoint;
    cx,cy,r,i:integer;
    u:double;
begin
cx:=ClientWidth div 2;
cy:=ClientHeight div 2;
r:=cy-50;
//вычисляем координаты вершин звезды
u:=pi/10; // от правого гор. луча
for i:=1 to 12 do
 begin
  if (i mod 2=0) then
   begin // впадина
    p[i].x:=cx+round(r*0.38*cos(u));
    p[i].y:=cy-round(r*0.38*sin(u));
   end
  else
   begin // луч
    p[i].x:=cx+round(r*cos (u));
    p[i].y:=cy-round(r*sin(u));
   end;
  u:=u+pi/5;
 end;
Canvas.Pen.Color:=clRed;
Canvas.Brush.Color:=clRed;
Canvas.Polygon(p);
end;


Консультировал: puporev (Профессор)
Дата отправки: 13.12.2020, 06:19

5
Большое спасибо!
-----
Дата оценки: 13.12.2020, 08:03

Рейтинг ответа:

+1

[подробно]

Сообщение
модераторам

Отправлять сообщения
модераторам могут
только участники портала.
ВОЙТИ НА ПОРТАЛ »
регистрация »

Мини-форум консультации № 199857

QWERUIO

Посетитель

ID: 404602

1

= общий = |  13.12.2020, 08:35 |  цитировать |  профиль |  личное сообщение

упс, а как в серединке сделать блик? smile

puporev

Профессор

ID: 401888

2

 +1 
 
= общий = |  13.12.2020, 08:38 |  цитировать |  профиль |  личное сообщение
QWERUIO:

Извините, я не представляю что вам нужно.

QWERUIO

Посетитель

ID: 404602

3

= общий = |  13.12.2020, 09:01 |  цитировать |  профиль |  личное сообщение

блик - это белый кружок на окружности, он должен быть привязан к центу звезды(к центру окружности). не могу связать из вместе...

QWERUIO

Посетитель

ID: 404602

4

= общий = |  13.12.2020, 09:44 |  цитировать |  профиль |  личное сообщение

пардон, блик - это НЕЗАКРАШЕННЫЙ кружок

puporev

Профессор

ID: 401888

5

 +1 
 
= общий = |  13.12.2020, 12:42 |  цитировать |  профиль |  личное сообщение
QWERUIO:

А Вы напишите точное и полное условие задачи, как в оригинале.

Последнее редактирование 13.12.2020, 12:43 puporev (Профессор)

Возможность оставлять сообщения в мини-форумах консультаций доступна только после входа в систему.
Воспользуйтесь кнопкой входа вверху страницы, если Вы зарегистрированы или пройдите простую процедуру регистрации на Портале.