比较来自世界各地的卖家的域名和 IT 服务价格

绘制最快的方式 1024x1024 屏幕上的点

我开发一个应该计算图像中每个点的颜色的程序 1024x1024 在特殊算法的帮助下。 点的颜色代表了一些含义。 因此,每个点独立于其他点,并且必须单独绘制。 我不需要经常更新。 事实上,我只需要展示一次。

绘制单个像素的最快方法是什么? Qt?

我可以得到类似的东西吗? "screen memory" 并以表示每个像素的4字节集数组的形式写下整个图像 4 这个内存中的字节?
已邀请:

诸葛浮云

赞同来自:

班级
QImage

优化以使用像素。 您可以使用所需的大小创建其中一个实例。 , 然后单独安装像素
setPixel

, 可以访问原始数据并使用原始数据操作
bits//

. 只需确保使用正确的格式 /例如,值 RGBA 或8位图像的颜色索引/

八刀丁二

赞同来自:

最快的解决方案可能是创造
http://developer.qt.nokia.com/ ... .html
, 操纵它们 /安装像素/, 然后得到 Qt 为了他的绘画。

班级 QImage 专为快速而设计 IO, 来自用户手册:

班级 QImage 提供独立于硬件的图像表示,它提供直接访问像素数据,可以用作绘图设备。

班级 QImage 支持列表描述的几种图像格式 Format. 这些包括在所有版本中可用的单色,8位,32位和α混合图像。 Qt 4.x.

有关像素操纵的信息包含在详细说明部分中。

要显示它,最简单的方法将被转换为栅格图像
QPixmap::fromImage

, 然后用标签
QLabel::setPixmap

.

对于更大的控制,您可以子类
QWidget

, 超载
paintEvent

并画画 QImage 从
QPainter


QPainter::drawImage

.

冰洋

赞同来自:

你可以尝试使用
http://qt-project.org/doc/qglwidget.html
OpenGL 和功能 glDrawPixels.

要回复问题请先登录注册