国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

項目實戰(zhàn):基于雙緩沖機制下的屏幕保護(hù)程序

2018-06-04 03:41孫湛杭樓安琪武丹中國計量大學(xué)理學(xué)院信算系
數(shù)碼世界 2018年5期
關(guān)鍵詞:碰撞檢測頭像按鈕

孫湛杭 樓安琪 武丹 中國計量大學(xué)理學(xué)院信算系

項目一開始我們上網(wǎng)查閱一些資料,什么是屏幕保護(hù)程序呢?“如果在使用計算機進(jìn)行工作的過程中臨時有一段時間需要做一些其他的事情,從而中斷了對計算機的操作,這時就可以啟動屏幕保護(hù)程序,將屏幕上正在進(jìn)行的工作狀況畫面隱藏起來”,了解了是什么之后,我們開始思考實現(xiàn)的具體步驟。

1.總體思路

1,畫一個背景圖;

2,在圖片上添加一些元素比如樹葉,動物頭像等;

3,運用雙緩沖機制做出動態(tài)效果。

2.上機實戰(zhàn):

第一步:先把背景做好,黑色是默認(rèn)的,我們選取了一個相對淺一點的藍(lán)色。

用FillSolidRect函數(shù)可以填充背景色memDC.FillSolidRect(rect,RGB(175,238,238));默認(rèn)是黑色的。

第二步:在背景上添加一些可愛的圖像了,我們花了不少時間用各種曲線勾勒出一個憨態(tài)可掬的小熊貓和略微奇怪的小豬豬頭像。

畫左耳朵調(diào)用ellipse函數(shù):

pDC->Ellipse(point0.x+rect.Width()/2-48,point0.y+rect.Height()/2-5, point0.x+rect.Width()/2-12,point0.y+rect.Height()/2-41);

畫嘴巴的時候由于它不是一個規(guī)則的圖形,正好可以用到了bezier樣條曲線。

其中這些曲線的相對位置是要反復(fù)地實驗才能達(dá)到滿意的效果。如下圖:

圖1 屏幕顯示圖像

第三步:繪制動態(tài)圖。

通過查閱相關(guān)資料發(fā)現(xiàn)mfc中提供了菜單映射函數(shù)來啟動或者暫停定時器,定時發(fā)送一個時鐘脈沖來觸發(fā)動畫,通過SetTimer(1,15,NULL);啟動定時器,KillTimer(1);關(guān)閉定時器,之后通過碰撞檢測來觸發(fā)一些事件。

碰撞檢測:通過將動物頭像中心位置與客戶區(qū)上下左右邊界位置的比較,來檢測動物與邊界的碰撞,碰撞后移動方向取反;而兩個動物之間的碰撞則是根據(jù)他們的中心點直線距離來判斷,再根據(jù)他們碰撞的方向,來決定它們往何方向反彈;另外,在每一次碰撞后,碰撞熊貓的顏色也會隨機變化,增添了些許趣味性;

加減速功能:通過添加兩個菜單按鈕才實現(xiàn)此功能,定義每次點擊按鈕實現(xiàn)速度每次增加或減少2;并設(shè)置速度上限與下限,超過限制時,會彈出彈框提醒;通過一個速度函數(shù),控制器每次的移動距離間接改變其速度。

增加減少動物數(shù)量:此項功能也是通過添加了兩個按鈕來實現(xiàn),設(shè)置一個動物數(shù)量的變量,每次點擊時對變量進(jìn)行加1減1操作,然后刷新客戶區(qū)時,通過if條件語句選擇相應(yīng)的函數(shù)進(jìn)行動物繪制和邊界檢測;

3.結(jié)語

我們團隊通過這次項目,對圖形學(xué)這門課有了更深刻的認(rèn)識,體會到了計算機圖形學(xué)的實用之處,了解了項目開發(fā)的大致過程,既鞏固了所學(xué)知識,也培養(yǎng)了團隊合作意識,是一次很不錯的項目經(jīng)歷。

[1] 孔令德,計算機圖形學(xué)-基于MFC三維圖形開發(fā),清華大學(xué)出版社,2014:

猜你喜歡
碰撞檢測頭像按鈕
當(dāng)你面前有個按鈕
基于動力學(xué)補償?shù)臋C器人電機力矩誤差碰撞檢測
全新預(yù)測碰撞檢測系統(tǒng)
基于BIM的鐵路信號室外設(shè)備布置與碰撞檢測方法
你多久換一次頭像和昵稱
黃愛民 作品欣賞
基于Virtools的虛擬滅火系統(tǒng)碰撞檢測設(shè)計與實現(xiàn)
死循環(huán)
中國第一張馬列頭像股票
內(nèi)心不能碰的按鈕
英德市| 观塘区| 江都市| 阿拉善右旗| 海宁市| 徐州市| 乌拉特中旗| 林口县| 澜沧| 灵宝市| 民丰县| 徐汇区| 苍南县| 南充市| 龙里县| 江华| 望都县| 建平县| 同江市| 闵行区| 兰坪| 筠连县| 南召县| 西乌珠穆沁旗| 黄浦区| 文水县| 九龙城区| 拉萨市| 林州市| 通辽市| 福泉市| 卫辉市| 临西县| 黄冈市| 桃园县| 海伦市| 莲花县| 驻马店市| 京山县| 古丈县| 云浮市|