找回密码 注册 QQ登录
一站式解决方案

iCAx开思网

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

ugapi里面导出parasolid等文件的函数是那个啊?

[复制链接]
跳转到指定楼层
1
发表于 2008-4-1 18:03:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
请大侠告知,找了一天没找到,ufpart export不能导出parasolid格式的啊
含泪跪谢
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 赞一下!赞一下!
2
发表于 2008-4-2 08:36:32 | 只看该作者
extern int UF_PS_export_data (
uf_list_p_t body_list,
char * file_name );
3
发表于 2008-4-2 10:25:45 | 只看该作者
我用老大您的这个方法导出parasolid文件,只能导出一次啊,file_name = "d:pp.x_t",导出后我在adams里面看到是空的没东西,然后再次运行死活报错,我都将pp.x_t删除了,然后命名为别的file_name还是不行,需要调用别的删除吗》?

原帖由 cam-yp 于 2008-4-2 08:36 发表
extern int UF_PS_export_data (
uf_list_p_t body_list,
char * file_name );
4
发表于 2008-4-2 12:56:47 | 只看该作者
原帖由 my_dear2002 于 2008-4-2 10:25 发表
我用老大您的这个方法导出parasolid文件,只能导出一次啊,file_name = "d:pp.x_t",导出后我在adams里面看到是空的没东西,然后再次运行死活报错,我都将pp.x_t删除了,然后命名为别的file_name还是不 ...

函数是没有错的,我用的就是这个
file_name = "d:pp.x_t",  应该是file_name = "d:\\pp.x_t",

还有你要create LIST ,不要直接把SOLID 当作 LIST导出
5
发表于 2008-4-2 16:46:53 | 只看该作者
我把源码贴给你看看啊,这个不会报错但是倒不出来啊
    int errorCode = UF_initialize();

    if ( 0 == errorCode )
    {
                  char            part_fspec[MAX_FSPEC_SIZE+1];
                  int             curr_part, num_parts;
                  int             type;
                  int             count_1;
                  tag_t           part;
                  tag_t           feature;
                  uf_list_t *tag_list;//创建链表放所有的solid的tag
                  UF_MODL_create_list(&tag_list);
                  /* Get the total number of loaded parts. */
                  num_parts = UF_PART_ask_num_parts();
                  for ( curr_part=0 ; curr_part < num_parts ; curr_part++ )
                  {
                        /* Get the part tag for the current part number of the
                           loaded part and get its part name.
                        */
                        part = UF_PART_ask_nth_part( curr_part );
                        UF_PART_ask_part_name( part, part_fspec );
                        printf( title0, part_fspec );
                        count_1 = 0;
                        type = UF_solid_type;
                        feature = NULL_TAG;
                        /* Start the cycling process by passing in a NULL_TAG. */
                        UF_OBJ_cycle_objs_in_part( part, type, &feature );
                        UF_MODL_put_list_item(tag_list,feature);//添加tag值
                        /* Keep cycling until there are no more features to cycle. */
                        while ( feature != NULL_TAG )
                        {
                                int status = UF_OBJ_cycle_objs_in_part( part, type, &feature );
                                status = UF_MODL_put_list_item(tag_list,feature);//添加tag值
                        }
                        char filepath[20];
                        filepath[0] = '\0';
                        strcpy(filepath, "d:\\dddd.x_t");
                        UF_PS_export_data(tag_list,filepath);//导出parasolid文件
                        uc1601("dddddddddd",1);
                  }
                errorCode = UF_terminate();               
    }

原帖由 cam-yp 于 2008-4-2 12:56 发表

函数是没有错的,我用的就是这个
file_name = "d:pp.x_t",  应该是file_name = "d:\\pp.x_t",

还有你要create LIST ,不要直接把SOLID 当作 LIST导出
6
发表于 2008-4-2 16:51:15 | 只看该作者
我都调到里面单步调试了,没有问题的,但是就是到不出来啊
7
发表于 2008-4-2 17:15:41 | 只看该作者
版主俊男,小弟我倒出来了,但是在adams里面导入这个文件什么都不显示,我手动从ug导出parasolid导入adams一样不显示,显然不是程序问题了,为什么adams不显示呢,请大侠继续指教,谢谢
8
发表于 2008-4-2 20:30:54 | 只看该作者
函数错误啦,不是这个倒出的
9
发表于 2008-4-2 20:46:19 | 只看该作者
只用UF_solid_type去cycle是不行的,这样遍历到的对象不止是solid body,
还包括face,edge等,还要进一步判断subtype
10
发表于 2008-4-2 22:10:40 | 只看该作者
zzz还活着?!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

GMT+8, 2025-1-5 09:20 , Processed in 0.024099 second(s), 10 queries , Gzip On, Redis On.

Powered by Discuz! X3.3

© 2002-2025 www.iCAx.org

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