具有功能的matlab中的多边形图
Polygon plot in matlab with function
我想在 matlab 中创建一个函数,该函数根据多边形的边数绘制多边形,该多边形应该是 function.How 的输入我可以生成此代码吗?
从采样圆生成多边形
您可以沿着圆圈获取采样点并将它们连接起来,但是当然,根据生成的多边形的标准,这可能符合也可能不符合您的要求。在这种情况下,您需要点数比边数多 1 才能闭合形状。这里我们表示一个向量 Theta
,它采用从 0 到 2π 弧度(0° 到 360°)。然后使用 Theta
中存储的这些样本角度通过使用 sin()
和 cos()
关系计算沿圆的 xy 点。最后一步是乘以 Radius
,因为角度的 sin()
和 cos()
已归一化为单位圆。
Number_Of_Edges = 6;
Radius = 100;
Theta = linspace(0,2*pi,Number_Of_Edges+1);
X_Points = Radius*cos(Theta);
Y_Points = Radius*sin(Theta);
plot(X_Points,Y_Points);
title("Polygon with " + num2str(Number_Of_Edges) + " Edges");
grid;
函数调用:
Number_Of_Edges = 6;
Polygon_Plot(Number_Of_Edges);
函数形式:
function [] = Polygon_Plot(Number_Of_Edges)
Radius = 100;
Theta = linspace(0,2*pi,Number_Of_Edges+1);
X_Points = Radius*cos(Theta);
Y_Points = Radius*sin(Theta);
plot(X_Points,Y_Points);
title("Polygon with " + num2str(Number_Of_Edges) + " Edges");
grid;
end
运行 使用 MATLAB R2019b
我想在 matlab 中创建一个函数,该函数根据多边形的边数绘制多边形,该多边形应该是 function.How 的输入我可以生成此代码吗?
从采样圆生成多边形
您可以沿着圆圈获取采样点并将它们连接起来,但是当然,根据生成的多边形的标准,这可能符合也可能不符合您的要求。在这种情况下,您需要点数比边数多 1 才能闭合形状。这里我们表示一个向量 Theta
,它采用从 0 到 2π 弧度(0° 到 360°)。然后使用 Theta
中存储的这些样本角度通过使用 sin()
和 cos()
关系计算沿圆的 xy 点。最后一步是乘以 Radius
,因为角度的 sin()
和 cos()
已归一化为单位圆。
Number_Of_Edges = 6;
Radius = 100;
Theta = linspace(0,2*pi,Number_Of_Edges+1);
X_Points = Radius*cos(Theta);
Y_Points = Radius*sin(Theta);
plot(X_Points,Y_Points);
title("Polygon with " + num2str(Number_Of_Edges) + " Edges");
grid;
函数调用:
Number_Of_Edges = 6;
Polygon_Plot(Number_Of_Edges);
函数形式:
function [] = Polygon_Plot(Number_Of_Edges)
Radius = 100;
Theta = linspace(0,2*pi,Number_Of_Edges+1);
X_Points = Radius*cos(Theta);
Y_Points = Radius*sin(Theta);
plot(X_Points,Y_Points);
title("Polygon with " + num2str(Number_Of_Edges) + " Edges");
grid;
end
运行 使用 MATLAB R2019b