protected override void BuildIndexCore(FeatureLayer featureLayer) { lock (layersInBuildingIndex) { if (!layersInBuildingIndex.Contains(featureLayer)) { layersInBuildingIndex.Add(featureLayer); } } var uri = LayerPlugin.GetUri(featureLayer); if (uri != null) { KmlFeatureLayer.BuildIndexFile(uri.LocalPath, BuildIndexMode.DoNotRebuild); lock (layersInBuildingIndex) { if (layersInBuildingIndex.Contains(featureLayer)) { layersInBuildingIndex.Remove(featureLayer); } } } }
private void TestForm_Load(object sender, EventArgs e) { winformsMap1.MapUnit = GeographyUnit.Meter; winformsMap1.ZoomLevelSet = new ThinkGeoCloudMapsZoomLevelSet(); winformsMap1.CurrentExtent = new RectangleShape(-10777598, 3912998, -10776008, 3912026); winformsMap1.BackgroundOverlay.BackgroundBrush = new GeoSolidBrush(GeoColor.FromArgb(255, 198, 255, 255)); // Please input your ThinkGeo Cloud Client ID / Client Secret to enable the background map. ThinkGeoCloudRasterMapsOverlay thinkGeoCloudMapsOverlay = new ThinkGeoCloudRasterMapsOverlay("ThinkGeo Cloud Client ID", "ThinkGeo Cloud Client Secret"); winformsMap1.Overlays.Add(thinkGeoCloudMapsOverlay); KmlFeatureLayer kmlFeatureLayer = new KmlFeatureLayer("../../App_Data/ThinkGeoHeadquarters.kml"); kmlFeatureLayer.StylingType = KmlStylingType.StandardStyling; // Set area style,line style,point style and text style. TextStyle textStyle = new TextStyle("name", (new GeoFont("Arial", 12)), new GeoSolidBrush(GeoColor.StandardColors.DarkOliveGreen)); textStyle.HaloPen = new GeoPen(GeoColor.StandardColors.FloralWhite, 5); textStyle.SplineType = SplineType.ForceSplining; kmlFeatureLayer.ZoomLevelSet.ZoomLevel01.DefaultAreaStyle.FillSolidBrush = new GeoSolidBrush(new GeoColor(50, GeoColor.SimpleColors.Orange)); kmlFeatureLayer.ZoomLevelSet.ZoomLevel01.DefaultAreaStyle.OutlinePen = new GeoPen(GeoColor.SimpleColors.Black); kmlFeatureLayer.ZoomLevelSet.ZoomLevel01.DefaultLineStyle = new LineStyle(new GeoPen(GeoColor.SimpleColors.Orange, 5)); kmlFeatureLayer.ZoomLevelSet.ZoomLevel01.DefaultPointStyle.SymbolPen = new GeoPen(GeoColor.FromArgb(255, GeoColor.StandardColors.Green), 8); kmlFeatureLayer.ZoomLevelSet.ZoomLevel01.DefaultTextStyle = textStyle; kmlFeatureLayer.ZoomLevelSet.ZoomLevel01.ApplyUntilZoomLevel = ApplyUntilZoomLevel.Level20; LayerOverlay overlay = new LayerOverlay(); overlay.Layers.Add("KmlLayer", kmlFeatureLayer); winformsMap1.Overlays.Add("Overlay", overlay); winformsMap1.Refresh(); }
protected override Collection <Layer> GetLayersCore(GetLayersParameters getLayersParameters) { Collection <Layer> resultLayers = base.GetLayersCore(getLayersParameters); foreach (var fileName in getLayersParameters.LayerUris.Select(u => u.LocalPath)) { KmlFeatureLayer layer = new KmlFeatureLayer(fileName); layer.Name = Path.GetFileNameWithoutExtension(fileName); resultLayers.Add(layer); } return(resultLayers); }