EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias
Transcript of EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias
![Page 1: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/1.jpg)
EDITOR DE MALHAS FERROVIÁRIAS EMF
Luiz Ricardo DiasLuiz Ricardo Dias
Orientador:
José Roque Voltolini da Silva
![Page 2: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/2.jpg)
ROTEIRO DE APRESENTAÇÃO
ROTEIRO DA APRESENTAÇÃO
� Introdução
� Fundamentação teórica
� Construçãodosmodelosvetoriais� Construçãodosmodelosvetoriais
� Desenvolvimento
� Resultados e discussões
� Conclusão
![Page 3: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/3.jpg)
INTRODUÇÃO
INTRODUÇÃO
• Editores
• Trabalhos na mesma área
• Estradas de ferro • Estradas de ferro
• Trabalhos deficientes na configuração visual
![Page 4: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/4.jpg)
• Desenvolver um editor de malhas ferroviárias:
• Manipular arquivos com dados vetoriais
• Área de edição interativa 3D
INTRODUÇÃO
OBJETIVOS
• Área de edição interativa 3D
• Rotação e translação para os componentes da ferrovia e para a câmera
• Aproximação e afastamento da câmera (zoom in e zoom out)
![Page 5: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/5.jpg)
FUNDAMENTAÇÃO TEÓRICA
![Page 6: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/6.jpg)
FUNDAMENTAÇÃO TEÓRICA
Divididos em 3 categorias:
• Editores raster
EDITORES GRÁFICOS
• Editores raster
• Editores vetoriais
• Editores tridimensionais
![Page 7: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/7.jpg)
FUNDAMENTAÇÃO TEÓRICA
• Formados por pixels
• Perda da qualidade ao redimensionar
• Arquivo grande
EDITORES RASTER
• Arquivo grande
• Exemplos de software:
• MS Paint
• Adobe Photoshop
![Page 8: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/8.jpg)
FUNDAMENTAÇÃO TEÓRICA
• Formados por vetores
• Não há perda da qualidade ao redimensionar
• Arquivo pequeno
EDITORES VETORIAIS
• Arquivo pequeno
• Exemplos de software:
• Corel Draw
• Adobe Ilustrator
![Page 9: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/9.jpg)
FUNDAMENTAÇÃO TEÓRICA
• Formados por vetores tridimensionais
• Não há perda da qualidade ao redimensionar
• Arquivo pequeno
EDITORES TRIDIMENSIONAIS
• Arquivo pequeno
• Exemplos de software:
• 3Ds Max
• Blender
![Page 10: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/10.jpg)
FUNDAMENTAÇÃO TEÓRICA
• Wavefront Tecnologies
• Informações vetoriais
ARQUIVOS OBJ# colorCube.obj
mtllib colorCube.mtl
v 0.000000 1.000000 1.000000
v 0.000000 0.000000 1.000000
v 1.000000 0.000000 1.000000
v 1.000000 1.000000 1.000000
v 0.000000 1.000000 0.000000
v 0.000000 0.000000 0.000000
v 1.000000 0.000000 0.000000v 1.000000 0.000000 0.000000
v 1.000000 1.000000 0.000000
g cube_1
usemtl red
f 1 2 3 4
f 8 7 6 5
f 2 6 7 3
g cube_2
usemtl green
f 5 1 4 8
f 5 6 2 1
f 4 3 7 8
![Page 11: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/11.jpg)
FUNDAMENTAÇÃO TEÓRICA
• Texturas
• Propagação
• Reflexão
ARQUIVOS MTL
#colorCube.mtl
newmtl red
Kd 1 0 0
Ks 0 0 0
Ka 0 0 0• Reflexão
• Ambiente
Ka 0 0 0
illum 1
newmtl green
Kd 0 1 0
Ks 0 0 0
Ka 0 0 0
illum 1
![Page 12: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/12.jpg)
FUNDAMENTAÇÃO TEÓRICA
• EGMR
• Versão 1 – Bertholdi (2004)
• Versão 2 – Froeschlin (2006)
TRABALHOS CORRELATOS
• Versão 2 – Froeschlin (2006)
• Versão 3 – Perondi (2007)
• Aplicativo para controle de ferrovias
• Versão 1 – Schubert (2003)
• Versão 2 – Sardo (2007)
![Page 13: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/13.jpg)
FUNDAMENTAÇÃO TEÓRICA
• Retas
• Sentido e intersecção
• Interpretação de
EGMR Versão 1 - Bertholdi (2004)
• Interpretação de
arquivos txt
• Delphi 7
![Page 14: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/14.jpg)
FUNDAMENTAÇÃO TEÓRICA
• Orientação a objetos
• Semáforos
• informações
EGMR Versão 2 - Froeschlin (2006)
• informações
sobre ruas
![Page 15: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/15.jpg)
FUNDAMENTAÇÃO TEÓRICA
• Reimplementação em Java
• Curvas de Bézier
• Visualização 3D
EGMR Versão 3 - Perondi (2007)
• Visualização 3D
• Imagens no fundo
• Altura das ruas
![Page 16: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/16.jpg)
FUNDAMENTAÇÃO TEÓRICA
• Controle ferrovia real
• Tempo real
• Simulador visual
APLICATIVO PARA CONTROLE DE FERROVIAS Versão 1 - Schubert (2003)
• Simulador visual
• Ferro rama
• PIC16F84A
![Page 17: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/17.jpg)
FUNDAMENTAÇÃO TEÓRICA
• Simulador visual descontinuado
• PIC16F628A
• Aceleração / desaceleração
APLICATIVO PARA CONTROLE DE FERROVIAS Versão 2 - Sardo (2007)
• Aceleração / desaceleração
• Sistema sensores
• Comunicação (ruído)
![Page 18: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/18.jpg)
CONSTRUÇÃO DOS MODELOS VETORIAIS
• 3Ds Max
• Modelagem dos trilhos
• Gerando arquivos OBJ
CONSTUÇÃO DOS MODELOS VETORIAIS
• Gerando arquivos OBJ
• O trem utilizado pelo EMF
![Page 19: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/19.jpg)
• 3Ds Max
• Desenho feito com a
ferramenta line
MODELAGEM DOS TRILHOS
CONSTRUÇÃO DOS MODELOS VETORIAIS
ferramenta line
• Modificação extrude
• Duplicação dos modelos
![Page 20: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/20.jpg)
• Classes utilizadas possuem limitações
• Configuração de parâmetros
GERANDO ARQUIVOS OBJ
CONSTRUÇÃO DOS MODELOS VETORIAIS
![Page 21: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/21.jpg)
• Retirado do site Turbo Squid
http://www.turbosquid.com
O TREM UTILIZADO PELO EMF
CONSTRUÇÃO DOS MODELOS VETORIAIS
![Page 22: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/22.jpg)
DESENVOLVIMENTO
![Page 23: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/23.jpg)
DESENVOLVIMENTO
• Permitir importação de modelos (vetoriais) para o editor (RF)• Disponibilizar um conjunto de modelos com vários tipos de cruzamentos, curvas e retas previamente
REQUISITOS
tipos de cruzamentos, curvas e retas previamente definidas (RF)• Permitir editar a malha ferroviária (RF)• Possuir ambiente 3D para desenho e visualização das ferrovias (RF)• Permitir salvar as ferrovias especificadas (RF)
![Page 24: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/24.jpg)
DESENVOLVIMENTO
• Permitir carregar ferrovias salvas anteriormente (RF)• Permitir a realização de rotação, translação e aproximação da câmera (RF)• Permitir a realização de rotação e translação dos
REQUISITOS
• Permitir a realização de rotação e translação dos modelos vetoriais (RF)• Possuir um método de manipulação de arquivos vetoriais, que serão gerados por softwares como o 3Ds MAX ou Blender (RNF)• Ser implementado na linguagem Java, utilizando a biblioteca JoGL (RNF).
![Page 25: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/25.jpg)
DESENVOLVIMENTO
• Utilização dos diagramas da UML
• Criação dos diagramas:• Casos de Uso
ESPECIFICAÇÃO
• Casos de Uso• Classes• Atividades • Seqüência
![Page 26: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/26.jpg)
DESENVOLVIMENTO
CASOS DE USO
![Page 27: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/27.jpg)
DESENVOLVIMENTO
CLASSES
![Page 28: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/28.jpg)
DESENVOLVIMENTO
ATIVIDADES
![Page 29: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/29.jpg)
DESENVOLVIMENTO
• Salvar o cenário
SEQÜÊNCIA
![Page 30: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/30.jpg)
DESENVOLVIMENTO
• Principais recursos / funções utilizadas:
• Leitura de arquivos OBJ• Seleção
IMPLEMENTAÇÃO
• Seleção• Ajuda
![Page 31: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/31.jpg)
DESENVOLVIMENTO
• Classes especificadas por Andrew Davison
LEITURA DE ARQUIVOS OBJ
//Indica o local onde o arquivo obj está armazenado
String nomeArquivo = “C:\\nomeArquivo.obj”;
//Indica a escala do obj que será utilizado.Para 10 0% usa-se 1
float escala = 1;
//Se true exibe algumas informações sobre o obj na tela
Boolean exibeInformacoesOBJ = false;
//Cria uma nova instância de OBJModel
OBJModel model = new OBJModel(nomeArquivo,escala,gl,exibeInformacoesOBJ) ;
![Page 32: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/32.jpg)
DESENVOLVIMENTO
LEITURA DE ARQUIVOS OBJ
//Isola as transformações para o objeto apenas
gl.glPushMatrix();
//Move o objeto para a posição 10,5,0 (x,y,z)
gl.glTranslatef(10, 5, 0);
//Rotacionar 90º sobre o eixo z//Rotacionar 90º sobre o eixo z
gl.glRotatef(90, 0, 0, 1);
//Define o tamanho do objeto, no caso dobrando o ta manho
gl.glScalef(2, 2, 2);
//Comando para desenha o objeto
getModel().draw(gl);
//Termina a isolação para as transformações de obje to
gl.glPopMatrix();
![Page 33: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/33.jpg)
DESENVOLVIMENTO
• Acesso aos recursos com o mouse• OpenGL não converte clique do mouse• Seleção com base em nomes
• Um nome diferente para cada objeto na tela
SELEÇÃO
• Um nome diferente para cada objeto na tela• Divisão do chão em áreas
• Cálculo para calcular / recuperar o nome
500.500 => x = 0, y = 0510.490 => x = 10, y = -10
500 = 0
+
-
![Page 34: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/34.jpg)
DESENVOLVIMENTO
• Processo ocorre quando o mouse é clicado• Inicialização lista de nomes e buffers• Atribuição nomes• Realização das
SELEÇÃO
//Nome que será atribuído ao objeto
int nome = 1;
//Indica que iniciou o desenho a qual se quer nomear• Realização das buscas
• Resultado é armazenado na variável selectedNameID
//Indica que iniciou o desenho a qual se quer nomear
gl.glPushName(nome);
//Desenha algo, no caso um quadrado
gl.glBegin(GL.GL_QUADS);
gl.glVertex3d(x,y,0);
gl.glVertex3d(x,y+1,0);
gl.glVertex3d(x+1,y+1,0);
gl.glVertex3d(x+1,y,0);
gl.glEnd();
//Indica que o desenho está completo
gl.glPopName();
![Page 35: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/35.jpg)
DESENVOLVIMENTO
• Utilização biblioteca Java Help• Interface e sistema de busca prontos• Arquivos XML
• Principal (referência para outros arquivos XML)
AJUDA
• Localização dosarquivos exibidos
• Localização dosarquivos usados nas buscas
![Page 36: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/36.jpg)
DESENVOLVIMENTO
Componentes:
• Barra de menus
OPERACIONALIDADE
• Barra de menus• Popup menu• Tela principal• Tela de itens• Interface para expansão do cenário• Interface para gerenciamento de itens• Ajuda
![Page 37: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/37.jpg)
DESENVOLVIMENTO
BARRA DE MENUS
• Arquivo• Novo Cenário, Abrir Cenário, Salvar Cenário, Salvar Como, Sair
• Modelos• Gerenciar Modelos
• Visualização• Visualização• Exibir / Ocultar Eixos, Exibir / Ocultar Linhas, Visualizar Caminhos / ligações, Iniciar Caminhamento Trem, Parar Caminhamento Trem
• Cenário• Expandir Cenário
• Ajuda• Itens da Ajuda
![Page 38: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/38.jpg)
DESENVOLVIMENTO
POPUP MENU
• Presente em três telas do EMF • Funções:
• Rotacionar Peças• Excluir Peças• Excluir Peças• Acionar a função de edição de peças
![Page 39: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/39.jpg)
DESENVOLVIMENTO
TELA PRINCIPAL
• Inclusão / exclusão de peças• Mover / rotacionar peças• Visualizar o trem• Mover a câmera• Mover a câmera• Rotacionar a câmera• Grade de apoio
![Page 40: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/40.jpg)
DESENVOLVIMENTO
TELA DE ITENS
• Exibe todos as peças cadastrados
• Funções:
• Selecionar uma peça• Rotacionar peças
![Page 41: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/41.jpg)
DESENVOLVIMENTO
INTERFACE PARA EXPANSÃO DO CENÁRIO
• Aumentar ou diminuir a área útil do cenário
![Page 42: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/42.jpg)
DESENVOLVIMENTO
INTERFACE PARA GERENCIAMENTO DE ITENS
• Cadastrar novas peças• Excluir peças• Editar peças• Altura base• Altura base• Tamanho • Rotação inicial• Rotas de caminhamento
![Page 43: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/43.jpg)
DESENVOLVIMENTO
AJUDA
• Guia de utilização• Realiza buscas
![Page 44: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/44.jpg)
DESENVOLVIMENTO
RESULTADOS E DISCUSSÃO
• Tentativas de eliminar limitações:• Quantidade de posições do cenário
• limitado a mil posições de largura e mil de comprimentocomprimento
• Desempenho• exigência de microcomputador veloz (Processador 2 GHz e memória 1 GB)
![Page 45: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/45.jpg)
CONCLUSÕES
CONCLUSÕES
• Objetivos alcançados:
• Manipular arquivos vetoriais wavefront obj• Área de edição 3D• Área de edição 3D• Alteração na posição da câmera• Rotação e translação das peças
![Page 46: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/46.jpg)
CONCLUSÕES
EXTENSÕES
• a criação de semáforos
• a criação de ruas e o cruzamento das mesmas com as ferrovias
• a criação de controle e monitoramento de trens
• a possibilidade de mover duas ou mais peças ao mesmo tempo
•possibilitar a inserção de mais de um trem e a configuração do local inicial dos mesmos
![Page 47: EDITOR DE MALHAS FERROVIÁRIAS EMF Luiz Ricardo Dias](https://reader031.fdocument.pub/reader031/viewer/2022012103/616a13e911a7b741a34e8fed/html5/thumbnails/47.jpg)
FIM