Quando abro o QGIS, adiciono a camada e calculo as áreas do shapefile por meio da calculadora de campo, recebo uma área diferente do que quando abro o QGIS e marque "Ativar transformação CRS on the fly" e calculo a área. Isso apesar de garantir que o projeto e a camada tenham o mesmo sistema de coordenadas (o mesmo número EPSG). O que estou fazendo de errado?
Eu tenho um shapefile com cálculos de área feitos com ArcGIS (não seja eu, os dados foram entregues a mim e não tenho idéia de qual CRS a área foi calculada com ArcGIS). A camada shapefile CRS é EPSG: 21781 (Suíça). No QGIS, se eu não alterar as configurações do OTF e deixar o CRS do projeto como EPSG: 4326 (WGS84), obtenho o mesmo valor que o valor da área do ArcGIS. No entanto, se eu alterar o OTF antes de adicionar a camada ao EPSG: 21781, recebo valores de área diferentes. Pelo que entendi, isso sugere que a Área ArcGIS foi calculada com o CRS EPSG: 4326.
Primeiro fluxo de trabalho:
- abrir QGIS
- projeto CRS: EPSG 4326
- adicionar camada
- o projeto CRS se adapta automaticamente e agora é EPSG 21781
- calcular $ área com calculadora de campo
Segundo fluxo de trabalho:
- abrir QGIS
- projeto CRS: EPSG 4326
- Ative o OTF, defina o CRS do projeto como EPSG 21781
- adicionar camada
- calcular $ área com calculadora de campo
A etapa 5 do primeiro e do segundo fluxo de trabalho NÃO produz a mesma área.
fonte
$area
na calculadora arquivada. Em suma, on-the-fly afeta como a geometria está sendo exibida sem alterar os dados de fato. Portanto, é mais provável que o erro seja devido ao fluxo de trabalho.!shape.area!
deve fornecer a área de acordo com a camada crs; calcular a geometria pode funcionar diferente. Portanto, é difícil dizer exatamente o que foi feito em arcgis; no entanto, se você obtiver o mesmo resultado, por exemplo, graus e não metros, significa que o cálculo da área foi realmente baseado no ESPG: 4326.Respostas:
EDIT - Isenção de responsabilidade: gostaria de encaminhar os leitores para a discussão com ChrisW abaixo. Pode ser que obter uma área baseada em um OTF CRS não seja um bug, afinal; isto é, pelo menos, em arcgis, ele também está sendo usado para permitir o geoprocessamento de duas camadas de diferentes CRS.
Para elaborar sobre a questão acima. Como AndreJ sugeriu e mostrou - este é provavelmente um bug na versão atual do qgis. No entanto, deve-se notar que o problema não é a área errada, mas que a transformação imediata afeta de qualquer maneira os cálculos de área.
O objetivo da transformação / projeção on-the-fly é alinhar dados de diferentes fontes e com diferentes CRS. Isso é principalmente para fins de exibição. O arcmap EG executa automaticamente a projeção on-the-fly em qualquer caso, um CRS de camada não corresponde ao CRS do quadro de dados.
O Arcmap também oferece a possibilidade de editar dados enquanto são projetados on-the-fly, mas também observa que: ( fonte )
Ou seja: a transformação imediata é menos precisa do que apenas projetar os dados em um CRS diferente (que também apresenta seus próprios problemas).
Dito isto, não é de surpreender que, com base em uma transformação imediata, esteja sendo calculada uma área errada, ainda é surpreendente que o fato de a ativação imediata tenha sido afetada afete de alguma forma o cálculo da geometria, que deve basear-se nos dados. Portanto, não importa se a transformação instantânea se baseia no mesmo ou em um CRS diferente, o cálculo da área deve ser idêntico a cada vez.
Para ser mais prático, se o seu objetivo é calcular a área, não use imediatamente. Se você tiver o CRS errado, projete seus dados.
fonte
!shape.area@meters!
Posso confirmar que parece ser um bug.
Crie um arquivo csv com o seguinte conteúdo:
Importe-o como texto delimitado com EPSG: 21781, ative o snap e desenhe um arquivo de forma de polígono nos quatro pontos.
Sem OTF, o resultado
$area/1000000.0
é de 10000 m² (o que está obviamente correto).Voltando OTF on , e selecionando o mesmo EPSG: 21781, você começa 9.988,2338 m².
A escolha de um CRS diferente, como o EPSG: 4326, fornece 9990.5339 m², porque o cálculo é feito em um elipsóide diferente (WGS84 em vez de bessel).
Vector --> Geometry Tools --> Export/Add Geometry Columns
parece fornecer valores corretos.O bug já possui alguns tickets: https://issues.qgis.org/issues/10966 e https://issues.qgis.org/issues/12473
fonte