Após o desenvolvimento do programa JAVA capaz de receber um ficheiro STEP simples ou com- posto e conseguir interpretar toda a sua informação de forma a recriar a estrutura do produto, bem como toda a informação necessária à sua representação 3D, foi necessário criar uma interface simples por forma a testar o trabalho desenvolvido.
Esta interface, desenvolvida em AngularJS, trata-se de uma interface simples onde o utilizar tem uma área para upload de ficheiros STEP e onde é possível visualizar a estrutura do produto, bem como uma opção para a sua visualização 3D.
5.5.1 Viewer 3D
Como foi referido anteriormente, a interface do sistema desenvolvido tem associada um viewer 3D, que recebe como input os ficheiros index.json e os respetivos shell_idXXX.json com toda a informação para a representação 3D dos componentes. Para o desenvolvimento deste viewer foi utilizado um projeto openSource denominado cad.js1, de onde foi reaproveitado um viewer 3D, que posteriormente foi adaptado e integrado no sistema desenvolvido.
Figure 5.28: Viewer utilizado.
Chapter 6
Resultados e Trabalho Futuro
Neste capítulo apresenta-se a fase de testes e os resultados obtidos após a criação do sistema pre- tendido, referindo todos os objetivos atingidos e pontos que poderão ser melhorados futuramente.
6.1
Satisfação dos Objetivos
Tendo em conta os objetivos iniciais da dissertação, os resultados obtidos foram satisfatórios, uma vez que estes foram cumpridos na sua generalidade. Não obstante, a plataforma desenvolvida apresenta ainda uma grande perspetiva de progresso, podendo vir a ser melhorada de forma a potencializar ainda mais as suas vantagens para a indústria.
Para a concretização dos objetivos definidos no início desta dissertação, foram definidas pe- quenas etapas que levaram à concretização dos mesmos. O primeiro destes objetivos era a criação de uma plataforma web capaz de extrair informação sobre a estrutura do produto representada num ficheiros STEP de acordo com os vários formatos suportados pela norma AP242. Para a sua concretização, foram realizadas as seguintes três etapas:
1 - Perceber as diferentes formas de representação de um ficheiro STEP
Durante o desenvolvimento do projeto foram analisadas as diferentes formas de representação de um ficheiro STEP, as quais foram referidas no capítulo 4 deste documento. Desta forma, este foi um objetivo conseguido na sua plenitude.
2 - Importar ficheiros STEP nas três diferentes formas de representação
Outro ponto importante era conseguir obter uma plataforma que conseguisse lidar com todas as diferentes formas de representação dos ficheiros STEP e, dessa forma, conseguir importar qualquer formato destes ficheiros para que posteriormente pudessem ser analisados e tratados pelo software criado. Este ponto também foi atingido com sucesso, pois foi possível obter uma plataforma com as capacidades mencionadas.
Resultados e Trabalho Futuro
3 - Visualizar a árvore da estrutura do produto de qualquer Ficheiro STEP
Após a importação de um ficheiro STEP, de qualquer tipo, foi necessário conseguir obter a es- trutura do produto através da informação contida nos ficheiros STEP. Para tal, foi fundamental todo o trabalho de análise da estrutura e da organização de um ficheiro STEP, tendo sido o obje- tivo atingido - o programa final é capaz de extrair a estrutura de montagem de qualquer produto representado no formato STEP, tanto para ficheiros simples como para ficheiros múltiplos e mais complexos.
Desta forma, o primeiro objetivo foi comprido na sua totalidade, conseguido a visualização da estrutura de um produto representada num ficheiro STEP.
Por fim, outro dos objetivos iniciais era o desenvolvimento de um viewer que permitisse a visualização web dos componentes e da sua estrutura de montagem, viewer este que pudesse ser integrado numa aplicação existente e que funcionasse de forma rápida e fluída, além de ser capaz de suportar ficheiros de grandes dimensões. Para a concretização deste objetivo também foi necessário a concretização das seguintes etapas:
1 - Integração do Viewer cad.js no Sistema
Nesta etapa pretendia-se a criação de um viewer 3D que funcionasse de forma simples e fluída e que fosse capaz de representar qualquer produto no formato STEP. Este foi um objetivo que se previu, desde o início da realização deste projeto, ser de difícil concretização, na medida em que seria impraticável criar um viewer de novo no espaço de tempo disponível para a realização da dissertação. Por este motivo, optou-se pela utilização de um viewer 3D open source. Após a escolha do viewer, este foi integrado na plataforma web criada, redirecionando o foco do trabalho para a extração de toda a informação necessária para o funcionamento do viewer.
2 - Perceber a constituição e estrutura dos ficheiros JSON que o viewer consome Após a integração do viewer na plataforma foi necessário analisar ao pormenor os ficheiros que o viewer consome, de forma a estruturar a informação retirada dos ficheiros STEP em ficheiros JSON compatíveis com o viewer que foi integrado na plataforma criada. Todo este processo foi descrito no capítulo 5 e, no final, foi possível perceber com clareza todos os dados necessários para que o viewer funcionasse de forma eficaz.
3 - Triangulação de polígonos
Para que fosse possível a representação do produto em 3D foi necessário conseguir extrair toda a informação geométrica necessária. Com essa informação foi necessário triangular todas as super- fícies de um produto em polígonos simples, de forma a transmitir essa informação ao viewer 3D
Resultados e Trabalho Futuro
e, para tal, foi usado o algoritmo descrito no capítulo 4, que desta forma permitiu a execução de mais um dos objetivos.
4 - Extrair informação necessária para a construção dos ficheiros JSON
Após a perceção de todos os elementos e dados necessários para a representação 3D do produto foi necessário extrair toda esta informação dos ficheiros STEP, contudo esta informação é relativa- mente complexa e não se encontra disponível de forma direta nos ficheiros STEP. Após o trabalho desenvolvido neste sentido, foi possível garantir a extração correta da informação geométrica dos elementos mais comuns na representação de um produto. Contudo, não foi possível abordar algu- mas superfícies mais complexas, como por exemplo, superfícies toroidais e superfícies helicoidais, pelo que a sua representação 3D não foi possível.
5 - Visualização dos produtos no viewer 3D
Quanto à visualização 3D dos produtos, após atingir todos os objetivos acima mencionados, este foi um ponto relativamente fácil de execução. No entanto, a representação 3D funciona de forma limitada para superfícies especiais, como superfícies toroidais e superfícies helicoidais.
Assim, foram atingidos na generalidade todos os objetivos propostos inicialmente, conseguindo- se a visualização da estrutura de um produto e, por fim, a visualização 3D dos seus componentes, mesmo que de forma limitada para alguns tipos de superfícies mais complexas.