ImageVerifierCode 换一换
格式:DOCX , 页数:12 ,大小:26.65KB ,
资源ID:11312313      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/11312313.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于arcgis和NET架构地图匹配软件二次开发笔记.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于arcgis和NET架构地图匹配软件二次开发笔记.docx

1、基于arcgis和NET架构地图匹配软件二次开发笔记基于arcgis和.NET架构地图匹配软件二次开发笔记-仅供个人学习使用,不可用于商业用途2020-04-121 搭建框架1.1 建立项目。1.2 添加工具箱D:rjazarcgisDeveloperKit10.0DotNetToolBox,引用自动跟随控件自动添加,故无需额外添加引用。1.3 拖动控件到窗体。1.4 加入代码到main:ESRI.ArcGIS.RuntimeManager.Bind(ESRI.ArcGIS.ProductCode.EngineOrDesktop);1.5 ArcEngine开发常见报错原因分析及解决方法:2

2、GPS数据导入Oracle2.1 imp 导入,已经导入A1,表空间达到32G,不可再次导入,后面已经解决,参见103 未能加载文件或程序“ESRI.ArcGIS.Carto,Version=10.0.0.0, Culture=neutral, PublicKeyToken=8fc3cc6311、解决方案资源管理器窗口中,右键项目=属性2、在弹出的属性页面中,选择“生成”选项卡3、修改“生成”选项卡里面的“目标平台”为:X864、重新编译程序OK4 vs2015不支持ArcGIS Engine以及丢失控件和模板解决办法 问题二:vs中没有 arcgis 模板vs新建项目时,项目类型中没有Arc

3、Gis一项图片用的网上找的,不是自己截图,看个意思就好。这里ArcGis模板下面有三项,DeskTop Add-Ins,Extending ArcObjects和Sever Object Extensions。这取决于你装了什么。模板不出现的解决办法:第一步:将模板文件拷贝到vs模板库中,我的VS和ArcGis都安装在D盘,安装时ArcGis模板文件放在C:Program Files (x86)Microsoft Visual Studio 9.0Common7IDEItemTemplatesCSharp和C:Program Files (x86)Microsoft Visual Studio

4、 9.0Common7IDEItemTemplatesCSharp中,将模板(两个文件夹下的ArcGIS文件夹)拷贝至vs2015模板文件位置:D:rjazvs2013Common7IDEItemTemplatesCSharp和D:rjazvs2013Common7IDEProjectTemplatesCSharp中。第二步:用右键,管理员权限运行devenv.exe,就是启动vs2015第三步:重新安装一次模板(引用的)我的是vs2015按照以下顺序,打开 VS2015的命令行工具: 开始- 所有应用 - Microsoft Visual Studio 2015 - vs2015开发人员命令

5、提示(可能会叫Visual Studio 2015 Command Prompt )(VS2015 开发人员命令提示)然后执行如下命令: devenv.exe /InstallVSTemplates 需要注意的事情是,这个命令执行后,不会马上出现项目或项模板,需要重新打开vs2015,新建时会重新初始化模板。 如果第三步有问题,换成用管理员权限运行。第四步:对于已有项目,需要重新生成解决方案。(新建项目请忽略此步骤)Java5 eclipse 配置JDK6 The container Maven Dependencies references non existing library7 mav

6、en使用过程中遇到的问题(依赖jar文件下载失败等)8 解决PLSQL报错动态执行表不可访问,本会话的自动统计被禁止 本文章已收录于: 使用PLSQL,第一次执行表的select操作的时候,提示动态执行表不可访问,本会话的自动统计被禁止这种问题,一看就是当前连接用户没有对sys用户下的表v$session,v$sesstat,v$statname的select权限解决此问题的方式就是授权:以sysdba身份登录grant select on v_$statname to username;grant select on v_$sesstat to username;grant select o

7、n v_$session to username;grant select on v_$mystat to username;9 -查询表空间使用率SELECT total.tablespace_name, Round(total.MB, 2) AS Total_MB, Round(total.MB - free.MB, 2) AS Used_MB, Round( 1 - free.MB / total.MB ) * 100, 2) | % AS Used_PctFROM (SELECT tablespace_name, Sum(bytes) / 1024 / 1024 AS MB FROM

8、dba_free_space GROUP BY tablespace_name) free, (SELECT tablespace_name, Sum(bytes) / 1024 / 1024 AS MB FROM dba_data_files GROUP BY tablespace_name) totalWHERE free.tablespace_name = total.tablespace_name;10 调整和增加表空间sys用户下执行:select tablespace_name,sum(bytes)/1024/1024 from dba_free_space group by ta

9、blespace_nameselect * from dba_data_files t where t.tablespace_name=SDEalter database datafile C:APPZHAOPRODUCT11.2.0DBHOME_1SDE.DBF resize 30720M(注意空格)alter tablespace SDE add datafile D:APPADMINISTRATORPRODUCT11.2.0DBHOME_1SDE01.DBF size 30720M读取空间数据步骤获取文件信息-获取文件目录名称-获取文件名创建工作空间工厂-创建工作空间-创建要素工作空间-

10、要素类-要素游标-要素-开始loopSDE数据一定要使用工作空间工厂去初始化工作空间,在工作空间打开FeatureClass,这是最常规的操作string strFielPath = C:aa.shp;FileInfo fileInfo = new FileInfo(strFielPath);string fileDirectoryName = fileInfo.DirectoryName;string fileName = fileInfo.Name;IWorkspaceFactory workspaceFactory = new ShapefileWorkspaceFactoryClass

11、();IWorkspace workspace = workspaceFactory.OpenFromFile(fileDirectoryName, 0);IFeatureWorkspace featureWorkspace = workspace as IFeatureWorkspace;IFeatureClass featureClass = featureWorkspace.OpenFeatureClass(fileName);IFeatureCursor featureCursor = featureClass.Search(null, false);IFeature feature

12、= featureCursor.NextFeature();while (feature != null)IGeometry geoMetry = feature.Shape;/得到的每个数据feature = featureCursor.NextFeature();11 GPS数据怎么从SDE中获取,怎么加载到图层上方案1第一步,获取GPS的X,Y坐标第二步,创建GPS图层方案2第一步,把GPS数据转化成shp文件(暂时用arcgis实现)读取GPS坐标第二步,加载GPS的shp文件12如何的自由的存取GPS点,或者自由的存取shp文件的属性值13 怎么计算点到直线的最短距离,怎么找到垂足,

13、怎么取得垂足,怎么把垂足加载到地图上并且显示,怎么把垂足的信息存储到SDE中14 数据集和要素类都有空间参考系15 求点到线的最短距离IProximityOperator IProximityOperator接口的主要方法有:ReturnDistance方法用于返回两个几何对象间的最短距离,QueryNearesPoint方法用于查询获取几何对象上离给定输入点的最近距离的点的引用,ReturnNearestPoint方法用于创建并返回几何对象上离给定输入点的最近距离的点。16 匹配过程(GPS点修正过程):实现GPS点到投影到最近距离的线上,取得该垂足,更新GPS的X,Y坐标解决这5个步骤,那

14、么GPS地图匹配任务最核心的任务完成!18 修正GPS步骤1 取得一个点2 创建buffer3 找到buffer区的线元素集合4 分别求点到线的所有垂直距离5 取得垂直距离最小的点的X,Y坐标6 替换原来点的GPS坐标取得最小距离对应的点1 先读取所有的图层2 查询所有图层的buffer区域的要素,放入一个临时图层中3 读取临时图层中的所有要素19 修正GPS点过程中关闭arcmap和数据库,防止要素图层被占用和锁定导致无法修改数据库中的属性。20 修正步骤1 按照车牌号分类GPS点,放入新表中2 按照时间排序,从早到晚升序排列3 从表中取得点,进行修正4 存入新的表中5 生成shp文件21

15、为什么修改数据库中的gps,X,Y坐标后,shp文件中点的位置不改变?22 SDE中多出的几何图形属性怎么得来的,怎么进行修改?23 道路匹配之交叉路口 在道路匹配中,交叉路口的匹配是最复杂的。常见的问题有三种,一是在错误的道路行驶一小段距离后,才跳到正确的路上;二是位置更新太慢,然后突然跳动;三是角度反映太慢。 匹配错误的原因有三种,一、优先匹配原来道路时,向前行驶了一段距离。二、以交叉路口为中心划定一个范围,在此范围内不做更新。三、现实中交叉路口和数据中的道路模型有差异(比如,交叉路口会有一些虚拟的道路)。四、GPS的误差。 位置更新慢的原因有两个:一是在交叉路口的行走轨迹和数据中的道路模

16、型不完全相同,在数据中,两条路是必交叉于一点,而实际上在交叉点之前就已经开始拐弯,拐弯不一定经过交叉点。在没有完全到达新路之前,均有可能在交叉点前的路段上。二是为了回避匹配错误,而采取的延迟策略。 角度是利用前后点经纬度计算出来的,角度更新慢的原因,一是位置更新慢。导致变化慢,二是角度采取了折中策略,导致变化小。 在我们的开发过程中,尝试过多种数学方法来回避这些问题,如调整匹配的误差范围;增加对道路数据中通行属性的利用;对应交叉路口进行范围限制等等,最终效果都不甚理想。曾经有部分厂商,在汽车的轴承上安装转弯、倾斜传感器,并配合道路网数据和倾斜数据,以提高匹配的准度。 用于手机、PND的导航系统

17、中,有什么低成本的方式,大大提高拐弯时的准度吗? 答案是,利用好GPS穿过来的角度和速度。在速度不是过低时,从GPS传过来的值是比较稳定的,可信度是很高的。 如果能够确定前方路口,并且在进入前方路口之前,将可能通行的道路都找出来,在距离前方交叉路口一定距离的地方,放弃以垂直牵引距离优先算法的匹配,改为利用GPS角度和速度变化趋势来进行道路匹配。 有一组实验数据,如果以25公里/时的速度,拐一个90度的弯,会接到四次明显的角度变化。如果速度提高到45公里/时,接到的角度更新次数是3次。 那么,如果我们在第一次角度发生明显改变时,利用角度所在的象限,排除一些不符合条件的候选道路,同时返回GPS角度

18、,将经纬度更新到交叉点上。然后利用下一次,或下下次的GPS角度,进一步明确目标道路。如果交叉路口很复杂的时候,可以等到角度不再发生明显变化时,再确定最终的道路。 如上图中,汽车从DOB行驶,带方向的红色点是GPS模块得到轨迹点,在距离O点还有15m的时候,就采用交叉点特殊匹配算法。将前方可通行的道路作为候选道路,角度没有发生明显变化的时候,就优先匹配到原路段上,当第一次角度发生明显变化时,将点匹配到O点上,同时使用GPS得到的角度,根据此角度可将OC、OO路段排除了。当第二次角度发生明显变化时,就可以确定OB为下一个将要行走的路段。 考虑到拐弯处,速度会一般会有明显变化,因此可以作为拐弯判断一

19、个权值较低的判定因素。24 删除表中重复记录1、删除表中多余重复记录,根据单字段(peopleId)来判断,只留有rowid最小的记录delete from peoplewhere peopleId in (select peopleId from people group by peopleId having count(peopleId) 1)and rowid not in (select min(rowid) from people group by peopleId having count(peopleId )1)2、删除表中多余的重复记录(多个字段),只留有rowid最小的记录d

20、elete from TBIZ_GMS_GPS_HIS_C1 awhere (a.FPASSNO,a.FSTATUSDATE,a.FDATE) in (select FPASSNO,FSTATUSDATE,FDATE from TBIZ_GMS_GPS_HIS_C1 group by FPASSNO,FSTATUSDATE,FDATE having count(*) 1)and rowid not in (select min(rowid) from TBIZ_GMS_GPS_HIS_C1 group by FPASSNO,FSTATUSDATE,FDATE having count(*)1)

21、25 HRESULT:0x80040215在使用ITopologicalOperator求交集等操作的时候,有时会出现“HRESULT:0x80040215”这个异常,原来是空间参考不一样所致。将SpatialReference属性设为同一空间参考就不会出现 HRESULT:0x80040215 异常啦。26 怎么取得两个连续的点平行道路上,怎么匹配到一条道路上以一天为单位进行匹配和画出轨迹,合理27 怎么判断拐弯,拐弯表示可能会有交叉口GPS点的角度持续变化Buffer区域是否有交叉点,没有就是简单的交叉口,有就作复杂交叉口处理,28 空间查询终极版,可以实现sort by29 怎么让轨迹显

22、示成和路段一样的曲线,怎么提取点所在的路段,并加入到新的图层中选取指定位置,指定长度的路线,生成轨迹图层,显示所有的信息30 判断几何空间关系IRelationalOperator接口31读取数据内存溢出,过慢的问题,怎么解决使用游标32 关于sdeora-01000:超出打开游标的最大数问题33 ArcEngine错误提示34 arcgis engine 常用方法35 怎么获取第一条直线相交的线,相交的线尽可能的少,且最有可能是候选的线怎么获取第二条直线相交的线,尽可能的少36 ArrayList删除集合中某一属性相同的元素37 怎么提高ArcSDE for Oracle写入地理数据库的效率38 深入理解游标Cursors,实现数据的快速查找,插入,删除,更新

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1