//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
#include "Unit2.h"
#include "Unit3.h"
#include "Unit13.h"
#include <math.h>
#include <stdlib.h>
#include <time.h>
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
//TForm2 *Form2;
extern int iFormNum;
extern int iActForm2;
extern int iGraphStyle;
extern int iGraphThick;
extern bool bIsTransparence;
extern TColor tBrushColor;
extern TColor tGroundColor;
extern TColor tGraphColor;
extern bool bForm2Null[50];
extern int iForm2Sum;
extern int iTemplate[4][4];
extern int iTNum;
extern TPoint pProcessBegin,pProcessEnd;
extern int iThre;
extern long lCopyStyle;
long lXTemp,lYTemp;
int iR,iG,iB;
TColor tTempColor;
float fWtempR,fWtempG,fWtempB;
float fla;
int ilb;
int iSmoothStyle;
Graphics::TBitmap *bBitmapCopy=new Graphics::TBitmap;
TCursor tCurTemp;
long lProStep,lProSum,lProi;
int iSunDirection=1;
int iSunConstant=128;
int iSpreadBound=5;
long lofx,lofy,lforx,lfory;
int iTemp,jTemp;
int iPointRange;
extern int iMASAIKE;
TPoint preP,curP;
//---------------------------------------------------------------------------
__fastcall TForm2::TForm2(TComponent* Owner)
: TForm(Owner)
{
int i;
iPicNum=10;
iPicBegin=1;
iPicEnd=0;
iPicNow=0;
iMaxZoom=4;
iZoom=0;
pPBegin.x=0;
pPBegin.y=0;
pPEnd.x=lPicWidth;
pPEnd.y=lPicHeight;
sOperator[0]="打开";
iPointRange=0;
for(i=0;i<iPicNum;i++)
bPicArray[i]=new Graphics::TBitmap();
}
//---------------------------------------------------------------------------
void __fastcall TForm2::FormResize(TObject *Sender)
{
if(Panel1->Width < this->ClientWidth)
Panel1->Left=(this->ClientWidth - Panel1->Width)/2;
else
Panel1->Left=0;
if(Panel1->Height < this->ClientHeight)
Panel1->Top=(this->ClientHeight - Panel1->Height)/2;
else
Panel1->Top=0;
}
//---------------------------------------------------------------------------
void __fastcall TForm2::FormClose(TObject *Sender, TCloseAction &Action)
{
int i;
i=MessageBox(NULL,"是否保存图像","Question?",MB_YESNOCANCEL|MB_ICONQUESTION);
if(i==IDYES)
{
//保存
gotosave:
if(SaveDialog1->Execute())
{
if(FileExists(SaveDialog1->FileName))
{
i=MessageBox(NULL,"您所指定的文件已经存在,是否覆盖?","Question",MB_YESNOCANCEL|MB_ICONQUESTION);
if(i==IDNO)
goto gotosave;
if(i==IDYES)
{
if(!DeleteFile(SaveDialog1->FileName))
{
MessageBox(NULL,"指定的文件正在使用,无法覆盖","error",MB_OK|MB_ICONERROR);
goto gotosave;
}
}
else
{
Action=caNone;
return;
}
}
this->Image1->Picture->SaveToFile(SaveDialog1->FileName);
MessageBox(NULL,"保存成功","OK",MB_OK);
Action=caFree;
iForm2Sum--;
bForm2Null[iOrder]=true;
Form3->ListBox1->Clear();
for(i=0;i<iPicNum;i++)
delete bPicArray[i];
}
else
{
Action=caNone;
return;
}
}
else if(i==IDNO)
{
Action=caFree;
iForm2Sum--;
bForm2Null[iOrder]=true;
Form3->ListBox1->Clear();
for(i=0;i<iPicNum;i++)
delete bPicArray[i];
}
else
{
Action=caNone;
return;
}
Form1->StatusBar2->Panels->Items[2]->Text=" ";
Form1->StatusBar2->Panels->Items[3]->Text=" ";
}
//---------------------------------------------------------------------------
void __fastcall TForm2::FormActivate(TObject *Sender)
{
SetForm3List();
pProcessBegin.x=pPBegin.x;
pProcessBegin.y=pPBegin.y;
pProcessEnd.x=pPEnd.x;
pProcessEnd.y=pPEnd.y;
iActForm2=iOrder;
}
//---------------------------------------------------------------------------
void __fastcall TForm2::Image1MouseDown(TObject *Sender,
TMouseButton Button, TShiftState Shift, int X, int Y)
{
if(Shift.Contains(ssRight)||!iGraphStyle)
{
iGraphStyle=0;
Image1->Cursor=crArrow;
Shape1->Visible=false;
Image1->Canvas->Pen->Mode=pmCopy;
Form1->Panel3->Visible=false;
Form1->Panel4->Visible=false;
Form3->SpeedButton4->Down=true;
return;
}
preP.x=X;
preP.y=Y;
switch(iGraphStyle){
case 1:
Shape1->Shape=stRectangle;
break;
case 2:
Image1->Canvas->Pixels[X*(1 - 0.2*iZoom)][Y*(1 - 0.2*iZoom)]=tGraphColor;
return;
case 3:
Image1->Canvas->Pen->Mode=pmNot;
curP.x=X*(1 - 0.2*iZoom);
curP.y=Y*(1 - 0.2*iZoom);
break;
case 4:
Shape1->Shape=stRectangle;
break;
case 5:
Shape1->Shape=stEllipse;
break;
case 6:
f_imagePointProcess(6,X*(1 - 0.2*iZoom),Y*(1 - 0.2*iZoom));
break;
case 7:
f_imagePointProcess(7,X*(1 - 0.2*iZoom),Y*(1 - 0.2*iZoom));
break;
case 8:
tTempColor=Image1->Canvas->Pixels[X*(1 - 0.2*iZoom)][Y*(1 - 0.2*iZoom)];
Form3->Shape1->Brush->Color=tTempColor;
Form1->StatusBar2->Panels->Items[1]->Text="RGB: ("+IntToStr(GetRValue(tTempColor))+","+IntToStr(GetGValue(tTempColor))+","+IntToStr(GetBValue(tTempColor))+")";
break;
case 9:
break;
default :
break;
}
if(iGraphStyle==1||iGraphStyle==4||iGraphStyle==5)
{
Shape1->Top=Y;
Shape1->Left=X;
Shape1->Width=1;
Shape1->Height=1;
Shape1->Visible=true;
}
}
//---------------------------------------------------------------------------
void __fastcall TForm2::Image1MouseMove(TObject *Sender, TShiftState Shift,
int X, int Y)
{
Form1->StatusBar2->Panels->Items[2]->Text="X: "+IntToStr((int)(X*(1 - 0.2*iZoom)));
Form1->StatusBar2->Panels->Items[3]->Text="Y: "+IntToStr((int)(X*(1 - 0.2*iZoom)));
if(!Shift.Contains(ssLeft)||!iGraphStyle)
return;
switch(iGraphStyle){
没有合适的资源?快使用搜索试试~ 我知道了~
图像处理软件及源代码 毕业设计
共162个文件
cpp:20个
obj:20个
dfm:19个
4星 · 超过85%的资源 需积分: 10 55 下载量 43 浏览量
2011-01-14
15:47:23
上传
评论 2
收藏 3.23MB RAR 举报
温馨提示
图像处理软件及源代码 毕业设计 小型图像处理软件的设计和实现
资源推荐
资源详情
资源评论
收起资源包目录
图像处理软件及源代码 毕业设计 (162个子文件)
Project1.bpr 7KB
help.chm 537KB
help.chm 537KB
Unit2.cpp 53KB
Unit1.cpp 28KB
Unit8.cpp 6KB
Unit3.cpp 6KB
backwindow.cpp 3KB
Unit11.cpp 3KB
Unit18.cpp 2KB
Unit10.cpp 2KB
Unit15.cpp 2KB
Unit6.cpp 2KB
Project1.cpp 2KB
Unit16.cpp 1KB
Unit4.cpp 1KB
Unit9.cpp 1KB
Unit5.cpp 1KB
Unit12.cpp 1KB
Unit19.cpp 1KB
Unit14.cpp 703B
Unit13.cpp 703B
Unit7.cpp 697B
Unit2.ddp 51B
Unit11.ddp 51B
Unit4.ddp 51B
Unit3.ddp 51B
Unit7.ddp 51B
Unit18.ddp 51B
Unit5.ddp 51B
Unit15.ddp 51B
backwindow.ddp 51B
Unit6.ddp 51B
Unit14.ddp 51B
Unit16.ddp 51B
Unit1.ddp 51B
Unit7.dfm 466KB
Unit3.dfm 143KB
Unit11.dfm 85KB
Unit1.dfm 73KB
Unit14.dfm 10KB
Unit2.dfm 7KB
Unit4.dfm 6KB
Unit8.dfm 6KB
Unit6.dfm 4KB
Unit5.dfm 4KB
Unit18.dfm 3KB
Unit10.dfm 3KB
Unit15.dfm 3KB
Unit19.dfm 2KB
Unit12.dfm 2KB
Unit9.dfm 2KB
Unit16.dfm 2KB
Unit13.dfm 1KB
backwindow.dfm 380B
小型图像处理软件的设计和实现.exe 1.19MB
Unit1.h 8KB
Unit2.h 4KB
Unit3.h 2KB
Unit11.h 2KB
Unit8.h 2KB
Unit6.h 1KB
Unit18.h 1KB
Unit10.h 1KB
Unit4.h 1KB
Unit5.h 1KB
Unit7.h 1KB
Unit15.h 1KB
Unit19.h 1KB
Unit16.h 1KB
Unit12.h 1KB
Unit9.h 1KB
Unit13.h 987B
Unit14.h 960B
backwindow.h 812B
Unit2.obj 56KB
Unit1.obj 46KB
Unit8.obj 22KB
Unit3.obj 22KB
Unit18.obj 21KB
Unit6.obj 20KB
Unit11.obj 19KB
Unit5.obj 19KB
backwindow.obj 19KB
Unit4.obj 19KB
Unit15.obj 18KB
Unit12.obj 18KB
Unit19.obj 18KB
Unit9.obj 18KB
Unit10.obj 18KB
Unit16.obj 18KB
Unit7.obj 17KB
Unit13.obj 17KB
Unit14.obj 17KB
Project1.obj 11KB
源代码.rar 1.16MB
shoppic.res 9KB
Project1.res 2KB
Project1.tds 832KB
Project1.~bpr 7KB
共 162 条
- 1
- 2
资源评论
- yangyang0312132015-11-19exe没问题,但是代码没有工程文件,不知道如何组织的、
- 筱雲2018-04-26还可以,参考。
- 那一缕阳光2015-07-07有一定参考价值!
- Jodydi2012-11-15C++写的程序。
天缘一世
- 粉丝: 23
- 资源: 16
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功