找回密码 注册 QQ登录
开思网工业级高精度在线3D打印服务

iCAx开思网

CAD/CAM/CAE/设计/模具 高清视频【积分说明】如何快速获得积分?快速3D打印 手板模型CNC加工服务在线3D打印服务,上传模型,自动报价
打印 上一主题 下一主题

手把手教你做UG二次开发。

[复制链接]
91
发表于 2003-4-10 19:11:47 | 只看该作者
谢谢了,我也找到这个问题了.谢谢斑竹了哟.敢问斑竹的email多少呢?今后咱们可以交流交流.有什么好的资料也可以共享一下.我的是e_i_wang@163.com
92
发表于 2003-4-11 08:50:47 | 只看该作者
我的资料里面有啊。
93
发表于 2003-4-13 20:04:51 | 只看该作者
求助::{
镜射特征中螺纹是否可见是不是由thread.include_instances =UF_MODL_INCL_INSTANCES控制?
为何镜射【mirror】特征中原来的螺纹不见了?

//----------------------- Create  boss-----------------------
      UF_MODL_create_boss(location1,direction,diam_boss,h_boss,angle,trim_face,[$boss_id)]
  
//------------------- Create a thread on boss---------------------
  
//Get boss faces to use as start face and cylinder face of the thread
    tag_t s_face,c_face,thread_id;
    uf_list_p_t  list;
      
    UF_MODL_create_list([$list)]
    UF_MODL_symb_thread_data_t thread;
      UF_MODL_ask_feat_faces(boss_id,[$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 == 22) && (fabs(dir[1]-1.0)< 10e-7) )  
      s_face = face; //start face
     if (type == 16)  
       c_face = face; //cylinder face   
   }
   UF_MODL_delete_list([$list)]
  
//create thread
    char thread_length[10];
    thread_length[0]='\0';
    sprintf(thread_length,"%f",0.5*atof(L.value.string)-hi-2.0);
  
      thread.cyl_face = c_face;
      thread.start_face = s_face;
      thread.axis_direction[0]=0;
      thread.axis_direction[1]=-1;
      thread.axis_direction[2]=0;
      thread.include_instances =UF_MODL_INCL_INSTANCES;
      thread.rotation=UF_MODL_RIGHT_HAND;
      thread.length_flag= UF_MODL_FIXED_LENGTH;
      thread.tapered = UF_MODL_NON_TAPERED;
      thread.num_starts = 1;
      thread.length=thread_length;
      thread.form = "Metric";
      thread.method = "CUT";
      thread.callout =callout;
      thread.major_dia = "10";
      thread.minor_dia = "8.917";
      thread.tapped_dia = "9.813";
      thread.pitch = "1.0";
      thread.angle = "60";
      UF_MODL_create_symb_thread([$thread, &thread_id)]
//-----------------chamfer edge of the boss--------------------------
  
    uf_list_p_t  boss_face_edge_list;
    tag_t chamfer_id,mirror_obj;     
      UF_MODL_ask_face_edges (s_face,[$boss_face_edge_list)]
        
      UF_MODL_create_chamfer (1, ".5", ".5", "45",boss_face_edge_list,[$chamfer_id)]
  
    UF_MODL_delete_list([$boss_face_edge_list)]
     UF_MODL_ask_feat_body(chamfer_id,[$mirror_obj)]
  
////////////////////////////////////////////////////////////////////////////////////////////
    ///--------------------create mirror feature-------------------------------------
   
double ctr_point[3] = {0.0, 0.0, 0.0};
   double directiony[3] = {0.0, -1.0, 0.0};
   tag_t mirror_tag,dplane, mirror_body;
   
//Create Datum Plane   
   UF_MODL_create_fixed_dplane(ctr_point, directiony, [$dplane)]
      
// Create a mirrored body   
  
UF_MODL_create_mirror_body(mirror_obj,dplane,[$mirror_tag)]
  
UF_MODL_ask_feat_body(mirror_tag,[$mirror_body)]
  

//---------------------unite-------------------------------

  
UF_MODL_unite_bodies(mirror_obj,mirror_body);
94
发表于 2003-4-15 14:24:08 | 只看该作者
没办法,只好又加了一段,在mirror特征上作多一次螺纹!
  
//------------------------create a thread feature on the mirror boss----------------
  
     UF_MODL_create_list([$list)]
      UF_MODL_ask_feat_faces(mirror_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 == 22) && (fabs(dir[1]+1.0)< 10e-7) && point[1]<-10 )  
      s_face = face;//start face
     if (type == 16)  
       c_face = face;//cylinder face
   }
   UF_MODL_delete_list([$list)]
  
      thread.cyl_face = c_face;
      thread.start_face = s_face;
      thread.axis_direction[0]=0;
      thread.axis_direction[1]=1;
      thread.axis_direction[2]=0;
      thread.include_instances =UF_MODL_INCL_INSTANCES;
      thread.rotation=UF_MODL_RIGHT_HAND;
      thread.length_flag= UF_MODL_FIXED_LENGTH;
      thread.tapered = UF_MODL_NON_TAPERED;
      thread.num_starts = 1;
      thread.length=thread_length;
      thread.form = "Metric";
      thread.method = "CUT";
      thread.callout =callout;
      thread.major_dia = "10";
      thread.minor_dia = "8.917";
      thread.tapped_dia = "9.813";
      thread.pitch = "1.0";
      thread.angle = "60";
      UF_MODL_create_symb_thread([$thread, &thread_id)]
95
发表于 2003-4-15 14:29:01 | 只看该作者
::{【求助】如图:过点p作圆弧arc1的切线,是否有对应函数?有没有什么办法实现?斑竹帮帮忙!
96
发表于 2003-4-16 08:15:24 | 只看该作者
斑竹你好.我现在已经明确的知道了我的part文件中两个实体对象的tag_t 和name.现在我想用UF_OBJ_cycle_by_name()这个函数来确定查询出来的tag_t是否和原来的一致,
tag_t name_tag=NULL_TAG;
  UF_OBJ_cycle_by_name (CM_name,[$name_tag )]
  while(name_tag!=NULL_TAG)
  {
    UF_OBJ_cycle_by_name(AM_name,[$name_tag)]
  }
当我给name_tag赋值时,函数返回也是为0,当我不赋值时,调试说我内存访问禁止.请问斑竹能否给点提示?谢谢.
97
发表于 2003-4-16 09:52:10 | 只看该作者
那就是不存在吧。
98
发表于 2003-4-16 17:43:02 | 只看该作者
觉得zzz很强!是我学习的楷模:)
我是一个刚开始学习ug二次开发的新手,马上机要进入课题,老板现在让我先看看UG/Open API 中的一些函数,由于是新手,在加上时间比较紧,囫囵吞找的看了一部分,有很多地方不是太明白,在这里先问几个让我很困惑的菜问题
很想得到zzz的帮助::(谢了先:))
他们是:
1、ufstr()和ufusr()的区别;
2、UF_UI_dismiss_dialog_area_2()对这个函数在看DOCUMENT时不是太理解
不知道他和UF_UI_cancle_uf_dialog()的区别??
3、UF_UI_get_DA1_coords()
UF_UI_get_DA2_coords()着两个函数中DA1和DA2具体指的是什么??以前在UG Documentation Help看到过但是现在找不到了,应为是新手好急啊!!!
99
发表于 2003-5-2 19:24:19 | 只看该作者
最近这里好像没动静啊。。。。。。顶一下!
100
发表于 2003-5-4 14:55:42 | 只看该作者
把你做的最复杂的东东,贴出来
  
让大家看看,如何?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3D打印手板模型快速制作服务,在线报价下单!

QQ 咨询|手机版|联系我们|iCAx开思网  

GMT+8, 2024-12-25 23:38 , Processed in 0.026286 second(s), 9 queries , Gzip On, Redis On.

Powered by Discuz! X3.3

© 2002-2024 www.iCAx.org

快速回复 返回顶部 返回列表