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 
示例#2
0
  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
示例#3
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()
示例#4
0
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
示例#5
0
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()
示例#7
0
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