UFUN函数 UF_CSYS UF_MODL UF_OBJ函数(建模注意坐标系);
阅读原文时间:2023年07月12日阅读:2

//用到的函数
//UF_MODL_create_block1 ,UF_MODL_ask_feat_body,UF_OBJ_set_name,UF_CSYS_map_point
UF_initialize();

 //MODL\_create\_block1  
 UF\_FEATURE\_SIGN sign=UF\_NULLSIGN;  
 double corner\_pt\[\]={0.0};  
 char \*edge\_len \[\]={"50.0","80.0","100.0"};  
 tag\_t blk\_obj\_id=NULL;  
 //ask\_feat\_body  
 tag\_t body\_obj\_tag=NULL;  
 tag\_t body\_obj\_tag\_2=NULL;  
 //OBJ\_set\_name  
 char obj\_name\[UF\_OBJ\_NAME\_LEN+\]="块1";  
 char obj\_name\_2\[UF\_OBJ\_NAME\_LEN+\]="块2";  
 //CSYS\_map\_poin  
 int input\_csys=UF\_CSYS\_ROOT\_WCS\_COORDS;  
 int output\_csys=UF\_CSYS\_WORK\_COORDS;  
 double input\_point \[\]={0.0};  
 double output\_point \[\]={0.0};  
 //创建块1(原点是关于绝对CSYS。但是,边长的 方向是相对于WCS的)  
 UF\_MODL\_create\_block1(sign,corner\_pt,edge\_len,&blk\_obj\_id);  
 //特征找体  
 UF\_MODL\_ask\_feat\_body(blk\_obj\_id,&body\_obj\_tag);  
 //设置名字  
 UF\_OBJ\_set\_name(body\_obj\_tag,obj\_name);  
 //坐标系映射  
 UF\_CSYS\_map\_point(input\_csys,input\_point,output\_csys,output\_point);  
 //块2  
 UF\_FEATURE\_SIGN sign\_2=UF\_NULLSIGN;  
 double corner\_pt\_2\[\]={output\_point\[\],output\_point\[\],output\_point\[\]};  
 char \*edge\_len\_2\[\]={"50.0","80.0","100.0"};  
 tag\_t blk\_obj\_id\_2=NULL;  
 //创建块2  
 UF\_MODL\_create\_block1(sign\_2,corner\_pt\_2,edge\_len\_2,&blk\_obj\_id\_2);  
 //特征找体  
 UF\_MODL\_ask\_feat\_body(blk\_obj\_id\_2,&body\_obj\_tag\_2);  
 //设置名字  
 UF\_OBJ\_set\_name(body\_obj\_tag\_2,obj\_name\_2);  
 //\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*注意注意\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*//  
 /\*  
     modl里创建特征时要注意坐标系的问题 ,例如创建块他的  
     原点是按照绝对坐标系来,然而边长的方向是相对于wcs  
     坐标系的。  
     所以,建模环境中创建体或特征时,最好将坐标系统一,  
     然后在执行创建操作。  
 \*/

 UF\_terminate();

手机扫一扫

移动阅读更方便

阿里云服务器
腾讯云服务器
七牛云服务器

你可能感兴趣的文章