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

iCAx开思网

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

UG/OPEN API编程问题,急!

[复制链接]
跳转到指定楼层
1
发表于 2006-11-15 20:35:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
在我的回掉函数中有这样一段代码:
tag_t root_tag;
tag_t displayed_part;
displayed_part=UF_PART_ask_display_part();
root_tag=UF_ASSEM_ask_root_part_occ(displayed_part);//获取根节occurence的tag,如果没有根节点,则返回NULL—TAG
    if(root_tag==NULL_TAG)
                return(UF_UI_CB_CONTINUE_DIALOG);

这以后的代码则是生成一个圆柱体,在不加if语句的情况下,可以在UG 环境下顺利实现建模,为何加上if语句就不响应了呢?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 赞一下!赞一下!
2
发表于 2006-11-16 12:47:34 | 只看该作者
else的时候,最终你返回什么?
3
发表于 2006-11-20 12:26:57 | 只看该作者
没有else语句,就是if ,
另外发现这些代码在UG环境下,如已存一个装配,则能建立一个圆柱体,否则就不行。不知道为什么.
4
发表于 2006-11-20 14:17:34 | 只看该作者
问题的答案就在这里!
“如已存一个装配,则能建立一个圆柱体,否则就不行”
1.root_tag !=NULL_TAG
               。。。
2.root_tag==NULL_TAG
              UF_UI_CB_CONTINUE_DIALOG
5
发表于 2006-11-26 18:58:03 | 只看该作者
root_tag=UF_ASSEM_ask_root_part_occ(displayed_part);
if(root_tag==NULL_TAG)
                return(UF_UI_CB_CONTINUE_DIALOG);

root_tag==NULL_TAG的时候说明零件处理零件状态;
用这样的代码通常是来判断零件处于零件状态还是处于装配状态的
6
发表于 2006-11-26 20:30:01 | 只看该作者
四楼的,你好,
虽然没有if (root_tag!=NULL_TAG)的情况,但如果不满足root_tag==NULL_TAG,就应该执行后面的内容啊?就是说,如果后面的代码是创建一个圆柱体,一样可以创建的出来才对啊?

另外,我很想知道UF_PART_ask_display_part()这个函数的意思,按照document上的解释,它应该能返回一个当前显示的物件的tag,但设一个UIstyler的控件的回调函数中有如下程序:
         tag_t aaa;
         aaa=UF_PART_ask_display_part();//获得当前显示的零件的ID 如果没有显示部件,则返回NULL_TAG
                      UF_DISP_set_highlight(aaa,1);//把aaa高亮显示.
结果在UG环境,在已经创建一个模型(如正方体)的情况下,点击空间,该模型并不高亮显示.请问是什么原因呢?
另外,如果有很多的模型在视图中, UF_PART_ask_display_part()到底返回的是谁的tag?在一个装配中,又是什么情况呢?

这问题困扰我 好久了,快受不了了,恳请大家赐教!多谢!
7
发表于 2006-11-27 10:13:52 | 只看该作者
函数原型是:extern UFUNEXPORT tag_t   UF_PART_ask_display_part( void );/* <NEC> */
作用描述:
Returns the tag of the current display part. In a non-assembly part, this is the
same as the work part. If there currently isn't a displayed part, a
NULL_TAG is returned.
Return:
         Tag of currently displayed part
上面是文档中对该函数的解释,如果不在装配环境中,那么函数的作用就是得到当前的Work_part,因为只有在装配中才有Display_part和Work_part这两个的区分的,你可以试一下。
       可能是你把这个问题想复杂了。我试了一下,没有什么问题。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

GMT+8, 2025-1-16 05:49 , Processed in 0.030072 second(s), 11 queries , Gzip On, Redis On.

Powered by Discuz! X3.3

© 2002-2025 www.iCAx.org

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