Webinar i3geo julho_2013

Embed Size (px)

Citation preview

1. Webinar Introduo ao Uso do Software i3Geo 2. Feito comEdmar Moretti [email protected] [email protected]://edmarmoretti.blogspot.com.br/ http://www.edmarmoretti.com.br/ 3. GPL O i3Geo software livre, por isso voc tem: A liberdade de executar o programa, para qualquer propsito (liberdade n 0) A liberdade de estudar como o programa funciona e adapt-lo para as suas necessidades (liberdade n 1). A liberdade de redistribuir cpias de modo que voc possa ajudar ao seu prximo (liberdade n 2). A liberdade de aperfeioar o programa, e liberar os seus aperfeioamentos, de modo que toda a comunidade se beneficie deles (liberdade n 3).http://pt.wikipedia.org/wiki/Richard_Matthew_Stallman 4. O que garante essas liberdades algo fundamental: O acesso ao cdigo-fonte (veremos mais detalhes sobre isso no final) de forma legvel por favor 5. Um pouco de histria O ano de nascimento do i3Geo pode ser marcado como 2004, apesar de no ser utilizado esse nome desde o incio Foi criado pelo Ministrio do Meio Ambiente e publicado como GPL A motivao principal foi a implantao do Sistema Nacional de Informao sobre Meio Ambiente, o SINIMA Foi um dos primeiros softwares a integrar o Portal do Software Pblico J no incio utilizava o Mapserver e PHP 6. O que ? i3GEO significa: Interface Integrada para Internet (3is) de Ferramentas de Geoprocessamento Como o nome diz, a idia integrar funcionalidades existentes em outros softwares livres em um ambiente webNo se quer inventar a rodaMas se no tiver a genteinventahttps://www.facebook.com/NessaInfinitaHighway 7. O que no ? No um banco de dados com vrias camadas prontas para uso No um software em C ou algo assim que voc instala no servidor. Para isso existe o Mapserver Pode ser utilizado como um software desktop, mas existem coisas melhores para isso (gvSIG, QGIS...) No algo que ir resolver todos os seus problemas sem um pouco de investimento No apenas uma API. Para isso existe o Openlayers. Apesar disso, voc pode customizar o softwarehttp://openclipart.org 8. Pra que serve? Colocar seus dados na web em mapas interativosCriar mapas para atender usurios especficos sem ter de programar muitoOrganizar seus dados em um catlogoGerar servios para acesso aos dadosCompartilhar dados e cdigoCriar mapas que vo alm do pan e zoomAjudar na implantao de IDEs 9. Tecnologia Os mapas funcionam com base em cdigo HTML e Javascript no navegadorO processamento no servidor Web utiliza PHPNo h reload de pgina. Tudo feito via AjaxA mistura de PHP e HTML muito raraAs funcionalidades do lado navegador so carregadas sob demanda (script tag), visando o menor trfego de dados possvelhttp://thenextweb.com/2009/04/17/eric-a-meyer-javascript-will-save-us-all/ 10. Javascript O i3Geo possu muito cdigo prprio mas para o controle dos mapas utiliza-se: Openlayers Google Maps e Google EarthEssas bibliotecas so responsveis por: Montar o mapa no navegador WebControlar a interao com o usurioControlar a visibilidade e a ordem das camadas no mapaEstruturar os tiles e realizar as requisies corretas ao servidor 11. Exemplo com OpenLayers 12. Exemplo com GoogleMaps 13. Exemplo com GoogleEarth 14. Componentes Javascript Alm do OL e GM a principal biblioteca utilizada a YUI do Yahoo! Com a YUI so construdos os componentes da interface como menus, rvores, janelas flutuantes, etc. Vrias outras bibliotecas so complementares: Eudock para a barra de botesCCC2 para grficosProj4js para manipulao de projeesWicket para tratamento de WKTSimile para linhas de tempoEtc, etc... 15. Exemplos YUI 16. PHP O processamento de dados no servidor web feito com a linguagem PHP Vrias bibliotecas escritas em PHP complementam as funes que o i3Geo precisa Essas bibliotecas fazem coisas como gerar pdf, ler e escrever arquivos CSV, manipular imagens, manipular arquivos KML, etc. O PHP utilizado principalmente para realizar operaes no banco de dados de administrao do i3Geo e no mapa que o usurio est usando 17. Mapserver O software livre Mapserver roda no servidor e o corao do i3Geo utilizado como mdulo do PHP - tambm chamado de PHP-Mapscript o PHP-Mapscript que faz o desenho dos mapas vistos no navegador web As camadas utilizadas nos mapas so configuradas utilizando-se arquivos compatveis com o Mapserver (mapfiles)http://mapserver.org/ 18. Discutindo a relao Toda vez que o usurio acessa um mapa o i3Geo cria uma rea temporria no servidor Web Nessa rea temporria so criados arquivos do tipo Mapfile que valem apenas para o mapa atual Esses arquivos contm todos os parmetros necessrios para a construo do mapa, sendo alterado conforme o usurio interage com o navegador Por meio do PHP-Mapscript esse mapfile fsico alterado quando alguma operao realizada Por exemplo, a funo de criao de buffer cria um shapefile temporrio que adicionado ao mapa e ento mostrado no navegador para o usurio 19. Discutindo a relao Mapfiles so utilizados para iniciar o i3Geo Ao iniciar um mapa, o i3Geo utiliza arquivos de inicializao que tambm so mapfiles Esses arquivos montam o mapa inicial e o administrador do i3Geo pode usar diferentes arquivos conforme desejar O usurio final pode tambm empregar parmetros de inicializao que modificam o comportamento do mapa defaultMapfiles so utilizados para configurar qualquer outra camada que o i3Geo utiliza Os arquivos mapfile criados formam um depsito de mapfiles Cada mapfile nesse depsito como uma camada que ser adicionada ao mapa A organizao desse depsito compe o catlogo de camadas do i3Geo 20. Exemplo de um mapfile 21. Exemplo de parte do editor de mapfiles 22. Em um mapa possvel a incluso de camadas diretamente, sem passar pelo servidor e de forma independente do Mapserver Isso se faz utilizando-se a API que est disponvel no mapa (GM ou OL) Por exemplo, possvel adicionar camadas utilizando-se os vrios tipos de layers suportados pelo OpenLayers Nesses casos, as camadas so manipuladas diretamente em Javascript e no so processadas via PHP-Mapscript 23. Exemplos de interfacesUm dos parmetros para iniciar um mapa a interface que ser utilizada Interfaces so na prtica arquivos HTML ou PHP+HTML que contm parmetros de configurao do mapa Esses parmetros definem entre outras coisas: A API que ser utilizada (Openlayers ou Google)Extenso geogrfica do mapaCamadas ligadas e desligadasFuncionalidades permitidas (quais botes, quais itens de menu, etc)Disposio dos elementos do mapaComportamento das ferramentasEventos (clicar no mapa por exemplo) 24. Openlayers com OSM no modo aquarela 25. GoogleMaps com estilo noturno 26. Mdulo de anlise de dados estatsticos 27. Interface simplificada para incluso em outras pginas 28. Exemplo de incluso em pginas 29. Opes em local fixo 30. Menu do tipo sanfona 31. Camadas em um menu lateral 32. FuncionalidadesNavegaoSimbologiaAtributosAnlise 33. NavegaoSo as ferramentas que permitem modificar a extenso geogrfica do mapaPodemos classificar essas operaes em dois tipos: Interao grfica: quando o usurio utiliza algum dispositivo de apontamento (mouse por exemplo) para interagir com o mapa Interao por atributos: quando o usurio precisa digitar algo para que a operao seja executada 34. Interao grficaPan tocando a telaPan usando botesPan usando as teclas de direoZoom tocando a tela (inclusive movimento de pina)Zoom usando a roda do mouseZoom desenhando um box na telaZoom manipulando o boto mvel de escala 35. Interao por atributosAlterao do valor da escala numrica Localizao de coordenadas de um ponto (o formulrio que mostra as coordenadas do mouse o mesmo utilizado nessa opo)Zoom para um elemento do mapa mostrado na tabela de atributosZoom para um temaZoom para uma extenso geogrficaZoom para um lugar 36. Navegao integrada Algumas ferramentas operam de forma integrada com as operaes de navegaoExemplo 37. Navegao integradaCom a navegao integrada com o Google Maps possvel traar rotas. O resultado convertido em pontos e adicionado como uma nova camada ao mapa 38. LegendaA legenda do mapa mostrada de diversas formas: Na rvore de camadasEm uma janela flutuanteEm uma guia fixa 39. Classes A ferramenta legenda permite alterar a classificao e a simbologia original, definida pelo administrador do i3Geo Para alterar a classificao possvel utilizar tcnicas automticas para o clculo dos intervalos ou definir os valores manualmente 40. Exemplo de alterao da classificao 41. Simbologia A ferramenta legenda permite ainda a alterao da simbologia utilizada nas classes Ao clicar em um smbolo o editor aberto com uma srie de opes 42. AtributosA tabela de atributos alfanumricos relacionada cada camada utilizada em diferentes situaes Para a escolha de valores que so parmetros em determinadas operaesPara incluir textos no mapaPara localizao 43. IdentificaoIdentificar corresponde ao evento clicar no mapa atrelado busca pelos registros existentes nas tabelas de atributos No i3Geo existem duas formas de fazer isso: Basta clicar no mapa em qualquer momento para exibir um balo de informaesEscolhe-se a opo identifica e depois feito o clique sobre o mapa 44. Balo de identificaoAo configurar uma camada o administrador informa quais as colunas sero utilizadas na operao de identificao Quando o usurio clica no mapa essas camadas so pesquisadas e o resultado mostrado no mapa 45. Identificao completa A ferramenta identifica abre uma janela sobre o mapa com vrias opes: Mostrar os valores encontrados para um ou para todos os temas do mapa, mesmo os que no esto ligados 46. Identificao completaCriar um buffer no ponto clicado 47. Identificao completaBuscar dados no mesmo ponto clicado em sistemas de busca existentes na internet 48. Incluso de textos A incluso de textos pode ser feita das seguintes formas: O usurio define o texto, suas propriedades e clica em um ponto no mapa O usurio define as propriedades e a fonte dos dados (coluna na tabela de atributos) e clica no mapa O usurio define a fonte dos dados e suas propriedades mas o posicionamento feito de forma automtica 49. Exemplo de textos inseridos automaticamente 50. Visualizao da tabela de atributosA ferramenta tabela mostra todos os registros de uma camada 51. Visualizao da tabela de atributos Os registros podem ser marcados na tabela e marcados no mapa. Essa seleo pode gerar uma nova camada, independente da original 52. Visualizao da tabela de atributos Os registros marcados podem ser sumarizados ou pode-se criar um grfico para representao dos valores 53. Visualizao da tabela de atributosOutras opes incluem Paginar a lista de registros Vincular a listagem ao mapa, alterando-a conforme feita a navegaoRemover linhas da listagemRemover colunasOrdenar por coluna Mostrar na listagem o smbolo da classe em que se enquadra o registro Gerar um relatrio em HTML ou CSV Abrir vrias tabelas de atributos para permitir a pesquisa integrada entre elas 54. Anlise As operaes de anlise de dados espaciais no so comuns em mapas interativos na web Isso se deve ao volume de processamento, que pode sobrecarregar o servidor O i3Geo disponibiliza algumas ferramentas de anlise que operam de forma a minimizar esse risco A seguir so mostrados alguns exemplos desses processos 55. Criao de Grades As grades podem ser retangulares, hexagonais ou pontuais Servem para gerar amostras ou agregaes de dados 56. Exemplo de uma grade hexagonal sobreposta a um mapa de localidades 57. Exemplo de uso da ferramenta de clculo de nmero de pontos em polgono e gerao de uma legenda em cores 58. Mapa de calor calculado graas a integrao entre o i3Geo e o R 59. Buffer 60. Seleo de elementos de um tema com base em outro 61. Grfico de linha do tempo 62. Clculos entre geometrias 63. Clculo de distncias 64. Clculo de rea 65. Outras operaes de anlise incluem: Clculo de distncia entre elementos de uma ou mais camadas Cruzamento entre uma camada de pontos e vrias camadas poligonais ou raster Centro mdio de uma distribuio de pontos Centride Eliminao de bordas entre polgonos de mesmo atributo Triangulao Seleo por atributos Representao grfica (barras, linhas, pizzas, correlao, etc.) Grfico de perfis Incluso de grficos no mapa (com base nos atributos de cada elemento do mapa) 66. Catlogo de temas As camadas configuradas para uso no i3Geo podem ser organizadas em um catlogo de temas O catlogo composto de menus, grupos e subgrupos Cada mapfile registrado em um banco de dados de administrao, passando a ser chamado de tema. Temas recebem nomes e outros parmetros Uma vez registrados, os temas podem ser inseridos no catlogo 67. Telas do catlogo de temas 68. Usos mltiplos do catlogo de temas O catlogo utilizado em diferentes aplicativos adicionais do i3Geo para mostrar a lista de camadas autorizadas em determinado contexto Download de dados Acesso via WMS Acesso via KML Acesso via RSS 69. Exemplo de uso do catlogo em outros aplicativos 70. Saiba mais Como parte do Portal do Software Pblico Brasileiro o i3Geo conta com um espao de colaborao Ao se inscrever no PSPB o usurio pode se inscrever como membro da comunidade Os membros tem acesso pgina do i3Geo no Portal Frum Wikicom a documentao Lista de instituies usurias Orientaes para download e instalao 71. Pgina inicial do PSPB 72. Comunidade i3Geo 73. Parceria gvSIG O gvSIG um software livre para geoprocessamento uma soluo completa para uso em computadores locaisO i3Geo possu algumas formas de integrao com o gvSIG Em funo dessa integrao, foi estabelecida uma parceria entre os dois projetos Com isso o i3Geo ganhou maior visibilidade internacional e foram criadas listas de discusso em Espanhol e Ingls 74. i3Geo no site do gvSIG 75. Espao de colaborao Como software livre, a qualidade do i3Geo depende da participao das pessoas Essa participao se d de diferentes formas No que se refere ao desenvolvimento de cdigo, o i3Geo conta com um espao colaborativo Nesse espao o usurio pode apresentar novas demandas e relatar erros no programa Os desenvolvedores que quiserem colaborar podem usar o sistema de versionamento de cdigo 76. TRAC 77. Timeline 78. Roadmap 79. Tickets 80. Ohloh 81. Twitter 82. http://i3geo.com.br/ http://www.gvsig.org/web/home/projects /i3Geo http://www.softwarepublico.gov.br/ http://svn.softwarepublico.gov.br/svn/i3 geo/i3geo http://devel.gvsig.org/svn/i3geo/ http://svn.softwarepublico.gov.br/trac/i3 geo/wiki https://twitter.com/i3geo