Not enough input Arguments
7 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Unfortunately, in line four it tells me that I am not passing enough input arguments. I don't quite understand how to fix the error? The code seems to be correct for me. I actually converted the code from python to matlab because in matlab I need the function.
Thanks for your help!
Code:
function e = angle_axis(T,Td)
e = [];
e(1:3) = Td(1:3,end)-T(1:3,end); % -> Mistake
R = Td(1:3, 1:3) * T(1:3, 1:3).';
li = [R(2, 1) - R(1, 2), R(0, 2) - R(2, 0), R(1, 0) - R(0, 1)];
if any(li)
% diagonal matrix case
if trace(R) > 0
% (1,1,1) case
a = zeros(3,0);
else
a = pi/2*(diag(R)+1);
end
else
ln = norm(li);
a = atan2(ln, trace(R)-1)*li/ln;
end
e(3:1) = a;
end
4 commentaires
Réponse acceptée
KSSV
le 29 Déc 2021
The error is clear. You are trying to run the function by hitting the run button/ F5 key. You need to provide the inputs to the function and then call the function.
T = define your value ;
Td = define your value ;
e = angle_axis(T,Td) % now call the function
Plus de réponses (1)
Christian Vogel
le 29 Déc 2021
Voir également
Catégories
En savoir plus sur Call Python from MATLAB 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!