OPENC函数 UF_CSYS函数 UF_MTX函数(如何创建坐标系);
1 // (题目不够长,写在这了) 2 // 函数有 3 // UF_MTX3_initialize,UF_CSYS_create_matrix,UF_CSYS_create_csys,UF_CSYS_ask_csys_info,UF_CSYS_set_wcs_display,UF_CSYS_ask_matrix_values,UF_CSYS_edit_matrix_of_object,UF_CSYS_set_origin,UF_CSYS_set_wcs 4 UF_initialize(); 5 6 //MTX3_initialize 7 //给定x,y方向 8 double x_vec[3]={1.0,0.0,0.0}; 9 double y_vec[3]={0.0,1.0,0.0}; 10 double mtx[9]={0.0}; 11 //CSYS_create_matrix 12 tag_t matrix_id=NULL; 13 //CSYS_create_csys 14 double csys_orign[3]={10.0,10.0,0.0}; 15 tag_t csys_id=NULL; 16 //CSYS_ask_csys_info 17 tag_t out_mtx_id=NULL; 18 double out_csys_origin[3]={0.0}; 19 //CSYS_set_wcs_display 20 int display_status=1; 21 //CSYS_ask_matrix_values 22 double matrix_value[9]={0.0}; 23 //给个x方向,y方向输出一个3x3的矩阵 24 UF_MTX3_initialize(x_vec,y_vec,mtx); 25 //输入3x3的矩阵,得到矩阵的tag值 26 UF_CSYS_create_matrix(mtx,&matrix_id); 27 //创建一个csys坐标系 28 UF_CSYS_create_csys(csys_orign,matrix_id,&csys_id); 29 //得到坐标系的tag,从而得到信息 30 UF_CSYS_ask_csys_info(csys_id,&out_mtx_id,out_csys_origin); 31 //设置坐标系显示 32 UF_CSYS_set_wcs_display(display_status); 33 //输入矩阵的tag获取矩阵的值 34 UF_CSYS_ask_matrix_values(matrix_id,matrix_value); 35 36 char msg[256],msg1[256]; 37 sprintf(msg,"%f,%f,%f\n",out_csys_origin[0],out_csys_origin[1],out_csys_origin[2]); 38 sprintf(msg1,"%f,%f,%f\n%f,%f,%f\n%f,%f,%f\n",matrix_value[0],matrix_value[1],matrix_value[2],matrix_value[3],matrix_value[4],matrix_value[5],matrix_value[6],matrix_value[7],matrix_value[8]); 39 //打印 40 UF_UI_open_listing_window(); 41 UF_UI_write_listing_window(msg); 42 UF_UI_write_listing_window("\n"); 43 UF_UI_write_listing_window(msg1); 44 45 //************************以下为从新改变坐标的函数*****************************// 46 //给定x,y方向 47 double x_vec_ew[3]={5.0,8.0,9.0}; 48 double y_vec_new[3]={2.0,3.0,6.0}; 49 double mtx_new[9]={0.0}; 50 //CSYS_create_matrix 51 tag_t new_matrix_id=NULL; 52 //new_origin 53 double new_csys_orign[3]={30.0,80.0,100.0}; 54 //给个x方向,y方向输出一个3x3的矩阵 55 UF_MTX3_initialize(x_vec_ew,y_vec_new,mtx_new); 56 //输入3x3的矩阵,得到矩阵的tag值 57 UF_CSYS_create_matrix(mtx_new,&new_matrix_id); 58 //指定的新坐标系矩阵的标识符更新指定的坐标系矩阵 59 UF_CSYS_edit_matrix_of_object (csys_id,new_matrix_id); 60 //给坐标系指定新的原点 61 UF_CSYS_set_origin (csys_id,new_csys_orign); 62 //设置wcs坐标系 63 UF_CSYS_set_wcs(csys_id); 64 65 UF_MODL_update(); 66 67 UF_terminate();
Life's is not that binary