ArcGIS Server for Silverlight 之集群(Simple Clusterer)
<UserControl x:Class="SimpleClusterer.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:esri="clr-namespace:ESRI.ArcGIS.Client;assembly=ESRI.ArcGIS.Client"
xmlns:esriSymbols="clr-namespace:ESRI.ArcGIS.Client.Symbols;assembly=ESRI.ArcGIS.Client"
xmlns:esriGeometry ="clr-namespace:ESRI.ArcGIS.Client.Geometry;assembly=ESRI.ArcGIS.Client"
mc:Ignorable="d" d:DesignWidth="640" d:DesignHeight="480">
<Grid x:Name="LayoutRoot">
<esri:Map x:Name="myMap" ExtentChanged="myMap_ExtentChanged">
<esri:ArcGISTiledMapServiceLayer x:Name="myTiledMapServiceLayer"
Url="http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_StreetMap_World_2D/MapServer"/>
<esri:GraphicsLayer ID="mygraphicslayer">
</esri:GraphicsLayer>
</esri:Map>
</Grid>
</UserControl>
Code Behind C#
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Media;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using ESRI.ArcGIS.Client;
using ESRI.ArcGIS.Client.Symbols;
using ESRI.ArcGIS.Client.Tasks;
namespace SimpleClusterer
{
public partial class MainPage : UserControl
{
GraphicsLayer graphicslayer = null;
SimpleMarkerSymbol simpleMarkerSymbol;
public MainPage()
{
InitializeComponent();
Init();
}
void Init()
{
//获取Graphicslayer
graphicslayer = myMap.Layers["mygraphicslayer"] as GraphicsLayer;
GradientStopCollection gradientStopColl = new GradientStopCollection();
GradientStop gstop1 = new GradientStop();
gstop1.Color = Colors.Red;
gstop1.Offset = 0;
GradientStop gstop2 = new GradientStop();
gstop2.Color = Colors.Gray;
gstop2.Offset = 0.25;
GradientStop gstop3 = new GradientStop();
gstop3.Color = Colors.Black;
gstop3.Offset = 0.5;
GradientStop gstop4 = new GradientStop();
gstop4.Color = Colors.Blue;
gstop4.Offset = 0.75;
GradientStop gstop5 = new GradientStop();
gstop5.Color = Colors.Green;
gstop5.Offset = 1;
gradientStopColl.Add(gstop1);
gradientStopColl.Add(gstop2);
gradientStopColl.Add(gstop3);
gradientStopColl.Add(gstop4);
gradientStopColl.Add(gstop5);
LinearGradientBrush mylinearGradientBrush = new LinearGradientBrush(gradientStopColl,0);
mylinearGradientBrush.MappingMode = BrushMappingMode.RelativeToBoundingBox;
//初始化simpleMarkerSymbol
SolidColorBrush symbolBrush = new SolidColorBrush(Colors.Purple);
simpleMarkerSymbol = new SimpleMarkerSymbol();
simpleMarkerSymbol.Size = 12;
simpleMarkerSymbol.Style = SimpleMarkerSymbol.SimpleMarkerStyle.Circle;
simpleMarkerSymbol.Color = symbolBrush;
//设置背景色
SolidColorBrush backbrush = new SolidColorBrush(Colors.Yellow);
//设置前景色
SolidColorBrush forebrush = new SolidColorBrush();
forebrush.Color = Color.FromArgb(99, 0, 0, 0);
//设置集群
FlareClusterer myflareClusterer = new FlareClusterer();
myflareClusterer.FlareBackground = backbrush;
myflareClusterer.FlareForeground = forebrush;
myflareClusterer.Radius = 10;
myflareClusterer.MaximumFlareCount = 20; //最大个数
myflareClusterer.Gradient = mylinearGradientBrush;
graphicslayer.Clusterer = myflareClusterer;
}
void LoadGraphic()
{
QueryTask querytask = new QueryTask();
querytask.Url = "http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Specialty/ESRI_StatesCitiesRivers_USA/MapServer/0";
querytask.ExecuteCompleted += new EventHandler<QueryEventArgs>(querytask_ExecuteCompleted);
Query query = new Query();
query.OutSpatialReferenceWKID = myMap.SpatialReference.WKID;
query.ReturnGeometry = true;
query.Where = "1=1";
querytask.ExecuteAsync(query);
}
void querytask_ExecuteCompleted(object sender, QueryEventArgs e)
{
FeatureSet featureset = e.FeatureSet;
if (featureset == null || featureset.Features.Count < 1)
{
MessageBox.Show("No features retured from query");
return;
}
foreach (Graphic g in featureset.Features)
{
g.Symbol = simpleMarkerSymbol;
graphicslayer.Graphics.Add(g);
}
}
private void myMap_ExtentChanged(object sender, ExtentEventArgs e)
{
if (e.OldExtent == null)
LoadGraphic();
}
}
}
效果图:
转载于:https://www.cnblogs.com/JinDin/archive/2009/09/29/1576556.html
ArcGIS Server for Silverlight 之集群(Simple Clusterer)相关推荐
- [转] 微软SQL Server 2008故障转移集群概述(Windows Server Failover Clustering (WSFC))
前言: 最近在研究微软的大数据解决方案,在收听MS TechNet "SQL Server 2012 AlwaysOn HA+DR设计模型.架构及最佳实践" 时,需要一些预备知识, ...
- 在Windows Server 2012 R2中搭建SQL Server 2012故障转移集群
需要说明的是我们搭建的SQL Server故障转移集群(SQL Server Failover Cluster)是可用性集群,而不是负载均衡集群,其目的是为了保证服务的连续性和可用性,而不是为了提高服 ...
- SQL Server 2008故障转移集群+数据库镜像配置实例之三
前两篇文章已经建立了SQL 2008 的故障转移集群,由于故障转移集群存在一个单点故障,既是当网络存储设备不可用时,整个集群就不可用了.所以为了获得更好的高可用特性和容灾机制,我们可以将集群中的某一特 ...
- 现场工程师出马:VMware+LVM卷快速在windows Server上部署Kafka集群
最近遇到的疑难现场问题层出不穷,本次遭遇的挑战是在4台windows Server 服务器上部署Kafka集群.这是一种比较少见的操作,原因是有些依赖的驱动对虚拟化支持不好,只能运行在实体win机上. ...
- Docker部署SQL Server 2019 Always On集群
Docker部署Always on集群 SQL Server在2016年开始支持Linux.随着2017和2019版本的发布,它开始支持Linux和容器平台上的HA/DR.Kubernetes和大数据 ...
- 分布式TensorFlow集群local server使用详解
通过local server理解分布式TensorFlow集群的应用与实现. 简介 TensorFlow从0.8版本开始,支持分布式集群,并且自带了local server方便测试. Local ...
- 3、Spring Cloud - Eureka(高可用Eureka Server集群)
在实际的项目中,可能有几十个或者几百个的微服务实例,这时 Eureka Server 承担了非 常高的负载.由于 Eureka Server 在微服务架构中有着举足重轻的作用,所以需要对 Eureka ...
- Linux服务器集群系统(一)—— LVS(Linux Virtual Server)简介
背景: 九十年代中期,万维网(World Wide Web)的出现 Internet用户剧烈增长和Internet流量爆炸式地增长 Internet的飞速发展给网络带宽和服务器带来巨大的挑战 从网络技 ...
- 如何创建免费的Hyper-V Server故障转移集群
尽管可能使Windows Server授权模型更加复杂,但用户还是可以使用免费Hyper-V Server来创建容错环境以及故障转移集群. 微软在很久之间就已经推出免费版Hyper-V Server, ...
最新文章
- 【带你重拾Redis】Redis过期策略 和 内存淘汰策略(key回收)
- 配置SQL Server 2008 镜像
- 使用Maven Assembly plugin将依赖打包进jar
- MySQL为关联表添加数据
- 慎用stl中的erase的返回值
- 利用XMLSerializer将对象串行化到XML
- 美团提出具有「位置编码」的Transformer,性能优于ViT和DeiT
- shell脚本语之运算符
- 人工智能都这么火了,底层基础架构还有必要开源吗?
- Ubuntu Git安装与使用
- 算法:限流之令牌桶算法实现
- 极客时间MySQL实战45讲笔记
- win10弹出计算机的内存不足,Win10系统提示“计算机内存不足”的解决方法
- [NFC] 读羊城通卡片信息
- 毕业设计_Android短信查询及加密系统_短信查询
- zookeeper客户端 curator的使用
- 基于java的银行信用卡业务系统
- 计算机毕业设计SSM本科培训班学员信息管理系统【附源码数据库】
- 能力成熟度模型集成(CMMI)
- 搜索引擎SEO因素的类型
热门文章
- BZOJ1103: [POI2007]大都市meg
- c# timer使用
- PHP array_merge() 函数
- Winsock服务器设计的四个关键问题
- 在Eclipse中集成Ant编程之配置篇
- 如何在debian 中启用 fbcon
- [代码笔记]VUE路由根据返回状态判断添加响应拦截器
- Windows Server 2016软件定义存储:Storage Spaces Direct介绍
- linux用终端上传文件和文件家到远程的服务器
- hiho_1089_floyd最短路