Hi all!
Firstly, I am not exactly sure this is possible, so forgive me if I am asking a redundant question.
I have a series of objects that are same in structure, and I want to group them into an array to keep them together. However, upon initializing such an object with a function, it returns a 2-D matrix, and the program gives me an error: "Subscripted assignment dimension mismatch.". This is the code:
T(1) = makehgtform('translate', [1 1 0]);
T(2) = makehgtform('translate', [1 -1 0]);
T(3) = makehgtform('translate', [-1 1 0]);
T(4) = makehgtform('translate', [-1 -1 0]);
I hope you understand what I'm trying to do, and what the problem is.
Thanks in advance! :)

 Respuesta aceptada

Stephen23
Stephen23 el 1 de Oct. de 2017
Editada: Stephen23 el 1 de Oct. de 2017
Into a 3D array:
T = nan(4,4,N);
T(:,:,1) = makehgtform('translate', [1,1,0]);
T(:,:,2) = makehgtform('translate', [1,-1,0]);
etc
Or a cell array:
T = cell(1,N);
T{1} = makehgtform('translate', [1,1,0]);
T{2} = makehgtform('translate', [1,-1,0]);
etc
Where N is the number of matrices you will have.

3 comentarios

Filip Davidovic
Filip Davidovic el 1 de Oct. de 2017
I get the exact same error.
Filip Davidovic
Filip Davidovic el 1 de Oct. de 2017
I get the error: "Cell contents assignment to a non-cell array object.".
Stephen23
Stephen23 el 1 de Oct. de 2017
@Filip Davidovic: you need to preallocate the matrix or cell array, as shown in my answer.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Creating and Concatenating Matrices en Centro de ayuda y File Exchange.

Etiquetas

Preguntada:

el 1 de Oct. de 2017

Comentada:

el 1 de Oct. de 2017

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by