矩形 pyqtgraph ROI 的角坐标



假设你有一个带有一些数据的矩形pyqtgraph roi实例:

import pyqtgraph as pg
from pyqtgraph.Qt import QtCore, QtGui
import numpy as np
data = np.random.random(size=(50,50,50))
app = QtGui.QApplication([])
w = pg.ImageView()
roi = pg.RectROI([20, 20], [20, 20], pen=(0,9))
roi.addRotateHandle([1, 0], [0.5, 0.5])
w.setImage(data)
w.addItem(roi)
w.show()

缩放/旋转后如何提取ROI的4个角坐标?它认为可以在调用后以三角函数计算它们

pos_x, pos_y = roi.pos()
angle = roi.angle()
size_x, size_y = roi.size()

但是,这并不是那么简单,因为角度可以取值>360°等。我觉得我错过了一些内置解决方案。

> smiet

我正在寻找类似的东西,但是在查看了文档,源代码和Web之后,我认为您确实只剩下三角解决方案了。 不过,您可以通过调用来保存两行代码

roi.getState()

它将您想要的信息保存在字典中。关于您的角度超过 360° 的问题 - 模运算符不应该解决问题吗?

angle = 365 % 360

..还是我弄错了你的问题?

最新更新