|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
! _2 @% K. [2 }9 ]
获取Super Section控件选择的对象,方法比较特殊,收藏学习
# r: Z6 p$ @- r3 h8 Y9 y. M: ]. w1 i9 I
直接使用getoutpuTCurves是有问题的,这个只是临时的对象,需要通过下面的方法来获取选择的底层对象
' x: M7 W* L8 a, S! B( @" Q$ R- t+ J2 e0 V0 [: w
[mw_shl_code=cpp,true] vector<TaggedObject*> GetObjectsOfSection(Session* theSession, NXOpen::Section* theSection)
( i' X: ~/ `2 t. |8 w+ s# d- g {- x5 Q7 H8 B* d" ?
vector<TaggedObject*> theSectionObjects;" u; j) }) B, L; b
theSectionObjects.clear();
7 }0 S- L$ ]$ y1 x std::vector<NXOpen::SectionData*> theSectionData;( l) Z# [' g) U* n) Q! j3 P
theSectionData.clear();
& n5 |) u) H* T3 ]7 b( _1 U# [ _" [* N$ V# s0 n
NXOpen::ScCollector* scCollector1 = theSession->Parts()->Work()->ScCollectors()->CreateCollector(); a+ {$ F. V. K1 w
theSection->GetSectionData(theSectionData);
- G! ^7 E+ {6 ~5 j, v: q for each (SectionData * aSectionData in theSectionData)
4 u# n& S/ s# L+ @; Y {
6 _* v) F+ P6 m5 O( [ vector<SelectionIntentRule*> rules;/ s0 e& k& j2 i3 {* \& x/ t! }6 s
rules.clear();
% Q n; \. ?+ C, W. L- i aSectionData->GetRules(rules);( h. ]& A, e- C' f; w1 C
scCollector1->ReplaceRules(rules, false);1 Z+ \8 G* y$ X7 E/ y3 e; B) N
for each (auto var in scCollector1->GetObjects())3 ?' {# w4 g. }. B. w: c) m
{
" \) H& K6 r: P! H. N* f: ^- m theSectionObjects.push_back(var);
+ q2 h% Z/ T* q9 c* A% ] C }, i) L1 l$ @, \/ p4 d
}
! e! v- r7 X- \: u7 `/ i' v1 ]1 B# h0 V, k M; `6 j0 O- j
6 m# |* ~6 I5 y1 }* F
: i4 u S1 P/ y- f7 j( c return theSectionObjects;
5 e+ L0 } ^- a/ F' H3 v }[/mw_shl_code]
0 ^" p8 a9 s( K i' C9 X4 i |
|