ArcGIS
文章平均质量分 82
懵懂
从事GIS开发。欢迎关注GIS的朋友一起交流,本人QQ号332719794
展开
-
ArcEngine中getLayer方法的UID参数的详解
UID中value的几种值以及表示的意思:{6CA416B1-E160-11D2-9F4E-00C04F6BC78E} IDataLayer{40A9E885-5533-11d0-98BE-00805F7CED21} IFeatureLayer{E156D7E5-22AF-11D3-9F99-00C04F6BC78E} IGeoFeatureLayer{34B2EF81-F4AC-原创 2012-04-17 14:37:08 · 3862 阅读 · 0 评论 -
在ArcGIS中如何使用直连方式连接Oracle数据库
1. 背景直连方式比使用SDE方式更加稳定,特别是在大数据量处理的应用中,不易出场由SDE连接进程造成的gsvr错误。同时直连方式由于采用Orale客户端连接数据库,在数据库双机部署或集群部署时可以直接利用数据库的负载机制,如RAC,勿需额外的负载均衡服务器。2. 方法在ArcGIS中使用直连,最简单和常用的工具莫过于ArcCatalog。打开ArcCatalo转载 2013-12-24 10:12:03 · 9942 阅读 · 1 评论 -
手动删除ArcGis
今天想把本机的ArcGIS的版本从9.2更新到10.1。安装软件已经搞到手了,于是开始卸载ArcGIS 9.2 。一开始是采用手动卸载,即删除文件目录和注册表等等。但在安装ArcGis10.1的时候总是说本机存在更低的9.2版本,不能安装。采用他自带的版本呢卸载工具是一直报错,可能是有哪个地方没有卸载干净,但能找的地方都找了,于是想直接删除安装记录,使他检测不到以前的版本。在网上下载了一个原创 2014-02-25 16:43:28 · 3209 阅读 · 1 评论 -
ArcGIS栅格重采样方法
重采样方法栅格/影像数据进行配准或纠正、投影等几何变换后,像元中心位置通常会发生变化,其在输入栅格中的位置不一定是整数的行列号,因此需要根据输出栅格上每个像元在输入栅格中的位置,对输入栅格按一定规则进行重采样,进行栅格值的重新计算,建立新的栅格矩阵。重采样方法同样会应用在不同分辩率的栅格/影像数据之间运算时,需要将栅格大小统一到一个指定的分辩率上,此时就需要对栅格进行重采样。S原创 2013-12-26 14:51:15 · 26470 阅读 · 0 评论 -
ArcEngine在地图上加载Server图层数据
加载Server图层数据需要指定两个参数,第一是服务的Url地址,第二是服务中的数据对象名称Name。也就是说,一个Url服务中包含了若干个数据对象,我们加载时可以通过名称加载的数据对象,当然也可以遍历将其全部加上。例:加载服务地址"http://services.arcgisonline.com/ArcGIS/services"中的"ESRI_Imagery_World_2D"数据对原创 2014-03-26 15:55:33 · 3191 阅读 · 0 评论 -
导出mxd专题图到图片
直接上代码:原创 2014-05-16 15:40:03 · 2529 阅读 · 0 评论 -
ArcGIS 客户端跨版本连接Oracle 地理数据库时的兼容性说明
很多用户都会有这样的疑问:1:我是否可以使用ArcGIS Desktop9.3连接ArcSDE102:我是否可以使用ArcGIS 10.1 for Desktop连接ArcSDE10如果可以的话,在性能方面与同版本连接是否有所区别?---------------------------------------------------------------转载 2014-06-05 16:44:48 · 1222 阅读 · 0 评论 -
ArcEngine创建内存FeatureClass
public static IFeatureClass CreateMemoryFeatureClass( ISpatialReference spatialReference, esriGeometryType geometryType, string name = "Temp") { // 创建内存工作空间原创 2014-07-17 11:37:50 · 4770 阅读 · 0 评论 -
ArcEngine数据的查找,插入,删除,更新
1、查找数据1)、利用FeaturCursor进行空间查询//利用构造的Envelope(矩形框),查找和Envelope相交的FeatureClass的要素集//结果数据利用循环FeatureCursor.nextFeature获得IEnvelope envelope = new EnvelopeClass();envelope.PutCoords(508转载 2014-10-30 11:17:11 · 2373 阅读 · 0 评论 -
ArcEngine透明Element的实现
在ArcGIS的开发中,Element是经常需要用到的对象,youshi原创 2014-11-03 16:37:02 · 4894 阅读 · 2 评论 -
ArcEngine的License多选问题
ArcEngine的证书权限添加有两种方式,一种是手动模式直接添加类和相关代码,另一种是采用集成到VS上的工具添加。第一种添加方法参考:http://blog.csdn.net/mengdong_zy/article/details/43699511第二种添加方法:1.选中exe所在的工程。2.在菜单栏打开“项目”->“Add ArcGIS License Checking”。3.在弹出的原创 2015-03-03 10:53:05 · 1698 阅读 · 0 评论 -
ArcGIS开发手动添加License类
第一步:在工程中添加类:类文件名“LicenseInitializer.Designer.cs”和“LicenseInitializer.cs”1. LicenseInitializer.cs类文件内容://------------------------------------------------------------------------------// //原创 2015-02-10 10:01:52 · 6840 阅读 · 0 评论 -
IActiveView的PartialRefresh方法
下表是PartialRefresh参数方法的对照情况说明。phaseMapLayoutesriViewBackground Map grids Page/snap gridesriViewGeography LayersUnused*esriViewGeoSelec原创 2015-03-05 10:46:57 · 1230 阅读 · 0 评论 -
ArcEngine为数据添加坐标参考
为数据添加坐标参考的方式有很多,下面介绍两种方式进行设置。1、使用IGeoDatasetSchemaEdit接口进行修改。直接上代码: public static bool DefineProject(string datasetFile, string tempDatasetFile) { IGPUtilities myGpUt = new G原创 2013-11-14 15:06:51 · 2245 阅读 · 1 评论 -
图文并茂详解ArcGIS中的线和多边形
本文主要详细讲解ArcGIS中的线、多线段和多边形的结构关系。 在ArcGIS的定义中,线部分的类结构视图如下: 从上图可以非常直观地看到其结构关系。一、线段(ISegment) ArcGIS中的线段都继承于ISegment,分四种线段。贝拉曲线(IBezierCurve)、直线段(ILine)、圆弧线(ICircularArc)、椭圆弧原创 2013-06-08 17:00:59 · 10109 阅读 · 0 评论 -
如何区分Shapefile,Coverage,Geodatabase
如何区分Shapefile,Coverage,Geodatabase(转载)在过去20年中,矢量数据模型是GIS中变化最大的方面,例如,ESRI公司所开发每种新软件包都对应一种新的矢量数据模型,Arc/Info对应Coverage,ArcView对应Shapefile,ArcGIS对应Geodatabase。Coverage和Shapefile是地理关系数据模型,它利用分离的系统来存储转载 2012-08-16 14:09:49 · 1735 阅读 · 0 评论 -
ArcGIS产品体系
这张图是从ESRI官方网站上下载,截至2013年5月原创 2013-05-07 14:03:57 · 1629 阅读 · 0 评论 -
ArcEngine连接SDE数据
做ArcEngine开发的系统,都会涉及连接空间数据库,这里记录一下链接方法和过程。直接上代码:// 用连接属性创建 propertySet IPropertySet propertySet = new PropertySetClass();propertySet.SetProperty("SERVER", "cuillin");propertySet.SetProperty("原创 2013-05-23 09:42:10 · 9470 阅读 · 2 评论 -
用过SDE连接,添加数据集Dataset
第一步:添加EngineGeoDB许可初始化IAoInitialize aoInitialize = new AoInitialize();aoInitialize.Initialize(esriLicenseProductCode.esriLicenseProductCodeEngineGeoDB);如果不加,则会报错“The application is not licensed t原创 2013-05-23 17:12:59 · 2573 阅读 · 5 评论 -
ArcGIS Engine中的Symbols详解
本文由本人翻译ESRI官方帮助文档。尊重劳动成果,转载请注明来源。Symbols ArcObjects用了三种类型的Symbol(符号样式)来绘制图形特征:marker symbols(标记符号),line symbols(线符号),和fill symbols(填充符号)。这些样式同样可以用来绘制elements(元素)图形,比如在地图或制版视图上的图表边线和指北针箭头。第四个样翻译 2013-05-28 16:12:25 · 13539 阅读 · 1 评论 -
ArcEngine开发中“错误类型"****"未定义构造函数”
问题在ArcEngine开发的时候,在编译时,发现出现这样的错误,出错的地方在实例化一个对象的时候。比如:ISpatialReference a = new UnknownCoordinateSystemClass();_hookHelper = new HookHelperClass();等等。解决办法选中实例化的类所在的程序集,如UnknownCoo原创 2013-05-30 09:18:35 · 5280 阅读 · 4 评论 -
esriSimpleLineStyle详解
esriSimpleLineStyle是一个枚举类型,用于设置线样式的风格。他是ISimpleLineSymbol的其中一个属性。类型值描述esriSLSSolid0实线esriSLSDash1短横线-------esriSLSDot2点线.......esriSLSDash原创 2013-06-04 13:41:16 · 2365 阅读 · 0 评论 -
Symbol类视图
类结构根据ESRI的帮助文档绘制。附加效果图和一些重要属性的说明。制作的图很清晰,可以右键另存为。原创 2013-06-05 12:00:45 · 1180 阅读 · 0 评论 -
axSceneControl和axGlobeControl的刷新问题
AE中的三维开发,主要是SceneControl和GlobeControl,它们的表现方式和二维MapControl有比较大的差别,所以在三维下往往有些“束缚”的感觉。像在刷新这块就比较难受,可能我们更新了控件里的场景内容,但无论怎样操作都不能让更新显示出来。其实只是平常习惯了的二维下的map没有了,取而代之的是3D View,AE里也提供了一些刷新的方法,大多是刷新viewer的,基本上还是可以转载 2013-06-20 17:30:45 · 2685 阅读 · 0 评论 -
ArcEngine图层渲染
矢量符号化(渲染)类型 要素符号化类型描述 1 SimpleRender简单符号化2 UniqueValueRender唯一值符号化3 BiUniqueValueRender双变量唯一值符号化4 ChartRender图表符号化5 ClassBreaksRenderer分原创 2013-06-26 11:44:33 · 5912 阅读 · 0 评论 -
如何运行geoprocessing(GP)工具
运行geoprocessing工具 每个geoprocessing工具都有一组固定需要设置的参数,他们为工具的执行提供必须的信息。工具通常需要输入参数,定义数据或数据集,这些通常用于生产新的输出数据。参数中有一些重要的属性: Name—所有的工具参数有一个唯一的名称 Type—数据预期的类型,如feature class、interger、string和raster。翻译 2013-07-01 15:55:44 · 7660 阅读 · 0 评论 -
ArcEngine中实现Symbol的预览
我们在程序开发的时候经常用到Symbol,有时还需要预览他们的样式。这时,我们需要获取其预览图片,然后放到PictureBox等容器中。所以重点是怎样获取他们的预览图片。这里提供了两种方法。第一种方法使用 IStyleGalleryClass 接口IStyleGalleryClass拥有一个Preview方法,该方法可以将Symbol的预览写入到图像中,同时提供一个范围参数。原创 2013-08-13 17:48:36 · 2834 阅读 · 0 评论 -
解决ArcGIS局部刷新地图闪烁问题
IViewRefresh viewRefresh = mapControl.Map as IViewRefresh;viewRefresh.ProgressiveDrawing = true;viewRefresh.RefreshItem(layer);原创 2015-10-21 11:12:22 · 5223 阅读 · 1 评论