A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Operações em uma subdivisão planar 2D Rodrigo de Toledo (CG1, UFRJ, 2010.2) Esta versão deste ppt ainda não é a definitiva!

Apresentações semelhantes


Apresentação em tema: "Operações em uma subdivisão planar 2D Rodrigo de Toledo (CG1, UFRJ, 2010.2) Esta versão deste ppt ainda não é a definitiva!"— Transcrição da apresentação:

1 Operações em uma subdivisão planar 2D Rodrigo de Toledo (CG1, UFRJ, 2010.2) Esta versão deste ppt ainda não é a definitiva!

2 Plano de hoje Feedback do trabalho passado Passar o próximo trabalho Formato de arquivo para descrição de malha (ply?) Viewport 2D Seleção de: –Ponto –Aresta –Triângulo –Polígono Outras formas de seleção: –por cor –por subdivisão espacial

3 What Went Well? (34) Exercícios em aula (6) Trabalhos interessantes (20) Pontualidade (2) Desenvolvimento ágil dos trabalhos (5) –duplas etc... Utilização de biblioteca já conhecida (Allegro) Interação do prof.-turma (16) –enche a turma devida a transparência Material na internet (3) Esquema de 8 pontos +2 extras (4) A sequencia do conteúdo (14) Aulas dinamicas (10) Curiosidades fora do conteudo da materia (3) –agile, petroleo, matrix Decisoes tomadas com a turma (3) Preocupacao do prof. com o ensino (2) As aulas de laboratorio (6) Monitor auxiliando o trabalho (8)

4 What Went Well? Rodrigo Os ppts estão a 80% do que eu queria Bastante alunos Vários interessados Trabalhos de proc img ficaram muito bons –menor nota foi 6.3 Alguns feedbacks individuais positivos A participação de alunos na criação do curso O monitor bastante prestativo Infra da UFRJ está dando conta do recado –labs, projetor, salas, secretaria, minha sala... O horário é bom!

5 What can be improved? Falta lista de exercicio (17) –para preparar para a prova Usar biblioteca OpenGL (4) Marcar prova depois do feriado (2) A prova pode ser mais fácil Exercicios para programar no papel (12) Fazer maior uso do lab (12) Cronograma deveria ser antecipado –datas de trabalho / prova Evitar coincidir provas Não alternar com outro professor (4) Atualizar o site mais rápido (2) Deixar mais claro que pode ser feito em outras linguagens Monitoria de programação Mais teoria (2) Bibliografia com indicações por assunto (no próprio slide) Apresentação dos trabalhos –desconfortável por pessoas diferentes corrigirem ((deixar claro a troca dos corretores)) –tempo curto (4) Aumentar peso do trabalho na nota –como está agora (12) –aumentar o peso do trabalho (15) –o contrário (0) Trabalho de modelagem também (7) –talvez uma aula extra....

6 What can be improved? Rodrigo Preparação das aulas com mais antecedencia Madrugadas em excesso Mais reunioes com monitor Dava para ser um pouco mais rápido É provavel que não de para passar todo o conteudo previsto Não marquei data de prova com antecedencia Na segunda é corrido (aula no H até as 10h) Feriados + semana cientifica atrapalham Um pouco de insegurança por ser a primeira vez não sei lidar com alunos que dormem, se distraem e saem

7 Trabalho 2 Faça um programa que leia um arquivo de entrada contendo a descrição de uma subdivisão planar do espaço (malha de triângulos 2D). O programa deve: Desenhar na tela essa malha (sugerimos o uso do Allegro, que tem comandos para desenho de linha ). Permitir que o usuário selecione um vértice ou uma aresta ou um triângulo. Esse input não é uma variação, todos os trabalhos devem permitir as 3 seleções. Uma vez selecionado, mostrar a vizinhança do elemento selecionado segundo a variação de trabalho da dupla. Variações de output: o Mostar os vértices vizinhos: o Mostrar as arestas vizinhas: o Mostrar os triângulos (polígonos) vizinhos: Formato de arquivo de entrada: o A ser definido pelo monitor (até segunda que vem). o Provavelmente uma lista de vértices seguida de uma lista de polígonos. Mostrar na tela o resultado destacado. Exemplos de algo mais: o Interface do sistema de seleção caprichado. o Forma de destacar o resultado. o Zoom e/ou pan. o Permitir malhas de polígonos (não apenas de triângulos). o Sistema topológico sofisticado (e bem implementado). o Implementar as demais variações.

8 Formato de arquivo

9 Viewport 2D Exemplo: (em coordenadas de mundo) Xmin = -500 Ymin = 300 Xmax = 400 Ymax = 800 Exemplo: (em pixels) Umin = 0 Vmin = 0 Umax = 300 Vmax = 200 Como transformar? Manter aspect ratio?

10 Viewport 2D

11

12 Ponto Percorrer sequencialmente os pontos comparando a localização. Como tratar precisão? –Margem (threshold) –Distância euclidiana ? P

13 Aresta P pertence a reta? P está entre V 1 e V 2 ? ? V1V1 V2V2 P

14 Triângulo Produto Vetorial de 2 ( v 1 x v 2 ) = { x 1 y 2 – y 1 x 2 } v 1 x v 2 > 0, se e só se v 2 está a esquerda de v 1 ? V1V1 V2V2 V3V3 ? PP

15 Ponto no interior de um triângulo (CW ou CCW) V1V1 V2V2 V3V3 PiPi PePe a 12 a 23 a 31 N P é interior se t 1, t 2 e t 3 tem o mesmo sentido, ou seja:

16 Polígono convexo ? V1V1 V2V2 V3V3 ? PP V4V4 V5V5 Pergunta se P está do mesmo lado de todas as arestas...

17 Polígono côncavo ? V1V1 V3V3 P V4V4 V6V6 V2V2 V5V5 ? P

18 Achar fecho convexo Verificar se OK para fecho convexo –senão está fora –Considerar área que não pertence ao fecho convexo como polígono CW (sentido horário). Verificar se dentro deste polígono senão está dentro –Atenção: pode ser mais de um polígono... pode ser que o polígono também seja côncavo, tendo de usar recursão nesse caso

19 Regra da paridade (even-odd parity rule) Um ponto é considerado dentro de um polígono se uma raio vindo do infinito cruzar um número par de bordas! A B Cuidado!

20 Como descobrir qual triângulo? Existe alguma outra maneira do que percorrer todos os triângulos?

21 Rasterização de cor Truque usado em 3D 1.Chamar a função que renderiza com cores no back-buffer 2.Leia o pixel do back-buffer correspondente a posição do mouse-click. 3.Processe a cor para descobrir qual o item que foi clicado. Obs: Cuidado para que não apareça ao usuário o esquema de cores.

22 Subdivisão do espaço Em 2D, o mais comum é quadtree –dos vértices? –das arestas? –dos triângulos? Em 3D se chama octree Existem outras subdivisões mais inteligentes...

23 kD-tree Em 3D

24 BSP (Binary Space Partition)


Carregar ppt "Operações em uma subdivisão planar 2D Rodrigo de Toledo (CG1, UFRJ, 2010.2) Esta versão deste ppt ainda não é a definitiva!"

Apresentações semelhantes


Anúncios Google