查看: 1795|回复: 0

[二次开发源码] 获取Super Section控件选择的对象,方法比较特殊,收藏学习

[复制链接]

2477

主题

1280

回帖

8万

积分

管理员

PLM之家站长

积分
82265
QQ
发表于 2022-1-16 19:54:59 | 显示全部楼层 |阅读模式

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

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

×

' K4 N3 M8 i* [获取Super Section控件选择的对象,方法比较特殊,收藏学习8 H: t+ H( q5 m& F# D( Q: U
1 Y! W6 |+ V, r5 A& b* K# p
直接使用getoutpuTCurves是有问题的,这个只是临时的对象,需要通过下面的方法来获取选择的底层对象* C$ J% _% a+ w6 q0 i

* ]+ l6 N, d( H/ t3 O' r) R[mw_shl_code=cpp,true] vector<TaggedObject*> GetObjectsOfSection(Session* theSession, NXOpen::Section* theSection)
! N: h. X$ N  D& m {
" Z9 \( _9 S; `+ ^$ i9 H         vector<TaggedObject*> theSectionObjects;$ M2 t6 |* q, D, q6 ]3 i0 \
         theSectionObjects.clear();
& ?) r' @) N1 _0 S7 d* G) r+ m         std::vector<NXOpen::SectionData*> theSectionData;
. y9 I9 {: c; n/ g% T( P         theSectionData.clear();
# a5 S) d$ [0 G/ o# m3 ^
! S$ w. R, h. c9 R         NXOpen::ScCollector* scCollector1 = theSession->Parts()->Work()->ScCollectors()->CreateCollector();
/ A# v0 e6 U/ D) b! J         theSection->GetSectionData(theSectionData);
3 F! W' @! W- Z: r! N( p         for each (SectionData * aSectionData in theSectionData)( s. i9 T* _% O) N- F
         {
7 _* f( b# }) W8 l, h# I                 vector<SelectionIntentRule*> rules;
+ ~% r( B% W  u  @0 R  y! r                 rules.clear();2 o4 q7 q* L- ]: C# q2 I
                 aSectionData->GetRules(rules);
4 X+ c. B9 g( ^# S* s$ J. o                 scCollector1->ReplaceRules(rules, false);' d0 W0 o$ A, ^4 U, C3 q" B/ A- c
                 for each (auto var in scCollector1->GetObjects())
3 g( \( j9 o" u2 [( S2 m8 i' F+ R8 x                 {
- S2 C& T; t* ^$ R) T                         theSectionObjects.push_back(var);
8 W' N" i6 x6 W* B8 u. w( m( K' n% ]+ C                 }$ B7 ~. `1 r. P4 i' J/ O0 E  N) Y
         }( _/ U' r! E: z
( \  F' N9 i4 u- c1 E
         
: n) E" o3 m4 c1 b! G% R: P. h; B: s
         return theSectionObjects;3 ?2 g' l! R2 R$ G/ I
}[/mw_shl_code]
* ^  E$ a# Y0 q" D! k
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

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

本版积分规则

在本版发帖
关注公众号
QQ客服返回顶部