Иллюстрированный самоучитель по Basic, вводный курс

Графические примитивы

Построим изображение CD-MAN (рис. 1.20). Радиус "глаза" и координаты его центра определим исходя из здравого смысла.

Иллюстрированный самоучитель по Basic, вводный курс › Алгоритмы, графика, символы и строки › Графические примитивы
Рис. 1.20. CD-MAN

Хотя на первый взгляд кажется, что данное построение очень сложно, но на самом деле мы знаем уже достаточно инструментов, чтобы сделать это двумя изящными легкими движениями. Для начала, действительно давайте определим радиус "глаза". Диаметр его составляет примерно пятую часть радиуса "туловища", стало быть радиус – одну десятую, т. е. 5. Координаты центра примерно Х=215, Y=85. Теперь займемся углами дуги "туловища". Угол а определяется довольно легко – он равен 45°, а вот для определения угла ь надо пройти почти всю тригонометрическую окружность – первая четверть, вторая четверть – еще +90°, третья четверть – еще +90°, и, наконец, еще +45°. Итого b=315°. Ну что ж, все данные для построения есть. Приступим.

Rem "туловище"
CIRCLE (200, 120), 50, 1, -45*3.14/180, -315*3.14/180
CIRCLE (215, 85), 5, 1 Rem "глаз" >

Еще раз напоминаю, что в программировании главное – это предварительная подготовка всех исходных данных!

Теперь рассмотрим рисование дуг эллипсов.

Когда мы говорили о построении самих эллипсов, то в операторе было несколько странно видеть три указанных подряд запятых. Сейчас все стало понятно – это место для углов а и b. Остальное – аналогично дугам окружности. Итак, оператор построения дуг эллипса таков:

CIRCLE (X, Y), R, С, a, b, К

Иллюстрированный самоучитель по Basic, вводный курс › Алгоритмы, графика, символы и строки › Графические примитивы
Рис. 1.21. Месяц

В качестве примера нарисуем "светит месяц, светит ясный" (рис. 1.21).

Внешняя граница месяца – это дуга окружности, а внутренняя – дуга эллипса. Центр у них общий (Х=500, Y=70). Коэффициент сжатия эллипса равен 2. Начало и конец дуг тоже одинаковы (а=4.71, b=1.57). Радиус окружности возьмем 50, а вот с радиусом эллипса придется помучиться, поскольку, как мы уже говорили, экранные точки имеют разные ширину и высоту, определяющиеся примерным соотношением 3:4. Поэтому в качестве радиуса эллипса возьмем значение 50x3/4. Тогда месяц построится следующим образом:

CIRCLE (500, 70), 50, 14, 4.71, 1.57 CIRCLE (215, 85), 50*3/4, 4.71, 1.57, 2
Rem дуга окружности Rem дуга эллипса
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.