теория, алгоритмы, примеры на С++ и OpenGL  

Мы vkontakte.ru


Rambler's Top100 Rambler's Top100
Каталог@Mail.ru - каталог ресурсов интернет

Друзья

Словарь синонимов русского языка

Рисуем треугольник

В предыдущий раз мы создали шаблон Windows программы. Теперь возникает законный вопрос, как нарисовать что-либо.

Нарисуем треугольник:

Треугольник

Для этого создадим новый файл draw.cpp:

#include <windows.h>

void Draw(HDC hdc){
      MoveToEx(hdc, 100, 100, NULL);
      LineTo(hdc, 150, 150);
      LineTo(hdc, 50, 200);
      LineTo(hdc, 100, 100);
}

И файл draw.h:

void Draw(HDC hdc);

В основном файле добавим в начало: 

#include "draw.h"

А между заполнением области фоновым цветом и выводом изображения на основной контекст, появляется вызов процедуры рисования:

// Закраска фоновым цветом

//…

                  DeleteObject(brush);

                  // Рисование

                  Draw(hCmpDC);

                  // Вывод на экран

                  SetStretchBltMode(hdc, COLORONCOLOR);

//… 

Прим. Рисуем мы на контексте-двойнике, а уже потом перекидываем изображение на основной контекст.

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

Вот мы и создали наше первое изображение. Слишком просто? Пока да, но в дальнейшем я покажу, как корректно и быстро выводить 2D объекты в логической системе координат. Ведь наши первые трехмерные модели будут состоять именно из треугольников.

Скачать исходный текст демонстрационной программы