Main Content

matlab.io.hdfeos.gd.defField

네임스페이스: matlab.io.hdfeos.gd

그리드 내에 새 데이터 필드 정의

구문

defField(gridID,fieldname,dimlist,dtype)
defField(gridID,fieldname,dimlist,dtype,mergeCode)

설명

defField(gridID,fieldname,dimlist,dtype)gridID로 지정된 그리드에 대해 데이터 필드를 정의합니다. fieldname 입력값은 새 필드의 이름입니다. dimlist는 지리 위치 차원으로 구성된 셀형 배열이며 FORTRAN 스타일의 순서로 나열되어야 합니다. 즉, 가장 빠르게 변화하는 차원이 가장 먼저 나와야 합니다. dimlist를 차원을 표시하는 텍스트가 있는 문자형 벡터로 구성된 셀형 배열 또는 string형 배열로 지정하거나 (차원이 하나만 있는 경우) 문자형 벡터 또는 string형 스칼라로 지정합니다. dtype은 필드의 데이터형입니다.

defField(gridID,fieldname,dimlist,dtype,mergeCode)는 특정 병합 코드를 갖는 데이터 필드를 정의합니다. mergeCode'nomerge''automerge'일 수 있습니다. 지정하지 않을 경우 mergeCode 입력값은 기본적으로 'nomerge'로 설정됩니다.

이 함수는 HDF 라이브러리 C API의 GDdeffield 함수에 대응합니다. 그러나 MATLAB®은 FORTRAN 스타일의 정렬을 사용하므로 dimlist 파라미터는 C 라이브러리 API에 맞게 순서가 뒤바뀝니다.

예제

차원 'XDim'과 차원 'YDim'을 가진 단정밀도 그리드 필드 'Temperature'를 정의합니다. 그런 다음 차원 'XDim', 'YDim', 'Bands'를 가진 단정밀도 필드 'Spectra'를 정의합니다.

import matlab.io.hdfeos.*
gfid = gd.open('myfile.hdf','create');
xdim = 120; ydim = 200;
gridID = gd.create(gfid,'geo',xdim,ydim,[],[]);
gd.defProj(gridID,'geo',[],[],[]);
dimlist = {'XDim','YDim'};
gd.defField(gridID,'Temperature',dimlist,'single'); 
gd.defDim(gridID,'Bands',3);
dimlist = {'XDim','YDim','Bands'};
gd.defField(gridID,'Spectra',dimlist,'uint8'); 
gd.detach(gridID);
gd.close(gfid);

참고 항목

|