O Quantum GIS (QGIS) é um dos softwares livres de SIG mais populares. Desde que seu projeto foi iniciado em 2002 os avanços foram impressionantes! Tudo isso é mérito da comunidade de desenvolvedores, inúmeros voluntários ao redor do globo, que vem trabalhando arduamente para melhorar cada vez mais o programa.
Logo que comecei a trabalhar com o Quantum GIS há alguns anos achei interessante o fato dele, diferente de outros programas como o Kosmo por exemplo, ter suporte aos arquivos do formato TAB, que são nativos do software proprietário MapInfo.
Hoje em sua versão 1.7.x, o Quantum GIS tem funcionalidades ainda não alcançadas por softwares igualmente populares, como o gvSIG. Um caso que ilustra isso é a operação de reprojeção de shapefiles que ao ser realizada no QGIS gera um arquivo de extensão PRJ, arquivo este que muitas vezes é exigido por outros programas para que o shapefile seja reconhecido.
Bem, mas vamos falar do assunto chave dessa postagem, como programar e criar extensões para o QGIS?
COMO PROGRAMAR E CRIAR EXTENSÕES PARA O QGIS
O Quantum GIS é desenvolvido na linguagem C++, e pode ser extendido usando linguagem Python.
Uma dica interessante é a existência de uma espécie de “livro de receitas”, um passo a passo detalhado de como extender o Quantum GIS utilizando Python.
Como algumas pessoas entraram em contato comigo com dúvidas sobre este assunto, decidi postar aqui a dica. Você pode acessar o endereço desta publicação (em inglês) clicando aqui.
Os principais itens do conteúdo do PyQGIS Developer Cookbook são:
- Introdução
- Console Python
- Plugins Python
- Aplicações Python
- Carregando Camadas
- Layers Vetoriais
- Layers Matriciais
- Mapa de Registro do Layer
- Usando Layers Raster
- Consulta de atributos
- Usando camadas Vetoriais
- Usando Índice Espacial
- Escrever Shapefiles
- Manipulando Geometrias
- Projeções de Apoio
- Os sistemas de coordenadas de referência
- Projeções
- Mapa de renderização e impressão
- Saída usando Map Composer
- Expressões de filtragem e cálculo dos valores
- Analisando Expressões
- Avaliando Expressões
- Medição
- Desenvolvendo Plugins Python
- Escrevendo um plugin
- Criando os arquivos necessários
- Escrever código
- Documentação
- Trechos de código
- Ensaio
- Disponibilizar o plugin
Bastante completo, não é verdade? Fica ai a dica.
Aproveite para ler esta matéria relacionada com os plugins Python para QGIS:
E você? Já teve alguma experiência no desenvolvimento de plugins para algum programa? Conte sua experiência nos comentários.
9 respostas
Olá pessoal.
Gostaria de saber como está o desenvolvimento de plugins com o python no qGIS? É amplamente utilizado, ou vale mais a pena estudar/procurar com as ferramentas que já estão disponíveis?
Pessoal,
Na Python Brasil, início de Outubro em Brasília, vou palestrar cujo o título é “Construindo suas ferramentas no QGIS usando Python.”, nessa palestra vou mostrar como podemos usar Python no QGIS, personalizando a camada vetorial (ações, anotações, formulário de entrada de dados, … ), console Python e como podemos criar plugins em Python.
Para desenvolver plugins p/ o QGIS em Python, aconselho a fazer os estudos separadamente:
1) Linguagem Python
2) Eclipse com Pydev (IDE para o desenvolvimento em Python)
3) QtDesigner p/ fazer as interfaces (arquivos UI)
4) PyQt para “experimentar” a API do Qt
5) API do QGIS, experimentando via console do QGIS
6) Cookbook p/ Plugin do QGIS.
No mais, boa sorte na programação p/ QGIS
Ótima notícia Luiz. A palestra será gravada?
Poderia disponibilizar para comunidade depois?
Abraço!
Luiz, gostaria de saber se você têm interesse em dá aula particular de desenvolvimento de plugins no QGIS?
Olá Anderson
sou artista e estou interessada em desenvolver um plugin para um projeto de arte.
poderia lhe explicar meu trabalho em ambiente restrito para ouvir suas considerações e indicações de possíveis parceiros ?
muito obrigada
Thelma
Thelma,
Entre em contato através do nosso formulário: http://www.andersonmedeiros.com/contato/
Abraço!
Excelente postagem!
Era o que eu realmente precisava para aprender a gerar plugins… To com uma necessidade de gerar algumas extensões em meu doutorado… assim que houver resultados, divulgarei para a comunidade!
Valeu, Anderson…
Que bom Marcos. Fico contente.
Depois nos informe dos resultados.
Abraço!
Olá Marcos, você conseguiu algum avanço com plugin em python?
Consigo desenvolver programas em Python puro, mas ao utilizar os métodos PyQt4 e Qsg encontro muita dificuldade, principalmente por falta de documentação.
Alguma dica?
Obrigado!