def setup (): # %% crete pygame window Window_size = [0,0] Window_size [0] = 256*4 Window_size [1] = 256+80 screen = pygame.display.set_mode( Window_size ) screen.fill((128,128,128)) update_view (screen,1,sum(number_of_im)) #%% input widgets global slider_first_frame slider_first_frame = pw.Slider( screen, 25, 256 + 20, 200, 10, min = 1, max = sum(number_of_im),step = 1,initial = 1) global text_first text_first = pw.TextBox( screen ,25, 256 + 35, 60, 40, fontSize=24) text_first.draw() slider_first_frame.draw() global slider_last_frame slider_last_frame = pw.Slider( screen, 1024-256+25, 256 + 20, 200, 10, min = 1, max = sum(number_of_im),step = 1,initial = sum(number_of_im)) global text_last text_last = pw.TextBox( screen ,1024-256+25, 256 + 35, 60, 40, fontSize=24) text_last.draw() slider_last_frame.draw() global button_done button_done = pw.Button( screen, 512 - 25, 256 +20, 50, 40, text='done', fontSize=22, margin=10, inactiveColour=(128, 200, 128), pressedColour=(0, 255, 0), radius=20, onClick=lambda: Set_done_cmd(False)) pygame.display.update() return screen
size = canvas.get_width_height() renderer = canvas.get_renderer() raw_data = renderer.tostring_rgb() surf = pog.image.fromstring(raw_data, size, "RGB") plt.close('all') pog.init() # pygame stuff window = pog.display.set_mode((w, h), DOUBLEBUF) screen = pog.display.get_surface() screen = pog.display.set_mode((w, h)) titleText = pogW.TextBox(window, (1080-450)/2, 15, 450, 25, fontSize=15) surf = None lbSlider = pogW.Slider(window, 650, 150, 300, 10, min=0, max=10, step=0.1) # interactive sliders and stuff in the program nSlider = pogW.Slider(window, 650, 250, 300, 10, min=0, max=10, step=1) lbText = pogW.TextBox(window, 650, 110, 150, 25, fontSize=15) # lambda text nText = pogW.TextBox(window, 650, 210, 200, 25, fontSize=15) # n text pText = pogW.TextBox(window, 75, 77, 200, 25, fontSize=15) # player text dataB = pogW.Button(window, 100, 650, 200, 50, text='Random Graph', margin=2, onClick=clickPlot) pog.display.set_caption('aiyah bruh') pog.display.flip() plotToScreen(X, data[dataInd], globalN) run = True while run: # actions to run throughout the program: update the screen if lambda or num. features is changed or if the dataset is changed (basically when the user interacts with the window) if pastLb != globalLb or pastN != globalN: # window only does normal equation if the parameters update since normal equation is computationally expensive plotToScreen(X, data[dataInd], globalN) #frameNum = 0
def setup(self): ## setups images self.update_disp_image_data() self.px = pygame.surfarray.make_surface(self.disp_data) image_size = self.px.get_rect()[2:] Window_size = image_size Window_size[0] = Window_size[0] + 400 Window_size[1] = Window_size[1] + 5 self.screen = pygame.display.set_mode(Window_size) self.screen.fill((128, 128, 128)) self.screen.blit(self.px, self.px.get_rect()) self.button_done = pw.Button(self.screen, Window_size[0] - 400 + 50, 5, 100, 50, text='Done', fontSize=22, margin=10, inactiveColour=(255, 0, 0), pressedColour=(0, 255, 0), radius=20, onClick=lambda: self.Set_done_cmd(False)) self.button_done.draw() self.slider_threshold = pw.Slider(self.screen, Window_size[0] - 400 + 25, 110, 150, 10, min=0, max=1, step=.05, initial=0.5) self.slider_threshold.draw() self.text_threshold = pw.TextBox(self.screen, Window_size[0] - 400 + 0, 60, 50, 40, fontSize=24) self.text_threshold.draw() text_threshold_describe = pw.TextBox(self.screen, Window_size[0] - 400 + 60, 50, 60, 40, fontSize=16, borderColour=(128, 128, 128), colour=(128, 128, 128)) text_threshold_describe.setText('Threshold') text_threshold_describe.draw() self.slider_min_dist = pw.Slider(self.screen, Window_size[0] - 400 + 25, 180, 150, 10, min=1, max=100, step=1, initial=20) self.slider_min_dist.draw() self.text_min_dist = pw.TextBox(self.screen, Window_size[0] - 400 + 0, 130, 50, 40, fontSize=24) self.text_min_dist.draw() text_min_dist_describe = pw.TextBox(self.screen, Window_size[0] - 400 + 60, 120, 60, 40, fontSize=16, borderColour=(128, 128, 128), colour=(128, 128, 128)) text_min_dist_describe.setText('Minimum Distance ') text_min_dist_describe.draw() self.slider_SVM = pw.Slider(self.screen, Window_size[0] - 400 + 225, 60, 150, 10, min=.00, max=1, step=0.01, initial=0.5) self.slider_SVM.draw() self.text_SVM = pw.TextBox(self.screen, Window_size[0] - 400 + 200, 10, 60, 40, fontSize=24) self.text_SVM.draw() text_SVM_describe = pw.TextBox(self.screen, Window_size[0] - 400 + 260, 0, 100, 40, fontSize=16, borderColour=(128, 128, 128), colour=(128, 128, 128)) text_SVM_describe.setText('SVM limit') text_SVM_describe.draw() self.slider_gauss = pw.Slider(self.screen, Window_size[0] - 400 + 25, 320, 150, 10, min=0, max=10, step=1, initial=1) self.slider_gauss.draw() self.text_gauss = pw.TextBox(self.screen, Window_size[0] - 400 + 0, 270, 60, 40, fontSize=24) self.text_gauss.draw() text_gauss_describe = pw.TextBox(self.screen, Window_size[0] - 400 + 60, 260, 100, 40, fontSize=16, borderColour=(128, 128, 128), colour=(128, 128, 128)) text_gauss_describe.setText('# Gauss') text_gauss_describe.draw() if self.number_of_frames == 1: self.number_of_frames = 2 self.slider_frame_number = pw.Slider(self.screen, Window_size[0] - 400 + 25, 450, 150, 10, min=0, max=self.number_of_frames - 1, step=1, initial=0) self.slider_frame_number.draw() self.text_frame_number = pw.TextBox(self.screen, Window_size[0] - 400 + 0, 400, 60, 40, fontSize=24) self.text_frame_number.draw() text_frame_number_describe = pw.TextBox(self.screen, Window_size[0] - 400 + 60, 390, 100, 40, fontSize=16, borderColour=(128, 128, 128), colour=(128, 128, 128)) text_frame_number_describe.setText('Frame Number') text_frame_number_describe.draw() self.button_train = pw.Button(self.screen, Window_size[0] - 400 + 250, 100, 100, 50, text='Train', fontSize=22, margin=10, inactiveColour=(255, 0, 0), pressedColour=(0, 255, 0), radius=20, onClick=lambda: self.Set_train_cmd(True)) self.button_train.draw() self.slider_custom_SVM = pw.Slider(self.screen, Window_size[0] - 400 + 225, 210, 150, 10, min=.05, max=1, step=0.02, initial=0.5) self.slider_custom_SVM.draw() self.text_custom_SVM = pw.TextBox(self.screen, Window_size[0] - 400 + 200, 160, 60, 40, fontSize=24) self.text_custom_SVM.draw() text_custom_SVM_describe = pw.TextBox(self.screen, Window_size[0] - 400 + 260, 170, 100, 40, fontSize=16, borderColour=(128, 128, 128), colour=(128, 128, 128)) text_custom_SVM_describe.setText('Custom SVM limit') text_custom_SVM_describe.draw() self.slider_window_size = pw.Slider(self.screen, Window_size[0] - 400 + 225, 300, 150, 10, min=8, max=64, step=2, initial=32) self.slider_window_size.draw() self.text_window_size = pw.TextBox(self.screen, Window_size[0] - 400 + 200, 250, 60, 40, fontSize=24) self.text_window_size.draw() text_window_size_describe = pw.TextBox(self.screen, Window_size[0] - 400 + 260, 260, 100, 40, fontSize=16, borderColour=(128, 128, 128), colour=(128, 128, 128)) text_window_size_describe.setText('window size') text_window_size_describe.draw()
def setup(Frame,Refence_dict): im = Frame im = (im - (np.min(im))) im = 255 * (im / np.max(im)) clahe = cv2.createCLAHE(clipLimit=2.0, tileGridSize=(8,8)) im = clahe.apply(im.astype(np.uint8)) w, h = im.shape ret = np.empty((w, h, 3), dtype=np.uint8) ret[:, :, 2] = im ret[:, :, 1] = im ret[:, :, 0] = im px = pygame.surfarray.make_surface(ret) image_size = px.get_rect()[2:] Window_size = image_size Window_size [0] = Window_size [0] + 200 Window_size [1] = Window_size [1] + 5 screen = pygame.display.set_mode( Window_size ) screen.fill((128,128,128)) screen.blit(px, px.get_rect()) global button_done button_done = pw.Button( screen, Window_size [0] - 200 + 50, 80, 100, 50, text='Done', fontSize=22, margin=10, inactiveColour=(255, 0, 0), pressedColour=(0, 255, 0), radius=20, onClick=lambda: Set_done_cmd(False) ) global button_redo button_redo = pw.Button( screen, Window_size [0] - 200 + 50, 10, 100, 50, text='Redo', fontSize=22, margin=10, inactiveColour=(255, 0, 0), pressedColour=(0, 255, 0), radius=20, onClick=lambda: Set_redo_cmd(True)) global slider_contrast slider_contrast= pw.Slider( screen, Window_size [0] - 200 + 25, 150, 150, 10, min = 0, max = 511,step = 1) global text_contrast text_contrast = pw.TextBox( screen, Window_size [0] - 200 + 25, 170, 60, 40, fontSize=24) text_contrast_describe = pw.TextBox( screen, Window_size [0] - 200 + 85, 170, 100, 40, fontSize=16, borderColour=(128, 128, 128),colour=(128, 128, 128)) text_contrast_describe.setText('Contrast') text_contrast_describe.draw() global slider_brightness slider_brightness= pw.Slider( screen, Window_size [0] - 200 + 25, 230, 150, 10, min = 0, max = 511, step = 1) global text_brightness text_brightness = pw.TextBox( screen, Window_size [0] - 200 + 25, 250, 60, 40, fontSize=24) text_brightness_describe = pw.TextBox( screen, Window_size [0] - 200 + 85, 250, 100, 40, fontSize=16, borderColour=(128, 128, 128),colour=(128, 128, 128)) text_brightness_describe.setText('Brightness') text_brightness_describe.draw() global text_frame_number text_frame_number = pw.TextBox( screen, Window_size [0] - 200 + 25, 430, 60, 40, fontSize=24) if len(Refence_dict)!= 1: global slider_frame_number slider_frame_number= pw.Slider( screen, Window_size [0] - 200 + 25, 410, 150, 10, min = 0, max = len(Refence_dict)-1, step = 1,initial = 1) text_frame_describe = pw.TextBox( screen, Window_size [0] - 200 + 85, 430, 100, 40, fontSize=16, borderColour=(128, 128, 128),colour=(128, 128, 128)) text_frame_describe.setText('Frame Number') text_frame_describe.draw() slider_contrast.draw() slider_brightness.draw() text_contrast.draw() text_brightness.draw() button_done.draw() button_redo.draw() if len(Refence_dict)!= 1: text_frame_number.draw() slider_frame_number.draw() return screen, px
fade.fill(FADED) dpen = DoublePendulum(screen, trail_screen) trail_screen.fill(WHITE) clock = pygame.time.Clock() paused = False vec = pygame.math.Vector2 selected = 0 sliders = [ pygame_widgets.Slider(screen, 50, HEIGHT - 50, 100, 10, min=0, max=2, step=0.1, initial=g), pygame_widgets.Slider(screen, 50, HEIGHT - 70, 100, 10, min=10, max=100, step=1, initial=MASS1), pygame_widgets.Slider(screen, 50,
def setup(self): ## setups images self.update_disp_image_data() self.update_disp_image_label() SHOW_IMG = np.concatenate([self.disp_data, self.disp_Label], axis=0) self.px = pygame.surfarray.make_surface(SHOW_IMG) image_size = self.px.get_rect()[2:] Window_size = image_size Window_size[0] = Window_size[0] + 400 Window_size[1] = Window_size[1] + 5 self.screen = pygame.display.set_mode(Window_size) self.screen.fill((128, 128, 128)) self.screen.blit(self.px, self.px.get_rect()) self.button_done = pw.Button(self.screen, Window_size[0] - 400 + 50, 5, 100, 50, text='Done', fontSize=22, margin=10, inactiveColour=(255, 0, 0), pressedColour=(0, 255, 0), radius=20, onClick=lambda: self.Set_done_cmd(False)) self.button_done.draw() self.slider_x = pw.Slider(self.screen, Window_size[0] - 400 + 25, 110, 150, 10, min=0, max=100, step=1) self.slider_x.draw() self.text_x = pw.TextBox(self.screen, Window_size[0] - 400 + 0, 60, 100, 40, fontSize=24) self.text_x.draw() text_x_describe = pw.TextBox(self.screen, Window_size[0] - 400 + 100, 50, 100, 40, fontSize=16, borderColour=(128, 128, 128), colour=(128, 128, 128)) text_x_describe.setText('X tilt') text_x_describe.draw() self.slider_y = pw.Slider(self.screen, Window_size[0] - 400 + 25, 180, 150, 10, min=0, max=100, step=1) self.slider_y.draw() self.text_y = pw.TextBox(self.screen, Window_size[0] - 400 + 0, 130, 100, 40, fontSize=24) self.text_y.draw() text_y_describe = pw.TextBox(self.screen, Window_size[0] - 400 + 100, 120, 100, 40, fontSize=16, borderColour=(128, 128, 128), colour=(128, 128, 128)) text_y_describe.setText('Y tilt') text_y_describe.draw() self.slider_n = pw.Slider(self.screen, Window_size[0] - 400 + 25, 250, 150, 10, min=1, max=10, step=1, initial=self.n) self.slider_n.draw() self.text_n = pw.TextBox(self.screen, Window_size[0] - 400 + 0, 200, 60, 40, fontSize=24) self.text_n.draw() text_n_describe = pw.TextBox(self.screen, Window_size[0] - 400 + 60, 190, 100, 40, fontSize=16, borderColour=(128, 128, 128), colour=(128, 128, 128)) text_n_describe.setText('Number of clusters') text_n_describe.draw() self.slider_gauss = pw.Slider(self.screen, Window_size[0] - 400 + 25, 320, 150, 10, min=0, max=10, step=1, initial=0) self.slider_gauss.draw() self.text_gauss = pw.TextBox(self.screen, Window_size[0] - 400 + 0, 270, 60, 40, fontSize=24) self.text_gauss.draw() text_gauss_describe = pw.TextBox(self.screen, Window_size[0] - 400 + 60, 260, 100, 40, fontSize=16, borderColour=(128, 128, 128), colour=(128, 128, 128)) text_gauss_describe.setText('# Gauss') text_gauss_describe.draw() if self.number_of_frames == 1: self.number_of_frames = 2 self.slider_frame_number = pw.Slider(self.screen, Window_size[0] - 400 + 25, 450, 150, 10, min=0, max=self.number_of_frames - 1, step=1, initial=0) self.slider_frame_number.draw() self.text_frame_number = pw.TextBox(self.screen, Window_size[0] - 400 + 0, 400, 60, 40, fontSize=24) self.text_frame_number.draw() text_frame_number_describe = pw.TextBox(self.screen, Window_size[0] - 400 + 60, 390, 100, 40, fontSize=16, borderColour=(128, 128, 128), colour=(128, 128, 128)) text_frame_number_describe.setText('Frame Number') text_frame_number_describe.draw()
import pygame_widgets WIDTH: int = 800 HEIGHT: int = 800 BLUE = (0, 0, 255) GREEN = (0, 255, 0) screen = pygame.display.set_mode((WIDTH, HEIGHT)) size = 250 pygame.init() n = 2 d = 39 Nslider = pygame_widgets.Slider(screen, 50, 100, 120, 20, min=0, max=120, step=1, initial=n) Kslider = pygame_widgets.Slider(screen, 50, 150, 120, 20, min=0, max=120, step=1, initial=d) font = pygame.font.Font('freesansbold.ttf', 20) prevX = 0 + WIDTH // 2