2 개의 오목한 폴리곤을 점의 두 벡터로 나타낸 입력에 배치했습니다. 노동 조합, 교차점 및 차이점에 대해 다각형 작업을하고 싶습니다. 나는이 다각형들 사이에 교차점을 발견하고이를 각 다각형의 올바른 위치에 삽입했습니다. 그런 다음 위치에 대한 정보를 제공합니다 (내부 - 다른 다각형 내부, 내부 - 다른 다각형 외부, 교차점 - 폴리곤의 두 모서리가 교차). 각 꼭지점에 대한 정보를 제공합니다. 이제 어떤 점이이 폴리곤 (외곽 및 교차점) 등의 결합을 만드는 지 알고 있지만 올바른 순서로 정렬하는 방법을 알아야합니다. 교차 연산의 경우 교차점 결과가 둘 이상의 다각형이 될 수 있으므로 이러한 정렬 된 점을 올바른 수의 집합으로 나누어야합니다.다각형에서의 연산 - 발견 된 정점을 정렬하는 방법
저는 C++을 사용하고 있지만 반드시 코드가 필요하지는 않습니다. 이러한 최종 다각형 점을 정렬하는 방법 만 필요합니다. 그리고 이미 내 자신의 기능을 가지고 있기 때문에 이러한 작업에 라이브러리를 사용하고 싶지는 않습니다.
이 질문은 How to intersect two polygons?과 그 외 일부를 살펴 보았지만 최종 정렬을 해결하지 못했습니다. 나는 또한이 기사 http://www.gvu.gatech.edu/~jarek/graphics/papers/04PolygonBooleansMargalit.pdf을 읽었지만 아마 얻지 못할 것이다.
어떤 도움
주시면 감사하겠습니다.
어떻게 교차점을 정의합니까 (이미 정의했다고 말했습니까?)? 만지는 지점이 교차점일까요? –
터치 포인트를 교차점으로 정의하지만 필요한 경우 터치하는 것으로 쉽게 정의 할 수 있습니다. 모든 지점에 저장된 위치 속성이 있습니다. – TinF
한 가지 더 : 다른 폴리곤에서 해당하는 접촉/교차점을 쉽게 찾을 수 있습니까? –