Выберите область hyperslab
H5S.select_hyperslab(space_id,op,h5_start,h5_stride,h5_count,h5_block)
H5S.select_hyperslab(space_id,op,h5_start,h5_stride,h5_count,h5_block)
выбирает область hyperslab, которая будет добавлена к текущей выбранной области для заданного в space_id
пространства данных. The
op
аргумент определяет, как новый выбор должен быть объединен с ранее существующим выбором для пространства данных. Задайте op
как один из следующих векторов символов или строковых скаляров: 'H5S_SELECT_SET'
, 'H5S_SELECT_OR'
, 'H5S_SELECT_AND'
, 'H5S_SELECT_XOR'
, 'H5S_SELECT_NOTA'
, или 'H5S_SELECT_NOTB'
.
The h5_start
массив определяет начальные координаты выбранного гиперслаба. The h5_count
массив определяет, сколько блоков выбрать из пространства данных в каждой размерности. The h5_stride
массив определяет, сколько элементов перемещать в каждой размерности. The h5_block
массив определяет размер блока элемента, выбранного из пространства данных.
Если h5_stride
задается как []
, затем выбирается смежный гиперслаб, как если бы каждое значение в h5_stride
были установлены равными 1. Если h5_count
задается как []
количество блоков, выбранных по умолчанию для каждой размерности, устанавливается равным 1. Если h5_block
задается как []
затем размер блока по умолчанию равен одному элементу в каждой размерности, как если бы каждое значение в массиве блоков было установлено равным 1.
Примечание
Библиотека HDF5 использует упорядоченное расположение C-стиля для многомерных массивов, в то время как MATLAB® использует упорядоченное расположение в стиле ФОРТРАН. The h5_start
, h5_stride
, h5_count
и h5_block
параметры предполагают упорядоченное расположение C-стиля. Для получения дополнительной информации см. раздел «Использование низкоуровневых HDF5 функций MATLAB» в документации MATLAB.
dims = [100 200];
h5_dims = fliplr(dims);
space_id = H5S.create_simple(2,h5_dims,h5_dims);
start = fliplr([10 20]); block = fliplr([20 30]);
H5S.select_hyperslab(space_id,'H5S_SELECT_SET',start,[],[],block);