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 Terralib • 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 Visão Geral Modelo de Dados Gráfico Interface Persistência Processamento Histórico do desenvolvimento • 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 Visão Geral Modelo de Dados Gráfico Interface Persistência Processamento Arquitetura Geral Aplicação TDK Terralib Banco de Dados da Terralib Visão Geral Modelo de Dados Gráfico Interface Persistência 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 Módulos do TDK Módulo Gráfico Módulo de Interface com o Usuário Módulo de Persistência Módulo de Processamento TDK Componentes e Serviços do TDK Aplicação Serviço Gráfico Serviço IU Serviço de Persistência Serviço de Processamento Módulo Gráfico Módulo de Interface com o Usuário Módulo de Persistência Módulo de Processamento TDK Visão Geral Modelo de Dados Gráfico Interface Persistência 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 Conceitos – SIG/BD Geográfico • 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 Visão Geral Modelo de Dados Gráfico Interface Persistência 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 Conceitos – Projeção • 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 Visão Geral Modelo de Dados Gráfico Interface Persistência Processamento Conceitos - Layer • Um plano de informações espaciais e descritivas semelhantes • Exemplo: mapa de municípios Visão Geral Modelo de Dados Gráfico Interface Persistência 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 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 Conceitos - Tema • 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 Visão Geral Modelo de Dados Gráfico Interface Persistência Processamento Conceitos - View • 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 Visão Geral Modelo de Dados Gráfico Interface Persistência 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 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) Visão Geral Modelo de Dados Gráfico Interface Persistência Processamento Exemplo Visão Geral Modelo de Dados Gráfico Interface Persistência 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 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 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 • 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 Visão Geral Modelo de Dados Gráfico Interface Persistência 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 Módulo de 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 Visão Geral Modelo de Dados Gráfico Interface Persistência Processamento Tutorial www.tecgraf.puc-rio.br/tdk