Main Content

matlab.io.hdfeos.sw.defGeoField

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

在分段中定义新数据字段

语法

defGeoField(swathID,fieldname,dimlist,dtype)
defGeoField(swathID,fieldname,dimlist,dtype,mergeCode)

说明

defGeoField(swathID,fieldname,dimlist,dtype) 会定义一个地理位置字段,该字段将存储在 swathID 所标识的分段之中。

dimlist 输入可以是包含维度名称的元胞数组字符向量或字符串数组;如果只有一个维度,可以是单个字符向量或字符串标量。dimlist 的排序方式应当是先列出变化最快的维度。这与 C API 中维度的列出顺序正好相反。

dtype 是字段的数据类型。

defGeoField(swathID,fieldname,dimlist,dtype,mergeCode) 定义一个可根据 mergeCode 的值与其他地理位置字段合并的地理位置字段。mergeCode 参数可以是 'automerge''nomerge'。如果 mergeCode'automerge',则 HDF-EOS 库将尝试将分段字段合并到单个对象中。如果您希望使用另一接口逐个访问分段字段,则不应执行此操作。默认情况下,mergeCode'nomerge'

此函数对应于 HDF-EOS 库 C API 中的 SWdefgeofield 函数,但因为 MATLAB® 采用 FORTRAN 样式排序方法,所以 dimlist 参数与 C 库 API 相反。

示例

import matlab.io.hdfeos.*
swfid = sw.open('myfile.hdf','create');
swathID = sw.create(swfid,'MySwath');
sw.defDim(swathID,'GeoTrack',2000);
sw.defDim(swathID,'GeoXtrack',1000);
sw.defDim(swathID,'DataTrack',4000);
sw.defDim(swathID,'DataXtrack',2000);
sw.defDimMap(swathID,'GeoTrack','DataTrack',0,2);
sw.defDimMap(swathID,'GeoXtrack','DataXtrack',1,2);
dims = {'GeoXtrack','GeoTrack'};
sw.defGeoField(swathID,'Longitude',dims,'float');
sw.defGeoField(swathID,'Latitude',dims,'float');
sw.detach(swathID);
sw.close(swfid);