資源簡介
買的書附帶的光盤資料,主要是C++對于圖像的處理,包含有本書的PDF和書中源碼~,想學就不用再買書了~
代碼片段和文件信息
#include?“stdafx.h“
#include?“cdib.h“
#include?“windowsx.h“
#include?“math.h“
#define?WIDTHBYTES(bits)????(((bits)?+?31)?/?32?*?4)?
CDib::CDib()
{
size=0;
}
CDib::~CDib()
{
????GlobalFreePtr(m_pBitmapInfo);
}
void?CDib::LoadFile(const?char*?dibFileName)
{
???strcpy(m_fileNamedibFileName);
????CFile?dibFile(m_fileName?CFile::modeRead);
????dibFile.Read((void*)&bitmapFileHeadersizeof(BITMAPFILEHEADER));
????if?(bitmapFileHeader.bfType?==?0x4d42)
????{
????????DWORD?fileLength?=?dibFile.GetLength();????
?????????size?=?fileLength?-sizeof(BITMAPFILEHEADER);
?????????pDib?=(BYTE*)GlobalAllocPtr(GMEM_MOVEABLE?size);
????????dibFile.Read((void*)pDib?size);
????????dibFile.Close();
????????m_pBitmapInfo?=?(BITMAPINFO*)?pDib;
????????m_pBitmapInfoHeader?=?(BITMAPINFOHEADER*)?pDib;
????????m_pRGB?=?(RGBQUAD*)(pDib?+
m_pBitmapInfoHeader->biSize);
????????int?m_numberOfColors?=?GetNumberOfColors();
????????if?(m_pBitmapInfoHeader->biClrUsed?==?0)
????????????m_pBitmapInfoHeader->biClrUsed?=
????m_numberOfColors;
????????DWORD?colorTableSize?=?m_numberOfColors?*
????????????sizeof(RGBQUAD);
????????m_pData?=?pDib?+?m_pBitmapInfoHeader->biSize
????????????+?colorTableSize;
if?(m_pRGB?==?(RGBQUAD*)m_pData)?//?No?color?table
m_pRGB?=?NULL;
????????m_pBitmapInfoHeader->biSizeImage?=?GetSize();
m_valid?=?TRUE;
????}????
????else
????{
????????m_valid?=?FALSE;
????????AfxMessageBox(“This?isn‘t?a?bitmap?file!“);
????}
}
BOOL?CDib::IsValid()
{
????return?m_valid;
}
????????
char*?CDib::GetFileName()
{
????return?m_fileName;
}
????????
UINT?CDib::GetWidth()
{
????return?(UINT)?m_pBitmapInfoHeader->biWidth;
}
????????
UINT?CDib::GetHeight()
{
????return?(UINT)?m_pBitmapInfoHeader->biHeight;
}
????????
DWORD?CDib::GetSize()
{
????if?(m_pBitmapInfoHeader->biSizeImage?!=?0)
????????return?m_pBitmapInfoHeader->biSizeImage;
else
????{
????????DWORD?height?=?(DWORD)?GetHeight();
????????DWORD?width?=?(DWORD)?GetWidth();
????????return?height?*?width;
????}
}
UINT?CDib::GetNumberOfColors()
{
int?numberOfColors;
????if?((m_pBitmapInfoHeader->biClrUsed?==?0)?&&
??????????(m_pBitmapInfoHeader->biBitCount?9))
{
switch?(m_pBitmapInfoHeader->biBitCount)
{
????case?1:?numberOfColors?=?2;?break;
????case?4:?numberOfColors?=?16;?break;
????case?8:?numberOfColors?=?256;
}
}
????else
numberOfColors?=?(int)?m_pBitmapInfoHeader->biClrUsed;
????return?numberOfColors;
}
DWORD?CDib::GetDibWidthBytes()
{??
byBitCount=m_pBitmapInfoHeader->biBitCount;
LONG?nWidth=m_pBitmapInfoHeader->biWidth;
dwWidthBytes?=?(DWORD)m_pBitmapInfoHeader->biWidth; //8-bits
if(byBitCount?==?1)?dwWidthBytes?=?(nWidth?+?7)?/?8;
else?if(byBitCount?==?4)?dwWidthBytes?=?(nWidth?+?1)?/?2;
else?if(byBitCount?==?24)?dwWidthBytes?=?3?*?nWidth?;
while((dwWidthBytes?&?3)?!=?0)dwWidthBytes++;
return?dwWidthBytes;
}??
????
BYTE*?CDib::GetData()
{
????r
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???14466078??2009-08-24?17:23??VC++圖像處理程序設計(楊淑瑩)清晰版?PDF?+?源碼\VC++圖像處理程序設計(楊淑瑩).pdf
?????文件?????196662??2004-08-31?09:09??VC++圖像處理程序設計(楊淑瑩)清晰版?PDF?+?源碼\第9章圖像的變換域處理\頻域濾波\24位圖.bmp
?????文件???????4654??2004-08-19?16:58??VC++圖像處理程序設計(楊淑瑩)清晰版?PDF?+?源碼\第9章圖像的變換域處理\頻域濾波\CDIB.CPP
?????文件????????883??2004-08-19?16:48??VC++圖像處理程序設計(楊淑瑩)清晰版?PDF?+?源碼\第9章圖像的變換域處理\頻域濾波\Cdib.h
?????文件???????1044??2004-08-13?16:14??VC++圖像處理程序設計(楊淑瑩)清晰版?PDF?+?源碼\第9章圖像的變換域處理\頻域濾波\Dialog1.cpp
?????文件???????1178??2003-04-05?09:10??VC++圖像處理程序設計(楊淑瑩)清晰版?PDF?+?源碼\第9章圖像的變換域處理\頻域濾波\Dialog1.h
?????文件????????965??2004-08-13?16:21??VC++圖像處理程序設計(楊淑瑩)清晰版?PDF?+?源碼\第9章圖像的變換域處理\頻域濾波\Dialog2.cpp
?????文件???????1198??2003-04-17?23:08??VC++圖像處理程序設計(楊淑瑩)清晰版?PDF?+?源碼\第9章圖像的變換域處理\頻域濾波\Dialog2.h
?????文件???????1049??2004-08-13?16:21??VC++圖像處理程序設計(楊淑瑩)清晰版?PDF?+?源碼\第9章圖像的變換域處理\頻域濾波\Dialog3.cpp
?????文件???????1218??2003-04-18?07:53??VC++圖像處理程序設計(楊淑瑩)清晰版?PDF?+?源碼\第9章圖像的變換域處理\頻域濾波\Dialog3.h
?????文件??????50812??2013-12-23?17:03??VC++圖像處理程序設計(楊淑瑩)清晰版?PDF?+?源碼\第9章圖像的變換域處理\頻域濾波\DSplit.aps
?????文件???????5693??2013-12-26?20:50??VC++圖像處理程序設計(楊淑瑩)清晰版?PDF?+?源碼\第9章圖像的變換域處理\頻域濾波\DSPLIT.CLW
?????文件???????4158??2003-04-01?08:51??VC++圖像處理程序設計(楊淑瑩)清晰版?PDF?+?源碼\第9章圖像的變換域處理\頻域濾波\Dsplit.cpp
?????文件???????5534??2003-04-18?07:54??VC++圖像處理程序設計(楊淑瑩)清晰版?PDF?+?源碼\第9章圖像的變換域處理\頻域濾波\DSplit.dsp
?????文件????????579??1999-01-28?11:36??VC++圖像處理程序設計(楊淑瑩)清晰版?PDF?+?源碼\第9章圖像的變換域處理\頻域濾波\DSPLIT.DSW
?????文件???????1419??2003-04-05?09:56??VC++圖像處理程序設計(楊淑瑩)清晰版?PDF?+?源碼\第9章圖像的變換域處理\頻域濾波\Dsplit.h
?????文件????1262592??2013-12-26?20:50??VC++圖像處理程序設計(楊淑瑩)清晰版?PDF?+?源碼\第9章圖像的變換域處理\頻域濾波\DSPLIT.NCB
?????文件??????86016??2013-12-26?20:50??VC++圖像處理程序設計(楊淑瑩)清晰版?PDF?+?源碼\第9章圖像的變換域處理\頻域濾波\DSPLIT.OPT
?????文件????????873??2013-12-26?20:50??VC++圖像處理程序設計(楊淑瑩)清晰版?PDF?+?源碼\第9章圖像的變換域處理\頻域濾波\DSPLIT.PLG
?????文件??????16352??2013-12-23?17:03??VC++圖像處理程序設計(楊淑瑩)清晰版?PDF?+?源碼\第9章圖像的變換域處理\頻域濾波\DSplit.rc
?????文件???????2008??2003-04-01?08:45??VC++圖像處理程序設計(楊淑瑩)清晰版?PDF?+?源碼\第9章圖像的變換域處理\頻域濾波\DSplitDoc.cpp
?????文件???????1495??2003-04-03?14:09??VC++圖像處理程序設計(楊淑瑩)清晰版?PDF?+?源碼\第9章圖像的變換域處理\頻域濾波\DSplitDoc.h
?????文件???????3238??2003-04-03?14:25??VC++圖像處理程序設計(楊淑瑩)清晰版?PDF?+?源碼\第9章圖像的變換域處理\頻域濾波\Dsplitview.cpp
?????文件???????1885??2003-04-03?14:28??VC++圖像處理程序設計(楊淑瑩)清晰版?PDF?+?源碼\第9章圖像的變換域處理\頻域濾波\Dsplitview.h
?????文件???????6439??2003-04-02?10:18??VC++圖像處理程序設計(楊淑瑩)清晰版?PDF?+?源碼\第9章圖像的變換域處理\頻域濾波\DYNSPLITTERWND.CPP
?????文件???????1733??1998-03-10?17:19??VC++圖像處理程序設計(楊淑瑩)清晰版?PDF?+?源碼\第9章圖像的變換域處理\頻域濾波\DYNSPLITTERWND.H
?????文件???????8635??2004-08-20?20:57??VC++圖像處理程序設計(楊淑瑩)清晰版?PDF?+?源碼\第9章圖像的變換域處理\頻域濾波\DynSplitView2.cpp
?????文件???????2115??2004-08-19?12:57??VC++圖像處理程序設計(楊淑瑩)清晰版?PDF?+?源碼\第9章圖像的變換域處理\頻域濾波\DynSplitView2.h
?????文件???????3550??2003-04-05?09:08??VC++圖像處理程序設計(楊淑瑩)清晰版?PDF?+?源碼\第9章圖像的變換域處理\頻域濾波\MAINFRM.CPP
?????文件???????1691??2003-04-02?17:00??VC++圖像處理程序設計(楊淑瑩)清晰版?PDF?+?源碼\第9章圖像的變換域處理\頻域濾波\MAINFRM.H
............此處省略782個文件信息
評論
共有 條評論