Curso Georeferenciacion IL
Curso Georeferenciacion IL
Curso Georeferenciacion IL
Temario
Repaso de SQL
Obtencin de datos georeferenciales (API de
Google)
Bases de datos espaciales: Postgis
Visualizacin
de datos georeferenciales en
aplicaciones: Qgis
Tratamiento
y presentacin de informacin
georeferencial con Pentaho
Bases de datos
Definicin y tipos de
Bds
Conjunto de datos pertenecientes a un mismo contexto
almacenados sistemticamente. Ejemplo: una biblioteca
Jerrquicas y de red
(obsoletas)
Transaccionales
(optimizan operaciones)
Relacionales
(normalizacin)
Multidimensionales
(hechos y dimensiones)
Bases de datos
Las bases de
datos
estn
integradas por:
Tablas
Columnas
Filas
Registros
Campos
Bases de datos
Modelo relacional
Caractersticas
Catlogos
Llaves primarias
Llaves forneas
No admite
redundancia
Sistemas
relacionales
Bases de datos
Modelo dimensional
Caractersticas
Tablas de
dimensiones
Tablas de hechos
Llaves subrogadas
Admite redundancia
Datawarehouses y
Datamarts
PostgreSQL
PostgreSQL
Antecedentes
IBM haba estado trabajando
desde 1973 con los primeros
conceptos, ideas y teoras sobre
bases de datos relacionales.
Su proyecto "System R" fue entre
otras cosas la primera
implementacin del lenguaje SQL
(Structured Query Language).
Este proyecto, sus decisiones de
diseo y muchos de los
algoritmos usados, influenciaron
muchos de los sistemas de bases
de datos relacionales que
aparecieron posteriormente.
El antecesor de PostgreSQL es el
proyecto Ingres (INteractive Graphics
REtrieval System) que estuvo activo
de 1977 a 1985. Su creador, el
profesor Michael Stonebraker de la
Universidad de Berkeley se bas
incialmente en el System R. Ingres
compiti con Oracle por el mercado.
En 1985 Stonebraker regresa a
Berkeley e inicia el proyecto
PostgreSQL.
En 1994 los estudiantes Andrew Yu y
Jolly Chen depuran el cdigo para que
fuera 100% en ANSI C, implementan
un intrprete de lenguaje SQL y
desarrollan la interfaz pgsql para las
consultas. Lo liberaron en 1995 como
PostgreSQL95.
En 1996 se cambia a PostgreSQL y se
crea el PostgreSQL Global
Development Team.
PostgreSQL
Caractersticas
Documentacin completa.
Licencia BSD (Admite el uso de su cdigo fuente en software propietario).
Disponible para Linux y UNIX en todas sus variantes (AIX, BSD, HP-UX, SGI
IRIX, Mac OS X, Solaris, Tru64) y Windows 32/64bit.
Funciones/procedimientos almacenados (stored procedures) en numerosos
lenguajes de programacion, entre otros PL/pgSQL (similar al PL/SQL de
Oracle), PL/Perl, PL/Python y PL/Tcl.
Numerosos tipos de datos y posibilidad de definir nuevos tipos.
Adems de los tipos estndares en cualquier base de datos, tenemos
disponibles, entre otros, tipos geomtricos, de direcciones de red, de cadenas
binarias, UUID, XML, matrices, etc.
Soporta el almacenamiento de objetos binarios grandes
APIs para programar en C/C++, Java, .Net, Perl, Python, Ruby, Tcl, ODBC,
PHP, Lisp, Scheme, Qt y muchos otros.
PostgreSQL
Instalacin
postgreSQL
Fuentes
Instalador
Interfaces
psql
pgAdmin
http://www.postgresql.
org/
PostgreSQL
Instalacin postgreSQL
psql
Descargar y descomprimir
archivos fuente:
PostgreSQL
pgAdmin
PostgreSQL
Iniciar y detener PosgreSQL
Como superusuario
sara@Naomi: sudo su
Iniciar el servicio
root@Naomi:/home/sara#
/etc/init.d/postgresql start
Detener el servicio
root@Naomi:/home/sara#
/etc/init.d/postgresql stop
[sudo]pwd:
sara@Naomi: nano
/etc/postgresql/9.3/main/start.conf
PostgreSQL
Iniciar y detener PosgreSQL
PostgreSQL
Comandos bsicos de psql
Entrar desde una terminal con:
sudo su - postgres
\?
psql [nombrebd]
PostgreSQL
Comandos bsicos de psql
PostgreSQL
Comandos bsicos de psql
select current_user;
select session_user;
PostgreSQL
Sentencias de SQL Bsicas
CREATE DATABASE
CREATE TABLE
ALTER TABLE
DROP TABLE
INSERT
UPDATE
DELETE
SELECT
Clusulas SELECT, FROM, INTO, WHERE
Clusulas GROUP BY, HAVING, ORDER BY
Tipos de JOIN
Subqueries
PostgreSQL
Sentencias de SQL Bsicas
CREATE DATABASE
Las tablas se definen en tres pasos:
PostgreSQL
Sentencias de SQL Bsicas
CREATE DATABASE
CREATE DATABASE nombre-tabla
[ [ WITH ] [ OWNER [=] nombre_de_usuario ]
[ TEMPLATE [=] plantilla ]
[ ENCODING [=] codificacin ]
[ TABLESPACE [=] nombre_de_tablespace ]
[ CONNECTION LIMIT [=] lmite_conexiones ] ]
Nota, para crear tablas debemos conectarnos a la BD
recin creada con \c nombreBD
Ejemplo:
PostgreSQL
Sentencias de SQL Bsicas
CREATE TABLE
CREATE TABLE nombre-tabla
(campo1 (tipo tamao / dominio) [NOT NULL],
[campo2 (tipo tamao / dominio) [NOT NULL]],
[PRIMARY KEY (c1, c2, ..., cn)],
[FOREIGN KEY (c1) REFERENCES tabla-x],
[CHECK (P)])
PostgreSQL
Sentencias de SQL Bsicas
CREATE TABLE
CREATE TABLE cuenta
(id_cuenta char(10) PRIMARY KEY NOT NULL,
id_cliente char(5) REFERENCES clientes(id_cliente),
pagos char(10),
saldo integer
CHECK (saldo >= 0));
CREATE TABLE auxiliar
(id_auxiliar integer PRIMARY KEY);
CREATE INDEX mi_indice
ON auxiliar (id_auxiliar ASC NULLS LAST);
PostgreSQL
Sentencias de SQL Bsicas
ALTER TABLE
PostgreSQL
Sentencias de SQL Bsicas
DROP TABLE
PostgreSQL
Sentencias de SQL Bsicas
INSERT
INSERT [INTO]
{table-name | view-name} [(column-list)]
{VALUES | (values-list) | select-statement }
PostgreSQL
Sentencias de SQL Bsicas
INSERT
INSERT INTO cuenta (id_cuenta, id_cliente, saldo) VALUES
('A09B00005','A0001',25416);
INSERT INTO cuenta (id_cuenta, id_cliente, saldo) VALUES
('A09B00006','A0001',18950);
INSERT INTO cuenta (id_cuenta, id_cliente, saldo) VALUES
('A09B00007','A0002',35000);
INSERT INTO cuenta (id_cuenta, id_cliente, saldo) VALUES
('A09B00008','A0003',8750);
INSERT INTO cuenta (id_cuenta, id_cliente, saldo) VALUES
('A09B00009','A0004',5600);
INSERT INTO cuenta (id_cuenta, id_cliente, saldo) VALUES
('A09B00050','A0004',3420);
INSERT INTO cuenta (id_cuenta, id_cliente, saldo) VALUES
('A09B00054','A0002',4970);
PostgreSQL
Sentencias de SQL Bsicas
UPDATE
UPDATE {table-name | view-name}
SET{column-list
| variable-list
| variable_and_column-list},..
[ WHERE { condition }]
saldo=3975
WHERE
PostgreSQL
Sentencias de SQL Bsicas
DELETE
PostgreSQL
Sentencias de SQL Bsicas
SELECT
Clusulas SELECT, FROM, INTO, WHERE
SELECT ... FROM ... WHERE
SELECT lista los atributos a mostrar en el resultado de
la consulta.
FROM lista las relaciones (tablas) que se deben
analizar.
WHERE se refiere a las condiciones de bsqueda que
debern cumplir los atributos en las relaciones
SELECT * FROM clientes;
SELECT id_cliente, nombre, direccion, limite_credito
FROM clientes WHERE limite_credito > 5000;
PostgreSQL
Sentencias de SQL Bsicas
SELECT
La clusula INTO, permite guardar los resultados
intermedios de una consulta
[SELECT ...] INTO tabla_into [FROM ...]
Los alias son tiles para evitar escribir nombres
muy largos cada vez. Slo funcionan en la consulta
activa.
[SELECT]
FROM expresin tabla [as] t_alias [, ...]
PostgreSQL
Sentencias de SQL Bsicas
SELECT
Las condiciones de bsqueda pueden incluir:
Operadores de Comparacin (=, <>, < y >).
PostgreSQL
Sentencias de SQL Bsicas
SELECT
Ejemplos de condiciones de bsqueda:
Operadores de comparacin:
WHERE SueldoBasico > 1000
WHERE SUBSTR(CodigoPostal, 1, 3)= SAN
Rangos (BETWEEN / NOT BETWEEN):
WHERE SueldoBsico BETWEEN 1000 AND 5000
Listas (IN / NOT IN):
WHERE Departamento NOT IN ('ADM', 'SIS')
Coincidencia de patrones o cadenas de caracteres
(LIKE / NOT LIKE))
WHERE NombreCompleto LIKE LET%
PostgreSQL
Sentencias de SQL Bsicas
SELECT
Clusulas GROUP BY, HAVING, ORDER BY
SELECT {{columnas_de_agrupacin,},
{funcin_de_agregacin,}}
FROM
[WHERE ]
GROUP BY {columnas_de_agrupacin,}
SELECT limite_credito FROM clientes GROUP BY
limite_credito;
SELECT id_cliente, SUM(saldo) FROM cuenta
GROUP BY id_cliente;
PostgreSQL
Sentencias de SQL Bsicas
SELECT
Clusulas GROUP BY, HAVING, ORDER BY
SELECT {{columnas_de_agrupacin,},
{funcin_de_agregacin,}}
FROM
[WHERE ]
GROUP BY {columnas_de_agrupacin,}
HAVING condiciones_de_bsqueda
SELECT id_cliente, SUM(saldo) FROM cuenta
GROUP BY id_cliente HAVING id_cliente LIKE 'A%'
ORDER BY id_cliente;
PostgreSQL
Sentencias de SQL Bsicas
SELECT
Clusulas GROUP BY, HAVING, ORDER BY
PostgreSQL
Sentencias de SQL Bsicas
SELECT
Los join sirven para combinar tablas, en PostgreSQL se definen tipos:
CROSS JOIN
SELECT ... FROM table1 CROSS JOIN table2
INNER JOIN
LEFT OUTER JOIN
SELECT ... FROM table1 LEFT OUTER JOIN table2 ON
conditional_expression ...
RIGHT OUTER JOIN
SELECT ... FROM table1 RIGHT OUTER JOIN table2 ON
conditional_expression ...
FULL OUTER JOIN
SELECT ... FROM table1 FULL OUTER JOIN table2 ON
conditional_expression ...
PostgreSQL
Representacin grfica de los tipos de Join
PostgreSQL
Representacin grfica de los tipos de Join
PostgreSQL
Representacin grfica de los tipos de Join
PostgreSQL
Sentencias de SQL Bsicas
SELECT
EL join que se utiliza comunmente es el INNER JOIN:
[SELECT]
FROM
ON TABLA1.COLUMNA1 = TABLA2.COLUMNA1
[WHERE]
SELECT cl.nombre, cl.direccion, SUM(ct.saldo) FROM
cuenta ct INNER JOIN clientes cl ON
cl.id_cliente=ct.id_cliente GROUP BY cl.id_cliente
ORDER BY cl.nombre;
PostgreSQL
Sentencias de SQL Bsicas
SELECT
Subqueries
SELECT
cl.nombre,
cl.limite_credito,
ct.total_saldo FROM (SELECT id_cliente,
SUM(saldo) total_saldo FROM cuenta
GROUP BY id_cliente) ct INNER JOIN
clientes cl ON cl.id_cliente= ct.id_cliente
ORDER BY nombre;
PostgreSQL
Sentencias de SQL Bsicas
Operadores matemticos:
PostgreSQL
Sentencias de SQL Bsicas
Operadores de comparacin
PostgreSQL
Sentencias de SQL Bsicas
Funciones de agregacin
PostgreSQL
Sentencias de SQL Bsicas
Funciones matemticas
PostgreSQL
Sentencias de SQL Bsicas
PostgreSQL
Sentencias de SQL
Bsicas
Georreferenciacin
Es un trmino de reciente
creacin que se refiere al
posicionamiento con el que se
define la localizacin de un
objeto espacial (representado
mediante un punto, un vector,
una lnea, una superficie o un
volumen) en un sistema de
coordenadas y un datum
determinado, es decir, en un
sistema de referencia espacial.
Este proceso es utilizado
frecuentemente en los Sistemas
de Informacin Geogrfica (SIG
o GIS).
La definicin tecnocientfica de
georreferenciacin de objetos en
un espacio fsico implica el
establecimiento de relaciones
entre las imgenes de raster o
vector sobre una proyeccin
geogrfica o sistema de
coordenadas.
Datum
Georreferenciacin
Georreferenciacin
Datum
El origen del sistema de coordenadas de un datum local no se
encuentra en el centro de la tierra. El centro del esferoide de un
datum local est desplazado respecto al centro de la tierra. NAD
1927 y el Datum Europeo de 1950 (ED 1950) son datums locales.
NAD 1927 se dise para que se
ajustara a Amrica del Norte
razonablemente bien, mientras
que ED 1950 se cre para su uso
en Europa. Dado que un datum
local alinea tan estrechamente su
esferoide a una rea determinada
de la superficie de la tierra, no es
adecuado para su uso fuera del
rea para la que se dise.
Georreferenciacin
Datos geodsicos
La geodesia es la
ciencia que se encarga
de la determinacin de
la forma y dimensiones
de la Tierra, as como
de la medicin de las
leves variaciones en el
campo magntico
terrestre.
Los datos geodsicos
se usan en topografa,
en navegacin, en
fotogrametra (area),
permiten la
representacin
cartogrfica de
territorios muy extensos.
Georreferenciacin
Sistemas de Referencia Espacial
Los Sistemas de Referencia Espacial se
clasifican en dos tipos segn Sister (2003):
Georreferenciacin
Sistemas de Referencia Espacial
Longitud
Georreferenciacin
Sistemas de Coordenadas
El primer sistema de
coordenadas que
aprendemos en la escuela
es el Cartesiano (x,y)
bidimensional, y (x,y,z) en
tres dimensiones. Pero
tambin conocemos las
coordenadas polares (r,),
las esfricas (r,,) y las
cilndricas (r,,z).
Georreferenciacin
Proyecciones
Las proyecciones son transformaciones entre sistemas de
coordenadas, los mapas son proyecciones de una superficie
esfrica sobre un plano, la ms conocida es la Mercator (s. XVI).
Georreferenciacin
Proyecciones
Georreferenciacin
Proyecciones
Dependiendo de nuestro inters podemos preservar los ngulos,
las distancias o las superficies de la esfera original al plano.
Georreferenciacin
Proyecciones
En en toda proyeccin de una esfera a un plano habr
distorsiones ya sea en la forma, las distancias, las direcciones o
las escalas.
Georreferenciacin
Proyecciones
En el Tratado de Tordesilla el Papa Alejandro VI decici que del
meridiano 48 de Greenwich, los territorios recin descubiertos
al Este eran para Espaa, y al Oeste para Portugal.
Georreferenciacin
Mapas
Las propiedades de un mapa son:
La escala
La proyeccin
Georreferenciacin
Sistema de Informacin Geogrfica
(SIG GIS)
El National Center for Geographic Information and
Analysis de USA define: Es un sistema de hardware,
software y procedimientos elaborados para facilitar la
obtencin, la gestin, la manipulacin, el anlisis, el
modelado, la representacin y la salida de datos
espacialmente
referenciados
para
resolver
problemas complejos de planificacin y gestin
(NCGIA, 1990).
Georreferenciacin
Sistema de Informacin Geogrfica
(SIG GIS)
Los GIS integran, almacenan, editan,
analizan, comparten y muestran
informacin
geogrficamente
referenciada. A travs de aplicaciones
de escritorio y para dispositivos
mviles los usuarios pueden hacer
consultas interactivas sobre mapas.
Los gobiernos pueden disear
estrategias logsticas para atender a
la poblacin, las empresas pueden
descubrir nichos de mercado, un
conductor puede conocer la ruta para
llegar a su destino.
Georreferenciacin
Antecedentes histricos
En 1854 el Dr. John Snow fue el primero en marcar sobre un mapa la
incidencia de casos de clera en el distrito de Soho en Londres. Con
esa informacin pudo identificar un pozo de agua contaminado como
origen del brote.
En 1962 el Departamento Federal de
Silvicultura y Desarrollo Rural en
Otawa cre el primer GIS para hacer
el inventario de tierras de Canad.
Fue ms que una aplicacin
cartogrfica
pues
permita
superponer capas de informacin,
realizar mediciones y llevar a cabo la
digitalizacin y escaneo de datos. El
CGIS oper hasta los aos noventa.
Georreferenciacin
Antecedentes histricos
En la dcada de los aos
ochenta Integraph, ESRI y
CARIS ofertaron software
comercial para GIS (Sistemas
de Informacin Geogrfica).
El Departamento de Defensa
de los EU desarrolla GRASS
para la supervisin y gestin
medioambiental de territorios.
En los aos noventa se
generaliza esta tecnologa a
nivel del usuario domstico
gracias a las PCs.
Georreferenciacin
Anlisis que debe realizar un GIS
Georreferenciacin
Anlisis que debe realizar un GIS
Georreferenciacin
Aplicaciones
PLANIFICACIN, GESTIN Y
POLTICA URBANA
CIENCIAS MEDIOAMBIENTALES
zonificacin
adquisicin de terrenos
desarrollo econmico
aplicacin de cdigos
programas de renovacin de
viviendas
respuesta a emergencias
anlisis de crmenes
tasacin tributaria
Georreferenciacin
Aplicaciones
CIENCIA POLTICA
COMERCIO
modelado de previsiones
INGENIERA CIVIL/SERVICIOS
ubicacin de instalaciones
subterrneas
diseo de trazado para
autopistas, trnsito
coordinacin en el mantenimiento
de infraestructuras
anlisis demogrfico
penetracin del mercado /
anlisis de acciones
seleccin de ubicaciones
GESTIN DE LA EDUCACIN
proyecciones de matrcula
Georreferenciacin
Aplicaciones
BIENES INMUEBLES
ASISTENCIA SANITARIA
epidemiologa
anlisis de necesidades
inventario de servicios
Georreferenciacin
Aplicaciones: GPS
El Sistema Global de Navegacin por
Satlite (GNSS) permite determinar
en todo el mundo la posicin de un
objeto, una persona o un vehculo
con una precisin hasta de
centmetros (si se utiliza GPS
diferencial), aunque lo habitual son
unos pocos metros de precisin. El
sistema fue desarrollado, instalado y
empleado por el Departamento de
Defensa de los Estados Unidos. El
sistema GPS est constituido por 24
satlites y utiliza la triangulacin para
determinar en todo el globo la
posicin con una precisin de ms o
menos metros. El GPS funciona
mediante una red de 24 satlites en
rbita sobre el planeta tierra, a 20
200 km, con trayectorias
sincronizadas para cubrir toda la
superficie de la Tierra.
Georreferenciacin
Creacin de datos digitales
El mtodo ms utilizado es la digitalizacin, donde a partir de un mapa impreso o con
informacin tomada en campo se transfiere a un medio digital por el empleo de un
programa de Diseo Asistido por Ordenador (DAO o CAD) con capacidades de
georreferenciacin. Con esta informacin se integran los datasets de los GIS.
Dada la amplia disponibilidad de imgenes orto-rectificadas (tanto de satlite como
areas), la digitalizacin por esta va se est convirtiendo en la principal fuente de
extraccin de datos geogrficos. Esta forma de digitalizacin implica la bsqueda de
datos geogrficos directamente en las imgenes areas en lugar del mtodo
tradicional de la localizacin de formas geogrficas sobre un tablero de digitalizacin.
Georreferenciacin
Georreferenciacin
Capas geogrficas:
Son las caractersticas geogrficas del evento o
rea que se desea modelar (divisin poltica,
hidrologa, caminos, contornos, etc.), las capas se
deben almacenar en archivos separados porque
representan atributos diferentes.
Georreferenciacin
Georreferenciacin
Datawarehouse espacial
PostGIS
Tipos de datos
Los datos en una BDG (Base de datos geogrfica) se
clasifican en tres tipos:
PostGIS
Tipos de datos
Almacenamiento de informacin
discreta
Informacin compacta y con mejor
compatibilidad con bases de datos
relacionales, fcil de actualizar
Representa los objetos por puntos,
lneas y polgonos
Formatos: shp, dwg, dxf, gml
Desventaja: es ms difcil de analizar y
y dar mantenimiento a su estructura
PostGIS
PostGIS
.SHP.XML (Metadatos)
Otros formatos
PostGIS
GeoJSON
Estndar para datos geogrficos basado en JSON.
PostGIS
Tipos de datos
Rster. Contiene informacin tipo imagen.
Representacin continua.
PostGIS
PostGIS
Instalacin de
PostgreSQL 9.3, PostGIS
2.1 PGAdmin 1.18 para
Ubuntu 12.04-13.10
Agregar el repositorio a
sources.list desde una
terminal ejecutar las
instrucciones:
sudo sh -c 'echo "deb
http://apt.postgresql.org/pub/r
epos/apt/ precise-pgdg main"
>> /etc/apt/sources.list'
wget --quiet -O http://apt.postgresql.org/pub/r
epos/apt/ACCC4CF8.asc |
sudo apt-key add sudo apt-get update
PostGIS
Instalacin de
PostgreSQL 9.3, PostGIS
2.1 PGAdmin 1.18 para
Ubuntu 12.04-13.10
Instalar (incuyendo el
adminpack)
sudo apt-get install
Postgresql-9.3-postgis
pgadmin3 postgresql-contrib
Habilitar el adminpack
(usando la consola psql)
sudo -u postgres psql
CREATE EXTENSION
adminpack;
\q (salir del psql)
PostGIS
Instalacin de
PostgreSQL 9.3, PostGIS
2.1 PGAdmin 1.18 para
Ubuntu 12.04-13.10
Capturar el password
deseado dos veces
exit (cerrar terminal)
PostGIS
Instalacin slo de
PostGIS 2.1 para Ubuntu
12.04-13.10
Instalacin
sudo add-apt-repository
ppa:ubuntugis/ubuntugisunstable
sudo apt-get update
sudo apt-get install postgis
PostGIS
Cambio de contrasea al
usuario postgres para
ubuntu
Si aparece el mensaje
'ALTER ROLE' la contrasea
se ha modificado
correctamente
PostGIS
Instalacin de PostGIS
Fedora, RedHat
Configurar repositorio:
Abrir y editar archivos
>sudo gedit
/etc/yum.repos.d/fedora.repo
(en lnea 10 insertar
exclude=postgresql* )
>sudo gedit
/etc/yum.repos.d/fedoraupdates.repo
(en lnea 9 insertar
exclude=postgresql* )
PostGIS
Qu es PostGis?
PostGIS: Es una extensin al sistema de base de datos
objeto-relacional PostgreSQL.
Permite el uso de objetos GIS(Geographic information
systems). PostGIS incluye soporte para ndices GiST basados
en R-Tree, y funciones bsicas para el anlisis de objetos GIS.
Fue creado por Refractions Research Inc, como un proyecto
de investigacin de tecnologas de bases de datos espaciales.
Ha sido publicado bajo licencia GNU.
Con PostGIS podemos usar todos los objetos que aparecen
en la especificacin OpenGIS como puntos, lneas, polgonos,
multilneas, multipuntos, y colecciones geomtricas.
PostGIS
Habilitar PostGIS
SELECT name, default_version,installed_version
FROM pg_available_extensions WHERE name LIKE postgis
% ;
postgres=# CREATE EXTENSION postgis;
CREATE EXTENSION
postgres=# CREATE EXTENSION postgis_topology;
CREATE EXTENSION
postgres=# CREATE EXTENSION fuzzystrmatch;
CREATE EXTENSION
postgres=# CREATE EXTENSION postgis_tiger_geocoder;
CREATE EXTENSION
PostGIS
Verificar instalacin de PostGIS
postgres=# Select na.address, na.streetname,
na.streettypeabbrev, na.zip FROM
normalize_address('1 Devonshire Place, Boston, MA
02109') AS na;
address | streetname | streettypeabbrev | zip
---------+------------+------------------+------1 | Devonshire | Pl
| 02109
(1 fila)
PostGIS
Objetos GIS
Representados en modo texto son:
POINT(0 0 0)
POINT(X Y Z)
MULTIPOINT(1 1 ,2 4,4 1)
PostGIS
Objetos GIS
Representados en modo texto son:
PostGIS
Objetos GIS
Representados en modo texto son:
GEOMETRYCOLLECTION(POINT(2 3 9),LINESTRING((2
3 4,3 4 5))
CIRCULARSTRING(0 0, 1 1, 1 0)
COMPOUNDCURVE(CIRCULARSTRING(0 0, 1 1, 1 0),(1
0, 0 1))
CURVEPOLYGON(CIRCULARSTRING(0 0, 4 0, 4 4, 0 4, 0
0),(1 1, 3 3, 3 1, 1 1))
MULTICURVE((0 0, 5 5),CIRCULARSTRING(4 0, 4 4, 8 4))
PostGIS
Objetos GIS
Representados en modo texto son:
MULTISURFACE(CURVEPOLYGON(CIRCULARSTRING(0
0, 4 0, 4 4, 0 4, 0 0),(1 1, 3 3, 3 1, 1 1)),((10 10, 14 12, 11
10, 10 10),(11 11, 11.5 11, 11 11.5, 11 11)))
Rasters
y sus colecciones.
PostGIS admite coordenadas en 2D, 3D y 4D.
PostGIS
Forma cannica y forma estndar
OpenGIS define dos formas de representar los objetos
espaciales:
1. (WKT)Well-Know Text es una codificacin o sintaxis en
formato ASCII diseada para describir objetos espaciales
expresados de forma vectorial. Esta sintaxis es un estndar
del OGC (Open Geospatial Consortium) que se usa para
especificar los componentes de un SRS y sus respectivos
valores. Muchas de las bases de datos espaciales, y en
especial PostgreSQL a travs de su extensin para el
almacenamiento y anlisis espacial PostGIS, utiliza esta
codificacin.
PostGIS
Forma cannica y forma estndar
2. (WKB)Well-Know Binary. Esta representacin de valores
geomtricos est definida por la especificacin OpenGIS.
Tambin est definida en el estndar ISO SQL/MM Part 3:
Spatial.
WKB se utiliza para intercambiar datos como cadenas binarias
representadas por valores BLOB que contienen informacin
geomtrica WKB.
WKB utiliza enteros sin signo de un byte, enteros sin signo de
cuatro bytes, y nmeros de ocho bytes de doble precisin
(formato IEEE 754). Un byte son ocho bits.
PostGIS
Forma cannica y forma estndar
PostGIS
SRID
Cada instancia espacial tiene un IDentificador de
Referencia eSpacial (SRID) dada la especificacin
OpenGIS. El SRID corresponde a un sistema de referencia
espacial basado en el elipsoide concreto usado para la
creacin de mapas de tierra plana o de tierra redonda.
El SRID es requerido cuando insertamos un objeto espacial
en la base de datos.
Por ejemplo, la funcin GeometryFromText requiere un
numero SRID.
PostGIS
Hay dos tablas de meta-datos en la especificacin OpenGIS
SPATIAL_REF_SYS:
Contiene un identificador numrico y una descripcin textual
del sistema de coordenadas espacial de la base de datos.
CREATE TABLE SPATIAL_REF_SYS(
SRID INTEGER NOT NULL PRIMARY KEY,
AUTH_NAME VARCHAR(256),
AUTH_SRID INTEGER,
SRTEXT VARCHAR(2048),
PROJ4TEXT VARCHAR(2048) )
PostGIS
Las columnas de las tablas son la siguientes:
SRID: Valor entero que identifica el sistema de referencia
espacial.
AUTH_NAME: El nombre del estndar para el sistema de
referencia. Por ejemplo: EPSG.
AUTH_SRID: El identificador segn el estndar AUTH_NAME.
En el ejemplo anterior es el id segn EPSG.
SRTEXT: Una Well-Know Text representacin para el sistema de
referencia espacial. (V. ejemplo en la siguiente lmina)
PROJ4TEXT: Proj4 es una librera que usa PostGIS para
transformar coordenadas . Esta columna contiene una cadena
con definicin de las coordenadas de Proj4 para un SRID dado.
PostGIS
Contenido de spatial_ref_sys
SELECT srid,auth_name, auth_srid, srtext,
proj4text FROM spatial_ref_sys LIMIT 100;
Hay ms de 3000 sistemas de referencia espaciales
en el catlogo de la OGC.
La columna proj4text tiene la cadena de definicin de
coordenadas para el SRID particular:
+proj=utm +zone=10 +ellps=clrk66 +datum=NAD27
+units=m
PostGIS
http://spatialreference.org/
PostGIS
Por ejemplo, el SRS WGS84 se representa en WKT como:
PROJCS[NAD83/UTM Zone 10N,
GEOGCS[NAD83,DATUM[North_American_Datum_1983,
SPHEROID[GRS 1980,6378137,298.257222101]],
PRIMEM[Greenwich,0],UNIT[degree,0.0174532925199433]],
PROJECTION[Transverse_Mercator],
PARAMETER[latitude_of_origin,0],
PARAMETER[central_meridian,-123],
PARAMETER[scale_factor,0.9996],
PARAMETER[false_easting,500000],
PARAMETER[false_northing,0], UNIT[metre,1]]
PostGIS
Para Mxico central tenemos el SRS NAD27:
PROJCS["NAD27 / New Mexico Central",
GEOGCS["NAD27",
DATUM["North_American_Datum_1927",
SPHEROID["Clarke 1866",6378206.4,294.9786982138982,
AUTHORITY["EPSG","7008"]],AUTHORITY["EPSG","6267"]],
PRIMEM["Greenwich",0,
AUTHORITY["EPSG","8901"]],
UNIT["degree",0.01745329251994328,
AUTHORITY["EPSG","9122"]], AUTHORITY["EPSG","4267"]],
PostGIS
Para Mxico central tenemos el SRS NAD27:
UNIT["US survey foot",0.3048006096012192,
AUTHORITY["EPSG","9003"]],
PROJECTION["Transverse_Mercator"],
PARAMETER["latitude_of_origin",31],
PARAMETER["central_meridian",-106.25],
PARAMETER["scale_factor",0.9999],
PARAMETER["false_easting",500000],
PARAMETER["false_northing",0],
AUTHORITY["EPSG","32013"],
AXIS["X",EAST],
AXIS["Y",NORTH]]
PostGIS
Para Mxico central tenemos el SRS NAD27:
INSERT into spatial_ref_sys (srid, auth_name, auth_srid, proj4text,
srtext) values ( 932013, 'epsg', 32013, '+proj=tmerc +lat_0=31
+lon_0=-106.25 +k=0.9999 +x_0=152400.3048006096 +y_0=0
+ellps=clrk66 +datum=NAD27 +to_meter=0.3048006096012192
+no_defs ', 'PROJCS["NAD27 / New Mexico
Central",GEOGCS["NAD27",DATUM["North_American_Datum_1927",
SPHEROID["Clarke
1866",6378206.4,294.9786982138982,AUTHORITY["EPSG","7008"]],
AUTHORITY["EPSG","6267"]],PRIMEM["Greenwich",0,AUTHORITY["
EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["
EPSG","9122"]],AUTHORITY["EPSG","4267"]],UNIT["US survey
foot",0.3048006096012192,AUTHORITY["EPSG","9003"]],PROJECTI
ON["Transverse_Mercator"],PARAMETER["latitude_of_origin",31],PAR
AMETER["central_meridian",106.25],PARAMETER["scale_factor",0.9999],PARAMETER["false_east
ing",500000],PARAMETER["false_northing",0],AUTHORITY["EPSG","3
2013"],AXIS["X",EAST],AXIS["Y",NORTH]]');
PostGIS
Los cdigos EPSG
PostGIS
La 2a tabla de meta-datos en la especificacin OpenGIS es
GEOMETRY_COLUMNS:
CREATE TABLE GEOMETRY_COLUMNS(
F_TABLE_CATALOG VARCHAR(256) NOT NULL,
F_TABLE_SCHEMA VARCHAR(256) NOT NULL,
F_TABLE_NAME VARCHAR(256) NOT NULL,
F_GEOMETRY_COLUMN VARCHAR(256) NOT NULL,
COORD_DIMENSION INTEGER NOT NULL,
SRID INTEGER NOT NULL,
TYPE VARCHAR(30) NOT NULL )
PostGIS
La 2a tabla de meta-datos en la especificacin OpenGIS es
F_TABLE_CATALOG,F_TABLE_SCHEMA,F_TABLE_NAME.
Distingue totalmente la tabla de caractersticas que contiene la
columna geomtrica.
F_GEOMETRY_COLUMN: Nombre de la columna geomtrica
en la tabla de caractersticas.
COORD_DIMENSION: Dimensin espacial de la columna(2D o
3D).
SRID: Es una clave fornea que referencia
SPATIAL_REF_SYS.
TYPE: Tipo de objeto espacial. POINT, LINESTRING,
POLYGON, MULTYPOINT, GEOMETRYCOLLECTION. Para
un tipo heterogneo debo usar el tipo GEOMETRY.
PostGIS
PostGIS
Carga de un script en psql
Como usuario postgres ejecutar las siguientes
instrucciones:
psql -d demo -f /home/sara/Documentos/scripts_1/city.sql
psql -d demo -f
/home/sara/Documentos/scripts_1/country.sql
psql -d demo -f /home/sara/Documentos/scripts_1/river.sql
psql -d demo -f /home/sara/Documentos/scripts_1/street.sql
psql -d demo -f /home/sara/Documentos/scripts_1/water.sql
PostGIS
Creacin de una tabla con datos espaciales
CREATE TABLE city (
gid int4 , AREA float8, PERIMETER float8,
CITIES_ numeric(38,9), CITIES_ID numeric(38,9),
CITY_NAME varchar, GMI_ADMIN varchar,
ADMIN_NAME varchar, FIPS_CNTRY varchar,
CNTRY_NAME varchar, STATUS varchar,
POP_RANK int4, POP_CLASS varchar,
PORT_ID int4);
SELECT AddGeometryColumn(
'public','city','the_geom','-1','POINT',2);
PostGIS
Creacin de una tabla con datos espaciales
CREATE TABLE country(
gid serial, area float8, perimeter float8,
cntry_ numeric,cntry_id numeric, fips_cntry
varchar, gmi_cntry varchar, cntry_name varchar,
sovereign varchar, pop_cntry float8, curr_type
varchar, curr_code varchar, landlocked varchar,
color_map varchar, sovereign_ varchar);
SELECT AddGeometryColumn('','country','the_geom','1','MULTIPOLYGON',2);
PostGIS
Creacin de una tabla con datos espaciales
CREATE TABLE river (
gid int4 , NAME varchar, DIAK_CDE varchar,
NAME2 varchar, DIAK_CDE2 varchar,
TYPE varchar, STATUS varchar, NAVIG
varchar);
SELECT
AddGeometryColumn('public','river','the_geom',
'-1','MULTILINESTRING',2);
PostGIS
Creacin de una tabla con datos espaciales
CREATE TABLE street (gid int4 , TYPE
varchar);
SELECT
AddGeometryColumn('public','street','the_geom',
'-1','MULTILINESTRING',2);
PostGIS
Creacin de una tabla con datos espaciales
CREATE TABLE water (
gid int4 , AREA float8, PERIMETER float8,
AA_HYDROP_ numeric(38,9), NAME
varchar, DIAK_CDE varchar, NAME2
varchar, DIAK_CDE2 varchar, TYPE varchar,
STATUS varchar, NAVIG varchar);
SELECT
AddGeometryColumn('public','water','the_geom',
'-1','MULTIPOLYGON',2);
PostGIS
Insercin en una tabla con datos espaciales
INSERT INTO city values
('0','0.000','0.000','20.000000000','53.000000000',
'Bismarck','USA-NDA','North Dakota','US',
'United States','Provincial capital','7',
'Less than 50,000','0',
ST_GeometryFromText('POINT (-100.7833025517
46.79999918311)',-1) );
PostGIS
PostGIS
Insercin en una tabla con datos espaciales
ALTER TABLE ONLY country ADD CONSTRAINT
country_pkey PRIMARY KEY (gid);
SELECT setval ('country_gid_seq', 1, true);
END;
(modifica manualmente el valor secuencial
country_gid_seq)
PostGIS
Insercin en una tabla con datos espaciales
INSERT INTO river
VALUES('0','Manistee',NULL,NULL,NULL,'stream',
'secondary','nonnavigable',
ST_GeometryFromText('MULTILINESTRING ((86.350807 44.252991 ,-86.179604 44.221001 ,86.079018 44.244381 ,-85.914146 44.22971 ,85.908544 44.229205 ))', -1) );
PostGIS
Insercin en una tabla con datos espaciales
INSERT INTO street
VALUES('0','main road',
ST_GeometryFromText('MULTILINESTRING ((85.908544 42.224331 ,-86.046608 42.216167 ,86.197639 42.164886 ,-86.320732 42.152447 ))',-1) );
PostGIS
Insercin en una tabla con datos espaciales
INSERT INTO water
VALUES('1','0.730','10.304','283.000000000','Winnipegosis',
NULL,NULL,NULL,'lake','main','nonnavigable',
ST_GeometryFromText('MULTIPOLYGON(((-99.8019008837
51.59410028077 ,-99.7277768837 51.59410028077 ,-99.7280578837
51.59360928077 ,-99.7375028837 51.58193928077 ,-99.7430568837
51.57749128077 ,-99.7569578837 51.57305128077 ,-99.7727808837
51.57138028077 ,-99.7911068837 51.57249028077 ,-99.7986068837
51.57915928077 ,-99.7997288837 51.58916128077 ,-99.8019008837
51.59410028077 )))',-1) );
PostGIS
ALTER TABLE: Agregar constraint de
validacin de datos espaciales a la tabla
ALTER TABLE river
ADD CONSTRAINT geometry_valid_check
CHECK (ST_IsValid(the_geom));
Modificar el SRID de un objeto en la tabla
SELECT UpdateGeometrySRID(river,the_geom,4326);
O su equivalente
ALTER TABLE river ALTER COLUMN the_geom TYPE
geometry(MULTILINESTRING, 4326) USING
ST_SetSRID(the_geom,4326);
PostGIS
Consulta de una tabla con datos espaciales
SELECT gid, type, GeometryType(the_geom),
ST_AsText(the_geom) FROM street;
SELECT gid, GeometryType(the_geom),
ST_AsText(the_geom) FROM water;
SELECT gid, GeometryType(the_geom),
ST_NPoints(the_geom) FROM water WHERE
ST_NPoints(the_geom)> 25;
SELECT gid FROM street WHERE
The_geom~=ST_GeometryFromText('LINESTRING(19123
2 243118,191108 243242)',-1);
PostGIS
Consulta de una tabla con datos espaciales
SELECT ci.gid, ci.city_name, ci.cntry_name, ci.area,
ci.pop_rank from city ci;
SELECT gid, name, area, perimeter,
ST_NumInteriorRings(the_geom) AS numholes FROM
water;
SELECT gid, area, perimeter, ST_NPoints(the_geom)
AS points FROM country;
SELECT gid, name, area, perimeter,
ST_Area(the_geom), ST_Perimeter(the_geom) FROM
water;
PostGIS
Consulta de una tabla con datos espaciales
SELECT gid, ST_AsText(the_geom),
ST_AsEwkt(the_geom), ST_X(the_geom),
ST_Y(the_geom) FROM city;
Encontrar ciudades cercanas a ros
select c1.city_name,r1.name from city c1, river r1 where
st_distance(c1.the_geom,r1.the_geom) > all (select
st_distance(c2.the_geom,r2.the_geom) from city c2, river r2
where c1.city_name <> c2.city_name);
Encontrar ciudades que son atravesadas por ros
select r.name,c.cntry_name from river r, country c where
st_crosses(r.the_geom,c.the_geom)='T' ;
PostGIS
Funciones
PostGIS
Funciones
AddGeometryColumn(varchar,varchar,varchar,integer,
varchar,integer)
Sintaxis:
AddGeometryColumn(<nombre_db>,<nombre_tabla>,<no
mbre_columna>,<srid>,<type>,<dimension>)
Aade una columna geomtrica a una tabla existente.
SRID debe ser un valor entero que referencia una valor en
la tabla SPATIAL_REF_SYS. El tipo debe ser una cadena
en maysculas que indica el tipo de geometra, como,
'POLYGON' o 'MULTILINESTRING'.
PostGIS
Funciones
DropGeometryColumn(varchar,varchar,varchar)
Sintaxis:DropGeometryColumn(<nombre_db>,<nombre_Ta
bla>,<nombre_columna>)
Elimina una columna geomtrica de una tabla espacial.
ST_AsBinary(geometry)
Devuelve la geometra pasndola a formato well-knownbinary de OGC, usando la codificacin endian del servidor
donde se ejecuta la base de datos.
ST_Dimension(geometry)
Devuelve 2 si la geometra es de 2D y 3 si es 3D.
Funciones
PostGIS
PostGIS
Funciones
ST_Z(geometry)
Encuentra y devuelve la coordenada Z del primer punto de
geometry. Devuelve NULL si no hay puntos.
ST_NumPoints(geometry)
Busca y devuelve el numero de puntos del primer linestring
en la geometry. Devuelve NULL sino hay linestring.
ST_PointN(geometry,integer)
Devuelve el punto ensimo en el primer linestring de
geometry. Y NULL sino hay ningn linestring.
PostGIS
Funciones
ST_ExteriorRing(geometry)
Devuelve el circulo exterior del primer polygon en la
geometry. Y nulo sino hay polgonos.
ST_NumInteriorRings(geometry)
Devuelve el nmero de crculos interiores del primer
polgono de la geometra, NULL sino hay ningn polgono.
ST_InteriorRingN(geometry,integer)
Devuelve el ensimo circulo interior del primer polgono en la
geometry. Y NULL sino hay polgonos.
ST_IsClosed(geometry)
Devuelve cierto si punto final = punto inicial de la geometra.
PostGIS
Funciones
ST_NumGeometries(geometry)
Si geometry es una GEOMETRYCOLLECTION devuelve el
nmero de geometras que la componen. En caso contrario
devuelve NULL.
ST_Distance(geometry,geometry)
Devuelve la distancia cartesiana entre dos geometras en
unidades proyectadas.
ST_AsText(geometry)
Devuelve una representacin textual de una geometra.
Ejemplo:
POLYGON(0 0,0 1,1 1,1 0,0 0)
PostGIS
Funciones
ST_SRID(geometry)
Devuelve un nmero entero que es el identificador del
sistema de referencia espacial de una geometra.
ST_GeometryFromText(varchar,integer)
Sintaxis: GeometryFromText(<geom>,<SRID>) convierte un
objeto de la representacin textual a un objeto geometra.
ST_GeomFromText(varchar,integer) Igual a
ST_GeometryFromText
ST_SetSRID(geometry)
Establece el valor del SRID de una geometra al entero dado.
Usado en la construccin de cajas circunscritas para
consultas.
PostGIS
Funciones
ST_EndPoint(geometry)
Devuelve un objeto punto que representa el ltimo punto en
la geometra.
ST_StartPoint(geometry)
Devuelve un objeto punto que representa el primer punto en
la geometra.
ST_Centroid(geometry)
Devuelve un punto que representa el centroide de la
geometra.
PostGIS
Otras funciones
A<&B
Devuelve verdadero si la caja que circunscribe a A
superpone o esta a la derecha de la de B.
A&>B
Devuelve verdadero si la caja que circunscribe a A
superpone o esta a la izquierda de la de B.
A<<B
Devuelve verdadero si la caja que circunscribe a A esta
estrictamente a la derecha de la de B.
PostGIS
Otras funciones
A>>B
Devuelve verdadero si la caja que circunscribe a
A esta estrictamente a la izquierda de la de B.
A~=B
Es equivalente al operador igual que. Compara las 2
geometras caracterstica por caracterstica y si todas
coinciden devuelve verdadero.
A~B
Devuelve verdadero si la caja circunscrita de A esta
contenida en la de B.
PostGIS
Otras funciones
A&&B
Si la caja circunscrita de A se superpone a la de B
devuelve Verdadero.
ST_Area(geometry)
Devuelve el rea de una geometra si es un POLYGON o
MULTIPOLYGON.
ST_AsBinary(geometry,'NDR')
Devuelve la geometra en el formato binario de OGC,
usando codificacion little-endian. Se usa para sacar datos
de la bd sin convertirlos a texto.
PostGIS
Otras funciones
ST_AsBinary(geometry,'XDR')
Devuelve la geometra en el formato binario de OGC,
usando codificacin big-endian. Se usa para sacar
informacin de la base datos sin convertirla a texto.
Box2D (geometry)
Box3D(geometry)
PostGIS
Otras funciones
ST_Collect(geometry)
Devuelve un objeto GEOMETRYCOLLECTION a partir de un
conjunto de geometras. Es una funcin de Agregacin en la
terminologa de PostgreSQL. Ejemplo:
SELECT COLLECT(GEOM) FROM GEOTABLE GROUP BY
ATTRCOLUMN
Devuelve una coleccin separada para cada valor distinto de
ARRTCOLUMN.
ST_Extent(geometry)
Es una funcin de Agregacin en la terminologa de
PostgreSQL. Trabaja sobre una lista de datos, de la
misma manera que las funciones sum() y mean().
PostGIS
Otras funciones
find_srid(varchar,varchar,varchar)
Sintaxis: find_srid(<db/esquema>,<tabla>,<columna>)
Devuelve el SRID de una columna dada buscando esta en
la tabla GEOMETRY_COLUMNS. Si la columna geomtrica
no ha sido aadida con la funcin AddGeometryColumns()
no funcionar.
ST_force_collection(geometry)
Convierte una geometra en una
GEOMETRYCOLLECTION. Esto se hace para simplificar la
representacin WKB .
PostGIS
Otras funciones
ST_Force_2d(geometry)
Fuerza la geometra a 2D as la representacin de salida
tendr solo las coordenadas X e Y. Se usa porque OGC
solo especifica geometras 2D.
ST_Force_3d(geometry)
Fuerza la geometra a 3D. As la todas las representaciones
tendrn 3 coordenadas X,Y y Z.
ST_Length2d(geometry)
Devuelve la longitud 3d de la geometra si es una linestring
o multilinestring.
PostGIS
Otras funciones
ST_length3d(geometry)
Devuelve la longitud 2d de la geometra si es una linestring
o multilinestring.
ST_length_spheroid(geometry,spheroid)
Calcula la longitud de una geometra en un elipsoide. Se
usa si las coordenadas de la geometra estn en
latitud/longitud. El elipsoide es un tipo separado de la base
de datos y se puede construir como: SPHEROID
[GRS_1980,6378137,298,257222101]
ST_max_distance(linestring,linestring)
Devuelve la distancia mas larga entre dos linestring.
PostGIS
Otras funciones
ST_mem_size(geometry)
Retorna el tamao en bytes de la geometra.
ST_npoints(geometry)
Devuelve el numero de puntos en la geometra.
ST_nrings(geometry)
Si la geometra es un polgono o multipolgono devuelve el
numero de crculos de la geometra.
num_sub_objects(geometry)
Devuelve el numero de objetos almacenados en la
geometra. Se usa en Multigeometras y
GEOMETRYCOLLECTIONs.
PostGIS
Otras funciones
ST_perimeter2d(geometry)
Devuelve el permetro 2d de la geometra, si esa geometra
es un polgono o un multipolgono.
ST_perimeter3d(geometry)
Devuelve el permetro 3d de la geometra, si esa geometra
es un polgono o un multipolgono.
ST_point_inside_circle(geometry,float,float,float)
Sintaxis:point_inside_circle(<geometry>,<circle_center_x>,<
circle_center_y>,<radius>)
Devuelve verdadero si la geometra es un punto y est
dentro del crculo.
PostGIS
Otras funciones
postgis_version()
Devuelve la versin de las funciones postgis instaladas en
la bases de datos.
ST_summary(geometry)
Devuelve un resumen en texto del contenido de esa
geometra.
ST_transform(geometry,integer)
Devuelve una nueva geometra con sus coordenadas
transformadas la SRID dada por el parmetro integer. SRID
debe existir en la tabla SPATIAL_REF_SYS.
PostGIS
Otras funciones
ST_translate(geometry,float8,float8,float8)
Traslada la geometra a la nueva localizacin usando los
valores pasados como desplazamientos X,Y,Z.
truly_inside(geometryA,geometryB)
Devuelve verdadero si alguna parte de B esta dentro de la
caja circunscrita de A.
ST_xmin(box3d) ST_ymin(box3d) ST_zmin(box3d)
Devuelve la mnima coordenada de la caja circunscrita.
ST_xmax(box3d) ST_ymax(box3d) ST_zmax(box3d)
Devuelve la mxima coordenada de la caja circunscrita.
PostGIS
Ejemplos del uso de funciones
Para cambiar la proyeccin que estamos usando a otra
transformacin:
ALTER TABLE street ALTER COLUMN the_geom TYPE
geometry(MULTILINESTRING, 3857) USING
ST_Transform(ST_SetSRID(the_geom ,4326),3857) ;
Consultas
SELECT
ST_GeomCollFromText('GEOMETRYCOLLECTION(
POINT(1 2),LINESTRING(1 2, 3 4))');
SELECT ST_PointFromText('POINT(-71.064544
42.28787)', 4326); (hace una geometra en WKB del SRID)
PostGIS
Ejemplos del uso de funciones
Mostrar ltimo punto del objeto o geometra
SELECT ST_AsText(ST_EndPoint('LINESTRING(1 1, 2 2, 3
3)'::geometry));
Mostrar polgono que envuelve una geometra
SELECT ST_AsText(ST_Envelope('LINESTRING(0 0, 1
3)'::geometry));
Ver si un objeto encierra una superficie
SELECT ST_IsClosed('LINESTRING(0 0, 1 1)'::geometry);
PostGIS
Ejemplos del uso de funciones
Ver si la geometra es un anillo, cerrada o simple
SELECT ST_IsRing(the_geom), ST_IsClosed(the_geom),
ST_IsSimple(the_geom)
FROM (SELECT 'LINESTRING(0 0, 0 1, 1 0, 1 1, 0
0)'::geometry AS the_geom) AS foo;
Mostrar pero si movemos el orden en los puntos
SELECT ST_IsRing(the_geom), ST_IsClosed(the_geom),
ST_IsSimple(the_geom)
FROM (SELECT 'LINESTRING(0 0, 0 1, 1 1, 1 0, 0
0)'::geometry AS the_geom) AS foo;
PostGIS
Ejemplos del uso de funciones
SELECT
ST_Y(ST_Centroid(ST_GeomFromEWKT('LINESTRING(1
2 3 4, 1 1 1 1)')));
SELECT
ST_Summary(ST_GeomFromText('LINESTRING(0 0, 1
1)')) as geom,
ST_Summary(ST_GeogFromText('POLYGON((0 0, 1 1, 1 2,
1 1, 0 0))')) geog;
SELECT
ST_AsText(ST_PointN(ST_GeomFromText(CIRCULARST
RING(1 2, 3 2, 1 2)),2));
PostGIS
Ejemplos del uso de funciones
Ver el sumario de un objeto
SELECT ST_Summary(ST_GeogFromText('
LINESTRING(0 0 1, 1 1 1)')) As geog_line,
ST_Summary(ST_GeomFromText('SRID=4326;
POLYGON((0 0 1, 1 1 2, 1 2 3, 1 1 1, 0 0 1)) ')) As
geom_poly;
SELECT tbl1.column1, tbl2.column1, tbl1.column2 &&
tbl2.column2 AS overlaps FROM ( VALUES (1,
'LINESTRING(0 0, 3 3)'::geometry),
(2,
'LINESTRING(0 1, 0 5)'::geometry)) AS tbl1, ( VALUES (3,
'LINESTRING(1 2, 4 6)'::geometry)) AS tbl2;
QGIS
Instalacin
Mens y funciones
Ejemplos
$ sudo apt-addrepository
ppa:ubuntugis/ubuntu
gis-unstable
$ sudo apt-get
update
$ sudo apt-get install
qgis
QGIS
Quantum GIS
QGIS
Quantum GIS
QGIS
Mens y funciones
La interfaz del QGIS tiene 6 reas:
1. Barra de mens (encabezado superior)
2. Barra de herramientas
3. Explorador y capas
4. Mapa
5. Vista general del mapa
6. Barra de estado (parte inferior)
QGIS
Mens y funciones
1
2
3
6
5
QGIS
Mens y funciones
Opciones del men Proyectos
Abrir: buscar proyectos
Guardar, Guardar como (formato
Qgis)
Guardar como imagen:
QGIS
Mens y funciones
Opciones del men
Edicin
Deshacer y
rehacer
Copiar, cortar,
pegar
Rotar
Aadir y borrar
objetos
QGIS
Mens y funciones
Opciones del men Ver
Permite acercar y alejar la
imagen
Tiene varios submens:
Seleccionar
Medir
Ilustraciones
Pneles
Barras de herramientas
QGIS
Mens y funciones
Seleccionar
Medir
Ilustraciones
Pneles
Barras de
herramientas
QGIS
Mens y funciones
Opciones del men
Capa
Permite abrir y
aadir todo tipo de
capas: vectoriales,
rster, etc.
Duplicar, eliminar y
guardar capas.
Modificar sus
propiedades.
QGIS
Mens y funciones
Opciones del men
Configuracin
QGIS
Mens y funciones
Opciones del men
Configuracin
QGIS
Mens y funciones
Configuracin
QGIS
Mens y funciones
Configuracin
QGIS
Mens y funciones
Opciones del men
Complementos
QGIS
Mens y funciones
Opciones del men
Complementos
QGIS
Mens y funciones
Anlisis
Men Vectorial
Investigacin
Gestin de datos
Geoproceso
Geometra
QGIS
Mens y funciones
Opciones del
men Rster
Proyecciones:
Conversin:
Extraccin:
Miscelnea:
Anlisis:
QGIS
Mens y funciones
Opciones del men Base de datos
Pestaa de
informacin
general de
la BD
QGIS
Mens y funciones
Vista preeliminar de datos
QGIS
Mens y funciones
Opciones del men
Procesado
QGIS
Mens y funciones
Opciones del men
Procesado
En la ventana de
comandos se
presentan opciones
para su ejecucin
QGIS
Mens y funciones
Opciones del men
Ayuda
Aqu se puede
consultar la
documentacin
(manuales y
tutoriales)
QGIS
Mens y funciones
Agregar capa raster
Seleccionar el archivo de imagen landcover.img
QGIS
Mens y funciones
Agregar
capas:
Especificar
el SRC
NAD27.
QGIS
Mens y funciones
Agregar capa vectorial
Seleccionar el archivo dando clic en explorar
elegir la codificacin UTF-8
Mens y funciones
Agregar capa
vectorial desde
archivo.
QGIS
QGIS
Mens y funciones
Propiedades
capa raster
QGIS
Mens y funciones
Propiedades
capa
raster
QGIS
Mens y funciones
Propiedades
capa
vectorial
QGIS
Mens y funciones
Propiedades capa vectorial
QGIS
Mens y funciones
Propiedades capa vectorial
QGIS
Mens y funciones
Propiedades capa vectorial
QGIS
Mens y funciones
Propiedades capa vectorial
QGIS
Mens y funciones
Atributos de una capa vectorial
QGIS
Mens y funciones
Atributos capa vectorial
QGIS
Mens y funciones
Guardar mapa
QGIS
Conectar una base de datos
Al agregar una
capa PostGIS
es necesario
establecer una
conexin a una
Base de Datos.
Antes de dar OK,
pruebe la
conexin dando
clic en el botn
Probar conexin
QGIS
Mens y funciones
Agregar capas postgreSQL
QGIS
Mens y funciones
Agregar
capas
postgreSQL
QGIS
Mens y funciones
Ejemplo de mapa con capas seleccionadas.
QGIS
Mens y funciones
Agregar
capas
postgreSQL
QGIS
Mens y funciones
Mostrar propiedades de objetos en las capas (Se
selecciona primero la capa deseada). Capa: country
QGIS
Mens y funciones
Mostrar propiedades de objetos en las capas (Se
selecciona primero la capa deseada). Capa: city
QGIS
Mens y funciones
Agregar un filtro (consulta SQL) a las capas.
A travs de la opcin filtro del men sobre la capa deseada.
QGIS
Mens y funciones
Agregar un filtro (consulta SQL) a las capas, utilizando la
opcin de agregar expresin SQL
QGIS
Mens y funciones
Agregar un
filtro (consulta
SQL) a las
capas.
El resultado se
muestra
identificando
con icono
amarillo las
ciudades que
cumplen la
condicin de la
expresin SQL
QGIS
Mens y funciones
Descargar datos de OpenStreetMap
Ir a http://www.openstreetmap.org/export#map=13/47.3668/8.5359
Y dar coordenadas para descargar datos 8.4698,47.336,8.6098,47.3965
QGIS
Mens y funciones
Descargar datos de OpenStreetMap
Usar complemento de QGIS para descargar
Y dar coordenadas para descargar datos 8.4698,47.336,8.6098,47.3965