PLM之家PLMHome-工业软件与AI结合践行者

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

  [复制链接]

2022-2-13 11:25:14 3716 2

admin 发表于 2018-2-22 13:21:35 |阅读模式

admin 楼主

2018-2-22 13:21:35

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

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

x
创建零件设计表
$ A8 o" R) @+ Z- U7 m
5 I3 l! {7 y6 E2 b1 k' h//初始化CATICkeParmFactory 工厂2 V/ q; r. _* v( g! t( k
CATICkeParmFactory_var spParmFactory = spContainer;
# \3 c/ G7 i& [+ c//创建设计表的函数如下9 y7 h* [5 N9 k0 `
CATIDesignTable_var CreateDesignTable( const CATUnicodeString& iRelationName,
2 R& ^8 Q7 L& zconst CATUnicodeString& iComment,
# @' r- l, e7 w- a6 G: z( n8 y2 Rconst CATUnicodeString& iFilePath,
# n2 R$ X  D! _, C3 D. Aint orientation = 1,' U/ a$ j: \5 a& X& _
int sheetWithoutFile = 0 );
# i, T1 {* u0 {0 M6 s% q" y+ H0 O函数说明:iRelationName 为设计表的名字,iComment 为设计表的说明,iFilePath 为创建8 p% A' L9 Y8 s6 `+ H0 P
表的路径。% N  L. R% T" \5 H
创建零件族的步骤如下:, I! {! B% F, K$ _, Y3 j
1.创建参数
5 a1 i0 m5 ]0 d7 |: r5 s' t3 x/ zCATICkeParm_var spPp1 = spFact->CreateInteger ("Column1",0);4 j, @' F4 }" X6 z. F& t7 H8 Z
CATICkeParm_var spPp2 = spFact->CreateReal ("r",0.0);/ P1 |5 g( N# p* S9 C, K8 I
CATICkeParm_var spPp3 = spFact->CreateString ("s","");( f  T  e4 F1 m0 @1 }1 l, A: A! r
CATICkeParm_var spPp4 = spFact->CreateBoolean ("b",CATCke::True);
7 @1 V; J" C+ A2 i4 YCATICkeParm_var spPp5 = spFact->CreateLength ("l",0);
2 N2 T! F! ]- j/ PCATICkeParm_var spPp6 = spFact->CreateAngle ("a",0);
( ^$ c! _/ V) e0 O0 s2 ]0 }2.将参数显示在结构树上
/ t0 l7 i* q: ?% B5 l. cCATIPrtContainer_var spPrtCont = spContainer;5 a) T+ F  \' ?7 {3 X: n
CATIParmPublisher_var spPubroot = spPrtCont->GetPart();# k4 Z0 T" H) @) x
CATICkeFunctionFactory_var fact = CATCkeGlobalFunctions::GetFunctionFactory();
, W. C* e1 `2 Z# U& W' A1 K! [CATISpecObject_var spParameterSet = NULL_var;
: g! X+ ^% A) \5 d. A+ w# espParameterSet=
" s. u" q: Q/ t8 I3 c# s7 w( }  K- ?fact->GetCurrentSet(CATICkeFunctionFactory::Parameter,spPubroot,CATCke::True);3 Y+ _% ]- [- L! W0 Q$ p
CATIParmPublisher_var spParmPublisher = spParameterSet;  X: r3 a9 `9 Q. I. p
spParmPublisher->Append(spPp1);# A% F8 E  ^. l* q  X2 D- N/ j

3 j$ y4 V8 O) ^! g- UspParmPublisher->Append(spPp2);
5 a1 e, `: z/ P) h0 M: L- S8 hspParmPublisher->Append(spPp3);
. t1 n7 Y  l# AspParmPublisher->Append(spPp4);7 Q% a: w+ P7 [; C! m4 ]! u
spParmPublisher->Append(spPp5);
; E9 E3 `+ y" G' @: S; HspParmPublisher->Append(spPp6);
; L  B3 Z4 c7 W; A! `6 M" B3.创建设计表
/ T4 ]: `, E/ X  H1 P& MCATIDesignTable_var spDesignTable = spFact->CreateDesignTable();+ n5 ~5 y+ S0 h; g, G( l: ?
4.将设计表显示在结构树上' f" y1 |( l* }' C) w$ \% e
CATISpecObject_var spRelationSet = fact ->GetCurrentSet(! _4 s0 Q* k' X+ E
CATICkeFunctionFactory::Relation,spPubroot,CATCke::True);9 Y: I* q; k1 w2 ]- P/ K
spParmPublisher = spRelationSet;
1 m/ e, ^& J5 T4 B0 O2 |spParmPublisher->Append(spDesign);
( `* \8 E* w! s9 E5.将参数与设计表关联,注意参数名字与设计表的列参数名字一定要相同* k8 T+ i# F6 h/ [- X0 O7 `! D" F. S
// 参数列表$ H& @% S# [! p3 s$ k" u
CATLISTV(CATBaseUnknown_var) list;' v  S4 p/ `& ^4 o! l
list.Append(spPp1);
3 A7 B$ V) \' L3 v5 gspDesign->AutomaticAssociations(spContainer, NULL_var, &list);% a9 O$ J8 X2 V, }% H
// 添加关联2 `! G$ y0 R. e0 R1 I/ K* R7 _
spDesign->AddAssociation("Column2", spPp2);
5 K! \- S* y0 \  Q3 `4 RspDesign->AddAssociation("Column3", spPp3);
1 F% p8 ?. g7 x: k; x1 e) _spDesign->AddAssociation("Column4", spPp4);$ }  e4 L. l9 N% q1 m: M
spDesign->AddAssociation("Column5", spPp5);6 u2 ]* \$ J+ J% ^9 S& A
6.设置配置
& {: b$ Q. b6 ~! KspDesign->SetCurrentConfiguration(1);
7 e3 e9 |2 F, R
0 [1 ?2 V& S2 Z
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

全部回复3

zwz 发表于 2021-9-2 13:38:15

zwz 沙发

2021-9-2 13:38:15

学习学习 ,后面希望自己也能学会
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

发表回复

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

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了