Главная Обратная связь

Дисциплины:

Архитектура (936)
Биология (6393)
География (744)
История (25)
Компьютеры (1497)
Кулинария (2184)
Культура (3938)
Литература (5778)
Математика (5918)
Медицина (9278)
Механика (2776)
Образование (13883)
Политика (26404)
Правоведение (321)
Психология (56518)
Религия (1833)
Социология (23400)
Спорт (2350)
Строительство (17942)
Технология (5741)
Транспорт (14634)
Физика (1043)
Философия (440)
Финансы (17336)
Химия (4931)
Экология (6055)
Экономика (9200)
Электроника (7621)


 

 

 

 



Void pieslice( int x, int y, int stangle, int endangle, int radius)



 

Выводит контур кругового сектора и заполняет его внутреннюю область текущим стилем. Контур образован круговой дугой радиусом radius с коорди­натами центра (х, у), проведенной, начиная от угла stangle до угла endangle, и радиусами, соединяющими центр с концевыми точками дуги. Дуга контура выводится текущим цветом, устанавливаемым функцией setcolor() всегда сплошной линией. Толщина (но не стиль!) дуговой линии равна 1 или 3 пиксе­лам и задается функцией setlinestyle(). Стиль линии радиусов может быть лю­бым и управляется функцией setlinestyle(). Особенностью рассматриваемой функции является то, что при задании любого другого стиля линии, отличного от сплошной линии (параметр linestyle в функции setlinestyle(), не равный 0), дуга сектора становится невидимой. Цвет и маска заполнения могут быть зада­ны с помощью функций setfillpattern() и setfillstyle(). Рис. 2.3. поясняет смысл используемых функцией аргументов.

При выполнении операции заполнения функция использует внутренний буфер библиотеки графики Turbo С для хранения промежуточных результа­тов. Если объем буфера будет недостаточным, функция установит в -6 внут­ренний код ошибки. Этот код доступен программе через обращение к функции graphresult(). Углы stangle и endangle выводимой дуги задаются в градусах и измеряются против хода часовой стрелки. Положению часовой стрелки 3 часа соответствует угол 0 градусов, 12 часов - 90 градусов, 9 часов - 180 градусов, 6 часов - 270 градусов. При задании stangle равным 0 градусов и endangle равным 359 градусов выводится полная окружность.

 

 

.

 

 

Рис. 2.3. Вывод кругового сектора

#include <graphics.h>

Void rectangle( int left, int top, int right, int bottom)

 

Выводит контур прямоугольника, заданного координатами левого верхнего (left, top) и правого нижнего (right, bottom) углов. Координаты углов задаются относительно координат левого верхнего угла текущего графического окна. Контур выводится линией текущего цвета и стиля. Цвет контура может быть установлен функцией setcolor(). Стиль линии может быть выбран или задан функцией setlinestyle().

 

#include <graphics.h>

Void sector(int x, int y, int stangle, int endangle, int xradius, int yradius)

 

Работает аналогично функции pieslice(), за исключением того, что выво­дится не круговая, а эллиптическая дуга. Аргумент xradius задает радиус эл­липса по горизонтали, a yradius - радиус эллипса по вертикали. При выводе сектора учитывается коэффициент сжатия, и эллиптическая дуга на экране геометрически корректна.

 

Перечисленными функциями исчерпывается список функ­ций для вывода основных графических примитивов. Допол­нительные графические примитивы могут быть построены из стандартных средств Turbo С.

Предварительная подготовка к работе

1. Ознакомиться с организацией и функциональными возмож­ностями различных типов видеосистем.

2. Ознакомиться с графическим режимом отображения информа­ции на экран монитора и стандартными библиотечными функциями C, обслуживающими этот режим.

Порядок выполнения работы

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

 

Номер Функция Диапазон аргумента
Начало Конец
Sin2(x/2)+Sqrt(x) 3π/2 15π
Sin3(x/2)+Sqrt(x) 3π/2 16π
Sin2(x/4)+Sqrt(x) 3π/2 17π
Cos2(x/2 ) +Sqrt (x ) 3π/2 18π
Cos3(x/2)+Sqrt(x) 3π/2 15π
Cos2(x/4)+Sqrt(x) 3π/2 16π
Sin2(x)- Cos2(x) 3π/2
Sin3(x)+ Cos2(x) 3π/2
Sin2(x)+ Cos3(x) π/2
Sin3(x)+ Cos3(x) π/2
Sin2(x)- Cos2(x) π/2
Sin3(x)- Cos2(x) π/2
Sin2(x)- Cos3(x) π/2
Sin3(x)- Cos3(x) π/2
Sin2(x/2)-Sqrt(x) π/2 13π
Sin3(x/2)-Sqrt(x) π/2 12π
Sin2(x/4)-Sqrt(x) π 11π
Cos2(x/2)-Sqrt(x) π 10π
Cos3(x/2)-Sqrt(x) π
Cos2(x/4)-Sqrt(x) π

Здесь Sqrt - функция вычисления квадратного корня

-

2.Произвести разметку осей и проставить истинные значения точек.

3.Найти максимальное значение функции на заданном интервале и вывести в отдельное окно на экране.

Содержание отчета

1.Краткие сведения о видеосистемах ПЭВМ, графическом режиме их работы и функциях обслуживания графического режима.

2.Алгоритмы и тексты отлаженных программ.

3.Выводы.

Контрольные вопросы

1. Зачем нужен графический режим?

2. Почему в видеосистеме используют и текстовый, и графичес­кий режимы?

3. Можно ли обойтись только графическим режимом? Если да, то какие характеристики должна при этом иметь ПЗВМ?

4. Как влияет размер видеопамяти на характеристики графичес­кого режима?

5. Зачем нужен видеоадаптер в графическом режиме?

6. Назовите основные характеристики графического режима, чем они обусловлены?

7. Существуют ли окна в графическом режиме? Зачем они нужны?

8. Какие функции инициализации графического режима Вы знаете?

9. Какие функции обслуживания графических окон Вы знаете?

10.Есть ли курсор в графическом режиме? Если да, то как можно им управлять?

11.Что такое пиксел? Зачем нужен атрибут пикселя?

12.Какие функции работы с пикселями Вы знаете?

13.Сколько цветов фона и символов можно одновременно ис­пользовать в графическом режиме и почему?

14.Какие функции установки цветов Вы знаете?

15.Что называется графическим примитивом и какие функции обслуживания графический примитивов Вы знаете?

 



Просмотров 909

Эта страница нарушает авторские права




allrefrs.su - 2025 год. Все права принадлежат их авторам!