www.pudn.com > 人体步态跟踪识别bate版.rar > Human.h


// Human.h: interface for the CHuman class. 
// 
////////////////////////////////////////////////////////////////////// 
 
#if !defined(AFX_HUMAN_H__F30A5041_2091_487D_8AEB_5671B3D53B83__INCLUDED_) 
#define AFX_HUMAN_H__F30A5041_2091_487D_8AEB_5671B3D53B83__INCLUDED_ 
 
#if _MSC_VER > 1000 
#pragma once 
#endif // _MSC_VER > 1000 
 
struct Region 
{ 
	CPoint Point;    //坐标点 
	int Width;       //宽度 
	int Height;      //高度 
	double Angle;    //和水平方向的角度 
}; 
 
 
class CHuman   
{ 
public: 
	Region m_head;             //头部 
	Region m_neck;             //颈部 
	Region m_left_upper_arm;   //左上肢 
	Region m_left_lower_arm;   //左下肢 
	Region m_right_lower_arm;  //右上肢 
	Region m_right_upper_arm;  //右下肢 
	Region m_right_hand;       //右手 
	Region m_left_hand;        //左手 
	Region m_chest;            //胸部 
	Region m_abdomen;          //腹部 
    Region m_left_thigh;       //左大腿 
	Region m_right_thigh;      //右大腿 
	Region m_left_crus;        //左小腿 
    Region m_right_crus;       //右小腿 
	Region m_left_foot;        //左脚 
    Region m_right_foot;       //右脚 
     
    CArray m_JointPoint; //关节点坐标序列 
    CArray m_JointPointPre[JointNumber]; //关节点预测坐标 
public: 
	void RectangleRotation(Region r, CPoint* p); 
	void Rotation(CPoint* p1,CPoint p0,double angle); 
	void ComputerRegin(Region r, RECT prect); 
	void SetRightFootRegion(); 
	void SetLeftFootRegion(); 
	void SetRightCrusRegion(); 
	void SetLeftCrusRegion(); 
	void SetRightThighRegion(); 
	void SetLeftThighRegion(); 
	void SetAbdomenRegion(); 
	void SetChestRegion(); 
	void SetLeftHand(); 
	void SetRightHand(); 
	void SetRightUpperArm(); 
	void SetRightLowerArm(); 
	void SetLeftLowerArm(); 
	void SetLeftUpperArm(); 
	void SetNeckRegion(); 
	void SetHeadRegion(); 
	void DrawHuman(CDC* pDC); 
 
	CHuman(); 
	virtual ~CHuman(); 
 
}; 
 
#endif // !defined(AFX_HUMAN_H__F30A5041_2091_487D_8AEB_5671B3D53B83__INCLUDED_)