iCAx开思工具箱

标题: 【求助】如何在沉头孔中攻内螺纹 [打印本页]

作者: Fields2003    时间: 2003-4-24 11:29
标题: 【求助】如何在沉头孔中攻内螺纹
thread  的两个主要参数为 start_face 和 cyl_face
想通过 ask_face_data()  中的 type  来判定上述两个量
但通过对 c_bore_hole 的face的输出发现只有三个 16,22,16
即使说有 2 个cylindercil plane 和 1 个 bounded plane
  
请教各位高手
另附零件原图和cpp源程序
  
QQ:    6602664
mail:   xdclan@21cn.com
  
谢谢
问题于今晚 9:00 解决!
作者: taiga2001    时间: 2003-4-26 09:43
Fields2003 wrote:
   
  谢谢  
  问题于今晚 9:00 解决!

  
那就讲一讲如何解决的,大家分享么!是不是用c-bore孔的放置面作start—face,那cylinder-face如何确定?
作者: Fields2003    时间: 2003-4-26 16:01
呵呵,既然有人看得起这个小问题,那就出来说说了,下面是部分代码:
  
//  想要再沉头孔的小孔攻螺纹,以下代码布包含数据类型定义
UF_MODL_ask_feat_faces(thread_c_bore_hole_tag,[$list)]
UF_MODL_ask_list_count(list,[$num)]  
for (i=0;i<num;i++)   // 进入循环,判断匹配
{
    UF_MODL_ask_list_item(list,i,[$face)]
    UF_MODL_ask_face_data(face,&type,point,dir,box,
         [$radius,&rad,&sen)]
   
    if ( (type == 16) && (fabs(radius-3.458500)<10e-3) )  
        c_face = face;
/*上一句为我开始一直弄错的地方,由于沉头孔有3个面,分别是16,16,22,而两个 16 之间的区别之一是半径不同,由于我需要的小孔半径是 3.4585 ,故加上以上判断就可以为攻螺纹找到 cylindrical_face,   以下略*/
    if (type == 22)
       s_face=face;
}
  
小问题,让大家见笑了.studying..............




欢迎光临 iCAx开思工具箱 (https://t.icax.org/) Powered by Discuz! X3.3