Files
@ e2a1895cae7c
Branch filter:
Location: seniordesign-ui/GMap.NET.Core/GMap.NET.MapProviders/Etc/LatviaMapProvider.cs
e2a1895cae7c
2.9 KiB
text/x-csharp
dynamic COM ports!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 |
namespace GMap.NET.MapProviders
{
using System;
using GMap.NET.Projections;
public abstract class LatviaMapProviderBase : GMapProvider
{
public LatviaMapProviderBase()
{
RefererUrl = "http://www.ikarte.lv/map/default.aspx?lang=en";
Copyright = string.Format("©{0} Hnit-Baltic - Map data ©{0} LR Valsts zemes dieniests, SIA Envirotech", DateTime.Today.Year);
MaxZoom = 11;
Area = new RectLatLng(58.0794870805093, 20.3286067123543, 7.90883164336887, 2.506129113082);
}
#region GMapProvider Members
public override Guid Id
{
get
{
throw new NotImplementedException();
}
}
public override string Name
{
get
{
throw new NotImplementedException();
}
}
public override PureProjection Projection
{
get
{
return LKS92Projection.Instance;
}
}
GMapProvider[] overlays;
public override GMapProvider[] Overlays
{
get
{
if(overlays == null)
{
overlays = new GMapProvider[] { this };
}
return overlays;
}
}
public override PureImage GetTileImage(GPoint pos, int zoom)
{
throw new NotImplementedException();
}
#endregion
}
/// <summary>
/// LatviaMap provider, http://www.ikarte.lv/
/// </summary>
public class LatviaMapProvider : LatviaMapProviderBase
{
public static readonly LatviaMapProvider Instance;
LatviaMapProvider()
{
}
static LatviaMapProvider()
{
Instance = new LatviaMapProvider();
}
#region GMapProvider Members
readonly Guid id = new Guid("2A21CBB1-D37C-458D-905E-05F19536EF1F");
public override Guid Id
{
get
{
return id;
}
}
readonly string name = "LatviaMap";
public override string Name
{
get
{
return name;
}
}
public override PureImage GetTileImage(GPoint pos, int zoom)
{
string url = MakeTileImageUrl(pos, zoom, LanguageStr);
return GetTileImageUsingHttp(url);
}
#endregion
string MakeTileImageUrl(GPoint pos, int zoom, string language)
{
// http://www.maps.lt/cache/ikartelv/map/_alllayers/L03/R00000037/C00000053.png
// http://www.maps.lt/arcgiscache/ikartelv/map/_alllayers/L02/R0000001c/C0000002a.png
return string.Format(UrlFormat, zoom, pos.Y, pos.X);
}
static readonly string UrlFormat = "http://www.maps.lt/arcgiscache/ikartelv/map/_alllayers/L{0:00}/R{1:x8}/C{2:x8}.png";
}
}
|