- How do you call the function?
- Show us the full error message.
Info
此问题已关闭。 请重新打开它进行编辑或回答。
I don't find the error in my function, (index exceed matrix dimensions)?
1 次查看(过去 30 天)
显示 更早的评论
function [ EAngle ] = Azimuth( A,B )
vDelta1 = B-A
angle1 = atan(vDelta(1)/vDelta(2)))
angle1 = abs(rad2deg(angle1))
vDelta2 = (B-A)
%
if vDelta2(1)>0 && vDelta2(2)>0
disp(angle1)
end
if vDelta2(1)>0 && vDelta2(2)<0
disp(180-angle1)
end
if vDelta2(1)<0 && vDelta2(2)<0
disp(180+angle1)
end
if vDelta2(1)<0 && vDelta2(2)>0
disp(360-angle1)
end
end
1 个评论
per isakson
2017-10-1
I tried your code and I get a different error message
>> Azimuth( pi/2, pi/3 )
Error: File: Azimuth.m Line: 3 Column: 39
Unbalanced or unexpected parenthesis or bracket.
回答(1 个)
Ramnarayan Krishnamurthy
2017-10-4
I am assuming that you are calling the function with vector arguments such as: Azimuth([10,20],[30,40]).
Now, there is an extra bracket in the 3rd line of the function. Change it to:
angle1 = atan(vDelta1(1)/vDelta1(2))
The function can now be called with vector inputs.
0 个评论
此问题已关闭。
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!