Main Content

matlab.io.hdfeos.gd.defProj

命名空间: matlab.io.hdfeos.gd

定义网格投影

语法

defProj(gridID,projCode,zoneCode,sphereCode,projParm)

说明

defProj(gridID,projCode,zoneCode,sphereCode,projParm)gridID 指定的网格上定义 GCTP 投影。projCode 参量可以是以下值之一。

'geo'地理
'utm'统一横轴墨卡托
'albers'亚尔勃斯等积圆锥
'lamcc'蓝伯特正圆锥
'ps'极球面
'polyc'多圆锥
'tm'横轴墨卡托
'lamaz'蓝伯特等积方位
'snsoid'正弦曲线
'hom'斜轴墨卡托
'som'空间斜轴墨卡托
'good'古氏分瓣
'cea'等积圆柱
'bcea'贝赫曼等积圆柱
'isinus'整数正弦曲线

如果 projCode'geo',则 zoneCodesphereCodeprojParm 应指定为 []。将忽略这些参数的任何其他值。

zoneCode 是统一横轴墨卡托区域代码。对于其他投影,它应指定为 -1。

sphereCode 是 GCTP 类球面的名称或对应的数值代码。

projParm 是一个由最多 13 个元素组成的向量,其中含有投影特定的参数。有关 projCodezoneCodesphereCodeprojParm 的更多详细信息,请参阅《HDF-EOS 库用户指南》第 1 卷第 6 章:概述和示例。

此函数对应于 HDF 库 C API 中的 GDdefproj 函数。

示例

创建一个以东经 54-60 及北纬 20-30(40 区)为界的 UTM 网格。将该网格沿 x 轴分为 120 个 bin,沿 y 轴分为 200 个 bin。

import matlab.io.hdfeos.*
gfid = gd.open('myfile.hdf','create');
uplft = [210584.50041 3322395.95445];
lowrgt = [813931.10959 2214162.53278];
gridID = gd.create(gfid,'UTMGrid',120,200,uplft,lowrgt);
gd.defProj(gridID,'utm',40,'Clarke 1866',[]);
gd.detach(gridID);
gd.close(gfid);

使用 WGS 84 类球面在极点下方的 90 N, 0 经度以真实比例添加北半球的极球面投影。

import matlab.io.hdfeos.*
gfid = gd.open('myfile.hdf','create');
gridID = gd.create(gfid,'PolarGrid',100,100,[],[]);
projparm = zeros(1,13);
projparm(6) = 90000000;
gd.defProj(gridID,'ps',[],'WGS 84',projparm);
gd.detach(gridID);
gd.close(gfid);