def setup(): global s1, s2, s3 global seed seed = int(random(1000)) print(seed) size(500, 500) s1 = slider(0, 90, 50, 'tamanho') # instanciando o slider s1 s1.position(20, 30) # posicionando s1 em x:20 y:30 s2 = slider(0, 180, 45, 'ângulo') s2.position(190, 30) s3 = slider(0, 10, 0, 'variação aleatória') s3.position(360, 30)
def admin_api_new_slider(): if not admin_check(): return '0' # not an admin if not request.method == "POST": return '0' f = request.files["sliderImage"] order = request.form["order"] if order is None or len(order) == 0: order = '#' # user doesn't care about the order if not isinstance(order, int) and not order == "#": return '2' # response 2 order not a number if f and is_image(f.filename): path = os.path.join("./static/slider_images/", secure_filename(f.filename)) f.save(path) carousel = slider(db) if order == "#": carousel.upload(path, 0) else: carousel.upload(path, order) return '1' # response 1 success return '0' # response 0 uncaught error/type is incorrect
def setup(port): from slider import sliderUSB as slider try: device = slider(port=port) except: print('No device detected at port: {}'.format(port)) sys.exit(0) device.startArduino() return device
def home(): db.connect() if not session.get('authenticated'): return render_template('home.html', page_title='gusty.bike') client = user(session['user_id'], db) carousel = slider(db) return render_template('home.html', page_title='gusty.bike', client=client, carousel=carousel)
def manage_sliders(): if not session.get('authenticated'): return redirect(url_for('home')) db.connect() carousel = slider(db) client = user(session['user_id'], db) if not admin_check(): return redirect(url_for('home')) return render_template('admin_sliders_manage.html', page_title=site_name, client=client, slider_images=carousel.images)
def home(): db.connect() carousel = slider(db) ps = posts(db) if session.get('authenticated'): client = user(session['user_id'], db) else: client = None return render_template('home.html', page_title=site_name, client=client, carousel=carousel, ago=timeago, date=datetime, recent_posts=ps.most_recent())
def resize(self): self.width = 200 self.height = self.window.height - 72 self.surface = Surface((self.width, self.height)).convert_alpha() self.arrowsBg = Surface((self.arrowsWidth+2, self.height)) self.arrows = button(self.width+1, self.height/2 - self.arrowsHeight/2, self.window.screen, [self.arrowsImg1, self.arrowsImg2], imgnum = 0 if self.offset == 0 - self.width else 1, backlight = (255, 255, 255, 30)) self.circuitSurface = Surface((self.width - 15, self.height)).convert_alpha() self.circuitSurface.fill((0, 0, 0, 0)) self.sliderHeight = self.height self.slider = slider(self.window.screen, self.sliderX, self.sliderY, self.sliderWidth, self.sliderHeight, self.sliderMaxoffset) self.arrows.change_coords(x = self.offset + self.width + 1) self.slider.change_coords(x = self.offset + self.width - percent(self.width - self.width/4, 10))
objetos tem funções associadas, conhecidas como métodos, que podem ser invocadas com a "sintaxe do ponto" (`objeto.metodo()`). uma lista em python, por exemplo, [possui diversos métodos](list_methods.md) e já vimos pelo menos um deles, o `.append()` que é chamado para incluir elementos na lista. ```python frutas = ['uva', 'banana'] frutas.append('kiwi') print(frutas) # ['uva', 'banana', 'kiwi'] ``` # Instanciar (criar uma nova instância de um objeto) fora casos especiais em que podemos criar objetos diretammente no código(como a lista de frutas que acabamos de ver) ou com uma função ajudante, no caso de `load_image(nome_arquivo)` que cria um objeto `Py5Image`, costumamos criar novos objetos chamando o nome da classe, e isso pode ou não demandar argumentos. no exemplo que veremos a seguir vamos criar um slider. ```python s1 = slider(0, 90, 50, 'tamanho') # mínimo, máximo, valor_inicial, etiqueta ``` # O que ficou de fora Não vamos ver ainda neste momento em detalhes de como funciona a definição ou criação da classe(a parte que segue `class slider: `), que codifica como ela produz e inicializa os objetos ou como são definidos os métodos, nem trataremos do assunto mais avançado "herança" em que uma classe é baseada em outra, recebendo desta parte das suas características. # Exemplo de uso da classe `Slider` veja agora um exemplo comentado de como instanciar e usar objetos da classe `slider` que vão servir de interface gráfica para modificar um desenho de uma àrvore. note que os objetos _slider_ tem os métodos `.position()` para locá-los na tela depois de terem sido criados, e o método `.update()`, que chamaremos dentro da função `draw()` para fazer o duplo trabalho de desenhar o slider na tela e obter o valor indicado pelo _slider_ naquele momento. ```python
def configure(self, env): import params env.set_params(params) install_slider() slider()
def configure(self, env): import params env.set_params(params) slider()
def __init__(self): self.display1 = display.display() self.ball1 = ball.ball(34, 61) self.slider = slider.slider(35, 57)
def __init__(self, window): self.window = window self.width = 200 self.height = self.window.height - 72 self.offset = 0 self.offsetTo = self.offset self.moveSpeed = 10 self.surface = Surface((self.width, self.height)).convert_alpha() self.arrowsWidth = 10 self.arrowsHeight = 124 self.arrowsBg = Surface((self.arrowsWidth+2, self.height)) self.arrowsImg2 = transform.scale(image.load('../data/imgs/arrowbutton.png'), (self.arrowsWidth, self.arrowsHeight)) self.arrowsImg1 = transform.flip(self.arrowsImg2, True, False) self.arrows = button(self.width+1, self.height/2 - self.arrowsHeight/2, window.screen, [self.arrowsImg1, self.arrowsImg2], imgnum = 0 if self.offset == 0 - self.width else 1, backlight = (255, 255, 255, 30)) self.sliderWidth = 15 self.sliderHeight = self.height self.sliderX = self.offset + self.width - self.sliderWidth self.sliderY = 36 self.sliderMaxoffset = 0 self.slider = slider(window.screen, self.sliderX, self.sliderY, self.sliderWidth, self.sliderHeight, self.sliderMaxoffset) self.lastslideroffset = 0 self.offsetY = 0 self.mousepressed = False self.pannelWidth = 640 self.pannelHeight = 36 self.offsetreturn = self.offset self.pastoffsetreturn = self.offset self.tabs = [] for i in ['Inputs', 'Outputs', 'Prim elements', 'Elements']: self.tabs.append(tab(i, [], self)) self.tabs[0].addElement('Constant 1') self.tabs[0].addElement('Constant 0') self.tabs[0].addElement('Switch') self.tabs[1].addElement('Bulb') self.tabs[2].addElement('Not') self.tabs[2].addElement('And') self.tabs[2].addElement('Or') self.tabupdated = True self.element = None self.elementImg = None
pygame.init() pygame.font.init() display_size = 1200, 460 screen = pygame.display.set_mode(display_size) screen.fill(grey) sliders = [] atten_values = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] for i in range(13): sliders.append(slider.slider((gap + i * (width + gap), 50), (width, 300))) print(atten_values) print(sliders) for s in sliders: s.draw(screen) running = 1 while (running): event = pygame.event.poll() if event.type == pygame.QUIT: