|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
" F4 u' k/ z: c5 |7 D# Y+ D* Q8 i& T" |: |
- J- f7 f% c' t4 ^( t( f0 G% n3 m8 x4 K一种自定义颜色条的方法,直接可以用,可以作为CAE后处理. Q1 t4 E( X( T, ~8 U3 t m
) |. K5 v6 W, ]. }. o W
5 U5 [# _" {0 _2 y' r, J
- A; n* M% J9 h! v' v8 d# J
- " f0 G; |2 q/ o7 q+ g. K
- 1 M7 I# T$ t( w7 e- O- j& U; N* F
- - L p: F! x1 E: Q! d. Q7 k" `
- 3 E- g) ?' C* ?0 }' I; Z
- void UI_ColorRangeUDB::UI_ShowColorMapBlocks()
0 [' s2 M! Y B. k; h - {- q; n$ L7 y3 c% h$ L: Y5 z
- int colorNum = integerColorNum->Value(); F! W( _* s' L* I! C, v
- vector<BlockStyler::UIBlock*> hiddenGroup;
9 J7 x! E, S3 v2 h# h. K$ \1 P - hiddenGroup.clear();5 q3 |2 X$ f4 m
- vector<BlockStyler::UIBlock*> shownGroup;
! {7 f0 ]; d5 w% }" o T - shownGroup.clear();9 |, I) F! J( [8 Y( a3 P. r* K
- string groupPreStr = "groupColorRange";& X, A7 h" l ^7 }5 b/ ~
- string doubleUPreStr = "doubleU"; Y h: Q2 I# K0 p+ B' |% _4 C; B
- string doubleLPreStr = "doubleL";
: \! M5 S& z6 l - //get all the groups with the name str //groupColorRange6
9 I* o# i! d$ b! I* e# ? - vector<BlockStyler::UIBlock*> allBlocks = theUserDefinedUIBlock->TopBlock()->GetBlocks();
9 p! T/ k* k/ {' k - //type: Group name : groupColorRange
7 m7 h" g' Q+ |: t" ` - //type : Group name : groupColorRange13 K6 T' u7 {/ i0 a$ C5 y; P7 K
- //type : Group name : groupColorRange10
' `6 K0 Z- y J) B( a - //type : Group name : groupColorRange11
H' y; K P' O - //type : Group name : groupColorRange12
8 r: ^: g3 H0 U& J' n+ I% ` - //type : Group name : groupColorRange20 Y9 a5 S/ ], U V; e; `' \
- //type : Group name : groupColorRange3* H& D( I+ B, U$ K& w4 U8 B, S
- //type : Group name : groupColorRange4
, }9 I0 s( F. H2 V+ w* t - //type : Group name : groupColorRange5
" ]5 c: r/ q+ Z; S - //type : Group name : groupColorRange6
- k0 b s$ h7 l: N3 x - //type : Group name : groupColorRange7# v. [9 x* N& @3 f* x. p4 o
- //type : Group name : groupColorRange8( n* n; r, ~6 T7 s1 b8 D
- //type : Group name : groupColorRange9' c( ]0 M5 A/ C; {# J
- $ S1 x* T' B/ Q
- for (int i = 0; i < allBlocks.size(); i++)! |' @. [/ t% M
- {
8 ?1 ]( X1 a. p - BlockStyler::UIBlock* tempBlock = allBlocks[i];
* Z9 f) j! Z, b5 I; D$ | - if (isSameNXString("Group", tempBlock->Type().GetText()))
6 O( b' Q. A( y - {& {: ^6 j3 i7 u& L- q# m
- string blockNameStr = tempBlock->Name().GetLocaleText();
6 E" A8 k2 m/ ~$ o; m - size_t findIndex = blockNameStr.find("groupColorRange");
4 C* u+ |; r7 R. r4 x5 W1 v - if (findIndex != string::npos)* }- ^/ F9 u( v" s
- {& I) k& r. e; R9 K* B' V2 h& N
- string subStr = blockNameStr.substr(groupPreStr.length());
y0 U7 v& |% Z - // Echo("%s", subStr.c_str());4 C2 j' C- X& M1 Y3 h- H: R% H
- //Echo("%d -- %d", atoi(subStr.c_str()), colorNum);
2 K" J m5 v Q* b7 u - if (colorNum >= atoi(subStr.c_str()))
( j3 ^3 u& A1 P, s) x - {
: z+ o2 D' n; K# a" { - shownGroup.push_back(tempBlock);7 n) V- q- T0 P
- }
+ Y0 K) c) v# D. t0 c - else
: V4 ]* r) l! w8 |, Z' O# B7 v+ w - {' Z. ]) m8 i7 s: _
- hiddenGroup.push_back(tempBlock);
, m/ E4 S* n7 G, |5 S - }( q2 Q- r6 x1 u5 Q7 T
- }
% L0 s% ^7 R0 f9 f9 C) R# i) Q - }
8 I7 U: r& N8 Z: u4 _7 H6 ? - }
5 x* T! |. X9 x- ?. z - if (!shownGroup.empty())5 d! N! l: H0 I' d" o
- {: L9 S {! M+ W+ A/ t8 Y$ y
- for (auto a : shownGroup)" t& Y+ [$ D- r
- {+ c) b3 f. \: y, W! X: m j
- a->SetShow(true);
6 L6 C! n) q, y) o7 x; Q8 f" i - . q N% u& a1 A- f" A+ K" k
- }# G' R- M+ a: @, Z0 t; c
- }
" B% V, a2 W' v$ F, F+ C3 L$ G - if (!hiddenGroup.empty())
. T. D$ r' a E - { w( Q% U' |* G& b7 a3 {
- for (auto a : hiddenGroup)- X- {* W0 [$ P7 t" u' i' G
- {* j3 P5 F8 \: V. c/ N/ P
- a->SetShow(false);9 g+ ]( l5 A2 d# t+ x; y% T
- }- r s8 Z3 t/ I ^- o3 f4 z
- }
& i- B2 U/ ~, D W% x
0 f+ F3 [# X- M4 X0 g' C' R- //实时更新显示+ z" t: u, A; @& B+ b# n
/ h2 s& k9 d1 O2 f( w) [- UI_UpdateDoubleRangeValue();
/ h5 y3 u( ] c. L" O" o; _ - }
复制代码
. h$ Y, ]1 M& h! Q& T% Q% z7 J! i# x8 h% P/ |4 B0 i1 S3 b* U
5 Q8 q' ?& h) ~" l* M& r7 Z |
|