自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 资源 (4)
  • 收藏
  • 关注

原创 设计模式之单例模式

1.定义一个类有且只有一个实例,并且自行实例化向整个系统提供。2.特点A.单例类只能有一个实例;B.单例类必须自己实例化;C.单例类必须向其他对象提供实例。简单的说就是,保证系统中的单例类必须只能有一个实例。在日常应用中,通常是将资源管理器设计成单例类,比如线程池、日志对象、打印机、驱动程序等,它们保证了系统资源分配一致性,不会紊乱。3.实现方式将单例类实现方式按实

2015-12-03 16:51:46 437

原创 遍历枚举值

为了方便,我们通常将同类选项封装成枚举里,有时为了能让用户选择,需要将枚举里的值全部显示出来,我们可以通过Enum.GetValues(),方法实现,该方法的声明如下:public static Array GetValues(Type enumType),Array:所有枚举值的集合,enumType:要获取的枚举类型比如获取Colors里的所有颜色代码如下:enum Colo

2013-09-09 20:56:00 1816

原创 正则表达式完整匹配

正则表达式的作用非常的大,它可用来快速分析大量的文本,以查找特定字符模式;提取、编辑、替换或删除文本子字符串,比如查找邮箱、电话等,非常方便,但是网上许多匹配的表达式,都只是在文本中查找到是否有符合的子字符串,而我们通常在输入过程中完整匹配,而不是查找,因此不能直接用,要对边界进行处理,比如对电话号码(3-4位区号,7-8位直播号码,1-4位分机号),例1234-1234567-23 ,匹

2013-09-02 21:54:03 2322

原创 WPF代码设置Image控件Source

在XAML中设置Image Source很简单,直接在该Image.Source节点赋值Uri路径即可,而用C#代码实现时,虽然思路是一样的,不过还是有一些区别,具体如下:Image img=new Image();BitmapImage bmp=new BitmapImage();bmp.BeginInit();//初始化bmp.UriSource=new Uri(@"C:\Us

2013-08-29 17:47:07 10740

原创 局域网访问ArcgisServer 地图失败解决办法

我们发布地图服务后在本机上能访问,可以到了其他机器以后确不行了。这里解决的办法有两步,共享地图服务文件和关闭防火墙。1.共享地图服务文件要想其它机器能访问服务器的文件,那么必须使它有读取权限,可通过共享方式实现。而ArcGIS Server是通过ArcSOC 和ArcSOM两个用户来实现对地图服务的发布与管理的,因此必须保证它们对地图文件有完整权限。需要将"C:\arcgisserver"

2013-07-23 19:10:02 3547

原创 地图渲染之Clusterer聚集

当比例尺过小,而该区域点要素过多时,就会造成许多点重复覆盖,密密麻麻,影响地图美观,对于这个问题ArcGIS Api for WPF|Silverlight 引入了Clusterer聚集来解决,当点比较密集时,它会将临近的点当做一个来显示,然而又可以通过动画的方式将其弹出展示,效果如下图:上面是一个FlareCusterer的演示,它的相关属性有FlareBackground:Fl

2013-07-11 12:57:50 1968

原创 UniqueValueRenderer唯一值渲染

为了使地图更加美观,我们可以利用渲染来实现,比如要是某一图层中某一字段下的不同值的要素显示不同颜色,以此来区分,可以通过UniqueValueRender唯一值渲染器。唯一值渲染的定义是根据要素属性值来设置地图符号,具有相同属性值得要素采用相同的符号,而属性值不同的要素则采用不同的符号。由以上定义可知,唯一值渲染法的基本步骤是,设置要渲染的属性字段,找到该字段的不同值设置不同的符号。下面采用XAM

2013-07-11 11:04:51 6672

原创 绘制文字气泡样式

在百度地图和谷歌地图中,点击地图中某个要素便会以气泡的形式,显示出要素信息,在ArcEngine中亦可以气泡的样式显示文字信息,如下图所示:可以看出,实际上它是一个Element,绘制在Map控件中,它有文字部分和气泡背景部分构成,气泡背景是一个IBalloonCallout,它加上文字则可构成一个ITextElement效果就是上图所示,代码如下:1、创建气泡背景///

2013-07-10 19:04:12 1845

原创 点查询点二

在“点查询点”一文中,提到了点无法查询点,只能将查询点转化为面这样间接通过点查询点,这种方式是利用QueryTask对象,对DynamicLayer和FeatureLayer图层数据都有效果,但是它需要根据不同的比例尺级别调整查询精度,事实上如果查询的图层是FeatureLayer,那么这种交互查询的方式有更简单的方式,可以以通过FeatureLayer_MouseLeftButtonDown(o

2013-07-10 12:01:41 781

原创 WPF窗体动画显示和关闭

在WindowsForm中可以利用WindowsApi函数AnimateWindow(Inptr hwd,int dwTime,int dwFlags)实现窗体的动画显示和淡出,但是它的样式十分少,且效果不好,而WPF引入了动画以后,可以自定义很炫的动画,增强了程序的视觉效果,实现它的一般步骤为,设置窗体透明度等相关属性,为动画准备;设置窗体Content的变化属性;添加动画显资源;绑定动画触

2013-07-10 10:48:58 4661

原创 编辑选择对象Editor

在ArcGIS api for Siverlight|WPF 中有个编辑工具EditorWidget,如下图所示:它有选择、添加、编辑、删除选择等功能,事实上,这些是由两个对象一起组合起来的,对要素的编辑功能由EditGeometry提供,而Editor则负责了要素的选择、删除选择等功能,在“地图编辑”一文中已介绍了EditGeometry,这里只对Editor进行简单介绍。Edi

2013-07-08 22:52:09 1253

原创 ArcEngine连接Arcgis Server地图服务之查询

对加载到ArcEngine里的Arcgis Server地图服务的漫游、缩放等地图浏览操作,与对本地地图一样不过,然而查询时,由于数据不再本地,所以不能用查询本地地图的那些代码,需要另外编码,但是查询的步骤还是大体类似,都需要设置查询条件,只是本地数据用IFeatureLayer.Search方法而地图服务数据则用IMapServer.QueryFeatureData,具体步骤如下。1、获

2013-07-07 16:25:49 3020

原创 ArcEngine获取ArcGIS Server上的地图服务

利用ArcMap我们可以获取Arcgis Server上的地图服务,而ArcMap和ArcEngine都是基于ArcObjects的,基本上ArcMap能实现的功能ArcEngine都可以实现,因此我们也能利用ArcEngine在程序中加载Arcgis Server上的地图服务。利用ArcEngine获取本地空间数据库内容 ,步骤是设置PropertySet 连接属性,创建工作空间工厂,根

2013-07-07 10:37:38 3310

原创 十进制与经纬度之间的互相转换

在AE的Map控件中我们获取的位置信息是十进制表示的经纬度信息,而通常我们用度、分、秒来表示,因此,在AE内部和通俗描述经纬度信息需要转换。十进制表示经纬度,即只用度来表示位置,而经纬度表示法,则用度、分、秒三个分量来表示,而度分秒之间的关系式为1度=60分=3600秒。由该关系可得出十进制与度分秒之间转换式如下:1、度分秒转换为十进制      Decimal=Degrees+min

2013-07-06 20:27:20 4618

原创 地图编辑

做GIS系统时,通常不仅需要简单的地图浏览、地图查询功能,对地图上要素的编辑也是基本要求之一。对ArcGIS Server发布的数据进行编辑的要求有:所有数据必须来自同一个ArcSDE数据库中;编辑图层只能输FeatureLayer类型,如可以在发布地图服务时,将FeactureAccess功能勾选上。满足以上两个条件的地图数据才能被编辑。而地图编辑其实也就是分为添加、修改、删除三个内容,我们可以

2013-07-06 11:05:52 1131

原创 图形查询时过滤掉条件显示中不显示的元素

在前面的博文中,说到了当设置条件显示DynamicLayer子图层和FeatureLayer里的元素时,图形查询时不能自动过滤掉不显示的元素,本文就是针对这个问题,这个问题可以通过图形和条件查询一起执行的方式来实现,即对Query.Geometry赋值查询图形,而Query.Where则赋条件显示的条件字符串。条件显示部分,以“条件显示FeatureLayer要素内容”博文问基础,这里只讨

2013-07-05 10:43:58 936

原创 读取Excel表

有时候当我们的系统需要导入大量数据时可以以Excel表为媒介,或者用户有些老数据存储在Excel表中时,我们就需要有导入Excel的功能,要实现它,除了利用MS Office提供的Api外,微软还提供了一种更方便的方式,OleDbConnection,它类试SQLConnection用来连接SqlServer数据库,不过它的数据库类型,可以是Access、Oracle、Excel表,利用它,我们可

2013-07-02 20:15:28 644

原创 点查询点的实现

图形查询利用的是查询图形与被查询图形的拓扑关系,因而点查询点的方式是利用点与点之间的拓扑关系的,而点与点之间的只有重合(点的坐标完全一致)、相离两种,当我点击地图上某点时坐标不可能与要查询的点要素完全一致,因此重合的方式是不可取的,再看ArcGIS api for Silverlight中提供的查询拓扑关系如下:SpatialRelationship.esriSpatialRelConta

2013-07-02 17:33:28 938

原创 绘制自定义符号三(读取自定义符号)

前面已经介绍了如何制作自定义符号,已经将自定义样式文件转化为ArcEngine可用的“ServerStyle”格式,接下来就要读取它,这也是最重要的一步。在用ArcMap新建自定义符号时,步骤有"样式管理器"—>"样式文件"—>"样式子类"—>"样式"这样来层层获取,ArcEngine的思想跟ArcMap一致,因此编写代码获取自定义样式符号时,也是遵循这样的步骤的:1.新建样式管理

2013-07-01 22:41:26 1169

原创 绘制自定义符号二(将style文件转化为ServerStyle文件)

在“绘制自定义符号一”博文中已经生成好了“.style”类型的样式文件,这在ArcMap(ArcObjects)中都能用,但是在ArcEngine中不能用,因为,它需要"ESRI.ArcGIS.Framework"的程序集,而ArcEngine中没有这个程序集,但是ArcEngine提供了其他方式来获取自定义符号,可以将".style"文件转化为".ServerStyle"文件,ArcEngine

2013-07-01 22:40:24 2909

原创 绘制自定义符号一(在ArcMap中编辑自定义符号)

当我们在ArcEngine绘制Element图形元素时,通常要用到一些更形象的符号,而AE中提供的Style样式只有那么简单的几种,因此我们需要自定义一些符号,自定义符号的编辑可以通过ArcMap来实现,这里只以标记符号(点符号)为例做简单的介绍。制作简单的标记符号,通常可以通过字体文件或者bmp位图制作。一、通过字体文件制作标记符号  1、通过FontCreator制作字

2013-07-01 22:39:28 12260

原创 条件显示FeatureLayer要素内容

上一篇文章介绍了怎样条件显示Dynamic子图层内容,其实FeatureLayer也可以控制它的显示内容,通过它的where属性即可实现,同样有XAML和C#代码两种方式:1.通过XAML方式实现<esri:FeatureLayer ID="Organization" DisableClientCaching="True" AutoSave="False" Url="http:

2013-06-27 22:20:23 1850 1

原创 条件显示Dynamic图层要素

在ArcEngine中可以通过(IFeatureLayer as IFeatureLayerDefinition).DefinitionExpression="SQL语句",条件显示要素图层内容,ArcGIS Api for Silverlight|WPF 也可以通过LayerDefinition实现对Dynamic子图层元素内容可见性进行控制,有XAML和C#代码两种方式:1.通过XAM

2013-06-27 21:59:06 1687

Java SWT布局介绍

java UI,SWT布局教程,对于初学者还是有一些帮助

2013-10-05

ArcSDE快速入门教程

ArcSDE快速入门,包括ArcSDE安装,简单使用的介绍,对GIS专业有帮助

2013-10-05

百度技术研发笔试题

百度技术研发笔试题,涉及数据结构及相关算法,哈希等知识

2013-10-05

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除