由于工作需要,需要基于ArcGIS进行二次开发,软件的开发过程当中有一个非常重要的功能,就是需要把CAD的数据转换为shp文件保存,方便后面的使用编辑,存储。

先说一下功能的前提,需要将CAD转换为shp文件存储,并且需要与ArcGIS文件挂接上,好设置图层的样式,通过MXD设置肯定比用代码去设置样式方便的多,而且后期的修改也会比较方便。

根据这个功能,我有了两个想法:

1、首先设置好一个MXD与图层,根据图层名称设置好图层样式,然后删除shp文件,只保留MXD文件,然后直接打开CAD文件,根据注记、点、线、面等图层保存为shp文件,存到mxd文件的相对路径上,打开mxd,就可以打开图层,并且图层的样式就会设置好,不用在配置。这种方法先不说,我认为比较简单。

2、首先设置好一个MXD与空的图层,设置好图层样式,然后打开cad,通过IFeatureBuffer将其插入对应的图层当中去,但是就是插入的过程,出现了很多莫名的Bug。

主要说第二种方式:

插入的过程代码很简单的:如下

IFeatureCursor feaCursor = feaClass.Insert(true);

IFeatureBuffer feaBuffer = feaClass.CreateFeatureBuffer();

feaBuffer.Shape = IGeometry;

//(这里的IGeometry可以是IPolygon,IPolyline,IPoint)

int fieldindex = feaBuffer.Fields.FindField("字段名");

if (fieldindex >= )

{          

        feaBuffer.set_Value(fieldindex, "字段值" );

}

feaCursor.InsertFeature(feaBuffer);

这种方法会出现一些问题,如下错误

The coordinates or measures are out of bounds.【坐标系统或图层显示范围不正确】

需要设置ShpFile文件的源:

如果把左或下都改为复数的话,全世界的坐标数据都可以导入,不会出错。

ArcGIS 工作经历【IFeatureBuffer】【CAD转SHP】的更多相关文章

  1. 我的学习工作经历,一个园林专业中专毕业生的IT之路 学习编程 创业

    我的学习工作经历,一个园林专业中专毕业生的IT之路 魏琼东,男,1983年生人,祖籍甘肃陇南人,首先得感谢我父亲给我取了这么一个好名字,至少我非常喜欢他,因为目前还没有发现和我同名的人. 我是1998 ...

  2. Unity 工作经历+近期面试经历

    由于团队解散,这最近都在找新工作机会--投简历找工作.已经面试三家了,都没拿到offer,挺失落的.把这种感受记录下来,以作后鉴. 这本质上是一篇面试经历的记录,并不是什么面试攻略,主要是给自己总结的 ...

  3. 10年java过来人聊聊自己的自学、培训和工作经历

    一 . 自我介绍 我叫王涛,我是一位北漂十年的码农,2008年9月份开始自学java,三个月后,自学无果,于2008年11月份开始参加培训,培训完之后,我觉得自己还是啥也不会,只会抄抄代码,竟然连de ...

  4. ArcGIS案例学习笔记-CAD数据自动拓扑检查

    ArcGIS案例学习笔记-CAD数据自动拓扑检查 联系方式:谢老师,135-4855-4328,xiexiaokui#qq.com 功能:针对CAD数据,自动进行拓扑检查 优点:类别:地理建模项目实例 ...

  5. 苦逼三流小公司程序员这半年找工作经历(3)——选择offer

    本文按照企业规模.性质.规模,分成三类,点评一下遇到的这些公司.也算是为半年找工作经历的一个总结. 1,三流小公司 公司规模类似于笔者跳槽前所在企业,性质有外商独资.合资,当然大多数都是民营企业,规模 ...

  6. Unity 工作经历+近期面试经历(二)

    注册博客园后,我原本打算每一份工作经历都记录下来.但是,这份工作已经换了半年了,好几次想要写,又不知道该怎么写.太多的负能量.我始终相信,情绪是会传染的.我基本决定放弃写这篇文章了.就让时间去淡化经历 ...

  7. 基于Teigha.Net实现CAD到SHP的转换方案

    CAD在测绘领域运用广泛,所以,现在有很多成果都是CAD格式,但其自身存在很多局限性,需将其转为支持更加广泛,存储更加完善的 SHP文件.ArcGIS中直接提供相关转换工具,但不能转换Xdata,Ar ...

  8. ArcGIS QGIS学习一:打开shp、geojson地图变形变扁问题(附最新坐标边界下载全国省市区县乡镇)

    目录 打开的地图变扁了 修改投影坐标系 等角圆锥投影 Web墨卡托投影 一些要注意的地方 打开的地图变扁了 记得初学GIS软件时,用ArcGIS或QGIS打开省级地图的时候(shp或geojson等格 ...

  9. ArcGIS学习记录—KMZ KML与SHP文件互相转换

      1.在google earth中绘制边界  工具栏中选择"Add Polygon".随意绘制一个多边形.  右击添加的图层名(左侧)保存位置为,选择保存为kmz或kml文件.  ...

随机推荐

  1. 中小公司的Java工程师应该如何逆袭冲进BAT?

    (1)80% Java工程师都有的迷茫 这篇文章,跟大家聊一聊很多很多很多人问我的一个问题:中小公司的Java工程师应该如何规划准备,才能跳槽进入BAT这类一线互联网公司? 之所以我用了三个 “很多” ...

  2. git 远程仓 和 本地仓 记录

    一.远程仓添加信息后 ,本地环境修改信息后,上传 远程仓 coding=utf-8 本地仓 coding=utf-8 本地仓同步后 会提示存在冲突: (其中 HEAD 是当前非支的意思,可以理解为当前 ...

  3. 谷歌浏览器无法播放QQ空间视频动画的解决方案

    https://qzonestyle.gtimg.cn/qzone/photo/v7/js/module/flashDetector/flash_tutorial.pdf Chrome开启⽅法 1. ...

  4. php中的move_uploaded_file

    1.定义和用法 move_uploaded_file() 函数将上传的文件移动到新位置. 若成功,则返回 true,否则返回 false. 2.语法 move_uploaded_file(file,n ...

  5. 五 搭建kafka集群

    1 下载    wget http://mirrors.tuna.tsinghua.edu.cn/apache/kafka/2.0.0/kafka_2.12-2.0.0.tgz 2 tar  -zxv ...

  6. 路边拾遗之其他模块(struct/csv/xlwt/smtp)

    struct模块 最近在学习python网络编程这一块,在写简单的socket通信代码时,遇到了struct这个模块的使用,当时不太清楚这到底有和作用,后来查阅了相关资料大概了解了,在这里做一下简单的 ...

  7. C# winform开发

    一处消息死锁分析 最近维护一个工控机上运行的winform程序,我的前任在一个弹出窗口(窗口B)里面调用了ShowDialog方法弹出对话框(窗口C),导致了一个问题是有时关闭窗口C时windows假 ...

  8. java的mysql初探

    在实现如下demo之前,要安装mysql的驱动mysql-connector-java-gpl-5.1.26.msi DEMO: /* * 简单数据库测试 * @李志杰 * 2013-8-4 */ p ...

  9. 在ubuntu中编译内核是用make …

    执行过程如下: root@zyx-VirtualBox:~# cd /opt/EmbedSky/ root@zyx-VirtualBox:/opt/EmbedSky# cd linux-2.6.30. ...

  10. swift之弹出一个背景半透明的UIViewController

    坑爹的背景半透明,按网上给出oc的方法,动画结束之后,半透明效果消失.通过各种折腾,各种试验,终于搞定了. let viewController=storyboard.instantiateViewC ...