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

Графика

18.01.2022, 17:42. Показов 750. Ответов 9
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Написать программу, которая вводит с клавиатуры радиус окружности, рисует окружность в центре экрана и с небольшой задержкой меняет цвет заливки окружности (красный, зеленый, синий ...).
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.01.2022, 17:42
Ответы с готовыми решениями:

Графика
Хочу работать с графикой в С++. С каким приложением лучше работать OpenGL или с каким-то другим...

Графика в C++
Задание звучит так: В верхней половине графического экрана нарисовать эллипс, в середине эллипса...

Графика в С++
Есть игра крестики-нолики в консоли.. Хочу добавить графику(graphics.h),но так как еще не пойму как...

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

9
3266 / 1487 / 469
Регистрация: 01.06.2021
Сообщений: 5,021
22.01.2022, 15:48 2
Вышло так (не забудьте добавить линкеру опцию -lgdiplus):

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
#include <iostream>
#include <windows.h>
#include <gdiplus.h>
using namespace Gdiplus;
 
int main()
{
    GdiplusStartupInput gdiplusStartupInput;
    ULONG_PTR gdiplusToken;
    GdiplusStartup(&gdiplusToken, &gdiplusStartupInput, NULL);
 
    HWND hwnd = GetConsoleWindow();
    HDC hdc = GetDC(hwnd);
 
    Graphics graphics(hdc);
    graphics.SetSmoothingMode(SmoothingModeAntiAlias);
    SolidBrush redBrush(Color::Red);
    SolidBrush greenBrush(Color::Green);
    SolidBrush blueBrush(Color::Blue);
 
    std::cout << "Radius = ";
    int r; std::cin >> r;
    int d = 2*r;
 
    RECT rect;
    GetClientRect(hwnd, &rect);
    int width = rect.right - rect.left;
    int height = rect.bottom - rect.top;
 
    while (true)
    {
        graphics.FillEllipse(&redBrush, width/2-r, height/2-r, d, d);
        Sleep(1000);
        graphics.FillEllipse(&greenBrush, width/2-r, height/2-r, d, d);
        Sleep(1000);
        graphics.FillEllipse(&blueBrush, width/2-r, height/2-r, d, d);
        Sleep(1000);
    }
 
    GdiplusShutdown(gdiplusToken);
    ReleaseDC(hwnd, hdc);
}
Я не эксперт, поэтому, возможно, это не самый лучший код.
0
171 / 104 / 25
Регистрация: 17.10.2010
Сообщений: 1,146
22.01.2022, 21:34 3
Цитата Сообщение от Royal_X Посмотреть сообщение
не забудьте добавить линкеру опцию -lgdiplus):
Как это сделать????
0
171 / 104 / 25
Регистрация: 17.10.2010
Сообщений: 1,146
22.01.2022, 21:40 4
Как исправить данную ошибку????
Миниатюры
Графика  
0
2276 / 1767 / 741
Регистрация: 27.07.2012
Сообщений: 5,250
22.01.2022, 21:42 5
Цитата Сообщение от isaak Посмотреть сообщение
Как это сделать????
Проект -> Свойства -> Компоновщик -> Ввод -> Дополнительные зависимости -> + gdiplus.lib
0
3266 / 1487 / 469
Регистрация: 01.06.2021
Сообщений: 5,021
22.01.2022, 22:10 6
John Prick, я не использую компилятор от Microsoft (MSVC), но слышал, что там даже можно просто прописать под using namespace Gdiplus;
C++
1
#pragma comment (lib,"Gdiplus.lib")
Вы не знаете, это правда?
0
171 / 104 / 25
Регистрация: 17.10.2010
Сообщений: 1,146
22.01.2022, 22:19 7
Теперь другие ошибки выдает????
Миниатюры
Графика  
0
3266 / 1487 / 469
Регистрация: 01.06.2021
Сообщений: 5,021
22.01.2022, 22:24 8
isaak, я не такой эксперт, чтобы пользоваться MS Visual Studio и компилятором MSVC, который занимает несколько гигов на диске Откуда мне знать, почему он выдает ошибки \ предупреждения? Вы же настроили свою IDE и компилятор? Может вам кто-нибудь с такой же IDE подскажет.
0
2276 / 1767 / 741
Регистрация: 27.07.2012
Сообщений: 5,250
22.01.2022, 22:42 9
Цитата Сообщение от Royal_X Посмотреть сообщение
Вы не знаете, это правда?
Но я предпочитаю всё же в настройках проекта прописать, по старинке.
0
Модератор
Эксперт Java
2558 / 1094 / 375
Регистрация: 11.08.2017
Сообщений: 3,332
22.01.2022, 23:42 10
Цитата Сообщение от Royal_X Посмотреть сообщение
можно просто прописать
очень плохая практика, библиотеки подключаются в свойствах проекта Linker -> Input

Добавлено через 2 минуты
Цитата Сообщение от Royal_X Посмотреть сообщение
Откуда мне знать, почему он выдает ошибки \ предупреждения?
Имхо ошибки линковки везде одинаково выглядят...
0
22.01.2022, 23:42
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.01.2022, 23:42
Помогаю со студенческими работами здесь

Графика в C++
Учу C++, но ни в одной книге не написано про графику в C++. В Pascale есть графика, в C есть, а в...

Графика в Си++
Подскажите мне пожалуйста какие - нибудь графические примитивы в Си++ и как они пишутся.

Графика в С++
Здравствуйте! Дали задание: используя каркасное представление нарисовать куб (изометрия), и с...

Графика
Зравствуйте! :) Помогите, пожалуйста!!! :) Си!!! :( 1)Нарисовать в верхней правой четверти...

графика в си++
Как нарисовать ellipse не могу с координатами разобраться

Графика в С++
Доброго всем дня. Планирую начать изучать графику в С++ ... я так понимаю, что вариант работы с...


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

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