2017-02-13 1 views
0

이미 Google 맵에서 이미지로 폴리 라인을 어떻게 그렸습니까? 맵 레이아웃이없는 폴리 라인 만.Android - 이미지로 폴리선 가져 오기

Google지도에서 폴리 라인을 플롯하고 이미지로 폴리 라인을 가져 오려고합니다. 그래서 그것은 단지

https://i.stack.imgur.com/vUqS3.png

+0

당신이이 문제를 해결하기 위해 관리가 가리키는 좌표? 나는 똑같은 것을 필요로한다 – Favolas

+0

@ Favolas. 내 대답을 확인하십시오. 늦게 답변 thoy – Alooza

+0

에 대한 미안 나는 또한 이것을 달성 관리했습니다. 내 접근법은 다음과 같습니다 (http://stackoverflow.com/questions/44303951/coordinates-scale-not-correct-when-drawing-a-polyline-on-an-view). – Favolas

답변

1

내가 변경하여이 문제를 해결하기 위해 관리하는지도 않고 레드 라인을 보여

private Bitmap createPolylineBitmap() { 
    Bitmap bitmap = Bitmap.createBitmap(mapFragment.getView().getWidth(), mapFragment.getView().getHeight(), Bitmap.Config.ARGB_8888); 
    Canvas canvas = new Canvas(bitmap); 

    Paint paint = new Paint(); 
    paint.setColor(ContextCompat.getColor(this, R.color.purple)); 
    paint.setStrokeWidth(10); 
    paint.setDither(true); 
    paint.setStyle(Paint.Style.STROKE); 
    paint.setStrokeJoin(Paint.Join.ROUND); 
    paint.setStrokeCap(Paint.Cap.ROUND); 
    paint.setAntiAlias(true); 

    for (int i = 0; i < coordinates.size(); i++) { 
     LatLng latLng1 = new LatLng(coordinates.get(i).latitude, coordinates.get(i).longitude); 
     LatLng latLng2 = new LatLng(coordinates.get(i + 1).latitude, coordinatest.get(i + 1).longitude); 
     canvas.drawLine((LatLngToPoint(latLng1).x), ((LatLngToPoint(latLng1).y)), (LatLngToPoint(latLng2).x), (LatLngToPoint(latLng2).y), paint); 
    } 

    return bitmap; 
} 

private Point LatLngToPoint(LatLng coordinate) { 
    Projection projection = googleMap.getProjection(); 

    return projection.toScreenLocation(coordinate); 
} 
관련 문제