Universidade Federal do Rio Grande do Norte
DCA-0435 - Computação Gráfica
Lista com todos os exercícios
Primeira Lista de Exercícios
- O que voce entende por Computação
Gráfica?
- Quais sao consideradas as três principais sub-areas da
computação gráfica? Explique cada uma delas
suscintamente.
- O que é uma base vetorial? Quais os requisitos
necessários para se ter uma base vetorial?
- Qual a diferenca basica entre mapeamento e
transformação? Para que isso é usado em
Computação Gráfica?
- O que é um referencial?
- Explique o que é uma transformação linear? E
uma transformação afim?
- Quais as transformações 3D mais comuns? Coloque
também a representação de cada uma em forma
matricial.
- O que são coordenadas homogêneas? O que são
transformações homogêneas? Represente a
notação para uma transformação
homogênea generica em 3D, em sua forma matricial.
- Dado o ponto P1=(2,1,1), calcule o ponto P2, rotacionado de 60
graus em torno de X, 45 graus em torno de Y e 30 graus em torno de Z,
tudo em relação ao mesmo referencial (calcule as novas
coordenadas do ponto P2 no espaço).
- Aplique uma translação de (+3, -4, +5) no resultado
da questão anterior.
- Repita os dois exercícios anteriores, combinando as
matrizes e vetores usados em uma transformação
homogênea única.
- O que vcoe entende por ângulos de Euler?
- Dadas as matrizes A, B, C, D e E e o ponto P, como seria a
transformação única que represedntaria a
combinação da sequencia de transformações
A aplicada a P, depois B aplicada ao resultado disso e assim sucessivamente
até E aplicado ao resultado das operações
anteriore, numa única matriz?
Segunda Lista de Exercícios
- O que é uma imagem? Como representar imagens (explique
vetorial e raster)? Por que os displays vetoriais morreram?
- O que é um Display Full-color (ou true-color)? Explique
por que alguns frame-buffers (true-collor ou high-end) possuem
até 96 bits de profundidade (ou mais).
- O que é uma tabela de cores (color-map)? Tente entender e
faça um algoritmo que mapeia M cores (RGB) em uma colormap com
N entradas formando uma rampa de tons de cinza?
- Cite alguns dos formatos mais usados para armazenamento e
manipulação de imagens (descreva suscintamente).
- Para que serve a operação de
convolução? Coloque a sua forma matemática,
contínua e discreta, bidimensional.
- Descreva o que é filtragem e para que serve.
- Descreva a aplicação (para que serve), coloque a
forma matemática e apresente exemplos de máscaras 3 x 3
para:
- Filtro suavizante (blurring);
- Filtro para realce de arestas (detector de arestas);
- Filtro Gaussiano.
- Filtro Gradiente do Gaussiano
- Filtro Laplaciano do Gaussiano.
- Coloque as imagens resultantes das convoluções do filtro
gradiente de Sobel 3 x 3, nas duas direções X e Y, com a
imagem abaixo. Coloque a imagem que representa a magnitude dos filtros aplicados.
0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 1 1 1 1 0 0 0 0
0 0 0 1 1 1 1 1 1 0 0 0
0 0 1 1 1 1 1 1 1 1 0 0
0 0 1 1 1 1 1 1 1 1 0 0
0 0 1 1 1 1 1 1 1 1 0 0
0 0 0 1 1 1 1 1 1 1 0 0
0 0 0 0 1 1 1 1 1 0 0 0
0 0 0 0 0 1 1 1 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0
Terceira Lista de Exercícios
- Qual a diferenca basica entre irradiância e radiância? Sugestão: defina as duas.
- Explique o que é luz e cor, fisicamente (comprimento de
onda, faixa visível do espectro, etc). Cite alguns exemplos de
cores com seus comprimentos de ondas aproximados.
- Nós enxergamos completamente o que fisicamente existe?
Discorra um pouco sobre isso.
- Descreva o processo de captação da luz e cor em
nossos olhos (retina, fóvea, cones, bastões, pigmentos
visuais, etc).
- Descreva sucintamente o microprograma que faz mudar a
atenção de um lugar a outro (em modelos
biológicos).
- O que são espaços de cores? Para que servem? Quais
são os mais comuns usados?
- Qual a diferença entre um espaço aditivo e um
subtrativo? Explique a aplicação de ambos (onde
são utilizados).
- O que voce entende por reflexão lambertiana ou difusa? E
especular? E ambiente? Fale sobre atenuação da luz e
atmosférica?
- Discorra suscintamente sobre a equação de
iluminação que junta todos os termos do exercício
anterior (coloque a equaçao e defina cada termo).
Quarta Lista de Exercícios
- Explique sucintamente o que é mapeamento de textura e para o que ele é usado em Computação Gráfica.
- Como se especifica uma função para fazer o mapeamento de textura? Dê exemplos.
- Cite exemplos de parâmetros que podem ser modificados usando um mapa de textura.
- Qual a diferença básica entre "bump map" e mapa de deslocamentos?
- Explique a idéia de usar textura sólida.
Quinta Lista de Exercícios
- Nossos olhos colapsam o mundo (3D) em imagens na retina, que pode ser considerada como uma superfície (2D). O céerebro tem então que reconstruir em (3D). Num computador, este processo duas partes: transformacao de __________________ (posicao de camera e orientação) e transformacao de __________________ (reduz 3D para 2D). Ambas usam transformacoes ___________________ que formam a raiz da hierarquia de transformacao.
- O que voce entende por camera pin-hole? Qual o principal problema da camera pin-hole e como resolve-lo?
- Qual a principal diferenca entre projecao ortográfica e projecao perspectiva? Sugestão: defina as duas.
- Descreva detalhadamente o modelo (approach) mais popular para implementar a transformacao de visualizacao (frustum, viewing, look_from, look_at, vup, etc). Use desenhos graficos para ilustrar a sequencia de transformacoes e coloque as equações e matrizes dessas operações.
- Uma câmera fotográfica digital com distância focal de 100 mm e ângulo de abertura de 90 graus em ambas as direções (vertical e horizontal) encontra-se no ponto (2,3,2), sistema MKS, direcionada (com sua lente apontando) para o ponto (2,2,0), orientada de modo que o eixo x da câmera esteja na horizontal (eixo y inclinado para a frente). Dê o que se pede:
- Sabendo que cada pixel tem dimensão de 1x1 mm, qual a quantidade de pixels em cada imagem (dimensões da imagem)?
- Sabendo que a origem do sistema de coordenadas da imagem (no monitor, seria a origem da janela de exibição) encontra-se no canto inferior esquerdo, como no OpenGL, quais as coordenadas de imagem (em pixels) dos vértices do triângulo formado pelos pontos (1,1,0), (3,1,0), (2,3,0)? Faca um desenho gráfico (em escala) mostrando a imagem com o triângulo desenhado nela (2D). Obs: não desenhar partes do triângulo fora da imagem, se isto ocorrer.
- Considerando um observador, com apenas um olho centrado na origem do sistema de coordenadas (MKS), olhando para a direção (1, 1, 1), calcule o ponto de interseção (mais pr..o do observador) do seu eixo ..o visual com a esfera centrada em (4,2,2) e de raio igual a 2, ou seja, o ponto visível na esfera.
Sexta Lista de Exercícios
- Defina o problema de visibilidade.
- Quais são os algoritmos básicos de visibilidade?
Coloque o pseudo-código de cada um deles (são 4) e
explique em detalhes as vantagens e desvantagens de cada um
deles.
- O que voce entende por Shading? Quais são os algoritmos de
shading (explique de modo que se entenda o funcionamento de cada um
deles)?
- Qual é o algoritmo de shading default do OpenGL?
- Qual a diferença básica entre o "Forward Ray Tracing" e o "Backward Ray Tracing" (sugestão: defina os dois)? Qual principal problema do primeiro método, resolvido parcialmente pelo segundo?
- Quais os 3 tipos de raios a se considerar no ray-tracing recursivo? Descreva sucintamente cada um deles.
- Sabemos que uma luz artificial pontual se encontra no ponto (3,3,3). Sabemos que uma câmera fotográfica digital possui distância focal de 100 mm, ângulo de abertura de 90 graus e encontra-se no ponto (2,3,2), sistema MKS, direcionada para o ponto (2,2,0), orientada de modo que o seu eixo x está na horizontal (eixo y inclinado para a frente). Cada pixel possui lado de comprimento 1mm (quadrado), como no exercício acima, e a origem do sistema de coordenadas da imagem (no monitor, seria a origem da janela de exibição) encontra-se no canto inferior esquerdo desta, como no OpenGL. Sabemos ainda que uma esfera pintada com tinta vermelha fosca (difusa), de raio 50cm encontra-se centrada no ponto (3,2,0). No algoritmo do "ray tracing" recursivo acima, dado o raio que parte do ponto focal da câmera em direção ao pixel (0,150), em coordenadas de imagem, determine se o raio em questão intersecta a esfera. Caso positivo, calcule os vetores (em coordenadas de mundo - MKS) que representam as direções dos 3 raios do exercício anterior.
- Para que servem as estruturas de dados espaciais? Cite a ideia basica de funcionamento de pelo menos 4 das estruturas de dados espaciais discutidas em aula.
- Qual das estruturas acima você usaria para acelerar o ray-tracing se muitos objetos estivessem numa pequena porção do seu ambiente de visualização? Explique o porquê de sua escolha.
- Qual das estruturas acima você usaria para acelerar o ray-tracing se muitos objetos estivessem presentes de forma espalhada no seu ambiente de visualização? Explique o porquê de sua escolha.
- Qual das estruturas acima você usaria para acelerar o ray-tracing se apenas alguns objetos complexos, isto é, modelado com muitas faces triangulares, estivessem presentes, de forma espalhada, no seu ambiente de visualização? Explique o porquê de sua escolha.
- Quais as diferenças, em especificidade, das curvas paramétricas e implícitas (sugestão: defina as duas)? Indique as vantagens e desvantagens de cada uma.
- Cite uma aplicacao de curvas parametricas em Computacao Grafica.
- Quais as restrições que definem (especificam) uma spline de Hermite? Ou seja, como se define uma curva de Hermite e quais suas caracteristicas basicas? Coloque em forma matricial a equacao que a implementa.
- Repita a questao anterior para spline de Bezier.
- Qual a diferenca principal entre spline de Hermite e de Bezier? Como transformar uma spline de hermite para uma de Bezier (coloque a matriz de mudanca de base)?
- Explique a propriedade do fecho convexo ("convex hull") para splines de Bezier.
- Explique a ideia do principio da subdivisao para curvas de Bezier, ilustrando graficamente, e indique sua utilidade.
- No espaço bidimensional (X,Y), dados os pontos P1 = (1,1), P2 = (2,4), P3 = (5,4) e P4 = (6,1), especifique a funcao parametrica (spline) de Bezier que define a curva que passa por P1 e P4. Usando a spline de Bezier especificada, calcule o valor da coordenada Y para X = 3 e para X = 4. Faca o desenho aproximadamente em escala desta curva (plotagem) usando o processo da subdivisao explicado em sala.
- Com os dados anteriores, especifique a função paramétrica (spline) de Hermite que passa por P1 e P4. Obs: para definir as tangentes, use a matriz que transforma da base de Bezier para a de Hermite. Usando esta funcao, determine o valor de Y sobre a curva para X=2 e X=5.
- Entendendo que modelos geométricos são definidos por parâmetros (valores), como voce faria para produzir uma animação usando estes parâmetros?
- Qual a diferença básica entre Animação e Modelagem? Onde termina a animacao e comeca a modelagem?
- Como é feito o processo de Animação Tradicional, usado em filmes de desenho animado como os do Mickey Mouse (explique cada passo do processo completo)? Explique por que o uso da técnica tradicional em computadores é impraticável (quais das fases tornam-se difíceis)?
- Cite oito princípios definidos na prática a partir da experiência de animadores para a animação tradicional.
- Cite as principais técnicas de animação por computador (pelo menos 5), explicando sucintamente cada uma delas (basicamente descreva como se faz em cada uma, citando suas vantagens, desvantagens, e características principais).
- O que é Realidade Virtual? O que você entende por Realidade Aumentada? O que é Realidade Mista?
- Qual a diferença básica entre RV imersiva e não imersiva?
- Descreva o ciclo basico para se realizar realidade virtual?
- Por que latência é um dos pontos chaves em RV? Explique por que uma pessoa pode sentir náuseas ao fazer RV.
- Quais os dispositivos ("devices") mais comuns para se fazer realidade virtual (de entrada e de saída)? Descreva a utilidade básica e aplicação de cada um deles (pelo menos 5).
- Fale sobre os ambientes virtuais compartilhados.
Se você encontrar algo que não esteja claro, por favor, consulte o professor para esclarecimentos.
Luiz Marcos
Last modified:
Thursday, Nov 16 2006, by LM