转自原文 ArcGIS Engine中空间参照(地理坐标)相关方法总结

1.创建空间参考

/// <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;
} /// <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;
} /// <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;
} /// <summary>
/// 获取空投影
/// </summary>
/// <returns></returns>
public static ISpatialReference CreateUnKnownSpatialReference()
{
ISpatialReference pSpatialReference = new UnknownCoordinateSystemClass();
pSpatialReference.SetDomain(, , , );//设置空间范围
return pSpatialReference;
} .获取空间参考 /// <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;
} /// <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;
} /// <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;
} .修改空间参考 /// <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);
} /// <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);
}

ArcGIS Engine中空间参照(地理坐标)相关方法总结的更多相关文章

  1. ArcGIS Engine中空间参照(地理坐标)相关方法总结转

    ArcGIS Engine中空间参照(地理坐标)相关方法总结 来自:http://blog.csdn.net/u011170962/article/details/38776101 1.创建空间参考 ...

  2. ArcGIS Engine中的8种数据访问 (转)

    数据是GIS的基础, 访问数据也是进行任何复杂的空间分析及空间可视化表达的前提.ArcGIS支持的数据格式比较丰富,对不同的数据格式支持的程度也有很大差异.本文主要介绍一下以下八种数据格式在ArcGI ...

  3. ArcGIS Engine中的数据访问

    ArcGIS Engine中的数据访问 数据是GIS的基础, 访问数据也是进行任何复杂的空间分析及空间可视化表达的前提.ArcGIS支持的数据格式比较丰富,对不同的数据格式支持的程度也有很大差异.本文 ...

  4. [转载]ArcGIS Engine 中的多线程使用

    ArcGIS Engine 中的多线程使用 原文链接 http://anshien.blog.163.com/blog/static/169966308201082441114173/   一直都想写 ...

  5. ArcGIS Engine中的8种数据访问

    数据是GIS的基础, 访问数据也是进行任何复杂的空间分析及空间可视化表达的前提.ArcGIS支持的数据格式比较丰富,对不同的数据格式支持的程度也有很大差异.本文主要介绍一下以下八种数据格式在ArcGI ...

  6. ArcGIS engine中Display类库——Display

    转自原文  ArcGIS engine中Display类库——Display Display类库包括了用于显示GIS数据的对象.除了负责实际输出图像的主要显示对象(display object)外,这 ...

  7. ArcGIS Engine 中的多线程使用

    转自原文ArcGIS Engine 中的多线程使用 一直都想写写AE中多线程的使用,但一直苦于没有时间,终于在中秋假期闲了下来.呵呵,闲话不说了,进入正题! 大家都了解到ArcGIS中处理大数据量时速 ...

  8. ArcGIS engine中Display类库 (局部刷新)

    转自原文 ArcGIS engine中Display类库 (局部刷新) Display类库包括了用于显示GIS数据的对象.除了负责实际输出图像的主要显示对象(display object)外,这个类库 ...

  9. ArcGIS Engine中的重点类库介绍

    转自原文ArcGIS Engine中的重点类库介绍 System类库 System类库是ArcGIS体系结构中最底层的类库.System类库包含给构成ArcGIS的其他类库提供服务的组件.System ...

随机推荐

  1. Html Input disabled属性

    input的disabled: <input type="text" name="name" placeholder="请输入名称" ...

  2. 【习题 8-16 UVA - 1618】Weak Key

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 枚举N[q]和N[r]的位置 因为N[q]是最大值,且N[r]是最小值. 且它们是中间的两个. 枚举这两个可以做到不重复枚举. 然后 ...

  3. 【LeetCode】3Sum Closest 解题报告

    [题目] Given an array S of n integers, find three integers in S such that the sum is closest to a give ...

  4. 配置mac机svn服务器

    这几天一直纠结如何配置mac机svn服务器,在网上查了很多资料,无奈本人底子太差,菜鸟级别,理解能力有限,照网上的总是配置不好,最后无奈问了刘超老师,终于配置成功.现在写一下具体配置过程,菜鸟级别可以 ...

  5. 学password学一定得学程序

    题目描写叙述 以前.ZYJ同学非常喜欢password学.有一天,他发现了一个非常长非常长的字符串S1.他非常好奇那代表着什么,于是奇妙的WL给了他还有一个字符串S2.可是非常不幸的是,WL忘记跟他说 ...

  6. Spring MVC 返回视图时添加的模型数据------POJO

    POJO(Plain Old Java Objects)简单的Java对象,实际就是普通JavaBeans,是为了避免和EJB混淆所创造的简称. 使用POJO名称是为了避免和 EJB混淆起来, 而且简 ...

  7. impala 概述

    impala 概述 什么是Impala? Impala是用于处理存储在Hadoop集群中的大量数据的MPP(大规模并行处理)SQL查询引擎. 它是一个用C ++和Java编写的开源软件. 与其他Had ...

  8. ADO.NET数据读取封装

    public class sqlserver { //private string sqlstr = System.ConfigurationManager.ConnectionStrings[&qu ...

  9. HTTP 与 HTTPS

    https就是http和TCP之间有一层SSL层,这一层的实际作用是防止钓鱼和加密. 防止钓鱼通过网站的证书,网站必须有CA证书,证书类似于一个解密的签名. 另外是加密,加密需要一个密钥交换算法,双方 ...

  10. 多路径软件常用操作(MPIO)

    一:查看存储盘的路径 1. 查看MPIO的存储盘的路径 # lspath (适用于所有存储的MPIO路径查询) # mpio_get_config -Av (适用于DS3K/DS4K的MPIO路径查询 ...