51345

Рисование в C++ Builder

Лабораторная работа

Информатика, кибернетика и программирование

Цель работы: Написать программу, рисующую изображение по заданному на занятии образцу. Задание для варианта – рисование дома.

Русский

2014-02-09

74 KB

20 чел.

Лабораторная работа 3

Рисование в C++ Builder

Выполнил: Шуклецов М.А.

 ФРТ, гр. 2106

Цель работы: Написать программу, рисующую изображение по заданному на занятии образцу. Задание для варианта – рисование дома.

Общий вид программы следующий:

Здесь мы видим следующие элементы управления:

«Рисовать» - собственно по нажатию на кнопку рисуется изображение

Код программы:

//---------------------------------------------------------------------------

#include <vcl.h>

#pragma hdrstop

#include "Unit1.h"

//---------------------------------------------------------------------------

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm1 *Form1;

//---------------------------------------------------------------------------

__fastcall TForm1::TForm1(TComponent* Owner)

       : TForm(Owner)

{

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)

{

//Рисование неба

Canvas->Brush->Color=(TColor)RGB(0,150,255);  //Выбор цвета пера

Canvas->FloodFill(Width/2,Height/2, NULL, fsBorder);  //Заполнение экрана цветом

// Рисование травы(Широкая линия)

Canvas->Pen->Color=(TColor)RGB(150,255,0);  

Canvas->Pen->Width=200;     //Толщина пера

Canvas->MoveTo(0,Height-100);    //Переместить перо в точку

 Canvas->LineTo(Width,Height-100);    //Провести линию до точки

 // Рисование дома

Canvas->Brush->Color=(TColor)RGB(255,0,0);

TRect tRect(Width/2,Height-200,200,200);   //tRect с координатами

Canvas->FillRect(tRect);     //заполнение tRect цветом

 //Рисование крыши(треугольник) через TPoint с заданием координат каждой точки

Canvas->Brush->Color=(TColor)RGB(255,0,0);

Canvas->Pen->Width=10;

TPoint tPoints[3];   //Объявление точек

tPoints[0].x = 150;   //Задание координат

tPoints[0].y = 200;

tPoints[1].x = 320;

tPoints[1].y = 50;

tPoints[2].x = 500;

 tPoints[2].y = 200;

tPoints[3].x = 150;

tPoints[3].y = 200;

  Canvas->Polyline(tPoints,3);  //Соединение точек

//Рисование солнца(круг)

Canvas->Brush->Style=bsHorizontal;    //Стиль пера

Canvas->Pen->Color = (TColor)RGB(255,255,0);

Canvas->Pen->Width=50;

Canvas->Arc(0,0,50,50,250,0,250,0);   //Рисование круга

}

//---------------------------------------------------------------------------

Вывод: Мы научились рисовать через Canvas на форме произвольные изображения.


 

А также другие работы, которые могут Вас заинтересовать

13222. Микола ІІ (1894–1917) 17.96 KB
  Микола ІІ 1894-1917 Микола ІІ як і його батько вважав що самодержавство є правлінням незалежним та повноправним основою Держави Російської; він був противником ліберальних поглядів введення значних демократичних свобод в Росії. Останній цар був добрим чоловіком та бат
13223. Росія у 90-х рр. ХХ – на початку ХХІ ст. 35.72 KB
  Росія у 90х рр. ХХ на початку ХХІ ст. Події початку 90х рр. ХХ ст. для державотворення Росії: Декларація про державний суверенітет від 12 червня 1990 р.; укладення 31 березня 1991 р. Федеративного договору між Центром і суб'єктами федерації крім Татарстану й Чечні;
13224. ОРГАНІЗМИ І СОЛОНІСТЬ ВОДИ 386 KB
  ЛАБОРАТОРНА РОБОТА № 1 ОРГАНІЗМИ І СОЛОНІСТЬ ВОДИ Мета: Ознайомитись з представниками стеногалінних та евригалінних організмів. Контрольні запитання Як поділяються природні води за складом солей Дати визначення стеногалінним організмам
13225. РОЛЬ ТЕМПЕРАТУРИ В ЖИТТІ ГІДРОБІОНТІВ 2.2 MB
  ЛАБОРАТОРНА РОБОТА № 2 РОЛЬ ТЕМПЕРАТУРИ В ЖИТТІ ГІДРОБІОНТІВ Мета: ознайомитись з температурним діапазоном водних організмів та їхнім пристосуванням до температури; з явищем цикломорфозу. Контрольні запитання Назвати температурні області Світового...
13226. РОЛЬ ОСВІТЛЕННЯ В ЖИТТІ ГІДРОБІОНТІВ 557.5 KB
  ЛАБОРАТОРНА РОБОТА № 3 РОЛЬ ОСВІТЛЕННЯ В ЖИТТІ ГІДРОБІОНТІВ Мета: ознайомитися з характеристиками сонячної радіації та її екологічними складовим; з будовою органів світіння. Зясувати роль світла в житті гідробіонтів. Контрольні запитання Характерис...
13227. ПЛАНКТОН. Занурення планктонних організмів 1.15 MB
  ЛАБОРАТОРНА РОБОТА № 4 ПЛАНКТОН Мета: Ознайомитись з організмами планктону та з органами руху планктонних організмів з їх пристосуваннями у воді в завислому стані. Закріпити знання студентів із зоології безхребетних про морфологічні особливості будови представ...
13228. Ознайомитися з організмами бентосу 991 KB
  ЛАБОРАТОРНА РОБОТА № 5 БЕНТОС Мета: Ознайомитися з організмами бентосу; закріпити здобуті знання із зоології безхребетних про морфологічні особливості будови та екології поширення представників бентосних організмів. Контрольні запитання Які організм
13229. НЕЙСТОН І ПЕРИФІТОН 521 KB
  ЛАБОРАТОРНА РОБОТА № 6 НЕЙСТОН І ПЕРИФІТОН Мета: Ознайомитись з особливостями будови та способом життя організмів нейстону і перифітону. Контрольні запитання Дати визначення поняття нейстон. Які умови необхідні для розвитку нейстону Які є два ви...
13230. МЕТОДИКА ПРОЕКТУВАННЯ ПРОСТИХ РЕЛЯЦІЙНИХ БАЗ ДАНИХ 1018 KB
  МЕТОДИКА ПРОЕКТУВАННЯ ПРОСТИХ РЕЛЯЦІЙНИХ БАЗ ДАНИХ За матеріалами книги Glenn A. Jackson Relational Database Design With Microcomputer Applications У 1965 р. зявилися перші результати в області управління базами даних роботи Чарльза Бахмана. З тієї пори технології баз даних пройшли ве