毕业于211院校四川农业大学地理信息系统专业,毕业后从事GIS相关研发7年,熟悉C#、JAVA和前端开发,在GIS领域对地理空间算法有一定的个人认识和见解。
我的博客即将入驻“云栖社区”,诚邀技术同仁一同入驻。
1 概要 在不规则区域内均匀分布点,这个需求初看可能不好理解。如果设想一下需求场景就比较简单了。 场景1:在某个地区范围内,例如A市区有100W人口,需要将这100W人口在地图上面相对均匀的标识出来。
1.别人的效果 作为一个GIS专业的,做一个高大上的GIS系统一直是我的梦想,虽然至今为止还没有做出一个理想中的系统,但是偶尔看看别人做的,学习下别人的技术还是很有必要的。眼睛是最容易误导我们的,有时候看着炫酷的效果,可能只是因为一点视觉误差,本文用一个别人的系统界面来解析如何实现一个小区域的立体地图效果。
1.什么是GeoHash geohash基本原理是将地球理解为一个二维平面,将平面递归分解成更小的子块,每个子块在一定经纬度范围内拥有相同的编码。不好理解,没关系,我来找个图。 就像上面这张图,一个坐标点,可以当做一个小格子,而格子的标注就是该坐标点geohash值,当然格子越小精度越高,这个看实际应用吧。
1 前言 WORD 2013可以使用墨迹在文档上面标注,本文讲述通过WPF第三方控件实现类似主要功能如下: 名称 描述 墨迹标注 不论是否触摸屏环境下可以开始墨迹功能,并实现鼠标/触摸在文档任意位置绘制痕迹 墨迹痕迹保存 绘制的墨迹能够完...
采用UDP广播进行数据的传输,实现windows下进行低延迟的屏幕共享。 开发语言:C# 第三方组件:Redis 1.实现思路 总体流程图 DGIS.DesktopShare实现windows下屏幕分享低延迟功能,按照服务执行位置由三部分构成:发起端、接收端、缓存端。
Owin是微软出了几年的东东了,一直没时间学习。大概了解了下,是一个脱离IIS环境,快速搭建WebAPI服务的东西。 刚好想尝试下尽量脱离IIS创建简单快捷配置的项目,就是用了Nginx+Owin的模式,前端用Nignx部署html网页,配置反向代理方便ajax访问owin提供的WebAPI接口。
项目中在android上使用XWalkView作为浏览器,发现在解析时间的时候解析结果和实际结果有时差。 android联机调试的截图如下: PC本机调试截图如下: 从android联机调试的截图看,上面一行时间明显比真实时间延迟了8个小时,从注释中能看到是GMT时间转为了CST时间导致。
一般情况,我们会在页面初始化完成后对class定义一些全局事件,举个栗子: $(document).ready(function(){ $(".class").on("mouseover",function(e){ alert("鼠标经过了"); }); }); 正常情况下,这样的写法是正确的。
WPF的DataGrid原生是不支持Click事件的,然而在开发过程中,经常遇到需要实现类似效果的。 举个栗子:表格第一列是一个CheckBox,需要实现功能点击行选中,再点击取消选中。 第一想法是RowClick事件,然而没有,退而求次使用DataGrid_SelectionChanged事件,第一次点击正常进入方法,连续点击发现无效,原因很简单选中的行没有变化,百度一下有人说使用mousedown方法,表示也可以,不过有没有更简单一点的,答案是有的。
美工设计了一个下一步下一步的引导效果界面,百度谷歌了很久没有找到合适的控件,就想着能不能借助Bootstrap的标签页修改下,实现后的效果如下。 实现思路是先PS三张小图片,作为步骤之间引导的箭头,如下。
在Android开发中有时候为了开发简洁和方便移植,采用了Html+WebView的开发模式,然而Android自带的WebView控件是调用的本机的浏览器内核,有些版本较老的手机浏览器和手机性能都不能满足需求(表现在html5不兼容、体验不流畅等地方)。
/// /// 加密 /// /// /// private string Encryption(string str) { string...
一个项目使用了ArcGIS JS API开发GIS展示层,但GIS服务使用了Geoserver,这时加载Geoserver数据和查询数据就和之前完全不一样了,以下介绍下我使用ArcGIS JS API+Geoserver开发过程中解决Geoserver图层属性查询的一个方案。
在.net mvc的controller中,方法返回JsonResult,一般我们这么写: [HttpPost] public JsonResult QueryFeature(string url, string whereClause) { string str=""; return Json(str); } 此时如果str过长,就会报“使用 JSON JavaScriptSerializer 进行序列化或反序列化时出错,字符串的长度超过了为 maxJsonLength 属性设置的值”。
string filename = "icon.png";//如果不是png类型,须转换 System.Drawing.Bitmap bitmap = new System.Drawing.
使用了Struts框架,前台写好了编码为utf-8 有一个页面一直action接收时参数就变为了乱码,像这样 通过txt修改文件编码,效果依旧。既然前端不行,只能在后台找方法,编码转换回来,在赋值前使用如下代码: String valueA="乱码,前台传过来的"; valueA=new String(valueA.
Arcengine 开发,当图层含有Z值时,新增的feature没有Z值就会 出现“The Geometry has no z-value”的错误。意思很明显,新增的geometry没有Z值。 此时按照常规想法,取出geometry的每个点,分别设置Z=0,理论可行,但实际调试过程中依然报“The Geometry has no z-value”。
使用MongoDB的GridFS来存储文件,以前一直使用单个服务,分布式环境也一直没有配置成功,今天参考了几位大神的文章终于配置成功,再也不用担心文件存储的性能和安全啦。以下是自己部署的过程和示例,记录下来希望能对需要这些的人有一定的帮助。
Cesium作为一个开源的WebGlobe解决方案已经很牛了,不过因为开发的资料不多,很多功能不知道怎么实现。下面记录下自己获取Cesium当前场景范围的方法(2维中对应的是extent)。 extent其实对我们有用的也就是左上角和右下角坐标,于是首先应该想办法实现的是获取场景左上角和右下角的经纬度坐标。
最近项目使用Cesium平台基于WegGl做web地球,其中关于地形数据有一种支持格式为terrain的地形数据。这种格式可以通过一个python工具切dem来得到。 下面记录下配置gdal+python开发环境,系统是win7 64位,不过gdal和python是32位的,没什么影响(当时找对应版本弄了半天,最新的几个版本都有bug,就把我用的程序打包了,方便后面下载,下载)。
使用AE的同行经常会遇到这样的问题,图层刷新。目前常用的有以下几种方法: 1.完全刷新 MapControl.Refresh(); 2.局部刷新 MapControl.Refresh(esriViewDrawPhase.
利用HtmlAgilityPack抓取页面很方便,但是当页面是gb2312编码时候就会出现乱码,上网查了一下说是默认的获取页面方法不够成熟,具体什么的我也不知道,姑且就认为是不够成熟吧。 HtmlWeb htmlWeb = new HtmlWeb(); HtmlDocument htmlDocument = htmlWeb.
利用C#进行CAD二次开发时,遇到 eLockViolation 的问题,这个网上说是因为“非模态窗口,要锁定文档” 具体解决方法如下: 1 DocumentLock m_DocumentLock = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument.LockDocument();2 3 //这里添加你执行的代码4 5 m_DocumentLock.Dispose(); 亲测,问题圆满解决。
前期在研究CAD的时候,想弄一个点击一个闭合区域内一点就获取这个区域的方法,后来尝试了使用boundary命令,可以实现。 现在把C#代码贴上来,希望对大家有用。 其中一个重要的环节就是调用CAD命令,这个借用了论坛里面一个高手的代码,不好意思忘了高手名字了。
arcengine 生成的专题图,在arcMap里面有个去除引线的选项,但是arcengine里面借口找了很久没有找到。 于是想了以下一个方法来解决这个问题,实质是将引线设为透明。 代码: ISimpleLineSymbol ldrLine = new SimpleLineS...