A visualização de informação CAD via web, por si só ou em conjunto com outra informação georreferenciada, é importante para as áreas de Engenharia, como sejam as de Projecto, Empreitada, Exploração e Manutenção de infra-estruturas. Nestas áreas a informação CAD é rainha – qualquer menção de outros formatos ou, perdendo completamente a cabeça, referir SIG é garantir o epiteto de “o tipinho dos Mapas”… Mas fora de brincadeiras, o valor da informação CAD em Engenharia é obviamente indiscutível, e as ferramentas CAD e SIG são naturalmente complementares, e talvez até sequenciais em muitos fluxos de trabalhos. Mas isso seria material de outros artigos…
O objecto deste artigo é apresentar 2 metodologias para visualizar ficheiros CAD num browser, e como veremos, isto pode ser feito actualmente com e sem downloads de software.
Os ficheiros DWG não dados a visualizações rápidas. Até hoje não vi ainda uma aplicação que rapidamente mostre o conteúdo de um DWG. Se usarmos software Autodesk os recursos do computador que são ocupados apenas para abrir um pequeno DWG são impressionantes, mas as coisas têm vindo a melhorar ultimamente. O visualizador que mais me agradou até hoje é o eDrawings: uma aplicação gratuita, rápida, e eficaz. Surpreendentemente, o próprio MapGuide não publica ficheiros DWG, a não ser que se convertam primeiro para DWF. (se alguém souber o contrário, por favor diga-me!)
Em relação ao problema de visualizar na web ficheiros DWG, foram encontradas 2 soluções, e passam ambas por os converter para DWF. Só depois poderemos usar um controle ActiveX para o Internet Explorer (ou mais recentemente um plugin para Firefox 3.x) para visualizar estes ficheiros, ou recorrer ao serviço gratuito da Autodesk chamado Freewheel. Mas vejamos cada solução em detalhe.
Solução 1 – Controle ActiveX para IE ou plugin Firefox 3.x
Ao instalar software da Autodesk é também instalado um controle ActiveX que lê ficheiros DWF e faz muitas outras coisas, sendo um autêntico mini-programa de CAD. Este controle era incluído no DWF Viewer, um produto gratuito que entretanto foi substituído pelo Design Review. De qualquer forma, muitos dos programas da Autodesk, como o AutoCAD, TrueView, ou o Design Review, instalam também este controle, e por isso muitos dos utilizadores terão já o controle no seu PC, mesmo sem saberem.
Este controle permite incluir este mini-visualizador CAD em aplicações Windows, como o IE, Word, PowerPoint, etc., e isso é muito útil para o nosso objectivo.
Para abrir um ficheiro DWF no IE, basta incluir numa página web o seguinte código HTML:
<OBJECT CLASSID="clsid:A662DA7E-CCB7-4743-B71A-D817F6D575DF"
CODEBASE=http://www.autodesk.com/global/dwfviewer/installer/
DwfViewerSetup.cab#version=7,0,0,928
WIDTH="640" HEIGHT="480">
<PARAM NAME="Src"
VALUE="http://www.autodesk.com/global/dwf/samples/multiple_layouts_large.dwf">
</OBJECT>
O resultado é excelente. A imagem seguinte mostra o resultado…
Caso o PC não tenha ainda o controle instalado, o browser inicia o processo de download e instalação, caso o utilizador permita.
Observando a toolbar podemos ver funções como imprimir, gravar (para DWF ou DWFx), zoom e pan, ver Model e todos os Layouts, controlar Layers, Propriedades, e muitos outros, oferecendo assim um verdadeiro mini-CAD dentro do browser.
Este exemplo pode ser encontrado num dos blogs da Autodesk. Como o código já é um pouco antigo, a versão indicada do controle é também antiga (7.0.0.928), e podemos usar uma mais recente. Para isso localizamos a dll do controle no nosso computador (C:\Program Files\Common Files\Autodesk Shared\DWF Common\AdView.dll), verificamos a sua versão e actualizamos o código (no meu PC a dll tem a versão 9.0.0.96 e vinha incluída no Design Review 2009). Devemos escolher uma versão que seja a mais comum na empresa onde vamos implementar este sistema de visualização, para evitar que os utilizadores tenham de instalar software adicional.
Uma última nota – se incluirmos o controle ActiveX numa página web, sem indicar um ficheiro para abrir, então o botão de Abrir ficheiro fica activo e podemos escolher qualquer ficheiro que tenhamos no disco ou numa partilha. Mas é estranho que ao indicarmos um ficheiro no código essa opção fique inactivada…
Vantagens desta solução:
- visualizador muito completo no browser
- permite abrir qualquer ficheiro DWF acessível ao PC, quer em disco, partilha, ou web
- permite imprimir, gravar como DWF/DWFx, e capturar imagens
- interface muito familiar para quem usa software Autodesk
Desvantagens:
- exige IE
- exige que já exista software Autodesk instalado, ou que se instale o controle ActiveX
Links de interesse:
- Install & Embed Viewers & DWF Files
- How do I embed a DWF file in an HTML page
- DWFs on the Web: Not just for Internet Explorer Anymore
Solução 2 – Serviço Freewheel da Autodesk
A Autodesk lançou um serviço online (já em 2006!) que permite fazer upload de um ficheiro DWF e visualizá-lo num browser sem qualquer software adicional. Pode até visualizar-se num PDA. Se a página for configurada para abrir um ficheiro pré-definido, então o ficheiro tem de estar num url acessível ao servidor da Autodesk e é preciso cuidado com firewalls ou proxies restritivos. Mas se for o utilizador a indicar o ficheiro que pretende visualizar, então o proxy/firewall não deverá interferir.
Algumas empresas poderão não estar dispostas a colocar os seus desenhos DWF num website público, embora pessoalmente essa questão me pareça pouco importante – até porque seria necessário conhecer o url exacto do ficheiro para o poder obter. Por outro lado, (confesso já que não li os termos de utilização do serviço com atenção) fico com a sensação de que também aqui se podem levantar questões de confidencialidade – o que sucede aos ficheiros passados para o servidor da Autodesk? Quem os pode ver?… Se alguém quiser esclarecer esta questão seria óptimo.
O código HTML a incluir na página web é muito simples:
<iframe scrolling="no" width="800" height="600"
src="http://freewheel.autodesk.com/dwf.aspx?path=http://www.pinnacle-pizza.com/Hotel5.dwf">
</iframe>
A página ficaria com este aspecto:
Não há software a instalar no nosso PC, e a visualização é excelente. Há menos controles disponíveis na toolbar, mas mesmo assim podemos fazer zoom e pan, e navegar pelo Model e Layouts do ficheiro. Através do menu File, podemos ainda abrir um ficheiro diferente (que é enviado para o servidor da Autodesk), enviar por email, e imprimir.
Como funciona? O servidor Freewheel recebe os pedidos do nosso browser para visualizar determinada parte do ficheiro DWF e devolve uma imagem dessa visualização, e assim por diante. Ao fazer zoom sobre, por exemplo, a área da legenda, essa área é devolvida ao browser como uma imagem que é mostrada ao utilizador, simulando o trabalho com o ficheiro.
O serviço Freewheel disponibiliza uma pequena API que permite efectuar pedidos específicos através do endereço (url): que ficheiro queremos, que área, que zoom, etc. E é isso que enviamos por email quando usamos essa opção no browser – um url que permite ao destinatário ver o desenho exactamente na posição em que o estamos a ver.
Mas há mais… o Autodesk Labs (equivalente ao Google Labs, onde se experimentam tecnologias até serem promovidas a produtos “a sério”) oferece uma versão melhorada do Freewheel. A capacidade que mais me impressionou foi a de podermos criar um repositório de ficheiros DWF que podemos manter no servidor da Autodesk e reutilizar ou partilhar com colegas de trabalho. Mais: é possível até partilhar uma sessão de visualização em que um dos utilizadores manipula o desenho e os restantes podem observar, trocar mensagens, e anotar o desenho. Quando testei com o Chrome o tamanho do texto e desenhos estava demasiado grande, e não sei quanto tempo os ficheiros ficam disponíveis… mas estas capacidades de cooperação são impressionantes.
Vantagens desta solução:
- não é necessário software adicional
- interface muito simples, com zooms e pan
- acesso ao model e layouts do DWF
- o utilizador pode carregar qualquer ficheiro DWF para visualizar
- qualquer browser e até PDAs podem visualizar ficheiros DWF
- pode-se imprimir
- pode-se enviar um email com url para visualizar o ficheiro DWF
- pode-se fazer uma sessão de visualização em conjunto
- pode-se a partir de links fazer thumbnails usando apenas Javascript
Desvantagens:
- menos funcionalidade CAD
- os ficheiros a visualizar são transmitidos para o servidor da Autodesk, o que pode demorar
- o desempenho depende da nossa ligação à Internet e da capacidade de resposta do servidor da Autodesk
- os ficheiros são passados para o servidor da Autodesk
- Internet é obrigatória
Links de interesse:
- What is Autodesk Freewheel?
- 3D/2D ShareNow Add-in for AutoCAD, Inventor, Revit, and Design Review
- Documentation do Freewheel no site Labs da Autodesk
Conclusão
Estas 2 abordagens permitem resolver a questão de visualizar ficheiros CAD online, embora ainda de forma isolada e obrigando a converter para o formato DWF, mas é um primeiro passo para podermos ter a informação CAD integrada numa abordagem web. Claro que a partir do momento em que aceitamos a obrigatoriedade de converter os nossos ficheiros CAD para DWF abrimos a porta a usar o MapGuide para publicar esses ficheiros em serviços WMS, serviços esses que podem ser incluídos em aplicações webGIS… e isso já é outra estória.
Cara amigo, gostei muito do post, porem não consigo o plugin para o firefox, que pudesse me ajudar ficaria muito grato, pois terá muita serventia para mim… grande abraço… parabéns pelo post…
Caro Rafael,
O plugin que refiro no artigo pode ser encontrado aqui:
http://labs.autodesk.com/utilities/firefox_adr/
Os plugins ActiveX só são suportados pelo IE… mas pode tentar usar uma das extensões para firefox que fazem uso do IE dentro do FF, como o IETab. Mas penso que só funcionam em Windows, e onde o IE esteja instalado.
Caso vá por esta via, aconselho-o a experimentar outro plugin ActiveX para visualizar ficheiros DWG: eDrawings Viewer.
Pode usar este código:
<OBJECT ID="EV" classid="clsid:22945A69-1191-4DCF-9E6F-409BDE94D101"
codebase="http://www.solidworks.com/plugins/edrawings/download.cfm? Release=REL#version=8,3,0,117"
width="100%" height="99%" >
<PARAM name="FullUI" value="1"/>
<PARAM Name="Filename" value="url para ficheiro.dwg">
<param name="EnableFeatures" value="24"/>
</OBJECT>
Outra opção que surgiu desde a publicação deste artigo é o Project Butterfly que entretanto foi promovido a produto – AutoCAD WS, que é um visualizador e *editor* web da Autodesk para trabalhar com ficheiros DWG online, e em equipa! Muito interessante!
Boa sorte.
Duarte
Olá, muito bom o post e ficou bem claro que as aplicações se limitam a dwf, sendo necessário converter o dwg.
Eu precisava desta conversão automática e resolveria meu problema obter um conversor para linux que faria o serviço por linha de comando. Você conhece algum?
Mais uma vez, parabéns pelo post completo e bem claro!
Abraços.
Olá Caio, e obrigado.
Mas não é obrigatório converter para DWF. Temos outras opções. Podemos usar um plugin que visualiza DWGs no browser, mas penso que apenas em Windows. Deixei aqui um comentário que refere isso mesmo, usando o EDrawings.
Para Linux, é questão de encontrar um CAD que exporte para DWF. Penso que a Bricsys tem um produto para Linux que faz esta conversão. Penso que é pago, mas pode ser que outros produtos façam o mesmo e sejam gratuitos…
Abraço,
Duarte
Ao adicionar um ficheiro dwg no arcmap 10.2, este aparece vazio na tabela de atributos ou seja vazio sem linha, pontos, poligonos.
o que devo fazer
Obrigado
Francisco
Francisco, desculpa a demora na resposta, mas tenho andado distraído do blog…
Cada versão do arcmap suporta uma dada versão de desenhos dwg. Como o arcmap 10.2 já tem uma certa velhice, não deve suportar o dwg, que deve ter sido criado por uma versão do autocad mais recente.
A solução pode passar por converter esses dwg para uma versão mais antiga, como 2010 por exemplo. A própria autodesk tem um conversor gratuito que faz estas conversões:
https://knowledge.autodesk.com/pt-br/support/dwg-trueview/troubleshooting/caas/sfdcarticles/sfdcarticles/PTB/Where-can-I-get-DWG-Trueconvert.html
Existe outro da ODA, o Teigha Converter:
https://www.opendesign.com/guestfiles/TeighaFileConverter
Boa sorte.
Duarte