2011-01-27 1 views
0

저는 오랫동안 수색을 해왔으며 그 해답을 찾지 못했습니다. 가까이 올 수있는 몇 가지가 있지만 내 질문에 정확히 대답하는 것만 큼은 없습니다! 좌표 세트를 가져 와서 다각형을 만들고 그 위치가 다각형 안에 있는지 확인하고 싶습니다. 어떤 도움을 주시면 감사하겠습니다!Android에서 위도/경도가 모두있는 모서리가있는 특정 다각형 내에 위치 (위도/경도)가 있는지 어떻게 판단 할 수 있습니까?

+0

이것은 간단한 문제는 아닙니다. 위도/경도는 유클리드 공간이 아닙니다. 구형 공간에서 볼록한 선체 공식과 비슷할 것입니다 만, 그다지 크지는 않습니다. – Falmarri

+1

이것은 극 근처와 넓은 영역에서 마찬가지입니다. 문제가 극지방에서 상대적으로 작은 영역에만 관련된 것이라면 유클리드 근사가 좋을 수 있습니다. –

답변

0

오케이 - 내가 방금 게시 한 답변을 완전히 다시 작성했습니다 (아무도 읽지 않기를 바랍니다).

다각형의 경로를 구성하여 영역의 경로로 설정하고 영역의 contains() 메소드를 호출하여 점을 테스트합니다.

1

여기서 http://alienryderflex.com/polygon 매우 똑똑한 알고리즘과 작업을 수행하는 Java와 매우 가까운 C 코드 (유클리드 근사법)를 찾을 수 있습니다.

  1. 안드로이드 지역의 contains() 당신에게 정확한 값을 제공하지 않습니다 때문에 그래서 난 그냥 내 자신의 클래스를 작성 것입니다. true를 반환하면 검사 할 점이 다각형에 있습니다. 여태까지는 그런대로 잘됐다. 그러나 false를 반환하면 여전히 내부에있을 수 있습니다. 어떻게 든 그 방법은 이라고 불릴 만하다. 근본적으로 쓸모가 없다.

  2. Android에서는 Java AWT Polygon 클래스를 사용할 수 없습니다.

관련 문제