|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
$ Y3 h% J3 S1 S. _$ f" J; m/ Q! T6 d( Y o4 ?) V4 |
; J, d1 h1 A2 R7 f/ W
一种自定义颜色条的方法,直接可以用,可以作为CAE后处理
$ P5 ~/ b4 T; n6 Q2 v; M2 l j5 n) m! t; {7 l9 h q: q
3 T) c. z' I5 r u: q& k0 W# P1 k: P. O* e
' G6 R' v/ m9 Y2 b! O- . a3 [: X* l9 j7 ^( ~$ S
- 0 G. u! v& s& p' }6 N
3 B3 o. X+ R, f! }2 h3 m T- void UI_ColorRangeUDB::UI_ShowColorMapBlocks()) c1 p4 B: G; c3 n5 m6 ~4 e: t, p0 ?
- {
0 `1 D- I+ V4 O6 @8 s - int colorNum = integerColorNum->Value();$ r. r% i& i8 |+ m/ C# g, a$ P
- vector<BlockStyler::UIBlock*> hiddenGroup;
8 [! `3 B$ a+ X7 N% J: _7 K' w - hiddenGroup.clear();
+ F6 x/ l9 `+ S/ x5 S - vector<BlockStyler::UIBlock*> shownGroup;
- x0 @) I `3 |6 L. ]) E" V6 @0 S( i - shownGroup.clear();7 `# P2 p* d/ u: e `
- string groupPreStr = "groupColorRange";) `( d* Q$ {6 z3 S0 f+ c+ g- v8 S; P; ?
- string doubleUPreStr = "doubleU";) j- W. P/ G3 {* m
- string doubleLPreStr = "doubleL";
2 {; {9 H0 l8 |( T) U - //get all the groups with the name str //groupColorRange6
" r5 Y v T3 I- h - vector<BlockStyler::UIBlock*> allBlocks = theUserDefinedUIBlock->TopBlock()->GetBlocks();
! B' c# v l! F: T5 z# Q - //type: Group name : groupColorRange% k; B* a. x- P- E- P+ i' |# i
- //type : Group name : groupColorRange13 e: l& O @ G' h& c _
- //type : Group name : groupColorRange10
. I1 z! w: `, }3 M - //type : Group name : groupColorRange11$ e- @/ ^; g1 u( P" p/ I/ F @
- //type : Group name : groupColorRange12- I5 ]: @! `$ p0 n: K
- //type : Group name : groupColorRange25 |6 h: i9 d4 G$ O9 p
- //type : Group name : groupColorRange30 ~: W0 O$ R: z" M9 x- P
- //type : Group name : groupColorRange45 Q" b% X* k4 x: o* U( p2 j; l- |
- //type : Group name : groupColorRange52 e& L% Z, h$ {' y
- //type : Group name : groupColorRange6' A6 G! Y+ |3 G. M+ @. c
- //type : Group name : groupColorRange7
q3 P; e" L( E# ~0 Z# Z# ] - //type : Group name : groupColorRange89 B% g0 V# v* L6 y! y/ ^
- //type : Group name : groupColorRange9& T |7 v* y# B6 d4 ]! i8 z8 t
- 4 o" J# E9 M3 D- _
- for (int i = 0; i < allBlocks.size(); i++)# n6 ?$ C) p" B
- {3 T; }4 `& t5 h
- BlockStyler::UIBlock* tempBlock = allBlocks[i];
$ M O u9 U) `" l" [2 k. N9 ` - if (isSameNXString("Group", tempBlock->Type().GetText()))
2 v- r* o8 l6 f( W0 u& M l3 X _' w - {9 s0 G7 C% N! X- _& v
- string blockNameStr = tempBlock->Name().GetLocaleText();
7 Y2 P7 z# h& m' h9 V9 e) I( Z - size_t findIndex = blockNameStr.find("groupColorRange");4 Y9 N$ r1 I. U# {% ?
- if (findIndex != string::npos) J/ G3 K& Z" p
- {+ P/ c3 y/ q& }' O( }
- string subStr = blockNameStr.substr(groupPreStr.length());$ h* z; n8 t/ {# ^5 ]
- // Echo("%s", subStr.c_str());) ^$ K b/ N2 H5 L( h
- //Echo("%d -- %d", atoi(subStr.c_str()), colorNum);( L! J" a' K& V$ {" \. z/ x. d% x
- if (colorNum >= atoi(subStr.c_str()))2 }3 ~4 T1 k* G9 d: [( o
- {8 R1 T( @" y `
- shownGroup.push_back(tempBlock);3 [4 x2 ~" d; j' X. \4 u* k
- }+ H7 L7 |; N0 L; Q- L* B
- else
5 F: L( S% [% N6 }& b; z( [ - {- d* u- b' g% a; H8 ^/ p+ o& g
- hiddenGroup.push_back(tempBlock);& B9 E D% u2 s, x! W$ U
- }( D% e, k9 m5 ?, l; X! ]
- }
3 R9 I) d+ z( B6 N4 V2 |2 h - }+ b+ }! J$ A3 I# r! ?* {7 _; s
- }
& c& N6 E) a7 }4 w" [7 h - if (!shownGroup.empty())7 e6 D' t# G( F' O. ]6 l6 d0 i- e
- {
* H2 I$ | A$ G - for (auto a : shownGroup)
( w2 q2 R1 X3 ]1 A. b! l - {1 y! K% a" n0 s9 E. _
- a->SetShow(true);
! W" K9 L; l2 s - 7 c% F0 K, @& u
- }. X o5 H! A7 u
- }
" w$ N* i; g( h) v - if (!hiddenGroup.empty()), S3 m n, R3 z3 A7 p: G5 q2 Q5 d
- {
2 {8 p9 X) d1 S% `+ X - for (auto a : hiddenGroup)
4 [( y8 c, I' ]3 U* j$ K4 p - {
7 n3 i1 n+ j% ]8 ?- @0 i - a->SetShow(false);
7 F/ z, s* I9 u5 u2 Q o+ z R9 L - }
' F* K3 W( ?: Z1 }( s5 _ - }7 |& Y$ @% ?1 ^! ?
% Z4 K: C3 t; P& V- //实时更新显示; {( N) F, w+ L/ L
6 y- w& y$ t( f0 Z- UI_UpdateDoubleRangeValue();
2 I* e. g8 C0 f0 r& ~ - }
复制代码 , g4 B* h7 j9 X8 S
6 d- }' r1 C; I3 |
& w; | w! G3 \, k |
|