當前位置:編程學習大全網 - 編程語言 - 用matlab進行M文件操作與畫圖,繪圖的,我要程序過程,都是編程題.

用matlab進行M文件操作與畫圖,繪圖的,我要程序過程,都是編程題.

x=1;

y=2;

theta=pi/10;

r=0.5;

axis?equal?

t?=?linspace(0+theta,2*pi+theta,6);?

xr?=?x+r*cos(t);?

yr?=?y+r*sin(t);?

xk?=?zeros(1,11);?

yk?=?zeros(1,11);?

xk(1)?=?xr(1);?yk(1)?=?yr(1);?[xk(2)?yk(2)]?=?CrossPoint([xr(1)?yr(1)],[xr(3)?yr(3)],[xr(2)?yr(2)],[xr(5)?yr(5)]);?

xk(3)?=?xr(2);?yk(3)?=?yr(2);?[xk(4)?yk(4)]?=?CrossPoint([xr(2)?yr(2)],[xr(4)?yr(4)],[xr(1)?yr(1)],[xr(3)?yr(3)]);?

xk(5)?=?xr(3);?yk(5)?=?yr(3);?[xk(6)?yk(6)]?=?CrossPoint([xr(2)?yr(2)],[xr(4)?yr(4)],[xr(3)?yr(3)],[xr(5)?yr(5)]);?

xk(7)?=?xr(4);?yk(7)?=?yr(4);?[xk(8)?yk(8)]?=?CrossPoint([xr(3)?yr(3)],[xr(5)?yr(5)],[xr(1)?yr(1)],[xr(4)?yr(4)]);?

xk(9)?=?xr(5);?yk(9)?=?yr(5);?[xk(10)?yk(10)]?=?CrossPoint([xr(1)?yr(1)],[xr(4)?yr(4)],[xr(2)?yr(2)],[xr(5)?yr(5)]);?

xk(11)=xk(1);yk(11)=yk(1);

plot(xk,yk);?

%fill(xk,yk,'w')

axis?equal

axis?off;

需要另寫壹個函數,計算交叉點

function?[x,y]=CrossPoint(p1,p2,p3,p4)?

x1?=?p1(1);?y1?=?p1(2);?

x2?=?p2(1);?y2?=?p2(2);?

x3?=?p3(1);?y3?=?p3(2);?

x4?=?p4(1);?y4?=?p4(2);

if?x1==x2

x?=?x1;?

k2?=?(y4-y3)/(x4-x3);

y?=?k2*(x-x3)+y3;?

elseif?x3==x4?

x?=?x3;?

k1?=?(y2-y1)/(x2-x1);

y?=?k1*(x-x1)+y1;?

else?

k1?=?(y2-y1)/(x2-x1);?

k2?=?(y4-y3)/(x4-x3);?

sol?=?[-k1?1;-k2?1]\[y1-k1*x1;y3-k2*x3];

x?=?sol(1);y?=?sol(2);?

end

end%圓球

syms?x?y?z;

F=x^2+y^2+z^2-16;

nv=jacobian(F,[x?y?z]);

[x,y,z]=sphere;

surf(4*x,4*y,4*z);

shading?interp

%指定某點

x=-1;y=-2;z=sqrt(16-x^2-y^2);

nv=double(subs(nv));

hold?on;

quiver3(x,y,z,nv(1),nv(2),nv(3),.5);%法向量

t=-1:.5:1;

[xx,yy]=meshgrid(t+x,t+y);

zz=-(nv(1)*(xx-x)+nv(2)*(yy-y))/nv(3)+z;

mesh(xx,yy,zz);%切平面clear?all;

close?all;

figure;hold?on;

x1=[0?10?10?0?0];

y1=[0?0?0?0?0];

z1=[0?0?10?10?0];

x2=[10?10?10?10?10];

y2=[0?10?10?0?0];

z2=[0?0?10?10?0];

x3=[0?10?10?0?0];

y3=[10?10?10?10?10];

z3=[0?0?10?10?0];

x4=[0?0?0?0?0];

y4=[0?10?10?0?0];

z4=[0?0?10?10?0];

plot3(x1,y1,z1,'Color',[0?0?0]);

plot3(x2,y2,z2,'Color',[0?0?0]);

plot3(x3,y3,z3,'Color',[0?0?0]);

plot3(x4,y4,z4,'Color',[0?0?0]);

%?plot3(x1,y1,z1,x2,y2,z2,x3,y3,z3,x4,y4,z4,x5,y5,z5,'Color',[0?0?0]);

view(3);

x=0:0.1:10;

z=0.4.*(x-5).^2;

y=zeros(length(x));

hold?on;

plot3(x,y,z);

y=10.*ones(length(x));

plot3(x,y,z);

y=0:0.1:10;

z=0.4.*(y-5).^2;

x=zeros(length(x));

plot3(x,y,z);

x=10.*ones(length(x));

plot3(x,y,z);

set(gca,'xtick',[],'xticklabel',[]);

set(gca,'ytick',[],'yticklabel',[]);

set(gca,'ztick',[],'zticklabel',[]);

  • 上一篇:有沒有參加過電子設計大賽的?
  • 下一篇:ebfp什麽意思
  • copyright 2024編程學習大全網