making a rotation matrix
3 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
{
clc
b = [cos((angle/180)*pi) -sin((angle/180)*pi);sin((angle/180)*pi) cos((angle/180)*pi)];
for i = 1:1:size(nr_out,1)
a = [nr_out(i,1);nr_out(i,2)];
c = b*a;
rotatie(i) = [c(1,1) c(2,1)];
end
}
Hello I am trying to make a rotation matrix. To do that i multiply the x and y from a file with the rotation matrix [cos(a) -sin(a); sin(a) cos(a)] What I want is that the matrix 'rotatie' grows with in the first column the x value ( c(1,1)) and in the second column the y-value(c(2,1)).
The error it gives is this: In an assignment A(I) = B, the number of elements in B and I must be the same.
Gr jeroen
0 commentaires
Réponses (1)
Honglei Chen
le 22 Mai 2012
You need to do something like
rotatie(i,:) = [c(1,1) c(2,1)];
But if I understand your question correctly, you can do it without a loop
rotatie = (b*nr_out.').'
2 commentaires
Honglei Chen
le 22 Mai 2012
Then you can just use the first solution, use rotatie(i,:) instead of rotatie(i)
Voir également
Catégories
En savoir plus sur Resizing and Reshaping Matrices dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!