0
点赞
收藏
分享

微信扫一扫

DXF笔记:AcGeMatrix3d与osg::Matrixd对比


AcGeMatrix3d与osg::Matrixd

  • AcGeMatrix3d与osg::Matrixd是互为转置
  • ObjectArx矩阵采用后乘,也叫右乘(与OpenGL一致),坐标使用列向量形式
  • DXF笔记:AcGeMatrix3d与osg::Matrixd对比_转置

  • Osg矩阵采用前乘,也叫左乘(与DirectX一致), 坐标使用行向量的形式
  • DXF笔记:AcGeMatrix3d与osg::Matrixd对比_AcGeMatrix3d后乘_02

代码验证

以下代码演示了,将一个模型绕X轴平移2500, 绕Z轴旋转90度,以及一个在Y方向错切45度的结果。

//osg
//pos * 错切 * 旋转 * 平移
osg::Matrixd mFinalMatrix = obliqueMatrix * mRotateMatrix * translateMatrix;

//objectArx或opengl
//平移 * 旋转 * 错切 * pos
AcGeMatrix3d mAcgeFinalMatrix = mTranslateMatrix *mRotationMatrix *mObliqueMatrix;

DXF笔记:AcGeMatrix3d与osg::Matrixd对比_Matrixd前乘_03


举报

相关推荐

0 条评论