Criar buffer em metros?


15

Sou muito novo no mundo GIS, então meu problema pode ser muito estúpido, mas vou tentar de qualquer maneira.

Objetivo

Dada uma lista de coordenadas em longitude / latitude, armazenada como um .csvarquivo, quero criar um buffer com distância de xkm em torno dessas coordenadas. (Caso isso seja relevante, essas coordenadas são localizações das sociedades no conjunto de dados do SCCS . Essas sociedades se espalham por todo o mundo.)

Problema

Só consigo criar buffers com distância em graus radiais, mas quero fazê-los em metros (kilo). Estou ciente das seguintes perguntas e respostas, mas seguir as sugestões sugeridas não parece resolver o meu problema:

O que eu tentei ...

  1. Inicio o QGIS (v2.4) e Add delimited text layer
  2. escolha meu .csvarquivo e os campos x / y, clique emOK
  3. selecione WGS 84como meu CRS (também tentei, NAD83mas não fez a diferença), clique emOK
  4. clique com o botão direito do mouse na camada e selecione Save As..., na caixa de diálogo, escolha o seguinte e clique em OK: insira a descrição da imagem aqui
  5. adicionar sccs_meter.shpcomo camada ao projeto atual
  6. Selecione Vector> Geoprocessing Tools> Buffers> set tampão distância como 10

O resultado é um buffer com raio de aproximadamente 1068 km, o que sugere que a distância do buffer é de 10 graus em vez de 10 metros.

O que eu fiz de errado aqui?


1
"Qual é o fluxo de trabalho para buffer em metros / km usando camadas WGS84?" resolve o seu problema, por favor leia os comentários. Quando você usa a ferramenta de buffer, ela usa as unidades CRS de camada, escolhendo wgs84 ele usará graus. Você pode _meters do seu arquivo, mas não alterou o sistema de coordenadas.
Alexandre Neto

@AlexandreNeto: Li a resposta de Jake nessa pergunta. Você quis dizer a parte sobre a criação da projeção Equidistante Azimutal ou a parte sobre como salvar a camada atual usando um CRS diferente? Salvei o meu usando o NAD83 (como mostrado na figura), que deveria estar em metros, mas ainda cria amortecedores em graus.
Herr K.

3
O NAD83 também usa graus para unidades. Existem muitas projeções que usam o dado NAD83 que usam medidores, talvez você pretenda escolher uma delas.
Evil Genius

Respostas:


17

Na etapa 4, é necessário alterar o CRS de NAD83 para outra projeção que use medidores como unidades.

Depende da extensão dos seus dados, qual é o melhor. Infelizmente, seus dados estão localizados em todo o mundo, para que você possa:

  1. Crie um CRS personalizado usando aeqd (ou tmerc) para cada um e desenhe apenas esse buffer com ele. Praticamente, você só precisa criar o buffer uma vez e trocar as informações do CRS no arquivo .prj e .qpj. As coordenadas do buffer em relação ao seu centro sempre serão as mesmas.
  2. Agrupe os dados de acordo com as zonas UTM e use o UTM CRS dessa zona para esses pontos.
  3. Semelhante ao UTM, agrupe seus pontos em zonas de latitude (por exemplo, a cada 10 graus) e crie 2SP CRS cônico conforme Lambert personalizado para cada grupo. Isso será significativamente mais rápido do que usar todas as zonas UTM do norte e do sul do mundo.
  4. Use o pseudo-mercator EPSG: 3857 para todos. Os buffers parecerão círculos agradáveis, mas o tamanho real ficará menor e distorcido quanto mais os pólos que você vier.

Olá, eu tenho uma situação semelhante (mas com polilinhas localizadas em todo o mundo e precisando de um buffer de 50 km de cada lado) e estou um pouco confuso sobre o motivo pelo qual você usaria uma das principais opções, se pode usar a quarta ( que parece o mais fácil). É apenas porque não mostrará claramente a distorção que você gostaria de ver, apesar de fornecer o resultado exato? Obrigado! :)
Amroco 5/17

@Amroco EPSG: 3857 deve ser evitado se estiver a uma certa distância e você estiver longe do equador.
21417 AndreJ 06/06

2

Maneira rápida e suja: use uma distância de buffer de 0,01 ° por km. Esse é o grau médio por km a 37 ° lat. e distorce a extensão do buffer NS e EW. Mas pode ser preciso o suficiente para o seu propósito.


oi, você sabe o quão grande é a distorção no equ. e os pólos?
Amroco

Supondo uma esfera perfeita (não geóide): Equador: 1 ° lat = ~ 111111 m, 1 ° de comprimento = ~ 111133 m, média. = 111122 m Polos: 1 ° lat = ~ 111111 m, 1 ° de comprimento = 0 m, média = 55556 m
Flo

1

Você pode verificar o link do site geospatialearth ligação . Você precisa permitir o Adobe flash no seu navegador. Firefox é recomendado.

Como programador, para criar um buffer de um ponto, você pode usar o geographiclib javascript junto com o js2shapefile. Você poderá criar vários pontos equi-angulares a uma distância fixa x em torno de cada ponto do arquivo csv usando geographiclib e depois convertê-lo em shapefile usando js2shapefile.

Basta verificar o link acima, você ficará cem por cento satisfeito.


Adicionar algumas informações adicionais sobre o que o link explica que resolverá o problema é útil. Links externos mudam / quebram bastante.
21719 MaryBeth

@MatyBeth O link mencionado acima é uma pequena forma com a qual o usuário carrega o arquivo .csv que é lido no navegador usando javascript. Ele exibirá a visualização deste arquivo csv. O usuário precisa escolher a coluna de latititude e longitude e o tipo de geometria que deseja baixar, como shapefile de ponto, um buffer retangular com comprimento e altura fornecidos em metros ou uma manteiga circular com raio fornecido em metros e número de segmentos. O usuário tem a opção de salvar o buffer como um arquivo shapefile ou KML.
GeoSpatialEarth.in
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.