open C 环形阵列 UF_MODL_create_circular_iset

UF_MODL_create_circular_iset 环形阵列往往是在创建一个特征之后,零件上相同特征按照环状排列,通过环形阵列实现建模;如结果图,图中的某一孔是一圆柱特征和另一圆柱特征求差运算得到的,其余孔和该孔是环形分布关系,可以通过环形阵列得到;阵列特征之前该特征一定是通过布尔运算得到的,否则阵列失败,切记。

UF_FEATURE_SIGN sign1 = UF_NULLSIGN;
double cylinder_orig1[3] = { 0.0,0.0,0.0 };
 char* height1 = "10";
char* diam1 = "50";
double direction1[3] = { 0.0,0.0,1.0 };
tag_t cyl_obj_id1;
UF_MODL_create_cyl1(sign1, cylinder_orig1, height1, diam1, direction1, &cyl_obj_id1);//创建圆柱特征1

UF_FEATURE_SIGN sign2 = UF_NEGATIVE;
double cylinder_orig2[3] = { 12.50,0.0,0.0 };
char* height2 = "10";
char* diam2 = "8";
double direction2[3] = { 0.0,0.0,1.0 };
tag_t cyl_obj_id2;
UF_MODL_create_cyl1(sign2, cylinder_orig2, height2, diam2, direction2, &cyl_obj_id2);//创建圆柱特征2,与圆柱特征1布尔运算求差,得到孔。

 //线性阵列和环形阵列之前特征必须是布尔运算得到的,这一点也符合实际零件特征。
double origin[3] = { 0.0, 0.0, 0.0 };//定义环形阵列轴的原点
double direction[3] = { 0.0, 0.0, 1.0 };//定义环形阵列轴的方向

tag_t  feat_obj ;
uf_list_p_t feat_list;

UF_MODL_create_list(&feat_list);
UF_MODL_put_list_item(feat_list, cyl_obj_id2);
UF_MODL_create_circular_iset(0, origin, direction, "4", "90",feat_list, &feat_obj);//阵列孔

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值