이틀 전에 ESRI shapefile에서 다각형의 꼭짓점에 대한 내부 저장 순서에 대해 질문했습니다. 이 질문에 답했습니다 ( 다각형이 셰이프 파일에 시계 방향 또는 시계 반대 방향으로 저장됩니까? ). 그리고 오래된 게시물에서도 응답되었습니다 ( 다각형 생성 (시계 방향 회전 여부) )
그러나 지금 내 질문은 더 일반적이며, 고유 한 대답이 있는지 모르겠습니다. 시계 방향의 순서는 ESRI shapefile 또는 일반적인 GIS 형식에만 해당됩니까? 그리고 GIS 소프트웨어의 내부 표현은 어떻습니까? 예를 들어, QGIS를 사용하고 다각형을 포함하는 * .shp를 읽는 경우 외부 경계의 내부 표현이 원래 모양 파일에서와 같이 시계 방향이라고 가정하지만 QGIS에서 지원하는 모든 파일 형식은 어떻습니까? 그리고 ArcGIS를 위해? 그리고 시계 반대 방향으로 저장된 다각형이있는 파일 형식이있는 경우, 이러한 파일이 QGIS, ArcGIS 등에로드되면 방향이 내부적으로 변경되므로 PyQGIS를 사용하여 데이터를 읽는 경우 예를 들어 다각형은 시계 방향입니다 주문?
저의 목적은 QGIS 용 플러그인을 작성하는 것이지만 데이터 소스는 ESRI shapefile 또는 기타 형식 일 수 있습니다. 방위각을 사용하여 다각형의 연속 측면 사이의 각도를 확인해야하므로 순서가 시계 방향인지 알아야합니다. 하나의 해결책은 각 다각형의 면적을 계산하는 것입니다. 정확히 기억한다면 순서가 양수이면 시계 방향이고, 음수이면 순서는 시계 반대 방향입니다.
영역 계산은 집중적 인 작업이 아니므로 플러그인 속도가 크게 느려지지 않습니다. 그러나 QGIS의 특별한 경우, 원본 소스의 순서에 관계없이 다각형을 시계 방향 또는 시계 반대 방향으로 저장하는지 아는 사람이 있습니까? 이제 ESRI shapefile을 사용하고 있으며 layer.getFeatures (). geometry (). asPolygon ()의 좌표는 바깥 쪽 경계에 대해 시계 방향으로, 구멍에 대해 반 시계 방향으로 저장됩니다 (예 : 원래 * .shp).
Polygons are oriented correctly. (Exterior ring boundaries must be oriented counterclockwise, and interior ring boundaries must be oriented clockwise.)
오라클은 반 시계는 의미입니다.