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

iCAx开思网

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

[求助] UG 二次开发 标注 选择问题

[复制链接]
跳转到指定楼层
1
发表于 2010-2-6 01:37:58 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多同行朋友,交流,分享,学习。

您需要 登录 才可以下载或查看,没有帐号?注册

x
我想写个程序.出UG的孔位表 .
只想出我选择的.UG 里有个命令,可以出全部的,但不适合
现在的问题是.假如,我想标注两条边之间的距离尺寸,我要手动选择的话,
用UG open c , 我无论如何都不能选择.肯定是我函数用错了.
目前我用的形式如下:
  1. tatic int init_proc_curve(UF_UI_selection_p_t select, void* user_data)
  2. {
  3. int num_triples = 5;
  4. UF_UI_mask_t mask_triples[] =
  5. {
  6. UF_line_type, 0, 0,
  7. UF_circle_type, 0, 0,
  8. UF_conic_type, 0, 0,
  9. UF_spline_type, 0, 0,
  10. UF_solid_type, 0, UF_UI_SEL_FEATURE_ANY_EDGE
  11. };
  12. // enable only solid body
  13. UF_UI_set_sel_mask(
  14. select,
  15. UF_UI_SEL_MASK_CLEAR_AND_ENABLE_SPECIFIC,
  16. num_triples,
  17. mask_triples
  18. );
  19. return (UF_UI_SEL_SUCCESS);
  20. }

  21. int select_draft(tag_t select[], int *body_no)
  22. {
  23. char cue[] = "选择所有曲线";
  24. char title[] = "选择所有曲线";
  25. int response, count, i;
  26. tag_p_t objects;
  27. UF_UI_select_with_class_dialog(cue,title,UF_UI_SEL_SCOPE_ANY_IN_ASSEMBLY,init_proc_curve,NULL,&response,&count,&objects);

  28. if (count > 0 && count < 100) //write out info & turn off highlight
  29. {
  30. *body_no = count;
  31. for(i = 0; i < count; i++)
  32. select = objects;
  33. response = 100;
  34. }
  35. if (count > 0)
  36. for(i = 0; i < count; i++)
  37. UF_DISP_set_highlight(objects, 0);
  38. UF_free(objects);
  39. return response;
  40. }
复制代码

本帖最后由 olympic 于 2010-2-6 01:39 编辑
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 赞一下!赞一下!
2
发表于 2012-11-12 17:08:09 | 只看该作者
在选择函数前加UF_UI_set_cursor_view()
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

GMT+8, 2024-12-24 20:30 , Processed in 0.021745 second(s), 11 queries , Gzip On, Redis On.

Powered by Discuz! X3.3

© 2002-2024 www.iCAx.org

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