坐等大神matlab画出下面的图
来源:学生作业帮 编辑:大师作文网作业帮 分类:综合作业 时间:2024/11/12 05:02:09
坐等大神matlab画出下面的图
第一幅图球上的圆圈是等距螺旋线
第二幅图球上的方格是等距方形螺旋线
我要的是matlab代码
第一幅图球上的圆圈是等距螺旋线
第二幅图球上的方格是等距方形螺旋线
我要的是matlab代码
clear
clc
R=10;%球半径
[xs,ys,zs]=sphere(20);
surf(R*xs,R*ys,R*zs)%画球
shading interp
%球上的某一点(经纬度)
a0=pi*7/12;%经度
b0=pi/6;%纬度
%------------------------------------------等距螺旋线------------------------------------------------
%等距螺旋线(与Z轴夹角--水平圆周角)
theta=(0:0.1:10)*pi;
phi=0.02*theta;
%北极处等距螺旋线(等弧长)的XYZ数据
x=R*sin(phi).*cos(theta);
y=R*sin(phi).*sin(theta);
z=R*cos(phi);
xyz=[x;y;z];
xyz([1,3],:)=[sin(b0),cos(b0);-cos(b0),sin(b0)]*xyz([1,3],:);%绕Y轴旋转
xyz([1,2],:)=[cos(a0),-sin(a0);sin(a0),cos(a0)]*xyz([1,2],:);%绕Z轴旋转
hold on
plot3(xyz(1,:),xyz(2,:),xyz(3,:),'w','LineWidth',2)
%------------------------------------------等距方形螺旋线------------------------------------------------
n=3;theta=pi/25;
%建立每个拐角点
S=reshape([1;1;-1;-1]*R*sin((1:n+1)*theta),1,[]);
S(end-2:end)=[];%最后一笔的方向
YS=[0,S];XS=[0,0,-S(1:end-1)];
%增加点,共线向量
t=linspace(0,1,50);
xyz=zeros(3,50);
for i=1:4*n+1
% %北极处等距方形螺旋线(等弧长)的XYZ数据
xyz(1,:)=(1-t).*XS(i)+t.*XS(i+1);
xyz(2,:)=(1-t).*YS(i)+t.*YS(i+1);
xyz(3,:)=R^2-xyz(2,:).^2-xyz(1,:).^2;
xyz(3,xyz(3,:)<0)=nan;
xyz(3,:)=sqrt(xyz(3,:));
xyz([1,3],:)=[sin(b0),cos(b0);-cos(b0),sin(b0)]*xyz([1,3],:);%绕Y轴旋转
xyz([1,2],:)=[cos(a0),-sin(a0);sin(a0),cos(a0)]*xyz([1,2],:);%绕Z轴旋转
plot3(xyz(1,:),xyz(2,:),xyz(3,:),'k','LineWidth',2)
end
axis equal
xlabel('x');ylabel('y');zlabel('z')
view([1 3 2])
clc
R=10;%球半径
[xs,ys,zs]=sphere(20);
surf(R*xs,R*ys,R*zs)%画球
shading interp
%球上的某一点(经纬度)
a0=pi*7/12;%经度
b0=pi/6;%纬度
%------------------------------------------等距螺旋线------------------------------------------------
%等距螺旋线(与Z轴夹角--水平圆周角)
theta=(0:0.1:10)*pi;
phi=0.02*theta;
%北极处等距螺旋线(等弧长)的XYZ数据
x=R*sin(phi).*cos(theta);
y=R*sin(phi).*sin(theta);
z=R*cos(phi);
xyz=[x;y;z];
xyz([1,3],:)=[sin(b0),cos(b0);-cos(b0),sin(b0)]*xyz([1,3],:);%绕Y轴旋转
xyz([1,2],:)=[cos(a0),-sin(a0);sin(a0),cos(a0)]*xyz([1,2],:);%绕Z轴旋转
hold on
plot3(xyz(1,:),xyz(2,:),xyz(3,:),'w','LineWidth',2)
%------------------------------------------等距方形螺旋线------------------------------------------------
n=3;theta=pi/25;
%建立每个拐角点
S=reshape([1;1;-1;-1]*R*sin((1:n+1)*theta),1,[]);
S(end-2:end)=[];%最后一笔的方向
YS=[0,S];XS=[0,0,-S(1:end-1)];
%增加点,共线向量
t=linspace(0,1,50);
xyz=zeros(3,50);
for i=1:4*n+1
% %北极处等距方形螺旋线(等弧长)的XYZ数据
xyz(1,:)=(1-t).*XS(i)+t.*XS(i+1);
xyz(2,:)=(1-t).*YS(i)+t.*YS(i+1);
xyz(3,:)=R^2-xyz(2,:).^2-xyz(1,:).^2;
xyz(3,xyz(3,:)<0)=nan;
xyz(3,:)=sqrt(xyz(3,:));
xyz([1,3],:)=[sin(b0),cos(b0);-cos(b0),sin(b0)]*xyz([1,3],:);%绕Y轴旋转
xyz([1,2],:)=[cos(a0),-sin(a0);sin(a0),cos(a0)]*xyz([1,2],:);%绕Z轴旋转
plot3(xyz(1,:),xyz(2,:),xyz(3,:),'k','LineWidth',2)
end
axis equal
xlabel('x');ylabel('y');zlabel('z')
view([1 3 2])
坐等大神matlab画出下面的图
matlab如何画出下面的图呢?
求大神用matlab画出下面的图形,类似的也行
【坐等matlab大神】Matlab出现了如图问题怎么改?
怎么样用matlab画出下面的图形,
可以用Matlab画出如图微分方程的图像,请大神画出图像给我可以吗?
哪位大神知道这个图用Matlab是怎么画出来的
请各位matlab大神看看,我的程序为什么画出来是个空白图?没有点也没有线?
求matlab大神用matlab指导下面的题目
如何用matlab将下面的曲线方程式,画出三维图啊?
请问下面的图 用matlab如何画出来 重点是虚线部分
求用MATLAB画出下面的图截图给我,急.