|
希望得到一个和ug自身的旋转当前wcs坐标系的功能一样的命令。$ ^; C3 p9 l; \/ w5 D
我想把当前坐标系按zc轴旋转45度,当前坐标系不是绝对坐标。 T) S" r1 @) n; M9 P
6 {' R7 x# y6 E利用这个函数时UF_MTX3_rotate_about_axis 旋转出来的结果老出问题。 & ?2 F# A* C/ Q$ z4 S
运行后得到的坐标系好像是把绝对坐标系按照ZC轴的方向旋转了45度,而不是把当前的坐标系旋转。
v, g U' ?- A; ^( K s请问有什么好的方法可以实现旋转坐标系么?
1 l) w8 W. \) \+ @" K n' [" X/ H8 X' P. a) a
代码如下:+ K# T( |4 v: A" r3 f1 ?. ?
UF_CSYS_ask_wcs (&wcs_orig);; `( W* y. t5 J$ D* l
UF_CSYS_ask_csys_info (wcs_orig, &matrix_id, csys_origin );
, N" o" o+ X: {) D. [2 O; T UF_CSYS_ask_matrix_values (matrix_id, matrix_values);' O1 z! z; I% x% Z) r
UF_MTX3_z_vec (matrix_values, z_vec );(这里应该和下面蓝色赋值部分一样吧~)8 W, ~" M! G0 p: g! m$ \
UF_MTX3_rotate_about_axis (z_vec, PI/4, matrix_values);. V9 y- ~- Z& e; Y5 [7 b
UF_CSYS_create_matrix (matrix_values, &matrix_id );
/ Z* p! Y' M; o5 U3 w. G' G7 ?/ [ UF_CSYS_create_temp_csys (csys_origin, matrix_id, &wcs_orig );! |; s! I1 l8 b3 e( a Q+ L
UF_CSYS_set_wcs (wcs_orig ); |
|