小编use*_*489的帖子

Radians to degree Matlab

我想将角度从弧度转换为degress.我知道Matlab 2014有一个内置函数可以做到这一点,但在我的具体情况下,这个功能还不够好.基本上,角度pi/2是90度,-pi/2也是90度,但是我需要270度作为-pi/2的答案.把它想象成弧度/度圆,我需要每次逆时针计算角度.

我所做的功能如下:

function [Angle_deg] = Func_Rad2Deg(Angle_rad)
Angle_deg = Angle_rad * (180/pi);
if Angle_deg < -1 
    Angle_deg = Angle_deg + 360;

elseif Angle_deg >= -1e-6 && Angle_deg <= 1e-6
    Angle_deg = 0;
end
end
Run Code Online (Sandbox Code Playgroud)

然而,当我使用以下(简单)示例测试时出现问题.

clear all; close all; clc;
%% Tester
vec = [pi -pi pi/2 -pi/2];
vec_deg1 = Func_Rad2Deg(vec);
for i=1:size(vec,2)
    vec_deg2(i) = Func_Rad2Deg(vec(i));
end
Run Code Online (Sandbox Code Playgroud)

输出:

vec_deg1 = 
180  -180    90   -90
vec_deg2 =
180   180    90   270
Run Code Online (Sandbox Code Playgroud)

从上面的例子中可以看出,当我尝试转换矢量时,我得到-pi/2的错误答案.但是,当我使用循环时,答案是理想的答案.这个例子是一个简单的例子,在我的代码中我有高达1000x1000的矩阵进行转换,因此我想限制for循环的数量.因此,我想知道是否有更简单的方法来做我想要的.也许我错过了一个Matlab函数?

谢谢,

matlab degrees radians

4
推荐指数
1
解决办法
3776
查看次数

标签 统计

degrees ×1

matlab ×1

radians ×1