PyQt4 QPolygonF到QImage

时间:2017-05-01 12:42:22

标签: python pyqt pyqt4 qimage qpolygon

目前有一个程序,用户可以使用鼠标点击绘制自己的形状。然后它会获取一个QPointF列表(通过用户鼠标点击获得)并创建一个QPolygonF。此步骤很好,转换为PolygonItem并添加到图形视图时,可以看到多边形的可见轮廓。但是我需要将它转换为QImage并将其像素设置为绿色(稍后在解决质心时重要的颜色)但我不确定如何这样做。目前我有......

self.poly=QPolygonF(self.vertexList) #works

self.polyItem=QGraphicsPolygonItem(self.poly) #works, visible when added to scene

self.pixItem=QGraphicsPixmapItem(self.polyItem) #for some reason this step doesn't work. The pixmap item is created, however its empty

self.addItem(self.pixItem) #not visible, this is where it goes wrong

self.pix = self.pixItem.pixmap()

self.image=self.pix.toImage()

self.image.convertToFormat(4)#4=RGB32

value=qRgb(0,255,0) #These last two lines turn it green but irrelevant to issue

self.image.fill(value)

据我了解,你可以将一种类型的项目转换为另一种类型(没有给出错误)但是将多边形项目转换为pixmap项目它会变为空白。非常感谢任何帮助。

0 个答案:

没有答案