资源简介
VC++数字图像处理典型算法及实现 人民邮电出版社 书附带光盘内容
代码片段和文件信息
// cdib.cpp
#include “stdafx.h“
#include “math.h“
#include “process.h“
#include “cdib.h“
#include “GlobalApi.h“
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
// 声明串行化过程
IMPLEMENT_SERIAL(CDib Cobject 0);
/*************************************************************************
*
* \函数名称:
* CDib()
*
* \输入参数:
* 无
*
* \返回值:
* 无
*
* \说明:
* 构造函数
*
************************************************************************
*/
CDib::CDib()
{
m_hFile = NULL;
m_hBitmap = NULL;
m_hPalette = NULL;
m_nBmihAlloc = m_nImageAlloc = noAlloc;
Empty();
}
/*************************************************************************
*
* \函数名称:
* CDib()
*
* \输入参数:
* CSize size - 位图尺寸
* int nBitCount - 象素位数
*
* \返回值:
* 无
*
* \说明:
* 构造函数
* 根据给定的位图尺寸和象素位数构造CDib对象,并对信息头和调色板分配内存
* 但并没有给位图数据分配内存
*
************************************************************************
*/
CDib::CDib(CSize size int nBitCount)
{
m_hFile = NULL;
m_hBitmap = NULL;
m_hPalette = NULL;
m_nBmihAlloc = m_nImageAlloc = noAlloc;
Empty();
// 根据象素位数计算调色板尺寸
ComputePaletteSize(nBitCount);
// 分配DIB信息头和调色板的内存
m_lpBMIH = (LPBITMAPINFOHEADER) new
char[sizeof(BITMAPINFOHEADER) + sizeof(RGBQUAD) * m_nColorTableEntries];
// 设置信息头内存分配状态
m_nBmihAlloc = crtAlloc;
// 设置信息头中的信息
m_lpBMIH->biSize = sizeof(BITMAPINFOHEADER);
m_lpBMIH->biWidth = size.cx;
m_lpBMIH->biHeight = size.cy;
m_lpBMIH->biPlanes = 1;
m_lpBMIH->biBitCount = nBitCount;
m_lpBMIH->biCompression = BI_RGB;
m_lpBMIH->biSizeImage = 0;
m_lpBMIH->biXPelsPerMeter = 0;
m_lpBMIH->biYPelsPerMeter = 0;
m_lpBMIH->biClrUsed = m_nColorTableEntries;
m_lpBMIH->biClrImportant= m_nColorTableEntries;
// 计算图象数据内存的大小,并设置此DIB的调色板的指针
ComputeMetrics();
// 将此DIB的调色板初始化为0
memset(m_lpvColorTable 0 sizeof(RGBQUAD) * m_nColorTableEntries);
// 暂时不分配图象数据内存
m_lpImage = NULL;
}
/*************************************************************************
*
* \函数名称:
* ~CDib()
*
* \输入参数:
* 无
*
* \返回值:
* 无
*
* \说明:
* 析构函数,并释放所有分配的DIB内存
*
************************************************************************
*/
CDib::~CDib()
{
Empty();
}
/*************************************************************************
*
* \函数名称:
* GetDimensions()
*
* \输入参数:
* 无
*
* \返回值:
* CSize - DIB的宽度和高度
*
* \说明:
* 返回以象素表示的DIB的宽度和高度
*
************************************************************************
*/
CSize CDib::GetDimensions()
{
if(m_lpBMIH == NULL) return CSize(0 0);
return CSize((int) m_lpBMIH->biWidth (int) m_lpBMIH->biHeight);
}
/*************************************************************************
*
* \函数名称:
* AttachMapFile()
*
* \输入参数:
* const char* strPathname - 映射文件的路径名
* BOOL bShare -
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1736 2006-05-29 17:08 VC++数字图像处理典型算法及实现\01\DIBDisplay\ChildFrm.cpp
文件 1456 2006-05-29 17:08 VC++数字图像处理典型算法及实现\01\DIBDisplay\ChildFrm.h
文件 65095 2006-05-29 17:08 VC++数字图像处理典型算法及实现\01\DIBDisplay\ColorTable.h
文件 30448 2006-05-29 17:08 VC++数字图像处理典型算法及实现\01\DIBDisplay\DIBDisplay.aps
文件 3001 2006-05-29 17:08 VC++数字图像处理典型算法及实现\01\DIBDisplay\DIBDisplay.clw
文件 4556 2006-05-29 17:08 VC++数字图像处理典型算法及实现\01\DIBDisplay\DIBDisplay.cpp
文件 5205 2006-05-29 17:08 VC++数字图像处理典型算法及实现\01\DIBDisplay\DIBDisplay.dsp
文件 545 2006-05-29 17:08 VC++数字图像处理典型算法及实现\01\DIBDisplay\DIBDisplay.dsw
文件 1400 2006-05-29 17:08 VC++数字图像处理典型算法及实现\01\DIBDisplay\DIBDisplay.h
文件 140288 2006-05-29 17:08 VC++数字图像处理典型算法及实现\01\DIBDisplay\DIBDisplay.ncb
文件 59904 2006-05-29 17:08 VC++数字图像处理典型算法及实现\01\DIBDisplay\DIBDisplay.opt
文件 2637 2006-05-29 17:08 VC++数字图像处理典型算法及实现\01\DIBDisplay\DIBDisplay.plg
文件 13275 2006-05-29 17:08 VC++数字图像处理典型算法及实现\01\DIBDisplay\DIBDisplay.rc
文件 7143 2006-05-29 17:08 VC++数字图像处理典型算法及实现\01\DIBDisplay\DIBDisplayDoc.cpp
文件 1931 2006-05-29 17:08 VC++数字图像处理典型算法及实现\01\DIBDisplay\DIBDisplayDoc.h
文件 7824 2006-05-29 17:08 VC++数字图像处理典型算法及实现\01\DIBDisplay\DIBDisplayView.cpp
文件 2341 2006-05-29 17:08 VC++数字图像处理典型算法及实现\01\DIBDisplay\DIBDisplayView.h
文件 17030 2006-05-29 17:08 VC++数字图像处理典型算法及实现\01\DIBDisplay\DIBPrcs.cpp
文件 16914 2006-05-29 17:08 VC++数字图像处理典型算法及实现\01\DIBDisplay\DibImage.cpp
文件 1812 2006-05-29 17:08 VC++数字图像处理典型算法及实现\01\DIBDisplay\DibImage.h
文件 9174 2006-05-29 17:08 VC++数字图像处理典型算法及实现\01\DIBDisplay\GlobalApi.h
文件 2527 2006-05-29 17:08 VC++数字图像处理典型算法及实现\01\DIBDisplay\MainFrm.cpp
文件 1542 2006-05-29 17:08 VC++数字图像处理典型算法及实现\01\DIBDisplay\MainFrm.h
文件 4874 2006-05-29 17:08 VC++数字图像处理典型算法及实现\01\DIBDisplay\ReadMe.txt
文件 644 2006-05-29 17:08 VC++数字图像处理典型算法及实现\01\DIBDisplay\Resource.h
文件 212 2006-05-29 17:08 VC++数字图像处理典型算法及实现\01\DIBDisplay\StdAfx.cpp
文件 1054 2006-05-29 17:08 VC++数字图像处理典型算法及实现\01\DIBDisplay\StdAfx.h
文件 38635 2006-05-29 17:08 VC++数字图像处理典型算法及实现\01\DIBDisplay\cdib.cpp
文件 3645 2006-05-29 17:08 VC++数字图像处理典型算法及实现\01\DIBDisplay\cdib.h
文件 1078 2006-05-29 17:08 VC++数字图像处理典型算法及实现\01\DIBDisplay\res\DIBDisplay.ico
............此处省略439个文件信息
- 上一篇:编译原理课程设计-C语言子集编译器
- 下一篇:简易图书管理系统C语言
相关资源
- VC++酒店客房管理系统 MFC
- 车站计算机联锁vc++6.0程序代码
- VC++编程的第一个MFC工程Hello World
- VC++中实现复选下拉框CCheckComboBox
- VC++写的SMTP协议发附件超酷啊直接可以
- 成绩管理系统VC++6.0
- VC++6.0技术内幕第五版中文版+英文版
- win 10解决系统缺失vc++库
- vc++课程设计 让计算机来猜测用户“暗
- VC++24点游戏完整程序源码
- VC++外挂框架.rar
- VC++技术内幕第五版中文pdf
- 基于VC++利用MFC做的图书管理系统
- VC++阳历(公历)到阴历(农历)转换
- VC++用MFC做选课系统
- MFC VC++实现Sierpinski分形图像
- 功能强大的多条曲线绘制类 (MFC,
- vc++ opengl代码爆炸
- 酒店客房预定系统vc++)
- vc++变成经典小游戏源码
- 车牌识别系统VC++开发
- VC6.0 完整的图像处理程序 运用了大量
- 精通VC++指纹模式识别系统算法(源码
- MFC多人聊天室
- VC图像处理-用Canny算子提取边缘
- c++P2P视频技术源码(VC++)
- VC++开发IE ActiveX控件
- VC++6.0 简体中文版 msdn
- VC++2010(VC++最新版!)
- VC++界面换肤 界面自绘 内置滚动条自
评论
共有 条评论