⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 vector3.h

📁 机器人运动学动力学及控制的一个小程序,供有兴趣的人参考
💻 H
字号:
// Vector3.h: interface for the CVector3 class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_VECTOR3_H__05B37060_E2B2_4463_9D4B_A6B3791CC8BE__INCLUDED_)
#define AFX_VECTOR3_H__05B37060_E2B2_4463_9D4B_A6B3791CC8BE__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

//#include "Matrix.h"
// 下面的宏定义计算一个矢量的长度
#define Mag(Normal) (sqrt(Normal.x*Normal.x + Normal.y*Normal.y + Normal.z*Normal.z))

class CVector3  
{
//private:
//     float _x,_y,_z;
public:

	CVector3();
	CVector3(double v);
	CVector3(double v1,double v2,double v3);
	virtual ~CVector3();
public:
	double x, y, z;
public:
	
CVector3& Vector(CVector3 vPoint1, CVector3 vPoint2);
CVector3& AddVector(CVector3 vVector1, CVector3 vVector2);
CVector3& DivideVectorByScaler(CVector3 vVector1, double Scaler);
CVector3& MultiplyVectorByScaler(CVector3 vVector1, double Scaler);

CVector3& Cross(CVector3 vVector1, CVector3 vVector2);
double Multiply(CVector3 vVector1, CVector3 vVector2);
CVector3& Normalize(CVector3 vNormal);
//CMatrix ToMatrix41(int point);

CVector3& operator=(const CVector3& c);
CVector3& operator+=(const CVector3 v){return AddVector(*this,v);}
CVector3 operator-(const CVector3 &v)const;
CVector3& operator-=(const CVector3 v){return Vector(*this,v);}
CVector3 operator^(const CVector3 v)const;
CVector3& operator^=(const CVector3 v){return Cross(*this,v);}
double operator*(const CVector3 v)const;
CVector3 operator*(const double &scale)const;
CVector3 operator/(const double scale)const;
CVector3 operator+(const CVector3 &v)const;
CVector3 operator-()const;
BOOL operator==(const CVector3& v) const;
BOOL operator!=(const CVector3& v) const;

  };


#endif // !defined(AFX_VECTOR3_H__05B37060_E2B2_4463_9D4B_A6B3791CC8BE__INCLUDED_)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -