4、加载栅格文件

栅格数据是GIS中重要的数据源之一,如卫星图像、扫描的地图、照片等。

栅格数据常见的格式有Bmp、Tiff、Jpg、Grid等。

添加栅格数据主要使用Rasterlayer 组件类,以及IMap、ILayer、IRasterLayer接口等。Rasterlayer组件类实现了ILayer、IRasterlayer、TTable、IDataset等接口,主要用于栅格数据的打开、显示、操作状态等设置。

介绍一种打开栅格文件的方法

核心代码:

#region 添加TIN数据
private void 添加TIN数据toolStripLabel1_Click(object sender, EventArgs e)
{
//方法:
AddTinFile();
}
/// <summary>
/// 加载栅格图层
/// </summary>
private void AddTinFile()
{
this.Cursor = Cursors.WaitCursor;
IWorkspaceFactory pWorkspaceFactory = new TinWorkspaceFactoryClass(); IWorkspace pWorkspace = pWorkspaceFactory.OpenFromFile(m_Path, );
ITinWorkspace pTinWorkspace = pWorkspace as ITinWorkspace;
//声明一个pTin变量, 存储所打开的"tin"
ITin pTin = pTinWorkspace.OpenTin("tin");
//将TIN变为TIN图层
ITinLayer pTinLayer = new TinLayerClass();
pTinLayer.Dataset = pTin;
pTinLayer.Name = "TIN";
//也可以用三维空间AxSceneControl加载
//axSceneControl1.Scene.AddLayer(pTinLayer, true);
this.axMapControl1.AddLayer(pTinLayer);
this.Cursor = Cursors.Default; } #endregion

加载Tin文件到SceneControll对象和到MapControl对象的方法大同小异。

只需要将

this.axMapControl1.AddLayer(pTinLayer);

换成

axSceneControl1.Scene.AddLayer(pTinLayer, true);

补充说明:

需从工具箱中拖曳SceneControl到界面窗口,自动生成SceneControll对象。

Tin文件的加载需要用到两个组件类:Scene和SceneGraph。

Scene是一个矢量、栅格和图形数据显示与处理的容器,该类实现了IScene接口,提供了控制 Scene的方法和属性,如Addlayer方法用于向场景中增加一个图层。

SceneGraph是一个记录在Scene中出现的数据和事件的容器,该类实现了ISceneGraph接口,提供了控制和处理Scene中图形的方法和属性。

效果图:

谢谢观看!本人初学GIS二次开发,如果有不对的地方,请多多包涵!

介绍ArcGIS中各种数据的打开方法——tin(栅格文件)的更多相关文章

  1. 介绍ArcGIS中各种数据的打开方法——mxd(地图文档)

    1.加载地图文档 在ArcGIS中,以mxd作为扩展名的文件叫地图文档. 地图文档中只是包含图层的引用,即存储当前地图的图层路径.符号.状态.修饰等信息,并不存储真实的数据层. ArcGIS Map中 ...

  2. 介绍ArcGIS中各种数据的打开方法——mdb(个人数据库)

    3.打开存储在Access GeoDatabase的要素类 使用工作空间打开一个Access库中的一个要素类. private void OpenWorkspaceFromFileAccess(str ...

  3. 介绍ArcGIS中各种数据的打开方法——shp(矢量文件)

    2.加载shp文件到地图控件 ShapeFile是一种矢量数据模型的计算机数据组织文件,用于在计算机上表达矢量数据的计算机文件. 加载ShapeFile文件最主要是:axMapControll控件对象 ...

  4. PatentTips - 在物联网中进行数据过滤的方法和装置

    背景技术 [0001] 本发明涉及物联网,特别涉及在物联网进行数据过滤的方法和装置. [0002] 物联网是新一代信息技术的重要组成部分,特指物物相连的网络.具体地,物联网是指通过各种信息传感设备,如 ...

  5. ASP.NET中如何删除最近打开的项目和文件的记录

    ASP.NTET中总是保留最近打开的项目和文件的记录,甚至是已删除的它也不删.下面介绍几种删除的方法: 第一种:建立一个bat文件,以后双击即可清除,内置代码如下: @echo off@REG Del ...

  6. excel中的数据导入oracle方法

    SQL_loader批量上传数据 1.    注释 在工作中,很多时候会遇到如下情况:需要将excel中的数据批量上传到ORACLE表中.如果是小数据量,如几十条至几百条,那么用plsql dev工具 ...

  7. ArcGIS中的数据连接问题——数据类型不统一

    博主在研究空间数据分布的时候经常会用到 ArcGIS 进行空间数据可视化.但是有时候会由于数据类型不统一而无法将 csv 中的数据连接到底图上.比如在底图中的数据是字符串格式,而 csv 中是数字格式 ...

  8. 归纳从文件中读取数据的六种方法-JAVA IO基础总结第2篇

    在上一篇文章中,我为大家介绍了<5种创建文件并写入文件数据的方法>,本节我们为大家来介绍6种从文件中读取数据的方法. 另外为了方便大家理解,我为这一篇文章录制了对应的视频:总结java从文 ...

  9. 判断js中各种数据的类型方法之typeof与0bject.prototype.toString讲解

    提醒大家,Object.prototype.toString().call(param)返回的[object class]中class首字母是大写,像JSON这种甚至都是大写,所以,大家判断的时候可以 ...

随机推荐

  1. Java多线程之原子操作类

    在并发编程中很容易出现并发安全问题,最简单的例子就是多线程更新变量i=1,多个线程执行i++操作,就有可能获取不到正确的值,而这个问题,最常用的方法是通过Synchronized进行控制来达到线程安全 ...

  2. 数据库高级:SQL-CREATE-TABLE语句

    作者:松软科技(www.sysoft.net.cn) 发布时间:2019/3/17 9:34:51 CREATE TABLE 语句 CREATE TABLE 语句用于创建数据库中的表. SQL CRE ...

  3. 浅谈DanmakuView

      今天简单介绍一下开源的弹幕引擎---danmakuView   使用之前在build.gradle里面添加下面这一条(目前我使用的工具是AndroidStudio 3.1.2)   impleme ...

  4. QCustomplot使用分享(八) 绘制图表-加载cvs文件

    目录 一.概述 二.效果图 三.源码讲解 1.源码结构 2.头文件 3.移动游标 4.设置坐标轴矩形个数 5.添加图表数据 6.设置折线图类型 6.其他函数 四.测试方式 1.测试工程 2.测试文件 ...

  5. FourAndSix2 靶机渗透

    0x01 简介 FourAndSix2是易受攻击的一个靶机,主要任务是通过入侵进入到目标靶机系统然后提权,并在root目录中并读取flag.tx信息 FourAndSix2.镜像下载地址: https ...

  6. linux语句速查

    一.netstat -a或--all:显示所有连线中的Socket -A<网络类型>或--<网络类型>:列出该网络类型连线中的相关地址 -c或--continuous:持续列出 ...

  7. PacMan 01——玩家移动

    版权申明: 本文原创首发于以下网站: 博客园『优梦创客』的空间:https://www.cnblogs.com/raymondking123 优梦创客的官方博客:https://91make.top ...

  8. [Leetcode][动态规划] 买卖股票的最佳时机IV

    一.题目描述 给定一个数组,它的第 i 个元素是一支给定的股票在第 i 天的价格. 设计一个算法来计算你所能获取的最大利润.你最多可以完成 k 笔交易. 注意: 你不能同时参与多笔交易(你必须在再次购 ...

  9. [LeetCode]Unique Binary Search TreesII

    题目:Unique Binary Search TreesII 如果要列出所有可能的二叉搜索树,可以在上面的思路上进一步. f(n) = f(0)*f(n-1) + f(1)*f(n-2) + ... ...

  10. wepy框架开发小程序遇到的node-sass问题解决方案

    一.报错图 二.解决方案 主要是windows平台缺少编译环境, 1.先运行: npm install -g node-gyp 2.然后运行cmd:(右键点击:以管理员身份运行) 输入:npm ins ...