freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

本科-基于qt的貪吃蛇游戲設(shè)計與實現(xiàn)(文件)

2024-12-28 11:00 上一頁面

下一頁面
 

【正文】 ,40,30,30)。 //scoreNumbersetGeometry(370,30,70,50)。 timeLabelsetText(Time:)。 初始化界面函數(shù) iniWidget() void Snake::iniWidget() { timeNumber=new QLabel(00:00:00)。 } 通過這個函數(shù)實現(xiàn)了 QWidget 的簡單屬性設(shè)置,包括 QWidget 的聚 焦及大小,初始化了貪吃蛇的運動范圍,默認(rèn)設(shè)置游戲難度為禁止穿墻。hour=0。 //設(shè)置貪吃蛇活動區(qū)域大小 map_col=Width/step。 setFocusPolicy(Qt::StrongFocus)。易操作。 游戲相關(guān)信息顯示函數(shù),實現(xiàn)彈出對話框,提示游戲相關(guān)信息 。 時間處理函數(shù),用于實現(xiàn)顯示游戲的時間 。 實現(xiàn)蛇在當(dāng)前方向下向前移動一步,并調(diào)用判斷是否吃到食物函數(shù)、判斷是否死亡函數(shù) 。 繪圖事件,繪制貪吃蛇、食物 。 更新并顯示等級,每增加 10個食物,升一級,并提高速度 。 用于初始化游戲,設(shè)置初始速度、等級、已吃食物數(shù)量及定時器等,并 隨機(jī)得到 貪吃蛇和食物 的初始坐標(biāo) 。 判斷貪吃蛇是否吃到食物 。 用于添加各類控件,并設(shè)置控件的屬性 。 北京郵電大學(xué)畢業(yè)設(shè)計 19 Class Snake 的 構(gòu)造函數(shù) ,設(shè)置 QWidget 的初始化信息,貪吃蛇運動區(qū)域的大小,調(diào)用其他初始化函數(shù) 。 信息顯示界面中的按鈕點擊事件,發(fā)出信號,設(shè)置貪吃蛇運動界面的限制性條件 。當(dāng)你控制的貪吃蛇接觸到蛇的自身身體時或墻壁時,游戲結(jié)束。 數(shù)據(jù) 字典 設(shè)計中用到的數(shù)據(jù)的名稱、類型、含義如表 61 所示。節(jié)是蛇身上最小的單位。 蛇的移動 蛇的移動主要通過改變蛇的坐標(biāo)位置,然后通過重繪蛇的位置,這樣就實現(xiàn)了蛇的移動 ,具體的為:從構(gòu)成蛇身的所有節(jié)點的最后一點開始,依次將前一個節(jié)點的坐標(biāo)賦值為后一個節(jié)點,這樣就實現(xiàn)了蛇身的移動。這時 ,由于沒有清屏的原因 ,原來蛇的位置和新蛇的位置差一個單位 ,所以看起來蛇會多一節(jié)身體 ,應(yīng)將蛇的最后一節(jié)用背景覆蓋。這個程序的關(guān)鍵點是表示蛇的圖形以及蛇的移動。標(biāo)題畫面以后,還要為游戲的運行部分作初始化,包括繪制游戲運行時的背景,對游戲某些重要變量的初始化。 食物的出現(xiàn)是先確定一組隨機(jī)數(shù),再填充方格,食物的消失是由于使用了更新函數(shù),當(dāng)吃掉食物后就不再重畫本次食物,而是生成一組新的隨機(jī)數(shù),畫新的食物 。玩家可以通過鍵盤上下 左右控制游戲區(qū)中貪吃蛇的行動 ,當(dāng)蛇頭碰到食物(和食物接觸)后增加蛇身的長度 ,當(dāng)蛇碰到自己的身體或碰到墻壁時游戲結(jié)束。 ( 3)蛇可以運動,隨著難易程度的不同,蛇的速度也不同;在界 面里可以隨機(jī)產(chǎn)生一個食物,但應(yīng)該注意不能和蛇身體一致,然后當(dāng)蛇 移 動并吃掉這 個食物(覆蓋),北京郵電大學(xué)畢業(yè)設(shè)計 13 蛇的身體應(yīng)該相應(yīng)地增加,同時界面中顯示分?jǐn)?shù)一欄應(yīng)該相應(yīng)地增加分值;當(dāng)蛇在移動的過程中頭部碰到墻壁,游戲結(jié)束。 要解決的問題 ( 1) 可以用上、下、左、右鍵游戲控制蛇的運動方向,使之向著有食物的方向運動,并吞吃食物使身體增長,如果蛇在移動過程中 ,撞到墻壁或身體交叉蛇頭撞到自己的身體游戲結(jié)束。 游戲控制模塊: 主要完成游戲的開始、暫停、方向控制等功能。 用戶特點 由于本程序簡單易操作,交互性好,對用戶沒有什么特別要求。 北京郵電大學(xué)畢業(yè)設(shè)計 12 任務(wù)概述 目標(biāo) 在如今社會,人們的 工作學(xué)習(xí)壓力逐漸增大,生活節(jié)奏逐漸加快,大多數(shù)人沒有足夠的時間去休閑娛樂,放松自己。 貪吃蛇是家喻戶曉的益智類小游戲,選擇這個題目一是為了將自己的所學(xué)知識加以運用,二是一直以來貪吃蛇這個游戲就深深地吸引著我,它的制作方法對于以前的我而言都是很神秘的。因為它的特殊在于它能吸引人更深入,愛不釋手。 此需求分析說明書對貪吃蛇游戲軟件做了全面細(xì)致的用戶需求分析,明確所要開發(fā)的游戲軟件應(yīng)該具有的功能,并在此基礎(chǔ)上進(jìn)一步提出概要設(shè) 計說明書和完成后續(xù)和開發(fā)工作。系統(tǒng)設(shè)計將來自于需求分析的抽象規(guī)格說明轉(zhuǎn)變?yōu)槊嫦蛘鎸嵤澜绲脑O(shè)計。 可行性研究方法 通過對周邊的企業(yè)職員和大學(xué)生進(jìn)行問卷調(diào)查,發(fā)現(xiàn)大家在閑暇時間大都會選擇玩游戲來打發(fā)時間,而且偏向簡單靈活的小游戲。 Qt Creator 可帶來兩大關(guān)鍵益處:提供首個專為支持跨平臺開發(fā)而設(shè)計的集成開發(fā)環(huán)境 (IDE),并確保首次接觸 Qt 框架的開發(fā)人員能迅速上手和操作。 專業(yè)術(shù)語 Qt:是一個跨平臺的 C++圖形用戶界面應(yīng)用程序框架。用戶使用此游戲也很簡單,游戲主要使用上下左右控制貪食蛇吞食界面上出現(xiàn)的食物,簡單容易上手,同時能鍛煉用戶的操作及靈敏。我希望通過自己的所學(xué)知識把它剖析開來,真真正正的了解它的本質(zhì)和精髓。過去,人們主要是借助電影、電視、音樂等方式來娛樂。 該階段通過對系統(tǒng)目標(biāo)的初步調(diào)研和分析,提出可行性方案并進(jìn)行論證。 使用 Qt::ActionsContextMenu 比較簡潔,但是如果需要根據(jù)當(dāng)前菜單彈出的位置來定義不同菜單,或者像上個例子,在表格( QTableView 類型)表頭顯示右鍵菜單時,我需要知道是哪一列表頭被點擊,從而在后來調(diào)用 sort_ascend()排序函數(shù)時能夠根據(jù)不同列進(jìn)行不同排序策略,那么 Qt::ActionsContextMenu 就做不到了。但是對于 QAbstratScrollArea 及其子類例外,是對應(yīng)著其視口 viewport()的坐標(biāo)系。 它是發(fā)出 QWidget::customContextMenuRequested 信號,注意僅僅只是發(fā)信號,意味著要自己寫顯示右鍵菜單的 slot。繪制點 drawPoint()、繪制直線 drawLine()、繪制折線drawPolyLine()、繪制多點 drawPoints()、繪制多直線 drawLines()、繪制矩形區(qū)域drawRect()、繪制圓角區(qū)域 drawRoundRect()、繪制橢圓 drawEllipse()、繪制背景圖片 drawPixmap()等! 右鍵菜單 QWidget 及其子類都可有右鍵菜單,因為 QWidget 有以下兩個與右鍵菜單有關(guān)的函數(shù): Qt::ContextMenuPolicy contextMenuPolicy () const void setContextMenuPolicy ( Qt::ContextMenuPolicy policy ) 使用方式如下: 1)默認(rèn)是 Qt::DefaultContextMenu。 字體:用來繪制文字。三個主要設(shè)置是畫筆、畫刷、字體: 畫筆:用來畫線和邊緣。這意味著通??梢杂孟嗤拇a在屏幕上顯示數(shù)據(jù),也可以生成打印形式的報告。 二維圖形的繪制方法 Qt 的二維圖形引擎是基于 QPainter 類的, QPainter 既可以繪制幾何圖形,也可以繪制像素映射、圖像和文字。 注意當(dāng) QTimer 的父對象被銷毀時,它也會被自動銷毀。 QTimer 類 QTimer 類提供了定時器信號和單觸發(fā)定時器。時, 就會顯示出來,當(dāng) dialog 的初始化完成,運行到 splash. finish(amp。在 QT 下做界面設(shè)計的時候,其實無非就是利用上面三種布局管理器來將部件進(jìn)行分類和排列。 QWidgetItem 對象最終會將 QLayout 布局管理體系中的布局參數(shù)信息裝換、設(shè)置到它所代理的 QWidget 對象上 在 QT 下進(jìn)行界面設(shè)計,可以使用水平、垂直和 Grid 布局管理器來進(jìn)行。而后,通常通過QLayout::addWidget()等函數(shù),將 widget 添加到 Layout 類的布局管理體系中 。而 Widget 本身不負(fù)責(zé)子控件的布局管理。 Qt提供了一些類負(fù)責(zé)排列窗體上的控件,主要有 : QHBoxLayout, QVBoxLayout, QGridLayout, QStackLayout。這適用于那些槽,他們是類實現(xiàn)的一部分,不過其界面接口卻面向外部。同普通的 C++成員函數(shù)相同,槽函數(shù)也分為三種類型,即 public slots、 private slots 和 protected slots。當(dāng)和其關(guān)聯(lián)的信號被發(fā)射時,這個槽就會被調(diào)用。信號 槽機(jī)制完全獨立于所有 GUI 事件循環(huán)。總之,信號和槽構(gòu)造了一個強(qiáng)大的部件編程機(jī)制。槽用于接收信號,但他們是普通的對象成員函數(shù)。不過,在 QT中信號和槽取代了這些凌亂的函數(shù)指針,使得我們編寫這些通信程式更為簡潔明了。 北京郵電大學(xué)畢業(yè)設(shè)計 5 它具有: ( 1) 優(yōu)良的跨平臺特性 ( 2)面向?qū)ο? ( 3)豐富的 API ( 4)大量的開發(fā)文檔 ( 5) XML 支持 ( 6) Webkit 引擎的集成,可以實現(xiàn)本地界面與 Web 內(nèi)容的無縫集成 ( 7)用戶自定義控件 ( 8)方便性 ( 9)國際化 ( 10)高性能的工具 ( 11)優(yōu)越的繪畫功能 ( 12)繪制 2D/3D 圖形功能 信號和槽機(jī)制 信號和槽作為 QT 的核心機(jī)制在 QT 編程中有著廣泛的應(yīng)用,要精通 QT編程就必須對信號和槽有所了解。 2 開發(fā)環(huán)境及 關(guān)鍵技術(shù) Qt Qt 是諾基亞開發(fā)的一個跨平臺的 C++圖形用戶界面應(yīng)用程序框架。 強(qiáng)穩(wěn)定性,弱 交互性 嵌入式系統(tǒng)一旦開始運行就不需要用戶過多的干預(yù)、這就要負(fù)責(zé)系統(tǒng)管理的 EOS 具有較強(qiáng)的穩(wěn)定性。 強(qiáng)實時性 EOS 實時性一般較強(qiáng),可用于各種設(shè)備控制中。 操作系統(tǒng)相關(guān)性:不同的操作系統(tǒng)具有各自的軟件層次結(jié)構(gòu),因此,不同的操作系統(tǒng)具有特定的硬件接口形式。 中間層 硬件層與軟件層之間為中間層,也稱為硬件抽象層( Hardware Abstract Layer,HAL)或板級支持包( Board Support Package, BSP),它將系統(tǒng)上層軟件與底層硬件分離開來,使系統(tǒng)的底層驅(qū)動程序與硬件無 關(guān),上層軟件開發(fā)人員無需關(guān)心底層硬件的具體情況,根據(jù) BSP 層提供的接口即可進(jìn)行開發(fā)。 3. 通用設(shè)備接口和 I/O接口 嵌入式系統(tǒng)和外界交互需要一定形式的通用設(shè)備接口,如 A/D、 D/A、 I/O 等,外設(shè)通過和片外其他設(shè)備的或傳感器的連接來實現(xiàn)微處理器的輸入 /輸出功能。 ( 1) Cache Cache 是一種容量小、速度快的存儲器陣列它位于主存和嵌入式微處理器內(nèi)核之間,存放的是最近一段時間微處理器使用最多的程序代碼和數(shù)據(jù)。其中操作系統(tǒng)和應(yīng)用程序都可以固化在 ROM 中。執(zhí)行裝置也稱為被控對象,它可以接受嵌入式計算機(jī)系統(tǒng)發(fā)出的控制命令,執(zhí)行所規(guī)定的操作或任務(wù)。事實上,所有帶有數(shù)字接口的設(shè)備,如手表、微波爐、 錄像機(jī) 、汽車等,都使用嵌入式系統(tǒng),有些嵌入式系統(tǒng)還包含操作系統(tǒng),但大多數(shù)嵌入式系統(tǒng)都是由單個程序?qū)崿F(xiàn)整個控制邏輯。通常情況下,精心選擇的數(shù)據(jù)結(jié)構(gòu)可以帶來更高的運行或者存儲效率。 C++語言最有意義的方面是支持面向?qū)ο蟮奶卣鳌++語言簡潔靈活,運算符的數(shù)據(jù)結(jié)構(gòu)豐富、具有結(jié)構(gòu)化控制語句、程序執(zhí)行效率高,而且同時具有高級語言與匯編語言的優(yōu)點,與其它語言相比 , C語言具有可以直接訪問物理地址的優(yōu)點,與匯編語言相比又具有良好的可讀性的可移植性。 snake 目 錄 摘要 ..................................................................... i Abstract ................................................................ ii 緒論 ..................................................................... 6 1 嵌入式系統(tǒng) ............................................................ 2 嵌入式系統(tǒng) ...................................................... 2 組成 ............................................................ 2 硬件層 .................................................... 2 中間層 .................................................... 3 特點 ............................................................ 3 可裁剪性 .................................................. 3 強(qiáng)實時性 ...
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1