PyQt4 QPolygonF to QImage

В настоящее время есть программа, где пользователь может нарисовать свою собственную форму, используя щелчки мыши. Затем он берет список QPointFs (полученный из щелчков мыши пользователем) и создает 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)

Насколько я понимаю, вы можете конвертировать один тип элемента в другой (ошибка не выдается), но с элементом полигона в элемент растрового изображения он становится пустым. Буду благодарен за любую помощь.

0 ответов

Другие вопросы по тегам