use groupItem for tracked object

This commit is contained in:
2022-09-01 07:59:21 +02:00
parent d29a961763
commit d96f3cc9db
3 changed files with 161 additions and 73 deletions

View File

@@ -182,10 +182,10 @@ class Fiducial(pg.ROI):
class Grid(pg.ROI):
'''a grid'''
def __init__( self, pos=(0,0), size=(30,20), cnt=(6,4), ficucialScale=5, **kargs):
def __init__( self, pos=(0,0), size=(30,20), cnt=(6,4), fiducialSize=.2, **kargs):
pg.ROI.__init__(self, pos, size, **kargs)
self._cnt=cnt
self._fidScl=ficucialScale
self._fidSz=fiducialSize
self.addScaleHandle([1, 1], [0, 0])
self.addScaleHandle([0, 0], [1, 1])
self.addScaleRotateHandle([1, 0], [0, 0])
@@ -206,9 +206,8 @@ class Grid(pg.ROI):
y=i*py
p.drawLine(pg.Point(0, y), pg.Point(sz[0] ,y ))
fidScl=self._fidScl
rx=fidScl*r.width()/sz[0]
ry=fidScl*r.height()/sz[1]
fidSz=self._fidSz
rx=ry=fidSz/2
p.setPen(pg.mkPen(width=1, color=(255, 0, 0)))
for j in range(ny):
y=j*py
@@ -222,7 +221,7 @@ class Grid(pg.ROI):
#p.drawRect(0, 0, 1, 1)
def __repr__(self):
s=f'{self.__class__.__name__}:(pos:{itr2str(self.pos())}, size:{itr2str(self.size())}, cnt:{self._cnt}, ficucialScale:{self._fidScl}}}'
s=f'{self.__class__.__name__}:(pos:{itr2str(self.pos())}, size:{itr2str(self.size())}, cnt:{self._cnt}, fidSize:{self._fidSz}}}'
return s
def obj2json(self,encoder):
@@ -231,7 +230,7 @@ class Grid(pg.ROI):
'pos':tuple(self.pos()),
'size':tuple(self.size()),
'cnt':self._cnt,
'ficucialScale':self._fidScl
'fiducialSize':self._fidSz
}
return jsn
@@ -406,7 +405,8 @@ class FixTargetFrame(pg.ROI):
r=QtCore.QRectF(0, 0, sz[0], sz[1]).normalized()
p.setRenderHint(QtGui.QPainter.Antialiasing)
p.setPen(self.currentPen)
p.drawRect(0, 0, int(sz[0]), int(sz[1]))
#p.drawRect(0, 0, int(sz[0]), int(sz[1]))
p.drawRect(r)
dscr=self._dscr
objSz=dscr['size']