I've drawed line between geopoints. its successfully drawed. when we see the map, the drawline look like pixelated when adjecent of next drawling. how to merge the line?
My code is here,
@Override
public void draw(Canvas canvas, MapView mapview, boolean shadow) {
super.draw(canvas, mapview, shadow);
if(! routeIsActive) return;
mapview.getProjection().toPixels(locpoint, pp); // Converts GeoPoint to screen pixels
int xoff = 0;
int yoff = 0;
int oldx = pp.x;
int oldy = pp.y;
int newx = oldx + xoff;
int newy = oldy + yoff;
paint.setAntiAlias(true);
paint.setDither(true);
paint.setStrokeWidth(7);
for(int i=0; i<numberRoutePoints-1; i++)
{
switch(routeMode.get(i))
{
case 0:
paint.setColor(Color.parseColor("#666666"));
break;
case 1:
paint.setColor(Color.parseColor("#0EA7D6"));
break;
case 2:
paint.setColor(Color.parseColor("#654321"));
break;
case 3:
paint.setColor(Color.parseColor("#123456"));
break;
}
mapview.getProjection().toPixels(routePoints.get(i), pold);
oldx = pold.x;
oldy = pold.y;
mapview.getProjection().toPixels(routePoints.get(i+1), pnew);
newx = pnew.x;
newy = pnew.y;
canvas.drawLine(oldx, oldy, newx, newy, paint);
}
}
You should change the style of the paint object like this:
paint.setStrokeCap(Cap.ROUND);
If you draw a circle at the beginning and the end of each line (the circle diameter must be the line height), I think it will do the trick or maybe drawRoundRect of the canvas can do it well
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With