




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 計(jì)算機(jī)學(xué)院課程設(shè)計(jì)專 業(yè): 計(jì)算機(jī)應(yīng)用技術(shù) 課程名稱: 3G開(kāi)發(fā)根底 課題名稱: 臺(tái)球游戲系統(tǒng) 教 師: 學(xué) 號(hào): 姓 名: 前言Android是基于 HYPERLINK :/baike.baidu /view/1634.htm Linux開(kāi)放性內(nèi)核的 HYPERLINK :/baike.baidu /view/880.htm 操作系統(tǒng),是 HYPERLINK :/baike.baidu /view/105.htm Google公司在2007年11月5日公布的 操作系統(tǒng)。早期由原名為“Android的公司開(kāi)發(fā),谷歌在2005年收購(gòu)“后,繼續(xù)進(jìn)行對(duì)Android系統(tǒng)開(kāi)發(fā)運(yùn)營(yíng),它采用了軟件堆層的
2、架構(gòu),主要分為三局部。底層Linux內(nèi)核只提供根本功能,其他的應(yīng)用 HYPERLINK :/baike.baidu /view/37.htm 軟件那么由各公司自行開(kāi)發(fā),局部程序以Java編寫(xiě)。 2021年初數(shù)據(jù)顯示,僅正式上市兩年的操作系統(tǒng)Android已經(jīng)超越稱霸十年的塞班系統(tǒng),使之躍居全球最受歡送的智能 平臺(tái)?,F(xiàn)在,Android系統(tǒng)不但應(yīng)用于智能 ,也在 HYPERLINK :/baike.baidu /view/74538.htm 平板電腦市場(chǎng)急速擴(kuò)張。綜合本學(xué)期的學(xué)習(xí),開(kāi)發(fā)一款基于android環(huán)境的臺(tái)球游戲,熟練掌握android應(yīng)用開(kāi)發(fā)。課程設(shè)計(jì)目的1、熟悉Java開(kāi)發(fā)環(huán)境,熟悉
3、用Java完成一個(gè)應(yīng)用程序的設(shè)計(jì)過(guò)程,掌握有關(guān)編 輯、調(diào)試和整合程序的方法和技巧。2、通過(guò)此設(shè)計(jì),了解Java語(yǔ)言的特點(diǎn);熟悉Java程序的編寫(xiě);體會(huì)Java語(yǔ)言在問(wèn)題求解中的特點(diǎn)。3、總結(jié)學(xué)習(xí)Java語(yǔ)言的心得和體會(huì),并對(duì)Java課程設(shè)置提出自己的意見(jiàn)和建議。熟悉android開(kāi)發(fā)環(huán)境,熟悉用java語(yǔ)言實(shí)現(xiàn)一個(gè)安卓程序的設(shè)計(jì)過(guò)程,掌握有關(guān)的設(shè)計(jì)技巧熟悉android開(kāi)發(fā)環(huán)境,熟悉用java語(yǔ)言實(shí)現(xiàn)一個(gè)安卓程序的設(shè)計(jì)過(guò)程,掌握有關(guān)的設(shè)計(jì)技巧通過(guò)此課程設(shè)計(jì),了解android系統(tǒng)的特點(diǎn),掌握android相關(guān)的知識(shí)點(diǎn)。總結(jié)學(xué)習(xí)android開(kāi)發(fā)環(huán)境,熟悉用java語(yǔ)言實(shí)現(xiàn)一個(gè)安卓程序的設(shè)計(jì)過(guò)程
4、,掌握有關(guān)的設(shè)計(jì)技巧總結(jié)學(xué)習(xí)android的心得和體會(huì),并且android課程提出自己的意見(jiàn)和建議,從中得到自己的學(xué)習(xí)心得和體會(huì)。設(shè)計(jì)任務(wù)及要求根據(jù)android課程學(xué)習(xí),將 臺(tái)球游戲設(shè)計(jì)的總體設(shè)計(jì)框架以及詳細(xì)的設(shè)計(jì)和實(shí)現(xiàn)過(guò)程通老師講解和自己的理解將其全部以課程設(shè)計(jì)的方式書(shū)寫(xiě)出來(lái)。總體設(shè)計(jì)框架臺(tái)球游戲歡送界面 開(kāi)始界面退出 幫助設(shè)置開(kāi)始游戲關(guān)于倒計(jì)時(shí)模式練習(xí)模式排行榜詳細(xì)設(shè)計(jì)和實(shí)現(xiàn)過(guò)程配置開(kāi)發(fā)環(huán)境1、 安裝JDK首先將下載的jdk-6u24-windows-i586安裝到C:下 2、配置環(huán)境變量選擇計(jì)算機(jī)右鍵屬性高級(jí)設(shè)置環(huán)境變量CLASSPATH : .;%JAVA_HOME%lib;%JAV
5、A_HOME%libdt.jar;%JAVA_HOME%libtools.jar;JAVA_HOME : C:Program Files(x86)Javajdk_24Path : %JAVA_HOME%bin;將以上三個(gè)配置到環(huán)境變量中3、安裝eclipse雙擊eclipse快捷方式圖標(biāo),它會(huì)在你選擇的路徑下生成一個(gè)workspace文件夾,以后的工程都在這里面。安裝ADT 離線安裝ADT: 點(diǎn)擊eclipse上的help進(jìn)入如下圖,點(diǎn)擊add將ADT導(dǎo)入假設(shè)安裝成功那么會(huì)出現(xiàn)如下圖的navigate下面 圖標(biāo)。安裝SDK點(diǎn)擊window進(jìn)入preference,然后點(diǎn)擊android,在SD
6、K Location中導(dǎo)入SDK,安裝成功之后如下圖。 臺(tái)球游戲是根據(jù)人們?nèi)粘V写蚺_(tái)球的模式進(jìn)行模擬式的通過(guò)點(diǎn)擊按鈕來(lái)調(diào)準(zhǔn)角度并出擊球桿。選擇【開(kāi)始游戲】之后可選擇【倒計(jì)時(shí)模式】和【練習(xí)模式】進(jìn)行玩臺(tái)球游戲,另外還可以點(diǎn)擊【排行榜】查看分?jǐn)?shù)情況,倒計(jì)時(shí)模式是在一定的時(shí)間進(jìn)行玩游戲,練習(xí)模式是對(duì)于初次玩臺(tái)球游戲的玩家或者不熟練的玩家。WhatMessageConstantMainMenuViewGameActivityFailViewHighScoreWellcomeViewWinViewAboutViewChoiceViewHelpViewSoundControlViewBallBallGoT
7、hreadCueGameViewGameViewDrawThreadKeyThreadStrengthBarTableTimerTimeRunningThreadVirtualButtonCueAnimateThreadImageButtonExISwitchButtonSwitchButtonCollisionUtilColorUtilPicLoadUtilScreenScaleResultScreenScaleUtil 各個(gè)類功能清單文件名主要功能備注定義臺(tái)球所需工具主體類Main方法Surface所需的常量類球桿變形按鈕角度調(diào)整按鈕AboutView,java關(guān)于界面選項(xiàng)菜單界面幫助界面
8、聲音控制界面臺(tái)球桌球運(yùn)動(dòng)球桿倒計(jì)時(shí)間游戲界面桌球運(yùn)動(dòng)畫(huà)面監(jiān)聽(tīng)觸控按鍵線程類力度條球臺(tái)計(jì)時(shí)器倒計(jì)時(shí)線程類虛擬按鈕類游戲失敗界面分?jǐn)?shù)記錄界面主界面歡送界面游戲勝利界面進(jìn)行碰撞檢測(cè)和物理計(jì)算工具類顏色工具類系統(tǒng)當(dāng)前日期工具類圖片工具類橫豎屏幕工具類計(jì)算縮放情況工具類 抽象類WhatMessage的描述public class WhatMessage public static final int GOTO_WELLCOME_VIEW=0; /歡送界面 public static final int GOTO_MAIN_MENU_VIEW=1 ; /主菜單界面 public static final
9、int GOTO_GAME_VIEW=2;/游戲界面 public static final int GOTO_SOUND_CONTORL_VIEW=3; /聲音控制界面 public static final int GOTO_WIN_VIEW=4;/勝利界面 public static final int GOTO_FAIL_VIEW=5;/失敗界面 public static final int GOTO_HIGH_SCORE_VIEW=6; /排行榜界面 public static final int GOTO_HELP_VIEW=7; /幫助界面 public static fina
10、l int GOTO_ABOUT_VIEW=8; /關(guān)于界面 public static final int GOTO_CHOICE_VIEW=9; /選擇界面 public static final int OVER_GAME=10; /游戲結(jié)束這個(gè)類主要是標(biāo)識(shí)所有SurfaceView的常量,這些界面的常量用數(shù)字0至10表示的好處是:在后面的編程過(guò)程中更快捷,而且簡(jiǎn)單明了。界面設(shè)置public class AboutView extends ViewGroupPaint paint;/畫(huà)筆引用Bitmap bgBitmap;/背景圖片Bitmap bmp;/文字的圖片float bmpx;
11、/文字位置public AboutView(GameActivity activity) super(activity);setWillNotDraw(false);paint=new Paint();/創(chuàng)立畫(huà)筆paint.setAntiAlias(true);/翻開(kāi)抗鋸齒initBitmap();/初始化位圖資源/確定View的大小Overrideprotected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) this.setMeasuredDimension(bgBitmap.getWidth(), bgBitma
12、p.getHeight();/確定各子控件的位置與大小,調(diào)用子控件的layout函數(shù)進(jìn)行Overrideprotected void onLayout(boolean changed, int l, int t, int r, int b) /顯示函數(shù)Overridepublic void onDraw(Canvas canvas) canvas.drawBitmap(bgBitmap, 0, 0, paint);canvas.drawBitmap(bmp, bmpx+Constant.X_OFFSET, Constant.BMP_Y+Constant.Y_OFFSET, paint);/加載
13、圖片的方法public void initBitmap()bgBitmap=BitmapFactory.decodeResource(this.getResources(), R.drawable.help);bmp=BitmapFactory.decodeResource(this.getResources(), R.drawable.bmp0);bgBitmap=PicLoadUtil.scaleToFitFullScreen(bgBitmap, Constant.wRatio, Constant.hRatio);bmp=PicLoadUtil.scaleToFit(bmp, Consta
14、nt.ssr.ratio);/初始化圖片的位置bmpx=(Constant.SCREEN_WIDTH-bmp.getWidth()/2;界面設(shè)置的類繼承ViewGroup,使用onMeasure確定view大小、onLayo確定各個(gè)子控件的位置與大小,onDraw方法顯示函數(shù),initBitmao方法加載圖片。監(jiān)聽(tīng)器public class KeyThread extends Thread private boolean flag=true;GameView gameView;private int sleepSpan=40;private float changeSpeedTime=80f;
15、/改變速度的時(shí)間點(diǎn)public KeyThread(GameView gameView)this.gameView=gameView;Overridepublic void run()while(flag)if(!(gameView.keyState&0 x20)=0)/第6位是1,可以改變按下按鈕時(shí)間gameView.btnPressTime+=;if(!(gameView.keyState&0 x1)=0)/和00001按位或,判斷第1位是否為1,標(biāo)志向左移if(gameView.btnPressTimechangeSpeedTime)/如果按鍵時(shí)間缺乏gameView.cue.rotat
16、eLeftSlowly();/將球桿慢速左轉(zhuǎn)else/如果按鍵超過(guò)規(guī)定時(shí)間gameView.cue.rotateLeftFast();/將大炮快速左轉(zhuǎn)else if(!(gameView.keyState&0 x2)=0)/和00010按位或,判斷第2位是否為1,標(biāo)志向右移if(gameView.btnPressTimechangeSpeedTime)/如果按鍵時(shí)間缺乏gameView.cue.rotateRightSlowly();/將球桿慢速右轉(zhuǎn)else/如果按鍵超過(guò)規(guī)定時(shí)間gameView.cue.rotateRightFast();/將大炮快速右轉(zhuǎn)try Thread.sleep(sl
17、eepSpan);/睡眠指定毫秒數(shù) catch(Exception e) e.printStackTrace();/打印堆棧信息 public void setFlag(boolean flag) this.flag = flag;這監(jiān)聽(tīng)器是起監(jiān)聽(tīng)作用的線程類,這段代碼是監(jiān)聽(tīng)觸控按鍵的線程類,這個(gè)線程是對(duì)球桿角度偏移進(jìn)行控制。線程間通信Handler myHandler = new Handler()/處理各個(gè)SurfaceView發(fā)送的消息 public void handleMessage(Message msg) switch(msg.what) case WhatMessage.GOT
18、O_MAIN_MENU_VIEW: gotoMainMenuView(); break; case WhatMessage.GOTO_GAME_VIEW: gotoGameView(); break; case WhatMessage.GOTO_SOUND_CONTORL_VIEW: gotoSoundControlView(); break; case WhatMessage.GOTO_WIN_VIEW: gotoWinView(); break; case WhatMessage.GOTO_FAIL_VIEW: gotoFailView(); break; case WhatMessage
19、.GOTO_HIGH_SCORE_VIEW: gotoHighScoreView(); break; case WhatMessage.GOTO_WELLCOME_VIEW: gotoWellcomeView(); break; case WhatMessage.GOTO_HELP_VIEW: gotoHelpView(); break; case WhatMessage.GOTO_ABOUT_VIEW: gotoAboutView(); break; case WhatMessage.GOTO_CHOICE_VIEW: gotoChoiceView(); break; case WhatMe
20、ssage.OVER_GAME: goToOverView(); break; ;線程間的通信需要用到Handler來(lái)發(fā)送消息。線程之間的通信的原理是,線程通過(guò)Handler將消息發(fā)送出去,發(fā)出去的消息就會(huì)到進(jìn)入到MessageQueue中,然后再通過(guò)Looper將消息循環(huán)的發(fā)送出去。是Messge對(duì)象的屬性,起到標(biāo)示作用。自定義按鈕public class ImageButtonEx extends Button protected Bitmap btBitmap;protected boolean bButtonPressed=false;public ImageButtonEx(Cont
21、ext context)super(context);public ImageButtonEx(Context context,Bitmap btBitmap)super(context);this.btBitmap=btBitmap;setBackgroundDrawable(null); 自定義按鈕的好處是,可以根據(jù)自己的喜愛(ài)和需要來(lái)繪制按鈕,可以使你的游戲界面做得更漂亮,吸引群眾的眼球。在這個(gè)游戲中的自定義按鈕需要用到圖形圖像處理中的畫(huà)布Canvas、畫(huà)筆Paint和位圖Bitmap。定時(shí)器/繪制時(shí)間的方法public void drawSelf(Canvas canvas,Paint
22、paint)int second=this.leftSecond%60;int minute=this.leftSecond/60;/繪制秒鐘drawNumberBitmap(second,numberBitmaps,endX+Constant.X_OFFSET,endY+Constant.Y_OFFSET,canvas, paint);/繪制分隔符int secondLength=(second+).length()=1 ? (second+).length()+1 : (second+).length();float breakMarkX=endX-secondLength*numberW
23、idth-breakMarkWidth;float breakMarkY=endY;canvas.drawBitmap(breakMarkBitmap, breakMarkX+Constant.X_OFFSET, breakMarkY+Constant.Y_OFFSET,paint);/繪制時(shí)間分隔符圖片/繪制分鐘float miniteEndX=breakMarkX;float miniteEndY=endY;drawNumberBitmap(minute,numberBitmaps,miniteEndX+Constant.X_OFFSET,miniteEndY+Constant.Y_OFF
24、SET,canvas, paint); 數(shù)據(jù)存儲(chǔ)/翻開(kāi)或創(chuàng)立數(shù)據(jù)庫(kù)的方法 public void openOrCreateDatabase() try ( /data/data/com.bn.d2.bill/mydb, /數(shù)據(jù)庫(kù)所在路徑 null, /CursorFactory SQLiteDatabase.OPEN_READWRITE|SQLiteDatabase.CREATE_IF_NECESSARY /讀寫(xiě)、假設(shè)不存在那么創(chuàng)立 ); String sql=create table if not exists highScore + ( + score integer, + date va
25、rchar(20) + ); sld.execSQL(sql); catch(Exception e) Toast.makeText(this, 數(shù)據(jù)庫(kù)錯(cuò)誤:+e.toString(), Toast.LENGTH_SHORT).show(); /關(guān)閉數(shù)據(jù)庫(kù)的方法 public void closeDatabase() try sld.close(); catch(Exception e)Toast.makeText(this, 數(shù)據(jù)庫(kù)錯(cuò)誤:+e.toString(), Toast.LENGTH_SHORT).show(); /插入記錄的方法 public void insert(int sco
26、re,String date) try String sql=insert into highScore values(+score+,+date+); sld.execSQL(sql); sld.close(); catch(Exception e)Toast.makeText(this, 數(shù)據(jù)庫(kù)錯(cuò)誤:+e.toString(), Toast.LENGTH_SHORT).show(); /查詢的方法 public String query(int posFrom,int length)/開(kāi)始的位置,要查尋的記錄條數(shù) StringBuilder sb=new StringBuilder();/
27、要返回的結(jié)果 Cursor cur=null; openOrCreateDatabase(); String sql=select score,date from highScore order by score desc; cur=sld.rawQuery(sql, null); try cur.moveToPosition(posFrom);/將游標(biāo)移動(dòng)到指定的開(kāi)始位置 int count=0;/當(dāng)前查詢記錄條數(shù) while(cur.moveToNext()&countlength) int score=cur.getInt(0); String date=cur.getString(1)
28、; sb.append(score); sb.append(/); sb.append(date); sb.append(/);/將記錄用/分隔開(kāi) count+; catch(Exception e)Toast.makeText(this, 數(shù)據(jù)庫(kù)錯(cuò)誤:+e.toString(), Toast.LENGTH_SHORT).show();finallycur.close();closeDatabase(); /轉(zhuǎn)換成字符,并返回return sb.toString(); /得到數(shù)據(jù)庫(kù)中記錄條數(shù)的方法 public int getRowCount() int result=0; Cursor cu
29、r=null; openOrCreateDatabase(); try String sql=select count(score) from highScore; cur=sld.rawQuery(sql, null); if(cur.moveToNext() result=cur.getInt(0); catch(Exception e)Toast.makeText(this, 數(shù)據(jù)庫(kù)錯(cuò)誤:+e.toString(), Toast.LENGTH_SHORT).show();finallycur.close();closeDatabase(); return result; 這個(gè)游戲中的數(shù)據(jù)
30、存儲(chǔ)用到的是SQLite數(shù)據(jù)庫(kù)。SQLite是一個(gè)開(kāi)源的嵌入式關(guān)系數(shù)據(jù)庫(kù),它可以減少應(yīng)用程序管理數(shù)據(jù)的開(kāi)銷,可移植性好,很容易使用,它本身很小,但卻高效而且可靠。嵌入式數(shù)據(jù)庫(kù)的一大好處是在程序內(nèi)部不需要網(wǎng)絡(luò)配置,也不需要管理。使用SQLite數(shù)據(jù)存儲(chǔ)需要熟悉SQL語(yǔ)句的使用。使用SQLite數(shù)據(jù)庫(kù)首先需要?jiǎng)?chuàng)立數(shù)據(jù)庫(kù),相關(guān)記錄就會(huì)在數(shù)據(jù)庫(kù)中。多線程 public void run() for(int i=0;itotalSleepTime/sleepSpan;i+) SurfaceHolder myholder=WinView.this.getHolder(); Canvas canvas =
31、myholder.lockCanvas(); try synchronized (myholder) render(canvas); finally if (canvas != null) myholder.unlockCanvasAndPost(canvas); try Thread.sleep(sleepSpan); catch(Exception e) e.printStackTrace(); 該run方法是實(shí)現(xiàn)Runnable 接口的。關(guān)鍵字synchronized用來(lái)與對(duì)象的互斥鎖聯(lián)系。當(dāng)某個(gè)對(duì)象用synchronized修飾時(shí),說(shuō)明該對(duì)象在任一時(shí)刻只能有一個(gè)線程訪問(wèn)。當(dāng)線程執(zhí)行到s
32、ynchronized塊結(jié)束時(shí),需要釋放對(duì)象鎖。當(dāng)在synchronized塊中遇到break,return或拋出Exception,那么自動(dòng)釋放對(duì)象鎖。信息提示Toast.makeText(this, 數(shù)據(jù)庫(kù)錯(cuò)誤:+e.toString(), Toast.LENGTH_SHORT).show();Toast(提示)是Android中用來(lái)顯示提示消息的一種機(jī)制。Toast沒(méi)有焦點(diǎn)且顯示的時(shí)間有限,不會(huì)打斷用戶的當(dāng)前操作,不能與用戶交互,顯示一段時(shí)間后會(huì)自動(dòng)消失。顯示時(shí)長(zhǎng)有有兩個(gè):一個(gè)是Toast.LENGTH_SHORT短時(shí)間,另一種是Toast.LENGTH_LONG(長(zhǎng)時(shí)間)。布局管理 此
33、次布局用到的是線性布局,排列方式是相對(duì)于 屏幕垂直排布,寬高占滿整個(gè) 屏幕,文字大小的高是包裹內(nèi)容,寬是占滿 屏幕。設(shè)計(jì)小結(jié) 在本次課程設(shè)計(jì)中,我學(xué)到了很多的知識(shí),我個(gè)人認(rèn)為這個(gè)臺(tái)球游戲編程需要一定的物理和數(shù)學(xué)根底,并且頭腦要保持時(shí)刻清醒,要不然很容易繞暈。在對(duì)Android的學(xué)習(xí)上是我學(xué)會(huì)了怎么將學(xué)到的理論知識(shí)用到實(shí)踐中去,改變了過(guò)去的學(xué)習(xí)方法和學(xué)習(xí)態(tài)度,找到了一門(mén)自己很喜歡的學(xué)科。在這次課程設(shè)計(jì)中本課程設(shè)計(jì)中,深深的感受到了一個(gè)人力量的薄弱,了解到了在完成一個(gè)完整的工程上團(tuán)隊(duì)的重要性,在實(shí)際的程序開(kāi)發(fā)中,團(tuán)隊(duì)的力量往往比個(gè)人力量之和要大上很多,并且在今后的開(kāi)發(fā)中,我們都將是以團(tuán)隊(duì)的形式展開(kāi)
34、工作的,所以我們應(yīng)該在現(xiàn)在學(xué)習(xí)的時(shí)候養(yǎng)成一種良好的團(tuán)隊(duì)精神,以為將來(lái)的開(kāi)發(fā)打下一頂?shù)母?。?nèi)部資料請(qǐng)勿外傳9JWKffwvG#tYM*Jg&6a*CZ7H$dq8KqqfHVZFedswSyXTy#&QA9wkxFyeQ!djs#XuyUP2kNXpRWXmA&UE9aQGn8xp$R#͑GxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqv$UE9wEwZ#QcUE%&qYpEh5pD
35、x2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmUE9aQGn8xp$R#͑GxGjqv$UE9wEwZ#QcUE%&qYpEh
36、5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK
37、!zn%Mz849GxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z8vG#tYM*Jg&6a*CZ7H$dq8KqqfHVZFedswSyXTy#&QA9wkxFyeQ!djs#XuyUP2kNXpRWXmA&UE9aQGn8xp$R#͑GxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxG89AmUE9a
38、QGn8xp$R#͑GxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmY
39、WpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z8vG#tYM*Jg&6a*CZ7H$dq8KqqfHVZFedswSyXTy#&QA9wkxFyeQ!djs#XuyUP2kNXpRWXmA&UE9aQGn8xp$R#͑GxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5ux
40、Y7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ks
41、v*3tnGK8!z89AmUE9aQGn8xp$R#͑GxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#
42、&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNuGK8!z89AmYWpaz
43、adNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm
44、6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqv$U*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89Amv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8
45、!z89AmYWpazadNu#KN&MuWFA5uxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqv$U*3tnGK8
46、!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz84!z89Amv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2
47、zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqv$U*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP
48、$vSTT#&ksv*3tnGK8!z89AmYWv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqv$U*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNuGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849
49、GxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWv*3tnGK8!z89A
50、mYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqvadNu#KN&MuWFA5uxY7JnD6YWRrWwcv
51、R9CpbK!zn%Mz849GxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89Am
52、YWv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqv$U*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89Amv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxGjq
53、v$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqv$U*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7J
54、nD6YWRrWwcvR9CpbK!zn%Mz84!z89Amv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3
55、tnGK8!z89AmYWv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqv$U*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWv*3tn
56、GK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%MadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*adNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGj
57、qv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWv*3tnGK8!z89AmYWp
58、azadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqv$U*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89Amv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxGjqv$UE9wEwZ#QcUE%&qYp
59、Eh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqv$U*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!z
60、n%Mz84!z89Amv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWpazadNu#KN&MuWFA5uxY7JnD6YWRrWwcvR9CpbK!zn%Mz849GxGjqv$UE9wEwZ#QcUE%&qYpEh5pDx2zVkum&gTXRm6X4NGpP$vSTT#&ksv*3tnGK8!z89AmYWv*3tnG
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030中國(guó)硼酸鋰(草酸酯)行業(yè)市場(chǎng)發(fā)展趨勢(shì)與前景展望戰(zhàn)略研究報(bào)告
- 2025-2030中國(guó)硅酸鈣行業(yè)市場(chǎng)發(fā)展趨勢(shì)與前景展望戰(zhàn)略研究報(bào)告
- 2025-2030中國(guó)礦山機(jī)械行業(yè)市場(chǎng)現(xiàn)狀供需分析及重點(diǎn)企業(yè)投資評(píng)估規(guī)劃分析研究報(bào)告
- 2025-2030中國(guó)睡袍市場(chǎng)深度調(diào)查研究報(bào)告
- 2025年網(wǎng)門(mén)鎖項(xiàng)目可行性研究報(bào)告
- 2025-2030中國(guó)電梯導(dǎo)軌型鋼行業(yè)發(fā)展分析及發(fā)展趨勢(shì)預(yù)測(cè)報(bào)告
- 2025年纖維纏繞空壓膠管項(xiàng)目可行性研究報(bào)告
- 2025員工三級(jí)安全培訓(xùn)考試試題參考
- 2024-2025企業(yè)員工崗前安全培訓(xùn)考試試題及答案5A
- 2025-2030中國(guó)半甜紅葡萄酒行業(yè)市場(chǎng)發(fā)展現(xiàn)狀及發(fā)展趨勢(shì)與投資策略研究報(bào)告
- 工業(yè)園區(qū)智慧能源管理平臺(tái)建設(shè)方案 產(chǎn)業(yè)園區(qū)智慧能源管理平臺(tái)建設(shè)方案
- 《客艙安全與應(yīng)急處置》-課件:滅火設(shè)備:防護(hù)式呼吸裝置
- 《幼兒園混齡民間游戲的研究》課題研究方案
- 《脊柱腫瘤》課件
- 禮儀部計(jì)劃書(shū)
- H酒店品牌管理策略研究
- 物業(yè)費(fèi)用測(cè)算表
- S7-200-SMART-PLC-應(yīng)用教程電課件
- 無(wú)人機(jī)地形匹配導(dǎo)航
- 新人教版高中英語(yǔ)必修第二冊(cè)-Unit-5THE-VIRTUAL-CHOIR精美課件
- 一身邊的“雷鋒”(課件)五年級(jí)下冊(cè)綜合實(shí)踐活動(dòng)
評(píng)論
0/150
提交評(píng)論