많은 기능으로 작업 할 때 성능을 향상시키기 위해 바운딩 박스 공간 인덱스를 사용하는 것이 일반적입니다. 다수의 정점이있는 개별 형상에 대해 작업이 수행되는 위치에 유사한 최적화 전략이 있습니까?
예를 들어 다각형 또는 통합 연산에서 속도를 높일 수있는 데이터 구조가 있습니까?
R
) 와 같이 GIS 분석을 수행 할 수있는보다 일반적인 소프트웨어 는 사용자에게 제공합니다. 그런 것들에 대해 훨씬 더 많은 통제권을 갖습니다.
많은 기능으로 작업 할 때 성능을 향상시키기 위해 바운딩 박스 공간 인덱스를 사용하는 것이 일반적입니다. 다수의 정점이있는 개별 형상에 대해 작업이 수행되는 위치에 유사한 최적화 전략이 있습니까?
예를 들어 다각형 또는 통합 연산에서 속도를 높일 수있는 데이터 구조가 있습니까?
R
) 와 같이 GIS 분석을 수행 할 수있는보다 일반적인 소프트웨어 는 사용자에게 제공합니다. 그런 것들에 대해 훨씬 더 많은 통제권을 갖습니다.
답변:
다각형의 포인트에만 해당 :
문제는 2 차원 물체의 "프랙탈 특성"과 공간 정보의 불확실하고 불균형 한 분포에 근거한다고 생각합니다. 규칙적인 격자가 있으면 셀의 위치 나 관계를 쉽게 계산할 수 있습니다. 그러나 지형 모델의 아이소 라인에는 측면에 복잡하지 않은 부분이 있고 다른쪽에는 수학적으로 복잡한 부분이있을 수 있습니다 (형태 학적 활성 부분은 산등성이, 계곡 등).
인덱싱은 두 가지를 처리하려고합니다.
공간적으로 구별 할 수있는 객체 (버킷!)를 수집 할 수있는 세트 버킷을 제공하는 빠른 루틴입니다. BBox는 계산 및 처리가 쉽습니다.
공간적인 것들 (객체들)을 구별하거나 관련시키기위한 관계 (오버랩, 터치)의 세트.
불행히도 BBoxes는 단서, 각 BBox에 몇 개의 점이 있는지, 물체의 모양 (구멍, 볼록한 등) 및 정보가 로컬로 분포되는 방법 (점의 왼쪽 상단 모서리의 90 %)을 제공하지 않습니다. BBox). 따라서 테스트의 관계 작성에서 오브젝트 레벨에서 빠른 조작 멤버를 찾을 수 있고 여러 번 느슨해 질 수 있습니다.
보다 불규칙적 인 접근 방식을 사용하기 위해 쿼드 트리와 함께 IMO 삼각 측량을 사용하여 버킷의 버킷과 관계 빌딩 부분을 더 가깝게 만들 수 있습니다 (버킷 == 관계 빌딩).
Point-in-Polygon-Test 예제의 경우 다음을 사용하여 불규칙 캐시를 작성할 수 있습니다.
주석과 쿼드 트리를 구축하는 비용은 매우 높고 계산하기가 어렵고 쿼드 트리는 크고 작은 삼각형 (작은 하위 트리 상자에 맞지 않는 삼각형)의 균형을 유지해야합니다.
일부 도구 및 링크 :