Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Листинг 4.2. Программа, рисующая линии (LINER.С).

ОСНОВЫ РАБОТЫ С УСТРОЙСТВАМИ ВВОДА | Листинг 3.1. Чтение кнопок джойстика. | Листинг 3.2. Чтение позиции джойстика. | Листинг 3.3. Программа работы с джойстиком (JOY.C). | Bios INT 16h | Листинг 3.5. Получение скан-кодов с клавиатуры. | Листинг 3.7. Демонстрационная программа работы с клавиатурой (KEY.C). | Bios INT 33h | Листинг 3.8. Работа с мышью (MOUSE.C). | МЕХАНИЗМЫ ДВУХМЕРНОЙ ГРАФИКИ |


Читайте также:
  1. II.3. ИНТЕНСИВНОСТЬ СПЕКТРАЛЬНОЙ ЛИНИИ
  2. V. Множественные волнообразные линии
  3. А) 5-е межреберье, на 1 см кнутри от срединно-ключичной линии
  4. Алгебраические линии и поверхности.
  5. В обобщенной формуле Бальмера для 5-ой линии серии Бальмера числа n и m соответственно имеют значения: C) 2 и 7
  6. В10 Перечислите возможные неисправности в кабельной линии. Опишите методы определения зоны и места повреждения в кабельной линии.
  7. Вице-президент по линии фронта?

#include <stdio.h>

#include <graph.h>

void main(void)

{

int xl,yl,x2,у2,color,index;

// перевести компьютер в графический режим

_setvideomode(_VRES16COLOR); // режим 640х480, 16 цветов

// нарисуем 1000 случайных линий на экране

for (index = 0; index<1000; index++)

{

// получим случайные координаты концов линий и цвет

x1 = rand()%640; // Х-координата начальной точки

y1 = rand()%480; // Y-координата начальной точки

х2 = rand()%640; // Х-координата конечной точки

у2 = rand()%480; // У-координата конечной точки

color = rand()%16;

_setcolor(color); // установить цвет

_moveto(х1,у1); // переместиться к началу линии

_lineto(х2,у2); // нарисовать линию

} // конец цикла for // ждать нажатия любой клавиши

while(!kbhit()){}

// перевести компьютер в текстовый режим

_setvideomode(_DEFAULTMODE);

} // конец функции main

 

Многоугольники

Линии весьма просты, и если вы приложите немного усилий, то сможете из программы 4.2 сделать простой Screen Saver. Но видеоигры кроме линий содержат еще множество интересных графических объектов, например, многоугольников.

Многоугольник — это множество точек, объединенных линиями. Точки пересечения линий называются вершинами многоугольника. На рисунке 4.3 показан треугольник, образованный тремя вершинами.

Все многоугольники являются закрытыми геометрическими объектами. Многоугольники бывают двух типов. Оба типа представлены на рисунке 4.4.

Существует математический алгоритм, позволяющий определить, к какому типу относится данный многоугольник, но он довольно сложен и сейчас нам не нужен. Давайте лучше напишем программу, рисующую многоугольники (Листинг 4.3).

 

 


Дата добавления: 2015-07-12; просмотров: 85 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Листинг 4.1. Программа, рисующая точки (POINTY.C).| Листинг 4.4. Структуры данных для задания вершин объектов.

mybiblioteka.su - 2015-2024 год. (0.006 сек.)