以前只是用UFUN函数中的UF_MTX中的矩阵函数,也没具体输出的结果。今天自己通过线性代数中的矩阵变换,自己写了一些变换矩阵,然后在NX中测试是否正确。但测试发现UF_MTX4_vec3_multiply运行结果与预期不符合,开始以为变换矩阵错了,然后用矩阵相乘发现变换矩阵是正确的,然后就用UF_MTX4中的函数求一个变换矩阵,并打印,发现UF是以列表示矩阵的。特此记录,对于遇到此问题的朋友也是一个提示。
double transMtx[16] = { 0.0 }
UF的矩阵表示:
transMtx[0] transMtx[4] transMtx[8] transMtx[12]
transMtx[1] transMtx[5] transMtx[9] transMtx[13]
transMtx[2] transMtx[6] transMtx[10] transMtx[14]
transMtx[3] transMtx[7] transMtx[11] transMtx[15]
正常书写的顺序:
transMtx[0] transMtx[1] transMtx[2] transMtx[3]
transMtx[4] transMtx[5] transMtx[6] transMtx[7]
transMtx[8] transMtx[9] transMtx[10] transMtx[11]
transMtx[12] transMtx[13] transMtx[14] transMtx[15]