微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

最新silverlight 调用google影像地图包含矢量标注

using System; using System.Net; using System.Windows; using System.Windows.Controls; using System.Windows.Documents; using System.Windows.Ink; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Animation; using System.Windows.Shapes; using ESRI.ArcGIS.Client; using ESRI.ArcGIS.Client.Geometry; namespace sdhbgis.Dal {     public class GoogleMapLayerImage : TiledMapServiceLayer     {         private const double cornerCoordinate = 20037508.3427892;         public override void Initialize()         {             //this.Opacity = 0.5;             this.FullExtent = new             ESRI.ArcGIS.Client.Geometry.Envelope(-20037508.342787,-20037508.342787,20037508.342787,20037508.342787);//(-180,-85.0511287798066,180,85.0511287798066)             {                 SpatialReference = new ESRI.ArcGIS.Client.Geometry.SpatialReference(102100);             };             this.SpatialReference = new ESRI.ArcGIS.Client.Geometry.SpatialReference(102100);             //this.InitialExtent = this.FullExtent;             this.TileInfo = new TileInfo()             {                 Height = 256,                Width = 256,                Origin = new ESRI.ArcGIS.Client.Geometry.MapPoint(-20037508.342787,20037508.342787)//Origin = new ESRI.ArcGIS.Geometry.MapPoint(-180,90)                 {                     SpatialReference = new ESRI.ArcGIS.Client.Geometry.SpatialReference(102100)                 },                Lods = new Lod[20]             };             double resolution = 156543.033928;             for (int i = 0; i < TileInfo.Lods.Length; i++)             {                 TileInfo.Lods[i] = new Lod() { Resolution = resolution };                 resolution /= 2;             }             base.Initialize();             //this.FullExtent = new ESRI.ArcGIS.Client.Geometry.Envelope(-20037508.3427892,-20037508.3427892,20037508.3427892,20037508.3427892)             //{             //    SpatialReference = new SpatialReference(102100)             //};             //// This layer's spatial reference             //this.SpatialReference = new SpatialReference(102100);             //// Set up tile @R_490_4045@ion. Each tile is 256x256px,19 levels.             //this.TileInfo = new TileInfo()             //{             //    Height = 256,            //    Width = 256,            //    Origin = new MapPoint(-cornerCoordinate,cornerCoordinate) { SpatialReference = new ESRI.ArcGIS.Client.Geometry.SpatialReference(102100) },            //    Lods = new Lod[19]             //};             //// Set the resolutions for each level. Each level is half the resolution of the prevIoUs one.             //double resolution = cornerCoordinate * 2 / 256;             //for (int i = 0; i < TileInfo.Lods.Length; i++)             //{             //    TileInfo.Lods[i] = new Lod() { Resolution = resolution };             //    resolution /= 2;             //}             //// Call base initialize to raise the initialization event             //base.Initialize();         }         private string setType="2";         public string SetType         {             get { return setType; }             set { setType = value; }         }         public override string GetTileUrl(int level,int row,int col)         {             //    int num = (col + (2 * row)) % 4;             //    string str = "&s=";             //    string str2 = "galileo";             //    int length = ((col * 3) + row) % 8;             //    str = str + str2.Substring(0,length);             //    if (row >= 0x2710)             //    {             //    }             //    string str3 = "http://khm" + num.ToString() + ".google.com/kh=49&x=";             //    return (str3 + col.ToString() + "&y=" + row.ToString() + "&z=" + level.ToString() + str);             //  string baseUrl = "http://mt2.google.cn/vt/lyrs=m@167000000&hl=zh-CN&gl=cn&s=galil&x=";//矢量图             string baseUrl = "http://mt2.google.cn/vt/lyrs=s@169000000,m@169000000&hl=zh-CN&gl=cn&s=galil&x=";//卫星图             // string cbaseUrl = "http://mt2.google.cn/vt/lyrs=m@167000000,m@169000000&hl=zh-CN&gl=cn&x=0&y=0&z=0&s=galil";//市区图             //if (SetType == "1")             //{             //    baseUrl = "http://mt2.google.cn/vt/lyrs=m@167000000&hl=zh-CN&gl=cn&s=galil&x=";//矢量             //}             //else if (SetType == "2")             //{             //    baseUrl = "http://mt2.google.cn/vt/lyrs=s@167000000&hl=zh-CN&gl=cn&s=galil&x=";//卫星             //}             //else             //{             //    baseUrl = "http://mt2.google.cn/vt/lyrs=t@128&hl=zh-CN&gl=cn&s=galil&x=";//地形             //}             string url = baseUrl + col.ToString() + "&y=" + row.ToString() + "&z=" + level.ToString() + "";            // string url2 = "http://api.tiles.virtualearth.net/api/GetMap.ashx?c=" + row.ToString() + "," + col.ToString() + "&z=" + level.ToString() + "&b=h,mkt.en-US&z=4&token={token}";             //string url3 = "http://mt{0}.google.cn/vt/lyrs=s@88&gl=cn&x=";            // string ur4 = url3 + col.ToString() + "&y=" + row.ToString() + "&z=" + level.ToString() + "";             return url;         }     } }

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐