获取QPolygonF的顶点

2024-10-03 00:21:56 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要得到一个QPolygonF的顶点。这是我的密码

class Example(QtGui.QGraphicsScene):
    def block(self): 
        self.bpoint1 = QtCore.QPointF(150 , 150)
        self.bpoint2 = QtCore.QPointF(200 , 150)
        self.bpoint3 = QtCore.QPointF(200 , 200)
        self.bpoint4 = QtCore.QPointF(150 , 200)
        self.bproto = QtGui.QPolygonF([self.bpoint1 , self.bpoint2 , self.bpoint3 , self.bpoint4])
        self.block = QtGui.QGraphicsPolygonItem()
        self.block.setPolygon(self.bproto)
        self.block.setFlag(QtGui.QGraphicsItem.ItemIsMovable)

我的块现在可以移动了,我需要每次都得到新的顶点,我的块是感动了。怎么了我做了吗?我试过了self.block.boundingRect(),但它给了我同样的矩形。有人能帮我吗。在


Tags: self密码exampleblockclass顶点qtguiqtcore
1条回答
网友
1楼 · 发布于 2024-10-03 00:21:56

QPolygon只是从QVector派生的,所以只需使用普通的数组访问器。但是它们是在局部坐标系中,所以它们需要映射到场景坐标系(我想这就是你所说的“新顶点”)使用block.mapToScene( block.polygon()[i] )。在

相关问题 更多 >