NX二次開發-座標系轉換
阿新 • • 發佈:2020-12-14
NX二次開發-座標系轉換
- 從CSYS轉換到ACS;
1 void MapPointFromCsysToAcs(tag_t csys, double* point) 2 { 3 if (NULL_TAG == csys) 4 { 5 return; 6 } 7 8 double csysOrigin[3] = { 0.0 }; 9 tag_t matrixTag = NULL; 10 double csysMatrix[9] = { 0.0 }; 11 UF_CSYS_ask_csys_info(csys, &matrixTag, csysOrigin);12 UF_CSYS_ask_matrix_values(matrixTag, csysMatrix); 13 UF_MTX3_vec_multiply_t(point, csysMatrix, point); 14 UF_VEC3_add(point, csysOrigin, point); 15 }
- 從ACS轉換到CSYS。
1 void MapPointFromAcsToCsys(tag_t csys, double* point) 2 { 3 if (NULL_TAG == csys) 4 { 5 return;6 } 7 8 double csysOrigin[3] = { 0.0 }; 9 tag_t matrixTag = NULL_TAG; 10 double csysMatrix[9] = { 0.0 }; 11 UF_CSYS_ask_csys_info(csys, &matrixTag, csysOrigin); 12 UF_CSYS_ask_matrix_values(matrixTag, csysMatrix); 13 UF_VEC3_sub(point, csysOrigin, point); 14 UF_MTX3_vec_multiply(point, csysMatrix, point);15 }