0
Это кажется тривиальным, но не может найти решение. Мне нужно прочитать цвет некоторой точки x, y на QGraphicsScene. Что-то вроде graphScen->colorAt(x,y);
Как получить цвет точки XY на QGraphicsScene?
Это кажется тривиальным, но не может найти решение. Мне нужно прочитать цвет некоторой точки x, y на QGraphicsScene. Что-то вроде graphScen->colorAt(x,y);
Как получить цвет точки XY на QGraphicsScene?
QGraphivsScene не имеет знаний о цветах в точках, и это не совсем тривиально (у вас есть преобразования как на сцены, так и на предметы). что вы можете сделать, это получить доступ к pixmap рендеринговой сцены и получить доступ к информации о пикселях.
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);
Выполнено.
См. Http://stackoverflow.com/questions/3602152/how-to-draw-a-qpoint-on-a-qgraphicsview-scene – user1929959
Этот вопрос не может быть отвечен для QGraphicsScene, прежде чем он будет окрашен в QGraphicsView , Сцена управляет еще неокрашенными элементами, с поплавковыми координатами. Фактическая картина должна выполняться устройством рисования, то есть QGraphicsView. Только тогда вызывается QGraphicsItem :: paint и делает фактическую картину. –