${iServerJava6R_ThemeParameters_Title}

${iServerJava6R_ThemeParameters_Description}

        /// <summary>${iServerJava6R_ThemeService_method_ProcessAsync_param_Parameters}</summary>
        public void ProcessAsync(ThemeParameters themeParameters, object state)
        {
            ValidationUrlAndParametres(themeParameters);
            CombineAbsolutePath();

            base.SubmitRequest(base.Url, GetDictionaryParameters(themeParameters), new EventHandler<RequestEventArgs>(ThemeRequest_Complated), state, true, false, true);
        }
        //点击生成专题图触发事件
        private void commit_Click(object sender, RoutedEventArgs e)
        {
            ThemeDotDensity themeDotDensity = new ThemeDotDensity
            {
                //专题图中每一个点所代表的数值
                Value = 10000000,
                //1994年人口字段
                DotExpression = "Pop_1994",
                Style = new ServerStyle
                {
                    //设置点符号
                    MarkerSize = 2,
                    MarkerSymbolID = 1,
                    FillForeColor = System.Windows.Media.Color.FromArgb(255,0,180,150),

                }
            };
            //专题图参数设置
            ThemeParameters dotDensityParams = new ThemeParameters
            {
                //数据集名称
                DatasetName = "Countries",
                //数据源名称
                DataSourceName = "World",
                Themes = new List<Theme>
                {
                    themeDotDensity
                }
            };
            //与服务器交互
            ThemeService dotDensityService = new ThemeService(url);
            dotDensityService.ProcessAsync(dotDensityParams);
            dotDensityService.ProcessCompleted += new EventHandler<ThemeEventArgs>(dotDensityService_ProcessCompleted);
            dotDensityService.Failed += new EventHandler<ServiceFailedEventArgs>(dotDensityService_Failed);
        }
        //点击生成专题图触发事件
        private void commit_Click(object sender, RoutedEventArgs e)
        {
            ThemeLabel labelTheme = new ThemeLabel
            {
                BackSetting = new ThemeLabelBackSetting
                {
                    BackStyle = new ServerStyle
                    {
                        FillForeColor = new Color
                        {
                            R = 124,
                            G = 193,
                            B = 225
                        },
                        LineWidth = 0.1, 
                        MarkerSize = 1,                     
                    },                
                },

                Flow = new ThemeFlow
                {
                    FlowEnabled = true,
                    LeaderLineDisplayed = false,
                },
                LabelExpression = "Capital",
                LabelOverLengthMode = LabelOverLengthMode.NONE,
                Offset = new ThemeOffset
                {
                    OffsetX = "0.1",
                    OffsetY = "0.1",
                    OffsetFixed = false,
                },

                Text = new ThemeLabelText
                {
                    UniformStyle = new ServerTextStyle
                    {
                        Align = SuperMap.Web.iServerJava6R.TextAlignment.MIDDLECENTER,
                        FontHeight = 4,
                        FontWidth = 0,
                        FontWeight = 10,
                    }
                },
            };
            //专题图参数设置
            ThemeParameters themeLabelParam = new ThemeParameters
            {
                //数据集名称
                DatasetName = "Countries",
                //数据源名称
                DataSourceName = "World",
                Themes = new List<Theme> { labelTheme }
            };
            //与服务器交互
            ThemeService themeLableService = new ThemeService(url);
            themeLableService.ProcessAsync(themeLabelParam);
            themeLableService.Failed += new EventHandler<ServiceFailedEventArgs>(themeLableService_Failed);
            themeLableService.ProcessCompleted += new EventHandler<ThemeEventArgs>(themeLableService_ProcessCompleted);
        }
        internal static string ToJson(ThemeParameters param)
        {
            string json = "{";
            List<string> themeList = new List<string>();
            json += "\"layers\":[";
            if (param.Themes != null && param.Themes.Count > 0)
            {
                foreach (var item in param.Themes)
                {
                    themeList.Add(GetThemeLayer(item, param));
                }
            }

            json += string.Join(",", themeList.ToArray());
            json += "]}";
            return json;
        }
        //点击生成专题图触发事件
        private void commit_Click(object sender, RoutedEventArgs e)
        {
            ThemeGraduatedSymbol themeGraduatedSymbol = new ThemeGraduatedSymbol
            {
                BaseValue = 1128139680,
                GraduatedMode = GraduatedMode.SQUAREROOT,
                Flow = new ThemeFlow
                {
                    FlowEnabled = true,
                },
                Expression = "Pop_1994",
                Style = new ThemeGraduatedSymbolStyle
                {
                    PositiveStyle = new ServerStyle
                    {
                        LineColor = Colors.White,
                        MarkerSize = 20,
                        MarkerSymbolID = 5
                    }

                }
            };
            //专题图参数设置
            ThemeParameters themeGraduatedSymbolParams = new ThemeParameters
            {
                //数据集名称
                DatasetName = "Countries",
                //数据源名称
                DataSourceName = "World",
                Themes = new List<Theme> { themeGraduatedSymbol }
            };
            //与服务器交互
            ThemeService themeGraduatedSymbolService = new ThemeService(url);
            themeGraduatedSymbolService.ProcessAsync(themeGraduatedSymbolParams);
            themeGraduatedSymbolService.ProcessCompleted += new EventHandler<ThemeEventArgs>(themeGraduatedSymbolService_ProcessCompleted);
            themeGraduatedSymbolService.Failed += new EventHandler<ServiceFailedEventArgs>(themeGraduatedSymbolService_Failed);
        }
        void service_ProcessCompleted(object sender, GenerateSpatialDataArgs e)
        {
            ThemeUniqueItem item1 = new ThemeUniqueItem();
            ServerStyle style1 = new ServerStyle();
            style1.FillForeColor = Color.FromArgb(255, 242, 48, 48);
            style1.LineColor = Color.FromArgb(255, 242, 48, 48);
            item1.Unique = "拥堵";
            item1.Style = style1;

            ThemeUniqueItem item2 = new ThemeUniqueItem();
            ServerStyle style2 = new ServerStyle();
            style2.FillForeColor = Color.FromArgb(255, 255, 159, 25);
            style2.LineColor = Color.FromArgb(255, 255, 159, 25);
            item2.Unique = "缓行";
            item2.Style = style2;

            ThemeUniqueItem item3 = new ThemeUniqueItem();
            ServerStyle style3 = new ServerStyle();
            style3.FillForeColor = Color.FromArgb(255, 91, 195, 69);
            style3.LineColor = Color.FromArgb(255, 91, 195, 69);
            item3.Unique = "畅通";
            item3.Style = style3;

            ThemeUnique themeUnique = new ThemeUnique();
            themeUnique.UniqueExpression = "TrafficStatus";
            themeUnique.Items = new List<ThemeUniqueItem>() { item1,item2,item3};

            ThemeParameters param = new ThemeParameters();
            param.DatasetName = "generateSpatialData";
            param.DataSourceName = "Changchun";
            param.Themes=new List<Theme>(){themeUnique};

            ThemeService themeService = new ThemeService(_mapUrl);
            themeService.ProcessCompleted += new EventHandler<ThemeEventArgs>(themeService_ProcessCompleted);
            themeService.ProcessAsync(param);
        }
        private void ThemeUnique_Click(object sender, RoutedEventArgs e)
        {
            List<ThemeUniqueItem> items = new List<ThemeUniqueItem>
            {
            new ThemeUniqueItem
                 {
                     Caption="A",
                     Unique="151827600",
                     Style=new ServerStyle
                     {
                         FillForeColor=Colors.Red,
                         MarkerSize=20,
                          MarkerSymbolID=10
                     },
                     Visible=true,
                 },
                 new ThemeUniqueItem
                 {
                     Caption="B",
                     Unique="1128139689",
                     Style=new ServerStyle
                     {
                         FillForeColor=Colors.Blue,
                          MarkerSize=20,
                           MarkerSymbolID=30
                     },
                     Visible=true,
                 }
            };

            ThemeUnique themeUnique = new ThemeUnique
            {
                Items = items,
                UniqueExpression = "Pop_1994",
                DefaultStyle = new ServerStyle
                {
                    FillOpaqueRate = 100,
                    FillForeColor = Colors.Orange,
                    FillBackOpaque = true,
                    FillBackColor = Colors.Transparent
                }
            };

            ThemeParameters themeUniqueParameters = new ThemeParameters
            {
                Themes = new List<Theme> { themeUnique },
                DatasetName = "Capitals",
                DataSourceName = "World",
            };

            themeUniqueParameters.JoinItems.Add(new JoinItem
            {
                ForeignTableName = "Countries",
                JoinFilter = "Capitals.Capital=Countries.Capital",
                JoinType = JoinType.LEFTJOIN
            });

            ThemeService themeUniqueService = new ThemeService(url);
            themeUniqueService.ProcessAsync(themeUniqueParameters);
            themeUniqueService.ProcessCompleted += new EventHandler<ThemeEventArgs>(themeUniqueService_ProcessCompleted);
            themeUniqueService.Failed += new EventHandler<ServiceFailedEventArgs>(themeUniqueService_Failed);
        }
        private void ThemeRangeButton_Click(object sender, RoutedEventArgs e)
        {
            List<ThemeRangeItem> themeRangeItems = new List<ThemeRangeItem>
            {
                new ThemeRangeItem
                {
                     Visible=true,
                     Start=0,
                     End=3058,
                     Caption="A",
                     Style=new ServerStyle
                     {
                          FillForeColor=Colors.Brown
                     }
                },
                new ThemeRangeItem
                {
                     Visible=true,
                     Start=3058,
                     End=6116,
                     Caption="B",
                     Style=new ServerStyle
                     {
                          FillForeColor=Colors.Green
                     }
                },
                new ThemeRangeItem
                {
                    Visible=true,
                    Start=6116,
                    End=9175,
                    Caption="C",
                    Style=new ServerStyle
                    {
                        FillForeColor=Colors.Blue
                    }
                }
            };

            ThemeRange themeRange = new ThemeRange
            {
                RangeExpression = "SmPerimeter",
                RangeMode = RangeMode.EQUALINTERVAL,
                RangeParameter = 3,
                Items = themeRangeItems
            };

            ThemeParameters themeRangeParams = new ThemeParameters
            {
                DatasetName = "Capitals",
                DataSourceName = "World",
                Themes = new List<Theme> { themeRange }
            };

            themeRangeParams.JoinItems.Add(new JoinItem
            {
                ForeignTableName = "Countries",
                JoinFilter = "Capitals.Capital=Countries.Capital",
                JoinType = JoinType.LEFTJOIN
            });

            ThemeService themeRangeServie = new ThemeService(url);
            themeRangeServie.ProcessAsync(themeRangeParams);
            themeRangeServie.Failed += new EventHandler<ServiceFailedEventArgs>(themeRangeServie_Failed);
            themeRangeServie.ProcessCompleted += new EventHandler<ThemeEventArgs>(themeRangeServie_ProcessCompleted);
        }
        private void ThemeLabelSymbolButton_Click(object sender, RoutedEventArgs e)
        {
            ThemeLabel labelTheme = new ThemeLabel
            {
                AlongLine = new ThemeLabelAlongLine
                {
                    RepeatIntervalFixed = false,
                    AlongLineDirection = AlongLineDirection.ALONG_LINE_NORMAL,
                    AngleFixed = false,
                    LabelRepeatInterval = 0,
                    IsAlongLine = false,
                    RepeatedLabelAvoided = false
                },

                BackSetting = new ThemeLabelBackSetting
                {
                    BackStyle = new ServerStyle
                    {
                        FillForeColor = Colors.Red
                    },
                    LabelBackShape = LabelBackShape.NONE,
                },

                Flow = new ThemeFlow
                {
                    FlowEnabled = true,
                    LeaderLineDisplayed = false,
                    LeaderLineStyle = new ServerStyle
                    {
                        FillForeColor = Colors.Green
                    },
                },

                Items = new List<ThemeLabelItem> { },
                LabelExpression = "Cap_Pop",
                //LabelExpression = "Capital",

                LabelOverLengthMode = LabelOverLengthMode.NONE,
                MaxLabelLength = 0,
                NumericPrecision = 0,

                Offset = new ThemeOffset
                {
                    OffsetFixed = false,
                    OffsetX = "20",
                    OffsetY = "0"
                },

                OverlapAvoided = false,
                RangeExpression = "",
                SmallGeometryLabeled = false,

                Text = new ThemeLabelText
                {
                    MaxTextHeight = 0,
                    MaxTextWidth = 0,
                    MinTextHeight = 0,
                    MinTextWidth = 0,
                    UniformMixedStyle = new LabelMixedTextStyle(),
                    UniformStyle = new ServerTextStyle
                    {
                        Align = SuperMap.Web.iServerJava6R.TextAlignment.MIDDLELEFT,
                        FontName = "黑体",
                        FontHeight = 0,
                    }
                }
            };

            ThemeParameters themeLabelParams = new ThemeParameters
            {
                DatasetName = "Countries",
                DataSourceName = "World",
                Themes = new List<Theme> { labelTheme }
            };

            themeLabelParams.JoinItems.Add(new JoinItem
            {
                ForeignTableName = "Capitals",
                JoinFilter = "Countries.Country=Capitals.Country",
                JoinType = JoinType.LEFTJOIN
            });

            ThemeService themeLabelService = new ThemeService(url);
            themeLabelService.ProcessAsync(themeLabelParams);
            themeLabelService.ProcessCompleted += new EventHandler<ThemeEventArgs>(themeLabelService_ProcessCompleted);
            themeLabelService.Failed += new EventHandler<ServiceFailedEventArgs>(themeLabelService_Failed);
        }
        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);
        }
        private void ThemeGraduatedSymbolButton_Click(object sender, RoutedEventArgs e)
        {
            ThemeGraduatedSymbol themeGraduatedSymbol = new ThemeGraduatedSymbol
            {
                Style = new ThemeGraduatedSymbolStyle
                {
                    NegativeDisplayed = false,
                    ZeroDisplayed = false,
                    PositiveStyle = new ServerStyle
                    {
                        LineColor = Colors.Red,
                        MarkerSize = 50,
                        MarkerSymbolID = 15
                    },
                },
                BaseValue = 1128139680,
                GraduatedMode = GraduatedMode.SQUAREROOT,
                Flow = new ThemeFlow
                {
                    FlowEnabled = true,

                },
                Expression = "Pop_1994",
            };

            ThemeParameters themeGraduatedSymbolParams = new ThemeParameters
            {
                DatasetName = "World",
                DataSourceName = "World",
                Themes = new List<Theme> { themeGraduatedSymbol }
            };

            ThemeService themeGraduatedSymbolService = new ThemeService(url);
            themeGraduatedSymbolService.ProcessAsync(themeGraduatedSymbolParams);
            themeGraduatedSymbolService.ProcessCompleted += new EventHandler<ThemeEventArgs>(themeGraduatedSymbolService_ProcessCompleted);
            themeGraduatedSymbolService.Failed += new EventHandler<ServiceFailedEventArgs>(themeGraduatedSymbolService_Failed);
        }
        private void ThemeDotDensityButton_Click(object sender, RoutedEventArgs e)
        {
            ThemeDotDensity themeDonDensity = new ThemeDotDensity
            {
                Value = 1000000,
                DotExpression = "Cap_Pop",
                Style = new ServerStyle
                {
                    MarkerSize = 5,
                    FillBackColor = Colors.Red,
                    FillForeColor = Colors.Red,
                    MarkerSymbolID = 10
                }
            };
            /*
                       ThemeParameters dotDensityParams = new ThemeParameters
                       {
                           DatasetName = "Countries",
                           DataSourceName = "World",
                           Themes = new List<Theme> { themeDonDensity }
                       };*/

            ThemeParameters dotDensityParams = new ThemeParameters
            {
                DatasetName = "Countries",
                DataSourceName = "World",
                Themes = new List<Theme> { themeDonDensity }
            };

            dotDensityParams.JoinItems.Add(new JoinItem
            {
                ForeignTableName = "Capitals",
                JoinFilter = "Countries.Country=Capitals.Country",
                JoinType = JoinType.LEFTJOIN
            });

            ThemeService dotDensityService = new ThemeService(url);
            dotDensityService.ProcessAsync(dotDensityParams);
            dotDensityService.ProcessCompleted += new EventHandler<ThemeEventArgs>(dotDensityService_ProcessCompleted);
            dotDensityService.Failed += new EventHandler<ServiceFailedEventArgs>(dotDensityService_Failed);
        }
 /// <summary>${iServerJava6R_ThemeService_method_ProcessAsync_D}</summary>
 public void ProcessAsync(ThemeParameters themeParameters)
 {
     ProcessAsync(themeParameters, null);
 }
        //点击生成专题图触发事件
        private void commit_Click(object sender, RoutedEventArgs e)
        {
            //专题图子项数组
            List<ThemeUniqueItem> items = new List<ThemeUniqueItem>
            {
                //专题图子项
                new ThemeUniqueItem
                {
                    Unique = "城市",
                    Visible = true,
                    Style = new ServerStyle
                    {
                        FillForeColor = new Color {R=157,G=127,B=255},
                        LineWidth = 0.05
                    }
                },

                new ThemeUniqueItem
                {
                    Unique = "旱地",
                    Visible = true,
                    Style = new ServerStyle
                    {
                        FillForeColor = new Color {R=250,G=237,B=195},
                        LineWidth = 0.05
                    }
                },

                new ThemeUniqueItem
                {
                    Unique="水浇地",
                    Visible=true,
                    Style=new ServerStyle
                    {
                        FillForeColor = new Color {R=59,G=188,B=230},
                        LineWidth = 0.05
                    }
                },

                new ThemeUniqueItem
                {
                    Unique = "湖泊水库",
                    Visible = true,
                    Style = new ServerStyle
                    {
                        FillForeColor = new Color {R=1,G=128,B=171},
                        LineWidth = 0.05
                    }
                },

                new ThemeUniqueItem
                {
                    Unique = "水田",
                    Visible = true ,
                    Style = new ServerStyle
                    {
                       FillForeColor = new Color {R=167,G=219,B=232},
                       LineWidth = 0.05
                    }
                },

                new ThemeUniqueItem
                {
                    Unique = "草地",
                    Visible = true,
                    Style = new ServerStyle
                    {
                        FillForeColor = new Color {R=192,G=214,B=54},
                        LineWidth = 0.05
                    }
                },
            };
            //设置其他土地利用类型显示风格
            ThemeUnique themeUnique = new ThemeUnique
            {
                Items = items,
                UniqueExpression = "LandType",
                DefaultStyle = new ServerStyle
                {
                    FillOpaqueRate = 100,
                    FillForeColor = new Color
                    {
                        R = 80,
                        G = 130,
                        B = 255
                    },
                    FillBackOpaque = true,
                    LineWidth = 0.05,

                }
            };
            //专题图参数对象
            ThemeParameters themeUniqueParameters = new ThemeParameters
            {
                Themes = new List<Theme> { themeUnique },
                //数据集名称
                DatasetName = "Landuse_R",
                //数据源名称
                DataSourceName = "Jingjin"
            };

            //与服务器交互
            ThemeService themeUniqueService = new ThemeService(url);
            themeUniqueService.ProcessAsync(themeUniqueParameters);
            themeUniqueService.ProcessCompleted += new EventHandler<ThemeEventArgs>(themeUniqueService_ProcessCompleted);
            themeUniqueService.Failed += new EventHandler<ServiceFailedEventArgs>(themeUniqueService_Failed);
        }
        private static string GetThemeLayer(Theme theme, ThemeParameters param)
        {
            string themeLayerJson = "{";

            List<string> themeLayerList = new List<string>();
            List<string> joinItemsList = new List<string>();

            if (theme is ThemeUnique)
            {
                themeLayerList.Add(string.Format("\"theme\":{0}", ThemeUnique.ToJson((ThemeUnique)theme)));
            }
            else if (theme is ThemeRange)
            {
                themeLayerList.Add(string.Format("\"theme\":{0}", ThemeRange.ToJson((ThemeRange)theme)));
            }
            else if (theme is ThemeDotDensity)
            {
                themeLayerList.Add(string.Format("\"theme\":{0}", ThemeDotDensity.ToJson((ThemeDotDensity)theme)));
            }
            else if (theme is ThemeGraduatedSymbol)
            {
                themeLayerList.Add(string.Format("\"theme\":{0}", ThemeGraduatedSymbol.ToJson((ThemeGraduatedSymbol)theme)));
            }
            else if (theme is ThemeGraph)
            {
                themeLayerList.Add(string.Format("\"theme\":{0}", ThemeGraph.ToJson((ThemeGraph)theme)));
            }
            else if (theme is ThemeLabel)
            {
                themeLayerList.Add(string.Format("\"theme\":{0}", ThemeLabel.ToJson((ThemeLabel)theme)));
            }
            else if (theme is ThemeGridRange)
            {
               themeLayerList.Add(string.Format("\"theme\":{0}", ThemeGridRange.ToJson((ThemeGridRange)theme)));
            }
            else if (theme is ThemeGridUnique)
            {
               themeLayerList.Add(string.Format("\"theme\":{0}", ThemeGridUnique.ToJson((ThemeGridUnique)theme)));
            }
            else
            {
                themeLayerList.Add("\"theme\":null");
            }

            themeLayerList.Add("\"type\":\"UGC\"");
            themeLayerList.Add("\"ugcLayerType\":\"THEME\"");
            //themeLayerList.Add(string.Format("\"name\":\"{0}\"", param.Name));

            themeLayerList.Add(string.Format("\"datasetInfo\":{0}",
                GetDatasetInfo(param.DatasetName, param.DataSourceName)));
            if (param.MinVisibleGeometrySize != null)
            {
                themeLayerList.Add(string.Format("\"minVisibleGeometrySize\":{0}", param.MinVisibleGeometrySize));
            }

            foreach (var item in param.JoinItems)
            {
                joinItemsList.Add(JoinItem.ToJson(item));
            }

            string joinItemsStr = string.Join(",", joinItemsList);
            themeLayerList.Add(string.Format("\"joinItems\":[{0}]", joinItemsStr));
            themeLayerJson += string.Join(",", themeLayerList.ToArray());
            themeLayerJson += "}";
            return themeLayerJson;
        }
        private void commit_Click(object sender, RoutedEventArgs e)
        {
            //专题图子项数组
            List<ThemeUniqueItem> items = new List<ThemeUniqueItem>
            {
                //专题图子项
                 new ThemeUniqueItem
                 {
                     //SmID字段值
                     Unique="1",
                     Style=new ServerStyle
                     {
                         FillForeColor = new Color {R=1,G=128,B=171},
                         LineWidth = 0.1
                     },
                     Visible=true,
                 },
                 new ThemeUniqueItem
                 {
                     //SmID字段值
                     Unique="247",
                     Style=new ServerStyle
                     {
                         FillForeColor= new Color {R=192,G=214,B=54},
                         LineWidth = 0.1
                     },
                     Visible=true,
                 }
            };
            //设置其他 SmID 字段显示风格
            ThemeUnique themeUnique = new ThemeUnique
            {
                Items = items,
                UniqueExpression = "SmID",
                DefaultStyle = new ServerStyle
                {
                    FillOpaqueRate = 100,
                    FillForeColor = new Color { R = 250, G = 237, B = 195 },
                    LineWidth = 0.1,
                    FillBackOpaque = true,
                    FillBackColor = Colors.Transparent
                }
            };

            ThemeDotDensity themeDotDensity = new ThemeDotDensity
            {
                //专题图中每一个点所代表的数值
                Value = 10000000,
                //1994年人口字段
                DotExpression = "Pop_1994",
                Style = new ServerStyle
                {
                    //设置点符号
                    MarkerSize = 2,
                    MarkerSymbolID = 1,
                    FillForeColor = System.Windows.Media.Color.FromArgb(255, 0, 180, 150),
                }
            };
            //专题图参数设置
            ThemeParameters compostionThemeParameters = new ThemeParameters
            {
                DatasetName = "Countries",
                DataSourceName = "World",
                Themes = new List<Theme> { themeDotDensity, themeUnique }
            };
            //与服务器交互
            ThemeService compositeService = new ThemeService(url);
            compositeService.ProcessAsync(compostionThemeParameters);
            compositeService.Failed += new EventHandler<ServiceFailedEventArgs>(compositeService_Failed);
            compositeService.ProcessCompleted += new EventHandler<ThemeEventArgs>(compositeService_ProcessCompleted);
        }
        private System.Collections.Generic.Dictionary<string, string> GetDictionaryParameters(ThemeParameters themeParameters)
        {
            Dictionary<string, string> dictionary = new Dictionary<string, string>();

            dictionary.Add("type", "\"UGC\"");

            dictionary.Add("subLayers", ThemeParameters.ToJson(themeParameters));
            dictionary.Add("name", "\"" + serviceMapName + "\"");

            return dictionary;
        }
        private void compositionTheme_Click(object sender, RoutedEventArgs e)
        {
            List<ThemeUniqueItem> items = new List<ThemeUniqueItem>
            {
                 new ThemeUniqueItem
                 {
                     Caption="A",
                     Unique="1",
                     Style=new ServerStyle
                     {
                         FillForeColor=Colors.Red,
                     },
                     Visible=true,
                 },
                 new ThemeUniqueItem
                 {
                     Caption="B",
                     Unique="247",
                     Style=new ServerStyle
                     {
                         FillForeColor=Colors.Blue,
                     },
                     Visible=true,
                 }
            };

            ThemeUnique themeUnique = new ThemeUnique
            {
                Items = items,
                UniqueExpression = "SmID",
                DefaultStyle = new ServerStyle
                {
                    FillOpaqueRate = 100,
                    FillForeColor = Colors.Orange,
                    FillBackOpaque = true,
                    FillBackColor = Colors.Transparent
                }
            };

            ThemeDotDensity themeDonDensity = new ThemeDotDensity
            {
                Value = 10000000,
                DotExpression = "Pop_1994",
                Style = new ServerStyle
                {
                    MarkerSize = 5,
                }
            };

            ThemeParameters compostionThemeParameters = new ThemeParameters
            {
                DatasetName = "World",
                DataSourceName = "World",
                Themes = new List<Theme> { themeDonDensity, themeUnique }
            };

            ThemeService compositeService = new ThemeService(url);
            compositeService.ProcessAsync(compostionThemeParameters);
            compositeService.Failed += new EventHandler<ServiceFailedEventArgs>(compositeService_Failed);
            compositeService.ProcessCompleted += new EventHandler<ThemeEventArgs>(compositeService_ProcessCompleted);
        }
        //点击生成专题图触发事件
        private void commit_Click(object sender, RoutedEventArgs e)
        {
            //设置专题图子项
            List<ThemeRangeItem> themeRangeItems = new List<ThemeRangeItem>
            {
                new ThemeRangeItem
                {
                    Start = 0.0,
                    End = 59973,
                    Visible = true,
                    Style = new ServerStyle 
                    {
                        FillForeColor = new Color {R=216,G=244,B=254},
                        LineWidth = 0.1,
                    }
                },
                
                new ThemeRangeItem
                {
                    Start = 59973,
                    End = 1097234,
                    Visible = true ,
                    Style = new ServerStyle 
                    {
                         FillForeColor = new Color {R=131,G=232,B=252},
                         LineWidth = 0.1 ,
                    }
                },

                new ThemeRangeItem
                {
                    Start = 1097234,
                    End = 5245515,
                    Visible = true ,
                    Style = new ServerStyle 
                    {
                        FillForeColor = new Color {R=112,G=212,B=243},
                        LineWidth = 0.1,
                    }
                },
                 
                new ThemeRangeItem
                {
                    Start = 5245515,
                    End = 17250390,
                    Visible = true,
                    Style = new ServerStyle 
                    {
                        FillForeColor = new Color {R=23,G=198,B=238},
                        LineWidth = 0.1,
                    }
                },

                new ThemeRangeItem
                {
                    Start = 17250390,
                    End = 894608700,
                    Visible = true,
                    Style = new ServerStyle 
                    {
                        FillForeColor = new Color {R=0,G=187,B=236},
                        LineWidth = 0.1 ,
                    }
                },

                new ThemeRangeItem
                {
                    Start = 894608700,
                    End =  12E+8,
                    Visible = true ,
                    Style = new ServerStyle 
                    {
                        FillForeColor = new Color {R=0,G=133,B=236},
                        LineWidth = 0.1 ,
                    }
                }
            };
            //设置范围分段专题图字段、分段模式、分段参数和子项数组
            ThemeRange themeRange = new ThemeRange
            {
                RangeExpression = "Pop_1994",
                RangeMode = RangeMode.EQUALINTERVAL,
                RangeParameter = 6,
                Items = themeRangeItems
            };
            //设置专题图参数
            ThemeParameters themeRangeParams = new ThemeParameters
            {
                //数据集名称
                DatasetName = "Countries",
                //数据源名称
                DataSourceName = "World",
                Themes = new List<Theme> { themeRange }
            };
            //与服务器交互
            ThemeService themeRangeServie = new ThemeService(url);
            themeRangeServie.ProcessAsync(themeRangeParams);
            themeRangeServie.ProcessCompleted += new EventHandler<ThemeEventArgs>(themeRangeServie_ProcessCompleted);
            themeRangeServie.Failed += new EventHandler<ServiceFailedEventArgs>(themeRangeServie_Failed);
        }
        //分析成功,利用生成的插值数据制作范围分段专题图
        private void processCompleted(object sender, InterpolateAnalystArgs e)
        {
            List<ThemeGridRangeItem> themeRangeItems = new List<ThemeGridRangeItem>
                {
                     new ThemeGridRangeItem
                     {
                         Start =-5,
                         End =-3.4,
                         Color = new ServerColor(170,240,233)
                     },

                    new ThemeGridRangeItem
                    {
                        Start =-3.4,
                        End =-1.8,
                        Color =new ServerColor(176,243,196)
                    },

                     new ThemeGridRangeItem
                    {
                        Start =-1.8,
                        End =-0.2,
                        Color =new ServerColor(198,249,178)
                    },

                      new ThemeGridRangeItem
                    {
                        Start =-0.2,
                        End =1.4,
                        Color =new ServerColor(235,249,174)
                    },

                      new ThemeGridRangeItem
                    {
                        Start =1.4,
                        End =3,
                        Color =new ServerColor(188,224,123)
                    },

                    new ThemeGridRangeItem
                    {
                        Start =3,
                        End =4.6,
                        Color =new ServerColor(88,185,63)
                    },

                    new ThemeGridRangeItem
                    {
                        Start =4.6,
                        End =6.2,
                        Color =new ServerColor(25,147,52)
                    },

                   new ThemeGridRangeItem
                    {
                        Start =6.2,
                        End =7.8,
                        Color =new ServerColor(54,138,58)
                    },

                  new ThemeGridRangeItem
                    {
                        Start =7.8,
                        End =9.4,
                        Color =new ServerColor(131,158,47)
                    },

                    new ThemeGridRangeItem
                    {
                        Start =9.4,
                        End =11,
                        Color =new ServerColor(201,174,28)
                    },

                    new ThemeGridRangeItem
                    {
                        Start =11,
                        End =12.6,
                        Color =new ServerColor(232,154,7)
                    },

                    new ThemeGridRangeItem
                    {
                        Start =12.6,
                        End =14.2,
                        Color =new ServerColor(204,91,2)
                    },

                    new ThemeGridRangeItem
                    {
                        Start =14.2,
                        End =15.8,
                        Color =new ServerColor(174,54,1)
                    },

                     new ThemeGridRangeItem
                    {
                        Start =15.8,
                        End =17.4,
                        Color =new ServerColor(127,13,1)
                    },

                    new ThemeGridRangeItem
                    {
                        Start =17.4,
                        End =19,
                        Color =new ServerColor(115,23,6)
                    },

                    new ThemeGridRangeItem
                    {
                        Start =19,
                        End =20.6,
                        Color =new ServerColor(111,36,8)
                    },

                   new ThemeGridRangeItem
                    {
                        Start =20.6,
                        End =22.2,
                        Color =new ServerColor(107,47,14)
                    },

                    new ThemeGridRangeItem
                    {
                        Start =22.2,
                        End =23.8,
                        Color =new ServerColor(125,75,44)
                    },

                   new ThemeGridRangeItem
                    {
                        Start =23.8,
                        End =25.4,
                        Color =new ServerColor(146,110,88)
                    },

                     new ThemeGridRangeItem
                    {
                        Start =25.4,
                        End =27,
                        Color =new ServerColor(166,153,146)
                    },

            };

            //设置栅格分段专题图分段模式、反序显示参数和子项数组
            ThemeGridRange themeGridRange = new ThemeGridRange
            {
                RangeMode = RangeMode.EQUALINTERVAL,
                ReverseColor = false,
                Items = themeRangeItems,
            };

            //设置专题图参数
            ThemeParameters parameter = new ThemeParameters
            {
                DatasetName = e.Result.Dataset.Split('@')[0],
                DataSourceName = "Interpolation",
                Themes = new List<Theme> { themeGridRange },
            };
            //与服务器交互
            ThemeService themeService = new ThemeService(mapUrl);
            themeService.ProcessCompleted += new EventHandler<ThemeEventArgs>(themeServie_ProcessCompleted);
            themeService.Failed += new EventHandler<ServiceFailedEventArgs>(themeServie_Failed);
            themeService.ProcessAsync(parameter);
        }
        private void ValidationUrlAndParametres(ThemeParameters themeParameters)
        {
            if (themeParameters == null)
            {
                throw new ArgumentNullException("请求服务参数为空!");
            }

            if (string.IsNullOrEmpty(this.Url))
            {
                throw new InvalidOperationException(ExceptionStrings.InvalidUrl);
            }
        }