点击查看详细介绍

新手-UG二次开发问题

52yjs 18年前 6220 7

购买与咨询 NX 二次开发视频教程,请联系微信号:13890821008  QQ号:85585969  


1.如果想把一个零件添加到装配中是否需要先打开这个零件?!
UF_PART_open(source_unit_name,

0

最新回复 (7)
  • dspace 18年前
    1

    我也是从来没有弄懂过,希望有高手来教教我们就好了,其实只要有一个可运行的例子一下就看明白了,希望高手路过的时候,不吝赐教,先谢谢啦。

    1.我跟楼上的朋友的装配方法好像不一样,我以前照着坛子里一个朋友的帖子做过一个,就是两个圆柱,事先在手动建模环境下把需要装配的面都命名,然后根据名字找到那些面,来创建约束关系,最后求解约束,完成了装配。不过这样似乎没有什么意思。

    2.我也UF_PART_open先打开一个零件,然后接着UF_ASSEM_add_part_to_assembly把主动件加进来,然后步骤就同上面说的一样了。

    3.看了楼上朋友说的情况,我想问问UF_ASSEM_add_part_to_assembly()这个函数的功能就是将一个主动件加入到被动件里的去,对吧,但是这个函数的第二个参数,似乎只能是带路径的零件名,就是说只能实现将某个指定的零件加到那个被动件里去吧,这太限制了死了吧,那如果我想实现这样的功能:先UF_PART_open打开一个零件,再UF_PART_open打开一个零件,然后让这两个零件自动装配起来,可以实现不?怎么实现?关键应该是UF_ASSEM_add_part_to_assembly()吧。希望高手们能看到。

  • mizzle 18年前
    2

    只用最后一个函数即可,
    tag_t work_part = UF_ASSEM_ask_work_part( );

  • 52yjs 18年前
    3

    多谢楼上高手指点,我的问题解决了!

  • dspace 18年前
    4

    多谢mizzle。
    to 楼主:我说的就是把一个零件作为一个子部件装配到另一个零件中去,当然也可以新建一个零件,将这两个零件都加进去,然后进行装配。现在我已经实现了调用Windows风格的文件打开对话框来打开想要打开的零件,获得具体路径后可以将其赋给UF_PART_open就是作为一个新的零件来打开,赋给UF_ASSEM_add_part_to_assembly,就可以作为子部件加入到已经打开的父零件中。我写的代码已经调试通过了,见附件,为了方便调试,我在ufusr()接口开发的,当然也可以ufsta()接口实现,通过对话框上的按钮来实现。
    但是现在我想根据window消息框的提示来一一自己选择想要配合的面,然后进行装配,但是我不会,请大侠们帮我贴了小例子上来吧,先谢过!

  • gao264 18年前
    5

    你想要怎么提示??感觉没说明白

  • dspace 18年前
    6

    谢谢gao264。
    比如说两个圆柱进行装配,两个约束条件,一个是两个面的贴合,另一个是两个圆柱面中心对称。
    将设这两个零件已经打开了,一个是作为子部件添入到另一个中去的,接下来就应该是定义约束类型和指定参与配合的面了吧。界面有一个按钮,点击这个按钮,弹出消息对话框“请选择进行贴合的第一个面”,在图形界面选择好了后,弹出第二个消息对话框“请选择进行贴合的第二个面”,然后在图形界面选择第二个面,如此下去,所有的面选好之后,程序自动进行装配,自动在图形界面更新显示。这样的功能应该能实现吧,哪位大侠帮我贴点代码出来吧。

  • dspace 18年前
    7

    自己顶一次,希望高手帮忙解答一下。

请登录后发表新帖