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

iCAx开思网

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

关于propdb_auto_interchange()函数的问题

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

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

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

x
有哪位高手用过这个函数prodb_auto_interchange()?
我想用这个函数实现族表零件的自动替换,toolkit中提供的函数原型为prodb_auto_interchange(
Prohandle p_asm
int memb_num
int replace_id_list
Prohandle p_model
)
相关方法注释
Instances in a family table share the same assembly constraints.
Consequently, you can automatically replace an assembly
component with another instance in the component's family table
without respecifying any assembly constraints. Simply retrieve the
handle for the replacement instance and pass this handle toprodb_auto_interchange().

若有人做过相关方面的研究,请与我联系
qq:19947386  请著明 prodb_auto_interchange()
skype:smoothzym
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 赞一下!赞一下!
2
发表于 2006-3-28 19:47:48 | 只看该作者
有没有同道?
3
发表于 2006-3-28 19:48:16 | 只看该作者
大侠啊
快出现啊
4
发表于 2006-3-30 15:47:14 | 只看该作者

函数prodb_auto_interchange()的问题

我在详细说明一下:
我要做的工作是这样的:在装配体A1.ASM中有两个元件B和C,B有若干个族表子零件B_10,B_12.......,现在,我要用这个函数实现以B_10来替换B的功能,
..................................
ProFileName name;
ProMdl instmdl;
Prohandle p_asm,p_model;
ProIdTable Idlist[1]={39};
int w_id;

ProMdlCurrentGet(&p_asm);
ProStringToWstring(name, "B_10");
ProMdlRetrieve(name, ProMdlType(PRO_MDL_PART),&p_model);

prodb_auto_interchange(Prohandle(p_asm),1,Idlist[1],Prohandle(p_model));

ProMdlWindowGet(p_asm,&w_id);
ProWindowActivate(w_id);
ProSolidRegenerate(ProSolid(p_asm),PRO_B_TRUE);
...................................

组件A1.ASM由B和C组成,B在A1.ASM中的ID为39,B和C都在层树的第一层.故我认为num应为1,
Idlist[1]={39},使用时,先打开A1.ASM,故函数ProMdlCurrentGet(&p_asm)的输出结果p_asm
应是A1.ASM的句柄,
ProStringToWstring(name, "B_10");
ProMdlRetrieve(name, ProMdlType(PRO_MDL_PART),&p_model);
这两个函数来输出元件"B_10"的句柄p_model.
编译也通过了,但在注册时,Pro/E自动退出,不知道是什么问题,望可林斑竹及
5
发表于 2006-3-30 15:48:50 | 只看该作者

prodb_auto_interchange

我要做的工作是这样的:在装配体A1.ASM中有两个元件B和C,B有若干个族表子零件B_10,B_12.......,现在,我要用这个函数实现以B_10来替换B的功能,
..................................
ProFileName name;
ProMdl instmdl;
Prohandle p_asm,p_model;
ProIdTable Idlist[1]={39};
int w_id;

ProMdlCurrentGet(&p_asm);
ProStringToWstring(name, "B_10");
ProMdlRetrieve(name, ProMdlType(PRO_MDL_PART),&p_model);

prodb_auto_interchange(Prohandle(p_asm),1,Idlist[1],Prohandle(p_model));

ProMdlWindowGet(p_asm,&w_id);
ProWindowActivate(w_id);
ProSolidRegenerate(ProSolid(p_asm),PRO_B_TRUE);
...................................

组件A1.ASM由B和C组成,B在A1.ASM中的ID为39,B和C都在层树的第一层.故我认为num应为1,
Idlist[1]={39},使用时,先打开A1.ASM,故函数ProMdlCurrentGet(&p_asm)的输出结果p_asm
应是A1.ASM的句柄,
ProStringToWstring(name, "B_10");
ProMdlRetrieve(name, ProMdlType(PRO_MDL_PART),&p_model);
这两个函数来输出元件"B_10"的句柄p_model.
编译也通过了,但在注册时,Pro/E自动退出,不知道是什么问题,望斑竹及各位高
手帮忙指点迷津,谢谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

GMT+8, 2025-1-10 19:07 , Processed in 0.022549 second(s), 11 queries , Gzip On, Redis On.

Powered by Discuz! X3.3

© 2002-2025 www.iCAx.org

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