gps를 이용해서 이동경로를 선으로 그을려고 하는데, 똑같은 좌표를 가지고도 , drawLine()은 그려지고 drawPath는 안그려지네요..
왜그럴까요?? ㅠㅠ
public class traceOverlay extends MyLocationOverlay (제가 만든 오버레이 클래스입니다.)
{
MapView _mapview;
Context _context;
Path path;
GeoPoint startPoint;
Point P_startPoint;
GeoPoint endPoint;
Point P_endPoint;
public traceOverlay(Context context, MapView mapView)
{
super(context, mapView);
_context = context;
_mapview = mapView;
if(super.getMyLocation()!=null)
startPoint=super.getMyLocation();
else
startPoint=new GeoPoint ((int)(35.86060548139674*1E6),(int)(128.52770182270893*1E6));
}
public boolean draw(Canvas canvas, MapView mapView, boolean shadow,long when)
{
super.draw(canvas, mapView, shadow);
path =new Path();
P_startPoint=new Point();
P_endPoint=new Point();
Paint paint1=new Paint();
paint1.setAntiAlias(true);
paint1.setDither(true);
paint1.setColor(Color.RED);
paint1.setStyle(Paint.Style.STROKE);
paint1.setStrokeJoin(Paint.Join.ROUND);
paint1.setStrokeCap(Paint.Cap.ROUND);
paint1.setStrokeWidth(3);
paint1.setStyle(Paint.Style.FILL);
mapView.getProjection().toPixels(startPoint, P_startPoint);
if(endPoint!=null)
mapView.getProjection().toPixels(endPoint, P_endPoint);
else
{
P_endPoint=P_startPoint;
}
path.moveTo(P_startPoint.x,P_startPoint.y);
path.lineTo( P_endPoint.x,P_endPoint.y);
canvas.drawLine(P_startPoint.x, P_startPoint.y, P_endPoint.x,P_endPoint.y, paint1); (이부분에서 똑같은 경로를 가지고 drawLine()과 drawPath를 했을때, drawLine()은 그려지고 drawPath()로 했을때는 안그려지네요..)
canvas.drawPath(path,paint1);
return shadow;
}
public void onLocationChanged(Location location){
super.onLocationChanged(location);
endPoint=new GeoPoint((int)(location.getLatitude()*1E6),(int)(location.getLongitude()*1E6));
//P_startPoint=P_endPoint;
}
}




path변수에 데이터가 올바르게 셋팅되는지 확인해보세요.