TDK Terralib Development Kit. Agenda Visão Geral Modelo de Dados Módulo Gráfico Módulo de...

29
TDK Terralib Development Kit

Transcript of TDK Terralib Development Kit. Agenda Visão Geral Modelo de Dados Módulo Gráfico Módulo de...

Page 1: TDK Terralib Development Kit. Agenda Visão Geral Modelo de Dados Módulo Gráfico Módulo de Interface com o Usuário Módulo de Persistência Módulo de Processamento.

TDKTerralib Development Kit

Page 2: TDK Terralib Development Kit. Agenda Visão Geral Modelo de Dados Módulo Gráfico Módulo de Interface com o Usuário Módulo de Persistência Módulo de Processamento.

Agenda

• Visão Geral• Modelo de Dados• Módulo Gráfico• Módulo de Interface com o Usuário• Módulo de Persistência• Módulo de Processamento

Page 3: TDK Terralib Development Kit. Agenda Visão Geral Modelo de Dados Módulo Gráfico Módulo de Interface com o Usuário Módulo de Persistência Módulo de Processamento.

Agenda

• Visão Geral• Modelo de Dados• Módulo Gráfico• Módulo de Interface com o Usuário• Módulo de Persistência• Módulo de Processamento

Page 4: TDK Terralib Development Kit. Agenda Visão Geral Modelo de Dados Módulo Gráfico Módulo de Interface com o Usuário Módulo de Persistência Módulo de Processamento.

Terralib

Visão Geral Modelo de Dados Gráfico Interface Persistência Processamento

• Biblioteca de classes e funções para apoiar o desenvolvimento de aplicações SIG

• Banco de dados espacial• Análise espacial• Software livre• www.terralib.org

Page 5: TDK Terralib Development Kit. Agenda Visão Geral Modelo de Dados Módulo Gráfico Módulo de Interface com o Usuário Módulo de Persistência Módulo de Processamento.

Histórico do desenvolvimento

Visão Geral Modelo de Dados Gráfico Interface Persistência Processamento

• Antes da Terralib– GeoMedia (MAPS)– Shapefile (VistaPAE)

• Antes do TDK (Terralib Development Kit)– Código duplicado– Equipes grandes

• Hoje– Código comum– Equipes menores– Colaboração

Page 6: TDK Terralib Development Kit. Agenda Visão Geral Modelo de Dados Módulo Gráfico Módulo de Interface com o Usuário Módulo de Persistência Módulo de Processamento.

Arquitetura Geral

Visão Geral Modelo de Dados Gráfico Interface Persistência Processamento

TDK

Terralib

Banco de Dados da Terralib

Aplicação

Page 7: TDK Terralib Development Kit. Agenda Visão Geral Modelo de Dados Módulo Gráfico Módulo de Interface com o Usuário Módulo de Persistência Módulo de Processamento.

Requisitos do TDK

• Atender a aplicações SIG• Flexibilidade

– Linguagens de programação e plataformas

• Reuso e extensibilidade• Acesso simplificado a Terralib• Compatibilidade com OGC• Software livre• Desenvolvimento colaborativo

Visão Geral Modelo de Dados Gráfico Interface Persistência Processamento

Page 8: TDK Terralib Development Kit. Agenda Visão Geral Modelo de Dados Módulo Gráfico Módulo de Interface com o Usuário Módulo de Persistência Módulo de Processamento.

Módulos do TDK

Módulo GráficoMódulo de

Interface com o Usuário

Módulo de Persistência

Módulo de Processamento

TDK

Page 9: TDK Terralib Development Kit. Agenda Visão Geral Modelo de Dados Módulo Gráfico Módulo de Interface com o Usuário Módulo de Persistência Módulo de Processamento.

Componentes e Serviços do TDK

Visão Geral Modelo de Dados Gráfico Interface Persistência Processamento

Módulo GráficoMódulo de

Interface com o Usuário

Módulo de Persistência

Módulo de Processamento

Serviço de ProcessamentoServiço IU Serviço de PersistênciaServiço Gráfico

TDK

Aplicação

Page 10: TDK Terralib Development Kit. Agenda Visão Geral Modelo de Dados Módulo Gráfico Módulo de Interface com o Usuário Módulo de Persistência Módulo de Processamento.

Agenda

• Visão Geral• Modelo de Dados• Módulo Gráfico• Módulo de Interface com o Usuário• Módulo de Persistência• Módulo de Processamento

Page 11: TDK Terralib Development Kit. Agenda Visão Geral Modelo de Dados Módulo Gráfico Módulo de Interface com o Usuário Módulo de Persistência Módulo de Processamento.

Conceitos – SIG/BD Geográfico

Visão Geral Modelo de Dados Gráfico Interface Persistência Processamento

• Sistema para gerenciamento, análise e apresentação de conhecimento geográfico– SIG - Sistema de Informação Geográfica

• Este sistema deve ser capaz de manter uma estrutura organizada de conjuntos de informações geográficas– Banco de dados geográfico

Page 12: TDK Terralib Development Kit. Agenda Visão Geral Modelo de Dados Módulo Gráfico Módulo de Interface com o Usuário Módulo de Persistência Módulo de Processamento.

Conceitos – Informações Geográficas

• As informações geográficas são conceitos do mundo real, naturais e humanos, que tem como característica comum o fato de serem referenciáveis geograficamente

• Possuem os seguintes componentes: – descritivo – espacial

• Ex. população de um município• componente descritivo: quantidade de pessoas que moram

no município • componente espacial: o mapa municipal com suas

fronteiras.

Visão Geral Modelo de Dados Gráfico Interface Persistência Processamento

Page 13: TDK Terralib Development Kit. Agenda Visão Geral Modelo de Dados Módulo Gráfico Módulo de Interface com o Usuário Módulo de Persistência Módulo de Processamento.

Conceitos – Projeção

Visão Geral Modelo de Dados Gráfico Interface Persistência Processamento

• Projeção é o meio utilizado para apresentar em um plano a superfície curva da Terra

• Existem várias formas de fazer uma projeção, e todas elas envolvem algum tipo de deformação

Page 14: TDK Terralib Development Kit. Agenda Visão Geral Modelo de Dados Módulo Gráfico Módulo de Interface com o Usuário Módulo de Persistência Módulo de Processamento.

Conceitos - Layer

Visão Geral Modelo de Dados Gráfico Interface Persistência Processamento

• Um plano de informações espaciais e descritivas semelhantes

• Exemplo: mapa de municípios

Page 15: TDK Terralib Development Kit. Agenda Visão Geral Modelo de Dados Módulo Gráfico Módulo de Interface com o Usuário Módulo de Persistência Módulo de Processamento.

Conceitos – Dado Vetorial

• Valores discretos– Localizações ou eventos

discretos como pontos, linhas e polígonos

• Representado como coordenadas (x, y) no espaço

• O SIG conecta os pontos desenhando linhas e contornos

Visão Geral Modelo de Dados Gráfico Interface Persistência Processamento

Page 16: TDK Terralib Development Kit. Agenda Visão Geral Modelo de Dados Módulo Gráfico Módulo de Interface com o Usuário Módulo de Persistência Módulo de Processamento.

Conceitos – Raster

• Valores numéricos contínuos– como elevação

• Representado como uma matriz de células em um espaço contínuo

Visão Geral Modelo de Dados Gráfico Interface Persistência Processamento

Page 17: TDK Terralib Development Kit. Agenda Visão Geral Modelo de Dados Módulo Gráfico Módulo de Interface com o Usuário Módulo de Persistência Módulo de Processamento.

Conceitos - Tema

Visão Geral Modelo de Dados Gráfico Interface Persistência Processamento

• Restrições– Algum tipo de aplicação pode ter o interesse em

apresentar apenas parte dos dados contidos em um layer

– Exemplo: municípios com mais de um milhão de habitantes

• Estilo de desenho– Os dados de um layer podem ser desenhados com cores

diferentes, por exemplo– Exemplo:

• População > 1.000.000 – vermelho• População <= 1.000.000 – amarelo

Page 18: TDK Terralib Development Kit. Agenda Visão Geral Modelo de Dados Módulo Gráfico Módulo de Interface com o Usuário Módulo de Persistência Módulo de Processamento.

Conceitos - View

Visão Geral Modelo de Dados Gráfico Interface Persistência Processamento

• Agrupador de temas– Contém um conjunto de temas– Define a visualização de um mapa– Obs.: Na Terralib, um tema só pode pertencer

a uma view

• Projeção– A projeção da view define em qual projeção os

dados dos temas serão apresentados

Page 19: TDK Terralib Development Kit. Agenda Visão Geral Modelo de Dados Módulo Gráfico Módulo de Interface com o Usuário Módulo de Persistência Módulo de Processamento.

Agenda

• Visão Geral• Modelo de Dados• Módulo Gráfico• Módulo de Interface com o Usuário• Módulo de Persistência• Módulo de Processamento

Page 20: TDK Terralib Development Kit. Agenda Visão Geral Modelo de Dados Módulo Gráfico Módulo de Interface com o Usuário Módulo de Persistência Módulo de Processamento.

Visão Geral Modelo de Dados Gráfico Interface Persistência Processamento

Módulo Gráfico

• Composto por:– Canvas– Imagens– Cache de visualização– Biblioteca de estilos– Serviço gráfico

• Responsável por:– Desenho de mapa (views e temas)

• Desenhar linhas, retângulos, etc.• Desenhar textos• Desenhar imagens

– Gerar imagens– Exportar arquivos (gráficos)

Page 21: TDK Terralib Development Kit. Agenda Visão Geral Modelo de Dados Módulo Gráfico Módulo de Interface com o Usuário Módulo de Persistência Módulo de Processamento.

Exemplo

Visão Geral Modelo de Dados Gráfico Interface Persistência Processamento

Page 22: TDK Terralib Development Kit. Agenda Visão Geral Modelo de Dados Módulo Gráfico Módulo de Interface com o Usuário Módulo de Persistência Módulo de Processamento.

Agenda

• Visão Geral• Modelo de Dados• Módulo Gráfico• Módulo de Interface com o Usuário• Módulo de Persistência• Módulo de Processamento

Page 23: TDK Terralib Development Kit. Agenda Visão Geral Modelo de Dados Módulo Gráfico Módulo de Interface com o Usuário Módulo de Persistência Módulo de Processamento.

Módulo de Interface com o Usuário

• Definição– O módulo de interface com o usuário trata de

controles (ou widgets) de interface gráfica de usuário.

– Um widget é um elemento da interface que o usuário interage como um canvas, uma janela, uma caixa de texto, um botão, um menu, etc.

• Composto por:– Objetos visuais– Controladores de diálogos– Diálogos abstratos

Visão Geral Modelo de Dados Gráfico Interface Persistência Processamento

Page 24: TDK Terralib Development Kit. Agenda Visão Geral Modelo de Dados Módulo Gráfico Módulo de Interface com o Usuário Módulo de Persistência Módulo de Processamento.

Agenda

• Visão Geral• Modelo de Dados• Módulo Gráfico• Módulo de Interface com o Usuário• Módulo de Persistência• Módulo de Processamento

Page 25: TDK Terralib Development Kit. Agenda Visão Geral Modelo de Dados Módulo Gráfico Módulo de Interface com o Usuário Módulo de Persistência Módulo de Processamento.

Módulo de Persistência

Visão Geral Modelo de Dados Gráfico Interface Persistência Processamento

• Definição– O módulo de persistência disponibiliza

funcionalidades de alto nível que permitem persistir, consultar e atualizar informações em um banco de dados Terralib

– Este módulo faz acesso ao banco de dados através de drivers

– Os drivers permitem criar um banco de dados novo e estabelecer conexão com algum banco de dados existente

• Composto por:– Serviço de persistência

Page 26: TDK Terralib Development Kit. Agenda Visão Geral Modelo de Dados Módulo Gráfico Módulo de Interface com o Usuário Módulo de Persistência Módulo de Processamento.

Agenda

• Visão Geral• Modelo de Dados• Módulo Gráfico• Módulo de Interface com o Usuário• Módulo de Persistência• Módulo de Processamento

Page 27: TDK Terralib Development Kit. Agenda Visão Geral Modelo de Dados Módulo Gráfico Módulo de Interface com o Usuário Módulo de Persistência Módulo de Processamento.

Módulo de Processamento

Visão Geral Modelo de Dados Gráfico Interface Persistência Processamento

• Definição– O módulo de processamento provê

funcionalidades que auxiliam as tarefas de calcular e converter informações, selecionar áreas georreferenciadas, etc.

• Composto por:– Serviço de processamento

• Funcionalidades– Rotação, translação e escala– Cálculo de distância– Conversão de projeção

Page 28: TDK Terralib Development Kit. Agenda Visão Geral Modelo de Dados Módulo Gráfico Módulo de Interface com o Usuário Módulo de Persistência Módulo de Processamento.

Tutorial

www.tecgraf.puc-rio.br/tdk

Page 29: TDK Terralib Development Kit. Agenda Visão Geral Modelo de Dados Módulo Gráfico Módulo de Interface com o Usuário Módulo de Persistência Módulo de Processamento.