Computação Gráfica

Propaganda
Computação Gráfica
TeCGraf
Marcelo Gattass DI/PUC-Rio
Roberto Beauclair LNCC
Áreas da Computação Gráfica
processamento de imagens
IMAGENS
IMAGENS
visualização
visão
DADOS
DADOS
processamento de dados
Profissionais da CG
•
Usuários
–
•
Customizadores
–
•
adaptam programas existentes
Programadores de aplicações
–
•
usam para produzir desenhos e imagens
desenvolvem AutoCAD, Corel, ...
Desenvolvedores de ferramentas
–
desenvolvem OpenGL, DirectX, ...
O curso
n
Objetivo
l
n
Apresentar a Computação Gráfica para alunos que
pretendam desenvolver ferramentas e programas
técnico-científicos
Programa resumido
l
Sistemas de interface com usuários, sistemas
gráficos, curvas, transformações geométricas,
rasterização, clipping, pick, imagens, ray tracing,
projeções, modelo de câmera, iluminação,
visibilidade.
Modelos Quantitativos
Inflação
ICV/DIEESE
6
4
2
0
Mar
Destino do R$ da Gasolina
Abr
Mai
Jun
Indices de Inflação em Jul95
6
4
2
0
IPC-r
IBGE
IPC-r
IBGE
ICV
IGPM
DIEESE FGV
Distribuidor
Refinador
Revendedor
Subsídios
Impostos
Modelos Discretos
Organogramas
Classes de OO
Geometry
Area
Curve
Polygonal
Arc
Point
Petrox
Bezier
...
Modelos Geométricos
MG
RECON
Com que programar?
Delphi
VisualBasic
Java
VisualC++ DirectX
GDI
CanvasDraw
PHIGS
RenderWare
IUP/lua
ToolBook
HOOPS
Xlib
?? Motif
GKS OpenGL QuickDraw
?
Histórico das ferramentas
u
u
u
u
u
u
1985-GKS
1988-PHIGS
1990-PEX
1991-GL
1993-OpenGL
1996-Direct 3D
u
u
u
u
u
u
1984-Macintosh
1987-XWindow v.11
1988-Motif
1990-Windows 3.0
1993-Visual Basic v.3
1996-Java
Requisitos das ferramentas
Fáceis para programadores leigos
n Facilitem a comunicação entre programas
n Acesso a diferentes bancos de dados
n Gerem programas eficientes
n Gerem programas portáteis
n
Ferramentas atuais
Visual Basic, Delphi, ...
þ Fáceis
para programadores leigos
þ Facilitem a comunicação entre programas
þ Acesso a diferentes bancos de dados
ý Gerem programas eficientes
ý Gerem programas portáteis
Modelo do Programador I
1985
Sistema
Gráfico
MetaFile
Usuário
Dispositivos
Computador
Programa
TécnicoCientífico
Programas da década passada
Título ou Mensagens
ÁREA DE TRABALHO
Captura de Dados
Menu
Opção 1
Opção 2
Opção 3
Opção 4
Opção 5
Opção 6
Opção 7
Opção 8
Retorne
Editor Gráfico de Reticulados
Meta-arquivos
n CGM
n DXF
(AutoDesk)
n DGN (Intergraph)
n Postscript
n WMF
Modelo do Programador II
1990
Sistema de
Interface
Sistema
Gráfico
Usuário
Dispositivos
MetaFile
Computador
Programa
TécnicoCientífico
Programa do início dos anos 90
Interactive FEA - Dam
File Geometry Mesh Analysis Result
New
Open ^F12
Save shF12
Exit
alF4
Dialog Box
Label: xxx
Label: yyy
Ok
Cancel
xxx
yyy
zzz
Help
Área de Trabalho
Área de mensagens
Building Editor
Modelo do Programador III
(IUP/CD)
1993
Sistema de
Interface
Nativo
Sistema
Gráfico
Usuário
Filtros
Dispositivos
clipboard
ger. de impres.
Programa
TécnicoCientífico
MetaFile
Imagens
Solução do TeCGraf para IU
CENPES/
SEPROC
IUP.lib
CD.lib
IUP.lib
Programa
de Aplicação
CD.lib
IUP.lib
CD.lib
IUP.lib
CD.lib
Motif
e
X11
Windows
e
GDI
Macintosh
e
QuickDraw
otk
e
DOS
Software Practice & Experience, Jul96
AnaSeTe
Análise Sequencial de Testemunhos
(versões Mac, Win95 e Motif do editor)
Análise Sequêncial de Testemunhos
(versão Mac)
Filtro de imagens
BMP
n PCX
n GIF
n TIF
n RGB (SGI)
n RAS (SUN)
n
Modelo do Programador IV
(G3d)
1993
Sistema de
Interface
Nativo
Sistema
Gráfico
3D/2D
Usuário
Dispositivos
clipboard
ger. de impres.
MetaFile
Programa
TécnicoCientífico
Filtros
Imagens
G3d
biblioteca de funções 3D
n OpenGL like
n usa bibliotecas nativas
n implementa 3D sobre CanvasDraw
n Zbuffer e Gouraud shading
n BSP para exportação e impressão
n
Solução do TeCGraf para 3D
Programa
de Aplicação
G3d.lib
OpenGL
G3d.lib
Direct3D
vesa
X11
G3d.lib
3DR
QuickDraw
GDI
G3d.lib
CD
meta-arquivo
imagem
CENPES/SEPROC
clipboard
Modelo do Programador V
Sistema de
Interface
Sistemas
Gráficos
Usuário
SGED
Dispositivos
clipboard
ger. de impres.
Programa
TécnicoCientífico
Filtros
Imagens
MetaFile
Computador
HED/HPS-tree
n
Gerenciadores de estruturas de dados que
representam sub-divisões do espaço
l
regiões, faces, arestas, vértices
Garantem consistência
n Consultas topológicas eficientes
n Consultas geométricas eficientes
n
Multi-resolução de modelos
geometria
subdivisões
sub-regiões
malha
Multi-resolução
Multi-resolução geométrica
geométrica
Modelo do Programador VI
Sistema de
Interface
Programa
TécnicoCientífico
Sistemas
Gráficos
SGED
Usuário Dispositivos
clipboard
ger. de impres.
MetaFile
Filtros
SGBD
Imagens
BD
Computador
Motivação
n
Associar
informações
contidas em
bancos de
dados (via
ODBC), com
dados espaciais.
DB
Informações
DBGraf
n Acesso
a bancos de dados
Baseado em ODBC
n Simples (6 rotinas em C)
n Camada que abstrai o BD
n Pode ser implementado em qualquer
BD/SQL
n
Modelo do Programador VII
dados
Outros
Programas
(ex. XY++,
Editor, V3d )
Sistema de
Interface
SGED
Dispositivos
clipboard
ger. de impres.
MetaFile
figuras
imagens
sons
Programa
TécnicoCientífico
Sistemas
Gráficos
Usuário
textos
SGBD
BD
Rede Heterogênea
...
Filtros
Imagens
Modelo de Programação VIII
dados
Outros
Programas
(ex. XY++)
figuras
imagens
...
Programa
TécnicoCientífico
Interact
Sistemas
Gráficos
SGED
Dispositivos
clipboard
ger. de impres.
MetaFile
SGBD
BD
Filtros
Imagens
Rede Heterogênea
sons
Sistema de
Interface
Usuário
textos
Customização de programas
“Hoje até carro tem que vir no gosto do
freguês” (ditado popular)
VBA
n Tcl/tk
n
Modelo do Programador IX
Customização
Outros
Programas
(ex. XY++)
dados
textos
figuras
imagens
sons
ling. config.
Sistema de
Interface
...
Programa
TécnicoCientífico
Interact
Sistemas
Gráficos
Usuário
Dispositivos
Filtros
SGED
SGBD
clipboard
ger. de impres.
MetaFile
BD
Imagens
Customização no TeCGraf
n
Linguagem Lua
•Software
•SoftwarePractice
Practice&&Experience,
Experience,Jun96
Jun96
•DrDobb’s,
•DrDobb’s,Dez96
Dez96
Embutida
l Extensível
l Sintaxe simples e clara (Pascal “like”)
l Alto poder de descrição de dados
l Suporta OO
l
Especializações de lua para as ferramentas
n Especializações para as aplicações
n
Modelo do Programador X
Outros
Programas
(ex. XY++)
Customização
dados
textos
figuras
imagens
sons
Sistema de
Interface
Interact
Sistemas
Gráficos
Usuário
SGED
Dispositivos
clipboard
ger. de impres.
Objetos
Visuais
MetaFile
...
Rede Heterogênea
ling. config.
Programa
TécnicoCientífico
SGBD
BD
Filtros
Imagens
Modelo do Programador
Outros
Programas
(ex. XY++)
Customização
dados
textos
figuras
imagens
sons
Sistema de
Interface
Interact
Objetos
Visuais
Sistemas
Gráficos
Usuário
SGED
Dispositivos
clipboard
ger. de impres.
MetaFile
Programa
TécnicoCientífico
SGBD
BD
...
Sistema de
Objetos
Distribuidos
Filtros
Imagens
Rede Heterogênea
ling. config.
Download