用matlab在极坐标下绘制一个正方形,设边长为x,任意顶点坐标为(a,b).求源程序.大婶们,大叔们,没人帮一帮小可吗。
来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/25 00:33:00
用matlab在极坐标下绘制一个正方形,设边长为x,任意顶点坐标为(a,b).求源程序.大婶们,大叔们,没人帮一帮小可吗。
用matlab在极坐标下绘制一个正方形,设边长为x,任意顶点坐标为(a,b).求源程序.
大婶们,大叔们,没人帮一帮小可吗。
用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);
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 = (theta2-theta1)/N; theta = theta1:dtheta:theta2; r = rj*csc(theta); function [r,theta] = rr(theta1,theta2,rj,N) dtheta = (theta2-theta1)/N; theta = theta1:dtheta:theta2; r = rj*sec(theta);
a=1;b=1;x=2;
A=[a b];
B=[a b+x];
C=[a+x b+x];
D=[a+x,b];
plot(A,B,'K',B,C,'K',C,D,'K',D,A,'K');
axis([0 5 0 5])
就这样?极坐标a=1;b=1;x=2;q=pi/6;%斜度为pi/6 A=[a a+x*cos(q+pi/2) a+x...
全部展开
a=1;b=1;x=2;
A=[a b];
B=[a b+x];
C=[a+x b+x];
D=[a+x,b];
plot(A,B,'K',B,C,'K',C,D,'K',D,A,'K');
axis([0 5 0 5])
就这样?
收起