def _createROI(self): w = self.display.widget # s = w.image.shape[1:3] r = self.display.widget.view.vb.viewRange() p = ((r[0][0] + r[0][1]) / 2, (r[1][0] + r[1][1]) / 2) s = [(r[0][1] - r[0][0]) * 0.1, (r[1][1] - r[1][0]) * 0.1] # if w.image.ndim == 3: # s = s[1:] if not self.quadROI: self.quadROI = PolyLineROI( [ [p[0] - s[0], p[1] - s[1]], [p[0] + s[0], p[1] - s[1]], [p[0] + s[0], p[1] + s[1]], [p[0] - s[0], p[1] + s[1]], # [s[0]*0.2, s[1]*0.2], # [s[0]*0.8, s[1]*0.2], # [s[0]*0.8, s[1]*0.8], # [s[0]*0.2, s[1]*0.8] ], closed=True, pen='r') self.quadROI.translatable = False self.quadROI.mouseHovering = False # PREVENT CREATION OF SUB SEGMENTS: for s in self.quadROI.segments: s.mouseClickEvent = lambda x: None w.view.vb.addItem(self.quadROI)