自定義Marker,可以理解為在地圖上自定義圖標(biāo)(Custom Marker),先看看GMap的地圖和圖標(biāo)的顯示方式:

Map控件上可以添加Overlay(圖層),可以添加多個圖層,先添加的圖層在下面顯示。
圖層上可以添加GMapMarker,當(dāng)然也可以添加GMapPolygon和GMapRoute,后續(xù)介紹。
在地圖的使用中常要求的功能就是添加自定義圖標(biāo),可以點擊圖標(biāo)、刪除圖標(biāo)、拖動圖標(biāo)、高亮圖標(biāo)等。
下面介紹這些功能的實現(xiàn)(主要是基于WinForm的,WPF的可以參考官方Demo實現(xiàn)):
1、自定義圖標(biāo),使用官方的Marker:
代碼如下:
Bitmap bitmap = Bitmap.FromFile("F://Projects//GMapDemo//GMapDemo//Image//A.png") as Bitmap;
GMapMarker marker = new GMarkerGoogle(point, bitmap);
直接使用GMap.NET.WindowsForms.Markers中的GMarkerGoogle,傳入一個Bitmap,就可以使用自定義的圖片來做圖標(biāo)。
2、繼承GMapMarker,自定義Marker:
代碼如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using GMap.NET;
using GMap.NET.WindowsForms;
using System.Drawing;
namespace GMapWinFormDemo
{
class GMapMarkerImage : GMapMarker
{
private Image image;
public Image Image
{
get
{
return image;
}
set
{
image = value;
if (image != null)
{
this.Size = new Size(image.Width, image.Height);
}
}
}
public Pen Pen
{
get;
set;
}
新聞熱點
疑難解答
圖片精選