2010-09-01 2 views
5

현재 운영 기간 동안 장치가 적용되는 영역을 구성하려고합니다. 이 프로세스의 첫 번째 단계는 덮여 진 영역의 다각형을 구성하는 것으로 보입니다. 패턴이 표준 모양이 아니므로 볼록한 선체는 가능한 가장 큰 커버리지 영역으로 점프하여 커버 된 영역을 과장합니다.일련의 점에서 볼록하지 않은 선체를 어떻게 생성합니까?

볼록하지 않은 선체 생성 개념을 다루는 것으로 보이는 논문을 발견했지만 높은 수준의 언어로이를 구현하는 방법에 대해서는 논의하지 않았습니다. http://www.geosensor.net/papers/duckham08.PR.pdf

동일한 결과를 얻기 위해 볼록하지 않은 선체 또는 오목한 선체 또는 임의의 파이썬 코드를 작성하는 간단한 알고리즘을 본 사람이 있습니까?

제한된 가장자리 크기로 제한된 성공률로 볼록 선체를 주로 사용해 보았습니다. 또한 불필요하게 배포 할 수없는 라이센스가있는 라이브러리를 발견했습니다. 더 좋은 아이디어 나 요리 책이 있습니까?

+1

아마도 관련 정보 : http://gis.stackexchange.com/questions/1200/concave-hull-definition-algorithms-and-practical-solutions – Gilead

+1

문제가 잘 정의되어 있습니까? 포인트를 다루는 볼록하지 않은 선체가 필요합니까? 아니면 몇 가지 추가적인 제약이 있습니까? 센터에서 정삼각형과 네 번째 점을 형성하는 세 점을 고려하십시오. 이 점들을 감싸는 (적어도) 가능한 3 개의 볼록하지 않은 선체가 있습니다. –

+3

와우, 이러한 다양한 스택 익스체인지 사이트는 실제로 답변을 할 수있는 사람들의 관점에서 질문을 이동시키는 훌륭한 역할을합니다. : –

답변

4

알파 셰이프를 살펴볼 수도 있습니다. CGAL 라이브러리는이를 계산할 수 있습니다.

편집 : 연결된 종이에 알파 모양을 참조하고 알고리즘 목록도 있습니다. 그게 당신에게 충분한 수준이지 않습니까? 파이썬을 태그로 나열한 이후로 필자는 Python에서 Delaunay 삼각 분할 라이브러리가 있다고 확신한다. 이것은 알고리즘 구현의 가장 어려운 부분이라고 생각한다. 결과 삼각형 출력을 수정할 수 있는지 확인해야합니다. 경계 질의 함수는 아마도 연관 배열로 구현 될 수 있습니다.

+0

불행하게도 여러분이 더 이상 부스트 - 파이썬과 CGAL의 최신 버전으로 컴파일하지 않는다고 언급 한 CGAL 용 파이썬 바인딩입니다. 프로젝트가 실제로 더 이상 지원되지 않는 것으로 보입니다. 다른 파이썬 대안이 있습니까? – conradlee

-1

필자는 an application을 작성하여 점 집합의 비 볼록 선체를 계산했습니다 (이를 실행하려면 Java jre가 필요합니다).

+2

하지만 당신은 코드를 공유하지 않을 것인가? –

관련 문제