Subversion Repositories Projects

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
2287 - 1

2
namespace GMap.NET.MapProviders
3
{
4
   using System;
5
 
6
   /// <summary>
7
   /// OpenStreetMapQuestSattelite provider - http://wiki.openstreetmap.org/wiki/MapQuest
8
   /// </summary>
9
   public class OpenStreetMapQuestSatteliteProvider : OpenStreetMapProviderBase
10
   {
11
      public static readonly OpenStreetMapQuestSatteliteProvider Instance;
12
 
13
      OpenStreetMapQuestSatteliteProvider()
14
      {
15
         Copyright = string.Format("© MapQuest - Map data ©{0} MapQuest, OpenStreetMap", DateTime.Today.Year);
16
      }
17
 
18
      static OpenStreetMapQuestSatteliteProvider()
19
      {
20
         Instance = new OpenStreetMapQuestSatteliteProvider();
21
      }
22
 
23
      #region GMapProvider Members
24
 
25
      readonly Guid id = new Guid("E590D3B1-37F4-442B-9395-ADB035627F67");
26
      public override Guid Id
27
      {
28
         get
29
         {
30
            return id;
31
         }
32
      }
33
 
34
      readonly string name = "OpenStreetMapQuestSattelite";
35
      public override string Name
36
      {
37
         get
38
         {
39
            return name;
40
         }
41
      }
42
 
43
      GMapProvider[] overlays;
44
      public override GMapProvider[] Overlays
45
      {
46
         get
47
         {
48
            if(overlays == null)
49
            {
50
               overlays = new GMapProvider[] { this };
51
            }
52
            return overlays;
53
         }
54
      }
55
 
56
      public override PureImage GetTileImage(GPoint pos, int zoom)
57
      {
58
         string url = MakeTileImageUrl(pos, zoom, string.Empty);
59
 
60
         return GetTileImageUsingHttp(url);
61
      }
62
 
63
      #endregion
64
 
65
      string MakeTileImageUrl(GPoint pos, int zoom, string language)
66
      {
67
         return string.Format(UrlFormat, GetServerNum(pos, 3) + 1, zoom, pos.X, pos.Y);
68
      }
69
 
70
      static readonly string UrlFormat = "http://otile{0}.mqcdn.com/tiles/1.0.0/sat/{1}/{2}/{3}.jpg";
71
   }
72
}