資源簡(jiǎn)介
我的畢業(yè)設(shè)計(jì).擁有畫圖板的部分功能.有一部分圖象處理功能.但只能處理不大于1024*768像素的bmp格式文件.由于當(dāng)時(shí)時(shí)間不多,代碼比較亂,基本沒有注釋,環(huán)境VC6;圖象處理的核心算法都在CBmpDat類中.我的大部分程序都采用的MVC模式,數(shù)據(jù)與顯示是分離的.

代碼片段和文件信息
//?BmpDat.cpp:?implementation?of?the?CBmpDat?class.
//
//////////////////////////////////////////////////////////////////////
#include?“stdafx.h“
#include?“畢業(yè)設(shè)計(jì).h“
#include?“BmpDat.h“
#include?
#include?
#include?
#ifdef?_DEBUG
#undef?THIS_FILE
static?char?THIS_FILE[]=__FILE__;
#define?new?DEBUG_NEW
#endif
extern?CStatusBar?*?mmcsb;
//////////////////////////////////////////////////////////////////////
//?Construction/Destruction
//////////////////////////////////////////////////////////////////////
CBmpDat::CBmpDat(CDC?*?dc){
undo?=?0;
redo?=?2;
width?=?0;
height?=?0;
path?=?_T(““);
bgcol?=?RGB(255255255);
pecol?=?RGB(000);
pdc.CreateCompatibleDC(dc);
bfdc.CreateCompatibleDC(dc);
mdc[0].CreateCompatibleDC(dc);
mdc[1].CreateCompatibleDC(dc);
CBitmap?*obp;
// bp.CreateCompatibleBitmap(dc1024786);
bp.LoadBitmap(IDB_BBB);
////////////////////////////////////將位圖選入DC
obp?=?pdc.Selectobject(&bp);
obp->Deleteobject();
//////////////////////////////////////創(chuàng)建一個(gè)白色畫筆
// CPen?pen*op;
// pen.CreatePen(PS_SOLID796RGB(255255255));
//////////////////////////////////////使用白色畫筆
// op?=?pdc.Selectobject(&pen);
//////////////////////////////////////
// pdc.MoveTo(0393);
// pdc.LineTo(1024393);
////////////////////////////////////////
// pdc.Selectobject(op);
pdc.SetTextColor(pecol);
pdc.SetBkMode(0);
//////////////////////////
CBitmap?*obp2;
// bp2.CreateCompatibleBitmap(dc1024786);
bp2.LoadBitmap(IDB_BBB);
////////////////////////////////////將位圖選入DC
obp2?=?bfdc.Selectobject(&bp2);
obp2->Deleteobject();
CBitmap?*obp3;
// bp3.CreateCompatibleBitmap(dc1024786);
bp3.LoadBitmap(IDB_BBB);
////////////////////////////////////將位圖選入DC
obp3?=?mdc[0].Selectobject(&bp3);
obp3->Deleteobject();
CBitmap?*obp4;
// bp4.CreateCompatibleBitmap(dc1024786);
bp4.LoadBitmap(IDB_BBB);
////////////////////////////////////將位圖選入DC
obp4?=?mdc[1].Selectobject(&bp4);
obp4->Deleteobject();
// pen.Deleteobject();
}
CBmpDat::~CBmpDat(){
}
//////////////
void?CBmpDat::Cancel(){
pdc.BitBlt(00widthheight&bfdc00SRCCOPY);
for(int?i?=?0;i for(int?j?=?0;j pix[0][i][j]?=?bfpix[0][i][j];
pix[1][i][j]?=?bfpix[1][i][j];
pix[2][i][j]?=?bfpix[2][i][j];
}
}
}
///////////////////////////////////////////////
void?CBmpDat::BeiFen(){
int?ij;
if(undo==2){
undo--;
mdc[0].BitBlt(00widthheight&mdc[1]00SRCCOPY);
for(i?=?0;i for(j?=?0;j mpix[0][0][i][j]?=?mpix[1][0][i][j];
mpix[0][1][i][j]?=?mpix[1][1][i][j];
mpix[0][2][i][j]?=?mpix[1][2][i][j];
}
}
lastw[0]?=?lastw[1];
lasth[0]?=?lasth[1];
}
mdc[undo].BitBlt(00widthheight&bfdc00SRCCOPY);
for(i?=?0;i for(j?=?0;j mpix[undo][0][i][j]?=?bfpix[0][i][j];
mpix[undo][1][i][j]?=?bfpix[1][i][j];
mpix[undo][2][i][j]?=?bfp
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件??????38580??2005-05-20?11:48??畢業(yè)設(shè)計(jì)\BmpDat.cpp
?????文件???????2727??2005-05-20?11:13??畢業(yè)設(shè)計(jì)\BmpDat.h
?????文件???????1291??2005-04-13?16:40??畢業(yè)設(shè)計(jì)\Control.cpp
?????文件????????724??2005-04-13?16:15??畢業(yè)設(shè)計(jì)\Control.h
?????文件??????44032??2005-05-18?10:56??畢業(yè)設(shè)計(jì)\help.doc
?????文件???????2973??2005-05-15?01:24??畢業(yè)設(shè)計(jì)\MainFrm.cpp
?????文件???????1500??2005-05-15?01:24??畢業(yè)設(shè)計(jì)\MainFrm.h
?????文件???????1548??2005-05-13?22:50??畢業(yè)設(shè)計(jì)\MoveSetDlg.cpp
?????文件???????1256??2005-05-13?22:50??畢業(yè)設(shè)計(jì)\MoveSetDlg.h
?????文件???????1545??2005-05-13?10:47??畢業(yè)設(shè)計(jì)\MySetDlg.cpp
?????文件???????1239??2005-05-13?10:47??畢業(yè)設(shè)計(jì)\MySetDlg.h
?????文件???????4317??2005-04-06?20:42??畢業(yè)設(shè)計(jì)\ReadMe.txt
?????文件???????3868??2005-05-20?11:20??畢業(yè)設(shè)計(jì)\resource.h
?????文件???????2440??2005-05-13?10:43??畢業(yè)設(shè)計(jì)\SetAguDlg.cpp
?????文件???????1397??2005-04-15?09:59??畢業(yè)設(shè)計(jì)\SetAguDlg.h
?????文件???????3395??2005-04-14?22:46??畢業(yè)設(shè)計(jì)\SetColDlg.cpp
?????文件???????1456??2005-04-14?22:46??畢業(yè)設(shè)計(jì)\SetColDlg.h
?????文件???????1531??2005-05-13?10:43??畢業(yè)設(shè)計(jì)\SetDlg2.cpp
?????文件???????1230??2005-05-13?10:43??畢業(yè)設(shè)計(jì)\SetDlg2.h
?????文件???????2503??2005-05-13?10:42??畢業(yè)設(shè)計(jì)\SMSetDlg.cpp
?????文件???????1393??2005-05-09?16:14??畢業(yè)設(shè)計(jì)\SMSetDlg.h
?????文件????????210??2005-04-06?20:42??畢業(yè)設(shè)計(jì)\StdAfx.cpp
?????文件???????1054??2005-04-06?20:42??畢業(yè)設(shè)計(jì)\StdAfx.h
?????文件???????7391??2005-05-19?16:45??畢業(yè)設(shè)計(jì)\TextToolDlg.cpp
?????文件???????2027??2005-05-19?16:08??畢業(yè)設(shè)計(jì)\TextToolDlg.h
?????文件???????1366??2005-05-17?16:17??畢業(yè)設(shè)計(jì)\TurnSetDLg.cpp
?????文件???????1228??2005-05-14?23:16??畢業(yè)設(shè)計(jì)\TurnSetDLg.h
?????文件???????1634??2005-05-13?10:45??畢業(yè)設(shè)計(jì)\ZoomSetDlg.cpp
?????文件???????1283??2005-05-13?10:45??畢業(yè)設(shè)計(jì)\ZoomSetDlg.h
?????文件?????654588??2005-11-12?14:41??畢業(yè)設(shè)計(jì)\畢業(yè)設(shè)計(jì).aps
............此處省略51個(gè)文件信息
- 上一篇:迷宮求解問題算法
- 下一篇:NOIP2018普及組C++試題
評(píng)論
共有 條評(píng)論