无意间翻了翻13年玩耍的BingMap:
1、为了能显示中文地图:
tileLayer = new MapTileLayer();
TileSource tileSource = new TileSource();
tileSource.UriFormat = "http://r2.tiles.ditu.live.com/tiles/r{quadkey}.png?g=41";
// Add the tile overlay to the map layer
tileLayer.TileSource = tileSource;
if (!myMap.Children.Contains(tileLayer))
{
myMap.Children.Add(tileLayer);
}
tileLayer.Opacity = tileOpacity;
2、AMap继承TileSource重写GetUri:
public override Uri GetUri(int x, int y, int zoomLevel)
{
string url = string.Format("http://webst01.is.autonavi.com/appmaptile?style=7&x={0}&y={1}&z={2}&lang=zh_cn&size=1&scale=1", x, y, zoomLevel);
// 返回占位符瓦片的URI
return new Uri(url, UriKind.Absolute);
}
3、下面才是重点Linux下的GIS效果:
4、先去下载Mapsui
https://github.com/Mapsui/Mapsui
5、平面底图:
string gaodeUrlTemplate = "http://webst01.is.autonavi.com/appmaptile?style=7&x={x}&y={y}&z={z}&lang=zh_cn&size=1&scale=1";
ITileSource tileSource = new HttpTileSource(new GlobalSphericalMercator(4, 18), gaodeUrlTemplate);
// 创建高德地图瓦片层
var gaodeTileLayer = new TileLayer(tileSource)
{
Name = "GaodeMap"
};
mapControl.Map.Layers.Insert(0, gaodeTileLayer);
6、卫星底图:
string gaodeUrlTemplate = "http://webst03.is.autonavi.com/appmaptile?style=6&x={x}&y={y}&z={z}&lang=zh_cn&size=1&scale=1";
7、路网底图:
gaodeUrlTemplate = "http://wprd02.is.autonavi.com/appmaptile?style=8&x={x}&y={y}&z={z}&lang=zh_cn&size=1&scale=1"
8、先来个Mark图层:
// 创建一个图层并将点要素添加到图层中
MarkLayer = new MemoryLayer
{
Name = "MarkLayer",
//这里必须要写上,不然点了地图,触发不了
IsMapInfoLayer = true,
};
9、把MarK添加到图层上:
//创建一个点要素
var pointFeature = new PointFeature(SphericalMercator.FromLonLat(item.Lng, item.Lat).ToMPoint());
CalloutStyle calloutStyle = CreateCalloutStyle(item.Name);
pointFeature.Styles.Add(calloutStyle);
// 为点要素设置一些样式,例如图标
var symbolStyle = new SymbolStyle
{
SymbolType = SymbolType.Image,
SymbolScale = 0.15,
BitmapId = bitmapId,
};
pointFeature.Styles.Add(symbolStyle);
Features.Add(pointFeature);
10、在rk3568板运行的效果:
最终简单的效果先这样吧
;以后有时间的话,可以再去摸索一下更复杂的效果
;编程不息、Bug不止、无Bug、无生活
;改bug的冷静、编码的激情、完成后的喜悦、挖坑的激动 、填坑的兴奋;这也许就是屌丝程序员的乐趣吧;今天就到这里吧;希望自己有动力一步一步坚持下去;生命不息,代码不止;大家抽空可以看看今天分享的效果,有好的意见和想法,可以在留言板随意留言;我看到后会第一时间回复大家,多谢大家的一直默默的关注和支持!如果觉得不错,那就伸出您的小手点个赞并关注一下!