如何在C ++中进行图形处理?

问题描述 投票:0回答:1

我的目标:

我希望能够像位图图片一样一一处理像素。也许有这样的功能:

SetPixel(int x,int y,int Color) {

  //Some code that set the color of one pixel by his coordinates x and y

  return 1;//Returns nothing
}

它将通过其位置设置窗口中像素的颜色

所需功能:

  • 能够独立更改像素
  • 至少具有两种颜色(黑白)
  • 使用尽可能少的库(因此更容易理解做什么)
  • 该库应该是我可以包含在程序目录中的文件
  • 必须在Ubuntu上工作

目标功能(可选)

  • 具有16777216种颜色(或TrueColor)
  • 能够知道窗口的(xy)大小
  • 没有库,仅包含一些功能
  • 成为跨平台平台(对我来说真的是可选的)

使用SDL2,可以实现大多数功能。

问题:

我发现没有一个可用的库(在Graphics.h和Windows.h上测试过),我可能做错了就像不下载该库,但没有任何教程显示是否必须下载任何内容,因此我相信仅适用于Windows。

我已经尝试了许多教程,但是所有这些(我发现)都不能在我的计算机上正常工作,因为它们使用Graphics.h或Windows.h,但是我认为我必须先下载该库,但是我没有教程中提到找到了。但是,如果有人说“ Download Graphics.h” 我不知道如何下载库。也是may,因为它在Ubuntu上不起作用。

提出了SDL2,它完成了我想做的大部分工作,但看起来像一个沉重的库(我可能是错的),我希望它是一些可以直接包含在程序目录中的文件类似于头文件,后跟C ++文件。

如果需要任何澄清,请添加评论或建议修改

c++ graphics pixel
1个回答
1
投票

您应该学习SDL2。它很容易学习,我建议您阅读这些文章,它们是一个很棒且完整的教程。

http://lazyfoo.net/tutorials/SDL/index.php

您需要的特殊功能在此版本中可用:http://lazyfoo.net/tutorials/SDL/08_geometry_rendering/index.php

仅向您显示功能:

SDL_RenderSetDrawColor( myRenderer, 0xFF, 0xFF, 0xFF, 0xFF);
SDL_RenderDrawPoint( myRenderer, cordX, cordY);

因此您可以选择颜色并独立更改像素

PS:它在ubuntu上有效,文章将教您如何配置所需的一切。PS2:如果需要帮助,请与我联系,我的操作系统也是ubuntu。

© www.soinside.com 2019 - 2024. All rights reserved.