• 大小: 100KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-15
  • 语言: C/C++
  • 标签: C++  绘制  源码  MFC  Win32  

资源简介

VC++ 轨迹运动源码实例,研究一下用轨迹引导物体的运动,让物体按一定的轨迹来运动,各行其道,互不冲突。是一个VC++游戏编程中的一个模块例子,对提高VC++的编程水平想当有帮助。

资源截图

代码片段和文件信息

//-----------------------------------------------------------------
// 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

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       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


评论

共有 条评论