${iServerJava6R_ThemeGraph_Title}
${iServerJava6R_ThemeGraph_Description}
internal static string ToJson(ThemeGraph themeGraph) { string json = "{"; List<string> list = new List<string>(); list.Add(string.Format("\"barWidth\":{0}", themeGraph.BarWidth.ToString(System.Globalization.CultureInfo.InvariantCulture))); if (themeGraph.Flow != null) { list.Add(ThemeFlow.ToJson(themeGraph.Flow)); } else { list.Add(string.Format("\"leaderLineStyle\":{0}", ServerStyle.ToJson(new ServerStyle()))); list.Add("\"flowEnabled\":true"); list.Add("\"leaderLineDisplayed\":false"); } list.Add(string.Format("\"graduatedMode\":\"{0}\"", themeGraph.GraduatedMode)); if (themeGraph.GraphAxes != null) { list.Add(ThemeGraphAxes.ToJson(themeGraph.GraphAxes)); } else { list.Add(string.Format("\"axesColor\":{0}", ServerColor.ToJson(new ServerColor()))); list.Add("\"axesDisplayed\":false"); list.Add("\"axesGridDisplayed\":false"); list.Add(string.Format("\"axesTextStyle\":{0}", ServerTextStyle.ToJson(new ServerTextStyle()))); list.Add("\"axesTextDisplayed\":false"); } if (themeGraph.GraphSize != null) { list.Add(ThemeGraphSize.ToJson(themeGraph.GraphSize)); } else { list.Add(string.Format("\"maxGraphSize\":0.0")); list.Add(string.Format("\"minGraphSize\":0.0")); } list.Add(string.Format("\"graphSizeFixed\":{0}", themeGraph.GraphSizeFixed.ToString(System.Globalization.CultureInfo.InvariantCulture).ToLower())); if (themeGraph.GraphText != null) { list.Add(ThemeGraphText.ToJson(themeGraph.GraphText)); } else { list.Add(string.Format("\"graphTextStyle\":{0}", ServerTextStyle.ToJson(new ServerTextStyle()))); list.Add("\"graphTextDisplayed\":false"); list.Add("\"graphTextFormat\":\"CAPTION\""); } list.Add(string.Format("\"graphType\":\"{0}\"", themeGraph.GraphType)); if (themeGraph.Items != null && themeGraph.Items.Count > 0) { List<string> itemList = new List<string>(); foreach (var item in themeGraph.Items) { itemList.Add(ThemeGraphItem.ToJson(item)); } list.Add(string.Format("\"items\":[{0}]", string.Join(",", itemList.ToArray()))); } else { list.Add("\"items\":null"); } list.Add(string.Format("\"negativeDisplayed\":{0}", themeGraph.NegativeDisplayed.ToString(System.Globalization.CultureInfo.InvariantCulture).ToLower())); if (themeGraph.Offset != null) { list.Add(ThemeOffset.ToJson(themeGraph.Offset)); } else { list.Add("\"offsetX\":\"\""); list.Add("\"offsetY\":\"\""); list.Add("\"offsetFixed\":false"); } list.Add(string.Format("\"overlapAvoided\":{0}", themeGraph.OverlapAvoided.ToString(System.Globalization.CultureInfo.InvariantCulture).ToLower())); list.Add(string.Format("\"roseAngle\":{0}", themeGraph.RoseAngle.ToString(System.Globalization.CultureInfo.InvariantCulture))); list.Add(string.Format("\"startAngle\":{0}", themeGraph.StartAngle.ToString(System.Globalization.CultureInfo.InvariantCulture))); list.Add("\"memoryData\":null"); list.Add("\"type\":\"GRAPH\""); if (themeGraph.MemoryKeys != null && themeGraph.MemoryKeys.Count > 0) { list.Add(string.Format("\"memoryKeys\":[{0}]", string.Join(",", themeGraph.MemoryKeys))); } else { list.Add("\"memoryKeys\":[]"); } json += string.Join(",", list.ToArray()); json += "}"; return json; }
private void ThemeGraphButton_Click(object sender, RoutedEventArgs e) { ThemeGraph graphTheme = new ThemeGraph { BarWidth = 0.035, Offset = new ThemeOffset { OffsetFixed = false, OffsetX = "0.015", OffsetY = "0.015" }, Flow = new ThemeFlow { FlowEnabled = true, LeaderLineDisplayed = false, }, GraduatedMode = GraduatedMode.SQUAREROOT, GraphAxes = new ThemeGraphAxes { AxesDisplayed = false, AxesGridDisplayed = false, AxesTextDisplayed = false, }, GraphSize = new ThemeGraphSize { MaxGraphSize = 1, MinGraphSize = 0.35 }, GraphSizeFixed = false, GraphText = new ThemeGraphText { GraphTextDisplayed = true, GraphTextFormat = ThemeGraphTextFormat.VALUE, GraphTextStyle = new ServerTextStyle { FontName = "Times New Roman", Align = SuperMap.Web.iServerJava6R.TextAlignment.BASELINECENTER, FontHeight = 0.4, Outline = false, } }, GraphType = ThemeGraphType.BAR3D, NegativeDisplayed = false, OverlapAvoided = false, }; ThemeParameters themeGraphParams = new ThemeParameters { DatasetName = "World", DataSourceName = "World", Themes = new List<Theme> { graphTheme } }; ThemeService themeGraphService = new ThemeService(url); themeGraphService.ProcessAsync(themeGraphParams); themeGraphService.ProcessCompleted += new EventHandler<ThemeEventArgs>(themeGraphService_ProcessCompleted); themeGraphService.Failed += new EventHandler<ServiceFailedEventArgs>(themeGraphService_Failed); }
internal static ThemeGraph FromJson(JsonObject json) { if (json == null) return null; ThemeGraph themeGraph = new ThemeGraph(); themeGraph.BarWidth = (double)json["barWidth"]; themeGraph.Flow = ThemeFlow.FromJson(json); if (json["graduatedMode"] != null) { themeGraph.GraduatedMode = (GraduatedMode)Enum.Parse(typeof(GraduatedMode), json["graduatedMode"], true); } else { //不处理null的情况 } themeGraph.GraphAxes = ThemeGraphAxes.FromJson(json); themeGraph.GraphSize = ThemeGraphSize.FromJson(json); themeGraph.GraphSizeFixed = (bool)json["graphSizeFixed"]; themeGraph.GraphText = ThemeGraphText.FromJson(json); if (json["graphType"] != null) { themeGraph.GraphType = (ThemeGraphType)Enum.Parse(typeof(ThemeGraphType), json["graphType"], true); } else { //不处理null的情况 } if (json["items"] != null) { List<ThemeGraphItem> graphItems = new List<ThemeGraphItem>(); foreach (JsonObject item in (JsonArray)json["items"]) { graphItems.Add(ThemeGraphItem.FromJson(item)); } themeGraph.Items = graphItems; } if (json["memoryKeys"] != null) { List<int> memoryKeysLsit = new List<int>(); foreach (JsonObject item in (JsonArray)json["memoryKeys"]) { memoryKeysLsit.Add((int)item); } themeGraph.MemoryKeys = memoryKeysLsit; } themeGraph.NegativeDisplayed = (bool)json["negativeDisplayed"]; themeGraph.Offset = ThemeOffset.FromJson(json); themeGraph.OverlapAvoided = (bool)json["overlapAvoided"]; themeGraph.RoseAngle = (double)json["roseAngle"]; themeGraph.StartAngle = (double)json["startAngle"]; return themeGraph; }