CAPÍTULO 5 LINGUAGEM LEGAL E EXTENSÕES PROPOSTAS

Documentos relacionados
CURSO DE PÓS-GRADUAÇÃO EM SENSORIAMENTO REMOTO. SER-300 Introdução ao Geoprocessamento. Relatório do Laboratório 1 ANA CAROLINA MOREIRA PESSÔA

Laboratório 1. Disciplina. Introdução ao Geoprocessamento SER 300. Prof. Antonio Miguel Vieira Monteiro

MODELAGEM E CRIAÇÃO DE BANCOS DE DADOS

PROGRAMAÇÃO de COMPUTADORES: LINGUAGEM FORTRAN 90/95

CAPÍTULO 2 CONCEITOS DE GEOPROCESSAMENTO

INTRODUÇÃO AO GEOPROCESSAMENTO (SER - 300)

Laboratório 4. Disciplina. Introdução ao Geoprocessamento SER 300. Prof. Dr. Antonio Miguel Vieira Monteiro

1 Expressões, valores e tipos 1. 2 Variáveis e atribuições 5. cálculo de expressões segue a estrutura de parênteses e as prioridades dos operadores

Laboratório 01 Modelagem e Criação de Bancos de Dados

Banco de Dados Geográficos

Estrutura do programa

Métodos Computacionais. Operadores, Expressões Aritméticas e Entrada/Saída de Dados

SER-330: INTRODUÇÃO AO GEOPROCESSAMENTO

Aula de hoje. Expressões. Expressões. Expressões. Exemplos. Programa em Python. SCC Introdução à Programação para Engenharias

Laboratório 01. Modelagem da Base de Dados: Base de Dados Georeferenciados para Estudos Urbanos no Plano Piloto de Brasília

Prof. Natalia Castro Fernandes Mestrado em Telecomunicações UFF 2º semestre/2012

INPE - SER300 Geoprocessamento Laboratório 1: Modelagem da Base de Dados Georreferenciados para Estudos Urbanos no Plano Piloto de Brasília

Modelagem e Criacao de Banco de Dados Laboratorio 1: Geoprocessamento

Linguagem de Programação III

CURSO BÁSICO DE PROGRAMAÇÃO AULA 11. Revisão Aula Anterior Vetores Cadeia de Caracteres

ÁLGEBRA DE MAPAS. ÁLGEBRA DE MAPAS Realce de Imagens Multiespectrais 10/03/16. Sistemas de Informações Geográficas

Abaixo iremos pormenorizar cada um de seus atributos:

Fundamentos de Geoprocessamento. Operações de Análise Espacial

Linguagem de Programação

SER Introdução ao Geoprocessamento Laboratório 1- Modelagem de Base de Dados. Barbara Hass Miguel

4. Constantes. Constantes pré-definidas

Algoritmos e Técnicas de Programação. Professora: Luciana Faria

FUNDAMENTOS DE CARTOGRAFIA PARA GEOPROCESSAMENTO

LÓGICA DE PROGRAMAÇÃO. Algoritmos Computacionais. Sérgio Carlos Portari Júnior

SER 300 INTRODUÇÃO AO GEOPROCESSAMENTO

Paradigmas de Linguagens de Programação. Expressões e Instruções de Atribuição

Variáveis e Entrada de Dados Marco André Lopes Mendes marcoandre.googlepages.

Métodos Computacionais em Física

Aula 4 Estruturas de Controle

Relatório Laboratório 4 Raian Vargas Maretto

Laboratório 4 Análise Multicritério e LEGAL. Disciplina. Introdução ao Geoprocessamento SER 300. Prof. Antonio Miguel Vieira Monteiro

Material III-Bimestre Introdução e conceitos fundamentais da Linguagem C#

Linguagem de Programação

RELATÓRIO LABORATÓRIO

Aula 7 Oficina de Programação Estruturas de Repetição no C. Profa. Elaine Faria UFU

LABORATÓRIO 1 MODELAGEM DA BASE DE DADOS

Programação II. Aula 3

RESULUÇÃO DOS EXERCÍCIOS E INSTRUÇÕES DE DECISÃO (if{} e else{}) Profº André Aparecido da Silva Disponível em:

INFORMÁTICA APLICADA AULA 03 LINGUAGEM DE PROGRAMAÇÃO C++

Introdução a Geoprocessamento SER 300 do

Disciplina Geoprocessamento Aplicadoao Planejamento

Curso Básico de Programação Aula 11. Revisão Aula Anterior Laços de Repetição While; Do-While; For.

Programação I A Linguagem C. Prof. Carlos Alberto

Introdução a Geoprocessamento SER 300

Laboratório 1. Disciplina. Introdução ao Geoprocessamento SER 300. Prof. Dr. Antonio Miguel Vieira Monteiro

Comandos em C (cont.)

Sistemas Operacionais e Introdução à Programação. Programação com linguagem C

Laboratório de Programação II

Programação em C. Variáveis e Expressões. Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação

Operadores e Estruturas de Decisão. Vanessa Braganholo

Computação 1 - Python Aula 3 - Teórica: Tipos de dados, Strings, Estrutura Condicional 1/ 28

Comandos de entrada. e saída. Comandos de entrada. Comandos de entrada. Comandos de entrada. Comandos de entrada. Comandos de entrada.

Linguagem C Estruturas de Repetição

Laboratório 3. Disciplina. Introdução ao Geoprocessamento SER 300. Prof. Dr. Antonio Miguel Vieira Monteiro

Microcontroladores PROF. ME. HÉLIO ESPERIDIÃO

Capítulo 7. Expressões e Sentenças de Atribuição

Revisão. Profa Marina Gomes

Ferramentas de Suporte

SER-300 Introdução ao Geoprocessamento

Lista de Exercícios - 1 Prof: Yuri Frota

4.1- Aritméticos + soma - subtração * multiplicação / divisão % módulo (resto da divisão de inteiros ).

Introdução à Linguagem C++

Organização e Arquitetura de Computadores I

SER Introdução ao Geoprocessamento. Relatório sobre o Laboratório 3

Fundamentos de Programação em Python

Programação Estruturada e Orientada a Objetos

Introdução à Programação. Operadores, Expressões Aritméticas e Entrada/Saída de Dados

Minicurso de Linguagem de Programação Python.

Aula 4: Introdução à Linguagem C++

Universidade Federal de Uberlândia Faculdade de Computação. Linguagem C: Operadores relacionais e lógicos estruturas condicionais If...

Organização de programas em Python. Vanessa Braganholo

Sintaxe Básica do Java. João Paulo Q. dos Santos

1.1 Linguagens de Programação

INTRODUÇÃO AO GEOPROCESSAMENTO

Passo-a-passo para desenvolver um Programa usando a Linguagem Python

Fundamentos de Programação. Turma CI-240-EST. Josiney de Souza.

Prof. A. G. Silva. 28 de agosto de Prof. A. G. Silva INE5603 Introdução à POO 28 de agosto de / 1

Computação eletrônica: Operadores, expressões e funções

Base de Dados Georeferenciados para Estudos Urbanos no Plano Piloto de Brasília.

TCC 00308: Programação de Computadores I Organização de programas em Python

Programação de Computadores I Introdução ao C PROFESSORA CINTIA CAETANO

Introdução a Programação. Curso: Sistemas de Informação Programação I José R. Merlin

Desenvolvimento de Aplicações Desktop

Linguagem C Princípios Básicos (parte 1)

ACH5531 Introdução à Computação

DADOS EM GEOPROCESSAMENTO

GEOPROCESSAMENTO SIAD,

SER Introdução ao Geoprocessamento. Laboratório 1 Modelagem da Base de Dados

Linguagem C estruturas de repetição

INSTITUTO NACIONAL DE PESQUISAS ESPACIAIS. Divisão de Sensoriamento Remoto. Geoprocessamento

Estruturas condicionais

Linguagem de Programação

Transcrição:

CAPÍTULO 5 LINGUAGEM LEGAL E EXTENSÕES PROPOSTAS Os operadores de manipulação de campos geográficos implementados neste trabalho tiveram como ambiente de desenvolvimento a Linguagem Espacial para Geoprocessamento ALgébrico (LEGAL), disponível na versão 2.0.3 do SPRING. Este capítulo apresenta os principais tópicos da proposta da linguagem LEGAL, descreve a versão disponível da linguagem, discute suas limitações e, finalmente, apresenta as contribuições deste trabalho à linguagem LEGAL. 5.1 - OBJETIVO DA LEGAL A LEGAL é uma linguagem de comandos interpretados para uso em análise geográfica que está em desenvolvimento no ambiente do sistema SPRING. A linguagem LEGAL, que foi proposta por Câmara Neto (1995), tem como objetivo prover um ambiente geral para análise geográfica, incluindo operações de manipulação (dita álgebra de campos), operações de consulta espacial e operações de apresentação de resultados de consulta e manipulação. A discussão das operações de manipulação é feita na literatura de forma separada das operações de consulta espacial e apresentação. Isto se reflete nos sistemas comerciais para Geoprocessamento, onde estas operações são implementadas em pacotes de software distintos, obrigando o usuário a mudar de ambiente durante uma sessão de trabalho (Câmara Neto,1995). A inovação na proposta de LEGAL é o tratamento destas operações de forma integrada, provendo um ambiente único para manipulação, consulta espacial e apresentação de resultados de consulta e manipulação. 5.2 - ESTRUTURA DA LEGAL Funcionalmente a linguagem LEGAL pode ser dividida em quatro módulos, como ilustra a Figura 5.1. Estes módulos formam um ambiente integrado para as operações de análise geográfica. file:///e /Minhas%20Webs/OBTMKIII/pgsere/1997-Barbosa_C_C_F/CAP5.html (1 of 6)7/11/2005 08:11:29

Fig. 5.1 - Estrutura de LEGAL. Interpretador de comandos: lê cada linha de comando de um programa em LEGAL, interpreta-a, e executa uma ação apropriada. Módulo de consulta espacial: biblioteca com um repertório de operadores e funções de consulta espacial (seleção e busca, distância, dentro, toca, cruza). Através dos operadores e funções deste módulo, recuperam-se geo-campos, mapa de geo-objetos, um geo-objeto ou uma coleção de geo-objetos ou geo-campos, que podem ser manipulados posteriormente. Módulo de manipulação: biblioteca com operadores e funções para manipulação de dados geográficos modelados conceitualmente como geo-campo, e operadores de conversão entre geo-campos e geo-objetos geográficos. Módulo de apresentação: biblioteca com operadores e funções para apresentação de dados espaciais. Este módulo permite o controle de apresentação de forma independente do resultado da operação realizada. A discussão teórica deste trabalho, apresentada nos capítulos 2, 3 e 4, limitou-se a conceitos de modelagem e de manipulação de dados geográficos que podem ser tratados conceitualmente como geocampo. O escopo prático deste trabalho também limita-se à implementação de operadores para a file:///e /Minhas%20Webs/OBTMKIII/pgsere/1997-Barbosa_C_C_F/CAP5.html (2 of 6)7/11/2005 08:11:29

manipulação de geo-campos e à geração de um exemplo com dados reais, mostrando como o uso de uma linguagem de comandos permite a automatização de certas etapas repetitivas de análise geográfica. Neste escopo, somente as funcionalidades previstas no módulo de manipulação da LEGAL serão utilizados. 5.2.1 - FUNCIONALIDADES PROPOSTAS PARA O MÓDULO DE MANIPULAÇÃO Segundo a proposta da linguagem LEGAL, o módulo de manipulação deverá possuir as seguintes funcionalidades: Transformações pontuais entre geo-campos. Operações booleanas entre geo-campos. Operadores matemáticos pontuais, tais como funções aritméticas e trigonométricas. Métodos de classificação contínua, utilizando a função FUZZY,com intervalo [0..1]. Operações de vizinhança. Operações zonais entre geo-campos. Operações zonais entre geo-campos e geo-objetos. Geração de mapas de geo-objetos a partir de geo-campos Geração de geo-campos a partir de mapas de geo-objetos. 5.3 - IMPLEMENTAÇÃO DISPONÍVEL NO SPRING-2.0.3 Na versão 2.0.3 do SPRING estão implementados no módulo de manipulação da linguagem LEGAL os operadores pontuais aritméticos, booleanos, de transformação ( ponderação, fatiamento e reclassificação); os operadores de vizinhança, que permitem a escrita de programas para aplicações que necessitam manipular dados utilizando o conceito de vizinhança, como filtragem, declividade, etc; e os métodos de classificação contínua. Apesar da grande utilidade dos operadores presentes na versão 2.0.3, algumas aplicações de análise geográfica necessitam das funcionalidades descritas na proposta de LEGAL e que não estão ainda presentes na versão disponível da linguagem. 5.4 - LIMITAÇÕES DA VERSÃO 2.0.3 A seguir enumeram-se algumas limitações da versão 2.0.3. Para que a linguagem LEGAL venha a tornarse realmente um ambiente geral para análise geográfica, é necessário, entre outras coisas, que estas limitações sejam eliminadas. Representações geométricas Na versão atual, é necessário que o usuário converta seus dados para as representações grade regular de células ou grade regular de pontos, antes de executar uma operação de manipulação sobre os dados. Por exemplo, se um geo-campo temático estiver na representação regiões contíguas, é necessário file:///e /Minhas%20Webs/OBTMKIII/pgsere/1997-Barbosa_C_C_F/CAP5.html (3 of 6)7/11/2005 08:11:29

converté-lo para a representação grade regular de células, antes de usá-lo em uma operação no contexto da linguagem LEGAL. Incorprar a LEGAL, regras para conversão de representações, de forma a tornar transparente para os usuários as representações geométricas, é uma necessidade não só da LEGAL, mas de todas as linguagens disponíveis comercialmente para manipulação de dados geográficos. Operações zonais; Algumas aplicações de modelagem ambiental necessitam de operadores que manipulem dados delimitados por regiões (zonas). Estas operacões não estão implementadas na versão 2.0.3. Mecanismos de controle do fluxo de ações; Algumas aplicações de manipulação requerem que se disponha de meios para estabelecer um controle do fluxo das ações a serem excutadas através de testes condicionais. Comandos como While e If...Else, não estão disponíveis. Resultados numéricos em um único valor; Na versão 2.0.3, os resultados de operações sobre geo-campos, sempre geram novas representações geométricas, não permitindo resultados numéricos no formato tabular. A possibilidade de resultado através de um único valor para uma operação é útil no caso de algumas aplicações usando operadores zonais como estatística zonal, perímetro zonal e etc. Geração de relatórios; 5.5 - CONTRIBUIÇÃO À LINGUAGEM LEGAL Algumas vezes o resultado desejado é um relatório com as informações na forma tabular. Também não está disponível esta opção na linguagem. Em função das limitações discutidas na seção anterior, este trabalho implementa as seguintes funcionalidades na linguagem LEGAL. 5.5.1 - MECANISMOS DE CONTROLE DO FLUXO DE AÇÕES As operações de manipulação requerem que se disponha de meios para estabelecer um controle do fluxo de ações a serem executadas (interação e testes). Estes meios foram previstos na proposta da linguagem, file:///e /Minhas%20Webs/OBTMKIII/pgsere/1997-Barbosa_C_C_F/CAP5.html (4 of 6)7/11/2005 08:11:29

mas não implementados até a versão 2.0.3 do SPRING. Implementou-se neste trabalho o comando WHILE que permite que uma determinada sequência de ações, comandos, seja repetida enquanto uma determinada condição for verdadeira. Implementou-se também o comando IF...ELSE, que possibilita a escolher, entre duas sequências de ações, qual executar. Exemplos: While(condição) // enquanto a condição for verdadeira a sequência { // de ações abaixo é executada. sequência de ações; }; If(condição1) // Se condição1 for verdadeira, executa sequência1 { // Se condição1 for falsa, executa sequência2 sequência1 } else { sequência2 }; 5.5.2 - OPERAÇÕES ZONAIS As operações zonais discutidas no capítulo 4, foram especificadas e implementadas como parte deste trabalho. As operações zonais são aplicadas sobre um geo-campo que possui os dados a serem avaliados. As regiões, zonas, são definidas por um segundo plano de informação. O apêndice A descreve a sintaxe file:///e /Minhas%20Webs/OBTMKIII/pgsere/1997-Barbosa_C_C_F/CAP5.html (5 of 6)7/11/2005 08:11:29

dos operadores zonais. Os seguintes operadores zonais foram implementados: Máximo Zonal (MaxZ), aplicável sobre dados geográficos adquiridos em escalas numéricas, imagens de satélites, grades de altimetria e etc. Mínimo Zonal (MinZ), aplicável sobre dados geográficos adquiridos em escalas numéricas. Média Zonal (MedZ), aplicável sobre dados geográficos adquiridos em escalas numéricas. Soma Zonal (SomZ), aplicável sobre dados geográficos adquiridos em escalas numéricas. Maioria Zonal (MaiZ), aplicável sobre dados geográficos adquiridos em escalas numéricas ou temáticas. Minoria Zonal (MinoZ), aplicável sobre dados geográficos adquiridos em escalas numéricas ou temáticas. Diversidade Zonal (VarZ), aplicável sobre dados geográficos adquiridos em escalas numéricas ou temáticas. 5.5.3 - RESULTADOS NUMÉRICOS O resultado de uma operação zonal pode ser um único valor numérico ou uma nova representação geométrica. Se a variável que recebe o resultado da operação zonal for do tipo inteiro (int) ou ponto flutuante (float), o resultado será um único valor. Mas se a variável do lado esquerdo do sinal de atribuição (=) for do tipo representação geométrica, o resultado será uma nova representação geométrica. 5.5.4 - GERAÇÃO DE RELATÓRIOS A flexibilidade de uma linguagem de comandos abre a possibilidade de que os resultados numéricos intermediários e finais de uma sequência de operações de manipulação sejam colocados na forma de relatórios com texto e tabelas. Implementou-se na linguagem LEGAL o comando "Print", que escreve na tela ou em um arquivo do sistema os valores numéricos de variáveis do tipo int, float. e informações adicionais na forma de texto. file:///e /Minhas%20Webs/OBTMKIII/pgsere/1997-Barbosa_C_C_F/CAP5.html (6 of 6)7/11/2005 08:11:29