gdal注册nsdtfDEM格式驱动配置
一、关于nsdtf格式
*.dem是一种比较常见的DEM数据格式,其有两种文件组织方式,即NSDTF-DEM和USGS-DEM 。
NSDTF-DEM
NSDTF-DEM是一种明码的中国国家标准空间数据的交换格式,遵从国家标准GB/T
17798-2007《地理空间数据交换格式》中的格网数据组织规范。
USGS-DEM
USGS-DEM是一种由美国地质调查局所定义的公开的DEM数据格式标准,使用范围较广。这种格式的DEM可以通过ArcGIS可以直接读取,并在ArcGIS中的ArcToolBox中的“转换工具”→" role="presentation" style="box-sizing: border-box;outline: 0px;overflow-wrap: break-word;
max-width:none;max-height: none;min-width: 0px;min-height: 0px;float:none;
word-spacing:normal" id="MathJax-Element-10-Frame">→→“转到栅格”→" role="presentation" style="box-sizing: border-box;outline: 0px;overflow-wrap: break-word;
max-width:none;max-height: none;min-width: 0px;min-height: 0px;float:none;
word-spacing:normal" id="MathJax-Element-11-Frame">→→”DEM转到栅格”工具直接将USGS格式的DEM转为栅格DEM。
gdal默认的的读取格式中并没有nsdft格式,因此需要在gdal中注册这种格式。
二、gdal3.1.0注册nsdtfdem格式
这里根据gdal的注册栅格驱动格式说明来进行添加格式nsdtf格式驱动,与以往的用户说明手册比较了一下,流程基本一致。
1、首先根据手册说明写一个格式解析类
nsdtfdemdataset.cpp 这一步是核心,需要解析的函数都放在这里面。
2、将驱动添加到gdal里面中
1)在gdal/frmts下创建一个驱动目录,目录的名字和驱动的短名字相同(nsdtfdem文件夹),根据其它格式补充makefile.vc
文件
2)在gdal/gcore/gdal_frmts.h文件中添加注册入口点声明(这里为GDALRegister_NSDTFDEM())。
3) 在frmts/gdalallregister.cpp文件中添加一个注册函数的调用,
最好是在ifdef之间(可以参考已有的代码)。
#ifdef FRMT_nsdtfdem
GDAL_Register_NSDTFDEM();
#endif
4) 修改frmts文件夹中的makefile.vc,在EXTRAFLAGS的最后添加-DFRMT_ nsdtfdem,需要与上面一样。
然后清理工程,重新编译
gdal注册nsdtfDEM格式驱动配置的更多相关文章
- GDAL添加ECW格式支持
目录 GDAL添加ECW格式支持 ECW 下载ECW JPEG SDK 在Unix平台构建支持ECW的GDAL 二进制ECW SDK和GCC >= 5.1 在Linux上构建的教程 在Windo ...
- register_chrdev_region/alloc_chrdev_region和cdev注册字符设备驱动
内核提供了三个函数来注册一组字符设备编号,这三个函数分别是 register_chrdev_region().alloc_chrdev_region() 和 register_chrdev(). (1 ...
- .NetCore获取Json和Xml格式的配置信息
本篇将和大家分享的是:如何获取Json和Xml格式的配置信息,主要介绍的是Configuration扩展方法的使用,因为netcore的web应用在Startup中已经默认嵌入appsettings. ...
- 海思Hi3559A/CV100 DDR4驱动配置手册
Hi3559AV100 DDR4 驱动配置说明 1.1 Hi3559AV100 DDR4 CLK/AC 驱动配置方法 寄存器地址 DDR PHY0:0x1206d0bc DDR PHY1:0x1206 ...
- laravel文件上传(本人使用的ftp驱动配置,本地测试总结)
1.电脑端在:控制面板->程序和功能->打开和关闭Window功能,安装:Internet信息服务的(Ftp服务器,web管理工具的IIS管理服务,万网服务的常见http功能) 2.在电脑 ...
- laravel上传文件FTP驱动配置
FTP驱动配置 Laravel 的文件系统集成了 FTP 操作,不过,框架默认的配置文件 filesystems.php 并没有提供示例配置.如果你需要配置一个FTP文件系统,可以使用以下示例配置: ...
- 旧接口注册LED字符驱动设备(静态映射)
#include <linux/init.h> // __init __exit #include <linux/module.h> // module_init module ...
- 旧接口注册LED字符驱动设备(动态映射)
#include <linux/init.h> // __init __exit #include <linux/module.h> // module_init module ...
- GDAL库三个读取Jpeg2000格式驱动测试
0.目的 GDAL库中提供了四五种读取Jpeg2000的驱动,但是各个驱动读取数据的效率各不相同,下面就针对三种读取jpeg2000的效率进行测试. GDAL库中提供的读取Jpeg2000的驱动有下面 ...
随机推荐
- Linux学习笔记--快捷键
桌面 ALT+空格 打开窗口菜单 ALT+F1 聚焦到桌面左侧任务导航栏,可按上下键导航 ALT+F2 运行命令 ALT+F4 关闭窗口 ALT+TAB 切换程序窗口 PRINT 桌面截图 S ...
- jmeter 参数化学习之CSV Data Set Config随机读取一行参数
需要使用到循环控制器,if控制器,CSV Data Set Config,Random Variable 4个组件 如图 先在线程组下面放一个随机数生成器 然后在同一层级设置一个永久的循环控制器,记住 ...
- 解决sofaboot项目右键入口方法没有run sofa application
选中入口方法名,右键出现run sofa application
- 在PHP中操作文件的扩展属性
在操作系统的文件中,还存在着一种我们可以自己定义的文件属性.这些属性不是保存在文件内容中,也不是直接可以通过 ls -al 所能看到的内容.它们可以将一个键值对信息永久得关联到文件上,一般现在的 Li ...
- webpack4 使用babel处理ES6语法的一些简单配置
一,安装包 npm install --save-dev babel-loader @babel/corenpm install @babel/preset-env --save-devnpm ins ...
- MySQL之索引复合索引有效性
首先这里建立一张数据表,并建立符合索引( index_A,index_B,index_C) CREATE TABLE `test_index_sequence` ( `Id` int(11) NOT ...
- vue-cli3 取消eslint 校验代码
项目生成后会有个.eslintrc.js文件 module.exports = { root: true, env: { node: true }, 'extends': [ 'plugin:vue/ ...
- Windows与MAC使用差异有感(还会不断更新体验)
Windows与MAC使用差异有感(还会不断更新体验) 关于键盘 这上是MAC与Windows的⌨️按键区别 我们现在都是USB键盘,而PS/2键盘是已经淘汰掉的(插头是圆孔的),看上图会发现Comm ...
- P1791-[国家集训队]人员雇佣【最大权闭合图】
正题 题目链接:https://www.luogu.com.cn/problem/P1791 题目大意 有\(n\)个人,雇佣第\(i\)个需要\(A_i\)的费用,对于\(E_{i,j}\)表示如果 ...
- SQL Server附加数据库错误5120处理方法
SQL Server附加数据库5120错误 当我们从另外一台服务器复制过来的数据库,可能会有如下错误: 解决方法 1.给数据库所在文件夹增加用户Everyone并赋予完全控制权限 2.以管理员身份运行 ...