Добавить материал и получить бесплатное свидетельство о публикации в СМИ
Эл. №ФС77-60625 от 20.01.2015
Инфоурок / Информатика / Конспекты / Урок "Вывод дуг" (8 класс)

Урок "Вывод дуг" (8 класс)


До 7 декабря продлён приём заявок на
Международный конкурс "Мириады открытий"
(конкурс сразу по 24 предметам за один оргвзнос)

  • Информатика

Поделитесь материалом с коллегами:

ВЫВОД ДУГ


Одной из сложных заданий является рисование дуг окружностей и эллипсов. Но прежде следует вспомнить, что в Бейсике используется радианная мера углов. Любая дуга имеет угол, от которого она начинается, и угол, где она заканчивается. Чтобы разобраться с этим, вначале вспомним общий формат оператора CIRCLE:

n CIRCLE (X, Y), R , K , A , B ,Т

Появившиеся две новые величины А и B и обозначают эти углы. Правило рисования дуг на Бейсике звучит так: "дуга строится от угла А к углу B против часовой стрелки".

Для того чтобы показать это наглядно, лучше всего обратиться к тригонометрической окружности.




hello_html_57cffa6.gif
























hello_html_m5fa7329e.gif



















Взглянув на тригонометрическую окружность, мы всегда довольно легко сможем определить начало и конец нужных нам дуг. Более того, Бейсик позволяет использовать в качестве операндов в своих командах арифметические выражения. Поэтому, например, если вы знаете угол начала дуги – 30°, но затрудняетесь определить его на тригонометрической окружности, то можете в соответствующем месте оператора дуги написать: 3.14*30/180

Выведем на экран дугу, расположенную в I четверти координатной плоскости.

Первым делом, глядя на дугу, определяем направление против часовой стрелки. Это дает нам возможность выяснить, где находится начало и конец дуги. Далее обращаемся к тригонометрической окружности. В этом простом примере сразу видно, что угол начала А=0, а угол конца дуги В=1.57.

Таким образом, оператор построения этой дуги выглядит так:



1hello_html_7b2b1f45.jpg0 SCREEN 12

20 CIRCLE (250, 150), 55, 1, 0, 1.57, 1



Попробуйте вывести дуги, соответствующие началу и концу II, III и IV четвертям.



1hello_html_7b2b1f45.jpg0 SCREEN 12

20 CIRCLE (350, 150), 75, 2, 1.57, 3.14, 1

30 CIRCLE (250, 250), 40, 3, 3.14, 4.71, 1

40 CIRCLE (350, 250), 105, 4, 4.71, 6.28, 1



А теперь попробуем вывести окружность, у которой цвета линии будут состоять из 4-х цветов.



10 SCREEN 12

2hello_html_7b2b1f45.jpg0 CIRCLE (320, 230), 55, 1, 0, 1.57, 1

30 CIRCLE (320, 230), 55, 2, 1.57, 3.14, 1

40 CIRCLE (320, 230), 55, 3, 3.14, 4.71, 1

50 CIRCLE (320, 230), 55, 4, 4.71, 6.28, 1



Попробуем вывести дугу в двух четвертях:

- в первой и третьей четверти

- во второй и третьей четверти

- в третьей и четвертой четверти

- четвертой и первой четверти

hello_html_62f3cb04.gifhello_html_m65d74381.gif

hello_html_m31499b05.gifhello_html_55f1cef1.gif







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

CIRCLE (150, 100), 30, 1, 0, 3.14

Аналогично можно построить дугу, которая находится в трех четвертях.

Нhello_html_7b2b1f45.jpgапример:


10 SCREEN 12

20 CIRCLE (100, 380), 60, 9, 0, 4.71, 3/4 - I,II,III четверти


Еhello_html_m7f45e771.jpgсли в операторе построения дуг поставить знак минус перед значениями углов дуги, то автоматически будут проведены радиусы, соединяющие центр окружности с концами дуг. Нельзя ставить минус перед 0. В этом случае вместо нуля надо использовать – 6.28.


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

hello_html_574957ce.png

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

1hello_html_7b2b1f45.jpg0 SCREEN 12

20 CIRCLE (200, 120), 50, 1, -45*3.14/180, -315*3.14/180

30 CIRCLE (215, 85), 5, 1

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

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

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

CIRCLE (X, Y), R, K, A, B, T

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

hello_html_78f6f057.png

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

1hello_html_7b2b1f45.jpg0 SCREEN 12

20 CIRCLE (500, 70), 50, 14, 4.71, 1.57

30 CIRCLE (215, 85), 50*3/4, 4.71, 1.57, 2


hello_html_73b7aa08.png

стр. 47-52


Вывести на экран следующие фигуры:


hello_html_m4a60a40.gif


hello_html_5a77132f.gif








hello_html_m147475a5.gif









hello_html_6adca39.gif









57 вебинаров для учителей на разные темы
ПЕРЕЙТИ к бесплатному просмотру
(заказ свидетельства о просмотре - только до 11 декабря)

Автор
Дата добавления 21.10.2015
Раздел Информатика
Подраздел Конспекты
Просмотров144
Номер материала ДВ-084676
Получить свидетельство о публикации

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