수천 개의 작은 중첩 다각형을 수정 하시겠습니까?


21

ArcMap 10.3을 사용하고 있습니다.

토지 사용 유형이 다른 레이어가 있습니다. 많은 다각형이 서로 겹치므로 동일한 다각형의 두 가지 토지 사용 유형이 있습니다.

사용 @ radouxju의 답변을 , I합니다 (MUST NOT 중복 규칙) 토지 이용 층을위한 토폴로지를 만들었습니다. 그런 다음 병합을 사용하여 큰 겹치는 다각형을 수정했습니다.

그러나 수천 개의 작은 겹치는 다각형이 있습니다. 나는 시간이 걸리는 모든 것을 수동으로 고칠 수 있습니다.

이 모든 오류를 해결하는 더 빠른 방법이 있습니까?

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

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


모든 토지 사용 유형을 표시하도록지도를 업데이트했습니다. 다각형이 서로 겹칩니다. 은색이 아닙니다.


2
도구 통합 당신을 위해 일을?
Fezter

@Fezter 다각형은 면적이 같지 않으므로 전체 레이어에 동일한 XY 공차를 사용할 수 없기 때문에 그렇게 생각하지 않습니다.
반짝 이는

1
@aelwan :이 데이터의 목표는 무엇입니까? 다른 사람이 사용하도록이 데이터를 작성하고 있습니까 (데이터의 작성자 인 것처럼)? 아니면지도 나 분석에 사용하기 위해 "정리"하려고합니까? 내가 묻는 이유는이 데이터가 가비지 데이터처럼 보입니다. 그것은 GIS 분석을 넘어서서 완전히 디지털화되어야하며 권한이있는 사람 (작업 지식)이이 경계가 어디에서 있을지에 대한 정보에 근거한 결정을 내 리도록해야합니다. 그렇지 않으면 데이터를 그대로 둡니다.
alexGIS

@alexGIS 나는 데이터가 얼마나 나쁜지에 전적으로 동의합니다. 그러나 이것이 내가 얻은 최고의 데이터입니다. 분석을 위해 청소하려고합니다.
반짝

답변:


6

@Adam Cara가 제기 한 우려는 매우 유효합니다. 그러나 자체 교차점을 살펴보면 대부분이 2 개의 거대한 다각형 사이의 경계에있는 마른 비트 또는 다른 하나의 내부에있는 큰 다각형의 연결이 끊긴 비트 / 섬 인 것처럼 보입니다. 이 경우 겹침 지우기와 해산 된 겹치기 할당 (가장 가까운 이웃 속성)이 작동 할 수 있습니다.

방법:

arcpy.Intersect_analysis("Landuse2b #","D:/Scratch/mpart.shp","ALL","#","INPUT")
arcpy.MultipartToSinglepart_management("mpart","D:/Scratch/spart.shp")
arcpy.Dissolve_management("spart","D:/Scratch/dissolved_1.shp","#","#","SINGLE_PART","DISSOLVE_LINES")
arcpy.Erase_analysis("Landuse2b","dissolved_1","D:/Scratch/erased.shp","#")
arcpy.DeleteField_management("spart","FID_Landus;OBJECTID;Lnduse2013;Shape_Leng;Shape_Area")
arcpy.SpatialJoin_analysis("spart","erased","D:/Scratch/sj_1.shp","JOIN_ONE_TO_ONE","KEEP_ALL"…..)
arcpy.Merge_management("sj;erased","D:/Scratch/merge_1.shp"….)
arcpy.Dissolve_management("merge_1","D:/Scratch/dissolved.shp","Lnduse2013","#","SINGLE_PART","DISSOLVE_LINES")

테스트:

arcpy.Intersect_analysis("dissolved #","D:/Scratch/test.shp","ALL","#","INPUT")

메시지:

  • 실행 : "디졸브 된 #"D : \ Scratch \ test.shp ALL # INPUT과 교차
  • 시작 시간 : 2016 년 4 월 22 일 금요일 10:16:07
  • 읽기 기능 ...
  • 크래킹 기능 ...
  • 기능 조립 ...
  • 경고 000117 : 빈 출력 경고가 생성되었습니다.
  • 2016 년 4 월 22 일 금요일 10:16:09에 성공 (경과 시간 : 2.34 초)

이 메시지는 최종 Dissolve의 출력에 자체 교차가 없음을 의미합니다.

결과:

https://drive.google.com/file/d/0B6B33FrGNitPT0FvbVdHQm0xMDg/view?usp=sharing


1
이 솔루션은 "정확"하지만 "정확"하지는 않습니다. OP가 "Dairy"및 "Sheep / Beef"와 겹치는 영역이 이제 "Builtup / Parks / Others"로 다시 분류되고 다른 임의의 재 분류가 입력과 출력을 비교할 때 표시되는 것을 우려하는 경우 이 솔루션이 작동합니다. 말하자면, 그것은 우아한 작업 흐름, 좋은 일입니다.
alexGIS

1
그러한 데이터로 아무도 올바른 것이 무엇인지 모른다
FelixIP

7

다각형이 더 얇 으면 remove 명령을 사용하여 다각형을 더 큰 영역 다각형이나 가장 긴 가장자리로 병합 할 수 있습니다.

다각형이 겹치는 경우 더 쉬운 방법이있을 수 있지만 별도의 레이어로 겹친 부분을 선택한 다음 다시 합쳐서 은색을 만들고 제거 명령을 사용합니다.


시간과 도움을 주셔서 감사합니다. 다각형이 겹칩니다. 귀하의 답변을 따르기 위해 별도의 레이어에 대한 겹침을 어떻게 선택할 수 있습니까? 토폴로지를 빌드 한 후 겹침이 영역 오류로 표시됩니다.
반짝이

폴리곤 레이어 에서 교차 ( resources.arcgis.com/EN/HELP/MAIN/10.1/index.html#//… )를 실행하십시오 . 교차의 결과는이 레이어의 모든 겹침입니다.
iRfAn

@iRfAn 교차를 실행 해 주셔서 감사합니다.
반짝

@Bryan Waller 나는 당신이 제안한 것을 따르려고 노력했다. 그런 다음 "하지만 더 이상 만든 사람이 없습니다"에서 다시 결합하십시오. remove 명령을 사용한 후에도 동일한 다각형에 두 가지 다른 토지 사용 유형이 있음을 알 수 있습니다. 도움을 주시면 감사하겠습니다. 토지 이용 레이어는 여기에서 찾을 수 있습니다. goo.gl/0aE3wq
shiny

6
  1. 작은 영역을 선택하고 두 개의 모양 파일로 변환하여이 프로세스가 작동하는지 확인하십시오.
  2. s1 및 s2에 test (number)라는 새 필드를 작성하십시오.
  3. 두 개의 형상 파일 S1과 S2를 교차시킵니다.
  4. 겹치는 영역은 Common1 (그림의 해칭 영역)이라는 별도의 파일로 식별됩니다.
  5. Common에서 1로 현장 테스트를 계산하십시오.
  6. 유니온 S1 및 공통
  7. 여기에 이미지 설명을 입력하십시오테스트 필드에서 1 을 선택 하고 부화 영역을 삭제하십시오.
  8. 이제 s2와 common을 병합하십시오. 공통 영역을 지우려면 지우기 명령을 사용할 수 있습니다.

@Shampe 도와 주셔서 감사합니다. 내가 가진 겹침은 두 개의 모양 파일이 아닌 동일한 모양 파일 내에 있습니다.
반짝

6

개별 토지 사용 클래스를 별도의 쉐이프 파일로 분리하여 그러한 방식으로 작업하는 것을 고려 했습니까? 나는 처음에 교차점을 실행하려고 생각했지만 위에서 실패한 것을 보았다. 그래도 별도의 모양 파일이 7 개 있으면 더 쉽게 조작 할 수 있습니다.

내가 가진 주요 질문은 겹치는 부분이 있다면 어떤 클래스가 이기고 마지막에 표시해야하는 계층 구조가 있습니까? 예 : 자르기와 유제품이 겹치는 경우 어느 것을 유지합니까? 이 계층 구조가 정해지면 가장 낮은 것으로 시작하여 가장 높은 것으로 끝나는 한 번에 2 개의 클래스를 교차시킵니다. 주어진 교차점에서 출력이 비어 있으면 교차하지 않음을 의미합니다.


2
여기에서 가장 중요한 문제를 제기하십시오. 중복 분류 방법? 데이터를 "깔끔하게"만든다고해서 "정확한"것은 아닙니다.
alexGIS

@alexGIS 다시 한 번 동의합니다. 그러나이 분석의 목표와 데이터의 겹치는 다각형의 작은 영역을 고려할 때 겹침 범주는 겹침 고정과 비교할 때 주요 목표가 아닙니다.
반짝

이것은 다른 이유로 좋은 생각 일 수 있습니다. 겹침은 시간이 지남에 따라 필드 경계 및 자르기의 변경을 나타낼 수 있습니다.
nmtoken

5

토폴로지를 작성하면 오류를 식별했습니다.

오류가 표시된 목록에서 동일한 유형의 모든 오류를 선택하고이 목록을 마우스 오른쪽 단추로 클릭 한 후 "수정"을 선택하십시오. 귀하의 경우 수정 사항은 "생성 기능 만들기"입니다. 그러면 두 다각형이 겹치는 새 다각형이 만들어집니다. 이것은 첫 번째 단계입니다 (토지 사용 레이어와 함께 단일 입력으로 통합 도구를 사용하고 여러 부분을 단일 부분 도구로 사용하여 유사한 결과를 얻을 수 있습니다. 속성 값) 또는 다각형을 선으로 변환 한 다음 다시 다각형으로 변환합니다 (그러나 속성을 잃어 버리면 속성을 복구하려면 공간 결합이 필요합니다))

두 번째 단계는 작은 다각형을 제거하는 것입니다. 문제는 유지할 속성 값을 결정하는 규칙이 실제로 없다는 것입니다. 내가 가장 좋아하는 도구는 제거 도구입니다 . 여기서 가장 큰 공유 경계 또는 가장 큰 영역을 기준으로 작은 다각형을 병합 할 이웃 다각형을 선택할 수 있습니다

마지막 비고 : 우선 토지 사용 클래스에 대한 규칙이있는 경우 우선 순위를 낮추고 필드 계산기를 사용하여 각 토지 사용 클래스를 할당 할 위치별로 작은 다각형 (라벨이없는)을 반복적으로 선택합니다. 상표.


4

다각형 오버랩인지 슬레 이버인지에 대해 다른 사람들과 동의하지만이 그림과 함께 여기서 보는 것에서 모든 사람을 보여줍니다. 토지 사용을 위해 기호 색상을 변경하는 것이 좋습니다. 이 방법으로 어느 쪽을 가야하는지 알 수 있습니다. 당신이 분홍색으로 우리에게 보여준 한 가지 색은 실제로 읽기가 어렵고 시간이 많이 걸릴 수 있습니다.

두 번째 부분에서는 오버랩 또는 슬라이 버 다각형을 모두 선택하여 새 모양 파일로 내 보냅니다. 이런 식으로 당신은 그들이 토지 이용중인 것을 식별 할 수 있습니다.


당신의 도움을 주셔서 감사합니다. 모든 토지 사용에 대한 색상을 표시하도록지도를 업데이트했습니다.
반짝 이는

4

Spatial Analyst 또는 3D Analyst가있는 경우 가능한 한 솔루션은 (Polygon to Raster Conversion) 도구를 사용하여 토지 사용 다각형을 래스터 이미지로 변환하여 픽셀이 겹칠 수 없으므로 겹치는 다각형이 종료되지 않도록하는 것입니다. 그런 다음 벡터 형식이 필요한 경우 (래스터를 다각형으로) 도구를 사용하여 래스터를 다시 다각형으로 변환하십시오. 이 경우 좋은 품질의 다각형을 얻으려면 고해상도 셀 크기 (세부 셀 크기)를 선택해야하지만 메모리를 고려해야합니다. 결과에 만족할 때까지 셀 크기를 변경하여 여러 번 시도해야 할 수도 있습니다. 출력 폴리곤이 완벽하지 않은 경우 약간의 스무딩을 수행해야 할 수도 있지만 최소한 표준 라이센스가 있는지 여부에 따라 다릅니다. ArcGIS Desktop 용. 쉬운 일이 아니지만 문제를 해결할 수 있다는 것을 알고 있습니다.


4

공차를 찾기 위해 다각형 사이의 틈이나 겹침을 확인하고 적절한 공차 값으로 Arctoolbox의 통합 도구를 사용하십시오.

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

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