2007年6月16日 星期六

作業四

B94611003
一.
以講義第二章之圖2.5之正三角形為例,試寫出matlab程式,分別就三個頂
點作動態旋轉(正三角形之邊長L=(你的學號末二碼)+10)。




















程式如下:

No=3;
P=No+10;

axis equal;
a=[P/2 0 -P/2 P/2];
b=[0 3^(1/2)*P/2 0 0];
T=line(a',b');
for i=0:1:120;
rotate(T,[0 0 1],3,[P/2 0 0]);
pause(0.01);
end;
for j=0:1:120;
rotate(T,[0 0 1],3,[0 3^(1/2)*P/2 0]);
pause(0.01);
end;
for k=0:1:120;
rotate(T,[0 0 1],3,[-P/2 0 0]);

pause(0.01);
end;

二.
設一連桿長度為10cm,厚度為4cm,繞於原點旋轉,其另一端則以一條彈簧固定於(15,0)cm的位置,試利用matlab寫出一程式,並繪圖顯示出該桿迴轉一圈時之位置。



















程式如下:

a=[0 10 10 0 0];
b=[2 2 -2 -2 2];
line(a,b);
for i=0:30:360
a1=x*cosd(i)+y*sind(i);
a2=[10*cosd(-i) 15];
b1=-x*sind(i)+y*cosd(i);
b2=[10*sind(-i) 0];

line(a1,b1);
line(a2,b2);
axis equal;
pause(0.01);
end;

三.
有一四連桿,其ABCD四點之座標分別為A(0,0);B(3,4);C(13,4);D(10,0),其單位為cm,若AD為固定桿,AB為第二桿BC與CD分別為第三與第四桿,各桿厚度分別為2cm,3cm,1.5cm,2cm。試繪出其相關位置。




















程式如下:
axis equal
linkshape([0 0],[3 4],3)
linkshape([3 4],[13 4],1.5)
linkshape([13 4],[10 0],2)
linkshape([10 0],[0 0],2)

若AB為主動迴轉桿,則其每間隔30度間之對應位置會如何?




















程式如下:
axis equal
for i=0:12
m=acos(3/5)
n=asin(4/5)
x=5*cos(m+i*pi/6)
y=5*sin(n+i*pi/6)
linkshape([0 0],[x y],2)
linkshape([x y],[10+x y],3)
linkshape([10+x y],[10 0],1.5)
linkshape([10 0],[0 0],2)
pause(0.01)
end

沒有留言: