2007年6月10日 星期日

作業四(補)

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

邊長L=33+10=43
以三角形形心為旋轉中心
則半徑為
R=(43/2)/sind(60)
=24.8261
再執行程式:
for t=0:1080
clf;
x2=24.8261*cosd(90+1*t);
y2=24.8261*sind(90+1*t);
x3=24.8261*cosd(210+1*t);
y3=24.8261*sind(210+1*t);
x1=24.8261*cosd(330+1*t);
y1=24.8261*sind(330+1*t);
line([x1 x2],[y1 y2]);
line([x2 x3],[y2 y3]);
line([x3 x1],[y3 y1]);
%line([0 x1],[0 y1]);-----圓心至端點連線(可有可無)
%line([0 x2],[0 y2]);-----圓心至端點連線(可有可無)
%line([0 x3],[0 y3]);-----圓心至端點連線(可有可無)
xlabel('x軸');
ylabel('y軸');
title('Hit Ctrl+C to stop');
axis([-35 35 -35 35]);
pause(0.00000000001);
end
動畫:


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

執行程式
for t=0:360
clf;
x=10*cosd(t);
y=10*sind(t);
linkshape([0 0],[x,y],4);
line([x 15],[y 0],'color','g','linewidth',4);
axis([-20 20 -20 20]);
pause(0.00000000001);
end
綠色線條為彈簧
圖示:

動畫:


4.3
有一四連桿,其ABCD四點之座標分別為A(0,0);B(3,4);C(13,4);D(10,0),其單位為cm,若AD為固定桿,AB為第二桿BC與CD分別為第三與第四桿,各桿厚度分別為2cm,3cm,1.5cm,2cm。試繪出其相關位置。
若AB為主動迴轉桿,則其每間隔30度間之對應位置會如何?

試繪出其相關位置。
可推之
LAB=5
LBC=10
LCD=5
LAD=10
執行程式
linkshape([0 0],[10,0],2);
linkshape([0 0],[3,4],3);
linkshape([3 4],[13,4],1.5);
linkshape([13 4],[10,0],2);
axis([-7 17 -7 7]);
圖示:


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

執行程式
for th=0:30:360
bx=5*cosd(th);
by=5*sind(th);
cx=10+5*cosd(th);
cy=5*sind(th);
linkshape([0 0],[10,0],2);
linkshape([0 0],[bx,by],3);
linkshape([bx by],[cx,cy],1.5);
linkshape([cx cy],[10,0],2);
axis([-7 17 -7 7]);
end
圖示:

沒有留言: