999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

Matlab 命令drawnow 在力學教學動畫演示中的應用

2021-04-12 09:30:08劉永勝冷家融張國福陳有權于曉慧
科技與創新 2021年7期
關鍵詞:可視化動畫教學

劉永勝,冷家融,張國福,陳有權,趙 悅,于曉慧

(長春工業大學人文信息學院機電工程學院,吉林 長春 130022)

1 引言

動畫演示在教學中具有直觀清晰、豐富多彩、生動有趣、激發學生學習興趣的作用。隨著計算機圖形技術(以下簡稱“CG”)的發展,越來越多的行業開始應用或者開發三維動畫技術,在眾多CG 領域中特別是動畫電影制作拍攝和游戲制作及開發中,三維動畫技術的應用更是屢見不鮮[1]。

本文僅以Matlab 軟件中的drawnow 命令在動畫制作中的應用為例,將其應用于力學教學中。這種動畫制作方法簡單實用、易操作、演示效果好,但卻往往被很多人忽略,在教學中應用的并不普遍。

2 Matlab 軟件drawnow 命令的二維動畫仿真應用

Matlab 是由美國Mathworks 公司研發的主要面對科學計算、可視化和交互式程序設計的高科技計算環境。Matlab擁有大量的庫函數,也允許用戶自定義函數[2]。它將數值分析、矩陣計算、科學數據可視化與非線性動態系統的建模和仿真等諸多強大功能集成在一個易于使用的視窗環境中,具有方便的數據可視化功能,可以將向量和矩陣用圖形表現出來,并對圖形進行標注和打印。新版Matlab 軟件增加了高層次的作圖功能,包括二維和三維的可視化、圖象處理、動畫和函數作圖[3]。

2.1 動畫制作基礎:直線運動動畫

用drawnow 命令作動畫的基本功是直線的運動動畫,畫直線的命令為h_L=plot([x1x2],[y1y2]),作動畫一定是要循環的,這是第一個關鍵點,第二個關鍵點是改變對象的什么屬性,有的是’xdata’、’ydata’,有的是改變’position’,直線需要改變的屬性是’xdata’、’ydata’,程序如下(以下increment 簡寫為inc):

for i=1:n

set(h_L,’xdata’,[x1+i*inc1,x2+i*inc2],’ydata’,...

[y1+i*inc3,y2+i*inc4]);

drawnow;pause(value1);

end

橫坐標和縱坐標的增量值若不同的話,直線除了移動還會帶有縮放,要注意x、y的坐標顯示范圍必須在正確的位置給定,否則可能出現直線不動,坐標系移動的現象。

2.2 制作字母(以F 為例)或數字的運動動畫

字母的顯示命令格式為:h_t=text(x,y,’F’),但作動畫時不是用的’xdata’,而是用的’position’,在循環中的語句格式為:

set(h_t,"position",[x1+i*inc1y1+i*inc2]),后面的 drawnow 命令是可有可無的。

根據以上知識,就能夠作出一個力(并帶有字母F)移動時的動畫了,力的移動在力學中是常見的,箭頭可以用三條直線表示,一條長線兩條短線,有了以上知識,如果能做出矩形縮放的話,桿件拉伸或壓縮的動畫就可做出了。

2.3 制作矩形縮放動畫

矩形畫法:h_r=rectangle(gca,"position",[x0y0 w h]),矩形縮放指令:for i=1:200

set(h_r,"position",...

[x0+i*inc1y0+i*inc2 w+i*2*inc1 h+i*2*inc2]);

drawnow;pause(0.01);

end

3 “曲線”軌跡的應用

3.1 用一個標記點帶畫出任意曲線

此功能十分實用,可以像一支筆一樣,畫出任意曲線。以畫出圓曲線為例,首先要畫出標記點:

h_mb=line("marker","o","xdata",1,"ydata",0);

for i=0:200

set(h_mb,"xdata",cos(i*pi/100),

"ydata",sin(i*pi/100));

drawnow,pause(0.015);

j=i-1:i;

line(cos(j*pi/100),sin(j*pi/100),...

"color",[0.8 0.1 0.3],"linewidth",2);

end

注意標記點的起始位置與正弦和余弦的初相位角必須協調一致,相位角為零時對應的起始位置為(1,0),當角度為正時,逆時針畫曲線,角度為負時,順時針畫曲線。

3.2 直線彎曲成為曲線

假設開始的直線為x軸上2~5,向下彎曲成拋物線,頂點在(3.5,y0),x軸上的截距為2 和5,截距中點x坐標為xm 截距的一半為a,拋物線方程為:(x-xm)^2=-a^2/y0*(y-y0);即:y=y0*(1-(x-xm).^2/a^2);

y0=0;

x=linspace(2,5,50);y=y0*(1-(x-3.5).^2/2.25);

h_Lwq=plot(x,y,"color",[0.8 0.4 0.3],"linewidth",5);

axis([0 6-0.5 0.2]);

for i=0:40

y0=-i*0.005;

set(h_Lwq,"ydata",y0*(1-(x-3.5).^2/2.25));

drawnow;pause(0.05);

end

由直線變為曲線的動畫演示如圖1 所示。

圖1 由直線變為曲線的動畫演示圖

3.3 構件基本變形動畫

材料力學是工程構件和機械元件承載能力的基礎性學科,也是固體力學中具有入門性質的分支[4]。筆者運用以上所述知識制作了大量的力學教學演示動畫,最典型的是材料力學中的構件基本變形動畫,以及曲柄連桿機構的運動。構件基本變形動畫演示如圖2 所示。

4 結語

筆者們在力學教學中引用了Matlab 軟件的基礎應用部分,做到了計算編程化、公式函數化、演示用動畫、機構仿真化、復習查詢化,同時應用Matlab 軟件,制作了大量的運動動畫演示效果圖,并廣泛地應用于力學教學實踐。drawnow 命令在Matlab 繪圖中具有極為重要的作用,若沒有drawnow 命令,Matlab 要等任務序列執行完后才能去刷新屏幕。一般說來,在實時動畫中,為更新屏幕,drawnow是必須的[5]。drawnow 命令雖然具有制作運動動畫的功能,但也不可能解決制作動畫過程所有的問題。旋轉命令rotate也具有此項功能。另外,人們往往會把動畫演示作為GUI的一個部分,以及力學的計算編程等,都具有實際的應用價值。

圖2 構件基本變形動畫演示圖

猜你喜歡
可視化動畫教學
基于CiteSpace的足三里穴研究可視化分析
基于Power BI的油田注水運行動態分析與可視化展示
云南化工(2021年8期)2021-12-21 06:37:54
做個動畫給你看
動畫發展史
微課讓高中數學教學更高效
甘肅教育(2020年14期)2020-09-11 07:57:50
基于CGAL和OpenGL的海底地形三維可視化
我的動畫夢
文苑(2019年22期)2019-12-07 05:28:56
“融評”:黨媒評論的可視化創新
傳媒評論(2019年4期)2019-07-13 05:49:14
“自我診斷表”在高中數學教學中的應用
東方教育(2017年19期)2017-12-05 15:14:48
對外漢語教學中“想”和“要”的比較
唐山文學(2016年2期)2017-01-15 14:03:59
主站蜘蛛池模板: 免费观看亚洲人成网站| 国产视频自拍一区| 91亚瑟视频| 日本中文字幕久久网站| 欧美日韩一区二区三区四区在线观看 | 亚洲精品777| 国产中文在线亚洲精品官网| 久久国产乱子| 91在线丝袜| 国产福利微拍精品一区二区| 亚洲日韩久久综合中文字幕| 日本免费高清一区| 欧美伦理一区| 99免费在线观看视频| 久久精品aⅴ无码中文字幕| 亚洲高清免费在线观看| 国产欧美专区在线观看| 久久永久免费人妻精品| 全免费a级毛片免费看不卡| 在线看国产精品| 久久永久视频| 在线看片国产| 国产男女免费视频| 久久久久亚洲av成人网人人软件| 久久久久久久97| 日本精品影院| 全部免费特黄特色大片视频| 亚洲国产天堂久久九九九| 国产精品成人免费视频99| 国产在线视频自拍| 国产成人精品免费av| 亚洲swag精品自拍一区| 不卡色老大久久综合网| 日本午夜精品一本在线观看| 亚洲免费人成影院| 国产一区二区精品福利| 亚洲欧美激情小说另类| 免费日韩在线视频| 国产原创第一页在线观看| 国产视频大全| 亚洲综合极品香蕉久久网| 国产精品va免费视频| 国产成人免费视频精品一区二区| www.亚洲天堂| 91麻豆精品视频| 日韩免费毛片视频| 国产亚洲精品91| 色综合天天视频在线观看| 亚洲日韩精品无码专区97| 亚洲三级片在线看| 久久国产免费观看| 国产精品久久久久无码网站| 欧美三级自拍| 日韩在线成年视频人网站观看| 国产乱子伦视频三区| 中文字幕首页系列人妻| 国产成年女人特黄特色大片免费| 国产亚洲欧美日韩在线一区| 亚洲欧美一区二区三区蜜芽| 99视频只有精品| 国产精品三区四区| 国产精品永久在线| 国产欧美综合在线观看第七页| 亚洲成人高清在线观看| 99热这里只有精品免费| 欧美精品成人| 国产一区二区三区在线精品专区 | 亚洲成在线观看 | AV不卡国产在线观看| 青青操国产| 在线观看亚洲天堂| 精品国产福利在线| 韩国v欧美v亚洲v日本v| 国产精品3p视频| 成人免费一级片| 国产成人av大片在线播放| 亚洲人成网站在线观看播放不卡| 色首页AV在线| 日韩免费毛片| 欧美在线网| 国产精品久久精品| 久久久受www免费人成|