Android 台灣中文網
標題:
關於google map api的kml
[打印本頁]
作者:
aaa908
時間:
2011-11-25 09:56
標題:
關於google map api的kml
請問Android有像iphone一樣可以直接呼叫kml檔,顯示路線圖嗎
登錄/註冊後可看大圖
2011-11-24_184257.jpg
(50.69 KB, 下載次數: 8)
下載附件
保存到相冊
2011-11-25 09:55 上傳
這張地圖的路線是寫死的
還是說這路線可以寫死在 .java 檔裡面
如果有可以提供範例嗎
作者:
ploglin
時間:
2011-11-25 19:12
本帖最後由 ploglin 於 2011-11-25 19:14 編輯
Android 在 MAP 的部份有直接支援路線規劃。
我的做法是呼叫 google api 取得路線的所有經緯度,然後再呼叫 LineItemizedOverlay 去實作
LineItemizedOverlay.java
public class LineItemizedOverlay extends Overlay {
private ArrayList<GeoPoint> mOverlays = new ArrayList<GeoPoint>();
private int colour;
private static final int ALPHA = 120;
private static final float STROKE = 4.5f;
private final Path path;
private final Point p;
private final Paint paint;
public LineItemizedOverlay(ArrayList<GeoPoint> mOverlays) {
this.mOverlays = mOverlays;
path = new Path();
p = new Point();
paint = new Paint();
}
@Override
public void draw(Canvas canvas, MapView mapView, boolean shadow) {
super.draw(canvas, mapView, shadow);
paint.setColor(Color.BLUE);
paint.setAlpha(ALPHA);
paint.setAntiAlias(true);
paint.setStrokeWidth(STROKE);
paint.setStyle(Paint.Style.STROKE);
redrawPath(mapView);
canvas.drawPath(path, paint);
}
private void redrawPath(final MapView mv) {
final Projection prj = mv.getProjection();
path.rewind();
final Iterator<GeoPoint> it = mOverlays.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);
}
}
複製代碼
歡迎光臨 Android 台灣中文網 (https://apk.tw/)
Powered by Discuz! X3.1