ASP.NET MVC + Geoprocessamento

56
#GlobalAzure ASP .NET MVC + Geoprocessamento Yago Luiz

Transcript of ASP.NET MVC + Geoprocessamento

Page 1: ASP.NET MVC + Geoprocessamento

#GlobalAzure

ASP.NET MVC + GeoprocessamentoYago Luiz

Page 2: ASP.NET MVC + Geoprocessamento

Patrocinadores

Page 3: ASP.NET MVC + Geoprocessamento
Page 4: ASP.NET MVC + Geoprocessamento

1. Projeto SIG Web Luziânia

2. Fundamentação Teórica

3. Tecnologias Utilizadas

4. Demonstração

5. Considerações Finais

Agenda

Page 5: ASP.NET MVC + Geoprocessamento
Page 6: ASP.NET MVC + Geoprocessamento

■Identificar um problema na cidade de Luziânia-GO.

■Solucionar o problema através do uso de geoprocessamento.

■Utilizar apenas ferramentas livres para uso.

Introdução

Page 7: ASP.NET MVC + Geoprocessamento

■Atualmente a cidade de Luziânia-GO, não possui um sistema que gerencieserviços básicos relacionados a educação, lazer, saúde e segurança.

■Todas as informações são organizadas apenas em documentos físicos eplanilhas eletrônicas.

■Não existe um banco de dados para armazenamento e manutenção dosdados, principalmente os que indicam localização geográfica.

■Nenhuma informação é apresentada de forma transparente para apopulação.

Problema

Page 8: ASP.NET MVC + Geoprocessamento

■Este projeto tem como objetivo o desenvolvimento de um Sistema deInformação Geográfica Web (SIG Web) para a cidade de Luziânia-GO,de forma a facilitar a organização, gerenciamento e visualização dedados relacionados a educação, lazer, saúde e segurança.

Objetivo Geral

Page 9: ASP.NET MVC + Geoprocessamento
Page 10: ASP.NET MVC + Geoprocessamento

■O termo Sistema de Informação Geográfica (SIG) é aplicado parasistemas que realizam o tratamento computacional de dadosgeográficos (G. R. Queiroz; K. R. Ferreira, 2006).

■É considerado um SIG Web qualquer SIG que utiliza tecnologias daWeb para interação de dados geográficos.

Sistema de Informação Geográfica

Page 11: ASP.NET MVC + Geoprocessamento

Sistema de Informação Geográfica

Figura 2.1 – SIG Web Luziânia

Page 12: ASP.NET MVC + Geoprocessamento

■Um banco de dados geográfico é aquele que tem a capacidade dearmazenar dados geográficos, além dos dados convencionais oualfanuméricos (OLIVEIRA, Harley V., 2013).

Banco de Dados Geográfico

Page 13: ASP.NET MVC + Geoprocessamento

Banco de Dados Geográfico

Figura 2.2 – Atributo Geográfico SGBD PostgreSQL

Page 14: ASP.NET MVC + Geoprocessamento

■O termo geoprocessamento denota a disciplina de conhecimento queutiliza técnicas matemáticas e computacionais para o tratamento deinformação geográfica (GEOPROCESSAMENTO, 2015).

Geoprocessamento

Page 15: ASP.NET MVC + Geoprocessamento

Geoprocessamento

Figura 2.3 – Google Maps Engine: Dados Geoprocessados

Page 16: ASP.NET MVC + Geoprocessamento

■A projeção cartográfica é definida como um traçado sistemático delinhas numa superfície plana, destinado à representação de paralelosde latitude e meridianos de longitude da Terra ou de parte dela, sendoa base para a construção dos mapas (PROJEÇÃO, 2015).

Projeção Cartográfica

Page 17: ASP.NET MVC + Geoprocessamento

Projeção Cartográfica

Figura 2.4 – Projeção Cilíndrica Figura 2.5 – Projeção

Cônica

Figura 2.6 – Projeção Plana

Page 18: ASP.NET MVC + Geoprocessamento

■Modelo matemático responsável por representar a superfície da Terraem um mapa.

■O datum mais conhecido e um dos mais utilizados é o WGS84 onde éaplicado no GPS (Sistema de Posicionamento Global).

Datum

Page 19: ASP.NET MVC + Geoprocessamento

■É importante relacionar a projeção cartográfica com o datum.

■Os principais erros de georreferenciamento ocorrem pela escolhaerrada da projeção cartográfica em relação ao datum.

Projeção Cartográfica x Datum

Page 20: ASP.NET MVC + Geoprocessamento
Page 21: ASP.NET MVC + Geoprocessamento

1. PostgreSQL

2. PostGIS

3. Entity Framework

4. Npgsql

5. C#

6. ASP.NET MVC

7. Leaflet

8. GeoJSON

9. Visual Studio Community 2013

Tecnologias Utilizadas

Page 22: ASP.NET MVC + Geoprocessamento

■PostgreSQL é um banco de dados objeto-relacional open source. Ele éexecutado em todos os principais sistemas operacionais e totalmentecompatível com ACID (Atomicidade, Consistência, Isolamento eDurabilidade) (POSTGRESQL, 2015).

PostgreSQL

Page 23: ASP.NET MVC + Geoprocessamento

PostgreSQL

Figura 3.1 – Site: PostgreSQL

Page 24: ASP.NET MVC + Geoprocessamento

■O PostGIS é uma extensão geográfica do SGBD PostgreSQLdesenvolvida pela empresa canadense Refractions Research. Seu códigofonte é liberado sob a licença GNU General Public e continua a serdesenvolvida por um grupo de colaboradores (POSTGIS, 2015).

PostGIS

Page 25: ASP.NET MVC + Geoprocessamento

PostGIS

Figura 3.2 – Site: PostGIS

Page 26: ASP.NET MVC + Geoprocessamento

■Entity Framework é um mapeador objeto-relacional (ORM) open sourceda Microsoft que permite aos desenvolvedores .NET trabalhar comdados relacionais usando objetos específicos de domínio(ENTITYFRAMEWORK, 2015).

Entity Framework

Page 27: ASP.NET MVC + Geoprocessamento

Entity Framework

Figura 3.3 – GitHub: Entity Framework

Page 28: ASP.NET MVC + Geoprocessamento

■Npgsql é o provider .NET para o PostgreSQL. Ele permite que qualquerprograma desenvolvido no framework .NET acesse um servidor debanco de dados PostgreSQL. Ele é implementado 100% em código C#(NPGSQL, 2015).

Npgsql

Page 29: ASP.NET MVC + Geoprocessamento

Npgsql

Figura 3.4 – GitHub: Npgsql

Page 30: ASP.NET MVC + Geoprocessamento

■Linguagem de programação orientada a objetos, multiplataforma e dedomínio público desenvolvida pela Microsoft e parte do framework.NET (C#, 2015).

C#

Page 31: ASP.NET MVC + Geoprocessamento

C#

Figura 3.5 – GitHub: Roslyn

Page 32: ASP.NET MVC + Geoprocessamento

■Framework de desenvolvimento web open source criado pela Microsoft,responsável por gerar o conteúdo dinâmico na Web. Utiliza o padrãode arquitetura de software model-view-controller (MVC) (ASP.NETMVC,2015).

ASP.NET MVC

Page 33: ASP.NET MVC + Geoprocessamento

ASP.NET MVC

Figura 3.6 – GitHub: ASP.NET MVC

Page 34: ASP.NET MVC + Geoprocessamento

■O Leaftlet é uma moderna biblioteca open source desenvolvida emJavaScript para o uso de mapas interativos com suporte a dispositivosmóveis. Contando apenas com cerca de 33 KB de código, tem todas ascaracterísticas que a maioria dos desenvolvedores necessitam paracriação de mapas online. (LEAFTLET, 2015).

Leaflet

Page 35: ASP.NET MVC + Geoprocessamento

Leaflet

Figura 3.7 – Site: Leaflet

Page 36: ASP.NET MVC + Geoprocessamento

■GeoJSON é um formato de codificação para estruturas de dadosgeográficos. Um objeto GeoJSON pode representar uma geometria,uma característica, ou uma coleção de características (GEOJSON, 2015).

GeoJSON

Page 37: ASP.NET MVC + Geoprocessamento

GeoJSON

Figura 3.8 – Estrutura GeoJSON

Page 38: ASP.NET MVC + Geoprocessamento

■O Visual Studio Community 2013 possui a excelente funcionalidade doVisual Studio Professional 2013, projetada e otimizada paradesenvolvedores individuais, estudantes, contribuidores de códigoaberto e equipes pequena (VISUALSTUDIO, 2015).

Visual Studio Community 2013

Page 39: ASP.NET MVC + Geoprocessamento

Visual Studio Community 2013

Figura 3.9 – Site: Visual Studio Community 2013

Page 40: ASP.NET MVC + Geoprocessamento
Page 41: ASP.NET MVC + Geoprocessamento

■Todo o georreferenciamento ocorre no SGBD (PostgreSQL), através daextensão espacial PostGIS.

■É necessário a criação de uma coluna geográfica na tabela onde serárealizada o geoprocessamento.

■É necessário a criação de uma procedure e uma trigger para geraçãodo georreferenciamento através da latitude e longitude.

Georreferenciamento

Page 42: ASP.NET MVC + Geoprocessamento

Georreferenciamento

Figura 4.1 – Criação de Coluna Geográfica (PostGIS)

Page 43: ASP.NET MVC + Geoprocessamento

Georreferenciamento

Figura 4.2 – Procedure Coluna Geográfica (PostGIS)

Figura 4.3 –Trigger Coluna Geográfica (PostGIS)

Page 44: ASP.NET MVC + Geoprocessamento

■A integração da aplicação com o mapa é realizada através doGeoJSON, seguindo a estrutura de implementação do Leaflet.

Integração com o Mapa

Page 45: ASP.NET MVC + Geoprocessamento

Integração com o Mapa

Figura 4.4 – Estrutura GeoJSON Leaflet

Page 46: ASP.NET MVC + Geoprocessamento

Integração com o Mapa

Figura 4.5 – Retorno Json ASP.NET MVC

Page 47: ASP.NET MVC + Geoprocessamento

■Atenção! Sistema não está 100% pronto

SIG Web Luziânia

Page 48: ASP.NET MVC + Geoprocessamento
Page 49: ASP.NET MVC + Geoprocessamento

■O georreferenciamento é realizado no SBDG (PostgreSQL).

■É necessário uma API para integração dos dados georreferenciados com omapa.

■Interoperabilidade nas tecnologias utilizadas.

■O ASP.NET MVC é um framework excelente para desenvolvimento de um SIGWeb.

Conclusão

Page 50: ASP.NET MVC + Geoprocessamento

■G. R. Queiroz; K. R. Ferreira. Tutorial sobre Bancos de Dados

Geográficos. GeoBrasil, 2006.

■OLIVEIRA, Harley V. Uma Arquitetura de Dados Espaciais: Um Estudo

dos Dados de Solos e Folhas dos Biomas Brasileiros. 104 f. Dissertação

(Mestrado em Informática). Universidade de Brasília, Brasília, 2013.

Referências

Page 51: ASP.NET MVC + Geoprocessamento

■GEOPROCESSAMENTO. Disponível em:

<http://www.dpi.inpe.br/gilberto/livro/introd/cap1-introducao.pdf>

Acesso em: 18 abril. 2015.

■PROJEÇÃO. Disponível em:

<http://www.brasilescola.com/geografia/projecoes-cartograficas.htm>

Acesso em: 24 abril. 2015.

■POSTGRESQL. Disponível em:

<http://www.postgresql.org/about> Acesso em: 18 abril. 2015

Referências

Page 52: ASP.NET MVC + Geoprocessamento

■POSTGIS. Disponível em: <http://postgis.refractions.net> Acesso em: 18

abril. 2015.

■LEAFTLET. Disponível em: <http://leafletjs.com> Acesso em: 18 abril.2015.

■GEOJSON. Disponível em: <http://geojson.org> Acesso em: 18 abril.2015.

Referências

Page 53: ASP.NET MVC + Geoprocessamento

■ENTITYFRAMEWORK. Disponível em: <http://www.asp.net/entity-

framework> Acesso em: 18 abril. 2015.

■NPGSQL. Disponível em: <https://github.com/npgsql/npgsql> Acesso

em: 18 abril. 2015.

■C#. Disponível em: <https://msdn.microsoft.com/en-

us/vstudio/hh341490.aspx> Acesso em: 18 de abril. 2015.

Referências

Page 54: ASP.NET MVC + Geoprocessamento

■ASPNETMVC. Disponível em: <http://www.asp.net/mvc> Acesso em: 18

abril. 2015.

■VISUALSTUDIO. Disponível em: <https://www.visualstudio.com/pt-

br/products/visual-studio-community-vs> Acesso em: 18 abril. 2015.

Referências

Page 55: ASP.NET MVC + Geoprocessamento
Page 56: ASP.NET MVC + Geoprocessamento