matlab - 弧度 自 度 Matlab

标签 matlab degrees radians

我想将角度从弧度转换为度数。我知道 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

但是,当我使用以下(简单的)示例对其进行测试时,出现了问题。

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

输出:

vec_deg1 = 
180  -180    90   -90
vec_deg2 =
180   180    90   270

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

谢谢,

最佳答案

这个怎么样:

vec_deg2=mod(radtodeg(vec), 360)

关于matlab - 弧度 自 度 Matlab,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27827477/

相关文章:

matlab - 如何阻止 Matlab 在 importdata() 上显示矩阵内容

matlab - 如何在不使用 matlab 循环的情况下将数组的元素向左移动?

iphone - Objective-C:Objective-C中的Java Math.toRadians(EndLat-StartLat)等效项是什么?

r - ggplot coord_polar() 在 pi/2 和 -pi/2 之间绘制顶部和底部

matlab - Matlab 中的零填充

css - Angular 4 - 以 45 度为步长旋转图像

matlab - degtorad 与 MATLAB 中的 deg2rad?

python - 在 python 中将度数映射到 0 - 360

c - 如何检测旋转的弧度?

java - 当代码从 R2007a 移动到 R2013a 时出现 NoClassDefFoundError