用matlab在极坐标下绘制一个正方形,设边长为x,任意顶点坐标为(a,b).求源程序.大婶们,大叔

发布时间:2021-02-25 09:46:01

用matlab在极坐标下绘制一个正方形,设边长为x,任意顶点坐标为(a,b).求源程序.大婶们,大叔们,没人帮一帮小可吗。

网友回答

>> x=1;a=1;b=1; % 赋初值
th=[0 0 pi/4 pi/2 3*pi/2]; % 从原点出发生成共5个向量
rho=[0 x (a^2+b^2)^(1/2) x 0];
polar(th,rho);
======以下答案可供参考======
供参考答案1:
用matlab在极坐标下绘制一个正方形,设边长为x,任意顶点坐标为(a,b).求源程序.大婶们,大叔们,没人帮一帮小可吗。(图1)
function test
N = 100;
a =- 3;b =-2;
x = 4;
thetaA = angle(a+b*1i);
thetaB = angle(a+x+b*1i);
thetaC = angle(a+x+(b+x)*1i);
thetaD = angle(a+(b+x)*1i);
jAB = b;
jBC = a+x;
jCD = b+x;
jDA = a;
[r0,theta0] = rc(thetaA,thetaB,jAB,N);
[r1,theta1] = rr(thetaB,thetaC,jBC,N);
[r2,theta2] = rc(thetaC,thetaD,jCD,N);
if thetaA*thetaD<0 &&abs(thetaA)>pi/2
    thetaA = thetaA+2*pi;
end[r3,theta3] = rr(thetaD,thetaA,jDA,N);
r = abs([r0,r1,r2,r3]);
theta = [theta0,theta1,theta2,theta3];
polar(theta,r)
function [r,theta] = rc(theta1,theta2,rj,N)
dtheta = (t
以上问题属网友观点,不代表本站立场,仅供参考!