日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Silverlight学习笔记十七BingMap(三)之地图的地区标识

發(fā)布時間:2023/12/10 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Silverlight学习笔记十七BingMap(三)之地图的地区标识 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

  如果我們需要在Bing Maps中加入一個小圖釘標(biāo)記,該如何實(shí)現(xiàn)了?

  Bing Maps控件已經(jīng)為我們提供了這個功能,在Microsoft.Maps.MapControl名稱空間下提供了實(shí)現(xiàn)圖釘應(yīng)用的圖釘層Pushpin類用該類來實(shí)現(xiàn)普通標(biāo)識

?  在Xaml中添加<map:Pushpin Location="33.845881352,105.165628188471"/>這樣就簡單地實(shí)現(xiàn)了一個圖釘標(biāo)識。但我們平時想用圖片或其它的標(biāo)識,那就必須在Xaml中加?

<map:MapLayer x:Name="myMapLayer"></map:MapLayer>標(biāo)記

下面是一個圖片的標(biāo)識

?  /// <summary>
??????? /// 首先定義Image對象的實(shí)例用于顯示圖片
??????? /// 定義PositionOrigin的實(shí)例用于
??????? /// </summary>
??????? /// <param name="sender"></param>
??????? /// <param name="e"></param>

? private void btnMapLayer_Click(object sender, RoutedEventArgs e)
??????? {
??????????? Image image = new Image();
??????????? image.Source = new BitmapImage(new Uri("images/China.jpg", UriKind.Relative));
??????????? image.Stretch = Stretch.None;

??????????? //圖片域
??????????? image.ImageFailed += image_imageFiled;
??????????? PositionOrigin position = new PositionOrigin(1.0, 1.0);

    //將圖片按位置33.845881352, 105.165628188471顯示在地圖中myMapLayer是我們在Xaml定義的一個映射層。
??????????? this.myMapLayer.AddChild(image, new Location(33.845881352, 105.165628188471), position);
??????? }

    //異常事件

??????? private void image_imageFiled(object sender, ExceptionRoutedEventArgs e)
??????? {

??????? }

效果如圖

  Bing Maps Silverlight Control支持用戶自定義繪制多邊形(Polygon)圖形,包括三角形、四邊形(矩形、菱形)、以及其他更多多邊形的圖形繪制。多邊形說簡單點(diǎn)就是一個由多條邊組成的有一定規(guī)則的圖形,比如三角形就是由三條邊組成,我們要在地圖上繪制三角形需要知道三個頂點(diǎn)的坐標(biāo)值(精度和緯度)。

  下面是一個三角形的標(biāo)識

    //MapPolygon是用來繪制多邊形的類
??????????? MapPolygon polygon = new MapPolygon();

    //給多邊形填充顏色

??????????? polygon.Fill = new System.Windows.Media.SolidColorBrush(System.Windows.Media.Colors.Red);

??????????? polygon.StrokeThickness = 5;

??????????? polygon.Opacity = 0.7;

??????????? polygon.Locations = new LocationCollection() {

          //三角形的第一個頂點(diǎn)坐標(biāo)

??????????????????????????? new Location(34.9294740237661,107.506492025863),

          //三角形的第二個頂點(diǎn)坐標(biāo)

??????????????????????????? new Location(37.7814222409819, 105.979148275863),

          //三角形的第三個頂點(diǎn)坐標(biāo)

??????????????????????????? new Location(40.2865067209496, 109.219382650863) };

??????????? this.myMap.Children.Add(polygon);

?注:如果是四邊形的話,就是

polygon.Locations = new LocationCollection() {

          //四邊形的第一個頂點(diǎn)坐標(biāo)

??????????????????????????? new Location(34.9294740237661,107.506492025863),

          //四邊形的第二個頂點(diǎn)坐標(biāo)

??????????????????????????? new Location(37.7814222409819, 105.979148275863),

          //四邊形的第三個頂點(diǎn)坐標(biāo)

??????????????????????????? new Location(40.2865067209496, 109.219382650863)

),

          //四邊形的第四個頂點(diǎn)坐標(biāo)

??????????????????????????? new Location(43.2865067209496, 44.219382650863)

};

效果如圖

?

源碼:http://files.cnblogs.com/salam/SlBindMapDemo.rar

轉(zhuǎn)載于:https://www.cnblogs.com/salam/archive/2010/07/28/1787232.html

總結(jié)

以上是生活随笔為你收集整理的Silverlight学习笔记十七BingMap(三)之地图的地区标识的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。