/// <summary> /// returns a Random VectorStyle with no symbols. /// /// </summary> /// <returns></returns> public static GeoJsonGeometryStyle RandomGeometryStyle() { GeoJsonGeometryStyle vs = new GeoJsonGeometryStyle(); vs.EnableOutline = random.Next(0, 2) == 1; vs.Fill = RandomBrush(); vs.Line = RandomPen(); vs.Outline = RandomPen(); vs.Symbol = RandomSymbol(); vs.Outline.Width += vs.Line.Width; vs.HighlightFill = RandomBrush(); vs.HighlightLine = RandomPen(); vs.HighlightOutline = RandomPen(); vs.HighlightSymbol = RandomSymbol(); vs.SelectFill = RandomBrush(); vs.SelectLine = RandomPen(); vs.SelectOutline = RandomPen(); vs.SelectSymbol = RandomSymbol(); return vs; }
private static void setupMsSqlSpatial(Map m) { string[] layernames = new[] {"Rivers", "Countries" /*, "Cities"*/ }; string sridstr = SridMap.DefaultInstance.Process(4326, ""); foreach (string lyrname in layernames) { string tbl = lyrname; AppStateMonitoringFeatureProvider provider = new AppStateMonitoringFeatureProvider( new MsSqlSpatialProvider( new GeometryServices()[sridstr], ConfigurationManager.ConnectionStrings["db"].ConnectionString, "st", "dbo", tbl, "oid", "Geometry") { DefaultProviderProperties = new ProviderPropertiesExpression( new ProviderPropertyExpression[] { new WithNoLockExpression(true) }) }); GeoJsonGeometryStyle style = new GeoJsonGeometryStyle(); switch (tbl) { case "Rivers": { StyleBrush brush = new SolidStyleBrush(StyleColor.Blue); StylePen pen = new StylePen(brush, 1); style.Enabled = true; style.EnableOutline = true; style.Line = pen; style.Fill = brush; break; } case "Countries": { StyleBrush brush = new SolidStyleBrush(new StyleColor(0, 0, 0, 255)); StylePen pen = new StylePen(brush, 2); style.Enabled = true; style.EnableOutline = true; style.Line = pen; style.Fill = new SolidStyleBrush(StyleColor.Green); break; } default: { style = RandomStyle.RandomGeometryStyle(); style.MaxVisible = 100000; break; } } /* include GeoJson styles */ style.IncludeAttributes = false; style.IncludeBBox = true; style.PreProcessGeometries = false; style.CoordinateNumberFormatString = "{0:F}"; GeometryLayer layer = new GeometryLayer(tbl, style, provider); layer.Features.IsSpatiallyIndexed = false; layer.AddProperty(AppStateMonitoringFeatureLayerProperties.AppStateMonitor, provider.Monitor); m.AddLayer(layer); } }