亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Android google map自定義的折現圖層的實現

系統 1809 0

?

實現結果如下:

?

? Android google map自定義的折現圖層的實現

?

?

代碼如下:?

    package com.easyway.polyline;

import java.util.ArrayList;
import java.util.List;

import android.os.Bundle;

import com.google.android.maps.GeoPoint;
import com.google.android.maps.MapActivity;
import com.google.android.maps.MapController;
import com.google.android.maps.MapView;
/**
 * 自定義的折現圖層的實現
 *  在特定情況下,可能需要我們開發人員繪制特定的圖層在google map上面顯示
 *  
 *  
 * 
 * @author longgangbai
 *
 */
public class GooglePolylineActivity extends MapActivity {
	private MapView mapView;
	
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        mapView =(MapView)findViewById(R.id.mapView);
        
        //存儲連接的點的信息
        List<GeoPoint> points = new ArrayList<GeoPoint>();
        points.add(new GeoPoint(39907794,116356694));
        points.add(new GeoPoint(39950181,116415059));
        points.add(new GeoPoint(39909637,116435315));
        points.add(new GeoPoint(39902526,116398236));
        
        //添加自定義的圖層
        PolyLine polyline = new PolyLine(points);
        
        mapView.getOverlays().add(polyline); //map是MapView類型
        
        mapView.invalidate();
        mapView.setBuiltInZoomControls(true);
        
        MapController mapcontroller=mapView.getController();
        GeoPoint  point=new GeoPoint(39950181,116415059);
        mapcontroller.setCenter(point);
        mapcontroller.setZoom(7);
    }

    /**
     * 是否顯示路線顯示
     */
	@Override
	protected boolean isRouteDisplayed() {
		return true;
	}
	
	
}
  

?

?

?

    package com.easyway.polyline;


import java.util.List;

import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Point;

import com.google.android.maps.GeoPoint;
import com.google.android.maps.MapView;
import com.google.android.maps.Overlay;
import com.google.android.maps.Projection;

/**
 * Goolge地圖之Polyline實現Overlay 以圖層形式存在.
 * MyLocationOverlay:定位當前位置的圖層
 * ItemizedOverlay:圖層的基類
 * OverlayItem:圖層的項
 * 
 * 
 * @author longgangbai
 */
public class PolyLine extends Overlay {
	List<GeoPoint> points;
	Paint paint;

	/**
	 * 構造函數,使用GeoPoint List構造Polyline
	 * 
	 * @param points
	 *            GeoPoint點List
	 */
	public PolyLine(List<GeoPoint> points) {
		this.points = points;
		paint = new Paint();
		paint.setColor(Color.BLUE);
		paint.setAlpha(150);
		paint.setAntiAlias(true);
		paint.setStyle(Paint.Style.FILL_AND_STROKE);
		paint.setStrokeWidth(4);
	}

	/**
	 * 使用GeoPoint點List和Paint對象來構造Polyline
	 * 
	 * @param points
	 *            GeoPoint點List,所有的拐點
	 * @param paint
	 *            Paint對象,用來控制劃線樣式
	 */
	public PolyLine(List<GeoPoint> points, Paint paint) {
		this.points = points;
		this.paint = paint;
	}


	/**
	 * 真正將線繪制出來 只需將線繪制到canvas上即可,主要是要轉換經緯度到屏幕坐標
	 */
	@Override
	public void draw(Canvas canvas, MapView mapView, boolean shadow) {
		if (!shadow) {// 不是繪制shadow層
			Projection projection = mapView.getProjection();
			if (points != null) {
				if (points.size() >= 2) {
					Point start = projection.toPixels(points.get(0), null);// 需要轉換坐標
					for (int i = 1; i < points.size(); i++) {
						Point end = projection.toPixels(points.get(i), null);
						canvas.drawLine(start.x, start.y, end.x, end.y, paint);// 繪制到canvas上即可
						start = end;
					}
				}
			}
		}
	}
}
  

?

Android google map自定義的折現圖層的實現


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦?。?!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 日韩城人视频 | 亚洲精品在线网站 | 国产精品第一 | 亚洲欧美国产高清va在线播放 | 久久国产热视频 | 国产高清精品自在线看 | 一本一本久久a久久综合精品蜜桃 | 日本综合欧美一区二区三区 | 狠狠色成人综合网图片区 | 亚洲欧美激情精品一区二区 | 国产成人久久精品区一区二区 | 一区二区三区在线免费看 | 亚洲成人福利在线 | 九九九九九九精品免费 | 私人影院在线 | 久久久久久久亚洲精品一区 | 九九视频国产免 | 日韩在线免费视频 | julia紧身裙中文字幕在线看 | 欧美国产中文 | 日韩久久久精品首页 | 日韩一区二区视频 | 亚洲欧美日韩成人网 | 99中文字幕 | 中文亚洲日韩欧美 | 久操免费在线视频 | 国产精品久久久久精 | 日日噜噜噜夜夜爽爽狠狠图片 | 九九影院理论片在线观看 | 久久久久久国产精品三级 | 毛片黄片视频 | 午夜性福 | 久久精品国产74国产 | 成人黄色一级毛片 | 国产亚洲精品麻豆一区二区 | 天天干狠狠干 | 色综合久久久久综合体桃花网 | 午夜影院福利 | 九九99热久久精品在线6手机 | 欧美激情中文字幕一区二区 | 久久视屏这里只有精品6国产 |