¿Crear buffer en metros?

15

Soy muy nuevo en el mundo SIG, por lo que mi problema podría ser muy estúpido, pero lo intentaré de todos modos.

Objetivo

Dada una lista de coordenadas en longitud / latitud, almacenada como un .csvarchivo, quiero crear un búfer con una distancia de xkm alrededor de esas coordenadas. (En caso de que esto sea relevante, estas coordenadas son ubicaciones de las sociedades en el conjunto de datos SCCS . Estas sociedades se dispersan por todo el mundo).

Problema

Solo puedo crear buffers con distancia en grados radiales, pero quiero hacerlo en (kilo) metros. Soy consciente de las siguientes preguntas y respuestas, pero seguir lo que se sugiere allí no parece resolver mi problema:

Lo que he intentado ...

  1. Comienzo QGIS (v2.4), y Add delimited text layer
  2. elige mi .csvarchivo y los campos x / y, haz clicOK
  3. seleccionar WGS 84como mi CRS (también lo intenté NAD83pero no marcó la diferencia), haga clic enOK
  4. haga clic derecho en la capa y seleccione Save As..., en el cuadro de diálogo, elija lo siguiente y haga clic en OK: ingrese la descripción de la imagen aquí
  5. agregar sccs_meter.shpcomo capa al proyecto actual
  6. Seleccionar Vector> Geoprocessing Tools> Buffers> juego de distancia de buffer como 10

El resultado es un búfer con un radio de aproximadamente 1068 km, lo que sugiere que la distancia del búfer es de 10 grados en lugar de 10 metros.

¿Qué hice mal aquí?

Herr K.
fuente
1
"¿Cuál es el flujo de trabajo para almacenar en búfer en metros / km usando capas WGS84?" resuelve su problema, lea los comentarios. Cuando usa la herramienta de búfer, usa las unidades CRS de capa, eligiendo wgs84 usará grados. Puede cambiar su archivo _meters, pero realmente no ha cambiado el sistema de coordenadas.
Alexandre Neto
@AlexandreNeto: leí la respuesta de Jake en esa pregunta. ¿Se refería a la parte de crear la proyección Equidistante Azimutal, o la parte de guardar la capa actual usando un CRS diferente? Salvé el mío usando NAD83 (como se muestra en la imagen), que se supone que está en metros, pero aún crea amortiguadores en grados.
Herr K.
3
NAD83 también usa grados para unidades. Hay muchas proyecciones que usan el dato NAD83 que usan medidores, tal vez quisiste elegir uno de ellos.
Evil Genius

Respuestas:

17

En el paso 4, debe cambiar el CRS de NAD83 a otra proyección que use medidores como unidades.

Depende de la extensión de sus datos cuál es el mejor. Desafortunadamente, sus datos se encuentran en todo el mundo, por lo que podría:

  1. Cree un CRS personalizado utilizando aeqd (o tmerc) para cada uno, y dibuje solo ese búfer con él. Prácticamente, solo tiene que crear el búfer una vez e intercambiar la información de CRS en los archivos .prj y .qpj. Las coordenadas del búfer con respecto a su centro siempre serán las mismas.
  2. Agrupe los datos de acuerdo con las zonas UTM y use el CRS UTM de esa zona para esos puntos.
  3. Similar a UTM, agrupe sus puntos en zonas de latitud (por ejemplo, cada 10 grados) y cree un CRS cónico conforme a 2SP conforme a Lambert para cada grupo. Esto será significativamente más rápido que usar todas las zonas UTM del norte y del sur del mundo.
  4. Utilice pseudo mercator EPSG: 3857 para todos. Los tampones se verán como bonitos círculos, pero el tamaño real se hará más pequeño y se distorsionará cuanto más se acerque a los polos.
AndreJ
fuente
Hola, tengo una situación similar (pero con polilíneas ubicadas por todo el mundo y que necesitan un búfer de 50 km a cada lado) y estoy un poco confundido sobre por qué usarías una de las mejores opciones si puedes usar la cuarta ( que parece la más fácil) ¿Es solo porque no mostrará claramente la distorsión que le gustaría ver, a pesar de dar el resultado exacto? ¡Gracias! :)
Amroco
@Amroco EPSG: 3857 debe evitarse si debe ser exactamente una cierta distancia, y usted está lejos del ecuador.
AndreJ
2

Manera rápida y sucia: use una distancia de amortiguación de 0.01 ° por km. Esos son los grados medios por km a 37 ° lat. y distorsiona la extensión del buffer NS y EW. Pero puede ser lo suficientemente preciso para su propósito.

usuario95704
fuente
hola, ¿sabes qué tan grande es la distorsión en el equ. y los polos?
Amroco
Suponiendo una esfera perfecta (no geoide): Ecuador: 1 ° lat = ~ 111111 m, 1 ° de largo = ~ 111133 m, promedio. = 111122 m Polos: 1 ° lat = ~ 111111 m, 1 ° de largo = 0 m, promedio. = 55556 m
Flo
1

Puede comprobar el vínculo del sitio geospatialearth enlace . Debe permitir Adobe Flash en su navegador. Se recomienda Firefox

Como programador, para crear un búfer de un punto, puede usar Geographiclib javascript junto con js2shapefile. Podrá crear numerosos puntos equidistantes a una distancia fija x alrededor de cada punto del archivo csv utilizando Geographiclib y luego convertirlo en shapefile utilizando js2shapefile.

Simplemente revise el enlace de arriba, estará cien por ciento satisfecho.

GeoSpatialEarth.in
fuente
Es útil agregar un poco de información adicional sobre lo que explica el enlace que resolverá el problema. Los enlaces externos cambian / se rompen mucho.
MaryBeth
@MatyBeth El enlace mencionado anteriormente es una pequeña forma en la que el usuario carga el archivo .csv que se lee en el navegador usando javascript. Mostrará la vista previa de este archivo csv. El usuario debe elegir la columna de latitud y longitud y el tipo de geometría que desea descargar como un archivo de forma de puntos, un búfer rectangular con longitud y altura proporcionadas en metros o una mantequilla circular con radio proporcionado en metros y número de segmentos. El usuario tiene la opción de guardar el búfer como un archivo shape o KML.
GeoSpatialEarth.in