資源簡介
VC++ 軌跡運(yùn)動(dòng)源碼實(shí)例,研究一下用軌跡引導(dǎo)物體的運(yùn)動(dòng),讓物體按一定的軌跡來運(yùn)動(dòng),各行其道,互不沖突。是一個(gè)VC++游戲編程中的一個(gè)模塊例子,對提高VC++的編程水平想當(dāng)有幫助。

代碼片段和文件信息
//-----------------------------------------------------------------
//?Bitmap?object
//?C++?Source?-?Bitmap.cpp
//-----------------------------------------------------------------
//Download?by?http://www.NewXing.com
//-----------------------------------------------------------------
//?Include?Files
//-----------------------------------------------------------------
#include?“Bitmap.h“
//-----------------------------------------------------------------
//?Bitmap?Constructor(s)/Destructor
//-----------------------------------------------------------------
Bitmap::Bitmap()
??:?m_hBitmap(NULL)?m_iWidth(0)?m_iHeight(0)
{
}
//?Create?a?bitmap?from?a?file
Bitmap::Bitmap(HDC?hDC?LPTSTR?szFileName)
??:?m_hBitmap(NULL)?m_iWidth(0)?m_iHeight(0)
{
??Create(hDC?szFileName);
}
//?Create?a?bitmap?from?a?resource
Bitmap::Bitmap(HDC?hDC?UINT?uiResID?HINSTANCE?hInstance)
??:?m_hBitmap(NULL)?m_iWidth(0)?m_iHeight(0)
{
??Create(hDC?uiResID?hInstance);
}
//?Create?a?blank?bitmap?from?scratch
Bitmap::Bitmap(HDC?hDC?int?iWidth?int?iHeight?COLORREF?crColor)
??:?m_hBitmap(NULL)?m_iWidth(0)?m_iHeight(0)
{
??Create(hDC?iWidth?iHeight?crColor);
}
Bitmap::~Bitmap()
{
??Free();
}
//-----------------------------------------------------------------
//?Bitmap?Helper?Methods
//-----------------------------------------------------------------
void?Bitmap::Free()
{
??//?Delete?the?bitmap?graphics?object
??if?(m_hBitmap?!=?NULL)
??{
????Deleteobject(m_hBitmap);
????m_hBitmap?=?NULL;
??}
}
//-----------------------------------------------------------------
//?Bitmap?General?Methods
//-----------------------------------------------------------------
BOOL?Bitmap::Create(HDC?hDC?LPTSTR?szFileName)
{
??//?Free?any?previous?bitmap?info
??Free();
??//?Open?the?bitmap?file
??HANDLE?hFile?=?CreateFile(szFileName?GENERIC_READ?FILE_SHARE_READ?NULL
????OPEN_EXISTING?FILE_ATTRIBUTE_NORMAL?NULL);
??if?(hFile?==?INVALID_HANDLE_VALUE)
????return?FALSE;
??//?Read?the?bitmap?file?header
??BITMAPFILEHEADER??bmfHeader;
??DWORD?????????????dwBytesRead;
??BOOL?bOK?=?ReadFile(hFile?&bmfHeader?sizeof(BITMAPFILEHEADER)
????&dwBytesRead?NULL);
??if?((!bOK)?||?(dwBytesRead?!=?sizeof(BITMAPFILEHEADER))?||
????(bmfHeader.bfType?!=?0x4D42))
??{
????CloseHandle(hFile);
????return?FALSE;
??}
??BITMAPINFO*?pBitmapInfo?=?(new?BITMAPINFO);
??if?(pBitmapInfo?!=?NULL)
??{
????//?Read?the?bitmap?info?header
????bOK?=?ReadFile(hFile?pBitmapInfo?sizeof(BITMAPINFOHEADER)
??????&dwBytesRead?NULL);
????if?((!bOK)?||?(dwBytesRead?!=?sizeof(BITMAPINFOHEADER)))
????{
??????CloseHandle(hFile);
??????Free();
??????return?FALSE;
????}
????//?Store?the?width?and?height?of?the?bitmap
????m_iWidth?=?(int)pBitmapInfo->bmiHeader.biWidth;
????m_iHeight?=?(int)pBitmapInfo->bmiHeader.biHeight;
????//?Get?a?handle?to?the?bitmap?and?copy?the?image?bits
????PBYTE?pBitmapBits;
????m_hBitmap?=?C
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件???????4923??2013-12-02?06:10??Sprite.h
????.......?????28278??2004-01-08?14:36??Res\Car1.bmp
????.......?????21222??2004-01-08?14:36??Res\Car2.bmp
????.......?????23598??2004-01-08?14:37??Res\Car3.bmp
????.......?????21222??2004-01-08?14:38??Res\Car4.bmp
????.......?????10262??2004-01-08?16:08??Res\Chicken.bmp
????.......???????950??2004-01-08?16:13??Res\ChickenHead.bmp
????.......??????2238??2004-01-08?16:24??Res\Henway.ico
????.......??????1406??2004-01-08?16:27??Res\Henway_sm.ico
????.......????188278??2004-01-08?16:17??Res\Highway.bmp
?????文件???????6620??2013-12-02?06:10??Bitmap.cpp
?????文件???????1357??2013-12-02?06:10??Bitmap.h
?????文件??????12512??2013-12-02?06:10??GameEngine.cpp
?????文件???????4376??2013-12-02?06:10??GameEngine.h
?????文件???????7417??2013-12-02?06:10??Henway.cpp
?????文件???????4534??2007-10-16?13:43??Henway.dsp
?????文件????????518??2007-10-16?13:39??Henway.dsw
?????文件???????1261??2013-12-02?06:10??Henway.h
?????文件???????1129??2004-01-07?22:27??Henway.rc
?????文件????????920??2013-12-02?06:10??Resource.h
?????文件???????5232??2013-12-02?06:10??Sprite.cpp
????..AD...?????????0??2012-06-13?06:34??Res
-----------?---------??----------?-----??----
???????????????348253????????????????????22
- 上一篇:文本編輯器C代碼.
- 下一篇:簡單的多用戶文件系統(tǒng)
評論
共有 條評論