Computação Gráfica definição e histórico - PCS - USP
Computação Gráfica definição e histórico - PCS - USP
Computação Gráfica definição e histórico - PCS - USP
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
<strong>Computação</strong> <strong>Gráfica</strong><br />
<strong>definição</strong> e <strong>histórico</strong><br />
Maria Alice Grigas Varella Ferreira<br />
Escola Politécnica da Universidade de São Paulo<br />
maria.alice.ferreira@poli.usp.br
Definições<br />
<strong>Computação</strong> gráfica - é a criação, armazenamento<br />
e manipulação de modelos de objetos e de<br />
suas figuras, via computador<br />
<strong>Computação</strong> gráfica interativa - é a <strong>Computação</strong><br />
<strong>Gráfica</strong>, onde o usuário controla as figuras<br />
dinamicamente<br />
<strong>Computação</strong> Visual - é uma área mais vasta, que<br />
engloba a <strong>Computação</strong> <strong>Gráfica</strong>, a Visão<br />
Computacional e o Processamento de Imagens<br />
(Zuffo et al, 1990)<br />
Objeto<br />
CG<br />
Imagem PI<br />
VC<br />
MAGVF - EP -<strong>USP</strong> 2
Histórico<br />
1950 - Eram usadas impressoras e plotters<br />
MIT 1950 WHIRLWIND COMPUTER -<br />
aparecimento do terminal de vídeo (somente<br />
saída)<br />
SAGE AIR DEFENSE SYSTEM - meados de<br />
1950 - vídeo com console para controle e<br />
comando e uso de LIGHT PEN para entrada<br />
gráfica<br />
MAGVF - EP -<strong>USP</strong> 3
Histórico<br />
SKETCHPAD – A Man-Machine Graphical<br />
Comm. System - 1963 - Ivan Sutherland (tese<br />
de Doutorado):<br />
– Princípios da computação gráfica interativa<br />
– Introdução de estruturas de dados para<br />
armazenamento de dados gráficos<br />
– Desenvolvimento de técnicas interativas para uso<br />
de LIGHT PEN (caneta ótica) e console<br />
– Introdução das transformações geométricas sobre<br />
os objetos: rotação, translação e escala<br />
MAGVF - EP -<strong>USP</strong> 4
Histórico<br />
1965 – primeiro sistema CAD – General<br />
Motors<br />
– CAD - Computer-Aided Design<br />
– CAM - Computer-Aided Manufacture<br />
– Aparecimento de produtos comerciais para a<br />
indústria automobilística e aeroespacial<br />
– General Motors - consoles gráficas em timesharing<br />
- projetos de automóveis<br />
– Digigraphic Design System - (ITEC - CDC) -<br />
projeto de instrumentos óticos<br />
MAGVF - EP -<strong>USP</strong> 5
Histórico<br />
1970 – várias pesquisas – algoritmos<br />
1975 – primeiro computador com interface visual<br />
1980 – busca pelo fotorealismo; tentativas de<br />
padronização diversas<br />
1990 – firma-se como base da indústria<br />
cinematográfica; disseminam-se os jogos de<br />
computador; firmam-se as interfaces H-M gráficas<br />
(GUIs); início da Realidade Virtual<br />
MAGVF - EP -<strong>USP</strong> 6
Dificuldades no desenvolvimento<br />
custo do hardware, quando não produzido em<br />
grande escala<br />
necessidade de recursos capazes de suportar:<br />
– grandes bases de dados<br />
– manipulação de figuras, interativamente<br />
– pós-processamento de programas de aplicação,<br />
com entrada proveniente da fase de projeto<br />
gráfico<br />
MAGVF - EP -<strong>USP</strong> 7
Dificuldades no desenvolvimento<br />
dificuldades de escrita de programas interativos para<br />
ambientes de “time-sharing”, quando os conceitos de<br />
computação gráfica ainda eram novos para<br />
programadores orientados para processamento de<br />
lote (“batch”)<br />
software não portável entre as várias plataformas,<br />
orientado para determinado tipo de vídeo e<br />
produzido sem emprego de princípios de Engenharia<br />
de Software, programação modular ou estruturada.<br />
MAGVF - EP -<strong>USP</strong> 8
Necessidades de portabilidade<br />
“PORTABILIDADE DE PROGRAMAS” - Capacidade<br />
de transpor um programa de uma instalação para<br />
outra, com um mínimo de alterações.<br />
“PORTABILIDADE DE PROGRAMADORES” -<br />
Simplificação da tarefa de treinamento de<br />
programadores para se adaptarem às novas<br />
características particulares de uma nova instalação<br />
gráfica.<br />
Pacote<br />
de rotinas dependente<br />
de dispositivo<br />
Pacote<br />
de rotinas independente<br />
de dispositivo<br />
FABRICANTE<br />
SOFTWARE HOUSE<br />
A interface necessita ser padronizada<br />
MAGVF - EP -<strong>USP</strong> 9
Esforços para a padronização<br />
1974 - Formação do GRAPHICS STANDARD PLANNING<br />
COMMITTEE - com a finalidade de estabelecer as regras<br />
principais para os pacotes gráficos futuros (padronizados)<br />
<br />
1976 - Atenção para o fato de que era necessário estabelecer<br />
uma metodologia de projeto gráfico (IFIP WG5.2 GRAPHICS<br />
SUBCOMMITTEE)<br />
– Estudo da estrutura dos programas de aplicação<br />
– Separação das funções de geração de figuras (“CORE”),<br />
das funções de modelagem (aplicações propriamente ditas:<br />
estruturas de dados e funções aplicativas)<br />
1977 - “CORE GRAPHICS SYSTEMS” (THE CORE) -<br />
produzido pela ACM SIGGRAPH COMMITTEE - inclui<br />
conceitos e práticas comuns em computação gráfica - serve<br />
como base para a maturação de idéias para a padronização<br />
<br />
1979 - É apresentada uma nova versão do CORE.<br />
MAGVF - EP -<strong>USP</strong> 10
Esforços para a padronização<br />
<br />
<br />
<br />
1979 - Os esforços são transferidos para a ANSI (AMERICAN<br />
NATIONAL STANDARDS INSTITUTE) - ANSI X3 -<br />
COMMITTEE ON COMPUTERS - ANSI x3H3 ( Computer<br />
Graphics Programming Languages)<br />
1976 a 1979 - são desenvolvidos esforços paralelos na Europa<br />
(Alemanha Ocidental) - ISO (ISO/TC97/SC5/WG2) - definindose<br />
as bases do sistema que mais tarde seria conhecido com<br />
GKS - Graphical Kernel System.<br />
1981 - é publicada a versão 7.0 do GKS<br />
1982 - novas alterações da norma GKS - versão 8.0<br />
<br />
1982 - ANSI apresenta uma série de extensões ao sistema<br />
CORE: interface programador-sistema, Metafiles, Virtual Device<br />
Interface (VDI-CGI), sistema 3D.<br />
MAGVF - EP -<strong>USP</strong> 11
Esforços para a padronização<br />
1983-1984 - nova versão do GKS é apresentada ao<br />
público para sugestões e revisões e o grupo de<br />
controle do GKS se reúne para responder a<br />
perguntas da comunidade sobre o sistema<br />
1985 - ANSI padroniza o GKS como sistema<br />
americano, antes mesmo de qualquer resolução da<br />
ISO<br />
daí em diante - imposição das normas pelas<br />
agências regulamentadoras<br />
empresas continuam utilizando seus próprios<br />
pacotes<br />
HOJE - grande variedade de pacotes diferentes.<br />
Normas convivem em paralelo.<br />
MAGVF - EP -<strong>USP</strong> 12
Normas gráficas<br />
GKS - Graphical Kernel System - interface gráfica para<br />
programas aplicativos<br />
GKS++ - para objetos<br />
GKS-3D - Graphical Kernel System for 3 Dimensions <br />
proposta<br />
CGI - Computer Graphical Interface - especificação de<br />
técnicas de interfaceamento para uso de dispositivos<br />
gráficos (tornam-se virtuais)<br />
CGM - Computer Graphics Metafile - mecanismo de<br />
transferência e armazenamento de informações de<br />
descrição de figuras (ANSI)<br />
IGES - Initial Graphics Exchange Standards -<br />
especificação de formatos de arquivos e linguagem para<br />
transmissão e armazenamento de dados de <strong>definição</strong> de<br />
produto (v. 1.0 - ANSI - 1981)<br />
MAGVF - EP -<strong>USP</strong> 13
Normas gráficas<br />
PHIGS - Programming Hierarchical Interactive Graphics<br />
System (PHIGS++/PEX) - interface gráfica bi e<br />
tridimensional, para programas aplicativos - talvez, até<br />
mais difundida que a GKS, da qual foi originada; permite<br />
hierarquia de objeto, o que facilita a modelagem.<br />
NAPLPS - North American Presentation Level Protocol<br />
Syntax - Interface de transmissão de texto e gráficos para<br />
dispositivos de exibição ou armazenamento com<br />
inteligência local (ANSI - 1983) (vídeo-texto)<br />
X-Windows - norma para interfaces homem-máquina, com<br />
janelas; existem várias implementações: X-Windows,<br />
Open-windows, MS-Windows, etc.<br />
X-lib - toolkit de rotinas do sistema Windows.<br />
MAGVF - EP -<strong>USP</strong> 14
Abrangência das normas<br />
IGES<br />
Programa aplicativo<br />
GKS/PHIGS<br />
Driver de<br />
dispositivo<br />
Pacote gráfico(interface)<br />
Driver de<br />
dispositivo<br />
Driver de<br />
dispositivo<br />
CGI<br />
CGM<br />
MAGVF - EP -<strong>USP</strong> 15
Aplicações principais<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
Interfaces homem-máquina<br />
Arte e comércio (multimídia)<br />
Entretenimento (jogos)<br />
Traçado de Gráficos<br />
Cartografia<br />
Automação de Processos e Editoração Eletrônica<br />
CAD/CAM/CAE/CASE/CAI/CAL<br />
Simulação e Animação<br />
Controle de Processos<br />
Robótica<br />
Medicina<br />
MAGVF - EP -<strong>USP</strong> 16
Referências<br />
<br />
<br />
<br />
<br />
Foley et al. Fundamentals of Interactive Computer Graphics.<br />
Cap. 1<br />
Foley et al. Fundamentals of Interactive Computer Graphics.<br />
Cap. 3 - (3.1 a 3.3)<br />
Foley et al. Fundamentals of Interactive Computer Graphics.<br />
Cap. 26<br />
Cunha, G. et al. <strong>Computação</strong> <strong>Gráfica</strong> e suas aplicações em<br />
CAD. Introdução e padronização. Editora Atlas, 1987. Cap. 8.<br />
(disponível na biblioteca EP- Elétrica)<br />
MAGVF - EP -<strong>USP</strong> 17