abril 26, 2026

Ângulos Obtuso e Raso em Código

Por admin

Sobre a Matemática

Ângulo obtuso é quando admitimos que uma região angular de ângulo reto como subconjunto e for subconjunto próprio de 1 semi-plano. Sua medida é maior que 1 reto e menor que 2 retos.

Ângulo raso é quando seus lados são semi-retas opostas de mesma origem. Equivale a 2 retos.

Ângulo de 1 volta é aquele que equivale a 4 retos. Seus lados são semi-retas coincidentes e a sua região angular é um plano.

Sobre o Código

Na linguagem de programação Python,

import – é o comando usado para trazer bibliotecas externas para o código.

matplotlib – é a biblioteca para criação de gráficos e visualizações.

.pyplot – é o módulo dentro do Matplotlib que fornece funções para criar gráficos de forma simples.

as plt – define um apelido para pyplot, permitindo chamar funções como plt.funcao().

numpy – é a biblioteca para cálculos numéricos e manipulação de arrays.

as np – define um apelido para numpy, permitindo chamar funções como np.funcao().

def – é a palavra-chave usada para definir uma função.

.cos() – é a função do NumPy que calcula o cosseno de um ângulo (em radianos).

.radians() – converte graus em radianos (necessário para funções trigonométricas).

.sin() – é a função do NumPy que calcula o seno de um ângulo (em radianos).

angle_deg – é a variável que armazena o valor do ângulo em graus.

.arrow() – é a função do Matplotlib que desenha uma seta em um gráfico.

origin[] – é a lista que define o ponto de origem das semi-retas (ex.: [0,0]).

head_width= – define a largura da ponta da seta no gráfico.

head_length= – define o comprimento da ponta da seta no gráfico.

fc= – é “Face color”: cor de preenchimento da seta.

ec= – é “Edge color”: cor da borda da seta.

.linspace() – é a função do NumPy que gera pontos igualmente espaçados em um intervalo.

.fill() – é a função do Matplotlib que preenche uma área delimitada por coordenadas.

color= – define a cor usada para desenhar ou preencher elementos gráficos.

alpha= – define a transparência (0 = invisível, 1 = opaco).

.set_xlim() – define os limites do eixo X no gráfico.

.set_ylim() – define os limites do eixo Y no gráfico.

.set_aspect() – define a proporção dos eixos (ex.: ‘equal’ mantém escala igual).

'equal' – é o valor que garante que os eixos X e Y tenham a mesma escala.

.set_title() – define o título do gráfico.

.grid() – adiciona uma grade ao gráfico.

.subplots() – cria múltiplos gráficos (subplots) dentro de uma mesma figura.

figsize= – define o tamanho da figura em polegadas (largura x altura).

axs[] – é a lista de eixos (subplots) criados pela função subplots().

.tight_layout() – ajusta automaticamente o espaçamento entre os subplots.

.show() – exibe o gráfico na tela.

# – é usado para criar comentários ao código, que são notas para se entender melhor o que o código faz.

Vamos ao código…

import matplotlib.pyplot as plt
import numpy as np

def plot_angle(ax, angle_deg, color, title):
    # Define origem
    origin = [0, 0]
    
    # Semi-retas
    x1 = np.cos(np.radians(0))
    y1 = np.sin(np.radians(0))
    x2 = np.cos(np.radians(angle_deg))
    y2 = np.sin(np.radians(angle_deg))
    
    # Desenha semi-retas
    ax.arrow(origin[0], origin[1], x1, y1, head_width=0.05, head_length=0.1, fc=color, ec=color)
    ax.arrow(origin[0], origin[1], x2, y2, head_width=0.05, head_length=0.1, fc=color, ec=color)
    
    # Preenche região angular
    theta = np.linspace(0, np.radians(angle_deg), 100)
    ax.fill(np.cos(theta), np.sin(theta), color=color, alpha=0.3)
    
    # Configurações do gráfico
    ax.set_xlim(-1.5, 1.5)
    ax.set_ylim(-1.5, 1.5)
    ax.set_aspect('equal')
    ax.set_title(title)
    ax.grid(True)
Código Python (.py)O que faz
import matplotlib.pyplot as pltImporta a biblioteca Matplotlib para criar gráficos.
import numpy as npImporta a biblioteca NumPy para cálculos matemáticos, como seno e cosseno.
def plot_angle(ax, angle_deg, color, title):Define uma função chamada plot_angle que desenha um ângulo em um eixo (ax).
origin = [0, 0]Define a origem (ponto inicial das semi-retas) como coordenada (0,0).
x1 = np.cos(np.radians(0))Calcula a coordenada x da primeira semi-reta (ângulo 0°).
y1 = np.sin(np.radians(0))Calcula a coordenada y da primeira semi-reta (ângulo 0°).
x2 = np.cos(np.radians(angle_deg))Calcula a coordenada x da segunda semi-reta, com base no ângulo desejado.
y2 = np.sin(np.radians(angle_deg))Calcula a coordenada y da segunda semi-reta, com base no ângulo desejado.
ax.arrow(origin[0], origin[1], x1, y1, head_width=0.05, head_length=0.1, fc=color, ec=color)Desenha a primeira semi-reta como uma seta partindo da origem.
ax.arrow(origin[0], origin[1], x2, y2, head_width=0.05, head_length=0.1, fc=color, ec=color)Desenha a segunda semi-reta como uma seta partindo da origem.
theta = np.linspace(0, np.radians(angle_deg), 100)Cria 100 pontos entre 0 e o ângulo em radianos para preencher a região angular.
ax.fill(np.cos(theta), np.sin(theta), color=color, alpha=0.3)Preenche a área entre as semi-retas com uma cor translúcida.
ax.set_xlim(-1.5, 1.5)Define os limites do eixo X para melhor visualização.
ax.set_ylim(-1.5, 1.5)Define os limites do eixo Y para melhor visualização.
ax.set_aspect(‘equal’)Mantém a proporção dos eixos igual (círculos não ficam achatados).
ax.set_title(title)Define o título do gráfico (ex.: “Ângulo Obtuso”).
ax.grid(True)Adiciona uma grade ao gráfico para facilitar a leitura.
# Cria subplots
fig, axs = plt.subplots(1, 3, figsize=(15, 5))

# Ângulo obtuso (120°)
plot_angle(axs[0], 120, 'blue', 'Ângulo Obtuso (120°)')

# Ângulo raso (180°)
plot_angle(axs[1], 180, 'green', 'Ângulo Raso (180°)')

# Ângulo de 1 volta (360°)
plot_angle(axs[2], 360, 'red', 'Ângulo de 1 Volta (360°)')

plt.tight_layout()
plt.show()
Código Python (.py)O que faz
fig, axs = plt.subplots(1, 3, figsize=(15, 5))Cria uma figura com 3 subplots (gráficos lado a lado).
plot_angle(axs[0], 120, ‘blue’, ‘Ângulo Obtuso (120°)’)Desenha o ângulo obtuso (120°) em azul no primeiro gráfico.
plot_angle(axs[1], 180, ‘green’, ‘Ângulo Raso (180°)’)Desenha o ângulo raso (180°) em verde no segundo gráfico.
plot_angle(axs[2], 360, ‘red’, ‘Ângulo de 1 Volta (360°)’)Desenha o ângulo de 1 volta (360°) em vermelho no terceiro gráfico.
plt.tight_layout()Ajusta automaticamente o espaçamento entre os gráficos.
plt.show()Exibe os gráficos na tela.

Saída do código (valor de retorno)…

Fonte:

  • Editora Didática Paulista. Ensino Didático 2000: Ensino Fundamental e Ensino Médio. Sorocaba: Editora Didática Paulista, [s.d.].
  • Códigos e comentários gerados por Microsoft Copilot com revisão nossa.
  • https://docs.python.org/pt-br/3/ [Documentação Oficial do Python]