QGIS에서 맵을 투영 한 후 다각형은 어디로 갔습니까?


12

저는 GIS 노하우를 처음 접했지만 세계지도를 투영 할 때 문제가 발생했습니다. Natural Earth에서 다운로드 한 모든 국가의 shapefile이 있습니다. 이 다른 질문에서 제안한 바와 같이 직교로 투영 한 후 , 나는 대서양이 다소 중심에 있도록 위도 / 경도를 변경했습니다.

그러나 변경 한 후에는 미국, 멕시코 및 캐나다가지도에서 사라집니다. 여기에 이미지 설명을 입력하십시오

지도를 미국 위로 길게 투영하면 다각형이 다시 나타납니다. 어떤 제안?


2
러시아, 카자흐스탄,이란 및 몇몇 작은 근동 국가도 나타나지 않으며 남극 대륙의 일부도 나타나지 않습니다. 소프트웨어가 부분적으로 만 숨겨져있는 다각형을 올바르게 클리핑하지 않는 것 같습니다.
whuber

어떤 Qgi 버전이 있습니까? Natural Earth에서 다운로드 한 레이어에 대한 직접 링크를 제공 할 수 있습니까? 그런 다음 문제를 재현 할 수 있습니다. 감사!
Stéphane Henriod

그것은 매우 이상한 재 투영입니다. 다운로드하여 확인할 수 있도록 링크를 제공하십시오.
Ger

좋아, 나는 그것을 들여다 보았고 분명히 거기에있는 이전 의견을 삭제했다. WGS 84의 CRS에서는 지구상에있는 것으로 예상되므로 WGS84의 CRS에서는 세계의 절반이 보이지 않습니다. 다른 모든 CRS와 마찬가지로 모든 육지를 보여줍니다.
Ger

답변:


12

QGIS가 이러한 다각형을 그릴 수없는 간단한 이유는 일부 정점이 지구의 뒷면에 있고 QGIS가 나머지와 함께 닫힌 다각형을 그릴 수 없기 때문입니다. 백그라운드에서 GDAL ogr2ogr 기능은 이러한 오류가 발생할 때 전체 기능을 시작하도록 프로그래밍되어 있습니다.

따라서 두 가지 솔루션이 있습니다.


해결 방법 1 : 다각형을 반구에 클립

당신은 필요 Numerical Digitize하고 CAD Tools그것을 위해 플러그인.

  • 프로젝트 CRS를 직교 투영으로 설정
  • 동일한 투영에서 새로운 점 레이어를 만듭니다
  • Numerical Digitize 플러그인을 사용하여 다음 사항을 작성하십시오.
x y
6370000 0
0 6370000
-6370000 0
0 -6370000

(와 함께 작동해야 함 Add delimited text layer)

  • 포인트 레이어에서 스냅 가능
  • CAD 도구를 사용하여 처음 세 점을 선택하고 그로부터 호를 만듭니다.
  • 남반구의 경우 3-4-1 점에 대해서도 동일하게 수행
  • 프로젝트 CRS를 WGS84로 변경
  • CAD 레이어를 WGS84로 저장하고 캔버스에 추가
  • 경계 레이어도 WGS84로 저장하고 캔버스에 추가하십시오
  • CAD 선을 새 다각형 레이어로 변환
  • 다각형 레이어를 제외한 모든 것을 제거
  • 세계 경계를 CAD 다각형 레이어에 클립
  • 프로젝트 CRS를 다시 직교로 설정

이 사진을 가져와야합니다. 직교 투영의 세계 벡터


해결 방법 2 : 벡터 데이터를 래스터로 변환

  • 설정에서 비활성화 on-the-fly-reprojection
  • 경계 레이어를 WGS84로 저장하고 캔버스에 추가
  • 사용 Raster -> Convert -> RasterizeWGS84 층 상에 (N 및 N * 360 * 170 이상), X = 360을 선택하고, Y는 래스터 치수로 170 =
  • Raster -> Projection -> Reproject다른 이름으로 직교 투영에 사용 하여 캔버스에 추가하십시오. 약간의 오류가 발생하지만 나머지 래스터가 발생합니다. 회색 사각형을 보더라도 귀찮게하지 마십시오
  • 래스터 레이어를 마우스 오른쪽 버튼으로 클릭-> 속성, 스타일 탭
  • 의사 색상을 선택하십시오
  • 투명도 탭에서 100 % 투명도에 대해 0을 선택하십시오.
  • 첫 번째 래스터 제거
  • 프로젝트 CRS를 직교로 설정

다음 그림을보아야합니다. 여기에 이미지 설명을 입력하십시오

내 아바타 사진에서 볼 수 있듯이 래스터와 동일한 방법으로 작동합니다. ;-)


편집하다

적도가 아닌 점을 중심으로 멋진 직교 투영을 얻으려면 직교와 동일한 매개 변수를 사용하여 등가 투영에서 클리핑을 수행하십시오. 이 결과를 얻을 수 있습니다 :

여기에 이미지 설명을 입력하십시오


직교 투영법이 (아바타 사진과 같이) 극 중 하나를 포함 할 때 첫 번째 접근법을 적용해야합니까? 이 경우 결과 폴리곤이 극을 덮지 않기 때문에 CAD 레이어를 WGS84로 투영 할 때 문제가 발생합니다.
Jake

네 말이 맞아 이 경우 클리핑 작업에 WGS84 대신 aeqd 투영을 사용합니다. 구의 클리핑은 타원체보다 더 쉬운 것 같습니다.
AndreJ

아 그래, 좋은 생각이야! 그러나 여전히 은빛 총알은 아닌 것 같습니다. 나는 land30 ° N, 110 ° E를 중심으로 한 투영으로 Natural Earth 1 : 110M 데이터 세트로 해당 접근법을 사용하려고 시도 했으며 데이터 세트를 aeqd로 투영 할 때 문제가 발생했습니다. : 큰 다각형이 뒤집어 클리핑을 망칩니다. 어떤 아이디어?
Jake

인공물의 반발 점은 인공물을 피하기 위해 바다에 있어야합니다. Te aeqd center는 최종 직교와 같은 점일 필요는 없지만 클리핑 원 안에 있어야합니다.
AndreJ

0

위의 의견을 참조하십시오. 그들은 단순히 지구 반대편으로갔습니다. 국가의 다각형은 여전히 ​​존재하지만 지구가 회전하지 않는 한 보이지 않습니다. 이 상황에서 지구를 어떻게 회전시키는 지 잘 모르겠으며 매핑은 일반적으로 2 차원입니다 (카운터 등 제외).

CRS를 데이터를 오버레이하려는 국가로 설정합니다. 예를 들어, 아일랜드 그리드 또는 OSGB 그리드를 사용하거나 위에서 설명한 WGS84 Pseudo Mercator를 사용합니다.


3
Jessica는 전 세계의 그림을 원으로 원했습니다. 당신이 제안한 계획은 그렇게하지 않습니다.
AndreJ

당신이 저에게 묻는다면 투표는 약간 가혹합니다.
Ger

그건 내가 아니었다 ...
AndreJ

멋있는. 나는 사람들이 왜 제안에 투표하지 않는지 모르겠습니다. 나는 그것에 대해 내 보닛에 꿀벌이 있고 그게 전부입니다.
Ger

4
다운 투표 는 개인적으로 취해서는 안됩니다 . 전체 SE 네트워크 는 질문에 대한 최고의 답변을 표시하기 위해 상향 및 하향 투표에 의존합니다 . "CRS를 국가로 설정 ... 오버레이 데이터"는 대서양을지도 중앙에 유지하려는 OP의 명시 적 욕구를 무시하기 때문에 답을 하향 투표했습니다.
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.