public void HasSameConfiguration_ForInitializedLayer_ReturnTrue() { // Setup var mocks = new MockRepository(); var tileFetcher = mocks.Stub <ITileFetcher>(); using (var layerStatus = new WellKnownBackgroundLayerStatus()) { IConfiguration configuration = CreateStubConfiguration(mocks, tileFetcher); mocks.ReplayAll(); using (var layer = new BruTileLayer(configuration)) { var source = new Random(789).NextEnum <WellKnownTileSource>(); var mapData1 = new WellKnownTileSourceMapData(source); var mapData2 = new WellKnownTileSourceMapData(source); layerStatus.LayerInitializationSuccessful(layer, mapData1); // Call bool isSame = layerStatus.HasSameConfiguration(mapData2); // Assert Assert.IsTrue(isSame, "Should recognize same configuration even if instance is not the same."); } } mocks.VerifyAll(); }
public override void OnClick() { try { var mxdoc = (IMxDocument)_application.Document; _map = mxdoc.FocusMap; var addWmsCForm = new AddWmsCForm(); var result = addWmsCForm.ShowDialog(new ArcMapWindow(_application)); if (result == DialogResult.OK) { var tileSource = addWmsCForm.SelectedTileSource; IConfig configWmsC = new ConfigWmsC(tileSource); var brutileLayer = new BruTileLayer(_application, configWmsC) { Name = configWmsC.CreateTileSource().Schema.Name, Visible = true }; _map.AddLayer(brutileLayer); } } catch (Exception ex) { MessageBox.Show(ex.ToString()); } }
public frmMain() { InitializeComponent(); uxMap.Projection = KnownCoordinateSystems.Projected.World.WebMercator; uxMap.BackColor = Color.FromArgb(181, 208, 208); backgroundLayer = BruTileLayer.CreateOsmLayer(); uxMap.Layers.Add(backgroundLayer); pseudoAisPort.LogFilePath = Application.StartupPath + "\\AIS.log"; pseudoAisPort.DataReceived += new EventHandler <SerialDataReceivedEventArgs>(pseudoAisPortDataReceived); refreshTimer.Enabled = false; refreshTimer.Interval = 1500; refreshTimer.Tick += new EventHandler(refreshTimerTick); helper = new AISHelper(uxMap.Projection); vesselsLayer = helper.VesselsLayer; uxMap.MapFrame.Add(vesselsLayer); uxMap.ViewExtents = new Extent(1642982.27031471, 4063251.12000095, 3802748.48786722, 5126261.05520257); if (DotSpatial.Plugins.AISViewer.Properties.Settings.Default.UsePseudoPort) { pseudoAisPort.Open(); } else { aisPort.Open(); } refreshTimer.Enabled = true; }
private void AddGisCloudLayers(IEnumerable <GISCloudLayer> gisCloudLayers) { var layerType = EnumBruTileLayer.Giscloud; var mxdoc = (IMxDocument)_application.Document; var map = mxdoc.FocusMap; foreach (var gisCloudLayer in gisCloudLayers) { var config = new ConfigGisCloud(gisCloudLayer.TileUrl, gisCloudLayer.LayerId, gisCloudLayer.Format); var brutileLayer = new BruTileLayer(_application, config, layerType) { Name = gisCloudLayer.Name, Visible = gisCloudLayer.LayerIsVisible }; brutileLayer.Visible = gisCloudLayer.LayerIsVisible; var envelope = new EnvelopeClass { XMin = gisCloudLayer.Xmin, XMax = gisCloudLayer.Xmax, YMin = gisCloudLayer.Ymin, YMax = gisCloudLayer.Ymax, SpatialReference = brutileLayer.SpatialReference }; brutileLayer.Extent = envelope; ((IMapLayers)map).InsertLayer(brutileLayer, true, 0); } }
public void LayerInitializationSuccessful_InitializationPreviouslyFailed_PreviousBackgroundLayerCreationFailedFalse() { // Setup var mocks = new MockRepository(); var tileFetcher = mocks.Stub <ITileFetcher>(); IConfiguration configuration = CreateStubConfiguration(mocks, tileFetcher); mocks.ReplayAll(); using (var layer = new BruTileLayer(configuration)) using (var layerStatus = new WmtsBackgroundLayerStatus()) { layerStatus.LayerInitializationFailed(); // Precondition Assert.IsTrue(layerStatus.PreviousBackgroundLayerCreationFailed); WmtsMapData mapData = WmtsMapDataTestHelper.CreateDefaultPdokMapData(); // Call layerStatus.LayerInitializationSuccessful(layer, mapData); // Assert Assert.IsFalse(layerStatus.PreviousBackgroundLayerCreationFailed); } }
public void HasSameConfiguration_LayerInitializedSameMapDataType_ReturnFalse(ImageBasedMapData mapData1, ImageBasedMapData mapData2) { // Setup var mocks = new MockRepository(); var tileFetcher = mocks.Stub <ITileFetcher>(); IConfiguration configuration = CreateStubConfiguration(mocks, tileFetcher); mocks.ReplayAll(); using (var layerStatus = new MapControlBackgroundLayerStatus()) { using (var layer = new BruTileLayer(configuration)) { layerStatus.LayerInitializationSuccessful(layer, mapData1); // Call bool isSame = layerStatus.HasSameConfiguration(mapData2); // Assert Assert.IsTrue(isSame, "Should recognize same configuration even if instance is not the same."); } } mocks.VerifyAll(); }
public void HasSameConfiguration_ForDifferentInitializedLayer_ReturnFalse(WmtsMapData otherData) { // Setup var mocks = new MockRepository(); var tileFetcher = mocks.Stub <ITileFetcher>(); using (var layerStatus = new WmtsBackgroundLayerStatus()) { IConfiguration configuration = CreateStubConfiguration(mocks, tileFetcher); mocks.ReplayAll(); using (var layer = new BruTileLayer(configuration)) { WmtsMapData mapData = WmtsMapDataTestHelper.CreateDefaultPdokMapData(); layerStatus.LayerInitializationSuccessful(layer, mapData); // Call bool isSame = layerStatus.HasSameConfiguration(otherData); // Assert Assert.IsFalse(isSame); } } mocks.VerifyAll(); }
public void HasSameConfiguration_ForInitializedLayer_ReturnTrue() { // Setup var mocks = new MockRepository(); var tileFetcher = mocks.Stub <ITileFetcher>(); using (var layerStatus = new WmtsBackgroundLayerStatus()) { IConfiguration configuration = CreateStubConfiguration(mocks, tileFetcher); mocks.ReplayAll(); using (var layer = new BruTileLayer(configuration)) { WmtsMapData mapData1 = WmtsMapDataTestHelper.CreateDefaultPdokMapData(); WmtsMapData mapData2 = WmtsMapDataTestHelper.CreateDefaultPdokMapData(); layerStatus.LayerInitializationSuccessful(layer, mapData1); // Call bool isSame = layerStatus.HasSameConfiguration(mapData2); // Assert Assert.IsTrue(isSame, "Should recognize same configuration even if instance is not the same."); } } mocks.VerifyAll(); }
protected override void OnLoad(EventArgs e) { base.OnLoad(e); var l = BruTileLayer.CreateOsmMapnicLayer(); l.Reproject(map.Projection); map.Layers.Add(l); }
private void removeBINGSatelliteImageryToolStripMenuItem_Click(object sender, EventArgs e) { if (frmMain.lyrBingSatellite != null && theMap.Layers.Contains(frmMain.lyrBingSatellite)) { theMap.Layers.Remove(frmMain.lyrBingSatellite); } frmMain.lyrBingSatellite.Dispose(); frmMain.lyrBingSatellite = null; }
protected override void OnLayerInitializationSuccessful(BruTileLayer backgroundLayer, ImageBasedMapData dataSource) { if (backgroundLayerStatus == null || !backgroundLayerStatus.HasSameConfiguration(dataSource)) { backgroundLayerStatus = BackgroundLayerStatusFactory.CreateBackgroundLayerStatus(dataSource); } backgroundLayerStatus.LayerInitializationSuccessful(backgroundLayer, dataSource); }
public static BruTileLayer GetWmtsLayer(IApplication _application, ITileSource tileSource, string LayerName) { var brutileLayer = new BruTileLayer(_application, tileSource) { Name = LayerName, Visible = true }; return(brutileLayer); }
private void HandleAddBrutileLayer(object sender, AddBruTileLayerEventArgs e) { if (Map == null) return; //DotSpatial.Projections.KnownCoordinateSystems.Projected.w var l = new BruTileLayer(e.BruTileLayerConfiguration); l.Reproject(Map.Projection); Map.Layers.Insert(0, l); }
private void HandleAddBrutileLayer(object sender, AddBruTileLayerEventArgs e) { if (Map == null) { return; } //DotSpatial.Projections.KnownCoordinateSystems.Projected.w var l = new BruTileLayer(e.BruTileLayerConfiguration); l.Reproject(Map.Projection); Map.Layers.Insert(0, l); }
/// <summary> /// Marks that a (new) background layer has successfully been initialized. /// </summary> /// <param name="backgroundLayer">The constructed layer.</param> /// <param name="dataSource">The data used to construct <paramref name="backgroundLayer"/>.</param> /// <exception cref="ArgumentNullException">Thrown when any of the input parameters is <c>null</c>.</exception> public void LayerInitializationSuccessful(BruTileLayer backgroundLayer, ImageBasedMapData dataSource) { if (backgroundLayer == null) { throw new ArgumentNullException(nameof(backgroundLayer)); } if (dataSource == null) { throw new ArgumentNullException(nameof(dataSource)); } OnLayerInitializationSuccessful(backgroundLayer, dataSource); }
protected override void OnLayerInitializationSuccessful(BruTileLayer backgroundLayer, ImageBasedMapData dataSource) { var wellKnownTileSourceMapData = dataSource as WellKnownTileSourceMapData; if (wellKnownTileSourceMapData == null) { PreviousBackgroundLayerCreationFailed = true; return; } wellKnownTileSource = wellKnownTileSourceMapData.TileSource; BackgroundLayer = backgroundLayer; PreviousBackgroundLayerCreationFailed = false; }
public static BruTileLayer GetWmtsLayer(IApplication _application, string format, string capabilitiesUrl, string LayerName, string LayerId) { var httpClient = new HttpClient(); var stream = httpClient.GetStreamAsync(capabilitiesUrl).Result; var tileSources = WmtsParser.Parse(stream); var tileSource = (from a in tileSources where ((WmtsTileSchema)a.Schema).Layer == LayerId select a).FirstOrDefault(); tileSource.Schema.Format = format; var brutileLayer = new BruTileLayer(_application, tileSource) { Name = LayerName, Visible = true }; return(brutileLayer); }
protected override void OnLayerInitializationSuccessful(BruTileLayer backgroundLayer, ImageBasedMapData dataSource) { var wmtsDataSource = dataSource as WmtsMapData; if (wmtsDataSource == null) { PreviousBackgroundLayerCreationFailed = true; return; } sourceCapabilitiesUrl = wmtsDataSource.SourceCapabilitiesUrl; selectedCapabilityId = wmtsDataSource.SelectedCapabilityIdentifier; preferredFormat = wmtsDataSource.PreferredFormat; BackgroundLayer = backgroundLayer; PreviousBackgroundLayerCreationFailed = false; }
public override void OnClick() { var url = "http://{s}.map.naver.net/get/29/0/0/{z}/{x}/{y}/bl_st_bg/ol_st_rd/ol_st_an"; var naverconfig = new NaverConfig("Naver Hybrid", url); var layerType = EnumBruTileLayer.InvertedTMS; var mxdoc = (IMxDocument)_application.Document; var map = mxdoc.FocusMap; var brutileLayer = new BruTileLayer(_application, naverconfig, layerType) { Name = "Naver Hybrid", Visible = true }; ((IMapLayers)map).InsertLayer(brutileLayer, true, 0); }
public override void OnClick() { var url = "https://sat{s}.maps.yandex.net/tiles?l=sat&v=4.84.0&x={x}&y={y}&z={z}"; var yandexConfig = new YandexConfig("map", url); var layerType = EnumBruTileLayer.InvertedTMS; var mxdoc = (IMxDocument)_application.Document; var map = mxdoc.FocusMap; var brutileLayer = new BruTileLayer(_application, yandexConfig, layerType) { Name = "Yandex - Satellite", Visible = true }; ((IMapLayers)map).InsertLayer(brutileLayer, true, 0); }
public override void OnClick() { var url = "http://webst03.is.autonavi.com/appmaptile?x={x}&y={y}&z={z}&style=6"; var nokiaConfig = new NokiaConfig("AutoNavi Satellite", url); var layerType = EnumBruTileLayer.InvertedTMS; var mxdoc = (IMxDocument)_application.Document; var map = mxdoc.FocusMap; var brutileLayer = new BruTileLayer(_application, nokiaConfig, layerType) { Name = "AutoNavi Satellite", Visible = true }; ((IMapLayers)map).InsertLayer(brutileLayer, true, 0); }
public override void OnClick() { var url = "https://{s}.base.maps.cit.api.here.com/maptile/2.1/maptile/newest/normal.day/{z}/{x}/{y}/256/png8?app_id=xWVIueSv6JL0aJ5xqTxb&app_code=djPZyynKsbTjIUDOBcHZ2g"; var nokiaConfig = new NokiaConfig("Streets", url); var layerType = EnumBruTileLayer.InvertedTMS; var mxdoc = (IMxDocument)_application.Document; var map = mxdoc.FocusMap; var brutileLayer = new BruTileLayer(_application, nokiaConfig, layerType) { Name = "Nokia HERE - Streets", Visible = true }; ((IMapLayers)map).InsertLayer(brutileLayer, true, 0); }
public void Create_ValidData_ReturnBruTileLayer(ImageBasedMapData mapData) { // Setup using (new UseCustomSettingsHelper(new TestSettingsHelper { ApplicationLocalUserSettingsDirectory = Path.Combine(TestHelper.GetScratchPadPath(), nameof(ImageBasedMapDataLayerFactoryTest)) })) using (new DirectoryDisposeHelper(TestHelper.GetScratchPadPath(), nameof(ImageBasedMapDataLayerFactoryTest))) using (new UseCustomTileSourceFactoryConfig(mapData)) { // Call BruTileLayer layer = ImageBasedMapDataLayerFactory.Create(mapData); // Assert Assert.AreEqual(mapData.Transparency.Value, layer.Transparency); Assert.AreEqual(mapData.IsVisible, layer.IsVisible); } }
public override void OnClick() { var url = "http://s{s}.maps.daum-img.net/L{z}/{y}/{x}.jpg"; var daumConfig = new DaumConfig("Satellite", url); var layerType = EnumBruTileLayer.InvertedTMS; var mxdoc = (IMxDocument)_application.Document; var map = mxdoc.FocusMap; var brutileLayer = new BruTileLayer(_application, daumConfig, layerType) { Name = "Satellite", Visible = true }; ((IMapLayers)map).InsertLayer(brutileLayer, true, 0); }
public override void OnClick() { try { var mxdoc = (IMxDocument)_application.Document; var map = mxdoc.FocusMap; var brutileLayer = new BruTileLayer(_application, _enumBruTileLayer) { Name = m_name, Visible = true }; map.AddLayer(brutileLayer); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } }
public override void OnClick() { var addTileServiceForm = new AddTileServiceForm(); var dr = addTileServiceForm.ShowDialog(new ArcMapWindow(_application)); if (dr == DialogResult.OK) { // todo add subdomains, auth // sample url: "https://tiles.shipmap.org/tiles/5/28/17.png"; //var url = "http://tiles.shipmap.org/tiles/{z}/{x}/{y}.png"; // var url = "https://2.aerial.maps.api.here.com/maptile/2.1/maptile/newest/hybrid.day.transit/{z}/{x}/{y}/512/png8?app_id=xWVIueSv6JL0aJ5xqTxb&app_code=djPZyynKsbTjIUDOBcHZ2g"; // var url = "https://[abc].tile.thunderforest.com/cycle/{z}/{x}/{y}.png"; // var url = "http://globalheat.strava.com/tiles/cycling/color3/{z}/{x}/{y}.png" // var url = "http://[abc].tile.openstreetmap.org/{z}/{x}/{y}.png" // var name = "shipmap"; var url = addTileServiceForm.Url; var name = addTileServiceForm.Name; var layerType = EnumBruTileLayer.InvertedTMS; var mxdoc = (IMxDocument)_application.Document; var map = mxdoc.FocusMap; var tileLayerConfig = new TileLayerConfig(name, url); if (url.Contains("[") && url.Contains("]")) { var start = url.IndexOf('[') + 1; var end = url.IndexOf(']') - start; var substring = url.Substring(start, end); var serverList = substring.Select(c => c.ToString()).ToList(); url = url.Replace("[" + substring + "]", "{s}"); tileLayerConfig = new TileLayerConfig(name, url); tileLayerConfig.Domains = serverList; } var brutileLayer = new BruTileLayer(_application, tileLayerConfig, layerType) { Name = name, Visible = true }; ((IMapLayers)map).InsertLayer(brutileLayer, true, 0); } }
public override void OnClick() { try { var mxdoc = (IMxDocument)_application.Document; var map = mxdoc.FocusMap; var addServicesForm = new AddServicesForm(); var result = addServicesForm.ShowDialog(new ArcMapWindow(_application)); if (result == DialogResult.OK) { var selectedService = addServicesForm.SelectedService; // Fix the service labs.metacarta.com bug: it doubles the version :-( selectedService.Href = selectedService.Href.Replace(@"1.0.0/1.0.0", @"1.0.0").Trim(); var layerType = EnumBruTileLayer.TMS; // If the type is inverted TMS we have to do something special if (selectedService.Type != null) { if (selectedService.Type == "InvertedTMS") { layerType = EnumBruTileLayer.InvertedTMS; } } var brutileLayer = new BruTileLayer(_application, layerType, selectedService.Href, selectedService.OverwriteUrls) { Name = selectedService.Title, Visible = true }; map.AddLayer(brutileLayer); } } catch (Exception ex) { MessageBox.Show(ex.ToString()); } }
public override void OnClick() { var key = _auth != null?AuthKeyRetriever.GetAuthKey(_auth) : null; try { var mxdoc = (IMxDocument)_application.Document; var map = mxdoc.FocusMap; var brutileLayer = new BruTileLayer(_application, _enumBruTileLayer, _url, true, key) { Name = m_name, Visible = true }; ((IMapLayers)map).InsertLayer(brutileLayer, true, 0); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } }
public void LayerInitializationSuccessful_MapDataNull_ThrowArgumentNullException() { // Setup var mocks = new MockRepository(); var tileFetcher = mocks.Stub <ITileFetcher>(); IConfiguration configuration = CreateStubConfiguration(mocks, tileFetcher); mocks.ReplayAll(); using (var layer = new BruTileLayer(configuration)) using (var layerStatus = new SimpleBackgroundLayerStatus()) { // Call TestDelegate call = () => layerStatus.LayerInitializationSuccessful(layer, null); // Assert string paramName = Assert.Throws <ArgumentNullException>(call).ParamName; Assert.AreEqual("dataSource", paramName); } }
public override void OnClick() { //var bruTileAboutBox = new BruTileAboutBox(); //bruTileAboutBox.ShowDialog(new ArcMapWindow(_application)); var mxdoc = (IMxDocument)_application.Document; var map = mxdoc.FocusMap; var httpClient = new HttpClient(); var stream = httpClient.GetStreamAsync("https://bertt.github.io/wmts/capabilities/michelin.xml").Result; var michelinTileSource = WmtsParser.Parse(stream).First(); // todo: make dynamic michelinTileSource.Schema.Format = "png"; var brutileLayer = new BruTileLayer(_application, michelinTileSource) { Name = "Michelin", Visible = true }; ((IMapLayers)map).InsertLayer(brutileLayer, true, 0); }
public void LayerInitializationSuccessful_MapDataNotWellKnownMapData_SetCreationFailedTrue() { // Setup var mocks = new MockRepository(); var tileFetcher = mocks.Stub <ITileFetcher>(); IConfiguration configuration = CreateStubConfiguration(mocks, tileFetcher); mocks.ReplayAll(); using (var layer = new BruTileLayer(configuration)) using (var layerStatus = new WellKnownBackgroundLayerStatus()) { var mapData = new TestImageBasedMapData("test", true); // Call layerStatus.LayerInitializationSuccessful(layer, mapData); // Assert Assert.IsTrue(layerStatus.PreviousBackgroundLayerCreationFailed); } }