O Módulo de Scripting é um módulo de programação totalmente integrado no gvSIG 2.
Este módulo foi integrado a partir das versões 2.x do gvSIG, e teve importantíssimas melhoras no gvSIG 2.3.
Para seguir este guia somente é necessário ter instalado a versão do gvSIG 2.3. O Scripting Framework ou Módulo de Scripting veem instalados por padrão.
A última versão disponível de gvSIG 2 pode ser encontrado em: http://www.gvsig.com/es/productos/gvsig-desktop/descargas
Também será necessário ter instalado o pacote de Scripting Composer Tools. Este pacote é um conjunto de ferramentas desenvolvida para facilitar a tarefa do desenvolvedor. Inclui ferramentas de auto completar, código navegador, a ferramenta de interfaces visuais Abeille, entre outros. Pode ser instalado diretamente a partir do Administrador de Complementos.
Para a sua instalação ir até o menu:Ferramentas –> Administrador de Complementos e selecione Instalação padrão.
Em filtro rápido digite Composer Tools:
Quando a instalação finalizar vá em:Ferramentas –> Scripting –> Editor de Scripts, onde podemos comprovar se aparece a pasta ScriptingComposerTools e se foi instalada corretamente.
É necessário reiniciar gvSIG para seu uso. Se voltarmos a abrir o Editor de Scripts, veremos que aparecem uma série de botões extra na barra de Ferramentas:
Este módulo de programação nos dará a oportunidade de programar nossas próprias ferramentas e extensões para o gvSIG.
Os scripts podem ser modificados, adaptados, trocados e desenvolvidos de uma maneira muito fácil, e o mais importante, rapidamente. Uma das vantagens é devido à facilidade da linguagem Python, não será necessário ter extensos conhecimentos de programação nem de como funciona a arquitetura do gvSIG para poder desenvolver a ferramenta que necessitamos.
As possibilidades são infinitas, nos permitirá: - Automatizar tarefas - Adicionar funcionalidades - Criar novos geoprocessos - Personalizar gvSIG - Criação de extensões (Plugins) - Uso da API de gvSIG: tratamento espaciais, conexões de dados, geração de mapas, etc.
A linguagem principal que temos utilizado para o desenvolvimento é Jython http://www.jython.org/, embora também se pode executar scripts em Groovy, R..
Jython é uma implementação de Python realizada em Java.
Esta implementação nos permite trabalhar com a API do gvSIG (aplicação realizada em Java) usando scripts utilizando a sintaxe de Python, facilitando muito o desenvolvimento e execução destes, precisando apenas ter instalado o gvSIG para poder programar.
Isto nos dá algumas vantagens enormes, por um lado, Python é uma linguagem muito simples de aprender, por outro lado, não é necessária a compilação previa com um IDE externo, sendo que a compilação do código se realiza no momento da execução, cada vez que executamos nosso script. Isto nos permite realizar modificações em nossos script e ir testando enquanto o gvSIG estiver aberto.
Também, tem compatibilidade com muitas das bibliotecas de Python existentes, e todas (ou maioria) de Java.
Uma vez instalado gvSIG 2 já podemos abri-lo. Para acessar este módulo de programação será através do menu:Ferramentas –> Scripting. Aqui nos encontraremos 3 opções:
Se trata de um lançador de scripts, uma lista com acessos diretos aos nossos scripts. Conforme vamos criando e armazenando nossos scripts, a nossa lista vai sendo atualizada e accessível para executar um script que necessitemos em qualquer momento, com um duplo clique. É muito cômodo preparamos scripts para executá-los enquanto estamos trabalhando, uma forma rápida de tê-los em qualquer momento.
Esta é a tela principal deste módulo. Aqui poderemos criar, organizar e armazenar todos os nossos scripts.
Os ícones principais: Novo, Abrir, Salvar, Salvar e Executar, Fechar.. Depois de criarmos um arquivo novo poderemos escrever nosso código.
A execução do script aparecerá refletida no terminal que se situa na parte inferior,
É um terminal que nos permitirá executar o código diretamente, executando-o linha por linha. Nos permite consultar variáveis e ver como estão sendo modificadas.
Outra função interessante é que nos oferece também uma ajuda dos comandos que estão disponíveis segundo o código que estejamos escrevendo, ou de que tipo de métodos estão disponíveis nas diferentes classes do gvSIG.
Foi criada uma biblioteca escrita em Jython denominada gvsig. Sua função é injetar métodos extras nas classes de Java já existentes na API do gvSIG e ampliar através de novas funções o potencial e a facilidade de uso deste módulo.
Seu objetivo é diminuir o número de linhas requeridos para realizar certas operações e fazer acessível a API do gvSIG de uma maneira mais simples a partir do Jython.
A bibliotecas Javas que compõem o gvSIG estão totalmente acessíveis a partir dos nossos scripts em Jython, sendo possível, sem nenhuma restrição, o acesso a elas e a criação de extensões, da mesma forma que se fizéssemos isso diretamente em Java.
O Módulo de Scripting vem con diversas bibliotecas:
Além disso, incluímos outras classes importantes que nos ajudarão na geração dos scripts:
É recomendável importar apenas as bibliotecas necessárias para a execução do script.
Se o nosso script contém outras bibliotecas própiras que também programamos, ao realizar sua importação podemos forçar a recarga destas bibliotecas (se não as alterações não aparecerão) utilizando a função reload(). Essa é a forma correta de fazer isso:
import lib
reload(lib)
Para criar um script novo, trabalharemos no Editor de Scripts. Pressione no ícone “Novo” situado acima à esquerda, ou em Arquivo ‣ Novo e será aberta uma janela perguntando qual o tipo de script a criar.
Nesta janela devemos escrever o nome e a descrição do que iremos criar. Como tipo de arquivo podemos escolher qual tipo de script iremos criar. As opções sãoa:
Podemos selecionar a linguagem de programação com a qual prefiramos trabalhar. As linguagens suportadas são: - ECMAScript - Python (na qual temos centralizado o desenvolvimento) - Groovy - R - Scala
Em Save on poderemos escolher em qual pasta salvaremos nosso novo script. As duas últimas caixas de texto servem para inserir informações sobre o Autor e a Versão.
Clicamos em “Aceitar”. Isso irá criar o nosso novo script em branco, que aparecerá aberto para edição. Veremos que aparece novo em nossa listagem de scripts de usuário e abre-se uma aba com o nome do scritp. Nesta aba um asterisco aparecerá indicando se o script contém alterações que não foram salvas. Abaixo aparece o nosso código, que por padrão traz uma tela com a estrutura básica, e por baixo de tudo encontramos a saída pelo terminal.
Os scripts criados são armazenados na seguinte pasta do gvSIG (Windows) C:\Users\*\gvSIG\plugins\org.gvsig.scripting.app.extension. De forma similar na pasta /home/ do Linux. Agora podemos escrever nosso primeiro script. O exemplo que aparece por padrão é totalmente válido:
1 2 3 4 5 6 7 8 9 10 | # encoding: utf-8
import gvsig
def main(*args):
#Remove this lines and add here your code
print "Olá mundo"
pass
|
Primeiramente, realiza uma importação da biblioteca que iremos utilizar, a biblioteca de scripting gvsig, e em seguida define dentro da função principal main(), o comando print que fará sair nosso valo no terminal.
Dentro do Scripting no gvSIG, a função que será executado por padrão será sempre a função main(), sendo assim, deveremos sempre introduzir todo o nosso código nessa função.
Nota
Todos nossos scripts devem conter a função main() para sua correta execução. Não será obrigatório se serão usados como bibliotecas.
Para executar um script salvamos e executamos ou clicamos diretamente no ícone e veremos sua execução no terminal.
Podemos comprovar que a salida no terminal é “Olá mundo”, sendo este o objetivo que buscávamos. Com isso, executamos o nosso primeiro scrip com sucesso.
Esta estrutura é a estrutura básica de un script no gvSIG 2.3.
Se abrirmos agora o Lançador de Sripts, no menu de Scripting, veremos que já aparece nosso script na nova listagem.
Se queremos comprovar nossos scripts no HD estarão na pasta:
Ao abrirmos esta pasta podemos copiar e colar os scripts, atentando em copiar ambos arquivos .py e .inf.
Nota
O recomendável é gerar os scripts dentro da sua própria pasta. Isto nos permitirá usá-los como módulos, dando-nos várias opções: usar arquivos autorun.py (autoexecutáveis ao iniciarmos o gvSIG), arquivo __init__.py (nos permitirá trabalhar como se fosse um módulo, permitindo-nos importar bibliotecas que estejam na mesma pasta) e a criação de pacotes de Scripts.
Uma vez tenhamos criado um script em sua própia pasta com todo o necessário, podemos gerar un pacote do gvSIG .gvspkg para enviá-lo ou subí-lo. Com este pacote podemos realizar a instalação do script a partir do Gerenciador de Complementos. Seu uso é muito intuitivo.
A ferramenta se encontra no Editor de Script, no menu Ferramentas ‣ Pacote de script.
Selecionamos a pasta que contém nossa extensão:
Definimos as propiedades do pacote:
As opções de saída:
O caminho será semelhante a este: gvSIG-desktop-2.3.0-2441-RC2-win-x86_64\install\gvSIG-desktop-2.3.0-ExportadorCapas-1.0.0-0-testing-all-all-j1_7.gvspkg.
Ao finalizar, já aparecerá nossa extensão no formato .gvspkg, que pode ser instalada a partir do Gerenciador de Complementos