Instituto de Matemática Pura e Aplicada
Geometria Computacional - 2001
3a Lista de Exercícios
Para 8/5/2001
- Sejam p1, p2, ..., pn
pontos do plano. Descreva um algoritmo linear
que determina se p1 é um vértice do
fecho convexo de { p1, p2,
..., pn }.
[Sugestão: p1 é vértice de conv{ p1,
p2, ..., pn
} se e só se existe uma reta r contendo p1
tal p2, ..., pn
estejam no mesmo semiplano determinado por r.]
- Implemente um algoritmo para encontrar o fecho convexo de
um conjunto de pontos do plano. Diga a razão para a sua
escolha (algoritmo mais fácil de implementar, algoritmo
mais eficiente, algoritmo mais fácil de entender, etc).
Teste o seu algoritmo com os seguintes conjuntos de
pontos:
- {(0, 0), (1, 1), (3, 1), (5, 2),
(4, 1), (3, 4), (2, 5), (1, 7), (5, 0),
(1, 1)}
- um conjunto de 20 pontos aleatórios, gerados
independentemente de acordo com uma distribuição de
probabilidade uniforme no quadrado unitário.
- a) O que ocorre
quando se aplica o algoritmo de Graham a um polígono
simples? Sob que condições ele funciona corretamente?
Dê exemplo de um polígono simples para o qual o
algoritmo falha e um exemplo de um polígono simples não
estrelado para o qual ele funciona corretamente.
b) O que ocorre quando se aplica o algoritmo de Graham a
um polígono estrelado mas não se parte de um vértice do
fecho convexo?
- Sejam vi1,
vi, vi+1
três vértices consecutivos de um polígono convexo.
- Diga como estabelecer se o polígono
tem orientação horária ou anti-horária.
- Seja u um ponto do plano
exterior ao polígono convexo. Diga como determinar se uvi
é uma reta de suporte de P (isto é,
"tangente" a P).