自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(225)
  • 收藏
  • 关注

原创 ArcMap批量出图的设计与实现(四)

执行导出打包后的程序包目录中包含三个.py文件、一个.bat文件、一个bin目录。如下:bin目录中存放的是导出xlsx模板文件及C#程序编译后的可执行程序及其依赖的第三方组件等,如下:用户只需要修改bat文件中的mxd文档路径并保存,然后双击AutoRun.bat即可。执行过程如下:成果展示避坑总结一定要站在用户的角度考虑问题,努力做到:输入简单、操作简便、减少依赖、程序稳健、输出友好。 把样式修改留给地图文档、xlsx模板文件,以最大程度..

2020-11-24 17:53:02 543 1

原创 ArcMap批量出图的设计与实现(三)

代码详解代码主要包含:Python部分2个文件,分别为:解析地图文档程序(导出文本、另存地图文档)、导出地图到图片的程序。FastParseMapDocument.py# -*- coding:utf8 -*-import osimport arcpyimport sysreload(sys)sys.setdefaultencoding('utf8')def parse_map_doc(doc_dir, doc_name, work_issue_prefix): "

2020-11-24 17:18:42 675 2

原创 ArcMap批量出图的设计与实现(二)

技术选型主体程序采用ArcPy开发,充分发挥Python语言的黏合剂特点,不仅能避免ArcGIS不同版本带来编译开销,更能灵活修改,可方便地根据客户的需求变化动态修改维护程序,减少返工。对显示字段调整、图片导出质量等可能需要频繁变化的小需求,实施人员即可现场响应。将表格中显示的字段导出为图片,不采用Python而采用C#语言开发,理由包括:C#可直接引入第三方组件库并在打包时直接包含进去,而Python引入第三方库(此处的第三方,指在Python2.7、ArcPy安装后还需要额外引入的包)后,客

2020-11-24 17:06:53 637

原创 ArcMap批量出图的设计与实现(一)

需求描述某项目上,市自然资源和规划部门,需要根据已经制作好的一份地图文档,批量导出某地产商所有未确权土地和房产分布图。地图文档基本情况如下: 所有地块数据均存放在同一图层(要素类名:RT地产用地),叠加显示影像服务。 已经根据其中一个地块调整好了地图显示比例(固定1:1500),地块平移到布局视图中央。 正上方标题固定,右下角图例、比例尺、制图单位、制图时间等信息不变。 右上方表格中,显示地块对应的项目名称、宗地号、宗地代码、宗地面积、所在位置、用地单位、用地合同号等

2020-11-24 16:56:06 1303

原创 团队管理课程培训心得(四)

7.在我们的团队遇到问题时,我们是否真的看到了问题的本质,还是仅停留在表面现象在层面上?如何剖析和解决问题?行动学习是本次培训最后一天的课程主题,也是帮助我们真正将培训首日提出各类问题得到落实的方法论。开班第一课上,我们参加培训的六个小组,每组针对事业部或团队真实存在问题,拟定两个备选课题,由总经理进行点评后,各组最终选定一个主题,留待最后一日在行动学习中得以落实。我们小组最终入选的题...

2020-01-19 13:47:28 1434

原创 团队管理课程培训心得(三)

4.想要打造团队凝聚力,留住更多人员,除了物质激励,我们还应该做些什么?团队的战斗力与凝聚力始终处于动态变化过程中,哪怕这种变化的幅度可能并不大。每个团队管理者都希望自己的团队能够汇聚成一股强大的合力,来应对可能面临的巨大现实困难,并最终战胜困难,赢得挑战。在团队能力不断变化的过程中,团队成员的需求也是在不断变化的。每个团队成员因其所属的不同人生阶段或不同的心理态势,而对团队抱以不同的期望...

2020-01-19 13:45:23 580

原创 团队管理课程培训心得(二)

2. 在由“不完美”的若干个成员组成的臻于完善的团队中,团队的管理者应该如何关注和协调不同的团队角色?在较为浅层和易于为人所见的层面上,团队中各成员只有其职能角色,而在更深层次上,团队成员还应具有各自特有的团队角色。管理也相应可以划分为职能角色的管理,和团队角色的管理。并且,在管理的实践中,往往后者更为合理和有效。贝尔宾团队角色理论将团队角色划分为执行者、智多星、外交家、协调者、鞭策者、...

2020-01-19 13:43:22 576

原创 团队管理课程培训心得(一)

一场“蓄谋已久”的管理课学习盛宴——谈谈我的收获序:公司组织的为期四天的“XXXX团队管理者提升培训”课已经虽然已经落下帷幕,但我相信,包括我在内的绝大多数学员,对在培训课上所吸收“营养”的消化过程却刚刚开始。事预则立。2019年12月2号上午,NFCZBJ社区,我正在和我所在的GD省SD质检项目团队正在紧锣密鼓地为即将到来的“二上”检查做着准备时,一封来自人力资源部同事的通知培训的邮...

2020-01-19 13:39:28 870

原创 C#的Dictionary对象Key和Value对调的方法

使用Dictionary的ToDictionary方法,指定键值对调,如:private static Dictionary<string, int> DictStringToInt = new Dictionary<string, int>() { { "a", 1 }, { "b", 2 } };private static Dictionary...

2019-12-24 15:48:23 1921

原创 Oracle通过case when条件判断和instr字符串查找修改查询结果

Oracle查询结果表中,我们想将包含特定字符串的某字段转换为其他字符串进行显示,其作用类似于代码中常见的条件分支语句case when。其实,Oracle中也有相应的条件分支case when语法,结合字符串判断语方法instr,即可达到相应目的。如下示例:select t.id,t.f_flowtaskid,t.f_name, ( case ...

2019-12-24 15:36:08 4179

原创 ArcSDE直连非默认用户名对应SDE数据库实例的书写方式

以ArcSDE 10.2为例,直连时,须指定五个参数:Server,服务器地址,如:127.0.0.1、172.16.50.135、localhost Service,SDE服务名,与服务器端数据库类型、版本有关,如:sde:oracle10g、sde:oracle11g Database,数据库实例名,如orcl、sdzj2019 UserName,用户名,如:sde Passwor...

2019-12-24 15:21:38 338

原创 VS预生成事件/生成后事件命令行参考与示例

可以通过VS宏来编辑生成前、后事件命令行,来执行个性化编译操作。比如,对默认生成的应用程序文件,我们可以修改其名称、将其拷贝到其他位置等,以达到自动打包版本等目的。VS官方帮助网站提供了详尽的的宏命令使用说明与参考,此处转载如下:宏 说明 $(ConfigurationName) 当前项目配置的名称,例如,“调试”。 $(OutDir) 相对于项目目录的输出文件目...

2019-12-24 15:00:34 4025 1

原创 C# WebAPI从http请求中获取客户端IP信息的方法

从http请求中可以获得客户端信息,如IP:HttpContext.Current.Request.UserHostAddress

2019-11-26 11:24:10 4303

原创 Windows10系统升级后清理C盘下Windows.old文件夹的方法

近日将Windows10从版本1803升级到了1909。升级完成后,发现128GB的固态硬盘的C盘可用空间从约40GB减少到了只有28GB。打开C盘,发现有个Windows.old文件夹,占据了约40GB空间,遂清理之,以还原C盘可用空间。清理步骤如下:1. 在资源管理器中选中C盘,右键,属性,点击“磁盘清理”。或者在资源管理器中选中C盘,点击上排菜单栏中的“清理”功能...

2019-11-26 11:08:17 879

原创 基于ArcPy的矢量数据变化检测思路与方法

文章目录背景思路实现背景有两份矢量要素类数据(几何类型为面),一新一旧。新数据在旧数据的基础上进行过一定的改动,对部分要素进行了增删改操作。现需对比两份数据,检测出其中差异的部分。思路分析修改操作类型(数据差异性)包括:新增要素、删除要素、修改要素(图形、属性单独或同时修改)将修改操作的检测,转化为比较数据记录特征码的差异使用MD5存储每条记录(每个要素)特征码信息.每条记...

2019-11-25 11:31:10 896 1

原创 Oracle已提交的操作“回滚”

Oracle基于事务进行数据库操作时,在事务提交(Commit)之前,我们可以对更新的内容进行回滚(Rollback)操作,以撤销更新。但当已经提交更新之后,又有何办法进行“回滚”操作呢?此时,Oracle的闪回技术就派上用场了。我们可以基于时间戳,查询更新前的数据表内容,将其“插入”到事务提交前的状态即可。操作步骤如下:查询历史表(需要回退时刻的)数据,并将其备份到一张临时表中...

2019-11-25 10:49:32 1331

原创 避坑:SQL Server一项默认设置可导致服务器莫名吃光内存

文章目录发现问题排查解决最后总结发现问题某项目服务器采用64核、512GB内存的“顶级”配置。同时使用该服务器的Oracle及各项服务的作业人员近百名,服务器轻松运行理应不在话下。然而,某段时间,内存占用突然居高不下,始终在97%以上的高位波动。网管三招第一式——重启。重启后,内存初始占用在20%左右。而后,逐渐攀升,最后又暴增至97%以上。眼见问题又复现。悲摧!查找占用内存的进程时,发现...

2019-10-14 11:27:26 552

原创 C/S架构系统的自动更新功能设计与实现(六)

文章目录自定义启动画面需求原理实现服务器端图片加载的服务接口客户端加载最新启动图片的方法自定义启动画面需求临近新中国成立70周年,项目团队计划发布一个以“70周年”为主题的版本。其中,能体现这一主题的,是系统的自动升级启动界面。该界面需要加载一张固定大小的图片。通过图片的修改和重新编译打包自动升级文件,来修改启动风格。扩展一下这个需求,可以变成像很多常见的手机App或C/S客户端软件那样,...

2019-10-14 10:48:09 264

原创 Oracle分页查询

文章目录关于rownum用法示例总结关于rownum我们对rownum的认识,很可能是从误区开始的,即认为它代表我们想要查询到的记录的行号,可以通过指定行号的范围,来获得指定的记录,尤其是分页记录。例如,每页100条记录,查询第2页时,指定过滤条件为:rownum > 100 and rownum < 101。事实上,这种使用方式是错误的。如下图,查询结果为空:那么,这个ro...

2019-10-14 10:21:42 341

原创 ArcGIS Engine将圆弧转为加密的线段

文章目录代码代码/// <summary>/// 将面状图层的圆弧转为加密的线段/// </summary>/// <param name="pWorkspace">工作空间(FileGDB)</param>/// <param name="sPolygonFeatureClassName">面状要素类名称</param...

2019-10-11 15:34:29 941

原创 ArcPy计算尖锐角

# -*-coding:gbk-*-import arcpy.daimport jsonimport mathdef cal_angle_a(ax, ay, bx, by, cx, cy): len_ab = math.sqrt(math.pow(ax - bx, 2) + math.pow(ay - by, 2)) len_ac = math.sqrt(math.p...

2019-09-28 16:50:59 999

原创 通过Ring创建多边形

/// <summary>/// 通过Ring创建多边形/// </summary>/// <param name="pGeometry"></param>/// <returns></returns>public static IPolygon CreatePolygonByRing(IGeometry pGeom...

2019-09-28 16:47:46 190

原创 ArcPy根据角度字段创建方位线

文章目录代码代码# -*- coding:gbk-*-import arcpyimport sysimport osimport mathimport timesource_point_path = sys.argv[1] # 举证照片点图层的全路径(图层须包含方位角字段AZIM)temp_workspace = sys.argv[2] # 临时工作空间(生成方位线的处理...

2019-09-28 16:20:58 471

原创 通过ArcSDE连接参数创建.sde连接文件

文章目录代码代码/// <summary>/// 建立SDE文件(需要正确的连接参数)/// </summary>/// <param name="path">*.SDE文件的全路径(如已存在则先删除再创建)</param>/// <param name="server">172.16.50.128</param>...

2019-09-28 16:15:56 702 1

原创 C/S架构系统的自动更新功能设计与实现(六)

文章目录升级成功时显示升级日志思路代码示例升级成功时显示升级日志思路定义一个固定名称的文本文件,用于记录升级内容。升级内容有变化时,也会触发升级过程。每次升级时,会自动检测有无需要升级的内容。如果有,则在升级完成时打开升级日志文件。无升级内容时,不需要打开升级日志。代码变量定义private static bool m_bShowUpgradeLog = false; //...

2019-08-26 14:45:56 445

原创 JObject转换修改key值

/// <summary>/// JObject转换类/// </summary>public class ObjectConverter{ /// <summary> /// 将JObject转换Key值 /// </summary> /// <param name="inputObject">输入的JSON对象&lt...

2019-08-20 01:08:18 2847

原创 C#判断文件是否被占用

简单来说,就是判断是否能够以独占方式打开,获得其文件流。代码如下:/// <summary>/// 判断文件是否被占用/// </summary>/// <param name="sFullPath">完整路径</param>/// <returns>是否</returns>public static bool...

2019-08-20 00:52:36 944

原创 C/S架构系统的自动更新功能设计与实现(五)

文章目录更新程序的自我升级思路代码脚本调用更新程序的自我升级上一章节讲到客户端的更新。现在面临一个新的问题,就是更新程序本身要实现更新,该怎么办呢?思路我们当然知道,更新程序无法在运行期间实现自我更新,要对其实现更新,必须先关闭程序,再进行更新。于是我们想到,在更新程序关闭后,在其回调启动的主程序中,实现对更新程序的自我升级。简单来说,就是A调用B,来更新B,更新完成后,A关闭,并回调B...

2019-08-12 10:50:10 564

原创 C/S架构系统的自动更新功能设计与实现(四)

文章目录配置管理配置管理类功能入口管理界面设计更新功能实现成员变量主窗口升级过程其他方法集成方式升级功能界面配置管理基于WPF开发客户端。配置文件写在config文件中。<?xml version="1.0" encoding="utf-8" ?><configuration> <appSettings> <!--升级服务器的IP地址-...

2019-07-02 20:13:28 548

原创 C/S架构系统的自动更新功能设计与实现(三)

文章目录配置管理配置文件配置文件读取服务接口开发辅助方法类配置管理配置文件<appSettings> <!--版本目录(相对或绝对路径)--> <add key="VersionDir" value="E:\Test\XXXX网络版软件版本库" /> <!--主版本文件名--> <add key="MainVersionFile"...

2019-07-02 19:46:41 470

原创 C/S架构系统的自动更新功能设计与实现(二)

文章目录核心代码类设计文件单元升级信息完整版仅摘要文件对象集合响应消息核心代码类设计文件单元我们将版本的每一个文件视为一个文件单元,需要获取其相对路径、大小、版本、写操作时间、MD5码等信息。结构定义(含方法):/// <summary>/// 文件信息/// </summary>public class FileUnit : IComparable<F...

2019-07-02 18:08:10 567

原创 C/S架构系统的自动更新功能设计与实现(一)

文章目录需求背景功能设计服务器端版本库目录服务器端版本更新服务接口客户端与服务器通信机制客户端更新机制需求背景项目上要开发一个C/S架构的系统,在客户单位的内网上使用。客户要求,系统上线后,有版本更新时,要能够自动检测新版本并获取更新,而不需要每次使用U盘等介质拷贝安装新版本。基于此需求,我们需要设计一套可以在线更新的C/S架构,在系统启动时,检测服务器有无更新版本,如果有的话,就自动下载新版...

2019-07-02 17:58:15 2303

原创 ArcGIS Engine图层标注

按指定一个或多个字段,指定分隔符进行标注,可设置字体、字号、颜色、是否加粗、是否斜体等。代码如下:/// <summary>/// 要素图层标注/// </summary>public class FeatureLayerAnnotationHelper{ /// <summary> /// 要素图层设置标注 /// </summa...

2019-06-02 16:04:09 873

原创 ArcGIS Engine图层简单符号化

符号化面状图层,不填充,只符号化边线。代码如下:/// <summary>/// 要素图层符号化类/// </summary>public class FeatureLayerSymbolizationHelper{ /// <summary> /// 根据RGB分量构造颜色对象 /// </summary> /// &lt...

2019-06-02 16:01:15 978

原创 ArcGIS Engine加载WMTS影像服务

代码/// <summary>/// 加载WMTS服务/// </summary>/// <param name="sUrl"></param>/// <returns></returns>public List<ILayer> GetWMTSLayer(string sUrl){ var lstL...

2019-06-02 10:35:30 1816

原创 ArcPy脚本根据影像文件路径自动创建金字塔

代码# -*-coding:gbk-*-import arcpyimport osimport sysimport timeimage_path = sys.argv[1]# image_path = u"E:/Temp/20190415GD三调质检/440103LWQ/440103KM4+GF2+GE1DOM01.IMG"# image_path = u"E:/Temp/2...

2019-06-02 10:33:52 667

原创 ArcGIS Engine将栅格创建为图层并将背景设置为白色

代码public static ILayer RasterToLayer(string sFullName){ ILayer pLayer = null; try { var sFolder = Path.GetDirectoryName(sFullName); var sName = Path.GetFileName(sFullName); var pRasterWorks...

2019-06-02 10:32:42 1998

原创 使用ArcPy进行图斑内洞检查

文章目录需求思路实现需求有一面状地类图斑要素类,需要检测出所有位于要素面范围内的孔洞,根据其面积大小进行不同的处理(比如,大于50亩需要人工复核,小于50亩报错)。思路第一种思路:逐个遍历,检测面中是否包含内洞。具体方式是将其转为GeometryCollection对象,判断是否具有面积为负值的多边形,再判断面积。此种方式执行效率较低,速度慢,尤其是图斑数量多而孔洞少的时候。第二种思路...

2019-05-19 15:45:46 879

原创 ArcPy快速检查相邻面要素多个属性取值是否一致

需求规则名称:地类图斑属性字段重复性检查检查内容:检查相邻地类图斑属性字段内容是否重复检查要求:地类图斑层空间位置为相邻,且地类编码相同的图斑,权属单位代码、坐落单位代码、耕地类型、耕地坡度级别、图斑细化代码、耕地种植属性代码、耕地等别等内容不能全部相同。难点对一个区县来说,检查的图斑个数可达数万甚至十万之多。如果使用ArcGIS Engine,逐个图斑去遍历、查询、对比,性能势必成...

2019-05-11 17:19:55 2030

原创 C#从注册表中获取ArcPy的python.exe安装位置

文章目录为何要获取该位置?如何获取该位置?需要注意的地方?为何要获取该位置?在C#中调用命令执行Python脚本的时候,Python解释器是必不可少的工具。ArcGIS 10.2.2安装时默认安装Python,但不同用户可能将Python安装到不同位置,比如,本人就将其安装到D盘而非默认的C盘。那么,当我们的系统给其他用户使用时,势必需要找到Python解释器即python.exe文件位置,才...

2019-05-11 16:43:36 726 1

空空如也

空空如也

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

TA关注的人

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