Студопедия

Главная страница Случайная страница

Разделы сайта

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






Графические библиотеки.Основные функции и процедуры.






GD Graphics Library (GD) — программная библиотека, написанная Томасом Баутелом (Thomas Boutell) и другими разработчиками для динамической работы с изображениями.

 

#include < conio.h>

#include < graphics.h>

#include < stdlib.h>

#include < time.h>

 

Выбирает координаты для центра круга задаётся радиус и цвет, направление.

void Init(Object & a){

a.x=random(640);

a.y=random(480);

a.R=20;

a.dir=1; //направление

a.color=random(16); }

Рисование объекта

void DrawObject(Object a){

circle(a.x, a.y, a.R);

line(a.x-a.R*1.5, a.y-a.R-5, a.x+a.R, a.y-a.R+5);

line(a.x-a.R*1.5, a.y-a.R+5, a.x+a.R*1.5, a.y-a.R-5);

line(a.x-a.R/2, a.y+a.R+3, a.x+a.R/2, a.y+a.R+3);

line(a.x, a.y, a.x, a.y-a.R);

line(a.x, a.y, a.x+a.dir*a.R, a.y); }

Движение объекта

void Up(Object & a){a.y-=5; }

void Down(Object & a){a.y+=5; }

void Right(Object & a){a.dir=1; a.x+=5; }

void Left(Object & a){a.dir=-1; a.x-=5; }

Меняет цвет

void ChangeColor(Object & a){a.color=random(16); }

Какая клавиша, за что отвечает

void Choice(char ch, Object & a){

switch(ch){

case 'a': { Erase(a); Left(a); Draw(a); break; }

case 'w': { Erase(a); Up(a); Draw(a); break; }

case 's': { Erase(a); Down(a); Draw(a); break; }

case 'd': { Erase(a); Right(a); Draw(a); break; }

case 'c': { ChangeColor(a); break; }

case 'g': { Erase(a); Growth(a, 2); Draw(a); break; }

case 'f': { Erase(a); Growth(a, 0.5); Draw(a); break; }}}

32. Классы и объекты С++. Создание, инициализация данных, деструктор, методы для сохранения и извлечения значений полей объектов.

Класс – объединение свойств и действий.

/*Класс – это абстрактный тип данных, определяемый пользователем, и представляет собой модель реального объекта в виде данных и функций для работы с ними.

класс – набор методов и функций*/.

Объекты класса – конкретные переменные типа «класс»

class < имя> {

[ private: ]

< описание скрытых элементов>

public:

< описание доступных элементов>

};

Спецификаторы доступа private и public управляют видимостью элементов класса. Элементы описанные после private видимы только внутри класса. Интерфейс класса описывается после спецификатора public. Действие любого спецификатора распространяется до следующего спецификатора или до конца класса. Можно задавать несколько секций private и public, порядох их следования значения не имеет.

Поля класса:

• Могут иметь любой тип, кроме типа этого же класса (но могут быть указателями или ссылками на этот класс);

• Могут быть описаны с модификатором const, при этом они инициализируются только один раз (с помощью конструктора) и не могут изменяться;

• Могут быть описаны с модификатором static.

Инициализация полей при описании не допускается.

Классы могут быть локальными (объявленные внутри блока) и глобальными (объявленные вне любого блока)

Чтобы упростить процесс инициализации элементов данных класса, C++ использует специальную функцию, называемую конструктором, которая запускается для каждого создаваемого вами объекта. Подобным образом C++ обеспечивает функцию, называемую деструктором, которая запускается при уничтожении объекта.

 

 

 

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.