QGIS, GRASS GIS 또는 SAGA GIS로 중간 윤곽을 자동으로 그리는 방법은 무엇입니까?


10

가파른 산맥을 매핑하고 있습니다. 내 주요 윤곽 간격은 50m이고 중간 윤곽 간격은 10m입니다. 가파른 지역에서는 10m 간격이 너무 작으므로 10m 간격을 벗어나서 20m 또는 25m를 대신 사용해야합니다.

QGIS , SAGA GIS 또는 GRASS GIS 에서 자동화하는 방법이 있습니까?

답변:


7

경사 그리드를 사용하여 등고선을 오버레이 할 수 있으며 해당 등고선 아래의 경사 평균값에 따라 특정 등고선 만 표시 할 수 있습니다.


재미있는 해결책! 경사의 평균값을 등고선에 연결하기 위해 공간 결합을 하시겠습니까?
Simbamangu

@Simba 영역 통계를 사용합니다. 구역 최대 경사가 너무 가파른 등고선을 삭제하는 것이 더 효과적 일 수 있습니다 .
whuber

2

내가 아는 한,이 문제에 대한 QGIS에는 자동 솔루션이 없습니다. 그러나 규칙 기반 렌더러를 사용하여 어떤 윤곽을 그릴 지, 어떤 윤곽을 생략 할지를 지정할 수 있습니다.


2

문제를 올바르게 이해하면 모든 윤곽선이 이미 생성 된 Shapefile을 사용하는 것입니다. 'contour'와 같은 필드 중 하나 인 등고선 값을 가진 속성 테이블이 있어야합니다.

ID      contour
 1         1000
 2         1010
 3         1020
 4         1030

QGIS에서는 몇 가지 일을 할 수 있습니다. 하나는 Shapefile의 복사본을 만든 다음 원하지 않는 윤곽선을 제거하는 것입니다.

  1. 편집 세션을 시작하고 속성 테이블을 연 다음 필드 계산기를여십시오.
  2. '새 필드 작성'을 선택하고 정수 필드로 만드십시오. 그것을 '계속'이라고 부릅니다.
  3. '표현'분야에서 당신에게 적합한 조건이 충족되는 경우 숫자 1 줄 것이다 식 입력 - 당신이 20의 배수가 따라서 모든 윤곽을 유지하려는 : contour LIKE '%00' OR contour LIKE '%20' OR contour LIKE '%40' OR contour LIKE '%60' OR contour LIKE '%80'(이런 종류의 '일치'기능은 꽤하지 않습니다 그러나 QGIS에는 모듈 식 수학 함수가 없어서 더 좋을 것입니다.)
  4. '확인'을 클릭하면 등고선이 20의 배수 인 1과 그렇지 않은 경우 0이있는 새 열이 생성됩니다.
  5. keep = 0 인 모든 행을 검색 (선택)하고 삭제하십시오. 새로운 쉐이프 파일은 이제 다른 모든 윤곽을 제외했습니다.

옵션 2는 표시 하고 싶지 않은 윤곽선을 표시 하지 않는 것입니다. 좀 더 우아합니다.

  1. 속성 대화 상자를 열고 스타일 탭을 선택하십시오.
  2. 왼쪽 상단에서 '규칙 기반'을 선택하십시오.
  3. 원하는 조건에 맞는 윤곽에 규칙을 추가하십시오 ( '추가'버튼을 누름).
    • 규칙 특성 대화 상자에서 '20'과 같은 레이블을 입력하십시오.
    • 필터 상자에 위와 같이 일치하는 표현식을 입력하십시오. contour LIKE '%00' OR contour LIKE '%20' OR contour LIKE '%40' OR contour LIKE '%60' OR contour LIKE '%80'
    • 사용하려는 심볼 스타일을 선택한 다음 확인을 클릭하고 스타일을 적용하십시오.

이 시점에서 표시되는 유일한 윤곽선은 표현식과 일치하는 윤곽선입니다.

두 번째 옵션의 가장 큰 장점은 다양한 스케일에 대한 규칙을 생성 할 수 있다는 것입니다. 특정 스케일을 넘어서 축소했을 때 하나의 규칙을 가질 수 있습니다. 식), 그리고 더 확대하면 20 미터 윤곽선을 보여주는 또 다른 규칙 등

100m 윤곽선 사이에 새로운 25m 윤곽선 을 생성 하는 방법을 찾고 있다면 실제로 디지털 입면 모델에서 새 윤곽선 파일을 작성하는 것이 좋습니다. 다른 윤곽 사이에 새로운 25m 윤곽을 확실하고 정확하게 보간 하는 방법이 있는지 확실하지 않습니다 .


0

10 미터의 수직 간격으로 등고선을 포함하는 등고선 셰이프 파일 (또는 Spatialite 데이터베이스)이 있고 50 미터 간격으로 발생하는 등고선 만 플롯하려고 할 때이 작업을 수행하는 방법은 다음과 같습니다.

shapefile을로드하고 '(ELEV % 50) = 0'SQL 조각을 사용하여 쿼리하십시오. 여기서 'ELEV'는 고도 데이터가 포함 된 속성입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.