⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 map.cpp

📁 symbian 的lian-liankan
💻 CPP
字号:
// Map.cpp: implementation of the CMap class.
//
//////////////////////////////////////////////////////////////////////

#include "Map.h"
#include "llk.mbg"  // from EMbmLlk1
#include "aknutils.h"

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////


CMap::CMap(CData* aData,TInt aW,TInt aH,TDesC& aFileName,TInt aNum,TInt aLen)
{
	iData=aData;
	iW=aW;
	iH=aH;
	iLen=aLen;
	iFileName=new TBuf<30>;
	iFileName->Copy(aFileName);
	iMapNum=aNum;
	InitMap();

	UpdateGc();
}

CMap::~CMap()
{
	for(int m=0;m<iMapNum;m++)
	{
		delete iFace[m];
	}
	delete iFace;

	delete iMap;
	delete iDevice;
	delete iGc;
	delete iFileName;
}

void CMap::InitMap()
{
	TFileName fn(*iFileName);
	CompleteWithAppPath(fn);      //得到全路径。

	iFace=new(ELeave) CFbsBitmap*[iMapNum];
	for(int m=0;m<iMapNum;m++)
	{
		iFace[m]=new(ELeave)CFbsBitmap;
		iFace[m]->Load(fn,EMbmLlk1+m);
	}

	iMap=new(ELeave)CFbsBitmap;
	iMap->Create(TSize(176,208),EColor4K);
	iDevice=CFbsBitmapDevice::NewL(iMap);
	iDevice->CreateContext(iGc);
}

void CMap::UpdateGc()
{
	iGc->SetBrushColor(TRgb(200,230,170));
	iGc->SetBrushStyle(CGraphicsContext::ESolidBrush);
	iGc->Clear();
	for(int m=0;m<iW;m++)
	{
		for(int n=0;n<iH;n++)
		{
			int k=iData->iData[m][n];
			if(k)
				iGc->BitBlt(TPoint(m*iLen,n*iLen),iFace[k-1]);
		}
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -