add ModuleFixTarget tab
This commit is contained in:
@@ -138,6 +138,27 @@ class Marker(pg.ROI):
|
||||
# p.drawRect(-w / 2, -h / 2, w, h)
|
||||
# # p.drawText(-w, -h, '{:.0f}x{:.0f}'.format(*self._size))
|
||||
|
||||
class Fiducial(pg.ROI):
|
||||
def __init__(self, pos, size, xyz, **kargs):
|
||||
pg.ROI.__init__(self, pos, size, **kargs)
|
||||
self._xyz=xyz
|
||||
|
||||
def paint(self, p, *args):
|
||||
#pg.ROI.paint(self, p, *args)
|
||||
r=QtCore.QRectF(0, 0, self.state['size'][0], self.state['size'][1]).normalized()
|
||||
p.setRenderHint(QtGui.QPainter.Antialiasing)
|
||||
p.setPen(self.currentPen)
|
||||
p.translate(r.left(), r.top())
|
||||
p.scale(.01*r.width(), .01*r.height()) # -> values x,y 0 to 100
|
||||
p.drawRect(0, 0, 100, 100)
|
||||
p.setPen(pg.mkPen(width=1, color=[255, 0, 0]))
|
||||
p.drawLine(pg.Point(50,10), pg.Point(50, 90))
|
||||
p.drawLine(pg.Point(10,50), pg.Point(90, 50))
|
||||
tr=p.transform()
|
||||
tr.setMatrix(tr.m11(), tr.m12(), tr.m13(), tr.m21(), -tr.m22(), tr.m23(), tr.m31(), tr.m32(), tr.m33())
|
||||
p.setTransform(tr)
|
||||
|
||||
|
||||
class Grid(pg.ROI):
|
||||
'''a grid'''
|
||||
|
||||
@@ -200,6 +221,25 @@ class Grid(pg.ROI):
|
||||
#p.drawEllipse(0, 0, 1, 1)
|
||||
#p.drawRect(0, 0, 1, 1)
|
||||
|
||||
def __repr__(self):
|
||||
s=f'{self.__class__.__name__}:(pos:{tuple(self.pos())}, size:{tuple(self.size())}, cnt:{self._cnt}, ficucialScale:{self._fidScl}}}'
|
||||
return s
|
||||
import yaml
|
||||
def yaml_repr_Grid(dumper, data):
|
||||
#s=f'{{"pos":{tuple(data.pos())}, "size":{tuple(data.size())}, "cnt":{data._cnt}, "ficucialScale":{data._fidScl}}}'
|
||||
#return dumper.represent_scalar(u'!Grid', s)
|
||||
m={'pos':tuple(data.pos()),'size':tuple(data.size()),'cnt':data._cnt, 'ficucialScale':data._fidScl}
|
||||
return dumper.represent_mapping(u'!Grid', m)
|
||||
yaml.add_representer(Grid, yaml_repr_Grid)
|
||||
|
||||
def yaml_cnstr_Grid(loader, node):
|
||||
#value = loader.construct_scalar(node)
|
||||
#kwargs=eval(value)
|
||||
#return Grid(**kwargs)
|
||||
m = loader.construct_mapping(node)
|
||||
return Grid(**m)
|
||||
yaml.add_constructor(u'!Grid', yaml_cnstr_Grid)
|
||||
|
||||
|
||||
class Path(pg.ROI):
|
||||
'''
|
||||
@@ -524,6 +564,10 @@ if __name__=='__main__':
|
||||
vi=FixTargetFrame((400,-200),(400,400),tpl='12.5x12.5')
|
||||
vb.addItem(vi)
|
||||
|
||||
vi=Fiducial((0,200),(40,40),(1,2,3))
|
||||
vb.addItem(vi)
|
||||
|
||||
|
||||
childTree(vb)
|
||||
|
||||
w.scene().sigMouseClicked.connect(mouse_click_event)
|
||||
|
||||
Reference in New Issue
Block a user