Vértice em Código
Sobre a Matemática
É o ponto comum a dois lados de um ângulo, a dois lados de um polígono ou a três ou mais arestas de uma figura espacial.
Sobre o Código
Na linguagem de programação Python,
from – é a palavra-chave usada para importar partes específicas de um módulo ou biblioteca.
shapely – é a biblioteca para manipulação de objetos geométricos (pontos, linhas, polígonos).
.geometry – é o submódulo da biblioteca Shapely que contém classes para representar formas geométricas.
import – é a palavra-chave usada para trazer módulos, funções ou classes externas para o código.
Point – é a classe da Shapely que representa um ponto em coordenadas (x, y).
Polygon – é a classe da Shapely que representa um polígono definido por uma lista de vértices.
matplotlib – é a biblioteca para criação de gráficos e visualizações.
.pyplot – é a submódulo da matplotlib que fornece funções para criar gráficos de forma simples.
as plt – define um apelido (alias) para o módulo importado, facilitando o uso (plt em vez de matplotlib.pyplot).
[(,),] – é a lista de tuplas, usada no código para armazenar coordenadas dos vértices.
print() – é a função nativa que exibe informações no console.
for..in..: – é a estrutura de repetição que percorre elementos de uma lista ou sequência.
. (ponto) – é o operador de acesso a atributos ou métodos de um objeto (ex.: .x acessa a coordenada x).
if: – é a estrutura condicional que executa um bloco de código se a condição for verdadeira.
else: – é a parte da estrutura condicional que executa um bloco de código se a condição do if for falsa.
plt.plot() – é a função do matplotlib usada para desenhar linhas ou curvas (no código, o contorno do polígono).
color= – é o parâmetro que define a cor do elemento gráfico.
linewidth= – é o parâmetro que define a espessura da linha desenhada.
plt.scatter – é a função do matplotlib usada para desenhar pontos em coordenadas específicas.
s= – é o parâmetro que define o tamanho dos pontos no gráfico.
label= – é o parâmetro que define o texto da legenda associado ao elemento gráfico.
marker= – é o parâmetro que define o formato do marcador (ex.: * estrela, o círculo).
.title() – é a função que define o título do gráfico.
.legend() – é a função que exibe a legenda com os rótulos definidos nos elementos gráficos.
.axis('equal') – ajusta os eixos para que as proporções sejam iguais (não distorcer o polígono).
.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…
from shapely.geometry import Point, Polygon
import matplotlib.pyplot as plt
# Definindo os vértices de um polígono (quadrado)
vertices = [(0,0), (0,1), (1,1), (1,0)]
poligono = Polygon(vertices)
# Exibindo os vértices
print("Vértices do polígono:")
for v in poligono.exterior.coords:
print(v)
# Verificando se um ponto é um vértice
ponto = Point(0,1)
if ponto.coords[0] in poligono.exterior.coords:
print(f"O ponto {ponto} é um vértice do polígono.")
else:
print(f"O ponto {ponto} não é um vértice do polígono.")| Código Python (.py) | O que faz |
| from shapely.geometry import Point, Polygon | Importa da biblioteca Shapely as classes Point (para representar pontos) e Polygon (para representar polígonos). |
| import matplotlib.pyplot as plt | Importa o módulo pyplot da biblioteca matplotlib, usado para criar gráficos e visualizações. |
| vertices = [(0,0), (0,1), (1,1), (1,0)] | Define uma lista de coordenadas que representam os vértices de um quadrado. |
| poligono = Polygon(vertices) | Cria um objeto polígono a partir da lista de vértices. |
| print(“Vértices do polígono:”) | Exibe no console a mensagem indicando que os vértices serão listados. |
| for v in poligono.exterior.coords: | Itera sobre as coordenadas dos vértices do polígono. |
| print(v) | Imprime cada vértice (par de coordenadas) no console. |
| ponto = Point(0,1) | Cria um objeto ponto na coordenada (0,1). |
| if ponto.coords[0] in poligono.exterior.coords: | Verifica se o ponto (0,1) está na lista de vértices do polígono. |
| print(f”O ponto {ponto} é um vértice do polígono.”) | Caso seja um vértice, imprime mensagem confirmando. |
| else: | Caso contrário, executa o bloco seguinte. |
| print(f”O ponto {ponto} não é um vértice do polígono.”) | Imprime mensagem dizendo que o ponto não é vértice. |
Saída do código (valor de retorno)…
Vértices do polígono:
(0.0, 0.0)
(0.0, 1.0)
(1.0, 1.0)
(1.0, 0.0)
(0.0, 0.0)
O ponto POINT (0 1) é um vértice do polígono.
# -------------------------------
# Demonstração visual
# -------------------------------
# Plotando o polígono
x, y = poligono.exterior.xy
plt.plot(x, y, color='blue', linewidth=2)
# Plotando os vértices
for vx, vy in poligono.exterior.coords:
plt.scatter(vx, vy, color='red', s=100, label="Vértice" if (vx,vy)==poligono.exterior.coords[0] else "")
# Destacando o ponto escolhido
plt.scatter(ponto.x, ponto.y, color='green', s=200, marker='*', label="Ponto escolhido")
# Ajustes visuais
plt.title("Demonstração de Vértices em um Polígono")
plt.legend()
plt.axis('equal')
plt.show()| Código Python (.py) | O que faz |
| x, y = poligono.exterior.xy | Extrai as coordenadas X e Y do contorno do polígono. |
| plt.plot(x, y, color=’blue’, linewidth=2) | Desenha o polígono em azul com espessura de linha 2. |
| for vx, vy in poligono.exterior.coords: | Itera novamente sobre os vértices do polígono. |
| plt.scatter(vx, vy, color=’red’, s=100, label=”Vértice” if (vx,vy)==poligono.exterior.coords[0] else “”) | Plota cada vértice em vermelho. Apenas o primeiro recebe a legenda “Vértice” para evitar duplicação. |
| plt.scatter(ponto.x, ponto.y, color=’green’, s=200, marker=’*’, label=”Ponto escolhido”) | Plota o ponto escolhido (0,1) em verde com formato de estrela e legenda. |
| plt.title(“Demonstração de Vértices em um Polígono”) | Define o título do gráfico. |
| plt.legend() | Exibe a legenda com os rótulos definidos. |
| plt.axis(‘equal’) | Ajusta os eixos para que as proporções sejam iguais (não distorcer o polígono). |
| plt.show() | Exibe a figura 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]