www.mxdraw.com
|
McGeVector3d类表示3D空间的一个矢量
class McGeVector3d;
McGeVector3d.h
例如: 求失量与X轴的夹角
double d = vetT.angleTo(AcGeVector3d::kXAxis,-AcGeVector3d::kZAxis);
后面的代码求出vetFx逆时针到vetT的角度 double d = vetFX.angleTo(vetT,AcGeVector3d::kZAxis);
判断向量vetT在向量VetFX的左边,还是在右边的调用 double d = vetFX.angleTo(vetT,AcGeVector3d::kZAxis); if(d >= 0.0 && d <= PI ) { //向量vetT在vetFX的左边. } else { //向量vetT在vetFX的右边. } // 或 if (vetFX.dotProduct(vetT.perpVector()) < 0) // vetFX在vetT的左边。 //m_endDir.perpVector()是m_endDir的垂直向量.
判断两个向量方向相同还是相反调用 double db = vetFXPoint.dotProduct(vetFX); if(db < 0 ) { //向量返向. } 两个向量点乘如果等于0,表示向量垂直。 两个向量点乘如果等于1,表示向量方向完全向同。 两个向量点乘如果等于-1,表示向量方向完全反向。