Академический Документы
Профессиональный Документы
Культура Документы
PostgreSQL/Postgis
Elaborado por:
Enrique Flores Escudero
Natanael García Sosa
Validación técnica:
Lic. Agustín García Rodríguez
Área de TI:
Laboratorio de Visión por Computadora
INAOE
Contenido
¿Qué es un SIG? .............................................................................................................................. 3
Sistema de coordenadas................................................................................................................. 4
Proyección cilíndrica ........................................................................................................................ 5
Proyección cónica ............................................................................................................................ 5
Proyección azimutal, cenital o polar .............................................................................................. 5
Información geográfica en un SIG ................................................................................................. 6
El Datum ............................................................................................................................................ 6
Datum de referencia......................................................................................................................... 6
Instalación de PostgreSQL 8.4...................................................................................................... 8
Instalación del complemento Postgis 1.4. .................................................................................... 8
Transformación de cartas ............................................................................................................... 9
Ogrinfo.............................................................................................................................................. 10
Comandos de ogrinfo..................................................................................................................... 10
Ver Datum, Proyección y Atributos de una carta....................................................................... 10
Ver el tipo de objetos de un .shp.................................................................................................. 11
ogr2ogr ............................................................................................................................................. 12
Comandos de ogr2ogr ................................................................................................................... 12
Unir varios archivos .shp en un solo .shp ................................................................................... 15
S57.................................................................................................................................................... 15
Subir directamente una carta náutica .000 al PostgreSQL ...................................................... 15
pgsql2shp......................................................................................................................................... 20
shp2pgsql......................................................................................................................................... 20
Convertir nuestro archivo .shp a .sql ........................................................................................... 21
gdal info............................................................................................................................................ 22
gdal_rasterize .................................................................................................................................. 23
Crear un punto, línea o polígono a través de un query sql ...................................................... 25
Bibliografía: ...................................................................................................................................... 34
Anexo ............................................................................................................................................... 35
2
¿Qué es un SIG?
Un Sistema de Información Geográfica es una integración
organizada de hardware, software y datos geográficos diseñada
para capturar, almacenar, manipular, analizar y desplegar en todas
sus formas la información geográficamente referenciada con el fin
de resolver problemas complejos de planificación y gestión.
También puede definirse como un modelo de una parte de la
realidad referido a un sistema de coordenadas terrestre y
construido para satisfacer unas necesidades concretas de
información. En el sentido más estricto, es cualquier sistema de
información capaz de integrar, almacenar, editar, analizar, compartir
y mostrar la información geográficamente referenciada. En un sentido más genérico, los SIG son
herramientas que permiten a los usuarios crear consultas interactivas, analizar la información
espacial, editar datos, mapas y presentar los resultados de todas estas operaciones.
La tecnología de los Sistemas de Información Geográfica puede ser utilizada para investigaciones
científicas, la gestión de los recursos, gestión de activos, la arqueología, la evaluación del impacto
ambiental, la planificación urbana, la cartografía, la sociología, la geografía histórica, el marketing,
la logística por nombrar unos pocos. Por ejemplo, un SIG podría permitir a los grupos de
emergencia calcular fácilmente los tiempos de respuesta en caso de un desastre natural, el SIG
puede ser usado para encontrar los humedales que necesitan protección contra la contaminación,
o pueden ser utilizados por una empresa para ubicar un nuevo negocio y aprovechar las ventajas
de una zona de mercado con escasa competencia.
3
Sistema de coordenadas
Un sistema de coordenadas es un conjunto de valores y puntos que
permiten definir unívocamente la posición de cualquier punto de un espacio
euclídeo o más generalmente variedad diferenciable.
4
Proyección cilíndrica
La proyección de Mercator, que revolucionó la cartografía, es cilíndrica y
conforme. En ella, se proyecta el globo terrestre sobre una superficie
cilíndrica. Es una de las más utilizadas, aunque por lo general en forma
modificada, debido a las grandes distorsiones que ofrece en las zonas de
latitud elevada, lo que impide apreciar a las regiones polares en su
verdadera proporción. Es utilizada en la creación de algunos mapamundis. Para corregir
las deformaciones en latitudes altas se usan proyecciones pseudocilíndricas, como la de
Van der Grinten, que es policónica, con paralelos y meridianos circulares. Es
esencialmente útil para ver la superficie de la Tierra completa.
Proyección de Mercator
Proyección de Peters
Proyección cónica
La proyección cónica se obtiene proyectando los elementos de la
superficie esférica terrestre sobre una superficie cónica tangente, situando
el vértice en el eje que une los dos polos. Aunque las formas presentadas
son de los polos, los cartografos utilizan este tipo de proyección para ver
los países y continentes.
Proyección ortográfica
Proyección estereográfica
Proyección gnomónica
Proyección azimutal de Lambert
5
Información geográfica en un SIG
Modelo vector Modelo raster
Usa segmentos de línea discretos o puntos División del área
para señalar localizaciones, de acuerdo
con un sistema de referencia
Los elementos geográficos se forman a Almacenamiento a nivel de celda. ¿Qué
partir de la conexión de segmentos de almacena?
líneas rectas
Los objetos vectoriales no necesariamente Representación explícita: cada punto
ocupan la totalidad del espacio; así, no se corresponde a una loc. En Una celda
requiere identificar absolutamente todas las
localizaciones.
Posee una base de datos espacial (x,y), y Concepto de capa o layer
una base de datos descriptiva (atributos)
Codificación de relaciones topológicas
No está asociada a una base alfanumérica.
El Datum
El término datum se aplica en varias áreas de estudio y trabajo específicamente cuando
se hace una relación hacia alguna geometría de referencia importante, sea ésta una línea,
un plano o una superficie (plana o curva).
Datum de referencia
Un datum geodésico es una referencia de las medidas tomadas. En geodesia un datum
es un conjunto de puntos de referencia en la superficie terrestre en base a los cuales las
medidas de la posición son tomadas y un modelo asociado de la forma de la tierra
(elipsoide de referencia) para definir el sistema de coordenadas geográfico. Datums
horizontales son utilizados para describir un punto sobre la superficie terrestre. Datums
verticales miden elevaciones o profundidades. En ingeniería y drafting, un datum es un
punto de referencia, superficie o ejes sobre un objeto con los cuales las medidas son
tomadas.
6
desarrollados para referenciar puntos en determinadas áreas convenientes para ese área.
Datums contemporáneos están diseñados para cubrir áreas más grandes.
7
Instalación de PostgreSQL 8.4
$ apt-get update
$ apt-get install vim
//editar el fichero siguiente
$ vim /etc/apt/sources.list
//agregar al final del fichero las siguientes lineas
deb http://ppa.launchpad.net/pitti/postgresql/ubuntu jaunty main
deb-src http://ppa.launchpad.net/pitti/postgresql/ubuntu jaunty main
//agregar la llave del postgresql
$ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 8683d8a2
$ sudo apt-get update
$ sudo apt-get install postgresql-8.4
//cambiamos el puerto 5433 al 5432
$ sudo sed -i.bak -e 's/port = 5433/port = 5432/'
/etc/postgresql/8.4/main/postgresql.conf
//reiniciamos el servidor de postgresql
$ sudo /etc/init.d/postgresql restart
8
Transformación de cartas
No Posible transformación Revisión Aprobación
1 Shapefile (datum diferente) a Shapefile (datum WGS84) SI SI
2 Shapefile (Proj. diferente) a Shapefile (Proj. cilíndrica) SI SI
3 Shapefile (Datum WGS84, Proj. cilíndrica) a Formato POSTGIS SI SI
4 Formato POSTGIS a Shapefile (Datum WGS84, Proj. Cilíndrica) SI SI
5 Formato POSTGIS a Shapefile a Visor GIS SI SI
6 Formato POSTGIS a Visor GIS a SHP SI SI
7 Carta S57 a PostgreSQL a Shapefile a Shapefile (wgs84, Proj. SI SI
Cilíndrica) a PostgreSQL a Visor
8 Carta S57 a Shapefile (wgs84, Proj. Cilíndrica) SI SI
9 Carta S57 (Datum diferente) a Carta S57 (Datum WGS84) SI SI
10 Carta S57 (Proj. Diferente) a carta S57 (Proj. Cilíndrica) SI SI
11 Carta S57 a Visor a SHP SI SI
12 Cartas Aereas (Datum diferente) a Shapefile (Datum WGS84) NO NO
13 Cartas Aereas (Proj. Diferente) a Shapefile (Proj. Cilíndrica) NO NO
9
Ogrinfo
Para poder realizar una transformación lo primero que debemos de hacer es identificar el
datum y la proyección de la carta, para eso tenemos el complemento de la librería gdal
llamado ogrinfo y es una herramienta que sirve para ver los contenidos de un Shapefile,
proyección, datum y atributos de la carta, además ver que geometría la compone.
Comandos de ogrinfo
$ ogrinfo
Usage: ogrinfo [--help-general] [-ro] [-q] [-where restricted_where]
[-spat xmin ymin xmax ymax] [-fid fid]
[-sql statement] [-al] [-so] [-fields={YES/NO}]
[-geom={YES/NO/SUMMARY}][--formats]
datasource_name [layer [layer ...]]
Sintaxis:
$ ogrinfo -al -so nombre_carta.shp
Ejemplo:
$ ogrinfo -al -so CurvasNivel.shp
INFO: Open of `CurvasNivel.shp'
using driver `ESRI Shapefile' successful.
Layer name: CurvasNivel
Geometry: Line String
Feature Count: 99488
Extent: (911404.625948, 352702.863535) - (3914799.979274, 2349596.704755)
Layer SRS WKT:
PROJCS["North_America_Lambert_Conformal_Conic",
GEOGCS["ITRF92",
DATUM["ITRF_1992",
SPHEROID["GRS_1980",6378137.0,298.257222101]],
PRIMEM["Greenwich",0.0],
UNIT["Degree",0.0174532925199433]],
PROJECTION["Lambert_Conformal_Conic_2SP"],
PARAMETER["False_Easting",2500000.0],
PARAMETER["False_Northing",0.0],
PARAMETER["Central_Meridian",-102.0],
PARAMETER["Standard_Parallel_1",17.5],
PARAMETER["Standard_Parallel_2",29.5],
10
PARAMETER["Latitude_Of_Origin",12.0],
UNIT["Meter",1.0]]
OBJECTID: Integer (10.0)
FC: Integer (5.0)
ENTIDAD: String (15.0)
TIPO: String (51.0)
ELEVACION: Real (19.5)
LENGTH: Real (15.3)
SHAPE_len: Real (19.11)
Sintaxis:
$ ogrinfo -ro -q nombre_carta.shp
Ejemplo:
$ ogrinfo -ro -q CurvasNivel.shp
1: CurvasNivel (Line String)
Obtenemos como resultado Line String, lo cual nos indica que contiene líneas en su
geometría.
11
ogr2ogr
Nos permite importar/exportar archivos .shp a otros formatos y viceversa. Si solo
escribimos ogr2ogr en la terminal podremos comprobar el tipo de sintaxis que se puede
utilizar y los formatos que soporta la herramienta.
Comandos de ogr2ogr
Usage: ogr2ogr [--help-general] [-skipfailures] [-append] [-update] [-gt n]
[-select field_list] [-where restricted_where]
[-sql <sql statement>]
[-spat xmin ymin xmax ymax] [-preserve_fid] [-fid FID]
[-a_srs srs_def] [-t_srs srs_def] [-s_srs srs_def]
[-f format_name] [-overwrite] [[-dsco NAME=VALUE] ...]
[-segmentize max_dist]
dst_datasource_name src_datasource_name
[-lco NAME=VALUE] [-nln name] [-nlt type] [layer [layer ...]]
12
-sql statement: Execute given SQL statement and save result.
-skipfailures: skip features or layers that fail to convert
-gt n: group n features per transaction (default 200)
-spat xmin ymin xmax ymax: spatial query extents
-segmentize max_dist: maximum distance between 2 nodes.
Used to create intermediate points
-dsco NAME=VALUE: Dataset creation option (format specific)
-lco NAME=VALUE: Layer creation option (format specific)
-nln name: Assign an alternate name to the new layer
-nlt type: Force a geometry type for new layer. One of NONE, GEOMETRY,
POINT, LINESTRING, POLYGON, GEOMETRYCOLLECTION, MULTIPOINT,
MULTIPOLYGON, or MULTILINESTRING. Add "25D" for 3D layers.
Default is type of source layer.
-a_srs srs_def: Assign an output SRS
-t_srs srs_def: Reproject/transform to this SRS on output
-s_srs srs_def: Override source SRS
Sintaxis:
$ ogr2ogr -f "ESRI Shapefile" -s_srs "proyección_carta_entrada" -t_srs
"proyección_carta_salida" archivo_salida.shp archivo_a_transformar.shp
13
Ejemplo:
$ ogr2ogr -f "ESRI Shapefile" -s_srs "+proj=lcc +lat_1=17.5 +lat_2=29.5 +lat_0=12
+lon_0=-102 +x_0=2500000 +y_0=0 +ellps=GRS80 +units=m +no_defs" -t_srs
"+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs" salida.shp
CurvasNivel.shp
Sintaxis:
$ ogr2ogr –t_srs EPGS:Número_estandar archivo_salida.shp archivo_entrada.shp
Ejemplo:
$ ogr2ogr -t_srs EPSG:4326 pruebakike2.shp CurvasNivel.shp
3.- Cambiar la proyección de la carta .shp y el datum usando la proyección de otro .shp
Los archivos .prj contienen el datum y la proyección utilizada en la carta; existen cartas
que no contienen este archivo.
-t_srs: se utiliza para definir el datum y la proyección a partir de un archivo con extensión
.prj.
archivo.prj: definimos la ruta del archivo .prj que contiene la proyección y el datum
adecuado.
archivo_salida.shp: ruta del nuevo archivo que se va a crear con el nuevo datum y
proyección.
archivo_entrada.shp: ruta del archivo .shp existente que vamos a transformar.
Sintaxis:
$ ogr2ogr –t_srs archivo.prj archivo_salida.shp archivo_entrada.shp
Ejemplo:
$ ogr2ogr -t_srs 10m_ocean.prj /home/enrique/Escritorio/curvas.shp
/home/enrique/Escritorio/curvas/CurvasNivel.shp
14
Unir varios archivos .shp en un solo .shp
Esto se puede realizar solo si los archivos .shp tienen la misma geometría (punto,
línea, polígono, etc) y el mismo datum y proyección.
Sintaxis:
archivo_nuevo se fusionara con el archivo_existente en este caso archivo_nuevo
tomara todos los valores del archivo_existente.
$ ogr2ogr archivo_nuevo.shp archivo_existente.shp
-update: abre el origen de datos de salida existente en el modo de actualización en lugar
de intentar crear una carta nueva.
-append se realizara una unión de capas, actualizando el archivo nuevo sin generar otro
archivo, este mismo archivo tendrá dos capas en uno solo.
archivo_nuevo.shp: poner la ruta y el nombre del nuevo archivo.shp.
siguiente_capa_a_unir.shp: la capa que se va a unir con el archivo_nuevo.shp.
-nln: asigna un nombre alternativo a la nueva capa.
$ ogr2ogr -update -append archivo_nuevo.shp siguiente_capa_a_unir.shp -nln
archivo_nuevo.shp
Ejemplo:
$ ogr2ogr file_merged.shp Acueducto.shp
$ ogr2ogr -update -append file_merged.shp carretera.shp -nln file_merged
S57
Subir directamente una carta náutica .000 al PostgreSQL
-f: aquí se pone el formato de salida, en la página 12 se muestran todos los archivos
soportados por ogr2ogr, en este ejemplo usaremos “PostgreSQL”.
PG: especificamos que se hará una conexión al servidor PostgreSQL.
host: ponemos la ip del servidor o en caso de ser conexión local se usará “localhost”.
user: este parámetro lleva el nombre de un usuario por ejemplo “postgres” en el ejemplo.
dbname: especificar a qué base de datos se va a subir la carta náutica.
password: introducimos la contraseña con la cual se entra a PostgreSQL; por último se
escribe el nombre de la carta s57 con extensión .000
Sintaxis:
$ ogr2ogr –f "formato_salida" PG:"host=servidor user=usuario dbname=base_datos
password=contraseña" archivo.000
Ejemplo:
$ ogr2ogr -f "PostgreSQL" PG:"host=localhost user=postgres dbname=pruebashp
password=kikeflores" US2EC03M.000
15
Carta S57 a Shapefile (wgs84, Proj. Cilíndrica)
16
17
18
19
pgsql2shp
Formato POSTGIS a Shapefile (Datum WGS84, Proj. Cilíndrica)
-f: identifica el formato y seguido de este va la ruta de salida y nombre del archivo que se
va a obtener.
-h: ip del servidor al que se realizara la conexión, en caso de ser servidor local poner
“localhost”.
-u: aquí se especifica el usuario que tiene permiso para realizar transacciones sobre la
base de datos, en el ejemplo se utilizo “postgres”.
-P: este parámetro se utiliza para hacer una conexión mediante contraseña, en caso de
tener habilitada la seguridad para las bases de datos, si no se tiene seguridad, omitir este.
Sintaxis:
$ pgsql2shp -formato nombre_archivo_salida -h host -u usuario -P contraseña -p
puerto base_datos tabla
Ejemplo:
$ pgsql2shp -f prueba -h localhost -u postgres -P kike1uno -p 5432 acueducto
wfsgeo
shp2pgsql
shp2pgsql es una herramienta vía consola que permite la conversión de nuestro
archivo en formato shp a sql.
$ shp2pgsql
RCSID: $Id: shp2pgsql-core.h 5098 2010-01-04 05:47:04Z pramsey $ RELEASE: 1.5
USE_GEOS=1 USE_PROJ=1 USE_STATS=1
USAGE: shp2pgsql [<options>] <shapefile> [<schema>.]<table>
OPTIONS:
-s <srid> Set the SRID field. Defaults to -1.
(-d|a|c|p) These are mutually exclusive options:
-d Drops the table, then recreates it and populates
it with current shape file data.
-a Appends shape file into current table, must be
20
exactly the same table schema.
-c Creates a new table and populates it, this is the
default if you do not specify any options.
-p Prepare mode, only creates the table.
-g <geocolumn> Specify the name of the geometry/geography column
(mostly useful in append mode).
-D Use postgresql dump format (defaults to SQL insert statments.
-G Use geography type (requires lon/lat data).
-k Keep postgresql identifiers case.
-i Use int4 type for all integer dbf fields.
-I Create a spatial index on the geocolumn.
-S Generate simple geometries instead of MULTI geometries.
-W <encoding> Specify the character encoding of Shape's
attribute column. (default : "WINDOWS-1252")
-N <policy> NULL geometries handling policy (insert*,skip,abort)
-n Only import DBF file.
-? Display this help screen.
Ejemplo
$ shp2pgsql /home/user/curvas_nivel.shp bd_curvas > script.sql
$ psql -d bd_curvas -f script.sql
21
gdal info
Permite visualizar los atributos de una capa raster.
Sintaxis:
$ gdalinfo archivo.tif
Ejemplo:
$ gdalinfo HYP_50M_SR.tif
Driver: GTiff/GeoTIFF
Files: HYP_50M_SR.tif
HYP_50M_SR.aux
HYP_50M_SR.rrd
Size is 10800, 5400
Coordinate System is:
GEOGCS["WGS 84",
DATUM["WGS_1984",
SPHEROID["WGS 84",6378137,298.2572235629972,
AUTHORITY["EPSG","7030"]],
AUTHORITY["EPSG","6326"]],
PRIMEM["Greenwich",0],
UNIT["degree",0.0174532925199433],
AUTHORITY["EPSG","4326"]]
Origin = (-179.999999999999972,90.000000000000000)
Pixel Size = (0.033333333333330,-0.033333333333330)
Metadata:
AREA_OR_POINT=Area
TIFFTAG_SOFTWARE=Adobe Photoshop CS3 Macintosh
TIFFTAG_DATETIME=2009:09:09 14:51:29
TIFFTAG_XRESOLUTION=342.85699
TIFFTAG_YRESOLUTION=342.85699
TIFFTAG_RESOLUTIONUNIT=2 (pixels/inch)
Image Structure Metadata:
INTERLEAVE=PIXEL
Corner Coordinates:
Upper Left (-180.0000000, 90.0000000) (180d 0'0.00"W, 90d 0'0.00"N)
Lower Left (-180.0000000, -90.0000000) (180d 0'0.00"W, 90d 0'0.00"S)
Upper Right ( 180.0000000, 90.0000000) (180d 0'0.00"E, 90d 0'0.00"N)
Lower Right ( 180.0000000, -90.0000000) (180d 0'0.00"E, 90d 0'0.00"S)
Center ( -0.0000000, 0.0000000) ( 0d 0'0.00"W, 0d 0'0.00"N)
Band 1 Block=10800x1 Type=Byte, ColorInterp=Red
Overviews: 2700x1350, 1350x675, 675x338, 338x169, 169x85, 85x43
Metadata:
LAYER_TYPE=athematic
Band 2 Block=10800x1 Type=Byte, ColorInterp=Green
22
Overviews: 2700x1350, 1350x675, 675x338, 338x169, 169x85, 85x43
Metadata:
LAYER_TYPE=athematic
Band 3 Block=10800x1 Type=Byte, ColorInterp=Blue
Overviews: 2700x1350, 1350x675, 675x338, 338x169, 169x85, 85x43
Metadata:
LAYER_TYPE=athematic
gdal_rasterize
Permite hacer una unión de una capa raster y una capa vectorial, siempre y cuando
el datum y la proyección de las dos capas sean las mismas.
23
Diagrama de transformación de cartas.
Crear un punto, línea o polígono a través de un query sql
Para poder crear una capa con cualquiera de los elementos vectoriales en una
capa gis, puede punto, línea o polígono necesitamos tener instalado Postgres con
el complemento postgis. La Base de datos que se crea debe heredar las tablas de
postgis que son:
SPATIAL_REF_SYS
GEOMETRY_COLUMNS
Iniciar PostgreSQL
Llenamos los campos necesarios para crear la base de datos y damos clic en
“aceptar”.
26
Iniciamos con las sentencias del leguaje SQL para la creación de la
tabla
gid serial ,
NAME varchar,
DIAK_CDE varchar,
NAME2 varchar,
DIAK_CDE2 varchar,
TYPE varchar,
STATUS varchar,
NAVIG varchar
);
27
Verificamos si se creó correctamente la tabla en la base de
datos.
28
El Query de AddGeometryColumn quedaría de la siguiente manera:
EJEMPLO:
29
El tercer componente es agregar el campo geométrico = 'the_geom'
30
3. Insertar datos a la tabla espacial.
Código ejemplo:
31
'0',
'Manistee',
NULL,
NULL,
NULL,
'stream',
'secondary',
'nonnavigable',
32
48.041107 ,-91.386803 48.05888 ,-91.347229 48.068054 ,-91.318611 48.069439
,-91.27639 48.072632 ,-91.240555 48.083603 ,-91.19249 48.114998 ,-91.14917
48.144157 ,-91.126099 48.154991 ,-90.969162 48.214714 ,-90.928329 48.2286 ,-
90.898056 48.236656 ,-90.868607 48.237495 ,-90.835213 48.227074 ,-90.8358
48.20446 ,-90.773895 48.103748 ,-90.749863 48.09277 ,-90.279999 48.113052 ,-
90.146523 48.121449 ,-90.065552 48.106453 ,-90.032776 48.069717 ,-89.99424
48.025269 ,-89.899788 47.990616 ,-89.862503 48.000832 ,-89.838898 48.011665
,-89.755562 48.029575 ,-89.606384 48.011868 ,-89.572914 48.002251 ,-
89.493126 48.003166 ,-89.447769 48.003326 ,-89.356659 47.979713 ,-89.323334
47.99305 ,-88.974167 48.13916 ,-88.691666 48.255554 ,-88.645554 48.26416 ,-
88.368057 48.31221 ,-88.188324 48.244156 ,-87.444717 47.955826 ,-87.341675
47.915543 ,-87.201401 47.860275 ,-86.884445 47.734718 ,-86.568893 47.60833
,-86.46666 47.567215 ,-86.051392 47.39888 ,-86.014725 47.383881 ,-85.908544
47.340395 ,-85.908544 38.2435 ,-101.004056 38.2435 ))',-1) );
Este ejemplo de Query hace una inserción de datos a la tabla “river” que
geoespacial.
33
Bibliografía:
http://help.nceas.ucsb.edu/GDAL
http://www.naturalearthdata.com/downloads
http://www.guia-ubuntu.org/index.php?title=PostgreSQL
http://www.libgd.org/Main_Page
http://www.digipedia.pl/man/doc/view/shp2pgsql.1
http://www.gdal.org/ogr2ogr.html
http://www.inf.ufrgs.br/~vbogorny/CMP539/exercicio1/spatialQueries.html
34
Anexo
35
Las cartas descargadas de división política, lagos y ríos del mundo se obtuvieron del sitio:
www.naturalearthdata.com/downloads están elaboradas con el apoyo de las siguientes
empresas:
Las cartas de ríos y lagos de México respaldas por ESRI se obtuvieron de la página:
http://www.cas.sc.edu/gis/datalinks/topic_nonscgeog.html
36
La carta de curvas de nivel de México respaldada por el INEGI (Instituto Nacional de
Estadística y Geografía) se obtuvo de la siguiente página:
http://mapserver.inegi.gob.mx/data/inf1m/?c=720
37