1
SUMÁRIO Introdução..................... o....................................... .................................. ............................... ............................... .................................. .................................. .................. .. 3
Capí tulo tulo 1 – Conceitos B ásicos sicos de Cartografi Cartografia....... a..................... .............................. .................................. ............................ .......... 4
1.1 – Sistemas Sistemas de Coordenadas..................... Coordenadas............................... ................... .................. ................... .................... .................... .................... .............. .... 6 1.2 – Proje ções Cartográficas. ficas.......... ....................... .............................. ................................ ................................. ................................. ...................... ...... 9
Capí tulo tulo 2 – Conceitos B ásicos da Geoinformação................... o................................... .................................. ........................ ...... 13
2.1 – Dados Espacia Espaciais. is....... ..................... .............................. ............................... ................................ .................................. ................................. .................... ..... 14 2.2 – Representa ção Espacia Espacial.... l............... ........................... .................................. ................................. ............................... ................................ ................ 15 2.3 – Modelando Modelando Dados Espaciais....................... Espaciais....................... ................... .......... ................... .................... .................... .................... ................ ...... 16 2.4 – Modelos de Dados Espaciais..................... Espaciais............................... .................... .................... .................... .................... .................... ................. ....... 17 2.4.1 – Modelos de Campos Campos e Objetos...................... .................... .......... .................... .................... .................... .............. .... 18 2.4.2 – O Modelo Polinomia Polinomial................... l............................ ................... .................... .................... .................... .................... .................... ............ .. 20 2.4.3 – O Modelo Linear Linear Constraints............. Constraints....................... .................... .................... .................... .................... .................... ............... ..... 21
Capí tulo tulo 3 – Análise Espacial Espacial de Dados........ Dados........................ ................................ ............................... ............................... ..................... ..... 22
3.1 – Tipos de Dados em An álise lise Espacia Espacial... l............. ........................... ................................. ................................ .............................. .............. 23 3.2 – Modelos de Infer ência.. ncia........... ....................... .............................. ................................. ................................. ................................ ........................ ........ 24 3.2.1 – Infer ência ncia Booleana Booleana....... ...................... ................................ ................................. ................................ ................................ ..................... ..... 24 3.2.2 – Mapas de Evid ência Binária..... ria.................. .............................. ................................. ................................ ............................. ............. 25
Capí tulo tulo 4 – Padrões para Sistemas de Informa ção Geográfica.......... fica.......................... ............................. ............. 28
4.1 – Open Geoespatial Geoespatial Consortium – OGC.......................... OGC................. ................... ................... .................. ................... ................... ........... 28 4.2 – O Modelo de Refer ência ncia OGC................ OGC................................ ................................. ................................. ................................ .................... .... 29 4.2.1 – OWS Service Service Framewo Framework...... rk...................... ................................ ................................ ............................... ............................. .............. 30
2
4.2.2 – Codificações OGC................... OGC................................... ................................. ................................. ................................ .......................... .......... 31 4.2.3 – Representa ções Well-Kn Well-Know ow Text e Well-Know Well-Know Binary.................... Binary.............................. ................... ........... 31 4.2.4 – Plataforma para Servi ços Web.... Web............... ........................... ................................ ................................. ............................. ............ 33 4.2.5 – Padr ões OGC........... OGC........................... ............................... ............................... ................................ .................................. ........................... ......... 34 4.2.6 – Simple Simple Features specifica specification tion – SFS............... SFS......................... ................... .................. ................... .................... ............... ..... 35
Capí tulo tulo 5 – Manipulando Dados Dados Espaciais com com PostgreSLQ PostgreSLQ e PostGIS.............. PostGIS....................... ........... 40
5.1 – O Sistema Sistema Gerenciador Gerenciador de Banco de Dados Dados PostgreSQL..................... .................... .......... .............. .... 40 5.2 – PostGIS.............. PostGIS............................. ............................... ................................ .................................. ................................. ............................... ......................... ......... 40 5.2.1 – Instala çao do PostGIS................. PostGIS.................................. ................................. ................................ ................................ ...................... ...... 43 5.2.2 – Cria ção de Banco de Dados Espacial..................... Espacial............................... .................... .................... .................... ............... ..... 45 5..2.3 – Criação de Tabelas Tabelas Espaciais..................... Espaciais............................... ................... .................. ................... .................... .................. ........ 47 5.2.4 – Inser ção de Dados Espacia Espaciais. is.......... ....................... .............................. ................................ ................................ ....................... ....... 48 5.2.5 – Indice Indicess Espacia Espaciais. is........ ..................... .............................. ................................ ................................ ................................. .......................... ......... 50 5.2.6 – Consultas Consultas Espaciais....................... Espaciais....................... .................... .......... .................... ................... ................... ................... .................. ........... .. 51
6 – Integração do PostgreSQL/PostGIS em Sistemas de Informa ção Geográfica.. fica...... ........ ...... 60
6.1 – Convers ão de Arquivos Arquivos Shapefile Shapefile................... ............................ .................. ................... .................... .................... ................... .............. ..... 60 6.2 – Servido Servidores res de Mapas... Mapas.............. ........................... ................................. ................................. ................................ ................................ ..................... ..... 62 6.2.1 – GeoServe GeoServer......... r......................... ................................. ................................. ................................ ................................ ................................ ................ 63 6.2.2 – MapServe MapServer......... r......................... ............................... ............................... .................................. .................................. ............................... ............... 63 6.3 – SIG Desktop........ Desktop........................ ................................ ................................. ................................. ................................ ................................ ....................... ....... 64 6.3.1 – Quantum Quantum GIS............... GIS................................. ................................. ............................... ................................ .................................. ..................... ... 64 6.3.2 – uDig... uDig............... ............................. ................................. ................................ ................................ ................................. ................................. .................. .. 65 6.3.3 – gvSIG.......... gvSIG.......................... ................................. ................................. ................................ ................................ ................................. ..................... .... 66 6.3.4 – TerraVie TerraView..... w................ ............................. .................................. ................................ ............................... ................................. ......................... ....... 66 6.4 – phpPgGIS. phpPgGIS........... .......................... ................................ ................................. ................................. ................................ ................................ ........................ ........ 67
2
4.2.2 – Codificações OGC................... OGC................................... ................................. ................................. ................................ .......................... .......... 31 4.2.3 – Representa ções Well-Kn Well-Know ow Text e Well-Know Well-Know Binary.................... Binary.............................. ................... ........... 31 4.2.4 – Plataforma para Servi ços Web.... Web............... ........................... ................................ ................................. ............................. ............ 33 4.2.5 – Padr ões OGC........... OGC........................... ............................... ............................... ................................ .................................. ........................... ......... 34 4.2.6 – Simple Simple Features specifica specification tion – SFS............... SFS......................... ................... .................. ................... .................... ............... ..... 35
Capí tulo tulo 5 – Manipulando Dados Dados Espaciais com com PostgreSLQ PostgreSLQ e PostGIS.............. PostGIS....................... ........... 40
5.1 – O Sistema Sistema Gerenciador Gerenciador de Banco de Dados Dados PostgreSQL..................... .................... .......... .............. .... 40 5.2 – PostGIS.............. PostGIS............................. ............................... ................................ .................................. ................................. ............................... ......................... ......... 40 5.2.1 – Instala çao do PostGIS................. PostGIS.................................. ................................. ................................ ................................ ...................... ...... 43 5.2.2 – Cria ção de Banco de Dados Espacial..................... Espacial............................... .................... .................... .................... ............... ..... 45 5..2.3 – Criação de Tabelas Tabelas Espaciais..................... Espaciais............................... ................... .................. ................... .................... .................. ........ 47 5.2.4 – Inser ção de Dados Espacia Espaciais. is.......... ....................... .............................. ................................ ................................ ....................... ....... 48 5.2.5 – Indice Indicess Espacia Espaciais. is........ ..................... .............................. ................................ ................................ ................................. .......................... ......... 50 5.2.6 – Consultas Consultas Espaciais....................... Espaciais....................... .................... .......... .................... ................... ................... ................... .................. ........... .. 51
6 – Integração do PostgreSQL/PostGIS em Sistemas de Informa ção Geográfica.. fica...... ........ ...... 60
6.1 – Convers ão de Arquivos Arquivos Shapefile Shapefile................... ............................ .................. ................... .................... .................... ................... .............. ..... 60 6.2 – Servido Servidores res de Mapas... Mapas.............. ........................... ................................. ................................. ................................ ................................ ..................... ..... 62 6.2.1 – GeoServe GeoServer......... r......................... ................................. ................................. ................................ ................................ ................................ ................ 63 6.2.2 – MapServe MapServer......... r......................... ............................... ............................... .................................. .................................. ............................... ............... 63 6.3 – SIG Desktop........ Desktop........................ ................................ ................................. ................................. ................................ ................................ ....................... ....... 64 6.3.1 – Quantum Quantum GIS............... GIS................................. ................................. ............................... ................................ .................................. ..................... ... 64 6.3.2 – uDig... uDig............... ............................. ................................. ................................ ................................ ................................. ................................. .................. .. 65 6.3.3 – gvSIG.......... gvSIG.......................... ................................. ................................. ................................ ................................ ................................. ..................... .... 66 6.3.4 – TerraVie TerraView..... w................ ............................. .................................. ................................ ............................... ................................. ......................... ....... 66 6.4 – phpPgGIS. phpPgGIS........... .......................... ................................ ................................. ................................. ................................ ................................ ........................ ........ 67
3
Introdução As ferra ferrame ment ntas as livr livree e de c ódigo digo abert aberto o vem vem sendo sendo utili utiliza zada dass em dive diversa rsass áreas reas do conhecimento para a resolu ção de problemas diversos. Na área de geoprocessamento, o not ável desenvo desenvolvi lvime mento nto destas destas ferrame ferramentas ntas tornaram tornaram possí veis veis sua aplica aplicação nos dive diverso rsoss proces processos sos inerentes ao tratamento dos dados espaciais. Relativamente ao armazenamento dos dados espaciais destaca-se a utiliza ção do Sistema Gerenciador de Banco de Dados PostgreSQL, juntamente com a extens ão espac espacial ial PostGIS. PostGIS. A utilidade do do PostgreSQL com PostGIS pode ir al ém do simple simpless armazena armazenamento mento de dados. As inúmeras funções suportada suportadass pelo pelo PostGIS permitem permitem realizar realizar,, diretam diretamente ente,, an álise espaciais dos dados. A conformidade com padr ões OGC torna esta solu ção extremamente flexí vel vel e interoperável. Nesta apostila ser á discutido o uso do PostgreSQL/PostGIS no universo da geoinforma ção. O objetivo é transmitir conhecimentos básicos que facilitem o entendimento dos problemas inerentes à área e visualizar oportunidades do uso da tecnologia na resolu ção de alguns destes problemas. A apostila est á organiza organizada da da seguin seguinte te manei maneira: ra: os prime primeiros iros tr ês capí tulos tulos apresentam, respectivamente, conceitos relativos à cartografia, geoinformação e an álise espacial. Os conceitos apresentados nos cap í tulos tulos mencionados s ão importantes para familiarizar o leitor com o universo de discurs discurso o em quest quest ão. Na sequ sequência ncia,, os padr padr ões para Sistemas de Informa ção Geogr áficas são discutidos no cap í tulo tulo 4. Nos cap í tulos t ulos 5 e 6 s ão apresentados, respectivamente PostgreSQL/PostGIS e sua integra ção em sistemas SIG. Na parte final da apostila s ão indicadas as referências utilizadas para a elabora ção deste material. Espera-se que este material seja utilizado n ão como recurso único, mas sim como o ponto de partida para estudos aprofundados em rela ção aos temas abrangidos.
O autor.
4
Capí tulo
1 Conceitos Básicos de Cartografia Encontramos em (IBGE, 2008) um conceito para cartografia, estabelecido pela Associa ção Cartográfica Internacional - ACI, e atualmente aceito sem maiores contesta ções. Nesta defini ção a cartografia apresenta-se como:
O conjunto de estudos e operações cient í ficas, t é cnicas e art ís ticas que, tendo por base os resultados de observa ções diretas ou da an álise de documentação, se voltam para a elabora ção de mapas, cartas e outras formas de expressão ou representação de objetos, elementos, fen ômenos e ambientes f ís icos e socioecon ômicos, bem como a sua utilização (IBGE, 1998). Devido à complexidade de se trabalhar com a forma real da Terra (vista do espa ço, a Terra assemelha-se a uma esfera com p ólos achatados), os cart ógrafos aproximam sua superf íc ie para um modelo do globo terrestre (C ÂMARA et al, 1996). Ainda segundo o citado autor, este processo de aproximação é feito da seguinte maneira: Inicialmente se constr ói um geóide, resultante da medição do ní vel dos oceanos; em seguida, aproxima-se o ge óide por um elipsóide de revolução (que é um sólido gerado pela rotação de uma elipse em torno do eixo meno dos pólos), mais regular; finalmente, pode-se considerar o pr ó prio elipsóide ou transformá-lo em uma esfera com a mesma superf í cie, gerando ent ão o globo terrestre (CÂMARA et al, 1996).
Figura 1: Comparativo entre as formas do geóide, esferóide e elips óide (BRANDALIZE,2008 )
5
A figura 1 acima ilustra o comparativo entre as formas do ge óide, esferóide e elipsóide. Semelhantemente, a figura 2 tamb ém apresenta um comparativo, desta vez considerando os modelos terrestres e as respectivas superf íc ies: elipsoidal, topogr áfica e geoidal
Figura 2: Comparativo entre as superfí cies elipsoidal, geoidal e topográfica.
Estudos geod ésicos apresentam valores diferentes para os elementos de um elips óide (raio do equador, raio polar e coeficiente de achatamento); cada regi ão deve adotar como refer ência o elipsóide mais indicado (C ÂMARA et al, 1996). Segundo Câmara et al (1996) um datum um ponto onde a superf íc ie do elipsóide de referência toca a Terra, sendo caracterizado a partir de uma superf íc ie de refer ência (datum horizontal) e de uma superf íc ie de ní vel (datum vertical). Duarte (2006) afirma que todo mapa é uma representação esquemática e reduzida da superf íc ie terrestre, sendo esta redu ção feita segunda determinada propor ção. Deste modo, o autor afirma que escala é a proporção, mostrada de forma numérica ou gráfica, entre o desenho e a superf íc ie real. Numa outra definição para o termo escala, C âmara et al (1996) afirma que refere-se à relação entre as dimensões dos elementos representados em um mapa e a grandeza correspondente, medida sobre a superf í cie da Terra. A escala pode ser num érica ou gráfica. A escala numérica indica a relação entre os comprimentos de uma linha na carta e o correspondente comprimento no terreno, em forma de fração com a unidade para numerador (IBGE, 1998). Abaixo, s ão indicados exemplos de escalas numéricas:
E =
1 10 X
E =
1 25.000
E = 1 : 25.000
A escala gr áfica é a representação gráfica de várias distâncias do terreno sobre uma linha reta graduada (IBGE, 1998). A figura 3 a seguir demonstra um exemplo de escala gr áfica.
6
Figura 3: Exemplo de escala gr áfica (IBGE, 1998).
Duarte (2006) discute as vantagens de utilizar a escala num érica: Uma escala numé rica tem a grande vantagem de informar imediatamente o número de reduções que a superf íc ie real sofreu. Por sua vez é impr ó pria para reproduções de mapas com base em processos fotocopiadores, quando há ampliação ou redução do original (DUARTE, 2006).
Por outro lado, Duarte (2006) tamb ém apresenta vantagens em rela ção à utilização da escala: A grande vantagem de uma escala gr á fica est á na sua utilizada quando são feitas reduções ou ampliações por processo mec ânicos fotocopiadores. Em tais casos, deve-se eliminar a escala num é rica e registrar uma gr á fica. Quando for feita a ampliação ou redução do original, as dimensões do gr á fico sofrer ão as mesmas alterações de tamanho dos mapas, mantendose a proporcionalidade entre todas as dimens ões (DUARTE, 2006,).
Outro conceito discutido por Duarte (2006) em sua obra refere-se às express ões escala grande e escala pequena. O autor afirma que um n í vel maior de precis ão indica uma escala grande e o contrário indica uma escala pequena. Segundo Duarte (2006) alguns autores indicam alguns limites, a saber:
•
•
•
Escalas pequenas: menores que 1:500.000; Escalas médias: aquelas um pouco maiores que 1:500.000; Escalas grandes: aquelas bem maiores que 1:500.000.
1.1 Sistemas de Coordenadas Os sistemas de coordenadas dividem-se em dois grandes grupos, a saber: sistema de coordenadas geogr áficas ou terrestres e sistema de coordenadas planas ou cartesianas. No sistema de coordenadas geogr áficas ou terrestres cada ponto da superf íc ie terrestre é localizado na interse ção de um meridiano com um paralelo (C ÂMARA et al, 1996). Conforme (IBGE, 1998), os sistemas de coordenadas s ão imprescindí veis para a representação de pontos:
7
Os sistemas de coordenadas s ão necessários para expressar a posi ção de pontos sobre uma superf íc ie, seja ela um elipsóide, esfera ou um plano. É com base em determinados sistemas de coordenadas que descrevemos geometricamente a superf íc ie terrestre. (...) Para amarrar a posi ção de um ponto no espaço necessitamos ainda complementar as coordenadas bidimensionais que apresentamos no par ágrafo anterior, com uma terceira coordenada que é denominada altitude (IBGE, 1998)
Ainda segundo IBGE (1998), meridianos s ão cí rculos máximos que, em conseqüência, cortam a Terra em duas partes iguais de p ólo a pólo. Sendo assim, todos os meridianos se cruzam entre si, em ambos os polos. O meridiano de origem é o de Greenwich (0º), conforme figura 4.
Figura 4. Meridiano princial (IBGE, 1998).
Paralelos são cí rculos que cruzam os meridianos perpendicularmente, isto é, em ângulos retos. Apenas um é um cí rculo máximo, o Equador (0º). Os outros, tanto no hemisf ério Norte quanto no hemisf ério Sul, vão diminuindo de tamanho à proporção que se afastam do Equador, at é se transformarem em cada p ólo, num ponto (90º), conforme figura 5 abaixo (IBGE, 1998).
Figura 5: Paralelo do Equador (IBGE, 1998).
8
A latitude geogr áfica (φ) corresponde ao arco contado sobre o meridiano do lugar e que vai do Equador at é o lugar considerado. A latitude quando medida no sentido do polo Norte é chamada Latitude Norte ou Positiva. Quando medida no sentido Sul é chamada Latitude Sul ou Negativa. Sua variação é de: 0º a 90º N ou 0º a + 90º; 0º a 90º S ou 0º à -90º (IBGE, 1998). A longitude geogr áfica (λ ) é o arco contado sobre o Equador e que vai de Greenwich at é o meridiano do referido lugar. A longitude pode ser contada no sentido Oeste, quando é chamada longitude oeste de Greenwich (W Gr.) ou negativa. Se contada no sentido Este, é chamada longitude este de Greenwich (E Gr.) ou positiva. A Longitude varia de: 0o à 180o W Gr. ou 0o à - 180o; 0o à 180o E Gr. ou 0o à + 180o (IBGE, 1998). IBGE (1998) apresenta ainda defini ções para latitude geod ésica e longitude geod ésica. Latitude geodésica (φ) é o ângulo formado pela normal ao elips óide de um determinado ponto e o plano do Equador. Longitude geod ésica (λ ) é o ângulo formado pelo plano meridiano do lugar e o plano meridiano tomado como origem . As figuras 6 e 7, respectivamente, ilustram os ângulos de latitude e a longitude.
Figura 6: Latitude de P (φ)(IBGE, 1998).
Figura 7: Longititude de P (λ)(IBGE, 1998).
9
1.2 Projeções Cartogr áficas Todos os mapas s ão representações aproximadas da superf íc ie terrestre. Isto ocorre porque não se pode passar de uma superf í cie curva para uma superf íc ie plana sem que haja deforma ções. Por isso os mapas preservam certas caracter í sticas ao mesmo tempo em que alteram outras. (CÂMARA et al, 1996). O autor explica que existem diversas proje ções, cada qual com propriedades que podem minimizam certas deforma ções ao mesmo tempo que conservam ângulos e proporcionalidades: H á um grande número de projeções cartogr á ficas, uma vez que há uma variedade de modos de projetar em um plano os objetos geogr á ficos que caracterizam a superf íc ie terrestre. No entanto, é impossí vel se fazer uma có pia plana da superf íc ie do globo terrestre sem desconfigur á-la ou alter á -la - o que d á origem à noção de grau de deforma ção de uma projeção. A deformação é nula nos locais onde a superf íc ie toca o globo. Dependendo do que se pretende analisar no mapa, cada tipo de proje ção minimiza um certo tipo de deformação, por exemplo, buscando conserva ção dos ângulos ou uma proporcionalidade das superf íc ies (CÂMARA et al, 1996).
A tabela 1 abaixo apresenta um classifica ção das projeções cartogr áficas, segundo (IBGE, 1998). Tabela 1: Classificação das Projeções Cartográficas (IBGE, 1998) Forma de Classificação
Classe
Quanto ao método: Geométricas Anal í ticas Quanto
à superf íc ie de projeção: Planas ou azimutais Cônicas Cilí ndricas Poli-superficiais
Quanto às propriedades: Equidistantes Conformes Equivalentes Afiláticas
10
Tabela 1 (continuação): Classificação das Projeções Cartográficas Forma de Classificação
Classe
Quanto ao tipo de contato entre as superf í cies de projeção e referências: Tangentes Secantes
Com objetivo de ilustrar diferen ças entre os diversos tipos, as figuras 8, 9 e 10 a seguir apresentam algumas das projeções cartográficas classificadas de acordo com a superf íc ie de projeção, as quais s ão brevemente explicadas, conforme conceitos apresentados por Brandalize (2008). Na projeção cônica ilustrada na figura 8 os meridianos e paralelos geogr áficos são projetados em um cone tangente, ou secante, à superf íc ie de referência, desenvolvendo, a seguir, o cone num plano.
Figura 8: Projeção cônica (BRANDALIZE,2008 ).
A figura 9 abaixo ilustra a proje ção cí lí ndrica. Neste caso, a proje ção dos meridianos e paralelos geogr áficos é feita num cilindro tangente, ou secante, à superf íc ie de referência, desenvolvendo, a seguir, o cilindro num plano.
11
Figura 9: Projeção cilí ndrica (BRANDALIZE,2008 ).
A figura 10 a seguir ilusta a proje ção plana ou azimutal. Esta proje ção num plano tangente ou secante a um ponto na superf í cie de referência.
é construí da com base
Figura 10: Projeção plana ou azimutal (BRANDALIZE,2008 ).
A escolha de uma proje ção deve se basear na precis ão desejada, no impacto sobre o que se pretende analisar e no tipo de dado dispon í v el . Câmara et al (1996) apresentou uma análise comparativa das proje ções, conforme demonstrado na tabela 2 abaixo.
12
Tabela 2: Comparação entre Projeções Cartográficas (CÂMARA et al, 1996). Projeção
Classificação
Aplicações
Caracterí sticas da Projeção
Albers
Cônica Equivalente
Cartas gerais e geogr áficas.
Preserva áreas; garante precis ão de escala; substitui com vantagens todas as outras cônicas equivalentes.
Bipolar
Cônica Conforme
Bases cartogr áfica e topográfica confiáveis do continente americano.
Preserva ângulos; é uma adaptação da Cônica de Lambert.
Cilí ndrica Equidistante
Cilí ndrica Equidistante
Mapas mundi; mapas em escalas pequenas; trabalhos computacionais.
Altera áreas; altera ângulos.
Gauss
Cilí ndrica Conforme
Cartas topográficas; mapeamento básico em escala m édia e grande.
Altera áreas (porém as distor ções n ão ultrapassam 0,5%); preserva ângulos; similar à UTM com defasagem de 3 ° de longitude entre os meridianos centrais.
Esterográfica Polar
Plana Conforme
Mapeamento de regiões polares; mapeamento da Lua, Marte e Mercúrio.
Preserva ângulos; preserva forma de pequenas áreas; oferece distorção de escalas.
Lambert
Cônica Conforme
Cartas gerais e geogr áficas; cartas militares; cartas aeron áuticas do mundo.
Preserva ângulos; mantém a forma de áreas pequenas praticamente inalterada; oferece grande precisão de escala.
Lambert Milion
Cilí ndrica Conforme
Atlas; cartas ao milion ésimo.
Preserva ângulos; mantém a forma de áreas pequenas pratcamente inalterada; oferece grande precisão de escala.
Mercator
Cilí ndrica Conforme
Cartas náuticas; cartas geológicas/magnéticas; mapas mundi.
Preserva os ângulos; mantém a forma de áreas pequenas celestes/meteorol ógicas.
Miller
Cilí ndrica Equidistante
Mapas mundi; mapas em escalas pequenas.
Altera os ângulos; altera a área.
Policônica
Cônica Equidistante
Mapeamento tem ático em escalas pequenas.
Preserva distâncias; altera áreas; altera ângulos; substituí da por UTM.
UTM
Cilí ndrica Conforme
Mapeamento básico em escalas médias e grandes; cartas topográficas.
Preserva ângulos; altera áreas (porém as distorções n ão ultrapassam 0,5%).
13
Capí tulo
2 Conceitos Básicos de Geoinformação A geomática ou geoinformática é uma disciplina cientí f ica e técnica que visa resolver problemas do mundo real atrav és da informação geográfica, isto é, informação a respeito dos fenômenos implí cita ou explicitamente associados com uma localiza ção relativa a Terra (HAJLTSON et al, 1997). Conforme a defini ção da International Organization For Standardization (1998), a geom ática é uma disciplina que se refere à coleta, distribuição, armazenamento, an álise, processamento e apresenta ção de dados geogr áficos ou informação geográfica. Segundo (CÂMARA et al, 1996) o termo geoprocessamento denota a disciplina do conhecimento que utiliza t écnicas matemáticas e computacionais para o tratamento da informa ção geográfica. Este tratamento é realizado mediante ferramentas pr óprias desta tecnologia, que s ão os chamados Sistemas de Informa ção Geográfica – SIG. Os Sistemas de Informa ções Geogr áficas - SIGs, neste contexto constituem-se como uma ferramenta de geomática que lidam com informação geogr áfica na forma de dados geogr áficos. Os SIGs são sistemas computacionais utilizados para o gerenciamento de dados espaciais (BONHANCARTER, 1994). Os SIGs não podem ser diretamente aplicados aos dados do mundo real. A utiliza ção de sistemas informatizados para tratar da informa ção espacial pressup õe a representa ção do mundo real em um sistema computacional. Segundo C âmara et al (1996): Trabalhar com geoinforma ção significa, antes de tudo, utilizar computadores como instrumentos de representa ção de dados espacialmente referenciados. Deste modo, o problema fundamental da Ci ência da Geoinformação é o estudo e a implementação de diferentes formas de representa ção computacional do espaço geogr á fico. (CAMARA et al, 1996).
Se pretendêssemos representar precisamente todos os dados descritivos do mundo real, necessitarí amos de um imenso banco de dados para conter tais dados. Como afirma C âmara et al (1996) as variações geográficas do mundo real s ão infinitamente complexas. Quanto mais pr óximo está o observador mais detalhes podem ser vistos. Atrav és de abstrações e generalizações devemos reduzir o volume dos dados a um n úmero finito, para que possamos manipula-los, contando com os recursos computacionais atualmente dispon í veis.
14
2.1 Dados Espaciais Dados podem ser definidos como fatos verific áveis sobre o mundo real. Informa ção consiste nos dados organizados para revelar padr ões, e facilitar a busca (BONHAM-CARTER, 1994). Conforme Câmara et al (1996) um dado espacial é qualquer tipo de dado que descreve fen ômenos aos quais esteja associada alguma dimens ão espacial. Dados geogr áficos, ou georeferidos, s ão dados espaciais em que a dimens ão espacial est á associada à sua localização na superf íc ie da terra, num determinado instante ou per í odo de tempo. Outra definição de dados espaciais é apresentada por Samet (1996), como sendo o termo usado para descrever dados pertencentes ao espa ço ocupados por objetos em um banco de dados. Estes dados s ão geométricos e variados, e consistem de pontos, linhas, ret ângulos, polí gonos, superf íc ies, volumes, bem como tempo, e dados de dimens ões mais elevadas. Como exemplos de dados espaciais podemos citar cidades, rios, estradas, estados, área de cobertura de colheita, escalas de montanha, etc. Os dados geogr áficos possuem tr ês caracterí sticas fundamentais: caracter í sticas espaciais, não-espaciais e temporais. As caracter í sticas espaciais informam a posi ção geogr áfica do fenômeno e sua geometria. As caracter í sticas não-espaciais descrevem o fen ômeno e as caracter í sticas temporais informam o tempo de validade dos dados geogr áficos e suas varia ções sobre o tempo (BORGES, 1997). Outra particularidade sobre os dados espaciais é que eles podem ser classificados em discretos ou cont í nuos (PASSOS, 1996). Dados espaciais discretos, como pontos em um espa ço multidimensional ou instância especí fica do tempo por exemplo, podem ser modelados usando técnicas tradicionais de Sistemas Gerenciadores de Bancos de Dados (SGBD) relacionais (PASSOS, 1996) . Os valores de coordenadas de um ponto ou o instante de tempo podem ser tratados como atributos adicionais em uma tupla de um banco de dados. Em contrapartida, dados como linhas, regiões e intervalos de tempo, s ão classificados como cont í nuos. Os dados cont í nuos são aqueles que aparecem ao longo de uma regi ão no espa ço ou tempo. Neste caso, os valores dos atributos se estendem a mais que um ponto ou uma instancia de tempo. Freqüentemente encontraremos dados espaciais juntos com atributos ou dados n ão espaciais. Os dados n ão-espaciais fornecem informações necess árias à descrição e entendimento do fen ômeno. Uma forma de jun ção de dados espaciais e n ão-espaciais pode ser conseguida atrav és da utilização de banco de dados espaciais.
Banco de dados espaciais facilitam o armazenamento e processamento eficiente da informação espacial e n ão espacial. Tais bases de dados est ão encontrando uso crescente nas aplicações que envolvam a utiliza ção de dados e informa ção espacial, tais como a monitora ção ambiental, o planejamento urbano, a ger ência de recursos, e nos Sistemas de Informação Geográficos.
15
2.2 Representação Espacial A representação espacial de uma entidade geogr áfica é a descrição da sua forma geom étrica associada à posição geográfica (BORGES, 1997). Conforme Samet (1996), a quest ão chave na construção de um SGBD espacial é decidir como integrar as representa ções de dados espaciais e dados não espaciais. Existem muitas maneiras de representa ção e organiza ção de objetos espaciais dentro de um banco de dados espacial (AREF et al, 1997). Uma forma é representar um objeto espacial somente por uma entidade dentro de uma estrutura de dados. Uma forma alternativa é representar o objeto espacial por mais de uma entidade dentro de uma estrutura de dados, atrav és do particionamento do objeto espacial em uma cole ção de polí gonos convexos, uma cole ção de blocos quadrados, ou uma coleção de ret ângulos (AREF et al, 1997). Em algumas destas estruturas de dados o objeto espacial é representado pela sua região interna., isto é, baseada na ocupa ção espacial do objeto. Como exemplo de estruturas que fazem uso desta representa ção temos a regi ão quadtree. Existem diversas vantagens na utiliza ção de métodos de acessos que s ão baseados na ocupação do espa ço (SAMET, 1996). Representa ções de dados espaciais que s ão baseadas neste método são muito apropriadas para uma ampla variedade de aplica ções intensivas de dados.
A fim de poder tratar de consultas de proximidade os dados devem ser classificados. No caso de dados espaciais, a classifica ção deve ser baseada em todas as chaves espaciais, significando que, ao contrário dos sistemas de ger ência convencionais de base de dados, a classifica ção está baseada no espaço ocupado pelos dados. Tais t écnicas são conhecidas como m étodos de indexa ção espacial (BRABEC et al, 1998). Uma abordagem para representa ção dos dados espaciais é separar estruturalmente os dados espaciais dos dados n ão espaciais mantendo ligações apropriadas entre os dois. Neste caso, as operações espaciais s ão executadas diretamente nas estruturas de dados espaciais. Isto fornece a liberdade para escolher uma estrutura espacial mais apropriada do que a estrutura n ão espacial imposta como uma base de dados relacional, por exemplo. De acordo com Samet (1996) n ós necessitamos diferentes representa ções para dados espaciais. Um caminho para superar estes problemas é usar estruturas de dados que s ão baseadas na ocupação do espa ço. Métodos de ocupa ção espacial decomp õem o espa ço em regiões chamadas buckets. Alguns métodos são baseados em decomposi ção regulares. O espa ço pode ser decomposto em blocos de tamanho uniforme ou adaptar a decomposi ção à distribuição dos dados, por exemplo numa abordagem baseada em quadtree. Neste caso, as larguras dos blocos s ão restringidas para ser uma potência de dois, e suas posi ções s ão restringidas também.
16
A grade uniforme é ideal para dados uniformemente distribu í dos, enquanto que abordagens baseadas em quadtree servem para dados arbitrariamente distribu í dos. Geralmente os dados espaciais não são distribuí dos uniformemente, portanto a abordagem de decomposi ção regular baseada em quadtree é mais flexí vel (BUYANOVSKY et al, 2000). Segundo Samet (1996) o inconveniente de m étodos como quadtree é sua sensibilidade a posicionamento no sentido de que a coloca ção dos objetos relativo às linhas da decomposi ção do espaço em que s ão encaixados afeta seus custos do armazenamento e a quantidade de decomposi ção que ocorre. Isto é superado usando uma adapta ção que decomp õe um bloco somente se contem mais do que n objetos.
2.3 Modelando Dados Espaciais A modelagem de dados espaciais apresenta diferen ça em relação à modelagem de dados convencionais. Segundo Passos (1996), a modelagem de dados espaciais difere da modelagem convencional pela necessidade da caracteriza ção do domí nio espacial dos objetos e relacionamento a serem analisados pelo sistema. Conforme Almeida (1999), as complexas defini ções espaciais tornam dif íc il a modelagem, uma vez que esta é dirigida não apenas pelas necessidades do usu ário, mas também pela disponibilidade dos dados e suas fontes de capta ção, sem contar as restri ções impostas pelos SIGs adotados. Um modelo de dado, conforme defini ção de Ciferri (1995), é uma coleção de ferramentas conceituais para descrição dos dados, dos relacionamentos entre os dados e das restri ções de consistência. O modelo de dados deve produzir uma vis ão abstrata da realidade, atrav és de uma definição formal da representa ção das informações e operações de manipula ções permitidas. O modelo mais utilizado comercialmente é o modelo relacional, onde o banco de dados é representado como um conjunto de tabelas (rela ções), em que cada tabela é composta por linhas (tuplas) e colunas (atributos). Entretanto, existe consenso de que as tradicionais t écnicas de modelagem n ão são adequadas para representar as informações geográficas. De acordo com Borges (1997), apesar de toda expressividade, as dificuldades surgem devido ao fato de que as informa ções geográficas precisam ser consideradas com respeito à localização, o tempo de observação e à sua precisão de obtenção/representação. A modelagem de dados espaciais consiste na formula ção de um conjunto adequado de abstra ções para a representa ção da realidade geográfica no banco de dados, e na defini ção de manipulação e regras de integridade. Consistindo-se, assim, numa tarefa complexa, uma vez que a representação do mundo real envolve a discretiza ção do espa ço geogr áfico (BORGES, 1997). Os fatores envolvidos com esta discretiza ção, conforme Borges (1997) s ão:
17
•
•
•
•
•
A transcrição da informação geográfica em unidades l ógicas de dados: por maior que seja o ní vel de abstra ção utilizado, a realidade é modelada através de conceitos geom étricos. Para que esses conceitos sejam implementados em computadores precisam ser formalizados, sendo necess ário um maior número de opera ções apropriadas, as quais s ão independentes da implementa ção; A forma como as pessoas percebem o espa ço: dependendo do observador, da sua experiência e da sua necessidade espec í fica, uma mesma entidade geogr áfica pode ser percebida de diversas formas, al ém de que as entidades geogr áficas podem ser representadas de diversas formas, dependendo da escala utilizada; Natureza diversificada dos dados geogr áficos: além dos dados geogr áficos possuí rem geometria, localização no espa ço, informações associadas e caracter í sticas temporais, eles ainda possuem origens distintas; Existência de relações espaciais: s ão abstrações que ajudam a compreender como no mundo real os objetos relacionam uns com os outros; Coexistência de entidades essenciais ao processamento e entidades cartogr áficas: as entidades cartogr áficas representam a vis ão do mundo atrav és de objetos lineares n ão relacionados, ou seja, sem comprometimento com o processamento.
Nos primeiros modelos dados espaciais, o usu ário era forçado a adequar os fen ômenos espaciais às estruturas dispon í veis no software a ser utilizado (ALMEIDA, 1999). Através de pesquisas, desenvolvimento de disserta ções de mestrado e teses de doutorado, foram desenvolvidos diversos estudos relacionados à modelagem de dados espaciais. A seguir discutiremos alguns modelos.
2.4 Modelos de Dados Espaciais De acordo com Paredaens et al (1995), quatro caracter í sticas principais distinguem os modelos de dados espaciais dos modelos cl ássicos:
•
•
•
Modelos de dados espaciais s ão usados para representar informa ções sobre o espa ço real n-dimensional Rn. O espa ço é infinitivo, como um n ão enumerável, conjunto de pontos. Geralmente, a informação que nós desejamos representar é naturalmente infinita. Isto nos impede de usar modelos de dados extensionais. Diferentes t écnicas são usadas em modelos de dados espaciais para representa ção desta informação infinita. O modelo de dados que ser á usado em um banco de dados espaciais em particular depende das operações que devam ser definidas e da efici ência necess ária para a implementação; O aspecto intencional dos modelos de dados espaciais tem uma influ ência particular nas operações, aquelas que s ão definidas com o modelo bem como aquelas que s ão definidas pelo usuário: o modelo de dados tem que ser fechado para todas as opera ções. Uma vez que aplicações de geom ática exijam, tipicamente, um rico conjunto de operações, a propriedade acima pode ser dif íc il de ser cumprida; As informações que s ão representadas em aplicações de geomática geralmente não possuem as propriedades geom étricas elegantes das estruturas criadas pelos homens, mas
18
•
é na maior parte a visualiza ção de um fen ômeno simetricamente prosseguido da natureza. Isto induz que a informa ção intencional é na maioria vasta, e que n ós necessitamos de algoritmos particulares para implementação de estruturas de dados. Estes algoritmos s ão baseados em propriedades topol ógicas, geom étricas e algébricas; A noção de genericidade parece quebrar-se para uma no ção de hierarquia para modelos de dados espaciais.
2.4.1 Modelos de Campos e Objetos Um determinado universo de discurso pode ser modelado em um ambiente de SIG atrav és do modelo de objetos, tamb ém chamado entity-based model ou feature-based model. Podemos utilizar ainda, para a modelagem de dados, o modelo de campos, conhecido como space based model . O conceito principal envolvido no modelo de campos é entender o mundo observado como uma superf íc ie contí nua, sobre a qual os fen ômenos geogr áficos a serem observados variam segundo diferentes distribuições. Conforme Câmara et al (1996): Um campo é formalizado como uma fun ção matemática cujo domí nio é uma (abstração da) região geogr á fica e cujo contradomí nio é o conjunto de valores que o campo pode tomar. Caso se deseje incluir a varia ção do campo ao longo do tempo, basta considerar que o dom í nio da função é um conjunto de pares (p; t) onde p representa um ponto da regi ão geogr á fica e t um instante de tempo. Por exemplo, um campo definindo a cobertura vegetal de uma região ser á modelado como uma função cujo domí nio é uma abstração da região e cujo contradomí nio é o conjunto de tipos de cobertura vegetal; a cada ponto da regi ão, a função associa o tipo (ou tipos) de vegetação nele predominante. Esta visão enfatiza a descrição da variação do fenômeno geogr á fico sem se preocupar com a identificação de entidades independentes.
Um campo é freqüentemente representado no formato raster. O termo raster designa c élulas retangulares, mas na maioria das vezes é usado como termo gen érico para a representa ção matricial (CÂMARA et al, 1996). Os relacionamentos topol ógicos no espa ço são implicitamente determinados a partir da vizinhan ça das células e as coordenadas geogr áficas são obtidas indiretamente a partir da posi ção da célula na matriz. A cada c élula corresponde um valor do campo representado, não podendo haver dois valores distintos para uma mesma c élula. A figura 1 mostra um mesmo mapa representado por c élulas de diferentes tamanhos, ou seja, diferentes resolu ções, representando diferentes áreas no terreno.
19
Figura 11: Diferentes representações matriciais para um mapa (MONTEIRO et al, 2003).
Por outro lado, no modelo de objetos n ós visualizamos o mundo observado como uma superf íc ie ocupada por objetos identific áveis, com geometria e caracter í sticas próprias. Segundo explica Câmara et al (1996): Estes objetos não são necessariamente associados a qualquer fen ômeno geogr á fico especí fico e podem inclusive ocupar a mesma localização geogr á fica. Artefatos humanos (redes viárias, edificações) são tipicamente modelados como objetos.
Um objeto geogr áfico geralmente é representado no formato vetorial. Desta maneira sua geometria é descrita utilizando pontos, linhas e pol í gonos. Segundo C âmara et al (1996) deve haver uma transformação bem definida entre o sistema de coordenadas utilizado na descri ção geométrica e o sistema de coordenadas geogr áficas adotado. Os elementos da representa ção vetorial estão demonstrados na figura 12.
Figura 12: Elementos da representação vetorial (MONTEIRO et al, 2003).
20
A tabela 3 a seguir apresenta uma tabela comparativa entre formatos matricial e vetorial para mapas temáticos. Esta comparação levou em conta os seguintes aspectos: relacionamentos espaciais, análise e armazenamento. O formato mais vantajoso para cada passo é apresentado em destaque (CÂMARA et al, 1996). Tabela 3: Comparação entre os Formatos Matricial e Vetorial (C ÂMARA et al, 1996) Aspecto
Vetorial
Matricial
Relações espaciais entre objetos
Relacionamentos topol ógicos entre Relacionamentos espaciais deve ser objetos disponí veis. inferidos.
Ligação com banco de dados
Facilita associar atributos a elementos Associa atributos apenas a classes do gráficos. mapa.
Análise, simulação e modelagem
Representação indireta de fen ômenos Representa melhor fenômenos com contí nuos; algebra de mapas é variação contí n ua no espaço; limitada. simulação e modelagem mais f áceis.
Escalas de trabalho
Adequado tanto a grandes quanto a Mais adequado para pequenas escalas pequenas escalas. (1:25.000 e menores)
Algoritmos
Problemas com erros geométricos.
Processamento eficiente.
Armazenamento
Por coordenadas (mais eficiente).
Por matrizes.
mais
rápido
e
2.4.2 O Modelo Polinomial Uma abordagem natural para dados espaciais é considerar como uma figura geom étrica alguma figura que é definí vel na geometria elementar (PAREDAENS et al, 1995). Esta é a abordagem do Modelo Polinomial em que exatamente esta classe de figuras, referidas como conjuntos semi-algébricos na geometria alg ébrica, é considerada. Um exemplo de conjunto semialgébrico é apresentado na figura 3. Neste modelo destacamos a utiliza ção de l ógica de primeira ordem. No Modelo Polinomial a informação é armazenada em rela ções, cada uma delas contendo um número finito de tuplas. Uma rela ção tem em geral um atributo espacial para representar um objeto espacial e pode ter um n úmero de atributos temáticos que representam a informa ção não espacial. Cada tupla tem um componente para todos os atributos. No caso de um atributo espacial este componente representa as propriedades espaciais de um objeto inteiro. No caso de um atributo temático o componente é um valor atômico.
21
Figura 13: Um exemplo de um conjunto semi-algébrico em R2 (PAREDAENS et al, 1995).
2.4.3 O Modelo Linear Constraint Uma constraint é um polinômio em variáveis x e y. A palavra linear sugere que o polin ômio é linear em x e y. O foco do modelo est á na geometria dos objetos no espa ço n-dimensional Rn, que pode ser representado com constraints utilizando somente a opera ção adição e o predicado ≤. Neste modelo não podemos trabalhar com curvas de ordem superior representadas por polin ômios com grau maior que um, porque a opera ção multiplicação não é avaliada (RIGAUX et al, 2002). Como exemplo de representa ção de dados, a figura 4 mostra o caso de uma polilinha e de um pol í gono. A linguagem de consulta utilizada baseia-se em l ógica de primeira ordem. Esta é uma das limitações do modelo: a necessidade de se representar os dados em f órmulas de primeira ordem. Esta limitação está relacionada com o poder de expressividade da l ógica de primeira ordem.
Figura 14: Representação constraint de polilinha e polí gono (NURAL, 2003).
22
Capí tulo
3 Análise Espacial de Dados Conforme Carvalho et al (2003), compreender a distribui ção espacial de dados oriundos de fenômenos ocorridos no espa ço constitui hoje um grande desfio para a elucida ção de quest ões centrais em diversas áreas do conhecimento, seja em sa úde, em ambiente, em geologia, em agronomia, entre tantas outras. A ênfase da análise espacial é mensurar propriedades e relacionamentos, levando em conta a localização espacial do fen ômeno em estudo de forma expl í cita(CARVALHO et al, 2003). De acordo com Bohan-Carter (1994), an álise de dados pode ser definida como a extra ção de fatos significativos incorporados em um conjunto de dados; an álise de dados espaciais, conseqüentemente significa a extra ção de informações úteis de dados que s ão distribuí dos sobre o espaço. Análise de dados espaciais é o processo de procurar padr ões e associa ções em mapas que ajudam caracterizar, entender e predizer fen ômenos espaciais. A análise espacial é uma coleção de t éc nicas estat ís ticas para explorar e entender dados e suas estruturas. Ajuda-nos descobrir padr ões dif íc eis de ver e examinar associa ções no espaço e tempo atravé s de conjuntos de dados d ís pares. Em termos gerais, a an álise espacial pode ser considerada como o estudo quantitativo formal dos fen ômenos que se manifestam no espaço. Isto implica focar na posição, na área, na dist ância e na interação (ANSELIN, 1989).
Existem duas abordagens opostas para tratar dos dados espacialmente referidos (ANSELIN, 1989). Na abordagem data-driven, ou dirigida aos dados, a informa ção é derivada dos dados sem uma noção prévia de como a estrutura te órica deva ser. Esta abordagem implica em “deixar os dados falar por si mesmos” e tentar derivar informações em padr ões espaciais, estrutura espacial e interação espacial sem a limitação de uma no ção teórica pré-concebida. Esta abordagem é classificada na categoria de An álise Exploratória de Dados. A abordagem data-driven na análise espacial é refletida em uma larga escala de t écnicas diferentes, tais como a Análise de Padr ão de Pontos, Índices de Associa ção Espacial, Krigagem, dentre outras. Todas estas técnicas geralmente t êm dois aspectos: primeiramente, comparam o padr ão observado nos dados em que o espaço é irrelevante; segundo, os padr ões espaciais, estruturas espaciais, ou a forma da dependência espacial s ão derivados somente dos dados.
23
A abordagem data-driven é atrativa em muitos aspectos, mas sua aplica ção não é sempre direta. Certamente, as caracter í sticas dos dados espaciais (depend ência e heterogeneidade) anulam freqüentemente as propriedades atrativas das t écnicas estatí sticas padr ão. Uma vez que à maioria dessas t écnicas são baseadas em uma suposi ção da independ ência, não podem ser executadas sem critério para dados espaciais.
A segunda abordagem, denominada de model-driven, ou dirigida ao modelo, inicia com uma especificação teórica, que é subseqüentemente confrontada com os dados. A teoria em quest ão pode ser espacial ou a maior parte n ão espacial, mas a caracter í stica importante é que sua estima ção ou calibração é realizada por meio dos dados espaciais. As propriedades destes dados, isto é, dependência espacial e heterogeneidade espacial, necessitam a aplica ção de t écnicas estat í sticas especializadas, conforme a natureza da teoria do modelo (ANSELIN, 1989). A maioria dos m étodos classificados sob esta categoria trata de estima ção e especificação de diagnóstico em modelos lineares em geral, e modelos de regress ão em particular.
3.1 Tipos de Dados em An álise Espacial De acordo com Carvalho et al (2003), os tipos de dados manipulados na an álise espacial podem ser assim classificados:
•
•
•
Eventos ou padr ões pontuais: fenômenos expressos atrav és de ocorrências identificadas como pontos localizados no espa ço, denominados processos pontuais. S ão exemplos: localização de crimes, ocorr ências de doen ças, e localização de esp écies vegetais. Superf íc ies contí nuas: estimadas a partir de um conjunto de amostras de campo, que podem estar regularmente ou irregularmente distribu í das. Usualmente, este tipo de dados é resultante de levantamento de recursos naturais, e que incluem mapas geol ógicos, topográficos, ecológicos, fitogeográficos e pedol ógicos.
Áreas com contagens e Taxas agregadas: trata-se de dados associados a levantamentos populacionais, como censos e estat í sticas de saúde, e que originalmente se referem a indiví duos localizados em pontos espec í ficos do espa ço. Por razões de confidencialidade, estes dados s ão agregados em unidades de an álise, usualmente delimitadas por pol í gonos fechados (setores censit ários, zonas de endere çamento postas, municí pios).
A partir da divisão acima, verifica-se que os problemas de an álise espacial lidam com dados ambientais e com dados socioecon ômicos. Em ambos os casos, a an álise espacial é composta por um conjunto de procedimentos cuja finalidade é a escolha de um modelo inferencial que considere explicitamente os relacionamentos espaciais presentes no fen ômeno.
24
3.2 Modelos de Infer ência A análise espacial é composta por um conjunto de procedimentos encadeados cuja finalidade é a escolha de um modelo inferencial que considere explicitamente o relacionamento espacial presente no fen ômeno.
Segundo Moreira et al (2001): Na maioria dos projetos desenvolvidos em SIG a principal proposta é a combinação de dados espaciais, com o objetivo de descrever e analisar interações, para fazer previs ões atravé s de modelos, e fornecer apoio nas decisões tomadas por especialistas. A combina ção desses dados multi-fonte permitir á uma redução na ambigüidade das interpretações que normalmente são obtidas atravé s da análise individual dos dados.
O referido autor apresentou uma vis ão geral das diferentes t écnicas de an álise geográfica, no contexto de produ ção de novos mapas a partir de dados j á existentes. Verificou que os m étodos geram como resultados planos de informa ção em diferentes formatos. O mé todo booleano gera dados em formato tem ático sendo a potencialidade expressa espacialmente em forma de polí gonos que representam classes (favor ável e não favor ável).Os outros mé todos, como ia Ponderada, Fuzzy, Bayesiano e infer ência por Redes Neurais, geram M éd dados em formato numé rico sendo a potencialidade expressa de forma numé rica (MOREIRA et al, 2001).
Neste trabalho, apresentaremos dois modelos de infer ência espacial para a integra ção dos dados (evidências), sendo um modelo de cada um dos grupos citados acima: o Modelo Booleano e Modelos de Index Overlay.
3.2.1 Infer ência Booleana O Modelo Booleano envolve combina ção lógica de mapas bin ários através de operadores condicionais. Cada mapa utilizado como uma condi ção pode ser entendida como um plano de informação (evidência). Os vários planos de informação são combinados para dar suporte a uma hipótese ou preposi ção. Cada localização é então testada, para determinar se as evid ências nesse ponto satisfazem ou n ão as regras definidas pela hip ótese . O resultado é expresso de forma bin ária, “0” (hipótese não satisfeita) e “1” (hipótese satisfeita), não sendo possí vel à condição talvez. Embora esse mé todo seja pr ático, normalmente não é o mais adequado, pois o ideal
25
é que as evid ências, que apresentam import ância relativa diferente, recebam pesos de diferentes valores e n ão sejam tratadas igualmente como acontece (MOREIRA et al, 2001).
A álgebra booleana utiliza os ponderadores l ógicos “E”, “OU”, “Exclusivo OU (XOR)” e “NÃO” para determinar se uma hip ótese satisfaz ou n ão uma particular condi ção. Para melhor entendimento, imagine cada atributo como um conjunto, conforme mostrado na figura 14. O operador “E” retorna a interse ção entre dois ou mais conjuntos ,ou seja as entidades que pertencem tanto ao conjunto A e B. O operador “OU” retorna a uni ão dos conjuntos, que s ão entidades que pertencem tanto ao conjunto A como ao B. O “XOR” recupera as entidades que pertencem a um conjunto e ao outro, mas n ão aos dois conjuntamente. E o “N ÃO” é o operador da diferen ça identificando as entidades que pertencem a um conjunto A mas n ão ao B. O apelo da abordagem Booleana é sua simplicidade. A combina ção lógica de mapas em GIS é diretamente análoga a sobreposição de “overlayers” de mapas em uma mesa de luz, m étodo este tradicionalmente utilizado por ge ólogos. Em casos onde limiares de corte foram estabelecidos por lei ou por códigos, combinações Booleanas s ão abordagens pr áticas e de f ácil aplicação. Na pr ática, entretanto, normalmente não é indicado à atribuição de import âncias iguais para cada crit ério a ser combinado. Evidências precisam ser ponderadas dependendo da sua import ância relativa (BOHANCARTER, 1994).
Figura 15: Diagrama de Venn mostrando os resultados da aplica ção de operadores de lógica booleana para dois ou mais conjuntos. (MOREIRA et al, 2001).
3.2.2 Mapas de Evid ência Binária Se a evidência, para ser combinado junto é binária, cada mapa é simplesmente multiplicado por seu fator de peso, somado sobre todos os mapas sendo combinado e normalizado pela soma dos
26
pesos. O resultado é um valor que varia entre 0 e 1, que pode ser classificado em intervalos apropriados para mapeamento. Em alguma posi ção, a contagem de sa í da, S, é definida como:
S=
n
n
i= 1
i
∑ wi∗class MAP i / ∑ wi ,
Onde Wi é o peso do i- ésimo mapa, e class(Map i) será 1 para presença ou 0 para aus ência da condição binária. A contagem de sa í da é 0 (implicando extremamente desfavor ável) ou 1 (implicando alta favorabilidade). O resultado produzir á um mapa com regi ões que variam de acordo com a contagem.
3.2.3 Média Ponderada Neste método cada mapa de entrada ser á utilizado como uma evid ência que receber á um peso diferente dependendo da import ância para com a hip ótese sobre considera ção. Neste caso cada plano de informação receberá pesos diferentes, bem como as respectivas classes dos planos de informação. O resultado ser á um mapa com áreas que expressam um grau de import ância relativa através dos valores num éricos de saí da.
ia Ponderada é citada Dentre os mé todos de análise multi-crit ér io a M éd como a t éc nica mais utilizada em projetos que envolvam an álise espacial (MOREIRA et al, 2001) . O primeiro passo para a aplica ção do método é a ponderação das classes de cada plano de informação segundo pesos definidos empiricamente. Os planos de informa ção ponderados s ão então somados através de uma soma ponderada onde cada plano de informa ção recebeu pesos segundo sua importância relativa. A função matemática é expressa por: n
∑ wij∗ yi r =
i =
n
,
∑ yi i =
onde wij informação “j”.
é o pesa da classe “i” do plano de informa ção “j”, e yi o peso do plano de
O método de M édia Ponderada permite uma maior flexibilidade na combina ção de mapas do que o método Booleano. O mapa ponderado pode ser ajustado para refletir o julgamento de um especialista, segundo os pesos de import ância definidos para cada crit ério. A maior desvantagem
27
deste método, entretanto, recai provavelmente no car áter linear de adição das evidências (BOHANCARTER, 1994).
28
Capí tulo
4 Padrões para Sistemas de Informa ção Geográfica Almeida (1999) relatou em seu trabalho que, no passado, houve pouca preocupa ção com a padroniza ção dos métodos de aquisi ção, armazenamento, processamento, an álise e visualização dos dados geogr áficos. A necessidade de compartilhar dados e aplicativos entre diferentes sistemas, bem como sua manipulação por usuários não treinados conduziu ao desenvolvimento de estudos que visam a interoperabilidade dos SIGs. A interoperabilidade destes sistemas visa conduzir m étodos padronizados, que possibilitem a utilização dos dados por diferentes produtos de software. Almeida (1999) apresenta as seguintes considerações a respeito de interoperabilidade:
•
•
•
•
O termo interoperabilidade sugere um mundo ideal onde n ão existiriam problemas de compartilhamento, ou pelo menos onde tais problemas fossem minimizados; Significa abertura para a ind ústria de software, pois uma publica ção aberta das estruturas de dados internas permitiria aos usu ários dos SIGs construirem aplicações que integrariam componentes de software de diferentes desenvolvedores, e permitiria a entrada de novas ind ústrias no mercado com produtos competitivos, que seriam intercambiáveis com os componentes existentes; Também significa a habilidade de trocar dados livremente entre sistemas, pois cada sistema teria conhecimento do formato do outro sistema; Também significa uniformidade de cultura e pol í tica organizacional quanto e ao acesso aos dados.
à manipulação
Para o Open Geospatial Consortium o termo interoperabilidade de software refer-se a capacidade dos sistemas em trocar dados e instru ções em tempo real para prover servi ços. Ainda conforme o OGC, interoperabilidade tamb ém refere-se a questão do tempo, uma vez que ocorre evolução tecnológica ao longo do tempo, sendo necess ário observar a compatibilidade entre os sistemas concebidos em tempos diferentes.
4.1 Open Geospatial Consortium - OGC O Open Geospatial Consortium – OGC é um consórcio internacional que reúne mais de 300 instituições, englobando empresas, ag ências governamentais e universidades. A miss ão do OGC é servir como um f órum global para a colabora ção de desenvolvedores e usu ários de produtos e
29
serviços baseados em dados espaciais, e avan çar no desenvolvimento de padr ões para a interoperabilidade geoespacial. São quatro os objetivos estrat égicos do OGC, a saber:
•
•
•
•
•
•
Prover livre e abertamente padr ões disponí veis para o mercado, valor tang í vel para seus membros, e benef íc ios mensuráveis para usu ário; Conduzir a rede mundial na cria ção e estabelecimento de padr ões que permitam conteúdos e servi ços geoespaciais serem continuamente integrados em processos de negócio, na web, em ambientes corporativos, etc.; Facilitar a adoção de arquiteturas de refer ência abertas e espacialmente habilitadas em ambientes corporativos de todo o mundo; Avançar em padrões no suporte para tecnologia geoespacial.
à formação de novos e inovadores mercados e aplica ções
Acelerar a assimilação pelo mercado das pequisas sobre interoperabilidade, atrav és de processos colaborativos. Um termo geralmente associado ao OGC é OpenGIS. OpenGIS é um adjetivo que descreve especifica ções e produtos OGC, que suportam acesso transparente para dados espaciais heterogêneos e recursos de geoprocessamento em ambiente de rede. As expressões “Open GIS” e “OpenGIS” s ão marcas registradas do OGC.
Na definição do OGC, um padr ão considerado aberto
•
•
•
•
•
é aquele que:
É criado como um processo aberto, internacional e com participa ção da indústria; Possui direitos gratuitos de distribui ção; Possui acesso aberto à especificação; Não discrimina pessoas ou grupos; Garante que a especifica ção e a licença devam ser tecnologicamente neutras.
4.2 O modelo de refer ência do OGC
O Modelo de Refer ência do OGC (OGC Reference Model – ORM) prov ê uma descrição dos trabalhos em desenvolvimento no OGC. Este modelo apresenta as especifica ções e implementa ções de soluções e aplicações interoperáveis para dados e servi ços geoespaciais. O modelo foi concebido considerando cinco vis õe: visão de neg ócio; visão da informação; visão computacional; visão da engenharia; vis ão tecnológica. Nas se ções seguintes, apresentaremos e discutiremos alguns pontos descritos no Modelo de Refer ência do OGC.
30
4.2.1 OWS Service Framework O OGC Web Service Framework (OSF) identifica servi ços, interfaces e protocolos de intercâmbio que podem ser utilizados por uma aplica ção. Serviços OpenGIS s ão implementações de serviços em conformidade com as especifica ções OpenGIS. Através da construção de aplicações para interfaces comuns, cada aplicação pode ser constuí da sem depend ências de outras aplica ções ou servi ços. Deste modo, aplica ções e servi ços podem ser adicionados, modificados ou substitu í dos sem impactar outras aplica ções. Consequentemente, os sistemas tornam-se mais flex í veis e adapt áveis frente aos novos requisitos e ao avanço tecnológico. A figura 16 abaixo apresenta a estrutura do OSF.
Figura 16: OWS Service Framework.
O OSF classifica os servi ços em cinco categorias, a saber:
•
Serviços de Aplica ção (Application Services): S ão acessí veis a partir dos aplicativos que operam nos terminais de usu ários ou servidores em rede.
31
•
•
•
•
Serviços de Registro (Registry Services): Fornecem um mecanismo comum para classificar, registrar, descrever, buscar, manter e acessar informa ções sobre recursos disponí vel em uma rede. Serviços de Processamento (Processing Services): Compreendem opera ções com dados espaciais, podendo trasformar, combinar ou criar dados. Serviços de Visualização (Portrayal Services): Fornecem visualização de informação geoespacial. Serviços de Dados (Data Services): Prov ê acesos para cole ções de dados em reposit órios e base de dados.
4.2.2 Codifica ções OGC O OGC define alguns métodos para codificação baseados em XML (Extensible Markup Language). Estes métodos são relacionados abaixo: •
•
•
•
•
•
Geographic Markup Language: llinguagem para descrever e codificar infoma ção espacial; Sensor Model Language:linguagem para descrever e codificar sensores; Styled Layer Descriptors (SLD): linguagem para produzir estilos para mapas, definidos pelos usu ários; XML for Imagery and Map Annotations (XIMA): para codificar anota ções em imagens, mapas e outros dados espaciais; XML for Location Services (XLS): método de codificação para tipos de dados abstratos baseados em OpenLS; Web Services Description Language: linguagem para descrever e codificar servi ços.
4.2.3 Representa ções Well-Known Text e Well-Known Binary O OGC definiu duas representa ções para geometrias: Well-Known Text (WKT) e WellKnow Binary (WKB). Na representação WKT uma geometria é representada em formato textual, considerando uma gramática especí fica. O WKT consiste numa cadeia de caracteres composta de palavras chaves determinadas pelo OpenGIS que determinam a forma da geometria a ser representada. A tabela 4 a seguir apresenta representa ções WKT para os tipos de geometria proposto pelo OGC.
32
Tabela 4: Representação WKT para Geometrias OGC Tipo da Geometria
Representação WKT
Descrição
Point
‘POINT (10 10)’
Um ponto.
LineString
‘LINESTRING ( 10 10, 20 20, 30 40)’
Uma linha com três pontos.
Polygon
‘POLYGON ((10 10, 10 20, 20 20,
Um polí gono com um anel exterior.
20 15, 10 10))’ Multipoint
‘MULTIPOINT (10 10, 20 20)’
Um multiponto com dois pontos.
MultiLineString
‘MULTILINESTRING ((10 10, 20 20),
Uma multilinha com duas linhas.
(15 15, 30 15))’ MultiPolygon
‘MULTIPOLYGON (
Um multipolí gono com dois pol í gonos.
((10 10, 10 20, 20 20, 20 15, 10 10)), ((60 60, 70 70, 80 60, 60 60 ) ))’ GeomCollection
‘GEOMETRYCOLLECTION (POINT (10 10), POINT (30 30),
Uma coleção geométrica com dois pontos e uma linha.
LINESTRING (15 15, 20 20))’
A representação para geometria Well-Known Binary prov ê uma representação portável de uma geometria como uma sequ ência de bytes de tipos num éricos. Esta representa ção permite o intercâmbio de dados na forma bin ária, entre clientes ODBC e um banco de dados SQL. No exemplo da figura 17 abaixo observa-se a representa ção WBK para um objeto geométrico nos seguintes termos: codifica ção binária no formato NDR (B=1), tipo polí gono (T=3) com dois anéis (NR=2) e cada an él possuindo tr ês pontos (NP=3).
Figura 17: Exemplo de representação WKB para polí gono.
Paiva (2007) discutiu em seu trabalho o uso das representa ção para objetos geom étricos:
33
Para tornar poss í vel a criação de objetos geomé tricos na especificação SQL do OpenGIS, algumas funções foram definidas para atender a essas necessidades. Cada objeto com determinado tipo de geometria possui uma representa ção textual conhecida WKT (Well Know Text), que pode ser nem todos os tipos usada para a construção de novas inst âncias. Por ém geomé tricos são instanciáveis, ou seja, nem todos podem ser criados a partir de uma WKT. Geometria, curva, superf íc ie, multicurva e multisuperf íc ie são exemplos de tipos geomé t ricos que não t êm uma representa ção textual WKT. Entretanto, são definidas funções GeoFromWKB que constroem inst âncias, tomando como argumento uma representa ção binária bem formada (WKBGeometry), e um ID para uma sistema de refer ência espacial (SRID).
4.2.4 Plataforma para Servi ços Web O Modelo de Referência OGC apresenta as tecnologias e pad õres escolhidos para a plataforma interoperável de serviços Web (OGC Web Services). A figura 18 abaixo apresenta uma arquitetura em camadas onde figuram tecnologias e padr ões que suportam o desenvolvimento e implementa ção de serviços web. Os n í veis mais baixos possibilitam conectividade de componentes de software permitindo-os enviar e receber mensagens. Os n í veis mais altos possibilitam que os componentes de sofware possam trabalhar juntos de forma integrada e dinâmica.
Figura 18: Pilha de Serviços Web OGC.
34
4.2.5 Padrões OGC Conforme especificado anteriormente, o OGC visa estabelecer padr ões para especificação e implementação de sistemas que trabalhem com informa ção espacial de forma interoper ável e aberta. Neste sentido, diversos padrões foram propostos e s ão amplamente utilizados em soluções proprietárias e livres. Nesta se ção serão apresentados, resumidamente, alguns dos padr ões especificados pelo OGC, sendo eles WMS, WFS, WCS e SFS.
4.2.5.1 Web Mapping Service - WMS O padrão Web Mapping Service - WMS prov ê uma simple interface HTTP para requerer dados de bases de dados espaciais. A especifica ção WMS padroniza a forma como os clientes requisitam mapas. Uma requisição WMS define a camada geogr áfica e a área de interesse para ser processada. Clientes requisitam mapas por meio do nome da camada e fornecendo par âmetros como o tamanho do mapa retornado e o sistema de refer ência espacial. A resposta consiste em uma ou mais imagens (geralmente retornadas no formato JPEG, PNG, etc.) que podem ser exibidas numa aplica ção. A especificação definie tr ês operações WMS:
•
•
GetCapabilities: retorna uma descri ção do serviço, conteúdo e par âmetros; GetMap: retorna uma imagem com os par âmetros geoespacial e dimensionais definidos; GetFeatureInfo: retorna informação sobre uma caracterí stica particular mostrada no mapa.
4.2.5.2 Web Feature Service - WFS O padrão Web Feature Service - WFS suporta inser ção, atualização, deleção e consulta de feições geográficas. Este padrão gera representa ções GML de feições geográficas, em resposta à consultas oriundas de clientes HTTP. O padrão WFS básico, também chamado Read-Only WFS, implementa as interfaces GetCapabilities, DescribeFeatureType e GetFeature. Por outro lado, o padr ão WFS-T, implementa uma interface transacional. O padrão Web Feature Service define uma interface para requerer feições geogr áficas pela Web, independente da plataforma utilizada. WFS define interfaces e opera ções para acesso, manipulação de um conjunto de fei ções geográficas, incluindo:
35
•
•
•
•
•
Obter ou consultar feições baseado em restri ções espaciais e n ão-espaciais; Criar uma nova instância da feição; Obter a descrição das propriedades da fei ção. Remover uma ocorr ência da feição; Atualizar uma ocorrência da feição.
4.2.5.3 Web Coverage Service - WCS O Web Coverage Service define uma interface padr ão e opera ções que permitem acesso interoperável a dados matriciais. WCS suporta o intercâmbio de imagens, tais como imagens de satélite e fotos aéreas digitais. O WCS suportq tr ês operações: GetCapabilities, GetCoverage e DescribeCoverageType.
4.2.6 Simple Features specification – SFS
O padrão Simple Features Specification - SFS prov ê uma forma comum para armazenamento e acesso dados de fei ções em banco de dados objeto-relacionais. Esta especifica ção descreve dados vetoriais através de pontos, linhas e pol í gonos. O objetivo desta especifica ção é definir um esquema SQL padrão que suporte o armazenamento, recupera ção, consulta e atualiza ção de coleções de feições geoespaciais simples via API ODBC.
A abordagem proposta pelo OGC consiste basicamente em armazenar um dado espaciais em uma tabela por meio de uma coluna que conter á um valor relativo à sua geometria. Em outras palavras, a feição ou parte espacial do objeto em quest ão será armazenada num campo espec í fico. Conceitualmente, sugere-se a utiliza ção de tipos de dados geom étricos adicionais para SQL. Por outro lado, os atributos n ão espaciais do objeto ser ão armazenados normalmente em colunas cujos tipos de dados referem-se ao conjunto padr ão ODBC/SQL92. Nesta abordagem uma feição pode ser armazenada como uma linha na tabela. É permitido que cada tabela poder á conter uma ou mais colunas para armazenar geometrias.
4.2.6.1 Modelo de Objetos Geometricos A especificação SFS define um modelo de dados para representar a geometrias dos dados espaciais. No decorrer desta se ção apresentaremos o modelo estabelecido, conforme descrito no Documento de Projeto OpenGIS 99-049.
36
Conforme pode ser observado na figura 19 a seguir, a classe base Geometry possue como subclasses Point, Curve, Surface e Geometry Collection. Cada objeto geom étrico é associado com um Sistema de Refer ência Espacial, que descreve o espa ço em que o objeto geom étrico foi definido (OGC, 1999).
Figura 19: Hierarquia das classes geométricas do padrão SFS.
Geometry é a classe raiz da hierarquia. É uma classe abstrata (não instânciável). As subclasses instânciáveis de Geometry s ão restritas à objetos geométricos de no máximo duas dimensões. Todas as classes geom étricas instânciáveis são topológicamente fechadas, ou seja, a definição da geometria inclue seus limites. GeometryCollection representa uma geometria que consiste numa cole ção de uma ou mais geometrias. Todos os elementos de GeometryCollection devem ter a mesma refer ência espacial.
A classe Point representa geometrias do tipo ponto. Um ponto representa um objeto adimensional, relativo a uma localiza ção única no espa ço. É necessário que um ponto possua valores para as coordenadas x e y.
37
Um multiponto, representado pela classe MultiPoint, é uma coleção geométrica cujos elementos são obrigatóriamente pontos. Tais pontos n ão são conectados ou ordenados. Uma curva é um objeto geométrico unidimensional geralmente armazenado como uma sequência de pontos, com o subtipo da cruva especificando a forma de interpola ção entre pontos. Curvas são representadas no modelo atrav és da classe Curve. Uma curva que é simples e fechada é um anel. Uma multicurva, representada pela classe MultiCurve, é uma coleção geométrica unidimensional de elementos da classe Curve. LineString é uma subclasse de Curve que usa interpola ção linear entre os pontos. Cada para de pontos define um segmento de linha. A classe Line é uma subclasse de LineString e possui exatamente dois pontos. LinearRing é uma subclasse de LineString que é fechada e simples. MultiLineString refere-se a uma coleção geométrica cujos elementos s ão da classe LineStrings. A classe Surface representa objetos geom étricos bidimensionais denominados superf íc ie. A única subclasse instanci ável de Surface refere-se a Polygon. Um pol í gono, representado pela classe Polygon, é uma superf íc ie planar definida por um limite exterior e zero ou mais limites interiores. Cada limite interior definie um buraco no pol í gono. A classe MultiSurface refere-se a cole ções geométricas cujos elementos s ão pertencentes a classe Surface. Multipolygon é uma subclasse de MultiSurface cujos elementos s ão Polygons. A tabela 5 abaixo apresenta os m étodos suportados por cada uma das classes geom étricas especificadas pelo SFS. Tabela 5: Hierarquia das Classes Geométricas. Classe Geometry
Método
Retorno do Método
Dimension():Integer
As dimensões do objeto geom étrica
GeometryType ( ):String
O nome do subtipo instanciável do qual a inst ância do objeto é um membro
SRID ( ):Integer
O identificador (ID) relativo ao Sistema de Referência Espacial do objeto
Envelope( ):Geometry
O retângulo envolvente do objeto.
AsText( ):String
Exporta a geometria para uma representação WKT
AsBinary( ):Binary
Exporta a geometria para uma representação WKB
IsEmpty( ):Integer
1 (TRUE) se a geometria
IsSimple( ):Integer
1 (TRUE) se a geometria não possui pontos anômalos, tais como auto interse ção ou auto tang ência.
é vazia
38
Tabela 5 (continuação): Hierarquia das Classes Geom étricas. Método
Classe
Point
Curve
LineString
MultiCurve
Surface
Polygon
Retorno do Método
Boundary( ):Geometry
O limite da geometria.
X( ):Double
O valor da coordenada X do ponto
Y( ):Double
O valor da coordenada Y do ponto
Length( ):Double
O tamanho da curva em sua refer ência espacial associada.
StartPoint( ):Point
O ponto inicial da curva.
EndPoint( ):Point
O ponto final da curva.
IsClosed( ):Integer
1 (TRUE) se a curva igual ao ponto final.
IsRing( ):Integer
1 (TRUE) se a curva é fechada, ou seja, o ponto inicial é igual ao ponto final, e esta curva é simples, ou seja, n ão passa pelo mesmo ponto mais de uma vez.
NumPoints( ):Integer
O número de pontos da linha.
PointN(N:Integer):Point
Retorna o ponto N eespecificado
IsClosed( ):Integer
1 (TRUE) se a multicurva é fechada, ou seja, o ponto inicial é igual ao ponto final para cada uma das curvas.
Length( ):Double
O tamanho da multicurva, que é igual a soma dos tamanhos das curvas que a comp õem.
Area( ):Double
A área da superf í cie, medida conforme seu sistema de referência espacial
Centroid( ):Point
O centróide matemático para esta superf í cie.
PointOnSurface( ):Point
Um ponto que certamente está presente na superf í cie.
ExteriorRing( ):LineString
O anel exterior do polí gono.
NumInteriorRing( ):Integer
O número de anéis interiores do polí gono.
InteriorRingN(N:Integer):LineString
Retorna o N-ésimo anél interior do polí gono.
é fechada, ou seja, o ponto inicial é
4.2.6.2 Operadores Relacionais Conforme OGC, operadores relacionais s ão métodos booleanos que s ão usados para testas a existência de um relacionamento topol ógico especí fico entre duas geometrias. A abordagem b ásica para comparar duas geometrias é realizar testes de interse ção considerando o interior, o exterior e os limites das duas geometrias, e classificar o relacionamento baseado em entradas existentes na matriz de interseção resultante.
39
A tabela 6 a seguir apresenta os operadores relacionais definidos na especifica ção SFS. Tabela 6: Operadores Relacionais SFS. Método
Retorno do Método
é espacialmente igual à outra
Equals(anotherGeometry:Geometry):Integer
1 (TRUE) se a geometria geometria
Disjoint(anotherGeometry:Geometry):Integer
1 (TRUE) se a geometria geometria
Intersects(anotherGeometry:Geometry):Integer
1 (TRUE) se a geometria intersecta uma outra geometria
Touches(anotherGeometry:Geometry):Integer
1 (TRUE) se a geometria toca uma outra geometria
Crosses(anotherGeometry:Geometry):Integer
1 (TRUE) se a geometria cruza uma outra geometria
Within(anotherGeometry:Geometry):Integer
1 (TRUE) se a geometria está dentro de uma outra geometria
Contains(anotherGeometry:Geometry):Integer
1 (TRUE) se a geometria contém uma outra geometria
Overlaps(anotherGeometry:Geometry):Integer
1 (TRUE) se a geometria sobrepõe uma outra geometria
é espacialmente disjunta à outra
De forma complementar, a tabela 7 abaixo apresenta outros m étodos que suportam an álise espacial: Tabela 7: Métodos da Especificação SFS que Suportam Análise Espacial Método
Retorno do Método
Distance(anotherGeometry:Geometry):Double
A menor distância entre dois pontos, calculado conforme seu Sistema de Referência Espacial.
Buffer(distance:Double):Geometry
Uma geometria que representa todos os pontos cuja distância para a geometria é igual ou menor ao valor informado, calculado conforme seu Sistema de Refer ência Espacial.
Intersection(anotherGeometry:Geometry):
Uma geometria que representa o conjunto de pontos derivado da interseção entre duas geometrias.
Geometry Union(anotherGeometry:Geometry):Geometry
Uma geometria que representa o conjunto de pontos derivado da união entre duas geometrias.
Difference(anotherGeometry:Geometry):Geometry
Uma geometria que representa o conjunto de pontos derivado da diferença entre duas geometrias.
SymDifference(anotherGeometry:Geometry):
Uma geometria que representa o conjunto de pontos derivado da diferença simétrica entre duas geometrias.
Geometry
No capí tulo 5, onde ser á abordado as fun ções do PostGIS, voltaremos a discutir os m étodos para verificar o relacionamento espacial entre os objetos geom étricos.
40
Capí tulo
5 Manipulando Dados Espaciais com PostgreSQL e PostGIS 5.1 O Sistema Gerenciador de Banco de Dados PostgreSQL Conforme especificado em seu Manual Oficial o PostgreSQL é um Sistema Gerenciador de Banco de Dados Objeto Relacional baseado no Postrgres vers ão 4,21, desenvolvido pelo Departamento de Ci ência da Computa ção de Berkeley, Universidade da Calif órnia. O PostgreSQL é um software livre e de c ódigo aberto, e consequentemente pode ser utilizado, modificado e distribu í do livremente por qualquer pessoa ou organiza ção. Além de suportar o SQL padrão, o PostgreSQL possibilita a realização de consultas complexas, o uso de chaves estrangeiras, gatilhos, vis ões, integridade transacional, controle de concorrência, etc. Outra caracterí stica importante do PostgreSQL refere-se a capacidade de ser extendido pela adição de novos tipos de dados, fun ções, operadores, m étodos de indexação e linguagens procedurais.
A flexibilidade do PostgreSQL, potencializada pelas vantagens inerentes a qualquer ferramenta livre e de código aberto, tem motivado o desenvolvimento de c ódigos e novas estruturas para suportar opera ções espec í ficas ou manipular tipos de dados diferenciados. É neste contexto que surge o PostGIS, uma extens ão do PostgreSQL para dados espaciais que ser á apresentada na se ção seguinte.
5.2 PostGIS O PostGIS é uma extensão para o PostgreSQL que permite o armazenamento de dados espaciais vetoriais, seguindo padrões OGC. O PostGIS é mantido pela empresa canadense Refractions Research. Constitui-se num projeto de c ódigo aberto, sendo distribu í do sob licenla GNU General Public License – GPL.
41
PostGIS fornece suporte para o uso de í ndices espaciais e prov ê um conjunto de fun ções que permitem a realização de an álise espacial dos dados armazenados no PostgreSQL. PostGIS vem sendo utilizado amplamente, juntamente como o PostgreSQL, para o armazenamento de dados espacias em Sistemas de Informa ção Geográfica. No desenvolvimento da extens ão PostGIS, foram observados as defini ções especificadas pelo OGC no padr ão SFS. Deste modo, PostGIS est á em conformidade com os padr ões OGC. O padr ão SQL-MM também foi observado durante o desenvolvimento do PostGIS, resultando na implementação de diversas fun ções previstas neste padr ão. SQL-MM refere-se a um padr ão ISO, correspondendo a uma parte da especifica ção SQL:99 com extens ões para tratar de texto, dados espaciais e imagens est áticas ou em movimento.
Dentre os projetos futuros da Refractions Research para o PostGIS destacam-se os seguintes suportes: dados matriciais, rede e roteamento, dados tridimensionais e suporte completo a topologia. A tabela 8 abaixo apresenta as vers ões do PostGIS e as respectivas datas de lan çamento. Tabela 8: Versões do PostGIS. Versão
Data do Lançamento
0.1
31/05/2001
0.2
20/06/2001
0.5
21/07/2001
0.6.0
19/09/2001
0.6.1
15/10/2001
0.6.2
11/07/2001
0.7.0
05/05/2002
0.7.1
14/05/2002
0.7.2
04/09/2002
0.7.3
05/09/2002
0.7.4
13/02/2003
0.8.0
25/11/2003
0.8.1
12/01/2004
0.8.2
27/05/2004
0.9.0
10/09/2004
42
Tabela 8 (continuaçao): Versões do PostGIS. Versão
Data do Lançamento
0.9.1
12/12/2004
0.9.2
25/07/2005
1.0.0
20/04/2005
1.0.1
24/05/2005
1.0.2
05/07/2005
1.0.3
07/08/2005
1.0.4
09/09/2005
1.0.5
25/11/2005
1.0.6
12/12/2005
1.1.0
12/12/2005
1.1.1
22/01/2006
1.1.2
05/04/2006
1.1.3
30/06/2006
1.1.4
27/09/2006
1.1.5
13/10/2006
1.1.6
06/11/2006
1.1.7
31/01/2007
1.2.0
08/12/2006
1.2.1
11/01/2007
1.3.0
09/08/2007
1.3.1
13/08/2007
1.3.2
03/12/2007
1.3.3
12/04/2008
43
5.2.1 Instala ção do PostGIS Nesta seção apresentaremos os requisitos iniciais e os comandos necess ários à instalação do PostGIS. As etapas aqui descritas s ão detalhadas no Manual do PostGIS, dispon í vel no site da Refractions Research. Inicialmente, o PostgreSQL dever á estar devidamente instalado. É necessário uma instalação completa do PostgreSQL. Relativamente à instalação do PostgreSQL, (RAMSEY, 2008) recomenda que seja explicitado a liga ção com a biblioteca padr ão C++. Esta op ção permite utilizar livremente as funcionalidades da biblioteca GEOS. Esta op ção requer recompilação da instalação, considerando a opção abaixo:
LDFLAGS=-lstdc++ ./configure [OPÇÕES] Outro requisito refere-e ao compilador GNU C. o GNU Make é necessário para completar a instalação.
É indicado o uso do gcc. Semelhantemente,
Recomenda-se a instala ção de duas bibliotecas: Proj4 e GEOS. A biblioteca Proj4 suporta a reprojeção de coordenadas. GEOS prov ê funções e operadores geom étricos.
Conforme (UCHOA,2008): Proj4 é biblioteca mais utilizada nos sistemas livres (e de c ódigo aberto) para tratamento de projeções. Ela é a responsável, por exemplo, pelo recurso de mudança de projeção em tempo real presente no MapServer. Com capacidade de transformações entre diferentes elips óides e datums, esta biblioteca é muito poderosa, tendo implementado complexos algoritmos matemáticos.
Uchoa (2008) também apresenta considera ções acerca da biblioteca GEOS: Esta biblioteca é uma “tradução” da JTS de Java para C++. Este projeto de tradução surgiu para atender uma demanda existente no c ódigo do PostGIS, pois este não contempla a especificação SFS em 100%. A “criação” da GEOS tornou poss í vel a total compatibilidade do PostGIS com a SFS, pois agora é possí vel compilar o PostGIS incluindo o código da GEOS. Este é um exemplo de interação entre empresas dentro da filosofia doSoftware Livre.
JTS Topology Suite é uma biblioteca para an álises espaciais sobre geometrias bidimensionais, que segue a especifica ção SFS do OGC.
44
Obtenha e proceda a descompacta ção dos arquivos fontes relativos às bibliotecas Proj4 e GEO. O arquivo fonte para a instalação da biblioteca Proj4 poderá ser obtido no endereço http://trac.osgeo.org/proj/ .
wget http://download.osgeo.org/proj/proj-4.6.1.tar.gz tar xvzf proj-4.6.1.tar.gz cd proj-4.6.1 ./configure make make install O arquivo fonte para a instala ção da biblioteca GEOS poder á ser obtido no endereço http://trac.osgeo.org/geos/ .
wget http://download.osgeo.org/geos/geos-3.0.2.tar.bz2 tar xvzf geos-3.0.2.tar.bz2 cd geos-3.0.2 ./configure make make install Obtenha e proceda a descompacta ção do arquivo fonte do PostGIS, que poder á ser obtido diretamente no site da Refractions Research http://postgis.refractions.net/download/. wget http://postgis.refractions.net/download/postgis-1.3.3.tar.gz
tar xvzf postgis-1.3.3.tar.gz cd postgis-1.3.3 ./configure make make install Durante a compila ção do PostGIS, podera ser v álido observar os seguintes aspectos: •
A opção –with-proj=PATH poderá ser utilizada para informar o diretório de instalação da biblioteca Proj4;
45
•
•
A opção –with-geos=PATH poderá ser utilizada para informar o diretório de instalação da biblioteca GEOS; Os arquivos do PostGIS s ão instalados com base em informa ções do arquivo pg_config, --withcuja localização poder á ser informada pela opção
pgsql=PATH/pg_config. Opcionalmente a instalação do PostGIS poder á ser realizada através de gerenciadores de pacotes, tais como Adept, Synaptic, Yum e apt-get. Esta op ção geralmente é mais prática que a instalação compilada acima descrita. Entretanto, nem sempre as vers ões mais recentes est ão disponí veis por meio de gerenciadores de pacotes. No caso de instala ções com suporte do gerenciador de pacotes, dever ão ser adequadamente observados os comandos inerentes a cada um dos aplicativos, bem como o nome correto dos pacotes contidos nos respectivos reposit órios. Nos trechos abaixo, demonstraremos os comandos necess ários para a instalação do PostGIS com apt-get e Yum.
apt-get
apt-get install proj apt-get install libgeos-c1 libgeos-dev apt-get install postgis Yum
yum install proj yum install geos yum install postgis
5.2.2 Cria ção de Banco de Dados Espacial Os comandos demonstrados abaixo dever ão ser executados para a cria ção de banco espacial no PostgreSQL. Basicamente o processo é identico aos bancos tradicionais, exceto pela carga de comandos contidos em arquivos SQL que criam fun ções e operadores espaciais, al ém de tabelas especí ficas para o banco. O primeiro passo consiste na cria ção de um usu ário que acessar á o banco:
createuser nome_usuario Em seguida cria-se o banco de dados:
46
createdb nome_banco -U nome_usuario
É necessário habilitar a linguagem procedural PL/pgSQL, requerida pelo PostGIS. createlang plpgsql postgres Nesta etapa da criação do banco, dever ão ser carregados os arquivos lwpostgis.sql e spatial_ref_sys.sql.
psql -f lwpostgis.sql –d nome_banco psql -f spatial_ref_sys.sql –d nome_banco O arquivo lwpostgis.sql cont ém uma série de instruções SQL que criam fun ções e operadores espaciais que permitem adicionar tipos espaciais para o PostgreSQL.
O arquivo spatial_ref_sys.sql insere na tabela apropriada uma lista dos Sistemas de Referência Espacial suportados. Na criação do banco de dados, duas tabelas s ão criadas: spatial_ref_sys e geometry_columns. Tais tabelas são chamadas de tabelas de metadados e correspondem à especificação SFS do OGC. A tabela spatial_ref_sys cont ém um identificador numérico e a a descri ção textual dos sistemas de coordenadas utilizados no banco de dados. A estrutura da tabela spatial_ref_sys é apresentada na tabela 9 abaixo. Tabela 9: Estrutura da Tabela spatial_ref_sys Nome do Campo srid
Domí nio
Integer
Descrição Identificador único do Sistema de Refer ência Espacial da base de dados.
Not Null Primary Key auth_name
Varchar(256)
O nome do padrão do Sistema de Refer ência Espacial.
auth_srid
Integer
O identificar do Sistema de Referência Espacial, conforme determinado pelo padrão citado em auth_name.
srtext
Varchar(2048)
A representação WKT do Sistema de Refer ência Espacial.
proj4text
Varchar(2048)
Uma cadeia de caracteres que definem os par âmetros da projeção.
47
A table geometry_columns armazena informa ções sobre os objetos espaciais contidos no banco de dados. A estrutura da tabela geometry_columns é apresentada na tabela 10 abaixo. Tabela 10: Estrutura da Tabela geometry_columns Nome do Campo f_table_catalog
Domí nio Varchar(256)
Descrição O nome completo do cat álogo que contém a tabela espacial.
Not Null f_table_schema
Varchar(256)
O nome completo do esquema que cont ém a tabela espacial.
Not Null f_table_nam
Varchar(256)
O nome completo da tabela espacial.
Not Null f_geometry_column
Varchar(256)
O nome da coluna geométrica da tabela espacial.
Not Null coord_dimension
Integer
A dimensão espacial da coluna.
Not Null srid
Integer Not Null
type
Varchar(30)
O identificador do Sistema de Refer ência Espacial usado pela geometria na tabela espacial. A classe a que pertence a geometria do objeto espacial.
Integer Not Null
5.2.3 Cria ção de tabelas espaciais A diferença entre uma tabela comum de um banco PostgreSQL, para uma tabela espacial com PostGIS, pode ser notada apenas no campo destinado a armazenar um valor correspondente à geometria do objeto espacial. Assim, a criação da tabela espacial é semelhante a criação das demais tabelas, exceto pelo uso da função AddGeometryColumn. O exemplo a seguir demonstra a cria ção de tabelas espaciais para armazenamento de dados de ponto e multi pol í gono, respectivamente.
CREATE TABLE base_operacional( codigo integer, descricao varchar); SELECT AddgeometryColumn('base_operacional', 'geometria', 4618, 'POINT', 2);
48
CREATE TABLE area_atuacao( codigo integer, descricao varchar); SELECT AddgeometryColumn('area_atuacao', 'geometria', 4618, 'poPOINT', 2); Pode-se verificar, em todos os exemplos, que a estrat égia adotada para a cria ção da tabela consistem em, inicialmente, criar a tabela sem a coluna de geometria. Em seguida, por meio da função AddGeometryColumn s ão adicionadas os respectivos campos para armazenamento da geometria dos objetos. A função AddGeometryColumn consiste numa fun ção OpenGIS que adiciona uma coluna geométrica para uma tabela existente. A fun ção pressupõe o fornecimento dos seguintes parâmetros, conforme abaixo:
AddGeometryColumn(
, , , , , ); onde schema_name é o nome do esquema que cont ém a tabela; srid corresponde ao identificador do Sistema de Referência Espacial, type refere-se a uma cadeia de caracteres maiúsculos correspondente à representação textual do tipo da geometria e dimension refere-se à quantidade de dimens ões da geometria.
5.2.4 Inserção de dados espaciais O PostGIS suporta o uso das formas WKB e WKT para expressar objetos espaciais. Para inserir objetos em uma tabela espacial, considerando tais formatos, é necessário a utilização de uma das seguintes interfaces: •
asBinary(geometry);
•
asText(geometry);
•
GeomFromWKB(bytea WKB, SRID);
•
GeometryFromText(text WKT, SRID);
As instruções a seguir demonstram exemplos de inser ções de dados nas tabelas espaciais base_operacional e area_atuacao, considerando a forma OpenGIS WKT e o uso da fun ão asText().
INSERT INTO ponto VALUES (1, 'Base Modelo', GeomfromText('POINT(-60.675328 2.823842)', 4618));
49
INSERT INTO area_atuacao VALUES (1,'Projeto Modelo', GeomfromText('MULTIPOLYGON(((-46.4728194130712 -24.0305557716514,-46.4738151886102 -24.0172810591925,-46.4733295926537 -24.0166271712872,-46.470100648918 -24.0165504527854,-46.4655942710686 -24.0194519543861,-46.4643994917175 -24.0194642571202,-46.4574173022783 -24.015473234362,-46.4491388835048 -24.012812920034,-46.4457911868078 -24.0127377633783,-46.4407544798087 -24.0113609120984,-46.4394254359995 -24.0101666580073,-46.4390194586516 -24.0062181906273,-46.4257414701422 -24.0052543007905,-46.4205734477402 -24.0027804792366,-46.4163607545294 -23.9998998155403,-46.409666903437 -23.9998977081679,-46.4069570081882 -24.0035747124025,-46.4043071927399 -24.0017342866321,-46.4032147847648 -23.9998983171887,-46.4003448958919 -23.9998995192859,-46.3964878871056 -24.0033050901213,-46.3951428051589 -24.0077022936492,-46.3972749957382 -24.0109957795718,-46.4029756338999 -24.011046184437,-46.4128485330221 -24.0097723646579,-46.4155275972195 -24.0100670653977,-46.4148769587637 -24.0140549953541,-46.4377739543069 -24.0182284351711,-46.4659995971715 -24.0268926601723,-46.4728194130712 -24.0305557716514)))', 4618)) PostGIS extendeu o padrão OGC pela criação das formas EWKB e EWKT. Al ém de permitir dados com mais de duas dimens ões, é possí vel associar o identificador do Sistema de Referência Espacial nas representa ções. Outra possibilidade de manipular dados espaciais em tabelas espaciais é considerar as formas canonicas de tipos PostgreSQL. Para este tipo de representa ção, pode-se realizar simples consultas, sem a necessidade do uso de fun ções, para inserir, atualizar ou copiar valores. Alternativamente, poderão ser criados arquivos de texto com comandos de inser ção em SQL, que poder ão ser carregados diretamente no PostgreSQL. A formata ção de tais arquivos segue as regras do SQL padr ão suportado pelo PostgreSQL.
50
Para inserir os dados contidos em um arquivo de comandos SQL basta executar o seguinte comando:
psql -d nome_banco -f
nome_arquivo.sql
5.2.5 Indices Espaciais A manipulação de objetos espaciais, armazenados na forma de tabelas em banco de dados, pode representar um alto custo computacional. Por vezes, o volume de dados em uma tabela espacial pode ser muito grande. Nestes casos, o acesso sequencial aos dados, no momento de uma consulta, poder á resultar num tempo de resposta n ão desejável, além de comprometer sensivelmente o desempenho do sistema. Neste contexto é imperativo a utilização de indexação espacial de forma a facilitar o acesso aos dados e otimizar o desempenho durante as consultas. Com o uso de indices pode-se melhorar a performance de um banco de dados. Os indices melhoram o acesso aos dados, possibilitando encontrar e recuperar dados de forma mais r ápida. Porém, deve-se ressaltar que indices n ão podem ser criados sem crit érios, pois o excesso de indices poder á resultar na diminuição do desempenho do banco de dados. PostgreSQL provê diversos tipos de í ndices, tais como B-tree, Hash, GiST and GIN. Cada tipo de í ndice utiliza um algoritmo diferenciado que é mais adequado para determinados tipos de consultas. PostGIS utiliza indice R-Tree implementado sobre GiST para indexar dados espaciais. Conforme especificado no Manual do Postgresql Generalized Search Tree – GiST é um método de acesso baseado em árvore que atua como um modelo para implementar esquemas de indexação. Esquemas de indexa ção B-trees e R-trees, dentre outros, podem ser implementados em GiST. Esta vantagens é destacada pelo autor, que afirma ser poss í vel com GiST o desenvolvimento de tipos de dados customizados com os m étodos de acessos apropriados. GiST é um estrutura de dados extens í vel, que permite aos usuários desenvolverem í ndices sobre qualquer tipo de dados. Este pacote unifica as diversas árvores de pesquisa populares em uma estrutura de dados, eliminando a necessidade de construir m últiplas árvores de pesquisa para uso em aplicações diversas (GISTPROJECT, 2008).
Para a criação do indice espacial é realizada com o comando CREATE INDEX, referenciando-se a coluna que armazena a geometria do objeto espacial.
CREATE INDEX nome_index ON nome_tabela USING GIST (nome_campo_geometria);
51
5.2.6 Consultas Espaciais Nesta seção são apresentadas fun ções suportadas pelo PostGIS em consultas espaciais. O uso de algumas destas fun ções é exemplificado por meio dos exemplos a seguir.
a) Quais Estados fazem divisa com o Estado do Amazonas? SELECT b.nm_nome FROM limite_politico_administrativo a, limite_politico_administrativo b WHERE a.nm_nome = 'AMAZONAS' AND ST_intersects(a.the_geom, b.the_geom); b) Quais as rodovias não pavimentadas do Estado do Pará? SELECT b.nm_sigla FROM limite_politico_administrativo a, rodovia_nao_pavimentada b WHERE a.nm_nome = 'PARÁ' AND a.the_geom && b.the_geom; c) Quais as rodovias que tocam a BR-116. SELECT DISTINCT b.* FROM rodovia_pavimentada a, rodovia_pavimentada b WHERE a.nm_sigla='BR-116' AND ST_intersects(a.the_geom, b.the_geom) d) Qual a rodovia não pavimentada com maior extensão? SELECT nm_sigla, sum (st_length(st_transform(the_geom,29101)))/1000 FROM rodovia_nao_pavimentada GROUP BY nm_sigla ORDER BY KM desc LIMIT 1 e) Qual o total de rodovias em pavimentação no Estado do Mato Grosso? SELECT a.* FROM rodovia_em_pavimentacao a, limite_politico_administrativo b WHERE b.nm_nome='MATO GROSSO' AND st_intersects(a.the_geom, b.the_geom) f) Quais as distâncias entre as capitais Porto Velho e São Paulo? SELECT ST_Distance(ST_Transform(a.the_geom,29101), ST_Transform(b.the_geom,29101))/1000 FROM capital_estadual a, capital_estadual b WHERE a.nm_nome = 'PORTO VELHO' AND b.nm_nome = 'SÃO PAULO';
52
g) Qual o porto mais próximo da cidade de Cuiabá? SELECT a.nm_nome, ST_Distance(ST_Transform(a.the_geom, 29101), ST_Transform(b.the_geom, 29101))/1000 AS distancia FROM porto a, capital_estadual b WHERE b.nm_nome = 'CUIABÁ' ORDER BY distancia; h) Quais os Estados cruzados pela Rodovia BR-364? SELECT distinct b.gid, b.the_geom, b.nm_nome FROM rodovia_pavimentada a, limite_politico_administrativo b WHERE a.nm_sigla = 'BR-364' AND ST_Crosses(a.the_geom, b.the_geom); i)Quais são os trechos de rodovias ligadas pela ponte Presidente Costa e Silva? SELECT b.gid, b.the_geom, b.nm_sigla FROM ponte a, rodovia_pavimentada b WHERE a.nm_nome = 'Ponte Presidente Costa e Silva' AND ST_Touches(a.the_geom, b.the_geom); j)Quais são os povoados localizados num raio de até 500 quilometros do Município de Cacoal? SELECT b.gid, b.the_geom, b.nm_nome FROM cidade a, povoado b WHERE a.nm_nome = 'Cacoal' AND ST_Distance(ST_Transform(b.the_geom, 29101), ST_Transform(a.the_geom,29101))/1000 <= 500; l)Criar um buffer de 200 metros a partir da rodovia BR-364: SELECT a.gid, ST_Buffer(ST_Transform(a.the_geom,29101), 200) FROM rodovia_pavimentada a WHERE a.nm_sigla = 'BR-364'; m)Criar a faixa de fronteira internacional: -- Criar o buffer dos paises vizinhos create table limite_politico_buffer as ( SELECT DISTINCT l.*, st_transform(Buffer(st_transform(l.the_geom,29101),15000),4291) as the_geom_buffer FROM limite_politico_administrativo l WHERE l.nm_nome <> 'Oceano Pacífico' AND l.cd_tipo_li = 'internacional' ) drop table limite_politico_buffer
53
alter table limite_politico_buffer add constraint pk_limite_politico_buffer_gid primary key (gid) -- Deixa somente a linha dos paises vizinhos create table brasil_faixa_fronteira as ( SELECT gid, nm_nome, SymDifference(the_geom, the_geom_buffer) as the_geom FROM limite_politico_buffer ) DROP TABLE brasil_faixa_fronteira ALTER TABLE brasil_faixa_fronteira ADD CONSTRAINT pk_brasil_faixa_fronteira_gid PRIMARY KEY (gid) -- Retira o pedacao da linha que esta fora do brasil CREATE TABLE br_faixa_fronteira AS ( SELECT f.nm_nome, intersection(f.the_geom, l.the_geom) as the_geom FROM brasil_faixa_fronteira f, limite_politico_administrativo l WHERE l.cd_tipo_li = 'estadual' ) DROP TABLE br_faixa_fronteira ALTER TABLE br_faixa_fronteira ADD COLUMN gid serial ALTER TABLE br_faixa_fronteira ADD CONSTRAINT pk_br_faixa_fronteira_gid PRIMARY KEY (gid) n)Quais são fronteira?
as cidades
(pontos) que
estão
dentro da faixa
de
SELECT a.gid, a.nm_nome, a.the_geom FROM cidade a, fronteira_buffer50km b WHERE ST_Within(a.the_geom, st_transform(b.the_geom,4618)); o)Quais são os Estados que estão na faixa de fronteira (parcial)? SELECT a.gid, a.nm_nome, a.the_geom FROM limite_politico_administrativo a, fronteira_buffer50km b WHERE cd_tipo_li = 'estadual' AND ST_Intersects(a.the_geom, ST_Transform(b.the_geom,4618)); p)Verificar se existem áreas de litígio atingidas pela faixa de fronteira: SELECT a.gid, a.nm_nome, a.the_geom FROM limite_politico_administrativo a, fronteira_buffer50km b WHERE cd_tipo_li = 'estadual/litigio' AND ST_Contains(st_transform(b.the_geom,4618), a.the_geom);
54
q)Quais os tipos capital_estadual?
de
geometrias
armazenadas
na
tabela
SELECT ST_GeometryType(the_geom) FROM capital_estadual; r) Qual o identificador do Sistema de Referência Espacial (SRID) das geometrias armazenadas na tabela limit_politico_administrativo? SELECT ST_SRID(the_geom) FROM limite_politico_administrativo; s) Qual o centróide dos polígonos dos Estados? SELECT gid, ST_Centroid(the_geom) FROM limite_politico_administrativo t)Selecionar todos os registros de uma determinada tabela e inserir numa tabela nova: SELECT * INTO teste_copia_limite FROM limite_politico_administrativo WHERE cd_tipo_li = 'estadual' u)Criar um arquivo no formato ESRI Shapefile com os registros resultantes de uma determinada consulta (execução em linha de comando): pgsql2shp -f testa_consulta -h localhost -u valente -P senha espacial2 “SELECT * FROM limite_politico_administrativo WHERE cd_tipo_li ='estadual'” ------------------------------------------------------------------Observação: As soluções para as consultas apresentadas foram elaboradas durante o curso Gerenciamento de Bases Espaciais com PostgreSLQ e PostGIS, ocorrido no Sistema de Proteção da Amazônia, no período de 24 a 28 de novembro de 2008. Deste modo, contribuiram para a elaboração do material desta seção os seguintes colegas: Carlos Ribeiro, Dalton Schneider, Danielle Sousa, Fábio Martins, José Goyana, Luis Motta,Renata Bitar, Renato Valente, Ronaldo Garcia, Samih Daibes, Og Arão, Pablo Filetti, Paulo Zuza, Vanderson Covre.
55
A tabela 11 a seguir apresenta os operadores extendidos pelo PostGIS. Tais operadores podem ser utilizados em consultas espaciais. Tabela 11: Operadores Suportados pelo PostGIS em Consultas Espaciais. Operador
Retorno do Operador
A &< B
Verdadeiro se o ret ângulo envolvente de A sobrep õe ou está
à esquerda do ret ângulo envolvente de B.
A &> B
Verdadeiro se o ret ângulo envolvente de A sobrep õe ou está
à direita do retângulo envolvente de B.
A << B
Verdadeiro se o ret ângulo envolvente de A est á estritamente
à esquerda do ret ângulo envolvente de B.
A >> B
Verdadeiro se o ret ângulo envolvente de A est á estritamente
à direita do retângulo envolvente de B.
A &<| B
Verdadeiro se o ret ângulo envolvente de A sobrep õe ou está
à abaixo do retângulo envolvente de B.
A |&> B
Verdadeiro se o ret ângulo envolvente de A sobrep õe ou está
à acima do retângulo envolvente de B.
A <<| B
Verdadeiro se o ret ângulo envolvente de A est á estritamente abaixo do ret ângulo envolvente de B.
A |>> B
Verdadeiro se o ret ângulo envolvente de A est á estritamente acima do ret ângulo envolvente de B.
A ~= B
Verdadeiro se A e B s ão geometricamente iguais.
A@B
Verdadeiro se o ret ângulo envolvente de A B.
A~B
Verdadeiro se o ret ângulo envolvente de A complementamente contém o retângulo envolvente de B.
A && B
Verdadeiro se o ret ângulo envolvente de A sobrep õe o retângulo envolvente de B.
é complementamente contido pelo ret ângulo envolvente de
A tabela 12 a seguir apresenta algumas funções OpenGIS suportadas pelo PostGIS. Recomenda-se a leitura do Manual do PostGIS, para conhecimento de todas as extens ões e funções suportadas pelos PostGIS. Tabela 12: Funções OpenGIS suportadas pelo PostGIS. Função AddGeometryColumn(varchar, integer, varchar, integer)
Retorno da Função varchar,
varchar, Adiciona uma coluna geom étrica em uma tabela de atributos.
DropGeometryColumn(varchar, varchar, varchar)
Remove uma coluna geométrica de uma tabela espacial.
ST_SetSRID(geometry, integer)
Define o identificador do Sistema de Referência Espacial de uma geometria.
ST_Distance(geometry, geometry)
A distância cartesiana entre duas geometrias na unidade projetada.
ST_DWithin(geometry, geometry, float)
Verdadeiro se a geometria está dentro de uma distância especificada de uma outra geometria.
56
Tabela 12 (continuação): Funções OpenGIS suportadas pelo PostGIS. Função
Retorno da Função
ST_Equals(geometry, geometry)
1 (TRUE) se as geometrias informadas são espacialmente iguais.
ST_Disjoint(geometry, geometry)
1 (TRUE) se as geometrias informadas são disjuntas
ST_Intersects(geometry, geometry)
1 (TRUE) se as geometrias informadas se intersectam.
ST_Touches(geometry, geometry)
1 (TRUE) se as geometrias informadas se tocam.
ST_Crosses(geometry, geometry)
1 (TRUE) se as geometrias informadas se cruzam.
ST_Within(geometry A, geometry B)
1 (TRUE) se a geometria A está dentro da geometria B.
ST_Overlaps(geometry, geometry)
1 (TRUE) se as geometrias informadas estão sobrepostas.
ST_Contains(geometry A, geometry B)
1 (TRUE) se a geometria A espacialmente contém a geometria B.
ST_Covers(geometry A, geometry B)
1 (TRUE) se nenhum ponto da geometria B est á fora da geometria A.
ST_CoveredBy(geometry A, geometry B)
1 (TRUE) se nenhum ponto da geometria A está fora da geometria B.
ST_Relate(geometry, intersectionPatternMatrix)
geometry, 1 (TRUE) se as geometrias s ão espacialmente relacionadas.
ST_Relate(geometry, geometry)
A matriz de inteseção DE-9IM
ST_Centroid(geometry)
O centróide da geometria, como um ponto.
ST_Area(geometry)
A área da geometria, se esta for um pol í gono ou multipoligono.
ST_Length(geometry)
O tamanho da curva, considerando seu Sistema de Referência Espacial.
ST_PointOnSurface(geometry)
O ponto que certamente encontra-se na superf íc ie.
ST_Boundary(geometry)
Os limites fechados da geometria.
ST_Buffer(geometry, double, [integer])
Uma geometria que representa todos os pontos cuja dist ância para a geometria é igual ou menor ao valor informado, calculado conforme seu Sistema de Refer ência Espacial.
ST_Intersection(geometry, geometry)
Uma geometria que representa o conjunto de pontos derivado da interseção entre duas geometrias.
ST_SymDifference(geometry A, geometry B)
Uma geometria que representa o conjunto de pontos derivado da diferença simétrica entre duas geometrias.
ST_Difference(geometry A, geometry B)
Uma geometria que representa o conjunto de pontos derivado da diferença entre duas geometrias.
57
Tabela 12 (continuação): Funções OpenGIS suportadas pelo PostGIS. Função
Retorno da Função
ST_Union(geometry, geometry)
Uma geometria que representa o conjunto de pontos derivado da união entre duas geometrias.
ST_Union(geometry set)
Uma geometria que representa o conjunto de pontos da uni ão de todas as geometrias em um dado conjunto.
ST_MemUnion(geometry set)
O mesmo que o anterior, porém utiliza menos mem ória e mais processamento.
ST_AsText(geometry)
A representação WKT da geometria.
ST_AsBinary(geometry)
A representação WKB da geometria.
ST_SRID(geometry)
O identificador do Sistema de Referência Espacial da geometria
ST_Dimension(geometry)
A dimensão do objeto geométrico.
ST_Envelope(geometry)
Um polí gono representando o retângulo envolvente da geometria
ST_IsEmpty(geometry)
1 (TRUE) se a geometria é vazia.
ST_IsSimple(geometry)
1 (TRUE) se a geometria é simples.
ST_IsClosed(geometry)
1 (TRUE) se a geometria e final são coincidentes.
ST_IsRing(geometry)
1 (TRUE) se a geometria é fechada (os pontos inicial e final são coincidentes) e a curva é simples (não ultrapassa o mesmo ponto mais de uma vez).
ST_NumGeometries(geometry)
Se for uma coleção de geometrias retorna o número de geometrias, caso contr ário, retorna NULL.
ST_GeometryN(geometry,int)
A n-ésima geometria, se for uma coleção de geometrias; caso contrário retorna NULL.
ST_NumPoints(geometry)
Procura e retorna o número de pontos do primeiro segumento de linha da geometria.
ST_PointN(geometry,integer)
O n-ésimo ponto do primeiro segmento de linha da geometria. Retona NULL se a geometria n ão for uma linha.
ST_ExteriorRing(geometry)
O anel exterior da polí gono. Retona NULL se a geometria não for um polí gono.
ST_NumInteriorRings(geometry)
O número de anéis interiores do primeiro polí g ono da geometria.
ST_InteriorRingN(geometry,integer)
O n-ésimo anel interior do polí gono. Retona NULL se a geometria não for um polí gono ou se o N fornecido estiver fora do intervalo.
ST_EndPoint(geometry)
O último ponto do segmento de linha da geometria.
é fechada, ou seja, os pontos inicial
58
Tabela 12 (continuação): Funções OpenGIS suportadas pelo PostGIS. Função
Retorno da Função
ST_StartPoint(geometry)
O primeiro ponto do segmento de lin ha ha da geometria.
ST_GeometryType(geometry)
O tipo da geometria, na forma textual.
ST_X(geometry)
A coordenada X do ponto.
ST_Y(geometry)
A coordenada Y do ponto.
ST_Z(geometry)
A coordenada Z do ponto, ou NULL se não existir.
ST_GeomFromText(text,[])
Constrói uma geometria a partir de sua representa ção WKT e um dado identificador de Sistema de Refer ência Espacial.
ST_PointFromText(text,[])
Constrói uma geometria a partir de sua representa ção WKT e um dado identificador de Sistema de Refer ência Espacial.
ST_LineFromText(text,[])
Constrói uma geometria a partir de sua representa ção WKT e um dado identificador de Sistema de Refer ência Espacial.
ST_LinestringFromText(text,[])
Constrói uma geometria a partir de sua representa ção WKT e um dado identificador de Sistema de Refer ência Espacial.
ST_PolyFromText(text,[])
Constrói uma geometria a partir de sua representa ção WKT e um dado identificador de Sistema de Refer ência Espacial.
ST_PolygonFromText(text,[])
Constrói uma geometria a partir de sua representa ção WKT e um dado identificador de Sistema de Refer ência Espacial.
ST_MPointFromText(text,[])
Constrói uma geometria a partir de sua representa ção WKT e um dado identificador de Sistema de Refer ência Espacial.
ST_MLineFromText(text,[])
Constrói uma geometria a partir de sua representa ção WKT e um dado identificador de Sistema de Refer ência Espacial.
ST_MPolyFromText(text,[])
Constrói uma geometria a partir de sua representa ção WKT e um dado identificador de Sistema de Refer ência Espacial.
ST_GeomCollFromText(text,[])
Constrói uma geometria a partir de sua representa ção WKT e um dado identificador de Sistema de Refer ência Espacial.
ST_GeomFromWKB(bytea,[])
Constrói uma geometria a partir de sua representa ção WKB e um dado identificador de Sistema de Refer ência Espacial.
ST_GeometryFromWKB(bytea,[])
Constrói uma geometria a partir de sua representa ção WKB e um dado identificador de Sistema de Refer ência Espacial.
ST_PointFromWKB(bytea,[])
Constrói uma geometria a partir de sua representa ção WKB e um dado identificador de Sistema de Refer ência Espacial.
ST_LineFromWKB(bytea,[])
Constrói uma geometria a partir de sua representa ção WKB e um dado identificador de Sistema de Refer ência Espacial.
ST_LinestringFromWKB(bytea,[])
Constrói uma geometria a partir de sua representa ção WKB e um dado identificador de Sistema de Refer ência Espacial.
59
Tabela 12 (continuação): Funções OpenGIS suportadas pelo PostGIS. Função
Retorno da Função
ST_PolyFromWKB(bytea,[])
Constrói uma geometria a partir de sua representa ção WKB e um dado identificador de Sistema de Refer ência Espacial.
ST_Po T_PollygonFro FromWKB(bytea,[]) >])
Constrói uma geometria a partir de sua representa ção WKB e um dado identificador de Sistema de Refer ência Espacial.
ST_MPointFromWKB(bytea,[])
Constrói uma geometria a partir de sua representa ção WKB e um dado identificador de Sistema de Refer ência Espacial.
ST_MLineFromWKB(bytea,[])
Constrói uma geometria a partir de sua representa ção WKB e um dado identificador de Sistema de Refer ência Espacial.
ST_MPolyFromWKB(bytea,[])
Constrói uma geometria a partir de sua representa ção WKB e um dado identificador de Sistema de Refer ência Espacial.
ST_G T_GeomCollF llFromWKB(bytea,[ rid>]) ])
Constrói uma geometria a partir de sua representa ção WKB e um dado identificador de Sistema de Refer ência Espacial.
ST_Bd ST_BdPo Poly lyFr From omTe Text( xt(te text xt WKT, WKT, integ integer er SRID SRID))
Cons Constr trói um polí gono gono a partir de uma cole ção arbitrária de linestrings fechadas em representa ção textual.
ST_BdM ST_BdMPol PolyFr yFromT omText ext(tex (textt WKT, WKT, integer integer SRID) SRID)
Constr Constrói um multipolí gono gono a partir de uma cole ção arbitrária de linestrings fechadas em representa ção textual.
60
Capí tulo tulo
6 Integração do PostgreSQL/PostGIS em Sistemas de Informação Geográfica Os bancos bancos espaci espaciai aiss armazen armazenados ados no PostgreSQL PostgreSQL e PostGIS atualme atualmente nte podem podem ser acessados por um grande n úmero de aplicativos SIG, bibliotecas para geoprocessamento e outros softwares da área. Neste Neste capí tulo tulo apresentaremos apresentaremos resumidam resumidamente ente algumas destas ferramentas. ferramentas. O objetivo objetivo é demons demonstrar trar a viab viabil ilid idade ade do PostgreSQL/Po PostgreSQL/PostGIS stGIS como op ção para armaze armazenam nament ento o de dados dados espaciais em arquiteturas propostas para SIG. Todos os softwares citados s ão livres e/ou de c ódigo aberto e, juntamente com PostgreSQL/ PostGIS podem compor uma infra-estrutura totalmente baseada em software livre e aderente aos padrões OGC. Para detalhes de instala ção, configuração e uso de cada um dos software citados nesta se ção, recomendamos fortemente a leitura dos respectivos manuais, dispon í veis veis nos sites oficiais de cada solução.
6.1 Convers ão de Arquivos Shapefile O formato Shapefile, desenvolvido pela empresa ESRI, tornou-se universal, sendo suportado pelas principais ferramentas SIG da atualidade. Um shapefile armazena atributos e geometria de dados espaciais em um conjunto de dados vetoriais.
O documen documento to ESRI Shapef Shapefil ilee Techni Technica call Descrip Description tion especi especific ficaa que um ESRI Shapef Shapefil ilee consiste de um arquivo principal (extens ão shp), um arquivo indice indice (extensão shx) e uma tabela dBASE (extensão dbf). O arquivo principal é um arquivo para acesso direto, de tamanho vari ável em que cada registro descreve um shape com uma lista de seus v értices. O arquivo í ndice ndice é responsável por armazenar a ligação entre o arquivo principal e a tabela dBase. A tabela dBASE cont ém os atributos dos objetos, com um registro registro para cada objeto. Observa-se Observa-se o relacioname relacionamento nto um para um entre geometrias e atributos.
61
O PostGIS dispões de um comando, denominado shp2pgsql, que converte arquivos Shapefiles em instruções SQL, permitindo inseri-los no banco espacial. Este comando agrega flexibilidade ao uso do PostGIS, pois permite facilmente integrar dados provenientes de SIG's diversos. O comando shp2pgsql possui a seguinte sintaxe b ásica:
shp2pgsql nome_arquivo.shp nome_arquivo.sql
nome_esquema.nome_tabela >
O arquivo SQL gerado poderá ser carregado normalmente para o banco, conforme demonstrado abaixo.
shp2pgsql [] psql -d nome_banco -f nome_arquivo.sql Os dois comandos supra mencionados podem ser executados em apenas uma linha de comando, como apresentado a seguir.
shp2pgsql nome_arquivo.shp nome_esquema.nome_tabela | psql -d nome_banco
É importante observar que para a perfeita execu ção do comando é necessário dispor dos três arquivos que comp õem um shapefile (.shp, .shx e .dbf). O comando shp2pgsql pode ser executado sob diversos modo, considerando as op ções apresentadas na tabela 13 a seguir. Tabela 13: Opções do Comando shp2pgsql Opção
Descrição
-d
Apaga a tabela, caso exista, antes de criar uma nova tabela com os dados contidos no arquivo.
-a
Anexa dados do arquivo na tabela.
-c
Cria uma nova tabela e popula com os dados do arquivo.
-p
Somente produz o código SQL para cria ção da tabela, sem adi ção dos dados.
-D
Usa o formato “dump” do PostgreSQL para os dados de sa í da.
-s
Cria e popula a tabela espacial considerando o identificador do Sistema de Referência Espacial informado.
-k
Mantém a capitula ção para nomes de colunas, esquema e atributos.
-i
Força todos os n úmeros do tipo Integer assumir o padr ão 32-bits.
62
Tabela 13 (continuação): Opções do Comando shp2pgsql Opção
Descrição
-I
Cria um í ndice GiST para a coluna de geometria.
-w
Gera saí da no formato WKT.
-W
Especifica codificação do arquivo de dados.
Semelhantemente, o processo inverso tamb ém pode ser executado por meio do comando pgsql2shp. Portanto, pgsql2shp conecta diretamente ao banco de dados e converte uma tabela, ou uma consulta, em um arquivo shapefile. A sintaxe b ásica do comando é apresentada abaixo:
pgsql2shp [] [.] pgsql2shp [] As opções para o comando pgsql2shp s ão apresentadas na tabela 14 a seguir. Tabela 14: Opções do Comando pgsql2shp Opção
Descrição
-f
Escreve a saí da no arquivo informado.
-h
Especifica o host para conex ão ao banco de dados.
-p
Especifica a porta para conex ão ao host do banco de dados.
-P
A senha para uso no banco de dados.
-i
O nome do usuário para uso no banco de dados.
-g
No caso de tabelas com diversas colunas geométricas, especifica a coluna que dever á ser considerada para escrever o shapefile.
-b
Utiliza um cursor binário.
6.2 Servidores de Mapas Os bancos de dados armazenados no PostgreSQL/PostGIS podem ser acessados por meio de servidores de mapas. As principais solu ções deste segmento, propriet árias ou livres, fornecem acesso aos PostgreSQL/PostGIS.
63
Dentre as op ções disponí veis, sugerimos a utiliza ção do GeoServer e do MapServer. Estes dois servidores de mapas podem ser utilizados para distribuir os dados armazenados no banco, utilizando padrões OGC WMS, WFS e WCS.
6.2.1 GeoServer O GeoServer é um servidor de c ódigo aberto que permite publicar informa ções espaciais na Web. Através do GeoServer é possí vel publicar e editar dados dispon í veis em formatos diversos como mapas, imagens, arquivos, etc., oriundos de diversos reposit órios de dados geogr áficos. O objetivo do servidor GeoServer é facilitar o uso e suporte para os padr ões abertos, permitindo o compartilhamento de informa ções espaciais de maneira interoper ável. Foi desenvolvido em conformidade com a especifica ção OpenGIS WFS (Web Feature Server) e suporta os protocolos WFS-T e WMS. Suporta diversos padr ões para banco de dados espaciais disponí veis no mercado, dentre eles Oracle Spatial, ArcSDE, PostGIS e shapefiles. Prov ê suporte para a linguagem GML. O código do GeoServer foi totalmente escrito em Java. É compatí vel com o padr ão de servidores J2EE como o Apache Tomcat, por exemplo. Assim, é possí vel implementar alterações no código fonte do aplicativo, adicionar novas funcionalidades ou adaptar algumas j á existentes.
6.2.2 MapServer O MapServer permite o desenvolvimento de aplica ções Web para distribui ção e visualização de dados espaciais. É um projeto livre e de c ódigo aberto, originalmente desenvolvido pela Universidade de Minesota em parceria com a NASA. Mapserver agora é um projeto do OSGeo. MapServer é um dos mais completos sistemas para disponibiliza ção de dados geogr áficos em ambiente Web (Internet e Intranet). Com performance superior aos outros sistemas similares proprietários (servidores de mapas), o MapServer possui recursos avan çados para implementação de soluções corporativas de geoprocessamento (UCHOA,2008). Dentre as caracter í sticas principais do MapServer, destaca-se a possibilidade de trabalhar com dados vetoriais e matriciais em diferentes formatos. Além disso, implementa diversas especificações OGC, tais como WMS, WFS, WCS, SLD e GML.
Segundo (UCHOA,2008),
64
A disponibilização de dados geogr á ficos, atravé s do MapServer, apesar de ser simples, exige a configuração de alguns arquivos textos. Esta é uma das desvantagens do MapServer em rela ção ao GeoServer (ver pr ó ximo t ó pico), pois este último conta com uma interface Web para , existe uma configuração/disponibilização dos Web Services. Por ém aplicação denominada de MapStorer (http://www.mapstorer.org/) que possibilita a configuração dos arquivos do MapServer via Web atrav é s de uma interface bem intuitiva.
Aplicações Mapserver podem acessar bases de dados espaciais contidas no PostgreSQL/PostGIS. Para acessar dados espaciais com Mapserver é necessário adicionar uma camada PostGIS no correspondente arquivo map da aplica ção. Devem ser observadas duas recomenda ções quanto ao acesso aos dados espaciais por aplicações Mapserver:
•
Utilize indices espaciais em camadas que pretende apresentar;
•
Utilize indices OID se pretender consultar as camadas apresentadas.
6.3 SIG Desktop
É extensa a lista das aplica ções de SIG Desktop que suportam PostgreSQL e PostGIS. Nesta
seção, citaremos apenas algumas delas: Quantum GIS, uDig, gvSIG e TerraView.
6.3.1 Quantum GIS Quantum GIS, também conhecido como QGIS, prov ê suporte para arquivos vetoriais, matriciais e de banco de dados. Al ém disso, possibilita a utiliza ção de diversos plugins. Outras caracterí sticas do Quantum GIS s ão:
•
•
•
•
Visualização e sobreposi ção de dados vetoriais e matriciais em diferentes formatos e projeções, sem a necessidade de convers ão para um formato interno ou comum; Dispões de ferramentas para cria ção de mapas e manipula ção de dados espaciais, por meio de um interface gr áfica amigável; Provê ferramentas para cria ção, edição e exporta ção de dados; Permite análises espaciais usando ferramentas de buffer para dados PostGIS ou ferramentas GRASS;
65
•
•
Publicação de mapas na internet com aux í lio da ferramenta de exporta ção de arquivos no formato mapfiles; Flexibilidade e adaptabilidade, considerando sua arquitetura que permite acre ścimos de plugins.
O QGIS fornece duas op ções para trabalhar com dados espaciais armazenados em tabelas PostGIS:
•
•
Incluir camadas obtidas diretamente de banco de dados PostGIS; Converter arquivos shapefile para tabelas PostGIS, por meio de um interface gr áfica provida pelo plugin SPLIT.
Além das op ções apresentadas acima, QGIS suporta o padr ão WMS, o que permite acessar dados contidos em PostGIS com aux í lio de servidores de mapas. O site oficial do QGIS disponibiliza o download das vers ões para instala ção em várias plataformas e a documenta ção completa para usu ários. O site pode ser acessado pelo seguinte endereço: http://qgis.org/
6.3.2 uDig Desenvolvido pela Refractions Research, o uDig foi desenvolvido para trabalhar com padrões abertos. uDig foi desenhado para integrar diversos formatos de arquivos, inclusive em relação à bancos de dados e servi ços web. As principais caracter í sticas do uDig s ão as seguintes:
•
•
•
•
•
Possibilidade de editar diretamente atributos e dados espaciais em bancos PostGIS, arquivos Shapefile e camadas WFS; Suporta manipulação de volumosos conjuntos de dados; Rápida renderização de camadas; Reprojeção de sistemas de coordenadas em tempo real; Suporte
á mapeamento temático;
uDig pode ser obtido diretamente no site http://www.refractions.net/products/udig/ .
66
6.3.3 gvSIG gvSIG é um aplicativo desenvolvido pela Generalitat Valenciana, por meio da Conselleria de Infraestructuras y Transporte. O gvSIG v êm se destacando como um dos SIG's mais completos. Possui desenvolvedores e usu ários de diversos pa í ses. As principais caracter í sticas do gvSIG s ão as seguintes:
•
•
•
•
•
•
•
•
Interface gráfica amigável; Permite acesso a maioria dos formatos matriciais e vetoriais, inclusive possibilitando modo de escrita para v ários destes formatos; Permitir a integração de dados remotos por meio de padr ões WMS, WFS, WCS e conexões à fontes de dados por meio de JDBC; Suporte a múltiplos idiomas; Oferece uma versão para dispositivos m óveis; Fornece funções de an álise espacial e topol ógica; Disponibiliza diversas extens ões que potencializam o uso do aplicativo. Disponibiliza recursos similares aos principais SIG's propriet ários do mercado.
Acessado o site oficial do gvSIG, no endere ço http://www.gvsig.gva.es poder á ser obtida as versões atualizadas do software e toda a documenta ção correspondente.
6.3.4 TerraView O TerraView é um software desenvolvido pelo INPE com base na biblioteca Terralib com objetivo de facilitar a visualiza ção de dados geogr áficos e prover recursos de consulta a an álise espacial.
Este software manipula dados vetoriais e matriciais, considerando um modelo de dados próprio, que pode ser implmentado em diversos SGBD's, incluindo PostgreSQL com PostGIS. O TerraView pode ser baixado no site do INPE, acessando o seguinte endere ço http://www.dpi.inpe.br/terraview/index.php.
67
6.4 phpPgGIS O phpPgGIS é um sistema desenvolvido pela empresa brasileira OpenGEO com base no phpPgAdmin e no MapServer para gerenciar dados espaciais armazenados no PostgreSQL/PostGIS.
O phpPgGIS inclui a capacidade de interpretar dados espaciais armazenados com o PostGIS, facilitando a gerência do banco de dados espacial. O sistema oferece a possibilidade de visualizar, num mapa, uma determinada fei ção contida na tabela espacial. O phpPgGIS est á disponí vel como um projeto aberto no SourceForge, a partir do seguinte endereço http://sourceforge.net/projects/phppggis.
68
Referências Almeida, Milcí ades Alves de. SDIG-PB: Um sistema distribuí do de informação geográfica para auxí lio à gestão dos recursos h í dricos da Para í ba [Dissertação de Mestrado]. Campina Grande: Universidade Federal da Para í ba; 1999. Anselin, Luc. What is Special About Spatial Data? Alternative Perspectives on Spatial Data Analysis. Department of Geography and Department of Economics and National Center for Geographic Information and Analysis, University of California. Bohan-Carter, G.F. Geographic Information Systems for Geoscientists Modeling with GIS. Kidlington, Pergamo, 1994. Borges, Karla Albuquerque de Vasconcelos. Modelagem de dados Geogr áficos: Um extensão do Modelo OMT para Aplicações Geogr áficas [Dissertação de Mestrado]. Funda ção João Pinheiro – Escola de Governo de Minas Gerais. Belo Horizonte, 1997. Brabec, F., Samet, H. Visualizing and Animating R-trees and Spatial Operations in Spatial Databases on the Worldwide Web. in Visual Database Systems 4 (VDB4), Chapman & Hall, London. Brandalize, M.C.B. Topografia. http://www.topografia.com.br.
PUC/BR.
Acesso
em
03/09/2004.
Dispon í vel
em:
Câmara, G., Casanova, M., Hemerly, A. S. Anatomia de Sistemas de Informa ções Geográficas. In: Escola de Computa ção, 10., 1996, Unicamp, Campinas, 1996. Carvalho, Marilia Sá; Souza-Santos, Reinaldo. An álise de dados espaciais em sa úde p ública: métodos, problemas, perspectivas. Cadernos Sa úde P ública, v.21, n.2, p.361-378, 2005. Ciferri, Ricardo Rodrigues. Um Benchmark voltado à Análise de Desempenho de Sistemas de Informações Geográficas [Dissetação de Mestrado]. Universidade Estadual de Campinas, 1995. Hjaltson G., Samet H. Ranking in spatial databases. In Symposium on Spatial Databases – SSD, 1995. IBGE – Instituto Brasileiro de Geografia e Estat í stica. Noções Básicas de Cartografia. Acesso em 17/11/2008, disponí vel em http://www.ibge.gov.br/home/geociencias/cartografia/manual_nocoes/representacao.html INPE – Instituto Nacional de Pesquisa Espaciais. Divis ão de Processamento de Imagens – DPI – Livros Online. Acesso em 15/11/2008. Dispon í vel em http://www.dpi.inpe.br/livros.php. OGC. The Open Geospatial Consortium. http://www.opengeospatial.org/.
Acesso
em
15/11/2008.
Dispon í vel
em
Passos, Iana Daya Cavalcante Facundo. Valida ção com Proposta de Extens ão do Modelo de Dados Mgeo+ [Dissertação de Mestrado]. Universidade Federal da Para í ba – UFPB, Campina Grande, 1996. PostgreSQL. PostgreSQL 8.3.4 Documentation. Acesso em 15/11/2008. Dispon í vel em http://www.postgresql.org/. Ramsey, Paul. PostGIS http://postgis.refractions.net/.
Manual.
Acesso
em
15/11/2008.
Dispon í vel
em
Refractions Research. Postgis. Acesso em 15/11/2008. Dispon í vel em http://postgis.refractions.net/ .