MCPcopy Create free account
hub / github.com/Image-Py/imagepy / mouse_down

Method mouse_down

imagepy/menus/Image/Stack/orthogonal_plg.py:39–96  ·  view source on GitHub ↗
(self, ips, x, y, btn, **key)

Source from the content-addressed store, hash-verified

37 img[:, int(y), :].copy()
38
39 def mouse_down(self, ips, x, y, btn, **key):
40 if ips==self.ips1:
41 self.ips1.mark.set_xy(x, y)
42 self.ips.mark.set_xy(None, y)
43 self.ips.cur = int(x)
44 self.ips1.update()
45 self.ips.update()
46 elif ips==self.ips2:
47 self.ips2.mark.set_xy(x, y)
48 self.ips.mark.set_xy(x, None)
49 self.ips.cur = int(y)
50 self.ips2.update()
51 self.ips.update()
52 elif ips.get_nslices()==1 or not ips.is3d:
53 IPy.alert('stack required!')
54 return
55 elif self.view1==None:
56 img1, img2 = self.getimgs(ips.imgs, x, y)
57 self.ips1 = ImagePlus([img1])
58 self.ips2 = ImagePlus([img2])
59 self.view1 = CanvasFrame(IPy.curapp)
60 self.view2 = CanvasFrame(IPy.curapp)
61
62 self.ips = ips
63 self.view1.set_ips(self.ips1)
64 self.view2.set_ips(self.ips2)
65 canvas1, canvas2 = self.view1.canvas, self.view2.canvas
66 canvas = IPy.get_window().canvas
67 canvas1.scaleidx = canvas2.scaleidx = canvas.scaleidx
68 canvas1.zoom(canvas.scales[canvas.scaleidx], 0, 0)
69 canvas2.zoom(canvas.scales[canvas.scaleidx], 0, 0)
70 self.view1.Show()
71 self.view2.Show()
72 ips.mark = Cross(*ips.size[::-1])
73 ips.mark.set_xy(x, y)
74 self.ips1.mark = Cross(*self.ips1.size[::-1])
75 self.ips2.mark = Cross(*self.ips2.size[::-1])
76 self.ips1.mark.set_xy(x, ips.cur)
77 self.ips2.mark.set_xy(ips.cur, y)
78 ips.update()
79
80 else:
81 img1, img2 = self.getimgs(ips.imgs, x, y)
82 self.ips1.set_imgs([img1])
83 self.ips2.set_imgs([img2])
84 '''
85 canvas1, canvas2 = self.view1.canvas, self.view2.canvas
86 canvas = IPy.curwindow.canvas
87 canvas1.scaleidx = canvas2.scaleidx = canvas.scaleidx
88 canvas1.zoom(canvas.scales[canvas.scaleidx], 0, 0)
89 canvas2.zoom(canvas.scales[canvas.scaleidx], 0, 0)
90 '''
91 self.ips1.mark.set_xy(ips.cur, y)
92 self.ips2.mark.set_xy(x, ips.cur)
93 self.ips1.update()
94 self.ips2.update()
95 ips.mark.set_xy(x, y)
96 ips.update()

Callers

nothing calls this directly

Calls 10

getimgsMethod · 0.95
ImagePlusClass · 0.90
CanvasFrameClass · 0.90
CrossClass · 0.85
set_xyMethod · 0.80
get_nslicesMethod · 0.80
zoomMethod · 0.80
set_imgsMethod · 0.80
updateMethod · 0.45
set_ipsMethod · 0.45

Tested by

no test coverage detected