Algorithm 快速彩色矩形的生成

Algorithm 快速彩色矩形的生成,algorithm,qt,qt4,real-time,color-picker,Algorithm,Qt,Qt4,Real Time,Color Picker,我正在为Qt设计一个更强大的颜色选择器,并寻求一些建议。如何生成快速实时彩色矩形,如Photoshop中的矩形(用于HSB和RGB)。我最初考虑使用QImage和scanline分别计算所有像素,但这可能太慢了 我想写一个OpenGL着色器会更好。正如我所记得的,你可以为顶点指定颜色,它会为你插值变化。我只是不知道如何在Qt中实现这一点,或者这是否值得付出努力 我正在使用QGraphicsView显示矩形。如有任何建议,将不胜感激 好的,再仔细研究一下QGradient,你能不能不使用多个QGr

我正在为Qt设计一个更强大的颜色选择器,并寻求一些建议。如何生成快速实时彩色矩形,如Photoshop中的矩形(用于HSB和RGB)。我最初考虑使用QImage和scanline分别计算所有像素,但这可能太慢了

我想写一个OpenGL着色器会更好。正如我所记得的,你可以为顶点指定颜色,它会为你插值变化。我只是不知道如何在Qt中实现这一点,或者这是否值得付出努力

我正在使用
QGraphicsView
显示矩形。如有任何建议,将不胜感激


好的,再仔细研究一下QGradient,你能不能不使用多个QGradient来创建你需要的效果


对于3个示例中的最后一个,您可以为颜色本身创建一个具有多个停止点的单一渐变,然后使用黑色(alpha 0)到黑色(alpha 255)的QGradient覆盖该渐变,并使用适当的停止点,以使渐变位于正确的点。

我对Qt完全陌生,但将渐变设置为画笔会没有帮助吗?我可能完全忽略了这一点:)据我所知,QGradient只适用于1D。我需要一个2D渐变来做我需要的。它真的会太慢吗?扫描线只是指向图像的指针。开销不多。渐变是如何实现的?“可能太慢了”?你试过了吗?否则将导致过早的优化。你想画多少个彩色矩形?你需要平滑缩放吗?根据平台的不同,如果在paint()中通过QImage一次又一次地创建图像,速度可能会太慢。然后创建它一次并将其缓存为QPixmap,然后在paint()中绘制它。