PLM之家PLMHome

[源码分享] Catia二次开发源码分享:创建零件设计表

2018-2-22 13:21:35 1229 0

[复制链接]
admin 发表于 2018-2-22 13:21:35 |阅读模式

admin 楼主

2018-2-22 13:21:35

请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!

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

x
创建零件设计表8 O1 m- {) p9 I9 J" X& s/ a

: u: ~8 \5 D5 }- ?) J- _//初始化CATICkeParmFactory 工厂( W# d3 H% m' e* Q
CATICkeParmFactory_var spParmFactory = spContainer;
/ O, b  ]8 P& [: w: V//创建设计表的函数如下( {( L) p; q9 t7 A; Y% o* p
CATIDesignTable_var CreateDesignTable( const CATUnicodeString& iRelationName,0 I  Y* k( g9 g2 w" D4 ^
const CATUnicodeString& iComment,
1 n3 G4 a0 r; S% P1 rconst CATUnicodeString& iFilePath,
4 H$ T: l0 G. L; b2 Rint orientation = 1,
1 G& Q6 q9 H" Y! W% j+ y3 r+ |- Yint sheetWithoutFile = 0 );: K. x  I( o5 j2 B5 w" y
函数说明:iRelationName 为设计表的名字,iComment 为设计表的说明,iFilePath 为创建' d, Y  R( y& }' y' O' t& u
表的路径。; H3 L& h) d( y* z. j
创建零件族的步骤如下:
8 i2 R$ }# K9 h1.创建参数
) \; S6 k: W% y" t* B- O: vCATICkeParm_var spPp1 = spFact->CreateInteger ("Column1",0);+ ^+ S  M) Z1 X8 V) J2 [2 l
CATICkeParm_var spPp2 = spFact->CreateReal ("r",0.0);
. n# X" d$ q: L) Z( X( k) v, w2 kCATICkeParm_var spPp3 = spFact->CreateString ("s","");
5 Y* q+ x  ]  C5 t& `CATICkeParm_var spPp4 = spFact->CreateBoolean ("b",CATCke::True);
( R$ T, c2 s# B$ S: gCATICkeParm_var spPp5 = spFact->CreateLength ("l",0);
$ R4 ]9 T9 U/ h7 w/ J9 H' jCATICkeParm_var spPp6 = spFact->CreateAngle ("a",0);
( T# {- J0 L7 W4 S2 _6 Q' p! ]2.将参数显示在结构树上5 K6 g, d" k0 O
CATIPrtContainer_var spPrtCont = spContainer;
, h3 n$ _+ E1 @+ T" e7 JCATIParmPublisher_var spPubroot = spPrtCont->GetPart();
$ o5 N! _. U6 qCATICkeFunctionFactory_var fact = CATCkeGlobalFunctions::GetFunctionFactory();* U0 I: J1 b7 L9 i' ?; J
CATISpecObject_var spParameterSet = NULL_var;
$ ^6 m0 K5 |$ tspParameterSet=! o6 C+ F6 l8 ]3 N, }
fact->GetCurrentSet(CATICkeFunctionFactory::Parameter,spPubroot,CATCke::True);* t/ j$ ?4 J0 B
CATIParmPublisher_var spParmPublisher = spParameterSet;
' ]2 B/ l  ~5 [+ [0 qspParmPublisher->Append(spPp1);0 s1 p5 V2 F. G4 C
2 _$ u3 R  ]# c4 O- f' k5 O$ A6 R
spParmPublisher->Append(spPp2);
0 V4 F6 B2 V, P" O% zspParmPublisher->Append(spPp3);
" V( V% w5 A3 k( \- ]spParmPublisher->Append(spPp4);
7 O. `8 Y0 c1 t1 D2 _spParmPublisher->Append(spPp5);1 Q& h+ l& b! c( _
spParmPublisher->Append(spPp6);6 m: D' Z& Y+ T, L! U
3.创建设计表# w& S- N3 O1 b
CATIDesignTable_var spDesignTable = spFact->CreateDesignTable();- U$ D# _& V0 q" Q. p
4.将设计表显示在结构树上9 q5 m5 c7 T# X- Z1 _" I9 W/ o
CATISpecObject_var spRelationSet = fact ->GetCurrentSet(
" R* C3 K) Z6 X; \7 w5 {3 ^CATICkeFunctionFactory::Relation,spPubroot,CATCke::True);8 `% I( j2 N0 h+ ?, ?
spParmPublisher = spRelationSet;1 l  b% g4 J8 G% W
spParmPublisher->Append(spDesign);4 G0 H( g$ _4 i
5.将参数与设计表关联,注意参数名字与设计表的列参数名字一定要相同
: G5 }, d! U/ o- \' G% o( f// 参数列表+ x3 [0 l$ U0 d6 W. K  s' r
CATLISTV(CATBaseUnknown_var) list;
7 w+ \, v2 Q) v5 m3 m# l3 klist.Append(spPp1);0 b, j3 h! N; ]! z1 V
spDesign->AutomaticAssociations(spContainer, NULL_var, &list);9 w4 Z  R# D# h: Y& E+ g1 n
// 添加关联6 P/ @6 s2 l8 W' Y$ ~6 S0 w
spDesign->AddAssociation("Column2", spPp2);( O- A$ `" h3 Z
spDesign->AddAssociation("Column3", spPp3);9 U' \* C! D: K. \' |+ z  L
spDesign->AddAssociation("Column4", spPp4);% N$ W6 N2 H% X& a( U- h3 T6 |6 d
spDesign->AddAssociation("Column5", spPp5);% o0 ~2 W9 {7 i5 \6 p
6.设置配置0 c4 Q. y0 q# _; I- D4 l
spDesign->SetCurrentConfiguration(1);) z& y, s3 l5 @

4 G: M7 M, ^$ M6 K% _1 d; X
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 注册

返回列表 本版积分规则

:
管理员
:
xduniverse@qq.com
:
点击这里给我发消息
:
http://www.plmhome.com
:
原西门子NX高级教务员,10多年NX培训,开发咨询,Teamcenter培训实施等

主题2396

帖子3646

积分68697

图文推荐

  • Tecnomatix 二次开发入门教程 6 实现打开PL

    Tecnomatix 二次开发入门教程 6 实现打开PLM之家

  • Tecnomatix 二次开发入门教程 3 第一个hell

    Tecnomatix 二次开发入门教程 3 第一个hello plm

  • PLM之家NX插件V8.0.0.0发布,支持NX1847版

    PLM之家NX插件 ============================

  • NX1847 新功能,可视化辅助工具,更形象的

    NX1847 新功能,可视化辅助工具,更形象的帮助

  • nxopen UI导入NX失败,希望大神指导

    新手上路,希望站长以及各路大神指导! NX12 二次

  • 关闭

    站长推荐上一条 /1 下一条

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    PLM之家经典培训教程--强烈推荐

    PLM之家(plmhome.com)提供专业的实施开发培训

    NX二次开发基础培训 | 已 80 学员 参加

    CAA二次开发 | 值的一试

    Teamcenter用户基础入门 | 虚拟机赠送

    限时优惠,原价3000,现价888

    UG 二次开发CAM加工开发培训火热报名

    哥已知晓