Einfügen eines Sliders
Um den Grad der Faarbblindheit korrekt zu Simulieren, muss ein Widget eingebaut werden, welches den prozentualen Anteil der Differenz zwischen Simulation und echtem Wert vergleicht und mit dem ausgewählten Wert (z. B. 80%) neu gewichtet.
This commit is contained in:
parent
d1cd073fde
commit
da88618ce6
@ -53,7 +53,8 @@ class Protanopie(Dyschromasie):
|
||||
# Einzelne Pixelwertberechnung
|
||||
for i in range(self.rows):
|
||||
for j in range(self.cols):
|
||||
self.cb_image[i, j] = np.flipud(self.T_reversed.dot(self.sim_mat).dot(self.T).dot(np.flipud(self.cb_image[i, j])))
|
||||
self.cb_image[i, j] = np.flipud(
|
||||
self.T_reversed.dot(self.sim_mat).dot(self.T).dot(np.flipud(self.cb_image[i, j])))
|
||||
|
||||
self.sim_image = np.copy(self.cb_image)
|
||||
self.sim_image = self.sim_image.astype('uint8')
|
||||
@ -83,7 +84,8 @@ class Deuteranopie(Dyschromasie):
|
||||
# Einzelne Pixelwertberechnung
|
||||
for i in range(self.rows):
|
||||
for j in range(self.cols):
|
||||
self.cb_image[i, j] = np.flipud(self.T_reversed.dot(self.sim_mat).dot(self.T).dot(np.flipud(self.cb_image[i, j])))
|
||||
self.cb_image[i, j] = np.flipud(
|
||||
self.T_reversed.dot(self.sim_mat).dot(self.T).dot(np.flipud(self.cb_image[i, j])))
|
||||
|
||||
self.sim_image = np.copy(self.cb_image)
|
||||
self.sim_image = self.sim_image.astype('uint8')
|
||||
@ -112,7 +114,8 @@ class Tritanopie(Dyschromasie):
|
||||
# Einzelne Pixelwertberechnung
|
||||
for i in range(self.rows):
|
||||
for j in range(self.cols):
|
||||
self.cb_image[i, j] = np.flipud(self.T_reversed.dot(self.sim_mat).dot(self.T).dot(np.flipud(self.cb_image[i, j])))
|
||||
self.cb_image[i, j] = np.flipud(
|
||||
self.T_reversed.dot(self.sim_mat).dot(self.T).dot(np.flipud(self.cb_image[i, j])))
|
||||
|
||||
self.sim_image = np.copy(self.cb_image)
|
||||
self.sim_image = self.sim_image.astype('uint8')
|
||||
@ -124,6 +127,7 @@ class Tritanopie(Dyschromasie):
|
||||
self.sim_image[i, j, x] = self.reverseGammaCorrection(self.cb_image[i, j, x])
|
||||
return self.sim_image
|
||||
|
||||
|
||||
root = tk.Tk()
|
||||
root.title("Projekt Dyschromasie")
|
||||
|
||||
@ -135,6 +139,10 @@ kanaele = 0
|
||||
sim_pro = tk.IntVar(root)
|
||||
sim_deut = tk.IntVar(root)
|
||||
sim_tri = tk.IntVar(root)
|
||||
simGrad = tk.IntVar(root)
|
||||
|
||||
simulationsGradient = tk.Scale(root, from_=0, to_=100, variable=simGrad, orient='horizontal')
|
||||
simulationsGradient.grid(column= 0, row = 1, columnspan=10)
|
||||
|
||||
def browse():
|
||||
# Auswahl des FilePaths
|
||||
@ -200,7 +208,6 @@ def simulate():
|
||||
sim_pic_pro.grid(columnspan=5)
|
||||
|
||||
|
||||
|
||||
btn = tk.Button(root, text="Browse", width=25, command=browse, bg='light blue')
|
||||
btn.grid(column=0, row=0, columnspan=2)
|
||||
|
||||
@ -212,8 +219,8 @@ checkButton_p = tk.Checkbutton(root, text="Protanop", variable=sim_pro, onvalue=
|
||||
checkButton_d = tk.Checkbutton(root, text="Deutanop", variable=sim_deut, onvalue=1, offvalue=0, height=5, width=20)
|
||||
checkButton_t = tk.Checkbutton(root, text="Tritanop", variable=sim_tri, onvalue=1, offvalue=0, height=5, width=20)
|
||||
|
||||
checkButton_p.grid(column = 0, row = 1)
|
||||
checkButton_d.grid(column = 1, row = 1)
|
||||
checkButton_t.grid(column = 2, row = 1)
|
||||
checkButton_p.grid(column=0, row=2)
|
||||
checkButton_d.grid(column=1, row=2)
|
||||
checkButton_t.grid(column=2, row=2)
|
||||
|
||||
root.mainloop()
|
||||
|
Loading…
x
Reference in New Issue
Block a user