NX二次开发-矩阵乘矩阵的几何意义

Posted kmould

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了NX二次开发-矩阵乘矩阵的几何意义相关的知识,希望对你有一定的参考价值。

函数:UF_MTX3_multiply() 或者UF_MTX3_multiply_t()。推荐使用UF_MTX3_multiply() 

函数说明:矩阵相乘,得到新的矩阵,如下图WCS与ABS重合,在暗绿色坐标系(ABS坐标系)下有个亮绿色坐标系(dou9m1[9] = { -1,0,0,0,1,0,0,0,-1 };),将亮绿色坐标系变换到粉红色坐标系(douFaceCsysMatrix[9] = { -1,0,0,0,-1,0,0,0,1 };)下得到红色坐标系(dou9m2)。矩阵乘积的几何意义:坐标系转换到另一个坐标系下,相对位置不变。A坐标系中有个B,将B转换到A1坐标系下得到B1,则B与A和B1与A1的相对几何位置不变。

技术图片

 

 

 

 1 #include "Text.h"
 2 extern DllExport void ufsta(char *param, int *returnCode, int rlen)
 3 {
 4     UF_initialize();
 5 
 6     double    douFaceCsysMatrix[9] = { -1,0,0,0,-1,0,0,0,1 };
 7 
 8     double    dou9m1[9] = { -1,0,0,0,1,0,0,0,-1 };
 9     double    dou9m2[9];
10     
11     UF_MTX3_multiply(dou9m1, douFaceCsysMatrix, dou9m2);
12 
13 
14     tag_t tagMatrixId = NULL_TAG;
15     UF_CSYS_create_matrix(dou9m2, &tagMatrixId);
16     double douCsysOrigin[3] = { 1,1,1 };
17     //创建坐标系
18     tag_t tagCSYS = NULL_TAG;
19     UF_CSYS_create_csys(douCsysOrigin, tagMatrixId, &tagCSYS);
20     //UF_CSYS_set_wcs(tagCSYS);
21 
22     
23 
24     UF_terminate();
25 }
26 
27 extern int ufusr_ask_unload(void)
28 {
29     return (UF_UNLOAD_IMMEDIATELY);
30 }

 

以上是关于NX二次开发-矩阵乘矩阵的几何意义的主要内容,如果未能解决你的问题,请参考以下文章

如何理解矩阵相乘的几何意义或现实意义

NX二次开发-获取指定矩阵标识的矩阵值

一个行矩阵乘以一个列矩阵(一样大小)有啥物理或者几何意义?

NX二次开发-通过3x3矩阵获取XYZ轴矢量

UG NX二次开发(C#)-装配-删除阵列矩阵

UG NX二次开发(C#)-装配-删除阵列矩阵