O que é indentação?
A palavra indentação também significa ‘recuo’, veja este exemplo de uma lista de compras relativamente organizada:
comes:
pão
cebola
abacate
alho
bebes:
chá mate
sucos:
maçã
uva
laranja
refrigerantes:
água tônica
O espaço que faz os itens ficarem ‘dentro’ das categorias é a indentação. Exatamente da mesma maneira, em Python, criamos blocos de código que estão ‘dentro’ de estruturas. Note os dois pontos (:
) antes de um bloco indentado na lista de compras.
Essa sintaxe com o espaço de indentação, e com :
, vai ser usada em inúmeras estruturas de Python, como if
/elif
/else
, nos laços de repetição for
e while
, na definição de novas funções com def
, entre outras.
Animando uma estrela com o movimento do mouse
Vamos ver agora um exemplo que precisa de indentação, avançando um pouco em ideias cujos detalhes você pode retomar depois na página sobre movimento.
A função setup()
e a função draw()
Podemos reorganizar o código anterior mostrado no primeiro contato com polígonos colocando os ajustes iniciais (setup), como size(200,200)
, dentro da definição de função def setup():
, e a parte que desenha (draw) dentro de def draw():
.
A função setup()
vai ser executada apenas uma vez no começo, e a função draw()
fica repetindo sem parar, permitindo o movimento. Repare como a indentação é o que determina o que está dentro de cada função.
def setup():
size(400, 400)
def draw():
background(0, 0, 200) # para limpar a área de desenho
x, y = width / 2, height / 2 # coordenadas do centro
a = mouseX / 4
b = mouseY / 4
beginShape()
vertex(x - a, y - a)
vertex(x - b, y)
vertex(x - a, y + a)
vertex(x , y + b)
vertex(x + a, y + a)
vertex(x + b, y)
vertex(x + a, y - a)
vertex(x , y - b)
endShape(CLOSE)
Assuntos relacionados
- Mais sobre animações com
setup()
edraw()
- Estrelas de muitas pontas com laços de repetição
while
- Você pode ver usos mais avançados de
beginShape()
na referência. - Você pode montar os vértices a partir de estruturas de dados com laços de repetição ou fazer polígonos com furos