Как нарисовать один пиксель

0

Мой вопрос в том, что, как я могу нарисовать один пиксель на экране с использованием C++ родных библиотек и функций? Я имею в виду не использовать внешние функции или библиотеки. Как это возможно?

Что-то вроде этого:

int rgb = {255,150,113};

nativeLibrary.drawPixel(0,1, rgb);

Приятный пример.

  • 8
    C ++ не предоставляет «родную» графическую библиотеку.
  • 0
    почему кто-то захочет так поступить?
Показать ещё 3 комментария
Теги:

3 ответа

4

Вы не можете. C++ еще не имеет графических или графических библиотек.

  • 0
    Итак, я должен пойти и изучать OpenGL?
  • 1
    @MostafaTalebi, который зависит от того, чего вы хотите добиться для некоторых целей, лучше GDI для других GL, DX для других, даже более высоких уровней, таких как SDL или некоторые движки ... все это относится к целевой платформе, fps, 2D / 3D / ND и типу графики (точечный рисунок, вектор, объемный ....)
Показать ещё 1 комментарий
3

C++ может в конечном итоге добавить графику в стандарт (они рассматривали его), но сейчас стандарт C++ не включает графику.

Однако вы можете использовать другие стандарты, чтобы писать пиксель на экран. Если вы работаете в Linux, то уже есть ответ.

Если вы используете VGA, вы можете фактически написать прямо в буфер VGA (ПРЕДУПРЕЖДЕНИЕ: ПУТЬ НАХОДИТСЯ Как " Предназначено для DOS" устаревшее). Вероятно, вы использовали бы встроенную сборку C++ для установки режима рендеринга вместо того, что использует эта страница, а затем используйте обычный unsigned char* вместо "дальнего" указателя для доступа к нему. Хотя вы, вероятно, не используете VGA и, вероятно, не хотите использовать сборку (особенно встроенную сборку).

Так что вы делаете вне этого? Не важно. Вам нужно использовать внешнюю библиотеку специально для рендеринга, поэтому, возможно, OpenGL или DirectX или какая-либо библиотека, использующая их.

1

Как и в предыдущем ответе, нет никакой родной библиотеки для обработки изображений. Однако, если вы работаете в Windows API и, в частности, MFC, вы можете использовать класс CBitmap.

  • 1
    CBitmap отсутствует в Windows API (в WinAPI нет классов). Это класс MFC.
  • 0
    И MFC ужасно устарел. Использование его для любого нового проекта крайне сомнительно.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню