1

내 안드로이드 프로젝트에 Google지도가 있습니다. 특정 센터에서 설정하고 확대/축소합니다. 스크롤 및 줌 기능을 사용하지 않습니다. 전화의 특정 위치에 회선을 추가하고 싶습니다. 예를 들어 p1 (100,200)에서 p2 (300,400)까지 줄을 추가하고 싶습니다.Android Google Map : 휴대 전화 화면의 x와 y를 사용하여 Google지도에 선을 그릴 수있는 방법은 무엇입니까?

문제는 android가지도의 x와 y를 사용하는 것입니다. (확실하지는 않습니다.)하지만 휴대 전화 화면의 x와 y를 사용하고 싶습니다. 어떻게 해결할 수 있습니까?

Point p1,p2; 
LatLng l1,l2;   
googleMap.animateCamera(CameraUpdateFactory.newLatLngZoom(origin,21)); 
proj = googleMap.getProjection(); 

p1=new Point(100,200); 
l1=proj.fromScreenLocation(p1); 
p2=new Point(300,400); 
l2=proj.fromScreenLocation(p2); 
googleMap.addPolyline(new PolylineOptions().add(l1).add(l2).width(10).color(Color.GREEN)); 
+0

화면에서 좌표를 얻으려면 무엇이 좋을까요? –

+0

안드로이드는 휴대 전화의 좌표를 의미하지는 않습니다. 구멍의 좌표로 선을 표시합니다.지도 ... 표시된지도의 좌표에 표시하고 싶습니다. 나는 그것을 선례로 작동시킬 수 있다고 생각하지만 두 번째 문제는 단지 작은 선을 그려야한다는 것입니다! 그러나 내가 100,200에서 101,201 사이의 선을 칠 때 큰 선을 그립니다. 내 purpuse 제대로 전달할 수 있기를 바랍니다. 가난한 영어에 대한 미안. – jion

+0

ScreenLocation에서 호출하면 화면 좌표 (전화 좌표)에 따라 lat 및 lng로 좌표가 재조정됩니다. 그래서,이 좌표로 선을 그릴 수 있습니다. 실제로 무엇을했는지. 선이 너무 큰 경우 - 좌표 또는 선 특성을 변경하십시오. 미안하지만 문제는 이해할 수 없지만 선을 그 으려하지만 결과가 잘못되었습니다. 왜? –

답변

0

이 문제점을 발견했습니다. 이 코드를 가졌습니다

googleMap.animateCamera(CameraUpdateFactory.newLatLngZoom(origin,21)); 
proj = googleMap.getProjection(); 

지도를 확대 한 다음 확대했습니다. 투영이 시작되었습니다 ... 이로 인해 투영에 잘못된 값이 있습니다 ...