CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 1 IN1008 – Projeto Conceitual de BD Modelagem Conceitual para BD Geográfico - Principais conceitos e exemplos de aplicações Por: Carla Verónica Ruiz Castro [email protected] CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 2 Roteiro • Motivação e Objetivos • Estado da arte • Conceitos básicos de Cartografía • Principais conceitos de Sistemas Geográficos • Operadores sobre dados espaciais • Abordagem prática • Referências CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 3 Motivação e Objetivos • Apresentar os conceitos básicos de cartografia. • Apresentar os principais conceitos de BD geográficos e examinar os problemas básicos de representação computacional de dados geográficos. • Apresentar os operadores sobre dados espaciais. • Mostrar dois exemplos de aplicação prática dos conceitos apresentados. CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 4 Sistemas Geográficos SIGs • Estado da arte Tendências • Software de Baixo Custo: a idéia é promover uma popularização do uso da informação espacial, através de ferramentas simples e baratas que funcionam acopladas em rede a servidores de dados espaciais mais poderosos. • Uso de Imagens: intensificação do uso de imagens digitais como informação complementar à informação vetorial. Os custos de armazenamento e processamento de grandes volumes de imagens tem sido reduzidos. • Orientação a Objetos: os conceitos de orientação a objetos levam à definição mais racional, mais próxima do mundo real, de modelos e estruturas de dados. • Dados Geográficos na Internet: Diversos desenvolvedores de SIG têm lançado produtos para prover acesso, via Internet, a bases de dados geográficas. CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 5 Conceitos Básicos de Cartografía • Definições básicas: Elipsóide de revolução: a figura geométrica regular que mais se aproxima da verdadeira forma da terra é o elipsóide de revolução. Se obtém ao se rodar um elipse em torno de seu eixo menor. CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 6 Conceitos Básicos de Cartografía Datum: é um conjunto de parâmetros que definem um sistema de coordenadas local. CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 7 Conceitos Básicos de Cartografía Escala • Criar projeções do globo terrestre num plano significa que cada ponto do elipsóide ou esfera é projetado em uma superfície plana. • Esta superfície -o mapa - pode ser apresentada em diferentes escalas. • Definição: relação entre as dimensões dos elementos representados em um mapa e a grandeza correspondente, medida sobre a superfície da Terra. Escala numérica: descritas por frações cujos denominadores representam as dimensões naturais e os numeradores, as que lhes correspondem no mapa. » Ex: A escala de 1 para 50.000 (1:50.000) CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 8 Conceitos Básicos de Cartografía Sistemas de coordenadas • Um objeto geográfico somente poderá ser localizado se tiver sua localização determinada em uma rede coerente de coordenadas. • Quando se dispõe de um sistema de coordenadas fixas, pode-se definir a localização de qualquer ponto na superfície terrestre. • Tipos: sistemas de coordenadas geográficas ou terrestres sistemas de coordenadas planas ou cartesianas CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 9 Conceitos Básicos de Cartografía • Geográficas ou terrestres: cada ponto da superfície terrestre é localizado na interseção de um meridiano com um paralelo. Meridianos: círculos máximos da esfera cujos planos contêm o eixo dos pólos. Paralelos: círculos da esfera cujos planos são perpendiculares ao eixo dos pólos. CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 10 Conceitos Básicos de Cartografía • Geográficas ou terrestres: um ponto na superfície terrestre é representado por um valor de latitude e longitude. Latitude: é a distância angular entre um ponto qualquer da superfície terrestre e a linha do Equador. Longitude: é a distância angular entre um ponto qualquer da superfície terrestre e o meridiano de origem. CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 11 Conceitos Básicos de Cartografía • Planas ou cartesianas: Sistema de coordenadas geográficas não é conveniente para calcular distâncias ou áreas. Este sistema baseia-se na escolha de dois eixos perpendiculares (horizontal e vertical) cuja interseção é denominada origem. Origem é base para a localização de qualquer ponto do plano. Um ponto é representado por dois números: projeção sobre o eixo x (associado à longitude), e projeção sobre o eixo y (associado à latitude). CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 12 Conceitos Básicos de Cartografía Projeções Cartográficas • Mapas são representações aproximadas da superfície terrestre, que projetam cada ponto do globo em uma superfície plana. • Para se obter essa correspondência, utilizam-se os sistemas de projeções cartográficas. • Classificação das Projeções por tipo de superfície de projeção: Projeção Azimutal Projeção Cônica Projeção Cilíndrica CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 13 Conceitos Básicos de Cartografía Projeção Azimutal: » Construído sobre um plano tangente a um ponto qualquer da esfera terrestre. » Este ponto ocupa sempre o centro do mapa. » É usada para representar as regiões polares e suas proximidades e para localizar um país na posição central. CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 14 Conceitos Básicos de Cartografía Projeção Cônica: » O mapa é inicialmente projetado sobre um cone tangente ou secante à superfície terrestre e é em seguida “desenrolado” sobre um plano. » Os meridianos são retas que convergem em um ponto (que representa o vértice do cone). » Os paralelos são circunferências concêntricas a esse ponto. CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 15 Conceitos Básicos de Cartografía Projeção Cilíndrica: » Projeção é imaginada sobre um cilindro. » Os meridianos e os paralelos são representados por linhas perpendiculares. CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 16 Conceitos Básicos de Cartografía Mapas e Cartas • Mapa: não tem caráter científico especializado, sendo destinado a fins culturais, ilustrativos ou mesmo comerciais. • Cartas: representação dos aspectos naturais ou artificiais da Terra, permitindo a avaliação precisa de distâncias, direções e a localização geográfica de pontos, áreas e detalhes. • Em outros contextos, os termos “mapa” e “carta” são utilizados indistintamente. CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 17 Sistemas Geográficos SIGs • Descrição geral de SIGs Sistemas automatizados usados para armazenar, analisar e manipular dados geográficos. Dados geográficos: representam objetos e fenômenos em que a localização geográfica é uma característica inerente à informação e indispensável para analisá-la. Ex: para cada lote num cadastro urbano o SIG guarda: • informação descritiva: proprietário e valor do IPTU • informação geométrica: coordenadas dos limites do lote. CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 18 Sistemas Geográficos SIGs • Principais características de SIGs: 1. Possibilitam a integração, num único BD, de informações geográficas provenientes de fontes diversas. 2. Oferecem mecanismos para recuperar, manipular e visualizar estes dados, através de algoritmos de manipulação e análise. CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 19 Sistemas Geográficos SIGs • Componentes de um SIG Cada sistema implementa estes componentes de forma distinta, mas todos estão usualmente presentes num SIG. (*) Fonte: [2] CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 20 Sistemas Geográficos SIGs • Componentes de um SIG Interface: define como o sistema é operado e controlado. Entrada e integração de dados: compreende as operações a serem aplicadas antes da utilização dos dados. Por exemplo os mecanismos de conversão de dados. Consulta e análise espacial: seleção e pesquisa sobre informações geográficas, transformações de escala ou projeção, sobreposição de camadas de dados e execução de operações espaciais; Visualização e plotagem: apresentação gráfica dos resultados de consultas e análises espaciais de maneira que o usuário possa interpretar facilmente tais resultados; Gerência dados espaciais: oferece armazenamento e recuperação dos dados espaciais e atributos. CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 21 Sistemas Geográficos SIGs • Paradigma dos quatro universos: É usado para produzir as representações computacionais do espaço geográfico. Distingue quatro passos entre o mundo real e sua realização computacional. CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 22 Sistemas Geográficos SIGs 1. Universo Ontológico: Que classes de entidades são necessárias para descrever o problema que estamos estudando? 2. Universo Formal: Quais são as abstrações formais necessárias para representar os conceitos de nosso universo ontológico? 3. Universo Estrutural: Quais são os tipos de dados e algoritmos necessários para representar os modelos e as álgebras do universo formal? 4. Universo de Implementação: Implementação dos sistemas, fazendo escolhas como arquiteturas, linguagens e paradigmas de programação. CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 23 Sistemas Geográficos SIGs O universo ontológico • Geo-ontologia: Conjunto de conceitos e um conjunto de relações semânticas e espaciais entre estes termos. » Conceitos: tem um nome, uma definição e um conjunto de atributos. » Relações semânticas: incluem as relações de similaridade e hiponímia (também dito especialização: “hospital é um tipo de prédio”). » Relações espaciais: incluem as relações topológicas como pertinência e adjacência, relações direcionais como “ao norte de”, e relações informais como “no coração de” ou “perto de”. CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 24 Sistemas Geográficos SIGs • Geo-ontologia: Conceitos físicos: correspondem a fenômenos físicos do mundo real. » Ex: A Amazônia possui uma floresta tropical. Conceitos sociais: criados para representar entidades sociais e institucionais. » Ex: Esta é uma reserva indígena. Conceitos associados a entidades que podem ser individualizadas e identificadas nominalmente. » Ex: lagos e lotes. Conceitos que variam de forma contínua no espaço. » Ex: poluição. CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 25 Sistemas Geográficos SIGs • Os conceitos físicos e sociais podem ser subdivididos em: CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 26 Sistemas Geográficos SIGs O universo formal • Componente intermediário entre os conceitos do universo ontológico e as estruturas de dados. • Tem duas partes: • (a) como medir o mundo real (teoria da medida); (b) como generalizar os conceitos da ontologia em entidades formais abrangentes. Tópicos: Teoria da medida Espaço absoluto e espaço relativo Modelos no espaço absoluto: geo-campos e geo-objetos Modelos no espaço relativo: redes CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 27 Sistemas Geográficos SIGs • Atributos de dados geográficos: teoria da medida Processo de medida: consiste em associar números ou símbolos a diferentes ocorrências de um mesmo atributo. Escalas de medida: » Nominal: classifica objetos em classes distintas sem ordem inerente, como rótulos que podem ser qualquer símbolo. Ex: Cobertura do solo, com rótulo como “floresta”, “área urbana” e “área agrícola”. » Ordinal: introduz a ordenação, caracterizando os objetos em classes que possuem uma ordem natural (1 – ruim, 2 – bom, 3 – ótimo ou “0-10%”, “11-20%”, “mais que 20%”). Ex: A aptidão agrícola de solos, com rótulos como “muito apto”, “apto”,“pouco apto”, e “inapto”. CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 28 Sistemas Geográficos SIGs » Intervalo: possui um ponto zero arbitrário, uma distância proporcional entre os intervalos e medidas entre menos infinito e infinito. Ex: A temperatura em graus Celsius onde o ponto zero corresponde a uma convenção (a fusão do gelo em água). » Razão: permite um tratamento analítico da informação. O ponto de referência zero não é arbitrário, mas determinado por alguma condição natural. Ex: Na descrição de atributos como peso e volume de objetos não há valores negativos. CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 29 Sistemas Geográficos SIGs • Espaço absoluto e espaço relativo Espaço absoluto: possibilidade de representar no computador a localização dos objetos no espaço. Espaço relativo: possibilidade de posicionamento relativo entre os objetos. representar apenas o (*) Fonte: [2] CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 30 Sistemas Geográficos SIGs • Modelos no espaço absoluto: Modelo de geo-campos Enxerga o espaço geográfico com uma superfície contínua, sobre a qual variam os fenômenos a serem observados. Para cada ponto do espaço, um campo terá um valor diferente. » Ex: um mapa de vegetação associa a cada ponto do mapa um tipo específico de cobertura vegetal. Pode ser especializado em: » Geo-campo temático: associado a medidas nominais ou ordinais. Ex: um mapa de solos. » Geo-campo numérico: associado a medidas por intervalo ou por razão. Associa a cada ponto um valor real. CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 31 Sistemas Geográficos SIGs • Modelos no espaço absoluto: Modelo de geo-objetos Representa o espaço geográfico como uma coleção de entidades distintas e identificáveis, onde cada entidade é definida por uma fronteira fechada. » Ex: um cadastro urbano identifica cada lote como um dado individual, com atributos que o distinguem dos demais. • Modelos no espaço relativo: redes Concebe o espaço geográfico como um conjunto de pontos no espaço (nós), conectados por linhas (arcos), onde tanto os nós quanto os arcos possuem atributos. » Ex: gerenciamento de serviços como água, eletricidade e telefonia, linhas de comunicação e acessibilidade, etc. CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 32 Sistemas Geográficos SIGs Universo estrutural • Definimos tipos de dados necessários para representar modelos do universo formal. • Tópicos: Estruturas de dados vetoriais Vetores e topologia: o caso dos geo-objetos Vetores e topologia: o caso das redes Representação matricial CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 33 Sistemas Geográficos SIGs • Estruturas de dados vetoriais São utilizadas para representar as coordenadas das fronteiras de cada entidade geográfica. Isso é feito através de três formas básicas definidas por suas coordenadas cartesianas. » Pontos: par ordenado (x, y) de coordenadas espaciais. » Linhas: conjunto de pontos conectados. » Áreas (ou polígonos): região do plano limitada por linhas poligonais conectadas. CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 34 Sistemas Geográficos SIGs • Vetores e topologia: o caso dos geo-objetos (“vizinho de”), É útil determinar relações intersecção, e cruzamento. Objetos de área podem ter duas formas diferentes de utilização: como objetos isolados ou objetos adjacentes. como adjacência » Objetos isolados: edificações e piscinas (em SIG urbanos). » Objetos adjacentes: bairros, municípios e outros. Armazenamento das estruturas de dados do tipo polígono no caso de objetos adjacentes: » polígonos sem topologia: guardar as coordenadas de cada objeto isoladamente. » topologia arco-nó-polígono: armazenar cada fronteira comum uma única vez, indicando a que objetos elas estão associadas. CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 35 Sistemas Geográficos SIGs Topologia arco-nó-polígono » » » Requer três listas separadas. Para cada linha, armazenamos os nós inicial e final, permitindo assim que a linha esteja associada a um sentido de percorrimento. Para polígonos, guardamos as linhas que definem sua fronteira. (*) Fonte: [2] CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 36 Sistemas Geográficos SIGs • Vetores e topologia: o caso das redes Objetos de linha podem ter variadas formas de utilização. Analogamente aos objetos de área podemos ter objetos de linha: » Isolados: representação de muros e cercas em mapas urbanos. » Em árvore: representações de rios e seus afluentes, redes de esgotos e drenagem pluvial. » Em rede: redes elétricas, telefônicas e de água. No caso das redes é fundamental armazenar relações de adjacência: utilizamos a topologia arco-nó. » Cada nó é um ponto de intersecção entre duas ou mais linhas. » Nenhuma linha poderá estar desconectada das demais para que a topologia da rede possa ficar totalmente definida. CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 37 Sistemas Geográficos SIGs Hierarquia de classes para estruturas vetoriais: • Relacionamentos de especialização (is-a); • Inclusão de uma instância (part-of); • Inclusão de um conjunto de instâncias (set-of); • Inclusão de uma lista de identificadores de instância (list-of). (*) Fonte: [2] CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 38 Sistemas Geográficos SIGs • Estrutura matricial: O espaço é representado como uma matriz P(m, n) composto de m colunas e n linhas, onde cada célula possui um número de linha, um número de coluna e um valor correspondente ao atributo estudado. Supõe que o espaço pode ser tratado como uma superfície plana, onde cada célula está associada a uma porção do terreno. A resolução do sistema é dada pela relação entre o tamanho da célula no mapa ou documento e a área por ela coberta no terreno. CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 39 Sistemas Geográficos SIGs A estrutura matricial pode ser utilizada para representar diferentes tipos de dados: » Grade regular: representação matricial na qual cada elemento da matriz está associado a um valor numérico. » Matriz temática: representação matricial 2D na qual cada valor da matriz é um código correspondente à uma classe do fenômeno estudado. CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 40 Sistemas Geográficos SIGs Universo de implementação • • No universo de implementação, são tomadas as decisões concretas de programação e que podem admitir número muito grande de variações. Estas decisões podem levar em conta as aplicações às quais o sistema é voltado, a disponibilidade de algoritmos para tratamento de dados geográficos e o desempenho do hardware. CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 41 Sistemas Geográficos SIGs • Operadores sobre dados espaciais Baseados no Modelo de 9 Intersecções de Egenhofer. É definido um conjunto de relacionamentos topológicos (R) entre duas feições geográficas (A e B). Baseia-se na comparação entre o interior de A (A˚), o limite de A (∂A), o exterior de A (A−) com o interior de B (B˚), o limite de B (∂B) e o exterior de B (B−). Essas seis partes de um feição geográfica podem ser combinadas em nove operações: CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 42 Sistemas Geográficos SIGs • Operadores sobre dados espaciais Baseado no modelo das nove intersecções foram definidas algumas operações topológicas entre feições geográficas. Algumas das operações não se aplicam a todos os tipos de geometria. (A – Polígonos, L – Linhas e P – Pontos) • • • • Toca (Touches): Verifica se uma geometria toca a outra em algum ponto (A/A, L/L, L/A, P/A, P/L). Cruza (Crosses): Verifica se uma geometria cruza a outra (P/L, P/A, L/L, L/A). Dentro de (Within): Verifica se uma geometria está dentro de outra (A/A, L/L, A/L, A/P, L/P). Sobrepõe (Overlaps): Verifica se uma geometria sobrepõe a outra (A/A, L/L, P/P). CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 43 Sistemas Geográficos SIGs • Operadores sobre dados espaciais • • • • • Contém (Contains): Verifica se uma geometria contém a outra (A/A, L/L, A/L, L/P, A/P). Disjunto (Disjoint): Verifica se duas geometrias estão separadas (A/A, L/L, A/L, L/P, A/P, P/P). Intersecta (Intersects): Testa se uma geometria intersecta a outra de alguma forma (A/A, L/L, L/P, A/L, A/P, P/P). Igualdade (Equals): Testa se duas feições geográficas são iguais (A/A, L/L, P/P). Relacionamento (Relate): Verifica duas geometrias estão espacialmente relacionadas (algum relacionamento espacial é satisfeito de acordo com a aplicação de algum dos operadores). CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 44 Sistemas Geográficos SIGs • Abordagem prática Comparação dos componentes espaciais de dois SGBDs: • Oracle: Oracle Spatial Sistema comercial • PostgreSQL: PostGIS Sistema de domínio público CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 45 Sistemas Geográficos SIGs • Abordagem prática Oracle Spatial: • Utiliza o modelo objeto-relacional do Oracle. • Permite armazenar, acessar e analisar dados espaciais em um banco de dados Oracle. • Seu modelo de dados consiste em uma estrutura hierárquica de elementos, geometrias e camadas: Camadas: compostas por geometrias. Geometrias: compostas por elementos. Elementos: podem ser do tipo Point, LineString ou Polygon. • Uma geometria pode ser formada por um único elemento ou por um conjunto homogêneo (MultiPoint, MultiLinesString ou MultiPolygon) ou heterogêneo (Collection) de elementos. CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 46 Sistemas Geográficos SIGs • Abordagem prática Oracle Spatial: • Cada geometria é SDO_GEOMETRY. armazenada em um objeto chamado • Este objeto contém a geometria em si, suas coordenadas, e informações sobre seu tipo e projeção. • Em uma tabela espacial, os atributos alfanuméricos da geometria são definidos como colunas de tipos básicos (e.g. VARCHAR2, NUMBER) e a geometria, como uma coluna do tipo SDO_GEOMETRY. CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 47 Sistemas Geográficos SIGs • Abordagem prática PostGIS: • Habilita o servidor de PostgreSQL com capacidades espaciais, permitindo a ele ser usado como um banco de dados espacial para desenvolvimento de aplicações de SIG. • Foi desenvolvido pela Refractions Research Inc como um projeto de pesquisa de código fonte aberto na área de BDs espaciais. • É possível definir os tipos de dados espaciais de acordo com a necessidade do usuário e utilizar a operações espaciais para manipular os dados geográficos. • Possibilita a utilização de operações espaciais que geram outras geometrias: criação de zonas de buffer, união de geometrias, verificação de diferenças, entre outras. CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 48 Sistemas Geográficos SIGs • Resumindo: 1. Extensão de acordo com ISO SQL/MM e OGC Simple Feature Specification for SQL 2. Componente desenvolvido por terceiros mas com total compatibilidade 3. Extensão baseada em OGC Simple Feature Specification for SQL CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 49 Sistemas Geográficos SIGs • Criação de objetos espaciais no Oracle Spatial. SDO_GEOMETRY • CREATE TYPE sdo_geometry AS OBJECT ( SDO_GTYPE NUMBER, SDO_SRID NUMBER, SDO_POINT SDO_POINT_TYPE, SDO_ELEM_INFO SDO_ELEM_INFO_ARRAY, SDO_ORDINATES SDO_ORDINATE_ARRAY); CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 50 Sistemas Geográficos SIGs • Criação de objetos espaciais no Oracle Spatial. SDO_GTYPE: Indica o tipo da geometria. Tem o formato dltt, onde: • d indica o número de dimensões (2, 3, or 4) • l indica o sistema de referência lineal (LRS). Para uma geometria que não seja LRS especificamos 0. • tt indica o tipo de geometria (00 até 07, com 08 até 99 reservadas para uso futuro). dl00 - UNKNOWN_GEOMETRY dl01 - POINT dl02 - LINE or CURVE dl03 - POLYGON dl04 - COLLECTION dl05 - MULTIPOINT dl06 - MULTILINE or MULTICURVE dl07 - MULTIPOLYGON CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 51 Sistemas Geográficos SIGs • Criação de objetos espaciais no Oracle Spatial. SDO_SRID: • É usado para identificar um sistema de coordenadas que será associado com a geometria. Se não for null, deve conter um valor da coluna SRID da tabela SDO_COORD_REF_SYS. SDO_POINT: • CREATE TYPE sdo_point_type AS OBJECT ( X NUMBER, Y NUMBER, Z NUMBER); CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 52 Sistemas Geográficos SIGs • Criação de objetos espaciais no Oracle Spatial. SDO_ELEM_INFO: • CREATE TYPE sdo_elem_info_array AS VARRAY (1048576) of NUMBER; • Ajuda a entender como interpretar os elementos guardados no atributo SDO_ORDINATES. • Tem três elementos: SDO_STARTING_OFFSET: Indica a posição no SDO_ORDINATES array onde começa o elemento. SDO_ETYPE: Ex: 1 para tipo ponto, 2 para linha, SDO_INTERPRETATION: Serve para complementar a informação do tipo » Exemplo: para o caso de uma linha indica se ela é composta por uma seqüência de linhas retas (1) ou de arcos circulares (2). CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 53 Sistemas Geográficos SIGs SDO_ELEM_INFO = (1,1003,1, 19,2003,1) • 19: indica que a especificação do segundo começa na posição 19 do SDO_ORDINATES. • 1003: exterior polygon ring; 2003: interior polygon ring. • 1: polígono simples. SDO_ORDINATES = (2,4, 4,3, 10,3, 13,5, 13,9, 11,13, 5,13, 2,11, 2,4, 7,5, 7,10, 10,10, 10,5, 7,5). CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 54 Sistemas Geográficos SIGs • Criação de objetos espaciais no Oracle Spatial. SDO_ORDINATES: • CREATE TYPE sdo_ordinate_array AS VARRAY (1048576) of NUMBER; • Guarda os valores das coordenadas. CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 55 Sistemas Geográficos SIGs • Criação de objetos espaciais no Oracle Spatial. Exemplo de ponto: SDO_GEOMETRY( 2001, --ponto NULL, --não indica o sistema de coordenadas SDO_POINT_TYPE(76.2681,40.0376,NULL), NULL, NULL) CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 56 Sistemas Geográficos SIGs • Criação de objetos espaciais no Oracle Spatial. Exemplo de linha: SDO_GEOMETRY( 2002, --linha NULL, --não indica o sistema de coordenadas NULL, --não é de tipo ponto SDO_ELEM_INFO_ARRAY(1,2,1), --tipo linha, linhas retas SDO_ORDINATE_ARRAY(1,1, 5,1))); CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 57 Sistemas Geográficos SIGs • Criação de objetos espaciais no Oracle Spatial. Exemplo de polígono (retângulo): SDO_GEOMETRY( 2003,--polígono de duas dimensões NULL, NULL, SDO_ELEM_INFO_ARRAY(1,1003,3), -- um retângulo SDO_ORDINATE_ARRAY(1,1, 5,7) -- coordenada superior direita -- e inferior esquerda CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 58 Sistemas Geográficos SIGs • Criação de objetos espaciais no PostGIS: A especificação OpenGIS define um padrão de objeto espacial de expressão: a forma Well-Known Text (WKT). Essa forma inclui informação sobre o tipo do objeto e as coordenadas de posicionamento do objeto. É uma forma de representação em formato textual de geometrias utilizando uma gramática específica. O WKT é uma cadeia de caracteres composta de palavras chaves que determinam a forma da geometria a ser representada Exemplos: • POINT(0 0) • LINESTRING(0 0,1 1,1 2) • POLYGON((0 0,4 0,4 4,0 4,0 0),(1 1, 2 1, 2 2, 1 2,1 1)) CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 59 Referências • [1] ANATOMIA DE SISTEMAS DE INFORMAÇÃO GEOGRÁFICA – Câmara, Casanova, Hemerly, Magalhães, Medeiros. • [2] Bancos de Dados Geográficos - Câmara, Casanova, Davis, Vinhas, Ribeiro. • [3] GIS: DOS CONCEITOS BÁSICOS AO ESTADO DA ARTE – Davis • [4] Oracle® Spatial User's Guide and Reference 10g Release 2 (10.2) – Chuck Murray • [5] Manual PostGIS da versão 1.2.2SVN CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 60 CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo 61