Undefined function or Variable while calling function.

Program works fine by itself, but when I call it to another m file the error below occurs.
Command Window :
Undefined function or variable 'ang'.
Error in Degree_to_NorthAZM (line 26)
DTNA =[ang min sec];
Editor :
function [DTNA] = Degree_to_NorthAZM(angle, Direction)
% This function converts angle = [Degree Minute Second] into North AZM
% Direction 1, 2, 3 and 4 are respectively NW, NE, SE and SW
if Direction == 1
ang = 359 - angle(1,1);
min = 59 - angle(1,2);
sec = 60 - angle(1,3);
elseif Direction == 2
ang = angle(1,1);
min = angle(1,2);
sec = angle(1,3);
elseif Direction == 3
ang = 179 - angle(1,1);
min = 59 - angle(1,2);
sec = 60 - angle(1,3);
elseif Direction == 4
ang = 180 + angle(1,1);
min = angle(1,2);
sec = angle(1,3);
end % End of If else loop
DTNA =[ang min sec]; % Function output
end % End of Function

6 个评论

How are you invoking the function? And which item is it complaining does not exist?
Question: what happens if Direction is not one of those four values? What happens if Direction is a vector of those values?
Variable 'ang'. The Direction has to be one of those 4.
Please give an example of how you are invoking the function.
angle = input('Please enter bearing [Degrees Minute Second]');
Direction = input('Please enter 1,2,3 or 4 to NW NE SE SW','s');
% Function call to convert Angle and direction to North AZM
DTNA = Degree_to_NorthAZM(angle, Direction)
I found the issue.
Direction = input('Please enter 1,2,3 or 4 to NW NE SE SW','s');
Direction isn't defined as string in the function. Thanks for the quick replies.

请先登录,再进行评论。

回答(0 个)

类别

帮助中心File Exchange 中查找有关 Data Type Conversion 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by