/// <summary> /// 坐标变换 /// </summary> /// <param name="p">原坐标</param> /// <returns>新坐标</returns> public _3D_Point Change(_3D_Point p) { _3D_Point dxyz = new _3D_Point(X0, Y0, Z0); Matrix newp = dxyz.ToColumnMatrix() + (1 + M) * GetR() * p.ToColumnMatrix(); return(new _3D_Point(newp[0, 0], newp[1, 0], newp[2, 0])); }
/// <summary> /// 坐标变换 /// </summary> /// <param name="p">原坐标</param> /// <returns>新坐标</returns> public _3D_Point Change(_3D_Point p) { _3D_Point dxyz = new _3D_Point(para.X0, para.Y0, para.Z0); Matrix newp = dxyz.ToColumnMatrix() + para.lambda * GetR() * p.ToColumnMatrix(); return(new _3D_Point(newp[0, 0], newp[1, 0], newp[2, 0])); }
/// <summary> /// 坐标变换 /// </summary> /// <param name="p">原坐标</param> /// <returns>新坐标</returns> public _3D_Point Change(_3D_Point p) { _3D_Point dxyz=new _3D_Point(X0,Y0,Z0); Matrix newp = dxyz.ToColumnMatrix() + (1 + M) * GetR() * p.ToColumnMatrix(); return new _3D_Point(newp[0,0],newp[1,0],newp[2,0]); }