我使用SupportMapFragment創建了一個簡單的地圖應用程序,現在想要在其上顯示路線。 GoogleSamples只有一個例子,它借鑑與多邊形一條線,但它不能創造一個正確的方式,兩點:( 之間只有簡單的線條如何使分辯路線throught街道和道路?如何在Google地圖上創建路線Android API
0
A
回答
2
不幸的是這是不可能的,以使用Google Maps API v2自動創建一個到點之間的路線,但是,您可以使用Google方向API: https://developers.google.com/maps/documentation/directions/
結果,您將能夠自行繪製路線。
0
如果有任何錯誤比抱歉...我沒有確定的想法,但這種類型的方法將幫助你。 ..
public class RouteOverlay extends Overlay {
/** GeoPoints representing this routePoints. **/
private final List<GeoPoint> routePoints;
/** Colour to paint routePoints. **/
private int colour;
/** Alpha setting for route overlay. **/
private static final int ALPHA = 120;
/** Stroke width. **/
private static final float STROKE = 4.5f;
/** Route path. **/
private final Path path;
/** Point to draw with. **/
private final Point p;
/** Paint for path. **/
private final Paint paint;
/**
* Public constructor.
*
* @param route Route object representing the route.
* @param defaultColour default colour to draw route in.
*/
public RouteOverlay(final Route route, final int defaultColour) {
super();
routePoints = route.getPoints();
colour = defaultColour;
path = new Path();
p = new Point();
paint = new Paint();
}
@Override
public final void draw(final Canvas c, final MapView mv,
final boolean shadow) {
super.draw(c, mv, shadow);
paint.setColor(colour);
paint.setAlpha(ALPHA);
paint.setAntiAlias(true);
paint.setStrokeWidth(STROKE);
paint.setStyle(Paint.Style.STROKE);
redrawPath(mv);
c.drawPath(path, paint);
}
/**
* Set the colour to draw this route's overlay with.
*
* @param c Int representing colour.
*/
public final void setColour(final int c) {
colour = c;
}
/**
* Clear the route overlay.
*/
public final void clear() {
routePoints.clear();
}
/**
* Recalculate the path accounting for changes to
* the projection and routePoints.
* @param mv MapView the path is drawn to.
*/
private void redrawPath(final MapView mv) {
final Projection prj = mv.getProjection();
path.rewind();
final Iterator<GeoPoint> it = routePoints.iterator();
prj.toPixels(it.next(), p);
path.moveTo(p.x, p.y);
while (it.hasNext()) {
prj.toPixels(it.next(), p);
path.lineTo(p.x, p.y);
}
path.setLastPoint(p.x, p.y);
}
}
相關問題
- 1. 如何使用Google地圖API創建路線?
- 2. 如何使用Google map api在Google地圖上繪製路線?
- 3. 建議的路線 - Google地圖API
- 4. Android,Google地圖上的繪製路線
- 5. Google API - 如何創建地圖鏈接?
- 6. 在Google地圖上繪製路線
- 7. 在Android上創建離線地圖
- 8. 如何在Android中使用路由創建離線地圖?
- 9. 如何在地圖上創建信息氣泡(不是Google API)
- 10. 在Google地圖上清除路線
- 11. Google地圖Android V2 - 如何在GroundOverlay上使用在線圖像?
- 12. 如何在Google地圖上繪製鐵路路線?
- 13. 在Google地圖上保存路線
- 14. 在Google地圖上模擬路線
- 15. Google地圖上的遊戲路線
- 16. 在地圖上繪製路線(android)
- 17. 如何在頁面上顯示Google地圖路線結果
- 18. 如何在android地圖上的google地圖上繪製虛線地圖
- 19. 使用Google Maps 3 API在地圖上獲取多條路線
- 20. 在Android上計算地圖路線
- 21. 允許用戶在地圖上添加路線圖(Google地圖API)
- 22. Google API(路線) - 創建避開特定點的路線
- 23. 如何使用Google Maps API創建路線
- 24. 如何使用Google地圖API /路線API獲取道路危險
- 25. Android Google地圖API
- 26. Google地圖如何在DIV上繪製路線?
- 27. 如何在Google地圖上繪製和導航路線
- 28. 如何從Google Map API v3地圖中刪除路線?
- 29. Google地圖上的動畫路線
- 30. 如何在Google地圖android中使用多種顏色創建多重摺線?
有沒有關於此主題的更新? – Martin