Uma aplicação utilizandoGeotools para manipulação  de dados geográficos     Gustavo Matos de Mello     Paulo Collares More...
Sumário   O que é o Geotools?   Shapefiles   PostGIS   JAI   Exemplo de implementação
Objetivos   Desenvolver em software desktop GIS   Aplicar os conhecimentos adquiridos em programação   Mesclar esses co...
O que é o Geotools?   Biblioteca Java   Manipulação de dados para um SIG   James Macgill   Código livre   Padrões int...
Shapefiles   Formato de armazenamento digital para dados    georreferenciados   ESRI em 1998   Pontos, linhas, polígono...
Shapefiles
PostGIS   Suporte para processamento e armazenamento de dados    geográficos ao banco PostgreSQL
Geração de scripts SQL para cargade dados presentes nos Shapefiles      C:PostgresPlus8.3binshp2pgsql -s [SRID] [caminho d...
Geração de scripts SQL para cargade dados presentes nos Shapefiles
JAI (Java Advanced Imaging)   Ferramenta para processamento de imagens
Exemplo de implementação
Exemplo de implementaçãoJMapFrame   JMapFrame      Janela Swing para exibir um mapa      Disponível a partir do Geotool...
Exemplo de implementaçãoMapContex   MapContex     Interface responsável por armazenar informações sobre a      exibição ...
Exemplo de implementaçãoFeatureSource   FeatureSource      Referencia um shapefile ou uma tabela do banco de dados     ...
Exemplo de implementaçãoImportação de dados   Importando de um shapefile   File url= new File(“C:shapefilesbr_ufBR_UF.shp...
Exemplo de implementaçãoImportação de dados   Importando de um banco de dadosMap params = new HashMap();params.put("dbtyp...
Exemplo de implementaçãoImportação de dados   Importando de um banco de dados
Exemplo de implementaçãoEstilos   Styles        Indicam como um dado geográfico deve ser mostrado        Cores para as ...
Exemplo de implementaçãoEstilos   Consulta do CQL    StyleBuilder sb = new StyleBuilder();    Style style = sb.createStyl...
Conclusão   Aplicativo desenvolvido atinge os objetivos para o qual    foi projetado   Os conhecimentos adquiridos serão...
Projetos futuros   Implantação de funcionalidades mais sofisticadas na    área de geoprocessamento       Cadastramento d...
Upcoming SlideShare
Loading in …5
×

Utilizando GeoTools para Manipulação de Dados Geográficos

695 views

Published on

A partir da necessidade de controle de dados georreferenciados construir-se-á um aplicativo para atender as funcionalidades de um sistema SIG para Java desktop, ou seja, um aplicativo para leitura e manipulação de dados geográficos. Será possível o acesso a shapefiles ou a bancos de dados, pois o aplicativo oferece essas duas funcionalidades. O aplicativo desenvolvido disponibiliza um conjunto de ferramentas que auxilia na manipulação dos mapas. De acordo com os objetivos do atual projeto, conclui-se que o aplicativo será de grande utilidade na manipulação de dados geográficos.

Published in: Education
  • Be the first to comment

  • Be the first to like this

Utilizando GeoTools para Manipulação de Dados Geográficos

  1. 1. Uma aplicação utilizandoGeotools para manipulação de dados geográficos Gustavo Matos de Mello Paulo Collares Moreira Neto
  2. 2. Sumário O que é o Geotools? Shapefiles PostGIS JAI Exemplo de implementação
  3. 3. Objetivos Desenvolver em software desktop GIS Aplicar os conhecimentos adquiridos em programação Mesclar esses conhecimentos em um assunto atual
  4. 4. O que é o Geotools? Biblioteca Java Manipulação de dados para um SIG James Macgill Código livre Padrões internacionais (OGC)
  5. 5. Shapefiles Formato de armazenamento digital para dados georreferenciados ESRI em 1998 Pontos, linhas, polígonos abertos e polígonos fechados
  6. 6. Shapefiles
  7. 7. PostGIS Suporte para processamento e armazenamento de dados geográficos ao banco PostgreSQL
  8. 8. Geração de scripts SQL para cargade dados presentes nos Shapefiles C:PostgresPlus8.3binshp2pgsql -s [SRID] [caminho do shapefile] [nome da tabela a ser criada] > [nome do arquivo SQL]
  9. 9. Geração de scripts SQL para cargade dados presentes nos Shapefiles
  10. 10. JAI (Java Advanced Imaging) Ferramenta para processamento de imagens
  11. 11. Exemplo de implementação
  12. 12. Exemplo de implementaçãoJMapFrame JMapFrame  Janela Swing para exibir um mapa  Disponível a partir do Geotools 2.6 JMapFrame mapFrame = new JMapFrame(MapContext map); mapFrame.setTitle(“Olá Mundo”); mapFrame.enableTool(JMapFrame.Tool.ZOOM, JMapFrame.Tool.PAN,JMapFrame.Tool.RESET); mapFrame.enableLayerTable(true); mapFrame.enableStatusBar(true);
  13. 13. Exemplo de implementaçãoMapContex MapContex  Interface responsável por armazenar informações sobre a exibição de um mapa  Baseado nas especificações do OGC (Open Geospatial Consortium) MapContext map = new DefaultMapContext(); map.addLayer(FeatureSource featureSource, Style style); ou map.addLayer(FeatureSource featureSource, null);
  14. 14. Exemplo de implementaçãoFeatureSource FeatureSource  Referencia um shapefile ou uma tabela do banco de dados  Fontes distintas são manipuladas de forma idêntica FeatureSource featureSource = null;
  15. 15. Exemplo de implementaçãoImportação de dados Importando de um shapefile File url= new File(“C:shapefilesbr_ufBR_UF.shp”);FileDataStore store=FileDataStoreFinder.getDataStore(url); featureSource = store.getFeatureSource(); map.addLayer(featureSource, null);
  16. 16. Exemplo de implementaçãoImportação de dados Importando de um banco de dadosMap params = new HashMap();params.put("dbtype", "PostGIS");params.put("host","localhost" );params.put("port", new Integer(5432));params.put("database", "mapas");params.put("user", "root");params.put("passwd", "12345678");DataStore store = DataStoreFinder.getDataStore(params);featureSource = store.getFeatureSource(“mundo”);map.addLayer(featureSource, null);
  17. 17. Exemplo de implementaçãoImportação de dados Importando de um banco de dados
  18. 18. Exemplo de implementaçãoEstilos Styles  Indicam como um dado geográfico deve ser mostrado  Cores para as linhas, fundos e textos do mapa... Consultas do CQL  Filtra os dados para alterar os estilos  Consultas simples CQL.toFilter("SIGLA Like SE"); CQL.toFilter("SIGLA Like NE"); CQL.toFilter("SIGLA Like CO"); CQL.toFilter("SIGLA Like NO"); CQL.toFilter("SIGLA Like SU");
  19. 19. Exemplo de implementaçãoEstilos Consulta do CQL StyleBuilder sb = new StyleBuilder(); Style style = sb.createStyle(); PolygonSymbolizer symbolizer = sb.createPolygonSymbolizer( Color.LIGHT_GREY, Color.BLACK, 1); Rule rule = sb.createRule(new Symbolizer[]{symbolizer}); Filter filtro = CQL.toFilter(("SIGLA Like SE"); rule.setFilter(filtro); FeatureTypeStyle fts = sb.createFeatureTypeStyle(null, rule); style.addFeatureTypeStyle(fts);
  20. 20. Conclusão Aplicativo desenvolvido atinge os objetivos para o qual foi projetado Os conhecimentos adquiridos serão de grande valor em nossa carreira profissional
  21. 21. Projetos futuros Implantação de funcionalidades mais sofisticadas na área de geoprocessamento  Cadastramento de informações  Manter dados de uma determinada localidade  Adicionar camadas manualmente  Pontos, linhas, áreas, textos e imagens  Cruzamentos de dados para estatísticas futuras  Mapas on-line, como o Google Maps  Versão para Web

×