ArcGIS Engine中空间参照(地理坐标)相关方法总结
来源:互联网 发布:姓氏头像制作软件 编辑:程序博客网 时间:2024/05/29 14:29
转载于:http://www.bubuko.com/infodetail-328261.html
1.创建空间参考
<span style="background-color: rgb(255, 255, 255);"> /// <summary> /// 根据prj文件创建空间参考 /// </summary> /// <param name="strProFile">空间参照文件</param> /// <returns></returns> public static ISpatialReference CreateSpatialReference(string strProFile) { ISpatialReferenceFactory pSpatialReferenceFactory = new SpatialReferenceEnvironmentClass(); ISpatialReference pSpatialReference = pSpatialReferenceFactory.CreateESRISpatialReferenceFromPRJFile(strProFile); return pSpatialReference; }</span>
<span style="background-color: rgb(255, 255, 255);"> /// <summary> /// 创建地理坐标系 /// </summary> /// <param name="gcType">esriSRProjCS4Type</param> /// <returns></returns> public static ISpatialReference CreateGeographicCoordinate(esriSRProjCS4Type gcsType) { ISpatialReferenceFactory pSpatialReferenceFactory = new SpatialReferenceEnvironmentClass(); ISpatialReference pSpatialReference = pSpatialReferenceFactory.CreateGeographicCoordinateSystem((int)gcsType); return pSpatialReference; }</span>
<span style="background-color: rgb(255, 255, 255);"> /// <summary> /// 创建投影坐标系 /// </summary> /// <param name="pcType">esriSRProjCS4Type</param> /// <returns></returns> public static ISpatialReference CreateProjectedCoordinate(esriSRProjCS4Type pcsType) { ISpatialReferenceFactory2 pSpatialReferenceFactory = new SpatialReferenceEnvironmentClass(); ISpatialReference pSpatialReference = pSpatialReferenceFactory.CreateProjectedCoordinateSystem((int)pcsType); return pSpatialReference; }</span>
<span style="background-color: rgb(255, 255, 255);"> /// <summary> /// 获取空投影 /// </summary> /// <returns></returns> public static ISpatialReference CreateUnKnownSpatialReference() { ISpatialReference pSpatialReference = new UnknownCoordinateSystemClass(); pSpatialReference.SetDomain(0, 99999999, 0, 99999999);//设置空间范围 return pSpatialReference; }</span>
2.获取空间参考
<span style="background-color: rgb(255, 255, 255);"> /// <summary> /// 获取要素集空间参考 /// </summary> /// <param name="pFeatureDataset">要素集</param> /// <returns></returns> public static ISpatialReference GetSpatialReference(IFeatureDataset pFeatureDataset) { IGeoDataset pGeoDataset = pFeatureDataset as IGeoDataset; ISpatialReference pSpatialReference = pGeoDataset.SpatialReference; return pSpatialReference; }</span>
<span style="background-color: rgb(255, 255, 255);"> /// <summary> /// 获取要素层空间参考 /// </summary> /// <param name="pFeatureLayer">要素层</param> /// <returns></returns> public static ISpatialReference GetSpatialReferenc(IFeatureLayer pFeatureLayer) {IFeatureClass pFeatureClass = pFeatureLayer.FeatureClass; IGeoDataset pGeoDataset = pFeatureClass as IGeoDataset; ISpatialReference pSpatialReference = pGeoDataset.SpatialReference; return pSpatialReference; }</span>
<span style="background-color: rgb(255, 255, 255);"> /// <summary> /// 获取要素类空间参考 /// </summary> /// <param name="pFeatureClass">要素类</param> /// <returns></returns> public static ISpatialReference GetSpatialReference(IFeatureClass pFeatureClass) { IGeoDataset pGeoDataset = pFeatureClass as IGeoDataset; ISpatialReference pSpatialReference = pGeoDataset.SpatialReference; return pSpatialReference; }</span>
3.修改空间参考
<span style="background-color: rgb(255, 255, 255);"> /// <summary> /// 修改要素集空间参考 /// </summary> /// <param name="pFeatureDataset">要素集</param> /// <param name="pSpatialReference">新空间参考</param> public static void AlterSpatialReference(IFeatureDataset pFeatureDataset, ISpatialReference pSpatialReference) { IGeoDataset pGeoDataset = pFeatureDataset as IGeoDataset; IGeoDatasetSchemaEdit pGeoDatasetSchemaEdit = pGeoDataset as IGeoDatasetSchemaEdit; if (pGeoDatasetSchemaEdit.CanAlterSpatialReference == true) pGeoDatasetSchemaEdit.AlterSpatialReference(pSpatialReference); }</span>
<span style="background-color: rgb(255, 255, 255);"> /// <summary> /// 修改要素类空间参考 /// </summary> /// <param name="pFeatureClass">要素类</param> /// <param name="pSpatialReference">新空间参考</param> public static void AlterSpatialReference(IFeatureClass pFeatureClass, ISpatialReference pSpatialReference) { IGeoDataset pGeoDataset = pFeatureClass as IGeoDataset; IGeoDatasetSchemaEdit pGeoDatasetSchemaEdit = pGeoDataset as IGeoDatasetSchemaEdit; if (pGeoDatasetSchemaEdit.CanAlterSpatialReference == true) pGeoDatasetSchemaEdit.AlterSpatialReference(pSpatialReference); }</span>
0 0
- ArcGIS Engine中空间参照(地理坐标)相关方法总结
- ArcGIS Engine中空间参照(地理坐标)相关方法总结
- ArcGIS Engine中空间参照(地理坐标)相关方法总结
- ArcGIS Engine中删除要素的几种方法总结
- ArcGIS Engine 中ISQLQueryDialog2的命名空间
- Arcgis中地理坐标系和投影坐标区别及操作
- ARCGIS中坐标转换及地理坐标、投影坐标的定义
- ArcGIS里大地坐标就是地理坐标
- ArcGIS Engine中刷新视图总结
- ArcGIS中实现地理坐标转换为投影坐标操作流程
- ArcGIS Engine空间高效查询(IIdentify方法)(
- Arcgis Engine中Ivector3D在空间旋转中的注意事项
- ArcGIS Engine学习总结
- arcgis engine 开发 工作空间
- ARCGIS Engine空间参照系处理
- C#+ArcGIS Engine 空间查询
- 2.删除ArcGIS中创建的自定义地理(坐标)变换文件
- ArcGIS删除地图投影坐标,只保留地理坐标
- QT SQLite 多数据库操作大全
- Tree Cutting (树形DP)
- 一道位运算技巧题
- SDUT 2886 - Weighted Median (思维)
- UITableView编程2:相关的两个协议各函数介绍
- ArcGIS Engine中空间参照(地理坐标)相关方法总结
- 筛选法--快速求素数
- 数据结构队列及栈的实现
- winform新手使用Timer计时器让窗口自动跳转(在几秒后自动关闭)
- No.1 程序生涯从这里起步
- Android 一: basic grammar
- UITableView编程1:UITableViewController简介
- 《苹果要求Mac App Store应用必须支持ARC》看完之后的感想
- 【入门】人见人爱A+B:时间相加