如何在QGraphicsScene上获得XY点的颜色?

时间:2013-02-24 10:54:46

标签: c++ qt colors qgraphicsscene

这似乎微不足道,但无法找到解决方案。我需要在QGraphicsScene上读取某个x,y点的颜色。 像graphScen->colorAt(x,y);

这样的东西

1 个答案:

答案 0 :(得分:0)

QGraphivsScene不知道点上的颜色,并且它不是真正的微不足道(你在场景和物品上都有变换)。你可以做的是访问渲染场景的像素图并访问那里的像素信息。

QPixmap paintDevice(sceneBoundingRect());
QPainter painter(&paintDevice);
graphScen->render(painter);
// Now you have the pixmap, get the pixel information.
QImage pixels = paintDevice.toImage();
QRgb colorAt = pixels.pixel(x,y);

完成。