包含gmap.netvb的詞條

GMAP.NET 怎么把接收到的坐標(biāo)轉(zhuǎn)換為地圖上的marker?

1)從兩個(gè)textbox分別輸入的經(jīng)度和緯度,則可以按以下方式轉(zhuǎn)換

成都創(chuàng)新互聯(lián)公司是一家專(zhuān)注于成都網(wǎng)站設(shè)計(jì)、網(wǎng)站制作與策劃設(shè)計(jì),五蓮網(wǎng)站建設(shè)哪家好?成都創(chuàng)新互聯(lián)公司做網(wǎng)站,專(zhuān)注于網(wǎng)站建設(shè)十余年,網(wǎng)設(shè)計(jì)領(lǐng)域的專(zhuān)業(yè)建站公司;建站業(yè)務(wù)涵蓋:五蓮等地區(qū)。五蓮做網(wǎng)站價(jià)格咨詢(xún):18982081108

double?lat?=?double.Parse(txtLatitude.Text);

double?lng?=?double.Parse(txtLongitude.Text);

//得到Marker點(diǎn)的PointLatLng

PointLatLng?p?=?new?PointLatLng(lat,?lng);

2)從兩個(gè)textbox分別輸入的相對(duì)于地圖控件左上角的屏幕坐標(biāo)(像素),則可以按以下方式轉(zhuǎn)換

int?x?=?int.Parse(txtPosX.Text);

int?y?=?int.Parse(txtPosY.Text);

//得到Marker點(diǎn)的PointLatLng

PointLatLng?p?=?mapControl.FromLocalToLatLng(x,?y);

3)假設(shè)地圖上有一個(gè)marker

//獲得marker的地理坐標(biāo)

PointLatLng?p?=?marker.Positon;

//將地理坐標(biāo)轉(zhuǎn)換成屏幕坐標(biāo)

GPoint?gp?=?mapControl.FromLatLngToLocal(marker.Position);

long?x?=?gp.X;??//marker點(diǎn)先對(duì)與地圖控件左上角的x

long?y?=?gp.Y;??//marker點(diǎn)先對(duì)與地圖控件左上角的y

如何畫(huà)出圓在C#中使用GMAP.NET的地圖

這是我知道的唯一途徑能取得這樣的成績(jī)是創(chuàng)建PointLatLng點(diǎn)列表,并繪制這些多邊形。下面是一個(gè)例子。

私人無(wú)效CreateCircle(的PointF點(diǎn),雙半徑,INT段)

{

文件清單 PointLatLng gpollist =新的List PointLatLng();

雙SEG = Math.PI * 2 /段;

INT Y = 0;

的for(int i = 0; I段;我++)

{

雙THETA =賽格*我;

雙A = point.x + Math.cos(THETA)*半徑;

雙B = point.y + Math.sin(THETA)*半徑;

PointLatLng GPOI =新PointLatLng(A,B);

gpollist.Add(GPOI);

}

GMapPolygon gpol =新GMapPolygon(gpollist“POL”);

overlayOne.Polygons.Add(gpol);

}

GMap.net 離線地圖問(wèn)題

離線地圖導(dǎo)出后,要自己加載的,并不是那個(gè)目錄下的,C:\Users\用戶(hù)名你的計(jì)算機(jī)用戶(hù)名\AppData\Local\GMap.NET\TileDBv5\en下的那個(gè)文件包含緩存的。

代碼如下:

MapManagerLoader.Instance.Load(ConfigurationManager.AppSettings["MapData"]); // 載入離線地圖數(shù)據(jù),MapData自己在appSetting中定義

this.MainMap.Manager.Mode = AccessMode.CacheOnly; //地圖讀取模式:服務(wù)器/本地緩存

其中MapManagerLoader代碼如下:

using System.Threading;

using GMap.NET;

namespace Client.WPF.Util

{

public class MapManagerLoader

{

private static readonly MapManagerLoader _instance = new MapManagerLoader();

public static MapManagerLoader Instance

{

get { return _instance; }

}

private MapManagerLoader()

{

}

private bool _isLoaded;

public bool Load(string fileName)

{

if (!_isLoaded)

{

new Thread(() = GMaps.Instance.ImportFromGMDB(fileName)).Start();

_isLoaded = true;

}

return _isLoaded;

}

}

}

gmap.net能不能點(diǎn)擊地圖上的一個(gè)建筑物,顯示該建筑物的信息?有這個(gè)功能嗎?

GAMP.NET沒(méi)有提供這個(gè)功能,你可以編程實(shí)現(xiàn)。

1)向GMapControl控件添加一個(gè)GMapOverlay層

2)采用默認(rèn)的GMarker來(lái)標(biāo)注你感興趣的建筑物

3)點(diǎn)擊GMarker時(shí),由你提供該建筑物內(nèi)人員、建筑面積等信息,然后用GMapToolTip顯示這些信息。

分享文章:包含gmap.netvb的詞條
文章鏈接:http://muchs.cn/article28/doececp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供營(yíng)銷(xiāo)型網(wǎng)站建設(shè)品牌網(wǎng)站制作、小程序開(kāi)發(fā)、自適應(yīng)網(wǎng)站、面包屑導(dǎo)航網(wǎng)站設(shè)計(jì)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護(hù)公司