大赵传奇

GIS解决方案,webgis , 桌面、数据、服务--QQ276605216

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
  264 随笔 :: 1 文章 :: 64 评论 :: 18万 阅读
复制代码
        /// <summary>
        /// 设置地理投影
        /// 4490:GCS_China_Geodetic_Coordinate_System_2000
        /// </summary>
        /// <param name="pFc"></param>
        /// <param name="yFc"></param>
        private void setGeographicCoordinateSysteme(IFeatureClass targetFc, int gcsType = 4490)
        {
            IGeoDataset pGeoDataset = targetFc as IGeoDataset;
            IGeoDatasetSchemaEdit pGeoDatasetSchemaEdit = pGeoDataset as IGeoDatasetSchemaEdit;
            if (pGeoDatasetSchemaEdit.CanAlterSpatialReference == true)//空间坐标系可改变
            {
                ISpatialReferenceFactory spatialReferenceFactory = new SpatialReferenceEnvironmentClass();
                ISpatialReference pSpatialRef = spatialReferenceFactory.CreateGeographicCoordinateSystem(gcsType);
                string name = pSpatialRef.Name;

                ISpatialReferenceTolerance targetSpatialReferenceTolerance = pSpatialRef as ISpatialReferenceTolerance;
                ISpatialReferenceTolerance sourceSpatialReferenceTolerance = pGeoDataset.SpatialReference as ISpatialReferenceTolerance;
                //必须设置容差,否则将采用坐标系的默认容差,导致与源坐标系的容差不统一
                targetSpatialReferenceTolerance.XYTolerance = sourceSpatialReferenceTolerance.XYTolerance;
                targetSpatialReferenceTolerance.ZTolerance = sourceSpatialReferenceTolerance.ZTolerance;
                targetSpatialReferenceTolerance.MTolerance = sourceSpatialReferenceTolerance.MTolerance;
                pGeoDatasetSchemaEdit.AlterSpatialReference(pSpatialRef);
            }
        }
复制代码

 

posted on   赵长青  阅读(3)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
历史上的今天:
2022-02-21 使用scrapy框架
点击右上角即可分享
微信分享提示