Recorte e seleção de linhas e polígonos
|
|
- Ivan Barreiro Gomes
- 5 Há anos
- Visualizações:
Transcrição
1 Recorte e seleção de linhas e polígonos Motivações Clipping
2 mbiguidade na seleção Classes de lgoritmos Pontos Linhas Polígonos Clipping 2
3 Ponto em retângulo y y p 2.tol y m 2.tol m p int pontinrect(int m, int ym, float p, float yp, float tol return ( (p>=m-tol && (p<=m+tol && ( (yp>=ym-tol && (yp<=ym+tol ; Casos de clipping de linhas E ( 2, y 2 C ( 2, y 2 (, y D (, y Clipping 3
4 Códigos das regiões tbrl typedef typedef struct struct all; all; left; left; right; right; bottom; bottom; top; top; Outcode; Outcode; Cálculo do código de um vértice Outcode compoutcode(double, double y, double min, double ma, double ymin, double yma Outcode code; code.top = 0, code.bottom = 0, code.right = 0, code.left = 0, code.all = 0; if (y > yma code.top = ; code.all += 8; if(y < ymin code.bottom = ; code.all += 4; if ( > ma code.right = ; code.all += 2; if( < min code.left = ; code.all += ; return code; Clipping 4
5 lgoritmo de Cohen-Sutherland void CohenSutherlandLineClipndDraw(double 0, double y0, double, double y, double min, double ma, double ymin, double yma, int value outcode outcode0, outcode, outcodeout, CompOutCode(; double, y; boolean accept = FLSE, done = FLSE; outcode0 = CompOutCode(0, y0, min, ma, ymin, yma; outcode = CompOutCode(, y, min, ma, ymin, yma; do if (outcode0.all == 0 && outcode.all == 0 accept = TRUE; done = TRUE; /* trivial draw and eit */ if((outcode0.all & outcode.all!= 0 done = TRUE; /* trivial reject and eit */ if (outcode0.all!= 0 outcodeout = outcode0; outcodeout = outcode; if (outcodeout.top = 0 + ( - 0 * (yma - y0 / (y - y0; y = yma; if(outcodeout.bottom = 0 + ( - 0 * (ymin - y0 / (y - y0; y = ymin; if(outcodeout.right y = y0 + (y - y0 * (ma - 0 / ( - 0; = ma; if(outcodeout.left y = y0 + (y - y0 * (min - 0 / ( - 0; = min; if (outcodeout.all == outcode0.all 0 = ; y0 = y; outcode0 = CompOutCode(0, y0, min, ma, ymin, yma; = ; y = y; outcode = CompOutCode(, y, min, ma, ymin, yma; /* Subdivide */ while (!done; if (accept DrawLineReal(0, y0,, y, value; lgoritimo de Cyrus-eck (Liang-arsky N Ei P(t P 0 P P Ei ( Pt = P + ( P P t 0 0 [ ( Ei ] N P t P = 0 Ei Clipping 5
6 P 0 P lgoritimo de Cyrus-eck (Liang-arsky N Ei P 0 N [ ( ] P Ei P t PEi = 0 [ ( Ei ] N P t P > 0 Ei P Ei [ ( Ei ] N P t P < 0 Ei ( Pt = P+ ( P P t N 0 0 [ Pt ( P ] = 0 Ei Ei [ P0 PEi ] [ P P0] NEi t= N Ei Entrando ou Saindo? Ei N Ei [ ] N Ei P P0 < 0 PE Ei P P 0 N Ei [ ] N Ei P P0 > 0 PL Clipping 6
7 Cálculo das interseções P L P L P E C P L P L P L P E P E P L P E P E P E Cyrus-eck - caso geral Calcule Ni e escolha um PEi para cada aresta if(p = = P0 o segmento é degenerado e deve ser recortado como um ponto; te = 0; tl = ; for( cada aresta if (Ni.(P-P0!=0 /* aresta não é paralela ao segmento */ calcule t; use sign of Ni.(P-P0 para categorizar como PE ou PL; if( PE te = ma(te, t; if( PL tl = min(tl, t; /* aresta paralela ao segmento */ if (Ni.(P0-PEi > 0 /* está fora */ return nil; if(te > tl return nil; return P(tE and P(tL as true clip intersections; Clipping 7
8 y Liang e arsky - caso particular - y ma y min min ma Ei N Ei P Ei t left: = min (-, 0 ( min, y -( 0 - min ( - 0 right: = ma (, 0 ( ma, y bottom: y = y min (0,- (, y min top: y = y ma (0, (, y ma ( 0 - ma -( - 0 -(y 0 -y min (y -y 0 (y 0 -y ma -(y -y 0 Liang e arsky - Cálculo da interseção em uma fronteira - boolean Clipt(double den, double num, double *te, double *tl double t; if (den > 0 /* intersecao PE */ t = num/den; if (t > *tl /* te > tl */ return FLSE; if (t > *te *te = t; if (den < 0 /* intersecao PL */ t=num/den; if (t < *te /* tl < te */ return FLSE; if (t < *tl *tl = t; if (num > 0 /* linha esta fora */ return FLSE; return TRUE; Clipping 8
9 lgoritimo de Liang e arsky boolean Clip2D(double *0, double *y0, double *, double *y, double min, double ma, double ymin, double yma double d = * - *0; double dy = *y - *y0; boolean visible = FLSE; if (d==0&&(dy==0&&clippoint(*0,*y0,min,ma,ymin,yma visible=true; double te=0.0, tl=.0; if (Clipt(d,min-*0,&tE,&tL if (Clipt(-d,*0-ma,&tE,&tL if (Clipt(dy,ymin-*y0,&tE,&tL if (Clipt(-dy,*y0-yma,&tE,&tL visible=true; if (tl<.0 (*=(*0+tL*d; (*y=(*y0+te*dy; if (te>0.0 (*0=(*0+tE*d; (*y0=(*y0+te*dy; return visible; Clipping de polígonos (Hodgman - Sutherland Clip contra uma aresta (plano de cada vez Clipping 9
10 Clipping de polígonos (Hodgman & Suterland Para cada aresta (plano teste um segmento de cada vez Eistem quatro casos possiveis para um vértice e seu antessessor interno saindo eterno entrando S P S I P P P I S S guarde P guarde II guarde I, I, P (a (b (c (d Cálculo de interseção pela distância y (, y d n y ma y min d = d = t = 0 0 d0 d d ma ma 0 min d 0 ma ( 0, y 0 = + t ( 0 0 y = y + t ( y y 0 0 Clipping 0
11 Clipping de polígonos (Eemplo S P ção store,3 3 4 store store store 6 Clipping de polígonos (Eemplo D C 5 4 S P ção 2 store store,4 4 5 store store C 6 store D, D C 5 4 Clipping
12 D 5 Clipping de polígonos (Eemplo 2 C E F 4 S P ção store 4 store E 4 5 store F,5 5 C store C C D store D D store store, E, F, 5, 5, C, D,,, D C 5 Clipping de polígonos (Concatenação de planos D C E 5 F 4 D C E D 5 C 4 first[0] S[0] P[0] first[] S[] P[] 5 F,,,, E, F, 5, 5, C, D Clipping 2
13 PIs para definição de polígonos int int npoints; npoints; double double [MXPOINTS], [MXPOINTS], y[mxpoints]; y[mxpoints]; FillPoly(npoints, FillPoly(npoints,,, y; y; Point Point verte[mxpoint] verte[mxpoint] FillPoly(npoints, FillPoly(npoints, verte verte egin(fill; egin(fill; Verte(30.,20.; Verte(30.,20.; Verte(5.,8.; Verte(5.,8.; End( End( ; ; Distâncias as bordas das janelas y y ma y min min ma double Distance( double, double y, int plane switch( plane case 0: return( - + min ; case : return( - ma ; case 2: return( -y + ymin ; case 3: return( y - yma ; return( 0.0 ; Clipping 3
14 Teste de interseção com uma fronteira void Intersect(double, double y, int plane, double d, double d2 double t = d / (d - d2; double i = s[plane] + t * ( - s[plane]; double yi = sy[plane] + t * (y - sy[plane]; if( plane == LST_PLNE SaveVerte( i, yi; CliptPlane( i, yi, plane+ ; Clipping de polígonos de Sutherland-Hodgman void CliptPlane( double, double y, int plane double d = Distance(, y, plane; /* Check whether it is the first point */ if( first[plane] f[plane] = ; fy[plane] = y; fd[plane] = d; first[plane] = 0; if ((sd[plane] < 0 ^ (d < 0 Intersect(, y, plane, sd[plane], d ; /* Save as previous */ s[plane] = ; sy[plane] = y; /* Check whether it is a visible point */ if( d <= 0.0 if( plane == LST_PLNE SaveVerte(, y; CliptPlane(, y, plane+ ; Clipping 4
15 Ligando com a PI void void Verte( Verte( double double,, double double y y if if (clip_on_off (clip_on_off CliptPlane( CliptPlane(,, y, y, 0 0 ; ; SaveVerte(, SaveVerte(, y; y; void void ClipClose( ClipClose( int int plane plane if if ((sd[plane] ((sd[plane] < < 0 0 ^ ^ (fd[plane] (fd[plane] < < 0 0 Intersect( Intersect( f[plane], f[plane], fy[plane], fy[plane], plane, plane, sd[plane], sd[plane], fd[plane] fd[plane] ; ; first[plane] first[plane] = = ; ; if( if( plane plane == == LST_PLNE LST_PLNE FillSavedPolygon(; FillSavedPolygon(; ClipClose( ClipClose( plane+ plane+ ; ; Em coordenadas homogêneas /* ===================== Distance ====================== ** ** This function computes and returns the distance between a ** point and a plane. Normal points toward out. */ double Distance(double, double y, double z, double w, int plane switch( plane case 0: return( -w - ; case : return( -w + ; case 2: return( -w - y ; case 3: return( -w + y ; case 4: return( -w - z ; case 5: return( -w + z ; return( 0.0 ; Clipping 5
Pipeline Gráfico. Clipping (Recorte) Por que o recorte? INF 1366 Computação Gráfica Interativa. Clipping (Recorte)
Modeling Transformations Pipeline Gráfico INF 1366 Computação Gráfica Interativa Clipping (Recorte) Alberto B. Raposo e Marcelo Gattass abraposo@tecgraf.puc-rio.br http://www.tecgraf.puc-rio.br/~abraposo/inf1366/index.htm
Leia maisPipeline Gráfico Cluter & Durand, MIT
INF 1366 Computação Gráfica Interativa Clipping (Recorte) Alberto B. Raposo e Marcelo Gattass abraposo@tecgraf.puc-rio.br http://www.tecgraf.puc-rio.br/~abraposo/inf1366/index.htm Modeling Transformations
Leia maisRecorte. Edward Angel, Cap. 7. Instituto Superior Técnico Computação Gráfica 2009/2010
Recorte Edward Angel, Cap. 7 Instituto Superior Técnico Computação Gráfica 2009/2010 1 Na última aula... Remoção de Faces Traseiras Back-face Culling Recorte Cohen-Sutherland Sumário Recorte 2D Paramétrico
Leia maisRECORTE (CLIPPING) por janelas rectangulares
RECORTE (CLIPPING) por janelas rectangulares y max y min x min x max i. PONTOS P(x,y) é visível se não for exterior à janela x x max x x min y y max y y min ii. LINHAS (segmentos de recta) PQ é visível
Leia maisAlgoritmos de Rasterização e Recorte
Algoritmos de Rasterização e Recorte 35T56 Sala 3E3 Bruno Motta de Carvalho DIMAp Sala 15 Ramal 227 1 Desenhando linhas Sequência de pixels deve estar o mais próximo possível da linha original Quais propriedades
Leia maisIntrodução à Computação Gráfica Recorte. Claudio Esperança Paulo Roma Cavalcanti
Introdução à Computação Gráfica Recorte Claudio Esperança Paulo Roma Cavalcanti O Problema de Recorte Dada uma superfície M fechada de codimensão 1 do R n, o complemento de M, (R n -M), possui duas componentes
Leia maisRasterização de primitivas 2D e Pipeline 2D. Soraia Raupp Musse
Rasterização de primitivas 2D e Pipeline 2D Soraia Raupp Musse Algoritmos de rasterização para primitivas 2D Objetivo: Aproximar primitivas matemáticas descritas através de vértices por meio de um conjunto
Leia maisRecorte. Márcio Bueno Fonte: Material do Prof. Claudio Esperança e do Prof. Paulo Roma Cavalcanti
Recorte Márcio Bueno {cgtarde,cgnoite}@marciobueno.com) Fonte: Material do Prof. Claudio Esperança e do Prof. Paulo Roma Cavalcanti O Problema de Visibilidade Numa cena tri-dimensional, normalmente não
Leia maisRecorte. Licenciatura em Engenharia Informática e de Computadores Computação Gráfica. Edward Angel, Cap. 7 Apontamentos CG
Licenciatura em Engenharia Informática e de Computadores Computação Gráfica Recorte Edward Angel, Cap. 7 Apontamentos CG Matéria Primeiro Teste 26 de Outubro 2013 Tudo até Sombreamento (inclusivé) 26/10-9h00
Leia maisPipeline de Visualização 2D
Pipeline de Visualização 2D André Tavares da Silva andre.silva@udesc.br Capítulo 2 do Foley Requisitos de matemática para CG Vetores e pontos Matrizes Transformações geométricas Pontos e espaços afim Representação
Leia maisVisualização 2D. Rasterização de primitivas 2D e Pipeline 2D. Soraia Raupp Musse
Visualização 2D Rasterização de primitivas 2D e Pipeline 2D Soraia Raupp Musse Qual o problema? Modelo 2D Display Qual o problema? Modelo 2D Dados matemáticos Display Coordenadas de pixels Algoritmos de
Leia maisVisualização 2D: - Transformação window to viewport - Clipping
Visualização 2D: - Transformação window to viewport - Clipping Sistemas Gráficos/ Computação Gráfica e Interfaces 1 Transformação de Visualização (window to viewport) Objectivo: obter uma matriz de transformação
Leia maisO Problema de Visibilidade. Computação Gráfica Recorte. Onde Acontece? O que é Recorte? Renato Ferreira
O Problema de Visibilidade Computação Gráfica Recorte Renato Ferreira Numa cena tri-dimensional, normalmente não é possível ver todas as superfícies de todos os objetos Queremos descartar objetos ou partes
Leia maisAlgoritmos de Varrimento para Desenho de Primitivas 2D
Algoritmos de Varrimento para Desenho de Primitivas 2D 24T12 Sala 3F5 Bruno Motta de Carvalho DIMAp Sala 15 Ramal 327 1 Desenhando linhas Sequência de pixels deve estar o mais próximo possível da linha
Leia maisde Recta e Polígonos
Mário Rui Gomes Computação Gráfica 1 Recorte de Segmentos de Recta e Polígonos 1.1 Introdução Relembrando os andares do pipeline de visualização, podemos verificar que no andar anterior foi efectuada a
Leia maisComputação Gráfica e Processamento de Imagens. recorte ( clipping ) de : o segmentos de retas o polígonos o textos. Prof.
recorte ( clipping ) de : o segmentos de retas o polígonos o textos Prof. Julio Arakaki 2005 1 Recorte ( clipping ) Ponto Processo de visualização que leva em conta apenas o conteúdo da janela de desenho.
Leia maisComputação Gráfica Módulo III Geometria
Computação Gráfica Módulo III Geometria UniverCidade - Prof. Ismael H F Santos April 5 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br Considerações Gerais Objetivo: Discutir os principais conceitos
Leia maisProf. Fernando V. Paulovich 3 de maio de SCC Computação Gráca
Viewing Pipeline 2D SCC0250 - Computação Gráca Prof. Fernando V. Paulovich http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de Ciências Matemáticas e de Computação (ICMC) Universidade de
Leia maisTransformações de Visualização 2D: Clipping. Antonio L. Bajuelos Departamento de Matemática Universidade de Aveiro
Transformações de Visualização 2D: Clipping Antonio L. Bajuelos Departamento de Matemática Universidade de Aveiro 1 Clipping (recorte) Qualquer procedimento que identifica porções de uma figura que estão
Leia maisIntrodução ao Processamento e Síntese de imagens Recorte 2D
1 Introdução ao Processamento e Síntese de imagens Recorte 2D Fontes: Rogers, D. F. Procedural Elements for Computer Graphics Traina, A. J. M. & Oliveira, M. C. F. (2004) 2016 2 Recorte - (Clipping) Numa
Leia maisComputação Gráfica. 5385: Licenciatura em Engenharia Informática. Cap. 3 Janelas e Visores. Janelas e Visores
Computação Gráfica 5385: Licenciatura em Engenharia Informática Cap. 3 Janelas e Visores Janelas e Visores Sumário Definições domínio de imagem (ecrã) janela de ecrã domínio da cena (IR 2 ) janela visor
Leia maisQuestão 1: O histograma deve ser: [0, 1, 4, 2, 0, 3, 0,, 0, 2] Exemplo: Para a matriz
MAC122 rincípios de Desenvolvimento de Algoritmos Lista de exercícios 01 rof.: aulo Miranda Instituto de Matemática e Estatística (IME) Universidade de São aulo (US) Alocação Dinâmica & Matrizes Questão
Leia maisProva de Programação (21090) Data: 31 de Janeiro de 2008
Ministério da Ciência, Tecnologia e Ensino Superior Curso:... Prova de Programação (21090) Data: 31 de Janeiro de 2008 Nome:... Nº de Estudante:... B. I. nº... Assinatura do Vigilante:... RESERVADO PARA
Leia maisTipo de Dados em Linguagem C
Tipo de Dados em Linguagem C Principais tipos de dados em C int : tipo de dados inteiros (exemplo: 1, -3, 100, -9, 18, etc.) float : tipo de dados reais (exemplo: 1.33, 3.14, 2.00, -9.0, 1.8, etc.) Ocupa
Leia maisRasterização de linhas e polígonos
Rasterização de linhas e polígonos Algoritmos de rasterização de linhas Suponha > incrementa e vê o que acontece com = 5, =3 incrementa e vê o que acontece com Rasterização de Primitivas 1 Algoritmo simples
Leia maisMétodos Computacionais. Tipos Estruturados
Métodos Computacionais Tipos Estruturados Tipos Estruturados C oferece tipos primitivos que servem para representar valores simples Reais (float, double), inteiros (int), caracter (char) C oferece também
Leia maisParadigmas de Programação. Java First-Tier: Aplicações. Orientação a Objetos em Java (I) Nomenclatura. Paradigma OO. Nomenclatura
Java First-Tier: Aplicações Orientação a Objetos em Java (I) Paradigmas de Programação Programação Funcional Programação Procedural Programação Orientada por Objetos Grupo de Linguagens de Programação
Leia maisMódulo 8 Tipos Estruturados
Estruturas de Dados Módulo 8 Tipos Estruturados 9/8/2005 (c) Dept. Informática - PUC-Rio 1 Referências Waldemar Celes, Renato Cerqueira, José Lucas Rangel, Introdução a Estruturas de Dados, Editora Campus
Leia maisComputação Gráfica. Licenciatura em Engenharia Informática e de Computadores Alameda/Taguspark. 1º Exame 29 Junho de 2010
Computação Gráfica Licenciatura em Engenharia Informática e de Computadores Alameda/Taguspark º Exame 29 Junho de 2 O exame tem a duração de 2h3, tolerância incluída. Responda às questões unicamente nestas
Leia maisAlgoritmos de Recorte em 2D
Algoritmos de Recorte em 2D Computação Gráfica DCC065 Prof. Rodrigo Luis de Souza da Silva, D.Sc. Sumário Conceito de Recorte (Clipping) Introdução Algoritmo simples (Força Bruta) Algoritmo de Cohen-Sutherland
Leia maisFundamentos da Computação Gráfica Lista de Exercícios Marcelo Gattass TeCGraf/Departamento de Informática/PUC-Rio 19jun2003
Fundamentos da Computação Gráfica Lista de Exercícios Marcelo Gattass TeCGraf/Departamento de Informática/PUC-Rio 19jun2003 I. Introdução 1) Qual a diferença entre Processamento de Imagens, Visão Computacional
Leia maisTestes de correção (de defeitos)
Testes de correção (de defeitos) Revelam a presença de erros, mas NÃO a ausência Um teste bem sucedido é aquele que descobre o maior número de erros existentes. Deve ser utilizado em conjunto com técnicas
Leia maisEstruturas de Dados Aula 12: Outras Implementações de Listas 18/04/2011
Estruturas de Dados Aula 12: Outras Implementações de Listas 18/04/2011 Fontes Bibliográficas Waldemar Celes, Renato Cerqueira, José Lucas Rangel, Introdução a Estruturas de Dados, Editora Campus (2004)
Leia maisAliasing Exemplo. Representação Vetorial x Matricial. Introdução ao Processamento e Síntese de imagens - Rasterização. Considerações Gerais
Representação Vetorial x Matricial Introdução ao Processamento e Síntese de imagens - Rasterização Fontes: IA725 Computação Gráfica I - Profs. Shin-Ting e Martino Esperança e Cavalcanti (2002) (UFRJ) e
Leia mais1 Para expressar um ponto intermediário em função dos pontos extremos, precisamos
Resolução da Primeira Lista de Exercícios de Fundamentos de Computação Gráfica INF01047 Carlos Eduardo Ramisch Cartão 134657 Turma B Prof.ª Luciana Porcher Nedel Porto Alegre, 03 de abril de 2006. 1 Para
Leia maisFontes Bibliográficas. Listas Circulares. Função Imprime
Fontes Bibliográficas Estruturas de Dados Aula 12: Outras Implementações de Listas Waldemar Celes, Renato Cerqueira, José Lucas Rangel, Introdução a Estruturas de Dados, Editora Campus (2004) Capítulo
Leia maisINF 1010 Estruturas de Dados Avançadas
INF 1010 Estruturas de Dados Avançadas Listas de Prioridades e Heaps 1 Listas de Prioridades Em muitas aplicações, dados de uma coleção são acessados por ordem de prioridade A prioridade associada a um
Leia maisGeometria Computacional
Universidade Federal do Espírito Santo Centro de Ciências Agrárias CCA UFES Departamento de Computação Universidade Federal do Espírito Santo CCA UFES Geometria Computacional Tópicos Especiais em Programação
Leia maisIntrodução aos Algoritmos e Estruturas de Dados. 2 o Teste - A
Ano Lectivo 2017/2018 2 o Semestre Introdução aos Algoritmos e Estruturas de Dados 2 o Teste - A Data: 20 de Junho de 2018 Duração: 1h30m RESOLUÇÃO I. (2,0 + 2,0 + 2,0 + 2,0 = 8,0 val.) I.a) Considere
Leia maisIntrodução à linguagem C++
Estrutura de Dados e Algoritmos e Programação e Computadores II Aula 2: Introdução à linguagem C++ Introdução à linguagem C++ Conceitos básicos: variáveis, tipos de dados, constantes, I/O, etc. Estruturas
Leia maisFilas Implementação Sequencial
SCE 202 182 Algoritmos e Estruturas de Dados I Filas Implementação Sequencial Conceito Coleção ordenada de itens (lista ordenada) em que a inserção de um novo item se dá em um dos lados no fim e a remoção
Leia maisProgramação Estruturada I
Programação Estruturada I Introdução a Linguagem C Prof. Thiago Caproni Tavares 1 Prof. Mateus dos Santos 2 1 thiago.tavares@ifsuldeminas.edu.br 2 mateus.santos@ifsuldeminas.edu.br Última Atualização:
Leia maisPilhas e Filas Encadeadas. Algoritmos e Estruturas de Dados I
Pilhas e Filas Encadeadas Algoritmos e Estruturas de Dados I Pilha Lista linear: pilha Represente graficamente o funcionamento da pilha, representando a pilha vazia, a entrada e a saída de elementos Quais
Leia maisPonto em Polígono. António Leslie Bajuelos Departamento de Matemática Universidade de Aveiro
Ponto em Polígono António Leslie Bajuelos Departamento de Matemática Universidade de Aveiro Preliminares Uma curva poligonal (ou cadeia poligonal) é uma sequência finita v 0, e 0, v,, e n-2, v n-, e n-
Leia maisINF1007: Programação 2 8 Listas Encadeadas. (c) Dept. Informática - PUC-Rio 1
INF1007: Programação 2 8 Listas Encadeadas (c) Dept. Informática - PUC-Rio 1 Tópicos Principais Motivação Listas encadeadas Implementações recursivas Listas de tipos estruturados (c) Dept. Informática
Leia maisPipeline Gráfico Cluter & Durand, MIT
INF 1366 Computação Gráfica Interativa Rasterização Alberto B. Raposo e Marcelo Gattass abraposo@tecgraf.puc-rio.br http://www.tecgraf.puc-rio.br/~abraposo/inf1366/index.htm Modeling Transformations Illumination
Leia maisMódulo 10 Listas Encadeadas
Estruturas de Dados Módulo 10 Listas Encadeadas 9/8/2005 (c) Dept. Informática - PUC-Rio 1 Referências Waldemar Celes, Renato Cerqueira, José Lucas Rangel, Introdução a Estruturas de Dados, Editora Campus
Leia maisLinguagens de Programação Conceitos e Técnicas. Amarrações Prof. Tiago Alves de Oliveira
Linguagens de Programação Conceitos e Técnicas Amarrações Prof. Tiago Alves de Oliveira Conceituação Amarração (ou binding) é uma associação entre entidades de programação, tais como entre uma variável
Leia maisMétodos Computacionais. Variações de Listas Encadeadas
Métodos Computacionais Variações de Listas Encadeadas Variações de Listas Encadeadas Listas podem variar quanto ao: Tipo de encadeamento Simples Circulares Duplas Circulares e Duplas Conteúdo Tipos Primitivos
Leia maisINF1007 - PROGRAMAÇÃO II LISTA DE EXERCÍCIOS 4
INF1 - PROGRAMAÇÃO II LISTA DE EXERCÍCIOS 4 1. Considere uma aplicação que utiliza pontos, retângulos e círculos para representações gráficas. Um ponto é composto pelas suas coordenadas x e y, um retângulo
Leia maisMsC. João Maria MsC. Liviane Melo
Disciplina: Programação Orientada à Objetos AULA 02 Corpo docente: MsC. Alexandro Vladno Edmilson Campos MsC. Fábio Procópio Esp. Felipe Dantas MsC. João Maria MsC. Liviane Melo 2 Tipo Tamanho Alcance
Leia maisRemoção de Faces Traseiras Recorte
Remoção de Faces Traseiras Recorte Edward Angel, Cap. 7 Instituto Superior Técnico Computação Gráfica 2009/2010 1 Na última aula... Câmara Virtual Simples Transformação de Visualização Volumes canónicos
Leia maisGrafos - Representação
466 A representação ligada poderia ser alterada de modo a incluir duas listas emanando de cada nó de cabeçalho: uma para os arcos emanando do nó de grafo e outra para os arcos terminando no nó de grafo.
Leia maisObjetos definidos no seu próprio sistema de coordenadas
Transformações Modelagem Iluminação (Shading) Transformação Câmera A história até aqui Recorte Projeção Rasterização Visibilidade Transformações Modelagem Iluminação (Shading) Transformação Câmera Recorte
Leia maisProgramação 1. Atribuição, operadores aritméticos, entrada de dados. Técnico em Eletrônica Semestre 5 02
Programação 1 Atribuição, operadores aritméticos, entrada de dados Técnico em Eletrônica Semestre 5 02 Armazenando na memória tipo de variável #include #include main() { int ano; Declaração
Leia mais10. - ESTRUTURAS Características Básicas
102102102102102102102102102102102102102102102102102102 10. - ESTRUTURAS 10.1 - Características Básicas Coleção de uma ou mais variáveis que podem ser de diferentes tipos, agrupadas sob um mesmo nome. Também
Leia maisComputação I - C Prova /10/ Profs. Adriano Cruz e Valeria Bastos
Computação I - C Prova 2 2016-2 14/10/2016 - Profs. Adriano Cruz e Valeria Bastos Nome: DRE: Observação: Justifique todas as respostas dadas. Some nte serão aceitas respostas com justificativas. Questão
Leia maisCalculando distâncias
Calculando distâncias Problema: dados um digrafo G e um vértice s, determinar a distância de s aos demais vértices do digrafo Exemplo: para s = v 3 5 dist[v] 3 3 5 Algoritmos em Grafos º sem / Busca em
Leia maisAlgoritmo de Dijkstra
lgoritmo de Dijkstra Caminhos mínimos em Grafos Considere um grafo orientado ponderado G = (V,E) em que cada aresta possui um rótulo não negativo associado que define o custo da aresta, e um dos vértices
Leia maisCap. 4: Janelas, Visores & Recorte Gráfico
Cap. 4: Janelas, Visores & Recorte Gráfico Sumário Definições básicas: sistema de coordenadas globais, sistema de coordenadas do ecrã; janela de domínio de cena; janela de interface e visores de saída
Leia maisINF1007: Programação 2. 4 Tipos Estruturados. 10/23/09 (c) Dept. Informática - PUC-Rio 1
INF1007: Programação 2 4 Tipos Estruturados 10/23/09 (c) Dept. Informática - PUC-Rio 1 Tópicos Principais Tipo estrutura Definição de novos tipos Aninhamento de estruturas Vetores de estruturas Vetores
Leia maisArvores, Percursos não recursivos, Arvores heterogêneas. Aula 19
Arvores, Percursos não recursivos, Arvores heterogêneas Aula 19 Arvores binárias encadeadas Percorrer uma árvore é uma operação muito comum e seria útil encontrar um método mais eficiente para implementar
Leia maisLinguagens de Programação Conceitos e Técnicas. Expressões e Comandos Prof. Tiago Alves de Oliveira
Linguagens de Programação Conceitos e Técnicas Expressões e Comandos Prof. Tiago Alves de Oliveira Expressões Uma expressão é uma frase do programa que necessita ser avaliada e produz como resultado um
Leia maisGeometria COM11087-Tópicos Especiais em Programação II
Geometria COM11087-Tópicos Especiais em Programação II edmar.kampke@ufes.br Introdução Geometria é uma disciplina inerentemente uma disciplina visual. Desenhar figuras e analisá-las. Algumas operações
Leia maisTipos, Literais, Operadores
Tipos, Literais, Operadores Identificadores São palavras utilizadas para nomear variáveis, métodos e classes Na linguagem Java, o identificador sempre começa por letra, sublinhado(_) ou cifrão ($) Não
Leia maisTipos, Literais, Operadores
Tipos, Literais, Operadores Identificadores São palavras utilizadas para nomear variáveis, métodos e classes Na linguagem Java, o identificador sempre começa por letra, sublinhado(_) ou cifrão ($) Não
Leia maisFundamentos de Programação 1
Fundamentos de Programação 1 Linguagem C Funções Slides 7 Prof. SIMÃO Jean Marcelo SIMÃO 1 #include void calc_area_quadrado(); void calc_area_triang_ret(); Funções e variáveis globais void calc_area_quadrado
Leia maisExemplo Tipos Abstratos de Dados TADs Disciplina: Semestre: Turma: Professor: Renata de Matos Galante matricula nome
Tipos Abstratos de Dados TADs Renata de Matos Galante Universidade Federal do Rio Grande do Sul Instituto de Informática INF 01203 Estruturas de Dados galante@inf.ufrgs.br Eemplo Folha de freqüência Disciplina:
Leia maisComputação Gráfica. Licenciatura em Engenharia Informática e de Computadores Alameda / Taguspark. 1º Exame 6 de Junho de 2011
Computação Gráfica Licenciatura em Engenharia Informática e de Computadores Alameda / Taguspark 1º Exame 6 de Junho de 2011 O exame tem a duração de 2h30, tolerância incluída. Responda às questões no espaço
Leia maisLinguagens de Programação Conceitos e Técnicas. Expressões e Comandos
Linguagens de Programação Conceitos e Técnicas Expressões e Comandos Expressões Uma expressão é uma frase do programa que necessita ser avaliada e produz como resultado um valor Elementos Operadores Operandos
Leia maisEstruturas Compostas Parte II
Estruturas Compostas Parte II Filas e Pilhas Leonardo Tórtoro Pereira Slides fortemente baseados no material do professor Ricardo Farias: http://www.cos.ufrj.br/~rfarias/cos121/ Pilhas Pilhas Também conhecida
Leia maisExemplos de utilização de primitivas (nível API) M.Próspero
Eemplos de utilização de primitivas (nível API)
Leia maisTipos Abstratos de Dados - Exercício
Tipos Abstratos de Dados - Exercício void somar_racionais (RACIONAL *a, RACIONAL *b, RACIONAL *c) c->num = a->num * b->den + b->num * a->den; c->den = a->den * b->den; int equivalencia_racionais (RACIONAL
Leia maisRevisão Linguagem C Parte 1
Revisão Linguagem C Parte 1 Comentários: Os comentários aparecem em verde e podem iniciados com /* e encerrados com */ quando utilizase várias linhas ou coloca-se // quando forem colocados em apenas uma
Leia maisUSP - ICMC - SSC SSC o. Semestre Disciplina de Introdução à Ciência da Computação ICC 1 - Teoria
USP - ICMC - SSC SSC 0501-1o. Semestre 2011 Disciplina de Introdução à Ciência da Computação ICC 1 - Teoria Prof. Fernando Santos Osório Email: fosorio [at] { icmc. usp. br, gmail. com } Página Pessoal:
Leia maisEstruturas de Dados. Módulo 11 Pilhas. 9/8/2005 (c) Dept. Informática - PUC-Rio 1
Estruturas de Dados Módulo 11 Pilhas 9/8/2005 (c) Dept. Informática - PUC-Rio 1 Referências Waldemar Celes, Renato Cerqueira, José Lucas Rangel, Introdução a Estruturas de Dados, Editora Campus (2004)
Leia maisLinguagem Algorítmica OO. Linguagem Algorítmica
UFSC-CTC-INE INE5384 - Estruturas de Dados Linguagem Algorítmica OO Prof. Ronaldo S. Mello 2002/2 Linguagem Algorítmica Independente de linguagem de programação OO Utilizada para: Exemplificar os algoritmos
Leia maisINF1007: Programação 2 9 Tipos Abstratos de Dados. (c) Dept. Informática - PUC-Rio 1
INF1007: Programação 2 9 Tipos Abstratos de Dados (c) Dept. Informática - PUC-Rio 1 Tópicos Módulos e compilação em separado Tipo abstrato de dados Exemplo 1: TAD Ponto Exemplo 2: TAD Círculo Exemplo 3:
Leia maisRevisão. Soraia Raupp Musse
Revisão Soraia Raupp Musse Processamento Gráfico Modelagem Multimídia RV Usuário Visão Modelos Gráfico Tempo Animação Vídeo Imagens Processamento de Imagens Processamento de Imagens Modelagem Multimídia
Leia maisBásico: estrutura de programa, sintaxe Interface com linha de comando
Programação em C Sintaxe Básico: estrutura de programa, sintaxe Interface com linha de comando Preprocessamento e compilação Makefiles Ponteiros e estruturas Bibliotecas, ficheiros include e funções Referências
Leia maisGrafos - Representação
Grafos - Representação É importante salientar outra diferença relevante entre a representação de matriz de adjacência e a representação ligada de grafos. Na representação de matriz está implícita a possibilidade
Leia maisImplementação do TAD DiGrafo Ponderado usando Matriz de Adjacência. Profa. Dra. Denise Guliato FACOM - UFU
Implementação do TAD DiGrafo Ponderado usando Matriz de Adjacência Profa. Dra. Denise Guliato FACOM - UFU Tipo do dado typedef int TipoPeso; typedef int TipoVertice; struct grafo ; int NumVertices; int
Leia maisProgramação de Computadores II. Cap. 9 Tipos Abstratos de Dados (TAD)
Programação de Computadores II Cap. 9 Tipos Abstratos de Dados (TAD) Livro: Waldemar Celes, Renato Cerqueira, José Lucas Rangel. Introdução a Estruturas de Dados, Editora Campus (2004) Slides adaptados
Leia maisSCC 202 Algoritmos e Estruturas de Dados I. Pilhas (Stacks) (implementação dinâmica)
SCC 202 Algoritmos e Estruturas de Dados I Pilhas (Stacks) (implementação dinâmica) Operações alocação encadeada dinâmica typedef struct elem{ tipo_info info; struct elem *lig; tipo_elem; typedef struct{
Leia maisÁrvores & Árvores Binárias
Árvores & Árvores Binárias Problema Implementações do TAD Lista Linear Lista encadeada eficiente para inserção e remoção dinâmica de elementos, mas ineficiente para busca Lista seqüencial (ordenada) Eficiente
Leia maisProgramação de Computadores II. Cap. 17 Busca
Programação de Computadores II Cap. 17 Busca Livro: Waldemar Celes, Renato Cerqueira, José Lucas Rangel. Introdução a Estruturas de Dados, Editora Campus (2004) Slides adaptados dos originais dos profs.:
Leia maisPIC - PROGRAMAÇÃO LINGUAGEM C. AUTOR: ENG. ANTONIO CARLOS LEMOS JÚNIOR
PIC - PROGRAMAÇÃO LINGUAGEM C AUTOR: ENG. ANTONIO CARLOS LEMOS JÚNIOR acjunior@facthus.edu.br UBERABA MG 1º SEMESTRE 2009 FLUXOGRAMAS FLUXOGRAMAS Fluxograma para somar dois números e guardar em uma terceira
Leia mais4. Constantes. Constantes pré-definidas
4. Constantes Constantes pré-definidas O PHP possui algumas constantes pré-definidas, indicando a versão do PHP, o Sistema Operacional do servidor, o arquivo em execução, e diversas outras informações.
Leia maisCaracterísticas da Linguagem C
Características da Linguagem C Na aula passada, foi implementado o exemplo utilizado do reajuste salarial O resultado impresso pode ser visualizado da seguinte forma: Características da Linguagem C Introdução
Leia maisAula 06 Definição de Novos Tipos (structs, typedefs, e enumerações) Prof. Filipe Mutz
Aula 06 Definição de Novos Tipos (structs, typedefs, e enumerações) Prof. Filipe Mutz 1 Estruturas (structs) Estruturas (structs) são usadas para criar novos tipos de dados pelo agrupamento de informações.
Leia maisSCC 202 Prova 1. 28/9/2010 Resolução e Comentários
SCC 202 Prova 1 28/9/2010 Resolução e Comentários Questão 1) (3.5) Sobre TADs. a) O que é e quais são as vantagens de se utilizar Tipos Abstratos de Dados (TADs) no projeto de desenvolvimento de software?
Leia mais1º Exame Computação Gráfica
1º Exame Computação Gráfica LEIC-T Prof. Mário Rui Gomes 28 de Junho 2007 Nome: Antes de começar: Identifique todas as folhas com o seu número. Responda às questões seguintes justificando adequadamente
Leia maisAlgoritmos e Estruturas de dados
Algoritmos e Estruturas de dados Listas Encadeadas Prof. Dr. Fábio Rodrigues de la Rocha (Listas Encadeadas) 1 / 21 Definição: Anteriormente estudamos listas encadeadas que foram implementadas como vetores
Leia maisVisualização 3D. Soraia Raupp Musse
Visualização 3D Soraia Raupp Musse 1 Pipeline de Visualização Em 2D as coisas são mais simples Simplesmente especificar uma janela do mundo 2D e uma viewport na superfície de visualização A complexidade
Leia maisFábio da Fontoura Beltrão Felipe Augusto Chies Lucas Fialho Zawacki Marcos Vinicius Cavinato Matheus de Carvalho Proença
C++ Fábio da Fontoura Beltrão Felipe Augusto Chies Lucas Fialho Zawacki Marcos Vinicius Cavinato Matheus de Carvalho Proença Primeiro Programa //Primeiro Programa C++ #include int main() { std::cout
Leia maisProgramação de Computadores I Introdução ao C PROFESSORA CINTIA CAETANO
Programação de Computadores I Introdução ao C PROFESSORA CINTIA CAETANO Introdução Criada em 1972, por Dennis Ritchie; Centro de Pesquisas da Bell Laboratories; Para utilização no S.O. UNIX; C é uma linguagem
Leia maisTE091 Programação Orientada a Objetos Engenharia Elétrica
TE091 Programação Orientada a Objetos Engenharia Elétrica Revisão Rápida de Programação em C Prof. Carlos Marcelo Pedroso 2015 Revisão Linguagem C Características principais Modularidade: uso de procedimentos
Leia mais