www.pudn.com > JingXiang-Design-Jeff.rar > Image_Identify.h


// Image_Identify.h: interface for the Image_Identify class. 
// 
////////////////////////////////////////////////////////////////////// 
 
#if !defined(AFX_IMAGE_IDENTIFY_H__9B3DF120_3ECE_11D4_8C58_E76E1044BE02__INCLUDED_) 
#define AFX_IMAGE_IDENTIFY_H__9B3DF120_3ECE_11D4_8C58_E76E1044BE02__INCLUDED_ 
 
#if _MSC_VER > 1000 
#pragma once 
#endif // _MSC_VER > 1000 
#include "BmpDef.h" 
class Image_Identify   
{ 
public: 
	int ForProcessBufferSize; 
	BOOL IsHole(); 
	void GetLineColRange(int & Start,int &End,int Line); 
	void Get_Left_Top_And_Right_Bottom(RECT &L_T_AND_R_B); 
	int GetAcreagePointNum(void); 
	int BorderDetect_For_LiZiZhiJing(RECT *pInput_=NULL,int IsFor_Left_Top_Out=0,int IsDrawing=1,int BorderGray=0,int BkGray=255); 
	void Swap_int(int& x1,int& x2); 
	int BorderDetect_For_Lizijianju(POINT Start,POINT End,RECT *pInput_=NULL,int IsDrawing=0,int BorderGray=0,int BkGray=255); 
	BOOL Is_BetweenTwo(int x1,int x2,int in); 
	BOOL Is_InLine(POINT Start,POINT End); 
	BOOL Is_InSidePoint_For_4(int x,int y,int Out=255); 
	BOOL IsOutOfLeft_Top(RECT RectIn); 
	int ObjectNum; 
	BOOL CopyToForProcess(); 
	BYTE* pForProcess_bit; 
	WORD *pForProcess; 
	void DrawBorder(); 
	BOOL Is_InSidePoint(int x,int y,int Out=255); 
	BOOL SetPointGray(int Col,int Line,int SetGray); 
    int StartNeighbour,NowNeighbour; 
	BOOL Detecting(RECT RectIn_,int x,int y,int *pReturnValue=NULL,int IsFor_Let_Top_Out=1,int TheBorderGray=0,int BkGray=255); 
	int BorderFlagGray; 
	POINT EndPoint; 
	int NowPointNum; 
	int PointGray(int x,int y); 
	POINT Order[8]; 
	BOOL BorderDetect(RECT *pInput_=NULL,int IsFor_Left_Top_Out=1,int IsDrawing=1,int BorderGray=0,int BkGray=255); 
	BOOL GetNormalInfo(BMPInfoHeader Info_In,BYTE *pBitsData); 
	BMPInfoHeader InfoHeader; 
	BYTE *pBits; 
	int Buffer_Point_Num; 
	BYTE * pBorderPositionBuffer; 
	Image_Identify(); 
	virtual ~Image_Identify(); 
 
}; 
 
#endif // !defined(AFX_IMAGE_IDENTIFY_H__9B3DF120_3ECE_11D4_8C58_E76E1044BE02__INCLUDED_)