ArcGIS二次开发基础教程(10):三维分析

ArcGIS二次开发基础教程(10):三维分析ArcGIS二次开发基础教程(10):三维分析坡度分析请务必学会使用帮助文档!!!//DEM数据的坡度分析将分析结果添加到地图上//首先获取DEM数据,方法有很多例如从个人地理数据库获取,也可直接获取文件数据,此处采用第二种方法IWorkspaceFactoryworkspaceFactory=newShapefileWorkspaceFactoryClass();//从文件…

大家好,又见面了,我是你们的朋友全栈君。

ArcGIS二次开发基础教程(10):三维分析

坡度分析

请务必学会使用帮助文档!!!

//DEM数据的坡度分析 将分析结果添加到地图上
//首先获取DEM数据,方法有很多例如从个人地理数据库获取,也可直接获取文件数据,此处采用第二种方法
IWorkspaceFactory workspaceFactory = new ShapefileWorkspaceFactoryClass();
//从文件处打开工作空间
IRasterWorkspace rasterWorkspace = workspaceFactory.OpenFromFile(System.IO.Path.GetDirectoryName(path)) as IRasterWorkspace;
//打开数据集
IRasterDataset rasterDatset = rasterWorkspace.OpenRasterDataset(System.IO.Path.GetFileName(path));
//转换为坡度分析需要的地理数据集
IGeoDataset rasterGeoDataset = rasterDataset as IGeoDataset;
//表面分析接口 请查阅帮助文档
ISurfaceOp surfaceOp = new RasterSurfaceOpClass();
//坡度分析方法
IGeoDataset resultDataset = surfaceOp.Slope(rasterGeoDataset,esriGeoAnalysisSlopeEnum.esriGeoAnalysisSlopeDegrees,Type.Missing);
//将生成的数据集转换为栅格图层加到地图中
IRasterLayer rasterLayer = new RasterLayerClass();
//当栅格数据为单个数据栅格时
rasterLayer.CreateFromRaster(resultDataset as IRaster);
//当栅格数据为栅格数据集时
//rasterLayer.CreateFromDataset((IRasterDataset)reaultDataset);
rasterLayer.Name = "Slope";
axMapControl1.AddLayer(rasterLayer as ILayer);
axMapControl1.Refresh();
axTOCControl1.Update();

通视分析

//通视分析多需要一个要素数据集表示观察点
//首先获取DEM数据,方法有很多例如从个人地理数据库获取,也可直接获取文件数据,此处采用第二种方法
IWorkspaceFactory workspaceFactory = new ShapefileWorkspaceFactoryClass();
//从文件处打开工作空间  path1是DEM数据的路径
IRasterWorkspace rasterWorkspace = workspaceFactory.OpenFromFile(System.IO.Path.GetDirectoryName(path1)) as IRasterWorkspace;
//打开数据集
IRasterDataset rasterDatset = rasterWorkspace.OpenRasterDataset(System.IO.Path.GetFileName(path1));
//转换为坡度分析需要的地理数据集
IGeoDataset rasterGeoDataset = rasterDataset as IGeoDataset;
//获取要素数据集  path2是观察点要素数据集
IFeatrueWorkspace featureWorkspace = workspaceFactory.OpenFromFile(System.IO.Path.GetDirectoryName(path2)) as IFeatureWorkspace;
IFeatrueDataset featureDataset = featureWorkspace.OpenFeatureDataset(System.IO.Path.GetFileName(path2));
IGeoDataset featureGeoDataset = featureDataset as IGeoDataset;
//表面分析接口 请查阅帮助文档
ISurfaceOp surfaceOp = new RasterSurfaceOpClass();
//通视分析方法
IGeoDataset resultDataset = surfaceOp.Visibility(rasterGeoDataset,featureGeoDataset,esriGeoAnalysisVisibilityEnum.esriGeoAnalysisVisibilityFrequency,Type.Missing);
//将生成的数据集转换为栅格图层加到地图中
IRasterLayer rasterLayer = new RasterLayerClass();
rasterLayer.CreateFromRaster(resultDataset as IRaster);
rasterLayer.Name = "Visibility";
axMapControl1.AddLayer(rasterLayer as ILayer);
axMapControl1.Refresh();
axTOCControl1.Update();

历届GIS应用技能大赛开发题答案点这里,尚在不定期更新中

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/163455.html原文链接:https://javaforall.net

(0)
上一篇 2022年7月23日 下午5:00
下一篇 2022年7月23日 下午5:00


相关推荐

  • 常用的搜索引擎有哪些(公认最好的3种搜索引擎)「建议收藏」

    常用的搜索引擎有哪些(公认最好的3种搜索引擎)「建议收藏」搜索引擎无论工作还是生活都无法避免,哪个引擎更适合使用?接下来用最为常用的baidu,bing,google做个简单对比。首先用baidu以现在最火的‘深度学习’为关键字进行搜索。我的2K分辨率的显示器最后一行才能看到一些有用的信息,最常用的1080P分辨率第一页是不可能有正确结果了。深度学习百度搜索结果(广告有点儿多)微软的bing搜索引擎支持国内版和国际版,首先用国内版对‘深度学习’关键字进行搜索。bing搜索结果(质量还不错,无广告!)使用国际版对相同的‘深度学习’关键字

    2022年5月18日
    84
  • 4K型护套连接器_电缆网套怎么使用方法

    4K型护套连接器_电缆网套怎么使用方法LCYVB-4型钢丝编织橡胶护套连接器4C型护套连接器4K型护套连接器 范围 本标准规定了LCYVB-4型钢丝编织橡胶护套连接器(简称连接器)的产品分类、基本参数、技术要求与试验方法、检验规则、标志、包装、运输和贮存。本标准适用于LCYVB-4型钢丝编织橡胶护套连接器系列产品。 规范性引用文件 下列件中的条款通过本标准的引用而成为本标准的条款。凡是注日期的引用文件,其随后所有的修改单(不包括勘误的内容)或修订版均不适用于本标准,然而,鼓励根据本标准达成…..

    2022年10月2日
    4
  • 多层感知器-原理

    多层感知器-原理深度学习之神经网络神经网络的出现神经网络的首次出现来美国神经生物学家沃伦 麦克洛克 WarrenMcCull 和数学家沃尔特 皮茨 WalterPitts 对生物神经元建模 首次提出了一种形式神经元模型 被称为 M P 模型 结果之和如果大于阈值 则输出 1 否则输出 0 输入和输出均为 0 或 1 感知器感知器能够根据训练样本自动获取样本的组合 1 训练方式为有监督学习 即需要设定训练样

    2026年3月26日
    2
  • 产品经理必修课之互联网产品设计流程

    产品经理必修课之互联网产品设计流程产品经理必修课之互联网产品设计流程字数 2099 nbsp 阅读 944 nbsp 评论 2 nbsp 喜欢 19 夜晚安静地坐下 已然 酒足饭饱 脸庞洋溢着幸福的笑容 工作一整天 幸福一顿饭 就是这么简单 自从我做产品那天起 始终坚信 好产品必定源于生活 融于生活 归于生活 那我个人的产品理念或者工作信条是 会生活 会工作 其实 我还想表达另一层意思 生活在前 工作在后 试问 如果一个人连生活都不能料理好 谈

    2026年3月18日
    3
  • 最佳程序员奖_程序员必读书籍排行榜

    最佳程序员奖_程序员必读书籍排行榜优秀的程序员需要有大量的知识技能储备,读书是获取知识的一个非常重要的途径。每每读到好书,会让人茅塞顿开、醍醐灌顶。以下图书,都可以称得上好书。你会推荐哪些给更广大的程序员呢?文末附有投票,每人可投5本你心中的好书,我们将从参与投票的网友中,选出5位,送上你心中的好书(5本全送哦)~~国外图书推荐C++Prinmer图书推荐理由C++学习头牌 C++领域专家:潘爱民、孟岩作序,代表技术圈鼎力推荐! 一线C++工程师腾讯Milo、微软刘未鹏、陈梓瀚、阿里..

    2026年4月19日
    4
  • tcping安装使用说明及对比telnet命令

    tcping安装使用说明及对比telnet命令下载tcping.exe放在然后就可以使用tcxpingwww.baidu.com空格80测试是否成功了tcping.exe下载地址,见我的资源————————–下面是telnet—————————-telnet使用方式cmd进入命令窗口,如想测试www.baidu….

    2022年6月23日
    25

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号