128 lines
3.7 KiB
Markdown
128 lines
3.7 KiB
Markdown
---
|
|
title: "Av05: Desenho livre"
|
|
author: Jurandy Soares
|
|
date: 03/nov/2024
|
|
geometry: "left=3cm,right=3cm,top=2cm,bottom=2cm"
|
|
---
|
|
|
|
- Disciplina: Introdução a Programação
|
|
- Ano: 2024
|
|
- Curso: Técnico de Nível Médio em Informática, na Forma Integrada
|
|
|
|
## Atividade
|
|
|
|
1. Pegue uma folha quadriculada e faça um desenho de sua escolha que atenda aos seguintes requisitos:
|
|
|
|
- Não seja garatuja; e
|
|
- Tenha pelo menos 10 [segmentos de reta](https://pt.wikipedia.org/wiki/Reta#Segmento_de_reta)[^1] não sobrepostos.
|
|
|
|
Você poderá substituir até 2 dos segmentos de reta por [circunferências](https://pt.wikipedia.org/wiki/Circunfer%C3%AAncia)[^2] ou [arcos](https://pt.wikipedia.org/wiki/Arco_(matem%C3%A1tica))[^3].
|
|
|
|
![Desenho da bandeira do Brasil[^4]](desenho-da-bandeira-do-brasil-para-colorir.png)
|
|
|
|
Por exemplo, a bandeira do Brasil pode ser desenhada com:
|
|
|
|
- 8 segmentos de reta;
|
|
- 1 círculo; e
|
|
- 2 arcos.
|
|
|
|
\pagebreak
|
|
|
|
2. Marque os pontos importantes para seu desenho, atribua uma letra para um dos pontos, idenfique suas coordenadas e anote-as.
|
|
|
|

|
|
|
|
3. Crie um módulo de Python com o nome `desenho.py`, conforme o modelo passado em sala de aula:
|
|
|
|
```python
|
|
import turtle
|
|
# [...]
|
|
turtle.done()
|
|
```
|
|
|
|
4. (60 pontos) Use a tartaruga do módulo `turtle` de Python para fazer seu desenho. Lembre-se de:
|
|
|
|
- `turtle.up()` para fazê-la deixar de desenhar;
|
|
- `turtle.down()` para fazê-la voltar a desenhar;
|
|
- `turtle.goto(x, y)` para fazê-la ir ao ponto de posição (x,y);
|
|
- `turtle.circle(angulo)` para desenhar círcunferências ou arcos; e
|
|
- `turtle.setheading(angulo)` ou `turtle.seth(angulo)` para fazê-la apontar no ângulo determinado.
|
|
|
|
5. (10 pontos) Passe o código de seu desenho para uma função e chame a respectiva função.
|
|
|
|
```python
|
|
import turtle
|
|
def nome_fun():
|
|
# Código da função
|
|
pass
|
|
# end-def
|
|
|
|
# Chame a função
|
|
nome_func()
|
|
turtle.done()
|
|
```
|
|
|
|
\pagebreak
|
|
|
|
6. (10 pontos) Adicione algum parâmetro que possa ser útil para sua função, ajuste o código da função com o nome parâmetro, e chame a nova função passando argumento(s) de exemplo.
|
|
|
|
Exemplo de código:
|
|
|
|
```python
|
|
import turtle
|
|
def nome_fun(cor: str):
|
|
# Código da função
|
|
pass
|
|
# end-def
|
|
|
|
# Chame a função
|
|
nome_func(cor='blue')
|
|
turtle.done()
|
|
```
|
|
|
|
|
|
7. (10 pontos) Adicione os parâmetros `x` e `y` à função e ajuste seu código para que o desenho seja iniciado na posição (x,y), e chame a nova função passando argumentos (x,y) de exemplo.
|
|
|
|
Exemplo de código:
|
|
|
|
```python
|
|
import turtle
|
|
|
|
def nome_fun(x: int, y: int):
|
|
# Código da função
|
|
pass
|
|
# end-def
|
|
|
|
# Chame a função
|
|
nome_func(x=50, y=50)
|
|
nome_func(x=-50, y=-50)
|
|
turtle.done()
|
|
```
|
|
|
|
8. (10 pontos) Adicione o parâmetro `zoom` à função e ajuste seu código para que o desenho seja ampliado ou reduzido de acordo com o `zoom` passado, e chame a nova função passando argumento(s) `zoom` de exemplo. Lembre-se que:
|
|
|
|
- $zoom<1$ o reduz o desenho;
|
|
- $zoom=1$ faz o desenho em um tamanho padrão; e
|
|
- $zoom>1$ amplia o desenho.
|
|
|
|
Exemplo de código:
|
|
|
|
```python
|
|
import turtle
|
|
|
|
def nome_fun(zoom: float):
|
|
# Código da função
|
|
pass
|
|
# end-def
|
|
|
|
# Chame a função
|
|
nome_func(zoom=0.5)
|
|
nome_func(x=-50, y=-50)
|
|
turtle.done()
|
|
```
|
|
|
|
[^1]: <https://pt.wikipedia.org/wiki/Reta#Segmento_de_reta>
|
|
[^2]: <https://pt.wikipedia.org/wiki/Circunfer%C3%AAncia>
|
|
[^3]: <https://pt.wikipedia.org/wiki/Arco_(matem%C3%A1tica)>
|
|
[^4]: Fonte: <https://amordepapeis.com.br/bandeira-do-brasil-para-colorir/>
|