helscanintrlv

Переупорядочьте символы в спиральном шаблоне

Синтаксис

intrlvd = helscanintrlv(data,Nrows,Ncols,hstep)

Описание

intrlvd = helscanintrlv(data,Nrows,Ncols,hstep) перестраивает элементы в data путем заполнения временной матрицы строкой элементов строкой и затем отправки матричного содержимого в выход спиральным способом. Nrows и Ncols размерности временной матрицы. hstep наклон диагонали, то есть, суммы, которой увеличивается индекс строки, как индекс столбца увеличивается одним. hstep должно быть неотрицательное целое число меньше, чем Nrows.

Спиральный вид означает, что функция выбирает элементы по диагоналям временной матрицы. Числом элементов в каждой диагонали является точно Ncols, после того, как функция переносится мимо ребер матрицы при необходимости. Функция пересекает диагонали так, чтобы индекс строки и индекс столбца оба увеличения. Каждая диагональ после первой начинает одну строку ниже первого элемента предыдущей диагонали.

Если data вектор, он должен иметь Nrows*Ncols элементы. Если data матрица с несколькими строками и столбцами, data должен иметь Nrows*Ncols строки и функциональные процессы столбцы независимо.

Примеры

Команда ниже перестраивает вектор с помощью диагоналей двух различных наклонов.

i1 = helscanintrlv(1:12,3,4,1) % Slope of diagonal is 1.
i2 = helscanintrlv(1:12,3,4,2) % Slope of diagonal is 2.

Выход ниже.

i1 =

  Columns 1 through 10 

     1     6    11     4     5    10     3     8     9     2

  Columns 11 through 12 

     7    12


i2 =

  Columns 1 through 10 

     1    10     7     4     5     2    11     8     9     6

  Columns 11 through 12 

     3    12

В каждом случае функция внутренне создает временную матрицу 3 на 4

[1  2  3  4;
 5  6  7  8;
 9 10 11 12]

Сформировать i1, функция формирует каждый наклон одна диагональ путем перемещения вниз одной строки и одного столбца направо. Первая диагональ содержит 1, 6, 11, и 4, в то время как вторая диагональ запускается с 5 потому что это ниже 1 во временной матрице.

Сформировать i2, функция формирует каждый наклон две диагонали путем перемещения вниз двух строк и одного столбца направо. Первая диагональ содержит 1, 10, 7, и 4, в то время как вторая диагональ запускается с 5 потому что это ниже 1 во временной матрице.

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью MATLAB® Coder™.

Смотрите также

Представлено до R2006a