private void btnRetrieve_Click(object sender, EventArgs e) { // Complete sample urrel: // http://labs.metacarta.com/wms-c/tilecache.py?version=1.1.1&request=GetCapabilities&service=wms-c // Does not work yet: http://public-wms.kaartenbalie.nl/wms/nederland //string url = String.Format("{0}?version={1}&request=GetCapabilities&service=wms-c", tbWmsCUrl.Text, cbbVersion.SelectedItem); string url = tbWmsCUrl.Text; try { _tileSources = new List <ITileSource>(WmscTileSource.CreateFromWmscCapabilties(ToXDocument(new Uri(url)))); var names = new List <string>(); foreach (var tileSource in _tileSources) { names.Add(tileSource.Schema.Name); } lbServices.DataSource = names; tbWmsCUrl.Items.Add(url); tbWmsCUrl.SelectedIndex = tbWmsCUrl.Items.Count - 1; } catch (Exception ex) { MessageBox.Show(ex.Message.ToString()); } }
public static Map InitializeMap() { Map map = new Map(); //string url = "http://labs.metacarta.com/wms-c/tilecache.py?version=1.1.1&request=GetCapabilities&service=wms-c"; string url = "http://resource.sgu.se/service/wms/130/brunnar?SERVICE=WMS&VERSION=1.3&REQUEST=getcapabilities&TILED=true"; //string url = "http://dev:8080/geoserver/gwc/service/wms?SERVICE=WMS&VERSION=1.1.1&REQUEST=getcapabilities&TILED=true"; //string url = "http://dev:8080/geoserver/ows?service=wms&version=1.3.0&request=GetCapabilities&tiled=true"; //TiledWmsLayer tiledWmsLayer = new TiledWmsLayer("Metacarta", url); //tiledWmsLayer.TileSetsActive.Add(tiledWmsLayer.TileSets["avalon"].Name); //map.Layers.Add(tiledWmsLayer); //map.ZoomToBox(new BoundingBox(-180.0, -90.0, 180.0, 90.0)); //WmscRequest req; //ITileSource tileSource; TileAsyncLayer tileLayer; //BruTile.Web.TmsTileSource source2 = new TmsTileSource(url); var source = new List <ITileSource>(WmscTileSource.CreateFromWmscCapabilties(new System.Uri(url))); // foreach (ITileSource src in source) // { tileLayer = new TileAsyncLayer(source[16], "tileLayer" + source[16]); tileLayer.MapNewTileAvaliable += map.MapNewTileAvaliableHandler; map.BackgroundLayer.Add(tileLayer); // } map.ZoomToExtents(); return(map); }
public WmscLayerConfiguration(string fileCacheRoot, string name, WmscTileSource source) : base(BruTileLayerPlugin.Settings.PermaCacheType, fileCacheRoot) { _fileCacheRoot = fileCacheRoot; LegendText = name; var provider = ReflectionHelper.Reflect(source) as HttpTileProvider; if (provider == null) { throw new ArgumentException("Source does not have a WebTileProvider", "source"); } var request = ReflectionHelper.ReflectRequest <WmscRequest>(provider); if (request == null) { throw new ArgumentException("Source does not have a WmscRequest", "source"); } SafeRequest(request); SafeSchema(source.Schema); TileSource = source; TileCache = CreateTileCache(); _tileFetcher = new TileFetcher(provider, BruTileLayerPlugin.Settings.MemoryCacheMinimum, BruTileLayerPlugin.Settings.MemoryCacheMaximum, TileCache); _initialized = true; }
public void ParseCapabiltiesWmsC() { //todo: configure the test data in the proper way. string url = @"\Resources\CapabiltiesWmsC.xml"; string directory = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location); var tileSources = WmscTileSource.TileSourceBuilder(new Uri("file://" + directory + "\\" + url), null); int count = 54; Assert.AreEqual(tileSources.Count, count); foreach (var tileSource in tileSources) { Assert.NotNull(tileSource.Provider); Assert.NotNull(tileSource.Schema); Assert.NotNull(tileSource.Schema.Resolutions); Assert.NotNull(tileSource.Schema.Axis); Assert.NotNull(tileSource.Schema.Extent); Assert.NotNull(tileSource.Schema.Srs); } }
private void btnRetrieve_Click(object sender, EventArgs e) { // Complete sample urrel: // http://labs.metacarta.com/wms-c/tilecache.py?version=1.1.1&request=GetCapabilities&service=wms-c // Does not work yet: http://public-wms.kaartenbalie.nl/wms/nederland //string url = String.Format("{0}?version={1}&request=GetCapabilities&service=wms-c", tbWmsCUrl.Text, cbbVersion.SelectedItem); var url = tbWmsCUrl.Text; try { _tileSources = WmscTileSource.CreateFromWmscCapabilties(new Uri(url)).ToList(); var names = _tileSources.Select(t => t.Schema.Name).ToList(); lbServices.DataSource = names; } catch (Exception ex) { MessageBox.Show(ex.Message); } }
public void ParseCapabilitiesWmsC() { // arrange const int expectedNumberOfTileSources = 54; using (var stream = File.OpenRead(Path.Combine(Paths.AssemblyDirectory, "Resources", "Wmsc", "WmsCCapabilities_1_1_1.xml"))) { // act var tileSources = WmscTileSource.CreateFromWmscCapabilties(XDocument.Load(stream)); // assert Assert.AreEqual(tileSources.Count(), expectedNumberOfTileSources); foreach (var tileSource in tileSources) { Assert.NotNull(tileSource.Schema); Assert.NotNull(tileSource.Schema.Resolutions); Assert.NotNull(tileSource.Schema.YAxis); Assert.NotNull(tileSource.Schema.Extent); Assert.NotNull(tileSource.Schema.Srs); } } }
public WmscLayerConfiguration(string fileCacheRoot, string name, WmscTileSource source) : base(BruTileLayerPlugin.Settings.PermaCacheType, fileCacheRoot) { _fileCacheRoot = fileCacheRoot; LegendText = name; var provider = ReflectionHelper.Reflect(source) as HttpTileProvider; if (provider == null) throw new ArgumentException("Source does not have a WebTileProvider", "source"); var request = ReflectionHelper.ReflectRequest<WmscRequest>(provider); if (request == null) throw new ArgumentException("Source does not have a WmscRequest" ,"source"); SafeRequest(request); SafeSchema(source.Schema); TileSource = source; TileCache = CreateTileCache(); _tileFetcher = new TileFetcher(provider, BruTileLayerPlugin.Settings.MemoryCacheMinimum, BruTileLayerPlugin.Settings.MemoryCacheMaximum, TileCache); _initialized = true; }
public void TestParseUrl(string url, bool ignore) { if (ignore) { Assert.Pass(); } // arrange var myWmsc = new Uri(url); // act List <ITileSource> res = null; var action = new TestDelegate(() => res = new List <ITileSource>(WmscTileSource.CreateFromWmscCapabilties(myWmsc))); // assert Assert.DoesNotThrow(action); Assert.IsNotNull(res); Assert.That(res.Count, Is.GreaterThan(0)); }