segunda-feira, 10 de junho de 2013

A Terra não é Redonda!

Cuidado! se você se assustou com a frase não apedreje nenhum professor seu, talvez você não estivesse pronto para isso, até o momento...

Brincadeiras a parte, a ideia desse POST é reunir algumas informações importantes sobre as diferentes formas de representação da terra. Mais especificamente sobre os Sistemas de Referência Cartográfica (SRC) e suas representações.

Em alguns cursos que ministrei sobre cartografia e SIG Desktop (Livres) percebi a dificuldade que algumas pessoas possuem de abstrair as diferentes concepções sobre a forma da terra e suas implicações nos sistemas de projeção. Essa dificuldade é natural por se tratar de um tema bastante complexo. Por isso reuni aqui alguns videos e informações úteis sobre o tema.

O Formato da Terra

O primeiro passo para compreender o formato da terra é contemplá-la. Ao observarmos os vales dos rios, as montanhas de uma cordilheira ou os chapadões do Brasil Central entendemos que a terra não possuí uma forma regular. Essa compreensão é importante porque em cartografia modela a terra de acordo com nossas necessidades.

O modelo básico da terra é o elipsoide (clique aqui).

   Modelo elipsoidal demonstrando angulo latitudinal (φ) e o angulo longitudinal (λ) (Fonte)

Ok, sendo a terra modelada como uma superfície sem deformações qual é a referência para a definição de onde é o norte, sul, leste ou oeste, onde começam os meridianos e paralelos, quais são as dimensões dos eixos desse elipsoide? O Datum é a posição de referência que reune esses e outros dados.

É importante diferenciar dois tipos de Datums:

Datum Vertical (ou altimétrico): ponto de menor variação das marés;
Datum Horizontal (ou planimétrico): é generalizado como o ponto onde o elipsoide e o geóide se tocam. Dessa forma o Datum referencia as medidas de ambos modelos (geoide e elipsoide).

Está definição de Datuns é bastante generalista, cada tipo de Datum reúne diversas informações sobre os modelos e a posição da terra ao qual fazem referência.

Geóide

O Geóide é um modelo que prolonga o nível médio dos oceanos, ou seja, sem as porções continentais, a variação do seu formato advêm do campo gravitacional da terra. Um bom vídeo que explica como este modelo é construído pode ser visto aqui e um pouco mais sobre gravidade aqui.

Assim o leitor se pergunta o que os sistemas de referencia cartográfica tem a ver com isso? TUDO

São esses modelos que definem as dimensões da terra que utilizamos para posicionarmos, esses são os "globos" terrestres que usamos nos Sistemas de Informação Geográfica. Cada país e região do Planeta adota o sistema mais representativo das suas características e dimensões.

Aqui está uma lista dos sistemas de referência adotados no Brasil

Os SRC são compreendidos por:
- Sistemas de Coordenadas Geográficas  unidade de medida angular representando a terra a partir de seus modelos geoidal e elipsoidal
- Sistemas de Coordenadas Projetadas: os sistemas geográficos são projetados a em um plano e por isso sua unidade de medida é métrica.

Um excelente vídeo sobre como o globo é projetado pode ser conferido em http://www.youtube.com/watch?v=6cpTEPT5i0A não deixe de conferir os outros videos em http://www.dimensions-math.org/

Nas minhas pesquisas na internet encontrei um site muito interessante que pode ser acessado aqui
Nesse site além de varias referencias e projetos de softwares acadêmicos (destaco o FlexProjector com versões para Linux) estão organizados exemplos de diferentes projeções a partir de sua feições de referência e exemplifica como essas funcionam demonstrando suas deformações.





Miller 1 Equirectangular Cylindrical; Neither Conformal or Equal-area; Std Parallels: 50.5 Deg N/S; Ronald Miller; 1949






quarta-feira, 29 de maio de 2013

Parabéns!!!

Bendita a missão dos que cuidam de organizar o espaço que habitamos, procurando fazer dele o melhor lugar para vivermos.

Parabéns para todos os Geógrafos e Geógrafas!!!

29/05 Dia do Geógrafo.

O geógrafo. Fonte

quarta-feira, 22 de maio de 2013

PGBR2013 - Inscrições abertas

Estão abertas as inscrições para o PGBR2013!!

http://pgbr.postgresql.org.br

O PGBR é a conferência brasileira de PostgreSQL que vem ganhando cada vez mais destaque na comunidade mundial do PostgreSQL. Este ano será em Porto Velho - Rondônia.

Com cerca de 30 palestras de altíssimo nível confirmadas o evento vem forte na trilha de Geoprocessamento.

É uma excelente oportunidade para fazer network, interagir com a comunidade, conhecer ou aprofundar os conhecimentos no PostgreSQL e suas funcionalidades.

Algumas celebridades com palestras confirmada:

  • Bruce Morjian (USA) - Grande contribuidor no código do PostgreSQL: controle de concorrência e ACID, dentre várias outras - agora você já tem a quem culpar :-) ;
  • Dickson Guedes (Florianópolies - SC) - Criador do PGVM, pgxn_utils, ldap_fdw;
  • Euler Oliveira (Palmas - TO) - Membro da equipe de desenvolvimento do PostgreSQL é revisor de patches e mantenedor da tradução da documentação para pt_br;
  • Fabio Telles (São Bernardo do Campo - SP) - É figura conhecida da comunidade;
  • Flávio Gurgel (São Paulo - SP) - Quem faz parte da lista pgbr-geral conhece;
  • Luis F. Bueno (Porto Velho - RO) - Kahuna do PGBR2013 (Prometeu e cumpriu);
Só para citar alguns.

Faça os planos para estar presente e não perca esse evento!

sábado, 11 de maio de 2013

Conhecendo o MapServer

O Mapserver é uma plataforma Open Source de desenvolvimento e apresentação de dados espaciais. Trabalha em conjunto com um servidor web e alguns componentes que serão apresentados no post de instalação. Ele não é e não tem intenção de ser um SIG com muitos recursos. É um projeto criado pela Universidade de Minnesota, com apoio da NASA, com objetivo de fornecer meios para apresentação de dados espaciais(Raster e Vetoriais) na WEB.

Formatos de entrada de dados: TIFF/GeoTIFF, JPEG, GIF, PNG, EPPL7 e formatos da biblioteca GDAL

Formatos de Saída de dados: PNG, JPEG, GIF, WBMP, SWF, PDF, SVG, DXF e formatos da biblioteca GDAL

Características:
  • Integração com o PostGis;
  • É um software livre e gratuito;
  • Estensível por diversas linguagens de programação;
  • Utiliza as especificações OGC;
  • Permite customização e criação de mapas dinâmicos;
  • Requisições de serviços e funções a partir de URL’s;
  • Aceita vários formatos de entrada e saída;
  • Suporte a várias fontes, inclusive TrueType;
  • Reprojeção de dados em tempo de execução através da biblioteca PROJ.4;
  • Utiliza XML para troca de informações;
  • Suporte a várias plataformas (Linux, Mac OS, Windows e outras);
  • Seleção de entidades apartir de expressões, geometrias e feições;
  • Etc.


Modos básicos de utilização:

MapScript

O MapScript estende as funcionalidades do MapServer para as linguagens de script. Dessa maneira, podemos fazer uso de funções, classes e recursos do MapServer utilizando uma linguagem de programação.
 
Está disponível para as seguintes linguagens: PHP, Java, Python, Ruby, C#, Perl e TCL.


CGI - Common Gateway Interface

É uma importante tecnologia que permite gerar páginas dinâmicas. As requisições dos serviços são feitas com utilização de parâmetros e com auxílio de um navegador WEB. O MapServer interpreta esses parâmetros e gera uma página depois de os processar.
  
Para utilização do MapServer em modo CGI, o seu arquivo executável deve estar localizado em um diretório especifico do servidor WEB.



WebServices

Esse módulo do MapServer possibilita o fornecimento de dados e serviços através da internet. Resumidamente, podemos dizer que o MapServer faz uso das especificações WMS, WCS e WFS do OGC, para se tornar o servidor de mapas WEB. Assim, se torna possível o consumo online dos dados por sistemas com diversas arquiteturas, inclusive sistemas Desktops como GVSig, Quantum GIS, uDig, ArcGis e etc.



Mais informações: mapserver.org

Em breve será postado o tutorial para instalação e configuração do MapServer e PHP-MapScript no Linux.

sexta-feira, 3 de maio de 2013

Fazendo instalação do PostgreSQL + PostGIS no Debian



Contrariando os pessimistas... eis que a segunda parte do Post Criando um Ambiente linux para instalação do PostgreSQL + PostGIS finalmente foi publicada.




Hoje iremos trabalhar em cima de nossa VM construída no ultimo post para fazer a instalação do PostgreSQL e a extensão PostGIS.

Instalando o PostgreSQL via código fonte

É isso mesmo: via código fonte.


Aí você deve se perguntar por que fazer assim já que com o Debian dá para fazer isso de forma bem simples com pacotes prontos.


Alguns motivos:
  • Nos repositórios do Debian não constava a versão mais recente do PostgreSQL no momento em que este Post foi escrito (Ok... eu sei que no PGDG tem os pacotes).
  • Algumas personalizações do PostgreSQL só são possíveis de serem feitas antes dele ser compilado;
  • Dentre outros argumentos mais técnicos, o principal (não técnico) é que é mais legal compilar... nerdiçe pura e aplicada!

quinta-feira, 2 de maio de 2013

Openlayers e proxy

Olá.

Dias atrás tivemos um problema com o Openlayers no trabalho.
Lá, utilizamos proxy na rede e por isso ficamos impossibilitados de fazer requisições via GetFeatureInfo do servidor de aplicações para o servidor de mapas.

Eu já havia visto algumas coisas sobre proxy no Openlayers, mas ainda não havia feito nada do tipo. Parecia meio complicado, mas é até bem simples.

Vamos seguir os passos do próprio site do Openlayers (ProxyHost) bem como o seu exemplo: proxy.cgi

Na linha 18 (do exemplo), insira o domínio, entre aspas
allowedHosts = ['www.servidordemapas.com.br']
O exemplo utilizado tem mensagens padrão que podem (e devem) ser alteradas de acordo com a necessidade.

Salve o arquivo no diretório onde o cgi está instalado. No Linux (Debian), provavelmente estará em /usr/lib/cgi-bin/

Dê permissão 775 ao arquivo
sudo chmod 775 /caminho/do/arquivo/proxy.cgi
No seu arquivo de mapa (Openlayers), insira a seguinte linha:
OpenLayers.ProxyHost = "/cgi-bin/proxy.cgi?url=";
Feito isso, será possível fazer o GetFeatureInfo no servidor de aplicação acessar o servidor de mapas. Ex:

http://www.servidordeaplicacao.com.br/cgi-bin/proxy.cgi?url=http://www.servidordemapas.com.br/cgi-bin/mapserv?REQUEST=GetFeatureInfo

That's all folks!
Qualquer coisa, é só deixar um comentário. Valeu!

quarta-feira, 10 de abril de 2013


Criando um Ambiente linux para instalação do PostgreSQL + PostGIS.

Inaugurando a linha de banco de dados do blog e tendo o privilégio de ser o primeiro post técnico deste blog tenho prazer de apresentar este tema que tem dois objetivos:

1 – Disponibilizar uma máquina virtual Linux para padronizarmos o que será exposto neste e nos próximos posts de banco de dados deste blog;
2 – Criar um ambiente de banco de dados geoespacial com PostgreSQL e PostGIS;

A primeira parte do post será para criarmos um ambiente linux por meio de uma máquina virtual.

Criando um ambiente

Já que a instalação do SO (sistema operacional) não é o foco deste blog, resolvi preparar uma máquina virtual para que o leitor possa facilmente utilizar em seu computador pessoal para os testes e as discussões que faremos aqui.

O software escolhido como gerenciador de VM's (Máquinas Virtuais) foi o Virtual Box na versão 4.2.10 que pode ser encontrado aqui: https://www.virtualbox.org/wiki/Downloads. Caso a versão informada não seja encontrada, pode-se usar uma versão superior.

Depois de instalar o Virtual Box, faça o download do arquivo da VM aqui: https://docs.google.com/file/d/0B_QXgjfSTefFQ2dFTnhNNzh2bFE/edit