traçado em dispositivos gráficos matriciais circunferência
TRANSCRIPT
![Page 1: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/1.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto1
TRAÇADO EM DISPOSITIVOS
GRÁFICOS MATRICIAISCIRCUNFÊRENCIA
Prof.ª Elaine Cecília Gatto
![Page 2: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/2.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto2
Circunferência e Círculo• É o conjunto de todos os pontos de
um plano equidistantes de um ponto fixo, desse mesmo plano, denominado centro da circunferência.
• O ponto fixo é o centro e a equidistância o raio da circunferência.
![Page 3: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/3.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto3
Circunferência e Círculo• Círculo ou disco– É o conjunto de todos os pontos de
um plano cuja distância a um ponto fixo é menor ou igual que uma distância r dada.
–Quando a distância é nula, o círculo se reduz a um ponto.
–O círculo é a reunião da circunferência com o conjunto de pontos localizados dentro da mesma.
![Page 4: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/4.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto4
Circunferencia: Características
• É a única figura plana que pode ser “rodada” em torno de um ponto sem modificar sua posição aparente.
• É a única figura que é simétrica em relação a um número infinito de eixos de simetria.
![Page 5: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/5.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto5
Circunferencia: Definições
• Raio–O raio de uma circunferência é um
segmento de reta com uma extremidade no centro da circunferência e a outra extremidade num ponto qualquer da circunferência.
![Page 6: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/6.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto6
Circunferencia: Definições
• Arco–O arco é uma parte da circunferência
limitada por dois pontos, que se chamam extremidades do arco.
![Page 7: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/7.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto7
Circunferencia: Definições
• Corda–A Corda é um segmento de infinitos
pontos alinhados, cujos pontos extremos estão em um ponto da circunferência. Quando esse segmento passa pelo centro da circunferência, temos o que chamamos de diâmetro.
![Page 8: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/8.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto8
Circunferencia: Definições
• Diâmetro–O diâmetro é sempre a corda maior.
Como é a corda que passa pelo centro, sua medida é igual a duas vezes a medida do raio.
![Page 9: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/9.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto9
Circunferencia: Definições
• Tangente–A tangente é a reta que tem um único
ponto comum à circunferência, este ponto é conhecido como ponto de tangência ou ponto de contato.
![Page 10: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/10.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto10
Circunferencia: Definições
• Secante–A Secante é a reta que intercepta a
circunferência em dois pontos distintos, se essa reta intercepta a circunferência em dois pontos quaisquer, podemos dizer também que é a reta que contem uma corda.
![Page 11: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/11.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto11
Circunferencia: Definições
• Setor Circular–O Setor Circular é a porção do círculo
limitada por um arco e pelos raios que passam pelos seus pontos extremos.
![Page 12: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/12.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto12
Circunferencia: Definições
• Coroa Circular –A Coroa Circular é a porção do circulo
compreendida entre duas circunferências concêntricas.
![Page 13: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/13.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto13
Circunferencia: Definições
• Segmento Circular de uma Base –O Segmento Circular de uma base é a
porção do círculo limitada por um arco e pela corda correspondente.
![Page 14: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/14.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto14
Circunferencia: Definições
• Segmento Circular de duas Bases–O Segmento Circular de duas bases é
a porção do círculo limitada por duas cordas paralelas e pelos arcos compreendidos entre elas.
![Page 15: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/15.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto15
Circunferencia: Definições
• Setor de Coroa Circular–O Setor de Coroa Circular é a porção
de uma coroa circular limitada por dois raios.
![Page 16: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/16.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto16
Circunferencia: Unidades de Medida
• Graus e Radianos– Grau (°) e
radiano (rad) são diferentes unidades de medida de ângulo que podem ser relacionadas por meio da circunferencia.
![Page 17: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/17.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto17
Circunferencia: Unidades de Medida
• Graus e Radianos– Arcos de 1° é
aquele cujo comprimento é igual a 1/360 do comprimento da circunferência.
– O arco de uma volta corresponde, portanto, a C=360°.
![Page 18: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/18.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto18
Circunferencia: Unidades de Medida
• Graus e Radianos–Arco de um
radiano (1 rad), é aquele cujo comprimento é igual ao raio da circunferência em que esta contido.
![Page 19: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/19.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto19
Circunferencia: Unidades de Medida
• Graus e Radianos
EQUAÇÃO 1: Medida do Ângulo em Radianos
EQUAÇÃO 2: Comprimento (C) do Perímetro (P) de um círculo de Raio (r)
![Page 20: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/20.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto20
Circunferencia: Unidades de Medida
• Graus e Radianos
EQUAÇÃO 4: Ângulo de um círculo em radianos
EQUAÇÃO 3: Reescrita da Equação 1 de acordo com a Equação 2
![Page 21: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/21.jpg)
Prof.ª M.ª Elaine Cecília Gatto
21
Circunferencia: Unidades de Medida
• Graus e Radianos
03/05/2023
EQUAÇÃO 5: Equação para obter um ângulo α, em graus, a partir de um ângulo, em radianos
EQUAÇÃO 6: Equação para obter um ângulo, em radianos, a partir de um ângulo α, em graus
![Page 22: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/22.jpg)
Prof.ª M.ª Elaine Cecília Gatto
22
Circunferencia: Quadrantes• DEFINIÇIÃO EM GEOMETRIA: –Quadrante é qualquer das quatro
partes iguais em que se pode dividir uma circunferência.
– Pode ainda corresponder à quarta parte de um círculo e equivalente a 90 graus.
03/05/2023
![Page 23: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/23.jpg)
Prof.ª M.ª Elaine Cecília Gatto
23
Circunferencia: Quadrantes• DEFINIÇÃO EM GEOMETRIA ANALÍTICA:
– São as quatro partes resultantes da divisão de um plano, por um eixo ortogonal.
– Sistema cartesiano de coordenadas.
03/05/2023
![Page 24: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/24.jpg)
Prof.ª M.ª Elaine Cecília Gatto
24
Circunferencia: Quadrantes• DEFINIÇÃO EM GEOMETRIA DESCRITIVA:
– São as quatro partes resultantes da divisão do espaço, por intermédio de dois planos ortogonais.
–Neste caso os quadrantes também são chamados de diedros.
03/05/2023
![Page 25: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/25.jpg)
Prof.ª M.ª Elaine Cecília Gatto
25
Circunferencia: Quadrantes03/05/2023
![Page 26: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/26.jpg)
Prof.ª M.ª Elaine Cecília Gatto
26
Circunferencia: Quadrantes03/05/2023
![Page 27: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/27.jpg)
Prof.ª M.ª Elaine Cecília Gatto
27
Circunferencia: Quadrantes03/05/2023
![Page 28: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/28.jpg)
Prof.ª M.ª Elaine Cecília Gatto
28
Circunferencia: Quadrantes03/05/2023
![Page 29: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/29.jpg)
Prof.ª M.ª Elaine Cecília Gatto
29
Circunferencia: Quadrantes03/05/2023
![Page 30: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/30.jpg)
Prof.ª M.ª Elaine Cecília Gatto
30
Circunferencia: Quadrantes03/05/2023
![Page 31: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/31.jpg)
Prof.ª M.ª Elaine Cecília Gatto
31
Circunferencia: Quadrantes03/05/2023
![Page 32: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/32.jpg)
Conversão Matricial de Circunferências
• A equação de uma circunferência com centro (c) na origem e raio (r), em coordenadas cartesianas, é dada por:
• Forma paramétrica
03/05/2023
Prof.ª M.ª Elaine Cecília Gatto
32
+ EQUAÇÃO 1: Equação da Circunferência
![Page 33: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/33.jpg)
Conversão Matricial de Circunferências
• O círculo que não está centrado na origem deve ser transladado para a origem (0,0).
• Calcula-se então os pontos do primeiro quadrante e os demais são então escritos por simetria
03/05/2023
Prof.ª M.ª Elaine Cecília Gatto
33
![Page 34: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/34.jpg)
Conversão Matricial de Circunferências
• Um cálculo neste formato para cada ponto é computacionalmente inviável, visto que haveria um alto número de cálculos de potência e raiz, que exigem considerável processamento
• Equação explícita da circunferência
03/05/2023
Prof.ª M.ª Elaine Cecília Gatto
34
EQUAÇÃO 1: Equação Explicita da Circunferência
![Page 35: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/35.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto35
Conversão Matricial de Circunferências
• Existem muitas abordagens simples, porém ineficientes, para o traçaado de círculos.
• Em algoritmos não incrementais, um polígono regular de n lados é usado como aproximação para a circunferência.
• Para que a aproximação seja razoável, deve-se escolher um valor suficientemente alto para n.
![Page 36: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/36.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto36
Conversão Matricial de Circunferências
• Entretanto, quanto maior o valor de n, mais lento será o algoritmo, e várias estratégias de aceleração precisam ser usadas.
• Em geral os algoritmos incrementais de conversão matricial são mais rápidos.
• Outra abordagem seria usar a equação explícita da circunferência.
![Page 37: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/37.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto37
Conversão Matricial de Circunferências
• Para desenhar ¼ de circunferência poderíamos variar x de 0 a R, em incrementos de uma unidade, calculando +y a cada passo através da equação explicita da circunferência.
• Essa estratégia funciona, mas é ineficiente porque requer operações de multiplicação e raiz quadrada.
• Os outros ¾ são desenhados por simetria
![Page 38: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/38.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto38
Conversão Matricial de Circunferências
Um arco de ¼ de circunferência, obtido variando-se x em incrementos unitários, e calculandoe arrendondando y.
Grandes gaps nas regiões onde a tangente à circunferência é infinita
![Page 39: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/39.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto39
Simetria de Ordem 8• O Algoritmo de Simetria de Ordem 8
considera que o traçado de uma circunferência pode tirar proveito de sua simetria
• Considere uma circunferência centrada na origem.
• Se o ponto ( x, y ) pertence à circunferência, pode-se calcular de maneira trivial sete outros pontos da circunferência
![Page 40: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/40.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto40
Simetria de Ordem 8
![Page 41: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/41.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto41
Simetria de Ordem 8• Para obter toda a circunferência, basta
computar um arco de circunferência de 45º.
• Para uma circunferência com centro na origem, os oito pontos simétricos podem ser traçados usando o procedimento Circle-Points.
• Este algoritmo não calcula os valores de entrada de x e y, mas uma vez calculados nos dá outros sete pontos do círculo.
![Page 42: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/42.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto42
Simetria de Ordem 8void CirclePoints(int x, int y, int color){
write_pixel( x, y, color);write_pixel( x, -y, color);write_pixel(-x, y, color);write_pixel(-x, -y, color);write_pixel( y, x, color);write_pixel( y, -x, color);write_pixel(-y, x, color);write_pixel(-y, -x, color);
}/* end CirclePoints */
![Page 43: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/43.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto43
Algoritmo do Ponto-Médio• Considere apenas um arco de 45° da
circunferência:
x = 0y = R
x = y =
• Considere que se usa o procedimento CirclePoints para traçar todos os pontos da circunferência
![Page 44: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/44.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto44
Algoritmo do Ponto-Médio• Assim como o algoritmo gerador de
linhas, a estratégia é selecionar entre 2 pixels na malha, aquele que está mais próximo da circunferência, avaliando-se uma função no ponto intermediário entre os dois pixels.
• No 2.º octante, se o pixel P em (xp, yp) foi previamente escolhido como o mais próximo da circunferência, a escolha do próximo pixel será entre os pixels E e SE
![Page 45: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/45.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto45
Algoritmo do Ponto-Médio
Posições dos pontos médios necessários à rasterização de uma circunferência
![Page 46: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/46.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto46
Algoritmo do Ponto-Médio
![Page 47: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/47.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto47
Algoritmo do Ponto-Médio
![Page 48: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/48.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto48
Algoritmo do Ponto-Médio• REFORÇANDO:
• O ponto (x1, y1) é o inferior esquerdo, e (x2, y2) é o superior direito.
• Assumimos que o pixel que acabou de ser selecionado é P, em (xp, yp), e o próximo deve ser escolhido entre o pixel a direita (pixel E) e o pixel abaixo à direita (SE).
![Page 49: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/49.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto49
Algoritmo do Ponto-Médio• Seja M o ponto intermediário entre os pixels E e
SE. • O que se faz é observar de que lado está o
ponto M.
![Page 50: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/50.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto50
Algoritmo do Ponto-Médio• Se M está abaixo da curva, E está mais próximo• Se M está acima da curva, SE está mais
próximo
![Page 51: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/51.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto51
Algoritmo do Ponto-Médio• Seja a função F(x, y) = x2+y2−R2, então
temos que:
– F(X,Y) = 0: igual a zero sobre a circunferência
– F(X,Y) > 0: positivo fora da circunferencia
– F(X,Y) < 0: negativo dentro da circunferencia
![Page 52: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/52.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto52
Algoritmo do Ponto-Médio• ESCOLHA DO SE:– Se o ponto intermediário entre os
pixels E e SE estiver fora da circunferência (porque está mais próximo dela)
• ESCOLHA DO E:– Se o ponto intermediário estiver
dentro da circunferência
![Page 53: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/53.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto53
Algoritmo do Ponto-Médio
• Assim como no caso das linhas, a escolha é feita com base na variável de decisão d, que dá o valor da função no ponto-médio
![Page 54: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/54.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto54
Algoritmo do Ponto-Médio• Se dold < 0, E é escolhido, o próximo
ponto-médio será incrementado de 1 na direção x
• Então: dnew = dold + (2xp + 3)
• Consequentemente: ∆E = 2xp + 3
![Page 55: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/55.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto55
Algoritmo do Ponto-Médio• Se dold >= 0, SE é escolhido, e o
próximo ponto-médio será incrementado de 1 na direção de x e decrementado de 1 na direção d y
• Como: dnew = dold + (2xp − 2yp + 5)
• Então: ∆SE = 2xp − 2yp + 5
![Page 56: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/56.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto56
Algoritmo do Ponto-Médio• Note que no caso da reta (equação
linear), ∆E e ∆NE eram constantes.
• No caso da circunferência (equação quadrática), E e SE variam a cada passo, sendo funções do valor específico de (xp, yp), o pixel escolhido na iteração anterior.
• P é chamado ponto de avaliação.
![Page 57: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/57.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto57
Algoritmo do Ponto-Médio
• As funções podem ser avaliadas diretamente, a cada passo, dados os valores de x e y do pixel escolhido na iteração anterior.
• Essa avaliação não é computacionalmente cara, uma vez que as funções são lineares.
![Page 58: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/58.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto58
Algoritmo do Ponto-Médio
• Calculando o valor inicial de d– Limitar a utilização do algoritmo a raios
inteiros no segundo octante. – O pixel inicial é dado por (0,R)– O próximo ponto-médio está em:
![Page 59: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/59.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto59
Algoritmo do Ponto-Médio• Calculando o valor inicial de d
• Portanto:
![Page 60: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/60.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto60
Algoritmo do Ponto-Médio
Segundo octante da circunferência gerado com o algoritimo do Ponto-Médio e primeirooctante gerado por simetria.
![Page 61: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/61.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto61
Algoritmo do Ponto-Médio
Valores das variáveis do algoritmo de rasterização de circunferências ao rasterizar a circunferência da figura ao lado
Píxeis do primeiro quadrante de uma circunferência de raio 10 calculados pelo respectivo algoritmo de rasterização
![Page 62: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/62.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto62
Algoritmo do Ponto-Médiovoid MidPointCircle(int r, int color){
int x, int y;float d;/* Valores iniciais */x = 0;y = r;d = 5/4 - r;CirclePoints(x, y, color);while (y > x){
if (d < 0){/* Selecione E */d = d + 2 * x + 3;x++;
}else{/* Selecione SE */d = d + 2 * (x - y) + 5;x++;y--;
} /* end if */CirclePoints(x, y, color);
} /* end while */} /* end MidpointCircle */
Usando números reais
![Page 63: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/63.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto63
Algoritmo do Ponto-Médiovoid MidPointCircleInt(int r, int color){
int x, int y, d;/* Valores iniciais */x = 0;y = r;d = 1 - r;CirclePoints(x, y, color);while (y > x){
if (d < 0){/* Selecione E */d = d + 2 * x + 3;x++;
}else{/* Selecione SE */d = d + 2 * (x - y) + 5;x++;y--;
} /*end if*/CirclePoints(x, y, color);
} /* end while */} /* end MidpointCircleInt */
Usando números inteiros
![Page 64: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/64.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto64
Algoritmo do Ponto-Médio: Conclusões
• O teste do ponto médio permite a escolha do pixel mais próximo da curva.
• Além disso, o erro (a distância vertical entre o pixel escolhido e a linha) é sempre inferior a 0.5.
• A aritmética necessária para calcular o próximo ponto a cada passo é adição simples, nenhuma multiplicação é necessária.
• Após o cálculo dos pontos no primeiro quadrante, de 0º `a 45º, utiliza-se o algoritmo de simetria de ordem 8 para calcular os restantes, acelerando o processo.
![Page 65: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/65.jpg)
03/05/2023Prof.ª M
.ª Elaine Cecília Gatto65
Algoritmo do Ponto-Médio: Resumo
![Page 66: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/66.jpg)
Referências 1. Ammeral, L. Computação Gráfica para
programadores Java. Rio de Janeiro: LTC, 2008
2. Traina, A. J. M.; Oliveira, M. C. F. Apostila de Computação Gráfica. São Carlos: USP/ICMC, 2006. Disponível em: http://www.inf.ufes.br/~thomas/graphics/www/apostilas/GBdI2006.pdf. Acessado em 22 de Janeiro de 2016.
3. Paulovich, F. V. Conversão Matricial. São Paulo: USP/ICMC, 2011. Disponível em: http://wiki.icmc.usp.br/images/4/4a/SCC0250-slides-12-Conversao_matricial.pdf. Acessado em 22 de Janeiro de 2016
03/05/2023
Prof.ª M.ª Elaine Cecília Gatto
66
![Page 67: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/67.jpg)
Referências 1. Cavalcanti, J. Computação Gráfica. UNIVAST, 2014.
Disponível em: http://www.univasf.edu.br/~jorge.cavalcanti/comput_graf04_prim_graficas2.pdf. Acessado em 20 de janeiro de 2016.
2. Bueno, M. Primitivas Gráficas. Disponível em: http://marciobueno.com/arquivos/ensino/cg/CG_03_Primitivas_Graficas.pdf. Acessado em 20 de janeiro de 2016.
3. Mousquer, J. C.; Kliemann, K. A.; Matrakas, M. D. ALGORITMOS PARA DESENHAR RETAS E CÍRCULOS. Paraná, Foz do Iguaçu: FAC. Disponível em: http://www.udc.edu.br/v5/resources/producoes/SeminarioCientifico2014/files/CC/01.pdf. Acessado em 20 de Janeiro de 2016.
03/05/2023
Prof.ª M.ª Elaine Cecília Gatto
67
![Page 68: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/68.jpg)
Referências 1. http://
objetoseducacionais2.mec.gov.br/bitstream/handle/mec/10396/geo0500.htm
2. http://www.infoescola.com/geometria-plana/circunferencia/
3. http://pessoal.sercomtel.com.br/matematica/geometria/geom-circ/geom-circ.htm
4. https://pt.wikipedia.org/wiki/Circunfer%C3%AAncia
5. http://www.coladaweb.com/matematica/circunferencia
03/05/2023
Prof.ª M.ª Elaine Cecília Gatto
68
![Page 69: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/69.jpg)
Referências 1. http://
objetoseducacionais2.mec.gov.br/bitstream/handle/mec/10396/geo0500.htm
2. http://www.infoescola.com/geometria-plana/circunferencia/
3. http://pessoal.sercomtel.com.br/matematica/geometria/geom-circ/geom-circ.htm
4. https://pt.wikipedia.org/wiki/Circunfer%C3%AAncia
03/05/2023
Prof.ª M.ª Elaine Cecília Gatto
69
![Page 70: Traçado em dispositivos gráficos matriciais circunferência](https://reader037.vdocuments.pub/reader037/viewer/2022102811/58ab791c1a28abb54e8b6aa5/html5/thumbnails/70.jpg)
Referências 1. https://pt.wikipedia.org/wiki/Quadrante_%28geometria%29
2. http://disciplinas.ist.utl.pt/leic-cg/textos/livro/Rasterizacao.pdf
3. http://www.coladaweb.com/matematica/circunferencia
4. http://educador.brasilescola.uol.com.br/estrategias-ensino/relacao-entre-graus-radianos.htm
5. http://educador.brasilescola.uol.com.br/estrategias-ensino/relacao-entre-graus-radianos.htm
03/05/2023
Prof.ª M.ª Elaine Cecília Gatto
70