Форум программистов, компьютерный форум, киберфорум
Программирование мультимедиа
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 1
Регистрация: 25.10.2012
Сообщений: 46
1

Масштабирование и поворот кота

20.10.2013, 17:52. Показов 694. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день. Я отрисовал 2d модельку кота на visual с++. Теперь мне трубуется её масштабировать и перемещать по экрану клавишами, но у меня не получается вынуть координаты, чтобы с ними работать. OpenGL использовать к сожалению нельзя. И еще, как привязать колесико мышки, чтобы когда его крутишь картинка увеличивалась? Вот сам код:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
void main ( ) {
    using namespace std;
 
    long double Scale = 2.0; //масштабирование 
    double x,y,x1,y1;
 
    HWND hwnd = GetConsoleWindow ( );
    HDC hdc = GetDC (hwnd);
    RECT rt;
    char buf[100];
 
    SetBkColor (hdc, RGB(255, 255, 255));
    SetTextColor (hdc, RGB(255, 0, 0));
    HPEN hAzurePen = CreatePen (PS_SOLID, 5, RGB(0, 123, 167));
    HPEN hOldPen = SelectPen (hdc, hAzurePen);
    HBRUSH hCarrotBrush =  CreateHatchBrush (HS_DIAGCROSS, RGB(0, 0, 255));
    HBRUSH hOldBrush = SelectBrush (hdc, hCarrotBrush);
 
 
    printf("CAT");
    do{
    GetClientRect (hwnd, &rt);
    sprintf (buf, "", rt.right, rt.bottom);
    TextOutA (hdc, 10, 10, buf, strlen(buf));
 
    POINT ppt[6]={ {150,600}, {100,100}, {400,100}, {350,600}, {300,450}, {200,450} };
    Polygon (hdc, ppt, 6);
 
    Ellipse (hdc, 150, 390, 250, 290);
    Ellipse (hdc, 250, 390, 350, 290);
    Ellipse (hdc, 240, 310, 260, 290);
    Ellipse (hdc, 220, 330, 224, 326);
    Ellipse (hdc, 280, 330, 284, 326);
 
    MoveToEx(hdc,250,290,0);
    LineTo(hdc,250,220);
    MoveToEx(hdc,250,220,0);
    LineTo(hdc,170,230);
    MoveToEx(hdc,250,220,0);
    LineTo(hdc,330,230);
    
 
for (int i = 0;i < 6;i++)
  {
   ppt[i].x = x1*Scale;    // Масштабирование
   ppt[i].y = y1*Scale;   
}
 
 
} while (getch ( )!=27);
 
    SelectPen (hdc, hOldPen);
    SelectBrush (hdc, hOldBrush);
    DeletePen (hAzurePen);
    DeleteBrush (hCarrotBrush);
    ReleaseDC (hwnd, hdc); 
 
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.10.2013, 17:52
Ответы с готовыми решениями:

Поворот/Масштабирование BoundingBox'a
При построении BoundingBox'a я использую минимальные и максимальные координаты модели... я могу...

Масштабирование и поворот треугольника
Нужно построить треугольник и произвести с ним два действия 1) Масштабирование треугольника...

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

Аффинные преобразования: поворот, масштабирование
фигура нарисована, не пойму как правильно сделать поворот, сжатие и растяжение const int size=19;...

0
20.10.2013, 17:52
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.10.2013, 17:52
Помогаю со студенческими работами здесь

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

Перемещение, масштабирование и поворот C++ builder Canvas
Можете пожалуйста какой то информации дать по этому поводу , или на примере каком то простом ...

Афинные преобразования: перенос, масштабирование, поворот треугольника
Преобразования: перенос, масштабирование, поворот треугольника, помогите кто может.

Поворот, масштабирование, перенос нарисованной фигуры на канве
Доброго времени суток всем. Заранее извиняюсь за создание такой темы, этот вопрос наверняка уже не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru