나중에이 스레드를 읽는 사람을 위해 이것을 추가하고 있습니다.
여기 에이 문제를 파고 포인트 콜 사이의 거리를 확보하는 방법을 배웠습니다.
첫 번째 문제는 RasterCatalog의 정적 특성에서 비롯된 것입니다. 이 래스터를 기반으로 변경해도 RasterCatalog 내부의 래스터는 변경되지 않습니다. 우리는 해안선지도 근처에 없었던 고대 버전을 가지고 있음이 밝혀졌습니다. 학습 한 내용 : 래스터 카탈로그를 재구성하십시오. 래스터를 기반으로 래스터를 변경할 때마다.
가중치가 추가 된 거리 래스터는 다루기가 다소 번거로워집니다. 다음 시나리오를 살펴보십시오. 래스터의 원래 값은보고자하는 총 거리 1 개입니다. 셀 크기는 1 미터입니다. 래스터의 가중치가 48 인 경우보고 싶은 총 거리는 117km * 48입니다. 따라서 CostDistance 방법의 거리는 셀 거리가 아니라 가중 거리입니다. 각 셀의 합 = 총 거리에 전달 된 값까지 각 셀의 값을 추가하는 것 같습니다. 셀 크기 자체가 1 미터라도 !!!
거리 래스터는 모두 원점에 중점을 둡니다. 따라서 CostDistance 루틴을 호출 할 때 해당 목록에 원점을 포함시키지 않으려 고합니다. 그렇게하면 거리가 0 인 한 지점을 얻게됩니다.
많은 방법이 봉투를 사용하여 공정을 제한하는 반면, 가장 비싼 두 가지 방법은 래스터에 값을 설정하고 다각형 내에 영역이없는 래스터를 추출하고 모든 엔벨로프 설정을 무시하고 자동으로 항상 전체 래스터에 적용합니다. 불행하게도, 우리는 거대한 겹치는 세그먼트를 생성하고 세그먼트를 특정 박스 영역에 할당함으로써 이것을 단축시킬 수 있습니다. 그러나 그렇게 할 때 1 차 작업 영역이 잘못된 겹친 영역에 존재하지 않도록주의해야합니다. (즉, 주요 관심 지점을 포함하지 않도록 모든 중첩이 신중하게 선택되어야합니다!) 그 이유는 선택한 Coast Guard 스테이션이 존재하는 위치에 따라 올바른 래스터를 선택하여 RasterCatalog를 탐색하기 때문입니다. 프로세스를 더욱 복잡하게하기 위해 겹침은지도의 가장자리를 벗어나지 않고 원점에서 최대 120km까지 이동할 수 있어야하며 다른 주요 관심 지점과 겹치지 않아야합니다. esh.
내가 배운 유일한 다른 점은 래스터에 수학하기가 쉽지만 래스터에 구멍을 뚫고 싶거나 값이있는 도넛을 설정하고 도넛의 내부에 값 1 (잠금처럼 지연됨)은 복잡한 도구 및 ArcObject 호출 조합으로 끝납니다. 마지막 교훈은 ArcObjects가 모든 것을 할 수는 없다는 것입니다. 그래서 때로는 파이썬으로 작성된 느리고 번거로운 도구로 작업을 수행해야합니다. 또한 ESRI 도구 개발자는 일관성 유지에 대해 아무것도 몰랐습니다. 때로는 래스터 데이터베이스를 다른 시간에 가져 와서 래스터가 필요하고 때로는 기능 집합이 필요했습니다. 그리고 입력과 같은 형식으로 데이터를 반환하지 않습니다!
혼란 스러운가? 걱정하지 마십시오. ESRI입니다.